示例#1
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $js = "onclick=\"setAllCheckBoxes('details[hidden]', this.checked);\"";
     $chk = $value == '1' ? ' checked="checked"' : '';
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return "<input {$js} id=\"{$control_name}{$name}\" type=\"checkbox\" name=\"" . $fullName . "\" value=\"1\" {$chk} />";
 }
示例#2
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $opts[] = JHTML::_('select.option', "ASC", JText::_('ASCENDING'));
     $opts[] = JHTML::_('select.option', "DESC", JText::_('DESCENDING'));
     return JHTML::_('select.genericlist', $opts, $fullName, 'class="inputbox" size="1"', 'value', 'text', $value);
 }
 /**
  * Returns the element's full URL.
  *
  * @return string
  */
 public function getUrl()
 {
     if ($this->uri === null) {
         ElementHelper::setUniqueUri($this);
     }
     return parent::getUrl();
 }
 public function safeUp()
 {
     //First get all option types and values and make dropdown fields
     $alloptionTypes = craft()->db->createCommand()->select('*')->from('market_optiontypes')->queryAll();
     $fields = [];
     foreach ($alloptionTypes as $optionType) {
         // Need to know if the field name is already taken
         $exists = craft()->fields->getFieldByHandle(ElementHelper::createSlug($optionType['handle']));
         //make a new field name is field name already taken
         if ($exists && $exists->id) {
             $optionType['handle'] = $optionType['handle'] . " option";
         }
         //Make a new field
         $field = new FieldModel();
         $field->groupId = 1;
         $field->context = 'global';
         $field->name = $optionType['name'];
         $field->handle = ElementHelper::createSlug($optionType['handle']);
         $field->type = "Dropdown";
         // Add the values
         $optionValues = craft()->db->createCommand()->select('*')->from('market_optionvalues')->where('optionTypeId=:id', [':id' => $optionType['id']])->queryAll();
         $options = [];
         foreach ($optionValues as $ov) {
             $value = ['label' => $ov['displayName'], 'value' => $ov['name']];
             $options['options'][] = $value;
         }
         $field->settings = $options;
         //save the field
         craft()->fields->saveField($field);
         $fields[] = $field;
     }
     return true;
 }
示例#5
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $iframeid = $id . '_iframe';
     $cid = JRequest::getVar('cid', array(), 'array');
     // $$$ hugh - when creating a new form, no 'cid' ... not sure what to do, so just set it to 0.  Should
     // prolly just return something like 'available after save' ?
     if (!empty($cid)) {
         $cid = (int) $cid[0];
     } else {
         $cid = 0;
     }
     $c = (int) $this->getRepeatCounter();
     $href = COM_FABRIK_LIVESITE . 'index.php?option=com_fabrik&controller=plugin&task=pluginAjax&plugin=fabriktwitter&g=form&method=authenticateAdmin&tmpl=component&formid=' . $cid . '&repeatCounter=' . $c;
     $clearjs = '$(\'paramstwitter_oauth_token-' . $c . '\').value = \'\';';
     $clearjs .= '$(\'paramstwitter_oauth_token_secret-' . $c . '\').value = \'\';';
     $clearjs .= '$(\'paramstwitter_oauth_user-' . $c . '\').value = \'\';';
     $clearjs .= "return false;";
     $js = "window.open('{$href}', 'twitterwins', 'width=800,height=460,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');return false;";
     $str = '<a href="#" onclick="' . $js . '"><img src="' . COM_FABRIK_LIVESITE . 'components/com_fabrik/libs/abraham-twitteroauth/images/lighter.png" alt="Sign in with Twitter"/></a>';
     $str .= " | <a href=\"#\" onclick=\"{$clearjs}\">" . JText::_('PLG_FORM_TWITTER_CLEAR_CREDENTIALS') . "</a><br/>";
     $str .= "<br /><input type=\"text\" readonly=\"readonly\" name=\"{$fullName}\" id=\"{$id}\" value=\"{$value}\" />";
     return $str;
 }
