File indexing completed on 2025-05-04 05:29:17
0001 <?php 0002 /** 0003 * ocs-webserver 0004 * 0005 * Copyright 2016 by pling GmbH. 0006 * 0007 * This file is part of ocs-webserver. 0008 * 0009 * This program is free software: you can redistribute it and/or modify 0010 * it under the terms of the GNU Affero General Public License as 0011 * published by the Free Software Foundation, either version 3 of the 0012 * License, or (at your option) any later version. 0013 * 0014 * This program is distributed in the hope that it will be useful, 0015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0017 * GNU Affero General Public License for more details. 0018 * 0019 * You should have received a copy of the GNU Affero General Public License 0020 * along with this program. If not, see <http://www.gnu.org/licenses/>. 0021 **/ 0022 ?> 0023 <div class="form-group"> 0024 <div class="col-sm-4 margin-top-15"> 0025 <?php if ($this->element->isRequired()) { ?> 0026 <div class="small grey bold-font pull-left margin-right-5">*</div> 0027 <?php } ?> 0028 <label class="form-label" for="<?= $this->escape($this->element->getName()) ?>">Category</label> 0029 </div> 0030 <div class="col-sm-8 margin-top-15"> 0031 <div class="small grey bold-font pull-left margin-right-5">*</div> 0032 <label class="form-label">Sub-Category</label> 0033 </div> 0034 <div class="col-sm-4"> 0035 <select data-target="wrap_project_subcategory_id" 0036 data-sub-target="project_sub_subcategory_id" 0037 class="required form-control product_select_cat" 0038 id="<?= $this->escape($this->element->getName()) ?>" 0039 name="<?= $this->escape($this->element->getName()) ?>"> 0040 <?php 0041 // force $value to array so we can compare multiple values to multiple 0042 // options; also ensure it's a string for comparison purposes. 0043 $value = array_map('strval', (array)$this->element->getValue()); 0044 foreach ($this->element->getMultiOptions() as $opt_value => $opt_label) { 0045 // selected? 0046 $opt = ''; 0047 if (in_array((string)$opt_value, $value)) { 0048 $opt .= ' selected="selected"'; 0049 } 0050 ?> 0051 <option <?= $opt ?> value="<?= $opt_value ?>"><?= $opt_label ?></option><?php 0052 } 0053 ?> 0054 </select> 0055 <?php if ($this->element->getMessages()) { 0056 $errorHtml = ''; 0057 foreach ($this->element->getMessages() as $currentError) { 0058 $errorHtml .= '<label id="<?=$this->escape($this->element->getName())?>-error" class="error" for="<?=$this->escape($this->element->getName())?>">' . $currentError . '</label>'; 0059 } 0060 ?> 0061 <?php echo $errorHtml ?> 0062 <?php } ?> 0063 </div> 0064 </div>