Example #1
0
 private function createBottomTreeDom()
 {
     $mainDiv = new Div();
     $mainDiv->addStyleClass("bottom_panel");
     $div01 = new Div();
     $mainDiv->addChild($div01);
     $div01->addStyleClasses(["bottom_panel_window"]);
     $container = new Div();
     $container->addStyleClasses(["bottom_panel_item", "w-31p"]);
     $container->updateId("bottom_catalog_tree");
     $containerChild = new Div();
     $containerChild->addStyleClasses(["catalog"]);
     $container->addChild($containerChild);
     $div01->addChildList([$container]);
     $mainTitle = new A();
     $mainTitle->addChild("Каталог");
     $mainTitle->addAttribute("href", Labels::$TOP_NAVIGATION_LINKS["catalog"]);
     $mainTitle->addStyleClasses(["f-16", "title"]);
     $containerChild->addChild($mainTitle);
     $treeContainer = new Div();
     $treeContainer->addStyleClass("content");
     $containerChild->addChild($treeContainer);
     $this->treeProcessBottom($this->mainTree, $treeContainer);
     return $mainDiv;
 }
Example #2
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]))));
 }
Example #3
0
 public function getLink($pageNumber, $num)
 {
     $mainTag = new A();
     $mainTag->addStyleClasses(["link_style", "cursor_pointer", "text_non_select", "f-15", "input_hover"]);
     $mainTag->addAttribute("href", URLBuilder::getCatalogLinkNumeric($pageNumber, $num));
     $mainTag->addChild($pageNumber);
     return $mainTag;
 }
Example #4
0
 public function getPaginationLinks($pageNumber, $num, $totalCount, $topBottom)
 {
     $mainTag = new Div();
     $catalogLink = new CatalogLink();
     $dots = false;
     $topBottomStyle = $topBottom == 'bottom' ? 'link_next_prev_bottom' : '';
     if ($totalCount != 0) {
         $amountPages = ceil($totalCount / $num);
         if ($pageNumber > 0 && $pageNumber <= $amountPages) {
             $mainTag->addStyleClasses(["pagination_bar", "right_top_bar", $topBottomStyle]);
             $brokerTag = new Div();
             $mainTag->addChild($brokerTag);
             $tagCenterContainer = new Span();
             if ($pageNumber != 1) {
                 $tagPrevious = new A();
                 $tagPrevious->addStyleClasses(["f-16", "text_non_select", "link_style", "link_next_prev", "input_hover", "prev_link"]);
                 $tagPrevious->addAttribute("href", URLBuilder::getCatalogLinkPrev($pageNumber, $num));
                 $text = new Div();
                 $text->addStyleClass("text");
                 $text->addChild("назад");
                 $arrow = new Div();
                 $arrow->addStyleClass("arrow");
                 $tagCenterContainer->addChild($tagPrevious->addChildList([$arrow, $text]));
             }
             $brokerTag->addChild($tagCenterContainer);
             $tagCenterContainer->addStyleClasses(["numeric_links", "f-15"]);
             for ($currentRenderPage = 1; $currentRenderPage <= $amountPages; $currentRenderPage++) {
                 if ($currentRenderPage < 2 || $currentRenderPage > $pageNumber - $this->linksGroupCount && $currentRenderPage < $pageNumber + $this->linksGroupCount || $currentRenderPage > $amountPages - 1) {
                     $dots = false;
                     if ($currentRenderPage != $pageNumber) {
                         $tagCenterContainer->addChild($catalogLink->getLink($currentRenderPage, $num));
                     } else {
                         $emptyLinkView = $catalogLink->getEmptyLink($pageNumber);
                         $emptyLinkView->addStyleClass("f-16");
                         $tagCenterContainer->addChild($emptyLinkView);
                     }
                 } else {
                     if (!$dots) {
                         $dots = true;
                         $tagCenterContainer->addChild($catalogLink->get3dots());
                     }
                 }
             }
             if ($pageNumber != $amountPages) {
                 $tagNext = new A();
                 $tagNext->addStyleClasses(["f-16", "text_non_select", "link_style", "input_hover", "link_next_prev", "next_link"]);
                 $tagNext->addAttribute("href", URLBuilder::getCatalogLinkNext($pageNumber, $num));
                 $text = new Div();
                 $text->addStyleClass("text");
                 $text->addChild("вперед");
                 $arrow = new Div();
                 $arrow->addStyleClass("arrow");
                 $tagCenterContainer->addChild($tagNext->addChildList([$text, $arrow]));
             }
         }
     }
     return $mainTag;
 }
