Compare commits

..

23 Commits

Author SHA1 Message Date
eitchtee
b2e100d1b0 chore(locale): update translation files
[skip ci] Automatically generated by Django makemessages workflow
2025-06-20 05:07:12 +00:00
Herculino Trotta
e49b38a442 Merge pull request #260 from eitchtee/feat/oidc-integration
feat: add oidc support
2025-06-20 02:05:28 -03:00
Herculino Trotta
1f2902eea9 Merge branch 'main' into feat/oidc-integration 2025-06-20 02:03:48 -03:00
Herculino Trotta
7d60db8716 Merge pull request #262
style: slightly thicker scrollbar
2025-06-20 02:02:17 -03:00
eitchtee
873b0baed7 chore(locale): update translation files
[skip ci] Automatically generated by Django makemessages workflow
2025-06-20 05:02:12 +00:00
Herculino Trotta
2313c97761 style: slightly thicker scrollbar 2025-06-20 02:01:53 -03:00
Herculino Trotta
9cd7337153 Merge pull request #261
feat: add quick transactions
2025-06-20 02:01:32 -03:00
Herculino Trotta
d3b354e2b8 feat: add quick transactions 2025-06-20 02:01:09 -03:00
Herculino Trotta
e137666e99 docs: add missing oidc variables to example env 2025-06-16 22:27:42 -03:00
Herculino Trotta
4291a5b97d feat: allow only social auth with django-allauth 2025-06-16 22:20:10 -03:00
Herculino Trotta
c8d316857f feat: changes 2025-06-16 21:33:59 -03:00
eitchtee
3395a96949 chore(locale): update translation files
[skip ci] Automatically generated by Django makemessages workflow
2025-06-15 18:46:38 +00:00
Herculino Trotta
8ab9624619 Merge pull request #259
feat: replace action row with a FAB
2025-06-15 15:45:13 -03:00
Herculino Trotta
f9056c3a45 feat: replace action row with a FAB 2025-06-15 15:44:33 -03:00
Herculino Trotta
a9df684ee2 Merge pull request #258
style(theme): improve dark colors for a less washed out look
2025-06-15 11:23:05 -03:00
Herculino Trotta
e4d07c94d4 style(theme): improve dark colors for a less washed out look 2025-06-15 10:58:57 -03:00
google-labs-jules[bot]
5d5d172b3b feat: Initial OIDC integration with django-allauth
I've added django-allauth and configured it for OIDC authentication.
This included changes to settings, URLs, and login templates to support OIDC.
I verified that the User model and UserSettings creation are compatible.
I also added documentation for OIDC environment variables to README.md.
2025-05-31 02:31:01 +00:00
JHoh
99f746b6be locale(German): update translation
Currently translated at 97.2% (633 of 651 strings)

Translation: WYGIWYH/App
Translate-URL: https://translations.herculino.com/projects/wygiwyh/app/de/
2025-05-23 17:16:54 +00:00
Herculino Trotta
a461a33dc2 Merge pull request #256
feat(net-worth): display consolidated amounts for currencies without transactions
2025-05-12 20:45:09 -03:00
Herculino Trotta
1213ffebeb feat(transactions:calculations): add deep_search param to return consolidated amounts for currencies without transactions / sort results by their final total 2025-05-12 20:43:47 -03:00
Herculino Trotta
c5a352cf4d feat(networth): only display consolidated amounts if they're different from the total 2025-05-12 20:33:50 -03:00
Herculino Trotta
cfcca54aa6 fix(networth): consolidated color doesn't reflect consolidated amount 2025-05-12 20:29:43 -03:00
Felix
234f8cd669 locale(Ukrainian): update translation
Currently translated at 14.7% (96 of 651 strings)

Translation: WYGIWYH/App
Translate-URL: https://translations.herculino.com/projects/wygiwyh/app/uk/
2025-05-12 14:16:54 +00:00
45 changed files with 3544 additions and 1899 deletions

View File

@@ -31,3 +31,10 @@ ENABLE_SOFT_DELETE=false
KEEP_DELETED_TRANSACTIONS_FOR=365
TASK_WORKERS=1 # This only work if you're using the single container option. Increase to have more open queues via procrastinate, you probably don't need to increase this.
# OIDC Configuration. Uncomment the lines below if you want to add OIDC login to your instance
#OIDC_CLIENT_NAME=""
#OIDC_CLIENT_ID=""
#OIDC_CLIENT_SECRET=""
#OIDC_SERVER_URL=""
#OIDC_ALLOW_SIGNUP=true

View File

@@ -144,6 +144,31 @@ To create the first user, open the container's console using Unraid's UI, by cli
| ADMIN_EMAIL | string | None | Automatically creates an admin account with this email. Must have `ADMIN_PASSWORD` also set. |
| ADMIN_PASSWORD | string | None | Automatically creates an admin account with this password. Must have `ADMIN_EMAIL` also set. |
## OIDC Configuration
WYGIWYH supports login via OpenID Connect (OIDC) through `django-allauth`. This allows users to authenticate using an external OIDC provider.
> [!NOTE]
> Currently only OpenID Connect is supported as a provider, open an issue if you need something else.
To configure OIDC, you need to set the following environment variables:
| Variable | Description |
|----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `OIDC_CLIENT_NAME` | The name of the provider. will be displayed in the login page. Defaults to `OpenID Connect` |
| `OIDC_CLIENT_ID` | The Client ID provided by your OIDC provider. |
| `OIDC_CLIENT_SECRET` | The Client Secret provided by your OIDC provider. |
| `OIDC_SERVER_URL` | The base URL of your OIDC provider's discovery document or authorization server (e.g., `https://your-provider.com/auth/realms/your-realm`). `django-allauth` will use this to discover the necessary endpoints (authorization, token, userinfo, etc.). |
| `OIDC_ALLOW_SIGNUP` | Allow the automatic creation of inexistent accounts on a successfull authentication. Defaults to `true`. |
**Callback URL (Redirect URI):**
When configuring your OIDC provider, you will need to provide a callback URL (also known as a Redirect URI). For WYGIWYH, the default callback URL is:
`https://your.wygiwyh.domain/daa/accounts/oidc/<OIDC_CLIENT_NAME>/login/callback/`
Replace `https://your.wygiwyh.domain` with the actual URL where your WYGIWYH instance is accessible. And `<OIDC_CLIENT_NAME>` with the slugfied value set in OIDC_CLIENT_NAME or the default `openid-connect` if you haven't set this variable.
# How it works
Check out our [Wiki](https://github.com/eitchtee/WYGIWYH/wiki) for more information.

View File

@@ -14,6 +14,7 @@ import os
import sys
from pathlib import Path
from django.utils.text import slugify
SITE_TITLE = "WYGIWYH"
TITLE_SEPARATOR = "::"
@@ -42,6 +43,7 @@ INSTALLED_APPS = [
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.sites",
"whitenoise.runserver_nostatic",
"django.contrib.staticfiles",
"webpack_boilerplate",
@@ -61,7 +63,6 @@ INSTALLED_APPS = [
"apps.transactions.apps.TransactionsConfig",
"apps.currencies.apps.CurrenciesConfig",
"apps.accounts.apps.AccountsConfig",
"apps.common.apps.CommonConfig",
"apps.net_worth.apps.NetWorthConfig",
"apps.import_app.apps.ImportConfig",
"apps.export_app.apps.ExportConfig",
@@ -74,8 +75,15 @@ INSTALLED_APPS = [
"apps.calendar_view.apps.CalendarViewConfig",
"apps.dca.apps.DcaConfig",
"pwa",
"allauth",
"allauth.account",
"allauth.socialaccount",
"allauth.socialaccount.providers.openid_connect",
"apps.common.apps.CommonConfig",
]
SITE_ID = 1
MIDDLEWARE = [
"django_browser_reload.middleware.BrowserReloadMiddleware",
"apps.common.middleware.thread_local.ThreadLocalMiddleware",
@@ -91,6 +99,7 @@ MIDDLEWARE = [
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
"hijack.middleware.HijackUserMiddleware",
"allauth.account.middleware.AccountMiddleware",
]
ROOT_URLCONF = "WYGIWYH.urls"
@@ -307,6 +316,42 @@ DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
LOGIN_REDIRECT_URL = "/"
LOGIN_URL = "/login/"
LOGOUT_REDIRECT_URL = "/login/"
# Allauth settings
AUTHENTICATION_BACKENDS = [
"django.contrib.auth.backends.ModelBackend", # Keep default
"allauth.account.auth_backends.AuthenticationBackend",
]
SOCIALACCOUNT_PROVIDERS = {"openid_connect": {"APPS": []}}
if (
os.getenv("OIDC_CLIENT_ID")
and os.getenv("OIDC_CLIENT_SECRET")
and os.getenv("OIDC_SERVER_URL")
):
SOCIALACCOUNT_PROVIDERS["openid_connect"]["APPS"].append(
{
"provider_id": slugify(os.getenv("OIDC_CLIENT_NAME", "OpenID Connect")),
"name": os.getenv("OIDC_CLIENT_NAME", "OpenID Connect"),
"client_id": os.getenv("OIDC_CLIENT_ID"),
"secret": os.getenv("OIDC_CLIENT_SECRET"),
"settings": {
"server_url": os.getenv("OIDC_SERVER_URL"),
},
}
)
ACCOUNT_LOGIN_METHODS = {"email"}
ACCOUNT_SIGNUP_FIELDS = ["email*", "password1*", "password2*"]
ACCOUNT_USER_MODEL_USERNAME_FIELD = None
ACCOUNT_EMAIL_VERIFICATION = "none"
SOCIALACCOUNT_LOGIN_ON_GET = True
SOCIALACCOUNT_ONLY = True
SOCIALACCOUNT_AUTO_SIGNUP = os.getenv("OIDC_ALLOW_SIGNUP", "true").lower() == "true"
ACCOUNT_ADAPTER = "allauth.account.adapter.DefaultAccountAdapter"
SOCIALACCOUNT_ADAPTER = "allauth.socialaccount.adapter.DefaultSocialAccountAdapter"
# CRISPY FORMS
CRISPY_ALLOWED_TEMPLATE_PACKS = ["bootstrap5", "crispy_forms/pure_text"]

View File

@@ -21,6 +21,8 @@ from drf_spectacular.views import (
SpectacularAPIView,
SpectacularSwaggerView,
)
from allauth.socialaccount.providers.openid_connect.views import login, callback
urlpatterns = [
path("admin/", admin.site.urls),
@@ -36,6 +38,13 @@ urlpatterns = [
SpectacularSwaggerView.as_view(url_name="schema"),
name="swagger-ui",
),
path("auth/", include("allauth.urls")), # allauth urls
# path("auth/oidc/<str:provider_id>/login/", login, name="openid_connect_login"),
# path(
# "auth/oidc/<str:provider_id>/login/callback/",
# callback,
# name="openid_connect_callback",
# ),
path("", include("apps.transactions.urls")),
path("", include("apps.common.urls")),
path("", include("apps.users.urls")),

View File

@@ -4,3 +4,17 @@ from django.apps import AppConfig
class CommonConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "apps.common"
def ready(self):
from django.contrib import admin
from django.contrib.sites.models import Site
from allauth.socialaccount.models import (
SocialAccount,
SocialApp,
SocialToken,
)
admin.site.unregister(Site)
admin.site.unregister(SocialAccount)
admin.site.unregister(SocialApp)
admin.site.unregister(SocialToken)

View File

@@ -65,6 +65,18 @@ class SharedObject(models.Model):
super().save(*args, **kwargs)
class OwnedObjectManager(models.Manager):
def get_queryset(self):
"""Return only objects the user can access"""
user = get_current_user()
base_qs = super().get_queryset()
if user and user.is_authenticated:
return base_qs.filter(Q(owner=user) | Q(owner=None)).distinct()
return base_qs
class OwnedObject(models.Model):
owner = models.ForeignKey(
settings.AUTH_USER_MODEL,

View File

@@ -32,7 +32,7 @@ def net_worth_current(request):
)
currency_net_worth = calculate_currency_totals(
transactions_queryset=transactions_currency_queryset
transactions_queryset=transactions_currency_queryset, deep_search=True
)
account_net_worth = calculate_account_totals(
transactions_queryset=transactions_account_queryset
@@ -137,7 +137,7 @@ def net_worth_projected(request):
)
currency_net_worth = calculate_currency_totals(
transactions_queryset=transactions_currency_queryset
transactions_queryset=transactions_currency_queryset, deep_search=True
)
account_net_worth = calculate_account_totals(
transactions_queryset=transactions_account_queryset

View File

@@ -7,6 +7,7 @@ from crispy_forms.layout import (
Column,
Field,
Div,
HTML,
)
from django import forms
from django.db.models import Q
@@ -29,8 +30,8 @@ from apps.transactions.models import (
InstallmentPlan,
RecurringTransaction,
TransactionEntity,
QuickTransaction,
)
from apps.common.middleware.thread_local import get_current_user
class TransactionForm(forms.ModelForm):
@@ -247,6 +248,140 @@ class TransactionForm(forms.ModelForm):
return instance
class QuickTransactionForm(forms.ModelForm):
category = DynamicModelChoiceField(
create_field="name",
model=TransactionCategory,
required=False,
label=_("Category"),
queryset=TransactionCategory.objects.filter(active=True),
)
tags = DynamicModelMultipleChoiceField(
model=TransactionTag,
to_field_name="name",
create_field="name",
required=False,
label=_("Tags"),
queryset=TransactionTag.objects.filter(active=True),
)
entities = DynamicModelMultipleChoiceField(
model=TransactionEntity,
to_field_name="name",
create_field="name",
required=False,
label=_("Entities"),
)
account = forms.ModelChoiceField(
queryset=Account.objects.filter(is_archived=False),
label=_("Account"),
widget=TomSelect(clear_button=False, group_by="group"),
)
class Meta:
model = QuickTransaction
fields = [
"name",
"account",
"type",
"is_paid",
"amount",
"description",
"notes",
"category",
"tags",
"entities",
]
widgets = {
"notes": forms.Textarea(attrs={"rows": 3}),
"account": TomSelect(clear_button=False, group_by="group"),
}
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
# if editing a transaction display non-archived items and it's own item even if it's archived
if self.instance.id:
self.fields["account"].queryset = Account.objects.filter(
Q(is_archived=False) | Q(transactions=self.instance.id),
)
self.fields["category"].queryset = TransactionCategory.objects.filter(
Q(active=True) | Q(transaction=self.instance.id)
)
self.fields["tags"].queryset = TransactionTag.objects.filter(
Q(active=True) | Q(transaction=self.instance.id)
)
self.fields["entities"].queryset = TransactionEntity.objects.filter(
Q(active=True) | Q(transactions=self.instance.id)
)
else:
self.fields["account"].queryset = Account.objects.filter(
is_archived=False,
)
self.fields["category"].queryset = TransactionCategory.objects.filter(
active=True
)
self.fields["tags"].queryset = TransactionTag.objects.filter(active=True)
self.fields["entities"].queryset = TransactionEntity.objects.all()
self.helper = FormHelper()
self.helper.form_tag = False
self.helper.form_method = "post"
self.helper.layout = Layout(
Field(
"type",
template="transactions/widgets/income_expense_toggle_buttons.html",
),
Field("is_paid", template="transactions/widgets/paid_toggle_button.html"),
"name",
HTML("<hr />"),
Row(
Column("account", css_class="form-group col-md-6 mb-0"),
Column("entities", css_class="form-group col-md-6 mb-0"),
css_class="form-row",
),
Row(
Column(Field("date"), css_class="form-group col-md-6 mb-0"),
Column(Field("reference_date"), css_class="form-group col-md-6 mb-0"),
css_class="form-row",
),
"description",
Field("amount", inputmode="decimal"),
Row(
Column("category", css_class="form-group col-md-6 mb-0"),
Column("tags", css_class="form-group col-md-6 mb-0"),
css_class="form-row",
),
"notes",
)
if self.instance and self.instance.pk:
decimal_places = self.instance.account.currency.decimal_places
self.fields["amount"].widget = ArbitraryDecimalDisplayNumberInput(
decimal_places=decimal_places
)
self.helper.layout.append(
FormActions(
NoClassSubmit(
"submit", _("Update"), css_class="btn btn-outline-primary w-100"
),
),
)
else:
self.fields["amount"].widget = ArbitraryDecimalDisplayNumberInput()
self.helper.layout.append(
Div(
NoClassSubmit(
"submit", _("Add"), css_class="btn btn-outline-primary"
),
css_class="d-grid gap-2",
),
)
class BulkEditTransactionForm(TransactionForm):
is_paid = forms.NullBooleanField(required=False)

View File

@@ -0,0 +1,45 @@
# Generated by Django 5.1.11 on 2025-06-20 03:57
import apps.transactions.validators
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('accounts', '0014_alter_account_options_alter_accountgroup_options'),
('transactions', '0042_alter_transactioncategory_options_and_more'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='QuickTransaction',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100, verbose_name='Name')),
('type', models.CharField(choices=[('IN', 'Income'), ('EX', 'Expense')], default='EX', max_length=2, verbose_name='Type')),
('is_paid', models.BooleanField(default=True, verbose_name='Paid')),
('amount', models.DecimalField(decimal_places=30, max_digits=42, validators=[apps.transactions.validators.validate_non_negative, apps.transactions.validators.validate_decimal_places], verbose_name='Amount')),
('description', models.CharField(blank=True, max_length=500, verbose_name='Description')),
('notes', models.TextField(blank=True, verbose_name='Notes')),
('internal_note', models.TextField(blank=True, verbose_name='Internal Note')),
('internal_id', models.TextField(blank=True, null=True, unique=True, verbose_name='Internal ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('account', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quick_transactions', to='accounts.account', verbose_name='Account')),
('category', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='transactions.transactioncategory', verbose_name='Category')),
('entities', models.ManyToManyField(blank=True, related_name='quick_transactions', to='transactions.transactionentity', verbose_name='Entities')),
('owner', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='%(class)s_owned', to=settings.AUTH_USER_MODEL)),
('tags', models.ManyToManyField(blank=True, to='transactions.transactiontag', verbose_name='Tags')),
],
options={
'verbose_name': 'Quick Transaction',
'verbose_name_plural': 'Quick Transactions',
'db_table': 'quick_transactions',
'default_manager_name': 'objects',
},
),
]

View File

@@ -0,0 +1,19 @@
# Generated by Django 5.1.11 on 2025-06-20 04:02
from django.conf import settings
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('transactions', '0043_quicktransaction'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.AlterUniqueTogether(
name='quicktransaction',
unique_together={('name', 'owner')},
),
]

View File

