Mushka = "vals"; // init module itself $TplDef = array( "item" => "shop/item.tpl", "list" => "shop/list.tpl", "full" => "shop/full.tpl", "cfg_lnk" => "shop/cfg_lnk.tpl", "captcha" => "shop/captcha.tpl", "message" => "shop/message.tpl", "search_item" => "shop/search/item.tpl", "search_list" => "shop/search/list.tpl", "formitem" => "shop/multifield.tpl", "mailadmin" => "shop/mailadmin.tpl", "mailuser" => "shop/mailuser.tpl", "ordersuccess" => "shop/ordersuccess.tpl" ); $MyPlugin = new shopPlugin($MyModule); $MyModule->Initiate("shop", "/uploads/shop/", "./engine/data/shop_config.php", $ShopConfig, $TplDef, "ShopConfig", array("shopplug"=>$MyPlugin)); //------------- // -----------------| // cart class | // -----------------| // Now load all the data parts $DbArr = array( "id" => "id", "user_id" => "varchar", "date" => "date", "contents" => "text", ); $TplDef = array( "item" => "shop/cart/item.tpl", "add" => "shop/cart/add.tpl", "list" => "shop/cart/list.tpl", "edit" => "shop/cart/edit.tpl", "delete" => "shop/cart/delete.tpl", "main" => "shop/cart/main.tpl", "full" => "shop/cart/full.tpl", "pager" => "shop/cart/pager.tpl" ); $LangArr = array( "title" => "Корзина" ); $FormArr = array( "title"=>array("title"=>"Название", "descr"=>"Название города") ); $CheckDataArr = array( "text"=>array("type"=>"required", "msg"=>"Поле 'Сообщение' обязательно к заполнению") ); $LinksArr = array( "list" => array("sef"=>"/shop/products/itemshow/{post_id}", "std"=>"/index.php?do=shop&class=products&op=itemshow&id={post_id}") ); $MyModule->LoadDataClass("carts", PREFIX . "_shop_carts", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, array(), $LinksArr, false); //------------- $DbArr = array( "id" => "id", "title" => "varchar", "category" => "Class:categories:ItemSelect", "price" => "decimal", "date" => "date", "addinfo" => "text", "photo" => "unlimg", "mainpub" => "checkbox", "byaction"=>"checkbox", "oldprice"=>"varchar", "maindata"=>"multifield", "owner" => "CurrentUser", "commpub"=>"checkbox", "meta_desc"=>"text", "meta_keys"=>"text", "artikul"=>"varchar" ); $TplDef = array( "item" => "shop/ad/item.tpl", "full" => "shop/ad/full.tpl", "add" => "shop/ad/add.tpl", "list" => "shop/ad/list.tpl", "edit" => "shop/ad/edit.tpl", "search" => "shop/ad/search.tpl", "delete" => "shop/ad/delete.tpl", "pager" => "shop/ad/pager.tpl" ); $LangVars = array( "title" => "Объявления", "title_item" => "Обявление" ); $LangArr = array( "title" => "Объявления", ); $FormArr = array( "title"=>array("title"=>"Название", "descr"=>"Название города") ); $CheckDataArr = array( //"title"=>array("type"=>"required", "msg"=>"Поле 'Название' обязательно к заполнению"), //"info"=>array("type"=>"required", "msg"=>"Поле 'Описание' обязательно к заполнению"), //"email"=>array("type"=>"email", "msg"=>"Пожалуйста, заполните поле Email правильно") ); $BrdArr = array("class"=>"products", "field"=>"title", "link"=>"main"); $SeoAddition = " {title}"; $MyModule->LoadDataClass("products", PREFIX . "_shop", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, $BrdArr, array(), false, $SeoAddition); //------------- //------------- // -----------------| // Comments class | // -----------------| // Now load all the data parts $DbArr = array( "id" => "id", "post_id" => "varchar", "user_id" => "CurrentUser", "date" => "date", "autor" => "varchar", "email" => "varchar", "text" => "text", "ip" => "ip", "is_register" => "varchar", "published" => "moderation", "dataclass" => "varchar", "subscribe" => "checkbox" ); $TplDef = array( "item" => "shop/comments/item.tpl", "add" => "shop/comments/add.tpl", "list" => "shop/comments/list.tpl", "edit" => "shop/comments/edit.tpl", "delete" => "shop/comments/delete.tpl", "main" => "shop/comments/main.tpl", "pager" => "shop/comments/pager.tpl" ); $LangArr = array( "title" => "Комментарии к продуктам" ); $FormArr = array( "title"=>array("title"=>"Название", "descr"=>"Название города") ); $CheckDataArr = array( "text"=>array("type"=>"required", "msg"=>"Поле 'Сообщение' обязательно к заполнению") ); $LinksArr = array( "list" => array("sef"=>"/shop/products/itemshow/{post_id}", "std"=>"/index.php?do=shop&class=products&op=itemshow&id={post_id}") ); $MyModule->LoadDataClass("comments", PREFIX . "_shop_comments", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, array(), $LinksArr, false); //------------- // counries $DbArr = array( "id" => "id", "title" => "varchar", "type" => "varchar", "ftitle" => "varchar", "data" => "text" ); $TplDef = array(); $LangArr = array(); $FormArr = array(); $CheckDataArr = array(); $LinksArr = array(); $MyModule->LoadDataClass("multifields", PREFIX . "_shop_fields", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, array(), $LinksArr, false); //------------- // counries $DbArr = array( "id" => "id", "title" => "varchar", "parent" => "Class:categories:ItemSelect", "description" => "text" ); $TplDef = array( "item" => "shop/categories/item.tpl", "full" => "shop/categories/full.tpl", "add" => "shop/categories/add.tpl", "list" => "shop/categories/list.tpl", "edit" => "shop/categories/edit.tpl", "delete" => "shop/categories/delete.tpl", "pager" => "shop/categories/pager.tpl" ); $LangArr = array( "title" => "Марки" ); $FormArr = array( "title"=>array("title"=>"Название", "descr"=>"Название страны") ); $CheckDataArr = array( "title"=>array("type"=>"required", "msg"=>"Поле 'Название' обязательно к заполнению") ); $LinksArr = array( "list" => array("sef"=>"/shop/", "std"=>"/index.php?do=shop") ); $MyModule->LoadDataClass("categories", PREFIX . "_shop_categories", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, array(), $LinksArr, false); //------------- // counries $DbArr = array( "id" => "id", "cart_id" => "Class:carts:ItemSelect", "gateway" => "varchar", "status" => "varchar", "fio" => "varchar", "company" => "varchar", "email" => "varchar", "telephone" => "varchar", "address" => "varchar", "addinfo" => "text", "ip" => "varchar", "date" => "varchar", "items" => "text", "totalsum" => "varchar", "ordernum"=>"varchar" ); $TplDef = array( "item" => "shop/orders/item.tpl", "full" => "shop/orders/full.tpl", "add" => "shop/orders/add.tpl", "list" => "shop/orders/list.tpl", "edit" => "shop/orders/edit.tpl", "delete" => "shop/orders/delete.tpl", "pager" => "shop/orders/pager.tpl" ); $LangArr = array( "title" => "Заказы" ); $FormArr = array( "title"=>array("title"=>"Название", "descr"=>"Заказ") ); $CheckDataArr = array( "cart_id"=>array("type"=>"required", "msg"=>"Поле 'ID корзины' обязательно к заполнению") ); $LinksArr = array( "list" => array("sef"=>"/shop/", "std"=>"/index.php?do=shop") ); $MyModule->LoadDataClass("orders", PREFIX . "_shop_orders", $DbArr, $TplDef, $LangArr, $FormArr, $CheckDataArr, array(), $LinksArr, false); //------------- // when we set our data classes we need to make our pages to show $PageConf = array( "type"=>"static" // define type of the page - static ot form ); $TagList = array( "cats" => 'Plugin:shopplug:ShowCats();', "search" => 'Class:products:SearchItem', "breadcrumbs" => "Plugin:shopplug:ShowBreadCrumbs();", "add_link" => "Plugin:shopplug:GetAddLink();", "current_cat" => "Plugin:shopplug:GetCurrentCat();", "items" => 'Plugin:shopplug:ShowItems();' //Class:products:ShowList(array("tpl"=>"shop/mainitem.tpl", "tpllist"=>"shop/mainitemlist.tpl", "order"=>array("date"=>"DESC") '.$AddString.')) ); $UserRights = "all"; $UrlPath = array( "sef"=>"/shop/", "std"=>"/index.php?do=shop" ); $MetaArr = array( "title" => $ShopConfig['title']['value'], "keywords" => $ShopConfig['meta_keys']['value'], "description" => $ShopConfig['meta_desc']['value'] ); $MyModule->CreatePage("ShowAll", "Главная", $PageConf, $TagList, $UserRights, $UrlPath, "shop/main.tpl", $MetaArr); // ------------------- if($_GET['op']=='category') $MyModule->CreatePage("ShowAll", "Главная", $PageConf, $TagList, $UserRights, $UrlPath, "shop/main1.tpl", $MetaArr); // when we set our data classes we need to make our pages to show $PageConf = array( "type"=>"static" // define type of the page - static ot form ); if(!isset($_GET['id'])) { $_GET['id'] = ""; $AddString = ""; } $TagList = array( "cartid" => "Raw:".$_GET['id'], "cartitems" => "Plugin:shopplug:GetCartItemList", ); // if user is set get user data into tags if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $TagList['fullname'] = "Raw:".$member_id['fullname']; $TagList['email'] = "Raw:".$member_id['email']; } else { $TagList['fullname'] = ""; $TagList['email'] = ""; } $UserRights = "all"; $UrlPath = array( "sef"=>"/shop/", "std"=>"/index.php?do=shop" ); $MetaArr = array( "title" => $ShopConfig['title']['value'], "keywords" => "доска, объявления, ключ, слово", "description" => "Лучшая доска объвлений нашего города!!!" ); $MyModule->CreatePage("checkout", "Оформление заказа", $PageConf, $TagList, $UserRights, $UrlPath, "shop/checkout.tpl", $MetaArr); // ----------------------> $PageConf = array( "type"=>"static" // define type of the page - static ot form ); $TagList = array( "main_data" => "Class:general:AdminShowConfig" ); $UserRights = "admin"; $UrlPath = array( "sef"=>"/shop/", "std"=>"/index.php?do=shop" ); $MetaArr = array( "title" => "Конфигурация :: ".$ShopConfig['title']['value'], "keywords" => "доска, объявления, ключ, слово", "description" => "Лучшая доска объвлений нашего города!!!" ); $MyModule->CreatePage("config", "Конфигурация модуля", $PageConf, $TagList, $UserRights, $UrlPath, "shop/config.tpl", $MetaArr); $MyModule->AddLink("main", "/index.php?do=shop", "/shop/", "all"); $MyModule->AddLink("adm_cfg_lnk", "/index.php?do=shop&op=config", "/shop/admin/config", "admin"); // Now define array with classes using captcha $CaptchaList = array(""); $MyModule->SetCaptchaList($CaptchaList); if($ShopConfig['moder_not']['value']=="1") { $ModerationArr = array( "products"=>"0" ); $MyModule->SetModeration($ModerationArr); } if($ShopConfig['comment_not']['value']=="1") { $CommArr = array( "products"=>"comments", ); $MyModule->SetComments($CommArr); } $MyModule->SetLangVar("ru", "checkbox_yes", "есть"); $MyModule->SetLangVar("ru", "checkbox_no", "нет"); // Initiate languages $MyModule->SetLangVar("ru", "categories", "категории"); $MyModule->SetLangVar("ru", "cities", "города"); $MyModule->SetLangVar("ru", "products", "объявления"); $MyModule->SetLangVar("ru", "countries", "страны"); $MyModule->SetLangVar("ru", "CfgAdmin", "Конфигурация модуля"); $MyModule->SetLangVar("ru", "AddLink", "Добавить"); $MyModule->SetLangVar("ru", "ShowList", "Список"); $MyModule->SetLangVar("ru", "Edit", "Изменить"); $MyModule->SetLangVar("ru", "Delete", "Удалить"); $MyModule->SetLangVar("ru", "ModerList", "Модерация"); $MyModule->SetLangVar("ru", "publ", "Опубликовать"); $MyModule->SetLangVar("ru", "unpubl", "Снять"); $MyModule->SetLangVar("ru", "msg_cities_add", "Спасибо, город успешно добавлен"); $MyModule->SetLangVar("ru", "msg_categories_add", "Спасибо, категория успешно добавлена"); $MyModule->SetLangVar("ru", "msg_products_add", "Спасибо, объявление успешно добавлено."); $MyModule->SetLangVar("ru", "msg_countries_add", "Спасибо, страна успешно добавлено."); $MyModule->SetLangVar("ru", "msg_comments_add", "Спасибо, комментарий успешно добавлен."); $MyModule->SetLangVar("ru", "msg_cities_edit", "Спасибо, город успешно изменен"); $MyModule->SetLangVar("ru", "msg_categories_edit", "Спасибо, категория успешно изменена"); $MyModule->SetLangVar("ru", "msg_products_edit", "Спасибо, объявление успешно изменено."); $MyModule->SetLangVar("ru", "msg_countries_edit", "Спасибо, страна успешно изменена"); $MyModule->SetLangVar("ru", "msg_comments_edit", "Спасибо, комментарий успешно изменен"); $MyModule->SetLangVar("ru", "msg_cities_del", "Спасибо, город успешно удален"); $MyModule->SetLangVar("ru", "msg_categories_del", "Спасибо, категория успешно удалена"); $MyModule->SetLangVar("ru", "msg_products_del", "Спасибо, объявление успешно удалено."); $MyModule->SetLangVar("ru", "msg_countries_del", "Спасибо, страна успешно удалена."); $MyModule->SetLangVar("ru", "msg_comments_del", "Спасибо, комментарий успешно удален"); $MyModule->SetLangVar("ru", "msg_record_exists", "Точно такая же запись уже существует в базе."); $MyModule->SetLangVar("ru", "msg_record_none", "Товары в данной категории временно отсутствует."); $MyModule->SetLangVar("ru", "msg_restricted", "У вас недостаточно прав для просмотра этой страницы.
Назад"); $MyModule->SetLangVar("ru", "brd_startup", $MyModule->MyConfig['title']['value']); $MyModule->SetLangVar("ru", "msg_yrhere", ""); $MyModule->SetLangVar("ru", "brd_sign", " → "); $MyModule->SetLangVar("ru", "addimgfield", "Добавить поле"); // Select Lists $db->query("SELECT id, group_name FROM " . PREFIX . "_usergroups"); $GroupArr = array(); while($row = $db->get_row()) { $GroupArr[$row['id']] = $row['group_name']; } $MyModule->AddSelectList("groups",$GroupArr); $TimeShowList = array( "week" => "Неделя", "2week" => "2 недели", "month" => "Месяц" ); $MyModule->AddSelectList("GetTimeShow",$TimeShowList); $YesNoList = array( "1" => "Да", "0" => "Нет" ); $MyModule->AddSelectList("YesNo",$YesNoList); $MarksList = array( "0" => "Все", "1" => "Caro", "2" => "Oporo", "3" => "Topclass", "4" => "Foundain", "5" => "Eago" ); $ParamsFR = array( "zeritem"=>"edititem, additem" ); $MyModule->AddSelectList("Marks", $MarksList, $ParamsFR); $MarksList = array( "0" => "Все", "1" => "нет", "2" => "2", "3" => "4", "4" => "6", "5" => "8", "6" => "10", "7" => "12", "8" => "14", "9" => "16", "10" => "18", "11" => "20" ); $ParamsFR = array( "zeritem"=>"edititem, additem" ); $MyModule->AddSelectList("HMFors", $MarksList, $ParamsFR); $MarksList = array( "0" => "Все", "1" => "Низкий", "2" => "Высокий", "3" => "Совмещенные с ванной", ); $ParamsFR = array( "zeritem"=>"edititem, additem" ); $MyModule->AddSelectList("Poddons", $MarksList, $ParamsFR); $MarksList = array( "0" => "Все", "1" => "Нет", "2" => "Сенсорная", "3" => "Кнопочная", ); $ParamsFR = array( "zeritem"=>"edititem, additem" ); $MyModule->AddSelectList("Panels", $MarksList, $ParamsFR); $YearArr = array(); for($i=1970; $i<=(int)date("Y");$i++) { $YearArr[$i] = $i; } $YearArr = array_reverse($YearArr, true); $MyModule->AddSelectList("Years", $YearArr, $ParamsFR); $CurrArr = array( "0" => "Все", "usd" => "$", "jpy" => "JPY", "eur" => "EUR", "rur" => "руб." ); $ParamsFR = array( "zeritem"=>"edititem, additem" ); $MyModule->AddSelectList("Currencies", $CurrArr, $ParamsFR); $CurrArr = array( "unconf" => "В ожидании", "paid" => "Оплачен", "canceld" => "Отменен", ); $ParamsFR = array(); $MyModule->AddSelectList("Statuses", $CurrArr, $ParamsFR); $SearchData = array( "products" => array("title", "category", array("item"=>"price", "type"=>"range")) ); $MyModule->SetSearchParams("products", $SearchData); // multifields load $MRecs = $MyModule->GetRecords("multifields"); $FArr = array(); foreach($MRecs as $recm) { $FArr[''.$recm['ftitle'].''][] = $recm; } foreach($FArr as $sey=>$deer) { $FString = ""; foreach($deer as $jalue) { $FString .= "mfield_".$sey."_".$jalue['type']."_".$jalue['title']."|++|".$jalue['type']."|++||::|"; } $MyModule->MultiFields[''.$sey.''] = $FString; } global $metatags; // When we have our pages set, lets make disatcher function to process them all function Dispatchershop() //gets parameters and invokes necessary function { global $MyModule, $MyPlugin, $metatags; $op = ""; if(isset($_REQUEST['op'])) { $op = $_REQUEST['op']; } switch ($op) { case "shop": $MyModule->LoadPage("ShowAll"); break; case "additem": $MyModule->AddItem($_GET['class']); break; case "config": $MyModule->LoadPage("config"); break; case "admlist": $MyModule->LoadPage("admlist"); break; case "showlist": $MyModule->ShowItemList($_GET['class']); break; case "itemshow": $MyModule->ShowItem($_GET['class']); break; case "publish": $MyModule->PublishItem($_GET['class'], "1"); break; case "itembuy": $MyPlugin->AddToCart(); break; case "clearup": $MyPlugin->ClearCart(); break; case "caro": $MyModule->ShowItemList($_GET['class'], array(), array(""=>"")); break; case "checkout": if(!isset($_POST['sent'])) { $MyModule->LoadPage("checkout"); } else { $MyPlugin->CheckOutSend(); } break; case "deleteitem": $MyPlugin->RemoveFromCart(); break; case "unpublish": $MyModule->PublishItem($_GET['class'], "0"); break; case "edit": $MyModule->EditItem($_GET['class']); break; case "delete": $MyModule->DeleteItem($_GET['class']); break; case "search": $MyModule->Search($_GET['class']); break; case "itemup": $MyPlugin->PutItemUp(); $MyModule->LoadPage("ShowAll"); break; case "itemurgent": $MyPlugin->MakeItemUrgent(); $MyModule->LoadPage("ShowAll"); break; case "itemvip": $MyPlugin->MakeItemVip(); $MyModule->LoadPage("ShowAll"); break; case "itemunurgent": $MyPlugin->MakeItemUrgent(false); $MyModule->LoadPage("ShowAll"); break; case "itemunvip": $MyPlugin->MakeItemVip(false); $MyModule->LoadPage("ShowAll"); break; default: { $MyModule->LoadPage("ShowAll"); break; } } } if(strstr($_SERVER['REQUEST_URI'], "do=shop")||strstr($_SERVER['REQUEST_URI'], "/shop/")||strstr($_SERVER['REQUEST_URI']."::x", "/shop::x")) { Dispatchershop(); } $MyPlugin->ShowCart(); $MyPlugin->LoadLatest(); $MyPlugin->ShowFrontItems(); $MyPlugin->LoadCategories(); class shopPlugin { // empty constructor function var $VarMod = null; function shopPlugin($modobj) { $this->VarMod = $modobj; } function GetAddLink() { global $is_logged; if($this->VarMod->MyConfig['allow_add']['value']) { if($this->VarMod->UserCheckRights($this->VarMod->MyConfig['min_add_group']['value'])) { return "VarMod->GetLink("products", "additem")."\">Добавить объявление"; } else { $Restr = "Добавить объявление (вам не хватает прав)"; if(!$is_logged) { $Restr .= " Регистрация"; } return $Restr; } } } function LoadLatest() { global $tpl; // Make item list $MyList = ""; $MyList = $this->VarMod->ShowList("products", array("tpl"=>"shop/blockitem.tpl", "tpllist"=>"shop/latest_list.tpl", "order"=>array("date"=>"DESC"), "pager"=>"0", "limit"=>$this->VarMod->MyConfig['block_limitpage']['value'])); $tpl->load_template('shop/latest.tpl'); $tpl->set("{items}", $MyList); $tpl->compile('shop_latest'); $tpl->clear(); } function ShowFrontItems() { global $tpl; if($_SERVER['REQUEST_URI']=="/index.php"||$_SERVER['REQUEST_URI']=="/"||$_SERVER['REQUEST_URI']=="") { $ItemsList = ""; $ItemsList = $this->VarMod->ShowList("products", array("tpl"=>"shop/mainitem.tpl", "tpllist"=>"shop/mainitemlist.tpl", "where"=>array("mainpub"=>"1"), "order"=>array("date"=>"DESC"), "pager"=>"0", "limit"=>$this->VarMod->MyConfig['main_limitpage']['value'])); $tpl->load_template('shop/frontpage.tpl'); $tpl->set("{list}", $ItemsList); } $tpl->compile('frontshop'); $tpl->clear(); } function LoadCategories() { global $tpl; if($_SERVER['REQUEST_URI']=="/index.php"||$_SERVER['REQUEST_URI']=="/"||$_SERVER['REQUEST_URI']=="") { // Make item list $MyList = ""; $MyList = $this->VarMod->ShowList("categories", array("tpl"=>"shop/catitem.tpl", "tpllist"=>"shop/cat_list.tpl", "order"=>array("title"=>"ASC"), "pager"=>"0", "limit"=>"9999")); $tpl->load_template('shop/allcats.tpl'); $tpl->set("{items}", $MyList); } $tpl->compile('shop_cats'); $tpl->clear(); } function GenerateArt() { } function translitIt($str) { $tr = array( "А"=>"a","Б"=>"b","В"=>"v","Г"=>"g", "Д"=>"d","Е"=>"e","Ж"=>"j","З"=>"z","И"=>"i", "Й"=>"y","К"=>"k","Л"=>"l","М"=>"m","Н"=>"n", "О"=>"o","П"=>"p","Р"=>"r","С"=>"s","Т"=>"t", "У"=>"u","Ф"=>"f","Х"=>"h","Ц"=>"ts","Ч"=>"ch", "Ш"=>"sh","Щ"=>"sch","Ъ"=>"","Ы"=>"yi","Ь"=>"", "Э"=>"e","Ю"=>"yu","Я"=>"ya","а"=>"a","б"=>"b", "в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j", "з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l", "м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r", "с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h", "ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y", "ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya", " "=> "_", "."=> "" ); return strtr($str,$tr); } function MakeItemList($Params) { //$url = $this->VarMod->GetLink("products", "itemshow", array("id"=>$Params['row']['id'])); $url = urldecode($this->VarMod->GetLink("products", "itemshow", array("id"=>$Params['row']['id']))); $url = $this->translitIt($url); //$url = str_replace("_shop_products_itemshow_","product/itemshow/",$url); $ItemLink = ""; //echo str_replace("<","",$url); $BuyLink = "VarMod->GetLink("products", "itembuy", array("id"=>$Params['row']['id']))."\" class=\"prod_buynow\">"; $CatLink = "VarMod->GetLink("main", "category", array("cid"=>$Params['row']['category']))."\" class=\"prod_buynow\">"; $FormStr = '
$Params['row']['id'])).'">
'; $FCatLink = "
VarMod->GetLink("main", "category", array("cid"=>$Params['row']['id']))."\">"; $Params['text'] = str_replace("{link}", $ItemLink, $Params['text']); $Params['text'] = str_replace("{blink}", $BuyLink, $Params['text']); $Params['text'] = str_replace("{buybut}", $FormStr, $Params['text']); $Params['text'] = str_replace("{/blink}", "", $Params['text']); $Params['text'] = str_replace("{catlink}", $CatLink, $Params['text']); $Params['text'] = str_replace("{/catlink}", "", $Params['text']); $Params['text'] = str_replace("{fcatlink}", $FCatLink, $Params['text']); $Params['text'] = str_replace("{/fcatlink}", "", $Params['text']); return $Params['text']; } function ShowFull($ItemDataArr) { global $metatags, $member_id; if($_GET['class']=="carts") { // Check if current cart belongs to current user $MyCartId = ""; if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } } if($MyCartId=="") {} else { if($MyCartId==$ItemDataArr['user_id']) { $metatags['title'] = "Ваша корзина :: ".$this->VarMod->MyConfig['title']['value']; // Now make items list $Products = $this->VarMod->GetRecords("products"); $RpRod = array(); foreach($Products as $item) { $RpRod[$item['id']] = $item; } $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($ItemDataArr['contents'], true)); $ItemDataArr['items'] = ""; if(count($CartContents)>0) { foreach($CartContents as $key=>$utin) { // ge product data $MyProd = $RpRod[$utin['prod']]; $Qty = $utin['qty']; $FullPrice = (float)$MyProd['price']*(int)$Qty; $FullPrice = $this->VarMod->GetTrueValue($FullPrice, $this->VarMod->MyClasses['products']['db']['price']); $BuyLink = $this->VarMod->GetLink("products", "itembuy", array("id"=>$MyProd['id'])); $ItemDataArr['items'] .= "".$this->VarMod->GetTrueValue($MyProd['category'], $this->VarMod->MyClasses['products']['db']['category'])." - ".$MyProd['title']." ".$Qty."x - ".$FullPrice." руб - "."
VarMod->GetLink("carts", "deleteitem", array("id"=>$ItemDataArr['id'], "did"=>$key))."\">Удалить"."
"; } } if(count($CartContents)>0) { $ItemDataArr['formlnk'] = '$ItemDataArr['id'])).'">'; $ItemDataArr['clearlnk'] = '$ItemDataArr['id'])).'">'; $ItemDataArr['/a'] = ""; } else { $ItemDataArr['items'] = "Пока нет товаров в корзине"; $ItemDataArr['formlnk'] = ''; $ItemDataArr['clearlnk'] = ''; $ItemDataArr['/a'] = ""; } } else { header("location: ".$this->VarMod->GetLinkTag("main")); } } } else { if($ItemDataArr["maindata"]["mfield_maindata_varchar_title"]!="") $metatags['title'] =$ItemDataArr["maindata"]["mfield_maindata_varchar_title"]; else $metatags['title'] = $ItemDataArr['title']." :: ".$ItemDataArr['category']." :: ".$this->VarMod->MyConfig['title']['value']."asdasdas"; $ItemLink = "VarMod->GetLink("products", "itemshow", array("id"=>$ItemDataArr['id']))."\" class=\"prod_more\">"; $BuyLink = "VarMod->GetLink("products", "itembuy", array("id"=>$ItemDataArr['id']))."\" class=\"prod_buynow\">"; $ItemDataArr['link'] = $ItemLink; $ItemDataArr['catlink'] = "VarMod->GetLink("main", "category", array("cid"=>$ItemDataArr['category_raw']))."\" class=\"prod_more\">"; $ItemDataArr['/catlink'] = ""; $FormStr = '
$Params['row']['id'])).'">
'; $ItemDataArr['buybut'] = $FormStr; $ItemDataArr['blink'] = $BuyLink; $ItemDataArr['/blink'] = ""; $metatags['description'] = strip_tags($ItemDataArr['meta_desc']); $metatags['keywords'] = strip_tags($ItemDataArr['meta_keys']); } return $ItemDataArr; } function SrochnoFunction($TplText, $rowData) { // Срочно! if($this->VarMod->UserCheckRights('admin')) { $TplText = str_replace("{plg_upped}", " | Поднять", $TplText); } else { $TplText = str_replace("{plg_upped}", "", $TplText); } if($rowData['urgent']=="1") { $TplText = str_replace("{plg_srochno}", "СРОЧНО", $TplText); } else { $TplText = str_replace("{plg_srochno}", "", $TplText); } if($rowData['vip']=="1") { $TplText = str_replace("{plg_vipcl}", "vipstyle", $TplText); } else { $TplText = str_replace("{plg_vipcl}", "", $TplText); } return $TplText; } function PutItemUp() { // get item id if(isset($_REQUEST['id'])&&($_REQUEST['id']!="")) { // check user rights if($this->VarMod->UserCheckRights("admin")) { // up the item up! $NewDate = date("Y-m-d G:i:s"); $this->VarMod->EditRecord("products", $_REQUEST['id'], array("dateupd"=>$NewDate)); } } } function MakeItemUrgent($set=true) { // get item id if(isset($_REQUEST['id'])&&($_REQUEST['id']!="")) { // check user rights if($this->VarMod->UserCheckRights("admin")) { // up the item up! if($set==true) { $NewDate = "1"; } else { $NewDate = "0"; } $this->VarMod->EditRecord("products", $_REQUEST['id'], array("urgent"=>$NewDate)); } } } function MakeItemVip($set=true) { // get item id if(isset($_REQUEST['id'])&&($_REQUEST['id']!="")) { // check user rights if($this->VarMod->UserCheckRights("admin")) { // up the item up! if($set==true) { $NewDate = "1"; } else { $NewDate = "0"; } $this->VarMod->EditRecord("products", $_REQUEST['id'], array("vip"=>$NewDate)); } } } function EditItem($ItemDataArr) { //$ItemDataArr['form'] = '
'; return $ItemDataArr; } function AddItem($ItemDataArr) { //$ItemDataArr['form'] = ''; return $ItemDataArr; } function AddComment($Params) { // Add comment plugin :) just get it and send notifications to subscribers } function AddToCart() { // Ge item ID and add it to cart item, if exists for user, if not create it first global $member_id; if($this->VarMod->MyConfig['onlyauth']['value']=="1") { if(isset($member_id['user_id'])&&$member_id['user_id']!="") { } else { header("location: ".$_SERVER['HTTP_REFERER']); exit; } } $CountIT = 1; if(isset($_POST['prod_qty'])&&$_POST['prod_qty']!="") { $CountIT = $_POST['prod_qty']; } if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } else { $value = $this->wtl_GenerateId(); setcookie("elvic_userid", $value, time()+3600*24, "/", '.'.$_SERVER['SERVER_NAME']); /* expire in 24 hour */ $MyCartId = $value; } } // we have our cart ID try to get cart data $MyCart = $this->VarMod->GetRecords("carts", array("user_id"=>$MyCartId)); if(isset($MyCart)&&count($MyCart)>0) { $MyCart = $MyCart[0]; // as we have one lets edit it $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($MyCart['contents'], true)); // for($u=0; $u<$CountIT; $u++) // { $existTrue = false; foreach($CartContents as $fey=>$citem) { if($citem['prod']==$_GET['id']) { if(!isset($_POST['newqty'])||$_POST['newqty']=="") { $CartContents[$fey]['qty'] = (int)$citem['qty']+(int)$CountIT; } else { $CartContents[$fey]['qty'] = $_POST['newqty']; } $existTrue = true; } } if($existTrue==false) { $CartContents[] = array("prod"=>$_GET['id'], "qty"=>$CountIT); } // } $CartContentsStr = json_encode($this->wtl_convert("cp1251", "utf-8", $CartContents)); $this->VarMod->EditRecord("carts", $MyCart['id'], array("contents"=>$CartContentsStr)); $CurCat = $MyCart['id']; } else { // we need to create the new cart $CartContents = array(); $CartContents[] = array("prod"=>$_GET['id'], "qty"=>$CountIT); /* for($u=0; $u<$CountIT; $u++) { $CartContents[] = array("prod"=>$_GET['id']); }*/ $CartContentsStr = json_encode($this->wtl_convert("cp1251", "utf-8", $CartContents)); $data = array("user_id"=>$MyCartId, "date"=>date("Y-m-d G:i:s"), "contents"=>$CartContentsStr); $CurCat = $this->VarMod->AddRecord("carts", $data); } header("location: ".$_SERVER['HTTP_REFERER']); } function RemoveFromCart() { global $member_id; $MyCartId = ""; if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } } if($MyCartId=="") { header("location: ".$this->VarMod->GetLinkTag("main")); } else { $ItemDataArr = $this->VarMod->GetRecord("carts", $_GET['id']); $ItemDataArr = $ItemDataArr[0]; if($MyCartId==$ItemDataArr['user_id']) { // remove selected item $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($ItemDataArr['contents'], true)); $CartContentsNew = array(); foreach($CartContents as $key=>$item) { if($key!=$_GET['did']) { $CartContentsNew[] = $item; } } $CartContentsStr = json_encode($this->wtl_convert("cp1251", "utf-8", $CartContentsNew)); $this->VarMod->EditRecord("carts", $_GET['id'], array("contents"=>$CartContentsStr)); header("location: ".$this->VarMod->GetLink("carts", "itemshow", array("id"=>$_GET['id']))); } else { header("location: ".$this->VarMod->GetLinkTag("main")); } } } function ClearCart($redir=true) { global $member_id; if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } } if($MyCartId=="") { header("location: ".$this->VarMod->GetLinkTag("main")); } else { $ItemDataArr = $this->VarMod->GetRecord("carts", $_GET['id']); $ItemDataArr = $ItemDataArr[0]; $ListOfProducts = $this->VarMod->GetRecords("products"); if($MyCartId==$ItemDataArr['user_id']) { $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($ItemDataArr['contents'], true)); $this->VarMod->EditRecord("carts", $_GET['id'], array("contents"=>"")); if($redir==true) { header("location: ".$this->VarMod->GetLink("carts", "itemshow", array("id"=>$_GET['id']))); } } else { if($redir==true) { header("location: ".$this->VarMod->GetLinkTag("main")); } } } } function CheckOutSend() { global $config; // Get POST values form a message get whom to send and send it if($_POST['fio']==""||$_POST['phone']==""||$_POST['email']=="") { $MesData = "Поля Email, ФИО и Телефон обязательны для заполнения
Назад"; return $this->VarMod->MakeTemplate($this->VarMod->templates['message'], array("msg"=>$MesData), "content"); } $FIO = $_POST['fio']; $CmpAny = $_POST['company']; $StrEmail = $_POST['email']; $StrPhone = $_POST['phone']; $StrAdres = $_POST['adres']; $StrComments = $_POST['comments']; $ip = $_SERVER['REMOTE_ADDR']; $date = date("Y.m.d G:i:s"); $_GET['id'] = $_POST['currentid']; $ListOfItems = $this->GetCartItemList(); $GateWay = ""; switch($_POST['gateway']) { case "robox": { $GateWay = "RoboxChange"; break; } case "webmoney": { $GateWay = "WebMoney"; break; } default: { $GateWay = "Заказ"; break; } } // get full sum ----------------------------------------------- $Green = $this->VarMod->GetRecords("carts", array("id"=>$_POST['currentid'])); $Green = $Green[0]; $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($Green['contents'], true)); $QtyStr = count($CartContents); // Count total summ $MyObiavas = $this->VarMod->GetRecords("products"); $MyObiavasNew = array(); foreach($MyObiavas as $item) { $MyObiavasNew[$item['id']] = $item; } $Sum = 0; if(count($CartContents)>0) { foreach($CartContents as $cont) { $Sum = (float)$Sum+(float)$MyObiavasNew[$cont['prod']]['price']*$cont['qty']; } } $MessArr = array( "cart_id" => $_POST['currentid'], "shop_title" => $this->VarMod->MyConfig['title']['value'], "fio" => $FIO, "company" => $CmpAny, "email" => $StrEmail, "telephone" => $StrPhone, "address" => $StrAdres, "addinfo" => $StrComments, "ip" => $ip, "date" => $date, "items" => $ListOfItems, "gateway" => $GateWay, "totalsum" => $Sum ); $OrderNum = $this->AddNewOrder($MessArr); $MessArr['ordernum'] = $OrderNum; $this->SendMessage($this->VarMod->MyConfig['site_mail']['value'], $StrEmail, "Новый заказ в ".$this->VarMod->MyConfig['title']['value'], $MessArr, "mailadmin"); $this->SendMessage($StrEmail, $this->VarMod->MyConfig['site_mail']['value'], "Ваш заказ в ".$this->VarMod->MyConfig['title']['value'], $MessArr, "mailuser"); $this->ClearCart(false); if($_POST['gateway']=="webmoney") { $this->WebMoneyForm($MessArr); } else if($_POST['gateway']=="robox") { $this->RoboxForm($MessArr); } else { // now show success page $this->VarMod->MakeTemplate($this->VarMod->templates['ordersuccess'], $MessArr, "content"); } } function WebMoneyForm($MessArr) { global $tpl; $total_sum_to_pay = $MessArr['totalsum']; $shop_uri = $this->VarMod->MyConfig['wbm_cursite']['value']; $url = "https://merchant.webmoney.ru/lmi/payment.asp"; $payee_purse = $this->VarMod->MyConfig['wbm_purse']['value']; $payment_description= $MessArr['ordernum']." - ".$MessArr['email']." - ".$MessArr['fio']; $post_variables = Array( "LMI_PAYMENT_AMOUNT" => round( $total_sum_to_pay, 2), "LMI_PAYMENT_DESC" => $payment_description, "LMI_PAYMENT_NO" => $MessArr['ordernum'], "LMI_PAYEE_PURSE" => $payee_purse, "LMI_SIM_MODE" => "0", "LMI_RESULT_URL" => "http://".$_SERVER['SERVER_NAME']."/shop/", "LMI_SUCCESS_URL" => "http://".$_SERVER['SERVER_NAME']."/shop/", "LMI_SUCCESS_METHOD" => "2", "LMI_FAIL_URL" => "http://".$_SERVER['SERVER_NAME']."/shop/", "LMI_FAIL_METHOD" => "2" ); $FormStr = ""; $FormStr .= '

