Commit 33349e3d6b5eafd42c6eeb71d854cc79ced1ffc3

Authored by andryeyev
1 parent c9ea832e

+ callback

.idea/vcs.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="VcsDirectoryMappings">
  4 + <mapping directory="$PROJECT_DIR$" vcs="Git" />
  5 + </component>
  6 +</project>
0 \ No newline at end of file 7 \ No newline at end of file
@@ -52,6 +52,7 @@ $objFon = $setup-&gt;setupClass (&#39;Fon&#39;); @@ -52,6 +52,7 @@ $objFon = $setup-&gt;setupClass (&#39;Fon&#39;);
52 $objVideo2 = $setup->setupClass ('Video2'); 52 $objVideo2 = $setup->setupClass ('Video2');
53 $objSend = $setup->setupClass ('Send'); 53 $objSend = $setup->setupClass ('Send');
54 $objExtra = $setup->setupClass ('Extra'); 54 $objExtra = $setup->setupClass ('Extra');
  55 +$objCallback = $setup->setupClass ('Callback');
55 56
56 if (isset ($_POST['order_id']) && $_POST['order_id'] > 0) 57 if (isset ($_POST['order_id']) && $_POST['order_id'] > 0)
57 { 58 {
ajax/callback.php 0 → 100644
  1 +<?php
  2 +
  3 +// Подключение
  4 +include_once ($_SERVER['DOCUMENT_ROOT'] . "/libs/setup.php");
  5 +
  6 +$setup = new setup();
  7 +$objCallback = $setup->setupClass ('Callback');
  8 +$objCallback->init();
  9 +
  10 +switch ($_REQUEST['jaction'])
  11 +{
  12 + case 'getForm':
  13 +
  14 + ob_start();
  15 +
  16 + echo $objCallback->htmlForm ();
  17 +
  18 + echo json_encode (array (
  19 + 'html' => ob_get_clean()
  20 + ));
  21 +
  22 + break;
  23 +
  24 + case 'save':
  25 +
  26 + $objCallback->add($_POST);
  27 +
  28 + echo json_encode(array (
  29 + 'code' => 0,
  30 + 'html' => $objCallback->getSuccessMessage(),
  31 + ));
  32 +
  33 + break;
  34 +
  35 + case 'getOne':
  36 +
  37 + $callback = $objCallback->getOne($_POST['callback_id']);
  38 +
  39 + echo json_encode(array (
  40 + 'code' => 0,
  41 + 'text' => iconv ('windows-1251', 'utf-8', $callback['text']),
  42 + ));
  43 +
  44 + break;
  45 +
  46 + case 'setStatus':
  47 +
  48 + // завершен?
  49 + $callback = $objCallback->getOne($_POST['callback_id']);
  50 + if ($callback['callback_status_id'] != Callback::$DONE)
  51 + {
  52 + // тот же менеджер?
  53 + if ($callback['manager_id'] ==0 || $callback['manager_id'] == $_SESSION['admin']['id'])
  54 + {
  55 + $objCallback->setStatus($callback['callback_id'], $_POST['callback_status_id']);
  56 +
  57 + // ответ
  58 + echo json_encode(array (
  59 + 'code' => 0,
  60 + 'button' => iconv ('windows-1251', 'utf-8', $objCallback->buttonById($_POST['callback_id'])),
  61 + 'manager' => iconv ('windows-1251', 'utf-8', $_SESSION['admin']['name']),
  62 + 'date_edit' => date ('Y-m-d H:i:s'),
  63 + ));
  64 + }
  65 + else
  66 + {
  67 + // ответ
  68 + echo json_encode(array (
  69 + 'code' => 1,
  70 + 'html' => iconv ('utf-8', 'utf-8', $objCallback->getProcessingMessage($callback)),
  71 + ));
  72 + }
  73 + }
  74 + else
  75 + {
  76 + // ответ
  77 + echo json_encode(array (
  78 + 'code' => 1,
  79 + 'html' => iconv ('utf-8', 'utf-8', $objCallback->getDoneMessage($callback)),
  80 + ));
  81 + }
  82 + return;
  83 +}
1 <?php 1 <?php
2 2
3 - // íàñòðîéêè ñåññèé  
4 - ini_set("session.cookie_lifetime",0);  
5 - ini_set("session.auto_start ",1);  
6 - ini_set("session.use_only_cookies",1);  
7 - ini_set("session.use_trans_sid",0);  
8 - ini_set("session.save_path", $_SERVER['DOCUMENT_ROOT'].'/sessions');  
9 - ini_set("error_reporting",0);  
10 - 3 + // íàñòðîéêè ñåññèé
  4 + ini_set ("session.cookie_lifetime", 0);
  5 + ini_set ("session.auto_start ", 1);
  6 + ini_set ("session.use_only_cookies", 1);
  7 + ini_set ("session.use_trans_sid", 0);
  8 + ini_set ("session.save_path", $_SERVER['DOCUMENT_ROOT'] . '/sessions');
  9 + ini_set ("error_reporting", 0);
  10 +
11 //ini_set("error_reporting", E_ALL); 11 //ini_set("error_reporting", E_ALL);
12 //ini_set('display_errors',1); 12 //ini_set('display_errors',1);
13 //ini_set('html_errors', 1); 13 //ini_set('html_errors', 1);
14 //ini_set("log_errors", 1); 14 //ini_set("log_errors", 1);
15 - //ini_set("error_log", $_SERVER['DOCUMENT_ROOT']."/errors/error.log");  
16 - //ini_set("log_errors_max_len", 1024); 15 + //ini_set("error_log", $_SERVER['DOCUMENT_ROOT']."/errors/error.log");
  16 + //ini_set("log_errors_max_len", 1024);
  17 +
  18 + session_start ();
  19 +
  20 + define ("URL", "http://{$_SERVER['HTTP_HOST']}/");
  21 + define ("WEB_EMAIL", 'pavel@up-trading.kiev.ua');
  22 + define ("DB_HOST", 'localhost');
  23 + //define("DB_USER",'extremstyle');
  24 + //define("DB_PSW",'Ry4PWmM6GCp3UCTf');
17 25
18 - session_start(); 26 + define ("DB_USER", 'root');
  27 + define ("DB_PSW", '');
  28 + define ("DB_BASE", 'extremstyle');
  29 + define ("ADMIN_USER", 'admin');
  30 + define ("ADMIN_PSW", '123');
19 31
20 - define("URL","http://{$_SERVER['HTTP_HOST']}/");  
21 - define("WEB_EMAIL",'pavel@up-trading.kiev.ua');  
22 - define("DB_HOST",'localhost');  
23 - //define("DB_USER",'extremstyle');  
24 - //define("DB_PSW",'Ry4PWmM6GCp3UCTf');  
25 - define("DB_USER",'root');  
26 - define("DB_PSW",'');  
27 - define("DB_BASE",'extremstyle');  
28 - define("ADMIN_USER",'admin');  
29 - define("ADMIN_PSW",'123'); 32 + mysql_connect (DB_HOST, DB_USER, DB_PSW) or die("Could not connect : " . mysql_error ());
  33 + mysql_select_db (DB_BASE) or die("Could not select database");
  34 + mysql_query ("SET CHARACTER SET 'cp1251'");
  35 + date_default_timezone_set ('Europe/Kiev');
30 36
31 - mysql_connect(DB_HOST, DB_USER, DB_PSW) or die("Could not connect : " . mysql_error());  
32 - mysql_select_db(DB_BASE) or die("Could not select database");  
33 - mysql_query("SET CHARACTER SET 'cp1251'");  
34 - date_default_timezone_set('Europe/Kiev'); 37 + $path = explode ("/", $_SERVER['REQUEST_URI']);
  38 + parse_str (substr ($path[count ($path) - 1], 1), $GET);
  39 + if (isset ($path[1]) && $path[1] == 'ukr')
  40 + {
  41 + $_GET['lang'] = $path[1];
  42 + $_REQUEST['lang'] = $path[1];
  43 + unset($path[1]);
  44 + $path = array_values ($path);
  45 + }
35 46
  47 + // ==== FUNCTION ====
36 48
37 - $path=explode("/",$_SERVER['REQUEST_URI']);  
38 - parse_str(substr($path[count($path)-1],1), $GET);  
39 - if($path[1]=='ukr'){$_GET['lang'] = $path[1];$_REQUEST['lang'] = $path[1];unset($path[1]);$path = array_values($path);}  
40 -  
41 /* 49 /*
42 // ñåêðåòíàÿ ôóíêöèÿ :) 50 // ñåêðåòíàÿ ôóíêöèÿ :)
  51 +
43 function __autoload ($class_name) 52 function __autoload ($class_name)
44 { 53 {
45 $is_class = false; 54 $is_class = false;
46 - 55 +
47 echo $filename = $_SERVER['DOCUMENT_ROOT'].'/libs/'.$class_name.'.class.php'; 56 echo $filename = $_SERVER['DOCUMENT_ROOT'].'/libs/'.$class_name.'.class.php';
48 - 57 +
49 if (substr ($filename, strlen ($filename) -3, 3) == 'php' && file_exists ($filename)) 58 if (substr ($filename, strlen ($filename) -3, 3) == 'php' && file_exists ($filename))
50 { 59 {
51 include_once ($filename); 60 include_once ($filename);
52 - 61 +
53 if (class_exists ($class_name, false)) 62 if (class_exists ($class_name, false))
54 { 63 {
55 $is_class = true; 64 $is_class = true;
56 } 65 }
57 } 66 }
58 - 67 +
59 if (! $is_class) 68 if (! $is_class)
60 { 69 {
61 var_dump ($class_name); 70 var_dump ($class_name);
css/admin/callback.css 0 → 100644
  1 +
  2 +/*
  3 + ==== table ====
  4 +*/
  5 + #callback th,
  6 + #callback td {
  7 + padding: 4px;
  8 + text-align: center;
  9 + vertical-align: middle;
  10 + }
  11 +
  12 +/*
  13 + ==== field ====
  14 +*/
  15 +
  16 + #callback .status {
  17 + text-align: left;
  18 + width: 210px;
  19 + }
  20 +
  21 + #callback .status .btn {
  22 + border: none;
  23 + }
  24 +
  25 + #callback .status .btn {
  26 + padding: 2px 10px;
  27 + }
  28 +
  29 + #callback .status .dropdown-toggle {
  30 + height: 24px;
  31 + }
  32 +
  33 + #callback td.city,
  34 + #callback td.tel,
  35 + #callback td.manager {
  36 + width: 100px;
  37 + overflow: hidden;
  38 + }
  39 +
  40 + #callback .date {
  41 + width: 150px;
  42 + }
  43 +
  44 + #callback .text .btn {
  45 + padding: 2px 7px;
  46 + }
  47 +
  48 +/*
  49 + ==== done ====
  50 +*/
  51 +
  52 + #callback .status.done .btn-group > .btn {
  53 + border-radius: 5px;
  54 + }
  55 +
  56 + #callback .status.done .dropdown-toggle {
  57 + display: none;
  58 + }
  59 +
  60 +/*
  61 + ==== modal ====
  62 +*/
  63 +
  64 + .modal-body {
  65 + word-wrap: break-word;
  66 + }
  67 +
  68 + .modal-content .alert {
  69 + display: table;
  70 + margin: auto;
  71 + }
  72 +
  73 + .modal-content .alert > div {
  74 + display: inline-block;
  75 + text-align: center;
  76 + vertical-align: middle;
  77 + }
  78 +
  79 + .modal-content .alert.warning .img {
  80 + background-image: url(/img/alert/warning.png);
  81 + }
  82 +
  83 + .modal-content .alert.done .img {
  84 + background-image: url(/img/alert/done.png);
  85 + }
  86 +
  87 + .modal-content .alert .img {
  88 + width: 96px;
  89 + height: 96px;
  90 + background-size: cover;
  91 + }
