Exemplo n.º 1
0
 /**
  * Discovers components structure
  *
  * @return void
  */
 protected function discoverStructure()
 {
     $finished = NenoSettings::get('installation_completed') == 1;
     if (!$finished) {
         $level = NenoSettings::get('installation_level', 0);
         if (!$this->isLeafLevel($level)) {
             $element = $this->getElementByLevel($level);
             if ($element == null && $level == 0) {
                 // If there aren't any, let's create do not translate group if it doesn't exist
                 NenoHelperBackend::createDoNotTranslateGroup();
                 $finished = true;
             } elseif ($element == null && $level != 0) {
                 list($firstPart, $secondPart) = explode('.', $level);
                 $firstPart--;
                 if ($firstPart == 0) {
                     NenoSettings::set('installation_level', $firstPart);
                 } else {
                     NenoSettings::set('installation_level', implode('.', array($firstPart, $secondPart)));
                 }
             } else {
                 /* @var $element NenoContentElementGroup */
                 $element->discoverElement(false);
             }
         } else {
             list($firstPart, $secondPart) = explode('.', $level);
             $firstPart--;
             if ($firstPart == 0) {
                 NenoSettings::set('installation_level', $firstPart);
             } else {
                 NenoSettings::set('installation_level', implode('.', array($firstPart, $secondPart)));
             }
         }
     }
     if ($finished) {
         echo 'ok';
     }
 }
Exemplo n.º 2
0
 /**
  * Execute discovering process
  *
  * @return void
  */
 public function processDiscoveringStep()
 {
     /* @var $db NenoDatabaseDriverMysqlx */
     $db = JFactory::getDbo();
     $query = $db->getQuery(true);
     $finished = NenoSettings::get('installation_completed') == 1;
     if (!$finished) {
         $level = NenoSettings::get('installation_level', 0);
         $element = $this->getElementByLevel($level);
         if ($element == null && $level == 0) {
             // If there aren't any, let's create do not translate group if it doesn't exist
             NenoHelperBackend::createDoNotTranslateGroup();
             // Let's publish language plugins
             $query->clear()->update('#__extensions')->set('enabled = 1')->where(array('element LIKE ' . $db->quote('languagecode'), 'element LIKE ' . $db->quote('languagefilter')), 'OR');
             $db->setQuery($query);
             $db->execute();
             // Let's create menu structure
             NenoHelper::createMenuStructure();
             NenoSettings::set('installation_completed', 1);
             $finished = true;
         } elseif ($element == null && $level != 0) {
             list($firstPart, $secondPart) = explode('.', $level);
             $firstPart--;
             if ($firstPart == 0) {
                 NenoSettings::set('installation_level', $firstPart);
             } else {
                 NenoSettings::set('installation_level', implode('.', array($firstPart, $secondPart)));
             }
         } else {
             $element->discoverElement();
         }
     }
     if ($finished) {
         echo 'ok';
     }
     JFactory::getApplication()->close();
 }