Example #5
0
 private function buildPathLink($data)
 {
     $links = [];
     $zIndex = 10;
     $pathIndex = 0;
     $arrow = new Div();
     $arrow->addStyleClass("path_link_item_arrow_right");
     for ($index = 0; $index < count($data); $index++) {
         $node = new Div();
         $node->addAttributes(["xmlns:v" => "http://rdf.data-vocabulary.org/#", "typeof" => "v:Breadcrumb"]);
         $node->addAttribute("style", "z-index: " . $zIndex--);
         $node->addStyleClass("level" . ($index + 1));
         if (count($data[$index]) > 1 && strlen(trim($data[$index][1])) > 0) {
             $pathNode = new A();
             $pathNode->addAttributes(["rel" => "v:url", "property" => "v:title"]);
             $pathNode->addAttribute("href", $data[$index][1]);
         } else {
             $pathNode = new Div();
         }
         $trimText = Utils::trimStr($data[$index][0], Constants::DEFAULT_TEXT_LENGTH_FOR_CATALOG_PATH_LINK);
         $pathNode->addChild($trimText);
         $pathNode->addStyleClasses(["path_link_item_text", $index > 0 ? "not_level_first_level" : ""]);
         array_push($links, $node->addChildList([$pathNode]));
     }
     return $links;
 }
Example #6
0
 public function createTopNavigationLinks()
 {
     $topNavigationLinks = new TopNavigationLinks();
     $mainDiv = new Div();
     $mainDiv->addStyleClass("top_panel");
     $linkToHome = new A();
     $linkToHome->addAttribute("href", "/");
     $linkToHome->addStyleClass("logo");
     $backGround = new Div();
     $backGround->addStyleClass("top_panel_background");
     $div11 = new Div();
     $div11->addStyleClasses(array("top_bar", "border-round-7px"));
     $div111 = new Div();
     $div111->updateId("top_panel_fixed");
     $div111->addChildList([$backGround, $linkToHome]);
     //TagUtils::createShadow($div111);
     $div1111 = new Div();
     $div1111->addStyleClass("top_bar_relative");
     $mainDiv->addChildList([$div11->addChild($div111->addChild($div1111))]);
     $div1111->addChild($topNavigationLinks->getDOM());
     return $mainDiv;
 }
Example #7
0
 public static function getItemButton($url)
 {
     $button = new A();
     $button->addStyleClasses(["catalog_item_button", "f-17", "input_hover"]);
     $button->addChild("подробнее");
     $button->addAttribute("href", $url);
     return $button;
 }
Example #8
0
 public static function createNote($text, $link)
 {
     $note = new A();
     $note->addStyleClass("note");
     $textWrapper01 = new Div();
     $textWrapper = new Span();
     $textWrapper->addChild($text);
     $textWrapper01->addChild($textWrapper);
     $note->addChild($textWrapper01);
     if (strlen($link) > 0) {
         $note->addAttribute("href", $link);
         $note->addStyleClasses(["hover_text_underline"]);
     } else {
         $note->addStyleClasses(["cursor_default"]);
     }
     return $note;
 }
Example #9
0
 private function getCatalogItemsTitle()
 {
     $headContainer = new Div();
     $head = new Div();
     $head->addStyleClasses(["slogan_container_horizontal", "z-10"]);
     $leftEar = new Div();
     $leftEar->addStyleClass("slogan_left_ear");
     $rightEar = new Div();
     $rightEar->addStyleClass("slogan_right_ear");
     $sloganContainer = new Div();
     $slogan = new Div();
     $slogan->addStyleClass("slogan catalog_slogan");
     $slogan->addChild("Наша спецодежда позаботится о Вас.");
     $sloganContainer->addChildren($slogan);
     $head->addChildren($leftEar, $sloganContainer, $rightEar, $rightEar);
     $head2 = new Div();
     $head2->addStyleClasses(["slogan_container_horizontal", "z-9"]);
     $catalogLinkContainer = new A();
     $catalogLinkContainer->addAttribute("href", Labels::$TOP_NAVIGATION_LINKS[catalog]);
     $catalogLinkContainer->addStyleClass("main_page_catalog_link_container");
     $catalogLink = new Span();
     $catalogLink->addChild("Каталог");
     $catalogLink->addStyleClasses(["main_page_catalog_link button input_hover", "f-25"]);
     $catalogLinkContainer->addChildren($catalogLink);
     /*$rightEarForLink = new Div();
       $rightEarForLink->addStyleClasses(["slogan_right_ear", "background_dark"]);*/
     $head2->addChildren($catalogLinkContainer);
     $headContainer->addChildren($head, $head2);
     $slogan = new Div();
     $slogan->addStyleClass('catalog_slogan');
     $headContainer->addStyleClass("main_page_slogan_container");
     return $slogan->addChild($headContainer);
 }