76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * @author          Tassos Marinos <info@tassos.gr>
 | |
|  * @link            https://www.tassos.gr
 | |
|  * @copyright       Copyright © 2024 Tassos All Rights Reserved
 | |
|  * @license         GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
 | |
| */
 | |
| 
 | |
| defined('_JEXEC') or die('Restricted access');
 | |
| 
 | |
| use Joomla\CMS\Uri\Uri;
 | |
| use Joomla\CMS\HTML\HTMLHelper;
 | |
| use Joomla\CMS\Language\Text;
 | |
| 
 | |
| HTMLHelper::stylesheet('plg_system_nrframework/chainedfields.css', ['relative' => true, 'version' => 'auto']);
 | |
| HTMLHelper::script('plg_system_nrframework/chainedfields.js', ['relative' => true, 'version' => 'auto']);
 | |
| 
 | |
| extract($displayData);
 | |
| 
 | |
| if (!$data)
 | |
| {
 | |
| 	return;
 | |
| }
 | |
| ?>
 | |
| <div
 | |
| 	class="nr-chained-fields"
 | |
| 	data-data-source="<?php echo $data_source; ?>"
 | |
| 	data-csv="<?php echo htmlspecialchars(json_encode($csv)); ?>"
 | |
| 	data-base-url="<?php echo Uri::base(); ?>"
 | |
| 	data-loading="<?php echo Text::_('NR_LOADING'); ?>">
 | |
| 	<?php
 | |
| 	if (!$value)
 | |
| 	{
 | |
| 		foreach ($data['inputs'] as $key => $input)
 | |
| 		{
 | |
| 			$selectedOrDisabled = isset($data['choices'][$key]) && !$data['choices'][$key]['isSelected'] && $key !== 0 ? 'disabled' : 'selected';
 | |
| 			?>
 | |
| 			<select <?php echo $selectedOrDisabled; ?> name="<?php echo $input['name']; ?>" id="<?php echo $input['id']; ?>" class="nr-chained-fields-select form-select">
 | |
| 				<option class="placeholder" data-original="<?php echo $input['label']; ?>" value=""><?php echo $input['label']; ?></option>
 | |
| 				<?php
 | |
| 				if ($key == 0)
 | |
| 				{
 | |
| 					foreach ($data['choices'] as $key => $choice)
 | |
| 					{
 | |
| 						?><option value="<?php echo $choice['value']; ?>"><?php echo $choice['text']; ?></option><?php
 | |
| 					}
 | |
| 				}
 | |
| 				?>
 | |
| 			</select>
 | |
| 			<?php
 | |
| 		}
 | |
| 	}
 | |
| 	else
 | |
| 	{
 | |
| 		foreach ($value as $key => $value)
 | |
| 		{
 | |
| 			$selectedOrDisabled = empty($value['choices']) ? ' disabled' : '';
 | |
| 			?>
 | |
| 			<select<?php echo $selectedOrDisabled; ?> name="<?php echo $value['name']; ?>" id="<?php echo $value['id']; ?>" class="nr-chained-fields-select form-select">
 | |
| 				<option class="placeholder" data-original="<?php echo $value['label']; ?>" value=""><?php echo $value['label']; ?></option>
 | |
| 				<?php
 | |
| 				if ($value['choices'])
 | |
| 				{
 | |
| 					foreach ($value['choices'] as $key => $choice)
 | |
| 					{
 | |
| 						?><option<?php echo $choice['isSelected'] ? ' selected' : ''; ?> value="<?php echo $choice['value']; ?>"><?php echo $choice['text']; ?></option><?php
 | |
| 					}
 | |
| 				}
 | |
| 				?>
 | |
| 			</select>
 | |
| 			<?php
 | |
| 		}
 | |
| 	}
 | |
| 	?>
 | |
| </div>
 |