Активируйте WebMoney Keeper перед переходом к странице платежа.

'; // Please remember to activate WebMoney Keeper prior to processing next step $FormStr .= ''; $FormStr .= ''; foreach( $post_variables as $name => $value ) { $FormStr .= ''; } $FormStr .= '
'; $this->VarMod->MakeTemplate($this->VarMod->templates['message'], array("msg"=>$FormStr), "content"); } function RoboxForm($MessArr) { global $tpl; $order_number = $MessArr['ordernum']; // your registration data $mrh_login = $this->VarMod->MyConfig['rbx_login']['value']; // your login here $mrh_pass1 = $this->VarMod->MyConfig['rbx_pass']['value']; ; // merchant pass1 here // order properties $inv_id = $order_number; // shop's invoice number // (unique for shop's lifetime) $inv_desc = ""; // invoice desc $out_summ = $MessArr['totalsum']; // invoice summ // build CRC value $crc = md5("$mrh_login:$out_summ:$inv_id:$mrh_pass1"); // build URL $url = "https://merchant.roboxchange.com/Index.aspx?MrchLogin=$mrh_login&"."OutSum=$out_summ&InvId=$inv_id&Desc=$inv_desc&SignatureValue=$crc"; header("location: ".$url); } function GetCartItemList() { global $member_id; if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } } if($MyCartId=="") { header("location: ".$this->VarMod->GetLinkTag("main")); } else { $ItemDataArr = $this->VarMod->GetRecord("carts", $_GET['id']); $ItemDataArr = $ItemDataArr[0]; $Products = $this->VarMod->GetRecords("products"); $RpRod = array(); foreach($Products as $item) { $RpRod[$item['id']] = $item; } if($MyCartId==$ItemDataArr['user_id']) { $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($ItemDataArr['contents'], true)); $ItemDataArr['items'] = ""; if(count($CartContents)>0) { $cnt = 1; foreach($CartContents as $key=>$utin) { // ge product data $MyProd = $RpRod[$utin['prod']]; $Qty = $utin['qty']; $FullPrice = (float)$MyProd['price']*(int)$Qty; $FullPrice = $this->VarMod->GetTrueValue($FullPrice, $this->VarMod->MyClasses['products']['db']['price']); $BaseLink = "http://".$_SERVER['SERVER_NAME']; $ItemDataArr['items'] .= "".$cnt.". VarMod->GetLink("products", "itemshow", array("id"=>$utin['prod']))."\">".$this->VarMod->GetTrueValue($MyProd['category'], $this->VarMod->MyClasses['products']['db']['category'])." - ".$MyProd['title']." ".$Qty."x - ".$FullPrice." руб.
"; $cnt++; } } return $ItemDataArr['items']; } else { header("location: ".$this->VarMod->GetLinkTag("main")); } } } function ShowCart() { $Content = ''; global $member_id, $tpl; $MyCartId = ""; $Green = ""; if(isset($member_id['user_id'])&&$member_id['user_id']!="") { $MyCartId = $member_id['user_id']; } else { // look of we have a cookie if(isset($_COOKIE['elvic_userid'])) { $MyCartId = $_COOKIE['elvic_userid']; } } // get cart if exists if($MyCartId!="") { $Green = $this->VarMod->GetRecords("carts", array("user_id"=>$MyCartId)); $Green = $Green[0]; $CartContents = $this->wtl_convert("UTF-8", "cp1251", json_decode($Green['contents'], true)); $QtyStr = 0;//count($CartContents); // Count total summ $MyObiavas = $this->VarMod->GetRecords("products"); $MyObiavasNew = array(); foreach($MyObiavas as $item) { $MyObiavasNew[$item['id']] = $item; } $Sum = 0; if(count($CartContents)>0) { foreach($CartContents as $cont) { $Sum = (float)$Sum+(float)$MyObiavasNew[$cont['prod']]['price']*$cont['qty']; $QtyStr = (int)$QtyStr+(int)$cont['qty']; } } $MoneyStr = $Sum." руб."; } else { $QtyStr = ""; $MoneyStr = ""; } if($MoneyStr!=""&&$QtyStr!="") { $ViewCartLnk = $this->VarMod->GetLink("carts", "itemshow", array("id"=>$Green['id'])); $ClearCartLnk = $this->VarMod->GetLink("carts", "clearup", array("id"=>$Green['id'])); $ViewOrderLnk = $this->VarMod->GetLink("carts", "checkout", array("id"=>$Green['id'])); // Make item list $tpl->load_template('shop/mycart.tpl'); $tpl->set("{view_link}", $ViewCartLnk); $tpl->set("{order_link}", $ViewOrderLnk); $tpl->set("{clear_link}", $ClearCartLnk); $tpl->set("{qty}", $QtyStr); $tpl->set("{money}", $MoneyStr); $tpl->compile('mycart'); $tpl->clear(); } else { $tpl->copy_template = "
Корзина пуста
"; $tpl->compile('mycart'); $tpl->clear(); } } function wtl_convert($from, $to, $var) { if (is_array($var)) { $new = array(); foreach ($var as $key => $val) { $new[$this->wtl_convert($from, $to, $key)] = $this->wtl_convert($from, $to, $val); } $var = $new; } else if (is_string($var)) { $var = iconv($from, $to, $var); } return $var; } function wtl_GenerateId() { return $this->wtl_rand_chars("abcdefghijklmnopqrstyzx1234567890", 10, TRUE); } function wtl_rand_chars($c, $l, $u = FALSE) { if (!$u) for ($s = '', $i = 0, $z = strlen($c)-1; $i < $l; $x = rand(0,$z), $s .= $c{$x}, $i++); else for ($i = 0, $z = strlen($c)-1, $s = $c{rand(0,$z)}, $i = 1; $i != $l; $x = rand(0,$z), $s .= $c{$x}, $s = ($s{$i} == $s{$i-1} ? substr($s,0,-1) : $s), $i=strlen($s)); return $s; } function ShowCats() { global $metatags; if(isset($_GET['cid'])) { $where = array("parent"=>$_GET['cid']); // Current cat info $CurCat = $this->VarMod->GetRecord("categories", $_GET['cid']); $CurCat = $CurCat[0]; if($CurCat['title']!="") { $metatags['title'] = str_replace("\\",'',$CurCat['title']); } } else { $metatags['title'] = $this->VarMod->MyConfig['title']['value']; $where = array("parent"=>"0"); } $RetStr = ""; $Items = $this->VarMod->GetRecords("categories", $where, array(), ""); foreach($Items as $item) { $SubItems = $this->VarMod->GetRecords("categories", array("parent"=>$item['id']), array(), ""); $TotAAds = $this->VarMod->GetCount("products", array("category"=>$item['id'])); $TempStr = ""; foreach($SubItems as $SubItem) { // count elemebts foreach of subcats //print_r($SubItem); $TotAds = $this->VarMod->GetCount("products", array("category"=>$SubItem['id'])); $TempStr .= " - VarMod->GetLink("main", "category", array("cid"=>$SubItem['id']))."\">".$SubItem['title']." (".$TotAds.")
"; if($SubItem["description"]!="") $TempStr .="".$SubItem["description"]."
"; $TotAAds = $TotAAds + $TotAds; } $RetStr .= "VarMod->GetLink("main", "category", array("cid"=>$item['id']))."\">".$item['title']." (".$TotAAds.")
"; $RetStr .= $TempStr; } if($RetStr=="") { $RetStr = "В данной категории нет подкатегорий"; } return $RetStr; } function GetCategoriesRecursive($curID, $finarr) { $AlItems = $this->VarMod->GetRecords("categories", array("parent"=>$curID)); if(count($AlItems)>0) { foreach($AlItems as $freak) { $tmparr = array(); $finarr[] = $freak['id']; $tmparr = $this->GetCategoriesRecursive($freak['id'], $tmparr); $finarr = array_merge($finarr, $tmparr); unset($tmparr); } } unset($AlItems); return $finarr; } function ShowItems() { if(!isset($_GET['cid'])) { $_GET['cid'] = ""; $where = array(); } else { $where["category"][] = $_GET['cid']; // Current cat info // ge subcat ids $PrId = $_GET['cid']; $AllCats = $this->GetCategoriesRecursive($PrId, $where["category"]); $where["category"] = array_merge($where["category"], $AllCats); unset($AllCats); } return $this->VarMod->ShowList("products", array("tpl"=>"shop/mainitem.tpl", "tpllist"=>"shop/mainitemlist.tpl", "order"=>array("date"=>"DESC"), "where"=>$where)); } function GetCurrentCat() { if(isset($_GET['cid'])) { $where = array("parent_id"=>$_GET['cid']); // Current cat info $CurCat = $this->VarMod->GetRecord("categories", $_GET['cid']); $CurCat = $CurCat[0]; return $CurCat['title']; } else { return ""; } } function ShowBreadCrumbs() { if(isset($_GET['cid'])&&($_GET['cid']!="")) { $PathArr = array(); $CurCat = $this->VarMod->GetRecord("categories", $_GET['cid']); $CurCat = $CurCat[0]; $PathArr[] = array("cid"=>$CurCat['id'], "title"=>$CurCat['title']); // Get parent $ParCat = $CurCat['parent']; $i=0; if($ParCat!="0") { do { if($i>100) { break; } $NextCat = $this->VarMod->GetRecord("categories", $ParCat); $NextCat = $NextCat[0]; $ParCat = $NextCat['parent']; $PathArr[] = array("cid"=>$NextCat['id'], "title"=>$NextCat['title']); $i++; } while($ParCat!="0"); } } else { $PathArr = array(); } $PathArr = array_reverse($PathArr, true); $PathStr = "Главная → "; $cnt = 1; if(count($PathArr)>0) { $PathStr .= "".$this->VarMod->MyConfig['title']['value'].""; foreach($PathArr as $item) { if($cnt>=count($PathArr)) { $PathStr .= " → ".$item['title'].""; } else { $PathStr .= " → VarMod->GetLink("main", "category", array("cid"=>$item['cid']))."\">".$item['title'].""; } $cnt++; } } else { $PathStr .= $this->VarMod->MyConfig['title']['value']; } return $PathStr; } function SendMessage($SendTo, $SendFrom, $SubkectRR, $MessArr, $tplname) { global $config; $Varikus = file_get_contents("templates/".$config['skin']."/".$this->VarMod->templates[''.$tplname.'']); foreach($MessArr as $key=>$value) { $Varikus = str_replace("{".$key."}", $value, $Varikus); } include_once ENGINE_DIR.'/classes/mail.class.php'; $mail = new dle_mail ($config, true); $mail->from = $SendFrom; $mail->send ($SendTo, $SubkectRR, $Varikus); } function AddNewOrder($OrderData) { $OrderID = $this->GenerateOrderID(); $ForAdd = array( "cart_id" => $OrderData['cart_id'], "gateway" => $OrderData['gateway'], "status" => "unconf", "fio" => $OrderData['fio'], "company" => $OrderData['company'], "email" => $OrderData['email'], "telephone" => $OrderData['telephone'], "address" => $OrderData['address'], "addinfo" => $OrderData['addinfo'], "ip" => $OrderData['ip'], "date" => $OrderData['date'], "items" => $OrderData['items'], "totalsum" => $OrderData['totalsum'], "ordernum" =>$OrderID ); $this->VarMod->AddRecord("orders", $ForAdd); return $OrderID; } function GenerateOrderID() { return $this->wtl_rand_chars("1234567890", 6, TRUE); } } ?>