PR #53212 implemented a hardcoded database username, instead of deriving it from the Nextcloud admin username, to be able to setup Nextcloud without admin user. This has the additional benefit that knowing one of them does not allow to derive the other.
However, it used `oc_admin`, while the MySQL database setup adds `oc_` again in the dedicated `createSpecificUser()` function, resulting in `oc_oc_admin`. In case of PostgreSQL, this was done in `setupDatabase()`, replaced with the hardcoded username.
Signed-off-by: MichaIng <micha@dietpi.com>
We try to use named exports everywhere so also for the logger for
consistency. Also the logger is more of a util then a main entry point
so moved the implementation to the utils directory.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
The HEAD request, create a GET subrequest which is not compatible with
the ZIP plugin since the ZIP plugin is directly streaming the content to
php://output, so we were sending the content in a HEAD request and
creating the ZIP twice and this was creating various warning in logs
too.
Signed-off-by: Carl Schwan <carlschwan@kde.org>
Add validation in the Metric constructor that rejects invalid
OpenMetrics label names with InvalidArgumentException. Sanitize
app IDs at the source in AppsInfo by replacing hyphens with
underscores before creating the Metric.
Fixesnextcloud/server#59247
Signed-off-by: moktamd <moktamd@users.noreply.github.com>
Avoid the use of "authentication" here since this is really about signing compatibility, not the source of credentials. Also prefix with "Use" for UI consistency.
Signed-off-by: Josh <josh.t.richards@gmail.com>
Set passwordProtectedState explicitly when initializing shares with
default passwords. This ensures the checkbox state is tracked
independently of the password value, preventing it from unchecking
when the password field is cleared.
Also block saving new shares when password protection is enabled but
no password is entered, regardless of enforcement settings.
Added passWithNoTests to vitest configs to handle Vue 2/3 dual
frontend test runs gracefully.
Fixes: #57732, #57011
Signed-off-by: nfebe <fenn25.fn@gmail.com>
As we do it with other information of the user, we now use the known value
of a users displayname, and leave the updating to the background job. This
improves performance of user facing actions where the display name is
required and reduces queries to the LDAP server that are typically more
expensive.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Keeps old design with stronger constrast between background color and
background for high contrast themes.
Fixes: #55508
Signed-off-by: Jonas <jonas@freesources.org>
We introduced `id` instead of `fileid` to be always of type `string` to
allow snow flake ids. So we need to check the new attribute instead of
the legacy one.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
and allow regular cypress tests to run on forks (no secret leaked)
add consistent gating
for changes
remove empty matrix option
skip performance workflow on forks without it looking like it's failing
Signed-off-by: Anna Larch <anna@nextcloud.com>
UserPlugin reads `shareapi_restrict_user_enumeration_full_match_userid`
(no underscore) while Manager.php and the frontend both use
`shareapi_restrict_user_enumeration_full_match_user_id` (with underscore).
This mismatch causes the "disable exact match by user ID" admin setting
to have no effect on actual sharee search results.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
- For Apache `RewriteRule`, if the substitution (right side) has no `?` query part, the original query string is already preserved by default.
- So `QSA` adds nothing in these rules.
Note for the future: QSA will be needed if we ever add a query string on the right (substitution) side. We don't currently so this is just noise in the htaccess rules.
Signed-off-by: Josh <josh.t.richards@gmail.com>
Currently we return a 403 (Forbidden) when the password confirmation
failed - which itself seems to be inappropriate as its basically a login
failing so a 401 (not authorized) is more appropriate.
This is especially a problem because APIs might return 403 internally
for good reason (e.g. user missing permission) but 401 would not be a
problem.
But as this is a breaking change so my solution to be able to
distinguish API error from password confirmation error is:
Add a header inside the response that marks failed password confirmation
`X-NC-Auth-NotConfirmed`.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
It should be extended later to add methods to get attributes from
reflection, and maybe a getter to the reflectionMethod object to avoid
middlewares building their own.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Our interface contract (and implementations) in IStorage are:
`public function touch(string $path, ?int $mtime = null): bool {`
This wasn't always the case but it is today, so testTouchFloat() no longer makes sense; it's not testing our code, just PHP.
Signed-off-by: Josh <josh.t.richards@gmail.com>
The permission string for directories and files can contain M or S
depending if they are respectively coming from a mount or a share. This
information is not to be disclosed when the share is a public one.
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
"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.":"নেক্সটক্লাউডের নিরীক্ষামূলক সক্ষমতা প্রদান করে যেমন লগিং ফাইল অ্যাক্সেস বা অন্য কোনো জরুরী পদক্ষেপসমূহ"
"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",
"{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":"Edit comment",
"Delete comment":"Delete comment",
"Cancel edit":"Cancel edit",
"Post comment":"Post comment",
"@ for mentions, : for emoji, / for smart picker":"@ for mentions, : for emoji, / for smart picker",
"Could not reload comments":"Could not reload comments",
"Failed to mark comments as read":"Failed to mark comments as read",
"Unable to load the comments list":"Unable to load the comments list",
"No comments yet, start the conversation!":"No comments yet, start the conversation!",
"No more messages":"No more messages",
"Retry":"Retry",
"_1 new comment_::_{unread} new comments_":["1 new comment","{unread} new comments"],
"Comment":"Comment",
"An error occurred while trying to edit the comment":"An error occurred while trying to edit the comment",
"Comment deleted":"Comment deleted",
"An error occurred while trying to delete the comment":"An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment":"An error occurred while trying to create the comment"
"Comments":"კომენტარები",
"You commented":"თქვენი კომენტარი",
"{author} commented":"{author}-ის კომენტარი",
"You commented on %1$s":"თქვენი კომენტარი %1$s-ზე",
"You commented on {file}":"თქვენი კომენტარი {file}-ზე",
"%1$s commented on %2$s":"%1$s-მა დატოვა კომენტარი %2$s-ზე",
"{author} commented on {file}":"{author}-მა დატოვა კომენტარი {file}-ზე",
"<strong>Comments</strong> for files":"<strong>კომენტარები</strong> ფაილებისთვის",
"Files":"ფაილები",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"თქვენ გახსენეს \"{file}\"-ის კომენტარში ანგარიშიდან, რომელიც მის შემდეგ წაიშალა",
"{user} mentioned you in a comment on \"{file}\"":"{user}-მა გახსენათ კომენტარში ფაილზე \"{file}\"",
"Files app plugin to add comments to files":"Files აპის დამატება ფაილებზე კომენტარების დასამატებლად",
"Edit comment":"კომენტარის ჩასწორება",
"Delete comment":"კომენტარის წაშლა",
"Cancel edit":"ჩასწორების გაუქმება",
"New comment":"ახალი კომენტარი",
"Write a comment …":"კომენტარის დაწერა …",
"Post comment":"კომენტარის დაპოსტვა",
"@ for mentions, : for emoji, / for smart picker":"@ ხსენებისთვის, : ემოჯისთვის, / ჭკვიანი ამრჩევისთვის",
"Could not reload comments":"კომენტარების თავიდან ჩატვირთვა შეუძლებელია",
"Failed to mark comments as read":"კომენტარების წაკითხულად მონიშვნა ჩავარდა",
"Unable to load the comments list":"კომენტარების სიის ჩატვირთვა ჩავარდა",
"No comments yet, start the conversation!":"ჯერ კომენტარები არაა. დაიწყეთ საუბარი!",
"No more messages":"მეტი შეტყობინება აღარაა",
"Retry":"თავიდან ცდა",
"_1 new comment_::_{unread} new comments_":["1 ახალი კომენტარი","{unread} ახალი კომენტარი"],
"Comment":"კომენტარი",
"An error occurred while trying to edit the comment":"კომენტარის ჩასწორებისას აღმოჩენილია შეცდომა",
"Comment deleted":"კომენტარი წაიშალა",
"An error occurred while trying to delete the comment":"კომენტარის წაშლისას აღმოჩენილია შეცდომა",
"An error occurred while trying to create the comment":"კომენტარის შექმნისას აღმოჩენილია შეცდომა",
"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",
"{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":"Edit comment",
"Delete comment":"Delete comment",
"Cancel edit":"Cancel edit",
"Post comment":"Post comment",
"@ for mentions, : for emoji, / for smart picker":"@ for mentions, : for emoji, / for smart picker",
"Could not reload comments":"Could not reload comments",
"Failed to mark comments as read":"Failed to mark comments as read",
"Unable to load the comments list":"Unable to load the comments list",
"No comments yet, start the conversation!":"No comments yet, start the conversation!",
"No more messages":"No more messages",
"Retry":"Retry",
"_1 new comment_::_{unread} new comments_":["1 new comment","{unread} new comments"],
"Comment":"Comment",
"An error occurred while trying to edit the comment":"An error occurred while trying to edit the comment",
"Comment deleted":"Comment deleted",
"An error occurred while trying to delete the comment":"An error occurred while trying to delete the comment",
"An error occurred while trying to create the comment":"An error occurred while trying to create the comment"
"Comments":"კომენტარები",
"You commented":"თქვენი კომენტარი",
"{author} commented":"{author}-ის კომენტარი",
"You commented on %1$s":"თქვენი კომენტარი %1$s-ზე",
"You commented on {file}":"თქვენი კომენტარი {file}-ზე",
"%1$s commented on %2$s":"%1$s-მა დატოვა კომენტარი %2$s-ზე",
"{author} commented on {file}":"{author}-მა დატოვა კომენტარი {file}-ზე",
"<strong>Comments</strong> for files":"<strong>კომენტარები</strong> ფაილებისთვის",
"Files":"ფაილები",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"თქვენ გახსენეს \"{file}\"-ის კომენტარში ანგარიშიდან, რომელიც მის შემდეგ წაიშალა",
"{user} mentioned you in a comment on \"{file}\"":"{user}-მა გახსენათ კომენტარში ფაილზე \"{file}\"",
"Files app plugin to add comments to files":"Files აპის დამატება ფაილებზე კომენტარების დასამატებლად",
"Edit comment":"კომენტარის ჩასწორება",
"Delete comment":"კომენტარის წაშლა",
"Cancel edit":"ჩასწორების გაუქმება",
"New comment":"ახალი კომენტარი",
"Write a comment …":"კომენტარის დაწერა …",
"Post comment":"კომენტარის დაპოსტვა",
"@ for mentions, : for emoji, / for smart picker":"@ ხსენებისთვის, : ემოჯისთვის, / ჭკვიანი ამრჩევისთვის",
"Could not reload comments":"კომენტარების თავიდან ჩატვირთვა შეუძლებელია",
"Failed to mark comments as read":"კომენტარების წაკითხულად მონიშვნა ჩავარდა",
"Unable to load the comments list":"კომენტარების სიის ჩატვირთვა ჩავარდა",
"No comments yet, start the conversation!":"ჯერ კომენტარები არაა. დაიწყეთ საუბარი!",
"No more messages":"მეტი შეტყობინება აღარაა",
"Retry":"თავიდან ცდა",
"_1 new comment_::_{unread} new comments_":["1 ახალი კომენტარი","{unread} ახალი კომენტარი"],
"Comment":"კომენტარი",
"An error occurred while trying to edit the comment":"კომენტარის ჩასწორებისას აღმოჩენილია შეცდომა",
"Comment deleted":"კომენტარი წაიშალა",
"An error occurred while trying to delete the comment":"კომენტარის წაშლისას აღმოჩენილია შეცდომა",
"An error occurred while trying to create the comment":"კომენტარის შექმნისას აღმოჩენილია შეცდომა",
"{author} commented on {file}":"{author} pakomentavo {file}",
"<strong>Comments</strong> for files":"Failų <strong>komentarai</strong>",
"Files":"Failai",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Buvote paminėtas „{file}“, komentare, kuris buvo parašytas iš paskyros, kuri vėliau buvo ištrinta.",
"{user} mentioned you in a comment on \"{file}\"":"{user} minėjo jus \"{file}\" komentare",
"Files app plugin to add comments to files":"Failų programėlės įskiepis, skirtas prie failų pridėti komentarus",
"Edit comment":"Taisyti komentarą",
"Delete comment":"Ištrinti komentarą",
"Cancel edit":"Atsisakyti taisymo",
"New comment":"Naujas komentaras",
"Write a comment …":"Rašyti komentarą ...",
"Post comment":"Paskelbti komentarą",
"@ for mentions, : for emoji, / for smart picker":"@ paminėjimams, : jaustukams, / išmaniajam rinkikliui",
"Could not reload comments":"Nepavyko įkelti komentarų iš naujo",
"Failed to mark comments as read":"Nepavyko pažymėti komentarų kaip perskaitytų",
"Unable to load the comments list":"Nepavyko įkelti komentarų sąrašo",
"No comments yet, start the conversation!":"Komentarų kol kas nėra, pradėkite pokalbį!",
"No more messages":"Daugiau jokių pranešimų",
"Retry":"Bandyti dar kartą",
"_1 new comment_::_{unread} new comments_":["1 neskaitytas komentaras","{unread} neskaityti komentarai","{unread} neskaitytų komentarų","{unread} neskaitytas komentaras"],
"Comment":"Komentaras",
"An error occurred while trying to edit the comment":"Bandant taisyti komentarą, įvyko klaida",
"Comment deleted":"Komentaras ištrintas",
"An error occurred while trying to delete the comment":"Bandant ištrinti komentarą, įvyko klaida",
"An error occurred while trying to create the comment":"Bandant sukurti komentarą, įvyko klaida"
"An error occurred while trying to create the comment":"Bandant sukurti komentarą, įvyko klaida",
"{author} commented on {file}":"{author} pakomentavo {file}",
"<strong>Comments</strong> for files":"Failų <strong>komentarai</strong>",
"Files":"Failai",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Buvote paminėtas „{file}“, komentare, kuris buvo parašytas iš paskyros, kuri vėliau buvo ištrinta.",
"{user} mentioned you in a comment on \"{file}\"":"{user} minėjo jus \"{file}\" komentare",
"Files app plugin to add comments to files":"Failų programėlės įskiepis, skirtas prie failų pridėti komentarus",
"Edit comment":"Taisyti komentarą",
"Delete comment":"Ištrinti komentarą",
"Cancel edit":"Atsisakyti taisymo",
"New comment":"Naujas komentaras",
"Write a comment …":"Rašyti komentarą ...",
"Post comment":"Paskelbti komentarą",
"@ for mentions, : for emoji, / for smart picker":"@ paminėjimams, : jaustukams, / išmaniajam rinkikliui",
"Could not reload comments":"Nepavyko įkelti komentarų iš naujo",
"Failed to mark comments as read":"Nepavyko pažymėti komentarų kaip perskaitytų",
"Unable to load the comments list":"Nepavyko įkelti komentarų sąrašo",
"No comments yet, start the conversation!":"Komentarų kol kas nėra, pradėkite pokalbį!",
"No more messages":"Daugiau jokių pranešimų",
"Retry":"Bandyti dar kartą",
"_1 new comment_::_{unread} new comments_":["1 neskaitytas komentaras","{unread} neskaityti komentarai","{unread} neskaitytų komentarų","{unread} neskaitytas komentaras"],
"Comment":"Komentaras",
"An error occurred while trying to edit the comment":"Bandant taisyti komentarą, įvyko klaida",
"Comment deleted":"Komentaras ištrintas",
"An error occurred while trying to delete the comment":"Bandant ištrinti komentarą, įvyko klaida",
"An error occurred while trying to create the comment":"Bandant sukurti komentarą, įvyko klaida"
"An error occurred while trying to create the comment":"Bandant sukurti komentarą, įvyko klaida",
"{author} commented on {file}":"{author} reageerde op {file}",
"<strong>Comments</strong> for files":"<strong>Reacties</strong> voor bestanden",
"Files":"Bestanden",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Je werd genoemd op \"{file}\", in een opmerking van een account dat intussen is verwijderd",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Je werd genoemd op \"{file}\", in een reactie van een account dat intussen is verwijderd",
"{user} mentioned you in a comment on \"{file}\"":"{user} noemde jou in een reactie op \"{file}\"",
"Files app plugin to add comments to files":"Bestanden app plugin om reacties aan bestanden toe te voegen",
"Edit comment":"Reactie bewerken",
"Delete comment":"Reactie verwijderen",
"Cancel edit":"Bewerking annuleren",
"New comment":"Nieuwe reactie",
"Write a comment …":"Schrijf een commentaar …",
"Write a comment …":"Schrijf een reactie …",
"Post comment":"Reactie plaatsen",
"@ for mentions, : for emoji, / for smart picker":"@ voor vermeldingen, : voor emoji, / voor Smart Picker",
"Could not reload comments":"Kon reactie niet opnieuw laden",
"{author} commented on {file}":"{author} reageerde op {file}",
"<strong>Comments</strong> for files":"<strong>Reacties</strong> voor bestanden",
"Files":"Bestanden",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Je werd genoemd op \"{file}\", in een opmerking van een account dat intussen is verwijderd",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted":"Je werd genoemd op \"{file}\", in een reactie van een account dat intussen is verwijderd",
"{user} mentioned you in a comment on \"{file}\"":"{user} noemde jou in een reactie op \"{file}\"",
"Files app plugin to add comments to files":"Bestanden app plugin om reacties aan bestanden toe te voegen",
"Edit comment":"Reactie bewerken",
"Delete comment":"Reactie verwijderen",
"Cancel edit":"Bewerking annuleren",
"New comment":"Nieuwe reactie",
"Write a comment …":"Schrijf een commentaar …",
"Write a comment …":"Schrijf een reactie …",
"Post comment":"Reactie plaatsen",
"@ for mentions, : for emoji, / for smart picker":"@ voor vermeldingen, : voor emoji, / voor Smart Picker",
"Could not reload comments":"Kon reactie niet opnieuw laden",
"Manages interaction between accounts and contacts":"Tvarko sąveiką tarp paskyrų ir kontaktų",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Rinkti duomenis apie klientų ir kontaktų sąveiką ir pateikti adresų knygą duomenims"
"Manages interaction between accounts and contacts":"Tvarko sąveiką tarp paskyrų ir kontaktų",
"Collect data about accounts and contacts interactions and provide an address book for the data":"Rinkti duomenis apie klientų ir kontaktų sąveiką ir pateikti adresų knygą duomenims"
"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.":"Pradėkite dieną informuotai\n\n„Nextcloud“ ataskaitų sritis yra jūsų dienos atspirties taškas, kuriame pateikiama artėjančių susitikimų, skubių el. laiškų, pokalbių žinučių, gaunamų bilietų, naujausių tviterio žinučių ir daug daugiau apžvalga! Žmonės gali pridėti norimus valdiklius ir pakeisti foną pagal savo skonį.",
"Weather":"Orai",
"Status":"Būsena",
"Good morning":"Labas rytas",
@@ -19,6 +20,7 @@ OC.L10N.register(
"Edit widgets":"Taisyti valdiklius",
"Get more widgets from the App Store":"Parsisiųsti įskiepių iš App Store",
"Weather service":"Orų tarnyba",
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information.":"Dėl jūsų privatumo, {productName} serveris jūsų vardu užklausė orų duomenis, todėl orų tarnyba negauna jokios asmeninės informacijos.",
"Weather data from Met.no":"Orų duomenys iš Met.no",
"geocoding with Nominatim":"geografinis kodavimas naudojant Nominatim",
"elevation data from OpenTopoData":"aukščio duomenys iš OpenTopoData"
"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.":"Pradėkite dieną informuotai\n\n„Nextcloud“ ataskaitų sritis yra jūsų dienos atspirties taškas, kuriame pateikiama artėjančių susitikimų, skubių el. laiškų, pokalbių žinučių, gaunamų bilietų, naujausių tviterio žinučių ir daug daugiau apžvalga! Žmonės gali pridėti norimus valdiklius ir pakeisti foną pagal savo skonį.",
"Weather":"Orai",
"Status":"Būsena",
"Good morning":"Labas rytas",
@@ -17,6 +18,7 @@
"Edit widgets":"Taisyti valdiklius",
"Get more widgets from the App Store":"Parsisiųsti įskiepių iš App Store",
"Weather service":"Orų tarnyba",
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information.":"Dėl jūsų privatumo, {productName} serveris jūsų vardu užklausė orų duomenis, todėl orų tarnyba negauna jokios asmeninės informacijos.",
"Weather data from Met.no":"Orų duomenys iš Met.no",
"geocoding with Nominatim":"geografinis kodavimas naudojant Nominatim",
"elevation data from OpenTopoData":"aukščio duomenys iš OpenTopoData"
"Get more widgets from the App Store":"Haal meer widgets op uit de App Store",
"Weather service":"Weerberichten",
"Weather service":"Weer dienst",
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information.":"Voor je privacy worden de weergegevens namens jou opgevraagd door je {productName} server, zodat de weer dienst geen persoonlijke informatie ontvangt.",
"Weather data from Met.no":"Weerbericht via Met.no",
"geocoding with Nominatim":"geocoding met Nominatim",
"Get more widgets from the App Store":"Haal meer widgets op uit de App Store",
"Weather service":"Weerberichten",
"Weather service":"Weer dienst",
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information.":"Voor je privacy worden de weergegevens namens jou opgevraagd door je {productName} server, zodat de weer dienst geen persoonlijke informatie ontvangt.",
"Weather data from Met.no":"Weerbericht via Met.no",
"geocoding with Nominatim":"geocoding met Nominatim",
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.