示例#6
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     jimport('joomla.filesystem.folder');
     // path to images directory
     $path = JPATH_ROOT . DS . $node->attributes('directory');
     $filter = $node->attributes('filter');
     $exclude = $node->attributes('exclude');
     $recursive = $node->attributes('recursive') == 1 ? true : false;
     $folders = JFolder::folders($path, $filter, $recursive);
     $folders = $this->recursive_listdir($path, $node);
     $options = array();
     foreach ($folders as $key => $folder) {
         if ($exclude) {
             if (preg_match(chr(1) . $exclude . chr(1), $folder)) {
                 continue;
             }
         }
         $options[] = JHTML::_('select.option', $key, $folder);
     }
     if (!$node->attributes('hide_none')) {
         array_unshift($options, JHTML::_('select.option', '-1', '- ' . JText::_('Do not use') . ' -'));
     }
     if (!$node->attributes('hide_default')) {
         array_unshift($options, JHTML::_('select.option', '', '- ' . JText::_('Use default') . ' -'));
     }
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $options, $fullName, 'class="inputbox"', 'value', 'text', $value, "params{$name}");
 }
示例#7
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     if ($value == '0' || $value == '') {
         $value = '255';
     }
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return "<input onblur=\"setAll(this.value, '{$fullName}');\" class=\"inputbox\" type=\"text\" name=\"{$fullName}\" size=\"3\" value=\"{$value}\" />";
 }
示例#8
0
 public function render($params = array())
 {
     $countries = $this->_data->get('country', array());
     $keys = array_flip($countries);
     $countries = array_intersect_key(self::getCountryArray(), $keys);
     $countries = array_map(create_function('$a', 'return JText::_($a);'), $countries);
     return ElementHelper::applySeparators($params['separated_by'], $countries);
 }
示例#9
0
 public function render($params = array())
 {
     $linked = isset($params['linked']) && $params['linked'];
     $values = array();
     foreach ($this->_item->getRelatedCategories(true) as $category) {
         $values[] = $linked ? '<a href="' . JRoute::_(RouteHelper::getCategoryRoute($category)) . '">' . $category->name . '</a>' : $category->name;
     }
     return ElementHelper::applySeparators($params['separated_by'], $values);
 }
示例#10
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     if ($value == '') {
         $user = JFactory::getUser();
         $value = $user->get('id');
     }
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('list.users', $fullName, $value);
 }
示例#11
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $db =& JFactory::getDBO();
     $db->setQuery("SELECT id AS value, label AS `text` FROM #__fabrik_forms order by value DESC");
     $rows = $db->loadObjectList();
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $rows, $fullName, 'class="inputbox"  size="1"', 'value', 'text', $value);
 }
示例#12
0
 public function render($params = array())
 {
     $category_ids = $this->_data->get('category', array());
     $category_links = array();
     $categories = YTable::getInstance('category')->getById($category_ids, true);
     foreach ($categories as $category) {
         $category_links[] = '<a href="' . RouteHelper::getCategoryRoute($category) . '">' . $category->name . '</a>';
     }
     return ElementHelper::applySeparators($params['separated_by'], $category_links);
 }
示例#13
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     require_once COM_FABRIK_FRONTEND . DS . 'helpers' . DS . 'image.php';
     $imageLibs = imageHelper::getLibs();
     if (empty($imageLibs)) {
         return JText::_('NO MAGE LIBRARY FOUND');
     }
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $imageLibs, $fullName, 'class="inputbox" size="1" ', 'value', 'text', $value);
 }
示例#14
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $a = array(JHTML::_('select.option', '', JText::_('COM_FABRIK_PLEASE_SELECT')));
     $db =& JFactory::getDBO();
     $group = $node->attributes('plugin');
     $db->setQuery("SELECT id AS value, label AS text FROM #__fabrik_visualizations WHERE state ='1' ORDER BY text");
     $elementstypes = $db->loadObjectList();
     $elementstypes = array_merge($a, $elementstypes);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $elementstypes, $fullName, 'class="inputbox elementtype"  size="1"', 'value', 'text', $value);
 }
