From b29d032bf0250941a2a968c85c227bbee9449c81 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 15 Oct 2024 11:28:27 -0700 Subject: [PATCH 01/49] adds checkoutAssetMail class, and content method --- .../CheckoutAssetNotification.php | 30 -- composer.json | 2 + composer.lock | 416 ++++++++++-------- 3 files changed, 245 insertions(+), 203 deletions(-) diff --git a/app/Notifications/CheckoutAssetNotification.php b/app/Notifications/CheckoutAssetNotification.php index b14796fb8c0f..e61d49bf5cc5 100644 --- a/app/Notifications/CheckoutAssetNotification.php +++ b/app/Notifications/CheckoutAssetNotification.php @@ -191,35 +191,5 @@ public function toGoogleChat() * @param mixed $notifiable * @return \Illuminate\Notifications\Messages\MailMessage */ - public function toMail() - { $this->item->load('assetstatus'); - $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; - $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; - $fields = []; - - // Check if the item has custom fields associated with it - if (($this->item->model) && ($this->item->model->fieldset)) { - $fields = $this->item->model->fieldset->fields; - } - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); - - $message = (new MailMessage)->markdown('notifications.markdown.checkout-asset', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'status' => $this->item->assetstatus?->name, - 'note' => $this->note, - 'target' => $this->target, - 'fields' => $fields, - 'eula' => $eula, - 'req_accept' => $req_accept, - 'accept_url' => $accept_url, - 'last_checkout' => $this->last_checkout, - 'expected_checkin' => $this->expected_checkin, - ]) - ->subject(trans('mail.Confirm_asset_delivery')); - - return $message; - } } diff --git a/composer.json b/composer.json index 6d893125787c..b255f821cd73 100644 --- a/composer.json +++ b/composer.json @@ -63,6 +63,8 @@ "rollbar/rollbar-laravel": "^8.0", "spatie/laravel-backup": "^8.8", "spatie/laravel-ignition": "^2.0", + "symfony/http-client": "^7.1", + "symfony/mailgun-mailer": "^7.1", "tecnickcom/tc-lib-barcode": "^1.15", "tecnickcom/tcpdf": "^6.5", "unicodeveloper/laravel-password": "^1.0", diff --git a/composer.lock b/composer.lock index 3f79921b26df..c6e469c5978f 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": "3819ab4ef72eb77fabe494c0e746b83b", + "content-hash": "0378e36c927d3838ac338c4f58ed30cd", "packages": [ { "name": "alek13/slack", @@ -9081,6 +9081,178 @@ ], "time": "2024-08-13T14:27:37+00:00" }, + { + "name": "symfony/http-client", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-client-contracts": "^3.4.1", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "php-http/discovery": "<1.15", + "symfony/http-foundation": "<6.4" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "3.0" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4|^2.0", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "keywords": [ + "http" + ], + "support": { + "source": "https://github.com/symfony/http-client/tree/v7.1.5" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-20T13:35:23+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "20414d96f391677bf80078aa55baece78b82647d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-04-18T09:32:20+00:00" + }, { "name": "symfony/http-foundation", "version": "v6.4.12", @@ -9352,6 +9524,75 @@ ], "time": "2024-09-08T12:30:05+00:00" }, + { + "name": "symfony/mailgun-mailer", + "version": "v7.1.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/mailgun-mailer.git", + "reference": "dac02fe68e9306849703025511c56f10701696a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/dac02fe68e9306849703025511c56f10701696a8", + "reference": "dac02fe68e9306849703025511c56f10701696a8", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/mailer": "^6.4|^7.0" + }, + "conflict": { + "symfony/http-foundation": "<6.4" + }, + "require-dev": { + "symfony/http-client": "^6.4|^7.0", + "symfony/webhook": "^6.4|^7.0" + }, + "type": "symfony-mailer-bridge", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mailer\\Bridge\\Mailgun\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Mailgun Mailer Bridge", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/mailgun-mailer/tree/v7.1.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-07-04T11:20:59+00:00" + }, { "name": "symfony/mime", "version": "v6.4.12", @@ -16028,177 +16269,6 @@ ], "time": "2024-09-16T16:01:33+00:00" }, - { - "name": "symfony/http-client", - "version": "v6.4.12", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client.git", - "reference": "fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56", - "reference": "fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56", - "shasum": "" - }, - "require": { - "php": ">=8.1", - "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3.4.1", - "symfony/service-contracts": "^2.5|^3" - }, - "conflict": { - "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.3" - }, - "provide": { - "php-http/async-client-implementation": "*", - "php-http/client-implementation": "*", - "psr/http-client-implementation": "1.0", - "symfony/http-client-implementation": "3.0" - }, - "require-dev": { - "amphp/amp": "^2.5", - "amphp/http-client": "^4.2.1", - "amphp/http-tunnel": "^1.0", - "amphp/socket": "^1.1", - "guzzlehttp/promises": "^1.4|^2.0", - "nyholm/psr7": "^1.0", - "php-http/httplug": "^1.0|^2.0", - "psr/http-client": "^1.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/stopwatch": "^5.4|^6.0|^7.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", - "homepage": "https://symfony.com", - "keywords": [ - "http" - ], - "support": { - "source": "https://github.com/symfony/http-client/tree/v6.4.12" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-20T08:21:33+00:00" - }, - { - "name": "symfony/http-client-contracts", - "version": "v3.5.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "20414d96f391677bf80078aa55baece78b82647d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", - "reference": "20414d96f391677bf80078aa55baece78b82647d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to HTTP clients", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-04-18T09:32:20+00:00" - }, { "name": "symfony/options-resolver", "version": "v6.4.8", @@ -16658,5 +16728,5 @@ "ext-pdo": "*" }, "platform-dev": [], - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.3.0" } From f8476f713396027e7149e7306db2bfcc710d5e5c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 15 Oct 2024 12:49:52 -0700 Subject: [PATCH 02/49] finished the construct and mail call in the listner --- app/Listeners/CheckoutableListener.php | 27 ++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index eb6b73809420..7dab68f18ccc 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -3,6 +3,7 @@ namespace App\Listeners; use App\Events\CheckoutableCheckedOut; +use App\Mail\CheckoutAssetMail; use App\Models\Accessory; use App\Models\Asset; use App\Models\CheckoutAcceptance; @@ -20,6 +21,7 @@ use App\Notifications\CheckoutConsumableNotification; use App\Notifications\CheckoutLicenseSeatNotification; use GuzzleHttp\Exception\ClientException; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Exception; use Illuminate\Support\Facades\Log; @@ -44,23 +46,24 @@ public function onCheckedOut($event) * Make a checkout acceptance and attach it in the notification */ $acceptance = $this->getCheckoutAcceptance($event); - $notifiables = $this->getNotifiables($event); + $notifiable = $this->getNotifiables($event); + $mailable = (new CheckoutAssetMail( + $event->checkoutable, + $event->checkedOutTo, + $event->checkedOutBy, + $acceptance, + $event->note + )); // Send email notifications try { - foreach ($notifiables as $notifiable) { - if ($notifiable instanceof User && $notifiable->email != '') { - if (! $event->checkedOutTo->locale){ - Notification::locale(Setting::getSettings()->locale)->send($notifiable, $this->getCheckoutNotification($event, $acceptance)); - } - else { - Notification::send($notifiable, $this->getCheckoutNotification($event, $acceptance)); - } + if (! $event->checkedOutTo->locale){ + $mailable->locale($event->checkedOutTo->locale); } - } + Mail::to($notifiable)->send($mailable); - // Send Webhook notification - if ($this->shouldSendWebhookNotification()) { + // Send Webhook notification + if ($this->shouldSendWebhookNotification()) { // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { Notification::route('slack', Setting::getSettings()->webhook_endpoint) From 9f06a0e441940606de32279c428b24a8957186fb Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 15 Oct 2024 14:01:28 -0700 Subject: [PATCH 03/49] handle some edge cases, null values clean up variable names --- app/Listeners/CheckoutableListener.php | 42 +++++++++++++----------- app/Models/Recipients/AdminRecipient.php | 6 ++++ 2 files changed, 29 insertions(+), 19 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 7dab68f18ccc..4d21fd6c1099 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -4,6 +4,7 @@ use App\Events\CheckoutableCheckedOut; use App\Mail\CheckoutAssetMail; +use App\Mail\CheckinAssetMail; use App\Models\Accessory; use App\Models\Asset; use App\Models\CheckoutAcceptance; @@ -14,7 +15,6 @@ use App\Models\Setting; use App\Models\User; use App\Notifications\CheckinAccessoryNotification; -use App\Notifications\CheckinAssetNotification; use App\Notifications\CheckinLicenseSeatNotification; use App\Notifications\CheckoutAccessoryNotification; use App\Notifications\CheckoutAssetNotification; @@ -46,7 +46,7 @@ public function onCheckedOut($event) * Make a checkout acceptance and attach it in the notification */ $acceptance = $this->getCheckoutAcceptance($event); - $notifiable = $this->getNotifiables($event); + $notifiable = $this->getNotifiable($event); $mailable = (new CheckoutAssetMail( $event->checkoutable, $event->checkedOutTo, @@ -57,11 +57,11 @@ public function onCheckedOut($event) // Send email notifications try { - if (! $event->checkedOutTo->locale){ + if (!$event->checkedOutTo->locale){ $mailable->locale($event->checkedOutTo->locale); } Mail::to($notifiable)->send($mailable); - + \Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); // Send Webhook notification if ($this->shouldSendWebhookNotification()) { // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint @@ -107,19 +107,22 @@ public function onCheckedIn($event) } } - $notifiables = $this->getNotifiables($event); + $notifiable = $this->getNotifiable($event); + $mailable = (new CheckInAssetMail( + $event->checkoutable, + $event->checkedOutTo, + $event->checkedOutBy, + $event->note, + null, + )); + // Send email notifications try { - foreach ($notifiables as $notifiable) { - if ($notifiable instanceof User && $notifiable->email != '') { - if (! $event->checkedOutTo->locale){ - Notification::locale(Setting::getSettings()->locale)->send($notifiable, $this->getCheckoutNotification($event, $acceptance)); - } - else { - Notification::send($notifiable, $this->getCheckinNotification($event)); - } - } + if (!$event->checkedOutTo->locale){ + $mailable->locale($event->checkedOutTo->locale); } + Mail::to($notifiable)->send($mailable); + \Log::info('Sending email, Locale: ' .$event->checkedOutTo->locale); // Send Webhook notification if ($this->shouldSendWebhookNotification()) { // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint @@ -168,25 +171,26 @@ private function getCheckoutAcceptance($event) * @param Event $event * @return Collection */ - private function getNotifiables($event) + private function getNotifiable($event) { - $notifiables = collect(); + $notifiable = collect(); /** * Notify who checked out the item as long as the model can route notifications */ if (method_exists($event->checkedOutTo, 'routeNotificationFor')) { - $notifiables->push($event->checkedOutTo); + $notifiable->push($event->checkedOutTo); } /** * Notify Admin users if the settings is activated */ if ((Setting::getSettings()) && (Setting::getSettings()->admin_cc_email != '')) { - $notifiables->push(new AdminRecipient()); + $adminRecipient= new AdminRecipient; + $notifiable->push($adminRecipient->getEmail()); } - return $notifiables; + return new $notifiable; } /** diff --git a/app/Models/Recipients/AdminRecipient.php b/app/Models/Recipients/AdminRecipient.php index 433bd002094a..90e39d4ee53e 100644 --- a/app/Models/Recipients/AdminRecipient.php +++ b/app/Models/Recipients/AdminRecipient.php @@ -6,9 +6,15 @@ class AdminRecipient extends Recipient { + + protected $email; public function __construct() { $settings = Setting::getSettings(); $this->email = trim($settings->admin_cc_email); } + + public function getEmail(){ + return $this->email; + } } From 3ab2521cb0b8f61cb42a7b205a7836d7950046a6 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 12:21:33 -0700 Subject: [PATCH 04/49] email comes through, no picture and html markup appear though. --- .../Account/AcceptanceController.php | 1 + app/Listeners/CheckoutableListener.php | 25 ++-- .../CheckoutAssetNotification.php | 21 --- .../markdown/checkout-asset.blade.php | 130 +++++++++--------- routes/web.php | 22 +++ 5 files changed, 100 insertions(+), 99 deletions(-) diff --git a/app/Http/Controllers/Account/AcceptanceController.php b/app/Http/Controllers/Account/AcceptanceController.php index e29fa7c63b08..278d7e208106 100644 --- a/app/Http/Controllers/Account/AcceptanceController.php +++ b/app/Http/Controllers/Account/AcceptanceController.php @@ -338,4 +338,5 @@ public function store(Request $request, $id) : RedirectResponse return redirect()->to('account/accept')->with('success', $return_msg); } + } diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 4d21fd6c1099..cfadad5ae915 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -51,8 +51,8 @@ public function onCheckedOut($event) $event->checkoutable, $event->checkedOutTo, $event->checkedOutBy, + $event->note, $acceptance, - $event->note )); // Send email notifications @@ -61,18 +61,18 @@ public function onCheckedOut($event) $mailable->locale($event->checkedOutTo->locale); } Mail::to($notifiable)->send($mailable); - \Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); + Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); // Send Webhook notification - if ($this->shouldSendWebhookNotification()) { - // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint - if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { - Notification::route('slack', Setting::getSettings()->webhook_endpoint) - ->notify($this->getCheckoutNotification($event, $acceptance)); - } else { - Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) - ->notify($this->getCheckoutNotification($event, $acceptance)); - } - } +// if ($this->shouldSendWebhookNotification()) { +// // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint +// if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { +// Notification::route('slack', Setting::getSettings()->webhook_endpoint) +// ->notify($this->getCheckoutNotification($event, $acceptance)); +// } else { +// Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) +// ->notify($this->getCheckoutNotification($event, $acceptance)); +// } +// } } catch (ClientException $e) { Log::debug("Exception caught during checkout notification: " . $e->getMessage()); } catch (Exception $e) { @@ -113,7 +113,6 @@ public function onCheckedIn($event) $event->checkedOutTo, $event->checkedOutBy, $event->note, - null, )); // Send email notifications diff --git a/app/Notifications/CheckoutAssetNotification.php b/app/Notifications/CheckoutAssetNotification.php index e61d49bf5cc5..4337749f4942 100644 --- a/app/Notifications/CheckoutAssetNotification.php +++ b/app/Notifications/CheckoutAssetNotification.php @@ -32,28 +32,7 @@ class CheckoutAssetNotification extends Notification */ public function __construct(Asset $asset, $checkedOutTo, User $checkedOutBy, $acceptance, $note) { - $this->item = $asset; - $this->admin = $checkedOutBy; - $this->note = $note; - $this->target = $checkedOutTo; - $this->acceptance = $acceptance; - - $this->settings = Setting::getSettings(); - - $this->last_checkout = ''; - $this->expected_checkin = ''; - - if ($this->item->last_checkout) { - $this->last_checkout = Helper::getFormattedDateObject($this->item->last_checkout, 'date', - false); - } - - if ($this->item->expected_checkin) { - $this->expected_checkin = Helper::getFormattedDateObject($this->item->expected_checkin, 'date', - false); - } } - /** * Get the notification's delivery channels. * diff --git a/resources/views/notifications/markdown/checkout-asset.blade.php b/resources/views/notifications/markdown/checkout-asset.blade.php index 9b5fc26dc2e9..5b4c811dd712 100644 --- a/resources/views/notifications/markdown/checkout-asset.blade.php +++ b/resources/views/notifications/markdown/checkout-asset.blade.php @@ -1,76 +1,76 @@ @component('mail::message') -# {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, + # {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, -{{ trans('mail.new_item_checked') }} + {{ trans('mail.new_item_checked') }} -@if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) -
Asset
-@endif + @if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) +
Asset
+ @endif -@component('mail::table') -| | | -| ------------- | ------------- | -@if ((isset($item->name)) && ($item->name!='')) -| **{{ trans('mail.asset_name') }}** | {{ $item->name }} | -@endif -@if (($item->name!=$item->asset_tag)) -| **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | -@endif -@if (isset($item->manufacturer)) -| **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | -@endif -@if (isset($item->model)) -| **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | -@endif -@if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) -| **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | -@endif -@if (isset($item->serial)) -| **{{ trans('mail.serial') }}** | {{ $item->serial }} | -@endif -@if (isset($last_checkout)) -| **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | -@endif -@if (isset($status)) -| **{{ trans('general.status') }}** | {{ $status }} | -@endif -@if ((isset($expected_checkin)) && ($expected_checkin!='')) -| **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | -@endif -@foreach($fields as $field) -@if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) -| **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | -@endif -@endforeach -@if ($admin) -| **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | -@endif -@if ($note) -| **{{ trans('mail.additional_notes') }}** | {{ $note }} | -@endif -@endcomponent + @component('mail::table') + | | | + | ------------- | ------------- | + @if ((isset($item->name)) && ($item->name!='')) + | **{{ trans('mail.asset_name') }}** | {{ $item->name }} | + @endif + @if (($item->name!=$item->asset_tag)) + | **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | + @endif + @if (isset($item->manufacturer)) + | **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | + @endif + @if (isset($item->model)) + | **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | + @endif + @if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) + | **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | + @endif + @if (isset($item->serial)) + | **{{ trans('mail.serial') }}** | {{ $item->serial }} | + @endif + @if (isset($last_checkout)) + | **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | + @endif + @if (isset($status)) + | **{{ trans('general.status') }}** | {{ $status }} | + @endif + @if ((isset($expected_checkin)) && ($expected_checkin!='')) + | **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | + @endif + @foreach($fields as $field) + @if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) + | **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | + @endif + @endforeach + @if ($admin) + | **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | + @endif + @if ($note) + | **{{ trans('mail.additional_notes') }}** | {{ $note }} | + @endif + @endcomponent -@if (($req_accept == 1) && ($eula!='')) -{{ trans('mail.read_the_terms_and_click') }} -@elseif (($req_accept == 1) && ($eula=='')) -{{ trans('mail.click_on_the_link_asset') }} -@elseif (($req_accept == 0) && ($eula!='')) -{{ trans('mail.read_the_terms') }} -@endif + @if (($req_accept == 1) && ($eula!='')) + {{ trans('mail.read_the_terms_and_click') }} + @elseif (($req_accept == 1) && ($eula=='')) + {{ trans('mail.click_on_the_link_asset') }} + @elseif (($req_accept == 0) && ($eula!='')) + {{ trans('mail.read_the_terms') }} + @endif -@if ($eula) -@component('mail::panel') -{!! $eula !!} -@endcomponent -@endif + @if ($eula) + @component('mail::panel') + {!! $eula !!} + @endcomponent + @endif -@if ($req_accept == 1) -**[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** -@endif + @if ($req_accept == 1) + **[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** + @endif -{{ trans('mail.best_regards') }} + {{ trans('mail.best_regards') }} -{{ $snipeSettings->site_name }} + {{ $snipeSettings->site_name }} -@endcomponent +@endcomponent \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index 60b74476c799..7bed89acf7ff 100644 --- a/routes/web.php +++ b/routes/web.php @@ -24,6 +24,8 @@ use App\Http\Controllers\Auth\ForgotPasswordController; use App\Http\Controllers\Auth\ResetPasswordController; use App\Livewire\Importer; +use App\Models\Asset; +use App\Models\User; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Auth; @@ -53,6 +55,26 @@ /* * Locations */ + Route::get('/test-email', function() { + $item = Asset::find(1); // Load some test data + $admin = User::find(1); + $target = User::find(2); + $acceptance = null; // Simulate acceptance data + $note = 'Test note'; + + $fields = []; + if (($item->model) && ($item->model->fieldset)) { + $fields = $item->model->fieldset->fields; + } + + return new \App\Mail\CheckoutAssetMail( + $item, + $admin, + $target, + $acceptance, + $note); + }); + Route::group(['prefix' => 'locations', 'middleware' => ['auth']], function () { From 9e1b86f586f2942312105b0b37d69ee8ec34ca17 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 12:51:19 -0700 Subject: [PATCH 05/49] sends checkout notification via webhook --- app/Listeners/CheckoutableListener.php | 34 +++++------ .../CheckinAssetNotification.php | 17 +++--- .../CheckoutAssetNotification.php | 61 ++++++++----------- 3 files changed, 51 insertions(+), 61 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index cfadad5ae915..3204bf628b43 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -62,17 +62,17 @@ public function onCheckedOut($event) } Mail::to($notifiable)->send($mailable); Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); - // Send Webhook notification -// if ($this->shouldSendWebhookNotification()) { -// // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint -// if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { -// Notification::route('slack', Setting::getSettings()->webhook_endpoint) -// ->notify($this->getCheckoutNotification($event, $acceptance)); -// } else { -// Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) -// ->notify($this->getCheckoutNotification($event, $acceptance)); -// } -// } +// Send Webhook notification + if ($this->shouldSendWebhookNotification()) { + // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint + if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { + Notification::route('slack', Setting::getSettings()->webhook_endpoint) + ->notify($this->getCheckoutNotification($event, $acceptance)); + } else { + Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) + ->notify($this->getCheckoutNotification($event, $acceptance)); + } + } } catch (ClientException $e) { Log::debug("Exception caught during checkout notification: " . $e->getMessage()); } catch (Exception $e) { @@ -231,17 +231,17 @@ private function getCheckoutNotification($event, $acceptance = null) { $notificationClass = null; - switch (get_class($event->checkoutable)) { - case Accessory::class: + switch (true) { + case $event->checkoutable instanceof Accessory: $notificationClass = CheckoutAccessoryNotification::class; break; - case Asset::class: + case $event->checkoutable instanceof Asset: $notificationClass = CheckoutAssetNotification::class; break; - case Consumable::class: + case $event->checkoutable instanceof Consumable: $notificationClass = CheckoutConsumableNotification::class; - break; - case LicenseSeat::class: + break; + case $event->checkoutable instanceof LicenseSeat: $notificationClass = CheckoutLicenseSeatNotification::class; break; } diff --git a/app/Notifications/CheckinAssetNotification.php b/app/Notifications/CheckinAssetNotification.php index 77cd6d9b5a87..85b1c744130a 100644 --- a/app/Notifications/CheckinAssetNotification.php +++ b/app/Notifications/CheckinAssetNotification.php @@ -50,7 +50,6 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedInBy, $not */ public function via() { - $notifyBy = []; if (Setting::getSettings()->webhook_selected == 'google' && Setting::getSettings()->webhook_endpoint) { $notifyBy[] = GoogleChatChannel::class; @@ -64,14 +63,14 @@ public function via() Log::debug('use webhook'); $notifyBy[] = 'slack'; } - - /** - * Only send checkin notifications to users if the category - * has the corresponding checkbox checked. - */ - if ($this->item->checkin_email() && $this->target instanceof User && $this->target->email != '') { - $notifyBy[] = 'mail'; - } +dd($notifyBy); +// /** +// * Only send checkin notifications to users if the category +// * has the corresponding checkbox checked. +// */ +// if ($this->item->checkin_email() && $this->target instanceof User && $this->target->email != '') { +// $notifyBy[] = 'mail'; +// } return $notifyBy; } diff --git a/app/Notifications/CheckoutAssetNotification.php b/app/Notifications/CheckoutAssetNotification.php index 4337749f4942..1ca329ed80e7 100644 --- a/app/Notifications/CheckoutAssetNotification.php +++ b/app/Notifications/CheckoutAssetNotification.php @@ -8,6 +8,7 @@ use App\Models\User; use Exception; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -32,6 +33,23 @@ class CheckoutAssetNotification extends Notification */ public function __construct(Asset $asset, $checkedOutTo, User $checkedOutBy, $acceptance, $note) { + $this->settings = Setting::getSettings(); + $this->item = $asset; + $this->admin = $checkedOutBy; + $this->note = $note; + $this->target = $checkedOutTo; + $this->last_checkout = ''; + $this->expected_checkin = ''; + + if ($this->item->last_checkout) { + $this->last_checkout = Helper::getFormattedDateObject($this->item->last_checkout, 'date', + false); + } + + if ($this->item->expected_checkin) { + $this->expected_checkin = Helper::getFormattedDateObject($this->item->expected_checkin, 'date', + false); + } } /** * Get the notification's delivery channels. @@ -41,61 +59,34 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedOutBy, $ac public function via() { $notifyBy = []; - if (Setting::getSettings()->webhook_selected == 'google' && Setting::getSettings()->webhook_endpoint) { + + if (Setting::getSettings()->webhook_selected === 'google' && Setting::getSettings()->webhook_endpoint) { $notifyBy[] = GoogleChatChannel::class; } - if (Setting::getSettings()->webhook_selected == 'microsoft' && Setting::getSettings()->webhook_endpoint) { + if (Setting::getSettings()->webhook_selected === 'microsoft' && Setting::getSettings()->webhook_endpoint) { $notifyBy[] = MicrosoftTeamsChannel::class; } - if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { + if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general' ) { Log::debug('use webhook'); - $notifyBy[] = 'slack'; - } - - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - - /** - * Send an email if the asset requires acceptance, - * so the user can accept or decline the asset - */ - if ($this->item->requireAcceptance()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if the item has a EULA, since the user should always receive it - */ - if ($this->item->getEula()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if an email should be sent at checkin/checkout - */ - if ($this->item->checkin_email()) { - $notifyBy[1] = 'mail'; - } + $notifyBy[] = SlackWebhookChannel::class; } return $notifyBy; } - public function toSlack() + public function toSlack() :SlackMessage { $target = $this->target; $admin = $this->admin; $item = $this->item; $note = $this->note; - $botname = ($this->settings->webhook_botname) ? $this->settings->webhook_botname : 'Snipe-Bot'; + $botname = ($this->settings->webhook_botname) ?: 'Snipe-Bot'; $channel = ($this->settings->webhook_channel) ? $this->settings->webhook_channel : ''; $fields = [ @@ -103,7 +94,7 @@ public function toSlack() 'By' => '<'.$admin->present()->viewUrl().'|'.$admin->present()->fullName().'>', ]; - if (($this->expected_checkin) && ($this->expected_checkin != '')) { + if (($this->expected_checkin) && ($this->expected_checkin !== '')) { $fields['Expected Checkin'] = $this->expected_checkin; } From 16cffe9a9dd0cbce4f38d161a2b4cbebeaffde1c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 12:53:35 -0700 Subject: [PATCH 06/49] simplified checkout webhook call --- app/Listeners/CheckoutableListener.php | 7 ------- 1 file changed, 7 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 3204bf628b43..16032a54f50a 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -124,16 +124,9 @@ public function onCheckedIn($event) \Log::info('Sending email, Locale: ' .$event->checkedOutTo->locale); // Send Webhook notification if ($this->shouldSendWebhookNotification()) { - // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint - if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { - Notification::route('slack', Setting::getSettings()->webhook_endpoint) - ->notify($this->getCheckinNotification($event)); - } else { Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) ->notify($this->getCheckinNotification($event)); } - } - } catch (ClientException $e) { Log::warning("Exception caught during checkout notification: " . $e->getMessage()); } catch (Exception $e) { From 9710436d54fc23e79bf96b61430f3f0f3345581a Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 13:12:07 -0700 Subject: [PATCH 07/49] adds Mailables for asset checkin and out --- app/Listeners/CheckoutableListener.php | 8 +- app/Mail/CheckinAssetMail.php | 102 ++++++++++++ app/Mail/CheckoutAssetMail.php | 150 ++++++++++++++++++ .../CheckinAssetNotification.php | 32 +--- .../markdown/checkin-asset.blade.php | 0 routes/web.php | 2 +- 6 files changed, 255 insertions(+), 39 deletions(-) create mode 100644 app/Mail/CheckinAssetMail.php create mode 100644 app/Mail/CheckoutAssetMail.php rename resources/views/{notifications => mail}/markdown/checkin-asset.blade.php (100%) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 16032a54f50a..44e731b4baf5 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -64,15 +64,9 @@ public function onCheckedOut($event) Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); // Send Webhook notification if ($this->shouldSendWebhookNotification()) { - // Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint - if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') { - Notification::route('slack', Setting::getSettings()->webhook_endpoint) - ->notify($this->getCheckoutNotification($event, $acceptance)); - } else { Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) ->notify($this->getCheckoutNotification($event, $acceptance)); } - } } catch (ClientException $e) { Log::debug("Exception caught during checkout notification: " . $e->getMessage()); } catch (Exception $e) { @@ -111,7 +105,7 @@ public function onCheckedIn($event) $mailable = (new CheckInAssetMail( $event->checkoutable, $event->checkedOutTo, - $event->checkedOutBy, + $event->checkedInBy, $event->note, )); diff --git a/app/Mail/CheckinAssetMail.php b/app/Mail/CheckinAssetMail.php new file mode 100644 index 000000000000..5795d795c701 --- /dev/null +++ b/app/Mail/CheckinAssetMail.php @@ -0,0 +1,102 @@ +target = $checkedOutTo; + $this->item = $asset; + $this->admin = $checkedInBy; + $this->note = $note; + + $this->settings = Setting::getSettings(); + $this->expected_checkin = ''; + + if ($this->item->expected_checkin) { + $this->expected_checkin = Helper::getFormattedDateObject($this->item->expected_checkin, 'date', + false); + } + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.Asset_Checkin_Notification'), + ); + } + + /** + * Get the mail representation of the notification. + * + * @param mixed $notifiable + * @return Content + */ + public function content(): Content + { + $this->item->load('assetstatus'); + $fields = []; + + // Check if the item has custom fields associated with it + if (($this->item->model) && ($this->item->model->fieldset)) { + $fields = $this->item->model->fieldset->fields; + } + + return new Content( + markdown: 'mail.markdown.checkin-asset', + with: [ + 'item' => $this->item, + 'status' => $this->item->assetstatus?->name, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + 'fields' => $fields, + 'expected_checkin' => $this->expected_checkin, + ], + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/CheckoutAssetMail.php b/app/Mail/CheckoutAssetMail.php new file mode 100644 index 000000000000..214c48ed5c16 --- /dev/null +++ b/app/Mail/CheckoutAssetMail.php @@ -0,0 +1,150 @@ +item = $asset; + $this->admin = $checkedOutBy; + $this->note = $note; + $this->target = $checkedOutTo; + $this->acceptance = $acceptance; + + $this->settings = Setting::getSettings(); + + $this->last_checkout = ''; + $this->expected_checkin = ''; + + if ($this->item->last_checkout) { + $this->last_checkout = Helper::getFormattedDateObject($this->item->last_checkout, 'date', + false); + } + + if ($this->item->expected_checkin) { + $this->expected_checkin = Helper::getFormattedDateObject($this->item->expected_checkin, 'date', + false); + } + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.Asset_Checkout_Notification'), + ); + } + + /** + * Get the mail representation of the notification. + * + * @param mixed $notifiable + * @return Content + */ + public function content(): Content + { + $this->item->load('assetstatus'); + $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; + $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; + $fields = []; + + // Check if the item has custom fields associated with it + if (($this->item->model) && ($this->item->model->fieldset)) { + $fields = $this->item->model->fieldset->fields; + } + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + return new Content( + markdown: 'mail.markdown.checkout-asset', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'status' => $this->item->assetstatus?->name, + 'note' => $this->note, + 'target' => $this->target, + 'fields' => $fields, + 'eula' => $eula, + 'req_accept' => $req_accept, + 'accept_url' => $accept_url, + 'last_checkout' => $this->last_checkout, + 'expected_checkin' => $this->expected_checkin, + ], + ); + } +// public function build() +// { +// $this->item->load('assetstatus'); +// $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; +// $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; +// $fields = []; +// +// // Check if the item has custom fields associated with it +// if (($this->item->model) && ($this->item->model->fieldset)) { +// $fields = $this->item->model->fieldset->fields; +// } +// +// $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); +// +// return $this +// ->subject('Asset Checkout Notification') +// ->markdown('notifications.markdown.checkout-asset') +// ->with([ +// 'item' => $this->item, +// 'admin' => $this->admin, +// 'status' => $this->item->assetstatus?->name, +// 'note' => $this->note, +// 'target' => $this->target, +// 'fields' => $fields, +// 'eula' => $eula, +// 'req_accept' => $req_accept, +// 'accept_url' => $accept_url, +// 'last_checkout' => $this->last_checkout, +// 'expected_checkin' => $this->expected_checkin, +// ]); +// } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Notifications/CheckinAssetNotification.php b/app/Notifications/CheckinAssetNotification.php index 85b1c744130a..5c38982ab690 100644 --- a/app/Notifications/CheckinAssetNotification.php +++ b/app/Notifications/CheckinAssetNotification.php @@ -63,7 +63,7 @@ public function via() Log::debug('use webhook'); $notifyBy[] = 'slack'; } -dd($notifyBy); + // /** // * Only send checkin notifications to users if the category // * has the corresponding checkbox checked. @@ -141,35 +141,5 @@ public function toGoogleChat() ) ) ); - - } - - /** - * Get the mail representation of the notification. - * - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - $fields = []; - - // Check if the item has custom fields associated with it - if (($this->item->model) && ($this->item->model->fieldset)) { - $fields = $this->item->model->fieldset->fields; - } - - $message = (new MailMessage)->markdown('notifications.markdown.checkin-asset', - [ - 'item' => $this->item, - 'status' => $this->item->assetstatus?->name, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - 'fields' => $fields, - 'expected_checkin' => $this->expected_checkin, - ]) - ->subject(trans('mail.Asset_Checkin_Notification')); - - return $message; } } diff --git a/resources/views/notifications/markdown/checkin-asset.blade.php b/resources/views/mail/markdown/checkin-asset.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkin-asset.blade.php rename to resources/views/mail/markdown/checkin-asset.blade.php diff --git a/routes/web.php b/routes/web.php index 7bed89acf7ff..548758e3827d 100644 --- a/routes/web.php +++ b/routes/web.php @@ -67,7 +67,7 @@ $fields = $item->model->fieldset->fields; } - return new \App\Mail\CheckoutAssetMail( + return new \App\Mail\CheckinAssetMail( $item, $admin, $target, From dcdf600b785501d960ee6a8f99a46f9a6ba90b9f Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:27:34 -0700 Subject: [PATCH 08/49] adds Checkin and Checkout mailables and listner logic --- app/Listeners/CheckoutableListener.php | 43 +++++--- app/Mail/CheckoutAccessoryMail.php | 98 +++++++++++++++++++ .../CheckinAccessoryNotification.php | 62 ++++++------ .../CheckoutAccessoryNotification.php | 58 +---------- .../markdown/checkin-accessory.blade.php | 0 .../markdown/checkout-accessory.blade.php | 0 routes/web.php | 6 +- 7 files changed, 162 insertions(+), 105 deletions(-) create mode 100644 app/Mail/CheckoutAccessoryMail.php rename resources/views/{notifications => mail}/markdown/checkin-accessory.blade.php (100%) rename resources/views/{notifications => mail}/markdown/checkout-accessory.blade.php (100%) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 44e731b4baf5..6acedd4d97b6 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -3,6 +3,8 @@ namespace App\Listeners; use App\Events\CheckoutableCheckedOut; +use App\Mail\CheckinAccessoryMail; +use App\Mail\CheckoutAccessoryMail; use App\Mail\CheckoutAssetMail; use App\Mail\CheckinAssetMail; use App\Models\Accessory; @@ -47,14 +49,7 @@ public function onCheckedOut($event) */ $acceptance = $this->getCheckoutAcceptance($event); $notifiable = $this->getNotifiable($event); - $mailable = (new CheckoutAssetMail( - $event->checkoutable, - $event->checkedOutTo, - $event->checkedOutBy, - $event->note, - $acceptance, - )); - + $mailable = $this->getCheckoutMailType($event, $acceptance); // Send email notifications try { if (!$event->checkedOutTo->locale){ @@ -102,12 +97,7 @@ public function onCheckedIn($event) } $notifiable = $this->getNotifiable($event); - $mailable = (new CheckInAssetMail( - $event->checkoutable, - $event->checkedOutTo, - $event->checkedInBy, - $event->note, - )); + $mailable = $this->getCheckinMailType($event); // Send email notifications try { @@ -233,9 +223,32 @@ private function getCheckoutNotification($event, $acceptance = null) break; } - return new $notificationClass($event->checkoutable, $event->checkedOutTo, $event->checkedOutBy, $acceptance, $event->note); } + private function getCheckoutMailType($event, $acceptance){ + $lookup = [ + Accessory::class => CheckoutAccessoryMail::class, + Asset::class => CheckoutAssetMail::class, +// Consumable::class => +// LicenseSeat::class => + ]; + $mailable= $lookup[get_class($event->checkoutable)]; + + return new $mailable($event->checkoutable, $event->checkedOutTo, $event->checkedOutBy, $event->note, $acceptance); + + } + private function getCheckinMailType($event){ + $lookup = [ + Accessory::class => CheckinAccessoryMail::class, + Asset::class => CheckinAssetMail::class, +// Consumable::class => +// LicenseSeat::class => + ]; + $mailable= $lookup[get_class($event->checkoutable)]; + + return new $mailable($event->checkoutable, $event->checkedOutTo, $event->checkedInBy, $event->note); + + } /** * Register the listeners for the subscriber. diff --git a/app/Mail/CheckoutAccessoryMail.php b/app/Mail/CheckoutAccessoryMail.php new file mode 100644 index 000000000000..f7f90e8fe2c4 --- /dev/null +++ b/app/Mail/CheckoutAccessoryMail.php @@ -0,0 +1,98 @@ +item = $accessory; + $this->admin = $checkedOutBy; + $this->note = $note; + $this->checkout_qty = $accessory->checkout_qty; + $this->target = $checkedOutTo; + $this->acceptance = $acceptance; + $this->settings = Setting::getSettings(); + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: (trans('mail.Accessory_Checkout_Notification')), + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + Log::debug($this->item->getImageUrl()); + $eula = $this->item->getEula(); + $req_accept = $this->item->requireAcceptance(); + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + // Check if the item has custom fields associated with it + if (($this->item->model) && ($this->item->model->fieldset)) { + $fields = $this->item->model->fieldset->fields; + } + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + return new Content( + markdown: 'mail.markdown.checkout-accessory', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + 'eula' => $eula, + 'req_accept' => $req_accept, + 'accept_url' => $accept_url, + 'checkout_qty' => $this->checkout_qty, + ], + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Notifications/CheckinAccessoryNotification.php b/app/Notifications/CheckinAccessoryNotification.php index 7e033f1870bd..d36b77a85019 100644 --- a/app/Notifications/CheckinAccessoryNotification.php +++ b/app/Notifications/CheckinAccessoryNotification.php @@ -58,18 +58,18 @@ public function via() $notifyBy[] = 'slack'; } - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - Log::debug('The target is a user'); - - if ($this->item->checkin_email()) { - $notifyBy[] = 'mail'; - } - } - - Log::debug('checkin_email on this category is '.$this->item->checkin_email()); +// /** +// * Only send notifications to users that have email addresses +// */ +// if ($this->target instanceof User && $this->target->email != '') { +// Log::debug('The target is a user'); +// +// if ($this->item->checkin_email()) { +// $notifyBy[] = 'mail'; +// } +// } +// +// Log::debug('checkin_email on this category is '.$this->item->checkin_email()); return $notifyBy; } @@ -143,23 +143,23 @@ public function toGoogleChat() } - /** - * Get the mail representation of the notification. - * - * @param mixed $notifiable - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - Log::debug('to email called'); - - return (new MailMessage)->markdown('notifications.markdown.checkin-accessory', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - ]) - ->subject(trans('mail.Accessory_Checkin_Notification')); - } +// /** +// * Get the mail representation of the notification. +// * +// * @param mixed $notifiable +// * @return \Illuminate\Notifications\Messages\MailMessage +// */ +// public function toMail() +// { +// Log::debug('to email called'); +// +// return (new MailMessage)->markdown('notifications.markdown.checkin-accessory', +// [ +// 'item' => $this->item, +// 'admin' => $this->admin, +// 'note' => $this->note, +// 'target' => $this->target, +// ]) +// ->subject(trans('mail.Accessory_Checkin_Notification')); +// } } diff --git a/app/Notifications/CheckoutAccessoryNotification.php b/app/Notifications/CheckoutAccessoryNotification.php index 721ba7f6a4b5..cbc946ba43ed 100644 --- a/app/Notifications/CheckoutAccessoryNotification.php +++ b/app/Notifications/CheckoutAccessoryNotification.php @@ -6,6 +6,7 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -55,35 +56,7 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = 'slack'; - } - - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - - /** - * Send an email if the asset requires acceptance, - * so the user can accept or decline the asset - */ - if ($this->item->requireAcceptance()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if the item has a EULA, since the user should always receive it - */ - if ($this->item->getEula()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if an email should be sent at checkin/checkout - */ - if ($this->item->checkin_email()) { - $notifyBy[1] = 'mail'; - } + $notifyBy[] = SlackWebhookChannel::class; } return $notifyBy; @@ -163,31 +136,4 @@ public function toGoogleChat() } - - /** - * Get the mail representation of the notification. - * - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - Log::debug($this->item->getImageUrl()); - $eula = $this->item->getEula(); - $req_accept = $this->item->requireAcceptance(); - - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); - - return (new MailMessage)->markdown('notifications.markdown.checkout-accessory', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - 'eula' => $eula, - 'req_accept' => $req_accept, - 'accept_url' => $accept_url, - 'checkout_qty' => $this->checkout_qty, - ]) - ->subject(trans('mail.Confirm_accessory_delivery')); - } } diff --git a/resources/views/notifications/markdown/checkin-accessory.blade.php b/resources/views/mail/markdown/checkin-accessory.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkin-accessory.blade.php rename to resources/views/mail/markdown/checkin-accessory.blade.php diff --git a/resources/views/notifications/markdown/checkout-accessory.blade.php b/resources/views/mail/markdown/checkout-accessory.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkout-accessory.blade.php rename to resources/views/mail/markdown/checkout-accessory.blade.php diff --git a/routes/web.php b/routes/web.php index 548758e3827d..756c6dd4513e 100644 --- a/routes/web.php +++ b/routes/web.php @@ -24,6 +24,7 @@ use App\Http\Controllers\Auth\ForgotPasswordController; use App\Http\Controllers\Auth\ResetPasswordController; use App\Livewire\Importer; +use App\Models\Accessory; use App\Models\Asset; use App\Models\User; use Illuminate\Support\Facades\Route; @@ -56,7 +57,7 @@ * Locations */ Route::get('/test-email', function() { - $item = Asset::find(1); // Load some test data + $item = Accessory::find(1); // Load some test data $admin = User::find(1); $target = User::find(2); $acceptance = null; // Simulate acceptance data @@ -67,11 +68,10 @@ $fields = $item->model->fieldset->fields; } - return new \App\Mail\CheckinAssetMail( + return new \App\Mail\CheckinAccessoryMail( $item, $admin, $target, - $acceptance, $note); }); From c39df34bdfabb2acde4ab8aaba01cf5c65582675 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:29:50 -0700 Subject: [PATCH 09/49] forgot to add accessory mail to project --- app/Mail/CheckinAccessoryMail.php | 79 +++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 app/Mail/CheckinAccessoryMail.php diff --git a/app/Mail/CheckinAccessoryMail.php b/app/Mail/CheckinAccessoryMail.php new file mode 100644 index 000000000000..0c3ddbba0e5e --- /dev/null +++ b/app/Mail/CheckinAccessoryMail.php @@ -0,0 +1,79 @@ +item = $accessory; + $this->target = $checkedOutTo; + $this->admin = $checkedInby; + $this->note = $note; + $this->settings = Setting::getSettings(); + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.Accessory_Checkin_Notification'), + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + markdown: 'mail.markdown.checkin-accessory', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} From f1d83a3f281a7d17c2b8ca52ccaf8403cac4d246 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:30:53 -0700 Subject: [PATCH 10/49] forgot to add asset checkout markdown to projet --- .../mail/markdown/checkout-asset.blade.php | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 resources/views/mail/markdown/checkout-asset.blade.php diff --git a/resources/views/mail/markdown/checkout-asset.blade.php b/resources/views/mail/markdown/checkout-asset.blade.php new file mode 100644 index 000000000000..5b4c811dd712 --- /dev/null +++ b/resources/views/mail/markdown/checkout-asset.blade.php @@ -0,0 +1,76 @@ +@component('mail::message') + # {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, + + {{ trans('mail.new_item_checked') }} + + @if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) +
Asset
+ @endif + + @component('mail::table') + | | | + | ------------- | ------------- | + @if ((isset($item->name)) && ($item->name!='')) + | **{{ trans('mail.asset_name') }}** | {{ $item->name }} | + @endif + @if (($item->name!=$item->asset_tag)) + | **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | + @endif + @if (isset($item->manufacturer)) + | **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | + @endif + @if (isset($item->model)) + | **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | + @endif + @if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) + | **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | + @endif + @if (isset($item->serial)) + | **{{ trans('mail.serial') }}** | {{ $item->serial }} | + @endif + @if (isset($last_checkout)) + | **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | + @endif + @if (isset($status)) + | **{{ trans('general.status') }}** | {{ $status }} | + @endif + @if ((isset($expected_checkin)) && ($expected_checkin!='')) + | **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | + @endif + @foreach($fields as $field) + @if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) + | **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | + @endif + @endforeach + @if ($admin) + | **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | + @endif + @if ($note) + | **{{ trans('mail.additional_notes') }}** | {{ $note }} | + @endif + @endcomponent + + @if (($req_accept == 1) && ($eula!='')) + {{ trans('mail.read_the_terms_and_click') }} + @elseif (($req_accept == 1) && ($eula=='')) + {{ trans('mail.click_on_the_link_asset') }} + @elseif (($req_accept == 0) && ($eula!='')) + {{ trans('mail.read_the_terms') }} + @endif + + @if ($eula) + @component('mail::panel') + {!! $eula !!} + @endcomponent + @endif + + @if ($req_accept == 1) + **[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** + @endif + + + {{ trans('mail.best_regards') }} + + {{ $snipeSettings->site_name }} + +@endcomponent \ No newline at end of file From 2584d603445bb0a82e722cd8b7a3dbf7f1c1d020 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:38:49 -0700 Subject: [PATCH 11/49] adds Licenses seat checkout Mailable --- app/Listeners/CheckoutableListener.php | 3 +- app/Mail/CheckoutLicenseMail.php | 89 +++++++++++++++++++ .../CheckoutLicenseSeatNotification.php | 28 ------ .../markdown/checkout-license.blade.php | 0 routes/web.php | 6 +- 5 files changed, 95 insertions(+), 31 deletions(-) create mode 100644 app/Mail/CheckoutLicenseMail.php rename resources/views/{notifications => mail}/markdown/checkout-license.blade.php (100%) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 6acedd4d97b6..915ed5753aae 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -7,6 +7,7 @@ use App\Mail\CheckoutAccessoryMail; use App\Mail\CheckoutAssetMail; use App\Mail\CheckinAssetMail; +use App\Mail\CheckoutLicenseMail; use App\Models\Accessory; use App\Models\Asset; use App\Models\CheckoutAcceptance; @@ -229,8 +230,8 @@ private function getCheckoutMailType($event, $acceptance){ $lookup = [ Accessory::class => CheckoutAccessoryMail::class, Asset::class => CheckoutAssetMail::class, + LicenseSeat::class => CheckoutLicenseMail::class, // Consumable::class => -// LicenseSeat::class => ]; $mailable= $lookup[get_class($event->checkoutable)]; diff --git a/app/Mail/CheckoutLicenseMail.php b/app/Mail/CheckoutLicenseMail.php new file mode 100644 index 000000000000..8389f1136fce --- /dev/null +++ b/app/Mail/CheckoutLicenseMail.php @@ -0,0 +1,89 @@ +item = $licenseSeat->license; + $this->admin = $checkedOutBy; + $this->note = $note; + $this->target = $checkedOutTo; + $this->acceptance = $acceptance; + + $this->settings = Setting::getSettings(); + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.Confirm_license_delivery'), + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; + $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + return new Content( + markdown: 'mail.markdown.checkout-license', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + 'eula' => $eula, + 'req_accept' => $req_accept, + 'accept_url' => $accept_url, + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Notifications/CheckoutLicenseSeatNotification.php b/app/Notifications/CheckoutLicenseSeatNotification.php index 8e0273c66e7d..16f8c7c1d50c 100644 --- a/app/Notifications/CheckoutLicenseSeatNotification.php +++ b/app/Notifications/CheckoutLicenseSeatNotification.php @@ -63,34 +63,6 @@ public function via() $notifyBy[] = 'slack'; } - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - - /** - * Send an email if the asset requires acceptance, - * so the user can accept or decline the asset - */ - if ($this->item->requireAcceptance()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if the item has a EULA, since the user should always receive it - */ - if ($this->item->getEula()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if an email should be sent at checkin/checkout - */ - if ($this->item->checkin_email()) { - $notifyBy[1] = 'mail'; - } - } - return $notifyBy; } diff --git a/resources/views/notifications/markdown/checkout-license.blade.php b/resources/views/mail/markdown/checkout-license.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkout-license.blade.php rename to resources/views/mail/markdown/checkout-license.blade.php diff --git a/routes/web.php b/routes/web.php index 756c6dd4513e..bcbe159b3046 100644 --- a/routes/web.php +++ b/routes/web.php @@ -26,6 +26,7 @@ use App\Livewire\Importer; use App\Models\Accessory; use App\Models\Asset; +use App\Models\LicenseSeat; use App\Models\User; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Auth; @@ -57,7 +58,7 @@ * Locations */ Route::get('/test-email', function() { - $item = Accessory::find(1); // Load some test data + $item = LicenseSeat::find(1); // Load some test data $admin = User::find(1); $target = User::find(2); $acceptance = null; // Simulate acceptance data @@ -68,10 +69,11 @@ $fields = $item->model->fieldset->fields; } - return new \App\Mail\CheckinAccessoryMail( + return new \App\Mail\CheckoutLicenseMail( $item, $admin, $target, + $acceptance, $note); }); From 4becdca8aa792957243e5ca9a3dcf04cfa3ee522 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:39:20 -0700 Subject: [PATCH 12/49] removes toMail from license notificaqtion --- .../CheckoutLicenseSeatNotification.php | 25 ------------------- 1 file changed, 25 deletions(-) diff --git a/app/Notifications/CheckoutLicenseSeatNotification.php b/app/Notifications/CheckoutLicenseSeatNotification.php index 16f8c7c1d50c..85d02abc9294 100644 --- a/app/Notifications/CheckoutLicenseSeatNotification.php +++ b/app/Notifications/CheckoutLicenseSeatNotification.php @@ -136,29 +136,4 @@ public function toGoogleChat() ); } - - /** - * Get the mail representation of the notification. - * - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; - $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; - - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); - - return (new MailMessage)->markdown('notifications.markdown.checkout-license', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - 'eula' => $eula, - 'req_accept' => $req_accept, - 'accept_url' => $accept_url, - ]) - ->subject(trans('mail.Confirm_license_delivery')); - } } From 02ff646da4388422d260ed50d8e93ea7bc57dab0 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:44:45 -0700 Subject: [PATCH 13/49] adds checkin license mailable --- app/Listeners/CheckoutableListener.php | 3 +- app/Mail/CheckinLicenseMail.php | 79 +++++++++++++++++++ .../CheckinAccessoryNotification.php | 33 -------- .../CheckinLicenseSeatNotification.php | 27 ------- .../markdown/checkin-license.blade.php | 0 5 files changed, 81 insertions(+), 61 deletions(-) create mode 100644 app/Mail/CheckinLicenseMail.php rename resources/views/{notifications => mail}/markdown/checkin-license.blade.php (100%) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 915ed5753aae..fe9f7b6d383b 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -4,6 +4,7 @@ use App\Events\CheckoutableCheckedOut; use App\Mail\CheckinAccessoryMail; +use App\Mail\CheckinLicenseMail; use App\Mail\CheckoutAccessoryMail; use App\Mail\CheckoutAssetMail; use App\Mail\CheckinAssetMail; @@ -242,8 +243,8 @@ private function getCheckinMailType($event){ $lookup = [ Accessory::class => CheckinAccessoryMail::class, Asset::class => CheckinAssetMail::class, + LicenseSeat::class => CheckinLicenseMail::class, // Consumable::class => -// LicenseSeat::class => ]; $mailable= $lookup[get_class($event->checkoutable)]; diff --git a/app/Mail/CheckinLicenseMail.php b/app/Mail/CheckinLicenseMail.php new file mode 100644 index 000000000000..e567383f8035 --- /dev/null +++ b/app/Mail/CheckinLicenseMail.php @@ -0,0 +1,79 @@ +target = $checkedOutTo; + $this->item = $licenseSeat->license; + $this->admin = $checkedInBy; + $this->note = $note; + $this->settings = Setting::getSettings(); + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.License_Checkin_Notification'), + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + markdown: 'mail.markdown.checkin-license', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Notifications/CheckinAccessoryNotification.php b/app/Notifications/CheckinAccessoryNotification.php index d36b77a85019..777834aae7bd 100644 --- a/app/Notifications/CheckinAccessoryNotification.php +++ b/app/Notifications/CheckinAccessoryNotification.php @@ -58,19 +58,6 @@ public function via() $notifyBy[] = 'slack'; } -// /** -// * Only send notifications to users that have email addresses -// */ -// if ($this->target instanceof User && $this->target->email != '') { -// Log::debug('The target is a user'); -// -// if ($this->item->checkin_email()) { -// $notifyBy[] = 'mail'; -// } -// } -// -// Log::debug('checkin_email on this category is '.$this->item->checkin_email()); - return $notifyBy; } @@ -142,24 +129,4 @@ public function toGoogleChat() ); } - -// /** -// * Get the mail representation of the notification. -// * -// * @param mixed $notifiable -// * @return \Illuminate\Notifications\Messages\MailMessage -// */ -// public function toMail() -// { -// Log::debug('to email called'); -// -// return (new MailMessage)->markdown('notifications.markdown.checkin-accessory', -// [ -// 'item' => $this->item, -// 'admin' => $this->admin, -// 'note' => $this->note, -// 'target' => $this->target, -// ]) -// ->subject(trans('mail.Accessory_Checkin_Notification')); -// } } diff --git a/app/Notifications/CheckinLicenseSeatNotification.php b/app/Notifications/CheckinLicenseSeatNotification.php index 289e63a16247..114011bd7284 100644 --- a/app/Notifications/CheckinLicenseSeatNotification.php +++ b/app/Notifications/CheckinLicenseSeatNotification.php @@ -61,14 +61,6 @@ public function via() $notifyBy[] = 'slack'; } - /** - * Only send checkin notifications to users if the category - * has the corresponding checkbox checked. - */ - if ($this->item->checkin_email() && $this->target instanceof User && $this->target->email != '') { - $notifyBy[] = 'mail'; - } - return $notifyBy; } @@ -149,23 +141,4 @@ public function toGoogleChat() ); } - - - /** - * Get the mail representation of the notification. - * - * @param mixed $notifiable - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - return (new MailMessage)->markdown('notifications.markdown.checkin-license', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - ]) - ->subject(trans('mail.License_Checkin_Notification')); - } } diff --git a/resources/views/notifications/markdown/checkin-license.blade.php b/resources/views/mail/markdown/checkin-license.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkin-license.blade.php rename to resources/views/mail/markdown/checkin-license.blade.php From 02bda3cd9598d77ddd2c68f67f589f82e0af37b3 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 15:53:05 -0700 Subject: [PATCH 14/49] adds Checkout Consumable mailable and slackwebhook channel to notifs --- app/Listeners/CheckoutableListener.php | 16 ++-- app/Mail/CheckoutConsumableMail.php | 91 +++++++++++++++++++ .../CheckinAccessoryNotification.php | 3 +- .../CheckoutConsumableNotification.php | 83 ++++++----------- .../CheckoutLicenseSeatNotification.php | 3 +- .../markdown/checkout-consumable.blade.php | 0 6 files changed, 133 insertions(+), 63 deletions(-) create mode 100644 app/Mail/CheckoutConsumableMail.php rename resources/views/{notifications => mail}/markdown/checkout-consumable.blade.php (100%) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index fe9f7b6d383b..4f51ed705f5d 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -8,6 +8,7 @@ use App\Mail\CheckoutAccessoryMail; use App\Mail\CheckoutAssetMail; use App\Mail\CheckinAssetMail; +use App\Mail\CheckoutConsumableMail; use App\Mail\CheckoutLicenseMail; use App\Models\Accessory; use App\Models\Asset; @@ -210,21 +211,22 @@ private function getCheckoutNotification($event, $acceptance = null) { $notificationClass = null; - switch (true) { - case $event->checkoutable instanceof Accessory: + switch (get_class($event->checkoutable)) { + case Accessory::class: $notificationClass = CheckoutAccessoryNotification::class; break; - case $event->checkoutable instanceof Asset: + case Asset::class: $notificationClass = CheckoutAssetNotification::class; break; - case $event->checkoutable instanceof Consumable: + case Consumable::class: $notificationClass = CheckoutConsumableNotification::class; break; - case $event->checkoutable instanceof LicenseSeat: + case LicenseSeat::class: $notificationClass = CheckoutLicenseSeatNotification::class; break; } + return new $notificationClass($event->checkoutable, $event->checkedOutTo, $event->checkedOutBy, $acceptance, $event->note); } private function getCheckoutMailType($event, $acceptance){ @@ -232,7 +234,7 @@ private function getCheckoutMailType($event, $acceptance){ Accessory::class => CheckoutAccessoryMail::class, Asset::class => CheckoutAssetMail::class, LicenseSeat::class => CheckoutLicenseMail::class, -// Consumable::class => + Consumable::class => CheckoutConsumableMail::class, ]; $mailable= $lookup[get_class($event->checkoutable)]; @@ -244,8 +246,8 @@ private function getCheckinMailType($event){ Accessory::class => CheckinAccessoryMail::class, Asset::class => CheckinAssetMail::class, LicenseSeat::class => CheckinLicenseMail::class, -// Consumable::class => ]; + $mailable= $lookup[get_class($event->checkoutable)]; return new $mailable($event->checkoutable, $event->checkedOutTo, $event->checkedInBy, $event->note); diff --git a/app/Mail/CheckoutConsumableMail.php b/app/Mail/CheckoutConsumableMail.php new file mode 100644 index 000000000000..382f789eb917 --- /dev/null +++ b/app/Mail/CheckoutConsumableMail.php @@ -0,0 +1,91 @@ +item = $consumable; + $this->admin = $checkedOutBy; + $this->note = $note; + $this->target = $checkedOutTo; + $this->acceptance = $acceptance; + + $this->settings = Setting::getSettings(); + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + $from = null; + $cc = []; + + if (!empty(Setting::getSettings()->alert_email)) { + $from = new Address(Setting::getSettings()->alert_email); + } + if (!empty(Setting::getSettings()->admin_cc_email)) { + $cc[] = new Address(Setting::getSettings()->admin_cc_email); + } + + return new Envelope( + from: $from ?? new Address('default@example.com', 'Default Sender'), + cc: $cc, + subject: trans('mail.Confirm_consumable_delivery'), + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + Log::debug($this->item->getImageUrl()); + $eula = $this->item->getEula(); + $req_accept = $this->item->requireAcceptance(); + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + return new Content( + markdown: 'mail.markdown.checkout-consumable', + with: [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + 'eula' => $eula, + 'req_accept' => $req_accept, + 'accept_url' => $accept_url, + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Notifications/CheckinAccessoryNotification.php b/app/Notifications/CheckinAccessoryNotification.php index 777834aae7bd..d2955151217b 100644 --- a/app/Notifications/CheckinAccessoryNotification.php +++ b/app/Notifications/CheckinAccessoryNotification.php @@ -6,6 +6,7 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -55,7 +56,7 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = 'slack'; + $notifyBy[] = SlackWebhookChannel::class; } return $notifyBy; diff --git a/app/Notifications/CheckoutConsumableNotification.php b/app/Notifications/CheckoutConsumableNotification.php index 6746795f2c63..0a2733689b93 100644 --- a/app/Notifications/CheckoutConsumableNotification.php +++ b/app/Notifications/CheckoutConsumableNotification.php @@ -6,6 +6,7 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -61,36 +62,36 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = 'slack'; + $notifyBy[] = SlackWebhookChannel::class; } - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - - /** - * Send an email if the asset requires acceptance, - * so the user can accept or decline the asset - */ - if ($this->item->requireAcceptance()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if the item has a EULA, since the user should always receive it - */ - if ($this->item->getEula()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if an email should be sent at checkin/checkout - */ - if ((method_exists($this->item, 'checkin_email')) && ($this->item->checkin_email())) { - $notifyBy[1] = 'mail'; - } - } +// /** +// * Only send notifications to users that have email addresses +// */ +// if ($this->target instanceof User && $this->target->email != '') { +// +// /** +// * Send an email if the asset requires acceptance, +// * so the user can accept or decline the asset +// */ +// if ($this->item->requireAcceptance()) { +// $notifyBy[1] = 'mail'; +// } +// +// /** +// * Send an email if the item has a EULA, since the user should always receive it +// */ +// if ($this->item->getEula()) { +// $notifyBy[1] = 'mail'; +// } +// +// /** +// * Send an email if an email should be sent at checkin/checkout +// */ +// if ((method_exists($this->item, 'checkin_email')) && ($this->item->checkin_email())) { +// $notifyBy[1] = 'mail'; +// } +// } return $notifyBy; } @@ -165,30 +166,4 @@ public function toGoogleChat() ); } - - /** - * Get the mail representation of the notification. - * - * @return \Illuminate\Notifications\Messages\MailMessage - */ - public function toMail() - { - Log::debug($this->item->getImageUrl()); - $eula = $this->item->getEula(); - $req_accept = $this->item->requireAcceptance(); - - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); - - return (new MailMessage)->markdown('notifications.markdown.checkout-consumable', - [ - 'item' => $this->item, - 'admin' => $this->admin, - 'note' => $this->note, - 'target' => $this->target, - 'eula' => $eula, - 'req_accept' => $req_accept, - 'accept_url' => $accept_url, - ]) - ->subject(trans('mail.Confirm_consumable_delivery')); - } } diff --git a/app/Notifications/CheckoutLicenseSeatNotification.php b/app/Notifications/CheckoutLicenseSeatNotification.php index 85d02abc9294..1c26138a6ed7 100644 --- a/app/Notifications/CheckoutLicenseSeatNotification.php +++ b/app/Notifications/CheckoutLicenseSeatNotification.php @@ -6,6 +6,7 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -60,7 +61,7 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = 'slack'; + $notifyBy[] = SlackWebhookChannel::class; } return $notifyBy; diff --git a/resources/views/notifications/markdown/checkout-consumable.blade.php b/resources/views/mail/markdown/checkout-consumable.blade.php similarity index 100% rename from resources/views/notifications/markdown/checkout-consumable.blade.php rename to resources/views/mail/markdown/checkout-consumable.blade.php From a7754c1a7fd6559b5d512fbd520556c9d10b76aa Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 16:46:52 -0700 Subject: [PATCH 15/49] fixed asset checkout markdown, and notifiable variable --- app/Listeners/CheckoutableListener.php | 35 +---- .../mail/markdown/checkout-asset.blade.php | 128 +++++++++--------- 2 files changed, 67 insertions(+), 96 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 4f51ed705f5d..44987e20d17c 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -16,10 +16,9 @@ use App\Models\Component; use App\Models\Consumable; use App\Models\LicenseSeat; -use App\Models\Recipients\AdminRecipient; use App\Models\Setting; -use App\Models\User; use App\Notifications\CheckinAccessoryNotification; +use App\Notifications\CheckinAssetNotification; use App\Notifications\CheckinLicenseSeatNotification; use App\Notifications\CheckoutAccessoryNotification; use App\Notifications\CheckoutAssetNotification; @@ -51,7 +50,7 @@ public function onCheckedOut($event) * Make a checkout acceptance and attach it in the notification */ $acceptance = $this->getCheckoutAcceptance($event); - $notifiable = $this->getNotifiable($event); + $notifiable = $event->checkedOutTo; $mailable = $this->getCheckoutMailType($event, $acceptance); // Send email notifications try { @@ -99,7 +98,7 @@ public function onCheckedIn($event) } } - $notifiable = $this->getNotifiable($event); + $notifiable = $event->checkedInBy; $mailable = $this->getCheckinMailType($event); // Send email notifications @@ -144,34 +143,6 @@ private function getCheckoutAcceptance($event) return $acceptance; } - /** - * Gets the entities to be notified of the passed event - * - * @param Event $event - * @return Collection - */ - private function getNotifiable($event) - { - $notifiable = collect(); - - /** - * Notify who checked out the item as long as the model can route notifications - */ - if (method_exists($event->checkedOutTo, 'routeNotificationFor')) { - $notifiable->push($event->checkedOutTo); - } - - /** - * Notify Admin users if the settings is activated - */ - if ((Setting::getSettings()) && (Setting::getSettings()->admin_cc_email != '')) { - $adminRecipient= new AdminRecipient; - $notifiable->push($adminRecipient->getEmail()); - } - - return new $notifiable; - } - /** * Get the appropriate notification for the event * diff --git a/resources/views/mail/markdown/checkout-asset.blade.php b/resources/views/mail/markdown/checkout-asset.blade.php index 5b4c811dd712..aae0b2158455 100644 --- a/resources/views/mail/markdown/checkout-asset.blade.php +++ b/resources/views/mail/markdown/checkout-asset.blade.php @@ -1,76 +1,76 @@ @component('mail::message') - # {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, +# {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, - {{ trans('mail.new_item_checked') }} +{{ trans('mail.new_item_checked') }} - @if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) -
Asset
- @endif +@if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) +
Asset
+@endif - @component('mail::table') - | | | - | ------------- | ------------- | - @if ((isset($item->name)) && ($item->name!='')) - | **{{ trans('mail.asset_name') }}** | {{ $item->name }} | - @endif - @if (($item->name!=$item->asset_tag)) - | **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | - @endif - @if (isset($item->manufacturer)) - | **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | - @endif - @if (isset($item->model)) - | **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | - @endif - @if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) - | **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | - @endif - @if (isset($item->serial)) - | **{{ trans('mail.serial') }}** | {{ $item->serial }} | - @endif - @if (isset($last_checkout)) - | **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | - @endif - @if (isset($status)) - | **{{ trans('general.status') }}** | {{ $status }} | - @endif - @if ((isset($expected_checkin)) && ($expected_checkin!='')) - | **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | - @endif - @foreach($fields as $field) - @if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) - | **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | - @endif - @endforeach - @if ($admin) - | **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | - @endif - @if ($note) - | **{{ trans('mail.additional_notes') }}** | {{ $note }} | - @endif - @endcomponent +@component('mail::table') +| | | +| ------------- | ------------- | +@if ((isset($item->name)) && ($item->name!='')) +| **{{ trans('mail.asset_name') }}** | {{ $item->name }} | +@endif +@if (($item->name!=$item->asset_tag)) +| **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | +@endif +@if (isset($item->manufacturer)) +| **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | +@endif +@if (isset($item->model)) +| **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | +@endif +@if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) +| **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | +@endif +@if (isset($item->serial)) +| **{{ trans('mail.serial') }}** | {{ $item->serial }} | +@endif +@if (isset($last_checkout)) +| **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | +@endif +@if (isset($status)) +| **{{ trans('general.status') }}** | {{ $status }} | +@endif +@if ((isset($expected_checkin)) && ($expected_checkin!='')) +| **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | +@endif +@foreach($fields as $field) +@if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) +| **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | +@endif +@endforeach +@if ($admin) +| **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | +@endif +@if ($note) +| **{{ trans('mail.additional_notes') }}** | {{ $note }} | +@endif +@endcomponent - @if (($req_accept == 1) && ($eula!='')) - {{ trans('mail.read_the_terms_and_click') }} - @elseif (($req_accept == 1) && ($eula=='')) - {{ trans('mail.click_on_the_link_asset') }} - @elseif (($req_accept == 0) && ($eula!='')) - {{ trans('mail.read_the_terms') }} - @endif +@if (($req_accept == 1) && ($eula!='')) +{{ trans('mail.read_the_terms_and_click') }} +@elseif (($req_accept == 1) && ($eula=='')) +{{ trans('mail.click_on_the_link_asset') }} +@elseif (($req_accept == 0) && ($eula!='')) +{{ trans('mail.read_the_terms') }} +@endif - @if ($eula) - @component('mail::panel') - {!! $eula !!} - @endcomponent - @endif +@if ($eula) +@component('mail::panel') +{!! $eula !!} +@endcomponent +@endif - @if ($req_accept == 1) - **[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** - @endif +@if ($req_accept == 1) +**[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** +@endif - {{ trans('mail.best_regards') }} +{{ trans('mail.best_regards') }} - {{ $snipeSettings->site_name }} +{{ $snipeSettings->site_name }} @endcomponent \ No newline at end of file From ed6034065b34797ba531782a207fe49384e0f465 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 16:47:36 -0700 Subject: [PATCH 16/49] removed test route --- routes/web.php | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/routes/web.php b/routes/web.php index bcbe159b3046..dbd1a53808b6 100644 --- a/routes/web.php +++ b/routes/web.php @@ -57,27 +57,6 @@ /* * Locations */ - Route::get('/test-email', function() { - $item = LicenseSeat::find(1); // Load some test data - $admin = User::find(1); - $target = User::find(2); - $acceptance = null; // Simulate acceptance data - $note = 'Test note'; - - $fields = []; - if (($item->model) && ($item->model->fieldset)) { - $fields = $item->model->fieldset->fields; - } - - return new \App\Mail\CheckoutLicenseMail( - $item, - $admin, - $target, - $acceptance, - $note); - }); - - Route::group(['prefix' => 'locations', 'middleware' => ['auth']], function () { Route::post( From 9a794833755ff5fb335ab6cf1e118a0d411b021e Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 16 Oct 2024 16:59:18 -0700 Subject: [PATCH 17/49] removed namespaces from routing --- routes/web.php | 4 ---- 1 file changed, 4 deletions(-) diff --git a/routes/web.php b/routes/web.php index dbd1a53808b6..9d9d4ab21f14 100644 --- a/routes/web.php +++ b/routes/web.php @@ -24,10 +24,6 @@ use App\Http\Controllers\Auth\ForgotPasswordController; use App\Http\Controllers\Auth\ResetPasswordController; use App\Livewire\Importer; -use App\Models\Accessory; -use App\Models\Asset; -use App\Models\LicenseSeat; -use App\Models\User; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Auth; From 285d6897cf83d2cac7e791fa50d23ec88f116849 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:05:36 -0700 Subject: [PATCH 18/49] added a coulple test adjustments and moved mail send logic to listener --- app/Listeners/CheckoutableListener.php | 13 ++++ .../CheckoutAssetNotification.php | 9 --- .../CheckoutConsumableNotification.php | 54 ++++++------- .../markdown/checkout-asset.blade.php | 76 ------------------- .../Checkouts/Ui/ConsumableCheckoutTest.php | 7 +- .../EmailNotificationsUponCheckinTest.php | 22 +++--- 6 files changed, 57 insertions(+), 124 deletions(-) delete mode 100644 resources/views/notifications/markdown/checkout-asset.blade.php diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 44987e20d17c..3e23259fb682 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -57,8 +57,21 @@ public function onCheckedOut($event) if (!$event->checkedOutTo->locale){ $mailable->locale($event->checkedOutTo->locale); } + + /** + * Send an email if any of the following conditions are met: + * 1. The asset requires acceptance + * 2. The item has a EULA + * 3. The item should send an email at check-in/check-out + */ + + if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || + (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { + Mail::to($notifiable)->send($mailable); Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); + } + // Send Webhook notification if ($this->shouldSendWebhookNotification()) { Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) diff --git a/app/Notifications/CheckoutAssetNotification.php b/app/Notifications/CheckoutAssetNotification.php index 1ca329ed80e7..97706cec9474 100644 --- a/app/Notifications/CheckoutAssetNotification.php +++ b/app/Notifications/CheckoutAssetNotification.php @@ -9,7 +9,6 @@ use Exception; use Illuminate\Bus\Queueable; use Illuminate\Notifications\Channels\SlackWebhookChannel; -use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; use NotificationChannels\GoogleChat\Card; @@ -154,12 +153,4 @@ public function toGoogleChat() ); } - - /** - * Get the mail representation of the notification. - * - * @param mixed $notifiable - * @return \Illuminate\Notifications\Messages\MailMessage - */ - } diff --git a/app/Notifications/CheckoutConsumableNotification.php b/app/Notifications/CheckoutConsumableNotification.php index 0a2733689b93..3f2adc33318b 100644 --- a/app/Notifications/CheckoutConsumableNotification.php +++ b/app/Notifications/CheckoutConsumableNotification.php @@ -65,33 +65,33 @@ public function via() $notifyBy[] = SlackWebhookChannel::class; } -// /** -// * Only send notifications to users that have email addresses -// */ -// if ($this->target instanceof User && $this->target->email != '') { -// -// /** -// * Send an email if the asset requires acceptance, -// * so the user can accept or decline the asset -// */ -// if ($this->item->requireAcceptance()) { -// $notifyBy[1] = 'mail'; -// } -// -// /** -// * Send an email if the item has a EULA, since the user should always receive it -// */ -// if ($this->item->getEula()) { -// $notifyBy[1] = 'mail'; -// } -// -// /** -// * Send an email if an email should be sent at checkin/checkout -// */ -// if ((method_exists($this->item, 'checkin_email')) && ($this->item->checkin_email())) { -// $notifyBy[1] = 'mail'; -// } -// } + /** + * Only send notifications to users that have email addresses + */ + if ($this->target instanceof User && $this->target->email != '') { + + /** + * Send an email if the asset requires acceptance, + * so the user can accept or decline the asset + */ + if ($this->item->requireAcceptance()) { + $notifyBy[1] = 'mail'; + } + + /** + * Send an email if the item has a EULA, since the user should always receive it + */ + if ($this->item->getEula()) { + $notifyBy[1] = 'mail'; + } + + /** + * Send an email if an email should be sent at checkin/checkout + */ + if ((method_exists($this->item, 'checkin_email')) && ($this->item->checkin_email())) { + $notifyBy[1] = 'mail'; + } + } return $notifyBy; } diff --git a/resources/views/notifications/markdown/checkout-asset.blade.php b/resources/views/notifications/markdown/checkout-asset.blade.php deleted file mode 100644 index 5b4c811dd712..000000000000 --- a/resources/views/notifications/markdown/checkout-asset.blade.php +++ /dev/null @@ -1,76 +0,0 @@ -@component('mail::message') - # {{ trans('mail.hello') }} {{ $target->present()->fullName() }}, - - {{ trans('mail.new_item_checked') }} - - @if (($snipeSettings->show_images_in_email =='1') && $item->getImageUrl()) -
Asset
- @endif - - @component('mail::table') - | | | - | ------------- | ------------- | - @if ((isset($item->name)) && ($item->name!='')) - | **{{ trans('mail.asset_name') }}** | {{ $item->name }} | - @endif - @if (($item->name!=$item->asset_tag)) - | **{{ trans('mail.asset_tag') }}** | {{ $item->asset_tag }} | - @endif - @if (isset($item->manufacturer)) - | **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | - @endif - @if (isset($item->model)) - | **{{ trans('general.asset_model') }}** | {{ $item->model->name }} | - @endif - @if ((isset($item->model->model_number)) && ($item->model->name!=$item->model->model_number)) - | **{{ trans('general.model_no') }}** | {{ $item->model->model_number }} | - @endif - @if (isset($item->serial)) - | **{{ trans('mail.serial') }}** | {{ $item->serial }} | - @endif - @if (isset($last_checkout)) - | **{{ trans('mail.checkout_date') }}** | {{ $last_checkout }} | - @endif - @if (isset($status)) - | **{{ trans('general.status') }}** | {{ $status }} | - @endif - @if ((isset($expected_checkin)) && ($expected_checkin!='')) - | **{{ trans('mail.expecting_checkin_date') }}** | {{ $expected_checkin }} | - @endif - @foreach($fields as $field) - @if (($item->{ $field->db_column_name() }!='') && ($field->show_in_email) && ($field->field_encrypted=='0')) - | **{{ $field->name }}** | {{ $item->{ $field->db_column_name() } }} | - @endif - @endforeach - @if ($admin) - | **{{ trans('general.administrator') }}** | {{ $admin->present()->fullName() }} | - @endif - @if ($note) - | **{{ trans('mail.additional_notes') }}** | {{ $note }} | - @endif - @endcomponent - - @if (($req_accept == 1) && ($eula!='')) - {{ trans('mail.read_the_terms_and_click') }} - @elseif (($req_accept == 1) && ($eula=='')) - {{ trans('mail.click_on_the_link_asset') }} - @elseif (($req_accept == 0) && ($eula!='')) - {{ trans('mail.read_the_terms') }} - @endif - - @if ($eula) - @component('mail::panel') - {!! $eula !!} - @endcomponent - @endif - - @if ($req_accept == 1) - **[✔ {{ trans('mail.i_have_read') }}]({{ $accept_url }})** - @endif - - - {{ trans('mail.best_regards') }} - - {{ $snipeSettings->site_name }} - -@endcomponent \ No newline at end of file diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 484b7e72cb72..46c34aedd75d 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -8,6 +8,7 @@ use App\Models\Consumable; use App\Models\User; use App\Notifications\CheckoutConsumableNotification; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Tests\TestCase; @@ -53,7 +54,7 @@ public function testConsumableCanBeCheckedOut() public function testUserSentNotificationUponCheckout() { - Notification::fake(); + Mail::fake(); $consumable = Consumable::factory()->create(); $user = User::factory()->create(); @@ -63,7 +64,9 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Notification::assertSentTo($user, CheckoutConsumableNotification::class); + Mail::assertSent(CheckoutConsumableNotification::class, function ($mail) use ($consumable, $user) { + return $mail->hasTo($user) && $mail->consumables->contains($consumable); + }); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index 449f65c7ab9c..c7c239b7abfb 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -2,6 +2,8 @@ namespace Tests\Feature\Notifications\Email; +use App\Mail\CheckinAssetMail; +use Illuminate\Support\Facades\Mail; use PHPUnit\Framework\Attributes\Group; use App\Events\CheckoutableCheckedIn; use App\Models\Asset; @@ -22,6 +24,8 @@ protected function setUp(): void public function testCheckInEmailSentToUserIfSettingEnabled() { + Mail::fake(); + $user = User::factory()->create(); $asset = Asset::factory()->assignedToUser($user)->create(); @@ -29,16 +33,16 @@ public function testCheckInEmailSentToUserIfSettingEnabled() $this->fireCheckInEvent($asset, $user); - Notification::assertSentTo( - $user, - function (CheckinAssetNotification $notification, $channels) { - return in_array('mail', $channels); - }, - ); + Mail::assertSent(CheckinAssetMail::class, function($mail) use ($user, $asset) { + return $mail->hasTo($user->email) && $mail->event->checkoutable->id === $asset->id; + }); + } public function testCheckInEmailNotSentToUserIfSettingDisabled() { + Mail::fake(); + $user = User::factory()->create(); $asset = Asset::factory()->assignedToUser($user)->create(); @@ -46,10 +50,8 @@ public function testCheckInEmailNotSentToUserIfSettingDisabled() $this->fireCheckInEvent($asset, $user); - Notification::assertNotSentTo( - $user, - function (CheckinAssetNotification $notification, $channels) { - return in_array('mail', $channels); + Mail::assertNotSent(CheckinAssetMail::class, function($mail) use ($user, $asset) { + return $mail->hasTo($user->email) && $mail->event->checkoutable->id === $asset->id; } ); } From 65735a31f178c8bd4e1efabc7190a30e3500f5fd Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:18:34 -0700 Subject: [PATCH 19/49] removed symfony/mailgun-mailer symfony/http-client --- composer.json | 2 - composer.lock | 415 +++++++++++++++++++++----------------------------- 2 files changed, 173 insertions(+), 244 deletions(-) diff --git a/composer.json b/composer.json index b255f821cd73..6d893125787c 100644 --- a/composer.json +++ b/composer.json @@ -63,8 +63,6 @@ "rollbar/rollbar-laravel": "^8.0", "spatie/laravel-backup": "^8.8", "spatie/laravel-ignition": "^2.0", - "symfony/http-client": "^7.1", - "symfony/mailgun-mailer": "^7.1", "tecnickcom/tc-lib-barcode": "^1.15", "tecnickcom/tcpdf": "^6.5", "unicodeveloper/laravel-password": "^1.0", diff --git a/composer.lock b/composer.lock index c6e469c5978f..9132659142f1 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": "0378e36c927d3838ac338c4f58ed30cd", + "content-hash": "3819ab4ef72eb77fabe494c0e746b83b", "packages": [ { "name": "alek13/slack", @@ -9081,178 +9081,6 @@ ], "time": "2024-08-13T14:27:37+00:00" }, - { - "name": "symfony/http-client", - "version": "v7.1.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client.git", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3.4.1", - "symfony/service-contracts": "^2.5|^3" - }, - "conflict": { - "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.4" - }, - "provide": { - "php-http/async-client-implementation": "*", - "php-http/client-implementation": "*", - "psr/http-client-implementation": "1.0", - "symfony/http-client-implementation": "3.0" - }, - "require-dev": { - "amphp/amp": "^2.5", - "amphp/http-client": "^4.2.1", - "amphp/http-tunnel": "^1.0", - "amphp/socket": "^1.1", - "guzzlehttp/promises": "^1.4|^2.0", - "nyholm/psr7": "^1.0", - "php-http/httplug": "^1.0|^2.0", - "psr/http-client": "^1.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/process": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0", - "symfony/stopwatch": "^6.4|^7.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", - "homepage": "https://symfony.com", - "keywords": [ - "http" - ], - "support": { - "source": "https://github.com/symfony/http-client/tree/v7.1.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-20T13:35:23+00:00" - }, - { - "name": "symfony/http-client-contracts", - "version": "v3.5.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "20414d96f391677bf80078aa55baece78b82647d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", - "reference": "20414d96f391677bf80078aa55baece78b82647d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to HTTP clients", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-04-18T09:32:20+00:00" - }, { "name": "symfony/http-foundation", "version": "v6.4.12", @@ -9524,75 +9352,6 @@ ], "time": "2024-09-08T12:30:05+00:00" }, - { - "name": "symfony/mailgun-mailer", - "version": "v7.1.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/mailgun-mailer.git", - "reference": "dac02fe68e9306849703025511c56f10701696a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/dac02fe68e9306849703025511c56f10701696a8", - "reference": "dac02fe68e9306849703025511c56f10701696a8", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "symfony/mailer": "^6.4|^7.0" - }, - "conflict": { - "symfony/http-foundation": "<6.4" - }, - "require-dev": { - "symfony/http-client": "^6.4|^7.0", - "symfony/webhook": "^6.4|^7.0" - }, - "type": "symfony-mailer-bridge", - "autoload": { - "psr-4": { - "Symfony\\Component\\Mailer\\Bridge\\Mailgun\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Mailgun Mailer Bridge", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/mailgun-mailer/tree/v7.1.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-07-04T11:20:59+00:00" - }, { "name": "symfony/mime", "version": "v6.4.12", @@ -16269,6 +16028,178 @@ ], "time": "2024-09-16T16:01:33+00:00" }, + { + "name": "symfony/http-client", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-client-contracts": "^3.4.1", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "php-http/discovery": "<1.15", + "symfony/http-foundation": "<6.4" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "3.0" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4|^2.0", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "keywords": [ + "http" + ], + "support": { + "source": "https://github.com/symfony/http-client/tree/v7.1.5" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-20T13:35:23+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "20414d96f391677bf80078aa55baece78b82647d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-04-18T09:32:20+00:00" + }, { "name": "symfony/options-resolver", "version": "v6.4.8", From ceb3f5cea629ed68fa4bfc119fefa2166456499c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:19:50 -0700 Subject: [PATCH 20/49] added mail-gun and http-client to 8.1 --- composer.json | 2 + composer.lock | 415 +++++++++++++++++++++++++++++--------------------- 2 files changed, 244 insertions(+), 173 deletions(-) diff --git a/composer.json b/composer.json index 6d893125787c..b255f821cd73 100644 --- a/composer.json +++ b/composer.json @@ -63,6 +63,8 @@ "rollbar/rollbar-laravel": "^8.0", "spatie/laravel-backup": "^8.8", "spatie/laravel-ignition": "^2.0", + "symfony/http-client": "^7.1", + "symfony/mailgun-mailer": "^7.1", "tecnickcom/tc-lib-barcode": "^1.15", "tecnickcom/tcpdf": "^6.5", "unicodeveloper/laravel-password": "^1.0", diff --git a/composer.lock b/composer.lock index 9132659142f1..c6e469c5978f 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": "3819ab4ef72eb77fabe494c0e746b83b", + "content-hash": "0378e36c927d3838ac338c4f58ed30cd", "packages": [ { "name": "alek13/slack", @@ -9081,6 +9081,178 @@ ], "time": "2024-08-13T14:27:37+00:00" }, + { + "name": "symfony/http-client", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-client-contracts": "^3.4.1", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "php-http/discovery": "<1.15", + "symfony/http-foundation": "<6.4" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "3.0" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4|^2.0", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "keywords": [ + "http" + ], + "support": { + "source": "https://github.com/symfony/http-client/tree/v7.1.5" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-20T13:35:23+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "20414d96f391677bf80078aa55baece78b82647d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-04-18T09:32:20+00:00" + }, { "name": "symfony/http-foundation", "version": "v6.4.12", @@ -9352,6 +9524,75 @@ ], "time": "2024-09-08T12:30:05+00:00" }, + { + "name": "symfony/mailgun-mailer", + "version": "v7.1.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/mailgun-mailer.git", + "reference": "dac02fe68e9306849703025511c56f10701696a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/dac02fe68e9306849703025511c56f10701696a8", + "reference": "dac02fe68e9306849703025511c56f10701696a8", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/mailer": "^6.4|^7.0" + }, + "conflict": { + "symfony/http-foundation": "<6.4" + }, + "require-dev": { + "symfony/http-client": "^6.4|^7.0", + "symfony/webhook": "^6.4|^7.0" + }, + "type": "symfony-mailer-bridge", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mailer\\Bridge\\Mailgun\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Mailgun Mailer Bridge", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/mailgun-mailer/tree/v7.1.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-07-04T11:20:59+00:00" + }, { "name": "symfony/mime", "version": "v6.4.12", @@ -16028,178 +16269,6 @@ ], "time": "2024-09-16T16:01:33+00:00" }, - { - "name": "symfony/http-client", - "version": "v7.1.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client.git", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3.4.1", - "symfony/service-contracts": "^2.5|^3" - }, - "conflict": { - "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.4" - }, - "provide": { - "php-http/async-client-implementation": "*", - "php-http/client-implementation": "*", - "psr/http-client-implementation": "1.0", - "symfony/http-client-implementation": "3.0" - }, - "require-dev": { - "amphp/amp": "^2.5", - "amphp/http-client": "^4.2.1", - "amphp/http-tunnel": "^1.0", - "amphp/socket": "^1.1", - "guzzlehttp/promises": "^1.4|^2.0", - "nyholm/psr7": "^1.0", - "php-http/httplug": "^1.0|^2.0", - "psr/http-client": "^1.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/process": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0", - "symfony/stopwatch": "^6.4|^7.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", - "homepage": "https://symfony.com", - "keywords": [ - "http" - ], - "support": { - "source": "https://github.com/symfony/http-client/tree/v7.1.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-20T13:35:23+00:00" - }, - { - "name": "symfony/http-client-contracts", - "version": "v3.5.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "20414d96f391677bf80078aa55baece78b82647d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", - "reference": "20414d96f391677bf80078aa55baece78b82647d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to HTTP clients", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-04-18T09:32:20+00:00" - }, { "name": "symfony/options-resolver", "version": "v6.4.8", From a690cc3582237fb6d40f8eaa3e3e83e7822574fc Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:26:55 -0700 Subject: [PATCH 21/49] removing my composer stuff again..for the last time --- composer.json | 2 - composer.lock | 415 +++++++++++++++++++++----------------------------- 2 files changed, 173 insertions(+), 244 deletions(-) diff --git a/composer.json b/composer.json index b255f821cd73..6d893125787c 100644 --- a/composer.json +++ b/composer.json @@ -63,8 +63,6 @@ "rollbar/rollbar-laravel": "^8.0", "spatie/laravel-backup": "^8.8", "spatie/laravel-ignition": "^2.0", - "symfony/http-client": "^7.1", - "symfony/mailgun-mailer": "^7.1", "tecnickcom/tc-lib-barcode": "^1.15", "tecnickcom/tcpdf": "^6.5", "unicodeveloper/laravel-password": "^1.0", diff --git a/composer.lock b/composer.lock index c6e469c5978f..9132659142f1 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": "0378e36c927d3838ac338c4f58ed30cd", + "content-hash": "3819ab4ef72eb77fabe494c0e746b83b", "packages": [ { "name": "alek13/slack", @@ -9081,178 +9081,6 @@ ], "time": "2024-08-13T14:27:37+00:00" }, - { - "name": "symfony/http-client", - "version": "v7.1.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client.git", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/http-client-contracts": "^3.4.1", - "symfony/service-contracts": "^2.5|^3" - }, - "conflict": { - "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.4" - }, - "provide": { - "php-http/async-client-implementation": "*", - "php-http/client-implementation": "*", - "psr/http-client-implementation": "1.0", - "symfony/http-client-implementation": "3.0" - }, - "require-dev": { - "amphp/amp": "^2.5", - "amphp/http-client": "^4.2.1", - "amphp/http-tunnel": "^1.0", - "amphp/socket": "^1.1", - "guzzlehttp/promises": "^1.4|^2.0", - "nyholm/psr7": "^1.0", - "php-http/httplug": "^1.0|^2.0", - "psr/http-client": "^1.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/process": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0", - "symfony/stopwatch": "^6.4|^7.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", - "homepage": "https://symfony.com", - "keywords": [ - "http" - ], - "support": { - "source": "https://github.com/symfony/http-client/tree/v7.1.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-20T13:35:23+00:00" - }, - { - "name": "symfony/http-client-contracts", - "version": "v3.5.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-client-contracts.git", - "reference": "20414d96f391677bf80078aa55baece78b82647d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", - "reference": "20414d96f391677bf80078aa55baece78b82647d", - "shasum": "" - }, - "require": { - "php": ">=8.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\HttpClient\\": "" - }, - "exclude-from-classmap": [ - "/Test/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to HTTP clients", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-04-18T09:32:20+00:00" - }, { "name": "symfony/http-foundation", "version": "v6.4.12", @@ -9524,75 +9352,6 @@ ], "time": "2024-09-08T12:30:05+00:00" }, - { - "name": "symfony/mailgun-mailer", - "version": "v7.1.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/mailgun-mailer.git", - "reference": "dac02fe68e9306849703025511c56f10701696a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mailgun-mailer/zipball/dac02fe68e9306849703025511c56f10701696a8", - "reference": "dac02fe68e9306849703025511c56f10701696a8", - "shasum": "" - }, - "require": { - "php": ">=8.2", - "symfony/mailer": "^6.4|^7.0" - }, - "conflict": { - "symfony/http-foundation": "<6.4" - }, - "require-dev": { - "symfony/http-client": "^6.4|^7.0", - "symfony/webhook": "^6.4|^7.0" - }, - "type": "symfony-mailer-bridge", - "autoload": { - "psr-4": { - "Symfony\\Component\\Mailer\\Bridge\\Mailgun\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Mailgun Mailer Bridge", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/mailgun-mailer/tree/v7.1.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-07-04T11:20:59+00:00" - }, { "name": "symfony/mime", "version": "v6.4.12", @@ -16269,6 +16028,178 @@ ], "time": "2024-09-16T16:01:33+00:00" }, + { + "name": "symfony/http-client", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-client-contracts": "^3.4.1", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "php-http/discovery": "<1.15", + "symfony/http-foundation": "<6.4" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "3.0" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4|^2.0", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "keywords": [ + "http" + ], + "support": { + "source": "https://github.com/symfony/http-client/tree/v7.1.5" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-20T13:35:23+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "20414d96f391677bf80078aa55baece78b82647d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-04-18T09:32:20+00:00" + }, { "name": "symfony/options-resolver", "version": "v6.4.8", From 496b44e887078b6110f4e8e97e2b04bf22240677 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:28:57 -0700 Subject: [PATCH 22/49] merged composer lock from dev --- composer.lock | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/composer.lock b/composer.lock index 9132659142f1..3f79921b26df 100644 --- a/composer.lock +++ b/composer.lock @@ -16030,20 +16030,20 @@ }, { "name": "symfony/http-client", - "version": "v7.1.5", + "version": "v6.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + "reference": "fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", - "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "url": "https://api.github.com/repos/symfony/http-client/zipball/fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56", + "reference": "fbebfcce21084d3e91ea987ae5bdd8c71ff0fd56", "shasum": "" }, "require": { - "php": ">=8.2", + "php": ">=8.1", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", "symfony/http-client-contracts": "^3.4.1", @@ -16051,7 +16051,7 @@ }, "conflict": { "php-http/discovery": "<1.15", - "symfony/http-foundation": "<6.4" + "symfony/http-foundation": "<6.3" }, "provide": { "php-http/async-client-implementation": "*", @@ -16068,12 +16068,11 @@ "nyholm/psr7": "^1.0", "php-http/httplug": "^1.0|^2.0", "psr/http-client": "^1.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/process": "^6.4|^7.0", - "symfony/rate-limiter": "^6.4|^7.0", - "symfony/stopwatch": "^6.4|^7.0" + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -16104,7 +16103,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v7.1.5" + "source": "https://github.com/symfony/http-client/tree/v6.4.12" }, "funding": [ { @@ -16120,7 +16119,7 @@ "type": "tidelift" } ], - "time": "2024-09-20T13:35:23+00:00" + "time": "2024-09-20T08:21:33+00:00" }, { "name": "symfony/http-client-contracts", @@ -16659,5 +16658,5 @@ "ext-pdo": "*" }, "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" } From 123cdeb858a8148cd8210847fcb39e635b7dc2bf Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 12:39:48 -0700 Subject: [PATCH 23/49] add email check to listener --- app/Listeners/CheckoutableListener.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 3e23259fb682..ff76ae020e58 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -17,6 +17,7 @@ use App\Models\Consumable; use App\Models\LicenseSeat; use App\Models\Setting; +use App\Models\User; use App\Notifications\CheckinAccessoryNotification; use App\Notifications\CheckinAssetNotification; use App\Notifications\CheckinLicenseSeatNotification; @@ -64,13 +65,14 @@ public function onCheckedOut($event) * 2. The item has a EULA * 3. The item should send an email at check-in/check-out */ - + if ($notifiable instanceof User && $notifiable->email != '') { if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { Mail::to($notifiable)->send($mailable); - Log::info('Sending email, Locale: ' .($event->checkedOutTo->locale ?? 'default')); + Log::info('Sending email, Locale: ' . ($event->checkedOutTo->locale ?? 'default')); } + } // Send Webhook notification if ($this->shouldSendWebhookNotification()) { From dceb8e305f55be79f3755a48bc3b4165dc79d43e Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 13:11:39 -0700 Subject: [PATCH 24/49] attempt to fix tests --- .../Checkins/Ui/AccessoryCheckinTest.php | 24 ++++++++----------- .../Checkouts/Ui/AccessoryCheckoutTest.php | 8 +++++-- .../Checkouts/Ui/ConsumableCheckoutTest.php | 3 ++- .../Importing/Api/ImportAssetsTest.php | 6 +++-- 4 files changed, 22 insertions(+), 19 deletions(-) diff --git a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php index 7a99b2ab56ab..56d429ac5625 100644 --- a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php +++ b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php @@ -3,10 +3,12 @@ namespace Tests\Feature\Checkins\Ui; use App\Events\CheckoutableCheckedIn; +use App\Mail\CheckoutAccessoryMail; use App\Models\Accessory; use App\Models\User; use App\Notifications\CheckinAccessoryNotification; use Illuminate\Support\Facades\Event; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Tests\TestCase; @@ -40,7 +42,7 @@ public function testAccessoryCanBeCheckedIn() public function testEmailSentToUserIfSettingEnabled() { - Notification::fake(); + Mail::fake(); $user = User::factory()->create(); $accessory = Accessory::factory()->checkedOutToUser($user)->create(); @@ -54,17 +56,14 @@ public function testEmailSentToUserIfSettingEnabled() '', )); - Notification::assertSentTo( - [$user], - function (CheckinAccessoryNotification $notification, $channels) { - return in_array('mail', $channels); - }, - ); + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + return $mail->hasTo($user) && $mail->contains($accessory); + }); } public function testEmailNotSentToUserIfSettingDisabled() { - Notification::fake(); + Mail::fake(); $user = User::factory()->create(); $accessory = Accessory::factory()->checkedOutToUser($user)->create(); @@ -78,11 +77,8 @@ public function testEmailNotSentToUserIfSettingDisabled() '', )); - Notification::assertNotSentTo( - [$user], - function (CheckinAccessoryNotification $notification, $channels) { - return in_array('mail', $channels); - }, - ); + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + return $mail->hasTo($user) && $mail->contains($accessory); + }); } } diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index f63a8471f229..fedc1a258447 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -2,12 +2,14 @@ namespace Tests\Feature\Checkouts\Ui; +use App\Mail\CheckoutAccessoryMail; use App\Models\Accessory; use App\Models\Actionlog; use App\Models\Asset; use App\Models\Location; use App\Models\User; use App\Notifications\CheckoutAccessoryNotification; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Tests\TestCase; @@ -156,7 +158,7 @@ public function testAccessoryCanBeCheckedOutToAssetWithQuantity() public function testUserSentNotificationUponCheckout() { - Notification::fake(); + Mail::fake(); $accessory = Accessory::factory()->requiringAcceptance()->create(); $user = User::factory()->create(); @@ -168,7 +170,9 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Notification::assertSentTo($user, CheckoutAccessoryNotification::class); + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + return $mail->hasTo($user) && $mail->contains($accessory); + }); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 46c34aedd75d..2ce4a045337f 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -2,6 +2,7 @@ namespace Tests\Feature\Checkouts\Ui; +use App\Mail\CheckoutConsumableMail; use App\Models\Actionlog; use App\Models\Asset; use App\Models\Component; @@ -64,7 +65,7 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertSent(CheckoutConsumableNotification::class, function ($mail) use ($consumable, $user) { + Mail::assertSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { return $mail->hasTo($user) && $mail->consumables->contains($consumable); }); } diff --git a/tests/Feature/Importing/Api/ImportAssetsTest.php b/tests/Feature/Importing/Api/ImportAssetsTest.php index e001add381c5..66cc5174c4bf 100644 --- a/tests/Feature/Importing/Api/ImportAssetsTest.php +++ b/tests/Feature/Importing/Api/ImportAssetsTest.php @@ -2,6 +2,7 @@ namespace Tests\Feature\Importing\Api; +use App\Mail\CheckoutAssetMail; use App\Models\Actionlog as ActionLog; use App\Models\Asset; use App\Models\CustomField; @@ -11,6 +12,7 @@ use Carbon\Carbon; use Illuminate\Foundation\Testing\WithFaker; use Illuminate\Support\Arr; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Illuminate\Support\Str; use Illuminate\Testing\TestResponse; @@ -54,7 +56,7 @@ public function userWithImportAssetsPermissionCanImportAssets(): void #[Test] public function importAsset(): void { - Notification::fake(); + Mail::fake(); $importFileBuilder = ImportFileBuilder::new(); $row = $importFileBuilder->firstRow(); @@ -138,7 +140,7 @@ public function importAsset(): void //Notes is never read. // $this->assertEquals($row['notes'], $newAsset->notes); - Notification::assertSentTo($assignee, CheckoutAssetNotification::class); + Mail::assertSent($assignee, CheckoutAssetMail::class); } #[Test] From cdd4fef7df6d49951aaa09ca597995b90a26f2ad Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 13:34:55 -0700 Subject: [PATCH 25/49] attempt to fix tests p2 --- .../Feature/Checkins/Ui/AccessoryCheckinTest.php | 2 +- .../Checkouts/Api/AccessoryCheckoutTest.php | 8 ++++++-- .../Checkouts/Api/ConsumableCheckoutTest.php | 6 ++++-- .../Checkouts/Ui/AccessoryCheckoutTest.php | 2 +- .../Checkouts/Ui/ConsumableCheckoutTest.php | 2 +- tests/Feature/Importing/Api/ImportAssetsTest.php | 4 +++- .../Email/EmailNotificationsUponCheckinTest.php | 2 +- tests/Unit/NotificationTest.php | 16 +++++++++------- 8 files changed, 26 insertions(+), 16 deletions(-) diff --git a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php index 56d429ac5625..419bead5a06f 100644 --- a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php +++ b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php @@ -77,7 +77,7 @@ public function testEmailNotSentToUserIfSettingDisabled() '', )); - Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { return $mail->hasTo($user) && $mail->contains($accessory); }); } diff --git a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php index 765b8436a03e..62a7b6873340 100644 --- a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php @@ -2,10 +2,12 @@ namespace Tests\Feature\Checkouts\Api; +use App\Mail\CheckoutAccessoryMail; use App\Models\Accessory; use App\Models\Actionlog; use App\Models\User; use App\Notifications\CheckoutAccessoryNotification; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Tests\Concerns\TestsPermissionsRequirement; use Tests\TestCase; @@ -146,7 +148,7 @@ public function testAccessoryCannotBeCheckedOutToInvalidUser() public function testUserSentNotificationUponCheckout() { - Notification::fake(); + Mail::fake(); $accessory = Accessory::factory()->requiringAcceptance()->create(); $user = User::factory()->create(); @@ -157,7 +159,9 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Notification::assertSentTo($user, CheckoutAccessoryNotification::class); + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + return $mail->hasTo($user) && $mail->contains($accessory); + }); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php index 94fa63cba320..eaeeb9fb83ca 100644 --- a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php @@ -2,10 +2,12 @@ namespace Tests\Feature\Checkouts\Api; +use App\Mail\CheckoutConsumableMail; use App\Models\Actionlog; use App\Models\Consumable; use App\Models\User; use App\Notifications\CheckoutConsumableNotification; +use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Notification; use Tests\TestCase; @@ -51,7 +53,7 @@ public function testConsumableCanBeCheckedOut() public function testUserSentNotificationUponCheckout() { - Notification::fake(); + Mail::fake(); $consumable = Consumable::factory()->requiringAcceptance()->create(); @@ -62,7 +64,7 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Notification::assertSentTo($user, CheckoutConsumableNotification::class); + Mail::assertSentTo($user, CheckoutConsumableMail::class); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index fedc1a258447..9b79b02da213 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -171,7 +171,7 @@ public function testUserSentNotificationUponCheckout() ]); Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user) && $mail->contains($accessory); + return $mail->hasTo($user->email) && $mail->accessory->is($accessory); }); } diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 2ce4a045337f..4a8f6d7323a8 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -66,7 +66,7 @@ public function testUserSentNotificationUponCheckout() ]); Mail::assertSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { - return $mail->hasTo($user) && $mail->consumables->contains($consumable); + return $mail->hasTo($user->email) && $mail->consumable->is($consumable); }); } diff --git a/tests/Feature/Importing/Api/ImportAssetsTest.php b/tests/Feature/Importing/Api/ImportAssetsTest.php index 66cc5174c4bf..58d3a83ecb04 100644 --- a/tests/Feature/Importing/Api/ImportAssetsTest.php +++ b/tests/Feature/Importing/Api/ImportAssetsTest.php @@ -140,7 +140,9 @@ public function importAsset(): void //Notes is never read. // $this->assertEquals($row['notes'], $newAsset->notes); - Mail::assertSent($assignee, CheckoutAssetMail::class); + Mail::assertSent(CheckoutAssetMail::class, function ($mail) use ($assignee) { + return $mail->hasTo($assignee->email); + }); } #[Test] diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index c7c239b7abfb..0b1a1fddc51d 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -19,7 +19,7 @@ protected function setUp(): void { parent::setUp(); - Notification::fake(); + Mail::fake(); } public function testCheckInEmailSentToUserIfSettingEnabled() diff --git a/tests/Unit/NotificationTest.php b/tests/Unit/NotificationTest.php index 86177c30306c..16350e117e6a 100644 --- a/tests/Unit/NotificationTest.php +++ b/tests/Unit/NotificationTest.php @@ -1,12 +1,14 @@ Carbon::createFromDate(2017, 1, 1)->hour(0)->minute(0)->second(0)->format('Y-m-d') ]); - Notification::fake(); + Mail::fake(); $asset->checkOut($user, $admin->id); - Notification::assertSentTo($user, CheckoutAssetNotification::class); + Mail::assertSent($user, CheckoutAssetMail::class); } public function testDefaultEulaIsSentWhenSetInCategory() { - Notification::fake(); + Mail::fake(); $this->settings->setEula('My Custom EULA Text'); @@ -51,10 +53,10 @@ public function testDefaultEulaIsSentWhenSetInCategory() $asset->checkOut($user, User::factory()->superuser()->create()->id); - Notification::assertSentTo($user, CheckoutAssetNotification::class, function ($notification) { - $content = $notification->toMail()->render(); - - return str_contains($content, 'My Custom EULA Text') && !str_contains($content, 'EULA Text that should not be used'); + Mail::assertSent(CheckoutAssetMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email) && + str_contains($mail->render(), 'My Custom EULA Text') && + !str_contains($mail->render(), 'EULA Text that should not be used'); }); } } From 83e8186d9e261efdde81ac56deeb9a799fdaa1e7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 13:39:56 -0700 Subject: [PATCH 26/49] fix assertSent to AssertNotSent on some test --- tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php | 2 +- tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php | 2 +- tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php index 62a7b6873340..c0ea25f98f88 100644 --- a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php @@ -159,7 +159,7 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { return $mail->hasTo($user) && $mail->contains($accessory); }); } diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index 9b79b02da213..b7210d936706 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -170,7 +170,7 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { return $mail->hasTo($user->email) && $mail->accessory->is($accessory); }); } diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 4a8f6d7323a8..f404f37b0914 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -65,7 +65,7 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { + Mail::assertNotSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { return $mail->hasTo($user->email) && $mail->consumable->is($consumable); }); } From b98058ca98e02b865fdf1488e83a49d4bf7df9c8 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 13:48:26 -0700 Subject: [PATCH 27/49] fix tests pt 3 --- tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php | 2 +- tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php | 2 +- tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php | 2 +- tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php index c0ea25f98f88..9620b46bb614 100644 --- a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php @@ -160,7 +160,7 @@ public function testUserSentNotificationUponCheckout() ]); Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user) && $mail->contains($accessory); + return $mail->hasTo($user->email) && $mail->viewData['accessory']->id === $accessory->id; }); } diff --git a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php index eaeeb9fb83ca..1b4a9ea33106 100644 --- a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php @@ -64,7 +64,7 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertSentTo($user, CheckoutConsumableMail::class); + Mail::assertSent($user, CheckoutConsumableMail::class); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index b7210d936706..66751a06567b 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -171,7 +171,7 @@ public function testUserSentNotificationUponCheckout() ]); Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user->email) && $mail->accessory->is($accessory); + return $mail->hasTo($user->email) && $mail->viewData['accessory']->is($accessory); }); } diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index f404f37b0914..66e803c67bcf 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -66,7 +66,7 @@ public function testUserSentNotificationUponCheckout() ]); Mail::assertNotSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { - return $mail->hasTo($user->email) && $mail->consumable->is($consumable); + return $mail->hasTo($user->email) && $mail->viewData['consumable']->is($consumable); }); } From 7ae76e7db9be7943ca473ab9ef30bda27b166aac Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 13:55:03 -0700 Subject: [PATCH 28/49] remove viewdata array from 3 tests --- tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php | 4 ++-- tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php | 4 ++-- tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php index 9620b46bb614..2b7b91058cb4 100644 --- a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php @@ -159,8 +159,8 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user->email) && $mail->viewData['accessory']->id === $accessory->id; + Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email); }); } diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index 66751a06567b..980b390ad72a 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -170,8 +170,8 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user->email) && $mail->viewData['accessory']->is($accessory); + Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email); }); } diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 66e803c67bcf..76313bb71cc5 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -65,8 +65,8 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertNotSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { - return $mail->hasTo($user->email) && $mail->viewData['consumable']->is($consumable); + Mail::assertNotSent(CheckoutConsumableMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email); }); } From ff113ef523f77fb887b939a23de3936f603812a6 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 17 Oct 2024 14:56:58 -0700 Subject: [PATCH 29/49] typo fix --- app/Notifications/CheckinLicenseSeatNotification.php | 3 ++- tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php | 2 +- tests/Support/AssertsAgainstSlackNotifications.php | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/Notifications/CheckinLicenseSeatNotification.php b/app/Notifications/CheckinLicenseSeatNotification.php index 114011bd7284..74018af7c9f9 100644 --- a/app/Notifications/CheckinLicenseSeatNotification.php +++ b/app/Notifications/CheckinLicenseSeatNotification.php @@ -6,6 +6,7 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; +use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -58,7 +59,7 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = 'slack'; + $notifyBy[] = SlackWebhookChannel::class; } return $notifyBy; diff --git a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php index 980b390ad72a..af9b286725d4 100644 --- a/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/AccessoryCheckoutTest.php @@ -170,7 +170,7 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { return $mail->hasTo($user->email); }); } diff --git a/tests/Support/AssertsAgainstSlackNotifications.php b/tests/Support/AssertsAgainstSlackNotifications.php index 11e6beea2de9..e52f39a7e54f 100644 --- a/tests/Support/AssertsAgainstSlackNotifications.php +++ b/tests/Support/AssertsAgainstSlackNotifications.php @@ -14,6 +14,7 @@ public function assertSlackNotificationSent(string $notificationClass) new AnonymousNotifiable, $notificationClass, function ($notification, $channels, $notifiable) { + dd($notification); return $notifiable->routes['slack'] === Setting::getSettings()->webhook_endpoint; } ); From 1e31592c553e49eab175531cf9aa3b02ce738812 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 22 Oct 2024 11:49:06 -0700 Subject: [PATCH 30/49] messing with the tests --- app/Listeners/CheckoutableListener.php | 36 ++++++++++++------- .../Checkins/Ui/AccessoryCheckinTest.php | 8 ++--- .../Checkouts/Ui/ConsumableCheckoutTest.php | 2 +- .../EmailNotificationsUponCheckinTest.php | 4 +-- 4 files changed, 30 insertions(+), 20 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index ff76ae020e58..9c8abbcee896 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -59,16 +59,15 @@ public function onCheckedOut($event) $mailable->locale($event->checkedOutTo->locale); } - /** - * Send an email if any of the following conditions are met: - * 1. The asset requires acceptance - * 2. The item has a EULA - * 3. The item should send an email at check-in/check-out - */ - if ($notifiable instanceof User && $notifiable->email != '') { - if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || - (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { - + /** + * Send an email if any of the following conditions are met: + * 1. The asset requires acceptance + * 2. The item has a EULA + * 3. The item should send an email at check-in/check-out + */ + if ($notifiable instanceof User && $notifiable->email != '') { + if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || + (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { Mail::to($notifiable)->send($mailable); Log::info('Sending email, Locale: ' . ($event->checkedOutTo->locale ?? 'default')); } @@ -115,14 +114,25 @@ public function onCheckedIn($event) $notifiable = $event->checkedInBy; $mailable = $this->getCheckinMailType($event); - // Send email notifications try { if (!$event->checkedOutTo->locale){ $mailable->locale($event->checkedOutTo->locale); } - Mail::to($notifiable)->send($mailable); - \Log::info('Sending email, Locale: ' .$event->checkedOutTo->locale); + /** + * Send an email if any of the following conditions are met: + * 1. The asset requires acceptance + * 2. The item has a EULA + * 3. The item should send an email at check-in/check-out + */ + + if ($notifiable instanceof User && $notifiable->email != '') { + if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || + (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { + Mail::to($notifiable)->send($mailable); + Log::info('Sending email, Locale: ' . $event->checkedOutTo->locale); + } + } // Send Webhook notification if ($this->shouldSendWebhookNotification()) { Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint) diff --git a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php index 419bead5a06f..b5fe540ae5b5 100644 --- a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php +++ b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php @@ -3,7 +3,7 @@ namespace Tests\Feature\Checkins\Ui; use App\Events\CheckoutableCheckedIn; -use App\Mail\CheckoutAccessoryMail; +use App\Mail\CheckinAccessoryMail; use App\Models\Accessory; use App\Models\User; use App\Notifications\CheckinAccessoryNotification; @@ -56,8 +56,8 @@ public function testEmailSentToUserIfSettingEnabled() '', )); - Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user) && $mail->contains($accessory); + Mail::assertSent(CheckinAccessoryMail::class, function ($mail) use ( $user) { + return $mail->hasTo($user->email); }); } @@ -77,7 +77,7 @@ public function testEmailNotSentToUserIfSettingDisabled() '', )); - Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($accessory, $user) { + Mail::assertNotSent(CheckinAccessoryMail::class, function ($mail) use ($accessory, $user) { return $mail->hasTo($user) && $mail->contains($accessory); }); } diff --git a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php index 76313bb71cc5..2dc5fa62c0cf 100644 --- a/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Ui/ConsumableCheckoutTest.php @@ -65,7 +65,7 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertNotSent(CheckoutConsumableMail::class, function ($mail) use ($user) { + Mail::assertSent(CheckoutConsumableMail::class, function ($mail) use ($user) { return $mail->hasTo($user->email); }); } diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index 0b1a1fddc51d..098ef184c643 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -33,8 +33,8 @@ public function testCheckInEmailSentToUserIfSettingEnabled() $this->fireCheckInEvent($asset, $user); - Mail::assertSent(CheckinAssetMail::class, function($mail) use ($user, $asset) { - return $mail->hasTo($user->email) && $mail->event->checkoutable->id === $asset->id; + Mail::assertSent(CheckinAssetMail::class, function($mail) use ($user) { + return $mail->hasTo($user->email); }); } From ead27accacaefb08f0ed990c7d28843475d757e8 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 22 Oct 2024 15:45:52 -0700 Subject: [PATCH 31/49] fixed accessory tests and notifiable target --- app/Listeners/CheckoutableListener.php | 2 +- tests/Feature/Checkins/Ui/AccessoryCheckinTest.php | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 9c8abbcee896..b628ba85ef5d 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -112,7 +112,7 @@ public function onCheckedIn($event) } } - $notifiable = $event->checkedInBy; + $notifiable = $event->checkedOutTo; $mailable = $this->getCheckinMailType($event); // Send email notifications try { diff --git a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php index b5fe540ae5b5..dd5f944b82d3 100644 --- a/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php +++ b/tests/Feature/Checkins/Ui/AccessoryCheckinTest.php @@ -55,9 +55,9 @@ public function testEmailSentToUserIfSettingEnabled() User::factory()->checkinAccessories()->create(), '', )); - - Mail::assertSent(CheckinAccessoryMail::class, function ($mail) use ( $user) { + Mail::assertSent(CheckinAccessoryMail::class, function (CheckinAccessoryMail $mail) use ( $accessory, $user) { return $mail->hasTo($user->email); + }); } @@ -68,7 +68,11 @@ public function testEmailNotSentToUserIfSettingDisabled() $user = User::factory()->create(); $accessory = Accessory::factory()->checkedOutToUser($user)->create(); - $accessory->category->update(['checkin_email' => false]); + $accessory->category->update([ + 'checkin_email' => false, + 'require_acceptance' => false, + 'eula_text' => null + ]); event(new CheckoutableCheckedIn( $accessory, @@ -77,8 +81,8 @@ public function testEmailNotSentToUserIfSettingDisabled() '', )); - Mail::assertNotSent(CheckinAccessoryMail::class, function ($mail) use ($accessory, $user) { - return $mail->hasTo($user) && $mail->contains($accessory); + Mail::assertNotSent(CheckinAccessoryMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email); }); } } From 1e9922a0b08cf2ee0d14a10b734e4c44dd9942c7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Tue, 22 Oct 2024 16:14:36 -0700 Subject: [PATCH 32/49] fix moar tests --- app/Listeners/CheckoutableListener.php | 1 + tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php | 2 +- tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php | 4 +++- tests/Feature/Importing/Api/ImportAssetsTest.php | 5 ++--- tests/Support/AssertsAgainstSlackNotifications.php | 1 - tests/Unit/NotificationTest.php | 4 +++- 6 files changed, 10 insertions(+), 7 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index b628ba85ef5d..c0b366264698 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -68,6 +68,7 @@ public function onCheckedOut($event) if ($notifiable instanceof User && $notifiable->email != '') { if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { + Mail::to($notifiable)->send($mailable); Log::info('Sending email, Locale: ' . ($event->checkedOutTo->locale ?? 'default')); } diff --git a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php index 2b7b91058cb4..7adab09c039b 100644 --- a/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/AccessoryCheckoutTest.php @@ -159,7 +159,7 @@ public function testUserSentNotificationUponCheckout() 'checkout_to_type' => 'user', ]); - Mail::assertNotSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { + Mail::assertSent(CheckoutAccessoryMail::class, function ($mail) use ($user) { return $mail->hasTo($user->email); }); } diff --git a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php index 1b4a9ea33106..fba2c50df377 100644 --- a/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php +++ b/tests/Feature/Checkouts/Api/ConsumableCheckoutTest.php @@ -64,7 +64,9 @@ public function testUserSentNotificationUponCheckout() 'assigned_to' => $user->id, ]); - Mail::assertSent($user, CheckoutConsumableMail::class); + Mail::assertSent(CheckoutConsumableMail::class, function ($mail) use ($consumable, $user) { + return $mail->hasTo($user->email); + }); } public function testActionLogCreatedUponCheckout() diff --git a/tests/Feature/Importing/Api/ImportAssetsTest.php b/tests/Feature/Importing/Api/ImportAssetsTest.php index 58d3a83ecb04..ab98cc95e8fd 100644 --- a/tests/Feature/Importing/Api/ImportAssetsTest.php +++ b/tests/Feature/Importing/Api/ImportAssetsTest.php @@ -140,9 +140,8 @@ public function importAsset(): void //Notes is never read. // $this->assertEquals($row['notes'], $newAsset->notes); - Mail::assertSent(CheckoutAssetMail::class, function ($mail) use ($assignee) { - return $mail->hasTo($assignee->email); - }); + Mail::assertSent(CheckoutAssetMail::class); + } #[Test] diff --git a/tests/Support/AssertsAgainstSlackNotifications.php b/tests/Support/AssertsAgainstSlackNotifications.php index e52f39a7e54f..11e6beea2de9 100644 --- a/tests/Support/AssertsAgainstSlackNotifications.php +++ b/tests/Support/AssertsAgainstSlackNotifications.php @@ -14,7 +14,6 @@ public function assertSlackNotificationSent(string $notificationClass) new AnonymousNotifiable, $notificationClass, function ($notification, $channels, $notifiable) { - dd($notification); return $notifiable->routes['slack'] === Setting::getSettings()->webhook_endpoint; } ); diff --git a/tests/Unit/NotificationTest.php b/tests/Unit/NotificationTest.php index 16350e117e6a..3d5b3c5a7651 100644 --- a/tests/Unit/NotificationTest.php +++ b/tests/Unit/NotificationTest.php @@ -33,7 +33,9 @@ public function testAUserIsEmailedIfTheyCheckoutAnAssetWithEULA() Mail::fake(); $asset->checkOut($user, $admin->id); - Mail::assertSent($user, CheckoutAssetMail::class); + Mail::assertSent(CheckoutAssetMail::class, function ($mail) use ($user) { + return $mail->hasTo($user->email); + }); } public function testDefaultEulaIsSentWhenSetInCategory() { From 1b5f4415ae11de482d79f3889db5e71b33e70f99 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 14:44:45 -0700 Subject: [PATCH 33/49] corrected cc email behavior --- app/Listeners/CheckoutableListener.php | 18 ++++++++--- app/Mail/CheckinAccessoryMail.php | 13 ++------ app/Mail/CheckinAssetMail.php | 13 ++------ app/Mail/CheckinLicenseMail.php | 13 ++------ app/Mail/CheckoutAccessoryMail.php | 12 ++----- app/Mail/CheckoutAssetMail.php | 44 ++------------------------ app/Mail/CheckoutConsumableMail.php | 13 ++------ app/Mail/CheckoutLicenseMail.php | 13 ++------ routes/web.php | 21 ++++++++++++ 9 files changed, 49 insertions(+), 111 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index c0b366264698..99faa281d742 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -50,7 +50,13 @@ public function onCheckedOut($event) /** * Make a checkout acceptance and attach it in the notification */ + $settings = Setting::getSettings(); $acceptance = $this->getCheckoutAcceptance($event); + $emailsArray = $settings->alert_email; + $adminCcEmail = $settings->admin_cc_email; + $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); + $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckoutMailType($event, $acceptance); // Send email notifications @@ -68,8 +74,7 @@ public function onCheckedOut($event) if ($notifiable instanceof User && $notifiable->email != '') { if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { - - Mail::to($notifiable)->send($mailable); + Mail::to($notifiable)->cc($ccEmails)->send($mailable); Log::info('Sending email, Locale: ' . ($event->checkedOutTo->locale ?? 'default')); } } @@ -112,7 +117,12 @@ public function onCheckedIn($event) } } } - + $settings = Setting::getSettings(); + $emailsArray = $settings->alert_email; + $adminCcEmail = $settings->admin_cc_email; + $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); + $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckinMailType($event); // Send email notifications @@ -130,7 +140,7 @@ public function onCheckedIn($event) if ($notifiable instanceof User && $notifiable->email != '') { if ($event->checkoutable->requireAcceptance() || $event->checkoutable->getEula() || (method_exists($event->checkoutable, 'checkin_email') && $event->checkoutable->checkin_email())) { - Mail::to($notifiable)->send($mailable); + Mail::to($notifiable)->cc($ccEmails)->send($mailable); Log::info('Sending email, Locale: ' . $event->checkedOutTo->locale); } } diff --git a/app/Mail/CheckinAccessoryMail.php b/app/Mail/CheckinAccessoryMail.php index 0c3ddbba0e5e..45e314f89853 100644 --- a/app/Mail/CheckinAccessoryMail.php +++ b/app/Mail/CheckinAccessoryMail.php @@ -34,19 +34,10 @@ public function __construct(Accessory $accessory, $checkedOutTo, User $checkedIn */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.Accessory_Checkin_Notification'), ); } diff --git a/app/Mail/CheckinAssetMail.php b/app/Mail/CheckinAssetMail.php index 5795d795c701..4639fb1ba99e 100644 --- a/app/Mail/CheckinAssetMail.php +++ b/app/Mail/CheckinAssetMail.php @@ -43,19 +43,10 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedInBy, $not */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.Asset_Checkin_Notification'), ); } diff --git a/app/Mail/CheckinLicenseMail.php b/app/Mail/CheckinLicenseMail.php index e567383f8035..4d509fb5d9f0 100644 --- a/app/Mail/CheckinLicenseMail.php +++ b/app/Mail/CheckinLicenseMail.php @@ -34,19 +34,10 @@ public function __construct(LicenseSeat $licenseSeat, $checkedOutTo, User $check */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.License_Checkin_Notification'), ); } diff --git a/app/Mail/CheckoutAccessoryMail.php b/app/Mail/CheckoutAccessoryMail.php index f7f90e8fe2c4..f4c81aa23288 100644 --- a/app/Mail/CheckoutAccessoryMail.php +++ b/app/Mail/CheckoutAccessoryMail.php @@ -37,18 +37,10 @@ public function __construct(Accessory $accessory, $checkedOutTo, User $checkedOu */ public function envelope(): Envelope { - $from = null; - $cc = []; + $from = new Address(env('MAIL_FROM_ADDR')); - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: (trans('mail.Accessory_Checkout_Notification')), ); } diff --git a/app/Mail/CheckoutAssetMail.php b/app/Mail/CheckoutAssetMail.php index 214c48ed5c16..ba0bd801be78 100644 --- a/app/Mail/CheckoutAssetMail.php +++ b/app/Mail/CheckoutAssetMail.php @@ -52,19 +52,10 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedOutBy, $no */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.Asset_Checkout_Notification'), ); } @@ -106,37 +97,6 @@ public function content(): Content ], ); } -// public function build() -// { -// $this->item->load('assetstatus'); -// $eula = method_exists($this->item, 'getEula') ? $this->item->getEula() : ''; -// $req_accept = method_exists($this->item, 'requireAcceptance') ? $this->item->requireAcceptance() : 0; -// $fields = []; -// -// // Check if the item has custom fields associated with it -// if (($this->item->model) && ($this->item->model->fieldset)) { -// $fields = $this->item->model->fieldset->fields; -// } -// -// $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); -// -// return $this -// ->subject('Asset Checkout Notification') -// ->markdown('notifications.markdown.checkout-asset') -// ->with([ -// 'item' => $this->item, -// 'admin' => $this->admin, -// 'status' => $this->item->assetstatus?->name, -// 'note' => $this->note, -// 'target' => $this->target, -// 'fields' => $fields, -// 'eula' => $eula, -// 'req_accept' => $req_accept, -// 'accept_url' => $accept_url, -// 'last_checkout' => $this->last_checkout, -// 'expected_checkin' => $this->expected_checkin, -// ]); -// } /** * Get the attachments for the message. diff --git a/app/Mail/CheckoutConsumableMail.php b/app/Mail/CheckoutConsumableMail.php index 382f789eb917..a7f78cf3f322 100644 --- a/app/Mail/CheckoutConsumableMail.php +++ b/app/Mail/CheckoutConsumableMail.php @@ -37,19 +37,10 @@ public function __construct(Consumable $consumable, $checkedOutTo, User $checked */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.Confirm_consumable_delivery'), ); } diff --git a/app/Mail/CheckoutLicenseMail.php b/app/Mail/CheckoutLicenseMail.php index 8389f1136fce..61118ea77561 100644 --- a/app/Mail/CheckoutLicenseMail.php +++ b/app/Mail/CheckoutLicenseMail.php @@ -36,19 +36,10 @@ public function __construct(LicenseSeat $licenseSeat, $checkedOutTo, User $check */ public function envelope(): Envelope { - $from = null; - $cc = []; - - if (!empty(Setting::getSettings()->alert_email)) { - $from = new Address(Setting::getSettings()->alert_email); - } - if (!empty(Setting::getSettings()->admin_cc_email)) { - $cc[] = new Address(Setting::getSettings()->admin_cc_email); - } + $from = new Address(env('MAIL_FROM_ADDR')); return new Envelope( - from: $from ?? new Address('default@example.com', 'Default Sender'), - cc: $cc, + from: $from, subject: trans('mail.Confirm_license_delivery'), ); } diff --git a/routes/web.php b/routes/web.php index 9d9d4ab21f14..e54f4f706a90 100644 --- a/routes/web.php +++ b/routes/web.php @@ -24,6 +24,8 @@ use App\Http\Controllers\Auth\ForgotPasswordController; use App\Http\Controllers\Auth\ResetPasswordController; use App\Livewire\Importer; +use App\Models\Asset; +use App\Models\User; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Auth; @@ -549,3 +551,22 @@ '/', [DashboardController::class, 'index'] )->name('home'); +Route::get('/test-email', function() { + $item = Asset::find(1); // Load some test data + $admin = User::find(1); + $target = User::find(2); + $acceptance = null; // Simulate acceptance data + $note = 'Test note'; + + $fields = []; + if (($item->model) && ($item->model->fieldset)) { + $fields = $item->model->fieldset->fields; + } + + return new \App\Mail\CheckoutAssetMail( + $item, + $admin, + $target, + $acceptance, + $note); +}); \ No newline at end of file From 6c34a5c52c8e5391dab246c69a41ad118cfb0cc5 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 14:54:21 -0700 Subject: [PATCH 34/49] conditionally check cc emails, initiate variables --- app/Listeners/CheckoutableListener.php | 32 +++++++++++++++++++------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 99faa281d742..02f8081e6bec 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -52,10 +52,17 @@ public function onCheckedOut($event) */ $settings = Setting::getSettings(); $acceptance = $this->getCheckoutAcceptance($event); - $emailsArray = $settings->alert_email; - $adminCcEmail = $settings->admin_cc_email; - $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); - $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + $alertsEmailsArray = []; + $adminCcEmailsArray = []; + + if($settings->alert_email !== '') { + $emailsArray = $settings->alert_email; + $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); + } + if($settings->admin_cc_email !== '') { + $adminCcEmail = $settings->admin_cc_email; + $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + } $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckoutMailType($event, $acceptance); @@ -118,13 +125,22 @@ public function onCheckedIn($event) } } $settings = Setting::getSettings(); - $emailsArray = $settings->alert_email; - $adminCcEmail = $settings->admin_cc_email; - $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); - $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + $alertsEmailsArray = []; + $adminCcEmailsArray = []; + + if($settings->alert_email !== '') { + $emailsArray = $settings->alert_email; + $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); + } + if($settings->admin_cc_email !== '') { + $adminCcEmail = $settings->admin_cc_email; + $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); + } $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); + $notifiable = $event->checkedOutTo; $mailable = $this->getCheckinMailType($event); + // Send email notifications try { if (!$event->checkedOutTo->locale){ From 257d25bd9eb1a3114c57c87aad90debc389543b6 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 14:56:54 -0700 Subject: [PATCH 35/49] removed import notification from test, feature is not present in project --- tests/Feature/Importing/Api/ImportAssetsTest.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/tests/Feature/Importing/Api/ImportAssetsTest.php b/tests/Feature/Importing/Api/ImportAssetsTest.php index ab98cc95e8fd..0f54b22e92d7 100644 --- a/tests/Feature/Importing/Api/ImportAssetsTest.php +++ b/tests/Feature/Importing/Api/ImportAssetsTest.php @@ -56,7 +56,6 @@ public function userWithImportAssetsPermissionCanImportAssets(): void #[Test] public function importAsset(): void { - Mail::fake(); $importFileBuilder = ImportFileBuilder::new(); $row = $importFileBuilder->firstRow(); @@ -140,8 +139,6 @@ public function importAsset(): void //Notes is never read. // $this->assertEquals($row['notes'], $newAsset->notes); - Mail::assertSent(CheckoutAssetMail::class); - } #[Test] From c681946b1df9f27242d03ae0dcd2342b1b11fdd3 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 15:05:39 -0700 Subject: [PATCH 36/49] added component markdown changes --- app/Mail/CheckoutConsumableMail.php | 4 +++- resources/views/mail/markdown/checkout-consumable.blade.php | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/Mail/CheckoutConsumableMail.php b/app/Mail/CheckoutConsumableMail.php index a7f78cf3f322..3d78b0ab4379 100644 --- a/app/Mail/CheckoutConsumableMail.php +++ b/app/Mail/CheckoutConsumableMail.php @@ -28,6 +28,7 @@ public function __construct(Consumable $consumable, $checkedOutTo, User $checked $this->note = $note; $this->target = $checkedOutTo; $this->acceptance = $acceptance; + $this->qty = $consumable->checkout_qty; $this->settings = Setting::getSettings(); } @@ -50,7 +51,7 @@ public function envelope(): Envelope */ public function content(): Content { - Log::debug($this->item->getImageUrl()); + $eula = $this->item->getEula(); $req_accept = $this->item->requireAcceptance(); @@ -66,6 +67,7 @@ public function content(): Content 'eula' => $eula, 'req_accept' => $req_accept, 'accept_url' => $accept_url, + 'qty' => $this->qty, ] ); } diff --git a/resources/views/mail/markdown/checkout-consumable.blade.php b/resources/views/mail/markdown/checkout-consumable.blade.php index 06e73243cad6..77e68e647822 100644 --- a/resources/views/mail/markdown/checkout-consumable.blade.php +++ b/resources/views/mail/markdown/checkout-consumable.blade.php @@ -14,6 +14,9 @@ @if (isset($item->manufacturer)) | **{{ trans('general.manufacturer') }}** | {{ $item->manufacturer->name }} | @endif +@if (isset($qty)) +| **{{ trans('general.qty') }}** | {{ $qty }} | +@endif @if (isset($item->model_no)) | **{{ trans('general.model_no') }}** | {{ $item->model_no }} | @endif From fd74c35102b19ec99118c84e6e8339003936aa0e Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 15:08:29 -0700 Subject: [PATCH 37/49] remove old notify by mail from consumable notification --- .../CheckoutConsumableNotification.php | 29 +------------------ 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/app/Notifications/CheckoutConsumableNotification.php b/app/Notifications/CheckoutConsumableNotification.php index 3f2adc33318b..e93d6e6ea64f 100644 --- a/app/Notifications/CheckoutConsumableNotification.php +++ b/app/Notifications/CheckoutConsumableNotification.php @@ -39,6 +39,7 @@ public function __construct(Consumable $consumable, $checkedOutTo, User $checked $this->note = $note; $this->target = $checkedOutTo; $this->acceptance = $acceptance; + $this->qty = $consumable->checkout_qty; $this->settings = Setting::getSettings(); } @@ -65,34 +66,6 @@ public function via() $notifyBy[] = SlackWebhookChannel::class; } - /** - * Only send notifications to users that have email addresses - */ - if ($this->target instanceof User && $this->target->email != '') { - - /** - * Send an email if the asset requires acceptance, - * so the user can accept or decline the asset - */ - if ($this->item->requireAcceptance()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if the item has a EULA, since the user should always receive it - */ - if ($this->item->getEula()) { - $notifyBy[1] = 'mail'; - } - - /** - * Send an email if an email should be sent at checkin/checkout - */ - if ((method_exists($this->item, 'checkin_email')) && ($this->item->checkin_email())) { - $notifyBy[1] = 'mail'; - } - } - return $notifyBy; } From 62d06b44d634155aff0035dd4340a03f86479918 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 15:43:42 -0700 Subject: [PATCH 38/49] set fallback from email address to service.snipe-it.io --- app/Mail/CheckinAccessoryMail.php | 2 +- app/Mail/CheckinAssetMail.php | 2 +- app/Mail/CheckinLicenseMail.php | 2 +- app/Mail/CheckoutAccessoryMail.php | 2 +- app/Mail/CheckoutAssetMail.php | 2 +- app/Mail/CheckoutConsumableMail.php | 2 +- app/Mail/CheckoutLicenseMail.php | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/Mail/CheckinAccessoryMail.php b/app/Mail/CheckinAccessoryMail.php index 45e314f89853..fc8d1455f90d 100644 --- a/app/Mail/CheckinAccessoryMail.php +++ b/app/Mail/CheckinAccessoryMail.php @@ -34,7 +34,7 @@ public function __construct(Accessory $accessory, $checkedOutTo, User $checkedIn */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckinAssetMail.php b/app/Mail/CheckinAssetMail.php index 4639fb1ba99e..5dd8394a5ae2 100644 --- a/app/Mail/CheckinAssetMail.php +++ b/app/Mail/CheckinAssetMail.php @@ -43,7 +43,7 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedInBy, $not */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckinLicenseMail.php b/app/Mail/CheckinLicenseMail.php index 4d509fb5d9f0..97ce4dd3c31e 100644 --- a/app/Mail/CheckinLicenseMail.php +++ b/app/Mail/CheckinLicenseMail.php @@ -34,7 +34,7 @@ public function __construct(LicenseSeat $licenseSeat, $checkedOutTo, User $check */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckoutAccessoryMail.php b/app/Mail/CheckoutAccessoryMail.php index f4c81aa23288..96046457212a 100644 --- a/app/Mail/CheckoutAccessoryMail.php +++ b/app/Mail/CheckoutAccessoryMail.php @@ -37,7 +37,7 @@ public function __construct(Accessory $accessory, $checkedOutTo, User $checkedOu */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckoutAssetMail.php b/app/Mail/CheckoutAssetMail.php index ba0bd801be78..fa1290e92d0a 100644 --- a/app/Mail/CheckoutAssetMail.php +++ b/app/Mail/CheckoutAssetMail.php @@ -52,7 +52,7 @@ public function __construct(Asset $asset, $checkedOutTo, User $checkedOutBy, $no */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR', 'service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckoutConsumableMail.php b/app/Mail/CheckoutConsumableMail.php index 3d78b0ab4379..18fe228258bb 100644 --- a/app/Mail/CheckoutConsumableMail.php +++ b/app/Mail/CheckoutConsumableMail.php @@ -38,7 +38,7 @@ public function __construct(Consumable $consumable, $checkedOutTo, User $checked */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, diff --git a/app/Mail/CheckoutLicenseMail.php b/app/Mail/CheckoutLicenseMail.php index 61118ea77561..ecd0d7390dfd 100644 --- a/app/Mail/CheckoutLicenseMail.php +++ b/app/Mail/CheckoutLicenseMail.php @@ -36,7 +36,7 @@ public function __construct(LicenseSeat $licenseSeat, $checkedOutTo, User $check */ public function envelope(): Envelope { - $from = new Address(env('MAIL_FROM_ADDR')); + $from = new Address(env('MAIL_FROM_ADDR','service@snipe-it.io')); return new Envelope( from: $from, From 2cc2b2b1dfc3c4040a223c052d4cfff0175b3f0c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 16:06:27 -0700 Subject: [PATCH 39/49] apply array_filter to cc emails to prevent errors --- app/Listeners/CheckoutableListener.php | 5 +- .../CheckoutAccessoryNotification.php | 58 ++++++++++++++++++- 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 02f8081e6bec..584d3847c68e 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -63,7 +63,7 @@ public function onCheckedOut($event) $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); } - $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); + $ccEmails = array_filter(array_merge($alertsEmailsArray, $adminCcEmailsArray)); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckoutMailType($event, $acceptance); // Send email notifications @@ -136,8 +136,7 @@ public function onCheckedIn($event) $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); } - $ccEmails = array_merge($alertsEmailsArray, $adminCcEmailsArray); - + $ccEmails = array_filter(array_merge($alertsEmailsArray, $adminCcEmailsArray)); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckinMailType($event); diff --git a/app/Notifications/CheckoutAccessoryNotification.php b/app/Notifications/CheckoutAccessoryNotification.php index cbc946ba43ed..721ba7f6a4b5 100644 --- a/app/Notifications/CheckoutAccessoryNotification.php +++ b/app/Notifications/CheckoutAccessoryNotification.php @@ -6,7 +6,6 @@ use App\Models\Setting; use App\Models\User; use Illuminate\Bus\Queueable; -use Illuminate\Notifications\Channels\SlackWebhookChannel; use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; @@ -56,7 +55,35 @@ public function via() } if (Setting::getSettings()->webhook_selected == 'slack' || Setting::getSettings()->webhook_selected == 'general' ) { - $notifyBy[] = SlackWebhookChannel::class; + $notifyBy[] = 'slack'; + } + + /** + * Only send notifications to users that have email addresses + */ + if ($this->target instanceof User && $this->target->email != '') { + + /** + * Send an email if the asset requires acceptance, + * so the user can accept or decline the asset + */ + if ($this->item->requireAcceptance()) { + $notifyBy[1] = 'mail'; + } + + /** + * Send an email if the item has a EULA, since the user should always receive it + */ + if ($this->item->getEula()) { + $notifyBy[1] = 'mail'; + } + + /** + * Send an email if an email should be sent at checkin/checkout + */ + if ($this->item->checkin_email()) { + $notifyBy[1] = 'mail'; + } } return $notifyBy; @@ -136,4 +163,31 @@ public function toGoogleChat() } + + /** + * Get the mail representation of the notification. + * + * @return \Illuminate\Notifications\Messages\MailMessage + */ + public function toMail() + { + Log::debug($this->item->getImageUrl()); + $eula = $this->item->getEula(); + $req_accept = $this->item->requireAcceptance(); + + $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); + + return (new MailMessage)->markdown('notifications.markdown.checkout-accessory', + [ + 'item' => $this->item, + 'admin' => $this->admin, + 'note' => $this->note, + 'target' => $this->target, + 'eula' => $eula, + 'req_accept' => $req_accept, + 'accept_url' => $accept_url, + 'checkout_qty' => $this->checkout_qty, + ]) + ->subject(trans('mail.Confirm_accessory_delivery')); + } } From ab3b9c45106fb68522f3832863f6e16c8f4856f7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 16:24:01 -0700 Subject: [PATCH 40/49] remove unnecessary code from checkinasset notification --- app/Notifications/CheckinAssetNotification.php | 8 -------- 1 file changed, 8 deletions(-) diff --git a/app/Notifications/CheckinAssetNotification.php b/app/Notifications/CheckinAssetNotification.php index 5c38982ab690..6f9543733475 100644 --- a/app/Notifications/CheckinAssetNotification.php +++ b/app/Notifications/CheckinAssetNotification.php @@ -64,14 +64,6 @@ public function via() $notifyBy[] = 'slack'; } -// /** -// * Only send checkin notifications to users if the category -// * has the corresponding checkbox checked. -// */ -// if ($this->item->checkin_email() && $this->target instanceof User && $this->target->email != '') { -// $notifyBy[] = 'mail'; -// } - return $notifyBy; } From 15073a0d3885dc18609158943254317a2394d9d7 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 17:27:37 -0700 Subject: [PATCH 41/49] last test to fix --- .../Notifications/Email/EmailNotificationsUponCheckinTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index 098ef184c643..a472c73c5692 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -51,7 +51,7 @@ public function testCheckInEmailNotSentToUserIfSettingDisabled() $this->fireCheckInEvent($asset, $user); Mail::assertNotSent(CheckinAssetMail::class, function($mail) use ($user, $asset) { - return $mail->hasTo($user->email) && $mail->event->checkoutable->id === $asset->id; + return $mail->hasTo($user->email); } ); } From 6329f5b87e9dd2ff852073aa290e2930b2f78c10 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Wed, 23 Oct 2024 17:33:23 -0700 Subject: [PATCH 42/49] removed unused variable from test --- .../Notifications/Email/EmailNotificationsUponCheckinTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index a472c73c5692..38bda40335f1 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -50,7 +50,7 @@ public function testCheckInEmailNotSentToUserIfSettingDisabled() $this->fireCheckInEvent($asset, $user); - Mail::assertNotSent(CheckinAssetMail::class, function($mail) use ($user, $asset) { + Mail::assertNotSent(CheckinAssetMail::class, function($mail) use ($user) { return $mail->hasTo($user->email); } ); From 57107c487cce4f5520b8cfb97408e8c9f02d6547 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 24 Oct 2024 09:40:10 -0700 Subject: [PATCH 43/49] fixed last test, definetly the last test --- .../Email/EmailNotificationsUponCheckinTest.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php index 38bda40335f1..b4f360cfc387 100644 --- a/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php +++ b/tests/Feature/Notifications/Email/EmailNotificationsUponCheckinTest.php @@ -46,7 +46,11 @@ public function testCheckInEmailNotSentToUserIfSettingDisabled() $user = User::factory()->create(); $asset = Asset::factory()->assignedToUser($user)->create(); - $asset->model->category->update(['checkin_email' => false]); + $asset->model->category->update([ + 'checkin_email' => false, + 'eula_text' => null, + 'require_acceptance' => false, + ]); $this->fireCheckInEvent($asset, $user); From 56365495a1c3b38443772a8ab6d3cc5f9815691c Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 24 Oct 2024 14:26:42 -0700 Subject: [PATCH 44/49] remove unnecessary fields in accessory checkout mail --- app/Mail/CheckoutAccessoryMail.php | 8 -------- 1 file changed, 8 deletions(-) diff --git a/app/Mail/CheckoutAccessoryMail.php b/app/Mail/CheckoutAccessoryMail.php index 96046457212a..f297c027546f 100644 --- a/app/Mail/CheckoutAccessoryMail.php +++ b/app/Mail/CheckoutAccessoryMail.php @@ -53,14 +53,6 @@ public function content(): Content Log::debug($this->item->getImageUrl()); $eula = $this->item->getEula(); $req_accept = $this->item->requireAcceptance(); - - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); - - // Check if the item has custom fields associated with it - if (($this->item->model) && ($this->item->model->fieldset)) { - $fields = $this->item->model->fieldset->fields; - } - $accept_url = is_null($this->acceptance) ? null : route('account.accept.item', $this->acceptance); return new Content( From ce68f550d8edf633d01af476fd95f1161b474e44 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 24 Oct 2024 16:01:17 -0700 Subject: [PATCH 45/49] remove alert emails from cc --- app/Listeners/CheckoutableListener.php | 8 -------- 1 file changed, 8 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 584d3847c68e..3c976eee86fb 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -55,10 +55,6 @@ public function onCheckedOut($event) $alertsEmailsArray = []; $adminCcEmailsArray = []; - if($settings->alert_email !== '') { - $emailsArray = $settings->alert_email; - $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); - } if($settings->admin_cc_email !== '') { $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); @@ -128,10 +124,6 @@ public function onCheckedIn($event) $alertsEmailsArray = []; $adminCcEmailsArray = []; - if($settings->alert_email !== '') { - $emailsArray = $settings->alert_email; - $alertsEmailsArray = array_map('trim', explode(',', $emailsArray)); - } if($settings->admin_cc_email !== '') { $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); From 58ff641f822eec54ebd40c9904c26034e215c550 Mon Sep 17 00:00:00 2001 From: Godfrey M Date: Thu, 24 Oct 2024 22:53:53 -0700 Subject: [PATCH 46/49] removed unused variables --- app/Listeners/CheckoutableListener.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/Listeners/CheckoutableListener.php b/app/Listeners/CheckoutableListener.php index 3c976eee86fb..7d8b5c1c9df5 100644 --- a/app/Listeners/CheckoutableListener.php +++ b/app/Listeners/CheckoutableListener.php @@ -52,14 +52,13 @@ public function onCheckedOut($event) */ $settings = Setting::getSettings(); $acceptance = $this->getCheckoutAcceptance($event); - $alertsEmailsArray = []; $adminCcEmailsArray = []; if($settings->admin_cc_email !== '') { $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); } - $ccEmails = array_filter(array_merge($alertsEmailsArray, $adminCcEmailsArray)); + $ccEmails = array_filter($adminCcEmailsArray); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckoutMailType($event, $acceptance); // Send email notifications @@ -121,14 +120,13 @@ public function onCheckedIn($event) } } $settings = Setting::getSettings(); - $alertsEmailsArray = []; $adminCcEmailsArray = []; if($settings->admin_cc_email !== '') { $adminCcEmail = $settings->admin_cc_email; $adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail)); } - $ccEmails = array_filter(array_merge($alertsEmailsArray, $adminCcEmailsArray)); + $ccEmails = array_filter($adminCcEmailsArray); $notifiable = $event->checkedOutTo; $mailable = $this->getCheckinMailType($event); From 5c49716129950b19b503c0d05456ea83c2119755 Mon Sep 17 00:00:00 2001 From: Marcus Moore Date: Mon, 28 Oct 2024 10:24:35 -0700 Subject: [PATCH 47/49] Dump logs on test failure --- .github/workflows/tests-mysql.yml | 4 ++++ .github/workflows/tests-postgres.yml | 4 ++++ .github/workflows/tests-sqlite.yml | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/.github/workflows/tests-mysql.yml b/.github/workflows/tests-mysql.yml index 310414cda68a..63fcb8e3e262 100644 --- a/.github/workflows/tests-mysql.yml +++ b/.github/workflows/tests-mysql.yml @@ -77,3 +77,7 @@ jobs: DB_PORT: ${{ job.services.mysql.ports[3306] }} DB_USERNAME: root run: php artisan test + + - name: Test failure + if: ${{ failure() }} + run: docker exec "$PROJECT_NAME-php-fpm" cat storage/logs/laravel.log diff --git a/.github/workflows/tests-postgres.yml b/.github/workflows/tests-postgres.yml index ae48277be3e3..3cc5244c5eaf 100644 --- a/.github/workflows/tests-postgres.yml +++ b/.github/workflows/tests-postgres.yml @@ -75,3 +75,7 @@ jobs: DB_USERNAME: snipeit DB_PASSWORD: password run: php artisan test + + - name: Test failure + if: ${{ failure() }} + run: docker exec "$PROJECT_NAME-php-fpm" cat storage/logs/laravel.log diff --git a/.github/workflows/tests-sqlite.yml b/.github/workflows/tests-sqlite.yml index 8bf0115169fb..011d19d783f1 100644 --- a/.github/workflows/tests-sqlite.yml +++ b/.github/workflows/tests-sqlite.yml @@ -59,3 +59,7 @@ jobs: env: DB_CONNECTION: sqlite_testing run: php artisan test + + - name: Test failure + if: ${{ failure() }} + run: docker exec "$PROJECT_NAME-php-fpm" cat storage/logs/laravel.log From 05875ebd1fcea7366288de8833adfcedd66a309c Mon Sep 17 00:00:00 2001 From: snipe Date: Mon, 28 Oct 2024 22:04:35 +0000 Subject: [PATCH 48/49] Updated translations Signed-off-by: snipe --- .../lang/aa-ER/admin/hardware/message.php | 7 + .../lang/aa-ER/admin/settings/general.php | 1 + resources/lang/aa-ER/general.php | 3 +- resources/lang/aa-ER/validation.php | 10 +- .../lang/af-ZA/admin/hardware/message.php | 7 + .../lang/af-ZA/admin/settings/general.php | 1 + resources/lang/af-ZA/general.php | 3 +- resources/lang/af-ZA/validation.php | 10 +- .../lang/am-ET/admin/hardware/message.php | 7 + .../lang/am-ET/admin/settings/general.php | 1 + resources/lang/am-ET/general.php | 3 +- resources/lang/am-ET/validation.php | 10 +- .../lang/ar-SA/admin/hardware/message.php | 7 + .../lang/ar-SA/admin/settings/general.php | 1 + resources/lang/ar-SA/general.php | 3 +- resources/lang/ar-SA/validation.php | 10 +- .../lang/bg-BG/admin/hardware/message.php | 7 + .../lang/bg-BG/admin/settings/general.php | 1 + resources/lang/bg-BG/general.php | 3 +- resources/lang/bg-BG/validation.php | 10 +- .../lang/ca-ES/admin/hardware/message.php | 7 + .../lang/ca-ES/admin/settings/general.php | 1 + resources/lang/ca-ES/general.php | 3 +- resources/lang/ca-ES/validation.php | 10 +- .../lang/chr-US/admin/hardware/message.php | 7 + .../lang/chr-US/admin/settings/general.php | 1 + resources/lang/chr-US/general.php | 3 +- resources/lang/chr-US/validation.php | 10 +- .../lang/cs-CZ/admin/hardware/message.php | 7 + .../lang/cs-CZ/admin/settings/general.php | 1 + resources/lang/cs-CZ/general.php | 3 +- resources/lang/cs-CZ/validation.php | 10 +- .../lang/cy-GB/admin/hardware/message.php | 7 + .../lang/cy-GB/admin/settings/general.php | 1 + resources/lang/cy-GB/general.php | 3 +- resources/lang/cy-GB/validation.php | 10 +- .../lang/da-DK/admin/hardware/message.php | 7 + .../lang/da-DK/admin/settings/general.php | 1 + resources/lang/da-DK/general.php | 3 +- resources/lang/da-DK/validation.php | 10 +- .../lang/de-DE/admin/hardware/message.php | 7 + resources/lang/de-DE/admin/labels/table.php | 4 +- .../lang/de-DE/admin/settings/general.php | 1 + resources/lang/de-DE/general.php | 7 +- resources/lang/de-DE/validation.php | 10 +- .../lang/de-if/admin/hardware/message.php | 7 + .../lang/de-if/admin/settings/general.php | 1 + resources/lang/de-if/general.php | 7 +- resources/lang/de-if/validation.php | 10 +- .../lang/el-GR/admin/hardware/message.php | 7 + .../lang/el-GR/admin/settings/general.php | 1 + resources/lang/el-GR/general.php | 3 +- resources/lang/el-GR/validation.php | 10 +- .../lang/en-GB/admin/hardware/message.php | 7 + .../lang/en-GB/admin/settings/general.php | 1 + resources/lang/en-GB/general.php | 3 +- resources/lang/en-GB/validation.php | 10 +- .../lang/en-ID/admin/hardware/message.php | 7 + .../lang/en-ID/admin/settings/general.php | 1 + resources/lang/en-ID/general.php | 3 +- resources/lang/en-ID/validation.php | 10 +- resources/lang/es-CO/account/general.php | 4 +- .../lang/es-CO/admin/accessories/general.php | 10 +- .../lang/es-CO/admin/accessories/message.php | 2 +- .../lang/es-CO/admin/accessories/table.php | 2 +- .../es-CO/admin/asset_maintenances/form.php | 8 +- .../admin/asset_maintenances/general.php | 10 +- .../admin/asset_maintenances/message.php | 6 +- .../es-CO/admin/asset_maintenances/table.php | 2 +- .../lang/es-CO/admin/companies/message.php | 14 +- .../lang/es-CO/admin/companies/table.php | 6 +- .../lang/es-CO/admin/components/general.php | 10 +- .../lang/es-CO/admin/components/message.php | 4 +- .../lang/es-CO/admin/components/table.php | 2 +- .../lang/es-CO/admin/consumables/general.php | 8 +- .../lang/es-CO/admin/consumables/message.php | 4 +- .../lang/es-CO/admin/consumables/table.php | 2 +- .../es-CO/admin/custom_fields/general.php | 36 +-- .../es-CO/admin/custom_fields/message.php | 14 +- .../lang/es-CO/admin/departments/message.php | 4 +- .../lang/es-CO/admin/departments/table.php | 4 +- resources/lang/es-CO/admin/groups/message.php | 4 +- resources/lang/es-CO/admin/groups/titles.php | 10 +- .../lang/es-CO/admin/hardware/message.php | 13 +- resources/lang/es-CO/admin/kits/general.php | 18 +- resources/lang/es-CO/admin/labels/message.php | 6 +- resources/lang/es-CO/admin/labels/table.php | 2 +- resources/lang/es-CO/admin/licenses/form.php | 6 +- .../lang/es-CO/admin/licenses/general.php | 8 +- .../lang/es-CO/admin/licenses/message.php | 6 +- .../es-CO/admin/manufacturers/message.php | 10 +- .../lang/es-CO/admin/manufacturers/table.php | 2 +- resources/lang/es-CO/admin/models/general.php | 8 +- resources/lang/es-CO/admin/models/message.php | 2 +- .../lang/es-CO/admin/reports/general.php | 8 +- .../lang/es-CO/admin/settings/general.php | 7 +- .../lang/es-CO/admin/settings/message.php | 2 +- .../lang/es-CO/admin/suppliers/table.php | 6 +- resources/lang/es-CO/auth/general.php | 4 +- resources/lang/es-CO/auth/message.php | 6 +- resources/lang/es-CO/button.php | 6 +- resources/lang/es-CO/general.php | 155 ++++++------- resources/lang/es-CO/help.php | 6 +- resources/lang/es-CO/localizations.php | 10 +- resources/lang/es-CO/mail.php | 12 +- resources/lang/es-CO/validation.php | 38 +-- resources/lang/es-ES/account/general.php | 4 +- .../lang/es-ES/admin/accessories/general.php | 10 +- .../lang/es-ES/admin/accessories/table.php | 2 +- .../es-ES/admin/asset_maintenances/form.php | 10 +- .../admin/asset_maintenances/general.php | 14 +- .../admin/asset_maintenances/message.php | 8 +- .../es-ES/admin/asset_maintenances/table.php | 2 +- .../lang/es-ES/admin/categories/general.php | 4 +- .../lang/es-ES/admin/companies/message.php | 10 +- .../lang/es-ES/admin/companies/table.php | 6 +- .../lang/es-ES/admin/components/general.php | 4 +- .../lang/es-ES/admin/components/message.php | 4 +- .../lang/es-ES/admin/components/table.php | 2 +- .../lang/es-ES/admin/consumables/general.php | 8 +- .../lang/es-ES/admin/consumables/message.php | 2 +- .../lang/es-ES/admin/consumables/table.php | 2 +- .../es-ES/admin/custom_fields/general.php | 28 +-- .../es-ES/admin/custom_fields/message.php | 12 +- .../lang/es-ES/admin/departments/message.php | 4 +- .../lang/es-ES/admin/departments/table.php | 2 +- resources/lang/es-ES/admin/groups/message.php | 8 +- resources/lang/es-ES/admin/groups/table.php | 4 +- resources/lang/es-ES/admin/groups/titles.php | 10 +- .../lang/es-ES/admin/hardware/message.php | 11 +- resources/lang/es-ES/admin/kits/general.php | 30 +-- resources/lang/es-ES/admin/labels/message.php | 4 +- resources/lang/es-ES/admin/labels/table.php | 2 +- resources/lang/es-ES/admin/licenses/form.php | 10 +- .../lang/es-ES/admin/licenses/general.php | 16 +- .../lang/es-ES/admin/licenses/message.php | 6 +- resources/lang/es-ES/admin/licenses/table.php | 6 +- .../es-ES/admin/manufacturers/message.php | 12 +- .../lang/es-ES/admin/manufacturers/table.php | 2 +- resources/lang/es-ES/admin/models/general.php | 14 +- resources/lang/es-ES/admin/models/message.php | 2 +- .../lang/es-ES/admin/reports/general.php | 8 +- .../lang/es-ES/admin/settings/general.php | 13 +- .../lang/es-ES/admin/settings/message.php | 4 +- .../lang/es-ES/admin/suppliers/message.php | 4 +- .../lang/es-ES/admin/suppliers/table.php | 16 +- resources/lang/es-ES/auth/general.php | 8 +- resources/lang/es-ES/auth/message.php | 14 +- resources/lang/es-ES/button.php | 6 +- resources/lang/es-ES/general.php | 171 +++++++------- resources/lang/es-ES/help.php | 6 +- resources/lang/es-ES/localizations.php | 6 +- resources/lang/es-ES/mail.php | 14 +- resources/lang/es-ES/validation.php | 38 +-- resources/lang/es-MX/account/general.php | 4 +- .../lang/es-MX/admin/accessories/general.php | 10 +- .../lang/es-MX/admin/accessories/table.php | 2 +- .../es-MX/admin/asset_maintenances/form.php | 8 +- .../admin/asset_maintenances/general.php | 10 +- .../admin/asset_maintenances/message.php | 8 +- .../es-MX/admin/asset_maintenances/table.php | 2 +- .../lang/es-MX/admin/categories/general.php | 2 +- .../lang/es-MX/admin/companies/message.php | 10 +- .../lang/es-MX/admin/companies/table.php | 6 +- .../lang/es-MX/admin/components/general.php | 4 +- .../lang/es-MX/admin/components/message.php | 4 +- .../lang/es-MX/admin/components/table.php | 2 +- .../lang/es-MX/admin/consumables/general.php | 8 +- .../lang/es-MX/admin/consumables/message.php | 2 +- .../lang/es-MX/admin/consumables/table.php | 2 +- .../es-MX/admin/custom_fields/general.php | 30 +-- .../es-MX/admin/custom_fields/message.php | 12 +- .../lang/es-MX/admin/departments/message.php | 4 +- .../lang/es-MX/admin/departments/table.php | 2 +- resources/lang/es-MX/admin/groups/message.php | 8 +- resources/lang/es-MX/admin/groups/table.php | 4 +- resources/lang/es-MX/admin/groups/titles.php | 8 +- .../lang/es-MX/admin/hardware/message.php | 11 +- resources/lang/es-MX/admin/kits/general.php | 12 +- resources/lang/es-MX/admin/labels/message.php | 6 +- resources/lang/es-MX/admin/labels/table.php | 2 +- resources/lang/es-MX/admin/licenses/form.php | 10 +- .../lang/es-MX/admin/licenses/general.php | 16 +- .../lang/es-MX/admin/licenses/message.php | 2 +- resources/lang/es-MX/admin/licenses/table.php | 6 +- .../lang/es-MX/admin/locations/table.php | 2 +- .../es-MX/admin/manufacturers/message.php | 12 +- .../lang/es-MX/admin/manufacturers/table.php | 2 +- resources/lang/es-MX/admin/models/general.php | 12 +- resources/lang/es-MX/admin/models/message.php | 2 +- .../lang/es-MX/admin/reports/general.php | 8 +- .../lang/es-MX/admin/settings/general.php | 11 +- .../lang/es-MX/admin/settings/message.php | 4 +- .../lang/es-MX/admin/suppliers/message.php | 4 +- .../lang/es-MX/admin/suppliers/table.php | 16 +- resources/lang/es-MX/auth.php | 2 +- resources/lang/es-MX/auth/general.php | 8 +- resources/lang/es-MX/auth/message.php | 14 +- resources/lang/es-MX/button.php | 4 +- resources/lang/es-MX/general.php | 165 ++++++------- resources/lang/es-MX/help.php | 6 +- resources/lang/es-MX/localizations.php | 8 +- resources/lang/es-MX/mail.php | 16 +- resources/lang/es-MX/validation.php | 38 +-- resources/lang/es-VE/account/general.php | 4 +- .../lang/es-VE/admin/accessories/general.php | 10 +- .../lang/es-VE/admin/accessories/message.php | 2 +- .../lang/es-VE/admin/accessories/table.php | 2 +- .../es-VE/admin/asset_maintenances/form.php | 8 +- .../admin/asset_maintenances/general.php | 6 +- .../admin/asset_maintenances/message.php | 8 +- .../es-VE/admin/asset_maintenances/table.php | 2 +- .../lang/es-VE/admin/categories/table.php | 2 +- .../lang/es-VE/admin/companies/message.php | 10 +- .../lang/es-VE/admin/companies/table.php | 8 +- .../lang/es-VE/admin/components/general.php | 10 +- .../lang/es-VE/admin/components/message.php | 4 +- .../lang/es-VE/admin/components/table.php | 2 +- .../lang/es-VE/admin/consumables/general.php | 4 +- .../lang/es-VE/admin/consumables/message.php | 4 +- .../lang/es-VE/admin/consumables/table.php | 2 +- .../es-VE/admin/custom_fields/general.php | 40 ++-- .../es-VE/admin/custom_fields/message.php | 18 +- .../lang/es-VE/admin/departments/message.php | 6 +- .../lang/es-VE/admin/departments/table.php | 2 +- resources/lang/es-VE/admin/groups/message.php | 10 +- resources/lang/es-VE/admin/groups/table.php | 4 +- resources/lang/es-VE/admin/groups/titles.php | 10 +- .../lang/es-VE/admin/hardware/message.php | 13 +- resources/lang/es-VE/admin/kits/general.php | 26 +-- resources/lang/es-VE/admin/labels/message.php | 6 +- resources/lang/es-VE/admin/labels/table.php | 2 +- resources/lang/es-VE/admin/licenses/form.php | 6 +- .../lang/es-VE/admin/licenses/general.php | 12 +- .../lang/es-VE/admin/licenses/message.php | 14 +- resources/lang/es-VE/admin/licenses/table.php | 4 +- .../es-VE/admin/manufacturers/message.php | 10 +- .../lang/es-VE/admin/manufacturers/table.php | 2 +- resources/lang/es-VE/admin/models/general.php | 12 +- .../lang/es-VE/admin/reports/general.php | 8 +- .../lang/es-VE/admin/settings/general.php | 7 +- .../lang/es-VE/admin/settings/message.php | 2 +- .../lang/es-VE/admin/suppliers/message.php | 2 +- .../lang/es-VE/admin/suppliers/table.php | 14 +- resources/lang/es-VE/auth/general.php | 6 +- resources/lang/es-VE/auth/message.php | 14 +- resources/lang/es-VE/button.php | 8 +- resources/lang/es-VE/general.php | 161 ++++++------- resources/lang/es-VE/help.php | 6 +- resources/lang/es-VE/localizations.php | 10 +- resources/lang/es-VE/mail.php | 22 +- resources/lang/es-VE/validation.php | 40 ++-- .../lang/et-EE/admin/hardware/message.php | 7 + .../lang/et-EE/admin/settings/general.php | 1 + resources/lang/et-EE/general.php | 3 +- resources/lang/et-EE/validation.php | 10 +- .../lang/fa-IR/admin/hardware/message.php | 7 + .../lang/fa-IR/admin/settings/general.php | 1 + resources/lang/fa-IR/general.php | 4 +- resources/lang/fa-IR/validation.php | 10 +- .../lang/fi-FI/admin/hardware/message.php | 7 + .../lang/fi-FI/admin/settings/general.php | 1 + resources/lang/fi-FI/general.php | 3 +- resources/lang/fi-FI/validation.php | 10 +- .../lang/fil-PH/admin/hardware/message.php | 7 + .../lang/fil-PH/admin/settings/general.php | 1 + resources/lang/fil-PH/general.php | 3 +- resources/lang/fil-PH/validation.php | 10 +- .../lang/fr-FR/admin/hardware/message.php | 7 + .../lang/fr-FR/admin/settings/general.php | 1 + resources/lang/fr-FR/general.php | 3 +- resources/lang/fr-FR/validation.php | 10 +- .../lang/ga-IE/admin/hardware/message.php | 7 + .../lang/ga-IE/admin/settings/general.php | 1 + resources/lang/ga-IE/general.php | 3 +- resources/lang/ga-IE/validation.php | 10 +- .../lang/he-IL/admin/hardware/message.php | 7 + .../lang/he-IL/admin/settings/general.php | 1 + resources/lang/he-IL/general.php | 3 +- resources/lang/he-IL/validation.php | 10 +- .../lang/hr-HR/admin/hardware/message.php | 7 + .../lang/hr-HR/admin/settings/general.php | 1 + resources/lang/hr-HR/general.php | 3 +- resources/lang/hr-HR/validation.php | 10 +- .../lang/hu-HU/admin/hardware/message.php | 7 + .../lang/hu-HU/admin/settings/general.php | 1 + resources/lang/hu-HU/general.php | 3 +- resources/lang/hu-HU/validation.php | 10 +- .../lang/id-ID/admin/hardware/message.php | 7 + .../lang/id-ID/admin/settings/general.php | 1 + resources/lang/id-ID/general.php | 9 +- resources/lang/id-ID/validation.php | 10 +- .../lang/is-IS/admin/hardware/message.php | 7 + .../lang/is-IS/admin/settings/general.php | 1 + resources/lang/is-IS/general.php | 3 +- resources/lang/is-IS/validation.php | 10 +- .../lang/it-IT/admin/hardware/message.php | 7 + .../lang/it-IT/admin/settings/general.php | 1 + resources/lang/it-IT/admin/users/general.php | 2 +- resources/lang/it-IT/general.php | 3 +- resources/lang/it-IT/validation.php | 10 +- .../lang/iu-NU/admin/hardware/message.php | 7 + .../lang/iu-NU/admin/settings/general.php | 1 + resources/lang/iu-NU/general.php | 3 +- resources/lang/iu-NU/validation.php | 10 +- .../lang/ja-JP/admin/hardware/message.php | 7 + .../lang/ja-JP/admin/settings/general.php | 1 + resources/lang/ja-JP/general.php | 3 +- resources/lang/ja-JP/validation.php | 10 +- resources/lang/km-KH/account/general.php | 16 +- .../km-KH/admin/custom_fields/general.php | 42 ++-- .../km-KH/admin/depreciations/general.php | 8 +- .../lang/km-KH/admin/depreciations/table.php | 2 +- .../lang/km-KH/admin/hardware/message.php | 7 + .../lang/km-KH/admin/locations/message.php | 8 +- .../lang/km-KH/admin/locations/table.php | 34 +-- .../lang/km-KH/admin/settings/general.php | 1 + .../lang/km-KH/admin/statuslabels/message.php | 4 +- .../lang/km-KH/admin/statuslabels/table.php | 22 +- .../lang/km-KH/admin/suppliers/table.php | 28 +-- resources/lang/km-KH/admin/users/message.php | 24 +- resources/lang/km-KH/admin/users/table.php | 44 ++-- resources/lang/km-KH/general.php | 9 +- resources/lang/km-KH/localizations.php | 92 ++++---- resources/lang/km-KH/mail.php | 2 +- resources/lang/km-KH/table.php | 4 +- resources/lang/km-KH/validation.php | 218 +++++++++--------- .../lang/ko-KR/admin/hardware/message.php | 7 + .../lang/ko-KR/admin/settings/general.php | 1 + resources/lang/ko-KR/general.php | 3 +- resources/lang/ko-KR/validation.php | 10 +- resources/lang/lt-LT/admin/hardware/form.php | 2 +- .../lang/lt-LT/admin/hardware/message.php | 7 + resources/lang/lt-LT/admin/hardware/table.php | 2 +- .../lang/lt-LT/admin/settings/general.php | 1 + resources/lang/lt-LT/admin/users/message.php | 2 +- resources/lang/lt-LT/general.php | 15 +- resources/lang/lt-LT/mail.php | 2 +- resources/lang/lt-LT/validation.php | 10 +- .../lang/lv-LV/admin/hardware/message.php | 7 + .../lang/lv-LV/admin/settings/general.php | 1 + resources/lang/lv-LV/general.php | 3 +- resources/lang/lv-LV/validation.php | 10 +- .../lang/mi-NZ/admin/hardware/message.php | 7 + .../lang/mi-NZ/admin/settings/general.php | 1 + resources/lang/mi-NZ/general.php | 3 +- resources/lang/mi-NZ/validation.php | 14 +- .../lang/mk-MK/admin/hardware/message.php | 7 + .../lang/mk-MK/admin/settings/general.php | 1 + resources/lang/mk-MK/general.php | 3 +- resources/lang/mk-MK/validation.php | 10 +- .../lang/ml-IN/admin/hardware/message.php | 7 + .../lang/ml-IN/admin/settings/general.php | 1 + resources/lang/ml-IN/general.php | 3 +- resources/lang/ml-IN/validation.php | 10 +- .../lang/mn-MN/admin/hardware/message.php | 7 + .../lang/mn-MN/admin/settings/general.php | 1 + resources/lang/mn-MN/general.php | 3 +- resources/lang/mn-MN/validation.php | 10 +- .../lang/ms-MY/admin/accessories/general.php | 2 +- .../lang/ms-MY/admin/accessories/message.php | 2 +- .../lang/ms-MY/admin/categories/general.php | 2 +- .../lang/ms-MY/admin/hardware/message.php | 7 + .../lang/ms-MY/admin/settings/general.php | 1 + resources/lang/ms-MY/general.php | 5 +- resources/lang/ms-MY/validation.php | 10 +- .../lang/nb-NO/admin/hardware/message.php | 7 + .../lang/nb-NO/admin/settings/general.php | 1 + resources/lang/nb-NO/general.php | 3 +- resources/lang/nb-NO/validation.php | 10 +- .../lang/nl-NL/admin/hardware/message.php | 7 + .../lang/nl-NL/admin/settings/general.php | 1 + resources/lang/nl-NL/general.php | 3 +- resources/lang/nl-NL/validation.php | 10 +- .../lang/nn-NO/admin/hardware/message.php | 7 + .../lang/nn-NO/admin/settings/general.php | 1 + resources/lang/nn-NO/general.php | 3 +- resources/lang/nn-NO/validation.php | 10 +- .../lang/no-NO/admin/hardware/message.php | 7 + .../lang/no-NO/admin/settings/general.php | 1 + resources/lang/no-NO/general.php | 3 +- resources/lang/no-NO/validation.php | 10 +- .../lang/pl-PL/admin/hardware/message.php | 7 + .../lang/pl-PL/admin/settings/general.php | 1 + resources/lang/pl-PL/general.php | 3 +- resources/lang/pl-PL/validation.php | 10 +- .../lang/pt-BR/admin/hardware/message.php | 7 + .../lang/pt-BR/admin/settings/general.php | 1 + resources/lang/pt-BR/general.php | 3 +- resources/lang/pt-BR/validation.php | 10 +- .../lang/pt-PT/admin/hardware/message.php | 7 + .../lang/pt-PT/admin/settings/general.php | 1 + resources/lang/pt-PT/general.php | 3 +- resources/lang/pt-PT/validation.php | 10 +- .../lang/ro-RO/admin/hardware/message.php | 7 + .../lang/ro-RO/admin/settings/general.php | 1 + resources/lang/ro-RO/general.php | 3 +- resources/lang/ro-RO/validation.php | 10 +- .../lang/ru-RU/admin/hardware/message.php | 7 + .../lang/ru-RU/admin/settings/general.php | 1 + resources/lang/ru-RU/general.php | 3 +- resources/lang/ru-RU/validation.php | 10 +- .../lang/si-LK/admin/hardware/message.php | 7 + .../lang/si-LK/admin/settings/general.php | 1 + resources/lang/si-LK/general.php | 3 +- resources/lang/si-LK/validation.php | 10 +- .../lang/sk-SK/admin/hardware/message.php | 7 + .../lang/sk-SK/admin/settings/general.php | 1 + resources/lang/sk-SK/general.php | 3 +- resources/lang/sk-SK/validation.php | 10 +- .../lang/sl-SI/admin/hardware/message.php | 7 + .../lang/sl-SI/admin/settings/general.php | 1 + resources/lang/sl-SI/general.php | 3 +- resources/lang/sl-SI/validation.php | 10 +- .../lang/so-SO/admin/hardware/message.php | 7 + .../lang/so-SO/admin/settings/general.php | 1 + resources/lang/so-SO/general.php | 3 +- resources/lang/so-SO/validation.php | 10 +- .../lang/sq-AL/admin/hardware/message.php | 7 + .../lang/sq-AL/admin/settings/general.php | 1 + resources/lang/sq-AL/general.php | 3 +- resources/lang/sq-AL/validation.php | 10 +- .../lang/sr-CS/admin/hardware/message.php | 7 + .../lang/sr-CS/admin/settings/general.php | 1 + resources/lang/sr-CS/general.php | 7 +- resources/lang/sr-CS/validation.php | 10 +- .../lang/sv-SE/admin/accessories/message.php | 2 +- .../lang/sv-SE/admin/consumables/general.php | 2 +- .../lang/sv-SE/admin/consumables/message.php | 2 +- .../sv-SE/admin/custom_fields/message.php | 2 +- resources/lang/sv-SE/admin/hardware/form.php | 8 +- .../lang/sv-SE/admin/hardware/general.php | 4 +- .../lang/sv-SE/admin/hardware/message.php | 21 +- resources/lang/sv-SE/admin/kits/general.php | 2 +- .../lang/sv-SE/admin/licenses/general.php | 6 +- .../lang/sv-SE/admin/licenses/message.php | 4 +- .../lang/sv-SE/admin/settings/general.php | 1 + resources/lang/sv-SE/general.php | 85 +++---- resources/lang/sv-SE/validation.php | 10 +- .../lang/ta-IN/admin/hardware/message.php | 7 + .../lang/ta-IN/admin/settings/general.php | 1 + resources/lang/ta-IN/general.php | 3 +- resources/lang/ta-IN/validation.php | 10 +- .../lang/th-TH/admin/hardware/message.php | 7 + .../lang/th-TH/admin/settings/general.php | 1 + resources/lang/th-TH/general.php | 3 +- resources/lang/th-TH/validation.php | 10 +- .../lang/tl-PH/admin/hardware/message.php | 7 + .../lang/tl-PH/admin/settings/general.php | 1 + resources/lang/tl-PH/general.php | 3 +- resources/lang/tl-PH/validation.php | 10 +- .../lang/tr-TR/admin/hardware/message.php | 7 + .../lang/tr-TR/admin/settings/general.php | 1 + resources/lang/tr-TR/general.php | 3 +- resources/lang/tr-TR/validation.php | 10 +- .../lang/uk-UA/admin/hardware/message.php | 7 + .../lang/uk-UA/admin/settings/general.php | 1 + resources/lang/uk-UA/general.php | 3 +- resources/lang/uk-UA/validation.php | 10 +- .../lang/ur-PK/admin/hardware/message.php | 7 + .../lang/ur-PK/admin/settings/general.php | 1 + resources/lang/ur-PK/general.php | 3 +- resources/lang/ur-PK/validation.php | 10 +- .../lang/vi-VN/admin/hardware/message.php | 7 + .../lang/vi-VN/admin/settings/general.php | 1 + resources/lang/vi-VN/general.php | 3 +- resources/lang/vi-VN/validation.php | 10 +- .../lang/zh-CN/admin/hardware/message.php | 7 + .../lang/zh-CN/admin/settings/general.php | 1 + resources/lang/zh-CN/general.php | 3 +- resources/lang/zh-CN/validation.php | 10 +- .../lang/zh-HK/admin/hardware/message.php | 7 + .../lang/zh-HK/admin/settings/general.php | 1 + resources/lang/zh-HK/general.php | 3 +- resources/lang/zh-HK/validation.php | 10 +- .../lang/zh-TW/admin/hardware/message.php | 7 + .../lang/zh-TW/admin/settings/general.php | 1 + resources/lang/zh-TW/general.php | 3 +- resources/lang/zh-TW/validation.php | 10 +- .../lang/zu-ZA/admin/hardware/message.php | 7 + .../lang/zu-ZA/admin/settings/general.php | 1 + resources/lang/zu-ZA/general.php | 3 +- resources/lang/zu-ZA/validation.php | 10 +- 483 files changed, 2746 insertions(+), 1574 deletions(-) diff --git a/resources/lang/aa-ER/admin/hardware/message.php b/resources/lang/aa-ER/admin/hardware/message.php index 2a6f8a7fc505..2b9064167d1b 100644 --- a/resources/lang/aa-ER/admin/hardware/message.php +++ b/resources/lang/aa-ER/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'crwdns742:0crwdne742:0', 'success' => 'crwdns743:0crwdne743:0', 'success_linked' => 'crwdns11882:0crwdne11882:0', + 'multi_success_linked' => 'crwdns12776:0crwdne12776:0', + 'partial_failure' => 'crwdns12778:0crwdne12778:0', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'crwdns1965:0crwdne1965:0', ], + 'multi-checkout' => [ + 'error' => 'crwdns12768:0crwdne12768:0', + 'success' => 'crwdns12770:0crwdne12770:0', + ], + 'checkin' => [ 'error' => 'crwdns752:0crwdne752:0', 'success' => 'crwdns753:0crwdne753:0', diff --git a/resources/lang/aa-ER/admin/settings/general.php b/resources/lang/aa-ER/admin/settings/general.php index ecea17b23368..00d8283efc5f 100644 --- a/resources/lang/aa-ER/admin/settings/general.php +++ b/resources/lang/aa-ER/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => 'crwdns12594:0crwdne12594:0', 'due_checkin_days' => 'crwdns12680:0crwdne12680:0', 'due_checkin_days_help' => 'crwdns12682:0crwdne12682:0', + 'no_groups' => 'crwdns12760:0crwdne12760:0', ]; diff --git a/resources/lang/aa-ER/general.php b/resources/lang/aa-ER/general.php index 525cfe256ef4..49b185db86a9 100644 --- a/resources/lang/aa-ER/general.php +++ b/resources/lang/aa-ER/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'crwdns1831:0crwdne1831:0', 'qty' => 'crwdns1328:0crwdne1328:0', 'quantity' => 'crwdns1473:0crwdne1473:0', - 'quantity_minimum' => 'crwdns6143:0crwdne6143:0', + 'quantity_minimum' => 'crwdns12774:0crwdne12774:0', 'quickscan_checkin' => 'crwdns6778:0crwdne6778:0', 'quickscan_checkin_status' => 'crwdns6780:0crwdne6780:0', 'ready_to_deploy' => 'crwdns1081:0crwdne1081:0', @@ -433,6 +433,7 @@ 'alt_uploaded_image_thumbnail' => 'crwdns11172:0crwdne11172:0', 'placeholder_kit' => 'crwdns11174:0crwdne11174:0', 'file_not_found' => 'crwdns11313:0crwdne11313:0', + 'log_record_not_found' => 'crwdns12772:0crwdne12772:0', 'preview_not_available' => 'crwdns11315:0crwdne11315:0', 'setup' => 'crwdns11317:0crwdne11317:0', 'pre_flight' => 'crwdns11319:0crwdne11319:0', diff --git a/resources/lang/aa-ER/validation.php b/resources/lang/aa-ER/validation.php index 06657a831a0a..4d7d7f5ce1c7 100644 --- a/resources/lang/aa-ER/validation.php +++ b/resources/lang/aa-ER/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'crwdns12552:0crwdne12552:0', 'uuid' => 'crwdns12554:0crwdne12554:0', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'crwdns12652:0crwdne12652:0', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'crwdns11247:0crwdne11247:0', 'last_audit_date.date_format' => 'crwdns11249:0crwdne11249:0', @@ -206,6 +207,13 @@ 'checkboxes' => 'crwdns12556:0crwdne12556:0', 'radio_buttons' => 'crwdns12558:0crwdne12558:0', 'invalid_value_in_field' => 'crwdns12560:0crwdne12560:0', + + 'ldap_username_field' => [ + 'not_in' => 'crwdns12762:0crwdne12762:0' + ], + 'ldap_auth_filter_query' => ['not_in' => 'crwdns12764:0crwdne12764:0'], + 'ldap_filter' => ['regex' => 'crwdns12766:0crwdne12766:0'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/af-ZA/admin/hardware/message.php b/resources/lang/af-ZA/admin/hardware/message.php index 1a2bda6ae9a1..2423fda30539 100644 --- a/resources/lang/af-ZA/admin/hardware/message.php +++ b/resources/lang/af-ZA/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Bate is nie geskep nie, probeer asseblief weer. :(', 'success' => 'Bate geskep suksesvol. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Bate is nie nagegaan nie, probeer asseblief weer', 'success' => 'Die bate is suksesvol nagegaan.', diff --git a/resources/lang/af-ZA/admin/settings/general.php b/resources/lang/af-ZA/admin/settings/general.php index fcc483145e4a..ad86467dbc66 100644 --- a/resources/lang/af-ZA/admin/settings/general.php +++ b/resources/lang/af-ZA/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/af-ZA/general.php b/resources/lang/af-ZA/general.php index e155dcaf2b61..c154012a57c4 100644 --- a/resources/lang/af-ZA/general.php +++ b/resources/lang/af-ZA/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Aankoop datum', 'qty' => 'HOEV', 'quantity' => 'hoeveelheid', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Klaar om te implementeer', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/af-ZA/validation.php b/resources/lang/af-ZA/validation.php index 02faf9c002fd..9d84cca355cb 100644 --- a/resources/lang/af-ZA/validation.php +++ b/resources/lang/af-ZA/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/am-ET/admin/hardware/message.php b/resources/lang/am-ET/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/am-ET/admin/hardware/message.php +++ b/resources/lang/am-ET/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/am-ET/admin/settings/general.php b/resources/lang/am-ET/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/am-ET/admin/settings/general.php +++ b/resources/lang/am-ET/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/am-ET/general.php b/resources/lang/am-ET/general.php index d52e208c2dc7..c57002e4e6df 100644 --- a/resources/lang/am-ET/general.php +++ b/resources/lang/am-ET/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/am-ET/validation.php b/resources/lang/am-ET/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/am-ET/validation.php +++ b/resources/lang/am-ET/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ar-SA/admin/hardware/message.php b/resources/lang/ar-SA/admin/hardware/message.php index 9a2bd8cb9060..f9df3643d1b0 100644 --- a/resources/lang/ar-SA/admin/hardware/message.php +++ b/resources/lang/ar-SA/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'لم يتم إنشاء الأصل، يرجى إعادة المحاولة. :(', 'success' => 'تم إنشاء الأصل بنجاح. :)', 'success_linked' => 'تم إنشاء الأصل مع العلامة :tag بنجاح. انقر هنا لعرض.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'يجب عليك تحديد أصل واحد على الأقل من القائمة', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'لم يتم ادخال الأصل، يرجى إعادة المحاولة', 'success' => 'تم ادخال الأصل بنجاح.', diff --git a/resources/lang/ar-SA/admin/settings/general.php b/resources/lang/ar-SA/admin/settings/general.php index 5b7374f204b2..3f4abde3beea 100644 --- a/resources/lang/ar-SA/admin/settings/general.php +++ b/resources/lang/ar-SA/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ar-SA/general.php b/resources/lang/ar-SA/general.php index 1349c6b30a21..a03991b9b9b3 100644 --- a/resources/lang/ar-SA/general.php +++ b/resources/lang/ar-SA/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'تاريخ الشراء', 'qty' => 'الكمية', 'quantity' => 'كمية', - 'quantity_minimum' => 'لديك :count عناصر أقل أو قريبة من الحد الأدنى لمستويات الكمية', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'فحص سريع للادخال', 'quickscan_checkin_status' => 'فحص حالة الادخال', 'ready_to_deploy' => 'جاهزة للتوزيع', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'الصورة المصغرة المحملة', 'placeholder_kit' => 'حدد مجموعة أدوات', 'file_not_found' => 'لم يتم العثور على الملف', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(بدون معاينة)', 'setup' => 'الإعداد', 'pre_flight' => 'قبل الطيران', diff --git a/resources/lang/ar-SA/validation.php b/resources/lang/ar-SA/validation.php index dc5ef053070e..1adf91be4eca 100644 --- a/resources/lang/ar-SA/validation.php +++ b/resources/lang/ar-SA/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'يجب أن يكون :attribute تاريخ صالح بتنسيق YYY-MM-DD', 'last_audit_date.date_format' => 'يجب أن يكون :attribute تاريخًا صحيحًا في تنسيق YYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute يحتوي على خيارات غير صالحة.', 'radio_buttons' => ':attribute غير صالح.', 'invalid_value_in_field' => 'القيمة غير صالحة المدرجة في هذا الحقل', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/bg-BG/admin/hardware/message.php b/resources/lang/bg-BG/admin/hardware/message.php index 6b27118c7ec6..a2ee2249720f 100644 --- a/resources/lang/bg-BG/admin/hardware/message.php +++ b/resources/lang/bg-BG/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Активът не беше създаден. Моля опитайте отново.', 'success' => 'Активът създаден успешно.', 'success_linked' => 'Артикул с етикет :tag беше създаден успешно. Щракнете тук за да го видите.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Трябва да изберете поне един елемент към списъка', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Активът не беше вписан. Моля опитайте отново.', 'success' => 'Активът вписан успешно.', diff --git a/resources/lang/bg-BG/admin/settings/general.php b/resources/lang/bg-BG/admin/settings/general.php index 8c2448c6b6d6..ec2d20c90949 100644 --- a/resources/lang/bg-BG/admin/settings/general.php +++ b/resources/lang/bg-BG/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/bg-BG/general.php b/resources/lang/bg-BG/general.php index 7163090d1e4c..3441698c2c7c 100644 --- a/resources/lang/bg-BG/general.php +++ b/resources/lang/bg-BG/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Дата на закупуване', 'qty' => 'Количество', 'quantity' => 'Kоличество', - 'quantity_minimum' => 'Имате :count актива под минимума или почти под минимума', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Бързо сканиране и Вписване', 'quickscan_checkin_status' => 'Статус вписване', 'ready_to_deploy' => 'Готово за предоставяне', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Качено умалено изображение', 'placeholder_kit' => 'Изберете комплект', 'file_not_found' => 'Файлът не е намерен', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(няма преглед)', 'setup' => 'Настройка', 'pre_flight' => 'Тест', diff --git a/resources/lang/bg-BG/validation.php b/resources/lang/bg-BG/validation.php index 98574fa02400..5063d33d02bb 100644 --- a/resources/lang/bg-BG/validation.php +++ b/resources/lang/bg-BG/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':values трябва да бъде валидна дата в YYYY-MM-DD формат', 'last_audit_date.date_format' => ':attribute трябва да бъде валидна дата в YYYY-MM-DD hh:mm:ss формат', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute съдържа невалидни опции.', 'radio_buttons' => ':attribute е невалиден.', 'invalid_value_in_field' => 'В това поле е включена невалидна стойност', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ca-ES/admin/hardware/message.php b/resources/lang/ca-ES/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/ca-ES/admin/hardware/message.php +++ b/resources/lang/ca-ES/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/ca-ES/admin/settings/general.php b/resources/lang/ca-ES/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/ca-ES/admin/settings/general.php +++ b/resources/lang/ca-ES/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ca-ES/general.php b/resources/lang/ca-ES/general.php index 87dcf8fddb74..d76e33040878 100644 --- a/resources/lang/ca-ES/general.php +++ b/resources/lang/ca-ES/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ca-ES/validation.php b/resources/lang/ca-ES/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/ca-ES/validation.php +++ b/resources/lang/ca-ES/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/chr-US/admin/hardware/message.php b/resources/lang/chr-US/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/chr-US/admin/hardware/message.php +++ b/resources/lang/chr-US/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/chr-US/admin/settings/general.php b/resources/lang/chr-US/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/chr-US/admin/settings/general.php +++ b/resources/lang/chr-US/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/chr-US/general.php b/resources/lang/chr-US/general.php index 34315c99a8ce..a2a075eed00c 100644 --- a/resources/lang/chr-US/general.php +++ b/resources/lang/chr-US/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/chr-US/validation.php b/resources/lang/chr-US/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/chr-US/validation.php +++ b/resources/lang/chr-US/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/cs-CZ/admin/hardware/message.php b/resources/lang/cs-CZ/admin/hardware/message.php index 443c5da1554a..a9998733c828 100644 --- a/resources/lang/cs-CZ/admin/hardware/message.php +++ b/resources/lang/cs-CZ/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Majetek se nepodařilo vytvořit, zkuste to prosím znovu.', 'success' => 'Majetek byl v pořádku vytvořen.', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Je třeba vybrat ze seznamu alespoň jeden majetek', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Majetek nebyl převzat. Zkuste to prosím znovu', 'success' => 'Majetek byl v pořádku převzat.', diff --git a/resources/lang/cs-CZ/admin/settings/general.php b/resources/lang/cs-CZ/admin/settings/general.php index 698f8f8991b6..0cebede00f54 100644 --- a/resources/lang/cs-CZ/admin/settings/general.php +++ b/resources/lang/cs-CZ/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/cs-CZ/general.php b/resources/lang/cs-CZ/general.php index 1a4671f950db..a24013806523 100644 --- a/resources/lang/cs-CZ/general.php +++ b/resources/lang/cs-CZ/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Datum nákupu', 'qty' => 'Množství', 'quantity' => 'Množství', - 'quantity_minimum' => 'Máte :count položek pod nebo téměř pod nejnižšími skladovými zásobami', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Rychlé skenování přivlastněných počítačů', 'quickscan_checkin_status' => 'Stav převzetí', 'ready_to_deploy' => 'Připraveno k přidělení', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Nahraný náhledový obrázek', 'placeholder_kit' => 'Vyberte sadu', 'file_not_found' => 'Soubor nebyl nalezen', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(žádný náhled)', 'setup' => 'Nastavení', 'pre_flight' => 'Předletový', diff --git a/resources/lang/cs-CZ/validation.php b/resources/lang/cs-CZ/validation.php index fc8adac1dd8c..a4a54ec618b9 100644 --- a/resources/lang/cs-CZ/validation.php +++ b/resources/lang/cs-CZ/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute musí být platné datum ve formátu RRRR-MM-DD', 'last_audit_date.date_format' => ':attribute musí být platné datum ve formátu RRRR-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute obsahuje neplatné možnosti.', 'radio_buttons' => ':attribute je neplatný.', 'invalid_value_in_field' => 'Neplatná hodnota zahrnutá v tomto poli', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/cy-GB/admin/hardware/message.php b/resources/lang/cy-GB/admin/hardware/message.php index f01c051bb9e1..2f2ff8d432cb 100644 --- a/resources/lang/cy-GB/admin/hardware/message.php +++ b/resources/lang/cy-GB/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Ni crewyd yr ased, ceisiwch eto o. g. y. dd. :(', 'success' => 'Ased wedi creu yn llwyddiannus. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Rhaid i chi ddewis o leiaf un ased o\'r rhestr', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Ased heb ei nodi i mewn, ceisiwch eto o. g. y. dd', 'success' => 'Ased wedi nodi i mewn yn llwyddiannus.', diff --git a/resources/lang/cy-GB/admin/settings/general.php b/resources/lang/cy-GB/admin/settings/general.php index cc8cbc616211..64353154029b 100644 --- a/resources/lang/cy-GB/admin/settings/general.php +++ b/resources/lang/cy-GB/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/cy-GB/general.php b/resources/lang/cy-GB/general.php index 284ed1632b8b..9f5fbd0f7fdd 100644 --- a/resources/lang/cy-GB/general.php +++ b/resources/lang/cy-GB/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Dyddiad Pwrcasu', 'qty' => 'Nifer', 'quantity' => 'Nifer', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Barod i\'w defnyddio', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/cy-GB/validation.php b/resources/lang/cy-GB/validation.php index 0900b49f1dec..2011fcaeba95 100644 --- a/resources/lang/cy-GB/validation.php +++ b/resources/lang/cy-GB/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/da-DK/admin/hardware/message.php b/resources/lang/da-DK/admin/hardware/message.php index 88ab3eea9a78..dd685238bf8b 100644 --- a/resources/lang/da-DK/admin/hardware/message.php +++ b/resources/lang/da-DK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Akten blev ikke oprettet, prøv igen. :(', 'success' => 'Aktivet blev oprettet med succes. :)', 'success_linked' => 'Aktiv med tag :tag blev oprettet. Klik her for at se.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du skal vælge mindst ét aktiv fra listen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Akten blev ikke tjekket ind, prøv igen', 'success' => 'Asset tjekket ind med succes.', diff --git a/resources/lang/da-DK/admin/settings/general.php b/resources/lang/da-DK/admin/settings/general.php index 6466546cd0c9..015f24dbe6f5 100644 --- a/resources/lang/da-DK/admin/settings/general.php +++ b/resources/lang/da-DK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/da-DK/general.php b/resources/lang/da-DK/general.php index 2524525ba79b..8446bb25d91c 100644 --- a/resources/lang/da-DK/general.php +++ b/resources/lang/da-DK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Købsdato', 'qty' => 'STK', 'quantity' => 'Antal', - 'quantity_minimum' => 'Du har :count emner under eller næsten under minimumsbeholdning', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Hurtig tjek ind ved skanning', 'quickscan_checkin_status' => 'Status for tjek ind', 'ready_to_deploy' => 'Klar til Implementering', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploadet miniature', 'placeholder_kit' => 'Vælg et sæt', 'file_not_found' => 'Filen blev ikke fundet', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ingen forhåndsvisning)', 'setup' => 'Opsætning', 'pre_flight' => 'Forhåndsopsætning', diff --git a/resources/lang/da-DK/validation.php b/resources/lang/da-DK/validation.php index 47cc4ef9118d..e1428b962860 100644 --- a/resources/lang/da-DK/validation.php +++ b/resources/lang/da-DK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute skal være en gyldig dato i YYYY-MM-DD format', 'last_audit_date.date_format' => ':attribute skal være en gyldig dato i YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute indeholder ugyldige indstillinger.', 'radio_buttons' => ':attribute er ugyldig.', 'invalid_value_in_field' => 'Ugyldig værdi inkluderet i dette felt', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/de-DE/admin/hardware/message.php b/resources/lang/de-DE/admin/hardware/message.php index 5678a25bf5d0..001ba47ecfd4 100644 --- a/resources/lang/de-DE/admin/hardware/message.php +++ b/resources/lang/de-DE/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset wurde nicht erstellt. Bitte versuchen Sie es erneut. :(', 'success' => 'Asset wurde erfolgreich erstellt. :)', 'success_linked' => 'Asset mit Tag :tag wurde erfolgreich erstellt. Klicken Sie hier, um anzuzeigen.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Sie müssen mindestens ein Asset aus der Liste auswählen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset konnte nicht zurückgenommen werden. Bitte versuchen Sie es erneut', 'success' => 'Asset wurde erfolgreich zurückgenommen.', diff --git a/resources/lang/de-DE/admin/labels/table.php b/resources/lang/de-DE/admin/labels/table.php index c26f4406cd14..39f5dadcf8e3 100644 --- a/resources/lang/de-DE/admin/labels/table.php +++ b/resources/lang/de-DE/admin/labels/table.php @@ -1,13 +1,13 @@ 'Testfirma limitiert', + 'example_company' => 'Beispielfirma AG', 'example_defaultloc' => 'Gebäude 1', 'example_category' => 'Testkategorie', 'example_location' => 'Baue 2', 'example_manufacturer' => 'Test Manufacturing Inc.', 'example_model' => 'Testmodell', - 'example_supplier' => 'Testfirma limitiert', + 'example_supplier' => 'Beispielfirma AG', 'labels_per_page' => 'Label', 'support_fields' => 'Felder', 'support_asset_tag' => 'Tag', diff --git a/resources/lang/de-DE/admin/settings/general.php b/resources/lang/de-DE/admin/settings/general.php index 0ee47d7750a4..6d01f0d10a9a 100644 --- a/resources/lang/de-DE/admin/settings/general.php +++ b/resources/lang/de-DE/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Zum Einchecken fällig Warnung', 'due_checkin_days_help' => 'Wie viele Tage vor dem voraussichtlichen Check-in eines Vermögenswerts soll dieser auf der Seite „Zur Eincheckzeit fällig“ aufgeführt werden?', + 'no_groups' => 'Es wurden noch keine Gruppen erstellt. Navigieren Sie zu Admin-Einstellungen > Berechtigungsgruppen, um eine hinzuzufügen.', ]; diff --git a/resources/lang/de-DE/general.php b/resources/lang/de-DE/general.php index 5134b7136461..223313ac5272 100644 --- a/resources/lang/de-DE/general.php +++ b/resources/lang/de-DE/general.php @@ -64,7 +64,7 @@ 'checkout' => 'Herausgeben', 'checkouts_count' => 'Herausgaben', 'checkins_count' => 'Rücknahmen', - 'checkin_and_delete' => 'Checkin and Delete', + 'checkin_and_delete' => 'Zurücknehmen und Löschen', 'user_requests_count' => 'Anfragen', 'city' => 'Stadt', 'click_here' => 'Hier klicken', @@ -230,7 +230,7 @@ 'purchase_date' => 'Kaufdatum', 'qty' => 'Menge', 'quantity' => 'Menge', - 'quantity_minimum' => ':count Artikel sind unter oder fast unter der Mindestmenge', + 'quantity_minimum' => 'Sie haben einen Artikel unter oder fast unter Mindestmenge Level|Sie haben :count Artikel unterhalb oder fast unter Mindestmenge', 'quickscan_checkin' => 'Schnell-Rücknahme', 'quickscan_checkin_status' => 'Rückgabe Status', 'ready_to_deploy' => 'Bereit zum Herausgeben', @@ -283,7 +283,7 @@ 'status_label' => 'Statusbezeichnung', 'status' => 'Status', 'accept_eula' => 'Annahmeerklärung', - 'show_or_hide_eulas' => 'Show/Hide EULAs', + 'show_or_hide_eulas' => 'EULAs ein-/ausblenden', 'supplier' => 'Lieferant', 'suppliers' => 'Lieferanten', 'sure_to_delete' => 'Sind Sie sich sicher, dass Sie löschen möchten?', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Hochgeladene Miniaturansicht', 'placeholder_kit' => 'Kit auswählen', 'file_not_found' => 'Datei wurde nicht gefunden', + 'log_record_not_found' => 'Es wurde kein Eintrag für diesen Logeintrag gefunden.', 'preview_not_available' => '(keine Vorschau vorhanden)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/de-DE/validation.php b/resources/lang/de-DE/validation.php index b308da9d7067..5bcb6b7d0ded 100644 --- a/resources/lang/de-DE/validation.php +++ b/resources/lang/de-DE/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Das Feld :attribute muss eine gültige ULID sein.', 'uuid' => 'Das Feld :attribute muss eine gültige UUID sein.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Dieses Feld scheint vorhanden zu sein, ist aber im Feldsatz dieses Asset-Modells nicht verfügbar.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute muss ein gültiges Datum im Format JJJJ-MM-TT sein', 'last_audit_date.date_format' => ':attribute muss ein gültiges Datum im Format JJJJ-MM-TT hh:mm:ss sein', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute enthält ungültige Optionen.', 'radio_buttons' => ':attribute ist ungültig.', 'invalid_value_in_field' => 'Ungültiger Wert in diesem Feld enthalten', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (Groß- und Kleinschreibung) funktioniert wahrscheinlich nicht. Sie sollten stattdessen samaccountname (Kleinschreibung) verwenden.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname ist wahrscheinlich kein gültiger Authentifizierungsfilter. Sie möchten wahrscheinlich uid= '], + 'ldap_filter' => ['regex' => 'Dieser Wert sollte wahrscheinlich nicht in Klammern gesetzt werden.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/de-if/admin/hardware/message.php b/resources/lang/de-if/admin/hardware/message.php index 1769e733f4bf..c8784ca379a3 100644 --- a/resources/lang/de-if/admin/hardware/message.php +++ b/resources/lang/de-if/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset wurde nicht erstellt. Bitte versuche es erneut. :(', 'success' => 'Asset wurde erfolgreich erstellt. :)', 'success_linked' => 'Asset mit Tag :tag wurde erfolgreich erstellt. Klicke hier, um anzuzeigen.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du musst mindestens ein Asset aus der Liste auswählen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset konnte nicht zurückgenommen werden. Bitte versuche es erneut', 'success' => 'Asset wurde erfolgreich zurückgenommen.', diff --git a/resources/lang/de-if/admin/settings/general.php b/resources/lang/de-if/admin/settings/general.php index 15f8e3c3109b..6213224ece3a 100644 --- a/resources/lang/de-if/admin/settings/general.php +++ b/resources/lang/de-if/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Zum Einchecken fällig Warnung', 'due_checkin_days_help' => 'Wie viele Tage vor dem voraussichtlichen Check-in eines Vermögenswerts soll dieser auf der Seite „Zur Eincheckzeit fällig“ aufgeführt werden?', + 'no_groups' => 'Es wurden noch keine Gruppen erstellt. Navigiere zu Admin-Einstellungen > Berechtigungsgruppen, um eine hinzuzufügen.', ]; diff --git a/resources/lang/de-if/general.php b/resources/lang/de-if/general.php index 54a3d05b71ad..a80fb001d2ae 100644 --- a/resources/lang/de-if/general.php +++ b/resources/lang/de-if/general.php @@ -64,7 +64,7 @@ 'checkout' => 'Herausgeben', 'checkouts_count' => 'Herausgaben', 'checkins_count' => 'Rücknahmen', - 'checkin_and_delete' => 'Checkin and Delete', + 'checkin_and_delete' => 'Zurücknehmen und Löschen', 'user_requests_count' => 'Anfragen', 'city' => 'Stadt', 'click_here' => 'Hier klicken', @@ -230,7 +230,7 @@ 'purchase_date' => 'Kaufdatum', 'qty' => 'Menge', 'quantity' => 'Anzahl', - 'quantity_minimum' => ':count Artikel sind unter oder fast unter der Mindestmenge', + 'quantity_minimum' => 'Du hast einen Artikel unter oder fast unter Mindestmenge Level|Du hast :count Artikel unterhalb oder fast unter Mindestmenge', 'quickscan_checkin' => 'Schnell Rücknahme', 'quickscan_checkin_status' => 'Rückgabe Status', 'ready_to_deploy' => 'Bereit zum Herausgeben', @@ -283,7 +283,7 @@ 'status_label' => 'Statusbezeichnung', 'status' => 'Status', 'accept_eula' => 'Annahmeerklärung', - 'show_or_hide_eulas' => 'Show/Hide EULAs', + 'show_or_hide_eulas' => 'EULAs ein-/ausblenden', 'supplier' => 'Lieferant', 'suppliers' => 'Lieferanten', 'sure_to_delete' => 'Bist du dir sicher, dass du das löschen möchtest', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Hochgeladene Miniaturansicht', 'placeholder_kit' => 'Kit auswählen', 'file_not_found' => 'Datei wurde nicht gefunden', + 'log_record_not_found' => 'Es wurde kein Eintrag für diesen Logeintrag gefunden.', 'preview_not_available' => '(keine Vorschau vorhanden)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/de-if/validation.php b/resources/lang/de-if/validation.php index 217b256871a0..4673baad863c 100644 --- a/resources/lang/de-if/validation.php +++ b/resources/lang/de-if/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Das Feld :attribute muss eine gültige ULID sein.', 'uuid' => 'Das Feld :attribute muss eine gültige UUID sein.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Dieses Feld scheint vorhanden zu sein, ist aber im Feldsatz dieses Asset-Modells nicht verfügbar.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute muss ein gültiges Datum im Format JJJJ-MM-TT sein', 'last_audit_date.date_format' => ':attribute muss ein gültiges Datum im Format JJJJ-MM-TT hh:mm:ss sein', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute enthält ungültige Optionen.', 'radio_buttons' => ':attribute ist ungültig.', 'invalid_value_in_field' => 'Ungültiger Wert in diesem Feld enthalten', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (Groß- und Kleinschreibung) funktioniert wahrscheinlich nicht. Du solltest stattdessen samaccountname (Kleinschreibung) verwenden.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname ist wahrscheinlich kein gültiger Authentifizierungsfilter. Du möchtest wahrscheinlich uid= '], + 'ldap_filter' => ['regex' => 'Dieser Wert sollte wahrscheinlich nicht in Klammern gesetzt werden.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/el-GR/admin/hardware/message.php b/resources/lang/el-GR/admin/hardware/message.php index 3e3897be0f28..ad0b5bb169ea 100644 --- a/resources/lang/el-GR/admin/hardware/message.php +++ b/resources/lang/el-GR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Το περιουσιακού στοιχείο δεν δημιουργήθηκε, παρακαλώ προσπαθήστε ξανά. :(', 'success' => 'Το πάγιο δημιουργήθηκε επιτυχώς', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Πρέπει να επιλέξετε τουλάχιστον ένα στοιχείο προς δημοσίευση.', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Το στοιχείο δεν έχει επιλεγεί, δοκιμάστε ξανά', 'success' => 'Το ενεργό στοιχείο ολοκληρώθηκε με επιτυχία.', diff --git a/resources/lang/el-GR/admin/settings/general.php b/resources/lang/el-GR/admin/settings/general.php index 02f12210af44..1de05cb0a6ec 100644 --- a/resources/lang/el-GR/admin/settings/general.php +++ b/resources/lang/el-GR/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/el-GR/general.php b/resources/lang/el-GR/general.php index 7544730e07a0..a2f1fd001352 100644 --- a/resources/lang/el-GR/general.php +++ b/resources/lang/el-GR/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Ημερομηνία αγοράς', 'qty' => 'Τεμάχια', 'quantity' => 'Ποσότητα', - 'quantity_minimum' => 'Έχετε :count στοιχεία κάτω ή σχεδόν κάτω από τα ελάχιστα επίπεδα ποσότητας', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Γρήγορη Σάρωση Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Είστε έτοιμοι να αναπτύξετε', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Ανεβασμένη μικρογραφία', 'placeholder_kit' => 'Επιλέξτε ένα κιτ', 'file_not_found' => 'Το αρχείο δεν βρέθηκε', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(χωρίς προεπισκόπηση)', 'setup' => 'Ρύθμιση', 'pre_flight' => 'Προ-Φωτισμός', diff --git a/resources/lang/el-GR/validation.php b/resources/lang/el-GR/validation.php index 9f4921e2de98..362b3194f011 100644 --- a/resources/lang/el-GR/validation.php +++ b/resources/lang/el-GR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'Το χαρακτηριστικό: πρέπει να είναι έγκυρη ημερομηνία σε μορφή YYYY-MM-DD', 'last_audit_date.date_format' => 'Το :attribute πρέπει να είναι έγκυρη ημερομηνία σε μορφή YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute περιέχει μη έγκυρες επιλογές.', 'radio_buttons' => ':attribute δεν είναι έγκυρο.', 'invalid_value_in_field' => 'Μη έγκυρη τιμή που περιλαμβάνεται σε αυτό το πεδίο', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/en-GB/admin/hardware/message.php b/resources/lang/en-GB/admin/hardware/message.php index 90e3ef287866..9c8836117071 100644 --- a/resources/lang/en-GB/admin/hardware/message.php +++ b/resources/lang/en-GB/admin/hardware/message.php @@ -15,6 +15,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -80,6 +82,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/en-GB/admin/settings/general.php b/resources/lang/en-GB/admin/settings/general.php index b9e98e4c98d2..d756dbe8a6cc 100644 --- a/resources/lang/en-GB/admin/settings/general.php +++ b/resources/lang/en-GB/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/en-GB/general.php b/resources/lang/en-GB/general.php index 49886aae4a17..6243213e62b2 100644 --- a/resources/lang/en-GB/general.php +++ b/resources/lang/en-GB/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/en-GB/validation.php b/resources/lang/en-GB/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/en-GB/validation.php +++ b/resources/lang/en-GB/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/en-ID/admin/hardware/message.php b/resources/lang/en-ID/admin/hardware/message.php index 63a93cda5593..0b4a346a1070 100644 --- a/resources/lang/en-ID/admin/hardware/message.php +++ b/resources/lang/en-ID/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Aset tidak dibuat, coba lagi. :(', 'success' => 'Aset berhasil dibuat. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Anda harus memilih setidaknya satu aset dari daftar', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Aset tidak dicek, coba lagi', 'success' => 'Aset berhasil dicek.', diff --git a/resources/lang/en-ID/admin/settings/general.php b/resources/lang/en-ID/admin/settings/general.php index cf5a777b2573..83f4980df99b 100644 --- a/resources/lang/en-ID/admin/settings/general.php +++ b/resources/lang/en-ID/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/en-ID/general.php b/resources/lang/en-ID/general.php index e84728191ef8..82f7cbdc76df 100644 --- a/resources/lang/en-ID/general.php +++ b/resources/lang/en-ID/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Tanggal Pembelian', 'qty' => 'JML', 'quantity' => 'Jumlah', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Siap digunakan', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/en-ID/validation.php b/resources/lang/en-ID/validation.php index b2946667299e..5b2bc44250e1 100644 --- a/resources/lang/en-ID/validation.php +++ b/resources/lang/en-ID/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/es-CO/account/general.php b/resources/lang/es-CO/account/general.php index df7820e87ef3..b727b63023a5 100644 --- a/resources/lang/es-CO/account/general.php +++ b/resources/lang/es-CO/account/general.php @@ -5,11 +5,11 @@ 'personal_access_token' => 'Credencial de acceso personal', 'personal_api_keys_success' => 'Clave API personal :key creada correctamente', 'here_is_api_key' => 'Aquí tiene su nueva credencial de acceso personal. Esta es la única vez que se mostrará, así que no la pierda. Ahora puede utilizar esta credencial para realizar solicitudes a la API.', - 'api_key_warning' => 'Al generar una credencial para el API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', + 'api_key_warning' => 'Al generar una credencial para la API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', 'api_base_url' => 'La url base de su API se encuentra en:', 'api_base_url_endpoint' => '/<endpoint>', 'api_token_expiration_time' => 'Las credenciales de la API están establecidas para expirar en:', - 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoints) del API y documentación adicional.', + 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoins) de la API y documentación adicional.', 'profile_updated' => 'La cuenta fue actualizada exitosamente', 'no_tokens' => 'No ha creado ninguna credencial de acceso personal.', 'enable_sounds' => 'Habilitar efectos de sonido', diff --git a/resources/lang/es-CO/admin/accessories/general.php b/resources/lang/es-CO/admin/accessories/general.php index 12f456686d9d..7b479fbbf4c7 100644 --- a/resources/lang/es-CO/admin/accessories/general.php +++ b/resources/lang/es-CO/admin/accessories/general.php @@ -5,17 +5,17 @@ 'accessory_name' => 'Nombre de accesorio', 'checkout' => 'Asignar accesorio', 'checkin' => 'Ingresar accesorio', - 'create' => 'Crear Accesorio', - 'edit' => 'Editar Accesorio', + 'create' => 'Crear accesorio', + 'edit' => 'Editar accesorio', 'eula_text' => 'Acuerdo de uso de la categoría', - 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor por predeterminado.', + 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor predeterminado.', 'require_acceptance' => 'Pedir a los usuarios confirmación de aceptación de los elementos en esta categoría.', 'no_default_eula' => 'No se encontró el acuerdo de uso predeterminado. Agregue unos en Configuración.', 'total' => 'Total ', 'remaining' => 'Disponibles', 'update' => 'Actualizar accesorio', - 'use_default_eula' => 'En su lugar, el acuerdo de uso predeterminado.', - 'use_default_eula_disabled' => 'En su lugar, use el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', + 'use_default_eula' => 'En su lugar, utilice el acuerdo de uso predeterminado.', + 'use_default_eula_disabled' => 'En su lugar, utilice el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', 'clone' => 'Clonar accesorio', 'delete_disabled' => 'Este accesorio no se puede eliminar aún porque algunos elementos todavía están asignados.', diff --git a/resources/lang/es-CO/admin/accessories/message.php b/resources/lang/es-CO/admin/accessories/message.php index 9f2ab0ae92b5..fdd1adb8da4f 100644 --- a/resources/lang/es-CO/admin/accessories/message.php +++ b/resources/lang/es-CO/admin/accessories/message.php @@ -8,7 +8,7 @@ 'create' => array( 'error' => 'El accesorio no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Accesorio creado satisfactoriamente.' + 'success' => 'Accesorio creado correctamente.' ), 'update' => array( diff --git a/resources/lang/es-CO/admin/accessories/table.php b/resources/lang/es-CO/admin/accessories/table.php index 689f74d94f95..70134246f6c2 100644 --- a/resources/lang/es-CO/admin/accessories/table.php +++ b/resources/lang/es-CO/admin/accessories/table.php @@ -5,7 +5,7 @@ 'eula_text' => 'Acuerdo de uso', 'id' => 'ID', 'require_acceptance' => 'Aceptación', - 'title' => 'Nombre de accesorio', + 'title' => 'Nombre del accesorio', ); diff --git a/resources/lang/es-CO/admin/asset_maintenances/form.php b/resources/lang/es-CO/admin/asset_maintenances/form.php index 3e06eed48878..dfda6be9c5b9 100644 --- a/resources/lang/es-CO/admin/asset_maintenances/form.php +++ b/resources/lang/es-CO/admin/asset_maintenances/form.php @@ -1,14 +1,14 @@ 'Tipo de mantenimiento de equipo', + 'asset_maintenance_type' => 'Tipo de mantenimiento del activo', 'title' => 'Título', 'start_date' => 'Fecha de inicio', 'completion_date' => 'Fecha de finalización', 'cost' => 'Costo', - 'is_warranty' => 'Mejora de la Garantía', + 'is_warranty' => 'Mejora de la garantía', 'asset_maintenance_time' => 'Duración del mantenimiento (en días)', 'notes' => 'Notas', - 'update' => 'Actualizar Mantenimiento de Equipo', - 'create' => 'Crear Mantenimiento de Equipo' + 'update' => 'Actualizar mantenimiento del activo', + 'create' => 'Crear mantenimiento del activo' ]; diff --git a/resources/lang/es-CO/admin/asset_maintenances/general.php b/resources/lang/es-CO/admin/asset_maintenances/general.php index d98b8dedef75..77c6a419f0f5 100644 --- a/resources/lang/es-CO/admin/asset_maintenances/general.php +++ b/resources/lang/es-CO/admin/asset_maintenances/general.php @@ -2,12 +2,12 @@ return [ 'asset_maintenances' => 'Mantenimiento de activos', - 'edit' => 'Editar Mantenimiento de Activos', - 'delete' => 'Eliminar Mantenimiento de Activos', - 'view' => 'Ver Detalles de Mantenimiento de Activos', - 'repair' => 'Reparación', + 'edit' => 'Editar mantenimiento del activo', + 'delete' => 'Eliminar mantenimiento del activo', + 'view' => 'Ver detalles del mantenimiento del activo', + 'repair' => 'Reparar', 'maintenance' => 'Mantenimiento', - 'upgrade' => 'Mejora', + 'upgrade' => 'Mejorar', 'calibration' => 'Calibración', 'software_support' => 'Soporte de software', 'hardware_support' => 'Soporte de hardware', diff --git a/resources/lang/es-CO/admin/asset_maintenances/message.php b/resources/lang/es-CO/admin/asset_maintenances/message.php index 9ddabb726248..5fe5b2cf8136 100644 --- a/resources/lang/es-CO/admin/asset_maintenances/message.php +++ b/resources/lang/es-CO/admin/asset_maintenances/message.php @@ -13,9 +13,9 @@ ], 'edit' => [ 'error' => 'El mantenimiento del activo no fue editado. Por favor, inténtelo de nuevo.', - 'success' => 'Mantenimiento de activo editado con éxito.', + 'success' => 'Mantenimiento del activo editado con éxito.', ], - 'asset_maintenance_incomplete' => 'Sin Completar', + 'asset_maintenance_incomplete' => 'Aún no se ha completado', 'warranty' => 'Garantía', - 'not_warranty' => 'Sin Garantía', + 'not_warranty' => 'Sin garantía', ]; diff --git a/resources/lang/es-CO/admin/asset_maintenances/table.php b/resources/lang/es-CO/admin/asset_maintenances/table.php index 2cbc929d5967..6da43b1c7731 100644 --- a/resources/lang/es-CO/admin/asset_maintenances/table.php +++ b/resources/lang/es-CO/admin/asset_maintenances/table.php @@ -1,7 +1,7 @@ 'Mantenimiento de Activos', + 'title' => 'Mantenimiento del activo', 'asset_name' => 'Nombre del activo', 'is_warranty' => 'Garantía', 'dl_csv' => 'Descargar CSV', diff --git a/resources/lang/es-CO/admin/companies/message.php b/resources/lang/es-CO/admin/companies/message.php index 2eccf6361120..8f2cb9323ea2 100644 --- a/resources/lang/es-CO/admin/companies/message.php +++ b/resources/lang/es-CO/admin/companies/message.php @@ -1,20 +1,20 @@ 'La Compañía no existe.', + 'does_not_exist' => 'La compañía no existe.', 'deleted' => 'Compañía eliminada', - 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtalo de nuevo. ', + 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtelo de nuevo. ', 'create' => [ - 'error' => 'La compañía no fue creada, por favor, inténtalo de nuevo.', - 'success' => 'La compañía fue creada con éxito.', + 'error' => 'La compañía no fue creada, por favor, inténtelo de nuevo.', + 'success' => 'Compañía creada satisfactoriamente.', ], 'update' => [ - 'error' => 'La compañía no fue actualizada, por favor, inténtalo de nuevo', + 'error' => 'La compañía no fue actualizada, por favor, inténtelo de nuevo', 'success' => 'Compañía actualizada correctamente.', ], 'delete' => [ 'confirm' => '¿Está seguro de que quiere eliminar esta compañía?', - 'error' => 'Hubo un problema eliminando la compañía. Por favor, inténtalo de nuevo.', - 'success' => 'La compañía fue eliminada con éxito.', + 'error' => 'Hubo un problema eliminando la compañía. Por favor, inténtelo de nuevo.', + 'success' => 'La compañía fue eliminada correctamente.', ], ]; diff --git a/resources/lang/es-CO/admin/companies/table.php b/resources/lang/es-CO/admin/companies/table.php index dc5d0c230f1c..1cc605dfd19b 100644 --- a/resources/lang/es-CO/admin/companies/table.php +++ b/resources/lang/es-CO/admin/companies/table.php @@ -1,11 +1,11 @@ 'Compañías', - 'create' => 'Crear Compañía', + 'create' => 'Crear una compañía', 'email' => 'Correo electrónico de la compañía', 'title' => 'Compañía', 'phone' => 'Teléfono de la compañía', - 'update' => 'Actualizar Compañía', - 'name' => 'Nombre de Compañía', + 'update' => 'Actualizar compañía', + 'name' => 'Nombre de la compañía', 'id' => 'ID', ); diff --git a/resources/lang/es-CO/admin/components/general.php b/resources/lang/es-CO/admin/components/general.php index 6235de87d30c..4f4a97e381a4 100644 --- a/resources/lang/es-CO/admin/components/general.php +++ b/resources/lang/es-CO/admin/components/general.php @@ -1,16 +1,16 @@ 'Nombre de Componente', + 'component_name' => 'Nombre del componente', 'checkin' => 'Ingresar componente', 'checkout' => 'Asignar componente', - 'cost' => 'Costo de Compra', - 'create' => 'Crear Componente', - 'edit' => 'Editar Componente', + 'cost' => 'Costo de compra', + 'create' => 'Crear componente', + 'edit' => 'Editar componente', 'date' => 'Fecha de compra', 'order' => 'Número de orden', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Componente', + 'update' => 'Actualizar componente', 'checkin_limit' => 'La cantidad ingresada debe ser igual o menor que :assigned_qty' ); diff --git a/resources/lang/es-CO/admin/components/message.php b/resources/lang/es-CO/admin/components/message.php index 6fd88169b6f9..a936648f13f6 100644 --- a/resources/lang/es-CO/admin/components/message.php +++ b/resources/lang/es-CO/admin/components/message.php @@ -11,13 +11,13 @@ 'update' => array( 'error' => 'El componente no se actualizó, por favor inténtelo de nuevo', - 'success' => 'Componente actualizado con éxito.' + 'success' => 'Componente actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este componente?', 'error' => 'Hubo un problema eliminando el componente. Por favor, inténtelo de nuevo.', - 'success' => 'El componente fue eliminado con éxito.' + 'success' => 'El componente fue borrado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-CO/admin/components/table.php b/resources/lang/es-CO/admin/components/table.php index 72f0b866d23b..8f4de5c93ce1 100644 --- a/resources/lang/es-CO/admin/components/table.php +++ b/resources/lang/es-CO/admin/components/table.php @@ -1,5 +1,5 @@ 'Nombre del Componente', + 'title' => 'Nombre de componente', ); diff --git a/resources/lang/es-CO/admin/consumables/general.php b/resources/lang/es-CO/admin/consumables/general.php index ea86ba12446b..579a705fb20f 100644 --- a/resources/lang/es-CO/admin/consumables/general.php +++ b/resources/lang/es-CO/admin/consumables/general.php @@ -2,11 +2,11 @@ return array( 'checkout' => 'Asignar consumible a usuario', - 'consumable_name' => 'Nombre del Consumible', - 'create' => 'Crear Consumible', - 'item_no' => 'Elemento No.', + 'consumable_name' => 'Nombre del consumible', + 'create' => 'Crear consumible', + 'item_no' => 'Artículo No.', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Consumibles', + 'update' => 'Actualizar consumible', 'inventory_warning' => 'El inventario de este consumible está por debajo de la cantidad mínima de :min_count', ); diff --git a/resources/lang/es-CO/admin/consumables/message.php b/resources/lang/es-CO/admin/consumables/message.php index 1230f6281fe9..ca3da8895a50 100644 --- a/resources/lang/es-CO/admin/consumables/message.php +++ b/resources/lang/es-CO/admin/consumables/message.php @@ -12,13 +12,13 @@ 'update' => array( 'error' => 'El consumible no fue actualizado, por favor, inténtelo de nuevo', - 'success' => 'Consumible actualizado con éxito.' + 'success' => 'Consumible actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este consumible?', 'error' => 'Hubo un problema al eliminar el consumible. Por favor inténtelo de nuevo.', - 'success' => 'El consumible fue eliminado con éxito.' + 'success' => 'El consumible ha sido eliminado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-CO/admin/consumables/table.php b/resources/lang/es-CO/admin/consumables/table.php index befcfc511b36..2e346e29622e 100644 --- a/resources/lang/es-CO/admin/consumables/table.php +++ b/resources/lang/es-CO/admin/consumables/table.php @@ -1,5 +1,5 @@ 'Nombre del Consumible', + 'title' => 'Nombre del consumible', ); diff --git a/resources/lang/es-CO/admin/custom_fields/general.php b/resources/lang/es-CO/admin/custom_fields/general.php index 802ff7d59ee2..2179aa89f91b 100644 --- a/resources/lang/es-CO/admin/custom_fields/general.php +++ b/resources/lang/es-CO/admin/custom_fields/general.php @@ -2,26 +2,26 @@ return [ 'custom_fields' => 'Campos personalizados', - 'manage' => 'Gestionar', + 'manage' => 'Administrar', 'field' => 'Campo', 'about_fieldsets_title' => 'Acerca de los grupos de campos', 'about_fieldsets_text' => 'Los grupos de campos le permiten agrupar campos personalizados que se reutilizan frecuentemente para determinados modelos de activos.', - 'custom_format' => 'Formato de Regex personalizado...', + 'custom_format' => 'Expresión regular personalizada...', 'encrypt_field' => 'Cifrar el valor de este campo en la base de datos', 'encrypt_field_help' => 'ADVERTENCIA: Cifrar un campo hace que no se pueda buscar.', 'encrypted' => 'Cifrado', 'fieldset' => 'Grupo de campos', 'qty_fields' => 'Campos de cantidad', - 'fieldsets' => 'Grupo de campos', + 'fieldsets' => 'Grupos de campos', 'fieldset_name' => 'Nombre del grupo de campos', - 'field_name' => 'Nombre del Campo', - 'field_values' => 'Valores del Campo', - 'field_values_help' => 'Añade opciones seleccionables, una por línea. Líneas en blanco además de la primera será ignorada.', - 'field_element' => 'Elemento de Formulario', + 'field_name' => 'Nombre del campo', + 'field_values' => 'Valores de los campos', + 'field_values_help' => 'Agregue opciones seleccionables, una por línea. Se ignorarán las líneas en blanco que no sean la primera.', + 'field_element' => 'Elemento de formulario', 'field_element_short' => 'Elemento', 'field_format' => 'Formato', - 'field_custom_format' => 'Formato Regex Personalizado', - 'field_custom_format_help' => 'Este campo te permite usar una expresión regex para la validación. Este debe empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podrías usar regex:/^[0-9]{15}$/.', + 'field_custom_format' => 'Expresión regular personalizada', + 'field_custom_format_help' => 'Este campo le permite usar una expresión regular para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podría usar regex:/^[0-9]{15}$/.', 'required' => 'Obligatorio', 'req' => 'Obl.', 'used_by_models' => 'Usado por los modelos', @@ -30,30 +30,30 @@ 'update_fieldset' => 'Actualizar grupo de campos', 'fieldset_does_not_exist' => 'El grupo de campos :id no existe', 'fieldset_updated' => 'Se actualizó el grupo de campos', - 'create_fieldset_title' => 'Crear nuevo grupo de campos', - 'create_field' => 'Nuevo Campo Personalizado', + 'create_fieldset_title' => 'Crear un nuevo grupo de campos', + 'create_field' => 'Nuevo campo personalizado', 'create_field_title' => 'Crear un nuevo campo personalizado', 'value_encrypted' => 'El valor de este campo está cifrado en la base de datos. Solo los administradores pueden ver el valor descifrado', - 'show_in_email' => '¿Incluir el campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', - 'show_in_email_short' => 'Incluye en correos electrónicos.', + 'show_in_email' => '¿Incluir el valor de este campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', + 'show_in_email_short' => 'Incluir en los correos electrónicos.', 'help_text' => 'Texto de ayuda', 'help_text_description' => 'Este es un texto opcional que aparecerá debajo de los campos del formulario cuando se edite un activo para proporcionar contexto adicional.', - 'about_custom_fields_title' => 'Acerca de campos personalizados', + 'about_custom_fields_title' => 'Acerca de los campos personalizados', 'about_custom_fields_text' => 'Los campos personalizados le permiten añadir atributos arbitrarios a los activos.', 'add_field_to_fieldset' => 'Añadir campo al grupo de campos', - 'make_optional' => 'Requerido - haga clic para hacerlo opcional', - 'make_required' => 'Opcional - haga clic para hacer necesario', + 'make_optional' => 'Obligatorio - haga clic para hacerlo opcional', + 'make_required' => 'Opcional - haga clic para que sea obligatorio', 'reorder' => 'Reordenar', 'db_field' => 'Campo en base de datos', 'db_convert_warning' => 'ADVERTENCIA. Este campo está en la tabla de campos personalizados como :db_column pero debe ser :expected.', - 'is_unique' => 'Este valor debe ser único en todos los activos', + 'is_unique' => 'Este valor debe ser único para todos los activos', 'unique' => 'Único', 'display_in_user_view' => 'Permitir al usuario ver estos valores en la página "Ver elementos asignados"', 'display_in_user_view_table' => 'Visible para el usuario', 'auto_add_to_fieldsets' => 'Añadir automáticamente a cada nuevo grupo de campos', 'add_to_preexisting_fieldsets' => 'Añadir a cualquier grupo de campos existente', 'show_in_listview' => 'Mostrar por defecto en las consultas. Los usuarios autorizados podrán mostrar/ocultar a través del selector de columnas', - 'show_in_listview_short' => 'Mostrar en listas', + 'show_in_listview_short' => 'Mostrar en las listas', 'show_in_requestable_list_short' => 'Mostrar en la lista de activos que se pueden solicitar', 'show_in_requestable_list' => 'Mostrar el valor en la lista de activos que se pueden solicitar. Los campos cifrados no se mostrarán', 'encrypted_options' => 'Este campo está cifrado, por lo que algunas opciones de visualización no estarán disponibles.', diff --git a/resources/lang/es-CO/admin/custom_fields/message.php b/resources/lang/es-CO/admin/custom_fields/message.php index fcfaca8b494e..01bc9c7c5d8d 100644 --- a/resources/lang/es-CO/admin/custom_fields/message.php +++ b/resources/lang/es-CO/admin/custom_fields/message.php @@ -9,18 +9,18 @@ 'create' => array( 'error' => 'El campo no fue creado, por favor, inténtalo de nuevo.', - 'success' => 'Campo creado con éxito.', - 'assoc_success' => 'Campo correctamente añadido al grupo.' + 'success' => 'Campo creado correctamente.', + 'assoc_success' => 'Campo correctamente añadido al grupo de campos.' ), 'update' => array( - 'error' => 'El campo no fue actualizado, por favor inténtalo de nuevo', - 'success' => 'Campo actualizado con éxito.' + 'error' => 'El campo no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'Campo actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que quiere eliminar este campo?', - 'error' => 'Hubo un problema al eliminar el campo. Por favor inténtalo de nuevo.', + 'error' => 'Hubo un problema al eliminar el campo. Por favor, inténtelo de nuevo.', 'success' => 'Este campo fue eliminado con éxito.', 'in_use' => 'El campo aún está en uso.', ) @@ -45,14 +45,14 @@ 'confirm' => '¿Está seguro de que quiere eliminar este grupo de campos?', 'error' => 'Hubo un problema al eliminar el grupo de campos. Inténtelo de nuevo.', 'success' => 'El grupo de campos se eliminó correctamente.', - 'in_use' => 'El grupo de campos está aún en uso.', + 'in_use' => 'El grupo de campos aún está en uso.', ) ), 'fieldset_default_value' => array( - 'error' => 'Error al validar los valores por defecto del grupo de campos.', + 'error' => 'Error al validar los valores predeterminados del grupo de campos.', ), diff --git a/resources/lang/es-CO/admin/departments/message.php b/resources/lang/es-CO/admin/departments/message.php index 515d79d0f430..eabf4774d8ff 100644 --- a/resources/lang/es-CO/admin/departments/message.php +++ b/resources/lang/es-CO/admin/departments/message.php @@ -7,7 +7,7 @@ 'assoc_users' => 'Este departamento está actualmente asociado con al menos un usuario y no puede ser eliminado. Por favor, actualice sus usuarios para que no hagan referencia a este departamento e inténtelo de nuevo. ', 'create' => array( 'error' => 'El departamento no fue creado, por favor, inténtelo de nuevo.', - 'success' => 'Departamento fue creado con éxito.' + 'success' => 'Departamento creado correctamente.' ), 'update' => array( 'error' => 'El departamento no fue actualizado, por favor inténtelo de nuevo', @@ -16,7 +16,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este departamento?', 'error' => 'Hubo un problema al borrar el departamento. Por favor, inténtelo de nuevo.', - 'success' => 'El departamento fue eliminado con éxito.' + 'success' => 'El departamento fue eliminado correctamente.' ) ); diff --git a/resources/lang/es-CO/admin/departments/table.php b/resources/lang/es-CO/admin/departments/table.php index 8a6b41c314c5..da02f3e3a3f2 100644 --- a/resources/lang/es-CO/admin/departments/table.php +++ b/resources/lang/es-CO/admin/departments/table.php @@ -3,9 +3,9 @@ return array( 'id' => 'ID', - 'name' => 'Nombre de Departamento', + 'name' => 'Nombre del departamento', 'manager' => 'Supervisor', 'location' => 'Ubicación', - 'create' => 'Crear Departamento', + 'create' => 'Crear departamento', 'update' => 'Actualizar departamento', ); diff --git a/resources/lang/es-CO/admin/groups/message.php b/resources/lang/es-CO/admin/groups/message.php index 2a5f03555c43..3fc20db4b991 100644 --- a/resources/lang/es-CO/admin/groups/message.php +++ b/resources/lang/es-CO/admin/groups/message.php @@ -4,7 +4,7 @@ 'group_exists' => '!El grupo ya existe!', 'group_not_found' => 'El ID del grupo :id no existe.', - 'group_name_required' => 'El campo nombre es requerido', + 'group_name_required' => 'El campo nombre es obligatorio', 'success' => array( 'create' => 'El grupo fue creado exitosamente.', @@ -14,7 +14,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este grupo?', - 'create' => 'Hubo un problema creando el grupo. Por favor intente nuevamente.', + 'create' => 'Hubo un problema creando el grupo. Por favor, intente nuevamente.', 'update' => 'Hubo un problema actualizando el grupo. Por favor, intente nuevamente.', 'delete' => 'Hubo un problema eliminando el grupo. Por favor, intente nuevamente.', ), diff --git a/resources/lang/es-CO/admin/groups/titles.php b/resources/lang/es-CO/admin/groups/titles.php index 5ede05760453..b6aaf389851c 100644 --- a/resources/lang/es-CO/admin/groups/titles.php +++ b/resources/lang/es-CO/admin/groups/titles.php @@ -1,13 +1,13 @@ 'Acerca de Grupos', + 'about_groups_title' => 'Acerca de los grupos', 'about_groups' => 'Los grupos se utilizan para generalizar los permisos de usuario.', - 'group_management' => 'Gestión de grupos', - 'create' => 'Crear un Nuevo Grupo', - 'update' => 'Editar Grupo', + 'group_management' => 'Administración de grupos', + 'create' => 'Crear un grupo nuevo', + 'update' => 'Editar grupo', 'group_name' => 'Nombre del Grupo', - 'group_admin' => 'Administración del Grupo', + 'group_admin' => 'Grupo administrador', 'allow' => 'Permitir', 'deny' => 'Denegar', 'permission' => 'Permiso', diff --git a/resources/lang/es-CO/admin/hardware/message.php b/resources/lang/es-CO/admin/hardware/message.php index b86ae2f515a7..9c342250180d 100644 --- a/resources/lang/es-CO/admin/hardware/message.php +++ b/resources/lang/es-CO/admin/hardware/message.php @@ -6,7 +6,7 @@ 'does_not_exist' => 'El recurso no existe.', 'does_not_exist_var'=> 'Activo con placa :asset_tag no encontrado.', 'no_tag' => 'No se ha proporcionado ninguna placa de activo.', - 'does_not_exist_or_not_requestable' => 'Ese activo no existe o no es solicitable.', + 'does_not_exist_or_not_requestable' => 'Ese activo no existe o no puede ser solicitado.', 'assoc_users' => 'Actualmente este activo está asignado a un usuario y no puede ser eliminado. Por favor, primero ingrese el activo y vuelva a intentarlo. ', 'warning_audit_date_mismatch' => 'La próxima fecha de auditoría de este activo (:next_audit_date) es anterior a la última fecha de auditoría (:last_audit_date). Por favor, actualice la próxima fecha de auditoría.', @@ -14,6 +14,8 @@ 'error' => 'El activo no fue creado, por favor, inténtelo de nuevo. :(', 'success' => 'Activo creado con éxito. :)', 'success_linked' => 'Activo con placa :tag creado con éxito. Haga clic aquí para ver.', + 'multi_success_linked' => 'Activo con etiqueta :links fue creado exitosamente.|:count activos fueron creados correctamente. :links.', + 'partial_failure' => 'No se ha podido crear un activo: Motivo: :failures|No se pudieron crear :count activos. Motivos: :faiulres', ], 'update' => [ @@ -68,7 +70,7 @@ 'confirm' => '¿Está seguro de que desea eliminar este activo?', 'error' => 'Hubo un problema al eliminar el activo. Por favor, inténtelo de nuevo.', 'nothing_updated' => 'No se seleccionaron activos, por lo que no se eliminó nada.', - 'success' => 'El recurso se ha eliminado correctamente.', + 'success' => 'El activo se ha eliminado correctamente.', ], 'checkout' => [ @@ -76,7 +78,12 @@ 'success' => 'Equipo asignado correctamente.', 'user_does_not_exist' => 'Este usuario no es correcto. Por favor, inténtelo de nuevo.', 'not_available' => '¡Ese equipo no está disponible para ser asignado!', - 'no_assets_selected' => 'Debes seleccionar al menos un equipo de la lista', + 'no_assets_selected' => 'Debe seleccionar al menos un elemento de la lista', + ], + + 'multi-checkout' => [ + 'error' => 'El activo no fue asignado, por favor, intente nuevamente|Los activos no fueron asignados, por favor, intente nuevamente', + 'success' => 'El activo fue asignado correctamente|Los activos fueron asignados correctamente.', ], 'checkin' => [ diff --git a/resources/lang/es-CO/admin/kits/general.php b/resources/lang/es-CO/admin/kits/general.php index 62db6b923b3e..d1f9c313a301 100644 --- a/resources/lang/es-CO/admin/kits/general.php +++ b/resources/lang/es-CO/admin/kits/general.php @@ -1,7 +1,7 @@ 'Acerca de Kits predefinidos', + 'about_kits_title' => 'Acerca de kits predefinidos', 'about_kits_text' => 'Los kits predefinidos le permiten rápidamente asignar un conjunto de elementos (activos, licencias, etc.) a un usuario. Esto puede ser útil cuando su proceso de incorporación de usuarios es similar para muchos usuarios y todos reciben los mismos elementos.', 'checkout' => 'Asignar kit ', 'create_success' => 'Kit se ha creado correctamente.', @@ -16,26 +16,26 @@ 'append_accessory' => 'Añadir accesorio', 'update_appended_accessory' => 'Actualizar accesorio añadido', 'append_consumable' => 'Añadir consumible', - 'update_appended_consumable' => 'Actualizar consumible adjunto', + 'update_appended_consumable' => 'Actualizar consumible añadido', 'append_license' => 'Añadir licencia', 'update_appended_license' => 'Actualizar licencia añadida', 'append_model' => 'Añadir modelo', 'update_appended_model' => 'Actualizar modelo añadido', - 'license_error' => 'Licencia ya adjunta al kit', + 'license_error' => 'Licencia ya vinculada al kit', 'license_added_success' => 'Licencia añadida correctamente', 'license_updated' => 'La licencia fue actualizada correctamente', 'license_none' => 'La licencia no existe', - 'license_detached' => 'Licencia fue separada con éxito', + 'license_detached' => 'Licencia desvinculada correctamente', 'consumable_added_success' => 'Consumible añadido correctamente', 'consumable_updated' => 'El consumible fue actualizado correctamente', 'consumable_error' => 'Consumible ya conectado al kit', 'consumable_deleted' => 'El borrado fue exitoso', 'consumable_none' => 'El consumible no existe', - 'consumable_detached' => 'Consumible fue separado con éxito', + 'consumable_detached' => 'Consumible desvinculado correctamente', 'accessory_added_success' => 'Accesorio añadido correctamente', 'accessory_updated' => 'El accesorio fue actualizado correctamente', - 'accessory_detached' => 'Accesorio fue separado con éxito', - 'accessory_error' => 'El accesorio ya está conectado al kit', + 'accessory_detached' => 'Accesorio desvinculado correctamente', + 'accessory_error' => 'El accesorio ya está vinculado al kit', 'accessory_deleted' => 'El borrado fue exitoso', 'accessory_none' => 'El accesorio no existe', 'checkout_success' => 'Asignación correcta', @@ -44,8 +44,8 @@ 'kit_created' => 'Kit creado correctamente', 'kit_updated' => 'El kit fue actualizado correctamente', 'kit_not_found' => 'Kit no encontrado', - 'kit_deleted' => 'Kit eliminado correctamente', + 'kit_deleted' => 'El kit fue eliminado correctamente', 'kit_model_updated' => 'El modelo fue actualizado correctamente', - 'kit_model_detached' => 'Modelo fue separado con éxito', + 'kit_model_detached' => 'El modelo fue desvinculado correctamente', 'model_already_attached' => 'Modelo ya vinculado al kit', ]; diff --git a/resources/lang/es-CO/admin/labels/message.php b/resources/lang/es-CO/admin/labels/message.php index 01006397cb89..f97118deb285 100644 --- a/resources/lang/es-CO/admin/labels/message.php +++ b/resources/lang/es-CO/admin/labels/message.php @@ -2,9 +2,9 @@ return [ - 'invalid_return_count' => 'El recuento no es válido desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_type' => 'Tipo no válido devuelto desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_value' => 'Valor no válido devuelto de :name. Esperado :expected, obtenido :actual.', + 'invalid_return_count' => 'Cantidad incorrecta devuelta por :name. Se esperaba :expected, obtenido :actual.', + 'invalid_return_type' => 'Tipo no válido devuelto por :name. Esperado :expected, obtenido :actual.', + 'invalid_return_value' => 'Valor no válido devuelto por :name. Esperado :expected, obtenido :actual.', 'does_not_exist' => 'La etiqueta no existe', diff --git a/resources/lang/es-CO/admin/labels/table.php b/resources/lang/es-CO/admin/labels/table.php index 055d28c169ef..fab4d8f9dba4 100644 --- a/resources/lang/es-CO/admin/labels/table.php +++ b/resources/lang/es-CO/admin/labels/table.php @@ -3,7 +3,7 @@ return [ 'example_company' => 'Compañía de prueba limitada', 'example_defaultloc' => 'Construcción 1', - 'example_category' => 'Probar categoría', + 'example_category' => 'Categoría de prueba', 'example_location' => 'Edificio 2', 'example_manufacturer' => 'Test Manufacturing Inc.', 'example_model' => 'Modelo de prueba', diff --git a/resources/lang/es-CO/admin/licenses/form.php b/resources/lang/es-CO/admin/licenses/form.php index 98fac63a4fdd..fcb84c54b865 100644 --- a/resources/lang/es-CO/admin/licenses/form.php +++ b/resources/lang/es-CO/admin/licenses/form.php @@ -5,9 +5,9 @@ 'asset' => 'Activo', 'checkin' => 'Ingresar', 'create' => 'Crear licencia', - 'expiration' => 'Fecha de caducidad', + 'expiration' => 'Fecha de vencimiento', 'license_key' => 'Clave del producto', - 'maintained' => 'Mantenido', + 'maintained' => 'Tiene mantenimiento', 'name' => 'Nombre del software', 'no_depreciation' => 'No depreciar', 'purchase_order' => 'Número de orden de compra', @@ -17,6 +17,6 @@ 'termination_date' => 'Fecha de finalización', 'to_email' => 'Correo electrónico asociado a la licencia', 'to_name' => 'Nombre de la persona asociada a la licencia', - 'update' => 'Actualizar Licencia', + 'update' => 'Actualizar licencia', 'checkout_help' => 'Debe asignar una licencia a un activo de hardware o a una persona. Puede seleccionar ambos, pero el propietario del activo debe coincidir con la persona a la que está asignado el activo.' ); diff --git a/resources/lang/es-CO/admin/licenses/general.php b/resources/lang/es-CO/admin/licenses/general.php index be9b58f9654e..b0d120339da1 100644 --- a/resources/lang/es-CO/admin/licenses/general.php +++ b/resources/lang/es-CO/admin/licenses/general.php @@ -6,7 +6,7 @@ 'checkin' => 'Ingresar licencia', 'checkout_history' => 'Historial de asignaciones', 'checkout' => 'Asignar licencia', - 'edit' => 'Editar Licencia', + 'edit' => 'Editar licencia', 'filetype_info' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', 'clone' => 'Clonar licencia', 'history_for' => 'Historial para ', @@ -18,8 +18,8 @@ 'seats' => 'Total de licencias', 'software_licenses' => 'Licencias de software', 'user' => 'Usuario', - 'view' => 'Ver Licencia', - 'delete_disabled' => 'Esta licencia no se puede eliminar aún está asignada a algunos usuarios.', + 'view' => 'Ver licencia', + 'delete_disabled' => 'Esta licencia no se puede eliminar porque todavía está asignada.', 'bulk' => [ 'checkin_all' => [ @@ -47,6 +47,6 @@ ], ], - 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede considerar la compra de más licencias.', + 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede que desee considerar la compra de más licencias.', 'below_threshold_short' => 'Este artículo está por debajo de la cantidad mínima requerida.', ); diff --git a/resources/lang/es-CO/admin/licenses/message.php b/resources/lang/es-CO/admin/licenses/message.php index 17417a13aaa9..e3fd7521e32d 100644 --- a/resources/lang/es-CO/admin/licenses/message.php +++ b/resources/lang/es-CO/admin/licenses/message.php @@ -14,16 +14,16 @@ 'create' => array( 'error' => 'La licencia no fue creada, por favor inténtelo de nuevo.', - 'success' => 'Licencia creada con éxito.' + 'success' => 'Categoría creada correctamente.' ), 'deletefile' => array( - 'error' => 'Archivo no eliminado. Vuelve a intentarlo.', + 'error' => 'Archivo no eliminado. Por favor, vuelva a intentarlo.', 'success' => 'Archivo eliminado correctamente.', ), 'upload' => array( - 'error' => 'Archivo(s) no cargados. Por favor, inténtelo de nuevo.', + 'error' => 'Archivo(s) no cargado(s). Por favor, inténtelo de nuevo.', 'success' => 'Archivo(s) cargados correctamente.', 'nofiles' => 'No seleccionó ningún archivo para ser cargado, o el archivo que seleccionó es demasiado grande', 'invalidfiles' => 'Uno o más de sus archivos es demasiado grande o es un tipo de archivo que no está permitido. Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, rar, rtf, xml y lic.', diff --git a/resources/lang/es-CO/admin/manufacturers/message.php b/resources/lang/es-CO/admin/manufacturers/message.php index 039da2269653..4e25322f0cd1 100644 --- a/resources/lang/es-CO/admin/manufacturers/message.php +++ b/resources/lang/es-CO/admin/manufacturers/message.php @@ -8,17 +8,17 @@ 'create' => array( 'error' => 'El fabricante no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Fabricante creado con éxito.' + 'success' => 'Fabricante creado exitosamente.' ), 'update' => array( - 'error' => 'El fabricante no fue actualizado, por favor inténtelo de nuevo', - 'success' => 'El fabricante se ha actualizado correctamente.' + 'error' => 'El fabricante no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante se ha actualizado exitosamente.' ), 'restore' => array( - 'error' => 'El fabricante no ha sido restaurado, por favor inténtalo de nuevo', - 'success' => 'Fabricante restaurado con éxito.' + 'error' => 'El fabricante no fue restaurado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante fue restaurado exitosamente.' ), 'delete' => array( diff --git a/resources/lang/es-CO/admin/manufacturers/table.php b/resources/lang/es-CO/admin/manufacturers/table.php index 737445a60ca3..a29fe35d387b 100644 --- a/resources/lang/es-CO/admin/manufacturers/table.php +++ b/resources/lang/es-CO/admin/manufacturers/table.php @@ -1,7 +1,7 @@ 'Acerca de fabricantes', + 'about_manufacturers_title' => 'Sobre los fabricantes', 'about_manufacturers_text' => 'Los fabricantes son las empresas que crean sus activos. Aquí puede almacenar importante información de contacto para soporte, la cual se mostrará en las páginas de detalle de sus activos.', 'asset_manufacturers' => 'Fabricantes de activos', 'create' => 'Crear fabricante', diff --git a/resources/lang/es-CO/admin/models/general.php b/resources/lang/es-CO/admin/models/general.php index 5ee81314c16d..531ef49c5afb 100644 --- a/resources/lang/es-CO/admin/models/general.php +++ b/resources/lang/es-CO/admin/models/general.php @@ -1,16 +1,16 @@ 'Acerca de Modelos de Activos', + 'about_models_title' => 'Acerca de los modelos de activos', 'about_models_text' => 'Los modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', 'deleted' => 'Este modelo ha sido eliminado.', - 'bulk_delete' => 'Eliminar Modelos de Activos', + 'bulk_delete' => 'Eliminación masiva de modelos de activos', 'bulk_delete_help' => 'Utilice las casillas a continuación para confirmar la eliminación de los modelos de activos seleccionados. Los modelos de activos que tienen activos asociados a ellos no se pueden eliminar hasta que los activos estén asociados con un modelo diferente.', 'bulk_delete_warn' => 'Está a punto de eliminar un modelo de activo.|Está a punto de eliminar :model_count modelos de activos.', 'restore' => 'Restaurar modelo', 'requestable' => 'Los usuarios pueden solicitar este modelo', - 'show_mac_address' => 'Mostrar campo de dirección MAC en los activos de este modelo', - 'view_deleted' => 'Vista eliminada', + 'show_mac_address' => 'Mostrar el campo de dirección MAC en los activos de este modelo', + 'view_deleted' => 'Ver borrados', 'view_models' => 'Ver modelos', 'fieldset' => 'Grupo de campos', 'no_custom_field' => 'No hay campos personalizados', diff --git a/resources/lang/es-CO/admin/models/message.php b/resources/lang/es-CO/admin/models/message.php index e6aab2c07d26..0e426f58eca5 100644 --- a/resources/lang/es-CO/admin/models/message.php +++ b/resources/lang/es-CO/admin/models/message.php @@ -32,7 +32,7 @@ ), 'bulkedit' => array( - 'error' => 'Ningún campo ha cambiado, no hay nada que actualizar.', + 'error' => 'Ningún cambio fue cambiado, así que nada se actualizó.', 'success' => 'Modelo actualizado correctamente. |:model_count modelos actualizados correctamente.', 'warn' => 'Está a punto de actualizar las propiedades del siguiente modelo:|Está a punto de editar las propiedades de los siguientes :model_count modelos:', diff --git a/resources/lang/es-CO/admin/reports/general.php b/resources/lang/es-CO/admin/reports/general.php index d2056b1b5630..cf62a35b87ef 100644 --- a/resources/lang/es-CO/admin/reports/general.php +++ b/resources/lang/es-CO/admin/reports/general.php @@ -1,7 +1,7 @@ 'Seleccione las opciones que desea para el informe de activos.', + 'info' => 'Seleccione las opciones que desee para su informe de activos.', 'deleted_user' => 'Usuario eliminado', 'send_reminder' => 'Enviar recordatorio', 'reminder_sent' => 'Recordatorio enviado', @@ -9,9 +9,9 @@ 'acceptance_request' => 'Solicitud de aceptación', 'custom_export' => [ 'user_address' => 'Dirección de usuario', - 'user_city' => 'Ciudad del Usuario', + 'user_city' => 'Ciudad del usuario', 'user_state' => 'Estado del usuario', - 'user_country' => 'País de usuario', - 'user_zip' => 'Usuario Zip' + 'user_country' => 'País del usuario', + 'user_zip' => 'Código postal del usuario' ] ]; \ No newline at end of file diff --git a/resources/lang/es-CO/admin/settings/general.php b/resources/lang/es-CO/admin/settings/general.php index a6b7bf86c7af..c432f314a9f1 100644 --- a/resources/lang/es-CO/admin/settings/general.php +++ b/resources/lang/es-CO/admin/settings/general.php @@ -66,7 +66,7 @@ 'eula_markdown' => 'Estos acuerdos de uso permiten markdown estilo Github.', 'favicon' => 'Favicon', 'favicon_format' => 'Los tipos de archivo aceptados son ico, png y gif. Es posible que otros formatos de imagen no funcionen en todos los navegadores.', - 'favicon_size' => 'Favicons deben ser imágenes cuadradas, 16x16 píxeles.', + 'favicon_size' => 'Los Favicons deben ser imágenes cuadradas, de 16x16 píxeles.', 'footer_text' => 'Texto adicional en el pie de página ', 'footer_text_help' => 'Este texto aparecerá en el lado derecho del pie de página. Los enlaces son permitidos usando markdown estilo Github. Los saltos de línea, encabezados, imágenes, etc. pueden dar lugar a resultados impredecibles.', 'general_settings' => 'Configuración general', @@ -326,7 +326,7 @@ 'localization_keywords' => 'localización, moneda, local, ubicación, zona horaria, internacional, internacionalización, idioma, traducción', 'localization_help' => 'Idioma, visualización de la fecha', 'notifications' => 'Notificaciones', - 'notifications_help' => 'Configuración de alertas por email y auditoría', + 'notifications_help' => 'Configuración de alertas por correo electrónico y de auditoría', 'asset_tags_help' => 'Incrementos y prefijos', 'labels' => 'Etiquetas', 'labels_title' => 'Actualizar configuración de etiquetas', @@ -361,7 +361,7 @@ 'label2_2d_type_help' => 'Formato para códigos de barras 2D', 'label2_2d_target' => 'Apuntamiento del código de barras 2D', 'label2_2d_target_help' => 'La URL a la que apunta el código de barras 2D cuando se escanea', - 'label2_fields' => 'Definiciones de campo', + 'label2_fields' => 'Definiciones del campo', 'label2_fields_help' => 'Los campos se pueden añadir, eliminar y reordenar en la columna izquierda. Para cada campo, se pueden agregar, eliminar y reordenar múltiples opciones para etiquetas y para orígenes de datos en la columna derecha.', 'help_asterisk_bold' => 'Texto introducido como **texto** se mostrará como negrita', 'help_blank_to_use' => 'Deje en blanco para usar el valor de :setting_name', @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Advertencia para próximos ingresos', 'due_checkin_days_help' => '¿Cuántos días antes de la fecha prevista de ingreso de un activo debe figurar en la página «Próximos a ingresar»?', + 'no_groups' => 'Todavía no se han creado grupos. Para agregar uno, visiteConfiguración de administración > Grupos de permisos.', ]; diff --git a/resources/lang/es-CO/admin/settings/message.php b/resources/lang/es-CO/admin/settings/message.php index c3df16d04e1d..e7f45c3e7161 100644 --- a/resources/lang/es-CO/admin/settings/message.php +++ b/resources/lang/es-CO/admin/settings/message.php @@ -9,7 +9,7 @@ 'backup' => [ 'delete_confirm' => '¿Está seguro de que desea eliminar este archivo de respaldo? Esta acción no puede se puede deshacer. ', 'file_deleted' => 'El archivo de copia de seguridad se ha eliminado correctamente. ', - 'generated' => 'Se ha creado un nuevo archivo de copia de seguridad satisfactoriamente.', + 'generated' => 'Se ha creado correctamente un nuevo archivo de copia de seguridad.', 'file_not_found' => 'Ese archivo de copia de seguridad no se pudo encontrar en el servidor.', 'restore_warning' => 'Sí, restaurarlo. Reconozco que esto sobrescribirá cualquier dato existente actualmente en la base de datos. Esto también cerrará la sesión de todos sus usuarios existentes (incluido usted).', 'restore_confirm' => '¿Está seguro que desea restaurar su base de datos desde :filename?' diff --git a/resources/lang/es-CO/admin/suppliers/table.php b/resources/lang/es-CO/admin/suppliers/table.php index c8e508250714..e1a1cf49a43b 100644 --- a/resources/lang/es-CO/admin/suppliers/table.php +++ b/resources/lang/es-CO/admin/suppliers/table.php @@ -1,14 +1,14 @@ 'Acerca de Proveedores', + 'about_suppliers_title' => 'Acerca de los proveedores', 'about_suppliers_text' => 'Los proveedores se utilizan para hacer seguimiento al origen de los elementos', 'address' => 'Dirección del proveedor', 'assets' => 'Activos', 'city' => 'Ciudad', 'contact' => 'Nombre de contacto', 'country' => 'País', - 'create' => 'Crear Proveedor', + 'create' => 'Crear un proveedor', 'email' => 'Correo electrónico', 'fax' => 'Fax', 'id' => 'ID', @@ -19,7 +19,7 @@ 'state' => 'Departamento', 'suppliers' => 'Proveedores', 'update' => 'Actualizar proveedor', - 'view' => 'Ver Proveedor', + 'view' => 'Ver proveedor', 'view_assets_for' => 'Ver activos para', 'zip' => 'Código postal', diff --git a/resources/lang/es-CO/auth/general.php b/resources/lang/es-CO/auth/general.php index df9eb711d67f..437ec4a0f234 100644 --- a/resources/lang/es-CO/auth/general.php +++ b/resources/lang/es-CO/auth/general.php @@ -5,7 +5,7 @@ 'email_reset_password' => 'Enviar correo', 'reset_password' => 'Restablecer contraseña', 'saml_login' => 'Iniciar sesión a través de SAML', - 'login' => 'Entrar', + 'login' => 'Iniciar sesión', 'login_prompt' => 'Por favor inicie sesión', 'forgot_password' => 'Olvidé mi contraseña', 'ldap_reset_password' => 'Haga clic aquí para restablecer su contraseña LDAP', @@ -13,6 +13,6 @@ 'username_help_top' => 'Ingrese su nombre de usuario para enviar un enlace de restablecimiento de contraseña.', 'username_help_bottom' => 'Su nombre de usuario y correo electrónico pueden ser el mismo, pero puede que no lo sean, dependiendo de su configuración. Si no recuerda su nombre de usuario, contacte al administrador.

A los nombres de usuario que no tengan un correo electrónico asociado, no se les enviará el enlace de cambio de contraseña. ', 'google_login' => 'Iniciar sesión con Google Workspace', - 'google_login_failed' => 'Error al iniciar sesión en Google. Vuelve a intentarlo.', + 'google_login_failed' => 'Error al iniciar sesión en Google, por favor, vuelva a intentarlo.', ]; diff --git a/resources/lang/es-CO/auth/message.php b/resources/lang/es-CO/auth/message.php index 2f2ffe9ecb40..c0b0f0dc48ed 100644 --- a/resources/lang/es-CO/auth/message.php +++ b/resources/lang/es-CO/auth/message.php @@ -7,14 +7,14 @@ 'account_not_activated' => 'Esta cuenta de usuario no está activada.', 'account_suspended' => 'Esta cuenta de usuario está suspendida.', 'account_banned' => 'Esta cuenta de usuario está bloqueada.', - 'throttle' => 'Demasiados intentos fallidos de inicio de sesión. Por favor, inténtalo de nuevo en :minutes minutos.', + 'throttle' => 'Demasiados intentos de inicio de sesión fallidos. Por favor, intente otra vez en :minutes minuto(s).', 'two_factor' => array( 'already_enrolled' => 'Su dispositivo ya está inscrito.', 'success' => 'Ha iniciado sesión exitosamente.', - 'code_required' => 'El código de doble factor es necesario.', + 'code_required' => 'Se requiere el código de autenticación de doble factor (2FA).', 'invalid_code' => 'El código de doble factor no es válido.', - 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de dos factores.', + 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de doble factor.', 'please_enroll' => 'Por favor inscriba un dispositivo en la autenticación de dos factores.', ), diff --git a/resources/lang/es-CO/button.php b/resources/lang/es-CO/button.php index 68cb24a8b80a..0620e4edbaf1 100644 --- a/resources/lang/es-CO/button.php +++ b/resources/lang/es-CO/button.php @@ -15,10 +15,10 @@ 'upload' => 'Cargar', 'select_file' => 'Seleccionar un archivo...', 'select_files' => 'Seleccionar archivos...', - 'generate_labels' => '{1} Generar Etiqueta|[2,*] Generar Etiquetas', - 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', + 'generate_labels' => '{1} Generar etiqueta|[2,*] Generar etiquetas', + 'send_password_link' => 'Enviar enlace para restablecer la contraseña', 'go' => 'Ir', - 'bulk_actions' => 'Acciones en masa', + 'bulk_actions' => 'Acciones masivas', 'add_maintenance' => 'Añadir mantenimiento', 'append' => 'Añadir', 'new' => 'Nuevo', diff --git a/resources/lang/es-CO/general.php b/resources/lang/es-CO/general.php index 3fadbb3f2835..407d9e0adf3c 100644 --- a/resources/lang/es-CO/general.php +++ b/resources/lang/es-CO/general.php @@ -47,12 +47,12 @@ 'bulkaudit_status' => 'Estado de la auditoría', 'bulk_checkout' => 'Asignación masiva', 'bulk_edit' => 'Edición masiva', - 'bulk_delete' => 'Eliminar en masa', - 'bulk_actions' => 'Acciones en masa', + 'bulk_delete' => 'Borrado masivo', + 'bulk_actions' => 'Acciones masivas', 'bulk_checkin_delete' => 'Ingresar elementos / Borrar usuarios', 'byod' => 'BYOD', 'byod_help' => 'Este dispositivo es propiedad del usuario', - 'bystatus' => 'por Estado', + 'bystatus' => 'por estado', 'cancel' => 'Cancelar', 'categories' => 'Categorías', 'category' => 'Categoría', @@ -82,7 +82,7 @@ 'create' => 'Crear nuevo', 'created' => 'Artículo creado', 'created_asset' => 'activo creado', - 'created_at' => 'Creado el', + 'created_at' => 'Fecha de creación', 'created_by' => 'Creado por', 'record_created' => 'Registro Creado', 'updated_at' => 'Actualizado el', @@ -93,14 +93,14 @@ 'custom_report' => 'Informe personalizado de activos', 'dashboard' => 'Tablero', 'days' => 'días', - 'days_to_next_audit' => 'Días a la siguiente auditoría', + 'days_to_next_audit' => 'Días hasta la siguiente auditoría', 'date' => 'Fecha', - 'debug_warning' => '¡Alerta!', + 'debug_warning' => '¡Advertencia!', 'debug_warning_text' => 'Esta aplicación se está ejecutando en modo producción con depuración habilitada. Esto puede exponer datos sensibles si su aplicación es accedida desde el mundo exterior. Deshabilite el modo de depuración configurando el valor APP_DEBUG en su archivo .env a false.', - 'delete' => 'Eliminar', + 'delete' => 'Borrar', 'delete_confirm' => '¿Está seguro de que desea eliminar :item?', 'delete_confirm_no_undo' => '¿Está seguro de que desea eliminar :item? Esto no se puede deshacer.', - 'deleted' => 'Eliminado', + 'deleted' => 'Borrado', 'delete_seats' => 'Licencias eliminadas', 'deletion_failed' => 'Error al eliminar', 'departments' => 'Departamentos', @@ -114,10 +114,10 @@ 'download_all' => 'Descargar todo', 'editprofile' => 'Editar perfil', 'eol' => 'Fin de soporte (EOL)', - 'email_domain' => 'Dominio de Email', + 'email_domain' => 'Dominio de correo electrónico', 'email_format' => 'Formato de correo electrónico', 'employee_number' => 'Número de empleado', - 'email_domain_help' => 'Esto se utiliza para generar direcciones de correo electrónico al importar', + 'email_domain_help' => 'Se utiliza para generar direcciones de correo electrónico al importar', 'error' => 'Error', 'exclude_archived' => 'Excluir activos archivados', 'exclude_deleted' => 'Excluir activos eliminados', @@ -129,26 +129,26 @@ 'firstintial_dot_lastname_format' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', 'firstname_lastname_display' => 'Nombre y apellido (Jane Smith)', 'lastname_firstname_display' => 'Apellido y nombre (Smith Jane)', - 'name_display_format' => 'Formato para mostrar nombres', + 'name_display_format' => 'Formato para mostrar el nombre', 'first' => 'Primero', 'firstnamelastname' => 'Nombre y apellido (janesmith@example.com)', 'lastname_firstinitial' => 'Apellido e inicial del nombre (smith_j@ejemplo.com)', 'firstinitial.lastname' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', - 'firstnamelastinitial' => 'Nombre e inicial del apellido(janes@example.com)', + 'firstnamelastinitial' => 'Nombre e inicial del apellido (janes@example.com)', 'lastnamefirstname' => 'Apellido.Nombre (smith.jane@example.com)', 'first_name' => 'Nombres', 'first_name_format' => 'Nombre (jane@ejemplo.com)', 'files' => 'Archivos', - 'file_name' => 'Fichero', + 'file_name' => 'Archivo', 'file_type' => 'Tipo de archivo', 'filesize' => 'Tamaño del archivo', 'file_uploads' => 'Subir archivos', - 'file_upload' => 'Subir archivo', + 'file_upload' => 'Cargar archivo', 'generate' => 'Generar', 'generate_labels' => 'Generar etiquetas', 'github_markdown' => 'Este campo acepta Github con sabor a markdown.', 'groups' => 'Grupos', - 'gravatar_email' => 'Dirección de correo Gravatar', + 'gravatar_email' => 'Dirección de correo electrónico de Gravatar', 'gravatar_url' => 'Cambie su avatar en Gravatar.com.', 'history' => 'Historial', 'history_for' => 'Historial para', @@ -160,13 +160,13 @@ 'filetypes_accepted_help' => 'El tipo de archivo aceptado es :types. El tamaño máximo permitido es :size.|Los tipos de archivo aceptados son :types. El tamaño máximo permitido para cargar es :size.', 'filetypes_size_help' => 'El tamaño máximo permitido para cargar es :size.', 'image_filetypes_help' => 'Los tipos de archivo aceptados son jpg, webp, png, gif, svg y avif. El tamaño máximo permitido es :size.', - 'unaccepted_image_type' => 'Este archivo de imagen no fue legible. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo mimetype de este archivo es: :mimetype.', + 'unaccepted_image_type' => 'No se pudo leer este archivo de imagen. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo MIME de este archivo es: :mimetype.', 'import' => 'Importar', 'import_this_file' => 'Asociar campos y procesar este archivo', 'importing' => 'Importar datos', 'importing_help' => 'Puede importar activos, accesorios, licencias, componentes, consumibles y usuarios a través del archivo CSV.

El CSV debe estar delimitado por comas y formateado con encabezados que coincidan con los de los archivos CSV de muestra en la documentación.', 'import-history' => 'Importar historial', - 'asset_maintenance' => 'Mantenimiento de Activos', + 'asset_maintenance' => 'Mantenimiento de activos', 'asset_maintenance_report' => 'Informe mantenimiento de activos', 'asset_maintenances' => 'Mantenimiento de activos', 'item' => 'Elemento', @@ -176,17 +176,17 @@ 'insufficient_permissions' => '¡Permisos insuficientes!', 'kits' => 'Kits predefinidos', 'language' => 'Idioma', - 'last' => 'Última', - 'last_login' => 'Último acceso', + 'last' => 'Último', + 'last_login' => 'Último inicio de sesión', 'last_name' => 'Apellidos', 'license' => 'Licencia', 'license_report' => 'Informe de licencias', 'licenses_available' => 'Licencias disponibles', 'licenses' => 'Licencias', 'list_all' => 'Mostrar todos', - 'loading' => 'Cargando... espere por favor...', - 'lock_passwords' => 'Este valor de campo no se guardará en una instalación de demostración.', - 'feature_disabled' => 'Esta característica ha sido deshabilitada para la instalación de demostración.', + 'loading' => 'Cargando... por favor espere...', + 'lock_passwords' => 'El valor de este campo no se guardará en una instalación de demostración.', + 'feature_disabled' => 'Esta característica se ha desactivado para la instalación de demostración.', 'location' => 'Ubicación', 'location_plural' => 'Ubicación|Ubicaciones', 'locations' => 'Ubicaciones', @@ -197,7 +197,7 @@ 'manage_api_keys' => 'Administrar las claves del API', 'manufacturer' => 'Fabricante', 'manufacturers' => 'Fabricantes', - 'markdown' => 'Este campo permite Github sabor a markdown.', + 'markdown' => 'Este campo permite markdown estilo Github.', 'min_amt' => 'Cantidad mínima', 'min_amt_help' => 'Número mínimo de elementos que deben estar disponibles antes de que se active una alerta. Deje la cantidad mínima en blanco si no desea recibir alertas de inventario bajo.', 'model_no' => 'Modelo Nro.', @@ -211,14 +211,14 @@ 'audit_images_help' => 'Puede encontrar imágenes de auditoría en la pestaña Historial del activo.', 'no_email' => 'No hay dirección de correo electrónico asociada a este usuario', 'last_audit' => 'Última auditoría', - 'new' => 'nuevo!', + 'new' => '¡nuevo!', 'no_depreciation' => 'Sin Depreciación', 'no_results' => 'No hay resultados.', 'no' => 'No', 'notes' => 'Notas', 'order_number' => 'Número de orden', - 'only_deleted' => 'Sólo activos eliminados', - 'page_menu' => 'Mostrando _MENU_ objetos', + 'only_deleted' => 'Solo activos eliminados', + 'page_menu' => 'Mostrando elementos de _MENU_', 'pagination_info' => 'Mostrando _START_ a _END_ de _TOTAL_ elementos', 'pending' => 'Pendientes', 'people' => 'Personas', @@ -230,13 +230,13 @@ 'purchase_date' => 'Fecha de compra', 'qty' => 'Cantidad', 'quantity' => 'Cantidad', - 'quantity_minimum' => 'Tiene :count artículos por debajo o casi por debajo de los niveles mínimos de cantidad', + 'quantity_minimum' => 'Tiene un artículo por debajo o casi por debajo de los niveles de cantidad mínima|Tiene :count artículos por debajo o casi por debajo de los niveles de cantidad mínima', 'quickscan_checkin' => 'Ingreso rápido con escaneo', 'quickscan_checkin_status' => 'Resultado del ingreso', 'ready_to_deploy' => 'Listo para asignar', 'recent_activity' => 'Actividad reciente', 'remaining' => 'Restante', - 'remove_company' => 'Eliminar asociación de la compañía', + 'remove_company' => 'Eliminar la asociación de la compañía', 'reports' => 'Informes', 'restored' => 'restaurado', 'restore' => 'Restaurar', @@ -244,7 +244,7 @@ 'requestable_items' => 'Artículos que se pueden solicitar', 'requested' => 'Solicitado', 'requested_date' => 'Fecha de solicitud', - 'requested_assets' => 'Elementos solicitados', + 'requested_assets' => 'Activos solicitados', 'requested_assets_menu' => 'Elementos solicitados', 'request_canceled' => 'Solicitud cancelada', 'request_item' => 'Solicitar este elemento', @@ -263,11 +263,11 @@ 'select_model' => 'Seleccionar un modelo', 'select_supplier' => 'Seleccionar un proveedor', 'select_user' => 'Seleccionar un usuario', - 'select_date' => 'Seleccione fecha (AAA-MM-DD)', + 'select_date' => 'Seleccione fecha (AAAA-MM-DD)', 'select_statuslabel' => 'Seleccionar un estado', 'select_company' => 'Seleccionar una compañía', 'select_asset' => 'Seleccionar activo', - 'settings' => 'Ajustes', + 'settings' => 'Configuraciones', 'show_deleted' => 'Mostrar eliminados', 'show_current' => 'Mostrar actual', 'sign_in' => 'Iniciar sesión', @@ -276,7 +276,7 @@ 'skin' => 'Apariencia', 'webhook_msg_note' => 'Una notificación se enviará a través de webhook', 'webhook_test_msg' => '¡Hola! ¡Parece que la integración de :app con Snipe-IT funciona!', - 'some_features_disabled' => 'DEMO MODE: Algunas características están desactivadas para esta instalación.', + 'some_features_disabled' => 'MODO DEMOSTRACIÓN: Algunas características están desactivadas para esta instalación.', 'site_name' => 'Nombre del sitio', 'state' => 'Departamento', 'status_labels' => 'Etiquetas de estado', @@ -291,7 +291,7 @@ 'delete_what' => 'Eliminar :item', 'submit' => 'Enviar', 'target' => 'Destino', - 'time_and_date_display' => 'Mostrar hora y fecha', + 'time_and_date_display' => 'Visualización de fecha y hora', 'total_assets' => 'activos', 'total_licenses' => 'licencias totales', 'total_accessories' => 'accesorios totales', @@ -311,22 +311,22 @@ 'unassigned' => 'Sin asignar', 'unaccepted_asset_report' => 'Activos no aceptados', 'users' => 'Usuarios', - 'viewall' => 'Ver todo', + 'viewall' => 'Ver todos', 'viewassets' => 'Ver elementos asignados', 'viewassetsfor' => 'Ver activos para :name', 'website' => 'Sitio web', 'welcome' => 'Bienvenido, :name', 'years' => 'años', - 'yes' => 'Sí', + 'yes' => 'Si', 'zip' => 'Código postal', - 'noimage' => 'No se ha cargado o no se ha encontrado ninguna imagen.', + 'noimage' => 'No se cargó la imagen o no fue encontrada.', 'file_does_not_exist' => 'El archivo solicitado no existe en el servidor.', 'file_upload_success' => '¡Archivo cargado exitosamente!', 'no_files_uploaded' => '¡Archivo cargado exitosamente!', 'token_expired' => 'Su sesión ha caducado. Por favor, inténtelo de nuevo.', 'login_enabled' => 'Inicio de sesión activado', 'audit_due' => 'Próximas auditorías', - 'audit_due_days' => 'Activos pendientes para auditoría dentro de :days día|Activos pendientes para auditoría dentro de :days días', + 'audit_due_days' => 'Activos pendientes de auditoría dentro de :days día|Activos pendientes de auditoría dentro de :days días', 'checkin_due' => 'Próximos a ingresar', 'checkin_overdue' => 'Devolución atrasada', 'checkin_due_days' => 'Activos próximos a ingresar dentro de :days día|Activos próximos a ingresar dentro de :days días', @@ -354,19 +354,19 @@ 'setup_create_admin' => 'Crear un usuario administrador', 'setup_done' => '¡Terminado!', 'bulk_edit_about_to' => 'Está a punto de editar lo siguiente: ', - 'checked_out' => 'Asignado a', + 'checked_out' => 'Asignado', 'checked_out_to' => 'Asignado a', 'fields' => 'Campos', - 'last_checkout' => 'Último pedido', + 'last_checkout' => 'Última asignación', 'due_to_checkin' => 'Los siguientes :count elementos están pendientes por ingresar pronto:', 'expected_checkin' => 'Fecha esperada de devolución', 'reminder_checked_out_items' => 'Este es un recordatorio de los elementos que se le han asignado actualmente. Si usted cree que esta lista es incorrecta (falta algo o aparece algo que usted cree que nunca ha recibido), por favor envíe un correo electrónico a :reply_to_name a :reply_to_address.', 'changed' => 'Cambiado', 'to' => 'A', - 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y puede abrirlo en Excel.

+ 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y podrá abrirlo en Excel.

Si desea exportar sólo ciertos activos, utilice las siguientes opciones para afinar sus resultados.

', 'range' => 'Rango', - 'bom_remark' => 'Añadir un BOM (signo de orden de byte) a este CSV', + 'bom_remark' => 'Añadir un BOM (marca de orden de bytes) a este CSV', 'improvements' => 'Mejoras', 'information' => 'Información', 'permissions' => 'Permisos', @@ -376,9 +376,9 @@ 'ldap_user_sync' => 'Sincronización de usuario LDAP', 'synchronize' => 'Sincronizar', 'sync_results' => 'Resultados de sincronización', - 'license_serial' => 'Clave de Serial/Producto', - 'invalid_category' => 'Categoría no válida o ausente', - 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', + 'license_serial' => 'Número de serie/clave de producto', + 'invalid_category' => 'Categoría no válida o inexistente', + 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Por favor, actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', 'dashboard_info' => 'Este es su panel de control. Hay muchos similares, pero este es suyo.', '60_percent_warning' => '60% completo (advertencia)', 'dashboard_empty' => 'Parece que aún no ha añadido nada, así que no tenemos nada impresionante que mostrar. ¡Comience añadiendo algunos activos, accesorios, consumibles o licencias ahora!', @@ -386,15 +386,15 @@ 'new_license' => 'Nueva licencia', 'new_accessory' => 'Nuevo accesorio', 'new_consumable' => 'Nuevo consumible', - 'collapse' => 'Colapso', + 'collapse' => 'Contraer', 'assigned' => 'Asignado', 'asset_count' => 'Cantidad de activos', - 'accessories_count' => 'Número de accesorios', - 'consumables_count' => 'Número de consumibles', - 'components_count' => 'Número de componentes', - 'licenses_count' => 'Número de licencias', + 'accessories_count' => 'Cantidad de accesorios', + 'consumables_count' => 'Cantidad de consumibles', + 'components_count' => 'Cantidad de componentes', + 'licenses_count' => 'Cantidad de licencias', 'notification_error' => 'Error', - 'notification_error_hint' => 'Por favor compruebe si hay errores en el siguiente formulario', + 'notification_error_hint' => 'Por favor revise si hay errores en el siguiente formulario', 'notification_bulk_error_hint' => 'Los siguientes campos tenían errores de validación y no fueron editados:', 'notification_success' => 'Éxito', 'notification_warning' => 'Advertencia', @@ -402,17 +402,17 @@ 'asset_information' => 'Información del activo', 'model_name' => 'Nombre del modelo', 'asset_name' => 'Nombre del activo', - 'consumable_information' => 'Información Consumible:', + 'consumable_information' => 'Información del consumible:', 'consumable_name' => 'Nombre del Consumible:', 'accessory_information' => 'Información del accesorio:', - 'accessory_name' => 'Nombre de accesorio:', + 'accessory_name' => 'Nombre del accesorio:', 'clone_item' => 'Clonar objeto', 'checkout_tooltip' => 'Asignar este elemento', - 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para resignar, borrar, etc.', + 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para reasignar, borrar, etc.', 'checkout_user_tooltip' => 'Asignar este elemento a un usuario', 'checkin_to_diff_location' => 'Puede elegir ingresar este activo a una ubicación distinta de la predeterminada :default_location, si es que se ha definido una', - 'maintenance_mode' => 'El servicio no está disponible temporalmente para actualizaciones del sistema. Por favor, vuelva más tarde.', - 'maintenance_mode_title' => 'Sistema temporalmente no disponible', + 'maintenance_mode' => 'El servicio no está disponible temporalmente debido a actualizaciones del sistema. Por favor, verifique más tarde.', + 'maintenance_mode_title' => 'El sistema no está disponible temporalmente', 'ldap_import' => 'La contraseña del usuario no debe ser administrada por LDAP. (Esto le permite enviar solicitudes de contraseña olvidadas.)', 'purge_not_allowed' => 'La purga de datos eliminados ha sido deshabilitada en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', 'backup_delete_not_allowed' => 'La eliminación de copias de seguridad se ha desactivado en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', @@ -422,7 +422,7 @@ 'bulk_checkin_delete_success' => 'Los usuarios seleccionados han sido eliminados y sus activos han sido ingresados.', 'bulk_checkin_success' => 'Los elementos para los usuarios seleccionados han sido ingresados.', 'set_to_null' => 'Eliminar los valores del elemento seleccionado|Eliminar los valores de los :selection_count elementos seleccionados ', - 'set_users_field_to_null' => 'Eliminar :field values for this user|Eliminar :field values for all :user_count users ', + 'set_users_field_to_null' => 'Eliminar valores de :field para este usuario|Eliminar valores de :field para todos los :user_count usuarios ', 'na_no_purchase_date' => 'N/A - No se proporcionó fecha de compra', 'assets_by_status' => 'Activos por estado', 'assets_by_status_type' => 'Activos por tipo de estado', @@ -430,15 +430,16 @@ 'hello_name' => '¡Hola, :name!', 'unaccepted_profile_warning' => 'Tiene un elemento que requiere aceptación. Haga clic aquí para aceptarlo o rechazarlo | Tiene :count elementos que requieren aceptación. Haga clic aquí para aceptarlos o rechazarlos', 'start_date' => 'Fecha de inicio', - 'end_date' => 'Fecha de fin', + 'end_date' => 'Fecha final', 'alt_uploaded_image_thumbnail' => 'Miniatura cargada', 'placeholder_kit' => 'Seleccione un kit', 'file_not_found' => 'Archivo no encontrado', + 'log_record_not_found' => 'No se ha encontrado ninguna entrada en el registro de eventos.', 'preview_not_available' => '(sin vista previa)', - 'setup' => 'Configurar', - 'pre_flight' => 'Pre-vuelo', + 'setup' => 'Configuración', + 'pre_flight' => 'Preparación', 'skip_to_main_content' => 'Ir al contenido principal', - 'toggle_navigation' => 'Cambiar navegación', + 'toggle_navigation' => 'Alternar navegación', 'alerts' => 'Alertas', 'tasks_view_all' => 'Ver todas las tareas', 'true' => 'Verdadero', @@ -446,20 +447,20 @@ 'integration_option' => 'Opción de integración', 'log_does_not_exist' => 'No existe ningún registro de eventos que coincida.', 'merge_users' => 'Combinar usuarios', - 'merge_information' => 'Esto fusionará a los usuarios :count en un solo usuario. Seleccione el usuario en el que desea fusionar a los demás a continuación, y los activos asociados, licencias, etc se moverá al usuario seleccionado y los otros usuarios serán marcados como eliminados.', - 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite fusionar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', + 'merge_information' => 'Esto combinará los :count usuarios en un único usuario. Seleccione a continuación el usuario en el que desea combinar los demás, y los activos, licencias, etc. asociados se moverán al usuario seleccionado y los demás usuarios se marcarán como eliminados.', + 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite combinar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', 'no_users_selected' => 'Ningún usuario seleccionado', 'not_enough_users_selected' => 'Al menos :count usuarios deben ser seleccionados', - 'merge_success' => '!:count usuarios fusionados con éxito en :into_username!', - 'merged' => 'fusionado', - 'merged_log_this_user_into' => 'Se fusionó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', - 'merged_log_this_user_from' => 'Se fusionó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', + 'merge_success' => '!:count usuarios combinados con éxito en :into_username!', + 'merged' => 'combinados', + 'merged_log_this_user_into' => 'Se combinó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', + 'merged_log_this_user_from' => 'Se combinó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', 'clear_and_save' => 'Limpiar y guardar', 'update_existing_values' => '¿Actualizar valores existentes?', 'auto_incrementing_asset_tags_disabled_so_tags_required' => 'La generación autoincrementable de las placas de activos está desactivada, por lo que todas las filas deben tener la columna "Asset Tag" con información.', - 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan informacióin en la columna "Asset Tag" se actualizarán con la información proporcionada.', + 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan información en la columna "Asset Tag" se actualizarán con la información proporcionada.', 'send_welcome_email_to_users' => ' ¿Enviar correo de bienvenida para nuevos usuarios?', - 'send_email' => 'Enviar Email', + 'send_email' => 'Enviar correo electrónico', 'call' => 'Número de llamada', 'back_before_importing' => '¿Copia de seguridad antes de importar?', 'csv_header_field' => 'Campo de cabecera CSV', @@ -470,9 +471,9 @@ 'errors_importing' => 'Se han producido algunos errores al importar: ', 'warning' => 'ADVERTENCIA: :warning', 'success_redirecting' => '"Éxito... Redirigiendo.', - 'cancel_request' => 'Cancelar esta solicitud de elemento', + 'cancel_request' => 'Cancelar solicitud para este elemento', 'setup_successful_migrations' => 'Se han creado las tablas de la base de datos', - 'setup_migration_output' => 'Salida de Migración:', + 'setup_migration_output' => 'Salida de migración:', 'setup_migration_create_user' => 'Siguiente: Crear usuario', 'importer_generic_error' => 'La importación del archivo se ha completado, pero recibimos un error. Esto suele deberse a la limitación de la API de terceros desde un webhook de notificación (como Slack) y no habría interferido con la importación en sí, pero debería confirmarlo.', 'confirm' => 'Confirmar', @@ -484,7 +485,7 @@ 'cannot_be_deleted' => 'Este elemento no puede ser eliminado', 'cannot_be_edited' => 'Este elemento no puede ser editado.', 'undeployable_tooltip' => 'Este artículo no puede ser asignado. Compruebe la cantidad restante.', - 'serial_number' => 'Número Serial', + 'serial_number' => 'Número de serie', 'item_notes' => ':item Notas', 'item_name_var' => ':item Nombre', 'error_user_company' => 'La compañía destino de la asignación y la compañía del activo no coinciden', @@ -522,7 +523,7 @@ 'rtd_location_help' => 'Esta es la ubicación del activo cuando no está asignado', 'item_not_found' => ':item_type ID :id no existe o ha sido eliminado', 'action_permission_denied' => 'No tiene permiso para :action :item_type ID :id', - 'action_permission_generic' => 'No tiene permiso para :action this :item_type', + 'action_permission_generic' => 'No tiene permiso para :action este :item_type', 'edit' => 'editar', 'action_source' => 'Origen de la acción', 'or' => 'o', @@ -530,12 +531,12 @@ 'edit_fieldset' => 'Editar campos y opciones de grupos de campos', 'permission_denied_superuser_demo' => 'Permiso denegado. No puede actualizar la información de usuario para superadministradores en la demo.', 'pwd_reset_not_sent' => 'El usuario no está activado, está sincronizado con LDAP o no tiene una dirección de correo electrónico', - 'error_sending_email' => 'Error al enviar email', + 'error_sending_email' => 'Error al enviar correo electrónico', 'sad_panda' => 'No está autorizado a realizar esta acción. Puede regresar al tablero, o ponerse en contacto con su administrador.', 'bulk' => [ 'delete' => [ - 'header' => 'Eliminar en masa :object_type', + 'header' => 'Eliminar masivamente :object_type', 'warn' => 'Está a punto de eliminar un :object_type|Está a punto de eliminar :count :object_type', 'success' => 'Se ha eliminado correctamente :count :object_type', 'error' => 'No se pudo eliminar :object_type', @@ -547,10 +548,10 @@ 'countable' => [ 'accessories' => ':count Accesorio|:count Accesorios', - 'assets' => ':count Activos|:count Activos', - 'licenses' => ':count Licencia|:count Licencias', + 'assets' => ':count activo|:count activos', + 'licenses' => ':count licencia|:count licencias', 'license_seats' => ':count licencia|:count licencias', - 'consumables' => ':count Consumible|:count Consumibles', + 'consumables' => ':count consumible|:count consumibles', 'components' => ':count component|:count componentes', ], 'more_info' => 'Más información', diff --git a/resources/lang/es-CO/help.php b/resources/lang/es-CO/help.php index 7cbc6acc7c60..13fb579b4929 100644 --- a/resources/lang/es-CO/help.php +++ b/resources/lang/es-CO/help.php @@ -21,11 +21,11 @@ 'categories' => 'Las categorías le ayudan a organizar sus elementos. Unos ejemplos de categorías podrían ser: "PC Escritorios", "Portátiles", "Móviles", "Tabletas", etc.', - 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga numero de serie (o no importe realizarle el seguimiento en forma unica). Por ejemplo, mouse o teclados.', + 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga número de serie (o no importe realizarle el seguimiento en forma única). Por ejemplo, ratones o teclados.', - 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc si la opción "Soporte completo a múltiples compañías" está habilitado en "Configuración de administrador".', + 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc. si la opción "Soporte completo a múltiples compañías" está habilitada en "Configuración de administración".', - 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo HDD, RAM, etc.', + 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo, el disco duro, RAM, etc.', 'consumables' => 'Los consumibles son todo aquello que se compra y que se agota con el tiempo. Por ejemplo, tinta de impresora o papel de fotocopiadora.', diff --git a/resources/lang/es-CO/localizations.php b/resources/lang/es-CO/localizations.php index 31f9a4946b4e..e047862dc6ab 100644 --- a/resources/lang/es-CO/localizations.php +++ b/resources/lang/es-CO/localizations.php @@ -46,13 +46,13 @@ 'fa-IR'=> 'Persa', 'pl-PL'=> 'Polaco', 'pt-PT'=> 'Portugués', - 'pt-BR'=> 'Brasileño', + 'pt-BR'=> 'Portugués, Brasil', 'ro-RO'=> 'Rumano', 'ru-RU'=> 'Ruso', - 'sr-CS' => 'Serbian (Latin)', + 'sr-CS' => 'Serbio (Latino)', 'sk-SK'=> 'Eslovaco', 'sl-SI'=> 'Esloveno', - 'so-SO'=> 'Somali', + 'so-SO'=> 'Somalí', 'es-ES'=> 'Español', 'es-CO'=> 'Español, Colombia', 'es-MX'=> 'Español, México', @@ -87,8 +87,8 @@ 'AT'=>'Austria', 'AU'=>'Australia', 'AW'=>'Aruba', - 'AX'=>'Superficie de €€', - 'AZ'=>'Martín', + 'AX'=>'Islas Aland', + 'AZ'=>'Azerbaiyán', 'BA'=>'Bosnia y Herzegovina', 'BB'=>'Barbados', 'BE'=>'Bélgica', diff --git a/resources/lang/es-CO/mail.php b/resources/lang/es-CO/mail.php index f7d647325aaf..e00eafeb5a1a 100644 --- a/resources/lang/es-CO/mail.php +++ b/resources/lang/es-CO/mail.php @@ -18,8 +18,8 @@ 'Expected_Checkin_Notification' => 'Recordatorio: :name se acerca la fecha de devolución', 'Expected_Checkin_Report' => 'Informe de próximas devoluciones de activos', 'Expiring_Assets_Report' => 'Informe de activos con garantía próxima a vencer.', - 'Expiring_Licenses_Report' => 'Informe de licencias caducando.', - 'Item_Request_Canceled' => 'Solicitud de cancelación de requerimiento', + 'Expiring_Licenses_Report' => 'Informe de licencias próximas a vencer.', + 'Item_Request_Canceled' => 'Solicitud de artículo cancelada', 'Item_Requested' => 'Artículo solicitado', 'License_Checkin_Notification' => 'Licencia devuelta', 'License_Checkout_Notification' => 'Licencia asignada', @@ -37,7 +37,7 @@ 'asset_tag' => 'Placa del activo', 'assets_warrantee_alert' => 'Hay :count activo con una garantía que expira en los próximos :threshold days.|Hay :count activos con garantías que expiran en los siguientes :threshold days.', 'assigned_to' => 'Asignado a', - 'best_regards' => 'Saludos cordiales,', + 'best_regards' => 'Cordialmente,', 'canceled' => 'Cancelado', 'checkin_date' => 'Fecha de ingreso', 'checkout_date' => 'Fecha de asignación', @@ -58,7 +58,7 @@ 'item' => 'Elemento', 'item_checked_reminder' => 'Este es un recordatorio de que actualmente tiene :count elemento(s) asignado(s) que no ha aceptado o rechazado. Haga clic en el siguiente enlace para confirmar su decisión.', 'license_expiring_alert' => 'Hay :count licencia que expira en los próximos :threshold días. | Hay :count licencias que expiran en los próximos :threshold días.', - 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar contraseña de :web :', + 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar su contraseña de :web :', 'login' => 'Entrar:', 'login_first_admin' => 'Inicie sesión en su nueva instalación de Snipe-IT usando las credenciales:', 'low_inventory_alert' => 'Hay :count elemento que está por debajo del inventario mínimo o que pronto lo estará.|Hay :count elementos que están por debajo del inventario mínimo o que pronto lo estarán.', @@ -82,9 +82,9 @@ 'test_email' => 'Email de prueba de Snipe-IT', 'test_mail_text' => 'Esto es una prueba desde el sistema de gestión de activos Snipe-IT. Si recibió este mensaje, el correo está funcionando :)', 'the_following_item' => 'El siguiente artículo ha sido devuelto: ', - 'to_reset' => 'Para restaurar tu contraseña de :web, diligencie este formulario:', + 'to_reset' => 'Para restaurar su contraseña de :web, diligencie este formulario:', 'type' => 'Tipo', - 'upcoming-audits' => 'Hay :count para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', + 'upcoming-audits' => 'Hay :count activo para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', 'user' => 'Usuario', 'username' => 'Nombre de usuario', 'unaccepted_asset_reminder' => 'Tiene activos pendientes por aceptar.', diff --git a/resources/lang/es-CO/validation.php b/resources/lang/es-CO/validation.php index 664f96675633..401b4b6af70a 100644 --- a/resources/lang/es-CO/validation.php +++ b/resources/lang/es-CO/validation.php @@ -143,7 +143,7 @@ 'required_if_accepted' => 'El campo :attribute es obligatorio cuando se acepta :other.', 'required_if_declined' => 'El campo :attribute es requerido cuando :other es rechazado.', 'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.', - 'required_with' => ':attribute es obligatrio cuando :values es present.', + 'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.', 'required_with_all' => 'El campo :attribute es requerido cuando :values están presentes.', 'required_without' => ':attribute es obligatrio cuando :values es not present.', 'required_without_all' => 'El campo :attribute es obligatorio cuando no está presente ninguno de los :values.', @@ -156,8 +156,8 @@ ], 'starts_with' => 'El campo :attribute debe iniciar con uno de los siguientes: :values.', 'string' => 'El atributo: debe ser una cadena.', - 'two_column_unique_undeleted' => ':attribute debe ser único a través de :table1 y :table2. ', - 'unique_undeleted' => 'El :attribute debe ser único.', + 'two_column_unique_undeleted' => ':attribute debe ser único entre la :table1 y :table2. ', + 'unique_undeleted' => ':attribute debe ser único.', 'non_circular' => ':attribute no debe crear una referencia circular.', 'not_array' => ':attribute no puede ser una matriz.', 'disallow_same_pwd_as_user_fields' => 'La contraseña no puede ser la misma que el nombre de usuario.', @@ -166,13 +166,14 @@ 'case_diff' => 'La contraseña debe usar mayúsculas y minúsculas.', 'symbols' => 'La contraseña debe contener símbolos.', 'timezone' => 'El campo :attribute debe ser una zona horaria válida.', - 'unique' => ':attribute ya ha sido introducido.', - 'uploaded' => 'El atributo: no se pudo cargar.', + 'unique' => ':attribute ya está en uso.', + 'uploaded' => ':attribute no se pudo cargar.', 'uppercase' => 'El campo :attribute debe estar en mayúsculas.', 'url' => 'El campo :attribute debe ser una URL válida.', 'ulid' => 'El campo :attribute debe ser un ULID válido.', 'uuid' => 'El campo :attribute debe ser un UUID válido.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -185,8 +186,8 @@ */ 'custom' => [ - 'alpha_space' => 'El campo: atributo contiene un carácter que no está permitido.', - 'email_array' => 'Una o más direcciones de correo electrónico no es válida.', + 'alpha_space' => 'El campo :attribute contiene un carácter que no está permitido.', + 'email_array' => 'Una o más direcciones de correo electrónico no son válidas.', 'hashed_pass' => 'Su contraseña actual es incorrecta', 'dumbpwd' => 'Esa contraseña es muy común.', 'statuslabel_type' => 'Debe seleccionar un tipo de etiqueta de estado válido.', @@ -194,18 +195,25 @@ 'custom_field_not_found_on_model' => 'Este campo parece existir, pero no está disponible en este conjunto de campos para el modelo de activo.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. - 'purchase_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAA-MM-DD hh:mm:ss', - 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', + 'purchase_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAAA-MM-DD hh:mm:ss', + 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', 'checkboxes' => ':attribute contiene opciones no válidas.', 'radio_buttons' => 'El valor de :attribute no es válido.', 'invalid_value_in_field' => 'Valor no válido incluido en este campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mezcla de mayúsculas y minúsculas) no funcionará. Debe utilizar samaccountname (minúsculas) en su lugar.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname probablemente no es un filtro de autenticación válido Probablemente quiera uid= '], + 'ldap_filter' => ['regex' => 'Este valor probablemente no debería ir entre paréntesis.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/es-ES/account/general.php b/resources/lang/es-ES/account/general.php index b0337d714f16..b727b63023a5 100644 --- a/resources/lang/es-ES/account/general.php +++ b/resources/lang/es-ES/account/general.php @@ -5,11 +5,11 @@ 'personal_access_token' => 'Credencial de acceso personal', 'personal_api_keys_success' => 'Clave API personal :key creada correctamente', 'here_is_api_key' => 'Aquí tiene su nueva credencial de acceso personal. Esta es la única vez que se mostrará, así que no la pierda. Ahora puede utilizar esta credencial para realizar solicitudes a la API.', - 'api_key_warning' => 'Al generar una credencial para el API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', + 'api_key_warning' => 'Al generar una credencial para la API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', 'api_base_url' => 'La url base de su API se encuentra en:', 'api_base_url_endpoint' => '/<endpoint>', 'api_token_expiration_time' => 'Las credenciales de la API están establecidas para expirar en:', - 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoins) del API y documentación adicional.', + 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoins) de la API y documentación adicional.', 'profile_updated' => 'La cuenta fue actualizada exitosamente', 'no_tokens' => 'No ha creado ninguna credencial de acceso personal.', 'enable_sounds' => 'Habilitar efectos de sonido', diff --git a/resources/lang/es-ES/admin/accessories/general.php b/resources/lang/es-ES/admin/accessories/general.php index 12f456686d9d..7b479fbbf4c7 100644 --- a/resources/lang/es-ES/admin/accessories/general.php +++ b/resources/lang/es-ES/admin/accessories/general.php @@ -5,17 +5,17 @@ 'accessory_name' => 'Nombre de accesorio', 'checkout' => 'Asignar accesorio', 'checkin' => 'Ingresar accesorio', - 'create' => 'Crear Accesorio', - 'edit' => 'Editar Accesorio', + 'create' => 'Crear accesorio', + 'edit' => 'Editar accesorio', 'eula_text' => 'Acuerdo de uso de la categoría', - 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor por predeterminado.', + 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor predeterminado.', 'require_acceptance' => 'Pedir a los usuarios confirmación de aceptación de los elementos en esta categoría.', 'no_default_eula' => 'No se encontró el acuerdo de uso predeterminado. Agregue unos en Configuración.', 'total' => 'Total ', 'remaining' => 'Disponibles', 'update' => 'Actualizar accesorio', - 'use_default_eula' => 'En su lugar, el acuerdo de uso predeterminado.', - 'use_default_eula_disabled' => 'En su lugar, use el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', + 'use_default_eula' => 'En su lugar, utilice el acuerdo de uso predeterminado.', + 'use_default_eula_disabled' => 'En su lugar, utilice el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', 'clone' => 'Clonar accesorio', 'delete_disabled' => 'Este accesorio no se puede eliminar aún porque algunos elementos todavía están asignados.', diff --git a/resources/lang/es-ES/admin/accessories/table.php b/resources/lang/es-ES/admin/accessories/table.php index 1a2d33e1eb93..70134246f6c2 100644 --- a/resources/lang/es-ES/admin/accessories/table.php +++ b/resources/lang/es-ES/admin/accessories/table.php @@ -5,7 +5,7 @@ 'eula_text' => 'Acuerdo de uso', 'id' => 'ID', 'require_acceptance' => 'Aceptación', - 'title' => 'Nombre accesorio', + 'title' => 'Nombre del accesorio', ); diff --git a/resources/lang/es-ES/admin/asset_maintenances/form.php b/resources/lang/es-ES/admin/asset_maintenances/form.php index b7257fc8642b..dfda6be9c5b9 100644 --- a/resources/lang/es-ES/admin/asset_maintenances/form.php +++ b/resources/lang/es-ES/admin/asset_maintenances/form.php @@ -1,14 +1,14 @@ 'Tipo de mantenimiento de equipo', + 'asset_maintenance_type' => 'Tipo de mantenimiento del activo', 'title' => 'Título', 'start_date' => 'Fecha de inicio', - 'completion_date' => 'Fecha de Terminación', + 'completion_date' => 'Fecha de finalización', 'cost' => 'Costo', - 'is_warranty' => 'Mejora de la Garantía', + 'is_warranty' => 'Mejora de la garantía', 'asset_maintenance_time' => 'Duración del mantenimiento (en días)', 'notes' => 'Notas', - 'update' => 'Actualizar Mantenimiento de Equipo', - 'create' => 'Crear Mantenimiento de Equipo' + 'update' => 'Actualizar mantenimiento del activo', + 'create' => 'Crear mantenimiento del activo' ]; diff --git a/resources/lang/es-ES/admin/asset_maintenances/general.php b/resources/lang/es-ES/admin/asset_maintenances/general.php index bb01dbbe84fa..77c6a419f0f5 100644 --- a/resources/lang/es-ES/admin/asset_maintenances/general.php +++ b/resources/lang/es-ES/admin/asset_maintenances/general.php @@ -2,14 +2,14 @@ return [ 'asset_maintenances' => 'Mantenimiento de activos', - 'edit' => 'Editar Mantenimiento de Equipo', - 'delete' => 'Eliminar Mantenimiento de Equipo', - 'view' => 'Ver Detalle de Mantenimiento de Equipo', - 'repair' => 'Reparación', + 'edit' => 'Editar mantenimiento del activo', + 'delete' => 'Eliminar mantenimiento del activo', + 'view' => 'Ver detalles del mantenimiento del activo', + 'repair' => 'Reparar', 'maintenance' => 'Mantenimiento', - 'upgrade' => 'Mejora', - 'calibration' => 'Calibrar', - 'software_support' => 'Servicio de software', + 'upgrade' => 'Mejorar', + 'calibration' => 'Calibración', + 'software_support' => 'Soporte de software', 'hardware_support' => 'Soporte de hardware', 'configuration_change' => 'Cambio de configuración', 'pat_test' => 'Prueba PAT', diff --git a/resources/lang/es-ES/admin/asset_maintenances/message.php b/resources/lang/es-ES/admin/asset_maintenances/message.php index 91745603a280..c7caffb3f4bd 100644 --- a/resources/lang/es-ES/admin/asset_maintenances/message.php +++ b/resources/lang/es-ES/admin/asset_maintenances/message.php @@ -5,7 +5,7 @@ 'delete' => [ 'confirm' => '¿Está seguro de que desea eliminar el mantenimiento de este activo?', 'error' => 'Hubo un problema al eliminar el mantenimiento del activo. Por favor inténtelo nuevamente.', - 'success' => 'El mantenimiento de equipo fue eliminado de manera exitosa.', + 'success' => 'El mantenimiento del activo fue eliminado de manera exitosa.', ], 'create' => [ 'error' => 'El Mantenimiento de Equipo no fue creado, por favor intente nuevamente.', @@ -13,9 +13,9 @@ ], 'edit' => [ 'error' => 'El mantenimiento del activo no fue editado. Por favor, inténtelo de nuevo.', - 'success' => 'Mantenimiento de activo editado con éxito.', + 'success' => 'Mantenimiento del activo editado con éxito.', ], - 'asset_maintenance_incomplete' => 'Sin Completar', + 'asset_maintenance_incomplete' => 'Aún no se ha completado', 'warranty' => 'Garantía', - 'not_warranty' => 'Sin Garantía', + 'not_warranty' => 'Sin garantía', ]; diff --git a/resources/lang/es-ES/admin/asset_maintenances/table.php b/resources/lang/es-ES/admin/asset_maintenances/table.php index adabb3ff69fa..6da43b1c7731 100644 --- a/resources/lang/es-ES/admin/asset_maintenances/table.php +++ b/resources/lang/es-ES/admin/asset_maintenances/table.php @@ -1,7 +1,7 @@ 'Mantenimiento de Equipo', + 'title' => 'Mantenimiento del activo', 'asset_name' => 'Nombre del activo', 'is_warranty' => 'Garantía', 'dl_csv' => 'Descargar CSV', diff --git a/resources/lang/es-ES/admin/categories/general.php b/resources/lang/es-ES/admin/categories/general.php index 5637cd24388d..26b40ec591fd 100644 --- a/resources/lang/es-ES/admin/categories/general.php +++ b/resources/lang/es-ES/admin/categories/general.php @@ -7,14 +7,14 @@ 'checkin_email_notification' => 'A este usuario se le enviará un correo electrónico al recibir/devolver.', 'clone' => 'Clonar categoría', 'create' => 'Crear categoría', - 'edit' => 'Editar Categoría', + 'edit' => 'Editar categoría', 'email_will_be_sent_due_to_global_eula' => 'Se enviará un correo electrónico al usuario porque se está utilizando el acuerdo de uso global.', 'email_will_be_sent_due_to_category_eula' => 'Se enviará un correo electrónico al usuario porque se ha establecido un acuerdo de uso para esta categoría.', 'eula_text' => 'Acuerdo de uso de la categoría', 'eula_text_help' => 'Este campo permite personalizar los términos y condiciones para tipos específicos de activos. Si solo tiene unos términos y condiciones para todos sus activos, puede seleccionar la siguiente opción para usar la definición por defecto.', 'name' => 'Nombre de la categoría', 'require_acceptance' => 'Requerir a los usuarios que confirmen la aceptación de los elementos en esta categoría.', - 'required_acceptance' => 'Este usuario recibirá un correo con un enlace para confirmar la aceptación de este elemento.', + 'required_acceptance' => 'Este usuario recibirá un correo electrónico con un enlace para confirmar la aceptación de este elemento.', 'required_eula' => 'Se enviará un correo electrónico a este usuario con una copia del acuerdo de uso', 'no_default_eula' => 'No se encontró una definición del acuerdo de uso por defecto. Agregue uno en Configuración.', 'update' => 'Actualizar categoría', diff --git a/resources/lang/es-ES/admin/companies/message.php b/resources/lang/es-ES/admin/companies/message.php index b4e744a8ea1d..8f2cb9323ea2 100644 --- a/resources/lang/es-ES/admin/companies/message.php +++ b/resources/lang/es-ES/admin/companies/message.php @@ -3,18 +3,18 @@ return [ 'does_not_exist' => 'La compañía no existe.', 'deleted' => 'Compañía eliminada', - 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtalo de nuevo. ', + 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtelo de nuevo. ', 'create' => [ - 'error' => 'Esta compañía no ha sido creada, por favor pruebe de nuevo.', + 'error' => 'La compañía no fue creada, por favor, inténtelo de nuevo.', 'success' => 'Compañía creada satisfactoriamente.', ], 'update' => [ - 'error' => 'Compañía no actualizada, por favor inténtelo de nuevo', + 'error' => 'La compañía no fue actualizada, por favor, inténtelo de nuevo', 'success' => 'Compañía actualizada correctamente.', ], 'delete' => [ 'confirm' => '¿Está seguro de que quiere eliminar esta compañía?', - 'error' => 'Hubo un problema eliminando esta compañía. Inténtelo de nuevo.', - 'success' => 'Esta compañía se eliminó satisfactoriamente.', + 'error' => 'Hubo un problema eliminando la compañía. Por favor, inténtelo de nuevo.', + 'success' => 'La compañía fue eliminada correctamente.', ], ]; diff --git a/resources/lang/es-ES/admin/companies/table.php b/resources/lang/es-ES/admin/companies/table.php index dc5d0c230f1c..1cc605dfd19b 100644 --- a/resources/lang/es-ES/admin/companies/table.php +++ b/resources/lang/es-ES/admin/companies/table.php @@ -1,11 +1,11 @@ 'Compañías', - 'create' => 'Crear Compañía', + 'create' => 'Crear una compañía', 'email' => 'Correo electrónico de la compañía', 'title' => 'Compañía', 'phone' => 'Teléfono de la compañía', - 'update' => 'Actualizar Compañía', - 'name' => 'Nombre de Compañía', + 'update' => 'Actualizar compañía', + 'name' => 'Nombre de la compañía', 'id' => 'ID', ); diff --git a/resources/lang/es-ES/admin/components/general.php b/resources/lang/es-ES/admin/components/general.php index e4d9184ef4d5..4f4a97e381a4 100644 --- a/resources/lang/es-ES/admin/components/general.php +++ b/resources/lang/es-ES/admin/components/general.php @@ -1,7 +1,7 @@ 'Nombre de Componente', + 'component_name' => 'Nombre del componente', 'checkin' => 'Ingresar componente', 'checkout' => 'Asignar componente', 'cost' => 'Costo de compra', @@ -11,6 +11,6 @@ 'order' => 'Número de orden', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Componente', + 'update' => 'Actualizar componente', 'checkin_limit' => 'La cantidad ingresada debe ser igual o menor que :assigned_qty' ); diff --git a/resources/lang/es-ES/admin/components/message.php b/resources/lang/es-ES/admin/components/message.php index 1f68cf977d3a..a936648f13f6 100644 --- a/resources/lang/es-ES/admin/components/message.php +++ b/resources/lang/es-ES/admin/components/message.php @@ -11,13 +11,13 @@ 'update' => array( 'error' => 'El componente no se actualizó, por favor inténtelo de nuevo', - 'success' => 'Componente actualizado satisfactoriamente.' + 'success' => 'Componente actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este componente?', 'error' => 'Hubo un problema eliminando el componente. Por favor, inténtelo de nuevo.', - 'success' => 'El componente fue borrado satisfactoriamente.' + 'success' => 'El componente fue borrado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-ES/admin/components/table.php b/resources/lang/es-ES/admin/components/table.php index 92a95311abdc..8f4de5c93ce1 100644 --- a/resources/lang/es-ES/admin/components/table.php +++ b/resources/lang/es-ES/admin/components/table.php @@ -1,5 +1,5 @@ 'Nombre de Componente', + 'title' => 'Nombre de componente', ); diff --git a/resources/lang/es-ES/admin/consumables/general.php b/resources/lang/es-ES/admin/consumables/general.php index f1a2debb721e..579a705fb20f 100644 --- a/resources/lang/es-ES/admin/consumables/general.php +++ b/resources/lang/es-ES/admin/consumables/general.php @@ -2,11 +2,11 @@ return array( 'checkout' => 'Asignar consumible a usuario', - 'consumable_name' => 'Nombre del Consumible', - 'create' => 'Crear Consumible', - 'item_no' => 'Artículo núm.', + 'consumable_name' => 'Nombre del consumible', + 'create' => 'Crear consumible', + 'item_no' => 'Artículo No.', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Consumible', + 'update' => 'Actualizar consumible', 'inventory_warning' => 'El inventario de este consumible está por debajo de la cantidad mínima de :min_count', ); diff --git a/resources/lang/es-ES/admin/consumables/message.php b/resources/lang/es-ES/admin/consumables/message.php index 21d88657da6e..ca3da8895a50 100644 --- a/resources/lang/es-ES/admin/consumables/message.php +++ b/resources/lang/es-ES/admin/consumables/message.php @@ -12,7 +12,7 @@ 'update' => array( 'error' => 'El consumible no fue actualizado, por favor, inténtelo de nuevo', - 'success' => 'El consumible fue subido con éxito.' + 'success' => 'Consumible actualizado correctamente.' ), 'delete' => array( diff --git a/resources/lang/es-ES/admin/consumables/table.php b/resources/lang/es-ES/admin/consumables/table.php index befcfc511b36..2e346e29622e 100644 --- a/resources/lang/es-ES/admin/consumables/table.php +++ b/resources/lang/es-ES/admin/consumables/table.php @@ -1,5 +1,5 @@ 'Nombre del Consumible', + 'title' => 'Nombre del consumible', ); diff --git a/resources/lang/es-ES/admin/custom_fields/general.php b/resources/lang/es-ES/admin/custom_fields/general.php index de2fc5b25475..523f64d5948b 100644 --- a/resources/lang/es-ES/admin/custom_fields/general.php +++ b/resources/lang/es-ES/admin/custom_fields/general.php @@ -12,16 +12,16 @@ 'encrypted' => 'Cifrado', 'fieldset' => 'Grupo de campos', 'qty_fields' => 'Campos de cantidad', - 'fieldsets' => 'Grupo de campos', + 'fieldsets' => 'Grupos de campos', 'fieldset_name' => 'Nombre del grupo de campos', 'field_name' => 'Nombre del campo', - 'field_values' => 'Valores de los Campos', - 'field_values_help' => 'Agregar opciones seleccionables, una por linea. Lineas en blanco ademas de la primera, serán ignoradas.', + 'field_values' => 'Valores de los campos', + 'field_values_help' => 'Agregue opciones seleccionables, una por línea. Se ignorarán las líneas en blanco que no sean la primera.', 'field_element' => 'Elemento de formulario', 'field_element_short' => 'Elemento', 'field_format' => 'Formato', - 'field_custom_format' => 'Formato personalizado', - 'field_custom_format_help' => 'Este campo te permite usar una expresión regex para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podrías usar regex:/^[0-9]{15}$/.', + 'field_custom_format' => 'Expresión regular personalizada', + 'field_custom_format_help' => 'Este campo le permite usar una expresión regular para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podría usar regex:/^[0-9]{15}$/.', 'required' => 'Obligatorio', 'req' => 'Obl.', 'used_by_models' => 'Usado por los modelos', @@ -30,30 +30,30 @@ 'update_fieldset' => 'Actualizar grupo de campos', 'fieldset_does_not_exist' => 'El grupo de campos :id no existe', 'fieldset_updated' => 'Se actualizó el grupo de campos', - 'create_fieldset_title' => 'Crear nuevo grupo de campos', + 'create_fieldset_title' => 'Crear un nuevo grupo de campos', 'create_field' => 'Nuevo campo personalizado', - 'create_field_title' => 'Crear nuevo campo personalizado', + 'create_field_title' => 'Crear un nuevo campo personalizado', 'value_encrypted' => 'El valor de este campo está cifrado en la base de datos. Solo los administradores pueden ver el valor descifrado', - 'show_in_email' => '¿Incluir el campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', - 'show_in_email_short' => 'Incluye en correos electrónicos.', + 'show_in_email' => '¿Incluir el valor de este campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', + 'show_in_email_short' => 'Incluir en los correos electrónicos.', 'help_text' => 'Texto de ayuda', 'help_text_description' => 'Este es un texto opcional que aparecerá debajo de los campos del formulario cuando se edite un activo para proporcionar contexto adicional.', - 'about_custom_fields_title' => 'Acerca de los Campos Personalizados', + 'about_custom_fields_title' => 'Acerca de los campos personalizados', 'about_custom_fields_text' => 'Los campos personalizados le permiten añadir atributos arbitrarios a los activos.', 'add_field_to_fieldset' => 'Añadir campo al grupo de campos', - 'make_optional' => 'Requerido - haga clic para hacerlo opcional', - 'make_required' => 'Opcional - clic para hacerlo requerido', + 'make_optional' => 'Obligatorio - haga clic para hacerlo opcional', + 'make_required' => 'Opcional - haga clic para que sea obligatorio', 'reorder' => 'Reordenar', 'db_field' => 'Campo en base de datos', 'db_convert_warning' => 'ADVERTENCIA. Este campo aparece en la tabla de campos personalizados como :db_column, pero se esperaba :expected.', - 'is_unique' => 'Este valor debe ser único dentro de los activos', + 'is_unique' => 'Este valor debe ser único para todos los activos', 'unique' => 'Único', 'display_in_user_view' => 'Permitir al usuario ver estos valores en la página "Ver elementos asignados"', 'display_in_user_view_table' => 'Visible para el usuario', 'auto_add_to_fieldsets' => 'Añadir automáticamente a cada nuevo grupo de campos', 'add_to_preexisting_fieldsets' => 'Añadir a cualquier grupo de campos existente', 'show_in_listview' => 'Mostrar por defecto en las consultas. Los usuarios autorizados podrán mostrar/ocultar a través del selector de columnas', - 'show_in_listview_short' => 'Mostrar en listas', + 'show_in_listview_short' => 'Mostrar en las listas', 'show_in_requestable_list_short' => 'Mostrar en la lista de activos que se pueden solicitar', 'show_in_requestable_list' => 'Mostrar el valor en la lista de activos que se pueden solicitar. Los campos cifrados no se mostrarán', 'encrypted_options' => 'Este campo está cifrado, por lo que algunas opciones de visualización no estarán disponibles.', diff --git a/resources/lang/es-ES/admin/custom_fields/message.php b/resources/lang/es-ES/admin/custom_fields/message.php index dcb56133bf7a..11bb8ba28531 100644 --- a/resources/lang/es-ES/admin/custom_fields/message.php +++ b/resources/lang/es-ES/admin/custom_fields/message.php @@ -10,19 +10,19 @@ 'create' => array( 'error' => 'Campo no creado, por favor, inténtalo de nuevo.', 'success' => 'Campo creado correctamente.', - 'assoc_success' => 'Campo correctamente añadido al grupo.' + 'assoc_success' => 'Campo correctamente añadido al grupo de campos.' ), 'update' => array( - 'error' => 'Campo no actualizado, por favor inténtelo de nuevo', + 'error' => 'El campo no fue actualizado, por favor, inténtelo de nuevo', 'success' => 'Campo actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que quiere eliminar este campo?', - 'error' => 'Hubo un problema al eliminar el campo. Inténtelo de nuevo.', + 'error' => 'Hubo un problema al eliminar el campo. Por favor, inténtelo de nuevo.', 'success' => 'El campo se eliminó correctamente.', - 'in_use' => 'El campo está aún en uso.', + 'in_use' => 'El campo aún está en uso.', ) ), @@ -45,14 +45,14 @@ 'confirm' => '¿Está seguro de que quiere eliminar este grupo de campos?', 'error' => 'Hubo un problema al eliminar el grupo de campos. Inténtelo de nuevo.', 'success' => 'El grupo de campos se eliminó correctamente.', - 'in_use' => 'El grupo de campos está aún en uso.', + 'in_use' => 'El grupo de campos aún está en uso.', ) ), 'fieldset_default_value' => array( - 'error' => 'Error al validar los valores por defecto del grupo de campos.', + 'error' => 'Error al validar los valores predeterminados del grupo de campos.', ), diff --git a/resources/lang/es-ES/admin/departments/message.php b/resources/lang/es-ES/admin/departments/message.php index 2a7001ad3a28..eabf4774d8ff 100644 --- a/resources/lang/es-ES/admin/departments/message.php +++ b/resources/lang/es-ES/admin/departments/message.php @@ -7,7 +7,7 @@ 'assoc_users' => 'Este departamento está actualmente asociado con al menos un usuario y no puede ser eliminado. Por favor, actualice sus usuarios para que no hagan referencia a este departamento e inténtelo de nuevo. ', 'create' => array( 'error' => 'El departamento no fue creado, por favor, inténtelo de nuevo.', - 'success' => 'Departamento creado con éxito.' + 'success' => 'Departamento creado correctamente.' ), 'update' => array( 'error' => 'El departamento no fue actualizado, por favor inténtelo de nuevo', @@ -16,7 +16,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este departamento?', 'error' => 'Hubo un problema al borrar el departamento. Por favor, inténtelo de nuevo.', - 'success' => 'El departamento ha sido borrado exitosamente' + 'success' => 'El departamento fue eliminado correctamente.' ) ); diff --git a/resources/lang/es-ES/admin/departments/table.php b/resources/lang/es-ES/admin/departments/table.php index bca0490eef2f..da02f3e3a3f2 100644 --- a/resources/lang/es-ES/admin/departments/table.php +++ b/resources/lang/es-ES/admin/departments/table.php @@ -3,7 +3,7 @@ return array( 'id' => 'ID', - 'name' => 'Nombre de Departamento', + 'name' => 'Nombre del departamento', 'manager' => 'Supervisor', 'location' => 'Ubicación', 'create' => 'Crear departamento', diff --git a/resources/lang/es-ES/admin/groups/message.php b/resources/lang/es-ES/admin/groups/message.php index 3ef844ae447f..f442d05c919a 100644 --- a/resources/lang/es-ES/admin/groups/message.php +++ b/resources/lang/es-ES/admin/groups/message.php @@ -8,15 +8,15 @@ 'success' => array( 'create' => 'Grupo creado.', - 'update' => 'Grupo actualizado.', - 'delete' => 'Grupo eliminado.', + 'update' => 'El grupo fue actualizado exitosamente.', + 'delete' => 'El grupo fue eliminado exitosamente.', ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este grupo?', - 'create' => 'Hubo un problema creando el grupo. Por favor intente nuevamente.', + 'create' => 'Hubo un problema creando el grupo. Por favor, intente nuevamente.', 'update' => 'Hubo un problema actualizando el grupo. Por favor, intente nuevamente.', - 'delete' => 'Ha habido un problema eliminando el grupo. Vuelve a intentarlo.', + 'delete' => 'Hubo un problema eliminando el grupo. Por favor, intente nuevamente.', ), ); diff --git a/resources/lang/es-ES/admin/groups/table.php b/resources/lang/es-ES/admin/groups/table.php index c002d06ba8e2..15118151851d 100644 --- a/resources/lang/es-ES/admin/groups/table.php +++ b/resources/lang/es-ES/admin/groups/table.php @@ -2,8 +2,8 @@ return array( - 'id' => 'ID', + 'id' => 'Id', 'name' => 'Nombre', - 'users' => '# de Usuarios', + 'users' => '# de usuarios', ); diff --git a/resources/lang/es-ES/admin/groups/titles.php b/resources/lang/es-ES/admin/groups/titles.php index 7660a8055b2f..d139ee66c790 100644 --- a/resources/lang/es-ES/admin/groups/titles.php +++ b/resources/lang/es-ES/admin/groups/titles.php @@ -2,15 +2,15 @@ return [ 'about_groups_title' => 'Acerca de los grupos', - 'about_groups' => 'Los Grupos son usados para generar permisos de usuarios.', - 'group_management' => 'Gestión de Grupos', + 'about_groups' => 'Los grupos se utilizan para generalizar los permisos de usuario.', + 'group_management' => 'Administración de grupos', 'create' => 'Crear un grupo nuevo', - 'update' => 'Editar Grupo', + 'update' => 'Editar grupo', 'group_name' => 'Nombre de Grupo', - 'group_admin' => 'Admin Grupo', + 'group_admin' => 'Grupo administrador', 'allow' => 'Permitir', 'deny' => 'Denegar', - 'permission' => 'Permisos', + 'permission' => 'Permiso', 'grant' => 'Otorgar', 'no_permissions' => 'Este grupo no tiene permisos.' ]; diff --git a/resources/lang/es-ES/admin/hardware/message.php b/resources/lang/es-ES/admin/hardware/message.php index 6e27340cc8f1..177589c43734 100644 --- a/resources/lang/es-ES/admin/hardware/message.php +++ b/resources/lang/es-ES/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'El activo no fue creado, por favor, inténtelo de nuevo. :(', 'success' => 'Activo creado con éxito. :)', 'success_linked' => 'Activo con placa :tag creado con éxito. Haga clic aquí para ver.', + 'multi_success_linked' => 'Activo con etiqueta :links fue creado exitosamente.|:count activos fueron creados correctamente. :links.', + 'partial_failure' => 'No se ha podido crear un activo: Motivo: :failures|No se pudieron crear :count activos. Motivos: :failures', ], 'update' => [ @@ -68,7 +70,7 @@ 'confirm' => '¿Está seguro de que desea eliminar este activo?', 'error' => 'Hubo un problema al eliminar el activo. Por favor, inténtelo de nuevo.', 'nothing_updated' => 'No se seleccionaron los activos, por lo que no se eliminó nada.', - 'success' => 'Equipo eliminado.', + 'success' => 'El activo se ha eliminado correctamente.', ], 'checkout' => [ @@ -76,7 +78,12 @@ 'success' => 'Equipo asignado correctamente.', 'user_does_not_exist' => 'Este usuario no es correcto. Por favor, inténtelo de nuevo.', 'not_available' => '¡Ese equipo no está disponible para ser asignado!', - 'no_assets_selected' => 'Debes seleccionar al menos un elemento de la lista', + 'no_assets_selected' => 'Debe seleccionar al menos un elemento de la lista', + ], + + 'multi-checkout' => [ + 'error' => 'El activo no fue asignado, por favor, intente nuevamente|Los activos no fueron asignados, por favor, intente nuevamente', + 'success' => 'El activo fue asignado correctamente|Los activos fueron asignados correctamente.', ], 'checkin' => [ diff --git a/resources/lang/es-ES/admin/kits/general.php b/resources/lang/es-ES/admin/kits/general.php index cd05d25ba191..030d3d59d128 100644 --- a/resources/lang/es-ES/admin/kits/general.php +++ b/resources/lang/es-ES/admin/kits/general.php @@ -13,15 +13,15 @@ 'none_licenses' => 'No hay suficientes licencias disponibles de :license para asignar. Se requieren :qty. ', 'none_consumables' => 'No hay suficientes unidades disponibles de :consumable para asignar. Se requieren :qty. ', 'none_accessory' => 'No hay suficientes unidades disponibles de :accessory para asignar. Se requieren :qty. ', - 'append_accessory' => 'Vincular Accesorio', + 'append_accessory' => 'Añadir accesorio', 'update_appended_accessory' => 'Actualizar accesorio añadido', - 'append_consumable' => 'Vincular Consumible', - 'update_appended_consumable' => 'Actualizar Consumible vinculado', - 'append_license' => 'Vincular licencia', - 'update_appended_license' => 'Actualizar licencia vinculada', - 'append_model' => 'Vincular modelo', - 'update_appended_model' => 'Actualizar modelo vinculado', - 'license_error' => 'Licencia ya adjunta al kit', + 'append_consumable' => 'Añadir consumible', + 'update_appended_consumable' => 'Actualizar consumible añadido', + 'append_license' => 'Añadir licencia', + 'update_appended_license' => 'Actualizar licencia añadida', + 'append_model' => 'Añadir modelo', + 'update_appended_model' => 'Actualizar modelo añadido', + 'license_error' => 'Licencia ya vinculada al kit', 'license_added_success' => 'Licencia añadida correctamente', 'license_updated' => 'La licencia fue actualizada correctamente', 'license_none' => 'La licencia no existe', @@ -29,23 +29,23 @@ 'consumable_added_success' => 'Consumible añadido correctamente', 'consumable_updated' => 'El consumible fue actualizado correctamente', 'consumable_error' => 'Consumible ya vinculado al kit', - 'consumable_deleted' => 'Eliminado correctamente', - 'consumable_none' => 'El Consumible no existe', + 'consumable_deleted' => 'El borrado fue exitoso', + 'consumable_none' => 'El consumible no existe', 'consumable_detached' => 'Consumible desvinculado correctamente', 'accessory_added_success' => 'Accesorio añadido correctamente', 'accessory_updated' => 'El accesorio fue actualizado correctamente', 'accessory_detached' => 'Accesorio desvinculado correctamente', - 'accessory_error' => 'El accesorio ya vinculado al kit', - 'accessory_deleted' => 'Eliminado correctamente', + 'accessory_error' => 'El accesorio ya está vinculado al kit', + 'accessory_deleted' => 'El borrado fue exitoso', 'accessory_none' => 'El accesorio no existe', 'checkout_success' => 'Asignación correcta', 'checkout_error' => 'Error al asignar', - 'kit_none' => 'El Kit no existe', + 'kit_none' => 'El kit no existe', 'kit_created' => 'Kit creado correctamente', 'kit_updated' => 'El kit fue actualizado correctamente', 'kit_not_found' => 'Kit no encontrado', - 'kit_deleted' => 'Kit eliminado correctamente', + 'kit_deleted' => 'El kit fue eliminado correctamente', 'kit_model_updated' => 'El modelo fue actualizado correctamente', - 'kit_model_detached' => 'Modelo desvinculado correctamente', + 'kit_model_detached' => 'El modelo fue desvinculado correctamente', 'model_already_attached' => 'Modelo ya vinculado al kit', ]; diff --git a/resources/lang/es-ES/admin/labels/message.php b/resources/lang/es-ES/admin/labels/message.php index 01006397cb89..9d2ef2cc4870 100644 --- a/resources/lang/es-ES/admin/labels/message.php +++ b/resources/lang/es-ES/admin/labels/message.php @@ -2,9 +2,9 @@ return [ - 'invalid_return_count' => 'El recuento no es válido desde :name. Esperado :expected, obtenido :actual.', + 'invalid_return_count' => 'Cantidad incorrecta devuelta por :name. Se esperaba :expected, obtenido :actual.', 'invalid_return_type' => 'Tipo no válido devuelto desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_value' => 'Valor no válido devuelto de :name. Esperado :expected, obtenido :actual.', + 'invalid_return_value' => 'Valor no válido devuelto por :name. Esperado :expected, obtenido :actual.', 'does_not_exist' => 'La etiqueta no existe', diff --git a/resources/lang/es-ES/admin/labels/table.php b/resources/lang/es-ES/admin/labels/table.php index 055d28c169ef..fab4d8f9dba4 100644 --- a/resources/lang/es-ES/admin/labels/table.php +++ b/resources/lang/es-ES/admin/labels/table.php @@ -3,7 +3,7 @@ return [ 'example_company' => 'Compañía de prueba limitada', 'example_defaultloc' => 'Construcción 1', - 'example_category' => 'Probar categoría', + 'example_category' => 'Categoría de prueba', 'example_location' => 'Edificio 2', 'example_manufacturer' => 'Test Manufacturing Inc.', 'example_model' => 'Modelo de prueba', diff --git a/resources/lang/es-ES/admin/licenses/form.php b/resources/lang/es-ES/admin/licenses/form.php index 37234d8d242b..576492224b43 100644 --- a/resources/lang/es-ES/admin/licenses/form.php +++ b/resources/lang/es-ES/admin/licenses/form.php @@ -6,10 +6,10 @@ 'checkin' => 'Ingresar', 'create' => 'Crear licencia', 'expiration' => 'Fecha de vencimiento', - 'license_key' => 'Clave de producto', - 'maintained' => 'Mantenido', - 'name' => 'Aplicación', - 'no_depreciation' => 'No Amortizar', + 'license_key' => 'Clave del producto', + 'maintained' => 'Tiene mantenimiento', + 'name' => 'Nombre del software', + 'no_depreciation' => 'No amortizar', 'purchase_order' => 'Número de orden de compra', 'reassignable' => 'Reasignable', 'remaining_seats' => 'Disponibles', @@ -17,6 +17,6 @@ 'termination_date' => 'Fecha de finalización', 'to_email' => 'Correo electrónico asociado a la licencia', 'to_name' => 'Nombre de la persona asociada a la licencia', - 'update' => 'Actualizar Licencia', + 'update' => 'Actualizar licencia', 'checkout_help' => 'Debe asignar una licencia a un activo de hardware o a una persona. Puede seleccionar ambos, pero el propietario del activo debe coincidir con la persona a la que está asignado el activo.' ); diff --git a/resources/lang/es-ES/admin/licenses/general.php b/resources/lang/es-ES/admin/licenses/general.php index 847e64d75eb2..5b474ef407e5 100644 --- a/resources/lang/es-ES/admin/licenses/general.php +++ b/resources/lang/es-ES/admin/licenses/general.php @@ -6,20 +6,20 @@ 'checkin' => 'Ingresar licencia', 'checkout_history' => 'Historial de asignaciones', 'checkout' => 'Asignar licencia', - 'edit' => 'Editar Usuario', - 'filetype_info' => 'Tipos de archivos permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', - 'clone' => 'Clonar Usuario', + 'edit' => 'Editar licencia', + 'filetype_info' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', + 'clone' => 'Clonar licencia', 'history_for' => 'Historial para ', 'in_out' => 'Quita/Asigna', - 'info' => 'Info Licencia', + 'info' => 'Información de licencia', 'license_seats' => 'Total de licencias', 'seat' => 'Licencia', 'seat_count' => 'Licencia :count', 'seats' => 'Total de licencias', - 'software_licenses' => 'Licencias Software', + 'software_licenses' => 'Licencias de software', 'user' => 'Usuario', - 'view' => 'Ver Licencias', - 'delete_disabled' => 'Esta licencia no se puede eliminar aún está asignada a algunos usuarios.', + 'view' => 'Ver licencia', + 'delete_disabled' => 'Esta licencia no se puede eliminar porque todavía está asignada.', 'bulk' => [ 'checkin_all' => [ @@ -47,6 +47,6 @@ ], ], - 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede considerar la compra de más licencias.', + 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede que desee considerar la compra de más licencias.', 'below_threshold_short' => 'Este artículo está por debajo de la cantidad mínima requerida.', ); diff --git a/resources/lang/es-ES/admin/licenses/message.php b/resources/lang/es-ES/admin/licenses/message.php index 0001c73c3752..c3e2adaf2ea8 100644 --- a/resources/lang/es-ES/admin/licenses/message.php +++ b/resources/lang/es-ES/admin/licenses/message.php @@ -23,7 +23,7 @@ ), 'upload' => array( - 'error' => 'Archivo(s) no cargado. Por favor, vuelva a intentarlo.', + 'error' => 'Archivo(s) no cargado(s). Por favor, inténtelo de nuevo.', 'success' => 'Archivo(s) cargado correctamente.', 'nofiles' => 'No seleccionó ningún archivo para ser cargado, o el archivo que seleccionó es demasiado grande', 'invalidfiles' => 'Uno o más de sus archivos es demasiado grande o es un tipo de archivo que no está permitido. Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, rar, rtf, xml y lic.', @@ -37,13 +37,13 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar esta licencia?', 'error' => 'Hubo un problema al eliminar la licencia. Por favor, inténtelo de nuevo.', - 'success' => 'Categoría eliminada.' + 'success' => 'La licencia se ha eliminado correctamente.' ), 'checkout' => array( 'error' => 'Hubo un problema asignando la licencia. Por favor, inténtelo de nuevo.', 'success' => 'La licencia fue asignada con éxito', - 'not_enough_seats' => 'No hay suficientes asientos de licencia disponibles para la compra', + 'not_enough_seats' => 'No hay suficientes licencias disponibles para asignar', 'mismatch' => 'La licencia proporcionada no coincide con la licencia seleccionada', 'unavailable' => 'Esta licencia no está disponible para ser asignada.', ), diff --git a/resources/lang/es-ES/admin/licenses/table.php b/resources/lang/es-ES/admin/licenses/table.php index df2b96484ce6..8d3fbc074797 100644 --- a/resources/lang/es-ES/admin/licenses/table.php +++ b/resources/lang/es-ES/admin/licenses/table.php @@ -2,7 +2,7 @@ return array( - 'assigned_to' => 'Asignada a', + 'assigned_to' => 'Asignado a', 'checkout' => 'Entrada/Salida', 'deleted_at' => 'Eliminado el', 'id' => 'ID', @@ -12,7 +12,7 @@ 'purchased' => 'Comprado', 'seats' => 'Total de licencias', 'hardware' => 'Hardware', - 'serial' => 'N. Serie', - 'title' => 'Categoría de equipo', + 'serial' => 'Número de serie', + 'title' => 'Licencia', ); diff --git a/resources/lang/es-ES/admin/manufacturers/message.php b/resources/lang/es-ES/admin/manufacturers/message.php index 85dee8043f53..4e25322f0cd1 100644 --- a/resources/lang/es-ES/admin/manufacturers/message.php +++ b/resources/lang/es-ES/admin/manufacturers/message.php @@ -3,22 +3,22 @@ return array( 'support_url_help' => 'Variables {LOCALE}, {SERIAL}, {MODEL_NUMBER}, y {MODEL_NAME} se pueden utilizar en su URL para que esos valores se llenen automáticamente al ver los activos - por ejemplo https://checkcoverage. pple.com/{LOCALE}/{SERIAL}.', - 'does_not_exist' => 'Fabricante inexistente.', + 'does_not_exist' => 'El fabricante no existe.', 'assoc_users' => 'Este fabricante está actualmente asociado con al menos un modelo y no se puede eliminar. Por favor, actualice sus modelos para dejar de hacer referencia a este fabricante y vuelva a intentarlo. ', 'create' => array( 'error' => 'El fabricante no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Fabricante creado.' + 'success' => 'Fabricante creado exitosamente.' ), 'update' => array( - 'error' => 'El fabricante no fue actualizado, por favor inténtelo de nuevo', - 'success' => 'Fabricante actualizado.' + 'error' => 'El fabricante no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante se ha actualizado exitosamente.' ), 'restore' => array( - 'error' => 'El fabricante no fue restaurado, intente de nuevo', - 'success' => 'Fabricante restaurado con éxito.' + 'error' => 'El fabricante no fue restaurado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante fue restaurado exitosamente.' ), 'delete' => array( diff --git a/resources/lang/es-ES/admin/manufacturers/table.php b/resources/lang/es-ES/admin/manufacturers/table.php index 87607feb2a6d..a29fe35d387b 100644 --- a/resources/lang/es-ES/admin/manufacturers/table.php +++ b/resources/lang/es-ES/admin/manufacturers/table.php @@ -1,7 +1,7 @@ 'Sobre fabricantes', + 'about_manufacturers_title' => 'Sobre los fabricantes', 'about_manufacturers_text' => 'Los fabricantes son las empresas que crean sus activos. Aquí puede almacenar importante información de contacto para soporte, la cual se mostrará en las páginas de detalle de sus activos.', 'asset_manufacturers' => 'Fabricantes de activos', 'create' => 'Crear fabricante', diff --git a/resources/lang/es-ES/admin/models/general.php b/resources/lang/es-ES/admin/models/general.php index 245c0774a85d..531ef49c5afb 100644 --- a/resources/lang/es-ES/admin/models/general.php +++ b/resources/lang/es-ES/admin/models/general.php @@ -1,16 +1,16 @@ 'Acerca de modelos de activos', - 'about_models_text' => 'Los Modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', - 'deleted' => 'Este modelo fue eliminado.', - 'bulk_delete' => 'Borrar Grandes Modelos de Activos', - 'bulk_delete_help' => 'Usa las casillas de verificación para confirmar la eliminación de los modelos de activos. Los modelos de activos tienen activos asociados que no pueden ser eliminados hasta que los activos sean asociados con un modelo diferente.', + 'about_models_title' => 'Acerca de los modelos de activos', + 'about_models_text' => 'Los modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', + 'deleted' => 'Este modelo ha sido eliminado.', + 'bulk_delete' => 'Eliminación masiva de modelos de activos', + 'bulk_delete_help' => 'Utilice las casillas a continuación para confirmar la eliminación de los modelos de activos seleccionados. Los modelos de activos que tienen activos asociados a ellos no se pueden eliminar hasta que los activos estén asociados con un modelo diferente.', 'bulk_delete_warn' => 'Está a punto de eliminar un modelo de activo.|Está a punto de eliminar :model_count modelos de activos.', 'restore' => 'Restaurar modelo', 'requestable' => 'Los usuarios pueden solicitar este modelo', - 'show_mac_address' => 'Mostrar el campo de la dirección MAC en los equipos de este modelo', - 'view_deleted' => 'Ver Borrados', + 'show_mac_address' => 'Mostrar el campo de dirección MAC en los activos de este modelo', + 'view_deleted' => 'Ver borrados', 'view_models' => 'Ver modelos', 'fieldset' => 'Grupo de campos', 'no_custom_field' => 'No hay campos personalizados', diff --git a/resources/lang/es-ES/admin/models/message.php b/resources/lang/es-ES/admin/models/message.php index 9370ef2a5466..8c6e3ff501be 100644 --- a/resources/lang/es-ES/admin/models/message.php +++ b/resources/lang/es-ES/admin/models/message.php @@ -32,7 +32,7 @@ ), 'bulkedit' => array( - 'error' => 'Ningún campo fue seleccionado, por lo que nada ha sido actualizado.', + 'error' => 'Ningún cambio fue cambiado, así que nada se actualizó.', 'success' => 'Modelo actualizado correctamente. |:model_count modelos actualizados correctamente.', 'warn' => 'Está a punto de actualizar las propiedades del siguiente modelo:|Está a punto de editar las propiedades de los siguientes :model_count modelos:', diff --git a/resources/lang/es-ES/admin/reports/general.php b/resources/lang/es-ES/admin/reports/general.php index d2056b1b5630..cf62a35b87ef 100644 --- a/resources/lang/es-ES/admin/reports/general.php +++ b/resources/lang/es-ES/admin/reports/general.php @@ -1,7 +1,7 @@ 'Seleccione las opciones que desea para el informe de activos.', + 'info' => 'Seleccione las opciones que desee para su informe de activos.', 'deleted_user' => 'Usuario eliminado', 'send_reminder' => 'Enviar recordatorio', 'reminder_sent' => 'Recordatorio enviado', @@ -9,9 +9,9 @@ 'acceptance_request' => 'Solicitud de aceptación', 'custom_export' => [ 'user_address' => 'Dirección de usuario', - 'user_city' => 'Ciudad del Usuario', + 'user_city' => 'Ciudad del usuario', 'user_state' => 'Estado del usuario', - 'user_country' => 'País de usuario', - 'user_zip' => 'Usuario Zip' + 'user_country' => 'País del usuario', + 'user_zip' => 'Código postal del usuario' ] ]; \ No newline at end of file diff --git a/resources/lang/es-ES/admin/settings/general.php b/resources/lang/es-ES/admin/settings/general.php index 17ce3fdfc26b..9b13a301eb90 100644 --- a/resources/lang/es-ES/admin/settings/general.php +++ b/resources/lang/es-ES/admin/settings/general.php @@ -9,7 +9,7 @@ 'ad_append_domain_help' => 'El usuario no necesita escribir "usuario@dominio.local", puede escribir únicamente "usuario".', 'admin_cc_email' => 'Copiar en correo electrónico', 'admin_cc_email_help' => 'Si desea enviar una copia de los correos electrónicos de recepción/devolución que se envían a los usuarios a una cuenta de correo electrónico adicional, escríbala aquí. De lo contrario, deje este campo en blanco.', - 'admin_settings' => 'Configuración de administrador', + 'admin_settings' => 'Configuración de administración', 'is_ad' => 'Este es un servidor de Directorio Activo', 'alerts' => 'Alertas', 'alert_title' => 'Actualizar ajustes de notificación', @@ -66,7 +66,7 @@ 'eula_markdown' => 'Estos acuerdos de uso permiten markdown estilo Github.', 'favicon' => 'Favicon', 'favicon_format' => 'Los tipos de archivo aceptados son ico, png y gif. Es posible que otros formatos de imagen no funcionen en todos los navegadores.', - 'favicon_size' => 'Los Favicons deben ser imágenes cuadradas, 16x16 píxeles.', + 'favicon_size' => 'Los Favicons deben ser imágenes cuadradas, de 16x16 píxeles.', 'footer_text' => 'Texto adicional en el pie de página ', 'footer_text_help' => 'Este texto aparecerá en el lado derecho del pie de página. Los enlaces son permitidos usando markdown estilo Github. Los saltos de línea, encabezados, imágenes, etc. pueden dar lugar a resultados impredecibles.', 'general_settings' => 'Configuración general', @@ -168,7 +168,7 @@ 'pwd_secure_min' => 'Caracteres mínimos de la contraseña', 'pwd_secure_min_help' => 'El valor mínimo permitido es 8', 'pwd_secure_uncommon' => 'Evitar contraseñas comunes', - 'pwd_secure_uncommon_help' => 'Esto impedirá que los usuarios usen contraseñas comunes de las 10,000 contraseñas principales que se notifican en las infracciones.', + 'pwd_secure_uncommon_help' => 'Esto impedirá que los usuarios usen contraseñas comunes de las 10,000 contraseñas más usuales reportadas en fugas de datos.', 'qr_help' => 'Habilite primero los códigos QR para configurar esto', 'qr_text' => 'Texto del código QR', 'saml' => 'SAML', @@ -254,7 +254,7 @@ 'page_dimensions' => 'Dimensiones de la página (pulgadas)', 'label_fields' => 'Campos visibles de la etiqueta', 'inches' => 'pulgadas', - 'width_w' => 'an', + 'width_w' => 'ancho', 'height_h' => 'alto', 'show_url_in_emails' => 'Enlace a Snipe-IT en correos electrónicos', 'show_url_in_emails_help_text' => 'Desmarque esta casilla si no desea vincular su instalación de Snipe-IT en el pie de página de correo electrónico. Útil si la mayoría de sus usuarios nunca se conectan. ', @@ -326,7 +326,7 @@ 'localization_keywords' => 'localización, moneda, local, ubicación, zona horaria, internacional, internacionalización, idioma, traducción', 'localization_help' => 'Idioma, visualización de la fecha', 'notifications' => 'Notificaciones', - 'notifications_help' => 'Configuración de alertas por email y auditoría', + 'notifications_help' => 'Configuración de alertas por correo electrónico y de auditoría', 'asset_tags_help' => 'Incrementos y prefijos', 'labels' => 'Etiquetas', 'labels_title' => 'Actualizar configuración de etiquetas', @@ -361,7 +361,7 @@ 'label2_2d_type_help' => 'Formato para códigos de barras 2D', 'label2_2d_target' => 'Apuntamiento del código de barras 2D', 'label2_2d_target_help' => 'La URL a la que apunta el código de barras 2D cuando se escanea', - 'label2_fields' => 'Definiciones de campo', + 'label2_fields' => 'Definiciones del campo', 'label2_fields_help' => 'Los campos se pueden añadir, eliminar y reordenar en la columna izquierda. Para cada campo, se pueden agregar, eliminar y reordenar múltiples opciones para etiquetas y para orígenes de datos en la columna derecha.', 'help_asterisk_bold' => 'Texto introducido como **texto** se mostrará como negrita', 'help_blank_to_use' => 'Deje en blanco para usar el valor de :setting_name', @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Advertencia para próximos ingresos', 'due_checkin_days_help' => '¿Cuántos días antes de la fecha prevista de ingreso de un activo debe figurar en la página «Próximos a ingresar»?', + 'no_groups' => 'Todavía no se han creado grupos. Para agregar uno, visiteConfiguración de administración > Grupos de permisos.', ]; diff --git a/resources/lang/es-ES/admin/settings/message.php b/resources/lang/es-ES/admin/settings/message.php index fde69335bc00..168f4178c094 100644 --- a/resources/lang/es-ES/admin/settings/message.php +++ b/resources/lang/es-ES/admin/settings/message.php @@ -9,8 +9,8 @@ 'backup' => [ 'delete_confirm' => '¿Está seguro de que desea eliminar este archivo de respaldo? Esta acción no puede se puede deshacer. ', 'file_deleted' => 'El archivo de respaldo fue eliminado satisfactoriamente. ', - 'generated' => 'Un nuevo archivo de respaldo fue creado satisfactoriamente.', - 'file_not_found' => 'El archivo de respaldo no se ha encontrado en el servidor.', + 'generated' => 'Se ha creado correctamente un nuevo archivo de copia de seguridad.', + 'file_not_found' => 'Ese archivo de copia de seguridad no se pudo encontrar en el servidor.', 'restore_warning' => 'Sí, restaurarlo. Reconozco que esto sobrescribirá cualquier dato existente actualmente en la base de datos. Esto también cerrará la sesión de todos sus usuarios existentes (incluido usted).', 'restore_confirm' => '¿Está seguro que desea restaurar su base de datos desde :filename?' ], diff --git a/resources/lang/es-ES/admin/suppliers/message.php b/resources/lang/es-ES/admin/suppliers/message.php index 06f1a00c43c2..deaffc312fc1 100644 --- a/resources/lang/es-ES/admin/suppliers/message.php +++ b/resources/lang/es-ES/admin/suppliers/message.php @@ -8,7 +8,7 @@ 'create' => array( 'error' => 'El proveedor no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Proveedor creado.' + 'success' => 'Proveedor creado con éxito.' ), 'update' => array( @@ -19,7 +19,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este proveedor?', 'error' => 'Hubo un problema al eliminar el proveedor, por favor inténtelo de nuevo.', - 'success' => 'Proveedor eliminado.', + 'success' => 'Proveedor eliminado correctamente.', 'assoc_assets' => 'Este proveedor está actualmente asociado con :asset_count activo(s) y no puede ser eliminado. Actualice sus activos para que ya no hagan referencia a este proveedor e inténtelo de nuevo. ', 'assoc_licenses' => 'Este proveedor está asociado actualmente con :licenses_count licences(s) y no puede ser eliminado. Actualice sus licencias para que ya no hagan referencia a este proveedor e inténtelo de nuevo. ', 'assoc_maintenances' => 'Este proveedor está actualmente asociado con :asset_maintainances_count mantenimiento(s) de activo(s) y no puede ser eliminado. Por favor, actualice el mantenimiento de sus activos para no hacer referencia a este proveedor y vuelva a intentarlo. ', diff --git a/resources/lang/es-ES/admin/suppliers/table.php b/resources/lang/es-ES/admin/suppliers/table.php index f862849cca73..b918b4f381ce 100644 --- a/resources/lang/es-ES/admin/suppliers/table.php +++ b/resources/lang/es-ES/admin/suppliers/table.php @@ -1,25 +1,25 @@ 'Acerca de Proveedores', + 'about_suppliers_title' => 'Acerca de los proveedores', 'about_suppliers_text' => 'Los proveedores se utilizan para hacer seguimiento al origen de los elementos', - 'address' => 'Dirección del Proveedor', - 'assets' => 'Equipos', + 'address' => 'Dirección del proveedor', + 'assets' => 'Activos', 'city' => 'Ciudad', - 'contact' => 'Nombre Contacto', + 'contact' => 'Nombre de contacto', 'country' => 'País', - 'create' => 'Crear Proveedor', + 'create' => 'Crear un proveedor', 'email' => 'Correo electrónico', 'fax' => 'Fax', 'id' => 'ID', 'licenses' => 'Licencias', - 'name' => 'Nombre', + 'name' => 'Nombre del proveedor', 'notes' => 'Notas', 'phone' => 'Teléfono', 'state' => 'Provincia', 'suppliers' => 'Proveedores', - 'update' => 'Actualizar Proveedor', - 'view' => 'Ver Proveedor', + 'update' => 'Actualizar proveedor', + 'view' => 'Ver proveedor', 'view_assets_for' => 'Ver activos para', 'zip' => 'Código postal', diff --git a/resources/lang/es-ES/auth/general.php b/resources/lang/es-ES/auth/general.php index db35275e427b..437ec4a0f234 100644 --- a/resources/lang/es-ES/auth/general.php +++ b/resources/lang/es-ES/auth/general.php @@ -3,16 +3,16 @@ return [ 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', 'email_reset_password' => 'Enviar correo', - 'reset_password' => 'Restablecer Contraseña', + 'reset_password' => 'Restablecer contraseña', 'saml_login' => 'Iniciar sesión a través de SAML', - 'login' => 'Iniciar Sesión', + 'login' => 'Iniciar sesión', 'login_prompt' => 'Por favor inicie sesión', - 'forgot_password' => 'He olvidado mi contraseña', + 'forgot_password' => 'Olvidé mi contraseña', 'ldap_reset_password' => 'Haga clic aquí para restablecer su contraseña LDAP', 'remember_me' => 'Recordarme', 'username_help_top' => 'Ingrese su nombre de usuario para enviar un enlace de restablecimiento de contraseña.', 'username_help_bottom' => 'Su nombre de usuario y correo electrónico pueden ser el mismo, pero puede que no lo sean, dependiendo de su configuración. Si no recuerda su nombre de usuario, contacte al administrador.

A los nombres de usuario que no tengan un correo electrónico asociado, no se les enviará el enlace de cambio de contraseña. ', 'google_login' => 'Iniciar sesión con Google Workspace', - 'google_login_failed' => 'Error al iniciar sesión en Google. Vuelve a intentarlo.', + 'google_login_failed' => 'Error al iniciar sesión en Google, por favor, vuelva a intentarlo.', ]; diff --git a/resources/lang/es-ES/auth/message.php b/resources/lang/es-ES/auth/message.php index 92e757ec54a6..4f7d049ce336 100644 --- a/resources/lang/es-ES/auth/message.php +++ b/resources/lang/es-ES/auth/message.php @@ -2,19 +2,19 @@ return array( - 'account_already_exists' => 'Ya existe un usuario con este e-mail.', + 'account_already_exists' => 'Ya existe una cuenta con este correo electrónico.', 'account_not_found' => 'El nombre de usuario o la contraseña son incorrectos.', - 'account_not_activated' => 'Este usuario no está activado.', - 'account_suspended' => 'Este usuario está desactivado.', - 'account_banned' => 'Este usuario ha sido expulsado.', - 'throttle' => 'Demasiados intentos de inicio de sesión fallidos. Por favor, intente otra vez en alrededor de :minutes minuto/s.', + 'account_not_activated' => 'Esta cuenta de usuario no está activada.', + 'account_suspended' => 'Esta cuenta de usuario está suspendida.', + 'account_banned' => 'Esta cuenta de usuario está bloqueada.', + 'throttle' => 'Demasiados intentos de inicio de sesión fallidos. Por favor, intente otra vez en :minutes minuto(s).', 'two_factor' => array( 'already_enrolled' => 'Su dispositivo ya está inscrito.', 'success' => 'Ha iniciado sesión exitosamente.', - 'code_required' => 'Se requiere el código de 2FA(Autenticación en dos pasos) .', + 'code_required' => 'Se requiere el código de autenticación de doble factor (2FA).', 'invalid_code' => 'El código de doble factor es inválido.', - 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de dos factores.', + 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de doble factor.', 'please_enroll' => 'Por favor inscriba un dispositivo en la autenticación de dos factores.', ), diff --git a/resources/lang/es-ES/button.php b/resources/lang/es-ES/button.php index aa13f59197c8..6dd8c08cf39a 100644 --- a/resources/lang/es-ES/button.php +++ b/resources/lang/es-ES/button.php @@ -15,10 +15,10 @@ 'upload' => 'Cargar', 'select_file' => 'Seleccionar un archivo...', 'select_files' => 'Seleccionar archivos...', - 'generate_labels' => '{1} Generar Etiqueta|[2,*] Generar Etiquetas', - 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', + 'generate_labels' => '{1} Generar etiqueta|[2,*] Generar etiquetas', + 'send_password_link' => 'Enviar enlace para restablecer la contraseña', 'go' => 'Ir', - 'bulk_actions' => 'Acciones en masa', + 'bulk_actions' => 'Acciones masivas', 'add_maintenance' => 'Añadir mantenimiento', 'append' => 'Añadir', 'new' => 'Nuevo', diff --git a/resources/lang/es-ES/general.php b/resources/lang/es-ES/general.php index ddaeeb3952bd..b55f22f6650e 100644 --- a/resources/lang/es-ES/general.php +++ b/resources/lang/es-ES/general.php @@ -20,7 +20,7 @@ 'all_assets' => 'Todos los activos', 'all' => 'Todos los', 'archived' => 'Archivado', - 'asset_models' => 'Modelos', + 'asset_models' => 'Modelos de activos', 'asset_model' => 'Modelo', 'asset' => 'Activo', 'asset_report' => 'Informe de activos', @@ -41,8 +41,8 @@ 'assignee' => 'Asignado a', 'avatar_delete' => 'Eliminar Avatar', 'avatar_upload' => 'Cargar Avatar', - 'back' => 'Atras', - 'bad_data' => 'Ningún resultado. ¿Quizá un dato incorrecto?', + 'back' => 'Atrás', + 'bad_data' => 'No se ha encontrado nada. ¿Tal vez datos erróneos?', 'bulkaudit' => 'Auditoría masiva', 'bulkaudit_status' => 'Estado de la auditoría', 'bulk_checkout' => 'Asignación masiva', @@ -52,11 +52,11 @@ 'bulk_checkin_delete' => 'Ingresar elementos / Borrar usuarios', 'byod' => 'BYOD', 'byod_help' => 'Este dispositivo es propiedad del usuario', - 'bystatus' => 'por Estado', + 'bystatus' => 'por estado', 'cancel' => 'Cancelar', 'categories' => 'Categorías', 'category' => 'Categoría', - 'change' => 'Entrada / salida', + 'change' => 'Entrada/Salida', 'changeemail' => 'Cambiar dirección de correo electrónico', 'changepassword' => 'Cambiar contraseña', 'checkin' => 'Ingresar', @@ -81,11 +81,11 @@ 'not_deleted' => 'El tipo :item_type no se ha borrado y, por lo tanto, no se puede restaurar', 'create' => 'Crear nuevo', 'created' => 'Artículo creado', - 'created_asset' => 'equipo creado', - 'created_at' => 'Creado el', + 'created_asset' => 'activo creado', + 'created_at' => 'Fecha de creación', 'created_by' => 'Creado por', 'record_created' => 'Registro Creado', - 'updated_at' => 'Actualizado en', + 'updated_at' => 'Actualizado el', 'currency' => '€', // this is deprecated 'current' => 'Actual', 'current_password' => 'Contraseña actual', @@ -93,7 +93,7 @@ 'custom_report' => 'Informe personalizado de activos', 'dashboard' => 'Tablero', 'days' => 'días', - 'days_to_next_audit' => 'Días a la próxima auditoría', + 'days_to_next_audit' => 'Días hasta la siguiente auditoría', 'date' => 'Fecha', 'debug_warning' => '¡Advertencia!', 'debug_warning_text' => 'Esta aplicación se está ejecutando en modo producción con depuración habilitada. Esto puede exponer datos sensibles si su aplicación es accedida desde el mundo exterior. Deshabilite el modo de depuración configurando el valor APP_DEBUG en su archivo .env a false.', @@ -105,7 +105,7 @@ 'deletion_failed' => 'Error al eliminar', 'departments' => 'Departamentos', 'department' => 'Departamento', - 'deployed' => 'Asignados', + 'deployed' => 'Asignados-', 'depreciation' => 'Amortización', 'depreciations' => 'Depreciaciones', 'depreciation_report' => 'Informe de amortización', @@ -117,7 +117,7 @@ 'email_domain' => 'Dominio de correo electrónico', 'email_format' => 'Formato de correo electrónico', 'employee_number' => 'Número de empleado', - 'email_domain_help' => 'Esto se utiliza para generar direcciones de correo electrónico cuando se importan', + 'email_domain_help' => 'Se utiliza para generar direcciones de correo electrónico al importar', 'error' => 'Error', 'exclude_archived' => 'Excluir activos archivados', 'exclude_deleted' => 'Excluir activos eliminados', @@ -129,7 +129,7 @@ 'firstintial_dot_lastname_format' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', 'firstname_lastname_display' => 'Nombre y apellido (Jane Smith)', 'lastname_firstname_display' => 'Apellido y nombre (Smith Jane)', - 'name_display_format' => 'Formato de visualización de nombre', + 'name_display_format' => 'Formato para mostrar el nombre', 'first' => 'Primero', 'firstnamelastname' => 'Nombre y apellido (janesmith@example.com)', 'lastname_firstinitial' => 'Apellido e inicial del nombre (smith_j@ejemplo.com)', @@ -148,11 +148,11 @@ 'generate_labels' => 'Generar etiquetas', 'github_markdown' => 'Este campo acepta el formateo flavored de GitHub.', 'groups' => 'Grupos', - 'gravatar_email' => 'Gravatar Email', + 'gravatar_email' => 'Dirección de correo Gravatar', 'gravatar_url' => 'Cambie su avatar en Gravatar.com.', 'history' => 'Historial', - 'history_for' => 'Historial de', - 'id' => 'Id', + 'history_for' => 'Historial para', + 'id' => 'ID', 'image' => 'Imagen', 'image_delete' => 'Borrar imagen', 'include_deleted' => 'Incluir activos eliminados', @@ -160,13 +160,13 @@ 'filetypes_accepted_help' => 'El tipo de archivo aceptado es :types. El tamaño máximo permitido es :size.|Los tipos de archivo aceptados son :types. El tamaño máximo permitido para cargar es :size.', 'filetypes_size_help' => 'El tamaño máximo permitido para cargar es :size.', 'image_filetypes_help' => 'Los tipos de archivo aceptados son jpg, webp, png, gif, svg y avif. El tamaño máximo permitido es :size.', - 'unaccepted_image_type' => 'No se pudo leer este archivo de imagen. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo mimetype de este archivo es: :mimetype.', + 'unaccepted_image_type' => 'No se pudo leer este archivo de imagen. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo MIME de este archivo es: :mimetype.', 'import' => 'Importar', 'import_this_file' => 'Asociar campos y procesar este archivo', 'importing' => 'Importar datos', 'importing_help' => 'Puede importar activos, accesorios, licencias, componentes, consumibles y usuarios a través del archivo CSV.

El CSV debe estar delimitado por comas y formateado con encabezados que coincidan con los de los archivos CSV de muestra en la documentación.', 'import-history' => 'Importar historial', - 'asset_maintenance' => 'Mantenimiento de Equipo', + 'asset_maintenance' => 'Mantenimiento de activos', 'asset_maintenance_report' => 'Informe mantenimiento de activos', 'asset_maintenances' => 'Mantenimiento de activos', 'item' => 'Elemento', @@ -174,10 +174,10 @@ 'import_file' => 'importar archivo CSV', 'import_type' => 'Tipo de importación CSV', 'insufficient_permissions' => '¡Permisos insuficientes!', - 'kits' => 'Equipamiento predefinido', - 'language' => 'Lenguaje', + 'kits' => 'Kits predefinidos', + 'language' => 'Idioma', 'last' => 'Último', - 'last_login' => 'Último acceso', + 'last_login' => 'Último inicio de sesión', 'last_name' => 'Apellidos', 'license' => 'Licencia', 'license_report' => 'Informe de licencias', @@ -185,24 +185,24 @@ 'licenses' => 'Licencias', 'list_all' => 'Mostrar todos', 'loading' => 'Cargando... por favor espere...', - 'lock_passwords' => 'El valor de este campo no será guardado en una instalación de demostración.', - 'feature_disabled' => 'Esta característica se ha desactivado para la versión de demostración.', + 'lock_passwords' => 'El valor de este campo no se guardará en una instalación de demostración.', + 'feature_disabled' => 'Esta característica se ha desactivado para la instalación de demostración.', 'location' => 'Ubicación', 'location_plural' => 'Ubicación|Ubicaciones', 'locations' => 'Ubicaciones', 'logo_size' => 'Los logotipos cuadrados se ven mejor con Logo + Texto. El tamaño máximo del logo es 50px de alto x 500px de ancho. ', - 'logout' => 'Desconexión', + 'logout' => 'Cerrar sesión', 'lookup_by_tag' => 'Buscar placa del activo', 'maintenances' => 'Mantenimientos', 'manage_api_keys' => 'Administrar las claves del API', 'manufacturer' => 'Fabricante', 'manufacturers' => 'Fabricantes', - 'markdown' => 'Este campo permite Github con sabor a markdown.', + 'markdown' => 'Este campo permite markdown estilo Github.', 'min_amt' => 'Cantidad mínima', 'min_amt_help' => 'Número mínimo de elementos que deben estar disponibles antes de que se active una alerta. Deje la cantidad mínima en blanco si no desea recibir alertas de inventario bajo.', 'model_no' => 'Modelo No.', - 'months' => 'Meses', - 'moreinfo' => 'Más Info', + 'months' => 'meses', + 'moreinfo' => 'Más información', 'name' => 'Nombre', 'new_password' => 'Nueva contraseña', 'next' => 'Siguiente', @@ -211,32 +211,32 @@ 'audit_images_help' => 'Puede encontrar imágenes de auditoría en la pestaña Historial del activo.', 'no_email' => 'No hay dirección de correo electrónico asociada a este usuario', 'last_audit' => 'Última auditoría', - 'new' => 'nuevo!', + 'new' => '¡nuevo!', 'no_depreciation' => 'No Amortizar', - 'no_results' => 'Sin Resultados.', + 'no_results' => 'No hay resultados.', 'no' => 'No', 'notes' => 'Notas', 'order_number' => 'Número de orden', - 'only_deleted' => 'Sólo activos eliminados', + 'only_deleted' => 'Solo activos eliminados', 'page_menu' => 'Mostrando elementos de _MENU_', - 'pagination_info' => 'Mostrando _START_ de _END_ de elementos _TOTAL_', + 'pagination_info' => 'Mostrando _START_ a _END_ de _TOTAL_ elementos', 'pending' => 'Pendientes', - 'people' => 'Usuarios', - 'per_page' => 'Resultados Por Pag', + 'people' => 'Personas', + 'per_page' => 'Resultados por página', 'previous' => 'Previo', 'processing' => 'Procesando', 'profile' => 'Perfil', 'purchase_cost' => 'Precio de compra', 'purchase_date' => 'Fecha de compra', - 'qty' => 'Cant', + 'qty' => 'Cantidad', 'quantity' => 'Cantidad', - 'quantity_minimum' => 'Tiene :con elementos por debajo o casi por debajo de los niveles mínimos de cantidad', + 'quantity_minimum' => 'Tiene un artículo por debajo o casi por debajo de los niveles de cantidad mínima|Tiene :count artículos por debajo o casi por debajo de los niveles de cantidad mínima', 'quickscan_checkin' => 'Ingreso rápido con escaneo', 'quickscan_checkin_status' => 'Resultado del ingreso', 'ready_to_deploy' => 'Listo para asignar', - 'recent_activity' => 'Actividad Reciente', + 'recent_activity' => 'Actividad reciente', 'remaining' => 'Restante', - 'remove_company' => 'Eliminar asociación de la compañía', + 'remove_company' => 'Eliminar la asociación de la compañía', 'reports' => 'Informes', 'restored' => 'restaurado', 'restore' => 'Restaurar', @@ -244,7 +244,7 @@ 'requestable_items' => 'Artículos que se pueden solicitar', 'requested' => 'Solicitado', 'requested_date' => 'Fecha de solicitud', - 'requested_assets' => 'Elementos solicitados', + 'requested_assets' => 'Activos solicitados', 'requested_assets_menu' => 'Elementos solicitados', 'request_canceled' => 'Solicitud cancelada', 'request_item' => 'Solicitar este elemento', @@ -267,8 +267,8 @@ 'select_statuslabel' => 'Seleccionar un estado', 'select_company' => 'Seleccionar una compañía', 'select_asset' => 'Seleccionar activo', - 'settings' => 'Opciones', - 'show_deleted' => 'Mostrar Eliminado', + 'settings' => 'Configuraciones', + 'show_deleted' => 'Mostrar eliminados', 'show_current' => 'Mostrar actual', 'sign_in' => 'Iniciar sesión', 'signature' => 'Firma', @@ -276,8 +276,8 @@ 'skin' => 'Apariencia', 'webhook_msg_note' => 'Una notificación se enviará a través de webhook', 'webhook_test_msg' => '¡Hola! ¡Parece que la integración de :app con Snipe-IT funciona!', - 'some_features_disabled' => 'MODO DE DEMOSTRACIÓN: Algunas funciones estan desactivadas para esta instalación.', - 'site_name' => 'Sitio', + 'some_features_disabled' => 'MODO DEMOSTRACIÓN: Algunas características están desactivadas para esta instalación.', + 'site_name' => 'Nombre del sitio', 'state' => 'Provincia', 'status_labels' => 'Etiquetas de estado', 'status_label' => 'Etiqueta de estado', @@ -291,16 +291,16 @@ 'delete_what' => 'Eliminar :item', 'submit' => 'Enviar', 'target' => 'Destino', - 'time_and_date_display' => 'Hora y fecha', + 'time_and_date_display' => 'Visualización de fecha y hora', 'total_assets' => 'activos', 'total_licenses' => 'licencias totales', - 'total_accessories' => 'total de accesorios', - 'total_consumables' => 'total de consumibles', + 'total_accessories' => 'accesorios totales', + 'total_consumables' => 'consumibles totales', 'type' => 'Tipo', 'undeployable' => 'No utilizable', 'unknown_admin' => 'Administrador desconocido', 'username_format' => 'Formato del nombre de usuario', - 'username' => 'Usuario', + 'username' => 'Nombre de usuario', 'update' => 'Actualizar', 'upload_filetypes_help' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, xls, xlsx, txt, lic, xml, zip, rtf y rar. El tamaño máximo permitido es :size.', 'uploaded' => 'Cargado', @@ -319,14 +319,14 @@ 'years' => 'años', 'yes' => 'Si', 'zip' => 'Código postal', - 'noimage' => 'Imagen no subida o imagen no encontrada.', + 'noimage' => 'No se cargó la imagen o no fue encontrada.', 'file_does_not_exist' => 'El archivo solicitado no existe en el servidor.', 'file_upload_success' => '¡Archivo cargado exitosamente!', 'no_files_uploaded' => '¡Archivo cargado exitosamente!', 'token_expired' => 'Su sesión ha caducado. Por favor, inténtelo de nuevo.', - 'login_enabled' => 'Inicio de sesión habilitado', + 'login_enabled' => 'Inicio de sesión activado', 'audit_due' => 'Próximas auditorías', - 'audit_due_days' => 'Activos pendientes para auditoría dentro de :days día|Activos pendientes para auditoría dentro de :days días', + 'audit_due_days' => 'Activos pendientes de auditoría dentro de :days día|Activos pendientes de auditoría dentro de :days días', 'checkin_due' => 'Próximos a ingresar', 'checkin_overdue' => 'Devolución atrasada', 'checkin_due_days' => 'Activos próximos a ingresar dentro de :days día|Activos próximos a ingresar dentro de :days días', @@ -357,16 +357,16 @@ 'checked_out' => 'Asignado', 'checked_out_to' => 'Asignado a', 'fields' => 'Campos', - 'last_checkout' => 'Última Asignación', + 'last_checkout' => 'Última asignación', 'due_to_checkin' => 'Los siguientes :count elementos están pendientes por ingresar pronto:', 'expected_checkin' => 'Fecha esperada de devolución', 'reminder_checked_out_items' => 'Este es un recordatorio de los elementos que se le han asignado actualmente. Si usted cree que esta lista es incorrecta (falta algo o aparece algo que usted cree que nunca ha recibido), por favor envíe un correo electrónico a :reply_to_name a :reply_to_address.', 'changed' => 'Cambiado', 'to' => 'A', - 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y puede abrirlo en Excel.

+ 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y podrá abrirlo en Excel.

Si desea exportar sólo ciertos activos, utilice las siguientes opciones para afinar sus resultados.

', 'range' => 'Rango', - 'bom_remark' => 'Añadir un BOM (signo de orden de byte) a este CSV', + 'bom_remark' => 'Añadir un BOM (marca de orden de bytes) a este CSV', 'improvements' => 'Mejoras', 'information' => 'Información', 'permissions' => 'Permisos', @@ -376,9 +376,9 @@ 'ldap_user_sync' => 'Sincronización de usuario LDAP', 'synchronize' => 'Sincronizar', 'sync_results' => 'Resultados de sincronización', - 'license_serial' => 'Número de Serie/Clave de Producto', - 'invalid_category' => 'Categoría no válida o ausente', - 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', + 'license_serial' => 'Número de serie/clave de producto', + 'invalid_category' => 'Categoría no válida o inexistente', + 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Por favor, actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', 'dashboard_info' => 'Este es su panel de control. Hay muchos similares, pero este es suyo.', '60_percent_warning' => '60% completo (advertencia)', 'dashboard_empty' => 'Parece que aún no ha añadido nada, así que no tenemos nada impresionante que mostrar. ¡Comience añadiendo algunos activos, accesorios, consumibles o licencias ahora!', @@ -388,13 +388,13 @@ 'new_consumable' => 'Nuevo consumible', 'collapse' => 'Contraer', 'assigned' => 'Asignado', - 'asset_count' => 'Recuento de activos', - 'accessories_count' => 'Recuento de accesorios', - 'consumables_count' => 'Recuento de consumibles', - 'components_count' => 'Recuento de componentes', - 'licenses_count' => 'Recuento de licencias', + 'asset_count' => 'Cantidad de activos', + 'accessories_count' => 'Cantidad de accesorios', + 'consumables_count' => 'Cantidad de consumibles', + 'components_count' => 'Cantidad de componentes', + 'licenses_count' => 'Cantidad de licencias', 'notification_error' => 'Error', - 'notification_error_hint' => 'Por favor compruebe si hay errores en el siguiente formulario', + 'notification_error_hint' => 'Por favor revise si hay errores en el siguiente formulario', 'notification_bulk_error_hint' => 'Los siguientes campos tenían errores de validación y no han sido editados:', 'notification_success' => 'Éxito', 'notification_warning' => 'Advertencia', @@ -405,14 +405,14 @@ 'consumable_information' => 'Información del consumible:', 'consumable_name' => 'Nombre del Consumible:', 'accessory_information' => 'Información del accesorio:', - 'accessory_name' => 'Nombre de accesorio:', + 'accessory_name' => 'Nombre del accesorio:', 'clone_item' => 'Clonar objeto', 'checkout_tooltip' => 'Asignar este elemento', - 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para resignar, borrar, etc.', + 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para reasignar, borrar, etc.', 'checkout_user_tooltip' => 'Asignar este elemento a un usuario', 'checkin_to_diff_location' => 'Puede elegir ingresar este activo a una ubicación distinta de la predeterminada :default_location, si es que se ha definido una', - 'maintenance_mode' => 'El servicio no está disponible temporalmente debido por actualizaciones del sistema. Por favor, vuelva más tarde.', - 'maintenance_mode_title' => 'Sistema temporalmente no disponible', + 'maintenance_mode' => 'El servicio no está disponible temporalmente debido a actualizaciones del sistema. Por favor, verifique más tarde.', + 'maintenance_mode_title' => 'El sistema no está disponible temporalmente', 'ldap_import' => 'La contraseña de usuario no debe ser administrada por LDAP. (Esto le permite enviar solicitudes de contraseña olvidada.)', 'purge_not_allowed' => 'La purga de datos eliminados ha sido deshabilitada en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', 'backup_delete_not_allowed' => 'La eliminación de copias de seguridad se ha desactivado en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', @@ -430,14 +430,15 @@ 'hello_name' => '¡Hola, :name!', 'unaccepted_profile_warning' => 'Tiene un elemento que requiere aceptación. Haga clic aquí para aceptarlo o rechazarlo | Tiene :count elementos que requieren aceptación. Haga clic aquí para aceptarlos o rechazarlos', 'start_date' => 'Fecha de inicio', - 'end_date' => 'Fecha de fin', + 'end_date' => 'Fecha final', 'alt_uploaded_image_thumbnail' => 'Miniatura cargada', 'placeholder_kit' => 'Seleccione un kit', - 'file_not_found' => 'No se encontró el archivo', + 'file_not_found' => 'Archivo no encontrado', + 'log_record_not_found' => 'No se ha encontrado ninguna entrada en el registro de eventos.', 'preview_not_available' => '(sin vista previa)', 'setup' => 'Configuración', 'pre_flight' => 'Preparación', - 'skip_to_main_content' => 'Saltar al contenido principal', + 'skip_to_main_content' => 'Ir al contenido principal', 'toggle_navigation' => 'Alternar navegación', 'alerts' => 'Alertas', 'tasks_view_all' => 'Ver todas las tareas', @@ -445,21 +446,21 @@ 'false' => 'Falso', 'integration_option' => 'Opción de integración', 'log_does_not_exist' => 'No existe ningún registro de eventos que coincida.', - 'merge_users' => 'Fusionar usuarios', - 'merge_information' => 'Esto fusionará a los :count usuarios en un solo usuario. Seleccione el usuario que desee fusionar con los otros más abajo, y los activos asociados, licencias, etc se trasladarán al usuario seleccionado y los otros usuarios serán marcados como eliminados.', - 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite fusionar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', + 'merge_users' => 'Combinar usuarios', + 'merge_information' => 'Esto combinará los :count usuarios en un único usuario. Seleccione a continuación el usuario en el que desea combinar los demás, y los activos, licencias, etc. asociados se moverán al usuario seleccionado y los demás usuarios se marcarán como eliminados.', + 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite combinar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', 'no_users_selected' => 'Ningún usuario seleccionado', 'not_enough_users_selected' => 'Al menos :count usuarios deben ser seleccionados', - 'merge_success' => '!:count usuarios fusionados con éxito en :into_username!', - 'merged' => 'fusionados', - 'merged_log_this_user_into' => 'Se fusionó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', - 'merged_log_this_user_from' => 'Se fusionó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', - 'clear_and_save' => 'Limpiar y Guardar', + 'merge_success' => '!:count usuarios combinados con éxito en :into_username!', + 'merged' => 'combinados', + 'merged_log_this_user_into' => 'Se combinó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', + 'merged_log_this_user_from' => 'Se combinó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', + 'clear_and_save' => 'Limpiar y guardar', 'update_existing_values' => '¿Actualizar valores existentes?', 'auto_incrementing_asset_tags_disabled_so_tags_required' => 'La generación autoincrementable de las placas de activos está desactivada, por lo que todas las filas deben tener la columna "Asset Tag" con información.', - 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan informacióin en la columna "Asset Tag" se actualizarán con la información proporcionada.', + 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan información en la columna "Asset Tag" se actualizarán con la información proporcionada.', 'send_welcome_email_to_users' => ' ¿Enviar correo de bienvenida para nuevos usuarios?', - 'send_email' => 'Enviar Email', + 'send_email' => 'Enviar correo electrónico', 'call' => 'Número de llamada', 'back_before_importing' => '¿Copia de seguridad antes de importar?', 'csv_header_field' => 'Campo de cabecera CSV', @@ -472,7 +473,7 @@ 'success_redirecting' => '"Éxito... Redirigiendo.', 'cancel_request' => 'Cancelar esta solicitud de elemento', 'setup_successful_migrations' => 'Se han creado las tablas de la base de datos', - 'setup_migration_output' => 'Salida de Migración:', + 'setup_migration_output' => 'Salida de migración:', 'setup_migration_create_user' => 'Siguiente: Crear usuario', 'importer_generic_error' => 'La importación del archivo se ha completado, pero recibimos un error. Esto suele deberse a la limitación de la API de terceros desde un webhook de notificación (como Slack) y no habría interferido con la importación en sí, pero debería confirmarlo.', 'confirm' => 'Confirmar', @@ -486,7 +487,7 @@ 'undeployable_tooltip' => 'Este artículo no puede ser asignado. Compruebe la cantidad restante.', 'serial_number' => 'Número de serie', 'item_notes' => ':item Notas', - 'item_name_var' => ':nombre del ítem', + 'item_name_var' => ':item Nombre', 'error_user_company' => 'La compañía destino de la asignación y la compañía del activo no coinciden', 'error_user_company_accept_view' => 'Un activo asignado a usted pertenece a una compañía diferente por lo que no puede aceptarlo ni rechazarlo, por favor verifique con su supervisor', 'importer' => [ @@ -522,7 +523,7 @@ 'rtd_location_help' => 'Esta es la ubicación del activo cuando no está asignado', 'item_not_found' => ':item_type ID :id no existe o ha sido eliminado', 'action_permission_denied' => 'No tiene permiso para :action :item_type ID :id', - 'action_permission_generic' => 'No tiene permiso para :action this :item_type', + 'action_permission_generic' => 'No tiene permiso para :action este :item_type', 'edit' => 'editar', 'action_source' => 'Origen de la acción', 'or' => 'o', @@ -530,7 +531,7 @@ 'edit_fieldset' => 'Editar campos y opciones de grupos de campos', 'permission_denied_superuser_demo' => 'Permiso denegado. No puede actualizar la información de usuario para superadministradores en la demo.', 'pwd_reset_not_sent' => 'El usuario no está activado, está sincronizado con LDAP o no tiene una dirección de correo electrónico', - 'error_sending_email' => 'Error al enviar email', + 'error_sending_email' => 'Error al enviar correo electrónico', 'sad_panda' => 'No está autorizado a realizar esta acción. Puede regresar al tablero, o ponerse en contacto con su administrador.', 'bulk' => [ 'delete' => @@ -547,10 +548,10 @@ 'countable' => [ 'accessories' => ':count Accesorio|:count Accesorios', - 'assets' => ':count Activos|:count Activos', - 'licenses' => ':count Licencia|:count Licencias', + 'assets' => ':count activo|:count activos', + 'licenses' => ':count licencia|:count licencias', 'license_seats' => ':count licencia|:count licencias', - 'consumables' => ':count Consumible|:count Consumibles', + 'consumables' => ':count consumible|:count consumibles', 'components' => ':count component|:count componentes', ], 'more_info' => 'Más información', @@ -561,7 +562,7 @@ 'expires' => 'Vence', 'map_fields'=> 'Asociar campos para :item_type', 'remaining_var' => ':count restantes', - 'label' => '', + 'label' => 'Etiqueta', 'import_asset_tag_exists' => 'Ya existe un activo con la placa :asset_tag y no se ha solicitado una actualización. No se ha realizado ningún cambio.', 'countries_manually_entered_help' => 'Los valores con asterisco (*) fueron introducidos manualmente y no coinciden con los valores desplegables ISO 3166 existentes', diff --git a/resources/lang/es-ES/help.php b/resources/lang/es-ES/help.php index 7cbc6acc7c60..13fb579b4929 100644 --- a/resources/lang/es-ES/help.php +++ b/resources/lang/es-ES/help.php @@ -21,11 +21,11 @@ 'categories' => 'Las categorías le ayudan a organizar sus elementos. Unos ejemplos de categorías podrían ser: "PC Escritorios", "Portátiles", "Móviles", "Tabletas", etc.', - 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga numero de serie (o no importe realizarle el seguimiento en forma unica). Por ejemplo, mouse o teclados.', + 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga número de serie (o no importe realizarle el seguimiento en forma única). Por ejemplo, ratones o teclados.', - 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc si la opción "Soporte completo a múltiples compañías" está habilitado en "Configuración de administrador".', + 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc. si la opción "Soporte completo a múltiples compañías" está habilitada en "Configuración de administración".', - 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo HDD, RAM, etc.', + 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo, el disco duro, RAM, etc.', 'consumables' => 'Los consumibles son todo aquello que se compra y que se agota con el tiempo. Por ejemplo, tinta de impresora o papel de fotocopiadora.', diff --git a/resources/lang/es-ES/localizations.php b/resources/lang/es-ES/localizations.php index e83e0fce4702..6ea56d98403f 100644 --- a/resources/lang/es-ES/localizations.php +++ b/resources/lang/es-ES/localizations.php @@ -46,13 +46,13 @@ 'fa-IR'=> 'Persa', 'pl-PL'=> 'Polaco', 'pt-PT'=> 'Portugués', - 'pt-BR'=> 'Portugués, Brasileño', + 'pt-BR'=> 'Portugués, Brasil', 'ro-RO'=> 'Rumano', 'ru-RU'=> 'Ruso', 'sr-CS' => 'Serbio (Latino)', 'sk-SK'=> 'Eslovaco', 'sl-SI'=> 'Esloveno', - 'so-SO'=> 'Somali', + 'so-SO'=> 'Somalí', 'es-ES'=> 'Español', 'es-CO'=> 'Español, Colombia', 'es-MX'=> 'Español, México', @@ -87,7 +87,7 @@ 'AT'=>'Austria', 'AU'=>'Australia', 'AW'=>'Aruba', - 'AX'=>'Åland', + 'AX'=>'Islas Aland', 'AZ'=>'Azerbaiyán', 'BA'=>'Bosnia y Herzegovina', 'BB'=>'Barbados', diff --git a/resources/lang/es-ES/mail.php b/resources/lang/es-ES/mail.php index 0b67799b4e65..1a9496da68b6 100644 --- a/resources/lang/es-ES/mail.php +++ b/resources/lang/es-ES/mail.php @@ -18,8 +18,8 @@ 'Expected_Checkin_Notification' => 'Recordatorio: :name se acerca la fecha de devolución', 'Expected_Checkin_Report' => 'Informe de próximas devoluciones de activos', 'Expiring_Assets_Report' => 'Informe de activos con garantía próxima a vencer.', - 'Expiring_Licenses_Report' => 'Informe de licencias que expiran.', - 'Item_Request_Canceled' => 'Solicitud de cancelación de requerimiento', + 'Expiring_Licenses_Report' => 'Informe de licencias próximas a vencer.', + 'Item_Request_Canceled' => 'Solicitud de artículo cancelada', 'Item_Requested' => 'Artículo solicitado', 'License_Checkin_Notification' => 'Licencia devuelta', 'License_Checkout_Notification' => 'Licencia asignada', @@ -30,7 +30,7 @@ 'acceptance_asset_declined' => 'Un usuario ha rechazado un elemento', 'accessory_name' => 'Nombre de accesorio', 'additional_notes' => 'Notas adicionales', - 'admin_has_created' => 'Un administrador ha creado una cuenta para ti en la web :web.', + 'admin_has_created' => 'Un administrador ha creado una cuenta para usted en el sitio :web.', 'asset' => 'Activo', 'asset_name' => 'Nombre del activo', 'asset_requested' => 'Activo solicitado', @@ -58,8 +58,8 @@ 'item' => 'Elemento', 'item_checked_reminder' => 'Este es un recordatorio de que actualmente tiene :count elemento(s) asignado(s) que no ha aceptado o rechazado. Haga clic en el siguiente enlace para confirmar su decisión.', 'license_expiring_alert' => 'Hay :count licencia que expira en los próximos :threshold días. | Hay :count licencias que expiran en los próximos :threshold días.', - 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar contraseña de :web :', - 'login' => 'Entrar:', + 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar su contraseña de :web :', + 'login' => 'Iniciar sesión:', 'login_first_admin' => 'Inicie sesión en su nueva instalación de Snipe-IT usando las credenciales:', 'low_inventory_alert' => 'Hay :count elemento que está por debajo del inventario mínimo o que pronto lo estará.|Hay :count elementos que están por debajo del inventario mínimo o que pronto lo estarán.', 'min_QTY' => 'Cantidad mínima', @@ -82,9 +82,9 @@ 'test_email' => 'Email de prueba de Snipe-IT', 'test_mail_text' => 'Esto es una prueba desde el sistema de gestión de activos Snipe-IT. Si recibió este mensaje, el correo está funcionando :)', 'the_following_item' => 'El siguiente artículo ha sido devuelto: ', - 'to_reset' => 'Para restaurar tu contraseña de :web, diligencie este formulario:', + 'to_reset' => 'Para restaurar su contraseña de :web, diligencie este formulario:', 'type' => 'Tipo', - 'upcoming-audits' => 'Hay :count para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', + 'upcoming-audits' => 'Hay :count activo para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', 'user' => 'Usuario', 'username' => 'Nombre de usuario', 'unaccepted_asset_reminder' => 'Tiene activos pendientes por aceptar.', diff --git a/resources/lang/es-ES/validation.php b/resources/lang/es-ES/validation.php index e2aeab816100..401b4b6af70a 100644 --- a/resources/lang/es-ES/validation.php +++ b/resources/lang/es-ES/validation.php @@ -143,7 +143,7 @@ 'required_if_accepted' => 'El campo :attribute es obligatorio cuando se acepta :other.', 'required_if_declined' => 'El campo :attribute es requerido cuando :other es rechazado.', 'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.', - 'required_with' => ':attribute es obligatrio cuando :values es present.', + 'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.', 'required_with_all' => 'El campo :attribute es requerido cuando :values están presentes.', 'required_without' => ':attribute es obligatrio cuando :values es not present.', 'required_without_all' => 'El campo :attribute es obligatorio cuando no está presente ninguno de los :values.', @@ -156,8 +156,8 @@ ], 'starts_with' => 'El campo :attribute debe iniciar con uno de los siguientes: :values.', 'string' => 'El atributo: debe ser una cadena.', - 'two_column_unique_undeleted' => ':attribute debe ser único a través de :table1 y :table2. ', - 'unique_undeleted' => 'El :attribute debe ser único.', + 'two_column_unique_undeleted' => ':attribute debe ser único entre la :table1 y :table2. ', + 'unique_undeleted' => ':attribute debe ser único.', 'non_circular' => ':attribute no debe crear una referencia circular.', 'not_array' => ':attribute no puede ser una matriz.', 'disallow_same_pwd_as_user_fields' => 'La contraseña no puede ser la misma que el nombre de usuario.', @@ -166,13 +166,14 @@ 'case_diff' => 'La contraseña debe usar mayúsculas y minúsculas.', 'symbols' => 'La contraseña debe contener símbolos.', 'timezone' => 'El campo :attribute debe ser una zona horaria válida.', - 'unique' => ':attribute ya ha sido introducido.', - 'uploaded' => 'El atributo: no se pudo cargar.', + 'unique' => ':attribute ya está en uso.', + 'uploaded' => ':attribute no se pudo cargar.', 'uppercase' => 'El campo :attribute debe estar en mayúsculas.', 'url' => 'El campo :attribute debe ser una URL válida.', 'ulid' => 'El campo :attribute debe ser un ULID válido.', 'uuid' => 'El campo :attribute debe ser un UUID válido.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -185,8 +186,8 @@ */ 'custom' => [ - 'alpha_space' => 'El campo: atributo contiene un carácter que no está permitido.', - 'email_array' => 'Una o más direcciones de correo electrónico no es válida.', + 'alpha_space' => 'El campo :attribute contiene un carácter que no está permitido.', + 'email_array' => 'Una o más direcciones de correo electrónico no son válidas.', 'hashed_pass' => 'Su contraseña actual es incorrecta', 'dumbpwd' => 'Esa contraseña es muy común.', 'statuslabel_type' => 'Debe seleccionar un tipo de etiqueta de estado válido.', @@ -194,18 +195,25 @@ 'custom_field_not_found_on_model' => 'Este campo parece existir, pero no está disponible en este conjunto de campos para el modelo de activo.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. - 'purchase_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD', - 'last_audit_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD hh:mm:ss', - 'expiration_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD', - 'termination_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD', - 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'start_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD', - 'end_date.date_format' => 'El :attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'purchase_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAAA-MM-DD hh:mm:ss', + 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', 'checkboxes' => ':attribute contiene opciones no válidas.', 'radio_buttons' => 'El valor de :attribute no es válido.', 'invalid_value_in_field' => 'Valor no válido incluido en este campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mezcla de mayúsculas y minúsculas) no funcionará. Debe utilizar samaccountname (minúsculas) en su lugar.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname probablemente no es un filtro de autenticación válido Probablemente quiera uid= '], + 'ldap_filter' => ['regex' => 'Este valor probablemente no debería ir entre paréntesis.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/es-MX/account/general.php b/resources/lang/es-MX/account/general.php index df7820e87ef3..b727b63023a5 100644 --- a/resources/lang/es-MX/account/general.php +++ b/resources/lang/es-MX/account/general.php @@ -5,11 +5,11 @@ 'personal_access_token' => 'Credencial de acceso personal', 'personal_api_keys_success' => 'Clave API personal :key creada correctamente', 'here_is_api_key' => 'Aquí tiene su nueva credencial de acceso personal. Esta es la única vez que se mostrará, así que no la pierda. Ahora puede utilizar esta credencial para realizar solicitudes a la API.', - 'api_key_warning' => 'Al generar una credencial para el API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', + 'api_key_warning' => 'Al generar una credencial para la API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', 'api_base_url' => 'La url base de su API se encuentra en:', 'api_base_url_endpoint' => '/<endpoint>', 'api_token_expiration_time' => 'Las credenciales de la API están establecidas para expirar en:', - 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoints) del API y documentación adicional.', + 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoins) de la API y documentación adicional.', 'profile_updated' => 'La cuenta fue actualizada exitosamente', 'no_tokens' => 'No ha creado ninguna credencial de acceso personal.', 'enable_sounds' => 'Habilitar efectos de sonido', diff --git a/resources/lang/es-MX/admin/accessories/general.php b/resources/lang/es-MX/admin/accessories/general.php index 12f456686d9d..7b479fbbf4c7 100644 --- a/resources/lang/es-MX/admin/accessories/general.php +++ b/resources/lang/es-MX/admin/accessories/general.php @@ -5,17 +5,17 @@ 'accessory_name' => 'Nombre de accesorio', 'checkout' => 'Asignar accesorio', 'checkin' => 'Ingresar accesorio', - 'create' => 'Crear Accesorio', - 'edit' => 'Editar Accesorio', + 'create' => 'Crear accesorio', + 'edit' => 'Editar accesorio', 'eula_text' => 'Acuerdo de uso de la categoría', - 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor por predeterminado.', + 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor predeterminado.', 'require_acceptance' => 'Pedir a los usuarios confirmación de aceptación de los elementos en esta categoría.', 'no_default_eula' => 'No se encontró el acuerdo de uso predeterminado. Agregue unos en Configuración.', 'total' => 'Total ', 'remaining' => 'Disponibles', 'update' => 'Actualizar accesorio', - 'use_default_eula' => 'En su lugar, el acuerdo de uso predeterminado.', - 'use_default_eula_disabled' => 'En su lugar, use el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', + 'use_default_eula' => 'En su lugar, utilice el acuerdo de uso predeterminado.', + 'use_default_eula_disabled' => 'En su lugar, utilice el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', 'clone' => 'Clonar accesorio', 'delete_disabled' => 'Este accesorio no se puede eliminar aún porque algunos elementos todavía están asignados.', diff --git a/resources/lang/es-MX/admin/accessories/table.php b/resources/lang/es-MX/admin/accessories/table.php index 1a2d33e1eb93..70134246f6c2 100644 --- a/resources/lang/es-MX/admin/accessories/table.php +++ b/resources/lang/es-MX/admin/accessories/table.php @@ -5,7 +5,7 @@ 'eula_text' => 'Acuerdo de uso', 'id' => 'ID', 'require_acceptance' => 'Aceptación', - 'title' => 'Nombre accesorio', + 'title' => 'Nombre del accesorio', ); diff --git a/resources/lang/es-MX/admin/asset_maintenances/form.php b/resources/lang/es-MX/admin/asset_maintenances/form.php index c78a73303216..dfda6be9c5b9 100644 --- a/resources/lang/es-MX/admin/asset_maintenances/form.php +++ b/resources/lang/es-MX/admin/asset_maintenances/form.php @@ -1,14 +1,14 @@ 'Tipo de mantenimiento de equipo', + 'asset_maintenance_type' => 'Tipo de mantenimiento del activo', 'title' => 'Título', 'start_date' => 'Fecha de inicio', 'completion_date' => 'Fecha de finalización', 'cost' => 'Costo', - 'is_warranty' => 'Mejora de la Garantía', + 'is_warranty' => 'Mejora de la garantía', 'asset_maintenance_time' => 'Duración del mantenimiento (en días)', 'notes' => 'Notas', - 'update' => 'Actualizar Mantenimiento de Activo', - 'create' => 'Crear Mantenimiento de Activo' + 'update' => 'Actualizar mantenimiento del activo', + 'create' => 'Crear mantenimiento del activo' ]; diff --git a/resources/lang/es-MX/admin/asset_maintenances/general.php b/resources/lang/es-MX/admin/asset_maintenances/general.php index 5a69545b6ac3..77c6a419f0f5 100644 --- a/resources/lang/es-MX/admin/asset_maintenances/general.php +++ b/resources/lang/es-MX/admin/asset_maintenances/general.php @@ -2,12 +2,12 @@ return [ 'asset_maintenances' => 'Mantenimiento de activos', - 'edit' => 'Editar Mantenimiento de Equipo', - 'delete' => 'Eliminar Mantenimiento de Equipo', - 'view' => 'Ver Detalle de Mantenimiento de Equipo', - 'repair' => 'Reparación', + 'edit' => 'Editar mantenimiento del activo', + 'delete' => 'Eliminar mantenimiento del activo', + 'view' => 'Ver detalles del mantenimiento del activo', + 'repair' => 'Reparar', 'maintenance' => 'Mantenimiento', - 'upgrade' => 'Mejora', + 'upgrade' => 'Mejorar', 'calibration' => 'Calibración', 'software_support' => 'Soporte de software', 'hardware_support' => 'Soporte de hardware', diff --git a/resources/lang/es-MX/admin/asset_maintenances/message.php b/resources/lang/es-MX/admin/asset_maintenances/message.php index 91745603a280..c7caffb3f4bd 100644 --- a/resources/lang/es-MX/admin/asset_maintenances/message.php +++ b/resources/lang/es-MX/admin/asset_maintenances/message.php @@ -5,7 +5,7 @@ 'delete' => [ 'confirm' => '¿Está seguro de que desea eliminar el mantenimiento de este activo?', 'error' => 'Hubo un problema al eliminar el mantenimiento del activo. Por favor inténtelo nuevamente.', - 'success' => 'El mantenimiento de equipo fue eliminado de manera exitosa.', + 'success' => 'El mantenimiento del activo fue eliminado de manera exitosa.', ], 'create' => [ 'error' => 'El Mantenimiento de Equipo no fue creado, por favor intente nuevamente.', @@ -13,9 +13,9 @@ ], 'edit' => [ 'error' => 'El mantenimiento del activo no fue editado. Por favor, inténtelo de nuevo.', - 'success' => 'Mantenimiento de activo editado con éxito.', + 'success' => 'Mantenimiento del activo editado con éxito.', ], - 'asset_maintenance_incomplete' => 'Sin Completar', + 'asset_maintenance_incomplete' => 'Aún no se ha completado', 'warranty' => 'Garantía', - 'not_warranty' => 'Sin Garantía', + 'not_warranty' => 'Sin garantía', ]; diff --git a/resources/lang/es-MX/admin/asset_maintenances/table.php b/resources/lang/es-MX/admin/asset_maintenances/table.php index adabb3ff69fa..6da43b1c7731 100644 --- a/resources/lang/es-MX/admin/asset_maintenances/table.php +++ b/resources/lang/es-MX/admin/asset_maintenances/table.php @@ -1,7 +1,7 @@ 'Mantenimiento de Equipo', + 'title' => 'Mantenimiento del activo', 'asset_name' => 'Nombre del activo', 'is_warranty' => 'Garantía', 'dl_csv' => 'Descargar CSV', diff --git a/resources/lang/es-MX/admin/categories/general.php b/resources/lang/es-MX/admin/categories/general.php index bd99e59d2e06..6913375d8bec 100644 --- a/resources/lang/es-MX/admin/categories/general.php +++ b/resources/lang/es-MX/admin/categories/general.php @@ -14,7 +14,7 @@ 'eula_text_help' => 'Este campo permite personalizar el acuerdo de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar la definición predeterminada.', 'name' => 'Nombre de la categoría', 'require_acceptance' => 'Requerir a los usuarios que confirmen la aceptación de los elementos en esta categoría.', - 'required_acceptance' => 'Este usuario recibirá un correo con un enlace para confirmar la aceptación de este elemento.', + 'required_acceptance' => 'Este usuario recibirá un correo electrónico con un enlace para confirmar la aceptación de este elemento.', 'required_eula' => 'Se enviará un correo electrónico a este usuario con una copia del acuerdo de uso', 'no_default_eula' => 'No se encontró una definición del acuerdo de uso por defecto. Agregue uno en Configuración.', 'update' => 'Actualizar categoría', diff --git a/resources/lang/es-MX/admin/companies/message.php b/resources/lang/es-MX/admin/companies/message.php index b4e744a8ea1d..8f2cb9323ea2 100644 --- a/resources/lang/es-MX/admin/companies/message.php +++ b/resources/lang/es-MX/admin/companies/message.php @@ -3,18 +3,18 @@ return [ 'does_not_exist' => 'La compañía no existe.', 'deleted' => 'Compañía eliminada', - 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtalo de nuevo. ', + 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtelo de nuevo. ', 'create' => [ - 'error' => 'Esta compañía no ha sido creada, por favor pruebe de nuevo.', + 'error' => 'La compañía no fue creada, por favor, inténtelo de nuevo.', 'success' => 'Compañía creada satisfactoriamente.', ], 'update' => [ - 'error' => 'Compañía no actualizada, por favor inténtelo de nuevo', + 'error' => 'La compañía no fue actualizada, por favor, inténtelo de nuevo', 'success' => 'Compañía actualizada correctamente.', ], 'delete' => [ 'confirm' => '¿Está seguro de que quiere eliminar esta compañía?', - 'error' => 'Hubo un problema eliminando esta compañía. Inténtelo de nuevo.', - 'success' => 'Esta compañía se eliminó satisfactoriamente.', + 'error' => 'Hubo un problema eliminando la compañía. Por favor, inténtelo de nuevo.', + 'success' => 'La compañía fue eliminada correctamente.', ], ]; diff --git a/resources/lang/es-MX/admin/companies/table.php b/resources/lang/es-MX/admin/companies/table.php index dc5d0c230f1c..1cc605dfd19b 100644 --- a/resources/lang/es-MX/admin/companies/table.php +++ b/resources/lang/es-MX/admin/companies/table.php @@ -1,11 +1,11 @@ 'Compañías', - 'create' => 'Crear Compañía', + 'create' => 'Crear una compañía', 'email' => 'Correo electrónico de la compañía', 'title' => 'Compañía', 'phone' => 'Teléfono de la compañía', - 'update' => 'Actualizar Compañía', - 'name' => 'Nombre de Compañía', + 'update' => 'Actualizar compañía', + 'name' => 'Nombre de la compañía', 'id' => 'ID', ); diff --git a/resources/lang/es-MX/admin/components/general.php b/resources/lang/es-MX/admin/components/general.php index e4d9184ef4d5..4f4a97e381a4 100644 --- a/resources/lang/es-MX/admin/components/general.php +++ b/resources/lang/es-MX/admin/components/general.php @@ -1,7 +1,7 @@ 'Nombre de Componente', + 'component_name' => 'Nombre del componente', 'checkin' => 'Ingresar componente', 'checkout' => 'Asignar componente', 'cost' => 'Costo de compra', @@ -11,6 +11,6 @@ 'order' => 'Número de orden', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Componente', + 'update' => 'Actualizar componente', 'checkin_limit' => 'La cantidad ingresada debe ser igual o menor que :assigned_qty' ); diff --git a/resources/lang/es-MX/admin/components/message.php b/resources/lang/es-MX/admin/components/message.php index 1f68cf977d3a..a936648f13f6 100644 --- a/resources/lang/es-MX/admin/components/message.php +++ b/resources/lang/es-MX/admin/components/message.php @@ -11,13 +11,13 @@ 'update' => array( 'error' => 'El componente no se actualizó, por favor inténtelo de nuevo', - 'success' => 'Componente actualizado satisfactoriamente.' + 'success' => 'Componente actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este componente?', 'error' => 'Hubo un problema eliminando el componente. Por favor, inténtelo de nuevo.', - 'success' => 'El componente fue borrado satisfactoriamente.' + 'success' => 'El componente fue borrado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-MX/admin/components/table.php b/resources/lang/es-MX/admin/components/table.php index 92a95311abdc..8f4de5c93ce1 100644 --- a/resources/lang/es-MX/admin/components/table.php +++ b/resources/lang/es-MX/admin/components/table.php @@ -1,5 +1,5 @@ 'Nombre de Componente', + 'title' => 'Nombre de componente', ); diff --git a/resources/lang/es-MX/admin/consumables/general.php b/resources/lang/es-MX/admin/consumables/general.php index f1a2debb721e..579a705fb20f 100644 --- a/resources/lang/es-MX/admin/consumables/general.php +++ b/resources/lang/es-MX/admin/consumables/general.php @@ -2,11 +2,11 @@ return array( 'checkout' => 'Asignar consumible a usuario', - 'consumable_name' => 'Nombre del Consumible', - 'create' => 'Crear Consumible', - 'item_no' => 'Artículo núm.', + 'consumable_name' => 'Nombre del consumible', + 'create' => 'Crear consumible', + 'item_no' => 'Artículo No.', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Consumible', + 'update' => 'Actualizar consumible', 'inventory_warning' => 'El inventario de este consumible está por debajo de la cantidad mínima de :min_count', ); diff --git a/resources/lang/es-MX/admin/consumables/message.php b/resources/lang/es-MX/admin/consumables/message.php index 21d88657da6e..ca3da8895a50 100644 --- a/resources/lang/es-MX/admin/consumables/message.php +++ b/resources/lang/es-MX/admin/consumables/message.php @@ -12,7 +12,7 @@ 'update' => array( 'error' => 'El consumible no fue actualizado, por favor, inténtelo de nuevo', - 'success' => 'El consumible fue subido con éxito.' + 'success' => 'Consumible actualizado correctamente.' ), 'delete' => array( diff --git a/resources/lang/es-MX/admin/consumables/table.php b/resources/lang/es-MX/admin/consumables/table.php index befcfc511b36..2e346e29622e 100644 --- a/resources/lang/es-MX/admin/consumables/table.php +++ b/resources/lang/es-MX/admin/consumables/table.php @@ -1,5 +1,5 @@ 'Nombre del Consumible', + 'title' => 'Nombre del consumible', ); diff --git a/resources/lang/es-MX/admin/custom_fields/general.php b/resources/lang/es-MX/admin/custom_fields/general.php index b9fd8573fb10..e150dcbb2a60 100644 --- a/resources/lang/es-MX/admin/custom_fields/general.php +++ b/resources/lang/es-MX/admin/custom_fields/general.php @@ -2,7 +2,7 @@ return [ 'custom_fields' => 'Campos personalizados', - 'manage' => 'Administra', + 'manage' => 'Administrar', 'field' => 'Campo', 'about_fieldsets_title' => 'Acerca de los grupos de campos', 'about_fieldsets_text' => 'Los grupos de campos le permiten agrupar campos personalizados que se reutilizan frecuentemente para determinados modelos de activos.', @@ -12,16 +12,16 @@ 'encrypted' => 'Cifrado', 'fieldset' => 'Grupo de campos', 'qty_fields' => 'Campos de cantidad', - 'fieldsets' => 'Grupo de campos', + 'fieldsets' => 'Grupos de campos', 'fieldset_name' => 'Nombre del grupo de campos', 'field_name' => 'Nombre del campo', - 'field_values' => 'Valores de los Campos', - 'field_values_help' => 'Agregar opciones seleccionables, una por linea. Lineas en blanco ademas de la primera, serán ignoradas.', + 'field_values' => 'Valores de los campos', + 'field_values_help' => 'Agregue opciones seleccionables, una por línea. Se ignorarán las líneas en blanco que no sean la primera.', 'field_element' => 'Elemento de formulario', 'field_element_short' => 'Elemento', 'field_format' => 'Formato', - 'field_custom_format' => 'Formato personalizado', - 'field_custom_format_help' => 'Este campo te permite usar una expresión regex para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podrías usar regex:/^[0-9]{15}$/.', + 'field_custom_format' => 'Expresión regular personalizada', + 'field_custom_format_help' => 'Este campo le permite usar una expresión regular para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podría usar regex:/^[0-9]{15}$/.', 'required' => 'Obligatorio', 'req' => 'Obl.', 'used_by_models' => 'Usado por los modelos', @@ -30,30 +30,30 @@ 'update_fieldset' => 'Actualizar grupo de campos', 'fieldset_does_not_exist' => 'El grupo de campos :id no existe', 'fieldset_updated' => 'Se actualizó el grupo de campos', - 'create_fieldset_title' => 'Crear nuevo grupo de campos', + 'create_fieldset_title' => 'Crear un nuevo grupo de campos', 'create_field' => 'Nuevo campo personalizado', 'create_field_title' => 'Crear un nuevo campo personalizado', 'value_encrypted' => 'El valor de este campo está cifrado en la base de datos. Solo los administradores pueden ver el valor descifrado', - 'show_in_email' => '¿Incluir el campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', - 'show_in_email_short' => 'Incluye en correos electrónicos.', + 'show_in_email' => '¿Incluir el valor de este campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', + 'show_in_email_short' => 'Incluir en los correos electrónicos.', 'help_text' => 'Texto de ayuda', 'help_text_description' => 'Este es un texto opcional que aparecerá debajo de los campos del formulario cuando se edite un activo para proporcionar contexto adicional.', - 'about_custom_fields_title' => 'Acerca de los Campos Personalizados', + 'about_custom_fields_title' => 'Acerca de los campos personalizados', 'about_custom_fields_text' => 'Los campos personalizados te permiten agregar atributos arbritarios a los activos.', 'add_field_to_fieldset' => 'Añadir campo al grupo de campos', - 'make_optional' => 'Requerido - haga clic para hacerlo opcional', - 'make_required' => 'Requerido - haga clic para hacerlo opcional', + 'make_optional' => 'Obligatorio - haga clic para hacerlo opcional', + 'make_required' => 'Opcional - haga clic para que sea obligatorio', 'reorder' => 'Reordenar', 'db_field' => 'Campo en base de datos', 'db_convert_warning' => 'ADVERTENCIA. Este campo está en la tabla de campos personalizados como :db_column pero debe ser :expected.', - 'is_unique' => 'Este valor debe ser único a través de todos los activos', + 'is_unique' => 'Este valor debe ser único para todos los activos', 'unique' => 'Único', 'display_in_user_view' => 'Permitir al usuario ver estos valores en la página "Ver elementos asignados"', - 'display_in_user_view_table' => 'Visible al Usuario', + 'display_in_user_view_table' => 'Visible para el usuario', 'auto_add_to_fieldsets' => 'Añadir automáticamente a cada nuevo grupo de campos', 'add_to_preexisting_fieldsets' => 'Añadir a cualquier grupo de campos existente', 'show_in_listview' => 'Mostrar por defecto en las consultas. Los usuarios autorizados podrán mostrar/ocultar a través del selector de columnas', - 'show_in_listview_short' => 'Mostrar en listas', + 'show_in_listview_short' => 'Mostrar en las listas', 'show_in_requestable_list_short' => 'Mostrar en la lista de activos que se pueden solicitar', 'show_in_requestable_list' => 'Mostrar el valor en la lista de activos que se pueden solicitar. Los campos cifrados no se mostrarán', 'encrypted_options' => 'Este campo está cifrado, por lo que algunas opciones de visualización no estarán disponibles.', diff --git a/resources/lang/es-MX/admin/custom_fields/message.php b/resources/lang/es-MX/admin/custom_fields/message.php index dcb56133bf7a..11bb8ba28531 100644 --- a/resources/lang/es-MX/admin/custom_fields/message.php +++ b/resources/lang/es-MX/admin/custom_fields/message.php @@ -10,19 +10,19 @@ 'create' => array( 'error' => 'Campo no creado, por favor, inténtalo de nuevo.', 'success' => 'Campo creado correctamente.', - 'assoc_success' => 'Campo correctamente añadido al grupo.' + 'assoc_success' => 'Campo correctamente añadido al grupo de campos.' ), 'update' => array( - 'error' => 'Campo no actualizado, por favor inténtelo de nuevo', + 'error' => 'El campo no fue actualizado, por favor, inténtelo de nuevo', 'success' => 'Campo actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que quiere eliminar este campo?', - 'error' => 'Hubo un problema al eliminar el campo. Inténtelo de nuevo.', + 'error' => 'Hubo un problema al eliminar el campo. Por favor, inténtelo de nuevo.', 'success' => 'El campo se eliminó correctamente.', - 'in_use' => 'El campo está aún en uso.', + 'in_use' => 'El campo aún está en uso.', ) ), @@ -45,14 +45,14 @@ 'confirm' => '¿Está seguro de que quiere eliminar este grupo de campos?', 'error' => 'Hubo un problema al eliminar el grupo de campos. Inténtelo de nuevo.', 'success' => 'El grupo de campos se eliminó correctamente.', - 'in_use' => 'El grupo de campos está aún en uso.', + 'in_use' => 'El grupo de campos aún está en uso.', ) ), 'fieldset_default_value' => array( - 'error' => 'Error al validar los valores por defecto del grupo de campos.', + 'error' => 'Error al validar los valores predeterminados del grupo de campos.', ), diff --git a/resources/lang/es-MX/admin/departments/message.php b/resources/lang/es-MX/admin/departments/message.php index 2a7001ad3a28..eabf4774d8ff 100644 --- a/resources/lang/es-MX/admin/departments/message.php +++ b/resources/lang/es-MX/admin/departments/message.php @@ -7,7 +7,7 @@ 'assoc_users' => 'Este departamento está actualmente asociado con al menos un usuario y no puede ser eliminado. Por favor, actualice sus usuarios para que no hagan referencia a este departamento e inténtelo de nuevo. ', 'create' => array( 'error' => 'El departamento no fue creado, por favor, inténtelo de nuevo.', - 'success' => 'Departamento creado con éxito.' + 'success' => 'Departamento creado correctamente.' ), 'update' => array( 'error' => 'El departamento no fue actualizado, por favor inténtelo de nuevo', @@ -16,7 +16,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este departamento?', 'error' => 'Hubo un problema al borrar el departamento. Por favor, inténtelo de nuevo.', - 'success' => 'El departamento ha sido borrado exitosamente' + 'success' => 'El departamento fue eliminado correctamente.' ) ); diff --git a/resources/lang/es-MX/admin/departments/table.php b/resources/lang/es-MX/admin/departments/table.php index bca0490eef2f..da02f3e3a3f2 100644 --- a/resources/lang/es-MX/admin/departments/table.php +++ b/resources/lang/es-MX/admin/departments/table.php @@ -3,7 +3,7 @@ return array( 'id' => 'ID', - 'name' => 'Nombre de Departamento', + 'name' => 'Nombre del departamento', 'manager' => 'Supervisor', 'location' => 'Ubicación', 'create' => 'Crear departamento', diff --git a/resources/lang/es-MX/admin/groups/message.php b/resources/lang/es-MX/admin/groups/message.php index 3b391971385e..529e14d4b3d5 100644 --- a/resources/lang/es-MX/admin/groups/message.php +++ b/resources/lang/es-MX/admin/groups/message.php @@ -8,15 +8,15 @@ 'success' => array( 'create' => 'Grupo creado.', - 'update' => 'Grupo actualizado.', - 'delete' => 'Grupo eliminado.', + 'update' => 'El grupo fue actualizado exitosamente.', + 'delete' => 'El grupo fue eliminado exitosamente.', ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este grupo?', - 'create' => 'Hubo un problema creando el grupo. Por favor intente nuevamente.', + 'create' => 'Hubo un problema creando el grupo. Por favor, intente nuevamente.', 'update' => 'Hubo un problema actualizando el grupo. Por favor, intente nuevamente.', - 'delete' => 'Ha habido un problema eliminando el grupo. Vuelve a intentarlo.', + 'delete' => 'Hubo un problema eliminando el grupo. Por favor, intente nuevamente.', ), ); diff --git a/resources/lang/es-MX/admin/groups/table.php b/resources/lang/es-MX/admin/groups/table.php index c002d06ba8e2..15118151851d 100644 --- a/resources/lang/es-MX/admin/groups/table.php +++ b/resources/lang/es-MX/admin/groups/table.php @@ -2,8 +2,8 @@ return array( - 'id' => 'ID', + 'id' => 'Id', 'name' => 'Nombre', - 'users' => '# de Usuarios', + 'users' => '# de usuarios', ); diff --git a/resources/lang/es-MX/admin/groups/titles.php b/resources/lang/es-MX/admin/groups/titles.php index 0b49feaa7a9c..d139ee66c790 100644 --- a/resources/lang/es-MX/admin/groups/titles.php +++ b/resources/lang/es-MX/admin/groups/titles.php @@ -2,12 +2,12 @@ return [ 'about_groups_title' => 'Acerca de los grupos', - 'about_groups' => 'Los Grupos son usados para generar permisos de usuarios.', - 'group_management' => 'Gestión de Grupos', + 'about_groups' => 'Los grupos se utilizan para generalizar los permisos de usuario.', + 'group_management' => 'Administración de grupos', 'create' => 'Crear un grupo nuevo', - 'update' => 'Editar Grupo', + 'update' => 'Editar grupo', 'group_name' => 'Nombre de Grupo', - 'group_admin' => 'Admin Grupo', + 'group_admin' => 'Grupo administrador', 'allow' => 'Permitir', 'deny' => 'Denegar', 'permission' => 'Permiso', diff --git a/resources/lang/es-MX/admin/hardware/message.php b/resources/lang/es-MX/admin/hardware/message.php index b8084131dc56..502f2b963e44 100644 --- a/resources/lang/es-MX/admin/hardware/message.php +++ b/resources/lang/es-MX/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'El activo no fue creado, por favor, inténtelo de nuevo. :(', 'success' => 'Activo creado con éxito. :)', 'success_linked' => 'Activo con placa :tag creado con éxito. Haga clic aquí para ver.', + 'multi_success_linked' => 'Activo con etiqueta :links fue creado exitosamente.|:count activos fueron creados correctamente. :links.', + 'partial_failure' => 'No se ha podido crear un activo: Motivo: :failures|No se pudieron crear :count activos. Motivos: :failures', ], 'update' => [ @@ -68,7 +70,7 @@ 'confirm' => '¿Está seguro de que desea eliminar este activo?', 'error' => 'Hubo un problema al eliminar el activo. Por favor, inténtelo de nuevo.', 'nothing_updated' => 'No se seleccionaron los activos, por lo que no se eliminó nada.', - 'success' => 'Equipo eliminado.', + 'success' => 'El activo se ha eliminado correctamente.', ], 'checkout' => [ @@ -76,7 +78,12 @@ 'success' => 'Equipo asignado correctamente.', 'user_does_not_exist' => 'Este usuario no es correcto. Por favor, inténtelo de nuevo.', 'not_available' => '¡Ese equipo no está disponible para ser asignado!', - 'no_assets_selected' => 'Debes seleccionar al menos un elemento de la lista', + 'no_assets_selected' => 'Debe seleccionar al menos un elemento de la lista', + ], + + 'multi-checkout' => [ + 'error' => 'El activo no fue asignado, por favor, intente nuevamente|Los activos no fueron asignados, por favor, intente nuevamente', + 'success' => 'El activo fue asignado correctamente|Los activos fueron asignados correctamente.', ], 'checkin' => [ diff --git a/resources/lang/es-MX/admin/kits/general.php b/resources/lang/es-MX/admin/kits/general.php index 11617694cb66..030d3d59d128 100644 --- a/resources/lang/es-MX/admin/kits/general.php +++ b/resources/lang/es-MX/admin/kits/general.php @@ -16,12 +16,12 @@ 'append_accessory' => 'Añadir accesorio', 'update_appended_accessory' => 'Actualizar accesorio añadido', 'append_consumable' => 'Añadir consumible', - 'update_appended_consumable' => 'Actualizar consumible adjunto', + 'update_appended_consumable' => 'Actualizar consumible añadido', 'append_license' => 'Añadir licencia', 'update_appended_license' => 'Actualizar licencia añadida', 'append_model' => 'Añadir modelo', 'update_appended_model' => 'Actualizar modelo añadido', - 'license_error' => 'Licencia ya está vinculada al kit', + 'license_error' => 'Licencia ya vinculada al kit', 'license_added_success' => 'Licencia añadida correctamente', 'license_updated' => 'La licencia fue actualizada correctamente', 'license_none' => 'La licencia no existe', @@ -30,7 +30,7 @@ 'consumable_updated' => 'El consumible fue actualizado correctamente', 'consumable_error' => 'Consumible ya vinculado al kit', 'consumable_deleted' => 'El borrado fue exitoso', - 'consumable_none' => 'El Consumible no existe', + 'consumable_none' => 'El consumible no existe', 'consumable_detached' => 'Consumible desvinculado correctamente', 'accessory_added_success' => 'Accesorio añadido correctamente', 'accessory_updated' => 'El accesorio fue actualizado correctamente', @@ -40,12 +40,12 @@ 'accessory_none' => 'El accesorio no existe', 'checkout_success' => 'Asignación correcta', 'checkout_error' => 'Error al asignar', - 'kit_none' => 'El Kit no existe', + 'kit_none' => 'El kit no existe', 'kit_created' => 'Kit creado correctamente', 'kit_updated' => 'El kit fue actualizado correctamente', 'kit_not_found' => 'Kit no encontrado', - 'kit_deleted' => 'El kit ha sido eliminado correctamente', + 'kit_deleted' => 'El kit fue eliminado correctamente', 'kit_model_updated' => 'El modelo fue actualizado correctamente', - 'kit_model_detached' => 'Modelo desvinculado correctamente', + 'kit_model_detached' => 'El modelo fue desvinculado correctamente', 'model_already_attached' => 'Modelo ya vinculado al kit', ]; diff --git a/resources/lang/es-MX/admin/labels/message.php b/resources/lang/es-MX/admin/labels/message.php index 01006397cb89..f97118deb285 100644 --- a/resources/lang/es-MX/admin/labels/message.php +++ b/resources/lang/es-MX/admin/labels/message.php @@ -2,9 +2,9 @@ return [ - 'invalid_return_count' => 'El recuento no es válido desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_type' => 'Tipo no válido devuelto desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_value' => 'Valor no válido devuelto de :name. Esperado :expected, obtenido :actual.', + 'invalid_return_count' => 'Cantidad incorrecta devuelta por :name. Se esperaba :expected, obtenido :actual.', + 'invalid_return_type' => 'Tipo no válido devuelto por :name. Esperado :expected, obtenido :actual.', + 'invalid_return_value' => 'Valor no válido devuelto por :name. Esperado :expected, obtenido :actual.', 'does_not_exist' => 'La etiqueta no existe', diff --git a/resources/lang/es-MX/admin/labels/table.php b/resources/lang/es-MX/admin/labels/table.php index 055d28c169ef..fab4d8f9dba4 100644 --- a/resources/lang/es-MX/admin/labels/table.php +++ b/resources/lang/es-MX/admin/labels/table.php @@ -3,7 +3,7 @@ return [ 'example_company' => 'Compañía de prueba limitada', 'example_defaultloc' => 'Construcción 1', - 'example_category' => 'Probar categoría', + 'example_category' => 'Categoría de prueba', 'example_location' => 'Edificio 2', 'example_manufacturer' => 'Test Manufacturing Inc.', 'example_model' => 'Modelo de prueba', diff --git a/resources/lang/es-MX/admin/licenses/form.php b/resources/lang/es-MX/admin/licenses/form.php index 37234d8d242b..576492224b43 100644 --- a/resources/lang/es-MX/admin/licenses/form.php +++ b/resources/lang/es-MX/admin/licenses/form.php @@ -6,10 +6,10 @@ 'checkin' => 'Ingresar', 'create' => 'Crear licencia', 'expiration' => 'Fecha de vencimiento', - 'license_key' => 'Clave de producto', - 'maintained' => 'Mantenido', - 'name' => 'Aplicación', - 'no_depreciation' => 'No Amortizar', + 'license_key' => 'Clave del producto', + 'maintained' => 'Tiene mantenimiento', + 'name' => 'Nombre del software', + 'no_depreciation' => 'No amortizar', 'purchase_order' => 'Número de orden de compra', 'reassignable' => 'Reasignable', 'remaining_seats' => 'Disponibles', @@ -17,6 +17,6 @@ 'termination_date' => 'Fecha de finalización', 'to_email' => 'Correo electrónico asociado a la licencia', 'to_name' => 'Nombre de la persona asociada a la licencia', - 'update' => 'Actualizar Licencia', + 'update' => 'Actualizar licencia', 'checkout_help' => 'Debe asignar una licencia a un activo de hardware o a una persona. Puede seleccionar ambos, pero el propietario del activo debe coincidir con la persona a la que está asignado el activo.' ); diff --git a/resources/lang/es-MX/admin/licenses/general.php b/resources/lang/es-MX/admin/licenses/general.php index 847e64d75eb2..5b474ef407e5 100644 --- a/resources/lang/es-MX/admin/licenses/general.php +++ b/resources/lang/es-MX/admin/licenses/general.php @@ -6,20 +6,20 @@ 'checkin' => 'Ingresar licencia', 'checkout_history' => 'Historial de asignaciones', 'checkout' => 'Asignar licencia', - 'edit' => 'Editar Usuario', - 'filetype_info' => 'Tipos de archivos permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', - 'clone' => 'Clonar Usuario', + 'edit' => 'Editar licencia', + 'filetype_info' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', + 'clone' => 'Clonar licencia', 'history_for' => 'Historial para ', 'in_out' => 'Quita/Asigna', - 'info' => 'Info Licencia', + 'info' => 'Información de licencia', 'license_seats' => 'Total de licencias', 'seat' => 'Licencia', 'seat_count' => 'Licencia :count', 'seats' => 'Total de licencias', - 'software_licenses' => 'Licencias Software', + 'software_licenses' => 'Licencias de software', 'user' => 'Usuario', - 'view' => 'Ver Licencias', - 'delete_disabled' => 'Esta licencia no se puede eliminar aún está asignada a algunos usuarios.', + 'view' => 'Ver licencia', + 'delete_disabled' => 'Esta licencia no se puede eliminar porque todavía está asignada.', 'bulk' => [ 'checkin_all' => [ @@ -47,6 +47,6 @@ ], ], - 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede considerar la compra de más licencias.', + 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede que desee considerar la compra de más licencias.', 'below_threshold_short' => 'Este artículo está por debajo de la cantidad mínima requerida.', ); diff --git a/resources/lang/es-MX/admin/licenses/message.php b/resources/lang/es-MX/admin/licenses/message.php index d7f5c33d57a7..37a307c640e3 100644 --- a/resources/lang/es-MX/admin/licenses/message.php +++ b/resources/lang/es-MX/admin/licenses/message.php @@ -37,7 +37,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar esta licencia?', 'error' => 'Hubo un problema al eliminar la licencia. Por favor, inténtelo de nuevo.', - 'success' => 'Categoría eliminada.' + 'success' => 'La licencia se ha eliminado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-MX/admin/licenses/table.php b/resources/lang/es-MX/admin/licenses/table.php index b2e4a8b499e4..b8ce5f2448b8 100644 --- a/resources/lang/es-MX/admin/licenses/table.php +++ b/resources/lang/es-MX/admin/licenses/table.php @@ -2,7 +2,7 @@ return array( - 'assigned_to' => 'Asignada a', + 'assigned_to' => 'Asignado a', 'checkout' => 'Entrada/Salida', 'deleted_at' => 'Eliminado el', 'id' => 'ID', @@ -12,7 +12,7 @@ 'purchased' => 'Comprada', 'seats' => 'Total de licencias', 'hardware' => 'Hardware', - 'serial' => 'N. Serie', - 'title' => 'Categoría de equipo', + 'serial' => 'Número de serie', + 'title' => 'Licencia', ); diff --git a/resources/lang/es-MX/admin/locations/table.php b/resources/lang/es-MX/admin/locations/table.php index 743dab7aae93..bb3f3d3fdbbb 100644 --- a/resources/lang/es-MX/admin/locations/table.php +++ b/resources/lang/es-MX/admin/locations/table.php @@ -9,7 +9,7 @@ 'city' => 'Ciudad', 'state' => 'Provincia', 'country' => 'País', - 'create' => 'Crear Ubicación', + 'create' => 'Crear ubicación', 'update' => 'Actualizar ubicación', 'print_assigned' => 'Imprimir los asignados', 'print_all_assigned' => 'Imprimir todos los asignados', diff --git a/resources/lang/es-MX/admin/manufacturers/message.php b/resources/lang/es-MX/admin/manufacturers/message.php index 85dee8043f53..4e25322f0cd1 100644 --- a/resources/lang/es-MX/admin/manufacturers/message.php +++ b/resources/lang/es-MX/admin/manufacturers/message.php @@ -3,22 +3,22 @@ return array( 'support_url_help' => 'Variables {LOCALE}, {SERIAL}, {MODEL_NUMBER}, y {MODEL_NAME} se pueden utilizar en su URL para que esos valores se llenen automáticamente al ver los activos - por ejemplo https://checkcoverage. pple.com/{LOCALE}/{SERIAL}.', - 'does_not_exist' => 'Fabricante inexistente.', + 'does_not_exist' => 'El fabricante no existe.', 'assoc_users' => 'Este fabricante está actualmente asociado con al menos un modelo y no se puede eliminar. Por favor, actualice sus modelos para dejar de hacer referencia a este fabricante y vuelva a intentarlo. ', 'create' => array( 'error' => 'El fabricante no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Fabricante creado.' + 'success' => 'Fabricante creado exitosamente.' ), 'update' => array( - 'error' => 'El fabricante no fue actualizado, por favor inténtelo de nuevo', - 'success' => 'Fabricante actualizado.' + 'error' => 'El fabricante no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante se ha actualizado exitosamente.' ), 'restore' => array( - 'error' => 'El fabricante no fue restaurado, intente de nuevo', - 'success' => 'Fabricante restaurado con éxito.' + 'error' => 'El fabricante no fue restaurado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante fue restaurado exitosamente.' ), 'delete' => array( diff --git a/resources/lang/es-MX/admin/manufacturers/table.php b/resources/lang/es-MX/admin/manufacturers/table.php index 87607feb2a6d..a29fe35d387b 100644 --- a/resources/lang/es-MX/admin/manufacturers/table.php +++ b/resources/lang/es-MX/admin/manufacturers/table.php @@ -1,7 +1,7 @@ 'Sobre fabricantes', + 'about_manufacturers_title' => 'Sobre los fabricantes', 'about_manufacturers_text' => 'Los fabricantes son las empresas que crean sus activos. Aquí puede almacenar importante información de contacto para soporte, la cual se mostrará en las páginas de detalle de sus activos.', 'asset_manufacturers' => 'Fabricantes de activos', 'create' => 'Crear fabricante', diff --git a/resources/lang/es-MX/admin/models/general.php b/resources/lang/es-MX/admin/models/general.php index 7843e61eb965..531ef49c5afb 100644 --- a/resources/lang/es-MX/admin/models/general.php +++ b/resources/lang/es-MX/admin/models/general.php @@ -1,16 +1,16 @@ 'Acerca de modelos de activos', - 'about_models_text' => 'Los Modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', + 'about_models_title' => 'Acerca de los modelos de activos', + 'about_models_text' => 'Los modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', 'deleted' => 'Este modelo ha sido eliminado.', - 'bulk_delete' => 'Borrar Grandes Modelos de Activos', - 'bulk_delete_help' => 'Usa las casillas de verificación para confirmar la eliminación de los modelos de activos. Los modelos de activos tienen activos asociados que no pueden ser eliminados hasta que los activos sean asociados con un modelo diferente.', + 'bulk_delete' => 'Eliminación masiva de modelos de activos', + 'bulk_delete_help' => 'Utilice las casillas a continuación para confirmar la eliminación de los modelos de activos seleccionados. Los modelos de activos que tienen activos asociados a ellos no se pueden eliminar hasta que los activos estén asociados con un modelo diferente.', 'bulk_delete_warn' => 'Está a punto de eliminar un modelo de activo.|Está a punto de eliminar :model_count modelos de activos.', 'restore' => 'Restaurar modelo', 'requestable' => 'Los usuarios pueden solicitar este modelo', - 'show_mac_address' => 'Mostrar el campo de la dirección MAC en los equipos de este modelo', - 'view_deleted' => 'Ver Borrados', + 'show_mac_address' => 'Mostrar el campo de dirección MAC en los activos de este modelo', + 'view_deleted' => 'Ver borrados', 'view_models' => 'Ver modelos', 'fieldset' => 'Grupo de campos', 'no_custom_field' => 'No hay campos personalizados', diff --git a/resources/lang/es-MX/admin/models/message.php b/resources/lang/es-MX/admin/models/message.php index 9370ef2a5466..8c6e3ff501be 100644 --- a/resources/lang/es-MX/admin/models/message.php +++ b/resources/lang/es-MX/admin/models/message.php @@ -32,7 +32,7 @@ ), 'bulkedit' => array( - 'error' => 'Ningún campo fue seleccionado, por lo que nada ha sido actualizado.', + 'error' => 'Ningún cambio fue cambiado, así que nada se actualizó.', 'success' => 'Modelo actualizado correctamente. |:model_count modelos actualizados correctamente.', 'warn' => 'Está a punto de actualizar las propiedades del siguiente modelo:|Está a punto de editar las propiedades de los siguientes :model_count modelos:', diff --git a/resources/lang/es-MX/admin/reports/general.php b/resources/lang/es-MX/admin/reports/general.php index d2056b1b5630..cf62a35b87ef 100644 --- a/resources/lang/es-MX/admin/reports/general.php +++ b/resources/lang/es-MX/admin/reports/general.php @@ -1,7 +1,7 @@ 'Seleccione las opciones que desea para el informe de activos.', + 'info' => 'Seleccione las opciones que desee para su informe de activos.', 'deleted_user' => 'Usuario eliminado', 'send_reminder' => 'Enviar recordatorio', 'reminder_sent' => 'Recordatorio enviado', @@ -9,9 +9,9 @@ 'acceptance_request' => 'Solicitud de aceptación', 'custom_export' => [ 'user_address' => 'Dirección de usuario', - 'user_city' => 'Ciudad del Usuario', + 'user_city' => 'Ciudad del usuario', 'user_state' => 'Estado del usuario', - 'user_country' => 'País de usuario', - 'user_zip' => 'Usuario Zip' + 'user_country' => 'País del usuario', + 'user_zip' => 'Código postal del usuario' ] ]; \ No newline at end of file diff --git a/resources/lang/es-MX/admin/settings/general.php b/resources/lang/es-MX/admin/settings/general.php index e1a34c05ed99..6a3ee6802f71 100644 --- a/resources/lang/es-MX/admin/settings/general.php +++ b/resources/lang/es-MX/admin/settings/general.php @@ -66,7 +66,7 @@ 'eula_markdown' => 'Estos acuerdos de uso permiten markdown estilo Github.', 'favicon' => 'Favicon', 'favicon_format' => 'Los tipos de archivo aceptados son ico, png y gif. Es posible que otros formatos de imagen no funcionen en todos los navegadores.', - 'favicon_size' => 'Los favicons deben ser imágenes cuadradas, de 16x16 píxeles.', + 'favicon_size' => 'Los Favicons deben ser imágenes cuadradas, de 16x16 píxeles.', 'footer_text' => 'Texto adicional en el pie de página ', 'footer_text_help' => 'Este texto aparecerá en el lado derecho del pie de página. Los enlaces son permitidos usando markdown estilo Github. Los saltos de línea, encabezados, imágenes, etc. pueden dar lugar a resultados impredecibles.', 'general_settings' => 'Configuración general', @@ -91,7 +91,7 @@ 'ldap_settings' => 'Configuración LDAP', 'ldap_client_tls_cert_help' => 'El certificado TLS del lado del cliente y la clave para las conexiones LDAP normalmente solo son útiles en las configuraciones de Google Workspace con "LDAP Seguro". Ambas son requeridas.', 'ldap_location' => 'Ubicación LDAP', -'ldap_location_help' => 'El campo Ubicación de Ldap debe utilizarse si una OU no está siendo utilizada en el DN del enlace base. Deja este espacio en blanco si se utiliza una búsqueda OU.', +'ldap_location_help' => 'El campo Location (ubicación) de Ldap debe utilizarse si una OU no está siendo utilizada en el Base Bind DN (DN del enlace base). Deje este espacio en blanco si se utiliza una búsqueda OU.', 'ldap_login_test_help' => 'Introduzca un nombre de usuario y una contraseña LDAP válidos del DN base que especificó anteriormente para comprobar si el inicio de sesión LDAP está configurado correctamente. PRIMERO DEBE GUARDAR LA CONFIGURACIÓN LDAP ACTUALIZADA.', 'ldap_login_sync_help' => 'Esto solo comprueba que el LDAP puede sincronizarse correctamente. Si su solicitud de autenticación LDAP no es correcta, los usuarios aún no podrían iniciar sesión. PRIMERO DEBE GUARDAR LA CONFIGURACIÓN LDAP ACTUALIZADA.', 'ldap_manager' => 'Gestor LDAP', @@ -115,7 +115,7 @@ 'ldap_username_field' => 'Campo nombre de usuario', 'ldap_lname_field' => 'Apellido', 'ldap_fname_field' => 'Nombre LDAP', - 'ldap_auth_filter_query' => 'Consulta de autentificación LDAP', + 'ldap_auth_filter_query' => 'Consulta de autenticación LDAP', 'ldap_version' => 'Versión LDAP', 'ldap_active_flag' => 'Flag activo LDAP', 'ldap_activated_flag_help' => 'Este valor se utiliza para determinar si un usuario sincronizado puede iniciar sesión en Snipe-IT. No afecta a la capacidad de asignarles o retirarles elementos, y debería ser el nombre de atributo dentro de su AD/LDAP, no el valor.

Si este campo está configurado a un nombre de campo que no existe en su AD/LDAP, o el valor en el campo AD/LDAP se establece en 0 o falso, el inicio de sesión de usuario será deshabilitado. Si el valor en el campo AD/LDAP está establecido en 1 o true o cualquier otro texto significa que el usuario puede iniciar sesión. Cuando el campo está en blanco en su AD, respetamos el atributo userAccountControl, que generalmente permite a los usuarios no suspendidos iniciar sesión.', @@ -144,7 +144,7 @@ 'login_remote_user_header_name_text' => 'Cabecera de nombre de usuario personalizado', 'login_remote_user_header_name_help' => 'Usar la cabecera especificada en lugar de REMOTE_USER', 'logo' => 'Logo', - 'logo_print_assets' => 'Usar en Impresión', + 'logo_print_assets' => 'Usar en la impresión', 'logo_print_assets_help' => 'Utilice la marca de la empresa en las listas de activos imprimibles ', 'full_multiple_companies_support_help_text' => 'Limitar los usuarios asignados a compañías (incluyendo administradores) solo a los activos de esa compañía.', 'full_multiple_companies_support_text' => 'Soporte completo a múltiples compañías', @@ -326,7 +326,7 @@ 'localization_keywords' => 'localización, moneda, local, ubicación, zona horaria, internacional, internacionalización, idioma, traducción', 'localization_help' => 'Idioma, visualización de la fecha', 'notifications' => 'Notificaciones', - 'notifications_help' => 'Alertas de Correo y Configuración de Auditoría', + 'notifications_help' => 'Configuración de alertas por correo electrónico y de auditoría', 'asset_tags_help' => 'Incrementos y prefijos', 'labels' => 'Etiquetas', 'labels_title' => 'Actualizar configuración de etiquetas', @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Advertencia para próximos ingresos', 'due_checkin_days_help' => '¿Cuántos días antes de la fecha prevista de ingreso de un activo debe figurar en la página «Próximos a ingresar»?', + 'no_groups' => 'Todavía no se han creado grupos. Para agregar uno, visiteConfiguración de administración > Grupos de permisos.', ]; diff --git a/resources/lang/es-MX/admin/settings/message.php b/resources/lang/es-MX/admin/settings/message.php index a4ed5797d4ff..6704bae32df6 100644 --- a/resources/lang/es-MX/admin/settings/message.php +++ b/resources/lang/es-MX/admin/settings/message.php @@ -9,8 +9,8 @@ 'backup' => [ 'delete_confirm' => '¿Está seguro de que desea eliminar este archivo de respaldo? Esta acción no puede se puede deshacer. ', 'file_deleted' => 'El archivo de respaldo fue eliminado satisfactoriamente. ', - 'generated' => 'Un nuevo archivo de respaldo fue creado satisfactoriamente.', - 'file_not_found' => 'El archivo de respaldo no se ha encontrado en el servidor.', + 'generated' => 'Se ha creado correctamente un nuevo archivo de copia de seguridad.', + 'file_not_found' => 'Ese archivo de copia de seguridad no se pudo encontrar en el servidor.', 'restore_warning' => 'Sí, restaurarlo. Entiendo que esto sobrescribirá cualquier dato existente actualmente en la base de datos. Esto también cerrará la sesión de todos sus usuarios existentes (incluido usted).', 'restore_confirm' => '¿Está seguro que desea restaurar su base de datos desde :filename?' ], diff --git a/resources/lang/es-MX/admin/suppliers/message.php b/resources/lang/es-MX/admin/suppliers/message.php index 75dc4b1d2dcb..f7f243f4425f 100644 --- a/resources/lang/es-MX/admin/suppliers/message.php +++ b/resources/lang/es-MX/admin/suppliers/message.php @@ -8,7 +8,7 @@ 'create' => array( 'error' => 'El proveedor no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Proveedor creado.' + 'success' => 'Proveedor creado con éxito.' ), 'update' => array( @@ -19,7 +19,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este proveedor?', 'error' => 'Hubo un problema al eliminar el proveedor, por favor inténtelo de nuevo.', - 'success' => 'Proveedor eliminado.', + 'success' => 'Proveedor eliminado correctamente.', 'assoc_assets' => 'Este proveedor está actualmente asociado con :asset_count activo(s) y no puede ser eliminado. Actualice sus activos para que ya no hagan referencia a este proveedor e inténtelo de nuevo. ', 'assoc_licenses' => 'Este proveedor está asociado actualmente con :licenses_count licences(s) y no puede ser eliminado. Por favor, actualice sus licencias para dejar de hacer referencia a este proveedor e inténtelo de nuevo. ', 'assoc_maintenances' => 'Este proveedor está actualmente asociado con :asset_maintainances_count mantenimiento(s) de activo(s) y no puede ser eliminado. Por favor, actualice el mantenimiento de sus activos para no hacer referencia a este proveedor y vuelva a intentarlo. ', diff --git a/resources/lang/es-MX/admin/suppliers/table.php b/resources/lang/es-MX/admin/suppliers/table.php index f862849cca73..b918b4f381ce 100644 --- a/resources/lang/es-MX/admin/suppliers/table.php +++ b/resources/lang/es-MX/admin/suppliers/table.php @@ -1,25 +1,25 @@ 'Acerca de Proveedores', + 'about_suppliers_title' => 'Acerca de los proveedores', 'about_suppliers_text' => 'Los proveedores se utilizan para hacer seguimiento al origen de los elementos', - 'address' => 'Dirección del Proveedor', - 'assets' => 'Equipos', + 'address' => 'Dirección del proveedor', + 'assets' => 'Activos', 'city' => 'Ciudad', - 'contact' => 'Nombre Contacto', + 'contact' => 'Nombre de contacto', 'country' => 'País', - 'create' => 'Crear Proveedor', + 'create' => 'Crear un proveedor', 'email' => 'Correo electrónico', 'fax' => 'Fax', 'id' => 'ID', 'licenses' => 'Licencias', - 'name' => 'Nombre', + 'name' => 'Nombre del proveedor', 'notes' => 'Notas', 'phone' => 'Teléfono', 'state' => 'Provincia', 'suppliers' => 'Proveedores', - 'update' => 'Actualizar Proveedor', - 'view' => 'Ver Proveedor', + 'update' => 'Actualizar proveedor', + 'view' => 'Ver proveedor', 'view_assets_for' => 'Ver activos para', 'zip' => 'Código postal', diff --git a/resources/lang/es-MX/auth.php b/resources/lang/es-MX/auth.php index ae51788b2790..0c664fc5845a 100644 --- a/resources/lang/es-MX/auth.php +++ b/resources/lang/es-MX/auth.php @@ -14,7 +14,7 @@ */ 'failed' => 'Estas credenciales no coinciden con nuestros registros.', - 'password' => 'El nombre de usuario o contraseña es incorrecta.', + 'password' => 'La contraseña proporcionada es incorrecta.', 'throttle' => 'Demasiados intentos de inicio de sesión. Por favor, inténtelo de nuevo en :seconds segundos.', ); diff --git a/resources/lang/es-MX/auth/general.php b/resources/lang/es-MX/auth/general.php index db35275e427b..437ec4a0f234 100644 --- a/resources/lang/es-MX/auth/general.php +++ b/resources/lang/es-MX/auth/general.php @@ -3,16 +3,16 @@ return [ 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', 'email_reset_password' => 'Enviar correo', - 'reset_password' => 'Restablecer Contraseña', + 'reset_password' => 'Restablecer contraseña', 'saml_login' => 'Iniciar sesión a través de SAML', - 'login' => 'Iniciar Sesión', + 'login' => 'Iniciar sesión', 'login_prompt' => 'Por favor inicie sesión', - 'forgot_password' => 'He olvidado mi contraseña', + 'forgot_password' => 'Olvidé mi contraseña', 'ldap_reset_password' => 'Haga clic aquí para restablecer su contraseña LDAP', 'remember_me' => 'Recordarme', 'username_help_top' => 'Ingrese su nombre de usuario para enviar un enlace de restablecimiento de contraseña.', 'username_help_bottom' => 'Su nombre de usuario y correo electrónico pueden ser el mismo, pero puede que no lo sean, dependiendo de su configuración. Si no recuerda su nombre de usuario, contacte al administrador.

A los nombres de usuario que no tengan un correo electrónico asociado, no se les enviará el enlace de cambio de contraseña. ', 'google_login' => 'Iniciar sesión con Google Workspace', - 'google_login_failed' => 'Error al iniciar sesión en Google. Vuelve a intentarlo.', + 'google_login_failed' => 'Error al iniciar sesión en Google, por favor, vuelva a intentarlo.', ]; diff --git a/resources/lang/es-MX/auth/message.php b/resources/lang/es-MX/auth/message.php index 7f11d09eb614..194a6fc7219f 100644 --- a/resources/lang/es-MX/auth/message.php +++ b/resources/lang/es-MX/auth/message.php @@ -2,19 +2,19 @@ return array( - 'account_already_exists' => 'Ya existe un usuario con este e-mail.', + 'account_already_exists' => 'Ya existe una cuenta con este correo electrónico.', 'account_not_found' => 'El nombre de usuario o la contraseña son incorrectos.', - 'account_not_activated' => 'Este usuario no está activado.', - 'account_suspended' => 'Este usuario está desactivado.', - 'account_banned' => 'Este usuario ha sido expulsado.', - 'throttle' => 'Demasiados intentos fallidos de inicio de sesión. Por favor, inténtalo de nuevo en :minutes minutos.', + 'account_not_activated' => 'Esta cuenta de usuario no está activada.', + 'account_suspended' => 'Esta cuenta de usuario está suspendida.', + 'account_banned' => 'Esta cuenta de usuario está bloqueada.', + 'throttle' => 'Demasiados intentos de inicio de sesión fallidos. Por favor, intente otra vez en :minutes minuto(s).', 'two_factor' => array( 'already_enrolled' => 'Su dispositivo ya está inscrito.', 'success' => 'Ha iniciado sesión exitosamente.', - 'code_required' => 'El código de dos factores es necesario.', + 'code_required' => 'Se requiere el código de autenticación de doble factor (2FA).', 'invalid_code' => 'El código de dos factores no es válido.', - 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de dos factores.', + 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de doble factor.', 'please_enroll' => 'Por favor inscriba un dispositivo en la autenticación de dos factores.', ), diff --git a/resources/lang/es-MX/button.php b/resources/lang/es-MX/button.php index a6ae7fdb2cdb..0390df82178b 100644 --- a/resources/lang/es-MX/button.php +++ b/resources/lang/es-MX/button.php @@ -15,8 +15,8 @@ 'upload' => 'Cargar', 'select_file' => 'Seleccionar Archivo...', 'select_files' => 'Seleccionar archivos...', - 'generate_labels' => '{1} Generar Etiqueta|[2,*] Generar Etiquetas', - 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', + 'generate_labels' => '{1} Generar etiqueta|[2,*] Generar etiquetas', + 'send_password_link' => 'Enviar enlace para restablecer la contraseña', 'go' => 'Ir', 'bulk_actions' => 'Acciones masivas', 'add_maintenance' => 'Añadir mantenimiento', diff --git a/resources/lang/es-MX/general.php b/resources/lang/es-MX/general.php index 38e3e783e0ba..26a50af04639 100644 --- a/resources/lang/es-MX/general.php +++ b/resources/lang/es-MX/general.php @@ -20,7 +20,7 @@ 'all_assets' => 'Todos los activos', 'all' => 'Todos los', 'archived' => 'Archivado', - 'asset_models' => 'Modelos', + 'asset_models' => 'Modelos de activos', 'asset_model' => 'Modelo', 'asset' => 'Activo', 'asset_report' => 'Informe de activos', @@ -31,7 +31,7 @@ 'accept_assets_menu' => 'Aceptar activos', 'audit' => 'Auditar', 'audit_report' => 'Registro de auditoría', - 'assets' => 'Equipos', + 'assets' => 'Activos', 'assets_audited' => 'activos auditados', 'assets_checked_in_count' => 'activos ingresados', 'assets_checked_out_count' => 'activos asignados', @@ -41,22 +41,22 @@ 'assignee' => 'Asignado a', 'avatar_delete' => 'Eliminar Avatar', 'avatar_upload' => 'Cargar Avatar', - 'back' => 'Atras', - 'bad_data' => 'Ningún resultado. ¿Quizá un dato incorrecto?', + 'back' => 'Atrás', + 'bad_data' => 'No se ha encontrado nada. ¿Tal vez datos erróneos?', 'bulkaudit' => 'Auditoría masiva', 'bulkaudit_status' => 'Estado de la auditoría', 'bulk_checkout' => 'Asignación masiva', - 'bulk_edit' => 'Editar en grupo', - 'bulk_delete' => 'Eliminar en grupo', + 'bulk_edit' => 'Edición masiva', + 'bulk_delete' => 'Borrado masivo', 'bulk_actions' => 'Acciones masivas', 'bulk_checkin_delete' => 'Ingresar elementos / Borrar usuarios', 'byod' => 'BYOD', 'byod_help' => 'Este dispositivo es propiedad del usuario', - 'bystatus' => 'por Estado', + 'bystatus' => 'por estado', 'cancel' => 'Cancelar', 'categories' => 'Categorías', 'category' => 'Categoría', - 'change' => 'Entrada / salida', + 'change' => 'Entrada/Salida', 'changeemail' => 'Cambiar dirección de correo electrónico', 'changepassword' => 'Cambiar contraseña', 'checkin' => 'Ingresar', @@ -81,11 +81,11 @@ 'not_deleted' => 'El tipo :item_type no se ha borrado y, por lo tanto, no se puede restaurar', 'create' => 'Crear nuevo', 'created' => 'Artículo creado', - 'created_asset' => 'equipo creado', + 'created_asset' => 'activo creado', 'created_at' => 'Fecha de creación', 'created_by' => 'Creado por', 'record_created' => 'Registro Creado', - 'updated_at' => 'Actualizado en', + 'updated_at' => 'Actualizado el', 'currency' => '$', // this is deprecated 'current' => 'Actual', 'current_password' => 'Contraseña actual', @@ -93,7 +93,7 @@ 'custom_report' => 'Informe personalizado de activos', 'dashboard' => 'Tablero', 'days' => 'días', - 'days_to_next_audit' => 'Días a la próxima auditoría', + 'days_to_next_audit' => 'Días hasta la siguiente auditoría', 'date' => 'Fecha', 'debug_warning' => '¡Advertencia!', 'debug_warning_text' => 'Esta aplicación se está ejecutando en modo producción con depuración habilitada. Esto puede exponer datos sensibles si su aplicación es accedida desde el mundo exterior. Deshabilite el modo de depuración configurando el valor APP_DEBUG en su archivo .env a false.', @@ -117,7 +117,7 @@ 'email_domain' => 'Dominio de correo electrónico', 'email_format' => 'Formato de correo electrónico', 'employee_number' => 'Número de empleado', - 'email_domain_help' => 'Esto se utiliza para generar direcciones de correo electrónico cuando se importan', + 'email_domain_help' => 'Se utiliza para generar direcciones de correo electrónico al importar', 'error' => 'Error', 'exclude_archived' => 'Excluir activos archivados', 'exclude_deleted' => 'Excluir activos eliminados', @@ -129,7 +129,7 @@ 'firstintial_dot_lastname_format' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', 'firstname_lastname_display' => 'Nombre y apellido (Jane Smith)', 'lastname_firstname_display' => 'Apellido y nombre (Smith Jane)', - 'name_display_format' => 'Formato para mostrar nombres', + 'name_display_format' => 'Formato para mostrar el nombre', 'first' => 'Primero', 'firstnamelastname' => 'Nombre y apellido (janesmith@example.com)', 'lastname_firstinitial' => 'Apellido e inicial del nombre (smith_j@ejemplo.com)', @@ -140,7 +140,7 @@ 'first_name_format' => 'Nombre (jane@ejemplo.com)', 'files' => 'Archivos', 'file_name' => 'Archivo', - 'file_type' => 'Tipo de Archivo', + 'file_type' => 'Tipo de archivo', 'filesize' => 'Tamaño del archivo', 'file_uploads' => 'Carga de Archivos', 'file_upload' => 'Cargar archivo', @@ -148,11 +148,11 @@ 'generate_labels' => 'Generar etiquetas', 'github_markdown' => 'Este campo acepta el formateo flavored de GitHub.', 'groups' => 'Grupos', - 'gravatar_email' => 'Gravatar Email', + 'gravatar_email' => 'Dirección de correo electrónico de Gravatar', 'gravatar_url' => 'Cambie su avatar en Gravatar.com.', 'history' => 'Historial', - 'history_for' => 'Historial de', - 'id' => 'Id', + 'history_for' => 'Historial para', + 'id' => 'ID', 'image' => 'Imagen', 'image_delete' => 'Borrar imagen', 'include_deleted' => 'Incluir activos eliminados', @@ -166,7 +166,7 @@ 'importing' => 'Importar datos', 'importing_help' => 'Puede importar activos, accesorios, licencias, componentes, consumibles y usuarios a través del archivo CSV.

El CSV debe estar delimitado por comas y formateado con encabezados que coincidan con los de los archivos CSV de muestra en la documentación.', 'import-history' => 'Importar historial', - 'asset_maintenance' => 'Mantenimiento de Equipo', + 'asset_maintenance' => 'Mantenimiento de activos', 'asset_maintenance_report' => 'Informe mantenimiento de activos', 'asset_maintenances' => 'Mantenimiento de activos', 'item' => 'Elemento', @@ -175,9 +175,9 @@ 'import_type' => 'Tipo de importación CSV', 'insufficient_permissions' => '¡Permisos insuficientes!', 'kits' => 'Kits predefinidos', - 'language' => 'Lenguaje', + 'language' => 'Idioma', 'last' => 'Último', - 'last_login' => 'Último acceso', + 'last_login' => 'Último inicio de sesión', 'last_name' => 'Apellidos', 'license' => 'Licencia', 'license_report' => 'Informe de licencias', @@ -185,23 +185,23 @@ 'licenses' => 'Licencias', 'list_all' => 'Mostrar todos', 'loading' => 'Cargando... por favor espere...', - 'lock_passwords' => 'Este valor de campo no se guardará en una instalación de demostración.', - 'feature_disabled' => 'Esta característica se ha desactivado para la versión de demostración.', + 'lock_passwords' => 'El valor de este campo no se guardará en una instalación de demostración.', + 'feature_disabled' => 'Esta característica se ha desactivado para la instalación de demostración.', 'location' => 'Ubicación', 'location_plural' => 'Ubicación|Ubicaciones', 'locations' => 'Ubicaciones', 'logo_size' => 'Los logotipos cuadrados se ven mejor con Logo + Texto. El tamaño máximo del logo es 50px de alto x 500px de ancho. ', - 'logout' => 'Desconexión', + 'logout' => 'Cerrar sesión', 'lookup_by_tag' => 'Buscar placa del activo', 'maintenances' => 'Mantenimientos', 'manage_api_keys' => 'Administrar las claves del API', 'manufacturer' => 'Fabricante', 'manufacturers' => 'Fabricantes', - 'markdown' => 'Este campo permite Github con sabor a markdown.', + 'markdown' => 'Este campo permite markdown estilo Github.', 'min_amt' => 'Cantidad mínima', 'min_amt_help' => 'Número mínimo de elementos que deben estar disponibles antes de que se active una alerta. Deje la cantidad mínima en blanco si no desea recibir alertas de inventario bajo.', 'model_no' => 'Modelo No.', - 'months' => 'Meses', + 'months' => 'meses', 'moreinfo' => 'Más información', 'name' => 'Nombre', 'new_password' => 'Nueva contraseña', @@ -211,32 +211,32 @@ 'audit_images_help' => 'Puede encontrar imágenes de auditoría en la pestaña Historial del activo.', 'no_email' => 'No hay dirección de correo electrónico asociada a este usuario', 'last_audit' => 'Última auditoría', - 'new' => 'nuevo!', + 'new' => '¡nuevo!', 'no_depreciation' => 'No Amortizar', - 'no_results' => 'Sin Resultados.', + 'no_results' => 'No hay resultados.', 'no' => 'No', 'notes' => 'Notas', 'order_number' => 'Número de orden', 'only_deleted' => 'Solo activos eliminados', 'page_menu' => 'Mostrando elementos de _MENU_', - 'pagination_info' => 'Mostrando _START_ de _END_ de elementos _TOTAL_', + 'pagination_info' => 'Mostrando _START_ a _END_ de _TOTAL_ elementos', 'pending' => 'Pendientes', - 'people' => 'Usuarios', - 'per_page' => 'Resultados Por Pag', + 'people' => 'Personas', + 'per_page' => 'Resultados por página', 'previous' => 'Previo', 'processing' => 'Procesando', 'profile' => 'Perfil', 'purchase_cost' => 'Precio de compra', 'purchase_date' => 'Fecha de compra', - 'qty' => 'Cant', + 'qty' => 'Cantidad', 'quantity' => 'Cantidad', - 'quantity_minimum' => 'Tiene :count artículos por debajo o casi por debajo de los niveles mínimos de cantidad', + 'quantity_minimum' => 'Tiene un artículo por debajo o casi por debajo de los niveles de cantidad mínima|Tiene :count artículos por debajo o casi por debajo de los niveles de cantidad mínima', 'quickscan_checkin' => 'Ingreso rápido con escaneo', 'quickscan_checkin_status' => 'Resultado del ingreso', 'ready_to_deploy' => 'Listo para asignar', - 'recent_activity' => 'Actividad Reciente', + 'recent_activity' => 'Actividad reciente', 'remaining' => 'Restante', - 'remove_company' => 'Eliminar asociación de la compañía', + 'remove_company' => 'Eliminar la asociación de la compañía', 'reports' => 'Informes', 'restored' => 'restaurado', 'restore' => 'Restaurar', @@ -244,7 +244,7 @@ 'requestable_items' => 'Artículos que se pueden solicitar', 'requested' => 'Solicitado', 'requested_date' => 'Fecha de solicitud', - 'requested_assets' => 'Elementos solicitados', + 'requested_assets' => 'Activos solicitados', 'requested_assets_menu' => 'Elementos solicitados', 'request_canceled' => 'Solicitud cancelada', 'request_item' => 'Solicitar este elemento', @@ -267,8 +267,8 @@ 'select_statuslabel' => 'Seleccionar un estado', 'select_company' => 'Seleccionar una compañía', 'select_asset' => 'Seleccionar activo', - 'settings' => 'Opciones', - 'show_deleted' => 'Mostrar Eliminado', + 'settings' => 'Configuraciones', + 'show_deleted' => 'Mostrar eliminados', 'show_current' => 'Mostrar actual', 'sign_in' => 'Iniciar sesión', 'signature' => 'Firma', @@ -276,8 +276,8 @@ 'skin' => 'Apariencia', 'webhook_msg_note' => 'Una notificación se enviará a través de webhook', 'webhook_test_msg' => '¡Hola! ¡Parece que la integración de :app con Snipe-IT funciona!', - 'some_features_disabled' => 'MODO DE DEMOSTRACIÓN: Algunas funciones estan desactivadas para esta instalación.', - 'site_name' => 'Sitio', + 'some_features_disabled' => 'MODO DEMOSTRACIÓN: Algunas características están desactivadas para esta instalación.', + 'site_name' => 'Nombre del sitio', 'state' => 'Provincia', 'status_labels' => 'Etiquetas de estado', 'status_label' => 'Etiqueta de estado', @@ -291,16 +291,16 @@ 'delete_what' => 'Eliminar :item', 'submit' => 'Enviar', 'target' => 'Destino', - 'time_and_date_display' => 'Hora y fecha', + 'time_and_date_display' => 'Visualización de fecha y hora', 'total_assets' => 'activos', 'total_licenses' => 'licencias totales', - 'total_accessories' => 'total de accesorios', - 'total_consumables' => 'total de consumibles', + 'total_accessories' => 'accesorios totales', + 'total_consumables' => 'consumibles totales', 'type' => 'Tipo', 'undeployable' => 'No utilizable', 'unknown_admin' => 'Administrador desconocido', 'username_format' => 'Formato del nombre de usuario', - 'username' => 'Usuario', + 'username' => 'Nombre de usuario', 'update' => 'Actualizar', 'upload_filetypes_help' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, xls, xlsx, txt, lic, xml, zip, rtf y rar. El tamaño máximo permitido es :size.', 'uploaded' => 'Cargado', @@ -319,14 +319,14 @@ 'years' => 'años', 'yes' => 'Si', 'zip' => 'Código postal', - 'noimage' => 'Imagen no subida o imagen no encontrada.', + 'noimage' => 'No se cargó la imagen o no fue encontrada.', 'file_does_not_exist' => 'El archivo solicitado no existe en el servidor.', 'file_upload_success' => '¡Archivo cargado exitosamente!', 'no_files_uploaded' => '¡Archivo cargado exitosamente!', 'token_expired' => 'Su sesión ha caducado. Por favor, inténtelo de nuevo.', 'login_enabled' => 'Inicio de sesión activado', 'audit_due' => 'Próximas auditorías', - 'audit_due_days' => 'Activos pendientes para auditoría dentro de :days día|Activos pendientes para auditoría dentro de :days días', + 'audit_due_days' => 'Activos pendientes de auditoría dentro de :days día|Activos pendientes de auditoría dentro de :days días', 'checkin_due' => 'Próximos a ingresar', 'checkin_overdue' => 'Devolución atrasada', 'checkin_due_days' => 'Activos próximos a ingresar dentro de :days día|Activos próximos a ingresar dentro de :days días', @@ -352,21 +352,21 @@ 'setup_config_check' => 'Comprobar configuración', 'setup_create_database' => 'Crear tablas de la base de datos', 'setup_create_admin' => 'Crear un usuario administrador', - 'setup_done' => '¡Finalizada!', + 'setup_done' => '¡Terminado!', 'bulk_edit_about_to' => 'Está a punto de editar lo siguiente: ', 'checked_out' => 'Asignado', 'checked_out_to' => 'Asignado a', 'fields' => 'Campos', - 'last_checkout' => 'Última Asignación', + 'last_checkout' => 'Última asignación', 'due_to_checkin' => 'Los siguientes :count elementos están pendientes por ingresar pronto:', 'expected_checkin' => 'Fecha esperada de devolución', 'reminder_checked_out_items' => 'Este es un recordatorio de los elementos que se le han asignado actualmente. Si usted cree que esta lista es incorrecta (falta algo o aparece algo que usted cree que nunca ha recibido), por favor envíe un correo electrónico a :reply_to_name a :reply_to_address.', 'changed' => 'Cambiado', - 'to' => 'Para', - 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y puede abrirlo en Excel.

+ 'to' => 'A', + 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y podrá abrirlo en Excel.

Si desea exportar sólo ciertos activos, utilice las siguientes opciones para afinar sus resultados.

', 'range' => 'Rango', - 'bom_remark' => 'Añadir un BOM (signo de orden de byte) a este CSV', + 'bom_remark' => 'Añadir un BOM (marca de orden de bytes) a este CSV', 'improvements' => 'Mejoras', 'information' => 'Información', 'permissions' => 'Permisos', @@ -376,9 +376,9 @@ 'ldap_user_sync' => 'Sincronización de usuario LDAP', 'synchronize' => 'Sincronizar', 'sync_results' => 'Resultados de sincronización', - 'license_serial' => 'Número de Serie/Clave de Producto', - 'invalid_category' => 'Categoría no válida o ausente', - 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', + 'license_serial' => 'Número de serie/clave de producto', + 'invalid_category' => 'Categoría no válida o inexistente', + 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Por favor, actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', 'dashboard_info' => 'Este es su panel de control. Hay muchos similares, pero este es suyo.', '60_percent_warning' => '60% completo (advertencia)', 'dashboard_empty' => 'Parece que aún no ha añadido nada, así que no tenemos nada impresionante que mostrar. ¡Comience añadiendo algunos activos, accesorios, consumibles o licencias ahora!', @@ -394,7 +394,7 @@ 'components_count' => 'Cantidad de componentes', 'licenses_count' => 'Cantidad de licencias', 'notification_error' => 'Error', - 'notification_error_hint' => 'Por favor compruebe si hay errores en el siguiente formulario', + 'notification_error_hint' => 'Por favor revise si hay errores en el siguiente formulario', 'notification_bulk_error_hint' => 'Los siguientes campos tenían errores de validación y no fueron editados:', 'notification_success' => 'Éxito', 'notification_warning' => 'Advertencia', @@ -405,14 +405,14 @@ 'consumable_information' => 'Información del consumible:', 'consumable_name' => 'Nombre del Consumible:', 'accessory_information' => 'Información del accesorio:', - 'accessory_name' => 'Nombre de accesorio:', + 'accessory_name' => 'Nombre del accesorio:', 'clone_item' => 'Clonar objeto', 'checkout_tooltip' => 'Asignar este elemento', - 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para resignar, borrar, etc.', + 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para reasignar, borrar, etc.', 'checkout_user_tooltip' => 'Asignar este elemento a un usuario', 'checkin_to_diff_location' => 'Puede elegir ingresar este activo a una ubicación distinta de la predeterminada :default_location, si es que se ha definido una', - 'maintenance_mode' => 'El servicio no está disponible temporalmente debido a actualizaciones del sistema. Por favor, vuelva más tarde.', - 'maintenance_mode_title' => 'Sistema temporalmente no disponible', + 'maintenance_mode' => 'El servicio no está disponible temporalmente debido a actualizaciones del sistema. Por favor, verifique más tarde.', + 'maintenance_mode_title' => 'El sistema no está disponible temporalmente', 'ldap_import' => 'La contraseña de usuario no debe ser administrada por LDAP. (Esto le permite enviar solicitudes de contraseña olvidada.)', 'purge_not_allowed' => 'La purga de datos eliminados ha sido deshabilitada en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', 'backup_delete_not_allowed' => 'La eliminación de copias de seguridad se ha desactivado en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', @@ -430,36 +430,37 @@ 'hello_name' => '¡Hola, :name!', 'unaccepted_profile_warning' => 'Tiene un elemento que requiere aceptación. Haga clic aquí para aceptarlo o rechazarlo | Tiene :count elementos que requieren aceptación. Haga clic aquí para aceptarlos o rechazarlos', 'start_date' => 'Fecha de inicio', - 'end_date' => 'Fecha de fin', + 'end_date' => 'Fecha final', 'alt_uploaded_image_thumbnail' => 'Miniatura cargada', 'placeholder_kit' => 'Seleccione un kit', 'file_not_found' => 'Archivo no encontrado', + 'log_record_not_found' => 'No se ha encontrado ninguna entrada en el registro de eventos.', 'preview_not_available' => '(sin vista previa)', 'setup' => 'Configuración', - 'pre_flight' => 'Pre-vuelo', - 'skip_to_main_content' => 'Saltar al contenido principal', - 'toggle_navigation' => 'Cambiar navegación', + 'pre_flight' => 'Preparación', + 'skip_to_main_content' => 'Ir al contenido principal', + 'toggle_navigation' => 'Alternar navegación', 'alerts' => 'Alertas', - 'tasks_view_all' => 'Mostrar todas las tareas', + 'tasks_view_all' => 'Ver todas las tareas', 'true' => 'Verdadero', 'false' => 'Falso', 'integration_option' => 'Opción de integración', 'log_does_not_exist' => 'No existe ningún registro de eventos que coincida.', - 'merge_users' => 'Fusionar usuarios', - 'merge_information' => 'Esto fusionará a los :count usuarios en un solo usuario. Seleccione el usuario en el que desea fusionar a los demás a continuación, y los activos asociados, licencias, etc se moverán al usuario seleccionado. Los otros usuarios serán marcados como eliminados.', - 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite fusionar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', + 'merge_users' => 'Combinar usuarios', + 'merge_information' => 'Esto combinará los :count usuarios en un único usuario. Seleccione a continuación el usuario en el que desea combinar los demás, y los activos, licencias, etc. asociados se moverán al usuario seleccionado y los demás usuarios se marcarán como eliminados.', + 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite combinar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', 'no_users_selected' => 'Ningún usuario seleccionado', 'not_enough_users_selected' => 'Al menos :count usuarios deben ser seleccionados', - 'merge_success' => '!:count usuarios fusionados con éxito en :into_username!', - 'merged' => 'fusionado', - 'merged_log_this_user_into' => 'Se fusionó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', - 'merged_log_this_user_from' => 'Se fusionó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', - 'clear_and_save' => 'Limpiar y Guardar', + 'merge_success' => '!:count usuarios combinados con éxito en :into_username!', + 'merged' => 'combinados', + 'merged_log_this_user_into' => 'Se combinó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', + 'merged_log_this_user_from' => 'Se combinó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', + 'clear_and_save' => 'Limpiar y guardar', 'update_existing_values' => '¿Actualizar valores existentes?', 'auto_incrementing_asset_tags_disabled_so_tags_required' => 'La generación autoincrementable de las placas de activos está desactivada, por lo que todas las filas deben tener la columna "Asset Tag" con información.', - 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan informacióin en la columna "Asset Tag" se actualizarán con la información proporcionada.', + 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan información en la columna "Asset Tag" se actualizarán con la información proporcionada.', 'send_welcome_email_to_users' => ' ¿Enviar correo de bienvenida para nuevos usuarios?', - 'send_email' => 'Enviar Email', + 'send_email' => 'Enviar correo electrónico', 'call' => 'Número de llamada', 'back_before_importing' => '¿Copia de seguridad antes de importar?', 'csv_header_field' => 'Campo de cabecera CSV', @@ -470,9 +471,9 @@ 'errors_importing' => 'Se han producido algunos errores al importar: ', 'warning' => 'ADVERTENCIA: :warning', 'success_redirecting' => '"Éxito... Redirigiendo.', - 'cancel_request' => 'Cancelar esta solicitud para este elemento', + 'cancel_request' => 'Cancelar solicitud para este elemento', 'setup_successful_migrations' => 'Se han creado las tablas de la base de datos', - 'setup_migration_output' => 'Salida de Migración:', + 'setup_migration_output' => 'Salida de migración:', 'setup_migration_create_user' => 'Siguiente: Crear usuario', 'importer_generic_error' => 'La importación del archivo se ha completado, pero recibimos un error. Esto suele deberse a la limitación de la API de terceros desde un webhook de notificación (como Slack) y no habría interferido con la importación en sí, pero debería confirmarlo.', 'confirm' => 'Confirmar', @@ -483,7 +484,7 @@ 'modal_confirm_generic' => '¿Está seguro?', 'cannot_be_deleted' => 'Este elemento no puede ser eliminado', 'cannot_be_edited' => 'Este elemento no puede ser editado.', - 'undeployable_tooltip' => 'Este elemento no puede ser asignado. Compruebe la cantidad restante.', + 'undeployable_tooltip' => 'Este artículo no puede ser asignado. Compruebe la cantidad restante.', 'serial_number' => 'Número de serie', 'item_notes' => ':item Notas', 'item_name_var' => ':item Nombre', @@ -522,7 +523,7 @@ 'rtd_location_help' => 'Esta es la ubicación del activo cuando no está asignado', 'item_not_found' => ':item_type ID :id no existe o ha sido eliminado', 'action_permission_denied' => 'No tiene permiso para :action :item_type ID :id', - 'action_permission_generic' => 'No tiene permiso para :action this :item_type', + 'action_permission_generic' => 'No tiene permiso para :action este :item_type', 'edit' => 'editar', 'action_source' => 'Origen de la acción', 'or' => 'o', @@ -530,12 +531,12 @@ 'edit_fieldset' => 'Editar campos y opciones de grupos de campos', 'permission_denied_superuser_demo' => 'Permiso denegado. No puede actualizar la información de usuario para superadministradores en la demo.', 'pwd_reset_not_sent' => 'El usuario no está activado, está sincronizado con LDAP o no tiene una dirección de correo electrónico', - 'error_sending_email' => 'Error al enviar email', + 'error_sending_email' => 'Error al enviar correo electrónico', 'sad_panda' => 'No está autorizado a realizar esta acción. Puede regresar al tablero, o ponerse en contacto con su administrador.', 'bulk' => [ 'delete' => [ - 'header' => 'Eliminar en masa :object_type', + 'header' => 'Eliminar masivamente :object_type', 'warn' => 'Está a punto de eliminar un :object_type|Está a punto de eliminar :count :object_type', 'success' => 'Se ha eliminado correctamente :count :object_type', 'error' => 'No se pudo eliminar :object_type', @@ -547,10 +548,10 @@ 'countable' => [ 'accessories' => ':count Accesorio|:count Accesorios', - 'assets' => ':count Activos|:count Activos', - 'licenses' => ':count Licencia|:count Licencias', + 'assets' => ':count activo|:count activos', + 'licenses' => ':count licencia|:count licencias', 'license_seats' => ':count licencia|:count licencias', - 'consumables' => ':count Consumible|:count Consumibles', + 'consumables' => ':count consumible|:count consumibles', 'components' => ':count component|:count componentes', ], 'more_info' => 'Más información', diff --git a/resources/lang/es-MX/help.php b/resources/lang/es-MX/help.php index 2d07c2fbc716..13fb579b4929 100644 --- a/resources/lang/es-MX/help.php +++ b/resources/lang/es-MX/help.php @@ -21,11 +21,11 @@ 'categories' => 'Las categorías le ayudan a organizar sus elementos. Unos ejemplos de categorías podrían ser: "PC Escritorios", "Portátiles", "Móviles", "Tabletas", etc.', - 'accessories' => 'Accesorios son cualquier cosa que entregues a los usuarios pero que no tenga numero de serie (o no te interese seguirlos en forma única). Por ejemplo, ratones o teclados.', + 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga número de serie (o no importe realizarle el seguimiento en forma única). Por ejemplo, ratones o teclados.', - 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc si la opción "Soporte completo a múltiples compañías" está habilitado en "Configuración de administrador".', + 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc. si la opción "Soporte completo a múltiples compañías" está habilitada en "Configuración de administración".', - 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo HDD, RAM, etc.', + 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo, el disco duro, RAM, etc.', 'consumables' => 'Los consumibles son todo aquello que se compra y que se agota con el tiempo. Por ejemplo, tinta de impresora o papel de fotocopiadora.', diff --git a/resources/lang/es-MX/localizations.php b/resources/lang/es-MX/localizations.php index 2c5b02ca8a9a..073e699c4020 100644 --- a/resources/lang/es-MX/localizations.php +++ b/resources/lang/es-MX/localizations.php @@ -46,13 +46,13 @@ 'fa-IR'=> 'Persa', 'pl-PL'=> 'Polaco', 'pt-PT'=> 'Portugués', - 'pt-BR'=> 'Portugués, Brasileño', + 'pt-BR'=> 'Portugués, Brasil', 'ro-RO'=> 'Rumano', 'ru-RU'=> 'Ruso', - 'sr-CS' => 'Serbian (Latin)', + 'sr-CS' => 'Serbio (Latino)', 'sk-SK'=> 'Eslovaco', 'sl-SI'=> 'Esloveno', - 'so-SO'=> 'Somali', + 'so-SO'=> 'Somalí', 'es-ES'=> 'Español', 'es-CO'=> 'Español, Colombia', 'es-MX'=> 'Español, México', @@ -87,7 +87,7 @@ 'AT'=>'Austria', 'AU'=>'Australia', 'AW'=>'Aruba', - 'AX'=>'Islas Åland', + 'AX'=>'Islas Aland', 'AZ'=>'Azerbaiyán', 'BA'=>'Bosnia y Herzegovina', 'BB'=>'Barbados', diff --git a/resources/lang/es-MX/mail.php b/resources/lang/es-MX/mail.php index c3e99c6e277a..aac24eb4b84c 100644 --- a/resources/lang/es-MX/mail.php +++ b/resources/lang/es-MX/mail.php @@ -18,8 +18,8 @@ 'Expected_Checkin_Notification' => 'Recordatorio: :name se acerca la fecha de devolución', 'Expected_Checkin_Report' => 'Informe de próximas devoluciones de activos', 'Expiring_Assets_Report' => 'Informe de activos con garantía próxima a vencer.', - 'Expiring_Licenses_Report' => 'Informe de licencias que expiran.', - 'Item_Request_Canceled' => 'Solicitud de cancelación de requerimiento', + 'Expiring_Licenses_Report' => 'Informe de licencias próximas a vencer.', + 'Item_Request_Canceled' => 'Solicitud de artículo cancelada', 'Item_Requested' => 'Artículo solicitado', 'License_Checkin_Notification' => 'Licencia devuelta', 'License_Checkout_Notification' => 'Licencia asignada', @@ -30,7 +30,7 @@ 'acceptance_asset_declined' => 'Un usuario ha rechazado un elemento', 'accessory_name' => 'Nombre de accesorio', 'additional_notes' => 'Notas adicionales', - 'admin_has_created' => 'Un administrador ha creado una cuenta para ti en la web :web.', + 'admin_has_created' => 'Un administrador ha creado una cuenta para usted en el sitio :web.', 'asset' => 'Activo', 'asset_name' => 'Nombre del activo', 'asset_requested' => 'Activo solicitado', @@ -54,11 +54,11 @@ 'hello' => 'Hola', 'hi' => 'Hola', 'i_have_read' => 'He leído y aceptado los términos de uso, y he recibido este artículo.', - 'inventory_report' => 'Reporte de Inventario', + 'inventory_report' => 'Reporte de inventario', 'item' => 'Elemento', 'item_checked_reminder' => 'Este es un recordatorio de que actualmente tiene :count elemento(s) asignado(s) que no ha aceptado o rechazado. Haga clic en el siguiente enlace para confirmar su decisión.', 'license_expiring_alert' => 'Hay :count licencia que expira en los próximos :threshold días. | Hay :count licencias que expiran en los próximos :threshold días.', - 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar contraseña de :web :', + 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar su contraseña de :web :', 'login' => 'Entrar:', 'login_first_admin' => 'Inicie sesión en su nueva instalación de Snipe-IT usando las credenciales:', 'low_inventory_alert' => 'Hay :count elemento que está por debajo del inventario mínimo o que pronto lo estará.|Hay :count elementos que están por debajo del inventario mínimo o que pronto lo estarán.', @@ -69,7 +69,7 @@ 'password' => 'Contraseña', 'password_reset' => 'Reiniciar la contraseña', 'read_the_terms' => 'Por favor lea los términos de uso a continuación.', - 'read_the_terms_and_click' => 'Por favor, lea los términos de uso a continuación, y haga clic en el enlace en la parte inferior para confirmar que usted lee y acepta las condiciones de uso, y han recibido el activo.', + 'read_the_terms_and_click' => 'Por favor lea los términos de uso a continuación y haga clic en el enlace en la parte inferior para confirmar que usted leyó los términos de uso y los acepta, y que ha recibido el activo.', 'requested' => 'Solicitado', 'reset_link' => 'Su enlace de restablecimiento de contraseña', 'reset_password' => 'Haaga clic aquí para restablecer tu contraseña:', @@ -82,9 +82,9 @@ 'test_email' => 'Email de prueba de Snipe-IT', 'test_mail_text' => 'Esto es una prueba desde el sistema de gestión de activos Snipe-IT. Si recibió este mensaje, el correo está funcionando :)', 'the_following_item' => 'El siguiente artículo ha sido devuelto: ', - 'to_reset' => 'Para restaurar tu contraseña de :web, diligencie este formulario:', + 'to_reset' => 'Para restaurar su contraseña de :web, diligencie este formulario:', 'type' => 'Tipo', - 'upcoming-audits' => 'Hay :count para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', + 'upcoming-audits' => 'Hay :count activo para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', 'user' => 'Usuario', 'username' => 'Nombre de usuario', 'unaccepted_asset_reminder' => 'Tiene activos pendientes por aceptar.', diff --git a/resources/lang/es-MX/validation.php b/resources/lang/es-MX/validation.php index 813772f03357..b311e9dd6a41 100644 --- a/resources/lang/es-MX/validation.php +++ b/resources/lang/es-MX/validation.php @@ -143,7 +143,7 @@ 'required_if_accepted' => 'El campo :attribute es obligatorio cuando se acepta :other.', 'required_if_declined' => 'El campo :attribute es requerido cuando :other es rechazado.', 'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.', - 'required_with' => ':attribute es obligatrio cuando :values es present.', + 'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.', 'required_with_all' => 'El campo :attribute es requerido cuando :values están presentes.', 'required_without' => ':attribute es obligatrio cuando :values es not present.', 'required_without_all' => 'El campo :attribute es obligatorio cuando no está presente ninguno de los :values.', @@ -156,8 +156,8 @@ ], 'starts_with' => 'El campo :attribute debe iniciar con uno de los siguientes: :values.', 'string' => 'El atributo: debe ser una cadena.', - 'two_column_unique_undeleted' => ':attribute debe ser único a través de :table1 y :table2. ', - 'unique_undeleted' => 'El :attribute debe ser único.', + 'two_column_unique_undeleted' => ':attribute debe ser único entre la :table1 y :table2. ', + 'unique_undeleted' => ':attribute debe ser único.', 'non_circular' => ':attribute no debe crear una referencia circular.', 'not_array' => ':attribute no puede ser una matriz.', 'disallow_same_pwd_as_user_fields' => 'La contraseña no puede ser la misma que el nombre de usuario.', @@ -166,13 +166,14 @@ 'case_diff' => 'La contraseña debe usar mayúsculas y minúsculas.', 'symbols' => 'La contraseña debe contener símbolos.', 'timezone' => 'El campo :attribute debe ser una zona horaria válida.', - 'unique' => ':attribute ya ha sido introducido.', - 'uploaded' => 'El atributo: no se pudo cargar.', + 'unique' => ':attribute ya está en uso.', + 'uploaded' => ':attribute no se pudo cargar.', 'uppercase' => 'El campo :attribute debe estar en mayúsculas.', 'url' => 'El campo :attribute debe ser una URL válida.', 'ulid' => 'El campo :attribute debe ser un ULID válido.', 'uuid' => 'El campo :attribute debe ser un UUID válido.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -185,8 +186,8 @@ */ 'custom' => [ - 'alpha_space' => 'El campo: atributo contiene un carácter que no está permitido.', - 'email_array' => 'Una o más direcciones de correo electrónico no es válida.', + 'alpha_space' => 'El campo :attribute contiene un carácter que no está permitido.', + 'email_array' => 'Una o más direcciones de correo electrónico no son válidas.', 'hashed_pass' => 'Su contraseña actual es incorrecta', 'dumbpwd' => 'Esa contraseña es muy común.', 'statuslabel_type' => 'Debe seleccionar un tipo de etiqueta de estado válido.', @@ -194,18 +195,25 @@ 'custom_field_not_found_on_model' => 'Este campo parece existir, pero no está disponible en este conjunto de campos para el modelo de activo.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. - 'purchase_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', - 'last_audit_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD hh:mm:ss', - 'expiration_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', - 'termination_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', - 'expected_checkin.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', - 'start_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', - 'end_date.date_format' => ':attribute debe ser una fecha válida con formato AAA-MM-DD', + 'purchase_date.date_format' => ':attribute debe ser una fecha válida con formato AAAA-MM-DD', + 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAAA-MM-DD hh:mm:ss', + 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', 'checkboxes' => ':attribute contiene opciones no válidas.', 'radio_buttons' => 'El valor de :attribute no es válido.', 'invalid_value_in_field' => 'Valor no válido incluido en este campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mezcla de mayúsculas y minúsculas) no funcionará. Debe utilizar samaccountname (minúsculas) en su lugar.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname probablemente no es un filtro de autenticación válido Probablemente quiera uid= '], + 'ldap_filter' => ['regex' => 'Este valor probablemente no debería ir entre paréntesis.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/es-VE/account/general.php b/resources/lang/es-VE/account/general.php index df7820e87ef3..b727b63023a5 100644 --- a/resources/lang/es-VE/account/general.php +++ b/resources/lang/es-VE/account/general.php @@ -5,11 +5,11 @@ 'personal_access_token' => 'Credencial de acceso personal', 'personal_api_keys_success' => 'Clave API personal :key creada correctamente', 'here_is_api_key' => 'Aquí tiene su nueva credencial de acceso personal. Esta es la única vez que se mostrará, así que no la pierda. Ahora puede utilizar esta credencial para realizar solicitudes a la API.', - 'api_key_warning' => 'Al generar una credencial para el API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', + 'api_key_warning' => 'Al generar una credencial para la API, asegúrese de copiarla inmediatamente, ya que no podrá volver a verla.', 'api_base_url' => 'La url base de su API se encuentra en:', 'api_base_url_endpoint' => '/<endpoint>', 'api_token_expiration_time' => 'Las credenciales de la API están establecidas para expirar en:', - 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoints) del API y documentación adicional.', + 'api_reference' => 'Consulte API reference para encontrar los puntos finales (endpoins) de la API y documentación adicional.', 'profile_updated' => 'La cuenta fue actualizada exitosamente', 'no_tokens' => 'No ha creado ninguna credencial de acceso personal.', 'enable_sounds' => 'Habilitar efectos de sonido', diff --git a/resources/lang/es-VE/admin/accessories/general.php b/resources/lang/es-VE/admin/accessories/general.php index ae88538e2a97..8f3adf393d0b 100644 --- a/resources/lang/es-VE/admin/accessories/general.php +++ b/resources/lang/es-VE/admin/accessories/general.php @@ -5,17 +5,17 @@ 'accessory_name' => 'Nombre de Accesorio', 'checkout' => 'Asignar accesorio', 'checkin' => 'Ingresar accesorio', - 'create' => 'Crear Accesorio', - 'edit' => 'Editar Accesorio', + 'create' => 'Crear accesorio', + 'edit' => 'Editar accesorio', 'eula_text' => 'Acuerdo de uso de la categoría', - 'eula_text_help' => 'Este campo permite personalizar los términos y condiciones para tipos específicos de activos. Si solo tiene unos términos y condiciones para todos sus activos, puede seleccionar la siguiente opción para usar el valor por defecto.', + 'eula_text_help' => 'Este campo permite personalizar los acuerdos de uso para tipos específicos de activos. Si solo tiene un acuerdo de uso para todos sus activos, puede seleccionar la siguiente opción para usar el valor predeterminado.', 'require_acceptance' => 'Pedir a los usuarios confirmación de aceptación de los elementos en esta categoría.', 'no_default_eula' => 'No se encontraron términos y condiciones por defecto. Agregue unos en Configuración.', 'total' => 'Total', 'remaining' => 'Disponibles', 'update' => 'Actualizar accesorio', - 'use_default_eula' => 'En su lugar, el acuerdo de uso predeterminado.', - 'use_default_eula_disabled' => 'En su lugar, use el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', + 'use_default_eula' => 'En su lugar, utilice el acuerdo de uso predeterminado.', + 'use_default_eula_disabled' => 'En su lugar, utilice el acuerdo de uso predeterminado. No está configurado el acuerdo de uso predeterminado. Por favor agregue uno en Configuración.', 'clone' => 'Clonar accesorio', 'delete_disabled' => 'Este accesorio no se puede eliminar aún porque algunos elementos todavía están asignados.', diff --git a/resources/lang/es-VE/admin/accessories/message.php b/resources/lang/es-VE/admin/accessories/message.php index 755792fd7b85..bc5bdfaea8d0 100644 --- a/resources/lang/es-VE/admin/accessories/message.php +++ b/resources/lang/es-VE/admin/accessories/message.php @@ -8,7 +8,7 @@ 'create' => array( 'error' => 'El accesorio no fue creado, por favor inténtelo de nuevo.', - 'success' => 'El accesorio se ha creado con éxito.' + 'success' => 'Accesorio creado correctamente.' ), 'update' => array( diff --git a/resources/lang/es-VE/admin/accessories/table.php b/resources/lang/es-VE/admin/accessories/table.php index c14fd29c8970..b53b6fcdbfa8 100644 --- a/resources/lang/es-VE/admin/accessories/table.php +++ b/resources/lang/es-VE/admin/accessories/table.php @@ -5,7 +5,7 @@ 'eula_text' => 'Acuerdo de uso', 'id' => 'Identificación', 'require_acceptance' => 'Aceptación', - 'title' => 'Nombre del Accesorio', + 'title' => 'Nombre del accesorio', ); diff --git a/resources/lang/es-VE/admin/asset_maintenances/form.php b/resources/lang/es-VE/admin/asset_maintenances/form.php index 3e06eed48878..dfda6be9c5b9 100644 --- a/resources/lang/es-VE/admin/asset_maintenances/form.php +++ b/resources/lang/es-VE/admin/asset_maintenances/form.php @@ -1,14 +1,14 @@ 'Tipo de mantenimiento de equipo', + 'asset_maintenance_type' => 'Tipo de mantenimiento del activo', 'title' => 'Título', 'start_date' => 'Fecha de inicio', 'completion_date' => 'Fecha de finalización', 'cost' => 'Costo', - 'is_warranty' => 'Mejora de la Garantía', + 'is_warranty' => 'Mejora de la garantía', 'asset_maintenance_time' => 'Duración del mantenimiento (en días)', 'notes' => 'Notas', - 'update' => 'Actualizar Mantenimiento de Equipo', - 'create' => 'Crear Mantenimiento de Equipo' + 'update' => 'Actualizar mantenimiento del activo', + 'create' => 'Crear mantenimiento del activo' ]; diff --git a/resources/lang/es-VE/admin/asset_maintenances/general.php b/resources/lang/es-VE/admin/asset_maintenances/general.php index 3eef8459e46f..bdd340fc977d 100644 --- a/resources/lang/es-VE/admin/asset_maintenances/general.php +++ b/resources/lang/es-VE/admin/asset_maintenances/general.php @@ -2,9 +2,9 @@ return [ 'asset_maintenances' => 'Mantenimiento de activos', - 'edit' => 'Editar Mantenimiento de Activos', - 'delete' => 'Borrar Mantenimiento de Activos', - 'view' => 'Ver Detalles de Mantenimiento de Activo', + 'edit' => 'Editar mantenimiento del activo', + 'delete' => 'Eliminar mantenimiento del activo', + 'view' => 'Ver detalles del mantenimiento del activo', 'repair' => 'Reparar', 'maintenance' => 'Mantenimiento', 'upgrade' => 'Mejorar', diff --git a/resources/lang/es-VE/admin/asset_maintenances/message.php b/resources/lang/es-VE/admin/asset_maintenances/message.php index 479464bb9179..97ac17af2f8b 100644 --- a/resources/lang/es-VE/admin/asset_maintenances/message.php +++ b/resources/lang/es-VE/admin/asset_maintenances/message.php @@ -5,7 +5,7 @@ 'delete' => [ 'confirm' => '¿Está seguro de que desea eliminar el mantenimiento de este activo?', 'error' => 'Hubo un problema al eliminar el mantenimiento del activo. Por favor inténtelo nuevamente.', - 'success' => 'El mantenimiento de activo fue eliminado con éxito.', + 'success' => 'El mantenimiento del activo fue eliminado de manera exitosa.', ], 'create' => [ 'error' => 'El Mantenimiento de Activo no se ha creado, por favor inténtalo de nuevo.', @@ -13,9 +13,9 @@ ], 'edit' => [ 'error' => 'El mantenimiento del activo no fue editado. Por favor, inténtelo de nuevo.', - 'success' => 'Mantenimiento de Activo editado con éxito.', + 'success' => 'Mantenimiento del activo editado con éxito.', ], - 'asset_maintenance_incomplete' => 'No se ha completado aún', + 'asset_maintenance_incomplete' => 'Aún no se ha completado', 'warranty' => 'Garantía', - 'not_warranty' => 'Sin Garantía', + 'not_warranty' => 'Sin garantía', ]; diff --git a/resources/lang/es-VE/admin/asset_maintenances/table.php b/resources/lang/es-VE/admin/asset_maintenances/table.php index c0cf62380dee..6da43b1c7731 100644 --- a/resources/lang/es-VE/admin/asset_maintenances/table.php +++ b/resources/lang/es-VE/admin/asset_maintenances/table.php @@ -1,7 +1,7 @@ 'Mantenimiento de Activo', + 'title' => 'Mantenimiento del activo', 'asset_name' => 'Nombre del activo', 'is_warranty' => 'Garantía', 'dl_csv' => 'Descargar CSV', diff --git a/resources/lang/es-VE/admin/categories/table.php b/resources/lang/es-VE/admin/categories/table.php index 59942173a241..fc18e5ac6f3c 100644 --- a/resources/lang/es-VE/admin/categories/table.php +++ b/resources/lang/es-VE/admin/categories/table.php @@ -2,7 +2,7 @@ return array( 'eula_text' => 'Acuerdo de uso', - 'id' => 'Identificación', + 'id' => 'ID', 'parent' => 'Ubicación padre', 'require_acceptance' => 'Aceptación', 'title' => 'Nombre de la categoría del activo', diff --git a/resources/lang/es-VE/admin/companies/message.php b/resources/lang/es-VE/admin/companies/message.php index 66f4ef798bab..155c40aa0b9a 100644 --- a/resources/lang/es-VE/admin/companies/message.php +++ b/resources/lang/es-VE/admin/companies/message.php @@ -3,10 +3,10 @@ return [ 'does_not_exist' => 'La compañía no existe.', 'deleted' => 'Compañía eliminada', - 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtalo de nuevo. ', + 'assoc_users' => 'Esta compañía está actualmente asociada con al menos un modelo y no puede ser eliminada. Por favor actualice sus modelos para que no hagan referencia a esta compañía e inténtelo de nuevo. ', 'create' => [ - 'error' => 'La compañía no ha sido creada, por favor intente de nuevo.', - 'success' => 'Compañía creada con éxito.', + 'error' => 'La compañía no fue creada, por favor, inténtelo de nuevo.', + 'success' => 'Compañía creada satisfactoriamente.', ], 'update' => [ 'error' => 'La compañía no se ha actualizado, por favor inténtelo de nuevo', @@ -14,7 +14,7 @@ ], 'delete' => [ 'confirm' => '¿Está seguro de que quiere eliminar esta compañía?', - 'error' => 'Hubo un problema borrando la compañía. Por favor inténtelo de nuevo.', - 'success' => 'La compañía se ha borrado con éxito.', + 'error' => 'Hubo un problema eliminando la compañía. Por favor, inténtelo de nuevo.', + 'success' => 'La compañía fue eliminada correctamente.', ], ]; diff --git a/resources/lang/es-VE/admin/companies/table.php b/resources/lang/es-VE/admin/companies/table.php index f67382c9fa08..1cc605dfd19b 100644 --- a/resources/lang/es-VE/admin/companies/table.php +++ b/resources/lang/es-VE/admin/companies/table.php @@ -1,11 +1,11 @@ 'Compañías', - 'create' => 'Crear Compañía', + 'create' => 'Crear una compañía', 'email' => 'Correo electrónico de la compañía', 'title' => 'Compañía', 'phone' => 'Teléfono de la compañía', - 'update' => 'Actualizar Compañía', - 'name' => 'Nombre de Compañía', - 'id' => 'Identificación', + 'update' => 'Actualizar compañía', + 'name' => 'Nombre de la compañía', + 'id' => 'ID', ); diff --git a/resources/lang/es-VE/admin/components/general.php b/resources/lang/es-VE/admin/components/general.php index 6235de87d30c..4f4a97e381a4 100644 --- a/resources/lang/es-VE/admin/components/general.php +++ b/resources/lang/es-VE/admin/components/general.php @@ -1,16 +1,16 @@ 'Nombre de Componente', + 'component_name' => 'Nombre del componente', 'checkin' => 'Ingresar componente', 'checkout' => 'Asignar componente', - 'cost' => 'Costo de Compra', - 'create' => 'Crear Componente', - 'edit' => 'Editar Componente', + 'cost' => 'Costo de compra', + 'create' => 'Crear componente', + 'edit' => 'Editar componente', 'date' => 'Fecha de compra', 'order' => 'Número de orden', 'remaining' => 'Restante', 'total' => 'Total', - 'update' => 'Actualizar Componente', + 'update' => 'Actualizar componente', 'checkin_limit' => 'La cantidad ingresada debe ser igual o menor que :assigned_qty' ); diff --git a/resources/lang/es-VE/admin/components/message.php b/resources/lang/es-VE/admin/components/message.php index f4ff241d55c8..a936648f13f6 100644 --- a/resources/lang/es-VE/admin/components/message.php +++ b/resources/lang/es-VE/admin/components/message.php @@ -11,13 +11,13 @@ 'update' => array( 'error' => 'El componente no se actualizó, por favor inténtelo de nuevo', - 'success' => 'Componente actualizado con éxito.' + 'success' => 'Componente actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este componente?', 'error' => 'Hubo un problema eliminando el componente. Por favor, inténtelo de nuevo.', - 'success' => 'El componente se ha borrado con éxito.' + 'success' => 'El componente fue borrado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-VE/admin/components/table.php b/resources/lang/es-VE/admin/components/table.php index 72f0b866d23b..8f4de5c93ce1 100644 --- a/resources/lang/es-VE/admin/components/table.php +++ b/resources/lang/es-VE/admin/components/table.php @@ -1,5 +1,5 @@ 'Nombre del Componente', + 'title' => 'Nombre de componente', ); diff --git a/resources/lang/es-VE/admin/consumables/general.php b/resources/lang/es-VE/admin/consumables/general.php index 6946ba7076db..d93d59559775 100644 --- a/resources/lang/es-VE/admin/consumables/general.php +++ b/resources/lang/es-VE/admin/consumables/general.php @@ -2,8 +2,8 @@ return array( 'checkout' => 'Asignar consumible a usuario', - 'consumable_name' => 'Nombre del Consumible', - 'create' => 'Crear Consumible', + 'consumable_name' => 'Nombre del consumible', + 'create' => 'Crear consumible', 'item_no' => 'Artículo No.', 'remaining' => 'Restante', 'total' => 'Total', diff --git a/resources/lang/es-VE/admin/consumables/message.php b/resources/lang/es-VE/admin/consumables/message.php index 7602c32e9eb8..ca3da8895a50 100644 --- a/resources/lang/es-VE/admin/consumables/message.php +++ b/resources/lang/es-VE/admin/consumables/message.php @@ -12,13 +12,13 @@ 'update' => array( 'error' => 'El consumible no fue actualizado, por favor, inténtelo de nuevo', - 'success' => 'Consumible actualizado con éxito.' + 'success' => 'Consumible actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este consumible?', 'error' => 'Hubo un problema al eliminar el consumible. Por favor inténtelo de nuevo.', - 'success' => 'El consumible fue borrado con éxito.' + 'success' => 'El consumible ha sido eliminado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-VE/admin/consumables/table.php b/resources/lang/es-VE/admin/consumables/table.php index befcfc511b36..2e346e29622e 100644 --- a/resources/lang/es-VE/admin/consumables/table.php +++ b/resources/lang/es-VE/admin/consumables/table.php @@ -1,5 +1,5 @@ 'Nombre del Consumible', + 'title' => 'Nombre del consumible', ); diff --git a/resources/lang/es-VE/admin/custom_fields/general.php b/resources/lang/es-VE/admin/custom_fields/general.php index b2ddf6af068b..97881874fda1 100644 --- a/resources/lang/es-VE/admin/custom_fields/general.php +++ b/resources/lang/es-VE/admin/custom_fields/general.php @@ -2,26 +2,26 @@ return [ 'custom_fields' => 'Campos personalizados', - 'manage' => 'Gestionar', + 'manage' => 'Administrar', 'field' => 'Campo', 'about_fieldsets_title' => 'Acerca de los grupos de campos', 'about_fieldsets_text' => 'Los grupos de campos le permiten agrupar campos personalizados que se reutilizan frecuentemente para determinados modelos de activos.', - 'custom_format' => 'Formato de expresion regular personalizada...', + 'custom_format' => 'Expresión regular personalizada...', 'encrypt_field' => 'Cifrar el valor de este campo en la base de datos', 'encrypt_field_help' => 'ADVERTENCIA: Cifrar un campo hace que no se pueda buscar.', 'encrypted' => 'Cifrado', 'fieldset' => 'Grupo de campos', 'qty_fields' => 'Campos de cantidad', - 'fieldsets' => 'Grupo de campos', + 'fieldsets' => 'Grupos de campos', 'fieldset_name' => 'Nombre del grupo de campos', - 'field_name' => 'Nombre del Campo', - 'field_values' => 'Valores del Campo', - 'field_values_help' => 'Añadir opciones seleccionables, una por línea. Líneas en blanco además de la primera serán ignoradas.', - 'field_element' => 'Elemento de Formulario', + 'field_name' => 'Nombre del campo', + 'field_values' => 'Valores de los campos', + 'field_values_help' => 'Agregue opciones seleccionables, una por línea. Se ignorarán las líneas en blanco que no sean la primera.', + 'field_element' => 'Elemento de formulario', 'field_element_short' => 'Elemento', 'field_format' => 'Formato', - 'field_custom_format' => 'Formato Personalizado de Regex', - 'field_custom_format_help' => 'Este campo te permite usar una expresión regex para la validación. Debería empezar como "regex:" - por ejemplo, para validar que un campo personalizado contiene un IMEI válido (15 dígitos numéricos), tú usarías regex:/^[0-9]{15}$/.', + 'field_custom_format' => 'Expresión regular personalizada', + 'field_custom_format_help' => 'Este campo le permite usar una expresión regular para la validación. Debería empezar con "regex:" - por ejemplo, para validar que un valor de campo personalizado contiene un IMEI válido (15 dígitos numéricos), podría usar regex:/^[0-9]{15}$/.', 'required' => 'Obligatorio', 'req' => 'Obl.', 'used_by_models' => 'Usado por los modelos', @@ -30,30 +30,30 @@ 'update_fieldset' => 'Actualizar grupo de campos', 'fieldset_does_not_exist' => 'El grupo de campos :id no existe', 'fieldset_updated' => 'Se actualizó el grupo de campos', - 'create_fieldset_title' => 'Crear nuevo grupo de campos', - 'create_field' => 'Nuevo Campo Personalizado', - 'create_field_title' => 'Crear un campo personalizado', + 'create_fieldset_title' => 'Crear un nuevo grupo de campos', + 'create_field' => 'Nuevo campo personalizado', + 'create_field_title' => 'Crear un nuevo campo personalizado', 'value_encrypted' => 'El valor de este campo está cifrado en la base de datos. Solo los administradores pueden ver el valor descifrado', - 'show_in_email' => '¿Incluir el campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', - 'show_in_email_short' => 'Incluye en correos electrónicos.', - 'help_text' => 'Texto de Ayuda', + 'show_in_email' => '¿Incluir el valor de este campo en los correos de asignación enviados al usuario? Los campos cifrados no se pueden incluir en los correos electrónicos', + 'show_in_email_short' => 'Incluir en los correos electrónicos.', + 'help_text' => 'Texto de ayuda', 'help_text_description' => 'Este es un texto opcional que aparecerá debajo de los campos del formulario cuando se edite un activo para proporcionar contexto adicional.', - 'about_custom_fields_title' => 'Acerca de campos personalizados', + 'about_custom_fields_title' => 'Acerca de los campos personalizados', 'about_custom_fields_text' => 'Los campos personalizados le permiten agregar atributos arbitrarios a los activos.', 'add_field_to_fieldset' => 'Añadir campo al grupo de campos', - 'make_optional' => 'Requerido - haga clic para hacerlo opcional', - 'make_required' => 'Opcional - haga click para hacerlo opcional', + 'make_optional' => 'Obligatorio - haga clic para hacerlo opcional', + 'make_required' => 'Opcional - haga clic para que sea obligatorio', 'reorder' => 'Reordenar', 'db_field' => 'Campo en base de datos', 'db_convert_warning' => 'ADVERTENCIA. Este campo está en la tabla de campos personalizados como :db_column pero debe ser :expected.', - 'is_unique' => 'Este valor debe ser unico en todos los activos', + 'is_unique' => 'Este valor debe ser único para todos los activos', 'unique' => 'Único', 'display_in_user_view' => 'Permitir al usuario ver estos valores en la página "Ver elementos asignados"', 'display_in_user_view_table' => 'Visible para el usuario', 'auto_add_to_fieldsets' => 'Añadir automáticamente a cada nuevo grupo de campos', 'add_to_preexisting_fieldsets' => 'Añadir a cualquier grupo de campos existente', 'show_in_listview' => 'Mostrar por defecto en las consultas. Los usuarios autorizados podrán mostrar/ocultar a través del selector de columnas', - 'show_in_listview_short' => 'Mostrar en listas', + 'show_in_listview_short' => 'Mostrar en las listas', 'show_in_requestable_list_short' => 'Mostrar en la lista de activos que se pueden solicitar', 'show_in_requestable_list' => 'Mostrar el valor en la lista de activos que se pueden solicitar. Los campos cifrados no se mostrarán', 'encrypted_options' => 'Este campo está cifrado, por lo que algunas opciones de visualización no estarán disponibles.', diff --git a/resources/lang/es-VE/admin/custom_fields/message.php b/resources/lang/es-VE/admin/custom_fields/message.php index 446af23a3166..c922f8b9acde 100644 --- a/resources/lang/es-VE/admin/custom_fields/message.php +++ b/resources/lang/es-VE/admin/custom_fields/message.php @@ -9,20 +9,20 @@ 'create' => array( 'error' => 'El campo no fue creado, por favor inténtalo de nuevo.', - 'success' => 'Campo creado con éxito.', - 'assoc_success' => 'Campo correctamente añadido al grupo.' + 'success' => 'Campo creado correctamente.', + 'assoc_success' => 'Campo correctamente añadido al grupo de campos.' ), 'update' => array( - 'error' => 'El campo no se ha actualizado, por favor, inténtelo de nuevo', - 'success' => 'Campo actualizado con éxito.' + 'error' => 'El campo no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'Campo actualizado correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que quiere eliminar este campo?', - 'error' => 'Hubo un problema al borrar el campo. Por favor, inténtelo de nuevo.', - 'success' => 'El campo fue borrado con éxito.', - 'in_use' => 'Campo aún en uso.', + 'error' => 'Hubo un problema al eliminar el campo. Por favor, inténtelo de nuevo.', + 'success' => 'El campo se eliminó correctamente.', + 'in_use' => 'El campo aún está en uso.', ) ), @@ -45,14 +45,14 @@ 'confirm' => '¿Está seguro de que quiere eliminar este grupo de campos?', 'error' => 'Hubo un problema al eliminar el grupo de campos. Inténtelo de nuevo.', 'success' => 'El grupo de campos se eliminó correctamente.', - 'in_use' => 'El grupo de campos está aún en uso.', + 'in_use' => 'El grupo de campos aún está en uso.', ) ), 'fieldset_default_value' => array( - 'error' => 'Error al validar los valores por defecto del grupo de campos.', + 'error' => 'Error al validar los valores predeterminados del grupo de campos.', ), diff --git a/resources/lang/es-VE/admin/departments/message.php b/resources/lang/es-VE/admin/departments/message.php index 5c3df3b36825..eabf4774d8ff 100644 --- a/resources/lang/es-VE/admin/departments/message.php +++ b/resources/lang/es-VE/admin/departments/message.php @@ -7,16 +7,16 @@ 'assoc_users' => 'Este departamento está actualmente asociado con al menos un usuario y no puede ser eliminado. Por favor, actualice sus usuarios para que no hagan referencia a este departamento e inténtelo de nuevo. ', 'create' => array( 'error' => 'El departamento no fue creado, por favor, inténtelo de nuevo.', - 'success' => 'Departamento creado con éxito.' + 'success' => 'Departamento creado correctamente.' ), 'update' => array( 'error' => 'El departamento no fue actualizado, por favor inténtelo de nuevo', - 'success' => 'El departamento fue actualizado con éxito.' + 'success' => 'Departamento actualizado con éxito.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este departamento?', 'error' => 'Hubo un problema al borrar el departamento. Por favor, inténtelo de nuevo.', - 'success' => 'El departamento ha sido borrado con éxito.' + 'success' => 'El departamento fue eliminado correctamente.' ) ); diff --git a/resources/lang/es-VE/admin/departments/table.php b/resources/lang/es-VE/admin/departments/table.php index aa3f6b3c534f..422bd9b82c3f 100644 --- a/resources/lang/es-VE/admin/departments/table.php +++ b/resources/lang/es-VE/admin/departments/table.php @@ -3,7 +3,7 @@ return array( 'id' => 'Identificación', - 'name' => 'Nombre de Departamento', + 'name' => 'Nombre del departamento', 'manager' => 'Supervisor', 'location' => 'Ubicación', 'create' => 'Crear departamento', diff --git a/resources/lang/es-VE/admin/groups/message.php b/resources/lang/es-VE/admin/groups/message.php index 754c3b637cc3..ee2c4a7b56a5 100644 --- a/resources/lang/es-VE/admin/groups/message.php +++ b/resources/lang/es-VE/admin/groups/message.php @@ -4,19 +4,19 @@ 'group_exists' => '¡El grupo ya existe!', 'group_not_found' => 'El ID del grupo :id no existe.', - 'group_name_required' => 'El nombre del campo es necesario', + 'group_name_required' => 'El campo nombre es obligatorio', 'success' => array( 'create' => 'Grupo creado con éxito.', - 'update' => 'Grupo actualizado con éxito.', - 'delete' => 'Grupo borrado con éxito.', + 'update' => 'El grupo fue actualizado exitosamente.', + 'delete' => 'El grupo fue eliminado exitosamente.', ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este grupo?', - 'create' => 'Hubo un problema creando el grupo. Por favor intente nuevamente.', + 'create' => 'Hubo un problema creando el grupo. Por favor, intente nuevamente.', 'update' => 'Hubo un problema actualizando el grupo. Por favor, intente nuevamente.', - 'delete' => 'Hubo un problema al borrar el grupo, por favor, inténtalo de nuevo.', + 'delete' => 'Hubo un problema eliminando el grupo. Por favor, intente nuevamente.', ), ); diff --git a/resources/lang/es-VE/admin/groups/table.php b/resources/lang/es-VE/admin/groups/table.php index 88c182b7bdd5..15118151851d 100644 --- a/resources/lang/es-VE/admin/groups/table.php +++ b/resources/lang/es-VE/admin/groups/table.php @@ -2,8 +2,8 @@ return array( - 'id' => 'Identificación', + 'id' => 'Id', 'name' => 'Nombre', - 'users' => '# de Usuarios', + 'users' => '# de usuarios', ); diff --git a/resources/lang/es-VE/admin/groups/titles.php b/resources/lang/es-VE/admin/groups/titles.php index fc816976819e..bdd09e3b6233 100644 --- a/resources/lang/es-VE/admin/groups/titles.php +++ b/resources/lang/es-VE/admin/groups/titles.php @@ -1,13 +1,13 @@ 'Acerca de los Grupos', + 'about_groups_title' => 'Acerca de los grupos', 'about_groups' => 'Los grupos son usados para generalizar permisos de usuario.', - 'group_management' => 'Administración de Grupo', - 'create' => 'Crear Nuevo Grupo', - 'update' => 'Editar Grupo', + 'group_management' => 'Administración de grupos', + 'create' => 'Crear un grupo nuevo', + 'update' => 'Editar grupo', 'group_name' => 'Nombre de Grupo', - 'group_admin' => 'Administración de Grupo', + 'group_admin' => 'Grupo administrador', 'allow' => 'Permitir', 'deny' => 'Denegar', 'permission' => 'Permiso', diff --git a/resources/lang/es-VE/admin/hardware/message.php b/resources/lang/es-VE/admin/hardware/message.php index b6be69b03a7d..bf72031b7393 100644 --- a/resources/lang/es-VE/admin/hardware/message.php +++ b/resources/lang/es-VE/admin/hardware/message.php @@ -6,7 +6,7 @@ 'does_not_exist' => 'El activo no existe.', 'does_not_exist_var'=> 'Activo con placa :asset_tag no encontrado.', 'no_tag' => 'No se ha proporcionado ninguna placa de activo.', - 'does_not_exist_or_not_requestable' => 'Ese activo no existe o no es solicitable.', + 'does_not_exist_or_not_requestable' => 'Ese activo no existe o no puede ser solicitado.', 'assoc_users' => 'Actualmente este activo está asignado a un usuario y no puede ser eliminado. Por favor, primero ingrese el activo y vuelva a intentarlo. ', 'warning_audit_date_mismatch' => 'La próxima fecha de auditoría de este activo (:next_audit_date) es anterior a la última fecha de auditoría (:last_audit_date). Por favor, actualice la próxima fecha de auditoría.', @@ -14,6 +14,8 @@ 'error' => 'El activo no fue creado, por favor, inténtelo de nuevo. :(', 'success' => 'Activo creado con éxito. :)', 'success_linked' => 'Activo con placa :tag creado con éxito. Haga clic aquí para ver.', + 'multi_success_linked' => 'Activo con etiqueta :links fue creado exitosamente.|:count activos fueron creados correctamente. :links.', + 'partial_failure' => 'No se ha podido crear un activo: Motivo: :failures|No se pudieron crear :count activos. Motivos: :failures', ], 'update' => [ @@ -68,7 +70,7 @@ 'confirm' => '¿Está seguro de que desea eliminar este activo?', 'error' => 'Hubo un problema al eliminar el activo. Por favor, inténtelo de nuevo.', 'nothing_updated' => 'Ningún activo se seleccionó, así que nada fue borrado.', - 'success' => 'El activo fue borrado con éxito.', + 'success' => 'El activo se ha eliminado correctamente.', ], 'checkout' => [ @@ -76,7 +78,12 @@ 'success' => 'Equipo asignado correctamente.', 'user_does_not_exist' => 'Este usuario no es correcto. Por favor, inténtelo de nuevo.', 'not_available' => '¡Ese equipo no está disponible para ser asignado!', - 'no_assets_selected' => 'Debes seleccionar al menos un activo de la lista', + 'no_assets_selected' => 'Debe seleccionar al menos un elemento de la lista', + ], + + 'multi-checkout' => [ + 'error' => 'El activo no fue asignado, por favor, intente nuevamente|Los activos no fueron asignados, por favor, intente nuevamente', + 'success' => 'El activo fue asignado correctamente|Los activos fueron asignados correctamente.', ], 'checkin' => [ diff --git a/resources/lang/es-VE/admin/kits/general.php b/resources/lang/es-VE/admin/kits/general.php index a3a15ec02e4b..030d3d59d128 100644 --- a/resources/lang/es-VE/admin/kits/general.php +++ b/resources/lang/es-VE/admin/kits/general.php @@ -1,7 +1,7 @@ 'Acerca de Kits predefinidos', + 'about_kits_title' => 'Acerca de kits predefinidos', 'about_kits_text' => 'Los kits predefinidos le permiten rápidamente asignar un conjunto de elementos (activos, licencias, etc.) a un usuario. Esto puede ser útil cuando su proceso de incorporación de usuarios es similar para muchos usuarios y todos reciben los mismos elementos.', 'checkout' => 'Asignar kit ', 'create_success' => 'El kit se ha creado correctamente.', @@ -16,36 +16,36 @@ 'append_accessory' => 'Añadir accesorio', 'update_appended_accessory' => 'Actualizar accesorio añadido', 'append_consumable' => 'Añadir consumible', - 'update_appended_consumable' => 'Actualizar consumible adjunto', + 'update_appended_consumable' => 'Actualizar consumible añadido', 'append_license' => 'Añadir licencia', 'update_appended_license' => 'Actualizar licencia añadida', 'append_model' => 'Añadir modelo', 'update_appended_model' => 'Actualizar modelo añadido', - 'license_error' => 'Licencia ya adjunta al kit', - 'license_added_success' => 'Licencia creada con éxito', + 'license_error' => 'Licencia ya vinculada al kit', + 'license_added_success' => 'Licencia añadida correctamente', 'license_updated' => 'La licencia fue actualizada correctamente', 'license_none' => 'La licencia no existe', - 'license_detached' => 'Licencia fue separada con éxito', - 'consumable_added_success' => 'Consumible creado con éxito', + 'license_detached' => 'Licencia desvinculada correctamente', + 'consumable_added_success' => 'Consumible añadido correctamente', 'consumable_updated' => 'El consumible fue actualizado correctamente', - 'consumable_error' => 'Consumible ya conectado al kit', + 'consumable_error' => 'Consumible ya vinculado al kit', 'consumable_deleted' => 'El borrado fue exitoso', 'consumable_none' => 'El consumible no existe', - 'consumable_detached' => 'Consumible fue separado con éxito', + 'consumable_detached' => 'Consumible desvinculado correctamente', 'accessory_added_success' => 'Accesorio añadido correctamente', 'accessory_updated' => 'El accesorio fue actualizado correctamente', - 'accessory_detached' => 'Accesorio fue separado con éxito', - 'accessory_error' => 'El accesorio ya está conectado al kit', + 'accessory_detached' => 'Accesorio desvinculado correctamente', + 'accessory_error' => 'El accesorio ya está vinculado al kit', 'accessory_deleted' => 'El borrado fue exitoso', 'accessory_none' => 'El accesorio no existe', 'checkout_success' => 'Asignación correcta', 'checkout_error' => 'Error al asignar', 'kit_none' => 'El kit no existe', - 'kit_created' => 'El kit se creó con éxito', + 'kit_created' => 'Kit creado correctamente', 'kit_updated' => 'El kit fue actualizado correctamente', 'kit_not_found' => 'Kit no encontrado', - 'kit_deleted' => 'Kit eliminado correctamente', + 'kit_deleted' => 'El kit fue eliminado correctamente', 'kit_model_updated' => 'El modelo fue actualizado correctamente', - 'kit_model_detached' => 'Modelo fue separado con éxito', + 'kit_model_detached' => 'El modelo fue desvinculado correctamente', 'model_already_attached' => 'Modelo ya vinculado al kit', ]; diff --git a/resources/lang/es-VE/admin/labels/message.php b/resources/lang/es-VE/admin/labels/message.php index 01006397cb89..f97118deb285 100644 --- a/resources/lang/es-VE/admin/labels/message.php +++ b/resources/lang/es-VE/admin/labels/message.php @@ -2,9 +2,9 @@ return [ - 'invalid_return_count' => 'El recuento no es válido desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_type' => 'Tipo no válido devuelto desde :name. Esperado :expected, obtenido :actual.', - 'invalid_return_value' => 'Valor no válido devuelto de :name. Esperado :expected, obtenido :actual.', + 'invalid_return_count' => 'Cantidad incorrecta devuelta por :name. Se esperaba :expected, obtenido :actual.', + 'invalid_return_type' => 'Tipo no válido devuelto por :name. Esperado :expected, obtenido :actual.', + 'invalid_return_value' => 'Valor no válido devuelto por :name. Esperado :expected, obtenido :actual.', 'does_not_exist' => 'La etiqueta no existe', diff --git a/resources/lang/es-VE/admin/labels/table.php b/resources/lang/es-VE/admin/labels/table.php index 055d28c169ef..fab4d8f9dba4 100644 --- a/resources/lang/es-VE/admin/labels/table.php +++ b/resources/lang/es-VE/admin/labels/table.php @@ -3,7 +3,7 @@ return [ 'example_company' => 'Compañía de prueba limitada', 'example_defaultloc' => 'Construcción 1', - 'example_category' => 'Probar categoría', + 'example_category' => 'Categoría de prueba', 'example_location' => 'Edificio 2', 'example_manufacturer' => 'Test Manufacturing Inc.', 'example_model' => 'Modelo de prueba', diff --git a/resources/lang/es-VE/admin/licenses/form.php b/resources/lang/es-VE/admin/licenses/form.php index fd40ca47ae49..fcb84c54b865 100644 --- a/resources/lang/es-VE/admin/licenses/form.php +++ b/resources/lang/es-VE/admin/licenses/form.php @@ -6,8 +6,8 @@ 'checkin' => 'Ingresar', 'create' => 'Crear licencia', 'expiration' => 'Fecha de vencimiento', - 'license_key' => 'Clave del Producto', - 'maintained' => 'Mantenido', + 'license_key' => 'Clave del producto', + 'maintained' => 'Tiene mantenimiento', 'name' => 'Nombre del software', 'no_depreciation' => 'No depreciar', 'purchase_order' => 'Número de orden de compra', @@ -17,6 +17,6 @@ 'termination_date' => 'Fecha de finalización', 'to_email' => 'Correo electrónico asociado a la licencia', 'to_name' => 'Nombre de la persona asociada a la licencia', - 'update' => 'Actualizar Licencia', + 'update' => 'Actualizar licencia', 'checkout_help' => 'Debe asignar una licencia a un activo de hardware o a una persona. Puede seleccionar ambos, pero el propietario del activo debe coincidir con la persona a la que está asignado el activo.' ); diff --git a/resources/lang/es-VE/admin/licenses/general.php b/resources/lang/es-VE/admin/licenses/general.php index 83ed84581692..050cb553a05b 100644 --- a/resources/lang/es-VE/admin/licenses/general.php +++ b/resources/lang/es-VE/admin/licenses/general.php @@ -6,9 +6,9 @@ 'checkin' => 'Ingresar licencia', 'checkout_history' => 'Historial de asignaciones', 'checkout' => 'Asignar licencia', - 'edit' => 'Editar Licencia', + 'edit' => 'Editar licencia', 'filetype_info' => 'Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, y rar.', - 'clone' => 'Clonar Licencia', + 'clone' => 'Clonar licencia', 'history_for' => 'Historial de ', 'in_out' => 'Registrado / Asignado', 'info' => 'Información de licencia', @@ -16,10 +16,10 @@ 'seat' => 'Licencia', 'seat_count' => 'Licencia :count', 'seats' => 'Total de licencias', - 'software_licenses' => 'Licencias de Software', + 'software_licenses' => 'Licencias de software', 'user' => 'Usuario', - 'view' => 'Ver Licencia', - 'delete_disabled' => 'Esta licencia no se puede eliminar aún está asignada a algunos usuarios.', + 'view' => 'Ver licencia', + 'delete_disabled' => 'Esta licencia no se puede eliminar porque todavía está asignada.', 'bulk' => [ 'checkin_all' => [ @@ -47,6 +47,6 @@ ], ], - 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede considerar la compra de más licencias.', + 'below_threshold' => 'Solo quedan :remaining_count licencias y su cantidad mínima es de :min_amt. Puede que desee considerar la compra de más licencias.', 'below_threshold_short' => 'Este artículo está por debajo de la cantidad mínima requerida.', ); diff --git a/resources/lang/es-VE/admin/licenses/message.php b/resources/lang/es-VE/admin/licenses/message.php index d260f4ad916e..c3e2adaf2ea8 100644 --- a/resources/lang/es-VE/admin/licenses/message.php +++ b/resources/lang/es-VE/admin/licenses/message.php @@ -14,30 +14,30 @@ 'create' => array( 'error' => 'La licencia no fue creada, por favor inténtelo de nuevo.', - 'success' => 'Licencia creada con éxito.' + 'success' => 'Categoría creada correctamente.' ), 'deletefile' => array( - 'error' => 'El archivo no fue borrado. Por favor, inténtalo de nuevo.', - 'success' => 'Archivo borrado con éxito.', + 'error' => 'Archivo no eliminado. Por favor, vuelva a intentarlo.', + 'success' => 'Archivo eliminado correctamente.', ), 'upload' => array( - 'error' => 'Archivo(s) no cargado(s). Por favor, inténtelo nuevamente.', - 'success' => 'Archivo(s) cargado(s) con éxito.', + 'error' => 'Archivo(s) no cargado(s). Por favor, inténtelo de nuevo.', + 'success' => 'Archivo(s) cargado correctamente.', 'nofiles' => 'No seleccionó ningún archivo para ser cargado, o el archivo que seleccionó es demasiado grande', 'invalidfiles' => 'Uno o más de sus archivos es demasiado grande o es un tipo de archivo que no está permitido. Los tipos de archivo permitidos son png, gif, jpg, jpeg, doc, docx, pdf, txt, zip, rar, rtf, xml y lic.', ), 'update' => array( 'error' => 'La licencia no fue actualizada, por favor inténtelo de nuevo', - 'success' => 'Licencia actualizada con éxito.' + 'success' => 'Categoría actualizada correctamente.' ), 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar esta licencia?', 'error' => 'Hubo un problema al eliminar la licencia. Por favor, inténtelo de nuevo.', - 'success' => 'La licencia fue eliminada con éxito.' + 'success' => 'La licencia se ha eliminado correctamente.' ), 'checkout' => array( diff --git a/resources/lang/es-VE/admin/licenses/table.php b/resources/lang/es-VE/admin/licenses/table.php index 23ffeee4e20e..8d3fbc074797 100644 --- a/resources/lang/es-VE/admin/licenses/table.php +++ b/resources/lang/es-VE/admin/licenses/table.php @@ -2,7 +2,7 @@ return array( - 'assigned_to' => 'Asignado A', + 'assigned_to' => 'Asignado a', 'checkout' => 'Entrada/Salida', 'deleted_at' => 'Eliminado el', 'id' => 'ID', @@ -12,7 +12,7 @@ 'purchased' => 'Comprado', 'seats' => 'Total de licencias', 'hardware' => 'Hardware', - 'serial' => 'Serial', + 'serial' => 'Número de serie', 'title' => 'Licencia', ); diff --git a/resources/lang/es-VE/admin/manufacturers/message.php b/resources/lang/es-VE/admin/manufacturers/message.php index 22571cce1cc3..4e25322f0cd1 100644 --- a/resources/lang/es-VE/admin/manufacturers/message.php +++ b/resources/lang/es-VE/admin/manufacturers/message.php @@ -8,17 +8,17 @@ 'create' => array( 'error' => 'El fabricante no fue creado, por favor inténtelo de nuevo.', - 'success' => 'Fabricante creado con éxito.' + 'success' => 'Fabricante creado exitosamente.' ), 'update' => array( - 'error' => 'El fabricante no fue actualizado, por favor inténtelo de nuevo', - 'success' => 'Fabricante actualizado con éxito.' + 'error' => 'El fabricante no fue actualizado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante se ha actualizado exitosamente.' ), 'restore' => array( - 'error' => 'El fabricante no ha sido restaurado, por favor inténtalo de nuevo', - 'success' => 'Fabricante restaurado con éxito.' + 'error' => 'El fabricante no fue restaurado, por favor, inténtelo de nuevo', + 'success' => 'El fabricante fue restaurado exitosamente.' ), 'delete' => array( diff --git a/resources/lang/es-VE/admin/manufacturers/table.php b/resources/lang/es-VE/admin/manufacturers/table.php index 9ab7c77dcf20..817f4baddd5a 100644 --- a/resources/lang/es-VE/admin/manufacturers/table.php +++ b/resources/lang/es-VE/admin/manufacturers/table.php @@ -1,7 +1,7 @@ 'Sobre Fabricantes', + 'about_manufacturers_title' => 'Sobre los fabricantes', 'about_manufacturers_text' => 'Los fabricantes son las empresas que crean sus activos. Aquí puede almacenar importante información de contacto para soporte, la cual se mostrará en las páginas de detalle de sus activos.', 'asset_manufacturers' => 'Fabricantes de activos', 'create' => 'Crear fabricante', diff --git a/resources/lang/es-VE/admin/models/general.php b/resources/lang/es-VE/admin/models/general.php index 9ca2d303b4d4..6031f88268fd 100644 --- a/resources/lang/es-VE/admin/models/general.php +++ b/resources/lang/es-VE/admin/models/general.php @@ -1,18 +1,18 @@ 'Acerca de los Modelos de Activos', - 'about_models_text' => 'Los Modelos de Activos son un grupo de activos idénticos. "MBP 2013", "iPhone 6S", etc.', + 'about_models_title' => 'Acerca de los modelos de activos', + 'about_models_text' => 'Los modelos de activos son una forma de agrupar activos idénticos. "MBP 2013", "IPhone 6s", etc.', 'deleted' => 'Este modelo ha sido eliminado.', - 'bulk_delete' => 'Eliminación Masiva de Modelos de Activos', - 'bulk_delete_help' => 'Usa las casillas abajo para confirmar la eliminación de los modelos de activos seleccionados. Los modelos de activo que tienen distintos activos asociados con ellos no pueden ser borrados hasta que los activos sean asociados a un modelo diferente.', + 'bulk_delete' => 'Eliminación masiva de modelos de activos', + 'bulk_delete_help' => 'Utilice las casillas a continuación para confirmar la eliminación de los modelos de activos seleccionados. Los modelos de activos que tienen activos asociados a ellos no se pueden eliminar hasta que los activos estén asociados con un modelo diferente.', 'bulk_delete_warn' => 'Está a punto de eliminar un modelo de activo.|Está a punto de eliminar :model_count modelos de activos.', 'restore' => 'Restaurar modelo', 'requestable' => 'Los usuarios pueden solicitar este modelo', - 'show_mac_address' => 'Mostrar campo de dirección MAC en activos en este modelo', + 'show_mac_address' => 'Mostrar el campo de dirección MAC en los activos de este modelo', 'view_deleted' => 'Ver Borrados', 'view_models' => 'Ver modelos', 'fieldset' => 'Grupo de campos', - 'no_custom_field' => 'Sin campos personalizados', + 'no_custom_field' => 'No hay campos personalizados', 'add_default_values' => 'Agregar valores predeterminados', ); diff --git a/resources/lang/es-VE/admin/reports/general.php b/resources/lang/es-VE/admin/reports/general.php index d2056b1b5630..cf62a35b87ef 100644 --- a/resources/lang/es-VE/admin/reports/general.php +++ b/resources/lang/es-VE/admin/reports/general.php @@ -1,7 +1,7 @@ 'Seleccione las opciones que desea para el informe de activos.', + 'info' => 'Seleccione las opciones que desee para su informe de activos.', 'deleted_user' => 'Usuario eliminado', 'send_reminder' => 'Enviar recordatorio', 'reminder_sent' => 'Recordatorio enviado', @@ -9,9 +9,9 @@ 'acceptance_request' => 'Solicitud de aceptación', 'custom_export' => [ 'user_address' => 'Dirección de usuario', - 'user_city' => 'Ciudad del Usuario', + 'user_city' => 'Ciudad del usuario', 'user_state' => 'Estado del usuario', - 'user_country' => 'País de usuario', - 'user_zip' => 'Usuario Zip' + 'user_country' => 'País del usuario', + 'user_zip' => 'Código postal del usuario' ] ]; \ No newline at end of file diff --git a/resources/lang/es-VE/admin/settings/general.php b/resources/lang/es-VE/admin/settings/general.php index 95240214e4b6..49d2a9303e69 100644 --- a/resources/lang/es-VE/admin/settings/general.php +++ b/resources/lang/es-VE/admin/settings/general.php @@ -66,7 +66,7 @@ 'eula_markdown' => 'Estos acuerdos de uso permiten markdown estilo Github.', 'favicon' => 'Favicon', 'favicon_format' => 'Los tipos de archivo aceptados son ico, png y gif. Es posible que otros formatos de imagen no funcionen en todos los navegadores.', - 'favicon_size' => 'Favicons deben ser imágenes cuadradas, 16x16 píxeles.', + 'favicon_size' => 'Los Favicons deben ser imágenes cuadradas, de 16x16 píxeles.', 'footer_text' => 'Texto adicional en el pie de página ', 'footer_text_help' => 'Este texto aparecerá en el lado derecho del pie de página. Los enlaces son permitidos usando markdown estilo Github. Los saltos de línea, encabezados, imágenes, etc. pueden dar lugar a resultados impredecibles.', 'general_settings' => 'Configuración general', @@ -326,7 +326,7 @@ 'localization_keywords' => 'localización, moneda, local, ubicación, zona horaria, internacional, internacionalización, idioma, traducción', 'localization_help' => 'Idioma, visualización de la fecha', 'notifications' => 'Notificaciones', - 'notifications_help' => 'Configuración de alertas por email y auditoría', + 'notifications_help' => 'Configuración de alertas por correo electrónico y de auditoría', 'asset_tags_help' => 'Incrementos y prefijos', 'labels' => 'Etiquetas', 'labels_title' => 'Actualizar configuración de etiquetas', @@ -361,7 +361,7 @@ 'label2_2d_type_help' => 'Formato para códigos de barras 2D', 'label2_2d_target' => 'Apuntamiento del código de barras 2D', 'label2_2d_target_help' => 'La URL a la que apunta el código de barras 2D cuando se escanea', - 'label2_fields' => 'Definiciones de campo', + 'label2_fields' => 'Definiciones del campo', 'label2_fields_help' => 'Los campos se pueden añadir, eliminar y reordenar en la columna izquierda. Para cada campo, se pueden agregar, eliminar y reordenar múltiples opciones para etiquetas y para orígenes de datos en la columna derecha.', 'help_asterisk_bold' => 'Texto introducido como **texto** se mostrará como negrita', 'help_blank_to_use' => 'Deje en blanco para usar el valor de :setting_name', @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Advertencia para próximos ingresos', 'due_checkin_days_help' => '¿Cuántos días antes de la fecha prevista de ingreso de un activo debe figurar en la página «Próximos a ingresar»?', + 'no_groups' => 'Todavía no se han creado grupos. Para agregar uno, visiteConfiguración de administración > Grupos de permisos.', ]; diff --git a/resources/lang/es-VE/admin/settings/message.php b/resources/lang/es-VE/admin/settings/message.php index 517b9e985f7d..ba347a4ac48b 100644 --- a/resources/lang/es-VE/admin/settings/message.php +++ b/resources/lang/es-VE/admin/settings/message.php @@ -9,7 +9,7 @@ 'backup' => [ 'delete_confirm' => '¿Está seguro de que desea eliminar este archivo de respaldo? Esta acción no puede se puede deshacer. ', 'file_deleted' => 'El archivo de respaldo fue eliminado satisfactoriamente. ', - 'generated' => 'Se ha creado un nuevo archivo de copia de seguridad satisfactoriamente.', + 'generated' => 'Se ha creado correctamente un nuevo archivo de copia de seguridad.', 'file_not_found' => 'Ese archivo de copia de seguridad no se pudo encontrar en el servidor.', 'restore_warning' => 'Sí, restaurarlo. Reconozco que esto sobrescribirá cualquier dato existente actualmente en la base de datos. Esto también cerrará la sesión de todos sus usuarios existentes (incluido usted).', 'restore_confirm' => '¿Está seguro que desea restaurar su base de datos desde :filename?' diff --git a/resources/lang/es-VE/admin/suppliers/message.php b/resources/lang/es-VE/admin/suppliers/message.php index 7419e804bcc7..b5be1b813326 100644 --- a/resources/lang/es-VE/admin/suppliers/message.php +++ b/resources/lang/es-VE/admin/suppliers/message.php @@ -19,7 +19,7 @@ 'delete' => array( 'confirm' => '¿Está seguro de que desea eliminar este proveedor?', 'error' => 'Hubo un problema al eliminar el proveedor, por favor inténtelo de nuevo.', - 'success' => 'El proveedor fue eliminado con éxito.', + 'success' => 'Proveedor eliminado correctamente.', 'assoc_assets' => 'Este proveedor está actualmente asociado con :asset_count activo(s) y no puede ser eliminado. Actualice sus activos para que ya no hagan referencia a este proveedor e inténtelo de nuevo. ', 'assoc_licenses' => 'Este proveedor está asociado actualmente con :licenses_count licences(s) y no puede ser eliminado. Por favor, actualice sus licencias para dejar de hacer referencia a este proveedor e inténtelo de nuevo. ', 'assoc_maintenances' => 'Este proveedor está actualmente asociado con :asset_maintainances_count mantenimiento(s) de activo(s) y no puede ser eliminado. Por favor, actualice el mantenimiento de sus activos para no hacer referencia a este proveedor y vuelva a intentarlo. ', diff --git a/resources/lang/es-VE/admin/suppliers/table.php b/resources/lang/es-VE/admin/suppliers/table.php index 95560d6eeab6..92b21afa9404 100644 --- a/resources/lang/es-VE/admin/suppliers/table.php +++ b/resources/lang/es-VE/admin/suppliers/table.php @@ -1,25 +1,25 @@ 'Acerca de los Proveedores', + 'about_suppliers_title' => 'Acerca de los proveedores', 'about_suppliers_text' => 'Los proveedores se utilizan para hacer seguimiento al origen de los elementos', - 'address' => 'Dirección del Proveedor', + 'address' => 'Dirección del proveedor', 'assets' => 'Activos', 'city' => 'Ciudad', - 'contact' => 'Nombre de Contacto', + 'contact' => 'Nombre de contacto', 'country' => 'País', - 'create' => 'Crear Proveedor', + 'create' => 'Crear un proveedor', 'email' => 'Correo electrónico', 'fax' => 'Fax', 'id' => 'ID', 'licenses' => 'Licencias', - 'name' => 'Nombre del Proveedor', + 'name' => 'Nombre del proveedor', 'notes' => 'Notas', 'phone' => 'Teléfono', 'state' => 'Estado', 'suppliers' => 'Proveedores', - 'update' => 'Actualizar Proveedor', - 'view' => 'Ver Proveedor', + 'update' => 'Actualizar proveedor', + 'view' => 'Ver proveedor', 'view_assets_for' => 'Ver activos para', 'zip' => 'Código postal', diff --git a/resources/lang/es-VE/auth/general.php b/resources/lang/es-VE/auth/general.php index 5c0eb55f2c2a..93757b6790f4 100644 --- a/resources/lang/es-VE/auth/general.php +++ b/resources/lang/es-VE/auth/general.php @@ -3,9 +3,9 @@ return [ 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', 'email_reset_password' => 'Enviar correo', - 'reset_password' => 'Restablecer Contraseña', + 'reset_password' => 'Restablecer contraseña', 'saml_login' => 'Iniciar sesión a través de SAML', - 'login' => 'Iniciar Sesión', + 'login' => 'Iniciar sesión', 'login_prompt' => 'Por favor inicie sesión', 'forgot_password' => 'Olvidé mi contraseña', 'ldap_reset_password' => 'Haga clic aquí para restablecer su contraseña LDAP', @@ -13,6 +13,6 @@ 'username_help_top' => 'Ingrese su nombre de usuario para enviar un enlace de restablecimiento de contraseña.', 'username_help_bottom' => 'Su nombre de usuario y correo electrónico pueden ser el mismo, pero puede que no lo sean, dependiendo de su configuración. Si no recuerda su nombre de usuario, contacte al administrador.

A los nombres de usuario que no tengan un correo electrónico asociado, no se les enviará el enlace de cambio de contraseña. ', 'google_login' => 'Iniciar sesión con Google Workspace', - 'google_login_failed' => 'Error al iniciar sesión en Google. Vuelve a intentarlo.', + 'google_login_failed' => 'Error al iniciar sesión en Google, por favor, vuelva a intentarlo.', ]; diff --git a/resources/lang/es-VE/auth/message.php b/resources/lang/es-VE/auth/message.php index d0362ef00aa7..e746751ab621 100644 --- a/resources/lang/es-VE/auth/message.php +++ b/resources/lang/es-VE/auth/message.php @@ -2,19 +2,19 @@ return array( - 'account_already_exists' => 'Una cuenta con este correo ya existe.', + 'account_already_exists' => 'Ya existe una cuenta con este correo electrónico.', 'account_not_found' => 'El nombre de usuario o la contraseña son incorrectos.', - 'account_not_activated' => 'La cuenta de este usuario no está activada.', - 'account_suspended' => 'La cuenta de este usuario está suspendida.', - 'account_banned' => 'La cuenta de este usuario está bloqueada.', - 'throttle' => 'Demasiados intentos fallidos de inicio de sesión. Por favor, inténtalo de nuevo en :minutes minutos.', + 'account_not_activated' => 'Esta cuenta de usuario no está activada.', + 'account_suspended' => 'Esta cuenta de usuario está suspendida.', + 'account_banned' => 'Esta cuenta de usuario está bloqueada.', + 'throttle' => 'Demasiados intentos de inicio de sesión fallidos. Por favor, intente otra vez en :minutes minuto(s).', 'two_factor' => array( 'already_enrolled' => 'Su dispositivo ya está inscrito.', 'success' => 'Ha iniciado sesión exitosamente.', - 'code_required' => 'El código de doble factor es necesario.', + 'code_required' => 'Se requiere el código de autenticación de doble factor (2FA).', 'invalid_code' => 'El código de doble factor no es válido.', - 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de dos factores.', + 'enter_two_factor_code' => 'Por favor ingrese su código de autenticación de doble factor.', 'please_enroll' => 'Por favor inscriba un dispositivo en la autenticación de dos factores.', ), diff --git a/resources/lang/es-VE/button.php b/resources/lang/es-VE/button.php index dfdefcd12e11..ad0a6db97060 100644 --- a/resources/lang/es-VE/button.php +++ b/resources/lang/es-VE/button.php @@ -2,7 +2,7 @@ return [ 'actions' => 'Acciones', - 'add' => 'Añadir Nuevo', + 'add' => 'Añadir nuevo', 'cancel' => 'Cancelar', 'checkin_and_delete' => 'Ingresar todo / Eliminar usuario', 'delete' => 'Borrar', @@ -15,10 +15,10 @@ 'upload' => 'Cargar', 'select_file' => 'Seleccionar un archivo...', 'select_files' => 'Seleccionar archivos...', - 'generate_labels' => '{1} Generar Etiqueta|[2,*] Generar Etiquetas', - 'send_password_link' => 'Enviar enlace de restablecimiento de contraseña', + 'generate_labels' => '{1} Generar etiqueta|[2,*] Generar etiquetas', + 'send_password_link' => 'Enviar enlace para restablecer la contraseña', 'go' => 'Ir', - 'bulk_actions' => 'Acciones en masa', + 'bulk_actions' => 'Acciones masivas', 'add_maintenance' => 'Añadir mantenimiento', 'append' => 'Añadir', 'new' => 'Nuevo', diff --git a/resources/lang/es-VE/general.php b/resources/lang/es-VE/general.php index d8b00976d09e..d487295134b8 100644 --- a/resources/lang/es-VE/general.php +++ b/resources/lang/es-VE/general.php @@ -20,7 +20,7 @@ 'all_assets' => 'Todos los activos', 'all' => 'Todo', 'archived' => 'Archivado', - 'asset_models' => 'Modelos de Activos', + 'asset_models' => 'Modelos de activos', 'asset_model' => 'Modelo', 'asset' => 'Activo', 'asset_report' => 'Informe de activos', @@ -42,23 +42,23 @@ 'avatar_delete' => 'Borrar Avatar', 'avatar_upload' => 'Cargar Avatar', 'back' => 'Atrás', - 'bad_data' => 'No se ha encontrado nada. ¿Quizás datos incorrectos?', - 'bulkaudit' => 'Auditoría Masiva', + 'bad_data' => 'No se ha encontrado nada. ¿Tal vez datos erróneos?', + 'bulkaudit' => 'Auditoría masiva', 'bulkaudit_status' => 'Estado de la auditoría', 'bulk_checkout' => 'Asignación masiva', 'bulk_edit' => 'Edición masiva', - 'bulk_delete' => 'Eliminar en masa', - 'bulk_actions' => 'Acciones en masa', + 'bulk_delete' => 'Borrado masivo', + 'bulk_actions' => 'Acciones masivas', 'bulk_checkin_delete' => 'Ingresar elementos / Borrar usuarios', 'byod' => 'BYOD', 'byod_help' => 'Este dispositivo es propiedad del usuario', - 'bystatus' => 'por Estado', + 'bystatus' => 'por estado', 'cancel' => 'Cancelar', 'categories' => 'Categorías', 'category' => 'Categoría', 'change' => 'Entrada/Salida', 'changeemail' => 'Cambiar dirección de correo electrónico', - 'changepassword' => 'Cambiar Contraseña', + 'changepassword' => 'Cambiar contraseña', 'checkin' => 'Ingresar', 'checkin_from' => 'Ingreso proveniente de', 'checkout' => 'Asignar', @@ -80,12 +80,12 @@ 'could_not_restore' => 'Error al restaurar :item_type: :error', 'not_deleted' => 'El tipo :item_type no se ha borrado y, por lo tanto, no se puede restaurar', 'create' => 'Crear nuevo', - 'created' => 'Elemento Creado', + 'created' => 'Artículo creado', 'created_asset' => 'activo creado', - 'created_at' => 'Creado el', + 'created_at' => 'Fecha de creación', 'created_by' => 'Creado por', 'record_created' => 'Registro Creado', - 'updated_at' => 'Actualizado El', + 'updated_at' => 'Actualizado el', 'currency' => '$', // this is deprecated 'current' => 'Actual', 'current_password' => 'Contraseña actual', @@ -93,7 +93,7 @@ 'custom_report' => 'Informe personalizado de activos', 'dashboard' => 'Tablero', 'days' => 'días', - 'days_to_next_audit' => 'Días para la Próxima Auditoría', + 'days_to_next_audit' => 'Días hasta la siguiente auditoría', 'date' => 'Fecha', 'debug_warning' => '¡Advertencia!', 'debug_warning_text' => 'Esta aplicación se está ejecutando en modo producción con depuración habilitada. Esto puede exponer datos sensibles si su aplicación es accedida desde el mundo exterior. Deshabilite el modo de depuración configurando el valor APP_DEBUG en su archivo .env a false.', @@ -114,10 +114,10 @@ 'download_all' => 'Descargar todo', 'editprofile' => 'Editar perfil', 'eol' => 'Fin de soporte (EOL)', - 'email_domain' => 'Dominio de Correo Electrónico', + 'email_domain' => 'Dominio de correo electrónico', 'email_format' => 'Formato de correo electrónico', 'employee_number' => 'Número de empleado', - 'email_domain_help' => 'Este se utiliza para generar direcciones de correo al importar', + 'email_domain_help' => 'Se utiliza para generar direcciones de correo electrónico al importar', 'error' => 'Error', 'exclude_archived' => 'Excluir activos archivados', 'exclude_deleted' => 'Excluir activos eliminados', @@ -129,8 +129,8 @@ 'firstintial_dot_lastname_format' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', 'firstname_lastname_display' => 'Nombre y apellido (Jane Smith)', 'lastname_firstname_display' => 'Apellido y nombre (Smith Jane)', - 'name_display_format' => 'Formato para mostrar nombres', - 'first' => 'Primer', + 'name_display_format' => 'Formato para mostrar el nombre', + 'first' => 'Primero', 'firstnamelastname' => 'Nombre y apellido (janesmith@example.com)', 'lastname_firstinitial' => 'Apellido e inicial del nombre (smith_j@ejemplo.com)', 'firstinitial.lastname' => 'Inicial del nombre y apellido (j.smith@ejemplo.com)', @@ -143,12 +143,12 @@ 'file_type' => 'Tipo de archivo', 'filesize' => 'Tamaño del archivo', 'file_uploads' => 'Carga de Archivos', - 'file_upload' => 'Subir archivo', + 'file_upload' => 'Cargar archivo', 'generate' => 'Generar', 'generate_labels' => 'Generar etiquetas', - 'github_markdown' => 'Este campo acepta el formateo estilo GitHub.', + 'github_markdown' => 'Este campo acepta markdown estilo Github.', 'groups' => 'Grupos', - 'gravatar_email' => 'Dirección de Correo Gravatar', + 'gravatar_email' => 'Dirección de correo electrónico de Gravatar', 'gravatar_url' => 'Cambie su avatar en Gravatar.com.', 'history' => 'Historial', 'history_for' => 'Historial para', @@ -160,13 +160,13 @@ 'filetypes_accepted_help' => 'El tipo de archivo aceptado es :types. El tamaño máximo permitido es :size.|Los tipos de archivo aceptados son :types. El tamaño máximo permitido para cargar es :size.', 'filetypes_size_help' => 'El tamaño máximo permitido para cargar es :size.', 'image_filetypes_help' => 'Los tipos de archivo aceptados son jpg, webp, png, gif, svg y avif. El tamaño máximo permitido es :size.', - 'unaccepted_image_type' => 'Este archivo de imagen no fue legible. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo mimetype de este archivo es: :mimetype.', + 'unaccepted_image_type' => 'No se pudo leer este archivo de imagen. Los tipos de archivo aceptados son jpg, webp, png, gif y svg. El tipo MIME de este archivo es: :mimetype.', 'import' => 'Importar', 'import_this_file' => 'Asociar campos y procesar este archivo', 'importing' => 'Importar datos', 'importing_help' => 'Puede importar activos, accesorios, licencias, componentes, consumibles y usuarios a través del archivo CSV.

El CSV debe estar delimitado por comas y formateado con encabezados que coincidan con los de los archivos CSV de muestra en la documentación.', 'import-history' => 'Importar historial', - 'asset_maintenance' => 'Mantenimiento de Activos', + 'asset_maintenance' => 'Mantenimiento de activos', 'asset_maintenance_report' => 'Informe mantenimiento de activos', 'asset_maintenances' => 'Mantenimiento de activos', 'item' => 'Elemento', @@ -175,18 +175,18 @@ 'import_type' => 'Tipo de importación CSV', 'insufficient_permissions' => '¡Permisos insuficientes!', 'kits' => 'Kits predefinidos', - 'language' => 'Lenguaje', + 'language' => 'Idioma', 'last' => 'Último', - 'last_login' => 'Último Inicio de Sesión', + 'last_login' => 'Último inicio de sesión', 'last_name' => 'Apellido', 'license' => 'Licencia', 'license_report' => 'Informe de licencias', 'licenses_available' => 'Licencias disponibles', 'licenses' => 'Licencias', 'list_all' => 'Mostrar todos', - 'loading' => 'Cargando... espere por favor...', - 'lock_passwords' => 'Este valor de campo no se guardará en una instalación de demostración.', - 'feature_disabled' => 'Esta característica ha sido deshabilitada para la instalación demo.', + 'loading' => 'Cargando... por favor espere...', + 'lock_passwords' => 'El valor de este campo no se guardará en una instalación de demostración.', + 'feature_disabled' => 'Esta característica se ha desactivado para la instalación de demostración.', 'location' => 'Ubicación', 'location_plural' => 'Ubicación|Ubicaciones', 'locations' => 'Ubicaciones', @@ -197,12 +197,12 @@ 'manage_api_keys' => 'Administrar las claves del API', 'manufacturer' => 'Fabricante', 'manufacturers' => 'Fabricantes', - 'markdown' => 'Este campo permite formateo estilo Github.', + 'markdown' => 'Este campo permite markdown estilo Github.', 'min_amt' => 'Cantidad mínima', 'min_amt_help' => 'Número mínimo de elementos que deben estar disponibles antes de que se active una alerta. Deje la cantidad mínima en blanco si no desea recibir alertas de inventario bajo.', - 'model_no' => 'Modelo nú.', + 'model_no' => 'Modelo No.', 'months' => 'meses', - 'moreinfo' => 'Más Información', + 'moreinfo' => 'Más información', 'name' => 'Nombre', 'new_password' => 'Nueva contraseña', 'next' => 'Siguiente', @@ -213,16 +213,16 @@ 'last_audit' => 'Última auditoría', 'new' => '¡nuevo!', 'no_depreciation' => 'Sin Depreciación', - 'no_results' => 'Sin Resultados.', + 'no_results' => 'No hay resultados.', 'no' => 'No', 'notes' => 'Notas', 'order_number' => 'Número de orden', - 'only_deleted' => 'Sólo activos eliminados', + 'only_deleted' => 'Solo activos eliminados', 'page_menu' => 'Mostrando elementos de _MENU_', - 'pagination_info' => 'Mostrando _START_ de _END_ de elementos _TOTAL_', + 'pagination_info' => 'Mostrando _START_ a _END_ de _TOTAL_ elementos', 'pending' => 'Pendientes', - 'people' => 'Usuarios', - 'per_page' => 'Resultados Por Página', + 'people' => 'Personas', + 'per_page' => 'Resultados por página', 'previous' => 'Anterior', 'processing' => 'Procesando', 'profile' => 'Perfil', @@ -230,13 +230,13 @@ 'purchase_date' => 'Fecha de compra', 'qty' => 'Cantidad', 'quantity' => 'Cantidad', - 'quantity_minimum' => 'Tiene :count artículos por debajo o casi por debajo de los niveles mínimos de cantidad', + 'quantity_minimum' => 'Tiene un artículo por debajo o casi por debajo de los niveles de cantidad mínima|Tiene :count artículos por debajo o casi por debajo de los niveles de cantidad mínima', 'quickscan_checkin' => 'Ingreso rápido con escaneo', 'quickscan_checkin_status' => 'Resultado del ingreso', 'ready_to_deploy' => 'Listo para asignar', 'recent_activity' => 'Actividad Reciente', 'remaining' => 'Restante', - 'remove_company' => 'Eliminar asociación de la compañía', + 'remove_company' => 'Eliminar la asociación de la compañía', 'reports' => 'Reportes', 'restored' => 'restaurado', 'restore' => 'Restaurar', @@ -276,7 +276,7 @@ 'skin' => 'Apariencia', 'webhook_msg_note' => 'Una notificación se enviará a través de webhook', 'webhook_test_msg' => '¡Hola! ¡Parece que la integración de :app con Snipe-IT funciona!', - 'some_features_disabled' => 'MODO DEMO: Algunas funciones están desactivadas para esta instalación.', + 'some_features_disabled' => 'MODO DEMOSTRACIÓN: Algunas características están desactivadas para esta instalación.', 'site_name' => 'Nombre del Sitio', 'state' => 'Estado', 'status_labels' => 'Etiquetas de estado', @@ -291,11 +291,11 @@ 'delete_what' => 'Eliminar :item', 'submit' => 'Enviar', 'target' => 'Destino', - 'time_and_date_display' => 'Visualización de Hora y Fecha', + 'time_and_date_display' => 'Visualización de fecha y hora', 'total_assets' => 'activos', 'total_licenses' => 'licencias totales', 'total_accessories' => 'accesorios totales', - 'total_consumables' => 'total de consumibles', + 'total_consumables' => 'consumibles totales', 'type' => 'Tipo', 'undeployable' => 'No utilizable', 'unknown_admin' => 'Administrador desconocido', @@ -311,7 +311,7 @@ 'unassigned' => 'Sin asignar', 'unaccepted_asset_report' => 'Activos no aceptados', 'users' => 'Usuarios', - 'viewall' => 'Ver todo', + 'viewall' => 'Ver todos', 'viewassets' => 'Ver elementos asignados', 'viewassetsfor' => 'Ver activos para :name', 'website' => 'Sitio Web', @@ -319,14 +319,14 @@ 'years' => 'años', 'yes' => 'Si', 'zip' => 'Código postal', - 'noimage' => 'No se subió la imagen o no fue encontrada.', + 'noimage' => 'No se cargó la imagen o no fue encontrada.', 'file_does_not_exist' => 'El archivo solicitado no existe en el servidor.', 'file_upload_success' => '¡Archivo cargado exitosamente!', 'no_files_uploaded' => '¡Archivo cargado exitosamente!', 'token_expired' => 'Su sesión ha caducado. Por favor, inténtelo de nuevo.', 'login_enabled' => 'Inicio de sesión activado', 'audit_due' => 'Próximas auditorías', - 'audit_due_days' => 'Activos pendientes para auditoría dentro de :days día|Activos pendientes para auditoría dentro de :days días', + 'audit_due_days' => 'Activos pendientes de auditoría dentro de :days día|Activos pendientes de auditoría dentro de :days días', 'checkin_due' => 'Próximos a ingresar', 'checkin_overdue' => 'Devolución atrasada', 'checkin_due_days' => 'Activos próximos a ingresar dentro de :days día|Activos próximos a ingresar dentro de :days días', @@ -357,16 +357,16 @@ 'checked_out' => 'Asignado', 'checked_out_to' => 'Asignado a', 'fields' => 'Campos', - 'last_checkout' => 'Último pedido', + 'last_checkout' => 'Última asignación', 'due_to_checkin' => 'Los siguientes :count elementos están pendientes por ingresar pronto:', 'expected_checkin' => 'Fecha esperada de devolución', 'reminder_checked_out_items' => 'Este es un recordatorio de los elementos que se te han comprobado actualmente. Si usted siente que esta lista es incorrecta (falta algo o algo que usted cree que nunca ha recibido), por favor envíe un correo electrónico a :reply_to_name a :reply_to_address.', 'changed' => 'Cambiado', 'to' => 'A', - 'report_fields_info' => '

Elija los campos que desa incluir en su informe personalizado, y haga click en Generar. El archivo (custom-asset-report-YYYY-mm-dd,csv) se descargará automáticamente y puede abrirlo en Excel.

-

Si desea exportar solo ciertos activos, use las siguientes opciones para afinar los resultados.

', + 'report_fields_info' => '

Seleccione los campos que desea incluir en su informe personalizado y haga clic en Generar. El archivo (custom-asset-report-YYYY-mm-dd.csv) se descargará automáticamente y podrá abrirlo en Excel.

+

Si desea exportar sólo ciertos activos, utilice las siguientes opciones para afinar sus resultados.

', 'range' => 'Rango', - 'bom_remark' => 'Añadir un BOM (signo de orden de byte) a este CSV', + 'bom_remark' => 'Añadir un BOM (marca de orden de bytes) a este CSV', 'improvements' => 'Mejoras', 'information' => 'Información', 'permissions' => 'Permisos', @@ -376,9 +376,9 @@ 'ldap_user_sync' => 'Sincronización de usuario LDAP', 'synchronize' => 'Synchronize', 'sync_results' => 'Resultados de sincronización', - 'license_serial' => 'Clave de Serial/Producto', - 'invalid_category' => 'Categoría no válida o ausente', - 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', + 'license_serial' => 'Número de serie/clave de producto', + 'invalid_category' => 'Categoría no válida o inexistente', + 'invalid_item_category_single' => 'Falta o no es válida una categoría de tipo :type. Por favor, actualice la categoría de tipo :type para incluir una categoría válida antes de asignar.', 'dashboard_info' => 'Este es su panel de control. Hay muchos similares, pero este es suyo.', '60_percent_warning' => '60% completo (advertencia)', 'dashboard_empty' => 'Parece que aún no ha añadido nada, así que no tenemos nada impresionante que mostrar. ¡Comience añadiendo algunos activos, accesorios, consumibles o licencias ahora!', @@ -386,15 +386,15 @@ 'new_license' => 'Nueva licencia', 'new_accessory' => 'Nuevo accesorio', 'new_consumable' => 'Nuevo consumible', - 'collapse' => 'Colapso', + 'collapse' => 'Contraer', 'assigned' => 'Asignado', 'asset_count' => 'Cantidad de activos', - 'accessories_count' => 'Número de accesorios', - 'consumables_count' => 'Número de consumibles', - 'components_count' => 'Número de componentes', - 'licenses_count' => 'Número de licencias', + 'accessories_count' => 'Cantidad de accesorios', + 'consumables_count' => 'Cantidad de consumibles', + 'components_count' => 'Cantidad de componentes', + 'licenses_count' => 'Cantidad de licencias', 'notification_error' => 'Error', - 'notification_error_hint' => 'Por favor compruebe si hay errores en el siguiente formulario', + 'notification_error_hint' => 'Por favor revise si hay errores en el siguiente formulario', 'notification_bulk_error_hint' => 'Los siguientes campos tenían errores de validación y no fueron editados:', 'notification_success' => 'Éxito', 'notification_warning' => 'Advertencia', @@ -402,17 +402,17 @@ 'asset_information' => 'Información del activo', 'model_name' => 'Nombre del modelo', 'asset_name' => 'Nombre del activo', - 'consumable_information' => 'Información Consumible:', + 'consumable_information' => 'Información del consumible:', 'consumable_name' => 'Nombre del Consumible:', 'accessory_information' => 'Información del accesorio:', - 'accessory_name' => 'Nombre del Accesorio:', + 'accessory_name' => 'Nombre del accesorio:', 'clone_item' => 'Clonar objeto', 'checkout_tooltip' => 'Asignar este elemento', - 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para resignar, borrar, etc.', + 'checkin_tooltip' => 'Ingrese este elemento para que esté disponible para reasignar, borrar, etc.', 'checkout_user_tooltip' => 'Asignar este elemento a un usuario', 'checkin_to_diff_location' => 'Puede elegir ingresar este activo a una ubicación distinta de la predeterminada :default_location, si es que se ha definido una', - 'maintenance_mode' => 'El servicio no está disponible temporalmente para actualizaciones del sistema. Por favor, vuelva más tarde.', - 'maintenance_mode_title' => 'Sistema temporalmente no disponible', + 'maintenance_mode' => 'El servicio no está disponible temporalmente debido a actualizaciones del sistema. Por favor, verifique más tarde.', + 'maintenance_mode_title' => 'El sistema no está disponible temporalmente', 'ldap_import' => 'La contraseña del usuario no debe ser administrada por LDAP. (Esto le permite enviar solicitudes de contraseña olvidadas.)', 'purge_not_allowed' => 'La purga de datos eliminados ha sido deshabilitada en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', 'backup_delete_not_allowed' => 'La eliminación de copias de seguridad se ha desactivado en el archivo .env. Contacte con el soporte técnico o con el administrador de su sistema.', @@ -422,7 +422,7 @@ 'bulk_checkin_delete_success' => 'Los usuarios seleccionados han sido eliminados y sus activos han sido ingresados.', 'bulk_checkin_success' => 'Los elementos para los usuarios seleccionados han sido ingresados.', 'set_to_null' => 'Eliminar los valores del elemento seleccionado|Eliminar los valores de los :selection_count elementos seleccionados ', - 'set_users_field_to_null' => 'Eliminar :field values for this user|Eliminar :field values for all :user_count users ', + 'set_users_field_to_null' => 'Eliminar valores de :field para este usuario|Eliminar valores de :field para todos los :user_count usuarios ', 'na_no_purchase_date' => 'N/A - No se proporcionó fecha de compra', 'assets_by_status' => 'Activos por estado', 'assets_by_status_type' => 'Activos por tipo de estado', @@ -430,15 +430,16 @@ 'hello_name' => '¡Hola, :name!', 'unaccepted_profile_warning' => 'Tiene un elemento que requiere aceptación. Haga clic aquí para aceptarlo o rechazarlo | Tiene :count elementos que requieren aceptación. Haga clic aquí para aceptarlos o rechazarlos', 'start_date' => 'Fecha de inicio', - 'end_date' => 'Fecha de fin', + 'end_date' => 'Fecha final', 'alt_uploaded_image_thumbnail' => 'Miniatura cargada', 'placeholder_kit' => 'Seleccione un kit', 'file_not_found' => 'Archivo no encontrado', + 'log_record_not_found' => 'No se ha encontrado ninguna entrada en el registro de eventos.', 'preview_not_available' => '(sin vista previa)', - 'setup' => 'Configurar', - 'pre_flight' => 'Pre-vuelo', + 'setup' => 'Configuración', + 'pre_flight' => 'Preparación', 'skip_to_main_content' => 'Ir al contenido principal', - 'toggle_navigation' => 'Cambiar navegación', + 'toggle_navigation' => 'Alternar navegación', 'alerts' => 'Alertas', 'tasks_view_all' => 'Ver todas las tareas', 'true' => 'Verdadero', @@ -446,20 +447,20 @@ 'integration_option' => 'Opción de integración', 'log_does_not_exist' => 'No existe ningún registro de eventos que coincida.', 'merge_users' => 'Combinar usuarios', - 'merge_information' => 'Esto fusionará a los usuarios :count en un solo usuario. Seleccione el usuario en el que desea fusionar a los demás a continuación, y los activos asociados, licencias, etc se moverá al usuario seleccionado y los otros usuarios serán marcados como eliminados.', - 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite fusionar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', + 'merge_information' => 'Esto combinará los :count usuarios en un único usuario. Seleccione a continuación el usuario en el que desea combinar los demás, y los activos, licencias, etc. asociados se moverán al usuario seleccionado y los demás usuarios se marcarán como eliminados.', + 'warning_merge_information' => 'Esta acción NO PUEDE deshacerse y sólo debe ser usada cuando necesite combinar usuarios debido a una mala importación o sincronización. Asegúrese de ejecutar una copia de seguridad primero.', 'no_users_selected' => 'Ningún usuario seleccionado', 'not_enough_users_selected' => 'Al menos :count usuarios deben ser seleccionados', - 'merge_success' => '!:count usuarios fusionados con éxito en :into_username!', - 'merged' => 'fusionado', - 'merged_log_this_user_into' => 'Se fusionó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', - 'merged_log_this_user_from' => 'Fusionado ID de usuario :from_id (:from_username) con este usuario (ID :to_id - :to_username)', + 'merge_success' => '!:count usuarios combinados con éxito en :into_username!', + 'merged' => 'combinados', + 'merged_log_this_user_into' => 'Se combinó este usuario (ID :to_id - :to_username) en ID de usuario :from_id (:from_username) ', + 'merged_log_this_user_from' => 'Se combinó usuario ID :from_id (:from_username) en este usuario (ID :to_id - :to_username)', 'clear_and_save' => 'Limpiar y guardar', 'update_existing_values' => '¿Actualizar valores existentes?', 'auto_incrementing_asset_tags_disabled_so_tags_required' => 'La generación autoincrementable de las placas de activos está desactivada, por lo que todas las filas deben tener la columna "Asset Tag" con información.', - 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan informacióin en la columna "Asset Tag" se actualizarán con la información proporcionada.', + 'auto_incrementing_asset_tags_enabled_so_now_assets_will_be_created' => 'Nota: La generación autoincrementable de las placas de activos está activada, por lo que se crearán activos para las filas sin información en la columna "Asset Tag". Las filas que sí tengan información en la columna "Asset Tag" se actualizarán con la información proporcionada.', 'send_welcome_email_to_users' => ' ¿Enviar correo de bienvenida para nuevos usuarios?', - 'send_email' => 'Enviar Email', + 'send_email' => 'Enviar correo electrónico', 'call' => 'Número de llamada', 'back_before_importing' => '¿Copia de seguridad antes de importar?', 'csv_header_field' => 'Campo de cabecera CSV', @@ -470,9 +471,9 @@ 'errors_importing' => 'Se han producido algunos errores al importar: ', 'warning' => 'ADVERTENCIA: :warning', 'success_redirecting' => '"Éxito... Redirigiendo.', - 'cancel_request' => 'Cancelar esta solicitud de elemento', + 'cancel_request' => 'Cancelar solicitud para este elemento', 'setup_successful_migrations' => 'Se han creado las tablas de la base de datos', - 'setup_migration_output' => 'Salida de Migración:', + 'setup_migration_output' => 'Salida de migración:', 'setup_migration_create_user' => 'Siguiente: Crear usuario', 'importer_generic_error' => 'La importación del archivo se ha completado, pero recibimos un error. Esto suele deberse a la limitación de la API de terceros desde un webhook de notificación (como Slack) y no habría interferido con la importación en sí, pero debería confirmarlo.', 'confirm' => 'Confirmar', @@ -522,7 +523,7 @@ 'rtd_location_help' => 'Esta es la ubicación del activo cuando no está asignado', 'item_not_found' => ':item_type ID :id no existe o ha sido eliminado', 'action_permission_denied' => 'No tiene permiso para :action :item_type ID :id', - 'action_permission_generic' => 'No tiene permiso para :action this :item_type', + 'action_permission_generic' => 'No tiene permiso para :action este :item_type', 'edit' => 'editar', 'action_source' => 'Origen de la acción', 'or' => 'o', @@ -530,12 +531,12 @@ 'edit_fieldset' => 'Editar campos y opciones de grupos de campos', 'permission_denied_superuser_demo' => 'Permiso denegado. No puede actualizar la información de usuario para superadministradores en la demo.', 'pwd_reset_not_sent' => 'El usuario no está activado, está sincronizado con LDAP o no tiene una dirección de correo electrónico', - 'error_sending_email' => 'Error al enviar email', + 'error_sending_email' => 'Error al enviar correo electrónico', 'sad_panda' => 'No está autorizado a realizar esta acción. Puede regresar al tablero, o ponerse en contacto con su administrador.', 'bulk' => [ 'delete' => [ - 'header' => 'Eliminar en masa :object_type', + 'header' => 'Eliminar masivamente :object_type', 'warn' => 'Está a punto de eliminar un :object_type|Está a punto de eliminar :count :object_type', 'success' => 'Se ha eliminado correctamente :count :object_type', 'error' => 'No se pudo eliminar :object_type', @@ -547,10 +548,10 @@ 'countable' => [ 'accessories' => ':count Accesorio|:count Accesorios', - 'assets' => ':count Activos|:count Activos', - 'licenses' => ':count Licencia|:count Licencias', + 'assets' => ':count activo|:count activos', + 'licenses' => ':count licencia|:count licencias', 'license_seats' => ':count licencia|:count licencias', - 'consumables' => ':count Consumible|:count Consumibles', + 'consumables' => ':count consumible|:count consumibles', 'components' => ':count component|:count componentes', ], 'more_info' => 'Más información', diff --git a/resources/lang/es-VE/help.php b/resources/lang/es-VE/help.php index 7cbc6acc7c60..13fb579b4929 100644 --- a/resources/lang/es-VE/help.php +++ b/resources/lang/es-VE/help.php @@ -21,11 +21,11 @@ 'categories' => 'Las categorías le ayudan a organizar sus elementos. Unos ejemplos de categorías podrían ser: "PC Escritorios", "Portátiles", "Móviles", "Tabletas", etc.', - 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga numero de serie (o no importe realizarle el seguimiento en forma unica). Por ejemplo, mouse o teclados.', + 'accessories' => 'Los accesorios son cualquier cosa que se le asigne a los usuarios pero que no tenga número de serie (o no importe realizarle el seguimiento en forma única). Por ejemplo, ratones o teclados.', - 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc si la opción "Soporte completo a múltiples compañías" está habilitado en "Configuración de administrador".', + 'companies' => 'Las compañías se pueden utilizar como un simple campo identificador, o se pueden utilizar para limitar la visibilidad de los activos, usuarios, etc. si la opción "Soporte completo a múltiples compañías" está habilitada en "Configuración de administración".', - 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo HDD, RAM, etc.', + 'components' => 'Los componentes son elementos que son parte de un activo, por ejemplo, el disco duro, RAM, etc.', 'consumables' => 'Los consumibles son todo aquello que se compra y que se agota con el tiempo. Por ejemplo, tinta de impresora o papel de fotocopiadora.', diff --git a/resources/lang/es-VE/localizations.php b/resources/lang/es-VE/localizations.php index 31f9a4946b4e..9fef9f01a98d 100644 --- a/resources/lang/es-VE/localizations.php +++ b/resources/lang/es-VE/localizations.php @@ -46,10 +46,10 @@ 'fa-IR'=> 'Persa', 'pl-PL'=> 'Polaco', 'pt-PT'=> 'Portugués', - 'pt-BR'=> 'Brasileño', + 'pt-BR'=> 'Portugués, Brasil', 'ro-RO'=> 'Rumano', 'ru-RU'=> 'Ruso', - 'sr-CS' => 'Serbian (Latin)', + 'sr-CS' => 'Serbio (Latino)', 'sk-SK'=> 'Eslovaco', 'sl-SI'=> 'Esloveno', 'so-SO'=> 'Somali', @@ -73,7 +73,7 @@ 'countries' => [ 'AC'=>'Isla de Ascensión', 'AD'=>'Andorra', - 'AE'=>'Emiraos árabes Unidos', + 'AE'=>'Emiratos Árabes Unidos', 'AF'=>'Afganistán', 'AG'=>'Antigua y Barbuda', 'AI'=>'Anguilla', @@ -87,8 +87,8 @@ 'AT'=>'Austria', 'AU'=>'Australia', 'AW'=>'Aruba', - 'AX'=>'Superficie de €€', - 'AZ'=>'Martín', + 'AX'=>'Islas Aland', + 'AZ'=>'Azerbaiyán', 'BA'=>'Bosnia y Herzegovina', 'BB'=>'Barbados', 'BE'=>'Bélgica', diff --git a/resources/lang/es-VE/mail.php b/resources/lang/es-VE/mail.php index 750e73c95d87..bedb7cf7dd7a 100644 --- a/resources/lang/es-VE/mail.php +++ b/resources/lang/es-VE/mail.php @@ -18,9 +18,9 @@ 'Expected_Checkin_Notification' => 'Recordatorio: :name se acerca la fecha de devolución', 'Expected_Checkin_Report' => 'Informe de próximas devoluciones de activos', 'Expiring_Assets_Report' => 'Informe de activos con garantía próxima a vencer.', - 'Expiring_Licenses_Report' => 'Reportes de Licencias que Vencen.', - 'Item_Request_Canceled' => 'Solicitud de Artículo Cancelada', - 'Item_Requested' => 'Artículo Solicitado', + 'Expiring_Licenses_Report' => 'Informe de licencias próximas a vencer.', + 'Item_Request_Canceled' => 'Solicitud de artículo cancelada', + 'Item_Requested' => 'Artículo solicitado', 'License_Checkin_Notification' => 'Licencia devuelta', 'License_Checkout_Notification' => 'Licencia asignada', 'Low_Inventory_Report' => 'Informe sobre inventario bajo', @@ -28,16 +28,16 @@ 'a_user_requested' => 'Un usuario ha solicitado un elemento en la página web', 'acceptance_asset_accepted' => 'Un usuario ha aceptado un elemento', 'acceptance_asset_declined' => 'Un usuario ha rechazado un elemento', - 'accessory_name' => 'Nombre de Accesorio', + 'accessory_name' => 'Nombre de accesorio', 'additional_notes' => 'Notas adicionales', - 'admin_has_created' => 'Un administrador ha creado una cuenta para ti en el sitio web de :web.', + 'admin_has_created' => 'Un administrador ha creado una cuenta para usted en el sitio :web.', 'asset' => 'Activo', 'asset_name' => 'Nombre del activo', 'asset_requested' => 'Activo solicitado', 'asset_tag' => 'Placa del activo', 'assets_warrantee_alert' => 'Hay :count activo con una garantía que expira en los próximos :threshold days.|Hay :count activos con garantías que expiran en los siguientes :threshold days.', - 'assigned_to' => 'Asignado A', - 'best_regards' => 'Atentamente,', + 'assigned_to' => 'Asignado a', + 'best_regards' => 'Cordialmente,', 'canceled' => 'Cancelado', 'checkin_date' => 'Fecha de ingreso', 'checkout_date' => 'Fecha de asignación', @@ -58,8 +58,8 @@ 'item' => 'Elemento', 'item_checked_reminder' => 'Este es un recordatorio de que actualmente tiene :count elemento(s) asignado(s) que no ha aceptado o rechazado. Haga clic en el siguiente enlace para confirmar su decisión.', 'license_expiring_alert' => 'Hay :count licencia que expira en los próximos :threshold días. | Hay :count licencias que expiran en los próximos :threshold días.', - 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar contraseña de :web :', - 'login' => 'Iniciar Sesión:', + 'link_to_update_password' => 'Por favor, haga clic en el siguiente enlace para actualizar su contraseña de :web :', + 'login' => 'Iniciar sesión:', 'login_first_admin' => 'Inicie sesión en su nueva instalación de Snipe-IT usando las credenciales:', 'low_inventory_alert' => 'Hay :count elemento que está por debajo del inventario mínimo o que pronto lo estará.|Hay :count elementos que están por debajo del inventario mínimo o que pronto lo estarán.', 'min_QTY' => 'Cantidad mínima', @@ -82,9 +82,9 @@ 'test_email' => 'Email de prueba de Snipe-IT', 'test_mail_text' => 'Esto es una prueba desde el sistema de gestión de activos Snipe-IT. Si recibió este mensaje, el correo está funcionando :)', 'the_following_item' => 'El siguiente artículo ha sido devuelto: ', - 'to_reset' => 'Para restaurar tu contraseña de :web, diligencie este formulario:', + 'to_reset' => 'Para restaurar su contraseña de :web, diligencie este formulario:', 'type' => 'Tipo', - 'upcoming-audits' => 'Hay :count para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', + 'upcoming-audits' => 'Hay :count activo para ser auditado antes de :threshold días.|Hay :count activos para ser auditados antes de :threshold días.', 'user' => 'Usuario', 'username' => 'Nombre de usuario', 'unaccepted_asset_reminder' => 'Tiene activos pendientes por aceptar.', diff --git a/resources/lang/es-VE/validation.php b/resources/lang/es-VE/validation.php index d377eed63d0a..5fb950089a9d 100644 --- a/resources/lang/es-VE/validation.php +++ b/resources/lang/es-VE/validation.php @@ -51,8 +51,8 @@ 'doesnt_start_with' => 'El campo :attribute no debe iniciar con uno de los siguientes :values.', 'email' => 'El campo :attribute debe ser una dirección de correo válida.', 'ends_with' => 'El campo :attribute debe finalizar con uno de los siguientes :values.', - 'enum' => 'El valor seleccionado para :attribute no es correcto.', - 'exists' => 'El :attribute seleccionado es inválido.', + 'enum' => 'El :attribute seleccionado no es correcto.', + 'exists' => 'El :attribute seleccionado no es correcto.', 'extensions' => 'El campo :attribute debe tener una de las siguientes extensiones :values.', 'file' => 'El campo :attribute debe ser un archivo.', 'filled' => 'El campo :attribute debe tener un valor.', @@ -143,7 +143,7 @@ 'required_if_accepted' => 'El campo :attribute es obligatorio cuando se acepta :other.', 'required_if_declined' => 'El campo :attribute es requerido cuando :other es rechazado.', 'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.', - 'required_with' => 'El :attribute es obligatrio cuando :values está presente.', + 'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.', 'required_with_all' => 'El campo :attribute es requerido cuando :values están presentes.', 'required_without' => 'El :attribute es obligatrio cuando :values está presente.', 'required_without_all' => 'El campo :attribute es obligatorio cuando no está presente ninguno de los :values.', @@ -156,8 +156,8 @@ ], 'starts_with' => 'El campo :attribute debe iniciar con uno de los siguientes: :values.', 'string' => 'Este :attribute debe ser una cadena.', - 'two_column_unique_undeleted' => ':attribute debe ser único a través de :table1 y :table2. ', - 'unique_undeleted' => 'El :attribute debe ser único.', + 'two_column_unique_undeleted' => ':attribute debe ser único entre la :table1 y :table2. ', + 'unique_undeleted' => ':attribute debe ser único.', 'non_circular' => ':attribute no debe crear una referencia circular.', 'not_array' => ':attribute no puede ser una matriz.', 'disallow_same_pwd_as_user_fields' => 'La contraseña no puede ser la misma que el nombre de usuario.', @@ -166,13 +166,14 @@ 'case_diff' => 'La contraseña debe usar mayúsculas y minúsculas.', 'symbols' => 'La contraseña debe contener símbolos.', 'timezone' => 'El campo :attribute debe ser una zona horaria válida.', - 'unique' => 'El :attribute ya está en uso.', - 'uploaded' => 'El :attribute fallo al cargar.', + 'unique' => ':attribute ya está en uso.', + 'uploaded' => ':attribute no se pudo cargar.', 'uppercase' => 'El campo :attribute debe estar en mayúsculas.', 'url' => 'El campo :attribute debe ser una URL válida.', 'ulid' => 'El campo :attribute debe ser un ULID válido.', 'uuid' => 'El campo :attribute debe ser un UUID válido.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -185,7 +186,7 @@ */ 'custom' => [ - 'alpha_space' => 'El campo :attribute contiene un caracter que no está permitido.', + 'alpha_space' => 'El campo :attribute contiene un carácter que no está permitido.', 'email_array' => 'Una o más direcciones de correo electrónico no son válidas.', 'hashed_pass' => 'Su contraseña actual es incorrecta', 'dumbpwd' => 'Esa contraseña es muy común.', @@ -194,18 +195,25 @@ 'custom_field_not_found_on_model' => 'Este campo parece existir, pero no está disponible en este conjunto de campos para el modelo de activo.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. - 'purchase_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAA-MM-DD hh:mm:ss', - 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', - 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAA-MM-DD', + 'purchase_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'last_audit_date.date_format' => 'El campo :attribute debe ser una fecha válida en formato AAAA-MM-DD hh:mm:ss', + 'expiration_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'termination_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'expected_checkin.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'start_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', + 'end_date.date_format' => ':attribute debe ser una fecha válida en formato AAAA-MM-DD', 'checkboxes' => ':attribute contiene opciones no válidas.', 'radio_buttons' => 'El valor de :attribute no es válido.', 'invalid_value_in_field' => 'Valor no válido incluido en este campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mezcla de mayúsculas y minúsculas) no funcionará. Debe utilizar samaccountname (minúsculas) en su lugar.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname probablemente no es un filtro de autenticación válido Probablemente quiera uid= '], + 'ldap_filter' => ['regex' => 'Este valor probablemente no debería ir entre paréntesis.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/et-EE/admin/hardware/message.php b/resources/lang/et-EE/admin/hardware/message.php index cf426d4541fd..ae19d9a660d7 100644 --- a/resources/lang/et-EE/admin/hardware/message.php +++ b/resources/lang/et-EE/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Vahendit ei loodud, palun proovi uuesti. :(', 'success' => 'Vahendi loomine õnnestus. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Sa pead valima vähemalt ühe kirje nimekirjast', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Vara ei olnud märgitud, palun proovi uuesti', 'success' => 'Vara on edukalt kontrollitud', diff --git a/resources/lang/et-EE/admin/settings/general.php b/resources/lang/et-EE/admin/settings/general.php index 98917e3d65dd..65f412e1a6ae 100644 --- a/resources/lang/et-EE/admin/settings/general.php +++ b/resources/lang/et-EE/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/et-EE/general.php b/resources/lang/et-EE/general.php index 5024f212e043..a5a7e1cfbbca 100644 --- a/resources/lang/et-EE/general.php +++ b/resources/lang/et-EE/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Ostu kuupäev', 'qty' => 'Hulk', 'quantity' => 'Hulk', - 'quantity_minimum' => 'Sul on :count üksust alla või peaaegu alla minimaalse koguse taset', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Kiire check-in (Quick scan)', 'quickscan_checkin_status' => 'Tagastamise olek', 'ready_to_deploy' => 'Kasutamine valmis', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/et-EE/validation.php b/resources/lang/et-EE/validation.php index 2ce7a7c158ed..b28bd3f6d0e3 100644 --- a/resources/lang/et-EE/validation.php +++ b/resources/lang/et-EE/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/fa-IR/admin/hardware/message.php b/resources/lang/fa-IR/admin/hardware/message.php index aea6ba70d077..3f608660f8ab 100644 --- a/resources/lang/fa-IR/admin/hardware/message.php +++ b/resources/lang/fa-IR/admin/hardware/message.php @@ -15,6 +15,8 @@ 'error' => 'دارایی ساخته نشده است، لطفا دوباره تلاش کنید.', 'success' => 'دارایی موفقیت ایجاد شده است. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -81,6 +83,11 @@ 'no_assets_selected' => 'شما حداقل باید یک دارایی از لیست انتخاب کنید', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'دارایی در بررسی نیست، لطفا دوباره امتحان کنید', 'success' => 'دارایی ها با موفقیت در بررسی.', diff --git a/resources/lang/fa-IR/admin/settings/general.php b/resources/lang/fa-IR/admin/settings/general.php index a94612bd4742..5c11cbf2bad6 100644 --- a/resources/lang/fa-IR/admin/settings/general.php +++ b/resources/lang/fa-IR/admin/settings/general.php @@ -530,5 +530,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/fa-IR/general.php b/resources/lang/fa-IR/general.php index 67de3ceb215f..e8e48c944a79 100644 --- a/resources/lang/fa-IR/general.php +++ b/resources/lang/fa-IR/general.php @@ -247,8 +247,7 @@ 'purchase_date' => 'تاریخ خرید', 'qty' => 'QTY', 'quantity' => 'مقدار', - 'quantity_minimum' => 'شما باید : موارد را زیر یا تقریباً کمتر از سطح حداقل مقدار بشمارید -', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'اسکن سریع اعلام حضور ', 'quickscan_checkin_status' => 'وضعیت ورود @@ -517,6 +516,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'فایل پیدا نشد', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/fa-IR/validation.php b/resources/lang/fa-IR/validation.php index c0fcdf51f348..ca4e5dcc3932 100644 --- a/resources/lang/fa-IR/validation.php +++ b/resources/lang/fa-IR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/fi-FI/admin/hardware/message.php b/resources/lang/fi-FI/admin/hardware/message.php index 3f7a848bc626..e476c063d412 100644 --- a/resources/lang/fi-FI/admin/hardware/message.php +++ b/resources/lang/fi-FI/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Laitetta ei luotu, yritä uudelleen. :(', 'success' => 'Laite luotiin onnistuneesti. :)', 'success_linked' => 'Laite tunnisteella :tag luotiin onnistuneesti. Klikkaa tästä nähdäksesi.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Valitse ainakin yksi laite listasta', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Laitteen palautus epäonnistui, yritä uudelleen', 'success' => 'Laite palautettu onnistuneesti.', diff --git a/resources/lang/fi-FI/admin/settings/general.php b/resources/lang/fi-FI/admin/settings/general.php index 61f2121baa9f..0e54384b674e 100644 --- a/resources/lang/fi-FI/admin/settings/general.php +++ b/resources/lang/fi-FI/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/fi-FI/general.php b/resources/lang/fi-FI/general.php index 4ab2bf3bf209..43bd380dcb25 100644 --- a/resources/lang/fi-FI/general.php +++ b/resources/lang/fi-FI/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Ostopäivä', 'qty' => 'KPL', 'quantity' => 'Määrä', - 'quantity_minimum' => 'Sinulla on :count kohteita pienimmän määrän alapuolella tai lähes alapuolella', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Nopea Palautus Skannaamalla', 'quickscan_checkin_status' => 'Palautuksen Tila', 'ready_to_deploy' => 'Valmis käyttöönottoon', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Ladattu pikkukuva', 'placeholder_kit' => 'Valitse sarja', 'file_not_found' => 'Tiedostoa ei löytynyt', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ei esikatselua)', 'setup' => 'Alkutoimet', 'pre_flight' => 'Ennen käynnistämistä', diff --git a/resources/lang/fi-FI/validation.php b/resources/lang/fi-FI/validation.php index be67a23f046b..d81a3586c678 100644 --- a/resources/lang/fi-FI/validation.php +++ b/resources/lang/fi-FI/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'Attribuutin on oltava kelvollinen päivämäärä muodossa VVVV-KK-PP', 'last_audit_date.date_format' => 'Kentän :attribute arvon on oltava kelvollinen päivämäärä muodossa VVVV-KK-PP hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute sisältää virheellisiä vaihtoehtoja.', 'radio_buttons' => ':attribute on virheellinen.', 'invalid_value_in_field' => 'Virheellinen arvo sisältyy tähän kenttään', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/fil-PH/admin/hardware/message.php b/resources/lang/fil-PH/admin/hardware/message.php index b7d09781571f..d308600049d8 100644 --- a/resources/lang/fil-PH/admin/hardware/message.php +++ b/resources/lang/fil-PH/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Ang asset ay hindi naisagawa, mangyaring subukang muli. :(', 'success' => 'Ang asset ay matagumpay na naisagawa. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Dapat kang pumili ng kahit isang asset mula sa listahan', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Ang asset ay hindi nai-check in, mangyaring subukang muli', 'success' => 'Ang asset ay matagumpay na nai-check in.', diff --git a/resources/lang/fil-PH/admin/settings/general.php b/resources/lang/fil-PH/admin/settings/general.php index 4b22950e0553..6e6e38d79b51 100644 --- a/resources/lang/fil-PH/admin/settings/general.php +++ b/resources/lang/fil-PH/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/fil-PH/general.php b/resources/lang/fil-PH/general.php index 6777778520c3..d3f585a335af 100644 --- a/resources/lang/fil-PH/general.php +++ b/resources/lang/fil-PH/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Ang Petsa ng Pagbili', 'qty' => 'Ang QTY', 'quantity' => 'Ang Dami', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Handa nang I-deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/fil-PH/validation.php b/resources/lang/fil-PH/validation.php index 6583927601e4..61ae169c7d79 100644 --- a/resources/lang/fil-PH/validation.php +++ b/resources/lang/fil-PH/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/fr-FR/admin/hardware/message.php b/resources/lang/fr-FR/admin/hardware/message.php index fc3e9c62c1fd..5610f8664e67 100644 --- a/resources/lang/fr-FR/admin/hardware/message.php +++ b/resources/lang/fr-FR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Ce bien n\'a pas été créé, veuillez réessayer. :(', 'success' => 'Bien créé correctement. :)', 'success_linked' => 'L\'actif avec le tag :tag a été créé avec succès. Cliquez ici pour voir.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Vous devez sélectionner au moins un élément de la liste', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Ce bien n\'a pas été retourné, veuillez réessayer', 'success' => 'Ce bien a été retourné correctement.', diff --git a/resources/lang/fr-FR/admin/settings/general.php b/resources/lang/fr-FR/admin/settings/general.php index 751b47bb83f9..fd937139a956 100644 --- a/resources/lang/fr-FR/admin/settings/general.php +++ b/resources/lang/fr-FR/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/fr-FR/general.php b/resources/lang/fr-FR/general.php index dfbb738c0543..a98910f5b7ee 100644 --- a/resources/lang/fr-FR/general.php +++ b/resources/lang/fr-FR/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Date d\'achat', 'qty' => 'QTÉ', 'quantity' => 'Quantité', - 'quantity_minimum' => 'Vous avez :count articles en dessous ou presque en dessous des niveaux de quantité minimum', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Retour rapide', 'quickscan_checkin_status' => 'Statut du retour', 'ready_to_deploy' => 'Prêt à être déployé', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Miniature téléchargée', 'placeholder_kit' => 'Sélectionnez un kit', 'file_not_found' => 'Fichier non trouvé', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(aucun aperçu)', 'setup' => 'Configuration', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/fr-FR/validation.php b/resources/lang/fr-FR/validation.php index 1b2bc56d7a23..dad287842c28 100644 --- a/resources/lang/fr-FR/validation.php +++ b/resources/lang/fr-FR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute doit être une date valide au format AAAA-MM-JJ', 'last_audit_date.date_format' => ':attribute doit être une date valide au format AAAA-MM-JJ hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contient des options non valides.', 'radio_buttons' => ':attribute est invalide.', 'invalid_value_in_field' => 'Valeur non valide incluse dans ce champ', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ga-IE/admin/hardware/message.php b/resources/lang/ga-IE/admin/hardware/message.php index 73c6c7d35039..53a36f78f794 100644 --- a/resources/lang/ga-IE/admin/hardware/message.php +++ b/resources/lang/ga-IE/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Níor cruthaíodh sócmhainn, déan iarracht arís. :(', 'success' => 'Cruthaíodh sócmhainn go rathúil. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Níor seiceáladh an tsócmhainn, déan iarracht arís', 'success' => 'Seiceáil seiceáil go rathúil.', diff --git a/resources/lang/ga-IE/admin/settings/general.php b/resources/lang/ga-IE/admin/settings/general.php index 69e8ce72396e..057d9bce4b74 100644 --- a/resources/lang/ga-IE/admin/settings/general.php +++ b/resources/lang/ga-IE/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ga-IE/general.php b/resources/lang/ga-IE/general.php index 880ce854b228..321e914c71b3 100644 --- a/resources/lang/ga-IE/general.php +++ b/resources/lang/ga-IE/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Dáta Ceannacháin', 'qty' => 'QTY', 'quantity' => 'Cainníocht', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Réidh le Imscaradh', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ga-IE/validation.php b/resources/lang/ga-IE/validation.php index cd1a893d1779..560d30ad3811 100644 --- a/resources/lang/ga-IE/validation.php +++ b/resources/lang/ga-IE/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/he-IL/admin/hardware/message.php b/resources/lang/he-IL/admin/hardware/message.php index aebe7aa54c3b..1ca76b81fbd9 100644 --- a/resources/lang/he-IL/admin/hardware/message.php +++ b/resources/lang/he-IL/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'הנכס לא נוצר, נסה שוב. You', 'success' => 'הנכס נוצר בהצלחה. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'עליך לבחור לפחות בנכס אחד מהרשימה', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'הנכס לא נבדק, נסה שוב', 'success' => 'הנכס נבדק בהצלחה.', diff --git a/resources/lang/he-IL/admin/settings/general.php b/resources/lang/he-IL/admin/settings/general.php index 0a93eceedf53..d87bf25988e5 100644 --- a/resources/lang/he-IL/admin/settings/general.php +++ b/resources/lang/he-IL/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/he-IL/general.php b/resources/lang/he-IL/general.php index d09049ebc4f7..0ba00cf9b753 100644 --- a/resources/lang/he-IL/general.php +++ b/resources/lang/he-IL/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'תאריך רכישה', 'qty' => 'QTY', 'quantity' => 'כַּמוּת', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'בדוק סטטוס', 'ready_to_deploy' => 'מוכן לפריסה', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/he-IL/validation.php b/resources/lang/he-IL/validation.php index fce37bdf8dca..f2f9c3ac55a3 100644 --- a/resources/lang/he-IL/validation.php +++ b/resources/lang/he-IL/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/hr-HR/admin/hardware/message.php b/resources/lang/hr-HR/admin/hardware/message.php index 6785edf2a333..67d821aa8df7 100644 --- a/resources/lang/hr-HR/admin/hardware/message.php +++ b/resources/lang/hr-HR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Imovina nije izrađena, pokušajte ponovo. :(', 'success' => 'Imovina je uspješno izrađena. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Morate odabrati barem jednu imovinu s popisa', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Prijava nije provjerena. Pokušajte ponovo', 'success' => 'Asset je uspješno prijavio.', diff --git a/resources/lang/hr-HR/admin/settings/general.php b/resources/lang/hr-HR/admin/settings/general.php index 26dbc643210b..be89112d3291 100644 --- a/resources/lang/hr-HR/admin/settings/general.php +++ b/resources/lang/hr-HR/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/hr-HR/general.php b/resources/lang/hr-HR/general.php index 9ea93c029865..5b1f36721007 100644 --- a/resources/lang/hr-HR/general.php +++ b/resources/lang/hr-HR/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Datum kupnje', 'qty' => 'Kol', 'quantity' => 'Količina', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Spremni za implementaciju', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/hr-HR/validation.php b/resources/lang/hr-HR/validation.php index 2a69831ba985..f1dae1ab0bbc 100644 --- a/resources/lang/hr-HR/validation.php +++ b/resources/lang/hr-HR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/hu-HU/admin/hardware/message.php b/resources/lang/hu-HU/admin/hardware/message.php index 1afc580c8274..ed3dbff684be 100644 --- a/resources/lang/hu-HU/admin/hardware/message.php +++ b/resources/lang/hu-HU/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Az eszköz nem jött létre, próbálkozzon újra. :(', 'success' => 'Az eszköz sikeresen létrehozva. :)', 'success_linked' => 'Eszköz a :tag azonosítóval sikeresen létrehozva. Kattintson ide a megtekintéshez.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Ki kell választania legalább egy elemet a listából', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Az eszköz nem lett bejelölve, próbálkozzon újra', 'success' => 'Az Asset sikeresen ellenőrzött.', diff --git a/resources/lang/hu-HU/admin/settings/general.php b/resources/lang/hu-HU/admin/settings/general.php index 3b646d781ba7..65a86bf15d76 100644 --- a/resources/lang/hu-HU/admin/settings/general.php +++ b/resources/lang/hu-HU/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/hu-HU/general.php b/resources/lang/hu-HU/general.php index fa6b0beafcda..86e9a3a61f53 100644 --- a/resources/lang/hu-HU/general.php +++ b/resources/lang/hu-HU/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Vásárlás időpontja', 'qty' => 'Mennyiség', 'quantity' => 'Mennyiség', - 'quantity_minimum' => ':count eszközöd van a megadott minimum mennyiség közelében vagy az alatt', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Gyors szkennelős visszavétel', 'quickscan_checkin_status' => 'Visszavétel státusza', 'ready_to_deploy' => 'Kiadásra kész', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Feltöltött indexkép', 'placeholder_kit' => 'Készlet kiválasztása', 'file_not_found' => 'A fájl nem található', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(nincs előnézet)', 'setup' => 'Beállítás', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/hu-HU/validation.php b/resources/lang/hu-HU/validation.php index 043edb9552fd..9b3ccdd8b340 100644 --- a/resources/lang/hu-HU/validation.php +++ b/resources/lang/hu-HU/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute mező értékének érvényes dátumnak kell lennie YYYY-MM-DD formátumban', 'last_audit_date.date_format' => ':attribute mező értékének érvényes dátumnak kell lennie YYYY-MM-DD hh:mm:ss formátumban', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/id-ID/admin/hardware/message.php b/resources/lang/id-ID/admin/hardware/message.php index b0ce60b2bee7..8fe82f8b00df 100644 --- a/resources/lang/id-ID/admin/hardware/message.php +++ b/resources/lang/id-ID/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Aset gagal di buat, silahkan coba kembali', 'success' => 'Sukses membuat aset', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Anda harus memilih setidaknya satu aset dari daftar', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Aset gagal di terima, silahkan coba kembali', 'success' => 'Sukses menerima aset.', diff --git a/resources/lang/id-ID/admin/settings/general.php b/resources/lang/id-ID/admin/settings/general.php index e5ea28f2aa99..49c774b0a1dd 100644 --- a/resources/lang/id-ID/admin/settings/general.php +++ b/resources/lang/id-ID/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/id-ID/general.php b/resources/lang/id-ID/general.php index 9e18a032ef59..3cf7a7fde23a 100644 --- a/resources/lang/id-ID/general.php +++ b/resources/lang/id-ID/general.php @@ -78,7 +78,7 @@ 'consumables' => 'Barang Habis Pakai', 'country' => 'Negara', 'could_not_restore' => 'Galat memulihkan :item_type: :error', - 'not_deleted' => 'The :item_type was not deleted and therefore cannot be restored', + 'not_deleted' => ':item_type tidak dihapus, tidak dapat dipulihkan', 'create' => 'Buat baru', 'created' => 'Item dibuat', 'created_asset' => 'Buat aset', @@ -194,7 +194,7 @@ 'logout' => 'Keluar', 'lookup_by_tag' => 'Mencari berdasarkan tag aset', 'maintenances' => 'Pemeliharaan', - 'manage_api_keys' => 'Manage API keys', + 'manage_api_keys' => 'Mengelola Kunci API', 'manufacturer' => 'Produsen', 'manufacturers' => 'Produsen', 'markdown' => 'Field ini mengizinkan Github flavored markdown.', @@ -230,7 +230,7 @@ 'purchase_date' => 'Tanggal Pembelian', 'qty' => 'JML', 'quantity' => 'Jumlah', - 'quantity_minimum' => 'Anda memiliki :count item di bawah atau hampir mencapai jumlah minimum yang diizinkan', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Pengecekan Masuk Cepat dengan Pemindaian Barcode', 'quickscan_checkin_status' => 'Status Checkin', 'ready_to_deploy' => 'Siap digunakan', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Unggah gambar-kecil', 'placeholder_kit' => 'Pilih sebuah paket', 'file_not_found' => 'Berkas tidak ditemukan', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(tidak ada preview)', 'setup' => 'Pengaturan', 'pre_flight' => 'Sebelum di mulai', @@ -517,7 +518,7 @@ 'uploading' => 'Uploading... ', 'upload_error' => 'Error uploading file. Please check that there are no empty rows and that no column names are duplicated.', 'copy_to_clipboard' => 'Copy to Clipboard', - 'copied' => 'Copied!', + 'copied' => 'Disalin!', 'status_compatibility' => 'If assets are already assigned, they cannot be changed to a non-deployable status type and this value change will be skipped.', 'rtd_location_help' => 'This is the location of the asset when it is not checked out', 'item_not_found' => ':item_type ID :id tidak ada atau sudah dihapus', diff --git a/resources/lang/id-ID/validation.php b/resources/lang/id-ID/validation.php index ab3183f3d7c4..4a57715360af 100644 --- a/resources/lang/id-ID/validation.php +++ b/resources/lang/id-ID/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/is-IS/admin/hardware/message.php b/resources/lang/is-IS/admin/hardware/message.php index c79b54603152..a87b2bb87299 100644 --- a/resources/lang/is-IS/admin/hardware/message.php +++ b/resources/lang/is-IS/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Það tókst að skrá þessa eign :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Þú verður að velja að lágmarki eina eign úr listanum', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Eigninni var ekki skilað, vinsamlegast reyndu aftur', 'success' => 'Eigninni var skilað.', diff --git a/resources/lang/is-IS/admin/settings/general.php b/resources/lang/is-IS/admin/settings/general.php index 2f072bccd7fb..d6d29ca93622 100644 --- a/resources/lang/is-IS/admin/settings/general.php +++ b/resources/lang/is-IS/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/is-IS/general.php b/resources/lang/is-IS/general.php index 78ce28adf1b4..01dd0fb7c5f9 100644 --- a/resources/lang/is-IS/general.php +++ b/resources/lang/is-IS/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Innkaups dagsetning', 'qty' => 'Fj', 'quantity' => 'Fjöldi', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Tilbúin til notkunar', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Hlaða upp smámynd', 'placeholder_kit' => 'Velja sett', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/is-IS/validation.php b/resources/lang/is-IS/validation.php index 74df5d1dca8d..efa219784ef7 100644 --- a/resources/lang/is-IS/validation.php +++ b/resources/lang/is-IS/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/it-IT/admin/hardware/message.php b/resources/lang/it-IT/admin/hardware/message.php index e8ea4f72f180..629a24319d67 100644 --- a/resources/lang/it-IT/admin/hardware/message.php +++ b/resources/lang/it-IT/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'L\'asset non è stato creato, riprova per favore. :(', 'success' => 'L\'asset è stato creato con successo. :)', 'success_linked' => 'Bene creato con tag :tag . Clicca per vedere.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'È necessario selezionare almeno una risorsa dall\'elenco', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Il bene non è stato registrato, per favore riprova', 'success' => 'Il bene è stato registrato con successo.', diff --git a/resources/lang/it-IT/admin/settings/general.php b/resources/lang/it-IT/admin/settings/general.php index 9ecd86cafd35..53b327ed7257 100644 --- a/resources/lang/it-IT/admin/settings/general.php +++ b/resources/lang/it-IT/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Avviso di prevista Restituzione', 'due_checkin_days_help' => 'Quanti giorni prima della restituzione prevista di un Bene dovrebbe essere elencato nella pagina della "Restituzioni Previste"?', + 'no_groups' => 'Ancora non è stato creato alcun gruppo. Per aggiungerne uno vai a Impostazioni Admin > Gruppi.', ]; diff --git a/resources/lang/it-IT/admin/users/general.php b/resources/lang/it-IT/admin/users/general.php index b4de0fe28551..3871ed9d3d59 100644 --- a/resources/lang/it-IT/admin/users/general.php +++ b/resources/lang/it-IT/admin/users/general.php @@ -25,7 +25,7 @@ 'send_email_help' => 'Devi fornire un indirizzo email all\'utente per inviare loro le credenziali. L\'inoltro delle credenziali via email avviene solo durante la creazione dell\'utente. La password è memorizzata in un hash unidirezionale e non può essere recuperata, una volta salvata.', 'view_user' => 'Visualizza Utente :name', 'usercsv' => 'CSV file', - 'two_factor_admin_optin_help' => 'Le impostazioni correnti di amministratore consentono l\'esecuzione selettiva dell\'autenticazione a due fattori.', + 'two_factor_admin_optin_help' => 'Le impostazioni correnti consentono l\'attivazione selettiva dell\'autenticazione a due fattori. ', 'two_factor_enrolled' => 'Dispositivo 2FA Iscritto ', 'two_factor_active' => '2FA attivo ', 'user_deactivated' => 'L\'utente non può loggarsi', diff --git a/resources/lang/it-IT/general.php b/resources/lang/it-IT/general.php index 89c1e379d789..59c00bee2676 100644 --- a/resources/lang/it-IT/general.php +++ b/resources/lang/it-IT/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Data di acquisto', 'qty' => 'Qtà', 'quantity' => 'Quantità', - 'quantity_minimum' => 'Hai :count articoli sotto o quasi sotto alla soglia minima', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Restituzione a Scansione Rapida', 'quickscan_checkin_status' => 'Stato restituzione', 'ready_to_deploy' => 'Pronti per l\'assegnazione', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Miniatura caricata', 'placeholder_kit' => 'Seleziona un kit', 'file_not_found' => 'File non trovato', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(nessuna anteprima)', 'setup' => 'Setup', 'pre_flight' => 'Prova', diff --git a/resources/lang/it-IT/validation.php b/resources/lang/it-IT/validation.php index 9028a7d0d0e9..478bdb911a43 100644 --- a/resources/lang/it-IT/validation.php +++ b/resources/lang/it-IT/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Il campo :attribute deve essere un ULID valido.', 'uuid' => 'Il campo :attribute deve essere un UUID valido.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Sembra che questo campo esista, ma non è disponibile tra i campi di questo Modello di Bene.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute deve essere in formato AAAA-MM-GG', 'last_audit_date.date_format' => ':attribute deve essere in formato AAAA-MM-GG hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contiene opzioni non valide.', 'radio_buttons' => ':attribute non è valido.', 'invalid_value_in_field' => 'Valore non valido incluso in questo campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (grafìa mista) non va bene. Dovresti piuttosto usare samaccountname (minuscolo).' + ], + 'ldap_auth_filter_query' => ['not_in' => 'Probabilmente uid=samaccountname non è un filtro di l\'autenticazione valido. Forse è meglio uid= '], + 'ldap_filter' => ['regex' => 'Questo valore probabilmente non dovrebbe stare tra parentesi.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/iu-NU/admin/hardware/message.php b/resources/lang/iu-NU/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/iu-NU/admin/hardware/message.php +++ b/resources/lang/iu-NU/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/iu-NU/admin/settings/general.php b/resources/lang/iu-NU/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/iu-NU/admin/settings/general.php +++ b/resources/lang/iu-NU/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/iu-NU/general.php b/resources/lang/iu-NU/general.php index 34315c99a8ce..a2a075eed00c 100644 --- a/resources/lang/iu-NU/general.php +++ b/resources/lang/iu-NU/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/iu-NU/validation.php b/resources/lang/iu-NU/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/iu-NU/validation.php +++ b/resources/lang/iu-NU/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ja-JP/admin/hardware/message.php b/resources/lang/ja-JP/admin/hardware/message.php index 1796820eb027..5678447a1e80 100644 --- a/resources/lang/ja-JP/admin/hardware/message.php +++ b/resources/lang/ja-JP/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => '資産は作成されませんでした。もう一度、やり直して下さい。', 'success' => '資産は作成されました。', 'success_linked' => ':tag を持つアセットは正常に作成されました。 を表示するにはここをクリックしてください。', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'リストから少なくとも1つの資産を選択する必要があります', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => '資産はチェックインされませんでした。もう一度、やり直して下さい。', 'success' => '資産は正常にチェックインされました。', diff --git a/resources/lang/ja-JP/admin/settings/general.php b/resources/lang/ja-JP/admin/settings/general.php index c45cc720fbdf..9e77072e473e 100644 --- a/resources/lang/ja-JP/admin/settings/general.php +++ b/resources/lang/ja-JP/admin/settings/general.php @@ -388,5 +388,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'チェックイン期限の警告', 'due_checkin_days_help' => 'アセットの期待されるチェックインの何日前に、「チェックイン期限」ページにリストされるべきですか?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ja-JP/general.php b/resources/lang/ja-JP/general.php index 569e24a8242a..29306c722c8a 100644 --- a/resources/lang/ja-JP/general.php +++ b/resources/lang/ja-JP/general.php @@ -230,7 +230,7 @@ 'purchase_date' => '購入日', 'qty' => '数量', 'quantity' => '数量', - 'quantity_minimum' => '最低数量を下回る、または下回りそうなアイテムが :count 個あります。', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'クイックスキャン チェックイン', 'quickscan_checkin_status' => 'チェックイン状況', 'ready_to_deploy' => '配備可能', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'サムネイルのアップロード', 'placeholder_kit' => 'キットを選択', 'file_not_found' => 'ファイルが見つかりません', + 'log_record_not_found' => 'ログのエントリが見つかりませんでした。', 'preview_not_available' => '(プレビューなし)', 'setup' => 'セットアップ', 'pre_flight' => 'プレ・フライト', diff --git a/resources/lang/ja-JP/validation.php b/resources/lang/ja-JP/validation.php index 933c384faa3c..8b02e9fd4b9f 100644 --- a/resources/lang/ja-JP/validation.php +++ b/resources/lang/ja-JP/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute は YYYY-MM-DD 形式の有効な日付にして下さい', 'last_audit_date.date_format' => ':attribute は YYYY-MM-DD hh:mm:ss 形式の有効な日時にして下さい', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute に無効なオプションが含まれています。', 'radio_buttons' => ':attribute は不正です。', 'invalid_value_in_field' => 'このフィールドに含まれる値が無効です', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/km-KH/account/general.php b/resources/lang/km-KH/account/general.php index 48bc8f630d5a..9d35b7359ebd 100644 --- a/resources/lang/km-KH/account/general.php +++ b/resources/lang/km-KH/account/general.php @@ -2,16 +2,16 @@ return array( 'personal_api_keys' => 'សោ API ផ្ទាល់ខ្លួន', - 'personal_access_token' => 'Personal Access Token', - 'personal_api_keys_success' => 'Personal API Key :key created sucessfully', - 'here_is_api_key' => 'Here is your new personal access token. This is the only time it will be shown so do not lose it! You may now use this token to make API requests.', - 'api_key_warning' => 'When generating an API token, be sure to copy it down immediately as they will not be visible to you again.', + 'personal_access_token' => 'និមិត្តសញ្ញាចូលប្រើផ្ទាល់ខ្លួន', + 'personal_api_keys_success' => 'សោ API ផ្ទាល់ខ្លួន៖ សោត្រូវបានបង្កើតដោយជោគជ័យ', + 'here_is_api_key' => 'នេះជាសញ្ញាសម្គាល់ការចូលប្រើផ្ទាល់ខ្លួនថ្មីរបស់អ្នក។ នេះ​ជា​ពេល​តែ​មួយ​គត់​ដែល​នឹង​ត្រូវ​បាន​បង្ហាញ​ដូច្នេះ​កុំ​ឱ្យ​បាត់បង់​វា​! ឥឡូវនេះអ្នកអាចប្រើសញ្ញាសម្ងាត់នេះដើម្បីធ្វើសំណើ API ។', + 'api_key_warning' => 'នៅពេលបង្កើតនិមិត្តសញ្ញា API ត្រូវប្រាកដថាចម្លងវាភ្លាមៗ ព្រោះពួកវានឹងមិនអាចមើលឃើញដល់អ្នកម្តងទៀតទេ។', 'api_base_url' => 'Url មូលដ្ឋាន API របស់អ្នកមានទីតាំងនៅ៖', 'api_base_url_endpoint' => '/<endpoint>', 'api_token_expiration_time' => 'និមិត្តសញ្ញា API ត្រូវបានកំណត់ឱ្យផុតកំណត់នៅក្នុង៖', - 'api_reference' => 'Please check the API reference to find specific API endpoints and additional API documentation.', + 'api_reference' => 'សូមពិនិត្យមើល ឯកសារយោង API ដើម្បីស្វែងរកចំណុចបញ្ចប់ API ជាក់លាក់ និងឯកសារ API បន្ថែម។', 'profile_updated' => 'ធ្វើបច្ចុប្បន្នភាពគណនីដោយជោគជ័យ', - 'no_tokens' => 'You have not created any personal access tokens.', - 'enable_sounds' => 'Enable sound effects', - 'enable_confetti' => 'Enable confetti effects', + 'no_tokens' => 'អ្នក​មិន​បាន​បង្កើត​ថូខឹន​ចូល​ប្រើប្រាស់​ផ្ទាល់ខ្លួន​ណា​មួយ​ទេ។', + 'enable_sounds' => 'បើកបែបផែនសំឡេង', + 'enable_confetti' => 'បើកបែបផែនក្រដាស', ); diff --git a/resources/lang/km-KH/admin/custom_fields/general.php b/resources/lang/km-KH/admin/custom_fields/general.php index e98c0273fd57..34c0e4a0a4d9 100644 --- a/resources/lang/km-KH/admin/custom_fields/general.php +++ b/resources/lang/km-KH/admin/custom_fields/general.php @@ -1,34 +1,34 @@ 'Custom Fields', + 'custom_fields' => 'វាលផ្ទាល់ខ្លួន', 'manage' => 'គ្រប់គ្រង', - 'field' => 'Field', - 'about_fieldsets_title' => 'About Fieldsets', - 'about_fieldsets_text' => 'Fieldsets allow you to create groups of custom fields that are frequently re-used for specific asset model types.', - 'custom_format' => 'Custom Regex format...', - 'encrypt_field' => 'Encrypt the value of this field in the database', - 'encrypt_field_help' => 'WARNING: Encrypting a field makes it unsearchable.', - 'encrypted' => 'Encrypted', + 'field' => 'វាល', + 'about_fieldsets_title' => 'អំពី Fieldsets', + 'about_fieldsets_text' => 'Fieldsets អនុញ្ញាតឱ្យអ្នកបង្កើតក្រុមនៃវាលផ្ទាល់ខ្លួនដែលត្រូវបានប្រើឡើងវិញជាញឹកញាប់សម្រាប់ប្រភេទគំរូទ្រព្យសកម្មជាក់លាក់។', + 'custom_format' => 'ទម្រង់ Regex ផ្ទាល់ខ្លួន...', + 'encrypt_field' => 'អ៊ិនគ្រីបតម្លៃនៃវាលនេះនៅក្នុងមូលដ្ឋានទិន្នន័យ', + 'encrypt_field_help' => 'ការព្រមាន៖ ការអ៊ិនគ្រីបវាលធ្វើឱ្យវាមិនអាចស្វែងរកបាន។', + 'encrypted' => 'បានអ៊ិនគ្រីប', 'fieldset' => 'Fieldset', - 'qty_fields' => 'Qty Fields', + 'qty_fields' => 'វាល Qty', 'fieldsets' => 'Fieldsets', 'fieldset_name' => 'Fieldset Name', - 'field_name' => 'Field Name', - 'field_values' => 'Field Values', - 'field_values_help' => 'Add selectable options, one per line. Blank lines other than the first line will be ignored.', - 'field_element' => 'Form Element', - 'field_element_short' => 'Element', - 'field_format' => 'Format', - 'field_custom_format' => 'Custom Regex Format', - 'field_custom_format_help' => 'This field allows you to use a regex expression for validation. It should start with "regex:" - for example, to validate that a custom field value contains a valid IMEI (15 numeric digits), you would use regex:/^[0-9]{15}$/.', - 'required' => 'Required', + 'field_name' => 'ឈ្មោះវាល', + 'field_values' => 'តម្លៃវាល', + 'field_values_help' => 'បន្ថែមជម្រើសដែលអាចជ្រើសរើសបាន មួយក្នុងមួយជួរ។ បន្ទាត់ទទេក្រៅពីបន្ទាត់ទីមួយនឹងមិនត្រូវបានអើពើ។', + 'field_element' => 'ធាតុទម្រង់', + 'field_element_short' => 'ធាតុ', + 'field_format' => 'ទម្រង់', + 'field_custom_format' => 'ទម្រង់ Regex ផ្ទាល់ខ្លួន', + 'field_custom_format_help' => 'វាលនេះអនុញ្ញាតឱ្យអ្នកប្រើកន្សោម regex សម្រាប់សុពលភាព។ វាគួរតែចាប់ផ្តើមដោយ "regex:" - ឧទាហរណ៍ ដើម្បីផ្ទៀងផ្ទាត់ថាតម្លៃវាលផ្ទាល់ខ្លួនមាន IMEI ត្រឹមត្រូវ (15 ខ្ទង់) អ្នកនឹងប្រើ regex:/^[0-9]{15}$/< /code> ។', + 'required' => 'ទាមទារ', 'req' => 'Req.', - 'used_by_models' => 'Used By Models', - 'order' => 'Order', + 'used_by_models' => 'ប្រើដោយម៉ូដែល', + 'order' => 'បញ្ជាទិញ', 'create_fieldset' => 'New Fieldset', 'update_fieldset' => 'Update Fieldset', - 'fieldset_does_not_exist' => 'Fieldset :id does not exist', + 'fieldset_does_not_exist' => 'Fieldset : id មិនមានទេ។', 'fieldset_updated' => 'Fieldset updated', 'create_fieldset_title' => 'Create a new fieldset', 'create_field' => 'New Custom Field', diff --git a/resources/lang/km-KH/admin/depreciations/general.php b/resources/lang/km-KH/admin/depreciations/general.php index 95bf7d99e121..de2c197dbb6c 100644 --- a/resources/lang/km-KH/admin/depreciations/general.php +++ b/resources/lang/km-KH/admin/depreciations/general.php @@ -6,11 +6,11 @@ 'asset_depreciations' => 'ការរំលោះទ្រព្យសកម្ម', 'create' => 'បង្កើតការរំលោះ', 'depreciation_name' => 'ឈ្មោះរំលោះ', - 'depreciation_min' => 'Floor Value of Depreciation', + 'depreciation_min' => 'តម្លៃជាន់នៃរំលោះ', 'number_of_months' => 'ចំនួនខែ', 'update' => 'ធ្វើបច្ចុប្បន្នភាពការរំលោះ', 'depreciation_min' => 'តម្លៃអប្បបរមាបន្ទាប់ពីការរំលោះ', - 'no_depreciations_warning' => 'Warning: - You do not currently have any depreciations set up. - Please set up at least one depreciation to view the depreciation report.', + 'no_depreciations_warning' => 'ការព្រមាន៖ + បច្ចុប្បន្ន​នេះ អ្នក​មិន​មាន​ការ​កំណត់​ការ​រំលោះ​ទេ។ + សូមរៀបចំការរំលោះយ៉ាងហោចណាស់មួយ ដើម្បីមើលរបាយការណ៍រំលោះ។', ]; diff --git a/resources/lang/km-KH/admin/depreciations/table.php b/resources/lang/km-KH/admin/depreciations/table.php index 7c01c2e98422..c7f365c80f3e 100644 --- a/resources/lang/km-KH/admin/depreciations/table.php +++ b/resources/lang/km-KH/admin/depreciations/table.php @@ -6,6 +6,6 @@ 'months' => 'ខែ', 'term' => 'រយៈពេល', 'title' => 'ឈ្មោះ ', - 'depreciation_min' => 'Floor Value', + 'depreciation_min' => 'តម្លៃជាន់', ]; diff --git a/resources/lang/km-KH/admin/hardware/message.php b/resources/lang/km-KH/admin/hardware/message.php index 1ff7102c8c6e..592bc26929cc 100644 --- a/resources/lang/km-KH/admin/hardware/message.php +++ b/resources/lang/km-KH/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'ទ្រព្យសកម្មមិនត្រូវបានបង្កើតទេ សូមព្យាយាមម្តងទៀត។ :(', 'success' => 'ទ្រព្យសកម្មត្រូវបានបង្កើតដោយជោគជ័យ។ :)', 'success_linked' => 'ទ្រព្យសកម្មជាមួយស្លាក៖ ស្លាកត្រូវបានបង្កើតដោយជោគជ័យ។ ចុចទីនេះដើម្បីមើល។', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'អ្នកត្រូវតែជ្រើសរើសយ៉ាងហោចណាស់ទ្រព្យសកម្មមួយពីបញ្ជី', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'ទ្រព្យសកម្មមិនត្រូវ checked in ទេ, សូមព្យាយាមម្តងទៀត', 'success' => 'ទ្រព្យសកម្មបាន checked in ជោគជ័យ។', diff --git a/resources/lang/km-KH/admin/locations/message.php b/resources/lang/km-KH/admin/locations/message.php index c8f470a6325c..ae50e3d53619 100644 --- a/resources/lang/km-KH/admin/locations/message.php +++ b/resources/lang/km-KH/admin/locations/message.php @@ -3,12 +3,12 @@ return array( 'does_not_exist' => 'ទីតាំងមិនមានទេ។', - 'assoc_users' => 'This location is not currently deletable because it is the location of record for at least one asset or user, has assets assigned to it, or is the parent location of another location. Please update your records to no longer reference this location and try again. ', + 'assoc_users' => 'បច្ចុប្បន្នទីតាំងនេះមិនអាចលុបបានទេ ដោយសារវាជាទីតាំងនៃកំណត់ត្រាសម្រាប់ទ្រព្យសកម្ម ឬអ្នកប្រើប្រាស់យ៉ាងហោចណាស់មួយ មានទ្រព្យសម្បត្តិដែលបានកំណត់ទៅវា ឬជាទីតាំងមេនៃទីតាំងផ្សេងទៀត។ សូម​ធ្វើ​បច្ចុប្បន្នភាព​កំណត់ត្រា​របស់អ្នក​ដើម្បី​លែង​យោង​ទីតាំង​នេះ​ហើយ​ព្យាយាម​ម្ដងទៀត។ ', 'assoc_assets' => 'បច្ចុប្បន្នទីតាំងនេះត្រូវបានភ្ជាប់ជាមួយទ្រព្យសកម្មយ៉ាងហោចណាស់មួយ ហើយមិនអាចលុបបានទេ។ សូមអាប់ដេតទ្រព្យសកម្មរបស់អ្នក ដើម្បីកុំឱ្យយោងទីតាំងនេះតទៅទៀត ហើយព្យាយាមម្តងទៀត។ ', 'assoc_child_loc' => 'This location is currently the parent of at least one child location and cannot be deleted. Please update your locations to no longer reference this location and try again. ', 'assigned_assets' => 'ទ្រព្យសកម្មដែលបានចាត់តាំង', 'current_location' => 'ទីតាំង​បច្ចុប្បន្', - 'open_map' => 'Open in :map_provider_icon Maps', + 'open_map' => 'បើកនៅក្នុង៖map_provider_icon ផែនទី', 'create' => array( @@ -22,8 +22,8 @@ ), 'restore' => array( - 'error' => 'Location was not restored, please try again', - 'success' => 'Location restored successfully.' + 'error' => 'ទីតាំងមិនត្រូវបានស្ដារឡើងវិញទេ សូមព្យាយាមម្តងទៀត', + 'success' => 'បានស្ដារទីតាំងឡើងវិញដោយជោគជ័យ។' ), 'delete' => array( diff --git a/resources/lang/km-KH/admin/locations/table.php b/resources/lang/km-KH/admin/locations/table.php index a8119ee74ebd..106b57ad3d64 100644 --- a/resources/lang/km-KH/admin/locations/table.php +++ b/resources/lang/km-KH/admin/locations/table.php @@ -4,27 +4,27 @@ 'about_locations_title' => 'ទីតាំងត្រូវបានលុបដោយជោគជ័យ។', 'about_locations' => 'ទីតាំងត្រូវបានលុបដោយជោគជ័យ។', 'assets_rtd' => 'ទ្រព្យសកម្ម', // This has NEVER meant Assets Retired. I don't know how it keeps getting reverted. - 'assets_checkedout' => 'Assets Assigned', + 'assets_checkedout' => 'ទ្រព្យសម្បត្តិដែលបានចាត់តាំង', 'id' => 'លេខសម្គាល់', 'city' => 'ទីក្រុង', 'state' => 'រដ្ឋ', 'country' => 'ប្រទេស', - 'create' => 'Create Location', - 'update' => 'Update Location', - 'print_assigned' => 'Print Assigned', + 'create' => 'បង្កើតទីតាំង', + 'update' => 'ធ្វើបច្ចុប្បន្នភាពទីតាំង', + 'print_assigned' => 'បោះពុម្ពដែលបានកំណត់', 'print_all_assigned' => 'បោះពុម្ពដែលបានចាត់តាំងទាំងអស់។', - 'name' => 'Location Name', + 'name' => 'ឈ្មោះទីតាំង', 'address' => 'អាស័យដ្ឋាន', - 'address2' => 'Address Line 2', - 'zip' => 'Postal Code', + 'address2' => 'អាស័យដ្ឋាន ខ្សែទី 2', + 'zip' => 'លេខកូដប្រៃសណីយ៍', 'locations' => 'ទីតាំង', 'parent' => 'Parent', - 'currency' => 'Location Currency', - 'ldap_ou' => 'LDAP Search OU', - 'user_name' => 'User Name', + 'currency' => 'ទីតាំងរូបិយប័ណ្ណ', + 'ldap_ou' => 'LDAP ស្វែងរក OU', + 'user_name' => 'ឈ្មោះអ្នកប្រើប្រាស់', 'department' => 'នាយកដ្ឋាន', 'location' => 'ទីតាំង', - 'asset_tag' => 'Assets Tag', + 'asset_tag' => 'ស្លាកទ្រព្យសម្បត្តិ', 'asset_name' => 'ឈ្មោះ', 'asset_category' => 'ប្រភេទ', 'asset_manufacturer' => 'ក្រុមហ៊ុនផលិត', @@ -32,11 +32,11 @@ 'asset_serial' => 'Serial', 'asset_location' => 'ទីតាំង', 'asset_checked_out' => 'Checked Out', - 'asset_expected_checkin' => 'Expected Checkin', + 'asset_expected_checkin' => 'រំពឹងទុក Checkin', 'date' => 'កាលបរិច្ឆេទ:', - 'phone' => 'Location Phone', - 'signed_by_asset_auditor' => 'Signed By (Asset Auditor):', - 'signed_by_finance_auditor' => 'Signed By (Finance Auditor):', - 'signed_by_location_manager' => 'Signed By (Location Manager):', - 'signed_by' => 'Signed Off By:', + 'phone' => 'ទូរស័ព្ទទីតាំង', + 'signed_by_asset_auditor' => 'ចុះហត្ថលេខាដោយ (Asset Auditor)៖', + 'signed_by_finance_auditor' => 'ចុះហត្ថលេខាដោយ (សវនករហិរញ្ញវត្ថុ)៖', + 'signed_by_location_manager' => 'ចុះហត្ថលេខាដោយ (អ្នកគ្រប់គ្រងទីតាំង)៖', + 'signed_by' => 'ចុះហត្ថលេខាបិទដោយ៖', ]; diff --git a/resources/lang/km-KH/admin/settings/general.php b/resources/lang/km-KH/admin/settings/general.php index 550471326f40..a9e350c71d84 100644 --- a/resources/lang/km-KH/admin/settings/general.php +++ b/resources/lang/km-KH/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/km-KH/admin/statuslabels/message.php b/resources/lang/km-KH/admin/statuslabels/message.php index 863102d7b070..f26eb714a98a 100644 --- a/resources/lang/km-KH/admin/statuslabels/message.php +++ b/resources/lang/km-KH/admin/statuslabels/message.php @@ -24,8 +24,8 @@ 'help' => [ 'undeployable' => 'ទ្រព្យសម្បត្តិទាំងនេះមិនអាចប្រគល់ឱ្យអ្នកណាម្នាក់បានទេ។', - 'deployable' => 'These assets can be checked out. Once they are assigned, they will assume a meta status of Deployed.', - 'archived' => 'These assets cannot be checked out, and will only show up in the Archived view. This is useful for retaining information about assets for budgeting/historic purposes but keeping them out of the day-to-day asset list.', + 'deployable' => 'ទ្រព្យសម្បត្តិទាំងនេះអាចត្រូវបានពិនិត្យចេញ។ នៅពេលដែលពួកវាត្រូវបានចាត់តាំង ពួកគេនឹងសន្មត់ស្ថានភាពមេតានៃ បានប្រើ។', + 'archived' => 'ទ្រព្យសម្បត្តិទាំងនេះមិនអាចត្រូវបានពិនិត្យចេញទេ ហើយនឹងបង្ហាញតែនៅក្នុងទិដ្ឋភាពដែលបានទុកក្នុងប័ណ្ណសារប៉ុណ្ណោះ។ វាមានប្រយោជន៍សម្រាប់ការរក្សាទុកព័ត៌មានអំពីទ្រព្យសកម្មសម្រាប់គោលបំណងថវិកា/ជាប្រវត្តិសាស្ត្រ ប៉ុន្តែការរក្សាវាចេញពីបញ្ជីទ្រព្យសកម្មប្រចាំថ្ងៃ។', 'pending' => 'ទ្រព្យសម្បត្តិទាំងនេះមិនទាន់អាចប្រគល់ឱ្យអ្នកណាម្នាក់បានទេ ដែលជារឿយៗត្រូវបានប្រើប្រាស់សម្រាប់វត្ថុដែលអស់សម្រាប់ការជួសជុល ប៉ុន្តែត្រូវបានគេរំពឹងថានឹងត្រឡប់មកចរាចរវិញ។', ], diff --git a/resources/lang/km-KH/admin/statuslabels/table.php b/resources/lang/km-KH/admin/statuslabels/table.php index 3451f3e4a63b..73388028f9a9 100644 --- a/resources/lang/km-KH/admin/statuslabels/table.php +++ b/resources/lang/km-KH/admin/statuslabels/table.php @@ -1,19 +1,19 @@ 'About Status Labels', + 'about' => 'អំពីស្លាកស្ថានភាព', 'archived' => 'ទុកក្នុងប័ណ្ណសារ', - 'create' => 'Create Status Label', - 'color' => 'Chart Color', - 'default_label' => 'Default Label', - 'default_label_help' => 'This is used to ensure your most commonly used status labels appear at the top of the select box when creating/editing assets.', + 'create' => 'បង្កើតស្លាកស្ថានភាព', + 'color' => 'ពណ៌គំនូសតាង', + 'default_label' => 'ស្លាកលំនាំដើម', + 'default_label_help' => 'វា​ត្រូវ​បាន​ប្រើ​ដើម្បី​ធានា​ថា​ស្លាក​ស្ថានភាព​ដែល​ប្រើ​ជា​ទូទៅ​របស់​អ្នក​បង្ហាញ​នៅ​ផ្នែក​ខាង​លើ​នៃ​ប្រអប់​ជ្រើសរើស​ពេល​បង្កើត/កែសម្រួល​ទ្រព្យសកម្ម។', 'deployable' => 'អាចប្រើបាន', - 'info' => 'Status labels are used to describe the various states your assets could be in. They may be out for repair, lost/stolen, etc. You can create new status labels for deployable, pending and archived assets.', - 'name' => 'Status Name', + 'info' => 'ស្លាកស្ថានភាពត្រូវបានប្រើដើម្បីពណ៌នាអំពីស្ថានភាពផ្សេងៗដែលទ្រព្យសម្បត្តិរបស់អ្នកអាចស្ថិតនៅក្នុង។ ពួកវាអាចនឹងត្រូវជួសជុល បាត់បង់/លួច។ អ្នក​អាច​បង្កើត​ស្លាក​ស្ថានភាព​ថ្មី​សម្រាប់​ទ្រព្យ​សកម្ម​ដែល​អាច​ប្រើ​បាន រង់ចាំ និង​ទុក​ក្នុង​ប័ណ្ណសារ។', + 'name' => 'ឈ្មោះស្ថានភាព', 'pending' => 'កំពុងរង់ចាំ', - 'status_type' => 'Status Type', - 'show_in_nav' => 'Show in side nav', - 'title' => 'Status Labels', + 'status_type' => 'ប្រភេទស្ថានភាព', + 'show_in_nav' => 'បង្ហាញនៅក្នុង side nav', + 'title' => 'ស្លាកស្ថានភាព', 'undeployable' => 'មិន​អាច​ប្រើ​បាន', - 'update' => 'Update Status Label', + 'update' => 'ធ្វើបច្ចុប្បន្នភាពស្លាកស្ថានភាព', ); diff --git a/resources/lang/km-KH/admin/suppliers/table.php b/resources/lang/km-KH/admin/suppliers/table.php index 123da8d87d25..70b2044f9f11 100644 --- a/resources/lang/km-KH/admin/suppliers/table.php +++ b/resources/lang/km-KH/admin/suppliers/table.php @@ -1,26 +1,26 @@ 'About Suppliers', - 'about_suppliers_text' => 'Suppliers are used to track the source of items', - 'address' => 'Supplier Address', + 'about_suppliers_title' => 'អំពីអ្នកផ្គត់ផ្គង់', + 'about_suppliers_text' => 'អ្នកផ្គត់ផ្គង់ត្រូវបានប្រើដើម្បីតាមដានប្រភពនៃធាតុ', + 'address' => 'អាសយដ្ឋានអ្នកផ្គត់ផ្គង់', 'assets' => 'ទ្រព្យសកម្ម', 'city' => 'ទីក្រុង', - 'contact' => 'Contact Name', + 'contact' => 'ឈ្មោះទំនាក់ទំនង', 'country' => 'ប្រទេស', - 'create' => 'Create Supplier', - 'email' => 'Email', - 'fax' => 'Fax', + 'create' => 'បង្កើតអ្នកផ្គត់ផ្គង់', + 'email' => 'អ៊ីមែល', + 'fax' => 'ទូរសារ', 'id' => 'លេខសម្គាល់', 'licenses' => 'អាជ្ញាប័ណ្ណ', - 'name' => 'Supplier Name', + 'name' => 'អ្នកផ្គត់ផ្គង់', 'notes' => 'កំណត់ចំណាំ', - 'phone' => 'Phone', + 'phone' => 'ទូរស័ព្ទ', 'state' => 'រដ្ឋ', - 'suppliers' => 'Suppliers', - 'update' => 'Update Supplier', - 'view' => 'View Supplier', - 'view_assets_for' => 'View Assets for', - 'zip' => 'Postal Code', + 'suppliers' => 'អ្នកផ្គត់ផ្គង់ច្រើន', + 'update' => 'អាប់ដេតអ្នកផ្គត់ផ្គង់', + 'view' => 'មើលអ្នកផ្គត់ផ្គង់', + 'view_assets_for' => 'មើលទ្រព្យសម្បត្តិសម្រាប់', + 'zip' => 'លេខកូដប្រៃសណីយ៍', ); diff --git a/resources/lang/km-KH/admin/users/message.php b/resources/lang/km-KH/admin/users/message.php index f27caadb8797..70a4c4143502 100644 --- a/resources/lang/km-KH/admin/users/message.php +++ b/resources/lang/km-KH/admin/users/message.php @@ -6,11 +6,11 @@ 'declined' => 'អ្នកបានបដិសេធដោយជោគជ័យនូវទ្រព្យសកម្មនេះ។', 'bulk_manager_warn' => 'អ្នកប្រើប្រាស់របស់អ្នកត្រូវបានអាប់ដេតដោយជោគជ័យ ទោះជាយ៉ាងណាក៏ដោយ ធាតុគ្រប់គ្រងរបស់អ្នកមិនត្រូវបានរក្សាទុកទេ ដោយសារអ្នកគ្រប់គ្រងដែលអ្នកបានជ្រើសរើសក៏ស្ថិតនៅក្នុងបញ្ជីអ្នកប្រើប្រាស់ដែលត្រូវកែសម្រួលដែរ ហើយអ្នកប្រើប្រាស់ប្រហែលជាមិនមែនជាអ្នកគ្រប់គ្រងផ្ទាល់របស់ពួកគេទេ។ សូមជ្រើសរើសអ្នកប្រើប្រាស់របស់អ្នកម្តងទៀត ដោយមិនរាប់បញ្ចូលអ្នកគ្រប់គ្រង។', 'user_exists' => 'អ្នកប្រើប្រាស់មានហើយ!', - 'user_not_found' => 'User does not exist or you do not have permission view them.', - 'user_login_required' => 'The login field is required', + 'user_not_found' => 'អ្នកប្រើប្រាស់មិនមានទេ ឬអ្នកមិនមានសិទ្ធិមើលពួកវា។', + 'user_login_required' => 'វាលចូលត្រូវបានទាមទារ', 'user_has_no_assets_assigned' => 'មិន​មាន​ទ្រព្យ​សកម្ម​ដែល​ត្រូវ​បាន​ផ្ដល់​ឱ្យ​អ្នក​ប្រើ​នា​ពេល​បច្ចុប្បន្ន​នេះ​។', 'user_password_required' => 'ពាក្យសម្ងាត់គឺត្រូវបានទាមទារ។', - 'insufficient_permissions' => 'Insufficient Permissions.', + 'insufficient_permissions' => 'ការអនុញ្ញាតមិនគ្រប់គ្រាន់។', 'user_deleted_warning' => 'អ្នក​ប្រើ​នេះ​ត្រូវ​បាន​លុប។ អ្នកនឹងត្រូវស្តារអ្នកប្រើប្រាស់នេះឡើងវិញ ដើម្បីកែសម្រួលពួកគេ ឬផ្តល់ទ្រព្យសម្បត្តិថ្មី។', 'ldap_not_configured' => 'ការរួមបញ្ចូល LDAP មិនត្រូវបានកំណត់រចនាសម្ព័ន្ធសម្រាប់ការដំឡើងនេះទេ។', 'password_resets_sent' => 'អ្នកប្រើប្រាស់ដែលបានជ្រើសរើសដែលត្រូវបានធ្វើឱ្យសកម្ម និងមានអាសយដ្ឋានអ៊ីមែលត្រឹមត្រូវត្រូវបានផ្ញើតំណកំណត់ពាក្យសម្ងាត់ឡើងវិញ។', @@ -27,7 +27,7 @@ 'ban' => 'អ្នកប្រើប្រាស់ត្រូវបានហាមឃាត់ដោយជោគជ័យ។', 'unban' => 'អ្នកប្រើប្រាស់ត្រូវបានលុបចោលដោយជោគជ័យ។', 'suspend' => 'អ្នកប្រើប្រាស់ត្រូវបានផ្អាកដោយជោគជ័យ។', - 'unsuspend' => 'User was successfully unsuspended.', + 'unsuspend' => 'អ្នកប្រើប្រាស់ត្រូវបានបញ្ឈប់ដោយជោគជ័យ។', 'restored' => 'អ្នកប្រើប្រាស់ត្រូវបានស្ដារឡើងវិញដោយជោគជ័យ។', 'import' => 'អ្នកប្រើប្រាស់បាននាំចូលដោយជោគជ័យ។', ), @@ -37,23 +37,23 @@ 'update' => 'មានបញ្ហាក្នុងការអាប់ដេតអ្នកប្រើប្រាស់។ សូម​ព្យាយាម​ម្តង​ទៀត។', 'delete' => 'មានបញ្ហាក្នុងការលុបអ្នកប្រើប្រាស់។ សូម​ព្យាយាម​ម្តង​ទៀត។', 'delete_has_assets' => 'អ្នក​ប្រើ​នេះ​មាន​ធាតុ​ដែល​បាន​កំណត់ ហើយ​មិន​អាច​លុប​បាន​ទេ។', - 'delete_has_assets_var' => 'This user still has an asset assigned. Please check it in first.|This user still has :count assets assigned. Please check their assets in first.', - 'delete_has_licenses_var' => 'This user still has a license seats assigned. Please check it in first.|This user still has :count license seats assigned. Please check them in first.', - 'delete_has_accessories_var' => 'This user still has an accessory assigned. Please check it in first.|This user still has :count accessories assigned. Please check their assets in first.', - 'delete_has_locations_var' => 'This user still manages a location. Please select another manager first.|This user still manages :count locations. Please select another manager first.', - 'delete_has_users_var' => 'This user still manages another user. Please select another manager for that user first.|This user still manages :count users. Please select another manager for them first.', + 'delete_has_assets_var' => 'អ្នកប្រើប្រាស់នេះនៅតែមានទ្រព្យសម្បត្តិដែលបានកំណត់។ សូមពិនិត្យមើលវាជាមុនសិន។|អ្នកប្រើប្រាស់នេះនៅតែមាន៖ រាប់ទ្រព្យសម្បត្តិដែលបានកំណត់។ សូមពិនិត្យមើលទ្រព្យសម្បត្តិរបស់ពួកគេជាមុនសិន។', + 'delete_has_licenses_var' => 'អ្នកប្រើប្រាស់នេះនៅតែមានកន្លែងផ្តល់អាជ្ញាប័ណ្ណ។ សូមពិនិត្យមើលវាជាមុនសិន។|អ្នកប្រើប្រាស់នេះនៅតែមាន៖ រាប់ចំនួនអាសនៈអាជ្ញាប័ណ្ណដែលបានកំណត់។ សូមពិនិត្យមើលពួកវាជាមុនសិន។', + 'delete_has_accessories_var' => 'អ្នកប្រើប្រាស់នេះនៅតែមានគ្រឿងបន្លាស់ដែលបានកំណត់។ សូមពិនិត្យមើលវាជាមុនសិន។|អ្នកប្រើប្រាស់នេះនៅតែមានៈរាប់គ្រឿងបន្ថែមដែលបានកំណត់។ សូមពិនិត្យមើលទ្រព្យសម្បត្តិរបស់ពួកគេជាមុនសិន។', + 'delete_has_locations_var' => 'អ្នកប្រើប្រាស់នេះនៅតែគ្រប់គ្រងទីតាំង។ សូមជ្រើសរើសអ្នកគ្រប់គ្រងផ្សេងទៀតជាមុនសិន។|អ្នកប្រើប្រាស់នេះនៅតែគ្រប់គ្រង៖ រាប់ទីតាំង។ សូមជ្រើសរើសអ្នកគ្រប់គ្រងផ្សេងទៀតជាមុនសិន។', + 'delete_has_users_var' => 'អ្នកប្រើប្រាស់នេះនៅតែគ្រប់គ្រងអ្នកប្រើប្រាស់ផ្សេងទៀត។ សូមជ្រើសរើសអ្នកគ្រប់គ្រងផ្សេងទៀតសម្រាប់អ្នកប្រើប្រាស់នោះជាមុនសិន។|អ្នកប្រើប្រាស់នេះនៅតែគ្រប់គ្រង៖ រាប់អ្នកប្រើប្រាស់។ សូមជ្រើសរើសអ្នកគ្រប់គ្រងផ្សេងទៀតសម្រាប់ពួកគេជាមុនសិន។', 'unsuspend' => 'មានបញ្ហាក្នុងការឈប់ផ្អាកអ្នកប្រើប្រាស់។ សូម​ព្យាយាម​ម្តង​ទៀត។', 'import' => 'មានបញ្ហាក្នុងការនាំចូលអ្នកប្រើប្រាស់។ សូម​ព្យាយាម​ម្តង​ទៀត។', 'asset_already_accepted' => 'ទ្រព្យសកម្មនេះត្រូវបានទទួលរួចហើយ។', 'accept_or_decline' => 'អ្នក​ត្រូវតែ​ទទួល​យក ឬ​បដិសេធ​ទ្រព្យសកម្ម​នេះ។', - 'cannot_delete_yourself' => 'We would feel really bad if you deleted yourself, please reconsider.', - 'incorrect_user_accepted' => 'The asset you have attempted to accept was not checked out to you.', + 'cannot_delete_yourself' => 'យើងពិតជាមានអារម្មណ៍មិនល្អ ប្រសិនបើអ្នកលុបខ្លួនឯង សូមពិចារណាឡើងវិញ។', + 'incorrect_user_accepted' => 'ទ្រព្យសកម្មដែលអ្នកបានព្យាយាមទទួលយកមិនត្រូវបានពិនិត្យចេញសម្រាប់អ្នកទេ។', 'ldap_could_not_connect' => 'មិនអាចភ្ជាប់ទៅម៉ាស៊ីនមេ LDAP បានទេ។ សូមពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ LDAP របស់អ្នកនៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធ LDAP ។
កំហុសពីម៉ាស៊ីនមេ LDAP៖', 'ldap_could_not_bind' => 'មិនអាចភ្ជាប់ទៅម៉ាស៊ីនមេ LDAP បានទេ។ សូមពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ LDAP របស់អ្នកនៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធ LDAP ។
កំហុសពីម៉ាស៊ីនមេ LDAP៖ ', 'ldap_could_not_search' => 'មិនអាចស្វែងរកម៉ាស៊ីនមេ LDAP បានទេ។ សូមពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ LDAP របស់អ្នកនៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធ LDAP ។
កំហុសពីម៉ាស៊ីនមេ LDAP៖', 'ldap_could_not_get_entries' => 'មិនអាចទទួលបានធាតុពីម៉ាស៊ីនមេ LDAP ទេ។ សូមពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនមេ LDAP របស់អ្នកនៅក្នុងឯកសារកំណត់រចនាសម្ព័ន្ធ LDAP ។
កំហុសពីម៉ាស៊ីនមេ LDAP៖', 'password_ldap' => 'ពាក្យសម្ងាត់សម្រាប់គណនីនេះត្រូវបានគ្រប់គ្រងដោយ LDAP/Active Directory។ សូមទាក់ទងផ្នែក IT របស់អ្នក ដើម្បីផ្លាស់ប្តូរពាក្យសម្ងាត់របស់អ្នក។ ', - 'multi_company_items_assigned' => 'This user has items assigned that belong to a different company. Please check them in or edit their company.' + 'multi_company_items_assigned' => 'អ្នក​ប្រើ​នេះ​មាន​ធាតុ​ដែល​ត្រូវ​បាន​កំណត់​ជា​របស់​ក្រុមហ៊ុន​ផ្សេង។ សូមពិនិត្យមើលពួកគេនៅក្នុង ឬកែសម្រួលក្រុមហ៊ុនរបស់ពួកគេ។' ), 'deletefile' => array( diff --git a/resources/lang/km-KH/admin/users/table.php b/resources/lang/km-KH/admin/users/table.php index db76fdec9d4a..b77fb3ed81f1 100644 --- a/resources/lang/km-KH/admin/users/table.php +++ b/resources/lang/km-KH/admin/users/table.php @@ -1,41 +1,41 @@ 'Active', + 'activated' => 'សកម្ម', 'allow' => 'អនុញ្ញាត', 'checkedout' => 'ទ្រព្យសកម្ម', 'created_at' => 'បានបង្កើត', - 'createuser' => 'Create User', + 'createuser' => 'បង្កើតអ្នកប្រើប្រាស់', 'deny' => 'បដិសេធ', - 'email' => 'Email', - 'employee_num' => 'Employee No.', + 'email' => 'អ៊ីមែល', + 'employee_num' => 'លេខបុគ្គលិក', 'first_name' => 'នាមខ្លួន', - 'groupnotes' => 'Select a group to assign to the user, remember that a user takes on the permissions of the group they are assigned. Use ctrl+click (or cmd+click on MacOS) to deselect groups.', + 'groupnotes' => 'ជ្រើសរើសក្រុមដែលត្រូវប្រគល់ឱ្យអ្នកប្រើប្រាស់ សូមចាំថាអ្នកប្រើប្រាស់ទទួលយកការអនុញ្ញាតពីក្រុមដែលពួកគេត្រូវបានចាត់តាំង។ ប្រើ ctrl + ចុច (ឬ cmd + ចុចលើ MacOS) ដើម្បីដកការជ្រើសរើសក្រុម។', 'id' => 'Id', - 'inherit' => 'Inherit', - 'job' => 'Job Title', + 'inherit' => 'មរតក', + 'job' => 'ចំណងជើងការងារ', 'last_login' => 'ការចូលចុងក្រោយ', 'last_name' => 'នាមត្រកូល', 'location' => 'ទីតាំង', - 'lock_passwords' => 'Login details cannot be changed on this installation.', + 'lock_passwords' => 'ព័ត៌មានលម្អិតនៃការចូលមិនអាចផ្លាស់ប្តូរនៅលើការដំឡើងនេះបានទេ។', 'manager' => 'អ្នកគ្រប់គ្រង', - 'managed_locations' => 'Managed Locations', - 'managed_users' => 'Managed Users', + 'managed_locations' => 'ទីតាំងគ្រប់គ្រង', + 'managed_users' => 'អ្នកប្រើប្រាស់ដែលបានគ្រប់គ្រង', 'name' => 'ឈ្មោះ', - 'nogroup' => 'No groups have been created yet. To add one, visit: ', + 'nogroup' => 'មិន​ទាន់​មាន​ក្រុម​ត្រូវ​បាន​បង្កើត​នៅ​ឡើយ​ទេ។ ដើម្បីបន្ថែមមួយ សូមចូលទៅកាន់៖ ', 'notes' => 'កំណត់ចំណាំ', - 'password_confirm' => 'Confirm Password', - 'password' => 'Password', - 'phone' => 'Phone', - 'show_current' => 'Show Current Users', - 'show_deleted' => 'Show Deleted Users', + 'password_confirm' => 'បញ្ជាក់ពាក្យសម្ងាត់', + 'password' => 'ពាក្យសម្ងាត់', + 'phone' => 'ទូរស័ព្ទ', + 'show_current' => 'បង្ហាញអ្នកប្រើប្រាស់បច្ចុប្បន្ន', + 'show_deleted' => 'បង្ហាញអ្នកប្រើប្រាស់ដែលបានលុប', 'title' => 'ចំណងជើង', - 'to_restore_them' => 'to restore them.', - 'total_assets_cost' => "Total Assets Cost", - 'updateuser' => 'Update User', + 'to_restore_them' => 'ដើម្បីស្ដារពួកគេ។', + 'total_assets_cost' => "តម្លៃទ្រព្យសកម្មសរុប", + 'updateuser' => 'ធ្វើបច្ចុប្បន្នភាពអ្នកប្រើប្រាស់', 'username' => 'ឈ្មោះ​អ្នកប្រើប្រាស់', - 'user_deleted_text' => 'This user has been marked as deleted.', - 'username_note' => '(This is used for Active Directory binding only, not for login.)', + 'user_deleted_text' => 'អ្នកប្រើប្រាស់នេះត្រូវបានសម្គាល់ថាបានលុប។', + 'username_note' => '(វា​ត្រូវ​បាន​ប្រើ​សម្រាប់​តែ​ការ​ចង Active Directory ប៉ុណ្ណោះ មិន​មែន​សម្រាប់​ចូល​ទេ។)', 'cloneuser' => 'ក្លូន អ្នកប្រើប្រាស់', - 'viewusers' => 'View Users', + 'viewusers' => 'មើលអ្នកប្រើប្រាស់', ); diff --git a/resources/lang/km-KH/general.php b/resources/lang/km-KH/general.php index 3e4ebdf66913..2ccddc2de07e 100644 --- a/resources/lang/km-KH/general.php +++ b/resources/lang/km-KH/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'កាលបរិច្ឆេទទិញ', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'អ្នកមានធាតុមួយខាងក្រោម ឬស្ទើរតែទាបជាងកម្រិតបរិមាណអប្បបរមា|អ្នកមាន៖ រាប់ធាតុខាងក្រោម ឬស្ទើរតែទាបជាងកម្រិតបរិមាណអប្បបរមា', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -279,13 +279,13 @@ 'some_features_disabled' => 'របៀបសាកល្បង៖ មុខងារមួយចំនួនត្រូវបានបិទសម្រាប់ការដំឡើងនេះ។', 'site_name' => 'ឈ្មោះ​វេ​ប​សាយ', 'state' => 'រដ្ឋ', - 'status_labels' => 'Status Labels', + 'status_labels' => 'ស្លាកស្ថានភាព', 'status_label' => 'Status Label', 'status' => 'ស្ថានភាព', 'accept_eula' => 'ទទួលយកកិច្ចព្រមព្រៀង', 'show_or_hide_eulas' => 'Show/Hide EULAs', 'supplier' => 'អ្នកផ្គត់ផ្គង់', - 'suppliers' => 'Suppliers', + 'suppliers' => 'អ្នកផ្គត់ផ្គង់ច្រើន', 'sure_to_delete' => 'តើអ្នកប្រាកដថាចង់លុប', 'sure_to_delete_var' => 'តើអ្នកប្រាកដថាចង់លុប :item មែនទេ?', 'delete_what' => 'Delete :item', @@ -341,7 +341,7 @@ 'hide_help' => 'Hide help', 'view_all' => 'view all', 'hide_deleted' => 'Hide Deleted', - 'email' => 'Email', + 'email' => 'អ៊ីមែល', 'do_not_change' => 'Do not change', 'bug_report' => 'Report a bug', 'user_manual' => 'User\'s Manual', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/km-KH/localizations.php b/resources/lang/km-KH/localizations.php index ddfe79601ac2..31f700c6cf34 100644 --- a/resources/lang/km-KH/localizations.php +++ b/resources/lang/km-KH/localizations.php @@ -2,17 +2,17 @@ return [ - 'select_language' => 'Select a Language', + 'select_language' => 'ជ្រើសរើសភាសា', 'languages' => [ 'en-US'=> 'អង់គ្លេស អាមេរិក', 'en-GB'=> 'ភាសាអង់គ្លេស ចក្រភពអង់គ្លេស', - 'am-ET' => 'Amharic', + 'am-ET' => 'អាំហារិក', 'af-ZA'=> 'អាហ្រ្វិក', 'ar-SA'=> 'ភាសាអារ៉ាប់', 'bg-BG'=> 'ប៊ុលហ្គារី', 'zh-CN'=> 'ភាសាចិនសាមញ្ញ', 'zh-TW'=> 'ភាសា​ចិន ប្រពៃណី', - 'ca-ES' => 'Catalan', + 'ca-ES' => 'កាតាឡាន', 'hr-HR'=> 'ក្រូអាត', 'cs-CZ'=> 'ឆេក', 'da-DK'=> 'ដាណឺម៉ាក', @@ -41,7 +41,7 @@ 'mi-NZ'=> 'ម៉ៅរី', 'mn-MN'=> 'ម៉ុងហ្គោលី', //'no-NO'=> 'Norwegian', - 'nb-NO'=> 'Norwegian Bokmål', + 'nb-NO'=> 'ន័រវែស Bokmål', //'nn-NO'=> 'Norwegian Nynorsk', 'fa-IR'=> 'ពែរ្ស', 'pl-PL'=> 'ប៉ូឡូញ', @@ -50,9 +50,9 @@ 'ro-RO'=> 'រ៉ូម៉ានី', 'ru-RU'=> 'រុស្សី', 'sr-CS' => 'ស៊ែប៊ី (ឡាតាំង)', - 'sk-SK'=> 'Slovak', + 'sk-SK'=> 'ស្លូវ៉ាគី', 'sl-SI'=> 'ស្លូវេនី', - 'so-SO'=> 'Somali', + 'so-SO'=> 'សូម៉ាលី', 'es-ES'=> 'ភាសាអេស្ប៉ាញ', 'es-CO'=> 'អេស្ប៉ាញ កូឡុំប៊ី', 'es-MX'=> 'អេស្ប៉ាញ ម៉ិកស៊ិក', @@ -68,7 +68,7 @@ 'zu-ZA'=> 'ហ្សូលូ', ], - 'select_country' => 'Select a Country', + 'select_country' => 'ជ្រើសរើសប្រទេសមួយ', 'countries' => [ 'AC'=>'កោះ Ascension', @@ -115,45 +115,45 @@ 'CG'=>'កុងហ្គោ (សាធារណរដ្ឋ)', 'CH'=>'ប្រទេស​ស្វីស', 'CI'=>'Côte d\'Ivoire', - 'CK'=>'Cook Islands', - 'CL'=>'Chile', - 'CM'=>'Cameroon', - 'CN'=>'People\'s Republic of China', - 'CO'=>'Colombia', - 'CR'=>'Costa Rica', - 'CU'=>'Cuba', - 'CV'=>'Cape Verde', - 'CX'=>'Christmas Island', - 'CY'=>'Cyprus', - 'CZ'=>'Czech Republic', - 'DE'=>'Germany', - 'DJ'=>'Djibouti', - 'DK'=>'Denmark', - 'DM'=>'Dominica', - 'DO'=>'Dominican Republic', - 'DZ'=>'Algeria', - 'EC'=>'Ecuador', - 'EE'=>'Estonia', - 'EG'=>'Egypt', - 'GB-ENG'=>'England', - 'ER'=>'Eritrea', - 'ES'=>'Spain', - 'ET'=>'Ethiopia', - 'EU'=>'European Union', - 'FI'=>'Finland', - 'FJ'=>'Fiji', - 'FK'=>'Falkland Islands (Malvinas)', - 'FM'=>'Micronesia, Federated States Of', - 'FO'=>'Faroe Islands', - 'FR'=>'France', - 'GA'=>'Gabon', - 'GD'=>'Grenada', - 'GE'=>'Georgia', - 'GF'=>'French Guiana', - 'GG'=>'Guernsey', - 'GH'=>'Ghana', - 'GI'=>'Gibraltar', - 'GL'=>'Greenland', + 'CK'=>'កោះឃុក', + 'CL'=>'ឈីលី', + 'CM'=>'កេមេរូន', + 'CN'=>'សាធារណរដ្ឋប្រជាមានិតចិន', + 'CO'=>'កូឡុំប៊ី', + 'CR'=>'កូស្តារីកា', + 'CU'=>'គុយបា', + 'CV'=>'ខេបវឺដេ', + 'CX'=>'កោះគ្រីស្តម៉ាស', + 'CY'=>'សាធារណរដ្ឋស៊ីពរ៍', + 'CZ'=>'សាធារណរដ្ឋឆេក', + 'DE'=>'អាល្លឺម៉ង់', + 'DJ'=>'សាធារណរដ្ឋហ្ស៊ីបូទី', + 'DK'=>'ដាណឺម៉ាក', + 'DM'=>'ចក្រភពដូមីនីកា', + 'DO'=>'សាធារណរដ្ឋដូមីនីកែន', + 'DZ'=>'អាល់ហ្សេរី', + 'EC'=>'អេក្វាឌ័រ', + 'EE'=>'អេស្ដូនី', + 'EG'=>'អេហ្ស៊ីប', + 'GB-ENG'=>'ប្រទេសអង់គ្លេស', + 'ER'=>'អេរិទ្រីយ៉ា', + 'ES'=>'អេស្ប៉ាញ', + 'ET'=>'អេត្យូពី', + 'EU'=>'សហភាពអឺរ៉ុប', + 'FI'=>'ហ្វាំងឡង់', + 'FJ'=>'ហ្វីជី', + 'FK'=>'កោះហ្វ៉ក់ឡង់ (ម៉ាល់វី)', + 'FM'=>'មីក្រូណេស៊ី រដ្ឋសហព័ន្ធនៃ', + 'FO'=>'កោះហ្វារ៉ូ', + 'FR'=>'ប្រទេសបារាំង', + 'GA'=>'ហ្កាបុង', + 'GD'=>'ហ្រ្គេណាដា', + 'GE'=>'ហ្សកហ្ស៊ី', + 'GF'=>'ហ្វ្រង់ស្វ៊ីស', + 'GG'=>'ហ្គេនស៊ី', + 'GH'=>'ហ្គាណា', + 'GI'=>'ហ្គីលប្រាត័រ', + 'GL'=>'ហ្រ្គិនលែនដ៍', 'GM'=>'Gambia', 'GN'=>'Guinea', 'GP'=>'Guadeloupe', diff --git a/resources/lang/km-KH/mail.php b/resources/lang/km-KH/mail.php index 4b03e2bcc919..1da884822e95 100644 --- a/resources/lang/km-KH/mail.php +++ b/resources/lang/km-KH/mail.php @@ -66,7 +66,7 @@ 'name' => 'ឈ្មោះ', 'new_item_checked' => 'ធាតុថ្មីត្រូវបានchecked outក្រោមឈ្មោះរបស់អ្នក ព័ត៌មានលម្អិតមាននៅខាងក្រោម។', 'notes' => 'កំណត់ចំណាំ', - 'password' => 'Password', + 'password' => 'ពាក្យសម្ងាត់', 'password_reset' => 'កំណត់ពាក្យសម្ងាត់ឡើងវិញ', 'read_the_terms' => 'សូមអានលក្ខខណ្ឌប្រើប្រាស់ខាងក្រោម។', 'read_the_terms_and_click' => 'សូមអានលក្ខខណ្ឌនៃការប្រើប្រាស់ខាងក្រោម ហើយចុចលើតំណភ្ជាប់នៅខាងក្រោម ដើម្បីបញ្ជាក់ថាអ្នកបានអាន និងយល់ព្រមតាមលក្ខខណ្ឌនៃការប្រើប្រាស់ ហើយបានទទួលទ្រព្យសកម្ម។', diff --git a/resources/lang/km-KH/table.php b/resources/lang/km-KH/table.php index 056779c4da3e..5c493f56dd9e 100644 --- a/resources/lang/km-KH/table.php +++ b/resources/lang/km-KH/table.php @@ -4,8 +4,8 @@ 'actions' => 'សកម្មភាព', 'action' => 'សកម្មភាព', - 'by' => 'By', + 'by' => 'ដោយ', 'item' => 'ធាតុ', - 'no_matching_records' => 'No matching records found', + 'no_matching_records' => 'រកមិនឃើញកំណត់ត្រាដែលត្រូវគ្នាទេ។', ); diff --git a/resources/lang/km-KH/validation.php b/resources/lang/km-KH/validation.php index 6341707914b5..5dc9c57d87c2 100644 --- a/resources/lang/km-KH/validation.php +++ b/resources/lang/km-KH/validation.php @@ -13,65 +13,65 @@ | */ - 'accepted' => 'The :attribute field must be accepted.', - 'accepted_if' => 'The :attribute field must be accepted when :other is :value.', - 'active_url' => 'The :attribute field must be a valid URL.', - 'after' => 'The :attribute field must be a date after :date.', - 'after_or_equal' => 'The :attribute field must be a date after or equal to :date.', - 'alpha' => 'The :attribute field must only contain letters.', - 'alpha_dash' => 'The :attribute field must only contain letters, numbers, dashes, and underscores.', - 'alpha_num' => 'The :attribute field must only contain letters and numbers.', - 'array' => 'The :attribute field must be an array.', - 'ascii' => 'The :attribute field must only contain single-byte alphanumeric characters and symbols.', - 'before' => 'The :attribute field must be a date before :date.', - 'before_or_equal' => 'The :attribute field must be a date before or equal to :date.', + 'accepted' => 'វាល :attribute ត្រូវតែទទួលយក។', + 'accepted_if' => 'វាល :attribute ត្រូវតែទទួលយកនៅពេលដែល :other is :value។', + 'active_url' => 'វាល :attribute ត្រូវតែជា URL ត្រឹមត្រូវ។', + 'after' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទបន្ទាប់ពី :date ។', + 'after_or_equal' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទបន្ទាប់ពី ឬស្មើនឹង :date។', + 'alpha' => 'វាល :attribute ត្រូវតែមានអក្សរតែប៉ុណ្ណោះ។', + 'alpha_dash' => 'វាល :attribute ត្រូវ​តែ​មាន​អក្សរ លេខ សញ្ញា​ចុច និង​សញ្ញា​គូស​ក្រោម។', + 'alpha_num' => 'វាល :attribute ត្រូវតែមានអក្សរ និងលេខប៉ុណ្ណោះ។', + 'array' => 'វាល :attribute ត្រូវតែជាអារេ។', + 'ascii' => 'វាល :attribute ត្រូវតែមានតួអក្សរ និងនិមិត្តសញ្ញាលេខមួយបៃប៉ុណ្ណោះ។', + 'before' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទមុន :date ។', + 'before_or_equal' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទមុន ឬស្មើនឹង :date ។', 'between' => [ - 'array' => 'The :attribute field must have between :min and :max items.', - 'file' => 'The :attribute field must be between :min and :max kilobytes.', - 'numeric' => 'The :attribute field must be between :min and :max.', - 'string' => 'The :attribute field must be between :min and :max characters.', + 'array' => 'វាល :attribute ត្រូវតែមានរវាង :min និង :max items។', + 'file' => 'វាល :attribute ត្រូវតែស្ថិតនៅចន្លោះ :min និង :max kilobytes។', + 'numeric' => 'វាល :attribute ត្រូវតែស្ថិតនៅចន្លោះ :min និង :max។', + 'string' => 'វាល :attribute ត្រូវតែស្ថិតនៅចន្លោះ :min និង :max តួអក្សរ។', ], - 'boolean' => 'The :attribute field must be true or false.', - 'can' => 'The :attribute field contains an unauthorized value.', - 'confirmed' => 'The :attribute field confirmation does not match.', - 'contains' => 'The :attribute field is missing a required value.', - 'current_password' => 'The password is incorrect.', - 'date' => 'The :attribute field must be a valid date.', - 'date_equals' => 'The :attribute field must be a date equal to :date.', - 'date_format' => 'The :attribute field must match the format :format.', - 'decimal' => 'The :attribute field must have :decimal decimal places.', - 'declined' => 'The :attribute field must be declined.', - 'declined_if' => 'The :attribute field must be declined when :other is :value.', - 'different' => 'The :attribute field and :other must be different.', - 'digits' => 'The :attribute field must be :digits digits.', - 'digits_between' => 'The :attribute field must be between :min and :max digits.', - 'dimensions' => 'The :attribute field has invalid image dimensions.', - 'distinct' => 'The :attribute field has a duplicate value.', - 'doesnt_end_with' => 'The :attribute field must not end with one of the following: :values.', - 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.', - 'email' => 'The :attribute field must be a valid email address.', - 'ends_with' => 'The :attribute field must end with one of the following: :values.', - 'enum' => 'The selected :attribute is invalid.', - 'exists' => 'The selected :attribute is invalid.', - 'extensions' => 'The :attribute field must have one of the following extensions: :values.', - 'file' => 'The :attribute field must be a file.', - 'filled' => 'The :attribute field must have a value.', + 'boolean' => 'វាល :attribute ត្រូវតែពិត ឬមិនពិត។', + 'can' => 'វាល :attribute មានតម្លៃដែលមិនមានការអនុញ្ញាត។', + 'confirmed' => 'ការបញ្ជាក់វាល :attribute មិនត្រូវគ្នាទេ។', + 'contains' => 'វាល :attribute បាត់តម្លៃដែលត្រូវការ។', + 'current_password' => 'ពាក្យ​សម្ងាត់​មិន​ត្រឹមត្រូវ។', + 'date' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវ។', + 'date_equals' => 'វាល :attribute ត្រូវតែជាកាលបរិច្ឆេទស្មើនឹង :date ។', + 'date_format' => 'វាល :attribute ត្រូវតែផ្គូផ្គងទម្រង់ :format ។', + 'decimal' => ':attribute វាលត្រូវតែមាន :ខ្ទង់ទសភាគ។', + 'declined' => 'វាល :attribute ត្រូវតែត្រូវបានបដិសេធ។', + 'declined_if' => 'វាល :attribute ត្រូវតែត្រូវបានបដិសេធនៅពេលដែល :other គឺ :value។', + 'different' => 'វាល :attribute និង :other ត្រូវតែខុសគ្នា។', + 'digits' => 'វាល :attribute ត្រូវតែជា :digits digits។', + 'digits_between' => 'វាល :attribute ត្រូវតែស្ថិតនៅចន្លោះ :min និង :max digits ។', + 'dimensions' => 'វាល :attribute មានវិមាត្ររូបភាពមិនត្រឹមត្រូវ។', + 'distinct' => 'វាល :attribute មានតម្លៃស្ទួន។', + 'doesnt_end_with' => 'វាល :attribute មិនត្រូវបញ្ចប់ដោយមួយក្នុងចំណោមខាងក្រោម៖ :values។', + 'doesnt_start_with' => 'វាល :attribute មិនត្រូវចាប់ផ្តើមដោយមួយក្នុងចំណោមខាងក្រោម: :values ​​។', + 'email' => 'វាល :attribute ត្រូវតែជាអាសយដ្ឋានអ៊ីមែលត្រឹមត្រូវ។', + 'ends_with' => 'វាល :attribute ត្រូវតែបញ្ចប់ដោយមួយក្នុងចំណោមខាងក្រោម: :values ​​។', + 'enum' => 'គុណលក្ខណៈដែលបានជ្រើសរើសគឺមិនត្រឹមត្រូវទេ។', + 'exists' => 'គុណលក្ខណៈដែលបានជ្រើសរើសគឺមិនត្រឹមត្រូវទេ។', + 'extensions' => 'វាល :attribute ត្រូវតែមានផ្នែកបន្ថែមមួយខាងក្រោម៖ :values ​​។', + 'file' => 'វាល :attribute ត្រូវតែជាឯកសារ។', + 'filled' => 'វាល :attribute ត្រូវតែមានតម្លៃ។', 'gt' => [ - 'array' => 'The :attribute field must have more than :value items.', - 'file' => 'The :attribute field must be greater than :value kilobytes.', - 'numeric' => 'The :attribute field must be greater than :value.', - 'string' => 'The :attribute field must be greater than :value characters.', + 'array' => 'វាល :attribute ត្រូវតែមានច្រើនជាង :value items។', + 'file' => 'វាល :attribute ត្រូវតែធំជាង :value kilobytes។', + 'numeric' => 'វាល :attribute ត្រូវតែធំជាង :value។', + 'string' => 'វាល :attribute ត្រូវតែធំជាង :value តួអក្សរ។', ], 'gte' => [ - 'array' => 'The :attribute field must have :value items or more.', - 'file' => 'The :attribute field must be greater than or equal to :value kilobytes.', - 'numeric' => 'The :attribute field must be greater than or equal to :value.', - 'string' => 'The :attribute field must be greater than or equal to :value characters.', + 'array' => 'វាល :attribute ត្រូវតែមាន :value items ឬច្រើនជាងនេះ។', + 'file' => 'វាល :attribute ត្រូវតែធំជាង ឬស្មើនឹង :value kilobytes។', + 'numeric' => 'វាល :attribute ត្រូវតែធំជាង ឬស្មើនឹង :value។', + 'string' => 'វាល :attribute ត្រូវតែធំជាង ឬស្មើនឹង :value តួអក្សរ។', ], - 'hex_color' => 'The :attribute field must be a valid hexadecimal color.', + 'hex_color' => 'វាល :attribute ត្រូវតែជាពណ៌គោលដប់ប្រាំមួយត្រឹមត្រូវ។', 'image' => 'The :attribute field must be an image.', 'import_field_empty' => 'The value for :fieldname cannot be null.', - 'in' => 'The selected :attribute is invalid.', + 'in' => 'គុណលក្ខណៈដែលបានជ្រើសរើសគឺមិនត្រឹមត្រូវទេ។', 'in_array' => 'The :attribute field must exist in :other.', 'integer' => 'The :attribute field must be an integer.', 'ip' => 'The :attribute field must be a valid IP address.', @@ -115,7 +115,7 @@ 'missing_with' => 'The :attribute field must be missing when :values is present.', 'missing_with_all' => 'The :attribute field must be missing when :values are present.', 'multiple_of' => 'The :attribute field must be a multiple of :value.', - 'not_in' => 'The selected :attribute is invalid.', + 'not_in' => 'គុណលក្ខណៈដែលបានជ្រើសរើសគឺមិនត្រឹមត្រូវទេ។', 'not_regex' => 'The :attribute field format is invalid.', 'numeric' => 'The :attribute field must be a number.', 'password' => [ @@ -132,46 +132,47 @@ 'present_unless' => 'The :attribute field must be present unless :other is :value.', 'present_with' => 'The :attribute field must be present when :values is present.', 'present_with_all' => 'The :attribute field must be present when :values are present.', - 'prohibited' => 'The :attribute field is prohibited.', - 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', - 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', - 'prohibits' => 'The :attribute field prohibits :other from being present.', - 'regex' => 'The :attribute field format is invalid.', - 'required' => 'The :attribute field is required.', - 'required_array_keys' => 'The :attribute field must contain entries for: :values.', - 'required_if' => 'The :attribute field is required when :other is :value.', - 'required_if_accepted' => 'The :attribute field is required when :other is accepted.', - 'required_if_declined' => 'The :attribute field is required when :other is declined.', - 'required_unless' => 'The :attribute field is required unless :other is in :values.', - 'required_with' => 'The :attribute field is required when :values is present.', - 'required_with_all' => 'The :attribute field is required when :values are present.', - 'required_without' => 'The :attribute field is required when :values is not present.', - 'required_without_all' => 'The :attribute field is required when none of :values are present.', - 'same' => 'The :attribute field must match :other.', + 'prohibited' => 'វាល :attribute ត្រូវបានហាមឃាត់។', + 'prohibited_if' => 'វាល :attribute ត្រូវបានហាមឃាត់នៅពេលដែល :other is :value។', + 'prohibited_unless' => 'វាល :attribute ត្រូវបានហាមឃាត់ លុះត្រាតែ :other ស្ថិតនៅក្នុង :values។', + 'prohibits' => 'វាល :attribute ហាមឃាត់ : ផ្សេងទៀតពីការមានវត្តមាន។', + 'regex' => 'ទម្រង់វាល :attribute គឺមិនត្រឹមត្រូវទេ។', + 'required' => 'វាល :attribute ត្រូវបានទាមទារ។', + 'required_array_keys' => 'វាល :attribute ត្រូវតែមានធាតុសម្រាប់: :values ​​។', + 'required_if' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :other is :value។', + 'required_if_accepted' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :other ត្រូវបានទទួលយក។', + 'required_if_declined' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :other ត្រូវបានបដិសេធ។', + 'required_unless' => 'វាល :attribute គឺត្រូវបានទាមទារ លុះត្រាតែ :other ស្ថិតនៅក្នុង :values។', + 'required_with' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :values ​​មានវត្តមាន។', + 'required_with_all' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :values ​​មានវត្តមាន។', + 'required_without' => 'វាល :attribute ត្រូវបានទាមទារនៅពេលដែល :values ​​មិនមានវត្តមាន។', + 'required_without_all' => 'វាល :attribute គឺត្រូវបានទាមទារនៅពេលដែលគ្មាន :values ​​មានវត្តមាន។', + 'same' => 'វាល :attribute ត្រូវតែផ្គូផ្គង :other ។', 'size' => [ - 'array' => 'The :attribute field must contain :size items.', - 'file' => 'The :attribute field must be :size kilobytes.', - 'numeric' => 'The :attribute field must be :size.', - 'string' => 'The :attribute field must be :size characters.', + 'array' => 'វាល :attribute ត្រូវតែមានធាតុ :size ។', + 'file' => 'វាល :attribute ត្រូវតែជា :size kilobytes។', + 'numeric' => 'វាល :attribute ត្រូវតែជា :size ។', + 'string' => 'វាល :attribute ត្រូវតែជា :size តួអក្សរ។', ], - 'starts_with' => 'The :attribute field must start with one of the following: :values.', - 'string' => 'The :attribute must be a string.', - 'two_column_unique_undeleted' => 'The :attribute must be unique across :table1 and :table2. ', - 'unique_undeleted' => 'The :attribute must be unique.', - 'non_circular' => 'The :attribute must not create a circular reference.', - 'not_array' => ':attribute cannot be an array.', - 'disallow_same_pwd_as_user_fields' => 'Password cannot be the same as the username.', - 'letters' => 'Password must contain at least one letter.', - 'numbers' => 'Password must contain at least one number.', - 'case_diff' => 'Password must use mixed case.', - 'symbols' => 'Password must contain symbols.', - 'timezone' => 'The :attribute field must be a valid timezone.', - 'unique' => 'The :attribute has already been taken.', - 'uploaded' => 'The :attribute failed to upload.', - 'uppercase' => 'The :attribute field must be uppercase.', - 'url' => 'The :attribute field must be a valid URL.', - 'ulid' => 'The :attribute field must be a valid ULID.', - 'uuid' => 'The :attribute field must be a valid UUID.', + 'starts_with' => 'វាល :attribute ត្រូវតែចាប់ផ្តើមដោយមួយក្នុងចំណោមខាងក្រោម: :values ​​។', + 'string' => 'គុណលក្ខណៈ : ត្រូវតែជាខ្សែអក្សរ។', + 'two_column_unique_undeleted' => ':attribute ត្រូវតែមានតែមួយគត់នៅទូទាំង :table1 និង :table2។ ', + 'unique_undeleted' => 'គុណលក្ខណៈ : ត្រូវតែមានតែមួយគត់។', + 'non_circular' => ':attribute មិនត្រូវបង្កើតសេចក្តីយោងរាងជារង្វង់ទេ។', + 'not_array' => ':attribute មិនអាចជាអារេបានទេ។', + 'disallow_same_pwd_as_user_fields' => 'ពាក្យ​សម្ងាត់​មិន​អាច​ដូច​គ្នា​នឹង​ឈ្មោះ​អ្នក​ប្រើ​ទេ។', + 'letters' => 'ពាក្យសម្ងាត់ត្រូវតែមានយ៉ាងហោចណាស់មួយអក្សរ។', + 'numbers' => 'ពាក្យសម្ងាត់ត្រូវតែមានយ៉ាងហោចណាស់មួយលេខ។', + 'case_diff' => 'ពាក្យសម្ងាត់ត្រូវតែប្រើករណីចម្រុះ។', + 'symbols' => 'ពាក្យសម្ងាត់ត្រូវតែមាននិមិត្តសញ្ញា។', + 'timezone' => 'វាល :attribute ត្រូវតែជាតំបន់ពេលវេលាត្រឹមត្រូវ។', + 'unique' => 'គុណលក្ខណៈ : ត្រូវបានគេយករួចហើយ។', + 'uploaded' => ':attribute បរាជ័យក្នុងការបង្ហោះ។', + 'uppercase' => 'វាល :attribute ត្រូវតែជាអក្សរធំ។', + 'url' => 'វាល :attribute ត្រូវតែជា URL ត្រឹមត្រូវ។', + 'ulid' => 'វាល :attribute ត្រូវតែជា ULID ត្រឹមត្រូវ។', + 'uuid' => 'វាល :attribute ត្រូវតែជា UUID ត្រឹមត្រូវ។', + /* |-------------------------------------------------------------------------- @@ -185,27 +186,34 @@ */ 'custom' => [ - 'alpha_space' => 'The :attribute field contains a character that is not allowed.', - 'email_array' => 'One or more email addresses is invalid.', - 'hashed_pass' => 'Your current password is incorrect', - 'dumbpwd' => 'That password is too common.', - 'statuslabel_type' => 'You must select a valid status label type', - 'custom_field_not_found' => 'This field does not seem to exist, please double check your custom field names.', - 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', + 'alpha_space' => 'វាល :attribute មានតួអក្សរដែលមិនត្រូវបានអនុញ្ញាត។', + 'email_array' => 'អាសយដ្ឋានអ៊ីមែលមួយ ឬច្រើនមិនត្រឹមត្រូវទេ។', + 'hashed_pass' => 'ពាក្យសម្ងាត់បច្ចុប្បន្នរបស់អ្នកមិនត្រឹមត្រូវទេ។', + 'dumbpwd' => 'ពាក្យសម្ងាត់នោះជារឿងធម្មតាពេកហើយ។', + 'statuslabel_type' => 'អ្នកត្រូវតែជ្រើសរើសប្រភេទស្លាកស្ថានភាពត្រឹមត្រូវ។', + 'custom_field_not_found' => 'វាលនេះហាក់ដូចជាមិនមានទេ សូមពិនិត្យមើលឈ្មោះវាលផ្ទាល់ខ្លួនរបស់អ្នកពីរដង។', + 'custom_field_not_found_on_model' => 'វាលនេះហាក់ដូចជាមាន ប៉ុន្តែមិនមាននៅលើសំណុំវាលរបស់ Asset Model នេះទេ។', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. - 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', - 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', - 'expiration_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', - 'termination_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', - 'expected_checkin.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', - 'start_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', - 'end_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', + 'purchase_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', + 'last_audit_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD hh:mm:ss', + 'expiration_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', + 'termination_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', + 'expected_checkin.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', + 'start_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', + 'end_date.date_format' => ':attribute ត្រូវតែជាកាលបរិច្ឆេទត្រឹមត្រូវក្នុងទម្រង់ YYYY-MM-DD', 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ko-KR/admin/hardware/message.php b/resources/lang/ko-KR/admin/hardware/message.php index 0b2be615d4b1..4d98bdce6200 100644 --- a/resources/lang/ko-KR/admin/hardware/message.php +++ b/resources/lang/ko-KR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => '자산이 생성되지 않았습니다. 다시 시도해 주세요. :(', 'success' => '자산이 생성되었습니다. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => '목록에서 자산을 하나 이상 선택해야 합니다.', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => '자산이 반입되지 않았습니다. 다시 시도해 주세요.', 'success' => '자산이 반입되었습니다.', diff --git a/resources/lang/ko-KR/admin/settings/general.php b/resources/lang/ko-KR/admin/settings/general.php index 749fe3fd4f33..f1e1f810f57a 100644 --- a/resources/lang/ko-KR/admin/settings/general.php +++ b/resources/lang/ko-KR/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ko-KR/general.php b/resources/lang/ko-KR/general.php index 9f30a8bca9b3..a94be98ce210 100644 --- a/resources/lang/ko-KR/general.php +++ b/resources/lang/ko-KR/general.php @@ -230,7 +230,7 @@ 'purchase_date' => '구매 일자', 'qty' => '수량', 'quantity' => '수량', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => '사용 준비', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ko-KR/validation.php b/resources/lang/ko-KR/validation.php index 5e61b80ffc1e..4cbc63b9bdc5 100644 --- a/resources/lang/ko-KR/validation.php +++ b/resources/lang/ko-KR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/lt-LT/admin/hardware/form.php b/resources/lang/lt-LT/admin/hardware/form.php index bb869125ac20..4bc236c2cc9e 100644 --- a/resources/lang/lt-LT/admin/hardware/form.php +++ b/resources/lang/lt-LT/admin/hardware/form.php @@ -55,7 +55,7 @@ 'asset_location_update_default' => 'Atnaujinti tik numatytąją vietą', 'asset_location_update_actual' => 'Atnaujinti tik faktinę vietą', 'asset_not_deployable' => 'Turto būsena netinkama išdavimui, todėl šis turtas negali būti išduotas.', - 'asset_not_deployable_checkin' => 'That asset status is not deployable. Using this status label will checkin the asset.', + 'asset_not_deployable_checkin' => 'Turto su šia būsenos žyma išduoti negalima. Nustačius šią būsenos žymą, turtas bus paimtas.', 'asset_deployable' => 'Turto būsena tinkama išdavimui, todėl šis turtas gali būti išduotas.', 'processing_spinner' => 'Apdorojama... (Dideliems failams gali šiek tiek užtrukti)', 'optional_infos' => 'Papildoma informacija', diff --git a/resources/lang/lt-LT/admin/hardware/message.php b/resources/lang/lt-LT/admin/hardware/message.php index effc81d37d08..023f616220d7 100644 --- a/resources/lang/lt-LT/admin/hardware/message.php +++ b/resources/lang/lt-LT/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Turto sukurti nepavyko, bandykite dar kartą.', 'success' => 'Turtas sukurtas sėkmingai.', 'success_linked' => 'Turtas su žyma :tag sukurtas sėkmingai. Spustelėkite čia, kad peržiūrėtumėte.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Turite pasirinkti bent vieną turto vienetą iš sąrašo', ], + 'multi-checkout' => [ + 'error' => 'Turtas nebuvo išduotas, bandykite dar kartą|Turtas nebuvo išduotas, bandykite dar kartą', + 'success' => 'Turtas išduotas sėkmingai.|Turtas išduotas sėkmingai.', + ], + 'checkin' => [ 'error' => 'Turtas nebuvo paimtas, bandykite dar kartą', 'success' => 'Turtas paimtas sėkmingai.', diff --git a/resources/lang/lt-LT/admin/hardware/table.php b/resources/lang/lt-LT/admin/hardware/table.php index 5c9b863a3a6d..2302698d56d4 100644 --- a/resources/lang/lt-LT/admin/hardware/table.php +++ b/resources/lang/lt-LT/admin/hardware/table.php @@ -5,7 +5,7 @@ 'asset_tag' => 'Inventorinis numeris', 'asset_model' => 'Modelis', 'assigned_to' => 'Išduota', - 'book_value' => 'Dabartinė reikšmė', + 'book_value' => 'Dabartinė vertė', 'change' => 'Į/Iš', 'checkout_date' => 'Išdavimo data', 'checkoutto' => 'Išduota', diff --git a/resources/lang/lt-LT/admin/settings/general.php b/resources/lang/lt-LT/admin/settings/general.php index 8965bf200558..ba26c4a1ccd3 100644 --- a/resources/lang/lt-LT/admin/settings/general.php +++ b/resources/lang/lt-LT/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Įspėjimas, kad reikia paimti', 'due_checkin_days_help' => 'Likus kiek dienų iki numatomo turto paėmimo, jis turėtų būti rodomas puslapyje „Laukia paėmimo“?', + 'no_groups' => 'Grupės dar nesukurtos. Apsilankykite Administratoriaus nustatymai > Paskyros teisių grupės, kad jų pridėtumėte.', ]; diff --git a/resources/lang/lt-LT/admin/users/message.php b/resources/lang/lt-LT/admin/users/message.php index 5aba8e184391..5143fcf45545 100644 --- a/resources/lang/lt-LT/admin/users/message.php +++ b/resources/lang/lt-LT/admin/users/message.php @@ -53,7 +53,7 @@ 'ldap_could_not_search' => 'Nepavyko paieška LDAP serveryje. Patikrinkite LDAP serverio konfigūraciją LDAP konfigūracijos faile.
LDAP serverio klaida:', 'ldap_could_not_get_entries' => 'Nepavyko gauti įrašų iš LDAP serverio. Patikrinkite LDAP serverio konfigūraciją LDAP konfigūracijos faile.
LDAP serverio klaida:', 'password_ldap' => 'Šios paskyros slaptažodį tvarko LDAP / Active Directory. Prašome susisiekti su savo IT skyriumi, kad pakeistumėte slaptažodį. ', - 'multi_company_items_assigned' => 'This user has items assigned that belong to a different company. Please check them in or edit their company.' + 'multi_company_items_assigned' => 'Šiam naudotojui yra priskirti daiktai, priklausantys kitai įmonei. Paimkite juos arba pakeiskite jų įmonę.' ), 'deletefile' => array( diff --git a/resources/lang/lt-LT/general.php b/resources/lang/lt-LT/general.php index 0d7a7eca4335..8a17ee5e3b4e 100644 --- a/resources/lang/lt-LT/general.php +++ b/resources/lang/lt-LT/general.php @@ -64,7 +64,7 @@ 'checkout' => 'Išduoti', 'checkouts_count' => 'Išduota', 'checkins_count' => 'Paimta', - 'checkin_and_delete' => 'Checkin and Delete', + 'checkin_and_delete' => 'Paimti ir panaikinti', 'user_requests_count' => 'Užklausos', 'city' => 'Miestas', 'click_here' => 'Paspauskite čia', @@ -205,7 +205,7 @@ 'moreinfo' => 'Išsamiau', 'name' => 'Pavadinimas', 'new_password' => 'Naujas slaptažodis', - 'next' => 'Kitas', + 'next' => 'Sekantis', 'next_audit_date' => 'Kito audito data', 'next_audit_date_help' => 'Jei organizacijoje naudojate auditą, įprastai tai yra apskaičiuojama automatiškai, atsižvelgiant į paskutinio audito datą ir dažnumą, todėl šį lauką (skiltyje Administratoriaus nustatymai > Įspėjimai) galite palikti tuščią. Jei reikia, rankiniu būdu čia galite nustatyti šią datą, tačiau ji privalo būti vėlesnė nei paskutinio audito data. ', 'audit_images_help' => 'Audito atvaizdus galite rasti turto skirtuke „Istorija“.', @@ -230,7 +230,7 @@ 'purchase_date' => 'Pirkimo data', 'qty' => 'Kiekis', 'quantity' => 'Kiekis', - 'quantity_minimum' => 'Jūs turite :count daiktus (-ų), kurių likutis artimas arba mažesnis už minimalų', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Greitas paėmimas skenuojant', 'quickscan_checkin_status' => 'Paėmimo būsena', 'ready_to_deploy' => 'Paruoštas naudojimui', @@ -283,7 +283,7 @@ 'status_label' => 'Būsenos žyma', 'status' => 'Būsena', 'accept_eula' => 'Licencinis sutikimas', - 'show_or_hide_eulas' => 'Show/Hide EULAs', + 'show_or_hide_eulas' => 'Rodyti/slėpti licencinius sutikimus', 'supplier' => 'Tiekėjas', 'suppliers' => 'Tiekėjai', 'sure_to_delete' => 'Ar tikrai norite panaikinti', @@ -362,7 +362,7 @@ 'expected_checkin' => 'Numatoma paėmimo data', 'reminder_checked_out_items' => 'Tai yra pranešimas apie jums išduotus daiktus. Jei manote, kad šis sąrašas yra netikslus (kažko trūksta ar yra priskirta tai, ko jūs manote, kad niekada nesate gavę), prašome susisiekti el. paštu su :reply_to_name šiuo adresu :reply_to_address.', 'changed' => 'Pakeista', - 'to' => 'Iki', + 'to' => 'Kam', 'report_fields_info' => '

Pasirinkite laukus, kuriuos norėtumėte įtraukti į savo ataskaitą, ir spustelėkite Generuoti. Failas (custom-asset-report-YYYY-mm-dd.csv) bus parsiųstas automatiškai ir galėsite jį atidaryti programoje „Excel“.

Jei norite eksportuoti tik tam tikrą turtą, naudokite žemiau pateiktas parinktis, kad patikslintumėte rezultatus.

', 'range' => 'Intervalas', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Įkelta miniatiūra', 'placeholder_kit' => 'Pasirinkite rinkinį', 'file_not_found' => 'Failas nerastas', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(nėra peržiūros galimybės)', 'setup' => 'Sąranka', 'pre_flight' => 'Išankstinis patikrinimas', @@ -441,8 +442,8 @@ 'toggle_navigation' => 'Rodyti/slėpti navigaciją', 'alerts' => 'Įspėjimai', 'tasks_view_all' => 'Peržiūrėti visas užduotis', - 'true' => 'Teisingas', - 'false' => 'Klaidingas', + 'true' => 'True', + 'false' => 'False', 'integration_option' => 'Integravimo galimybė', 'log_does_not_exist' => 'Nerasta atitinkančių žurnalo įrašų.', 'merge_users' => 'Sujungti naudotojus', diff --git a/resources/lang/lt-LT/mail.php b/resources/lang/lt-LT/mail.php index ef313cbc3482..f9232638d44d 100644 --- a/resources/lang/lt-LT/mail.php +++ b/resources/lang/lt-LT/mail.php @@ -62,7 +62,7 @@ 'login' => 'Prisijungti:', 'login_first_admin' => 'Prisijunkite prie savo naujojo „Snipe-IT“ diegimo naudodami žemiau pateiktus prisijungimo duomenis:', 'low_inventory_alert' => 'Yra :count daiktas, kurio atsargos yra mažesnės (arba greitais bus mažesnės) nei numatytos minimalios atsargos.|Yra :count daiktai (-ų), kurių atsargos yra mažesnės (arba greitais bus mažesnės) nei numatytos minimalios atsargos.', - 'min_QTY' => 'Min. kiekis', + 'min_QTY' => 'Mažiausias kiekis', 'name' => 'Pavadinimas', 'new_item_checked' => 'Jums buvo priskirtas naujas daiktas, išsami informacija pateikta žemiau.', 'notes' => 'Pastabos', diff --git a/resources/lang/lt-LT/validation.php b/resources/lang/lt-LT/validation.php index 04fe22d9c0ce..837be574145d 100644 --- a/resources/lang/lt-LT/validation.php +++ b/resources/lang/lt-LT/validation.php @@ -173,6 +173,7 @@ 'ulid' => ':attribute lauke turi būti galiojantis ULID identifikatorius.', 'uuid' => ':attribute lauke turi būti galiojantis UUID identifikatorius.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Panašu, kad šis laukas egzistuoja, tačiau jo nėra šio turto modelio laukų rinkinyje.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute turi būti galiojanti data YYYY-MM-DD formatu', 'last_audit_date.date_format' => ':attribute turi būti galiojanti data YYYY-MM-DD hh:mm:ss formatu', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute yra neteisingų parinkčių.', 'radio_buttons' => ':attribute yra neteisingas.', 'invalid_value_in_field' => 'Šiame lauke yra neteisinga reikšmė', + + 'ldap_username_field' => [ + 'not_in' => 'Tikėtina, kad sAMAccountName (didžiosios ir mažosios raidės) neveiks. Vietoj to turėtumėte naudoti samaccountname (mažąsias raides).' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname tikriausiai nėra tinkamas autentifikavimo filtras. Tikriausiai jums reikia uid= '], + 'ldap_filter' => ['regex' => 'Šios reikšmės tikriausiai nereikėtų rašyti skliausteliuose.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/lv-LV/admin/hardware/message.php b/resources/lang/lv-LV/admin/hardware/message.php index 96ec15725e09..a9584b1a6cd2 100644 --- a/resources/lang/lv-LV/admin/hardware/message.php +++ b/resources/lang/lv-LV/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Īpašums netika izveidots, lūdzu, mēģiniet vēlreiz. :(', 'success' => 'Īpašums veiksmīgi izveidots. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Jums jāizvēlas vismaz vienu aparatūru', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Īpašums netika reģistrēts, lūdzu, mēģiniet vēlreiz', 'success' => 'Aktīvs ir pārbaudīts veiksmīgi.', diff --git a/resources/lang/lv-LV/admin/settings/general.php b/resources/lang/lv-LV/admin/settings/general.php index 42f565a52d66..abca88bc2081 100644 --- a/resources/lang/lv-LV/admin/settings/general.php +++ b/resources/lang/lv-LV/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/lv-LV/general.php b/resources/lang/lv-LV/general.php index 548a7e5e010b..228071e8d79f 100644 --- a/resources/lang/lv-LV/general.php +++ b/resources/lang/lv-LV/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Pirkuma datums', 'qty' => 'QTY', 'quantity' => 'Daudzums', - 'quantity_minimum' => 'Jums ir :count lietas zem vai gandrīz zem minimālā daudzuma sliekšņa', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Ātrā Skenēšana un Pieņemšana', 'quickscan_checkin_status' => 'Reģistrēšanās Statuss', 'ready_to_deploy' => 'Gatavs izvietot', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Augšuplādēt sīktēlu', 'placeholder_kit' => 'Izvēlēties komplektu', 'file_not_found' => 'Fails nav atrasts', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(nav priekšskatījuma)', 'setup' => 'Iestatīt', 'pre_flight' => 'Pirmspārbaude', diff --git a/resources/lang/lv-LV/validation.php b/resources/lang/lv-LV/validation.php index acdd486299d6..579a6976402f 100644 --- a/resources/lang/lv-LV/validation.php +++ b/resources/lang/lv-LV/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/mi-NZ/admin/hardware/message.php b/resources/lang/mi-NZ/admin/hardware/message.php index 2ad819ac6ce2..3824d35b49c0 100644 --- a/resources/lang/mi-NZ/admin/hardware/message.php +++ b/resources/lang/mi-NZ/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Kaore i hangaia te tahua, tēnā whakamātau anō. :(', 'success' => 'Kua waihangatia te tahua. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Kaore i whakauruhia te taketake, me ngana ano', 'success' => 'Kua tohua te tahua.', diff --git a/resources/lang/mi-NZ/admin/settings/general.php b/resources/lang/mi-NZ/admin/settings/general.php index 07089abb5dce..eef04837cdd8 100644 --- a/resources/lang/mi-NZ/admin/settings/general.php +++ b/resources/lang/mi-NZ/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/mi-NZ/general.php b/resources/lang/mi-NZ/general.php index 18b14fe04aff..a6c2913cf842 100644 --- a/resources/lang/mi-NZ/general.php +++ b/resources/lang/mi-NZ/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Raa Hokona', 'qty' => 'QTY', 'quantity' => 'Maha', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Kua rite ki te Whakamahia', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/mi-NZ/validation.php b/resources/lang/mi-NZ/validation.php index a7d5ed47df66..ef23ddb8c80a 100644 --- a/resources/lang/mi-NZ/validation.php +++ b/resources/lang/mi-NZ/validation.php @@ -31,7 +31,7 @@ 'numeric' => 'The :attribute field must be between :min and :max.', 'string' => 'The :attribute field must be between :min and :max characters.', ], - 'boolean' => 'Ko: Ko te waahi tohu he pono, he teka ranei.', + 'boolean' => 'Ko te waahi :attribute tohu he pono, he teka ranei.', 'can' => 'The :attribute field contains an unauthorized value.', 'confirmed' => 'The :attribute field confirmation does not match.', 'contains' => 'The :attribute field is missing a required value.', @@ -51,7 +51,7 @@ 'doesnt_start_with' => 'The :attribute field must not start with one of the following: :values.', 'email' => 'The :attribute field must be a valid email address.', 'ends_with' => 'The :attribute field must end with one of the following: :values.', - 'enum' => 'Ko te mea i tīpakohia: he muhu te huanga.', + 'enum' => 'Ko te mea i :attribute he muhu te huanga.', 'exists' => 'Ko te mea i tīpakohia: he muhu te huanga.', 'extensions' => 'The :attribute field must have one of the following extensions: :values.', 'file' => 'The :attribute field must be a file.', @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/mk-MK/admin/hardware/message.php b/resources/lang/mk-MK/admin/hardware/message.php index e81fdfb03aec..14d6086593b2 100644 --- a/resources/lang/mk-MK/admin/hardware/message.php +++ b/resources/lang/mk-MK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Основното средство не е креирано, обидете се повторно. :(', 'success' => 'Основното средство е успешно креирано. :)', 'success_linked' => 'Средство со ознака :tag беше создадено успешно. Кликнете овде за да видите.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Мора да одберете најмалку едно основно средство', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Основното средство не беше раздолжено, обидете се повторно', 'success' => 'Основното средство е раздолжено.', diff --git a/resources/lang/mk-MK/admin/settings/general.php b/resources/lang/mk-MK/admin/settings/general.php index 04cc6c5a1576..3d07a0891fff 100644 --- a/resources/lang/mk-MK/admin/settings/general.php +++ b/resources/lang/mk-MK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Предупредување дека е враме за раздолжување', 'due_checkin_days_help' => 'Колку дена пред очекуваното раздолжување на средството треба да биде наведено на страницата „Време е за раздолжување“?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/mk-MK/general.php b/resources/lang/mk-MK/general.php index 36e254d06866..321a6c0a9c56 100644 --- a/resources/lang/mk-MK/general.php +++ b/resources/lang/mk-MK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Датум на набавка', 'qty' => 'Количина', 'quantity' => 'Квантитет', - 'quantity_minimum' => 'Имате :count артикли испод или скоро до нивото за минимални количини', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Брзо раздолжување', 'quickscan_checkin_status' => 'Статус на раздолжувањето', 'ready_to_deploy' => 'Подготвен за распоредување', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Прикачена слика', 'placeholder_kit' => 'Одберете комплет', 'file_not_found' => 'Датотеката не е пронајдена', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(нема преглед)', 'setup' => 'Подесувања', 'pre_flight' => 'Пред-полетување', diff --git a/resources/lang/mk-MK/validation.php b/resources/lang/mk-MK/validation.php index e45c38730da5..d12688fb85b8 100644 --- a/resources/lang/mk-MK/validation.php +++ b/resources/lang/mk-MK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Полето :attribute мора да биде валидна ULID.', 'uuid' => 'Полето :attribute мора да биде валидна UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Полето изгледа дека постои, но не е достапно во овој модел на средство\\a.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'Полето :attribute мора да биде валиден датум во YYYY-MM-DD формат', 'last_audit_date.date_format' => 'Полето :attribute мора да биде валиден датум во YYYY-MM-DD hh:mm:ss формат', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute содржи невалидни опции.', 'radio_buttons' => ':attribute не е валиден.', 'invalid_value_in_field' => 'Невалидна вредност вклучена во полето', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ml-IN/admin/hardware/message.php b/resources/lang/ml-IN/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/ml-IN/admin/hardware/message.php +++ b/resources/lang/ml-IN/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/ml-IN/admin/settings/general.php b/resources/lang/ml-IN/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/ml-IN/admin/settings/general.php +++ b/resources/lang/ml-IN/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ml-IN/general.php b/resources/lang/ml-IN/general.php index a06419aa3b5f..663cd793ecf7 100644 --- a/resources/lang/ml-IN/general.php +++ b/resources/lang/ml-IN/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ml-IN/validation.php b/resources/lang/ml-IN/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/ml-IN/validation.php +++ b/resources/lang/ml-IN/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/mn-MN/admin/hardware/message.php b/resources/lang/mn-MN/admin/hardware/message.php index 4a7a121825bd..61cfbe985ddf 100644 --- a/resources/lang/mn-MN/admin/hardware/message.php +++ b/resources/lang/mn-MN/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Акт үүсгээгүй байна, дахин оролдоно уу. :(', 'success' => 'Хөрөнгө амжилттай болсон. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Жагсаалтаас доод тал нь нэг хөрөнгийг сонгоно уу', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Хөрөнгө оруулаагүй байна, дахин оролдоно уу', 'success' => 'Хөрөнгө амжилттай шалгагдсан.', diff --git a/resources/lang/mn-MN/admin/settings/general.php b/resources/lang/mn-MN/admin/settings/general.php index 855b626c3473..88a81ec37de7 100644 --- a/resources/lang/mn-MN/admin/settings/general.php +++ b/resources/lang/mn-MN/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/mn-MN/general.php b/resources/lang/mn-MN/general.php index d73f29eae490..980d970aab82 100644 --- a/resources/lang/mn-MN/general.php +++ b/resources/lang/mn-MN/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Худалдан авах өдөр', 'qty' => 'QTY', 'quantity' => 'Тоо хэмжээ', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Хэрэглэхэд бэлэн байна', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/mn-MN/validation.php b/resources/lang/mn-MN/validation.php index 67d02554c76b..4775c1a67617 100644 --- a/resources/lang/mn-MN/validation.php +++ b/resources/lang/mn-MN/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ms-MY/admin/accessories/general.php b/resources/lang/ms-MY/admin/accessories/general.php index 47d11270e4de..0e5b843626a7 100644 --- a/resources/lang/ms-MY/admin/accessories/general.php +++ b/resources/lang/ms-MY/admin/accessories/general.php @@ -17,6 +17,6 @@ 'use_default_eula' => 'Gunakan pilihan utama lalai EULA sebaliknya.', 'use_default_eula_disabled' => 'Gunakan EULA lalai utama bukannya. Tiada seting utama EULA ditetapkan. Sila tambah satu dalam Tetapan.', 'clone' => 'Clone Accessory', - 'delete_disabled' => 'This accessory cannot be deleted yet because some items are still checked out.', + 'delete_disabled' => 'Aksesori ini tidak boleh dibuang lagi kerana ada barangan yang masih dalam daftar keluar.', ); diff --git a/resources/lang/ms-MY/admin/accessories/message.php b/resources/lang/ms-MY/admin/accessories/message.php index e4c232611ea8..159ae1d0b234 100644 --- a/resources/lang/ms-MY/admin/accessories/message.php +++ b/resources/lang/ms-MY/admin/accessories/message.php @@ -25,7 +25,7 @@ 'checkout' => array( 'error' => 'Aksesori tidak diperiksa, sila cuba lagi', 'success' => 'Aksesori diperiksa dengan jayanya.', - 'unavailable' => 'Accessory is not available for checkout. Check quantity available', + 'unavailable' => 'Tiada aksesori untuk dikeluarkan. Sila periksa kuantiti sedia ada', 'user_does_not_exist' => 'Pengguna itu tidak sah. Sila cuba lagi.', 'checkout_qty' => array( 'lte' => 'There is currently only one available accessory of this type, and you are trying to check out :checkout_qty. Please adjust the checkout quantity or the total stock of this accessory and try again.|There are :number_currently_remaining total available accessories, and you are trying to check out :checkout_qty. Please adjust the checkout quantity or the total stock of this accessory and try again.', diff --git a/resources/lang/ms-MY/admin/categories/general.php b/resources/lang/ms-MY/admin/categories/general.php index aec594f8ef38..6d7f840eda97 100644 --- a/resources/lang/ms-MY/admin/categories/general.php +++ b/resources/lang/ms-MY/admin/categories/general.php @@ -8,7 +8,7 @@ 'clone' => 'Klon Kategori', 'create' => 'Cipta Kategori', 'edit' => 'Kemaskini Kategori', - 'email_will_be_sent_due_to_global_eula' => '.', + 'email_will_be_sent_due_to_global_eula' => 'An email will be sent to the user because the global EULA is being used.', 'email_will_be_sent_due_to_category_eula' => 'An email will be sent to the user because a EULA is set for this category.', 'eula_text' => 'Kategori EULA', 'eula_text_help' => 'Bidang ini membolehkan anda menyesuaikan EULA anda untuk jenis aset tertentu. Jika anda hanya mempunyai satu EULA untuk semua aset anda, anda boleh menyemak kotak di bawah untuk menggunakan lalai utama.', diff --git a/resources/lang/ms-MY/admin/hardware/message.php b/resources/lang/ms-MY/admin/hardware/message.php index 1192234f0304..5753834c77f5 100644 --- a/resources/lang/ms-MY/admin/hardware/message.php +++ b/resources/lang/ms-MY/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Harta gagal dicipta, sila cuba semula. :(', 'success' => 'Harta berjaya dicipta. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Anda mesti memilih sekurang-kurangnya satu aset dari senarai', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Harta tidak diterima, sila cuba lagi', 'success' => 'Harta berjaya diterima.', diff --git a/resources/lang/ms-MY/admin/settings/general.php b/resources/lang/ms-MY/admin/settings/general.php index 6e3b58072eb5..5bb3f5aea53f 100644 --- a/resources/lang/ms-MY/admin/settings/general.php +++ b/resources/lang/ms-MY/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ms-MY/general.php b/resources/lang/ms-MY/general.php index aa1ed75277cd..c11180a3eea0 100644 --- a/resources/lang/ms-MY/general.php +++ b/resources/lang/ms-MY/general.php @@ -84,7 +84,7 @@ 'created_asset' => 'cipta harta', 'created_at' => 'Created At', 'created_by' => 'Created By', - 'record_created' => 'Record Created', + 'record_created' => 'Rekod dicipta', 'updated_at' => 'Dikemaskini di', 'currency' => 'RM', // this is deprecated 'current' => 'Semasa', @@ -230,7 +230,7 @@ 'purchase_date' => 'Tarikh Pembelian', 'qty' => 'QTY', 'quantity' => 'Kuantiti', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Sedia untuk diagihkan', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ms-MY/validation.php b/resources/lang/ms-MY/validation.php index 082e8b9971c0..1a0b79af544f 100644 --- a/resources/lang/ms-MY/validation.php +++ b/resources/lang/ms-MY/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/nb-NO/admin/hardware/message.php b/resources/lang/nb-NO/admin/hardware/message.php index 7da4edb61bce..05276d498c3a 100644 --- a/resources/lang/nb-NO/admin/hardware/message.php +++ b/resources/lang/nb-NO/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Eiendelen ble ikke opprettet, prøv igjen :(', 'success' => 'Eiendelen ble opprettet :)', 'success_linked' => 'Eiendelen med taggen :tag ble opprettet. Klikk her for å vise.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du må velge minst én enhet fra listen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Eiendel ble ikke sjekket inn. Prøv igjen', 'success' => 'Vellykket innsjekk av eiendel.', diff --git a/resources/lang/nb-NO/admin/settings/general.php b/resources/lang/nb-NO/admin/settings/general.php index ab23cfe635e1..9f5d0307bbbe 100644 --- a/resources/lang/nb-NO/admin/settings/general.php +++ b/resources/lang/nb-NO/admin/settings/general.php @@ -386,5 +386,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/nb-NO/general.php b/resources/lang/nb-NO/general.php index 22ed42d10a78..22df50f3a587 100644 --- a/resources/lang/nb-NO/general.php +++ b/resources/lang/nb-NO/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Innkjøpsdato', 'qty' => 'Antall', 'quantity' => 'Antall', - 'quantity_minimum' => 'Du har :count enheter under eller nesten under minimum antall', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Hurtiginnsjekk ved skanning', 'quickscan_checkin_status' => 'Innsjekkingsstatus', 'ready_to_deploy' => 'Klar for utlevering', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Opplastet miniatyrbilde', 'placeholder_kit' => 'Velg ett sett', 'file_not_found' => 'Finner ikke filen', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ingen forhåndsvisning)', 'setup' => 'Innstillinger', 'pre_flight' => 'Test', diff --git a/resources/lang/nb-NO/validation.php b/resources/lang/nb-NO/validation.php index ef4034d0b002..cddd43f9832d 100644 --- a/resources/lang/nb-NO/validation.php +++ b/resources/lang/nb-NO/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD format', 'last_audit_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute inneholder ugyldige valg.', 'radio_buttons' => ':attribute er ugyldig.', 'invalid_value_in_field' => 'Ugyldig verdi inkludert i dette feltet', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/nl-NL/admin/hardware/message.php b/resources/lang/nl-NL/admin/hardware/message.php index d32cb2dd1233..499ec034b60f 100644 --- a/resources/lang/nl-NL/admin/hardware/message.php +++ b/resources/lang/nl-NL/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset is niet aangemaakt, probeer het opnieuw :(', 'success' => 'Asset is succesvol aangemaakt. :)', 'success_linked' => 'Asset met tag :tag is succesvol gemaakt. Klik hier om te bekijken.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'U moet minstens één asset selecteren uit de lijst', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset is niet ingecheckt, probeer het opnieuw', 'success' => 'Asset is met succes ingecheckt.', diff --git a/resources/lang/nl-NL/admin/settings/general.php b/resources/lang/nl-NL/admin/settings/general.php index 66ca4095b2e2..2963e677658d 100644 --- a/resources/lang/nl-NL/admin/settings/general.php +++ b/resources/lang/nl-NL/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Waarschuwing voor aankomende Checkin', 'due_checkin_days_help' => 'Hoeveel dagen vóór de verwachte check-in van een product moet het worden weergegeven op de pagina "Waarschuwing voor aankomende Check-in"?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/nl-NL/general.php b/resources/lang/nl-NL/general.php index 4e8d2e05af66..d9dd671ddc10 100644 --- a/resources/lang/nl-NL/general.php +++ b/resources/lang/nl-NL/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Aankoopdatum', 'qty' => 'Stks', 'quantity' => 'Aantal', - 'quantity_minimum' => 'Je hebt :count items onder of bijna onder de minimale hoeveelheid', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Snelle Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Klaar voor uitgifte', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Upload mini-afbeelding', 'placeholder_kit' => 'Selecteer een set', 'file_not_found' => 'Bestand niet gevonden', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(geen voorbeeld)', 'setup' => 'Installeren', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/nl-NL/validation.php b/resources/lang/nl-NL/validation.php index 94c759fc944b..afc3400d1ae3 100644 --- a/resources/lang/nl-NL/validation.php +++ b/resources/lang/nl-NL/validation.php @@ -173,6 +173,7 @@ 'ulid' => ':attribute veld moet een geldige ULID zijn.', 'uuid' => ':attribute veld moet een geldige UUID zijn.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Dit veld lijkt te bestaan, maar is niet beschikbaar in de veldset van dit Asset Model.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute moet een geldige datum zijn in JJJJ-MM-DD formaat', 'last_audit_date.date_format' => ':attribute moet een geldige datum zijn in JJJJ-MM-DD uu:mm:ss formaat', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute bevat ongeldige opties.', 'radio_buttons' => ':attribute is ongeldig.', 'invalid_value_in_field' => 'Ongeldige waarde ingevoerd in dit veld', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/nn-NO/admin/hardware/message.php b/resources/lang/nn-NO/admin/hardware/message.php index 7da4edb61bce..05276d498c3a 100644 --- a/resources/lang/nn-NO/admin/hardware/message.php +++ b/resources/lang/nn-NO/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Eiendelen ble ikke opprettet, prøv igjen :(', 'success' => 'Eiendelen ble opprettet :)', 'success_linked' => 'Eiendelen med taggen :tag ble opprettet. Klikk her for å vise.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du må velge minst én enhet fra listen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Eiendel ble ikke sjekket inn. Prøv igjen', 'success' => 'Vellykket innsjekk av eiendel.', diff --git a/resources/lang/nn-NO/admin/settings/general.php b/resources/lang/nn-NO/admin/settings/general.php index ab23cfe635e1..9f5d0307bbbe 100644 --- a/resources/lang/nn-NO/admin/settings/general.php +++ b/resources/lang/nn-NO/admin/settings/general.php @@ -386,5 +386,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/nn-NO/general.php b/resources/lang/nn-NO/general.php index 22ed42d10a78..22df50f3a587 100644 --- a/resources/lang/nn-NO/general.php +++ b/resources/lang/nn-NO/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Innkjøpsdato', 'qty' => 'Antall', 'quantity' => 'Antall', - 'quantity_minimum' => 'Du har :count enheter under eller nesten under minimum antall', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Hurtiginnsjekk ved skanning', 'quickscan_checkin_status' => 'Innsjekkingsstatus', 'ready_to_deploy' => 'Klar for utlevering', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Opplastet miniatyrbilde', 'placeholder_kit' => 'Velg ett sett', 'file_not_found' => 'Finner ikke filen', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ingen forhåndsvisning)', 'setup' => 'Innstillinger', 'pre_flight' => 'Test', diff --git a/resources/lang/nn-NO/validation.php b/resources/lang/nn-NO/validation.php index ef4034d0b002..cddd43f9832d 100644 --- a/resources/lang/nn-NO/validation.php +++ b/resources/lang/nn-NO/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD format', 'last_audit_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute inneholder ugyldige valg.', 'radio_buttons' => ':attribute er ugyldig.', 'invalid_value_in_field' => 'Ugyldig verdi inkludert i dette feltet', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/no-NO/admin/hardware/message.php b/resources/lang/no-NO/admin/hardware/message.php index 7da4edb61bce..05276d498c3a 100644 --- a/resources/lang/no-NO/admin/hardware/message.php +++ b/resources/lang/no-NO/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Eiendelen ble ikke opprettet, prøv igjen :(', 'success' => 'Eiendelen ble opprettet :)', 'success_linked' => 'Eiendelen med taggen :tag ble opprettet. Klikk her for å vise.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du må velge minst én enhet fra listen', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Eiendel ble ikke sjekket inn. Prøv igjen', 'success' => 'Vellykket innsjekk av eiendel.', diff --git a/resources/lang/no-NO/admin/settings/general.php b/resources/lang/no-NO/admin/settings/general.php index ab23cfe635e1..9f5d0307bbbe 100644 --- a/resources/lang/no-NO/admin/settings/general.php +++ b/resources/lang/no-NO/admin/settings/general.php @@ -386,5 +386,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/no-NO/general.php b/resources/lang/no-NO/general.php index 22ed42d10a78..22df50f3a587 100644 --- a/resources/lang/no-NO/general.php +++ b/resources/lang/no-NO/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Innkjøpsdato', 'qty' => 'Antall', 'quantity' => 'Antall', - 'quantity_minimum' => 'Du har :count enheter under eller nesten under minimum antall', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Hurtiginnsjekk ved skanning', 'quickscan_checkin_status' => 'Innsjekkingsstatus', 'ready_to_deploy' => 'Klar for utlevering', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Opplastet miniatyrbilde', 'placeholder_kit' => 'Velg ett sett', 'file_not_found' => 'Finner ikke filen', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ingen forhåndsvisning)', 'setup' => 'Innstillinger', 'pre_flight' => 'Test', diff --git a/resources/lang/no-NO/validation.php b/resources/lang/no-NO/validation.php index ef4034d0b002..cddd43f9832d 100644 --- a/resources/lang/no-NO/validation.php +++ b/resources/lang/no-NO/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD format', 'last_audit_date.date_format' => ':attribute må være en gyldig dato i YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute inneholder ugyldige valg.', 'radio_buttons' => ':attribute er ugyldig.', 'invalid_value_in_field' => 'Ugyldig verdi inkludert i dette feltet', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/pl-PL/admin/hardware/message.php b/resources/lang/pl-PL/admin/hardware/message.php index cee9fd97109c..049bdcdbdfaf 100644 --- a/resources/lang/pl-PL/admin/hardware/message.php +++ b/resources/lang/pl-PL/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Nabytek nie został utworzony, proszę spróbować ponownie. :(', 'success' => 'Nowy nabytek został utworzony. :)', 'success_linked' => 'Zasób o tagu :tag został utworzony pomyślnie. Kliknij tutaj, aby wyświetlić.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Musisz wybrać co najmniej jeden zasób z listy', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Nie można przypisać nabytku/zasobu, proszę spróbować ponownie', 'success' => 'Nabytek/zasób przypisany.', diff --git a/resources/lang/pl-PL/admin/settings/general.php b/resources/lang/pl-PL/admin/settings/general.php index 4f9849ee0760..6994edfcb03e 100644 --- a/resources/lang/pl-PL/admin/settings/general.php +++ b/resources/lang/pl-PL/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/pl-PL/general.php b/resources/lang/pl-PL/general.php index 159f046787dd..fa619607d456 100644 --- a/resources/lang/pl-PL/general.php +++ b/resources/lang/pl-PL/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Data zakupu', 'qty' => 'Ilość', 'quantity' => 'Ilość', - 'quantity_minimum' => 'Masz :count przedmiotów poniżej lub prawie poniżej minimalnych poziomów ilości', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Szybkie skanowanie', 'quickscan_checkin_status' => 'Status przypisania', 'ready_to_deploy' => 'Gotowe do wdrożenia', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Przesłano miniaturę', 'placeholder_kit' => 'Wybierz zestaw', 'file_not_found' => 'Nie odnaleziono pliku', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(brak podglądu)', 'setup' => 'Ustawienia', 'pre_flight' => 'Sprawdzenie', diff --git a/resources/lang/pl-PL/validation.php b/resources/lang/pl-PL/validation.php index ff42c0623427..3c0098a95d77 100644 --- a/resources/lang/pl-PL/validation.php +++ b/resources/lang/pl-PL/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute musi być prawidłową datą w formacie YYYY-MM-DD', 'last_audit_date.date_format' => ':attribute musi być prawidłową datą w formacie YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute zawiera nieprawidłowe opcje.', 'radio_buttons' => ':attribute jest nieprawidłowy.', 'invalid_value_in_field' => 'Nieprawidłowa wartość dołączona do tego pola', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/pt-BR/admin/hardware/message.php b/resources/lang/pt-BR/admin/hardware/message.php index 554e16a6d599..035ac3044b1e 100644 --- a/resources/lang/pt-BR/admin/hardware/message.php +++ b/resources/lang/pt-BR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'O ativo não foi criado, tente novamente. :(', 'success' => 'Ativo criado com sucesso. :)', 'success_linked' => 'O ativo com a tag :tag foi criado com sucesso. clique aqui para ver.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Você deve selecionar pelo menos um recurso da lista', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Ativo não foi retornado, favor tentar novamente', 'success' => 'Ativo retornado com sucesso.', diff --git a/resources/lang/pt-BR/admin/settings/general.php b/resources/lang/pt-BR/admin/settings/general.php index 2e4e9fb39a62..60a849f56696 100644 --- a/resources/lang/pt-BR/admin/settings/general.php +++ b/resources/lang/pt-BR/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Aviso de Devolução Pendente', 'due_checkin_days_help' => 'Quantos dias antes da data esperada de devolução de um ativo ele deve ser listado na página "Pendente para devolução"?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/pt-BR/general.php b/resources/lang/pt-BR/general.php index 9e96edd77ff2..7840665fec20 100644 --- a/resources/lang/pt-BR/general.php +++ b/resources/lang/pt-BR/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Data da Aquisição', 'qty' => 'Quantidade', 'quantity' => 'Quantidade', - 'quantity_minimum' => 'Você tem :count itens abaixo ou quase abaixo dos níveis de quantidade mínima', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Check-in por Escaneamento Rápido', 'quickscan_checkin_status' => 'Estado da Devolução', 'ready_to_deploy' => 'Pronto para Implantar', @@ -435,6 +435,7 @@ 'alt_uploaded_image_thumbnail' => 'Miniatura carregada', 'placeholder_kit' => 'Selecione um kit', 'file_not_found' => 'Arquivo não encontrado', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(sem visualização)', 'setup' => 'Configuração', 'pre_flight' => 'Pré-Lançamento', diff --git a/resources/lang/pt-BR/validation.php b/resources/lang/pt-BR/validation.php index 83b489112e6b..66fbdd6ea41e 100644 --- a/resources/lang/pt-BR/validation.php +++ b/resources/lang/pt-BR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'O :attribute deve ser uma data válida em formato DD-MM-YYYY', 'last_audit_date.date_format' => 'O :attribute deve ser uma data válida em formato DD-MM-YYYY hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contém opções inválidas.', 'radio_buttons' => ':attribute é inválido.', 'invalid_value_in_field' => 'Valor inválido incluído neste campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/pt-PT/admin/hardware/message.php b/resources/lang/pt-PT/admin/hardware/message.php index 1eb59290c3c6..28c70a34a8a2 100644 --- a/resources/lang/pt-PT/admin/hardware/message.php +++ b/resources/lang/pt-PT/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Não foi possível criar o Artigo. Por favor, tente novamente. :(', 'success' => 'Artigo criado com sucesso. :)', 'success_linked' => 'O ativo com a tag :tag foi criado com sucesso. clique aqui para ver.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Deve escolher pelo menos um artigo da lista', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Não foi possível devolver o artigo, por favor tente novamente', 'success' => 'Artigo devolvido com sucesso.', diff --git a/resources/lang/pt-PT/admin/settings/general.php b/resources/lang/pt-PT/admin/settings/general.php index 5b6ab621b7ce..002144850177 100644 --- a/resources/lang/pt-PT/admin/settings/general.php +++ b/resources/lang/pt-PT/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'Quantos dias antes do esperado check-in de um ativo deve ser listado na página "Due for checkin"?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/pt-PT/general.php b/resources/lang/pt-PT/general.php index f72ed3c5b3ed..27cb3f61e5f4 100644 --- a/resources/lang/pt-PT/general.php +++ b/resources/lang/pt-PT/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Data de compra', 'qty' => 'QTD', 'quantity' => 'Quantidade', - 'quantity_minimum' => 'Você tem :count itens abaixo ou quase dos níveis de quantidade mínima', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Receção Rápida', 'quickscan_checkin_status' => 'Estado da receção', 'ready_to_deploy' => 'Pronto para implementar', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Miniatura carregada', 'placeholder_kit' => 'Selecione um kit', 'file_not_found' => 'Ficheiro não encontrado', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(sem visualização)', 'setup' => 'Configuração', 'pre_flight' => 'Pré-Voo', diff --git a/resources/lang/pt-PT/validation.php b/resources/lang/pt-PT/validation.php index 34b7f1f90aec..504b761d5f12 100644 --- a/resources/lang/pt-PT/validation.php +++ b/resources/lang/pt-PT/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'O :attribute deve ser uma data válida em formato YYYY-MM-DD', 'last_audit_date.date_format' => 'O :attribute deve ser uma data válida em formato YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contém opções inválidas.', 'radio_buttons' => ':attribute é inválido.', 'invalid_value_in_field' => 'Valor inválido incluído neste campo', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ro-RO/admin/hardware/message.php b/resources/lang/ro-RO/admin/hardware/message.php index bdb45c19bbd2..6dd081517f3e 100644 --- a/resources/lang/ro-RO/admin/hardware/message.php +++ b/resources/lang/ro-RO/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Activul nu a fost creat, va rugam incercati iar. :(', 'success' => 'Activul a fost creat. :)', 'success_linked' => 'Activul cu tag-ul :tag a fost creat cu succes. Click aici pentru a vizualiza.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Trebuie să selectați cel puțin un articol din lista', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Activul nu a fost primit, va rugam incercati iar', 'success' => 'Activul a fost primit.', diff --git a/resources/lang/ro-RO/admin/settings/general.php b/resources/lang/ro-RO/admin/settings/general.php index e63a67721616..ff2546841e29 100644 --- a/resources/lang/ro-RO/admin/settings/general.php +++ b/resources/lang/ro-RO/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ro-RO/general.php b/resources/lang/ro-RO/general.php index 0de946d19042..8a84b164d518 100644 --- a/resources/lang/ro-RO/general.php +++ b/resources/lang/ro-RO/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Data cumpărării', 'qty' => 'QTY', 'quantity' => 'Cantitate', - 'quantity_minimum' => 'Ai :count articole sub sau aproape sub nivelurile minime de cantitate', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Scanare rapidă Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Gata de lansare', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Miniatură încărcată', 'placeholder_kit' => 'Selectează un kit', 'file_not_found' => 'Fișierul nu a fost găsit', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(fără previzualizare)', 'setup' => 'Configurare', 'pre_flight' => 'Debrietate', diff --git a/resources/lang/ro-RO/validation.php b/resources/lang/ro-RO/validation.php index 68e74506f24b..7a22af2ff384 100644 --- a/resources/lang/ro-RO/validation.php +++ b/resources/lang/ro-RO/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute trebuie să fie o dată validă în formatul AAAA-LL-ZZ', 'last_audit_date.date_format' => ':attribute trebuie să fie o dată validă în AAAA-LL-ZZ hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute conține opțiuni invalide.', 'radio_buttons' => ':attribute nu este valid.', 'invalid_value_in_field' => 'Valoare nevalidă inclusă în acest câmp', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ru-RU/admin/hardware/message.php b/resources/lang/ru-RU/admin/hardware/message.php index de68e15dcfb3..67523fa9ad91 100644 --- a/resources/lang/ru-RU/admin/hardware/message.php +++ b/resources/lang/ru-RU/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Актив не был создан, пожалуйста попробуйте снова. :(', 'success' => 'Актив успешно создан. :)', 'success_linked' => 'Актив с тегом :tag успешно создан. Нажмите для просмотра.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Вы должны выбрать хотя бы один актив из списка', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Актив не был отвязан, пожалуйста попробуйте снова', 'success' => 'Актив успешно отвязан.', diff --git a/resources/lang/ru-RU/admin/settings/general.php b/resources/lang/ru-RU/admin/settings/general.php index edea3a7ef8df..48e8aea03c8b 100644 --- a/resources/lang/ru-RU/admin/settings/general.php +++ b/resources/lang/ru-RU/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Предупреждение о возврате', 'due_checkin_days_help' => 'Сколько дней до ожидаемого возврата актива должно быть указано на странице «Подлежит возврату»?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ru-RU/general.php b/resources/lang/ru-RU/general.php index bc8f916a7b18..92dd807fab1b 100644 --- a/resources/lang/ru-RU/general.php +++ b/resources/lang/ru-RU/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Дата закупки', 'qty' => 'Кол-во', 'quantity' => 'Количество', - 'quantity_minimum' => ':count элемента (-ов) меньше или почти меньше порога минимального количества', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Получение быстрым сканированием', 'quickscan_checkin_status' => 'Статус получения', 'ready_to_deploy' => 'Готов к установке', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Загруженная миниатюра', 'placeholder_kit' => 'Выберите набор', 'file_not_found' => 'Файл не найден', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(без превью)', 'setup' => 'Установка', 'pre_flight' => 'Предварительные проверки', diff --git a/resources/lang/ru-RU/validation.php b/resources/lang/ru-RU/validation.php index 744aab19102e..40fbe4f3d9b0 100644 --- a/resources/lang/ru-RU/validation.php +++ b/resources/lang/ru-RU/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Поле :attribute должно быть корректным значением UUID.', 'uuid' => 'Поле :attribute должно быть корректным значением UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Это поле существует, но недоступно в наборе полей этой модели актива.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute должен быть допустимой датой в формате YYYY-MM-DD', 'last_audit_date.date_format' => ':attribute должен быть допустимой датой в формате YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute содержит недопустимые параметры.', 'radio_buttons' => ':attribute не верно.', 'invalid_value_in_field' => 'Недопустимое значение в этом поле', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/si-LK/admin/hardware/message.php b/resources/lang/si-LK/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/si-LK/admin/hardware/message.php +++ b/resources/lang/si-LK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/si-LK/admin/settings/general.php b/resources/lang/si-LK/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/si-LK/admin/settings/general.php +++ b/resources/lang/si-LK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/si-LK/general.php b/resources/lang/si-LK/general.php index 6fe834ecda75..61e62c76663e 100644 --- a/resources/lang/si-LK/general.php +++ b/resources/lang/si-LK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/si-LK/validation.php b/resources/lang/si-LK/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/si-LK/validation.php +++ b/resources/lang/si-LK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/sk-SK/admin/hardware/message.php b/resources/lang/sk-SK/admin/hardware/message.php index 6639680061ff..0b31ea17ae75 100644 --- a/resources/lang/sk-SK/admin/hardware/message.php +++ b/resources/lang/sk-SK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Majetok nebol vytvorený, prosím skúste znovu. :(', 'success' => 'Majetok bol úspešne vytvorený. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Musíte vybrať najmenej jednu položku majetku zo zoznamu', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Majetok sa nepodarilo prijať, skúste prosím znovu', 'success' => 'Majetok bol úspešne prijatý.', diff --git a/resources/lang/sk-SK/admin/settings/general.php b/resources/lang/sk-SK/admin/settings/general.php index dd7e767d29fb..aa3544cdc8a1 100644 --- a/resources/lang/sk-SK/admin/settings/general.php +++ b/resources/lang/sk-SK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/sk-SK/general.php b/resources/lang/sk-SK/general.php index 5b21862006d6..07c1c285e96c 100644 --- a/resources/lang/sk-SK/general.php +++ b/resources/lang/sk-SK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Dátum nákupu', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/sk-SK/validation.php b/resources/lang/sk-SK/validation.php index 0471be4145b6..964bf7989ba5 100644 --- a/resources/lang/sk-SK/validation.php +++ b/resources/lang/sk-SK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/sl-SI/admin/hardware/message.php b/resources/lang/sl-SI/admin/hardware/message.php index 10952eb5c744..04db90851fd2 100644 --- a/resources/lang/sl-SI/admin/hardware/message.php +++ b/resources/lang/sl-SI/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Sredstvo ni bilo ustvarjeno, poskusite znova. :(', 'success' => 'Sredstvo je uspešno ustvarjeno. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Na seznamu morate izbrati vsaj eno sredstev', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Sredstev ni bilo prevzeto, poskusite znova', 'success' => 'Sredstev je bilo uspešno prevzeta.', diff --git a/resources/lang/sl-SI/admin/settings/general.php b/resources/lang/sl-SI/admin/settings/general.php index 432176063ba8..ae92aae65ea2 100644 --- a/resources/lang/sl-SI/admin/settings/general.php +++ b/resources/lang/sl-SI/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/sl-SI/general.php b/resources/lang/sl-SI/general.php index e2ae0ec046bb..172e5634abc8 100644 --- a/resources/lang/sl-SI/general.php +++ b/resources/lang/sl-SI/general.php @@ -231,7 +231,7 @@ 'purchase_date' => 'Datum nakupa', 'qty' => 'KOLIČINA', 'quantity' => 'Količina', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Pripravljeni za uporabo', @@ -435,6 +435,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Izberi kit', 'file_not_found' => 'Datoteke ni mogoče najti', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/sl-SI/validation.php b/resources/lang/sl-SI/validation.php index a58c995a02be..8247afc07840 100644 --- a/resources/lang/sl-SI/validation.php +++ b/resources/lang/sl-SI/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/so-SO/admin/hardware/message.php b/resources/lang/so-SO/admin/hardware/message.php index ac70fa732644..f79a72454ef8 100644 --- a/resources/lang/so-SO/admin/hardware/message.php +++ b/resources/lang/so-SO/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Hantida lama abuurin, fadlan isku day mar kale. :(', 'success' => 'Hantida loo sameeyay si guul leh :)', 'success_linked' => 'Hanti leh sumad :tag si guul leh ayaa loo abuuray. Riix halkan si aad u aragto.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Waa inaad liiska ka doorataa ugu yaraan hal hanti', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Hantida lama hubin, fadlan isku day mar kale', 'success' => 'Hantida si guul leh ayaa loo hubiyay.', diff --git a/resources/lang/so-SO/admin/settings/general.php b/resources/lang/so-SO/admin/settings/general.php index f231d1ea9326..d71c00816c7e 100644 --- a/resources/lang/so-SO/admin/settings/general.php +++ b/resources/lang/so-SO/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/so-SO/general.php b/resources/lang/so-SO/general.php index e7a2a4410e71..666980e73531 100644 --- a/resources/lang/so-SO/general.php +++ b/resources/lang/so-SO/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Taariikhda Iibka', 'qty' => 'Qty', 'quantity' => 'TIRADA', - 'quantity_minimum' => 'Waxaad haysataa :count shay ka hooseeya ama ku dhawaad ​​ka hooseeya heerka tirada ugu yar', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Baaritaanka Degdegga ah ee hubinta', 'quickscan_checkin_status' => 'Xaalada hubinta', 'ready_to_deploy' => 'Diyaar u ah in la geeyo', @@ -433,6 +433,7 @@ 'alt_uploaded_image_thumbnail' => 'La soo galiyay thumbnail', 'placeholder_kit' => 'Dooro qalab', 'file_not_found' => 'Faylka lama helin', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ma jiro horudhac)', 'setup' => 'Dejinta', 'pre_flight' => 'Duulimaadka kahor', diff --git a/resources/lang/so-SO/validation.php b/resources/lang/so-SO/validation.php index 4a3aad060526..57907a7ce900 100644 --- a/resources/lang/so-SO/validation.php +++ b/resources/lang/so-SO/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ' :attribute ku waa inuu ahaado taariikh ansax ah oo qaabaysan YYY-MM-DD', 'last_audit_date.date_format' => ' :attribute ku waa inuu ahaado taariikh ansax ah oo qaabaysan YYY-MM-DD hh:mm:ss ', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/sq-AL/admin/hardware/message.php b/resources/lang/sq-AL/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/sq-AL/admin/hardware/message.php +++ b/resources/lang/sq-AL/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/sq-AL/admin/settings/general.php b/resources/lang/sq-AL/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/sq-AL/admin/settings/general.php +++ b/resources/lang/sq-AL/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/sq-AL/general.php b/resources/lang/sq-AL/general.php index 34315c99a8ce..a2a075eed00c 100644 --- a/resources/lang/sq-AL/general.php +++ b/resources/lang/sq-AL/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/sq-AL/validation.php b/resources/lang/sq-AL/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/sq-AL/validation.php +++ b/resources/lang/sq-AL/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/sr-CS/admin/hardware/message.php b/resources/lang/sr-CS/admin/hardware/message.php index 4a860abb1a14..137524b316a7 100644 --- a/resources/lang/sr-CS/admin/hardware/message.php +++ b/resources/lang/sr-CS/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Imovina, resurs nije kreiran, pokušajte ponovo. :(', 'success' => 'Imovina, resurs uspešno kreiran. :)', 'success_linked' => 'Imovina sa oznakom :tag je uspešno napravljena. Kliknite ovde za pregled.', + 'multi_success_linked' => 'Imovina sa oznakom :links je uspešno dodata.|:count imovine je uspešno dodato. :links.', + 'partial_failure' => 'Imovina nije mogla biti dodata. Razlog: :failures|:count imovine nisu mogle biti dodate. Razlozi: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Morate odabrati barem jednu imovinu s popisa', ], + 'multi-checkout' => [ + 'error' => 'Imovina nije zadužena, molim vas pokušajte ponovo|Imovine nisu zadužene, molim vas pokušajte ponovo', + 'success' => 'Imovina je uspešno zadužena.|Imovine su uspešno zadužene.', + ], + 'checkin' => [ 'error' => 'Imovina nije prijavljena. Pokušajte ponovo', 'success' => 'Imovina je uspešno prijavljena.', diff --git a/resources/lang/sr-CS/admin/settings/general.php b/resources/lang/sr-CS/admin/settings/general.php index 3077035287b6..fb93bdc34d00 100644 --- a/resources/lang/sr-CS/admin/settings/general.php +++ b/resources/lang/sr-CS/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Upozorenje da je vreme za razduženje', 'due_checkin_days_help' => 'Koliko dana ranije pre očekivanog razduženja imovine bi trebalo biti navedena u stranici "Vreme je za razduživanje"?', + 'no_groups' => 'Još uvak nisu kreirane nikakve grupe. Poseti Administrativna podešavanja > Grupe dozvola da bi dodao neku.', ]; diff --git a/resources/lang/sr-CS/general.php b/resources/lang/sr-CS/general.php index 0a5e99b919c5..01d683b6804b 100644 --- a/resources/lang/sr-CS/general.php +++ b/resources/lang/sr-CS/general.php @@ -64,7 +64,7 @@ 'checkout' => 'Checkout', 'checkouts_count' => 'Checkouts', 'checkins_count' => 'Checkins', - 'checkin_and_delete' => 'Checkin and Delete', + 'checkin_and_delete' => 'Razduži i obriši', 'user_requests_count' => 'Zahtevi', 'city' => 'Grad', 'click_here' => 'Kliknite ovde', @@ -230,7 +230,7 @@ 'purchase_date' => 'Datum kupovine', 'qty' => 'KOL', 'quantity' => 'Količina', - 'quantity_minimum' => 'Imate :stanje artikala ispod ili skoro ispod nivoa minimalne količine', + 'quantity_minimum' => 'Imate jednu stavku ispod ili gotovo ispod nivoa minimalne količine|Imate :count stavki ispod ili gotovo ispod nivoa minimalne količine', 'quickscan_checkin' => 'Brzo razduživanje', 'quickscan_checkin_status' => 'Status razduženja', 'ready_to_deploy' => 'Spremna za raspoređivanje', @@ -283,7 +283,7 @@ 'status_label' => 'Oznaka statusa', 'status' => 'Status', 'accept_eula' => 'Ugovor o prihvatanju', - 'show_or_hide_eulas' => 'Show/Hide EULAs', + 'show_or_hide_eulas' => 'Prikaži/Sakrij EULA', 'supplier' => 'Dobavljač', 'suppliers' => 'Dobavljači', 'sure_to_delete' => 'Da li ste sigurni da želite izbrisati', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Postavljena slika', 'placeholder_kit' => 'Izaberite komplet', 'file_not_found' => 'Fajl nije pronađen', + 'log_record_not_found' => 'Nije pronađen zapis za taj unos.', 'preview_not_available' => '(nema predpregleda)', 'setup' => 'Postavke', 'pre_flight' => 'Pre poletanja', diff --git a/resources/lang/sr-CS/validation.php b/resources/lang/sr-CS/validation.php index affeb676052c..86f4ef33b3ab 100644 --- a/resources/lang/sr-CS/validation.php +++ b/resources/lang/sr-CS/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'Polje :attribute mora biti ispravan ULID.', 'uuid' => 'Polje :attribute mora biti ispravan UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'Izgleda da ovo polje postoji, ali nije dostupno za grupu polja ovog modela imovine.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute mora biti ispravan datum u YYYY-MM-DD formatu', 'last_audit_date.date_format' => ':attribute mora biti ispravan datum u YYYY-MM-DD hh:mm:ss formatu', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute sadrži neispravne opcije.', 'radio_buttons' => ':attribute je neispravan.', 'invalid_value_in_field' => 'Neispravna vrednost je sadržana u ovom polju', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mala i velika slova) verovatno neće raditi. Trebalo bi da umesto toga koristite samaccountname (mala slova).' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname verovatno nije ispravan filter za autentifikaciju. Verovatno želite uid= '], + 'ldap_filter' => ['regex' => 'Ova vrednost verovatno ne bi trebalo da bude u zagradi.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/sv-SE/admin/accessories/message.php b/resources/lang/sv-SE/admin/accessories/message.php index b5b762e90ea2..ed021de5b46b 100644 --- a/resources/lang/sv-SE/admin/accessories/message.php +++ b/resources/lang/sv-SE/admin/accessories/message.php @@ -28,7 +28,7 @@ 'unavailable' => 'Tillbehöret är inte tillgängligt för utcheckning. Kontrollera antal tillgängligt', 'user_does_not_exist' => 'Användaren är ogiltig. Försök igen.', 'checkout_qty' => array( - 'lte' => 'There is currently only one available accessory of this type, and you are trying to check out :checkout_qty. Please adjust the checkout quantity or the total stock of this accessory and try again.|There are :number_currently_remaining total available accessories, and you are trying to check out :checkout_qty. Please adjust the checkout quantity or the total stock of this accessory and try again.', + 'lte' => 'Det finns för närvarande bara ett tillgängligt tillbehör av den här typen, och du försöker checka ut :checkout_qty. Vänligen justera utcheckningsantalet eller det totala lagret av detta tillbehör och försök igen.|Det finns totalt :number_currently_remaining tillgängliga tillbehör, och du försöker checka ut :checkout_qty. Vänligen justera utcheckningsantalet eller det totala lagret av detta tillbehör och försök igen.', ), ), diff --git a/resources/lang/sv-SE/admin/consumables/general.php b/resources/lang/sv-SE/admin/consumables/general.php index a98942e43c35..6fed0fb263a6 100644 --- a/resources/lang/sv-SE/admin/consumables/general.php +++ b/resources/lang/sv-SE/admin/consumables/general.php @@ -8,5 +8,5 @@ 'remaining' => 'Återstående', 'total' => 'Totalt', 'update' => 'Uppdatera förbrukningsvara', - 'inventory_warning' => 'The inventory of this consumable is below the minimum amount of :min_count', + 'inventory_warning' => 'Lagret av denna förbrukningsvara är under minimiantal :min_count', ); diff --git a/resources/lang/sv-SE/admin/consumables/message.php b/resources/lang/sv-SE/admin/consumables/message.php index 37e387db5ce4..ae656d343423 100644 --- a/resources/lang/sv-SE/admin/consumables/message.php +++ b/resources/lang/sv-SE/admin/consumables/message.php @@ -2,7 +2,7 @@ return array( - 'invalid_category_type' => 'The category must be a consumable category.', + 'invalid_category_type' => 'Kategorin måste vara en konsumtionskategori.', 'does_not_exist' => 'Förbrukningsartiklar existerar inte.', 'create' => array( diff --git a/resources/lang/sv-SE/admin/custom_fields/message.php b/resources/lang/sv-SE/admin/custom_fields/message.php index 91db3a2ef37d..e4439d86b080 100644 --- a/resources/lang/sv-SE/admin/custom_fields/message.php +++ b/resources/lang/sv-SE/admin/custom_fields/message.php @@ -5,7 +5,7 @@ 'field' => array( 'invalid' => 'Det fältet existerar inte.', 'already_added' => 'Fält som redan lagts till', - 'none_selected' => 'No field selected', + 'none_selected' => 'Inget fält valt', 'create' => array( 'error' => 'Fältet skapades inte, var vänlig försök igen.', diff --git a/resources/lang/sv-SE/admin/hardware/form.php b/resources/lang/sv-SE/admin/hardware/form.php index 2a5a3407c83c..541630daa808 100644 --- a/resources/lang/sv-SE/admin/hardware/form.php +++ b/resources/lang/sv-SE/admin/hardware/form.php @@ -39,9 +39,9 @@ 'order' => 'Order Nummer', 'qr' => 'QR-kod', 'requestable' => 'Användare kan begära denna tillgång', - 'redirect_to_all' => 'Return to all :type', - 'redirect_to_type' => 'Go to :type', - 'redirect_to_checked_out_to' => 'Go to Checked Out to', + 'redirect_to_all' => 'Tillbaka till alla :type', + 'redirect_to_type' => 'Gå till :type', + 'redirect_to_checked_out_to' => 'Gå till utcheckade till', 'select_statustype' => 'Välj Statustyp', 'serial' => 'Serienummer', 'status' => 'Status', @@ -55,7 +55,7 @@ 'asset_location_update_default' => 'Uppdatera endast standardplats', 'asset_location_update_actual' => 'Uppdatera endast faktisk plats', 'asset_not_deployable' => 'Denna tillgångs status kan inte distribueras. Denna tillgång kan inte checkas ut.', - 'asset_not_deployable_checkin' => 'That asset status is not deployable. Using this status label will checkin the asset.', + 'asset_not_deployable_checkin' => 'Denna tillgångsstatus kan inte distribueras. Användning av denna statusetikett kommer att checka in tillgången.', 'asset_deployable' => 'Denna status är distribuerbar. Denna tillgång kan checkas ut.', 'processing_spinner' => 'Bearbetar... (Detta kan ta lite tid på stora filer)', 'optional_infos' => 'Valfri information', diff --git a/resources/lang/sv-SE/admin/hardware/general.php b/resources/lang/sv-SE/admin/hardware/general.php index 1d25a2a7fc15..ea8b33a35816 100644 --- a/resources/lang/sv-SE/admin/hardware/general.php +++ b/resources/lang/sv-SE/admin/hardware/general.php @@ -15,8 +15,8 @@ 'delete_confirm' => 'Är du säker du vill radera denna tillgång?', 'edit' => 'Redigera tillgång', 'model_deleted' => 'Denna tillgångsmodell har tagits bort. Du måste återställa modellen innan du kan återställa tillgången.', - 'model_invalid' => 'This model for this asset is invalid.', - 'model_invalid_fix' => 'The asset must be updated use a valid asset model before attempting to check it in or out, or to audit it.', + 'model_invalid' => 'Denna modell för denna tillgång är ogiltig.', + 'model_invalid_fix' => 'Tillgången måste uppdateras med en giltig tillgångsmodell innan du försöker checka in eller ut den, eller för att inventera den.', 'requestable' => 'Tillgängliga', 'requested' => 'Begärda', 'not_requestable' => 'Inte begärbar', diff --git a/resources/lang/sv-SE/admin/hardware/message.php b/resources/lang/sv-SE/admin/hardware/message.php index 43ffaa96a631..c1b66dbba4f8 100644 --- a/resources/lang/sv-SE/admin/hardware/message.php +++ b/resources/lang/sv-SE/admin/hardware/message.php @@ -2,18 +2,20 @@ return [ - 'undeployable' => 'Warning: This asset has been marked as currently undeployable. If this status has changed, please update the asset status.', + 'undeployable' => 'Varning: Den här tillgången har för närvarande markerats som ej distribuerbar. Om denna status har ändrats vad god och uppdatera tillgångstatusen.', 'does_not_exist' => 'Tillgång existerar inte.', - 'does_not_exist_var'=> 'Asset with tag :asset_tag not found.', - 'no_tag' => 'No asset tag provided.', + 'does_not_exist_var'=> 'Tillgång med taggen :asset_tag hittades inte.', + 'no_tag' => 'Ingen tillgångstagg angiven.', 'does_not_exist_or_not_requestable' => 'Den tillgången finns inte eller är inte önskvärd.', 'assoc_users' => 'Denna tillgång kontrolleras för närvarande till en användare och kan inte raderas. Kontrollera tillgången först och försök sedan radera igen.', - 'warning_audit_date_mismatch' => 'This asset\'s next audit date (:next_audit_date) is before the last audit date (:last_audit_date). Please update the next audit date.', + 'warning_audit_date_mismatch' => 'Denna tillgångs nästa inventeringsdatum (:next_audit_date) är före det senaste inventeringsdatumet (:last_audit_date). Vänligen uppdatera nästa inventeringsdatum.', 'create' => [ 'error' => 'Tillgången skapades inte, försök igen. :(', 'success' => 'Asset skapades framgångsrikt. :)', 'success_linked' => 'Tillgången med taggen :tag har skapats. Klicka här för att se.', + 'multi_success_linked' => 'Tillgång med taggen :links skapades framgångsrikt.|:count tillgångar skapades framgångsrikt. :links.', + 'partial_failure' => 'En tillgång kunde inte skapas. Anledning: :failures|:count tillgångar kunde inte skapas. Anledningar: :failures', ], 'update' => [ @@ -33,7 +35,7 @@ ], 'audit' => [ - 'error' => 'Asset audit unsuccessful: :error ', + 'error' => 'Tillgångsinventeringen misslyckades: :error ', 'success' => 'Inventeringen av tillgången har loggats.', ], @@ -51,14 +53,14 @@ ], 'import' => [ - 'import_button' => 'Process Import', + 'import_button' => 'Bearbeta import', 'error' => 'Vissa objekt importerades inte korrekt.', 'errorDetail' => 'Följande objekt importerades inte på grund av fel.', 'success' => 'Din fil har importerats', 'file_delete_success' => 'Din fil har tagits bort', 'file_delete_error' => 'Filen kunde inte raderas', 'file_missing' => 'Den valda filen saknas', - 'file_already_deleted' => 'The file selected was already deleted', + 'file_already_deleted' => 'Den valda filen har redan tagits bort', 'header_row_has_malformed_characters' => 'Ett eller flera attribut i rubrikraden innehåller felaktigt formatterade UTF-8-tecken', 'content_row_has_malformed_characters' => 'Ett eller flera attribut i den första raden av innehållet innehåller felaktigt formatterade UTF-8-tecken', ], @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Du måste välja minst en tillgång från listan', ], + 'multi-checkout' => [ + 'error' => 'Tillgången har inte checkats ut, försök igen|Tillgångarna har inte checkats ut, försök igen', + 'success' => 'Utcheckningen av tillgången lyckades.|Utcheckningen av tillgångarna lyckades.', + ], + 'checkin' => [ 'error' => 'Tillgången kontrollerades inte, försök igen', 'success' => 'Asset kontrolleras framgångsrikt.', diff --git a/resources/lang/sv-SE/admin/kits/general.php b/resources/lang/sv-SE/admin/kits/general.php index ed296325e832..a978e139f585 100644 --- a/resources/lang/sv-SE/admin/kits/general.php +++ b/resources/lang/sv-SE/admin/kits/general.php @@ -47,5 +47,5 @@ 'kit_deleted' => 'Kit har tagits bort', 'kit_model_updated' => 'Modellen har uppdaterats', 'kit_model_detached' => 'Modellen har tagits bort', - 'model_already_attached' => 'Model already attached to kit', + 'model_already_attached' => 'Modellen är redan kopplad till kit', ]; diff --git a/resources/lang/sv-SE/admin/licenses/general.php b/resources/lang/sv-SE/admin/licenses/general.php index 5fa4f10dd635..b1061db3738d 100644 --- a/resources/lang/sv-SE/admin/licenses/general.php +++ b/resources/lang/sv-SE/admin/licenses/general.php @@ -14,7 +14,7 @@ 'info' => 'Licensinfo', 'license_seats' => 'Licenssäten', 'seat' => 'Sittplats', - 'seat_count' => 'Seat :count', + 'seat_count' => 'Plats :count', 'seats' => 'Säten', 'software_licenses' => 'Programvarulicenser', 'user' => 'Användare', @@ -24,12 +24,12 @@ [ 'checkin_all' => [ 'button' => 'Checka in alla platser', - 'modal' => 'This action will checkin one seat. | This action will checkin all :checkedout_seats_count seats for this license.', + 'modal' => 'Denna åtgärd checkar in en plats. | Denna åtgärd checkar in alla :checkedout_seats_count platser för denna licens.', 'enabled_tooltip' => 'Checka in ALLA platser för denna licens från både användare och tillgångar', 'disabled_tooltip' => 'Detta är inaktiverat eftersom det för närvarande inte finns några platser utcheckade', 'disabled_tooltip_reassignable' => 'Detta är inaktiverat eftersom licensen inte är omtilldelbar', 'success' => 'Licensen har checkats in! | Alla licenser har checkats in!', - 'log_msg' => 'Checked in via bulk license checkin in license GUI', + 'log_msg' => 'Incheckad via licens bulkincheckning i licens GUI', ], 'checkout_all' => [ diff --git a/resources/lang/sv-SE/admin/licenses/message.php b/resources/lang/sv-SE/admin/licenses/message.php index 735b720b7405..443bbe680d5d 100644 --- a/resources/lang/sv-SE/admin/licenses/message.php +++ b/resources/lang/sv-SE/admin/licenses/message.php @@ -44,8 +44,8 @@ 'error' => 'Det gick inte att kontrollera licensen. Var god försök igen.', 'success' => 'Licensen utcheckades framgångsrikt', 'not_enough_seats' => 'Inte tillräckligt med licensplatser tillgängliga för utcheckning', - 'mismatch' => 'The license seat provided does not match the license', - 'unavailable' => 'This seat is not available for checkout.', + 'mismatch' => 'Licensplatsen som anges matchar inte licensen', + 'unavailable' => 'Denna plats är inte tillgänglig för utcheckning.', ), 'checkin' => array( diff --git a/resources/lang/sv-SE/admin/settings/general.php b/resources/lang/sv-SE/admin/settings/general.php index d653b9a85bef..03ca5c907355 100644 --- a/resources/lang/sv-SE/admin/settings/general.php +++ b/resources/lang/sv-SE/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/sv-SE/general.php b/resources/lang/sv-SE/general.php index f83848ada962..16b3a8ebd17c 100644 --- a/resources/lang/sv-SE/general.php +++ b/resources/lang/sv-SE/general.php @@ -11,9 +11,9 @@ 'activity_report' => 'Aktivitets Rapport', 'address' => 'Adress', 'admin' => 'Administratör', - 'admin_tooltip' => 'This user has admin privileges', - 'superuser' => 'Superuser', - 'superuser_tooltip' => 'This user has superuser privileges', + 'admin_tooltip' => 'Den här användaren har administratörsrättigheter', + 'superuser' => 'Superanvändare', + 'superuser_tooltip' => 'Den här användaren har superanvändarrättigheter', 'administrator' => 'Administratör', 'add_seats' => 'Tillagda platser', 'age' => "Ålder", @@ -64,7 +64,7 @@ 'checkout' => 'Checka ut', 'checkouts_count' => 'Utregistreringar', 'checkins_count' => 'Inregristreringar', - 'checkin_and_delete' => 'Checkin and Delete', + 'checkin_and_delete' => 'Checka in och ta bort', 'user_requests_count' => 'Förfrågningar', 'city' => 'Ort', 'click_here' => 'Klicka här', @@ -78,7 +78,7 @@ 'consumables' => 'Förbrukningsmaterial', 'country' => 'Land', 'could_not_restore' => 'Fel vid återställning av :item_type: :error', - 'not_deleted' => 'The :item_type was not deleted and therefore cannot be restored', + 'not_deleted' => ':item_type blev inte borttagen och kan därför inte återställd', 'create' => 'Skapa Ny', 'created' => 'Artikel skapad', 'created_asset' => 'skapa tillgång', @@ -99,7 +99,7 @@ 'debug_warning_text' => 'Programmet körs i produktionsläge med debugging aktiverat. Detta kan avslöja känslig data om din ansökan är tillgänglig för omvärlden. Inaktivera felsökningsläge genom att ange värdet APP_DEBUG i filen .env till false.', 'delete' => 'Ta bort', 'delete_confirm' => 'Är du säker på att du vill radera: föremål?', - 'delete_confirm_no_undo' => 'Are you sure, you wish to delete :item? This cannot be undone.', + 'delete_confirm_no_undo' => 'Är du säker på att du vill ta bort :item? Detta kan inte ångras.', 'deleted' => 'Raderad', 'delete_seats' => 'Borttagna platser', 'deletion_failed' => 'Borttagning misslyckades', @@ -135,7 +135,7 @@ 'lastname_firstinitial' => 'Efternamn Första Initialen (smith_j@example.com)', 'firstinitial.lastname' => 'Första Initialen Efternamn (j.smith@example.com)', 'firstnamelastinitial' => 'Efternamn Första Initialen (janes@example.com)', - 'lastnamefirstname' => 'Last Name.First Name (smith.jane@example.com)', + 'lastnamefirstname' => 'Efternamn.Förnamn (smith.jane@example.com)', 'first_name' => 'Förnamn', 'first_name_format' => 'Förnamn (jane@example.com)', 'files' => 'Filer', @@ -157,9 +157,9 @@ 'image_delete' => 'Ta bort Bild', 'include_deleted' => 'Inkludera borttagna tillgångar', 'image_upload' => 'Ladda upp Bild', - 'filetypes_accepted_help' => 'Accepted filetype is :types. The maximum size allowed is :size.|Accepted filetypes are :types. The maximum upload size allowed is :size.', - 'filetypes_size_help' => 'The maximum upload size allowed is :size.', - 'image_filetypes_help' => 'Accepted Filetypes are jpg, webp, png, gif, svg, and avif. The maximum upload size allowed is :size.', + 'filetypes_accepted_help' => 'Tillåtna filtyper är :types. Maximalt tillåtna storlek är :size.|Tillåtna filtyper är :types. Maximalt tillåtna uppladdningsstorlek är :size.', + 'filetypes_size_help' => 'Maximalt tillåtna uppladdningsstorlek är :size.', + 'image_filetypes_help' => 'Tillåtna filtyper är jpg, webp, png, gif, svg och avif. Maximalt tillåtna uppladdningsstorlek är :size.', 'unaccepted_image_type' => 'Denna bildfil kunde inte läsas. Godkända filtyper är jpg, webp, png, gif, och svg. Filens mimetyp är: :mimetype.', 'import' => 'Importera', 'import_this_file' => 'Karta fält och bearbeta denna fil', @@ -194,7 +194,7 @@ 'logout' => 'Logga ut', 'lookup_by_tag' => 'Lookup med tillgångslabel', 'maintenances' => 'Underhåll', - 'manage_api_keys' => 'Manage API keys', + 'manage_api_keys' => 'Hantera API nycklar', 'manufacturer' => 'Tillverkare', 'manufacturers' => 'Tillverkare', 'markdown' => 'Detta fält tillåter Github smaksatt markdown.', @@ -207,8 +207,8 @@ 'new_password' => 'Nytt lösenord', 'next' => 'Nästa', 'next_audit_date' => 'Nästa inventeringsdatum', - 'next_audit_date_help' => 'If you use auditing in your organization, this is usually automatically calculated based on the asset's last audit date and audit frequency (in Admin Settings > Alerts) and you can leave this blank. You can manually set this date here if you need to, but it must be later than the last audit date. ', - 'audit_images_help' => 'You can find audit images in the asset\'s history tab.', + 'next_audit_date_help' => 'Om du använder inventering i din organisation, detta beräknas vanligtvis automatiskt baserat på tillgången's senaste inventeringsdatumet och Inventeringsintervall (i Admininställningar > Aviseringar) och du kan lämna detta tomt. Du kan manuellt ställa in detta datum här om du behöver, men det måste vara senare än det senaste inventeringsdatumet. ', + 'audit_images_help' => 'Du kan hitta bilder för inventering i tillgångens historikflik.', 'no_email' => 'Ingen e-postadress kopplad till den här användaren', 'last_audit' => 'Senaste inventeringen', 'new' => 'ny!', @@ -230,7 +230,7 @@ 'purchase_date' => 'Inköpsdatum', 'qty' => 'Antal', 'quantity' => 'Antal', - 'quantity_minimum' => 'Du har :count objekt under eller nästan under minsta kvantitet', + 'quantity_minimum' => 'Du har ett objekt under eller nästan under minsta antalsnivå|Du har :count objekt under eller nästan under minsta antalsnivå', 'quickscan_checkin' => 'Snabb incheckning', 'quickscan_checkin_status' => 'Incheckningsstatus', 'ready_to_deploy' => 'Redo att distribuera', @@ -241,21 +241,21 @@ 'restored' => 'återställd', 'restore' => 'Återställ', 'requestable_models' => 'Begärbara modeller', - 'requestable_items' => 'Requestable Items', + 'requestable_items' => 'Begärbara saker', 'requested' => 'Begärda', 'requested_date' => 'Begärt datum', 'requested_assets' => 'Begärda tillgångar', 'requested_assets_menu' => 'Begärda tillgångar', 'request_canceled' => 'Förfrågan annulleras', - 'request_item' => 'Request this item', - 'external_link_tooltip' => 'External link to', + 'request_item' => 'Begär denna artikel', + 'external_link_tooltip' => 'Extern länk till', 'save' => 'Spara', 'select_var' => 'Välj :thing... ', // this will eventually replace all of our other selects 'select' => 'Välj', 'select_all' => 'Markera alla', 'search' => 'Sök', 'select_category' => 'Välj en kategori', - 'select_datasource' => 'Select a data source', + 'select_datasource' => 'Välj en datakälla', 'select_department' => 'Välj en avdelning', 'select_depreciation' => 'Välj en avskrivningstyp', 'select_location' => 'Välj en plats', @@ -275,15 +275,15 @@ 'signed_off_by' => 'Signerad av', 'skin' => 'Skal', 'webhook_msg_note' => 'Ett meddelande kommer att skickas via webhook', - 'webhook_test_msg' => 'Oh hai! It looks like your :app integration with Snipe-IT is working!', + 'webhook_test_msg' => 'Där ser man! Ser ut som din :app integrering med Snipe-IT fungerar!', 'some_features_disabled' => 'DEMO MODE: Vissa funktioner är inaktiverade för den här installationen.', 'site_name' => 'Sidnamn', 'state' => 'stat', 'status_labels' => 'Statusetiketter', - 'status_label' => 'Status Label', + 'status_label' => 'Statusetikett', 'status' => 'Status', 'accept_eula' => 'Acceptansavtal', - 'show_or_hide_eulas' => 'Show/Hide EULAs', + 'show_or_hide_eulas' => 'Visa/Dölj EULAs', 'supplier' => 'Leverantör', 'suppliers' => 'Leverantörer', 'sure_to_delete' => 'Är du säker på att du vill radera', @@ -307,7 +307,7 @@ 'user' => 'Användare', 'accepted' => 'accepterad', 'declined' => 'tackade nej', - 'declined_note' => 'Declined Notes', + 'declined_note' => 'Nekade noteringar', 'unassigned' => 'Ej tilldelad', 'unaccepted_asset_report' => 'Oaccepterade tillgångar', 'users' => 'Användare', @@ -342,16 +342,16 @@ 'view_all' => 'visa alla', 'hide_deleted' => 'Visa Borttagna', 'email' => 'E-post', - 'do_not_change' => 'Do not change', - 'bug_report' => 'Report a bug', + 'do_not_change' => 'Ändra inte', + 'bug_report' => 'Rapportera ett fel', 'user_manual' => 'Användarmanual', 'setup_step_1' => 'Steg 1', 'setup_step_2' => 'Steg 2', 'setup_step_3' => 'Steg 3', 'setup_step_4' => 'Steg 4', 'setup_config_check' => 'Konfigurationskontroll', - 'setup_create_database' => 'Create database tables', - 'setup_create_admin' => 'Create an admin user', + 'setup_create_database' => 'Skapa databastabeller', + 'setup_create_admin' => 'Skapa admin-användare', 'setup_done' => 'Slutförd!', 'bulk_edit_about_to' => 'Du håller på att redigera följande: ', 'checked_out' => 'Låna ut', @@ -408,9 +408,9 @@ 'accessory_name' => 'Tillbehörsnamn:', 'clone_item' => 'Klona objekt', 'checkout_tooltip' => 'Låna utdetta objekt', - 'checkin_tooltip' => 'Check this item in so that it is available for re-issue, re-imaging, etc', + 'checkin_tooltip' => 'Checka in denna artikel så den blir tillgänglig för återanvändning, återbildning, osv', 'checkout_user_tooltip' => 'Låna utdetta objekt till en användare', - 'checkin_to_diff_location' => 'You can choose to check this asset in to a location other than this asset\'s default location of :default_location if one is set', + 'checkin_to_diff_location' => 'Du kan välja att checka in denna tillgång till en annan plats än tillgångens standardplats :default_location om en sådan är satt', 'maintenance_mode' => 'Tjänsten är för tillfället inte tillgänglig för systemuppdateringar. Kontrollera igen senare.', 'maintenance_mode_title' => 'Systemet är tillfälligt otillgängligt', 'ldap_import' => 'Användarlösenord bör inte hanteras av LDAP. (Detta gör att du kan skicka bortglömda lösenordsförfrågningar.)', @@ -421,19 +421,20 @@ 'bulk_soft_delete' =>'Samt ta bort dessa användare. Deras tillgångshistorik kommer att förbli intakt om inte/tills du rensar bort borttagna poster i administratörsinställningarna.', 'bulk_checkin_delete_success' => 'Dina valda användare har tagits bort och deras objekt har checkats in.', 'bulk_checkin_success' => 'Objekten för de valda användarna har checkats in.', - 'set_to_null' => 'Delete values for this selection|Delete values for all :selection_count selections ', + 'set_to_null' => 'Ta bort värden för detta val|Ta bort värden för alla :selection_count val ', 'set_users_field_to_null' => 'Ta bort :field värden för denna användare|Ta bort :field värden för alla :user_count användare ', 'na_no_purchase_date' => 'N/A - Inget inköpsdatum angivet', 'assets_by_status' => 'Tillgångar efter status', 'assets_by_status_type' => 'Tillgångar efter statustyp', 'pie_chart_type' => 'Instrumentpanelens cirkeldiagrams typ', 'hello_name' => 'Hej, :name!', - 'unaccepted_profile_warning' => 'You have one item requiring acceptance. Click here to accept or decline it | You have :count items requiring acceptance. Click here to accept or decline them', + 'unaccepted_profile_warning' => 'Du har en artikel som kräver godkännande. Klicka här för att acceptera eller avböja det | Du har :count artiklar som kräver godkännande. Klicka här för att acceptera eller avböja dem', 'start_date' => 'Startdatum', 'end_date' => 'Slutdatum', 'alt_uploaded_image_thumbnail' => 'Uppladdad miniatyrbild', 'placeholder_kit' => 'Välj ett kit', 'file_not_found' => 'Filen kan inte hittas', + 'log_record_not_found' => 'Inga poster för den loggposten hittades.', 'preview_not_available' => '(ingen förhandsgranskning)', 'setup' => 'Ställ in', 'pre_flight' => 'Förtest', @@ -511,8 +512,8 @@ 'address2' => 'Adressrad 2', 'import_note' => 'Importerad med csv importerare', ], - 'remove_customfield_association' => 'Remove this field from the fieldset. This will not delete the custom field, only this field\'s association with this fieldset.', - 'checked_out_to_fields' => 'Checked Out To Fields', + 'remove_customfield_association' => 'Ta bort detta fält från fältsamlingen. Detta kommer inte att ta bort det anpassade fältet, bara fältets association med denna fältsamling.', + 'checked_out_to_fields' => 'Utcheckade till fält', 'percent_complete' => '% slutförd', 'uploading' => 'Uppladdar... ', 'upload_error' => 'Fel vid uppladdning av fil. Kontrollera att det inte finns några tomma rader och att inga kolumnnamn dupliceras.', @@ -531,7 +532,7 @@ 'permission_denied_superuser_demo' => 'Åtkomst nekad. Du kan inte uppdatera användarinformation för superadministratörer på demo.', 'pwd_reset_not_sent' => 'Användaren är inte aktiverad, är LDAP-synkroniserad, eller har ingen e-postadress', 'error_sending_email' => 'Fel vid sändning av e-post', - 'sad_panda' => 'Sad panda. You are not authorized to do the thing. Maybe return to the dashboard, or contact your administrator.', + 'sad_panda' => 'Ledsen panda. Du har inte behörighet att göra det. Kanske återgå till instrumentpanelen eller kontakta din administratör.', 'bulk' => [ 'delete' => [ @@ -554,15 +555,15 @@ 'components' => ':count Component|:count Komponenter', ], 'more_info' => 'Mer information', - 'quickscan_bulk_help' => 'Checking this box will edit the asset record to reflect this new location. Leaving it unchecked will simply note the location in the audit log. Note that if this asset is checked out, it will not change the location of the person, asset or location it is checked out to.', - 'whoops' => 'Whoops!', - 'something_went_wrong' => 'Something went wrong with your request.', - 'close' => 'Close', + 'quickscan_bulk_help' => 'Markering av denna ruta kommer att justera tillgångshistoriken till att visa den nya platsen. Om du lämnar rutan omarkerad noteras platsen i inventeringsloggen. Observera om tillgången är utcheckad kommer inte ändringar hos personen, tillgången eller platsen att göras.', + 'whoops' => 'Hoppsan!', + 'something_went_wrong' => 'Något gick fel med din begäran.', + 'close' => 'Stäng', 'expires' => 'Utgår', - 'map_fields'=> 'Map :item_type Field', - 'remaining_var' => ':count Remaining', - 'label' => 'Label', - 'import_asset_tag_exists' => 'An asset with the asset tag :asset_tag already exists and an update was not requested. No change was made.', - 'countries_manually_entered_help' => 'Values with an asterisk (*) were manually entered and do not match existing ISO 3166 dropdown values', + 'map_fields'=> 'Koppla :item_type Fält', + 'remaining_var' => ':count Återstående', + 'label' => 'Etikett', + 'import_asset_tag_exists' => 'En tillgång med tillgångstaggen :asset_tag finns redan och en uppdatering begärdes inte. Ingen ändring gjordes.', + 'countries_manually_entered_help' => 'Värden med en asterisk (*) matades in manuellt och matchar inte befintliga ISO 3166 rullgardinsvärden', ]; diff --git a/resources/lang/sv-SE/validation.php b/resources/lang/sv-SE/validation.php index 3702af9870ba..257899a3aaae 100644 --- a/resources/lang/sv-SE/validation.php +++ b/resources/lang/sv-SE/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute måste vara ett giltigt datum i YYYY-MM-DD format', 'last_audit_date.date_format' => ':attribute måste vara ett giltigt datum i YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute innehåller ogiltiga alternativ.', 'radio_buttons' => ':attribute är ogiltigt.', 'invalid_value_in_field' => 'Ogiltigt värde som ingår i detta fält', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ta-IN/admin/hardware/message.php b/resources/lang/ta-IN/admin/hardware/message.php index 8f494058f3ff..c1551e660d68 100644 --- a/resources/lang/ta-IN/admin/hardware/message.php +++ b/resources/lang/ta-IN/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'சொத்து உருவாக்கப்படவில்லை, மீண்டும் முயற்சிக்கவும். :(', 'success' => 'சொத்து வெற்றிகரமாக உருவாக்கப்பட்டது. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'சொத்து சரிபார்க்கப்படவில்லை, மீண்டும் முயற்சிக்கவும்', 'success' => 'சொத்து வெற்றிகரமாக சரிபார்க்கப்பட்டது.', diff --git a/resources/lang/ta-IN/admin/settings/general.php b/resources/lang/ta-IN/admin/settings/general.php index 9c14e388b13c..242e04c655d7 100644 --- a/resources/lang/ta-IN/admin/settings/general.php +++ b/resources/lang/ta-IN/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ta-IN/general.php b/resources/lang/ta-IN/general.php index 8b35552860e3..162c82e6c263 100644 --- a/resources/lang/ta-IN/general.php +++ b/resources/lang/ta-IN/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'கொள்முதல் தேதி', 'qty' => 'கொத்தமல்லி', 'quantity' => 'அளவு', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'வரிசைப்படுத்த தயாராக உள்ளது', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ta-IN/validation.php b/resources/lang/ta-IN/validation.php index 897c4ac119b7..ddb17fb7f397 100644 --- a/resources/lang/ta-IN/validation.php +++ b/resources/lang/ta-IN/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/th-TH/admin/hardware/message.php b/resources/lang/th-TH/admin/hardware/message.php index 0bce00db1696..885f8455e824 100644 --- a/resources/lang/th-TH/admin/hardware/message.php +++ b/resources/lang/th-TH/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'ไม่ได้สร้างเนื้อหาโปรดลองอีกครั้ง :(', 'success' => 'สร้างเนื้อหาสำเร็จแล้ว :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'คุณต้องเลือกอย่างน้อยหนึ่งสินทรัพย์จากรายการ', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'ไม่ได้เช็คอินเนื้อหาโปรดลองอีกครั้ง', 'success' => 'ตรวจสอบเนื้อหาเรียบร้อยแล้ว', diff --git a/resources/lang/th-TH/admin/settings/general.php b/resources/lang/th-TH/admin/settings/general.php index 56426a6782bc..bef50c8d5143 100644 --- a/resources/lang/th-TH/admin/settings/general.php +++ b/resources/lang/th-TH/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/th-TH/general.php b/resources/lang/th-TH/general.php index 6be83c59baed..3ccd8508d776 100644 --- a/resources/lang/th-TH/general.php +++ b/resources/lang/th-TH/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'วันที่ซื้อ', 'qty' => 'จำนวน', 'quantity' => 'ปริมาณ', - 'quantity_minimum' => 'คุณมี :count รายการ ต่ำกว่าจำนวนขั้นต่ำที่กำหนดไว้', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'สถาณะ ส่งมอบ', 'ready_to_deploy' => 'พร้อมใช้งาน', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'ไม่พบไฟล์', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ไม่แสดงภาพ)', 'setup' => 'ติดตั้ง', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/th-TH/validation.php b/resources/lang/th-TH/validation.php index d0d2a55ddd1e..72c7d4ae52fd 100644 --- a/resources/lang/th-TH/validation.php +++ b/resources/lang/th-TH/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/tl-PH/admin/hardware/message.php b/resources/lang/tl-PH/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/tl-PH/admin/hardware/message.php +++ b/resources/lang/tl-PH/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/tl-PH/admin/settings/general.php b/resources/lang/tl-PH/admin/settings/general.php index 01b9bd4c21c8..474bc5a65d2c 100644 --- a/resources/lang/tl-PH/admin/settings/general.php +++ b/resources/lang/tl-PH/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/tl-PH/general.php b/resources/lang/tl-PH/general.php index a95143bb2258..a853b1886aa6 100644 --- a/resources/lang/tl-PH/general.php +++ b/resources/lang/tl-PH/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/tl-PH/validation.php b/resources/lang/tl-PH/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/tl-PH/validation.php +++ b/resources/lang/tl-PH/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/tr-TR/admin/hardware/message.php b/resources/lang/tr-TR/admin/hardware/message.php index dac0532309e3..78777e622e5c 100644 --- a/resources/lang/tr-TR/admin/hardware/message.php +++ b/resources/lang/tr-TR/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Demirbaş oluşturulamadı, lütfen tekrar deneyin. ', 'success' => 'Demirbaş oluşturuldu.', 'success_linked' => 'Etiketli ürün :etiket oluşturuldu. Görmek için tıklayın..', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Listeden en az bir varlık seçmelisiniz', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Demirbaş girişi yapılamadı. Lütfen tekrar deneyin', 'success' => 'Demirbaş girişi yapıldı.', diff --git a/resources/lang/tr-TR/admin/settings/general.php b/resources/lang/tr-TR/admin/settings/general.php index 198642eeedef..8326cb2c22a7 100644 --- a/resources/lang/tr-TR/admin/settings/general.php +++ b/resources/lang/tr-TR/admin/settings/general.php @@ -386,5 +386,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/tr-TR/general.php b/resources/lang/tr-TR/general.php index 6422fab7d57b..5b7c1626db2c 100644 --- a/resources/lang/tr-TR/general.php +++ b/resources/lang/tr-TR/general.php @@ -233,7 +233,7 @@ 'purchase_date' => 'Satın Alma Tarihi', 'qty' => 'Miktar', 'quantity' => 'Miktar', - 'quantity_minimum' => 'Asgari :count adet miktarın altındasınız yada neredeyse asgari miktar seviyesinin altındasınız', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Hızlı Tarama ile Giriş', 'quickscan_checkin_status' => 'Giriş Durumu', 'ready_to_deploy' => 'Atamaya Hazır', @@ -437,6 +437,7 @@ 'alt_uploaded_image_thumbnail' => 'Yüklenen küçük resim', 'placeholder_kit' => 'Bir kit seçin', 'file_not_found' => 'Dosya bulunamadı', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(ön izleme yok)', 'setup' => 'Kurulum', 'pre_flight' => 'Deneme', diff --git a/resources/lang/tr-TR/validation.php b/resources/lang/tr-TR/validation.php index 5facabb8678e..660037c7b11c 100644 --- a/resources/lang/tr-TR/validation.php +++ b/resources/lang/tr-TR/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute YYYY-MM-DD tarih formatında olmalıdır', 'last_audit_date.date_format' => ':attribute YYYY-MM-DD hh:mm:ss tarih formatında olmalıdır', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/uk-UA/admin/hardware/message.php b/resources/lang/uk-UA/admin/hardware/message.php index 0422c9741294..3dd5b07943ce 100644 --- a/resources/lang/uk-UA/admin/hardware/message.php +++ b/resources/lang/uk-UA/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Актив не був створений, будь ласка, спробуйте ще раз :(', 'success' => 'Актив успішно створений. :)', 'success_linked' => 'Активу з тегом :tag було успішно створено. Натисніть тут, щоб переглянути.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Ви повинні вибрати хоча б один медіафайл зі списку', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Актив не був перевірений, будь ласка, спробуйте ще раз', 'success' => 'Актив успішно перевірено.', diff --git a/resources/lang/uk-UA/admin/settings/general.php b/resources/lang/uk-UA/admin/settings/general.php index 5829b4d36244..7851e17aa0bd 100644 --- a/resources/lang/uk-UA/admin/settings/general.php +++ b/resources/lang/uk-UA/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/uk-UA/general.php b/resources/lang/uk-UA/general.php index 048cc7d5fb3b..a1684a308d2b 100644 --- a/resources/lang/uk-UA/general.php +++ b/resources/lang/uk-UA/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Дата покупки', 'qty' => 'К-КСТЬ', 'quantity' => 'Кількість', - 'quantity_minimum' => 'У вас є :count товарів нижче або майже нижче мінімального рівня кількості', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Швидке сканування входу', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Готовий до видачі', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Завантажений ескіз', 'placeholder_kit' => 'Оберіть комплект', 'file_not_found' => 'Файл не знайдено', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(без попереднього перегляду)', 'setup' => 'Установка', 'pre_flight' => 'Польоти', diff --git a/resources/lang/uk-UA/validation.php b/resources/lang/uk-UA/validation.php index 9d02811a4491..2861bb02cc05 100644 --- a/resources/lang/uk-UA/validation.php +++ b/resources/lang/uk-UA/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'Поле :attribute має містити коректну дату в форматі YYYY-MM-DD', 'last_audit_date.date_format' => 'Поле :attribute має містити коректну дату в форматі YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute містить неприпустимі параметри.', 'radio_buttons' => ':attribute є неприпустимим.', 'invalid_value_in_field' => 'Невірне значення включене в це поле', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/ur-PK/admin/hardware/message.php b/resources/lang/ur-PK/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/ur-PK/admin/hardware/message.php +++ b/resources/lang/ur-PK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/ur-PK/admin/settings/general.php b/resources/lang/ur-PK/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/ur-PK/admin/settings/general.php +++ b/resources/lang/ur-PK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/ur-PK/general.php b/resources/lang/ur-PK/general.php index 34315c99a8ce..a2a075eed00c 100644 --- a/resources/lang/ur-PK/general.php +++ b/resources/lang/ur-PK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/ur-PK/validation.php b/resources/lang/ur-PK/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/ur-PK/validation.php +++ b/resources/lang/ur-PK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/vi-VN/admin/hardware/message.php b/resources/lang/vi-VN/admin/hardware/message.php index 12601c260684..658fc23de204 100644 --- a/resources/lang/vi-VN/admin/hardware/message.php +++ b/resources/lang/vi-VN/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Tài sản chưa được tạo, xin vui lòng thử lại. :(', 'success' => 'Tài sản được tạo thành công. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'Bạn phải chọn ít nhất một mục trong danh sách', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Tài sản chưa được checkin, xin vui lòng thử lại', 'success' => 'Tài sản đã checkin thành công.', diff --git a/resources/lang/vi-VN/admin/settings/general.php b/resources/lang/vi-VN/admin/settings/general.php index 8c39fafe83c2..8349ab7fc39e 100644 --- a/resources/lang/vi-VN/admin/settings/general.php +++ b/resources/lang/vi-VN/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/vi-VN/general.php b/resources/lang/vi-VN/general.php index ef31bbc0a1fd..4e45ae2650d9 100644 --- a/resources/lang/vi-VN/general.php +++ b/resources/lang/vi-VN/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Ngày mua', 'qty' => 'Số lượng', 'quantity' => 'Số lượng', - 'quantity_minimum' => 'Bạn có :count các thiết bị dưới hoặc gần dưới mức số lượng tối thiểu', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quét nhanh kiểm tra đưa vào', 'quickscan_checkin_status' => 'Trạng thái kiểm tra đưa vào', 'ready_to_deploy' => 'Sẵn sàng để cấp phát', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Tải ảnh nhỏ lên', 'placeholder_kit' => 'Chọn công cụ', 'file_not_found' => 'Không tìm thấy tệp', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(không có bản xem trước)', 'setup' => 'Cài đặt', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/vi-VN/validation.php b/resources/lang/vi-VN/validation.php index 402458302d71..f2ade7ebfa92 100644 --- a/resources/lang/vi-VN/validation.php +++ b/resources/lang/vi-VN/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute phải là ngày hợp lệ ở định dạng YYYY-MM-DD', 'last_audit_date.date_format' => ':attribute phải là ngày hợp lệ ở định dạng YYYY-MM-DD hh:mm:ss', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/zh-CN/admin/hardware/message.php b/resources/lang/zh-CN/admin/hardware/message.php index d0ac7d2b9775..e03b25994eba 100644 --- a/resources/lang/zh-CN/admin/hardware/message.php +++ b/resources/lang/zh-CN/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => '资产创建失败,请重试。:(', 'success' => '资产创建成功。 :)', 'success_linked' => '带有 :tag 标签的资产已成功创建。点击此处查看。', + 'multi_success_linked' => '带有标签 :links 的资产已成功创建。| :count 个资产已成功创建。 :links。', + 'partial_failure' => '无法创建资产。原因::failures|:count 个资产无法创建。原因::failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => '您必须在这个列表中选择至少一项资产', ], + 'multi-checkout' => [ + 'error' => '资产未借出,请重试 |资产未借出,请重试', + 'success' => '资产借出成功。 |资产借出成功。', + ], + 'checkin' => [ 'error' => '资产还没有借入,请重试。', 'success' => '资产借入成功。', diff --git a/resources/lang/zh-CN/admin/settings/general.php b/resources/lang/zh-CN/admin/settings/general.php index e196c04a5190..639afeef697c 100644 --- a/resources/lang/zh-CN/admin/settings/general.php +++ b/resources/lang/zh-CN/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => '到期归还警告', 'due_checkin_days_help' => '资产应在预计归还多少天前列入“到期归还”页面中?', + 'no_groups' => '尚未创建任何群组。请访问Admin Settings > Permission Groups添加权限群组。', ]; diff --git a/resources/lang/zh-CN/general.php b/resources/lang/zh-CN/general.php index d41af25d1c9b..473cd18ca826 100644 --- a/resources/lang/zh-CN/general.php +++ b/resources/lang/zh-CN/general.php @@ -230,7 +230,7 @@ 'purchase_date' => '购买日期', 'qty' => '数量', 'quantity' => '数量', - 'quantity_minimum' => '您有 :count 件物品低于或即将低于最低数量', + 'quantity_minimum' => '您有一件物品低于或几乎低于最低数量水平|您有 :count件物品低于或几乎低于最低数量水平', 'quickscan_checkin' => '快速扫描归还', 'quickscan_checkin_status' => '归还状态', 'ready_to_deploy' => '待分配', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => '已上传缩略图', 'placeholder_kit' => '选择一个套件', 'file_not_found' => '未找到文件', + 'log_record_not_found' => '没有找到该日志条目的记录。', 'preview_not_available' => '(没有预览)', 'setup' => '设置', 'pre_flight' => '预检', diff --git a/resources/lang/zh-CN/validation.php b/resources/lang/zh-CN/validation.php index ff432614de1f..17bd33e4974c 100644 --- a/resources/lang/zh-CN/validation.php +++ b/resources/lang/zh-CN/validation.php @@ -173,6 +173,7 @@ 'ulid' => ':attribute 字段必须是个有效的 ULID。', 'uuid' => ':attribute 字段必须是一个有效的 UUID。', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => '此字段似乎存在,但在此资产型号的字段集上不可用。', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute 必须是 YYYY-MM-DD 格式的有效日期', 'last_audit_date.date_format' => ':attribute 必须是 YYYY-MM-DD hh:mm:ss 格式的有效日期', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute 包含无效的选项。', 'radio_buttons' => ':attribute 无效。', 'invalid_value_in_field' => '此字段中包含的值无效', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName(混合大小写) 可能不起作用。您应该改用samaccountname(小写)。' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname可能不是有效的身份验证过滤器。您可能需要uid= '], + 'ldap_filter' => ['regex' => '这个值可能不应该用括号括起来。'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/zh-HK/admin/hardware/message.php b/resources/lang/zh-HK/admin/hardware/message.php index 041d32f56c90..df68f28395bd 100644 --- a/resources/lang/zh-HK/admin/hardware/message.php +++ b/resources/lang/zh-HK/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Asset was not created, please try again. :(', 'success' => 'Asset created successfully. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Asset was not checked in, please try again', 'success' => 'Asset checked in successfully.', diff --git a/resources/lang/zh-HK/admin/settings/general.php b/resources/lang/zh-HK/admin/settings/general.php index 9a81886ae8f4..d656391edd5a 100644 --- a/resources/lang/zh-HK/admin/settings/general.php +++ b/resources/lang/zh-HK/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/zh-HK/general.php b/resources/lang/zh-HK/general.php index 03c9b2605116..8669921ab0ba 100644 --- a/resources/lang/zh-HK/general.php +++ b/resources/lang/zh-HK/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Purchase Date', 'qty' => 'QTY', 'quantity' => 'Quantity', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ready to Deploy', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/zh-HK/validation.php b/resources/lang/zh-HK/validation.php index 6341707914b5..7d7840eb4269 100644 --- a/resources/lang/zh-HK/validation.php +++ b/resources/lang/zh-HK/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/zh-TW/admin/hardware/message.php b/resources/lang/zh-TW/admin/hardware/message.php index c6a7d4a15efc..9a59d05767bf 100644 --- a/resources/lang/zh-TW/admin/hardware/message.php +++ b/resources/lang/zh-TW/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => '新增資產失敗,請重試。', 'success' => '新增資產成功。', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => '你必須至少選擇一項資產。', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => '繳回資產失敗,請重試。', 'success' => '繳回資產成功。', diff --git a/resources/lang/zh-TW/admin/settings/general.php b/resources/lang/zh-TW/admin/settings/general.php index 617696282fd5..6569136f3cf0 100644 --- a/resources/lang/zh-TW/admin/settings/general.php +++ b/resources/lang/zh-TW/admin/settings/general.php @@ -386,5 +386,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/zh-TW/general.php b/resources/lang/zh-TW/general.php index f03aa7b9703e..903fa8722960 100644 --- a/resources/lang/zh-TW/general.php +++ b/resources/lang/zh-TW/general.php @@ -230,7 +230,7 @@ 'purchase_date' => '採購日期', 'qty' => '數量', 'quantity' => '數量', - 'quantity_minimum' => '您有 :count 項目的數量低於或接近最小數量', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => '快速掃描歸還', 'quickscan_checkin_status' => '繳回狀態', 'ready_to_deploy' => '準備部署', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => '已上傳的縮圖', 'placeholder_kit' => '選擇一個套件', 'file_not_found' => '找不到檔案', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(無法預覽)', 'setup' => '設定', 'pre_flight' => '預先檢查', diff --git a/resources/lang/zh-TW/validation.php b/resources/lang/zh-TW/validation.php index f2aacb2a2933..78f095a33712 100644 --- a/resources/lang/zh-TW/validation.php +++ b/resources/lang/zh-TW/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => ':attribute 必須是 YYYY-MM-DD 格式的有效日期', 'last_audit_date.date_format' => ':attribute 必須是 YYYY-MM-DD hh:mm:ss 格式的有效日期', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- diff --git a/resources/lang/zu-ZA/admin/hardware/message.php b/resources/lang/zu-ZA/admin/hardware/message.php index b8680983c8b0..4a241d59de39 100644 --- a/resources/lang/zu-ZA/admin/hardware/message.php +++ b/resources/lang/zu-ZA/admin/hardware/message.php @@ -14,6 +14,8 @@ 'error' => 'Impahla ayidalwanga, sicela uzame futhi. :(', 'success' => 'Ifa lidalwe ngempumelelo. :)', 'success_linked' => 'Asset with tag :tag was created successfully. Click here to view.', + 'multi_success_linked' => 'Asset with tag :links was created successfully.|:count assets were created succesfully. :links.', + 'partial_failure' => 'An asset was unable to be created. Reason: :failures|:count assets were unable to be created. Reasons: :failures', ], 'update' => [ @@ -79,6 +81,11 @@ 'no_assets_selected' => 'You must select at least one asset from the list', ], + 'multi-checkout' => [ + 'error' => 'Asset was not checked out, please try again|Assets were not checked out, please try again', + 'success' => 'Asset checked out successfully.|Assets checked out successfully.', + ], + 'checkin' => [ 'error' => 'Ifa alizange lihlolwe, sicela uzame futhi', 'success' => 'Ifa lihlolwe ngempumelelo.', diff --git a/resources/lang/zu-ZA/admin/settings/general.php b/resources/lang/zu-ZA/admin/settings/general.php index daa42fe32bd1..276db1b23018 100644 --- a/resources/lang/zu-ZA/admin/settings/general.php +++ b/resources/lang/zu-ZA/admin/settings/general.php @@ -385,5 +385,6 @@ 'restore_default_avatar_help' => '', 'due_checkin_days' => 'Due For Checkin Warning', 'due_checkin_days_help' => 'How many days before the expected checkin of an asset should it be listed in the "Due for checkin" page?', + 'no_groups' => 'No groups have been created yet. Visit Admin Settings > Permission Groups to add one.', ]; diff --git a/resources/lang/zu-ZA/general.php b/resources/lang/zu-ZA/general.php index 875dd6ef378d..fd40c44da604 100644 --- a/resources/lang/zu-ZA/general.php +++ b/resources/lang/zu-ZA/general.php @@ -230,7 +230,7 @@ 'purchase_date' => 'Usuku lokuthenga', 'qty' => 'QTY', 'quantity' => 'Inani', - 'quantity_minimum' => 'You have :count items below or almost below minimum quantity levels', + 'quantity_minimum' => 'You have one item below or almost below minimum quantity levels|You have :count items below or almost below minimum quantity levels', 'quickscan_checkin' => 'Quick Scan Checkin', 'quickscan_checkin_status' => 'Checkin Status', 'ready_to_deploy' => 'Ukulungele Ukusebenzisa', @@ -434,6 +434,7 @@ 'alt_uploaded_image_thumbnail' => 'Uploaded thumbnail', 'placeholder_kit' => 'Select a kit', 'file_not_found' => 'File not found', + 'log_record_not_found' => 'No record for that log entry was found.', 'preview_not_available' => '(no preview)', 'setup' => 'Setup', 'pre_flight' => 'Pre-Flight', diff --git a/resources/lang/zu-ZA/validation.php b/resources/lang/zu-ZA/validation.php index 9e3782433f8d..cfcb1f8b1e96 100644 --- a/resources/lang/zu-ZA/validation.php +++ b/resources/lang/zu-ZA/validation.php @@ -173,6 +173,7 @@ 'ulid' => 'The :attribute field must be a valid ULID.', 'uuid' => 'The :attribute field must be a valid UUID.', + /* |-------------------------------------------------------------------------- | Custom Validation Language Lines @@ -194,7 +195,7 @@ 'custom_field_not_found_on_model' => 'This field seems to exist, but is not available on this Asset Model\'s fieldset.', // date_format validation with slightly less stupid messages. It duplicates a lot, but it gets the job done :( - // We use this because the default error message for date_format is reflects php Y-m-d, which non-PHP + // We use this because the default error message for date_format reflects php Y-m-d, which non-PHP // people won't know how to format. 'purchase_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD format', 'last_audit_date.date_format' => 'The :attribute must be a valid date in YYYY-MM-DD hh:mm:ss format', @@ -206,6 +207,13 @@ 'checkboxes' => ':attribute contains invalid options.', 'radio_buttons' => ':attribute is invalid.', 'invalid_value_in_field' => 'Invalid value included in this field', + + 'ldap_username_field' => [ + 'not_in' => 'sAMAccountName (mixed case) will likely not work. You should use samaccountname (lowercase) instead.' + ], + 'ldap_auth_filter_query' => ['not_in' => 'uid=samaccountname is probably not a valid auth filter. You probably want uid= '], + 'ldap_filter' => ['regex' => 'This value should probably not be wrapped in parentheses.'], + ], /* |-------------------------------------------------------------------------- From f68df1fa063125eb1b3f6e5a44b7e5156148c1e4 Mon Sep 17 00:00:00 2001 From: snipe Date: Wed, 30 Oct 2024 13:21:13 +0000 Subject: [PATCH 49/49] Made type searchable in action logs Signed-off-by: snipe --- app/Http/Controllers/Api/ReportsController.php | 17 ++--------------- app/Models/Actionlog.php | 10 ++++++---- resources/views/reports/activity.blade.php | 2 +- 3 files changed, 9 insertions(+), 20 deletions(-) diff --git a/app/Http/Controllers/Api/ReportsController.php b/app/Http/Controllers/Api/ReportsController.php index 566911dd271c..63fca39d1983 100644 --- a/app/Http/Controllers/Api/ReportsController.php +++ b/app/Http/Controllers/Api/ReportsController.php @@ -44,21 +44,6 @@ public function index(Request $request) : JsonResponse | array }); } - if ($request->filled('action_type')) { - $actionlogs = $actionlogs->where('action_type', '=', $request->input('action_type'))->orderBy('created_at', 'desc'); - } - - if ($request->filled('created_by')) { - $actionlogs = $actionlogs->where('created_by', '=', $request->input('created_by')); - } - - if ($request->filled('action_source')) { - $actionlogs = $actionlogs->where('action_source', '=', $request->input('action_source'))->orderBy('created_at', 'desc'); - } - - if ($request->filled('remote_ip')) { - $actionlogs = $actionlogs->where('remote_ip', '=', $request->input('remote_ip'))->orderBy('created_at', 'desc'); - } if ($request->filled('uploads')) { $actionlogs = $actionlogs->whereNotNull('filename')->orderBy('created_at', 'desc'); @@ -74,6 +59,8 @@ public function index(Request $request) : JsonResponse | array 'note', 'remote_ip', 'user_agent', + 'target_type', + 'item_type', 'action_source', 'action_date', ]; diff --git a/app/Models/Actionlog.php b/app/Models/Actionlog.php index 0831352b87bb..008c5b11462c 100755 --- a/app/Models/Actionlog.php +++ b/app/Models/Actionlog.php @@ -55,6 +55,8 @@ class Actionlog extends SnipeModel 'created_by', 'remote_ip', 'user_agent', + 'item_type', + 'target_type', 'action_source' ]; @@ -64,10 +66,10 @@ class Actionlog extends SnipeModel * @var array */ protected $searchableRelations = [ - 'company' => ['name'], - 'adminuser' => ['first_name','last_name','username', 'email'], - 'user' => ['first_name','last_name','username', 'email'], - 'assets' => ['asset_tag','name'], + 'company' => ['name'], + 'adminuser' => ['first_name','last_name','username', 'email'], + 'user' => ['first_name','last_name','username', 'email'], + 'assets' => ['asset_tag','name'], ]; /** diff --git a/resources/views/reports/activity.blade.php b/resources/views/reports/activity.blade.php index 178446a785e9..d2e0107649f5 100644 --- a/resources/views/reports/activity.blade.php +++ b/resources/views/reports/activity.blade.php @@ -64,7 +64,7 @@ class="table table-striped snipe-table" {{ trans('general.file_name') }} - + {{ trans('general.type') }}