We basically mock the way `URLGenerator::getAbsoluteURL` works,
so we must make sure that the URL might already contain the webroot.
Because `baseURL` and `cliURL` also contain the webroot we need to remove
the webroot from the URL first.
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Daniel <mail@danielkesselberg.de>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Previously even when the precondition did not match, the call "passed"
when the after value was the expected one. This however can lead to
race conditions, duplicate code excutions and other things.
Signed-off-by: Joas Schilling <coding@schilljs.com>
The `<?xml` tag is interpreted as PHP short tags, so this causes errors.
Instead just print that part of the template.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* The user should get a more friendly warning when their desktop client version is not supported anymore by the server.
See #nextcloud/desktop/issues/6273
* Update BlockLegacyClientPluginTest to reflect the new 403 error message.
Signed-off-by: Camila Ayres <hello@camilasan.com>
We are targetting PHP 8.1+, since PHP 8.0 `offsetGet` has the `mixed` types for `offset` and return value.
So this adds the types to correctly implement the interface.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This is needed because some views have side effects, like `favorites` doing requests on registration time.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This is to prevent collision as we are sometime hashing user input, yet using that hash to target the background job in the database.
Signed-off-by: Louis Chemineau <louis@chmn.me>
For E2EE encrypted files, we abort the transfer.
For SSE encrypted files, we abort only if not using master key.
Also fixed the check for when the path to a single file is used.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
1) The checks for well-known urls should always run against the root domain and therefore the option to remove the webroot.
2) For trusted domains, the available protocol is unknown, and thus some guesswork would be needed to make that work. I've decided for now to not consider them anymore to reduce false-positives.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
The row to add a new mount point is cloned when a new mountpoint is
added, so it is expected that it includes a status span. However, it
should not be displayed in that row, only in the cloned row when its
status is updated.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When updating global storages and user storages a property is not
updated by "StoragesService::updateStorage()" if the value matches the
unmodified placeholder. However, userglobal storages are not updated
through the "StoragesService"; as only the authentication mechanism is
updated it is directly done with "saveBackendOptions()" in
"IUserProvided" or "UserGlobalAuth". Due to this the unmodified
placeholder value needs to be explicitly checked in those cases and
replaced by the actual value (note that in this case it is not possible
to just skip updating a specific property).
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
As the external storage uses the Nextcloud server itself the number of
workers of the PHP process running the Nextcloud server had to be
increased. Otherwise if a request is sent for the external storage while
handling a request from the integration tests a deadlock would occur.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
As a new storage is added by selecting a backend the selected backend
needs to be reset. Otherwise it is not possible to add another storage
with the same backend.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
If the status is updated but no explicit message is provided (for
example, if the status check succeeded) the default tooltip (from the
template) is now set to prevent a mismatch between the status and the
tooltip (for example, if the configuration is fixed after a failed
status check).
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When saving, updating and rechecking an storage fails (which is
different to the soft-fail when the action itself succeeds but the
status check does not) further details are provided in the error message
of the response, which is now set as the tooltip.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
When a storage is saved the status check can fail even if saving the
storage succeeds. In those cases further details are provided in the
status message of the storage, which is now set as the tooltip,
similarly to how it is done when rechecking the storage.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Setting a null status was supposed to remove the status check, but
nothing was changed in that case. Now the status check is properly
removed, and doing that by hiding the element rather than just turning
it invisible also prevents that clicking on the invisible status
triggers a check, as until the new configuration is saved the check will
still be performed with the old configuration, which could be misleading
for the user.
Additionally, an explicit width is set to the parent of the span element
to prevent its width from changing when the span is shown and hidden.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Userglobal storages are now automatically recheck when loaded, similarly
to how it is done for global storages.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Keep them in the constructor to not break the API,
but they are not used anymore.
This way of adding a share was deprecated in Nextcloud 12 (2016!),
in favor of the federated share API, in Nextcloud 28 this way to create a share was removed.
So we can cleanup as all it takes now to create a federeated share is the share token + federated user ID.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This removes custom rendering code an replaces it with the declarative menu actions.
Also adjust the template to allow the Vue UI to mount.
Custom entries still are possible.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This adds a Vue implementation of the public page menu,
that is the menu that can be added using `PublicTemplateResponse::setHeaderActions`.
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Louis <louis@chmn.me>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
There were heavly breaking theming changes so increase the version number to make cache buster work.
Also fix order of entries in the appinfo.xml to fix XML validation (the order is fixed in the XSD).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
While digging through code I noticed another huge code style
refactoring commit is blocking the real blame, so added it to the list.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
It is returning a list of strings so adjust the return typing
to reflect this (`list<string>` instead of `array`).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The idea is to intercept the request,
then test the loading state,
and after the tests continue the request.
Problem here: `cy.intercept` has a timeout on the request-handler
which uses the same timeout as DOM assertions (4s) we could increase it,
but this also will increase DOM assertion timeout.
So instead we do not await in the request handler, but in the response handler.
This should use the response timeout which is much higher (30s).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The loading icon visually informs that the node is currently loading,
but there is no non-visual information (accessible information).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. The "recent" accounts API only works for admin and delegated admin -> hide for line managers
2. Line managers can not create new groups -> Hide the UI to add a new group for them
3. Accounts created by line managers require one of the groups, which is managed by the line manager, assigned.
So if the line manager only manageres a single group, we should preselect that group.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
TaskProcessing is transparent to textprocessing providers and TextProcessing can use Taskprocessing providers so these are unnecessary
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
taskprocessing is transparent to STT providers so specific STT settings are obsolete
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
Fix other background-positions
Minor fix in link button icon position
Update header left and right to start and end
Signed-off-by: Mostafa Ahangarha <ahangarha@riseup.net>
Renaming is basically copy + delete (a move), so no need to update permissions.
Especially if the node is in a invalid directory the node should be moveable but not editable.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Avoid surprises by making sure these are lowercased apart from
documented special case user displayname.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Avoids using several LDAP searches to get UUID, display name and
internal name, now gets all attributes at the same time.
Also avoids extra request to build an unused user object in userExists.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
On firefox there is an old bug where when you move a dragged file outside
the window the `dragleave` event is never emitted.
So we just use a timeout to reset the drag over state.
Also a small change: Use the ID of the main container instead of relying on tag name and class.
(The ID is guranteed as other APIs rely on it, while the class is just used internally).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
There are some benefits, like faster tests and thus saving CI time, but the main reason for me is:
Jest still does not properly support ESM packages, this casues a lot of breaking stuff.
Sometimes you need to adjust imports for mocking, and somethimes other random stuff break.
Instead of wasting valuable developer lifetime we can use vitest which works perfectly with ESM.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Previously if a server status got set to failure, it stayed that way
until an addressbook-sync found changes. Now the server status is set to
OK after each successful sync check (if that's not the case already),
regardless of addressbook changes.
This change also includes two new logging statements, which could help
next time someone debugs this.
Signed-off-by: Pablo Zimdahl <pablo@nextcloud.com>
When using iOS and focussing an input element the view should not be zoomed.
So if we set a maximum scale iOS will not auto-zoom but still allow users to zoom.
But we can not do this by default as this will disable user zoom on Chrome.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This prevents jumping of that toggle button when the view is loading.
Also adjust the design for Nextcloud 30 (prevent jumping of breadcrumbs when loading due to increased height).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
There is no `title` attribute, so this causes an exception.
Instead sort by the "share with" displayname which will be the user or group the node is shared to.
Meaning this will also be the title of the share in the UI.
If this is not available or there are multiple for the same, then sort by the custom label.
If also this is not set sort by the creation time.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
PHP 8.1 allows us to now move the `new` into the initializer,
this makes the code a bit nicer (and 3 lines shorter).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Fixes#2180
And prevents #31473, #23970, #18610, #15708
Avoids a 500 error and also gives a useful error message on the web interface if this module isn't installed, gets overlooked during a PHP upgrade, etc.
While we check for it later, it's too late for session.
Inspired by #17163
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
Fixes#31998
Adds support to `occ db:convert-type` to support UNIX socket connections via MySQL/MariaDB. Uses same `dbhost` / `hostname` parameter parsing logic (adapted) as used elsewhere (at least the relevant parts) for consistency.
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
Require user verification if all tokens are registered
with UV flag, else discourage it
Signed-off-by: S1m <git@sgougeon.fr>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
* Resolves https://github.com/nextcloud/server/issues/34476
There is no maximum length defined in the standard,
most common the length is between 128 and 200 characters,
but as we store it not in plain data but base64 encoded the length can grow about 1/3.
We had a regression with 'Nitrokey 3' which created IDs with 196 byte length -> 262 bytes encoded base64.
So to be save we increase the size to 512 bytes.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
@@ -74,6 +74,10 @@ Otherwise, git checkouts can be handled the same as release archives, by using t
- Comment on a pull request with `/update-3rdparty` to update the 3rd party submodule. It will update to the last commit of the 3rd party branch named like the PR target.
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Cung cấp khả năng ghi nhật ký cho Nextcloud, chẳng hạn như ghi nhật ký quyền truy cập tệp hoặc các hành động nhạy cảm khác."
"Auditing / Logging":"Kiểm tra / Nhật ký",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Cung cấp khả năng ghi nhật ký cho Nextcloud, chẳng hạn như ghi nhật ký quyền truy cập tệp hoặc các hành động nhạy cảm khác."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Cung cấp khả năng ghi nhật ký cho Nextcloud, chẳng hạn như ghi nhật ký quyền truy cập tệp hoặc các hành động nhạy cảm khác."
"Auditing / Logging":"Kiểm tra / Nhật ký",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Cung cấp khả năng ghi nhật ký cho Nextcloud, chẳng hạn như ghi nhật ký quyền truy cập tệp hoặc các hành động nhạy cảm khác."
"Cloud Federation API":"Ligeann API Comhdhéanta na Scamaill",
"Enable clouds to communicate with each other and exchange data":"Cumasaigh scamaill cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cuireann API Cloud Federation ar chumas cásanna éagsúla Nextcloud cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú."
"Enable clouds to communicate with each other and exchange data":"Lig dóimhneacht a chur ar chumas na scamaill cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú.",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Ligeann API Comhdhéanta na Scamaill do réimse éagsúil de chásanna Nextcloud cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú."
"Cloud Federation API":"Ligeann API Comhdhéanta na Scamaill",
"Enable clouds to communicate with each other and exchange data":"Cumasaigh scamaill cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cuireann API Cloud Federation ar chumas cásanna éagsúla Nextcloud cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú."
"Enable clouds to communicate with each other and exchange data":"Lig dóimhneacht a chur ar chumas na scamaill cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú.",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Ligeann API Comhdhéanta na Scamaill do réimse éagsúil de chásanna Nextcloud cumarsáid a dhéanamh lena chéile agus sonraí a mhalartú."
"{author} commented on {file}":"{author} okomentoval(a) {file}",
"<strong>Comments</strong> for files":"<strong>Komentáře</strong> k souborům",
"Files":"Soubory",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Byli jste zmíněni u souboru „{file}“, v komentáři od účtu, který byl později smazán",
"{user} mentioned you in a comment on \"{file}\"":"{user} vás zmínil(a) v komentáři u „{file}“",
"Files app plugin to add comments to files":"Zásuvný modul do aplikace Soubory pro přidávání komentářů k souborům",
"{author} commented on {file}":"{author} okomentoval(a) {file}",
"<strong>Comments</strong> for files":"<strong>Komentáře</strong> k souborům",
"Files":"Soubory",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Byli jste zmíněni u souboru „{file}“, v komentáři od účtu, který byl později smazán",
"{user} mentioned you in a comment on \"{file}\"":"{user} vás zmínil(a) v komentáři u „{file}“",
"Files app plugin to add comments to files":"Zásuvný modul do aplikace Soubory pro přidávání komentářů k souborům",
"Contacts Interaction":"Interacció amb contactes",
"Manages interaction between accounts and contacts":"Gestiona la interacció entre comptes i contactes",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Reculliu dades sobre comptes i interaccions de contactes i proporcioneu una llibreta d'adreces per a les dades",
"Manages interaction between users and contacts":"Administra la interacció entre usuaris i contactes",
"Collect data about user and contacts interactions and provide an address book for the data":"Recopileu dades sobre les interaccions d'usuaris i contactes i proporcioneu una llibreta d'adreces amb les dades"
"Contacts Interaction":"Interacció amb contactes",
"Manages interaction between accounts and contacts":"Gestiona la interacció entre comptes i contactes",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Reculliu dades sobre comptes i interaccions de contactes i proporcioneu una llibreta d'adreces per a les dades",
"Manages interaction between users and contacts":"Administra la interacció entre usuaris i contactes",
"Collect data about user and contacts interactions and provide an address book for the data":"Recopileu dades sobre les interaccions d'usuaris i contactes i proporcioneu una llibreta d'adreces amb les dades"
"Manages interaction between accounts and contacts":"Spravuje interakci mezi účty a kontakty",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Shromažďuje data o interakcích mezi účty a kontakty a poskytuje pro tato data adresář kontaktů",
"Manages interaction between users and contacts":"Spravuje interakci mezi uživateli a kontakty",
"Collect data about user and contacts interactions and provide an address book for the data":"Shromažďuje data o interakcích mezi uživatelem a kontakty a poskytuje pro tato data adresář kontaktů"
"Manages interaction between accounts and contacts":"Spravuje interakci mezi účty a kontakty",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Shromažďuje data o interakcích mezi účty a kontakty a poskytuje pro tato data adresář kontaktů",
"Manages interaction between users and contacts":"Spravuje interakci mezi uživateli a kontakty",
"Collect data about user and contacts interactions and provide an address book for the data":"Shromažďuje data o interakcích mezi uživatelem a kontakty a poskytuje pro tato data adresář kontaktů"
The Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking.]]>
</description>
<version>7.10.0</version>
<version>7.11.0</version>
<licence>agpl</licence>
<author>Julius Härtl</author>
<namespace>Dashboard</namespace>
@@ -22,7 +22,7 @@ The Nextcloud Dashboard is your starting point of the day, giving you an overvie
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking.":"ابدأ يومك على اطِّلاع. \n\nتُعدُّ لوحة المعلومات dashboard في نكست كلاود هي نقطة البداية لليوم. إذ هي تُوفِّر لك نظرة عامة على مواعيدك القادمة و رسائل بريدك العاجلة و رسائل الدردشة و التذاكر الواردة و أحدث التغريدات و غير ذلك الكثير! يُمكِن للمستخدِم إضافة الأدوات التي يحبها و تغيير الخلفية حسب رغبته.",
"\"{title} icon\"":"\"{title} أيقونة\"",
"Customize":"تعديل",
"Edit widgets":"تعديل أدوات الصفحة الرئيسية",
"Edit widgets":"تعديل الودجات",
"Get more widgets from the App Store":"يمكنك الحصول على المزيد من الأدوات من متجر التطبيقات",
"Weather service":"خدمة الطقس",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"للحفاظ على خصوصيتك، يتم استدعاء بيانات حالة الطقس عبر خادم NextCloud الخاص بك نيابه عنك، وبالتالي فإن خدمة حالة الطقس لا تشارك معلوماتك الشخصية.",
@@ -21,7 +21,7 @@ OC.L10N.register(
"Good afternoon, {name}":"مساء الخير، {name}",
"Good evening":"مساء الخير",
"Good evening, {name}":"مساء الخير، {name}",
"Hello":"مرحباً",
"Hello":"مرحبا",
"Hello, {name}":"أهلا، {name} ",
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! Users can add the widgets they like and change the background to their liking.":"إبدأ يومك بالاطلاع على ما يهمّك\n\nلوحة قيادة نكست كلاود هي نقطة البداية ليومك؛\nتعطيك لمحة عن مواعيدك القادمة و الرسائل المستعجلة و المحادثات الواردة و تذاكر طلب المساعدة المعلقة و آخر التغريدات و الكثير غيرها!\nيمكنك أن تضيف أدوات أخرى ترغبها\nكما يمكنك تغيير مظهر و خلفية اللوحة كما تريد. "
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking.":"ابدأ يومك على اطِّلاع. \n\nتُعدُّ لوحة المعلومات dashboard في نكست كلاود هي نقطة البداية لليوم. إذ هي تُوفِّر لك نظرة عامة على مواعيدك القادمة و رسائل بريدك العاجلة و رسائل الدردشة و التذاكر الواردة و أحدث التغريدات و غير ذلك الكثير! يُمكِن للمستخدِم إضافة الأدوات التي يحبها و تغيير الخلفية حسب رغبته.",
"\"{title} icon\"":"\"{title} أيقونة\"",
"Customize":"تعديل",
"Edit widgets":"تعديل أدوات الصفحة الرئيسية",
"Edit widgets":"تعديل الودجات",
"Get more widgets from the App Store":"يمكنك الحصول على المزيد من الأدوات من متجر التطبيقات",
"Weather service":"خدمة الطقس",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"للحفاظ على خصوصيتك، يتم استدعاء بيانات حالة الطقس عبر خادم NextCloud الخاص بك نيابه عنك، وبالتالي فإن خدمة حالة الطقس لا تشارك معلوماتك الشخصية.",
@@ -19,7 +19,7 @@
"Good afternoon, {name}":"مساء الخير، {name}",
"Good evening":"مساء الخير",
"Good evening, {name}":"مساء الخير، {name}",
"Hello":"مرحباً",
"Hello":"مرحبا",
"Hello, {name}":"أهلا، {name} ",
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! Users can add the widgets they like and change the background to their liking.":"إبدأ يومك بالاطلاع على ما يهمّك\n\nلوحة قيادة نكست كلاود هي نقطة البداية ليومك؛\nتعطيك لمحة عن مواعيدك القادمة و الرسائل المستعجلة و المحادثات الواردة و تذاكر طلب المساعدة المعلقة و آخر التغريدات و الكثير غيرها!\nيمكنك أن تضيف أدوات أخرى ترغبها\nكما يمكنك تغيير مظهر و خلفية اللوحة كما تريد. "
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking.":"Začněte svůj den informovaní\n\nNextcloud Nástěnka je váš úvodní bod dne, který vám podává přehled\nnadcházejících schůzek, neodkladných e-mailů, zpráv v chatech, příchozích\npožadavků, nejnovějších tweetů a mnoha dalšího! Lidé si\nmohou přidávat ovládací prvky, které chtějí a měnit pozadí dle své libosti.",
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking.":"Začněte svůj den informovaní\n\nNextcloud Nástěnka je váš úvodní bod dne, který vám podává přehled\nnadcházejících schůzek, neodkladných e-mailů, zpráv v chatech, příchozích\npožadavků, nejnovějších tweetů a mnoha dalšího! Lidé si\nmohou přidávat ovládací prvky, které chtějí a měnit pozadí dle své libosti.",
"In %1$s %2$s on %3$s for the entire day":"عند %1$s %2$s في %3$s كامل اليوم",
"In %1$s %2$s on %3$s between %4$s - %5$s":"عند %1$s %2$s في %3$s بين %4$s - %5$s",
"Could not generate when statement":"يتعذّر تكوين عبارة \"متى\"",
"Every Day for the entire day":"كل يوم لكامل اليوم",
"Every Day for the entire day":"كل يوم كامل اليوم",
"Every Day for the entire day until %1$s":"كل يوم كامل اليوم حتى %1$s",
"Every Day between %1$s - %2$s":"كل يوم بين%1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s":"كل يوم بين %1$s - %2$s حتى %3$s",
"Every %1$d Days for the entire day":"كل أيام %1$d لكامل اليوم",
"Every %1$d Days for the entire day":"كل أيام %1$d كامل اليوم",
"Every %1$d Days for the entire day until %2$s":"كل أيام %1$d كل اليوم حتى %2$s",
"Every %1$d Days between %2$s - %3$s":"كل أيام %1$d بين %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s":"كل أيام %1$d بين %2$s - %3$s حتى %4$s",
@@ -195,23 +195,22 @@ OC.L10N.register(
"{actor} updated contact {card} in address book {addressbook}":"{actor} قام بتحديث جهة الاتصال {card} في دفتر العناوين {addressbook}",
"You updated contact {card} in address book {addressbook}":"أنت قمت بتحديث جهة الاتصال {card} في دفتر العناوين {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified":"تمّ تعديل <strong>جهة الاتصال</strong> أو <strong>دفتر العناوين</strong> ",
"Accounts":"الحسابات",
"System address book which holds all accounts":"دفتر عناوين النظام الذي يحتوي على جميع الحسابات",
"Accounts":"حسابات",
"System address book which holds all accounts":"دفتر عناوين النظام الذي يحوي كل الحسابات",
"File is not updatable: %1$s":"ملف غير قابل للتعديل: %1$s",
"Failed to get storage for file":"تعذّر الحصول على مكان لتخزين الملف",
"Could not write to final file, canceled by hook":"تعذرت الكتابة إلى الملف النهائي، تم إلغاؤه بواسطة خطّاف hook",
"Could not write file contents":"تعذرت كتابة محتويات الملف",
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)":"حدث خطأ أثناء نسخ الملف إلى الموقع الهدف (تمّ نسخه: %1$s, حجم الملف المتوقع: %2$s)",
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)":"حدث خطأ أثناء نسخ الملف إلى الموقع المقصد (تمّ نسخه: %1$s, حجم الملف المتوقع: %2$s)",
"Expected filesize of %1$s but read (from Nextcloud client) and wrote (to Nextcloud storage) %2$s. Could either be a network problem on the sending side or a problem writing to the storage on the server side.":"الحجم المتوقع للملف هو %1$s؛ بينما المقروء من ( الجهاز العميل لنكست كلاود) و المكتوب في (تخزين نكست كلاود) هو %2$s. يمكن أن يكون السبب إمّا مشكلة اتصال في جانب الجهاز العميل أو مشكلة في الكتابة في وحدة التخزين في جانب خادوم نكست كلاود .",
"Could not rename part file to final file, canceled by hook":"تعذّرت إعادة تسمية ملف جزئي إلى ملف نهائي. تمّ الإلغاء من قِبَل الخطّاف hook.",
"Could not rename part file to final file":"تعذّرت إعادة تسمية ملف جزئي إلى ملف نهائي",
"Failed to check file size: %1$s":"فشل في تحديد حجم الملف: %1$s",
"Failed to check file size: %1$s":"إخفاق في تحديد حجم الملف: %1$s",
"Could not open file":"تعذّر فتح الملف",
"Encryption not ready: %1$s":"التشفير غير جاهز: %1$s",
"Failed to open file: %1$s":"تعذّر فتح الملف: %1$s",
"Failed to unlink: %1$s":"تعذّر فك الارتباط: %1$s",
"Failed to write file contents: %1$s":"فشل في كتابة محتويات الملف: %1$s",
"Failed to write file contents: %1$s":"إخفاق في كتابة محتويات الملف: %1$s",
"File not found: %1$s":"ملف غير موجود: %1$s",
"Invalid target path":"المسار الهدف غير صحيح",
"System is in maintenance mode.":"النظام في حالة صيانة.",
@@ -227,16 +226,16 @@ OC.L10N.register(
"DAV system address book":"دفتر عناوين نظام DAV",
"No outstanding DAV system address book sync.":"لا توجد أي مزامنات معلقة لدفتر عناوني نظام DAV.",
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\".":"لم يتم تشغيل مزامنة دفتر عناوين نظام DAV حتى الآن بسبب أن خادومك يحتوي على أكثر من 1000 مستخدم أو بسبب حدوث خطأ. يرجى تشغيل المزامنة يدويًا عن طريق الأمر السطري:\n\"occ dav:sync-system-addressbook\"",
"WebDAV endpoint":"النقطة النهائية endpoint لـ WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"تعذر التحقُّق من إعداد خادم الويب عندك بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV. يرجى التحقُّق يدوياً.",
"WebDAV endpoint":"النقطة الحدّيّة endpoint لـ WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"تعذر التحقُّق من إعداد خادوم الويب عندك بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV. يرجى التحقُّق يدوياً.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":" لم يتم تعيين السماح لخادمك السحابي بتزامن الملف، بسبب واجهة التأليف الموزع على الويب وتعيين الإصدار WebDAV غير متصلة.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"خادم الويب عندك مُهيّءٌ بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"خادوم الويب عندك مُهيّءٌ بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV.",
"Migrated calendar (%1$s)":"تقويم مُرحّل (%1$s)",
"Calendars including events, details and attendees":"تحوي التقاويم الأحداث، و تفاصيلها، و الحُضُور",
"Contacts and groups":"جهات الاتصال والمجموعات",
"WebDAV":"WebDAV",
"First day":"أول يوم",
"Last day (inclusive)":"آخر يوم (متضمن)",
"First day":"أوّل يومٍ",
"Last day (inclusive)":"آخر يوم (مشمولاً)",
"Out of office replacement (optional)":"البديل لمن هو خارج المكتب (إختياري)",
"Name of the replacement":"اسم البديل",
"No results.":"لا نتائج",
@@ -258,15 +257,15 @@ OC.L10N.register(
"Pick a start time for {dayName}":"إختَر وقت البدء ليوم {dayName}",
"Pick a end time for {dayName}":"إختَر وقت الانتهاء ليوم {dayName}",
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications.":"قم بتعيين حالة المستخدم تلقائيًا على \"عدم الإزعاج\" خارج نطاق أوقات التواجد لكتم جميع الإشعارات",
"Failed to load availability":"فشل في تحميل أوقات التواجد",
"Failed to load availability":"إخفاق في تحميل أوقات التواجد",
"Saved availability":"تمّ حفظ أوقات التواجد",
"Failed to save availability":"تعذّر حفظ أوقات التواجد",
"Availability":"أوقات التواجد ",
"If you configure your working hours, other people will see when you are out of office when they book a meeting.":"إذا قمت بضبط ساعات عملك، سيرى الآخرون متى تكون خارج المكتب عندما يقومون بحجز اجتماع معك.",
"Absence":"غياب",
"Configure your next absence period.":"تهيئة فترة غيابك القادمة.",
"Calendar server":"خادم التقويم",
"Send invitations to attendees":"إرسال دعوات للمطلوب حضورهم",
"Configure your next absence period.":"قٌم بتهيئة فترة غيابك القادمة.",
"Calendar server":"خادوم التقويم",
"Send invitations to attendees":"إرسال دعوات للمُستهدفين بالحُضُُور",
"Automatically generate a birthday calendar":"تجاهل تقويم أعياد الميلاد تلقائيّاً",
"Birthday calendars will be generated by a background job.":"تقويم أعياد الميلاد سيتم توليده من قِبَل مهمةٍ في الخلفية.",
"Hence they will not be available immediately after enabling but will show up after some time.":"ومن ثمّ لن تكون متاحةً فور التفعيل بل ستظهر بعد مرور بعض الوقت.",
@@ -274,9 +273,9 @@ OC.L10N.register(
"Notifications are sent via background jobs, so these must occur often enough.":"يتمّ إرسال الإشعارات من قِبَل مهمّةٍ في الخلفية. لذا سيتكرر عمل هذا المهام حسب الحاجة.",
"Send reminder notifications to calendar sharees as well":"أرسل إشعارات للتذكير إلى المشتركين بالتقويم كذلك",
"Reminders are always sent to organizers and attendees.":"إشعارات التذكير يتم إرسالها دائماً إلى مُنظّم أو مُنظّمي الحدث و المستهدفين بحضوره.",
"Enable notifications for events via push":"تمكين الإشعارات حول الأحداث عن طريق أسلوب دفع الإشعارات Push",
"Enable notifications for events via push":"تمكين الإشعارات حول الأحداث عبر الزّجّ push.",
"Also install the {calendarappstoreopen}Calendar app{linkclose}, or {calendardocopen}connect your desktop & mobile for syncing ↗{linkclose}.":"قم أيضاً بتنصيب {calendarappstoreopen} تطبيق التقويم {linkclose}, أو {calendardocopen} أوصل جهازك و موبايلك للمُزامنة ↗{linkclose}.",
"Please make sure to properly set up {emailopen}the email server{linkclose}.":"رجاءُ، تأكّد من الإعداد الصحيح لـ {emailopen} خادم البريد الالكتروني {linkclose}.",
"Please make sure to properly set up {emailopen}the email server{linkclose}.":"رجاءُ، تأكّد من الإعداد الصحيح لـ {emailopen} خادوم البريد الالكتروني {linkclose}.",
"There was an error updating your attendance status.":"حدث خطأ في تحديث حالة حضورك.",
"Please contact the organizer directly.":"يرجى الاتصال بالمنظم مباشرةً",
"Are you accepting the invitation?":"هل تقبل الدعوة؟",
"In %1$s %2$s on %3$s for the entire day":"عند %1$s %2$s في %3$s كامل اليوم",
"In %1$s %2$s on %3$s between %4$s - %5$s":"عند %1$s %2$s في %3$s بين %4$s - %5$s",
"Could not generate when statement":"يتعذّر تكوين عبارة \"متى\"",
"Every Day for the entire day":"كل يوم لكامل اليوم",
"Every Day for the entire day":"كل يوم كامل اليوم",
"Every Day for the entire day until %1$s":"كل يوم كامل اليوم حتى %1$s",
"Every Day between %1$s - %2$s":"كل يوم بين%1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s":"كل يوم بين %1$s - %2$s حتى %3$s",
"Every %1$d Days for the entire day":"كل أيام %1$d لكامل اليوم",
"Every %1$d Days for the entire day":"كل أيام %1$d كامل اليوم",
"Every %1$d Days for the entire day until %2$s":"كل أيام %1$d كل اليوم حتى %2$s",
"Every %1$d Days between %2$s - %3$s":"كل أيام %1$d بين %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s":"كل أيام %1$d بين %2$s - %3$s حتى %4$s",
@@ -193,23 +193,22 @@
"{actor} updated contact {card} in address book {addressbook}":"{actor} قام بتحديث جهة الاتصال {card} في دفتر العناوين {addressbook}",
"You updated contact {card} in address book {addressbook}":"أنت قمت بتحديث جهة الاتصال {card} في دفتر العناوين {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified":"تمّ تعديل <strong>جهة الاتصال</strong> أو <strong>دفتر العناوين</strong> ",
"Accounts":"الحسابات",
"System address book which holds all accounts":"دفتر عناوين النظام الذي يحتوي على جميع الحسابات",
"Accounts":"حسابات",
"System address book which holds all accounts":"دفتر عناوين النظام الذي يحوي كل الحسابات",
"File is not updatable: %1$s":"ملف غير قابل للتعديل: %1$s",
"Failed to get storage for file":"تعذّر الحصول على مكان لتخزين الملف",
"Could not write to final file, canceled by hook":"تعذرت الكتابة إلى الملف النهائي، تم إلغاؤه بواسطة خطّاف hook",
"Could not write file contents":"تعذرت كتابة محتويات الملف",
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)":"حدث خطأ أثناء نسخ الملف إلى الموقع الهدف (تمّ نسخه: %1$s, حجم الملف المتوقع: %2$s)",
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)":"حدث خطأ أثناء نسخ الملف إلى الموقع المقصد (تمّ نسخه: %1$s, حجم الملف المتوقع: %2$s)",
"Expected filesize of %1$s but read (from Nextcloud client) and wrote (to Nextcloud storage) %2$s. Could either be a network problem on the sending side or a problem writing to the storage on the server side.":"الحجم المتوقع للملف هو %1$s؛ بينما المقروء من ( الجهاز العميل لنكست كلاود) و المكتوب في (تخزين نكست كلاود) هو %2$s. يمكن أن يكون السبب إمّا مشكلة اتصال في جانب الجهاز العميل أو مشكلة في الكتابة في وحدة التخزين في جانب خادوم نكست كلاود .",
"Could not rename part file to final file, canceled by hook":"تعذّرت إعادة تسمية ملف جزئي إلى ملف نهائي. تمّ الإلغاء من قِبَل الخطّاف hook.",
"Could not rename part file to final file":"تعذّرت إعادة تسمية ملف جزئي إلى ملف نهائي",
"Failed to check file size: %1$s":"فشل في تحديد حجم الملف: %1$s",
"Failed to check file size: %1$s":"إخفاق في تحديد حجم الملف: %1$s",
"Could not open file":"تعذّر فتح الملف",
"Encryption not ready: %1$s":"التشفير غير جاهز: %1$s",
"Failed to open file: %1$s":"تعذّر فتح الملف: %1$s",
"Failed to unlink: %1$s":"تعذّر فك الارتباط: %1$s",
"Failed to write file contents: %1$s":"فشل في كتابة محتويات الملف: %1$s",
"Failed to write file contents: %1$s":"إخفاق في كتابة محتويات الملف: %1$s",
"File not found: %1$s":"ملف غير موجود: %1$s",
"Invalid target path":"المسار الهدف غير صحيح",
"System is in maintenance mode.":"النظام في حالة صيانة.",
@@ -225,16 +224,16 @@
"DAV system address book":"دفتر عناوين نظام DAV",
"No outstanding DAV system address book sync.":"لا توجد أي مزامنات معلقة لدفتر عناوني نظام DAV.",
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\".":"لم يتم تشغيل مزامنة دفتر عناوين نظام DAV حتى الآن بسبب أن خادومك يحتوي على أكثر من 1000 مستخدم أو بسبب حدوث خطأ. يرجى تشغيل المزامنة يدويًا عن طريق الأمر السطري:\n\"occ dav:sync-system-addressbook\"",
"WebDAV endpoint":"النقطة النهائية endpoint لـ WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"تعذر التحقُّق من إعداد خادم الويب عندك بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV. يرجى التحقُّق يدوياً.",
"WebDAV endpoint":"النقطة الحدّيّة endpoint لـ WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"تعذر التحقُّق من إعداد خادوم الويب عندك بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV. يرجى التحقُّق يدوياً.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":" لم يتم تعيين السماح لخادمك السحابي بتزامن الملف، بسبب واجهة التأليف الموزع على الويب وتعيين الإصدار WebDAV غير متصلة.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"خادم الويب عندك مُهيّءٌ بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"خادوم الويب عندك مُهيّءٌ بالشكل الصحيح للسماح بمزامنة الملفات عبر WebDAV.",
"Migrated calendar (%1$s)":"تقويم مُرحّل (%1$s)",
"Calendars including events, details and attendees":"تحوي التقاويم الأحداث، و تفاصيلها، و الحُضُور",
"Contacts and groups":"جهات الاتصال والمجموعات",
"WebDAV":"WebDAV",
"First day":"أول يوم",
"Last day (inclusive)":"آخر يوم (متضمن)",
"First day":"أوّل يومٍ",
"Last day (inclusive)":"آخر يوم (مشمولاً)",
"Out of office replacement (optional)":"البديل لمن هو خارج المكتب (إختياري)",
"Name of the replacement":"اسم البديل",
"No results.":"لا نتائج",
@@ -256,15 +255,15 @@
"Pick a start time for {dayName}":"إختَر وقت البدء ليوم {dayName}",
"Pick a end time for {dayName}":"إختَر وقت الانتهاء ليوم {dayName}",
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications.":"قم بتعيين حالة المستخدم تلقائيًا على \"عدم الإزعاج\" خارج نطاق أوقات التواجد لكتم جميع الإشعارات",
"Failed to load availability":"فشل في تحميل أوقات التواجد",
"Failed to load availability":"إخفاق في تحميل أوقات التواجد",
"Saved availability":"تمّ حفظ أوقات التواجد",
"Failed to save availability":"تعذّر حفظ أوقات التواجد",
"Availability":"أوقات التواجد ",
"If you configure your working hours, other people will see when you are out of office when they book a meeting.":"إذا قمت بضبط ساعات عملك، سيرى الآخرون متى تكون خارج المكتب عندما يقومون بحجز اجتماع معك.",
"Absence":"غياب",
"Configure your next absence period.":"تهيئة فترة غيابك القادمة.",
"Calendar server":"خادم التقويم",
"Send invitations to attendees":"إرسال دعوات للمطلوب حضورهم",
"Configure your next absence period.":"قٌم بتهيئة فترة غيابك القادمة.",
"Calendar server":"خادوم التقويم",
"Send invitations to attendees":"إرسال دعوات للمُستهدفين بالحُضُُور",
"Automatically generate a birthday calendar":"تجاهل تقويم أعياد الميلاد تلقائيّاً",
"Birthday calendars will be generated by a background job.":"تقويم أعياد الميلاد سيتم توليده من قِبَل مهمةٍ في الخلفية.",
"Hence they will not be available immediately after enabling but will show up after some time.":"ومن ثمّ لن تكون متاحةً فور التفعيل بل ستظهر بعد مرور بعض الوقت.",
@@ -272,9 +271,9 @@
"Notifications are sent via background jobs, so these must occur often enough.":"يتمّ إرسال الإشعارات من قِبَل مهمّةٍ في الخلفية. لذا سيتكرر عمل هذا المهام حسب الحاجة.",
"Send reminder notifications to calendar sharees as well":"أرسل إشعارات للتذكير إلى المشتركين بالتقويم كذلك",
"Reminders are always sent to organizers and attendees.":"إشعارات التذكير يتم إرسالها دائماً إلى مُنظّم أو مُنظّمي الحدث و المستهدفين بحضوره.",
"Enable notifications for events via push":"تمكين الإشعارات حول الأحداث عن طريق أسلوب دفع الإشعارات Push",
"Enable notifications for events via push":"تمكين الإشعارات حول الأحداث عبر الزّجّ push.",
"Also install the {calendarappstoreopen}Calendar app{linkclose}, or {calendardocopen}connect your desktop & mobile for syncing ↗{linkclose}.":"قم أيضاً بتنصيب {calendarappstoreopen} تطبيق التقويم {linkclose}, أو {calendardocopen} أوصل جهازك و موبايلك للمُزامنة ↗{linkclose}.",
"Please make sure to properly set up {emailopen}the email server{linkclose}.":"رجاءُ، تأكّد من الإعداد الصحيح لـ {emailopen} خادم البريد الالكتروني {linkclose}.",
"Please make sure to properly set up {emailopen}the email server{linkclose}.":"رجاءُ، تأكّد من الإعداد الصحيح لـ {emailopen} خادوم البريد الالكتروني {linkclose}.",
"There was an error updating your attendance status.":"حدث خطأ في تحديث حالة حضورك.",
"Please contact the organizer directly.":"يرجى الاتصال بالمنظم مباشرةً",
"Are you accepting the invitation?":"هل تقبل الدعوة؟",
"Failed to unlink: %1$s":"Nepodařilo se zrušit propojení: %1$s",
"Failed to write file contents: %1$s":"Nepodařilo se zapsat obsahy souborů: %1$s",
"File not found: %1$s":"Soubor nenalezen: %1$s",
"Invalid target path":"Neplatný popis umístění cíle",
"System is in maintenance mode.":"Systém se právě nachází v režimu údržby.",
"Upgrade needed":"Je třeba přejít na novější verzi",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS.":"Váš %s potřebuje být nastavený aby používal HTTPS, aby bylo možné používat CalDAV a CardDAV s iOS/macOS.",
@@ -228,19 +170,13 @@ OC.L10N.register(
"No outstanding DAV system address book sync.":"Žádná zbývající synchronizace systémového DAV adresáře kontaktů.",
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\".":"DAV synchronizace systémového adresáře kontaktů ještě nebyla spuštěná protože vámi využívaná instance má více než 1 000 uživatelů nebo protože došlo k chybě. Spusťte ji ručně příkazem „occ dav:sync-system-addressbook“.",
"WebDAV endpoint":"WebDAV endpoint",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Nepodařilo se zkontrolovat že vámi využívaný webový server je správně nastaven tak, aby umožňoval synchronizaci přes WebDAV. Zkontrolujte to ručně.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV pravděpodobně není funkční.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Vámi využívaný webový server je správně nastaven pro umotnění synchronizace souborů přes WebDAV",
"Calendars including events, details and attendees":"Kalendáře včetně událostí, podrobností a účastníků",
"Contacts and groups":"Kontakty a skupiny",
"WebDAV":"WebDAV",
"First day":"První den",
"Last day (inclusive)":"Poslední den (včetně)",
"Out of office replacement (optional)":"Zástup když mimo kancelář (volitelné)",
"Name of the replacement":"Jméno zástupu",
"No results.":"Nic nenalezeno.",
"Start typing.":"Začněte psát.",
"Short absence status":"Stav krátké nepřítomnosti",
"Long absence Message":"Zpráva pro dlouhou nepřítomnost",
"Save":"Uložit",
@@ -254,7 +190,6 @@ OC.L10N.register(
"Delete slot":"Smazat slot",
"No working hours set":"Nenastaveny pracovní hodiny",
"Add slot":"Přidat slot",
"Weekdays":"Dny v týdnu",
"Pick a start time for {dayName}":"Vyberte začátek pro {dayName}",
"Pick a end time for {dayName}":"Vyberte konec pro {dayName}",
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications.":"V době, kdy není k dispozici, automaticky nastavit stav uživatele jako „Nerušit“ a ztlumit tak veškerá upozornění pro něho.",
@@ -262,7 +197,6 @@ OC.L10N.register(
"Saved availability":"Uložena dostupnost",
"Failed to save availability":"Nepodařilo se uložit dostupnost",
"Availability":"Dostupnost",
"If you configure your working hours, other people will see when you are out of office when they book a meeting.":"Když sem zadáte svou pracovní dobu, ostatní lidé při rezervování schůzky uvidí, kdy jste mimo kancelář.",
"Absence":"Nepřítomnost",
"Configure your next absence period.":"Nastavte období své nepřítomnosti.",
"Failed to unlink: %1$s":"Nepodařilo se zrušit propojení: %1$s",
"Failed to write file contents: %1$s":"Nepodařilo se zapsat obsahy souborů: %1$s",
"File not found: %1$s":"Soubor nenalezen: %1$s",
"Invalid target path":"Neplatný popis umístění cíle",
"System is in maintenance mode.":"Systém se právě nachází v režimu údržby.",
"Upgrade needed":"Je třeba přejít na novější verzi",
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS.":"Váš %s potřebuje být nastavený aby používal HTTPS, aby bylo možné používat CalDAV a CardDAV s iOS/macOS.",
@@ -226,19 +168,13 @@
"No outstanding DAV system address book sync.":"Žádná zbývající synchronizace systémového DAV adresáře kontaktů.",
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\".":"DAV synchronizace systémového adresáře kontaktů ještě nebyla spuštěná protože vámi využívaná instance má více než 1 000 uživatelů nebo protože došlo k chybě. Spusťte ji ručně příkazem „occ dav:sync-system-addressbook“.",
"WebDAV endpoint":"WebDAV endpoint",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Nepodařilo se zkontrolovat že vámi využívaný webový server je správně nastaven tak, aby umožňoval synchronizaci přes WebDAV. Zkontrolujte to ručně.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV pravděpodobně není funkční.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Vámi využívaný webový server je správně nastaven pro umotnění synchronizace souborů přes WebDAV",
"Calendars including events, details and attendees":"Kalendáře včetně událostí, podrobností a účastníků",
"Contacts and groups":"Kontakty a skupiny",
"WebDAV":"WebDAV",
"First day":"První den",
"Last day (inclusive)":"Poslední den (včetně)",
"Out of office replacement (optional)":"Zástup když mimo kancelář (volitelné)",
"Name of the replacement":"Jméno zástupu",
"No results.":"Nic nenalezeno.",
"Start typing.":"Začněte psát.",
"Short absence status":"Stav krátké nepřítomnosti",
"Long absence Message":"Zpráva pro dlouhou nepřítomnost",
"Save":"Uložit",
@@ -252,7 +188,6 @@
"Delete slot":"Smazat slot",
"No working hours set":"Nenastaveny pracovní hodiny",
"Add slot":"Přidat slot",
"Weekdays":"Dny v týdnu",
"Pick a start time for {dayName}":"Vyberte začátek pro {dayName}",
"Pick a end time for {dayName}":"Vyberte konec pro {dayName}",
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications.":"V době, kdy není k dispozici, automaticky nastavit stav uživatele jako „Nerušit“ a ztlumit tak veškerá upozornění pro něho.",
@@ -260,7 +195,6 @@
"Saved availability":"Uložena dostupnost",
"Failed to save availability":"Nepodařilo se uložit dostupnost",
"Availability":"Dostupnost",
"If you configure your working hours, other people will see when you are out of office when they book a meeting.":"Když sem zadáte svou pracovní dobu, ostatní lidé při rezervování schůzky uvidí, kdy jste mimo kancelář.",
"Absence":"Nepřítomnost",
"Configure your next absence period.":"Nastavte období své nepřítomnosti.",
"System address book which holds all accounts":"Caderno de enderezos do sistema que contén todas as contas",
"File is not updatable: %1$s":"Non é posíbel actualizar o ficheiro: %1$s",
"Failed to get storage for file":"Produciuse un fallo ao obter o almacenamento para o ficheiro",
"Could not write to final file, canceled by hook":"Non foi posíbel escribir no ficheiro final, foi cancelado polo sistema",
"Could not write file contents":"Non foi posíbel escribir o contido do ficheiro",
"_%n byte_::_%n bytes_":["%n byte","%n bytes"],
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.