示例#15
0
文件: option.php 项目: bizanto/Hooked
 public function render($params = array())
 {
     $options_from_config = $this->_config->get('options');
     $selected_options = $this->_data->get('option', array());
     $options = array();
     foreach ($options_from_config as $option) {
         if (in_array($option['value'], $selected_options)) {
             $options[] = $option['name'];
         }
     }
     return ElementHelper::applySeparators($params['separated_by'], $options);
 }
 /**
  * Uses the matched headers to create an anchor for them
  *
  * @param array $matches
  *
  * @return string
  */
 public function handleMatch(array $matches = array())
 {
     $tag = $matches['tag'];
     $text = $matches['text'];
     $slug = ElementHelper::createSlug($text);
     $clean = strip_tags($text);
     $currentHeaderLevel = (int) substr($tag, 1, 1);
     if ($this->startingHeaderLevel) {
         $tag = sprintf('h%s', min(6, $currentHeaderLevel + ($this->startingHeaderLevel - 1)));
     }
     return "<{$tag} id=\"{$slug}\">{$text} <a class=\"anchor\" href=\"#{$slug}\" title=\"{$clean}\">#</a></{$tag}>";
 }
示例#17
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $version = new JVersion();
     if ($version->RELEASE == '1.6') {
         $acl =& JFactory::getACL();
         // @TODO for Joomla 1.6
         $gtree = JHTML::_('select.option', "-2", 'TODO FOR JOOMLA 1.6');
         return JHTML::_('select.genericlist', array($gtree), $control_name . '[' . $name . ']', 'class="inputbox" size="1"', 'value', 'text', $value);
     } else {
         if (defined('_JACL')) {
             $_JACL =& JACLPlus::getJACL();
             $where = "\n WHERE id IN (0,1,2)";
             $db =& JFactory::getDBO();
             if ($_JACL->enable_jaclplus) {
                 $user =& JFactory::getUser();
                 if (is_numeric($value)) {
                     $where = " OR id = '" . (int) $value . "'";
                 } else {
                     $where = "";
                 }
                 switch ($_JACL->publish_alstype) {
                     case "1":
                         $where = $user->get('gid') == 25 ? "" : "\n WHERE id IN (" . $user->get('jaclplus', '0') . ")" . $where;
                         break;
                     case "2":
                         $where = $user->get('gid') == 25 ? "" : "\n WHERE id NOT IN (0,1,2)" . $where;
                         break;
                     case "3":
                         $where = $user->get('gid') == 25 ? "" : "\n WHERE id IN (" . $user->get('jaclplus', '0') . ") AND id NOT IN (0,1,2)" . $where;
                         break;
                     case "4":
                         $where = $user->get('gid') == 25 ? "" : "\n WHERE id IN (" . $db->getEscaped($_JACL->publish_jaclplus) . ")" . $where;
                         break;
                     case "0":
                     default:
                         $where = "";
                         break;
                 }
             }
             $query = 'SELECT id AS value, name AS text' . ' FROM #__groups' . $where . ' ORDER BY id';
             $db->setQuery($query);
             $gtree = $db->loadObjectList();
         } else {
             $acl =& JFactory::getACL();
             $gtree = $acl->get_group_children_tree(null, 'USERS', false);
             $optAll = array(JHTML::_('select.option', '0', ' - Everyone'), JHTML::_('select.option', "26", 'Nobody'));
             $gtree = array_merge($optAll, $gtree);
         }
         $fullName = ElementHelper::getFullName($this, $control_name, $name);
         $id = ElementHelper::getId($this, $control_name, $name);
         return JHTML::_('select.genericlist', $gtree, $fullName, 'class="inputbox fullaccesslevel" size="1"', 'value', 'text', $value, $id);
     }
 }
示例#18
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $app =& JFactory::getApplication();
     if ($value == '') {
         $value = $app->getUserStateFromRequest('com_fabrik.element.list.filter_groupId', 'filter_groupId', $value);
     }
     $db =& JFactory::getDBO();
     $db->setQuery("SELECT id AS value, name AS `group_id` FROM #__fabrik_groups ORDER BY name");
     $select = JHTML::_('select.option', '', JText::_('COM_FABRIK_PLEASE_SELECT'), 'value', 'group_id');
     $rows = array_merge(array($select), $db->loadObjectList());
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $rows, $fullName, 'class="inputbox" size="1"', 'value', 'group_id', $value);
 }
示例#19
0
 function fetchTooltip($label, $description, &$xmlElement, $control_name = '', $name = '')
 {
     $id = ElementHelper::getId($this, $control_name, $name);
     $output = '<label id="' . $id . '-lbl" for="' . $id . '"';
     if ($description) {
         $description = JText::_($description) . $this->getMax() . 'Kb';
         $output .= ' class="hasTip" title="' . JText::_($label) . '::' . $description . '">';
     } else {
         $output .= '>';
     }
     $output .= JText::_($label) . '</label>';
     return $output;
 }
