All Downloads are FREE. Search and download functionalities are using the official Maven repository.

template.bootstrap.simple.doubleselect.ftl Maven / Gradle / Ivy

<#--
/*
 * $Id: doubleselect.ftl 1366884 2012-07-29 18:23:06Z jogep $
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
-->
<#include "/${parameters.templateDir}/simple/select.ftl" />
<#assign startCount = 0/>
<#if parameters.headerKey?? && parameters.headerValue??>
    <#assign startCount = startCount + 1/>

<#if parameters.emptyOption??>
    <#assign startCount = startCount + 1/>



name="${parameters.doubleName!""}"<#rt/> <#if parameters.disabled!false> disabled="disabled"<#rt/> <#if parameters.doubleTabindex??> tabindex="${parameters.doubleTabindex}"<#rt/> <#if parameters.doubleId??> id="${parameters.doubleId}"<#rt/> <#if parameters.doubleCss??> class="form-control ${parameters.doubleCss}"<#rt/> <#else> class="form-control"<#rt/> <#if parameters.doubleStyle??> style="${parameters.doubleStyle}"<#rt/> <#if parameters.title??> title="${parameters.title}"<#rt/> <#if parameters.multiple!false> multiple="multiple"<#rt/> <#if parameters.get("doubleSize")??> size="${parameters.get("doubleSize")}"<#rt/> <#if parameters.doubleMultiple!false> multiple="multiple"<#rt/> <#if parameters.doubleDisabled!false> disabled="disabled"<#rt/> > <#if parameters.doubleMultiple!false> name="__multiselect_${parameters.doubleName!""}" value=""<#rt/> <#if parameters.doubleDisabled!false> disabled="disabled"<#rt/> /> <@s.script> <#assign itemCount = startCount/> var ${parameters.id}Group = new Array(${parameters.listSize} + ${startCount}); for (i = 0; i < (${parameters.listSize} + ${startCount}); i++) ${parameters.id}Group[i] = []; <@s.iterator value="parameters.list"> <#if parameters.listKey??> <#assign itemKey = stack.findValue(parameters.listKey)/> <#else> <#assign itemKey = stack.findValue('top')/> <#if parameters.listValue??> <#assign itemValue = stack.findString(parameters.listValue)/> <#else> <#assign itemValue = stack.findString('top')/> <#assign doubleItemCount = 0/> <#if parameters.doubleHeaderKey?? && parameters.doubleHeaderValue??> ${parameters.id}Group[${itemCount}][${doubleItemCount}] = new Option("${doubleHeaderValue?js_string}", "${doubleHeaderKey?js_string}"); <#assign doubleItemCount = doubleItemCount + 1/> <#if parameters.doubleEmptyOption??> ${parameters.id}Group[${itemCount}][${doubleItemCount}] = new Option("", ""); <#assign doubleItemCount = doubleItemCount + 1/> <@s.iterator value="${parameters.doubleList}"> <#if parameters.doubleListKey??> <#assign doubleItemKey = stack.findValue(parameters.doubleListKey)/> <#else> <#assign doubleItemKey = stack.findValue('top')/> <#assign doubleItemKeyStr = doubleItemKey.toString() /> <#if parameters.doubleListValue??> <#assign doubleItemValue = stack.findString(parameters.doubleListValue)/> <#else> <#assign doubleItemValue = stack.findString('top')/> <#if parameters.doubleListCssClass??> <#if stack.findString(parameters.doubleListCssClass)??> <#assign itemDoubleCssClass= stack.findString(parameters.doubleListCssClass)/> <#else> <#assign itemDoubleCssClass = ''/> <#if parameters.doubleListCssStyle??> <#if stack.findString(parameters.doubleListCssStyle)??> <#assign itemDoubleCssStyle= stack.findString(parameters.doubleListCssStyle)/> <#else> <#assign itemDoubleCssStyle = ''/> <#if parameters.doubleListTitle??> <#if stack.findString(parameters.doubleListTitle)??> <#assign itemDoubleTitle= stack.findString(parameters.doubleListTitle)/> <#else> <#assign itemDoubleTitle = ''/> ${parameters.id}Group[${itemCount}][${doubleItemCount}] = new Option("${doubleItemValue?js_string}", "${doubleItemKeyStr?js_string}"); <#if itemDoubleCssClass?has_content> ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("class", "${itemDoubleCssClass}"); <#if itemDoubleCssStyle?has_content> ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("style", "${itemDoubleCssStyle}"); <#if itemDoubleTitle?has_content> ${parameters.id}Group[${itemCount}][${doubleItemCount}].setAttribute("title", "${itemDoubleTitle}"); <#assign doubleItemCount = doubleItemCount + 1/> <#assign itemCount = itemCount + 1/> var ${parameters.id}Temp = document.${parameters.formName}.${parameters.doubleId}; <#assign itemCount = startCount/> <#assign redirectTo = 0/> <@s.iterator value="parameters.list"> <#if parameters.listKey??> <#assign itemKey = stack.findValue(parameters.listKey)/> <#else> <#assign itemKey = stack.findValue('top')/> <#if tag.contains(parameters.nameValue, itemKey)> <#assign redirectTo = itemCount/> <#assign itemCount = itemCount + 1/> ${parameters.id}Redirect(${redirectTo}); function ${parameters.id}Redirect(x) { var selected = false; for (m = ${parameters.id}Temp.options.length - 1; m >= 0; m--) { ${parameters.id}Temp.remove(m); } for (i = 0; i < ${parameters.id}Group[x].length; i++) { ${parameters.id}Temp.options[i] = new Option(${parameters.id}Group[x][i].text, ${parameters.id}Group[x][i].value); <#if parameters.doubleNameValue??> <#if parameters.doubleMultiple??> for (j = 0; j < ${parameters.doubleNameValue}. length; j++ ) { if (${parameters.id}Temp.options[i].value === ${parameters.doubleNameValue?js_string}[j]) { ${parameters.id}Temp.options[i].selected = true; selected = true; } } <#else> if (${parameters.id}Temp.options[i].value === '${parameters.doubleNameValue?js_string}') { ${parameters.id}Temp.options[i].selected = true; selected = true; } } if ((${parameters.id}Temp.options.length > 0) && (!selected)) { ${parameters.id}Temp.options[0].selected = true; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy