Similar case as with operator plugins (check previous commit). Although we
are not aware of an existign problem, it is there in principle, and
asjusting the API we stay consistent with that one from the operations.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
solves an incompatibility issue when the providing app registers their code
from an incompatible nextcloud-vue version.
Also changes and clarifies WorkflowEngine API. This is necessary to stay
compatible with the original way, but also promotes usage of the originally
declared but never used "component" attribute on registration.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
- forbidden names and forbidden base names are case **insensitive**
so we need to check all lowercase here.
- add test that config value is also read case insensitive.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Fixes "Object for placeholder file is invalid, value 21 for key id is not a string"
Exception spotted in tests logs.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
If several people are watching and seeking the same video file we do not
want the cache key to be the same or it would flood activity again.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Remove duplicate activity publishing from share controller download,
listen to BeforeZipCreatedEvent to publish activity for folders, and
cache folders activity to avoid sending activity for each file in the
folder.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
The users endpoint is not available for other users if the current user
has no admin privileges, so instead use the displaynames endpoint.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Suppress errors in imagescale during file-scans:
Most of these errors are caused by out of range x/y-dims.
Triggering un unhandled exception, metadata-generation aborts at this point (e.g. occ files:scan --generate-metadata), effectively preventing these images from being added to photos or maps.
This problem might be the root cause for an issue described here:
https://github.com/nextcloud/photos/issues/2768
Signed-off-by: umgfoin <umgfoin@users.noreply.github.com>
This commit changes the CSRF error message displayed in the login form to
provide more specific information to the user. Instead of the generic less helpful error.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
When the public key feature is disabled null is returned for
`publicKey`. So in this case we need to adjust the capabilities
and return type of `jsonSerialize()`.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
It is needed, e.g. for the note-to-recipient, that the headers
are also shown when there is no content (yet).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Remove some hacks from files app about the *files_sharing* status
action, in general not sure why this hack was there instead of being in
the correct app - but it broke the grid view.
So now the sharing information is also available in grid view.
Moreover the icon is fixed in size to not overflow the actions menu.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. do not rely on magic string but use constant ID for trashbin view
2. add unit tests for restore action
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. correctly return null instead of void in empty trash action
2. use constant instead of magic value for action ID
3. add unit tests for empty trash action
4. add unit tests for trashbin api
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. Refactor to make code better testable (move columns and view source to `files_views` folder)
2. Fix deletion time fallback (JS Date vs unix timestamp for
"delted"-column)
3. Correctly sort `deletedBy` and `originalLocation` columns to use
natural sort like any other column
4. Add unit tests for columns and views
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. mimetypes with a dot do not work with our mime detector (only checks
last dot).
2. all of those files are tar files compressed as gzip / bzip2 so the
real mimetype of the file is the compression not the tar.
We could at max. set mime to `application/x-tar+gzip`.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
A recent change had broken authentication with an older
FastCGI Apache2 module, because the IRequest object got
initialised before the fix from self::handleAuthHeaders()
copied the authentication headers into the correct $_SERVER
variables.
Since this part is completely independent from any Nextcloud
code it is now done as a first thing within the init() call.
Additionally similar issues could happen when another class
would boot too early and read other global PHP settings like
ini values and default timezone, so those are now also moved
to the beginning.
Signed-off-by: Joas Schilling <coding@schilljs.com>
Single file shares use the share token as source name, so we need to use
the displayname. To do so we need to set the download attribute to the
displayname of the file to download.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
1. Move general files delete action (thats not trashbin app!) to files
tests.
2. Delete files (move to trashbin) before loading the page so previews
are not generated so they cannot lock the file.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* Missing pieces of https://github.com/nextcloud/server/issues/46528
* Add checkbox to not show this dialog again
* Add user config as suggested by designers in files settings to
reenable or diable this behavior.
* Fix behavior of dialog: It says "keep .ext" but it does not keep the
extension but cancels the operation. From the button label the user
expects that the operation is continued but with the old extension.
* Added more test coverage by adding component tests.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The backend does not allow bulk download within the trashbin,
so we need to disable this also on the frontend.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
`reset` could be called before the filters are mounted,
in this case it is valid to update the presets, but we must not try to
access the vue instance (as it does not exist yet).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Due to commit 33d7019 session.cookie_secure=true is not set when accessing /status.php.
This results in a degration from A+ to A rating due to missing __Host prefix for nc_sameSiteCookielax and nc_sameSiteCookiestrict cookies.
If the stream is aborted and the callback wrapper returns false (or
null as it happened in some cases), we should not try to write to the
storage but abort the operation.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
When using nested groups without a memberof overlay, then fetchListOfGroups is called from getGroupsByMember without applying the group filter.
In some setups, the "unfiltered" result is then written back to the group mapping table. That might cause random "An administrator removed you from group" activities.
I was unable to replicate it locally, but we got the feedback that the random activities stopped with the patch applied.
Ref: https://github.com/nextcloud/server/issues/42195
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Sessions created during the login flow v2 should be short lived to not leave an unexpected opened session in the browser.
This commit add a property to the session object to track its origin, and will close it as soon as possible, i.e., on the first non public page request.
Signed-off-by: Louis Chemineau <louis@chmn.me>
The `array_diff` is not comparing the array keys. This means that an extra key with an expected hash will not be reported. Using `array_diff_assoc` will report such files.
For example, copying `status.php` to `status 2.php`, will only be reported with the new version.
Signed-off-by: Louis Chemineau <louis@chmn.me>
Replace `ValidatePhoneNumber` from Nextcloud 21 with a new repair step,
`ValidateAccountProperties` which validates and sanitizes all account
properties.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Since we use the files app also for public shares it is not guaranteed
that there is a user logged in, in that case the update for user / view
config will fail.
So ensure there is a user or do not send a request.
Also refactor both stores to setup styles to fix (remove) initialization hack,
which causes Typescript issues.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Since `ShareEntryLink` component is used to both create and display/list the share links,
we should only set default expiration date on `share.expireDate` when we know is a new share.
Otherwise, we overidding data from the backend.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
Instead of downloading files, if there is no other default action,
we should just open the details tab.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
When a user receives a share with share-permissions but also with
download restrictions (hide download or the modern download permission attribute),
then re-shares of that share must always also include those restrictions.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The main providers come from both the backend and client side plugins such as `in-folder` search.
The main providers may carry callbacks functions and other information that should be passed to the `filteredProviders`.
This is important because the current code does not make a distinction between `filteredProviders` and `providers`
rightly so, becuase they are the same thing!
Without the mentioned distinction above, sooner or later, we try to access a property on the `filteredProviders` which we
did not transfer with the manual property copy.
----
This fix prevents in-folder search from searching everywhere when "load more results" is clicked; Essentially ignoring the in-folder
search filter.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
This commit introduces end-to-end tests for various public link sharing scenarios in the `files_sharing` app. It validates the behavior under multiple configurations:
- Password and expiration date enforced
- Password enforced with a default expiration date
- Expiration date enforced with optional password
- Default password and expiration date without enforcement
- Password enforced, expiration date set but not enforced
- Both password and expiration date not enforced, but defaults set
- Password not enforced, expiration date enforced
- Password not enforced, default expiration date set
- Password and expiration date not enforced with no defaults
The tests ensure proper validation and functionality of the configurations, leveraging the `setupData` and `createShare` utilities.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
This update enhances the testing framework for public sharing by
improving the setup and management of share contexts.
It refactors the code to make the `createShare` function reusable externally,
ensuring better testability and flexibility.
Additionally, the update optimizes share permission adjustments and
improves state management, making public share setups more efficient and maintainable.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
- Clarify that enabling server side encryption will not encrypt
existing files but only new or changed files.
- Clarify that server side encryption can only be disabled using OCC
- Ensure there is accessible information of encryption state (`disabled`
input will not be announced so make it `aria-disabled` instead)
- Make warning more prominent by moving it into a dialog
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The client-side plugin `in-folder` uses the `files` provider, this makes it
overlap with the main files provider itself.
This change follows eecda06f1a after it was discovered
that some apps/providers like `dav` use providers from another app like `contacts`
Signed-off-by: nfebe <fenn25.fn@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Just need to add the parameter and fix two calls. All other logic is already implemented and implicitly called through the S3ConnectionTrait
fixes#33283
Signed-off-by: Christian Becker <christian@dabecka.de>
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
Each provider may search from a particular app so we should use that for searching.
Before this commit, we used `provider.id` instead of `provider.appId` the problem with the previous
approach is that it forces the provider id to be a valid search provider (an app that supports search)
limiting the developers ability to use unique IDs to identify the different providers (especially plugin providers)
inside the places filter.
For example the Files search plugin "In folder" (search in folder plugin) was required to have id as `files` while the
files provider itself already has id as `files`.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
Previously, the share owner notification email did not display the recipient email addresses,
making it difficult for the owner to know who the share was sent to.
This fix ensures that the recipient email addresses are included in the notification email.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
Improve blurhash performance by using a low res image.
The results are hard to destinguish visualy.
It is a **blur** hash after all.
Signed-off-by: Max <max@nextcloud.com>
This prevent restored version of encrypted files from having a wrong reported size. This was blocking download.
Signed-off-by: Louis Chemineau <louis@chmn.me>
Given:
User creates a link or email share with permissions=4 (create only = file drop).
Problem:
Currently the permissions are automatically extended to permissions = 5
(READ + CREATE). Work around was to create the share and directly update
it.
Solution:
Respect what the user is requesting, create a file drop share.
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
If `ignore-missing-user` all sub commands work, except listing all settings
for a user like `occ user:settings --ignore-missing-user user core`.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Ensure that the if a preview is available the maximum sizes are
respected (clickable area).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
When nesting is enabled, filterValidGroups is supposed to check for each
groups if it actually exist, because it may not be visible to
Nextcloud. So in this codepath we disable automapping of groups.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Fixes#35936.
When running `OC\Preview\BackgroundCleanupJob`, the main iteration loop
in `run()` expects a folder, however, `getOldPreviewLocations()`
currently does not filter by mimetype and therefore can yield a
non-folder entry which causes an Exception when constructing the Folder
impl.
Filtering for `httpd/unix-directory`, as `getNewPreviewLocations()`
already does, fixes this issue.
Signed-off-by: Dario Mehlich <d.mehlich@gmail.com>
- Catch all thrown exceptions and handle in such a way you do not get
information about forbidden files.
- Resepect download permissions of shares.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The color extraction is handled by the backend nowadays, this was not
used by the backend anymore.
Reduce depdencies + compiled size + security warning on that dependency.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Primarily to move it out of the way for changes in the source location.
The feature was deprecated in version 25 (#28320), five versions ago.
Refs: #48925
Signed-off-by: nfebe <fenn25.fn@gmail.com>
@@ -58,7 +59,7 @@ There are many ways to contribute, of which development is only one! Find out [h
Third-party components are handled as git submodules which have to be initialized first. So aside from the regular git checkout invoking `git submodule update --init` or a similar command is needed, for details see Git documentation.
Several apps that are included by default in regular releases such as [First run wizard](https://github.com/nextcloud/firstrunwizard) or [Activity](https://github.com/nextcloud/activity) are missing in `master` and have to be installed manually by cloning them into the `apps` subfolder.
Several apps that are included by default in regular releases such as [First run wizard](https://github.com/nextcloud/firstrunwizard) or [Activity](https://github.com/nextcloud/activity) are missing in `stable31` and have to be installed manually by cloning them into the `apps` subfolder.
Otherwise, git checkouts can be handled the same as release archives, by using the `stable*` branches. Note they should never be used on production systems.
"<strong>Comments</strong> for files":"<strong>Comentários</strong> para arquivos",
"Files":"Arquivos",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Você foi mencionado em \"{file}\", em um comentário de uma conta que já foi excluída",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionou você em um comentário sobre \"{file}\"",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionou você em um comentário em \"{file}\"",
"Files app plugin to add comments to files":"Complemento do aplicativo Files para adicionar comentários",
"<strong>Comments</strong> for files":"<strong>Comentários</strong> para arquivos",
"Files":"Arquivos",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Você foi mencionado em \"{file}\", em um comentário de uma conta que já foi excluída",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionou você em um comentário sobre \"{file}\"",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionou você em um comentário em \"{file}\"",
"Files app plugin to add comments to files":"Complemento do aplicativo Files para adicionar comentários",
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.12.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.":"Alusta oma päeva teadlikult\n\nNextcloudi avaleht on su päeva alguspunkt, mis annab ülevaate eelseisvatest kohtumistest, kiireloomulistest kirjadest, vestlussõnumitest, sissetulevatest päringutest, viimastest säutsudest ja paljust muust! Inimesed saavad lisada neile meeldivaid vidinaid ja muuta tausta oma maitse järgi.",
"Dashboard":"Töölaud",
"Dashboard app":"Töölaua rakendus",
"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.":"Alustage oma päeva teadlikult\n\nNextcloudi avaleht on su päeva alguspunkt, mis annab ülevaate eelseisvatest kohtumistest, kiireloomulistest meilidest, vestlussõnumitest, sissetulevatest päringutest, viimastest säutsudest ja paljust muust! Inimesed saavad lisada neile meeldivaid vidinaid ja muuta tausta oma maitse järgi.",
"Weather":"Ilm",
"Status":"Olek",
"Status":"Staatus",
"Good morning":"Tere hommikust",
"Good morning, {name}":"Tere hommikust, {name}",
"Good afternoon":"Tere päevast",
@@ -16,14 +16,14 @@ OC.L10N.register(
"Hello, {name}":"Tere, {name}",
"Happy birthday 🥳🤩🎂🎉":"Palju õnne sünnipäevaks 🥳🤩🎂🎉",
"Get more widgets from the App Store":"Hangi rohkem vidinaid Rakenduste Poest",
"Weather service":"Ilmateenus",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"Sinu privaatsuse huvides küsib su nimel ilmaandmeid Nextcloudi server, nii et ilmateenistus ei saa isiklikku teavet.",
"Weather data from Met.no":"Ilmaandmed Met.no-st",
"geocoding with Nominatim":"geoprogrammeerimine Nominatimiga",
"elevation data from OpenTopoData":"kõrgusandmed OpenTopoDatast"
"geocoding with Nominatim":"geoprogrammeerimine Nominatim-iga",
"elevation data from OpenTopoData":"kõrgusandmed OpenTopoData-st"
"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.":"Alusta oma päeva teadlikult\n\nNextcloudi avaleht on su päeva alguspunkt, mis annab ülevaate eelseisvatest kohtumistest, kiireloomulistest kirjadest, vestlussõnumitest, sissetulevatest päringutest, viimastest säutsudest ja paljust muust! Inimesed saavad lisada neile meeldivaid vidinaid ja muuta tausta oma maitse järgi.",
"Dashboard":"Töölaud",
"Dashboard app":"Töölaua rakendus",
"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.":"Alustage oma päeva teadlikult\n\nNextcloudi avaleht on su päeva alguspunkt, mis annab ülevaate eelseisvatest kohtumistest, kiireloomulistest meilidest, vestlussõnumitest, sissetulevatest päringutest, viimastest säutsudest ja paljust muust! Inimesed saavad lisada neile meeldivaid vidinaid ja muuta tausta oma maitse järgi.",
"Weather":"Ilm",
"Status":"Olek",
"Status":"Staatus",
"Good morning":"Tere hommikust",
"Good morning, {name}":"Tere hommikust, {name}",
"Good afternoon":"Tere päevast",
@@ -14,14 +14,14 @@
"Hello, {name}":"Tere, {name}",
"Happy birthday 🥳🤩🎂🎉":"Palju õnne sünnipäevaks 🥳🤩🎂🎉",
"Get more widgets from the App Store":"Hangi rohkem vidinaid Rakenduste Poest",
"Weather service":"Ilmateenus",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"Sinu privaatsuse huvides küsib su nimel ilmaandmeid Nextcloudi server, nii et ilmateenistus ei saa isiklikku teavet.",
"Weather data from Met.no":"Ilmaandmed Met.no-st",
"geocoding with Nominatim":"geoprogrammeerimine Nominatimiga",
"elevation data from OpenTopoData":"kõrgusandmed OpenTopoDatast"
"geocoding with Nominatim":"geoprogrammeerimine Nominatim-iga",
"elevation data from OpenTopoData":"kõrgusandmed OpenTopoData-st"
"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.":"Comece o dia informado \n\nO Painel do Nextcloud (Nextcloud Dashboard) é o seu ponto de partida do dia, oferecendo uma visão geral de seus próximos agendamentos, e-mails urgentes, mensagens de bate-papo, tickets recebidos, tweets mais recentes e muito mais! As pessoas podem adicionar os widgets que desejarem e alterar o plano de fundo de acordo com sua preferência.",
"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.":"Comece o dia informado \n\nO Nextcloud Dashboard é o seu ponto de partida do dia, oferecendo uma visão geral de seus próximos agendamentos, e-mails urgentes, mensagens de bate-papo, tickets recebidos, tweets mais recentes e muito mais! As pessoas podem adicionar os widgets que desejarem e alterar o plano de fundo de acordo com sua preferência.",
"Get more widgets from the App Store":"Obtenha mais widgets na Loja de Aplicativos",
"Get more widgets from the App Store":"Obtenha mais widgets na App Store",
"Weather service":"Serviço de Clima",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"Para sua privacidade, as informações de Tempo são solicitadas pelo servidor Nextcloud de forma que o serviço de Tempo não receba suas informações pessoais.",
"Weather data from Met.no":"Dados de Tempo do Met.no",
"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.":"Comece o dia informado \n\nO Painel do Nextcloud (Nextcloud Dashboard) é o seu ponto de partida do dia, oferecendo uma visão geral de seus próximos agendamentos, e-mails urgentes, mensagens de bate-papo, tickets recebidos, tweets mais recentes e muito mais! As pessoas podem adicionar os widgets que desejarem e alterar o plano de fundo de acordo com sua preferência.",
"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.":"Comece o dia informado \n\nO Nextcloud Dashboard é o seu ponto de partida do dia, oferecendo uma visão geral de seus próximos agendamentos, e-mails urgentes, mensagens de bate-papo, tickets recebidos, tweets mais recentes e muito mais! As pessoas podem adicionar os widgets que desejarem e alterar o plano de fundo de acordo com sua preferência.",
"Get more widgets from the App Store":"Obtenha mais widgets na Loja de Aplicativos",
"Get more widgets from the App Store":"Obtenha mais widgets na App Store",
"Weather service":"Serviço de Clima",
"For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information.":"Para sua privacidade, as informações de Tempo são solicitadas pelo servidor Nextcloud de forma que o serviço de Tempo não receba suas informações pessoais.",
"Weather data from Met.no":"Dados de Tempo do Met.no",
"The system address book contains contact information for all users in your instance.":"System adressebogen indeholder kontaktoplysninger for alle brugere i din instans.",
"Enable System Address Book":"Aktivér System adressebog",
"DAV system address book":"DAV system adressebog",
"No outstanding DAV system address book sync.":"Ingen udestående synkronisering af DAV-systemets adressebog.",
"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-systemets adressebogssynkronisering er ikke kørt endnu, da din instans har mere end 1000 brugere, eller fordi der opstod en fejl. Kør det manuelt ved at kalde \"occ dav:sync-system-addressbook\".",
@@ -309,16 +306,6 @@ OC.L10N.register(
"Cancel":"Annuller",
"Import":"Importer",
"Error while saving settings":"Der opstod en fejl under lagring af indstillinger",
"Contact reset successfully":"Kontakten blev nulstillet",
"Error while resetting contact":"Fejl under nulstilling af kontakt",
"Contact imported successfully":"Kontakten blev importeret",
"Error while importing contact":"Fejl under import af kontakt",
"Example Content":"Eksempelindhold",
"Set example content to be created on new user first login.":"Indstil eksempel på indhold, der skal oprettes ved ny brugers første login.",
"Import contact":"Importér kontakt",
"Reset to default contact":"Nulstil til standardkontakt",
"Import contacts":"Importér kontakter",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?":"Import af en ny .vcf-fil vil slette den eksisterende standardkontakt og erstatte den med den nye. Vil du fortsætte?",
"There was an error updating your attendance status.":"Der opstod en fejl under opdatering af din fremmødestatus.",
"Please contact the organizer directly.":"Kontakt venligst arrangøren direkte.",
"Are you accepting the invitation?":"Accepter du invitationen?",
"The system address book contains contact information for all users in your instance.":"System adressebogen indeholder kontaktoplysninger for alle brugere i din instans.",
"Enable System Address Book":"Aktivér System adressebog",
"DAV system address book":"DAV system adressebog",
"No outstanding DAV system address book sync.":"Ingen udestående synkronisering af DAV-systemets adressebog.",
"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-systemets adressebogssynkronisering er ikke kørt endnu, da din instans har mere end 1000 brugere, eller fordi der opstod en fejl. Kør det manuelt ved at kalde \"occ dav:sync-system-addressbook\".",
@@ -307,16 +304,6 @@
"Cancel":"Annuller",
"Import":"Importer",
"Error while saving settings":"Der opstod en fejl under lagring af indstillinger",
"Contact reset successfully":"Kontakten blev nulstillet",
"Error while resetting contact":"Fejl under nulstilling af kontakt",
"Contact imported successfully":"Kontakten blev importeret",
"Error while importing contact":"Fejl under import af kontakt",
"Example Content":"Eksempelindhold",
"Set example content to be created on new user first login.":"Indstil eksempel på indhold, der skal oprettes ved ny brugers første login.",
"Import contact":"Importér kontakt",
"Reset to default contact":"Nulstil til standardkontakt",
"Import contacts":"Importér kontakter",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?":"Import af en ny .vcf-fil vil slette den eksisterende standardkontakt og erstatte den med den nye. Vil du fortsætte?",
"There was an error updating your attendance status.":"Der opstod en fejl under opdatering af din fremmødestatus.",
"Please contact the organizer directly.":"Kontakt venligst arrangøren direkte.",
"Are you accepting the invitation?":"Accepter du invitationen?",
"Enable System Address Book":"Systemadressbuch aktivieren",
"DAV system address book":"DAV-Systemadressbuch",
"No outstanding DAV system address book sync.":"Keine ausstehende Synchronisierung des DAV-Systemadressbuchs",
"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\".":"Die Synchronisierung des DAV-Systemadressbuchs wurde noch nicht ausgeführt, da diese Instanz mehr als 1000 Benutzer hat oder weil ein Fehler aufgetreten ist. Bitte manuell ausführen, mittels \"occ dav:sync-system-addressbook\".",
"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\".":"Die Synchronisierung des DAV-Systemadressbuchs wurde noch nicht ausgeführt, da deine Instanz mehr als 1000 Benutzer hat oder weil ein Fehler aufgetreten ist. Bitte führe sie manuell aus, indem du \"occ dav:sync-system-addressbook\" ausführst.",
"WebDAV endpoint":"WebDAV-Endpunkt",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Es konnte nicht überprüft werden, ob der Webserver ordnungsgemäß eingerichtet ist, um Dateisynchronisation über WebDAV zu ermöglichen. Bitte dies manuell überprüfen.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Der Webserver ist noch nicht hinreichend für Datei-Synchronisierung konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Der Webserver ist ordnungsgemäß eingerichtet um Dateisynchronisation über WebDAV zu ermöglichen.",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Es konnte nicht überprüft werden, ob dein Webserver ordnungsgemäß eingerichtet ist, um Dateisynchronisation über WebDAV zu ermöglichen. Bitte überprüfe dies manuell.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Dein Webserver ist noch nicht hinreichend für Datei-Synchronisierung konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Dein Webserver ist ordnungsgemäß eingerichtet um Dateisynchronisation über WebDAV zu ermöglichen.",
"Enable System Address Book":"Systemadressbuch aktivieren",
"DAV system address book":"DAV-Systemadressbuch",
"No outstanding DAV system address book sync.":"Keine ausstehende Synchronisierung des DAV-Systemadressbuchs",
"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\".":"Die Synchronisierung des DAV-Systemadressbuchs wurde noch nicht ausgeführt, da diese Instanz mehr als 1000 Benutzer hat oder weil ein Fehler aufgetreten ist. Bitte manuell ausführen, mittels \"occ dav:sync-system-addressbook\".",
"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\".":"Die Synchronisierung des DAV-Systemadressbuchs wurde noch nicht ausgeführt, da deine Instanz mehr als 1000 Benutzer hat oder weil ein Fehler aufgetreten ist. Bitte führe sie manuell aus, indem du \"occ dav:sync-system-addressbook\" ausführst.",
"WebDAV endpoint":"WebDAV-Endpunkt",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Es konnte nicht überprüft werden, ob der Webserver ordnungsgemäß eingerichtet ist, um Dateisynchronisation über WebDAV zu ermöglichen. Bitte dies manuell überprüfen.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Der Webserver ist noch nicht hinreichend für Datei-Synchronisierung konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Der Webserver ist ordnungsgemäß eingerichtet um Dateisynchronisation über WebDAV zu ermöglichen.",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Es konnte nicht überprüft werden, ob dein Webserver ordnungsgemäß eingerichtet ist, um Dateisynchronisation über WebDAV zu ermöglichen. Bitte überprüfe dies manuell.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Dein Webserver ist noch nicht hinreichend für Datei-Synchronisierung konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Dein Webserver ist ordnungsgemäß eingerichtet um Dateisynchronisation über WebDAV zu ermöglichen.",
"{actor} created to-do {todo} in list {calendar}":"{actor} lisas {todo} ülesande {calendar} loendissse",
"You created to-do {todo} in list {calendar}":"Sina lisasid {todo} ülesande {calendar} loendisse",
"{actor} deleted to-do {todo} from list {calendar}":"{actor} kustutas {todo} ülesande {calendar} loendist",
"You deleted to-do {todo} from list {calendar}":"Sina kustutasid {todo} ülesande {calendar} loendist",
"{actor} updated to-do {todo} in list {calendar}":"{actor} uuendas {todo} ülesannnet {calendar} loendist",
"You updated to-do {todo} in list {calendar}":"Sina uuendasid {todo} ülesannet {calendar} loendist",
"{actor} solved to-do {todo} in list {calendar}":"{actor} lahendas {todo} ülesande {calendar} loendist",
"You solved to-do {todo} in list {calendar}":"Sina lahendasid {todo} ülesande {calendar} loendist",
"{actor} reopened to-do {todo} in list {calendar}":"{actor} avas uuesti {todo} ülesande {calendar} loendist",
"You reopened to-do {todo} in list {calendar}":"Sina avasid uuesti {todo} ülesande {calendar} loendist",
"{actor} moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}":"{actor} teisaldas {todo} ülesande {sourceCalendar} loendist {targetCalendar} loendisse",
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}":"Sina teisaldasid {todo} ülesande {sourceCalendar} loendist {targetCalendar} loendisse",
"Calendar, contacts and tasks":"Kalender, kontaktid ja ülesanded",
"{actor} created todo {todo} in list {calendar}":"{actor} lõi ülesande {todo} nimekirjas {calendar}",
"You created todo {todo} in list {calendar}":"Sa lõid ülesande {todo} nimekirjas {calendar}",
"{actor} deleted todo {todo} from list {calendar}":"{actor} kustutas ülesande {todo} nimekirjast {calendar}",
"You deleted todo {todo} from list {calendar}":"Sa kustutasid ülesande {todo} nimekirjast {calendar}",
"{actor} updated todo {todo} in list {calendar}":"{actor} uuendas ülesande {todo} nimekirjas {calendar}",
"You updated todo {todo} in list {calendar}":"Sa uuendasid ülesande {todo} nimekirjas {calendar}",
"{actor} solved todo {todo} in list {calendar}":"{actor} lõpetas ülesande {todo} nimekirjas {calendar}",
"You solved todo {todo} in list {calendar}":"Sa lõpetasid ülesande {todo} nimekirjas {calendar}",
"{actor} reopened todo {todo} in list {calendar}":"{actor} taasavas ülesande {todo} nimekirjas {calendar}",
"You reopened todo {todo} in list {calendar}":"Sa taasavasid ülesande {todo} nimekirjas {calendar}",
"A <strong>calendar</strong> was modified":" <strong>Kalendrit</strong> muudeti",
"A calendar <strong>event</strong> was modified":"Kalendri <strong>sündmust </strong> muudeti",
"A calendar <strong>to-do</strong> was modified":"Kalendri <strong>ülesannet</strong> muudeti",
"A calendar <strong>todo</strong> was modified":"Kalendri <strong>ülesannet</strong> muudeti",
"System address book which holds all accounts":"Süsteemne aadressiraamat, kus leiduvad kõik kasutajakontod",
"File is not updatable: %1$s":"Fail pole uuendatav: %1$s",
"Failed to get storage for file":"Failile ei õnnestunud eraldada andmeruumi",
"Could not write file contents":"Ei õnnestunud kirjutada faili sisu",
"_%n byte_::_%n bytes_":["%n bait","%n baiti"],
"Failed to check file size: %1$s":"Faili suuruse kontrollimine ei õnnestunud: %1$s",
"Could not open file: %1$s, file does seem to exist":"„%1$s“ faili avamine ei õnnestunud - aga tundub, et ta on olemas",
"Could not open file: %1$s, file doesn't seem to exist":"„%1$s“ faili avamine ei õnnestunud - tundub, et teda pole olemas",
"Encryption not ready: %1$s":"Krüptimine pole veel kasutatav: %1$s",
"Failed to open file: %1$s":"Faili avamine ei õnnestunud: %1$s",
"Failed to unlink: %1$s":"Lingi eemaldamine ei õnnestunud: %1$s",
"Failed to write file contents: %1$s":"Faili sisu salvestamine ei õnnestunud: %1$s",
"File not found: %1$s":"Faili ei leidu: %1$s",
"System is in maintenance mode.":"Server on hooldusrežiimis.",
"Upgrade needed":"Uuendus on vajalik",
"Configures a CalDAV account":"Seadistab CalDAV-i kasutajakonto",
"Configures a CardDAV account":"Seadistab CardDAV-i kasutajakonto",
"Events":"Sündmused",
"Untitled task":"Ilma nimeta pealkiri",
"Due on %s":"Tähtaeg: %s",
"System Address Book":"Süsteemne aadressiraamat",
"The system address book contains contact information for all users in your instance.":"Süsteemses aadressiraamatus leiduvad kõikde selle serveri kasutajate kontaktteave.",
"Enable System Address Book":"Kasuta süsteemset aadressiraamatut",
"DAV system address book":"DAV-i süsteemne aadressiraamat",
"WebDAV endpoint":"WebDAV-i teenuse otspunkt",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Ei õnnestunud kontrollida, kas sinu veebiserver on korrektselt seadistatud ja võimaldab kasutada failide sünkroniseerimist WebDAV-i vahendusel. Palun kontrolli seda käsitsi.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Sinu veebiserver pole veel failide sünkroniseerimiseks vajalikult seadistatud, kuna WebDAV liides paistab olevat katki.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Sinu veebiserver on korrektselt seadistatud ja võimaldab kasutada failide sünkroniseerimist WebDAV-i vahendusel.",
"Calendars including events, details and attendees":"Kalendrid, sealhulgas sündmused, üksikasjad ja osalejad",
"Contacts and groups":"Kontaktid ja grupid",
"Tasks":"Ülesanded",
"WebDAV":"WebDAV",
"Absence saved":"Äraoleku teave on salvestatud",
"Failed to save your absence settings":"Sinu äraoleku seadistuste salvestamine ei õnnestunud",
"Absence cleared":"Äraolek on eemaldatud",
"Failed to clear your absence settings":"Sinu äraoleku seadistuste eemaldamine ei õnnestunud",
"First day":"Esimene päev",
"Last day (inclusive)":"Viimane päev (kaasaarvatud)",
"No results.":"Vasteid ei leitud.",
"Start typing.":"Alusta kirjutamist.",
"Short absence status":"Äraoleku lühinimi",
"Long absence Message":"Äraoleku pikk sõnum",
"Save":"Salvesta",
"Disable absence":"Lülita äraolek välja",
"Failed to load availability":"Saadavuse laadimine ei õnnestunud",
"Saved availability":"Saadavus on salvestatud",
"Failed to save availability":"Saadavuse salvestamine ei õnnestunud",
"Time zone:":"Ajavöönd:",
"to":"saaja",
"Availability":"Saadavus",
"Absence":"Äraolek",
"Configure your next absence period.":"Seadista järgmise äraoleku ajavahemik.",
"Send invitations to attendees":"Saada osalejatele kutsed",
"Enable notifications for events via push":"Võta kasutusele tõuketeenustepõhised teavitused",
"Cancel":"Tühista",
"Import":"Impordi",
"Error while saving settings":"Viga seadistuste salvestamisel",
"Error while importing contact":"Viga kontakti importimisel",
"Example Content":"Sisunäidis",
"Set example content to be created on new user first login.":"Kirjelda näidissisu, mis uue kasutaja esimesel sisselogimisel luuakse.",
"Import contact":"Impordi kontakt",
"Reset to default contact":"Lähtesta vaikimisi kontakstiks",
"Import contacts":"Impordi kontaktid",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?":"Uue .vcf faili importimisel olemasolev vaikimisi kontakt kustutatakse ja asendatakse uuega. Kas sa soovid jätkata?",
"There was an error updating your attendance status.":"Sinu osalemise oleku muutmisel tekkis viga.",
"Please contact the organizer directly.":"Palun võta ühendust korraldajaga otse.",
"Are you accepting the invitation?":"Kas sa nõustud kutsega?",
"Tentative":"Esialgne",
"Your attendance was updated successfully.":"Sinu osalemise oleku muutmine õnnestus.",
"Time:":"Aeg:",
"Could not open file":"Ei õnnestunud avada faili"
"Save":"Salvesta",
"Send invitations to attendees":"Saada osalejatele kutsed",
"{actor} created to-do {todo} in list {calendar}":"{actor} lisas {todo} ülesande {calendar} loendissse",
"You created to-do {todo} in list {calendar}":"Sina lisasid {todo} ülesande {calendar} loendisse",
"{actor} deleted to-do {todo} from list {calendar}":"{actor} kustutas {todo} ülesande {calendar} loendist",
"You deleted to-do {todo} from list {calendar}":"Sina kustutasid {todo} ülesande {calendar} loendist",
"{actor} updated to-do {todo} in list {calendar}":"{actor} uuendas {todo} ülesannnet {calendar} loendist",
"You updated to-do {todo} in list {calendar}":"Sina uuendasid {todo} ülesannet {calendar} loendist",
"{actor} solved to-do {todo} in list {calendar}":"{actor} lahendas {todo} ülesande {calendar} loendist",
"You solved to-do {todo} in list {calendar}":"Sina lahendasid {todo} ülesande {calendar} loendist",
"{actor} reopened to-do {todo} in list {calendar}":"{actor} avas uuesti {todo} ülesande {calendar} loendist",
"You reopened to-do {todo} in list {calendar}":"Sina avasid uuesti {todo} ülesande {calendar} loendist",
"{actor} moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}":"{actor} teisaldas {todo} ülesande {sourceCalendar} loendist {targetCalendar} loendisse",
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}":"Sina teisaldasid {todo} ülesande {sourceCalendar} loendist {targetCalendar} loendisse",
"Calendar, contacts and tasks":"Kalender, kontaktid ja ülesanded",
"{actor} created todo {todo} in list {calendar}":"{actor} lõi ülesande {todo} nimekirjas {calendar}",
"You created todo {todo} in list {calendar}":"Sa lõid ülesande {todo} nimekirjas {calendar}",
"{actor} deleted todo {todo} from list {calendar}":"{actor} kustutas ülesande {todo} nimekirjast {calendar}",
"You deleted todo {todo} from list {calendar}":"Sa kustutasid ülesande {todo} nimekirjast {calendar}",
"{actor} updated todo {todo} in list {calendar}":"{actor} uuendas ülesande {todo} nimekirjas {calendar}",
"You updated todo {todo} in list {calendar}":"Sa uuendasid ülesande {todo} nimekirjas {calendar}",
"{actor} solved todo {todo} in list {calendar}":"{actor} lõpetas ülesande {todo} nimekirjas {calendar}",
"You solved todo {todo} in list {calendar}":"Sa lõpetasid ülesande {todo} nimekirjas {calendar}",
"{actor} reopened todo {todo} in list {calendar}":"{actor} taasavas ülesande {todo} nimekirjas {calendar}",
"You reopened todo {todo} in list {calendar}":"Sa taasavasid ülesande {todo} nimekirjas {calendar}",
"A <strong>calendar</strong> was modified":" <strong>Kalendrit</strong> muudeti",
"A calendar <strong>event</strong> was modified":"Kalendri <strong>sündmust </strong> muudeti",
"A calendar <strong>to-do</strong> was modified":"Kalendri <strong>ülesannet</strong> muudeti",
"A calendar <strong>todo</strong> was modified":"Kalendri <strong>ülesannet</strong> muudeti",
"System address book which holds all accounts":"Süsteemne aadressiraamat, kus leiduvad kõik kasutajakontod",
"File is not updatable: %1$s":"Fail pole uuendatav: %1$s",
"Failed to get storage for file":"Failile ei õnnestunud eraldada andmeruumi",
"Could not write file contents":"Ei õnnestunud kirjutada faili sisu",
"_%n byte_::_%n bytes_":["%n bait","%n baiti"],
"Failed to check file size: %1$s":"Faili suuruse kontrollimine ei õnnestunud: %1$s",
"Could not open file: %1$s, file does seem to exist":"„%1$s“ faili avamine ei õnnestunud - aga tundub, et ta on olemas",
"Could not open file: %1$s, file doesn't seem to exist":"„%1$s“ faili avamine ei õnnestunud - tundub, et teda pole olemas",
"Encryption not ready: %1$s":"Krüptimine pole veel kasutatav: %1$s",
"Failed to open file: %1$s":"Faili avamine ei õnnestunud: %1$s",
"Failed to unlink: %1$s":"Lingi eemaldamine ei õnnestunud: %1$s",
"Failed to write file contents: %1$s":"Faili sisu salvestamine ei õnnestunud: %1$s",
"File not found: %1$s":"Faili ei leidu: %1$s",
"System is in maintenance mode.":"Server on hooldusrežiimis.",
"Upgrade needed":"Uuendus on vajalik",
"Configures a CalDAV account":"Seadistab CalDAV-i kasutajakonto",
"Configures a CardDAV account":"Seadistab CardDAV-i kasutajakonto",
"Events":"Sündmused",
"Untitled task":"Ilma nimeta pealkiri",
"Due on %s":"Tähtaeg: %s",
"System Address Book":"Süsteemne aadressiraamat",
"The system address book contains contact information for all users in your instance.":"Süsteemses aadressiraamatus leiduvad kõikde selle serveri kasutajate kontaktteave.",
"Enable System Address Book":"Kasuta süsteemset aadressiraamatut",
"DAV system address book":"DAV-i süsteemne aadressiraamat",
"WebDAV endpoint":"WebDAV-i teenuse otspunkt",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually.":"Ei õnnestunud kontrollida, kas sinu veebiserver on korrektselt seadistatud ja võimaldab kasutada failide sünkroniseerimist WebDAV-i vahendusel. Palun kontrolli seda käsitsi.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken.":"Sinu veebiserver pole veel failide sünkroniseerimiseks vajalikult seadistatud, kuna WebDAV liides paistab olevat katki.",
"Your web server is properly set up to allow file synchronization over WebDAV.":"Sinu veebiserver on korrektselt seadistatud ja võimaldab kasutada failide sünkroniseerimist WebDAV-i vahendusel.",
"Calendars including events, details and attendees":"Kalendrid, sealhulgas sündmused, üksikasjad ja osalejad",
"Contacts and groups":"Kontaktid ja grupid",
"Tasks":"Ülesanded",
"WebDAV":"WebDAV",
"Absence saved":"Äraoleku teave on salvestatud",
"Failed to save your absence settings":"Sinu äraoleku seadistuste salvestamine ei õnnestunud",
"Absence cleared":"Äraolek on eemaldatud",
"Failed to clear your absence settings":"Sinu äraoleku seadistuste eemaldamine ei õnnestunud",
"First day":"Esimene päev",
"Last day (inclusive)":"Viimane päev (kaasaarvatud)",
"No results.":"Vasteid ei leitud.",
"Start typing.":"Alusta kirjutamist.",
"Short absence status":"Äraoleku lühinimi",
"Long absence Message":"Äraoleku pikk sõnum",
"Save":"Salvesta",
"Disable absence":"Lülita äraolek välja",
"Failed to load availability":"Saadavuse laadimine ei õnnestunud",
"Saved availability":"Saadavus on salvestatud",
"Failed to save availability":"Saadavuse salvestamine ei õnnestunud",
"Time zone:":"Ajavöönd:",
"to":"saaja",
"Availability":"Saadavus",
"Absence":"Äraolek",
"Configure your next absence period.":"Seadista järgmise äraoleku ajavahemik.",
"Send invitations to attendees":"Saada osalejatele kutsed",
"Enable notifications for events via push":"Võta kasutusele tõuketeenustepõhised teavitused",
"Cancel":"Tühista",
"Import":"Impordi",
"Error while saving settings":"Viga seadistuste salvestamisel",
"Error while importing contact":"Viga kontakti importimisel",
"Example Content":"Sisunäidis",
"Set example content to be created on new user first login.":"Kirjelda näidissisu, mis uue kasutaja esimesel sisselogimisel luuakse.",
"Import contact":"Impordi kontakt",
"Reset to default contact":"Lähtesta vaikimisi kontakstiks",
"Import contacts":"Impordi kontaktid",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?":"Uue .vcf faili importimisel olemasolev vaikimisi kontakt kustutatakse ja asendatakse uuega. Kas sa soovid jätkata?",
"There was an error updating your attendance status.":"Sinu osalemise oleku muutmisel tekkis viga.",
"Please contact the organizer directly.":"Palun võta ühendust korraldajaga otse.",
"Are you accepting the invitation?":"Kas sa nõustud kutsega?",
"Tentative":"Esialgne",
"Your attendance was updated successfully.":"Sinu osalemise oleku muutmine õnnestus.",
"Time:":"Aeg:",
"Could not open file":"Ei õnnestunud avada faili"
"Save":"Salvesta",
"Send invitations to attendees":"Saada osalejatele kutsed",
"Error while saving settings":"Erreur lors de l'enregistrement des paramètres",
"Contact reset successfully":"Contact réinitialisé avec succès",
"Error while resetting contact":"Erreur lors de la remise à zéro du contact",
"Contact imported successfully":"Contact importé avec succès",
"Error while importing contact":"Erreur lors de l'importation du contact",
"Import contact":"Importer un contact",
"Import contacts":"Importer des contacts",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?":"Importer un nouveau fichier .vcf supprimera le contact par défaut existant et le remplacera. Voulez-vous continuer ?",
"There was an error updating your attendance status.":"Une erreur s'est produite lors de la mise à jour de votre statut de présence.",
"Please contact the organizer directly.":"Merci de contacter l'organisateur directement.",
"Are you accepting the invitation?":"Acceptez-vous l'invitation ?",
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.