Merge branch 'BookStackApp:development' into add-priority

This commit is contained in:
Jean-René Rouet 2023-07-11 08:57:14 +02:00 committed by GitHub
commit b1b8067cbe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
378 changed files with 4422 additions and 1890 deletions

View File

@ -37,8 +37,10 @@ MAIL_FROM=bookstack@example.com
# SMTP mail options
# These settings can be checked using the "Send a Test Email"
# feature found in the "Settings > Maintenance" area of the system.
# For more detailed documentation on mail options, refer to:
# https://www.bookstackapp.com/docs/admin/email-webhooks/#email-configuration
MAIL_HOST=localhost
MAIL_PORT=1025
MAIL_PORT=587
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

View File

@ -69,23 +69,19 @@ DB_PASSWORD=database_user_password
# certificate itself (Common Name or Subject Alternative Name).
MYSQL_ATTR_SSL_CA="/path/to/ca.pem"
# Mail system to use
# Can be 'smtp' or 'sendmail'
# Mail configuration
# Refer to https://www.bookstackapp.com/docs/admin/email-webhooks/#email-configuration
MAIL_DRIVER=smtp
# Mail sending options
MAIL_FROM=mail@bookstackapp.com
MAIL_FROM_NAME=BookStack
# SMTP mail options
MAIL_HOST=localhost
MAIL_PORT=1025
MAIL_PORT=587
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_VERIFY_SSL=true
# Command to use when email is sent via sendmail
MAIL_SENDMAIL_COMMAND="/usr/sbin/sendmail -bs"
# Cache & Session driver to use

View File

@ -333,3 +333,12 @@ Patrick Dantas (pa-tiq) :: Portuguese, Brazilian
Michal (michalgurcik) :: Slovak
Nepomacs :: German
Rubens (rubenix) :: Catalan
m4z :: German; German Informal
TheRazvy :: Romanian
Yossi Zilber (lortens) :: Hebrew; Uzbek
desdinova :: French
Ingus Rūķis (ingus.rukis) :: Latvian
Eugene Pershin (SilentEugene) :: Russian
周盛道 (zhoushengdao) :: Chinese Simplified
hamidreza amini (hamidrezaamini2022) :: Persian
Tomislav Kraljević (tomislav.kraljevic) :: Croatian

View File

