public function GenEditorData($a_attr)
 {
     $data = array();
     $data['ownerid'] = $a_attr['ownerid'];
     $data['type'] = "input_gallery";
     $data['name'] = $a_attr['name'];
     $data['title'] = Locales::getStringOrJSONLocale($a_attr['title']);
     $locdata = Locales::ReadData($a_attr['id']);
     $data['images'] = $locdata['images'];
     Editor::AddData(DATA_MODULE_DATA, $data);
 }
 public function GenEditorData($a_attr)
 {
     $data = array();
     $data['ownerid'] = $a_attr['ownerid'];
     $data['type'] = "input_img";
     $data['name'] = $a_attr['name'];
     $data['width'] = $a_attr['width'];
     $data['height'] = $a_attr['height'];
     $unn = Locales::ReadData($a_attr['id']);
     $data['hash'] = $unn['hash'];
     $data['title'] = Locales::getStringOrJSONLocale($a_attr['title']);
     Editor::AddData(DATA_MODULE_DATA, $data);
 }
 public function GenEditorData($a_attr)
 {
     $data = array();
     $data['ownerid'] = $a_attr['ownerid'];
     $data['type'] = "input_string";
     $data['name'] = $a_attr['name'];
     $data['width'] = $a_attr['width'];
     $data['tooltip'] = Locales::getStringOrJSONLocale($a_attr['tooltip']);
     $data['title'] = Locales::getStringOrJSONLocale($a_attr['title']);
     $data['datepicker'] = isset($a_attr['datepicker']) ? true : false;
     $locdata = Locales::ReadData($a_attr['id']);
     $data['locales'] = $locdata['text'];
     Editor::AddData(DATA_MODULE_DATA, $data);
 }
 public function GenEditorData($a_attr)
 {
     $data = array();
     $data['ownerid'] = $a_attr['ownerid'];
     $data['type'] = "input_link";
     $data['name'] = $a_attr['name'];
     $data['tooltip_url'] = Locales::getStringOrJSONLocale($a_attr['tooltip_url']);
     $data['tooltip_title'] = Locales::getStringOrJSONLocale($a_attr['tooltip_title']);
     $data['title'] = Locales::getStringOrJSONLocale($a_attr['title']);
     $locdata = Locales::ReadData($a_attr['id']);
     $data['link_url'] = $locdata['link_url'];
     $data['link_title'] = $locdata['link_title'];
     /*foreach (Locales::$m_locales as $loc) {
           $link_data = Locales::ReadStringData($a_attr['id'], $loc);
           $data['link_url'] = $link_data['link_url'];               
           $data['link_title'][$loc] = $link_data['link_title'];               
       }*/
     Editor::AddData(DATA_MODULE_DATA, $data);
 }
 public function On_Node_BuildTag_CMS_ITERATOR($a_data)
 {
     $iterator = $a_data->node;
     $name = $iterator->getAttribute("name");
     // create copy, php sucks...
     $iterator_ser = serialize($iterator);
     // Container for iterators
     $iterator_container = new Template_ContainerNode();
     $iterator->parent()->addChild($iterator_container, $iterator);
     $result = Database::Query("SELECT * FROM `" . DB_TBL_DATA . "` WHERE `type` = 'itr' AND `owner` = '" . $a_data->ownerid . "' AND `name` = '" . $name . "' ORDER BY `id` ASC");
     if ($result->HasData()) {
         do {
             // Get Iterator id
             $iterator_data = $result->GetRow();
             $id = $iterator_data['id'];
             // Clone template
             $tmpl = unserialize($iterator_ser);
             $node = new Node($a_data->moduleid, -$id);
             $node->Build($tmpl);
             // add to container
             $iterator_container->addChild($tmpl);
             // link
             $child_data[] = $id;
         } while ($result->NextRow());
     }
     // Add data
     $data = array();
     $data['ownerid'] = $a_data->ownerid;
     $data['type'] = "iterator";
     $data['name'] = $name;
     $data['content'] = $child_data;
     $data['template'] = $iterator->root()->template_file;
     Editor::AddData(DATA_MODULE_DATA, $data);
     // Remove "template"
     $iterator->remove();
 }
 public function Build()
 {
     // Get container type and define string
     $type = $this->m_container->getAttribute("type");
     $name = $this->m_container->getAttribute("name");
     $title = $this->m_container->getAttribute("title");
     $slots = $this->m_container->getAttribute("slots");
     // wrapepr for js
     if (Compiler::$Mode == COMPILER_MODE_EDITOR) {
         $this->m_container->addChild(new Template_TextNode('<div class="editor-container editor-container-' . $type . '" id="editor-container-' . $name . '" data-type="' . $type . '">'));
     }
     for ($slot = 0; $slot < $slots; $slot++) {
         // Load module in slot
         $result = Database::Query("SELECT * FROM `" . DB_TBL_MODULE . "` WHERE `container` = '" . $name . "' AND `pageid` = '" . $this->m_pageid . "' AND `slot` = '" . $slot . "'");
         if ($result->HasData()) {
             $row = $result->GetRow();
             // Build Module
             $module = new Module($row['id']);
             $module_tmpl = $module->Build();
             // insert after iterator
             $this->m_container->addChild($module_tmpl);
         }
         /*else { // Place holder
               // Create DOM object
               $doc = new DOMDocument();
               // Load template
               if (Compiler::$Mode == COMPILER_MODE_FRONTEND)
                   $doc->load(COMPILER_TEMPLATES_DIR . '/modules/' . $type . '/placeholder.tmpl');
               else
                   $doc->load(COMPILER_TEMPLATES_DIR . '/modules/' . $type . '/placeholder-editor.tmpl');
               
               $container_html .= $doc->saveHTML();
           }*/
     }
     if (Compiler::$Mode == COMPILER_MODE_EDITOR) {
         // Add container wrapper for js
         $this->m_container->addChild(new Template_TextNode('</div>'));
         // Add data
         $data = array();
         $data['name'] = $name;
         $data['title'] = Locales::getStringOrJSONLocale($title);
         $data['type'] = $type;
         $data['slots'] = $slots;
         Editor::AddData(DATA_CONTAINER, $data);
     }
     //$this->m_container->remove();
 }
 public static function GenerateModulesData()
 {
     $result = Database::Query("SELECT * FROM `" . DB_TBL_MODULE_TEMPLATE . "`");
     if (!$result->HasData()) {
         return;
     }
     do {
         $module_template = $result->GetRow();
         // Add data
         $data = array();
         $data['id'] = $module_template['id'];
         $data['type'] = $module_template['type'];
         $data['template'] = $module_template['template'];
         $data['name'] = $module_template['name'];
         //$iterators = Module::GenerateIteratorStructures($module_template);
         if (count($iterators)) {
             $data['iterators'] = $iterators;
         }
         Editor::AddData(DATA_MODULE, $data);
     } while ($result->NextRow());
 }