From ed0c10a10b0b3a9d9d898a64461de707026cd6d3 Mon Sep 17 00:00:00 2001 From: Robin McCorkell Date: Thu, 20 Mar 2014 18:27:40 +0000 Subject: [PATCH 1/4] Enable the use of 'optional' on password fields The logic has been changed, in that 'class="optional"' is applied to both password and text types if the field begins with the optional market, '&'. --- apps/files_external/templates/settings.php | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/apps/files_external/templates/settings.php b/apps/files_external/templates/settings.php index de44d3c8644..8e9355dd8a5 100644 --- a/apps/files_external/templates/settings.php +++ b/apps/files_external/templates/settings.php @@ -44,9 +44,17 @@ $value): ?> - + class="optional" data-parameter="" value="" placeholder="" /> @@ -55,18 +63,13 @@ data-parameter="" checked="checked" /> - - class="optional" data-parameter="" value="" placeholder="" /> From 7a0eccfc63e80ea27188032135560dbb45a1e5cb Mon Sep 17 00:00:00 2001 From: Robin McCorkell Date: Thu, 20 Mar 2014 18:28:42 +0000 Subject: [PATCH 2/4] Correct field modifier checking Existing code checks for the existence of a modifier ('&', '!', '#', '*') anywhere in the field name, but strips the first character regardless. This change makes it so that only modifiers at the beginning of the string are counted. --- apps/files_external/templates/settings.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/files_external/templates/settings.php b/apps/files_external/templates/settings.php index 8e9355dd8a5..ecbde442de0 100644 --- a/apps/files_external/templates/settings.php +++ b/apps/files_external/templates/settings.php @@ -52,18 +52,18 @@ $placeholder = substr($placeholder, 1); } ?> - + class="optional" data-parameter="" value="" placeholder="" /> - + - + From c4e7d7989a94ec974842120544a9510a56d70319 Mon Sep 17 00:00:00 2001 From: Robin McCorkell Date: Fri, 21 Mar 2014 13:51:45 +0000 Subject: [PATCH 3/4] Enable the use of 'optional' on password fields (JavaScript part) See ed0c10a10b0b3a9d9d898a64461de707026cd6d3 --- apps/files_external/js/settings.js | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/apps/files_external/js/settings.js b/apps/files_external/js/settings.js index cd2a3103eb7..0fceb41c0af 100644 --- a/apps/files_external/js/settings.js +++ b/apps/files_external/js/settings.js @@ -181,16 +181,21 @@ $(document).ready(function() { $.each(configurations, function(backend, parameters) { if (backend == backendClass) { $.each(parameters['configuration'], function(parameter, placeholder) { - if (placeholder.indexOf('*') != -1) { - td.append(''); - } else if (placeholder.indexOf('!') != -1) { + var is_optional = false; + if (placeholder.indexOf('&') === 0) { + is_optional = true; + placeholder = placeholder.substring(1); + } + if (placeholder.indexOf('*') === 0) { + var class_string = is_optional ? ' class="optional"' : ''; + td.append(''); + else if (placeholder.indexOf('!') === 0) { td.append(''); - } else if (placeholder.indexOf('&') != -1) { - td.append(''); - } else if (placeholder.indexOf('#') != -1) { + else if (placeholder.indexOf('#') === 0) { td.append(''); - } else { - td.append(''); + else { + var class_string = is_optional ? ' class="optional"' : ''; + td.append(''); } }); if (parameters['custom'] && $('#externalStorage tbody tr.'+backendClass.replace(/\\/g, '\\\\')).length == 1) { From 690c31ec20cc15129576fe64140d8733f9daf640 Mon Sep 17 00:00:00 2001 From: Robin McCorkell Date: Mon, 24 Mar 2014 13:27:46 +0000 Subject: [PATCH 4/4] Insert missing brace --- apps/files_external/js/settings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/files_external/js/settings.js b/apps/files_external/js/settings.js index 0fceb41c0af..00793a614c2 100644 --- a/apps/files_external/js/settings.js +++ b/apps/files_external/js/settings.js @@ -189,11 +189,11 @@ $(document).ready(function() { if (placeholder.indexOf('*') === 0) { var class_string = is_optional ? ' class="optional"' : ''; td.append(''); - else if (placeholder.indexOf('!') === 0) { + } else if (placeholder.indexOf('!') === 0) { td.append(''); - else if (placeholder.indexOf('#') === 0) { + } else if (placeholder.indexOf('#') === 0) { td.append(''); - else { + } else { var class_string = is_optional ? ' class="optional"' : ''; td.append(''); }