Visual improvements 2
This commit is contained in:
parent
a5414341fb
commit
d37d0f95f1
@ -4,6 +4,10 @@ body {
|
||||
background: #f7f7f7;
|
||||
}
|
||||
|
||||
a.danger {
|
||||
color: #b91c1c;
|
||||
}
|
||||
|
||||
.topbar {
|
||||
background: #1f2937;
|
||||
padding: 12px 20px;
|
||||
@ -175,4 +179,30 @@ tbody tr:hover {
|
||||
|
||||
.btn.secondary {
|
||||
background: #6b7280;
|
||||
}
|
||||
|
||||
.messages {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
.message {
|
||||
padding: 0.6rem 0.8rem;
|
||||
border-radius: 6px;
|
||||
margin-bottom: 0.5rem;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.message.success {
|
||||
background: #e6f4ea;
|
||||
color: #166534;
|
||||
}
|
||||
|
||||
.message.error {
|
||||
background: #fee2e2;
|
||||
color: #991b1b;
|
||||
}
|
||||
|
||||
.message.warning {
|
||||
background: #fef3c7;
|
||||
color: #92400e;
|
||||
}
|
||||
@ -11,8 +11,8 @@
|
||||
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
<button type="submit">Sí, eliminar</button>
|
||||
<a href="{% url 'account_list' %}">Cancelar</a>
|
||||
<button class="btn">Sí, eliminar</button>
|
||||
<a class="btn secondary" href="{% url 'account_list' %}">Cancelar</a>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
||||
@ -25,7 +25,7 @@
|
||||
<td>{{ account.active }}</td>
|
||||
<td class="table-actions">
|
||||
<a href="{% url 'account_edit' account.id %}">Editar</a>
|
||||
<a href="{% url 'account_delete' account.id %}">Eliminar</a>
|
||||
<a href="{% url 'account_delete' account.id %}" class="danger">Eliminar</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% empty %}
|
||||
|
||||
@ -33,6 +33,15 @@
|
||||
|
||||
</nav>
|
||||
</header>
|
||||
{% if messages %}
|
||||
<div class="messages">
|
||||
{% for message in messages %}
|
||||
<div class="message {{ message.tags }}">
|
||||
{{ message }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
<main class="content">
|
||||
|
||||
@ -1,24 +1,21 @@
|
||||
{% extends "expenses/base.html" %}
|
||||
|
||||
{% block title %}Borrar gasto{% endblock %}
|
||||
{% block title %}Eliminar gasto{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>Borrar gasto</h1>
|
||||
<h1>Eliminar gasto</h1>
|
||||
|
||||
<p>
|
||||
¿Seguro que quieres borrar este gasto?
|
||||
¿Seguro que quieres eliminar el gasto de
|
||||
<strong>{{ expense.amount }}€</strong>
|
||||
del {{ expense.date }} perteneciente a
|
||||
<strong>{{ expense.account }}</strong>?
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Fecha: {{ expense.date }}</li>
|
||||
<li>Importe: {{ expense.amount }}</li>
|
||||
<li>Categoría: {{ expense.category.name }}</li>
|
||||
</ul>
|
||||
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
<button type="submit">Sí, borrar</button>
|
||||
<button class="btn">Sí, eliminar</button>
|
||||
<a class="btn secondary" href="{% url 'expense_list' %}">Cancelar</a>
|
||||
</form>
|
||||
|
||||
<a href="{% url 'expense_list' %}">Cancelar</a>
|
||||
{% endblock %}
|
||||
|
||||
@ -111,7 +111,7 @@
|
||||
</td>
|
||||
<td class="table-actions">
|
||||
<a href="{% url 'expense_edit' expense.id %}">Editar</a>
|
||||
<a href="{% url 'expense_delete' expense.id %}">Eliminar</a>
|
||||
<a href="{% url 'expense_delete' expense.id %}" class="danger">Eliminar</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% empty %}
|
||||
|
||||
@ -1,23 +1,20 @@
|
||||
{% extends "expenses/base.html" %}
|
||||
{% block title %}Borrar ingreso{% endblock %}
|
||||
{% block title %}Eliminar ingreso{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h1>Borrar ingreso</h1>
|
||||
<h1>Eliminar ingreso</h1>
|
||||
|
||||
<p>
|
||||
¿Seguro que quieres borrar este ingreso?
|
||||
¿Seguro que quieres eliminar el ingreso de
|
||||
<strong>{{ income.amount }}€</strong>
|
||||
del {{ expense.date }} perteneciente a
|
||||
<strong>{{ income.account }}</strong>?
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Fecha: {{ income.date }}</li>
|
||||
<li>Importe: {{ income.amount }}</li>
|
||||
<li>Categoría: {{ income.category.name }}</li>
|
||||
</ul>
|
||||
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
<button type="submit">Sí, borrar</button>
|
||||
<button class="btn">Sí, eliminar</button>
|
||||
<a class="btn secondary" href="{% url 'income_list' %}">Cancelar</a>
|
||||
</form>
|
||||
|
||||
<a class="btn secondary" href="{% url 'income_list' %}">Cancelar</a>
|
||||
{% endblock %}
|
||||
@ -24,7 +24,7 @@
|
||||
<td>{{ income.date }}</td>
|
||||
<td class="table-actions">
|
||||
<a href="{% url 'income_edit' income.id %}">Editar</a>
|
||||
<a href="{% url 'income_delete' income.id %}">Eliminar</a>
|
||||
<a href="{% url 'income_delete' income.id %}" class="danger">Eliminar</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% empty %}
|
||||
|
||||
@ -3,10 +3,15 @@
|
||||
{% block content %}
|
||||
<h1>Eliminar etiqueta</h1>
|
||||
|
||||
<p>
|
||||
¿Seguro que quieres eliminar la etiqueta
|
||||
<strong>{{ tag.name }}€</strong>?
|
||||
</p>
|
||||
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
<button type="submit">Eliminar</button>
|
||||
<button class="btn">Eliminar</button>
|
||||
<a class="btn secondary" href="{% url 'tag_list' %}">Cancelar</a>
|
||||
</form>
|
||||
|
||||
<a class="btn secondary" href="{% url 'tag_list' %}">Cancelar</a>
|
||||
{% endblock %}
|
||||
@ -10,7 +10,7 @@
|
||||
<li class="table-actions">
|
||||
{{ tag.name }}
|
||||
<a href="{% url 'tag_edit' tag.id %}">Editar</a>
|
||||
<a href="{% url 'tag_delete' tag.id %}">Eliminar</a>
|
||||
<a href="{% url 'tag_delete' tag.id %}" class="danger">Eliminar</a>
|
||||
</li>
|
||||
{% empty %}
|
||||
<li>No hay etiquetas</li>
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
from datetime import date
|
||||
from operator import truediv
|
||||
from django.contrib import messages
|
||||
from .models import Account, Category, Expense, Tag, Income
|
||||
from .forms import ExpenseForm, IncomeForm, TagForm, AccountForm
|
||||
# from dateutli.relativedelta import relativedelta
|
||||
@ -211,6 +212,8 @@ def expense_create(request):
|
||||
expense.owner = request.user
|
||||
expense.save()
|
||||
form.save_m2m()
|
||||
|
||||
messages.success(request, 'Gasto creado correctamente.')
|
||||
return redirect('expense_list')
|
||||
else:
|
||||
form = ExpenseForm(user=request.user)
|
||||
@ -233,6 +236,7 @@ def expense_edit(request, pk):
|
||||
form = ExpenseForm(request.POST or None, instance=expense, user=request.user)
|
||||
if form.is_valid():
|
||||
expense = form.save()
|
||||
messages.success(request, 'Gasto actualizado')
|
||||
return redirect('expense_list')
|
||||
else:
|
||||
form = ExpenseForm(instance=expense, user=request.user)
|
||||
@ -254,6 +258,7 @@ def expense_delete(request, pk):
|
||||
|
||||
if request.method == 'POST':
|
||||
expense.delete()
|
||||
messages.success(request, 'Gasto eliminado correctamente.')
|
||||
return redirect('expense_list')
|
||||
|
||||
return render(
|
||||
@ -547,6 +552,7 @@ def tag_create(request):
|
||||
tag = form.save(commit=False)
|
||||
tag.owner = request.user
|
||||
tag.save()
|
||||
messages.success(request, 'Etiqueta creada correctamente.')
|
||||
return redirect('tag_list')
|
||||
else:
|
||||
form = TagForm()
|
||||
@ -570,6 +576,7 @@ def tag_edit(request, pk):
|
||||
form = TagForm(request.POST, instance=tag)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
messages.success(request, 'Etiqueta actualizada.')
|
||||
return redirect('tag_list')
|
||||
else:
|
||||
form = TagForm(instance=tag)
|
||||
@ -591,6 +598,7 @@ def tag_delete(request, pk):
|
||||
|
||||
if request.method == 'POST':
|
||||
tag.delete()
|
||||
messages.success(request, 'Etiqueta eliminada.')
|
||||
return redirect('tag_list')
|
||||
|
||||
return render(
|
||||
@ -618,6 +626,7 @@ def account_create(request):
|
||||
account = form.save(commit=False)
|
||||
account.owner = request.user
|
||||
account.save()
|
||||
messages.success(request, 'Cuenta creada correctamente.')
|
||||
return redirect('account_list')
|
||||
else:
|
||||
form = AccountForm()
|
||||
@ -640,6 +649,7 @@ def account_edit(request, pk):
|
||||
form = AccountForm(request.POST, instance=account)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
messages.success(request, 'Cuenta actualizada.')
|
||||
return redirect('account_list')
|
||||
else:
|
||||
form = AccountForm(instance=account)
|
||||
@ -657,6 +667,7 @@ def account_delete(request, pk):
|
||||
if request.method == 'POST':
|
||||
account.active = False
|
||||
account.save()
|
||||
messages.success(request, 'Cuenta eliminada.')
|
||||
return redirect('account_list')
|
||||
|
||||
return render(
|
||||
@ -673,6 +684,7 @@ def income_create(request):
|
||||
income = form.save(commit=False)
|
||||
income.owner = request.user
|
||||
income.save()
|
||||
messages.success(request, 'Ingreso creado correctamente.')
|
||||
return redirect('income_list')
|
||||
else:
|
||||
form = IncomeForm(user=request.user)
|
||||
@ -705,6 +717,7 @@ def income_edit(request, pk):
|
||||
form = IncomeForm(request.POST, instance=income, user=request.user)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
messages.success(request, 'Ingreso actualizado.')
|
||||
return redirect('income_list')
|
||||
else:
|
||||
form = IncomeForm(instance=income, user=request.user)
|
||||
@ -721,6 +734,7 @@ def income_delete(request, pk):
|
||||
|
||||
if request.method == 'POST':
|
||||
income.delete()
|
||||
messages.success(request, 'Ingreso eliminado.')
|
||||
return redirect('income_list')
|
||||
|
||||
return render(
|
||||
|
||||
@ -13,6 +13,7 @@ https://docs.djangoproject.com/en/5.2/ref/settings/
|
||||
import os
|
||||
from pathlib import Path
|
||||
from dotenv import load_dotenv
|
||||
from django.contrib.messages import constants as messages
|
||||
|
||||
load_dotenv()
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user