Merge branch 'release/4.7.13'

This commit is contained in:
James Cole 2019-02-23 21:27:04 +01:00
commit e3de03e50d
38 changed files with 433 additions and 376 deletions

View File

@ -44,7 +44,7 @@ echo "Remove log file..."
rm -f $FIREFLY_PATH/storage/logs/laravel.log rm -f $FIREFLY_PATH/storage/logs/laravel.log
echo "Map environment variables on .env file..." echo "Map environment variables on .env file..."
cat .env.docker | envsubst > .env cat $FIREFLY_PATH/.deploy/docker/.env.docker | envsubst > $FIREFLY_PATH/.env
echo "Dump auto load..." echo "Dump auto load..."
composer dump-autoload composer dump-autoload
echo "Discover packages..." echo "Discover packages..."

View File

@ -1,4 +1,5 @@
en_US en_US
es_ES
de_DE de_DE
fr_FR fr_FR
it_IT it_IT
@ -6,4 +7,5 @@ nl_NL
pl_PL pl_PL
pt_BR pt_BR
ru_RU ru_RU
tr_TR zh_TW
zh_CN

View File

@ -1,178 +0,0 @@
# You can leave this on "local". If you change it to production most console commands will ask for extra confirmation.
# Never set it to "testing".
APP_ENV=testing
# Set to true if you want to see debug information in error screens.
APP_DEBUG=true
# This should be your email address
SITE_OWNER=thegrumpydictator+testing@gmail.com
# The encryption key for your database and sessions. Keep this very secure.
# If you generate a new one all existing data must be considered LOST.
# Change it to a string of exactly 32 chars or use command `php artisan key:generate` to generate it
APP_KEY=TestTestTestTestTestTestTestTest
# Change this value to your preferred time zone.
# Example: Europe/Amsterdam
TZ=Europe/Amsterdam
# This variable must match your installation's external address but keep in mind that
# it's only used on the command line as a fallback value.
APP_URL=http://localhost
# TRUSTED_PROXIES is a useful variable when using Docker and/or a reverse proxy.
TRUSTED_PROXIES=
# The log channel defines where your log entries go to.
# 'daily' is the default logging mode giving you 5 daily rotated log files in /storage/logs/.
# Several other options exist. You can use 'single' for one big fat error log (not recommended).
# Also available are 'syslog', 'errorlog' and 'stdout' which will log to the system itself.
LOG_CHANNEL=dailytest
# Log level. You can set this from least severe to most severe:
# debug, info, notice, warning, error, critical, alert, emergency
# If you set it to debug your logs will grow large, and fast. If you set it to emergency probably
# nothing will get logged, ever.
APP_LOG_LEVEL=info
# Database credentials. Make sure the database exists. I recommend a dedicated user for Firefly III
# For other database types, please see the FAQ: http://firefly-iii.readthedocs.io/en/latest/support/faq.html
DB_CONNECTION=sqlite
# If you're looking for performance improvements, you could install memcached.
CACHE_DRIVER=file
SESSION_DRIVER=file
# You can configure another file storage backend if you cannot use the local storage option.
# To set this up, fill in the following variables. The upload path is used to store uploaded
# files and the export path is to store exported data (before download).
SFTP_HOST=
SFTP_PORT=
SFTP_UPLOAD_PATH=
SFTP_EXPORT_PATH=
# SFTP uses either the username/password combination or the private key to authenticate.
SFTP_USERNAME=
SFTP_PASSWORD=
SFTP_PRIV_KEY=
# Cookie settings. Should not be necessary to change these.
COOKIE_PATH="/"
COOKIE_DOMAIN=
COOKIE_SECURE=false
# If you want Firefly III to mail you, update these settings
# For instructions, see: https://firefly-iii.readthedocs.io/en/latest/installation/mail.html
MAIL_DRIVER=log
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_FROM=changeme@example.com
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
# Other mail drivers:
MAILGUN_DOMAIN=
MAILGUN_SECRET=
MANDRILL_SECRET=
SPARKPOST_SECRET=
# Firefly III can send you the following messages
SEND_REGISTRATION_MAIL=true
SEND_ERROR_MESSAGE=false
# These messages contain (sensitive) transaction information:
SEND_REPORT_JOURNALS=true
# Set a Mapbox API key here (see mapbox.com) so there might be a map available at various places.
MAPBOX_API_KEY=
# Firefly III currently supports two provider for live Currency Exchange Rates:
# "fixer" is the default (for backward compatibility), and "ratesapi" is the new one.
# RatesApi.IO (see https://ratesapi.io) is a FREE and OPEN SOURCE live currency exchange rates,
# built compatible with Fixer.IO, based on data published by European Central Bank, and don't require API key.
CER_PROVIDER=fixer
# If you have select "fixer" as default currency exchange rates,
# set a Fixer IO API key here (see https://fixer.io) to enable live currency exchange rates.
# Please note that this WILL ONLY WORK FOR PAID fixer.io accounts because they severely limited
# the free API up to the point where you might as well offer nothing.
FIXER_API_KEY=
# If you wish to track your own behavior over Firefly III, set a valid analytics tracker ID here.
ANALYTICS_ID=
# Most parts of the database are encrypted by default, but you can turn this off if you want to.
# This makes it easier to migrate your database. Not that some fields will never be decrypted.
USE_ENCRYPTION=false
# Firefly III has two options for user authentication. "eloquent" is the default,
# and "ldap" for LDAP servers.
# For full instructions on these settings please visit:
# https://firefly-iii.readthedocs.io/en/latest/installation/authentication.html
LOGIN_PROVIDER=eloquent
# LDAP connection configuration
# or FreeIPA or ActiveDirectory
ADLDAP_CONNECTION_SCHEME=OpenLDAP
ADLDAP_AUTO_CONNECT=true
# LDAP connection settings
ADLDAP_CONTROLLERS=
ADLDAP_PORT=389
ADLDAP_TIMEOUT=5
ADLDAP_BASEDN=""
ADLDAP_FOLLOW_REFFERALS=false
ADLDAP_USE_SSL=false
ADLDAP_USE_TLS=false
ADLDAP_ADMIN_USERNAME=
ADLDAP_ADMIN_PASSWORD=
ADLDAP_ACCOUNT_PREFIX=
ADLDAP_ACCOUNT_SUFFIX=
# LDAP authentication settings.
ADLDAP_PASSWORD_SYNC=false
ADLDAP_LOGIN_FALLBACK=false
ADLDAP_DISCOVER_FIELD=distinguishedname
ADLDAP_AUTH_FIELD=distinguishedname
# Will allow SSO if your server provides an AUTH_USER field.
WINDOWS_SSO_DISCOVER=samaccountname
WINDOWS_SSO_KEY=AUTH_USER
# field to sync as local username.
ADLDAP_SYNC_FIELD=userprincipalname
# You can disable the X-Frame-Options header if it interfears with tools like
# Organizr. This is at your own risk.
DISABLE_FRAME_HEADER=false
# Leave the following configuration vars as is.
# Unless you like to tinker and know what you're doing.
APP_NAME=FireflyIII
ADLDAP_CONNECTION=default
BROADCAST_DRIVER=log
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
CACHE_PREFIX=firefly_tst
SEARCH_RESULT_LIMIT=50
PUSHER_KEY=
PUSHER_SECRET=
PUSHER_ID=
DEMO_USERNAME=
DEMO_PASSWORD=
IS_DOCKER=false
IS_SANDSTORM=false
IS_HEROKU=false
BUNQ_USE_SANDBOX=true
FFIII_LAYOUT=v1

View File

@ -6,7 +6,7 @@ set -euo pipefail
echo "In build.sh" echo "In build.sh"
cd /opt/app cd /opt/app
cp .env.sandstorm .env cp .deploy/sandstorm/.env.sandstorm .env
if [ -f /opt/app/composer.json ] ; then if [ -f /opt/app/composer.json ] ; then
if [ ! -f composer.phar ] ; then if [ ! -f composer.phar ] ; then

View File

