Exemplo n.º 1
0
 /**
  * Get insert options.
  *
  * @return void
  */
 public function getOptions()
 {
     $db = JFactory::getDBO();
     $tables = $db->getTableList();
     $ajaxLink = 'index.php?option=com_easycreator&tmpl=component&controller=ajax&task=part_task';
     $ajaxLink .= '&group=tables&part=admin_map';
     $ajaxLink .= '&part_task=show_tablefields';
     $ajax = "new Request({ url: '" . $ajaxLink . "'+'&table_name='+this.value, update:'addPartTableFields', onComplete: function() '\n        .'{ div_new_element.show(); } }).send();";
     echo '<strong id="table_name_label">' . jgettext('Table') . ' :</strong>';
     echo '<select name="table_name" id="table_name" onchange="' . $ajax . '">';
     echo '<option value="">' . jgettext('Choose') . '...</option>';
     $prefix = $db->getPrefix();
     foreach ($tables as $table) {
         $v = str_replace($prefix, '', $table);
         echo '<option value="' . $v . '">' . $v . '</option>';
     }
     //foreach
     echo '</select>';
     echo '<div id="addPartTableFields"></div>';
     EcrHtmlSelect::name();
     echo '<strong>' . jgettext('Menu link') . ' :</strong><br />';
     echo '<input type="checkbox" name="create_menu_link" checked="checked"' . ' id="create_menu_link" value="create_menu_link">';
     echo '<label for="create_menu_link">' . jgettext('Create a menu link') . '</label><br />';
     echo '<hr />';
     EcrHtmlOptions::logging();
     $requireds = array('element_name', 'table_name');
     EcrHtmlButton::submitParts($requireds);
 }
Exemplo n.º 2
0
 /**
  * Get insert options.
  *
  * @return void
  */
 public function getOptions()
 {
     EcrHtmlSelect::scope();
     EcrHtmlSelect::name();
     EcrHtmlOptions::logging();
     $requireds = array('element_name', 'element_scope');
     EcrHtmlButton::submitParts($requireds);
 }
Exemplo n.º 3
0
 /**
  * Get insert options.
  *
  * @return void|boolean false on error
  */
 public function getOptions()
 {
     $ecr_project = JFactory::getApplication()->input->get('ecr_project');
     $basePathDest = JPATH_ROOT . DS . 'administrator' . DS . 'components' . DS . $ecr_project;
     if (JFile::exists($basePathDest . DS . 'CHANGELOG.php')) {
         EcrHtml::message(jgettext('This project already has a changelog'), 'error');
         return false;
     }
     EcrHtmlOptions::logging();
     EcrHtmlButton::submitParts();
 }
Exemplo n.º 4
0
 /**
  * Get insert options.
  *
  * @return void|boolean false on error
  */
 public function getOptions()
 {
     // $project = EcrProjectHelper::getProject();
     $ecr_project = JFactory::getApplication()->input->get('ecr_project');
     $basePathDest = JPATH_ROOT . DS . 'administrator' . DS . 'components' . DS . $ecr_project;
     if (JFile::exists($basePathDest . DS . 'install' . DS . 'script.php')) {
         EcrHtml::message(jgettext('This project already has an install file - consider removing it'), 'error');
         return false;
     }
     EcrHtmlOptions::logging();
     EcrHtmlButton::submitParts();
     return $this;
 }
Exemplo n.º 5
0
 /**
  * Here you define custom options that will be displayed along with the input form.
  *
  * @return void
  */
 public function getOptions()
 {
     /* Array with required fields */
     $requireds = array();
     $requireds[] = EcrHtmlSelect::scope($this->scope);
     if (!$this->element) {
         $db = JFactory::getDBO();
         $tables = $db->getTableList();
         $prefix = $db->getPrefix();
         echo '<strong id="element_label">' . jgettext('Table') . '</strong> : ';
         echo '<select name="element" id="table_name" onchange="$(\'element_name\').value=$(\'element\').value;">';
         echo '<option value="">' . jgettext('Choose') . '...</option>';
         foreach ($tables as $table) {
             $v = str_replace($prefix, '', $table);
             echo '<option value="' . $v . '">' . $v . '</option>';
         }
         //foreach
         echo '</select>';
         echo '<br />';
     } else {
         echo '<input type="hidden" name="element" value="' . $this->element . '" />';
     }
     /* Draws an input box for a name field */
     $requireds[] = EcrHtmlSelect::name($this->element, jgettext('Table'));
     echo '<strong>Var Scope:</strong><br />';
     foreach ($this->varScopes as $vScope) {
         $checked = $vScope == 'var' ? ' checked="checked"' : '';
         echo '<input type="radio" name="var_scope" value="' . $vScope . '"' . ' id="vscope-' . $vScope . '"' . $checked . '> <label for="vscope-' . $vScope . '">' . $vScope . '</label><br />';
     }
     //foreach
     /*
      * Add your custom options
      * ...
      */
     /* Displays options for logging */
     EcrHtmlOptions::logging();
     /* Draws the submit button */
     EcrHtmlButton::submitParts($requireds);
 }
