public function renderMenu() { $goods = new DBGoodsType(); $goods->executeRequest(DB::TABLE_NAV_KEY___NAME, '', '', DB::TABLE_NAV_KEY__VALUE); echo "<div>"; while ($row = mysql_fetch_array($goods->getResponse())) { self::renderMenuItem($row['key'], $row['value']); } echo "</div>"; }
public function getItemSearchData($pageNumber, $num, $valueToSearch) { $goods = new DBGoodsType(); $keyMas = array(); $valueMas = array(); array_push($keyMas, DB::TABLE_GOODS__NAME); array_push($keyMas, DB::TABLE_GOODS__DESCRIPTION); array_push($valueMas, "(" . mb_convert_case($valueToSearch, MB_CASE_LOWER, "utf-8") . ")+"); array_push($valueMas, "(" . mb_convert_case($valueToSearch, MB_CASE_LOWER, "utf-8") . ")+"); $limitBegin = ($pageNumber - 1) * $num; $limitNum = $num; if ($this->isAdminOrderEnabled()) { $goods->getUserSortedForSearch($keyMas, $valueMas, $limitBegin, $limitNum); } else { $goods->executeRequestRegExpArrayWithLimit($keyMas, $valueMas, DB::TABLE_GOODS___ORDER, DB::ASC, $limitBegin, $limitNum); } $this->data = $goods->getResponse(); $this->dataCount = $goods->getResponseSize(); $goods->getGoodsSearchCount($keyMas, $valueMas); $this->dataTotalCount = $goods->getTotalCount(); }
protected function createGeneralContent() { $mainTag = new Div(); $goods = new DBGoodsType(); $itemId = Utils::getFromGET("page_id"); $goods->executeRequest(DB::TABLE_GOODS__KEY_ITEM, $itemId, DB::TABLE_GOODS___ORDER, DB::ASC); $response = $goods->getResponse(); $mainTag->addStyleClasses(["single_item"]); $row = mysql_fetch_array($response); if ($row) { $imagePathes = FileUtils::getFilesByPrefixByDescription(Constants::DEFAULT_ROOT_CATALOG_PATH . DIRECTORY_SEPARATOR . $itemId . DIRECTORY_SEPARATOR, Constants::SMALL_IMAGE, 'jpg'); $filesSmall = FileUtils::getFilesByPrefixByDescription(Constants::DEFAULT_ROOT_CATALOG_PATH . DIRECTORY_SEPARATOR . $itemId . DIRECTORY_SEPARATOR, Constants::SMALL_IMAGE, "jpg"); $filesMedium = FileUtils::getFilesByPrefixByDescription(Constants::DEFAULT_ROOT_CATALOG_PATH . DIRECTORY_SEPARATOR . $itemId . DIRECTORY_SEPARATOR, Constants::MEDIUM_IMAGE, "jpg"); $firstImage = FileUtils::getFirstFileInDirectoryByPrefixByDescription(Constants::DEFAULT_ROOT_CATALOG_PATH . DIRECTORY_SEPARATOR . $itemId . DIRECTORY_SEPARATOR, Constants::MEDIUM_IMAGE, 'jpg'); if ($firstImage == '') { $firstImage = FileUtils::getCapImage(Labels::CAP_IMAGE_FOR_CLOTHING); } sort($imagePathes); sort($filesSmall); sort($filesMedium); $defaultBackgroundImage = $this->getFirstImage($itemId, Constants::MEDIUM_IMAGE); $titleBlock = new Strong(); $titleBlock->addStyleClasses(["title", "f-30"]); $titleBlock->addChild($row[DB::TABLE_GOODS__NAME]); $this->updateTitleTagChildren([$row[DB::TABLE_GOODS__NAME] . ' - ']); $metaDesc = new Meta(); $metaDesc->addAttributes(["name" => "description", "content" => "на этой странице Вы найдете подробное описание для товара " . $row[DB::TABLE_GOODS__NAME] . ", а также сможете пролистать фотографии и просмотреть их увеличенную версию"]); $this->addMetaTags($metaDesc); $infoBlock = new Div(); $infoBlock->addStyleClass("info"); $leftBlock = new Div(); $leftBlock->addStyleClasses(["left_block"]); $bigImg = new Div(); $bigImg->addStyleClasses(["big_img", "float_left"]); $bigImg->addAttribute("style", "background-image: url({$defaultBackgroundImage});filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='{$defaultBackgroundImage}',sizingMethod='scale');-ms-filter: \"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='{$defaultBackgroundImage}',sizingMethod='scale')\";"); $square = new Div(); $square->addStyleClass("squareX"); $zoom = new Div(); $zoom->addStyleClass("zoom_image"); $zoom->addAttribute("style", "background-image: url(.{$defaultBackgroundImage}.)"); $img1 = new Img(); $img1->addAttribute("src", $firstImage); $img1->updateId("main_gallery_image"); $img2 = new Img(); $img2->addAttribute("src", $firstImage); $img2->updateId("img_effect"); $square->addChildList([$zoom, $img1, $img2]); $square->addChildList($this->getImageSwitcher()); $leftBlock->addChildList([$square, $this->getPreviewImages($filesMedium, Constants::MEDIUM_IMAGE . "images", false)]); $rightBlock = new Div(); $rightBlock->addStyleClasses(["right_block"]); $overviewImgs = $this->getPreviewImages($filesSmall, Constants::SMALL_IMAGE . "images", true); $overviewImgs->updateId("gallery"); $overviewImgs->addStyleClass("w-100p"); $rightBlock->addChildList([$overviewImgs]); $index = 0; $imgList = new Div(); $imgList->addStyleClass("scroll_child"); /*foreach($imagePathes as $imagePath) { if (count(trim($imagePath)) != 0) { $index++; $activeImg = ''; $cursor = 'review'; if ($index == 1) { $active = 'preview_image_current_border'; $activeImg = 'img_to_front'; } else { $active = "preview_image_hover_border"; $cursor = 'cursor_pointer'; } $imgItem = new Div(); $imgItem->addStyleClasses(["image_item", "float_left", $cursor]); $zoomWindowContainer = new Div(); $zoomWindowContainer->addStyleClass("zoom_window_container"); $zoomWindow = new Div(); $zoomWindow->addStyleClass("zoom_window"); $zoomWindowContainer->addChild($zoomWindow); $previewImgBorder = new Div(); $previewImgBorder->addStyleClasses("preview_image_border", $active); $previewImage = new Img(); $previewImage->addAttribute("src", $imagePath); $previewImage->addStyleClasses(["preview_image", $activeImg]); $imgItem->addChildList([$zoomWindowContainer, $previewImgBorder, $previewImage]); } }*/ } $description = $this->getImageDescription($row[DB::TABLE_GOODS__DESCRIPTION]); return $mainTag->addChildList([$titleBlock, $infoBlock->addChildList([$leftBlock, $rightBlock, $description])]); }
public static function getItemLinkForSimpleType($itemId) { $url = ''; if (preg_match('/^([\\w]{2}){1}([\\d]{0,3}){1}$/', $itemId, $itemInfo, PREG_OFFSET_CAPTURE) == 1) { $goods = new DBGoodsType(); $itemPosition = $goods->getCatalogItemPosition($itemId, DB::TABLE_GOODS___ORDER); $page = ceil($itemPosition / Utils::getFromGETWithDefault(UrlParameters::NUM, Constants::DEFAULT_ITEM_COUNT_PER_PAGE)); $keyValuePairs = array(UrlParameters::PAGE_NAME => UrlParameters::PAGE__CATALOG, UrlParameters::KEY => $itemInfo[1][0], UrlParameters::PAGE_NUM => $page, UrlParameters::ITEMS_COUNT => Utils::getFromGETWithDefault(UrlParameters::NUM, Constants::DEFAULT_ITEM_COUNT_PER_PAGE), UrlParameters::HIGH_LIGHT_ELEMENT => $itemId); $url = '?' . Utils::getUrlWithStoreMode(Utils::buildUrl($keyValuePairs)); } return $url; }
private function getCatalogItems() { $dbGoods = new DBGoodsType(); $catalogLoader = new CatalogLoader(); $catalogLoader->getItemsMainData(1, 8); $goods = $dbGoods->extractDataFromResponse($catalogLoader->data, DB::TABLE_GOODS___MAPPER); $goodIndex = 0; $slideShowContainer = new Div(); $slideShowContainer->addStyleClass("main_page_items_slideshow"); $slideShow = new Div(); $slideShow->addStyleClasses(["slide_show", "catalog_items"]); $div02 = new Div(); $div02->addAttribute("style", "overflow: hidden;"); while ($goodIndex < count($goods)) { $div02->addChild($this->renderGalleryItemWithSingleItem($goods[$goodIndex])); $goodIndex++; } $slideShowContainer->addChildren($slideShow->addChildren($div02)); return [$this->getCatalogItemsTitle(), $slideShowContainer]; }
public static function getGoodsOrder() { $dbGoods = new DBGoodsType(); $data = $dbGoods->getAdminSortedForCommon(0, PHP_INT_MAX); Log::db("getGoodsOrder "); $mappings = [DB::TABLE_GOODS__ID => DB::TABLE_GOODS__ID, DB::TABLE_GOODS__KEY_ITEM => DB::TABLE_GOODS__KEY_ITEM, DB::TABLE_GOODS__NAME => DB::TABLE_GOODS__NAME, DB::TABLE_USER_ORDER__GOOD_ID => DB::TABLE_USER_ORDER__GOOD_ID, DB::TABLE_USER_ORDER__GOOD_INDEX => DB::TABLE_USER_ORDER__GOOD_INDEX]; $goods = $dbGoods->extractDataFromResponse($data, $mappings); return self::mergeImagesToGoods($goods); }