1 -BODY,FORM{margin:0px;padding:0px;font-family: Arial, Tahoma, Helvetica, sans-serif;font-size:12px;color:#575757;}  
2 -.fl{float:left;}  
3 -.fr{float:right;}  
4 -.both{clear:both;}  
5 -body{background: #fff;}  
6 -p{padding:0px;margin:4px 0px;} 1 +BODY, FORM {
  2 + margin: 0px;
  3 + padding: 0px;
  4 + font-family: Arial, Tahoma, Helvetica, sans-serif;
  5 + font-size: 12px;
  6 + color: #575757;
  7 +}
  8 +
  9 +.fl {
  10 + float: left;
  11 +}
  12 +
  13 +.fr {
  14 + float: right;
  15 +}
  16 +
  17 +.both {
  18 + clear: both;
  19 +}
  20 +
  21 +body {
  22 + background: #fff;
  23 +}
  24 +
  25 +p {
  26 + padding: 0px;
  27 + margin: 4px 0px;
  28 +}
  29 +
  30 +h1, h2 {
  31 + padding: 0px;
  32 + margin: 0px;
  33 +}
  34 +
  35 +h1, .h1 {
  36 + font-size: 20px;
  37 + font-weight: normal;
  38 + color: #388e1e;
  39 + padding-bottom: 15px;
  40 +}
  41 +
  42 +h2 {
  43 + padding-bottom: 10px;
  44 + color: #388e1e;
  45 + font-weight: normal;
  46 +}
  47 +
  48 +a:visited, a:link {
  49 + font-size: 12;
  50 + font-weight: normal;
  51 + color: #4b4b4b;
  52 + text-decoration: underline;
  53 +}
  54 +
  55 +a:hover {
  56 + color: #42a725;
  57 + text-decoration: underline;
  58 +}
  59 +
  60 +a.link_p:visited, a.link_p:link {
  61 + display1: block;
  62 + color: #434343;
  63 + text-decoration: underline;
  64 + background: url("../img/login.jpg") left no-repeat;
  65 + width: 32px;
  66 + height: 29px;
  67 + float: right;
  68 + margin-top: -15px;
  69 +}
  70 +
  71 +a.link_p:hover {
  72 + color: #42a725;
  73 + text-decoration: underline;
  74 +}
  75 +
  76 +a.link_p span {
  77 + display: none;
  78 +}
  79 +
  80 +a.link1:visited, a.link1:link {
  81 + color: #378f1f;
  82 + text-decoration: none;
  83 + font-size: 16px;
  84 + text-transform: uppercase;
  85 +}
  86 +
  87 +a.link1:hover {
  88 + color: #42a725;
  89 + text-decoration: underline;
  90 +}
  91 +
  92 +a.link2:visited, a.link2:link {
  93 + display: block;
  94 + color: #338e17;
  95 + text-decoration: underline;
  96 +}
  97 +
  98 +a.link2:hover {
  99 + color: #42a725;
  100 + text-decoration: underline;
  101 +}
  102 +
  103 +a.link3:visited, a.link3:link {
  104 + display: block;
  105 + color: #f5f5f5;
  106 + text-decoration: underline;
  107 +}
  108 +
  109 +a.link3:hover {
  110 + color: #42a725;
  111 + text-decoration: underline;
  112 +}
  113 +
  114 +a.link4:visited, a.link4:link {
  115 + color: #4b4b4b;
  116 + text-decoration: none;
  117 +}
  118 +
  119 +a.link4:hover {
  120 + text-decoration: underline;
  121 +}
  122 +
  123 +a.link5:visited, a.link5:link {
  124 + color: #484848;
  125 + text-decoration: none;
  126 + font-size: 16px;
  127 + font-weight: bold;
  128 +}
  129 +
  130 +a.link5:hover {
  131 + color: #42a725;
  132 + text-decoration: underline;
  133 +}
  134 +
  135 +a.link6:visited, a.link6:link {
  136 + color: #368e1e;
  137 + text-decoration: underline;
  138 +}
  139 +
  140 +a.link6:hover {
  141 + color: #484848;
  142 + text-decoration: underline;
  143 +}
  144 +
  145 +a.link7:visited, a.link7:link {
  146 + color: #4b4b4b;
  147 + text-decoration: underline;
  148 +}
  149 +
  150 +a.link7:hover {
  151 + color: #484848;
  152 + text-decoration: underline;
  153 +}
  154 +
  155 +a.link_green:visited, a.link_green:link {
  156 + color: #3a881a;
  157 + text-decoration: underline;
  158 + font-size: 12px;
  159 + font-weight: bold;
  160 +}
  161 +
  162 +a.link_green:hover {
  163 + color: #42a725;
  164 + text-decoration: underline;
  165 +}
  166 +
  167 +a.link_blue:visited, a.link_blue:link {
  168 + color: #0054a5;
  169 + text-decoration: underline;
  170 + font-size: 12px;
  171 + font-weight: normal;
  172 +}
  173 +
  174 +a.link_blue:hover {
  175 + color: #42a725;
  176 + text-decoration: underline;
  177 +}
  178 +
  179 +a.link4 span {
  180 + font-weight: normal;
  181 + color: #585858;
  182 +}
  183 +
  184 +a.link_opros:visited, a.link_opros:link {
  185 + margin-left: 20px;
  186 + float: left;
  187 + padding: 5px 10px;
  188 + border-radius: 5px;
  189 + background: #52ad34;
  190 + color: #ffffff;
  191 + text-decoration: none;
  192 + font-size: 12px;
  193 + font-weight: normal;
  194 + text-transform: uppercase;
  195 +}
  196 +
  197 +a.link_opros:hover {
  198 + text-decoration: underline;
  199 +}
  200 +
  201 +a.smill:visited, a.smill:link {
  202 + color: #3273b5;
  203 + text-decoration: underline;
  204 +}
  205 +
  206 +a.smill:hover {
  207 + color: #42a725;
  208 + text-decoration: underline;
  209 +}
  210 +
  211 +a.link_home:visited, a.link_home:link, a.link_home:hover {
  212 + display: block;
  213 + float: left;
  214 + width: 40px;
  215 + height: 40px;
  216 + background: url("../img/home.jpg") no-repeat;
  217 + margin-right: 10px;
  218 +}
  219 +
  220 +.link_home span {
  221 + display: none;
  222 +}
  223 +
  224 +a.link_kupit:visited, a.link_kupit:link, a.link_kupit:hover {
  225 + display: block;
  226 + margin: 10px auto;
  227 + width: 87px;
  228 + height: 29px;
  229 + line-height: 29px;
  230 + background: url("../img/kupit.jpg") no-repeat;
  231 + color: #ffffff;
  232 + text-decoration: none;
  233 + text-transform: uppercase;
  234 +}
  235 +
  236 +a.link_sub:visited, a.link_sub:link, a.link_sub:hover {
  237 + display: block;
  238 + margin-top: 10px;
  239 + width: 81px;
  240 + height: 29px;
  241 + line-height: 29px;
  242 + background: url("../img/sub6.jpg") no-repeat;
  243 + color: #464646;
  244 + text-decoration: none;
  245 + text-align: center;
  246 +}
  247 +
  248 +a.link_pic1:visited, a.link_pic1:link, a.link_pic1:hover {
  249 + display: block;
  250 + float: left;
  251 + background: #ffffff;
  252 + width: 144px;
  253 + height: 121px;
  254 + text-align: center;
  255 + overflow: hidden;
  256 +}
  257 +
  258 +a.link_pic2:visited, a.link_pic2:link, a.link_pic2:hover {
  259 + display: block;
  260 + float: left;
  261 + background: #ffffff;
  262 + width: 100px;
  263 + height: 100px;
  264 + text-align: center;
  265 + overflow: hidden;
  266 + margin-right: 10px;
  267 +}
  268 +
  269 +a.link_pic4:visited, a.link_pic4:link, a.link_pic4:hover {
  270 + display: block;
  271 + background: #ffffff;
  272 + width: 144px;
  273 + height: 121px;
  274 + text-align: center;
  275 + overflow: hidden;
  276 + margin: 0px auto;
  277 +}
  278 +
  279 +a.link_video:visited, a.link_video:link, a.link_video:hover {
  280 + color: #0055a6;
  281 + padding-left: 25px;
  282 + background: url('../img/ico_video.png') left no-repeat;
  283 +}
  284 +
  285 +a.sbcModal_a:visited, a.sbcModal_a:link {
  286 + display: block;
  287 + float: left;
  288 + margin-left1: 15px;
  289 + width: 139px;
  290 + height: 28px;
  291 + line-height: 28px;
  292 + text-align: center;
  293 + color: #ffffff;
  294 + text-decoration: none;
  295 + background: url('../img/sub_pay.jpg') no-repeat;
  296 +}
  297 +
  298 +a.sbcModal_a:hover {
  299 + background-position: 0px -28px;
  300 +}
  301 +
  302 +a.sbcModal_a span1 {
  303 + display: none;
  304 +}
  305 +
  306 +a.status:visited, a.status:link {
  307 + display: block;
  308 + float: left;
  309 + margin-left: 5px;
  310 + width: 95px;
  311 + height: 28px;
  312 + line-height: 28px;
  313 + text-align: center;
  314 + color: #ffffff;
  315 + font-size: 10px;
  316 + text-decoration: none;;
  317 + background: url('../img/sub_status.jpg') no-repeat;
  318 +}
  319 +
  320 +a.status:hover {
  321 + background-position: 0px -28px;
  322 +}
  323 +
  324 +a.status span1 {
  325 + display: none;
  326 +}
  327 +
  328 +a.credit:visited, a.credit:link {
  329 + display: block;
  330 + float: left;
  331 + margin-top: 2px;
  332 + width: 238px;
  333 + height: 28px;
  334 + line-height: 28px;
  335 + text-align: center;
  336 + color: #000000;
  337 + text-decoration: none;
  338 + background: url('../img/button_credit.png') no-repeat;
  339 +}
  340 +
  341 +a.credit:hover {
  342 + background-position: 0px -28px;
  343 +}
  344 +
  345 +a.credit span1 {
  346 + display: none;
  347 +}
  348 +
  349 +.top {
  350 + height: 130px;
  351 + width: 1000px;
  352 + text-align: left;
  353 + margin: 0px auto;
  354 +}
  355 +
  356 +.logo {
  357 + padding: 0px 45px 0px 0px;
  358 + float: left;
  359 +}
  360 +
  361 +.logo span {
  362 + display: none;
  363 +}
  364 +
  365 +.logo h1 {
  366 + padding: 0px;
  367 + margin: 0px;
  368 +}
  369 +
  370 +.logo a {
  371 + display: block;
  372 + width: 198px;
  373 + height: 108px;
  374 + background: url("../img/logo.jpg");
  375 +}
  376 +
  377 +.search_top {
  378 + float: left;
  379 + padding: 10px 0px 0px 0px;
  380 + text-align: center;
  381 + width: 500px;
  382 +}
  383 +
  384 +.search_top input[type="text"] {
  385 + float: left;
  386 + width: 300px;
  387 + height: 34px;
  388 + line-height: 34px;
  389 + border: none;
  390 + background: url("../img/inp.jpg") repeat-x;
  391 + outline: 0
  392 +}
  393 +
  394 +.inp_l {
  395 + float: left;
  396 + width: 8px;
  397 + height: 34px;
  398 + background: url("../img/inp_l.jpg") no-repeat;
  399 +}
  400 +
  401 +.search_top input[type="submit"], .submit_search {
  402 + float: left;
  403 + width: 71px;
  404 + height: 34px;
  405 + border: none;
  406 + background: url("../img/inp_submit.jpg") no-repeat;
  407 + cursor: pointer;
  408 +}
  409 +
  410 +.slogan {
  411 + color: #474747;
  412 + font-size: 18px;
  413 + padding-top: 5px;
  414 + margin-left: 335px;
  415 +}
  416 +
  417 +.search_form {
  418 + padding-left: 50px;
  419 +}
  420 +
  421 +.inp_search {
  422 + float: left;
  423 + width: 168px;
  424 + height: 34px;
  425 + line-height: 34px;
  426 + border: none;
  427 + background: url("../img/inp.jpg") repeat-x;
  428 + outline: 0
  429 +}
  430 +
  431 +.tel {
  432 + font-size: 14px;
  433 + color: #424242;
  434 + padding-bottom1: 10px;
  435 +}
  436 +
  437 +.tel span {
  438 + color: #42a725;
  439 + font-size: 15px;
  440 + font-weight: bold;
  441 +}
  442 +
  443 +.tel span.b {
  444 + color: #424242;
  445 + font-weight: bold;
  446 +}
  447 +
  448 +.search_top > .tel {
  449 + background: url(/img/call.jpg);
  450 + background-repeat: no-repeat;
  451 + padding-left: 25px;
  452 +}
  453 +
  454 +.search_top .hotline-skype {
  455 + margin: 5px 0 2px 0;
  456 +}
  457 +
  458 +.search_top .hotline-skype > div {
  459 + display: inline-block;
  460 +}
  461 +
  462 +#callback-button {
  463 + background: url(/img/callback.jpg);
  464 + background-repeat: no-repeat;
  465 + padding: 5px 5px 5px 25px;
  466 + color: #42a725;
  467 + font-weight: normal;
  468 + text-decoration: underline;
  469 + cursor: pointer;
  470 +}
  471 +
  472 +.hotline {
  473 + font-size: 12px;
  474 + color: #424242;
  475 + font-weight: bold;
  476 + padding-bottom: 5px;
  477 + text-transform: lowercase;
  478 +}
  479 +
  480 +.hotline span, .hotline a {
  481 + color: #42a725;
  482 +}
  483 +
  484 +.basket_top {
  485 + padding-top: 15px;
  486 + float: right;
  487 + text-align: right;
  488 + width: 240px;
  489 +}
  490 +
  491 +.basket_box {
  492 + background: url("../img/ico_basket.jpg") left bottom no-repeat;
  493 + height: 36px;
  494 + margin-bottom: 5px;
  495 +}
  496 +
  497 +.count_p {
  498 + float: left;
  499 + color: #ffffff;
  500 + font-size: 14px;
  501 + padding-left: 22px;
  502 + padding-top: 4px;
  503 +}
  504 +
  505 +.basket_box a {
  506 + padding-top: 10px;
  507 + font-size: 14px;
  508 + font-weight: bold;
  509 + color: #42a725;
  510 + text-transform: uppercase;
  511 +}
  512 +
  513 +.txtb2 {
  514 + padding-top: 10px;
  515 + font-size: 14px;
  516 + font-weight: bold;
  517 + color: #42a725;
  518 + text-transform: uppercase;
  519 + margin-left: 20px;
  520 + float: left;
  521 +}
  522 +
  523 +.txtb {
  524 + font-weight: bold;
  525 +}
  526 +
  527 +.txtb14 {
  528 + font-weight: bold;
  529 + font-size: 14px;
  530 +}
  531 +
  532 +.txtblue {
  533 + color: #07569b;
  534 + text-decoration: underline;
  535 +}
  536 +
  537 +.menu {
  538 + height: 40px;
  539 + background: #50ae34;
  540 + z-index: 98;
  541 + width: 100%;
  542 +}
  543 +
  544 +.menu .wrp {
  545 + width: 1000px;
  546 + text-align: left;
  547 + margin: 0px auto;
  548 +}
  549 +
  550 +.menu ul {
  551 + list-style: none;
  552 + margin: 0px;
  553 + padding: 0px;
  554 + position: relative;
  555 +}
  556 +
  557 +.menu ul li {
  558 + float: left;
  559 + background: url("../img/m_h.jpg") center right no-repeat;
  560 +}
  561 +
  562 +.menu ul li > a {
  563 + float: left;
  564 + padding: 12px 20px;
  565 + font-size: 14px;
  566 + font-weight: normal;
  567 + color: #ffffff;
  568 + text-decoration: none;
  569 +}
  570 +
  571 +.menu ul li > a:hover {
  572 + color: #fff201;
  573 +}
  574 +
  575 +.menu ul li.active > a {
  576 + color: #fff201;
  577 +}
  578 +
  579 +.menu ul li.first > a {
  580 + font-weight: bold;
  581 + text-transform: uppercase;
  582 + padding: 0px 10px;
  583 + height: 40px;
  584 + line-height: 40px;
  585 + float: left;
  586 + background: url("../img/m_a.jpg") center repeat-x;
  587 + color: #474747;
  588 +}
  589 +
  590 +.menu ul li.first span.r {
  591 + float: left;
  592 + width: 31px;
  593 + height: 40px;
  594 + background: url("../img/m_a_r.jpg") center no-repeat;
  595 +}
  596 +
  597 +.menu ul li.first span.l {
  598 + float: left;
  599 + width: 5px;
  600 + height: 40px;
  601 + background: url("../img/m_a_l.jpg") center no-repeat;
  602 +}
  603 +
  604 +.menu ul li.first:hover > a {
  605 + padding: 0px 10px 0px 9px;
  606 + height: 43px;
  607 + line-height: 38px;
  608 + float: left;
  609 + background: url("../img/mh_a.jpg") center repeat-x;
  610 + color: #474747;
  611 + position: relative;
  612 + z-index: 1999;
  613 + bottom: -1px;
  614 +}
  615 +
  616 +.menu ul li.first:hover span.r {
  617 + float: left;
  618 + width: 31px;
  619 + height: 43px;
  620 + background: url("../img/mh_a_r.jpg") center no-repeat;
  621 + position: relative;
  622 + z-index: 1999;
  623 + bottom: -1px;
  624 +}
  625 +
  626 +.menu ul li.first:hover span.l {
  627 + float: left;
  628 + width: 6px;
  629 + height: 43px;
  630 + background: url("../img/mh_a_l.jpg") center no-repeat;
  631 + position: relative;
  632 + z-index: 1999;
  633 + bottom: -1px;
  634 +}
  635 +
  636 +.menup {
  637 + position: absolute;
  638 + z-index: 9999;
  639 + top: -999em;
  640 + border: 2px solid #c1c1c1;
  641 + border-radius: 5px 5px 5px 5px;
  642 + width: 960px;
  643 + padding: 10px 20px;
  644 + background: #ffffff;
  645 +}
  646 +
  647 +.menu ul li:hover .menup {
  648 + left: 0;
  649 + top: 40px;
  650 +}
  651 +
  652 +#slides {
  653 + width: 1000px;
  654 + text-align: left;
  655 + margin: 0px auto;
  656 + padding-top: 10px;
  657 + position: relative;
  658 + z-index: 888;
  659 +}
  660 +
  661 +.site {
  662 + width: 1000px;
  663 + text-align: left;
  664 + margin: 0px auto;
  665 + padding-top: 10px;
  666 + min-height: 600px;
  667 + background: #ffffff;
  668 +}
  669 +
  670 +ul.list {
  671 + list-style: none;
  672 + margin: 0px;
  673 + padding: 0px;
  674 + position: relative;
  675 + z-index: 5;
  676 +}
  677 +
  678 +ul.list li {
  679 + float: left;
  680 + margin-right: -7px;
  681 + z-index: 4;
  682 + position: relative;
  683 +}
  684 +
  685 +ul.list li.red a {
  686 + float: left;
  687 + height: 32px;
  688 + line-height: 32px;
  689 + padding: 0px 10px 0px 10px;
  690 + font-size: 14px;
  691 + font-weight: bold;
  692 + color: #ffffff;
  693 + text-decoration: none;
  694 + text-transform: uppercase;
  695 + background: url("../img/l_bg_r.png") bottom repeat-x;
  696 +}
  697 +
  698 +ul.list li.red span.r {
  699 + float: left;
  700 + height: 32px;
  701 + width: 19px;
  702 + background: url("../img/l_r_r.png") left bottom no-repeat;
  703 +}
  704 +
  705 +ul.list li.red span.l {
  706 + float: left;
  707 + height: 32px;
  708 + width: 9px;
  709 + background: url("../img/l_l_r.png") right bottom no-repeat;
  710 +}
  711 +
  712 +ul.list li.green a {
  713 + float: left;
  714 + height: 32px;
  715 + line-height: 32px;
  716 + padding: 0px 20px 0px 20px;
  717 + font-size: 14px;
  718 + font-weight: bold;
  719 + color: #ffffff;
  720 + text-decoration: none;
  721 + text-transform: uppercase;
  722 + background: url("../img/l_bg_g.png") bottom repeat-x;
  723 +}
  724 +
  725 +ul.list li.green span.r {
  726 + float: left;
  727 + height: 32px;
  728 + width: 19px;
  729 + background: url("../img/l_r_g.png") left bottom no-repeat;
  730 +}
  731 +
  732 +ul.list li.green span.l {
  733 + float: left;
  734 + height: 32px;
  735 + width: 9px;
  736 + background: url("../img/l_l_g.png") right bottom no-repeat;
  737 + margin-left: -2px;
  738 +}
  739 +
  740 +ul.list li.green span.l2 {
  741 + float: left;
  742 + height: 32px;
  743 + width: 9px;
  744 + background: url("../img/l_l_g2.png") right bottom no-repeat;
  745 + margin-left: -2px;
  746 +}
  747 +
  748 +ul.list li.active {
  749 + z-index: 5;
  750 +}
  751 +
  752 +ul.list li.active span.l {
  753 + float: left;
  754 + height: 33px;
  755 + width: 8px;
  756 + background: url("../img/l_l.png") right bottom no-repeat;
  757 +}
  758 +
  759 +ul.list li.active span.r {
  760 + float: left;
  761 + height: 33px;
  762 + width: 20px;
  763 + background: url("../img/l_r.png") left bottom no-repeat;
  764 +}
  765 +
  766 +ul.list li.active a {
  767 + float: left;
  768 + height: 33px;
  769 + line-height: 33px;
  770 + padding: 0px 10px 0px 10px;
  771 + font-size: 14px;
  772 + font-weight: bold;
  773 + color: #595959;
  774 + text-decoration: none;
  775 + text-transform: uppercase;
  776 + background: url("../img/l_bg.jpg") repeat-x;
  777 +}
  778 +
  779 +ul.list li a {
  780 + float: left;
  781 + height: 32px;
  782 + line-height: 32px;
  783 + padding: 0px 10px 0px 10px;
  784 + font-size: 14px;
  785 + font-weight: bold;
  786 + color: #595959;
  787 + text-decoration: none;
  788 + text-transform: uppercase;
  789 + background: url("../img/l_bg_a.png") bottom repeat-x;
  790 +}
  791 +
  792 +ul.list li span.r {
  793 + float: left;
  794 + height: 32px;
  795 + width: 19px;
  796 + background: url("../img/l_r_a.png") left bottom no-repeat;
  797 +}
  798 +
  799 +ul.list li span.l {
  800 + float: left;
  801 + height: 32px;
  802 + width: 7px;
  803 + background: url("../img/l_l_a.png") right bottom no-repeat;
  804 +}
  805 +
  806 +ul.list2 {
  807 + list-style: none;
  808 + margin: 0px 0px 35px 0px;
  809 + padding: 0px;
  810 + position: relative;
  811 + z-index: 5;
  812 +}
  813 +
  814 +ul.list2 li {
  815 + float: left;
  816 + margin-right: 20px;
  817 + z-index: 4;
  818 + position: relative;
  819 +}
  820 +
  821 +ul.list2 li a {
  822 + float: left;
  823 + font-size: 14px;
  824 + font-weight: bold;
  825 + color: #595959;
  826 + text-decoration: underline;
  827 + text-transform: uppercase;
  828 +}
  829 +
  830 +ul.list2 li.active a {
  831 + color: #4c973c;
  832 + text-decoration: none;
  833 +}
  834 +
  835 +.box_br {
  836 + border: 2px solid #c1c1c1;
  837 + border-radius: 5px 5px 5px 5px;
  838 + padding: 15px;
  839 + color: #363636;
  840 +}
  841 +
  842 +.box_br .txtb {
  843 + margin-bottom: 10px;
  844 +}
  845 +
  846 +.account-menu {
  847 + margin-top: 10px;
  848 + background: #f8f8f8;
  849 + border: 2px solid #c1c1c1;
  850 + border-radius: 5px 5px 5px 5px;
  851 + padding: 15px;
  852 + color: #363636;
  853 +}
  854 +
  855 +.account-menu ul {
  856 + list-style: none;
  857 + margin: 0px;
  858 + padding: 0px;
  859 +}
  860 +
  861 +.account-menu ul li {
  862 + padding: 3px 0px;
  863 +}
  864 +
  865 +.account-menu ul ul li {
  866 + padding: 3px 20px;
  867 +}
  868 +
  869 +.tab_container {
  870 + z-index: 4;
  871 + position: relative;
  872 + margin-top: -2px;
  873 + border-top: 2px solid #c1c1c1;
  874 + border-left: 2px solid #c1c1c1;
  875 + border-right: 2px solid #c1c1c1;
  876 + border-bottom: 2px solid #c1c1c1;
  877 + clear: both;
  878 + float: left;
  879 + width: 996px;
  880 + background: #fff;
  881 + border-radius: 0px 5px 0px 5px;
  882 + overflow: hidden;
  883 +
  884 +}
  885 +
  886 +.tab_container2 {
  887 + z-index: 4;
  888 + position: relative;
  889 + margin-top: -2px;
  890 + border-top: 2px solid #c1c1c1;
  891 + border-left: 2px solid #c1c1c1;
  892 + border-right: 2px solid #c1c1c1;
  893 + border-bottom: 2px solid #c1c1c1;
  894 + clear: both;
  895 + float: left;
  896 + width: 490px;
  897 + background: #fff;
  898 + border-radius: 0px 5px 0px 5px;
  899 + overflow: hidden;
  900 +
  901 +}
  902 +
  903 +.tab_container3 {
  904 + z-index: 4;
  905 + position: relative;
  906 + overflow: hidden;
  907 +}
  908 +
  909 +.tab_container2 ul {
  910 + list-style-image: url("../img/li.gif");
  911 + margin: 0px 0px 0px 10px;
  912 + padding: 0px;
  913 +}
  914 +
  915 +#etab1 {
  916 + border-radius: 0px 5px 0px 5px;
  917 +}
  918 +
  919 +#etab11, #etab12, #etab13, #etab51 {
  920 + background: url("../img/rhbg.jpg") repeat-y;
  921 + border-radius: 0px 5px 0px 5px;
  922 +}
  923 +
  924 +#etab11_n, #etab12_n {
  925 + background: url("../img/rhbg2.jpg") repeat-y;
  926 + border-radius: 0px 5px 0px 5px;
  927 +}
  928 +
  929 +.rd {
  930 + border-radius: 0px 5px 5px 5px;
  931 +}
  932 +
  933 +.rd2 {
  934 + border-radius: 0px 5px 0px 5px;
  935 + overflow: visible;
  936 +}
  937 +
  938 +.tab_content, .tab_content4, .tab_content3 {
  939 + padding: 10px 20px;
  940 +}
  941 +
  942 +.tab_content2, .tab_content5 {
  943 + padding: 10px 0px;
  944 +}
  945 +
  946 +.cont_box {
  947 + border-left: 2px solid #c1c1c1;
  948 + border-right: 2px solid #c1c1c1;
  949 + border-bottom: 2px solid #c1c1c1;
  950 + border-radius: 0px 0px 5px 5px;
  951 + padding: 20px;
  952 +}
  953 +
  954 +#etab1 {
  955 + padding-right: 0px;
  956 +}
  957 +
  958 +.rowlbar {
  959 + float: left;
  960 + margin-right: 17px;
  961 +}
  962 +
  963 +.row {
  964 + width: 220px;
  965 + float: left;
  966 + margin-right1: 17px;
  967 + padding-top: 20px;
  968 + padding-right: 10px;
  969 +}
  970 +
  971 +.n {
  972 + background: none;
  973 + margin-right: 0px;
  974 + padding-right: 0px;
  975 + border: 1px solid red;
  976 + width: 213px;
  977 +}
  978 +
  979 +.row a {
  980 + display: block;
  981 + text-decoration: none;
  982 + color: #323232;
  983 +}
  984 +
  985 +.row a:hover {
  986 + color: #50AE34;
  987 +}
  988 +
  989 +.title2 {
  990 + color: #5E655E;
  991 + font-size: 12px;
  992 + font-weight: bold;
  993 + text-transform: uppercase;
  994 +}
  995 +
  996 +.title2 a:visited, .title2 a:link {
  997 + font-size: 14px;
  998 + font-weight: bold;
  999 + color: #000000;
  1000 + text-decoration: none;
  1001 +}
  1002 +
  1003 +.title2 a:hover {
  1004 + color: #EE1C25;
  1005 + text-decoration: underline;
  1006 +}
  1007 +
  1008 +.box2 {
  1009 + padding: 10px 0px 10px 0px;
  1010 +}
  1011 +
  1012 +hr {
  1013 + color: #e0e0e0; /*��� IE */
  1014 + background-color: #e0e0e0; /*��� Firefox, Opera, Safari*/
  1015 + border: 0px none;
  1016 + height: 1px; /* ������ 1px IE, Firefox, Opera, Safari */
  1017 + clear: both; /* ��� �������, ���� ��� ���� ����� float �������� */
  1018 + margin-bottom: 15px;
  1019 +}
  1020 +
  1021 +a.view-source:visited, a.view-source:link, a.view-source:hover {
  1022 + float: right;
  1023 + text-decoration: none;
  1024 + background: #707070;
  1025 + color: #ffffff;
  1026 + padding: 5px 10px;
  1027 + border-left: 2px solid #c1c1c1;
  1028 + border-right: 2px solid #c1c1c1;
  1029 + border-bottom: 2px solid #c1c1c1;
  1030 + border-radius: 0px 0px 10px 10px;
  1031 +}
  1032 +
  1033 +a.view-source2:visited, a.view-source2:link, a.view-source2:hover {
  1034 + position: relative;
  1035 + margin-bottom: -29px;
  1036 + bottom: -10px;
  1037 + right: -2px;
  1038 + margin-bottom1: -140px;
  1039 + margin-right1: -2px;
  1040 + float: right;
  1041 + text-decoration: none;
  1042 + background: #707070;
  1043 + color: #ffffff;
  1044 + padding: 5px 10px;
  1045 + border-left: 2px solid #c1c1c1;
  1046 + border-right: 2px solid #c1c1c1;
  1047 + border-bottom: 2px solid #c1c1c1;
  1048 + border-radius: 0px 0px 10px 10px;
  1049 +}
  1050 +
  1051 +.mrt {
  1052 + margin-top: 10px;
  1053 +}
  1054 +
  1055 +.cost {
  1056 + color: #474747;
  1057 + font-size: 14px;
  1058 + font-weight: bold;
  1059 +}
  1060 +
  1061 +.fotter_bg {
  1062 + background: #c2c2c2;
  1063 + color: #ffffff;
  1064 + margin-top: 20px;
  1065 +}
  1066 +
  1067 +.fotter {
  1068 + width: 1000px;
  1069 + text-align: left;
  1070 + margin: 0px auto;
  1071 + padding: 40px 0px;
  1072 +}
  1073 +
  1074 +.txtc {
  1075 + text-align: center;
  1076 + overflow: hidden;
  1077 +}
  1078 +
  1079 +.txtr {
  1080 + text-align: right;
  1081 +}
  1082 +
  1083 +.fotter ul {
  1084 + list-style: none;
  1085 + margin: 0px;
  1086 + padding: 0px;
  1087 +}
  1088 +
  1089 +.fotter ul li {
  1090 + display: inline;
  1091 + margin: 0px 5px;
  1092 +}
  1093 +
  1094 +.fotter ul li a {
  1095 + font-size: 14px;
  1096 + text-decoration: none;
  1097 +}
  1098 +
  1099 +.item_news {
  1100 + border-bottom: 1px solid #C8C8C8;
  1101 + padding-bottom: 5px;
  1102 + margin-bottom: 5px;
  1103 +}
  1104 +
  1105 +.rgh {
  1106 + text-align: right;
  1107 +}
  1108 +
  1109 +.products {
  1110 +}
  1111 +
  1112 +.row_product:hover {
  1113 + background: #fffeea;
  1114 +}
  1115 +
  1116 +.products .row_product {
  1117 + border-bottom: 1px solid #C8C8C8;
  1118 +}
  1119 +
  1120 +.products .row_product2 {
  1121 + border-bottom: 1px solid #C8C8C8;
  1122 + padding-bottom: 10px;
  1123 + margin-bottom: 10px;
  1124 +}
  1125 +
  1126 +.products .row_product .wrp {
  1127 + padding: 15px;
  1128 +}
  1129 +
  1130 +.products .pr_t {
  1131 + height: 25px;
  1132 + line-height: 25px;
  1133 + background: url('img/prbg.jpg') repeat-x;
  1134 + text-transform: uppercase;
  1135 + color: #419B29;
  1136 + font-weight: bold;
  1137 + text-indent: 20px;
  1138 +}
  1139 +
  1140 +.products .pr_t .l {
  1141 + background: url('img/prl.jpg') left top no-repeat;
  1142 +}
  1143 +
  1144 +.products .pr_t .r {
  1145 + background: url('img/prr.jpg') right top no-repeat;
  1146 +}
  1147 +
  1148 +.products .infob {
  1149 + overflow: hidden;
  1150 + padding: 0px 10px 0px 10px;
  1151 + background: url('img/tk.jpg') right repeat-y;
  1152 + height: 120px;
  1153 +}
  1154 +
  1155 +.products .infor {
  1156 + float: right;
  1157 + height1: 120px;
  1158 + width: 180px;
  1159 + padding-top: 0px;
  1160 +}
  1161 +
  1162 +.products .infob p {
  1163 + padding-top: 5px;
  1164 + text-indent: 10px;
  1165 +}
  1166 +
  1167 +.product_box .infob h1 {
  1168 + display: inline;
  1169 +}
  1170 +
  1171 +.product_box .infob a.f18 {
  1172 + font-size: 18px;
  1173 +}
  1174 +
  1175 +.product_box .infor {
  1176 + float: right;
  1177 + height1: 120px;
  1178 + width: 150px;
  1179 + padding-top: 0px;
  1180 +}
  1181 +
  1182 +.navig {
  1183 + padding-bottom: 10px;
  1184 +}
  1185 +
  1186 +.product_box .infob {
  1187 + overflow: hidden;
  1188 + padding: 0px 20px 0px 20px;
  1189 +}
  1190 +
  1191 +.product_box .row_product2 {
  1192 + border-bottom: 1px solid #C8C8C8;
  1193 + padding-bottom: 10px;
  1194 + margin-bottom: 10px;
  1195 +}
  1196 +
  1197 +.title3 {
  1198 + margin-top: 10px;
  1199 + height: 41px;
  1200 + line-height1: 41px;
  1201 + text-indent1: 20px;
  1202 + background: #50ae36;
  1203 + color: #ffffff;
  1204 + font-size: 13px;
  1205 + font-weight: bold;
  1206 + text-transform: uppercase;
  1207 + margin-bottom1: 20px;
  1208 +}
  1209 +
  1210 +.title3 .l {
  1211 + background: url('../img/t_l.jpg') left top no-repeat;
  1212 +}
  1213 +
  1214 +.title3 .r {
  1215 + background: url('../img/t_r.jpg') right top no-repeat;
  1216 +}
  1217 +
  1218 +.title3 .w {
  1219 + padding-top: 12px;
  1220 + padding-right: 20px;
  1221 + padding-left: 20px;
  1222 +}
  1223 +
  1224 +.title3 span {
  1225 + height: 19px;
  1226 + line-height: 19px;
  1227 + background: url('../img/t_abg.jpg') repeat-x;
  1228 + color: #414141;
  1229 + text-align: center;
  1230 + text-transform: lowercase;
  1231 + font-weight: normal;
  1232 +}
