/** * Constructor */ public function HTML_QuickForm_datepicker($elementName = null, $elementLabel = null, $attributes = null, $optionIncrement = null) { $js_form_name = api_get_unique_id(); HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_appendName = true; $this->_type = 'datepicker'; $popup_link = '<a href="javascript:openCalendar(\'' . $js_form_name . '\',\'' . $elementName . '\')"> <img src="' . api_get_path(WEB_IMG_PATH) . 'calendar_select.gif" style="vertical-align:middle;" alt="Select Date" /></a>'; $hour_minute_devider = get_lang("HourMinuteDivider"); $special_chars = array('D', 'l', 'd', 'M', 'F', 'm', 'y', 'H', 'a', 'A', 's', 'i', 'h', 'g', ' '); foreach ($special_chars as $char) { $popup_link = str_replace($char, "\\" . $char, $popup_link); $hour_minute_devider = str_replace($char, "\\" . $char, $hour_minute_devider); } $lang_code = api_get_language_isocode(); // If translation not available in PEAR::HTML_QuickForm_date, add the Chamilo-translation if (!array_key_exists($lang_code, $this->_locale)) { $this->_locale[$lang_code]['months_long'] = api_get_months_long(); } $this->_options['format'] = 'dFY ' . $popup_link . ' H ' . $hour_minute_devider . ' i'; $this->_options['minYear'] = date('Y') - 5; $this->_options['maxYear'] = date('Y') + 10; $this->_options['language'] = $lang_code; if (isset($optionIncrement)) { $this->_options['optionIncrement']['i'] = intval($optionIncrement); } }
/** * constructor * * @param string $elementName Element's name * @param mixed $elementLabel Label(s) for an element * @param array $options Options to control the element's display * @param mixed $attributes Either a typical HTML attribute string or an associative array */ public function __construct($elementName = null, $elementLabel = null, $options = array(), $attributes = null) { // Get the calendar type used - see MDL-18375. $calendartype = \core_calendar\type_factory::get_calendar_instance(); $this->_options = array('startyear' => $calendartype->get_min_year(), 'stopyear' => $calendartype->get_max_year(), 'defaulttime' => 0, 'timezone' => 99, 'step' => 5, 'optional' => false); // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_appendName = true; $this->_type = 'date_selector'; // set the options, do not bother setting bogus ones if (is_array($options)) { foreach ($options as $name => $value) { if (isset($this->_options[$name])) { if (is_array($value) && is_array($this->_options[$name])) { $this->_options[$name] = @array_merge($this->_options[$name], $value); } else { $this->_options[$name] = $value; } } } } // The YUI2 calendar only supports the gregorian calendar type. if ($calendartype->get_name() === 'gregorian') { form_init_date_js(); } }
/** * Constructor * * @param string $elementname Element's name * @param mixed $elementlabel Label(s) for an element * @param array $options Options to control the element's display. Required - must contain the following options: * 'isupdate' - is this a new module or are we editing an existing one? * 'currentgrade' - the current grademax in the database for this gradeitem * 'hasgrades' - whether or not the grade_item has existing grade_grades * 'canrescale' - whether or not the activity supports rescaling grades * @param mixed $attributes Either a typical HTML attribute string or an associative array */ public function __construct($elementname = null, $elementlabel = null, $options = array(), $attributes = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementname, $elementlabel, $attributes); $this->_persistantFreeze = true; $this->_appendName = true; $this->_type = 'modgrade'; $this->isupdate = !empty($options['isupdate']); if (isset($options['currentgrade'])) { $this->currentgrade = $options['currentgrade']; } if (isset($options['currentgradetype'])) { $gradetype = $options['currentgradetype']; switch ($gradetype) { case GRADE_TYPE_NONE: $this->currentgradetype = 'none'; break; case GRADE_TYPE_SCALE: $this->currentgradetype = 'scale'; break; case GRADE_TYPE_VALUE: $this->currentgradetype = 'point'; break; } } if (isset($options['currentscaleid'])) { $this->currentscaleid = $options['currentscaleid']; } $this->hasgrades = !empty($options['hasgrades']); $this->canrescale = !empty($options['canrescale']); $this->useratings = !empty($options['useratings']); }
/** * Constructor */ function HTML_QuickForm_datepickerdate($elementName = null, $elementLabel = null, $attributes = null) { global $myMinYear, $myMaxYear; $js_form_name = $attributes['form_name']; unset($attributes['form_name']); HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_appendName = true; $this->_type = 'datepicker'; $popup_link = '<a href="javascript:openCalendar(\'' . $js_form_name . '\',\'' . $elementName . '\')"><img src="' . api_get_path(WEB_IMG_PATH) . 'calendar_select.gif" style="vertical-align:middle;" alt="Select Date" /></a>'; $special_chars = array('D', 'l', 'd', 'M', 'F', 'm', 'y', 'H', 'a', 'A', 's', 'i', 'h', 'g', ' '); foreach ($special_chars as $index => $char) { $popup_link = str_replace($char, "\\" . $char, $popup_link); } $lang_code = api_get_language_isocode(); // If translation not available in PEAR::HTML_QuickForm_date, add the Chamilo-translation if (!array_key_exists($lang_code, $this->_locale)) { $this->_locale[$lang_code]['months_long'] = api_get_months_long(); } $this->_options['format'] = 'dFY ' . $popup_link; $this->_options['minYear'] = date('Y') - 5; $this->_options['maxYear'] = date('Y') + 10; $this->_options['language'] = $lang_code; //$this->_options['addEmptyOption'] = true; //$this->_options['emptyOptionValue'] = 0; //$this->_options['emptyOptionText'] = ' -- '; }
/** * Constructor * * @param string $elementName (optional) name of the editor * @param string $elementLabel (optional) editor label * @param array $attributes (optional) Either a typical HTML attribute string * or an associative array * @param array $options set of options to initalize filepicker */ function MoodleQuickForm_editor($elementName = null, $elementLabel = null, $attributes = null, $options = null) { global $CFG, $PAGE; $options = (array) $options; foreach ($options as $name => $value) { if (array_key_exists($name, $this->_options)) { $this->_options[$name] = $value; } } if (!empty($options['maxbytes'])) { $this->_options['maxbytes'] = get_max_upload_file_size($CFG->maxbytes, $options['maxbytes']); } if (!$this->_options['context']) { // trying to set context to the current page context to make legacy files show in filepicker (e.g. forum post) if (!empty($PAGE->context->id)) { $this->_options['context'] = $PAGE->context; } else { $this->_options['context'] = context_system::instance(); } } $this->_options['trusted'] = trusttext_trusted($this->_options['context']); parent::HTML_QuickForm_element($elementName, $elementLabel, $attributes); // Note: for some reason the code using this setting does not like bools. $this->_options['subdirs'] = (int) ($this->_options['subdirs'] == 1); editors_head_setup(); }
/** * Class constructor * * @param string $elementName Select name attribute * @param mixed $elementLabel Label(s) for the select * @param mixed $attributes Either a typical HTML attribute string or an associative array * @param mixed $options ignored, not used. */ public function __construct($elementName = null, $elementLabel = null, $attributes = null, $options = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes, null); $this->_type = 'selectyesno'; $this->_persistantFreeze = true; }
/** * Class constructor * * @param string Input field name attribute * @param mixed Label(s) for a field * @param mixed Either a typical HTML attribute string or an associative array * @since 1.0 * @access public * @return void */ public function __construct($elementName = null, $elementLabel = null, $attributes = null) { $attributes['class'] = isset($attributes['class']) ? $attributes['class'] : 'form-control'; parent::__construct($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'textarea'; }
/** * Class constructor * @param string HTML editor name/id * @param string HTML editor label * @param string Attributes for the textarea * @param array $editor_config Optional configuration settings for the online editor. */ function HTML_QuickForm_html_editor($elementName = null, $elementLabel = null, $attributes = null, $config = null) { // The global variable $fck_attribute has been deprecated. It stays here for supporting old external code. global $fck_attribute; HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'html_editor'; $this->fullPage = false; $name = $this->getAttribute('name'); $this->fck_editor = new FCKeditor($name); $this->fck_editor->ToolbarSet = $fck_attribute['ToolbarSet']; $this->fck_editor->Width = !empty($fck_attribute['Width']) ? $fck_attribute['Width'] : '990'; $this->fck_editor->Height = !empty($fck_attribute['Height']) ? $fck_attribute['Height'] : '400'; //We get the optionnals config parameters in $fck_attribute array $this->fck_editor->Config = !empty($fck_attribute['Config']) ? $fck_attribute['Config'] : array(); // This is an alternative (a better) way to pass configuration data to the editor. if (is_array($config)) { foreach ($config as $key => $value) { $this->fck_editor->Config[$key] = $config[$key]; } if (isset($config['ToolbarSet'])) { $this->fck_editor->ToolbarSet = $config['ToolbarSet']; } if (isset($config['Width'])) { $this->fck_editor->Width = $config['Width']; } if (isset($config['Height'])) { $this->fck_editor->Height = $config['Height']; } if (isset($config['FullPage'])) { $this->fullPage = is_bool($config['FullPage']) ? $config['FullPage'] : $config['FullPage'] === 'true'; } } }
/** * Class constructor * * @param string $elementLabel (optional)Img label * @param string $src (optional)Img src * @param string $alt (optional)Img alternative text * @param mixed $attributes (optional)Either a typical HTML attribute string * or an associative array * @since 1.0 * @access public * @return void * @throws */ function HTML_QuickForm_img($elementName = null, $elementLabel = null, $src = null, $alt = null, $attributes = null) { HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = false; $this->_type = 'img'; $this->setSrc($src); $this->setAlt($alt); }
/** * Constructor * * @param string $elementname Element's name * @param mixed $elementlabel Label(s) for an element * @param array $options Options to control the element's display. Not used. * @param mixed $attributes Either a typical HTML attribute string or an associative array */ public function __construct($elementname = null, $elementlabel = null, $options = array(), $attributes = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementname, $elementlabel, $attributes); $this->_persistantFreeze = true; $this->_appendName = true; $this->_type = 'modgrade'; }
/** * Class constructor * * @param string $elementLabel (optional)Link label * @param string $href (optional)Link href * @param string $text (optional)Link display text * @param mixed $attributes (optional)Either a typical HTML attribute string * or an associative array * @since 1.0 * @access public * @return void * @throws */ function HTML_QuickForm_link($elementName = null, $elementLabel = null, $href = null, $text = null, $attributes = null) { HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = false; $this->_type = 'link'; $this->setHref($href); $this->_text = $text; }
/** * Class constructor * * @param string $elementLabel (optional)Link label * @param string $href (optional)Link href * @param string $text (optional)Link display text * @param mixed $attributes (optional)Either a typical HTML attribute string * or an associative array * @since 1.0 * @access public * @return void * @throws */ public function __construct($elementName = null, $elementLabel = null, $href = null, $text = null, $attributes = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes); $this->_persistantFreeze = false; $this->_type = 'link'; $this->setHref($href); $this->_text = $text; }
/** * Constructor */ public function DateTimePicker($elementName = null, $elementLabel = null, $attributes = null) { if (!isset($attributes['id'])) { $attributes['id'] = $elementName; } HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_appendName = true; $this->_type = 'date_time_picker'; }
/** * Class constructor * * @param string Select name attribute * @param mixed Label(s) for the select (not used) * @param mixed Data to be used to populate options * @param mixed Either a typical HTML attribute string or an associative array (not used) * @since 1.0 * @access public * @return void */ function HTML_QuickForm_hiddenselect($elementName = null, $elementLabel = null, $options = null, $attributes = null) { HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'hiddenselect'; if (isset($options)) { $this->load($options); } }
/** * Class constructor * * @param string Select name attribute * @param mixed Label(s) for the select (not used) * @param mixed Data to be used to populate options * @param mixed Either a typical HTML attribute string or an associative array (not used) * @since 1.0 * @access public * @return void */ public function __construct($elementName = null, $elementLabel = null, $options = null, $attributes = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'hiddenselect'; if (isset($options)) { $this->load($options); } }
/** * Constructor */ public function DateRangePicker($elementName = null, $elementLabel = null, $attributes = null) { if (!isset($attributes['id'])) { $attributes['id'] = $elementName; } $attributes['class'] = 'span3'; HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_appendName = true; $this->_type = 'date_range_picker'; }
/** * Class constructor * * @param string Editor instance name * @param string Editor instance label * @param array Config settings for editor * @param string Attributes for the textarea * @access public * @return void */ function HTML_QuickForm_JoomlaEditor($elementName = null, $elementLabel = null, $attributes = null, $options = array()) { HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'JoomlaEditor'; // set editor height smaller if schema defines rows as 4 or less if (is_array($attributes) && array_key_exists('rows', $attributes) && $attributes['rows'] <= 4) { $this->height = 200; } }
/** * Class constructor * * @param string Input field name attribute * @param mixed Label(s) for a field * @param string Text to display near the radio * @param string Input field value * @param mixed Either a typical HTML attribute string or an associative array * @since 1.0 * @access public * @return void */ public function __construct($elementName = null, $elementLabel = null, $text = null, $value = null, $attributes = null) { // TODO MDL-52313 Replace with the call to parent::__construct(). HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes); if (isset($value)) { $this->setValue($value); } $this->_persistantFreeze = true; $this->setType('radio'); $this->_text = $text; }
/** * Class constructor * * @param string Input field name attribute * @param mixed Label(s) for a field * @param mixed Either a typical HTML attribute string or an associative array * @since 1.0 * @access public * @return void */ public function __construct($elementName = null, $elementLabel = null, $attributes = []) { if (empty($attributes) || isset($attributes) && !is_array($attributes)) { $attributes = []; } $attributes['class'] = isset($attributes['class']) ? $attributes['class'] : 'form-control'; $columnsSize = isset($attributes['cols-size']) ? $attributes['cols-size'] : null; $this->setColumnsSize($columnsSize); parent::__construct($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'textarea'; }
function HTML_QuickForm_ckeditor($elementName = null, $elementLabel = null, $attributes = null) { load_js('modules/Libs/CKEditor/ckeditor/ckeditor.js', ''); load_js('modules/Libs/CKEditor/ck.js', ''); static $num = 0; HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'text'; $this->config = array(); if (!isset($this->_attributes['id'])) { $this->_attributes['id'] = 'ckeditor_' . $elementName; } }
/** * Class constructor * * @param string Select name attribute * @param mixed Label(s) for the select * @param mixed Data to be used to populate options * @param mixed Either a typical HTML attribute string or an associative array * @since 1.0 * @access public * @return void */ function HTML_QuickForm_autoselect($elementName = null, $elementLabel = null, $options = null, $more_opts_callback = null, $format = null, $attributes = null) { HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'select'; if (isset($options)) { $this->load($options); $this->__options = $options; } $this->more_opts_callback = $more_opts_callback[0]; $this->more_opts_args = $more_opts_callback[1]; $this->more_opts_format = $format; }
function onQuickFormEvent($event, $arg, &$caller) { global $OUTPUT; switch ($event) { case 'addElement': $this->_contextid = $arg[3]['contextid']; $this->_filearea = $arg[3]['filearea']; $this->_fileareaitemid = $arg[3]['itemid']; $this->_format = $arg[4]; break; } return parent::onQuickFormEvent($event, $arg, $caller); }
/** * Class constructor * * @param string TinyMCE instance name * @param string TinyMCE instance label * @param array Config settings for TinyMCE * @param string Attributes for the textarea * @access public * @return void */ function HTML_QuickForm_TinyMCE($elementName = null, $elementLabel = null, $attributes = null, $options = array()) { $attributes['class'] = 'tinymce'; HTML_QuickForm_element::HTML_QuickForm_element($elementName, $elementLabel, $attributes); $this->_persistantFreeze = true; $this->_type = 'TinyMCE'; if (is_array($attributes) && array_key_exists('rows', $attributes) && $attributes['rows'] <= 4) { $this->Height = 200; } if (is_array($options)) { $this->Config = $options; } }
function MoodleQuickForm_editor($elementName = null, $elementLabel = null, $attributes = null, $options = null) { global $CFG; $options = (array) $options; foreach ($options as $name => $value) { if (array_key_exists($name, $this->_options)) { $this->_options[$name] = $value; } } if (!empty($options['maxbytes'])) { $this->_options['maxbytes'] = get_max_upload_file_size($CFG->maxbytes, $options['maxbytes']); } parent::HTML_QuickForm_element($elementName, $elementLabel, $attributes); }
/** * Returns the attachment element in HTML * * @return string The html text * @access public */ function toHtml() { if ($this->_flagFrozen) { return $this->getFrozenHtml(); } elseif ($this->_state == QF_ATTACHMENT_UPLOADED) { // Return the frozen html ... $html = $this->getFrozenHtml(); // ... and append the html of the unload element (if any) if (isset($this->_unload_element)) { $html .= ' ' . $this->_unload_element->toHtml(); } return $html; } return HTML_QuickForm_input::toHtml(); }
/** * Class constructor * @param string HTML editor name/id * @param string HTML editor label * @param array Attributes for the textarea * @param array $config Optional configuration settings for the online editor. * @return bool */ public function HTML_QuickForm_html_editor($name = null, $label = null, $attributes = null, $config = null) { if (empty($name)) { return false; } HTML_QuickForm_element::HTML_QuickForm_element($name, $label, $attributes); $this->_persistantFreeze = true; $this->_type = 'html_editor'; global $app, $fck_attribute; /** @var ChamiloLMS\Component\Editor\Editor $editor */ $editor = $app['html_editor']; $this->editor = $editor; $this->editor->setName($name); $this->editor->processConfig($fck_attribute); $this->editor->processConfig($config); }
function MoodleQuickForm_filemanager($elementName = null, $elementLabel = null, $attributes = null, $options = null) { global $CFG; require_once "{$CFG->dirroot}/repository/lib.php"; $options = (array) $options; foreach ($options as $name => $value) { if (array_key_exists($name, $this->_options)) { $this->_options[$name] = $value; } } if (!empty($options['maxbytes'])) { $this->_options['maxbytes'] = get_max_upload_file_size($CFG->maxbytes, $options['maxbytes']); } parent::HTML_QuickForm_element($elementName, $elementLabel, $attributes); repository_head_setup(); }
/** * Class constructor * @param string HTML editor name/id * @param string HTML editor label * @param array Attributes for the textarea * @param array $config Optional configuration settings for the online editor. * @return bool */ public function HTML_QuickForm_html_editor($name = null, $label = null, $attributes = null, $config = null) { if (empty($name)) { return false; } HTML_QuickForm_element::HTML_QuickForm_element($name, $label, $attributes); $this->_persistantFreeze = true; $this->_type = 'html_editor'; global $fck_attribute; $editor = Container::getHtmlEditor(); if ($editor) { $this->editor = $editor; $this->editor->setName($name); $this->editor->processConfig($fck_attribute); $this->editor->processConfig($config); } }
/** * Constructor * * @param string $elementName (optional) name of the filemanager * @param string $elementLabel (optional) filemanager label * @param array $attributes (optional) Either a typical HTML attribute string * or an associative array * @param array $options set of options to initalize filemanager */ function MoodleQuickForm_filemanager($elementName = null, $elementLabel = null, $attributes = null, $options = null) { global $CFG, $PAGE; $options = (array) $options; foreach ($options as $name => $value) { if (array_key_exists($name, $this->_options)) { $this->_options[$name] = $value; } } if (!empty($options['maxbytes'])) { $this->_options['maxbytes'] = get_user_max_upload_file_size($PAGE->context, $CFG->maxbytes, $options['maxbytes']); } if (empty($options['return_types'])) { $this->_options['return_types'] = FILE_INTERNAL | FILE_REFERENCE; } $this->_type = 'filemanager'; parent::HTML_QuickForm_element($elementName, $elementLabel, $attributes); }
function MoodleQuickForm_editor($elementName = null, $elementLabel = null, $attributes = null, $options = null) { global $CFG, $PAGE; $options = (array) $options; foreach ($options as $name => $value) { if (array_key_exists($name, $this->_options)) { $this->_options[$name] = $value; } } if (!empty($options['maxbytes'])) { $this->_options['maxbytes'] = get_max_upload_file_size($CFG->maxbytes, $options['maxbytes']); } if (!$this->_options['context']) { $this->_options['context'] = get_context_instance(CONTEXT_SYSTEM); } $this->_options['trusted'] = trusttext_trusted($this->_options['context']); parent::HTML_QuickForm_element($elementName, $elementLabel, $attributes); editors_head_setup(); }