/** * display the template * * @param sting $tpl */ function display($tpl = null) { FabrikHelperHTML::framework(); $element = JRequest::getVar('element'); $elementid = JRequest::getVar('elid'); $pluginManager = JModel::getInstance('Pluginmanager', 'FabrikFEModel'); $className = JRequest::getVar('plugin'); $plugin = $pluginManager->getPlugIn($className, 'element'); if (JError::isError($plugin)) { JError::handleMessage($plugin); return; } $plugin->setId($elementid); $data = array(); $repeatCounter = 0; $groupModel = $plugin->getGroup(); $srcs = array(); $plugin->formJavascriptClass($srcs); echo "srcs = "; print_r($srcs); FabrikHelperHTML::script($srcs, true); $html = '<script>'; $html .= $plugin->elementJavascript($repeatCounter); $html .= '</script>'; $html .= $plugin->_getElement($data, $repeatCounter, $groupModel); echo $html; }
/** * @param string group name (currently only 'element' is supported) * @param object database row of plugin info * @return bol true if loaded ok */ function _loadPlugin($group, &$row) { if (!is_object($row)) { return false; } $folder = $row->type; $element = $row->name; $published = $row->state; $params = $row->params; $p = COM_FABRIK_FRONTEND . DS . 'plugins' . DS . $folder . DS . $element . DS; $path = $p . $element . '.php'; $xmlPath = $p . $element . '.xml'; JModel::getInstance('Element', 'FabrikModel'); JModel::getInstance('Plugin', 'FabrikModel'); JModel::getInstance('Visualization', 'FabrikModel'); $this->_loadPaths($group, $element); $plugIn =& JModel::getInstance($element, 'FabrikModel'); if (!is_object($plugIn)) { //plugin filename / folder name incorrect JError::raiseWarning(500, 'Could not load the fabrik plugin: ' . $element); return false; } if (JError::isError($plugIn)) { JError::handleMessage($plugIn); return false; } $plugIn->row = $row; $plugIn->_type = $folder; $plugIn->_pluginLabel = $row->label; $plugIn->_xmlPath = $xmlPath; $this->_plugIns[$group][$element] =& $plugIn; $plugIn->_loading = null; return true; }