7 1233
8 -h1,h2{padding:0px;margin:0px;}  
9 -h1,.h1{font-size:20px;font-weight:normal;color:#388e1e;padding-bottom:15px;}  
10 -h2{padding-bottom:10px;color:#388e1e;font-weight:normal;} 1234 +.title3 h2, .title3 h1, .title3 .h1 {
  1235 + color: #ffffff;
  1236 + font-size: 13px;
  1237 + font-weight: bold;
  1238 + display: inline;
  1239 +}
11 1240
12 -a:visited,a:link{font-size:12;font-weight:normal;color:#4b4b4b;text-decoration: underline;}  
13 -a:hover{color:#42a725;text-decoration: underline;} 1241 +.leftbar {
  1242 + float: left;
  1243 + width: 245px;
  1244 +}
14 1245
15 -a.link_p:visited,a.link_p:link{display1:block;color:#434343;text-decoration: underline;background:url("../img/login.jpg") left no-repeat;width:32px;height:29px;float:right;margin-top:-15px;}  
16 -a.link_p:hover{color:#42a725;text-decoration: underline;}  
17 -a.link_p span{display:none;} 1246 +.leftbar2 {
  1247 + float: left;
  1248 + width: 220px;
  1249 +}
18 1250
19 -a.link1:visited,a.link1:link{color:#378f1f;text-decoration: none;font-size:16px;text-transform: uppercase;}  
20 -a.link1:hover{color:#42a725;text-decoration: underline;} 1251 +.content {
  1252 + overflow: hidden;
  1253 + padding: 0px 0px 0px 15px;
  1254 + margin-bottom: 20px;
  1255 +}
21 1256
22 -a.link2:visited,a.link2:link{display:block;color:#338e17;text-decoration: underline;}  
23 -a.link2:hover{color:#42a725;text-decoration: underline;} 1257 +* html .content {
  1258 + height: 1%;
  1259 +}
24 1260
25 -a.link3:visited,a.link3:link{display:block;color:#f5f5f5;text-decoration: underline;}  
26 -a.link3:hover{color:#42a725;text-decoration: underline;} 1261 +.perPage {
  1262 + text-align: right;
  1263 + float: right;
  1264 +}
27 1265
28 -a.link4:visited,a.link4:link{color:#4b4b4b;text-decoration: none;}  
29 -a.link4:hover{text-decoration: underline;} 1266 +.pager {
  1267 + font-weight: normal;
  1268 + margin-bottom: 5px;
  1269 + text-decoration: none;
  1270 + margin-bottom: 20px;
  1271 +}
30 1272
31 -a.link5:visited,a.link5:link{color:#484848;text-decoration: none;font-size:16px;font-weight:bold;}  
32 -a.link5:hover{color:#42a725;text-decoration: underline;} 1273 +a.link_class {
  1274 + padding: 3px;
  1275 + color: #545454;
  1276 + font-weight: bold;
  1277 + text-decoration: none;
  1278 + font-size: 12px;
  1279 +}
33 1280
34 -a.link6:visited,a.link6:link{color:#368e1e;text-decoration: underline;}  
35 -a.link6:hover{color:#484848;text-decoration: underline;} 1281 +.link_class_active {
  1282 + padding: 3px;
  1283 + color: #07569b;
  1284 + font-weight: bold;
  1285 + text-decoration: none;
  1286 + font-size: 12px;
  1287 +}
36 1288
37 -a.link7:visited,a.link7:link{color:#4b4b4b;text-decoration: underline;}  
38 -a.link7:hover{color:#484848;text-decoration: underline;} 1289 +.ft {
  1290 + width: 245px;
  1291 + height: 8px;
  1292 + background: url('../img/ft.jpg') no-repeat;
  1293 +}
39 1294
40 -a.link_green:visited,a.link_green:link{color:#3a881a;text-decoration: underline;font-size:12px;font-weight:bold;}  
41 -a.link_green:hover{color:#42a725;text-decoration: underline;} 1295 +.fb {
  1296 + width: 245px;
  1297 + height: 8px;
  1298 + background: url('../img/fb.jpg') no-repeat;
  1299 +}
42 1300
43 -a.link_blue:visited,a.link_blue:link{color:#0054a5;text-decoration: underline;font-size:12px;font-weight:normal;}  
44 -a.link_blue:hover{color:#42a725;text-decoration: underline;}  
45 -a.link4 span{font-weight:normal;color:#585858;} 1301 +.fbg {
  1302 + width: 245px;
  1303 + background: url('../img/fbg.jpg') repeat-y;
  1304 +}
46 1305
47 -a.link_opros:visited,a.link_opros:link{margin-left:20px;float:left;padding:5px 10px;border-radius:5px;background:#52ad34;color:#ffffff;text-decoration: none;font-size:12px;font-weight:normal;text-transform: uppercase;}  
48 -a.link_opros:hover{text-decoration: underline;} 1306 +.fbg .wrp {
  1307 + padding: 10px;
  1308 +}
49 1309
50 -a.smill:visited,a.smill:link{color:#3273b5;text-decoration: underline;}  
51 -a.smill:hover{color:#42a725;text-decoration: underline;} 1310 +.fbg span {
  1311 + font-weight: bold;
  1312 + font-size: 14px;
  1313 + color: #525252;
  1314 +}
52 1315
53 -a.link_home:visited,a.link_home:link,a.link_home:hover{display:block;float:left;width:40px;height:40px;background:url("../img/home.jpg") no-repeat;margin-right:10px;}  
54 -.link_home span{display:none;} 1316 +.fbg select {
  1317 + width: 100%;
  1318 + border: 1px solid #a4a4a4;
  1319 + border-radius: 5px;
  1320 + height: 25px;
  1321 +}
55 1322
56 -a.link_kupit:visited,a.link_kupit:link,a.link_kupit:hover{display:block;margin:10px auto;width:87px;height:29px;line-height:29px;background:url("../img/kupit.jpg") no-repeat;color:#ffffff;text-decoration:none;text-transform: uppercase;} 1323 +.rating {
  1324 + color: #555555;
  1325 + font-size: 11px; /* ! */
  1326 + font-family: tahoma; /* ! */
  1327 + width: 85px;
  1328 + height: 16px;
  1329 +}
57 1330
58 -a.link_sub:visited,a.link_sub:link,a.link_sub:hover{display:block;margin-top:10px;width:81px;height:29px;line-height:29px;background:url("../img/sub6.jpg") no-repeat;color:#464646;text-decoration:none;text-align:center;} 1331 +.unit-rating {
  1332 + list-style: none;
  1333 + margin: 0px;
  1334 + padding: 0px;
  1335 + width: 85px;
  1336 + height: 16px;
  1337 + position: relative;
  1338 + background-image: url(../img/rating.png);
  1339 + background-position: top left;
  1340 + background-repeat: repeat-x;
  1341 +}
59 1342
60 -a.link_pic1:visited,a.link_pic1:link,a.link_pic1:hover{display:block;float:left;background:#ffffff;width:144px;height:121px;text-align:center;overflow:hidden;}  
61 -a.link_pic2:visited,a.link_pic2:link,a.link_pic2:hover{display:block;float:left;background:#ffffff;width:100px;height:100px;text-align:center;overflow:hidden;margin-right:10px;}  
62 -a.link_pic4:visited,a.link_pic4:link,a.link_pic4:hover{display:block;background:#ffffff;width:144px;height:121px;text-align:center;overflow:hidden;margin:0px auto;} 1343 +.unit-rating li {
  1344 + text-indent: -90000px;
  1345 + padding: 0px;
  1346 + margin: 0px;
  1347 + float: left;
  1348 +}
63 1349
64 -a.link_video:visited,a.link_video:link,a.link_video:hover{color:#0055a6;padding-left:25px;background:url('../img/ico_video.png') left no-repeat;} 1350 +.unit-rating li a {
  1351 + display: block;
  1352 + width: 17px;
  1353 + height: 16px;
  1354 + text-decoration: none;
  1355 + text-indent: -9000px;
  1356 + z-index: 17;
  1357 + position: absolute;
  1358 + padding: 0px;
  1359 +}
65 1360
66 -a.sbcModal_a:visited,a.sbcModal_a:link{display:block;float:left;margin-left1:15px;width:139px;height:28px;line-height:28px;text-align:center;color:#ffffff;text-decoration:none;background:url('../img/sub_pay.jpg') no-repeat;}  
67 -a.sbcModal_a:hover{background-position:0px -28px;}  
68 -a.sbcModal_a span1{display:none;} 1361 +.unit-rating li a:hover {
  1362 + background-image: url(../img/rating.png);
  1363 + background-position: left center;
  1364 + z-index: 2;
  1365 + left: 0px;
  1366 +}
69 1367
70 -a.status:visited,a.status:link{display:block;float:left;margin-left:5px;width:95px;height:28px;line-height:28px;text-align:center;color:#ffffff;font-size:10px;text-decoration:none;;background:url('../img/sub_status.jpg') no-repeat;}  
71 -a.status:hover{background-position:0px -28px;}  
72 -a.status span1{display:none;} 1368 +.unit-rating a.r1-unit {
  1369 + left: 0px;
  1370 +}
73 1371
74 -a.credit:visited,a.credit:link{display:block;float:left;margin-top:2px;width:238px;height:28px;line-height:28px;text-align:center;color:#000000;text-decoration:none;background:url('../img/button_credit.png') no-repeat;}  
75 -a.credit:hover{background-position:0px -28px;}  
76 -a.credit span1{display:none;} 1372 +.unit-rating a.r1-unit:hover {
  1373 + width: 17px;
  1374 +}
77 1375
78 -.top{height:130px;width:1000px;text-align:left;margin:0px auto;} 1376 +.unit-rating a.r2-unit {
  1377 + left: 17px;
  1378 +}
79 1379
80 -.logo{padding:0px 45px 0px 0px;float:left;}  
81 -.logo span{display:none;}  
82 -.logo h1{padding:0px;margin:0px;}  
83 -.logo a{display: block;width:198px;height:108px;background:url("../img/logo.jpg");}  
84 -  
85 -.search_top{float:left;padding:10px 0px 0px 0px;text-align:center;width:500px;}  
86 -.search_top input[type="text"]{float:left;width:300px;height:34px;line-height:34px;border:none;background:url("../img/inp.jpg") repeat-x;outline:0}  
87 -.inp_l{float:left;width:8px;height:34px;background:url("../img/inp_l.jpg") no-repeat;}  
88 -.search_top input[type="submit"],.submit_search{float:left;width:71px;height:34px;border:none;background:url("../img/inp_submit.jpg") no-repeat;cursor:pointer;}  
89 -.slogan{color:#474747;font-size:18px;padding-top:5px;}  
90 -.search_form{padding-left:50px;}  
91 -  
92 -.inp_search{float:left;width:168px;height:34px;line-height:34px;border:none;background:url("../img/inp.jpg") repeat-x;outline:0}  
93 -  
94 -  
95 -.tel{font-size:14px;color:#424242;padding-bottom1:10px;}  
96 -.tel span{color:#42a725;font-size:15px;font-weight:bold;}  
97 -.tel span.b{color:#424242;font-weight:bold;}  
98 -  
99 -.hotline{font-size:14px;color:#424242;font-weight:bold;padding-bottom:5px;}  
100 -.hotline span,.hotline a{color:#42a725;font-size:15px;font-weight:bold;}  
101 -  
102 -.basket_top{padding-top:15px;float:right;text-align:right;width:240px;}  
103 -.basket_box{background:url("../img/ico_basket.jpg") left bottom no-repeat;height:36px;margin-bottom:5px;}  
104 -.count_p{float:left;color:#ffffff;font-size:14px;padding-left:22px;padding-top:4px;}  
105 -.basket_box a{padding-top:10px;font-size:14px;font-weight:bold;color:#42a725;text-transform: uppercase;}  
106 -.txtb2{padding-top:10px;font-size:14px;font-weight:bold;color:#42a725;text-transform: uppercase;margin-left:20px;float:left;}  
107 -.txtb{font-weight:bold;}  
108 -.txtb14{font-weight:bold;font-size:14px;}  
109 -.txtblue{color:#07569b;text-decoration:underline;}  
110 -  
111 -.menu{height:40px;background:#50ae34;z-index:98;width:100%;}  
112 -.menu .wrp{width:1000px;text-align:left;margin:0px auto;}  
113 -.menu ul{list-style:none;margin:0px;padding:0px;position:relative;}  
114 -.menu ul li{float:left;background:url("../img/m_h.jpg") center right no-repeat;}  
115 -.menu ul li > a{float:left;padding:12px 20px;font-size:14px;font-weight:normal;color:#ffffff;text-decoration:none;}  
116 -.menu ul li > a:hover{color:#fff201;}  
117 -.menu ul li.active > a{color:#fff201;}  
118 -.menu ul li.first > a{font-weight:bold;text-transform: uppercase;padding:0px 10px;height:40px;line-height:40px;float:left;background:url("../img/m_a.jpg") center repeat-x;color:#474747;}  
119 -.menu ul li.first span.r{float:left;width:31px;height:40px;background:url("../img/m_a_r.jpg") center no-repeat;}  
120 -.menu ul li.first span.l{float:left;width:5px;height:40px;background:url("../img/m_a_l.jpg") center no-repeat;}  
121 -.menu ul li.first:hover > a{padding:0px 10px 0px 9px;height:43px;line-height:38px;float:left;background:url("../img/mh_a.jpg") center repeat-x;color:#474747;position:relative;z-index:1999;bottom:-1px;}  
122 -.menu ul li.first:hover span.r{float:left;width:31px;height:43px;background:url("../img/mh_a_r.jpg") center no-repeat;position:relative;z-index:1999;bottom:-1px;}  
123 -.menu ul li.first:hover span.l{float:left;width:6px;height:43px;background:url("../img/mh_a_l.jpg") center no-repeat;position:relative;z-index:1999;bottom:-1px;}  
124 -  
125 -.menup{position:absolute;z-index:9999;top:-999em;border:2px solid #c1c1c1;border-radius:5px 5px 5px 5px;width:960px;padding:10px 20px;  
126 -background:#ffffff;}  
127 -.menu ul li:hover .menup{left:0;top:40px;}  
128 -  
129 -  
130 -#slides{width:1000px;text-align:left;margin:0px auto;padding-top:10px;position:relative;z-index:888;}  
131 -  
132 -  
133 -.site{width:1000px;text-align:left;margin:0px auto;padding-top:10px;min-height:600px;background:#ffffff;}  
134 -  
135 -  
136 -ul.list{list-style:none;margin:0px;padding:0px;position:relative;z-index:5;}  
137 -ul.list li{float:left;margin-right:-7px;z-index:4;position:relative;}  
138 -ul.list li.red a{float:left;height:32px;line-height:32px;padding:0px 10px 0px 10px;font-size:14px;font-weight:bold;color:#ffffff;text-decoration:none;text-transform: uppercase;background:url("../img/l_bg_r.png") bottom repeat-x;}  
139 -ul.list li.red span.r{float:left;height:32px;width:19px;background:url("../img/l_r_r.png") left bottom no-repeat;}  
140 -ul.list li.red span.l{float:left;height:32px;width:9px;background:url("../img/l_l_r.png") right bottom no-repeat;}  
141 -  
142 -ul.list li.green a{float:left;height:32px;line-height:32px;padding:0px 20px 0px 20px;font-size:14px;font-weight:bold;color:#ffffff;text-decoration:none;text-transform: uppercase;background:url("../img/l_bg_g.png") bottom repeat-x;}  
143 -ul.list li.green span.r{float:left;height:32px;width:19px;background:url("../img/l_r_g.png") left bottom no-repeat;}  
144 -ul.list li.green span.l{float:left;height:32px;width:9px;background:url("../img/l_l_g.png") right bottom no-repeat;margin-left:-2px;}  
145 -ul.list li.green span.l2{float:left;height:32px;width:9px;background:url("../img/l_l_g2.png") right bottom no-repeat;margin-left:-2px;}  
146 -  
147 -ul.list li.active{z-index:5;}  
148 -ul.list li.active span.l{float:left;height:33px;width:8px;background:url("../img/l_l.png") right bottom no-repeat;}  
149 -ul.list li.active span.r{float:left;height:33px;width:20px;background:url("../img/l_r.png") left bottom no-repeat;}  
150 -ul.list li.active a{float:left;height:33px;line-height:33px;padding:0px 10px 0px 10px;font-size:14px;font-weight:bold;color:#595959;text-decoration:none;text-transform: uppercase;background:url("../img/l_bg.jpg") repeat-x;}  
151 -ul.list li a{float:left;height:32px;line-height:32px;padding:0px 10px 0px 10px;font-size:14px;font-weight:bold;color:#595959;text-decoration:none;text-transform: uppercase;background:url("../img/l_bg_a.png") bottom repeat-x;}  
152 -ul.list li span.r{float:left;height:32px;width:19px;background:url("../img/l_r_a.png") left bottom no-repeat;}  
153 -ul.list li span.l{float:left;height:32px;width:7px;background:url("../img/l_l_a.png") right bottom no-repeat;}  
154 -  
155 -ul.list2{list-style:none;margin:0px 0px 35px 0px;padding:0px;position:relative;z-index:5;}  
156 -ul.list2 li{float:left;margin-right:20px;z-index:4;position:relative;}  
157 -ul.list2 li a{float:left;font-size:14px;font-weight:bold;color:#595959;text-decoration:underline;text-transform: uppercase;}  
158 -ul.list2 li.active a{color:#4c973c;text-decoration:none;}  
159 -  
160 -.box_br{border:2px solid #c1c1c1;border-radius:5px 5px 5px 5px;padding:15px;color:#363636;}  
161 -.box_br .txtb{margin-bottom:10px;}  
162 -  
163 -.account-menu{margin-top:10px;background:#f8f8f8;border:2px solid #c1c1c1;border-radius:5px 5px 5px 5px;padding:15px;color:#363636;}  
164 -.account-menu ul{list-style:none;margin:0px;padding:0px;}  
165 -.account-menu ul li{padding:3px 0px;}  
166 -.account-menu ul ul li{padding:3px 20px;}  
167 -  
168 -.tab_container {z-index:4;  
169 - position:relative;margin-top:-2px;  
170 - border-top:2px solid #c1c1c1;  
171 - border-left:2px solid #c1c1c1;  
172 - border-right:2px solid #c1c1c1;  
173 - border-bottom:2px solid #c1c1c1;  
174 - clear: both;  
175 - float: left;  
176 - width: 996px;  
177 - background: #fff;  
178 - border-radius:0px 5px 0px 5px;overflow:hidden ;  
179 -  
180 -}  
181 -.tab_container2 {z-index:4;  
182 - position:relative;margin-top:-2px;  
183 - border-top:2px solid #c1c1c1;  
184 - border-left:2px solid #c1c1c1;  
185 - border-right:2px solid #c1c1c1;  
186 - border-bottom:2px solid #c1c1c1;  
187 - clear: both;  
188 - float: left;  
189 - width: 490px;  
190 - background: #fff;  
191 - border-radius:0px 5px 0px 5px;overflow:hidden ;  
192 -  
193 -}  
194 -.tab_container3 {z-index:4;  
195 - position:relative;  
196 - overflow:hidden;  
197 -}  
198 -.tab_container2 ul{list-style-image: url("../img/li.gif");margin:0px 0px 0px 10px;padding:0px;}  
199 -#etab1{border-radius:0px 5px 0px 5px;}  
200 -#etab11,#etab12,#etab13,#etab51{background:url("../img/rhbg.jpg") repeat-y;border-radius:0px 5px 0px 5px;}  
201 -#etab11_n,#etab12_n{background:url("../img/rhbg2.jpg") repeat-y;border-radius:0px 5px 0px 5px;}  
202 -.rd{border-radius:0px 5px 5px 5px;}  
203 -.rd2{border-radius:0px 5px 0px 5px;overflow:visible;}  
204 -.tab_content,.tab_content4,.tab_content3{padding:10px 20px;}  
205 -.tab_content2,.tab_content5{padding:10px 0px;}  
206 -  
207 -.cont_box{  
208 - border-left:2px solid #c1c1c1;  
209 - border-right:2px solid #c1c1c1;  
210 - border-bottom:2px solid #c1c1c1;  
211 - border-radius:0px 0px 5px 5px;  
212 - padding:20px;  
213 -}  
214 -  
215 -#etab1{padding-right:0px;}  
216 -.rowlbar{float:left;margin-right:17px;}  
217 -.row{width:220px;float:left;margin-right1:17px;padding-top:20px;padding-right:10px;}  
218 -.n{background:none;margin-right:0px;padding-right:0px;border:1px solid red;width:213px;}  
219 -.row a{display:block;text-decoration:none;color: #323232;}  
220 -.row a:hover{color: #50AE34;}  
221 -.title2{color:#5E655E;font-size:12px;font-weight:bold;text-transform: uppercase;}  
222 -.title2 a:visited, .title2 a:link{font-size:14px;font-weight:bold;color: #000000;text-decoration: none;}  
223 -.title2 a:hover {color:#EE1C25;text-decoration: underline;}  
224 -.box2{padding:10px 0px 10px 0px;}  
225 -hr {  
226 - color: #e0e0e0; /*äëÿ IE */  
227 - background-color:#e0e0e0; /*äëÿ Firefox, Opera, Safari*/  
228 - border:0px none;  
229 - height:1px; /* âûñîòà 1px IE, Firefox, Opera, Safari */  
230 - clear:both; /* äëÿ î÷èñòêè, åñëè òåã èäåò ïîñëå float åëåìåíòà */  
231 - margin-bottom:15px;  
232 -}  
233 -  
234 -a.view-source:visited,a.view-source:link,a.view-source:hover{  
235 - float:right;text-decoration: none;  
236 - background:#707070;  
237 - color:#ffffff;  
238 - padding:5px 10px;  
239 - border-left:2px solid #c1c1c1;  
240 - border-right:2px solid #c1c1c1;  
241 - border-bottom:2px solid #c1c1c1;  
242 - border-radius:0px 0px 10px 10px;  
243 -}  
244 -a.view-source2:visited,a.view-source2:link,a.view-source2:hover{  
245 - position:relative;margin-bottom:-29px;bottom:-10px;right:-2px;  
246 - margin-bottom1:-140px;margin-right1:-2px;  
247 - float:right;text-decoration: none;  
248 - background:#707070;  
249 - color:#ffffff;  
250 - padding:5px 10px;  
251 - border-left:2px solid #c1c1c1;  
252 - border-right:2px solid #c1c1c1;  
253 - border-bottom:2px solid #c1c1c1;  
254 - border-radius:0px 0px 10px 10px;  
255 -}  
256 -.mrt{margin-top:10px;}  
257 -.cost{color:#474747;font-size:14px;font-weight:bold;}  
258 -.fotter_bg{background:#c2c2c2;color:#ffffff;margin-top:20px;}  
259 -.fotter{width:1000px;text-align:left;margin:0px auto;padding:40px 0px;}  
260 -.txtc{text-align:center;overflow:hidden;}  
261 -.txtr{text-align:right;}  
262 -.fotter ul{list-style:none;margin:0px;padding:0px;}  
263 -.fotter ul li{display:inline;margin:0px 5px;}  
264 -.fotter ul li a{font-size:14px;text-decoration:none;}  
265 -  
266 -.item_news{border-bottom:1px solid #C8C8C8;padding-bottom:5px;margin-bottom:5px;}  
267 -.rgh{text-align:right;}  
268 -  
269 -.products{}  
270 -.row_product:hover{background:#fffeea;}  
271 -.products .row_product{border-bottom:1px solid #C8C8C8;}  
272 -.products .row_product2{border-bottom:1px solid #C8C8C8;padding-bottom:10px;margin-bottom:10px;}  
273 -.products .row_product .wrp{padding:15px;}  
274 -.products .pr_t{height:25px;line-height:25px;background:url('img/prbg.jpg') repeat-x;text-transform: uppercase;color:#419B29;font-weight:bold;text-indent: 20px;}  
275 -.products .pr_t .l{background:url('img/prl.jpg') left top no-repeat;}  
276 -.products .pr_t .r{background:url('img/prr.jpg') right top no-repeat;}  
277 -.products .infob{overflow:hidden ;padding:0px 10px 0px 10px;background:url('img/tk.jpg') right repeat-y;height:120px;}  
278 -.products .infor{float:right;height1:120px;width:180px;padding-top:0px;}  
279 -.products .infob p{padding-top:5px;text-indent: 10px;}  
280 -.product_box .infob h1{display:inline;}  
281 -.product_box .infob a.f18{font-size:18px;}  
282 -  
283 -.product_box .infor{float:right;height1:120px;width:150px;padding-top:0px;}  
284 -.navig{padding-bottom:10px;}  
285 -.product_box .infob{overflow:hidden ;padding:0px 20px 0px 20px;}  
286 -.product_box .row_product2{border-bottom:1px solid #C8C8C8;padding-bottom:10px;margin-bottom:10px;}  
287 -  
288 -.title3{margin-top:10px;height:41px;line-height1:41px;text-indent1:20px;background:#50ae36;color:#ffffff;font-size:13px;font-weight:bold;text-transform: uppercase;margin-bottom1:20px;}  
289 -.title3 .l{background:url('../img/t_l.jpg') left top no-repeat;}  
290 -.title3 .r{background:url('../img/t_r.jpg') right top no-repeat;}  
291 -.title3 .w{padding-top:12px;padding-right:20px;padding-left:20px;}  
292 -.title3 span{height:19px;line-height:19px;background:url('../img/t_abg.jpg') repeat-x;color:#414141;text-align:center;text-transform:lowercase;font-weight:normal;}  
293 -.title3 h2,.title3 h1,.title3 .h1{color:#ffffff;font-size:13px;font-weight:bold;display:inline;}  
294 -  
295 -  
296 -.leftbar{float:left;width:245px;}  
297 -.leftbar2{float:left;width:220px;}  
298 -.content {overflow:hidden;padding:0px 0px 0px 15px;margin-bottom:20px;}  
299 -* html .content{height:1%;}  
300 -  
301 -  
302 -.perPage{text-align:right;float:right;}  
303 -.pager{font-weight:normal;margin-bottom:5px;text-decoration: none;margin-bottom:20px;}  
304 -a.link_class{padding:3px;color:#545454;font-weight:bold;text-decoration: none;font-size:12px;}  
305 -.link_class_active{padding:3px;color:#07569b;font-weight:bold;text-decoration: none;font-size:12px;}  
306 -  
307 -  
308 -.ft{width:245px;height:8px;background:url('../img/ft.jpg') no-repeat;}  
309 -.fb{width:245px;height:8px;background:url('../img/fb.jpg') no-repeat;}  
310 -.fbg{width:245px;background:url('../img/fbg.jpg') repeat-y;}  
311 -.fbg .wrp{padding:10px;}  
312 -.fbg span{font-weight:bold;font-size:14px;color:#525252;}  
313 -.fbg select{width:100%;border:1px solid #a4a4a4;border-radius:5px;height:25px;} 1380 +.unit-rating a.r2-unit:hover {
  1381 + width: 34px;
  1382 +}
314 1383
315 -.rating {  
316 - color: #555555;  
317 - font-size: 11px; /* ! */  
318 - font-family: tahoma; /* ! */  
319 - width: 85px;  
320 - height: 16px; 1384 +.unit-rating a.r3-unit {
  1385 + left: 34px;
321 } 1386 }
322 -.unit-rating {  
323 - list-style: none;  
324 - margin: 0px;  
325 - padding: 0px;  
326 - width: 85px;  
327 - height: 16px;  
328 - position: relative;  
329 - background-image: url(../img/rating.png);  
330 - background-position: top left;  
331 - background-repeat: repeat-x; 1387 +
  1388 +.unit-rating a.r3-unit:hover {
  1389 + width: 51px;
332 } 1390 }
333 -.unit-rating li {  
334 - text-indent: -90000px;  
335 - padding: 0px;  
336 - margin: 0px;  
337 - float: left; 1391 +
  1392 +.unit-rating a.r4-unit {
  1393 + left: 51px;
338 } 1394 }
339 -.unit-rating li a {  
340 - display: block;  
341 - width: 17px;  
342 - height: 16px;  
343 - text-decoration: none;  
344 - text-indent: -9000px;  
345 - z-index: 17;  
346 - position: absolute;  
347 - padding: 0px; 1395 +
  1396 +.unit-rating a.r4-unit:hover {
  1397 + width: 68px;
348 } 1398 }
349 -.unit-rating li a:hover {  
350 - background-image: url(../img/rating.png);  
351 - background-position: left center;  
352 - z-index: 2;  
353 - left: 0px;  
354 -}  
355 -.unit-rating a.r1-unit { left: 0px; }  
356 -.unit-rating a.r1-unit:hover { width: 17px; }  
357 -.unit-rating a.r2-unit { left: 17px; }  
358 -.unit-rating a.r2-unit:hover { width: 34px; }  
359 -.unit-rating a.r3-unit { left: 34px; }  
360 -.unit-rating a.r3-unit:hover { width: 51px; }  
361 -.unit-rating a.r4-unit { left: 51px; }  
362 -.unit-rating a.r4-unit:hover { width: 68px; }  
363 -.unit-rating a.r5-unit { left: 68px; }  
364 -.unit-rating a.r5-unit:hover { width: 85px; } 1399 +
  1400 +.unit-rating a.r5-unit {
  1401 + left: 68px;
  1402 +}
  1403 +
  1404 +.unit-rating a.r5-unit:hover {
  1405 + width: 85px;
  1406 +}
  1407 +
365 .unit-rating li.current-rating { 1408 .unit-rating li.current-rating {
366 - background-image: url(../img/rating.png);  
367 - background-position: left bottom;  
368 - position: absolute;  
369 - height: 16px;  
370 - display: block;  
371 - text-indent: -9000px;  
372 - z-index: 1;  
373 -}  
374 - #inputArea  
375 - {  
376 - font-family: Arial, Sans-Serif;  
377 - font-size: 13px;  
378 - padding: 10px;  
379 - }  
380 - .activeField  
381 - {  
382 - background-image: none;  
383 - background-color: #ffffff;  
384 - border: solid 2px #0FAFBD;border-radius:5px;  
385 - font-family: Arial, Sans-Serif;  
386 - font-size: 13px;  
387 - margin-bottom: 5px;  
388 - display: block;  
389 - padding: 5px;width:350px;  
390 - }  
391 - .idle  
392 - {  
393 - border: solid 2px #c2c2c2;border-radius:5px;  
394 - background-image: url( '../img/gray_bg.png' );  
395 - background-repeat: repeat-x;  
396 - background-position: top;  
397 - background-color:#FFFFFF;  
398 - font-family: Arial, Sans-Serif;  
399 - font-size: 13px;  
400 - margin-bottom: 5px;  
401 - display: block;  
402 - padding: 5px;width:350px;  
403 -  
404 - }  
405 -  
406 -.red{color:red;}  
407 -.itemsbox label{display:block;padding:5px 0px;} 1409 + background-image: url(../img/rating.png);
  1410 + background-position: left bottom;
  1411 + position: absolute;
  1412 + height: 16px;
  1413 + display: block;
  1414 + text-indent: -9000px;
  1415 + z-index: 1;
  1416 +}
  1417 +
  1418 +#inputArea {
  1419 + font-family: Arial, Sans-Serif;
  1420 + font-size: 13px;
  1421 + padding: 10px;
  1422 +}
  1423 +
  1424 +.activeField {
  1425 + background-image: none;
  1426 + background-color: #ffffff;
  1427 + border: solid 2px #0FAFBD;
  1428 + border-radius: 5px;
  1429 + font-family: Arial, Sans-Serif;
  1430 + font-size: 13px;
  1431 + margin-bottom: 5px;
  1432 + display: block;
  1433 + padding: 5px;
  1434 + width: 350px;
  1435 +}
  1436 +
  1437 +.idle {
  1438 + border: solid 2px #c2c2c2;
  1439 + border-radius: 5px;
  1440 + background-image: url('../img/gray_bg.png');
  1441 + background-repeat: repeat-x;
  1442 + background-position: top;
  1443 + background-color: #FFFFFF;
  1444 + font-family: Arial, Sans-Serif;
  1445 + font-size: 13px;
  1446 + margin-bottom: 5px;
  1447 + display: block;
  1448 + padding: 5px;
  1449 + width: 350px;
  1450 +
  1451 +}
  1452 +
  1453 +.red {
  1454 + color: red;
  1455 +}
  1456 +
  1457 +.itemsbox label {
  1458 + display: block;
  1459 + padding: 5px 0px;
  1460 +}
  1461 +
408 #login_social_vkontakte { 1462 #login_social_vkontakte {
409 background: url("../img/sprite_gif22_new.gif") no-repeat scroll -340px -67px transparent; 1463 background: url("../img/sprite_gif22_new.gif") no-repeat scroll -340px -67px transparent;
410 } 1464 }
@@ -416,190 +1470,635 @@ a.link_class{padding:3px;color:#545454;font-weight:bold;text-decoration: none;fo @@ -416,190 +1470,635 @@ a.link_class{padding:3px;color:#545454;font-weight:bold;text-decoration: none;fo
416 #login_social_twitter { 1470 #login_social_twitter {
417 background: url("../img/sprite_gif22_new.gif") no-repeat scroll -102px -67px transparent; 1471 background: url("../img/sprite_gif22_new.gif") no-repeat scroll -102px -67px transparent;
418 } 1472 }
419 -div.signup div.col-2 {float: left; padding-top:20px; width:210px;}  
420 - div.signup div.col-3 span.noaccount {font-size: 14px; margin-left: 10px;}  
421 - div.signup div.col-3 span.registration {font-size: 16px;display: block;}  
422 - div.col-3 span.remind { display: block; text-transform: lowercase; margin-bottom: 15px;}  
423 - div.signup div.col-3 {padding-top: 20px;text-align: center;width:400px;}  
424 -  
425 -.block_info_item2{border-bottom:1px solid #C8C8C8;padding-bottom:15px;margin-bottom:15px;}  
426 -.item_news{border-bottom:1px solid #C8C8C8;padding-bottom:5px;margin-bottom:5px;}  
427 -.date{color:#0B4B89;font-size:11px;}  
428 -#.pic{border:3px solid #E3E1E4;}  
429 -.right{margin-right:25px;}  
430 -.box_brend{float:left;width:165px;height:100px;text-align:center;}  
431 -.box_brend2{float:left;width:159px;height:100px;text-align:center;}  
432 -.bgcontact{background:url('../img/bgcontact.jpg');width:363px;height:136px;font-weight:bold;padding:0px 10px 0px 0px;}  
433 -.tr{background:#898989;color:#ffffff;font-weight:bold;}  
434 -.cost_box{background:#ebebeb url('../img/box_bg.jpg') top repeat-x;padding:20px;border:1px solid #cccccc;border-radius:5px;  
435 - -webkit-box-shadow: 0 0 10px #a4a4a4;  
436 - -moz-box-shadow: 0 0 10px #a4a4a4;  
437 - box-shadow: 0 0 10px #a4a4a4;  
438 -}  
439 -  
440 -  
441 -#compare{position:fixed;right:0px;top:370px;display:none;}  
442 -#compare span{display:none;}  
443 -#compare a{display:block;width:43px;height:144px;background:url('../img/compare.jpg');}  
444 -  
445 -.list_rubric{color:#3D946A;font-size:14px;padding-top:10px;}  
446 -.box5{background:#F5F5F5;padding:5px;border-bottom:4px solid #CACACA;border-top:4px solid #CACACA;}  
447 -.products_list_row{width:160px;float:left;margin:0px 19px 0px 19px;}  
448 -.mt{margin-top:10px;margin-left:30px;}  
449 -.name2{padding:5px 0px 0px 0px;height:50px;}  
450 -  
451 -.row_adv{margin-bottom:10px;}  
452 -.row_adv .pic{margin-right:10px;}  
453 -  
454 -.boxrp{}  
455 -.boxrp .t{background:#ededed url('../img/br_t.jpg') top repeat-x;border-radius:5px;}  
456 -.boxrp .l{background:url('../img/br_l.jpg') left repeat-y;border-radius:5px;}  
457 -.boxrp .lt{background:url('../img/br_lt.jpg') left top no-repeat;}  
458 -.boxrp .wrp{padding:10px 30px 20px 30px;}  
459 -  
460 -.box_sort{padding:20px 20px;}  
461 -select{border:1px solid #a4a4a4;border-radius:5px;height:25px;}  
462 -  
463 -.submit{border:none;min-width:94px;height:27px;background:url('../img/sub3.jpg') center no-repeat;color:#454545;cursor:pointer;}  
464 -.submit4{border:none;width:150px;height:29px;background:url('../img/sub4.jpg') no-repeat;color:#ffffff;cursor:pointer;text-transform: uppercase;font-size:11px;}  
465 -.submit5{border:none;width:87px;height:29px;line-height:29px;background:url("../img/kupit.jpg") no-repeat;color:#ffffff;cursor:pointer;}  
466 -.submit_large{border:none;width:255px;height:56px;padding:0px 43px;background:url('../img/submit_large.jpg') no-repeat;color:#ffffff;font-size:16px;cursor:pointer;word-wrap:break-word;}  
467 -  
468 -.attention{float:right;color:#f46523;margin:20px 100px 0px 0px;}  
469 -  
470 -.bar_products_parent{float:right;width:220px;}  
471 -.head{background:#969696;color:#ffffff;font-weight:bold;text-align:center;height:30px;line-height:30px;border-radius:5px 5px 0px 0px;}  
472 -.box_products{  
473 - border-left:2px solid #c1c1c1;  
474 - border-right:2px solid #c1c1c1;  
475 - border-bottom:2px solid #c1c1c1;  
476 - padding:0px 10px;margin-bottom:20px;  
477 -}  
478 -.product{text-align:center;padding:20px 0px;border-bottom:1px solid #c1c1c1;}  
479 -.pic_box{border:3px solid #E3E1E4;float:left;width:120px;height:100px;text-align:center;margin-right:10px;overflow:hidden;}  
480 -  
481 -.info{line-height:30px;}  
482 -.row2{clear:both;}  
483 -.row2 label{display:block;}  
484 - .line {  
485 - border-bottom: 1px solid #ADADAF;  
486 - margin: 5px;  
487 - width: 100%;  
488 - }  
489 - div.interest-block div.common,  
490 - div.interest-block div.interst {padding-left: 60px;}  
491 - div.interest-block div.title {margin-top:20px;}  
492 - div.interest-block div.th {font-weight: bold;display:block; padding-bottom:6px;}  
493 - div.interest-block span { padding-bottom:6px;display: table-cell;}  
494 - div.choice {display: block;margin-bottom: 10px;}  
495 - div.column {float:left; min-width:150px;}  
496 - 1473 +
  1474 +div.signup div.col-2 {
  1475 + float: left;
  1476 + padding-top: 20px;
  1477 + width: 210px;
  1478 +}
  1479 +
  1480 +div.signup div.col-3 span.noaccount {
  1481 + font-size: 14px;
  1482 + margin-left: 10px;
  1483 +}
  1484 +
  1485 +div.signup div.col-3 span.registration {
  1486 + font-size: 16px;
  1487 + display: block;
  1488 +}
  1489 +
  1490 +div.col-3 span.remind {
  1491 + display: block;
  1492 + text-transform: lowercase;
  1493 + margin-bottom: 15px;
  1494 +}
  1495 +
  1496 +div.signup div.col-3 {
  1497 + padding-top: 20px;
  1498 + text-align: center;
  1499 + width: 400px;
  1500 +}
  1501 +
  1502 +.block_info_item2 {
  1503 + border-bottom: 1px solid #C8C8C8;
  1504 + padding-bottom: 15px;
  1505 + margin-bottom: 15px;
  1506 +}
  1507 +
  1508 +.item_news {
  1509 + border-bottom: 1px solid #C8C8C8;
  1510 + padding-bottom: 5px;
  1511 + margin-bottom: 5px;
  1512 +}
  1513 +
  1514 +.date {
  1515 + color: #0B4B89;
  1516 + font-size: 11px;
  1517 +}
  1518 +
  1519 +#
  1520 +.pic {
  1521 + border: 3px solid #E3E1E4;
  1522 +}
  1523 +
  1524 +.right {
  1525 + margin-right: 25px;
  1526 +}
  1527 +
  1528 +.box_brend {
  1529 + float: left;
  1530 + width: 165px;
  1531 + height: 100px;
  1532 + text-align: center;
  1533 +}
  1534 +
  1535 +.box_brend2 {
  1536 + float: left;
  1537 + width: 159px;
  1538 + height: 100px;
  1539 + text-align: center;
  1540 +}
  1541 +
  1542 +.bgcontact {
  1543 + background: url('../img/bgcontact.jpg');
  1544 + width: 363px;
  1545 + height: 136px;
  1546 + font-weight: bold;
  1547 + padding: 0px 10px 0px 0px;
  1548 +}
  1549 +
  1550 +.tr {
  1551 + background: #898989;
  1552 + color: #ffffff;
  1553 + font-weight: bold;
  1554 +}
  1555 +
  1556 +.cost_box {
  1557 + background: #ebebeb url('../img/box_bg.jpg') top repeat-x;
  1558 + padding: 20px;
  1559 + border: 1px solid #cccccc;
  1560 + border-radius: 5px;
  1561 + -webkit-box-shadow: 0 0 10px #a4a4a4;
  1562 + -moz-box-shadow: 0 0 10px #a4a4a4;
  1563 + box-shadow: 0 0 10px #a4a4a4;
  1564 +}
  1565 +
  1566 +#compare {
  1567 + position: fixed;
  1568 + right: 0px;
  1569 + top: 370px;
  1570 + display: none;
  1571 +}
  1572 +
  1573 +#compare span {
  1574 + display: none;
  1575 +}
  1576 +
  1577 +#compare a {
  1578 + display: block;
  1579 + width: 43px;
  1580 + height: 144px;
  1581 + background: url('../img/compare.jpg');
  1582 +}
  1583 +
  1584 +.list_rubric {
  1585 + color: #3D946A;
  1586 + font-size: 14px;
  1587 + padding-top: 10px;
  1588 +}
  1589 +
  1590 +.box5 {
  1591 + background: #F5F5F5;
  1592 + padding: 5px;
  1593 + border-bottom: 4px solid #CACACA;
  1594 + border-top: 4px solid #CACACA;
  1595 +}
  1596 +
  1597 +.products_list_row {
  1598 + width: 160px;
  1599 + float: left;
  1600 + margin: 0px 19px 0px 19px;
  1601 +}
  1602 +
  1603 +.mt {
  1604 + margin-top: 10px;
  1605 + margin-left: 30px;
  1606 +}
  1607 +
  1608 +.name2 {
  1609 + padding: 5px 0px 0px 0px;
  1610 + height: 50px;
  1611 +}
  1612 +
  1613 +.row_adv {
  1614 + margin-bottom: 10px;
  1615 +}
  1616 +
  1617 +.row_adv .pic {
  1618 + margin-right: 10px;
  1619 +}
  1620 +
  1621 +.boxrp {
  1622 +}
  1623 +
  1624 +.boxrp .t {
  1625 + background: #ededed url('../img/br_t.jpg') top repeat-x;
  1626 + border-radius: 5px;
  1627 +}
  1628 +
  1629 +.boxrp .l {
  1630 + background: url('../img/br_l.jpg') left repeat-y;
  1631 + border-radius: 5px;
  1632 +}
  1633 +
  1634 +.boxrp .lt {
  1635 + background: url('../img/br_lt.jpg') left top no-repeat;
  1636 +}
  1637 +
  1638 +.boxrp .wrp {
  1639 + padding: 10px 30px 20px 30px;
  1640 +}
  1641 +
  1642 +.box_sort {
  1643 + padding: 20px 20px;
  1644 +}
  1645 +
  1646 +select {
  1647 + border: 1px solid #a4a4a4;
  1648 + border-radius: 5px;
  1649 + height: 25px;
  1650 +}
  1651 +
  1652 +.submit {
  1653 + border: none;
  1654 + min-width: 94px;
  1655 + height: 27px;
  1656 + background: url('../img/sub3.jpg') center no-repeat;
  1657 + color: #454545;
  1658 + cursor: pointer;
  1659 +}
  1660 +
  1661 +.submit4 {
  1662 + border: none;
  1663 + width: 150px;
  1664 + height: 29px;
  1665 + background: url('../img/sub4.jpg') no-repeat;
  1666 + color: #ffffff;
  1667 + cursor: pointer;
  1668 + text-transform: uppercase;
  1669 + font-size: 11px;
  1670 +}
  1671 +
  1672 +.submit5 {
  1673 + border: none;
  1674 + width: 87px;
  1675 + height: 29px;
  1676 + line-height: 29px;
  1677 + background: url("../img/kupit.jpg") no-repeat;
  1678 + color: #ffffff;
  1679 + cursor: pointer;
  1680 +}
  1681 +
  1682 +.submit_large {
  1683 + border: none;
  1684 + width: 255px;
  1685 + height: 56px;
  1686 + padding: 0px 43px;
  1687 + background: url('../img/submit_large.jpg') no-repeat;
  1688 + color: #ffffff;
  1689 + font-size: 16px;
  1690 + cursor: pointer;
  1691 + word-wrap: break-word;
  1692 +}
  1693 +
  1694 +.attention {
  1695 + float: right;
  1696 + color: #f46523;
  1697 + margin: 20px 100px 0px 0px;
  1698 +}
  1699 +
  1700 +.bar_products_parent {
  1701 + float: right;
  1702 + width: 220px;
  1703 +}
  1704 +
  1705 +.head {
  1706 + background: #969696;
  1707 + color: #ffffff;
  1708 + font-weight: bold;
  1709 + text-align: center;
  1710 + height: 30px;
  1711 + line-height: 30px;
  1712 + border-radius: 5px 5px 0px 0px;
  1713 +}
  1714 +
  1715 +.box_products {
  1716 + border-left: 2px solid #c1c1c1;
  1717 + border-right: 2px solid #c1c1c1;
  1718 + border-bottom: 2px solid #c1c1c1;
  1719 + padding: 0px 10px;
  1720 + margin-bottom: 20px;
  1721 +}
  1722 +
  1723 +.product {
  1724 + text-align: center;
  1725 + padding: 20px 0px;
  1726 + border-bottom: 1px solid #c1c1c1;
  1727 +}
  1728 +
  1729 +.pic_box {
  1730 + border: 3px solid #E3E1E4;
  1731 + float: left;
  1732 + width: 120px;
  1733 + height: 100px;
  1734 + text-align: center;
  1735 + margin-right: 10px;
  1736 + overflow: hidden;
  1737 +}
  1738 +
  1739 +.info {
  1740 + line-height: 30px;
  1741 +}
  1742 +
  1743 +.row2 {
  1744 + clear: both;
  1745 +}
  1746 +
  1747 +.row2 label {
  1748 + display: block;
  1749 +}
  1750 +
  1751 +.line {
  1752 + border-bottom: 1px solid #ADADAF;
  1753 + margin: 5px;
  1754 + width: 100%;
  1755 +}
  1756 +
  1757 +div.interest-block div.common,
  1758 +div.interest-block div.interst {
  1759 + padding-left: 60px;
  1760 +}
  1761 +
  1762 +div.interest-block div.title {
  1763 + margin-top: 20px;
  1764 +}
  1765 +
  1766 +div.interest-block div.th {
  1767 + font-weight: bold;
  1768 + display: block;
  1769 + padding-bottom: 6px;
  1770 +}
  1771 +
  1772 +div.interest-block span {
  1773 + padding-bottom: 6px;
  1774 + display: table-cell;
  1775 +}
  1776 +
  1777 +div.choice {
  1778 + display: block;
  1779 + margin-bottom: 10px;
  1780 +}
  1781 +
  1782 +div.column {
  1783 + float: left;
  1784 + min-width: 150px;
  1785 +}
  1786 +
497 #share42 { 1787 #share42 {
498 - position: fixed1;  
499 - z-index: 1000;  
500 - margin-left1: -70px; /* ñìåùåíèå ïàíåëè âëåâî îò êðàÿ êîíòåíòà */  
501 - right:0px;  
502 - margin-top2:450px;  
503 - padding: 6px 6px 0;  
504 - background: #FFF;  
505 - border: 1px solid #E9E9E9;  
506 - -moz-border-radius: 4px;  
507 - border-radius: 4px; margin-bottom:5px;  
508 -}  
509 -* html #share42 {display: none} 1788 + position: fixed1;
  1789 + z-index: 1000;
  1790 + margin-left1: -70px;
  1791 + right: 0px;
  1792 + margin-top2: 450px;
  1793 + padding: 6px 6px 0;
  1794 + background: #FFF;
  1795 + border: 1px solid #E9E9E9;
  1796 + -moz-border-radius: 4px;
  1797 + border-radius: 4px;
  1798 + margin-bottom: 5px;
  1799 +}
  1800 +
  1801 +* html #share42 {
  1802 + display: none
  1803 +}
  1804 +
510 #share42:hover { 1805 #share42:hover {
511 - background: #F6F6F6;  
512 - border: 1px solid #D4D4D4;  
513 - -webkit-box-shadow: 0 0 5px #DDD;  
514 - -moz-box-shadow: 0 0 5px #DDD;  
515 - box-shadow: 0 0 5px #DDD;  
516 -}  
517 -#share42 a {opacity: 0.5}  
518 -#share42:hover a {opacity: 0.7}  
519 -#share42 a:hover {opacity: 1}  
520 -#share42 img {margin: 0 !important; padding: 0 !important; border: none !important;}  
521 -  
522 -.cabinet_box{  
523 - position: fixed;  
524 - left: 0;  
525 - top: 0;  
526 - width: 100%;  
527 - height: 100%;  
528 - z-index: 999; /* íóæíî åñëè â äîêóìåíòå åñòü ýëåìåíòû ñ z-index > 0 */  
529 -  
530 - background: #000;  
531 -filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); /* IE 5.5+*/  
532 --moz-opacity: 0.5; /* Mozilla 1.6 è íèæå */  
533 --khtml-opacity: 0.5; /* Konqueror 3.1, Safari 1.1 */  
534 -opacity: 0.5;  
535 -  
536 -}  
537 -  
538 -#cabinet_form{position:absolute;top:100px;z-index:1000;width:692px;height:310px;background:#ffffff;  
539 - -webkit-box-shadow: 0 0 15px #000;  
540 - -moz-box-shadow: 0 0 15px #000;  
541 - box-shadow: 0 0 15px #000;  
542 - border-radius:10px;  
543 -}  
544 -#cabinet_form .wrp{padding:20px;font-size:14px;line-height:30px;}  
545 -#cabinet_close{cursor:pointer;}  
546 -  
547 -#cabinet_form label{font-weight:bold;color:#388e1e;}  
548 -  
549 -#subscribe_form{position:absolute;top:100px;z-index:1000;width:692px;background:#ffffff;  
550 - -webkit-box-shadow: 0 0 15px #000;  
551 - -moz-box-shadow: 0 0 15px #000;  
552 - box-shadow: 0 0 15px #000;  
553 - border-radius:5px;  
554 - border:3px solid #6c6c6c;  
555 -}  
556 -#subscribe_form .wrp{padding:20px;font-size:14px;line-height:30px;}  
557 -  
558 -  
559 -.col1{float:left;}  
560 -.col2{float:left;width:350px;text-align:center;font-weight:bold;}  
561 -  
562 -  
563 -.gallery_box{margin-top:20px;}  
564 -div.registration {width:600px; margin:20px auto 0;}  
565 -form#registration label,  
566 - form#info label { float: left; text-align: right; width: 150px; margin-right:10px;}  
567 - form#registration div.optional,  
568 - form#registration div.need,  
569 - form#info div.row {height: 50px;}  
570 -  
571 -  
572 -.box_facebook{background:#f5f5f5;margin-top:20px;}  
573 -.info_txt{line-height:20px;}  
574 -.bld{font-weight:bold;}  
575 -  
576 -.jcarousel-skin-tango2{list-style:none;margin:0px 0px 0px 30px;padding:0px;} 1806 + background: #F6F6F6;
  1807 + border: 1px solid #D4D4D4;
  1808 + -webkit-box-shadow: 0 0 5px #DDD;
  1809 + -moz-box-shadow: 0 0 5px #DDD;
  1810 + box-shadow: 0 0 5px #DDD;
  1811 +}
  1812 +
  1813 +#share42 a {
  1814 + opacity: 0.5
  1815 +}
  1816 +
  1817 +#share42:hover a {
  1818 + opacity: 0.7
  1819 +}
  1820 +
  1821 +#share42 a:hover {
  1822 + opacity: 1
  1823 +}
  1824 +
  1825 +#share42 img {
  1826 + margin: 0 !important;
  1827 + padding: 0 !important;
  1828 + border: none !important;
  1829 +}
  1830 +
  1831 +.cabinet_box, .modal-box-overlay {
  1832 + position: fixed;
  1833 + left: 0;
  1834 + top: 0;
  1835 + width: 100%;
  1836 + height: 100%;
  1837 + z-index: 999;
  1838 +
  1839 + background: #000;
  1840 + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50); /* IE 5.5+*/
  1841 + -moz-opacity: 0.5; /* Mozilla 1.6 � ���� */
  1842 + -khtml-opacity: 0.5; /* Konqueror 3.1, Safari 1.1 */
  1843 + opacity: 0.5;
  1844 +}
  1845 +
  1846 +#cabinet_form {
  1847 + position: absolute;
  1848 + top: 100px;
  1849 + z-index: 1000;
  1850 + width: 692px;
  1851 + height: 310px;
  1852 + background: #ffffff;
  1853 + -webkit-box-shadow: 0 0 15px #000;
  1854 + -moz-box-shadow: 0 0 15px #000;
  1855 + box-shadow: 0 0 15px #000;
  1856 + border-radius: 10px;
  1857 +}
  1858 +
  1859 +#cabinet_form .wrp {
  1860 + padding: 20px;
  1861 + font-size: 14px;
  1862 + line-height: 30px;
  1863 +}
  1864 +
  1865 +#cabinet_close {
  1866 + cursor: pointer;
  1867 +}
  1868 +
  1869 +#cabinet_form label {
  1870 + font-weight: bold;
  1871 + color: #388e1e;
  1872 +}
  1873 +
  1874 +#subscribe_form {
  1875 + position: absolute;
  1876 + top: 100px;
  1877 + z-index: 1000;
  1878 + width: 692px;
  1879 + background: #ffffff;
  1880 + -webkit-box-shadow: 0 0 15px #000;
  1881 + -moz-box-shadow: 0 0 15px #000;
  1882 + box-shadow: 0 0 15px #000;
  1883 + border-radius: 5px;
  1884 + border: 3px solid #6c6c6c;
  1885 +}
  1886 +
  1887 +#subscribe_form .wrp {
  1888 + padding: 20px;
  1889 + font-size: 14px;
  1890 + line-height: 30px;
  1891 +}
  1892 +
  1893 +/*
  1894 + ==== modal-box ====
  1895 +*/
  1896 +
  1897 +.modal-box {
  1898 + position: absolute;
  1899 + top: 100px;
  1900 + z-index: 1000;
  1901 + width: 692px;
  1902 + background: #ffffff;
  1903 + -webkit-box-shadow: 0 0 15px #000;
  1904 + -moz-box-shadow: 0 0 15px #000;
  1905 + box-shadow: 0 0 15px #000;
  1906 + border-radius: 5px;
  1907 + border: 3px solid #6c6c6c;
  1908 +}
  1909 +
  1910 +.modal-box-close {
  1911 + display: block;
  1912 + height: 35px;
  1913 + position: absolute;
  1914 + right: 21px;
  1915 + top: 21px;
  1916 + width: 32px;
  1917 + background: transparent url(/img/close2.png) no-repeat scroll left top;
  1918 +}
  1919 +
  1920 +.modal-box .content {
  1921 + padding: 20px;
  1922 + font-size: 14px;
  1923 + line-height: 30px;
  1924 +}
  1925 +
  1926 +.modal-box .wrp {
  1927 + padding: 20px;
  1928 + font-size: 14px;
  1929 + line-height: 30px;
  1930 + display: inline-block;
  1931 +}
  1932 +
  1933 +.modal-box .content label {
  1934 + font-weight: bold;
  1935 + color: #388e1e;
  1936 +}
  1937 +
  1938 +/*
  1939 + ==== CALLBACK ====
  1940 +*/
  1941 +
  1942 +.modal-box.callback {
  1943 + width: 400px
  1944 +}
  1945 +
  1946 +.modal-box.callback textarea {
  1947 + resize: vertical;
  1948 +}
  1949 +
  1950 +.col1 {
  1951 + float: left;
  1952 +}
  1953 +
  1954 +.col2 {
  1955 + float: left;
  1956 + width: 350px;
  1957 + text-align: center;
  1958 + font-weight: bold;
  1959 +}
  1960 +
  1961 +.gallery_box {
  1962 + margin-top: 20px;
  1963 +}
  1964 +
  1965 +div.registration {
  1966 + width: 600px;
  1967 + margin: 20px auto 0;
  1968 +}
  1969 +
  1970 +form#registration label,
  1971 +form#info label {
  1972 + float: left;
  1973 + text-align: right;
  1974 + width: 150px;
  1975 + margin-right: 10px;
  1976 +}
  1977 +
  1978 +form#registration div.optional,
  1979 +form#registration div.need,
  1980 +form#info div.row {
  1981 + height: 50px;
  1982 +}
  1983 +
  1984 +.box_facebook {
  1985 + background: #f5f5f5;
  1986 + margin-top: 20px;
  1987 +}
  1988 +
  1989 +.info_txt {
  1990 + line-height: 20px;
  1991 +}
  1992 +
  1993 +.bld {
  1994 + font-weight: bold;
  1995 +}
  1996 +
  1997 +.jcarousel-skin-tango2 {
  1998 + list-style: none;
  1999 + margin: 0px 0px 0px 30px;
  2000 + padding: 0px;
  2001 +}
  2002 +
577 .jcarousel-skin-tango2 li { 2003 .jcarousel-skin-tango2 li {
578 - width: 200px;float:left;  
579 - height: 230px;margin-right: 40px;  
580 - text-align:center;  
581 -}  
582 -  
583 -.code_video{width:450px;height:265px;overflow:hidden;margin-bottom:20px;}  
584 -ul.ul_video{list-style-image: url("../img/ico_video2.png");margin:0px 0px 0px 25px;padding:0px;}  
585 -ul.ul_articles{list-style-image: url("../img/arrows_st.png");margin:0px 0px 0px 10px;padding:0px;}  
586 -ul.ul_articles li{float:left;width:200px;margin-right:20px;}  
587 -.article_box{margin-bottom:20px;}  
588 -.article_box_min{float:left;width:200px;margin-right:20px;margin-bottom:20px;}  
589 -  
590 -.sale{font-size:28px;color:#cc0200;position:relative;}  
591 -.sale_cost{position:relative;}  
592 -  
593 -.city_inp{position:relative;}  
594 -.city_inp input[type="text"]{float:left;}  
595 -.city_sel{float:left;width:24px;height:30px;background:url('../img/sel.jpg') 50% 50% no-repeat;cursor:pointer;margin-left:-25px;}  
596 -.city_box{display:none;position:absolute;width:350px;background:#ffffff;border:1px solid #595959;font-size:14px;  
597 - -webkit-box-shadow: 0 0 5px #000;  
598 - -moz-box-shadow: 0 0 5px #000;  
599 - box-shadow: 0 0 5px #000;  
600 -}  
601 -.city_box ul li{cursor:pointer;}  
602 -  
603 -.langs{margin-left:15px;width:25px;float:left;position:relative;z-index:99;}  
604 -.langs a{display:block;}  
605 -.langs img{margin-bottom:10px;}  
606 \ No newline at end of file 2004 \ No newline at end of file
  2005 + width: 200px;
  2006 + float: left;
  2007 + height: 230px;
  2008 + margin-right: 40px;
  2009 + text-align: center;
  2010 +}
  2011 +
  2012 +.code_video {
  2013 + width: 450px;
  2014 + height: 265px;
  2015 + overflow: hidden;
  2016 + margin-bottom: 20px;
  2017 +}
  2018 +
  2019 +ul.ul_video {
  2020 + list-style-image: url("../img/ico_video2.png");
  2021 + margin: 0px 0px 0px 25px;
  2022 + padding: 0px;
  2023 +}
  2024 +
  2025 +ul.ul_articles {
  2026 + list-style-image: url("../img/arrows_st.png");
  2027 + margin: 0px 0px 0px 10px;
  2028 + padding: 0px;
  2029 +}
  2030 +
  2031 +ul.ul_articles li {
  2032 + float: left;
  2033 + width: 200px;
  2034 + margin-right: 20px;
  2035 +}
  2036 +
  2037 +.article_box {
  2038 + margin-bottom: 20px;
  2039 +}
  2040 +
  2041 +.article_box_min {
  2042 + float: left;
  2043 + width: 200px;
  2044 + margin-right: 20px;
  2045 + margin-bottom: 20px;
  2046 +}
  2047 +
  2048 +.sale {
  2049 + font-size: 28px;
  2050 + color: #cc0200;
  2051 + position: relative;
  2052 +}
  2053 +
  2054 +.sale_cost {
  2055 + position: relative;
  2056 +}
  2057 +
  2058 +.city_inp {
  2059 + position: relative;
  2060 +}
  2061 +
  2062 +.city_inp input[type="text"] {
  2063 + float: left;
  2064 +}
  2065 +
  2066 +.city_sel {
  2067 + float: left;
  2068 + width: 24px;
  2069 + height: 30px;
  2070 + background: url('../img/sel.jpg') 50% 50% no-repeat;
  2071 + cursor: pointer;
  2072 + margin-left: -25px;
  2073 +}
  2074 +
  2075 +.city_box {
  2076 + display: none;
  2077 + position: absolute;
  2078 + width: 350px;
  2079 + background: #ffffff;
  2080 + border: 1px solid #595959;
  2081 + font-size: 14px;
  2082 + -webkit-box-shadow: 0 0 5px #000;
  2083 + -moz-box-shadow: 0 0 5px #000;
  2084 + box-shadow: 0 0 5px #000;
  2085 +}
  2086 +
  2087 +.city_box ul li {
  2088 + cursor: pointer;
  2089 +}
  2090 +
  2091 +.langs {
  2092 + margin-left: 15px;
  2093 + width: 25px;
  2094 + float: left;
  2095 + position: relative;
  2096 + z-index: 99;
  2097 +}
  2098 +
  2099 +.langs a {
  2100 + display: block;
  2101 +}
  2102 +
  2103 +.langs img {
  2104 + margin-bottom: 10px;
  2105 +}
607 \ No newline at end of file 2106 \ No newline at end of file
db-migration/callback.sql 0 → 100644
  1 +-- phpMyAdmin SQL Dump
  2 +-- version 4.0.10.10
  3 +-- http://www.phpmyadmin.net
  4 +--
  5 +-- Хост: 127.0.0.1:3306
  6 +-- Час створення: Лют 18 2016 р., 18:35
  7 +-- Версія сервера: 5.5.45
  8 +-- Версія PHP: 5.3.29
  9 +
  10 +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
  11 +SET time_zone = "+00:00";
  12 +
  13 +
  14 +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
  15 +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
  16 +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
  17 +/*!40101 SET NAMES utf8 */;
  18 +
  19 +--
  20 +-- База даних: `extremstyle`
  21 +--
  22 +
  23 +-- --------------------------------------------------------
  24 +
  25 +--
  26 +-- Структура таблиці `callback`
  27 +--
  28 +
  29 +CREATE TABLE IF NOT EXISTS `callback` (
  30 + `callback_id` int(6) unsigned NOT NULL AUTO_INCREMENT,
  31 + `date_add` datetime DEFAULT NULL,
  32 + `callback_status_id` int(1) unsigned NOT NULL,
  33 + `city` varchar(50) DEFAULT NULL,
  34 + `fio` varchar(100) DEFAULT NULL,
  35 + `tel` varchar(70) DEFAULT NULL,
  36 + `text` varchar(1000) DEFAULT NULL,
  37 + `date_edit` datetime DEFAULT NULL,
  38 + `manager_id` int(2) unsigned DEFAULT NULL,
  39 + PRIMARY KEY (`callback_id`),
  40 + KEY `callback_status_id` (`callback_status_id`),
  41 + KEY `manager_id` (`manager_id`)
  42 +) ENGINE=InnoDB DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;
  43 +
  44 +-- --------------------------------------------------------
  45 +
  46 +--
  47 +-- Структура таблиці `callback_status`
  48 +--
  49 +
  50 +CREATE TABLE IF NOT EXISTS `callback_status` (
  51 + `callback_status_id` int(1) unsigned NOT NULL AUTO_INCREMENT,
  52 + `callback_status_name` varchar(20) DEFAULT NULL COMMENT 'SYSTEM NAME',
  53 + `callback_status_title` varchar(50) DEFAULT NULL,
  54 + `callback_status_color` varchar(10) DEFAULT NULL,
  55 + `sortorder` int(1) unsigned DEFAULT NULL,
  56 + PRIMARY KEY (`callback_status_id`)
  57 +) ENGINE=InnoDB DEFAULT CHARSET=cp1251 AUTO_INCREMENT=6 ;
  58 +
  59 +--
  60 +-- Дамп даних таблиці `callback_status`
  61 +--
  62 +
  63 +INSERT INTO `callback_status` (`callback_status_id`, `callback_status_name`, `callback_status_title`, `callback_status_color`, `sortorder`) VALUES
  64 +(1, 'NEW', 'Новый', '#286090', 1),
  65 +(2, 'PROCESSING', 'Обрабатывается', '#f0ad4e', 2),
  66 +(3, NULL, 'Нет ответа', '#e6e6e6', 3),
  67 +(4, NULL, 'Перезвонить попоже', '#c9302c', 4),
  68 +(5, 'DONE', 'Завершен', '#449d44', 5);
  69 +
  70 +-- --------------------------------------------------------
  71 +
  72 +--
  73 +-- Структура таблиці `modules`
  74 +--
  75 +
  76 +CREATE TABLE IF NOT EXISTS `modules` (
  77 + `id` int(11) NOT NULL AUTO_INCREMENT,
  78 + `modul` varchar(200) NOT NULL DEFAULT '',
  79 + `name` varchar(200) NOT NULL DEFAULT '',
  80 + PRIMARY KEY (`id`)
  81 +) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=27 ;
  82 +
  83 +--
  84 +-- Дамп даних таблиці `modules`
  85 +--
  86 +
  87 +INSERT INTO `modules` (`id`, `modul`, `name`) VALUES
  88 +(1, 'statics.php', 'Текст'),
  89 +(2, 'gallery.php', 'Галерея'),
  90 +(3, 'begin.php', 'Главная'),
  91 +(4, 'rubrics.php', 'Рубрики'),
  92 +(6, 'forum.php', 'Форум'),
  93 +(8, 'articles.php', 'Статьи'),
  94 +(9, 'news.php', 'Новости'),
  95 +(10, 'advices.php', 'Торты'),
  96 +(11, 'catalogs.php', 'Каталог продукций'),
  97 +(12, 'advices2.php', 'Обучение'),
  98 +(13, 'akcii.php', 'Акции'),
  99 +(14, 'promo.php', 'Промо'),
  100 +(15, 'sale.php', 'Скидки'),
  101 +(16, 'advices3.php', 'Обзоры'),
  102 +(17, 'book.php', 'Часто задаваемые вопросы'),
  103 +(18, 'url.php', 'Url теги'),
  104 +(19, 'vacancy.php', 'Вакансии'),
  105 +(20, 'fon.php', 'Фон'),
  106 +(21, 'stat.php', 'Статистика'),
  107 +(22, 'video2.php', 'Видео'),
  108 +(23, 'send.php', 'Рассылка по шаблону'),
  109 +(24, 'sitemap.php', 'sitemap'),
  110 +(25, 'extra.php', 'extra'),
  111 +(26, 'callback.php', 'callback');
  112 +
  113 +-- --------------------------------------------------------
  114 +
  115 +--
  116 +-- Структура таблиці `rules`
  117 +--
  118 +
  119 +CREATE TABLE IF NOT EXISTS `rules` (
  120 + `id` int(11) NOT NULL AUTO_INCREMENT,
  121 + `parent_id` int(11) NOT NULL DEFAULT '0',
  122 + `_left` int(11) NOT NULL DEFAULT '0',
  123 + `_right` int(11) NOT NULL DEFAULT '0',
  124 + `_level` int(11) NOT NULL DEFAULT '0',
  125 + `action` varchar(50) DEFAULT '',
  126 + `alias` varchar(50) NOT NULL,
  127 + `name` varchar(50) NOT NULL DEFAULT '',
  128 + `name_ukr` varchar(255) DEFAULT NULL,
  129 + `title` varchar(250) NOT NULL DEFAULT '',
  130 + `title_ukr` varchar(255) DEFAULT NULL,
  131 + `about` text NOT NULL,
  132 + `about_ukr` varchar(255) DEFAULT NULL,
  133 + `description` varchar(250) NOT NULL DEFAULT '',
  134 + `description_ukr` varchar(255) DEFAULT NULL,
  135 + `keywords` varchar(250) NOT NULL DEFAULT '',
  136 + `keywords_ukr` varchar(255) DEFAULT NULL,
  137 + `modul_id` int(3) NOT NULL DEFAULT '0',
  138 + `group` varchar(50) DEFAULT NULL,
  139 + PRIMARY KEY (`id`),
  140 + KEY `action` (`alias`),
  141 + KEY `_level` (`_level`),
  142 + KEY `tree` (`_left`,`_level`)
  143 +) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=59 ;
  144 +
  145 +--
  146 +-- Дамп даних таблиці `rules`
  147 +--
  148 +
  149 +INSERT INTO `rules` (`id`, `parent_id`, `_left`, `_right`, `_level`, `action`, `alias`, `name`, `name_ukr`, `title`, `title_ukr`, `about`, `about_ukr`, `description`, `description_ukr`, `keywords`, `keywords_ukr`, `modul_id`, `group`) VALUES
  150 +(24, 3, 24, 25, 1, 'akcii', 'admin.php?action=akcii', 'Акции', NULL, 'Акции', NULL, '', NULL, 'Акции', NULL, 'Акции', NULL, 13, '1:3'),
  151 +(25, 38, 26, 27, 1, 'promo', 'admin.php?action=promo', 'Промо', NULL, 'Промо', NULL, 'Промо', NULL, 'Промо', NULL, 'Промо', NULL, 14, '1'),
  152 +(26, 37, 28, 29, 1, 'akcya', 'admin.php?action=akcya', 'Акция', NULL, 'Акция', NULL, 'Акция', NULL, 'Акция', NULL, 'Акция', NULL, 1, '1:3:5'),
  153 +(27, 38, 30, 31, 1, 'sale', 'admin.php?action=sale', 'Скидки', NULL, 'Скидки', NULL, 'Скидки', NULL, 'Скидки', NULL, 'Скидки', NULL, 15, '1:5'),
  154 +(28, 37, 32, 33, 1, 'akcya2', 'admin.php?action=akcya2', 'Акция 2', NULL, 'Акция 2', NULL, 'Акция 2', NULL, 'Акция 2', NULL, 'Акция 2', NULL, 1, '1:5'),
  155 +(29, 36, 0, 0, 0, 'users', 'admin.php/users/', 'Пользователи', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1'),
  156 +(23, 38, 22, 23, 1, 'training', 'admin.php?action=training', 'Обучение', NULL, 'Обучение', NULL, '', NULL, 'Обучение', NULL, 'Обучение', NULL, 12, '1'),
  157 +(21, 37, 20, 21, 1, 'vacancy', 'admin.php?action=vacancy', 'Вакансии', NULL, 'Вакансии', NULL, '', NULL, 'Вакансии', NULL, 'Вакансии', NULL, 19, '1:5'),
  158 +(18, 38, 16, 17, 1, 'articles', 'admin.php?action=articles', 'Статьи', NULL, 'Статьи', NULL, '', NULL, 'Статьи', NULL, 'Статьи', NULL, 8, '1:5'),
  159 +(17, 38, 14, 15, 1, 'news', 'admin.php?action=news', 'Новости', NULL, 'Новости', NULL, '', NULL, 'Новости', NULL, 'Новости', NULL, 9, '1:3:5'),
  160 +(16, 37, 12, 13, 1, 'discount', 'admin.php?action=discount', 'Дисконтная программа', NULL, 'Дисконтная программа', NULL, '', NULL, 'Дисконтная программа', NULL, 'Дисконтная программа', NULL, 1, '1:3:5'),
  161 +(15, 37, 10, 11, 1, 'zima', 'admin.php?action=zima', 'Подобрать зимнее снаряжение', NULL, 'Подобрать зимнее снаряжение', NULL, '', NULL, 'Подобрать зимнее снаряжение', NULL, 'Подобрать зимнее снаряжение', NULL, 1, '1'),
  162 +(14, 38, 8, 9, 1, 'services', 'admin.php?action=services', 'Сервис', NULL, 'Сервис', NULL, '', NULL, 'Сервис', NULL, 'Сервис', NULL, 10, '1:5'),
  163 +(13, 38, 6, 7, 1, 'forum', 'admin.php?action=forum', 'Форум', NULL, 'Форум', NULL, '', NULL, 'Форум', NULL, 'Форум', NULL, 6, '1'),
  164 +(12, 37, 4, 5, 1, 'shops', 'admin.php?action=shops', 'Магазины', NULL, 'Магазины', NULL, '', NULL, 'Магазины', NULL, 'Магазины', NULL, 1, '1:5'),
  165 +(44, 1, 42, 43, 1, 'payment', '', 'Доставка и оплата', NULL, 'Доставка и оплата', NULL, '', NULL, 'Доставка и оплата', NULL, 'Доставка и оплата', NULL, 1, NULL),
  166 +(19, 38, 18, 19, 1, 'line', 'admin.php?action=line', 'Горячая линия', 'Гаряча лінія', 'Горячая линия', 'Гаряча лінія', '', '', '', '', '', '', 1, '1:3:5'),
  167 +(1, 0, 1, 60, 0, '', '', '', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '0'),
  168 +(3, 38, 2, 3, 1, 'catalogs', 'admin.php?action=catalogs', 'Каталог товаров', NULL, 'Экстремальное снаряжение - Extremstyle | Интернет магазин экстремального снаряжения Киев в магазине товаров для спорта ExtremStyle', NULL, 'Крупнейшая в Украине сеть магазинов товаров для экстримального отдыха', NULL, 'Интернет-магазин Exrtrem Style - это самый широкий выбор товаров для всех видов спорта. Лыжи, сноуборды, коньки, велосипеды, палатки, рюкзаки, скейты в интернет магазине Киев, Харьков, Одесса, Днепропетровск, Львов', NULL, 'Велосипеды, рюкзаки, Лыжи, термобелье, сноуборды, коньки, палатки, скейты, купить киев', NULL, 11, '1:5'),
  169 +(30, 36, 0, 0, 0, 'group', 'admin.php/group/', 'Группы', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1'),
  170 +(31, 36, 0, 0, 0, 'messages', 'admin.php/messages/', 'Сообщения', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:2:3:4:6'),
  171 +(32, 36, 0, 0, 0, 'interest', 'admin.php/interest/', 'Интересы', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:3'),
  172 +(33, 36, 0, 0, 0, 'audience', 'admin.php/audience/', 'Опросы', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:3'),
  173 +(34, 36, 0, 0, 0, 'orders', 'admin.php/orders/', 'Заказы', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:2:3:4:6'),
  174 +(35, 36, 0, 0, 0, 'email', 'admin.php/email/', 'Рассылка', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1'),
  175 +(38, 1, 0, 0, 0, NULL, '', 'Модули', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:4:5'),
  176 +(36, 1, 0, 0, 0, NULL, '', 'Управление', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:2:3:4:6'),
  177 +(37, 1, 0, 0, 0, NULL, '', 'Текстовые страницы', NULL, '', NULL, '', NULL, '', NULL, '', NULL, 0, '1:5'),
  178 +(40, 38, 34, 35, 1, 'question', 'admin.php?action=question', 'Часто задаваемые вопросы', NULL, 'Часто задаваемые вопросы', NULL, '', NULL, 'Часто задаваемые вопросы', NULL, 'Часто задаваемые вопросы', NULL, 17, '1:4'),
  179 +(41, 37, 36, 37, 1, 'payment2', 'admin.php?action=payment2', 'Оплата', NULL, 'Оплата', NULL, '', NULL, 'Оплата', NULL, 'Оплата', NULL, 1, '1:4:5'),
  180 +(42, 37, 38, 39, 1, 'delivery', 'admin.php?action=delivery', 'Доставка', NULL, 'Доставка', NULL, '', NULL, 'Доставка', NULL, 'Доставка', NULL, 1, '1:4:5'),
  181 +(43, 37, 40, 41, 1, 'warranty', 'admin.php?action=warranty', 'Гарантия', NULL, 'Гарантия', NULL, '', NULL, 'Гарантия', NULL, 'Гарантия', NULL, 1, '1:4:5'),
  182 +(45, 38, 44, 45, 1, 'url', 'admin.php?action=url', 'Url теги', NULL, 'Url теги', NULL, '', NULL, 'Url теги', NULL, 'Url теги', NULL, 18, '1'),
  183 +(50, 37, 46, 47, 1, 'reg', 'admin.php?action=reg', 'Регистрация', NULL, 'Регистрация', NULL, '', NULL, 'Регистрация', NULL, 'Регистрация', NULL, 1, '1:5'),
  184 +(51, 38, 48, 49, 1, 'fon', 'admin.php?action=fon', 'Фон', NULL, 'Фон', NULL, '', NULL, 'Фон', NULL, 'Фон', NULL, 20, '1:5'),
  185 +(52, 38, 50, 51, 1, 'stat', 'admin.php?action=stat', 'Статистика', NULL, 'Статистика', NULL, '', NULL, 'Статистика', NULL, 'Статистика', NULL, 21, '1'),
  186 +(53, 38, 52, 53, 1, 'video', 'admin.php?action=video', 'Видео', NULL, 'Видео', NULL, '', NULL, 'Видео', NULL, 'Видео', NULL, 22, '1'),
  187 +(54, 38, 54, 55, 1, 'send', 'admin.php?action=send', 'Рассылка по шаблону', NULL, 'Рассылка по шаблону', NULL, '', NULL, 'Рассылка по шаблону', NULL, 'Рассылка по шаблону', NULL, 23, '1'),
  188 +(55, 1, 56, 57, 1, 'sitemap', '', 'Sitemap', NULL, 'Карта сайта ExstremStyle.ua', NULL, '', NULL, 'Ключевые страницы сайта.', NULL, '', NULL, 24, NULL),
  189 +(56, 1, 58, 59, 1, 'sky', '', 'Дорогие лыжники и сноубордисты!', NULL, 'Дорогие лыжники и сноубордисты!', NULL, '', NULL, 'Дорогие лыжники и сноубордисты!', NULL, 'Дорогие лыжники и сноубордисты!', NULL, 1, NULL),
  190 +(57, 38, 0, 0, 1, 'extra', 'admin.php?action=extra', 'Extra &#9745;', NULL, 'Вкл./выкл. функций', NULL, '', NULL, 'Вкл./выкл. функций', NULL, 'Вкл./выкл. функций', NULL, 25, '1'),
  191 +(58, 38, 0, 0, 1, 'callback', 'admin.php?action=callback', 'callback &#9745;', NULL, 'Сallback', NULL, '', NULL, 'Сallback', NULL, 'Сallback', NULL, 26, '1:2:3:4:6');
  192 +
  193 +--
  194 +-- Обмеження зовнішнього ключа збережених таблиць
  195 +--
  196 +
  197 +--
  198 +-- Обмеження зовнішнього ключа таблиці `callback`
  199 +--
  200 +ALTER TABLE `callback`
  201 + ADD CONSTRAINT `callback_ibfk_1` FOREIGN KEY (`callback_status_id`) REFERENCES `callback_status` (`callback_status_id`) ON DELETE CASCADE ON UPDATE CASCADE;
  202 +
  203 +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
  204 +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
  205 +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
email/discont.php 0 → 100644
  1 +<?php
  2 +
  3 +echo '
  4 +<html>
  5 +<meta content="text/html; charset=windows-1251" http-equiv="content-type" />
  6 +<img src="http://extremstyle.ua/p301.png">
  7 +<br/>
  8 +<br/>
  9 +
  10 +<table cellspacing=0 cellpadding=0 style="border:1px dashed #000;border-radius:10px;padding:10px;width:660px;margin-left:4px;">
  11 +<tr>
  12 +<td>
  13 +<table>
  14 +<tr>
  15 +<td rowspan="2">
  16 +<img src="http://extremstyle.ua/img/kvlogo.png" />
  17 +</td>
  18 +<td align="center" style="padding:10px;">
  19 +<div style="font-size:24px;border:1px dashed #000;padding:10px;border-radius:10px;">'.$card['card'].'</div>
  20 +</td>
  21 +</tr>
  22 +<tr>
  23 +<td style="font-size:24px;" align="center">
  24 +ÍÀÉÁ²ËÜØÈÉ ÂÈÁ²Ð
  25 +ÍÀÉÊÐÀÙÎÃÎ ÑÏÎÐßÄÆÅÍÍß
  26 +</td>
  27 +</tr>
  28 +</table>
  29 +</td>
  30 +<td rowspan="5">
  31 +<img src="http://extremstyle.ua/bcode.php?num='.$card['card'].'">
  32 +</td>
  33 +</tr>
  34 +<tr>
  35 +<td style="padding:10px;font-size:18px;text-transform:uppercase;">
  36 +Äîáðî ïîæàëîâàòü â êëóá ëþáèòåëåé "Ýêòðåì Ñòàéë"!
  37 +</td>
  38 +</tr>
  39 +<tr>
  40 +<td style="padding:10px;font-size:15px;">
  41 +Êëóáíàÿ êàðòà äàåò ïðàâî íà ñêèäêó â ïåðèîä äåéñòâèÿ àêöèé, óñëîâèÿ êîòîðûõ áóäóò âûêëàäûâàòüñÿ íà ñàéòå, à èìåííî â ðàçäåëå «Ðåãèñòðàöèÿ» è äóáëèðîâàòüñÿ â ðàçäåëå «Àêöèè»*, à òàêæå íà ãëàâíîé ñòðàíèöå â ðàìêàõ èíôîðìàöèîííîãî áàííåðà.
  42 +<br /><br />
  43 +*Äåéñòâèå êëóáíîé êàðòû íå ðàñïðîñòðàíÿåòñÿ íà àêöèè, óñëîâèÿ êîòîðûõ íå èçëîæåíû â ðàçäåëå «Ðåãèñòðàöèÿ»
  44 +</td>
  45 +</tr>
  46 +</table>
  47 +<br/><br/>
  48 +×òî áû ðàñïå÷àòàòü êóïîí ïåðåéäèòå ïî ññûëêå íèæå:\r\n
  49 +<a href="http://extremstyle.ua/discont.php?id='.$card['id'].'&uid='.$user['id'].'">http://extremstyle.ua/discont.php?id='.$card['id'].'&uid='.$user['id'].'</a>
  50 +<br/><br/>
  51 +
  52 +
  53 +
  54 +Ïåðåéäèòå ïî ñëåäóþùåé ññûëêå:<br/>
  55 +http://extremstyle.ua/account/registration/<br/><br/>
  56 +
  57 +</html>';
img/alert/done.png 0 → 100644

4.08 KB

img/alert/warning.png 0 → 100644

8.84 KB

img/call.jpg 0 → 100644

1.82 KB

img/callback.jpg 0 → 100644

1.11 KB

@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 //if(trim($_GET['test18'])=='1') print_r($_GET); 5 //if(trim($_GET['test18'])=='1') print_r($_GET);
6 6
7 //print $_SERVER['REQUEST_URI'];exit; 7 //print $_SERVER['REQUEST_URI'];exit;
8 -if (preg_match("/%27|&apos;/i",$_SERVER['REQUEST_URI'])) {// åñëè íå ãëàâíàÿ ñòðàíèöà... 8 +if (preg_match("/%27|&apos;/i",$_SERVER['REQUEST_URI'])) {// ���� �� ������� ��������...
9 $uri = preg_replace("/%27|&apos;/i",'_', $_SERVER['REQUEST_URI']); 9 $uri = preg_replace("/%27|&apos;/i",'_', $_SERVER['REQUEST_URI']);
10 header("HTTP/1.1 301 Moved Permanently"); 10 header("HTTP/1.1 301 Moved Permanently");
11 header('Location: http://'.$_SERVER['SERVER_NAME'].$uri); 11 header('Location: http://'.$_SERVER['SERVER_NAME'].$uri);
@@ -56,7 +56,7 @@ if (strlen($uri)&gt;1) { @@ -56,7 +56,7 @@ if (strlen($uri)&gt;1) {
56 }} 56 }}
57 57
58 $uri = preg_replace("/\?.*/i",'', $_SERVER['REQUEST_URI']); 58 $uri = preg_replace("/\?.*/i",'', $_SERVER['REQUEST_URI']);
59 -if (strlen($uri)>1) {// åñëè íå ãëàâíàÿ ñòðàíèöà... 59 +if (strlen($uri)>1) {// ���� �� ������� ��������...
60 if (rtrim($uri,'/')."/"!=$uri) { 60 if (rtrim($uri,'/')."/"!=$uri) {
61 header("HTTP/1.1 301 Moved Permanently"); 61 header("HTTP/1.1 301 Moved Permanently");
62 header('Location: http://'.$_SERVER['SERVER_NAME'].str_replace($uri, $uri.'/', $_SERVER['REQUEST_URI'])); 62 header('Location: http://'.$_SERVER['SERVER_NAME'].str_replace($uri, $uri.'/', $_SERVER['REQUEST_URI']));
@@ -66,7 +66,7 @@ if (strlen($uri)&gt;1) {// åñëè íå ãëàâíàÿ ñòðàíèöà... @@ -66,7 +66,7 @@ if (strlen($uri)&gt;1) {// åñëè íå ãëàâíàÿ ñòðàíèöà...
66 66
67 if(preg_match('/filter;\//i',$_SERVER['REQUEST_URI'])){ 67 if(preg_match('/filter;\//i',$_SERVER['REQUEST_URI'])){
68 $uri = preg_replace("/filter;\//i",'', $_SERVER['REQUEST_URI']); 68 $uri = preg_replace("/filter;\//i",'', $_SERVER['REQUEST_URI']);
69 -if (strlen($uri)>1) {// åñëè íå ãëàâíàÿ ñòðàíèöà... 69 +if (strlen($uri)>1) {// ���� �� ������� ��������...
70 70
71 header("HTTP/1.1 301 Moved Permanently"); 71 header("HTTP/1.1 301 Moved Permanently");
72 header('Location: http://'.$_SERVER['SERVER_NAME'].$uri); 72 header('Location: http://'.$_SERVER['SERVER_NAME'].$uri);
@@ -139,10 +139,10 @@ require(&quot;./redirect/redirect.php&quot;); @@ -139,10 +139,10 @@ require(&quot;./redirect/redirect.php&quot;);
139 $_SESSION['sec_code_session'] = 7; 139 $_SESSION['sec_code_session'] = 7;
140 if(trim($_POST['fuckoff'])=='1') 140 if(trim($_POST['fuckoff'])=='1')
141 if(trim($_POST['b44'])!=@$_SESSION['sec_code_session']){ 141 if(trim($_POST['b44'])!=@$_SESSION['sec_code_session']){
142 -//$objCatalogs->tpl->assign("no_capcha","<script>alert('Êîä ñ êàðòèíêè ââåäåí íåïðàâèëüíî! Ïîâòîðèòå ïîïûòêó.');</script>");  
143 -$objCatalogs->tpl->assign("no_capcha","<script>alert('Ñóììà öèôð ââåäåíà íåïðàâèëüíî! Ïîâòîðèòå ïîïûòêó.');</script>"); 142 +//$objCatalogs->tpl->assign("no_capcha","<script>alert('��� � �������� ������ �����������! ��������� �������.');</script>");
  143 +$objCatalogs->tpl->assign("no_capcha","<script>alert('����� ���� ������� �����������! ��������� �������.');</script>");
144 }else{ 144 }else{
145 -$objCatalogs->tpl->assign("no_capcha","<script>alert('Ñïàñèáî! Âàøå ñîîáùåíèå ïîëó÷åíî íàìè!');</script>"); 145 +$objCatalogs->tpl->assign("no_capcha","<script>alert('�������! ���� ��������� �������� ����!');</script>");
146 } 146 }
147 147
148 148
@@ -227,30 +227,30 @@ break; @@ -227,30 +227,30 @@ break;
227 if($path_info['extension']=='doc' && $path_info['extension']=='docx'){ 227 if($path_info['extension']=='doc' && $path_info['extension']=='docx'){
228 //if(@move_uploaded_file($tmp_name, "$uploads_dir/$rand.".$path_info['extension'])) 228 //if(@move_uploaded_file($tmp_name, "$uploads_dir/$rand.".$path_info['extension']))
229 //$link = "<a href=\"http://extremstyle.ua/$uploads_dir/$rand.".$path_info['extension']."\">http://extremstyle.ua/$uploads_dir/$rand.".$path_info['extension']."</a>"; 229 //$link = "<a href=\"http://extremstyle.ua/$uploads_dir/$rand.".$path_info['extension']."\">http://extremstyle.ua/$uploads_dir/$rand.".$path_info['extension']."</a>";
230 -//else $link = "Äîêóìåíò íå çàãðóæåí !"; 230 +//else $link = "�������� �� �������� !";
231 }else 231 }else
232 if(@move_uploaded_file($tmp_name, "$uploads_dir/$rand.".$path_info['extension'])) 232 if(@move_uploaded_file($tmp_name, "$uploads_dir/$rand.".$path_info['extension']))
233 $link = "<a href=\"http://extremstyle.ua/".$uploads_dir."/".$nameFile."\">http://extremstyle.ua/".$uploads_dir."/".$nameFile."</a>"; 233 $link = "<a href=\"http://extremstyle.ua/".$uploads_dir."/".$nameFile."\">http://extremstyle.ua/".$uploads_dir."/".$nameFile."</a>";
234 -else $link = "Äîêóìåíò íå çàãðóæåí !"; 234 +else $link = "�������� �� �������� !";
235 $message = <<<HTML 235 $message = <<<HTML
236 <table width="600px"> 236 <table width="600px">
237 - <tr><td width="250px">¹ çàêàçà: </td><td>{$_POST['form']['nom_zakaza']}</td></tr>  
238 -<tr><td width="250px">ÔÈÎ: </td><td>{$_POST['form']['fio']}</td></tr>  
239 -<tr><td>Àäðåñ: </td><td>{$_POST['form']['adress']}</td></tr>  
240 -<tr><td>Ñóììà: </td><td>{$_POST['form']['summ']}</td></tr>  
241 -<tr><td>Áàíê: </td><td>{$_POST['form']['bank']}</td></tr>  
242 -<tr><td>Äàòà: </td><td>{$_POST['form']['date']}</td></tr>  
243 -<tr><td>Âðåìÿ: </td><td>{$_POST['form']['time']}</td></tr>  
244 -<tr><td>Íîìåð ÷åêà: </td><td>{$_POST['form']['nom']}</td></tr>  
245 -<tr><td>Êîììåíòàðèè: </td><td>{$_POST['form']['b33']}</td></tr>  
246 -<tr><td>Ññûëêà íà ôàèë:</td><td>{$link}</td></tr></table><br/><br/><br/> 237 + <tr><td width="250px">� ������: </td><td>{$_POST['form']['nom_zakaza']}</td></tr>
  238 +<tr><td width="250px">���: </td><td>{$_POST['form']['fio']}</td></tr>
  239 +<tr><td>�����: </td><td>{$_POST['form']['adress']}</td></tr>
  240 +<tr><td>�����: </td><td>{$_POST['form']['summ']}</td></tr>
  241 +<tr><td>����: </td><td>{$_POST['form']['bank']}</td></tr>
  242 +<tr><td>����: </td><td>{$_POST['form']['date']}</td></tr>
  243 +<tr><td>�����: </td><td>{$_POST['form']['time']}</td></tr>
  244 +<tr><td>����� ����: </td><td>{$_POST['form']['nom']}</td></tr>
  245 +<tr><td>�����������: </td><td>{$_POST['form']['b33']}</td></tr>
  246 +<tr><td>������ �� ����:</td><td>{$link}</td></tr></table><br/><br/><br/>
247 HTML; 247 HTML;
248 248
249 $namefrom = "ExtremStyle"; 249 $namefrom = "ExtremStyle";
250 $from = "no_reply@extremstyle.ua"; 250 $from = "no_reply@extremstyle.ua";
251 $to = "shop@eltrade.com.ua"; //bykov@eltrade.com.ua 251 $to = "shop@eltrade.com.ua"; //bykov@eltrade.com.ua
252 -$nameto = "Îïëàòà";  
253 -$subject = "Èíôîðìàöèÿ îá îïëàòå.".((trim($_POST['form']['fio'])!='')?" ¹ çàêàçà: ".$_POST['form']['nom_zakaza']:"")." ÔÈÎ: ".$_POST['form']['fio']; 252 +$nameto = "������";
  253 +$subject = "���������� �� ������.".((trim($_POST['form']['fio'])!='')?" � ������: ".$_POST['form']['nom_zakaza']:"")." ���: ".$_POST['form']['fio'];
254 //$subject = iconv("cp1251","utf-8",$subject); 254 //$subject = iconv("cp1251","utf-8",$subject);
255 //$message = iconv("utf-8","cp1251",$message); 255 //$message = iconv("utf-8","cp1251",$message);
256 $boundary = strtoupper(md5(uniqid(rand()))).""; 256 $boundary = strtoupper(md5(uniqid(rand())))."";
@@ -340,33 +340,47 @@ $rrrr = $objCatalogs-&gt;db-&gt;getOne(&quot;SELECT translit FROM catalogs_rubrics WHERE id @@ -340,33 +340,47 @@ $rrrr = $objCatalogs-&gt;db-&gt;getOne(&quot;SELECT translit FROM catalogs_rubrics WHERE id
340 exit; 340 exit;
341 } 341 }
342 } 342 }
343 -  
344 -  
345 -/*  
346 -if(trim($_GET['brend'])){  
347 -$_GET['brend'] = iconv('UTF-8', 'windows-1251', $_GET['brend']);  
348 -$brendID = $objCatalogs->db->getOne("SELECT id FROM catalogs_brends WHERE name=?",array(trim($_GET['brend'])));  
349 -if(!$brendID){  
350 -header("HTTP/1.1 301 Moved Permanently");  
351 -header("location:/");exit;  
352 -}  
353 -}*/  
354 -  
355 -  
356 -IF(isset($_GET['productID'])){  
357 -if(!@is_numeric(@$_GET['productID'])){  
358 -//echo $_GET['productID'];  
359 -$_GET['productID'] = $objCatalogs->db->getOne("SELECT id FROM catalogs_products WHERE translit=?",array(trim($_GET['productID'])));  
360 -if(!$_GET['productID']){header("HTTP/1.1 301 Moved Permanently");header("Location: /");exit;}  
361 -$_GET['productID'] = str_replace("/","",$_GET['productID2']);  
362 -}else{  
363 -$rrrr = $objCatalogs->db->getOne("SELECT translit FROM catalogs_rubrics WHERE id=?",array(trim($_GET['rubID'])));  
364 -$rrrr2 = $objCatalogs->db->getOne("SELECT translit FROM catalogs_products WHERE id=?",array(trim($_GET['productID'])));  
365 -//$_GET['productID'] = str_replace("/","",$_GET['productID2']);  
366 -@header("HTTP/1.1 301 Moved Permanently");  
367 -@header("Location: http://extremstyle.ua/".$rrrr."-catalogs/".$rrrr2."-".$_GET['productID']."/");  
368 -exit;  
369 -} 343 +
  344 + /*
  345 + * if(trim($_GET['brend'])){
  346 + * $_GET['brend'] = iconv('UTF-8', 'windows-1251', $_GET['brend']);
  347 + * $brendID = $objCatalogs->db->getOne("SELECT id FROM catalogs_brends WHERE name=?",array(trim($_GET['brend'])));
  348 + * if(!$brendID){
  349 + * header("HTTP/1.1 301 Moved Permanently");
  350 + * header("location:/");exit;
  351 + * }
  352 + * }
  353 + */
  354 +IF (isset ($_GET['productID']))
  355 +{
  356 +
  357 + if (! @is_numeric (@$_GET['productID']))
  358 + {
  359 + // echo $_GET['productID'];
  360 + $_GET['productID'] = $objCatalogs->db->getOne ("SELECT id FROM catalogs_products WHERE translit=?", array (
  361 + trim ($_GET['productID'])
  362 + ));
  363 + if (! $_GET['productID'])
  364 + {
  365 + header ("HTTP/1.1 301 Moved Permanently");
  366 + header ("Location: /");
  367 + exit ();
  368 + }
  369 + $_GET['productID'] = str_replace ("/", "", $_GET['productID2']);
  370 + }
  371 + else
  372 + {
  373 + $rrrr = $objCatalogs->db->getOne ("SELECT translit FROM catalogs_rubrics WHERE id=?", array (
  374 + trim ($_GET['rubID'])
  375 + ));
  376 + $rrrr2 = $objCatalogs->db->getOne ("SELECT translit FROM catalogs_products WHERE id=?", array (
  377 + trim ($_GET['productID'])
  378 + ));
  379 + // $_GET['productID'] = str_replace("/","",$_GET['productID2']);
  380 + @header ("HTTP/1.1 301 Moved Permanently");
  381 + @header ("Location: http://extremstyle.ua/" . $rrrr . "-catalogs/" . $rrrr2 . "-" . $_GET['productID'] . "/");
  382 + exit ();
  383 + }
370 } 384 }
371 385
372 386
@@ -471,7 +485,7 @@ $objUrl = $setup-&gt;setupClass(&#39;Url&#39;); @@ -471,7 +485,7 @@ $objUrl = $setup-&gt;setupClass(&#39;Url&#39;);
471 $objVacancy = $setup->setupClass('Vacancy'); 485 $objVacancy = $setup->setupClass('Vacancy');
472 $objFon = $setup->setupClass('Fon'); 486 $objFon = $setup->setupClass('Fon');
473 $objVideo2 = $setup->setupClass('Video2'); 487 $objVideo2 = $setup->setupClass('Video2');
474 - 488 +$objCallback = $setup->setupClass ('Callback');
475 $lang = isset($_GET['lang']) ? $_GET['lang'] : 'ru'; 489 $lang = isset($_GET['lang']) ? $_GET['lang'] : 'ru';
476 $_SESSION['lang'] = $lang; 490 $_SESSION['lang'] = $lang;
477 switch($lang){ 491 switch($lang){
@@ -578,11 +592,11 @@ function ShowRating($id, $rating, $vote_num, $allow = true) { @@ -578,11 +592,11 @@ function ShowRating($id, $rating, $vote_num, $allow = true) {
578 <div id=\'ratig-layer\'><div class="rating" style="float:left;"> 592 <div id=\'ratig-layer\'><div class="rating" style="float:left;">
579 <ul class="unit-rating"> 593 <ul class="unit-rating">
580 <li class="current-rating" style="width:'.$rating.'px;">'.$rating.'</li> 594 <li class="current-rating" style="width:'.$rating.'px;">'.$rating.'</li>
581 - <li><a href="#" title="Óæàñíî" class="r1-unit" onclick="doRate(\'1\', \''.$id.'\'); return false;">1</a></li>  
582 - <li><a href="#" title="Ïëîõî" class="r2-unit" onclick="doRate(\'2\', \''.$id.'\'); return false;">2</a></li>  
583 - <li><a href="#" title="Ñðåäíå" class="r3-unit" onclick="doRate(\'3\', \''.$id.'\'); return false;">3</a></li>  
584 - <li><a href="#" title="Õîðîøî" class="r4-unit" onclick="doRate(\'4\', \''.$id.'\'); return false;">4</a></li>  
585 - <li><a href="#" title="Îòëè÷íî" class="r5-unit" onclick="doRate(\'5\', \''.$id.'\'); return false;">5</a></li> 595 + <li><a href="#" title="������" class="r1-unit" onclick="doRate(\'1\', \''.$id.'\'); return false;">1</a></li>
  596 + <li><a href="#" title="�����" class="r2-unit" onclick="doRate(\'2\', \''.$id.'\'); return false;">2</a></li>
  597 + <li><a href="#" title="������" class="r3-unit" onclick="doRate(\'3\', \''.$id.'\'); return false;">3</a></li>
  598 + <li><a href="#" title="������" class="r4-unit" onclick="doRate(\'4\', \''.$id.'\'); return false;">4</a></li>
  599 + <li><a href="#" title="�������" class="r5-unit" onclick="doRate(\'5\', \''.$id.'\'); return false;">5</a></li>
586 </ul> 600 </ul>
587 </div><div class="rating" style="float:left; padding-top:2px;">&nbsp;('.@$vote_num.')</div></div> 601 </div><div class="rating" style="float:left; padding-top:2px;">&nbsp;('.@$vote_num.')</div></div>
588 '; 602 ';
js/admin/callback.js 0 → 100644
  1 +
  2 +$(document).ready(function()
  3 +{
  4 + $('[data-toggle="popover"]').popover();
  5 +
  6 + $('body').on('click', function (e)
  7 + {
  8 + $('[data-toggle="popover"]').each(function ()
  9 + {
  10 + //the 'is' for buttons that trigger popups
  11 + //the 'has' for icons within a button that triggers a popup
  12 + if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) {
  13 + $(this).popover('hide');
  14 + }
  15 + });
  16 + });
  17 +
  18 + $('#callback .btn.read').on('click', function (e)
  19 + {
  20 + var $obj = $(this).closest('tr');
  21 +
  22 + callbackAction ({
  23 + 'json': {
  24 + 'jaction': 'getOne',
  25 + 'callback_id': $obj.attr('callback_id'),
  26 + }
  27 + }).done(function ($result)
  28 + {
  29 + modalBoxLoad($result.text);
  30 + });
  31 + });
  32 +
  33 + $(document).on('click', '#callback .status .dropdown-menu li a', function(e)
  34 + {
  35 + e.preventDefault();
  36 +
  37 + var $obj = $(this).closest('tr');
  38 + var $callback_status_id = $(this).attr('value');
  39 +
  40 + callbackAction ({
  41 + 'json': {
  42 + 'jaction': 'setStatus',
  43 + 'callback_id': $obj.attr('callback_id'),
  44 + 'callback_status_id': $callback_status_id,
  45 + }
  46 + }).done(function ($result)
  47 + {
  48 + // done
  49 + // $obj.addClass('done');
  50 + if ($result.code == 0)
  51 + {
  52 + $obj.find('.manager').html($result.manager);
  53 + $obj.find('.date_edit').html($result.date_edit);
  54 + $obj.find('.status').html($result.button);
  55 + }
  56 + else if ($result.code == 1)
  57 + {
  58 + modalBoxLoad($result.html);
  59 + }
  60 + });
  61 +
  62 + });
  63 +});
0 \ No newline at end of file 64 \ No newline at end of file
js/bpopup/bpopup.css
@@ -14,6 +14,7 @@ @@ -14,6 +14,7 @@
14 } 14 }
15 15
16 .modalBox .close { 16 .modalBox .close {
  17 + opacity: 1;
17 display: block; 18 display: block;
18 position: absolute; 19 position: absolute;
19 top: -16px; 20 top: -16px;
@@ -39,18 +40,18 @@ @@ -39,18 +40,18 @@
39 40
40 .modalBox, 41 .modalBox,
41 .modalBox .close { 42 .modalBox .close {
42 - box-shadow: 0 0 5px 1px #c1c1c1;  
43 - -moz-box-shadow: 0 0 5px 1px #c1c1c1;  
44 - -o-box-shadow: 0 0 5px 1px #c1c1c1;  
45 - -webkit-box-shadow: 0 0 5px 1px #c1c1c1;  
46 - }  
47 - 43 + box-shadow: 0 0 5px 1px #c1c1c1;
  44 + -moz-box-shadow: 0 0 5px 1px #c1c1c1;
  45 + -o-box-shadow: 0 0 5px 1px #c1c1c1;
  46 + -webkit-box-shadow: 0 0 5px 1px #c1c1c1;
  47 + }
  48 +
48 .modalBox .close:hover { 49 .modalBox .close:hover {
49 background: #606060; 50 background: #606060;
50 } 51 }
51 52
52 .modalBoxWindow { 53 .modalBoxWindow {
53 - display: none; 54 + display: none;
54 } 55 }
55 56
56 /* 57 /*
@@ -109,8 +110,8 @@ @@ -109,8 +110,8 @@
109 } 110 }
110 111
111 .alert.wait .pic { 112 .alert.wait .pic {
112 - width: 113px;  
113 - height: 128px; 113 + width: 113px;
  114 + height: 128px;
114 background-image: url(./img/wait.png); 115 background-image: url(./img/wait.png);
115 } 116 }
116 117
js/callback.js 0 → 100644
  1 +function ajaxFormCheck ($el, $callback)
  2 +{
  3 + if (jQuery.type( $el ) === 'string')
  4 + {
  5 + $el = $($el);
  6 + }
  7 +
  8 + if ($el.validationEngine('validate'))
  9 + {
  10 + if ($callback)
  11 + {
  12 + $callback.call();
  13 + }
  14 + return true;
  15 + }
  16 +
  17 + return false;
  18 +}
  19 +
  20 +function callbackAction ($array)
  21 +{
  22 + return $.ajax({
  23 + type: 'POST',
  24 + url: '/ajax/callback.php',
  25 + dataType: 'json',
  26 + data: $.param ($array['json']),
  27 + error: function()
  28 + {
  29 + alert ('Error');
  30 + }
  31 + });
  32 +}
  33 +
  34 +function loadModal($html, $class)
  35 +{
  36 + delModal();
  37 +
  38 + var winW = document.body.offsetWidth,
  39 + $body =
  40 + '<div class="modal-box-overlay"></div>'
  41 + + '<div class="modal-box ' + $class + '">'
  42 + + '<div class="wrp">'
  43 + + '<div class="modal-box-close"></div>'
  44 + + '<div class="inside">'
  45 + + '</div>';
  46 + + '</div>';
  47 +
  48 + $('body').append($body);
  49 + $('.modal-box .inside').html($html);
  50 + $('.modal-box').css('left', ((winW - $('.modal-box').width()) / 2) + 'px');
  51 +}
  52 +
  53 +function delModal()
  54 +{
  55 + $('.modal-box').remove();
  56 + $('.modal-box-overlay').remove();
  57 +}
  58 +
  59 +$(document).ready(function()
  60 +{
  61 + $("#callback-button").click(function ()
  62 + {
  63 + callbackAction ({
  64 + 'json': {
  65 + 'jaction': 'getForm'
  66 + }
  67 + }).done(function ($result)
  68 + {
  69 + loadModal($result.html, 'callback');
  70 + })
  71 + });
  72 +
  73 +if (typeof jQuery.fn.live == 'function' && jQuery.isFunction(jQuery.fn.live))
  74 +{
  75 + $(".modal-box-close").live('click', function()
  76 + {
  77 + delModal();
  78 + });
  79 +
  80 + $("#callback-form .submit").live('click', function(e)
  81 + {
  82 + e.preventDefault();
  83 +
  84 + ajaxFormCheck('#callback-form', function()
  85 + {
  86 + callbackAction ({
  87 + 'json': $.extend(
  88 + {
  89 + 'jaction': 'save',
  90 + },
  91 + transForm.serialize('#callback-form')
  92 + )
  93 + }).done(function ($result)
  94 + {
  95 + loadModal($result.html, 'callback');
  96 + });
  97 + })
  98 + });
  99 +}
  100 +
  101 +});
0 \ No newline at end of file 102 \ No newline at end of file
js/modalBox/modalBox.js
@@ -20,49 +20,53 @@ @@ -20,49 +20,53 @@
20 $width = 80; 20 $width = 80;
21 $modalBoxId = 'modalBoxId-' + ID; 21 $modalBoxId = 'modalBoxId-' + ID;
22 $style = 'style="max-width:' + percentToPix ($width) + 'px;"'; 22 $style = 'style="max-width:' + percentToPix ($width) + 'px;"';
23 -  
24 - var $modal =  
25 - '<div class="modalBox ' + $modalBoxId + '" ' + $style + '>'  
26 - + '<div class="right"><div class="close bClose">X</div></div>'  
27 - + '<div class="content">' + content + '</div>' 23 +
  24 + var $modal =
  25 + '<div id="' + $modalBoxId + '" class="modal fade" tabindex="-1" role="dialog">'
  26 + + '<div class="modal-dialog">'
  27 + + '<div class="modal-content">'
  28 + + '<div class="modal-header">'
  29 + + '<button aria-label="Close" data-dismiss="modal" class="close" type="button">'
  30 + + '<span aria-hidden="true">x</span>'
  31 + + '</button>'
  32 + + '</div>'
  33 + + '<div class="modal-body">'
  34 + + content
  35 + + '</div>'
  36 +/*
  37 + + '<div class="modal-footer">'
  38 + + '<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>'
  39 + + '<button type="button" class="btn btn-primary">Save changes</button>'
  40 + + '</div>'
  41 +*/
  42 + + '</div>'
  43 + + '</div>'
28 + '</div>'; 44 + '</div>';
29 -  
30 - var $default = {  
31 - 'id': ID,  
32 - 'transition': 'slideDown',  
33 -// 'closeClass': 'bClose-' + ID,  
34 - 'onOpen': function() {  
35 - $modalBoxTotal++;  
36 - $(this).html($modal)  
37 - },  
38 - 'onClose': function() {  
39 - $modalBoxTotal--;  
40 - $('.' + $modalBoxId).remove();  
41 - },  
42 - 'width': $width  
43 - };  
44 -  
45 - var $setting = $.extend({}, $default, $option);  
46 -  
47 - if ($('#duty').length == 0)  
48 - {  
49 - $('body').append('<div id="duty"></div>').promise().done(function()  
50 - {  
51 - $('#duty').bPopup($setting).reposition(1);  
52 - }); 45 +
  46 + $modalBoxTotal++;
  47 +
  48 + if ($('#duty').length == 0) {
  49 + $('body').append('<div id="duty"></div>');
53 } 50 }
54 - else 51 +
  52 + $('#duty').html($modal).promise().done(function()
55 { 53 {
56 - $('#duty').bPopup($setting).reposition(1);  
57 - } 54 + $('#' + $modalBoxId)
  55 + .modal('show')
  56 + .on('hidden.bs.modal', function (e)
  57 + {
  58 + $(this).data('bs.modal', null);
  59 + $('#' + $modalBoxId).remove();
  60 + window.modalBoxTotal--;
  61 + });
  62 + });
58 } 63 }
59 64
60 function modalBoxClose () 65 function modalBoxClose ()
61 { 66 {
62 - $('#duty').bPopup().close(); 67 + $('#modal').hide();
63 } 68 }
64 -  
65 - 69 +
66 function isModalBox () 70 function isModalBox ()
67 { 71 {
68 return ($modalBoxTotal > 0) ? true : false; 72 return ($modalBoxTotal > 0) ? true : false;
js/transForm.js 0 → 100644
  1 +(function (name, definition) {
  2 + if (typeof module != 'undefined') module.exports = definition();
  3 + else if (typeof define == 'function' && typeof define.amd == 'object') define(definition);
  4 + else {
  5 + var noConflict = this[name];
  6 + this[name] = definition();
  7 + if (noConflict) this[name].noConflict = noConflict;
  8 + }
  9 +}('transForm', function () {
  10 + var _defaults = {
  11 + delimiter: '.',
  12 + skipDisabled: true,
  13 + skipReadOnly: false,
  14 + skipFalsy: false,
  15 + useIdOnEmptyName: true,
  16 + triggerChange: false
  17 + };
  18 +
  19 + /* Serialize */
  20 + function serialize(formEl, options, nodeCallback) {
  21 + var el = makeElement(formEl),
  22 + opts = getOptions(options),
  23 + inputs = getFields(el, opts.skipDisabled, opts.skipReadOnly),
  24 + result = {};
  25 +
  26 + for (var i = 0, l = inputs.length; i < l; i++) {
  27 + var input = inputs[i],
  28 + key = input.name || opts.useIdOnEmptyName && input.id;
  29 +
  30 + if (!key) continue;
  31 + var entry = null;
  32 + if (nodeCallback) entry = nodeCallback(input, key);
  33 + if (!entry) entry = getEntryFromInput(input, key)
  34 +
  35 + if (!isValidValue(entry.value, opts.skipFalsy)) continue;
  36 + saveEntryToResult(result, entry, opts.delimiter);
  37 + }
  38 + return result;
  39 + }
  40 +
  41 +
  42 + function isValidValue(value, skipFalsy) {
  43 + return !(typeof value === 'undefined' || value === null || (skipFalsy && (!value || (isArray(value) && !value.length))))
  44 + }
  45 +
  46 + function getEntryFromInput(input, key) {
  47 + var nodeType = input.type && input.type.toLowerCase(),
  48 + entry = { name: key, value: null };
  49 +
  50 + switch (nodeType) {
  51 + case 'radio':
  52 + if (input.checked)
  53 + entry.value = input.value === 'on' ? true : input.value;
  54 + break;
  55 + case 'checkbox':
  56 + entry.value = input.checked ? (input.value === 'on' ? true : input.value) : false;
  57 + break;
  58 + case 'select-multiple':
  59 + entry.value = [];
  60 + for (var i = 0, l = input.options.length; i < l; i++)
  61 + if (input.options[i].selected) entry.value.push(input.options[i].value);
  62 + break;
  63 + case 'file':
  64 + //Only interested in the filename (Chrome adds C:\fakepath\ for security anyway)
  65 + entry.value = input.value.split('\\').pop();
  66 + break;
  67 + case 'button':
  68 + case 'submit':
  69 + case 'reset':
  70 + break;
  71 + default:
  72 + entry.value = input.value;
  73 + }
  74 + return entry;
  75 + }
  76 +
  77 + function parseString(str, delimiter) {
  78 + var result = [],
  79 + split = str.split(delimiter),
  80 + len = split.length;
  81 + for (var i = 0; i < len; i++) {
  82 + var s = split[i].split('['),
  83 + l = s.length;
  84 + for (var j = 0; j < l; j++) {
  85 + var key = s[j];
  86 + if (!key) {
  87 + //if the first one is empty, continue
  88 + if (j === 0) continue;
  89 + //if the undefined key is not the last part of the string, throw error
  90 + if (j !== l - 1)
  91 + error('Undefined key is not the last part of the name > ' + str);
  92 + }
  93 + //strip "]" if its there
  94 + if (key && key[key.length - 1] === ']')
  95 + key = key.slice(0, -1);
  96 + result.push(key);
  97 + }
  98 + }
  99 + return result;
  100 + }
  101 +
  102 + function saveEntryToResult(parent, entry, delimiter) {
  103 + //not not accept falsy values in array collections
  104 + if (/\[\]$/.test(entry.name) && !entry.value) return;
  105 + var parts = parseString(entry.name, delimiter);
  106 + for (var i = 0, l = parts.length; i < l; i++) {
  107 + var part = parts[i];
  108 + //if last
  109 + if (i === l - 1) {
  110 + parent[part] = entry.value;
  111 + } else {
  112 + //check if the next part is an index
  113 + var index = parts[i + 1];
  114 + if (!index || isNumber(index)) {
  115 + if (!isArray(parent[part]))
  116 + parent[part] = [];
  117 + //if second last
  118 + if (i === l - 2) {
  119 + //array of values
  120 + parent[part].push(entry.value);
  121 + } else {
  122 + //array of objects
  123 + if (!isObject(parent[part][index]))
  124 + parent[part][index] = {};
  125 + parent = parent[part][index];
  126 + }
  127 + i++;
  128 + } else {
  129 + if (!isObject(parent[part]))
  130 + parent[part] = {};
  131 + parent = parent[part];
  132 + }
  133 + }
  134 + }
  135 + return { pointer: parent, prop: part };
  136 + }
  137 +
  138 + /* Deserialize */
  139 + function deserialize(formEl, data, options, nodeCallback) {
  140 + var el = makeElement(formEl),
  141 + opts = getOptions(options),
  142 + inputs = getFields(el, opts.skipDisabled, opts.skipReadOnly);
  143 +
  144 + if (!isObject(data)) {
  145 + if (!isString(data)) return;
  146 + try { //Try to parse the passed data as JSON
  147 + data = JSON.parse(data);
  148 + } catch (e) {
  149 + error('Passed string is not a JSON string > ' + data);
  150 + }
  151 + }
  152 +
  153 + for (var i = 0, l = inputs.length; i < l; i++) {
  154 + var input = inputs[i],
  155 + key = input.name || opts.useIdOnEmptyName && input.id,
  156 + value = getFieldValue(key, opts.delimiter, data);
  157 +
  158 + if (typeof value === 'undefined' || value === null) {
  159 + clearInput(input, opts.triggerChange);
  160 + continue;
  161 + }
  162 + var mutated = nodeCallback && nodeCallback(input, value);
  163 + if (!mutated) setValueToInput(input, value, opts.triggerChange);
  164 + }
  165 + }
  166 +
  167 + function getFieldValue(key, delimiter, ref) {
  168 + if (!key) return;
  169 + var parts = parseString(key, delimiter);
  170 + for (var i = 0, l = parts.length; i < l; i++) {
  171 + if (!ref) return;
  172 + var part = ref[parts[i]];
  173 +
  174 + if (typeof part === 'undefined' || part === null) return;
  175 + //if last
  176 + if (i === l - 1) {
  177 + return part;
  178 + } else {
  179 + var index = parts[i + 1];
  180 + if (index === '') {
  181 + return part;
  182 + } else if (isNumber(index)) {
  183 + //if second last
  184 + if (i === l - 2)
  185 + return part[index];
  186 + else
  187 + ref = part[index];
  188 + i++;
  189 + } else {
  190 + ref = part;
  191 + }
  192 + }
  193 + }
  194 + }
  195 +
  196 + function contains(array, value) {
  197 + for (var i = array.length; i--;)
  198 + if (array[i] == value) return true;
  199 + return false;
  200 + }
  201 +
  202 + function setValueToInput(input, value, triggerChange) {
  203 + var nodeType = input.type && input.type.toLowerCase();
  204 +
  205 + switch (nodeType) {
  206 + case 'radio':
  207 + if (value == input.value) input.checked = true;
  208 + break;
  209 + case 'checkbox':
  210 + input.checked = isArray(value)
  211 + ? contains(value, input.value)
  212 + : value === true || value == input.value;
  213 + break;
  214 + case 'select-multiple':
  215 + if (isArray(value))
  216 + for (var i = input.options.length; i--;)
  217 + input.options[i].selected = contains(value, input.options[i].value);
  218 + else
  219 + input.value = value;
  220 + break;
  221 + case 'button':
  222 + case 'submit':
  223 + case 'reset':
  224 + case 'file':
  225 + break;
  226 + default:
  227 + input.value = value;
  228 + }
  229 + if (triggerChange)
  230 + triggerEvent(input, 'change');
  231 + }
  232 +
  233 + /* Clear */
  234 + function clear(formEl, options) {
  235 + var el = makeElement(formEl),
  236 + opts = getOptions(options),
  237 + inputs = getFields(el, opts.skipDisabled, opts.skipReadOnly);
  238 +
  239 + for (var i = 0, l = inputs.length; i < l; i++)
  240 + clearInput(inputs[i], opts.triggerChange);
  241 + }
  242 +
  243 + function clearInput(input, triggerChange) {
  244 + var nodeType = input.type && input.type.toLowerCase();
  245 +
  246 + switch (nodeType) {
  247 + case 'select-one':
  248 + input.selectedIndex = 0;
  249 + break;
  250 + case 'select-multiple':
  251 + for (var i = input.options.length; i--;)
  252 + input.options[i].selected = false;
  253 + break;
  254 + case 'radio':
  255 + case 'checkbox':
  256 + if (input.checked) input.checked = false;
  257 + break;
  258 + case 'button':
  259 + case 'submit':
  260 + case 'reset':
  261 + case 'file':
  262 + break;
  263 + default:
  264 + input.value = '';
  265 + }
  266 + if (triggerChange)
  267 + triggerEvent(input, 'change');
  268 + }
  269 +
  270 + /* Submit */
  271 + function submit(formEl, html5Submit) {
  272 + var el = makeElement(formEl);
  273 +
  274 + if (!html5Submit) {
  275 + if (isFunction(el.submit))
  276 + el.submit();
  277 + else
  278 + error('The element is not a form element > ' + formEl);
  279 + return;
  280 + }
  281 +
  282 + var clean, btn = el.querySelector('[type="submit"]');
  283 + if (!btn) {
  284 + clean = true;
  285 + btn = document.createElement('button');
  286 + btn.type = 'submit';
  287 + btn.style.display = 'none';
  288 + el.appendChild(btn);
  289 + }
  290 + triggerEvent(btn, 'click');
  291 + if (clean) el.removeChild(btn);
  292 + }
  293 +
  294 + /* Helper functions */
  295 + function isObject(obj) {
  296 + return Object.prototype.toString.call(obj) === '[object Object]';
  297 + }
  298 + function isNumber(n) {
  299 + return n - parseFloat(n) + 1 >= 0;
  300 + }
  301 + function isArray(arr) {
  302 + return !!(arr && arr.shift); //If it shifts like an array, its a duck.
  303 + }
  304 + function isFunction(fn) {
  305 + return typeof fn === 'function';
  306 + }
  307 + function isString(s) {
  308 + return typeof s === 'string' || s instanceof String;
  309 + }
  310 +
  311 + function triggerEvent(el, type) {
  312 + var e;
  313 + if (document.createEvent) {
  314 + e = document.createEvent('HTMLEvents');
  315 + e.initEvent(type, true, true);
  316 + el.dispatchEvent(e);
  317 + } else { //old IE
  318 + e = document.createEventObject();
  319 + el.fireEvent('on' + type, e);
  320 + }
  321 + }
  322 +
  323 + function makeElement(el) {
  324 + var element = isString(el) ? document.querySelector(el) || document.getElementById(el) : el;
  325 + if (!element) error('Element not found with ' + el);
  326 + return element;
  327 + }
  328 +
  329 + function getFields(parent, skipDisabled, skipReadOnly) {
  330 + var fields = ['input', 'select', 'textarea'];
  331 + for (var i = 0; i < fields.length; i++) {
  332 + var field = fields[i];
  333 + if (skipDisabled) field += ':not([disabled])';
  334 + if (skipReadOnly) field += ':not([readonly])';
  335 + field += ':not([data-trans-form="ignore"])';
  336 + fields[i] = field;
  337 + }
  338 + return parent.querySelectorAll(fields.join(','));
  339 + }
  340 +
  341 + function getOptions(options) {
  342 + if (!isObject(options)) return _defaults;
  343 + var o, opts = {};
  344 + for (o in _defaults) opts[o] = _defaults[o];
  345 + for (o in options) opts[o] = options[o];
  346 + return opts;
  347 + }
  348 +
  349 + function setDefaults(defaults) {
  350 + _defaults = getOptions(defaults);
  351 + }
  352 +
  353 + function error(e) {
  354 + throw new Error('transForm.js ♦ ' + e);
  355 + }
  356 + /* Exposed functions */
  357 + return {
  358 + serialize: serialize,
  359 + deserialize: deserialize,
  360 + clear: clear,
  361 + submit: submit,
  362 + setDefaults: setDefaults
  363 + };
  364 +}));
js/transForm.plugin.js 0 → 100644
  1 +/*
  2 +//Defaults can be overwritten in $tyle
  3 +$.fn.transForm.defaults.useIdOnEmptyName = false;
  4 +//Methods can be chained
  5 +$('div').transForm('deserialize', {library: 'jQuery/Zepto'}).transForm('submit');
  6 +//Return value of serialize is an array of objects
  7 +var test = $('div').transForm('serialize');
  8 +//TODO:
  9 +- Tests
  10 +- MOAR $$$ functions!
  11 +*/
  12 +
  13 +(function ($) {
  14 +
  15 + var methods = {
  16 + serialize: serialize,
  17 + deserialize: deserialize,
  18 + clear: clear,
  19 + submit: submit,
  20 + };
  21 +
  22 + $.extend($.fn, {
  23 + transForm: function (methodOrOptions) {
  24 + if (methods[methodOrOptions]) {
  25 + var args = Array.prototype.slice.call(arguments, 1);
  26 + if (methodOrOptions === 'serialize') {
  27 + var result = [];
  28 + this.each(function () {
  29 + result.push(methods[methodOrOptions].apply(this, args));
  30 + });
  31 + return result;
  32 + } else
  33 + return this.each(function () {
  34 + methods[methodOrOptions].apply(this, args);
  35 + });
  36 + } else {
  37 + error('Method ' + methodOrOptions + ' does not exist on transForm.js');
  38 + }
  39 + }
  40 + });
  41 +
  42 + $.fn.transForm.defaults = {
  43 + delimiter: '.',
  44 + skipDisabled: true,
  45 + skipReadOnly: false,
  46 + skipFalsy: false,
  47 + useIdOnEmptyName: true,
  48 + triggerChange: false
  49 + };
  50 +
  51 + /* Serialize */
  52 + function serialize(options, nodeCallback) {
  53 + var result = {},
  54 + opts = getOptions(options),
  55 + inputs = getFields(this, opts.skipDisabled, opts.skipReadOnly),
  56 + skipFalsy = opts.skipFalsy,
  57 + delimiter = opts.delimiter,
  58 + useIdOnEmptyName = opts.useIdOnEmptyName;
  59 +
  60 + for (var i = 0, l = inputs.length; i < l; i++) {
  61 + var input = inputs[i],
  62 + key = input.name || useIdOnEmptyName && input.id;
  63 +
  64 + if (!key) continue;
  65 +
  66 + var entry = null;
  67 + if (nodeCallback) entry = nodeCallback(input);
  68 + if (!entry) entry = getEntryFromInput(input, key);
  69 +
  70 + if (typeof entry.value === 'undefined' || entry.value === null
  71 + || (skipFalsy && (!entry.value || (isArray(entry.value) && !entry.value.length))))
  72 + continue;
  73 + saveEntryToResult(result, entry, input, delimiter);
  74 + }
  75 + return result;
  76 + }
  77 +
  78 + function getEntryFromInput(input, key) {
  79 + var nodeType = input.type && input.type.toLowerCase(),
  80 + entry = { name: key, value: null };
  81 +
  82 + switch (nodeType) {
  83 + case 'radio':
  84 + if (input.checked)
  85 + entry.value = input.value === 'on' ? true : input.value;
  86 + break;
  87 + case 'checkbox':
  88 + entry.value = input.checked ? (input.value === 'on' ? true : input.value) : false;
  89 + break;
  90 + case 'select-multiple':
  91 + entry.value = [];
  92 + for (var i = 0, l = input.options.length; i < l; i++)
  93 + if (input.options[i].selected) entry.value.push(input.options[i].value);
  94 + break;
  95 + case 'file':
  96 + //Only interested in the filename (Chrome adds C:\fakepath\ for security anyway)
  97 + entry.value = input.value.split('\\').pop();
  98 + break;
  99 + case 'button':
  100 + case 'submit':
  101 + case 'reset':
  102 + break;
  103 + default:
  104 + entry.value = input.value;
  105 + }
  106 + return entry;
  107 + }
  108 +
  109 + function parseString(str, delimiter) {
  110 + var result = [],
  111 + split = str.split(delimiter),
  112 + len = split.length;
  113 + for (var i = 0; i < len; i++) {
  114 + var s = split[i].split('['),
  115 + l = s.length;
  116 + for (var j = 0; j < l; j++) {
  117 + var key = s[j];
  118 + if (!key) {
  119 + //if the first one is empty, continue
  120 + if (j === 0) continue;
  121 + //if the undefined key is not the last part of the string, throw error
  122 + if (j !== l - 1)
  123 + error('Undefined key is not the last part of the name > ' + str);
  124 + }
  125 + //strip "]" if its there
  126 + if (key && key[key.length - 1] === ']')
  127 + key = key.slice(0, -1);
  128 + result.push(key);
  129 + }
  130 + }
  131 + return result;
  132 + }
  133 +
  134 + function saveEntryToResult(parent, entry, input, delimiter) {
  135 + //not not accept falsy values in array collections
  136 + if (/\[\]$/.test(entry.name) && !entry.value) return;
  137 + var parts = parseString(entry.name, delimiter);
  138 + for (var i = 0, l = parts.length; i < l; i++) {
  139 + var part = parts[i];
  140 + //if last
  141 + if (i === l - 1) {
  142 + parent[part] = entry.value;
  143 + } else {
  144 + var index = parts[i + 1];
  145 + if (!index || isNumber(index)) {
  146 + if (!isArray(parent[part]))
  147 + parent[part] = [];
  148 + //if second last
  149 + if (i === l - 2) {
  150 + parent[part].push(entry.value);
  151 + } else {
  152 + if (!isObject(parent[part][index]))
  153 + parent[part][index] = {};
  154 + parent = parent[part][index];
  155 + }
  156 + i++;
  157 + } else {
  158 + if (!isObject(parent[part]))
  159 + parent[part] = {};
  160 + parent = parent[part];
  161 + }
  162 + }
  163 + }
  164 + }
  165 +
  166 + /* Deserialize */
  167 + function deserialize(data, options, nodeCallback) {
  168 + var opts = getOptions(options),
  169 + triggerChange = opts.triggerChange,
  170 + inputs = getFields(this, opts.skipDisabled, opts.skipReadOnly);
  171 +
  172 + if (!isObject(data)) {
  173 + if (!isString(data)) return;
  174 + try { //Try to parse the passed data as JSON
  175 + data = JSON.parse(data);
  176 + } catch (e) {
  177 + error('Passed string is not a JSON string > ' + data);
  178 + }
  179 + }
  180 +
  181 + for (var i = 0, l = inputs.length; i < l; i++) {
  182 + var input = inputs[i],
  183 + key = input.name || opts.useIdOnEmptyName && input.id,
  184 + value = getFieldValue(key, opts.delimiter, data);
  185 +
  186 + if (typeof value === 'undefined' || value === null) {
  187 + clearInput(input, triggerChange);
  188 + continue;
  189 + }
  190 + var mutated = nodeCallback && nodeCallback(input, value);
  191 + if (!mutated) setValueToInput(input, value, triggerChange);
  192 + }
  193 + }
  194 +
  195 + function getFieldValue(key, delimiter, ref) {
  196 + if (!key) return;
  197 + var parts = parseString(key, delimiter);
  198 + for (var i = 0, l = parts.length; i < l; i++) {
  199 + if (!ref) return;
  200 + var part = ref[parts[i]];
  201 +
  202 + if (typeof part === 'undefined' || part === null) return;
  203 + //if last
  204 + if (i === l - 1) {
  205 + return part;
  206 + } else {
  207 + var index = parts[i + 1];
  208 + if (index === '') {
  209 + return part;
  210 + } else if (isNumber(index)) {
  211 + //if second last
  212 + if (i === l - 2)
  213 + return part[index];
  214 + else
  215 + ref = part[index];
  216 + i++;
  217 + } else {
  218 + ref = part;
  219 + }
  220 + }
  221 + }
  222 + }
  223 +
  224 + function contains(array, value) {
  225 + for (var i = array.length; i--;)
  226 + if (array[i] == value) return true;
  227 + return false;
  228 + }
  229 +
  230 + function setValueToInput(input, value, triggerChange) {
  231 + var nodeType = input.type && input.type.toLowerCase();
  232 +
  233 + switch (nodeType) {
  234 + case 'radio':
  235 + if (value == input.value) input.checked = true;
  236 + break;
  237 + case 'checkbox':
  238 + input.checked = isArray(value)
  239 + ? contains(value, input.value)
  240 + : value === true || value == input.value;
  241 + break;
  242 + case 'select-multiple':
  243 + if (isArray(value))
  244 + for (var i = input.options.length; i--;)
  245 + input.options[i].selected = contains(value, input.options[i].value);
  246 + else
  247 + input.value = value;
  248 + break;
  249 + case 'button':
  250 + case 'submit':
  251 + case 'reset':
  252 + case 'file':
  253 + break;
  254 + default:
  255 + input.value = value;
  256 + }
  257 + if (triggerChange)
  258 + $(input).change();
  259 + }
  260 +
  261 + /* Clear */
  262 + function clear(options) {
  263 + var opts = getOptions(options),
  264 + triggerChange = opts.triggerChange,
  265 + inputs = getFields(this, opts.skipDisabled, opts.skipReadOnly);
  266 +
  267 + for (var i = 0, l = inputs.length; i < l; i++)
  268 + clearInput(inputs[i], triggerChange);
  269 + }
  270 +
  271 + function clearInput(input, triggerChange) {
  272 + var nodeType = input.type && input.type.toLowerCase();
  273 +
  274 + switch (nodeType) {
  275 + case 'select-one':
  276 + input.selectedIndex = 0;
  277 + break;
  278 + case 'select-multiple':
  279 + for (var i = input.options.length; i--;)
  280 + input.options[i].selected = false;
  281 + break;
  282 + case 'radio':
  283 + case 'checkbox':
  284 + if (input.checked) input.checked = false;
  285 + break;
  286 + case 'button':
  287 + case 'submit':
  288 + case 'reset':
  289 + case 'file':
  290 + break;
  291 + default:
  292 + input.value = '';
  293 + }
  294 + if (triggerChange)
  295 + $(input).change();
  296 + }
  297 +
  298 + /* Submit */
  299 + function submit(html5Submit) {
  300 + var el = this;
  301 + if (!html5Submit) {
  302 + if (isFunction(el.submit))
  303 + el.submit();
  304 + return;
  305 + }
  306 +
  307 + var clean, btn = el.querySelector('[type="submit"]');
  308 + if (!btn) {
  309 + clean = true;
  310 + btn = document.createElement('button');
  311 + btn.type = 'submit';
  312 + btn.style.display = 'none';
  313 + el.appendChild(btn);
  314 + }
  315 + $(btn).click();
  316 + if (clean) el.removeChild(btn);
  317 + }
  318 +
  319 + /* Helper functions */
  320 + function isObject(obj) {
  321 + return $.type(s) === 'object';
  322 + }
  323 + function isNumber(n) {
  324 + return $.type(s) === 'number';
  325 + }
  326 + function isArray(arr) {
  327 + return $.type(s) === 'array';
  328 + }
  329 + function isFunction(fn) {
  330 + return $.type(s) === 'function';
  331 + }
  332 + function isString(s) {
  333 + return $.type(s) === 'string';
  334 + }
  335 +
  336 + function getFields(parent, skipDisabled, skipReadOnly) {
  337 + var fields = ['input', 'select', 'textarea'];
  338 + for (var i = 0; i < fields.length; i++) {
  339 + var field = fields[i];
  340 + if (skipDisabled) field += ':not([disabled])';
  341 + if (skipReadOnly) field += ':not([readonly])';
  342 + field += ':not([data-trans-form="ignore"])';
  343 + fields[i] = field;
  344 + }
  345 + return parent.querySelectorAll(fields.join(','));
  346 + }
  347 +
  348 + function getOptions(options) {
  349 + var _defaults = $.fn.transForm.defaults;
  350 + if (!isObject(options)) return _defaults;
  351 + var o, opts = {};
  352 + for (o in _defaults) opts[o] = _defaults[o];
  353 + for (o in options) opts[o] = options[o];
  354 + return opts;
  355 + }
  356 +
  357 + function error(e) {
  358 + $.error('transForm.js ♦ ' + e);
  359 + }
  360 +})(window.Zepto || window.jQuery);
libs/callback.class.php 0 → 100644
  1 +<?php
  2 +
  3 +include_once ($_SERVER['DOCUMENT_ROOT'] . "/account/func/func.php");
  4 +
  5 +class Callback
  6 +{
  7 + var $db = null;
  8 + var $tpl = null;
  9 + var $error = null;
  10 + var $cache = null;
  11 +
  12 + var $lang = 'ru';
  13 +
  14 + public static $NEW = 1;
  15 + public static $PROCESSING = 2;
  16 + public static $DONE = 5;
  17 +
  18 + public function __construct (&$db, &$tpl, &$error, &$cache)
  19 + {
  20 + $this->db = &$db;
  21 + $this->tpl = &$tpl;
  22 + $this->error = &$error;
  23 + $this->cache = &$cache;
  24 +
  25 + // язык по умолчанию
  26 + // жестыкий кастыль
  27 + if (isset ($_POST))
  28 + {
  29 + $parse = parse_url ($_SERVER['HTTP_REFERER']);
  30 + $path = explode ("/", $parse['path']);
  31 + if (isset ($path[1]) && $path[1] == 'ukr')
  32 + {
  33 + $this->lang = 'ua';
  34 + }
  35 + }
  36 + }
  37 +
  38 + public function getTranslation ($key)
  39 + {
  40 + $lang = $this->lang;
  41 + $array = $this->$lang();
  42 +
  43 + return isset ($array[$key]) ? $array[$key] : '#translation';
  44 + }
  45 +
  46 + public function ru ()
  47 + {
  48 + return array (
  49 + 'callback' => 'Обратный звонок',
  50 + 'fio' => 'ФИО',
  51 + 'city' => 'Город',
  52 + 'tel' => 'Телефон',
  53 + 'text' => 'Вопрос',
  54 + 'send' => 'Отправить',
  55 + 'send_success' => 'Ваше запрос успешно отправлен! <p>В ближайшее время с Васи свяжеться наш консультант</p>',
  56 + 'other_menager' => 'Данная заявка закреплена за другим менеджером',
  57 + 'already_done' => 'Данная заявка уже завершена',
  58 + );
  59 + }
  60 +
  61 + public function ua ()
  62 + {
  63 + return array (
  64 + 'callback' => 'Зворотній зв`язок',
  65 + 'fio' => 'ПІБ',
  66 + 'city' => 'Місто',
  67 + 'tel' => 'Телефон',
  68 + 'text' => 'Запитання',
  69 + 'send' => 'Надіслати',
  70 + 'send_success' => 'Ваше запит успішно відправлений! <p>Найближчим часом з Вами звяжется наш консультант</p>',
  71 + 'other_menager' => 'Ця заявка закріплена за іншим менеджером',
  72 + 'already_done' => 'Ця заявка вже закінчена',
  73 + );
  74 + }
  75 +
  76 + public function trim ($data)
  77 + {
  78 + foreach ($data as $key => &$value)
  79 + {
  80 + if (! is_array ($value))
  81 + {
  82 + $value = iconv ('utf-8', 'windows-1251', urldecode ($value));
  83 + }
  84 + }
  85 +
  86 + return $data;
  87 + }
  88 +
  89 + public function valid ($data, $upload = null)
  90 + {
  91 + return true;
  92 + }
  93 +
  94 + public function init ()
  95 + {
  96 + $pager = $this->getAll();
  97 +
  98 + // assign var
  99 + $this->tpl->assign('mass', array (
  100 + 'model' => $this,
  101 + 'result' => $pager['result'],
  102 + 'pager' => $pager['pager'],
  103 + 'status' => $this->getStatusAll(),
  104 + ));
  105 +
  106 + // assign template
  107 + $this->tpl->assign("tpl", "callback.tpl");
  108 + }
  109 +
  110 + public function getAll ()
  111 + {
  112 + $pager = pagerGetRun (array (
  113 + 'sql' => '
  114 + SELECT *
  115 + FROM `callback`
  116 + INNER JOIN `callback_status` as `status` ON `status`.callback_status_id = `callback`.callback_status_id
  117 + LEFT JOIN `zlo_admin` ON `zlo_admin`.id = `callback`.manager_id
  118 + ORDER BY callback_id DESC
  119 + ',
  120 + 'PerPage' => 30,
  121 + 'Size' => 15,
  122 + ));
  123 +
  124 + return array (
  125 + 'result' => $this->db->getAll($pager['sql'], array (), DB_FETCHMODE_ASSOC),
  126 + 'pager' => $pager
  127 + );
  128 + }
  129 +
  130 + public function getOne ($callback_id)
  131 + {
  132 + return $this->db->getRow('
  133 + SELECT *
  134 + FROM `callback`
  135 + INNER JOIN `callback_status` as `status` ON `status`.callback_status_id = `callback`.callback_status_id
  136 + LEFT JOIN `zlo_admin` ON `zlo_admin`.id = `callback`.manager_id
  137 + WHERE callback_id = '.(int)$callback_id.'
  138 + ', array (), DB_FETCHMODE_ASSOC);
  139 + }
  140 +
  141 + public function add ($param)
  142 + {
  143 + $param = $this->trim ($param);
  144 +
  145 + return $this->db->query('
  146 + INSERT INTO
  147 + `callback`
  148 + SET
  149 + `date_add` = "'.date('Y-m-d H:i:s').'",
  150 + `fio` = "'.$param['fio'].'",
  151 + `city` = "'.$param['city'].'",
  152 + `tel` = "'.$param['tel'].'",
  153 + `text` = "'.nl2br (strip_tags($param['text'])).'",
  154 + `callback_status_id` = "'.self::$NEW.'"
  155 + ');
  156 + }
  157 +
  158 + public function setStatus ($callback_id, $callback_status_id)
  159 + {
  160 + return $this->db->query('
  161 + UPDATE `callback`
  162 + SET
  163 + `callback_status_id` = "'.$callback_status_id.'",
  164 + `date_edit` = "'.date('Y-m-d H:i:s').'",
  165 + `manager_id` = "'.(int)$_SESSION['admin']['id'].'"
  166 + WHERE `callback_id` = "'.(int)$callback_id.'"
  167 + ');
  168 + }
  169 +
  170 + public function isDone (array $callback)
  171 + {
  172 + return $callback['is_done'] == 1 ? true : false;
  173 + }
  174 +
  175 + // ==== STATUS ====
  176 +
  177 + public function getStatusAll ()
  178 + {
  179 + return $this->db->getAll('
  180 + SELECT *
  181 + FROM `callback_status`
  182 + ORDER BY sortorder ASC
  183 + ', array (), DB_FETCHMODE_ASSOC);
  184 + }
  185 +
  186 + // ==== HTML ====
  187 + /**
  188 + * Зделал тут, чтобы по всему проекту не искать
  189 + * @return string
  190 + */
  191 + public function buttonById ($callback_id)
  192 + {
  193 + $callback = $this->getOne($callback_id);
  194 + $status = $this->getStatusAll();
  195 +
  196 + return $this->button($status, $callback['callback_status_id']);
  197 + }
  198 +
  199 + public function button ($status, $default_status_id)
  200 + {
  201 + // current
  202 + $current = '';
  203 +
  204 + foreach ($status as $i => $row)
  205 + {
  206 + if ($row['callback_status_id'] == $default_status_id)
  207 + {
  208 + $current = $row;
  209 + unset ($status[$i]);
  210 +
  211 + break;
  212 + }
  213 + }
  214 +
  215 + ob_start();
  216 +
  217 + echo '
  218 + <div class="btn-group">
  219 + <button class="btn btn-primary" type="button" style="background:'.$current['callback_status_color'].'">'.$current['callback_status_title'].'</button>
  220 + <button aria-expanded="false" aria-haspopup="true" data-toggle="dropdown" class="btn btn-primary dropdown-toggle" type="button" style="background:'.$current['callback_status_color'].'">
  221 + <span class="caret"></span>
  222 + </button>
  223 + <ul class="dropdown-menu">';
  224 +
  225 + foreach ($status as $row)
  226 + {
  227 + echo '<li><a value="'.$row['callback_status_id'].'">'.$row['callback_status_title'].'</a></li>';
  228 + }
  229 +
  230 + echo '
  231 + </ul>
  232 + </div>';
  233 +
  234 + return ob_get_clean();
  235 + }
  236 +
  237 + public function htmlForm ()
  238 + {
  239 + ob_start();
  240 +
  241 + echo '<form id="callback-form">';
  242 +
  243 + echo '<h2>'.$this->getTranslation ('callback').'</h2>';
  244 +
  245 + echo '<hr>';
  246 +
  247 + echo '
  248 + <div class="optional">
  249 + <label>'.$this->getTranslation ('fio').':</label>
  250 + <div class="info tel">
  251 + <input type="text" name="fio" class="idle validate[required]" id="callback-fio">
  252 + </div>
  253 + </div>';
  254 +
  255 + echo '
  256 + <div class="optional">
  257 + <label>'.$this->getTranslation ('city').':</label>
  258 + <div class="info tel">
  259 + <input type="text" name="city" class="idle validate[required]" id="callback-city">
  260 + </div>
  261 + </div>';
  262 +
  263 + echo '
  264 + <div class="optional">
  265 + <label>'.$this->getTranslation ('tel').':</label>
  266 + <div class="info tel">
  267 + <input type="text" name="tel" class="idle validate[required]" id="callback-tel">
  268 + </div>
  269 + </div>';
  270 +
  271 + echo '
  272 + <div class="optional">
  273 + <label>'.$this->getTranslation ('text').':</label>
  274 + <div class="info tel">
  275 + <textarea type="text" name="text" class="idle validate[maxSize[1000]]" id="callback-text"></textarea>
  276 + </div>
  277 + </div>';
  278 +
  279 + echo '
  280 + <center>
  281 + <input class="submit submit5" type="submit" value="'.$this->getTranslation ('send').'">
  282 + </center>';
  283 +
  284 + echo '</form>';
  285 +
  286 + return ob_get_clean();
  287 + }
  288 +
  289 + public function getProcessingMessage (array $param)
  290 + {
  291 + $param = $this->trim($param);
  292 +
  293 + return '<div class="alert warning"><div class="img"></div><div>'.$this->getTranslation ('other_menager').' '.$param['username'].'</div></div>';
  294 + }
  295 +
  296 + public function getDoneMessage (array $param)
  297 + {
  298 + $param = $this->trim($param);
  299 +
  300 + return '<div class="alert done"><div class="img"></div><div>'.$this->getTranslation ('already_done').'</div></div>';
  301 + }
  302 +
  303 + public function getSuccessMessage ()
  304 + {
  305 + return $this->getTranslation ('send_success') ;
  306 + }
  307 +}
1 <?php 1 <?php
2 -// set_time_limit(300);  
3 -setlocale (LC_ALL, "ru_RU.KOI8-R");  
4 2
5 -define ('DB_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/DB/");  
6 -define ('PAGER_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/PAGER/");  
7 -define ('SMARTY_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/SMARTY/");  
8 -define ('HTTP_DIR', $_SERVER['DOCUMENT_ROOT'] . "/libs/HTTP/"); 3 +setlocale (LC_ALL, 'ru_RU.KOI8-R');
9 4
10 -require ($_SERVER['DOCUMENT_ROOT'] . '/config/config.php');  
11 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/PEAR.php');  
12 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/DB.php');  
13 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/dbtree.php');  
14 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/Pager_Wrapper.php');  
15 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/functions.php');  
16 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/ffmpeg.php');  
17 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/image.php');  
18 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/PHPMailer/class.phpmailer.php');  
19 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/mail.php');  
20 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/sendMail.php');  
21 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/Smarty.class.php");  
22 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/FGetCSV.php');  
23 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/Download.php');  
24 -require ($_SERVER['DOCUMENT_ROOT'] . '/libs/cache.class.php');  
25 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/statics.class.php");  
26 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/catalogs.class.php");  
27 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/forum.class.php");  
28 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/articles.class.php");  
29 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/news.class.php");  
30 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/advices.class.php");  
31 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/advices2.class.php");  
32 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/gallery.class.php");  
33 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/gallery_list.class.php");  
34 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/orders.class.php");  
35 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/rubrics.class.php");  
36 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/CSLXmlReader.class.php");  
37 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/banners.class.php");  
38 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/video.class.php");  
39 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/akcii.class.php");  
40 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/sale.class.php");  
41 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/promo.class.php");  
42 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/reviews.class.php");  
43 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/book.class.php");  
44 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/url.class.php");  
45 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/reviews2.class.php");  
46 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/vacancy.class.php");  
47 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/fon.class.php");  
48 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/video2.class.php");  
49 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/send.class.php");  
50 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/extra.class.php");  
51 -require ($_SERVER['DOCUMENT_ROOT'] . "/libs/setup.class.php");  
52 -?>  
53 \ No newline at end of file 5 \ No newline at end of file
  6 +define ('DB_DIR', $_SERVER['DOCUMENT_ROOT'] . '/libs/DB/');
  7 +define ('PAGER_DIR', $_SERVER['DOCUMENT_ROOT'] . '/libs/PAGER/');
  8 +define ('SMARTY_DIR', $_SERVER['DOCUMENT_ROOT'] . '/libs/SMARTY/');
  9 +define ('HTTP_DIR', $_SERVER['DOCUMENT_ROOT'] . '/libs/HTTP/');
  10 +
  11 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/config/config.php');
  12 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/PEAR.php');
  13 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/DB.php');
  14 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/dbtree.php');
  15 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/Pager_Wrapper.php');
  16 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/functions.php');
  17 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/ffmpeg.php');
  18 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/image.php');
  19 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/PHPMailer/class.phpmailer.php');
  20 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/mail.php');
  21 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/sendMail.php');
  22 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/Smarty.class.php');
  23 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/FGetCSV.php');
  24 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/Download.php');
  25 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/cache.class.php');
  26 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/statics.class.php');
  27 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/catalogs.class.php');
  28 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/forum.class.php');
  29 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/articles.class.php');
  30 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/news.class.php');
  31 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/advices.class.php');
  32 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/advices2.class.php');
  33 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/gallery.class.php');
  34 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/gallery_list.class.php');
  35 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/orders.class.php');
  36 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/rubrics.class.php');
  37 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/CSLXmlReader.class.php');
  38 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/banners.class.php');
  39 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/video.class.php');
  40 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/akcii.class.php');
  41 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/sale.class.php');
  42 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/promo.class.php');
  43 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/reviews.class.php');
  44 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/book.class.php');
  45 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/url.class.php');
  46 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/reviews2.class.php');
  47 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/vacancy.class.php');
  48 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/fon.class.php');
  49 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/video2.class.php');
  50 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/send.class.php');
  51 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/extra.class.php');
  52 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/callback.class.php');
  53 +require_once ($_SERVER['DOCUMENT_ROOT'] . '/libs/setup.class.php');
54 \ No newline at end of file 54 \ No newline at end of file
modules/admin/callback.php 0 → 100644
  1 +<?php
  2 +
  3 +// показуем
  4 +$objCallback->init();
0 \ No newline at end of file 5 \ No newline at end of file
templates/admin/callback.tpl 0 → 100644
  1 +{literal}
  2 +<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  3 +<!-- bootstrap -->
  4 +<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
  5 +<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
  6 +<!-- modalBox -->
  7 +<script src='/js/modalBox/modalBox.js'></script>
  8 +<!-- callback -->
  9 +<script src='/js/callback.js'></script>
  10 +<script src='/js/admin/callback.js'></script>
  11 +<link href="/css/admin/callback.css" rel="stylesheet">
  12 +{/literal}
  13 +
  14 +{php}
  15 +/*
  16 +function button ($array, $value)
  17 +{
  18 + // current
  19 + $current = '';
  20 +
  21 + foreach ($array as $i => $row)
  22 + {
  23 + if ($row['callback_status_id'] == $value)
  24 + {
  25 + $current = $row;
  26 + unset ($array[$i]);
  27 +
  28 + break;
  29 + }
  30 + }
  31 +
  32 + echo '
  33 + <div class="btn-group">
  34 + <button class="btn btn-primary" type="button" style="background:'.$current['callback_status_color'].'">'.$current['callback_status_title'].'</button>
  35 + <button aria-expanded="false" aria-haspopup="true" data-toggle="dropdown" class="btn btn-primary dropdown-toggle" type="button" style="background:'.$current['callback_status_color'].'">
  36 + <span class="caret"></span>
  37 + </button>
  38 + <ul class="dropdown-menu">';
  39 +
  40 + foreach ($array as $row)
  41 + {
  42 + echo '<li><a value="'.$row['callback_status_id'].'">'.$row['callback_status_title'].'</a></li>';
  43 + }
  44 +
  45 + echo '
  46 + </ul>
  47 + </div>';
  48 +}
  49 +*/
  50 +echo '<table id="callback" class="table table table-hover">';
  51 +
  52 + echo '<tr>';
  53 +
  54 + echo '<th class="status">Ñòàòóñ</th>';
  55 + echo '<th class="date">Äàòà</th>';
  56 + echo '<th class="city">Ãîðîä</th>';
  57 + echo '<th class="tel">Òåë</th>';
  58 + echo '<th class="text">Ñîîáùåíèå</th>';
  59 + echo '<th class="manager">Ìåíåäæåð</th>';
  60 + echo '<th class="date_edit">Âðåìÿ èçìåíåíèÿ</th>';
  61 + echo '<th class="control"></th>';
  62 +
  63 + echo '</tr>';
  64 +
  65 + foreach ($this->_tpl_vars['mass']['result'] as $callback)
  66 + {
  67 + $done = $callback['callback_status_id'] == 5 ? 'done' : '';
  68 +
  69 + echo '<tr callback_id="'.$callback['callback_id'].'">';
  70 +
  71 + echo '<td class="status '.$done.'">';
  72 + echo $this->_tpl_vars['mass']['model']->button ($this->_tpl_vars['mass']['status'], $callback['callback_status_id']);
  73 + echo '</td>';
  74 +
  75 + echo '<td class="date">'.$callback['date_add'].'</td>';
  76 + echo '<td class="city">'.$callback['city'].'</td>';
  77 + echo '<td class="tel">'.$callback['tel'].'</td>';
  78 + echo '<td class="text"><span class="btn read btn-default">ïðî÷èòàòü</span></td>';
  79 + echo '<td class="manager">'.$callback['username'].'</td>';
  80 + echo '<td class="date_edit">'.$callback['date_edit'].'</td>';
  81 +
  82 + echo '</tr>';
  83 + }
  84 +
  85 +echo '</table>';
  86 +
  87 + pagerGetShow($this->_tpl_vars['mass']['pager']);
  88 +
  89 +{/php}
0 \ No newline at end of file 90 \ No newline at end of file
templates/index.tpl
@@ -69,7 +69,7 @@ @@ -69,7 +69,7 @@
69 69
70 function comparatorId(a, b) { 70 function comparatorId(a, b) {
71 return $(a).data('sort') > $(b).data('sort') ? -1 : 1; 71 return $(a).data('sort') > $(b).data('sort') ? -1 : 1;
72 - } 72 + }
73 73
74 var options = { 74 var options = {
75 autoResize: false, // This will auto-update the layout when the browser window is resized. 75 autoResize: false, // This will auto-update the layout when the browser window is resized.
@@ -77,10 +77,10 @@ @@ -77,10 +77,10 @@
77 comparator:comparatorId, 77 comparator:comparatorId,
78 offset: 2, // Optional, the distance between grid items 78 offset: 2, // Optional, the distance between grid items
79 itemWidth: 230 // Optional, the width of a grid item 79 itemWidth: 230 // Optional, the width of a grid item
80 - }; 80 + };
81 var handler = $('.row'); 81 var handler = $('.row');
82 handler.wookmark(options); 82 handler.wookmark(options);
83 - }); 83 + });
84 84
85 jQuery(function(){ 85 jQuery(function(){
86 $(".menup").css({opacity: 0}); 86 $(".menup").css({opacity: 0});
@@ -92,7 +92,7 @@ @@ -92,7 +92,7 @@
92 $(".menup").animate({ opacity: 0 },450); 92 $(".menup").animate({ opacity: 0 },450);
93 } 93 }
94 ); 94 );
95 - }); 95 + });
96 96
97 function doRate(a,c){ 97 function doRate(a,c){
98 $.ajax({ 98 $.ajax({
@@ -161,19 +161,19 @@ @@ -161,19 +161,19 @@
161 161
162 162
163 $("#tab2").click(function() { 163 $("#tab2").click(function() {
164 - $.get("/ajax/brends.php",  
165 - function(data){  
166 - $("#etab2").html(data);  
167 - }); 164 + $.get("/ajax/brends.php",
  165 + function(data){
  166 + $("#etab2").html(data);
  167 + });
168 }); 168 });
169 169
170 $("#tab3").click(function() { 170 $("#tab3").click(function() {
171 - $.get("/ajax/akcii.php",  
172 - function(data){  
173 - $("#etab3").html(data);  
174 - }); 171 + $.get("/ajax/akcii.php",
  172 + function(data){
  173 + $("#etab3").html(data);
  174 + });
175 }); 175 });
176 - 176 +
177 if (window.location.hash=='#etab1' || window.location.hash=='#etab2' || window.location.hash=='#etab3'){ 177 if (window.location.hash=='#etab1' || window.location.hash=='#etab2' || window.location.hash=='#etab3'){
178 var loc = window.location.hash.replace("#e",""); 178 var loc = window.location.hash.replace("#e","");
179 $('#'+loc).click(); 179 $('#'+loc).click();
@@ -222,28 +222,29 @@ @@ -222,28 +222,29 @@
222 {if $tpl eq "catalogs_product-list.tpl"} 222 {if $tpl eq "catalogs_product-list.tpl"}
223 <script type="text/javascript"> 223 <script type="text/javascript">
224 {literal} 224 {literal}
225 - $(document).ready(function() {  
226 -  
227 - $('.sale').mouseover(function() {  
228 - $( this ).append( "<div class='msg'>Ïðèñóòñòâóåò òîâàð<br />ñî ñêèäêîé</div>" );  
229 - $('.msg').css({  
230 - 'position':"absolute",  
231 - 'width':"120px",  
232 - 'z-index':"99999",  
233 - 'font-size':"12px",  
234 - 'top':"30px",  
235 - 'left':"-80px",  
236 - 'padding':"10px",  
237 - 'border-radius':"5px",  
238 - 'background-color':"#f6f6f6",  
239 - 'border':"1px solid #dbdcdc",  
240 - 'font-weight':"normal",  
241 - 'color':"red"  
242 - });  
243 - }).mouseout(function() {  
244 - $('.msg').remove();  
245 - });  
246 - 225 + $(document).ready(function()
  226 + {
  227 + $('.sale').mouseover(function()
  228 + {
  229 + $( this ).append( "<div class='msg'>Ïðèñóòñòâóåò òîâàð<br />ñî ñêèäêîé</div>" );
  230 + $('.msg').css({
  231 + 'position':"absolute",
  232 + 'width':"120px",
  233 + 'z-index':"99999",
  234 + 'font-size':"12px",
  235 + 'top':"30px",
  236 + 'left':"-80px",
  237 + 'padding':"10px",
  238 + 'border-radius':"5px",
  239 + 'background-color':"#f6f6f6",
  240 + 'border':"1px solid #dbdcdc",
  241 + 'font-weight':"normal",
  242 + 'color':"red"
  243 + });
  244 + }).mouseout(function()
  245 + {
  246 + $('.msg').remove();
  247 + });
247 {/literal} 248 {/literal}
248 {if $smarty.get.topall eq 1} 249 {if $smarty.get.topall eq 1}
249 {literal} 250 {literal}
@@ -261,8 +262,7 @@ @@ -261,8 +262,7 @@
261 $("ul#list1 li:first").addClass("active").show(); //Activate first tab 262 $("ul#list1 li:first").addClass("active").show(); //Activate first tab
262 $(".tab_content:first").show(); //Show first tab content 263 $(".tab_content:first").show(); //Show first tab content
263 } 264 }
264 -  
265 - 265 +
266 //On Click Event 266 //On Click Event
267 $("ul#list1 li.tab").click(function() { 267 $("ul#list1 li.tab").click(function() {
268 $("ul#list1 li.tab").removeClass("active"); //Remove any "active" class 268 $("ul#list1 li.tab").removeClass("active"); //Remove any "active" class
@@ -313,6 +313,13 @@ @@ -313,6 +313,13 @@
313 {/if} 313 {/if}
314 {$no_capcha} 314 {$no_capcha}
315 {$SNOW} 315 {$SNOW}
  316 + <!-------[ Form falidator ]------->
  317 + <link rel="stylesheet" href="/js/validator/validationEngine.jquery.css" type="text/css"/>
  318 + <link rel="stylesheet" href="/js/validator/template.css" type="text/css"/>
  319 + <script src="/js/validator/languages/jquery.validationEngine-ru.js" type="text/javascript" charset="utf-8"></script>
  320 + <script src="/js/validator/jquery.validationEngine.js" type="text/javascript" charset="utf-8"></script>
  321 + <script type="text/javascript" src="{$smarty.const.URL}js/transForm.js"></script>
  322 + <script type="text/javascript" src="{$smarty.const.URL}js/callback.js"></script>
316 </head> 323 </head>
317 <body> 324 <body>
318 {literal} 325 {literal}
@@ -345,15 +352,14 @@ @@ -345,15 +352,14 @@
345 <meta itemprop="openingHours" content="Ïí-Ïò. 10:00?19:00"> 352 <meta itemprop="openingHours" content="Ïí-Ïò. 10:00?19:00">
346 <meta itemprop="openingHours" content="Ñá. 10:00-17:00"> 353 <meta itemprop="openingHours" content="Ñá. 10:00-17:00">
347 <meta itemprop="email" content="vopros@eltrade.com.ua"> 354 <meta itemprop="email" content="vopros@eltrade.com.ua">
348 - 355 +
349 <span style="display: none"> 356 <span style="display: none">
350 <link itemprop="url" href="http://extremstyle.ua"> 357 <link itemprop="url" href="http://extremstyle.ua">
351 <a itemprop="sameAs" href="https://www.facebook.com/extremstyle.ua/">FB</a> 358 <a itemprop="sameAs" href="https://www.facebook.com/extremstyle.ua/">FB</a>
352 <a itemprop="sameAs" href="https://plus.google.com/104058500914247254807">Google+</a> 359 <a itemprop="sameAs" href="https://plus.google.com/104058500914247254807">Google+</a>
353 <a itemprop="sameAs" href="https://www.youtube.com/user/extremstyleUA">Youtube</a> 360 <a itemprop="sameAs" href="https://www.youtube.com/user/extremstyleUA">Youtube</a>
354 </span> 361 </span>
355 -  
356 - 362 +
357 <div class="basket_top"> 363 <div class="basket_top">
358 {if $smarty.session.user.name} 364 {if $smarty.session.user.name}
359 <a href="{$smarty.const.URL}account/panel/">{$smarty.session.user.name}</a> 365 <a href="{$smarty.const.URL}account/panel/">{$smarty.session.user.name}</a>
@@ -369,12 +375,24 @@ @@ -369,12 +375,24 @@
369 <div class="logo"> 375 <div class="logo">
370 <a href="{$smarty.const.URL}{$lang_prefix}" title="Åêñòðèì ñòàéë"><span>Åêñòðèì ñòàéë</span></a> 376 <a href="{$smarty.const.URL}{$lang_prefix}" title="Åêñòðèì ñòàéë"><span>Åêñòðèì ñòàéë</span></a>
371 </div> 377 </div>
  378 +
  379 + <div class="slogan">{if $lang eq 'ukr'}Ìàãàçèíè ÿê³ñíîãî ñïîðÿäæåííÿ{else}Ìàãàçèíû êà÷åñòâåííîãî ñíàðÿæåíèÿ{/if}</div>
  380 +
372 <div class="search_top"> 381 <div class="search_top">
373 - <div class="tel">{* Èíòåðíåò-ìàãàçèí: *}{*<span class="b">(044)</span> <span>303-90-10;</span>*} <span class="b">(044)</span> <span>303-90-10;</span> <span class="b">(044)</span> <span>428-65-38;</span> <span class="b">(050)</span> <span>382-03-00</span> <img src="{$smarty.const.URL}img/skype.png" align="middle" /> <span>www-extremstyle.ua</span></div> 382 + <div class="tel">
  383 + {* Èíòåðíåò-ìàãàçèí: *}{*<span class="b">(044)</span> <span>303-90-10;</span>*}
  384 + <span class="b">(044)</span> <span>303-90-10;</span>
  385 + <span class="b">(044)</span> <span>428-65-38;</span>
  386 + <span class="b">(050)</span> <span>382-03-00</span>
  387 + <a class="btn btn-default" id="callback-button">{if $lang eq 'ukr'}çâîðîòí³é çâ`ÿçîê{else}îáðàòíûé çâîíîê{/if}</a>
  388 + </div>
374 {* 389 {*
375 <div class="hotline">Òåëåôîí ãîðÿ÷åé ëèíèè: <span>0-800-50-09-10;</span> zhaloba@eltrade.com.ua</div> 390 <div class="hotline">Òåëåôîí ãîðÿ÷åé ëèíèè: <span>0-800-50-09-10;</span> zhaloba@eltrade.com.ua</div>
376 *} 391 *}
377 - <div class="hotline">{$smarty.const.VOPROS}: <span>{mailto address="vopros@eltrade.com.ua" encode="javascript_charcode"}</span></div> 392 + <div class="hotline-skype">
  393 + <div class="hotline">{$smarty.const.VOPROS}: <span>{mailto address="vopros@eltrade.com.ua" encode="javascript_charcode"}</span></div>
  394 + <div class="skype"><img src="{$smarty.const.URL}img/skype.png" align="middle" /> <span>www-extremstyle.ua</span></div>
  395 + </div>
378 <div class="langs"> 396 <div class="langs">
379 <a href="{$smarty.const.URL}{$link_ukr}"><img src="{$smarty.const.URL}img/ico_ua.gif" border="0" width="16" height="11" /></a> 397 <a href="{$smarty.const.URL}{$link_ukr}"><img src="{$smarty.const.URL}img/ico_ua.gif" border="0" width="16" height="11" /></a>
380 <a href="{$smarty.const.URL}{$link_rus}"><img src="{$smarty.const.URL}img/ico_ru.gif" border="0" width="16" height="11" /></a> 398 <a href="{$smarty.const.URL}{$link_rus}"><img src="{$smarty.const.URL}img/ico_ru.gif" border="0" width="16" height="11" /></a>
@@ -382,11 +400,9 @@ @@ -382,11 +400,9 @@
382 400
383 <div class="search_form"> 401 <div class="search_form">
384 <div itemscope itemtype="http://schema.org/WebSite"> 402 <div itemscope itemtype="http://schema.org/WebSite">
385 - <meta itemprop="url" content="http://extremstyle.ua"/>  
386 - {literal} 403 + <meta itemprop="url" content="http://extremstyle.ua"/>
387 <form itemprop="potentialAction" itemscope itemtype="http://schema.org/SearchAction" method="get" action="{$smarty.const.URL}catalogs/ "> 404 <form itemprop="potentialAction" itemscope itemtype="http://schema.org/SearchAction" method="get" action="{$smarty.const.URL}catalogs/ ">
388 - <meta itemprop="target" content="http://extremstyle.ua/catalogs/?search_str={search_str}"/>  
389 - {/literal} 405 + <meta itemprop="target" content='http://extremstyle.ua/catalogs/?search_str={$smarty.get.search_str|stripslashes|escape:"html"}'/>
390 <div class="inp_l"></div> 406 <div class="inp_l"></div>
391 <input itemprop="query-input" required type="text" name="search_str" id="inputString" onkeyup="lookup(this.value);" autocomplete="off" value='{$smarty.get.search_str|stripslashes|escape:"html"}' /> 407 <input itemprop="query-input" required type="text" name="search_str" id="inputString" onkeyup="lookup(this.value);" autocomplete="off" value='{$smarty.get.search_str|stripslashes|escape:"html"}' />
392 <input type="submit" value="{$smarty.const.NAYTI}" /> 408 <input type="submit" value="{$smarty.const.NAYTI}" />
@@ -395,8 +411,6 @@ @@ -395,8 +411,6 @@
395 </form> 411 </form>
396 </div> 412 </div>
397 </div> 413 </div>
398 -  
399 - <div class="slogan">Íàéá³ëüøèé âèá³ð íàéêðàùîãî ñïîðÿäæåííÿ</div>  
400 </div> 414 </div>
401 </div> 415 </div>
402 416
@@ -471,16 +485,16 @@ @@ -471,16 +485,16 @@
471 <div class="site" style="position:relative;z-index:887;{if $tpl eq 'catalogs_products_hits.tpl'}min-height:1700px;{/if}"> 485 <div class="site" style="position:relative;z-index:887;{if $tpl eq 'catalogs_products_hits.tpl'}min-height:1700px;{/if}">
472 {php} global $path; if (!isset($path[1]) || (isset($path[1]) && $path[1]!='account')) { {/php} 486 {php} global $path; if (!isset($path[1]) || (isset($path[1]) && $path[1]!='account')) { {/php}
473 {php} 487 {php}
474 - } else {  
475 - // Ïîäêëþ÷àåì ôàéëû  
476 - if(is_file($_SERVER['DOCUMENT_ROOT'].'/account/'.$path[2].'.php')) {  
477 - echo"  
478 - <div class='personal-account'>";  
479 - include($_SERVER['DOCUMENT_ROOT'].'/account/'.$path[2].'.php');  
480 - echo"  
481 - </div>  
482 - ";  
483 - } 488 + } else {
  489 + // Ïîäêëþ÷àåì ôàéëû
  490 + if(is_file($_SERVER['DOCUMENT_ROOT'].'/account/'.$path[2].'.php')) {
  491 + echo"
  492 + <div class='personal-account'>";
  493 + include($_SERVER['DOCUMENT_ROOT'].'/account/'.$path[2].'.php');
  494 + echo"
  495 + </div>
  496 + ";
  497 + }
484 } 498 }
485 {/php} 499 {/php}
486 {php} if (!isset($path[1]) || (isset($path[1]) && $path[1]!='account' && $path[1]!='opros')) { {/php} {include file="$tpl"} 500 {php} if (!isset($path[1]) || (isset($path[1]) && $path[1]!='account' && $path[1]!='opros')) { {/php} {include file="$tpl"}
@@ -627,12 +641,7 @@ @@ -627,12 +641,7 @@
627 {/section} 641 {/section}
628 // Îòïðàâêà äàííûõ 642 // Îòïðàâêà äàííûõ
629 ga('ecommerce:send'); 643 ga('ecommerce:send');
630 -  
631 -  
632 {/if} 644 {/if}
633 -  
634 -  
635 -  
636 </script> 645 </script>
637 {* 646 {*
638 <script type="text/javascript"> 647 <script type="text/javascript">