示例#20
0
 public function render($params = array())
 {
     $linked = isset($params['linked']) && $params['linked'];
     $values = array();
     if ($linked) {
         foreach ($this->_item->getTags() as $tag) {
             $values[] = '<a href="' . JRoute::_(RouteHelper::getTagRoute($this->_item->application_id, $tag)) . '">' . $tag . '</a>';
         }
     } else {
         $values = $this->_item->getTags();
     }
     return ElementHelper::applySeparators($params['separated_by'], $values);
 }
示例#21
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $repeat = ElementHelper::getRepeat($this);
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     //orig J stuff
     $rows = $node->attributes('rows');
     $cols = $node->attributes('cols');
     $class = $node->attributes('class') ? 'class="' . $node->attributes('class') . '"' : 'class="text_area"';
     // convert <br /> tags so they are not visible when editing
     $value = str_replace('<br />', "\n", $value);
     return '<textarea name="' . $fullName . '" cols="' . $cols . '" rows="' . $rows . '" ' . $class . ' id="' . $id . '" >' . $value . '</textarea>';
 }
 /**
  * @param $object
  * @param $attribute
  *
  * @return null
  */
 protected function validateAttribute($object, $attribute)
 {
     $urlFormat = $object->{$attribute};
     if ($urlFormat) {
         // Remove any leading or trailing spaces/slashes
         $urlFormat = trim($urlFormat, '/ ');
         $object->{$attribute} = $urlFormat;
         if ($this->requireSlug) {
             if (!ElementHelper::doesUrlFormatHaveSlugTag($urlFormat)) {
                 $this->addError($object, $attribute, Craft::t('{attribute} must contain “{slug}”'));
             }
         }
     }
 }
示例#23
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $db =& JFactory::getDBO();
     $db->setQuery($node->attributes('query'));
     $key = $node->attributes('key_field') ? $node->attributes('key_field') : 'value';
     $val = $node->attributes('value_field') ? $node->attributes('value_field') : $name;
     if ($node->attributes('add_select')) {
         $rows = array(JHTML::_('select.option', '', '- ' . JText::_('Do not use') . ' -', $key, $val));
         $rows = array_merge($rows, $db->loadObjectList());
     } else {
         $rows = $db->loadObjectList();
     }
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     return JHTML::_('select.genericlist', $rows, $fullName, 'class="inputbox"', $key, $val, $value, $id);
 }
示例#24
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $db =& JFactory::getDBO();
     if ($value == '') {
         $db->setQuery("SELECT id FROM #__fabrik_connections WHERE `default` = 1");
         $value = $db->loadResult();
     }
     $db->setQuery("SELECT id AS value, description AS text FROM #__fabrik_connections WHERE state = '1'");
     $cnns = array_merge(array(JHTML::_('select.option', '-1', JText::_('COM_FABRIK_PLEASE_SELECT'))), $db->loadObjectList());
     $js = "onchange=\"" . $node->attributes('js') . "\"";
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $return = JHTML::_('select.genericlist', $cnns, '' . $fullName, 'class="inputbox" ' . $js, 'value', 'text', $value, $id);
     $return .= "<img style='margin-left:10px;display:none' id='" . $id . "_loader' src='components/com_fabrik/images/ajax-loader.gif' alt='" . JText::_('LOADING') . "' />";
     return $return;
 }
示例#25
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     //orig J stuff
     $size = $node->attributes('size') ? 'size="' . $node->attributes('size') . '"' : '';
     $class = $node->attributes('class') ? 'class="' . $node->attributes('class') . '"' : 'class="text_area"';
     /*
      * Required to avoid a cycle of encoding &
      * html_entity_decode was used in place of htmlspecialchars_decode because
      * htmlspecialchars_decode is not compatible with PHP 4
      */
     if (is_string($value)) {
         $value = htmlspecialchars(html_entity_decode($value, ENT_QUOTES), ENT_QUOTES);
     }
     return '<input type="text" name="' . $fullName . '" id="' . $id . '" value="' . $value . '" ' . $class . ' ' . $size . ' />';
 }
示例#26
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     static $fabrikelements;
     if (!isset($fabrikelements)) {
         $fabrikelements = array();
     }
     FabrikHelperHTML::script('element.js', 'administrator/components/com_fabrik/elements/', true);
     $document =& JFactory::getDocument();
     $c = ElementHelper::getRepeatCounter($this);
     $conn = $c === false || $node->attributes('connection_in_repeat') == 'false' ? $node->attributes('connection') : $node->attributes('connection') . '-' . $c;
     $table = $node->attributes('table');
     $include_calculations = (int) $node->attributes('include_calculations', 0);
     $published = (int) $node->attributes('published', 0);
     $showintable = (int) $node->attributes('showintable', 0);
     if ($include_calculations != 1) {
         $include_calculations = 0;
     }
     $cnns = array(JHTML::_('select.option', '-1', JText::_('COM_FABRIK_PLEASE_SELECT')));
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $repeat = ElementHelper::getRepeat($this);
     if (!array_key_exists($id, $fabrikelements)) {
         $script = "window.addEvent('domready', function() {\n";
         $opts = new stdClass();
         $opts->table = $c === false ? 'params' . $table : 'params' . $table . "-" . $c;
         $opts->published = $published;
         $opts->showintable = $showintable;
         $opts->excludejoined = (int) $node->attributes('excludejoined', 0);
         $opts->livesite = COM_FABRIK_LIVESITE;
         $opts->conn = 'params' . $conn;
         $opts->value = $value;
         $opts->include_calculations = $include_calculations;
         $opts = FastJSON::encode($opts);
         $script .= "var p = new elementElement('{$id}', {$opts});\n";
         $script .= "Fabrik.adminElements.set('{$id}', p);\n";
         $script .= "});\n";
         $document->addScriptDeclaration($script);
         $fabrikelements[$id] = true;
     }
     FabrikHelperHTML::cleanMootools();
     $return = JHTML::_('select.genericlist', $cnns, $fullName, 'class="inputbox element"', 'value', 'text', $value, $id);
     $return .= '<img style="margin-left:10px;display:none" id="' . $id . '_loader" src="components/com_fabrik/images/ajax-loader.gif" alt="' . JText::_('LOADING') . '" />';
     return $return;
 }
示例#27
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     static $fabriktables;
     if (!isset($fabriktables)) {
         $fabriktables = array();
     }
     FabrikHelperHTML::script('fabriktables.js', 'administrator/components/com_fabrik/elements/', true);
     $connectionDd = $node->attributes('observe', '');
     $db =& JFactory::getDBO();
     $document =& JFactory::getDocument();
     $c = ElementHelper::getRepeatCounter($this);
     $repeat = ElementHelper::getRepeat($this);
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     if ($connectionDd == '') {
         //we are not monitoring a connection drop down so load in all tables
         $query = "SELECT id AS value, label AS `{$name}` FROM #__fabrik_tables order by label ASC";
         $db->setQuery($query);
         $rows = $db->loadObjectList();
     } else {
         $rows = array(JHTML::_('select.option', '', JText::_('SELECT A CONNECTION FIRST'), 'value', $name));
     }
     if ($connectionDd != '' && !array_key_exists($id, $fabriktables)) {
         $connectionDd = $c === false || $node->attributes('connection_in_repeat') == 'false' ? $connectionDd : $connectionDd . '-' . $c;
         $opts = new stdClass();
         $opts->livesite = COM_FABRIK_LIVESITE;
         $opts->conn = 'params' . $connectionDd;
         $opts->value = $value;
         $opts->connInRepeat = $node->attributes('connection_in_repeat');
         $opts = FastJSON::encode($opts);
         $script = "window.addEvent('domready', function() {\n";
         $script .= "var p = new fabriktablesElement('{$id}', {$opts});\n";
         $script .= "tableElements.set('{$id}', p);\n";
         $script .= "Fabrik.adminElements.set('{$id}', p);\n";
         $script .= "});\n";
         $document->addScriptDeclaration($script);
         $fabriktables[$id] = true;
     }
     FabrikHelperHTML::cleanMootools();
     $str = JHTML::_('select.genericlist', $rows, $fullName, 'class="inputbox fabriktables"', 'value', $name, $value, $id);
     $str .= "<img style=\"margin-left:10px;display:none\" id=\"" . $id . "_loader\" src=\"components/com_fabrik/images/ajax-loader.gif\" alt=\"" . JText::_('LOADING') . "\" />";
     return $str;
 }
