kpoxas 0 Опубликовано 10 апреля, 2008 Жалоба Share Опубликовано 10 апреля, 2008 При обновлении статуса заказа в ЗАКАЗАХ непосредственно (то есть не заходя в его редактирование) не проверяется накопительный предел и покупатель не переносится в нужную группу... У кого-то что-то такое было? И еще когда создается новая группа, то таблица personal_offers_by_customers_status добавляется в кодировке cp1251_general_ci , также как и таблица module_newsletter_temp. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 10 апреля, 2008 Жалоба Share Опубликовано 10 апреля, 2008 kpoxas Да, есть такое дело, проверка происходит именно на странице подробностей заказа. А вот как проверить сразу в списке, я пока даже и не знаю если честно. А вот по поводу кодировки таблиц, по идее, ничего страшного, т.е. в функции подключения к базе данных /inc/vam_db_connect.inc.php там принудительно задаётся кодировка соединения utf8 и вроде как все данные будут писать в utf8 в таблицы. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 11 апреля, 2008 Автор Жалоба Share Опубликовано 11 апреля, 2008 У меня кстати и в редактировании товара перестало переносится в нужную группу, в admin/orders.php исправил: // ok, looking for available group $groups_query = vam_db_query("select customers_status_discount, customers_status_id, customers_status_name, customers_status_accumulated_limit from " . TABLE_CUSTOMERS_STATUS . " where customers_status_accumulated_limit < " . $customers_total . " and customers_status_discount > " . $current_discount . " and customers_status_accumulated_limit > " . $current_limit . " and customers_status_id = " . $groups['customers_status_id'] . " order by customers_status_accumulated_limit DESC"); на // ok, looking for available group $groups_query = vam_db_query("select customers_status_discount, customers_status_id, customers_status_name, customers_status_accumulated_limit from " . TABLE_CUSTOMERS_STATUS . " where customers_status_accumulated_limit < " . $customers_total . " and customers_status_discount >= " . $current_discount . " and customers_status_accumulated_limit >= " . $current_limit . " and customers_status_id = " . $groups['customers_status_id'] . " order by customers_status_accumulated_limit DESC"); и все стало нормально. Затем после $order_updated = true; (у меня прмерно 121 строчка) вставил еще раз: // denuz added accumulated discount $changed = false; $check_group_query = vam_db_query("select customers_status_id from " . TABLE_CUSTOMERS_STATUS_ORDERS_STATUS . " where orders_status_id = " . $status); if (vam_db_num_rows($check_group_query)) { while ($groups = vam_db_fetch_array($check_group_query)) { // calculating total customers purchase // building query $customer_query = vam_db_query("select c.* from " . TABLE_CUSTOMERS . " as c, " . TABLE_ORDERS . " as o where o.customers_id = c.customers_id and o.orders_id = " . (int)$this_orderID ); $customer = vam_db_fetch_array($customer_query); $customer_id1 = $customer['customers_id']; $statuses_groups_query = vam_db_query("select orders_status_id from " . TABLE_CUSTOMERS_STATUS_ORDERS_STATUS . " where customers_status_id = " . $groups['customers_status_id']); $purchase_query = "select sum(ot.value) as total from " . TABLE_ORDERS_TOTAL . " as ot, " . TABLE_ORDERS . " as o where ot.orders_id = o.orders_id and o.customers_id = " .$customer_id1 . " and ot.class = 'ot_total' and ("; $statuses = vam_db_fetch_array($statuses_groups_query); $purchase_query .= " o.orders_status = " . $statuses['orders_status_id']; while ($statuses = vam_db_fetch_array($statuses_groups_query)) { $purchase_query .= " or o.orders_status = " . $statuses['orders_status_id']; } $purchase_query .=);"; $total_purchase_query = vam_db_query($purchase_query); $total_purchase = vam_db_fetch_array($total_purchase_query); $customers_total = $total_purchase['total]; // looking for current accumulated limit & discount $acc_query = vam_db_query(" select cg.customers_status_accumulated_limit, cg.customers_status_name, cg.customers_status_discount from " . TABLE_CUSTOMERS_STATUS . " as cg, " . TABLE_CUSTOMERS . " as c where cg.customers_status_id = c.customers_status and c.customers_id = " .$customer_id1); $current_limit = @mysql_result($acc_query, 0, "customers_status_accumulated_limit"); $current_discount = @mysql_result($acc_query, 0, "customers_status_discount"); $current_group = @mysql_result($acc_query, "customers_status_name"); // ok, looking for available group $groups_query = vam_db_query("select customers_status_discount, customers_status_id, customers_status_name, customers_status_accumulated_limit from " . TABLE_CUSTOMERS_STATUS . " where customers_status_accumulated_limit < " . $customers_total . " and customers_status_discount >= " . $current_discount . " and customers_status_accumulated_limit >= " . $current_limit . " and customers_status_id = " . $groups['customers_status_id'] . " order by customers_status_accumulated_limit DESC"); if (vam_db_num_rows($groups_query)) { // new group found $customers_groups_id = @mysql_result($groups_query, 0, "customers_status_id"); $customers_groups_name = @mysql_result($groups_query, 0, "customers_status_name"); $limit = @mysql_result($groups_query, 0, "customers_status_accumulated_limit"); $current_discount = @mysql_result($groups_query, 0, "customers_status_discount"); // updating customers group vam_db_query("update " . TABLE_CUSTOMERS . " set customers_status = " . $customers_groups_id . " where customers_id = " .$customer_id1); $changed = true; } } $groups_query = vam_db_query("select cg.* from " . TABLE_CUSTOMERS_STATUS . " as cg, " . TABLE_CUSTOMERS . " as c where c.customers_status = cg.customers_status_id and c.customers_id = " .$customer_id1); $customers_groups_id = @mysql_result($groups_query, 0, "customers_status_id"); $customers_groups_name = @mysql_result($groups_query, 0, "customers_status_name"); $limit = @mysql_result($groups_query, 0, "customers_status_accumulated_limit"); $current_discount = @mysql_result($groups_query, 0, "customers_status_discount"); if ($changed) { // send emails // assign language to template for caching $vamTemplate->assign('language', $_SESSION['language']); $vamTemplate->caching = false; // set dirs manual $vamTemplate->assign('tpl_path', 'templates/'.CURRENT_TEMPLATE.'/'); $vamTemplate->assign('logo_path', HTTP_SERVER.DIR_WS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/img/'); $vamTemplate->assign('CUSTOMERNAME', $check_status['customers_name']); $vamTemplate->assign('EMAIL', $check_status['customers_email_address']); $vamTemplate->assign('GROUPNAME', $customers_groups_name); $vamTemplate->assign('GROUPDISCOUNT', $current_discount); $vamTemplate->assign('ACCUMULATED_LIMIT', $currencies->display_price($limit, 0)); //email to admin $html_mail_admin = $vamTemplate->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$_SESSION['language'].'/accumulated_discount_admin.html'); $txt_mail_admin = $vamTemplate->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$_SESSION['language'].'/accumulated_discount_admin.txt'); vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_admin, $txt_mail_admin); //email to customer $html_mail_customer = $vamTemplate->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$_SESSION['language'].'/accumulated_discount_customer.html'); $txt_mail_customer = $vamTemplate->fetch(CURRENT_TEMPLATE.'/admin/mail/'.$_SESSION['language'].'/accumulated_discount_customer.txt'); vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, STORE_OWNER_EMAIL_ADDRESS, STORE_OWNER, '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_customer, $txt_mail_customer); } } // eof denuz added accumulated discount и теперь все переносится в нужные группы даже , если обновить статус непосредственно из заказов, не заходя в их редактирование Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 11 апреля, 2008 Автор Жалоба Share Опубликовано 11 апреля, 2008 И еще, нормально не приходит письмо о переносе в группу пишет Warning: Smarty error: unable to read resource: "my_table/admin/mail//accumulated_discount_customer.html" in /home/parfums/public_html/includes/external/smarty/Smarty.class.php on line 1092 То есть не идентифицирует язык, а файла accumulated_discount_customer.html нет вообще. Первую проблему решил, поменял $order->info['language'] на $_SESSION['language'] (вверху исправил), но надо еще создать соответствующие файлы. Кстати еще нет файла change_order_mail.html Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 апреля, 2008 Жалоба Share Опубликовано 11 апреля, 2008 kpoxas Спасибо огромное, а ещё просьба, можешь сразу свой /admin/orders.php прицепить, что б я не ошибся внося изменения в магазин. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 11 апреля, 2008 Автор Жалоба Share Опубликовано 11 апреля, 2008 Вот файл, но это прямое решение, может создать какую-то функцию, чтобы такой большой код не дублировался... А у тебя нет этих отсутствующих шаблонов писем? orders.php Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 апреля, 2008 Жалоба Share Опубликовано 11 апреля, 2008 Ещё раз спасибо, сейчас буду прбовать. Такие шаблоны есть в папке, просто что-то язык не подставляется. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 13 апреля, 2008 Жалоба Share Опубликовано 13 апреля, 2008 kpoxas Вроде нормально, проверил, работает как надо, я тогда добавлю пока как есть в код магазина, а там поглядим, может упростить как-то можно будет. Ещё раз спасибо большое. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 13 апреля, 2008 Автор Жалоба Share Опубликовано 13 апреля, 2008 еще такой глюк стал происходить, после изменения статуса админу присылается сообщение о переходе в другую группу, которое должно присылаться клиенту.. Администраторское сообщение, о том, что "Такой - то покупатель перешел в такую-то группу..." не приходит Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 14 апреля, 2008 Жалоба Share Опубликовано 14 апреля, 2008 А я вчера смотрел, вроде бы нормально, т.е. два письма пришло, и клиенту и админу. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 23 апреля, 2008 Автор Жалоба Share Опубликовано 23 апреля, 2008 проблема может тут: vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_admin, $txt_mail_admin); если письмо шлется админу, то зачем стоит переменные $check_status['customers_email_address'] и $check_status['customers_name'] аналогично и для письма клиенту vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, STORE_OWNER_EMAIL_ADDRESS, STORE_OWNER, '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_customer, $txt_mail_customer); STORE_OWNER_EMAIL_ADDRESS не должно там быть. Такое впечатление , что переменные перепутаны местами. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 23 апреля, 2008 Автор Жалоба Share Опубликовано 23 апреля, 2008 да именно в этом и проблема. Саш, поменяй эти 2 строчки соответственно на: vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, STORE_OWNER_EMAIL_ADDRESS, STORE_OWNER, '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_admin, $txt_mail_admin); vam_php_mail(EMAIL_BILLING_ADDRESS, EMAIL_BILLING_NAME, $check_status['customers_email_address'], $check_status['customers_name'], '', EMAIL_BILLING_REPLY_ADDRESS, EMAIL_BILLING_REPLY_ADDRESS_NAME, '', '', EMAIL_ACC_SUBJECT, $html_mail_customer, $txt_mail_customer); Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 23 апреля, 2008 Автор Жалоба Share Опубликовано 23 апреля, 2008 Почему бы не сделать еще редактирование писем, что лежат в admin/mail/russian/ Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 23 апреля, 2008 Жалоба Share Опубликовано 23 апреля, 2008 kpoxas Да, админские письма тоже добавлю, просто не доделал пока. Если не сложно добавь на vamshop.ru/bugs это пожелание. За исправление спасибо, внём исправение в магазин. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения