We have a set custom permissions checkbox, that when selected should set
the quick permissions settings to custom as well as show the custom permission settings.
When the checkbox is unchecked the quick permissions have to be reset to the default,
`bundledPermissions.ALL` but also users can switch from custom permissions to `bundled`
by just changing the radio select, hence we need a mechanism to set the permissions back
to the correct fallback depending on where the user has toggled the the custom permission from.
The mechanism is `revertSharingPermission` and this commit, makes sure revert values are correctly
set upon toggle.
Resolves : https://github.com/nextcloud/server/issues/40431
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
The quick share drop down now takes the place where the user status
would show in the past, so we have the option of removing it (as it's available
in the profile dropdown) or putting it at the side as such.
It's put on the side without the icon, as the status icon appears on the avatar
when set.
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
A calendar uri includes the webroot: example.com/cloud/remote.php/dav/calendars/alice/personal/
The calendar app uses base64(calendar uri) as identifier for calendar objects.
Without this patch the links from activity app to calendar app don't work for installations in a subdirectory.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
apcu lead to side effects especially with app management and (soft)
inter-dependencies, and lead also to 500 server errors. While we could
add management to clear apcu cache in many cases (may stil leave edge
cases) the performance benefit is marginally as also class maps are
already cached in opcache. Hence, the simple and effective way to go is
to not use apcu for autoloading.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
- Adds appropriate aria attributes
- Uses button element for dropdown items as it's more semantically correct
- Uses trap-focus lib to trap focus when the drowpdown is active
- Adds custom handling for arrow up and down
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
Currently, swithcing between permissions in the sharing permissions
details view would toggle the custom permissions view.
We think, it's better for the custom permission option to simple
expand the custom permissions view and never close it gain even if the
user is switching between bundled permissions.
The user can always collapse the view by using the "Advanced settings" toggle.
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
If 'verify_bucket_exists' is set to false in the config.php s3 configuration, it's supposed to avoid
verifying that the bucket exists. However empty(falsy) will always return true, so this condition
would not work.
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit introduces the following changes:
- Does not create new share once user is selected for internal shares
- Adds a `SharingDetails` view for share configurations
- Adds a quick share select to enable fast changes in share permisions.
Resolves: https://github.com/nextcloud/server/issues/26691
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
Signed-off-by: Louis Chemineau <louis@chmn.me>
This commit introduces the following changes:
- Does not create new share once user is selected for internal shares
- Adds a `SharingDetails` view for share configurations
- Adds a quick share select to enable fast changes in share permisions.
Resolves: https://github.com/nextcloud/server/issues/26691
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
Signed-off-by: Louis Chemineau <louis@chmn.me>
This will mean lots of code like
```$dateTime = (new DateTime())->setTimestamp(ITimeFactory::now()->getTimestamp()```
if a regular DateTime object is needed
Signed-off-by: Anna Larch <anna@nextcloud.com>
Besides the existing moving average, a smoothing factor is introduced for the time remaining display as well as the bitrate.
Furthermore, half of the buffer needs to be filled before the first prediction is displayed to the user. This reduces volatile and jumping durations towards the user and improves usability.
Signed-off-by: Cyrill H. <phlogi@posteo.de>
Co-authored-by: Carl Schwan <carl@carlschwan.eu>
Calling setHeaders(getHeaders()) breaks the CSP nonce for unknown reasons
So shifting back to old standard practise for now
Signed-off-by: Joas Schilling <coding@schilljs.com>
This API enables the dashboard to render all widgets from the API data
alone without having apps to provide their own bundles. This saves a lot
of traffic and execution time as a lot less javascript has to be parsed
on the frontend.
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
The sorting was not saved since files2vue changes in Nextcloud 27, as a new API endpoint
was introduced and the old one was dropped without adjusting the legacy file list to use it.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Overwrite the display name after the account is initialized
when using an instacne of IGetDisplayNameBackend.
Before when using a variation of user_oidc and registering
a Backend.php implementing IGetDisplayNameBackend
the personal setting page shows 'uid'.
The UserManager/AccountManager seems not to use consistently
the correct backend.
The correct backend is used in this sequence:
server/lib/private/TemplateLayout.php
$userDisplayName = \OC_User::getDisplayName();
$this->assign(user_displayname, $userDisplayName);
In the settings page, it definitely not calls the registered backend,
but seems to fall back to default Backend and shows (usually) uid
or a value from the standard account property table.
Signed-off-by: Max <max@nextcloud.com>
OC\Files\Cache\Cache::get can return string|false|null, not just string|false.
- nextcloud/server#26270 added handling of false, but null is needed too.
- Well, or we change the default $resullt to false, but I'm not sure if that has other ramifications and the real need here is to simply catch situations where the cache source storage path is not valid for whatever reason
Related: nextcloud/server#19009
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
Resolves: #39228.
Check the free space on the destination.
Before it was checking the free space on `$storage`
which is the upload storage of the user who triggered the upload.
This led to user quota being applied
even when uploading to a share with unlimited space.
Signed-off-by: Max <max@nextcloud.com>
As per method signature, $visitingUser is nullable, so we can't be sure calling getUid() on it will
work.
Closes#35766
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
the previosuly introduced searchBySystemTag was not overwritten in
NonExistingFolder and could run the inherited method.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
When "Enforce password protection" is enabled in the sharing settings a
popover menu is shown to set a password before the share is created. On
the other hand, when "Always ask for a password" was enabled in the
sharing settings and a new link share was created the share was
immediately created with a default password; the user was not able to
specify a password (nor create the share without password).
The component template already provided the needed elements to also ask
for the password without enforcing it, but the popover menu was not
shown due to "enableLinkPasswordByDefault" being missing in "if"
conditions.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
- in this backport we have to drop the breaking addition in
\OCP\Files\Folder
- this requires adjustments in check for the existance of the method but
also in testing
- another change in \OCP\SystemTag\ISystemTagManager can be applied as
this interface is not implemented elsewhere
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This allow to no request non existing previews
I also set some properties to the img element to reduce preview loading to what the browser think is necessary
Signed-off-by: Louis Chemineau <louis@chmn.me>
We need to use the language code here instead of the locale,
because Symfony does not distinguish between the two and would
otherwise e.g. with locale "Czech" and language "German" try to
pick a non-existing plural rule, because Czech has 4 plural forms
and German only 2.
Signed-off-by: Joas Schilling <coding@schilljs.com>
createNode() is protected and used by Folder, but being an internal-only
method it shall not be exposed in the Folder or IRootFolder interface.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
- fixes a regression when deleting folders while music app was enabled,
for a LazyRoot was passed to this method.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
pruneOutdatedSyncTokens accidentally deletes all entries of the calendarchanges table
instead of leaving $limit elements in the table
Signed-off-by: Christof Arnosti <charno@charno.ch>
This removes a lot of acrobatics in the code and does each operation
atomically using a lua script. This also reduces several round trips
to the server, and the scripts are compiled and cached server-side.
Notably, since all operations work only on a single key (except clear,
which is broken anyway and shouldn't be used), they will continue to
function and be atomic for Redis cluster.
Signed-off-by: Varun Patil <varunpatil@ucla.edu>
We use a forked version of getID3 to read embedded images from mp3 files to use them as previews.
If the library is unable to extract a image or fails on something different we should handle it properly.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e FTP_USERNAME=test -e FTP_PASSWORD=test -v /tmp/ftp:/home/test hauptmedia/proftpd; fi
sudo chmod -R 0777 /tmp/ftp
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo '$6$Q7V2n3q2GRVv5YeQ$/AhLu07H76Asojy7bxGXMY1caKLAbp5Vt82LOZYMkD/8uDzyMAEXwk0c1Bdz1DkBsk2Vh/9SF130mOPavRGMo.' > /tmp/secret.txt; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then echo 'FTP_ROOT=/home/test' > $GITHUB_ENV; fi
if [[ "${{ matrix.ftpd }}" == 'proftpd' ]]; then docker run --name ftp -d --net host -e PASV_ADDRESS=127.0.0.1 -e FTPUSER_NAME=test -v /tmp/secret.txt:/run/secrets/ftp-user-password-secret -v /tmp/ftp:/home/test instantlinux/proftpd; fi
if [[ "${{ matrix.ftpd }}" == 'vsftpd' ]]; then docker run --name ftp -d --net host -e FTP_USER=test -e FTP_PASS=test -e PASV_ADDRESS=127.0.0.1 -v /tmp/ftp:/home/vsftpd/test fauria/vsftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp2:/home/test -v /tmp/ftp2:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
if [[ "${{ matrix.ftpd }}" == 'pure-ftpd' ]]; then docker run --name ftp -d --net host -e "PUBLICHOST=localhost" -e FTP_USER_NAME=test -e FTP_USER_PASS=test -e FTP_USER_HOME=/home/test -v /tmp/ftp:/home/test -v /tmp/ftp:/etc/pure-ftpd/passwd stilliard/pure-ftpd; fi
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Proporciona capacidades de registro para Nextcloud, como el registro de accesos a archivos o acciones confidenciales."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Proporciona capacidades de registro para Nextcloud, como el registro de accesos a archivos o acciones confidenciales."
},"pluralForm":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fournit des capacités de traçage à NextCloud telles que l'accès aux fichiers d'identifications ou autres actions sensibles."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fournit des capacités de journalisation pour Nextcloud, telles que la journalisation des accès aux fichiers ou d'autres actions sensibles."
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fournit des capacités de traçage à NextCloud telles que l'accès aux fichiers d'identifications ou autres actions sensibles."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fournit des capacités de journalisation pour Nextcloud, telles que la journalisation des accès aux fichiers ou d'autres actions sensibles."
},"pluralForm":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fornece recursos de rexistro para o Nextcloud como rexistros de acceso a ficheiros ou calquera outra acción sensíbel."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fornece recursos de rexistro para Nextcloud como rexistros de acceso a ficheiros ou calquera outra acción sensíbel."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fornece recursos de rexistro para o Nextcloud como rexistros de acceso a ficheiros ou calquera outra acción sensíbel."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"Fornece recursos de rexistro para Nextcloud como rexistros de acceso a ficheiros ou calquera outra acción sensíbel."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"מספר יכולות תיעוד ל־Nextcloud כגון תיעוד גישה ליומן התיעוד או פעולות רגישות אחרות."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"מספק יכולות תיעוד ל־Nextcloud כגון תיעוד גישה ליומן התיעוד או פעולות רגישות אחרות."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"מספר יכולות תיעוד ל־Nextcloud כגון תיעוד גישה ליומן התיעוד או פעולות רגישות אחרות."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"מספק יכולות תיעוד ל־Nextcloud כגון תיעוד גישה ליומן התיעוד או פעולות רגישות אחרות."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"नेक्स्टक्लाउड के लिए लॉगिंग क्षमताएं प्रदान करता है जैसे फ़ाइल एक्सेस या अन्यथा संवेदनशील कार्यों को लॉग करना।"
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.":"नेक्स्टक्लाउड के लिए लॉगिंग क्षमताएं प्रदान करता है जैसे फ़ाइल एक्सेस या अन्यथा संवेदनशील कार्यों को लॉग करना।"
"Cloud Federation API":"واجهة برمجة التطبيقات API للاتحاد السحابي Cloud Federation",
"Enable clouds to communicate with each other and exchange data":"يسمح للسحابات أن تتراسل فيما بينها و تتبادل البيانات",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"واجهة برمجة التطبيقات API للاتحاد السحابي Cloud Federation تسمح لخوادم نكست كلاود بالاتصال ببعضها البعض و تبادل البيانات."
"Cloud Federation API":"واجهة برمجة التطبيقات API للاتحاد السحابي Cloud Federation",
"Enable clouds to communicate with each other and exchange data":"يسمح للسحابات أن تتراسل فيما بينها و تتبادل البيانات",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"واجهة برمجة التطبيقات API للاتحاد السحابي Cloud Federation تسمح لخوادم نكست كلاود بالاتصال ببعضها البعض و تبادل البيانات."
"Cloud Federation API":"API de Federación en la Nube",
"Enable clouds to communicate with each other and exchange data":"Permitir que las nubes se comuniquen entre sí e intercambien datos",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"La API de Federación de Nubes permite que varias instancias de Nextcloud se comuniquen entre sí y intercambien datos."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
"Cloud Federation API":"API de Federación en la Nube",
"Enable clouds to communicate with each other and exchange data":"Permitir que las nubes se comuniquen entre sí e intercambien datos",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"La API de Federación de Nubes permite que varias instancias de Nextcloud se comuniquen entre sí y intercambien datos."
},"pluralForm":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
"Enable clouds to communicate with each other and exchange data":"Luba pilvedel suhelda omavahel ja vahetada andmeid",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Pilve Liit API lubab erinevad Nextcloud'i osadel suhelda omavahel ja vahetada andmeid"
"Enable clouds to communicate with each other and exchange data":"Luba pilvedel suhelda omavahel ja vahetada andmeid",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Pilve Liit API lubab erinevad Nextcloud'i osadel suhelda omavahel ja vahetada andmeid"
"Enable clouds to communicate with each other and exchange data":"ابرها را فعال کنید تا با یکدیگر ارتباط برقرار کنند و داده ها را مبادله کنند",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cloud Federation API نمونه های مختلف Nextcloud را قادر می سازد تا با یکدیگر ارتباط برقرار کرده و داده ها را مبادله کنند."
"Enable clouds to communicate with each other and exchange data":"ابرها را فعال کنید تا با یکدیگر ارتباط برقرار کنند و داده ها را مبادله کنند",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cloud Federation API نمونه های مختلف Nextcloud را قادر می سازد تا با یکدیگر ارتباط برقرار کرده و داده ها را مبادله کنند."
"Enable clouds to communicate with each other and exchange data":"Permite que as nubes se comuniquen entre elas e intercambien datos",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"A API de Nube federada permite que varias instancias do Nextcloud se comuniquen entre elas e intercambien datos."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"A API de Nube federada permite que varias instancias de Nextcloud se comuniquen entre elas e intercambien datos."
"Enable clouds to communicate with each other and exchange data":"Permite que as nubes se comuniquen entre elas e intercambien datos",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"A API de Nube federada permite que varias instancias do Nextcloud se comuniquen entre elas e intercambien datos."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"A API de Nube federada permite que varias instancias de Nextcloud se comuniquen entre elas e intercambien datos."
"Enable clouds to communicate with each other and exchange data":"Увімкніть хмари для спілкування один з одним і обміну даними",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"API Cloud Federation дозволяє різним примірникам Nextcloud спілкуватися один з одним і обмінюватися даними."
"Enable clouds to communicate with each other and exchange data":"Увімкніть хмари аби спілкуватися один з одним і обмінюватися даними",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cloud Federation API дозволяє різним примірникам серверу хмари Nextcloud спілкуватися між собою та обмінюватися даними."
},
"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);");
"Enable clouds to communicate with each other and exchange data":"Увімкніть хмари для спілкування один з одним і обміну даними",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"API Cloud Federation дозволяє різним примірникам Nextcloud спілкуватися один з одним і обмінюватися даними."
"Enable clouds to communicate with each other and exchange data":"Увімкніть хмари аби спілкуватися один з одним і обмінюватися даними",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"Cloud Federation API дозволяє різним примірникам серверу хмари Nextcloud спілкуватися між собою та обмінюватися даними."
},"pluralForm":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"
"Enable clouds to communicate with each other and exchange data":"Cho phép các đám mây giao tiếp với nhau và trao đổi dữ liệu",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"API Cloud Federation cho phép các phiên bản Nextcloud khác nhau giao tiếp với nhau và trao đổi dữ liệu."
"Enable clouds to communicate with each other and exchange data":"Cho phép các đám mây giao tiếp với nhau và trao đổi dữ liệu",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"API Cloud Federation cho phép các phiên bản Nextcloud khác nhau giao tiếp với nhau và trao đổi dữ liệu."
"Enable clouds to communicate with each other and exchange data":"使云能够相互通信并交换数据",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"联合云API使各种 Nextcloud 实例可以相互通信并交换数据。"
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"联合云API使各种 Nextcloud 实例可以相互通信并交换数据。"
"Enable clouds to communicate with each other and exchange data":"使云能够相互通信并交换数据",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"联合云API使各种 Nextcloud 实例可以相互通信并交换数据。"
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.":"联合云API使各种 Nextcloud 实例可以相互通信并交换数据。"
"No comments yet, start the conversation!":"لا يوجد تعليقات, ابدأ النقاش الآن!",
"No more messages":"لامزيد من الرسائل",
"Retry":"أعد المحاولة",
"Failed to mark comments as read":"إخفاق في تعيين ملاحظات كمقرؤة",
"Unable to load the comments list":"تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_":["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_":["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"No comments yet, start the conversation!":"لا يوجد تعليقات, ابدأ النقاش الآن!",
"No more messages":"لامزيد من الرسائل",
"Retry":"أعد المحاولة",
"Failed to mark comments as read":"إخفاق في تعيين ملاحظات كمقرؤة",
"Unable to load the comments list":"تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_":["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_":["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"You commented on {file}":"Heu comentat a {file}",
"%1$s commented on %2$s":"%1$s ha comentat a %2$s",
"{author} commented on {file}":"{author} ha comentat a {file}",
"<strong>Comments</strong> for files":"<strong>Comentaris</strong> per fitxers",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Se t'ha esmentat a \"{file}\" en un comentari d'un usuari que s'ha suprimit des de llavors",
"{user} mentioned you in a comment on \"{file}\"":"{user} t'ha mencionat en un comentari a \"{file}\"",
"Files app plugin to add comments to files":"Connexió de l’aplicació de fitxers per afegir comentaris als fitxers",
"Edit comment":"Edició comentari",
"Delete comment":"Suprimeix comentari",
"You commented":"Heu escrit un comentari",
"{author} commented":"{author} ha escrit un comentari",
"You commented on %1$s":"Heu escrit un comentari a %1$s",
"You commented on {file}":"Heu escrit un comentari a {file}",
"%1$s commented on %2$s":"%1$s ha escrit un comentari a %2$s",
"{author} commented on {file}":"{author} ha escrit un comentari a {file}",
"<strong>Comments</strong> for files":"<strong>Comentaris</strong> per a fitxers",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Se us ha esmentat a «{file}» en un comentari d'un usuari que s'ha suprimit",
"{user} mentioned you in a comment on \"{file}\"":"{user} us ha esmentat en un comentari a «{file}»",
"Files app plugin to add comments to files":"Connector de l'aplicació Fitxers per a afegir comentaris als fitxers",
"Edit comment":"Edita el comentari",
"Delete comment":"Suprimeix el comentari",
"Cancel edit":"Cancel·la l'edició",
"Post comment":"Enviar comentari",
"No comments yet, start the conversation!":"Encara no hi ha comentaris. Enceteu la conversa!",
"Post comment":"Publica el comentari",
"No comments yet, start the conversation!":"Encara no hi ha cap comentari. Enceteu la conversa!",
"No more messages":"No hi ha més missatges",
"Retry":"Reintent",
"Unable to load the comments list":"No es pot carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_":["%n comentari no llegit","%n comentaris no llegits"],
"Retry":"Torna-ho a provar",
"Failed to mark comments as read":"No s'han pogut marcar els comentaris com a llegits",
"Unable to load the comments list":"No s'ha pogut carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_":["%n comentari sense llegir","%n comentaris sense llegir"],
"_1 new comment_::_{unread} new comments_":["1 comentari nou","{unread} comentaris nous"],
"Comment":"Comentari",
"An error occurred while trying to edit the comment":"S'ha produït un error en intentar editar el comentari",
"Comment deleted":"Comentari suprimit",
"Comment deleted":"S'ha suprimit el comentari",
"An error occurred while trying to delete the comment":"S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment":"S'ha produït un error en intentar crear el comentari",
"You commented on {file}":"Heu comentat a {file}",
"%1$s commented on %2$s":"%1$s ha comentat a %2$s",
"{author} commented on {file}":"{author} ha comentat a {file}",
"<strong>Comments</strong> for files":"<strong>Comentaris</strong> per fitxers",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Se t'ha esmentat a \"{file}\" en un comentari d'un usuari que s'ha suprimit des de llavors",
"{user} mentioned you in a comment on \"{file}\"":"{user} t'ha mencionat en un comentari a \"{file}\"",
"Files app plugin to add comments to files":"Connexió de l’aplicació de fitxers per afegir comentaris als fitxers",
"Edit comment":"Edició comentari",
"Delete comment":"Suprimeix comentari",
"You commented":"Heu escrit un comentari",
"{author} commented":"{author} ha escrit un comentari",
"You commented on %1$s":"Heu escrit un comentari a %1$s",
"You commented on {file}":"Heu escrit un comentari a {file}",
"%1$s commented on %2$s":"%1$s ha escrit un comentari a %2$s",
"{author} commented on {file}":"{author} ha escrit un comentari a {file}",
"<strong>Comments</strong> for files":"<strong>Comentaris</strong> per a fitxers",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Se us ha esmentat a «{file}» en un comentari d'un usuari que s'ha suprimit",
"{user} mentioned you in a comment on \"{file}\"":"{user} us ha esmentat en un comentari a «{file}»",
"Files app plugin to add comments to files":"Connector de l'aplicació Fitxers per a afegir comentaris als fitxers",
"Edit comment":"Edita el comentari",
"Delete comment":"Suprimeix el comentari",
"Cancel edit":"Cancel·la l'edició",
"Post comment":"Enviar comentari",
"No comments yet, start the conversation!":"Encara no hi ha comentaris. Enceteu la conversa!",
"Post comment":"Publica el comentari",
"No comments yet, start the conversation!":"Encara no hi ha cap comentari. Enceteu la conversa!",
"No more messages":"No hi ha més missatges",
"Retry":"Reintent",
"Unable to load the comments list":"No es pot carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_":["%n comentari no llegit","%n comentaris no llegits"],
"Retry":"Torna-ho a provar",
"Failed to mark comments as read":"No s'han pogut marcar els comentaris com a llegits",
"Unable to load the comments list":"No s'ha pogut carregar la llista de comentaris",
"_%n unread comment_::_%n unread comments_":["%n comentari sense llegir","%n comentaris sense llegir"],
"_1 new comment_::_{unread} new comments_":["1 comentari nou","{unread} comentaris nous"],
"Comment":"Comentari",
"An error occurred while trying to edit the comment":"S'ha produït un error en intentar editar el comentari",
"Comment deleted":"Comentari suprimit",
"Comment deleted":"S'ha suprimit el comentari",
"An error occurred while trying to delete the comment":"S'ha produït un error en intentar suprimir el comentari",
"An error occurred while trying to create the comment":"S'ha produït un error en intentar crear el comentari",
"{author} commented on {file}":"{author} comentó en {file}",
"<strong>Comments</strong> for files":"<strong>Comentarios</strong> de los archivos",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Fuiste mencionado en \"{file}\", en un comentario realizado por un usuario que ha sido eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} te mencionó en un comentario en \"{file}\"",
"Files app plugin to add comments to files":"Plugin de la aplicación de archivos para agregar comentarios a los archivos",
"Edit comment":"Editar comentario",
"Delete comment":"Borrar comentario",
"Cancel edit":"Cancelar edición",
"Post comment":"Publicar comentario",
"No comments yet, start the conversation!":"¡Aún no hay comentarios, inicia la conversación!",
"No more messages":"No hay más mensajes",
"Retry":"Reintentar",
"Failed to mark comments as read":"Error al marcar los comentarios como leídos",
"Unable to load the comments list":"No se puede cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_":["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"_1 new comment_::_{unread} new comments_":["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment":"Comentario",
"An error occurred while trying to edit the comment":"Ocurrió un error al intentar editar el comentario",
"Comment deleted":"Comentario eliminado",
"An error occurred while trying to delete the comment":"Ocurrió un error al intentar eliminar el comentario",
"An error occurred while trying to create the comment":"Ocurrió un error al intentar crear el comentario",
"%1$s commented":"%1$s comentó"
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
"{author} commented on {file}":"{author} comentó en {file}",
"<strong>Comments</strong> for files":"<strong>Comentarios</strong> de los archivos",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Fuiste mencionado en \"{file}\", en un comentario realizado por un usuario que ha sido eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} te mencionó en un comentario en \"{file}\"",
"Files app plugin to add comments to files":"Plugin de la aplicación de archivos para agregar comentarios a los archivos",
"Edit comment":"Editar comentario",
"Delete comment":"Borrar comentario",
"Cancel edit":"Cancelar edición",
"Post comment":"Publicar comentario",
"No comments yet, start the conversation!":"¡Aún no hay comentarios, inicia la conversación!",
"No more messages":"No hay más mensajes",
"Retry":"Reintentar",
"Failed to mark comments as read":"Error al marcar los comentarios como leídos",
"Unable to load the comments list":"No se puede cargar la lista de comentarios",
"_%n unread comment_::_%n unread comments_":["%n comentarios sin leer","%n comentarios sin leer","%n comentarios sin leer"],
"_1 new comment_::_{unread} new comments_":["1 comentario nuevo","{unread} comentarios nuevos","{unread} comentarios nuevos"],
"Comment":"Comentario",
"An error occurred while trying to edit the comment":"Ocurrió un error al intentar editar el comentario",
"Comment deleted":"Comentario eliminado",
"An error occurred while trying to delete the comment":"Ocurrió un error al intentar eliminar el comentario",
"An error occurred while trying to create the comment":"Ocurrió un error al intentar crear el comentario",
"%1$s commented":"%1$s comentó"
},"pluralForm":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
"%1$s commented on %2$s":"%1$s kommenteeris %2$s",
"{author} commented on {file}":"{author} kommenteeris faili {file}",
"<strong>Comments</strong> for files":"<strong>Kommentaarid</strong> failidele",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Sind mainis faili \"{file}\" kommentaaris kasutaja, kes on praeguseks kustutatud.",
"{user} mentioned you in a comment on \"{file}\"":"{user} mainis sind faili \"{file}\" kommentaaris",
"Files app plugin to add comments to files":"Failid rakenduse laiendus failidele kommentaaride lisamiseks",
"Edit comment":"Muuda kommentaari",
"Delete comment":"Kustuta kommentaar",
"No comments yet, start the conversation!":"Kommentaare veel pole, alusta vestlust",
"Cancel edit":"Loobu muutmisest",
"Post comment":"Postita kommentaar",
"No comments yet, start the conversation!":"Kommentaare veel pole, alusta vestlust!",
"No more messages":"Rohkem teateid pole",
"Retry":"Proovi uuesti",
"Failed to mark comments as read":"Kommentaaride loetuks märkimine ebaõnnestus",
"Unable to load the comments list":"Kommentaaride loendi laadimine ebaõnnestus",
"%1$s commented on %2$s":"%1$s kommenteeris %2$s",
"{author} commented on {file}":"{author} kommenteeris faili {file}",
"<strong>Comments</strong> for files":"<strong>Kommentaarid</strong> failidele",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Sind mainis faili \"{file}\" kommentaaris kasutaja, kes on praeguseks kustutatud.",
"{user} mentioned you in a comment on \"{file}\"":"{user} mainis sind faili \"{file}\" kommentaaris",
"Files app plugin to add comments to files":"Failid rakenduse laiendus failidele kommentaaride lisamiseks",
"Edit comment":"Muuda kommentaari",
"Delete comment":"Kustuta kommentaar",
"No comments yet, start the conversation!":"Kommentaare veel pole, alusta vestlust",
"Cancel edit":"Loobu muutmisest",
"Post comment":"Postita kommentaar",
"No comments yet, start the conversation!":"Kommentaare veel pole, alusta vestlust!",
"No more messages":"Rohkem teateid pole",
"Retry":"Proovi uuesti",
"Failed to mark comments as read":"Kommentaaride loetuks märkimine ebaõnnestus",
"Unable to load the comments list":"Kommentaaride loendi laadimine ebaõnnestus",
"You commented on {file}":"You commented on {file}",
"%1$s commented on %2$s":"%1$s commented on %2$s",
"{author} commented on {file}":"{author} commented on {file}",
"<strong>Comments</strong> for files":"<strong>Comments</strong> for files",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"You were mentioned on \"{file}\", in a comment by a user that has since been deleted",
"{user} mentioned you in a comment on \"{file}\"":"{user} mentioned you in a comment on \"{file}\"",
"Files app plugin to add comments to files":"Files app plugin to add comments to files",
"Edit comment":"ویرایش توضیح",
"Delete comment":"حذف توضیح",
"New comment …":"توضیح جدید ...",
"Post":"ارسال",
"Cancel":"منصرف شدن",
"[Deleted user]":"[کاربر حذف شده]",
"Cancel edit":"Cancel edit",
"Post comment":"Post comment",
"No comments yet, start the conversation!":"هنوز هیچ نظری ندارید ، مکالمه را شروع کنید!",
"More comments …":"نظرات بیشتر...",
"Save":"ذخیره",
"Allowed characters {count} of {max}":"شخصیت های مجاز {count} از {max",
"Error occurred while retrieving comment with ID {id}":"هنگام بازیابی نظر با ID {id Er خطایی رخ داد",
"Error occurred while updating comment with id {id}":"هنگام به روزرسانی نظر با شناسه شناسه Er خطایی روی داد",
"Error occurred while posting comment":"هنگام ارسال نظر خطایی روی داد",
"Comment":"نظر"
"No more messages":"No more messages",
"Retry":"تلاش دوباره",
"Failed to mark comments as read":"Failed to mark comments as read",
"Unable to load the comments list":"Unable to load the comments list",
"You commented on {file}":"You commented on {file}",
"%1$s commented on %2$s":"%1$s commented on %2$s",
"{author} commented on {file}":"{author} commented on {file}",
"<strong>Comments</strong> for files":"<strong>Comments</strong> for files",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"You were mentioned on \"{file}\", in a comment by a user that has since been deleted",
"{user} mentioned you in a comment on \"{file}\"":"{user} mentioned you in a comment on \"{file}\"",
"Files app plugin to add comments to files":"Files app plugin to add comments to files",
"Edit comment":"ویرایش توضیح",
"Delete comment":"حذف توضیح",
"New comment …":"توضیح جدید ...",
"Post":"ارسال",
"Cancel":"منصرف شدن",
"[Deleted user]":"[کاربر حذف شده]",
"Cancel edit":"Cancel edit",
"Post comment":"Post comment",
"No comments yet, start the conversation!":"هنوز هیچ نظری ندارید ، مکالمه را شروع کنید!",
"More comments …":"نظرات بیشتر...",
"Save":"ذخیره",
"Allowed characters {count} of {max}":"شخصیت های مجاز {count} از {max",
"Error occurred while retrieving comment with ID {id}":"هنگام بازیابی نظر با ID {id Er خطایی رخ داد",
"Error occurred while updating comment with id {id}":"هنگام به روزرسانی نظر با شناسه شناسه Er خطایی روی داد",
"Error occurred while posting comment":"هنگام ارسال نظر خطایی روی داد",
"Comment":"نظر"
"No more messages":"No more messages",
"Retry":"تلاش دوباره",
"Failed to mark comments as read":"Failed to mark comments as read",
"Unable to load the comments list":"Unable to load the comments list",
"You commented on %1$s":"Vostede comentou en %1$s",
"You commented on {file}":"Vostede comentou en {file}",
"You commented on %1$s":"Vde. comentou en %1$s",
"You commented on {file}":"Vde. comentou en {file}",
"%1$s commented on %2$s":"%1$s comentados en %2$s",
"{author} commented on {file}":"{author} comentou en {file}",
"<strong>Comments</strong> for files":"<strong>Comentarios</strong> para ficheiros",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Mencionáronte en \"{ficheiro}\", nun comentario dun usuario que xa foi eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionoute nun comentario en \"{file}\"",
"Files app plugin to add comments to files":"Engadido da aplicación de ficheiros para engadir comentarios aos ficheiros",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Mencionárono en «{file}», nun comentario dun usuario que xa foi eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionouno a Vde. nun comentario en «{file}»",
"Files app plugin to add comments to files":"Complemento da aplicación de ficheiros para engadir comentarios aos ficheiros",
"Edit comment":"Editar comentario",
"Delete comment":"Eliminar comentario",
"Cancel edit":"Cancelar a edición",
"Post comment":"Publicar comentario",
"No comments yet, start the conversation!":"Aínda non hai comentarios, comeza a conversa!",
"No more messages":"Non hai máis mensaxes",
"Retry":"Volver tentar",
"Retry":"Tentar de novo",
"Failed to mark comments as read":"Produciuse un fallo ao marcar os comentarios como lidos",
"Unable to load the comments list":"Non é posíbel cargar a lista de comentarios",
"_%n unread comment_::_%n unread comments_":["%n comentario sen ler","%n comentarios sen ler"],
"_1 new comment_::_{unread} new comments_":["1 comentario novo","{unread} comentarios novos"],
"Comment":"Comentario",
"An error occurred while trying to edit the comment":"Produciuse un erro mentres tentaba editar o comentario",
"An error occurred while trying to edit the comment":"Produciuse un erro cando tentaba editar o comentario",
"Comment deleted":"Comentario eliminado",
"An error occurred while trying to delete the comment":"Produciuse un erro mentres tentaba eliminar o comentario",
"An error occurred while trying to create the comment":"Produciuse un erro mentres tentaba crear o comentario",
"An error occurred while trying to delete the comment":"Produciuse un erro cando tentaba eliminar o comentario",
"An error occurred while trying to create the comment":"Produciuse un erro cando tentaba crear o comentario",
"You commented on %1$s":"Vostede comentou en %1$s",
"You commented on {file}":"Vostede comentou en {file}",
"You commented on %1$s":"Vde. comentou en %1$s",
"You commented on {file}":"Vde. comentou en {file}",
"%1$s commented on %2$s":"%1$s comentados en %2$s",
"{author} commented on {file}":"{author} comentou en {file}",
"<strong>Comments</strong> for files":"<strong>Comentarios</strong> para ficheiros",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Mencionáronte en \"{ficheiro}\", nun comentario dun usuario que xa foi eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionoute nun comentario en \"{file}\"",
"Files app plugin to add comments to files":"Engadido da aplicación de ficheiros para engadir comentarios aos ficheiros",
"You were mentioned on \"{file}\", in a comment by a user that has since been deleted":"Mencionárono en «{file}», nun comentario dun usuario que xa foi eliminado",
"{user} mentioned you in a comment on \"{file}\"":"{user} mencionouno a Vde. nun comentario en «{file}»",
"Files app plugin to add comments to files":"Complemento da aplicación de ficheiros para engadir comentarios aos ficheiros",
"Edit comment":"Editar comentario",
"Delete comment":"Eliminar comentario",
"Cancel edit":"Cancelar a edición",
"Post comment":"Publicar comentario",
"No comments yet, start the conversation!":"Aínda non hai comentarios, comeza a conversa!",
"No more messages":"Non hai máis mensaxes",
"Retry":"Volver tentar",
"Retry":"Tentar de novo",
"Failed to mark comments as read":"Produciuse un fallo ao marcar os comentarios como lidos",
"Unable to load the comments list":"Non é posíbel cargar a lista de comentarios",
"_%n unread comment_::_%n unread comments_":["%n comentario sen ler","%n comentarios sen ler"],
"_1 new comment_::_{unread} new comments_":["1 comentario novo","{unread} comentarios novos"],
"Comment":"Comentario",
"An error occurred while trying to edit the comment":"Produciuse un erro mentres tentaba editar o comentario",
"An error occurred while trying to edit the comment":"Produciuse un erro cando tentaba editar o comentario",
"Comment deleted":"Comentario eliminado",
"An error occurred while trying to delete the comment":"Produciuse un erro mentres tentaba eliminar o comentario",
"An error occurred while trying to create the comment":"Produciuse un erro mentres tentaba crear o comentario",
"An error occurred while trying to delete the comment":"Produciuse un erro cando tentaba eliminar o comentario",
"An error occurred while trying to create the comment":"Produciuse un erro cando tentaba crear o comentario",
"_1 new comment_::_{unread} new comments_":["1 новый комментарий","{unread} новых комментариев","{unread} новых комментариев","{unread} новых комментариев"],
"_1 new comment_::_{unread} new comments_":["1 новый комментарий","{unread} новых комментариев","{unread} новых комментариев","{unread} новых комментариев"],
"_1 new comment_::_{unread} new comments_":["1 yeni yorum","{unread} yeni yorum"],
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.