mirror of
https://github.com/snipe/snipe-it.git
synced 2024-12-25 13:44:06 -08:00
Merge remote-tracking branch 'origin/develop'
Signed-off-by: snipe <snipe@snipe.net> # Conflicts: # public/css/dist/all.css # public/css/dist/bootstrap-table.css # public/js/build/app.js # public/js/dist/all.js # public/js/dist/bootstrap-table.js # public/mix-manifest.json
This commit is contained in:
commit
12dcac4994
|
@ -437,77 +437,83 @@ class UsersController extends Controller
|
||||||
{
|
{
|
||||||
$this->authorize('update', User::class);
|
$this->authorize('update', User::class);
|
||||||
|
|
||||||
$user = User::find($id);
|
if ($user = User::find($id)) {
|
||||||
$this->authorize('update', $user);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This is a janky hack to prevent people from changing admin demo user data on the public demo.
|
|
||||||
* The $ids 1 and 2 are special since they are seeded as superadmins in the demo seeder.
|
|
||||||
* Thanks, jerks. You are why we can't have nice things. - snipe
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
if ((($id == 1) || ($id == 2)) && (config('app.lock_passwords'))) {
|
$this->authorize('update', $user);
|
||||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'Permission denied. You cannot update user information via API on the demo.'));
|
|
||||||
}
|
/**
|
||||||
|
* This is a janky hack to prevent people from changing admin demo user data on the public demo.
|
||||||
|
* The $ids 1 and 2 are special since they are seeded as superadmins in the demo seeder.
|
||||||
|
* Thanks, jerks. You are why we can't have nice things. - snipe
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
$user->fill($request->all());
|
if ((($id == 1) || ($id == 2)) && (config('app.lock_passwords'))) {
|
||||||
|
return response()->json(Helper::formatStandardApiResponse('error', null, 'Permission denied. You cannot update user information via API on the demo.'));
|
||||||
if ($user->id == $request->input('manager_id')) {
|
|
||||||
return response()->json(Helper::formatStandardApiResponse('error', null, 'You cannot be your own manager'));
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($request->filled('password')) {
|
|
||||||
$user->password = bcrypt($request->input('password'));
|
|
||||||
}
|
|
||||||
|
|
||||||
// We need to use has() instead of filled()
|
|
||||||
// here because we need to overwrite permissions
|
|
||||||
// if someone needs to null them out
|
|
||||||
if ($request->has('permissions')) {
|
|
||||||
$permissions_array = $request->input('permissions');
|
|
||||||
|
|
||||||
// Strip out the individual superuser permission if the API user isn't a superadmin
|
|
||||||
if (! Auth::user()->isSuperUser()) {
|
|
||||||
unset($permissions_array['superuser']);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$user->permissions = $permissions_array;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
$user->fill($request->all());
|
||||||
|
|
||||||
// Update the location of any assets checked out to this user
|
if ($user->id == $request->input('manager_id')) {
|
||||||
Asset::where('assigned_type', User::class)
|
return response()->json(Helper::formatStandardApiResponse('error', null, 'You cannot be your own manager'));
|
||||||
->where('assigned_to', $user->id)->update(['location_id' => $request->input('location_id', null)]);
|
}
|
||||||
|
|
||||||
|
if ($request->filled('password')) {
|
||||||
app('App\Http\Requests\ImageUploadRequest')->handleImages($user, 600, 'image', 'avatars', 'avatar');
|
$user->password = bcrypt($request->input('password'));
|
||||||
|
}
|
||||||
if ($user->save()) {
|
|
||||||
|
|
||||||
// Check if the request has groups passed and has a value, AND that the user us a superuser
|
// We need to use has() instead of filled()
|
||||||
if (($request->has('groups')) && (Auth::user()->isSuperUser())) {
|
// here because we need to overwrite permissions
|
||||||
|
// if someone needs to null them out
|
||||||
|
if ($request->has('permissions')) {
|
||||||
|
$permissions_array = $request->input('permissions');
|
||||||
|
|
||||||
$validator = Validator::make($request->only('groups'), [
|
// Strip out the individual superuser permission if the API user isn't a superadmin
|
||||||
'groups.*' => 'integer|exists:permission_groups,id',
|
if (!Auth::user()->isSuperUser()) {
|
||||||
]);
|
unset($permissions_array['superuser']);
|
||||||
|
|
||||||
if ($validator->fails()) {
|
|
||||||
return response()->json(Helper::formatStandardApiResponse('error', null, $validator->errors()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sync the groups since the user is a superuser and the groups pass validation
|
$user->permissions = $permissions_array;
|
||||||
$user->groups()->sync($request->input('groups'));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.update')));
|
|
||||||
|
// Update the location of any assets checked out to this user
|
||||||
|
Asset::where('assigned_type', User::class)
|
||||||
|
->where('assigned_to', $user->id)->update(['location_id' => $request->input('location_id', null)]);
|
||||||
|
|
||||||
|
|
||||||
|
app('App\Http\Requests\ImageUploadRequest')->handleImages($user, 600, 'image', 'avatars', 'avatar');
|
||||||
|
|
||||||
|
if ($user->save()) {
|
||||||
|
|
||||||
|
// Check if the request has groups passed and has a value, AND that the user us a superuser
|
||||||
|
if (($request->has('groups')) && (Auth::user()->isSuperUser())) {
|
||||||
|
|
||||||
|
$validator = Validator::make($request->only('groups'), [
|
||||||
|
'groups.*' => 'integer|exists:permission_groups,id',
|
||||||
|
]);
|
||||||
|
|
||||||
|
if ($validator->fails()) {
|
||||||
|
return response()->json(Helper::formatStandardApiResponse('error', null, $validator->errors()));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Sync the groups since the user is a superuser and the groups pass validation
|
||||||
|
$user->groups()->sync($request->input('groups'));
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return response()->json(Helper::formatStandardApiResponse('success', (new UsersTransformer)->transformUser($user), trans('admin/users/message.success.update')));
|
||||||
|
}
|
||||||
|
|
||||||
|
return response()->json(Helper::formatStandardApiResponse('error', null, $user->getErrors()));
|
||||||
}
|
}
|
||||||
|
|
||||||
return response()->json(Helper::formatStandardApiResponse('error', null, $user->getErrors()));
|
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/users/message.user_not_found', compact('id'))));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use App\Models\CustomField;
|
use App\Models\CustomField;
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
@ -59,7 +59,7 @@ class Importer extends Component
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is used in resources/views/livewire/importer.blade.php, and we kinda shouldn't need to check for
|
* This is used in resources/views/livewire.importer.blade.php, and we kinda shouldn't need to check for
|
||||||
* activeFile here, but there's some UI goofiness that allows this to crash out on some imports.
|
* activeFile here, but there's some UI goofiness that allows this to crash out on some imports.
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
|
@ -19,21 +19,11 @@ class OauthClients extends Component
|
||||||
|
|
||||||
public $authorizationError;
|
public $authorizationError;
|
||||||
|
|
||||||
protected $clientRepository;
|
|
||||||
protected $tokenRepository;
|
|
||||||
|
|
||||||
public function __construct()
|
|
||||||
{
|
|
||||||
$this->clientRepository = app(ClientRepository::class);
|
|
||||||
$this->tokenRepository = app(TokenRepository::class);
|
|
||||||
parent::__construct();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function render()
|
public function render()
|
||||||
{
|
{
|
||||||
return view('livewire.oauth-clients', [
|
return view('livewire.oauth-clients', [
|
||||||
'clients' => $this->clientRepository->activeForUser(auth()->user()->id),
|
'clients' => app(ClientRepository::class)->activeForUser(auth()->user()->id),
|
||||||
'authorized_tokens' => $this->tokenRepository->forUser(auth()->user()->id)->where('revoked', false),
|
'authorized_tokens' => app(TokenRepository::class)->forUser(auth()->user()->id)->where('revoked', false),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,13 +34,13 @@ class OauthClients extends Component
|
||||||
'redirect' => 'required|url|max:255',
|
'redirect' => 'required|url|max:255',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$newClient = $this->clientRepository->create(
|
app(ClientRepository::class)->create(
|
||||||
auth()->user()->id,
|
auth()->user()->id,
|
||||||
$this->name,
|
$this->name,
|
||||||
$this->redirect,
|
$this->redirect,
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->dispatchBrowserEvent('clientCreated');
|
$this->dispatch('clientCreated');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function deleteClient(Client $clientId): void
|
public function deleteClient(Client $clientId): void
|
||||||
|
@ -58,7 +48,7 @@ class OauthClients extends Component
|
||||||
// test for safety
|
// test for safety
|
||||||
// ->delete must be of type Client - thus the model binding
|
// ->delete must be of type Client - thus the model binding
|
||||||
if ($clientId->user_id == auth()->user()->id) {
|
if ($clientId->user_id == auth()->user()->id) {
|
||||||
$this->clientRepository->delete($clientId);
|
app(ClientRepository::class)->delete($clientId);
|
||||||
} else {
|
} else {
|
||||||
Log::warning('User ' . auth()->user()->id . ' attempted to delete client ' . $clientId->id . ' which belongs to user ' . $clientId->user_id);
|
Log::warning('User ' . auth()->user()->id . ' attempted to delete client ' . $clientId->id . ' which belongs to user ' . $clientId->user_id);
|
||||||
$this->authorizationError = 'You are not authorized to delete this client.';
|
$this->authorizationError = 'You are not authorized to delete this client.';
|
||||||
|
@ -67,9 +57,9 @@ class OauthClients extends Component
|
||||||
|
|
||||||
public function deleteToken($tokenId): void
|
public function deleteToken($tokenId): void
|
||||||
{
|
{
|
||||||
$token = $this->tokenRepository->find($tokenId);
|
$token = app(TokenRepository::class)->find($tokenId);
|
||||||
if ($token->user_id == auth()->user()->id) {
|
if ($token->user_id == auth()->user()->id) {
|
||||||
$this->tokenRepository->revokeAccessToken($tokenId);
|
app(TokenRepository::class)->revokeAccessToken($tokenId);
|
||||||
} else {
|
} else {
|
||||||
Log::warning('User ' . auth()->user()->id . ' attempted to delete token ' . $tokenId . ' which belongs to user ' . $token->user_id);
|
Log::warning('User ' . auth()->user()->id . ' attempted to delete token ' . $tokenId . ' which belongs to user ' . $token->user_id);
|
||||||
$this->authorizationError = 'You are not authorized to delete this token.';
|
$this->authorizationError = 'You are not authorized to delete this token.';
|
||||||
|
@ -83,7 +73,7 @@ class OauthClients extends Component
|
||||||
|
|
||||||
$this->editClientId = $editClientId->id;
|
$this->editClientId = $editClientId->id;
|
||||||
|
|
||||||
$this->dispatchBrowserEvent('editClient');
|
$this->dispatch('editClient');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function updateClient(Client $editClientId): void
|
public function updateClient(Client $editClientId): void
|
||||||
|
@ -93,7 +83,7 @@ class OauthClients extends Component
|
||||||
'editRedirect' => 'required|url|max:255',
|
'editRedirect' => 'required|url|max:255',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$client = $this->clientRepository->find($editClientId->id);
|
$client = app(ClientRepository::class)->find($editClientId->id);
|
||||||
if ($client->user_id == auth()->user()->id) {
|
if ($client->user_id == auth()->user()->id) {
|
||||||
$client->name = $this->editName;
|
$client->name = $this->editName;
|
||||||
$client->redirect = $this->editRedirect;
|
$client->redirect = $this->editRedirect;
|
||||||
|
@ -103,7 +93,7 @@ class OauthClients extends Component
|
||||||
$this->authorizationError = 'You are not authorized to edit this client.';
|
$this->authorizationError = 'You are not authorized to edit this client.';
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->dispatchBrowserEvent('clientUpdated');
|
$this->dispatch('clientUpdated');
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Log;
|
use Illuminate\Support\Facades\Log;
|
||||||
|
@ -17,7 +17,7 @@ class PersonalAccessTokens extends Component
|
||||||
//this is just an annoying thing to make the modal input autofocus
|
//this is just an annoying thing to make the modal input autofocus
|
||||||
public function autoFocusModalEvent(): void
|
public function autoFocusModalEvent(): void
|
||||||
{
|
{
|
||||||
$this->dispatchBrowserEvent('autoFocusModal');
|
$this->dispatch('autoFocusModal');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function render()
|
public function render()
|
||||||
|
@ -42,7 +42,7 @@ class PersonalAccessTokens extends Component
|
||||||
|
|
||||||
$this->newTokenString = $newToken->accessToken;
|
$this->newTokenString = $newToken->accessToken;
|
||||||
|
|
||||||
$this->dispatchBrowserEvent('tokenCreated', $newToken->accessToken);
|
$this->dispatch('tokenCreated', token: $newToken->accessToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function deleteToken($tokenId): void
|
public function deleteToken($tokenId): void
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Http\Livewire;
|
namespace App\Livewire;
|
||||||
|
|
||||||
use GuzzleHttp\Client;
|
use GuzzleHttp\Client;
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
|
@ -23,15 +23,17 @@ class SlackSettingsForm extends Component
|
||||||
|
|
||||||
public Setting $setting;
|
public Setting $setting;
|
||||||
|
|
||||||
|
public $save_button;
|
||||||
|
|
||||||
|
public $webhook_test;
|
||||||
|
|
||||||
public $webhook_endpoint_rules;
|
public $webhook_endpoint_rules;
|
||||||
|
|
||||||
|
|
||||||
protected $rules = [
|
protected $rules = [
|
||||||
'webhook_endpoint' => 'required_with:webhook_channel|starts_with:http://,https://,ftp://,irc://,https://hooks.slack.com/services/|url|nullable',
|
'webhook_endpoint' => 'required_with:webhook_channel|starts_with:http://,https://,ftp://,irc://,https://hooks.slack.com/services/|url|nullable',
|
||||||
'webhook_channel' => 'required_with:webhook_endpoint|starts_with:#|nullable',
|
'webhook_channel' => 'required_with:webhook_endpoint|starts_with:#|nullable',
|
||||||
'webhook_botname' => 'string|nullable',
|
'webhook_botname' => 'string|nullable',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
public function mount() {
|
public function mount() {
|
||||||
$this->webhook_text= [
|
$this->webhook_text= [
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace App\Services;
|
namespace App\Services;
|
||||||
|
|
||||||
|
use App\Helpers\Helper;
|
||||||
use Illuminate\Translation\Translator;
|
use Illuminate\Translation\Translator;
|
||||||
|
|
||||||
/***************************************************************
|
/***************************************************************
|
||||||
|
@ -17,6 +18,10 @@ use Illuminate\Translation\Translator;
|
||||||
***************************************************************/
|
***************************************************************/
|
||||||
class SnipeTranslator extends Translator {
|
class SnipeTranslator extends Translator {
|
||||||
|
|
||||||
|
static $legacy_translation_namespaces = [
|
||||||
|
"backup::" //Spatie backup uses 'legacy' locale names
|
||||||
|
];
|
||||||
|
|
||||||
//This is copied-and-pasted (almost) verbatim from Illuminate\Translation\Translator
|
//This is copied-and-pasted (almost) verbatim from Illuminate\Translation\Translator
|
||||||
public function choice($key, $number, array $replace = [], $locale = null)
|
public function choice($key, $number, array $replace = [], $locale = null)
|
||||||
{
|
{
|
||||||
|
@ -39,4 +44,28 @@ class SnipeTranslator extends Translator {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function get($key, array $replace = [], $locale = null, $fallback = true)
|
||||||
|
{
|
||||||
|
$modified_locale = $locale;
|
||||||
|
$changed_fallback = false;
|
||||||
|
$previous_fallback = $this->fallback;
|
||||||
|
// 'legacy' translation directories tend to be two-char ('en'), not 5-char ('en-US').
|
||||||
|
// Here we try our best to handle that.
|
||||||
|
foreach (self::$legacy_translation_namespaces as $namespace) {
|
||||||
|
if (preg_match("/^$namespace/", $key)) {
|
||||||
|
$modified_locale = Helper::mapBackToLegacyLocale($locale);
|
||||||
|
$changed_fallback = true;
|
||||||
|
$this->fallback = 'en'; //TODO - should this be 'env-able'? Or do we just put our foot down and say 'en'?
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$result = parent::get($key, $replace, $modified_locale, $fallback);
|
||||||
|
if ($changed_fallback) {
|
||||||
|
$this->fallback = $previous_fallback;
|
||||||
|
}
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
|
@ -49,7 +49,7 @@
|
||||||
"laravelcollective/html": "^6.2",
|
"laravelcollective/html": "^6.2",
|
||||||
"league/csv": "^9.7",
|
"league/csv": "^9.7",
|
||||||
"league/flysystem-aws-s3-v3": "^3.0",
|
"league/flysystem-aws-s3-v3": "^3.0",
|
||||||
"livewire/livewire": "^2.4",
|
"livewire/livewire": "^3.5",
|
||||||
"neitanod/forceutf8": "^2.0",
|
"neitanod/forceutf8": "^2.0",
|
||||||
"nesbot/carbon": "^2.32",
|
"nesbot/carbon": "^2.32",
|
||||||
"nunomaduro/collision": "^6.1",
|
"nunomaduro/collision": "^6.1",
|
||||||
|
|
37
composer.lock
generated
37
composer.lock
generated
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "1cda72f240f69b641adfb69041ebdf17",
|
"content-hash": "51e716db4ccd70bf942062789f7303ad",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "alek13/slack",
|
"name": "alek13/slack",
|
||||||
|
@ -4454,34 +4454,37 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "livewire/livewire",
|
"name": "livewire/livewire",
|
||||||
"version": "v2.12.6",
|
"version": "v3.5.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/livewire/livewire.git",
|
"url": "https://github.com/livewire/livewire.git",
|
||||||
"reference": "7d3a57b3193299cf1a0639a3935c696f4da2cf92"
|
"reference": "da044261bb5c5449397f18fda3409f14acf47c0a"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/livewire/livewire/zipball/7d3a57b3193299cf1a0639a3935c696f4da2cf92",
|
"url": "https://api.github.com/repos/livewire/livewire/zipball/da044261bb5c5449397f18fda3409f14acf47c0a",
|
||||||
"reference": "7d3a57b3193299cf1a0639a3935c696f4da2cf92",
|
"reference": "da044261bb5c5449397f18fda3409f14acf47c0a",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"illuminate/database": "^7.0|^8.0|^9.0|^10.0",
|
"illuminate/database": "^10.0|^11.0",
|
||||||
"illuminate/support": "^7.0|^8.0|^9.0|^10.0",
|
"illuminate/routing": "^10.0|^11.0",
|
||||||
"illuminate/validation": "^7.0|^8.0|^9.0|^10.0",
|
"illuminate/support": "^10.0|^11.0",
|
||||||
|
"illuminate/validation": "^10.0|^11.0",
|
||||||
"league/mime-type-detection": "^1.9",
|
"league/mime-type-detection": "^1.9",
|
||||||
"php": "^7.2.5|^8.0",
|
"php": "^8.1",
|
||||||
"symfony/http-kernel": "^5.0|^6.0"
|
"symfony/console": "^6.0|^7.0",
|
||||||
|
"symfony/http-kernel": "^6.2|^7.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"calebporzio/sushi": "^2.1",
|
"calebporzio/sushi": "^2.1",
|
||||||
"laravel/framework": "^7.0|^8.0|^9.0|^10.0",
|
"laravel/framework": "^10.15.0|^11.0",
|
||||||
|
"laravel/prompts": "^0.1.6",
|
||||||
"mockery/mockery": "^1.3.1",
|
"mockery/mockery": "^1.3.1",
|
||||||
"orchestra/testbench": "^5.0|^6.0|^7.0|^8.0",
|
"orchestra/testbench": "^8.21.0|^9.0",
|
||||||
"orchestra/testbench-dusk": "^5.2|^6.0|^7.0|^8.0",
|
"orchestra/testbench-dusk": "^8.24|^9.1",
|
||||||
"phpunit/phpunit": "^8.4|^9.0",
|
"phpunit/phpunit": "^10.4",
|
||||||
"psy/psysh": "@stable"
|
"psy/psysh": "^0.11.22|^0.12"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"extra": {
|
"extra": {
|
||||||
|
@ -4515,7 +4518,7 @@
|
||||||
"description": "A front-end framework for Laravel.",
|
"description": "A front-end framework for Laravel.",
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/livewire/livewire/issues",
|
"issues": "https://github.com/livewire/livewire/issues",
|
||||||
"source": "https://github.com/livewire/livewire/tree/v2.12.6"
|
"source": "https://github.com/livewire/livewire/tree/v3.5.1"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -4523,7 +4526,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-08-11T04:02:34+00:00"
|
"time": "2024-06-18T11:10:42+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "masterminds/html5",
|
"name": "masterminds/html5",
|
||||||
|
|
|
@ -112,7 +112,7 @@ return [
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'fallback_locale' => env('FALLBACK_APP_LOCALE', 'en'),
|
'fallback_locale' => env('FALLBACK_APP_LOCALE', 'en-US'),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
@ -3,156 +3,158 @@
|
||||||
return [
|
return [
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| Class Namespace
|
| Class Namespace
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| This value sets the root namespace for Livewire component classes in
|
| This value sets the root class namespace for Livewire component classes in
|
||||||
| your application. This value affects component auto-discovery and
|
| your application. This value will change where component auto-discovery
|
||||||
| any Livewire file helper commands, like `artisan make:livewire`.
|
| finds components. It's also referenced by the file creation commands.
|
||||||
|
|
|
||||||
| After changing this item, run: `php artisan livewire:discover`.
|
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'class_namespace' => 'App\\Http\\Livewire',
|
'class_namespace' => 'App\\Livewire',
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| View Path
|
| View Path
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| This value sets the path for Livewire component views. This affects
|
| This value is used to specify where Livewire component Blade templates are
|
||||||
| file manipulation helper commands like `artisan make:livewire`.
|
| stored when running file creation commands like `artisan make:livewire`.
|
||||||
|
| It is also used if you choose to omit a component's render() method.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'view_path' => resource_path('views/livewire'),
|
'view_path' => resource_path('views/livewire'),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| Layout
|
| Layout
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| The default layout view that will be used when rendering a component via
|
| The view that will be used as the layout when rendering a single component
|
||||||
| Route::get('/some-endpoint', SomeComponent::class);. In this case the
|
| as an entire page via `Route::get('/post/create', CreatePost::class);`.
|
||||||
| the view returned by SomeComponent will be wrapped in "layouts.app"
|
| In this case, the view returned by CreatePost will render into $slot.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'layout' => 'layouts.app',
|
'layout' => 'components.layouts.app',
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| Livewire Assets URL
|
| Lazy Loading Placeholder
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
|
|
| Livewire allows you to lazy load components that would otherwise slow down
|
||||||
| This value sets the path to Livewire JavaScript assets, for cases where
|
| the initial page load. Every component can have a custom placeholder or
|
||||||
| your app's domain root is not the correct path. By default, Livewire
|
| you can define the default placeholder view for all components below.
|
||||||
| will load its JavaScript assets from the app's "relative root".
|
|
||||||
|
|
|
||||||
| Examples: "/assets", "myurl.com/app".
|
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'asset_url' => env('APP_URL'),
|
'lazy_placeholder' => null,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| Livewire App URL
|
| Temporary File Uploads
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
| This value should be used if livewire assets are served from CDN.
|
|
||||||
| Livewire will communicate with an app through this url.
|
|
||||||
|
|
|
||||||
| Examples: "https://my-app.com", "myurl.com/app".
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'app_url' => null,
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Livewire Endpoint Middleware Group
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| This value sets the middleware group that will be applied to the main
|
|
||||||
| Livewire "message" endpoint (the endpoint that gets hit everytime
|
|
||||||
| a Livewire component updates). It is set to "web" by default.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'middleware_group' => 'web',
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Livewire Temporary File Uploads Endpoint Configuration
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
|
||||||
| Livewire handles file uploads by storing uploads in a temporary directory
|
| Livewire handles file uploads by storing uploads in a temporary directory
|
||||||
| before the file is validated and stored permanently. All file uploads
|
| before the file is stored permanently. All file uploads are directed to
|
||||||
| are directed to a global endpoint for temporary storage. The config
|
| a global endpoint for temporary storage. You may configure this below:
|
||||||
| items below are used for customizing the way the endpoint works.
|
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'temporary_file_upload' => [
|
'temporary_file_upload' => [
|
||||||
'disk' => env('PRIVATE_FILESYSTEM_DISK', 'local'), // Example: 'local', 's3' Default: 'default'
|
'disk' => env('PRIVATE_FILESYSTEM_DISK', 'local'), // Example: 'local', 's3' Default: 'default'
|
||||||
'rules' => null, // Example: ['file', 'mimes:png,jpg'] Default: ['required', 'file', 'max:12288'] (12MB)
|
'rules' => null, // Example: ['file', 'mimes:png,jpg'] | Default: ['required', 'file', 'max:12288'] (12MB)
|
||||||
'directory' => null, // Example: 'tmp' Default 'livewire-tmp'
|
'directory' => null, // Example: 'tmp' | Default: 'livewire-tmp'
|
||||||
'middleware' => null, // Example: 'throttle:5,1' Default: 'throttle:60,1'
|
'middleware' => null, // Example: 'throttle:5,1' | Default: 'throttle:60,1'
|
||||||
'preview_mimes' => [ // Supported file types for temporary pre-signed file URLs.
|
'preview_mimes' => [ // Supported file types for temporary pre-signed file URLs...
|
||||||
'png', 'gif', 'bmp', 'svg', 'wav', 'mp4',
|
'png', 'gif', 'bmp', 'svg', 'wav', 'mp4',
|
||||||
'mov', 'avi', 'wmv', 'mp3', 'm4a',
|
'mov', 'avi', 'wmv', 'mp3', 'm4a',
|
||||||
'jpg', 'jpeg', 'mpga', 'webp', 'wma',
|
'jpg', 'jpeg', 'mpga', 'webp', 'wma',
|
||||||
],
|
],
|
||||||
'max_upload_time' => 5, // Max duration (in minutes) before an upload gets invalidated.
|
'max_upload_time' => 5, // Max duration (in minutes) before an upload is invalidated...
|
||||||
|
'cleanup' => true, // Should cleanup temporary uploads older than 24 hrs...
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
| Manifest File Path
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| This value sets the path to the Livewire manifest file.
|
|
||||||
| The default should work for most cases (which is
|
|
||||||
| "<app_root>/bootstrap/cache/livewire-components.php"), but for specific
|
|
||||||
| cases like when hosting on Laravel Vapor, it could be set to a different value.
|
|
||||||
|
|
|
||||||
| Example: for Laravel Vapor, it would be "/tmp/storage/bootstrap/cache/livewire-components.php".
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'manifest_path' => null,
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Back Button Cache
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| This value determines whether the back button cache will be used on pages
|
|
||||||
| that contain Livewire. By disabling back button cache, it ensures that
|
|
||||||
| the back button shows the correct state of components, instead of
|
|
||||||
| potentially stale, cached data.
|
|
||||||
|
|
|
||||||
| Setting it to "false" (default) will disable back button cache.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'back_button_cache' => false,
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Render On Redirect
|
| Render On Redirect
|
||||||
|--------------------------------------------------------------------------
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| This value determines whether Livewire will render before it's redirected
|
| This value determines if Livewire will run a component's `render()` method
|
||||||
| or not. Setting it to "false" (default) will mean the render method is
|
| after a redirect has been triggered using something like `redirect(...)`
|
||||||
| skipped when redirecting. And "true" will mean the render method is
|
| Setting this to true will render the view once more before redirecting
|
||||||
| run before redirecting. Browsers bfcache can store a potentially
|
|
||||||
| stale view if render is skipped on redirect.
|
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'render_on_redirect' => false,
|
'render_on_redirect' => false,
|
||||||
|
|
||||||
|
/*
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
| Eloquent Model Binding
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| Previous versions of Livewire supported binding directly to eloquent model
|
||||||
|
| properties using wire:model by default. However, this behavior has been
|
||||||
|
| deemed too "magical" and has therefore been put under a feature flag.
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
'legacy_model_binding' => true,
|
||||||
|
|
||||||
|
/*
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
| Auto-inject Frontend Assets
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| By default, Livewire automatically injects its JavaScript and CSS into the
|
||||||
|
| <head> and <body> of pages containing Livewire components. By disabling
|
||||||
|
| this behavior, you need to use @livewireStyles and @livewireScripts.
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
'inject_assets' => true,
|
||||||
|
|
||||||
|
/*
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
| Navigate (SPA mode)
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| By adding `wire:navigate` to links in your Livewire application, Livewire
|
||||||
|
| will prevent the default link handling and instead request those pages
|
||||||
|
| via AJAX, creating an SPA-like effect. Configure this behavior here.
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
'navigate' => [
|
||||||
|
'show_progress_bar' => true,
|
||||||
|
'progress_bar_color' => '#2299dd',
|
||||||
|
],
|
||||||
|
|
||||||
|
/*
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
| HTML Morph Markers
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| Livewire intelligently "morphs" existing HTML into the newly rendered HTML
|
||||||
|
| after each update. To make this process more reliable, Livewire injects
|
||||||
|
| "markers" into the rendered Blade surrounding @if, @class & @foreach.
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
'inject_morph_markers' => true,
|
||||||
|
|
||||||
|
/*
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
| Pagination Theme
|
||||||
|
|---------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| When enabling Livewire's pagination feature by using the `WithPagination`
|
||||||
|
| trait, Livewire will use Tailwind templates to render pagination views
|
||||||
|
| on the page. If you want Bootstrap CSS, you can specify: "bootstrap"
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
'pagination_theme' => 'tailwind',
|
||||||
];
|
];
|
||||||
|
|
20
package-lock.json
generated
20
package-lock.json
generated
|
@ -10,7 +10,6 @@
|
||||||
"acorn-import-assertions": "^1.9.0",
|
"acorn-import-assertions": "^1.9.0",
|
||||||
"admin-lte": "^2.4.18",
|
"admin-lte": "^2.4.18",
|
||||||
"ajv": "^6.12.6",
|
"ajv": "^6.12.6",
|
||||||
"alpinejs": "^3.13.10",
|
|
||||||
"blueimp-file-upload": "^9.34.0",
|
"blueimp-file-upload": "^9.34.0",
|
||||||
"bootstrap": "^3.4.1",
|
"bootstrap": "^3.4.1",
|
||||||
"bootstrap-colorpicker": "^2.5.3",
|
"bootstrap-colorpicker": "^2.5.3",
|
||||||
|
@ -2312,17 +2311,6 @@
|
||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@vue/reactivity": {
|
|
||||||
"version": "3.1.5",
|
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
|
||||||
"@vue/shared": "3.1.5"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@vue/shared": {
|
|
||||||
"version": "3.1.5",
|
|
||||||
"license": "MIT"
|
|
||||||
},
|
|
||||||
"node_modules/@webassemblyjs/ast": {
|
"node_modules/@webassemblyjs/ast": {
|
||||||
"version": "1.12.1",
|
"version": "1.12.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
@ -2662,14 +2650,6 @@
|
||||||
"prettier": "^2"
|
"prettier": "^2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/alpinejs": {
|
|
||||||
"version": "3.13.10",
|
|
||||||
"resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.13.10.tgz",
|
|
||||||
"integrity": "sha512-86RB307VWICex0vG15Eq0x058cNNsvS57ohrjN6n/TJAVSFV+zXOK/E34nNHDHc6Poq+yTNCLqEzPqEkRBTMRQ==",
|
|
||||||
"dependencies": {
|
|
||||||
"@vue/reactivity": "~3.1.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/ansi-escapes": {
|
"node_modules/ansi-escapes": {
|
||||||
"version": "4.3.2",
|
"version": "4.3.2",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
"acorn-import-assertions": "^1.9.0",
|
"acorn-import-assertions": "^1.9.0",
|
||||||
"admin-lte": "^2.4.18",
|
"admin-lte": "^2.4.18",
|
||||||
"ajv": "^6.12.6",
|
"ajv": "^6.12.6",
|
||||||
"alpinejs": "^3.13.10",
|
|
||||||
"blueimp-file-upload": "^9.34.0",
|
"blueimp-file-upload": "^9.34.0",
|
||||||
"bootstrap": "^3.4.1",
|
"bootstrap": "^3.4.1",
|
||||||
"bootstrap-colorpicker": "^2.5.3",
|
"bootstrap-colorpicker": "^2.5.3",
|
||||||
|
|
10792
public/vendor/livewire/livewire.esm.js
vendored
Normal file
10792
public/vendor/livewire/livewire.esm.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
9928
public/vendor/livewire/livewire.js
vendored
9928
public/vendor/livewire/livewire.js
vendored
File diff suppressed because one or more lines are too long
103
public/vendor/livewire/livewire.min.js
vendored
Normal file
103
public/vendor/livewire/livewire.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
7
public/vendor/livewire/livewire.min.js.map
vendored
Normal file
7
public/vendor/livewire/livewire.min.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
3
public/vendor/livewire/manifest.json
vendored
3
public/vendor/livewire/manifest.json
vendored
|
@ -1 +1,2 @@
|
||||||
{"/livewire.js":"/livewire.js?id=90730a3b0e7144480175"}
|
|
||||||
|
{"/livewire.js":"87e1046f"}
|
||||||
|
|
|
@ -610,24 +610,27 @@ function htmlEntities(str) {
|
||||||
*
|
*
|
||||||
* 1. Set the class of your select2 elements to 'livewire-select2').
|
* 1. Set the class of your select2 elements to 'livewire-select2').
|
||||||
* 2. Name your element to match a property in your Livewire component
|
* 2. Name your element to match a property in your Livewire component
|
||||||
* 3. Add an attribute called 'data-livewire-component' that points to $_instance->id (via `{{ }}` if you're in a blade,
|
* 3. Add an attribute called 'data-livewire-component' that points to $this->getId() (via `{{ }}` if you're in a blade,
|
||||||
* or just $_instance->id if not).
|
* or just $this->getId() if not).
|
||||||
*/
|
*/
|
||||||
$(function () {
|
document.addEventListener('livewire:init', () => {
|
||||||
$('.livewire-select2').select2()
|
$('.livewire-select2').select2()
|
||||||
|
|
||||||
$(document).on('select2:select', '.livewire-select2', function (event) {
|
$(document).on('select2:select', '.livewire-select2', function (event) {
|
||||||
var target = $(event.target)
|
var target = $(event.target)
|
||||||
if(!event.target.name || !target.data('livewire-component')) {
|
if(!event.target.name || !target.data('livewire-component')) {
|
||||||
console.error("You need to set both name (which should match a Livewire property) and data-livewire-component on your Livewire-ed select2 elements!")
|
console.error("You need to set both name (which should match a Livewire property) and data-livewire-component on your Livewire-ed select2 elements!")
|
||||||
console.error("For data-livewire-component, you probably want to use $_instance->id or {{ $_instance->id }}, as appropriate")
|
console.error("For data-livewire-component, you probably want to use $this->getId() or {{ $this->getId() }}, as appropriate")
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
window.livewire.find(target.data('livewire-component')).set(event.target.name, this.options[this.selectedIndex].value)
|
Livewire.find(target.data('livewire-component')).set(event.target.name, this.options[this.selectedIndex].value)
|
||||||
})
|
|
||||||
|
|
||||||
window.livewire.hook('message.processed', function (el,component) {
|
|
||||||
$('.livewire-select2').select2();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
})
|
Livewire.hook('request', ({succeed}) => {
|
||||||
|
succeed(() => {
|
||||||
|
queueMicrotask(() => {
|
||||||
|
$('.livewire-select2').select2();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'رسالة استثناء: :message',
|
|
||||||
'exception_trace' => 'تتبع الإستثناء: :trace',
|
|
||||||
'exception_message_title' => 'رسالة استثناء',
|
|
||||||
'exception_trace_title' => 'تتبع الإستثناء',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'أخفق النسخ الاحتياطي لل :application_name',
|
|
||||||
'backup_failed_body' => 'مهم: حدث خطأ أثناء النسخ الاحتياطي :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'نسخ احتياطي جديد ناجح ل :application_name',
|
|
||||||
'backup_successful_subject_title' => 'نجاح النسخ الاحتياطي الجديد!',
|
|
||||||
'backup_successful_body' => 'أخبار عظيمة، نسخة احتياطية جديدة ل :application_name تم إنشاؤها بنجاح على القرص المسمى :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'فشل تنظيف النسخ الاحتياطي للتطبيق :application_name .',
|
|
||||||
'cleanup_failed_body' => 'حدث خطأ أثناء تنظيف النسخ الاحتياطية ل :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'تنظيف النسخ الاحتياطية ل :application_name تمت بنجاح',
|
|
||||||
'cleanup_successful_subject_title' => 'تنظيف النسخ الاحتياطية تم بنجاح!',
|
|
||||||
'cleanup_successful_body' => 'تنظيف النسخ الاحتياطية ل :application_name على القرص المسمى :disk_name تم بنجاح.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'النسخ الاحتياطية ل :application_name على القرص :disk_name صحية',
|
|
||||||
'healthy_backup_found_subject_title' => 'النسخ الاحتياطية ل :application_name صحية',
|
|
||||||
'healthy_backup_found_body' => 'تعتبر النسخ الاحتياطية ل :application_name صحية. عمل جيد!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'مهم: النسخ الاحتياطية ل :application_name غير صحية',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'مهم: النسخ الاحتياطية ل :application_name غير صحية. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'النسخ الاحتياطية ل :application_name على القرص :disk_name غير صحية.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'لا يمكن الوصول إلى وجهة النسخ الاحتياطي. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'لا توجد نسخ احتياطية لهذا التطبيق على الإطلاق.',
|
|
||||||
'unhealthy_backup_found_old' => 'تم إنشاء أحدث النسخ الاحتياطية في :date وتعتبر قديمة جدا.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'عذرا، لا يمكن تحديد سبب دقيق.',
|
|
||||||
'unhealthy_backup_found_full' => 'النسخ الاحتياطية تستخدم الكثير من التخزين. الاستخدام الحالي هو :disk_usage وهو أعلى من الحد المسموح به من :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'لم يتم عمل نسخ احتياطية حتى الآن',
|
|
||||||
'application_name' => 'اسم التطبيق',
|
|
||||||
'backup_name' => 'اسم النسخ الاحتياطي',
|
|
||||||
'disk' => 'القرص',
|
|
||||||
'newest_backup_size' => 'أحدث حجم للنسخ الاحتياطي',
|
|
||||||
'number_of_backups' => 'عدد النسخ الاحتياطية',
|
|
||||||
'total_storage_used' => 'إجمالي مساحة التخزين المستخدمة',
|
|
||||||
'newest_backup_date' => 'أحدث تاريخ النسخ الاحتياطي',
|
|
||||||
'oldest_backup_date' => 'أقدم تاريخ نسخ احتياطي',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Съобщение за изключение: :message',
|
|
||||||
'exception_trace' => 'Проследяване на изключение: :trace',
|
|
||||||
'exception_message_title' => 'Съобщение за изключение',
|
|
||||||
'exception_trace_title' => 'Проследяване на изключение',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Неуспешно резервно копие на :application_name',
|
|
||||||
'backup_failed_body' => 'Важно: Възникна грешка при архивиране на :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Успешно ново резервно копие на :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Успешно ново резервно копие!',
|
|
||||||
'backup_successful_body' => 'Чудесни новини, ново резервно копие на :application_name беше успешно създадено на диска с име :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Почистването на резервните копия на :application_name не бе успешно.',
|
|
||||||
'cleanup_failed_body' => 'Възникна грешка при почистването на резервните копия на :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Почистването на архивите на :application_name е успешно',
|
|
||||||
'cleanup_successful_subject_title' => 'Почистването на резервните копия е успешно!',
|
|
||||||
'cleanup_successful_body' => 'Почистването на резервни копия на :application_name на диска с име :disk_name беше успешно.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Резервните копия за :application_name на диск :disk_name са здрави',
|
|
||||||
'healthy_backup_found_subject_title' => 'Резервните копия за :application_name са здрави',
|
|
||||||
'healthy_backup_found_body' => 'Резервните копия за :application_name се считат за здрави. Добра работа!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Важно: Резервните копия за :application_name не са здрави',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Важно: Резервните копия за :application_name не са здрави. :проблем',
|
|
||||||
'unhealthy_backup_found_body' => 'Резервните копия за :application_name на диск :disk_name не са здрави.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Дестинацията за резервни копия не може да бъде достигната. :грешка',
|
|
||||||
'unhealthy_backup_found_empty' => 'Изобщо няма резервни копия на това приложение.',
|
|
||||||
'unhealthy_backup_found_old' => 'Последното резервно копие, направено на :date, се счита за твърде старо.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'За съжаление не може да се определи точна причина.',
|
|
||||||
'unhealthy_backup_found_full' => 'Резервните копия използват твърде много място за съхранение. Текущото използване е :disk_usage, което е по-високо от разрешеното ограничение на :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Все още не са правени резервни копия',
|
|
||||||
'application_name' => 'Име на приложението',
|
|
||||||
'backup_name' => 'Име на резервно копие',
|
|
||||||
'disk' => 'Диск',
|
|
||||||
'newest_backup_size' => 'Най-новият размер на резервно копие',
|
|
||||||
'number_of_backups' => 'Брой резервни копия',
|
|
||||||
'total_storage_used' => 'Общо използвано дисково пространство',
|
|
||||||
'newest_backup_date' => 'Най-нова дата на резервно копие',
|
|
||||||
'oldest_backup_date' => 'Най-старата дата на резервно копие',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'এক্সসেপশন বার্তা: :message',
|
|
||||||
'exception_trace' => 'এক্সসেপশন ট্রেস: :trace',
|
|
||||||
'exception_message_title' => 'এক্সসেপশন message',
|
|
||||||
'exception_trace_title' => 'এক্সসেপশন ট্রেস',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name এর ব্যাকআপ ব্যর্থ হয়েছে।',
|
|
||||||
'backup_failed_body' => 'গুরুত্বপূর্ণঃ :application_name ব্যাক আপ করার সময় একটি ত্রুটি ঘটেছে।',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name এর নতুন ব্যাকআপ সফল হয়েছে।',
|
|
||||||
'backup_successful_subject_title' => 'নতুন ব্যাকআপ সফল হয়েছে!',
|
|
||||||
'backup_successful_body' => 'খুশির খবর, :application_name এর নতুন ব্যাকআপ :disk_name ডিস্কে সফলভাবে তৈরি হয়েছে।',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name ব্যাকআপগুলি সাফ করতে ব্যর্থ হয়েছে।',
|
|
||||||
'cleanup_failed_body' => ':application_name ব্যাকআপগুলি সাফ করার সময় একটি ত্রুটি ঘটেছে।',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name এর ব্যাকআপগুলি সফলভাবে সাফ করা হয়েছে।',
|
|
||||||
'cleanup_successful_subject_title' => 'ব্যাকআপগুলি সফলভাবে সাফ করা হয়েছে!',
|
|
||||||
'cleanup_successful_body' => ':application_name এর ব্যাকআপগুলি :disk_name ডিস্ক থেকে সফলভাবে সাফ করা হয়েছে।',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':application_name এর ব্যাকআপগুলি :disk_name ডিস্কে স্বাস্থ্যকর অবস্থায় আছে।',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name এর ব্যাকআপগুলি স্বাস্থ্যকর অবস্থায় আছে।',
|
|
||||||
'healthy_backup_found_body' => ':application_name এর ব্যাকআপগুলি স্বাস্থ্যকর বিবেচনা করা হচ্ছে। Good job!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'গুরুত্বপূর্ণঃ :application_name এর ব্যাকআপগুলি অস্বাস্থ্যকর অবস্থায় আছে।',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'গুরুত্বপূর্ণঃ :application_name এর ব্যাকআপগুলি অস্বাস্থ্যকর অবস্থায় আছে। :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name ডিস্কের :application_name এর ব্যাকআপগুলি অস্বাস্থ্যকর অবস্থায় আছে।',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'ব্যাকআপ গন্তব্যে পৌঁছানো যায় নি। :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'এই অ্যাপ্লিকেশনটির কোনও ব্যাকআপ নেই।',
|
|
||||||
'unhealthy_backup_found_old' => 'সর্বশেষ ব্যাকআপ যেটি :date এই তারিখে করা হয়েছে, সেটি খুব পুরানো।',
|
|
||||||
'unhealthy_backup_found_unknown' => 'দুঃখিত, সঠিক কারণ নির্ধারণ করা সম্ভব হয়নি।',
|
|
||||||
'unhealthy_backup_found_full' => 'ব্যাকআপগুলি অতিরিক্ত স্টোরেজ ব্যবহার করছে। বর্তমান ব্যবহারের পরিমান :disk_usage যা অনুমোদিত সীমা :disk_limit এর বেশি।',
|
|
||||||
|
|
||||||
'no_backups_info' => 'কোনো ব্যাকআপ এখনও তৈরি হয়নি',
|
|
||||||
'application_name' => 'আবেদনের নাম',
|
|
||||||
'backup_name' => 'ব্যাকআপের নাম',
|
|
||||||
'disk' => 'ডিস্ক',
|
|
||||||
'newest_backup_size' => 'নতুন ব্যাকআপ আকার',
|
|
||||||
'number_of_backups' => 'ব্যাকআপের সংখ্যা',
|
|
||||||
'total_storage_used' => 'ব্যবহৃত মোট সঞ্চয়স্থান',
|
|
||||||
'newest_backup_date' => 'নতুন ব্যাকআপের তারিখ',
|
|
||||||
'oldest_backup_date' => 'পুরানো ব্যাকআপের তারিখ',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Zpráva výjimky: :message',
|
|
||||||
'exception_trace' => 'Stopa výjimky: :trace',
|
|
||||||
'exception_message_title' => 'Zpráva výjimky',
|
|
||||||
'exception_trace_title' => 'Stopa výjimky',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Záloha :application_name neuspěla',
|
|
||||||
'backup_failed_body' => 'Důležité: Při záloze :application_name se vyskytla chyba',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Úspěšná nová záloha :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Úspěšná nová záloha!',
|
|
||||||
'backup_successful_body' => 'Dobrá zpráva, na disku jménem :disk_name byla úspěšně vytvořena nová záloha :application_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Vyčištění záloh :application_name neuspělo.',
|
|
||||||
'cleanup_failed_body' => 'Při čištění záloh :application_name se vyskytla chyba',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Vyčištění záloh :application_name úspěšné',
|
|
||||||
'cleanup_successful_subject_title' => 'Vyčištění záloh bylo úspěšné!',
|
|
||||||
'cleanup_successful_body' => 'Vyčištění záloh :application_name na disku jménem :disk_name bylo úspěšné.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Zálohy pro :application_name na disku :disk_name jsou zdravé',
|
|
||||||
'healthy_backup_found_subject_title' => 'Zálohy pro :application_name jsou zdravé',
|
|
||||||
'healthy_backup_found_body' => 'Zálohy pro :application_name jsou považovány za zdravé. Dobrá práce!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Důležité: Zálohy pro :application_name jsou nezdravé',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Důležité: Zálohy pro :application_name jsou nezdravé. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Zálohy pro :application_name na disku :disk_name jsou nezdravé.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Nelze se dostat k cíli zálohy. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Tato aplikace nemá vůbec žádné zálohy.',
|
|
||||||
'unhealthy_backup_found_old' => 'Poslední záloha vytvořená dne :date je považována za příliš starou.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Omlouváme se, nemůžeme určit přesný důvod.',
|
|
||||||
'unhealthy_backup_found_full' => 'Zálohy zabírají příliš mnoho místa na disku. Aktuální využití disku je :disk_usage, což je vyšší než povolený limit :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Zatím nebyly vytvořeny žádné zálohy',
|
|
||||||
'application_name' => 'Název aplikace',
|
|
||||||
'backup_name' => 'Název zálohy',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Velikost nejnovější zálohy',
|
|
||||||
'number_of_backups' => 'Počet záloh',
|
|
||||||
'total_storage_used' => 'Celková využitá kapacita úložiště',
|
|
||||||
'newest_backup_date' => 'Datum nejnovější zálohy',
|
|
||||||
'oldest_backup_date' => 'Datum nejstarší zálohy',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Fejlbesked: :message',
|
|
||||||
'exception_trace' => 'Fejl trace: :trace',
|
|
||||||
'exception_message_title' => 'Fejlbesked',
|
|
||||||
'exception_trace_title' => 'Fejl trace',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Backup af :application_name fejlede',
|
|
||||||
'backup_failed_body' => 'Vigtigt: Der skete en fejl under backup af :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Ny backup af :application_name oprettet',
|
|
||||||
'backup_successful_subject_title' => 'Ny backup!',
|
|
||||||
'backup_successful_body' => 'Gode nyheder - der blev oprettet en ny backup af :application_name på disken :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Oprydning af backups for :application_name fejlede.',
|
|
||||||
'cleanup_failed_body' => 'Der skete en fejl under oprydning af backups for :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Oprydning af backups for :application_name gennemført',
|
|
||||||
'cleanup_successful_subject_title' => 'Backup oprydning gennemført!',
|
|
||||||
'cleanup_successful_body' => 'Oprydningen af backups for :application_name på disken :disk_name er gennemført.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Alle backups for :application_name på disken :disk_name er OK',
|
|
||||||
'healthy_backup_found_subject_title' => 'Alle backups for :application_name er OK',
|
|
||||||
'healthy_backup_found_body' => 'Alle backups for :application_name er ok. Godt gået!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Vigtigt: Backups for :application_name fejlbehæftede',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Vigtigt: Backups for :application_name er fejlbehæftede. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Backups for :application_name på disken :disk_name er fejlbehæftede.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Backup destinationen kunne ikke findes. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Denne applikation har ingen backups overhovedet.',
|
|
||||||
'unhealthy_backup_found_old' => 'Den seneste backup fra :date er for gammel.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Beklager, en præcis årsag kunne ikke findes.',
|
|
||||||
'unhealthy_backup_found_full' => 'Backups bruger for meget plads. Nuværende disk forbrug er :disk_usage, hvilket er mere end den tilladte grænse på :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Der blev ikke foretaget nogen sikkerhedskopier endnu',
|
|
||||||
'application_name' => 'Ansøgningens navn',
|
|
||||||
'backup_name' => 'Backup navn',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Nyeste backup-størrelse',
|
|
||||||
'number_of_backups' => 'Antal sikkerhedskopier',
|
|
||||||
'total_storage_used' => 'Samlet lagerplads brugt',
|
|
||||||
'newest_backup_date' => 'Nyeste backup-størrelse',
|
|
||||||
'oldest_backup_date' => 'Ældste backup-størrelse',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Fehlermeldung: :message',
|
|
||||||
'exception_trace' => 'Fehlerverfolgung: :trace',
|
|
||||||
'exception_message_title' => 'Fehlermeldung',
|
|
||||||
'exception_trace_title' => 'Fehlerverfolgung',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Backup von :application_name konnte nicht erstellt werden',
|
|
||||||
'backup_failed_body' => 'Wichtig: Beim Backup von :application_name ist ein Fehler aufgetreten',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Erfolgreiches neues Backup von :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Erfolgreiches neues Backup!',
|
|
||||||
'backup_successful_body' => 'Gute Nachrichten, ein neues Backup von :application_name wurde erfolgreich erstellt und in :disk_name gepeichert.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Aufräumen der Backups von :application_name schlug fehl.',
|
|
||||||
'cleanup_failed_body' => 'Beim aufräumen der Backups von :application_name ist ein Fehler aufgetreten',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Aufräumen der Backups von :application_name backups erfolgreich',
|
|
||||||
'cleanup_successful_subject_title' => 'Aufräumen der Backups erfolgreich!',
|
|
||||||
'cleanup_successful_body' => 'Aufräumen der Backups von :application_name in :disk_name war erfolgreich.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Die Backups von :application_name in :disk_name sind gesund',
|
|
||||||
'healthy_backup_found_subject_title' => 'Die Backups von :application_name sind Gesund',
|
|
||||||
'healthy_backup_found_body' => 'Die Backups von :application_name wurden als gesund eingestuft. Gute Arbeit!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Wichtig: Die Backups für :application_name sind nicht gesund',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Wichtig: Die Backups für :application_name sind ungesund. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Die Backups für :application_name in :disk_name sind ungesund.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Das Backup Ziel konnte nicht erreicht werden. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Es gibt für die Anwendung noch gar keine Backups.',
|
|
||||||
'unhealthy_backup_found_old' => 'Das letzte Backup am :date ist zu lange her.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Sorry, ein genauer Grund konnte nicht gefunden werden.',
|
|
||||||
'unhealthy_backup_found_full' => 'Die Backups verbrauchen zu viel Platz. Aktuell wird :disk_usage belegt, dass ist höher als das erlaubte Limit von :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Bisher keine Backups vorhanden',
|
|
||||||
'application_name' => 'Applikationsname',
|
|
||||||
'backup_name' => 'Backup Name',
|
|
||||||
'disk' => 'Speicherort',
|
|
||||||
'newest_backup_size' => 'Neuste Backup-Größe',
|
|
||||||
'number_of_backups' => 'Anzahl Backups',
|
|
||||||
'total_storage_used' => 'Gesamter genutzter Speicherplatz',
|
|
||||||
'newest_backup_date' => 'Neustes Backup',
|
|
||||||
'oldest_backup_date' => 'Ältestes Backup',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Exception message: :message',
|
|
||||||
'exception_trace' => 'Exception trace: :trace',
|
|
||||||
'exception_message_title' => 'Exception message',
|
|
||||||
'exception_trace_title' => 'Exception trace',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Failed backup of :application_name',
|
|
||||||
'backup_failed_body' => 'Important: An error occurred while backing up :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Successful new backup of :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Successful new backup!',
|
|
||||||
'backup_successful_body' => 'Great news, a new backup of :application_name was successfully created on the disk named :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Cleaning up the backups of :application_name failed.',
|
|
||||||
'cleanup_failed_body' => 'An error occurred while cleaning up the backups of :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Clean up of :application_name backups successful',
|
|
||||||
'cleanup_successful_subject_title' => 'Clean up of backups successful!',
|
|
||||||
'cleanup_successful_body' => 'The clean up of the :application_name backups on the disk named :disk_name was successful.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'The backups for :application_name on disk :disk_name are healthy',
|
|
||||||
'healthy_backup_found_subject_title' => 'The backups for :application_name are healthy',
|
|
||||||
'healthy_backup_found_body' => 'The backups for :application_name are considered healthy. Good job!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Important: The backups for :application_name are unhealthy',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Important: The backups for :application_name are unhealthy. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'The backups for :application_name on disk :disk_name are unhealthy.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'The backup destination cannot be reached. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'There are no backups of this application at all.',
|
|
||||||
'unhealthy_backup_found_old' => 'The latest backup made on :date is considered too old.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Sorry, an exact reason cannot be determined.',
|
|
||||||
'unhealthy_backup_found_full' => 'The backups are using too much storage. Current usage is :disk_usage which is higher than the allowed limit of :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'No backups were made yet',
|
|
||||||
'application_name' => 'Application name',
|
|
||||||
'backup_name' => 'Backup name',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Newest backup size',
|
|
||||||
'number_of_backups' => 'Number of backups',
|
|
||||||
'total_storage_used' => 'Total storage used',
|
|
||||||
'newest_backup_date' => 'Newest backup date',
|
|
||||||
'oldest_backup_date' => 'Oldest backup date',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Mensaje de la excepción: :message',
|
|
||||||
'exception_trace' => 'Traza de la excepción: :trace',
|
|
||||||
'exception_message_title' => 'Mensaje de la excepción',
|
|
||||||
'exception_trace_title' => 'Traza de la excepción',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Copia de seguridad de :application_name fallida',
|
|
||||||
'backup_failed_body' => 'Importante: Ocurrió un error al realizar la copia de seguridad de :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Se completó con éxito la copia de seguridad de :application_name',
|
|
||||||
'backup_successful_subject_title' => '¡Nueva copia de seguridad creada con éxito!',
|
|
||||||
'backup_successful_body' => 'Buenas noticias, una nueva copia de seguridad de :application_name fue creada con éxito en el disco llamado :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'La limpieza de copias de seguridad de :application_name falló.',
|
|
||||||
'cleanup_failed_body' => 'Ocurrió un error mientras se realizaba la limpieza de copias de seguridad de :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'La limpieza de copias de seguridad de :application_name se completó con éxito',
|
|
||||||
'cleanup_successful_subject_title' => '!Limpieza de copias de seguridad completada con éxito!',
|
|
||||||
'cleanup_successful_body' => 'La limpieza de copias de seguridad de :application_name en el disco llamado :disk_name se completo con éxito.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Las copias de seguridad de :application_name en el disco :disk_name están en buen estado',
|
|
||||||
'healthy_backup_found_subject_title' => 'Las copias de seguridad de :application_name están en buen estado',
|
|
||||||
'healthy_backup_found_body' => 'Las copias de seguridad de :application_name se consideran en buen estado. ¡Buen trabajo!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Importante: Las copias de seguridad de :application_name están en mal estado',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Importante: Las copias de seguridad de :application_name están en mal estado. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Las copias de seguridad de :application_name en el disco :disk_name están en mal estado.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'No se puede acceder al destino de la copia de seguridad. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'No existe ninguna copia de seguridad de esta aplicación.',
|
|
||||||
'unhealthy_backup_found_old' => 'La última copia de seguriad hecha en :date es demasiado antigua.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Lo siento, no es posible determinar la razón exacta.',
|
|
||||||
'unhealthy_backup_found_full' => 'Las copias de seguridad están ocupando demasiado espacio. El espacio utilizado actualmente es :disk_usage el cual es mayor que el límite permitido de :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Aún no se hicieron copias de seguridad',
|
|
||||||
'application_name' => 'Nombre de la aplicación',
|
|
||||||
'backup_name' => 'Nombre de la copia de seguridad',
|
|
||||||
'disk' => 'Disco',
|
|
||||||
'newest_backup_size' => 'Tamaño de copia de seguridad más reciente',
|
|
||||||
'number_of_backups' => 'Número de copias de seguridad',
|
|
||||||
'total_storage_used' => 'Almacenamiento total utilizado',
|
|
||||||
'newest_backup_date' => 'Fecha de la copia de seguridad más reciente',
|
|
||||||
'oldest_backup_date' => 'Fecha de la copia de seguridad más antigua',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'پیغام خطا: :message',
|
|
||||||
'exception_trace' => 'جزییات خطا: :trace',
|
|
||||||
'exception_message_title' => 'پیغام خطا',
|
|
||||||
'exception_trace_title' => 'جزییات خطا',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'پشتیبانگیری :application_name با خطا مواجه شد.',
|
|
||||||
'backup_failed_body' => 'پیغام مهم: هنگام پشتیبانگیری از :application_name خطایی رخ داده است. ',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'نسخه پشتیبان جدید :application_name با موفقیت ساخته شد.',
|
|
||||||
'backup_successful_subject_title' => 'پشتیبانگیری موفق!',
|
|
||||||
'backup_successful_body' => 'خبر خوب، به تازگی نسخه پشتیبان :application_name روی دیسک :disk_name با موفقیت ساخته شد. ',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'پاکسازی نسخه پشتیبان :application_name انجام نشد.',
|
|
||||||
'cleanup_failed_body' => 'هنگام پاکسازی نسخه پشتیبان :application_name خطایی رخ داده است.',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'پاکسازی نسخه پشتیبان :application_name با موفقیت انجام شد.',
|
|
||||||
'cleanup_successful_subject_title' => 'پاکسازی نسخه پشتیبان!',
|
|
||||||
'cleanup_successful_body' => 'پاکسازی نسخه پشتیبان :application_name روی دیسک :disk_name با موفقیت انجام شد.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'نسخه پشتیبان :application_name روی دیسک :disk_name سالم بود.',
|
|
||||||
'healthy_backup_found_subject_title' => 'نسخه پشتیبان :application_name سالم بود.',
|
|
||||||
'healthy_backup_found_body' => 'نسخه پشتیبان :application_name به نظر سالم میاد. دمت گرم!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'خبر مهم: نسخه پشتیبان :application_name سالم نبود.',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'خبر مهم: نسخه پشتیبان :application_name سالم نبود. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'نسخه پشتیبان :application_name روی دیسک :disk_name سالم نبود.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'مقصد پشتیبانگیری در دسترس نبود. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'برای این برنامه هیچ نسخه پشتیبانی وجود ندارد.',
|
|
||||||
'unhealthy_backup_found_old' => 'آخرین نسخه پشتیبان برای تاریخ :date است، که به نظر خیلی قدیمی میاد. ',
|
|
||||||
'unhealthy_backup_found_unknown' => 'متاسفانه دلیل دقیقی قابل تعیین نیست.',
|
|
||||||
'unhealthy_backup_found_full' => 'نسخههای پشتیبان حجم زیادی اشغال کردهاند. میزان دیسک استفادهشده :disk_usage است که از میزان مجاز :disk_limit فراتر رفته است. ',
|
|
||||||
|
|
||||||
'no_backups_info' => 'هنوز نسخه پشتیبان تهیه نشده است',
|
|
||||||
'application_name' => 'نام نرمافزار',
|
|
||||||
'backup_name' => 'نام نسخه پشتیبان',
|
|
||||||
'disk' => 'دیسک',
|
|
||||||
'newest_backup_size' => 'اندازه جدیدترین نسخه پشتیبان',
|
|
||||||
'number_of_backups' => 'تعداد نسخههای پشتیبان',
|
|
||||||
'total_storage_used' => 'کل فضای ذخیرهسازی استفادهشده',
|
|
||||||
'newest_backup_date' => 'تاریخ جدیدترین نسخه پشتیبان',
|
|
||||||
'oldest_backup_date' => 'تاریخ قدیمیترین نسخه پشتیبان',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Virheilmoitus: :message',
|
|
||||||
'exception_trace' => 'Virhe, jäljitys: :trace',
|
|
||||||
'exception_message_title' => 'Virheilmoitus',
|
|
||||||
'exception_trace_title' => 'Virheen jäljitys',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name varmuuskopiointi epäonnistui',
|
|
||||||
'backup_failed_body' => 'HUOM!: :application_name varmuuskoipionnissa tapahtui virhe',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name varmuuskopioitu onnistuneesti',
|
|
||||||
'backup_successful_subject_title' => 'Uusi varmuuskopio!',
|
|
||||||
'backup_successful_body' => 'Hyviä uutisia! :application_name on varmuuskopioitu levylle :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name varmuuskopioiden poistaminen epäonnistui.',
|
|
||||||
'cleanup_failed_body' => ':application_name varmuuskopioiden poistamisessa tapahtui virhe.',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name varmuuskopiot poistettu onnistuneesti',
|
|
||||||
'cleanup_successful_subject_title' => 'Varmuuskopiot poistettu onnistuneesti!',
|
|
||||||
'cleanup_successful_body' => ':application_name varmuuskopiot poistettu onnistuneesti levyltä :disk_name.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':application_name varmuuskopiot levyllä :disk_name ovat kunnossa',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name varmuuskopiot ovat kunnossa',
|
|
||||||
'healthy_backup_found_body' => ':application_name varmuuskopiot ovat kunnossa. Hieno homma!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'HUOM!: :application_name varmuuskopiot ovat vialliset',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'HUOM!: :application_name varmuuskopiot ovat vialliset. :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':application_name varmuuskopiot levyllä :disk_name ovat vialliset.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Varmuuskopioiden kohdekansio ei ole saatavilla. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Tästä sovelluksesta ei ole varmuuskopioita.',
|
|
||||||
'unhealthy_backup_found_old' => 'Viimeisin varmuuskopio, luotu :date, on liian vanha.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Virhe, tarkempaa tietoa syystä ei valitettavasti ole saatavilla.',
|
|
||||||
'unhealthy_backup_found_full' => 'Varmuuskopiot vievät liikaa levytilaa. Tällä hetkellä käytössä :disk_usage, mikä on suurempi kuin sallittu tilavuus (:disk_limit).',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Varmuuskopioita ei vielä tehty',
|
|
||||||
'application_name' => 'Sovelluksen nimi',
|
|
||||||
'backup_name' => 'Varmuuskopion nimi',
|
|
||||||
'disk' => 'Levy',
|
|
||||||
'newest_backup_size' => 'Uusin varmuuskopion koko',
|
|
||||||
'number_of_backups' => 'Varmuuskopioiden määrä',
|
|
||||||
'total_storage_used' => 'Käytetty tallennustila yhteensä',
|
|
||||||
'newest_backup_date' => 'Uusin varmuuskopion koko',
|
|
||||||
'oldest_backup_date' => 'Vanhin varmuuskopion koko',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Message de l\'exception : :message',
|
|
||||||
'exception_trace' => 'Trace de l\'exception : :trace',
|
|
||||||
'exception_message_title' => 'Message de l\'exception',
|
|
||||||
'exception_trace_title' => 'Trace de l\'exception',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Échec de la sauvegarde de :application_name',
|
|
||||||
'backup_failed_body' => 'Important : Une erreur est survenue lors de la sauvegarde de :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Succès de la sauvegarde de :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Sauvegarde créée avec succès !',
|
|
||||||
'backup_successful_body' => 'Bonne nouvelle, une nouvelle sauvegarde de :application_name a été créée avec succès sur le disque nommé :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Le nettoyage des sauvegardes de :application_name a echoué.',
|
|
||||||
'cleanup_failed_body' => 'Une erreur est survenue lors du nettoyage des sauvegardes de :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Succès du nettoyage des sauvegardes de :application_name',
|
|
||||||
'cleanup_successful_subject_title' => 'Sauvegardes nettoyées avec succès !',
|
|
||||||
'cleanup_successful_body' => 'Le nettoyage des sauvegardes de :application_name sur le disque nommé :disk_name a été effectué avec succès.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Les sauvegardes pour :application_name sur le disque :disk_name sont saines',
|
|
||||||
'healthy_backup_found_subject_title' => 'Les sauvegardes pour :application_name sont saines',
|
|
||||||
'healthy_backup_found_body' => 'Les sauvegardes pour :application_name sont considérées saines. Bon travail !',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Important : Les sauvegardes pour :application_name sont corrompues',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Important : Les sauvegardes pour :application_name sont corrompues. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Les sauvegardes pour :application_name sur le disque :disk_name sont corrompues.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'La destination de la sauvegarde n\'est pas accessible. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Il n\'y a aucune sauvegarde pour cette application.',
|
|
||||||
'unhealthy_backup_found_old' => 'La dernière sauvegarde du :date est considérée trop vieille.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Désolé, une raison exacte ne peut être déterminée.',
|
|
||||||
'unhealthy_backup_found_full' => 'Les sauvegardes utilisent trop d\'espace disque. L\'utilisation actuelle est de :disk_usage alors que la limite autorisée est de :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Aucune sauvegarde n\'a encore été effectuée',
|
|
||||||
'application_name' => 'Nom de l\'application',
|
|
||||||
'backup_name' => 'Nom de la sauvegarde',
|
|
||||||
'disk' => 'Disque',
|
|
||||||
'newest_backup_size' => 'Taille de la sauvegarde la plus récente',
|
|
||||||
'number_of_backups' => 'Nombre de sauvegardes',
|
|
||||||
'total_storage_used' => 'Stockage total utilisé',
|
|
||||||
'newest_backup_date' => 'Date de la sauvegarde la plus récente',
|
|
||||||
'oldest_backup_date' => 'Date de la sauvegarde la plus ancienne',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'הודעת חריגה: :message',
|
|
||||||
'exception_trace' => 'מעקב חריגה: :trace',
|
|
||||||
'exception_message_title' => 'הודעת חריגה',
|
|
||||||
'exception_trace_title' => 'מעקב חריגה',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'כשל בגיבוי של :application_name',
|
|
||||||
'backup_failed_body' => 'חשוב: אירעה שגיאה במהלך גיבוי היישום :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'גיבוי חדש מוצלח של :application_name',
|
|
||||||
'backup_successful_subject_title' => 'גיבוי חדש מוצלח!',
|
|
||||||
'backup_successful_body' => 'חדשות טובות, גיבוי חדש של :application_name נוצר בהצלחה על הדיסק בשם :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'נכשל בניקוי הגיבויים של :application_name',
|
|
||||||
'cleanup_failed_body' => 'אירעה שגיאה במהלך ניקוי הגיבויים של :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'ניקוי הגיבויים של :application_name בוצע בהצלחה',
|
|
||||||
'cleanup_successful_subject_title' => 'ניקוי הגיבויים בוצע בהצלחה!',
|
|
||||||
'cleanup_successful_body' => 'ניקוי הגיבויים של :application_name על הדיסק בשם :disk_name בוצע בהצלחה.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'הגיבויים של :application_name על הדיסק :disk_name תקינים',
|
|
||||||
'healthy_backup_found_subject_title' => 'הגיבויים של :application_name תקינים',
|
|
||||||
'healthy_backup_found_body' => 'הגיבויים של :application_name נחשבים לתקינים. עבודה טובה!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'חשוב: הגיבויים של :application_name אינם תקינים',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'חשוב: הגיבויים של :application_name אינם תקינים. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'הגיבויים של :application_name על הדיסק :disk_name אינם תקינים.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'לא ניתן להגיע ליעד הגיבוי. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'אין גיבויים של היישום הזה בכלל.',
|
|
||||||
'unhealthy_backup_found_old' => 'הגיבוי האחרון שנעשה בתאריך :date נחשב כישן מדי.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'מצטערים, לא ניתן לקבוע סיבה מדויקת.',
|
|
||||||
'unhealthy_backup_found_full' => 'הגיבויים משתמשים בשטח אחסון רב מידי. שימוש הנוכחי הוא :disk_usage, שגבול המותר הוא :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'לא נעשו עדיין גיבויים',
|
|
||||||
'application_name' => 'שם היישום',
|
|
||||||
'backup_name' => 'שם הגיבוי',
|
|
||||||
'disk' => 'דיסק',
|
|
||||||
'newest_backup_size' => 'גודל הגיבוי החדש ביותר',
|
|
||||||
'number_of_backups' => 'מספר הגיבויים',
|
|
||||||
'total_storage_used' => 'סך האחסון המופעל',
|
|
||||||
'newest_backup_date' => 'תאריך הגיבוי החדש ביותר',
|
|
||||||
'oldest_backup_date' => 'תאריך הגיבוי הישן ביותר',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'अपवाद संदेश: :message',
|
|
||||||
'exception_trace' => 'अपवाद निशान: :trace',
|
|
||||||
'exception_message_title' => 'अपवादी संदेश',
|
|
||||||
'exception_trace_title' => 'अपवाद निशान',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name का बैकअप असफल रहा',
|
|
||||||
'backup_failed_body' => 'जरूरी सुचना: :application_name का बैकअप लेते समय असफल रहे',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name का बैकअप सफल रहा',
|
|
||||||
'backup_successful_subject_title' => 'बैकअप सफल रहा!',
|
|
||||||
'backup_successful_body' => 'खुशखबर, :application_name का बैकअप :disk_name पर संग्रहित करने मे सफल रहे.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name के बैकअप की सफाई असफल रही.',
|
|
||||||
'cleanup_failed_body' => ':application_name के बैकअप की सफाई करते समय कुछ बाधा आयी है.',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name के बैकअप की सफाई सफल रही',
|
|
||||||
'cleanup_successful_subject_title' => 'बैकअप की सफाई सफल रही!',
|
|
||||||
'cleanup_successful_body' => ':application_name का बैकअप जो :disk_name नाम की डिस्क पर संग्रहित है, उसकी सफाई सफल रही.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':disk_name नाम की डिस्क पर संग्रहित :application_name के बैकअप स्वस्थ है',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name के सभी बैकअप स्वस्थ है',
|
|
||||||
'healthy_backup_found_body' => 'बहुत बढ़िया! :application_name के सभी बैकअप स्वस्थ है.',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'जरूरी सुचना : :application_name के बैकअप अस्वस्थ है',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'जरूरी सुचना : :application_name के बैकअप :problem के बजेसे अस्वस्थ है',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name नाम की डिस्क पर संग्रहित :application_name के बैकअप अस्वस्थ है',
|
|
||||||
'unhealthy_backup_found_not_reachable' => ':error के बजेसे बैकअप की मंजिल तक पोहोच नहीं सकते.',
|
|
||||||
'unhealthy_backup_found_empty' => 'इस एप्लीकेशन का कोई भी बैकअप नहीं है.',
|
|
||||||
'unhealthy_backup_found_old' => 'हालहीमें :date को लिया हुआ बैकअप बहुत पुराना है.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'माफ़ कीजिये, सही कारण निर्धारित नहीं कर सकते.',
|
|
||||||
'unhealthy_backup_found_full' => 'सभी बैकअप बहुत ज्यादा जगह का उपयोग कर रहे है. फ़िलहाल सभी बैकअप :disk_usage जगह का उपयोग कर रहे है, जो की :disk_limit अनुमति सीमा से अधिक का है.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'अभी तक कोई बैकअप नहीं बनाया गया था',
|
|
||||||
'application_name' => 'आवेदन का नाम',
|
|
||||||
'backup_name' => 'बैकअप नाम',
|
|
||||||
'disk' => 'डिस्क',
|
|
||||||
'newest_backup_size' => 'नवीनतम बैकअप आकार',
|
|
||||||
'number_of_backups' => 'बैकअप की संख्या',
|
|
||||||
'total_storage_used' => 'उपयोग किया गया कुल संग्रहण',
|
|
||||||
'newest_backup_date' => 'नवीनतम बैकअप आकार',
|
|
||||||
'oldest_backup_date' => 'सबसे पुराना बैकअप आकार',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Greška: :message',
|
|
||||||
'exception_trace' => 'Praćenje greške: :trace',
|
|
||||||
'exception_message_title' => 'Greška',
|
|
||||||
'exception_trace_title' => 'Praćenje greške',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Neuspješno sigurnosno kopiranje za :application_name',
|
|
||||||
'backup_failed_body' => 'Važno: Došlo je do greške prilikom sigurnosnog kopiranja za :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Uspješno sigurnosno kopiranje za :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Uspješno sigurnosno kopiranje!',
|
|
||||||
'backup_successful_body' => 'Nova sigurnosna kopija za :application_name je uspješno spremljena na disk :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Neuspješno čišćenje sigurnosnih kopija za :application_name',
|
|
||||||
'cleanup_failed_body' => 'Došlo je do greške prilikom čišćenja sigurnosnih kopija za :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Uspješno čišćenje sigurnosnih kopija za :application_name',
|
|
||||||
'cleanup_successful_subject_title' => 'Uspješno čišćenje sigurnosnih kopija!',
|
|
||||||
'cleanup_successful_body' => 'Sigurnosne kopije za :application_name su uspješno očišćene s diska :disk_name.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Sigurnosne kopije za :application_name na disku :disk_name su zdrave',
|
|
||||||
'healthy_backup_found_subject_title' => 'Sigurnosne kopije za :application_name su zdrave',
|
|
||||||
'healthy_backup_found_body' => 'Sigurnosne kopije za :application_name se smatraju zdravima. Svaka čast!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Važno: Sigurnosne kopije za :application_name su nezdrave',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Važno: Sigurnosne kopije za :application_name su nezdrave. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Sigurnosne kopije za :application_name na disku :disk_name su nezdrave.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Destinacija sigurnosne kopije nije dohvatljiva. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Nijedna sigurnosna kopija ove aplikacije ne postoji.',
|
|
||||||
'unhealthy_backup_found_old' => 'Zadnja sigurnosna kopija generirana na datum :date smatra se prestarom.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Isprike, ali nije moguće odrediti razlog.',
|
|
||||||
'unhealthy_backup_found_full' => 'Sigurnosne kopije zauzimaju previše prostora. Trenutno zauzeće je :disk_usage što je više od dozvoljenog ograničenja od :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Nema sigurnosnih kopija',
|
|
||||||
'application_name' => 'Naziv aplikacije',
|
|
||||||
'backup_name' => 'Naziv sigurnosne kopije',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Veličina najnovije sigurnosne kopije',
|
|
||||||
'number_of_backups' => 'Broj sigurnosnih kopija',
|
|
||||||
'total_storage_used' => 'Ukupno zauzeće',
|
|
||||||
'newest_backup_date' => 'Najnovija kopija na datum',
|
|
||||||
'oldest_backup_date' => 'Najstarija kopija na datum',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Pesan pengecualian: :message',
|
|
||||||
'exception_trace' => 'Jejak pengecualian: :trace',
|
|
||||||
'exception_message_title' => 'Pesan pengecualian',
|
|
||||||
'exception_trace_title' => 'Jejak pengecualian',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Gagal backup :application_name',
|
|
||||||
'backup_failed_body' => 'Penting: Sebuah error terjadi ketika membackup :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Backup baru sukses dari :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Backup baru sukses!',
|
|
||||||
'backup_successful_body' => 'Kabar baik, sebuah backup baru dari :application_name sukses dibuat pada disk bernama :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Membersihkan backup dari :application_name yang gagal.',
|
|
||||||
'cleanup_failed_body' => 'Sebuah error teradi ketika membersihkan backup dari :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Sukses membersihkan backup :application_name',
|
|
||||||
'cleanup_successful_subject_title' => 'Sukses membersihkan backup!',
|
|
||||||
'cleanup_successful_body' => 'Pembersihan backup :application_name pada disk bernama :disk_name telah sukses.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Backup untuk :application_name pada disk :disk_name sehat',
|
|
||||||
'healthy_backup_found_subject_title' => 'Backup untuk :application_name sehat',
|
|
||||||
'healthy_backup_found_body' => 'Backup untuk :application_name dipertimbangkan sehat. Kerja bagus!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Penting: Backup untuk :application_name tidak sehat',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Penting: Backup untuk :application_name tidak sehat. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Backup untuk :application_name pada disk :disk_name tidak sehat.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Tujuan backup tidak dapat terjangkau. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Tidak ada backup pada aplikasi ini sama sekali.',
|
|
||||||
'unhealthy_backup_found_old' => 'Backup terakhir dibuat pada :date dimana dipertimbahkan sudah sangat lama.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Maaf, sebuah alasan persisnya tidak dapat ditentukan.',
|
|
||||||
'unhealthy_backup_found_full' => 'Backup menggunakan terlalu banyak kapasitas penyimpanan. Penggunaan terkini adalah :disk_usage dimana lebih besar dari batas yang diperbolehkan yaitu :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Belum ada backup yang dibuat',
|
|
||||||
'application_name' => 'Nama aplikasi',
|
|
||||||
'backup_name' => 'Nama cadangan',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Ukuran cadangan terbaru',
|
|
||||||
'number_of_backups' => 'Jumlah cadangan',
|
|
||||||
'total_storage_used' => 'Total penyimpanan yang digunakan',
|
|
||||||
'newest_backup_date' => 'Ukuran cadangan terbaru',
|
|
||||||
'oldest_backup_date' => 'Ukuran cadangan tertua',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Messaggio dell\'eccezione: :message',
|
|
||||||
'exception_trace' => 'Traccia dell\'eccezione: :trace',
|
|
||||||
'exception_message_title' => 'Messaggio dell\'eccezione',
|
|
||||||
'exception_trace_title' => 'Traccia dell\'eccezione',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Fallito il backup di :application_name',
|
|
||||||
'backup_failed_body' => 'Importante: Si è verificato un errore durante il backup di :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Creato nuovo backup di :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Nuovo backup creato!',
|
|
||||||
'backup_successful_body' => 'Grande notizia, un nuovo backup di :application_name è stato creato con successo sul disco :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Pulizia dei backup di :application_name fallita.',
|
|
||||||
'cleanup_failed_body' => 'Si è verificato un errore durante la pulizia dei backup di :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Pulizia dei backup di :application_name avvenuta con successo',
|
|
||||||
'cleanup_successful_subject_title' => 'Pulizia dei backup avvenuta con successo!',
|
|
||||||
'cleanup_successful_body' => 'La pulizia dei backup di :application_name sul disco :disk_name è avvenuta con successo.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'I backup per :application_name sul disco :disk_name sono sani',
|
|
||||||
'healthy_backup_found_subject_title' => 'I backup per :application_name sono sani',
|
|
||||||
'healthy_backup_found_body' => 'I backup per :application_name sono considerati sani. Bel Lavoro!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Importante: i backup per :application_name sono corrotti',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Importante: i backup per :application_name sono corrotti. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'I backup per :application_name sul disco :disk_name sono corrotti.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Impossibile raggiungere la destinazione di backup. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Non esiste alcun backup di questa applicazione.',
|
|
||||||
'unhealthy_backup_found_old' => 'L\'ultimo backup fatto il :date è considerato troppo vecchio.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Spiacenti, non è possibile determinare una ragione esatta.',
|
|
||||||
'unhealthy_backup_found_full' => 'I backup utilizzano troppa memoria. L\'utilizzo corrente è :disk_usage che è superiore al limite consentito di :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Non sono stati ancora effettuati backup',
|
|
||||||
'application_name' => 'Nome dell\'applicazione',
|
|
||||||
'backup_name' => 'Nome di backup',
|
|
||||||
'disk' => 'Disco',
|
|
||||||
'newest_backup_size' => 'Dimensione backup più recente',
|
|
||||||
'number_of_backups' => 'Numero di backup',
|
|
||||||
'total_storage_used' => 'Spazio di archiviazione totale utilizzato',
|
|
||||||
'newest_backup_date' => 'Data del backup più recente',
|
|
||||||
'oldest_backup_date' => 'Data del backup più vecchio',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => '例外のメッセージ: :message',
|
|
||||||
'exception_trace' => '例外の追跡: :trace',
|
|
||||||
'exception_message_title' => '例外のメッセージ',
|
|
||||||
'exception_trace_title' => '例外の追跡',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name のバックアップに失敗しました。',
|
|
||||||
'backup_failed_body' => '重要: :application_name のバックアップ中にエラーが発生しました。',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name のバックアップに成功しました。',
|
|
||||||
'backup_successful_subject_title' => 'バックアップに成功しました!',
|
|
||||||
'backup_successful_body' => '朗報です。ディスク :disk_name へ :application_name のバックアップが成功しました。',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name のバックアップ削除に失敗しました。',
|
|
||||||
'cleanup_failed_body' => ':application_name のバックアップ削除中にエラーが発生しました。',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name のバックアップ削除に成功しました。',
|
|
||||||
'cleanup_successful_subject_title' => 'バックアップ削除に成功しました!',
|
|
||||||
'cleanup_successful_body' => 'ディスク :disk_name に保存された :application_name のバックアップ削除に成功しました。',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'ディスク :disk_name への :application_name のバックアップは正常です。',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name のバックアップは正常です。',
|
|
||||||
'healthy_backup_found_body' => ':application_name へのバックアップは正常です。いい仕事してますね!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => '重要: :application_name のバックアップに異常があります。',
|
|
||||||
'unhealthy_backup_found_subject_title' => '重要: :application_name のバックアップに異常があります。 :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name への :application_name のバックアップに異常があります。',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'バックアップ先にアクセスできませんでした。 :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'このアプリケーションのバックアップは見つかりませんでした。',
|
|
||||||
'unhealthy_backup_found_old' => ':date に保存された直近のバックアップが古すぎます。',
|
|
||||||
'unhealthy_backup_found_unknown' => '申し訳ございません。予期せぬエラーです。',
|
|
||||||
'unhealthy_backup_found_full' => 'バックアップがディスク容量を圧迫しています。現在の使用量 :disk_usage は、許可された限界値 :disk_limit を超えています。',
|
|
||||||
|
|
||||||
'no_backups_info' => 'バックアップはまだ作成されていません',
|
|
||||||
'application_name' => 'アプリケーション名',
|
|
||||||
'backup_name' => 'バックアップ名',
|
|
||||||
'disk' => 'ディスク',
|
|
||||||
'newest_backup_size' => '最新のバックアップサイズ',
|
|
||||||
'number_of_backups' => 'バックアップ数',
|
|
||||||
'total_storage_used' => '使用された合計ストレージ',
|
|
||||||
'newest_backup_date' => '最新のバックアップ日時',
|
|
||||||
'oldest_backup_date' => '最も古いバックアップ日時',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => '예외 메시지: :message',
|
|
||||||
'exception_trace' => '예외 추적: :trace',
|
|
||||||
'exception_message_title' => '예외 메시지',
|
|
||||||
'exception_trace_title' => '예외 추적',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name 백업 실패',
|
|
||||||
'backup_failed_body' => '중요: :application_name 백업 중 오류 발생',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name 백업 성공',
|
|
||||||
'backup_successful_subject_title' => '백업이 성공적으로 완료되었습니다!',
|
|
||||||
'backup_successful_body' => '좋은 소식입니다. :disk_name 디스크에 :application_name 백업이 성공적으로 완료되었습니다.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name 백업 정리 실패',
|
|
||||||
'cleanup_failed_body' => ':application_name 백업 정리 중 오류 발생',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name 백업 정리 성공',
|
|
||||||
'cleanup_successful_subject_title' => '백업 정리가 성공적으로 완료되었습니다!',
|
|
||||||
'cleanup_successful_body' => ':disk_name 디스크에 저장된 :application_name 백업 정리가 성공적으로 완료되었습니다.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':application_name 백업은 정상입니다.',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name 백업은 정상입니다.',
|
|
||||||
'healthy_backup_found_body' => ':application_name 백업은 정상입니다. 수고하셨습니다!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => '중요: :application_name 백업에 문제가 있습니다.',
|
|
||||||
'unhealthy_backup_found_subject_title' => '중요: :application_name 백업에 문제가 있습니다. :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name 디스크에 :application_name 백업에 문제가 있습니다.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => '백업 위치에 액세스할 수 없습니다. :error',
|
|
||||||
'unhealthy_backup_found_empty' => '이 애플리케이션에는 백업이 없습니다.',
|
|
||||||
'unhealthy_backup_found_old' => ':date에 저장된 최신 백업이 너무 오래되었습니다.',
|
|
||||||
'unhealthy_backup_found_unknown' => '죄송합니다. 예기치 않은 오류가 발생했습니다.',
|
|
||||||
'unhealthy_backup_found_full' => '백업이 디스크 공간을 다 차지하고 있습니다. 현재 사용량 :disk_usage는 허용 한도 :disk_limit을 초과합니다.',
|
|
||||||
|
|
||||||
'no_backups_info' => '아직 백업이 생성되지 않았습니다.',
|
|
||||||
'application_name' => '애플리케이션 이름',
|
|
||||||
'backup_name' => '백업 이름',
|
|
||||||
'disk' => '디스크',
|
|
||||||
'newest_backup_size' => '최신 백업 크기',
|
|
||||||
'number_of_backups' => '백업 수',
|
|
||||||
'total_storage_used' => '총 사용 스토리지',
|
|
||||||
'newest_backup_date' => '최신 백업 날짜',
|
|
||||||
'oldest_backup_date' => '가장 오래된 백업 날짜',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Fout bericht: :message',
|
|
||||||
'exception_trace' => 'Fout trace: :trace',
|
|
||||||
'exception_message_title' => 'Fout bericht',
|
|
||||||
'exception_trace_title' => 'Fout trace',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Back-up van :application_name mislukt',
|
|
||||||
'backup_failed_body' => 'Belangrijk: Er ging iets fout tijdens het maken van een back-up van :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Succesvolle nieuwe back-up van :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Succesvolle nieuwe back-up!',
|
|
||||||
'backup_successful_body' => 'Goed nieuws, een nieuwe back-up van :application_name was succesvol aangemaakt op de schijf genaamd :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Het opschonen van de back-ups van :application_name is mislukt.',
|
|
||||||
'cleanup_failed_body' => 'Er ging iets fout tijdens het opschonen van de back-ups van :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Opschonen van :application_name back-ups was succesvol.',
|
|
||||||
'cleanup_successful_subject_title' => 'Opschonen van back-ups was succesvol!',
|
|
||||||
'cleanup_successful_body' => 'Het opschonen van de :application_name back-ups op de schijf genaamd :disk_name was succesvol.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'De back-ups voor :application_name op schijf :disk_name zijn gezond',
|
|
||||||
'healthy_backup_found_subject_title' => 'De back-ups voor :application_name zijn gezond',
|
|
||||||
'healthy_backup_found_body' => 'De back-ups voor :application_name worden als gezond beschouwd. Goed gedaan!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Belangrijk: De back-ups voor :application_name zijn niet meer gezond',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Belangrijk: De back-ups voor :application_name zijn niet gezond. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'De back-ups voor :application_name op schijf :disk_name zijn niet gezond.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'De back-upbestemming kon niet worden bereikt. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Er zijn geen back-ups van deze applicatie beschikbaar.',
|
|
||||||
'unhealthy_backup_found_old' => 'De laatste back-up gemaakt op :date is te oud.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Sorry, een exacte reden kon niet worden bepaald.',
|
|
||||||
'unhealthy_backup_found_full' => 'De back-ups gebruiken te veel opslagruimte. Momenteel wordt er :disk_usage gebruikt wat hoger is dan de toegestane limiet van :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Er zijn nog geen back-ups gemaakt',
|
|
||||||
'application_name' => 'Naam van de toepassing',
|
|
||||||
'backup_name' => 'Back-upnaam',
|
|
||||||
'disk' => 'Schijf',
|
|
||||||
'newest_backup_size' => 'Nieuwste back-upgrootte',
|
|
||||||
'number_of_backups' => 'Aantal back-ups',
|
|
||||||
'total_storage_used' => 'Totale gebruikte opslagruimte',
|
|
||||||
'newest_backup_date' => 'Datum nieuwste back-up',
|
|
||||||
'oldest_backup_date' => 'Datum oudste back-up',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Exception: :message',
|
|
||||||
'exception_trace' => 'Exception trace: :trace',
|
|
||||||
'exception_message_title' => 'Exception',
|
|
||||||
'exception_trace_title' => 'Exception trace',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Backup feilet for :application_name',
|
|
||||||
'backup_failed_body' => 'Viktg: En feil oppstod under backing av :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Gjennomført backup av :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Gjennomført backup!',
|
|
||||||
'backup_successful_body' => 'Gode nyheter, en ny backup av :application_name ble opprettet på disken :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Opprydding av backup for :application_name feilet.',
|
|
||||||
'cleanup_failed_body' => 'En feil oppstod under opprydding av backups for :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Opprydding av backup for :application_name gjennomført',
|
|
||||||
'cleanup_successful_subject_title' => 'Opprydding av backup gjennomført!',
|
|
||||||
'cleanup_successful_body' => 'Oppryddingen av backup for :application_name på disken :disk_name har blitt gjennomført.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Alle backups for :application_name på disken :disk_name er OK',
|
|
||||||
'healthy_backup_found_subject_title' => 'Alle backups for :application_name er OK',
|
|
||||||
'healthy_backup_found_body' => 'Alle backups for :application_name er ok. Godt jobba!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Viktig: Backups for :application_name ikke OK',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Viktig: Backups for :application_name er ikke OK. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Backups for :application_name på disken :disk_name er ikke OK.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Kunne ikke finne backup-destinasjonen. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Denne applikasjonen mangler backups.',
|
|
||||||
'unhealthy_backup_found_old' => 'Den siste backupem fra :date er for gammel.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Beklager, kunne ikke finne nøyaktig årsak.',
|
|
||||||
'unhealthy_backup_found_full' => 'Backups bruker for mye lagringsplass. Nåværende diskbruk er :disk_usage, som er mer enn den tillatte grensen på :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Ingen sikkerhetskopier ble gjort ennå',
|
|
||||||
'application_name' => 'Programnavn',
|
|
||||||
'backup_name' => 'Navn på sikkerhetskopi',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'Nyeste backup-størrelse',
|
|
||||||
'number_of_backups' => 'Antall sikkerhetskopier',
|
|
||||||
'total_storage_used' => 'Total lagring brukt',
|
|
||||||
'newest_backup_date' => 'Nyeste backup-størrelse',
|
|
||||||
'oldest_backup_date' => 'Eldste sikkerhetskopistørrelse',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Błąd: :message',
|
|
||||||
'exception_trace' => 'Zrzut błędu: :trace',
|
|
||||||
'exception_message_title' => 'Błąd',
|
|
||||||
'exception_trace_title' => 'Zrzut błędu',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Tworzenie kopii zapasowej aplikacji :application_name nie powiodło się',
|
|
||||||
'backup_failed_body' => 'Ważne: Wystąpił błąd podczas tworzenia kopii zapasowej aplikacji :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Pomyślnie utworzono kopię zapasową aplikacji :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Nowa kopia zapasowa!',
|
|
||||||
'backup_successful_body' => 'Wspaniała wiadomość, nowa kopia zapasowa aplikacji :application_name została pomyślnie utworzona na dysku o nazwie :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Czyszczenie kopii zapasowych aplikacji :application_name nie powiodło się.',
|
|
||||||
'cleanup_failed_body' => 'Wystąpił błąd podczas czyszczenia kopii zapasowej aplikacji :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Kopie zapasowe aplikacji :application_name zostały pomyślnie wyczyszczone',
|
|
||||||
'cleanup_successful_subject_title' => 'Kopie zapasowe zostały pomyślnie wyczyszczone!',
|
|
||||||
'cleanup_successful_body' => 'Czyszczenie kopii zapasowych aplikacji :application_name na dysku :disk_name zakończone sukcesem.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Kopie zapasowe aplikacji :application_name na dysku :disk_name są poprawne',
|
|
||||||
'healthy_backup_found_subject_title' => 'Kopie zapasowe aplikacji :application_name są poprawne',
|
|
||||||
'healthy_backup_found_body' => 'Kopie zapasowe aplikacji :application_name są poprawne. Dobra robota!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Ważne: Kopie zapasowe aplikacji :application_name są niepoprawne',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Ważne: Kopie zapasowe aplikacji :application_name są niepoprawne. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Kopie zapasowe aplikacji :application_name na dysku :disk_name są niepoprawne.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Miejsce docelowe kopii zapasowej nie jest osiągalne. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'W aplikacji nie ma żadnej kopii zapasowych tej aplikacji.',
|
|
||||||
'unhealthy_backup_found_old' => 'Ostatnia kopia zapasowa wykonania dnia :date jest zbyt stara.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Niestety, nie można ustalić dokładnego błędu.',
|
|
||||||
'unhealthy_backup_found_full' => 'Kopie zapasowe zajmują zbyt dużo miejsca. Obecne użycie dysku :disk_usage jest większe od ustalonego limitu :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Nie utworzono jeszcze kopii zapasowych',
|
|
||||||
'application_name' => 'Nazwa aplikacji',
|
|
||||||
'backup_name' => 'Nazwa kopii zapasowej',
|
|
||||||
'disk' => 'Dysk',
|
|
||||||
'newest_backup_size' => 'Najnowszy rozmiar kopii zapasowej',
|
|
||||||
'number_of_backups' => 'Liczba kopii zapasowych',
|
|
||||||
'total_storage_used' => 'Całkowite wykorzystane miejsce',
|
|
||||||
'newest_backup_date' => 'Najnowszy rozmiar kopii zapasowej',
|
|
||||||
'oldest_backup_date' => 'Najstarszy rozmiar kopii zapasowej',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Mensagem de exceção: :message',
|
|
||||||
'exception_trace' => 'Rastreamento de exceção: :trace',
|
|
||||||
'exception_message_title' => 'Mensagem de exceção',
|
|
||||||
'exception_trace_title' => 'Rastreamento de exceção',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Falha no backup da aplicação :application_name',
|
|
||||||
'backup_failed_body' => 'Importante: Ocorreu um erro ao fazer o backup da aplicação :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Backup realizado com sucesso: :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Backup Realizado com sucesso!',
|
|
||||||
'backup_successful_body' => 'Boas notícias, um novo backup da aplicação :application_name foi criado no disco :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Falha na limpeza dos backups da aplicação :application_name.',
|
|
||||||
'cleanup_failed_body' => 'Um erro ocorreu ao fazer a limpeza dos backups da aplicação :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Limpeza dos backups da aplicação :application_name concluída!',
|
|
||||||
'cleanup_successful_subject_title' => 'Limpeza dos backups concluída!',
|
|
||||||
'cleanup_successful_body' => 'A limpeza dos backups da aplicação :application_name no disco :disk_name foi concluída.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Os backups da aplicação :application_name no disco :disk_name estão em dia',
|
|
||||||
'healthy_backup_found_subject_title' => 'Os backups da aplicação :application_name estão em dia',
|
|
||||||
'healthy_backup_found_body' => 'Os backups da aplicação :application_name estão em dia. Bom trabalho!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Importante: Os backups da aplicação :application_name não estão em dia',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Importante: Os backups da aplicação :application_name não estão em dia. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Os backups da aplicação :application_name no disco :disk_name não estão em dia.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'O destino dos backups não pode ser alcançado. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Não existem backups para essa aplicação.',
|
|
||||||
'unhealthy_backup_found_old' => 'O último backup realizado em :date é considerado muito antigo.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Desculpe, a exata razão não pode ser encontrada.',
|
|
||||||
'unhealthy_backup_found_full' => 'Os backups estão usando muito espaço de armazenamento. A utilização atual é de :disk_usage, o que é maior que o limite permitido de :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Nenhum backup foi feito ainda',
|
|
||||||
'application_name' => 'Nome da Aplicação',
|
|
||||||
'backup_name' => 'Nome de backup',
|
|
||||||
'disk' => 'Disco',
|
|
||||||
'newest_backup_size' => 'Tamanho do backup mais recente',
|
|
||||||
'number_of_backups' => 'Número de backups',
|
|
||||||
'total_storage_used' => 'Armazenamento total usado',
|
|
||||||
'newest_backup_date' => 'Data do backup mais recente',
|
|
||||||
'oldest_backup_date' => 'Data do backup mais antigo',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Mensagem de exceção: :message',
|
|
||||||
'exception_trace' => 'Rasto da exceção: :trace',
|
|
||||||
'exception_message_title' => 'Mensagem de exceção',
|
|
||||||
'exception_trace_title' => 'Rasto da exceção',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Falha no backup da aplicação :application_name',
|
|
||||||
'backup_failed_body' => 'Importante: Ocorreu um erro ao executar o backup da aplicação :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Backup realizado com sucesso: :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Backup Realizado com Sucesso!',
|
|
||||||
'backup_successful_body' => 'Boas notícias, foi criado um novo backup no disco :disk_name referente à aplicação :application_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Falha na limpeza dos backups da aplicação :application_name.',
|
|
||||||
'cleanup_failed_body' => 'Ocorreu um erro ao executar a limpeza dos backups da aplicação :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Limpeza dos backups da aplicação :application_name concluída!',
|
|
||||||
'cleanup_successful_subject_title' => 'Limpeza dos backups concluída!',
|
|
||||||
'cleanup_successful_body' => 'Concluída a limpeza dos backups da aplicação :application_name no disco :disk_name.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Os backups da aplicação :application_name no disco :disk_name estão em dia',
|
|
||||||
'healthy_backup_found_subject_title' => 'Os backups da aplicação :application_name estão em dia',
|
|
||||||
'healthy_backup_found_body' => 'Os backups da aplicação :application_name estão em dia. Bom trabalho!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Importante: Os backups da aplicação :application_name não estão em dia',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Importante: Os backups da aplicação :application_name não estão em dia. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Os backups da aplicação :application_name no disco :disk_name não estão em dia.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'O destino dos backups não pode ser alcançado. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Não existem backups para essa aplicação.',
|
|
||||||
'unhealthy_backup_found_old' => 'O último backup realizado em :date é demasiado antigo.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Desculpe, impossível determinar a razão exata.',
|
|
||||||
'unhealthy_backup_found_full' => 'Os backups estão a utilizar demasiado espaço de armazenamento. A utilização atual é de :disk_usage, o que é maior que o limite permitido de :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Nenhum backup foi feito ainda',
|
|
||||||
'application_name' => 'Nome da Aplicação',
|
|
||||||
'backup_name' => 'Nome de backup',
|
|
||||||
'disk' => 'Disco',
|
|
||||||
'newest_backup_size' => 'Tamanho de backup mais recente',
|
|
||||||
'number_of_backups' => 'Número de backups',
|
|
||||||
'total_storage_used' => 'Armazenamento total usado',
|
|
||||||
'newest_backup_date' => 'Data de backup mais recente',
|
|
||||||
'oldest_backup_date' => 'Data de backup mais antiga',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Cu excepția mesajului: :message',
|
|
||||||
'exception_trace' => 'Urmă excepţie: :trace',
|
|
||||||
'exception_message_title' => 'Mesaj de excepție',
|
|
||||||
'exception_trace_title' => 'Urmă excepţie',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Nu s-a putut face copie de rezervă pentru :application_name',
|
|
||||||
'backup_failed_body' => 'Important: A apărut o eroare în timpul generării copiei de rezervă pentru :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Copie de rezervă efectuată cu succes pentru :application_name',
|
|
||||||
'backup_successful_subject_title' => 'O nouă copie de rezervă a fost efectuată cu succes!',
|
|
||||||
'backup_successful_body' => 'Vești bune, o nouă copie de rezervă pentru :application_name a fost creată cu succes pe discul cu numele :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Curățarea copiilor de rezervă pentru :application_name nu a reușit.',
|
|
||||||
'cleanup_failed_body' => 'A apărut o eroare în timpul curățirii copiilor de rezervă pentru :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Curățarea copiilor de rezervă pentru :application_name a fost făcută cu succes',
|
|
||||||
'cleanup_successful_subject_title' => 'Curățarea copiilor de rezervă a fost făcută cu succes!',
|
|
||||||
'cleanup_successful_body' => 'Curățarea copiilor de rezervă pentru :application_name de pe discul cu numele :disk_name a fost făcută cu succes.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Copiile de rezervă pentru :application_name de pe discul :disk_name sunt în regulă',
|
|
||||||
'healthy_backup_found_subject_title' => 'Copiile de rezervă pentru :application_name sunt în regulă',
|
|
||||||
'healthy_backup_found_body' => 'Copiile de rezervă pentru :application_name sunt considerate în regulă. Bună treabă!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Important: Copiile de rezervă pentru :application_name nu sunt în regulă',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Important: Copiile de rezervă pentru :application_name nu sunt în regulă. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Copiile de rezervă pentru :application_name de pe discul :disk_name nu sunt în regulă.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Nu se poate ajunge la destinația copiilor de rezervă. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Nu există copii de rezervă ale acestei aplicații.',
|
|
||||||
'unhealthy_backup_found_old' => 'Cea mai recentă copie de rezervă făcută la :date este considerată prea veche.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Ne pare rău, un motiv exact nu poate fi determinat.',
|
|
||||||
'unhealthy_backup_found_full' => 'Copiile de rezervă folosesc prea mult spațiu de stocare. Utilizarea curentă este de :disk_usage care este mai mare decât limita permisă de :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Nu s-au făcut încă copii de rezervă',
|
|
||||||
'application_name' => 'Numele aplicatiei',
|
|
||||||
'backup_name' => 'Numele de rezervă',
|
|
||||||
'disk' => 'Disc',
|
|
||||||
'newest_backup_size' => 'Cea mai nouă dimensiune de rezervă',
|
|
||||||
'number_of_backups' => 'Număr de copii de rezervă',
|
|
||||||
'total_storage_used' => 'Spațiu total de stocare utilizat',
|
|
||||||
'newest_backup_date' => 'Cea mai nouă dimensiune de rezervă',
|
|
||||||
'oldest_backup_date' => 'Cea mai veche dimensiune de rezervă',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Сообщение об ошибке: :message',
|
|
||||||
'exception_trace' => 'Сведения об ошибке: :trace',
|
|
||||||
'exception_message_title' => 'Сообщение об ошибке',
|
|
||||||
'exception_trace_title' => 'Сведения об ошибке',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Не удалось сделать резервную копию :application_name',
|
|
||||||
'backup_failed_body' => 'Внимание: Произошла ошибка во время резервного копирования :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Успешно создана новая резервная копия :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Успешно создана новая резервная копия!',
|
|
||||||
'backup_successful_body' => 'Отличная новость, новая резервная копия :application_name успешно создана и сохранена на диск :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Не удалось очистить резервные копии :application_name',
|
|
||||||
'cleanup_failed_body' => 'Произошла ошибка при очистке резервных копий :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Очистка от резервных копий :application_name прошла успешно',
|
|
||||||
'cleanup_successful_subject_title' => 'Очистка резервных копий прошла успешно!',
|
|
||||||
'cleanup_successful_body' => 'Очистка от старых резервных копий :application_name на диске :disk_name прошла успешно.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Резервные копии :application_name с диска :disk_name исправны',
|
|
||||||
'healthy_backup_found_subject_title' => 'Резервные копии :application_name исправны',
|
|
||||||
'healthy_backup_found_body' => 'Резервные копии :application_name считаются исправными. Хорошая работа!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Внимание: резервные копии :application_name неисправны',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Внимание: резервные копии для :application_name неисправны. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Резервные копии для :application_name на диске :disk_name неисправны.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Не удается достичь места назначения резервной копии. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Резервные копии для этого приложения отсутствуют.',
|
|
||||||
'unhealthy_backup_found_old' => 'Последнее резервное копирование созданное :date является устаревшим.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Извините, точная причина не может быть определена.',
|
|
||||||
'unhealthy_backup_found_full' => 'Резервные копии используют слишком много памяти. Используется :disk_usage что выше допустимого предела: :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Резервных копий еще не было',
|
|
||||||
'application_name' => 'Имя приложения',
|
|
||||||
'backup_name' => 'Имя резервной копии',
|
|
||||||
'disk' => 'Диск',
|
|
||||||
'newest_backup_size' => 'Размер последней резервной копии',
|
|
||||||
'number_of_backups' => 'Количество резервных копий',
|
|
||||||
'total_storage_used' => 'Общий объем используемого хранилища',
|
|
||||||
'newest_backup_date' => 'Дата последней резервной копии',
|
|
||||||
'oldest_backup_date' => 'Дата самой старой резервной копии',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Hata mesajı: :message',
|
|
||||||
'exception_trace' => 'Hata izleri: :trace',
|
|
||||||
'exception_message_title' => 'Hata mesajı',
|
|
||||||
'exception_trace_title' => 'Hata izleri',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Yedeklenemedi :application_name',
|
|
||||||
'backup_failed_body' => 'Önemli: Yedeklenirken bir hata oluştu :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Başarılı :application_name yeni yedeklemesi',
|
|
||||||
'backup_successful_subject_title' => 'Başarılı bir yeni yedekleme!',
|
|
||||||
'backup_successful_body' => 'Harika bir haber, :application_name ait yeni bir yedekleme :disk_name adlı diskte başarıyla oluşturuldu.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => ':application_name yedeklemeleri temizlenmesi başarısız.',
|
|
||||||
'cleanup_failed_body' => ':application_name yedeklerini temizlerken bir hata oluştu ',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => ':application_name yedeklemeleri temizlenmesi başarılı.',
|
|
||||||
'cleanup_successful_subject_title' => 'Yedeklerin temizlenmesi başarılı!',
|
|
||||||
'cleanup_successful_body' => ':application_name yedeklemeleri temizlenmesi, :disk_name diskinden silindi',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':application_name yedeklenmesi, :disk_name adlı diskte sağlıklı',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name yedeklenmesi sağlıklı',
|
|
||||||
'healthy_backup_found_body' => ':application_name için yapılan yedeklemeler sağlıklı sayılır. Aferin!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Önemli: :application_name için yedeklemeler sağlıksız',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Önemli: :application_name için yedeklemeler sağlıksız. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Yedeklemeler: :application_name disk: :disk_name sağlıksız.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Yedekleme hedefine ulaşılamıyor. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Bu uygulamanın yedekleri yok.',
|
|
||||||
'unhealthy_backup_found_old' => ':date tarihinde yapılan en son yedekleme çok eski kabul ediliyor.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Üzgünüm, kesin bir sebep belirlenemiyor.',
|
|
||||||
'unhealthy_backup_found_full' => 'Yedeklemeler çok fazla depolama alanı kullanıyor. Şu anki kullanım: :disk_usage, izin verilen sınırdan yüksek: :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Henüz yedekleme yapılmadı',
|
|
||||||
'application_name' => 'Uygulama Adı',
|
|
||||||
'backup_name' => 'Yedek adı',
|
|
||||||
'disk' => 'Disk',
|
|
||||||
'newest_backup_size' => 'En yeni yedekleme boyutu',
|
|
||||||
'number_of_backups' => 'Yedekleme sayısı',
|
|
||||||
'total_storage_used' => 'Kullanılan toplam depolama alanı',
|
|
||||||
'newest_backup_date' => 'En yeni yedekleme tarihi',
|
|
||||||
'oldest_backup_date' => 'En eski yedekleme tarihi',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => 'Повідомлення про помилку: :message',
|
|
||||||
'exception_trace' => 'Деталі помилки: :trace',
|
|
||||||
'exception_message_title' => 'Повідомлення помилки',
|
|
||||||
'exception_trace_title' => 'Деталі помилки',
|
|
||||||
|
|
||||||
'backup_failed_subject' => 'Не вдалось зробити резервну копію :application_name',
|
|
||||||
'backup_failed_body' => 'Увага: Трапилась помилка під час резервного копіювання :application_name',
|
|
||||||
|
|
||||||
'backup_successful_subject' => 'Успішне резервне копіювання :application_name',
|
|
||||||
'backup_successful_subject_title' => 'Успішно створена резервна копія!',
|
|
||||||
'backup_successful_body' => 'Чудова новина, нова резервна копія :application_name успішно створена і збережена на диск :disk_name.',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => 'Не вдалось очистити резервні копії :application_name',
|
|
||||||
'cleanup_failed_body' => 'Сталася помилка під час очищення резервних копій :application_name',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => 'Успішне очищення від резервних копій :application_name',
|
|
||||||
'cleanup_successful_subject_title' => 'Очищення резервних копій пройшло вдало!',
|
|
||||||
'cleanup_successful_body' => 'Очищенно від старих резервних копій :application_name на диску :disk_name пойшло успішно.',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => 'Резервна копія :application_name з диску :disk_name установлена',
|
|
||||||
'healthy_backup_found_subject_title' => 'Резервна копія :application_name установлена',
|
|
||||||
'healthy_backup_found_body' => 'Резервна копія :application_name успішно установлена. Хороша робота!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => 'Увага: резервна копія :application_name не установилась',
|
|
||||||
'unhealthy_backup_found_subject_title' => 'Увага: резервна копія для :application_name не установилась. :problem',
|
|
||||||
'unhealthy_backup_found_body' => 'Резервна копія для :application_name на диску :disk_name не установилась.',
|
|
||||||
'unhealthy_backup_found_not_reachable' => 'Резервна копія не змогла установитись. :error',
|
|
||||||
'unhealthy_backup_found_empty' => 'Резервні копії для цього додатку відсутні.',
|
|
||||||
'unhealthy_backup_found_old' => 'Останнє резервне копіювання створено :date є застарілим.',
|
|
||||||
'unhealthy_backup_found_unknown' => 'Вибачте, але ми не змогли визначити точну причину.',
|
|
||||||
'unhealthy_backup_found_full' => 'Резервні копії використовують занадто багато пам`яті. Використовується :disk_usage що вище за допустиму межу :disk_limit.',
|
|
||||||
|
|
||||||
'no_backups_info' => 'Резервних копій ще не було зроблено',
|
|
||||||
'application_name' => 'Назва програми',
|
|
||||||
'backup_name' => 'Резервне ім’я',
|
|
||||||
'disk' => 'Диск',
|
|
||||||
'newest_backup_size' => 'Найновіший розмір резервної копії',
|
|
||||||
'number_of_backups' => 'Кількість резервних копій',
|
|
||||||
'total_storage_used' => 'Загальний обсяг використаного сховища',
|
|
||||||
'newest_backup_date' => 'Найновіший розмір резервної копії',
|
|
||||||
'oldest_backup_date' => 'Найстаріший розмір резервної копії',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => '异常信息: :message',
|
|
||||||
'exception_trace' => '异常跟踪: :trace',
|
|
||||||
'exception_message_title' => '异常信息',
|
|
||||||
'exception_trace_title' => '异常跟踪',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name 备份失败',
|
|
||||||
'backup_failed_body' => '重要说明:备份 :application_name 时发生错误',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name 备份成功',
|
|
||||||
'backup_successful_subject_title' => '备份成功!',
|
|
||||||
'backup_successful_body' => '好消息, :application_name 备份成功,位于磁盘 :disk_name 中。',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => '清除 :application_name 的备份失败。',
|
|
||||||
'cleanup_failed_body' => '清除备份 :application_name 时发生错误',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => '成功清除 :application_name 的备份',
|
|
||||||
'cleanup_successful_subject_title' => '成功清除备份!',
|
|
||||||
'cleanup_successful_body' => '成功清除 :disk_name 磁盘上 :application_name 的备份。',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':disk_name 磁盘上 :application_name 的备份是健康的',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name 的备份是健康的',
|
|
||||||
'healthy_backup_found_body' => ':application_name 的备份是健康的。干的好!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => '重要说明::application_name 的备份不健康',
|
|
||||||
'unhealthy_backup_found_subject_title' => '重要说明::application_name 备份不健康。 :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name 磁盘上 :application_name 的备份不健康。',
|
|
||||||
'unhealthy_backup_found_not_reachable' => '无法访问备份目标。 :error',
|
|
||||||
'unhealthy_backup_found_empty' => '根本没有此应用程序的备份。',
|
|
||||||
'unhealthy_backup_found_old' => '最近的备份创建于 :date ,太旧了。',
|
|
||||||
'unhealthy_backup_found_unknown' => '对不起,确切原因无法确定。',
|
|
||||||
'unhealthy_backup_found_full' => '备份占用了太多存储空间。当前占用了 :disk_usage ,高于允许的限制 :disk_limit。',
|
|
||||||
|
|
||||||
'no_backups_info' => '尚未进行任何备份',
|
|
||||||
'application_name' => '应用名称',
|
|
||||||
'backup_name' => '备份名称',
|
|
||||||
'disk' => '磁盘',
|
|
||||||
'newest_backup_size' => '最新备份大小',
|
|
||||||
'number_of_backups' => '备份数量',
|
|
||||||
'total_storage_used' => '使用的总存储量',
|
|
||||||
'newest_backup_date' => '最新备份大小',
|
|
||||||
'oldest_backup_date' => '最旧的备份大小',
|
|
||||||
];
|
|
|
@ -1,45 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'exception_message' => '異常訊息: :message',
|
|
||||||
'exception_trace' => '異常追蹤: :trace',
|
|
||||||
'exception_message_title' => '異常訊息',
|
|
||||||
'exception_trace_title' => '異常追蹤',
|
|
||||||
|
|
||||||
'backup_failed_subject' => ':application_name 備份失敗',
|
|
||||||
'backup_failed_body' => '重要說明:備份 :application_name 時發生錯誤',
|
|
||||||
|
|
||||||
'backup_successful_subject' => ':application_name 備份成功',
|
|
||||||
'backup_successful_subject_title' => '備份成功!',
|
|
||||||
'backup_successful_body' => '好消息, :application_name 備份成功,位於磁碟 :disk_name 中。',
|
|
||||||
|
|
||||||
'cleanup_failed_subject' => '清除 :application_name 的備份失敗。',
|
|
||||||
'cleanup_failed_body' => '清除備份 :application_name 時發生錯誤',
|
|
||||||
|
|
||||||
'cleanup_successful_subject' => '成功清除 :application_name 的備份',
|
|
||||||
'cleanup_successful_subject_title' => '成功清除備份!',
|
|
||||||
'cleanup_successful_body' => '成功清除 :disk_name 磁碟上 :application_name 的備份。',
|
|
||||||
|
|
||||||
'healthy_backup_found_subject' => ':disk_name 磁碟上 :application_name 的備份是健康的',
|
|
||||||
'healthy_backup_found_subject_title' => ':application_name 的備份是健康的',
|
|
||||||
'healthy_backup_found_body' => ':application_name 的備份是健康的。幹的好!',
|
|
||||||
|
|
||||||
'unhealthy_backup_found_subject' => '重要說明::application_name 的備份不健康',
|
|
||||||
'unhealthy_backup_found_subject_title' => '重要說明::application_name 備份不健康。 :problem',
|
|
||||||
'unhealthy_backup_found_body' => ':disk_name 磁碟上 :application_name 的備份不健康。',
|
|
||||||
'unhealthy_backup_found_not_reachable' => '無法訪問備份目標。 :error',
|
|
||||||
'unhealthy_backup_found_empty' => '根本沒有此應用程序的備份。',
|
|
||||||
'unhealthy_backup_found_old' => '最近的備份創建於 :date ,太舊了。',
|
|
||||||
'unhealthy_backup_found_unknown' => '對不起,確切原因無法確定。',
|
|
||||||
'unhealthy_backup_found_full' => '備份佔用了太多存儲空間。當前佔用了 :disk_usage ,高於允許的限制 :disk_limit。',
|
|
||||||
|
|
||||||
'no_backups_info' => '尚未進行任何備份',
|
|
||||||
'application_name' => '應用名稱',
|
|
||||||
'backup_name' => '備份名稱',
|
|
||||||
'disk' => '磁碟',
|
|
||||||
'newest_backup_size' => '最新備份大小',
|
|
||||||
'number_of_backups' => '備份數量',
|
|
||||||
'total_storage_used' => '使用的總存儲量',
|
|
||||||
'newest_backup_date' => '最新備份大小',
|
|
||||||
'oldest_backup_date' => '最早的備份大小',
|
|
||||||
];
|
|
|
@ -37,7 +37,9 @@
|
||||||
@if ($accessory->name)
|
@if ($accessory->name)
|
||||||
<!-- accessory name -->
|
<!-- accessory name -->
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">{{ trans('admin/hardware/form.name') }}</label>
|
<label class="col-sm-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.name') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<p class="form-control-static">{{ $accessory->name }}</p>
|
<p class="form-control-static">{{ $accessory->name }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -54,7 +56,9 @@
|
||||||
</div>
|
</div>
|
||||||
<!-- Checkout/Checkin Date -->
|
<!-- Checkout/Checkin Date -->
|
||||||
<div class="form-group{{ $errors->has('checkin_at') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('checkin_at') ? ' has-error' : '' }}">
|
||||||
{{ Form::label('checkin_at', trans('admin/hardware/form.checkin_date'), array('class' => 'col-md-3 control-label')) }}
|
<label for="checkin_at" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.checkin_date') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-7">
|
<div class="col-md-7">
|
||||||
<div class="input-group col-md-5 required" style="padding-left: 0px;">
|
<div class="input-group col-md-5 required" style="padding-left: 0px;">
|
||||||
<div class="input-group date" data-date-clear-btn="true" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-autoclose="true">
|
<div class="input-group date" data-date-clear-btn="true" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-autoclose="true">
|
||||||
|
|
|
@ -61,7 +61,9 @@
|
||||||
@if ($snipeSettings->allow_user_skin=='1')
|
@if ($snipeSettings->allow_user_skin=='1')
|
||||||
<!-- Skin -->
|
<!-- Skin -->
|
||||||
<div class="form-group {{ $errors->has('skin') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('skin') ? 'error' : '' }}">
|
||||||
<label for="website" class="col-md-3 control-label">{{ Form::label('skin', trans('general.skin')) }}</label>
|
<label for="skin" class="col-md-3 control-label">
|
||||||
|
{{ trans('general.skin') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
{!! Form::user_skin('skin', old('skin', $user->skin), 'select2') !!}
|
{!! Form::user_skin('skin', old('skin', $user->skin), 'select2') !!}
|
||||||
{!! $errors->first('skin', '<span class="alert-msg">:message</span>') !!}
|
{!! $errors->first('skin', '<span class="alert-msg">:message</span>') !!}
|
||||||
|
|
|
@ -35,7 +35,9 @@
|
||||||
|
|
||||||
<!-- Asset model -->
|
<!-- Asset model -->
|
||||||
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.model'), array('class' => 'col-md-3 control-label')) }}
|
<label class="col-sm-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.model') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<p class="form-control-static">
|
<p class="form-control-static">
|
||||||
@if (($asset->model) && ($asset->model->name))
|
@if (($asset->model) && ($asset->model->name))
|
||||||
|
@ -57,7 +59,9 @@
|
||||||
|
|
||||||
<!-- Asset Name -->
|
<!-- Asset Name -->
|
||||||
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.name'), array('class' => 'col-md-3 control-label')) }}
|
<label for="name" class="col-sm-3 control-label">
|
||||||
|
{{ trans('general.name') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<p class="form-control-static">{{ $asset->name }}</p>
|
<p class="form-control-static">{{ $asset->name }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -99,7 +103,9 @@
|
||||||
|
|
||||||
<!-- Next Audit -->
|
<!-- Next Audit -->
|
||||||
<div class="form-group{{ $errors->has('next_audit_date') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('next_audit_date') ? ' has-error' : '' }}">
|
||||||
{{ Form::label('name', trans('general.next_audit_date'), array('class' => 'col-md-3 control-label')) }}
|
<label for="next_audit_date" class="col-sm-3 control-label">
|
||||||
|
{{ trans('general.next_audit_date') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-clear-btn="true">
|
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.next_audit_date') }}" name="next_audit_date" id="next_audit_date" value="{{ old('next_audit_date', $next_audit_date) }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.next_audit_date') }}" name="next_audit_date" id="next_audit_date" value="{{ old('next_audit_date', $next_audit_date) }}">
|
||||||
|
@ -113,7 +119,9 @@
|
||||||
|
|
||||||
<!-- Note -->
|
<!-- Note -->
|
||||||
<div class="form-group{{ $errors->has('note') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('note') ? ' has-error' : '' }}">
|
||||||
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
|
<label for="note" class="col-sm-3 control-label">
|
||||||
|
{{ trans('general.notes') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
||||||
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
|
|
@ -36,7 +36,9 @@
|
||||||
|
|
||||||
<!-- Checkout/Checkin Date -->
|
<!-- Checkout/Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
||||||
{{ Form::label('checkout_at', trans('admin/hardware/form.checkout_date'), array('class' => 'col-md-3 control-label')) }}
|
<label for="checkout_at" class="col-sm-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.checkout_date') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ old('checkout_at') }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ old('checkout_at') }}">
|
||||||
|
@ -48,7 +50,9 @@
|
||||||
|
|
||||||
<!-- Expected Checkin Date -->
|
<!-- Expected Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
||||||
{{ Form::label('expected_checkin', trans('admin/hardware/form.expected_checkin'), array('class' => 'col-md-3 control-label')) }}
|
<label for="expected_checkin" class="col-sm-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.expected_checkin') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d" data-date-clear-btn="true">
|
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ old('expected_checkin') }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ old('expected_checkin') }}">
|
||||||
|
@ -61,7 +65,9 @@
|
||||||
|
|
||||||
<!-- Note -->
|
<!-- Note -->
|
||||||
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
||||||
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
|
<label for="note" class="col-sm-3 control-label">
|
||||||
|
{{ trans('general.notes') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note') }}</textarea>
|
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note') }}</textarea>
|
||||||
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
|
|
@ -33,15 +33,16 @@
|
||||||
@if ($backto == 'user')
|
@if ($backto == 'user')
|
||||||
<form class="form-horizontal" method="post" action="{{ route('hardware.checkin.store', array('assetId'=> $asset->id, 'backto'=>'user')) }}" autocomplete="off">
|
<form class="form-horizontal" method="post" action="{{ route('hardware.checkin.store', array('assetId'=> $asset->id, 'backto'=>'user')) }}" autocomplete="off">
|
||||||
@else
|
@else
|
||||||
<form class="form-horizontal" method="post"
|
<form class="form-horizontal" method="post" action="{{ route('hardware.checkin.store', array('assetId'=> $asset->id)) }}" autocomplete="off">
|
||||||
action="{{ route('hardware.checkin.store', array('assetId'=> $asset->id)) }}" autocomplete="off">
|
|
||||||
@endif
|
@endif
|
||||||
{{csrf_field()}}
|
{{csrf_field()}}
|
||||||
|
|
||||||
<!-- AssetModel name -->
|
<!-- AssetModel name -->
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
{{ Form::label('model', trans('admin/hardware/form.model'), array('class' => 'col-md-3 control-label')) }}
|
<label for="model" class="col-sm-3 control-label">
|
||||||
<div class="col-md-8">
|
{{ trans('admin/hardware/form.model') }}
|
||||||
|
</label>
|
||||||
|
<div class="col-md-8">
|
||||||
|
|
||||||
<p class="form-control-static">
|
<p class="form-control-static">
|
||||||
@if (($asset->model) && ($asset->model->name))
|
@if (($asset->model) && ($asset->model->name))
|
||||||
|
@ -63,16 +64,20 @@
|
||||||
|
|
||||||
<!-- Asset Name -->
|
<!-- Asset Name -->
|
||||||
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.name'), array('class' => 'col-md-3 control-label')) }}
|
<label for="name" class="col-sm-3 control-label">
|
||||||
<div class="col-md-8">
|
{{ trans('general.name') }}
|
||||||
<input class="form-control" type="text" name="name" aria-label="name" id="name" value="{{ old('name', $asset->name) }}"/>
|
</label>
|
||||||
{!! $errors->first('name', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
<div class="col-md-8">
|
||||||
</div>
|
<input class="form-control" type="text" name="name" aria-label="name" id="name" value="{{ old('name', $asset->name) }}"/>
|
||||||
|
{!! $errors->first('name', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Status -->
|
<!-- Status -->
|
||||||
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
|
||||||
{{ Form::label('status_id', trans('admin/hardware/form.status'), array('class' => 'col-md-3 control-label')) }}
|
<label for="status_id" class="col-sm-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.status') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8 required">
|
<div class="col-md-8 required">
|
||||||
{{ Form::select('status_id', $statusLabel_list, '', array('class'=>'select2', 'style'=>'width:100%','id' =>'modal-statuslabel_types', 'aria-label'=>'status_id')) }}
|
{{ Form::select('status_id', $statusLabel_list, '', array('class'=>'select2', 'style'=>'width:100%','id' =>'modal-statuslabel_types', 'aria-label'=>'status_id')) }}
|
||||||
{!! $errors->first('status_id', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('status_id', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
@ -83,8 +88,9 @@
|
||||||
|
|
||||||
<!-- Checkout/Checkin Date -->
|
<!-- Checkout/Checkin Date -->
|
||||||
<div class="form-group{{ $errors->has('checkin_at') ? ' has-error' : '' }}">
|
<div class="form-group{{ $errors->has('checkin_at') ? ' has-error' : '' }}">
|
||||||
|
<label for="checkin_at" class="col-sm-3 control-label">
|
||||||
{{ Form::label('checkin_at', trans('admin/hardware/form.checkin_date'), array('class' => 'col-md-3 control-label')) }}
|
{{ trans('admin/hardware/form.checkin_date') }}
|
||||||
|
</label>
|
||||||
|
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group col-md-5 required">
|
<div class="input-group col-md-5 required">
|
||||||
|
@ -99,7 +105,9 @@
|
||||||
|
|
||||||
<!-- Note -->
|
<!-- Note -->
|
||||||
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
||||||
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
|
<label for="note" class="col-sm-3 control-label">
|
||||||
|
{{ trans('general.notes') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
||||||
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
|
|
@ -28,7 +28,9 @@
|
||||||
{{csrf_field()}}
|
{{csrf_field()}}
|
||||||
@if ($asset->company && $asset->company->name)
|
@if ($asset->company && $asset->company->name)
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
{{ Form::label('model', trans('general.company'), array('class' => 'col-md-3 control-label')) }}
|
<label for="company" class="col-md-3 control-label">
|
||||||
|
{{ trans('general.company') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<p class="form-control-static">
|
<p class="form-control-static">
|
||||||
{{ $asset->company->name }}
|
{{ $asset->company->name }}
|
||||||
|
@ -39,7 +41,9 @@
|
||||||
|
|
||||||
<!-- AssetModel name -->
|
<!-- AssetModel name -->
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
{{ Form::label('model', trans('admin/hardware/form.model'), array('class' => 'col-md-3 control-label')) }}
|
<label for="model" class="col-md-3 control-label">
|
||||||
|
{{ trans('general.company') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<p class="form-control-static">
|
<p class="form-control-static">
|
||||||
@if (($asset->model) && ($asset->model->name))
|
@if (($asset->model) && ($asset->model->name))
|
||||||
|
@ -61,7 +65,10 @@
|
||||||
|
|
||||||
<!-- Asset Name -->
|
<!-- Asset Name -->
|
||||||
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('name') ? 'error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.name'), array('class' => 'col-md-3 control-label')) }}
|
<label for="name" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.name') }}
|
||||||
|
</label>
|
||||||
|
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<input class="form-control" type="text" name="name" id="name" value="{{ old('name', $asset->name) }}" tabindex="1">
|
<input class="form-control" type="text" name="name" id="name" value="{{ old('name', $asset->name) }}" tabindex="1">
|
||||||
{!! $errors->first('name', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('name', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
@ -70,7 +77,9 @@
|
||||||
|
|
||||||
<!-- Status -->
|
<!-- Status -->
|
||||||
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('status_id') ? 'error' : '' }}">
|
||||||
{{ Form::label('status_id', trans('admin/hardware/form.status'), array('class' => 'col-md-3 control-label')) }}
|
<label for="status_id" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.status') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-7 required">
|
<div class="col-md-7 required">
|
||||||
{{ Form::select('status_id', $statusLabel_list, $asset->status_id, array('class'=>'select2', 'style'=>'width:100%','', 'aria-label'=>'status_id')) }}
|
{{ Form::select('status_id', $statusLabel_list, $asset->status_id, array('class'=>'select2', 'style'=>'width:100%','', 'aria-label'=>'status_id')) }}
|
||||||
{!! $errors->first('status_id', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('status_id', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
@ -90,7 +99,9 @@
|
||||||
|
|
||||||
<!-- Checkout/Checkin Date -->
|
<!-- Checkout/Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
||||||
{{ Form::label('checkout_at', trans('admin/hardware/form.checkout_date'), array('class' => 'col-md-3 control-label')) }}
|
<label for="checkout_at" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.checkout_date') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-7" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
<div class="input-group date col-md-7" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ old('checkout_at', date('Y-m-d')) }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ old('checkout_at', date('Y-m-d')) }}">
|
||||||
|
@ -102,7 +113,10 @@
|
||||||
|
|
||||||
<!-- Expected Checkin Date -->
|
<!-- Expected Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
||||||
{{ Form::label('expected_checkin', trans('admin/hardware/form.expected_checkin'), array('class' => 'col-md-3 control-label')) }}
|
<label for="expected_checkin" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.expected_checkin') }}
|
||||||
|
</label>
|
||||||
|
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-7" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d" data-date-clear-btn="true">
|
<div class="input-group date col-md-7" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ old('expected_checkin') }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ old('expected_checkin') }}">
|
||||||
|
@ -114,7 +128,9 @@
|
||||||
|
|
||||||
<!-- Note -->
|
<!-- Note -->
|
||||||
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
||||||
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
|
<label for="note" class="col-md-3 control-label">
|
||||||
|
{{ trans('general.notes') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
<textarea class="col-md-6 form-control" id="note" name="note">{{ old('note', $asset->note) }}</textarea>
|
||||||
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
{!! $errors->first('note', '<span class="alert-msg" aria-hidden="true"><i class="fas fa-times" aria-hidden="true"></i> :message</span>') !!}
|
||||||
|
|
|
@ -27,7 +27,9 @@
|
||||||
|
|
||||||
<!-- Checkout/Checkin Date -->
|
<!-- Checkout/Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('checkout_at') ? 'error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.checkout_date'), array('class' => 'col-md-3 control-label')) }}
|
<label for="checkout_at" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.checkout_date') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-end-date="0d" data-date-clear-btn="true">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ Request::old('checkout_at') }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="checkout_at" id="checkout_at" value="{{ Request::old('checkout_at') }}">
|
||||||
|
@ -39,7 +41,9 @@
|
||||||
|
|
||||||
<!-- Expected Checkin Date -->
|
<!-- Expected Checkin Date -->
|
||||||
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('expected_checkin') ? 'error' : '' }}">
|
||||||
{{ Form::label('name', trans('admin/hardware/form.expected_checkin'), array('class' => 'col-md-3 control-label')) }}
|
<label for="expected_checkin" class="col-md-3 control-label">
|
||||||
|
{{ trans('admin/hardware/form.expected_checkin') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d">
|
<div class="input-group date col-md-5" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-start-date="0d">
|
||||||
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ Request::old('expected_checkin') }}">
|
<input type="text" class="form-control" placeholder="{{ trans('general.select_date') }}" name="expected_checkin" id="expected_checkin" value="{{ Request::old('expected_checkin') }}">
|
||||||
|
@ -52,7 +56,9 @@
|
||||||
|
|
||||||
<!-- Note -->
|
<!-- Note -->
|
||||||
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('note') ? 'error' : '' }}">
|
||||||
{{ Form::label('note', trans('admin/hardware/form.notes'), array('class' => 'col-md-3 control-label')) }}
|
<label for="note" class="col-md-3 control-label">
|
||||||
|
{{ trans('general.notes') }}
|
||||||
|
</label>
|
||||||
<div class="col-md-8">
|
<div class="col-md-8">
|
||||||
<textarea class="col-md-6 form-control" id="note" name="note">{{ Request::old('note') }}</textarea>
|
<textarea class="col-md-6 form-control" id="note" name="note">{{ Request::old('note') }}</textarea>
|
||||||
{!! $errors->first('note', '<span class="alert-msg"><i class="fas fa-times"></i> :message</span>') !!}
|
{!! $errors->first('note', '<span class="alert-msg"><i class="fas fa-times"></i> :message</span>') !!}
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@livewireStyles
|
|
||||||
|
|
||||||
|
|
||||||
@if (($snipeSettings) && ($snipeSettings->header_color))
|
@if (($snipeSettings) && ($snipeSettings->header_color))
|
||||||
|
@ -74,7 +73,6 @@
|
||||||
|
|
||||||
|
|
||||||
@stack('js')
|
@stack('js')
|
||||||
@livewireScripts
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -83,7 +83,7 @@ dir="{{ in_array(app()->getLocale(),['ar-SA','fa-IR', 'he-IL']) ? 'rtl' : 'ltr'
|
||||||
<script src="{{ url(asset('js/html5shiv.js')) }}" nonce="{{ csrf_token() }}"></script>
|
<script src="{{ url(asset('js/html5shiv.js')) }}" nonce="{{ csrf_token() }}"></script>
|
||||||
<script src="{{ url(asset('js/respond.js')) }}" nonce="{{ csrf_token() }}"></script>
|
<script src="{{ url(asset('js/respond.js')) }}" nonce="{{ csrf_token() }}"></script>
|
||||||
|
|
||||||
@livewireStyles
|
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
@ -949,7 +949,6 @@ dir="{{ in_array(app()->getLocale(),['ar-SA','fa-IR', 'he-IL']) ? 'rtl' : 'ltr'
|
||||||
|
|
||||||
{{-- Javascript files --}}
|
{{-- Javascript files --}}
|
||||||
<script src="{{ url(mix('js/dist/all.js')) }}" nonce="{{ csrf_token() }}"></script>
|
<script src="{{ url(mix('js/dist/all.js')) }}" nonce="{{ csrf_token() }}"></script>
|
||||||
<script defer src="{{ url(mix('js/dist/all-defer.js')) }}" nonce="{{ csrf_token() }}"></script>
|
|
||||||
|
|
||||||
<!-- v5-beta: This pGenerator call must remain here for v5 - until fixed - so that the JS password generator works for the user create modal. -->
|
<!-- v5-beta: This pGenerator call must remain here for v5 - until fixed - so that the JS password generator works for the user create modal. -->
|
||||||
<script src="{{ url('js/pGenerator.jquery.js') }}"></script>
|
<script src="{{ url('js/pGenerator.jquery.js') }}"></script>
|
||||||
|
@ -1128,7 +1127,6 @@ dir="{{ in_array(app()->getLocale(),['ar-SA','fa-IR', 'he-IL']) ? 'rtl' : 'ltr'
|
||||||
|
|
||||||
@include('partials.bpay')
|
@include('partials.bpay')
|
||||||
|
|
||||||
@livewireScripts
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
<div class="form-group {{ $errors->has('eula_text') ? 'error' : '' }}">
|
<div class="form-group {{ $errors->has('eula_text') ? 'error' : '' }}">
|
||||||
<label for="eula_text" class="col-md-3 control-label">{{ trans('admin/categories/general.eula_text') }}</label>
|
<label for="eula_text" class="col-md-3 control-label">{{ trans('admin/categories/general.eula_text') }}</label>
|
||||||
<div class="col-md-7">
|
<div class="col-md-7">
|
||||||
{{ Form::textarea('eula_text', null, ['wire:model' => 'eulaText', 'class' => 'form-control', 'aria-label'=>'eula_text', 'disabled' => $this->eulaTextDisabled]) }}
|
{{ Form::textarea('eula_text', null, ['wire:model.live' => 'eulaText', 'class' => 'form-control', 'aria-label'=>'eula_text', 'disabled' => $this->eulaTextDisabled]) }}
|
||||||
<p class="help-block">{!! trans('admin/categories/general.eula_text_help') !!} </p>
|
<p class="help-block">{!! trans('admin/categories/general.eula_text_help') !!} </p>
|
||||||
<p class="help-block">{!! trans('admin/settings/general.eula_markdown') !!} </p>
|
<p class="help-block">{!! trans('admin/settings/general.eula_markdown') !!} </p>
|
||||||
{!! $errors->first('eula_text', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('eula_text', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
</div>
|
</div>
|
||||||
@if ($this->eulaTextDisabled)
|
@if ($this->eulaTextDisabled)
|
||||||
<input type="hidden" name="eula_text" wire:model="eulaText" />
|
<input type="hidden" name="eula_text" wire:model.live="eulaText" />
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -18,12 +18,12 @@
|
||||||
<div class="col-md-9 col-md-offset-3">
|
<div class="col-md-9 col-md-offset-3">
|
||||||
@if ($defaultEulaText!='')
|
@if ($defaultEulaText!='')
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
{{ Form::checkbox('use_default_eula', '1', null, ['wire:model' => 'useDefaultEula', 'aria-label'=>'use_default_eula']) }}
|
{{ Form::checkbox('use_default_eula', '1', $useDefaultEula, ['wire:model.live' => 'useDefaultEula', 'aria-label'=>'use_default_eula']) }}
|
||||||
<span>{!! trans('admin/categories/general.use_default_eula') !!}</span>
|
<span>{!! trans('admin/categories/general.use_default_eula') !!}</span>
|
||||||
</label>
|
</label>
|
||||||
@else
|
@else
|
||||||
<label class="form-control form-control--disabled">
|
<label class="form-control form-control--disabled">
|
||||||
{{ Form::checkbox('use_default_eula', '0', null, ['wire:model' => 'useDefaultEula', 'class'=>'disabled','disabled' => 'disabled', 'aria-label'=>'use_default_eula']) }}
|
{{ Form::checkbox('use_default_eula', '0', $useDefaultEula, ['wire:model.live' => 'useDefaultEula', 'class'=>'disabled','disabled' => 'disabled', 'aria-label'=>'use_default_eula']) }}
|
||||||
<span>{!! trans('admin/categories/general.use_default_eula_disabled') !!}</span>
|
<span>{!! trans('admin/categories/general.use_default_eula_disabled') !!}</span>
|
||||||
</label>
|
</label>
|
||||||
@endif
|
@endif
|
||||||
|
@ -34,7 +34,7 @@
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="col-md-9 col-md-offset-3">
|
<div class="col-md-9 col-md-offset-3">
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
{{ Form::checkbox('require_acceptance', '1', null, ['wire:model' => 'requireAcceptance', 'aria-label'=>'require_acceptance']) }}
|
{{ Form::checkbox('require_acceptance', '1', $requireAcceptance, ['wire:model.live' => 'requireAcceptance', 'aria-label'=>'require_acceptance']) }}
|
||||||
{{ trans('admin/categories/general.require_acceptance') }}
|
{{ trans('admin/categories/general.require_acceptance') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="col-md-9 col-md-offset-3">
|
<div class="col-md-9 col-md-offset-3">
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
{{ Form::checkbox('checkin_email', '1', null, ['wire:model' => 'sendCheckInEmail', 'aria-label'=>'checkin_email', 'disabled' => $this->sendCheckInEmailDisabled]) }}
|
{{ Form::checkbox('checkin_email', '1', $sendCheckInEmail, ['wire:model.live' => 'sendCheckInEmail', 'aria-label'=>'checkin_email', 'disabled' => $this->sendCheckInEmailDisabled]) }}
|
||||||
{{ trans('admin/categories/general.checkin_email') }}
|
{{ trans('admin/categories/general.checkin_email') }}
|
||||||
</label>
|
</label>
|
||||||
@if ($this->shouldDisplayEmailMessage)
|
@if ($this->shouldDisplayEmailMessage)
|
||||||
|
@ -54,7 +54,7 @@
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
@if ($this->sendCheckInEmailDisabled)
|
@if ($this->sendCheckInEmailDisabled)
|
||||||
<input type="hidden" name="checkin_email" wire:model="sendCheckInEmail" />
|
<input type="hidden" name="checkin_email" wire:model.live="sendCheckInEmail" />
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
{{ trans('admin/models/general.fieldset') }}
|
{{ trans('admin/models/general.fieldset') }}
|
||||||
</label>
|
</label>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
{{ Form::select('fieldset_id', Helper::customFieldsetList(), old('fieldset_id', $fieldset_id), array('class'=>'select2 js-fieldset-field livewire-select2', 'style'=>'width:100%; min-width:350px', 'aria-label'=>'custom_fieldset', 'data-livewire-component' => $_instance->id)) }}
|
{{ Form::select('fieldset_id', Helper::customFieldsetList(), old('fieldset_id', $fieldset_id), array('class'=>'select2 js-fieldset-field livewire-select2', 'style'=>'width:100%; min-width:350px', 'aria-label'=>'custom_fieldset', 'data-livewire-component' => $this->getId())) }}
|
||||||
{!! $errors->first('custom_fieldset', '<span class="alert-msg" aria-hidden="true"><br><i class="fas fa-times"></i> :message</span>') !!}
|
{!! $errors->first('custom_fieldset', '<span class="alert-msg" aria-hidden="true"><br><i class="fas fa-times"></i> :message</span>') !!}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
{{ Form::checkbox('add_default_values', 1, old('add_default_values', $add_default_values), ['data-livewire-component' => $_instance->id, 'id' => 'add_default_values', 'wire:model' => 'add_default_values']) }}
|
{{ Form::checkbox('add_default_values', 1, old('add_default_values', $add_default_values), ['data-livewire-component' => $this->getId(), 'id' => 'add_default_values', 'wire:model.live' => 'add_default_values']) }}
|
||||||
{{ trans('admin/models/general.add_default_values') }}
|
{{ trans('admin/models/general.add_default_values') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -129,7 +129,7 @@
|
||||||
<i class="fa-solid fa-list-check" aria-hidden="true"></i>
|
<i class="fa-solid fa-list-check" aria-hidden="true"></i>
|
||||||
<span class="sr-only">{{ trans('general.import') }}</span>
|
<span class="sr-only">{{ trans('general.import') }}</span>
|
||||||
</button>
|
</button>
|
||||||
<a href="#" wire:click="$set('activeFile',null)">
|
<a href="#" wire:click.prevent="$set('activeFile',null)">
|
||||||
<button class="btn btn-sm btn-danger" wire:click="destroy({{ $currentFile->id }})">
|
<button class="btn btn-sm btn-danger" wire:click="destroy({{ $currentFile->id }})">
|
||||||
<i class="fas fa-trash icon-white" aria-hidden="true"></i><span class="sr-only"></span></button>
|
<i class="fas fa-trash icon-white" aria-hidden="true"></i><span class="sr-only"></span></button>
|
||||||
</a>
|
</a>
|
||||||
|
@ -146,7 +146,7 @@
|
||||||
{{ trans('general.import_type') }}
|
{{ trans('general.import_type') }}
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<div class="col-md-9 col-xs-12">
|
<div class="col-md-9 col-xs-12" wire:ignore>
|
||||||
{{ Form::select('activeFile.import_type', $importTypes, $activeFile->import_type, [
|
{{ Form::select('activeFile.import_type', $importTypes, $activeFile->import_type, [
|
||||||
'id' => 'import_type',
|
'id' => 'import_type',
|
||||||
'class' => 'livewire-select2',
|
'class' => 'livewire-select2',
|
||||||
|
@ -154,7 +154,7 @@
|
||||||
'data-placeholder' => trans('general.select_var', ['thing' => trans('general.import_type')]),
|
'data-placeholder' => trans('general.select_var', ['thing' => trans('general.import_type')]),
|
||||||
'placeholder' => '', //needed so that the form-helper will put an empty option first
|
'placeholder' => '', //needed so that the form-helper will put an empty option first
|
||||||
'data-minimum-results-for-search' => '-1', // Remove this if the list gets long enough that we need to search
|
'data-minimum-results-for-search' => '-1', // Remove this if the list gets long enough that we need to search
|
||||||
'data-livewire-component' => $_instance->id
|
'data-livewire-component' => $this->getId()
|
||||||
]) }}
|
]) }}
|
||||||
@if ($activeFile->import_type === 'asset' && $snipeSettings->auto_increment_assets == 0)
|
@if ($activeFile->import_type === 'asset' && $snipeSettings->auto_increment_assets == 0)
|
||||||
<p class="help-block">
|
<p class="help-block">
|
||||||
|
@ -166,7 +166,7 @@
|
||||||
|
|
||||||
<div class="form-group col-md-9 col-md-offset-3">
|
<div class="form-group col-md-9 col-md-offset-3">
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
<input type="checkbox" name="update" data-livewire-component="{{ $_instance->id }}" wire:model="update">
|
<input type="checkbox" name="update" data-livewire-component="{{ $this->getId() }}" wire:model.live="update">
|
||||||
{{ trans('general.update_existing_values') }}
|
{{ trans('general.update_existing_values') }}
|
||||||
</label>
|
</label>
|
||||||
@if ($activeFile->import_type === 'asset' && $snipeSettings->auto_increment_assets == 1 && $update)
|
@if ($activeFile->import_type === 'asset' && $snipeSettings->auto_increment_assets == 1 && $update)
|
||||||
|
@ -176,12 +176,12 @@
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
<input type="checkbox" name="send_welcome" data-livewire-component="{{ $_instance->id }}" wire:model="send_welcome">
|
<input type="checkbox" name="send_welcome" data-livewire-component="{{ $this->getId() }}" wire:model.live="send_welcome">
|
||||||
{{ trans('general.send_welcome_email_to_users') }}
|
{{ trans('general.send_welcome_email_to_users') }}
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<label class="form-control">
|
<label class="form-control">
|
||||||
<input type="checkbox" name="run_backup" data-livewire-component="{{ $_instance->id }}" wire:model="run_backup">
|
<input type="checkbox" name="run_backup" data-livewire-component="{{ $this->getId() }}" wire:model.live="run_backup">
|
||||||
{{ trans('general.back_before_importing') }}
|
{{ trans('general.back_before_importing') }}
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
|
@ -220,14 +220,14 @@
|
||||||
<div class="form-group col-md-12" wire:key="header-row-{{ $index }}">
|
<div class="form-group col-md-12" wire:key="header-row-{{ $index }}">
|
||||||
|
|
||||||
<label for="field_map.{{ $index }}" class="col-md-3 control-label text-right">{{ $header }}</label>
|
<label for="field_map.{{ $index }}" class="col-md-3 control-label text-right">{{ $header }}</label>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4" wire:ignore>
|
||||||
|
|
||||||
{{ Form::select('field_map.'.$index, $columnOptions[$activeFile->import_type], @$field_map[$index],
|
{{ Form::select('field_map.'.$index, $columnOptions[$activeFile->import_type], @$field_map[$index],
|
||||||
[
|
[
|
||||||
'class' => 'mappings livewire-select2',
|
'class' => 'mappings livewire-select2',
|
||||||
'placeholder' => trans('general.importer.do_not_import'),
|
'placeholder' => trans('general.importer.do_not_import'),
|
||||||
'style' => 'min-width: 100%',
|
'style' => 'min-width: 100%',
|
||||||
'data-livewire-component' => $_instance->id
|
'data-livewire-component' => $this->getId()
|
||||||
],[
|
],[
|
||||||
'-' => ['disabled' => true] // this makes the "-----" line unclickable
|
'-' => ['disabled' => true] // this makes the "-----" line unclickable
|
||||||
])
|
])
|
||||||
|
@ -251,7 +251,7 @@
|
||||||
|
|
||||||
<div class="form-group col-md-12">
|
<div class="form-group col-md-12">
|
||||||
<div class="col-md-3 text-left">
|
<div class="col-md-3 text-left">
|
||||||
<a href="#" wire:click="$set('activeFile',null)">{{ trans('general.cancel') }}</a>
|
<a href="#" wire:click.prevent="$set('activeFile',null)">{{ trans('general.cancel') }}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
<button type="submit" class="btn btn-primary col-md-5" id="import">Import</button>
|
<button type="submit" class="btn btn-primary col-md-5" id="import">Import</button>
|
||||||
|
@ -267,7 +267,7 @@
|
||||||
@else
|
@else
|
||||||
<div class="form-group col-md-10">
|
<div class="form-group col-md-10">
|
||||||
<div class="col-md-3 text-left">
|
<div class="col-md-3 text-left">
|
||||||
<a href="#" wire:click="$set('activeFile',null)">{{ trans('general.cancel') }}</a>
|
<a href="#" wire:click.prevent="$set('activeFile',null)">{{ trans('general.cancel') }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endif {{-- end of if ... activeFile->import_type --}}
|
@endif {{-- end of if ... activeFile->import_type --}}
|
||||||
|
@ -290,16 +290,16 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@push('js')
|
@script
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
{{-- TODO: Maybe change this to the file upload thing that's baked-in to Livewire? --}}
|
{{-- TODO: Maybe change this to the file upload thing that's baked-in to Livewire? --}}
|
||||||
$('#fileupload').fileupload({
|
$('#fileupload').fileupload({
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
done: function(e, data) {
|
done: function(e, data) {
|
||||||
@this.progress_bar_class = 'progress-bar-success';
|
$wire.$set('progress_bar_class', 'progress-bar-success');
|
||||||
@this.progress_message = '<i class="fas fa-check faa-pulse animated"></i> {{ trans('general.notification_success') }}';
|
$wire.$set('progress_message', '<i class="fas fa-check faa-pulse animated"></i> {{ trans('general.notification_success') }}');
|
||||||
@this.progress = 100;
|
$wire.$set('progress', 100);
|
||||||
},
|
},
|
||||||
add: function(e, data) {
|
add: function(e, data) {
|
||||||
data.headers = {
|
data.headers = {
|
||||||
|
@ -307,17 +307,17 @@
|
||||||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr('content')
|
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr('content')
|
||||||
};
|
};
|
||||||
data.process().done( function () {data.submit();});
|
data.process().done( function () {data.submit();});
|
||||||
@this.progress = 0;
|
$wire.$set('progress', 0);
|
||||||
@this.clearMessage();
|
$wire.clearMessage();
|
||||||
},
|
},
|
||||||
progress: function(e, data) {
|
progress: function(e, data) {
|
||||||
@this.progress = parseInt((data.loaded / data.total * 100, 10));
|
$wire.$set('progress', parseInt((data.loaded / data.total * 100, 10)));
|
||||||
@this.progress_message = '{{ trans('general.uploading') }}';
|
$wire.$set('progress_message', '{{ trans('general.uploading') }}');
|
||||||
},
|
},
|
||||||
fail: function() {
|
fail: function() {
|
||||||
@this.progress_bar_class = "progress-bar-danger";
|
$wire.$set('progress_bar_class', "progress-bar-danger");
|
||||||
@this.progress = 100;
|
$wire.$set('progress', 100);
|
||||||
@this.progress_message = '<i class="fas fa-exclamation-triangle faa-pulse animated"></i> {{ trans('general.upload_error') }}';
|
$wire.$set('progress_message', '<i class="fas fa-exclamation-triangle faa-pulse animated"></i> {{ trans('general.upload_error') }}');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -328,28 +328,28 @@
|
||||||
// we have to hook up to the `<tr id='importer-file'>` at the root of this display,
|
// we have to hook up to the `<tr id='importer-file'>` at the root of this display,
|
||||||
// because the #import button isn't visible until you click an import_type
|
// because the #import button isn't visible until you click an import_type
|
||||||
$('#upload-table').on('click', '#import', function () {
|
$('#upload-table').on('click', '#import', function () {
|
||||||
if(!@this.activeFile.import_type) {
|
if (!$wire.$get('activeFile.import_type')) {
|
||||||
@this.statusType='error';
|
$wire.$set('statusType', 'error');
|
||||||
@this.statusText= "An import type is required... "; //TODO: translate?
|
$wire.$set('statusText', "An import type is required... "); //TODO: translate?
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@this.statusType ='pending';
|
$wire.$set('statusType', 'pending');
|
||||||
@this.statusText = '<i class="fa fa-spinner fa-spin" aria-hidden="true"></i> {{ trans('admin/hardware/form.processing_spinner') }}';
|
$wire.$set('statusText', '<i class="fa fa-spinner fa-spin" aria-hidden="true"></i> {{ trans('admin/hardware/form.processing_spinner') }}');
|
||||||
@this.generate_field_map().then(function (mappings_raw) {
|
$wire.generate_field_map().then(function (mappings_raw) {
|
||||||
var mappings = JSON.parse(mappings_raw)
|
var mappings = JSON.parse(mappings_raw)
|
||||||
// console.warn("Here is the mappings:")
|
// console.warn("Here is the mappings:")
|
||||||
// console.dir(mappings)
|
// console.dir(mappings)
|
||||||
// console.warn("Uh, active file id is, I guess: "+@this.activeFile.id)
|
// console.warn("Uh, active file id is, I guess: "+$wire.$get('activeFile.id'))
|
||||||
var this_file = @this.file_id; // okay, I actually don't know what I'm doing here.
|
var this_file = $wire.$get('file_id'); // okay, I actually don't know what I'm doing here.
|
||||||
$.post({
|
$.post({
|
||||||
{{-- I want to do something like: route('api.imports.importFile', $activeFile->id) }} --}}
|
{{-- I want to do something like: route('api.imports.importFile', $activeFile->id) }} --}}
|
||||||
url: "api/v1/imports/process/"+this_file, // maybe? Good a guess as any..FIXME. HARDCODED DUMB FILE
|
url: "api/v1/imports/process/"+this_file, // maybe? Good a guess as any..FIXME. HARDCODED DUMB FILE
|
||||||
contentType: 'application/json',
|
contentType: 'application/json',
|
||||||
data: JSON.stringify({
|
data: JSON.stringify({
|
||||||
'import-update': !!@this.update,
|
'import-update': !!$wire.$get('update'),
|
||||||
'send-welcome': !!@this.send_welcome,
|
'send-welcome': !!$wire.$get('send_welcome'),
|
||||||
'import-type': @this.activeFile.import_type,
|
'import-type': $wire.$get('activeFile.import_type'),
|
||||||
'run-backup': !!@this.run_backup,
|
'run-backup': !!$wire.$get('run_backup'),
|
||||||
'column-mappings': mappings
|
'column-mappings': mappings
|
||||||
}),
|
}),
|
||||||
headers: {
|
headers: {
|
||||||
|
@ -357,19 +357,19 @@
|
||||||
}
|
}
|
||||||
}).done( function (body) {
|
}).done( function (body) {
|
||||||
// Success
|
// Success
|
||||||
@this.statusType="success";
|
$wire.$set('statusType', "success");
|
||||||
@this.statusText = "{{ trans('general.success_redirecting') }}";
|
$wire.$set('statusText', "{{ trans('general.success_redirecting') }}");
|
||||||
// console.dir(body)
|
// console.dir(body)
|
||||||
window.location.href = body.messages.redirect_url;
|
window.location.href = body.messages.redirect_url;
|
||||||
}).fail( function (jqXHR, textStatus, error) {
|
}).fail( function (jqXHR, textStatus, error) {
|
||||||
// Failure
|
// Failure
|
||||||
var body = jqXHR.responseJSON
|
var body = jqXHR.responseJSON
|
||||||
if((body) && (body.status) && body.status == 'import-errors') {
|
if((body) && (body.status) && body.status == 'import-errors') {
|
||||||
@this.emit('importError', body.messages);
|
$wire.$dispatch('importError', body.messages);
|
||||||
@this.import_errors = body.messages
|
$wire.$set('import_errors', body.messages);
|
||||||
|
|
||||||
@this.statusType='error';
|
$wire.$set('statusType', 'error');
|
||||||
@this.statusText = "Error";
|
$wire.$set('statusText', "Error");
|
||||||
|
|
||||||
// If Slack/notifications hits API thresholds, we *do* 500, but we never
|
// If Slack/notifications hits API thresholds, we *do* 500, but we never
|
||||||
// actually surface that info.
|
// actually surface that info.
|
||||||
|
@ -380,19 +380,19 @@
|
||||||
// notifications could be sent".
|
// notifications could be sent".
|
||||||
} else {
|
} else {
|
||||||
console.warn("Not import-errors, just regular errors - maybe API limits")
|
console.warn("Not import-errors, just regular errors - maybe API limits")
|
||||||
@this.message_type="warning"
|
$wire.$set('message_type', "warning");
|
||||||
if ((body) && (error in body)) {
|
if ((body) && (error in body)) {
|
||||||
@this.message = body.error ? body.error:"Unknown error - might just be throttling by notifications."
|
$wire.$set('message', body.error ? body.error : "Unknown error - might just be throttling by notifications.");
|
||||||
} else {
|
} else {
|
||||||
@this.message = "{{ trans('general.importer_generic_error') }}"
|
$wire.$set('message', "{{ trans('general.importer_generic_error') }}");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@this.activeFile = null; //@this.set('hideDetails')
|
$wire.$set('activeFile', null); //$wire.$set('hideDetails')
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
return false;
|
return false;
|
||||||
});})
|
});})
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@endpush
|
@endscript
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
<div class="box-tools pull-right">
|
<div class="box-tools pull-right">
|
||||||
<a class="btn btn-primary"
|
<a class="btn btn-primary"
|
||||||
wire:click="$emit('openModal')"
|
wire:click="$dispatch('openModal')"
|
||||||
onclick="$('#modal-create-client').modal('show');">
|
onclick="$('#modal-create-client').modal('show');">
|
||||||
{{ trans('general.create') }}
|
{{ trans('general.create') }}
|
||||||
</a>
|
</a>
|
||||||
|
@ -285,7 +285,7 @@
|
||||||
type="text"
|
type="text"
|
||||||
aria-label="edit-client-name"
|
aria-label="edit-client-name"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
wire:model="editName"
|
wire:model.live="editName"
|
||||||
wire:keydown.enter="updateClient('{{ $editClientId }}')"
|
wire:keydown.enter="updateClient('{{ $editClientId }}')"
|
||||||
>
|
>
|
||||||
|
|
||||||
|
@ -333,7 +333,7 @@
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
window.livewire.on('openModal', () => {
|
Livewire.on('openModal', () => {
|
||||||
$('#modal-create-client').modal('show').on('shown.bs.modal', function() {
|
$('#modal-create-client').modal('show').on('shown.bs.modal', function() {
|
||||||
$(this).find('[autofocus]').focus();
|
$(this).find('[autofocus]').focus();
|
||||||
});
|
});
|
||||||
|
@ -354,3 +354,4 @@
|
||||||
</script>
|
</script>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<div class="text-right" style="display: flex; justify-content: space-between; align-items: center;">
|
<div class="text-right" style="display: flex; justify-content: space-between; align-items: center;">
|
||||||
<a class="btn btn-info btn-sm action-link pull-right"
|
<a class="btn btn-info btn-sm action-link pull-right"
|
||||||
onclick="$('#modal-create-token').modal('show');"
|
onclick="$('#modal-create-token').modal('show');"
|
||||||
wire:click="$emit('openModal')"
|
wire:click="$dispatch('openModal')"
|
||||||
>
|
>
|
||||||
Create New Token
|
Create New Token
|
||||||
</a>
|
</a>
|
||||||
|
@ -98,7 +98,7 @@
|
||||||
name="name"
|
name="name"
|
||||||
wire:keydown.enter="createToken(name)"
|
wire:keydown.enter="createToken(name)"
|
||||||
{{-- defer because it's submitting as i type if i don't --}}
|
{{-- defer because it's submitting as i type if i don't --}}
|
||||||
wire:model.defer="name"
|
wire:model="name"
|
||||||
autofocus
|
autofocus
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
<div><!-- livewire div - do not remove -->
|
<div><!-- livewire div - do not remove -->
|
||||||
<form class="form-horizontal" role="form" wire:submit.prevent="submit">
|
<form class="form-horizontal" role="form" wire:submit="submit">
|
||||||
{{csrf_field()}}
|
{{csrf_field()}}
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -79,7 +79,7 @@
|
||||||
{{ Form::label('webhook_endpoint', trans('admin/settings/general.webhook_endpoint',['app' => $webhook_name ])) }}
|
{{ Form::label('webhook_endpoint', trans('admin/settings/general.webhook_endpoint',['app' => $webhook_name ])) }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-9 required">
|
<div class="col-md-9 required">
|
||||||
<input type="text" wire:model.lazy="webhook_endpoint" class="form-control" placeholder="{{$webhook_placeholder}}" value="{{old('webhook_endpoint', $webhook_endpoint)}}"{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
<input type="text" wire:model.blur="webhook_endpoint" class="form-control" placeholder="{{$webhook_placeholder}}" value="{{old('webhook_endpoint', $webhook_endpoint)}}"{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
||||||
{!! $errors->first('webhook_endpoint', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('webhook_endpoint', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -96,7 +96,7 @@
|
||||||
{{ Form::label('webhook_channel', trans('admin/settings/general.webhook_channel',['app' => $webhook_name ])) }}
|
{{ Form::label('webhook_channel', trans('admin/settings/general.webhook_channel',['app' => $webhook_name ])) }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-9 required">
|
<div class="col-md-9 required">
|
||||||
<input type="text" wire:model.lazy="webhook_channel" class="form-control" placeholder="#IT-Ops" value="{{ old('webhook_channel', $webhook_channel) }}"{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
<input type="text" wire:model.blur="webhook_channel" class="form-control" placeholder="#IT-Ops" value="{{ old('webhook_channel', $webhook_channel) }}"{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
||||||
|
|
||||||
{!! $errors->first('webhook_channel', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('webhook_channel', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
</div>
|
</div>
|
||||||
|
@ -114,7 +114,7 @@
|
||||||
{{ Form::label('webhook_botname', trans('admin/settings/general.webhook_botname',['app' => $webhook_name ])) }}
|
{{ Form::label('webhook_botname', trans('admin/settings/general.webhook_botname',['app' => $webhook_name ])) }}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
<input type="text" wire:model.lazy="webhook_botname" class='form-control' placeholder="Snipe-Bot" {{ old('webhook_botname', $webhook_botname)}}{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
<input type="text" wire:model.blur="webhook_botname" class='form-control' placeholder="Snipe-Bot" {{ old('webhook_botname', $webhook_botname)}}{{ Helper::isDemoMode() ? ' disabled' : ''}}>
|
||||||
{!! $errors->first('webhook_botname', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('webhook_botname', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
</div><!--col-md-10-->
|
</div><!--col-md-10-->
|
||||||
</div>
|
</div>
|
||||||
|
@ -175,11 +175,6 @@
|
||||||
var data = $('#select2').select2("val");
|
var data = $('#select2').select2("val");
|
||||||
@this.set('webhook_selected', data);
|
@this.set('webhook_selected', data);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Re-render select2
|
|
||||||
window.livewire.hook('message.processed', function (el, component) {
|
|
||||||
$('.select2').select2();
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -430,3 +430,8 @@
|
||||||
{{Form::close()}}
|
{{Form::close()}}
|
||||||
|
|
||||||
@stop
|
@stop
|
||||||
|
|
||||||
|
@push('js')
|
||||||
|
{{-- Can't use @script here because we're not in a livewire component so let's manually load --}}
|
||||||
|
@livewireScripts
|
||||||
|
@endpush
|
||||||
|
|
|
@ -18,7 +18,9 @@
|
||||||
<!-- Site Name -->
|
<!-- Site Name -->
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="form-group col-lg-12 required {{ $errors->has('site_name') ? 'error' : '' }}">
|
<div class="form-group col-lg-12 required {{ $errors->has('site_name') ? 'error' : '' }}">
|
||||||
{{ Form::label('site_name', trans('general.site_name')) }}
|
<label for="site_name">
|
||||||
|
{{ trans('general.site_name') }}
|
||||||
|
</label>
|
||||||
{{ Form::text('site_name', Request::old('site_name'), array('class' => 'form-control','placeholder' => 'Snipe-IT Asset Management')) }}
|
{{ Form::text('site_name', Request::old('site_name'), array('class' => 'form-control','placeholder' => 'Snipe-IT Asset Management')) }}
|
||||||
|
|
||||||
{!! $errors->first('site_name', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('site_name', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
|
@ -29,9 +31,10 @@
|
||||||
|
|
||||||
<!-- Language -->
|
<!-- Language -->
|
||||||
<div class="form-group col-lg-6{{ (Helper::checkIfRequired(\App\Models\User::class, 'default_language')) ? ' required' : '' }} {{$errors->has('default_language') ? 'error' : ''}}">
|
<div class="form-group col-lg-6{{ (Helper::checkIfRequired(\App\Models\User::class, 'default_language')) ? ' required' : '' }} {{$errors->has('default_language') ? 'error' : ''}}">
|
||||||
{{ Form::label('locale', trans('admin/settings/general.default_language')) }}
|
<label for="locale">
|
||||||
|
{{ trans('admin/settings/general.default_language') }}
|
||||||
|
</label>
|
||||||
{!! Form::locales('locale', Request::old('locale', "en-US"), 'select2') !!}
|
{!! Form::locales('locale', Request::old('locale', "en-US"), 'select2') !!}
|
||||||
|
|
||||||
{!! $errors->first('locale', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
{!! $errors->first('locale', '<span class="alert-msg" aria-hidden="true">:message</span>') !!}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -384,7 +384,6 @@
|
||||||
|
|
||||||
{{-- Javascript files --}}
|
{{-- Javascript files --}}
|
||||||
<script src="{{ url(mix('js/dist/all.js')) }}" nonce="{{ csrf_token() }}"></script>
|
<script src="{{ url(mix('js/dist/all.js')) }}" nonce="{{ csrf_token() }}"></script>
|
||||||
<script defer src="{{ url(mix('js/dist/all-defer.js')) }}" nonce="{{ csrf_token() }}"></script>
|
|
||||||
|
|
||||||
|
|
||||||
@push('css')
|
@push('css')
|
||||||
|
|
|
@ -23,6 +23,7 @@ use App\Http\Controllers\ViewAssetsController;
|
||||||
use App\Http\Controllers\Auth\LoginController;
|
use App\Http\Controllers\Auth\LoginController;
|
||||||
use App\Http\Controllers\Auth\ForgotPasswordController;
|
use App\Http\Controllers\Auth\ForgotPasswordController;
|
||||||
use App\Http\Controllers\Auth\ResetPasswordController;
|
use App\Http\Controllers\Auth\ResetPasswordController;
|
||||||
|
use App\Livewire\Importer;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
|
@ -262,7 +263,7 @@ Route::group(['prefix' => 'admin', 'middleware' => ['auth', 'authorize:superuser
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Route::get('/import',
|
Route::get('/import',
|
||||||
\App\Http\Livewire\Importer::class
|
Importer::class
|
||||||
)->middleware('auth')->name('imports.index');
|
)->middleware('auth')->name('imports.index');
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
namespace Tests\Feature\Livewire;
|
namespace Tests\Feature\Livewire;
|
||||||
|
|
||||||
use App\Http\Livewire\CategoryEditForm;
|
use App\Livewire\CategoryEditForm;
|
||||||
use Livewire\Livewire;
|
use Livewire\Livewire;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
|
|
|
@ -153,47 +153,74 @@ class UpdateUserTest extends TestCase
|
||||||
// Admin for Company A should allow updating user from Company A
|
// Admin for Company A should allow updating user from Company A
|
||||||
$this->actingAsForApi($adminA)
|
$this->actingAsForApi($adminA)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
||||||
->assertStatus(200);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('success')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin for Company A should get denied updating user from Company B
|
// Admin for Company A should get denied updating user from Company B
|
||||||
$this->actingAsForApi($adminA)
|
$this->actingAsForApi($adminA)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin for Company A should get denied updating user without a company
|
// Admin for Company A should get denied updating user without a company
|
||||||
$this->actingAsForApi($adminA)
|
$this->actingAsForApi($adminA)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin for Company B should allow updating user from Company B
|
// Admin for Company B should allow updating user from Company B
|
||||||
$this->actingAsForApi($adminB)
|
$this->actingAsForApi($adminB)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
||||||
->assertStatus(200);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('success')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin for Company B should get denied updating user from Company A
|
// Admin for Company B should get denied updating user from Company A
|
||||||
$this->actingAsForApi($adminB)
|
$this->actingAsForApi($adminB)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin for Company B should get denied updating user without a company
|
// Admin for Company B should get denied updating user without a company
|
||||||
$this->actingAsForApi($adminB)
|
$this->actingAsForApi($adminB)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin without a company should allow updating user without a company
|
// Admin without a company should allow updating user without a company
|
||||||
$this->actingAsForApi($adminNoCompany)
|
$this->actingAsForApi($adminNoCompany)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
->patchJson(route('api.users.update', $scoped_user_in_no_company))
|
||||||
->assertStatus(200);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('success')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin without a company should get denied updating user from Company A
|
// Admin without a company should get denied updating user from Company A
|
||||||
$this->actingAsForApi($adminNoCompany)
|
$this->actingAsForApi($adminNoCompany)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
->patchJson(route('api.users.update', $scoped_user_in_companyA))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
|
|
||||||
// Admin without a company should get denied updating user from Company B
|
// Admin without a company should get denied updating user from Company B
|
||||||
$this->actingAsForApi($adminNoCompany)
|
$this->actingAsForApi($adminNoCompany)
|
||||||
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
->patchJson(route('api.users.update', $scoped_user_in_companyB))
|
||||||
->assertStatus(403);
|
->assertOk()
|
||||||
|
->assertStatus(200)
|
||||||
|
->assertStatusMessageIs('error')
|
||||||
|
->json();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testUserGroupsAreOnlyUpdatedIfAuthenticatedUserIsSuperUser()
|
public function testUserGroupsAreOnlyUpdatedIfAuthenticatedUserIsSuperUser()
|
||||||
|
|
92
tests/Unit/SnipeTranslatorTest.php
Normal file
92
tests/Unit/SnipeTranslatorTest.php
Normal file
|
@ -0,0 +1,92 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Tests\Unit;
|
||||||
|
|
||||||
|
use Tests\TestCase;
|
||||||
|
|
||||||
|
class SnipeTranslatorTest extends TestCase
|
||||||
|
{
|
||||||
|
// the 'meatiest' of these tests will explicitly choose non-English as the language, because otherwise
|
||||||
|
// the fallback-logic (which is to fall-back to 'en-US') will be conflated in with the translation logic
|
||||||
|
|
||||||
|
// WARNING: If these translation strings are updated, these tests will start to fail. Update them as appropriate.
|
||||||
|
|
||||||
|
public function testBasic()
|
||||||
|
{
|
||||||
|
$this->assertEquals('This user has admin privileges',trans('general.admin_tooltip',[],'en-US'));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testPortuguese()
|
||||||
|
{
|
||||||
|
$this->assertEquals('Acessório',trans('general.accessory',[],'pt-PT'));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testFallback()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'This user has admin privileges',
|
||||||
|
trans('general.admin_tooltip',[],'xx-ZZ'),
|
||||||
|
"Nonexistent locale should fall-back to en-US"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testBackupString()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'Ingen sikkerhetskopier ble gjort ennå',
|
||||||
|
trans('backup::notifications.no_backups_info',[],'no-NO'),
|
||||||
|
"Norwegian 'no backups info' message should be here"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testBackupFallback()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'No backups were made yet',
|
||||||
|
trans('backup::notifications.no_backups_info',[],'xx-ZZ'),
|
||||||
|
"'no backups info' string should fallback to 'en'"
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testTransChoiceSingular()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'1 Consumível',
|
||||||
|
trans_choice('general.countable.consumables',1,[],'pt-PT')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testTransChoicePlural()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'2 Consumíveis',
|
||||||
|
trans_choice('general.countable.consumables',2,[],'pt-PT')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testTotallyBogusKey()
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
'bogus_key',
|
||||||
|
trans('bogus_key',[],'pt-PT'),
|
||||||
|
"Translating a completely bogus key should at least just return back that key"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testReplacements() {
|
||||||
|
$this->assertEquals(
|
||||||
|
'Artigos alocados a Some Name Here',
|
||||||
|
trans('admin/users/general.assets_user',['name' => 'Some Name Here'],'pt-PT'),
|
||||||
|
"Text should get replaced in translations when given"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testNonlegacyBackupLocale() {
|
||||||
|
//Spatie backup *usually* uses two-character locales, but pt-BR is an exception
|
||||||
|
$this->assertEquals(
|
||||||
|
'Mensagem de exceção: MESSAGE',
|
||||||
|
trans('backup::notifications.exception_message',['message' => 'MESSAGE'],'pt-BR')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
|
@ -189,13 +189,6 @@ mix
|
||||||
)
|
)
|
||||||
.version();
|
.version();
|
||||||
|
|
||||||
mix
|
|
||||||
.combine(
|
|
||||||
['./node_modules/alpinejs/dist/cdn.js'],
|
|
||||||
'./public/js/dist/all-defer.js'
|
|
||||||
)
|
|
||||||
.version();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Copy, minify and version skins
|
* Copy, minify and version skins
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue