summaryrefslogtreecommitdiffstats
path: root/apps/user_ldap/js
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@owncloud.com>2013-01-24 13:00:40 +0100
committerArthur Schiwon <blizzz@owncloud.com>2013-01-24 13:00:40 +0100
commitb2ea78c00d203d7a70952dc7dab095cbeafb0b95 (patch)
tree7c7fa2beee8b1fe62c4ce87a057f608b41df628d /apps/user_ldap/js
parentb084ed6a428470d44a98b70a5fc22341edb4165a (diff)
downloadnextcloud-server-b2ea78c00d203d7a70952dc7dab095cbeafb0b95.tar.gz
nextcloud-server-b2ea78c00d203d7a70952dc7dab095cbeafb0b95.zip
LDAP: improve and cleanup settings JS
Diffstat (limited to 'apps/user_ldap/js')
-rw-r--r--apps/user_ldap/js/settings.js95
1 files changed, 53 insertions, 42 deletions
diff --git a/apps/user_ldap/js/settings.js b/apps/user_ldap/js/settings.js
index 66876cadaf7..c3484da5ac6 100644
--- a/apps/user_ldap/js/settings.js
+++ b/apps/user_ldap/js/settings.js
@@ -1,6 +1,57 @@
+var LdapConfiguration = {
+ refreshConfig: function() {
+ $.post(
+ OC.filePath('user_ldap','ajax','getConfiguration.php'),
+ $('#ldap_serverconfig_chooser').serialize(),
+ function (result) {
+ if(result.status == 'success') {
+ $.each(result.configuration, function(configkey, configvalue) {
+ elementID = '#'+configkey;
+
+ //deal with Checkboxes
+ if($(elementID).is('input[type=checkbox]')) {
+ if(configvalue == 1) {
+ $(elementID).attr('checked', 'checked');
+ } else {
+ $(elementID).removeAttr('checked');
+ }
+ return;
+ }
+
+ //On Textareas, Multi-Line Settings come as array
+ if($(elementID).is('textarea') && $.isArray(configvalue)) {
+ configvalue = configvalue.join("\n");
+ }
+
+ // assign the value
+ $('#'+configkey).val(configvalue);
+ });
+ }
+ }
+ );
+ },
+
+ resetDefaults: function() {
+ $('#ldap').find('input[type=text], input[type=number], input[type=password], textarea, select').each(function() {
+ if($(this).attr('id') == 'ldap_serverconfig_chooser') {
+ return;
+ }
+ $(this).val($(this).attr('data-default'));
+ });
+ $('#ldap').find('input[type=checkbox]').each(function() {
+ if($(this).attr('data-default') == 1) {
+ $(this).attr('checked', 'checked');
+ } else {
+ $(this).removeAttr('checked');
+ }
+ });
+ }
+}
+
$(document).ready(function() {
$('#ldapSettings').tabs();
$('#ldap_action_test_connection').button();
+ LdapConfiguration.refreshConfig();
$('#ldap_action_test_connection').click(function(event){
event.preventDefault();
$.post(
@@ -48,19 +99,7 @@ $(document).ready(function() {
'Keep settings?',
function(keep) {
if(!keep) {
- $('#ldap').find('input[type=text], input[type=number], input[type=password], textarea, select').each(function() {
- if($(this).attr('id') == 'ldap_serverconfig_chooser') {
- return;
- }
- $(this).val($(this).attr('data-default'));
- });
- $('#ldap').find('input[type=checkbox]').each(function() {
- if($(this).attr('data-default') == 1) {
- $(this).attr('checked', 'checked');
- } else {
- $(this).removeAttr('checked');
- }
- });
+ LdapConfiguration.resetDefaults();
}
}
);
@@ -76,35 +115,7 @@ $(document).ready(function() {
}
);
} else {
- $.post(
- OC.filePath('user_ldap','ajax','getConfiguration.php'),
- $('#ldap_serverconfig_chooser').serialize(),
- function (result) {
- if(result.status == 'success') {
- $.each(result.configuration, function(configkey, configvalue) {
- elementID = '#'+configkey;
-
- //deal with Checkboxes
- if($(elementID).is('input[type=checkbox]')) {
- if(configvalue == 1) {
- $(elementID).attr('checked', 'checked');
- } else {
- $(elementID).removeAttr('checked');
- }
- return;
- }
-
- //On Textareas, Multi-Line Settings come as array
- if($(elementID).is('textarea') && $.isArray(configvalue)) {
- configvalue = configvalue.join("\n");
- }
-
- // assign the value
- $('#'+configkey).val(configvalue);
- });
- }
- }
- );
+ LdapConfiguration.refreshConfig();
}
});
}); \ No newline at end of file