示例#28
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     FabrikHelperHTML::script('tables.js', 'administrator/components/com_fabrik/elements/', true);
     $connectionDd = $node->attributes('observe', '');
     $db =& JFactory::getDBO();
     $document =& JFactory::getDocument();
     $repeat = ElementHelper::getRepeat($this);
     $id = ElementHelper::getId($this, $control_name, $name);
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $c = ElementHelper::getRepeatCounter($this);
     if ($connectionDd == '') {
         //we are not monitoring a connection drop down so load in all tables
         $query = "SHOW TABLES";
         $db->setQuery($query);
         $list = $db->loadResultArray();
         foreach ($list as $l) {
             $rows[] = JHTML::_('select.option', $l, $l);
         }
     } else {
         $rows = array(JHTML::_('select.option', '', JText::_('SELECT A CONNECTION FIRST')));
     }
     if ($connectionDd != '') {
         $connectionDd = $c === false ? $connectionDd : $connectionDd . '-' . $c;
         $opts = new stdClass();
         $opts->livesite = COM_FABRIK_LIVESITE;
         $opts->conn = 'params' . $connectionDd;
         $opts->value = $value;
         $opts = FastJSON::encode($opts);
         $script = "window.addEvent('domready', function() {\n";
         $script .= "if(typeof(tableElements) === 'undefined') {\n\t\t\ttableElements = \$H();\n}\n";
         $script .= "tableElements.set('{$id}', new tablesElement('{$id}', {$opts}));\n";
         $script .= "});\n";
         if ($script != '') {
             $document->addScriptDeclaration($script);
         }
     }
     FabrikHelperHTML::cleanMootools();
     $str = JHTML::_('select.genericlist', $rows, $fullName, 'class="repeattable inputbox"', 'value', 'text', $value, $id);
     $str .= "<img style='margin-left:10px;display:none' id='" . $id . "_loader' src='components/com_fabrik/images/ajax-loader.gif' alt='" . JText::_('LOADING') . "' />";
     return $str;
 }
示例#29
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     //ONLY WORKS INSIDE ELEMENT :(
     $group_id = $this->_parent->get('group_id');
     $query = "SELECT ordering AS value, name AS text" . "\n FROM #__fabrik_elements " . "\n WHERE group_id = '{$group_id}'" . "\n AND state >= 0" . "\n ORDER BY ordering";
     $id = $this->_parent->get('id');
     $fullName = ElementHelper::getFullName($this, $control_name, $name);
     $neworder = 0;
     if ($id) {
         $order = JHTML::_('list.genericordering', $query);
         $ordering = JHTML::_('select.genericlist', $order, $fullName, 'class="inputbox" size="1"', 'value', 'text', $value);
     } else {
         if ($neworder) {
             $text = JText::_('descNewItemsFirst');
         } else {
             $text = JText::_('descNewItemsLast');
         }
         $ordering = '<input type="hidden" name="' . $fullName . '" value="' . $value . '" />' . $text;
     }
     return $ordering;
 }
示例#30
0
 function getInput()
 {
     $connectionDd = $this->element['observe'];
     if ((int) $this->form->getValue('id') != 0 && $this->element['readonlyonedit']) {
         return '<input type="text" value="' . $this->value . '" class="readonly" name="' . $this->name . '" readonly="true" />';
     }
     $c = ElementHelper::getRepeatCounter($this);
     $readOnlyOnEdit = $this->element['readonlyonedit'];
     if ($connectionDd != '') {
         $connectionDd = $c === false ? $connectionDd : $connectionDd . '-' . $c;
         $opts = new stdClass();
         $opts->livesite = COM_FABRIK_LIVESITE;
         $opts->conn = 'jform_' . $connectionDd;
         $opts->value = $this->value;
         $opts = json_encode($opts);
         $script = "FabrikAdmin.model.fields.fabriktable['{$this->id}'] = new tablesElement('{$this->id}', {$opts});\n";
         FabrikHelperHTML::script('administrator/components/com_fabrik/models/fields/tables.js', $script);
     }
     $html = parent::getInput();
     $html .= "<img style='margin-left:10px;display:none' id='" . $this->id . "_loader' src='components/com_fabrik/images/ajax-loader.gif' alt='" . JText::_('LOADING') . "' />";
     return $html;
 }