Wallkar Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Пришлось переиминовать где надо Simpla в Newcms и вот что в итоге:Fatal error: Class 'novaposhta' not found in /home/virtwww/w_shop-wallkar_113c0b12/http/api/Newcms.php on line 69 Но клас то есть в Ньюкмс все как надо.. Цитата Ссылка на сообщение Поделиться на другие сайты
Simplamarket Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Пришлось переиминовать где надо Simpla в Newcms и вот что в итоге:Fatal error: Class 'novaposhta' not found in /home/virtwww/w_shop-wallkar_113c0b12/http/api/Newcms.php on line 69 Но клас то есть в Ньюкмс все как надо..Делать на нуленной симпле а-та-та. Цитата Ссылка на сообщение Поделиться на другие сайты
Wallkar Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Значит работать не будет ? Смысл покупать для теста сырую систему.. Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Будет, если все сделать правильно))Откройте этот класс и сравните с соседними файлами...Класс писался под Симплу, а не кривые нуллы. Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Значит работать не будет ? Смысл покупать для теста сырую систему.. Newcms.php прикрепите Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Значит работать не будет ? Смысл покупать для теста сырую систему..А смысл использовать кривой нулл? В отличии от вашего нулла оригинальная симпла работает на ура, и многие дополнения ставятся без проблем. Мало того симплу можно использовать на локалхосте и для этого не нужен нулл. P.S. Вообще не люблю работать с шаровиками которые хотят все, а платить не хотят ни копейки. Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 В этом нулле переделано немного ядро, точнее не переделано, а автозаменой поменяно Simpla на Newcms Класс, написанный для Симлы, начинается примерно так require_once('Simpla.php'); class Blog extends Simpla { А в нулле все немного по-другому Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 3 августа, 2015 Жалоба Поделиться Опубликовано 3 августа, 2015 Поэтому ставить на НУЛЛ модули, написанные для чистой Симплы, а потом кричать - НЕ РАБОТАЕТ!!! Это глупо. Если есть какой-то опыт программирования - ищите отличия, если нет - ставте ЧИСТУЮ Симплу и убедитесь, что все ОК.Хотя про Новую Почту - не уверен Сам потратил неделю, чтобы нормально заточить работу с НП. Но это уже проблемы не Симплы...Я офигел, когда увидел, что ответ сервера НП для Харькова или Киева имеет одну структуру, а для Ровно или Николаева - другую Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 Приветствую всех добрых людей)ребят пытаюсь реализовать даный модуль но что то не получается1. для тех у кого нулл то в место require_once('Simpla.php'); class NP extends Simpla{ писать такrequire_once('Newcms.php'); class NP extends Newcms{и клас не забудьте прописать (дело в точ что автор пишет создайте файл np.php а клас обозвал 'NP' => 'novaposhta' а необходимо писать так 'NP' => 'np' теперь перейдем к моим бедам (1 я ошибка такого рода (PHP Notice: Undefined property: stdClass::$delivery_number in /home/ya/public_html/ya/view/OrderView.php on line 116 2 я ошибка такого родаPHP Warning: simplexml_load_string(): Entity: line 1: parser error : Start tag expected, '<' not found in /home/ya/public_html/ya/api/np.php on line 186 вот код по первой ошибке// Получим статус посылки по номеру ТТН от Новой почты $this->design->assign('tracking', $this->NP->tracking($order->delivery_number)); вот код по второй public function tracking($ttn){ $ttn = '20450005836914'; $xml=' <?xml version=\"1.0\" encoding=\"UTF-8\"?> <file> <auth>'.$this->api_key.'</auth> <tracking> <barcode>'.$ttn.'</barcode> </tracking> </file>'; $xml = simplexml_load_string($this->send($xml)); //var_dump($xml); return($xml); } } 186 строка здесь $xml = simplexml_load_string($this->send($xml)); что я делаю не так? модуль не работает, версия php 5.6 может от этого прошу помочь знающих спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 если я правильно понимаю по первой ошибке она от того происходит что мы добавили в базу данных новое поле delivery_number но не запросили данные из нее и когда обращыемся к функции tracking в файле np.php мы передаем пустое поле от того и лезит данная ошибка или может от того что в файле OrderView.php не понят что это за переменная так ккак она не где не определена? где я прав и как это все исправить? Цитата Ссылка на сообщение Поделиться на другие сайты
Julius123 Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 Я так и не понял как сделать автозаполнение поля Адрес при оформлении заказа из БД новой почты? Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 Я так и не понял как сделать автозаполнение поля Адрес при оформлении заказа из БД новой почты?в каком смысле что бы из бд брало или что обы из апи новой почты? Цитата Ссылка на сообщение Поделиться на другие сайты
Julius123 Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 в каком смысле что бы из бд брало или что обы из апи новой почты?это я не так сказал из api Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 это я не так сказал из apiа какой модуль используешь? напиши весть код апи что исползуем и как в шаблоне прописываешь Цитата Ссылка на сообщение Поделиться на другие сайты
Julius123 Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 а какой модуль используешь? напиши весть код апи что исползуем и как в шаблоне прописываешьapi я сейчас вообще не использую, только хочу сделать автозаполнение с помощью апи, которое в этой теме Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 ну так в первом посте там указано как получить яя позже нарисую как это сделать ) Цитата Ссылка на сообщение Поделиться на другие сайты
sashagomel Опубликовано 24 октября, 2015 Жалоба Поделиться Опубликовано 24 октября, 2015 обращаю к пользователю который для себя писал интеграцию с почтой у тебя работает? допиши пожалуйста кода не хватает! спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
wildrock Опубликовано 23 декабря, 2015 Жалоба Поделиться Опубликовано 23 декабря, 2015 Итак пишу, как сделал у себя:Принцип такой: В поле таблицы заказов добавил поле с номером ТТН(это номер руками вбивает администратор после отправки груза), и в шаблоне статуса заказа админской части, и в шаблоне статуса заказа для пользователя выводится статус посылки по этому ТТН, полученный по API Новой Почты. В папке api/ создаем файл NP.php c содержимым: <?php require_once('Simpla.php'); class NP extends Simpla{ /* Город отправителя */ public $out_city='Киев'; /* Отправитель */ public $out_company='ПП Петров'; /* Склад */ public $out_warehouse='1'; /* Представитель отправителя */ public $out_name='Петров Иван Иваныч'; /* Телефон отправителя */ public $out_phone='0671234567'; /* API ключ */ public $api_key='0166186b16d0e49771a0aebf25ac4770'; /* Описание посылки */ public $description='Взуття'; /* Описание упаковки */ public $pack='Коробка'; /** * Функция отправки запроса на сервер Новой почты $xml — запрос */ public function send($xml){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://orders.novaposhta.ua/xml.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml")); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $response = curl_exec($ch); curl_close($ch); return $response; } /** * Запрос на расчёт стоимости доставки $to_city — город получатель $weight — вес $pub_price — заявленная стоимость $height — высота коробки $width — ширина коробки $depth — длинна коробки */ public function price($to_city,$weight,$pub_price,$date,$height=0,$width=0,$depth=0){ $xml='<?xml version="1.0" encoding="utf-8"?> <file> <auth>'.NP::$api_key.'</auth> <countPrice> <senderCity>'.NP::$out_city.'</senderCity> <recipientCity>'.$to_city.'</recipientCity> <mass>'.$weight.'</mass> <height>'.$depth.'</height> <width>'.$width.'</width> <depth>'.$depth.'</depth> <publicPrice>'.$pub_price.'</publicPrice> <deliveryType_id>4</deliveryType_id> <floor_count>0</floor_count> <date>'.$date.'</date> </countPrice> </file>'; $xml = simplexml_load_string(NP::send($xml)); return $xml->cost; } /** * Запрос на создание декларации на отправку $order_id — номер заказа на вашем сайте (для вашего удобства) $city — город получения $warehouse — номер склада получения $name — имя получателя $surname — фамилия получателя $phone — телефон получателя $weight — вес посылки $pub_price — заявленная стоимость $date — дата отправки $payer — плательщик (1 — получатель, 0 — отправитель, 2 — третья сторона) */ public function ttn($order_id,$city,$warehouse,$name,$surname,$phone,$weight,$pub_price,$date,$payer=0){ $xml='<?xml version="1.0" encoding="utf-8"?> <file> <auth>'.NP::$api_key.'</auth> <order order_id="'.$order_id.'" sender_city="'.NP::$out_city.'" sender_company="'.NP::$out_company.'" sender_address="'.NP::$out_warehouse.'" sender_contact="'.NP::$out_name.'" sender_phone="'.NP::$out_phone.'" rcpt_city_name="'.$city.'" rcpt_name="ПП '.$surname.'" rcpt_warehouse="'.$warehouse.'" rcpt_contact="'.$name.'" rcpt_phone_num="'.$phone.'" pack_type="'.NP::$pack.'" description="'.NP::$description.'" pay_type="1" payer="'.$payer.'" cost="'.$pub_price.'" date="'.$date.'" weight="'.$weight.'"> <order_cont cont_description="'.NP::$description.'" /> </order> </file>'; $xml = simplexml_load_string(NP::send($xml)); return array('oid'=>$order_id,'ttn'=>trim($xml->order->attributes()->np_id)); } /** * Запрос на удаление декларации из базы Новой почты $ttn — номер декларации, которую нужно удалить */ public function remove($ttn){ $xml='<?xml version="1.0" encoding="utf-8"?> <file> <auth>'.NP::$api_key.'</auth> <close>'.$ttn.'</close> </file>'; $xml = simplexml_load_string(NP::send($xml)); } /** * Запрос на печать маркировок для декларации (производит перенаправление на страницу печати) $ttn — номер декларации, которую нужно напечатать */ public function printit($ttn){ header('location: http://orders.novaposhta.ua/pformn.php?o='.$ttn.'&num_copy=4&token='.NP::$api_key); } /** * Запрос на получение списка складов Новой почты для определённого города (или полный список, если город не указан) $filter — город, по которому нужно отфильтровать список складов Новой почты */ public function warenhouse($filter=false){ $xml='<?xml version="1.0" encoding="utf-8"?> <file> <auth>'.NP::$api_key.'</auth> <warenhouse/>'; if($filter){ $xml.='<filter>'.$filter.'</filter>'; } $xml.='</file>'; $xml = simplexml_load_string(NP::send($xml)); return($xml); } /** * Запрос на получение списка населённых пунктов, в которых есть склады Новой почты */ public function city(){ $xml='<?xml version="1.0" encoding="utf-8"?> <file> <auth>'.NP::$api_key.'</auth> <city/> </file>'; $xml = simplexml_load_string(NP::send($xml)); return($xml); } public function tracking($ttn){ $xml=' <?xml version="1.0" encoding="UTF-8"?> <file> <auth>'.$this->api_key.'</auth> <tracking> <barcode>'.$ttn.'</barcode> </tracking> </file>'; $xml = simplexml_load_string($this->send($xml)); //var_dump($xml); return($xml); } } Далее в таблицу s_orders, добавим поле:Теперь в файле simpla/OrderAdmin.phpпосле кода: $order->comment = $this->request->post('comment'); Добавим: $order->delivery_number = $this->request->post('delivery_number'); перед кодом: $this->design->assign('purchases', $purchases); $this->design->assign('purchases_count', $purchases_count); $this->design->assign('subtotal', $subtotal); $this->design->assign('order', $order);Добавляем: //Статус по номеру ТТН из новой почты if ($order->delivery_number) { $this->design->assign('tracking', $this->np->tracking($order->delivery_number)); } В шаблоне: simpla/design/html/order.tplпосле: <li> <label class=property>Адрес <a href='http://maps.yandex.ru/' id=address_link target=_blank><img align=absmiddle src='design/images/map.png' alt='Карта в новом окне' title='Карта в новом окне'></a></label> <div class="edit_order_detail" style='display:none;'> <textarea name="address">{$order->address|escape}</textarea> </div> <div class="view_order_detail"> {$order->address|escape} </div> </li> Добавляем: <li> <label class=property>Номер посылки</label> <div class="edit_order_detail" style='display:none;'> <input name=" delivery_number" class="simpla_inp " type="text" value="{$order-> delivery_number|escape}" /> </div> <div class="view_order_detail"> {$order-> delivery_number|escape} </div> </li> <li> <label class=property>Статус посылки</label> <div class="view_order_detail"> <b>{$tracking->document["status"]}</b> </div> </li> Далее, в файле view\OrderView.php:После кода: // Все валюты $this->design->assign('all_currencies', $this->money->get_currencies()); Добавим: // Получим статус посылки по номеру ТТН от Новой почты $this->design->assign('tracking', $this->np->tracking($order->delivery_number)); И наконец в шаблоне пользователя design/вашшаблон/order.tplпосле: {if $order->name} <tr> <td> Имя </td> <td> {$order->name|escape} </td> </tr> {/if} Добавляем инфу о номере и статусе посылки: {if $order->delivery_number} <tr> <td> Номер посылки </td> <td> {$order->delivery_number|escape} <br /> Статус в Новой Почте: <br /> <b>{$tracking->document["status"]}</b> </td> </tr> {/if} Вроде бы все.Если что забыл пишите.Голову сломал не работает Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 23 декабря, 2015 Жалоба Поделиться Опубликовано 23 декабря, 2015 Вот на кой черт все это цитировать? Цитата Ссылка на сообщение Поделиться на другие сайты
wildrock Опубликовано 23 декабря, 2015 Жалоба Поделиться Опубликовано 23 декабря, 2015 Вот на кой черт все это цитировать?Cори мать усталость сказывается. Цитата Ссылка на сообщение Поделиться на другие сайты
extazlike Опубликовано 30 марта, 2016 Жалоба Поделиться Опубликовано 30 марта, 2016 (изменено) Господа, есть кто сможет установить вывод списка городов и отделения за небольшую плату? Изменено 30 марта, 2016 пользователем extazlike Цитата Ссылка на сообщение Поделиться на другие сайты
Julius123 Опубликовано 4 декабря, 2017 Жалоба Поделиться Опубликовано 4 декабря, 2017 (изменено) я так понимаю у НП новое апи 2.0 и это все уже не актуально ? Изменено 4 декабря, 2017 пользователем Julius123 Цитата Ссылка на сообщение Поделиться на другие сайты
n1c Опубликовано 10 мая, 2019 Жалоба Поделиться Опубликовано 10 мая, 2019 При выборе варианта доставки Новая почта, пользователю предлагаетсявыбрать город и подходящий склад для доставки на него товаров. Эта информацияпередается при оформлении заказа в поле «Адрес доставки». создаем в ajax/np.php <?php session_start(); chdir('..'); require_once('api/Simpla.php'); $simpla = new Simpla(); $xml = "<?xml version='1.0' encoding='utf-8'?> <file> <auth>".$simpla->settings->newpost_key."</auth> <city/> </file> "; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://orders.novaposhta.ua/xml.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml")); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $response = curl_exec($ch); curl_close($ch); $resp = new SimpleXMLElement($response); print "<option></option>"; foreach ($resp as $res) { foreach ($res as $cities) { foreach ($cities as $city) { print "<option>". $city->nameRu. "</option>"; } } } ?> ajax/npware.php <?php session_start(); chdir('..'); require_once('api/Simpla.php'); $simpla = new Simpla(); $city = $simpla->request->get('city', 'str'); $xml = "<?xml version='1.0' encoding='utf-8'?> <file> <auth>".$simpla->settings->newpost_key."</auth> <warenhouse/> <filter>".$city."</filter> </file> "; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://orders.novaposhta.ua/xml.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml")); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $response = curl_exec($ch); curl_close($ch); $resp = new SimpleXMLElement($response); print "<option></option>"; foreach ($resp as $res) { foreach ($res as $wares) { foreach ($wares as $ware) { print "<option>". $ware->addressRu. "</option>"; } } } ?> в simpla/SettingsAdmin после if($this->request->method('POST')) { добавить $this->settings->newpost_key = $this->request->post('newpost_key'); в simpla/design/html/settings.tpl добавляем <div class="block layer"> <h2>Новая Почта</h2> <ul> <li><label class=property>Ключ API доставки «Новая Почта»</label><input name="newpost_key" class="simpla_inp" type="text" value="{$settings->newpost_key|escape}" /></li> </ul> </div> в шаблон cart.tpl {* Шаблон корзины *} {$meta_title = "Корзина" scope=parent} <!--Новая почта--> <script src="http://cdnjs.cloudflare.com/ajax/libs/chosen/1.0/chosen.jquery.js"></script> <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/chosen/1.0/chosen.min.css"> <!--Новая почта--> <h1> {if $cart->purchases}В корзине {$cart->total_products} {$cart->total_products|plural:'товар':'товаров':'товара'} {else}Корзина пуста{/if} </h1> {if $cart->purchases} <form method="post" name="cart"> {* Список покупок *} <table id="purchases"> {foreach from=$cart->purchases item=purchase} <tr> {* Изображение товара *} <td class="image"> {$image = $purchase->product->images|first} {if $image} <a href="products/{$purchase->product->url}"><img src="{$image->filename|resize:50:50}" alt="{$product->name|escape}"></a> {/if} </td> {* Название товара *} <td class="name"> <a href="products/{$purchase->product->url}">{$purchase->product->name|escape}</a> {$purchase->variant->name|escape} </td> {* Цена за единицу *} <td class="price"> {($purchase->variant->price)|convert} {$currency->sign} </td> {* Количество *} <td class="amount"> <select name="amounts[{$purchase->variant->id}]" onchange="document.cart.submit();"> {section name=amounts start=1 loop=$purchase->variant->stock+1 step=1} <option value="{$smarty.section.amounts.index}" {if $purchase->amount==$smarty.section.amounts.index}selected{/if}>{$smarty.section.amounts.index} {$settings->units}</option> {/section} </select> </td> {* Цена *} <td class="price"> {($purchase->variant->price*$purchase->amount)|convert} {$currency->sign} </td> {* Удалить из корзины *} <td class="remove"> <a href="cart/remove/{$purchase->variant->id}"> <img src="design/{$settings->theme}/images/delete.png" title="Удалить из корзины" alt="Удалить из корзины"> </a> </td> </tr> {/foreach} {if $user->discount} <tr> <th class="image"></th> <th class="name">скидка</th> <th class="price"></th> <th class="amount"></th> <th class="price"> {$user->discount} % </th> <th class="remove"></th> </tr> {/if} {if $coupon_request} <tr class="coupon"> <th class="image"></th> <th class="name" colspan="3">Код купона или подарочного ваучера {if $coupon_error} <div class="message_error"> {if $coupon_error == 'invalid'}Купон недействителен{/if} </div> {/if} <div> <input type="text" name="coupon_code" value="{$cart->coupon->code|escape}" class="coupon_code"> </div> {if $cart->coupon->min_order_price>0}(купон {$cart->coupon->code|escape} действует для заказов от {$cart->coupon->min_order_price|convert} {$currency->sign}){/if} <div> <input type="button" name="apply_coupon" value="Применить купон" onclick="document.cart.submit();"> </div> </th> <th class="price"> {if $cart->coupon_discount>0} −{$cart->coupon_discount|convert} {$currency->sign} {/if} </th> <th class="remove"></th> </tr> {literal} <script> $("input[name='coupon_code']").keypress(function(event){ if(event.keyCode == 13){ $("input[name='name']").attr('data-format', ''); $("input[name='email']").attr('data-format', ''); document.cart.submit(); } }); </script> {/literal} {/if} <tr> <th class="image"></th> <th class="name"></th> <th class="price" colspan="4"> Итого {$cart->total_price|convert} {$currency->sign} </th> </tr> </table> {* Связанные товары *} {* {if $related_products} <h2>Так же советуем посмотреть</h2> <!-- Список каталога товаров--> <ul class="tiny_products"> {foreach $related_products as $product} <!-- Товар--> <li class="product"> <!-- Фото товара --> {if $product->image} <div class="image"> <a href="products/{$product->url}"><img src="{$product->image->filename|resize:200:200}" alt="{$product->name|escape}"/></a> </div> {/if} <!-- Фото товара (The End) --> <!-- Название товара --> <h3><a data-product="{$product->id}" href="products/{$product->url}">{$product->name|escape}</a></h3> <!-- Название товара (The End) --> {if $product->variants|count > 0} <!-- Выбор варианта товара --> <table> {foreach $product->variants as $v} <tr class="variant"> <td> {if $v->name}<label class="variant_name" for="related_{$v->id}">{$v->name}</label>{/if} </td> <td> {if $v->compare_price > 0}<span class="compare_price">{$v->compare_price|convert}</span>{/if} <span class="price">{$v->price|convert} <span class="currency">{$currency->sign|escape}</span></span> </td> <td> <a href="cart?variant={$v->id}">в корзину</a> </td> </tr> {/foreach} </table> <!-- Выбор варианта товара (The End) --> {else} Нет в наличии {/if} </li> <!-- Товар (The End)--> {/foreach} </ul> {/if} *} {* Доставка *} {if $deliveries} <h2>Выберите способ доставки:</h2> <ul id="deliveries"> {foreach $deliveries as $delivery} <li> <div class="checkbox"> <input type="radio" name="delivery_id" value="{$delivery->id}" {if $delivery_id==$delivery->id}checked{elseif $delivery@first}checked{/if} id="deliveries_{$delivery->id}"> </div> <h3> <label for="deliveries_{$delivery->id}"> {$delivery->name} {if $cart->total_price < $delivery->free_from && $delivery->price>0} ({$delivery->price|convert} {$currency->sign}) {elseif $cart->total_price >= $delivery->free_from} (бесплатно) {/if} </label> </h3> <!--Новая Почта--> {if stristr($delivery->name,"Новая Почта")||stristr($delivery->name,"Нова Пошта")} <div class="seldiv" id="delivery_new_post" style="margin-left:5px; display:none"> <label style=""><span class="labelcity">Город: </span></label> <select data-placeholder="Выберете город" style="width:350px;" tabindex="1"class="npcity"> </select> <p style="padding-bottom: 10px;"></p> <label style="display:inline"><span class="labelware" style="display:none">Отделение: </span></label> <select data-placeholder="Выберете отделение" class="npware" style="display:none!important"> </select> </div> {/if} <!--Новая Почта--> <div class="description"> {$delivery->description} </div> </li> {/foreach} </ul> {/if} <h2>Адрес получателя</h2> <div class="form cart_form"> {if $error} <div class="message_error"> {if $error == 'empty_name'}Введите имя{/if} {if $error == 'empty_email'}Введите email{/if} {if $error == 'captcha'}Капча введена неверно{/if} </div> {/if} <label>Имя, фамилия</label> <input name="name" type="text" value="{$name|escape}" data-format=".+" data-notice="Введите имя"/> <label>Email</label> <input name="email" type="text" value="{$email|escape}" data-format="email" data-notice="Введите email" /> <label>Телефон</label> <input name="phone" type="text" value="{$phone|escape}" /> <label>Адрес доставки</label> <!--Новая Почта--> <!--<input name="address" type="text" value="{$address|escape}"/>--> <input name="address" id="adrchoise" type="text" value="{$address|escape}"/> <!--Новая Почта--> <label>Комментарий к заказу</label> <textarea name="comment" id="order_comment">{$comment|escape}</textarea> <div class="captcha"><img src="captcha/image.php?{math equation='rand(10,10000)'}" alt='captcha'/></div> <input class="input_captcha" id="comment_captcha" type="text" name="captcha_code" value="" data-format="\d\d\d\d" data-notice="Введите капчу"/> <input type="submit" name="checkout" class="button" value="Оформить заказ"> </div> </form> {else} В корзине нет товаров {/if} <!--Новая почта--> {literal} <script> $(document).ready(function() { var its = $("input[name=delivery_id]"); var line = its.parent().parent().find(".seldiv"); var seldiv = its.parent().parent().find(".seldiv .npcity"); var cname = its.parent().parent().find(".seldiv .labelcity"); // ssil.hide(); $.ajax({ url: "ajax/np.php", success: function(data) { seldiv.html(data); seldiv.show(); cname.parent().show(); //line.show(); } }); }); $("select.npcity").change(function() { var selt = $(this); var selware = $(this).parent().find(".npware"); var wname = $(this).parent().find(".labelware"); if(selt.val() == '') { wname.hide(); selware.hide(); selware.html(""); $("#adrchoise").val(""); } else $.ajax({ url: "ajax/npware.php", data: {city: selt.val()}, success: function(data) { selware.html(data); wname.show(); selware.show(); } }); }); $("select.npware").change(function() { var seldiv = $(this).parent().find(".npcity"); var citytogo = seldiv.val(); var adrtogo = $(this).val(); $("#adrchoise").val(citytogo + ', ' + adrtogo); }); setInterval(function() { if ($('.npcity').children('option').length>1) { $('.npcity').chosen({width: "25%",no_results_text: "Вашего города нет в списке" }); }; }, 100); $('input[name=delivery_id]').change(function(){ if($(this).parent().parent().find("#delivery_new_post").length > 0) $(".seldiv").show(); else $(".seldiv").hide(); }); </script> {/literal} <!--Новая почта--> Друзья, почему не работает?((ставил на чистую симплу Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.