summaryrefslogtreecommitdiffstats
path: root/settings
diff options
context:
space:
mode:
Diffstat (limited to 'settings')
-rw-r--r--settings/Controller/AuthSettingsController.php11
-rw-r--r--settings/Controller/ChangePasswordController.php1
-rw-r--r--settings/Controller/GroupsController.php2
-rw-r--r--settings/Controller/MailSettingsController.php6
-rw-r--r--settings/Controller/UsersController.php4
-rw-r--r--settings/ajax/setquota.php7
-rw-r--r--settings/ajax/togglegroups.php7
-rw-r--r--settings/ajax/togglesubadmins.php7
-rw-r--r--settings/js/admin.js47
-rw-r--r--settings/js/authtoken_view.js7
-rw-r--r--settings/js/personal.js2
-rw-r--r--settings/js/users/groups.js15
-rw-r--r--settings/js/users/users.js252
-rw-r--r--settings/l10n/cs_CZ.js5
-rw-r--r--settings/l10n/cs_CZ.json5
-rw-r--r--settings/l10n/de.js3
-rw-r--r--settings/l10n/de.json3
-rw-r--r--settings/l10n/de_DE.js3
-rw-r--r--settings/l10n/de_DE.json3
-rw-r--r--settings/l10n/fr.js5
-rw-r--r--settings/l10n/fr.json5
-rw-r--r--settings/l10n/hu_HU.js1
-rw-r--r--settings/l10n/hu_HU.json1
-rw-r--r--settings/l10n/is.js1
-rw-r--r--settings/l10n/is.json1
-rw-r--r--settings/l10n/it.js1
-rw-r--r--settings/l10n/it.json1
-rw-r--r--settings/l10n/nb_NO.js1
-rw-r--r--settings/l10n/nb_NO.json1
-rw-r--r--settings/l10n/nl.js3
-rw-r--r--settings/l10n/nl.json3
-rw-r--r--settings/l10n/pt_BR.js1
-rw-r--r--settings/l10n/pt_BR.json1
-rw-r--r--settings/l10n/ru.js1
-rw-r--r--settings/l10n/ru.json1
-rw-r--r--settings/templates/apps.php5
-rw-r--r--settings/templates/personal.php19
37 files changed, 307 insertions, 135 deletions
diff --git a/settings/Controller/AuthSettingsController.php b/settings/Controller/AuthSettingsController.php
index 4e3d05a14e8..57192e119a9 100644
--- a/settings/Controller/AuthSettingsController.php
+++ b/settings/Controller/AuthSettingsController.php
@@ -111,7 +111,9 @@ class AuthSettingsController extends Controller {
/**
* @NoAdminRequired
* @NoSubadminRequired
+ * @PasswordConfirmationRequired
*
+ * @param string $name
* @return JSONResponse
*/
public function create($name) {
@@ -138,11 +140,11 @@ class AuthSettingsController extends Controller {
$tokenData = $deviceToken->jsonSerialize();
$tokenData['canDelete'] = true;
- return [
+ return new JSONResponse([
'token' => $token,
'loginName' => $loginName,
- 'deviceToken' => $tokenData
- ];
+ 'deviceToken' => $tokenData,
+ ]);
}
private function getServiceNotAvailableResponse() {
@@ -192,8 +194,7 @@ class AuthSettingsController extends Controller {
public function update($id, array $scope) {
$token = $this->tokenProvider->getTokenById($id);
$token->setScope([
- 'filesystem' => $scope['filesystem'],
- 'app' => array_values($scope['apps'])
+ 'filesystem' => $scope['filesystem']
]);
$this->tokenProvider->updateToken($token);
return [];
diff --git a/settings/Controller/ChangePasswordController.php b/settings/Controller/ChangePasswordController.php
index e43d0d8f343..832cdbefdbe 100644
--- a/settings/Controller/ChangePasswordController.php
+++ b/settings/Controller/ChangePasswordController.php
@@ -131,6 +131,7 @@ class ChangePasswordController extends Controller {
/**
* @NoAdminRequired
+ * @PasswordConfirmationRequired
*
* @param string $username
* @param string $password
diff --git a/settings/Controller/GroupsController.php b/settings/Controller/GroupsController.php
index feed45b118e..8985a76ec95 100644
--- a/settings/Controller/GroupsController.php
+++ b/settings/Controller/GroupsController.php
@@ -95,6 +95,7 @@ class GroupsController extends Controller {
}
/**
+ * @PasswordConfirmationRequired
* @param string $id
* @return DataResponse
*/
@@ -128,6 +129,7 @@ class GroupsController extends Controller {
}
/**
+ * @PasswordConfirmationRequired
* @param string $id
* @return DataResponse
*/
diff --git a/settings/Controller/MailSettingsController.php b/settings/Controller/MailSettingsController.php
index 84423aa8e29..108ac3f393a 100644
--- a/settings/Controller/MailSettingsController.php
+++ b/settings/Controller/MailSettingsController.php
@@ -73,6 +73,9 @@ class MailSettingsController extends Controller {
/**
* Sets the email settings
+ *
+ * @PasswordConfirmationRequired
+ *
* @param string $mail_domain
* @param string $mail_from_address
* @param string $mail_smtpmode
@@ -116,6 +119,9 @@ class MailSettingsController extends Controller {
/**
* Store the credentials used for SMTP in the config
+ *
+ * @PasswordConfirmationRequired
+ *
* @param string $mail_smtpname
* @param string $mail_smtppassword
* @return array
diff --git a/settings/Controller/UsersController.php b/settings/Controller/UsersController.php
index fde29de3598..89831a66aba 100644
--- a/settings/Controller/UsersController.php
+++ b/settings/Controller/UsersController.php
@@ -301,6 +301,7 @@ class UsersController extends Controller {
/**
* @NoAdminRequired
+ * @PasswordConfirmationRequired
*
* @param string $username
* @param string $password
@@ -433,6 +434,7 @@ class UsersController extends Controller {
/**
* @NoAdminRequired
+ * @PasswordConfirmationRequired
*
* @param string $id
* @return DataResponse
@@ -495,6 +497,7 @@ class UsersController extends Controller {
*
* @NoAdminRequired
* @NoSubadminRequired
+ * @PasswordConfirmationRequired
*
* @param string $id
* @param string $mailAddress
@@ -615,6 +618,7 @@ class UsersController extends Controller {
*
* @NoAdminRequired
* @NoSubadminRequired
+ * @PasswordConfirmationRequired
*
* @param string $username
* @param string $displayName
diff --git a/settings/ajax/setquota.php b/settings/ajax/setquota.php
index eee1de407b9..0906102ec20 100644
--- a/settings/ajax/setquota.php
+++ b/settings/ajax/setquota.php
@@ -32,6 +32,13 @@
OC_JSON::checkSubAdminUser();
OCP\JSON::callCheck();
+$lastConfirm = (int) \OC::$server->getSession()->get('last-password-confirm');
+if ($lastConfirm < (time() - 30 * 60 + 15)) { // allow 15 seconds delay
+ $l = \OC::$server->getL10N('core');
+ OC_JSON::error(array( 'data' => array( 'message' => $l->t('Password confirmation is required'))));
+ exit();
+}
+
$username = isset($_POST["username"]) ? (string)$_POST["username"] : '';
$isUserAccessible = false;
diff --git a/settings/ajax/togglegroups.php b/settings/ajax/togglegroups.php
index ff79861b811..b9958bef0c9 100644
--- a/settings/ajax/togglegroups.php
+++ b/settings/ajax/togglegroups.php
@@ -28,6 +28,13 @@
OC_JSON::checkSubAdminUser();
OCP\JSON::callCheck();
+$lastConfirm = (int) \OC::$server->getSession()->get('last-password-confirm');
+if ($lastConfirm < (time() - 30 * 60 + 15)) { // allow 15 seconds delay
+ $l = \OC::$server->getL10N('core');
+ OC_JSON::error(array( 'data' => array( 'message' => $l->t('Password confirmation is required'))));
+ exit();
+}
+
$success = true;
$username = (string)$_POST['username'];
$group = (string)$_POST['group'];
diff --git a/settings/ajax/togglesubadmins.php b/settings/ajax/togglesubadmins.php
index 390e5c09ef3..5658a382410 100644
--- a/settings/ajax/togglesubadmins.php
+++ b/settings/ajax/togglesubadmins.php
@@ -24,6 +24,13 @@
OC_JSON::checkAdminUser();
OCP\JSON::callCheck();
+$lastConfirm = (int) \OC::$server->getSession()->get('last-password-confirm');
+if ($lastConfirm < (time() - 30 * 60 + 15)) { // allow 15 seconds delay
+ $l = \OC::$server->getL10N('core');
+ OC_JSON::error(array( 'data' => array( 'message' => $l->t('Password confirmation is required'))));
+ exit();
+}
+
$username = (string)$_POST['username'];
$group = (string)$_POST['group'];
diff --git a/settings/js/admin.js b/settings/js/admin.js
index 7c2b507280f..094b12b2bab 100644
--- a/settings/js/admin.js
+++ b/settings/js/admin.js
@@ -172,21 +172,48 @@ $(document).ready(function(){
}
});
- $('#mail_general_settings_form').change(function(){
+ var changeEmailSettings = function() {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(changeEmailSettings);
+ return;
+ }
+
OC.msg.startSaving('#mail_settings_msg');
- var post = $( "#mail_general_settings_form" ).serialize();
- $.post(OC.generateUrl('/settings/admin/mailsettings'), post, function(data){
- OC.msg.finishedSaving('#mail_settings_msg', data);
+ $.ajax({
+ url: OC.generateUrl('/settings/admin/mailsettings'),
+ type: 'POST',
+ data: $('#mail_general_settings_form').serialize(),
+ success: function(data){
+ OC.msg.finishedSaving('#mail_settings_msg', data);
+ },
+ error: function(data){
+ OC.msg.finishedError('#mail_settings_msg', data.responseJSON.message);
+ }
});
- });
+ };
+
+ var toggleEmailCredentials = function() {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(toggleEmailCredentials);
+ return;
+ }
- $('#mail_credentials_settings_submit').click(function(){
OC.msg.startSaving('#mail_settings_msg');
- var post = $( "#mail_credentials_settings" ).serialize();
- $.post(OC.generateUrl('/settings/admin/mailsettings/credentials'), post, function(data){
- OC.msg.finishedSaving('#mail_settings_msg', data);
+ $.ajax({
+ url: OC.generateUrl('/settings/admin/mailsettings/credentials'),
+ type: 'POST',
+ data: $('#mail_credentials_settings').serialize(),
+ success: function(data){
+ OC.msg.finishedSaving('#mail_settings_msg', data);
+ },
+ error: function(data){
+ OC.msg.finishedError('#mail_settings_msg', data.responseJSON.message);
+ }
});
- });
+ };
+
+ $('#mail_general_settings_form').change(changeEmailSettings);
+ $('#mail_credentials_settings_submit').click(toggleEmailCredentials);
$('#sendtestemail').click(function(event){
event.preventDefault();
diff --git a/settings/js/authtoken_view.js b/settings/js/authtoken_view.js
index 0939913cc1a..24593a04f53 100644
--- a/settings/js/authtoken_view.js
+++ b/settings/js/authtoken_view.js
@@ -118,7 +118,7 @@
var matches = viewData.name.match(/Mozilla\/5\.0 \((\w+)\) (?:mirall|csyncoC)\/(\d+\.\d+\.\d+)/);
var userAgentMap = {
- ie: /(?:MSIE|Trident) (\d+)/,
+ ie: /(?:MSIE|Trident|Trident\/7.0; rv)[ :](\d+)/,
// Microsoft Edge User Agent from https://msdn.microsoft.com/en-us/library/hh869301(v=vs.85).aspx
edge: /^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+ Edge\/[0-9.]+$/,
// Firefox User Agent from https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference
@@ -299,6 +299,11 @@
},
_addAppPassword: function () {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(this._addAppPassword, this));
+ return;
+ }
+
var _this = this;
this._toggleAddingToken(true);
diff --git a/settings/js/personal.js b/settings/js/personal.js
index aef67f719c0..c2cb437bd13 100644
--- a/settings/js/personal.js
+++ b/settings/js/personal.js
@@ -65,7 +65,7 @@ function changeEmailAddress () {
// for failure the first parameter is the result object
OC.msg.finishedSaving('#lostpassword .msg', result);
}).fail(function(result){
- OC.msg.finishedSaving('#lostpassword .msg', result.responseJSON);
+ OC.msg.finishedError('#lostpassword .msg', result.responseJSON.message);
});
}
diff --git a/settings/js/users/groups.js b/settings/js/users/groups.js
index 8f4d95432a8..cfe01c17530 100644
--- a/settings/js/users/groups.js
+++ b/settings/js/users/groups.js
@@ -128,6 +128,11 @@ GroupList = {
},
createGroup: function (groupname) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(this.createGroup, this, groupname));
+ return;
+ }
+
$.post(
OC.generateUrl('/settings/users/groups'),
{
@@ -278,10 +283,16 @@ GroupList = {
GroupList.show);
//when to mark user for delete
- $userGroupList.on('click', '.delete', function () {
+ var deleteAction = function () {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(deleteAction, this));
+ return;
+ }
+
// Call function for handling delete/undo
GroupDeleteHandler.mark(GroupList.getElementGID(this));
- });
+ };
+ $userGroupList.on('click', '.delete', deleteAction);
//delete a marked user when leaving the page
$(window).on('beforeunload', function () {
diff --git a/settings/js/users/users.js b/settings/js/users/users.js
index 3a357c0e9c4..7e70d98f091 100644
--- a/settings/js/users/users.js
+++ b/settings/js/users/users.js
@@ -353,6 +353,14 @@ var UserList = {
$userListBody.on('click', '.delete', function () {
// Call function for handling delete/undo
var uid = UserList.getUID(this);
+
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(function() {
+ UserDeleteHandler.mark(uid);
+ });
+ return;
+ }
+
UserDeleteHandler.mark(uid);
});
@@ -405,6 +413,11 @@ var UserList = {
},
applyGroupSelect: function (element, user, checked) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(this.applySubadminSelect, this, element, user, checked));
+ return;
+ }
+
var $element = $(element);
var checkHandler = null;
@@ -467,6 +480,11 @@ var UserList = {
},
applySubadminSelect: function (element, user, checked) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(this.applySubadminSelect, this, element, user, checked));
+ return;
+ }
+
var $element = $(element);
var checkHandler = function (group) {
if (group === 'admin') {
@@ -478,7 +496,10 @@ var UserList = {
username: user,
group: group
},
- function () {
+ function (response) {
+ if (response.data.message) {
+ OC.Notification.show(response.data.message);
+ }
}
);
};
@@ -518,7 +539,7 @@ var UserList = {
OC.Notification.showTemporary(t('core', 'Invalid quota value "{val}"', {val: quota}));
return;
}
- UserList._updateQuota(uid, quota, function(returnedQuota){
+ UserList._updateQuota(uid, quota, function(returnedQuota) {
if (quota !== returnedQuota) {
$select.find(':selected').text(returnedQuota);
}
@@ -532,12 +553,21 @@ var UserList = {
* @param {Function} ready callback after save
*/
_updateQuota: function(uid, quota, ready) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(_.bind(this._updateQuota, this, uid, quota, ready));
+ return;
+ }
+
$.post(
OC.filePath('settings', 'ajax', 'setquota.php'),
{username: uid, quota: quota},
function (result) {
- if (ready) {
- ready(result.data.quota);
+ if (result.status === 'error') {
+ OC.Notification.showTemporary(result.data.message);
+ } else {
+ if (ready) {
+ ready(result.data.quota);
+ }
}
}
);
@@ -635,6 +665,28 @@ $(document).ready(function () {
// TODO: move other init calls inside of initialize
UserList.initialize($('#userlist'));
+ var _submitPasswordChange = function(uid, password, recoveryPasswordVal, blurFunction) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(function() {
+ _submitPasswordChange(uid, password, recoveryPasswordVal, blurFunction);
+ });
+ return;
+ }
+
+ $.post(
+ OC.generateUrl('/settings/users/changepassword'),
+ {username: uid, password: password, recoveryPassword: recoveryPasswordVal},
+ function (result) {
+ blurFunction();
+ if (result.status === 'success') {
+ OC.Notification.showTemporary(t('admin', 'Password successfully changed'));
+ } else {
+ OC.Notification.showTemporary(t('admin', result.data.message));
+ }
+ }
+ ).fail(blurFunction);
+ };
+
$userListBody.on('click', '.password', function (event) {
event.stopPropagation();
@@ -643,6 +695,12 @@ $(document).ready(function () {
var uid = UserList.getUID($td);
var $input = $('<input type="password">');
var isRestoreDisabled = UserList.getRestoreDisabled($td) === true;
+ var blurFunction = function () {
+ $(this).replaceWith($('<span>●●●●●●●</span>'));
+ $td.find('img').show();
+ // remove highlight class from users without recovery ability
+ $tr.removeClass('row-warning');
+ };
if(isRestoreDisabled) {
$tr.addClass('row-warning');
// add tipsy if the password change could cause data loss - no recovery enabled
@@ -657,34 +715,51 @@ $(document).ready(function () {
if (event.keyCode === 13) {
if ($(this).val().length > 0) {
var recoveryPasswordVal = $('input:password[id="recoveryPassword"]').val();
- $.post(
- OC.generateUrl('/settings/users/changepassword'),
- {username: uid, password: $(this).val(), recoveryPassword: recoveryPasswordVal},
- function (result) {
- if (result.status === 'success') {
- OC.Notification.showTemporary(t('admin', 'Password successfully changed'));
- } else {
- OC.Notification.showTemporary(t('admin', result.data.message));
- }
- }
- );
- $input.blur();
+ $input.off('blur');
+ _submitPasswordChange(uid, $(this).val(), recoveryPasswordVal, blurFunction);
} else {
$input.blur();
}
}
})
- .blur(function () {
- $(this).replaceWith($('<span>●●●●●●●</span>'));
- $td.find('img').show();
- // remove highlight class from users without recovery ability
- $tr.removeClass('row-warning');
- });
+ .blur(blurFunction);
});
$('input:password[id="recoveryPassword"]').keyup(function() {
OC.Notification.hide();
});
+ var _submitDisplayNameChange = function($tr, uid, displayName, blurFunction) {
+ var $div = $tr.find('div.avatardiv');
+ if ($div.length) {
+ $div.imageplaceholder(uid, displayName);
+ }
+
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(function() {
+ _submitDisplayNameChange($tr, uid, displayName, blurFunction);
+ });
+ return;
+ }
+
+ $.ajax({
+ type: 'POST',
+ url: OC.generateUrl('/settings/users/{id}/displayName', {id: uid}),
+ data: {
+ username: uid,
+ displayName: displayName
+ }
+ }).success(function (result) {
+ if (result && result.status==='success' && $div.length){
+ $div.avatar(result.data.username, 32);
+ }
+ $tr.data('displayname', displayName);
+ blurFunction();
+ }).fail(function (result) {
+ OC.Notification.showTemporary(result.responseJSON.message);
+ $tr.find('.displayName input').blur(blurFunction);
+ });
+ };
+
$userListBody.on('click', '.displayName', function (event) {
event.stopPropagation();
var $td = $(this).closest('td');
@@ -692,6 +767,11 @@ $(document).ready(function () {
var uid = UserList.getUID($td);
var displayName = escapeHTML(UserList.getDisplayName($td));
var $input = $('<input type="text" value="' + displayName + '">');
+ var blurFunction = function() {
+ var displayName = $tr.data('displayname');
+ $input.replaceWith('<span>' + escapeHTML(displayName) + '</span>');
+ $td.find('img').show();
+ };
$td.find('img').hide();
$td.children('span').replaceWith($input);
$input
@@ -699,34 +779,53 @@ $(document).ready(function () {
.keypress(function (event) {
if (event.keyCode === 13) {
if ($(this).val().length > 0) {
- var $div = $tr.find('div.avatardiv');
- if ($div.length) {
- $div.imageplaceholder(uid, displayName);
- }
- $.post(
- OC.generateUrl('/settings/users/{id}/displayName', {id: uid}),
- {username: uid, displayName: $(this).val()},
- function (result) {
- if (result && result.status==='success' && $div.length){
- $div.avatar(result.data.username, 32);
- }
- }
- );
- var displayName = $input.val();
- $tr.data('displayname', displayName);
- $input.blur();
+ $input.off('blur');
+ _submitDisplayNameChange($tr, uid, $(this).val(), blurFunction);
} else {
$input.blur();
}
}
})
- .blur(function () {
- var displayName = $tr.data('displayname');
- $input.replaceWith('<span>' + escapeHTML(displayName) + '</span>');
- $td.find('img').show();
- });
+ .blur(blurFunction);
});
+ var _submitEmailChange = function($tr, $td, $input, uid, mailAddress, blurFunction) {
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(function() {
+ _submitEmailChange($tr, $td, $input, uid, mailAddress, blurFunction);
+ });
+ return;
+ }
+
+ $.ajax({
+ type: 'PUT',
+ url: OC.generateUrl('/settings/users/{id}/mailAddress', {id: uid}),
+ data: {
+ mailAddress: mailAddress
+ }
+ }).success(function () {
+ // set data attribute to new value
+ // will in blur() be used to show the text instead of the input field
+ $tr.data('mailAddress', mailAddress);
+ $td.find('.loading-small').css('display', '');
+ $input.removeAttr('disabled')
+ .triggerHandler('blur'); // needed instead of $input.blur() for Firefox
+ blurFunction();
+ }).fail(function (result) {
+ if (!_.isUndefined(result.responseJSON.data)) {
+ OC.Notification.showTemporary(result.responseJSON.data.message);
+ } else if (!_.isUndefined(result.responseJSON.message)) {
+ OC.Notification.showTemporary(result.responseJSON.message);
+ } else {
+ OC.Notification.showTemporary(t('settings', 'Could not change the users email'));
+ }
+ $td.find('.loading-small').css('display', '');
+ $input.removeAttr('disabled')
+ .css('padding-right', '6px');
+ $input.blur(blurFunction);
+ });
+ };
+
$userListBody.on('click', '.mailAddress', function (event) {
event.stopPropagation();
var $td = $(this).closest('td');
@@ -734,6 +833,15 @@ $(document).ready(function () {
var uid = UserList.getUID($td);
var mailAddress = escapeHTML(UserList.getMailAddress($td));
var $input = $('<input type="text">').val(mailAddress);
+ var blurFunction = function() {
+ if($td.find('.loading-small').css('display') === 'inline-block') {
+ // in Chrome the blur event is fired too early by the browser - even if the request is still running
+ return;
+ }
+ var $span = $('<span>').text($tr.data('mailAddress'));
+ $input.replaceWith($span);
+ $td.find('img').show();
+ };
$td.children('span').replaceWith($input);
$td.find('img').hide();
$input
@@ -742,40 +850,14 @@ $(document).ready(function () {
if (event.keyCode === 13) {
// enter key
- var mailAddress = $input.val();
$td.find('.loading-small').css('display', 'inline-block');
$input.css('padding-right', '26px');
$input.attr('disabled', 'disabled');
- $.ajax({
- type: 'PUT',
- url: OC.generateUrl('/settings/users/{id}/mailAddress', {id: uid}),
- data: {
- mailAddress: $(this).val()
- }
- }).success(function () {
- // set data attribute to new value
- // will in blur() be used to show the text instead of the input field
- $tr.data('mailAddress', mailAddress);
- $td.find('.loading-small').css('display', '');
- $input.removeAttr('disabled')
- .triggerHandler('blur'); // needed instead of $input.blur() for Firefox
- }).fail(function (result) {
- OC.Notification.showTemporary(result.responseJSON.data.message);
- $td.find('.loading-small').css('display', '');
- $input.removeAttr('disabled')
- .css('padding-right', '6px');
- });
+ $input.off('blur');
+ _submitEmailChange($tr, $td, $input, uid, $(this).val(), blurFunction);
}
})
- .blur(function () {
- if($td.find('.loading-small').css('display') === 'inline-block') {
- // in Chrome the blur event is fired too early by the browser - even if the request is still running
- return;
- }
- var $span = $('<span>').text($tr.data('mailAddress'));
- $input.replaceWith($span);
- $td.find('img').show();
- });
+ .blur(blurFunction);
});
$('#newuser .groupsListContainer').on('click', function (event) {
@@ -796,8 +878,15 @@ $(document).ready(function () {
});
UserList._updateGroupListLabel($('#newuser .groups'), []);
- $('#newuser').submit(function (event) {
+ var _submitNewUserForm = function (event) {
event.preventDefault();
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ OC.PasswordConfirmation.requirePasswordConfirmation(function() {
+ _submitNewUserForm(event);
+ });
+ return;
+ }
+
var username = $('#newusername').val();
var password = $('#newuserpassword').val();
var email = $('#newemail').val();
@@ -866,7 +955,8 @@ $(document).ready(function () {
$('#newuser').get(0).reset();
});
});
- });
+ };
+ $('#newuser').submit(_submitNewUserForm);
if ($('#CheckboxStorageLocation').is(':checked')) {
$("#userlist .storageLocation").show();
@@ -874,11 +964,17 @@ $(document).ready(function () {
// Option to display/hide the "Storage location" column
$('#CheckboxStorageLocation').click(function() {
if ($('#CheckboxStorageLocation').is(':checked')) {
- $("#userlist .storageLocation").show();
- OCP.AppConfig.setValue('core', 'umgmt_show_storage_location', 'true');
+ OCP.AppConfig.setValue('core', 'umgmt_show_storage_location', 'true', {
+ success: function () {
+ $("#userlist .storageLocation").show();
+ }
+ });
} else {
- $("#userlist .storageLocation").hide();
- OCP.AppConfig.setValue('core', 'umgmt_show_storage_location', 'false');
+ OCP.AppConfig.setValue('core', 'umgmt_show_storage_location', 'false', {
+ success: function () {
+ $("#userlist .storageLocation").hide();
+ }
+ });
}
});
diff --git a/settings/l10n/cs_CZ.js b/settings/l10n/cs_CZ.js
index 4405e194dd0..099f1c24334 100644
--- a/settings/l10n/cs_CZ.js
+++ b/settings/l10n/cs_CZ.js
@@ -75,7 +75,9 @@ OC.L10N.register(
"Approved" : "Potvrzeno",
"Experimental" : "Experimentální",
"No apps found for {query}" : "Nebyly nalezeny žádné aplikace pro {query}",
+ "Allow filesystem access" : "Povolit přístup k souborovému systému",
"Disconnect" : "Odpojit",
+ "Revoke" : "Odvolat",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
"Firefox" : "Firefox",
@@ -87,6 +89,7 @@ OC.L10N.register(
"Android Client" : "Android klient",
"Sync client - {os}" : "Sync klient - {os}",
"This session" : "Toto sezení",
+ "Copy" : "Zkopírovat",
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zmáčknout ⌘-C pro kopírování.",
@@ -284,7 +287,7 @@ OC.L10N.register(
"Desktop client" : "Aplikace pro počítač",
"Android app" : "Aplikace pro Android",
"iOS app" : "iOS aplikace",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Chcete-li projekt podpořit\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">připojte se k vývoji</a>\n\t\tnebo\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">šiřte informace dál</a>!",
+ "If you want to support the project {contributeopen}join development{linkclose} or {contributeopen}spread the word{linkclose}!" : "Pokud chcete podpořit projekt {contributeopen}připojte se k jeho vývoji{linkclose} nebo {contributeopen}šiřte osvětu{linkclose}!",
"Show First Run Wizard again" : "Znovu zobrazit průvodce prvním spuštěním",
"Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášeni k vašemu účtu.",
"Device" : "Přístroj",
diff --git a/settings/l10n/cs_CZ.json b/settings/l10n/cs_CZ.json
index 70a3c8d7dab..ed7def27560 100644
--- a/settings/l10n/cs_CZ.json
+++ b/settings/l10n/cs_CZ.json
@@ -73,7 +73,9 @@
"Approved" : "Potvrzeno",
"Experimental" : "Experimentální",
"No apps found for {query}" : "Nebyly nalezeny žádné aplikace pro {query}",
+ "Allow filesystem access" : "Povolit přístup k souborovému systému",
"Disconnect" : "Odpojit",
+ "Revoke" : "Odvolat",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
"Firefox" : "Firefox",
@@ -85,6 +87,7 @@
"Android Client" : "Android klient",
"Sync client - {os}" : "Sync klient - {os}",
"This session" : "Toto sezení",
+ "Copy" : "Zkopírovat",
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zmáčknout ⌘-C pro kopírování.",
@@ -282,7 +285,7 @@
"Desktop client" : "Aplikace pro počítač",
"Android app" : "Aplikace pro Android",
"iOS app" : "iOS aplikace",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Chcete-li projekt podpořit\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">připojte se k vývoji</a>\n\t\tnebo\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">šiřte informace dál</a>!",
+ "If you want to support the project {contributeopen}join development{linkclose} or {contributeopen}spread the word{linkclose}!" : "Pokud chcete podpořit projekt {contributeopen}připojte se k jeho vývoji{linkclose} nebo {contributeopen}šiřte osvětu{linkclose}!",
"Show First Run Wizard again" : "Znovu zobrazit průvodce prvním spuštěním",
"Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášeni k vašemu účtu.",
"Device" : "Přístroj",
diff --git a/settings/l10n/de.js b/settings/l10n/de.js
index 030f1fdb629..f632bbc3fd6 100644
--- a/settings/l10n/de.js
+++ b/settings/l10n/de.js
@@ -284,7 +284,6 @@ OC.L10N.register(
"Desktop client" : "Desktop-Client",
"Android app" : "Android-App",
"iOS app" : "iOS-App",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Wenn du das Projekt unterstützen möchtest\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">hilf uns bei der Weiterentwicklung</a>\n⇥⇥oder\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">empfehle es weiter</a>!",
"Show First Run Wizard again" : "Den Einrichtungsassistenten erneut anzeigen",
"Web, desktop and mobile clients currently logged in to your account." : "Aktuell in Deinem Konto eingeloggte Web-, Desktop- und Mobil-Clients.",
"Device" : "Gerät",
@@ -297,7 +296,7 @@ OC.L10N.register(
"For security reasons this password will only be shown once." : "Aus Sicherheitsgründen wird das Passwort nur einmal angezeigt.",
"Username" : "Benutzername",
"Done" : "Erledigt",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud Community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
"Follow us on Google Plus!" : "Folgen Sie uns auf Google Plus!",
"Like our facebook page!" : "Like uns auf unserer Facebook-Seite!",
"Subscribe to our twitter channel!" : "Abonniere unseren Twitter-Kanal!",
diff --git a/settings/l10n/de.json b/settings/l10n/de.json
index d087e7eb4d6..95c0e7a87d2 100644
--- a/settings/l10n/de.json
+++ b/settings/l10n/de.json
@@ -282,7 +282,6 @@
"Desktop client" : "Desktop-Client",
"Android app" : "Android-App",
"iOS app" : "iOS-App",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Wenn du das Projekt unterstützen möchtest\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">hilf uns bei der Weiterentwicklung</a>\n⇥⇥oder\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">empfehle es weiter</a>!",
"Show First Run Wizard again" : "Den Einrichtungsassistenten erneut anzeigen",
"Web, desktop and mobile clients currently logged in to your account." : "Aktuell in Deinem Konto eingeloggte Web-, Desktop- und Mobil-Clients.",
"Device" : "Gerät",
@@ -295,7 +294,7 @@
"For security reasons this password will only be shown once." : "Aus Sicherheitsgründen wird das Passwort nur einmal angezeigt.",
"Username" : "Benutzername",
"Done" : "Erledigt",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud Community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
"Follow us on Google Plus!" : "Folgen Sie uns auf Google Plus!",
"Like our facebook page!" : "Like uns auf unserer Facebook-Seite!",
"Subscribe to our twitter channel!" : "Abonniere unseren Twitter-Kanal!",
diff --git a/settings/l10n/de_DE.js b/settings/l10n/de_DE.js
index 0bc767a663d..2f3ae6cf1f2 100644
--- a/settings/l10n/de_DE.js
+++ b/settings/l10n/de_DE.js
@@ -284,7 +284,6 @@ OC.L10N.register(
"Desktop client" : "Desktop-Client",
"Android app" : "Android-App",
"iOS app" : "iOS-App",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Wenn Sie das Projekt unterstützen möchten\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">helfen Sie bei der Weiterentwicklung</a>\n⇥⇥oder\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">empfehlen Sie es weiter</a>!",
"Show First Run Wizard again" : "Den Einrichtungsassistenten erneut anzeigen",
"Web, desktop and mobile clients currently logged in to your account." : "Aktuell in Ihrem Konto eingeloggte Web-, Desktop- und Mobil-Clients.",
"Device" : "Gerät",
@@ -297,7 +296,7 @@ OC.L10N.register(
"For security reasons this password will only be shown once." : "Aus Sicherheitsgründen wird das Passwort nur einmal angezeigt.",
"Username" : "Benutzername",
"Done" : "Erledigt",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud Community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
"Follow us on Google Plus!" : "Folgen Sie uns zu Google Plus!",
"Like our facebook page!" : "Liken Sie uns auf unserer Facebook-Seite!",
"Subscribe to our twitter channel!" : "Abonnieren Sie unseren Twitter-Kanal!",
diff --git a/settings/l10n/de_DE.json b/settings/l10n/de_DE.json
index 6a56ac2a176..17da0f5a26d 100644
--- a/settings/l10n/de_DE.json
+++ b/settings/l10n/de_DE.json
@@ -282,7 +282,6 @@
"Desktop client" : "Desktop-Client",
"Android app" : "Android-App",
"iOS app" : "iOS-App",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Wenn Sie das Projekt unterstützen möchten\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">helfen Sie bei der Weiterentwicklung</a>\n⇥⇥oder\n⇥⇥<a href=\"https://nextcloud.com/contribute\"\n⇥⇥⇥target=\"_blank\" rel=\"noreferrer\">empfehlen Sie es weiter</a>!",
"Show First Run Wizard again" : "Den Einrichtungsassistenten erneut anzeigen",
"Web, desktop and mobile clients currently logged in to your account." : "Aktuell in Ihrem Konto eingeloggte Web-, Desktop- und Mobil-Clients.",
"Device" : "Gerät",
@@ -295,7 +294,7 @@
"For security reasons this password will only be shown once." : "Aus Sicherheitsgründen wird das Passwort nur einmal angezeigt.",
"Username" : "Benutzername",
"Done" : "Erledigt",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Entwickelt von der {communityopen}Nextcloud Community{linkclose}, der {githubopen}Quellcode{linkclose} ist lizensiert unter {licenseopen}AGPL{linkclose}-Lizenz.",
"Follow us on Google Plus!" : "Folgen Sie uns zu Google Plus!",
"Like our facebook page!" : "Liken Sie uns auf unserer Facebook-Seite!",
"Subscribe to our twitter channel!" : "Abonnieren Sie unseren Twitter-Kanal!",
diff --git a/settings/l10n/fr.js b/settings/l10n/fr.js
index febf89f2507..6bcf3493d6d 100644
--- a/settings/l10n/fr.js
+++ b/settings/l10n/fr.js
@@ -199,6 +199,7 @@ OC.L10N.register(
"cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "Utilisez un service webcron pour exécuter cron.php toutes les 15 minutes par HTTP",
"Use system's cron service to call the cron.php file every 15 minutes." : "Utilisez le service cron du système pour appeler le fichier cron.php toutes les 15 minutes.",
"The cron.php needs to be executed by the system user \"%s\"." : "Le cron.php doit être exécuté par l'utilisateur système \"%s\".",
+ "To run this you need the PHP posix extension. See {linkstart}PHP documentation{linkend} for more details." : "Pour l'executer, vous devez avoir l'extension PHP posix. Regarder la {linkstart}documentation PHP{linkend} pour plus de détails.",
"Version" : "Version",
"Sharing" : "Partage",
"Allow apps to use the Share API" : "Autoriser les applications à utiliser l'API de partage",
@@ -219,6 +220,7 @@ OC.L10N.register(
"This text will be shown on the public link upload page when the file list is hidden." : "Ce texte sera visible sur la page publique de téléversement quand la liste des fichiers est masquée.",
"Tips & tricks" : "Trucs et astuces",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite est actuellement utilisé comme système de gestion de base de données. Pour des installations plus volumineuses, nous vous recommandons de migrer vers un autre système de gestion de base de données.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "C'est particulièrement recommandé lorsque l'on utilise un client bureau pour la synchronisation des fichiers.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pour migrer vers un autre type de base de données, utilisez la ligne de commande : 'occ db:convert-type' ou consultez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",
"How to do backups" : "Comment faire des sauvegardes",
"Advanced monitoring" : "Surveillance avancée",
@@ -254,6 +256,7 @@ OC.L10N.register(
"Administrator documentation" : "Documentation administrateur",
"Online documentation" : "Documentation en ligne",
"Forum" : "Forum",
+ "Getting help" : "Obtenir de l'aide",
"Commercial support" : "Support commercial",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Vous utilisez <strong>%s</strong> sur <strong>%s<strong>",
"Profile picture" : "Photo de profil",
@@ -281,7 +284,6 @@ OC.L10N.register(
"Desktop client" : "Client de bureau",
"Android app" : "Application Android",
"iOS app" : "Application iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Si vous voulez supporter le projet\n<a href=\"https://nextcloud.com/contribute\"\ntarget=\"_blank\" rel=\"noreferrer\">rejoindre le développement</a>\nou\n<a href=\"https://nextcloud.com/contribute\"\ntarget=\"_blank\" rel=\"noreferrer\">promouvoir</a> !",
"Show First Run Wizard again" : "Revoir la fenêtre d'accueil affichée lors de votre première connexion",
"Web, desktop and mobile clients currently logged in to your account." : "Clients web, desktop et mobiles actuellement connectés sur votre compte.",
"Device" : "Périphérique",
@@ -309,6 +311,7 @@ OC.L10N.register(
"Create" : "Créer",
"Admin Recovery Password" : "Mot de passe Administrateur de récupération",
"Enter the recovery password in order to recover the users files during password change" : "Entrez le mot de passe de récupération pour récupérer les fichiers utilisateurs pendant le changement de mot de passe",
+ "Group name" : "Nom de groupe",
"Everyone" : "Tout le monde",
"Admins" : "Administrateurs",
"Default quota" : "Quota par défaut",
diff --git a/settings/l10n/fr.json b/settings/l10n/fr.json
index c290f467133..53fb86e8bee 100644
--- a/settings/l10n/fr.json
+++ b/settings/l10n/fr.json
@@ -197,6 +197,7 @@
"cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "Utilisez un service webcron pour exécuter cron.php toutes les 15 minutes par HTTP",
"Use system's cron service to call the cron.php file every 15 minutes." : "Utilisez le service cron du système pour appeler le fichier cron.php toutes les 15 minutes.",
"The cron.php needs to be executed by the system user \"%s\"." : "Le cron.php doit être exécuté par l'utilisateur système \"%s\".",
+ "To run this you need the PHP posix extension. See {linkstart}PHP documentation{linkend} for more details." : "Pour l'executer, vous devez avoir l'extension PHP posix. Regarder la {linkstart}documentation PHP{linkend} pour plus de détails.",
"Version" : "Version",
"Sharing" : "Partage",
"Allow apps to use the Share API" : "Autoriser les applications à utiliser l'API de partage",
@@ -217,6 +218,7 @@
"This text will be shown on the public link upload page when the file list is hidden." : "Ce texte sera visible sur la page publique de téléversement quand la liste des fichiers est masquée.",
"Tips & tricks" : "Trucs et astuces",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite est actuellement utilisé comme système de gestion de base de données. Pour des installations plus volumineuses, nous vous recommandons de migrer vers un autre système de gestion de base de données.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "C'est particulièrement recommandé lorsque l'on utilise un client bureau pour la synchronisation des fichiers.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pour migrer vers un autre type de base de données, utilisez la ligne de commande : 'occ db:convert-type' ou consultez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",
"How to do backups" : "Comment faire des sauvegardes",
"Advanced monitoring" : "Surveillance avancée",
@@ -252,6 +254,7 @@
"Administrator documentation" : "Documentation administrateur",
"Online documentation" : "Documentation en ligne",
"Forum" : "Forum",
+ "Getting help" : "Obtenir de l'aide",
"Commercial support" : "Support commercial",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Vous utilisez <strong>%s</strong> sur <strong>%s<strong>",
"Profile picture" : "Photo de profil",
@@ -279,7 +282,6 @@
"Desktop client" : "Client de bureau",
"Android app" : "Application Android",
"iOS app" : "Application iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Si vous voulez supporter le projet\n<a href=\"https://nextcloud.com/contribute\"\ntarget=\"_blank\" rel=\"noreferrer\">rejoindre le développement</a>\nou\n<a href=\"https://nextcloud.com/contribute\"\ntarget=\"_blank\" rel=\"noreferrer\">promouvoir</a> !",
"Show First Run Wizard again" : "Revoir la fenêtre d'accueil affichée lors de votre première connexion",
"Web, desktop and mobile clients currently logged in to your account." : "Clients web, desktop et mobiles actuellement connectés sur votre compte.",
"Device" : "Périphérique",
@@ -307,6 +309,7 @@
"Create" : "Créer",
"Admin Recovery Password" : "Mot de passe Administrateur de récupération",
"Enter the recovery password in order to recover the users files during password change" : "Entrez le mot de passe de récupération pour récupérer les fichiers utilisateurs pendant le changement de mot de passe",
+ "Group name" : "Nom de groupe",
"Everyone" : "Tout le monde",
"Admins" : "Administrateurs",
"Default quota" : "Quota par défaut",
diff --git a/settings/l10n/hu_HU.js b/settings/l10n/hu_HU.js
index 0efe84d8c46..9d5a660881a 100644
--- a/settings/l10n/hu_HU.js
+++ b/settings/l10n/hu_HU.js
@@ -284,7 +284,6 @@ OC.L10N.register(
"Desktop client" : "Asztali kliens",
"Android app" : "Android alkalmazás",
"iOS app" : "IOS alkalmazás",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ha támogatni szeretnéd a projektet \n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">csatlakozz a fejlesztéshez</a>\n\t\tvagy\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">hírdesd</a>!",
"Show First Run Wizard again" : "Jelenítsd meg újra az Első indíráskori varázslót!",
"Web, desktop and mobile clients currently logged in to your account." : "A fiókodba jelenleg bejelentkezett web, asztali és mobil kliensek.",
"Device" : "Eszköz",
diff --git a/settings/l10n/hu_HU.json b/settings/l10n/hu_HU.json
index eb4ff7863a5..801716207a8 100644
--- a/settings/l10n/hu_HU.json
+++ b/settings/l10n/hu_HU.json
@@ -282,7 +282,6 @@
"Desktop client" : "Asztali kliens",
"Android app" : "Android alkalmazás",
"iOS app" : "IOS alkalmazás",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ha támogatni szeretnéd a projektet \n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">csatlakozz a fejlesztéshez</a>\n\t\tvagy\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">hírdesd</a>!",
"Show First Run Wizard again" : "Jelenítsd meg újra az Első indíráskori varázslót!",
"Web, desktop and mobile clients currently logged in to your account." : "A fiókodba jelenleg bejelentkezett web, asztali és mobil kliensek.",
"Device" : "Eszköz",
diff --git a/settings/l10n/is.js b/settings/l10n/is.js
index a85fc71dac5..b05025b8687 100644
--- a/settings/l10n/is.js
+++ b/settings/l10n/is.js
@@ -270,7 +270,6 @@ OC.L10N.register(
"Desktop client" : "Skjáborðsforrit",
"Android app" : "Android-forrit",
"iOS app" : "iOS-forrit",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ef þú vilt styðja við verkefnið\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">taktu þátt í þróuninni</a>\n\t\teða\n\t\t<a href=\"https://nextcloud.com/promote\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">láttu orð út ganga</a>!",
"Show First Run Wizard again" : "Birta Fyrsta-skiptis-leiðarvísinn aftur",
"Web, desktop and mobile clients currently logged in to your account." : "Veftól, tölvur og símar sem núna eru skráð inn á aðganginn þinn.",
"Device" : "Tæki",
diff --git a/settings/l10n/is.json b/settings/l10n/is.json
index 0bfa735b96f..633ca851507 100644
--- a/settings/l10n/is.json
+++ b/settings/l10n/is.json
@@ -268,7 +268,6 @@
"Desktop client" : "Skjáborðsforrit",
"Android app" : "Android-forrit",
"iOS app" : "iOS-forrit",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ef þú vilt styðja við verkefnið\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">taktu þátt í þróuninni</a>\n\t\teða\n\t\t<a href=\"https://nextcloud.com/promote\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">láttu orð út ganga</a>!",
"Show First Run Wizard again" : "Birta Fyrsta-skiptis-leiðarvísinn aftur",
"Web, desktop and mobile clients currently logged in to your account." : "Veftól, tölvur og símar sem núna eru skráð inn á aðganginn þinn.",
"Device" : "Tæki",
diff --git a/settings/l10n/it.js b/settings/l10n/it.js
index 811255a8565..c3207d84e4e 100644
--- a/settings/l10n/it.js
+++ b/settings/l10n/it.js
@@ -284,7 +284,6 @@ OC.L10N.register(
"Desktop client" : "Client desktop",
"Android app" : "Applicazione Android",
"iOS app" : "Applicazione iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Se desideri supportare il progetto\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">contribuisci allo sviluppo</a>\n\t\to\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">diffondi il verbo</a>!",
"Show First Run Wizard again" : "Mostra nuovamente la procedura di primo avvio",
"Web, desktop and mobile clients currently logged in to your account." : "Client web, desktop e mobile attualmente connessi al tuo account.",
"Device" : "Dispositivo",
diff --git a/settings/l10n/it.json b/settings/l10n/it.json
index b94ca58298f..daa9560ccce 100644
--- a/settings/l10n/it.json
+++ b/settings/l10n/it.json
@@ -282,7 +282,6 @@
"Desktop client" : "Client desktop",
"Android app" : "Applicazione Android",
"iOS app" : "Applicazione iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Se desideri supportare il progetto\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">contribuisci allo sviluppo</a>\n\t\to\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">diffondi il verbo</a>!",
"Show First Run Wizard again" : "Mostra nuovamente la procedura di primo avvio",
"Web, desktop and mobile clients currently logged in to your account." : "Client web, desktop e mobile attualmente connessi al tuo account.",
"Device" : "Dispositivo",
diff --git a/settings/l10n/nb_NO.js b/settings/l10n/nb_NO.js
index a7e09072a93..ef298c80449 100644
--- a/settings/l10n/nb_NO.js
+++ b/settings/l10n/nb_NO.js
@@ -280,7 +280,6 @@ OC.L10N.register(
"Desktop client" : "Skrivebordsklient",
"Android app" : "Android-app",
"iOS app" : "iOS-app",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Hvis du vil støtte prosjektet \n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">delta i utviklingen</a>\n\t\t<or></or>\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spre ordet</a>!",
"Show First Run Wizard again" : "Vis \"Førstegangs veiviser\" på nytt",
"Web, desktop and mobile clients currently logged in to your account." : "Følgende nett, skrivebord og mobile klienter er for øyeblikket logget på din konto.",
"Device" : "Enhet",
diff --git a/settings/l10n/nb_NO.json b/settings/l10n/nb_NO.json
index 81cced8c08d..98f0ae6d1c2 100644
--- a/settings/l10n/nb_NO.json
+++ b/settings/l10n/nb_NO.json
@@ -278,7 +278,6 @@
"Desktop client" : "Skrivebordsklient",
"Android app" : "Android-app",
"iOS app" : "iOS-app",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Hvis du vil støtte prosjektet \n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">delta i utviklingen</a>\n\t\t<or></or>\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spre ordet</a>!",
"Show First Run Wizard again" : "Vis \"Førstegangs veiviser\" på nytt",
"Web, desktop and mobile clients currently logged in to your account." : "Følgende nett, skrivebord og mobile klienter er for øyeblikket logget på din konto.",
"Device" : "Enhet",
diff --git a/settings/l10n/nl.js b/settings/l10n/nl.js
index 719cd823c25..5df12eaa96b 100644
--- a/settings/l10n/nl.js
+++ b/settings/l10n/nl.js
@@ -76,6 +76,7 @@ OC.L10N.register(
"Experimental" : "Experimenteel",
"No apps found for {query}" : "Geen apps gevonden voor {query}",
"Disconnect" : "Verbreek verbinding",
+ "Revoke" : "Intrekken",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
"Firefox" : "Firefox",
@@ -87,6 +88,7 @@ OC.L10N.register(
"Android Client" : "Android Client",
"Sync client - {os}" : "Sync client - {os}",
"This session" : "Deze sessie",
+ "Copy" : "Kopiëren",
"Copied!" : "Gekopieerd!",
"Not supported!" : "Niet ondersteund!",
"Press ⌘-C to copy." : "Druk op ⌘-C om te kopiëren.",
@@ -283,7 +285,6 @@ OC.L10N.register(
"Desktop client" : "Desktop client",
"Android app" : "Android app",
"iOS app" : "iOS app",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ondersteun het project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">ontwikkel het mee</a>\n\t\tof\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">verkondig het woord</a>!",
"Show First Run Wizard again" : "Toon de Eerste start Wizard opnieuw",
"Web, desktop and mobile clients currently logged in to your account." : "Web, desktop en mobiele clients zijn nu ingelogd op je account.",
"Device" : "Apparaat",
diff --git a/settings/l10n/nl.json b/settings/l10n/nl.json
index 820c6669f23..b6a532e97ee 100644
--- a/settings/l10n/nl.json
+++ b/settings/l10n/nl.json
@@ -74,6 +74,7 @@
"Experimental" : "Experimenteel",
"No apps found for {query}" : "Geen apps gevonden voor {query}",
"Disconnect" : "Verbreek verbinding",
+ "Revoke" : "Intrekken",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
"Firefox" : "Firefox",
@@ -85,6 +86,7 @@
"Android Client" : "Android Client",
"Sync client - {os}" : "Sync client - {os}",
"This session" : "Deze sessie",
+ "Copy" : "Kopiëren",
"Copied!" : "Gekopieerd!",
"Not supported!" : "Niet ondersteund!",
"Press ⌘-C to copy." : "Druk op ⌘-C om te kopiëren.",
@@ -281,7 +283,6 @@
"Desktop client" : "Desktop client",
"Android app" : "Android app",
"iOS app" : "iOS app",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Ondersteun het project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">ontwikkel het mee</a>\n\t\tof\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">verkondig het woord</a>!",
"Show First Run Wizard again" : "Toon de Eerste start Wizard opnieuw",
"Web, desktop and mobile clients currently logged in to your account." : "Web, desktop en mobiele clients zijn nu ingelogd op je account.",
"Device" : "Apparaat",
diff --git a/settings/l10n/pt_BR.js b/settings/l10n/pt_BR.js
index 301d5760366..1951a0330bb 100644
--- a/settings/l10n/pt_BR.js
+++ b/settings/l10n/pt_BR.js
@@ -276,7 +276,6 @@ OC.L10N.register(
"Desktop client" : "Cliente Desktop",
"Android app" : "App Android",
"iOS app" : "App iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Se quiser dar suporte ao projeto\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">junte-se ao desenvolvimento</a>\n\t\tou\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">espalhe pelo mundo</a>!",
"Show First Run Wizard again" : "Mostrar Assistente de Primeira Execução novamente",
"Web, desktop and mobile clients currently logged in to your account." : "Clientes Web, desktop e móvel estão conectados à sua conta.",
"Device" : "Dispositivo",
diff --git a/settings/l10n/pt_BR.json b/settings/l10n/pt_BR.json
index 2df3966fb9f..6f3176721ba 100644
--- a/settings/l10n/pt_BR.json
+++ b/settings/l10n/pt_BR.json
@@ -274,7 +274,6 @@
"Desktop client" : "Cliente Desktop",
"Android app" : "App Android",
"iOS app" : "App iOS",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Se quiser dar suporte ao projeto\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">junte-se ao desenvolvimento</a>\n\t\tou\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">espalhe pelo mundo</a>!",
"Show First Run Wizard again" : "Mostrar Assistente de Primeira Execução novamente",
"Web, desktop and mobile clients currently logged in to your account." : "Clientes Web, desktop e móvel estão conectados à sua conta.",
"Device" : "Dispositivo",
diff --git a/settings/l10n/ru.js b/settings/l10n/ru.js
index 54925be8cb8..1b44f4a6dbf 100644
--- a/settings/l10n/ru.js
+++ b/settings/l10n/ru.js
@@ -277,7 +277,6 @@ OC.L10N.register(
"Desktop client" : "Клиент для ПК",
"Android app" : "Android приложение",
"iOS app" : "iOS приложение",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Если вы хотите поддержать проект,\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">присоединяйтесь к разработке</a>\n\t\tили\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">расскажите о нас</a>!",
"Show First Run Wizard again" : "Показать помощник настройки снова",
"Web, desktop and mobile clients currently logged in to your account." : "Веб, настольные и мобильные клиенты, которые в настоящий момент авторизованы вашей учётной записью.",
"Device" : "Устройство",
diff --git a/settings/l10n/ru.json b/settings/l10n/ru.json
index aa729b30141..632431894a7 100644
--- a/settings/l10n/ru.json
+++ b/settings/l10n/ru.json
@@ -275,7 +275,6 @@
"Desktop client" : "Клиент для ПК",
"Android app" : "Android приложение",
"iOS app" : "iOS приложение",
- "If you want to support the project\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">join development</a>\n\t\tor\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">spread the word</a>!" : "Если вы хотите поддержать проект,\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">присоединяйтесь к разработке</a>\n\t\tили\n\t\t<a href=\"https://nextcloud.com/contribute\"\n\t\t\ttarget=\"_blank\" rel=\"noreferrer\">расскажите о нас</a>!",
"Show First Run Wizard again" : "Показать помощник настройки снова",
"Web, desktop and mobile clients currently logged in to your account." : "Веб, настольные и мобильные клиенты, которые в настоящий момент авторизованы вашей учётной записью.",
"Device" : "Устройство",
diff --git a/settings/templates/apps.php b/settings/templates/apps.php
index 36064f0981c..3753fd67a0c 100644
--- a/settings/templates/apps.php
+++ b/settings/templates/apps.php
@@ -147,11 +147,6 @@ script(
<ul id="apps-categories">
</ul>
- <div id="app-settings">
- <div id="app-settings-header">
- <button class="settings-button" data-apps-slide-toggle="#app-settings-content"></button>
- </div>
- </div>
</div>
<div id="app-content">
<svg height="0">
diff --git a/settings/templates/personal.php b/settings/templates/personal.php
index ea1c7ba6459..8f34d7b87b8 100644
--- a/settings/templates/personal.php
+++ b/settings/templates/personal.php
@@ -65,7 +65,7 @@ if($_['displayNameChangeSupported']) {
<h2>
<label for="displayName"><?php echo $l->t('Full name');?></label>
</h2>
- <input type="text" id="displayName" name="displayName"
+ <input type="text" id="displayName" name="displayName" class="password-confirm-required"
value="<?php p($_['displayName'])?>"
autocomplete="on" autocapitalize="off" autocorrect="off" />
<span class="msg"></span>
@@ -91,6 +91,7 @@ if($_['displayNameChangeSupported']) {
</h2>
<input type="email" name="email" id="email" value="<?php p($_['email']); ?>"
placeholder="<?php p($l->t('Your email address'));?>"
+ class="password-confirm-required"
autocomplete="on" autocapitalize="off" autocorrect="off" />
<span class="msg"></span><br />
<em><?php p($l->t('For password recovery and notifications'));?></em>
@@ -182,12 +183,16 @@ if($_['passwordChangeSupported']) {
</a>
<p>
- <?php print_unescaped($l->t('If you want to support the project
- <a href="https://nextcloud.com/contribute"
- target="_blank" rel="noreferrer">join development</a>
- or
- <a href="https://nextcloud.com/contribute"
- target="_blank" rel="noreferrer">spread the word</a>!'));?>
+ <?php print_unescaped(str_replace(
+ [
+ '{contributeopen}',
+ '{linkclose}',
+ ],
+ [
+ '<a href="https://nextcloud.com/contribute" target="_blank" rel="noreferrer">',
+ '</a>',
+ ],
+ $l->t('If you want to support the project {contributeopen}join development{linkclose} or {contributeopen}spread the word{linkclose}!'))); ?>
</p>
<?php if(OC_APP::isEnabled('firstrunwizard')) {?>