@ -42,6 +42,7 @@ class CommentController extends Controller
$comment = $this->commentRepo->create($page, $request->get('text'), $request->get('parent_id'));
return view('comments.comment-branch', [
'readOnly' => false,
'branch' => [
'comment' => $comment,
'children' => [],
@ -66,7 +67,7 @@ class CommentController extends Controller
$comment = $this->commentRepo->update($comment, $request->get('text'));
return view('comments.comment', ['comment' => $comment]);
return view('comments.comment', ['comment' => $comment, 'readOnly' => false]);
}
/**

View File

@ -19,6 +19,8 @@ use Illuminate\Support\Str;
* @property string $entity_type
* @property int $entity_id
* @property int $user_id
* @property Carbon $created_at
* @property Carbon $updated_at
*/
class Activity extends Model
{

View File

@ -16,8 +16,8 @@ use ReflectionMethod;
class ApiDocsGenerator
{
protected $reflectionClasses = [];
protected $controllerClasses = [];
protected array $reflectionClasses = [];
protected array $controllerClasses = [];
/**
* Load the docs form the cache if existing
@ -139,9 +139,10 @@ class ApiDocsGenerator
protected function parseDescriptionFromMethodComment(string $comment): string
{
$matches = [];
preg_match_all('/^\s*?\*\s((?![@\s]).*?)$/m', $comment, $matches);
preg_match_all('/^\s*?\*\s?($|((?![\/@\s]).*?))$/m', $comment, $matches);
return implode(' ', $matches[1] ?? []);
$text = implode(' ', $matches[1] ?? []);
return str_replace(' ', "\n", $text);
}
/**

View File

@ -8,6 +8,10 @@
* Do not edit this file unless you're happy to maintain any changes yourself.
*/
// Configured mail encryption method.
// STARTTLS should still be attempted, but tls/ssl forces TLS usage.
$mailEncryption = env('MAIL_ENCRYPTION', null);
return [
// Mail driver to use.
@ -27,14 +31,15 @@ return [
'mailers' => [
'smtp' => [
'transport' => 'smtp',
'scheme' => null,
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'verify_peer' => env('MAIL_VERIFY_SSL', true),
'timeout' => null,
'local_domain' => env('MAIL_EHLO_DOMAIN'),
'tls_required' => ($mailEncryption === 'tls' || $mailEncryption === 'ssl'),
],
'sendmail' => [

View File

@ -30,7 +30,7 @@ class BookshelfController extends Controller
}
/**
* Display a listing of the book.
* Display a listing of bookshelves.
*/
public function index(Request $request)
{
@ -111,8 +111,9 @@ class BookshelfController extends Controller
]);
$sort = $listOptions->getSort();
$sortedVisibleShelfBooks = $shelf->visibleBooks()->get()
->sortBy($sort === 'default' ? 'pivot.order' : $sort, SORT_REGULAR, $listOptions->getOrder() === 'desc')
$sortedVisibleShelfBooks = $shelf->visibleBooks()
->reorder($sort === 'default' ? 'order' : $sort, $listOptions->getOrder())
->get()
->values()
->all();

View File

@ -13,8 +13,6 @@ use Illuminate\Http\Request;
class PageApiController extends ApiController
{
protected PageRepo $pageRepo;
protected $rules = [
'create' => [
'book_id' => ['required_without:chapter_id', 'integer'],
@ -36,9 +34,9 @@ class PageApiController extends ApiController
],
];
public function __construct(PageRepo $pageRepo)
{
$this->pageRepo = $pageRepo;
public function __construct(
protected PageRepo $pageRepo
) {
}
/**
@ -86,10 +84,14 @@ class PageApiController extends ApiController
/**
* View the details of a single page.
*
* Pages will always have HTML content. They may have markdown content
* if the markdown editor was used to last update the page.
*
* The 'html' property is the fully rendered & escaped HTML content that BookStack
* would show on page view, with page includes handled.
* The 'raw_html' property is the direct database stored HTML content, which would be
* what BookStack shows on page edit.
*
* See the "Content Security" section of these docs for security considerations when using
* the page content returned from this endpoint.
*/

View File

@ -24,16 +24,10 @@ use Throwable;
class PageController extends Controller
{
protected PageRepo $pageRepo;
protected ReferenceFetcher $referenceFetcher;
/**
* PageController constructor.
*/
public function __construct(PageRepo $pageRepo, ReferenceFetcher $referenceFetcher)
{
$this->pageRepo = $pageRepo;
$this->referenceFetcher = $referenceFetcher;
public function __construct(
protected PageRepo $pageRepo,
protected ReferenceFetcher $referenceFetcher
) {
}
/**

View File

@ -139,6 +139,7 @@ class Page extends BookChild
{
$refreshed = $this->refresh()->unsetRelations()->load(['tags', 'createdBy', 'updatedBy', 'ownedBy']);
$refreshed->setHidden(array_diff($refreshed->getHidden(), ['html', 'markdown']));
$refreshed->setAttribute('raw_html', $refreshed->html);
$refreshed->html = (new PageContent($refreshed))->render();
return $refreshed;

View File

@ -2,6 +2,7 @@
namespace BookStack\Entities\Tools;
use BookStack\Activity\Tools\CommentTree;
use BookStack\Entities\Models\Page;
use BookStack\Entities\Repos\PageRepo;
use BookStack\Entities\Tools\Markdown\HtmlToMarkdown;
@ -9,19 +10,14 @@ use BookStack\Entities\Tools\Markdown\MarkdownToHtml;
class PageEditorData
{
protected Page $page;
protected PageRepo $pageRepo;
protected string $requestedEditor;
protected array $viewData;
protected array $warnings;
public function __construct(Page $page, PageRepo $pageRepo, string $requestedEditor)
{
$this->page = $page;
$this->pageRepo = $pageRepo;
$this->requestedEditor = $requestedEditor;
public function __construct(
protected Page $page,
protected PageRepo $pageRepo,
protected string $requestedEditor
) {
$this->viewData = $this->build();
}
@ -69,6 +65,7 @@ class PageEditorData
'draftsEnabled' => $draftsEnabled,
'templates' => $templates,
'editor' => $editorType,
'comments' => new CommentTree($page),
];
}

View File

@ -55,9 +55,9 @@ class PermissionsUpdater
}
if (isset($data['fallback_permissions']['inheriting']) && $data['fallback_permissions']['inheriting'] !== true) {
$data = $data['fallback_permissions'];
$data['role_id'] = 0;
$rolePermissionData = $this->formatPermissionsFromApiRequestToEntityPermissions([$data], true);
$fallbackData = $data['fallback_permissions'];
$fallbackData['role_id'] = 0;
$rolePermissionData = $this->formatPermissionsFromApiRequestToEntityPermissions([$fallbackData], true);
$entity->permissions()->createMany($rolePermissionData);
}

View File

@ -2,6 +2,25 @@
namespace BookStack\Exceptions;
class ApiAuthException extends UnauthorizedException
use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
class ApiAuthException extends \Exception implements HttpExceptionInterface
{
protected int $status;
public function __construct(string $message, int $statusCode = 401)
{
$this->status = $statusCode;
parent::__construct($message, $statusCode);
}
public function getStatusCode(): int
{
return $this->status;
}
public function getHeaders(): array
{
return [];
}
}

View File

@ -9,7 +9,7 @@ use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException;
use Symfony\Component\HttpKernel\Exception\HttpException;
use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
use Throwable;
class Handler extends ExceptionHandler
@ -82,7 +82,7 @@ class Handler extends ExceptionHandler
$code = 500;
$headers = [];
if ($e instanceof HttpException) {
if ($e instanceof HttpExceptionInterface) {
$code = $e->getStatusCode();
$headers = $e->getHeaders();
}
@ -103,10 +103,6 @@ class Handler extends ExceptionHandler
$code = $e->status;
}
if (method_exists($e, 'getStatus')) {
$code = $e->getStatus();
}
$responseData['error']['code'] = $code;
return new JsonResponse($responseData, $code, $headers);

View File

@ -4,8 +4,9 @@ namespace BookStack\Exceptions;
use Exception;
use Illuminate\Http\JsonResponse;
use Illuminate\Contracts\Support\Responsable;
class JsonDebugException extends Exception
class JsonDebugException extends Exception implements Responsable
{
protected array $data;
@ -22,7 +23,7 @@ class JsonDebugException extends Exception
* Convert this exception into a response.
* We add a manual data conversion to UTF8 to ensure any binary data is presentable as a JSON string.
*/
public function render(): JsonResponse
public function toResponse($request): JsonResponse
{
$cleaned = mb_convert_encoding($this->data, 'UTF-8');

View File

@ -4,29 +4,39 @@ namespace BookStack\Exceptions;
use Exception;
use Illuminate\Contracts\Support\Responsable;
use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
class NotifyException extends Exception implements Responsable
class NotifyException extends Exception implements Responsable, HttpExceptionInterface
{
public $message;
public $redirectLocation;
protected $status;
public string $redirectLocation;
protected int $status;
public function __construct(string $message, string $redirectLocation = '/', int $status = 500)
{
$this->message = $message;
$this->redirectLocation = $redirectLocation;
$this->status = $status;
parent::__construct();
}
/**
* Get the desired status code for this exception.
* Get the desired HTTP status code for this exception.
*/
public function getStatus(): int
public function getStatusCode(): int
{
return $this->status;
}
/**
* Get the desired HTTP headers for this exception.
*/
public function getHeaders(): array
{
return [];
}
/**
* Send the response for this type of exception.
*
@ -38,7 +48,7 @@ class NotifyException extends Exception implements Responsable
// Front-end JSON handling. API-side handling managed via handler.
if ($request->wantsJson()) {
return response()->json(['error' => $message], 403);
return response()->json(['error' => $message], $this->getStatusCode());
}
if (!empty($message)) {

View File

@ -4,18 +4,12 @@ namespace BookStack\Exceptions;
use Exception;
use Illuminate\Contracts\Support\Responsable;
use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;
class PrettyException extends Exception implements Responsable
class PrettyException extends Exception implements Responsable, HttpExceptionInterface
{
/**
* @var ?string
*/
protected $subtitle = null;
/**
* @var ?string
*/
protected $details = null;
protected ?string $subtitle = null;
protected ?string $details = null;
/**
* Render a response for when this exception occurs.
@ -24,7 +18,7 @@ class PrettyException extends Exception implements Responsable
*/
public function toResponse($request)
{
$code = ($this->getCode() === 0) ? 500 : $this->getCode();
$code = $this->getStatusCode();
return response()->view('errors.' . $code, [
'message' => $this->getMessage(),
@ -46,4 +40,20 @@ class PrettyException extends Exception implements Responsable
return $this;
}
/**
* Get the desired HTTP status code for this exception.
*/
public function getStatusCode(): int
{
return ($this->getCode() === 0) ? 500 : $this->getCode();
}
/**
* Get the desired HTTP headers for this exception.
*/
public function getHeaders(): array
{
return [];
}
}

View File

@ -1,16 +0,0 @@
<?php
namespace BookStack\Exceptions;
use Exception;
class UnauthorizedException extends Exception
{
/**
* ApiAuthException constructor.
*/
public function __construct($message, $code = 401)
{
parent::__construct($message, $code);
}
}

View File

@ -3,7 +3,6 @@
namespace BookStack\Http\Middleware;
use BookStack\Exceptions\ApiAuthException;
use BookStack\Exceptions\UnauthorizedException;
use Closure;
use Illuminate\Http\Request;
@ -11,15 +10,13 @@ class ApiAuthenticate
{
/**
* Handle an incoming request.
*
* @throws ApiAuthException
*/
public function handle(Request $request, Closure $next)
{
// Validate the token and it's users API access
try {
$this->ensureAuthorizedBySessionOrToken();
} catch (UnauthorizedException $exception) {
return $this->unauthorisedResponse($exception->getMessage(), $exception->getCode());
}
$this->ensureAuthorizedBySessionOrToken();
return $next($request);
}
@ -28,7 +25,7 @@ class ApiAuthenticate
* Ensure the current user can access authenticated API routes, either via existing session
* authentication or via API Token authentication.
*
* @throws UnauthorizedException
* @throws ApiAuthException
*/
protected function ensureAuthorizedBySessionOrToken(): void
{
@ -58,17 +55,4 @@ class ApiAuthenticate
return $hasApiPermission && hasAppAccess();
}
/**
* Provide a standard API unauthorised response.
*/
protected function unauthorisedResponse(string $message, int $code)
{
return response()->json([
'error' => [
'code' => $code,
'message' => $message,
],
], $code);
}
}

View File

@ -38,8 +38,10 @@ class ContentPermissionApiController extends ApiController
/**
* Read the configured content-level permissions for the item of the given type and ID.
*
* 'contentType' should be one of: page, book, chapter, bookshelf.
* 'contentId' should be the relevant ID of that item type you'd like to handle permissions for.
*
* The permissions shown are those that override the default for just the specified item, they do not show the
* full evaluated permission for a role, nor do they reflect permissions inherited from other items in the hierarchy.
* Fallback permission values may be `null` when inheriting is active.
@ -57,6 +59,7 @@ class ContentPermissionApiController extends ApiController
/**
* Update the configured content-level permission overrides for the item of the given type and ID.
* 'contentType' should be one of: page, book, chapter, bookshelf.
*
* 'contentId' should be the relevant ID of that item type you'd like to handle permissions for.
* Providing an empty `role_permissions` array will remove any existing configured role permissions,
* so you may want to fetch existing permissions beforehand if just adding/removing a single item.

View File

@ -52,8 +52,10 @@ class ImageGalleryApiController extends ApiController
/**
* Create a new image in the system.
*
* Since "image" is expected to be a file, this needs to be a 'multipart/form-data' type request.
* The provided "uploaded_to" should be an existing page ID in the system.
*
* If the "name" parameter is omitted, the filename of the provided image file will be used instead.
* The "type" parameter should be 'gallery' for page content images, and 'drawio' should only be used
* when the file is a PNG file with diagrams.net image data embedded within.

View File

@ -29,7 +29,8 @@ class HttpFetcher
curl_close($ch);
if ($err) {
throw new HttpFetchException($err);
$errno = curl_errno($ch);
throw new HttpFetchException($err, $errno);
}
return $data;

View File

@ -177,6 +177,7 @@ class ImageRepo
$image->refresh();
$image->updated_by = user()->id;
$image->touch();
$image->save();
$this->imageService->replaceExistingFromUpload($image->path, $image->type, $file);
$this->loadThumbs($image, true);

View File

@ -34,7 +34,7 @@ class UserAvatars
$user->avatar()->associate($avatar);
$user->save();
} catch (Exception $e) {
Log::error('Failed to save user avatar image');
Log::error('Failed to save user avatar image', ['exception' => $e]);
}
}
@ -49,7 +49,7 @@ class UserAvatars
$user->avatar()->associate($avatar);
$user->save();
} catch (Exception $e) {
Log::error('Failed to save user avatar image');
Log::error('Failed to save user avatar image', ['exception' => $e]);
}
}
@ -107,14 +107,14 @@ class UserAvatars
/**
* Gets an image from url and returns it as a string of image data.
*
* @throws Exception
* @throws HttpFetchException
*/
protected function getAvatarImageData(string $url): string
{
try {
$imageData = $this->http->fetch($url);
} catch (HttpFetchException $exception) {
throw new Exception(trans('errors.cannot_get_image_from_url', ['url' => $url]));
throw new HttpFetchException(trans('errors.cannot_get_image_from_url', ['url' => $url]), $exception->getCode(), $exception);
}
return $imageData;

View File

@ -73,7 +73,7 @@ class UserApiController extends ApiController
*/
public function list()
{
$users = User::query()->select(['*'])
$users = User::query()->select(['users.*'])
->scopes('withLastActivityAt')
->with(['avatar']);

View File

@ -15,7 +15,7 @@ class RolesAllPaginatedAndSorted
{
$sort = $listOptions->getSort();
if ($sort === 'created_at') {
$sort = 'users.created_at';
$sort = 'roles.created_at';
}
$query = Role::query()->select(['*'])

View File

@ -49,7 +49,8 @@
"nunomaduro/larastan": "^2.4",
"phpunit/phpunit": "^9.5",
"squizlabs/php_codesniffer": "^3.7",
"ssddanbrown/asserthtml": "^2.0"
"ssddanbrown/asserthtml": "^2.0",
"ssddanbrown/symfony-mailer": "6.0.x-dev"
},
"autoload": {
"psr-4": {

382
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "5a066407dfbd1809ffd39114a873333d",
"content-hash": "d010cf625b58a0dc43addda7881ea42f",
"packages": [
{
"name": "aws/aws-crt-php",
@ -639,16 +639,16 @@
},
{
"name": "doctrine/dbal",
"version": "3.6.2",
"version": "3.6.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
"reference": "b4bd1cfbd2b916951696d82e57d054394d84864c"
"reference": "19f0dec95edd6a3c3c5ff1d188ea94c6b7fc903f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/dbal/zipball/b4bd1cfbd2b916951696d82e57d054394d84864c",
"reference": "b4bd1cfbd2b916951696d82e57d054394d84864c",
"url": "https://api.github.com/repos/doctrine/dbal/zipball/19f0dec95edd6a3c3c5ff1d188ea94c6b7fc903f",
"reference": "19f0dec95edd6a3c3c5ff1d188ea94c6b7fc903f",
"shasum": ""
},
"require": {
@ -661,12 +661,12 @@
"psr/log": "^1|^2|^3"
},
"require-dev": {
"doctrine/coding-standard": "11.1.0",
"doctrine/coding-standard": "12.0.0",
"fig/log-test": "^1",
"jetbrains/phpstorm-stubs": "2022.3",
"phpstan/phpstan": "1.10.9",
"phpstan/phpstan": "1.10.14",
"phpstan/phpstan-strict-rules": "^1.5",
"phpunit/phpunit": "9.6.6",
"phpunit/phpunit": "9.6.7",
"psalm/plugin-phpunit": "0.18.4",
"squizlabs/php_codesniffer": "3.7.2",
"symfony/cache": "^5.4|^6.0",
@ -731,7 +731,7 @@
],
"support": {
"issues": "https://github.com/doctrine/dbal/issues",
"source": "https://github.com/doctrine/dbal/tree/3.6.2"
"source": "https://github.com/doctrine/dbal/tree/3.6.4"
},
"funding": [
{
@ -747,29 +747,33 @@
"type": "tidelift"
}
],
"time": "2023-04-14T07:25:38+00:00"
"time": "2023-06-15T07:40:12+00:00"
},
{
"name": "doctrine/deprecations",
"version": "v1.0.0",
"version": "v1.1.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/deprecations.git",
"reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de"
"reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
"reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
"url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
"reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
"shasum": ""
},
"require": {
"php": "^7.1|^8.0"
"php": "^7.1 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^9",
"phpunit/phpunit": "^7.5|^8.5|^9.5",
"psr/log": "^1|^2|^3"
"phpstan/phpstan": "1.4.10 || 1.10.15",
"phpstan/phpstan-phpunit": "^1.0",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
"psalm/plugin-phpunit": "0.18.4",
"psr/log": "^1 || ^2 || ^3",
"vimeo/psalm": "4.30.0 || 5.12.0"
},
"suggest": {
"psr/log": "Allows logging deprecations via PSR-3 logger implementation"
@ -788,9 +792,9 @@
"homepage": "https://www.doctrine-project.org/",
"support": {
"issues": "https://github.com/doctrine/deprecations/issues",
"source": "https://github.com/doctrine/deprecations/tree/v1.0.0"
"source": "https://github.com/doctrine/deprecations/tree/v1.1.1"
},
"time": "2022-05-02T15:47:09+00:00"
"time": "2023-06-03T09:27:29+00:00"
},
{
"name": "doctrine/event-manager",
@ -886,28 +890,28 @@
},
{
"name": "doctrine/inflector",
"version": "2.0.6",
"version": "2.0.8",
"source": {
"type": "git",
"url": "https://github.com/doctrine/inflector.git",
"reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024"
"reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024",
"reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024",
"url": "https://api.github.com/repos/doctrine/inflector/zipball/f9301a5b2fb1216b2b08f02ba04dc45423db6bff",
"reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff",
"shasum": ""
},
"require": {
"php": "^7.2 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^10",
"doctrine/coding-standard": "^11.0",
"phpstan/phpstan": "^1.8",
"phpstan/phpstan-phpunit": "^1.1",
"phpstan/phpstan-strict-rules": "^1.3",
"phpunit/phpunit": "^8.5 || ^9.5",
"vimeo/psalm": "^4.25"
"vimeo/psalm": "^4.25 || ^5.4"
},
"type": "library",
"autoload": {
@ -957,7 +961,7 @@
],
"support": {
"issues": "https://github.com/doctrine/inflector/issues",
"source": "https://github.com/doctrine/inflector/tree/2.0.6"
"source": "https://github.com/doctrine/inflector/tree/2.0.8"
},
"funding": [
{
@ -973,7 +977,7 @@
"type": "tidelift"
}
],
"time": "2022-10-20T09:10:12+00:00"
"time": "2023-06-16T13:40:37+00:00"
},
{
"name": "doctrine/lexer",
@ -1178,16 +1182,16 @@
},
{
"name": "egulias/email-validator",
"version": "3.2.5",
"version": "3.2.6",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
"reference": "b531a2311709443320c786feb4519cfaf94af796"
"reference": "e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/egulias/EmailValidator/zipball/b531a2311709443320c786feb4519cfaf94af796",
"reference": "b531a2311709443320c786feb4519cfaf94af796",
"url": "https://api.github.com/repos/egulias/EmailValidator/zipball/e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7",
"reference": "e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7",
"shasum": ""
},
"require": {
@ -1233,7 +1237,7 @@
],
"support": {
"issues": "https://github.com/egulias/EmailValidator/issues",
"source": "https://github.com/egulias/EmailValidator/tree/3.2.5"
"source": "https://github.com/egulias/EmailValidator/tree/3.2.6"
},
"funding": [
{
@ -1241,7 +1245,7 @@
"type": "github"
}
],
"time": "2023-01-02T17:26:14+00:00"
"time": "2023-06-01T07:04:22+00:00"
},
{
"name": "fruitcake/php-cors",
@ -1941,16 +1945,16 @@
},
{
"name": "laravel/framework",
"version": "v9.52.7",
"version": "v9.52.10",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "675ea868fe36b18c8303e954aac540e6b1caa677"
"reference": "858add225ce88a76c43aec0e7866288321ee0ee9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/675ea868fe36b18c8303e954aac540e6b1caa677",
"reference": "675ea868fe36b18c8303e954aac540e6b1caa677",
"url": "https://api.github.com/repos/laravel/framework/zipball/858add225ce88a76c43aec0e7866288321ee0ee9",
"reference": "858add225ce88a76c43aec0e7866288321ee0ee9",
"shasum": ""
},
"require": {
@ -2135,7 +2139,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2023-04-25T13:44:05+00:00"
"time": "2023-06-27T13:25:54+00:00"
},
{
"name": "laravel/serializable-closure",
@ -2199,16 +2203,16 @@
},
{
"name": "laravel/socialite",
"version": "v5.6.1",
"version": "v5.6.3",
"source": {
"type": "git",
"url": "https://github.com/laravel/socialite.git",
"reference": "a14a177f2cc71d8add71e2b19e00800e83bdda09"
"reference": "00ea7f8630673ea49304fc8a9fca5a64eb838c7e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/socialite/zipball/a14a177f2cc71d8add71e2b19e00800e83bdda09",
"reference": "a14a177f2cc71d8add71e2b19e00800e83bdda09",
"url": "https://api.github.com/repos/laravel/socialite/zipball/00ea7f8630673ea49304fc8a9fca5a64eb838c7e",
"reference": "00ea7f8630673ea49304fc8a9fca5a64eb838c7e",
"shasum": ""
},
"require": {
@ -2223,6 +2227,7 @@
"require-dev": {
"mockery/mockery": "^1.0",
"orchestra/testbench": "^4.0|^5.0|^6.0|^7.0|^8.0",
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^8.0|^9.3"
},
"type": "library",
@ -2264,7 +2269,7 @@
"issues": "https://github.com/laravel/socialite/issues",
"source": "https://github.com/laravel/socialite"
},
"time": "2023-01-20T15:42:35+00:00"
"time": "2023-06-06T13:42:43+00:00"
},
{
"name": "laravel/tinker",
@ -3259,16 +3264,16 @@
},
{
"name": "nesbot/carbon",
"version": "2.66.0",
"version": "2.68.1",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
"reference": "496712849902241f04902033b0441b269effe001"
"reference": "4f991ed2a403c85efbc4f23eb4030063fdbe01da"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/496712849902241f04902033b0441b269effe001",
"reference": "496712849902241f04902033b0441b269effe001",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4f991ed2a403c85efbc4f23eb4030063fdbe01da",
"reference": "4f991ed2a403c85efbc4f23eb4030063fdbe01da",
"shasum": ""
},
"require": {
@ -3357,7 +3362,7 @@
"type": "tidelift"
}
],
"time": "2023-01-29T18:53:47+00:00"
"time": "2023-06-20T18:29:04+00:00"
},
{
"name": "nette/schema",
@ -3510,16 +3515,16 @@
},
{
"name": "nikic/php-parser",
"version": "v4.15.5",
"version": "v4.16.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e"
"reference": "19526a33fb561ef417e822e85f08a00db4059c17"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/11e2663a5bc9db5d714eedb4277ee300403b4a9e",
"reference": "11e2663a5bc9db5d714eedb4277ee300403b4a9e",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/19526a33fb561ef417e822e85f08a00db4059c17",
"reference": "19526a33fb561ef417e822e85f08a00db4059c17",
"shasum": ""
},
"require": {
@ -3560,9 +3565,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v4.15.5"
"source": "https://github.com/nikic/PHP-Parser/tree/v4.16.0"
},
"time": "2023-05-19T20:20:00+00:00"
"time": "2023-06-25T14:52:30+00:00"
},
{
"name": "nunomaduro/termwind",
@ -3990,16 +3995,16 @@
},
{
"name": "phpseclib/phpseclib",
"version": "3.0.19",
"version": "3.0.20",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "cc181005cf548bfd8a4896383bb825d859259f95"
"reference": "543a1da81111a0bfd6ae7bbc2865c5e89ed3fc67"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/cc181005cf548bfd8a4896383bb825d859259f95",
"reference": "cc181005cf548bfd8a4896383bb825d859259f95",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/543a1da81111a0bfd6ae7bbc2865c5e89ed3fc67",
"reference": "543a1da81111a0bfd6ae7bbc2865c5e89ed3fc67",
"shasum": ""
},
"require": {
@ -4080,7 +4085,7 @@
],
"support": {
"issues": "https://github.com/phpseclib/phpseclib/issues",
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.19"
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.20"
},
"funding": [
{
@ -4096,7 +4101,7 @@
"type": "tidelift"
}
],
"time": "2023-03-05T17:13:09+00:00"
"time": "2023-06-13T06:30:34+00:00"
},
{
"name": "pragmarx/google2fa",
@ -4152,16 +4157,16 @@
},
{
"name": "predis/predis",
"version": "v2.1.2",
"version": "v2.2.0",
"source": {
"type": "git",
"url": "https://github.com/predis/predis.git",
"reference": "a77a43913a74f9331f637bb12867eb8e274814e5"
"reference": "33b70b971a32b0d28b4f748b0547593dce316e0d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/predis/predis/zipball/a77a43913a74f9331f637bb12867eb8e274814e5",
"reference": "a77a43913a74f9331f637bb12867eb8e274814e5",
"url": "https://api.github.com/repos/predis/predis/zipball/33b70b971a32b0d28b4f748b0547593dce316e0d",
"reference": "33b70b971a32b0d28b4f748b0547593dce316e0d",
"shasum": ""
},
"require": {
@ -4172,6 +4177,9 @@
"phpstan/phpstan": "^1.9",
"phpunit/phpunit": "^8.0 || ~9.4.4"
},
"suggest": {
"ext-relay": "Faster connection with in-memory caching (>=0.6.2)"
},
"type": "library",
"autoload": {
"psr-4": {
@ -4198,7 +4206,7 @@
],
"support": {
"issues": "https://github.com/predis/predis/issues",
"source": "https://github.com/predis/predis/tree/v2.1.2"
"source": "https://github.com/predis/predis/tree/v2.2.0"
},
"funding": [
{
@ -4206,7 +4214,7 @@
"type": "github"
}
],
"time": "2023-03-02T18:32:04+00:00"
"time": "2023-06-14T10:37:31+00:00"
},
{
"name": "psr/cache",
@ -4623,16 +4631,16 @@
},
{
"name": "psy/psysh",
"version": "v0.11.17",
"version": "v0.11.18",
"source": {
"type": "git",
"url": "https://github.com/bobthecow/psysh.git",
"reference": "3dc5d4018dabd80bceb8fe1e3191ba8460569f0a"
"reference": "4f00ee9e236fa6a48f4560d1300b9c961a70a7ec"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/bobthecow/psysh/zipball/3dc5d4018dabd80bceb8fe1e3191ba8460569f0a",
"reference": "3dc5d4018dabd80bceb8fe1e3191ba8460569f0a",
"url": "https://api.github.com/repos/bobthecow/psysh/zipball/4f00ee9e236fa6a48f4560d1300b9c961a70a7ec",
"reference": "4f00ee9e236fa6a48f4560d1300b9c961a70a7ec",
"shasum": ""
},
"require": {
@ -4693,9 +4701,9 @@
],
"support": {
"issues": "https://github.com/bobthecow/psysh/issues",
"source": "https://github.com/bobthecow/psysh/tree/v0.11.17"
"source": "https://github.com/bobthecow/psysh/tree/v0.11.18"
},
"time": "2023-05-05T20:02:42+00:00"
"time": "2023-05-23T02:31:11+00:00"
},
{
"name": "ralouphie/getallheaders",
@ -5419,6 +5427,74 @@
],
"time": "2022-01-24T20:12:20+00:00"
},
{
"name": "ssddanbrown/symfony-mailer",
"version": "6.0.x-dev",
"source": {
"type": "git",
"url": "https://github.com/ssddanbrown/symfony-mailer.git",
"reference": "2219dcdc5f58e4f382ce8f1e6942d16982aa3012"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ssddanbrown/symfony-mailer/zipball/2219dcdc5f58e4f382ce8f1e6942d16982aa3012",
"reference": "2219dcdc5f58e4f382ce8f1e6942d16982aa3012",
"shasum": ""
},
"require": {
"egulias/email-validator": "^2.1.10|^3|^4",
"php": ">=8.0.2",
"psr/event-dispatcher": "^1",
"psr/log": "^1|^2|^3",
"symfony/event-dispatcher": "^5.4|^6.0",
"symfony/mime": "^5.4|^6.0",
"symfony/service-contracts": "^1.1|^2|^3"
},
"conflict": {
"symfony/http-kernel": "<5.4"
},
"replace": {
"symfony/mailer": "^6.0"
},
"require-dev": {
"symfony/http-client-contracts": "^1.1|^2|^3",
"symfony/messenger": "^5.4|^6.0"
},
"default-branch": true,
"type": "library",
"autoload": {
"psr-4": {
"Symfony\\Component\\Mailer\\": ""
},
"exclude-from-classmap": [
"/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Dan Brown",
"homepage": "https://danb.me"
},
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/ssddanbrown/symfony-mailer/tree/6.0"
},
"time": "2023-07-04T14:10:33+00:00"
},
{
"name": "symfony/console",
"version": "v6.0.19",
@ -6124,80 +6200,6 @@
],
"time": "2023-02-01T08:22:55+00:00"
},
{
"name": "symfony/mailer",
"version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
"reference": "cd60799210c488f545ddde2444dc1aa548322872"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/mailer/zipball/cd60799210c488f545ddde2444dc1aa548322872",
"reference": "cd60799210c488f545ddde2444dc1aa548322872",
"shasum": ""
},
"require": {
"egulias/email-validator": "^2.1.10|^3|^4",
"php": ">=8.0.2",
"psr/event-dispatcher": "^1",
"psr/log": "^1|^2|^3",
"symfony/event-dispatcher": "^5.4|^6.0",
"symfony/mime": "^5.4|^6.0",
"symfony/service-contracts": "^1.1|^2|^3"
},
"conflict": {
"symfony/http-kernel": "<5.4"
},
"require-dev": {
"symfony/http-client-contracts": "^1.1|^2|^3",
"symfony/messenger": "^5.4|^6.0"
},
"type": "library",
"autoload": {
"psr-4": {
"Symfony\\Component\\Mailer\\": ""
},
"exclude-from-classmap": [
"/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/mailer/tree/v6.0.19"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2023-01-11T11:50:03+00:00"
},
{
"name": "symfony/mime",
"version": "v6.0.19",
@ -8011,16 +8013,16 @@
},
{
"name": "fakerphp/faker",
"version": "v1.22.0",
"version": "v1.23.0",
"source": {
"type": "git",
"url": "https://github.com/FakerPHP/Faker.git",
"reference": "f85772abd508bd04e20bb4b1bbe260a68d0066d2"
"reference": "e3daa170d00fde61ea7719ef47bb09bb8f1d9b01"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FakerPHP/Faker/zipball/f85772abd508bd04e20bb4b1bbe260a68d0066d2",
"reference": "f85772abd508bd04e20bb4b1bbe260a68d0066d2",
"url": "https://api.github.com/repos/FakerPHP/Faker/zipball/e3daa170d00fde61ea7719ef47bb09bb8f1d9b01",
"reference": "e3daa170d00fde61ea7719ef47bb09bb8f1d9b01",
"shasum": ""
},
"require": {
@ -8073,9 +8075,9 @@
],
"support": {
"issues": "https://github.com/FakerPHP/Faker/issues",
"source": "https://github.com/FakerPHP/Faker/tree/v1.22.0"
"source": "https://github.com/FakerPHP/Faker/tree/v1.23.0"
},
"time": "2023-05-14T12:31:37+00:00"
"time": "2023-06-12T08:44:38+00:00"
},
{
"name": "filp/whoops",
@ -8269,38 +8271,44 @@
},
{
"name": "mockery/mockery",
"version": "1.5.1",
"version": "1.6.2",
"source": {
"type": "git",
"url": "https://github.com/mockery/mockery.git",
"reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e"
"reference": "13a7fa2642c76c58fa2806ef7f565344c817a191"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e",
"reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e",
"url": "https://api.github.com/repos/mockery/mockery/zipball/13a7fa2642c76c58fa2806ef7f565344c817a191",
"reference": "13a7fa2642c76c58fa2806ef7f565344c817a191",
"shasum": ""
},
"require": {
"hamcrest/hamcrest-php": "^2.0.1",
"lib-pcre": ">=7.0",
"php": "^7.3 || ^8.0"
"php": "^7.4 || ^8.0"
},
"conflict": {
"phpunit/phpunit": "<8.0"
},
"require-dev": {
"phpunit/phpunit": "^8.5 || ^9.3"
"phpunit/phpunit": "^8.5 || ^9.3",
"psalm/plugin-phpunit": "^0.18",
"vimeo/psalm": "^5.9"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.4.x-dev"
"dev-main": "1.6.x-dev"
}
},
"autoload": {
"psr-0": {
"Mockery": "library/"
"files": [
"library/helpers.php",
"library/Mockery.php"
],
"psr-4": {
"Mockery\\": "library/Mockery"
}
},
"notification-url": "https://packagist.org/downloads/",
@ -8335,9 +8343,9 @@
],
"support": {
"issues": "https://github.com/mockery/mockery/issues",
"source": "https://github.com/mockery/mockery/tree/1.5.1"
"source": "https://github.com/mockery/mockery/tree/1.6.2"
},
"time": "2022-09-07T15:32:08+00:00"
"time": "2023-06-07T09:07:52+00:00"
},
{
"name": "myclabs/deep-copy",
@ -8488,16 +8496,16 @@
},
{
"name": "nunomaduro/larastan",
"version": "v2.6.0",
"version": "v2.6.3",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/larastan.git",
"reference": "ccac5b25949576807862cf32ba1fce1769c06c42"
"reference": "73e5be5f5c732212ce6ca77ffd2753a136f36a23"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nunomaduro/larastan/zipball/ccac5b25949576807862cf32ba1fce1769c06c42",
"reference": "ccac5b25949576807862cf32ba1fce1769c06c42",
"url": "https://api.github.com/repos/nunomaduro/larastan/zipball/73e5be5f5c732212ce6ca77ffd2753a136f36a23",
"reference": "73e5be5f5c732212ce6ca77ffd2753a136f36a23",
"shasum": ""
},
"require": {
@ -8560,7 +8568,7 @@
],
"support": {
"issues": "https://github.com/nunomaduro/larastan/issues",
"source": "https://github.com/nunomaduro/larastan/tree/v2.6.0"
"source": "https://github.com/nunomaduro/larastan/tree/v2.6.3"
},
"funding": [
{
@ -8580,7 +8588,7 @@
"type": "patreon"
}
],
"time": "2023-04-20T12:40:01+00:00"
"time": "2023-06-13T21:39:27+00:00"
},
{
"name": "phar-io/manifest",
@ -8695,16 +8703,16 @@
},
{
"name": "phpmyadmin/sql-parser",
"version": "5.7.0",
"version": "5.8.0",
"source": {
"type": "git",
"url": "https://github.com/phpmyadmin/sql-parser.git",
"reference": "0f5895aab2b6002d00b6831b60983523dea30bff"
"reference": "db1b3069b5dbc220d393d67ff911e0ae76732755"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpmyadmin/sql-parser/zipball/0f5895aab2b6002d00b6831b60983523dea30bff",
"reference": "0f5895aab2b6002d00b6831b60983523dea30bff",
"url": "https://api.github.com/repos/phpmyadmin/sql-parser/zipball/db1b3069b5dbc220d393d67ff911e0ae76732755",
"reference": "db1b3069b5dbc220d393d67ff911e0ae76732755",
"shasum": ""
},
"require": {
@ -8778,20 +8786,20 @@
"type": "other"
}
],
"time": "2023-01-25T10:43:40+00:00"
"time": "2023-06-05T18:19:38+00:00"
},
{
"name": "phpstan/phpstan",
"version": "1.10.15",
"version": "1.10.23",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
"reference": "762c4dac4da6f8756eebb80e528c3a47855da9bd"
"reference": "65ab678d1248a8bc6fde456f0d7ff3562a61a4cd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/762c4dac4da6f8756eebb80e528c3a47855da9bd",
"reference": "762c4dac4da6f8756eebb80e528c3a47855da9bd",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/65ab678d1248a8bc6fde456f0d7ff3562a61a4cd",
"reference": "65ab678d1248a8bc6fde456f0d7ff3562a61a4cd",
"shasum": ""
},
"require": {
@ -8840,7 +8848,7 @@
"type": "tidelift"
}
],
"time": "2023-05-09T15:28:01+00:00"
"time": "2023-07-04T13:32:44+00:00"
},
{
"name": "phpunit/php-code-coverage",
@ -9162,16 +9170,16 @@
},
{
"name": "phpunit/phpunit",
"version": "9.6.8",
"version": "9.6.9",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "17d621b3aff84d0c8b62539e269e87d8d5baa76e"
"reference": "a9aceaf20a682aeacf28d582654a1670d8826778"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/17d621b3aff84d0c8b62539e269e87d8d5baa76e",
"reference": "17d621b3aff84d0c8b62539e269e87d8d5baa76e",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a9aceaf20a682aeacf28d582654a1670d8826778",
"reference": "a9aceaf20a682aeacf28d582654a1670d8826778",
"shasum": ""
},
"require": {
@ -9245,7 +9253,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.8"
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.9"
},
"funding": [
{
@ -9261,7 +9269,7 @@
"type": "tidelift"
}
],
"time": "2023-05-11T05:14:45+00:00"
"time": "2023-06-11T06:13:56+00:00"
},
{
"name": "sebastian/cli-parser",
@ -10466,7 +10474,9 @@
],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"stability-flags": {
"ssddanbrown/symfony-mailer": 20
},
"prefer-stable": true,
"prefer-lowest": false,
"platform": {

View File

@ -0,0 +1,29 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;
return new class extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
DB::table('entity_permissions')
->where('entity_type', '=', 'bookshelf')
->update(['create' => 0]);
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
// No structural changes to make, and we cannot know the permissions to re-assign.
}
};

View File

@ -1,11 +1,11 @@
{
"id": 15,
"name": "My new book",
"slug": "my-new-book",
"description": "This is a book created via the API",
"created_by": 1,
"updated_by": 1,
"owned_by": 1,
"slug": "my-new-book",
"updated_at": "2020-01-12T14:05:11.000000Z",
"created_at": "2020-01-12T14:05:11.000000Z",
"id": 15
"created_at": "2020-01-12T14:05:11.000000Z"
}

View File

@ -7,15 +7,18 @@
"updated_at": "2020-01-12T14:11:51.000000Z",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"contents": [
{
@ -52,12 +55,12 @@
"template": false,
"created_at": "2021-12-19T18:22:11.000000Z",
"updated_at": "2022-07-29T13:44:15.000000Z",
"url": "https://example.com/books/my-own-book/page/cool-animals"
"url": "https://example.com/books/my-own-book/page/cool-animals",
"type": "page"
}
],
"tags": [
{
"id": 13,
"name": "Category",
"value": "Guide",
"order": 0

View File

@ -1,39 +1,25 @@
{
"id": 74,
"book_id": 1,
"priority": 6,
"slug": "my-fantastic-new-chapter",
"name": "My fantastic new chapter",
"description": "This is a great new chapter that I've created via the API",
"priority": 6,
"created_by": 1,
"updated_by": 1,
"owned_by": 1,
"slug": "my-fantastic-new-chapter",
"updated_at": "2020-05-22T22:59:55.000000Z",
"created_at": "2020-05-22T22:59:55.000000Z",
"id": 74,
"book": {
"id": 1,
"name": "BookStack User Guide",
"slug": "bookstack-user-guide",
"description": "This is a general guide on using BookStack on a day-to-day basis.",
"created_at": "2019-05-05T21:48:46.000000Z",
"updated_at": "2019-12-11T20:57:31.000000Z",
"created_by": 1,
"updated_by": 1
},
"tags": [
{
"name": "Category",
"value": "Top Content",
"order": 0,
"created_at": "2020-05-22T22:59:55.000000Z",
"updated_at": "2020-05-22T22:59:55.000000Z"
"order": 0
},
{
"name": "Rating",
"value": "Highest",
"order": 0,
"created_at": "2020-05-22T22:59:55.000000Z",
"updated_at": "2020-05-22T22:59:55.000000Z"
"order": 1
}
]
}

View File

@ -11,7 +11,8 @@
"updated_at": "2019-09-28T11:24:23.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
"owned_by": 1,
"book_slug": "example-book"
},
{
"id": 2,
@ -24,7 +25,8 @@
"updated_at": "2019-10-17T15:05:34.000000Z",
"created_by": 3,
"updated_by": 3,
"owned_by": 3
"owned_by": 3,
"book_slug": "example-book"
}
],
"total": 40

View File

@ -9,16 +9,20 @@
"updated_at": "2019-09-28T11:24:23.000000Z",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"book_slug": "example-book",
"tags": [
{
"name": "Category",
@ -38,9 +42,12 @@
"updated_at": "2019-08-26T14:32:59.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1,
"draft": false,
"revision_count": 2,
"template": false
"template": false,
"editor": "wysiwyg",
"book_slug": "example-book"
},
{
"id": 7,
@ -53,9 +60,12 @@
"updated_at": "2019-06-06T12:03:04.000000Z",
"created_by": 3,
"updated_by": 3,
"owned_by": 1,
"draft": false,
"revision_count": 1,
"template": false
"template": false,
"editor": "wysiwyg",
"book_slug": "example-book"
}
]
}

View File

@ -10,30 +10,17 @@
"created_by": 1,
"updated_by": 1,
"owned_by": 1,
"book": {
"id": 1,
"name": "BookStack User Guide",
"slug": "bookstack-user-guide",
"description": "This is a general guide on using BookStack on a day-to-day basis.",
"created_at": "2019-05-05T21:48:46.000000Z",
"updated_at": "2019-12-11T20:57:31.000000Z",
"created_by": 1,
"updated_by": 1
},
"book_slug": "bookstack-demo-site",
"tags": [
{
"name": "Category",
"value": "Kinda Good Content",
"order": 0,
"created_at": "2020-05-22T23:07:20.000000Z",
"updated_at": "2020-05-22T23:07:20.000000Z"
"order": 0
},
{
"name": "Rating",
"value": "Medium",
"order": 0,
"created_at": "2020-05-22T23:07:20.000000Z",
"updated_at": "2020-05-22T23:07:20.000000Z"
"order": 1
}
]
}

View File

@ -5,25 +5,30 @@
"name": "My API Page",
"slug": "my-api-page",
"html": "<p id=\"bkmrk-my-new-api-page\">my new API page</p>",
"raw_html": "<p id=\"bkmrk-my-new-api-page\">my new API page</p>",
"priority": 14,
"created_at": "2020-11-28T15:01:39.000000Z",
"updated_at": "2020-11-28T15:01:39.000000Z",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"draft": false,
"markdown": "",
"revision_count": 1,
"template": false,
"editor": "wysiwyg",
"tags": [
{
"name": "Category",

View File

@ -8,12 +8,15 @@
"slug": "how-to-create-page-content",
"priority": 0,
"draft": false,
"revision_count": 3,
"template": false,
"created_at": "2019-05-05T21:49:58.000000Z",
"updated_at": "2020-07-04T15:50:58.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
"owned_by": 1,
"editor": "wysiwyg",
"book_slug": "example-book"
},
{
"id": 2,
@ -23,12 +26,15 @@
"slug": "how-to-use-images",
"priority": 2,
"draft": false,
"revision_count": 3,
"template": false,
"created_at": "2019-05-05T21:53:30.000000Z",
"updated_at": "2019-06-06T12:03:04.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
"owned_by": 1,
"editor": "wysiwyg",
"book_slug": "example-book"
},
{
"id": 3,
@ -38,12 +44,15 @@
"slug": "drawings-via-drawio",
"priority": 3,
"draft": false,
"revision_count": 3,
"template": false,
"created_at": "2019-05-05T21:53:49.000000Z",
"updated_at": "2019-12-18T21:56:52.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
"owned_by": 1,
"editor": "wysiwyg",
"book_slug": "example-book"
}
],
"total": 322

View File

@ -4,26 +4,31 @@
"chapter_id": 0,
"name": "A page written in markdown",
"slug": "a-page-written-in-markdown",
"html": "<h1 id=\"bkmrk-how-this-is-built\">How this is built</h1>\r\n<p id=\"bkmrk-this-page-is-written\">This page is written in markdown. BookStack stores the page data in HTML.</p>\r\n<p id=\"bkmrk-here%27s-a-cute-pictur\">Here's a cute picture of my cat:</p>\r\n<p id=\"bkmrk-\"><a href=\"http://example.com/uploads/images/gallery/2020-04/yXSrubes.jpg\"><img src=\"http://example.com/uploads/images/gallery/2020-04/scaled-1680-/yXSrubes.jpg\" alt=\"yXSrubes.jpg\"></a></p>",
"html": "<h1 id=\"bkmrk-this-is-my-cool-page\">This is my cool page! With some included text</h1>",
"raw_html": "<h1 id=\"bkmrk-this-is-my-cool-page\">This is my cool page! {{@1#bkmrk-a}}</h1>",
"priority": 13,
"created_at": "2020-02-02T21:40:38.000000Z",
"updated_at": "2020-11-28T14:43:20.000000Z",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"draft": false,
"markdown": "# How this is built\r\n\r\nThis page is written in markdown. BookStack stores the page data in HTML.\r\n\r\nHere's a cute picture of my cat:\r\n\r\n[![yXSrubes.jpg](http://example.com/uploads/images/gallery/2020-04/scaled-1680-/yXSrubes.jpg)](http://example.com/uploads/images/gallery/2020-04/yXSrubes.jpg)",
"revision_count": 5,
"template": false,
"editor": "wysiwyg",
"tags": [
{
"name": "Category",

View File

@ -5,25 +5,30 @@
"name": "My updated API Page",
"slug": "my-updated-api-page",
"html": "<p id=\"bkmrk-my-new-api-page---up\">my new API page - Updated</p>",
"raw_html": "<p id=\"bkmrk-my-new-api-page---up\">my new API page - Updated</p>",
"priority": 16,
"created_at": "2020-11-28T15:10:54.000000Z",
"updated_at": "2020-11-28T15:13:03.000000Z",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"draft": false,
"markdown": "",
"revision_count": 5,
"template": false,
"editor": "wysiwyg",
"tags": [
{
"name": "Category",

View File

@ -1,11 +1,11 @@
{
"id": 14,
"name": "My shelf",
"slug": "my-shelf",
"description": "This is my shelf with some books",
"created_by": 1,
"updated_by": 1,
"owned_by": 1,
"slug": "my-shelf",
"updated_at": "2020-04-10T13:24:09.000000Z",
"created_at": "2020-04-10T13:24:09.000000Z",
"id": 14
"updated_at": "2020-04-10T13:24:09.000000Z"
}

View File

@ -5,21 +5,23 @@
"description": "This is my shelf with some books",
"created_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"updated_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"owned_by": {
"id": 1,
"name": "Admin"
"name": "Admin",
"slug": "admin"
},
"created_at": "2020-04-10T13:24:09.000000Z",
"updated_at": "2020-04-10T13:31:04.000000Z",
"tags": [
{
"id": 16,
"name": "Category",
"value": "Guide",
"order": 0
@ -41,17 +43,35 @@
{
"id": 5,
"name": "Sint explicabo alias sunt.",
"slug": "jbsQrzuaXe"
"slug": "jbsQrzuaXe",
"description": "Hic forum est.",
"created_at": "2020-04-10T13:31:04.000000Z",
"updated_at": "2020-04-10T13:31:04.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
},
{
"id": 1,
"name": "BookStack User Guide",
"slug": "bookstack-user-guide"
"slug": "bookstack-user-guide",
"description": "The Bookstack User Guide Book.",
"created_at": "2020-04-10T15:30:32.000000Z",
"updated_at": "2020-04-13T09:01:04.000000Z",
"created_by": 1,
"updated_by": 2,
"owned_by": 1
},
{
"id": 3,
"name": "Molestiae doloribus sint velit suscipit dolorem.",
"slug": "H99QxALaoG"
"slug": "H99QxALaoG",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
"created_at": "2020-04-10T13:31:04.000000Z",
"updated_at": "2020-04-10T13:31:04.000000Z",
"created_by": 1,
"updated_by": 1,
"owned_by": 1
}
]
}

View File

@ -18,7 +18,7 @@
"id": 2,
"name": "Benny",
"email": "benny@example.com",
"created_at": "2022-01-31T20:39:24.000000Z",
"created_at": "2020-01-15T04:43:11.000000Z",
"updated_at": "2021-11-18T17:10:58.000000Z",
"external_auth_id": "",
"slug": "benny",

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'تمت استعادة الصفحة',
'page_restore_notification' => 'تمت استعادة الصفحة بنجاح',
'page_move' => 'تم نقل الصفحة',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'تم إنشاء فصل',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'تم حذف الفصل',
'chapter_delete_notification' => 'تم حذف الفصل بنجاح',
'chapter_move' => 'تم نقل الفصل',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'تم إنشاء كتاب',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'تم حذف الرف',
'bookshelf_delete_notification' => 'تم حذف الرف بنجاح',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => 'تم إضافة ":name" إلى المفضلة لديك',
'favourite_remove_notification' => 'تم إزالة ":name" من المفضلة لديك',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'تم تكوين طريقة متعددة العوامل بنجاح',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'تمت إزالة طريقة متعددة العوامل بنجاح',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'تم إنشاء webhook',
'webhook_create_notification' => 'تم إنشاء Webhook بنجاح',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'تم حذف Webhook بنجاح',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'تم تحديث المستخدم بنجاح',
'user_delete' => 'deleted user',
'user_delete_notification' => 'تم إزالة المستخدم بنجاح',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role successfully created',
'role_update' => 'updated role',
'role_update_notification' => 'Role successfully updated',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role successfully deleted',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'تم التعليق',
'permissions_update' => 'تحديث الأذونات',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'إلغاء',
'close' => 'Close',
'confirm' => 'تأكيد',
'back' => 'رجوع',
'save' => 'حفظ',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'تحديد صورة',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'عرض الصور المرفوعة لهذه الصفحة',
'image_search_hint' => 'البحث باستخدام اسم الصورة',
'image_uploaded' => 'وقت الرفع :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'المزيد',
'image_image_name' => 'اسم الصورة',
'image_delete_used' => 'هذه الصورة مستخدمة بالصفحات أدناه.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'تم رفع الصورة بنجاح',
'image_update_success' => 'تم تحديث تفاصيل الصورة بنجاح',
'image_delete_success' => 'تم حذف الصورة بنجاح',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'تعديل الشفرة',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'حفظ الفصل',
'chapters_move' => 'نقل الفصل',
'chapters_move_named' => 'نقل فصل :chapterName',
'chapter_move_success' => 'تم نقل الفصل إلى :bookName',
'chapters_copy' => 'Copy Chapter',
'chapters_copy_success' => 'Chapter successfully copied',
'chapters_permissions' => 'أذونات الفصل',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'الصفحة قيد التعديل',
'pages_edit_draft_save_at' => 'تم خفظ المسودة في ',
'pages_edit_delete_draft' => 'حذف المسودة',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'التخلص من المسودة',
'pages_edit_switch_to_markdown' => 'Switch to Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'صفحة ليست في فصل',
'pages_move' => 'نقل الصفحة',
'pages_move_success' => 'تم نقل الصفحة إلى ":parentName"',
'pages_copy' => 'نسخ الصفحة',
'pages_copy_desination' => 'نسخ مكان الوصول',
'pages_copy_success' => 'تم نسخ الصفحة بنجاح',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'استرجاع',
'pages_revisions_none' => 'لا توجد مراجعات لهذه الصفحة',
'pages_copy_link' => 'نسخ الرابط',
'pages_edit_content_link' => 'تعديل المحتوى',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'أذونات الصفحة مفعلة',
'pages_initial_revision' => 'نشر مبدئي',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'في آخر :minCount دقيقة/دقائق',
'message' => 'وقت البدء: احرص على عدم الكتابة فوق تحديثات بعضنا البعض!',
],
'pages_draft_discarded' => 'تم التخلص من المسودة وتحديث المحرر بمحتوى الصفحة الحالي',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'صفحة محددة',
'pages_is_template' => 'قالب الصفحة',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'ضع تعليقاً هنا',
'comment_count' => '{0} لا توجد تعليقات|{1} تعليق واحد|{2} تعليقان[3,*] :count تعليقات',
'comment_save' => 'حفظ التعليق',
'comment_saving' => 'جار حفظ التعليق...',
'comment_deleting' => 'جار حذف التعليق...',
'comment_new' => 'تعليق جديد',
'comment_created' => 'تم التعليق :createDiff',
'comment_updated' => 'تم التحديث :updateDiff بواسطة :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'تم حذف التعليق',
'comment_created_success' => 'تمت إضافة التعليق',
'comment_updated_success' => 'تم تحديث التعليق',
'comment_delete_confirm' => 'تأكيد حذف التعليق؟',
'comment_in_reply_to' => 'رداً على :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'هل أنت متأكد من أنك تريد حذف هذه المراجعة؟',
'revision_restore_confirm' => 'هل أنت متأكد من أنك تريد استعادة هذه المراجعة؟ سيتم استبدال محتوى الصفحة الحالية.',
'revision_delete_success' => 'تم حذف المراجعة',
'revision_cannot_delete_latest' => 'لايمكن حذف آخر مراجعة.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'حدث خطأ خلال رفع الصورة',
'image_upload_type_error' => 'صيغة الصورة المرفوعة غير صالحة',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'فشل حفظ المسودة. الرجاء التأكد من وجود اتصال بالإنترنت قبل حفظ الصفحة',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'لا يمكن حذف الصفحة إذا كانت محددة كصفحة رئيسية',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'الإعدادات',
'settings_save' => 'حفظ الإعدادات',
'settings_save_success' => 'تم حفظ الإعدادات',
'system_version' => 'System Version',
'categories' => 'Categories',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'تاريخ انتهاء الصلاحية',
'user_api_token_expiry_desc' => 'حدد التاريخ الذي تنتهي فيه صلاحية هذا الرمز. بعد هذا التاريخ ، لن تعمل الطلبات المقدمة باستخدام هذا الرمز. سيؤدي ترك هذا الحقل فارغًا إلى تعيين انتهاء صلاحية لمدة 100 عام في المستقبل.',
'user_api_token_create_secret_message' => 'عقب إنشاء هذا الرمز مباشرة، سيتم إنشاء "مُعرّف الرمز" و "رمز سري" وعرضهما. وسيتم عرض الرمز السري لمرة واحدة فقط ، لذا تأكد من نسخ قيمة هذا الرمز إلى مكان آمن ومضمون قبل المتابعة.',
'user_api_token_create_success' => 'تم إنشاء رمز الـ API بنجاح',
'user_api_token_update_success' => 'تم تحديث رمز الـ API بنجاح',
'user_api_token' => 'رمز الـ API',
'user_api_token_id' => 'مُعرّف الرمز',
'user_api_token_id_desc' => 'هذا مُعرّف تم إنشاؤه بواسطة النظام غير قابل للتحرير لهذا الرمز والذي يجب توفيره في طلبات API.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'حذف الرمز',
'user_api_token_delete_warning' => 'سيؤدي هذا إلى حذف رمز API المُشار إليه بالكامل باسم \'اسم الرمز\' من النظام.',
'user_api_token_delete_confirm' => 'هل أنت متأكد من أنك تريد حذف رمز API؟',
'user_api_token_delete_success' => 'تم حذف رمز الـ API بنجاح',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'възстановена страница',
'page_restore_notification' => 'Страницата е възстановена успешно',
'page_move' => 'преместена страница',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'създадена глава',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'изтрита глава',
'chapter_delete_notification' => 'Успешно изтрита глава',
'chapter_move' => 'преместена глава',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'създадена книга',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'deleted shelf',
'bookshelf_delete_notification' => 'Shelf successfully deleted',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" е добавен към любими успешно',
'favourite_remove_notification' => '":name" е премахнат от любими успешно',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Многофакторният метод е конфигуриран успешно',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Многофакторният метод е премахнат успешно',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'създадена уебкука',
'webhook_create_notification' => 'Уебкуката е създадена успешно',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Уебкуката е изтрита успешно',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'Потребителят е обновен успешно',
'user_delete' => 'deleted user',
'user_delete_notification' => 'Потребителят е премахнат успешно',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Успешна създадена роля',
'role_update' => 'updated role',
'role_update_notification' => 'Успешно обновена роля',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Успешно изтрита роля',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'коментирано на',
'permissions_update' => 'обновени права',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Отказ',
'close' => 'Close',
'confirm' => 'Потвърждаване',
'back' => 'Назад',
'save' => 'Запис',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Избор на изображение',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'Виж изображенията прикачени към страницата',
'image_search_hint' => 'Търси по име на картина',
'image_uploaded' => 'Качено :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Зареди повече',
'image_image_name' => 'Име на изображението',
'image_delete_used' => 'Това изображение е използвано в страницата по-долу.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Изображението бе качено успешно',
'image_update_success' => 'Данните за изобтажението са обновенни успешно',
'image_delete_success' => 'Изображението е успешно изтрито',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Редактиране на кода',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Запази глава',
'chapters_move' => 'Премести глава',
'chapters_move_named' => 'Премести глава :chapterName',
'chapter_move_success' => 'Главата беше преместена в :bookName',
'chapters_copy' => 'Копирай главата',
'chapters_copy_success' => 'Главата е копирана успешно',
'chapters_permissions' => 'Настойки за достъп на главата',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Редактиране на страница',
'pages_edit_draft_save_at' => 'Черновата е запазена в ',
'pages_edit_delete_draft' => 'Изтрий чернова',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Отхвърляне на черновата',
'pages_edit_switch_to_markdown' => 'Switch to Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'Страницата не принадлежи в никоя глава',
'pages_move' => 'Премести страницата',
'pages_move_success' => 'Страницата беше преместена в ":parentName"',
'pages_copy' => 'Копиране на страницата',
'pages_copy_desination' => 'Копиране на дестинацията',
'pages_copy_success' => 'Страницата беше успешно копирана',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Възстановяване',
'pages_revisions_none' => 'Тази страница няма ревизии',
'pages_copy_link' => 'Копирай връзката',
'pages_edit_content_link' => 'Редактиране на съдържанието',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'Настройките за достъп до страницата са активни',
'pages_initial_revision' => 'Първо публикуване',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'в последните :minCount минути',
'message' => ':start :time. Внимавайте да не попречите на актуализацията на другия!',
],
'pages_draft_discarded' => 'Черновата беше отхърлена, Редактора беше обновен с актуалното съдържание на страницата',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Определена страница',
'pages_is_template' => 'Шаблон на страницата',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Напишете коментар',
'comment_count' => '{0} Няма коментари|{1} 1 коментар|[2,*] :count коментара',
'comment_save' => 'Запази коментар',
'comment_saving' => 'Запазване на коментар...',
'comment_deleting' => 'Изтриване на коментар...',
'comment_new' => 'Нов коментар',
'comment_created' => 'коментирано :createDiff',
'comment_updated' => 'Актуализирано :updateDiff от :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Коментарът е изтрит',
'comment_created_success' => 'Коментарът е добавен',
'comment_updated_success' => 'Коментарът е обновен',
'comment_delete_confirm' => 'Наистина ли искате да изтриете този коментар?',
'comment_in_reply_to' => 'В отговор на :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Наистина ли искате да изтриете тази версия?',
'revision_restore_confirm' => 'Сигурни ли сте, че искате да изтриете тази версия? Настоящата страница ще бъде заместена.',
'revision_delete_success' => 'Версията беше изтрита',
'revision_cannot_delete_latest' => 'Не може да изтриете последната версия.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Възникна грешка при качването на изображението',
'image_upload_type_error' => 'Типът на качваното изображение е невалиден',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Неуспешно запазване на черновата. Увери се, че имаш свързаност с интернет преди да запазиш страницата',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'Не мога да изтрия страницата, докато е настроена като начална',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Настройки',
'settings_save' => 'Запази настройките',
'settings_save_success' => 'Настройките са записани',
'system_version' => 'System Version',
'categories' => 'Categories',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Дата на изтичане',
'user_api_token_expiry_desc' => 'Настрой дата на изтичане на този маркер. След тази дата, заявки направени с този маркер вече няма да работят. Ако оставиш това поле празно, маркерът ще изтече след 100 години.',
'user_api_token_create_secret_message' => 'Веднага след създаването на този маркер ще се генерират и покажат "Номер на маркер" и "Тайна на маркер". Тайната ще бъде показана само веднъж, така че се увери, че си я копирал на сигурно място, преди да продължиш.',
'user_api_token_create_success' => 'API маркерът е създаден успешно',
'user_api_token_update_success' => 'API маркерът е редактиран успешно',
'user_api_token' => 'API маркер',
'user_api_token_id' => 'Номер на маркер',
'user_api_token_id_desc' => 'Това е нередактируем, системно генериран идентификатор за този маркер, който ще бъде необходимо да бъде предоставян в API заявките.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Изтрий маркер',
'user_api_token_delete_warning' => 'Това ще изтрие напълно API маркерът с име \':tokenName\' от системата.',
'user_api_token_delete_confirm' => 'Сигурен/на ли си, че искаш да изтриеш този API маркер?',
'user_api_token_delete_success' => 'API маркерът е изтрит успешно',
// Webhooks
'webhooks' => 'Уебкука',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'je vratio/la stranicu',
'page_restore_notification' => 'Page successfully restored',
'page_move' => 'je premjestio/la stranicu',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'je kreirao/la poglavlje',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'je izbrisao/la poglavlje',
'chapter_delete_notification' => 'Chapter successfully deleted',
'chapter_move' => 'je premjestio/la poglavlje',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'je kreirao/la knjigu',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'deleted shelf',
'bookshelf_delete_notification' => 'Shelf successfully deleted',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" je dodan u tvoje favorite',
'favourite_remove_notification' => '":name" je uklonjen iz tvojih favorita',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Multi-factor method successfully configured',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Multi-factor method successfully removed',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'created webhook',
'webhook_create_notification' => 'Webhook successfully created',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhook successfully deleted',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'User successfully updated',
'user_delete' => 'deleted user',
'user_delete_notification' => 'User successfully removed',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role successfully created',
'role_update' => 'updated role',
'role_update_notification' => 'Role successfully updated',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role successfully deleted',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'je komentarisao/la na',
'permissions_update' => 'je ažurirao/la dozvole',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Otkaži',
'close' => 'Close',
'confirm' => 'Potvrdi',
'back' => 'Nazad',
'save' => 'Spremi',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Biraj sliku',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'Pogledaj slike prenesene na ovu stranicu',
'image_search_hint' => 'Traži po nazivu slike',
'image_uploaded' => 'Preneseno :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Učitaj još',
'image_image_name' => 'Naziv slike',
'image_delete_used' => 'Ova slika se koristi na stranicama prikazanim ispod.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Slika uspješno učitana',
'image_update_success' => 'Detalji slike uspješno ažurirani',
'image_delete_success' => 'Slika uspješno izbrisana',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Uredi Kod',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Spremi poglavlje',
'chapters_move' => 'Premjesti poglavlje',
'chapters_move_named' => 'Premjesti poglavlje :chapterName',
'chapter_move_success' => 'Poglavlje premješteno u :bookName',
'chapters_copy' => 'Copy Chapter',
'chapters_copy_success' => 'Chapter successfully copied',
'chapters_permissions' => 'Dozvole poglavlja',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Editing Page',
'pages_edit_draft_save_at' => 'Draft saved at ',
'pages_edit_delete_draft' => 'Delete Draft',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Discard Draft',
'pages_edit_switch_to_markdown' => 'Switch to Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'Page is not in a chapter',
'pages_move' => 'Move Page',
'pages_move_success' => 'Page moved to ":parentName"',
'pages_copy' => 'Copy Page',
'pages_copy_desination' => 'Copy Destination',
'pages_copy_success' => 'Page successfully copied',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Vrati',
'pages_revisions_none' => 'Ova stranica nema promjena',
'pages_copy_link' => 'Iskopiraj link',
'pages_edit_content_link' => 'Uredi sadržaj',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'Dozvole za stranicu su aktivne',
'pages_initial_revision' => 'Prvo izdavanje',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'u posljednjih :minCount minuta',
'message' => ':start :time. Pazite da jedni drugima ne prepišete promjene!',
],
'pages_draft_discarded' => 'Skica je odbačena, uređivač je ažuriran sa trenutnim sadržajem stranice',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Specifična stranica',
'pages_is_template' => 'Predložak stranice',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Leave a comment here',
'comment_count' => '{0} No Comments|{1} 1 Comment|[2,*] :count Comments',
'comment_save' => 'Save Comment',
'comment_saving' => 'Saving comment...',
'comment_deleting' => 'Deleting comment...',
'comment_new' => 'New Comment',
'comment_created' => 'commented :createDiff',
'comment_updated' => 'Updated :updateDiff by :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Comment deleted',
'comment_created_success' => 'Comment added',
'comment_updated_success' => 'Comment updated',
'comment_delete_confirm' => 'Are you sure you want to delete this comment?',
'comment_in_reply_to' => 'In reply to :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Are you sure you want to delete this revision?',
'revision_restore_confirm' => 'Are you sure you want to restore this revision? The current page contents will be replaced.',
'revision_delete_success' => 'Revision deleted',
'revision_cannot_delete_latest' => 'Cannot delete the latest revision.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Desila se greška prilikom učitavanja slike',
'image_upload_type_error' => 'Vrsta slike koja se učitava je neispravna',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Snimanje skice nije uspjelo. Provjerite da ste povezani na internet prije snimanja ove stranice',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'Stranicu nije moguće izbrisati dok se koristi kao početna stranica',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Settings',
'settings_save' => 'Save Settings',
'settings_save_success' => 'Settings saved',
'system_version' => 'System Version',
'categories' => 'Categories',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Expiry Date',
'user_api_token_expiry_desc' => 'Set a date at which this token expires. After this date, requests made using this token will no longer work. Leaving this field blank will set an expiry 100 years into the future.',
'user_api_token_create_secret_message' => 'Immediately after creating this token a "Token ID" & "Token Secret" will be generated and displayed. The secret will only be shown a single time so be sure to copy the value to somewhere safe and secure before proceeding.',
'user_api_token_create_success' => 'API token successfully created',
'user_api_token_update_success' => 'API token successfully updated',
'user_api_token' => 'API Token',
'user_api_token_id' => 'Token ID',
'user_api_token_id_desc' => 'This is a non-editable system generated identifier for this token which will need to be provided in API requests.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Delete Token',
'user_api_token_delete_warning' => 'This will fully delete this API token with the name \':tokenName\' from the system.',
'user_api_token_delete_confirm' => 'Are you sure you want to delete this API token?',
'user_api_token_delete_success' => 'API token successfully deleted',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'ha restaurat la pàgina',
'page_restore_notification' => 'Pàgina restaurada correctament',
'page_move' => 'ha mogut la pàgina',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'ha creat el capítol',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'ha suprimit un capítol',
'chapter_delete_notification' => 'Capítol esborrat correctament',
'chapter_move' => 'ha mogut el capítol',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'ha creat el llibre',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'deleted shelf',
'bookshelf_delete_notification' => 'Shelf successfully deleted',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" has been added to your favourites',
'favourite_remove_notification' => '":name" has been removed from your favourites',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Multi-factor method successfully configured',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Multi-factor method successfully removed',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'created webhook',
'webhook_create_notification' => 'Webhook successfully created',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhook successfully deleted',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'User successfully updated',
'user_delete' => 'deleted user',
'user_delete_notification' => 'User successfully removed',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role successfully created',
'role_update' => 'updated role',
'role_update_notification' => 'Role successfully updated',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role successfully deleted',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'ha comentat a',
'permissions_update' => 'ha actualitzat els permisos',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Cancel·la',
'close' => 'Close',
'confirm' => 'D\'acord',
'back' => 'Enrere',
'save' => 'Desa',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Selecciona una imatge',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'Mostra les imatges pujades a aquesta pàgina',
'image_search_hint' => 'Cerca per nom d\'imatge',
'image_uploaded' => 'Pujada :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Carrega\'n més',
'image_image_name' => 'Nom de la imatge',
'image_delete_used' => 'Aquesta imatge s\'utilitza a les pàgines següents.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Imatge pujada correctament',
'image_update_success' => 'Detalls de la imatge actualitzats correctament',
'image_delete_success' => 'Imatge suprimida correctament',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Edita el codi',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Desa el capítol',
'chapters_move' => 'Mou el capítol',
'chapters_move_named' => 'Mou el capítol :chapterName',
'chapter_move_success' => 'S\'ha mogut el capítol a :bookName',
'chapters_copy' => 'Copy Chapter',
'chapters_copy_success' => 'Chapter successfully copied',
'chapters_permissions' => 'Permisos del capítol',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Esteu editant la pàgina',
'pages_edit_draft_save_at' => 'Esborrany desat ',
'pages_edit_delete_draft' => 'Suprimeix l\'esborrany',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Descarta l\'esborrany',
'pages_edit_switch_to_markdown' => 'Switch to Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'La pàgina no pertany a cap capítol',
'pages_move' => 'Mou la pàgina',
'pages_move_success' => 'S\'ha mogut la pàgina a ":parentName"',
'pages_copy' => 'Copia la pàgina',
'pages_copy_desination' => 'Destinació de la còpia',
'pages_copy_success' => 'Pàgina copiada correctament',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Restaura',
'pages_revisions_none' => 'Aquesta pàgina no té cap revisió',
'pages_copy_link' => 'Copia l\'enllaç',
'pages_edit_content_link' => 'Edita el contingut',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'S\'han activat els permisos de la pàgina',
'pages_initial_revision' => 'Publicació inicial',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'en els darrers :minCount minuts',
'message' => ':start :time. Aneu amb compte de no trepitjar-vos les actualitzacions entre vosaltres!',
],
'pages_draft_discarded' => 'S\'ha descartat l\'esborrany, l\'editor s\'ha actualitzat amb el contingut actual de la pàgina',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Una pàgina específica',
'pages_is_template' => 'Plantilla de pàgina',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Deixeu un comentari aquí',
'comment_count' => '{0} Sense comentaris|{1} 1 comentari|[2,*] :count comentaris',
'comment_save' => 'Desa el comentari',
'comment_saving' => 'S\'està desant el comentari...',
'comment_deleting' => 'S\'està suprimint el comentari...',
'comment_new' => 'Comentari nou',
'comment_created' => 'ha comentat :createDiff',
'comment_updated' => 'Actualitzat :updateDiff per :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Comentari suprimit',
'comment_created_success' => 'Comentari afegit',
'comment_updated_success' => 'Comentari actualitzat',
'comment_delete_confirm' => 'Segur que voleu suprimir aquest comentari?',
'comment_in_reply_to' => 'En resposta a :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Segur que voleu suprimir aquesta revisió?',
'revision_restore_confirm' => 'Segur que voleu restaurar aquesta revisió? Se substituirà el contingut de la pàgina actual.',
'revision_delete_success' => 'S\'ha suprimit la revisió',
'revision_cannot_delete_latest' => 'No es pot suprimir la darrera revisió.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'S\'ha produït un error en pujar la imatge',
'image_upload_type_error' => 'El tipus d\'imatge que heu pujat no és vàlid',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'No s\'ha pogut desar l\'esborrany. Assegureu-vos que tingueu connexió a Internet abans de desar la pàgina',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'No es pot suprimir una pàgina mentre estigui definida com a pàgina d\'inici',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Configuració',
'settings_save' => 'Desa la configuració',
'settings_save_success' => 'S\'ha desat la configuració',
'system_version' => 'System Version',
'categories' => 'Categories',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Data de caducitat',
'user_api_token_expiry_desc' => 'Definiu una data en què aquest testimoni caducarà. Després d\'aquesta data, les peticions fetes amb aquest testimoni deixaran de funcionar. Si deixeu aquest camp en blanc, es definirà una caducitat d\'aquí a 100 anys..',
'user_api_token_create_secret_message' => 'Just després de crear aquest testimoni, es generaran i es mostraran un "Identificador del testimoni" i un "Secret del testimoni". El secret només es mostrarà una única vegada, assegureu-vos de copiar-lo a un lloc segur abans de continuar.',
'user_api_token_create_success' => 'Testimoni d\'API creat correctament',
'user_api_token_update_success' => 'Testimoni d\'API actualitzat correctament',
'user_api_token' => 'Testimoni d\'API',
'user_api_token_id' => 'Identificador del testimoni',
'user_api_token_id_desc' => 'Aquest identificador és generat pel sistema per a aquest testimoni i no és editable, caldrà que el proporcioneu a les peticions a l\'API.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Suprimeix el testimoni',
'user_api_token_delete_warning' => 'Se suprimirà completament del sistema aquest testimoni d\'API amb el nom \':tokenName\'.',
'user_api_token_delete_confirm' => 'Segur que voleu suprimir aquest testimoni d\'API?',
'user_api_token_delete_success' => 'Testimoni d\'API suprimit correctament',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'obnovil/a stránku',
'page_restore_notification' => 'Stránka byla úspěšně obnovena',
'page_move' => 'přesunul/a stránku',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'vytvořil/a kapitolu',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'odstranila/a kapitolu',
'chapter_delete_notification' => 'Kapitola byla úspěšně odstraněna',
'chapter_move' => 'přesunul/a kapitolu',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'vytvořil/a knihu',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'odstranit knihovnu',
'bookshelf_delete_notification' => 'Knihovna byla úspěšně smazána',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" byla přidána do Vašich oblíbených',
'favourite_remove_notification' => '":name" byla odstraněna z Vašich oblíbených',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Vícefaktorová metoda byla úspěšně nakonfigurována',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Vícefaktorová metoda byla úspěšně odstraněna',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'vytvořil/a webhook',
'webhook_create_notification' => 'Webhook byl úspěšně vytvořen',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhook byl úspěšně odstraněn',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'Uživatel byl úspěšně aktualizován',
'user_delete' => 'deleted user',
'user_delete_notification' => 'Uživatel byl úspěšně odstraněn',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role byla úspěšně vytvořena',
'role_update' => 'updated role',
'role_update_notification' => 'Role byla úspěšně aktualizována',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role byla odstraněna',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'okomentoval/a',
'permissions_update' => 'oprávnění upravena',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Zrušit',
'close' => 'Close',
'confirm' => 'Potvrdit',
'back' => 'Zpět',
'save' => 'Uložit',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Výběr obrázku',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'Zobrazit obrázky nahrané na tuto stránku',
'image_search_hint' => 'Hledat podle názvu obrázku',
'image_uploaded' => 'Nahráno :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Načíst další',
'image_image_name' => 'Název obrázku',
'image_delete_used' => 'Tento obrázek je použit na níže uvedených stránkách.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Obrázek byl nahrán',
'image_update_success' => 'Podrobnosti o obrázku byly aktualizovány',
'image_delete_success' => 'Obrázek byl odstraněn',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Upravit kód',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Uložit kapitolu',
'chapters_move' => 'Přesunout kapitolu',
'chapters_move_named' => 'Přesunout kapitolu :chapterName',
'chapter_move_success' => 'Kapitola přesunuta do knihy :bookName',
'chapters_copy' => 'Kopírovat kapitolu',
'chapters_copy_success' => 'Kapitola byla úspěšně zkopírována',
'chapters_permissions' => 'Oprávnění kapitoly',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Úpravy stránky',
'pages_edit_draft_save_at' => 'Koncept uložen v ',
'pages_edit_delete_draft' => 'Odstranit koncept',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Zahodit koncept',
'pages_edit_switch_to_markdown' => 'Přepnout na Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Vytvořený obsah)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Synchronizovat náhled',
'pages_not_in_chapter' => 'Stránka není v kapitole',
'pages_move' => 'Přesunout stránku',
'pages_move_success' => 'Stránka přesunuta do ":parentName"',
'pages_copy' => 'Kopírovat stránku',
'pages_copy_desination' => 'Cíl kopírování',
'pages_copy_success' => 'Stránka byla zkopírována',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Obnovit',
'pages_revisions_none' => 'Tato stránka nemá žádné revize',
'pages_copy_link' => 'Kopírovat odkaz',
'pages_edit_content_link' => 'Upravit obsah',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'Oprávnění stránky byla aktivována',
'pages_initial_revision' => 'První vydání',
'pages_references_update_revision' => 'Automatická aktualizace interních odkazů',
@ -281,7 +286,8 @@ return [
'time_b' => 'v posledních minutách (:minCount min.)',
'message' => ':start :time. Dávejte pozor abyste nepřepsali změny ostatním!',
],
'pages_draft_discarded' => 'Koncept zahozen. Editor nyní obsahuje aktuální verzi stránky.',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Konkrétní stránka',
'pages_is_template' => 'Šablona stránky',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Zde zadejte komentář',
'comment_count' => '{0} Bez komentářů|{1} 1 komentář|[2,4] :count komentáře|[5,*] :count komentářů',
'comment_save' => 'Uložit komentář',
'comment_saving' => 'Ukládání komentáře...',
'comment_deleting' => 'Mazání komentáře...',
'comment_new' => 'Nový komentář',
'comment_created' => 'komentováno :createDiff',
'comment_updated' => 'Aktualizováno :updateDiff uživatelem :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Komentář odstraněn',
'comment_created_success' => 'Komentář přidán',
'comment_updated_success' => 'Komentář aktualizován',
'comment_delete_confirm' => 'Opravdu chcete odstranit tento komentář?',
'comment_in_reply_to' => 'Odpověď na :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Opravdu chcete odstranit tuto revizi?',
'revision_restore_confirm' => 'Jste si jisti, že chcete obnovit tuto revizi? Aktuální obsah stránky bude nahrazen.',
'revision_delete_success' => 'Revize odstraněna',
'revision_cannot_delete_latest' => 'Nelze odstranit poslední revizi.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Nastala chyba během nahrávání souboru',
'image_upload_type_error' => 'Typ nahrávaného obrázku je neplatný.',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Data výkresu nelze načíst. Výkresový soubor již nemusí existovat nebo nemusí mít oprávnění k němu přistupovat.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Nepovedlo se uložit koncept. Než stránku uložíte, ujistěte se, že jste připojeni k internetu.',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'Nelze odstranit tuto stránku, protože je nastavena jako uvítací stránka',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Nastavení',
'settings_save' => 'Uložit nastavení',
'settings_save_success' => 'Nastavení uloženo',
'system_version' => 'Verze systému: ',
'categories' => 'Kategorie',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Platný do',
'user_api_token_expiry_desc' => 'Zadejte datum, kdy platnost tokenu vyprší. Po tomto datu nebudou požadavky, které používají tento token, fungovat. Pokud ponecháte pole prázdné, bude tokenu nastavena platnost na dalších 100 let.',
'user_api_token_create_secret_message' => 'Ihned po vytvoření tokenu Vám bude vygenerován a zobrazen "Token ID" a "Token Secret". Upozorňujeme, že "Token Secret" bude možné zobrazit pouze jednou, ujistěte se, že si jej poznamenáte a uložíte na bezpečné místo před tím, než budete pokračovat dále.',
'user_api_token_create_success' => 'API Token byl vytvořen',
'user_api_token_update_success' => 'API Token byl aktualizován',
'user_api_token' => 'API Token',
'user_api_token_id' => 'Token ID',
'user_api_token_id_desc' => 'Toto je neupravitelný systémový identifikátor generovaný pro tento Token, který musí být uveden v API requestu.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Odstranit Token',
'user_api_token_delete_warning' => 'Tímto plně odstraníte tento API Token s názvem \':tokenName\' ze systému.',
'user_api_token_delete_confirm' => 'Opravdu chcete odstranit tento API Token?',
'user_api_token_delete_success' => 'API Token byl odstraněn',
// Webhooks
'webhooks' => 'Webhooky',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'tudalen wedi\'i hadfer',
'page_restore_notification' => 'Cafodd y dudalen ei hadfer yn llwyddiannus',
'page_move' => 'symwyd tudalen',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'pennod creu',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'pennod wedi dileu',
'chapter_delete_notification' => 'Pennod wedi\'i dileu\'n llwyddiannus',
'chapter_move' => 'pennod wedi symud',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'llyfr wedi creu',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'deleted shelf',
'bookshelf_delete_notification' => 'Shelf successfully deleted',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => 'Mae ":name" wedi\'i ychwanegu at eich ffefrynnau',
'favourite_remove_notification' => 'Mae ":name" wedi\'i tynnu o\'ch ffefrynnau',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Dull aml-ffactor wedi\'i ffurfweddu\'n llwyddiannus',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Llwyddwyd i ddileu dull aml-ffactor',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'webhook wedi creu',
'webhook_create_notification' => 'Webhook wedi\'i creu\'n llwyddiannus',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhook wedi\'i dileu\'n llwyddiannus',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'Diweddarwyd y defnyddiwr yn llwyddiannus',
'user_delete' => 'deleted user',
'user_delete_notification' => 'Tynnwyd y defnyddiwr yn llwyddiannus',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role successfully created',
'role_update' => 'updated role',
'role_update_notification' => 'Role successfully updated',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role successfully deleted',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'gwnaeth sylwadau ar',
'permissions_update' => 'caniatadau wedi\'u diweddaru',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Cancel',
'close' => 'Close',
'confirm' => 'Confirm',
'back' => 'Back',
'save' => 'Save',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Image Select',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'View images uploaded to this page',
'image_search_hint' => 'Search by image name',
'image_uploaded' => 'Uploaded :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Load More',
'image_image_name' => 'Image Name',
'image_delete_used' => 'This image is used in the pages below.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Image uploaded successfully',
'image_update_success' => 'Image details successfully updated',
'image_delete_success' => 'Image successfully deleted',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Edit Code',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Save Chapter',
'chapters_move' => 'Move Chapter',
'chapters_move_named' => 'Move Chapter :chapterName',
'chapter_move_success' => 'Chapter moved to :bookName',
'chapters_copy' => 'Copy Chapter',
'chapters_copy_success' => 'Chapter successfully copied',
'chapters_permissions' => 'Chapter Permissions',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Editing Page',
'pages_edit_draft_save_at' => 'Draft saved at ',
'pages_edit_delete_draft' => 'Delete Draft',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Discard Draft',
'pages_edit_switch_to_markdown' => 'Switch to Markdown Editor',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'Page is not in a chapter',
'pages_move' => 'Move Page',
'pages_move_success' => 'Page moved to ":parentName"',
'pages_copy' => 'Copy Page',
'pages_copy_desination' => 'Copy Destination',
'pages_copy_success' => 'Page successfully copied',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Restore',
'pages_revisions_none' => 'This page has no revisions',
'pages_copy_link' => 'Copy Link',
'pages_edit_content_link' => 'Edit Content',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'Page Permissions Active',
'pages_initial_revision' => 'Initial publish',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'in the last :minCount minutes',
'message' => ':start :time. Take care not to overwrite each other\'s updates!',
],
'pages_draft_discarded' => 'Draft discarded, The editor has been updated with the current page content',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Specific Page',
'pages_is_template' => 'Page Template',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Leave a comment here',
'comment_count' => '{0} No Comments|{1} 1 Comment|[2,*] :count Comments',
'comment_save' => 'Save Comment',
'comment_saving' => 'Saving comment...',
'comment_deleting' => 'Deleting comment...',
'comment_new' => 'New Comment',
'comment_created' => 'commented :createDiff',
'comment_updated' => 'Updated :updateDiff by :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Comment deleted',
'comment_created_success' => 'Comment added',
'comment_updated_success' => 'Comment updated',
'comment_delete_confirm' => 'Are you sure you want to delete this comment?',
'comment_in_reply_to' => 'In reply to :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Are you sure you want to delete this revision?',
'revision_restore_confirm' => 'Are you sure you want to restore this revision? The current page contents will be replaced.',
'revision_delete_success' => 'Revision deleted',
'revision_cannot_delete_latest' => 'Cannot delete the latest revision.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Bu gwall wrth uwchlwytho\'r ddelwedd',
'image_upload_type_error' => 'Mae\'r math o ddelwedd sy\'n cael ei huwchlwytho yn annilys',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Wedi methu cadw\'r drafft. Sicrhewch fod gennych gysylltiad rhyngrwyd cyn cadw\'r dudalen hon',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'Methu dileu tudalen tra ei bod wedi\'i gosod fel hafan',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Settings',
'settings_save' => 'Save Settings',
'settings_save_success' => 'Settings saved',
'system_version' => 'System Version',
'categories' => 'Categories',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Expiry Date',
'user_api_token_expiry_desc' => 'Set a date at which this token expires. After this date, requests made using this token will no longer work. Leaving this field blank will set an expiry 100 years into the future.',
'user_api_token_create_secret_message' => 'Immediately after creating this token a "Token ID" & "Token Secret" will be generated and displayed. The secret will only be shown a single time so be sure to copy the value to somewhere safe and secure before proceeding.',
'user_api_token_create_success' => 'API token successfully created',
'user_api_token_update_success' => 'API token successfully updated',
'user_api_token' => 'API Token',
'user_api_token_id' => 'Token ID',
'user_api_token_id_desc' => 'This is a non-editable system generated identifier for this token which will need to be provided in API requests.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Delete Token',
'user_api_token_delete_warning' => 'This will fully delete this API token with the name \':tokenName\' from the system.',
'user_api_token_delete_confirm' => 'Are you sure you want to delete this API token?',
'user_api_token_delete_success' => 'API token successfully deleted',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'gendannede side',
'page_restore_notification' => 'Siden blev gendannet',
'page_move' => 'flyttede side',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'oprettede kapitel',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'slettede kapitel',
'chapter_delete_notification' => 'Kapitel blev slettet',
'chapter_move' => 'flyttede kapitel',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'oprettede bog',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'deleted shelf',
'bookshelf_delete_notification' => 'Shelf successfully deleted',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" er blevet tilføjet til dine favoritter',
'favourite_remove_notification' => '":name" er blevet fjernet fra dine favoritter',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Multi-faktor metode konfigureret',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Multi-faktor metode fjernet',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'oprettede webhook',
'webhook_create_notification' => 'Webhooken blev oprettet',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhooken blev slettet',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'Brugeren blev opdateret',
'user_delete' => 'deleted user',
'user_delete_notification' => 'Brugeren blev fjernet',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Role successfully created',
'role_update' => 'updated role',
'role_update_notification' => 'Role successfully updated',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Role successfully deleted',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'kommenterede til',
'permissions_update' => 'Tilladelser opdateret',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Annuller',
'close' => 'Close',
'confirm' => 'Bekræft',
'back' => 'Tilbage',
'save' => 'Gem',

View File

@ -6,6 +6,8 @@ return [
// Image Manager
'image_select' => 'Billedselektion',
'image_list' => 'Image List',
'image_details' => 'Image Details',
'image_upload' => 'Upload Image',
'image_intro' => 'Here you can select and manage images that have been previously uploaded to the system.',
'image_intro_upload' => 'Upload a new image by dragging an image file into this window, or by using the "Upload Image" button above.',
@ -15,6 +17,9 @@ return [
'image_page_title' => 'Vis billeder uploadet til denne side',
'image_search_hint' => 'Søg efter billednavn',
'image_uploaded' => 'Uploadet :uploadedDate',
'image_uploaded_by' => 'Uploaded by :userName',
'image_uploaded_to' => 'Uploaded to :pageLink',
'image_updated' => 'Updated :updateDate',
'image_load_more' => 'Indlæse mere',
'image_image_name' => 'Billednavn',
'image_delete_used' => 'Dette billede er brugt på siderne nedenfor.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Foto uploadet',
'image_update_success' => 'Billeddetaljer succesfuldt opdateret',
'image_delete_success' => 'Billede slettet',
'image_replace' => 'Replace Image',
'image_replace_success' => 'Image file successfully updated',
// Code Editor
'code_editor' => 'Rediger kode',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Gem kapitel',
'chapters_move' => 'Flyt kapitel',
'chapters_move_named' => 'Flyt kapitel :chapterName',
'chapter_move_success' => 'Kapitel flyttet til :bookName',
'chapters_copy' => 'Kopier Kapitel',
'chapters_copy_success' => 'Kapitlet blev kopieret',
'chapters_permissions' => 'Kapiteltilladelser',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Redigerer side',
'pages_edit_draft_save_at' => 'Kladde gemt ved ',
'pages_edit_delete_draft' => 'Slet kladde',
'pages_edit_delete_draft_confirm' => 'Are you sure you want to delete your draft page changes? All of your changes, since the last full save, will be lost and the editor will be updated with the latest page non-draft save state.',
'pages_edit_discard_draft' => 'Kassér kladde',
'pages_edit_switch_to_markdown' => 'Skift til Markdown redigering',
'pages_edit_switch_to_markdown_clean' => '(Clean Content)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Sync preview scroll',
'pages_not_in_chapter' => 'Side er ikke i et kapitel',
'pages_move' => 'Flyt side',
'pages_move_success' => 'Flyt side til ":parentName"',
'pages_copy' => 'Kopier side',
'pages_copy_desination' => 'Kopier destination',
'pages_copy_success' => 'Side kopieret succesfuldt',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Gendan',
'pages_revisions_none' => 'Denne side har ingen revisioner',
'pages_copy_link' => 'Kopier link',
'pages_edit_content_link' => 'Redigér indhold',
'pages_edit_content_link' => 'Jump to section in editor',
'pages_pointer_enter_mode' => 'Enter section select mode',
'pages_pointer_label' => 'Page Section Options',
'pages_pointer_permalink' => 'Page Section Permalink',
'pages_pointer_include_tag' => 'Page Section Include Tag',
'pages_pointer_toggle_link' => 'Permalink mode, Press to show include tag',
'pages_pointer_toggle_include' => 'Include tag mode, Press to show permalink',
'pages_permissions_active' => 'Aktive sidetilladelser',
'pages_initial_revision' => 'Første udgivelse',
'pages_references_update_revision' => 'System auto-update of internal links',
@ -281,7 +286,8 @@ return [
'time_b' => 'i de sidste :minCount minutter',
'message' => ':start : time. Pas på ikke at overskrive hinandens opdateringer!',
],
'pages_draft_discarded' => 'Kladde kasseret, editoren er blevet opdateret med aktuelt sideindhold',
'pages_draft_discarded' => 'Draft discarded! The editor has been updated with the current page content',
'pages_draft_deleted' => 'Draft deleted! The editor has been updated with the current page content',
'pages_specific' => 'Specifik side',
'pages_is_template' => 'Sideskabelon',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Skriv en kommentar her',
'comment_count' => '{0} Ingen kommentarer|{1} 1 Kommentar|[2,*] :count kommentarer',
'comment_save' => 'Gem kommentar',
'comment_saving' => 'Gemmer kommentar...',
'comment_deleting' => 'Sletter kommentar...',
'comment_new' => 'Ny kommentar',
'comment_created' => 'kommenteret :createDiff',
'comment_updated' => 'Opdateret :updateDiff af :username',
'comment_updated_indicator' => 'Updated',
'comment_deleted_success' => 'Kommentar slettet',
'comment_created_success' => 'Kommentaren er tilføjet',
'comment_updated_success' => 'Kommentaren er opdateret',
'comment_delete_confirm' => 'Er du sikker på, at du vil slette denne kommentar?',
'comment_in_reply_to' => 'Som svar til :commentId',
'comment_editor_explain' => 'Here are the comments that have been left on this page. Comments can be added & managed when viewing the saved page.',
// Revision
'revision_delete_confirm' => 'Er du sikker på at du vil slette denne revision?',
'revision_restore_confirm' => 'Er du sikker på at du ønsker at gendanne denne revision? Nuværende sideindhold vil blive erstattet.',
'revision_delete_success' => 'Revision slettet',
'revision_cannot_delete_latest' => 'Kan ikke slette seneste revision.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Der opstod en fejl ved upload af billedet',
'image_upload_type_error' => 'Billedtypen, der uploades, er ugyldig',
'image_upload_replace_type' => 'Image file replacements must be of the same type',
'drawing_data_not_found' => 'Drawing data could not be loaded. The drawing file might no longer exist or you may not have permission to access it.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Kunne ikke gemme kladde. Tjek at du har internetforbindelse før du gemmer siden',
'page_draft_delete_fail' => 'Failed to delete page draft and fetch current page saved content',
'page_custom_home_deletion' => 'Kan ikke slette en side der er sat som forside',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Indstillinger',
'settings_save' => 'Gem indstillinger',
'settings_save_success' => 'Indstillingerne blev gemt',
'system_version' => 'Systemversion',
'categories' => 'Kategorier',
@ -232,8 +231,6 @@ return [
'user_api_token_expiry' => 'Udløbsdato',
'user_api_token_expiry_desc' => 'Indstil en dato, hvorpå denne token udløber. Efter denne dato fungerer anmodninger, der er lavet med denne token, ikke længere. Hvis du lader dette felt være tomt, udløber den 100 år ud i fremtiden.',
'user_api_token_create_secret_message' => 'Umiddelbart efter oprettelse af denne token genereres og vises et "Token-ID" og Token hemmelighed". Hemmeligheden vises kun en gang, så husk at kopiere værdien til et sikkert sted inden du fortsætter.',
'user_api_token_create_success' => 'API token succesfuldt oprettet',
'user_api_token_update_success' => 'API token succesfuldt opdateret',
'user_api_token' => 'API Token',
'user_api_token_id' => 'Token-ID',
'user_api_token_id_desc' => 'Dette er en ikke-redigerbar systemgenereret identifikator for denne token, som skal sendes i API-anmodninger.',
@ -244,7 +241,6 @@ return [
'user_api_token_delete' => 'Slet Token',
'user_api_token_delete_warning' => 'Dette vil helt slette API-token\'en med navnet \':tokenName\' fra systemet.',
'user_api_token_delete_confirm' => 'Er du sikker på, at du vil slette denne API-token?',
'user_api_token_delete_success' => 'API-token slettet',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -10,11 +10,12 @@ return [
'page_create_notification' => 'Seite erfolgreich erstellt',
'page_update' => 'aktualisierte Seite',
'page_update_notification' => 'Seite erfolgreich aktualisiert',
'page_delete' => 'gelöschte Seite',
'page_delete' => 'hat die Seite gelöscht',
'page_delete_notification' => 'Seite erfolgreich gelöscht',
'page_restore' => 'wiederhergestellte Seite',
'page_restore' => 'hat die Seite wiederhergestellt',
'page_restore_notification' => 'Seite erfolgreich wiederhergestellt',
'page_move' => 'Seite verschoben',
'page_move_notification' => 'Seite erfolgreich verschoben',
// Chapters
'chapter_create' => 'erstellte Kapitel',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'löschte Kapitel',
'chapter_delete_notification' => 'Kapitel erfolgreich gelöscht',
'chapter_move' => 'verschob Kapitel',
'chapter_move_notification' => 'Kapitel erfolgreich verschoben',
// Books
'book_create' => 'erstellte Buch',
@ -47,31 +49,67 @@ return [
'bookshelf_delete' => 'löschte Regal',
'bookshelf_delete_notification' => 'Regal erfolgreich gelöscht',
// Revisions
'revision_restore' => 'stellte Revision wieder her:',
'revision_delete' => 'löschte Revision',
'revision_delete_notification' => 'Revision erfolgreich gelöscht',
// Favourites
'favourite_add_notification' => '":name" wurde zu Ihren Favoriten hinzugefügt',
'favourite_remove_notification' => '":name" wurde aus Ihren Favoriten entfernt',
// MFA
// Auth
'auth_login' => 'hat sich eingeloggt',
'auth_register' => 'hat sich als neuer Benutzer registriert',
'auth_password_reset_request' => 'hat eine Rücksetzung des Benutzerpassworts beantragt',
'auth_password_reset_update' => 'hat Benutzerpasswort zurückgesetzt',
'mfa_setup_method' => 'hat MFA-Methode konfiguriert',
'mfa_setup_method_notification' => 'Multi-Faktor-Methode erfolgreich konfiguriert',
'mfa_remove_method' => 'hat MFA-Methode entfernt',
'mfa_remove_method_notification' => 'Multi-Faktor-Methode erfolgreich entfernt',
// Settings
'settings_update' => 'hat Einstellungen aktualisiert',
'settings_update_notification' => 'Einstellungen erfolgreich aktualisiert',
'maintenance_action_run' => 'hat Wartungsarbeiten ausgeführt',
// Webhooks
'webhook_create' => 'erstellter Webhook',
'webhook_create' => 'erstellte Webhook',
'webhook_create_notification' => 'Webhook wurde erfolgreich eingerichtet',
'webhook_update' => 'aktualisierter Webhook',
'webhook_update' => 'aktualisierte Webhook',
'webhook_update_notification' => 'Webhook wurde erfolgreich aktualisiert',
'webhook_delete' => 'gelöschter Webhook',
'webhook_delete' => 'löschte Webhook',
'webhook_delete_notification' => 'Webhook erfolgreich gelöscht',
// Users
'user_create' => 'hat Benutzer erzeugt:',
'user_create_notification' => 'Benutzer erfolgreich erstellt',
'user_update' => 'hat Benutzer aktualisiert:',
'user_update_notification' => 'Benutzer erfolgreich aktualisiert',
'user_delete' => 'hat Benutzer gelöscht: ',
'user_delete_notification' => 'Benutzer erfolgreich entfernt',
// API Tokens
'api_token_create' => 'hat API-Token erzeugt:',
'api_token_create_notification' => 'API-Token erfolgreich erstellt',
'api_token_update' => 'hat API-Token aktualisiert:',
'api_token_update_notification' => 'API-Token erfolgreich aktualisiert',
'api_token_delete' => 'hat API-Token gelöscht:',
'api_token_delete_notification' => 'API-Token erfolgreich gelöscht',
// Roles
'role_create' => 'hat Rolle erzeugt',
'role_create_notification' => 'Rolle erfolgreich angelegt',
'role_update' => 'hat Rolle aktualisiert',
'role_update_notification' => 'Rolle erfolgreich aktualisiert',
'role_delete' => 'hat Rolle gelöscht',
'role_delete_notification' => 'Rolle erfolgreich gelöscht',
// Recycle Bin
'recycle_bin_empty' => 'hat den Papierkorb geleert',
'recycle_bin_restore' => 'aus dem Papierkorb wiederhergestellt',
'recycle_bin_destroy' => 'aus dem Papierkorb gelöscht',
// Other
'commented_on' => 'hat einen Kommentar hinzugefügt',
'permissions_update' => 'hat die Berechtigungen aktualisiert',

View File

@ -28,14 +28,14 @@ return [
'create_account' => 'Account erstellen',
'already_have_account' => 'Sie haben bereits einen Account?',
'dont_have_account' => 'Sie haben noch keinen Account?',
'social_login' => 'Mit Sozialem Netzwerk anmelden',
'social_registration' => 'Mit Sozialem Netzwerk registrieren',
'social_login' => 'Mit sozialem Netzwerk anmelden',
'social_registration' => 'Mit sozialem Netzwerk registrieren',
'social_registration_text' => 'Mit einem anderen Dienst registrieren oder anmelden.',
'register_thanks' => 'Vielen Dank für Ihre Registrierung!',
'register_confirm' => 'Bitte prüfen Sie Ihren Posteingang und bestätigen Sie die Registrierung.',
'register_confirm' => 'Bitte prüfen Sie Ihren Posteingang und bestätigen Sie die Registrierung, um :appName nutzen zu können.',
'registrations_disabled' => 'Eine Registrierung ist momentan nicht möglich',
'registration_email_domain_invalid' => 'Sie können sich mit dieser E-Mail-Adresse nicht registrieren',
'registration_email_domain_invalid' => 'Sie können sich mit dieser E-Mail-Adresse nicht für diese Anwendung registrieren',
'register_success' => 'Vielen Dank für Ihre Registrierung! Die Daten sind gespeichert und Sie sind angemeldet.',
// Login auto-initiation
@ -58,25 +58,25 @@ return [
'email_confirm_greeting' => 'Danke, dass Sie sich für :appName registriert haben!',
'email_confirm_text' => 'Bitte bestätigen Sie Ihre E-Mail-Adresse, indem Sie auf die Schaltfläche klicken:',
'email_confirm_action' => 'E-Mail-Adresse bestätigen',
'email_confirm_send_error' => 'Leider konnte die für die Registrierung notwendige E-Mail zur Bestätigung Ihrer E-Mail-Adresse nicht versandt werden. Bitte kontaktieren Sie den Systemadministrator!',
'email_confirm_send_error' => 'Leider konnte die für die Registrierung notwendige E-Mail zur Bestätigung Ihrer E-Mail-Adresse nicht versandt werden. Bitte kontaktieren Sie den Systemadministrator.',
'email_confirm_success' => 'Ihre E-Mail wurde bestätigt! Sie sollten nun in der Lage sein, sich mit dieser E-Mail-Adresse anzumelden.',
'email_confirm_resent' => 'Bestätigungs-E-Mail wurde erneut versendet, bitte überprüfen Sie Ihren Posteingang.',
'email_confirm_thanks' => 'Vielen Dank für das Bestätigen!',
'email_confirm_thanks_desc' => 'Bitte warten Sie einen Augenblick, während Ihre Bestätigung bearbeitet wird. Wenn Sie nach 3 Sekunden nicht weitergeleitet werden, drücken Sie unten den "Weiter" Link, um fortzufahren.',
'email_confirm_thanks_desc' => 'Bitte warten Sie einen Augenblick, während Ihre Bestätigung bearbeitet wird. Wenn Sie nach 3 Sekunden nicht weitergeleitet werden, drücken Sie unten den „Weiter“-Link, um fortzufahren.',
'email_not_confirmed' => 'E-Mail-Adresse ist nicht bestätigt',
'email_not_confirmed_text' => 'Ihre E-Mail-Adresse ist bisher nicht bestätigt.',
'email_not_confirmed_click_link' => 'Bitte klicken Sie auf den Link in der E-Mail, die Sie nach der Registrierung erhalten haben.',
'email_not_confirmed_resend' => 'Wenn Sie die E-Mail nicht erhalten haben, können Sie die Nachricht erneut anfordern. Füllen Sie hierzu bitte das folgende Formular aus:',
'email_not_confirmed_resend' => 'Wenn Sie die E-Mail nicht erhalten haben, können Sie die Nachricht erneut anfordern. Füllen Sie hierzu bitte das folgende Formular aus.',
'email_not_confirmed_resend_button' => 'Bestätigungs-E-Mail erneut senden',
// User Invite
'user_invite_email_subject' => 'Sie wurden eingeladen :appName beizutreten!',
'user_invite_email_subject' => 'Sie wurden eingeladen, :appName beizutreten!',
'user_invite_email_greeting' => 'Ein Konto wurde für Sie auf :appName erstellt.',
'user_invite_email_text' => 'Klicken Sie auf die Schaltfläche unten, um ein Passwort festzulegen und Zugriff zu erhalten:',
'user_invite_email_action' => 'Account-Passwort festlegen',
'user_invite_page_welcome' => 'Willkommen bei :appName!',
'user_invite_page_text' => 'Um die Anmeldung abzuschließen und Zugriff auf :appName zu bekommen muss noch ein Passwort festgelegt werden. Dieses wird in Zukunft für die Anmeldung benötigt.',
'user_invite_page_text' => 'Um die Anmeldung abzuschließen und Zugriff auf :appName zu bekommen, muss noch ein Passwort festgelegt werden. Dieses wird in Zukunft für die Anmeldung benötigt.',
'user_invite_page_confirm_button' => 'Passwort bestätigen',
'user_invite_success_login' => 'Passwort gesetzt, Sie sollten nun in der Lage sein, sich mit Ihrem Passwort an :appName anzumelden!',
@ -87,31 +87,31 @@ return [
'mfa_setup_reconfigure' => 'Umkonfigurieren',
'mfa_setup_remove_confirmation' => 'Sind Sie sicher, dass Sie diese Multi-Faktor-Authentifizierungsmethode entfernen möchten?',
'mfa_setup_action' => 'Einrichtung',
'mfa_backup_codes_usage_limit_warning' => 'Sie haben weniger als 5 Backup-Codes übrig, Bitte erstellen und speichern Sie ein neues Set bevor Sie keine Codes mehr haben, um zu verhindern, dass Sie von Ihrem Konto gesperrt werden.',
'mfa_option_totp_title' => 'Mobile App',
'mfa_option_totp_desc' => 'Um Mehrfach-Faktor-Authentifizierung nutzen zu können, benötigen Sie eine mobile Anwendung, die TOTP unterstützt, wie Google Authenticator, Authy oder Microsoft Authenticator.',
'mfa_option_backup_codes_title' => 'Backup Code',
'mfa_backup_codes_usage_limit_warning' => 'Sie haben weniger als 5 Backup-Codes übrig, bitte erstellen und speichern Sie ein neues Set, bevor Ihnen die Codes ausgehen, um zu verhindern, dass Sie aus Ihrem Konto ausgesperrt werden.',
'mfa_option_totp_title' => 'Handy-App',
'mfa_option_totp_desc' => 'Um Mehrfach-Faktor-Authentifizierung nutzen zu können, benötigen Sie eine Handy-Anwendung, die TOTP unterstützt, wie Google Authenticator, Authy oder Microsoft Authenticator.',
'mfa_option_backup_codes_title' => 'Backup-Codes',
'mfa_option_backup_codes_desc' => 'Speichern Sie sicher eine Reihe von einmaligen Backup-Codes, die Sie eingeben können, um Ihre Identität zu überprüfen.',
'mfa_gen_confirm_and_enable' => 'Bestätigen und aktivieren',
'mfa_gen_backup_codes_title' => 'Backup-Codes einrichten',
'mfa_gen_backup_codes_desc' => 'Speichern Sie die folgende Liste der Codes an einem sicheren Ort. Wenn Sie auf das System zugreifen, können Sie einen der Codes als zweiten Authentifizierungsmechanismus verwenden.',
'mfa_gen_backup_codes_download' => 'Download Codes',
'mfa_gen_backup_codes_desc' => 'Speichern Sie die folgende Liste von Codes an einem sicheren Ort. Wenn Sie auf das System zugreifen, können Sie einen der Codes als zweiten Authentifizierungsmechanismus verwenden.',
'mfa_gen_backup_codes_download' => 'Codes herunterladen',
'mfa_gen_backup_codes_usage_warning' => 'Jeder Code kann nur einmal verwendet werden',
'mfa_gen_totp_title' => 'Mobile App einrichten',
'mfa_gen_totp_desc' => 'Um Mehrfach-Faktor-Authentifizierung nutzen zu können, benötigen Sie eine mobile Anwendung, die TOTP unterstützt, wie Google Authenticator, Authy oder Microsoft Authenticator.',
'mfa_gen_totp_title' => 'Handy-App einrichten',
'mfa_gen_totp_desc' => 'Um Multi-Faktor-Authentifizierung nutzen zu können, benötigen Sie eine Handy-Anwendung, die TOTP unterstützt, wie Google Authenticator, Authy oder Microsoft Authenticator.',
'mfa_gen_totp_scan' => 'Scannen Sie den QR-Code unten mit Ihrer bevorzugten Authentifizierungs-App, um loszulegen.',
'mfa_gen_totp_verify_setup' => 'Setup überprüfen',
'mfa_gen_totp_verify_setup_desc' => 'Überprüfen Sie, dass alles funktioniert, indem Sie einen Code in Ihrer Authentifizierungs-App in das Eingabefeld unten eingeben:',
'mfa_gen_totp_provide_code_here' => 'Geben Sie hier Ihre App generierten Code ein',
'mfa_gen_totp_verify_setup_desc' => 'Überprüfen Sie, dass alles funktioniert, indem Sie einen von Ihrer Authentifizierungs-App generierten Code in das Eingabefeld unten eingeben:',
'mfa_gen_totp_provide_code_here' => 'Geben Sie hier Ihren App-generierten Code ein',
'mfa_verify_access' => 'Zugriff überprüfen',
'mfa_verify_access_desc' => 'Ihr Benutzerkonto erfordert, dass Sie Ihre Identität über eine zusätzliche Verifikationsebene bestätigen, bevor Sie den Zugriff gewähren. Überprüfen Sie mit einer Ihrer konfigurierten Methoden, um fortzufahren.',
'mfa_verify_access_desc' => 'Ihr Benutzerkonto erfordert, dass Sie Ihre Identität über eine zusätzliche Verifikationsebene bestätigen, bevor Sie Zugriff erhalten. Nutzen Sie dazu eine Ihrer konfigurierten Methoden, um fortzufahren.',
'mfa_verify_no_methods' => 'Keine Methoden konfiguriert',
'mfa_verify_no_methods_desc' => 'Es konnten keine Mehrfach-Faktor-Authentifizierungsmethoden für Ihr Konto gefunden werden. Sie müssen mindestens eine Methode einrichten, bevor Sie Zugriff erhalten.',
'mfa_verify_use_totp' => 'Mit einer mobilen App verifizieren',
'mfa_verify_no_methods_desc' => 'Es konnten keine Multi-Faktor-Authentifizierungsmethoden für Ihr Konto gefunden werden. Sie müssen mindestens eine Methode einrichten, bevor Sie Zugriff erhalten.',
'mfa_verify_use_totp' => 'Mit einer Handy-App verifizieren',
'mfa_verify_use_backup_codes' => 'Mit einem Backup-Code überprüfen',
'mfa_verify_backup_code' => 'Backup-Code',
'mfa_verify_backup_code_desc' => 'Geben Sie einen Ihrer verbleibenden Backup-Codes unten ein:',
'mfa_verify_backup_code_desc' => 'Geben Sie unten einen Ihrer verbleibenden Backup-Codes ein:',
'mfa_verify_backup_code_enter_here' => 'Backup-Code hier eingeben',
'mfa_verify_totp_desc' => 'Geben Sie den Code ein, der mit Ihrer mobilen App generiert wurde:',
'mfa_verify_totp_desc' => 'Geben Sie den Code ein, der mit Ihrer Handy-App generiert wurde:',
'mfa_setup_login_notification' => 'Multi-Faktor-Methode konfiguriert. Bitte melden Sie sich jetzt erneut mit der konfigurierten Methode an.',
];

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Abbrechen',
'close' => 'Schließen',
'confirm' => 'Bestätigen',
'back' => 'Zurück',
'save' => 'Speichern',
@ -19,7 +20,7 @@ return [
'description' => 'Beschreibung',
'role' => 'Rolle',
'cover_image' => 'Titelbild',
'cover_image_description' => 'Das Bild sollte eine Auflösung von 440x250px haben.',
'cover_image_description' => 'Das Bild sollte eine Auflösung von ca. 440x250px haben.',
// Actions
'actions' => 'Aktionen',

View File

@ -6,27 +6,34 @@ return [
// Image Manager
'image_select' => 'Bild auswählen',
'image_list' => 'Bilderliste',
'image_details' => 'Bilddetails',
'image_upload' => 'Bild hochladen',
'image_intro' => 'Hier können Sie die zuvor hochgeladenen Bilder auswählen und verwalten.',
'image_intro_upload' => 'Laden Sie ein neues Bild hoch, indem Sie eine Bilddatei in dieses Fenster ziehen oder über die Schaltfläche "Bild hochladen" oben klicken.',
'image_intro_upload' => 'Laden Sie ein neues Bild hoch, indem Sie eine Bilddatei in dieses Fenster ziehen oder auf die Schaltfläche "Bild hochladen" oben klicken.',
'image_all' => 'Alle',
'image_all_title' => 'Alle Bilder anzeigen',
'image_book_title' => 'Zeige alle Bilder, die in dieses Buch hochgeladen wurden',
'image_page_title' => 'Zeige alle Bilder, die auf diese Seite hochgeladen wurden',
'image_search_hint' => 'Nach Bildnamen suchen',
'image_uploaded' => 'Hochgeladen am :uploadedDate',
'image_uploaded_by' => 'Hochgeladen von :userName',
'image_uploaded_to' => 'Hochgeladen auf :pageLink',
'image_updated' => 'Aktualisiert am :updateDate',
'image_load_more' => 'Mehr',
'image_image_name' => 'Bildname',
'image_delete_used' => 'Dieses Bild wird auf den folgenden Seiten benutzt. ',
'image_delete_confirm_text' => 'Möchten Sie dieses Bild wirklich löschen?',
'image_select_image' => 'Bild auswählen',
'image_dropzone' => 'Ziehen Sie Bilder hierher oder klicken Sie hier, um ein Bild auszuwählen',
'image_dropzone_drop' => 'Ziehe Dateien hierher, um sie hochzuladen',
'image_dropzone_drop' => 'Ziehen Sie Dateien hierher, um sie hochzuladen',
'images_deleted' => 'Bilder gelöscht',
'image_preview' => 'Bildvorschau',
'image_upload_success' => 'Bild erfolgreich hochgeladen',
'image_update_success' => 'Bilddetails erfolgreich aktualisiert',
'image_delete_success' => 'Bild erfolgreich gelöscht',
'image_replace' => 'Bild ersetzen',
'image_replace_success' => 'Bild erfolgreich aktualisiert',
// Code Editor
'code_editor' => 'Code editieren',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Kapitel speichern',
'chapters_move' => 'Kapitel verschieben',
'chapters_move_named' => 'Kapitel ":chapterName" verschieben',
'chapter_move_success' => 'Das Kapitel wurde in das Buch ":bookName" verschoben.',
'chapters_copy' => 'Kapitel kopieren',
'chapters_copy_success' => 'Kapitel erfolgreich kopiert',
'chapters_permissions' => 'Kapitel-Berechtigungen',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Seite bearbeiten',
'pages_edit_draft_save_at' => 'Entwurf gespeichert um ',
'pages_edit_delete_draft' => 'Entwurf löschen',
'pages_edit_delete_draft_confirm' => 'Sind Sie sicher, dass Sie Ihren Entwurf löschen möchten? Alle Ihre Änderungen seit dem letzten vollständigen Speichern gehen verloren und der Editor wird mit dem letzten Speicherzustand aktualisiert, der kein Entwurf ist.',
'pages_edit_discard_draft' => 'Entwurf verwerfen',
'pages_edit_switch_to_markdown' => 'Zum Markdown Editor wechseln',
'pages_edit_switch_to_markdown_clean' => '(gesäuberter Output)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Vorschau synchronisieren',
'pages_not_in_chapter' => 'Seite ist in keinem Kapitel',
'pages_move' => 'Seite verschieben',
'pages_move_success' => 'Seite nach ":parentName" verschoben',
'pages_copy' => 'Seite kopieren',
'pages_copy_desination' => 'Ziel',
'pages_copy_success' => 'Seite erfolgreich kopiert',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Wiederherstellen',
'pages_revisions_none' => 'Diese Seite hat keine älteren Versionen.',
'pages_copy_link' => 'Link kopieren',
'pages_edit_content_link' => 'Inhalt bearbeiten',
'pages_edit_content_link' => 'Im Editor zum Abschnitt springen',
'pages_pointer_enter_mode' => 'Abschnittsauswahlmodus aktivieren',
'pages_pointer_label' => 'Abschnittsoptionen der Seite',
'pages_pointer_permalink' => 'Seitenabschnitt-Permalink',
'pages_pointer_include_tag' => 'Seitenabschnitts-Include-Tag',
'pages_pointer_toggle_link' => 'Permalink-Modus, Drücken, um Include-Tag anzuzeigen',
'pages_pointer_toggle_include' => 'Include-Tag-Modus, Drücken, um Permalink anzuzeigen',
'pages_permissions_active' => 'Seiten-Berechtigungen aktiv',
'pages_initial_revision' => 'Erste Veröffentlichung',
'pages_references_update_revision' => 'Automatische Systemaktualisierung interner Links',
@ -281,7 +286,8 @@ return [
'time_b' => 'in den letzten :minCount Minuten',
'message' => ':start :time. Achten Sie darauf, keine Änderungen von anderen Benutzern zu überschreiben!',
],
'pages_draft_discarded' => 'Entwurf verworfen. Der aktuelle Seiteninhalt wurde geladen.',
'pages_draft_discarded' => 'Entwurf verworfen! Der aktuelle Seiteninhalt wurde geladen',
'pages_draft_deleted' => 'Entwurf gelöscht. Der aktuelle Seiteninhalt wurde geladen',
'pages_specific' => 'Spezifische Seite',
'pages_is_template' => 'Seitenvorlage',
@ -313,7 +319,7 @@ return [
'attachments_explain_instant_save' => 'Änderungen werden direkt gespeichert.',
'attachments_upload' => 'Datei hochladen',
'attachments_link' => 'Link hinzufügen',
'attachments_upload_drop' => 'Alternativ können Sie eine Datei per Drag & Drop hier hochladen, um sie als Anhang hochzuladen.',
'attachments_upload_drop' => 'Alternativ können Sie eine Datei per Drag & Drop hier als Anhang hochladen.',
'attachments_set_link' => 'Link setzen',
'attachments_delete' => 'Sind Sie sicher, dass Sie diesen Anhang löschen möchten?',
'attachments_dropzone' => 'Ziehe Dateien hierher, um sie hochzuladen',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Geben Sie hier Ihre Kommentare ein (Markdown unterstützt)',
'comment_count' => '{0} Keine Kommentare|{1} 1 Kommentar|[2,*] :count Kommentare',
'comment_save' => 'Kommentar speichern',
'comment_saving' => 'Kommentar wird gespeichert...',
'comment_deleting' => 'Kommentar wird gelöscht...',
'comment_new' => 'Neuer Kommentar',
'comment_created' => ':createDiff kommentiert',
'comment_updated' => ':updateDiff aktualisiert von :username',
'comment_updated_indicator' => 'Aktualisiert',
'comment_deleted_success' => 'Kommentar gelöscht',
'comment_created_success' => 'Kommentar hinzugefügt',
'comment_updated_success' => 'Kommentar aktualisiert',
'comment_delete_confirm' => 'Möchten Sie diesen Kommentar wirklich löschen?',
'comment_in_reply_to' => 'Antwort auf :commentId',
'comment_editor_explain' => 'Hier sind die Kommentare, die auf dieser Seite hinterlassen wurden. Kommentare können hinzugefügt und verwaltet werden, wenn die gespeicherte Seite angezeigt wird.',
// Revision
'revision_delete_confirm' => 'Sind Sie sicher, dass Sie diese Revision löschen wollen?',
'revision_restore_confirm' => 'Sind Sie sicher, dass Sie diese Revision wiederherstellen wollen? Der aktuelle Seiteninhalt wird ersetzt.',
'revision_delete_success' => 'Revision gelöscht',
'revision_cannot_delete_latest' => 'Die letzte Version kann nicht gelöscht werden.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Beim Hochladen des Bildes trat ein Fehler auf.',
'image_upload_type_error' => 'Der Bildtyp der hochgeladenen Datei ist ungültig.',
'image_upload_replace_type' => 'Bild-Ersetzungen müssen vom gleichen Typ sein',
'drawing_data_not_found' => 'Zeichnungsdaten konnten nicht geladen werden. Die Zeichnungsdatei existiert möglicherweise nicht mehr oder Sie haben nicht die Berechtigung, darauf zuzugreifen.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Fehler beim Speichern des Entwurfs. Stellen Sie sicher, dass Sie mit dem Internet verbunden sind, bevor Sie den Entwurf dieser Seite speichern.',
'page_draft_delete_fail' => 'Fehler beim Löschen des Seitenentwurfs und beim Abrufen des gespeicherten Inhalts der aktuellen Seite',
'page_custom_home_deletion' => 'Eine als Startseite gesetzte Seite kann nicht gelöscht werden',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Einstellungen',
'settings_save' => 'Einstellungen speichern',
'settings_save_success' => 'Einstellungen gespeichert',
'system_version' => 'Systemversion',
'categories' => 'Kategorien',
@ -233,8 +232,6 @@ Hinweis: Benutzer können ihre E-Mail-Adresse nach erfolgreicher Registrierung
'user_api_token_expiry' => 'Ablaufdatum',
'user_api_token_expiry_desc' => 'Legen Sie ein Datum fest, an dem dieser Token abläuft. Nach diesem Datum funktionieren Anfragen, die mit diesem Token gestellt werden, nicht mehr. Wenn Sie dieses Feld leer lassen, wird ein Ablaufdatum von 100 Jahren in der Zukunft festgelegt.',
'user_api_token_create_secret_message' => 'Unmittelbar nach der Erstellung dieses Tokens wird eine "Token ID" & ein "Token Kennwort" generiert und angezeigt. Das Kennwort wird nur ein einziges Mal angezeigt. Stellen Sie also sicher, dass Sie den Inhalt an einen sicheren Ort kopieren, bevor Sie fortfahren.',
'user_api_token_create_success' => 'API-Token erfolgreich erstellt',
'user_api_token_update_success' => 'API-Token erfolgreich aktualisiert',
'user_api_token' => 'API-Token',
'user_api_token_id' => 'Token ID',
'user_api_token_id_desc' => 'Dies ist ein nicht editierbarer, vom System generierter Identifikator für diesen Token, welcher bei API-Anfragen angegeben werden muss.',
@ -245,7 +242,6 @@ Hinweis: Benutzer können ihre E-Mail-Adresse nach erfolgreicher Registrierung
'user_api_token_delete' => 'Lösche Token',
'user_api_token_delete_warning' => 'Dies löscht den API-Token mit dem Namen \':tokenName\' vollständig aus dem System.',
'user_api_token_delete_confirm' => 'Sind Sie sicher, dass Sie diesen API-Token löschen möchten?',
'user_api_token_delete_success' => 'API-Token erfolgreich gelöscht',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'stellt Seite wieder her',
'page_restore_notification' => 'Seite erfolgreich wiederhergestellt',
'page_move' => 'verschiebt Seite',
'page_move_notification' => 'Seite erfolgreich verschoben',
// Chapters
'chapter_create' => 'erstellt Kapitel',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'löscht Kapitel',
'chapter_delete_notification' => 'Kapitel erfolgreich gelöscht',
'chapter_move' => 'verschiebt Kapitel',
'chapter_move_notification' => 'Kapitel erfolgreich verschoben',
// Books
'book_create' => 'erstellt Buch',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'Regal gelöscht',
'bookshelf_delete_notification' => 'Regal erfolgreich gelöscht',
// Revisions
'revision_restore' => 'stellte Revision wieder her:',
'revision_delete' => 'löschte Revision',
'revision_delete_notification' => 'Revision erfolgreich gelöscht',
// Favourites
'favourite_add_notification' => '":name" wurde zu deinen Favoriten hinzugefügt',
'favourite_remove_notification' => '":name" wurde aus deinen Favoriten entfernt',
// MFA
// Auth
'auth_login' => 'hat sich eingeloggt',
'auth_register' => 'hat sich als neuer Benutzer registriert',
'auth_password_reset_request' => 'hat eine Rücksetzung des Benutzerpassworts beantragt',
'auth_password_reset_update' => 'hat Benutzerpasswort zurückgesetzt',
'mfa_setup_method' => 'hat MFA-Methode konfiguriert',
'mfa_setup_method_notification' => 'Multi-Faktor-Methode erfolgreich konfiguriert',
'mfa_remove_method' => 'hat MFA-Methode entfernt',
'mfa_remove_method_notification' => 'Multi-Faktor-Methode erfolgreich entfernt',
// Settings
'settings_update' => 'hat Einstellungen aktualisiert',
'settings_update_notification' => 'Einstellungen erfolgreich aktualisiert',
'maintenance_action_run' => 'hat Wartungsarbeiten ausgeführt',
// Webhooks
'webhook_create' => 'erstellter Webhook',
'webhook_create_notification' => 'Webhook erfolgreich eingerichtet',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Webhook erfolgreich gelöscht',
// Users
'user_create' => 'hat Benutzer erzeugt:',
'user_create_notification' => 'Benutzer erfolgreich erstellt',
'user_update' => 'hat Benutzer aktualisiert:',
'user_update_notification' => 'Benutzer erfolgreich aktualisiert',
'user_delete' => 'hat Benutzer gelöscht: ',
'user_delete_notification' => 'Benutzer erfolgreich entfernt',
// API Tokens
'api_token_create' => 'hat API-Token erzeugt:',
'api_token_create_notification' => 'API-Token erfolgreich erstellt',
'api_token_update' => 'hat API-Token aktualisiert:',
'api_token_update_notification' => 'API-Token erfolgreich aktualisiert',
'api_token_delete' => 'hat API-Token gelöscht:',
'api_token_delete_notification' => 'API-Token erfolgreich gelöscht',
// Roles
'role_create' => 'hat Rolle erzeugt:',
'role_create_notification' => 'Rolle erfolgreich erstellt',
'role_update' => 'hat Rolle aktualisiert:',
'role_update_notification' => 'Rolle erfolgreich aktualisiert',
'role_delete' => 'hat Rolle gelöscht:',
'role_delete_notification' => 'Rolle erfolgreich gelöscht',
// Recycle Bin
'recycle_bin_empty' => 'hat den Papierkorb geleert',
'recycle_bin_restore' => 'aus dem Papierkorb wiederhergestellt',
'recycle_bin_destroy' => 'aus dem Papierkorb gelöscht',
// Other
'commented_on' => 'kommentiert',
'permissions_update' => 'aktualisierte Berechtigungen',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Abbrechen',
'close' => 'Schließen',
'confirm' => 'Bestätigen',
'back' => 'Zurück',
'save' => 'Speichern',

View File

@ -6,15 +6,20 @@ return [
// Image Manager
'image_select' => 'Bild auswählen',
'image_list' => 'Bilderliste',
'image_details' => 'Bilddetails',
'image_upload' => 'Bild hochladen',
'image_intro' => 'Hier können Sie die zuvor hochgeladenen Bilder auswählen und verwalten.',
'image_intro_upload' => 'Laden Sie ein neues Bild hoch, indem Sie eine Bilddatei in dieses Fenster ziehen oder über die Schaltfläche "Bild hochladen" oben klicken.',
'image_intro' => 'Hier kannst du die zuvor hochgeladenen Bilder auswählen und verwalten.',
'image_intro_upload' => 'Lade ein neues Bild hoch, indem du eine Bilddatei in dieses Fenster ziehst oder auf die Schaltfläche "Bild hochladen" oben klickst.',
'image_all' => 'Alle',
'image_all_title' => 'Alle Bilder anzeigen',
'image_book_title' => 'Zeige alle Bilder, die in dieses Buch hochgeladen wurden',
'image_page_title' => 'Zeige alle Bilder, die auf diese Seite hochgeladen wurden',
'image_search_hint' => 'Nach Bildnamen suchen',
'image_uploaded' => 'Hochgeladen am :uploadedDate',
'image_uploaded_by' => 'Hochgeladen von :userName',
'image_uploaded_to' => 'Hochgeladen auf :pageLink',
'image_updated' => 'Aktualisiert am :updateDate',
'image_load_more' => 'Mehr',
'image_image_name' => 'Bildname',
'image_delete_used' => 'Dieses Bild wird auf den folgenden Seiten benutzt.',
@ -27,6 +32,8 @@ return [
'image_upload_success' => 'Bild erfolgreich hochgeladen',
'image_update_success' => 'Bilddetails erfolgreich aktualisiert',
'image_delete_success' => 'Bild erfolgreich gelöscht',
'image_replace' => 'Bild ersetzen',
'image_replace_success' => 'Bild erfolgreich aktualisiert',
// Code Editor
'code_editor' => 'Code editieren',

View File

@ -180,7 +180,6 @@ return [
'chapters_save' => 'Kapitel speichern',
'chapters_move' => 'Kapitel verschieben',
'chapters_move_named' => 'Kapitel ":chapterName" verschieben',
'chapter_move_success' => 'Das Kapitel wurde in das Buch ":bookName" verschoben.',
'chapters_copy' => 'Kapitel kopieren',
'chapters_copy_success' => 'Kapitel erfolgreich kopiert',
'chapters_permissions' => 'Kapitel-Berechtigungen',
@ -214,6 +213,7 @@ return [
'pages_editing_page' => 'Seite bearbeiten',
'pages_edit_draft_save_at' => 'Entwurf gespeichert um ',
'pages_edit_delete_draft' => 'Entwurf löschen',
'pages_edit_delete_draft_confirm' => 'Bist du sicher, dass du deinen Entwurf löschen möchtest? Alle deine Änderungen seit dem letzten vollständigen Speichern gehen verloren und der Editor wird mit dem letzten Speicherzustand aktualisiert, der kein Entwurf ist.',
'pages_edit_discard_draft' => 'Entwurf verwerfen',
'pages_edit_switch_to_markdown' => 'Zum Markdown Editor wechseln',
'pages_edit_switch_to_markdown_clean' => '(Sauberer Inhalt)',
@ -240,7 +240,6 @@ return [
'pages_md_sync_scroll' => 'Vorschau synchronisieren',
'pages_not_in_chapter' => 'Seite ist in keinem Kapitel',
'pages_move' => 'Seite verschieben',
'pages_move_success' => 'Seite nach ":parentName" verschoben',
'pages_copy' => 'Seite kopieren',
'pages_copy_desination' => 'Ziel',
'pages_copy_success' => 'Seite erfolgreich kopiert',
@ -266,7 +265,13 @@ return [
'pages_revisions_restore' => 'Wiederherstellen',
'pages_revisions_none' => 'Diese Seite hat keine älteren Versionen.',
'pages_copy_link' => 'Link kopieren',
'pages_edit_content_link' => 'Inhalt bearbeiten',
'pages_edit_content_link' => 'Im Editor zum Abschnitt springen',
'pages_pointer_enter_mode' => 'Abschnittsauswahlmodus aktivieren',
'pages_pointer_label' => 'Abschnittsoptionen der Seite',
'pages_pointer_permalink' => 'Seitenabschnitt-Permalink',
'pages_pointer_include_tag' => 'Seitenabschnitts-Include-Tag',
'pages_pointer_toggle_link' => 'Permalink-Modus, Drücken, um Include-Tag anzuzeigen',
'pages_pointer_toggle_include' => 'Include-Tag-Modus, Drücken, um Permalink anzuzeigen',
'pages_permissions_active' => 'Seiten-Berechtigungen aktiv',
'pages_initial_revision' => 'Erste Veröffentlichung',
'pages_references_update_revision' => 'Automatische Systemaktualisierung interner Links',
@ -281,7 +286,8 @@ return [
'time_b' => 'in den letzten :minCount Minuten',
'message' => ':start :time. Achte darauf, keine Änderungen von anderen Benutzern zu überschreiben!',
],
'pages_draft_discarded' => 'Entwurf verworfen. Der aktuelle Seiteninhalt wurde geladen.',
'pages_draft_discarded' => 'Entwurf verworfen! Der aktuelle Seiteninhalt wurde geladen',
'pages_draft_deleted' => 'Entwurf gelöscht. Der aktuelle Seiteninhalt wurde geladen',
'pages_specific' => 'Spezifische Seite',
'pages_is_template' => 'Seitenvorlage',
@ -313,7 +319,7 @@ return [
'attachments_explain_instant_save' => 'Änderungen werden direkt gespeichert.',
'attachments_upload' => 'Datei hochladen',
'attachments_link' => 'Link hinzufügen',
'attachments_upload_drop' => 'Alternativ können Sie eine Datei per Drag & Drop hier hochladen, um sie als Anhang hochzuladen.',
'attachments_upload_drop' => 'Alternativ kannst du eine Datei per Drag & Drop hier als Anhang hochladen.',
'attachments_set_link' => 'Link setzen',
'attachments_delete' => 'Bist du sicher, dass du diesen Anhang löschen möchtest?',
'attachments_dropzone' => 'Ziehe Dateien hierher, um sie hochzuladen',
@ -356,21 +362,20 @@ return [
'comment_placeholder' => 'Gib hier deine Kommentare ein (Markdown unterstützt)',
'comment_count' => '{0} Keine Kommentare|{1} 1 Kommentar|[2,*] :count Kommentare',
'comment_save' => 'Kommentar speichern',
'comment_saving' => 'Kommentar wird gespeichert...',
'comment_deleting' => 'Kommentar wird gelöscht...',
'comment_new' => 'Neuer Kommentar',
'comment_created' => ':createDiff kommentiert',
'comment_updated' => ':updateDiff aktualisiert von :username',
'comment_updated_indicator' => 'Aktualisiert',
'comment_deleted_success' => 'Kommentar gelöscht',
'comment_created_success' => 'Kommentar hinzugefügt',
'comment_updated_success' => 'Kommentar aktualisiert',
'comment_delete_confirm' => 'Möchtst du diesen Kommentar wirklich löschen?',
'comment_in_reply_to' => 'Antwort auf :commentId',
'comment_editor_explain' => 'Hier sind die Kommentare, die auf dieser Seite hinterlassen wurden. Kommentare können hinzugefügt und verwaltet werden, wenn die gespeicherte Seite angezeigt wird.',
// Revision
'revision_delete_confirm' => 'Bist du sicher, dass du diese Revision löschen möchtest?',
'revision_restore_confirm' => 'Bist du sicher, dass du diese Revision wiederherstellen willst? Der aktuelle Seiteninhalt wird ersetzt.',
'revision_delete_success' => 'Revision gelöscht',
'revision_cannot_delete_latest' => 'Die letzte Version kann nicht gelöscht werden.',
// Copy view

View File

@ -49,6 +49,7 @@ return [
// Drawing & Images
'image_upload_error' => 'Beim Hochladen des Bildes trat ein Fehler auf.',
'image_upload_type_error' => 'Der Bildtyp der hochgeladenen Datei ist ungültig.',
'image_upload_replace_type' => 'Bild-Ersetzungen müssen vom gleichen Typ sein',
'drawing_data_not_found' => 'Zeichnungsdaten konnten nicht geladen werden. Die Zeichnungsdatei existiert möglicherweise nicht mehr oder du hast nicht die Berechtigung, darauf zuzugreifen.',
// Attachments
@ -57,6 +58,7 @@ return [
// Pages
'page_draft_autosave_fail' => 'Fehler beim Speichern des Entwurfs. Stelle sicher, dass du mit dem Internet verbunden bist, bevor du den Entwurf dieser Seite speicherst.',
'page_draft_delete_fail' => 'Fehler beim Löschen des Seitenentwurfs und beim Abrufen des gespeicherten Inhalts der aktuellen Seite',
'page_custom_home_deletion' => 'Eine als Startseite gesetzte Seite kann nicht gelöscht werden.',
// Entities

View File

@ -9,7 +9,6 @@ return [
// Common Messages
'settings' => 'Einstellungen',
'settings_save' => 'Einstellungen speichern',
'settings_save_success' => 'Einstellungen gespeichert',
'system_version' => 'Systemversion',
'categories' => 'Kategorien',
@ -233,8 +232,6 @@ Hinweis: Benutzer können ihre E-Mail Adresse nach erfolgreicher Registrierung
'user_api_token_expiry' => 'Ablaufdatum',
'user_api_token_expiry_desc' => 'Lege ein Datum fest, zu dem dieser Token abläuft. Nach diesem Datum funktionieren Anfragen, die mit diesem Token gestellt werden, nicht mehr. Wenn du dieses Feld leer lässt, wird ein Ablaufdatum von 100 Jahren in der Zukunft festgelegt.',
'user_api_token_create_secret_message' => 'Unmittelbar nach der Erstellung dieses Tokens wird eine "Token ID" & ein "Token Kennwort" generiert und angezeigt. Das Kennwort wird nur ein einziges Mal angezeigt. Stelle also sicher, dass du den Inhalt an einen sicheren Ort kopierst, bevor du fortfährst.',
'user_api_token_create_success' => 'API-Token erfolgreich erstellt',
'user_api_token_update_success' => 'API-Token erfolgreich aktualisiert',
'user_api_token' => 'API-Token',
'user_api_token_id' => 'Token ID',
'user_api_token_id_desc' => 'Dies ist ein nicht editierbarer, vom System generierter Identifikator für diesen Token, welcher bei API-Anfragen angegeben werden muss.',
@ -245,7 +242,6 @@ Hinweis: Benutzer können ihre E-Mail Adresse nach erfolgreicher Registrierung
'user_api_token_delete' => 'Lösche Token',
'user_api_token_delete_warning' => 'Dies löscht den API-Token mit dem Namen \':tokenName\' vollständig aus dem System.',
'user_api_token_delete_confirm' => 'Bist du sicher, dass du diesen API-Token löschen möchtest?',
'user_api_token_delete_success' => 'API-Token erfolgreich gelöscht',
// Webhooks
'webhooks' => 'Webhooks',

View File

@ -15,6 +15,7 @@ return [
'page_restore' => 'αποκατεστημένη σελίδα',
'page_restore_notification' => 'Η σελίδα αποκαταστάθηκε με επιτυχία',
'page_move' => 'Η σελίδα μετακινήθηκε',
'page_move_notification' => 'Page successfully moved',
// Chapters
'chapter_create' => 'δημιουργήθηκε κεφάλαιο',
@ -24,6 +25,7 @@ return [
'chapter_delete' => 'διαγραμμένο κεφάλαιο',
'chapter_delete_notification' => 'Το κεφάλαιο διαγράφηκε επιτυχώς',
'chapter_move' => 'το κεφάλαιο μετακινήθηκε',
'chapter_move_notification' => 'Chapter successfully moved',
// Books
'book_create' => 'το βιβλίο δημιουργήθηκε',
@ -47,14 +49,30 @@ return [
'bookshelf_delete' => 'διαγραμμένο ράφι',
'bookshelf_delete_notification' => 'Το ράφι ενημερώθηκε επιτυχώς',
// Revisions
'revision_restore' => 'restored revision',
'revision_delete' => 'deleted revision',
'revision_delete_notification' => 'Revision successfully deleted',
// Favourites
'favourite_add_notification' => '":name" προστέθηκε στα αγαπημένα σας',
'favourite_remove_notification' => '":name" προστέθηκε στα αγαπημένα σας',
// MFA
// Auth
'auth_login' => 'logged in',
'auth_register' => 'registered as new user',
'auth_password_reset_request' => 'requested user password reset',
'auth_password_reset_update' => 'reset user password',
'mfa_setup_method' => 'configured MFA method',
'mfa_setup_method_notification' => 'Η μέθοδος πολλαπλών παραγόντων διαμορφώθηκε επιτυχώς',
'mfa_remove_method' => 'removed MFA method',
'mfa_remove_method_notification' => 'Η μέθοδος πολλαπλών παραγόντων καταργήθηκε με επιτυχία',
// Settings
'settings_update' => 'updated settings',
'settings_update_notification' => 'Settings successfully updated',
'maintenance_action_run' => 'ran maintenance action',
// Webhooks
'webhook_create' => 'Το webhook δημιουργήθηκε',
'webhook_create_notification' => 'Το Webhook δημιουργήθηκε με επιτυχία',
@ -64,14 +82,34 @@ return [
'webhook_delete_notification' => 'Το Webhook διαγράφηκε επιτυχώς',
// Users
'user_create' => 'created user',
'user_create_notification' => 'User successfully created',
'user_update' => 'updated user',
'user_update_notification' => 'Ο Χρήστης ενημερώθηκε με επιτυχία',
'user_delete' => 'deleted user',
'user_delete_notification' => 'Ο Χρήστης αφαιρέθηκε επιτυχώς',
// API Tokens
'api_token_create' => 'created api token',
'api_token_create_notification' => 'API token successfully created',
'api_token_update' => 'updated api token',
'api_token_update_notification' => 'API token successfully updated',
'api_token_delete' => 'deleted api token',
'api_token_delete_notification' => 'API token successfully deleted',
// Roles
'role_create' => 'created role',
'role_create_notification' => 'Ο Ρόλος δημιουργήθηκε με επιτυχία',
'role_update' => 'updated role',
'role_update_notification' => 'Ο Ρόλος ενημερώθηκε με επιτυχία',
'role_delete' => 'deleted role',
'role_delete_notification' => 'Ο Ρόλος διαγράφηκε επιτυχώς',
// Recycle Bin
'recycle_bin_empty' => 'emptied recycle bin',
'recycle_bin_restore' => 'restored from recycle bin',
'recycle_bin_destroy' => 'removed from recycle bin',
// Other
'commented_on' => 'σχολίασε',
'permissions_update' => 'ενημερωμένα δικαιώματα',

View File

@ -6,6 +6,7 @@ return [
// Buttons
'cancel' => 'Ακύρωση',
'close' => 'Close',
'confirm' => 'Οκ',
'back' => 'Πίσω',
'save' => 'Αποθήκευση',

Some files were not shown because too many files have changed in this diff Show More