Beispiel #1
0
 private function mainTreeRender(Tree &$tree, $selectedKey)
 {
     $li = new Li();
     $mainDiv = new Div();
     $mainDiv->addStyleClasses(["expand", "text_non_select", "tree_text_node", "input_hover"]);
     $table = new Table();
     $tr = new Tr();
     $nodeIcon = new Td();
     $nodeText = new Td();
     $nodeText->addStyleClass("tree_text");
     $nodeSearchCount = new Td();
     $nodeSearchCount->addStyleClass("tree_search_count");
     if (count($tree->childrens) > 0) {
         $nodeIcon->addStyleClasses(["tree_btn"]);
         $icon = new Img();
         $icon->addAttribute("style", "top: 2px; position: relative; margin: 0 5px;");
         $icon->addAttribute("src", $this->treeLevel <= $this->DEFAULT_TREE_LEVEL_TO_SHOW || $tree->show ? "images/arrow90.png" : "images/arrow00.png");
         $nodeIcon->addChild($icon);
     } else {
         $nodeIcon->addStyleClass("tree_empty");
     }
     $link = new A();
     $link->addAttribute("href", URLBuilder::getCatalogLinkForTree($tree->key));
     $link->addChild($tree->value);
     $link->addStyleClass("input_hover");
     $nodeSelected = new Div();
     $nodeSelected->addStyleClass($tree->key == $selectedKey ? 'selected' : 'tree_empty');
     $link->addChild($nodeSelected);
     $nodeText->addChild($link);
     return $li->addChild($mainDiv->addChild($table->addChild($tr->addChildList([$nodeIcon, $nodeText, $nodeSearchCount]))));
 }
Beispiel #2
0
 private function bottomTreeRender(Tree &$tree, $isRoot)
 {
     $children = count($tree->childrens);
     $span = new Li();
     $mainDiv = new Div();
     $span->addStyleClass($isRoot);
     /*if ($children == 0) {*/
     $mainDiv = new A();
     $span->addChild($mainDiv);
     $mainDiv->addStyleClasses(["f-17", "cursor_pointer", "bottom_tree_hover", "label"]);
     $mainDiv->addAttribute(TagLabels::HREF, URLBuilder::getCatalogLinkForTree($tree->key));
     /*} else {
           $span->addChild($mainDiv);
           $mainDiv->addStyleClasses(["f-17", "label"]);
       }*/
     $mainDiv->addChild($tree->value);
     return $span;
 }
Beispiel #3
0
 public static function getDOMForSingleItemPageFromTree($key)
 {
     $mainTag = new Div();
     $mainTag->addStyleClasses(["catalog_tree"]);
     $treeUtils = new TreeUtils();
     $mainTree = $treeUtils->buildTreeByLeafs();
     $path = $treeUtils->getTreePath($mainTree, $key);
     $data = [self::getArrayItemForDefaultLink()];
     for ($pathIndex = 1; $pathIndex < count($path); $pathIndex++) {
         $item = [];
         $trimText = Utils::trimStr($path[$pathIndex]->value, Constants::DEFAULT_TEXT_LENGTH_FOR_CATALOG_PATH_LINK);
         if ($pathIndex == count($path) - 1) {
             $pageNumber = Utils::getFromGET(UrlParameters::PAGE_NUM);
             $itemsCount = Utils::getFromGET(UrlParameters::ITEMS_COUNT);
             $item[0] = $trimText;
             $item[1] = URLBuilder::getSingleItemLinkBack($pageNumber, $itemsCount);
         } else {
             $item[0] = $trimText;
             $item[1] = URLBuilder::getCatalogLinkForTree($path[$pathIndex]->key);
         }
         array_push($data, $item);
     }
     $mainTag->addChildList(self::buildPathLink($data));
     return $mainTag;
 }