154 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			154 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /*
 | |
|  * @package		Joomla.Framework
 | |
|  * @copyright	Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
 | |
|  * @license		GNU General Public License version 2 or later; see LICENSE.txt
 | |
|  *
 | |
|  * @component Phoca Component
 | |
|  * @copyright Copyright (C) Jan Pavelka www.phoca.cz
 | |
|  * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
 | |
|  */
 | |
| defined('JPATH_BASE') or die;
 | |
| use Joomla\CMS\Form\FormField;
 | |
| use Joomla\CMS\Factory;
 | |
| use Joomla\CMS\Language\Text;
 | |
| use Joomla\CMS\HTML\HTMLHelper;
 | |
| jimport('joomla.form.formfield');
 | |
| 
 | |
| class JFormFieldPhocaSelectFilename extends FormField
 | |
| {
 | |
| 	public $type = 'PhocaSelectFilename';
 | |
| 
 | |
| 	protected function getInput()
 | |
| 	{
 | |
| 
 | |
| 		// Initialize variables.
 | |
| 		$html 		= array();
 | |
| 
 | |
| 		$idA		= 'phFileNameModal';
 | |
| 		$onchange 	= (string) $this->element['onchange'];
 | |
| 		//$size     = ($v = $this->element['size']) ? ' size="' . $v . '"' : '';
 | |
| 		//$class    = ($v = $this->element['class']) ? ' class="' . $v . '"' : 'class="form-control"';
 | |
| 		$required = ($v = $this->element['required']) ? ' required="required"' : '';
 | |
| 
 | |
| 		// Initialize some field attributes.
 | |
| 		$attr = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : 'form-control';
 | |
| 		$attr .= $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
 | |
| 
 | |
| 		// Manager
 | |
| 		$manager		=	$this->element['manager'] ? $this->element['manager'] : '';
 | |
| 		$managerOutput	 =	$this->element['manager'] ? '&manager='.(string) $this->element['manager'] : '';
 | |
| 
 | |
| 		$idA .= 'mo' . $manager;
 | |
| 		$group = PhocaDownloadSettings::getManagerGroup((string) $this->element['manager']);
 | |
| 		$textButton	= 'COM_PHOCADOWNLOAD_FORM_SELECT_'.strtoupper($group['t']);
 | |
| 
 | |
| 		$link = 'index.php?option=com_phocadownload&view=phocadownloadmanager'.$group['c'].$managerOutput.'&field='.$this->id;
 | |
| 
 | |
| 
 | |
| 
 | |
| 		HTMLHelper::_('jquery.framework');
 | |
| 
 | |
| 		$script = array();
 | |
| 		$script[] = '	function phocaSelectFileName_'.$this->id.'(title) {';
 | |
| 		$script[] = '		document.getElementById("'.$this->id.'").value = title;';
 | |
| 		$script[] = '		'.$onchange;
 | |
| 		//$script[] = '		jModalClose();';
 | |
| 
 | |
| 		$script[] = '   jQuery(\'#'.$idA.'\').modal(\'toggle\');';
 | |
| 
 | |
| 		//$script[] = '		SqueezeBox.close();';
 | |
| 		//$script[] = '		jQuery(\'#'.$idA.'\').modal(\'toggle\');';
 | |
| 		$script[] = '	}';
 | |
| 
 | |
| 		// Add the script to the document head.
 | |
| 		Factory::getDocument()->addScriptDeclaration(implode("\n", $script));
 | |
| 
 | |
| 		$html[] = '<div class="input-append input-group">';
 | |
|         $html[] = '<span class="input-append input-group"><input type="text" id="' . $this->id . '" name="' . $this->name . '"'
 | |
|             . ' value="' . $this->value . '"' . $attr . ' />';
 | |
|         $html[] = '<a href="'.$link.'" role="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#'.$idA.'" title="' . Text::_($textButton) . '">'
 | |
|             . '<span class="icon-list icon-white"></span> '
 | |
|             . Text::_($textButton) . '</a></span>';
 | |
|         $html[] = '</div>'. "\n";
 | |
| 
 | |
|         $html[] = HTMLHelper::_(
 | |
|             'bootstrap.renderModal',
 | |
|             $idA,
 | |
|             array(
 | |
|                 'url'    => $link,
 | |
|                 'title'  => Text::_($textButton),
 | |
|                 'width'  => '',
 | |
|                 'height' => '',
 | |
|                 'modalWidth' => '80',
 | |
|                 'bodyHeight' => '80',
 | |
|                 'footer' => '<div  class="ph-info-modal"></div><button type="button" class="btn btn-primary" data-bs-dismiss="modal" aria-hidden="true">'
 | |
|                     . Text::_('COM_PHOCADOWNLOAD_CLOSE') . '</button>'
 | |
|             )
 | |
|         );
 | |
| 
 | |
|         return implode("\n", $html);
 | |
| 
 | |
| 		// Load the modal behavior script.
 | |
| 		//JHtml::_('behavior.modal', 'a.modal_'.$this->id);
 | |
| 
 | |
| 
 | |
| 
 | |
| 		// Build the script.
 | |
| 	/*	$script = array();
 | |
| 		$script[] = '	function phocaSelectFileName_'.$this->id.'(title) {';
 | |
| 		$script[] = '		document.getElementById("'.$this->id.'_id").value = title;';
 | |
| 		$script[] = '		'.$onchange;
 | |
| 		$script[] = '		SqueezeBox.close();';
 | |
| 		$script[] = '	}';
 | |
| 
 | |
| 		// Add the script to the document head.
 | |
| 		Factory::getDocument()->addScriptDeclaration(implode("\n", $script));
 | |
| 
 | |
| */
 | |
| 		/*$html[] = '<div class="fltlft">';
 | |
| 		$html[] = '	<input type="text" id="'.$this->id.'_id" name="'.$this->name.'" value="'. $this->value.'"' .
 | |
| 					' '.$attr.' />';
 | |
| 		$html[] = '</div>';
 | |
| 
 | |
| 		// Create the user select button.
 | |
| 		$html[] = '<div class="button2-left">';
 | |
| 		$html[] = '  <div class="blank">';
 | |
| 		$html[] = '		<a class="modal_'.$this->id.'" title="'.Text::_($textButton).'"' .
 | |
| 							' href="'.($this->element['readonly'] ? '' : $link).'"' .
 | |
| 							' rel="{handler: \'iframe\', size: {x: 780, y: 560}}">';
 | |
| 		$html[] = '			'.Text::_($textButton).'</a>';
 | |
| 		$html[] = '  </div>';
 | |
| 		$html[] = '</div>';*/
 | |
| 
 | |
| 	/*	Factory::getDocument()->addScriptDeclaration('
 | |
| 			function phocaSelectFileName_' . $this->id . '(name) {
 | |
| 				document.getElementById("' . $this->id . '").value = name;
 | |
| 				jQuery(\'#'.$idA.'\').modal(\'toggle\');
 | |
| 			}
 | |
| 		');*/
 | |
| 
 | |
| 		/*$html[] = '<span class="input-append"><input type="text" ' . $required . ' id="' . $this->id . '" name="' . $this->name . '"'
 | |
| 			. ' value="' . $this->value . '"' . $size . $class . ' />';
 | |
| 		$html[] = '<a href="#'.$idA.'" role="button" class="btn btn-primary" data-toggle="modal" title="' . Text::_($textButton) . '">'
 | |
| 			. '<span class="icon-list icon-white"></span> '
 | |
| 			. Text::_($textButton) . '</a></span>';
 | |
| 		$html[] = HTMLHelper::_(
 | |
| 			'bootstrap.renderModal',
 | |
| 			$idA,
 | |
| 			array(
 | |
| 				'url'    => $link,
 | |
| 				'title'  => Text::_($textButton),
 | |
| 				'width'  => '700px',
 | |
| 				'height' => '400px',
 | |
| 				'modalWidth' => '80',
 | |
| 				'bodyHeight' => '70',
 | |
| 				'footer' => '<button type="button" class="btn btn-primary" data-bs-dismiss="modal" aria-hidden="true">'
 | |
| 					. Text::_('COM_PHOCADOWNLOAD_CLOSE') . '</button>'
 | |
| 			)
 | |
| 		);*/
 | |
| 
 | |
| 
 | |
| 	}
 | |
| }
 |