@ -1,3 +1,11 @@
# 4.7.13 (API 0.9.2)
- 4.7.13 was released to fix an issue that affected the Softaculous build.
- A routine has been added that warns about transactions with a 0.00 amount.
- PHP maximum execution time is now 600 seconds in the Docker image.
- Moved several files outside of the root of Firefly III
- Fix issue where missing preference breaks the database upgrade.
- [Issue 2100](https://github.com/firefly-iii/firefly-iii/issues/2100) Mass edit transactions results in a reset of the date.
# 4.7.12 # 4.7.12
- 4.7.12 was released to fix several shortcomings in v4.7.11's Docker image. Those in turn were caused by me. My apologies. - 4.7.12 was released to fix several shortcomings in v4.7.11's Docker image. Those in turn were caused by me. My apologies.
- [Issue 2085](https://github.com/firefly-iii/firefly-iii/issues/2085) Upgraded the LDAP code. To keep using LDAP, set the `LOGIN_PROVIDER` to `ldap`. - [Issue 2085](https://github.com/firefly-iii/firefly-iii/issues/2085) Upgraded the LDAP code. To keep using LDAP, set the `LOGIN_PROVIDER` to `ldap`.

View File

@ -15,8 +15,8 @@ const pkgdef :Spk.PackageDefinition = (
manifest = ( manifest = (
appTitle = (defaultText = "Firefly III"), appTitle = (defaultText = "Firefly III"),
appVersion = 22, appVersion = 23,
appMarketingVersion = (defaultText = "4.7.12"), appMarketingVersion = (defaultText = "4.7.13"),
actions = [ actions = [
# Define your "new document" handlers here. # Define your "new document" handlers here.

View File

@ -13,6 +13,7 @@ apt-get update
apt-get install -y python-software-properties software-properties-common apt-get install -y python-software-properties software-properties-common
# install all languages # install all languages
#en_US
sed -i 's/# es_ES.UTF-8 UTF-8/es_ES.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# es_ES.UTF-8 UTF-8/es_ES.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# fr_FR.UTF-8 UTF-8/fr_FR.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# fr_FR.UTF-8 UTF-8/fr_FR.UTF-8 UTF-8/g' /etc/locale.gen
@ -22,6 +23,7 @@ sed -i 's/# pl_PL.UTF-8 UTF-8/pl_PL.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# pt_BR.UTF-8 UTF-8/pt_BR.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# pt_BR.UTF-8 UTF-8/pt_BR.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# zh_TW.UTF-8 UTF-8/zh_TW.UTF-8 UTF-8/g' /etc/locale.gen sed -i 's/# zh_TW.UTF-8 UTF-8/zh_TW.UTF-8 UTF-8/g' /etc/locale.gen
sed -i 's/# zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/g' /etc/locale.gen
dpkg-reconfigure --frontend=noninteractive locales dpkg-reconfigure --frontend=noninteractive locales

View File

@ -1,7 +1,7 @@
sudo: required sudo: required
language: bash language: bash
env: env:
- VERSION=4.7.12 - VERSION=4.7.13
dist: xenial dist: xenial

View File

@ -1,7 +1,7 @@
FROM php:7.2-apache FROM php:7.2-apache
ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1 ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1
LABEL version="1.3" maintainer="thegrumpydictator@gmail.com" LABEL version="1.4" maintainer="thegrumpydictator@gmail.com"
# Create volumes # Create volumes
VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload
@ -44,6 +44,11 @@ RUN chown -R www-data:www-data /var/www && \
locale-gen && \ locale-gen && \
composer install --prefer-dist --no-dev --no-scripts --no-suggest composer install --prefer-dist --no-dev --no-scripts --no-suggest
# configure PHP
RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini && \
sed -i 's/max_execution_time = 30/max_execution_time = 600/' /usr/local/etc/php/php.ini && \
sed -i 's/memory_limit = 128M/memory_limit = 512M/' /usr/local/etc/php/php.ini
# Expose port 80 # Expose port 80
EXPOSE 80 EXPOSE 80

View File

@ -1,7 +1,7 @@
FROM php:7.2-apache FROM php:7.2-apache
ARG ARCH ARG ARCH
ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1 ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1
LABEL version="1.3" maintainer="thegrumpydictator@gmail.com" LABEL version="1.4" maintainer="thegrumpydictator@gmail.com"
# Create volumes # Create volumes
VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload
@ -44,6 +44,12 @@ RUN chown -R www-data:www-data /var/www && \
locale-gen && \ locale-gen && \
composer install --prefer-dist --no-dev --no-scripts --no-suggest composer install --prefer-dist --no-dev --no-scripts --no-suggest
# configure PHP
RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini && \
sed -i 's/max_execution_time = 30/max_execution_time = 600/' /usr/local/etc/php/php.ini && \
sed -i 's/memory_limit = 128M/memory_limit = 512M/' /usr/local/etc/php/php.ini
# Expose port 80 # Expose port 80
EXPOSE 80 EXPOSE 80

View File

@ -2,7 +2,7 @@ FROM arm32v7/php:7.2.8-apache-stretch
ARG ARCH ARG ARCH
COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static
ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1 ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1
LABEL version="1.3" maintainer="thegrumpydictator@gmail.com" LABEL version="1.4" maintainer="thegrumpydictator@gmail.com"
# Create volumes # Create volumes
VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload
@ -43,6 +43,12 @@ RUN chown -R www-data:www-data /var/www && \
locale-gen && \ locale-gen && \
composer install --prefer-dist --no-dev --no-scripts --no-suggest composer install --prefer-dist --no-dev --no-scripts --no-suggest
# configure PHP
RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini && \
sed -i 's/max_execution_time = 30/max_execution_time = 600/' /usr/local/etc/php/php.ini && \
sed -i 's/memory_limit = 128M/memory_limit = 512M/' /usr/local/etc/php/php.ini
# Expose port 80 # Expose port 80
EXPOSE 80 EXPOSE 80

View File

@ -2,7 +2,7 @@ FROM arm32v7/php:7.2.8-apache-stretch
ARG ARCH ARG ARCH
COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static
ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1 ENV FIREFLY_PATH=/var/www/firefly-iii COMPOSER_ALLOW_SUPERUSER=1
LABEL version="1.3" maintainer="thegrumpydictator@gmail.com" LABEL version="1.4" maintainer="thegrumpydictator@gmail.com"
# Create volumes # Create volumes
VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload VOLUME $FIREFLY_PATH/storage/export $FIREFLY_PATH/storage/upload
@ -43,6 +43,12 @@ RUN chown -R www-data:www-data /var/www && \
locale-gen && \ locale-gen && \
composer install --prefer-dist --no-dev --no-scripts --no-suggest composer install --prefer-dist --no-dev --no-scripts --no-suggest
# configure PHP
RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini && \
sed -i 's/max_execution_time = 30/max_execution_time = 600/' /usr/local/etc/php/php.ini && \
sed -i 's/memory_limit = 128M/memory_limit = 512M/' /usr/local/etc/php/php.ini
# Expose port 80 # Expose port 80
EXPOSE 80 EXPOSE 80

View File

@ -268,11 +268,11 @@ class UpgradeDatabase extends Command
if (!Schema::hasTable('transaction_journals')) { if (!Schema::hasTable('transaction_journals')) {
return; return;
} }
$subQuery = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id') $subQuery = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->whereNull('transaction_journals.deleted_at') ->whereNull('transaction_journals.deleted_at')
->whereNull('transactions.deleted_at') ->whereNull('transactions.deleted_at')
->groupBy(['transaction_journals.id']) ->groupBy(['transaction_journals.id'])
->select(['transaction_journals.id', DB::raw('COUNT(transactions.id) AS t_count')]); ->select(['transaction_journals.id', DB::raw('COUNT(transactions.id) AS t_count')]);
/** @noinspection PhpStrictTypeCheckingInspection */ /** @noinspection PhpStrictTypeCheckingInspection */
$result = DB::table(DB::raw('(' . $subQuery->toSql() . ') AS derived')) $result = DB::table(DB::raw('(' . $subQuery->toSql() . ') AS derived'))
->mergeBindings($subQuery->getQuery()) ->mergeBindings($subQuery->getQuery())
@ -294,23 +294,38 @@ class UpgradeDatabase extends Command
*/ */
public function updateAccountCurrencies(): void public function updateAccountCurrencies(): void
{ {
Log::debug('Now in updateAccountCurrencies()');
$defaultConfig = (string)config('firefly.default_currency', 'EUR');
Log::debug(sprintf('System default currency is "%s"', $defaultConfig));
$accounts = Account::leftJoin('account_types', 'account_types.id', '=', 'accounts.account_type_id') $accounts = Account::leftJoin('account_types', 'account_types.id', '=', 'accounts.account_type_id')
->whereIn('account_types.type', [AccountType::DEFAULT, AccountType::ASSET])->get(['accounts.*']); ->whereIn('account_types.type', [AccountType::DEFAULT, AccountType::ASSET])->get(['accounts.*']);
/** @var AccountRepositoryInterface $repository */ /** @var AccountRepositoryInterface $repository */
$repository = app(AccountRepositoryInterface::class); $repository = app(AccountRepositoryInterface::class);
$accounts->each( $accounts->each(
function (Account $account) use ($repository) { function (Account $account) use ($repository, $defaultConfig) {
$repository->setUser($account->user); $repository->setUser($account->user);
// get users preference, fall back to system pref. // get users preference, fall back to system pref.
$defaultCurrencyCode = app('preferences')->getForUser($account->user, 'currencyPreference', config('firefly.default_currency', 'EUR'))->data;
$defaultCurrency = TransactionCurrency::where('code', $defaultCurrencyCode)->first(); // expand and debug routine.
$accountCurrency = (int)$repository->getMetaValue($account, 'currency_id'); $defaultCurrencyCode = app('preferences')->getForUser($account->user, 'currencyPreference', $defaultConfig)->data;
$openingBalance = $account->getOpeningBalance(); Log::debug(sprintf('Default currency code is "%s"', var_export($defaultCurrencyCode, true)));
$obCurrency = (int)$openingBalance->transaction_currency_id; if (!is_string($defaultCurrencyCode)) {
$defaultCurrencyCode = $defaultConfig;
Log::debug(sprintf('Default currency code is not a string, now set to "%s"', $defaultCurrencyCode));
}
$defaultCurrency = TransactionCurrency::where('code', $defaultCurrencyCode)->first();
$accountCurrency = (int)$repository->getMetaValue($account, 'currency_id');
$openingBalance = $account->getOpeningBalance();
$obCurrency = (int)$openingBalance->transaction_currency_id;
if (null === $defaultCurrency) { if (null === $defaultCurrency) {
throw new UnexpectedValueException('The default currency is NULL, and this is more or less impossible.'); throw new UnexpectedValueException(sprintf('User has a preference for "%s", but this currency does not exist.', $defaultCurrencyCode));
} }
Log::debug(
sprintf('Found default currency #%d (%s) while searching for "%s"', $defaultCurrency->id, $defaultCurrency->code, $defaultCurrencyCode)
);
// both 0? set to default currency: // both 0? set to default currency:
if (0 === $accountCurrency && 0 === $obCurrency) { if (0 === $accountCurrency && 0 === $obCurrency) {

View File

@ -26,6 +26,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands; namespace FireflyIII\Console\Commands;
use DB; use DB;
use Exception;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountMeta; use FireflyIII\Models\AccountMeta;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
@ -43,6 +44,7 @@ use FireflyIII\User;
use Illuminate\Console\Command; use Illuminate\Console\Command;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Log;
use Schema; use Schema;
use stdClass; use stdClass;
@ -97,6 +99,7 @@ class VerifyDatabase extends Command
$this->fixBadMeta(); $this->fixBadMeta();
$this->removeBills(); $this->removeBills();
$this->enableCurrencies(); $this->enableCurrencies();
$this->reportZeroAmount();
return 0; return 0;
} }
@ -688,4 +691,24 @@ class VerifyDatabase extends Command
); );
} }
} }
/**
* Collect all journals with empty amount.
*/
private function reportZeroAmount(): void
{
$set = Transaction::where('amount', 0)->get(['transaction_journal_id'])->pluck('transaction_journal_id')->toArray();
$set = array_unique($set);
/** @var Collection $journals */
$journals = TransactionJournal::whereIn('id', $set)->get();
/** @var TransactionJournal $journal */
foreach ($journals as $journal) {
$message = sprintf(
'Transaction "%s" (#%d), owned by user %s, has amount zero (0.00). It should be deleted.', $journal->description,
$journal->id, $journal->user->email
);
$this->error($message);
}
}
} }

View File

@ -2,6 +2,21 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/). This project adheres to [Semantic Versioning](http://semver.org/).
## [4.7.13 (API 0.9.2)] - 2019-02-23
4.7.13 was released to fix an issue that affected the Softaculous build.
### Added
- A routine has been added that warns about transactions with a 0.00 amount.
### Changed
- PHP maximum execution time is now 600 seconds in the Docker image.
- Moved several files outside of the root of Firefly III
### Fixed
- Fix issue where missing preference breaks the database upgrade.
- [Issue 2100](https://github.com/firefly-iii/firefly-iii/issues/2100) Mass edit transactions results in a reset of the date.
## [4.7.12 (API 0.9.2)] - 2019-02-16 ## [4.7.12 (API 0.9.2)] - 2019-02-16
4.7.12 was released to fix several shortcomings in v4.7.11's Docker image. Those in turn were caused by me. My apologies. 4.7.12 was released to fix several shortcomings in v4.7.11's Docker image. Those in turn were caused by me. My apologies.

View File

@ -123,7 +123,7 @@
}, },
"scripts": { "scripts": {
"pre-install-cmd": [ "pre-install-cmd": [
"@php -r \"if (!(getenv('DYNO'))===false){file_exists('.env') || copy('.env.heroku', '.env');}\"" "@php -r \"if (!(getenv('DYNO'))===false){file_exists('.env') || copy('.deploy/heroku/.env.heroku', '.env');copy('.deploy/heroku/.locales', '.locales')}\""
], ],
"post-root-package-install": [ "post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""

141
composer.lock generated
View File

@ -1304,16 +1304,16 @@
}, },
{ {
"name": "laravel/framework", "name": "laravel/framework",
"version": "v5.7.26", "version": "v5.7.27",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/framework.git", "url": "https://github.com/laravel/framework.git",
"reference": "ca3bc9769969e8af3bd9878a3e0242051c74dae4" "reference": "688fbfa889d43f392825b381ad3981847120fdfa"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/ca3bc9769969e8af3bd9878a3e0242051c74dae4", "url": "https://api.github.com/repos/laravel/framework/zipball/688fbfa889d43f392825b381ad3981847120fdfa",
"reference": "ca3bc9769969e8af3bd9878a3e0242051c74dae4", "reference": "688fbfa889d43f392825b381ad3981847120fdfa",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -1446,7 +1446,7 @@
"framework", "framework",
"laravel" "laravel"
], ],
"time": "2019-02-12T14:52:21+00:00" "time": "2019-02-19T14:37:47+00:00"
}, },
{ {
"name": "laravel/nexmo-notification-channel", "name": "laravel/nexmo-notification-channel",
@ -2519,16 +2519,16 @@
}, },
{ {
"name": "opis/closure", "name": "opis/closure",
"version": "3.1.5", "version": "3.1.6",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/opis/closure.git", "url": "https://github.com/opis/closure.git",
"reference": "41f5da65d75cf473e5ee582df8fc7f2c733ce9d6" "reference": "ccb8e3928c5c8181c76cdd0ed9366c5bcaafd91b"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/opis/closure/zipball/41f5da65d75cf473e5ee582df8fc7f2c733ce9d6", "url": "https://api.github.com/repos/opis/closure/zipball/ccb8e3928c5c8181c76cdd0ed9366c5bcaafd91b",
"reference": "41f5da65d75cf473e5ee582df8fc7f2c733ce9d6", "reference": "ccb8e3928c5c8181c76cdd0ed9366c5bcaafd91b",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2576,7 +2576,7 @@
"serialization", "serialization",
"serialize" "serialize"
], ],
"time": "2019-01-14T14:45:33+00:00" "time": "2019-02-22T10:30:00+00:00"
}, },
{ {
"name": "paragonie/constant_time_encoding", "name": "paragonie/constant_time_encoding",
@ -6345,16 +6345,16 @@
}, },
{ {
"name": "phpunit/php-timer", "name": "phpunit/php-timer",
"version": "2.0.0", "version": "2.1.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git", "url": "https://github.com/sebastianbergmann/php-timer.git",
"reference": "8b8454ea6958c3dee38453d3bd571e023108c91f" "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/8b8454ea6958c3dee38453d3bd571e023108c91f", "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/8b389aebe1b8b0578430bda0c7c95a829608e059",
"reference": "8b8454ea6958c3dee38453d3bd571e023108c91f", "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6366,7 +6366,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.0-dev" "dev-master": "2.1-dev"
} }
}, },
"autoload": { "autoload": {
@ -6390,7 +6390,7 @@
"keywords": [ "keywords": [
"timer" "timer"
], ],
"time": "2018-02-01T13:07:23+00:00" "time": "2019-02-20T10:12:59+00:00"
}, },
{ {
"name": "phpunit/php-token-stream", "name": "phpunit/php-token-stream",
@ -6443,16 +6443,16 @@
}, },
{ {
"name": "phpunit/phpunit", "name": "phpunit/phpunit",
"version": "7.5.5", "version": "7.5.6",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git", "url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "23a200a60552cb9ba483a8d1e106c70fb0be0bb9" "reference": "09c85e14994df92e5ff1f5ec0b481bdb7d3d3df9"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/23a200a60552cb9ba483a8d1e106c70fb0be0bb9", "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/09c85e14994df92e5ff1f5ec0b481bdb7d3d3df9",
"reference": "23a200a60552cb9ba483a8d1e106c70fb0be0bb9", "reference": "09c85e14994df92e5ff1f5ec0b481bdb7d3d3df9",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -6523,7 +6523,7 @@
"testing", "testing",
"xunit" "xunit"
], ],
"time": "2019-02-15T14:00:34+00:00" "time": "2019-02-18T09:24:50+00:00"
}, },
{ {
"name": "roave/security-advisories", "name": "roave/security-advisories",
@ -6531,12 +6531,12 @@
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/Roave/SecurityAdvisories.git", "url": "https://github.com/Roave/SecurityAdvisories.git",
"reference": "54ee79a17e8cdc4ff8a1570198d5bc669a5803b8" "reference": "614a9db1df6be4349544311096f8d48ca067ccbb"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/54ee79a17e8cdc4ff8a1570198d5bc669a5803b8", "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/614a9db1df6be4349544311096f8d48ca067ccbb",
"reference": "54ee79a17e8cdc4ff8a1570198d5bc669a5803b8", "reference": "614a9db1df6be4349544311096f8d48ca067ccbb",
"shasum": "" "shasum": ""
}, },
"conflict": { "conflict": {
@ -6571,8 +6571,91 @@
"doctrine/mongodb-odm-bundle": ">=2,<3.0.1", "doctrine/mongodb-odm-bundle": ">=2,<3.0.1",
"doctrine/orm": ">=2,<2.4.8|>=2.5,<2.5.1", "doctrine/orm": ">=2,<2.4.8|>=2.5,<2.5.1",
"dompdf/dompdf": ">=0.6,<0.6.2", "dompdf/dompdf": ">=0.6,<0.6.2",
"drupal/core": ">=7,<7.62|>=8,<8.5.9|>=8.6,<8.6.6", "drupal/acquia_connector": ">=1,<1.16",
"drupal/drupal": ">=7,<7.62|>=8,<8.5.9|>=8.6,<8.6.6", "drupal/autologout": ">=4,<4.5",
"drupal/backup_migrate": ">=3,<3.4",
"drupal/bealestreet": ">=1,<1.2",
"drupal/bible": ">=1,<1.7",
"drupal/bing_autosuggest_api": ">=1,<1.1",
"drupal/bootstrap": ">=3,<3.14",
"drupal/brilliant_gallery": ">=1,<1.10",
"drupal/ckeditor_uploadimage": ">=1,<1.5",
"drupal/cleantalk": ">=2,<2.7",
"drupal/cloud": ">=1,<1.7",
"drupal/commerce": ">=2,<2.9",
"drupal/commerce_custom_order_status": ">=1,<1.1",
"drupal/commerce_klarna_checkout": ">=1,<1.5",
"drupal/config_perms": ">=1,<1.1|>=2,<2.2",
"drupal/config_update": ">=1,<1.5",
"drupal/core": ">=7,<7.62|>=8,<8.5.11|>=8.6,<8.6.10",
"drupal/datereminder": ">=1,<1.15",
"drupal/decoupled_router": ">=1,<1.2",
"drupal/domain_integration": ">=1,<1.2",
"drupal/drupal": ">=7,<7.62|>=8,<8.5.11|>=8.6,<8.6.10",
"drupal/entity": ">=1,<1.9",
"drupal/entity_ref_tab_formatter": ">=1,<1.3",
"drupal/entityqueue_taxonomy": ">=1,<1.1",
"drupal/esign": ">=1,<1.10",
"drupal/eu_cookie_compliance": ">=1,<1.1",
"drupal/exif": ">=1,<1.1",
"drupal/feedback_collect": ">=1,<1.6",
"drupal/filefield_paths": ">=1,<1.1",
"drupal/filefield_sources": ">=1,<1.11",
"drupal/focal_point": ">=1,<1.2",
"drupal/fontawesome": ">=2,<2.12",
"drupal/fraction": ">=1,<1.2",
"drupal/gathercontent": ">=3,<3.5",
"drupal/genpass": ">=1,<1.1",
"drupal/hosting_https": ">=3,<3.170",
"drupal/jsonapi": ">=1,<1.16",
"drupal/lightbox2": ">=2,<2.11",
"drupal/link": ">=1,<1.6",
"drupal/litejazz": ">=2,<2.3",
"drupal/mailhandler": ">=2,<2.11",
"drupal/mass_pwreset": ">=1,<1.1",
"drupal/me": ">=1,<1.3",
"drupal/media": ">=2,<2.19",
"drupal/menu_export": ">=1,<1.2",
"drupal/metatag": ">=1,<1.8",
"drupal/miniorange_oauth_client": ">=1,<1.21",
"drupal/moneysuite": ">=10,<10.4",
"drupal/mosaik": ">=1,<1.2",
"drupal/netforum_authentication": ">=1,<1.1",
"drupal/newsflash": ">=2,<2.6",
"drupal/node_feedback": ">=1,<1.3",
"drupal/node_view_permissions": ">=1,<1.1",
"drupal/nucleus": ">=1,<1.6",
"drupal/nvp": ">=1,<1.1",
"drupal/panels_breadcrumbs": ">=2,<2.4",
"drupal/panopoly_core": ">=1,<1.49",
"drupal/paragraphs": ">=1,<1.6",
"drupal/password_policy": ">=1,<1.16",
"drupal/permissions_by_term": ">=1,<1.35",
"drupal/phonefield": ">=1,<1.1",
"drupal/phpconfig": ">=1,<1.1",
"drupal/preview_link": ">=1,<1.1",
"drupal/print": ">=2,<2.1",
"drupal/provision": ">=3,<3.170",
"drupal/pubdlcnt": ">=1,<1.3",
"drupal/renderkit": ">=1,<1.6",
"drupal/responsive_menus": ">=1,<1.7",
"drupal/restws": ">=2,<2.8",
"drupal/sagepay_payment": ">=1,<1.5",
"drupal/salesforce": ">=3,<3.1",
"drupal/search_api_solr": ">=1,<1.14",
"drupal/search_autocomplete": ">=4,<4.8",
"drupal/services_sso_client": ">=1,<1.6",
"drupal/stacks": ">=1,<1.1",
"drupal/tapestry": ">=2,<2.2",
"drupal/term_reference_tree": ">=1,<1.11",
"drupal/tfa_basic": ">=1,<1.1",
"drupal/tft": ">=1,<1.1",
"drupal/tmgmt": ">=1,<1.7",
"drupal/uuid": ">=1,<1.1",
"drupal/video": ">=1,<1.4",
"drupal/workbench_moderation": ">=1,<1.4",
"drupal/yandex_metrics": ">=3,<3.1",
"drupal/zircon": ">=1,<1.2",
"erusev/parsedown": "<1.7", "erusev/parsedown": "<1.7",
"ezsystems/ezpublish-kernel": ">=5.3,<5.3.12.1|>=5.4,<5.4.13.1|>=6,<6.7.9.1|>=6.8,<6.13.5.1|>=7,<7.2.4.1|>=7.3,<7.3.2.1", "ezsystems/ezpublish-kernel": ">=5.3,<5.3.12.1|>=5.4,<5.4.13.1|>=6,<6.7.9.1|>=6.8,<6.13.5.1|>=7,<7.2.4.1|>=7.3,<7.3.2.1",
"ezsystems/ezpublish-legacy": ">=5.3,<5.3.12.6|>=5.4,<5.4.12.3|>=2011,<2017.12.4.3|>=2018.6,<2018.6.1.4|>=2018.9,<2018.9.1.3", "ezsystems/ezpublish-legacy": ">=5.3,<5.3.12.6|>=5.4,<5.4.12.3|>=2011,<2017.12.4.3|>=2018.6,<2018.6.1.4|>=2018.9,<2018.9.1.3",
@ -6631,7 +6714,7 @@
"shopware/shopware": "<5.3.7", "shopware/shopware": "<5.3.7",
"silverstripe/cms": ">=3,<=3.0.11|>=3.1,<3.1.11", "silverstripe/cms": ">=3,<=3.0.11|>=3.1,<3.1.11",
"silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3",
"silverstripe/framework": ">=3,<3.3", "silverstripe/framework": ">=3,<3.6.7|>=3.7,<3.7.3|>=4,<4.0.7|>=4.1,<4.1.5|>=4.2,<4.2.4|>=4.3,<4.3.1",
"silverstripe/userforms": "<3", "silverstripe/userforms": "<3",
"simple-updates/phpwhois": "<=1", "simple-updates/phpwhois": "<=1",
"simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4", "simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4",
@ -6669,7 +6752,7 @@
"symfony/yaml": ">=2,<2.0.22|>=2.1,<2.1.7", "symfony/yaml": ">=2,<2.0.22|>=2.1,<2.1.7",
"tecnickcom/tcpdf": "<6.2.22", "tecnickcom/tcpdf": "<6.2.22",
"thelia/backoffice-default-template": ">=2.1,<2.1.2", "thelia/backoffice-default-template": ">=2.1,<2.1.2",
"thelia/thelia": ">=2.1.0-beta1,<2.1.3|>=2.1,<2.1.2", "thelia/thelia": ">=2.1,<2.1.2|>=2.1.0-beta1,<2.1.3",
"theonedemon/phpwhois": "<=4.2.5", "theonedemon/phpwhois": "<=4.2.5",
"titon/framework": ">=0,<9.9.99", "titon/framework": ">=0,<9.9.99",
"truckersmp/phpwhois": "<=4.3.1", "truckersmp/phpwhois": "<=4.3.1",
@ -6727,7 +6810,7 @@
} }
], ],
"description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it", "description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it",
"time": "2019-02-14T08:06:11+00:00" "time": "2019-02-22T18:40:39+00:00"
}, },
{ {
"name": "sebastian/code-unit-reverse-lookup", "name": "sebastian/code-unit-reverse-lookup",

View File

@ -93,7 +93,7 @@ return [
'is_demo_site' => false, 'is_demo_site' => false,
], ],
'encryption' => null === env('USE_ENCRYPTION') || env('USE_ENCRYPTION') === true, 'encryption' => null === env('USE_ENCRYPTION') || env('USE_ENCRYPTION') === true,
'version' => '4.7.12', 'version' => '4.7.13',
'api_version' => '0.9.2', 'api_version' => '0.9.2',
'db_version' => 9, 'db_version' => 9,
'maxUploadSize' => 15242880, 'maxUploadSize' => 15242880,
@ -264,28 +264,28 @@ return [
], ],
'languages' => [ 'languages' => [
'en_US' => ['name_locale' => 'English', 'name_english' => 'English'], 'en_US' => ['name_locale' => 'English', 'name_english' => 'English'],
'es_ES' => ['name_locale' => 'Español', 'name_english' => 'Spanish'], // 2019-01-28: 93% 'es_ES' => ['name_locale' => 'Español', 'name_english' => 'Spanish'], // 92%
'de_DE' => ['name_locale' => 'Deutsch', 'name_english' => 'German'], // 2019-01-28: 99% 'de_DE' => ['name_locale' => 'Deutsch', 'name_english' => 'German'], // 100%
'fr_FR' => ['name_locale' => 'Français', 'name_english' => 'French'], // 2019-01-28: 99% 'fr_FR' => ['name_locale' => 'Français', 'name_english' => 'French'], // 100%
//'id_ID' => ['name_locale' => 'Bahasa Indonesia', 'name_english' => 'Indonesian'], // 2019-01-28: 65% //'id_ID' => ['name_locale' => 'Bahasa Indonesia', 'name_english' => 'Indonesian'], // 65%
'it_IT' => ['name_locale' => 'Italiano', 'name_english' => 'Italian'], // 2019-01-28: 100% 'it_IT' => ['name_locale' => 'Italiano', 'name_english' => 'Italian'], // 100%
'nl_NL' => ['name_locale' => 'Nederlands', 'name_english' => 'Dutch'], // 2019-01-28: 100% 'nl_NL' => ['name_locale' => 'Nederlands', 'name_english' => 'Dutch'], // 100%
'pl_PL' => ['name_locale' => 'Polski', 'name_english' => 'Polish '], // 2019-01-28: 85% 'pl_PL' => ['name_locale' => 'Polski', 'name_english' => 'Polish '], // 87%
'pt_BR' => ['name_locale' => 'Português do Brasil', 'name_english' => 'Portuguese (Brazil)'], // 2019-01-28: 80% 'pt_BR' => ['name_locale' => 'Português do Brasil', 'name_english' => 'Portuguese (Brazil)'], // 80%
'ru_RU' => ['name_locale' => 'Русский', 'name_english' => 'Russian'], // 2019-01-28: 83% 'ru_RU' => ['name_locale' => 'Русский', 'name_english' => 'Russian'], // 83%
'zh_TW' => ['name_locale' => 'Chinese Traditional', 'name_english' => 'Chinese Traditional'], // 2019-01-28: 99% 'zh_TW' => ['name_locale' => 'Chinese Traditional', 'name_english' => 'Chinese Traditional'], // 100%
'zh_CN' => ['name_locale' => 'Chinese Simplified', 'name_english' => 'Chinese Simplified'], // 2019-01-28: 99% 'zh_CN' => ['name_locale' => 'Chinese Simplified', 'name_english' => 'Chinese Simplified'], // 99%
//'tr_TR' => ['name_locale' => 'Türkçe', 'name_english' => 'Turkish'], // 2018-12-23: 70% //'tr_TR' => ['name_locale' => 'Türkçe', 'name_english' => 'Turkish'], // 71%
//'nb_NO' => ['name_locale' => 'Norwegian', 'name_english' => 'Norwegian'], // 2019-01-28: 52% //'nb_NO' => ['name_locale' => 'Norwegian', 'name_english' => 'Norwegian'], // 52%
//'ca_ES' => ['name_locale' => 'Catalan', 'name_english' => 'Catalan'], // 2019-01-28: 0% //'ca_ES' => ['name_locale' => 'Catalan', 'name_english' => 'Catalan'], // 0%
//'ja_JA' => ['name_locale' => 'Japanese', 'name_english' => 'Japanese'], // 2019-01-28: 0% //'ja_JA' => ['name_locale' => 'Japanese', 'name_english' => 'Japanese'], // 0%
//'cs_CZ' => ['name_locale' => 'Czech', 'name_english' => 'Czech'], // 2019-01-28: 8% //'cs_CZ' => ['name_locale' => 'Czech', 'name_english' => 'Czech'], // 35%
//'he_IL' => ['name_locale' => 'Hebrew', 'name_english' => 'Hebrew'], // 2019-01-28: 2% //'he_IL' => ['name_locale' => 'Hebrew', 'name_english' => 'Hebrew'], // 2%
//'hu_HU' => ['name_locale' => 'Hungarian', 'name_english' => 'Hungarian'], // 2019-01-28: 40% //'hu_HU' => ['name_locale' => 'Hungarian', 'name_english' => 'Hungarian'], // 40%
//'sv_SE' => ['name_locale' => 'Svenska', 'name_english' => 'Swedish'], // 2019-01-28: 1% //'sv_SE' => ['name_locale' => 'Svenska', 'name_english' => 'Swedish'], // 1%
//'sr_CS' => ['name_locale' => 'Serbian (Latin)', 'name_english' => 'Serbian (Latin)'], // 2019-01-28: 0% //'sr_CS' => ['name_locale' => 'Serbian (Latin)', 'name_english' => 'Serbian (Latin)'], // 0%
//'sl_SI' => ['name_locale' => 'Slovenian', 'name_english' => 'Slovenian'], // 2019-01-28: 10% //'sl_SI' => ['name_locale' => 'Slovenian', 'name_english' => 'Slovenian'], // 10%
//'uk_UA' => ['name_locale' => 'Ukranian', 'name_english' => 'Ukranian'], // 2019-01-28: 4% //'uk_UA' => ['name_locale' => 'Ukranian', 'name_english' => 'Ukranian'], // 4%
], ],

