Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Aleksandr1

Новачок
  
  • Публікації

    30
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем Aleksandr1

  1. В 18.01.2018 в 21:51, AWARO сказал:

    какая нафиг 3.0 версия, терпения нет разве подождать стабильную 3.1? будете потом бегать обновите обновите кривая косая - ну так да она ж тестовая.
    или делайте на 2.3 местной сборки..

    Совсем сырая? Я пока на 2.1 сижу;(

  2. Разработка и сопровождение модулей и сайтов

          Мультивалютные товары v. 2.1
    Можно ли подружить с этим модулем. Чтобы и с валютными полями можно было бы взаимодействовать? Очень нужна доработка.
  3. Тогда уж лучше Даниелю отдать все карты и модули брать через оф.сайт!? Не думаю что своё детище перепродавать будет.

     

    А то каждый свою сборку делает, шоп свой у каждого;) На большинство платформ свой официальный маркетплейс, и он только один!

  4. Ну хоть какая то страховка;) С авторами также получается, ушел и все:( А форум хоть подстраховаться даст немного, хотя Вы наверное правы в том что это как с презервативом: вроде проверено электроникой, а гарантии все равно нет;)))

  5. Решил переходить с Opencart 2.3.0.3 rs на Ocstore, вроде по сео лучше и нашел пару непоняток:

    1. При удалении логотипа в хедере появляется ссылка с тегом Н1 (подтягивается из названия магазина)и она работает с главной страницы, ставишь лого и все ок. (Не очень хорошо когда Н1 2 на странице)

    2. Модель в карточке товара перевели как код производителя но в корзине, сравнении и т.д так же стоит модель.

    3. В мобильной версии не работают всплывающие подсказки тогда как в опенкарт все работает.

     

    P.S это только выявленные на первый взгляд.

    Это баги или так и задумано? 

  6. 17 часов назад, Vladzimir сказал:

    Вот и я о чем. Хотите кодировать кодируйте, но ваш модуль тогда не может быть представлен в каталоге. Продавайте его сами у себя на сайте.

    А то получается и рыбку съесть и руки не испачкать.

    Согласен, купил давно модули у небезызвестного "addist" и теперь деньги не могу вернуть после нахождения уязвимости, автор пропал. Поэтому на форуме должна быть страховка в виде раскодированного модуля у администратора, на всякий случай. Защита от недобросовестных авторов.

    З.Ы: Ещё хотелось бы сделать раздел на форуме где были бы списки сайтов разработчиков с указанием рекомендации по автору и модулям.

    • +1 1
  7. 18 минут назад, Kirillove сказал:

    У Вас товар в 1С с характеристиками?

    выгрузите один проблемный товар с логом в режиме "отладка" и пришлите мне его только в личку (так как логи могут содержать полные пути до файлов).

    Также пришлите скрины содержимое таблицы product и product_price с отбором по id проблемного товара.

    Если есть характеристики, тогда еще содержимое таблиц product_feature и product_feature_value (желательно по отбору product_feature_id взятого из таблицы product_price проблемного товара).

    И еще скиньте скрин настроек цен из модуля обмена.

    Хорошо, только смогу завтра прислать файлы. Товар с характеристиками но их я не выгружал, галку снял в 1с.

  8. А есть вариант сделать перебор по картинкам? Допустим есть 100 товаров с одинаковым изображением, и при выгрузке выгружается 100 одинаковых картинок. Много памяти забирает. Возможно сделать проверку картинки и если одинаковые то выгружает 1 картинку к 100 товарам?

  9.  модуль должен работать как доставка с выбором пунктов вывоза или исполнителя доставки, это берется из яндекс доставки. После выбора покупателем доставки в админке появляется заказ с доставкой и ценой, и в интерфейсе яндекс доставки появляется заказ с ФИО и адресом. Почти как в модуле от tabook, только работать все должно напрямую а не через чей нибудь сервер.

  10. Добрый день. Нужно изготовить модуль для работы яндекс доставки с OpenCart 2.1-.2.3  либо виджетом (https://github.com/Yandex-Delivery/Cart-Widget) либо по API (https://yandex.ru/support/delivery/api.xml).

    Сразу уточняю: модуль от "tabook" не предлагать.

  11. <?php
    class ModelLocalisationCurrency extends Model {
    	public function addCurrency($data) {
    		$this->db->query("INSERT INTO " . DB_PREFIX . "currency SET title = '" . $this->db->escape($data['title']) . "', code = '" . $this->db->escape($data['code']) . "', symbol_left = '" . $this->db->escape($data['symbol_left']) . "', symbol_right = '" . $this->db->escape($data['symbol_right']) . "', decimal_place = '" . $this->db->escape($data['decimal_place']) . "', value = '" . $this->db->escape($data['value']) . "', status = '" . (int)$data['status'] . "', date_modified = NOW()");
    
    		if ($this->config->get('config_currency_auto')) {
    			$this->refresh(true);
    		}
    
    		$this->cache->delete('currency');
    	}
    
    	public function editCurrency($currency_id, $data) {
    		$this->db->query("UPDATE " . DB_PREFIX . "currency SET title = '" . $this->db->escape($data['title']) . "', code = '" . $this->db->escape($data['code']) . "', symbol_left = '" . $this->db->escape($data['symbol_left']) . "', symbol_right = '" . $this->db->escape($data['symbol_right']) . "', decimal_place = '" . $this->db->escape($data['decimal_place']) . "', value = '" . $this->db->escape($data['value']) . "', status = '" . (int)$data['status'] . "', date_modified = NOW() WHERE currency_id = '" . (int)$currency_id . "'");
    
    		$this->cache->delete('currency');
    	}
    
    	public function deleteCurrency($currency_id) {
    		$this->db->query("DELETE FROM " . DB_PREFIX . "currency WHERE currency_id = '" . (int)$currency_id . "'");
    
    		$this->cache->delete('currency');
    	}
    
    	public function getCurrency($currency_id) {
    		$query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "currency WHERE currency_id = '" . (int)$currency_id . "'");
    
    		return $query->row;
    	}
    
    	public function getCurrencyByCode($currency) {
    		$query = $this->db->query("SELECT DISTINCT * FROM " . DB_PREFIX . "currency WHERE code = '" . $this->db->escape($currency) . "'");
    
    		return $query->row;
    	}
    
    	public function getCurrencies($data = array()) {
    		if ($data) {
    			$sql = "SELECT * FROM " . DB_PREFIX . "currency";
    
    			$sort_data = array(
    				'title',
    				'code',
    				'value',
    				'date_modified'
    			);
    
    			if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {
    				$sql .= " ORDER BY " . $data['sort'];
    			} else {
    				$sql .= " ORDER BY title";
    			}
    
    			if (isset($data['order']) && ($data['order'] == 'DESC')) {
    				$sql .= " DESC";
    			} else {
    				$sql .= " ASC";
    			}
    
    			if (isset($data['start']) || isset($data['limit'])) {
    				if ($data['start'] < 0) {
    					$data['start'] = 0;
    				}
    
    				if ($data['limit'] < 1) {
    					$data['limit'] = 20;
    				}
    
    				$sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit'];
    			}
    
    			$query = $this->db->query($sql);
    
    			return $query->rows;
    		} else {
    			$currency_data = $this->cache->get('currency');
    
    			if (!$currency_data) {
    				$currency_data = array();
    
    				$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency ORDER BY title ASC");
    
    				foreach ($query->rows as $result) {
    					$currency_data[$result['code']] = array(
    						'currency_id'   => $result['currency_id'],
    						'title'         => $result['title'],
    						'code'          => $result['code'],
    						'symbol_left'   => $result['symbol_left'],
    						'symbol_right'  => $result['symbol_right'],
    						'decimal_place' => $result['decimal_place'],
    						'value'         => $result['value'],
    						'status'        => $result['status'],
    						'date_modified' => $result['date_modified']
    					);
    				}
    
    				$this->cache->set('currency', $currency_data);
    			}
    
    			return $currency_data;
    		}
    	}
    
    	public function refresh($force = false) {
    		if (extension_loaded('curl')) {
    			$data = array();
    
    			if ($force) {
    				$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "'");
    			} else {
    				$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "' AND date_modified < '" .  $this->db->escape(date('Y-m-d H:i:s', strtotime('-1 day'))) . "'");
    			}
    
    			foreach ($query->rows as $result) {
    				$data[] = $this->config->get('config_currency') . $result['code'] . '=X';
    			}
    
    			////// Курсы по ЦБ РФ //////
    			$ch = curl_init();
    			curl_setopt($ch, CURLOPT_URL, 'http://www.cbr.ru/scripts/XML_daily.asp');
    			curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    			$content = curl_exec($ch);
    			curl_close($ch);
    
    			$doc = new DOMDocument();
    			$doc->loadXML($content);
    			$valute = $doc->getElementsByTagName("Valute");
    			
    			$cur_val = $this->config->get('config_currency') == 'RUB' ? 'RUB' : $this->config->get('config_currency');
    	
    			$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "'");
    
    			$ret = array();
    
    			foreach( $valute as $value )
    			{
    				$icn = $value->childNodes;
    				$code = $icn->item(3)->nodeValue;
    				$nom = intval($icn->item(5)->nodeValue);
    				$value = floatval(str_replace(",", "." , $icn->item(9)->nodeValue));
    				$ret[$code] = ($value/$nom);
    			}
    
    			if ($cur_val == 'RUB') {
    				foreach ($query->rows as $result) {
    					 if($ret[$result['code']]){
    						$value = 1 / $ret[$result['code']];
    
    						if ((float)$value) {
    							$this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '" . (float)$value . "', date_modified = NOW() WHERE code = '" . $this->db->escape($result['code']) . "'");
    						}
    					 }
    				}
    			}
    
    			if ($cur_val != 'RUB') {
    				foreach ($query->rows as $result) {
    					if($result['code'] == 'RUB') {
    					$value = $ret[$cur_val];
    					if ((float)$value) {
    						$this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '" . (float)$value . "', date_modified = NOW() WHERE code = 'RUB'");
    					}
    					} else {
    						$value = $ret[$result['code']];
    						if ((float)$value) {
    						$val = (float)$ret[$cur_val] / (float)$value;
    							$this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '" . $val . "', date_modified = NOW() WHERE code = '" . $this->db->escape($result['code']) . "'");
    						}
    					}
    				}
    			}		
    			
    			/////////			
    			
    
    			$this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '1.00000', date_modified = '" .  $this->db->escape(date('Y-m-d H:i:s')) . "' WHERE code = '" . $this->db->escape($this->config->get('config_currency')) . "'");
    
    			$this->cache->delete('currency');
    		}
    	}
    
    	public function getTotalCurrencies() {
    		$query = $this->db->query("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "currency");
    
    		return $query->row['total'];
    	}
    }
    

    У меня модифицирован файл под курсы с ЦБ РФ, и строчек нужных нет ;((( Что делать?

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.