Commit 639b0c95c8d46d371ac4743dd62fa5f3426c6f4b
1 parent
abf79446
удалил мусор
Showing
2 changed files
with
0 additions
and
3558 deletions
Show diff stats
libs/catalogs.class_.php deleted
| 1 | -<?php | ||
| 2 | -class Catalogs{ | ||
| 3 | - var $db = null; | ||
| 4 | - var $tpl = null; | ||
| 5 | - var $error = null; | ||
| 6 | - var $photo_id = null; | ||
| 7 | - | ||
| 8 | - | ||
| 9 | - function Catalogs(&$db,&$tpl,&$error){ | ||
| 10 | - $this->db = &$db; | ||
| 11 | - $this->tpl = &$tpl; | ||
| 12 | - $this->error = &$error; | ||
| 13 | - } | ||
| 14 | - | ||
| 15 | - | ||
| 16 | - function trim(&$data){ | ||
| 17 | - foreach($data as $key=>$value){ | ||
| 18 | - if(is_array($value))$this->trim($value); | ||
| 19 | - else $data[$key] = stripslashes(trim($value)); | ||
| 20 | - } | ||
| 21 | - } | ||
| 22 | - | ||
| 23 | - | ||
| 24 | - function valid($data,$upload = null){ | ||
| 25 | - | ||
| 26 | - if(isset($data['name'])){ | ||
| 27 | - if( !preg_match("/.{1,100}/i",$data['name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Íàçâàíèÿ."; | ||
| 28 | - } | ||
| 29 | - | ||
| 30 | - if(isset($data['about_min'])){ | ||
| 31 | - if( !preg_match("/.+/is",$data['about_min']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Êðàòêîå îïèñàíèå."; | ||
| 32 | - } | ||
| 33 | - /* | ||
| 34 | - if(isset($data['text'])){ | ||
| 35 | - if( !preg_match("/.+/is",$data['text']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Ïîëíîå îïèñàíèå."; | ||
| 36 | - } */ | ||
| 37 | -/* | ||
| 38 | - if(isset($data['cine'])){ | ||
| 39 | - if( !preg_match("/[0-9]+/",$data['cine']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Öåíà, òîëüêî öèôðû."; | ||
| 40 | - } */ | ||
| 41 | - | ||
| 42 | - if(isset($upload['pic']['name']) && $upload['pic']['tmp_name']){ | ||
| 43 | - $type = substr(strrchr($upload['pic']['name'],"."),1); | ||
| 44 | - if( !preg_match("/^(jpeg|jpg|gif|png|bmp)$/i",$type) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èçîáðàæåíèÿ, òîëüêî jpg,png,gif."; | ||
| 45 | - } | ||
| 46 | - | ||
| 47 | - if(isset($upload['file']['name'])){ | ||
| 48 | - if( !preg_match("/\.csv$/i",$upload['file']['name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ CSV ôàéë, òîëüêî csv."; | ||
| 49 | - } | ||
| 50 | - | ||
| 51 | - | ||
| 52 | - if(isset($data['order_name'])){ | ||
| 53 | - if( !preg_match("/.{1,100}/i",$data['order_name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èìÿ (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 54 | - } | ||
| 55 | - | ||
| 56 | - if(isset($data['order_adress'])){ | ||
| 57 | - if( !preg_match("/.{1,200}/i",$data['order_adress']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Àäðåñ (Ìàêñèìóì 200 ñèìâîëîâ)."; | ||
| 58 | - } | ||
| 59 | - | ||
| 60 | - if(isset($data['order_phone2'])&& strlen($data['order_phone2'])>0){ | ||
| 61 | - if( !preg_match("/.{1,20}/i",$data['order_phone2']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Òåëåôîí (Ìàêñèìóì 70 ñèìâîëîâ)."; | ||
| 62 | - } | ||
| 63 | - | ||
| 64 | - if(isset($data['order_phone'])){ | ||
| 65 | -if( trim($data['order_phone']) == "" ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Ìîáèëüíûé òåëåôîí (ôîðìàò: (0XX) XXX-XXXX)."; | ||
| 66 | - } | ||
| 67 | - | ||
| 68 | - if(isset($data['delivery']) && $data['delivery']==0){ | ||
| 69 | - $this->error[] = "Îøèáêà ââîäà ïîëÿ Äîñòàâêà."; | ||
| 70 | - } | ||
| 71 | - | ||
| 72 | - if(isset($data['user_name'])){ | ||
| 73 | - if( !preg_match("/.{1,100}/i",$data['user_name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èìÿ (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 74 | - } | ||
| 75 | - | ||
| 76 | - if(isset($data['user_email'])){ | ||
| 77 | - if( !preg_match("/.{1,80}/i",$data['user_email']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø e-mail (Ìàêñèìóì 80 ñèìâîëîâ)."; | ||
| 78 | - } | ||
| 79 | - | ||
| 80 | - if(isset($data['user_login'])){ | ||
| 81 | - if( !preg_match("/.{1,100}/i",$data['user_login']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø ëîãèí (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 82 | - elseif( $this->isLoginUser($data['user_login']) ) $this->error[] = "Îøèáêà òàêîé Ëîãèí óæå åñòü!"; | ||
| 83 | - } | ||
| 84 | - | ||
| 85 | - if(isset($data['you_login'])){ | ||
| 86 | - if( !$this->isLoginUser($data['you_login']) ) $this->error[] = "Òàêîãî ËÎÃÈÍÀ íåò â áàçå äàííûõ ñàéòà!"; | ||
| 87 | - } | ||
| 88 | - | ||
| 89 | - if(isset($data['user_psw'])){ | ||
| 90 | - if( !preg_match("/.{1,100}/i",$data['user_psw']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø ïàðîëü (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 91 | - } | ||
| 92 | - | ||
| 93 | - return ( count($this->error) ) ? true : false; | ||
| 94 | - } | ||
| 95 | - | ||
| 96 | - function deleteRubric($id,$field="id"){ | ||
| 97 | - $sql = "select pic,id,parent_id from catalogs_rubrics where $field=?"; | ||
| 98 | - $res = $this->db->getAll($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 99 | - foreach($res as $row){ | ||
| 100 | - @unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/rubrics/{$row['pic']}"); | ||
| 101 | - $sql = "delete from catalogs_rubrics where id=?"; | ||
| 102 | - $this->db->query($sql,array($row['id'])); | ||
| 103 | - $this->deleteFiltersRubric_id($row['id']); | ||
| 104 | - $this->deleteYearsRubric_id($row['id']); | ||
| 105 | - $this->deleteProductsRubric($row['id']); | ||
| 106 | - $this->deleteRubric($row['id'],"parent_id"); | ||
| 107 | - } | ||
| 108 | - } | ||
| 109 | - | ||
| 110 | - function deleteProductPics($id,$pics = array('pic_big','pic')){ | ||
| 111 | - $sql = "select pic_big,pic from catalogs_products where id=?"; | ||
| 112 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 113 | - // if(in_array('pic_big',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/products/big/{$row['pic_big']}"); | ||
| 114 | - if(in_array('pic',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/products/{$row['pic']}"); | ||
| 115 | - } | ||
| 116 | - | ||
| 117 | - function deleteProduct($id){ | ||
| 118 | - $this->deleteProductPics($id); | ||
| 119 | - $sql = "delete from catalogs_products where id=?"; | ||
| 120 | - $this->db->query($sql,array($id)); | ||
| 121 | - $this->delete_keysProductsFilters($id); | ||
| 122 | - $this->delete_keysProductsAkcii($id); | ||
| 123 | - $this->delete_keysProductsYears($id); | ||
| 124 | - $this->delete_keysProductsCities($id); | ||
| 125 | - $this->deleteProductModifications($id); | ||
| 126 | - } | ||
| 127 | - | ||
| 128 | - function deleteProductsRubric($id){ | ||
| 129 | - $res = $this->db->getAll("select id from catalogs_products where rubric_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 130 | - foreach($res as $row){ | ||
| 131 | - $this->deleteProduct($row['id']); | ||
| 132 | - } | ||
| 133 | - } | ||
| 134 | - | ||
| 135 | - | ||
| 136 | - function PhotosCheck($id_s,$check_s = array()){ | ||
| 137 | - $sql = "UPDATE gallery SET active = ? WHERE id =?"; | ||
| 138 | - | ||
| 139 | - foreach($id_s as $id){ | ||
| 140 | - $this->db->query($sql,array(0,$id)); | ||
| 141 | - } | ||
| 142 | - if(count($check_s)){ | ||
| 143 | - foreach($check_s as $id){ | ||
| 144 | - $this->db->query($sql,array(1,$id)); | ||
| 145 | - } | ||
| 146 | - } | ||
| 147 | - } | ||
| 148 | - | ||
| 149 | - function viewRubrics($id = 0,$parent_id = 0){ // print $parent_id."<br />"; | ||
| 150 | - global $rubrics; | ||
| 151 | - //$sql = "select a.*,(select b.id from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid from catalogs_rubrics a where a.parent_id=? group by a.id order by a.sort asc"; | ||
| 152 | -$sql = "select a.*,(select b.translit from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid2,(select b.id from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid from catalogs_rubrics a where a.parent_id=? group by a.id order by a.sort asc"; | ||
| 153 | - | ||
| 154 | -$res = $this->db->query($sql,array($id)); | ||
| 155 | - while ($res->fetchInto($row,DB_FETCHMODE_ASSOC)){ | ||
| 156 | - $rubrics[] = $row; //print $row['id']."<br />"; | ||
| 157 | - | ||
| 158 | - if(in_array($row['id'],$this->getParentIdRubric($parent_id))){$this->viewRubrics($row['id']);} | ||
| 159 | - // if($row['level']==0){$this->viewRubrics($row['id']);} | ||
| 160 | - } | ||
| 161 | - $this->tpl->assign("rubrics",$rubrics); | ||
| 162 | - } | ||
| 163 | - | ||
| 164 | - function getParentIdRubric($id){ | ||
| 165 | - //$ids = array(); | ||
| 166 | - global $ids; | ||
| 167 | - if(!count($ids))$ids = array(); | ||
| 168 | - while($id>0){ | ||
| 169 | - $row = $this->db->getRow('select id,parent_id from catalogs_rubrics where id=?',array($id),DB_FETCHMODE_ASSOC); | ||
| 170 | - //if(isset($row['id'])) | ||
| 171 | - $ids[] = $row['id']; | ||
| 172 | - $id = $row['parent_id']; | ||
| 173 | - } //print_r($ids); | ||
| 174 | - // sort($ids); | ||
| 175 | - return $ids; | ||
| 176 | - } | ||
| 177 | - | ||
| 178 | - function viewRubricsAll($id = 0){ | ||
| 179 | - global $rubrics; | ||
| 180 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 181 | - $res = $this->db->query($sql,array($id)); | ||
| 182 | - while ($res->fetchInto($row,DB_FETCHMODE_ASSOC)){ | ||
| 183 | - $rubrics[] = $row; | ||
| 184 | - $this->viewRubricsAll($row['id']); | ||
| 185 | - } | ||
| 186 | - $this->tpl->assign("rubrics",$rubrics); | ||
| 187 | - } | ||
| 188 | - | ||
| 189 | - | ||
| 190 | - function viewRubrics_begin($item = 'parents'){ | ||
| 191 | - $sql = "select a.*,(select b.id from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid from catalogs_rubrics a where a.parent_id=? order by a.sort asc"; | ||
| 192 | - $row = $this->db->getAll($sql,array(0),DB_FETCHMODE_ASSOC); | ||
| 193 | - foreach($row as $key=>$value){ | ||
| 194 | - if($item=='parents'){ | ||
| 195 | - $row[$key]['parents'] = $this->db->getAll("select * from catalogs_rubrics where parent_id=? order by sort asc",array($value['id']),DB_FETCHMODE_ASSOC); | ||
| 196 | - }elseif($item=='brends'){ | ||
| 197 | - $row[$key]['brends'] = $this->db->getAll("select * from catalogs_brends where rubric_id in (select id from catalogs_rubrics where parent_id=? or id=?) group by name",array($value['id'],$value['id']),DB_FETCHMODE_ASSOC); | ||
| 198 | - } | ||
| 199 | - } | ||
| 200 | - $this->tpl->assign("catalogs_rubrics_begin",$row); | ||
| 201 | - } | ||
| 202 | - | ||
| 203 | - function viewRubrics_parent($parent_id = 0){ | ||
| 204 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 205 | - $row = $this->db->getAll($sql,array($parent_id),DB_FETCHMODE_ASSOC); | ||
| 206 | - $this->tpl->assign("catalogs_rubrics_parent",$row); | ||
| 207 | - } | ||
| 208 | - | ||
| 209 | - function viewRubrics_parent2($rub_id){ | ||
| 210 | - $parent_id = $this->getRubricParent($rub_id); | ||
| 211 | - if($parent_id==0)$parent_id = $rub_id; | ||
| 212 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 213 | - $row = $this->db->getAll($sql,array($parent_id),DB_FETCHMODE_ASSOC); | ||
| 214 | - $this->tpl->assign("catalogs_rubrics_parent2",$row); | ||
| 215 | - } | ||
| 216 | - | ||
| 217 | - function viewRubricOne($id,&$row){ | ||
| 218 | - $sql = "select * from catalogs_rubrics where id=?"; | ||
| 219 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 220 | - $this->tpl->assign('rubric',$row); | ||
| 221 | - } | ||
| 222 | - | ||
| 223 | - function getRubricName($id){ | ||
| 224 | - $sql = "select name from catalogs_rubrics where id=?"; | ||
| 225 | - return $this->db->getOne($sql,array($id)); | ||
| 226 | - } | ||
| 227 | - | ||
| 228 | - function getRubricParent($id){ | ||
| 229 | - $sql = "select parent_id from catalogs_rubrics where id=?"; | ||
| 230 | - return $this->db->getOne($sql,array($id)); | ||
| 231 | - } | ||
| 232 | - | ||
| 233 | - function SaveRubric($data,$upload){ | ||
| 234 | - $table_name = "catalogs_rubrics"; | ||
| 235 | - | ||
| 236 | -if(trim($data['translit']) == '') $data['translit'] = translit($data['name']); | ||
| 237 | - | ||
| 238 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 239 | - $parent_id = (isset($data['parent_id']) ? $data['parent_id'] : 0); | ||
| 240 | - $fields_values = array('parent_id' => $parent_id,"level"=>($this->getLevelRubric($parent_id)+1),'sort' => $data['sort'],'name' => $data['name'],'list_name' => $data['list_name'],'sort_cost' => $data['sort_cost'],'meta_title' => $data['meta_title'],'meta_description' => $data['meta_description'],'meta_keywords' => $data['meta_keywords'],'meta_about' => $data['meta_about'],'translit' => $data['translit']); | ||
| 241 | - /* | ||
| 242 | - if($upload['pic']['tmp_name']){ | ||
| 243 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"180",'height'=>"180",'upload_path'=>"./uploaded/pic/catalogs/rubrics/")); | ||
| 244 | - } */ | ||
| 245 | - | ||
| 246 | - if($upload['pic']['tmp_name']){ | ||
| 247 | - if($data['update_id']>0)$this->deletePicRubric($data['update_id']); | ||
| 248 | - $uploadfile = "./uploaded/pic/catalogs/rubrics/"; | ||
| 249 | - $type = substr(strrchr($upload['pic']['name'],"."),1); | ||
| 250 | - $uploadname = mktime() . "." . $type; | ||
| 251 | - if (!move_uploaded_file($_FILES['pic']['tmp_name'], $uploadfile . $uploadname))print"Îøèáêà ïðè çàêà÷êå ôàéëà!"; | ||
| 252 | - $fields_values['pic'] = $uploadname; | ||
| 253 | - } | ||
| 254 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 255 | - } | ||
| 256 | - | ||
| 257 | - function deletePicRubric($id){ | ||
| 258 | - $sql = "select pic from catalogs_rubrics where id=?"; | ||
| 259 | - $rub = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 260 | - @unlink("./uploaded/pic/catalogs/rubrics/{$rub['pic']}"); | ||
| 261 | - } | ||
| 262 | - | ||
| 263 | - function getLevelRubric($id){ | ||
| 264 | - $level = $this->db->getOne("select level from catalogs_rubrics where id=?",array($id)); | ||
| 265 | - return ($level==null)? -1 : $level; | ||
| 266 | - } | ||
| 267 | - | ||
| 268 | - function saveUser($data){ | ||
| 269 | - $table_name = "catalogs_users"; | ||
| 270 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 271 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'login' => $data['user_login'],'psw' => $data['user_psw'],'about' => $data['user_about'],'mktime'=>mktime()); | ||
| 272 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 273 | - } | ||
| 274 | - | ||
| 275 | - function updateUser($data){ | ||
| 276 | - $table_name = "catalogs_users"; | ||
| 277 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 278 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'login' => $data['user_login'],'psw' => $data['user_psw'],'about' => $data['user_about'],'discount'=>$data['user_discount']); | ||
| 279 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 280 | - } | ||
| 281 | - | ||
| 282 | - function updateUserID($data,$id){ | ||
| 283 | - $table_name = "catalogs_users"; | ||
| 284 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 285 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'psw' => $data['user_psw'],'about' => $data['user_about'],'phone' => $data['user_phone'],'phonemob' => $data['user_phonemob'],'adress' => $data['user_adress']); | ||
| 286 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$id}"); | ||
| 287 | - } | ||
| 288 | - | ||
| 289 | - function deleteUser($id){ | ||
| 290 | - $this->db->query("delete from catalogs_users where id=?",array($id)); | ||
| 291 | - $res_order_id = $this->db->getRow("select id from catalogs_orders where user_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 292 | - if(count($res_order_id)){ | ||
| 293 | - foreach($res_order_id as $_id){ | ||
| 294 | - $this->db->query("delete from catalogs_orders where id=?",array($_id)); | ||
| 295 | - $this->db->query("delete from catalogs_orders_products where order_id=?",array($_id)); | ||
| 296 | - }} | ||
| 297 | - } | ||
| 298 | - | ||
| 299 | - function isLoginUser($login){ | ||
| 300 | - return $this->db->getOne("select id from catalogs_users where login=?",array($login)); | ||
| 301 | - } | ||
| 302 | - | ||
| 303 | - function sendLoginInfo($login){ | ||
| 304 | - $user = $this->db->getRow("select * from catalogs_users where login=?",array($login),DB_FETCHMODE_ASSOC); | ||
| 305 | - $mail = new PHPMailer(); | ||
| 306 | - $mail->CharSet = "windows-1251"; | ||
| 307 | - $mail->From = "shop@eltrade.com.ua"; | ||
| 308 | - $mail->FromName = "shop@eltrade.com.ua"; | ||
| 309 | - $mail->AddAddress($user['email'], $user['name']); | ||
| 310 | - $mail->Subject = "Àêêàóíò ýêñòðèì"; | ||
| 311 | - $msg = ""; | ||
| 312 | - $msg .= "Çäðàâñòâóéòå: ".$user['name']; | ||
| 313 | - $msg .= "<br />"; | ||
| 314 | - $msg .= "Âàø ëîãèí: ".$user['login']; | ||
| 315 | - $msg .= "<br>"; | ||
| 316 | - $msg .= "Âàø ïàðîëü: ".$user['psw']; | ||
| 317 | - $msg .= "<br>"; | ||
| 318 | - $msg .= "Ñ óâàæåíèåì, shop@eltrade.com.ua"; | ||
| 319 | - | ||
| 320 | - $mail->MsgHTML($msg); | ||
| 321 | - | ||
| 322 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 323 | - $mail->ClearAddresses(); | ||
| 324 | - $mail->ClearAttachments(); | ||
| 325 | - } | ||
| 326 | - | ||
| 327 | - function isUser($login,$psw){ | ||
| 328 | - $row = $this->db->getRow("select * from catalogs_users where login=? AND psw=?",array($login,$psw),DB_FETCHMODE_ASSOC); | ||
| 329 | - $this->tpl->assign('user_service',$row); | ||
| 330 | - return $row['id']; | ||
| 331 | - } | ||
| 332 | - | ||
| 333 | - function viewUser($id){ | ||
| 334 | - $sql = "select * from catalogs_users where id=?"; | ||
| 335 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 336 | - $this->tpl->assign('user',$row); | ||
| 337 | - } | ||
| 338 | - | ||
| 339 | - function getUserDiscount($id){ | ||
| 340 | - return $this->db->getOne("select discount from catalogs_users where id=?",array($id)); | ||
| 341 | - } | ||
| 342 | - | ||
| 343 | - function viewUsers(){ | ||
| 344 | - $sql = "SELECT catalogs_users. *, COUNT(catalogs_orders.user_id) as count_orders | ||
| 345 | -FROM catalogs_users LEFT JOIN catalogs_orders ON catalogs_orders.user_id=catalogs_users.id | ||
| 346 | -GROUP BY catalogs_users.id | ||
| 347 | -ORDER BY catalogs_users.mktime DESC"; | ||
| 348 | - | ||
| 349 | - $pagerOptions = Array( | ||
| 350 | - 'mode' => 'Sliding', | ||
| 351 | - 'delta' => 6, | ||
| 352 | - 'perPage' => 10, | ||
| 353 | - 'linkClass'=>"link_class", | ||
| 354 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 355 | - 'spacesBeforeSeparator' => 1, | ||
| 356 | - 'spacesAfterSeparator' => 1 | ||
| 357 | - ); | ||
| 358 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 359 | - | ||
| 360 | - $this->tpl->assign('usersData', $res); | ||
| 361 | - } | ||
| 362 | - | ||
| 363 | - function viewModifications($product_id){ | ||
| 364 | - $sql = "select * from catalogs_modifications where product_id=? order by id desc"; | ||
| 365 | - $row = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 366 | - $this->tpl->assign('modifications', $row); | ||
| 367 | - } | ||
| 368 | - | ||
| 369 | - function viewModificationsProduct($product_id){ | ||
| 370 | - $sql = "select * from catalogs_modifications where product_id=? and active>0 order by id desc"; | ||
| 371 | - // $sql = "select m.* from catalogs_keys_products_cities k left join catalogs_modifications m on m.code=k.mod_code where k.product_id=? and k.count>0 order by k.mod_code desc"; | ||
| 372 | - $row = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 373 | - $this->tpl->assign('modifications', $row); | ||
| 374 | - } | ||
| 375 | - | ||
| 376 | - function viewModificationOne($id){ | ||
| 377 | - $sql = "select * from catalogs_modifications where id=?"; | ||
| 378 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 379 | - $this->tpl->assign('modification', $row); | ||
| 380 | - } | ||
| 381 | - | ||
| 382 | - function getModificationProduct_id($code){ | ||
| 383 | - return $this->db->getOne("select product_id from catalogs_modifications where code=?",array($code)); | ||
| 384 | - } | ||
| 385 | - | ||
| 386 | - function SaveModification($data,$upload){ | ||
| 387 | - $table_name = "catalogs_modifications"; | ||
| 388 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 389 | - $fields_values = array('product_id'=>$data['product_id'],'code'=>$data['code'],'size' => $data['size'],'color' => $data['color'],'active' => $data['active']); | ||
| 390 | - if(isset($data['delete_pic'])){if($data['update_id']>0){$this->deleteModificationPics($data['update_id']);}$fields_values['pic']=null;$fields_values['pic_big']=null;} | ||
| 391 | - if($upload['pic']['tmp_name']){ | ||
| 392 | - if($data['update_id']>0){ | ||
| 393 | - $delete_pics = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?array('pic'):array('pic','pic_big'); | ||
| 394 | - $this->deleteModificationPics($data['update_id'],$delete_pics); | ||
| 395 | - } | ||
| 396 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"144",'height'=>"144",'upload_path'=>"./uploaded/pic/catalogs/modifications/")); | ||
| 397 | - $fields_values['pic_big'] = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?$upload['pic']['name']:upload_ImageResize($upload['pic'],array('width'=>"500",'height'=>"500",'upload_path'=>"./uploaded/pic/catalogs/modifications/big/")); | ||
| 398 | - } | ||
| 399 | - | ||
| 400 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id='{$data['update_id']}'"); | ||
| 401 | - return $id; | ||
| 402 | - } | ||
| 403 | - | ||
| 404 | - function deleteModification($id){ | ||
| 405 | - $this->deleteModificationPics($id); | ||
| 406 | - $this->db->query("delete from catalogs_modifications where id=?",array($id)); | ||
| 407 | - } | ||
| 408 | - | ||
| 409 | - function deleteProductModifications($product_id,$nopic = false){ | ||
| 410 | - IF($nopic==false){ | ||
| 411 | - $sql = "select * from catalogs_modifications where product_id=?"; | ||
| 412 | - $res = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 413 | - foreach($res as $row){ | ||
| 414 | - $this->deleteModificationPics($row['id']); | ||
| 415 | - } | ||
| 416 | - } | ||
| 417 | - $this->db->query("delete from catalogs_modifications where product_id=?",array($product_id)); | ||
| 418 | - } | ||
| 419 | - | ||
| 420 | - function deleteModificationPics($id,$pics = array('pic_big','pic')){ | ||
| 421 | - $sql = "select pic,pic_big from catalogs_modifications where id=?"; | ||
| 422 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 423 | - if(in_array('pic',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/modifications/{$row['pic']}"); | ||
| 424 | - // if(in_array('pic_big',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/modifications/big/{$row['pic_big']}"); | ||
| 425 | - } | ||
| 426 | - | ||
| 427 | - function ProductClick($id){ | ||
| 428 | - $this->db->query("update catalogs_products set click=click+1 where id='$id'"); | ||
| 429 | - } | ||
| 430 | - | ||
| 431 | - function SaveProduct($data,$upload){ | ||
| 432 | - $table_name = "catalogs_products"; | ||
| 433 | - | ||
| 434 | -if(trim(@$data['translit'])=="") $data['translit'] = @totranslit($data['name']); | ||
| 435 | - | ||
| 436 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 437 | - $id = ($data['update_id']>0) ? $data['update_id'] : $this->db->nextId('mySequence_'.$table_name); | ||
| 438 | - $fields_values = array('id'=>$id,'rubric_id'=>$data['rubric_id'],'rubric_parent_id'=>$this->getRubricParent($data['rubric_id']),'brend_id'=>$data['brend_id'],'name' => $data['name'],'about' => $data['about'],'text' => $data['text'],'strnumber' => $data['strnumber'],'cine'=>$data['cine'],'cine_last'=>$data['cine_last'],'sex'=>$data['sex'], 'mktime' => mktime(),'meta_title' => $data['meta_title'],'meta_description' => $data['meta_description'],'meta_keywords' => $data['meta_keywords'],'meta_about' => $data['meta_about'],'active' => $data['active'],'translit' => $data['translit']); | ||
| 439 | - if(isset($data['is_cost2']))$fields_values['is_cost2'] = 1;else $fields_values['is_cost2'] = 0; | ||
| 440 | - if(isset($data['cine2']))$fields_values['cine2'] = $data['cine2']; | ||
| 441 | - if(isset($data['params']))$fields_values['params'] = $data['params']; | ||
| 442 | - if(isset($data['doc']))$fields_values['doc'] = $data['doc']; | ||
| 443 | - if(isset($data['video_code']))$fields_values['video_code'] = $data['video_code']; | ||
| 444 | - if(isset($data['akcii_id']))$fields_values['akcii_id'] = $data['akcii_id']; | ||
| 445 | - | ||
| 446 | - if(isset($data['translit']))$fields_values['translit'] = $data['translit']; | ||
| 447 | - | ||
| 448 | - if($upload['pic']['tmp_name']){ | ||
| 449 | - $delete_pics = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?array('pic'):array('pic','pic_big'); | ||
| 450 | - $this->deleteProductPics($id,$delete_pics); | ||
| 451 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"144",'height'=>"144",'upload_path'=>"./uploaded/pic/catalogs/products/")); | ||
| 452 | - $fields_values['pic_big'] = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?$upload['pic']['name']:upload_ImageResize($upload['pic'],array('width'=>"500",'height'=>"500",'upload_path'=>"./uploaded/pic/catalogs/products/big/")); | ||
| 453 | - } | ||
| 454 | - | ||
| 455 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id='$id'"); | ||
| 456 | - $this->save_keysProductsFilters($id,$data); | ||
| 457 | - $this->save_keysProductsYears($id,$data); | ||
| 458 | - //$this->save_keysProductsCities($id,$data); | ||
| 459 | - $this->save_keysProductsAkcii($id,$data); | ||
| 460 | - return $id; | ||
| 461 | - } | ||
| 462 | - | ||
| 463 | - function save_keysProductsFilters($id,$data){ | ||
| 464 | - $this->delete_keysProductsFilters($id); | ||
| 465 | - if(!isset($data['filter']))return false; | ||
| 466 | - $table_name = "catalogs_keys_products_filters"; | ||
| 467 | - foreach($data['filter'] as $filter_id){ | ||
| 468 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'filter_id'=>$filter_id,'rubric_id'=>$data['rubric_id']),DB_AUTOQUERY_INSERT); | ||
| 469 | - } | ||
| 470 | - } | ||
| 471 | - | ||
| 472 | - function delete_keysProductsFilters($id){ | ||
| 473 | - $this->db->query("delete from catalogs_keys_products_filters where product_id=?",array($id)); | ||
| 474 | - } | ||
| 475 | - | ||
| 476 | - function save_keysProductsYears($id,$data){ | ||
| 477 | - $this->delete_keysProductsYears($id); | ||
| 478 | - if(!isset($data['years']))return false; | ||
| 479 | - $table_name = "catalogs_keys_products_years"; | ||
| 480 | - foreach($data['years'] as $filter_id){ | ||
| 481 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'year_id'=>$filter_id,'rubric_id'=>$data['rubric_id']),DB_AUTOQUERY_INSERT); | ||
| 482 | - } | ||
| 483 | - } | ||
| 484 | - | ||
| 485 | - function delete_keysProductsYears($id){ | ||
| 486 | - $this->db->query("delete from catalogs_keys_products_years where product_id=?",array($id)); | ||
| 487 | - } | ||
| 488 | - | ||
| 489 | - function save_keysProductsCities($id,$data){ | ||
| 490 | - $this->delete_keysProductsCities($id); | ||
| 491 | - if(!isset($data['city']))return false; | ||
| 492 | - $table_name = "catalogs_keys_products_cities"; | ||
| 493 | - foreach($data['city'] as $city_id){ | ||
| 494 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'city_id'=>$city_id),DB_AUTOQUERY_INSERT); | ||
| 495 | - } | ||
| 496 | - } | ||
| 497 | - | ||
| 498 | - function delete_keysProductsAkcii($id){ | ||
| 499 | - $this->db->query("delete from catalogs_keys_products_akcii where product_id=?",array($id)); | ||
| 500 | - } | ||
| 501 | - | ||
| 502 | - function save_keysProductsAkcii($id,$data){ | ||
| 503 | - $this->delete_keysProductsAkcii($id); | ||
| 504 | - if(!isset($data['akcii']))return false; | ||
| 505 | - $table_name = "catalogs_keys_products_akcii"; | ||
| 506 | - foreach($data['akcii'] as $rubric_id){ | ||
| 507 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'rubric_id'=>$rubric_id),DB_AUTOQUERY_INSERT); | ||
| 508 | - } | ||
| 509 | - } | ||
| 510 | - | ||
| 511 | - function delete_keysProductsCities($id){ | ||
| 512 | - $this->db->query("delete from catalogs_keys_products_cities where product_id=?",array($id)); | ||
| 513 | - } | ||
| 514 | - | ||
| 515 | - | ||
| 516 | - function saveProductSizeCine($id,$data){ | ||
| 517 | - $this->db->query("delete from catalogs_products_cine where product_id=?",array($id)); | ||
| 518 | - foreach($data['size'] as $key=>$size){ | ||
| 519 | - $this->db->autoExecute("catalogs_products_cine",array('product_id'=>$id,'size'=>$size,'cine'=>$data['cine'][$key],'metka'=>$data['size_metka'][$key],'n'=>$key),DB_AUTOQUERY_INSERT); | ||
| 520 | - } | ||
| 521 | - } | ||
| 522 | - | ||
| 523 | - | ||
| 524 | - function productsIsHits($products,$hits,$tops,$headers){ | ||
| 525 | - $sql = "update catalogs_products set hit=?,top=?,header=? where id=?"; | ||
| 526 | - foreach($products as $id){ | ||
| 527 | - if(@in_array($id,$hits))$hit = true; | ||
| 528 | - else $hit = false; | ||
| 529 | - if(@in_array($id,$tops))$top = true; | ||
| 530 | - else $top = false; | ||
| 531 | - if(@in_array($id,$headers))$header = true; | ||
| 532 | - else $header = false; | ||
| 533 | - $this->db->query($sql,array($hit,$top,$header, $id)); | ||
| 534 | - } | ||
| 535 | - } | ||
| 536 | - | ||
| 537 | - function productsIsHits2($data,$hits){ | ||
| 538 | - $sql = "update catalogs_products set hit=?,hit_sort=? where id=?"; | ||
| 539 | - foreach($data['product_id'] as $key=>$id){ | ||
| 540 | - if(@in_array($id,$hits))$hit = true; | ||
| 541 | - else $hit = false; | ||
| 542 | - $this->db->query($sql,array($hit,$data['hit_sort'][$key],$id)); | ||
| 543 | - } | ||
| 544 | - } | ||
| 545 | - | ||
| 546 | - function viewProductsRubrics($rubrics,$limit=20){ | ||
| 547 | - $data = array(); | ||
| 548 | - foreach($rubrics as $key=>$rubric_id){ | ||
| 549 | - $data[$key]['rubric']['name'] = $this->getRubricName($rubric_id); | ||
| 550 | - $data[$key]['rubric']['id'] = $rubric_id; | ||
| 551 | - | ||
| 552 | - $count = $this->db->getOne("select count(*) from catalogs_products WHERE count_modifications>0 and rubric_id=?",array($rubric_id)); | ||
| 553 | - $limit = 4; $round = ($count>$limit) ? rand(0,($count-$limit)) : $limit; | ||
| 554 | - $sql = "select * from catalogs_products where count_modifications>0 and rubric_id=? order by id " . ((rand(1,1000)%2) ? "asc" : "desc") . " limit $round,$limit"; | ||
| 555 | - $data[$key]['products'] = $this->db->getAll($sql,array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 556 | - } | ||
| 557 | - /* print"<pre>"; | ||
| 558 | - print_r($data); | ||
| 559 | - print"</pre>"; */ | ||
| 560 | - $this->tpl->assign('products',$data); | ||
| 561 | - } | ||
| 562 | - | ||
| 563 | - function seralizeFilter($str){ | ||
| 564 | - $array = explode(';',$str); | ||
| 565 | - $filter = array(); | ||
| 566 | - foreach($array as $key=>$value){ | ||
| 567 | - $filter[substr($value,0,1)][] = substr($value,1, strpos($value,"_")-1 ); | ||
| 568 | - } | ||
| 569 | - return $filter; | ||
| 570 | - } | ||
| 571 | - | ||
| 572 | - function viewProducts($params,$rubricsP = false,$count_modf = true){ | ||
| 573 | - | ||
| 574 | - | ||
| 575 | - //exit; | ||
| 576 | - | ||
| 577 | - | ||
| 578 | - if(isset($params['filter']) && count($params['filter'])>0)$filter = $this->seralizeFilter($params['filter']); | ||
| 579 | - $search = array(); | ||
| 580 | - if(isset($_GET['perPage']) && $_GET['perPage']>0 && $_GET['perPage']<=100)$perPage = $_GET['perPage'];else $perPage = 20; | ||
| 581 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){ | ||
| 582 | - $array_string = explode(" ",trim($params['search_str'])); | ||
| 583 | - $search_string = array(); | ||
| 584 | - $search_string[] = "catalogs_products.name like '%".mysql_real_escape_string($params['search_str'])."%'"; | ||
| 585 | - $search_string[] = "catalogs_products.text like '%".mysql_real_escape_string($params['search_str'])."%'"; | ||
| 586 | - /* foreach($array_string as $str){ | ||
| 587 | - $search_string[] = "catalogs_products.name like '$str'"; | ||
| 588 | - $search_string[] = "catalogs_products.name like'% $str %'"; | ||
| 589 | - $search_string[] = "catalogs_products.name like'%$str %'"; | ||
| 590 | - $search_string[] = "catalogs_products.name like'% $str%'"; | ||
| 591 | - | ||
| 592 | - $search_string[] = "catalogs_products.text like '$str'"; | ||
| 593 | - $search_string[] = "catalogs_products.text like'% $str %'"; | ||
| 594 | - $search_string[] = "catalogs_products.text like'%$str %'"; | ||
| 595 | - $search_string[] = "catalogs_products.text like'% $str%'"; | ||
| 596 | - } */ | ||
| 597 | - $search[] = "((" . implode(" OR ",$search_string) . ") OR ". sprintf("catalogs_modifications.code='%s'", mysql_real_escape_string($params['search_str'])).")"; | ||
| 598 | - } | ||
| 599 | - // print_r($params); | ||
| 600 | - if(isset($params['brendID']) && $params['brendID']>0)$search[] = sprintf("catalogs_products.brend_id='%d'",$params['brendID']); | ||
| 601 | - if(isset($params['akciiID']) && $params['akciiID']>0)$search[] = sprintf("catalogs_products.akcii_id='%d'",$params['akciiID']); | ||
| 602 | - if(isset($params['brend']) && strlen($params['brend'])>0)$search[] = "catalogs_products.brend_id in(".implode(",",$this->getBrendIDs_name($params['brend'])).")"; | ||
| 603 | - if(isset($params['sex']) && strlen($params['sex'])>0){ | ||
| 604 | - $sex = array('male'=>1,'female'=>2,'child'=>3,'unisex'=>4); | ||
| 605 | - $search[] = sprintf("catalogs_products.sex='%d'",$sex[$params['sex']]); | ||
| 606 | - | ||
| 607 | - } | ||
| 608 | - //if(isset($params['akcii']) && $params['akcii']>0)$search[] = sprintf("catalogs_products.hit='%d'",$params['akcii']); | ||
| 609 | - if($count_modf==true)$search[] = "catalogs_products.count_modifications>0"; | ||
| 610 | - if(isset($params['rubID']) && $params['rubID']>0){ | ||
| 611 | - $search[] = ($rubricsP==true)?sprintf("(catalogs_products.rubric_id='%d')",$params['rubID']):sprintf(" | ||
| 612 | - (catalogs_products.rubric_parent_id='%d' || | ||
| 613 | - catalogs_products.rubric_id='%d' || | ||
| 614 | - catalogs_products.rubric_id=(SELECT id FROM catalogs_rubrics WHERE translit='%d') || | ||
| 615 | - catalogs_products.rubric_parent_id=(SELECT id FROM catalogs_rubrics WHERE translit='%d'))",$params['rubID'],$params['rubID'],$params['rubID'],$params['rubID']); | ||
| 616 | - } | ||
| 617 | - | ||
| 618 | - /* if(isset($params['filterID'])){ | ||
| 619 | - //$search[] = sprintf("catalogs_keys_products_filters.filter_id='%d'", $params['filterID']); | ||
| 620 | - $search[] = "catalogs_keys_products_filters.filter_id in (".implode(",",$params['filterID']).")"; | ||
| 621 | - }*/ | ||
| 622 | - if(isset($filter['f']) && count($filter['f'])>0){ | ||
| 623 | - $search[] = "catalogs_keys_products_filters.filter_id in (".implode(",",$filter['f']).")"; | ||
| 624 | - } | ||
| 625 | -/* if(isset($params['yearID']) && $params['yearID']>0){ | ||
| 626 | - //$search[] = sprintf("catalogs_keys_products_years.year_id='%d'", $params['yearID']); | ||
| 627 | - $search[] = "catalogs_keys_products_years.year_id in (".implode(",",$params['yearID']).")"; | ||
| 628 | - }*/ | ||
| 629 | - if(isset($filter['y']) && $filter['y']>0){ | ||
| 630 | - $search[] = "catalogs_keys_products_years.year_id in (".implode(",",$filter['y']).")"; | ||
| 631 | - } | ||
| 632 | - $sql = "select catalogs_rubrics.translit as translit2,catalogs_products.*,catalogs_brends.name as brend_name,catalogs_rubrics.list_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id LEFT JOIN catalogs_rubrics ON catalogs_rubrics.id=catalogs_products.rubric_id "; | ||
| 633 | - if(isset($params['akcii']) && $params['akcii']>0)$sql .= "RIGHT JOIN catalogs_keys_products_akcii ON catalogs_keys_products_akcii.product_id=catalogs_products.id "; | ||
| 634 | - if(isset($filter['f']) && count($filter['f'])>0)$sql .= "LEFT JOIN catalogs_keys_products_filters ON catalogs_keys_products_filters.product_id=catalogs_products.id "; | ||
| 635 | - //if(isset($params['filterID']) && $params['filterID']>0)$sql .= "LEFT JOIN catalogs_keys_products_filters ON catalogs_keys_products_filters.product_id=catalogs_products.id "; | ||
| 636 | -// if(isset($params['yearID']) && $params['yearID']>0)$sql .= "LEFT JOIN catalogs_keys_products_years ON catalogs_keys_products_years.product_id=catalogs_products.id "; | ||
| 637 | - if(isset($filter['y']) && $filter['y']>0)$sql .= "LEFT JOIN catalogs_keys_products_years ON catalogs_keys_products_years.product_id=catalogs_products.id "; | ||
| 638 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){$sql .= "LEFT JOIN catalogs_modifications ON catalogs_modifications.product_id=catalogs_products.id ";} | ||
| 639 | - $sql .= "WHERE 1=1 "; | ||
| 640 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 641 | - if(isset($params['akcii']) && $params['akcii']>0){$sql .= " GROUP BY catalogs_keys_products_akcii.product_id ";} | ||
| 642 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){$sql .= " GROUP BY catalogs_products.id ";} | ||
| 643 | - $sql .= "order by "; | ||
| 644 | - if(isset($params['sort'])){ | ||
| 645 | - switch($params['sort']){ | ||
| 646 | - case 'cine' : $sql .= " catalogs_products.cine " . (($_GET['order']=='asc')?"asc":"desc"); break; | ||
| 647 | - case 'click' : $sql .= " catalogs_products.click " . (($_GET['order']=='asc')?"asc":"desc"); break; | ||
| 648 | - case 'hit' : $sql .= " catalogs_products.hit_sort asc"; break; | ||
| 649 | - default : $sql .= " catalogs_products.mktime desc"; | ||
| 650 | - } | ||
| 651 | - }else $sql .= " catalogs_products.cine desc"; | ||
| 652 | - | ||
| 653 | - $pagerOptions = Array( | ||
| 654 | - 'mode' => 'Sliding', | ||
| 655 | - 'delta' => 5, | ||
| 656 | - 'perPage' => $perPage, | ||
| 657 | - 'linkClass'=>"link_class", | ||
| 658 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 659 | - 'spacesBeforeSeparator' => 1, | ||
| 660 | - 'spacesAfterSeparator' => 1 | ||
| 661 | - ); | ||
| 662 | - //echo $sql; | ||
| 663 | - //$sql=""; | ||
| 664 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 665 | - | ||
| 666 | -if($_GET['test']=='1') | ||
| 667 | -for($i=0;$i<count($res['data']);$i++){ | ||
| 668 | - if( @$res['data'][$i]['rating'] ) $res['data'][$i]['rating'] = round( (@$res['data'][$i]['rating'] / @$res['data'][$i]['vote_num']), 0 ); | ||
| 669 | - else $res['data'][$i]['rating'] = 0; | ||
| 670 | - $res['data'][$i]['rating'] = @$res['data'][$i]['rating'] * 17; | ||
| 671 | -} | ||
| 672 | - | ||
| 673 | -//if($_GET['test']=='1') print_r($res); | ||
| 674 | - | ||
| 675 | - $this->tpl->assign('productsData', $res); | ||
| 676 | - return $res; | ||
| 677 | - } | ||
| 678 | - | ||
| 679 | - function getCineCurs($type_curs,$cine){ | ||
| 680 | - $curs = array(); | ||
| 681 | - | ||
| 682 | - $uah = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah')); | ||
| 683 | - $uah_bank = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah_bank')); | ||
| 684 | - $usd = $this->db->getOne("select curs from catalogs_curs where type=?",array('usd')); | ||
| 685 | - | ||
| 686 | - switch($type_curs){ | ||
| 687 | - case 'uah' : | ||
| 688 | - $curs['uah'] = round($cine,2); | ||
| 689 | - $curs['uah_bank'] = round(($cine/$usd)*$uah_bank,2); | ||
| 690 | - $curs['usd'] = round($cine/$usd,2); | ||
| 691 | - break; | ||
| 692 | - case 'uah_bank' : | ||
| 693 | - $curs['uah'] = round(($cine/$uah_bank)*$uah,2); | ||
| 694 | - $curs['uah_bank'] = round($cine,2); | ||
| 695 | - $curs['usd'] = round($cine/$uah_bank,2); | ||
| 696 | - break; | ||
| 697 | - case 'usd' : | ||
| 698 | - $curs['uah'] = round($cine*$uah,2); | ||
| 699 | - $curs['uah_bank'] = round($cine*$uah_bank,2); | ||
| 700 | - $curs['usd'] = round($cine,2); | ||
| 701 | - break; | ||
| 702 | - } | ||
| 703 | - return $curs; | ||
| 704 | - } | ||
| 705 | - | ||
| 706 | - function viewProductsAkcii($rubric_id){ | ||
| 707 | - $sql = "select catalogs_products.* from catalogs_keys_products_akcii left join catalogs_products on catalogs_products.id=catalogs_keys_products_akcii.product_id where catalogs_keys_products_akcii.rubric_id=?"; | ||
| 708 | - $res = $this->db->getAll($sql,array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 709 | - //print_r($res); | ||
| 710 | - $this->tpl->assign('products_akcii',$res); | ||
| 711 | - } | ||
| 712 | - | ||
| 713 | - function viewProductsHitsAll2(){ | ||
| 714 | - if(isset($_GET['perPage']) && $_GET['perPage']>0 && $_GET['perPage']<=100)$perPage = $_GET['perPage'];else $perPage = 20; | ||
| 715 | - $sql = "select * from catalogs_products where hit=?"; | ||
| 716 | - $pagerOptions = Array( | ||
| 717 | - 'mode' => 'Sliding', | ||
| 718 | - 'delta' => 6, | ||
| 719 | - 'perPage' => $perPage, | ||
| 720 | - 'linkClass'=>"link_class", | ||
| 721 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 722 | - 'spacesBeforeSeparator' => 1, | ||
| 723 | - 'spacesAfterSeparator' => 1 | ||
| 724 | - ); | ||
| 725 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array(true)); | ||
| 726 | - | ||
| 727 | - $this->tpl->assign('productsData', $res); | ||
| 728 | - } | ||
| 729 | - | ||
| 730 | - function viewProductsHits($params,$limit = 4,$curs = null){ | ||
| 731 | - $search = array(); | ||
| 732 | - if(isset($params['rubID']) && $params['rubID']>0)$search[] = sprintf("rubric_parent_id=%d",$params['rubID']); | ||
| 733 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.hit=? and catalogs_products.count_modifications>0 "; | ||
| 734 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 735 | - $sql .= "order by catalogs_products.mktime desc"; | ||
| 736 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 737 | - $this->tpl->assign('products_hits',$res); | ||
| 738 | - } | ||
| 739 | - | ||
| 740 | - function viewProductsTops($params,$limit = 4,$curs = null){ | ||
| 741 | - $search = array(); | ||
| 742 | - if(isset($params['rubID']) && $params['rubID']>0)$search[] = sprintf("rubric_parent_id=%d",$params['rubID']); | ||
| 743 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.top=? and catalogs_products.count_modifications>0 "; | ||
| 744 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 745 | - $sql .= "order by catalogs_products.mktime desc"; | ||
| 746 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 747 | - $this->tpl->assign('products_top',$res); | ||
| 748 | - } | ||
| 749 | - | ||
| 750 | - function viewProductsTopOne(){ | ||
| 751 | - $count = $this->db->getOne("select count(*) from catalogs_products WHERE catalogs_products.header=?",array(true)); | ||
| 752 | - $limit = 1; $round = rand(0,($count-$limit)); | ||
| 753 | - $res = $this->db->getRow("select * from catalogs_products WHERE catalogs_products.header=? order by id " . ((rand(1,1000)%2) ? "asc" : "desc") . " LIMIT $round,$limit",array(true),DB_FETCHMODE_ASSOC); | ||
| 754 | - $this->tpl->assign('products_top_one',$res); | ||
| 755 | - } | ||
| 756 | - | ||
| 757 | - function viewProductsLast($limit = 1){ | ||
| 758 | - $search = array(); | ||
| 759 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.active=? "; | ||
| 760 | - $sql .= "order by catalogs_products.mktime desc LIMIT $limit"; | ||
| 761 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 762 | - $this->tpl->assign('products_last',$res); | ||
| 763 | - } | ||
| 764 | - | ||
| 765 | - function viewProductsHitsAll($limit = 4){ | ||
| 766 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE hit=? "; | ||
| 767 | - $sql .= "order by mktime desc LIMIT $limit"; | ||
| 768 | - $products_hits = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 769 | - $this->tpl->assign('products_hits_all',$products_hits); | ||
| 770 | - } | ||
| 771 | - | ||
| 772 | - function viewProductOne($id,&$row){ | ||
| 773 | - $sql = "select p.*,b.name as brend_name,b.text as brend_text,b.pic_s as brend_pic_s from catalogs_products p left join catalogs_brends b ON b.id=p.brend_id where p.id=?"; | ||
| 774 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 775 | - $this->tpl->assign('product',$row); | ||
| 776 | - } | ||
| 777 | - | ||
| 778 | - function deleteCompareProduct(&$compare,$id){ | ||
| 779 | - foreach($compare as $key=>$_id){ | ||
| 780 | - if($_id == $id)unset($compare[$key]); | ||
| 781 | - } | ||
| 782 | - } | ||
| 783 | - | ||
| 784 | - function viewCompareProducts($compare){ | ||
| 785 | - $products = array(); | ||
| 786 | - $i = 0; | ||
| 787 | - foreach($compare as $id){ | ||
| 788 | - $sql = "select p.* from catalogs_products p where p.id=?"; | ||
| 789 | - $products[$i] = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 790 | - $products[$i]['params'] = $this->getProductParams($id); | ||
| 791 | - $i++; | ||
| 792 | - } //print_r($products); | ||
| 793 | - $this->tpl->assign('products',$products); | ||
| 794 | - } | ||
| 795 | - | ||
| 796 | - function viewProductNembers($str_n){ | ||
| 797 | - $arr_id = explode(",",$str_n); | ||
| 798 | - $products = array(); | ||
| 799 | - foreach($arr_id as $id){ | ||
| 800 | - $count = $this->db->getOne("select count(*) from catalogs_keys_products_filters where filter_id=?",array(trim($id))); | ||
| 801 | - $limit = 1; $round = rand(0,($count-$limit)); //" LIMIT 0,$limit" | ||
| 802 | - $sql = "select catalogs_rubrics.translit as translit2, catalogs_products.*,catalogs_keys_products_filters.filter_id as prd from catalogs_keys_products_filters Left Join catalogs_products ON catalogs_products.id=catalogs_keys_products_filters.product_id Left Join catalogs_rubrics ON catalogs_rubrics.id=catalogs_products.rubric_id where catalogs_keys_products_filters.filter_id=? and catalogs_products.count_modifications>0 order by catalogs_keys_products_filters.product_id " . ((rand(1,1000)%2) ? "asc" : "desc") . " LIMIT $round,$limit"; | ||
| 803 | - $row = $this->db->getRow($sql ,array(trim($id)),DB_FETCHMODE_ASSOC); | ||
| 804 | - if(count($row)>0)$products[] = $row; | ||
| 805 | - } | ||
| 806 | - | ||
| 807 | -// $products = $this->db->getAll("select catalogs_rubrics.translit as translit2,catalogs_products.*,catalogs_keys_products_filters.filter_id as prd from catalogs_keys_products_filters Left Join catalogs_products ON catalogs_products.id=catalogs_keys_products_filters.product_id Left Join catalogs_rubrics ON catalogs_rubrics.id=catalogs_products.rubric_id where catalogs_keys_products_filters.filter_id in(".implode(',',$arr_id).") and catalogs_products.count_modifications>0 Group By catalogs_keys_products_filters.filter_id order by catalogs_keys_products_filters.product_id " . ((rand(1,1000)%2) ? "asc" : "desc") ,array(),DB_FETCHMODE_ASSOC); | ||
| 808 | - $this->tpl->assign('products_parent',$products); | ||
| 809 | - } | ||
| 810 | - | ||
| 811 | - function getProductSizeCine($id,&$products){ | ||
| 812 | - $res = $this->db->getAll("select * from catalogs_products_cine where product_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 813 | - $i = 0; | ||
| 814 | - foreach($res as $row){ | ||
| 815 | - $products['size_' . $row['n']] = $row['size']; | ||
| 816 | - $products['cine_' . $row['n']] = $row['cine']; | ||
| 817 | - $products['metka_' . $row['n']] = $row['metka']; | ||
| 818 | - $products['id_cine_' . $row['n']] = $row['id']; | ||
| 819 | - $i++; | ||
| 820 | - } //print_r($products); | ||
| 821 | - } | ||
| 822 | - /* | ||
| 823 | - function getProductCine($id,$curs = null){ | ||
| 824 | - $sql = "select cine from catalogs_products where id=?"; | ||
| 825 | - $row = $this->db->getOne($sql,array($id)); | ||
| 826 | - return $row; | ||
| 827 | - }*/ | ||
| 828 | - | ||
| 829 | - function getProductCine($id){ | ||
| 830 | - $sql = "select IF( catalogs_products.is_cost2 <1, catalogs_products.cine, catalogs_products.cine2 ) AS cine from catalogs_modifications left join catalogs_products on catalogs_products.id=catalogs_modifications.product_id where catalogs_modifications.id=?"; | ||
| 831 | - return $this->db->getOne($sql,array($id)); | ||
| 832 | - } | ||
| 833 | - | ||
| 834 | - function viewProductCine($id){ | ||
| 835 | - $row = $this->db->getAll("select * from catalogs_products_cine where product_id=? and cine>0 Order By n ASC",array($id),DB_FETCHMODE_ASSOC); | ||
| 836 | - $this->tpl->assign('product_cines',$row); | ||
| 837 | - } | ||
| 838 | - | ||
| 839 | - function viewCatalogsCurs(){ | ||
| 840 | - $uah = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah')); | ||
| 841 | - $this->tpl->assign('curs_uah',$uah); | ||
| 842 | - $uah_bank = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah_bank')); | ||
| 843 | - $this->tpl->assign('curs_uah_bank',$uah_bank); | ||
| 844 | - $usd = $this->db->getOne("select curs from catalogs_curs where type=?",array('usd')); | ||
| 845 | - $this->tpl->assign('curs_usd',$usd); | ||
| 846 | - } | ||
| 847 | - | ||
| 848 | - function saveCurs($data){ | ||
| 849 | - $table_name = "catalogs_curs"; | ||
| 850 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 851 | - foreach($data as $key=>$value){ | ||
| 852 | - $this->db->autoExecute($table_name,array('curs'=>$value),$DB_AUTOQUERY,"type='$key'"); | ||
| 853 | - } | ||
| 854 | - } | ||
| 855 | - | ||
| 856 | - function viewVarCurs($curs){ | ||
| 857 | - $this->tpl->assign('curs',$curs); | ||
| 858 | - } | ||
| 859 | - | ||
| 860 | - function viewBasketProducts($session_basket,$curs = null,$discount = 0){ | ||
| 861 | - $products = array(); $i = 0; $cineAll = 0; | ||
| 862 | -// $sql = "select catalogs_products.* from catalogs_products where catalogs_products.id=?"; | ||
| 863 | - $sql = "select catalogs_modifications.id,IF(catalogs_products.is_cost2<1,catalogs_products.cine,catalogs_products.cine2) as cine,catalogs_products.name,catalogs_modifications.code,catalogs_modifications.size,catalogs_modifications.color,catalogs_modifications.pic,catalogs_modifications.pic_big from catalogs_modifications Left Join catalogs_products On catalogs_products.id=catalogs_modifications.product_id where catalogs_modifications.id=?"; | ||
| 864 | - | ||
| 865 | - foreach($session_basket as $id){ | ||
| 866 | - $products_count = 1; | ||
| 867 | - if(count($products)){ | ||
| 868 | - foreach($products as $key=>$value){ | ||
| 869 | - if($value['id']==$id){$products_count=$products[$key]['products_count']+$products_count;$products[$key]['products_count']=$products_count;$products[$key]['products_cine_all']=$products[$key]['cine']*$products_count;$cineAll = $cineAll+$products[$key]['cine'];} | ||
| 870 | - }} | ||
| 871 | - if($products_count==1){ | ||
| 872 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 873 | - $products[$i] = $row; | ||
| 874 | - $products[$i]['products_count']=$products_count; | ||
| 875 | - $products[$i]['products_cine_all']=$products[$i]['cine']*$products_count; | ||
| 876 | - $cineAll = $cineAll+$products[$i]['products_cine_all']; | ||
| 877 | - $i++; | ||
| 878 | - } | ||
| 879 | - | ||
| 880 | - } | ||
| 881 | - /*print"<pre>"; | ||
| 882 | - print_r($products); | ||
| 883 | - print"</pre>";*/ | ||
| 884 | - $this->tpl->assign('cineAll',$cineAll); | ||
| 885 | - $this->tpl->assign('cineAll_discount',$cineAll - (($cineAll*$discount)/100)); | ||
| 886 | - $this->tpl->assign('basket_products',$products); //print_r($products); | ||
| 887 | - } | ||
| 888 | - | ||
| 889 | - | ||
| 890 | - function BasketUpload(&$session_basket,$proructs_count){ | ||
| 891 | - | ||
| 892 | - // ========== ZLODEYEV ============ | ||
| 893 | - | ||
| 894 | - foreach($proructs_count as $key=>$value){ | ||
| 895 | - | ||
| 896 | - // ==== îáíîâëÿåì ==== | ||
| 897 | - | ||
| 898 | - // Âûáèðàåì èíôî î òîâàðå | ||
| 899 | - $sql4 = "SELECT * FROM catalogs_modifications as m | ||
| 900 | - LEFT JOIN catalogs_products as p | ||
| 901 | - ON p.id=m.product_id | ||
| 902 | - WHERE m.id='".$key."' "; | ||
| 903 | - $result4 = mysql_query($sql4) or die(mysql_error()); | ||
| 904 | - if (mysql_affected_rows()!=0) { | ||
| 905 | - $item=mysql_fetch_assoc($result4); | ||
| 906 | - } | ||
| 907 | - | ||
| 908 | - $f=0; | ||
| 909 | - | ||
| 910 | - if (isset($_SESSION['shopcart'])) { | ||
| 911 | - | ||
| 912 | - foreach ($_SESSION['shopcart'] as $i => $cart) { | ||
| 913 | - | ||
| 914 | - | ||
| 915 | - if ($cart['code']!='' && $cart['code']==$key) { | ||
| 916 | - $f=1; | ||
| 917 | - $_SESSION['shopcart'][$i]['count']=$value; | ||
| 918 | - $_SESSION['shopcart'][$i]['total']=$value*$_SESSION['shopcart'][$i]['price']; | ||
| 919 | - if ($_SESSION['shopcart'][$i]['total']==0) { | ||
| 920 | - unset($_SESSION['shopcart'][$i]); | ||
| 921 | - } | ||
| 922 | - break; | ||
| 923 | - } | ||
| 924 | - } | ||
| 925 | - } | ||
| 926 | - } | ||
| 927 | - | ||
| 928 | - // ========== ZLODEYEV ============ | ||
| 929 | - | ||
| 930 | - | ||
| 931 | - $session_basket = array(); | ||
| 932 | - foreach($proructs_count as $key=>$value){ | ||
| 933 | - for($i=0;$i<$value;$i++){ | ||
| 934 | - $session_basket[] = $key; | ||
| 935 | - } | ||
| 936 | - } | ||
| 937 | - } | ||
| 938 | - | ||
| 939 | - function sendOrder($data){ | ||
| 940 | - $mail = new PHPMailer(); | ||
| 941 | - $mail->CharSet = "windows-1251"; | ||
| 942 | - $mail->From = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 943 | - $mail->FromName = $data['order_name']; | ||
| 944 | - $mail->AddAddress("shop@eltrade.com.ua","shop"); | ||
| 945 | - $mail->Subject = "Îôîðìèòü çàêàç ñ ÝêñòðèìÑòèëü"; | ||
| 946 | - $title = Mail::str_rus("Îôîðìèòü çàêàç"); | ||
| 947 | - $msg = ""; | ||
| 948 | - foreach($data['product_id'] as $key=>$value){ | ||
| 949 | - $msg .= "ID: ".$value." "; | ||
| 950 | - $msg .= "Íàçâàíèå: <b>".$data['product_name'][$key]."</b> "; | ||
| 951 | - $msg .= "Öåíà çà îäèí: ".$data['product_cine'][$key]." "; | ||
| 952 | - $msg .= "Êîëè÷åñòâî: ".$data['product_count'][$key]." "; | ||
| 953 | - $msg .= "Çà âåñü òîâàð: ".$data['product_cine_all'][$key]." "; | ||
| 954 | - $msg .= "<br>"; | ||
| 955 | - } | ||
| 956 | - $msg .= "Îáùàÿ ñóìà: ".$data['cineAll']; | ||
| 957 | - $msg .= "<br>"; | ||
| 958 | - /* $msg .= "Ñêèäêà: ".$data['discount']." %"; | ||
| 959 | - $msg .= "<br>"; */ | ||
| 960 | - $msg .= "Èòîãî ê îïëàòå: ".$data['cineAll_discount']; | ||
| 961 | - $msg .= "<br><br><br>"; | ||
| 962 | - $msg .= "Êîíòàêòíûå äàííûå:"; | ||
| 963 | - $msg .= "<br>"; | ||
| 964 | - $msg .= "Èìÿ: ".$data['order_name']; | ||
| 965 | - $msg .= "<br>"; | ||
| 966 | - $msg .= "Àäðåñ: ".$data['order_adress']; | ||
| 967 | - $msg .= "<br>"; | ||
| 968 | - $msg .= "E-mail: ".$data['order_email']; | ||
| 969 | - $msg .= "<br>"; | ||
| 970 | - $msg .= "Êîíòàêòíûé òåëåôîí: ".$data['order_phone']; | ||
| 971 | -// $msg .= "<br>"; | ||
| 972 | -// $msg .= "Ìîáèëüíûé òåëåôîí: ".$data['order_phonemob']; | ||
| 973 | - $msg .= "<br>"; | ||
| 974 | - $msg .= "Êîììåíòàðèé: ".$data['order_comment']; | ||
| 975 | -// $order_email = (strlen($data['order_email'])>0) ? $data['order_email'] : "vapila@vapila.kiev.ua"; | ||
| 976 | -// Mail::send("borisenko.pavel@gmail.com",$data['order_email'],$title,Mail::str_rus($msg)); | ||
| 977 | - $mail->MsgHTML($msg); | ||
| 978 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 979 | - $mail->ClearAddresses(); | ||
| 980 | - $mail->ClearAttachments(); | ||
| 981 | - | ||
| 982 | - $this->sendOrderXML($data); | ||
| 983 | - } | ||
| 984 | - | ||
| 985 | - | ||
| 986 | - function sendOrderXML($data){ | ||
| 987 | - | ||
| 988 | - | ||
| 989 | - | ||
| 990 | -$data['order_phone'] = str_replace("-","",$data['order_phone']); | ||
| 991 | -$data['order_phone'] = str_replace(")","",$data['order_phone']); | ||
| 992 | -$data['order_phone'] = str_replace("(","",$data['order_phone']); | ||
| 993 | -$data['order_phone'] = str_replace(" ","",$data['order_phone']); | ||
| 994 | -$data['order_phone'] = "+38".$data['order_phone']; | ||
| 995 | - | ||
| 996 | - | ||
| 997 | - | ||
| 998 | - $mail = new PHPMailer(); | ||
| 999 | - $mail->CharSet = "windows-1251"; | ||
| 1000 | - $mail->From = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 1001 | - $mail->FromName = $data['order_name']; | ||
| 1002 | - $mail->AddAddress("extremshop@portal.myoffice.biz.ua","extremshop"); | ||
| 1003 | - $mail->Subject = "xml çàêàç ñ ÝêñòðèìÑòèëü"; | ||
| 1004 | - $order_email = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 1005 | - $xml = '<?xml version="1.0" encoding="windows-1251" ?>'; | ||
| 1006 | - $xml .= '<Order orderNum="'.mktime().'">'; | ||
| 1007 | - foreach($data['product_id'] as $key=>$value){ | ||
| 1008 | - $xml .= "<OrderItem ID='".$data['product_code'][$key]."'>"; | ||
| 1009 | - $xml .= "<ProductName>".$data['product_name2'][$key]."</ProductName>"; | ||
| 1010 | - $xml .= "<Size>".$data['product_size'][$key]."</Size>"; | ||
| 1011 | - $xml .= "<Color>".$data['product_color'][$key]."</Color>"; | ||
| 1012 | - $xml .= "<Price>".$data['product_price'][$key]."</Price>"; | ||
| 1013 | - $xml .= "<Count>".$data['product_count'][$key]."</Count>"; | ||
| 1014 | - $xml .= "</OrderItem>"; | ||
| 1015 | - } | ||
| 1016 | - $xml .= '<CustomerInfo>'; | ||
| 1017 | - $xml .= '<Name>'.$data['order_name'].'</Name>'; | ||
| 1018 | - $xml .= '<Mobile>'.$data['order_phone'].'</Mobile>'; | ||
| 1019 | - $xml .= '<Email>'.$data['order_email'].'</Email>'; | ||
| 1020 | - $xml .= '</CustomerInfo>'; | ||
| 1021 | - $xml .= '<DeliveryInfo>'; | ||
| 1022 | - $xml .= '<City>Óêðàèíà</City>'; | ||
| 1023 | - $xml .= '<Address>'.$data['order_adress'].'</Address>'; | ||
| 1024 | - $xml .= '<DeliveryType>Äîñòàâêà</DeliveryType>'; | ||
| 1025 | - $xml .= '</DeliveryInfo>'; | ||
| 1026 | - $xml .= '<Comment>'.$data['order_comment'].'</Comment>'; | ||
| 1027 | - $xml .= '</Order>'; | ||
| 1028 | - $tmpfname = tempnam("tmp", "FOO"); | ||
| 1029 | - $handle = fopen($tmpfname, "w"); | ||
| 1030 | - fwrite($handle, $xml); | ||
| 1031 | - $mail->AddAttachment($tmpfname, 'order.xml'); | ||
| 1032 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 1033 | - fclose($handle); | ||
| 1034 | - unlink($tmpfname); | ||
| 1035 | - $mail->ClearAddresses(); | ||
| 1036 | - $mail->ClearAttachments(); | ||
| 1037 | - // Mail::send("borisenko.pavel@gmail.com",$order_email,"Order",Mail::str_rus($xml)); | ||
| 1038 | - // Mail::send("andrey.belyy@gmail.com",$order_email,"Order",Mail::str_rus($xml)); | ||
| 1039 | - } | ||
| 1040 | - | ||
| 1041 | - function saveOrder($data,$userID = 0){ | ||
| 1042 | - | ||
| 1043 | - $table_name = "catalogs_orders"; | ||
| 1044 | - | ||
| 1045 | - if(isset($data['update_id']) && $data['update_id']>0){ | ||
| 1046 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 1047 | - $id = $data['update_id']; | ||
| 1048 | - $where = sprintf("id='%d'",$id); | ||
| 1049 | - } else { | ||
| 1050 | - $DB_AUTOQUERY = DB_AUTOQUERY_INSERT; | ||
| 1051 | - $id = $this->db->nextId('mySequence_'.$table_name); | ||
| 1052 | - $where = null; | ||
| 1053 | - } | ||
| 1054 | - | ||
| 1055 | - | ||
| 1056 | - | ||
| 1057 | - | ||
| 1058 | - $fields_values = array( | ||
| 1059 | - 'id'=>$id, | ||
| 1060 | - 'user_id'=>$userID, | ||
| 1061 | - 'name' => $data['order_name'], | ||
| 1062 | - 'email' => $data['order_email'], | ||
| 1063 | - 'adress' => $data['order_adress'], | ||
| 1064 | - //'phone' => phone_mobil($data['order_phone']), | ||
| 1065 | - 'phone' => $data['order_phone'], | ||
| 1066 | - 'comment' => $data['order_comment'], | ||
| 1067 | - 'delivery' => $data['delivery'], | ||
| 1068 | - 'total'=>$_SESSION['cart']['total'], | ||
| 1069 | - 'status' => '1', | ||
| 1070 | - 'mktime'=>mktime() | ||
| 1071 | - ); | ||
| 1072 | - $DB_AUTOQUERY; | ||
| 1073 | - | ||
| 1074 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,$where); | ||
| 1075 | - | ||
| 1076 | - if(isset($data['product_id'])){ $i=-1; | ||
| 1077 | - foreach($data['product_id'] as $key=>$value){ $i++; | ||
| 1078 | - $this->db->autoExecute("catalogs_orders_products",array( | ||
| 1079 | - 'order_id'=>$id, | ||
| 1080 | - 'product_id'=>$value, | ||
| 1081 | - 'product_cine_id'=>$_SESSION['cart'][$i]['price'], | ||
| 1082 | - 'count'=>$data['product_count'][$key]) | ||
| 1083 | - ,DB_AUTOQUERY_INSERT); | ||
| 1084 | - } | ||
| 1085 | - } | ||
| 1086 | - | ||
| 1087 | - | ||
| 1088 | - } | ||
| 1089 | - | ||
| 1090 | - function deleteOrder($id){ | ||
| 1091 | - $this->db->query("delete from catalogs_orders where id=?",array($id)); | ||
| 1092 | - $this->db->query("delete from catalogs_orders_products where order_id=?",array($id)); | ||
| 1093 | - } | ||
| 1094 | - | ||
| 1095 | - function updateOrder($data){ | ||
| 1096 | - $table_name = "catalogs_orders"; | ||
| 1097 | - $fields_values = array('name' => $data['order_name'],'email' => $data['order_email'],'adress' => $data['order_adress'],'phone' => $data['order_phone'],'comment' => $data['order_comment'],'mktime'=>mktime()); | ||
| 1098 | - if(isset($data['order_active']))$fields_values['active'] = 1; | ||
| 1099 | - else $fields_values['active'] = 0; | ||
| 1100 | - $this->db->autoExecute($table_name,$fields_values,DB_AUTOQUERY_UPDATE,sprintf("id='%d'",$data['update_id'])); | ||
| 1101 | - } | ||
| 1102 | - | ||
| 1103 | - function updateOrderProducts($data){ | ||
| 1104 | - foreach($data['product_id'] as $key=>$value){ | ||
| 1105 | - if($data['product_count'][$value]<1){$this->db->query("delete from catalogs_orders_products where order_id='{$data['order_id']}' AND product_id='$value'");} | ||
| 1106 | - else{$this->db->autoExecute("catalogs_orders_products",array('count'=>$data['product_count'][$value]),DB_AUTOQUERY_UPDATE,"order_id='{$data['order_id']}' AND product_id='$value'");} | ||
| 1107 | - } | ||
| 1108 | - } | ||
| 1109 | - | ||
| 1110 | - function viewOrder($id){ | ||
| 1111 | - $row = $this->db->getRow("select * from catalogs_orders where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 1112 | - $this->tpl->assign('order', $row); | ||
| 1113 | - } | ||
| 1114 | - | ||
| 1115 | - function viewOrderProducts($order_id){ | ||
| 1116 | - $res = $this->db->getAll("select p.*,op.*,pr.name,pr.pic,pr.pic_big from catalogs_orders_products op Left join catalogs_products_cine p On p.id=op.product_id Left join catalogs_products pr On pr.id=p.product_id where order_id=?",array($order_id),DB_FETCHMODE_ASSOC); | ||
| 1117 | - $sum = 0; | ||
| 1118 | - foreach($res as $key=>$row){ | ||
| 1119 | - $sum = $sum + ($row['cine']*$row['count']); | ||
| 1120 | - $res[$key]['cine_all'] = ($row['cine']*$row['count']); | ||
| 1121 | - } | ||
| 1122 | - $discount = $this->db->getOne('select catalogs_users.discount from catalogs_orders Left join catalogs_users on catalogs_users.id=user_id where catalogs_orders.id=?',array($order_id)); | ||
| 1123 | - $this->tpl->assign('cine', array('sum'=>$sum,'discount'=>$discount,'sum_discount'=>($sum - (($sum*$discount)/100)) )); | ||
| 1124 | - $this->tpl->assign('basket_products', $res); | ||
| 1125 | - } | ||
| 1126 | - | ||
| 1127 | - function viewOrders($params = array()){ | ||
| 1128 | - $search = array(); | ||
| 1129 | - if(isset($params['userID']) && $params['userID']>0)$search[] = sprintf("catalogs_orders.user_id='%d'",$params['userID']); | ||
| 1130 | - $sql = "select catalogs_orders.*,catalogs_users.login as user_login,catalogs_users.discount from catalogs_orders Left join catalogs_users on catalogs_users.id=user_id WHERE 1=1 "; | ||
| 1131 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 1132 | - $sql .= " order by mktime desc"; | ||
| 1133 | - $pagerOptions = Array( | ||
| 1134 | - 'mode' => 'Sliding', | ||
| 1135 | - 'delta' => 16, | ||
| 1136 | - 'perPage' => 50, | ||
| 1137 | - 'linkClass'=>"link_class", | ||
| 1138 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 1139 | - 'spacesBeforeSeparator' => 1, | ||
| 1140 | - 'spacesAfterSeparator' => 1 | ||
| 1141 | - ); | ||
| 1142 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 1143 | - foreach($res['data'] as $key=>$value){ | ||
| 1144 | - $res['data'][$key]['sum'] = $this->getOrderProductsSum($value['id']); | ||
| 1145 | - $res['data'][$key]['sum_discount'] = $res['data'][$key]['sum'] - (($res['data'][$key]['sum']*$value['discount'])/100); | ||
| 1146 | - } | ||
| 1147 | - $this->tpl->assign('ordersData', $res); | ||
| 1148 | - } | ||
| 1149 | - | ||
| 1150 | - function getOrderProductsSum($order_id){ | ||
| 1151 | - $res = $this->db->getAll("select op.*,p.cine from catalogs_orders_products op Left join catalogs_products_cine p On p.id=op.product_id where op.order_id=?",array($order_id),DB_FETCHMODE_ASSOC); | ||
| 1152 | - // print_r($res); | ||
| 1153 | - $sum = 0; | ||
| 1154 | - foreach($res as $row){ | ||
| 1155 | - $sum = $sum + ($row['cine']*$row['count']); | ||
| 1156 | - } | ||
| 1157 | - return $sum; | ||
| 1158 | - } | ||
| 1159 | - | ||
| 1160 | - function SaveBrend($data,$upload){ | ||
| 1161 | - $table_name = "catalogs_brends"; | ||
| 1162 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 1163 | - $fields_values = array('rubric_id'=>$data['rubric_id'],'name'=>$data['brend'],'text'=>$data['text'],'youtube'=>$data['youtube'],'seo'=>$data['seo'],'sort'=>$data['sort'],'meta_title'=>$data['meta_title'],'meta_description'=>$data['meta_description'],'meta_keywords'=>$data['meta_keywords'],'active'=>$data['active'] ,'about'=>$data['about'],'link'=>$data['link'],'teh'=>$data['teh']); | ||
| 1164 | - | ||
| 1165 | - if(isset($data['delete_video']) && $data['delete_video']==1){ | ||
| 1166 | - $this->deleteBrendPic($data['update_id']); | ||
| 1167 | - $fields_values['pic'] = null; | ||
| 1168 | - } | ||
| 1169 | - if($upload['pic']['tmp_name']){ | ||
| 1170 | - if($data['update_id']>0)$this->deleteBrendPic($data['update_id'],array('pic')); | ||
| 1171 | - $name_pic = mktime() . "." . substr(strrchr($_FILES['pic']['name'],"."),1); | ||
| 1172 | - $file_name = "{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/brends/$name_pic"; | ||
| 1173 | - move_uploaded_file($_FILES["pic"]["tmp_name"], $file_name); | ||
| 1174 | - chmod($file_name,"0777"); | ||
| 1175 | - $fields_values['pic'] = $name_pic; | ||
| 1176 | - } | ||
| 1177 | - | ||
| 1178 | - if(isset($data['delete_pic_s']) && $data['delete_pic_s']==1){ | ||
| 1179 | - $this->deleteBrendPic($data['update_id'],array('pic_s')); | ||
| 1180 | - $fields_values['pic_s'] = null; | ||
| 1181 | - } | ||
| 1182 | - if($upload['pic_s']['tmp_name']){ | ||
| 1183 | - if($data['update_id']>0)$this->deleteBrendPic($data['update_id'],array('pic_s')); | ||
| 1184 | - $name_pic = mktime() . "." . substr(strrchr($_FILES['pic_s']['name'],"."),1); | ||
| 1185 | - $file_name = "{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/brends/s/$name_pic"; | ||
| 1186 | - move_uploaded_file($_FILES["pic_s"]["tmp_name"], $file_name); | ||
| 1187 | - chmod($file_name,"0777"); | ||
| 1188 | - $fields_values['pic_s'] = $name_pic; | ||
| 1189 | - } | ||
| 1190 | - | ||
| 1191 | - | ||
| 1192 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 1193 | - } | ||
| 1194 | - | ||
| 1195 | - function deleteBrendPic($id,$pics = array('pic','pic_s')){ | ||
| 1196 | - $sql = "select " . implode(',',$pics) . " from catalogs_brends where id=?"; | ||
| 1197 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 1198 | - if(isset($row['pic'])){ | ||
| 1199 | - $file_name = "{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/brends/{$row['pic']}"; | ||
| 1200 | - @unlink($file_name); | ||
| 1201 | - } | ||
| 1202 | - if(isset($row['pic_s'])){ | ||
| 1203 | - $file_name = "{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/brends/s/{$row['pic_s']}"; | ||
| 1204 | - @unlink($file_name); | ||
| 1205 | - } | ||
| 1206 | - } | ||
| 1207 | - | ||
| 1208 | - function viewBrends($type = false){ | ||
| 1209 | - $sql = "select b.*,r.name as rubric from catalogs_brends b left join catalogs_rubrics r On r.id=b.rubric_id "; | ||
| 1210 | - if($type!=false)$sql .= "where b.type='$type'"; | ||
| 1211 | - $sql .= " Order by b.name Asc"; | ||
| 1212 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1213 | - $this->tpl->assign('brends',$row); | ||
| 1214 | - } | ||
| 1215 | - | ||
| 1216 | - function viewBrendsGroup($params = array()){ | ||
| 1217 | - $sql = "select * from catalogs_brends where 1=1 "; | ||
| 1218 | - if(isset($params['rubID'])){ | ||
| 1219 | - $rubric_id = $params['rubID'];//$this->getRubricParent($params['rubID']); | ||
| 1220 | - $rubric_id = ($rubric_id==0)?$params['rubID']:$rubric_id; | ||
| 1221 | - $sql .= "and rubric_id='".$rubric_id."'"; | ||
| 1222 | - } | ||
| 1223 | - $sql .= " Group by name Order by sort Asc"; | ||
| 1224 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1225 | - $this->tpl->assign('brends',$row); | ||
| 1226 | - } | ||
| 1227 | - | ||
| 1228 | - function viewBrendsActive(){ | ||
| 1229 | - $sql = "select * from catalogs_brends where active=1 "; | ||
| 1230 | - $sql .= " Order by sort Asc"; | ||
| 1231 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1232 | - $this->tpl->assign('brends_a',$row); | ||
| 1233 | - } | ||
| 1234 | - | ||
| 1235 | - function SaveCity($data){ | ||
| 1236 | - $table_name = "catalogs_cities"; | ||
| 1237 | - $DB_AUTOQUERY = (isset($data['update_id']) && $data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 1238 | - $fields_values = array('name'=>$data['name']); | ||
| 1239 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 1240 | - return mysql_insert_id(); | ||
| 1241 | - } | ||
| 1242 | - | ||
| 1243 | - function is_city($name){ | ||
| 1244 | - return $this->db->getOne('select id from catalogs_cities where name=?',array($name)); | ||
| 1245 | - } | ||
| 1246 | - | ||
| 1247 | - function viewCityMod($code){ | ||
| 1248 | - $sql = "select c.name from catalogs_keys_products_cities k left join catalogs_cities c on c.id=k.city_id where k.mod_code=? and k.count>0"; | ||
| 1249 | - $row = $this->db->getCol($sql,"name",array($code)); | ||
| 1250 | - if(!count($row))return ""; | ||
| 1251 | - foreach($row as $key=>$value){if($value=="Èíòåðíåò ìàãàçèí" or $value=="Êèåâ(Îëèìïèéñêèé)")unset($row[$key]);} | ||
| 1252 | - return implode(', ',$row); | ||
| 1253 | - } | ||
| 1254 | - | ||
| 1255 | - function viewCitiesProductID($id){ | ||
| 1256 | - $sql = "select city_id from catalogs_keys_products_cities where product_id=?"; | ||
| 1257 | - $row = $this->db->getCol($sql,"city_id",array($id)); | ||
| 1258 | - $this->tpl->assign('product_cities',$row); | ||
| 1259 | - } | ||
| 1260 | - | ||
| 1261 | - function viewCities($type = false){ | ||
| 1262 | - $sql = "select * from catalogs_cities "; | ||
| 1263 | - $sql .= " Order by name Asc"; | ||
| 1264 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1265 | - $this->tpl->assign('cities',$row); | ||
| 1266 | - } | ||
| 1267 | - | ||
| 1268 | - function viewCitiesProduct($id){ | ||
| 1269 | - $sql = "select catalogs_cities.* from catalogs_keys_products_cities left join catalogs_cities on catalogs_cities.id=catalogs_keys_products_cities.city_id Where catalogs_keys_products_cities.product_id=? "; | ||
| 1270 | - $row = $this->db->getAll($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 1271 | - $this->tpl->assign('cities',$row); | ||
| 1272 | - } | ||
| 1273 | - | ||
| 1274 | - function viewCity($id){ | ||
| 1275 | - $row = $this->db->getRow("select * from catalogs_cities where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 1276 | - $this->tpl->assign('city', $row); | ||
| 1277 | - } | ||
| 1278 | - | ||
| 1279 | - function deleteCity($id){ | ||
| 1280 | - $this->db->query("delete from catalogs_cities where id=?",array($id)); | ||
| 1281 | - $this->delete_keysCitiesProduct($id); | ||
| 1282 | - } | ||
| 1283 | - | ||
| 1284 | - function delete_keysCitiesProduct($id){ | ||
| 1285 | - $sql = "delete from catalogs_keys_products_cities where city_id=?"; | ||
| 1286 | - $this->db->query($sql,array($id)); | ||
| 1287 | - } | ||
| 1288 | - | ||
| 1289 | - function SaveYears($data){ | ||
| 1290 | - $table_name = "catalogs_years"; | ||
| 1291 | - foreach($data['filter'] as $key=>$name){ | ||
| 1292 | - if(strlen($name)>0){ | ||
| 1293 | - if(isset($data['update_id'][$key]) && $data['update_id'][$key]>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "id='{$data['update_id'][$key]}'";} | ||
| 1294 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = "";} | ||
| 1295 | - $this->db->autoExecute($table_name,array('name'=>$name,'rubric_id'=>$data['rubric_id']),$DB_AUTOQUERY,$where); | ||
| 1296 | - } | ||
| 1297 | - } | ||
| 1298 | - } | ||
| 1299 | - | ||
| 1300 | - function viewYearsProductID($id){ | ||
| 1301 | - $sql = "select year_id from catalogs_keys_products_years where product_id=?"; | ||
| 1302 | - $row = $this->db->getCol($sql,"year_id",array($id)); | ||
| 1303 | - $this->tpl->assign('product_years',$row); | ||
| 1304 | - } | ||
| 1305 | - | ||
| 1306 | - function viewYears($rubric_id){ | ||
| 1307 | - $row = $this->db->getAll("select * from catalogs_years where rubric_id=? order by name",array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 1308 | - $this->tpl->assign('years', $row); | ||
| 1309 | - } | ||
| 1310 | - | ||
| 1311 | - function getYearsName_IDs($ids){ | ||
| 1312 | - //$sql = "select name from catalogs_years where id in (".implode(",",$ids).") order by name"; | ||
| 1313 | - //$row = $this->db->getCol($sql,"name",array()); | ||
| 1314 | - //return implode(", ",$row); | ||
| 1315 | - | ||
| 1316 | - $name = array(); | ||
| 1317 | - foreach($ids as $id){ | ||
| 1318 | - $name[] = $this->db->getOne("select name from catalogs_years where id=?",array($id)); | ||
| 1319 | - } | ||
| 1320 | - return implode(", ",$name); | ||
| 1321 | - } | ||
| 1322 | - | ||
| 1323 | - function deleteYearsRubric_id($id){ | ||
| 1324 | - $this->db->query("delete from catalogs_years where rubric_id=?",array($id)); | ||
| 1325 | - $this->delete_keysYearsRubric($id); | ||
| 1326 | - } | ||
| 1327 | - | ||
| 1328 | - function delete_keysYearsRubric($id){ | ||
| 1329 | - $sql = "delete from catalogs_keys_products_years where rubric_id=?"; | ||
| 1330 | - $this->db->query($sql,array($id)); | ||
| 1331 | - } | ||
| 1332 | - | ||
| 1333 | - function deleteYear($id){ | ||
| 1334 | - $this->db->query("delete from catalogs_years where id=?",array($id)); | ||
| 1335 | - $this->delete_keysYearsProduct($id); | ||
| 1336 | - } | ||
| 1337 | - | ||
| 1338 | - function delete_keysYearsProduct($id){ | ||
| 1339 | - $sql = "delete from catalogs_keys_products_years where year_id=?"; | ||
| 1340 | - $this->db->query($sql,array($id)); | ||
| 1341 | - } | ||
| 1342 | - | ||
| 1343 | - function SaveFilters($data){ | ||
| 1344 | - $table_name = "catalogs_filters"; | ||
| 1345 | - foreach($data['filter'] as $key=>$name){ | ||
| 1346 | - if(strlen($name)>0){ | ||
| 1347 | - if(isset($data['update_id'][$key]) && $data['update_id'][$key]>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "id='{$data['update_id'][$key]}'";} | ||
| 1348 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = "";} | ||
| 1349 | - $active = (isset($data['active'][$key])) ? 1 : 0; | ||
| 1350 | - $this->db->autoExecute($table_name,array('name'=>$name,'prefix'=>encodestring($name),'rubric_id'=>$data['rubric_id'],"sort"=>$data['sort'][$key],"active"=>$active),$DB_AUTOQUERY,$where); | ||
| 1351 | - } | ||
| 1352 | - } | ||
| 1353 | - } | ||
| 1354 | - | ||
| 1355 | - function viewFilterProductID($id){ | ||
| 1356 | - $sql = "select filter_id from catalogs_keys_products_filters where product_id=?"; | ||
| 1357 | - $row = $this->db->getCol($sql,"filter_id",array($id)); | ||
| 1358 | - $this->tpl->assign('product_filters',$row); | ||
| 1359 | - } | ||
| 1360 | - | ||
| 1361 | - function deleteFilter($id){ | ||
| 1362 | - $this->db->query("delete from catalogs_filters where id=?",array($id)); | ||
| 1363 | - $this->delete_keysFilterProduct($id); | ||
| 1364 | - } | ||
| 1365 | - | ||
| 1366 | - function deleteFiltersRubric_id($rubric_id){ | ||
| 1367 | - $this->db->query("delete from catalogs_filters where rubric_id=?",array($rubric_id)); | ||
| 1368 | - $this->delete_keysFilterRubric($rubric_id); | ||
| 1369 | - } | ||
| 1370 | - | ||
| 1371 | - function delete_keysFilterProduct($id){ | ||
| 1372 | - $sql = "delete from catalogs_keys_products_filters where filter_id=?"; | ||
| 1373 | - $this->db->query($sql,array($id)); | ||
| 1374 | - } | ||
| 1375 | - | ||
| 1376 | - function delete_keysFilterRubric($id){ | ||
| 1377 | - $sql = "delete from catalogs_keys_products_filters where rubric_id=?"; | ||
| 1378 | - $this->db->query($sql,array($id)); | ||
| 1379 | - } | ||
| 1380 | - | ||
| 1381 | - function viewFilters($rubric_id){ | ||
| 1382 | - $row = $this->db->getAll("select * from catalogs_filters where active='0' and rubric_id=? order by sort",array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 1383 | - $this->tpl->assign('filters', $row); | ||
| 1384 | - } | ||
| 1385 | - | ||
| 1386 | - function getFiltersName_IDs($ids){ | ||
| 1387 | - //$sql = "select name from catalogs_filters where id in (".implode(",",$ids).")"; | ||
| 1388 | - //$row = $this->db->getCol($sql,"name",array()); | ||
| 1389 | - $name = array(); | ||
| 1390 | - foreach($ids as $id){ | ||
| 1391 | - $name[] = $this->db->getOne("select name from catalogs_filters where id=?",array($id)); | ||
| 1392 | - } | ||
| 1393 | - return implode(", ",$name); | ||
| 1394 | - } | ||
| 1395 | - | ||
| 1396 | - function viewBrend($id){ | ||
| 1397 | - $row = $this->db->getRow("select * from catalogs_brends where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 1398 | - $this->tpl->assign('brend', $row); | ||
| 1399 | - } | ||
| 1400 | - | ||
| 1401 | - function viewBrendName($name){ | ||
| 1402 | - $name = iconv("utf-8", "windows-1251", $name); | ||
| 1403 | - $sql = "select * from catalogs_brends where name=? and active=1 limit 1"; | ||
| 1404 | - $row = $this->db->getRow($sql,array($name),DB_FETCHMODE_ASSOC); | ||
| 1405 | - $this->tpl->assign('brend_seo', $row); | ||
| 1406 | - return $row; | ||
| 1407 | - } | ||
| 1408 | - | ||
| 1409 | - function getBrendIDs_name($name){ | ||
| 1410 | - //$name = iconv("utf-8", "windows-1251", $name); | ||
| 1411 | - $sql = "select id from catalogs_brends where name=?"; | ||
| 1412 | - return $this->db->getCol($sql,"id",array($name)); | ||
| 1413 | - } | ||
| 1414 | - | ||
| 1415 | - function deleteBrend($id){ | ||
| 1416 | - $this->db->query("delete from catalogs_brends where id=?",array($id)); | ||
| 1417 | - } | ||
| 1418 | - | ||
| 1419 | - function viewAkciiProductID($id){ | ||
| 1420 | - $sql = "select rubric_id from catalogs_keys_products_akcii where product_id=?"; | ||
| 1421 | - $row = $this->db->getCol($sql,"rubric_id",array($id)); | ||
| 1422 | - $this->tpl->assign('product_akcii',$row); | ||
| 1423 | - } | ||
| 1424 | - | ||
| 1425 | - function import_saveRubric($name,$parent_id){ | ||
| 1426 | - $id = $this->db->getOne("select id from catalogs_rubrics where name=? and parent_id=?",array($name,$parent_id)); | ||
| 1427 | - if( !$id ){ | ||
| 1428 | - $this->db->autoExecute("catalogs_rubrics",array('name'=>$name,'parent_id' => $parent_id,"level"=>($this->getLevelRubric($parent_id)+1)),DB_AUTOQUERY_INSERT); | ||
| 1429 | - return mysql_insert_id(); | ||
| 1430 | - } | ||
| 1431 | - return $id; | ||
| 1432 | - } | ||
| 1433 | - | ||
| 1434 | - function import_saveBrend($name,$rubric_id){ | ||
| 1435 | - //getRubricParent(); | ||
| 1436 | - $id = $this->db->getOne("select id from catalogs_brends where name=? and rubric_id=?",array($name,$rubric_id)); | ||
| 1437 | - if( !$id ){ | ||
| 1438 | - $this->db->autoExecute("catalogs_brends",array('rubric_id'=>$rubric_id,'name'=>$name),DB_AUTOQUERY_INSERT); | ||
| 1439 | - return mysql_insert_id(); | ||
| 1440 | - } | ||
| 1441 | - return $id; | ||
| 1442 | - } | ||
| 1443 | - | ||
| 1444 | - function import_saveFilters($rubric_id,$str){ | ||
| 1445 | - if(!$str)return array(); | ||
| 1446 | - $row_str = explode(",",trim($str)); | ||
| 1447 | - $arr_id = array(); | ||
| 1448 | - foreach($row_str as $str){ | ||
| 1449 | - $name = trim($str); | ||
| 1450 | - $name_r = explode('=',$name);$name = $name_r[0]; $active = (isset($name_r[1])) ? 1 : 0; | ||
| 1451 | - $id = $this->db->getOne("select id from catalogs_filters where rubric_id=? and name=?",array($rubric_id,$name)); | ||
| 1452 | - if( !$id ){ | ||
| 1453 | - $this->db->autoExecute("catalogs_filters",array('rubric_id'=>$rubric_id,'name'=>$name,'prefix'=>encodestring($name),'active'=>$active),DB_AUTOQUERY_INSERT); | ||
| 1454 | - $id = mysql_insert_id(); | ||
| 1455 | - }else{ $this->db->autoExecute("catalogs_filters",array('rubric_id'=>$rubric_id,'name'=>$name,'prefix'=>encodestring($name),'active'=>$active),DB_AUTOQUERY_UPDATE,"id=$id");} | ||
| 1456 | - $arr_id[] = $id; | ||
| 1457 | - } | ||
| 1458 | - return $arr_id; | ||
| 1459 | - } | ||
| 1460 | - | ||
| 1461 | - function import_saveYear($rubric_id,$name){ | ||
| 1462 | - $id = $this->db->getOne("select id from catalogs_years where rubric_id=? and name=?",array($rubric_id,$name)); | ||
| 1463 | - if( !$id ){ | ||
| 1464 | - $this->db->autoExecute("catalogs_years",array('rubric_id'=>$rubric_id,'name'=>$name),DB_AUTOQUERY_INSERT); | ||
| 1465 | - $id = mysql_insert_id(); | ||
| 1466 | - } | ||
| 1467 | - return ($id)?array($id):array(); | ||
| 1468 | - } | ||
| 1469 | - | ||
| 1470 | - function import_updateProductCine($product_id,$row,$line='',$mktime = 0){ // print"<pre>";print_r($row);print"</pre>"; | ||
| 1471 | - | ||
| 1472 | - IF($product_id>0){ | ||
| 1473 | - IF($row[3]>0){ | ||
| 1474 | - if($row[2]<1){$cine=$row[1];$cine_last=0;} | ||
| 1475 | - else {$cine=$row[2];$cine_last=(($row[1]>0)?$row[1]:$row[2]);} | ||
| 1476 | - $this->db->autoExecute("catalogs_products",array('cine'=>$cine,'cine_last'=>$cine_last),DB_AUTOQUERY_UPDATE,"id='$product_id'"); | ||
| 1477 | - } | ||
| 1478 | - | ||
| 1479 | - | ||
| 1480 | - $city = trim($row[4]); | ||
| 1481 | - if(!$city)$city = "Èíòåðíåò ìàãàçèí"; | ||
| 1482 | - //echo "OK(1) - <br/>"; | ||
| 1483 | - if(strlen($city)>0){ //print $city; | ||
| 1484 | - $city_id = $this->is_city($city); | ||
| 1485 | - //echo "OK(2) - <br/>"; | ||
| 1486 | - if(!$city_id){$city_id = $this->SaveCity(array('name'=>$city));} | ||
| 1487 | - $this->db->query("delete from catalogs_keys_products_cities where product_id=? and mod_code=? and mktime<?", array($product_id,$row[0],$mktime)); | ||
| 1488 | - | ||
| 1489 | - if($row[3]==0){ | ||
| 1490 | - | ||
| 1491 | - } | ||
| 1492 | - else{ | ||
| 1493 | - // $this->db->query("delete from catalogs_keys_products_cities where product_id=? and mod_code=? and mktime<?", array($product_id,$row[0],$mktime)); | ||
| 1494 | - //echo "OK(3) - <br/>"; | ||
| 1495 | - if($this->getKeysModificationCity($row[0], $city_id)){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "mod_code='".$row[0]."' and city_id='".$city_id."'";} | ||
| 1496 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = null;} | ||
| 1497 | - | ||
| 1498 | - // if($this->getKeysModificationCityMktime_count($row[0], $city_id, $mktime)>0){$row[3]=1;} | ||
| 1499 | - //print $city_id .'--'.$where."<br>"; | ||
| 1500 | - $fields = array('count'=>$row[3],'product_id'=>$product_id,'mod_code'=>$row[0],'city_id'=>$city_id,'mktime'=>$mktime); | ||
| 1501 | - $s = $this->db->autoExecute("catalogs_keys_products_cities",$fields,$DB_AUTOQUERY,$where); | ||
| 1502 | - if (PEAR::isError($s)) die($s->getMessage()); | ||
| 1503 | - }} | ||
| 1504 | - //echo "OK(4) - <br/>"; | ||
| 1505 | - $active = $this->db->getOne("select count(*) from catalogs_keys_products_cities where mod_code=? and count>0",array($row[0])); | ||
| 1506 | - //$active = true; | ||
| 1507 | - if($this->db->getOne("select count(*) from catalogs_modifications where code=?",array($row[0]))>0){ | ||
| 1508 | - $this->db->autoExecute("catalogs_modifications",array('active'=>$active,'is_update'=>1,'prefix'=>$row[4]),DB_AUTOQUERY_UPDATE,"code='".$row[0]."'"); | ||
| 1509 | - //echo "OK(5) - <br/>"; | ||
| 1510 | - }else{ | ||
| 1511 | - //echo "OK(6) - <br/>"; | ||
| 1512 | - $this->saveCsvMod($line); | ||
| 1513 | - } | ||
| 1514 | - } | ||
| 1515 | - } | ||
| 1516 | - | ||
| 1517 | - function saveCsvMod($line){ | ||
| 1518 | - echo "OK1 - <br/>"; | ||
| 1519 | - $tmpfname = $_SERVER['DOCUMENT_ROOT'] . "/tmp/noDB_mod.csv"; | ||
| 1520 | - $handle = @fopen($tmpfname, "a"); | ||
| 1521 | -// $row = explode(";",$line); | ||
| 1522 | -// File_FGetCSV::fputcsv($handle,$row,';'); | ||
| 1523 | - echo "OK2 - <br/>"; | ||
| 1524 | - echo $line; | ||
| 1525 | - echo "OK3 - <br/>"; | ||
| 1526 | - fwrite($handle,$line); | ||
| 1527 | - fclose($handle); | ||
| 1528 | - } | ||
| 1529 | - | ||
| 1530 | - function getKeysModificationCity($code, $city_id){ | ||
| 1531 | - return $this->db->getOne("select count(*) from catalogs_keys_products_cities where mod_code=? and city_id=?", array($code, $city_id)); | ||
| 1532 | - } | ||
| 1533 | - | ||
| 1534 | - function getKeysModificationCity_count($code, $city_id){ | ||
| 1535 | - return $this->db->getOne("select count from catalogs_keys_products_cities where mod_code=? and city_id=?", array($code, $city_id)); | ||
| 1536 | - } | ||
| 1537 | - | ||
| 1538 | - function getKeysModificationCityMktime_count($code, $city_id, $mktime){ | ||
| 1539 | - $r = $this->db->getOne("select count from catalogs_keys_products_cities where mod_code=? and city_id=? and mktime=?", array($code, $city_id, $mktime)); | ||
| 1540 | - return $r; | ||
| 1541 | - } | ||
| 1542 | - | ||
| 1543 | - function getProductID($name){ | ||
| 1544 | - $id = $this->db->getOne("select id from catalogs_products where name=?",array($name)); | ||
| 1545 | - return $id; | ||
| 1546 | - } | ||
| 1547 | - | ||
| 1548 | - function getProductID_R($name,$rubric_parent_id){ | ||
| 1549 | - $id = $this->db->getOne("select id from catalogs_products where name=? and rubric_id=?",array($name,$rubric_parent_id)); | ||
| 1550 | - return $id; | ||
| 1551 | - } | ||
| 1552 | - | ||
| 1553 | - function getModificationActive($code){ | ||
| 1554 | - return $this->db->getOne("select active from catalogs_modifications where code=?",array($code)); | ||
| 1555 | - } | ||
| 1556 | - | ||
| 1557 | - function updateProduct_countModification($product_id,$count){ | ||
| 1558 | - $this->db->autoExecute("catalogs_products",array('count_modifications'=>$count),DB_AUTOQUERY_UPDATE,"id='$product_id'"); | ||
| 1559 | - } | ||
| 1560 | - | ||
| 1561 | - function updateProductModificationCountPrefix($product_id,$prefix = "+"){ | ||
| 1562 | -// print $product_id; | ||
| 1563 | - $sql = "UPDATE catalogs_products SET count_modifications = count_modifications $prefix 1 WHERE id =?"; | ||
| 1564 | - $this->db->query($sql,array($product_id)); | ||
| 1565 | - } | ||
| 1566 | - | ||
| 1567 | - function exportCSV(){ | ||
| 1568 | - $tmpfname = "tmp/price.csv"; | ||
| 1569 | - $handle = fopen($tmpfname, "w"); | ||
| 1570 | - // fwrite($handle, $xml); | ||
| 1571 | - $res = $this->db->getAll('select p.id,p.rubric_id,r2.name,r.name,b.name as brend,p.name,p.about,p.text,null,p.sex,null,p.cine,p.cine_last,p.akcii_id,p.strnumber,p.active,null,p.video_code,p.pic_big from catalogs_products p left join catalogs_rubrics r on r.id=p.rubric_id left join catalogs_rubrics r2 on r2.id=p.rubric_parent_id left join catalogs_brends b on b.id=p.brend_id',array()); | ||
| 1572 | - foreach($res as $key=>$row){ | ||
| 1573 | - $list = $row; | ||
| 1574 | - $mod_res = $this->db->getAll('select code,size,color,pic_big,active from catalogs_modifications where product_id=?',array($row[0])); | ||
| 1575 | - foreach($mod_res as $mod_row){$list[] = implode('=',$mod_row);} | ||
| 1576 | - | ||
| 1577 | - $f_row = $this->db->getCol("select f.name from catalogs_keys_products_filters k Left Join catalogs_filters f ON f.id=k.filter_id where k.product_id=?",'name',array($list[0])); | ||
| 1578 | - $list[8]=implode(',',$f_row); | ||
| 1579 | - | ||
| 1580 | - switch($list[9]){ | ||
| 1581 | - case 1 : $list[9] = 'ìóæñêîé'; break; | ||
| 1582 | - case 2 : $list[9] = 'æåíñêèé'; break; | ||
| 1583 | - case 3 : $list[9] = 'äåòñêèé'; break; | ||
| 1584 | - case 4 : $list[9] = 'óíèñåêñ'; break; | ||
| 1585 | - default : $list[9] = 'ìóæñêîé'; break; | ||
| 1586 | - } | ||
| 1587 | - | ||
| 1588 | - $y_row = $this->db->getCol("select y.name from catalogs_keys_products_years k Left Join catalogs_years y ON y.id=k.year_id where k.product_id=?",'name',array($list[0])); | ||
| 1589 | - $list[10]=implode(',',$y_row); | ||
| 1590 | - | ||
| 1591 | - | ||
| 1592 | - //print_r($list);exit; | ||
| 1593 | - $p_res = $this->db->getAll("select name,size,metka from catalogs_products_params where product_id=?",array($list[0])); | ||
| 1594 | - $param = array(); | ||
| 1595 | - foreach($p_res as $row_p){ | ||
| 1596 | - $param[] = implode('*',$row_p); | ||
| 1597 | - } | ||
| 1598 | - $list[15] = implode('=',$param); | ||
| 1599 | - | ||
| 1600 | - unset($list[0]);unset($list[1]); | ||
| 1601 | - | ||
| 1602 | - File_FGetCSV::fputcsv($handle,$list,';'); | ||
| 1603 | - | ||
| 1604 | - | ||
| 1605 | - | ||
| 1606 | - } | ||
| 1607 | - | ||
| 1608 | - fclose($handle); | ||
| 1609 | - | ||
| 1610 | - $params = array( | ||
| 1611 | - 'file' => $tmpfname, | ||
| 1612 | - 'contenttype' => 'application/xls', | ||
| 1613 | - 'contentdisposition' => array(HTTP_DOWNLOAD_ATTACHMENT, 'price.csv'), | ||
| 1614 | - 'cache' => false | ||
| 1615 | - ); | ||
| 1616 | - $error = HTTP_Download::staticSend($params, false); //îòäà¸ì ôàéë | ||
| 1617 | - if ($error === true) { | ||
| 1618 | - //åñëè ôàéë çàãðóæåí óñïåøíî, îáíîâëÿåì äàòó ïîñëåäíåé çàêà÷êè | ||
| 1619 | - } | ||
| 1620 | - | ||
| 1621 | - unlink($tmpfname); | ||
| 1622 | - } | ||
| 1623 | - | ||
| 1624 | - function exportModCSV(){ | ||
| 1625 | - $tmpfname = "tmp/price_mod.csv"; | ||
| 1626 | - $handle = fopen($tmpfname, "w"); | ||
| 1627 | - $res = $this->db->getAll('select m.code,p.cine,p.cine_last,m.active,null,m.prefix,m.is_update From catalogs_modifications m Left join catalogs_products p on p.id=m.product_id'); | ||
| 1628 | - foreach($res as $key=>$row){ | ||
| 1629 | - File_FGetCSV::fputcsv($handle,$row,';'); | ||
| 1630 | - } | ||
| 1631 | - fclose($handle); | ||
| 1632 | - $params = array( | ||
| 1633 | - 'file' => $tmpfname, | ||
| 1634 | - 'contenttype' => 'application/xls', | ||
| 1635 | - 'contentdisposition' => array(HTTP_DOWNLOAD_ATTACHMENT, 'file_1.csv'), | ||
| 1636 | - 'cache' => false | ||
| 1637 | - ); | ||
| 1638 | - $error = HTTP_Download::staticSend($params, false); //îòäà¸ì ôàéë | ||
| 1639 | - if ($error === true) { | ||
| 1640 | - //åñëè ôàéë çàãðóæåí óñïåøíî, îáíîâëÿåì äàòó ïîñëåäíåé çàêà÷êè | ||
| 1641 | - } | ||
| 1642 | - | ||
| 1643 | - unlink($tmpfname); | ||
| 1644 | - $this->db->autoExecute("catalogs_modifications",array('is_update'=>0),DB_AUTOQUERY_UPDATE); | ||
| 1645 | - } | ||
| 1646 | - | ||
| 1647 | - function exportOrdersCSV(){ | ||
| 1648 | - $tmpfname = "tmp/orders.csv"; | ||
| 1649 | - $handle = fopen($tmpfname, "w"); | ||
| 1650 | - $res = $this->db->getAll('select name,email,adress,phone From catalogs_orders order by id desc'); | ||
| 1651 | - foreach($res as $key=>$row){ | ||
| 1652 | - File_FGetCSV::fputcsv($handle,$row,';'); | ||
| 1653 | - } | ||
| 1654 | - fclose($handle); | ||
| 1655 | - $params = array( | ||
| 1656 | - 'file' => $tmpfname, | ||
| 1657 | - 'contenttype' => 'application/xls', | ||
| 1658 | - 'contentdisposition' => array(HTTP_DOWNLOAD_ATTACHMENT, 'orders.csv'), | ||
| 1659 | - 'cache' => false | ||
| 1660 | - ); | ||
| 1661 | - $error = HTTP_Download::staticSend($params, false); //îòäà¸ì ôàéë | ||
| 1662 | - if ($error === true) { | ||
| 1663 | - //åñëè ôàéë çàãðóæåí óñïåøíî, îáíîâëÿåì äàòó ïîñëåäíåé çàêà÷êè | ||
| 1664 | - } | ||
| 1665 | - | ||
| 1666 | - unlink($tmpfname); | ||
| 1667 | - } | ||
| 1668 | - | ||
| 1669 | - function deleteProductParams($product_id){ | ||
| 1670 | - $sql = "delete from catalogs_products_params where product_id=?"; | ||
| 1671 | - $this->db->query($sql,array($product_id)); | ||
| 1672 | - } | ||
| 1673 | - | ||
| 1674 | - function saveProductParams($product_id,$pruduct_params){ | ||
| 1675 | - $this->deleteProductParams($product_id); | ||
| 1676 | - $array_params = explode("=",$pruduct_params); | ||
| 1677 | - foreach($array_params as $row){ | ||
| 1678 | - $arr = explode('*',$row); | ||
| 1679 | - $this->db->autoExecute("catalogs_products_params",array('product_id'=>$product_id,'name'=>$arr[0],'size'=>$arr[1],'metka'=>$arr[2]),DB_AUTOQUERY_INSERT); | ||
| 1680 | - } | ||
| 1681 | - } | ||
| 1682 | - | ||
| 1683 | - function getProductParams($product_id){ | ||
| 1684 | - $sql = "select * from catalogs_products_params where product_id=? order by id"; | ||
| 1685 | - $row = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 1686 | - return $row; | ||
| 1687 | - } | ||
| 1688 | - | ||
| 1689 | - function viewProductParams($product_id){ | ||
| 1690 | - $this->tpl->assign('params',$this->getProductParams($product_id)); | ||
| 1691 | - } | ||
| 1692 | - | ||
| 1693 | - function saveTmpProduct($row,$product_id){ | ||
| 1694 | - if($product_id>0){ | ||
| 1695 | - $this->db->autoExecute("catalogs_tmp_products",array('name'=>$row[3],'product_id'=>$product_id),DB_AUTOQUERY_INSERT); | ||
| 1696 | - } | ||
| 1697 | - } | ||
| 1698 | - | ||
| 1699 | - function clearTmpProduct(){ | ||
| 1700 | - $sql = "TRUNCATE TABLE catalogs_tmp_products"; | ||
| 1701 | - $this->db->query($sql,array()); | ||
| 1702 | - } | ||
| 1703 | - | ||
| 1704 | - function viewTmpProducts(){ | ||
| 1705 | - $sql = "SELECT count( name ) AS cn, name | ||
| 1706 | -FROM catalogs_tmp_products | ||
| 1707 | -GROUP BY name | ||
| 1708 | -ORDER BY name"; | ||
| 1709 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1710 | - $this->tpl->assign('list',$row); | ||
| 1711 | - $this->tpl->assign('list_total',$this->db->getOne("select count(*) from catalogs_tmp_products")); | ||
| 1712 | - } | ||
| 1713 | - | ||
| 1714 | - function importCSV($upload){ error_reporting(0); | ||
| 1715 | - if($upload['file']['name']=="file_1.csv"){print"Îøèáêà! Ôàéë öåí!";exit;} | ||
| 1716 | - //$arr_line = file($upload['file']['tmp_name']); | ||
| 1717 | - $f = fopen($upload['file']['tmp_name'], "r") or die("Îøèáêà!"); | ||
| 1718 | - // print"<pre>"; | ||
| 1719 | - $this->clearTmpProduct(); | ||
| 1720 | - for ($i=0; $row_line=File_FGetCSV::fgetcsv($f,15000000,";"); $i++) { | ||
| 1721 | - // foreach($arr_line as $line){ | ||
| 1722 | - //$row_line = fgetcsv(";",$line); | ||
| 1723 | - $rubric_id = $this->import_saveRubric($row_line[0],0); | ||
| 1724 | - $rubric_parent_id = $this->import_saveRubric($row_line[1],$rubric_id); | ||
| 1725 | - $brend_id = $this->import_saveBrend($row_line[2],$rubric_parent_id); | ||
| 1726 | - $pruduct_name = trim($row_line[3]); | ||
| 1727 | - $pruduct_about = trim($row_line[4]); | ||
| 1728 | - $pruduct_text = trim($row_line[5]); | ||
| 1729 | - switch($row_line[7]){ | ||
| 1730 | - case 'ìóæñêîé' : $pruduct_sex = 1; break; | ||
| 1731 | - case 'æåíñêèé' : $pruduct_sex = 2; break; | ||
| 1732 | - case 'äåòñêèé' : $pruduct_sex = 3; break; | ||
| 1733 | - case 'óíèñåêñ' : $pruduct_sex = 4; break; | ||
| 1734 | - default : $pruduct_sex = 0; break; | ||
| 1735 | - } | ||
| 1736 | - $pruduct_date = trim($row_line[8]); | ||
| 1737 | - $pruduct_cine = trim($row_line[9]); | ||
| 1738 | - $pruduct_cine_last = trim($row_line[10]); | ||
| 1739 | - if($pruduct_cine<1){$pruduct_cine=$pruduct_cine_last;$pruduct_cine_last=0;} | ||
| 1740 | - $pruduct_akcii_id = trim($row_line[11]); | ||
| 1741 | - $pruduct_strnumber = trim($row_line[12]); | ||
| 1742 | - $pruduct_active = trim($row_line[13]); | ||
| 1743 | - $pruduct_params = trim($row_line[14]); | ||
| 1744 | - $pruduct_pic_tmp = trim($row_line[16]); | ||
| 1745 | - $pruduct_video = trim($row_line[15]); | ||
| 1746 | - $pruduct_update_id = $this->getProductID_R($pruduct_name,$rubric_parent_id); | ||
| 1747 | - $upload_pruduct = (strlen($pruduct_pic_tmp)>0 && is_file("./uploaded/pic/catalogs/products/big/$pruduct_pic_tmp"))?array('pic'=>array('tmp_name'=>"./uploaded/pic/catalogs/products/big/$pruduct_pic_tmp",'name'=>$pruduct_pic_tmp,'big'=>true)):null; | ||
| 1748 | - $product_id = $this->saveProduct( | ||
| 1749 | - array('rubric_id'=>$rubric_parent_id, | ||
| 1750 | - 'rubric_parent_id'=>$rubric_parent_id, | ||
| 1751 | - 'brend_id'=>$brend_id, | ||
| 1752 | - 'name'=>$pruduct_name, | ||
| 1753 | - 'about'=>$pruduct_about, | ||
| 1754 | - 'text'=>$pruduct_text, | ||
| 1755 | - 'video_code'=>$pruduct_video, | ||
| 1756 | - 'sex'=>$pruduct_sex, | ||
| 1757 | - 'date'=>$pruduct_date, | ||
| 1758 | - 'cine'=>$pruduct_cine, | ||
| 1759 | - 'cine_last'=>$pruduct_cine_last, | ||
| 1760 | - 'akcii_id'=>$pruduct_akcii_id, | ||
| 1761 | - 'strnumber'=>$pruduct_strnumber, | ||
| 1762 | - 'active'=>$pruduct_active, | ||
| 1763 | - 'meta_title'=>$pruduct_name, | ||
| 1764 | - 'meta_description'=>$pruduct_name, | ||
| 1765 | - 'meta_keywords'=>$pruduct_name, | ||
| 1766 | - 'meta_about'=>$pruduct_name, | ||
| 1767 | - 'filter'=>$this->import_saveFilters($rubric_parent_id,$row_line[6]), | ||
| 1768 | - 'years'=>$this->import_saveYear($rubric_parent_id,$pruduct_date), | ||
| 1769 | - 'akcii'=>array(), | ||
| 1770 | - 'update_id'=>$pruduct_update_id), | ||
| 1771 | - $upload_pruduct | ||
| 1772 | - ); | ||
| 1773 | - //print $pruduct_update_id;exit; | ||
| 1774 | - $this->saveProductParams($product_id,$pruduct_params); | ||
| 1775 | - $this->deleteProductModifications($product_id,true); | ||
| 1776 | - $m_i = 0; | ||
| 1777 | - for($i=17;$i<count($row_line);$i++){ | ||
| 1778 | - $arr_mod = trim($row_line[$i]); | ||
| 1779 | - if(strlen($arr_mod)>0){ | ||
| 1780 | - $row_mod = explode("=",$arr_mod); | ||
| 1781 | - $upload_mod = (strlen($row_mod[3])>0 && is_file("./uploaded/pic/catalogs/modifications/big/".$row_mod[3]))?array('pic'=>array('tmp_name'=>"./uploaded/pic/catalogs/modifications/big/".$row_mod[3],'name'=>$row_mod[3],'big'=>true)):null; | ||
| 1782 | - | ||
| 1783 | - $this->SaveModification( | ||
| 1784 | - array('product_id'=>$product_id, | ||
| 1785 | - 'code'=>$row_mod[0], | ||
| 1786 | - 'size'=>$row_mod[1], | ||
| 1787 | - 'color'=>$row_mod[2], | ||
| 1788 | - 'active'=>$row_mod[4] | ||
| 1789 | - ),$upload_mod | ||
| 1790 | - ); | ||
| 1791 | - if($row_mod[4]>0)$m_i++; | ||
| 1792 | - } | ||
| 1793 | - } | ||
| 1794 | - $this->updateProduct_countModification($product_id,$m_i); | ||
| 1795 | - //$this->import_saveFilters($product_id,$rubric_parent_id,$row_line[6]); | ||
| 1796 | - //$strnumber = $this->getProductID($row_line[3]); $this->save_keysProductsFilters($id,$data); | ||
| 1797 | - //print_r($row_line); | ||
| 1798 | - $this->saveTmpProduct($row_line,$product_id); | ||
| 1799 | - if(($i%30)==0)sleep(1); | ||
| 1800 | - } | ||
| 1801 | - // print"</pre>"; | ||
| 1802 | - | ||
| 1803 | - } | ||
| 1804 | - | ||
| 1805 | - function importCSV_cine($upload){ | ||
| 1806 | - if($upload['file']['name']!="file_1.csv"){print"Îøèáêà! Òîëüêî file_1.csv";exit;} | ||
| 1807 | - $arr_line = file($upload['file']['tmp_name']); | ||
| 1808 | - //print"<pre>"; | ||
| 1809 | - $i = 0; | ||
| 1810 | - $mktime = mktime(); | ||
| 1811 | - foreach($arr_line as $line){ | ||
| 1812 | - $row_line = explode(";",$line); | ||
| 1813 | - $this->import_updateProductCine($this->getModificationProduct_id($row_line[0]),$row_line,$line,$mktime); | ||
| 1814 | - if(($i%30)==0)sleep(1); | ||
| 1815 | - $i++; | ||
| 1816 | - // print_r($row_line); | ||
| 1817 | - }//print"</pre>"; | ||
| 1818 | - | ||
| 1819 | - // $this->updateCountModificationProducts(); | ||
| 1820 | - } | ||
| 1821 | - | ||
| 1822 | - function loadCSV_cine($upload){ | ||
| 1823 | - if($upload['file']['name']!="file_1.csv"){print"Îøèáêà! Òîëüêî file_1.csv";exit;} | ||
| 1824 | - $file = $_SERVER['DOCUMENT_ROOT'] . "/cron/file_1.csv"; | ||
| 1825 | - //echo $file; | ||
| 1826 | - //exit; | ||
| 1827 | - move_uploaded_file($upload['file']['tmp_name'], $file); | ||
| 1828 | - } | ||
| 1829 | - | ||
| 1830 | - function is_loadCSV_cine(){ | ||
| 1831 | - $file = $_SERVER['DOCUMENT_ROOT'] . "/cron/file_1.csv"; | ||
| 1832 | - $is = is_file($file); | ||
| 1833 | - $this->tpl->assign('is',$is); | ||
| 1834 | - } | ||
| 1835 | - | ||
| 1836 | - function CronImportCSV_cine($upload){ | ||
| 1837 | - if($upload['file']['name']!="file_1.csv"){print"Îøèáêà! Òîëüêî file_1.csv";exit;} | ||
| 1838 | - $arr_line = file($upload['file']['tmp_name']); | ||
| 1839 | - //print"<pre>"; | ||
| 1840 | - $i = 0; | ||
| 1841 | - $mktime = mktime(); | ||
| 1842 | - foreach($arr_line as $line){ | ||
| 1843 | - $row_line = explode(";",$line); | ||
| 1844 | - $this->import_updateProductCine($this->getModificationProduct_id($row_line[0]),$row_line,$line,$mktime); | ||
| 1845 | - if(($i%30)==0)sleep(1); | ||
| 1846 | - $i++; | ||
| 1847 | - // print_r($row_line); | ||
| 1848 | - }//print"</pre>"; | ||
| 1849 | - //$this->updateCountModificationProducts(); | ||
| 1850 | - } | ||
| 1851 | - | ||
| 1852 | - function updateCountModificationProducts(){ // print"test"; | ||
| 1853 | -// $this->db->autoExecute("catalogs_products",array('count_modifications'=>0),DB_AUTOQUERY_UPDATE); | ||
| 1854 | - $res = $this->db->getAll("select * from catalogs_products",array(),DB_FETCHMODE_ASSOC); | ||
| 1855 | - $i = 0; | ||
| 1856 | - foreach($res as $row){ | ||
| 1857 | - $count = $this->db->getOne("select count(*) from catalogs_modifications where product_id=? and active>0",array($row['id'])); | ||
| 1858 | - $this->db->autoExecute("catalogs_products",array('count_modifications'=>$count),DB_AUTOQUERY_UPDATE,"id='".$row['id']."'"); | ||
| 1859 | - // if(($i%10)==0)sleep(10); | ||
| 1860 | - $i++; | ||
| 1861 | - } | ||
| 1862 | - } | ||
| 1863 | - | ||
| 1864 | - function config_update($id,$value){ | ||
| 1865 | - $this->db->autoExecute("catalogs_config",array('value'=>$value),DB_AUTOQUERY_UPDATE,"id='".$id."'"); | ||
| 1866 | - } | ||
| 1867 | - | ||
| 1868 | - function view_config_value($id){ | ||
| 1869 | - $r = $this->db->getOne("select value from catalogs_config where id=?",$id); | ||
| 1870 | - $this->tpl->assign("config",$r); | ||
| 1871 | - return $r; | ||
| 1872 | - } | ||
| 1873 | - | ||
| 1874 | - function displayCatalogsCurs(){ | ||
| 1875 | - $this->tpl->assign("tpl",'catalogs_curs.tpl'); | ||
| 1876 | - } | ||
| 1877 | - | ||
| 1878 | - function displayCatalogs(){ | ||
| 1879 | - $this->tpl->assign("tpl",'catalogs.tpl'); | ||
| 1880 | - } | ||
| 1881 | - | ||
| 1882 | - function displayProducts(){ | ||
| 1883 | - $this->tpl->assign("tpl",'catalogs_products.tpl'); | ||
| 1884 | - } | ||
| 1885 | - | ||
| 1886 | - function displayProductsTops(){ | ||
| 1887 | - $this->tpl->assign("tpl",'catalogs_products_tops.tpl'); | ||
| 1888 | - } | ||
| 1889 | - | ||
| 1890 | - function displayProductsHits(){ | ||
| 1891 | - $this->tpl->assign("tpl",'catalogs_products_hits.tpl'); | ||
| 1892 | - } | ||
| 1893 | - | ||
| 1894 | - function displayProductsHitsAll(){ | ||
| 1895 | - $this->tpl->assign("tpl",'catalogs_products_hits_all.tpl'); | ||
| 1896 | - } | ||
| 1897 | - | ||
| 1898 | - function displayBasket($count_products,$cine_products,$cine_products_discount,$discount){ | ||
| 1899 | - $this->tpl->assign("count_products",$count_products); | ||
| 1900 | - $this->tpl->assign("cine_products",$cine_products); | ||
| 1901 | - $this->tpl->assign("cine_products_discount",$cine_products_discount); | ||
| 1902 | - $this->tpl->assign("discount",$discount); | ||
| 1903 | - $this->tpl->display('basket.tpl'); | ||
| 1904 | - } | ||
| 1905 | - | ||
| 1906 | - function displayProduct(){ | ||
| 1907 | - $this->tpl->assign("tpl",'catalogs_product.tpl'); | ||
| 1908 | - } | ||
| 1909 | - | ||
| 1910 | - function displayProductBasket(){ | ||
| 1911 | - $this->tpl->assign("tpl",'catalogs_basket.tpl'); | ||
| 1912 | - } | ||
| 1913 | - | ||
| 1914 | - function displayBrends(){ | ||
| 1915 | - $this->tpl->assign("tpl",'catalogs_brends.tpl'); | ||
| 1916 | - } | ||
| 1917 | - | ||
| 1918 | - function displayBrend(){ | ||
| 1919 | - $this->tpl->assign("tpl",'catalogs_brend.tpl'); | ||
| 1920 | - } | ||
| 1921 | - | ||
| 1922 | - function displayCities(){ | ||
| 1923 | - $this->tpl->assign("tpl",'catalogs_cities.tpl'); | ||
| 1924 | - } | ||
| 1925 | - | ||
| 1926 | - function displayProductBasketSend(){ | ||
| 1927 | - $this->tpl->assign("tpl",'catalogs_basket_send.tpl'); | ||
| 1928 | - } | ||
| 1929 | - | ||
| 1930 | - function displayReg(){ | ||
| 1931 | - $this->tpl->assign("tpl",'catalogs_reg.tpl'); | ||
| 1932 | - } | ||
| 1933 | - | ||
| 1934 | - function displayEditUser(){ | ||
| 1935 | - $this->tpl->assign("tpl",'catalogs_user_edit.tpl'); | ||
| 1936 | - } | ||
| 1937 | - | ||
| 1938 | - function displayNoPsw(){ | ||
| 1939 | - $this->tpl->assign("tpl",'catalogs_nopsw.tpl'); | ||
| 1940 | - } | ||
| 1941 | - | ||
| 1942 | - function displayOrders(){ | ||
| 1943 | - $this->tpl->assign("tpl",'catalogs_orders.tpl'); | ||
| 1944 | - } | ||
| 1945 | - | ||
| 1946 | - function displayOrder(){ | ||
| 1947 | - $this->tpl->assign("tpl",'catalogs_order.tpl'); | ||
| 1948 | - } | ||
| 1949 | - | ||
| 1950 | - function displayUsers(){ | ||
| 1951 | - $this->tpl->assign("tpl",'catalogs_users.tpl'); | ||
| 1952 | - } | ||
| 1953 | - | ||
| 1954 | - function displayUser(){ | ||
| 1955 | - $this->tpl->assign("tpl",'catalogs_user.tpl'); | ||
| 1956 | - } | ||
| 1957 | - | ||
| 1958 | - function displayFilters(){ | ||
| 1959 | - $this->tpl->assign("tpl",'catalogs_filters.tpl'); | ||
| 1960 | - } | ||
| 1961 | - | ||
| 1962 | - function displayYears(){ | ||
| 1963 | - $this->tpl->assign("tpl",'catalogs_years.tpl'); | ||
| 1964 | - } | ||
| 1965 | - | ||
| 1966 | - function displayWinProducts(){ | ||
| 1967 | - $this->tpl->display('catalogs_win_products.tpl'); | ||
| 1968 | - } | ||
| 1969 | - | ||
| 1970 | - function displayModifications(){ | ||
| 1971 | - $this->tpl->assign("tpl",'catalogs_modifications.tpl'); | ||
| 1972 | - } | ||
| 1973 | - | ||
| 1974 | - function displayImport(){ | ||
| 1975 | - $this->tpl->assign("tpl",'catalogs_import.tpl'); | ||
| 1976 | - } | ||
| 1977 | - | ||
| 1978 | - function displayImportCine(){ | ||
| 1979 | - $this->tpl->assign("tpl",'catalogs_import_cine.tpl'); | ||
| 1980 | - } | ||
| 1981 | - | ||
| 1982 | - function displayAkcii(){ | ||
| 1983 | - $this->tpl->assign("tpl",'catalogs_akcii.tpl'); | ||
| 1984 | - } | ||
| 1985 | - | ||
| 1986 | - function displayCompare(){ | ||
| 1987 | - $this->tpl->assign("tpl",'catalogs_compare.tpl'); | ||
| 1988 | - } | ||
| 1989 | - | ||
| 1990 | - function displayTmpProducts(){ | ||
| 1991 | - $this->tpl->assign("tpl",'catalogs_tmp_products.tpl'); | ||
| 1992 | - } | ||
| 1993 | - | ||
| 1994 | -} | ||
| 1995 | -?> |
libs/catalogs2.class.php deleted
| 1 | -<?php | ||
| 2 | -class Catalogs{ | ||
| 3 | - var $db = null; | ||
| 4 | - var $tpl = null; | ||
| 5 | - var $error = null; | ||
| 6 | - var $photo_id = null; | ||
| 7 | - | ||
| 8 | - | ||
| 9 | - function Catalogs(&$db,&$tpl,&$error){ | ||
| 10 | - $this->db = &$db; | ||
| 11 | - $this->tpl = &$tpl; | ||
| 12 | - $this->error = &$error; | ||
| 13 | - } | ||
| 14 | - | ||
| 15 | - | ||
| 16 | - function trim(&$data){ | ||
| 17 | - foreach($data as $key=>$value){ | ||
| 18 | - if(is_array($value))$this->trim($value); | ||
| 19 | - else $data[$key] = stripslashes(trim($value)); | ||
| 20 | - } | ||
| 21 | - } | ||
| 22 | - | ||
| 23 | - | ||
| 24 | - function valid($data,$upload = null){ | ||
| 25 | - | ||
| 26 | - if(isset($data['name'])){ | ||
| 27 | - if( !preg_match("/.{1,100}/i",$data['name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Íàçâàíèÿ."; | ||
| 28 | - } | ||
| 29 | - | ||
| 30 | - if(isset($data['about_min'])){ | ||
| 31 | - if( !preg_match("/.+/is",$data['about_min']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Êðàòêîå îïèñàíèå."; | ||
| 32 | - } | ||
| 33 | - /* | ||
| 34 | - if(isset($data['text'])){ | ||
| 35 | - if( !preg_match("/.+/is",$data['text']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Ïîëíîå îïèñàíèå."; | ||
| 36 | - } */ | ||
| 37 | -/* | ||
| 38 | - if(isset($data['cine'])){ | ||
| 39 | - if( !preg_match("/[0-9]+/",$data['cine']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Öåíà, òîëüêî öèôðû."; | ||
| 40 | - } */ | ||
| 41 | - | ||
| 42 | - if(isset($upload['pic']['name']) && $upload['pic']['tmp_name']){ | ||
| 43 | - $type = substr(strrchr($upload['pic']['name'],"."),1); | ||
| 44 | - if( !preg_match("/^(jpeg|jpg|gif|png|bmp)$/i",$type) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èçîáðàæåíèÿ, òîëüêî jpg,png,gif."; | ||
| 45 | - } | ||
| 46 | - | ||
| 47 | - if(isset($upload['file']['name'])){ | ||
| 48 | - if( !preg_match("/\.csv$/i",$upload['file']['name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ CSV ôàéë, òîëüêî csv."; | ||
| 49 | - } | ||
| 50 | - | ||
| 51 | - | ||
| 52 | - if(isset($data['order_name'])){ | ||
| 53 | - if( !preg_match("/.{1,100}/i",$data['order_name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èìÿ (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 54 | - } | ||
| 55 | - | ||
| 56 | - if(isset($data['order_adress'])){ | ||
| 57 | - if( !preg_match("/.{1,200}/i",$data['order_adress']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Àäðåñ (Ìàêñèìóì 200 ñèìâîëîâ)."; | ||
| 58 | - } | ||
| 59 | - | ||
| 60 | - if(isset($data['order_phone'])){ | ||
| 61 | - if( !preg_match("/.{1,70}/i",$data['order_phone']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Òåëåôîí (Ìàêñèìóì 70 ñèìâîëîâ)."; | ||
| 62 | - } | ||
| 63 | - | ||
| 64 | - if(isset($data['user_name'])){ | ||
| 65 | - if( !preg_match("/.{1,100}/i",$data['user_name']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Èìÿ (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 66 | - } | ||
| 67 | - | ||
| 68 | - if(isset($data['user_email'])){ | ||
| 69 | - if( !preg_match("/.{1,80}/i",$data['user_email']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø e-mail (Ìàêñèìóì 80 ñèìâîëîâ)."; | ||
| 70 | - } | ||
| 71 | - | ||
| 72 | - if(isset($data['user_login'])){ | ||
| 73 | - if( !preg_match("/.{1,100}/i",$data['user_login']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø ëîãèí (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 74 | - elseif( $this->isLoginUser($data['user_login']) ) $this->error[] = "Îøèáêà òàêîé Ëîãèí óæå åñòü!"; | ||
| 75 | - } | ||
| 76 | - | ||
| 77 | - if(isset($data['you_login'])){ | ||
| 78 | - if( !$this->isLoginUser($data['you_login']) ) $this->error[] = "Òàêîãî ËÎÃÈÍÀ íåò â áàçå äàííûõ ñàéòà!"; | ||
| 79 | - } | ||
| 80 | - | ||
| 81 | - if(isset($data['user_psw'])){ | ||
| 82 | - if( !preg_match("/.{1,100}/i",$data['user_psw']) ) $this->error[] = "Îøèáêà ââîäà ïîëÿ Âàø ïàðîëü (Ìàêñèìóì 100 ñèìâîëîâ)."; | ||
| 83 | - } | ||
| 84 | - | ||
| 85 | - return ( count($this->error) ) ? true : false; | ||
| 86 | - } | ||
| 87 | - | ||
| 88 | - function deleteRubric($id,$field="id"){ | ||
| 89 | - $sql = "select pic,id,parent_id from catalogs_rubrics where $field=?"; | ||
| 90 | - $res = $this->db->getAll($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 91 | - foreach($res as $row){ | ||
| 92 | - @unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/rubrics/{$row['pic']}"); | ||
| 93 | - $sql = "delete from catalogs_rubrics where id=?"; | ||
| 94 | - $this->db->query($sql,array($row['id'])); | ||
| 95 | - $this->deleteFiltersRubric_id($row['id']); | ||
| 96 | - $this->deleteYearsRubric_id($row['id']); | ||
| 97 | - $this->deleteProductsRubric($row['id']); | ||
| 98 | - $this->deleteRubric($row['id'],"parent_id"); | ||
| 99 | - } | ||
| 100 | - } | ||
| 101 | - | ||
| 102 | - function deleteProductPics($id,$pics = array('pic_big','pic')){ | ||
| 103 | - $sql = "select pic_big,pic from catalogs_products where id=?"; | ||
| 104 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 105 | - // if(in_array('pic_big',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/products/big/{$row['pic_big']}"); | ||
| 106 | - if(in_array('pic',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/products/{$row['pic']}"); | ||
| 107 | - } | ||
| 108 | - | ||
| 109 | - function deleteProduct($id){ | ||
| 110 | - $this->deleteProductPics($id); | ||
| 111 | - $sql = "delete from catalogs_products where id=?"; | ||
| 112 | - $this->db->query($sql,array($id)); | ||
| 113 | - $this->delete_keysProductsFilters($id); | ||
| 114 | - $this->delete_keysProductsAkcii($id); | ||
| 115 | - $this->delete_keysProductsYears($id); | ||
| 116 | - $this->delete_keysProductsCities($id); | ||
| 117 | - $this->deleteProductModifications($id); | ||
| 118 | - } | ||
| 119 | - | ||
| 120 | - function deleteProductsRubric($id){ | ||
| 121 | - $res = $this->db->getAll("select id from catalogs_products where rubric_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 122 | - foreach($res as $row){ | ||
| 123 | - $this->deleteProduct($row['id']); | ||
| 124 | - } | ||
| 125 | - } | ||
| 126 | - | ||
| 127 | - | ||
| 128 | - function PhotosCheck($id_s,$check_s = array()){ | ||
| 129 | - $sql = "UPDATE gallery SET active = ? WHERE id =?"; | ||
| 130 | - | ||
| 131 | - foreach($id_s as $id){ | ||
| 132 | - $this->db->query($sql,array(0,$id)); | ||
| 133 | - } | ||
| 134 | - if(count($check_s)){ | ||
| 135 | - foreach($check_s as $id){ | ||
| 136 | - $this->db->query($sql,array(1,$id)); | ||
| 137 | - } | ||
| 138 | - } | ||
| 139 | - } | ||
| 140 | - | ||
| 141 | - function viewRubrics($id = 0,$parent_id = 0){ // print $parent_id."<br />"; | ||
| 142 | - global $rubrics; | ||
| 143 | - $sql = "select a.*,(select b.id from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid from catalogs_rubrics a where a.parent_id=? group by a.id order by a.sort asc"; | ||
| 144 | - $res = $this->db->query($sql,array($id)); | ||
| 145 | - while ($res->fetchInto($row,DB_FETCHMODE_ASSOC)){ | ||
| 146 | - $rubrics[] = $row; //print $row['id']."<br />"; | ||
| 147 | - | ||
| 148 | - if(in_array($row['id'],$this->getParentIdRubric($parent_id))){$this->viewRubrics($row['id']);} | ||
| 149 | - // if($row['level']==0){$this->viewRubrics($row['id']);} | ||
| 150 | - } | ||
| 151 | - $this->tpl->assign("rubrics",$rubrics); | ||
| 152 | - } | ||
| 153 | - | ||
| 154 | - function getParentIdRubric($id){ | ||
| 155 | - //$ids = array(); | ||
| 156 | - global $ids; | ||
| 157 | - if(!count($ids))$ids = array(); | ||
| 158 | - while($id>0){ | ||
| 159 | - $row = $this->db->getRow('select id,parent_id from catalogs_rubrics where id=?',array($id),DB_FETCHMODE_ASSOC); | ||
| 160 | - //if(isset($row['id'])) | ||
| 161 | - $ids[] = $row['id']; | ||
| 162 | - $id = $row['parent_id']; | ||
| 163 | - } //print_r($ids); | ||
| 164 | - // sort($ids); | ||
| 165 | - return $ids; | ||
| 166 | - } | ||
| 167 | - | ||
| 168 | - function viewRubricsAll($id = 0){ | ||
| 169 | - global $rubrics; | ||
| 170 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 171 | - $res = $this->db->query($sql,array($id)); | ||
| 172 | - while ($res->fetchInto($row,DB_FETCHMODE_ASSOC)){ | ||
| 173 | - $rubrics[] = $row; | ||
| 174 | - $this->viewRubricsAll($row['id']); | ||
| 175 | - } | ||
| 176 | - $this->tpl->assign("rubrics",$rubrics); | ||
| 177 | - } | ||
| 178 | - | ||
| 179 | - | ||
| 180 | - function viewRubrics_begin($item = 'parents'){ | ||
| 181 | - $sql = "select a.*,(select b.id from catalogs_rubrics b where b.parent_id=a.id order by b.sort limit 1) as r_pid from catalogs_rubrics a where a.parent_id=? order by a.sort asc"; | ||
| 182 | - $row = $this->db->getAll($sql,array(0),DB_FETCHMODE_ASSOC); | ||
| 183 | - foreach($row as $key=>$value){ | ||
| 184 | - if($item=='parents'){ | ||
| 185 | - $row[$key]['parents'] = $this->db->getAll("select * from catalogs_rubrics where parent_id=? order by sort asc",array($value['id']),DB_FETCHMODE_ASSOC); | ||
| 186 | - }elseif($item=='brends'){ | ||
| 187 | - $row[$key]['brends'] = $this->db->getAll("select * from catalogs_brends where rubric_id in (select id from catalogs_rubrics where parent_id=? or id=?) group by name",array($value['id'],$value['id']),DB_FETCHMODE_ASSOC); | ||
| 188 | - } | ||
| 189 | - } | ||
| 190 | - $this->tpl->assign("catalogs_rubrics_begin",$row); | ||
| 191 | - } | ||
| 192 | - | ||
| 193 | - function viewRubrics_parent($parent_id = 0){ | ||
| 194 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 195 | - $row = $this->db->getAll($sql,array($parent_id),DB_FETCHMODE_ASSOC); | ||
| 196 | - $this->tpl->assign("catalogs_rubrics_parent",$row); | ||
| 197 | - } | ||
| 198 | - | ||
| 199 | - function viewRubrics_parent2($rub_id){ | ||
| 200 | - $parent_id = $this->getRubricParent($rub_id); | ||
| 201 | - if($parent_id==0)$parent_id = $rub_id; | ||
| 202 | - $sql = "select * from catalogs_rubrics where parent_id=? order by sort asc"; | ||
| 203 | - $row = $this->db->getAll($sql,array($parent_id),DB_FETCHMODE_ASSOC); | ||
| 204 | - $this->tpl->assign("catalogs_rubrics_parent2",$row); | ||
| 205 | - } | ||
| 206 | - | ||
| 207 | - function viewRubricOne($id,&$row){ | ||
| 208 | - $sql = "select * from catalogs_rubrics where id=?"; | ||
| 209 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 210 | - $this->tpl->assign('rubric',$row); | ||
| 211 | - } | ||
| 212 | - | ||
| 213 | - function getRubricName($id){ | ||
| 214 | - $sql = "select name from catalogs_rubrics where id=?"; | ||
| 215 | - return $this->db->getOne($sql,array($id)); | ||
| 216 | - } | ||
| 217 | - | ||
| 218 | - function getRubricParent($id){ | ||
| 219 | - $sql = "select parent_id from catalogs_rubrics where id=?"; | ||
| 220 | - return $this->db->getOne($sql,array($id)); | ||
| 221 | - } | ||
| 222 | - | ||
| 223 | - function SaveRubric($data,$upload){ | ||
| 224 | - $table_name = "catalogs_rubrics"; | ||
| 225 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 226 | - $parent_id = (isset($data['parent_id']) ? $data['parent_id'] : 0); | ||
| 227 | - $fields_values = array('parent_id' => $parent_id,"level"=>($this->getLevelRubric($parent_id)+1),'sort' => $data['sort'],'name' => $data['name'],'list_name' => $data['list_name'],'sort_cost' => $data['sort_cost'],'meta_title' => $data['meta_title'],'meta_description' => $data['meta_description'],'meta_keywords' => $data['meta_keywords'],'meta_about' => $data['meta_about']); | ||
| 228 | - /* | ||
| 229 | - if($upload['pic']['tmp_name']){ | ||
| 230 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"180",'height'=>"180",'upload_path'=>"./uploaded/pic/catalogs/rubrics/")); | ||
| 231 | - } */ | ||
| 232 | - | ||
| 233 | - if($upload['pic']['tmp_name']){ | ||
| 234 | - if($data['update_id']>0)$this->deletePicRubric($data['update_id']); | ||
| 235 | - $uploadfile = "./uploaded/pic/catalogs/rubrics/"; | ||
| 236 | - $type = substr(strrchr($upload['pic']['name'],"."),1); | ||
| 237 | - $uploadname = mktime() . "." . $type; | ||
| 238 | - if (!move_uploaded_file($_FILES['pic']['tmp_name'], $uploadfile . $uploadname))print"Îøèáêà ïðè çàêà÷êå ôàéëà!"; | ||
| 239 | - $fields_values['pic'] = $uploadname; | ||
| 240 | - } | ||
| 241 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 242 | - } | ||
| 243 | - | ||
| 244 | - function deletePicRubric($id){ | ||
| 245 | - $sql = "select pic from catalogs_rubrics where id=?"; | ||
| 246 | - $rub = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 247 | - @unlink("./uploaded/pic/catalogs/rubrics/{$rub['pic']}"); | ||
| 248 | - } | ||
| 249 | - | ||
| 250 | - function getLevelRubric($id){ | ||
| 251 | - $level = $this->db->getOne("select level from catalogs_rubrics where id=?",array($id)); | ||
| 252 | - return ($level==null)? -1 : $level; | ||
| 253 | - } | ||
| 254 | - | ||
| 255 | - function saveUser($data){ | ||
| 256 | - $table_name = "catalogs_users"; | ||
| 257 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 258 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'login' => $data['user_login'],'psw' => $data['user_psw'],'about' => $data['user_about'],'mktime'=>mktime()); | ||
| 259 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 260 | - } | ||
| 261 | - | ||
| 262 | - function updateUser($data){ | ||
| 263 | - $table_name = "catalogs_users"; | ||
| 264 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 265 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'login' => $data['user_login'],'psw' => $data['user_psw'],'about' => $data['user_about'],'discount'=>$data['user_discount']); | ||
| 266 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 267 | - } | ||
| 268 | - | ||
| 269 | - function updateUserID($data,$id){ | ||
| 270 | - $table_name = "catalogs_users"; | ||
| 271 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 272 | - $fields_values = array('name' => $data['user_name'],'email' => $data['user_email'],'psw' => $data['user_psw'],'about' => $data['user_about'],'phone' => $data['user_phone'],'phonemob' => $data['user_phonemob'],'adress' => $data['user_adress']); | ||
| 273 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$id}"); | ||
| 274 | - } | ||
| 275 | - | ||
| 276 | - function deleteUser($id){ | ||
| 277 | - $this->db->query("delete from catalogs_users where id=?",array($id)); | ||
| 278 | - $res_order_id = $this->db->getRow("select id from catalogs_orders where user_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 279 | - if(count($res_order_id)){ | ||
| 280 | - foreach($res_order_id as $_id){ | ||
| 281 | - $this->db->query("delete from catalogs_orders where id=?",array($_id)); | ||
| 282 | - $this->db->query("delete from catalogs_orders_products where order_id=?",array($_id)); | ||
| 283 | - }} | ||
| 284 | - } | ||
| 285 | - | ||
| 286 | - function isLoginUser($login){ | ||
| 287 | - return $this->db->getOne("select id from catalogs_users where login=?",array($login)); | ||
| 288 | - } | ||
| 289 | - | ||
| 290 | - function sendLoginInfo($login){ | ||
| 291 | - $user = $this->db->getRow("select * from catalogs_users where login=?",array($login),DB_FETCHMODE_ASSOC); | ||
| 292 | - $mail = new PHPMailer(); | ||
| 293 | - $mail->CharSet = "windows-1251"; | ||
| 294 | - $mail->From = "shop@eltrade.com.ua"; | ||
| 295 | - $mail->FromName = "shop@eltrade.com.ua"; | ||
| 296 | - $mail->AddAddress($user['email'], $user['name']); | ||
| 297 | - $mail->Subject = "Àêêàóíò ýêñòðèì"; | ||
| 298 | - $msg = ""; | ||
| 299 | - $msg .= "Çäðàâñòâóéòå: ".$user['name']; | ||
| 300 | - $msg .= "<br />"; | ||
| 301 | - $msg .= "Âàø ëîãèí: ".$user['login']; | ||
| 302 | - $msg .= "<br>"; | ||
| 303 | - $msg .= "Âàø ïàðîëü: ".$user['psw']; | ||
| 304 | - $msg .= "<br>"; | ||
| 305 | - $msg .= "Ñ óâàæåíèåì, shop@eltrade.com.ua"; | ||
| 306 | - | ||
| 307 | - $mail->MsgHTML($msg); | ||
| 308 | - | ||
| 309 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 310 | - $mail->ClearAddresses(); | ||
| 311 | - $mail->ClearAttachments(); | ||
| 312 | - } | ||
| 313 | - | ||
| 314 | - function isUser($login,$psw){ | ||
| 315 | - $row = $this->db->getRow("select * from catalogs_users where login=? AND psw=?",array($login,$psw),DB_FETCHMODE_ASSOC); | ||
| 316 | - $this->tpl->assign('user_service',$row); | ||
| 317 | - return $row['id']; | ||
| 318 | - } | ||
| 319 | - | ||
| 320 | - function viewUser($id){ | ||
| 321 | - $sql = "select * from catalogs_users where id=?"; | ||
| 322 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 323 | - $this->tpl->assign('user',$row); | ||
| 324 | - } | ||
| 325 | - | ||
| 326 | - function getUserDiscount($id){ | ||
| 327 | - return $this->db->getOne("select discount from catalogs_users where id=?",array($id)); | ||
| 328 | - } | ||
| 329 | - | ||
| 330 | - function viewUsers(){ | ||
| 331 | - $sql = "SELECT catalogs_users. *, COUNT(catalogs_orders.user_id) as count_orders | ||
| 332 | -FROM catalogs_users LEFT JOIN catalogs_orders ON catalogs_orders.user_id=catalogs_users.id | ||
| 333 | -GROUP BY catalogs_users.id | ||
| 334 | -ORDER BY catalogs_users.mktime DESC"; | ||
| 335 | - | ||
| 336 | - $pagerOptions = Array( | ||
| 337 | - 'mode' => 'Sliding', | ||
| 338 | - 'delta' => 6, | ||
| 339 | - 'perPage' => 10, | ||
| 340 | - 'linkClass'=>"link_class", | ||
| 341 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 342 | - 'spacesBeforeSeparator' => 1, | ||
| 343 | - 'spacesAfterSeparator' => 1 | ||
| 344 | - ); | ||
| 345 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 346 | - | ||
| 347 | - $this->tpl->assign('usersData', $res); | ||
| 348 | - } | ||
| 349 | - | ||
| 350 | - function viewModifications($product_id){ | ||
| 351 | - $sql = "select * from catalogs_modifications where product_id=? order by id desc"; | ||
| 352 | - $row = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 353 | - $this->tpl->assign('modifications', $row); | ||
| 354 | - } | ||
| 355 | - | ||
| 356 | - function viewModificationsProduct($product_id){ | ||
| 357 | - $sql = "select * from catalogs_modifications where product_id=? and active>0 order by id desc"; | ||
| 358 | - // $sql = "select m.* from catalogs_keys_products_cities k left join catalogs_modifications m on m.code=k.mod_code where k.product_id=? and k.count>0 order by k.mod_code desc"; | ||
| 359 | - $row = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 360 | - $this->tpl->assign('modifications', $row); | ||
| 361 | - } | ||
| 362 | - | ||
| 363 | - function viewModificationOne($id){ | ||
| 364 | - $sql = "select * from catalogs_modifications where id=?"; | ||
| 365 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 366 | - $this->tpl->assign('modification', $row); | ||
| 367 | - } | ||
| 368 | - | ||
| 369 | - function getModificationProduct_id($code){ | ||
| 370 | - return $this->db->getOne("select product_id from catalogs_modifications where code=?",array($code)); | ||
| 371 | - } | ||
| 372 | - | ||
| 373 | - function SaveModification($data,$upload){ | ||
| 374 | - $table_name = "catalogs_modifications"; | ||
| 375 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 376 | - $fields_values = array('product_id'=>$data['product_id'],'code'=>$data['code'],'size' => $data['size'],'color' => $data['color'],'active' => $data['active']); | ||
| 377 | - if(isset($data['delete_pic'])){if($data['update_id']>0){$this->deleteModificationPics($data['update_id']);}$fields_values['pic']=null;$fields_values['pic_big']=null;} | ||
| 378 | - if($upload['pic']['tmp_name']){ | ||
| 379 | - if($data['update_id']>0){ | ||
| 380 | - $delete_pics = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?array('pic'):array('pic','pic_big'); | ||
| 381 | - $this->deleteModificationPics($data['update_id'],$delete_pics); | ||
| 382 | - } | ||
| 383 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"144",'height'=>"144",'upload_path'=>"./uploaded/pic/catalogs/modifications/")); | ||
| 384 | - $fields_values['pic_big'] = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?$upload['pic']['name']:upload_ImageResize($upload['pic'],array('width'=>"500",'height'=>"500",'upload_path'=>"./uploaded/pic/catalogs/modifications/big/")); | ||
| 385 | - } | ||
| 386 | - | ||
| 387 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id='{$data['update_id']}'"); | ||
| 388 | - return $id; | ||
| 389 | - } | ||
| 390 | - | ||
| 391 | - function deleteModification($id){ | ||
| 392 | - $this->deleteModificationPics($id); | ||
| 393 | - $this->db->query("delete from catalogs_modifications where id=?",array($id)); | ||
| 394 | - } | ||
| 395 | - | ||
| 396 | - function deleteProductModifications($product_id,$nopic = false){ | ||
| 397 | - IF($nopic==false){ | ||
| 398 | - $sql = "select * from catalogs_modifications where product_id=?"; | ||
| 399 | - $res = $this->db->getAll($sql,array($product_id),DB_FETCHMODE_ASSOC); | ||
| 400 | - foreach($res as $row){ | ||
| 401 | - $this->deleteModificationPics($row['id']); | ||
| 402 | - } | ||
| 403 | - } | ||
| 404 | - $this->db->query("delete from catalogs_modifications where product_id=?",array($product_id)); | ||
| 405 | - } | ||
| 406 | - | ||
| 407 | - function deleteModificationPics($id,$pics = array('pic_big','pic')){ | ||
| 408 | - $sql = "select pic,pic_big from catalogs_modifications where id=?"; | ||
| 409 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 410 | - if(in_array('pic',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/modifications/{$row['pic']}"); | ||
| 411 | - // if(in_array('pic_big',$pics))@unlink("{$_SERVER['DOCUMENT_ROOT']}/uploaded/pic/catalogs/modifications/big/{$row['pic_big']}"); | ||
| 412 | - } | ||
| 413 | - | ||
| 414 | - function ProductClick($id){ | ||
| 415 | - $this->db->query("update catalogs_products set click=click+1 where id='$id'"); | ||
| 416 | - } | ||
| 417 | - | ||
| 418 | - function SaveProduct($data,$upload){ | ||
| 419 | - $table_name = "catalogs_products"; | ||
| 420 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 421 | - $id = ($data['update_id']>0) ? $data['update_id'] : $this->db->nextId('mySequence_'.$table_name); | ||
| 422 | - $fields_values = array('id'=>$id,'rubric_id'=>$data['rubric_id'],'rubric_parent_id'=>$this->getRubricParent($data['rubric_id']),'brend_id'=>$data['brend_id'],'name' => $data['name'],'about' => $data['about'],'text' => $data['text'],'strnumber' => $data['strnumber'],'cine'=>$data['cine'],'cine_last'=>$data['cine_last'],'sex'=>$data['sex'], 'mktime' => mktime(),'meta_title' => $data['meta_title'],'meta_description' => $data['meta_description'],'meta_keywords' => $data['meta_keywords'],'meta_about' => $data['meta_about'],'active' => $data['active']); | ||
| 423 | - if($upload['pic']['tmp_name']){ | ||
| 424 | - $delete_pics = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?array('pic'):array('pic','pic_big'); | ||
| 425 | - $this->deleteProductPics($id,$delete_pics); | ||
| 426 | - $fields_values['pic'] = upload_ImageResize($upload['pic'],array('width'=>"144",'height'=>"144",'upload_path'=>"./uploaded/pic/catalogs/products/")); | ||
| 427 | - $fields_values['pic_big'] = (isset($upload['pic']['big']) && $upload['pic']['big']==true)?$upload['pic']['name']:upload_ImageResize($upload['pic'],array('width'=>"500",'height'=>"500",'upload_path'=>"./uploaded/pic/catalogs/products/big/")); | ||
| 428 | - } | ||
| 429 | - | ||
| 430 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id='$id'"); | ||
| 431 | - $this->save_keysProductsFilters($id,$data); | ||
| 432 | - $this->save_keysProductsYears($id,$data); | ||
| 433 | - $this->save_keysProductsCities($id,$data); | ||
| 434 | - $this->save_keysProductsAkcii($id,$data); | ||
| 435 | - return $id; | ||
| 436 | - } | ||
| 437 | - | ||
| 438 | - function save_keysProductsFilters($id,$data){ | ||
| 439 | - $this->delete_keysProductsFilters($id); | ||
| 440 | - if(!isset($data['filter']))return false; | ||
| 441 | - $table_name = "catalogs_keys_products_filters"; | ||
| 442 | - foreach($data['filter'] as $filter_id){ | ||
| 443 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'filter_id'=>$filter_id,'rubric_id'=>$data['rubric_id']),DB_AUTOQUERY_INSERT); | ||
| 444 | - } | ||
| 445 | - } | ||
| 446 | - | ||
| 447 | - function delete_keysProductsFilters($id){ | ||
| 448 | - $this->db->query("delete from catalogs_keys_products_filters where product_id=?",array($id)); | ||
| 449 | - } | ||
| 450 | - | ||
| 451 | - function save_keysProductsYears($id,$data){ | ||
| 452 | - $this->delete_keysProductsYears($id); | ||
| 453 | - if(!isset($data['years']))return false; | ||
| 454 | - $table_name = "catalogs_keys_products_years"; | ||
| 455 | - foreach($data['years'] as $filter_id){ | ||
| 456 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'year_id'=>$filter_id,'rubric_id'=>$data['rubric_id']),DB_AUTOQUERY_INSERT); | ||
| 457 | - } | ||
| 458 | - } | ||
| 459 | - | ||
| 460 | - function delete_keysProductsYears($id){ | ||
| 461 | - $this->db->query("delete from catalogs_keys_products_years where product_id=?",array($id)); | ||
| 462 | - } | ||
| 463 | - | ||
| 464 | - function save_keysProductsCities($id,$data){ | ||
| 465 | - $this->delete_keysProductsCities($id); | ||
| 466 | - if(!isset($data['city']))return false; | ||
| 467 | - $table_name = "catalogs_keys_products_cities"; | ||
| 468 | - foreach($data['city'] as $city_id){ | ||
| 469 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'city_id'=>$city_id),DB_AUTOQUERY_INSERT); | ||
| 470 | - } | ||
| 471 | - } | ||
| 472 | - | ||
| 473 | - function delete_keysProductsAkcii($id){ | ||
| 474 | - $this->db->query("delete from catalogs_keys_products_akcii where product_id=?",array($id)); | ||
| 475 | - } | ||
| 476 | - | ||
| 477 | - function save_keysProductsAkcii($id,$data){ | ||
| 478 | - $this->delete_keysProductsAkcii($id); | ||
| 479 | - if(!isset($data['akcii']))return false; | ||
| 480 | - $table_name = "catalogs_keys_products_akcii"; | ||
| 481 | - foreach($data['akcii'] as $rubric_id){ | ||
| 482 | - $this->db->autoExecute($table_name,array('product_id'=>$id,'rubric_id'=>$rubric_id),DB_AUTOQUERY_INSERT); | ||
| 483 | - } | ||
| 484 | - } | ||
| 485 | - | ||
| 486 | - function delete_keysProductsCities($id){ | ||
| 487 | - $this->db->query("delete from catalogs_keys_products_cities where product_id=?",array($id)); | ||
| 488 | - } | ||
| 489 | - | ||
| 490 | - | ||
| 491 | - function saveProductSizeCine($id,$data){ | ||
| 492 | - $this->db->query("delete from catalogs_products_cine where product_id=?",array($id)); | ||
| 493 | - foreach($data['size'] as $key=>$size){ | ||
| 494 | - $this->db->autoExecute("catalogs_products_cine",array('product_id'=>$id,'size'=>$size,'cine'=>$data['cine'][$key],'metka'=>$data['size_metka'][$key],'n'=>$key),DB_AUTOQUERY_INSERT); | ||
| 495 | - } | ||
| 496 | - } | ||
| 497 | - | ||
| 498 | - | ||
| 499 | - function productsIsHits($products,$hits,$tops,$headers){ | ||
| 500 | - $sql = "update catalogs_products set hit=?,top=?,header=? where id=?"; | ||
| 501 | - foreach($products as $id){ | ||
| 502 | - if(@in_array($id,$hits))$hit = true; | ||
| 503 | - else $hit = false; | ||
| 504 | - if(@in_array($id,$tops))$top = true; | ||
| 505 | - else $top = false; | ||
| 506 | - if(@in_array($id,$headers))$header = true; | ||
| 507 | - else $header = false; | ||
| 508 | - $this->db->query($sql,array($hit,$top,$header, $id)); | ||
| 509 | - } | ||
| 510 | - } | ||
| 511 | - | ||
| 512 | - function productsIsHits2($data,$hits){ | ||
| 513 | - $sql = "update catalogs_products set hit=?,hit_sort=? where id=?"; | ||
| 514 | - foreach($data['product_id'] as $key=>$id){ | ||
| 515 | - if(@in_array($id,$hits))$hit = true; | ||
| 516 | - else $hit = false; | ||
| 517 | - $this->db->query($sql,array($hit,$data['hit_sort'][$key],$id)); | ||
| 518 | - } | ||
| 519 | - } | ||
| 520 | - | ||
| 521 | - function viewProducts($params,$rubricsP = false,$count_modf = true){ | ||
| 522 | - $search = array(); | ||
| 523 | - if(isset($_GET['perPage']) && $_GET['perPage']>0 && $_GET['perPage']<=100)$perPage = $_GET['perPage'];else $perPage = 20; | ||
| 524 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){ | ||
| 525 | - $array_string = explode(" ",trim($params['search_str'])); | ||
| 526 | - $search_string = array(); | ||
| 527 | - $search_string[] = "catalogs_products.name like '%{$params['search_str']}%'"; | ||
| 528 | - foreach($array_string as $str){ | ||
| 529 | - $search_string[] = "catalogs_products.name like '$str'"; | ||
| 530 | - $search_string[] = "catalogs_products.name like'% $str %'"; | ||
| 531 | - $search_string[] = "catalogs_products.name like'%$str %'"; | ||
| 532 | - $search_string[] = "catalogs_products.name like'% $str%'"; | ||
| 533 | - } | ||
| 534 | - $search[] = "((" . implode(" OR ",$search_string) . ") OR ". sprintf("catalogs_modifications.code='%s'", $params['search_str']).")"; | ||
| 535 | - } | ||
| 536 | - // print_r($params); | ||
| 537 | - if(isset($params['brendID']) && $params['brendID']>0)$search[] = sprintf("catalogs_products.brend_id='%d'",$params['brendID']); | ||
| 538 | - if(isset($params['brend']) && strlen($params['brend'])>0)$search[] = "catalogs_products.brend_id in(".implode(",",$this->getBrendIDs_name($params['brend'])).")"; | ||
| 539 | - if(isset($params['sex']) && $params['sex']>0)$search[] = sprintf("catalogs_products.sex='%d'",$params['sex']); | ||
| 540 | - //if(isset($params['akcii']) && $params['akcii']>0)$search[] = sprintf("catalogs_products.hit='%d'",$params['akcii']); | ||
| 541 | - if($count_modf==true)$search[] = "catalogs_products.count_modifications>0"; | ||
| 542 | - if(isset($params['rubID']) && $params['rubID']>0){ | ||
| 543 | - $search[] = ($rubricsP==true)?sprintf("(catalogs_products.rubric_id='%d')",$params['rubID']):sprintf("(catalogs_products.rubric_parent_id='%d' || catalogs_products.rubric_id='%d')",$params['rubID'],$params['rubID']); | ||
| 544 | - } | ||
| 545 | - if(isset($params['filterID'])){ | ||
| 546 | - //$search[] = sprintf("catalogs_keys_products_filters.filter_id='%d'", $params['filterID']); | ||
| 547 | - $search[] = "catalogs_keys_products_filters.filter_id in (".implode(",",$params['filterID']).")"; | ||
| 548 | - } | ||
| 549 | - if(isset($params['yearID']) && $params['yearID']>0){ | ||
| 550 | - //$search[] = sprintf("catalogs_keys_products_years.year_id='%d'", $params['yearID']); | ||
| 551 | - $search[] = "catalogs_keys_products_years.year_id in (".implode(",",$params['yearID']).")"; | ||
| 552 | - } | ||
| 553 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id "; | ||
| 554 | - if(isset($params['akcii']) && $params['akcii']>0)$sql .= "RIGHT JOIN catalogs_keys_products_akcii ON catalogs_keys_products_akcii.product_id=catalogs_products.id "; | ||
| 555 | - if(isset($params['filterID']) && $params['filterID']>0)$sql .= "LEFT JOIN catalogs_keys_products_filters ON catalogs_keys_products_filters.product_id=catalogs_products.id "; | ||
| 556 | - if(isset($params['yearID']) && $params['yearID']>0)$sql .= "LEFT JOIN catalogs_keys_products_years ON catalogs_keys_products_years.product_id=catalogs_products.id "; | ||
| 557 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){$sql .= "LEFT JOIN catalogs_modifications ON catalogs_modifications.product_id=catalogs_products.id ";} | ||
| 558 | - $sql .= "WHERE 1=1 "; | ||
| 559 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 560 | - if(isset($params['akcii']) && $params['akcii']>0){$sql .= " GROUP BY catalogs_keys_products_akcii.product_id ";} | ||
| 561 | - if(isset($params['search_str']) && strlen($params['search_str'])>0){$sql .= " GROUP BY catalogs_products.id ";} | ||
| 562 | - $sql .= "order by "; | ||
| 563 | - if(isset($_GET['sort'])){ | ||
| 564 | - switch($_GET['sort']){ | ||
| 565 | - case 'cine' : $sql .= " catalogs_products.cine " . (($_GET['order']=='asc')?"asc":"desc"); break; | ||
| 566 | - case 'click' : $sql .= " catalogs_products.click " . (($_GET['order']=='asc')?"asc":"desc"); break; | ||
| 567 | - case 'hit' : $sql .= " catalogs_products.hit_sort asc"; break; | ||
| 568 | - default : $sql .= " catalogs_products.mktime desc"; | ||
| 569 | - } | ||
| 570 | - }else $sql .= " catalogs_products.cine desc"; | ||
| 571 | - // print $sql; | ||
| 572 | - $pagerOptions = Array( | ||
| 573 | - 'mode' => 'Sliding', | ||
| 574 | - 'delta' => 6, | ||
| 575 | - 'perPage' => $perPage, | ||
| 576 | - 'linkClass'=>"link_class", | ||
| 577 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 578 | - 'spacesBeforeSeparator' => 1, | ||
| 579 | - 'spacesAfterSeparator' => 1 | ||
| 580 | - ); | ||
| 581 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 582 | - | ||
| 583 | - $this->tpl->assign('productsData', $res); | ||
| 584 | - } | ||
| 585 | - | ||
| 586 | - function getCineCurs($type_curs,$cine){ | ||
| 587 | - $curs = array(); | ||
| 588 | - | ||
| 589 | - $uah = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah')); | ||
| 590 | - $uah_bank = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah_bank')); | ||
| 591 | - $usd = $this->db->getOne("select curs from catalogs_curs where type=?",array('usd')); | ||
| 592 | - | ||
| 593 | - switch($type_curs){ | ||
| 594 | - case 'uah' : | ||
| 595 | - $curs['uah'] = round($cine,2); | ||
| 596 | - $curs['uah_bank'] = round(($cine/$usd)*$uah_bank,2); | ||
| 597 | - $curs['usd'] = round($cine/$usd,2); | ||
| 598 | - break; | ||
| 599 | - case 'uah_bank' : | ||
| 600 | - $curs['uah'] = round(($cine/$uah_bank)*$uah,2); | ||
| 601 | - $curs['uah_bank'] = round($cine,2); | ||
| 602 | - $curs['usd'] = round($cine/$uah_bank,2); | ||
| 603 | - break; | ||
| 604 | - case 'usd' : | ||
| 605 | - $curs['uah'] = round($cine*$uah,2); | ||
| 606 | - $curs['uah_bank'] = round($cine*$uah_bank,2); | ||
| 607 | - $curs['usd'] = round($cine,2); | ||
| 608 | - break; | ||
| 609 | - } | ||
| 610 | - return $curs; | ||
| 611 | - } | ||
| 612 | - | ||
| 613 | - function viewProductsAkcii($rubric_id){ | ||
| 614 | - $sql = "select catalogs_products.* from catalogs_keys_products_akcii left join catalogs_products on catalogs_products.id=catalogs_keys_products_akcii.product_id where catalogs_keys_products_akcii.rubric_id=?"; | ||
| 615 | - $res = $this->db->getAll($sql,array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 616 | - //print_r($res); | ||
| 617 | - $this->tpl->assign('products_akcii',$res); | ||
| 618 | - } | ||
| 619 | - | ||
| 620 | - function viewProductsHitsAll2(){ | ||
| 621 | - if(isset($_GET['perPage']) && $_GET['perPage']>0 && $_GET['perPage']<=100)$perPage = $_GET['perPage'];else $perPage = 20; | ||
| 622 | - $sql = "select * from catalogs_products where hit=?"; | ||
| 623 | - $pagerOptions = Array( | ||
| 624 | - 'mode' => 'Sliding', | ||
| 625 | - 'delta' => 6, | ||
| 626 | - 'perPage' => $perPage, | ||
| 627 | - 'linkClass'=>"link_class", | ||
| 628 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 629 | - 'spacesBeforeSeparator' => 1, | ||
| 630 | - 'spacesAfterSeparator' => 1 | ||
| 631 | - ); | ||
| 632 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array(true)); | ||
| 633 | - | ||
| 634 | - $this->tpl->assign('productsData', $res); | ||
| 635 | - } | ||
| 636 | - | ||
| 637 | - function viewProductsHits($params,$limit = 4,$curs = null){ | ||
| 638 | - $search = array(); | ||
| 639 | - if(isset($params['rubID']) && $params['rubID']>0)$search[] = sprintf("rubric_parent_id=%d",$params['rubID']); | ||
| 640 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.hit=? and catalogs_products.count_modifications>0 "; | ||
| 641 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 642 | - $sql .= "order by catalogs_products.mktime desc"; | ||
| 643 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 644 | - $this->tpl->assign('products_hits',$res); | ||
| 645 | - } | ||
| 646 | - | ||
| 647 | - function viewProductsTops($params,$limit = 4,$curs = null){ | ||
| 648 | - $search = array(); | ||
| 649 | - if(isset($params['rubID']) && $params['rubID']>0)$search[] = sprintf("rubric_parent_id=%d",$params['rubID']); | ||
| 650 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.top=? and catalogs_products.count_modifications>0 "; | ||
| 651 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 652 | - $sql .= "order by catalogs_products.mktime desc"; | ||
| 653 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 654 | - $this->tpl->assign('products_top',$res); | ||
| 655 | - } | ||
| 656 | - | ||
| 657 | - function viewProductsTopOne(){ | ||
| 658 | - $count = $this->db->getOne("select count(*) from catalogs_products WHERE catalogs_products.header=?",array(true)); | ||
| 659 | - $limit = 1; $round = rand(0,($count-$limit)); | ||
| 660 | - $res = $this->db->getRow("select * from catalogs_products WHERE catalogs_products.header=? order by id " . ((rand(1,1000)%2) ? "asc" : "desc") . " LIMIT $round,$limit",array(true),DB_FETCHMODE_ASSOC); | ||
| 661 | - $this->tpl->assign('products_top_one',$res); | ||
| 662 | - } | ||
| 663 | - | ||
| 664 | - function viewProductsLast($limit = 1){ | ||
| 665 | - $search = array(); | ||
| 666 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE catalogs_products.active=? "; | ||
| 667 | - $sql .= "order by catalogs_products.mktime desc LIMIT $limit"; | ||
| 668 | - $res = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 669 | - $this->tpl->assign('products_last',$res); | ||
| 670 | - } | ||
| 671 | - | ||
| 672 | - function viewProductsHitsAll($limit = 4){ | ||
| 673 | - $sql = "select catalogs_products.*,catalogs_brends.name as brend_name from catalogs_products LEFT JOIN catalogs_brends ON catalogs_brends.id=catalogs_products.brend_id WHERE hit=? "; | ||
| 674 | - $sql .= "order by mktime desc LIMIT $limit"; | ||
| 675 | - $products_hits = $this->db->getAll($sql,array(true),DB_FETCHMODE_ASSOC); | ||
| 676 | - $this->tpl->assign('products_hits_all',$products_hits); | ||
| 677 | - } | ||
| 678 | - | ||
| 679 | - function viewProductOne($id,&$row){ | ||
| 680 | - $sql = "select p.*,b.text as brend_text from catalogs_products p left join catalogs_brends b ON b.id=p.brend_id where p.id=?"; | ||
| 681 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 682 | - $this->tpl->assign('product',$row); | ||
| 683 | - } | ||
| 684 | - | ||
| 685 | - function viewProductNembers($str_n){ | ||
| 686 | - $arr_id = explode(",",$str_n); | ||
| 687 | - $products = array(); | ||
| 688 | - foreach($arr_id as $id){ | ||
| 689 | - $count = $this->db->getOne("select count(*) from catalogs_keys_products_filters where filter_id=?",array(trim($id))); | ||
| 690 | - $limit = 1; $round = rand(0,($count-$limit)); | ||
| 691 | - $products[] = $this->db->getRow("select catalogs_products.* from catalogs_keys_products_filters Left Join catalogs_products ON catalogs_products.id=catalogs_keys_products_filters.product_id where catalogs_keys_products_filters.filter_id=? order by catalogs_keys_products_filters.product_id " . ((rand(1,1000)%2) ? "asc" : "desc") . " LIMIT $round,$limit",array(trim($id)),DB_FETCHMODE_ASSOC); | ||
| 692 | - } | ||
| 693 | - $this->tpl->assign('products_parent',$products); | ||
| 694 | - } | ||
| 695 | - | ||
| 696 | - function getProductSizeCine($id,&$products){ | ||
| 697 | - $res = $this->db->getAll("select * from catalogs_products_cine where product_id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 698 | - $i = 0; | ||
| 699 | - foreach($res as $row){ | ||
| 700 | - $products['size_' . $row['n']] = $row['size']; | ||
| 701 | - $products['cine_' . $row['n']] = $row['cine']; | ||
| 702 | - $products['metka_' . $row['n']] = $row['metka']; | ||
| 703 | - $products['id_cine_' . $row['n']] = $row['id']; | ||
| 704 | - $i++; | ||
| 705 | - } //print_r($products); | ||
| 706 | - } | ||
| 707 | - /* | ||
| 708 | - function getProductCine($id,$curs = null){ | ||
| 709 | - $sql = "select cine from catalogs_products where id=?"; | ||
| 710 | - $row = $this->db->getOne($sql,array($id)); | ||
| 711 | - return $row; | ||
| 712 | - }*/ | ||
| 713 | - | ||
| 714 | - function getProductCine($id){ | ||
| 715 | - $sql = "select catalogs_products.cine from catalogs_modifications left join catalogs_products on catalogs_products.id=catalogs_modifications.product_id where catalogs_modifications.id=?"; | ||
| 716 | - return $this->db->getOne($sql,array($id)); | ||
| 717 | - } | ||
| 718 | - | ||
| 719 | - function viewProductCine($id){ | ||
| 720 | - $row = $this->db->getAll("select * from catalogs_products_cine where product_id=? and cine>0 Order By n ASC",array($id),DB_FETCHMODE_ASSOC); | ||
| 721 | - $this->tpl->assign('product_cines',$row); | ||
| 722 | - } | ||
| 723 | - | ||
| 724 | - function viewCatalogsCurs(){ | ||
| 725 | - $uah = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah')); | ||
| 726 | - $this->tpl->assign('curs_uah',$uah); | ||
| 727 | - $uah_bank = $this->db->getOne("select curs from catalogs_curs where type=?",array('uah_bank')); | ||
| 728 | - $this->tpl->assign('curs_uah_bank',$uah_bank); | ||
| 729 | - $usd = $this->db->getOne("select curs from catalogs_curs where type=?",array('usd')); | ||
| 730 | - $this->tpl->assign('curs_usd',$usd); | ||
| 731 | - } | ||
| 732 | - | ||
| 733 | - function saveCurs($data){ | ||
| 734 | - $table_name = "catalogs_curs"; | ||
| 735 | - $DB_AUTOQUERY = DB_AUTOQUERY_UPDATE; | ||
| 736 | - foreach($data as $key=>$value){ | ||
| 737 | - $this->db->autoExecute($table_name,array('curs'=>$value),$DB_AUTOQUERY,"type='$key'"); | ||
| 738 | - } | ||
| 739 | - } | ||
| 740 | - | ||
| 741 | - function viewVarCurs($curs){ | ||
| 742 | - $this->tpl->assign('curs',$curs); | ||
| 743 | - } | ||
| 744 | - | ||
| 745 | - function viewBasketProducts($session_basket,$curs = null,$discount = 0){ | ||
| 746 | - $products = array(); $i = 0; $cineAll = 0; | ||
| 747 | -// $sql = "select catalogs_products.* from catalogs_products where catalogs_products.id=?"; | ||
| 748 | - $sql = "select catalogs_modifications.id,catalogs_products.cine,catalogs_products.name,catalogs_modifications.code,catalogs_modifications.size,catalogs_modifications.color,catalogs_modifications.pic,catalogs_modifications.pic_big from catalogs_modifications Left Join catalogs_products On catalogs_products.id=catalogs_modifications.product_id where catalogs_modifications.id=?"; | ||
| 749 | - foreach($session_basket as $id){ | ||
| 750 | - $products_count = 1; | ||
| 751 | - if(count($products)){ | ||
| 752 | - foreach($products as $key=>$value){ | ||
| 753 | - if($value['id']==$id){$products_count=$products[$key]['products_count']+$products_count;$products[$key]['products_count']=$products_count;$products[$key]['products_cine_all']=$products[$key]['cine']*$products_count;$cineAll = $cineAll+$products[$key]['cine'];} | ||
| 754 | - }} | ||
| 755 | - if($products_count==1){ | ||
| 756 | - $row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 757 | - $products[$i] = $row; | ||
| 758 | - $products[$i]['products_count']=$products_count; | ||
| 759 | - $products[$i]['products_cine_all']=$products[$i]['cine']*$products_count; | ||
| 760 | - $cineAll = $cineAll+$products[$i]['products_cine_all']; | ||
| 761 | - $i++; | ||
| 762 | - } | ||
| 763 | - | ||
| 764 | - } | ||
| 765 | - /*print"<pre>"; | ||
| 766 | - print_r($products); | ||
| 767 | - print"</pre>";*/ | ||
| 768 | - $this->tpl->assign('cineAll',$cineAll); | ||
| 769 | - $this->tpl->assign('cineAll_discount',$cineAll - (($cineAll*$discount)/100)); | ||
| 770 | - $this->tpl->assign('basket_products',$products); //print_r($products); | ||
| 771 | - } | ||
| 772 | - | ||
| 773 | - | ||
| 774 | - function BasketUpload(&$session_basket,$proructs_count){ | ||
| 775 | - $session_basket = array(); | ||
| 776 | - foreach($proructs_count as $key=>$value){ | ||
| 777 | - for($i=0;$i<$value;$i++){ | ||
| 778 | - $session_basket[] = $key; | ||
| 779 | - } | ||
| 780 | - } | ||
| 781 | - } | ||
| 782 | - | ||
| 783 | - function sendOrder($data){ | ||
| 784 | - $mail = new PHPMailer(); | ||
| 785 | - $mail->CharSet = "windows-1251"; | ||
| 786 | - $mail->From = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 787 | - $mail->FromName = $data['order_name']; | ||
| 788 | - $mail->AddAddress("extremstyleshop@ukr.net","extremstyleshop"); | ||
| 789 | - $mail->AddAddress("shopextremstyle@gmail.com","shopextremstyle"); | ||
| 790 | - $mail->Subject = "Îôîðìèòü çàêàç ñ ÝêñòðèìÑòèëü"; | ||
| 791 | - $title = Mail::str_rus("Îôîðìèòü çàêàç"); | ||
| 792 | - $msg = ""; | ||
| 793 | - foreach($data['product_id'] as $key=>$value){ | ||
| 794 | - $msg .= "ID: ".$value." "; | ||
| 795 | - $msg .= "Íàçâàíèå: <b>".$data['product_name'][$key]."</b> "; | ||
| 796 | - $msg .= "Öåíà çà îäèí: ".$data['product_cine'][$key]." "; | ||
| 797 | - $msg .= "Êîëè÷åñòâî: ".$data['product_count'][$key]." "; | ||
| 798 | - $msg .= "Çà âåñü òîâàð: ".$data['product_cine_all'][$key]." "; | ||
| 799 | - $msg .= "<br>"; | ||
| 800 | - } | ||
| 801 | - $msg .= "Îáùàÿ ñóìà: ".$data['cineAll']; | ||
| 802 | - $msg .= "<br>"; | ||
| 803 | - /* $msg .= "Ñêèäêà: ".$data['discount']." %"; | ||
| 804 | - $msg .= "<br>"; */ | ||
| 805 | - $msg .= "Èòîãî ê îïëàòå: ".$data['cineAll_discount']; | ||
| 806 | - $msg .= "<br><br><br>"; | ||
| 807 | - $msg .= "Êîíòàêòíûå äàííûå:"; | ||
| 808 | - $msg .= "<br>"; | ||
| 809 | - $msg .= "Èìÿ: ".$data['order_name']; | ||
| 810 | - $msg .= "<br>"; | ||
| 811 | - $msg .= "Àäðåñ: ".$data['order_adress']; | ||
| 812 | - $msg .= "<br>"; | ||
| 813 | - $msg .= "E-mail: ".$data['order_email']; | ||
| 814 | - $msg .= "<br>"; | ||
| 815 | - $msg .= "Êîíòàêòíûé òåëåôîí: ".$data['order_phone']; | ||
| 816 | - $msg .= "<br>"; | ||
| 817 | - $msg .= "Ìîáèëüíûé òåëåôîí: ".$data['order_phonemob']; | ||
| 818 | - $msg .= "<br>"; | ||
| 819 | - $msg .= "Êîììåíòàðèé: ".$data['order_comment']; | ||
| 820 | -// $order_email = (strlen($data['order_email'])>0) ? $data['order_email'] : "vapila@vapila.kiev.ua"; | ||
| 821 | -// Mail::send("borisenko.pavel@gmail.com",$data['order_email'],$title,Mail::str_rus($msg)); | ||
| 822 | - $mail->MsgHTML($msg); | ||
| 823 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 824 | - $mail->ClearAddresses(); | ||
| 825 | - $mail->ClearAttachments(); | ||
| 826 | - | ||
| 827 | - $this->sendOrderXML($data); | ||
| 828 | - } | ||
| 829 | - | ||
| 830 | - | ||
| 831 | - function sendOrderXML($data){ | ||
| 832 | - $mail = new PHPMailer(); | ||
| 833 | - $mail->CharSet = "windows-1251"; | ||
| 834 | - $mail->From = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 835 | - $mail->FromName = $data['order_name']; | ||
| 836 | - $mail->AddAddress("extremshop@portal.myoffice.biz.ua","extremshop"); | ||
| 837 | - $mail->Subject = "xml çàêàç ñ ÝêñòðèìÑòèëü"; | ||
| 838 | - $order_email = (strlen($data['order_email'])>0) ? $data['order_email'] : "shopextremstyle2@gmail.com"; | ||
| 839 | - $xml = '<?xml version="1.0" encoding="windows-1251" ?>'; | ||
| 840 | - $xml .= '<Order orderNum="'.mktime().'">'; | ||
| 841 | - foreach($data['product_id'] as $key=>$value){ | ||
| 842 | - $xml .= "<OrderItem ID='".$data['product_code'][$key]."'>"; | ||
| 843 | - $xml .= "<ProductName>".$data['product_name2'][$key]."</ProductName>"; | ||
| 844 | - $xml .= "<Size>".$data['product_size'][$key]."</Size>"; | ||
| 845 | - $xml .= "<Color>".$data['product_color'][$key]."</Color>"; | ||
| 846 | - $xml .= "<Price>".$data['product_price'][$key]."</Price>"; | ||
| 847 | - $xml .= "<Count>".$data['product_count'][$key]."</Count>"; | ||
| 848 | - $xml .= "</OrderItem>"; | ||
| 849 | - } | ||
| 850 | - $xml .= '<CustomerInfo>'; | ||
| 851 | - $xml .= '<Name>'.$data['order_name'].'</Name>'; | ||
| 852 | - $xml .= '<Mobile>'.$data['order_phone'].'</Mobile>'; | ||
| 853 | - $xml .= '<Email>'.$data['order_email'].'</Email>'; | ||
| 854 | - $xml .= '</CustomerInfo>'; | ||
| 855 | - $xml .= '<DeliveryInfo>'; | ||
| 856 | - $xml .= '<City>Óêðàèíà</City>'; | ||
| 857 | - $xml .= '<Address>'.$data['order_adress'].'</Address>'; | ||
| 858 | - $xml .= '<DeliveryType>Äîñòàâêà</DeliveryType>'; | ||
| 859 | - $xml .= '</DeliveryInfo>'; | ||
| 860 | - $xml .= '<Comment>'.$data['order_comment'].'</Comment>'; | ||
| 861 | - $xml .= '</Order>'; | ||
| 862 | - $tmpfname = tempnam("tmp", "FOO"); | ||
| 863 | - $handle = fopen($tmpfname, "w"); | ||
| 864 | - fwrite($handle, $xml); | ||
| 865 | - $mail->AddAttachment($tmpfname, 'order.xml'); | ||
| 866 | - if(!$mail->Send()){echo "There has been a mail error sending to <br>";return false;} | ||
| 867 | - fclose($handle); | ||
| 868 | - unlink($tmpfname); | ||
| 869 | - $mail->ClearAddresses(); | ||
| 870 | - $mail->ClearAttachments(); | ||
| 871 | - // Mail::send("borisenko.pavel@gmail.com",$order_email,"Order",Mail::str_rus($xml)); | ||
| 872 | - // Mail::send("andrey.belyy@gmail.com",$order_email,"Order",Mail::str_rus($xml)); | ||
| 873 | - } | ||
| 874 | - | ||
| 875 | - function saveOrder($data,$userID){ | ||
| 876 | - $table_name = "catalogs_orders"; | ||
| 877 | - if(isset($data['update_id']) && $data['update_id']>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$id = $data['update_id']; $where = sprintf("id='%d'",$id);} | ||
| 878 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$id = $this->db->nextId('mySequence_'.$table_name);$where = null;} | ||
| 879 | - $fields_values = array('id'=>$id,'user_id'=>$userID,'name' => $data['order_name'],'email' => $data['order_email'],'adress' => $data['order_adress'],'phone' => $data['order_phone'],'phonemob' => $data['order_phonemob'],'comment' => $data['order_comment'],'mktime'=>mktime()); | ||
| 880 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,$where); | ||
| 881 | - if(isset($data['product_id'])){ | ||
| 882 | - foreach($data['product_id'] as $key=>$value){ | ||
| 883 | - $this->db->autoExecute("catalogs_orders_products",array('order_id'=>$id,'product_id'=>$value,'count'=>$data['product_count'][$key]),DB_AUTOQUERY_INSERT); | ||
| 884 | - } | ||
| 885 | - } | ||
| 886 | - } | ||
| 887 | - | ||
| 888 | - function deleteOrder($id){ | ||
| 889 | - $this->db->query("delete from catalogs_orders where id=?",array($id)); | ||
| 890 | - $this->db->query("delete from catalogs_orders_products where order_id=?",array($id)); | ||
| 891 | - } | ||
| 892 | - | ||
| 893 | - function updateOrder($data){ | ||
| 894 | - $table_name = "catalogs_orders"; | ||
| 895 | - $fields_values = array('name' => $data['order_name'],'email' => $data['order_email'],'adress' => $data['order_adress'],'phone' => $data['order_phone'],'comment' => $data['order_comment'],'mktime'=>mktime()); | ||
| 896 | - if(isset($data['order_active']))$fields_values['active'] = 1; | ||
| 897 | - else $fields_values['active'] = 0; | ||
| 898 | - $this->db->autoExecute($table_name,$fields_values,DB_AUTOQUERY_UPDATE,sprintf("id='%d'",$data['update_id'])); | ||
| 899 | - } | ||
| 900 | - | ||
| 901 | - function updateOrderProducts($data){ | ||
| 902 | - foreach($data['product_id'] as $key=>$value){ | ||
| 903 | - if($data['product_count'][$value]<1){$this->db->query("delete from catalogs_orders_products where order_id='{$data['order_id']}' AND product_id='$value'");} | ||
| 904 | - else{$this->db->autoExecute("catalogs_orders_products",array('count'=>$data['product_count'][$value]),DB_AUTOQUERY_UPDATE,"order_id='{$data['order_id']}' AND product_id='$value'");} | ||
| 905 | - } | ||
| 906 | - } | ||
| 907 | - | ||
| 908 | - function viewOrder($id){ | ||
| 909 | - $row = $this->db->getRow("select * from catalogs_orders where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 910 | - $this->tpl->assign('order', $row); | ||
| 911 | - } | ||
| 912 | - | ||
| 913 | - function viewOrderProducts($order_id){ | ||
| 914 | - $res = $this->db->getAll("select p.*,op.*,pr.name,pr.pic,pr.pic_big from catalogs_orders_products op Left join catalogs_products_cine p On p.id=op.product_id Left join catalogs_products pr On pr.id=p.product_id where order_id=?",array($order_id),DB_FETCHMODE_ASSOC); | ||
| 915 | - $sum = 0; | ||
| 916 | - foreach($res as $key=>$row){ | ||
| 917 | - $sum = $sum + ($row['cine']*$row['count']); | ||
| 918 | - $res[$key]['cine_all'] = ($row['cine']*$row['count']); | ||
| 919 | - } | ||
| 920 | - $discount = $this->db->getOne('select catalogs_users.discount from catalogs_orders Left join catalogs_users on catalogs_users.id=user_id where catalogs_orders.id=?',array($order_id)); | ||
| 921 | - $this->tpl->assign('cine', array('sum'=>$sum,'discount'=>$discount,'sum_discount'=>($sum - (($sum*$discount)/100)) )); | ||
| 922 | - $this->tpl->assign('basket_products', $res); | ||
| 923 | - } | ||
| 924 | - | ||
| 925 | - function viewOrders($params = array()){ | ||
| 926 | - $search = array(); | ||
| 927 | - if(isset($params['userID']) && $params['userID']>0)$search[] = sprintf("catalogs_orders.user_id='%d'",$params['userID']); | ||
| 928 | - $sql = "select catalogs_orders.*,catalogs_users.login as user_login,catalogs_users.discount from catalogs_orders Left join catalogs_users on catalogs_users.id=user_id WHERE 1=1 "; | ||
| 929 | - if(count($search))$sql .= "AND " . implode(" AND ",$search) . " "; | ||
| 930 | - $sql .= " order by mktime desc"; | ||
| 931 | - $pagerOptions = Array( | ||
| 932 | - 'mode' => 'Sliding', | ||
| 933 | - 'delta' => 16, | ||
| 934 | - 'perPage' => 50, | ||
| 935 | - 'linkClass'=>"link_class", | ||
| 936 | - 'curPageLinkClassName'=>"link_class_active", | ||
| 937 | - 'spacesBeforeSeparator' => 1, | ||
| 938 | - 'spacesAfterSeparator' => 1 | ||
| 939 | - ); | ||
| 940 | - $res = Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()); | ||
| 941 | - foreach($res['data'] as $key=>$value){ | ||
| 942 | - $res['data'][$key]['sum'] = $this->getOrderProductsSum($value['id']); | ||
| 943 | - $res['data'][$key]['sum_discount'] = $res['data'][$key]['sum'] - (($res['data'][$key]['sum']*$value['discount'])/100); | ||
| 944 | - } | ||
| 945 | - $this->tpl->assign('ordersData', $res); | ||
| 946 | - } | ||
| 947 | - | ||
| 948 | - function getOrderProductsSum($order_id){ | ||
| 949 | - $res = $this->db->getAll("select op.*,p.cine from catalogs_orders_products op Left join catalogs_products_cine p On p.id=op.product_id where op.order_id=?",array($order_id),DB_FETCHMODE_ASSOC); | ||
| 950 | - // print_r($res); | ||
| 951 | - $sum = 0; | ||
| 952 | - foreach($res as $row){ | ||
| 953 | - $sum = $sum + ($row['cine']*$row['count']); | ||
| 954 | - } | ||
| 955 | - return $sum; | ||
| 956 | - } | ||
| 957 | - | ||
| 958 | - function SaveBrend($data){ | ||
| 959 | - $table_name = "catalogs_brends"; | ||
| 960 | - $DB_AUTOQUERY = ($data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 961 | - $fields_values = array('rubric_id'=>$data['rubric_id'],'name'=>$data['brend'],'text'=>$data['text'],'seo'=>$data['seo'],'sort'=>$data['sort'],'meta_title'=>$data['meta_title'],'meta_description'=>$data['meta_description'],'meta_keywords'=>$data['meta_keywords']); | ||
| 962 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 963 | - } | ||
| 964 | - | ||
| 965 | - function viewBrends($type = false){ | ||
| 966 | - $sql = "select b.*,r.name as rubric from catalogs_brends b left join catalogs_rubrics r On r.id=b.rubric_id "; | ||
| 967 | - if($type!=false)$sql .= "where b.type='$type'"; | ||
| 968 | - $sql .= " Order by b.sort Asc"; | ||
| 969 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 970 | - $this->tpl->assign('brends',$row); | ||
| 971 | - } | ||
| 972 | - | ||
| 973 | - function viewBrendsGroup($params = array()){ | ||
| 974 | - $sql = "select * from catalogs_brends where 1=1 "; | ||
| 975 | - if(isset($params['rubID'])){ | ||
| 976 | - $rubric_id = $params['rubID'];//$this->getRubricParent($params['rubID']); | ||
| 977 | - $rubric_id = ($rubric_id==0)?$params['rubID']:$rubric_id; | ||
| 978 | - $sql .= "and rubric_id='".$rubric_id."'"; | ||
| 979 | - } | ||
| 980 | - $sql .= " Group by name Order by sort Asc"; | ||
| 981 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 982 | - $this->tpl->assign('brends',$row); | ||
| 983 | - } | ||
| 984 | - | ||
| 985 | - function SaveCity($data){ | ||
| 986 | - $table_name = "catalogs_cities"; | ||
| 987 | - $DB_AUTOQUERY = (isset($data['update_id']) && $data['update_id']>0) ? DB_AUTOQUERY_UPDATE : DB_AUTOQUERY_INSERT; | ||
| 988 | - $fields_values = array('name'=>$data['name']); | ||
| 989 | - $this->db->autoExecute($table_name,$fields_values,$DB_AUTOQUERY,"id={$data['update_id']}"); | ||
| 990 | - return mysql_insert_id(); | ||
| 991 | - } | ||
| 992 | - | ||
| 993 | - function is_city($name){ | ||
| 994 | - return $this->db->getOne('select id from catalogs_cities where name=?',array($name)); | ||
| 995 | - } | ||
| 996 | - | ||
| 997 | - function viewCityMod($code){ | ||
| 998 | - $sql = "select c.name from catalogs_keys_products_cities k left join catalogs_cities c on c.id=k.city_id where k.mod_code=? and k.count>0"; | ||
| 999 | - $row = $this->db->getCol($sql,"name",array($code)); | ||
| 1000 | - return implode(', ',$row); | ||
| 1001 | - } | ||
| 1002 | - | ||
| 1003 | - function viewCitiesProductID($id){ | ||
| 1004 | - $sql = "select city_id from catalogs_keys_products_cities where product_id=?"; | ||
| 1005 | - $row = $this->db->getCol($sql,"city_id",array($id)); | ||
| 1006 | - $this->tpl->assign('product_cities',$row); | ||
| 1007 | - } | ||
| 1008 | - | ||
| 1009 | - function viewCities($type = false){ | ||
| 1010 | - $sql = "select * from catalogs_cities "; | ||
| 1011 | - $sql .= " Order by name Asc"; | ||
| 1012 | - $row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC); | ||
| 1013 | - $this->tpl->assign('cities',$row); | ||
| 1014 | - } | ||
| 1015 | - | ||
| 1016 | - function viewCitiesProduct($id){ | ||
| 1017 | - $sql = "select catalogs_cities.* from catalogs_keys_products_cities left join catalogs_cities on catalogs_cities.id=catalogs_keys_products_cities.city_id Where catalogs_keys_products_cities.product_id=? "; | ||
| 1018 | - $row = $this->db->getAll($sql,array($id),DB_FETCHMODE_ASSOC); | ||
| 1019 | - $this->tpl->assign('cities',$row); | ||
| 1020 | - } | ||
| 1021 | - | ||
| 1022 | - function viewCity($id){ | ||
| 1023 | - $row = $this->db->getRow("select * from catalogs_cities where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 1024 | - $this->tpl->assign('city', $row); | ||
| 1025 | - } | ||
| 1026 | - | ||
| 1027 | - function deleteCity($id){ | ||
| 1028 | - $this->db->query("delete from catalogs_cities where id=?",array($id)); | ||
| 1029 | - $this->delete_keysCitiesProduct($id); | ||
| 1030 | - } | ||
| 1031 | - | ||
| 1032 | - function delete_keysCitiesProduct($id){ | ||
| 1033 | - $sql = "delete from catalogs_keys_products_cities where city_id=?"; | ||
| 1034 | - $this->db->query($sql,array($id)); | ||
| 1035 | - } | ||
| 1036 | - | ||
| 1037 | - function SaveYears($data){ | ||
| 1038 | - $table_name = "catalogs_years"; | ||
| 1039 | - foreach($data['filter'] as $key=>$name){ | ||
| 1040 | - if(strlen($name)>0){ | ||
| 1041 | - if(isset($data['update_id'][$key]) && $data['update_id'][$key]>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "id='{$data['update_id'][$key]}'";} | ||
| 1042 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = "";} | ||
| 1043 | - $this->db->autoExecute($table_name,array('name'=>$name,'rubric_id'=>$data['rubric_id']),$DB_AUTOQUERY,$where); | ||
| 1044 | - } | ||
| 1045 | - } | ||
| 1046 | - } | ||
| 1047 | - | ||
| 1048 | - function viewYearsProductID($id){ | ||
| 1049 | - $sql = "select year_id from catalogs_keys_products_years where product_id=?"; | ||
| 1050 | - $row = $this->db->getCol($sql,"year_id",array($id)); | ||
| 1051 | - $this->tpl->assign('product_years',$row); | ||
| 1052 | - } | ||
| 1053 | - | ||
| 1054 | - function viewYears($rubric_id){ | ||
| 1055 | - $row = $this->db->getAll("select * from catalogs_years where rubric_id=? order by id",array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 1056 | - $this->tpl->assign('years', $row); | ||
| 1057 | - } | ||
| 1058 | - | ||
| 1059 | - function deleteYearsRubric_id($id){ | ||
| 1060 | - $this->db->query("delete from catalogs_years where rubric_id=?",array($id)); | ||
| 1061 | - $this->delete_keysYearsRubric($id); | ||
| 1062 | - } | ||
| 1063 | - | ||
| 1064 | - function delete_keysYearsRubric($id){ | ||
| 1065 | - $sql = "delete from catalogs_keys_products_years where rubric_id=?"; | ||
| 1066 | - $this->db->query($sql,array($id)); | ||
| 1067 | - } | ||
| 1068 | - | ||
| 1069 | - function deleteYear($id){ | ||
| 1070 | - $this->db->query("delete from catalogs_years where id=?",array($id)); | ||
| 1071 | - $this->delete_keysYearsProduct($id); | ||
| 1072 | - } | ||
| 1073 | - | ||
| 1074 | - function delete_keysYearsProduct($id){ | ||
| 1075 | - $sql = "delete from catalogs_keys_products_years where year_id=?"; | ||
| 1076 | - $this->db->query($sql,array($id)); | ||
| 1077 | - } | ||
| 1078 | - | ||
| 1079 | - function SaveFilters($data){ | ||
| 1080 | - $table_name = "catalogs_filters"; | ||
| 1081 | - foreach($data['filter'] as $key=>$name){ | ||
| 1082 | - if(strlen($name)>0){ | ||
| 1083 | - if(isset($data['update_id'][$key]) && $data['update_id'][$key]>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "id='{$data['update_id'][$key]}'";} | ||
| 1084 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = "";} | ||
| 1085 | - $this->db->autoExecute($table_name,array('name'=>$name,'rubric_id'=>$data['rubric_id'],"sort"=>$data['sort'][$key]),$DB_AUTOQUERY,$where); | ||
| 1086 | - } | ||
| 1087 | - } | ||
| 1088 | - } | ||
| 1089 | - | ||
| 1090 | - function viewFilterProductID($id){ | ||
| 1091 | - $sql = "select filter_id from catalogs_keys_products_filters where product_id=?"; | ||
| 1092 | - $row = $this->db->getCol($sql,"filter_id",array($id)); | ||
| 1093 | - $this->tpl->assign('product_filters',$row); | ||
| 1094 | - } | ||
| 1095 | - | ||
| 1096 | - function deleteFilter($id){ | ||
| 1097 | - $this->db->query("delete from catalogs_filters where id=?",array($id)); | ||
| 1098 | - $this->delete_keysFilterProduct($id); | ||
| 1099 | - } | ||
| 1100 | - | ||
| 1101 | - function deleteFiltersRubric_id($rubric_id){ | ||
| 1102 | - $this->db->query("delete from catalogs_filters where rubric_id=?",array($rubric_id)); | ||
| 1103 | - $this->delete_keysFilterRubric($rubric_id); | ||
| 1104 | - } | ||
| 1105 | - | ||
| 1106 | - function delete_keysFilterProduct($id){ | ||
| 1107 | - $sql = "delete from catalogs_keys_products_filters where filter_id=?"; | ||
| 1108 | - $this->db->query($sql,array($id)); | ||
| 1109 | - } | ||
| 1110 | - | ||
| 1111 | - function delete_keysFilterRubric($id){ | ||
| 1112 | - $sql = "delete from catalogs_keys_products_filters where rubric_id=?"; | ||
| 1113 | - $this->db->query($sql,array($id)); | ||
| 1114 | - } | ||
| 1115 | - | ||
| 1116 | - function viewFilters($rubric_id){ | ||
| 1117 | - $row = $this->db->getAll("select * from catalogs_filters where rubric_id=? order by sort",array($rubric_id),DB_FETCHMODE_ASSOC); | ||
| 1118 | - $this->tpl->assign('filters', $row); | ||
| 1119 | - } | ||
| 1120 | - | ||
| 1121 | - function viewBrend($id){ | ||
| 1122 | - $row = $this->db->getRow("select * from catalogs_brends where id=?",array($id),DB_FETCHMODE_ASSOC); | ||
| 1123 | - $this->tpl->assign('brend', $row); | ||
| 1124 | - } | ||
| 1125 | - | ||
| 1126 | - function viewBrendName($name){ | ||
| 1127 | - $name = iconv("utf-8", "windows-1251", $name); | ||
| 1128 | - $sql = "select * from catalogs_brends where name=? and seo>'' limit 1"; | ||
| 1129 | - $row = $this->db->getRow($sql,array($name),DB_FETCHMODE_ASSOC); | ||
| 1130 | - $this->tpl->assign('brend_seo', $row); | ||
| 1131 | - } | ||
| 1132 | - | ||
| 1133 | - function getBrendIDs_name($name){ $name = iconv("utf-8", "windows-1251", $name); | ||
| 1134 | - $sql = "select id from catalogs_brends where name=?"; | ||
| 1135 | - return $this->db->getCol($sql,"id",array($name)); | ||
| 1136 | - } | ||
| 1137 | - | ||
| 1138 | - function deleteBrend($id){ | ||
| 1139 | - $this->db->query("delete from catalogs_brends where id=?",array($id)); | ||
| 1140 | - } | ||
| 1141 | - | ||
| 1142 | - function viewAkciiProductID($id){ | ||
| 1143 | - $sql = "select rubric_id from catalogs_keys_products_akcii where product_id=?"; | ||
| 1144 | - $row = $this->db->getCol($sql,"rubric_id",array($id)); | ||
| 1145 | - $this->tpl->assign('product_akcii',$row); | ||
| 1146 | - } | ||
| 1147 | - | ||
| 1148 | - function import_saveRubric($name,$parent_id){ | ||
| 1149 | - $id = $this->db->getOne("select id from catalogs_rubrics where name=? and parent_id=?",array($name,$parent_id)); | ||
| 1150 | - if( !$id ){ | ||
| 1151 | - $this->db->autoExecute("catalogs_rubrics",array('name'=>$name,'parent_id' => $parent_id,"level"=>($this->getLevelRubric($parent_id)+1)),DB_AUTOQUERY_INSERT); | ||
| 1152 | - return mysql_insert_id(); | ||
| 1153 | - } | ||
| 1154 | - return $id; | ||
| 1155 | - } | ||
| 1156 | - | ||
| 1157 | - function import_saveBrend($name,$rubric_id){ | ||
| 1158 | - //getRubricParent(); | ||
| 1159 | - $id = $this->db->getOne("select id from catalogs_brends where name=? and rubric_id=?",array($name,$rubric_id)); | ||
| 1160 | - if( !$id ){ | ||
| 1161 | - $this->db->autoExecute("catalogs_brends",array('rubric_id'=>$rubric_id,'name'=>$name),DB_AUTOQUERY_INSERT); | ||
| 1162 | - return mysql_insert_id(); | ||
| 1163 | - } | ||
| 1164 | - return $id; | ||
| 1165 | - } | ||
| 1166 | - | ||
| 1167 | - function import_saveFilters($rubric_id,$str){ | ||
| 1168 | - if(!$str)return array(); | ||
| 1169 | - $row_str = explode(",",trim($str)); | ||
| 1170 | - $arr_id = array(); | ||
| 1171 | - foreach($row_str as $str){ | ||
| 1172 | - $name = trim($str); | ||
| 1173 | - $id = $this->db->getOne("select id from catalogs_filters where rubric_id=? and name=?",array($rubric_id,$name)); | ||
| 1174 | - if( !$id ){ | ||
| 1175 | - $this->db->autoExecute("catalogs_filters",array('rubric_id'=>$rubric_id,'name'=>$name),DB_AUTOQUERY_INSERT); | ||
| 1176 | - $id = mysql_insert_id(); | ||
| 1177 | - } | ||
| 1178 | - $arr_id[] = $id; | ||
| 1179 | - } | ||
| 1180 | - return $arr_id; | ||
| 1181 | - } | ||
| 1182 | - | ||
| 1183 | - function import_saveYear($rubric_id,$name){ | ||
| 1184 | - $id = $this->db->getOne("select id from catalogs_years where rubric_id=? and name=?",array($rubric_id,$name)); | ||
| 1185 | - if( !$id ){ | ||
| 1186 | - $this->db->autoExecute("catalogs_years",array('rubric_id'=>$rubric_id,'name'=>$name),DB_AUTOQUERY_INSERT); | ||
| 1187 | - $id = mysql_insert_id(); | ||
| 1188 | - } | ||
| 1189 | - return ($id)?array($id):array(); | ||
| 1190 | - } | ||
| 1191 | - | ||
| 1192 | - function import_updateProductCine($product_id,$row,$line=''){ //print"<pre>";print_r($row);print"</pre>"; | ||
| 1193 | - IF($row[3]>0){ | ||
| 1194 | - if($row[2]<1){$cine=$row[1];$cine_last=0;} | ||
| 1195 | - else {$cine=$row[2];$cine_last=(($row[1]>0)?$row[1]:$row[2]);} | ||
| 1196 | - $this->db->autoExecute("catalogs_products",array('cine'=>$cine,'cine_last'=>$cine_last),DB_AUTOQUERY_UPDATE,"id='$product_id'"); | ||
| 1197 | - } | ||
| 1198 | - /* if($this->getModificationActive($row[0])!=$row[3]){ | ||
| 1199 | - $prefix = ($row[3]==0)?'-':'+'; | ||
| 1200 | - $this->updateProductModificationCountPrefix($product_id,$prefix); | ||
| 1201 | - } */ | ||
| 1202 | - $city = trim($row[4]); | ||
| 1203 | - if(strlen($city)>0){ //print $city; | ||
| 1204 | - $city_id = $this->is_city($city); | ||
| 1205 | - if(!$city_id){$city_id = $this->SaveCity(array('name'=>$city));} | ||
| 1206 | - if($this->getKeysModificationCity($row[0], $city_id)){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$where = "mod_code='".$row[0]."' and city_id='".$city_id."'";} | ||
| 1207 | - else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$where = null;} | ||
| 1208 | - //print $city_id .'--'.$where."<br>"; | ||
| 1209 | - $s = $this->db->autoExecute("catalogs_keys_products_cities",array('count'=>$row[3],'product_id'=>$product_id,'mod_code'=>$row[0],'city_id'=>$city_id),$DB_AUTOQUERY,$where); | ||
| 1210 | - // if (PEAR::isError($s)) die($s->getMessage()); | ||
| 1211 | - } | ||
| 1212 | - $active = $this->db->getOne("select count(*) from catalogs_keys_products_cities where mod_code=? and count>0",array($row[0])); | ||
| 1213 | - if($this->db->getOne("select count(*) from catalogs_modifications where code=?",array($row[0]))>0){ | ||
| 1214 | - $this->db->autoExecute("catalogs_modifications",array('active'=>$active,'is_update'=>1,'prefix'=>$row[5]),DB_AUTOQUERY_UPDATE,"code='".$row[0]."'"); | ||
| 1215 | - }else{ | ||
| 1216 | - $this->saveCsvMod($line); | ||
| 1217 | - } | ||
| 1218 | - } | ||
| 1219 | - | ||
| 1220 | - function saveCsvMod($line){ | ||
| 1221 | - $tmpfname = $_SERVER['DOCUMENT_ROOT'] . "/tmp/noDB_mod.csv"; | ||
| 1222 | - $handle = fopen($tmpfname, "a"); | ||
| 1223 | - fwrite($handle,$line); | ||
| 1224 | - fclose($handle); | ||
| 1225 | - } | ||
| 1226 | - | ||
| 1227 | - function getKeysModificationCity($code, $city_id){ | ||
| 1228 | - return $this->db->getOne("select count(*) from catalogs_keys_products_cities where mod_code=? and city_id=?", array($code, $city_id)); | ||
| 1229 | - } | ||
| 1230 | - | ||
| 1231 | - function getProductID($name){ | ||
| 1232 | - $id = $this->db->getOne("select id from catalogs_products where name=?",array($name)); | ||
| 1233 | - return $id; | ||
| 1234 | - } | ||
| 1235 | - | ||
| 1236 | - function getModificationActive($code){ | ||
| 1237 | - return $this->db->getOne("select active from catalogs_modifications where code=?",array($code)); | ||
| 1238 | - } | ||
| 1239 | - | ||
| 1240 | - function updateProduct_countModification($product_id,$count){ | ||
| 1241 | - $this->db->autoExecute("catalogs_products",array('count_modifications'=>$count),DB_AUTOQUERY_UPDATE,"id='$product_id'"); | ||
| 1242 | - } | ||
| 1243 | - | ||
| 1244 | - function updateProductModificationCountPrefix($product_id,$prefix = "+"){ | ||
| 1245 | -// print $product_id; | ||
| 1246 | - $sql = "UPDATE catalogs_products SET count_modifications = count_modifications $prefix 1 WHERE id =?"; | ||
| 1247 | - $this->db->query($sql,array($product_id)); | ||
| 1248 | - } | ||
| 1249 | - | ||
| 1250 | - function exportCSV(){ | ||
| 1251 | - $tmpfname = "tmp/price.csv"; | ||
| 1252 | - $handle = fopen($tmpfname, "w"); | ||
| 1253 | - // fwrite($handle, $xml); | ||
| 1254 | - $res = $this->db->getAll('select p.id,p.rubric_id,r.name,r2.name,b.name as brend,p.name,p.about,p.text,null,p.sex,null,p.cine,p.cine_last,p.strnumber,p.active,p.pic_big from catalogs_products p left join catalogs_rubrics r on r.id=p.rubric_id left join catalogs_rubrics r2 on r2.id=p.rubric_parent_id left join catalogs_brends b on b.id=p.brend_id',array()); | ||
| 1255 | - foreach($res as $key=>$row){ | ||
| 1256 | - $list = $row; | ||
| 1257 | - $mod_res = $this->db->getAll('select code,size,color,pic_big,active from catalogs_modifications where product_id=?',array($row[0])); | ||
| 1258 | - foreach($mod_res as $mod_row){$list[] = implode('=',$mod_row);} | ||
| 1259 | - | ||
| 1260 | - $f_row = $this->db->getCol("select name from catalogs_filters where rubric_id=?",'name',array($list[1])); | ||
| 1261 | - $list[8]=implode(',',$f_row); | ||
| 1262 | - | ||
| 1263 | - switch($list[9]){ | ||
| 1264 | - case 1 : $list[9] = 'ìóæñêîé'; break; | ||
| 1265 | - case 2 : $list[9] = 'æåíñêèé'; break; | ||
| 1266 | - case 3 : $list[9] = 'äåòñêèé'; break; | ||
| 1267 | - case 4 : $list[9] = 'óíèñåêñ'; break; | ||
| 1268 | - default : $list[9] = 'ìóæñêîé'; break; | ||
| 1269 | - } | ||
| 1270 | - | ||
| 1271 | - $y_row = $this->db->getCol("select name from catalogs_years where rubric_id=? order by id desc limit 1",'name',array($list[1])); | ||
| 1272 | - $list[10]=implode(',',$y_row); | ||
| 1273 | - | ||
| 1274 | - | ||
| 1275 | - unset($list[0]);unset($list[1]); | ||
| 1276 | - //print_r($list);exit; | ||
| 1277 | - File_FGetCSV::fputcsv($handle,$list,';'); | ||
| 1278 | - } | ||
| 1279 | - | ||
| 1280 | - fclose($handle); | ||
| 1281 | - | ||
| 1282 | - $params = array( | ||
| 1283 | - 'file' => $tmpfname, | ||
| 1284 | - 'contenttype' => 'application/xls', | ||
| 1285 | - 'contentdisposition' => array(HTTP_DOWNLOAD_ATTACHMENT, 'price.csv'), | ||
| 1286 | - 'cache' => false | ||
| 1287 | - ); | ||
| 1288 | - $error = HTTP_Download::staticSend($params, false); //îòäà¸ì ôàéë | ||
| 1289 | - if ($error === true) { | ||
| 1290 | - //åñëè ôàéë çàãðóæåí óñïåøíî, îáíîâëÿåì äàòó ïîñëåäíåé çàêà÷êè | ||
| 1291 | - } | ||
| 1292 | - | ||
| 1293 | - unlink($tmpfname); | ||
| 1294 | - } | ||
| 1295 | - | ||
| 1296 | - function exportModCSV(){ | ||
| 1297 | - $tmpfname = "tmp/price_mod.csv"; | ||
| 1298 | - $handle = fopen($tmpfname, "w"); | ||
| 1299 | - $res = $this->db->getAll('select m.code,p.cine,p.cine_last,m.active,null,m.prefix,m.is_update From catalogs_modifications m Left join catalogs_products p on p.id=m.product_id'); | ||
| 1300 | - foreach($res as $key=>$row){ | ||
| 1301 | - File_FGetCSV::fputcsv($handle,$row,';'); | ||
| 1302 | - } | ||
| 1303 | - fclose($handle); | ||
| 1304 | - $params = array( | ||
| 1305 | - 'file' => $tmpfname, | ||
| 1306 | - 'contenttype' => 'application/xls', | ||
| 1307 | - 'contentdisposition' => array(HTTP_DOWNLOAD_ATTACHMENT, 'file_1.csv'), | ||
| 1308 | - 'cache' => false | ||
| 1309 | - ); | ||
| 1310 | - $error = HTTP_Download::staticSend($params, false); //îòäà¸ì ôàéë | ||
| 1311 | - if ($error === true) { | ||
| 1312 | - //åñëè ôàéë çàãðóæåí óñïåøíî, îáíîâëÿåì äàòó ïîñëåäíåé çàêà÷êè | ||
| 1313 | - } | ||
| 1314 | - | ||
| 1315 | - unlink($tmpfname); | ||
| 1316 | - $this->db->autoExecute("catalogs_modifications",array('is_update'=>0),DB_AUTOQUERY_UPDATE); | ||
| 1317 | - } | ||
| 1318 | - | ||
| 1319 | - function importCSV($upload){ error_reporting(0); | ||
| 1320 | - if($upload['file']['name']=="file_1.csv"){print"Îøèáêà! Ôàéë öåí!";exit;} | ||
| 1321 | - //$arr_line = file($upload['file']['tmp_name']); | ||
| 1322 | - $f = fopen($upload['file']['tmp_name'], "r") or die("Îøèáêà!"); | ||
| 1323 | - // print"<pre>"; | ||
| 1324 | - for ($i=0; $row_line=File_FGetCSV::fgetcsv($f,15000000,";"); $i++) { | ||
| 1325 | - // foreach($arr_line as $line){ | ||
| 1326 | - //$row_line = fgetcsv(";",$line); | ||
| 1327 | - $rubric_id = $this->import_saveRubric($row_line[0],0); | ||
| 1328 | - $rubric_parent_id = $this->import_saveRubric($row_line[1],$rubric_id); | ||
| 1329 | - $brend_id = $this->import_saveBrend($row_line[2],$rubric_parent_id); | ||
| 1330 | - $pruduct_name = trim($row_line[3]); | ||
| 1331 | - $pruduct_about = trim($row_line[4]); | ||
| 1332 | - $pruduct_text = trim($row_line[5]); | ||
| 1333 | - switch($row_line[7]){ | ||
| 1334 | - case 'ìóæñêîé' : $pruduct_sex = 1; break; | ||
| 1335 | - case 'æåíñêèé' : $pruduct_sex = 2; break; | ||
| 1336 | - case 'äåòñêèé' : $pruduct_sex = 3; break; | ||
| 1337 | - case 'óíèñåêñ' : $pruduct_sex = 4; break; | ||
| 1338 | - default : $pruduct_sex = 0; break; | ||
| 1339 | - } | ||
| 1340 | - $pruduct_date = trim($row_line[8]); | ||
| 1341 | - $pruduct_cine = trim($row_line[9]); | ||
| 1342 | - $pruduct_cine_last = trim($row_line[10]); | ||
| 1343 | - if($pruduct_cine<1){$pruduct_cine=$pruduct_cine_last;$pruduct_cine_last=0;} | ||
| 1344 | - | ||
| 1345 | - $pruduct_strnumber = trim($row_line[11]); | ||
| 1346 | - $pruduct_active = trim($row_line[12]); | ||
| 1347 | - $pruduct_pic_tmp = trim($row_line[13]); | ||
| 1348 | - $pruduct_update_id = $this->getProductID($pruduct_name); | ||
| 1349 | - $upload_pruduct = (strlen($pruduct_pic_tmp)>0 && is_file("./uploaded/pic/catalogs/products/big/$pruduct_pic_tmp"))?array('pic'=>array('tmp_name'=>"./uploaded/pic/catalogs/products/big/$pruduct_pic_tmp",'name'=>$pruduct_pic_tmp,'big'=>true)):null; | ||
| 1350 | - $product_id = $this->saveProduct( | ||
| 1351 | - array('rubric_id'=>$rubric_parent_id, | ||
| 1352 | - 'rubric_parent_id'=>$rubric_parent_id, | ||
| 1353 | - 'brend_id'=>$brend_id, | ||
| 1354 | - 'name'=>$pruduct_name, | ||
| 1355 | - 'about'=>$pruduct_about, | ||
| 1356 | - 'text'=>$pruduct_text, | ||
| 1357 | - 'sex'=>$pruduct_sex, | ||
| 1358 | - 'date'=>$pruduct_date, | ||
| 1359 | - 'cine'=>$pruduct_cine, | ||
| 1360 | - 'cine_last'=>$pruduct_cine_last, | ||
| 1361 | - 'strnumber'=>$pruduct_strnumber, | ||
| 1362 | - 'active'=>$pruduct_active, | ||
| 1363 | - 'meta_title'=>$pruduct_name, | ||
| 1364 | - 'meta_description'=>$pruduct_name, | ||
| 1365 | - 'meta_keywords'=>$pruduct_name, | ||
| 1366 | - 'meta_about'=>$pruduct_name, | ||
| 1367 | - 'filter'=>$this->import_saveFilters($rubric_parent_id,$row_line[6]), | ||
| 1368 | - 'years'=>$this->import_saveYear($rubric_parent_id,$pruduct_date), | ||
| 1369 | - 'akcii'=>array(), | ||
| 1370 | - 'update_id'=>$pruduct_update_id), | ||
| 1371 | - $upload_pruduct | ||
| 1372 | - ); | ||
| 1373 | - $this->deleteProductModifications($product_id,true); | ||
| 1374 | - $m_i = 0; | ||
| 1375 | - for($i=14;$i<count($row_line);$i++){ | ||
| 1376 | - $arr_mod = trim($row_line[$i]); | ||
| 1377 | - if(strlen($arr_mod)>0){ | ||
| 1378 | - $row_mod = explode("=",$arr_mod); | ||
| 1379 | - $upload_mod = (strlen($row_mod[3])>0 && is_file("./uploaded/pic/catalogs/modifications/big/".$row_mod[3]))?array('pic'=>array('tmp_name'=>"./uploaded/pic/catalogs/modifications/big/".$row_mod[3],'name'=>$row_mod[3],'big'=>true)):null; | ||
| 1380 | - | ||
| 1381 | - $this->SaveModification( | ||
| 1382 | - array('product_id'=>$product_id, | ||
| 1383 | - 'code'=>$row_mod[0], | ||
| 1384 | - 'size'=>$row_mod[1], | ||
| 1385 | - 'color'=>$row_mod[2], | ||
| 1386 | - 'active'=>$row_mod[4] | ||
| 1387 | - ),$upload_mod | ||
| 1388 | - ); | ||
| 1389 | - if($row_mod[4]>0)$m_i++; | ||
| 1390 | - } | ||
| 1391 | - } | ||
| 1392 | - $this->updateProduct_countModification($product_id,$m_i); | ||
| 1393 | - //$this->import_saveFilters($product_id,$rubric_parent_id,$row_line[6]); | ||
| 1394 | - //$strnumber = $this->getProductID($row_line[3]); $this->save_keysProductsFilters($id,$data); | ||
| 1395 | - //print_r($row_line); | ||
| 1396 | - if(($i%30)==0)sleep(1); | ||
| 1397 | - } | ||
| 1398 | - // print"</pre>"; | ||
| 1399 | - | ||
| 1400 | - } | ||
| 1401 | - | ||
| 1402 | - function importCSV_cine($upload){ | ||
| 1403 | - if($upload['file']['name']!="file_1.csv"){print"Îøèáêà! Òîëüêî file_1.csv";exit;} | ||
| 1404 | - $arr_line = file($upload['file']['tmp_name']); | ||
| 1405 | - //print"<pre>"; | ||
| 1406 | - $i = 0; | ||
| 1407 | - foreach($arr_line as $line){ | ||
| 1408 | - $row_line = explode(";",$line); | ||
| 1409 | - $this->import_updateProductCine($this->getModificationProduct_id($row_line[0]),$row_line,$line); | ||
| 1410 | - if(($i%30)==0)sleep(1); | ||
| 1411 | - $i++; | ||
| 1412 | - // print_r($row_line); | ||
| 1413 | - }//print"</pre>"; | ||
| 1414 | - $this->updateCountModificationProducts(); | ||
| 1415 | - } | ||
| 1416 | - | ||
| 1417 | - function CronImportCSV_cine($upload){ | ||
| 1418 | - if($upload['file']['name']!="file_1.csv"){print"Îøèáêà! Òîëüêî file_1.csv";exit;} | ||
| 1419 | - $arr_line = file($upload['file']['tmp_name']); | ||
| 1420 | - //print"<pre>"; | ||
| 1421 | - $i = 0; | ||
| 1422 | - foreach($arr_line as $line){ | ||
| 1423 | - $row_line = explode(";",$line); | ||
| 1424 | - $this->import_updateProductCine($this->getModificationProduct_id($row_line[0]),$row_line,$line); | ||
| 1425 | - if(($i%30)==0)sleep(1); | ||
| 1426 | - $i++; | ||
| 1427 | - // print_r($row_line); | ||
| 1428 | - }//print"</pre>"; | ||
| 1429 | - //$this->updateCountModificationProducts(); | ||
| 1430 | - } | ||
| 1431 | - | ||
| 1432 | - function updateCountModificationProducts(){ | ||
| 1433 | - $this->db->autoExecute("catalogs_products",array('count_modifications'=>0),DB_AUTOQUERY_UPDATE); | ||
| 1434 | - $res = $this->db->getAll("select * from catalogs_products",array(),DB_FETCHMODE_ASSOC); | ||
| 1435 | - $i = 0; | ||
| 1436 | - foreach($res as $row){ | ||
| 1437 | - $count = $this->db->getOne("select count(*) from catalogs_modifications where product_id=? and active>0",array($row['id'])); | ||
| 1438 | - $this->db->autoExecute("catalogs_products",array('count_modifications'=>$count),DB_AUTOQUERY_UPDATE,"id='".$row['id']."'"); | ||
| 1439 | - // if(($i%10)==0)sleep(10); | ||
| 1440 | - $i++; | ||
| 1441 | - } | ||
| 1442 | - } | ||
| 1443 | - | ||
| 1444 | - function config_update($id,$value){ | ||
| 1445 | - $this->db->autoExecute("catalogs_config",array('value'=>$value),DB_AUTOQUERY_UPDATE,"id='".$id."'"); | ||
| 1446 | - } | ||
| 1447 | - | ||
| 1448 | - function view_config_value($id){ | ||
| 1449 | - $r = $this->db->getOne("select value from catalogs_config where id=?",$id); | ||
| 1450 | - $this->tpl->assign("config",$r); | ||
| 1451 | - return $r; | ||
| 1452 | - } | ||
| 1453 | - | ||
| 1454 | - function displayCatalogsCurs(){ | ||
| 1455 | - $this->tpl->assign("tpl",'catalogs_curs.tpl'); | ||
| 1456 | - } | ||
| 1457 | - | ||
| 1458 | - function displayCatalogs(){ | ||
| 1459 | - $this->tpl->assign("tpl",'catalogs.tpl'); | ||
| 1460 | - } | ||
| 1461 | - | ||
| 1462 | - function displayProducts(){ | ||
| 1463 | - $this->tpl->assign("tpl",'catalogs_products.tpl'); | ||
| 1464 | - } | ||
| 1465 | - | ||
| 1466 | - function displayProductsTops(){ | ||
| 1467 | - $this->tpl->assign("tpl",'catalogs_products_tops.tpl'); | ||
| 1468 | - } | ||
| 1469 | - | ||
| 1470 | - function displayProductsHits(){ | ||
| 1471 | - $this->tpl->assign("tpl",'catalogs_products_hits.tpl'); | ||
| 1472 | - } | ||
| 1473 | - | ||
| 1474 | - function displayProductsHitsAll(){ | ||
| 1475 | - $this->tpl->assign("tpl",'catalogs_products_hits_all.tpl'); | ||
| 1476 | - } | ||
| 1477 | - | ||
| 1478 | - function displayBasket($count_products,$cine_products,$cine_products_discount,$discount){ | ||
| 1479 | - $this->tpl->assign("count_products",$count_products); | ||
| 1480 | - $this->tpl->assign("cine_products",$cine_products); | ||
| 1481 | - $this->tpl->assign("cine_products_discount",$cine_products_discount); | ||
| 1482 | - $this->tpl->assign("discount",$discount); | ||
| 1483 | - $this->tpl->display('basket.tpl'); | ||
| 1484 | - } | ||
| 1485 | - | ||
| 1486 | - function displayProduct(){ | ||
| 1487 | - $this->tpl->assign("tpl",'catalogs_product.tpl'); | ||
| 1488 | - } | ||
| 1489 | - | ||
| 1490 | - function displayProductBasket(){ | ||
| 1491 | - $this->tpl->assign("tpl",'catalogs_basket.tpl'); | ||
| 1492 | - } | ||
| 1493 | - | ||
| 1494 | - function displayBrends(){ | ||
| 1495 | - $this->tpl->assign("tpl",'catalogs_brends.tpl'); | ||
| 1496 | - } | ||
| 1497 | - | ||
| 1498 | - function displayCities(){ | ||
| 1499 | - $this->tpl->assign("tpl",'catalogs_cities.tpl'); | ||
| 1500 | - } | ||
| 1501 | - | ||
| 1502 | - function displayProductBasketSend(){ | ||
| 1503 | - $this->tpl->assign("tpl",'catalogs_basket_send.tpl'); | ||
| 1504 | - } | ||
| 1505 | - | ||
| 1506 | - function displayReg(){ | ||
| 1507 | - $this->tpl->assign("tpl",'catalogs_reg.tpl'); | ||
| 1508 | - } | ||
| 1509 | - | ||
| 1510 | - function displayEditUser(){ | ||
| 1511 | - $this->tpl->assign("tpl",'catalogs_user_edit.tpl'); | ||
| 1512 | - } | ||
| 1513 | - | ||
| 1514 | - function displayNoPsw(){ | ||
| 1515 | - $this->tpl->assign("tpl",'catalogs_nopsw.tpl'); | ||
| 1516 | - } | ||
| 1517 | - | ||
| 1518 | - function displayOrders(){ | ||
| 1519 | - $this->tpl->assign("tpl",'catalogs_orders.tpl'); | ||
| 1520 | - } | ||
| 1521 | - | ||
| 1522 | - function displayOrder(){ | ||
| 1523 | - $this->tpl->assign("tpl",'catalogs_order.tpl'); | ||
| 1524 | - } | ||
| 1525 | - | ||
| 1526 | - function displayUsers(){ | ||
| 1527 | - $this->tpl->assign("tpl",'catalogs_users.tpl'); | ||
| 1528 | - } | ||
| 1529 | - | ||
| 1530 | - function displayUser(){ | ||
| 1531 | - $this->tpl->assign("tpl",'catalogs_user.tpl'); | ||
| 1532 | - } | ||
| 1533 | - | ||
| 1534 | - function displayFilters(){ | ||
| 1535 | - $this->tpl->assign("tpl",'catalogs_filters.tpl'); | ||
| 1536 | - } | ||
| 1537 | - | ||
| 1538 | - function displayYears(){ | ||
| 1539 | - $this->tpl->assign("tpl",'catalogs_years.tpl'); | ||
| 1540 | - } | ||
| 1541 | - | ||
| 1542 | - function displayWinProducts(){ | ||
| 1543 | - $this->tpl->display('catalogs_win_products.tpl'); | ||
| 1544 | - } | ||
| 1545 | - | ||
| 1546 | - function displayModifications(){ | ||
| 1547 | - $this->tpl->assign("tpl",'catalogs_modifications.tpl'); | ||
| 1548 | - } | ||
| 1549 | - | ||
| 1550 | - function displayImport(){ | ||
| 1551 | - $this->tpl->assign("tpl",'catalogs_import.tpl'); | ||
| 1552 | - } | ||
| 1553 | - | ||
| 1554 | - function displayImportCine(){ | ||
| 1555 | - $this->tpl->assign("tpl",'catalogs_import_cine.tpl'); | ||
| 1556 | - } | ||
| 1557 | - | ||
| 1558 | - function displayAkcii(){ | ||
| 1559 | - $this->tpl->assign("tpl",'catalogs_akcii.tpl'); | ||
| 1560 | - } | ||
| 1561 | - | ||
| 1562 | -} | ||
| 1563 | -?> |