View File

@ -1,129 +1,11 @@
#
# Your crowdin's credentials
#
"api_key_env": CROWDIN_API_KEY "api_key_env": CROWDIN_API_KEY
"project_identifier_env": CROWDIN_PROJECT_ID "project_identifier_env": CROWDIN_PROJECT_ID
"base_path_env": CROWDIN_BASE_PATH "base_path_env": CROWDIN_BASE_PATH
#"base_url" : ""
#
# Choose file structure in crowdin
# e.g. true or false
#
"preserve_hierarchy": false "preserve_hierarchy": false
#
# Files configuration
#
files: [ files: [
{ {
#
# Source files filter
# e.g. "/resources/en/*.json"
#
"source" : "",
source: "/resources/lang/en_US/*.php", source: "/resources/lang/en_US/*.php",
#
# where translations live
# e.g. "/resources/%two_letters_code%/%original_file_name%"
#
"translation" : "",
translation: /resources/lang/%locale_with_underscore%/%original_file_name%, translation: /resources/lang/%locale_with_underscore%/%original_file_name%,
#
# files or directories for ignore
# e.g. ["/**/?.txt", "/**/[0-9].txt", "/**/*\?*.txt"]
#
#"ignore" : [],
#
# The dest allows you to specify a file name on Crowdin
# e.g. "/messages.json"
#
#"dest" : "",
#
# File type
# e.g. "json"
#
#type:"json"
#
# The parameter "update_option" is optional. If it is not set, translations for changed strings will be lost. Useful for typo fixes and minor changes in source strings.
# e.g. "update_as_unapproved" or "update_without_changes"
#
#"update_option" : "",
#
# Start block only for XML
#
#
# Defines whether to translate tags attributes.
# e.g. 0 or 1 (Default is 1)
#
# "translate_attributes" : 1,
#
# Defines whether to translate texts placed inside the tags.
# e.g. 0 or 1 (Default is 1)
#
# "translate_content" : 1,
#
# This is an array of strings, where each item is the XPaths to DOM element that should be imported
# e.g. ["/content/text", "/content/text[@value]"]
#
# "translatable_elements" : [],
#
# Defines whether to split long texts into smaller text segments.
# e.g. 0 or 1 (Default is 1)
#
# "content_segmentation" : 1,
#
# End block only for XML
#
#
# Start .properties block
#
#
# Defines whether single quote should be escaped by another single quote or backslash in exported translations.
# e.g. 0 or 1 or 2 or 3 (Default is 3)
# 0 - do not escape single quote;
# 1 - escape single quote by another single quote;
# 2 - escape single quote by backslash;
# 3 - escape single quote by another single quote only in strings containing variables ( {0} ).
#
# "escape_quotes" : 3,
#
# End .properties block
#
#
# Often software projects have custom names for locale directories. crowdin-cli allows you to map your own languages to be understandable by Crowdin.
#
#"languages_mapping" : {
# "two_letters_code" : {
# "crowdin_language_code" : "local_name"
# }
#},
#
# Is first line contains header?
# e.g. true or false
#
#"first_line_contains_header" : true,
#
# for spreadsheets
# e.g. "identifier,source_phrase,context,uk,ru,fr"
#
# "scheme" : "",
} }
] ]

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Konto „:name” aktualisiert', 'updated_account' => 'Konto „:name” aktualisiert',
'credit_card_options' => 'Kreditkartenoptionen', 'credit_card_options' => 'Kreditkartenoptionen',
'no_transactions_account' => 'Es liegen (in diesem Zeitraum) keine Buchungen für das Bestandskonto „:name” vor.', 'no_transactions_account' => 'Es liegen (in diesem Zeitraum) keine Buchungen für das Bestandskonto „:name” vor.',
'no_transactions_period' => 'Keine Buchungen (in diesem Zeitraum) vorhanden.',
'no_data_for_chart' => 'Es gibt derzeit (noch) nicht genügend Informationen, um dieses Diagramm zu generieren.', 'no_data_for_chart' => 'Es gibt derzeit (noch) nicht genügend Informationen, um dieses Diagramm zu generieren.',
'select_at_least_one_account' => 'Bitte mindestens ein Bestandskonto auswählen', 'select_at_least_one_account' => 'Bitte mindestens ein Bestandskonto auswählen',
'select_at_least_one_category' => 'Bitte mindestens eine Kategorie auswählen', 'select_at_least_one_category' => 'Bitte mindestens eine Kategorie auswählen',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Deine Konten', 'yourAccounts' => 'Deine Konten',
'your_accounts' => 'Kontenübersicht',
'category_overview' => 'Kategorieübersicht',
'expense_overview' => 'Übersicht der Aufwandskonten',
'revenue_overview' => 'Übersicht der Erlöskonten',
'budgetsAndSpending' => 'Budgets und Ausgaben', 'budgetsAndSpending' => 'Budgets und Ausgaben',
'budgets_and_spending' => 'Budgets und Ausgaben',
'go_to_budget' => 'Zu Budget „{budget}” wechseln',
'savings' => 'Erspartes', 'savings' => 'Erspartes',
'newWithdrawal' => 'Neue Ausgabe', 'newWithdrawal' => 'Neue Ausgabe',
'newDeposit' => 'Neue Einnahme', 'newDeposit' => 'Neue Einnahme',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Suchen...', 'searchPlaceholder' => 'Suchen...',
'version' => 'Version', 'version' => 'Version',
'dashboard' => 'Übersicht', 'dashboard' => 'Übersicht',
'available_budget' => 'Verfügbares Budget ({currency})',
'currencies' => 'Währungen', 'currencies' => 'Währungen',
'activity' => 'Aktivität',
'usage' => 'Verwendung',
'accounts' => 'Konten', 'accounts' => 'Konten',
'Asset account' => 'Bestandskonto', 'Asset account' => 'Bestandskonto',
'Default account' => 'Bestandskonto', 'Default account' => 'Bestandskonto',
@ -919,6 +929,7 @@ return [
'tools' => 'Extras', 'tools' => 'Extras',
'piggyBanks' => 'Sparschweine', 'piggyBanks' => 'Sparschweine',
'piggy_banks' => 'Sparschweine', 'piggy_banks' => 'Sparschweine',
'amount_x_of_y' => '{current} von {total}',
'bills' => 'Rechnungen', 'bills' => 'Rechnungen',
'withdrawal' => 'Ausgabe', 'withdrawal' => 'Ausgabe',
'opening_balance' => 'Eröffnungsbilanz', 'opening_balance' => 'Eröffnungsbilanz',
@ -1069,8 +1080,11 @@ return [
'period' => 'Zeitraum', 'period' => 'Zeitraum',
'balance' => 'Kontostand', 'balance' => 'Kontostand',
'sum' => 'Summe', 'sum' => 'Summe',
'summary' => 'Zusammenfasssung',
'average' => 'Durchschnitt', 'average' => 'Durchschnitt',
'balanceFor' => 'Kontostand für „:name”', 'balanceFor' => 'Kontostand für „:name”',
'no_tags_for_cloud' => 'Keine Schlagwörter zum Erstellen der Wolke',
'tag_cloud' => 'Schlagwortwolke',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Geld zum Sparschwein „:name” übertragen', 'add_money_to_piggy' => 'Geld zum Sparschwein „:name” übertragen',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Updated account ":name"', 'updated_account' => 'Updated account ":name"',
'credit_card_options' => 'Credit card options', 'credit_card_options' => 'Credit card options',
'no_transactions_account' => 'There are no transactions (in this period) for asset account ":name".', 'no_transactions_account' => 'There are no transactions (in this period) for asset account ":name".',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'There is not enough information (yet) to generate this chart.', 'no_data_for_chart' => 'There is not enough information (yet) to generate this chart.',
'select_at_least_one_account' => 'Please select at least one asset account', 'select_at_least_one_account' => 'Please select at least one asset account',
'select_at_least_one_category' => 'Please select at least one category', 'select_at_least_one_category' => 'Please select at least one category',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Your accounts', 'yourAccounts' => 'Your accounts',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Budgets and spending', 'budgetsAndSpending' => 'Budgets and spending',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Savings', 'savings' => 'Savings',
'newWithdrawal' => 'New expense', 'newWithdrawal' => 'New expense',
'newDeposit' => 'New deposit', 'newDeposit' => 'New deposit',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Search...', 'searchPlaceholder' => 'Search...',
'version' => 'Version', 'version' => 'Version',
'dashboard' => 'Dashboard', 'dashboard' => 'Dashboard',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Currencies', 'currencies' => 'Currencies',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Accounts', 'accounts' => 'Accounts',
'Asset account' => 'Asset account', 'Asset account' => 'Asset account',
'Default account' => 'Asset account', 'Default account' => 'Asset account',
@ -919,6 +929,7 @@ return [
'tools' => 'Tools', 'tools' => 'Tools',
'piggyBanks' => 'Piggy banks', 'piggyBanks' => 'Piggy banks',
'piggy_banks' => 'Piggy banks', 'piggy_banks' => 'Piggy banks',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Bills', 'bills' => 'Bills',
'withdrawal' => 'Withdrawal', 'withdrawal' => 'Withdrawal',
'opening_balance' => 'Opening balance', 'opening_balance' => 'Opening balance',
@ -1069,8 +1080,11 @@ return [
'period' => 'Period', 'period' => 'Period',
'balance' => 'Balance', 'balance' => 'Balance',
'sum' => 'Sum', 'sum' => 'Sum',
'summary' => 'Summary',
'average' => 'Average', 'average' => 'Average',
'balanceFor' => 'Balance for :name', 'balanceFor' => 'Balance for :name',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Add money to piggy bank ":name"', 'add_money_to_piggy' => 'Add money to piggy bank ":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Cuenta actualizada ":name"', 'updated_account' => 'Cuenta actualizada ":name"',
'credit_card_options' => 'Opciones de tarjeta de crédito', 'credit_card_options' => 'Opciones de tarjeta de crédito',
'no_transactions_account' => 'No hay transacciones ( en este periodo) para cuenta de activos ":name".', 'no_transactions_account' => 'No hay transacciones ( en este periodo) para cuenta de activos ":name".',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'No hay suficiente información (todavía) para generar este gráfico.', 'no_data_for_chart' => 'No hay suficiente información (todavía) para generar este gráfico.',
'select_at_least_one_account' => 'Please select at least one asset account', 'select_at_least_one_account' => 'Please select at least one asset account',
'select_at_least_one_category' => 'Please select at least one category', 'select_at_least_one_category' => 'Please select at least one category',
@ -879,7 +880,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Tus cuentas', 'yourAccounts' => 'Tus cuentas',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Presupuestos y gastos', 'budgetsAndSpending' => 'Presupuestos y gastos',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Ahorros', 'savings' => 'Ahorros',
'newWithdrawal' => 'Nuevo gasto', 'newWithdrawal' => 'Nuevo gasto',
'newDeposit' => 'Nuevo deposito', 'newDeposit' => 'Nuevo deposito',
@ -897,7 +904,10 @@ return [
'searchPlaceholder' => 'Buscar...', 'searchPlaceholder' => 'Buscar...',
'version' => 'Versión', 'version' => 'Versión',
'dashboard' => 'Panel de control', 'dashboard' => 'Panel de control',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Divisas', 'currencies' => 'Divisas',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Cuentas', 'accounts' => 'Cuentas',
'Asset account' => 'Cuenta de activos', 'Asset account' => 'Cuenta de activos',
'Default account' => 'Cuenta de activos', 'Default account' => 'Cuenta de activos',
@ -920,6 +930,7 @@ return [
'tools' => 'Tools', 'tools' => 'Tools',
'piggyBanks' => 'Huchas', 'piggyBanks' => 'Huchas',
'piggy_banks' => 'Piggy banks', 'piggy_banks' => 'Piggy banks',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Facturas', 'bills' => 'Facturas',
'withdrawal' => 'Retiro', 'withdrawal' => 'Retiro',
'opening_balance' => 'Saldo inicial', 'opening_balance' => 'Saldo inicial',
@ -1070,8 +1081,11 @@ return [
'period' => 'Período', 'period' => 'Período',
'balance' => 'Balance', 'balance' => 'Balance',
'sum' => 'Suma', 'sum' => 'Suma',
'summary' => 'Summary',
'average' => 'Promedio', 'average' => 'Promedio',
'balanceFor' => 'Saldo por :name', 'balanceFor' => 'Saldo por :name',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Añadir dinero a la alcancía ":name"', 'add_money_to_piggy' => 'Añadir dinero a la alcancía ":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Compte ":name" mis à jour', 'updated_account' => 'Compte ":name" mis à jour',
'credit_card_options' => 'Cartes de crédit', 'credit_card_options' => 'Cartes de crédit',
'no_transactions_account' => 'Il n\'y a pas de transaction (sur cette période) pour le compte d\'actif ":name".', 'no_transactions_account' => 'Il n\'y a pas de transaction (sur cette période) pour le compte d\'actif ":name".',
'no_transactions_period' => 'Il n\'y a aucune transaction (sur cette période).',
'no_data_for_chart' => 'Il n\'y a pas assez d\'informations (pour le moment) pour générer ce graphique.', 'no_data_for_chart' => 'Il n\'y a pas assez d\'informations (pour le moment) pour générer ce graphique.',
'select_at_least_one_account' => 'Merci de sélectionner au moins un compte d\'actif', 'select_at_least_one_account' => 'Merci de sélectionner au moins un compte d\'actif',
'select_at_least_one_category' => 'Merci de sélectionner au moins une catégorie', 'select_at_least_one_category' => 'Merci de sélectionner au moins une catégorie',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Vos comptes', 'yourAccounts' => 'Vos comptes',
'your_accounts' => 'Aperçu de votre compte',
'category_overview' => 'Aperçu des catégories',
'expense_overview' => 'Aperçu des comptes de dépense',
'revenue_overview' => 'Aperçu des comptes de revenu',
'budgetsAndSpending' => 'Budgets et dépenses', 'budgetsAndSpending' => 'Budgets et dépenses',
'budgets_and_spending' => 'Budgets et dépenses',
'go_to_budget' => 'Aller au budget "{budget}"',
'savings' => 'Épargne', 'savings' => 'Épargne',
'newWithdrawal' => 'Nouvelle dépense', 'newWithdrawal' => 'Nouvelle dépense',
'newDeposit' => 'Nouveau dépôt', 'newDeposit' => 'Nouveau dépôt',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Rechercher...', 'searchPlaceholder' => 'Rechercher...',
'version' => 'Version', 'version' => 'Version',
'dashboard' => 'Tableau de Bord', 'dashboard' => 'Tableau de Bord',
'available_budget' => 'Budget disponible ({currency})',
'currencies' => 'Devises', 'currencies' => 'Devises',
'activity' => 'Activité',
'usage' => 'Utilisation',
'accounts' => 'Comptes', 'accounts' => 'Comptes',
'Asset account' => 'Compte dactif', 'Asset account' => 'Compte dactif',
'Default account' => 'Compte dactif', 'Default account' => 'Compte dactif',
@ -919,6 +929,7 @@ return [
'tools' => 'Outils', 'tools' => 'Outils',
'piggyBanks' => 'Tirelires', 'piggyBanks' => 'Tirelires',
'piggy_banks' => 'Tirelires', 'piggy_banks' => 'Tirelires',
'amount_x_of_y' => '{current} sur {total}',
'bills' => 'Factures', 'bills' => 'Factures',
'withdrawal' => 'Dépense', 'withdrawal' => 'Dépense',
'opening_balance' => 'Solde d\'ouverture', 'opening_balance' => 'Solde d\'ouverture',
@ -1069,8 +1080,11 @@ return [
'period' => 'Période', 'period' => 'Période',
'balance' => 'Solde', 'balance' => 'Solde',
'sum' => 'Somme', 'sum' => 'Somme',
'summary' => 'Résumé',
'average' => 'Moyenne', 'average' => 'Moyenne',
'balanceFor' => 'Solde pour :name', 'balanceFor' => 'Solde pour :name',
'no_tags_for_cloud' => 'Aucun tag pour générer un nuage',
'tag_cloud' => 'Nuage de tags',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Ajouter de largent à la tirelire ":name"', 'add_money_to_piggy' => 'Ajouter de largent à la tirelire ":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Memperbarui akun ":name"', 'updated_account' => 'Memperbarui akun ":name"',
'credit_card_options' => 'Pilihan kartu kredit', 'credit_card_options' => 'Pilihan kartu kredit',
'no_transactions_account' => 'Tidak ada transaksi (dalam periode ini) untuk akun aset ":name".', 'no_transactions_account' => 'Tidak ada transaksi (dalam periode ini) untuk akun aset ":name".',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'Tidak ada informasi yang cukup (belum) untuk menghasilkan grafik ini.', 'no_data_for_chart' => 'Tidak ada informasi yang cukup (belum) untuk menghasilkan grafik ini.',
'select_at_least_one_account' => 'Please select at least one asset account', 'select_at_least_one_account' => 'Please select at least one asset account',
'select_at_least_one_category' => 'Please select at least one category', 'select_at_least_one_category' => 'Please select at least one category',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Akun anda', 'yourAccounts' => 'Akun anda',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Anggaran dan belanja', 'budgetsAndSpending' => 'Anggaran dan belanja',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Tabungan', 'savings' => 'Tabungan',
'newWithdrawal' => 'Biaya baru', 'newWithdrawal' => 'Biaya baru',
'newDeposit' => 'Deposit baru', 'newDeposit' => 'Deposit baru',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Pencarian...', 'searchPlaceholder' => 'Pencarian...',
'version' => 'Versi', 'version' => 'Versi',
'dashboard' => 'Dasbor', 'dashboard' => 'Dasbor',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Mata uang', 'currencies' => 'Mata uang',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Akun', 'accounts' => 'Akun',
'Asset account' => 'Akun aset', 'Asset account' => 'Akun aset',
'Default account' => 'Akun aset', 'Default account' => 'Akun aset',
@ -919,6 +929,7 @@ return [
'tools' => 'Tools', 'tools' => 'Tools',
'piggyBanks' => 'Celengan babi', 'piggyBanks' => 'Celengan babi',
'piggy_banks' => 'Piggy banks', 'piggy_banks' => 'Piggy banks',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Tagihan', 'bills' => 'Tagihan',
'withdrawal' => 'Penarikan', 'withdrawal' => 'Penarikan',
'opening_balance' => 'Saldo awal', 'opening_balance' => 'Saldo awal',
@ -1069,8 +1080,11 @@ return [
'period' => 'Periode', 'period' => 'Periode',
'balance' => 'Keseimbangan', 'balance' => 'Keseimbangan',
'sum' => 'Jumlah', 'sum' => 'Jumlah',
'summary' => 'Summary',
'average' => 'Rata-rata', 'average' => 'Rata-rata',
'balanceFor' => 'Saldo untuk :name', 'balanceFor' => 'Saldo untuk :name',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Tambahkan uang ke celengan ":name"', 'add_money_to_piggy' => 'Tambahkan uang ke celengan ":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Aggiorna conto ":name"', 'updated_account' => 'Aggiorna conto ":name"',
'credit_card_options' => 'Opzioni carta di credito', 'credit_card_options' => 'Opzioni carta di credito',
'no_transactions_account' => 'Non ci sono transazioni (in questo periodo) per il conto attività ":name".', 'no_transactions_account' => 'Non ci sono transazioni (in questo periodo) per il conto attività ":name".',
'no_transactions_period' => 'Non ci sono transazioni (in questo periodo).',
'no_data_for_chart' => 'Non ci sono (ancora) abbastanza informazioni per generare questo grafico.', 'no_data_for_chart' => 'Non ci sono (ancora) abbastanza informazioni per generare questo grafico.',
'select_at_least_one_account' => 'Seleziona almeno un conto attività', 'select_at_least_one_account' => 'Seleziona almeno un conto attività',
'select_at_least_one_category' => 'Seleziona almeno una categoria', 'select_at_least_one_category' => 'Seleziona almeno una categoria',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'I tuoi conti', 'yourAccounts' => 'I tuoi conti',
'your_accounts' => 'Panoramica del tuo account',
'category_overview' => 'Panoramica della categoria',
'expense_overview' => 'Panoramica del conto spese',
'revenue_overview' => 'Panoramica del conto entrate',
'budgetsAndSpending' => 'Budget e spese', 'budgetsAndSpending' => 'Budget e spese',
'budgets_and_spending' => 'Budget e spese',
'go_to_budget' => 'Vai al budget "{budget}"',
'savings' => 'Risparmi', 'savings' => 'Risparmi',
'newWithdrawal' => 'Nuova uscita', 'newWithdrawal' => 'Nuova uscita',
'newDeposit' => 'Nuova entrata', 'newDeposit' => 'Nuova entrata',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Cerca...', 'searchPlaceholder' => 'Cerca...',
'version' => 'Versione', 'version' => 'Versione',
'dashboard' => 'Cruscotto', 'dashboard' => 'Cruscotto',
'available_budget' => 'Budget disponibile ({currency})',
'currencies' => 'Valute', 'currencies' => 'Valute',
'activity' => 'Attività',
'usage' => 'Uso',
'accounts' => 'Conti', 'accounts' => 'Conti',
'Asset account' => 'Conto attività', 'Asset account' => 'Conto attività',
'Default account' => 'Conto attività', 'Default account' => 'Conto attività',
@ -919,6 +929,7 @@ return [
'tools' => 'Strumenti', 'tools' => 'Strumenti',
'piggyBanks' => 'Salvadanai', 'piggyBanks' => 'Salvadanai',
'piggy_banks' => 'Salvadanai', 'piggy_banks' => 'Salvadanai',
'amount_x_of_y' => '{current} di {total}',
'bills' => 'Bollette', 'bills' => 'Bollette',
'withdrawal' => 'Uscita', 'withdrawal' => 'Uscita',
'opening_balance' => 'Saldo di apertura', 'opening_balance' => 'Saldo di apertura',
@ -1069,8 +1080,11 @@ return [
'period' => 'Periodo', 'period' => 'Periodo',
'balance' => 'Saldo', 'balance' => 'Saldo',
'sum' => 'Somma', 'sum' => 'Somma',
'summary' => 'Riepilogo',
'average' => 'Media', 'average' => 'Media',
'balanceFor' => 'Saldo per :name', 'balanceFor' => 'Saldo per :name',
'no_tags_for_cloud' => 'Nessun tag per generare la nuvola',
'tag_cloud' => 'Nuvola dei tag',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Aggiungi denaro al salvadanaio":name"', 'add_money_to_piggy' => 'Aggiungi denaro al salvadanaio":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Rekening ":name" geüpdatet', 'updated_account' => 'Rekening ":name" geüpdatet',
'credit_card_options' => 'Opties voor credit cards', 'credit_card_options' => 'Opties voor credit cards',
'no_transactions_account' => 'Betaalrekening ":name" heeft geen transacties (in deze periode).', 'no_transactions_account' => 'Betaalrekening ":name" heeft geen transacties (in deze periode).',
'no_transactions_period' => 'Er zijn geen transacties (in deze periode).',
'no_data_for_chart' => 'Er is (nog) niet genoeg informatie om deze grafiek te tekenen.', 'no_data_for_chart' => 'Er is (nog) niet genoeg informatie om deze grafiek te tekenen.',
'select_at_least_one_account' => 'Selecteer ten minste één betaalrekening', 'select_at_least_one_account' => 'Selecteer ten minste één betaalrekening',
'select_at_least_one_category' => 'Selecteer ten minste één categorie', 'select_at_least_one_category' => 'Selecteer ten minste één categorie',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Je betaalrekeningen', 'yourAccounts' => 'Je betaalrekeningen',
'your_accounts' => 'Je rekeningoverzicht',
'category_overview' => 'Categorieoverzicht',
'expense_overview' => 'Crediteurenoverzicht',
'revenue_overview' => 'Debiteurenoverzicht',
'budgetsAndSpending' => 'Budgetten en uitgaven', 'budgetsAndSpending' => 'Budgetten en uitgaven',
'budgets_and_spending' => 'Budgetten en uitgaven',
'go_to_budget' => 'Ga naar budget "{budget}"',
'savings' => 'Sparen', 'savings' => 'Sparen',
'newWithdrawal' => 'Nieuwe uitgave', 'newWithdrawal' => 'Nieuwe uitgave',
'newDeposit' => 'Nieuwe inkomsten', 'newDeposit' => 'Nieuwe inkomsten',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Zoeken...', 'searchPlaceholder' => 'Zoeken...',
'version' => 'Versie', 'version' => 'Versie',
'dashboard' => 'Dashboard', 'dashboard' => 'Dashboard',
'available_budget' => 'Beschikbaar budget ({currency})',
'currencies' => 'Valuta', 'currencies' => 'Valuta',
'activity' => 'Activiteit',
'usage' => 'Gebruik',
'accounts' => 'Rekeningen', 'accounts' => 'Rekeningen',
'Asset account' => 'Betaalrekening', 'Asset account' => 'Betaalrekening',
'Default account' => 'Betaalrekening', 'Default account' => 'Betaalrekening',
@ -919,6 +929,7 @@ return [
'tools' => 'Extra', 'tools' => 'Extra',
'piggyBanks' => 'Spaarpotjes', 'piggyBanks' => 'Spaarpotjes',
'piggy_banks' => 'Spaarpotjes', 'piggy_banks' => 'Spaarpotjes',
'amount_x_of_y' => '{current} van {total}',
'bills' => 'Contracten', 'bills' => 'Contracten',
'withdrawal' => 'Uitgave', 'withdrawal' => 'Uitgave',
'opening_balance' => 'Startsaldo', 'opening_balance' => 'Startsaldo',
@ -1069,8 +1080,11 @@ return [
'period' => 'Periode', 'period' => 'Periode',
'balance' => 'Saldo', 'balance' => 'Saldo',
'sum' => 'Som', 'sum' => 'Som',
'summary' => 'Samenvatting',
'average' => 'Gemiddeld', 'average' => 'Gemiddeld',
'balanceFor' => 'Saldo op :name', 'balanceFor' => 'Saldo op :name',
'no_tags_for_cloud' => 'Geen tags om cloud te genereren',
'tag_cloud' => 'Tagcloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Stop geld in spaarpotje ":name"', 'add_money_to_piggy' => 'Stop geld in spaarpotje ":name"',

View File

@ -25,7 +25,7 @@ declare(strict_types=1);
return [ return [
'iban' => 'Dit is niet een geldige IBAN.', 'iban' => 'Dit is niet een geldige IBAN.',
'zero_or_more' => 'De waarde mag niet negatief zijn.', 'zero_or_more' => 'De waarde mag niet negatief zijn.',
'date_or_time' => 'The value must be a valid date or time value (ISO 8601).', 'date_or_time' => 'De waarde moet een geldige datum of tijdwaarde zijn (ISO 8601).',
'source_equals_destination' => 'De bronrekening is gelijk aan de doelrekening.', 'source_equals_destination' => 'De bronrekening is gelijk aan de doelrekening.',
'unique_account_number_for_user' => 'Het lijkt erop dat dit rekeningnummer al in gebruik is.', 'unique_account_number_for_user' => 'Het lijkt erop dat dit rekeningnummer al in gebruik is.',
'unique_iban_for_user' => 'Het lijkt erop dat deze IBAN al in gebruik is.', 'unique_iban_for_user' => 'Het lijkt erop dat deze IBAN al in gebruik is.',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Zaktualizowano konto ":name"', 'updated_account' => 'Zaktualizowano konto ":name"',
'credit_card_options' => 'Opcje karty kredytowej', 'credit_card_options' => 'Opcje karty kredytowej',
'no_transactions_account' => 'Brak transakcji (w tym okresie) na koncie aktywów ":name".', 'no_transactions_account' => 'Brak transakcji (w tym okresie) na koncie aktywów ":name".',
'no_transactions_period' => 'Nie ma żadnych transakcji (w tym okresie).',
'no_data_for_chart' => 'Nie ma wystarczająco dużo informacji (póki co), aby wygenerować ten wykres.', 'no_data_for_chart' => 'Nie ma wystarczająco dużo informacji (póki co), aby wygenerować ten wykres.',
'select_at_least_one_account' => 'Wybierz proszę co najmniej jedno konto aktywów', 'select_at_least_one_account' => 'Wybierz proszę co najmniej jedno konto aktywów',
'select_at_least_one_category' => 'Wybierz proszę co najmniej jedną kategorię', 'select_at_least_one_category' => 'Wybierz proszę co najmniej jedną kategorię',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Twoje konta', 'yourAccounts' => 'Twoje konta',
'your_accounts' => 'Przegląd Twoich kont',
'category_overview' => 'Przegląd kategorii',
'expense_overview' => 'Przegląd kont wydatków',
'revenue_overview' => 'Przegląd kont przychodów',
'budgetsAndSpending' => 'Budżety i wydatki', 'budgetsAndSpending' => 'Budżety i wydatki',
'budgets_and_spending' => 'Budżety i wydatki',
'go_to_budget' => 'Idź do budżetu "{budget}"',
'savings' => 'Oszczędności', 'savings' => 'Oszczędności',
'newWithdrawal' => 'Nowy wydatek', 'newWithdrawal' => 'Nowy wydatek',
'newDeposit' => 'Nowa wpłata', 'newDeposit' => 'Nowa wpłata',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Szukaj...', 'searchPlaceholder' => 'Szukaj...',
'version' => 'Wersja', 'version' => 'Wersja',
'dashboard' => 'Kokpit', 'dashboard' => 'Kokpit',
'available_budget' => 'Dostępne budżety ({currency})',
'currencies' => 'Waluty', 'currencies' => 'Waluty',
'activity' => 'Aktywność',
'usage' => 'Użycie',
'accounts' => 'Konta', 'accounts' => 'Konta',
'Asset account' => 'Konto aktywów', 'Asset account' => 'Konto aktywów',
'Default account' => 'Konto aktywów', 'Default account' => 'Konto aktywów',
@ -919,6 +929,7 @@ return [
'tools' => 'Narzędzia', 'tools' => 'Narzędzia',
'piggyBanks' => 'Skarbonki', 'piggyBanks' => 'Skarbonki',
'piggy_banks' => 'Skarbonki', 'piggy_banks' => 'Skarbonki',
'amount_x_of_y' => '{current} z {total}',
'bills' => 'Rachunki', 'bills' => 'Rachunki',
'withdrawal' => 'Wypłata', 'withdrawal' => 'Wypłata',
'opening_balance' => 'Saldo początkowe', 'opening_balance' => 'Saldo początkowe',
@ -1069,8 +1080,11 @@ return [
'period' => 'Okres', 'period' => 'Okres',
'balance' => 'Saldo', 'balance' => 'Saldo',
'sum' => 'Suma', 'sum' => 'Suma',
'summary' => 'Podsumowanie',
'average' => 'Średno', 'average' => 'Średno',
'balanceFor' => 'Saldo dla :name', 'balanceFor' => 'Saldo dla :name',
'no_tags_for_cloud' => 'Brak tagów do wygenerowania chmury',
'tag_cloud' => 'Chmura tagów',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Dodaj pieniądze do skarbonki ":name"', 'add_money_to_piggy' => 'Dodaj pieniądze do skarbonki ":name"',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Conta ":name" atualizada', 'updated_account' => 'Conta ":name" atualizada',
'credit_card_options' => 'Opções de cartão de crédito', 'credit_card_options' => 'Opções de cartão de crédito',
'no_transactions_account' => 'Não há transações (neste período) para a conta ativa ":name".', 'no_transactions_account' => 'Não há transações (neste período) para a conta ativa ":name".',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'Não há informações suficientes (ainda) para gerar este gráfico.', 'no_data_for_chart' => 'Não há informações suficientes (ainda) para gerar este gráfico.',
'select_at_least_one_account' => 'Por favor selecciona, pelo menos, uma conta de activos', 'select_at_least_one_account' => 'Por favor selecciona, pelo menos, uma conta de activos',
'select_at_least_one_category' => 'Por favor selecciona, pelo menos, uma categoria', 'select_at_least_one_category' => 'Por favor selecciona, pelo menos, uma categoria',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Suas contas', 'yourAccounts' => 'Suas contas',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Orçamentos e despesas', 'budgetsAndSpending' => 'Orçamentos e despesas',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Poupanças', 'savings' => 'Poupanças',
'newWithdrawal' => 'Nova despesa', 'newWithdrawal' => 'Nova despesa',
'newDeposit' => 'Novo depósito', 'newDeposit' => 'Novo depósito',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Pesquisar...', 'searchPlaceholder' => 'Pesquisar...',
'version' => 'Versão', 'version' => 'Versão',
'dashboard' => 'Painel de Controle', 'dashboard' => 'Painel de Controle',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Moedas', 'currencies' => 'Moedas',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Contas', 'accounts' => 'Contas',
'Asset account' => 'Conta de ativo', 'Asset account' => 'Conta de ativo',
'Default account' => 'Conta de ativo', 'Default account' => 'Conta de ativo',
@ -919,6 +929,7 @@ return [
'tools' => 'Tools', 'tools' => 'Tools',
'piggyBanks' => 'Cofrinhos', 'piggyBanks' => 'Cofrinhos',
'piggy_banks' => 'Piggy banks', 'piggy_banks' => 'Piggy banks',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Faturas', 'bills' => 'Faturas',
'withdrawal' => 'Retirada', 'withdrawal' => 'Retirada',
'opening_balance' => 'Saldo inicial', 'opening_balance' => 'Saldo inicial',
@ -1069,8 +1080,11 @@ return [
'period' => 'Período', 'period' => 'Período',
'balance' => 'Saldo', 'balance' => 'Saldo',
'sum' => 'Soma', 'sum' => 'Soma',
'summary' => 'Summary',
'average' => 'Média', 'average' => 'Média',
'balanceFor' => 'Saldo para ":name"', 'balanceFor' => 'Saldo para ":name"',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Adicionar dinheiro ao cofrinho ":name"', 'add_money_to_piggy' => 'Adicionar dinheiro ao cofrinho ":name"',

View File

@ -24,9 +24,9 @@ declare(strict_types=1);
return [ return [
// profile // profile
'personal_access_tokens' => 'Персональный токен для доступа', 'personal_access_tokens' => 'Персональные токены доступа',
// bills: // bills:
'not_expected_period' => 'Не ожидается в данном периоде', 'not_expected_period' => 'Не ожидается в данном периоде',
'not_or_not_yet' => 'Пока нет', 'not_or_not_yet' => 'Нет (пока)',
]; ];

View File

@ -765,6 +765,7 @@ return [
'updated_account' => 'Обновить счёт ":name"', 'updated_account' => 'Обновить счёт ":name"',
'credit_card_options' => 'Параметры кредитной карты', 'credit_card_options' => 'Параметры кредитной карты',
'no_transactions_account' => 'Для основного счёта ":name" нет транзакций (в этом периоде).', 'no_transactions_account' => 'Для основного счёта ":name" нет транзакций (в этом периоде).',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'Недостаточно информации (пока) для построения этой диаграммы.', 'no_data_for_chart' => 'Недостаточно информации (пока) для построения этой диаграммы.',
'select_at_least_one_account' => 'Please select at least one asset account', 'select_at_least_one_account' => 'Please select at least one asset account',
'select_at_least_one_category' => 'Пожалуйста, выберите по крайней мере одну категорию', 'select_at_least_one_category' => 'Пожалуйста, выберите по крайней мере одну категорию',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => 'Ваши счета', 'yourAccounts' => 'Ваши счета',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Бюджеты и расходы', 'budgetsAndSpending' => 'Бюджеты и расходы',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Экономия', 'savings' => 'Экономия',
'newWithdrawal' => 'Новый расход', 'newWithdrawal' => 'Новый расход',
'newDeposit' => 'Новый доход', 'newDeposit' => 'Новый доход',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => 'Поиск...', 'searchPlaceholder' => 'Поиск...',
'version' => 'Версия', 'version' => 'Версия',
'dashboard' => 'Сводка', 'dashboard' => 'Сводка',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Валюты', 'currencies' => 'Валюты',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Счета', 'accounts' => 'Счета',
'Asset account' => 'Активный счёт', 'Asset account' => 'Активный счёт',
'Default account' => 'Основной счёт', 'Default account' => 'Основной счёт',
@ -919,6 +929,7 @@ return [
'tools' => 'Инструменты', 'tools' => 'Инструменты',
'piggyBanks' => 'Копилки', 'piggyBanks' => 'Копилки',
'piggy_banks' => 'Копилки', 'piggy_banks' => 'Копилки',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Счета к оплате', 'bills' => 'Счета к оплате',
'withdrawal' => 'Расход', 'withdrawal' => 'Расход',
'opening_balance' => 'Начальный баланс', 'opening_balance' => 'Начальный баланс',
@ -1069,8 +1080,11 @@ return [
'period' => 'Период', 'period' => 'Период',
'balance' => 'Бaлaнc', 'balance' => 'Бaлaнc',
'sum' => 'Сумма', 'sum' => 'Сумма',
'summary' => 'Summary',
'average' => 'Среднее значение', 'average' => 'Среднее значение',
'balanceFor' => 'Баланс для :name', 'balanceFor' => 'Баланс для :name',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => 'Добавить деньги в копилку ":name"', 'add_money_to_piggy' => 'Добавить деньги в копилку ":name"',

View File

@ -768,6 +768,7 @@ işlemlerin kontrol edildiğini lütfen unutmayın.',
'updated_account' => 'Güncellenmiş hesap ismi ":name"', 'updated_account' => 'Güncellenmiş hesap ismi ":name"',
'credit_card_options' => 'Kredi kart seçenekleri', 'credit_card_options' => 'Kredi kart seçenekleri',
'no_transactions_account' => 'Aktif hesapta herhangi bir işlem yok (bu dönem için) ":name".', 'no_transactions_account' => 'Aktif hesapta herhangi bir işlem yok (bu dönem için) ":name".',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => 'Bu grafiği oluşturmak için yeterli bilgi (henüz) yok.', 'no_data_for_chart' => 'Bu grafiği oluşturmak için yeterli bilgi (henüz) yok.',
'select_at_least_one_account' => 'Please select at least one asset account', 'select_at_least_one_account' => 'Please select at least one asset account',
'select_at_least_one_category' => 'Please select at least one category', 'select_at_least_one_category' => 'Please select at least one category',
@ -881,7 +882,13 @@ işlemlerin kontrol edildiğini lütfen unutmayın.',
// home page: // home page:
'yourAccounts' => 'Hesaplarınız', 'yourAccounts' => 'Hesaplarınız',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => 'Bütçe ve Harcama', 'budgetsAndSpending' => 'Bütçe ve Harcama',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => 'Birikim', 'savings' => 'Birikim',
'newWithdrawal' => 'Yeni gider', 'newWithdrawal' => 'Yeni gider',
'newDeposit' => 'Yeni mevduat', 'newDeposit' => 'Yeni mevduat',
@ -899,7 +906,10 @@ işlemlerin kontrol edildiğini lütfen unutmayın.',
'searchPlaceholder' => 'Aranıyor...', 'searchPlaceholder' => 'Aranıyor...',
'version' => 'Versiyon', 'version' => 'Versiyon',
'dashboard' => 'Gösterge paneli', 'dashboard' => 'Gösterge paneli',
'available_budget' => 'Available budget ({currency})',
'currencies' => 'Kurlar', 'currencies' => 'Kurlar',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => 'Hesaplar', 'accounts' => 'Hesaplar',
'Asset account' => 'Varlık hesabı', 'Asset account' => 'Varlık hesabı',
'Default account' => 'Varlık hesabı', 'Default account' => 'Varlık hesabı',
@ -922,6 +932,7 @@ işlemlerin kontrol edildiğini lütfen unutmayın.',
'tools' => 'Tools', 'tools' => 'Tools',
'piggyBanks' => 'Kumbara', 'piggyBanks' => 'Kumbara',
'piggy_banks' => 'Piggy banks', 'piggy_banks' => 'Piggy banks',
'amount_x_of_y' => '{current} of {total}',
'bills' => 'Fatura', 'bills' => 'Fatura',
'withdrawal' => 'Para Çekme', 'withdrawal' => 'Para Çekme',
'opening_balance' => 'Açılış bakiyesi', 'opening_balance' => 'Açılış bakiyesi',
@ -1072,8 +1083,11 @@ işlemlerin kontrol edildiğini lütfen unutmayın.',
'period' => 'Dönem', 'period' => 'Dönem',
'balance' => 'Denge', 'balance' => 'Denge',
'sum' => 'Toplam', 'sum' => 'Toplam',
'summary' => 'Summary',
'average' => 'Ortalama', 'average' => 'Ortalama',
'balanceFor' => ':name için bakiye', 'balanceFor' => ':name için bakiye',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => '":name" kumbarasına paraa ekle', 'add_money_to_piggy' => '":name" kumbarasına paraa ekle',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => '帐户 ":name" 已更新', 'updated_account' => '帐户 ":name" 已更新',
'credit_card_options' => '信用卡选项', 'credit_card_options' => '信用卡选项',
'no_transactions_account' => '资产帐户 ":name" 没有交易 (在此区间)。', 'no_transactions_account' => '资产帐户 ":name" 没有交易 (在此区间)。',
'no_transactions_period' => 'There are no transactions (in this period).',
'no_data_for_chart' => '目前 (尚) 没有足够资讯以产生此图表。', 'no_data_for_chart' => '目前 (尚) 没有足够资讯以产生此图表。',
'select_at_least_one_account' => '选择至少一个资产帐户', 'select_at_least_one_account' => '选择至少一个资产帐户',
'select_at_least_one_category' => '选择至少一个分类', 'select_at_least_one_category' => '选择至少一个分类',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => '您的帐户', 'yourAccounts' => '您的帐户',
'your_accounts' => 'Your account overview',
'category_overview' => 'Category overview',
'expense_overview' => 'Expense account overview',
'revenue_overview' => 'Revenue account overview',
'budgetsAndSpending' => '预算与花费', 'budgetsAndSpending' => '预算与花费',
'budgets_and_spending' => 'Budgets and spending',
'go_to_budget' => 'Go to budget "{budget}"',
'savings' => '储蓄', 'savings' => '储蓄',
'newWithdrawal' => '新支出', 'newWithdrawal' => '新支出',
'newDeposit' => '新存款', 'newDeposit' => '新存款',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => '搜寻中…', 'searchPlaceholder' => '搜寻中…',
'version' => '版本', 'version' => '版本',
'dashboard' => '监控面板', 'dashboard' => '监控面板',
'available_budget' => 'Available budget ({currency})',
'currencies' => '货币', 'currencies' => '货币',
'activity' => 'Activity',
'usage' => 'Usage',
'accounts' => '帐户', 'accounts' => '帐户',
'Asset account' => '资产帐户', 'Asset account' => '资产帐户',
'Default account' => '资产帐户', 'Default account' => '资产帐户',
@ -919,6 +929,7 @@ return [
'tools' => '工具', 'tools' => '工具',
'piggyBanks' => '小猪存钱罐', 'piggyBanks' => '小猪存钱罐',
'piggy_banks' => '小猪存钱罐', 'piggy_banks' => '小猪存钱罐',
'amount_x_of_y' => '{current} of {total}',
'bills' => '帐单', 'bills' => '帐单',
'withdrawal' => '提款', 'withdrawal' => '提款',
'opening_balance' => '开户余额', 'opening_balance' => '开户余额',
@ -1069,8 +1080,11 @@ return [
'period' => '区间', 'period' => '区间',
'balance' => '余额', 'balance' => '余额',
'sum' => '总计', 'sum' => '总计',
'summary' => 'Summary',
'average' => '平均', 'average' => '平均',
'balanceFor' => ':name 的余额', 'balanceFor' => ':name 的余额',
'no_tags_for_cloud' => 'No tags to generate cloud',
'tag_cloud' => 'Tag cloud',
// piggy banks: // piggy banks:
'add_money_to_piggy' => '新增金钱至小猪存钱罐 “:name”', 'add_money_to_piggy' => '新增金钱至小猪存钱罐 “:name”',

View File

@ -765,6 +765,7 @@ return [
'updated_account' => '帳戶 ":name" 已更新', 'updated_account' => '帳戶 ":name" 已更新',
'credit_card_options' => '信用卡選項', 'credit_card_options' => '信用卡選項',
'no_transactions_account' => '資產帳戶 ":name" 沒有交易 (在此區間)。', 'no_transactions_account' => '資產帳戶 ":name" 沒有交易 (在此區間)。',
'no_transactions_period' => '沒有交易記錄 (在此期間)。',
'no_data_for_chart' => '目前 (尚) 沒有足夠資訊以產生此圖表。', 'no_data_for_chart' => '目前 (尚) 沒有足夠資訊以產生此圖表。',
'select_at_least_one_account' => '選擇至少一個資產帳戶', 'select_at_least_one_account' => '選擇至少一個資產帳戶',
'select_at_least_one_category' => '選擇至少一個分類', 'select_at_least_one_category' => '選擇至少一個分類',
@ -878,7 +879,13 @@ return [
// home page: // home page:
'yourAccounts' => '您的帳戶', 'yourAccounts' => '您的帳戶',
'your_accounts' => '您的帳戶概覽',
'category_overview' => '分類概覽',
'expense_overview' => '支出帳戶概覽',
'revenue_overview' => '收入帳戶概覽',
'budgetsAndSpending' => '預算與花費', 'budgetsAndSpending' => '預算與花費',
'budgets_and_spending' => '預算與花費',
'go_to_budget' => '前往預算 “{budget}”',
'savings' => '儲蓄', 'savings' => '儲蓄',
'newWithdrawal' => '新支出', 'newWithdrawal' => '新支出',
'newDeposit' => '新存款', 'newDeposit' => '新存款',
@ -896,7 +903,10 @@ return [
'searchPlaceholder' => '搜尋中…', 'searchPlaceholder' => '搜尋中…',
'version' => '版本', 'version' => '版本',
'dashboard' => '監控面板', 'dashboard' => '監控面板',
'available_budget' => '可用預算 ({currency})',
'currencies' => '貨幣', 'currencies' => '貨幣',
'activity' => '活動',
'usage' => '使用',
'accounts' => '帳戶', 'accounts' => '帳戶',
'Asset account' => '資產帳戶', 'Asset account' => '資產帳戶',
'Default account' => '資產帳戶', 'Default account' => '資產帳戶',
@ -919,6 +929,7 @@ return [
'tools' => '工具', 'tools' => '工具',
'piggyBanks' => '小豬撲滿', 'piggyBanks' => '小豬撲滿',
'piggy_banks' => '小豬撲滿', 'piggy_banks' => '小豬撲滿',
'amount_x_of_y' => '{current} 分之 {total}',
'bills' => '帳單', 'bills' => '帳單',
'withdrawal' => '提款', 'withdrawal' => '提款',
'opening_balance' => '開戶餘額', 'opening_balance' => '開戶餘額',
@ -1069,8 +1080,11 @@ return [
'period' => '區間', 'period' => '區間',
'balance' => '餘額', 'balance' => '餘額',
'sum' => '總計', 'sum' => '總計',
'summary' => '概要',
'average' => '平均', 'average' => '平均',
'balanceFor' => ':name 的餘額', 'balanceFor' => ':name 的餘額',
'no_tags_for_cloud' => '沒有產生雲的標籤',
'tag_cloud' => '標籤雲',
// piggy banks: // piggy banks:
'add_money_to_piggy' => '新增金錢至小豬撲滿 “:name”', 'add_money_to_piggy' => '新增金錢至小豬撲滿 “:name”',
@ -1225,7 +1239,7 @@ return [
'split_this_transfer' => '拆分這筆轉帳', 'split_this_transfer' => '拆分這筆轉帳',
'cannot_edit_multiple_source' => '您不能使用描述 ":description" 來編輯已拆分的交易 #:id因為該交易包含數筆來源帳戶。', 'cannot_edit_multiple_source' => '您不能使用描述 ":description" 來編輯已拆分的交易 #:id因為該交易包含數筆來源帳戶。',
'cannot_edit_multiple_dest' => '您不能使用描述 ":description" 來編輯已拆分的交易 #:id因為該交易包含數筆目標帳戶。', 'cannot_edit_multiple_dest' => '您不能使用描述 ":description" 來編輯已拆分的交易 #:id因為該交易包含數筆目標帳戶。',
'cannot_edit_reconciled' => '你不能这样編輯#:id交易因为:description已经被用来关联', 'cannot_edit_reconciled' => '您無法編輯編號 #:id 、簡介為 “:description” 的交易,因為它已被標記為已對帳。',
'cannot_edit_opening_balance' => '您無法編輯一個帳戶的開戶餘額。', 'cannot_edit_opening_balance' => '您無法編輯一個帳戶的開戶餘額。',
'no_edit_multiple_left' => '您沒有選擇有效的交易紀錄以供編輯。', 'no_edit_multiple_left' => '您沒有選擇有效的交易紀錄以供編輯。',
'cannot_convert_split_journal' => '無法轉換拆分交易記錄', 'cannot_convert_split_journal' => '無法轉換拆分交易記錄',

View File

@ -65,7 +65,7 @@
<td> <td>
{# DATE #} {# DATE #}
<input class="form-control input-sm" autocomplete="off" <input class="form-control input-sm" autocomplete="off"
name="date[{{ transaction.journal_id }}]" type="date" value="{{ transaction.date.format('Y-m-d') }}"> name="date[{{ transaction.journal_id }}]" type="date" value="{{ transaction.date|slice(0,10) }}">
</td> </td>
<td style="position: relative;"> <td style="position: relative;">
{# SOURCE ACCOUNT ID FOR TRANSFER OR WITHDRAWAL #} {# SOURCE ACCOUNT ID FOR TRANSFER OR WITHDRAWAL #}