Exemplo n.º 6
0
 /**
  * Edit the AutoCode.
  *
  * @param object $AutoCode The AutoCode
  *
  * @return boolean
  */
 public function edit($AutoCode)
 {
     $input = JFactory::getApplication()->input;
     EcrHtmlSelect::scope($this->_scope);
     echo '<input type="hidden" name="element" value="' . $this->_element . '" />';
     /* Draws an input box for a name field */
     EcrHtmlSelect::name($this->_element, jgettext('Table'));
     $ecr_project = $input->get('ecr_project');
     $element_name = $input->get('element');
     $table_name = $input->get('table_name');
     //$req_table_fields = JxRequest::getVar('table_fields', array());
     //$req_table_fields_edits = JxRequest::getVar('table_fields_edits', array());
     //$req_table_fields_types = JxRequest::getVar('table_fields_types', array());
     if (!$table_name) {
         $table_name = $element_name;
     }
     if (!$table_name) {
         echo 'No table given';
         return false;
     }
     $basePath = $this->_scope == 'admin' ? JPATH_ADMINISTRATOR : JPATH_SITE;
     $basePath .= DS . 'components' . DS . $ecr_project . DS . 'views' . DS . $table_name;
     if (!JFolder::exists($basePath)) {
         JFactory::getApplication()->enqueueMessage(jgettext('View not found'), 'error');
         return false;
     }
     $key = '##ECR_OPTIONS##';
     $this->show_tablefields($table_name, $AutoCode->fields[$key]);
     EcrHtmlButton::submitParts();
 }
Exemplo n.º 7
0
 /**
  * Edit the AutoCode.
  *
  * @param object $AutoCode The AutoCode
  *
  * @return boolean
  */
 public function edit($AutoCode)
 {
     /* Array with required fields */
     $requireds = array();
     $requireds[] = EcrHtmlSelect::scope($this->_scope);
     echo '<input type="hidden" name="element" value="' . $this->_element . '" />';
     /* Draws an input box for a name field */
     $requireds[] = EcrHtmlSelect::name($this->_element, jgettext('Table'));
     //        JLoader::import('helpers.autocode', JPATH_COMPONENT);
     //        $AutoCode = new EcrProjectAutocode;
     $ecr_project = $input->get('ecr_project');
     $element_name = $input->get('element');
     $table_name = $input->get('table_name');
     if (!$table_name) {
         $table_name = $element_name;
     }
     //$req_table_fields = JxRequest::getVar('table_fields', array());
     //$req_table_fields_edits = JxRequest::getVar('table_fields_edits', array());
     //$req_table_fields_types = JxRequest::getVar('table_fields_types', array());
     if (!$table_name) {
         JFactory::getApplication()->enqueueMessage(jgettext('No table given'), 'error');
         return false;
     }
     if (!($scope = $input->get('scope'))) {
         JFactory::getApplication()->enqueueMessage(jgettext('No scope given'), 'error');
         return false;
     }
     $basePath = $scope == 'admin' ? JPATH_ADMINISTRATOR : JPATH_SITE;
     $basePath .= DS . 'components' . DS . $ecr_project . DS . 'views' . DS . $table_name . 's';
     if (!JFolder::exists($basePath)) {
         JFactory::getApplication()->enqueueMessage(jgettext('View not found'), 'error');
         return false;
     }
     $fileList = JFolder::files($basePath, '.', true, true);
     $fields = array();
     if (count($fileList)) {
         foreach ($fileList as $fileName) {
             $file = new stdClass();
             $file->path = str_replace(JPATH_ROOT . DS, '', $fileName);
             $file->autoCodes = $AutoCode->getContents(JFile::read($fileName));
             foreach ($file->autoCodes as $key => $content) {
                 $fields[$key] = $AutoCode->getFields($this->patterns[$key], $content, array($this->keys[$key]));
             }
             //foreach
         }
         //foreach
     }
     $selecteds = isset($fields['##ECR_VIEW1_TMPL1_THS##']) ? $fields['##ECR_VIEW1_TMPL1_THS##'] : array(array());
     $key = key($this->keys);
     if (isset($AutoCode->fields[$key]) && count($AutoCode->fields[$key])) {
         $selecteds = $AutoCode->fields[$key];
     }
     $this->show_tablefields($table_name, $selecteds);
     EcrHtmlButton::submitParts();
 }
Exemplo n.º 8
0
 /**
  * Open the part for edit.
  *
  * @param object $AutoCode The AutoCode
  *
  * @return void
  */
 public function edit($AutoCode)
 {
     $var_scope = $AutoCode->options['varScope'];
     /* Array with required fields */
     $requireds = array();
     $requireds[] = EcrHtmlSelect::scope($this->_scope);
     echo '<input type="hidden" name="element" value="' . $this->_element . '" />';
     /* Draws an input box for a name field */
     $requireds[] = EcrHtmlSelect::name($this->_element, jgettext('Table'));
     echo '<strong>Var Scope:</strong><br />';
     foreach ($this->_varScopes as $vScope) {
         $checked = $vScope == $var_scope ? ' checked="checked"' : '';
         echo '<input type="radio" name="var_scope" value="' . $vScope . '" id="vscope-' . $vScope . '"' . $checked . '> <label for="vscope-' . $vScope . '">' . $vScope . '</label><br />';
     }
     //foreach
     /* Draws the submit button */
     EcrHtmlButton::submitParts($requireds);
 }