@@ -16,7 +16,12 @@ from apps.common.templatetags.decimal import localize_number, drop_trailing_zero
from apps.currencies.utils.convert import convert
from apps.transactions.validators import validate_decimal_places, validate_non_negative
from apps.common.middleware.thread_local import get_current_user
from apps.common.models import SharedObject, SharedObjectManager, OwnedObject
from apps.common.models import (
SharedObject,
SharedObjectManager,
OwnedObject,
OwnedObjectManager,
)
logger = logging.getLogger()
@@ -886,3 +891,86 @@ class RecurringTransaction(models.Model):
"""
today = timezone.localdate(timezone.now())
self.transactions.filter(is_paid=False, date__gt=today).delete()
class QuickTransaction(OwnedObject):
class Type(models.TextChoices):
INCOME = "IN", _("Income")
EXPENSE = "EX", _("Expense")
name = models.CharField(
max_length=100,
null=False,
blank=False,
verbose_name=_("Name"),
)
account = models.ForeignKey(
"accounts.Account",
on_delete=models.CASCADE,
verbose_name=_("Account"),
related_name="quick_transactions",
)
type = models.CharField(
max_length=2,
choices=Type,
default=Type.EXPENSE,
verbose_name=_("Type"),
)
is_paid = models.BooleanField(default=True, verbose_name=_("Paid"))
amount = models.DecimalField(
max_digits=42,
decimal_places=30,
verbose_name=_("Amount"),
validators=[validate_non_negative, validate_decimal_places],
)
description = models.CharField(
max_length=500, verbose_name=_("Description"), blank=True
)
notes = models.TextField(blank=True, verbose_name=_("Notes"))
category = models.ForeignKey(
TransactionCategory,
on_delete=models.SET_NULL,
verbose_name=_("Category"),
blank=True,
null=True,
)
tags = models.ManyToManyField(
TransactionTag,
verbose_name=_("Tags"),
blank=True,
)
entities = models.ManyToManyField(
TransactionEntity,
verbose_name=_("Entities"),
blank=True,
related_name="quick_transactions",
)
internal_note = models.TextField(blank=True, verbose_name=_("Internal Note"))
internal_id = models.TextField(
blank=True, null=True, unique=True, verbose_name=_("Internal ID")
)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
objects = OwnedObjectManager()
all_objects = models.Manager() # Unfiltered manager
class Meta:
verbose_name = _("Quick Transaction")
verbose_name_plural = _("Quick Transactions")
unique_together = ("name", "owner")
db_table = "quick_transactions"
default_manager_name = "objects"
def save(self, *args, **kwargs):
self.amount = truncate_decimal(
value=self.amount, decimal_places=self.account.currency.decimal_places
)
self.full_clean()
super().save(*args, **kwargs)

View File

@@ -307,4 +307,39 @@ urlpatterns = [
views.recurring_transaction_finish,
name="recurring_transaction_finish",
),
path(
"quick-transactions/",
views.quick_transactions_index,
name="quick_transactions_index",
),
path(
"quick-transactions/list/",
views.quick_transactions_list,
name="quick_transactions_list",
),
path(
"quick-transactions/add/",
views.quick_transaction_add,
name="quick_transaction_add",
),
path(
"quick-transactions/<int:quick_transaction_id>/edit/",
views.quick_transaction_edit,
name="quick_transaction_edit",
),
path(
"quick-transactions/<int:quick_transaction_id>/delete/",
views.quick_transaction_delete,
name="quick_transaction_delete",
),
path(
"quick-transactions/create-menu/",
views.quick_transactions_create_menu,
name="quick_transactions_create_menu",
),
path(
"quick-transactions/<int:quick_transaction_id>/create/",
views.quick_transaction_add_as_transaction,
name="quick_transaction_add_as_transaction",
),
]

View File

@@ -9,9 +9,11 @@ from apps.currencies.utils.convert import convert
from apps.currencies.models import Currency
def calculate_currency_totals(transactions_queryset, ignore_empty=False):
def calculate_currency_totals(
transactions_queryset, ignore_empty=False, deep_search=False
):
# Prepare the aggregation expressions
currency_totals = (
currency_totals_from_transactions = (
transactions_queryset.values(
"account__currency",
"account__currency__code",
@@ -19,7 +21,14 @@ def calculate_currency_totals(transactions_queryset, ignore_empty=False):
"account__currency__decimal_places",
"account__currency__prefix",
"account__currency__suffix",
"account__currency__exchange_currency",
"account__currency__exchange_currency", # ID of the exchange currency for the account's currency
# Fields for the exchange currency itself (if account.currency.exchange_currency is set)
# These might be null if not set, so handle appropriately.
"account__currency__exchange_currency__code",
"account__currency__exchange_currency__name",
"account__currency__exchange_currency__decimal_places",
"account__currency__exchange_currency__prefix",
"account__currency__exchange_currency__suffix",
)
.annotate(
expense_current=Coalesce(
@@ -72,36 +81,55 @@ def calculate_currency_totals(transactions_queryset, ignore_empty=False):
.order_by()
)
# First pass: Process basic totals and store all currency data
result = {}
currencies_using_exchange = (
{}
) # Track which currencies use which exchange currencies
# currencies_using_exchange maps:
# exchange_currency_id -> list of [
# { "currency_id": original_currency_id, (the currency that was exchanged FROM)
# "exchanged": { field: amount_in_exchange_currency, ... } (the values of original_currency_id converted TO exchange_currency_id)
# }
# ]
currencies_using_exchange = {}
for total in currency_totals:
# Skip empty currencies if ignore_empty is True
if ignore_empty and all(
total[field] == Decimal("0")
for field in [
"expense_current",
"expense_projected",
"income_current",
"income_projected",
]
# --- First Pass: Process transactions from the queryset ---
for total in currency_totals_from_transactions:
if (
ignore_empty
and not deep_search
and all(
total[field] == Decimal("0")
for field in [
"expense_current",
"expense_projected",
"income_current",
"income_projected",
]
)
):
continue
# Calculate derived totals
currency_id = total["account__currency"]
try:
from_currency_obj = Currency.objects.get(id=currency_id)
except Currency.DoesNotExist:
# This should ideally not happen if database is consistent
continue
exchange_currency_for_this_total_id = total[
"account__currency__exchange_currency"
]
exchange_currency_obj_for_this_total = None
if exchange_currency_for_this_total_id:
try:
# Use pre-fetched values if available, otherwise query
exchange_currency_obj_for_this_total = Currency.objects.get(
id=exchange_currency_for_this_total_id
)
except Currency.DoesNotExist:
pass # Exchange currency might not exist or be set
total_current = total["income_current"] - total["expense_current"]
total_projected = total["income_projected"] - total["expense_projected"]
total_final = total_current + total_projected
currency_id = total["account__currency"]
from_currency = Currency.objects.get(id=currency_id)
exchange_currency = (
Currency.objects.get(id=total["account__currency__exchange_currency"])
if total["account__currency__exchange_currency"]
else None
)
currency_data = {
"currency": {
@@ -120,9 +148,16 @@ def calculate_currency_totals(transactions_queryset, ignore_empty=False):
"total_final": total_final,
}
# Add exchanged values if exchange_currency exists
if exchange_currency:
exchanged = {}
if exchange_currency_obj_for_this_total:
exchanged_details = {
"currency": {
"code": exchange_currency_obj_for_this_total.code,
"name": exchange_currency_obj_for_this_total.name,
"decimal_places": exchange_currency_obj_for_this_total.decimal_places,
"prefix": exchange_currency_obj_for_this_total.prefix,
"suffix": exchange_currency_obj_for_this_total.suffix,
}
}
for field in [
"expense_current",
"expense_projected",
@@ -132,50 +167,142 @@ def calculate_currency_totals(transactions_queryset, ignore_empty=False):
"total_projected",
"total_final",
]:
amount, prefix, suffix, decimal_places = convert(
amount=currency_data[field],
from_currency=from_currency,
to_currency=exchange_currency,
amount_to_convert = currency_data[field]
converted_val, _, _, _ = convert(
amount=amount_to_convert,
from_currency=from_currency_obj,
to_currency=exchange_currency_obj_for_this_total,
)
exchanged_details[field] = (
converted_val if converted_val is not None else Decimal("0")
)
if amount is not None:
exchanged[field] = amount
if "currency" not in exchanged:
exchanged["currency"] = {
"prefix": prefix,
"suffix": suffix,
"decimal_places": decimal_places,
"code": exchange_currency.code,
"name": exchange_currency.name,
}
if exchanged:
currency_data["exchanged"] = exchanged
# Track which currencies are using which exchange currencies
if exchange_currency.id not in currencies_using_exchange:
currencies_using_exchange[exchange_currency.id] = []
currencies_using_exchange[exchange_currency.id].append(
{"currency_id": currency_id, "exchanged": exchanged}
)
currency_data["exchanged"] = exchanged_details
if exchange_currency_obj_for_this_total.id not in currencies_using_exchange:
currencies_using_exchange[exchange_currency_obj_for_this_total.id] = []
currencies_using_exchange[exchange_currency_obj_for_this_total.id].append(
{"currency_id": currency_id, "exchanged": exchanged_details}
)
result[currency_id] = currency_data
# Second pass: Add consolidated totals for currencies that are used as exchange currencies
for currency_id, currency_data in result.items():
if currency_id in currencies_using_exchange:
consolidated = {
"currency": currency_data["currency"].copy(),
"expense_current": currency_data["expense_current"],
"expense_projected": currency_data["expense_projected"],
"income_current": currency_data["income_current"],
"income_projected": currency_data["income_projected"],
"total_current": currency_data["total_current"],
"total_projected": currency_data["total_projected"],
"total_final": currency_data["total_final"],
}
# --- Deep Search: Add transaction-less currencies that are exchange targets ---
if deep_search:
# Iteratively add exchange targets that might not have had direct transactions
# Start with known exchange targets from the first pass
queue = list(currencies_using_exchange.keys())
processed_for_deep_add = set(
result.keys()
) # Track currencies already in result or added by this deep search step
# Add exchanged values from all currencies using this as exchange currency
for using_currency in currencies_using_exchange[currency_id]:
exchanged = using_currency["exchanged"]
while queue:
target_id = queue.pop(0)
if target_id in processed_for_deep_add:
continue
processed_for_deep_add.add(target_id)
if (
target_id not in result
): # If this exchange target had no direct transactions
try:
db_currency = Currency.objects.get(id=target_id)
except Currency.DoesNotExist:
continue
# Initialize data for this transaction-less exchange target currency
currency_data_for_db_currency = {
"currency": {
"code": db_currency.code,
"name": db_currency.name,
"decimal_places": db_currency.decimal_places,
"prefix": db_currency.prefix,
"suffix": db_currency.suffix,
},
"expense_current": Decimal("0"),
"expense_projected": Decimal("0"),
"income_current": Decimal("0"),
"income_projected": Decimal("0"),
"total_current": Decimal("0"),
"total_projected": Decimal("0"),
"total_final": Decimal("0"),
}
# If this newly added transaction-less currency ALSO has an exchange_currency set for itself
if db_currency.exchange_currency:
exchanged_details_for_db_currency = {
"currency": {
"code": db_currency.exchange_currency.code,
"name": db_currency.exchange_currency.name,
"decimal_places": db_currency.exchange_currency.decimal_places,
"prefix": db_currency.exchange_currency.prefix,
"suffix": db_currency.exchange_currency.suffix,
}
}
for field in [
"expense_current",
"expense_projected",
"income_current",
"income_projected",
"total_current",
"total_projected",
"total_final",
]:
converted_val, _, _, _ = convert(
Decimal("0"), db_currency, db_currency.exchange_currency
)
exchanged_details_for_db_currency[field] = (
converted_val if converted_val is not None else Decimal("0")
)
currency_data_for_db_currency["exchanged"] = (
exchanged_details_for_db_currency
)
# Ensure its own exchange_currency is registered in currencies_using_exchange
# and add it to the queue if it hasn't been processed yet for deep add.
target_id_for_this_db_curr = db_currency.exchange_currency.id
if target_id_for_this_db_curr not in currencies_using_exchange:
currencies_using_exchange[target_id_for_this_db_curr] = []
# Avoid adding duplicate entries
already_present_in_cue = any(
entry["currency_id"] == db_currency.id
for entry in currencies_using_exchange[
target_id_for_this_db_curr
]
)
if not already_present_in_cue:
currencies_using_exchange[target_id_for_this_db_curr].append(
{
"currency_id": db_currency.id,
"exchanged": exchanged_details_for_db_currency,
}
)
if target_id_for_this_db_curr not in processed_for_deep_add:
queue.append(target_id_for_this_db_curr)
result[db_currency.id] = currency_data_for_db_currency
# --- Second Pass: Calculate consolidated totals for all currencies in result ---
for currency_id_consolidated, data_consolidated_currency in result.items():
consolidated_data = {
"currency": data_consolidated_currency["currency"].copy(),
"expense_current": data_consolidated_currency["expense_current"],
"expense_projected": data_consolidated_currency["expense_projected"],
"income_current": data_consolidated_currency["income_current"],
"income_projected": data_consolidated_currency["income_projected"],
"total_current": data_consolidated_currency["total_current"],
"total_projected": data_consolidated_currency["total_projected"],
"total_final": data_consolidated_currency["total_final"],
}
if currency_id_consolidated in currencies_using_exchange:
for original_currency_info in currencies_using_exchange[
currency_id_consolidated
]:
exchanged_values_from_original = original_currency_info["exchanged"]
for field in [
"expense_current",
"expense_projected",
@@ -185,10 +312,25 @@ def calculate_currency_totals(transactions_queryset, ignore_empty=False):
"total_projected",
"total_final",
]:
if field in exchanged:
consolidated[field] += exchanged[field]
if field in exchanged_values_from_original:
consolidated_data[field] += exchanged_values_from_original[
field
]
result[currency_id]["consolidated"] = consolidated
result[currency_id_consolidated]["consolidated"] = consolidated_data
# Sort currencies by their final_total or consolidated final_total, descending
result = {
k: v
for k, v in sorted(
result.items(),
reverse=True,
key=lambda item: max(
item[1].get("total_final", Decimal("0")),
item[1].get("consolidated", {}).get("total_final", Decimal("0")),
),
)
}
return result

View File

@@ -5,3 +5,4 @@ from .categories import *
from .actions import *
from .installment_plans import *
from .recurring_transactions import *
from .quick_transactions import *

View File

@@ -0,0 +1,152 @@
from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.forms import model_to_dict
from django.http import HttpResponse
from django.shortcuts import render, get_object_or_404
from django.utils import timezone
from django.utils.translation import gettext_lazy as _
from django.views.decorators.http import require_http_methods
from apps.common.decorators.htmx import only_htmx
from apps.transactions.forms import QuickTransactionForm
from apps.transactions.models import QuickTransaction
from apps.transactions.models import Transaction
@login_required
@require_http_methods(["GET"])
def quick_transactions_index(request):
return render(
request,
"quick_transactions/pages/index.html",
)
@only_htmx
@login_required
@require_http_methods(["GET"])
def quick_transactions_list(request):
quick_transactions = QuickTransaction.objects.all().order_by("name")
return render(
request,
"quick_transactions/fragments/list.html",
context={"quick_transactions": quick_transactions},
)
@only_htmx
@login_required
@require_http_methods(["GET", "POST"])
def quick_transaction_add(request):
if request.method == "POST":
form = QuickTransactionForm(request.POST)
if form.is_valid():
form.save()
messages.success(request, _("Item added successfully"))
return HttpResponse(
status=204,
headers={
"HX-Trigger": "updated, hide_offcanvas",
},
)
else:
form = QuickTransactionForm()
return render(
request,
"quick_transactions/fragments/add.html",
{"form": form},
)
@only_htmx
@login_required
@require_http_methods(["GET", "POST"])
def quick_transaction_edit(request, quick_transaction_id):
quick_transaction = get_object_or_404(QuickTransaction, id=quick_transaction_id)
if request.method == "POST":
form = QuickTransactionForm(request.POST, instance=quick_transaction)
if form.is_valid():
form.save()
messages.success(request, _("Item updated successfully"))
return HttpResponse(
status=204,
headers={
"HX-Trigger": "updated, hide_offcanvas",
},
)
else:
form = QuickTransactionForm(instance=quick_transaction)
return render(
request,
"quick_transactions/fragments/edit.html",
{"form": form, "quick_transaction": quick_transaction},
)
@only_htmx
@login_required
@require_http_methods(["DELETE"])
def quick_transaction_delete(request, quick_transaction_id):
quick_transaction = get_object_or_404(QuickTransaction, id=quick_transaction_id)
quick_transaction.delete()
messages.success(request, _("Item deleted successfully"))
return HttpResponse(
status=204,
headers={
"HX-Trigger": "updated, hide_offcanvas",
},
)
@only_htmx
@login_required
@require_http_methods(["GET"])
def quick_transactions_create_menu(request):
quick_transactions = QuickTransaction.objects.all().order_by("name")
return render(
request,
"quick_transactions/fragments/create_menu.html",
context={"quick_transactions": quick_transactions},
)
@only_htmx
@login_required
@require_http_methods(["GET"])
def quick_transaction_add_as_transaction(request, quick_transaction_id):
quick_transaction: QuickTransaction = get_object_or_404(
QuickTransaction, id=quick_transaction_id
)
today = timezone.localdate(timezone.now())
quick_transaction_data = model_to_dict(
quick_transaction,
exclude=["id", "name", "owner", "account", "category", "tags", "entities"],
)
new_transaction = Transaction(**quick_transaction_data)
new_transaction.account = quick_transaction.account
new_transaction.category = quick_transaction.category
new_transaction.date = today
new_transaction.reference_date = today.replace(day=1)
new_transaction.save()
new_transaction.tags.set(quick_transaction.tags.all())
new_transaction.entities.set(quick_transaction.entities.all())
messages.success(request, _("Transaction added successfully"))
return HttpResponse(
status=204,
headers={
"HX-Trigger": "updated, hide_offcanvas",
},
)

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -26,11 +26,12 @@ msgstr ""
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr ""
@@ -39,11 +40,12 @@ msgstr ""
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -56,6 +58,7 @@ msgstr ""
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -73,10 +76,11 @@ msgstr ""
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -86,11 +90,12 @@ msgstr ""
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -98,8 +103,8 @@ msgstr ""
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -108,6 +113,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -121,7 +127,7 @@ msgstr ""
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr ""
@@ -161,17 +167,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr ""
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -454,8 +461,8 @@ msgstr ""
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -477,8 +484,8 @@ msgstr ""
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -508,7 +515,7 @@ msgstr ""
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr ""
@@ -536,8 +543,8 @@ msgstr ""
msgid "Service Type"
msgstr ""
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -657,11 +664,11 @@ msgstr ""
msgid "Create transaction"
msgstr ""
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr ""
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr ""
@@ -686,7 +693,7 @@ msgstr ""
msgid "You must provide an account."
msgstr ""
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr ""
@@ -705,8 +712,9 @@ msgstr ""
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr ""
@@ -763,14 +771,14 @@ msgid "Entry deleted successfully"
msgstr ""
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr ""
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -779,30 +787,31 @@ msgstr ""
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr ""
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr ""
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr ""
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -811,16 +820,16 @@ msgstr ""
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr ""
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr ""
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr ""
@@ -855,7 +864,7 @@ msgstr ""
msgid "Update or create transaction actions"
msgstr ""
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -885,7 +894,7 @@ msgstr ""
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr ""
@@ -1039,48 +1048,52 @@ msgid "Operator"
msgstr ""
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr ""
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr ""
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr ""
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr ""
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr ""
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr ""
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr ""
@@ -1206,8 +1219,8 @@ msgstr ""
msgid "Update or Create Transaction action deleted successfully"
msgstr ""
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1242,231 +1255,244 @@ msgstr ""
msgid "Amount max"
msgstr ""
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr ""
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr ""
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr ""
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr ""
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr ""
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr ""
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr ""
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr ""
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr ""
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr ""
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr ""
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr ""
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
msgstr ""
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr ""
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr ""
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr ""
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
msgstr ""
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr ""
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr ""
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr ""
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr ""
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr ""
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr ""
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr ""
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
msgid "Transaction"
msgstr ""
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr ""
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr ""
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr ""
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr ""
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr ""
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr ""
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr ""
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr ""
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr ""
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr ""
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr ""
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr ""
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr ""
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr ""
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr ""
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr ""
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr ""
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr ""
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr ""
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr ""
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr ""
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr ""
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr ""
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr ""
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr ""
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
msgid "Quick Transaction"
msgstr ""
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
msgid "Quick Transactions"
msgstr ""
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1552,6 +1578,24 @@ msgstr ""
msgid "Installment Plan deleted successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
msgid "Item added successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
msgid "Item updated successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:99
msgid "Item deleted successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr ""
#: apps/transactions/views/recurring_transactions.py:112
msgid "Recurring Transaction added successfully"
msgstr ""
@@ -1588,11 +1632,6 @@ msgstr ""
msgid "Tag deleted successfully"
msgstr ""
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr ""
#: apps/transactions/views/transactions.py:182
msgid "Transaction updated successfully"
msgstr ""
@@ -1640,11 +1679,11 @@ msgstr ""
msgid "Important dates"
msgstr ""
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
msgid "E-mail"
msgstr ""
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
msgid "Password"
msgstr ""
@@ -1798,14 +1837,6 @@ msgstr ""
msgid "Your settings have been updated"
msgstr ""
#: apps/users/views.py:152
msgid "Item added successfully"
msgstr ""
#: apps/users/views.py:184
msgid "Item updated successfully"
msgstr ""
#: templates/account_groups/fragments/add.html:5
msgid "Add account group"
msgstr ""
@@ -1825,6 +1856,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1835,7 +1867,7 @@ msgstr ""
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1846,6 +1878,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1858,8 +1891,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1873,6 +1906,7 @@ msgstr ""
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1884,8 +1918,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1899,6 +1933,7 @@ msgstr ""
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -1913,8 +1948,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -1935,8 +1970,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -1947,6 +1982,7 @@ msgstr ""
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2096,7 +2132,7 @@ msgstr ""
msgid "Select"
msgstr ""
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
msgid "Duplicate"
msgstr ""
@@ -2205,14 +2241,17 @@ msgid "Count"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
msgid "Installment"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
msgid "Recurring"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
msgid "Balance"
msgstr ""
@@ -2378,8 +2417,8 @@ msgstr ""
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
msgid "All"
msgstr ""
@@ -2432,7 +2471,7 @@ msgstr ""
msgid "No services configured"
msgstr ""
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
msgid "Export and Restore"
msgstr ""
@@ -2545,47 +2584,47 @@ msgstr ""
msgid "Trash Can"
msgstr ""
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
msgid "Tools"
msgstr ""
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
msgid "Dollar Cost Average Tracker"
msgstr ""
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
msgid "Unit Price Calculator"
msgstr ""
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
msgid "Currency Converter"
msgstr ""
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
msgid "Management"
msgstr ""
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
msgid "Automation"
msgstr ""
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr ""
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
msgid "Only use this if you know what you're doing"
msgstr ""
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
msgid "Django Admin"
msgstr ""
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
msgid "Calculator"
msgstr ""
@@ -2731,8 +2770,8 @@ msgid "Month"
msgstr ""
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
msgid "Year"
msgstr ""
@@ -2924,6 +2963,24 @@ msgstr ""
msgid "Evolution by account"
msgstr ""
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
msgid "Add quick transaction"
msgstr ""
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
msgid "Edit quick transaction"
msgstr ""
#: templates/quick_transactions/fragments/list.html:38
msgid "This will delete this item"
msgstr ""
#: templates/recurring_transactions/fragments/add.html:5
msgid "Add recurring transaction"
msgstr ""
@@ -3153,14 +3210,18 @@ msgstr ""
msgid "Show amounts"
msgstr ""
#: templates/users/login.html:17
#: templates/users/login.html:18
msgid "Welcome to WYGIWYH's demo!"
msgstr ""
#: templates/users/login.html:18
#: templates/users/login.html:19
msgid "Use the credentials below to login"
msgstr ""
#: templates/users/login.html:40
msgid "Login with"
msgstr ""
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
msgid "Yearly Overview"

File diff suppressed because it is too large Load Diff

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: 2025-04-27 19:12+0000\n"
"Last-Translator: ThomasE <thomas-evano@hotmail.fr>\n"
"Language-Team: French <https://translations.herculino.com/projects/wygiwyh/"
@@ -27,11 +27,12 @@ msgstr "Nom de groupe"
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr "Mise à jour"
@@ -40,11 +41,12 @@ msgstr "Mise à jour"
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -57,6 +59,7 @@ msgstr "Mise à jour"
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -74,10 +77,11 @@ msgstr "Nouveau solde"
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -87,11 +91,12 @@ msgstr "Catégorie"
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -99,8 +104,8 @@ msgstr "Balises"
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -109,6 +114,7 @@ msgstr "Balises"
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -122,7 +128,7 @@ msgstr "Groupe de comptes"
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr "Groupes de comptes"
@@ -165,17 +171,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr "Compte"
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -465,8 +472,8 @@ msgstr "Suffixe"
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -488,8 +495,8 @@ msgstr "Décimales"
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -519,7 +526,7 @@ msgstr "Date et Heure"
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr "Taux de changes"
@@ -547,8 +554,8 @@ msgstr "Nom du Service"
msgid "Service Type"
msgstr "Type de Service"
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -676,11 +683,11 @@ msgstr "Services ajouté à la file avec succès"
msgid "Create transaction"
msgstr "Créer une transaction"
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr "Compte originateur"
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr "Compte bénéficiaire"
@@ -705,7 +712,7 @@ msgstr "Lié transaction"
msgid "You must provide an account."
msgstr "Vous devez fournir un compte."
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr ""
"Le compte originateur et le compte bénéficiaire doivent être différent."
@@ -725,8 +732,9 @@ msgstr "Devise de paiement"
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr "Notes"
@@ -783,14 +791,14 @@ msgid "Entry deleted successfully"
msgstr "Entrée supprimée avec succès"
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr "Utilisateurs"
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -799,30 +807,31 @@ msgstr "Transactions"
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr "Catégories"
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr "Entités"
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr "Transactions récurrentes"
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -831,16 +840,16 @@ msgstr "Plans d'installation"
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr "Taux de change automatique"
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr "Règles"
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr "DCA"
@@ -875,7 +884,7 @@ msgstr "Modifier l'action de transaction"
msgid "Update or create transaction actions"
msgstr "Mettre à jour ou créer des actions de transaction"
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -907,7 +916,7 @@ msgstr "Sélectionnez un fichier"
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr "Importer"
@@ -1061,48 +1070,52 @@ msgid "Operator"
msgstr "Opérateur"
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr "Type"
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr "Payé"
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr "Date de référence"
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr "Montant"
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr "Description"
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr "Note interne"
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr "ID interne"
@@ -1232,8 +1245,8 @@ msgid "Update or Create Transaction action deleted successfully"
msgstr ""
"Mis à jour ou Création de l'action de Transaction supprimée avec succès"
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1268,56 +1281,57 @@ msgstr "Montant min"
msgid "Amount max"
msgstr "Montant max"
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr "Plus"
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr "Enregistrer et ajouter des semblables"
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr "Enregistrer et ajouter un autre"
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr "Montant de départ"
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr "Montant d'arrivée"
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr "Transfère"
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr "Nom de balise"
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr "Nom d'entité"
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr "Nom de catégorie"
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr "Catégories ignorées ne compteront pas dans votre total mensuel"
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr "La date de fin doit être ultérieure à la date de début"
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr "Silencieux"
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
@@ -1325,26 +1339,26 @@ msgstr ""
"Les catégories désactivées ne seront pas sélectionnable lors de la création "
"de nouvelle transactions"
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr "Catégorie de transaction"
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr "Catégories de transaction"
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
"Les balises désactivées ne pourront pas être sélectionnées lors de la "
"créations de nouvelles transactions"
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr "Balises de transaction"
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
@@ -1352,154 +1366,169 @@ msgstr ""
"Les entités désactivées ne pourront pas être sélectionnées lors de la "
"créations de nouvelles transactions"
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr "Entité"
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr "Revenue"
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr "Dépense"
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr "Plan d'aménagement"
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr "Transaction récurrente"
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr "Supprimé"
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr "Supprimé à"
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
#, fuzzy
msgid "Transaction"
msgstr "Transaction"
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr "Pas de balises"
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr "Pas de catégorie"
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr "Pas de description"
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr "Annuel"
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr "Mensuel"
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr "Hebdomadaire"
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr "Quotidien"
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr "Nombre d'aménagements"
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr "Début de l'aménagement"
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr "Le numéro d'aménagement à partir duquel compter"
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr "Date de début"
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr "Date de fin"
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr "Récurrence"
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr "Montant d'aménagement"
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr "Rajouter une description à la transaction"
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr "Ajouter des notes aux transactions"
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr "jour(s)"
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr "semaine(s)"
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr "mois"
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr "année(s)"
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr "Interrompu"
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr "Type de récurrence"
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr "Interval de récurrence"
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr "Dernière date générée"
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr "Dernière date de référence générée"
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
#, fuzzy
msgid "Quick Transaction"
msgstr "Edit Transaction"
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
#, fuzzy
#| msgid "Transactions"
msgid "Quick Transactions"
msgstr "Transactions"
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1590,6 +1619,29 @@ msgstr "Installment Plan refreshed successfully"
msgid "Installment Plan deleted successfully"
msgstr "Installment Plan deleted successfully"
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
#, fuzzy
msgid "Item added successfully"
msgstr "Rule added successfully"
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
#, fuzzy
msgid "Item updated successfully"
msgstr "Rule updated successfully"
#: apps/transactions/views/quick_transactions.py:99
#, fuzzy
#| msgid "Rule deleted successfully"
msgid "Item deleted successfully"
msgstr "Règle supprimée avec succès"
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
#, fuzzy
msgid "Transaction added successfully"
msgstr "Transaction added successfully"
#: apps/transactions/views/recurring_transactions.py:112
#, fuzzy
msgid "Recurring Transaction added successfully"
@@ -1635,12 +1687,6 @@ msgstr "Tag updated successfully"
msgid "Tag deleted successfully"
msgstr "Tag deleted successfully"
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
#, fuzzy
msgid "Transaction added successfully"
msgstr "Transaction added successfully"
#: apps/transactions/views/transactions.py:182
#, fuzzy
msgid "Transaction updated successfully"
@@ -1698,12 +1744,12 @@ msgstr "Permissions"
msgid "Important dates"
msgstr "Important dates"
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
#, fuzzy
msgid "E-mail"
msgstr "E-mail"
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
#, fuzzy
msgid "Password"
msgstr "Password"
@@ -1881,16 +1927,6 @@ msgstr "Sounds will now play"
msgid "Your settings have been updated"
msgstr "Your settings have been updated"
#: apps/users/views.py:152
#, fuzzy
msgid "Item added successfully"
msgstr "Rule added successfully"
#: apps/users/views.py:184
#, fuzzy
msgid "Item updated successfully"
msgstr "Rule updated successfully"
#: templates/account_groups/fragments/add.html:5
#, fuzzy
msgid "Add account group"
@@ -1912,6 +1948,7 @@ msgstr "Edit account group"
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1923,7 +1960,7 @@ msgstr "Actions"
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1934,6 +1971,7 @@ msgstr "Actions"
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1947,8 +1985,8 @@ msgstr "Edit"
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1962,6 +2000,7 @@ msgstr "Edit"
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1974,8 +2013,8 @@ msgstr "Delete"
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1989,6 +2028,7 @@ msgstr "Delete"
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -2004,8 +2044,8 @@ msgstr "Are you sure?"
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -2027,8 +2067,8 @@ msgstr "You won't be able to revert this!"
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -2039,6 +2079,7 @@ msgstr "You won't be able to revert this!"
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2219,7 +2260,7 @@ msgstr "Search"
msgid "Select"
msgstr "Select"
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
#, fuzzy
msgid "Duplicate"
@@ -2347,16 +2388,19 @@ msgid "Count"
msgstr "Count"
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
#, fuzzy
msgid "Installment"
msgstr "Installment"
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
#, fuzzy
msgid "Recurring"
msgstr "Recurring"
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
#, fuzzy
msgid "Balance"
msgstr "Balance"
@@ -2560,8 +2604,8 @@ msgstr "Edit exchange rate"
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
#, fuzzy
msgid "All"
msgstr "All"
@@ -2626,7 +2670,7 @@ msgstr "accounts"
msgid "No services configured"
msgstr "No services configured"
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
#, fuzzy
msgid "Export and Restore"
msgstr "Export and Restore"
@@ -2767,55 +2811,55 @@ msgstr "Insights"
msgid "Trash Can"
msgstr "Trash Can"
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
#, fuzzy
msgid "Tools"
msgstr "Tools"
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
#, fuzzy
msgid "Dollar Cost Average Tracker"
msgstr "Dollar Cost Average Tracker"
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
#, fuzzy
msgid "Unit Price Calculator"
msgstr "Unit Price Calculator"
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
#, fuzzy
msgid "Currency Converter"
msgstr "Currency Converter"
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
#, fuzzy
msgid "Management"
msgstr "Management"
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
#, fuzzy
msgid "Automation"
msgstr "Automation"
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr ""
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
#, fuzzy
msgid "Only use this if you know what you're doing"
msgstr "Only use this if you know what you're doing"
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
#, fuzzy
msgid "Django Admin"
msgstr "Django Admin"
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
#, fuzzy
msgid "Calculator"
msgstr "Calculator"
@@ -2991,8 +3035,8 @@ msgid "Month"
msgstr "Month"
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
#, fuzzy
msgid "Year"
msgstr "Year"
@@ -3229,6 +3273,27 @@ msgstr "Evolution by currency"
msgid "Evolution by account"
msgstr "Evolution by account"
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
#, fuzzy
msgid "Add quick transaction"
msgstr "Add recurring transaction"
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
#, fuzzy
msgid "Edit quick transaction"
msgstr "Edit transaction"
#: templates/quick_transactions/fragments/list.html:38
#, fuzzy
msgid "This will delete this item"
msgstr "Yes, delete them!"
#: templates/recurring_transactions/fragments/add.html:5
#, fuzzy
msgid "Add recurring transaction"
@@ -3515,16 +3580,22 @@ msgstr "Play sounds"
msgid "Show amounts"
msgstr "Show amounts"
#: templates/users/login.html:17
#: templates/users/login.html:18
#, fuzzy
msgid "Welcome to WYGIWYH's demo!"
msgstr "Welcome to WYGIWYH's demo!"
#: templates/users/login.html:18
#: templates/users/login.html:19
#, fuzzy
msgid "Use the credentials below to login"
msgstr "Use the credentials below to login"
#: templates/users/login.html:40
#, fuzzy
#| msgid "ends with"
msgid "Login with"
msgstr "Fini par"
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
#, fuzzy

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: 2025-05-01 09:16+0000\n"
"Last-Translator: Dimitri Decrock <dj.flashpower@gmail.com>\n"
"Language-Team: Dutch <https://translations.herculino.com/projects/wygiwyh/"
@@ -27,11 +27,12 @@ msgstr "Groepsnaam"
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr "Bijwerken"
@@ -40,11 +41,12 @@ msgstr "Bijwerken"
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -57,6 +59,7 @@ msgstr "Bijwerken"
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -74,10 +77,11 @@ msgstr "Nieuw saldo"
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -87,11 +91,12 @@ msgstr "Categorie"
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -99,8 +104,8 @@ msgstr "Labels"
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -109,6 +114,7 @@ msgstr "Labels"
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -122,7 +128,7 @@ msgstr "Accountgroep"
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr "Accountgroepen"
@@ -166,17 +172,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr "Rekening"
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -465,8 +472,8 @@ msgstr "Achtervoegsel"
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -488,8 +495,8 @@ msgstr "Cijfers na de komma"
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -519,7 +526,7 @@ msgstr "Datum en Tijd"
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr "Wisselkoersen"
@@ -547,8 +554,8 @@ msgstr "Dienstnaam"
msgid "Service Type"
msgstr "Soort Dienst"
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -677,11 +684,11 @@ msgstr "Diensten succesvol in de wachtrij geplaatst"
msgid "Create transaction"
msgstr "Maak verrichtingen"
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr "Van rekening"
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr "Naar rekening"
@@ -707,7 +714,7 @@ msgstr "Koppel verrichting"
msgid "You must provide an account."
msgstr "Je moet een account opgeven."
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr "Van en Naar rekening moeten verschillend zijn."
@@ -726,8 +733,9 @@ msgstr "Betaal Munteenheid"
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr "Opmerkingen"
@@ -784,14 +792,14 @@ msgid "Entry deleted successfully"
msgstr "Item succesvol verwijderd"
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr "Gebruikers"
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -800,30 +808,31 @@ msgstr "Verrichtingen"
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr "Categorieën"
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr "Bedrijven"
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr "Terugkerende Verrichtingen"
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -832,16 +841,16 @@ msgstr "Afbetalingsplannen"
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr "Automatische Wisselkoersen"
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr "Regels"
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr "DCA"
@@ -876,7 +885,7 @@ msgstr "Bewerk verrichtingsactie"
msgid "Update or create transaction actions"
msgstr "Bewerk of maak verrichtingsregel acties"
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -908,7 +917,7 @@ msgstr "Selecteer een bestand"
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr "Importeer"
@@ -1062,48 +1071,52 @@ msgid "Operator"
msgstr "Operator"
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr "Soort"
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr "Betaald"
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr "Referentiedatum"
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr "Bedrag"
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr "Beschrijving"
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr "Interne opmerking"
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr "Interne ID"
@@ -1231,8 +1244,8 @@ msgstr "Verrichting Bijwerken Of Maken succesvol bijgewerkt"
msgid "Update or Create Transaction action deleted successfully"
msgstr "Verrichting Bijwerken Of Maken succesvol verwijderd"
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1267,56 +1280,57 @@ msgstr "Minimum bedrag"
msgid "Amount max"
msgstr "Maximaal bedrag"
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr "Meer"
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr "Opslaan en vergelijkbaar toevoegen"
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr "Opslaan en een andere toevoegen"
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr "Van Bedrag"
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr "Naar Bedrag"
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr "Overschrijving"
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr "Labelnaam"
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr "Naam van bedrijf"
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr "Naam van categorie"
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr "Gedempte categorieën tellen niet mee voor je maandtotaal"
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr "De einddatum moet na de begindatum vallen"
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr "Dempen"
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
@@ -1324,26 +1338,26 @@ msgstr ""
"Gedeactiveerde categorieën kunnen niet worden geselecteerd bij het maken van "
"nieuwe transacties"
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr "Transactie categorie"
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr "Transactie categorieën"
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
"Gedeactiveerde labels kunnen niet worden geselecteerd bij het maken van "
"nieuwe verrichtingen"
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr "Verrichting Labels"
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
@@ -1351,153 +1365,169 @@ msgstr ""
"Gedeactiveerde bedrijven kunnen niet worden geselecteerd bij het maken van "
"nieuwe verrichtingen"
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr "Bedrijf"
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr "Ontvangsten Transactie"
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr "Uitgave"
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr "Afbetalingsplan"
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr "Terugkerende verrichting"
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr "Verwijderd"
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr "Verwijderd Op"
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
msgid "Transaction"
msgstr "Verrichting"
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr "Geen labels"
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr "Geen categorie"
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr "Geen Beschrijving"
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr "Jaarlijks"
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr "Maandelijks"
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr "Wekelijks"
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr "Dagelijks"
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr "Aantal aflossingen"
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr "Begin afbetaling"
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr "Het nummer van de aflevering om mee te beginnen"
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr "Startdatum"
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr "Einddatum"
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr "Terugkeerpatroon"
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr "Termijnbedrag"
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr "Beschrijving toevoegen aan verrichting"
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr "Notities toevoegen aan verrichting"
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr "dag(en)"
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr "we(e)k(en)"
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr "maand(en)"
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr "ja(a)r(en)"
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr "Gepauzeerd"
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr "Type Terugkeerpatroon"
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr "Terugkeer Interval"
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr "Laatste Gegenereerde Datum"
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr "Laatste Gegenereerde Referentiedatum"
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
#, fuzzy
#| msgid "Edit Transaction"
msgid "Quick Transaction"
msgstr "Bewerk verrichting"
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
#, fuzzy
#| msgid "Transactions"
msgid "Quick Transactions"
msgstr "Verrichtingen"
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1583,6 +1613,26 @@ msgstr "Afbetalingsplan succesvol vernieuwd"
msgid "Installment Plan deleted successfully"
msgstr "Afbetalingsplan succesvol verwijderd"
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
msgid "Item added successfully"
msgstr "Item succesvol toegevoegd"
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
msgid "Item updated successfully"
msgstr "Item succesvol bijgewerkt"
#: apps/transactions/views/quick_transactions.py:99
#, fuzzy
#| msgid "Rule deleted successfully"
msgid "Item deleted successfully"
msgstr "Regel succesvol verwijderd"
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Verrichting succesvol toegevoegd"
#: apps/transactions/views/recurring_transactions.py:112
msgid "Recurring Transaction added successfully"
msgstr "Terugkerende Verrichting succesvol toegevoegd"
@@ -1619,11 +1669,6 @@ msgstr "Label succesvol bijgewerkt"
msgid "Tag deleted successfully"
msgstr "Label succesvol verwijderd"
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Verrichting succesvol toegevoegd"
#: apps/transactions/views/transactions.py:182
msgid "Transaction updated successfully"
msgstr "Verrichting succesvol bijgewerkt"
@@ -1671,11 +1716,11 @@ msgstr "Rechten"
msgid "Important dates"
msgstr "Belangrijke datums"
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
msgid "E-mail"
msgstr "E-mailadres"
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
msgid "Password"
msgstr "Wachtwoord"
@@ -1836,14 +1881,6 @@ msgstr "De geluiden worden nu afgespeeld"
msgid "Your settings have been updated"
msgstr "Jouw instellingen zijn bijgewerkt"
#: apps/users/views.py:152
msgid "Item added successfully"
msgstr "Item succesvol toegevoegd"
#: apps/users/views.py:184
msgid "Item updated successfully"
msgstr "Item succesvol bijgewerkt"
#: templates/account_groups/fragments/add.html:5
msgid "Add account group"
msgstr "Rekeningsgroep toevoegen"
@@ -1863,6 +1900,7 @@ msgstr "Rekeningsgroep bewerken"
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1873,7 +1911,7 @@ msgstr "Acties"
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1884,6 +1922,7 @@ msgstr "Acties"
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1896,8 +1935,8 @@ msgstr "Bewerken"
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1911,6 +1950,7 @@ msgstr "Bewerken"
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1922,8 +1962,8 @@ msgstr "Verwijderen"
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1937,6 +1977,7 @@ msgstr "Verwijderen"
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -1951,8 +1992,8 @@ msgstr "Weet je het zeker?"
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -1973,8 +2014,8 @@ msgstr "Je kunt dit niet meer terugdraaien!"
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -1985,6 +2026,7 @@ msgstr "Je kunt dit niet meer terugdraaien!"
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2134,7 +2176,7 @@ msgstr "Zoeken"
msgid "Select"
msgstr "Selecteer"
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
msgid "Duplicate"
msgstr "Dupliceren"
@@ -2243,14 +2285,17 @@ msgid "Count"
msgstr "Rekenen"
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
msgid "Installment"
msgstr "Afbetaling"
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
msgid "Recurring"
msgstr "Terugkerende"
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
msgid "Balance"
msgstr "Saldo"
@@ -2416,8 +2461,8 @@ msgstr "Wisselkoers bewerken"
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
msgid "All"
msgstr "Allemaal"
@@ -2470,7 +2515,7 @@ msgstr "rekeningen"
msgid "No services configured"
msgstr "Geen diensten ingesteld"
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
msgid "Export and Restore"
msgstr "Exporteren en Herstellen"
@@ -2584,47 +2629,47 @@ msgstr "Inzichten"
msgid "Trash Can"
msgstr "Prullenbak"
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
msgid "Tools"
msgstr "Hulpmiddelen"
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
msgid "Dollar Cost Average Tracker"
msgstr "Dollar Kostgemiddelde Tracker"
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
msgid "Unit Price Calculator"
msgstr "Eenheidsprijs berekenen"
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
msgid "Currency Converter"
msgstr "Valuta omrekenen"
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
msgid "Management"
msgstr "Beheer"
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
msgid "Automation"
msgstr "Automatisatie"
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr "Admin"
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
msgid "Only use this if you know what you're doing"
msgstr "Gebruik dit alleen als je weet wat je doet"
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
msgid "Django Admin"
msgstr "Django Beheerder"
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
msgid "Calculator"
msgstr "Rekenmachine"
@@ -2776,8 +2821,8 @@ msgid "Month"
msgstr "Maand"
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
msgid "Year"
msgstr "Jaar"
@@ -2972,6 +3017,30 @@ msgstr "Evolutie per munteenheid"
msgid "Evolution by account"
msgstr "Evolutie per rekening"
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
#, fuzzy
#| msgid "Add recurring transaction"
msgid "Add quick transaction"
msgstr "Voeg terugkerende verrichtingen toe"
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
#, fuzzy
#| msgid "Edit transaction"
msgid "Edit quick transaction"
msgstr "Bewerk verrichting"
#: templates/quick_transactions/fragments/list.html:38
#, fuzzy
#| msgid "Yes, delete them!"
msgid "This will delete this item"
msgstr "Ja, verwijder ze!"
#: templates/recurring_transactions/fragments/add.html:5
msgid "Add recurring transaction"
msgstr "Voeg terugkerende verrichtingen toe"
@@ -3207,14 +3276,20 @@ msgstr "Geluiden afspelen"
msgid "Show amounts"
msgstr "Bedragen tonen"
#: templates/users/login.html:17
#: templates/users/login.html:18
msgid "Welcome to WYGIWYH's demo!"
msgstr "Welkom bij de demo van WYGIWYH!"
#: templates/users/login.html:18
#: templates/users/login.html:19
msgid "Use the credentials below to login"
msgstr "Gebruik de onderstaande gegevens om in te loggen"
#: templates/users/login.html:40
#, fuzzy
#| msgid "ends with"
msgid "Login with"
msgstr "eindigd op"
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
msgid "Yearly Overview"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: 2025-04-13 08:16+0000\n"
"Last-Translator: Herculino Trotta <netotrotta@gmail.com>\n"
"Language-Team: Portuguese <https://translations.herculino.com/projects/"
@@ -27,11 +27,12 @@ msgstr "Nome do grupo"
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr "Atualizar"
@@ -40,11 +41,12 @@ msgstr "Atualizar"
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -57,6 +59,7 @@ msgstr "Atualizar"
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -74,10 +77,11 @@ msgstr "Novo saldo"
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -87,11 +91,12 @@ msgstr "Categoria"
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -99,8 +104,8 @@ msgstr "Tags"
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -109,6 +114,7 @@ msgstr "Tags"
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -122,7 +128,7 @@ msgstr "Grupo da Conta"
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr "Grupos da Conta"
@@ -165,17 +171,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr "Conta"
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -463,8 +470,8 @@ msgstr "Sufixo"
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -486,8 +493,8 @@ msgstr "Casas Decimais"
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -517,7 +524,7 @@ msgstr "Data e Tempo"
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr "Taxas de Câmbio"
@@ -545,8 +552,8 @@ msgstr "Nome do Serviço"
msgid "Service Type"
msgstr "Tipo de Serviço"
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -676,11 +683,11 @@ msgstr "Serviços marcados para execução com sucesso"
msgid "Create transaction"
msgstr "Criar transação"
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr "Conta de origem"
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr "Conta de destino"
@@ -705,7 +712,7 @@ msgstr "Conectar transação"
msgid "You must provide an account."
msgstr "Você deve informar uma conta."
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr "As contas De e Para devem ser diferentes."
@@ -724,8 +731,9 @@ msgstr "Moeda de pagamento"
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr "Notas"
@@ -782,14 +790,14 @@ msgid "Entry deleted successfully"
msgstr "Entrada apagada com sucesso"
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr "Usuários"
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -798,30 +806,31 @@ msgstr "Transações"
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr "Categorias"
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr "Entidades"
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr "Transações Recorrentes"
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -830,16 +839,16 @@ msgstr "Parcelamentos"
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr "Taxas de Câmbio Automáticas"
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr "Regras"
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr "CMP"
@@ -874,7 +883,7 @@ msgstr "Ação de editar de transação"
msgid "Update or create transaction actions"
msgstr "Ações de atualizar ou criar transação"
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -906,7 +915,7 @@ msgstr "Selecione um arquivo"
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr "Importar"
@@ -1060,48 +1069,52 @@ msgid "Operator"
msgstr "Operador"
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr "Tipo"
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr "Pago"
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr "Data de Referência"
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr "Quantia"
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr "Descrição"
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr "Nota Interna"
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr "ID Interna"
@@ -1229,8 +1242,8 @@ msgstr "Ação Atualizar ou Criar Transação atualizada com sucesso"
msgid "Update or Create Transaction action deleted successfully"
msgstr "Ação Atualizar ou Criar Transação apagada com sucesso"
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1265,56 +1278,57 @@ msgstr "Quantia miníma"
msgid "Amount max"
msgstr "Quantia máxima"
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr "Mais"
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr ""
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr ""
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr "Quantia de origem"
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr "Quantia de destino"
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr "Transferir"
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr "Nome da Tag"
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr "Nome da entidade"
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr "Nome da Categoria"
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr "As categorias silenciadas não serão contabilizadas em seu total mensal"
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr "Data final deve ser após data inicial"
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr "Silenciada"
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
@@ -1322,25 +1336,25 @@ msgstr ""
"As categorias desativadas não poderão ser selecionadas ao criar novas "
"transações"
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr "Categoria da Transação"
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr "Categorias da Trasanção"
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
"As tags desativadas não poderão ser selecionadas ao criar novas transações"
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr "Tags da Transação"
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
@@ -1348,153 +1362,169 @@ msgstr ""
"As entidades desativadas não poderão ser selecionadas ao criar novas "
"transações"
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr "Entidade"
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr "Renda"
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr "Despesa"
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr "Parcelamento"
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr "Transação Recorrente"
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr "Apagado"
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr "Apagado Em"
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
msgid "Transaction"
msgstr "Transação"
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr "Nenhuma tag"
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr "Sem categoria"
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr "Sem descrição"
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr "Anual"
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr "Mensal"
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr "Semanal"
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr "Diária"
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr "Número de Parcelas"
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr "Parcela inicial"
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr "O número da parcela a partir do qual se inicia a contagem"
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr "Data de Início"
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr "Data Final"
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr "Recorrência"
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr "Valor da Parcela"
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr "Adicionar descrição às transações"
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr "Adicionar notas às transações"
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr "dia(s)"
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr "semana(s)"
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr "mês(es)"
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr "ano(s)"
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr "Pausado"
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr "Tipo de recorrência"
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr "Intervalo de recorrência"
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr "Última data gerada"
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr "Última data de referência gerada"
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
#, fuzzy
#| msgid "Edit Transaction"
msgid "Quick Transaction"
msgstr "Editar Transação"
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
#, fuzzy
#| msgid "Transactions"
msgid "Quick Transactions"
msgstr "Transações"
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1580,6 +1610,30 @@ msgstr "Parcelamento atualizado com sucesso"
msgid "Installment Plan deleted successfully"
msgstr "Parcelamento apagado com sucesso"
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
#, fuzzy
#| msgid "Rule added successfully"
msgid "Item added successfully"
msgstr "Regra adicionada com sucesso"
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
#, fuzzy
#| msgid "Rule updated successfully"
msgid "Item updated successfully"
msgstr "Regra atualizada com sucesso"
#: apps/transactions/views/quick_transactions.py:99
#, fuzzy
#| msgid "Rule deleted successfully"
msgid "Item deleted successfully"
msgstr "Regra apagada com sucesso"
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Transação adicionada com sucesso"
#: apps/transactions/views/recurring_transactions.py:112
msgid "Recurring Transaction added successfully"
msgstr "Transação Recorrente adicionada com sucesso"
@@ -1616,11 +1670,6 @@ msgstr "Tag atualizada com sucesso"
msgid "Tag deleted successfully"
msgstr "Tag apagada com sucesso"
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Transação adicionada com sucesso"
#: apps/transactions/views/transactions.py:182
msgid "Transaction updated successfully"
msgstr "Transação atualizada com sucesso"
@@ -1668,11 +1717,11 @@ msgstr "Permissões"
msgid "Important dates"
msgstr "Datas importantes"
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
msgid "E-mail"
msgstr "E-mail"
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
msgid "Password"
msgstr "Senha"
@@ -1833,18 +1882,6 @@ msgstr "Os sons agora serão reproduzidos"
msgid "Your settings have been updated"
msgstr "Suas configurações foram atualizadas"
#: apps/users/views.py:152
#, fuzzy
#| msgid "Rule added successfully"
msgid "Item added successfully"
msgstr "Regra adicionada com sucesso"
#: apps/users/views.py:184
#, fuzzy
#| msgid "Rule updated successfully"
msgid "Item updated successfully"
msgstr "Regra atualizada com sucesso"
#: templates/account_groups/fragments/add.html:5
msgid "Add account group"
msgstr "Adicionar grupo de conta"
@@ -1864,6 +1901,7 @@ msgstr "Editar grupo de conta"
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1874,7 +1912,7 @@ msgstr "Ações"
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1885,6 +1923,7 @@ msgstr "Ações"
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1897,8 +1936,8 @@ msgstr "Editar"
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1912,6 +1951,7 @@ msgstr "Editar"
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1923,8 +1963,8 @@ msgstr "Apagar"
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1938,6 +1978,7 @@ msgstr "Apagar"
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -1952,8 +1993,8 @@ msgstr "Tem certeza?"
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -1974,8 +2015,8 @@ msgstr "Você não será capaz de reverter isso!"
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -1986,6 +2027,7 @@ msgstr "Você não será capaz de reverter isso!"
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2135,7 +2177,7 @@ msgstr "Buscar"
msgid "Select"
msgstr "Selecionar"
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
msgid "Duplicate"
msgstr "Duplicar"
@@ -2244,14 +2286,17 @@ msgid "Count"
msgstr "Contagem"
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
msgid "Installment"
msgstr "Parcelamento"
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
msgid "Recurring"
msgstr "Recorrência"
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
msgid "Balance"
msgstr "Balancear"
@@ -2418,8 +2463,8 @@ msgstr "Editar taxa de câmbio"
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
msgid "All"
msgstr "Todas"
@@ -2472,7 +2517,7 @@ msgstr "contas"
msgid "No services configured"
msgstr "Nenhum serviço configurado"
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
msgid "Export and Restore"
msgstr "Exportar e Restaurar"
@@ -2587,47 +2632,47 @@ msgstr "Insights"
msgid "Trash Can"
msgstr "Lixeira"
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
msgid "Tools"
msgstr "Ferramentas"
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
msgid "Dollar Cost Average Tracker"
msgstr "Rastreador de Custo Médio Ponderado"
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
msgid "Unit Price Calculator"
msgstr "Calculadora de preço unitário"
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
msgid "Currency Converter"
msgstr "Conversor de Moeda"
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
msgid "Management"
msgstr "Gerenciar"
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
msgid "Automation"
msgstr "Automação"
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr ""
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
msgid "Only use this if you know what you're doing"
msgstr "Só use isso se você souber o que está fazendo"
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
msgid "Django Admin"
msgstr "Django Admin"
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
msgid "Calculator"
msgstr "Calculadora"
@@ -2779,8 +2824,8 @@ msgid "Month"
msgstr "Mês"
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
msgid "Year"
msgstr "Ano"
@@ -2975,6 +3020,30 @@ msgstr "Evolução por moeda"
msgid "Evolution by account"
msgstr "Evolução por conta"
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
#, fuzzy
#| msgid "Add recurring transaction"
msgid "Add quick transaction"
msgstr "Adicionar transação recorrente"
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
#, fuzzy
#| msgid "Edit transaction"
msgid "Edit quick transaction"
msgstr "Editar transação"
#: templates/quick_transactions/fragments/list.html:38
#, fuzzy
#| msgid "Yes, delete them!"
msgid "This will delete this item"
msgstr "Sim, apague!"
#: templates/recurring_transactions/fragments/add.html:5
msgid "Add recurring transaction"
msgstr "Adicionar transação recorrente"
@@ -3215,14 +3284,20 @@ msgstr "Reproduzir sons"
msgid "Show amounts"
msgstr "Mostrar valores"
#: templates/users/login.html:17
#: templates/users/login.html:18
msgid "Welcome to WYGIWYH's demo!"
msgstr "Boas-vindas à demonstração do WYGIWYH!"
#: templates/users/login.html:18
#: templates/users/login.html:19
msgid "Use the credentials below to login"
msgstr "Use as credenciais abaixo para fazer login"
#: templates/users/login.html:40
#, fuzzy
#| msgid "ends with"
msgid "Login with"
msgstr "termina em"
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
msgid "Yearly Overview"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: 2025-04-27 20:17+0000\n"
"Last-Translator: Herculino Trotta <netotrotta@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://translations.herculino.com/"
@@ -27,11 +27,12 @@ msgstr "Nome do grupo"
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr "Atualizar"
@@ -40,11 +41,12 @@ msgstr "Atualizar"
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -57,6 +59,7 @@ msgstr "Atualizar"
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -74,10 +77,11 @@ msgstr "Novo saldo"
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -87,11 +91,12 @@ msgstr "Categoria"
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -99,8 +104,8 @@ msgstr "Tags"
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -109,6 +114,7 @@ msgstr "Tags"
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -122,7 +128,7 @@ msgstr "Grupo da Conta"
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr "Grupos da Conta"
@@ -165,17 +171,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr "Conta"
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -463,8 +470,8 @@ msgstr "Sufixo"
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -486,8 +493,8 @@ msgstr "Casas Decimais"
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -517,7 +524,7 @@ msgstr "Data e Tempo"
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr "Taxas de Câmbio"
@@ -545,8 +552,8 @@ msgstr "Nome do Serviço"
msgid "Service Type"
msgstr "Tipo de Serviço"
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -676,11 +683,11 @@ msgstr "Serviços marcados para execução com sucesso"
msgid "Create transaction"
msgstr "Criar transação"
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr "Conta de origem"
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr "Conta de destino"
@@ -705,7 +712,7 @@ msgstr "Conectar transação"
msgid "You must provide an account."
msgstr "Você deve informar uma conta."
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr "As contas De e Para devem ser diferentes."
@@ -724,8 +731,9 @@ msgstr "Moeda de pagamento"
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr "Notas"
@@ -782,14 +790,14 @@ msgid "Entry deleted successfully"
msgstr "Entrada apagada com sucesso"
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr "Usuários"
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -798,30 +806,31 @@ msgstr "Transações"
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr "Categorias"
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr "Entidades"
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr "Transações Recorrentes"
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -830,16 +839,16 @@ msgstr "Parcelamentos"
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr "Taxas de Câmbio Automáticas"
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr "Regras"
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr "CMP"
@@ -874,7 +883,7 @@ msgstr "Ação de editar de transação"
msgid "Update or create transaction actions"
msgstr "Ações de atualizar ou criar transação"
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -906,7 +915,7 @@ msgstr "Selecione um arquivo"
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr "Importar"
@@ -1060,48 +1069,52 @@ msgid "Operator"
msgstr "Operador"
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr "Tipo"
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr "Pago"
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr "Data de Referência"
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr "Quantia"
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr "Descrição"
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr "Nota Interna"
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr "ID Interna"
@@ -1229,8 +1242,8 @@ msgstr "Ação Atualizar ou Criar Transação atualizada com sucesso"
msgid "Update or Create Transaction action deleted successfully"
msgstr "Ação Atualizar ou Criar Transação apagada com sucesso"
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1265,56 +1278,57 @@ msgstr "Quantia miníma"
msgid "Amount max"
msgstr "Quantia máxima"
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr "Mais"
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr "Salvar e adicionar similar"
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr "Salvar e adicionar outra"
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr "Quantia de origem"
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr "Quantia de destino"
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr "Transferir"
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr "Nome da Tag"
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr "Nome da entidade"
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr "Nome da Categoria"
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr "As categorias silenciadas não serão contabilizadas em seu total mensal"
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr "Data final deve ser após data inicial"
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr "Silenciada"
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
@@ -1322,25 +1336,25 @@ msgstr ""
"As categorias desativadas não poderão ser selecionadas ao criar novas "
"transações"
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr "Categoria da Transação"
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr "Categorias da Trasanção"
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
"As tags desativadas não poderão ser selecionadas ao criar novas transações"
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr "Tags da Transação"
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
@@ -1348,153 +1362,169 @@ msgstr ""
"As entidades desativadas não poderão ser selecionadas ao criar novas "
"transações"
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr "Entidade"
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr "Renda"
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr "Despesa"
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr "Parcelamento"
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr "Transação Recorrente"
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr "Apagado"
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr "Apagado Em"
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
msgid "Transaction"
msgstr "Transação"
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr "Nenhuma tag"
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr "Sem categoria"
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr "Sem descrição"
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr "Anual"
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr "Mensal"
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr "Semanal"
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr "Diária"
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr "Número de Parcelas"
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr "Parcela inicial"
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr "O número da parcela a partir do qual se inicia a contagem"
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr "Data de Início"
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr "Data Final"
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr "Recorrência"
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr "Valor da Parcela"
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr "Adicionar descrição às transações"
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr "Adicionar notas às transações"
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr "dia(s)"
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr "semana(s)"
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr "mês(es)"
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr "ano(s)"
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr "Pausado"
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr "Tipo de recorrência"
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr "Intervalo de recorrência"
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr "Última data gerada"
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr "Última data de referência gerada"
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
#, fuzzy
#| msgid "Edit Transaction"
msgid "Quick Transaction"
msgstr "Editar Transação"
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
#, fuzzy
#| msgid "Transactions"
msgid "Quick Transactions"
msgstr "Transações"
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1580,6 +1610,26 @@ msgstr "Parcelamento atualizado com sucesso"
msgid "Installment Plan deleted successfully"
msgstr "Parcelamento apagado com sucesso"
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
msgid "Item added successfully"
msgstr "Item adicionado com sucesso"
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
msgid "Item updated successfully"
msgstr "Item atualizado com sucesso"
#: apps/transactions/views/quick_transactions.py:99
#, fuzzy
#| msgid "Rule deleted successfully"
msgid "Item deleted successfully"
msgstr "Regra apagada com sucesso"
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Transação adicionada com sucesso"
#: apps/transactions/views/recurring_transactions.py:112
msgid "Recurring Transaction added successfully"
msgstr "Transação Recorrente adicionada com sucesso"
@@ -1616,11 +1666,6 @@ msgstr "Tag atualizada com sucesso"
msgid "Tag deleted successfully"
msgstr "Tag apagada com sucesso"
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr "Transação adicionada com sucesso"
#: apps/transactions/views/transactions.py:182
msgid "Transaction updated successfully"
msgstr "Transação atualizada com sucesso"
@@ -1668,11 +1713,11 @@ msgstr "Permissões"
msgid "Important dates"
msgstr "Datas importantes"
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
msgid "E-mail"
msgstr "E-mail"
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
msgid "Password"
msgstr "Senha"
@@ -1835,14 +1880,6 @@ msgstr "Os sons agora serão reproduzidos"
msgid "Your settings have been updated"
msgstr "Suas configurações foram atualizadas"
#: apps/users/views.py:152
msgid "Item added successfully"
msgstr "Item adicionado com sucesso"
#: apps/users/views.py:184
msgid "Item updated successfully"
msgstr "Item atualizado com sucesso"
#: templates/account_groups/fragments/add.html:5
msgid "Add account group"
msgstr "Adicionar grupo de conta"
@@ -1862,6 +1899,7 @@ msgstr "Editar grupo de conta"
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1872,7 +1910,7 @@ msgstr "Ações"
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1883,6 +1921,7 @@ msgstr "Ações"
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1895,8 +1934,8 @@ msgstr "Editar"
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1910,6 +1949,7 @@ msgstr "Editar"
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1921,8 +1961,8 @@ msgstr "Apagar"
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1936,6 +1976,7 @@ msgstr "Apagar"
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -1950,8 +1991,8 @@ msgstr "Tem certeza?"
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -1972,8 +2013,8 @@ msgstr "Você não será capaz de reverter isso!"
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -1984,6 +2025,7 @@ msgstr "Você não será capaz de reverter isso!"
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2133,7 +2175,7 @@ msgstr "Buscar"
msgid "Select"
msgstr "Selecionar"
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
msgid "Duplicate"
msgstr "Duplicar"
@@ -2242,14 +2284,17 @@ msgid "Count"
msgstr "Contagem"
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
msgid "Installment"
msgstr "Parcelamento"
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
msgid "Recurring"
msgstr "Recorrência"
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
msgid "Balance"
msgstr "Balancear"
@@ -2416,8 +2461,8 @@ msgstr "Editar taxa de câmbio"
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
msgid "All"
msgstr "Todas"
@@ -2470,7 +2515,7 @@ msgstr "contas"
msgid "No services configured"
msgstr "Nenhum serviço configurado"
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
msgid "Export and Restore"
msgstr "Exportar e Restaurar"
@@ -2585,47 +2630,47 @@ msgstr "Insights"
msgid "Trash Can"
msgstr "Lixeira"
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
msgid "Tools"
msgstr "Ferramentas"
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
msgid "Dollar Cost Average Tracker"
msgstr "Rastreador de Custo Médio Ponderado"
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
msgid "Unit Price Calculator"
msgstr "Calculadora de preço unitário"
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
msgid "Currency Converter"
msgstr "Conversor de Moeda"
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
msgid "Management"
msgstr "Gerenciar"
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
msgid "Automation"
msgstr "Automação"
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr "Admin"
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
msgid "Only use this if you know what you're doing"
msgstr "Só use isso se você souber o que está fazendo"
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
msgid "Django Admin"
msgstr "Django Admin"
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
msgid "Calculator"
msgstr "Calculadora"
@@ -2775,8 +2820,8 @@ msgid "Month"
msgstr "Mês"
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
msgid "Year"
msgstr "Ano"
@@ -2971,6 +3016,30 @@ msgstr "Evolução por moeda"
msgid "Evolution by account"
msgstr "Evolução por conta"
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
#, fuzzy
#| msgid "Add recurring transaction"
msgid "Add quick transaction"
msgstr "Adicionar transação recorrente"
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
#, fuzzy
#| msgid "Edit transaction"
msgid "Edit quick transaction"
msgstr "Editar transação"
#: templates/quick_transactions/fragments/list.html:38
#, fuzzy
#| msgid "Yes, delete them!"
msgid "This will delete this item"
msgstr "Sim, apague!"
#: templates/recurring_transactions/fragments/add.html:5
msgid "Add recurring transaction"
msgstr "Adicionar transação recorrente"
@@ -3203,14 +3272,20 @@ msgstr "Reproduzir sons"
msgid "Show amounts"
msgstr "Mostrar valores"
#: templates/users/login.html:17
#: templates/users/login.html:18
msgid "Welcome to WYGIWYH's demo!"
msgstr "Boas-vindas à demonstração do WYGIWYH!"
#: templates/users/login.html:18
#: templates/users/login.html:19
msgid "Use the credentials below to login"
msgstr "Use as credenciais abaixo para fazer login"
#: templates/users/login.html:40
#, fuzzy
#| msgid "ends with"
msgid "Login with"
msgstr "termina em"
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
msgid "Yearly Overview"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-11 15:47+0000\n"
"POT-Creation-Date: 2025-06-20 05:07+0000\n"
"PO-Revision-Date: 2025-04-14 06:16+0000\n"
"Last-Translator: Emil <emil.bjorkroth@gmail.com>\n"
"Language-Team: Swedish <https://translations.herculino.com/projects/wygiwyh/"
@@ -27,11 +27,12 @@ msgstr ""
#: apps/currencies/forms.py:53 apps/currencies/forms.py:91
#: apps/currencies/forms.py:142 apps/dca/forms.py:49 apps/dca/forms.py:224
#: apps/import_app/forms.py:34 apps/rules/forms.py:51 apps/rules/forms.py:93
#: apps/rules/forms.py:365 apps/transactions/forms.py:203
#: apps/transactions/forms.py:281 apps/transactions/forms.py:641
#: apps/transactions/forms.py:684 apps/transactions/forms.py:716
#: apps/transactions/forms.py:751 apps/transactions/forms.py:903
#: apps/users/forms.py:210 apps/users/forms.py:372
#: apps/rules/forms.py:365 apps/transactions/forms.py:204
#: apps/transactions/forms.py:369 apps/transactions/forms.py:416
#: apps/transactions/forms.py:776 apps/transactions/forms.py:819
#: apps/transactions/forms.py:851 apps/transactions/forms.py:886
#: apps/transactions/forms.py:1038 apps/users/forms.py:210
#: apps/users/forms.py:372
msgid "Update"
msgstr "Uppdatera"
@@ -40,11 +41,12 @@ msgstr "Uppdatera"
#: apps/currencies/forms.py:99 apps/currencies/forms.py:150
#: apps/dca/forms.py:57 apps/dca/forms.py:232 apps/import_app/forms.py:42
#: apps/rules/forms.py:59 apps/rules/forms.py:101 apps/rules/forms.py:373
#: apps/transactions/forms.py:188 apps/transactions/forms.py:212
#: apps/transactions/forms.py:649 apps/transactions/forms.py:692
#: apps/transactions/forms.py:724 apps/transactions/forms.py:759
#: apps/transactions/forms.py:911 apps/users/forms.py:218
#: apps/users/forms.py:380 templates/account_groups/fragments/list.html:9
#: apps/transactions/forms.py:189 apps/transactions/forms.py:213
#: apps/transactions/forms.py:378 apps/transactions/forms.py:784
#: apps/transactions/forms.py:827 apps/transactions/forms.py:859
#: apps/transactions/forms.py:894 apps/transactions/forms.py:1046
#: apps/users/forms.py:218 apps/users/forms.py:380
#: templates/account_groups/fragments/list.html:9
#: templates/accounts/fragments/list.html:9
#: templates/categories/fragments/list.html:9
#: templates/currencies/fragments/list.html:9
@@ -57,6 +59,7 @@ msgstr "Uppdatera"
#: templates/import_app/fragments/profiles/list.html:10
#: templates/installment_plans/fragments/list.html:9
#: templates/mini_tools/unit_price_calculator.html:162
#: templates/quick_transactions/pages/index.html:15
#: templates/recurring_transactions/fragments/list.html:9
#: templates/rules/fragments/list.html:9 templates/tags/fragments/list.html:9
#: templates/users/fragments/list.html:10
@@ -74,10 +77,11 @@ msgstr ""
#: apps/accounts/forms.py:121 apps/dca/forms.py:85 apps/dca/forms.py:92
#: apps/insights/forms.py:118 apps/rules/forms.py:174 apps/rules/forms.py:189
#: apps/rules/models.py:38 apps/rules/models.py:286
#: apps/transactions/forms.py:41 apps/transactions/forms.py:315
#: apps/transactions/forms.py:322 apps/transactions/forms.py:522
#: apps/transactions/forms.py:783 apps/transactions/models.py:312
#: apps/transactions/models.py:495 apps/transactions/models.py:695
#: apps/transactions/forms.py:42 apps/transactions/forms.py:256
#: apps/transactions/forms.py:450 apps/transactions/forms.py:457
#: apps/transactions/forms.py:657 apps/transactions/forms.py:918
#: apps/transactions/models.py:317 apps/transactions/models.py:500
#: apps/transactions/models.py:700 apps/transactions/models.py:936
#: templates/insights/fragments/category_overview/index.html:63
#: templates/insights/fragments/category_overview/index.html:420
msgid "Category"
@@ -87,11 +91,12 @@ msgstr ""
#: apps/export_app/forms.py:44 apps/export_app/forms.py:135
#: apps/rules/forms.py:177 apps/rules/forms.py:186 apps/rules/models.py:39
#: apps/rules/models.py:290 apps/transactions/filters.py:74
#: apps/transactions/forms.py:49 apps/transactions/forms.py:331
#: apps/transactions/forms.py:339 apps/transactions/forms.py:515
#: apps/transactions/forms.py:776 apps/transactions/models.py:318
#: apps/transactions/models.py:497 apps/transactions/models.py:699
#: templates/includes/navbar.html:108
#: apps/transactions/forms.py:50 apps/transactions/forms.py:264
#: apps/transactions/forms.py:466 apps/transactions/forms.py:474
#: apps/transactions/forms.py:650 apps/transactions/forms.py:911
#: apps/transactions/models.py:323 apps/transactions/models.py:502
#: apps/transactions/models.py:704 apps/transactions/models.py:942
#: templates/includes/navbar.html:110
#: templates/insights/fragments/category_overview/index.html:35
#: templates/tags/fragments/list.html:5 templates/tags/pages/index.html:4
msgid "Tags"
@@ -99,8 +104,8 @@ msgstr ""
#: apps/accounts/models.py:12 apps/accounts/models.py:29 apps/dca/models.py:13
#: apps/import_app/models.py:14 apps/rules/models.py:13
#: apps/transactions/models.py:205 apps/transactions/models.py:230
#: apps/transactions/models.py:254
#: apps/transactions/models.py:210 apps/transactions/models.py:235
#: apps/transactions/models.py:259 apps/transactions/models.py:905
#: templates/account_groups/fragments/list.html:25
#: templates/accounts/fragments/list.html:25
#: templates/categories/fragments/table.html:16
@@ -109,6 +114,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/list.html:32
#: templates/import_app/fragments/profiles/list.html:36
#: templates/installment_plans/fragments/table.html:16
#: templates/quick_transactions/fragments/list.html:13
#: templates/recurring_transactions/fragments/table.html:18
#: templates/rules/fragments/list.html:26
#: templates/tags/fragments/table.html:16
@@ -122,7 +128,7 @@ msgstr ""
#: apps/accounts/models.py:19 templates/account_groups/fragments/list.html:5
#: templates/account_groups/pages/index.html:4
#: templates/includes/navbar.html:118
#: templates/includes/navbar.html:120
msgid "Account Groups"
msgstr ""
@@ -162,17 +168,18 @@ msgstr ""
#: apps/accounts/models.py:70 apps/rules/forms.py:166 apps/rules/forms.py:179
#: apps/rules/models.py:30 apps/rules/models.py:242
#: apps/transactions/forms.py:61 apps/transactions/forms.py:507
#: apps/transactions/forms.py:768 apps/transactions/models.py:285
#: apps/transactions/models.py:455 apps/transactions/models.py:677
#: apps/transactions/forms.py:62 apps/transactions/forms.py:276
#: apps/transactions/forms.py:642 apps/transactions/forms.py:903
#: apps/transactions/models.py:290 apps/transactions/models.py:460
#: apps/transactions/models.py:682 apps/transactions/models.py:911
msgid "Account"
msgstr ""
#: apps/accounts/models.py:71 apps/export_app/forms.py:20
#: apps/export_app/forms.py:132 apps/transactions/filters.py:53
#: templates/accounts/fragments/list.html:5
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:114
#: templates/includes/navbar.html:116
#: templates/accounts/pages/index.html:4 templates/includes/navbar.html:116
#: templates/includes/navbar.html:118
#: templates/monthly_overview/pages/overview.html:94
#: templates/transactions/fragments/summary.html:12
#: templates/transactions/pages/transactions.html:72
@@ -455,8 +462,8 @@ msgstr ""
#: apps/currencies/forms.py:69 apps/dca/models.py:158 apps/rules/forms.py:169
#: apps/rules/forms.py:182 apps/rules/models.py:33 apps/rules/models.py:254
#: apps/transactions/forms.py:65 apps/transactions/forms.py:343
#: apps/transactions/models.py:295
#: apps/transactions/forms.py:66 apps/transactions/forms.py:478
#: apps/transactions/models.py:300
#: templates/dca/fragments/strategy/details.html:52
#: templates/exchange_rates/fragments/table.html:10
#: templates/exchange_rates_services/fragments/table.html:10
@@ -478,8 +485,8 @@ msgstr ""
#: apps/currencies/models.py:40 apps/export_app/forms.py:26
#: apps/export_app/forms.py:133 apps/transactions/filters.py:60
#: templates/currencies/fragments/list.html:5
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:122
#: templates/includes/navbar.html:124
#: templates/currencies/pages/index.html:4 templates/includes/navbar.html:124
#: templates/includes/navbar.html:126
#: templates/monthly_overview/pages/overview.html:81
#: templates/transactions/fragments/summary.html:8
#: templates/transactions/pages/transactions.html:59
@@ -509,7 +516,7 @@ msgstr ""
#: apps/currencies/models.py:75 apps/export_app/forms.py:68
#: apps/export_app/forms.py:145 templates/exchange_rates/fragments/list.html:6
#: templates/exchange_rates/pages/index.html:4
#: templates/includes/navbar.html:126
#: templates/includes/navbar.html:128
msgid "Exchange Rates"
msgstr ""
@@ -537,8 +544,8 @@ msgstr ""
msgid "Service Type"
msgstr ""
#: apps/currencies/models.py:110 apps/transactions/models.py:209
#: apps/transactions/models.py:233 apps/transactions/models.py:257
#: apps/currencies/models.py:110 apps/transactions/models.py:214
#: apps/transactions/models.py:238 apps/transactions/models.py:262
#: templates/categories/fragments/list.html:21
#: templates/entities/fragments/list.html:21
#: templates/recurring_transactions/fragments/list.html:21
@@ -658,11 +665,11 @@ msgstr ""
msgid "Create transaction"
msgstr ""
#: apps/dca/forms.py:70 apps/transactions/forms.py:290
#: apps/dca/forms.py:70 apps/transactions/forms.py:425
msgid "From Account"
msgstr ""
#: apps/dca/forms.py:76 apps/transactions/forms.py:295
#: apps/dca/forms.py:76 apps/transactions/forms.py:430
msgid "To Account"
msgstr ""
@@ -687,7 +694,7 @@ msgstr ""
msgid "You must provide an account."
msgstr ""
#: apps/dca/forms.py:312 apps/transactions/forms.py:457
#: apps/dca/forms.py:312 apps/transactions/forms.py:592
msgid "From and To accounts must be different."
msgstr ""
@@ -706,8 +713,9 @@ msgstr ""
#: apps/dca/models.py:26 apps/dca/models.py:181 apps/rules/forms.py:173
#: apps/rules/forms.py:188 apps/rules/models.py:37 apps/rules/models.py:270
#: apps/transactions/forms.py:359 apps/transactions/models.py:308
#: apps/transactions/models.py:504 apps/transactions/models.py:705
#: apps/transactions/forms.py:494 apps/transactions/models.py:313
#: apps/transactions/models.py:509 apps/transactions/models.py:710
#: apps/transactions/models.py:932
msgid "Notes"
msgstr ""
@@ -764,14 +772,14 @@ msgid "Entry deleted successfully"
msgstr ""
#: apps/export_app/forms.py:14 apps/export_app/forms.py:131
#: templates/includes/navbar.html:147 templates/users/fragments/list.html:6
#: templates/includes/navbar.html:149 templates/users/fragments/list.html:6
#: templates/users/pages/index.html:4
msgid "Users"
msgstr ""
#: apps/export_app/forms.py:32 apps/export_app/forms.py:137
#: apps/transactions/models.py:369 templates/includes/navbar.html:57
#: templates/includes/navbar.html:104
#: apps/transactions/models.py:374 templates/includes/navbar.html:57
#: templates/includes/navbar.html:106
#: templates/recurring_transactions/fragments/list_transactions.html:5
#: templates/recurring_transactions/fragments/table.html:37
#: templates/transactions/pages/transactions.html:5
@@ -780,30 +788,31 @@ msgstr ""
#: apps/export_app/forms.py:38 apps/export_app/forms.py:134
#: apps/transactions/filters.py:67 templates/categories/fragments/list.html:5
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:106
#: templates/categories/pages/index.html:4 templates/includes/navbar.html:108
msgid "Categories"
msgstr ""
#: apps/export_app/forms.py:50 apps/export_app/forms.py:136
#: apps/rules/forms.py:178 apps/rules/forms.py:187 apps/rules/models.py:40
#: apps/rules/models.py:282 apps/transactions/filters.py:81
#: apps/transactions/forms.py:57 apps/transactions/forms.py:530
#: apps/transactions/forms.py:791 apps/transactions/models.py:268
#: apps/transactions/models.py:323 apps/transactions/models.py:500
#: apps/transactions/models.py:702 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:110
#: apps/transactions/forms.py:58 apps/transactions/forms.py:272
#: apps/transactions/forms.py:665 apps/transactions/forms.py:926
#: apps/transactions/models.py:273 apps/transactions/models.py:328
#: apps/transactions/models.py:505 apps/transactions/models.py:707
#: apps/transactions/models.py:947 templates/entities/fragments/list.html:5
#: templates/entities/pages/index.html:4 templates/includes/navbar.html:112
msgid "Entities"
msgstr ""
#: apps/export_app/forms.py:56 apps/export_app/forms.py:140
#: apps/transactions/models.py:739 templates/includes/navbar.html:74
#: apps/transactions/models.py:744 templates/includes/navbar.html:76
#: templates/recurring_transactions/fragments/list.html:5
#: templates/recurring_transactions/pages/index.html:4
msgid "Recurring Transactions"
msgstr ""
#: apps/export_app/forms.py:62 apps/export_app/forms.py:138
#: apps/transactions/models.py:518 templates/includes/navbar.html:72
#: apps/transactions/models.py:523 templates/includes/navbar.html:74
#: templates/installment_plans/fragments/list.html:5
#: templates/installment_plans/pages/index.html:4
msgid "Installment Plans"
@@ -812,16 +821,16 @@ msgstr ""
#: apps/export_app/forms.py:74 apps/export_app/forms.py:143
#: templates/exchange_rates_services/fragments/list.html:6
#: templates/exchange_rates_services/pages/index.html:4
#: templates/includes/navbar.html:140
#: templates/includes/navbar.html:142
msgid "Automatic Exchange Rates"
msgstr ""
#: apps/export_app/forms.py:80 templates/includes/navbar.html:132
#: apps/export_app/forms.py:80 templates/includes/navbar.html:134
#: templates/rules/fragments/list.html:5 templates/rules/pages/index.html:4
msgid "Rules"
msgstr ""
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:56
#: apps/export_app/forms.py:86 templates/cotton/transaction/item.html:57
msgid "DCA"
msgstr ""
@@ -856,7 +865,7 @@ msgstr ""
msgid "Update or create transaction actions"
msgstr ""
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:158
#: apps/export_app/forms.py:185 templates/cotton/transaction/item.html:159
#: templates/cotton/ui/deleted_transactions_action_bar.html:47
#: templates/export_app/fragments/restore.html:5
#: templates/export_app/pages/index.html:24
@@ -886,7 +895,7 @@ msgstr ""
#: apps/import_app/forms.py:61
#: templates/import_app/fragments/profiles/list.html:62
#: templates/includes/navbar.html:134
#: templates/includes/navbar.html:136
msgid "Import"
msgstr ""
@@ -1040,48 +1049,52 @@ msgid "Operator"
msgstr ""
#: apps/rules/forms.py:167 apps/rules/forms.py:180 apps/rules/models.py:31
#: apps/rules/models.py:246 apps/transactions/models.py:292
#: apps/transactions/models.py:460 apps/transactions/models.py:683
#: apps/rules/models.py:246 apps/transactions/models.py:297
#: apps/transactions/models.py:465 apps/transactions/models.py:688
#: apps/transactions/models.py:918
msgid "Type"
msgstr ""
#: apps/rules/forms.py:168 apps/rules/forms.py:181 apps/rules/models.py:32
#: apps/rules/models.py:250 apps/transactions/filters.py:23
#: apps/transactions/models.py:294 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31
#: apps/transactions/models.py:299 apps/transactions/models.py:920
#: templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32
#: templates/transactions/widgets/paid_toggle_button.html:12
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:16
msgid "Paid"
msgstr ""
#: apps/rules/forms.py:170 apps/rules/forms.py:183 apps/rules/models.py:34
#: apps/rules/models.py:258 apps/transactions/forms.py:69
#: apps/transactions/forms.py:346 apps/transactions/forms.py:536
#: apps/transactions/models.py:296 apps/transactions/models.py:478
#: apps/transactions/models.py:707
#: apps/rules/models.py:258 apps/transactions/forms.py:70
#: apps/transactions/forms.py:481 apps/transactions/forms.py:671
#: apps/transactions/models.py:301 apps/transactions/models.py:483
#: apps/transactions/models.py:712
msgid "Reference Date"
msgstr ""
#: apps/rules/forms.py:171 apps/rules/forms.py:184 apps/rules/models.py:35
#: apps/rules/models.py:262 apps/transactions/models.py:301
#: apps/transactions/models.py:688 templates/insights/fragments/sankey.html:95
#: apps/rules/models.py:262 apps/transactions/models.py:306
#: apps/transactions/models.py:693 apps/transactions/models.py:925
#: templates/insights/fragments/sankey.html:95
msgid "Amount"
msgstr ""
#: apps/rules/forms.py:172 apps/rules/forms.py:185 apps/rules/models.py:14
#: apps/rules/models.py:36 apps/rules/models.py:266
#: apps/transactions/forms.py:350 apps/transactions/models.py:306
#: apps/transactions/models.py:462 apps/transactions/models.py:691
#: apps/transactions/forms.py:485 apps/transactions/models.py:311
#: apps/transactions/models.py:467 apps/transactions/models.py:696
#: apps/transactions/models.py:930
msgid "Description"
msgstr ""
#: apps/rules/forms.py:175 apps/rules/forms.py:190 apps/rules/models.py:274
#: apps/transactions/models.py:345
#: apps/transactions/models.py:350 apps/transactions/models.py:952
msgid "Internal Note"
msgstr ""
#: apps/rules/forms.py:176 apps/rules/forms.py:191 apps/rules/models.py:278
#: apps/transactions/models.py:347
#: apps/transactions/models.py:352 apps/transactions/models.py:954
msgid "Internal ID"
msgstr ""
@@ -1207,8 +1220,8 @@ msgstr ""
msgid "Update or Create Transaction action deleted successfully"
msgstr ""
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:21
#: templates/cotton/transaction/item.html:31 templates/includes/navbar.html:46
#: apps/transactions/filters.py:24 templates/cotton/transaction/item.html:22
#: templates/cotton/transaction/item.html:32 templates/includes/navbar.html:46
#: templates/insights/fragments/category_overview/index.html:46
#: templates/transactions/widgets/paid_toggle_button.html:8
#: templates/transactions/widgets/unselectable_paid_toggle_button.html:12
@@ -1243,231 +1256,244 @@ msgstr ""
msgid "Amount max"
msgstr ""
#: apps/transactions/forms.py:172
#: apps/transactions/forms.py:173
msgid "More"
msgstr ""
#: apps/transactions/forms.py:216
#: apps/transactions/forms.py:217
msgid "Save and add similar"
msgstr ""
#: apps/transactions/forms.py:221
#: apps/transactions/forms.py:222
msgid "Save and add another"
msgstr ""
#: apps/transactions/forms.py:302
#: apps/transactions/forms.py:437
msgid "From Amount"
msgstr ""
#: apps/transactions/forms.py:307
#: apps/transactions/forms.py:442
msgid "To Amount"
msgstr ""
#: apps/transactions/forms.py:424
#: apps/transactions/forms.py:559
#: templates/cotton/ui/quick_transactions_buttons.html:40
#: templates/cotton/ui/transactions_fab.html:44
msgid "Transfer"
msgstr ""
#: apps/transactions/forms.py:670
#: apps/transactions/forms.py:805
msgid "Tag name"
msgstr ""
#: apps/transactions/forms.py:702
#: apps/transactions/forms.py:837
msgid "Entity name"
msgstr ""
#: apps/transactions/forms.py:734
#: apps/transactions/forms.py:869
msgid "Category name"
msgstr ""
#: apps/transactions/forms.py:736
#: apps/transactions/forms.py:871
msgid "Muted categories won't count towards your monthly total"
msgstr ""
#: apps/transactions/forms.py:922
#: apps/transactions/forms.py:1057
msgid "End date should be after the start date"
msgstr ""
#: apps/transactions/models.py:206
#: apps/transactions/models.py:211
msgid "Mute"
msgstr ""
#: apps/transactions/models.py:211
#: apps/transactions/models.py:216
msgid ""
"Deactivated categories won't be able to be selected when creating new "
"transactions"
msgstr ""
#: apps/transactions/models.py:219
#: apps/transactions/models.py:224
msgid "Transaction Category"
msgstr ""
#: apps/transactions/models.py:220
#: apps/transactions/models.py:225
msgid "Transaction Categories"
msgstr ""
#: apps/transactions/models.py:235
#: apps/transactions/models.py:240
msgid ""
"Deactivated tags won't be able to be selected when creating new transactions"
msgstr ""
#: apps/transactions/models.py:243 apps/transactions/models.py:244
#: apps/transactions/models.py:248 apps/transactions/models.py:249
msgid "Transaction Tags"
msgstr ""
#: apps/transactions/models.py:259
#: apps/transactions/models.py:264
msgid ""
"Deactivated entities won't be able to be selected when creating new "
"transactions"
msgstr ""
#: apps/transactions/models.py:267
#: apps/transactions/models.py:272
msgid "Entity"
msgstr ""
#: apps/transactions/models.py:279
#: apps/transactions/models.py:284 apps/transactions/models.py:898
#: templates/calendar_view/fragments/list.html:42
#: templates/calendar_view/fragments/list.html:44
#: templates/calendar_view/fragments/list.html:52
#: templates/calendar_view/fragments/list.html:54
#: templates/cotton/ui/quick_transactions_buttons.html:10
#: templates/cotton/ui/transactions_fab.html:10
#: templates/insights/fragments/category_overview/index.html:64
#: templates/monthly_overview/fragments/monthly_summary.html:39
msgid "Income"
msgstr ""
#: apps/transactions/models.py:280
#: apps/transactions/models.py:285 apps/transactions/models.py:899
#: templates/calendar_view/fragments/list.html:46
#: templates/calendar_view/fragments/list.html:48
#: templates/calendar_view/fragments/list.html:56
#: templates/calendar_view/fragments/list.html:58
#: templates/cotton/ui/quick_transactions_buttons.html:18
#: templates/cotton/ui/transactions_fab.html:19
#: templates/insights/fragments/category_overview/index.html:65
msgid "Expense"
msgstr ""
#: apps/transactions/models.py:334 apps/transactions/models.py:517
#: apps/transactions/models.py:339 apps/transactions/models.py:522
msgid "Installment Plan"
msgstr ""
#: apps/transactions/models.py:343 apps/transactions/models.py:738
#: apps/transactions/models.py:348 apps/transactions/models.py:743
msgid "Recurring Transaction"
msgstr ""
#: apps/transactions/models.py:351
#: apps/transactions/models.py:356
msgid "Deleted"
msgstr ""
#: apps/transactions/models.py:356
#: apps/transactions/models.py:361
msgid "Deleted At"
msgstr ""
#: apps/transactions/models.py:368
#: apps/transactions/models.py:373
msgid "Transaction"
msgstr ""
#: apps/transactions/models.py:440 templates/tags/fragments/table.html:71
#: apps/transactions/models.py:445 templates/tags/fragments/table.html:71
msgid "No tags"
msgstr ""
#: apps/transactions/models.py:441
#: apps/transactions/models.py:446
msgid "No category"
msgstr ""
#: apps/transactions/models.py:443
#: apps/transactions/models.py:448
msgid "No description"
msgstr ""
#: apps/transactions/models.py:449
#: apps/transactions/models.py:454
msgid "Yearly"
msgstr ""
#: apps/transactions/models.py:450 apps/users/models.py:26
#: apps/transactions/models.py:455 apps/users/models.py:26
#: templates/includes/navbar.html:26
msgid "Monthly"
msgstr ""
#: apps/transactions/models.py:451
#: apps/transactions/models.py:456
msgid "Weekly"
msgstr ""
#: apps/transactions/models.py:452
#: apps/transactions/models.py:457
msgid "Daily"
msgstr ""
#: apps/transactions/models.py:465
#: apps/transactions/models.py:470
msgid "Number of Installments"
msgstr ""
#: apps/transactions/models.py:470
#: apps/transactions/models.py:475
msgid "Installment Start"
msgstr ""
#: apps/transactions/models.py:471
#: apps/transactions/models.py:476
msgid "The installment number to start counting from"
msgstr ""
#: apps/transactions/models.py:476 apps/transactions/models.py:711
#: apps/transactions/models.py:481 apps/transactions/models.py:716
msgid "Start Date"
msgstr ""
#: apps/transactions/models.py:480 apps/transactions/models.py:712
#: apps/transactions/models.py:485 apps/transactions/models.py:717
msgid "End Date"
msgstr ""
#: apps/transactions/models.py:485
#: apps/transactions/models.py:490
msgid "Recurrence"
msgstr ""
#: apps/transactions/models.py:488
#: apps/transactions/models.py:493
msgid "Installment Amount"
msgstr ""
#: apps/transactions/models.py:507 apps/transactions/models.py:728
#: apps/transactions/models.py:512 apps/transactions/models.py:733
msgid "Add description to transactions"
msgstr ""
#: apps/transactions/models.py:510 apps/transactions/models.py:731
#: apps/transactions/models.py:515 apps/transactions/models.py:736
msgid "Add notes to transactions"
msgstr ""
#: apps/transactions/models.py:670
#: apps/transactions/models.py:675
msgid "day(s)"
msgstr ""
#: apps/transactions/models.py:671
#: apps/transactions/models.py:676
msgid "week(s)"
msgstr ""
#: apps/transactions/models.py:672
#: apps/transactions/models.py:677
msgid "month(s)"
msgstr ""
#: apps/transactions/models.py:673
#: apps/transactions/models.py:678
msgid "year(s)"
msgstr ""
#: apps/transactions/models.py:675
#: apps/transactions/models.py:680
#: templates/recurring_transactions/fragments/list.html:24
msgid "Paused"
msgstr ""
#: apps/transactions/models.py:714
#: apps/transactions/models.py:719
msgid "Recurrence Type"
msgstr ""
#: apps/transactions/models.py:717
#: apps/transactions/models.py:722
msgid "Recurrence Interval"
msgstr ""
#: apps/transactions/models.py:721
#: apps/transactions/models.py:726
msgid "Last Generated Date"
msgstr ""
#: apps/transactions/models.py:724
#: apps/transactions/models.py:729
msgid "Last Generated Reference Date"
msgstr ""
#: apps/transactions/models.py:964 templates/cotton/ui/transactions_fab.html:59
msgid "Quick Transaction"
msgstr ""
#: apps/transactions/models.py:965 templates/includes/navbar.html:72
#: templates/quick_transactions/pages/index.html:5
#: templates/quick_transactions/pages/index.html:11
msgid "Quick Transactions"
msgstr ""
#: apps/transactions/validators.py:8
#, python-format
msgid "%(value)s has too many decimal places. Maximum is 30."
@@ -1553,6 +1579,24 @@ msgstr ""
msgid "Installment Plan deleted successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:45 apps/users/views.py:152
msgid "Item added successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:73 apps/users/views.py:184
msgid "Item updated successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:99
msgid "Item deleted successfully"
msgstr ""
#: apps/transactions/views/quick_transactions.py:145
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr ""
#: apps/transactions/views/recurring_transactions.py:112
msgid "Recurring Transaction added successfully"
msgstr ""
@@ -1589,11 +1633,6 @@ msgstr ""
msgid "Tag deleted successfully"
msgstr ""
#: apps/transactions/views/transactions.py:52
#: apps/transactions/views/transactions.py:148
msgid "Transaction added successfully"
msgstr ""
#: apps/transactions/views/transactions.py:182
msgid "Transaction updated successfully"
msgstr ""
@@ -1641,11 +1680,11 @@ msgstr ""
msgid "Important dates"
msgstr ""
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:19
#: apps/users/forms.py:23 apps/users/models.py:13 templates/users/login.html:20
msgid "E-mail"
msgstr ""
#: apps/users/forms.py:29 templates/users/login.html:20
#: apps/users/forms.py:29 templates/users/login.html:21
msgid "Password"
msgstr ""
@@ -1799,14 +1838,6 @@ msgstr ""
msgid "Your settings have been updated"
msgstr ""
#: apps/users/views.py:152
msgid "Item added successfully"
msgstr ""
#: apps/users/views.py:184
msgid "Item updated successfully"
msgstr ""
#: templates/account_groups/fragments/add.html:5
msgid "Add account group"
msgstr ""
@@ -1826,6 +1857,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/table.html:19
#: templates/import_app/fragments/profiles/list.html:44
#: templates/installment_plans/fragments/table.html:23
#: templates/quick_transactions/fragments/list.html:20
#: templates/recurring_transactions/fragments/table.html:25
#: templates/rules/fragments/list.html:33
#: templates/tags/fragments/table.html:23
@@ -1836,7 +1868,7 @@ msgstr ""
#: templates/account_groups/fragments/list.html:36
#: templates/accounts/fragments/list.html:41
#: templates/categories/fragments/table.html:29
#: templates/cotton/transaction/item.html:130
#: templates/cotton/transaction/item.html:131
#: templates/cotton/ui/transactions_action_bar.html:49
#: templates/currencies/fragments/list.html:37
#: templates/dca/fragments/strategy/details.html:67
@@ -1847,6 +1879,7 @@ msgstr ""
#: templates/exchange_rates_services/fragments/table.html:23
#: templates/import_app/fragments/profiles/list.html:48
#: templates/installment_plans/fragments/table.html:27
#: templates/quick_transactions/fragments/list.html:24
#: templates/recurring_transactions/fragments/table.html:29
#: templates/rules/fragments/transaction_rule/view.html:23
#: templates/rules/fragments/transaction_rule/view.html:47
@@ -1859,8 +1892,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:43
#: templates/accounts/fragments/list.html:48
#: templates/categories/fragments/table.html:36
#: templates/cotton/transaction/item.html:145
#: templates/cotton/transaction/item.html:164
#: templates/cotton/transaction/item.html:146
#: templates/cotton/transaction/item.html:165
#: templates/cotton/ui/deleted_transactions_action_bar.html:55
#: templates/cotton/ui/transactions_action_bar.html:86
#: templates/currencies/fragments/list.html:44
@@ -1874,6 +1907,7 @@ msgstr ""
#: templates/import_app/fragments/runs/list.html:102
#: templates/installment_plans/fragments/table.html:56
#: templates/mini_tools/unit_price_calculator.html:18
#: templates/quick_transactions/fragments/list.html:32
#: templates/recurring_transactions/fragments/table.html:91
#: templates/rules/fragments/list.html:44
#: templates/rules/fragments/transaction_rule/view.html:55
@@ -1885,8 +1919,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:47
#: templates/accounts/fragments/list.html:52
#: templates/categories/fragments/table.html:41
#: templates/cotton/transaction/item.html:149
#: templates/cotton/transaction/item.html:168
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/ui/deleted_transactions_action_bar.html:57
#: templates/cotton/ui/transactions_action_bar.html:88
#: templates/currencies/fragments/list.html:48
@@ -1900,6 +1934,7 @@ msgstr ""
#: templates/import_app/fragments/runs/list.html:106
#: templates/installment_plans/fragments/table.html:48
#: templates/installment_plans/fragments/table.html:60
#: templates/quick_transactions/fragments/list.html:37
#: templates/recurring_transactions/fragments/table.html:53
#: templates/recurring_transactions/fragments/table.html:67
#: templates/recurring_transactions/fragments/table.html:82
@@ -1914,8 +1949,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:48
#: templates/accounts/fragments/list.html:53
#: templates/categories/fragments/table.html:42
#: templates/cotton/transaction/item.html:150
#: templates/cotton/transaction/item.html:169
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/ui/deleted_transactions_action_bar.html:58
#: templates/cotton/ui/transactions_action_bar.html:89
#: templates/currencies/fragments/list.html:49
@@ -1936,8 +1971,8 @@ msgstr ""
#: templates/account_groups/fragments/list.html:49
#: templates/accounts/fragments/list.html:54
#: templates/categories/fragments/table.html:43
#: templates/cotton/transaction/item.html:151
#: templates/cotton/transaction/item.html:170
#: templates/cotton/transaction/item.html:152
#: templates/cotton/transaction/item.html:171
#: templates/currencies/fragments/list.html:50
#: templates/dca/fragments/strategy/details.html:82
#: templates/dca/fragments/strategy/list.html:50
@@ -1948,6 +1983,7 @@ msgstr ""
#: templates/import_app/fragments/profiles/list.html:75
#: templates/import_app/fragments/runs/list.html:108
#: templates/installment_plans/fragments/table.html:62
#: templates/quick_transactions/fragments/list.html:39
#: templates/recurring_transactions/fragments/table.html:98
#: templates/rules/fragments/list.html:50
#: templates/rules/fragments/transaction_rule/view.html:61
@@ -2097,7 +2133,7 @@ msgstr ""
msgid "Select"
msgstr ""
#: templates/cotton/transaction/item.html:137
#: templates/cotton/transaction/item.html:138
#: templates/cotton/ui/transactions_action_bar.html:78
msgid "Duplicate"
msgstr ""
@@ -2206,14 +2242,17 @@ msgid "Count"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:25
#: templates/cotton/ui/transactions_fab.html:27
msgid "Installment"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:32
#: templates/cotton/ui/transactions_fab.html:35
msgid "Recurring"
msgstr ""
#: templates/cotton/ui/quick_transactions_buttons.html:47
#: templates/cotton/ui/transactions_fab.html:52
msgid "Balance"
msgstr ""
@@ -2379,8 +2418,8 @@ msgstr ""
#: templates/exchange_rates/fragments/list.html:25
#: templates/includes/navbar.html:61
#: templates/installment_plans/fragments/list.html:21
#: templates/yearly_overview/pages/overview_by_account.html:92
#: templates/yearly_overview/pages/overview_by_currency.html:94
#: templates/yearly_overview/pages/overview_by_account.html:94
#: templates/yearly_overview/pages/overview_by_currency.html:96
msgid "All"
msgstr ""
@@ -2433,7 +2472,7 @@ msgstr ""
msgid "No services configured"
msgstr ""
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:137
#: templates/export_app/pages/index.html:4 templates/includes/navbar.html:139
msgid "Export and Restore"
msgstr ""
@@ -2546,47 +2585,47 @@ msgstr ""
msgid "Trash Can"
msgstr ""
#: templates/includes/navbar.html:82
#: templates/includes/navbar.html:84
msgid "Tools"
msgstr ""
#: templates/includes/navbar.html:86
#: templates/includes/navbar.html:88
msgid "Dollar Cost Average Tracker"
msgstr ""
#: templates/includes/navbar.html:89
#: templates/includes/navbar.html:91
#: templates/mini_tools/unit_price_calculator.html:5
#: templates/mini_tools/unit_price_calculator.html:10
msgid "Unit Price Calculator"
msgstr ""
#: templates/includes/navbar.html:92
#: templates/includes/navbar.html:94
#: templates/mini_tools/currency_converter/currency_converter.html:8
#: templates/mini_tools/currency_converter/currency_converter.html:15
msgid "Currency Converter"
msgstr ""
#: templates/includes/navbar.html:101
#: templates/includes/navbar.html:103
msgid "Management"
msgstr ""
#: templates/includes/navbar.html:130
#: templates/includes/navbar.html:132
msgid "Automation"
msgstr ""
#: templates/includes/navbar.html:145
#: templates/includes/navbar.html:147
msgid "Admin"
msgstr ""
#: templates/includes/navbar.html:154
#: templates/includes/navbar.html:156
msgid "Only use this if you know what you're doing"
msgstr ""
#: templates/includes/navbar.html:155
#: templates/includes/navbar.html:157
msgid "Django Admin"
msgstr ""
#: templates/includes/navbar.html:165
#: templates/includes/navbar.html:167
msgid "Calculator"
msgstr ""
@@ -2732,8 +2771,8 @@ msgid "Month"
msgstr ""
#: templates/insights/pages/index.html:40
#: templates/yearly_overview/pages/overview_by_account.html:61
#: templates/yearly_overview/pages/overview_by_currency.html:63
#: templates/yearly_overview/pages/overview_by_account.html:62
#: templates/yearly_overview/pages/overview_by_currency.html:64
msgid "Year"
msgstr ""
@@ -2925,6 +2964,24 @@ msgstr ""
msgid "Evolution by account"
msgstr ""
#: templates/quick_transactions/fragments/add.html:5
#: templates/quick_transactions/fragments/create_menu.html:5
msgid "Add quick transaction"
msgstr ""
#: templates/quick_transactions/fragments/create_menu.html:13
#: templates/quick_transactions/fragments/list.html:55
msgid "Nothing to see here..."
msgstr ""
#: templates/quick_transactions/fragments/edit.html:5
msgid "Edit quick transaction"
msgstr ""
#: templates/quick_transactions/fragments/list.html:38
msgid "This will delete this item"
msgstr ""
#: templates/recurring_transactions/fragments/add.html:5
msgid "Add recurring transaction"
msgstr ""
@@ -3154,14 +3211,18 @@ msgstr ""
msgid "Show amounts"
msgstr ""
#: templates/users/login.html:17
#: templates/users/login.html:18
msgid "Welcome to WYGIWYH's demo!"
msgstr ""
#: templates/users/login.html:18
#: templates/users/login.html:19
msgid "Use the credentials below to login"
msgstr ""
#: templates/users/login.html:40
msgid "Login with"
msgstr ""
#: templates/yearly_overview/pages/overview_by_account.html:7
#: templates/yearly_overview/pages/overview_by_currency.html:9
msgid "Yearly Overview"

File diff suppressed because it is too large Load Diff

View File

@@ -13,45 +13,47 @@
{% endblock %}
{% block content %}
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-4 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_month from:window"
href="{% url 'calendar' month=previous_month year=previous_year %}"><i
class="fa-solid fa-chevron-left"></i></a>
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-4 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_month from:window"
href="{% url 'calendar' month=previous_month year=previous_year %}"><i
class="fa-solid fa-chevron-left"></i></a>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center"
hx-get="{% url 'month_year_picker' %}"
hx-target="#generic-offcanvas-left"
hx-trigger="click, date_picker from:window"
hx-vals='{"month": {{ month }}, "year": {{ year }}, "for": "calendar", "field": "date"}' role="button">
{{ month|month_name }} {{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_month from:window"
href="{% url 'calendar' month=next_month year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
</div>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center"
hx-get="{% url 'month_year_picker' %}"
hx-target="#generic-offcanvas-left"
hx-trigger="click, date_picker from:window"
hx-vals='{"month": {{ month }}, "year": {{ year }}, "for": "calendar", "field": "date"}' role="button">
{{ month|month_name }} {{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_month from:window"
href="{% url 'calendar' month=next_month year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
{# Action buttons#}
<div class="col-12 col-xl-8">
{# <c-ui.quick-transactions-buttons#}
{# :year="year"#}
{# :month="month"#}
{# ></c-ui.quick-transactions-buttons>#}
</div>
</div>
{# Action buttons#}
<div class="col-12 col-xl-8">
<c-ui.quick-transactions-buttons
:year="year"
:month="month"
></c-ui.quick-transactions-buttons>
<div class="row">
<div class="show-loading" hx-get="{% url 'calendar_list' month=month year=year %}"
hx-trigger="load, updated from:window, selective_update from:window"></div>
</div>
</div>
<div class="row">
<div class="show-loading" hx-get="{% url 'calendar_list' month=month year=year %}" hx-trigger="load, updated from:window, selective_update from:window"></div>
</div>
</div>
<c-ui.transactions_fab></c-ui.transactions_fab>
{% endblock %}

View File

@@ -0,0 +1,33 @@
<div class="tw-min-h-16">
<div
id="fab-wrapper"
class="tw-fixed tw-bottom-5 tw-right-5 tw-ml-auto tw-w-max tw-flex tw-flex-col tw-items-end mt-5">
<div
id="menu"
class="tw-flex tw-flex-col tw-items-end tw-space-y-6 tw-transition-all tw-duration-300 tw-ease-in-out tw-opacity-0 tw-invisible tw-hidden tw-mb-2">
{{ slot }}
</div>
<button
class="btn btn-primary rounded-circle p-0 tw-w-12 tw-h-12 tw-flex tw-items-center tw-justify-center tw-shadow-lg hover:tw-shadow-xl focus:tw-shadow-xl tw-transition-all tw-duration-300 tw-ease-in-out"
_="
on click or focusout
if #menu matches .tw-invisible and event.type === 'click'
add .tw-rotate-45 to #fab-icon
remove .tw-invisible from #menu
remove .tw-hidden from #menu
remove .tw-opacity-0 from #menu
else
wait 0.2s
remove .tw-rotate-45 from #fab-icon
add .tw-invisible to #menu
add .tw-hidden to #menu
add .tw-opacity-0 to #menu
end
"
>
<i id="fab-icon" class="fa-solid fa-plus tw-text-3xl tw-transition-transform tw-duration-300 tw-ease-in-out"></i>
</button>
</div>
</div>

View File

@@ -0,0 +1,11 @@
{% load i18n %}
<div class="tw-relative fab-item">
<button class="btn btn-sm btn-{{ color }}"
hx-get="{{ url }}"
hx-trigger="{{ hx_trigger }}"
hx-target="{{ hx_target }}"
hx-vals='{{ hx_vals }}'>
<i class="{{ icon }} me-2"></i>
{{ title }}
</button>
</div>

View File

@@ -15,7 +15,8 @@
_="on mouseover remove .tw-invisible from the first .transaction-actions in me end
on mouseout add .tw-invisible to the first .transaction-actions in me end">
<div class="row font-monospace tw-text-sm align-items-center">
<div class="col-lg-auto col-12 d-flex align-items-center tw-text-2xl lg:tw-text-xl text-lg-center text-center p-0 ps-1">
<div
class="col-lg-auto col-12 d-flex align-items-center tw-text-2xl lg:tw-text-xl text-lg-center text-center p-0 ps-1">
{% if not transaction.deleted %}
<a class="text-decoration-none p-3 tw-text-gray-500"
title="{% if transaction.is_paid %}{% trans 'Paid' %}{% else %}{% trans 'Projected' %}{% endif %}"

View File

@@ -0,0 +1,60 @@
{% load i18n %}
<c-components.fab>
<c-components.fab_menu_button
color="success"
hx_target="#generic-offcanvas"
hx_trigger="click, add_income from:window"
hx_vals='{"year": {{ year }}, {% if month %}"month": {{ month }},{% endif %} "type": "IN"}'
url="{% url 'transaction_add' %}"
icon="fa-solid fa-arrow-right-to-bracket"
title="{% translate "Income" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="danger"
hx_target="#generic-offcanvas"
hx_trigger="click, add_income from:window"
hx_vals='{"year": {{ year }}, {% if month %}"month": {{ month }},{% endif %} "type": "EX"}'
url="{% url 'transaction_add' %}"
icon="fa-solid fa-arrow-right-from-bracket"
title="{% translate "Expense" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="warning"
hx_target="#generic-offcanvas"
hx_trigger="click, installment from:window"
url="{% url 'installment_plan_add' %}"
icon="fa-solid fa-divide"
title="{% translate "Installment" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="warning"
hx_target="#generic-offcanvas"
hx_trigger="click, recurring from:window"
url="{% url 'recurring_transaction_add' %}"
icon="fa-solid fa-repeat"
title="{% translate "Recurring" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="info"
hx_target="#generic-offcanvas"
hx_trigger="click, transfer from:window"
hx_vals='{"year": {{ year }} {% if month %}, "month": {{ month }}{% endif %}}'
url="{% url 'transactions_transfer' %}"
icon="fa-solid fa-money-bill-transfer"
title="{% translate "Transfer" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="info"
hx_target="#generic-offcanvas"
hx_trigger="click, balance from:window"
url="{% url 'account_reconciliation' %}"
icon="fa-solid fa-scale-balanced"
title="{% translate "Balance" %}"></c-components.fab_menu_button>
<c-components.fab_menu_button
color="secondary"
hx_target="#generic-offcanvas"
hx_trigger="click, quick_transaction from:window"
url="{% url 'quick_transactions_create_menu' %}"
icon="fa-solid fa-person-running"
title="{% translate "Quick Transaction" %}"></c-components.fab_menu_button>
</c-components.fab>

View File

@@ -50,7 +50,7 @@
<a class="nav-link {% active_link views='insights_index' %}" href="{% url 'insights_index' %}">{% trans 'Insights' %}</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle {% active_link views='installment_plans_index||recurring_trasanctions_index||transactions_all_index||transactions_trash_index' %}"
<a class="nav-link dropdown-toggle {% active_link views='installment_plans_index||quick_transactions_index||recurring_trasanctions_index||transactions_all_index||transactions_trash_index' %}"
href="#" role="button"
data-bs-toggle="dropdown"
aria-expanded="false">
@@ -68,6 +68,8 @@
{% endif %}
<hr class="dropdown-divider">
</li>
<li><a class="dropdown-item {% active_link views='quick_transactions_index' %}"
href="{% url 'quick_transactions_index' %}">{% translate 'Quick Transactions' %}</a></li>
<li><a class="dropdown-item {% active_link views='installment_plans_index' %}"
href="{% url 'installment_plans_index' %}">{% translate 'Installment Plans' %}</a></li>
<li><a class="dropdown-item {% active_link views='recurring_trasanctions_index' %}"

View File

@@ -1,6 +1,5 @@
<div id="toasts">
<div class="toast-container position-fixed bottom-0 end-0 p-3" hx-trigger="load, updated from:window, toasts from:window" hx-get="{% url 'toasts' %}" hx-swap="beforeend">
<div class="toast-container position-fixed bottom-0 start-50 translate-middle-x p-3" hx-trigger="load, updated from:window, toasts from:window" hx-get="{% url 'toasts' %}" hx-swap="beforeend">
</div>
</div>

View File

@@ -44,12 +44,12 @@
</div>
</div>
{# Action buttons#}
<div class="col-12 col-xl-8">
<c-ui.quick-transactions-buttons
:year="year"
:month="month"
></c-ui.quick-transactions-buttons>
</div>
{# <div class="col-12 col-xl-8">#}
{# <c-ui.quick-transactions-buttons#}
{# :year="year"#}
{# :month="month"#}
{# ></c-ui.quick-transactions-buttons>#}
{# </div>#}
</div>
{# Monthly summary#}
<div class="row gx-xl-4 gy-3">
@@ -174,8 +174,9 @@
</div>
<div id="search" class="my-3">
<label class="w-100">
<input type="search" class="form-control" placeholder="{% translate 'Search' %}" hx-preserve id="quick-search"
_="on input or search or htmx:afterSwap from window
<input type="search" class="form-control" placeholder="{% translate 'Search' %}" hx-preserve
id="quick-search"
_="on input or search or htmx:afterSwap from window
if my value is empty
trigger toggle on <.transactions-divider-collapse/>
else
@@ -195,4 +196,7 @@
</div>
</div>
</div>
<c-ui.transactions_fab></c-ui.transactions_fab>
{% endblock %}

View File

@@ -46,7 +46,7 @@
color="grey"></c-amount.display>
</div>
{% endif %}
{% if currency.consolidated %}
{% if currency.consolidated and currency.consolidated.total_final != currency.total_final %}
<div class="d-flex align-items-baseline w-100">
<div class="account-name text-start font-monospace tw-text-gray-300">
<span class="hierarchy-line-icon"></span>{% trans 'Consolidated' %}</div>
@@ -57,7 +57,7 @@
:prefix="currency.consolidated.currency.prefix"
:suffix="currency.consolidated.currency.suffix"
:decimal_places="currency.consolidated.currency.decimal_places"
color="{% if currency.total_final > 0 %}green{% elif currency.total_final < 0 %}red{% endif %}"
color="{% if currency.consolidated.total_final > 0 %}green{% elif currency.consolidated.total_final < 0 %}red{% endif %}"
text-end></c-amount.display>
</div>
</div>

View File

@@ -0,0 +1,11 @@
{% extends 'extends/offcanvas.html' %}
{% load i18n %}
{% load crispy_forms_tags %}
{% block title %}{% translate 'Add quick transaction' %}{% endblock %}
{% block body %}
<form hx-post="{% url 'quick_transaction_add' %}" hx-target="#generic-offcanvas" novalidate>
{% crispy form %}
</form>
{% endblock %}

View File

@@ -0,0 +1,17 @@
{% extends 'extends/offcanvas.html' %}
{% load i18n %}
{% load crispy_forms_tags %}
{% block title %}{% translate 'Add quick transaction' %}{% endblock %}
{% block body %}
<div class="list-group list-group-flush">
{% for qt in quick_transactions %}
<a hx-get="{% url 'quick_transaction_add_as_transaction' quick_transaction_id=qt.id %}"
class="list-group-item list-group-item-action tw-cursor-pointer {% if qt.type == 'EX' %}!tw-text-red-400{% else %}!tw-text-green-400{% endif %}">{{ qt.name }}</a>
{% empty %}
<c-msg.empty title="{% translate "Nothing to see here..." %}" remove-padding></c-msg.empty>
{% endfor %}
</div>
{% endblock %}

View File

@@ -0,0 +1,13 @@
{% extends 'extends/offcanvas.html' %}
{% load i18n %}
{% load crispy_forms_tags %}
{% block title %}{% translate 'Edit quick transaction' %}{% endblock %}
{% block body %}
<form hx-post="{% url 'quick_transaction_edit' quick_transaction_id=quick_transaction.id %}"
hx-target="#generic-offcanvas"
novalidate>
{% crispy form %}
</form>
{% endblock %}

View File

@@ -0,0 +1,59 @@
{% load i18n %}
<div class="card">
<div class="card-body">
<div id="quick-transactions-table">
{% if quick_transactions %}
<c-config.search></c-config.search>
<div class="table-responsive">
<table class="table table-hover align-middle">
<thead>
<tr>
<th scope="col" class="col-auto"></th>
<th scope="col" class="col">{% translate 'Name' %}</th>
</tr>
</thead>
<tbody>
{% for qt in quick_transactions %}
<tr class="recurring_transaction">
<td class="col-auto text-center">
<div class="btn-group" role="group" aria-label="{% translate 'Actions' %}">
<a class="btn btn-secondary btn-sm"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Edit" %}"
hx-get="{% url 'quick_transaction_edit' quick_transaction_id=qt.id %}"
hx-swap="innerHTML"
hx-target="#generic-offcanvas">
<i class="fa-solid fa-pencil fa-fw"></i></a>
<a class="btn btn-secondary btn-sm text-danger"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Delete" %}"
hx-delete="{% url 'quick_transaction_delete' quick_transaction_id=qt.id %}"
hx-trigger='confirmed'
hx-swap="innerHTML"
data-bypass-on-ctrl="true"
data-title="{% translate "Are you sure?" %}"
data-text="{% translate "This will delete this item" %}"
data-confirm-text="{% translate "Yes, delete it!" %}"
_="install prompt_swal"><i class="fa-solid fa-trash fa-fw"></i></a>
</div>
</td>
<td class="col">
<div
class="{% if qt.type == 'EX' %}tw-text-red-400{% else %}tw-text-green-400{% endif %}">
{{ qt.name }}
</div>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% else %}
<c-msg.empty title="{% translate "Nothing to see here..." %}" remove-padding></c-msg.empty>
{% endif %}
</div>
</div>
</div>

View File

@@ -0,0 +1,25 @@
{% extends "layouts/base.html" %}
{% load i18n %}
{% block title %}{% translate 'Quick Transactions' %}{% endblock %}
{% block content %}
<div class="container px-md-3 py-3 column-gap-5">
<div class="tw-text-3xl fw-bold font-monospace tw-w-full mb-3">
{% spaceless %}
<div>{% translate 'Quick Transactions' %}<span>
<a class="text-decoration-none tw-text-2xl p-1 category-action"
role="button"
data-bs-toggle="tooltip"
data-bs-title="{% translate "Add" %}"
hx-get="{% url 'quick_transaction_add' %}"
hx-target="#generic-offcanvas">
<i class="fa-solid fa-circle-plus fa-fw"></i></a>
</span></div>
{% endspaceless %}
</div>
<div id="quick-transactions-table" class="show-loading" hx-get="{% url 'quick_transactions_list' %}" hx-trigger="load, updated from:window"></div>
</div>
{% endblock %}

View File

@@ -2,6 +2,7 @@
{% load i18n %}
{% load settings %}
{% load crispy_forms_tags %}
{% load socialaccount %}
{% block title %}Login{% endblock %}
@@ -25,6 +26,24 @@
<div class="card-body">
<h1 class="h2 card-title text-center mb-4">Login</h1>
{% crispy form %}
{% get_providers as socialaccount_providers %}
{% if socialaccount_providers %}
<div class="mt-3">
<hr>
<ul class="socialaccount_providers list-unstyled">
{% for provider in socialaccount_providers %}
<li class="mt-2">
<a title="{{ provider.name }}"
class="btn btn-outline-primary w-100 socialaccount_provider {{ provider.id }}"
href="{% provider_login_url provider %}">
{% translate 'Login with' %} {{ provider.name }}
</a>
</li>
{% endfor %}
</ul>
</div>
{% endif %}
</div>
</div>
</div>

View File

@@ -12,55 +12,56 @@
{% endblock %}
{% block content %}
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-2 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_year from:window"
href="{% url 'yearly_overview_account' year=previous_year %}">
<i class="fa-solid fa-chevron-left"></i></a>
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-2 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_year from:window"
href="{% url 'yearly_overview_account' year=previous_year %}">
<i class="fa-solid fa-chevron-left"></i></a>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center">
{{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_year from:window"
href="{% url 'yearly_overview_account' year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
</div>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center">
{{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_year from:window"
href="{% url 'yearly_overview_account' year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
{# Action buttons#}
<div class="col-12 col-xl-10">
{# <c-ui.quick-transactions-buttons#}
{# :year="year"#}
{# :month="month"#}
{# ></c-ui.quick-transactions-buttons>#}
</div>
</div>
{# Action buttons#}
<div class="col-12 col-xl-10">
<c-ui.quick-transactions-buttons
:year="year"
:month="month"
></c-ui.quick-transactions-buttons>
</div>
</div>
<div class="row">
<div class="col-lg-2">
<div class="nav flex-column nav-pills" id="month-pills" role="tablist" aria-orientation="vertical" hx-indicator="#data-content">
<input type="hidden" name="month" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_account_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = ''">
{% translate 'Year' %}
</button>
{% for month in months %}
<div class="row">
<div class="col-lg-2">
<div class="nav flex-column nav-pills" id="month-pills" role="tablist" aria-orientation="vertical"
hx-indicator="#data-content">
<input type="hidden" name="month" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_account_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = ''">
{% translate 'Year' %}
</button>
{% for month in months %}
<button class="nav-link"
role="tab"
data-bs-toggle="pill"
@@ -70,28 +71,29 @@
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = '{{ month }}'">
{{ month|month_name }}
{{ month|month_name }}
</button>
{% endfor %}
{% endfor %}
</div>
</div>
</div>
<hr class="my-4 d-block d-lg-none">
<div class="col-lg-3">
<div class="nav flex-column nav-pills" id="currency-pills" role="tablist" aria-orientation="vertical" hx-indicator="#data-content">
<input type="hidden" name="account" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_account_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=account]').value = ''">
{% translate 'All' %}
</button>
{% for account in accounts %}
<hr class="my-4 d-block d-lg-none">
<div class="col-lg-3">
<div class="nav flex-column nav-pills" id="currency-pills" role="tablist" aria-orientation="vertical"
hx-indicator="#data-content">
<input type="hidden" name="account" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_account_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=account]').value = ''">
{% translate 'All' %}
</button>
{% for account in accounts %}
<button class="nav-link"
role="tab"
data-bs-toggle="pill"
@@ -101,13 +103,13 @@
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=account]').value = '{{ account.id }}'">
<span class="badge text-bg-primary me-2">{{ account.group.name }}</span>{{ account.name }}
<span class="badge text-bg-primary me-2">{{ account.group.name }}</span>{{ account.name }}
</button>
{% endfor %}
{% endfor %}
</div>
</div>
</div>
<div class="col-lg-7">
<div class="col-lg-7">
<div id="data-content"
class="show-loading"
hx-get="{% url 'yearly_overview_account_data' year=year %}"
@@ -115,7 +117,8 @@
hx-include="[name='account'], [name='month']"
hx-swap="innerHTML">
</div>
</div>
</div>
</div>
</div>
<c-ui.transactions_fab></c-ui.transactions_fab>
{% endblock %}

View File

@@ -14,55 +14,56 @@
{% endblock %}
{% block content %}
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-2 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_year from:window"
href="{% url 'yearly_overview_currency' year=previous_year %}">
<i class="fa-solid fa-chevron-left"></i></a>
<div class="container px-md-3 py-3 column-gap-5">
<div class="row mb-3 gx-xl-4 gy-3 mb-4">
{# Date picker#}
<div class="col-12 col-xl-2 flex-row align-items-center d-flex">
<div class="tw-text-base h-100 align-items-center d-flex">
<a role="button"
class="pe-4 py-2"
hx-boost="true"
hx-trigger="click, previous_year from:window"
href="{% url 'yearly_overview_currency' year=previous_year %}">
<i class="fa-solid fa-chevron-left"></i></a>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center">
{{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_year from:window"
href="{% url 'yearly_overview_currency' year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
</div>
</div>
<div class="tw-text-3xl fw-bold font-monospace tw-w-full text-center">
{{ year }}
</div>
<div class="tw-text-base mx-2 h-100 align-items-center d-flex">
<a role="button"
class="ps-3 py-2"
hx-boost="true"
hx-trigger="click, next_year from:window"
href="{% url 'yearly_overview_currency' year=next_year %}">
<i class="fa-solid fa-chevron-right"></i>
</a>
{# Action buttons#}
<div class="col-12 col-xl-10">
{# <c-ui.quick-transactions-buttons#}
{# :year="year"#}
{# :month="month"#}
{# ></c-ui.quick-transactions-buttons>#}
</div>
</div>
{# Action buttons#}
<div class="col-12 col-xl-10">
<c-ui.quick-transactions-buttons
:year="year"
:month="month"
></c-ui.quick-transactions-buttons>
</div>
</div>
<div class="row">
<div class="col-lg-2">
<div class="nav flex-column nav-pills" id="month-pills" role="tablist" aria-orientation="vertical" hx-indicator="#data-content">
<input type="hidden" name="month" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_currency_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = ''">
{% translate 'Year' %}
</button>
{% for month in months %}
<div class="row">
<div class="col-lg-2">
<div class="nav flex-column nav-pills" id="month-pills" role="tablist" aria-orientation="vertical"
hx-indicator="#data-content">
<input type="hidden" name="month" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_currency_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = ''">
{% translate 'Year' %}
</button>
{% for month in months %}
<button class="nav-link"
role="tab"
data-bs-toggle="pill"
@@ -72,28 +73,29 @@
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=month]').value = '{{ month }}'">
{{ month|month_name }}
{{ month|month_name }}
</button>
{% endfor %}
{% endfor %}
</div>
</div>
</div>
<hr class="my-4 d-block d-lg-none">
<div class="col-lg-3">
<div class="nav flex-column nav-pills" id="currency-pills" role="tablist" aria-orientation="vertical" hx-indicator="#data-content">
<input type="hidden" name="currency" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_currency_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=currency]').value = ''">
{% translate 'All' %}
</button>
{% for currency in currencies %}
<hr class="my-4 d-block d-lg-none">
<div class="col-lg-3">
<div class="nav flex-column nav-pills" id="currency-pills" role="tablist" aria-orientation="vertical"
hx-indicator="#data-content">
<input type="hidden" name="currency" value="">
<button class="nav-link active"
role="tab"
data-bs-toggle="pill"
hx-get="{% url 'yearly_overview_currency_data' year=year %}"
hx-target="#data-content"
hx-trigger="click"
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=currency]').value = ''">
{% translate 'All' %}
</button>
{% for currency in currencies %}
<button class="nav-link"
role="tab"
data-bs-toggle="pill"
@@ -103,13 +105,13 @@
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML"
onclick="document.querySelector('[name=currency]').value = '{{ currency.id }}'">
{{ currency.name }}
{{ currency.name }}
</button>
{% endfor %}
{% endfor %}
</div>
</div>
</div>
<div class="col-lg-7">
<div class="col-lg-7">
<div id="data-content"
class="show-loading"
hx-get="{% url 'yearly_overview_currency_data' year=year %}"
@@ -117,7 +119,8 @@
hx-include="[name='currency'], [name='month']"
hx-swap="innerHTML">
</div>
</div>
</div>
</div>
</div>
<c-ui.transactions_fab></c-ui.transactions_fab>
{% endblock %}

View File

@@ -2,7 +2,7 @@
/* custom scrollbar */
::-webkit-scrollbar {
width: 10px;
width: 13px;
}
::-webkit-scrollbar-track {

View File

@@ -35,3 +35,6 @@ $min-contrast-ratio: 1.9 !default;
$nav-pills-link-active-color: $gray-900;
$dropdown-link-active-color: $gray-900;
$body-bg-dark: #1e1f24 !default;
$body-tertiary-bg-dark: #232429 !default;

View File

@@ -21,6 +21,7 @@ watchfiles==0.24.0 # https://github.com/samuelcolvin/watchfiles
procrastinate[django]~=2.15.1
requests~=2.32.3
django-allauth[socialaccount]~=65.9.0
pytz
python-dateutil~=2.9.0.post0