add parameter $alwaysmultiple getAttributeEditField() which makes select fields always multiple

This commit is contained in:
Uwe Steinmann 2022-08-31 20:38:20 +02:00
parent 4ac560c8d1
commit f6d0fb85fd
2 changed files with 14 additions and 14 deletions

View File

@ -1830,11 +1830,11 @@ $(document).ready(function() {
}
} /* }}} */
function printAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='') { /* {{{ */
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix);
function printAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
} /* }}} */
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='') { /* {{{ */
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
$dms = $this->params['dms'];
$content = '';
switch($attrdef->getType()) {
@ -1880,7 +1880,7 @@ $(document).ready(function() {
$users = $dms->getAllUsers();
if($users) {
$allowempty = $attrdef->getMinValues() == 0;
$allowmultiple = $attrdef->getMultipleValues();
$allowmultiple = $attrdef->getMultipleValues() || $alwaysmultiple;
$content .= "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")."\" name=\"".$fieldname."[".$attrdef->getId()."]".($allowmultiple ? '[]' : '')."\"".($allowmultiple ? " multiple" : "")." data-placeholder=\"".getMLText("select_user")."\">";
if($allowempty)
$content .= "<option value=\"\"></option>";
@ -1900,7 +1900,7 @@ $(document).ready(function() {
$groups = $dms->getAllGroups();
if($groups) {
$allowempty = $attrdef->getMinValues() == 0;
$allowmultiple = $attrdef->getMultipleValues();
$allowmultiple = $attrdef->getMultipleValues() || $alwaysmultiple;
$content .= "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")."\" name=\"".$fieldname."[".$attrdef->getId()."]".($allowmultiple ? '[]' : '')."\"".($allowmultiple ? " multiple" : "")." data-placeholder=\"".getMLText("select_group")."\">";
if($allowempty)
$content .= "<option value=\"\"></option>";
@ -1919,13 +1919,13 @@ $(document).ready(function() {
if($valueset = $attrdef->getValueSetAsArray()) {
$content .= "<input type=\"hidden\" name=\"".$fieldname."[".$attrdef->getId()."]\" value=\"\"/>";
$content .= "<select id=\"".$fieldname."_".$attrdef->getId()."\" name=\"".$fieldname."[".$attrdef->getId()."]";
if($attrdef->getMultipleValues()) {
if($attrdef->getMultipleValues() || $alwaysmultiple) {
$content .= "[]\" multiple";
} else {
$content .= "\" data-allow-clear=\"true\"";
}
$content .= "".((!$norequire && $attrdef->getMinValues() > 0) ? ' required="required"' : '')." class=\"chzn-select\" data-placeholder=\"".getMLText("select_value")."\">";
if(!$attrdef->getMultipleValues()) {
if(!$attrdef->getMultipleValues() && !$alwaysmultiple) {
$content .= "<option value=\"\"></option>";
}
$objvalue = $attribute ? (is_object($attribute) ? $attribute->getValueAsArray() : $attribute) : array();

View File

@ -1868,11 +1868,11 @@ $(document).ready(function() {
}
} /* }}} */
function printAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='') { /* {{{ */
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix);
function printAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
} /* }}} */
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='') { /* {{{ */
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
$dms = $this->params['dms'];
$content = '';
switch($attrdef->getType()) {
@ -1928,7 +1928,7 @@ $(document).ready(function() {
$users = $dms->getAllUsers();
if($users) {
$allowempty = $attrdef->getMinValues() == 0;
$allowmultiple = $attrdef->getMultipleValues();
$allowmultiple = $attrdef->getMultipleValues() || $alwaysmultiple;
$content .= "<select class=\"form-control chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")."\" name=\"".$fieldname."[".$attrdef->getId()."]".($allowmultiple ? '[]' : '')."\"".($allowmultiple ? " multiple" : "")." data-placeholder=\"".getMLText("select_user")."\">";
if($allowempty)
$content .= "<option value=\"\"></option>";
@ -1948,7 +1948,7 @@ $(document).ready(function() {
$groups = $dms->getAllGroups();
if($groups) {
$allowempty = $attrdef->getMinValues() == 0;
$allowmultiple = $attrdef->getMultipleValues();
$allowmultiple = $attrdef->getMultipleValues() || $alwaysmultiple;
$content .= "<select class=\"form-control chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")."\" name=\"".$fieldname."[".$attrdef->getId()."]".($allowmultiple ? '[]' : '')."\"".($allowmultiple ? " multiple" : "")." data-placeholder=\"".getMLText("select_group")."\">";
if($allowempty)
$content .= "<option value=\"\"></option>";
@ -1967,13 +1967,13 @@ $(document).ready(function() {
if($valueset = $attrdef->getValueSetAsArray()) {
$content .= "<input type=\"hidden\" name=\"".$fieldname."[".$attrdef->getId()."]\" value=\"\"/>";
$content .= "<select class=\"form-control\" id=\"".$fieldname."_".$attrdef->getId()."\" name=\"".$fieldname."[".$attrdef->getId()."]";
if($attrdef->getMultipleValues()) {
if($attrdef->getMultipleValues() || $alwaysmultiple) {
$content .= "[]\" multiple";
} else {
$content .= "\" data-allow-clear=\"true\"";
}
$content .= "".((!$norequire && $attrdef->getMinValues() > 0) ? ' required="required"' : '')." class=\"form-control chzn-select\" data-placeholder=\"".getMLText("select_value")."\">";
if(!$attrdef->getMultipleValues()) {
if(!$attrdef->getMultipleValues() && !$alwaysmultiple) {
$content .= "<option value=\"\"></option>";
}
$objvalue = $attribute ? (is_object($attribute) ? $attribute->getValueAsArray() : $attribute) : array();