protected function _render($model, One_Dom $d) { $output = ''; $captcha = $this->generateCaptcha(); $allowed = $this->allowedOptions(); $info = $this->getCfg('info'); $error = $this->getCfg('error'); $dom = One_Repository::createDom(); $config = array(); foreach ($this->getParameters() as $param => $value) { if ($allowed[$param] & 1) { $config[$param] = $value; } } $input = new One_Form_Widget_Scalar_Textfield('captcha', 'captcha', NULL, NULL, $config); $dom->add('<div class="OneCaptcha">'); $dom->add('<img src="' . $captcha . '" alt="captcha" />'); $input->render($model, $dom); if (is_null($info)) { //$output .= '<span id="' . $id . 'Info" class="OneInfo">' . $info . '</span>'; $dom->add('<span id="' . $id . 'Info" class="OneInfo">' . $info . '</span>'); } if (is_null($error)) { //$output .= '<span id="' . $id . 'Error" class="OneError">' . $error . '</span>'; $dom->add('<span id="' . $id . 'Error" class="OneError">' . $error . '</span>'); } $dom->add('</div>'); //return $output; $d->addDom($dom); }
/** * Return the allowed options for this widget * * @return array */ protected static function allowedOptions() { $additional = array('dir' => 1, 'lang' => 1, 'xml:lang' => 1, 'disabled' => 1, 'size' => 1); return array_merge(parent::allowedOptions(), $additional); }
/** * Class constructor * * @param string $id * @param string $name * @param string $label * @param array $config */ public function __construct($id = NULL, $name = '', $label = NULL, $config = array()) { parent::__construct($id, $name, $label, $config); $this->_type = 'hidden'; $this->_totf = 'hidden'; }
protected function renderJQueryDatepicker($model, One_Dom $d) { // include most common jquery files from vendor One_Vendor::requireVendor('jquery/one_loader'); $id = $this->getID(); $name = $this->getName(); $value = $this->getValue($model); $dom = One_Repository::createDom(); $extraParams = array('default' => $this->getDefault()); if (in_array($this->getCfg('one'), array('one', 'yes', 'true', '1'))) { $extraParams['one'] = 'one'; } if ('readonly' == $this->getCfg('readonly')) { $extraParams['readonly'] = 'readonly'; } $tf = new One_Form_Widget_Scalar_Textfield($id, $name, NULL, $extraParams); $tf->render($model, $dom); $pickerType = 'date'; $timeFormat = ''; if (trim($this->getCfg('time')) != '') { One_Vendor::getInstance()->loadScript('jquery/js/jquery-ui-timepicker-addon.js', 'head', 10); One_Vendor::getInstance()->loadStyle('jquery/css/ui.timepicker.addon.css', 'head', 10); $pickerType = 'datetime'; $timeFormat = ' timeFormat: "hh:mm:ss",'; } $script = ' jQuery("#' . $id . '").' . $pickerType . 'picker({ dateFormat: "yy-mm-dd",' . $timeFormat . ' showButtonPanel: true' . ('' != trim($value) ? ', defaultDate: "' . $value . '"' : '') . ' });'; One_Vendor::getInstance()->loadScriptDeclaration($script, 'onload'); $d->addDom($dom); }