Jump to content

alexivchenko

Пользователь
  • Content Count

    281
  • Joined

Posts posted by alexivchenko

  1. В api/Orders.php

    заменить

    		if(!empty($filter['keyword']))
    		{
    			$keywords = explode(' ', $filter['keyword']);
    			foreach($keywords as $keyword)
    				$keyword_filter .= $this->db->placehold('AND (o.id = "'.$this->db->escape(trim($keyword)).'" OR o.name LIKE "%'.$this->db->escape(trim($keyword)).'%" OR REPLACE(o.phone, "-", "")  LIKE "%'.$this->db->escape(str_replace('-', '', trim($keyword))).'%" OR o.address LIKE "%'.$this->db->escape(trim($keyword)).'%" )');
    		}

    на 

            if(!empty($filter['keyword'])) {
                $keywords = explode(' ', $filter['keyword']);
                foreach($keywords as $keyword) {
                    $keyword_filter .= $this->db->placehold('AND (
                        o.id = "'.$this->db->escape(trim($keyword)).'" 
                        OR o.name LIKE "%'.$this->db->escape(trim($keyword)).'%" 
                        OR REPLACE(o.phone, "-", "")  LIKE "%'.$this->db->escape(str_replace('-', '', trim($keyword))).'%" 
                        OR o.address LIKE "%'.$this->db->escape(trim($keyword)).'%" 
                        OR o.email LIKE "%'.$this->db->escape(trim($keyword)).'%"
                    ) ');
                }
            }

    в simpla/OrdersAdmin.php 

    заменить 

    $keyword = $this->request->get('keyword', 'string');

    на

    $keyword = $this->request->get('keyword');

     

    Поиск по id, по имени, о телефону, по адресу, по email

  2. 12 минут назад, megauser сказал:

    закомментировал ошибку в api/cart.php

    в cartview.php вывел

     print_r($_POST);

    и выдало в принципе все ок. 

    Array ( [amounts] => Array ( [497] => 1 ) [coupon_code] => [delivery_id] => 2 [name] => test [email] => test@test.ru [phone] => 12121212 [address] => [comment] => [checkout] => Продолжить )

    Стукните в https://t.me/simpla2x

  3. 5 минут назад, megauser сказал:

    да я просто скопировал сайт на бегет, и он работает полноценно. В общем не понятно что с таймвебом происходит.

    Если заказ создаётся, но не перенаправляет на него, значит проблема в сессии которая в /index.php нужно выводить ошибки и закомментировать очистку сессии и распечатать POST и смотреть, что выведет 

  4. Только что, megauser сказал:

    Да думал сам разобраться, сайт старенький. В принципе не горит, просто интересно что проблема не только у меня оказалось и выше что описали происходит у меня. Значит что то с симплой 

    Я не возьму плату, дайте доступ в корень сайта, если у вас много их. Разберёмся в проблеме 

  5. Только что, megauser сказал:

    да вот же, просить хостинг чтоб решили? или можно как то самому ? ( умею вбивать команды через консоль)

    Консоль не поможет, нужно вывести ошибки через .htaccess и исправить их 

  6. 7 минут назад, megauser сказал:

    Да нет, обычный хостинг.

    Есть вариант, что присутствуют ошибки по причине перехода хостера на php7.4 по дефолту. А так как S2.3.7 содержит ошибки, я бы создал поддомен и проверил на S2.3.8 

  7. Если запрос выполняете ниже этих строк

    		// Категория и бренд товара
    		$product->categories = $this->categories->get_categories(array('product_id'=>$product->id));
    		$this->design->assign('brand', $this->brands->get_brand(intval($product->brand_id)));		
    		$this->design->assign('category', reset($product->categories));

    то у вас выведется id текущей категории 

    		$category = reset($product->categories);
    		var_dump($category->id);

     

  8. выполнить запрос к базе:

    ALTER TABLE `s_variants` ADD `purchase_price` DECIMAL(14,2) NULL AFTER `compare_price`;
    ALTER TABLE `s_purchases` ADD `purchase_price` DECIMAL(14,2) NULL AFTER `price`;

    api/Variants.php 

    в функции get_variants() и get_variant()

    добавить

    v.purchase_price,

    после 

    v.price,

    api/Orders.php

    в функцию add_purchase()

    после 

    if(!isset($purchase->price) && !empty($variant))
    	$purchase->price = $variant->price;

    добавить 

    if(!isset($purchase->purchase_price) && !empty($variant))
    	$purchase->purchase_price = $variant->purchase_price;

     

    Для ввода поля закупки у товара

    simpla/design/html/product.tpl

    после

    <li class="variant_discount">Старая, {$currency->sign}</li>

    добавить

    <li class="variant_purchase_price">Закупочная, {$currency->sign}</li>

    после 

    <li class="variant_discount">  <input name="variants[compare_price][]" type="text"   value="{$variant->compare_price|escape}" /></li>

    добавить

    <li class="variant_purchase_price">		<input name="variants[purchase_price][]" type="text" value="{$variant->purchase_price|escape}" /></li>

    и после 

    <li class="variant_discount"><input name="variants[compare_price][]" type="" value="" /></li>

    добавить

    <li class="variant_purchase_price"><input name="variants[purchase_price][]" type="" value="" /></li>

     

    Для вывода цены закупки на странице заказов

    simpla/OrdersAdmin.php

    после 

    // Отображение
    $orders = array();
    foreach($this->orders->get_orders($filter) as $o)
    	$orders[$o->id] = $o;

    добавить

    if(!empty($orders))
    	foreach($this->orders->get_purchases(array('order_id' => array_keys($orders))) as $purchase)
        	$orders[$purchase->order_id]->purchases[] = $purchase;

    simpla/design/html/orders.tpl

    перед

    {if $order->note}
    	<div class="note">{$order->note|escape}</div>
    {/if}

    добавить

    {if $order->purchases}
    	<div class="purchases">
    		<ul>
    			{foreach $order->purchases as $p}
    				<li>
                      	Наименование: {$p->product_name} 
                      	Вариант: {$p->variant_name} 
                      	Количество: {$p->amount} {$settings->units} 
                      	Цена: {$p->price} 
                      	Закупка: {$p->purchase_price}
              		</li>
    			{/foreach}
    		</ul>
    	</div>
    {/if}

    {$p->product_name} - название товара в заказе

    {$p->variant_name} - название варианта товара в заказе

    {$p->amount} - кол-во товара в заказе

    {$p->price} - цена товара в заказе

    {$p->purchase_price} - закупочная цена товара в заказе

     

    Отблагодарить: https://yoomoney.ru/to/41001726440713

  9. 4 часа назад, Damir2019 сказал:

    Спасибо! получилось! оказывается как-то давным давно решил убрать надпись "на главную" из строки, и затерлось название страницы во вкладке "страницы" в админке, поэтому не мог туда зайти никак...здоровья тебе большого добрый человек!=)) мучался уже не один год с этой проблемой...

    Назовите страницу как угодно, чтобы потом не потерять. И просто выключите её, чтобы не отображать на сайте и в меню. 

    Заголовок, описание будут выводится в штатном режиме

  10. 1 час назад, Damir2019 сказал:

    как поменять описание сайта в адресной строке?

    в админке имя сайта изменено как нужно, но в адресной строке отображается по старому - "имя сайта - официальный сайт"! как это изменить??

    стандартно такого вывода нет - "имя сайта - официальный сайт"!

    Вам нужно смотреть на страницах:

    1. http://site.ru/simpla/index.php?module=PageAdmin&id=1

    2. http://site.ru/simpla/index.php?module=SettingsAdmin

    А так же в index.tpl вашего шаблона в разделе <title>, там может указан свой вариант вывода <title>

  11. 2 часа назад, a13x сказал:

    Что будет, если человек запрашивает смс, а ему её не выслали, или она заблочилась у него (антиспам фильтр) или тупо сервер рассылки перегружен, что будет тогда?

    Такая практика оооочень часто встречается когда смс не приходит или приходит минут через 5-10.

    Отправляем код через Ajax на api смс провайдера. После отправки проверяем статус отправки смс от провайдера. Если отправили смс и статус 200:true:send, показываем поле ввода кода, если статус не отправлен (статусы ошибок) или иная причина, не показываем поле и выводим информацию: сервис перегружен или более дружелюбный ответ. 
    Я в случае не отправки, отправлял на  api ещё одного резервного провайдера, но и это не вариант. 
    Решил просто, если не отправлено смс, просто менял форму на телефон и свой пароль, а в следующий раз когда будет заходить уже делал проверку через смс :) 
     

×
×
  • Create New...