From 496b4755b63be1098bbd88ef98540a2013c3b905 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:23:10 +0200 Subject: [PATCH 01/37] Added route --- resources/views/layouts/updater.blade.php | 1 + resources/views/update.blade.php | 1 + routes/web.php | 1 + 3 files changed, 3 insertions(+) create mode 100644 resources/views/layouts/updater.blade.php create mode 100644 resources/views/update.blade.php diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/resources/views/layouts/updater.blade.php @@ -0,0 +1 @@ + diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/resources/views/update.blade.php @@ -0,0 +1 @@ + diff --git a/routes/web.php b/routes/web.php index 8dd5e2e..9e562a6 100755 --- a/routes/web.php +++ b/routes/web.php @@ -81,6 +81,7 @@ Route::post('/panel/pages', [AdminController::class, 'editSitePage'])->name('edi Route::get('/panel/site', [AdminController::class, 'showSite'])->name('showSite'); Route::post('/panel/site', [AdminController::class, 'editSite'])->name('editSite'); Route::get('/panel/phpinfo', [AdminController::class, 'phpinfo'])->name('phpinfo'); +Route::get('/update', function () {return view('update', []);}); }); require __DIR__.'/auth.php'; From edd73972399b984b04be1079633dc953579a6a83 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:27:44 +0200 Subject: [PATCH 02/37] Added backup backend https://github.com/spatie/laravel-backup --- composer.json | 3 +- composer.lock | 205 +++++++++++++- config/backup.php | 266 ++++++++++++++++++ .../lang/vendor/backup/ar/notifications.php | 35 +++ .../lang/vendor/backup/cs/notifications.php | 35 +++ .../lang/vendor/backup/da/notifications.php | 35 +++ .../lang/vendor/backup/de/notifications.php | 35 +++ .../lang/vendor/backup/en/notifications.php | 35 +++ .../lang/vendor/backup/es/notifications.php | 35 +++ .../lang/vendor/backup/fa/notifications.php | 35 +++ .../lang/vendor/backup/fi/notifications.php | 35 +++ .../lang/vendor/backup/fr/notifications.php | 35 +++ .../lang/vendor/backup/hi/notifications.php | 35 +++ .../lang/vendor/backup/id/notifications.php | 35 +++ .../lang/vendor/backup/it/notifications.php | 35 +++ .../lang/vendor/backup/ja/notifications.php | 35 +++ .../lang/vendor/backup/nl/notifications.php | 35 +++ .../lang/vendor/backup/no/notifications.php | 35 +++ .../lang/vendor/backup/pl/notifications.php | 35 +++ .../vendor/backup/pt-BR/notifications.php | 35 +++ .../lang/vendor/backup/pt/notifications.php | 35 +++ .../lang/vendor/backup/ro/notifications.php | 35 +++ .../lang/vendor/backup/ru/notifications.php | 35 +++ .../lang/vendor/backup/tr/notifications.php | 35 +++ .../lang/vendor/backup/uk/notifications.php | 35 +++ .../vendor/backup/zh-CN/notifications.php | 35 +++ .../vendor/backup/zh-TW/notifications.php | 35 +++ 27 files changed, 1311 insertions(+), 3 deletions(-) create mode 100644 config/backup.php create mode 100644 resources/lang/vendor/backup/ar/notifications.php create mode 100644 resources/lang/vendor/backup/cs/notifications.php create mode 100644 resources/lang/vendor/backup/da/notifications.php create mode 100644 resources/lang/vendor/backup/de/notifications.php create mode 100644 resources/lang/vendor/backup/en/notifications.php create mode 100644 resources/lang/vendor/backup/es/notifications.php create mode 100644 resources/lang/vendor/backup/fa/notifications.php create mode 100644 resources/lang/vendor/backup/fi/notifications.php create mode 100644 resources/lang/vendor/backup/fr/notifications.php create mode 100644 resources/lang/vendor/backup/hi/notifications.php create mode 100644 resources/lang/vendor/backup/id/notifications.php create mode 100644 resources/lang/vendor/backup/it/notifications.php create mode 100644 resources/lang/vendor/backup/ja/notifications.php create mode 100644 resources/lang/vendor/backup/nl/notifications.php create mode 100644 resources/lang/vendor/backup/no/notifications.php create mode 100644 resources/lang/vendor/backup/pl/notifications.php create mode 100644 resources/lang/vendor/backup/pt-BR/notifications.php create mode 100644 resources/lang/vendor/backup/pt/notifications.php create mode 100644 resources/lang/vendor/backup/ro/notifications.php create mode 100644 resources/lang/vendor/backup/ru/notifications.php create mode 100644 resources/lang/vendor/backup/tr/notifications.php create mode 100644 resources/lang/vendor/backup/uk/notifications.php create mode 100644 resources/lang/vendor/backup/zh-CN/notifications.php create mode 100644 resources/lang/vendor/backup/zh-TW/notifications.php diff --git a/composer.json b/composer.json index a011999..6b98332 100755 --- a/composer.json +++ b/composer.json @@ -11,7 +11,8 @@ "geo-sot/laravel-env-editor": "^1.1", "guzzlehttp/guzzle": "^7.4", "laravel/framework": "^8.12", - "laravel/tinker": "^2.5" + "laravel/tinker": "^2.5", + "spatie/laravel-backup": "^6.16" }, "require-dev": { "facade/ignition": "^2.5", diff --git a/composer.lock b/composer.lock index c66018c..fd99cd7 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "610c5aef52fecb32c898536316a4dbd7", + "content-hash": "abd272ad948dfda0e9f2b936b59624dd", "packages": [ { "name": "asm89/stack-cors", @@ -2596,6 +2596,207 @@ ], "time": "2021-09-25T23:10:38+00:00" }, + { + "name": "spatie/db-dumper", + "version": "2.21.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/db-dumper.git", + "reference": "05e5955fb882008a8947c5a45146d86cfafa10d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/db-dumper/zipball/05e5955fb882008a8947c5a45146d86cfafa10d1", + "reference": "05e5955fb882008a8947c5a45146d86cfafa10d1", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", + "symfony/process": "^4.2|^5.0" + }, + "require-dev": { + "phpunit/phpunit": "^7.0|^8.0|^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\DbDumper\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Dump databases", + "homepage": "https://github.com/spatie/db-dumper", + "keywords": [ + "database", + "db-dumper", + "dump", + "mysqldump", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/db-dumper/issues", + "source": "https://github.com/spatie/db-dumper/tree/2.21.1" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2021-02-24T14:56:42+00:00" + }, + { + "name": "spatie/laravel-backup", + "version": "6.16.5", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-backup.git", + "reference": "332fae80b12cacb9e4161824ba195d984b28c8fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-backup/zipball/332fae80b12cacb9e4161824ba195d984b28c8fb", + "reference": "332fae80b12cacb9e4161824ba195d984b28c8fb", + "shasum": "" + }, + "require": { + "ext-zip": "^1.14.0", + "illuminate/console": "^6.0|^7.0|^8.0", + "illuminate/contracts": "^6.0|^7.0|^8.0", + "illuminate/events": "^6.0|^7.0|^8.0", + "illuminate/filesystem": "^6.0|^7.0|^8.0", + "illuminate/notifications": "^6.0|^7.0|^8.0", + "illuminate/support": "^6.0|^7.0|^8.0", + "league/flysystem": "^1.0.49", + "php": "^7.3|^8.0", + "spatie/db-dumper": "^2.12", + "spatie/temporary-directory": "^1.1", + "symfony/finder": "^4.2|^5.0" + }, + "require-dev": { + "laravel/slack-notification-channel": "^2.3", + "league/flysystem-aws-s3-v3": "^1.0", + "mockery/mockery": "^1.4.2", + "orchestra/testbench": "4.*|5.*|6.*", + "phpunit/phpunit": "^8.4|^9.0" + }, + "suggest": { + "laravel/slack-notification-channel": "Required for sending notifications via Slack" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Spatie\\Backup\\BackupServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "src/Helpers/functions.php" + ], + "psr-4": { + "Spatie\\Backup\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "A Laravel package to backup your application", + "homepage": "https://github.com/spatie/laravel-backup", + "keywords": [ + "backup", + "database", + "laravel-backup", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/laravel-backup/issues", + "source": "https://github.com/spatie/laravel-backup/tree/6.16.5" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spatie", + "type": "github" + }, + { + "url": "https://spatie.be/open-source/support-us", + "type": "other" + } + ], + "time": "2021-09-12T10:04:18+00:00" + }, + { + "name": "spatie/temporary-directory", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/spatie/temporary-directory.git", + "reference": "f517729b3793bca58f847c5fd383ec16f03ffec6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/temporary-directory/zipball/f517729b3793bca58f847c5fd383ec16f03ffec6", + "reference": "f517729b3793bca58f847c5fd383ec16f03ffec6", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^8.0|^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\TemporaryDirectory\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alex Vanderbist", + "email": "alex@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Easily create, use and destroy temporary directories", + "homepage": "https://github.com/spatie/temporary-directory", + "keywords": [ + "php", + "spatie", + "temporary-directory" + ], + "support": { + "issues": "https://github.com/spatie/temporary-directory/issues", + "source": "https://github.com/spatie/temporary-directory/tree/1.3.0" + }, + "time": "2020-11-09T15:54:21+00:00" + }, { "name": "swiftmailer/swiftmailer", "version": "v6.3.0", @@ -7712,5 +7913,5 @@ "php": "^7.3|^8.0" }, "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.2.0" } diff --git a/config/backup.php b/config/backup.php new file mode 100644 index 0000000..20cbfa7 --- /dev/null +++ b/config/backup.php @@ -0,0 +1,266 @@ + [ + + /* + * The name of this application. You can use this name to monitor + * the backups. + */ + 'name' => env('APP_NAME', 'laravel-backup'), + + 'source' => [ + + 'files' => [ + + /* + * The list of directories and files that will be included in the backup. + */ + 'include' => [ + base_path(), + ], + + /* + * These directories and files will be excluded from the backup. + * + * Directories used by the backup process will automatically be excluded. + */ + 'exclude' => [ + base_path('vendor'), + base_path('node_modules'), + ], + + /* + * Determines if symlinks should be followed. + */ + 'follow_links' => false, + + /* + * Determines if it should avoid unreadable folders. + */ + 'ignore_unreadable_directories' => false, + + /* + * This path is used to make directories in resulting zip-file relative + * Set to `null` to include complete absolute path + * Example: base_path() + */ + 'relative_path' => null, + ], + + /* + * The names of the connections to the databases that should be backed up + * MySQL, PostgreSQL, SQLite and Mongo databases are supported. + * + * The content of the database dump may be customized for each connection + * by adding a 'dump' key to the connection settings in config/database.php. + * E.g. + * 'mysql' => [ + * ... + * 'dump' => [ + * 'excludeTables' => [ + * 'table_to_exclude_from_backup', + * 'another_table_to_exclude' + * ] + * ], + * ], + * + * If you are using only InnoDB tables on a MySQL server, you can + * also supply the useSingleTransaction option to avoid table locking. + * + * E.g. + * 'mysql' => [ + * ... + * 'dump' => [ + * 'useSingleTransaction' => true, + * ], + * ], + * + * For a complete list of available customization options, see https://github.com/spatie/db-dumper + */ + 'databases' => [ + 'mysql', + ], + ], + + /* + * The database dump can be compressed to decrease diskspace usage. + * + * Out of the box Laravel-backup supplies + * Spatie\DbDumper\Compressors\GzipCompressor::class. + * + * You can also create custom compressor. More info on that here: + * https://github.com/spatie/db-dumper#using-compression + * + * If you do not want any compressor at all, set it to null. + */ + 'database_dump_compressor' => null, + + /* + * The file extension used for the database dump files. + * + * If not specified, the file extension will be .archive for MongoDB and .sql for all other databases + * The file extension should be specified without a leading . + */ + 'database_dump_file_extension' => '', + + 'destination' => [ + + /* + * The filename prefix used for the backup zip file. + */ + 'filename_prefix' => '', + + /* + * The disk names on which the backups will be stored. + */ + 'disks' => [ + 'local', + ], + ], + + /* + * The directory where the temporary files will be stored. + */ + 'temporary_directory' => storage_path('app/backup-temp'), + + /* + * The password to be used for archive encryption. + * Set to `null` to disable encryption. + */ + 'password' => env('BACKUP_ARCHIVE_PASSWORD'), + + /* + * The encryption algorithm to be used for archive encryption. + * You can set it to `null` or `false` to disable encryption. + * + * When set to 'default', we'll use ZipArchive::EM_AES_256 if it is + * available on your system. + */ + 'encryption' => 'default', + ], + + /* + * You can get notified when specific events occur. Out of the box you can use 'mail' and 'slack'. + * For Slack you need to install laravel/slack-notification-channel. + * + * You can also use your own notification classes, just make sure the class is named after one of + * the `Spatie\Backup\Events` classes. + */ + 'notifications' => [ + + 'notifications' => [ + \Spatie\Backup\Notifications\Notifications\BackupHasFailed::class => ['mail'], + \Spatie\Backup\Notifications\Notifications\UnhealthyBackupWasFound::class => ['mail'], + \Spatie\Backup\Notifications\Notifications\CleanupHasFailed::class => ['mail'], + \Spatie\Backup\Notifications\Notifications\BackupWasSuccessful::class => ['mail'], + \Spatie\Backup\Notifications\Notifications\HealthyBackupWasFound::class => ['mail'], + \Spatie\Backup\Notifications\Notifications\CleanupWasSuccessful::class => ['mail'], + ], + + /* + * Here you can specify the notifiable to which the notifications should be sent. The default + * notifiable will use the variables specified in this config file. + */ + 'notifiable' => \Spatie\Backup\Notifications\Notifiable::class, + + 'mail' => [ + 'to' => 'your@example.com', + + 'from' => [ + 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'), + 'name' => env('MAIL_FROM_NAME', 'Example'), + ], + ], + + 'slack' => [ + 'webhook_url' => '', + + /* + * If this is set to null the default channel of the webhook will be used. + */ + 'channel' => null, + + 'username' => null, + + 'icon' => null, + + ], + ], + + /* + * Here you can specify which backups should be monitored. + * If a backup does not meet the specified requirements the + * UnHealthyBackupWasFound event will be fired. + */ + 'monitor_backups' => [ + [ + 'name' => env('APP_NAME', 'laravel-backup'), + 'disks' => ['local'], + 'health_checks' => [ + \Spatie\Backup\Tasks\Monitor\HealthChecks\MaximumAgeInDays::class => 1, + \Spatie\Backup\Tasks\Monitor\HealthChecks\MaximumStorageInMegabytes::class => 5000, + ], + ], + + /* + [ + 'name' => 'name of the second app', + 'disks' => ['local', 's3'], + 'health_checks' => [ + \Spatie\Backup\Tasks\Monitor\HealthChecks\MaximumAgeInDays::class => 1, + \Spatie\Backup\Tasks\Monitor\HealthChecks\MaximumStorageInMegabytes::class => 5000, + ], + ], + */ + ], + + 'cleanup' => [ + /* + * The strategy that will be used to cleanup old backups. The default strategy + * will keep all backups for a certain amount of days. After that period only + * a daily backup will be kept. After that period only weekly backups will + * be kept and so on. + * + * No matter how you configure it the default strategy will never + * delete the newest backup. + */ + 'strategy' => \Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::class, + + 'default_strategy' => [ + + /* + * The number of days for which backups must be kept. + */ + 'keep_all_backups_for_days' => 7, + + /* + * The number of days for which daily backups must be kept. + */ + 'keep_daily_backups_for_days' => 16, + + /* + * The number of weeks for which one weekly backup must be kept. + */ + 'keep_weekly_backups_for_weeks' => 8, + + /* + * The number of months for which one monthly backup must be kept. + */ + 'keep_monthly_backups_for_months' => 4, + + /* + * The number of years for which one yearly backup must be kept. + */ + 'keep_yearly_backups_for_years' => 2, + + /* + * After cleaning up the backups remove the oldest backup until + * this amount of megabytes has been reached. + */ + 'delete_oldest_backups_when_using_more_megabytes_than' => 5000, + ], + ], + +]; diff --git a/resources/lang/vendor/backup/ar/notifications.php b/resources/lang/vendor/backup/ar/notifications.php new file mode 100644 index 0000000..f84de9c --- /dev/null +++ b/resources/lang/vendor/backup/ar/notifications.php @@ -0,0 +1,35 @@ + 'رسالة استثناء: :message', + 'exception_trace' => 'تتبع الإستثناء: :trace', + 'exception_message_title' => 'رسالة استثناء', + 'exception_trace_title' => 'تتبع الإستثناء', + + 'backup_failed_subject' => 'أخفق النسخ الاحتياطي لل :application_name', + 'backup_failed_body' => 'مهم: حدث خطأ أثناء النسخ الاحتياطي :application_name', + + 'backup_successful_subject' => 'نسخ احتياطي جديد ناجح ل :application_name', + 'backup_successful_subject_title' => 'نجاح النسخ الاحتياطي الجديد!', + 'backup_successful_body' => 'أخبار عظيمة، نسخة احتياطية جديدة ل :application_name تم إنشاؤها بنجاح على القرص المسمى :disk_name.', + + 'cleanup_failed_subject' => 'فشل تنظيف النسخ الاحتياطي للتطبيق :application_name .', + 'cleanup_failed_body' => 'حدث خطأ أثناء تنظيف النسخ الاحتياطية ل :application_name', + + 'cleanup_successful_subject' => 'تنظيف النسخ الاحتياطية ل :application_name تمت بنجاح', + 'cleanup_successful_subject_title' => 'تنظيف النسخ الاحتياطية تم بنجاح!', + 'cleanup_successful_body' => 'تنظيف النسخ الاحتياطية ل :application_name على القرص المسمى :disk_name تم بنجاح.', + + 'healthy_backup_found_subject' => 'النسخ الاحتياطية ل :application_name على القرص :disk_name صحية', + 'healthy_backup_found_subject_title' => 'النسخ الاحتياطية ل :application_name صحية', + 'healthy_backup_found_body' => 'تعتبر النسخ الاحتياطية ل :application_name صحية. عمل جيد!', + + 'unhealthy_backup_found_subject' => 'مهم: النسخ الاحتياطية ل :application_name غير صحية', + 'unhealthy_backup_found_subject_title' => 'مهم: النسخ الاحتياطية ل :application_name غير صحية. :problem', + 'unhealthy_backup_found_body' => 'النسخ الاحتياطية ل :application_name على القرص :disk_name غير صحية.', + 'unhealthy_backup_found_not_reachable' => 'لا يمكن الوصول إلى وجهة النسخ الاحتياطي. :error', + 'unhealthy_backup_found_empty' => 'لا توجد نسخ احتياطية لهذا التطبيق على الإطلاق.', + 'unhealthy_backup_found_old' => 'تم إنشاء أحدث النسخ الاحتياطية في :date وتعتبر قديمة جدا.', + 'unhealthy_backup_found_unknown' => 'عذرا، لا يمكن تحديد سبب دقيق.', + 'unhealthy_backup_found_full' => 'النسخ الاحتياطية تستخدم الكثير من التخزين. الاستخدام الحالي هو :disk_usage وهو أعلى من الحد المسموح به من :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/cs/notifications.php b/resources/lang/vendor/backup/cs/notifications.php new file mode 100644 index 0000000..947eb43 --- /dev/null +++ b/resources/lang/vendor/backup/cs/notifications.php @@ -0,0 +1,35 @@ + 'Zpráva výjimky: :message', + 'exception_trace' => 'Stopa výjimky: :trace', + 'exception_message_title' => 'Zpráva výjimky', + 'exception_trace_title' => 'Stopa výjimky', + + 'backup_failed_subject' => 'Záloha :application_name neuspěla', + 'backup_failed_body' => 'Důležité: Při záloze :application_name se vyskytla chyba', + + 'backup_successful_subject' => 'Úspěšná nová záloha :application_name', + 'backup_successful_subject_title' => 'Úspěšná nová záloha!', + 'backup_successful_body' => 'Dobrá zpráva, na disku jménem :disk_name byla úspěšně vytvořena nová záloha :application_name.', + + 'cleanup_failed_subject' => 'Vyčištění záloh :application_name neuspělo.', + 'cleanup_failed_body' => 'Při vyčištění záloh :application_name se vyskytla chyba', + + 'cleanup_successful_subject' => 'Vyčištění záloh :application_name úspěšné', + 'cleanup_successful_subject_title' => 'Vyčištění záloh bylo úspěšné!', + 'cleanup_successful_body' => 'Vyčištění záloh :application_name na disku jménem :disk_name bylo úspěšné.', + + 'healthy_backup_found_subject' => 'Zálohy pro :application_name na disku :disk_name jsou zdravé', + 'healthy_backup_found_subject_title' => 'Zálohy pro :application_name jsou zdravé', + 'healthy_backup_found_body' => 'Zálohy pro :application_name jsou považovány za zdravé. Dobrá práce!', + + 'unhealthy_backup_found_subject' => 'Důležité: Zálohy pro :application_name jsou nezdravé', + 'unhealthy_backup_found_subject_title' => 'Důležité: Zálohy pro :application_name jsou nezdravé. :problem', + 'unhealthy_backup_found_body' => 'Zálohy pro :application_name na disku :disk_name Jsou nezdravé.', + 'unhealthy_backup_found_not_reachable' => 'Nelze se dostat k cíli zálohy. :error', + 'unhealthy_backup_found_empty' => 'Tato aplikace nemá vůbec žádné zálohy.', + 'unhealthy_backup_found_old' => 'Poslední záloha vytvořená dne :date je považována za příliš starou.', + 'unhealthy_backup_found_unknown' => 'Omlouváme se, nemůžeme určit přesný důvod.', + 'unhealthy_backup_found_full' => 'Zálohy zabírají příliš mnoho místa na disku. Aktuální využití disku je :disk_usage, což je vyšší než povolený limit :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/da/notifications.php b/resources/lang/vendor/backup/da/notifications.php new file mode 100644 index 0000000..e7b95fc --- /dev/null +++ b/resources/lang/vendor/backup/da/notifications.php @@ -0,0 +1,35 @@ + 'Fejlbesked: :message', + 'exception_trace' => 'Fejl trace: :trace', + 'exception_message_title' => 'Fejlbesked', + 'exception_trace_title' => 'Fejl trace', + + 'backup_failed_subject' => 'Backup af :application_name fejlede', + 'backup_failed_body' => 'Vigtigt: Der skete en fejl under backup af :application_name', + + 'backup_successful_subject' => 'Ny backup af :application_name oprettet', + 'backup_successful_subject_title' => 'Ny backup!', + 'backup_successful_body' => 'Gode nyheder - der blev oprettet en ny backup af :application_name på disken :disk_name.', + + 'cleanup_failed_subject' => 'Oprydning af backups for :application_name fejlede.', + 'cleanup_failed_body' => 'Der skete en fejl under oprydning af backups for :application_name', + + 'cleanup_successful_subject' => 'Oprydning af backups for :application_name gennemført', + 'cleanup_successful_subject_title' => 'Backup oprydning gennemført!', + 'cleanup_successful_body' => 'Oprydningen af backups for :application_name på disken :disk_name er gennemført.', + + 'healthy_backup_found_subject' => 'Alle backups for :application_name på disken :disk_name er OK', + 'healthy_backup_found_subject_title' => 'Alle backups for :application_name er OK', + 'healthy_backup_found_body' => 'Alle backups for :application_name er ok. Godt gået!', + + 'unhealthy_backup_found_subject' => 'Vigtigt: Backups for :application_name fejlbehæftede', + 'unhealthy_backup_found_subject_title' => 'Vigtigt: Backups for :application_name er fejlbehæftede. :problem', + 'unhealthy_backup_found_body' => 'Backups for :application_name på disken :disk_name er fejlbehæftede.', + 'unhealthy_backup_found_not_reachable' => 'Backup destinationen kunne ikke findes. :error', + 'unhealthy_backup_found_empty' => 'Denne applikation har ingen backups overhovedet.', + 'unhealthy_backup_found_old' => 'Den seneste backup fra :date er for gammel.', + 'unhealthy_backup_found_unknown' => 'Beklager, en præcis årsag kunne ikke findes.', + 'unhealthy_backup_found_full' => 'Backups bruger for meget plads. Nuværende disk forbrug er :disk_usage, hvilket er mere end den tilladte grænse på :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/de/notifications.php b/resources/lang/vendor/backup/de/notifications.php new file mode 100644 index 0000000..2d87d8f --- /dev/null +++ b/resources/lang/vendor/backup/de/notifications.php @@ -0,0 +1,35 @@ + 'Fehlermeldung: :message', + 'exception_trace' => 'Fehlerverfolgung: :trace', + 'exception_message_title' => 'Fehlermeldung', + 'exception_trace_title' => 'Fehlerverfolgung', + + 'backup_failed_subject' => 'Backup von :application_name konnte nicht erstellt werden', + 'backup_failed_body' => 'Wichtig: Beim Backup von :application_name ist ein Fehler aufgetreten', + + 'backup_successful_subject' => 'Erfolgreiches neues Backup von :application_name', + 'backup_successful_subject_title' => 'Erfolgreiches neues Backup!', + 'backup_successful_body' => 'Gute Nachrichten, ein neues Backup von :application_name wurde erfolgreich erstellt und in :disk_name gepeichert.', + + 'cleanup_failed_subject' => 'Aufräumen der Backups von :application_name schlug fehl.', + 'cleanup_failed_body' => 'Beim aufräumen der Backups von :application_name ist ein Fehler aufgetreten', + + 'cleanup_successful_subject' => 'Aufräumen der Backups von :application_name backups erfolgreich', + 'cleanup_successful_subject_title' => 'Aufräumen der Backups erfolgreich!', + 'cleanup_successful_body' => 'Aufräumen der Backups von :application_name in :disk_name war erfolgreich.', + + 'healthy_backup_found_subject' => 'Die Backups von :application_name in :disk_name sind gesund', + 'healthy_backup_found_subject_title' => 'Die Backups von :application_name sind Gesund', + 'healthy_backup_found_body' => 'Die Backups von :application_name wurden als gesund eingestuft. Gute Arbeit!', + + 'unhealthy_backup_found_subject' => 'Wichtig: Die Backups für :application_name sind nicht gesund', + 'unhealthy_backup_found_subject_title' => 'Wichtig: Die Backups für :application_name sind ungesund. :problem', + 'unhealthy_backup_found_body' => 'Die Backups für :application_name in :disk_name sind ungesund.', + 'unhealthy_backup_found_not_reachable' => 'Das Backup Ziel konnte nicht erreicht werden. :error', + 'unhealthy_backup_found_empty' => 'Es gibt für die Anwendung noch gar keine Backups.', + 'unhealthy_backup_found_old' => 'Das letzte Backup am :date ist zu lange her.', + 'unhealthy_backup_found_unknown' => 'Sorry, ein genauer Grund konnte nicht gefunden werden.', + 'unhealthy_backup_found_full' => 'Die Backups verbrauchen zu viel Platz. Aktuell wird :disk_usage belegt, dass ist höher als das erlaubte Limit von :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/en/notifications.php b/resources/lang/vendor/backup/en/notifications.php new file mode 100644 index 0000000..d7a1128 --- /dev/null +++ b/resources/lang/vendor/backup/en/notifications.php @@ -0,0 +1,35 @@ + 'Exception message: :message', + 'exception_trace' => 'Exception trace: :trace', + 'exception_message_title' => 'Exception message', + 'exception_trace_title' => 'Exception trace', + + 'backup_failed_subject' => 'Failed backup of :application_name', + 'backup_failed_body' => 'Important: An error occurred while backing up :application_name', + + 'backup_successful_subject' => 'Successful new backup of :application_name', + 'backup_successful_subject_title' => 'Successful new backup!', + 'backup_successful_body' => 'Great news, a new backup of :application_name was successfully created on the disk named :disk_name.', + + 'cleanup_failed_subject' => 'Cleaning up the backups of :application_name failed.', + 'cleanup_failed_body' => 'An error occurred while cleaning up the backups of :application_name', + + 'cleanup_successful_subject' => 'Clean up of :application_name backups successful', + 'cleanup_successful_subject_title' => 'Clean up of backups successful!', + 'cleanup_successful_body' => 'The clean up of the :application_name backups on the disk named :disk_name was successful.', + + 'healthy_backup_found_subject' => 'The backups for :application_name on disk :disk_name are healthy', + 'healthy_backup_found_subject_title' => 'The backups for :application_name are healthy', + 'healthy_backup_found_body' => 'The backups for :application_name are considered healthy. Good job!', + + 'unhealthy_backup_found_subject' => 'Important: The backups for :application_name are unhealthy', + 'unhealthy_backup_found_subject_title' => 'Important: The backups for :application_name are unhealthy. :problem', + 'unhealthy_backup_found_body' => 'The backups for :application_name on disk :disk_name are unhealthy.', + 'unhealthy_backup_found_not_reachable' => 'The backup destination cannot be reached. :error', + 'unhealthy_backup_found_empty' => 'There are no backups of this application at all.', + 'unhealthy_backup_found_old' => 'The latest backup made on :date is considered too old.', + 'unhealthy_backup_found_unknown' => 'Sorry, an exact reason cannot be determined.', + 'unhealthy_backup_found_full' => 'The backups are using too much storage. Current usage is :disk_usage which is higher than the allowed limit of :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/es/notifications.php b/resources/lang/vendor/backup/es/notifications.php new file mode 100644 index 0000000..4f4900f --- /dev/null +++ b/resources/lang/vendor/backup/es/notifications.php @@ -0,0 +1,35 @@ + 'Mensaje de la excepción: :message', + 'exception_trace' => 'Traza de la excepción: :trace', + 'exception_message_title' => 'Mensaje de la excepción', + 'exception_trace_title' => 'Traza de la excepción', + + 'backup_failed_subject' => 'Copia de seguridad de :application_name fallida', + 'backup_failed_body' => 'Importante: Ocurrió un error al realizar la copia de seguridad de :application_name', + + 'backup_successful_subject' => 'Se completó con éxito la copia de seguridad de :application_name', + 'backup_successful_subject_title' => '¡Nueva copia de seguridad creada con éxito!', + 'backup_successful_body' => 'Buenas noticias, una nueva copia de seguridad de :application_name fue creada con éxito en el disco llamado :disk_name.', + + 'cleanup_failed_subject' => 'La limpieza de copias de seguridad de :application_name falló.', + 'cleanup_failed_body' => 'Ocurrió un error mientras se realizaba la limpieza de copias de seguridad de :application_name', + + 'cleanup_successful_subject' => 'La limpieza de copias de seguridad de :application_name se completó con éxito', + 'cleanup_successful_subject_title' => '!Limpieza de copias de seguridad completada con éxito!', + 'cleanup_successful_body' => 'La limpieza de copias de seguridad de :application_name en el disco llamado :disk_name se completo con éxito.', + + 'healthy_backup_found_subject' => 'Las copias de seguridad de :application_name en el disco :disk_name están en buen estado', + 'healthy_backup_found_subject_title' => 'Las copias de seguridad de :application_name están en buen estado', + 'healthy_backup_found_body' => 'Las copias de seguridad de :application_name se consideran en buen estado. ¡Buen trabajo!', + + 'unhealthy_backup_found_subject' => 'Importante: Las copias de seguridad de :application_name están en mal estado', + 'unhealthy_backup_found_subject_title' => 'Importante: Las copias de seguridad de :application_name están en mal estado. :problem', + 'unhealthy_backup_found_body' => 'Las copias de seguridad de :application_name en el disco :disk_name están en mal estado.', + 'unhealthy_backup_found_not_reachable' => 'No se puede acceder al destino de la copia de seguridad. :error', + 'unhealthy_backup_found_empty' => 'No existe ninguna copia de seguridad de esta aplicación.', + 'unhealthy_backup_found_old' => 'La última copia de seguriad hecha en :date es demasiado antigua.', + 'unhealthy_backup_found_unknown' => 'Lo siento, no es posible determinar la razón exacta.', + 'unhealthy_backup_found_full' => 'Las copias de seguridad están ocupando demasiado espacio. El espacio utilizado actualmente es :disk_usage el cual es mayor que el límite permitido de :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/fa/notifications.php b/resources/lang/vendor/backup/fa/notifications.php new file mode 100644 index 0000000..33cbe33 --- /dev/null +++ b/resources/lang/vendor/backup/fa/notifications.php @@ -0,0 +1,35 @@ + 'پیغام خطا: :message', + 'exception_trace' => 'جزییات خطا: :trace', + 'exception_message_title' => 'پیغام خطا', + 'exception_trace_title' => 'جزییات خطا', + + 'backup_failed_subject' => 'پشتیبان‌گیری :application_name با خطا مواجه شد.', + 'backup_failed_body' => 'پیغام مهم: هنگام پشتیبان‌گیری از :application_name خطایی رخ داده است. ', + + 'backup_successful_subject' => 'نسخه پشتیبان جدید :application_name با موفقیت ساخته شد.', + 'backup_successful_subject_title' => 'پشتیبان‌گیری موفق!', + 'backup_successful_body' => 'خبر خوب, به تازگی نسخه پشتیبان :application_name بر روی دیسک :disk_name با موفقیت ساخته شد. ', + + 'cleanup_failed_subject' => 'پاک‌‌سازی نسخه پشتیبان :application_name انجام نشد.', + 'cleanup_failed_body' => 'هنگام پاک‌سازی نسخه پشتیبان :application_name خطایی رخ داده است.', + + 'cleanup_successful_subject' => 'پاک‌سازی نسخه پشتیبان :application_name با موفقیت انجام شد.', + 'cleanup_successful_subject_title' => 'پاک‌سازی نسخه پشتیبان!', + 'cleanup_successful_body' => 'پاک‌سازی نسخه پشتیبان :application_name بر روی دیسک :disk_name با موفقیت انجام شد.', + + 'healthy_backup_found_subject' => 'نسخه پشتیبان :application_name بر روی دیسک :disk_name سالم بود.', + 'healthy_backup_found_subject_title' => 'نسخه پشتیبان :application_name سالم بود.', + 'healthy_backup_found_body' => 'نسخه پشتیبان :application_name به نظر سالم میاد. دمت گرم!', + + 'unhealthy_backup_found_subject' => 'خبر مهم: نسخه پشتیبان :application_name سالم نبود.', + 'unhealthy_backup_found_subject_title' => 'خبر مهم: نسخه پشتیبان :application_name سالم نبود. :problem', + 'unhealthy_backup_found_body' => 'نسخه پشتیبان :application_name بر روی دیسک :disk_name سالم نبود.', + 'unhealthy_backup_found_not_reachable' => 'مقصد پشتیبان‌گیری در دسترس نبود. :error', + 'unhealthy_backup_found_empty' => 'برای این برنامه هیچ نسخه پشتیبانی وجود ندارد.', + 'unhealthy_backup_found_old' => 'آخرین نسخه پشتیبان برای تاریخ :date است. که به نظر خیلی قدیمی میاد. ', + 'unhealthy_backup_found_unknown' => 'متاسفانه دلیل دقیق مشخص نشده است.', + 'unhealthy_backup_found_full' => 'نسخه‌های پشتیبانی که تهیه کرده اید حجم زیادی اشغال کرده اند. میزان دیسک استفاده شده :disk_usage است که از میزان مجاز :disk_limit فراتر رفته است. ', +]; diff --git a/resources/lang/vendor/backup/fi/notifications.php b/resources/lang/vendor/backup/fi/notifications.php new file mode 100644 index 0000000..85e3607 --- /dev/null +++ b/resources/lang/vendor/backup/fi/notifications.php @@ -0,0 +1,35 @@ + 'Virheilmoitus: :message', + 'exception_trace' => 'Virhe, jäljitys: :trace', + 'exception_message_title' => 'Virheilmoitus', + 'exception_trace_title' => 'Virheen jäljitys', + + 'backup_failed_subject' => ':application_name varmuuskopiointi epäonnistui', + 'backup_failed_body' => 'HUOM!: :application_name varmuuskoipionnissa tapahtui virhe', + + 'backup_successful_subject' => ':application_name varmuuskopioitu onnistuneesti', + 'backup_successful_subject_title' => 'Uusi varmuuskopio!', + 'backup_successful_body' => 'Hyviä uutisia! :application_name on varmuuskopioitu levylle :disk_name.', + + 'cleanup_failed_subject' => ':application_name varmuuskopioiden poistaminen epäonnistui.', + 'cleanup_failed_body' => ':application_name varmuuskopioiden poistamisessa tapahtui virhe.', + + 'cleanup_successful_subject' => ':application_name varmuuskopiot poistettu onnistuneesti', + 'cleanup_successful_subject_title' => 'Varmuuskopiot poistettu onnistuneesti!', + 'cleanup_successful_body' => ':application_name varmuuskopiot poistettu onnistuneesti levyltä :disk_name.', + + 'healthy_backup_found_subject' => ':application_name varmuuskopiot levyllä :disk_name ovat kunnossa', + 'healthy_backup_found_subject_title' => ':application_name varmuuskopiot ovat kunnossa', + 'healthy_backup_found_body' => ':application_name varmuuskopiot ovat kunnossa. Hieno homma!', + + 'unhealthy_backup_found_subject' => 'HUOM!: :application_name varmuuskopiot ovat vialliset', + 'unhealthy_backup_found_subject_title' => 'HUOM!: :application_name varmuuskopiot ovat vialliset. :problem', + 'unhealthy_backup_found_body' => ':application_name varmuuskopiot levyllä :disk_name ovat vialliset.', + 'unhealthy_backup_found_not_reachable' => 'Varmuuskopioiden kohdekansio ei ole saatavilla. :error', + 'unhealthy_backup_found_empty' => 'Tästä sovelluksesta ei ole varmuuskopioita.', + 'unhealthy_backup_found_old' => 'Viimeisin varmuuskopio, luotu :date, on liian vanha.', + 'unhealthy_backup_found_unknown' => 'Virhe, tarkempaa tietoa syystä ei valitettavasti ole saatavilla.', + 'unhealthy_backup_found_full' => 'Varmuuskopiot vievät liikaa levytilaa. Tällä hetkellä käytössä :disk_usage, mikä on suurempi kuin sallittu tilavuus (:disk_limit).', +]; diff --git a/resources/lang/vendor/backup/fr/notifications.php b/resources/lang/vendor/backup/fr/notifications.php new file mode 100644 index 0000000..57a98c2 --- /dev/null +++ b/resources/lang/vendor/backup/fr/notifications.php @@ -0,0 +1,35 @@ + 'Message de l\'exception : :message', + 'exception_trace' => 'Trace de l\'exception : :trace', + 'exception_message_title' => 'Message de l\'exception', + 'exception_trace_title' => 'Trace de l\'exception', + + 'backup_failed_subject' => 'Échec de la sauvegarde de :application_name', + 'backup_failed_body' => 'Important : Une erreur est survenue lors de la sauvegarde de :application_name', + + 'backup_successful_subject' => 'Succès de la sauvegarde de :application_name', + 'backup_successful_subject_title' => 'Sauvegarde créée avec succès !', + 'backup_successful_body' => 'Bonne nouvelle, une nouvelle sauvegarde de :application_name a été créée avec succès sur le disque nommé :disk_name.', + + 'cleanup_failed_subject' => 'Le nettoyage des sauvegardes de :application_name a echoué.', + 'cleanup_failed_body' => 'Une erreur est survenue lors du nettoyage des sauvegardes de :application_name', + + 'cleanup_successful_subject' => 'Succès du nettoyage des sauvegardes de :application_name', + 'cleanup_successful_subject_title' => 'Sauvegardes nettoyées avec succès !', + 'cleanup_successful_body' => 'Le nettoyage des sauvegardes de :application_name sur le disque nommé :disk_name a été effectué avec succès.', + + 'healthy_backup_found_subject' => 'Les sauvegardes pour :application_name sur le disque :disk_name sont saines', + 'healthy_backup_found_subject_title' => 'Les sauvegardes pour :application_name sont saines', + 'healthy_backup_found_body' => 'Les sauvegardes pour :application_name sont considérées saines. Bon travail !', + + 'unhealthy_backup_found_subject' => 'Important : Les sauvegardes pour :application_name sont corrompues', + 'unhealthy_backup_found_subject_title' => 'Important : Les sauvegardes pour :application_name sont corrompues. :problem', + 'unhealthy_backup_found_body' => 'Les sauvegardes pour :application_name sur le disque :disk_name sont corrompues.', + 'unhealthy_backup_found_not_reachable' => 'La destination de la sauvegarde n\'est pas accessible. :error', + 'unhealthy_backup_found_empty' => 'Il n\'y a aucune sauvegarde pour cette application.', + 'unhealthy_backup_found_old' => 'La dernière sauvegarde du :date est considérée trop vieille.', + 'unhealthy_backup_found_unknown' => 'Désolé, une raison exacte ne peut être déterminée.', + 'unhealthy_backup_found_full' => 'Les sauvegardes utilisent trop d\'espace disque. L\'utilisation actuelle est de :disk_usage alors que la limite autorisée est de :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/hi/notifications.php b/resources/lang/vendor/backup/hi/notifications.php new file mode 100644 index 0000000..74a188d --- /dev/null +++ b/resources/lang/vendor/backup/hi/notifications.php @@ -0,0 +1,35 @@ + 'गलती संदेश: :message', + 'exception_trace' => 'गलती निशान: :trace', + 'exception_message_title' => 'गलती संदेश', + 'exception_trace_title' => 'गलती निशान', + + 'backup_failed_subject' => ':application_name का बैकअप असफल रहा', + 'backup_failed_body' => 'जरूरी सुचना: :application_name का बैकअप लेते समय असफल रहे', + + 'backup_successful_subject' => ':application_name का बैकअप सफल रहा', + 'backup_successful_subject_title' => 'बैकअप सफल रहा!', + 'backup_successful_body' => 'खुशखबरी, :application_name का बैकअप :disk_name पर संग्रहित करने मे सफल रहे.', + + 'cleanup_failed_subject' => ':application_name के बैकअप की सफाई असफल रही.', + 'cleanup_failed_body' => ':application_name के बैकअप की सफाई करते समय कुछ बाधा आयी है.', + + 'cleanup_successful_subject' => ':application_name के बैकअप की सफाई सफल रही', + 'cleanup_successful_subject_title' => 'बैकअप की सफाई सफल रही!', + 'cleanup_successful_body' => ':application_name का बैकअप जो :disk_name नाम की डिस्क पर संग्रहित है, उसकी सफाई सफल रही.', + + 'healthy_backup_found_subject' => ':disk_name नाम की डिस्क पर संग्रहित :application_name के बैकअप स्वस्थ है', + 'healthy_backup_found_subject_title' => ':application_name के सभी बैकअप स्वस्थ है', + 'healthy_backup_found_body' => 'बहुत बढ़िया! :application_name के सभी बैकअप स्वस्थ है.', + + 'unhealthy_backup_found_subject' => 'जरूरी सुचना : :application_name के बैकअप अस्वस्थ है', + 'unhealthy_backup_found_subject_title' => 'जरूरी सुचना : :application_name के बैकअप :problem के बजेसे अस्वस्थ है', + 'unhealthy_backup_found_body' => ':disk_name नाम की डिस्क पर संग्रहित :application_name के बैकअप अस्वस्थ है', + 'unhealthy_backup_found_not_reachable' => ':error के बजेसे बैकअप की मंजिल तक पोहोच नहीं सकते.', + 'unhealthy_backup_found_empty' => 'इस एप्लीकेशन का कोई भी बैकअप नहीं है.', + 'unhealthy_backup_found_old' => 'हालहीमें :date को लिया हुआ बैकअप बहुत पुराना है.', + 'unhealthy_backup_found_unknown' => 'माफ़ कीजिये, सही कारण निर्धारित नहीं कर सकते.', + 'unhealthy_backup_found_full' => 'सभी बैकअप बहुत ज्यादा जगह का उपयोग कर रहे है. फ़िलहाल सभी बैकअप :disk_usage जगह का उपयोग कर रहे है, जो की :disk_limit अनुमति सीमा से अधिक का है.', +]; diff --git a/resources/lang/vendor/backup/id/notifications.php b/resources/lang/vendor/backup/id/notifications.php new file mode 100644 index 0000000..971322a --- /dev/null +++ b/resources/lang/vendor/backup/id/notifications.php @@ -0,0 +1,35 @@ + 'Pesan pengecualian: :message', + 'exception_trace' => 'Jejak pengecualian: :trace', + 'exception_message_title' => 'Pesan pengecualian', + 'exception_trace_title' => 'Jejak pengecualian', + + 'backup_failed_subject' => 'Gagal backup :application_name', + 'backup_failed_body' => 'Penting: Sebuah error terjadi ketika membackup :application_name', + + 'backup_successful_subject' => 'Backup baru sukses dari :application_name', + 'backup_successful_subject_title' => 'Backup baru sukses!', + 'backup_successful_body' => 'Kabar baik, sebuah backup baru dari :application_name sukses dibuat pada disk bernama :disk_name.', + + 'cleanup_failed_subject' => 'Membersihkan backup dari :application_name yang gagal.', + 'cleanup_failed_body' => 'Sebuah error teradi ketika membersihkan backup dari :application_name', + + 'cleanup_successful_subject' => 'Sukses membersihkan backup :application_name', + 'cleanup_successful_subject_title' => 'Sukses membersihkan backup!', + 'cleanup_successful_body' => 'Pembersihan backup :application_name pada disk bernama :disk_name telah sukses.', + + 'healthy_backup_found_subject' => 'Backup untuk :application_name pada disk :disk_name sehat', + 'healthy_backup_found_subject_title' => 'Backup untuk :application_name sehat', + 'healthy_backup_found_body' => 'Backup untuk :application_name dipertimbangkan sehat. Kerja bagus!', + + 'unhealthy_backup_found_subject' => 'Penting: Backup untuk :application_name tidak sehat', + 'unhealthy_backup_found_subject_title' => 'Penting: Backup untuk :application_name tidak sehat. :problem', + 'unhealthy_backup_found_body' => 'Backup untuk :application_name pada disk :disk_name tidak sehat.', + 'unhealthy_backup_found_not_reachable' => 'Tujuan backup tidak dapat terjangkau. :error', + 'unhealthy_backup_found_empty' => 'Tidak ada backup pada aplikasi ini sama sekali.', + 'unhealthy_backup_found_old' => 'Backup terakhir dibuat pada :date dimana dipertimbahkan sudah sangat lama.', + 'unhealthy_backup_found_unknown' => 'Maaf, sebuah alasan persisnya tidak dapat ditentukan.', + 'unhealthy_backup_found_full' => 'Backup menggunakan terlalu banyak kapasitas penyimpanan. Penggunaan terkini adalah :disk_usage dimana lebih besar dari batas yang diperbolehkan yaitu :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/it/notifications.php b/resources/lang/vendor/backup/it/notifications.php new file mode 100644 index 0000000..43ad38e --- /dev/null +++ b/resources/lang/vendor/backup/it/notifications.php @@ -0,0 +1,35 @@ + 'Messaggio dell\'eccezione: :message', + 'exception_trace' => 'Traccia dell\'eccezione: :trace', + 'exception_message_title' => 'Messaggio dell\'eccezione', + 'exception_trace_title' => 'Traccia dell\'eccezione', + + 'backup_failed_subject' => 'Fallito il backup di :application_name', + 'backup_failed_body' => 'Importante: Si è verificato un errore durante il backup di :application_name', + + 'backup_successful_subject' => 'Creato nuovo backup di :application_name', + 'backup_successful_subject_title' => 'Nuovo backup creato!', + 'backup_successful_body' => 'Grande notizia, un nuovo backup di :application_name è stato creato con successo sul disco :disk_name.', + + 'cleanup_failed_subject' => 'Pulizia dei backup di :application_name fallita.', + 'cleanup_failed_body' => 'Si è verificato un errore durante la pulizia dei backup di :application_name', + + 'cleanup_successful_subject' => 'Pulizia dei backup di :application_name avvenuta con successo', + 'cleanup_successful_subject_title' => 'Pulizia dei backup avvenuta con successo!', + 'cleanup_successful_body' => 'La pulizia dei backup di :application_name sul disco :disk_name è avvenuta con successo.', + + 'healthy_backup_found_subject' => 'I backup per :application_name sul disco :disk_name sono sani', + 'healthy_backup_found_subject_title' => 'I backup per :application_name sono sani', + 'healthy_backup_found_body' => 'I backup per :application_name sono considerati sani. Bel Lavoro!', + + 'unhealthy_backup_found_subject' => 'Importante: i backup per :application_name sono corrotti', + 'unhealthy_backup_found_subject_title' => 'Importante: i backup per :application_name sono corrotti. :problem', + 'unhealthy_backup_found_body' => 'I backup per :application_name sul disco :disk_name sono corrotti.', + 'unhealthy_backup_found_not_reachable' => 'Impossibile raggiungere la destinazione di backup. :error', + 'unhealthy_backup_found_empty' => 'Non esiste alcun backup di questa applicazione.', + 'unhealthy_backup_found_old' => 'L\'ultimo backup fatto il :date è considerato troppo vecchio.', + 'unhealthy_backup_found_unknown' => 'Spiacenti, non è possibile determinare una ragione esatta.', + 'unhealthy_backup_found_full' => 'I backup utilizzano troppa memoria. L\'utilizzo corrente è :disk_usage che è superiore al limite consentito di :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/ja/notifications.php b/resources/lang/vendor/backup/ja/notifications.php new file mode 100644 index 0000000..f272e55 --- /dev/null +++ b/resources/lang/vendor/backup/ja/notifications.php @@ -0,0 +1,35 @@ + '例外のメッセージ: :message', + 'exception_trace' => '例外の追跡: :trace', + 'exception_message_title' => '例外のメッセージ', + 'exception_trace_title' => '例外の追跡', + + 'backup_failed_subject' => ':application_name のバックアップに失敗しました。', + 'backup_failed_body' => '重要: :application_name のバックアップ中にエラーが発生しました。', + + 'backup_successful_subject' => ':application_name のバックアップに成功しました。', + 'backup_successful_subject_title' => 'バックアップに成功しました!', + 'backup_successful_body' => '朗報です。ディスク :disk_name へ :application_name のバックアップが成功しました。', + + 'cleanup_failed_subject' => ':application_name のバックアップ削除に失敗しました。', + 'cleanup_failed_body' => ':application_name のバックアップ削除中にエラーが発生しました。', + + 'cleanup_successful_subject' => ':application_name のバックアップ削除に成功しました。', + 'cleanup_successful_subject_title' => 'バックアップ削除に成功しました!', + 'cleanup_successful_body' => 'ディスク :disk_name に保存された :application_name のバックアップ削除に成功しました。', + + 'healthy_backup_found_subject' => 'ディスク :disk_name への :application_name のバックアップは正常です。', + 'healthy_backup_found_subject_title' => ':application_name のバックアップは正常です。', + 'healthy_backup_found_body' => ':application_name へのバックアップは正常です。いい仕事してますね!', + + 'unhealthy_backup_found_subject' => '重要: :application_name のバックアップに異常があります。', + 'unhealthy_backup_found_subject_title' => '重要: :application_name のバックアップに異常があります。 :problem', + 'unhealthy_backup_found_body' => ':disk_name への :application_name のバックアップに異常があります。', + 'unhealthy_backup_found_not_reachable' => 'バックアップ先にアクセスできませんでした。 :error', + 'unhealthy_backup_found_empty' => 'このアプリケーションのバックアップは見つかりませんでした。', + 'unhealthy_backup_found_old' => ':date に保存された直近のバックアップが古すぎます。', + 'unhealthy_backup_found_unknown' => '申し訳ございません。予期せぬエラーです。', + 'unhealthy_backup_found_full' => 'バックアップがディスク容量を圧迫しています。現在の使用量 :disk_usage は、許可された限界値 :disk_limit を超えています。', +]; diff --git a/resources/lang/vendor/backup/nl/notifications.php b/resources/lang/vendor/backup/nl/notifications.php new file mode 100644 index 0000000..5dbc65e --- /dev/null +++ b/resources/lang/vendor/backup/nl/notifications.php @@ -0,0 +1,35 @@ + 'Fout bericht: :message', + 'exception_trace' => 'Fout trace: :trace', + 'exception_message_title' => 'Fout bericht', + 'exception_trace_title' => 'Fout trace', + + 'backup_failed_subject' => 'Back-up van :application_name mislukt', + 'backup_failed_body' => 'Belangrijk: Er ging iets fout tijdens het maken van een back-up van :application_name', + + 'backup_successful_subject' => 'Succesvolle nieuwe back-up van :application_name', + 'backup_successful_subject_title' => 'Succesvolle nieuwe back-up!', + 'backup_successful_body' => 'Goed nieuws, een nieuwe back-up van :application_name was succesvol aangemaakt op de schijf genaamd :disk_name.', + + 'cleanup_failed_subject' => 'Het opschonen van de back-ups van :application_name is mislukt.', + 'cleanup_failed_body' => 'Er ging iets fout tijdens het opschonen van de back-ups van :application_name', + + 'cleanup_successful_subject' => 'Opschonen van :application_name back-ups was succesvol.', + 'cleanup_successful_subject_title' => 'Opschonen van back-ups was succesvol!', + 'cleanup_successful_body' => 'Het opschonen van de :application_name back-ups op de schijf genaamd :disk_name was succesvol.', + + 'healthy_backup_found_subject' => 'De back-ups voor :application_name op schijf :disk_name zijn gezond', + 'healthy_backup_found_subject_title' => 'De back-ups voor :application_name zijn gezond', + 'healthy_backup_found_body' => 'De back-ups voor :application_name worden als gezond beschouwd. Goed gedaan!', + + 'unhealthy_backup_found_subject' => 'Belangrijk: De back-ups voor :application_name zijn niet meer gezond', + 'unhealthy_backup_found_subject_title' => 'Belangrijk: De back-ups voor :application_name zijn niet gezond. :problem', + 'unhealthy_backup_found_body' => 'De back-ups voor :application_name op schijf :disk_name zijn niet gezond.', + 'unhealthy_backup_found_not_reachable' => 'De back-upbestemming kon niet worden bereikt. :error', + 'unhealthy_backup_found_empty' => 'Er zijn geen back-ups van deze applicatie beschikbaar.', + 'unhealthy_backup_found_old' => 'De laatste back-up gemaakt op :date is te oud.', + 'unhealthy_backup_found_unknown' => 'Sorry, een exacte reden kon niet worden bepaald.', + 'unhealthy_backup_found_full' => 'De back-ups gebruiken te veel opslagruimte. Momenteel wordt er :disk_usage gebruikt wat hoger is dan de toegestane limiet van :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/no/notifications.php b/resources/lang/vendor/backup/no/notifications.php new file mode 100644 index 0000000..e60bc1c --- /dev/null +++ b/resources/lang/vendor/backup/no/notifications.php @@ -0,0 +1,35 @@ + 'Exception: :message', + 'exception_trace' => 'Exception trace: :trace', + 'exception_message_title' => 'Exception', + 'exception_trace_title' => 'Exception trace', + + 'backup_failed_subject' => 'Backup feilet for :application_name', + 'backup_failed_body' => 'Viktg: En feil oppstod under backing av :application_name', + + 'backup_successful_subject' => 'Gjennomført backup av :application_name', + 'backup_successful_subject_title' => 'Gjennomført backup!', + 'backup_successful_body' => 'Gode nyheter, en ny backup av :application_name ble opprettet på disken :disk_name.', + + 'cleanup_failed_subject' => 'Opprydding av backup for :application_name feilet.', + 'cleanup_failed_body' => 'En feil oppstod under opprydding av backups for :application_name', + + 'cleanup_successful_subject' => 'Opprydding av backup for :application_name gjennomført', + 'cleanup_successful_subject_title' => 'Opprydding av backup gjennomført!', + 'cleanup_successful_body' => 'Oppryddingen av backup for :application_name på disken :disk_name har blitt gjennomført.', + + 'healthy_backup_found_subject' => 'Alle backups for :application_name på disken :disk_name er OK', + 'healthy_backup_found_subject_title' => 'Alle backups for :application_name er OK', + 'healthy_backup_found_body' => 'Alle backups for :application_name er ok. Godt jobba!', + + 'unhealthy_backup_found_subject' => 'Viktig: Backups for :application_name ikke OK', + 'unhealthy_backup_found_subject_title' => 'Viktig: Backups for :application_name er ikke OK. :problem', + 'unhealthy_backup_found_body' => 'Backups for :application_name på disken :disk_name er ikke OK.', + 'unhealthy_backup_found_not_reachable' => 'Kunne ikke finne backup-destinasjonen. :error', + 'unhealthy_backup_found_empty' => 'Denne applikasjonen mangler backups.', + 'unhealthy_backup_found_old' => 'Den siste backupem fra :date er for gammel.', + 'unhealthy_backup_found_unknown' => 'Beklager, kunne ikke finne nøyaktig årsak.', + 'unhealthy_backup_found_full' => 'Backups bruker for mye lagringsplass. Nåværende diskbruk er :disk_usage, som er mer enn den tillatte grensen på :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/pl/notifications.php b/resources/lang/vendor/backup/pl/notifications.php new file mode 100644 index 0000000..7b267ac --- /dev/null +++ b/resources/lang/vendor/backup/pl/notifications.php @@ -0,0 +1,35 @@ + 'Błąd: :message', + 'exception_trace' => 'Zrzut błędu: :trace', + 'exception_message_title' => 'Błąd', + 'exception_trace_title' => 'Zrzut błędu', + + 'backup_failed_subject' => 'Tworzenie kopii zapasowej aplikacji :application_name nie powiodło się', + 'backup_failed_body' => 'Ważne: Wystąpił błąd podczas tworzenia kopii zapasowej aplikacji :application_name', + + 'backup_successful_subject' => 'Pomyślnie utworzono kopię zapasową aplikacji :application_name', + 'backup_successful_subject_title' => 'Nowa kopia zapasowa!', + 'backup_successful_body' => 'Wspaniała wiadomość, nowa kopia zapasowa aplikacji :application_name została pomyślnie utworzona na dysku o nazwie :disk_name.', + + 'cleanup_failed_subject' => 'Czyszczenie kopii zapasowych aplikacji :application_name nie powiodło się.', + 'cleanup_failed_body' => 'Wystąpił błąd podczas czyszczenia kopii zapasowej aplikacji :application_name', + + 'cleanup_successful_subject' => 'Kopie zapasowe aplikacji :application_name zostały pomyślnie wyczyszczone', + 'cleanup_successful_subject_title' => 'Kopie zapasowe zostały pomyślnie wyczyszczone!', + 'cleanup_successful_body' => 'Czyszczenie kopii zapasowych aplikacji :application_name na dysku :disk_name zakończone sukcesem.', + + 'healthy_backup_found_subject' => 'Kopie zapasowe aplikacji :application_name na dysku :disk_name są poprawne', + 'healthy_backup_found_subject_title' => 'Kopie zapasowe aplikacji :application_name są poprawne', + 'healthy_backup_found_body' => 'Kopie zapasowe aplikacji :application_name są poprawne. Dobra robota!', + + 'unhealthy_backup_found_subject' => 'Ważne: Kopie zapasowe aplikacji :application_name są niepoprawne', + 'unhealthy_backup_found_subject_title' => 'Ważne: Kopie zapasowe aplikacji :application_name są niepoprawne. :problem', + 'unhealthy_backup_found_body' => 'Kopie zapasowe aplikacji :application_name na dysku :disk_name są niepoprawne.', + 'unhealthy_backup_found_not_reachable' => 'Miejsce docelowe kopii zapasowej nie jest osiągalne. :error', + 'unhealthy_backup_found_empty' => 'W aplikacji nie ma żadnej kopii zapasowych tej aplikacji.', + 'unhealthy_backup_found_old' => 'Ostatnia kopia zapasowa wykonania dnia :date jest zbyt stara.', + 'unhealthy_backup_found_unknown' => 'Niestety, nie można ustalić dokładnego błędu.', + 'unhealthy_backup_found_full' => 'Kopie zapasowe zajmują zbyt dużo miejsca. Obecne użycie dysku :disk_usage jest większe od ustalonego limitu :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/pt-BR/notifications.php b/resources/lang/vendor/backup/pt-BR/notifications.php new file mode 100644 index 0000000..d22ebf4 --- /dev/null +++ b/resources/lang/vendor/backup/pt-BR/notifications.php @@ -0,0 +1,35 @@ + 'Exception message: :message', + 'exception_trace' => 'Exception trace: :trace', + 'exception_message_title' => 'Exception message', + 'exception_trace_title' => 'Exception trace', + + 'backup_failed_subject' => 'Falha no backup da aplicação :application_name', + 'backup_failed_body' => 'Importante: Ocorreu um erro ao fazer o backup da aplicação :application_name', + + 'backup_successful_subject' => 'Backup realizado com sucesso: :application_name', + 'backup_successful_subject_title' => 'Backup Realizado com sucesso!', + 'backup_successful_body' => 'Boas notícias, um novo backup da aplicação :application_name foi criado no disco :disk_name.', + + 'cleanup_failed_subject' => 'Falha na limpeza dos backups da aplicação :application_name.', + 'cleanup_failed_body' => 'Um erro ocorreu ao fazer a limpeza dos backups da aplicação :application_name', + + 'cleanup_successful_subject' => 'Limpeza dos backups da aplicação :application_name concluída!', + 'cleanup_successful_subject_title' => 'Limpeza dos backups concluída!', + 'cleanup_successful_body' => 'A limpeza dos backups da aplicação :application_name no disco :disk_name foi concluída.', + + 'healthy_backup_found_subject' => 'Os backups da aplicação :application_name no disco :disk_name estão em dia', + 'healthy_backup_found_subject_title' => 'Os backups da aplicação :application_name estão em dia', + 'healthy_backup_found_body' => 'Os backups da aplicação :application_name estão em dia. Bom trabalho!', + + 'unhealthy_backup_found_subject' => 'Importante: Os backups da aplicação :application_name não estão em dia', + 'unhealthy_backup_found_subject_title' => 'Importante: Os backups da aplicação :application_name não estão em dia. :problem', + 'unhealthy_backup_found_body' => 'Os backups da aplicação :application_name no disco :disk_name não estão em dia.', + 'unhealthy_backup_found_not_reachable' => 'O destino dos backups não pode ser alcançado. :error', + 'unhealthy_backup_found_empty' => 'Não existem backups para essa aplicação.', + 'unhealthy_backup_found_old' => 'O último backup realizado em :date é considerado muito antigo.', + 'unhealthy_backup_found_unknown' => 'Desculpe, a exata razão não pode ser encontrada.', + 'unhealthy_backup_found_full' => 'Os backups estão usando muito espaço de armazenamento. A utilização atual é de :disk_usage, o que é maior que o limite permitido de :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/pt/notifications.php b/resources/lang/vendor/backup/pt/notifications.php new file mode 100644 index 0000000..1656b93 --- /dev/null +++ b/resources/lang/vendor/backup/pt/notifications.php @@ -0,0 +1,35 @@ + 'Exception message: :message', + 'exception_trace' => 'Exception trace: :trace', + 'exception_message_title' => 'Exception message', + 'exception_trace_title' => 'Exception trace', + + 'backup_failed_subject' => 'Falha no backup da aplicação :application_name', + 'backup_failed_body' => 'Importante: Ocorreu um erro ao executar o backup da aplicação :application_name', + + 'backup_successful_subject' => 'Backup realizado com sucesso: :application_name', + 'backup_successful_subject_title' => 'Backup Realizado com Sucesso!', + 'backup_successful_body' => 'Boas notícias, foi criado um novo backup no disco :disk_name referente à aplicação :application_name.', + + 'cleanup_failed_subject' => 'Falha na limpeza dos backups da aplicação :application_name.', + 'cleanup_failed_body' => 'Ocorreu um erro ao executar a limpeza dos backups da aplicação :application_name', + + 'cleanup_successful_subject' => 'Limpeza dos backups da aplicação :application_name concluída!', + 'cleanup_successful_subject_title' => 'Limpeza dos backups concluída!', + 'cleanup_successful_body' => 'Concluída a limpeza dos backups da aplicação :application_name no disco :disk_name.', + + 'healthy_backup_found_subject' => 'Os backups da aplicação :application_name no disco :disk_name estão em dia', + 'healthy_backup_found_subject_title' => 'Os backups da aplicação :application_name estão em dia', + 'healthy_backup_found_body' => 'Os backups da aplicação :application_name estão em dia. Bom trabalho!', + + 'unhealthy_backup_found_subject' => 'Importante: Os backups da aplicação :application_name não estão em dia', + 'unhealthy_backup_found_subject_title' => 'Importante: Os backups da aplicação :application_name não estão em dia. :problem', + 'unhealthy_backup_found_body' => 'Os backups da aplicação :application_name no disco :disk_name não estão em dia.', + 'unhealthy_backup_found_not_reachable' => 'O destino dos backups não pode ser alcançado. :error', + 'unhealthy_backup_found_empty' => 'Não existem backups para essa aplicação.', + 'unhealthy_backup_found_old' => 'O último backup realizado em :date é demasiado antigo.', + 'unhealthy_backup_found_unknown' => 'Desculpe, impossível determinar a razão exata.', + 'unhealthy_backup_found_full' => 'Os backups estão a utilizar demasiado espaço de armazenamento. A utilização atual é de :disk_usage, o que é maior que o limite permitido de :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/ro/notifications.php b/resources/lang/vendor/backup/ro/notifications.php new file mode 100644 index 0000000..cc0322d --- /dev/null +++ b/resources/lang/vendor/backup/ro/notifications.php @@ -0,0 +1,35 @@ + 'Cu excepția mesajului: :message', + 'exception_trace' => 'Urmă excepţie: :trace', + 'exception_message_title' => 'Mesaj de excepție', + 'exception_trace_title' => 'Urmă excepţie', + + 'backup_failed_subject' => 'Nu s-a putut face copie de rezervă pentru :application_name', + 'backup_failed_body' => 'Important: A apărut o eroare în timpul generării copiei de rezervă pentru :application_name', + + 'backup_successful_subject' => 'Copie de rezervă efectuată cu succes pentru :application_name', + 'backup_successful_subject_title' => 'O nouă copie de rezervă a fost efectuată cu succes!', + 'backup_successful_body' => 'Vești bune, o nouă copie de rezervă pentru :application_name a fost creată cu succes pe discul cu numele :disk_name.', + + 'cleanup_failed_subject' => 'Curățarea copiilor de rezervă pentru :application_name nu a reușit.', + 'cleanup_failed_body' => 'A apărut o eroare în timpul curățirii copiilor de rezervă pentru :application_name', + + 'cleanup_successful_subject' => 'Curățarea copiilor de rezervă pentru :application_name a fost făcută cu succes', + 'cleanup_successful_subject_title' => 'Curățarea copiilor de rezervă a fost făcută cu succes!', + 'cleanup_successful_body' => 'Curățarea copiilor de rezervă pentru :application_name de pe discul cu numele :disk_name a fost făcută cu succes.', + + 'healthy_backup_found_subject' => 'Copiile de rezervă pentru :application_name de pe discul :disk_name sunt în regulă', + 'healthy_backup_found_subject_title' => 'Copiile de rezervă pentru :application_name sunt în regulă', + 'healthy_backup_found_body' => 'Copiile de rezervă pentru :application_name sunt considerate în regulă. Bună treabă!', + + 'unhealthy_backup_found_subject' => 'Important: Copiile de rezervă pentru :application_name nu sunt în regulă', + 'unhealthy_backup_found_subject_title' => 'Important: Copiile de rezervă pentru :application_name nu sunt în regulă. :problem', + 'unhealthy_backup_found_body' => 'Copiile de rezervă pentru :application_name de pe discul :disk_name nu sunt în regulă.', + 'unhealthy_backup_found_not_reachable' => 'Nu se poate ajunge la destinația copiilor de rezervă. :error', + 'unhealthy_backup_found_empty' => 'Nu există copii de rezervă ale acestei aplicații.', + 'unhealthy_backup_found_old' => 'Cea mai recentă copie de rezervă făcută la :date este considerată prea veche.', + 'unhealthy_backup_found_unknown' => 'Ne pare rău, un motiv exact nu poate fi determinat.', + 'unhealthy_backup_found_full' => 'Copiile de rezervă folosesc prea mult spațiu de stocare. Utilizarea curentă este de :disk_usage care este mai mare decât limita permisă de :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/ru/notifications.php b/resources/lang/vendor/backup/ru/notifications.php new file mode 100644 index 0000000..875633c --- /dev/null +++ b/resources/lang/vendor/backup/ru/notifications.php @@ -0,0 +1,35 @@ + 'Сообщение об ошибке: :message', + 'exception_trace' => 'Сведения об ошибке: :trace', + 'exception_message_title' => 'Сообщение об ошибке', + 'exception_trace_title' => 'Сведения об ошибке', + + 'backup_failed_subject' => 'Не удалось сделать резервную копию :application_name', + 'backup_failed_body' => 'Внимание: Произошла ошибка во время резервного копирования :application_name', + + 'backup_successful_subject' => 'Успешно создана новая резервная копия :application_name', + 'backup_successful_subject_title' => 'Успешно создана новая резервная копия!', + 'backup_successful_body' => 'Отличная новость, новая резервная копия :application_name успешно создана и сохранена на диск :disk_name.', + + 'cleanup_failed_subject' => 'Не удалось очистить резервные копии :application_name', + 'cleanup_failed_body' => 'Произошла ошибка при очистке резервных копий :application_name', + + 'cleanup_successful_subject' => 'Очистка от резервных копий :application_name прошла успешно', + 'cleanup_successful_subject_title' => 'Очистка резервных копий прошла удачно!', + 'cleanup_successful_body' => 'Очистка от старых резервных копий :application_name на диске :disk_name прошла удачно.', + + 'healthy_backup_found_subject' => 'Резервная копия :application_name с диска :disk_name установлена', + 'healthy_backup_found_subject_title' => 'Резервная копия :application_name установлена', + 'healthy_backup_found_body' => 'Резервная копия :application_name успешно установлена. Хорошая работа!', + + 'unhealthy_backup_found_subject' => 'Внимание: резервная копия :application_name не установилась', + 'unhealthy_backup_found_subject_title' => 'Внимание: резервная копия для :application_name не установилась. :problem', + 'unhealthy_backup_found_body' => 'Резервная копия для :application_name на диске :disk_name не установилась.', + 'unhealthy_backup_found_not_reachable' => 'Резервная копия не смогла установиться. :error', + 'unhealthy_backup_found_empty' => 'Резервные копии для этого приложения отсутствуют.', + 'unhealthy_backup_found_old' => 'Последнее резервное копирование создано :date является устаревшим.', + 'unhealthy_backup_found_unknown' => 'Извините, точная причина не может быть определена.', + 'unhealthy_backup_found_full' => 'Резервные копии используют слишком много памяти. Используется :disk_usage что выше допустимого предела: :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/tr/notifications.php b/resources/lang/vendor/backup/tr/notifications.php new file mode 100644 index 0000000..298b0ec --- /dev/null +++ b/resources/lang/vendor/backup/tr/notifications.php @@ -0,0 +1,35 @@ + 'Hata mesajı: :message', + 'exception_trace' => 'Hata izleri: :trace', + 'exception_message_title' => 'Hata mesajı', + 'exception_trace_title' => 'Hata izleri', + + 'backup_failed_subject' => 'Yedeklenemedi :application_name', + 'backup_failed_body' => 'Önemli: Yedeklenirken bir hata oluştu :application_name', + + 'backup_successful_subject' => 'Başarılı :application_name yeni yedeklemesi', + 'backup_successful_subject_title' => 'Başarılı bir yeni yedekleme!', + 'backup_successful_body' => 'Harika bir haber, :application_name âit yeni bir yedekleme :disk_name adlı diskte başarıyla oluşturuldu.', + + 'cleanup_failed_subject' => ':application_name yedeklemeleri temizlenmesi başarısız.', + 'cleanup_failed_body' => ':application_name yedeklerini temizlerken bir hata oluştu ', + + 'cleanup_successful_subject' => ':application_name yedeklemeleri temizlenmesi başarılı.', + 'cleanup_successful_subject_title' => 'Yedeklerin temizlenmesi başarılı!', + 'cleanup_successful_body' => ':application_name yedeklemeleri temizlenmesi ,:disk_name diskinden silindi', + + 'healthy_backup_found_subject' => ':application_name yedeklenmesi ,:disk_name adlı diskte sağlıklı', + 'healthy_backup_found_subject_title' => ':application_name yedeklenmesi sağlıklı', + 'healthy_backup_found_body' => ':application_name için yapılan yedeklemeler sağlıklı sayılır. Aferin!', + + 'unhealthy_backup_found_subject' => 'Önemli: :application_name için yedeklemeler sağlıksız', + 'unhealthy_backup_found_subject_title' => 'Önemli: :application_name için yedeklemeler sağlıksız. :problem', + 'unhealthy_backup_found_body' => 'Yedeklemeler: :application_name disk: :disk_name sağlıksız.', + 'unhealthy_backup_found_not_reachable' => 'Yedekleme hedefine ulaşılamıyor. :error', + 'unhealthy_backup_found_empty' => 'Bu uygulamanın yedekleri yok.', + 'unhealthy_backup_found_old' => ':date tarihinde yapılan en son yedekleme çok eski kabul ediliyor.', + 'unhealthy_backup_found_unknown' => 'Üzgünüm, kesin bir sebep belirlenemiyor.', + 'unhealthy_backup_found_full' => 'Yedeklemeler çok fazla depolama alanı kullanıyor. Şu anki kullanım: :disk_usage, izin verilen sınırdan yüksek: :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/uk/notifications.php b/resources/lang/vendor/backup/uk/notifications.php new file mode 100644 index 0000000..a39c90a --- /dev/null +++ b/resources/lang/vendor/backup/uk/notifications.php @@ -0,0 +1,35 @@ + 'Повідомлення про помилку: :message', + 'exception_trace' => 'Деталі помилки: :trace', + 'exception_message_title' => 'Повідомлення помилки', + 'exception_trace_title' => 'Деталі помилки', + + 'backup_failed_subject' => 'Не вдалось зробити резервну копію :application_name', + 'backup_failed_body' => 'Увага: Трапилась помилка під час резервного копіювання :application_name', + + 'backup_successful_subject' => 'Успішне резервне копіювання :application_name', + 'backup_successful_subject_title' => 'Успішно створена резервна копія!', + 'backup_successful_body' => 'Чудова новина, нова резервна копія :application_name успішно створена і збережена на диск :disk_name.', + + 'cleanup_failed_subject' => 'Не вдалось очистити резервні копії :application_name', + 'cleanup_failed_body' => 'Сталася помилка під час очищення резервних копій :application_name', + + 'cleanup_successful_subject' => 'Успішне очищення від резервних копій :application_name', + 'cleanup_successful_subject_title' => 'Очищення резервних копій пройшло вдало!', + 'cleanup_successful_body' => 'Очищенно від старих резервних копій :application_name на диску :disk_name пойшло успішно.', + + 'healthy_backup_found_subject' => 'Резервна копія :application_name з диску :disk_name установлена', + 'healthy_backup_found_subject_title' => 'Резервна копія :application_name установлена', + 'healthy_backup_found_body' => 'Резервна копія :application_name успішно установлена. Хороша робота!', + + 'unhealthy_backup_found_subject' => 'Увага: резервна копія :application_name не установилась', + 'unhealthy_backup_found_subject_title' => 'Увага: резервна копія для :application_name не установилась. :problem', + 'unhealthy_backup_found_body' => 'Резервна копія для :application_name на диску :disk_name не установилась.', + 'unhealthy_backup_found_not_reachable' => 'Резервна копія не змогла установитись. :error', + 'unhealthy_backup_found_empty' => 'Резервні копії для цього додатку відсутні.', + 'unhealthy_backup_found_old' => 'Останнє резервне копіювання створено :date є застарілим.', + 'unhealthy_backup_found_unknown' => 'Вибачте, але ми не змогли визначити точну причину.', + 'unhealthy_backup_found_full' => 'Резервні копії використовують занадто багато пам`яті. Використовується :disk_usage що вище за допустиму межу :disk_limit.', +]; diff --git a/resources/lang/vendor/backup/zh-CN/notifications.php b/resources/lang/vendor/backup/zh-CN/notifications.php new file mode 100644 index 0000000..bbab325 --- /dev/null +++ b/resources/lang/vendor/backup/zh-CN/notifications.php @@ -0,0 +1,35 @@ + '异常信息: :message', + 'exception_trace' => '异常跟踪: :trace', + 'exception_message_title' => '异常信息', + 'exception_trace_title' => '异常跟踪', + + 'backup_failed_subject' => ':application_name 备份失败', + 'backup_failed_body' => '重要说明:备份 :application_name 时发生错误', + + 'backup_successful_subject' => ':application_name 备份成功', + 'backup_successful_subject_title' => '备份成功!', + 'backup_successful_body' => '好消息, :application_name 备份成功,位于磁盘 :disk_name 中。', + + 'cleanup_failed_subject' => '清除 :application_name 的备份失败。', + 'cleanup_failed_body' => '清除备份 :application_name 时发生错误', + + 'cleanup_successful_subject' => '成功清除 :application_name 的备份', + 'cleanup_successful_subject_title' => '成功清除备份!', + 'cleanup_successful_body' => '成功清除 :disk_name 磁盘上 :application_name 的备份。', + + 'healthy_backup_found_subject' => ':disk_name 磁盘上 :application_name 的备份是健康的', + 'healthy_backup_found_subject_title' => ':application_name 的备份是健康的', + 'healthy_backup_found_body' => ':application_name 的备份是健康的。干的好!', + + 'unhealthy_backup_found_subject' => '重要说明::application_name 的备份不健康', + 'unhealthy_backup_found_subject_title' => '重要说明::application_name 备份不健康。 :problem', + 'unhealthy_backup_found_body' => ':disk_name 磁盘上 :application_name 的备份不健康。', + 'unhealthy_backup_found_not_reachable' => '无法访问备份目标。 :error', + 'unhealthy_backup_found_empty' => '根本没有此应用程序的备份。', + 'unhealthy_backup_found_old' => '最近的备份创建于 :date ,太旧了。', + 'unhealthy_backup_found_unknown' => '对不起,确切原因无法确定。', + 'unhealthy_backup_found_full' => '备份占用了太多存储空间。当前占用了 :disk_usage ,高于允许的限制 :disk_limit。', +]; diff --git a/resources/lang/vendor/backup/zh-TW/notifications.php b/resources/lang/vendor/backup/zh-TW/notifications.php new file mode 100644 index 0000000..be561c4 --- /dev/null +++ b/resources/lang/vendor/backup/zh-TW/notifications.php @@ -0,0 +1,35 @@ + '異常訊息: :message', + 'exception_trace' => '異常追蹤: :trace', + 'exception_message_title' => '異常訊息', + 'exception_trace_title' => '異常追蹤', + + 'backup_failed_subject' => ':application_name 備份失敗', + 'backup_failed_body' => '重要說明:備份 :application_name 時發生錯誤', + + 'backup_successful_subject' => ':application_name 備份成功', + 'backup_successful_subject_title' => '備份成功!', + 'backup_successful_body' => '好消息, :application_name 備份成功,位於磁盤 :disk_name 中。', + + 'cleanup_failed_subject' => '清除 :application_name 的備份失敗。', + 'cleanup_failed_body' => '清除備份 :application_name 時發生錯誤', + + 'cleanup_successful_subject' => '成功清除 :application_name 的備份', + 'cleanup_successful_subject_title' => '成功清除備份!', + 'cleanup_successful_body' => '成功清除 :disk_name 磁盤上 :application_name 的備份。', + + 'healthy_backup_found_subject' => ':disk_name 磁盤上 :application_name 的備份是健康的', + 'healthy_backup_found_subject_title' => ':application_name 的備份是健康的', + 'healthy_backup_found_body' => ':application_name 的備份是健康的。幹的好!', + + 'unhealthy_backup_found_subject' => '重要說明::application_name 的備份不健康', + 'unhealthy_backup_found_subject_title' => '重要說明::application_name 備份不健康。 :problem', + 'unhealthy_backup_found_body' => ':disk_name 磁盤上 :application_name 的備份不健康。', + 'unhealthy_backup_found_not_reachable' => '無法訪問備份目標。 :error', + 'unhealthy_backup_found_empty' => '根本沒有此應用程序的備份。', + 'unhealthy_backup_found_old' => '最近的備份創建於 :date ,太舊了。', + 'unhealthy_backup_found_unknown' => '對不起,確切原因無法確定。', + 'unhealthy_backup_found_full' => '備份佔用了太多存儲空間。當前佔用了 :disk_usage ,高於允許的限制 :disk_limit。', +]; From 283ed2c4bf55c08124b9bae439b8f72540798e18 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:29:36 +0200 Subject: [PATCH 03/37] Added updater backend https://github.com/codedge/laravel-selfupdater --- composer.json | 6 +- composer.lock | 410 +++++++++++++++++- config/self-update.php | 155 +++++++ .../mails/update-available.blade.php | 5 + .../vendor/self-update/self-update.blade.php | 0 5 files changed, 574 insertions(+), 2 deletions(-) create mode 100644 config/self-update.php create mode 100644 resources/views/vendor/self-update/mails/update-available.blade.php create mode 100644 resources/views/vendor/self-update/self-update.blade.php diff --git a/composer.json b/composer.json index 6b98332..419711d 100755 --- a/composer.json +++ b/composer.json @@ -6,6 +6,7 @@ "license": "GPL-3.0-or-later", "require": { "php": "^7.3|^8.0", + "codedge/laravel-selfupdater": "^3.4", "fideloper/proxy": "^4.4", "fruitcake/laravel-cors": "^2.0", "geo-sot/laravel-env-editor": "^1.1", @@ -55,7 +56,10 @@ "config": { "optimize-autoloader": true, "preferred-install": "dist", - "sort-packages": true + "sort-packages": true, + "allow-plugins": { + "phpstan/extension-installer": true + } }, "minimum-stability": "dev", "prefer-stable": true diff --git a/composer.lock b/composer.lock index fd99cd7..1e2d56d 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "abd272ad948dfda0e9f2b936b59624dd", + "content-hash": "b58534a63ebf96d8d66b784eaf5ed8ab", "packages": [ { "name": "asm89/stack-cors", @@ -122,6 +122,91 @@ ], "time": "2021-08-15T20:50:18+00:00" }, + { + "name": "codedge/laravel-selfupdater", + "version": "3.4.1", + "source": { + "type": "git", + "url": "https://github.com/codedge/laravel-selfupdater.git", + "reference": "45f8ed72e8a2df57595340c5515ecbfed351df7e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/codedge/laravel-selfupdater/zipball/45f8ed72e8a2df57595340c5515ecbfed351df7e", + "reference": "45f8ed72e8a2df57595340c5515ecbfed351df7e", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-zip": "*", + "guzzlehttp/guzzle": "^7.4", + "laravel/framework": "^8.83.10", + "league/uri": "^6.5", + "php": "^7.4 || ^8.0 || ^8.1", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan-phpunit": "^1.1" + }, + "require-dev": { + "dg/bypass-finals": "^1.3", + "mikey179/vfsstream": "^1.6", + "mockery/mockery": "^1.5", + "orchestra/testbench": "^6.24.1", + "phpunit/phpunit": "^9.5.20" + }, + "type": "library", + "extra": { + "laravel": { + "aliases": { + "Updater": "Codedge\\Updater\\UpdaterFacade" + }, + "providers": [ + "Codedge\\Updater\\UpdaterServiceProvider" + ] + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Codedge\\Updater\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Holger Lösken", + "email": "holger.loesken@codedge.de", + "homepage": "https://codedge.de", + "role": "Developer" + } + ], + "description": "Providing an auto-updating functionality for your self-hosted Laravel application.", + "keywords": [ + "auto update", + "auto-update", + "laravel", + "laravel application", + "self update", + "self-hosted laravel application", + "self-update", + "update" + ], + "support": { + "issues": "https://github.com/codedge/laravel-selfupdater/issues", + "source": "https://github.com/codedge/laravel-selfupdater" + }, + "funding": [ + { + "url": "https://github.com/codedge", + "type": "github" + } + ], + "time": "2022-05-01T16:00:55+00:00" + }, { "name": "doctrine/inflector", "version": "2.0.4", @@ -1545,6 +1630,173 @@ ], "time": "2022-04-17T13:12:02+00:00" }, + { + "name": "league/uri", + "version": "6.5.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri.git", + "reference": "c68ca445abb04817d740ddd6d0b3551826ef0c5a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri/zipball/c68ca445abb04817d740ddd6d0b3551826ef0c5a", + "reference": "c68ca445abb04817d740ddd6d0b3551826ef0c5a", + "shasum": "" + }, + "require": { + "ext-json": "*", + "league/uri-interfaces": "^2.3", + "php": "^7.3 || ^8.0", + "psr/http-message": "^1.0" + }, + "conflict": { + "league/uri-schemes": "^1.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.19 || ^3.0", + "phpstan/phpstan": "^0.12.90", + "phpstan/phpstan-phpunit": "^0.12.22", + "phpstan/phpstan-strict-rules": "^0.12.11", + "phpunit/phpunit": "^8.0 || ^9.0", + "psr/http-factory": "^1.0" + }, + "suggest": { + "ext-fileinfo": "Needed to create Data URI from a filepath", + "ext-intl": "Needed to improve host validation", + "league/uri-components": "Needed to easily manipulate URI objects", + "psr/http-factory": "Needed to use the URI factory" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "URI manipulation library", + "homepage": "http://uri.thephpleague.com", + "keywords": [ + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "middleware", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "uri-template", + "url", + "ws" + ], + "support": { + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri/issues", + "source": "https://github.com/thephpleague/uri/tree/6.5.0" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2021-08-27T09:54:07+00:00" + }, + { + "name": "league/uri-interfaces", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri-interfaces.git", + "reference": "00e7e2943f76d8cb50c7dfdc2f6dee356e15e383" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/00e7e2943f76d8cb50c7dfdc2f6dee356e15e383", + "reference": "00e7e2943f76d8cb50c7dfdc2f6dee356e15e383", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.19", + "phpstan/phpstan": "^0.12.90", + "phpstan/phpstan-phpunit": "^0.12.19", + "phpstan/phpstan-strict-rules": "^0.12.9", + "phpunit/phpunit": "^8.5.15 || ^9.5" + }, + "suggest": { + "ext-intl": "to use the IDNA feature", + "symfony/intl": "to use the IDNA feature via Symfony Polyfill" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "Common interface for URI representation", + "homepage": "http://github.com/thephpleague/uri-interfaces", + "keywords": [ + "rfc3986", + "rfc3987", + "uri", + "url" + ], + "support": { + "issues": "https://github.com/thephpleague/uri-interfaces/issues", + "source": "https://github.com/thephpleague/uri-interfaces/tree/2.3.0" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2021-06-28T04:27:21+00:00" + }, { "name": "monolog/monolog", "version": "2.6.0", @@ -1938,6 +2190,162 @@ ], "time": "2021-12-04T23:24:31+00:00" }, + { + "name": "phpstan/extension-installer", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/phpstan/extension-installer.git", + "reference": "66c7adc9dfa38b6b5838a9fb728b68a7d8348051" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/66c7adc9dfa38b6b5838a9fb728b68a7d8348051", + "reference": "66c7adc9dfa38b6b5838a9fb728b68a7d8348051", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1 || ^2.0", + "php": "^7.1 || ^8.0", + "phpstan/phpstan": ">=0.11.6" + }, + "require-dev": { + "composer/composer": "^1.8", + "phing/phing": "^2.16.3", + "php-parallel-lint/php-parallel-lint": "^1.2.0", + "phpstan/phpstan-strict-rules": "^0.11 || ^0.12" + }, + "type": "composer-plugin", + "extra": { + "class": "PHPStan\\ExtensionInstaller\\Plugin" + }, + "autoload": { + "psr-4": { + "PHPStan\\ExtensionInstaller\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Composer plugin for automatic installation of PHPStan extensions", + "support": { + "issues": "https://github.com/phpstan/extension-installer/issues", + "source": "https://github.com/phpstan/extension-installer/tree/1.1.0" + }, + "time": "2020-12-13T13:06:13+00:00" + }, + { + "name": "phpstan/phpstan", + "version": "1.7.1", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan.git", + "reference": "e3baed2ee2ef322e0f9b8fe8f87fdbe024c7c719" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e3baed2ee2ef322e0f9b8fe8f87fdbe024c7c719", + "reference": "e3baed2ee2ef322e0f9b8fe8f87fdbe024c7c719", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0" + }, + "conflict": { + "phpstan/phpstan-shim": "*" + }, + "bin": [ + "phpstan", + "phpstan.phar" + ], + "type": "library", + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPStan - PHP Static Analysis Tool", + "support": { + "issues": "https://github.com/phpstan/phpstan/issues", + "source": "https://github.com/phpstan/phpstan/tree/1.7.1" + }, + "funding": [ + { + "url": "https://github.com/ondrejmirtes", + "type": "github" + }, + { + "url": "https://github.com/phpstan", + "type": "github" + }, + { + "url": "https://www.patreon.com/phpstan", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", + "type": "tidelift" + } + ], + "time": "2022-05-24T09:05:09+00:00" + }, + { + "name": "phpstan/phpstan-phpunit", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan-phpunit.git", + "reference": "4a3c437c09075736285d1cabb5c75bf27ed0bc84" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/4a3c437c09075736285d1cabb5c75bf27ed0bc84", + "reference": "4a3c437c09075736285d1cabb5c75bf27ed0bc84", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "phpstan/phpstan": "^1.5.0" + }, + "conflict": { + "phpunit/phpunit": "<7.0" + }, + "require-dev": { + "nikic/php-parser": "^4.13.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5" + }, + "type": "phpstan-extension", + "extra": { + "phpstan": { + "includes": [ + "extension.neon", + "rules.neon" + ] + } + }, + "autoload": { + "psr-4": { + "PHPStan\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPUnit extensions and rules for PHPStan", + "support": { + "issues": "https://github.com/phpstan/phpstan-phpunit/issues", + "source": "https://github.com/phpstan/phpstan-phpunit/tree/1.1.1" + }, + "time": "2022-04-20T15:24:25+00:00" + }, { "name": "psr/container", "version": "1.1.1", diff --git a/config/self-update.php b/config/self-update.php new file mode 100644 index 0000000..f3e15fe --- /dev/null +++ b/config/self-update.php @@ -0,0 +1,155 @@ + env('SELF_UPDATER_SOURCE', 'github'), + + /* + |-------------------------------------------------------------------------- + | Version installed + |-------------------------------------------------------------------------- + | + | Set this to the version of your software installed on your system. + | + */ + + 'version_installed' => env('SELF_UPDATER_VERSION_INSTALLED', ''), + + /* + |-------------------------------------------------------------------------- + | Repository types + |-------------------------------------------------------------------------- + | + | A repository can be of different types, which can be specified here. + | Current options: + | - github + | - gitlab + | - http + | + */ + + 'repository_types' => [ + 'github' => [ + 'type' => 'github', + 'repository_vendor' => env('SELF_UPDATER_REPO_VENDOR', ''), + 'repository_name' => env('SELF_UPDATER_REPO_NAME', ''), + 'repository_url' => '', + 'download_path' => env('SELF_UPDATER_DOWNLOAD_PATH', '/tmp'), + 'private_access_token' => env('SELF_UPDATER_GITHUB_PRIVATE_ACCESS_TOKEN', ''), + 'use_branch' => env('SELF_UPDATER_USE_BRANCH', ''), + ], + 'gitlab' => [ + 'type' => 'gitlab', + 'repository_id' => env('SELF_UPDATER_REPO_URL', ''), + 'download_path' => env('SELF_UPDATER_DOWNLOAD_PATH', '/tmp'), + 'private_access_token' => env('SELF_UPDATER_GITLAB_PRIVATE_ACCESS_TOKEN', ''), + ], + 'http' => [ + 'type' => 'http', + 'repository_url' => env('SELF_UPDATER_REPO_URL', ''), + 'pkg_filename_format' => env('SELF_UPDATER_PKG_FILENAME_FORMAT', 'v_VERSION_'), + 'download_path' => env('SELF_UPDATER_DOWNLOAD_PATH', '/tmp'), + 'private_access_token' => env('SELF_UPDATER_HTTP_PRIVATE_ACCESS_TOKEN', ''), + ], + ], + + /* + |-------------------------------------------------------------------------- + | Exclude folders from update + |-------------------------------------------------------------------------- + | + | Specific folders which should not be updated and will be skipped during the + | update process. + | + | Here's already a list of good examples to skip. You may want to keep those. + | + */ + + 'exclude_folders' => [ + '__MACOSX', + 'node_modules', + 'bootstrap/cache', + 'bower', + 'storage/app', + 'storage/framework', + 'storage/logs', + 'storage/self-update', + 'vendor', + ], + + /* + |-------------------------------------------------------------------------- + | Event Logging + |-------------------------------------------------------------------------- + | + | Configure if fired events should be logged + | + */ + + 'log_events' => env('SELF_UPDATER_LOG_EVENTS', false), + + /* + |-------------------------------------------------------------------------- + | Notifications + |-------------------------------------------------------------------------- + | + | Specify for which events you want to get notifications. Out of the box you can use 'mail'. + | + */ + + 'notifications' => [ + 'notifications' => [ + \Codedge\Updater\Notifications\Notifications\UpdateSucceeded::class => ['mail'], + \Codedge\Updater\Notifications\Notifications\UpdateFailed::class => ['mail'], + \Codedge\Updater\Notifications\Notifications\UpdateAvailable::class => ['mail'], + ], + + /* + * Here you can specify the notifiable to which the notifications should be sent. The default + * notifiable will use the variables specified in this config file. + */ + 'notifiable' => \Codedge\Updater\Notifications\Notifiable::class, + + 'mail' => [ + 'to' => [ + 'address' => env('SELF_UPDATER_MAILTO_ADDRESS', 'notifications@example.com'), + 'name' => env('SELF_UPDATER_MAILTO_NAME', ''), + ], + + 'from' => [ + 'address' => env('SELF_UPDATER_MAIL_FROM_ADDRESS', 'updater@example.com'), + 'name' => env('SELF_UPDATER_MAIL_FROM_NAME', 'Update'), + ], + ], + ], + + /* + |--------------------------------------------------------------------------- + | Register custom artisan commands + |--------------------------------------------------------------------------- + */ + + 'artisan_commands' => [ + 'pre_update' => [ + //'command:signature' => [ + // 'class' => Command class + // 'params' => [] + //] + ], + 'post_update' => [ + + ], + ], + +]; diff --git a/resources/views/vendor/self-update/mails/update-available.blade.php b/resources/views/vendor/self-update/mails/update-available.blade.php new file mode 100644 index 0000000..ffa14dc --- /dev/null +++ b/resources/views/vendor/self-update/mails/update-available.blade.php @@ -0,0 +1,5 @@ +Hello! + +The new version {{ $newVersion }} is available. + +Kind regards diff --git a/resources/views/vendor/self-update/self-update.blade.php b/resources/views/vendor/self-update/self-update.blade.php new file mode 100644 index 0000000..e69de29 From 5e5f575d065a251bb460f7d1842f7f9ff7632055 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:30:10 +0200 Subject: [PATCH 04/37] Update updater.blade.php --- resources/views/layouts/updater.blade.php | 129 ++++++++++++++++++++++ 1 file changed, 129 insertions(+) diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php index 8b13789..7cd4936 100644 --- a/resources/views/layouts/updater.blade.php +++ b/resources/views/layouts/updater.blade.php @@ -1 +1,130 @@ + + + + + {{ config('app.name') }} + home_message); ?> + + + + + + + + + @if(file_exists(base_path("littlelink/images/avatar.png" ))) + + @else + + @endif + + {{-- custom font for logo text --}} + + + + @if ($color_scheme_override == 'dark') + + @elseif ($color_scheme_override == 'light') + + @else + + @endif + + + +@stack('updater-head') + + + + +@stack('updater-body') + + + From d5467e909e9866516ca45ae10f7eb20951801943 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:30:22 +0200 Subject: [PATCH 05/37] Update update.blade.php --- resources/views/update.blade.php | 100 +++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 8b13789..3d8129f 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -1 +1,101 @@ +@extends('layouts.updater') + +@Push('updater-body') + +@if($_SERVER['QUERY_STRING'] === 'updating') + +
+ Logo +
l
+
+

Updating

+@endif + + +@if($_SERVER['QUERY_STRING'] === 'backup') + +@Push('updater-head') + +@endpush +
+ Logo +
l
+
+

Creating backup

+@endif + +@if($_SERVER['QUERY_STRING'] === 'backups') + true]); +header("Location: /?backup-created"); +exit(); ?> +@endif + +@if($_SERVER['QUERY_STRING'] === '') + + +
+ Logo +
l
+
+

Updater

+

You can update your installation automatically or download the update and install it manually:

+
+    +    +
+
+@endif + + +@if($_SERVER['QUERY_STRING'] === 'backup-created') + + +
+ Logo +
l
+
+

Download backup

+

You can keep the update stored on the server or download it as a precaution:

+
+    +    +
+
+@endif + + +@if($_SERVER['QUERY_STRING'] === 'success') + + +
+ Logo +
l
+
+

Download backup

+

The update was successful, you can now return to the Admin Panel:

+
+    +
+
+@endif + + +@if($_SERVER['QUERY_STRING'] === 'error') + + +
+ Logo +
l
+
+

Something went wrong

+

Something went wrong during the update process, you can try again or update manually:

+
+    +    +
+
+@endif + + +@endpush \ No newline at end of file From 1b909f94f3ae36ccfe7fe66ac3fcc7517eaf532b Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:31:16 +0200 Subject: [PATCH 06/37] Update backup.php --- config/backup.php | 35 ++++++----------------------------- 1 file changed, 6 insertions(+), 29 deletions(-) diff --git a/config/backup.php b/config/backup.php index 20cbfa7..a066fc8 100644 --- a/config/backup.php +++ b/config/backup.php @@ -8,7 +8,7 @@ return [ * The name of this application. You can use this name to monitor * the backups. */ - 'name' => env('APP_NAME', 'laravel-backup'), + 'name' => 'updater-backups', 'source' => [ @@ -27,8 +27,7 @@ return [ * Directories used by the backup process will automatically be excluded. */ 'exclude' => [ - base_path('vendor'), - base_path('node_modules'), + base_path('backups'), ], /* @@ -80,7 +79,7 @@ return [ * For a complete list of available customization options, see https://github.com/spatie/db-dumper */ 'databases' => [ - 'mysql', + 'sqlite', ], ], @@ -116,14 +115,14 @@ return [ * The disk names on which the backups will be stored. */ 'disks' => [ - 'local', + 'backups', ], ], /* * The directory where the temporary files will be stored. */ - 'temporary_directory' => storage_path('app/backup-temp'), + 'temporary_directory' => base_path('backups'), /* * The password to be used for archive encryption. @@ -138,7 +137,7 @@ return [ * When set to 'default', we'll use ZipArchive::EM_AES_256 if it is * available on your system. */ - 'encryption' => 'default', + 'encryption' => null, ], /* @@ -165,28 +164,6 @@ return [ */ 'notifiable' => \Spatie\Backup\Notifications\Notifiable::class, - 'mail' => [ - 'to' => 'your@example.com', - - 'from' => [ - 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'), - 'name' => env('MAIL_FROM_NAME', 'Example'), - ], - ], - - 'slack' => [ - 'webhook_url' => '', - - /* - * If this is set to null the default channel of the webhook will be used. - */ - 'channel' => null, - - 'username' => null, - - 'icon' => null, - - ], ], /* From eaa3dc6d1c378c404f1ffcbb03b1bd3594896bdf Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:31:35 +0200 Subject: [PATCH 07/37] Update filesystems.php --- config/filesystems.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/config/filesystems.php b/config/filesystems.php index 6895c44..2cf77dc 100755 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -35,6 +35,11 @@ return [ 'root' => storage_path('app'), ], + 'backups' => [ + 'driver' => 'local', + 'root' => base_path('backups'), + ], + 'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), From 4747c42ea20c6c1d585849a4d7cdc292d8037f27 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 15:38:52 +0200 Subject: [PATCH 08/37] Update updater.blade.php --- resources/views/layouts/updater.blade.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php index 7cd4936..59010a2 100644 --- a/resources/views/layouts/updater.blade.php +++ b/resources/views/layouts/updater.blade.php @@ -3,9 +3,6 @@ - {{ config('app.name') }} - home_message); ?> - From 07664d4bbc419816b8c4d03d0c2061ef2e9e5386 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 16:13:00 +0200 Subject: [PATCH 09/37] Update update.blade.php --- resources/views/update.blade.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 3d8129f..f77bf9b 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -1,4 +1,3 @@ - @extends('layouts.updater') @Push('updater-body') @@ -27,8 +26,10 @@ @if($_SERVER['QUERY_STRING'] === 'backups') true]); -header("Location: /?backup-created"); +$URL = Route::current()->getName(); +header("Location: ".$URL."?backup-created"); exit(); ?> + @endif @if($_SERVER['QUERY_STRING'] === '') From 634ecb50633ec02eb2dc0cc655f92b01a865ef08 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Tue, 24 May 2022 17:26:12 +0200 Subject: [PATCH 10/37] Update update.blade.php --- resources/views/update.blade.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index f77bf9b..245410f 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -26,6 +26,8 @@ @if($_SERVER['QUERY_STRING'] === 'backups') true]); +$tst = base_path('backups/'); +file_put_contents($tst.'CANUPDATE', ''); $URL = Route::current()->getName(); header("Location: ".$URL."?backup-created"); exit(); ?> From be76c31f2d18903888ddb448aaebf697a82eb1f7 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 11:52:57 +0200 Subject: [PATCH 11/37] Update update.blade.php --- resources/views/update.blade.php | 29 +++++++---------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 245410f..fa7c420 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -2,16 +2,18 @@ @Push('updater-body') -@if($_SERVER['QUERY_STRING'] === 'updating') +@if($_SERVER['QUERY_STRING'] === 'updating' and (file_exists(base_path("backups/CANUPDATE"))))
Logo
l

Updating

+ @Push('updater-head') + + @endpush @endif - @if($_SERVER['QUERY_STRING'] === 'backup') @Push('updater-head') @@ -51,34 +53,17 @@ exit(); ?> @endif -@if($_SERVER['QUERY_STRING'] === 'backup-created') +@if($_SERVER['QUERY_STRING'] === 'success' and (file_exists(base_path("backups/CANUPDATE"))))
Logo
l
-

Download backup

-

You can keep the update stored on the server or download it as a precaution:

-
-    -    -
-
-@endif - - -@if($_SERVER['QUERY_STRING'] === 'success') - - -
- Logo -
l
-
-

Download backup

+

Success!

The update was successful, you can now return to the Admin Panel:


-    +  
@endif From 0987c092f19d06892cf1adf24c1a2d611f82a594 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 15:53:42 +0200 Subject: [PATCH 12/37] Update self-update.php --- config/self-update.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/config/self-update.php b/config/self-update.php index f3e15fe..a867c11 100644 --- a/config/self-update.php +++ b/config/self-update.php @@ -13,7 +13,7 @@ return [ | */ - 'default' => env('SELF_UPDATER_SOURCE', 'github'), + 'default' => env('SELF_UPDATER_SOURCE', 'http'), /* |-------------------------------------------------------------------------- @@ -24,7 +24,7 @@ return [ | */ - 'version_installed' => env('SELF_UPDATER_VERSION_INSTALLED', ''), + 'version_installed' => file_get_contents(base_path("version.json")), /* |-------------------------------------------------------------------------- @@ -57,8 +57,8 @@ return [ ], 'http' => [ 'type' => 'http', - 'repository_url' => env('SELF_UPDATER_REPO_URL', ''), - 'pkg_filename_format' => env('SELF_UPDATER_PKG_FILENAME_FORMAT', 'v_VERSION_'), + 'repository_url' => env('SELF_UPDATER_REPO_URL', 'https://update.littlelink-custom.com/'), + 'pkg_filename_format' => env('SELF_UPDATER_PKG_FILENAME_FORMAT', '_VERSION_'), 'download_path' => env('SELF_UPDATER_DOWNLOAD_PATH', '/tmp'), 'private_access_token' => env('SELF_UPDATER_HTTP_PRIVATE_ACCESS_TOKEN', ''), ], @@ -97,7 +97,7 @@ return [ | */ - 'log_events' => env('SELF_UPDATER_LOG_EVENTS', false), + 'log_events' => env('SELF_UPDATER_LOG_EVENTS', true), /* |-------------------------------------------------------------------------- From 694ea93d51644b81d5d0231f740cdf5b24db8b2d Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:19:20 +0200 Subject: [PATCH 13/37] Update update.blade.php --- resources/views/update.blade.php | 75 +++++++++++++++----------------- 1 file changed, 36 insertions(+), 39 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index fa7c420..0d5931b 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -2,16 +2,32 @@ @Push('updater-body') -@if($_SERVER['QUERY_STRING'] === 'updating' and (file_exists(base_path("backups/CANUPDATE")))) - + +tag_name; + + // Requests current version from the local version file and sets it as variable + $Vlocal = 'v' . file_get_contents(base_path("version.json")); + ?> +@if(auth()->user()->role == 'admin' and $Vgit > $Vlocal) + +@if($_SERVER['QUERY_STRING'] === '') + +
- Logo + Logo
l
-

Updating

- @Push('updater-head') - - @endpush +

Updater

+

You can update your installation automatically or download the update and install it manually:

+
+
@endif @if($_SERVER['QUERY_STRING'] === 'backup') @@ -31,30 +47,28 @@ $tst = base_path('backups/'); file_put_contents($tst.'CANUPDATE', ''); $URL = Route::current()->getName(); -header("Location: ".$URL."?backup-created"); +header("Location: ".$URL."?updating"); exit(); ?> - @endif -@if($_SERVER['QUERY_STRING'] === '') - - +@if($_SERVER['QUERY_STRING'] === 'updating' and (file_exists(base_path("backups/CANUPDATE")))) +
- Logo + Logo
l
-

Updater

-

You can update your installation automatically or download the update and install it manually:

-
-
+

Updating

+ @Push('updater-head') + + @endpush +@endif + @endif -@if($_SERVER['QUERY_STRING'] === 'success' and (file_exists(base_path("backups/CANUPDATE")))) - + +@if($_SERVER['QUERY_STRING'] === 'success') +
Logo @@ -69,21 +83,4 @@ exit(); ?> @endif -@if($_SERVER['QUERY_STRING'] === 'error') - - -
- Logo -
l
-
-

Something went wrong

-

Something went wrong during the update process, you can try again or update manually:

-
-    -    -
-
-@endif - - @endpush \ No newline at end of file From 867f6c1efc5826344f7c46b6b387268bde6b48fd Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:20:05 +0200 Subject: [PATCH 14/37] Update web.php --- routes/web.php | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/routes/web.php b/routes/web.php index 9e562a6..df169fe 100755 --- a/routes/web.php +++ b/routes/web.php @@ -82,6 +82,36 @@ Route::get('/panel/site', [AdminController::class, 'showSite'])->name('showSite' Route::post('/panel/site', [AdminController::class, 'editSite'])->name('editSite'); Route::get('/panel/phpinfo', [AdminController::class, 'phpinfo'])->name('phpinfo'); Route::get('/update', function () {return view('update', []);}); + +Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) { + + // Check if new version is available + if($updater->source()->isNewVersionAvailable() and (file_exists(base_path("backups/CANUPDATE")))) { + + // Get the current installed version + echo $updater->source()->getVersionInstalled(); + + // Get the new version available + $versionAvailable = $updater->source()->getVersionAvailable(); + + // Create a release + $release = $updater->source()->fetch($versionAvailable); + + // Run the update process + $updater->source()->update($release); + + unlink(base_path("backups/CANUPDATE")); + + $URL = Route::current()->getName(); + header("Location: ".$URL."/../update?success"); + exit(); + + } else { + echo "No new version available."; + } + +}); + }); require __DIR__.'/auth.php'; From 1fd71f17277fcce87b45caa20ea31bdc0b25580b Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:22:14 +0200 Subject: [PATCH 15/37] Update updater.blade.php --- resources/views/layouts/updater.blade.php | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php index 59010a2..6dee45f 100644 --- a/resources/views/layouts/updater.blade.php +++ b/resources/views/layouts/updater.blade.php @@ -4,6 +4,7 @@ + Update From d1f9bffc074ce3f95915d3dcae5592f33cea6a56 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:27:06 +0200 Subject: [PATCH 16/37] Update sidebar.blade.php --- resources/views/layouts/sidebar.blade.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/views/layouts/sidebar.blade.php b/resources/views/layouts/sidebar.blade.php index bd106b0..2f01cea 100755 --- a/resources/views/layouts/sidebar.blade.php +++ b/resources/views/layouts/sidebar.blade.php @@ -210,7 +210,7 @@ if ($url1sb->successful() or $url2sb->successful()) { @if(auth()->user()->role == 'admin' and $Vgit > $Vlocal) - An update is available + An update is available @endif @endif @elseif(env('NOTIFY_UPDATES') == 'major') @@ -241,7 +241,7 @@ if ($url1sb->successful() or $url2sb->successful()) { @if(auth()->user()->role == 'admin' and $Vgit > $Vlocal) - An update is available + An update is available @endif @endif @endif From 6322e906e9cb955b9dc5fb071455a81d03bf7c10 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:28:02 +0200 Subject: [PATCH 17/37] Update version.json --- version.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.json b/version.json index 57cf282..2714f53 100644 --- a/version.json +++ b/version.json @@ -1 +1 @@ -2.6.5 +2.6.4 From fd8a2770da8d8cd53e621c3dc32fccc71a8e9a00 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 16:59:52 +0200 Subject: [PATCH 18/37] Update backup.php --- config/backup.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/config/backup.php b/config/backup.php index a066fc8..13056a8 100644 --- a/config/backup.php +++ b/config/backup.php @@ -210,33 +210,33 @@ return [ /* * The number of days for which backups must be kept. */ - 'keep_all_backups_for_days' => 7, + 'keep_all_backups_for_days' => 0, /* * The number of days for which daily backups must be kept. */ - 'keep_daily_backups_for_days' => 16, + 'keep_daily_backups_for_days' => 0, /* * The number of weeks for which one weekly backup must be kept. */ - 'keep_weekly_backups_for_weeks' => 8, + 'keep_weekly_backups_for_weeks' => 0, /* * The number of months for which one monthly backup must be kept. */ - 'keep_monthly_backups_for_months' => 4, + 'keep_monthly_backups_for_months' => 0, /* * The number of years for which one yearly backup must be kept. */ - 'keep_yearly_backups_for_years' => 2, + 'keep_yearly_backups_for_years' => 0, /* * After cleaning up the backups remove the oldest backup until * this amount of megabytes has been reached. */ - 'delete_oldest_backups_when_using_more_megabytes_than' => 5000, + 'delete_oldest_backups_when_using_more_megabytes_than' => 0, ], ], From 7360bd37de0af0bafdf9efd54a0d8727c2552cc7 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 17:00:21 +0200 Subject: [PATCH 19/37] Update update.blade.php --- resources/views/update.blade.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 0d5931b..e11995e 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -43,7 +43,8 @@ @endif @if($_SERVER['QUERY_STRING'] === 'backups') - true]); + true]); $tst = base_path('backups/'); file_put_contents($tst.'CANUPDATE', ''); $URL = Route::current()->getName(); From dc32587dee36f0fefa1f6d6861bf565bf22d0169 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 17:04:47 +0200 Subject: [PATCH 20/37] Update updater.blade.php --- resources/views/layouts/updater.blade.php | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php index 6dee45f..7e0f409 100644 --- a/resources/views/layouts/updater.blade.php +++ b/resources/views/layouts/updater.blade.php @@ -108,6 +108,7 @@ button { } button:hover { background-color: #0065c1; + color: #FFF; box-shadow: 0 10px 20px -10px rgba(0,0,0, 0.6); } From 7927d8e021a2e869f9493f8d8380934e5ee0becc Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 17:05:19 +0200 Subject: [PATCH 21/37] Update update.blade.php --- resources/views/update.blade.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index e11995e..705ca3f 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -24,8 +24,8 @@

Updater

You can update your installation automatically or download the update and install it manually:


@endif @@ -78,7 +78,7 @@ exit(); ?>

Success!

The update was successful, you can now return to the Admin Panel:


-    +  
@endif From 8de8e665d83401e508863af5135ec5fc3145dedf Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 17:28:03 +0200 Subject: [PATCH 22/37] Update .htaccess --- .htaccess | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.htaccess b/.htaccess index ab13927..198faaa 100644 --- a/.htaccess +++ b/.htaccess @@ -29,3 +29,7 @@ Deny from all Order allow,deny Deny from all + + Order allow,deny + Deny from all + \ No newline at end of file From c90e49fa1c0c6187293b7cbff679e98d4925b571 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 20:53:00 +0200 Subject: [PATCH 23/37] Update web.php --- routes/web.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/routes/web.php b/routes/web.php index df169fe..7a1fe62 100755 --- a/routes/web.php +++ b/routes/web.php @@ -103,7 +103,7 @@ Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) { unlink(base_path("backups/CANUPDATE")); $URL = Route::current()->getName(); - header("Location: ".$URL."/../update?success"); + header("Location: ".$URL."/../update?finishing"); exit(); } else { From dde11850759715b96911cef2ca9e9de39539109e Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 20:53:32 +0200 Subject: [PATCH 24/37] Update update.blade.php --- resources/views/update.blade.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 705ca3f..3e80dc0 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -66,7 +66,23 @@ exit(); ?> @endif +@if($_SERVER['QUERY_STRING'] === 'finishing') + +
+ Logo +
l
+
+

Finishing up

+ + getName(); + header("Location: ".$URL."?success"); + exit(); ?> +@endif @if($_SERVER['QUERY_STRING'] === 'success') From 8f09d399cdae4b92838b7290767b15c6e850153b Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 21:26:57 +0200 Subject: [PATCH 25/37] Update update.blade.php --- resources/views/update.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 3e80dc0..1fb90e8 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -25,7 +25,7 @@

You can update your installation automatically or download the update and install it manually:


@endif From 122d9e31e6c822c88400578cc07bff6887a3345c Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 22:09:54 +0200 Subject: [PATCH 26/37] Update update.blade.php --- resources/views/update.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index 1fb90e8..e74869d 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -25,7 +25,7 @@

You can update your installation automatically or download the update and install it manually:


  -    +  
@endif From df384df2cfc67b131bd4eac8b8375b57216073cf Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 23:15:34 +0200 Subject: [PATCH 27/37] Update sidebar.blade.php --- resources/views/layouts/sidebar.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/layouts/sidebar.blade.php b/resources/views/layouts/sidebar.blade.php index 2f01cea..bcba6fe 100755 --- a/resources/views/layouts/sidebar.blade.php +++ b/resources/views/layouts/sidebar.blade.php @@ -210,7 +210,7 @@ if ($url1sb->successful() or $url2sb->successful()) { @if(auth()->user()->role == 'admin' and $Vgit > $Vlocal) - An update is available + An update is available @endif @endif @elseif(env('NOTIFY_UPDATES') == 'major') From 387b67db1d0cde3081e2b4c4447f36f00a81417a Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Wed, 25 May 2022 23:19:29 +0200 Subject: [PATCH 28/37] Update sidebar.blade.php --- resources/views/layouts/sidebar.blade.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/views/layouts/sidebar.blade.php b/resources/views/layouts/sidebar.blade.php index bcba6fe..7533581 100755 --- a/resources/views/layouts/sidebar.blade.php +++ b/resources/views/layouts/sidebar.blade.php @@ -210,7 +210,7 @@ if ($url1sb->successful() or $url2sb->successful()) { @if(auth()->user()->role == 'admin' and $Vgit > $Vlocal) - An update is available + An update is available @endif @endif @elseif(env('NOTIFY_UPDATES') == 'major') From 84b365958f48e4b9c64dc8208f2f96db62c7645a Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 11:10:05 +0200 Subject: [PATCH 29/37] Update update.blade.php --- resources/views/update.blade.php | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index e74869d..1cc79c1 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -1,7 +1,7 @@ @extends('layouts.updater') @Push('updater-body') - +
- +
Logo
l
-

Updater

+

Updater

You can update your installation automatically or download the update and install it manually:


-
+ @endif @if($_SERVER['QUERY_STRING'] === 'backup') @@ -39,7 +39,7 @@ Logo
l
-

Creating backup

+

Creating backup

@endif @if($_SERVER['QUERY_STRING'] === 'backups') @@ -58,7 +58,7 @@ exit(); ?> Logo
l
-

Updating

+

Updating

@Push('updater-head') @endpush @@ -72,7 +72,7 @@ exit(); ?> Logo
l
-

Finishing up

+

Finishing up

@if($_SERVER['QUERY_STRING'] === 'success') - +
Logo
l
-

Success!

+

Success!

The update was successful, you can now return to the Admin Panel:


-
+ @endif - + @endpush \ No newline at end of file From d9bd9d6307dc712006233911052601f2a40995bb Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 11:10:33 +0200 Subject: [PATCH 30/37] Update updater.blade.php --- resources/views/layouts/updater.blade.php | 26 +++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/resources/views/layouts/updater.blade.php b/resources/views/layouts/updater.blade.php index 7e0f409..4277cf9 100644 --- a/resources/views/layouts/updater.blade.php +++ b/resources/views/layouts/updater.blade.php @@ -32,17 +32,35 @@ @@ -65,10 +66,10 @@ @if(file_exists(base_path("littlelink/images/avatar.png" ))) @else -
- Logo - Logo -
+
+ Logo +
l
+
@endif
From 95057f6209cfd0c79ca753348e621f9fb0be93d9 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 11:38:34 +0200 Subject: [PATCH 33/37] Update web.php --- routes/web.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/routes/web.php b/routes/web.php index 7a1fe62..72e9b2b 100755 --- a/routes/web.php +++ b/routes/web.php @@ -102,9 +102,7 @@ Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) { unlink(base_path("backups/CANUPDATE")); - $URL = Route::current()->getName(); - header("Location: ".$URL."/../update?finishing"); - exit(); + echo "current() . "/../update?finishing />"; } else { echo "No new version available."; From 909c11263f419eed3e9d2e0d7106a328f5481769 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 11:40:13 +0200 Subject: [PATCH 34/37] Update update.blade.php --- resources/views/update.blade.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index af747b2..d158bc4 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -84,9 +84,8 @@ exit(); ?> //run before finishing: // EnvEditor::addKey('MY_VALUE', 'truefalse'); // Adds key to .env file - $URL = Route::current()->getName(); - header("Location: ".$URL."?success"); - exit(); ?> + echo "current() . "?success\" />"; + ?> @endif @if($_SERVER['QUERY_STRING'] === 'success') From 7cf52a4a6a13b4d60ab4257b38867da3a976e6ac Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 12:12:09 +0200 Subject: [PATCH 35/37] Update web.php --- routes/web.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/routes/web.php b/routes/web.php index 72e9b2b..bf4d661 100755 --- a/routes/web.php +++ b/routes/web.php @@ -102,10 +102,10 @@ Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) { unlink(base_path("backups/CANUPDATE")); - echo "current() . "/../update?finishing />"; + echo "current() . "/../update?finishing\" />"; } else { - echo "No new version available."; + echo "current() . "/../update?error\" />"; } }); From 8b7929dfa8a72098b44b1e72b5cf8941a1fbea0f Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 12:12:29 +0200 Subject: [PATCH 36/37] Update update.blade.php --- resources/views/update.blade.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/resources/views/update.blade.php b/resources/views/update.blade.php index d158bc4..64abd8d 100644 --- a/resources/views/update.blade.php +++ b/resources/views/update.blade.php @@ -103,5 +103,20 @@ exit(); ?> @endif +@if($_SERVER['QUERY_STRING'] === 'error') + + +
+ Logo +
l
+
+

Error

+

Something went wrong with the update :(

+
+    +
+ +@endif +
@endpush \ No newline at end of file From 35d59f024929a1b45c9e0294be2e5f786dc8d0c6 Mon Sep 17 00:00:00 2001 From: Julian Prieber <60265788+JulianPrieber@users.noreply.github.com> Date: Thu, 26 May 2022 12:46:22 +0200 Subject: [PATCH 37/37] Update composer.lock --- composer.lock | 425 +++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 370 insertions(+), 55 deletions(-) diff --git a/composer.lock b/composer.lock index 1e2d56d..4f90866 100644 --- a/composer.lock +++ b/composer.lock @@ -207,6 +207,81 @@ ], "time": "2022-05-01T16:00:55+00:00" }, + { + "name": "dflydev/dot-access-data", + "version": "v3.0.1", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^3.14" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + }, + "time": "2021-08-13T13:06:58+00:00" + }, { "name": "doctrine/inflector", "version": "2.0.4", @@ -766,16 +841,16 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.4.2", + "version": "7.4.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "ac1ec1cd9b5624694c3a40be801d94137afb12b4" + "reference": "74a8602c6faec9ef74b7a9391ac82c5e65b1cdab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ac1ec1cd9b5624694c3a40be801d94137afb12b4", - "reference": "ac1ec1cd9b5624694c3a40be801d94137afb12b4", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/74a8602c6faec9ef74b7a9391ac82c5e65b1cdab", + "reference": "74a8602c6faec9ef74b7a9391ac82c5e65b1cdab", "shasum": "" }, "require": { @@ -870,7 +945,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.4.2" + "source": "https://github.com/guzzle/guzzle/tree/7.4.3" }, "funding": [ { @@ -886,7 +961,7 @@ "type": "tidelift" } ], - "time": "2022-03-20T14:16:28+00:00" + "time": "2022-05-25T13:24:33+00:00" }, { "name": "guzzlehttp/promises", @@ -1089,16 +1164,16 @@ }, { "name": "laravel/framework", - "version": "v8.83.13", + "version": "v8.83.14", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "1eed68ec70c98d1a7a6f0fcedbea10cb6dd69a20" + "reference": "141cf126f1746c7264f59aa78c923a84eaab501e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/1eed68ec70c98d1a7a6f0fcedbea10cb6dd69a20", - "reference": "1eed68ec70c98d1a7a6f0fcedbea10cb6dd69a20", + "url": "https://api.github.com/repos/laravel/framework/zipball/141cf126f1746c7264f59aa78c923a84eaab501e", + "reference": "141cf126f1746c7264f59aa78c923a84eaab501e", "shasum": "" }, "require": { @@ -1258,7 +1333,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-05-17T14:08:01+00:00" + "time": "2022-05-24T14:04:02+00:00" }, { "name": "laravel/serializable-closure", @@ -1389,42 +1464,54 @@ }, { "name": "league/commonmark", - "version": "1.6.7", + "version": "2.3.1", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b" + "reference": "cb36fee279f7fca01d5d9399ddd1b37e48e2eca1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/2b8185c13bc9578367a5bf901881d1c1b5bbd09b", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/cb36fee279f7fca01d5d9399ddd1b37e48e2eca1", + "reference": "cb36fee279f7fca01d5d9399ddd1b37e48e2eca1", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^7.1 || ^8.0" - }, - "conflict": { - "scrutinizer/ocular": "1.7.*" + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.16" }, "require-dev": { - "cebe/markdown": "~1.0", - "commonmark/commonmark.js": "0.29.2", - "erusev/parsedown": "~1.0", + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "embed/embed": "^4.4", + "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "~1.4", - "mikehaertl/php-shellcommand": "^1.4", - "phpstan/phpstan": "^0.12.90", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", - "scrutinizer/ocular": "^1.5", - "symfony/finder": "^4.2" + "michelf/php-markdown": "^1.4", + "nyholm/psr7": "^1.5", + "phpstan/phpstan": "^0.12.88 || ^1.0.0", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" }, - "bin": [ - "bin/commonmark" - ], "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + } + }, "autoload": { "psr-4": { "League\\CommonMark\\": "src" @@ -1442,7 +1529,7 @@ "role": "Lead Developer" } ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", "homepage": "https://commonmark.thephpleague.com", "keywords": [ "commonmark", @@ -1456,6 +1543,7 @@ ], "support": { "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", "issues": "https://github.com/thephpleague/commonmark/issues", "rss": "https://github.com/thephpleague/commonmark/releases.atom", "source": "https://github.com/thephpleague/commonmark" @@ -1478,7 +1566,89 @@ "type": "tidelift" } ], - "time": "2022-01-13T17:18:13+00:00" + "time": "2022-05-14T15:37:39+00:00" + }, + { + "name": "league/config", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.90", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2021-08-14T12:15:32+00:00" }, { "name": "league/flysystem", @@ -1998,6 +2168,153 @@ ], "time": "2022-04-25T19:31:17+00:00" }, + { + "name": "nette/schema", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.2" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^0.12", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "📐 Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.2" + }, + "time": "2021-10-15T11:40:02+00:00" + }, + { + "name": "nette/utils", + "version": "v3.2.7", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/0af4e3de4df9f1543534beab255ccf459e7a2c99", + "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99", + "shasum": "" + }, + "require": { + "php": ">=7.2 <8.2" + }, + "conflict": { + "nette/di": "<3.0.6" + }, + "require-dev": { + "nette/tester": "~2.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.3" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v3.2.7" + }, + "time": "2022-01-24T11:29:14+00:00" + }, { "name": "nikic/php-parser", "version": "v4.13.2", @@ -2348,20 +2665,20 @@ }, { "name": "psr/container", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", + "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", "shasum": "" }, "require": { - "php": ">=7.2.0" + "php": ">=7.4.0" }, "type": "library", "autoload": { @@ -2390,9 +2707,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/container/tree/1.1.2" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2021-11-05T16:50:12+00:00" }, { "name": "psr/event-dispatcher", @@ -2707,16 +3024,16 @@ }, { "name": "psy/psysh", - "version": "v0.11.2", + "version": "v0.11.4", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "7f7da640d68b9c9fec819caae7c744a213df6514" + "reference": "05c544b339b112226ad14803e1e5b09a61957454" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/7f7da640d68b9c9fec819caae7c744a213df6514", - "reference": "7f7da640d68b9c9fec819caae7c744a213df6514", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/05c544b339b112226ad14803e1e5b09a61957454", + "reference": "05c544b339b112226ad14803e1e5b09a61957454", "shasum": "" }, "require": { @@ -2731,15 +3048,13 @@ "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.2", - "hoa/console": "3.17.05.02" + "bamarni/composer-bin-plugin": "^1.2" }, "suggest": { "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", "ext-pdo-sqlite": "The doc command requires SQLite to work.", "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well.", - "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history.", - "hoa/console": "A pure PHP readline implementation. You'll want this if your PHP install doesn't already support readline or libedit." + "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history." }, "bin": [ "bin/psysh" @@ -2779,9 +3094,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.11.2" + "source": "https://github.com/bobthecow/psysh/tree/v0.11.4" }, - "time": "2022-02-28T15:28:54+00:00" + "time": "2022-05-06T12:49:14+00:00" }, { "name": "ralouphie/getallheaders", @@ -6262,16 +6577,16 @@ }, { "name": "laravel/sail", - "version": "v1.14.6", + "version": "v1.14.7", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "f00f3a8f83e71436d473cda7700ae7b4b68d26cc" + "reference": "c049316f9bcb02598607307f18b514b66202b639" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/f00f3a8f83e71436d473cda7700ae7b4b68d26cc", - "reference": "f00f3a8f83e71436d473cda7700ae7b4b68d26cc", + "url": "https://api.github.com/repos/laravel/sail/zipball/c049316f9bcb02598607307f18b514b66202b639", + "reference": "c049316f9bcb02598607307f18b514b66202b639", "shasum": "" }, "require": { @@ -6318,7 +6633,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2022-05-18T15:56:59+00:00" + "time": "2022-05-21T17:14:14+00:00" }, { "name": "mockery/mockery",