summaryrefslogtreecommitdiffstats
path: root/modules-available/baseconfig/templates
diff options
context:
space:
mode:
authorChristian Klinger2016-07-19 15:15:41 +0200
committerChristian Klinger2016-07-19 15:15:41 +0200
commitfe5ffb4c6c5e6e5af8e3708d1b9a06c2e026a3c2 (patch)
tree0d0a95417c45487b35b1ebce4a9827f380413f4e /modules-available/baseconfig/templates
parentMerging some refactoring + new filter functionality. (diff)
downloadslx-admin-fe5ffb4c6c5e6e5af8e3708d1b9a06c2e026a3c2.tar.gz
slx-admin-fe5ffb4c6c5e6e5af8e3708d1b9a06c2e026a3c2.tar.xz
slx-admin-fe5ffb4c6c5e6e5af8e3708d1b9a06c2e026a3c2.zip
use bootstrap-multiselect for multilist and selectize for multiinput.
Diffstat (limited to 'modules-available/baseconfig/templates')
-rw-r--r--modules-available/baseconfig/templates/_page.html48
1 files changed, 48 insertions, 0 deletions
diff --git a/modules-available/baseconfig/templates/_page.html b/modules-available/baseconfig/templates/_page.html
index 49e8164c..8bfd1b6a 100644
--- a/modules-available/baseconfig/templates/_page.html
+++ b/modules-available/baseconfig/templates/_page.html
@@ -66,3 +66,51 @@
<a class="btn btn-default" href="api.php?do=baseconfig&amp;user={{userid}}&amp;module={{target_module}}&amp;value={{field_value}}&amp;force=1">Download</a>
{{/override}}
</form>
+
+<script type="text/javascript">
+
+function updateShadows(e) {
+ var shadowStr = $(e.target).data('shadows');
+ var currentValue = $(e.target).val();
+ var rules = shadowStr.split(',');
+ rules.forEach(function(rule) {
+ var rule_parts = rule.split('->');
+ var triggerVal = rule_parts[0].trim();
+ var target = rule_parts[1].trim();
+
+ if (currentValue == triggerVal) {
+ $('#' + target).prop('disabled', true);
+ $('#' + target + '.multilist').multiselect('disable');
+ } else {
+ $('#' + target).prop('disabled', false);
+ $('#' + target + '.multilist').multiselect('enable');
+ }
+ });
+ console.log(shadowStr);
+}
+
+
+document.addEventListener("DOMContentLoaded", function () {
+ /* apply selectize on all multiinput-selectize inputs */
+ var $multiinputs = $("input.multiinput");
+ $multiinputs.selectize({
+ delimiter: ' ',
+ create: true,
+ plugins: ['restore_on_backspace', 'remove_button'],
+ maxItems: 10000
+
+ });
+
+ var $multilists = $("select.multilist");
+ $multilists.multiselect({
+ includeSelectAllOption: true,
+ buttonWidth: '100%',
+ buttonClass: 'form-control'
+ });
+
+ /* data-shadowing bindings */
+ $allShadowingFields = $('[data-shadows]');
+ $allShadowingFields.on('change', updateShadows);
+
+});
+</script>