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

hostup

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

    29
  • З нами

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

Усі публікації користувача hostup

  1. Статус заказа у меня в админке "Сделка завершена". Насколько я понимаю, для цифровых товаров нужно так. Если я вас правильно понял в модуле WesternBid есть "варианты ответа" Например, ответ 501(товар оплачен) - указываю "Сделка завершена" ответ 412(блокировка по региону) - указываю "отмена" Так это работает? У меня в голове паззл не складывается. Будет покупатель после успешной оплаты перенаправлен на страницу со ссылкой на скачивание, или как-то "выдавать" ему ссылку на success страницу нужно будет вручную? Я вам в личку ссылку на тестовый товар с нулевой стоимостью скинул через Free Checkout. Если не затруднит - гляньте, чтобы можно было понять, подойдёт ли модуль под "мои задачи".
  2. Spectre, здравствуйте. Магазин цифровых товаров на OCStore 2.3, установлен Simple, организован редирект после успешной покупки товара. В моем случае, это, так понимаю, страница site.ru/index.php?route=checkout/success. В вашем модуле для Westernbid есть поля для указания страниц успешной/Неуспешной оплаты? Не очень понимаю как к Western Bid 1.5-2.x-3.x привязать перенаправление на страницу по результатам платежа?
  3. Это есть на скринах самого модуля. В это поле добавляется нужная ссылка. Поле "infoproduct" в таблице создается, но в карточке товара его нет. В настройках - там только, собственно, активация и кол-во дней, сколько будет активна ссылка. Ладно, спасибо всем за участие, отложу этот мод в "ящик нерешенных вопросов", потом, все вопросы буду решать со специалистом на платной основе. Всем беззаботной пятницы, спасибо!
  4. Может и так, но я тогда "теряю веру в логику))". Налил чай, вылил... а выпить? Так или иначе, без строки DROP COLUMN модуль устанавливается, но во вкладке "товары" не появляется поле "Инфопродукты", значит, как утверждает Grand Master Tom, ковырять надо .xml файл. Пути в нем проверил, а какой код отвечает за добавление поля, понять не могу.
  5. В эту сторону и смотрю. Все пути, вида (<file path="") в .xml файле верные. Код, который отвечает за внесение поля в карточку товара имеет какие-л. типичные признаки для поиска в .xml документе? Ну, там ['insert'] или <placehere_...>?
  6. 1. Вычистил все установленные модулем php и tpl из папок и перезалил БД. 2. Установил через админку (без строки) ALTER TABLE `s_product` DROP COLUMN `infoproduct`; 3. Очистил и обновил модификаторы. 4. Активировал модуль в модули/расширения 5. Система-Пользователи-Группа пользователей-Administrator-Выделить все (на просмотр и внесение изменений) Но в карточке товара не появилась заветная строка... Ок, залью, как доделаю сайт, там буде видно...
  7. Grand Master Tom, выше, предложил удалить 3 строки ALTER TABLE `s_product` DROP COLUMN `infoproduct`; DELETE FROM `s_url_alias` WHERE query = 'extension/module/infoproduct'; INSERT INTO `s_url_alias` (`query`, `keyword`) VALUES ('extension/module/infoproduct', 'link'); и модуль установился, но в карте товара не появляется поле "инфопродукт". Он пояснил, что sql код за это не отвечает, а значит, проблемы на стороне install.xml, а если так - там все сложно. Попробую, конечно, сейчас без DROP COLUMN строки закинуть, но вряд ли во вкладке товара от этого строка появится...
  8. Да выполнял... Не удаляется столбец, которого нет... Все больше склоняюсь, что модуль под ос2.3 не становится просто под мою ос2.3.0.2
  9. Версия модуля oc23 мой OCStore 2.3.0.2. может он строго под 2.3, без ....0.2. Ранее, любые модули для 2.3 ложились без выше обозначенных проблем. На счет "не то и не так" - по логике вы правы. Что именно? Хороший вопрос, но все как обычно... Заливал и напрямую и через админку, модификацию обновлял, в списке модулей, модуль активировал. Ну, разве что святой водой монитор не поливал. Ну, да ладно, буду "чесать репу")
  10. Хм, неясно тогда, зачем они нужны. В install.xml - там темный лес для меня (что-куда). Может все же дело в том, что сайт на локалке Openserver и проблемы с настройками mysqli.php? Доделаю сайт, попробую установить модуль на хостинге.
  11. Без "хвоста" из 3 строк модуль установился, но в карточке товара не появляется тогда строка, где нужно вставлять ссылку, т.е., похоже, стал криво. Значит, эти строчки нужны...
  12. Через phpMyadmin то же самое не может удалить столбец, которого нет (что логично)...
  13. Я вас правильно понял - из модуля убираю install.sql, а в phpMySQL добавляю весь код из install.sql именно SQL-запросом? Или что-то из install.sql нужно вычеркнуть / изменить?
  14. В файле install.sql — указано ALTER TABLE `oc_product` При установке модуля — ошибка ALTER TABLE `s_product` Не понял, что куда из вашего ответа, сори.
  15. Приветствую, мастера. В папке модуля есть файл install.sql. При установке модуля, так понимаю, из-за него вываливается ошибка "check that column/key exists: ALTER TABLE `s_product` DROP COLUMN `infoproduct`" in mysqli.php на строке 40. Пробовал менять префикс oc_ на "свой" s_. Т.е. команда не может убрать колонку, которой нет. Сам sql запрос ниже. Укажите направление, кто "в теме", спасибо. Да, и еще, сайт на "локалке" Openserver, может отсюда "ноги растут"? CREATE TABLE IF NOT EXISTS `oc_order_links` ( `link_id` int(11) NOT NULL AUTO_INCREMENT, `order_id` int(11) NOT NULL, `product_id` int(11) NOT NULL, `code` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `date_end` datetime NOT NULL, `ikey` int(11) NOT NULL, PRIMARY KEY (`link_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `oc_product` DROP COLUMN `infoproduct`; ALTER TABLE `oc_product` ADD COLUMN `infoproduct` LONGTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; DELETE FROM `oc_url_alias` WHERE query = 'extension/module/infoproduct'; INSERT INTO `oc_url_alias` (`query`, `keyword`) VALUES ('extension/module/infoproduct', 'link');
  16. 3DO, по сути нужно было вырезать код между тегами <operation>, включая эти теги тоже, для вкладки и содержимого! Я так делал, но у меня product.tpl обновлял product.tpl из modification и получался кавардак. В итоге я запутался, отчаялся и обратился сюда за помощью. 3DO, спасибо за помощь, настроение мое улучшилось!
  17. Здравствуйте. Есть модуль "Загрузка файла" на странице product.tpl, при установке которого в отдельной вкладке появляется файл загрузки. Я его "достал" из вкладки и сделал кнопкой, вставив код ниже в кнопку. <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a> Все ок, но при обновлении модификаторов, в product.tpl снова прописывается вкладка: <?php if ($downloads) { ?> <li><a href="#tab-documentation" data-toggle="tab"><?php echo $tab_documentation; ?></a></li> <?php } ?> И содержимое вкладки: <div class="tab-pane tab-content" id="tab-documentation"> <?php if ($downloads){ ?> <ul style="list-style:none;"> <?php foreach($downloads as $download){ ?> <li><i class="<?php echo $download['icon']; ?>"></i> <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a></li> <?php } ?> </ul> <?php } ?> </div> Что из файла install.xml нужно убрать, чтобы вкладка и ее содержимое снова не прописывались в product.tpl? <?xml version="1.0" encoding="utf-8"?> <modification> <name>Загружаемые файлы во вкладке</name> <code>downloadable_files</code> <version>1.3</version> <author>https://ocmod.net</author> <link>https://ocmod.net</link> <file path="admin/controller/catalog/download.php"> <operation> <search index="0"><![CDATA[128]]></search> <add position="replace"><![CDATA[255]]></add> </operation> <operation> <search trim="true"><![CDATA[if (!is_file(DIR_DOWNLOAD . $this->request->post['filename'])) {]]></search> <add position="replace"><![CDATA[ if (!is_file(DIR_DOWNLOAD . $this->request->post['filename']) AND !preg_match('/^http/',$this->request->post['filename'])) {]]></add> </operation> </file> <file path="catalog/language/*/product/product.php"> <operation> <search index="0"><![CDATA[$_['tab_description']]]></search> <add position="before"><![CDATA[$_['tab_documentation'] = 'Файлы для скачивания';]]></add> </operation> </file> <file path="catalog/model/catalog/product.php"> <operation> <search index="0" trim="true"><![CDATA[public function getTotalProductSpecials() {]]></search> <add position="before"><![CDATA[ public function getDownloads($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_download pd LEFT JOIN " . DB_PREFIX . "download d ON(pd.download_id=d.download_id) LEFT JOIN " . DB_PREFIX . "download_description dd ON(pd.download_id=dd.download_id) WHERE product_id = '" . (int)$product_id . "' AND dd.language_id = '" . (int)$this->config->get('config_language_id')."'"); return $query->rows; } public function getDownload($product_id, $download_id) { $download=""; if($download_id!=0)$download=" AND d.download_id=".(int)$download_id; $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_download pd LEFT JOIN " . DB_PREFIX . "download d ON(pd.download_id=d.download_id) LEFT JOIN " . DB_PREFIX . "download_description dd ON(pd.download_id=dd.download_id) WHERE product_id = '" . (int)$product_id . "' ".$download." AND dd.language_id = '" . (int)$this->config->get('config_language_id')."'"); return $query->row; } ]]></add> </operation> </file> <file path="catalog/controller/product/product.php"> <operation error="skip"> <search index="0" trim="true"><![CDATA[$data['tab_description'] = $this->language->get('tab_description');]]></search> <add position="before"><![CDATA[ $data['tab_documentation'] = $this->language->get('tab_documentation');]]></add> </operation> <operation> <search index="0" trim="true"><![CDATA[public function review() {]]></search> <add position="before"><![CDATA[ public function download() { $this->load->model('catalog/product'); if (isset($this->request->get['download_id'])) { $download_id = $this->request->get['download_id']; } else { $download_id = 0; } if (isset($this->request->get['product_id'])) { $product_id = $this->request->get['product_id']; } else { $product_id = 0; } $download_info = $this->model_catalog_product->getDownload($product_id, $download_id); if ($download_info) { $file = DIR_DOWNLOAD . $download_info['filename']; $mask = basename($download_info['mask']); if (!headers_sent()) { if (file_exists($file)) { //$finfo = new finfo(FILEINFO_MIME); //$mime_type = $finfo->file($file); $mime_type = 'application/octet-stream'; header('Content-Description: File Transfer'); header('Content-Type: '.$mime_type); //application/octet-stream header('Content-Disposition: inline; filename="' . ($mask ? $mask : basename($file)) . '"'); //attachment header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); readfile($file, 'rb'); //$this->model_account_download->updateRemaining($this->request->get['download_id']); exit; } else { exit('Error: Could not find file ' . $file . '!'); } } else { exit('Error: Headers already sent out!'); } } else { $this->redirect(HTTP_SERVER . 'index.php?route=account/download'); } } ]]> </add> </operation> <operation> <search index="0" trim="true"><![CDATA[$this->model_catalog_product->updateViewed($this->request->get['product_id']);]]></search> <add position="before"><![CDATA[ $data['downloads'] = array(); $results = $this->model_catalog_product->getDownloads($this->request->get['product_id']); foreach ($results as $result) { $size = false; $file_exists = file_exists(DIR_DOWNLOAD . $result['filename']); $http = preg_match('/^http/',$result['filename']); if ($file_exists OR $http) { if ($file_exists) { $size = filesize(DIR_DOWNLOAD . $result['filename']); $i = 0; $suffix = array( 'B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB' ); while (($size / 1024) > 1) { $size = $size / 1024; $i++; } } $data['downloads'][] = array( 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'name' => $result['name'], 'size' => ($size)?round(substr($size, 0, strpos($size, '.') + 4), 2) . $suffix[$i]:false, 'href' => ($http)?$result['filename']:$this->url->link('product/product/download', 'product_id='. $this->request->get['product_id']. '&download_id=' . $result['download_id']), 'icon' => ($http)?'fa fa-external-link-square text-primary':'fa fa-download text-success' ); } } ]]> </add> </operation> </file> <file path="catalog/view/theme/*/template/product/product.tpl"> <operation error="skip"> <search index="0" trim="true"><![CDATA[<?php if ($review_status) { ?>]]></search> <add position="before"><![CDATA[ <?php if ($downloads) { ?> <li><a href="#tab-documentation" data-toggle="tab"><?php echo $tab_documentation; ?></a></li> <?php } ?> ]]> </add> </operation> <operation error="skip"> <search index="1" trim="true"><![CDATA[<?php if ($review_status) { ?>]]></search> <add position="before"><![CDATA[ <div class="tab-pane tab-content" id="tab-documentation"> <?php if ($downloads){ ?> <ul style="list-style:none;"> <?php foreach($downloads as $download){ ?> <li><i class="<?php echo $download['icon']; ?>"></i> <a href="<?php echo $download['href']; ?>" title="<?php echo $download['name']; ?>" target="_blank"><?php echo $download['name']; ?><?php echo ($download['size'])?" (". $download['size'] .")":'';?></a></li> <?php } ?> </ul> <?php } ?> </div> ]]> </add> </operation> </file> <!-- For SEO PRO: --> <file path="catalog/controller/*/seo_pro.php"> <operation error="skip"> <search><![CDATA[case 'information_id':]]></search> <add position="after"><![CDATA[ case 'download_id': ]]></add> </operation> </file> <file path="system/library/seopro.php"> <operation error="skip"> <search><![CDATA[case 'information_id':]]></search> <add position="after"><![CDATA[ case 'download_id': ]]></add> </operation> </file> </modification>
  18. Значит, казалось проще, чем оказалось)
  19. Здравствуйте. Пытаюсь адаптировать manufacturer_list.tpl под список товаров в алфавитном порядке. То есть 1 товар = 1 бренд. При этом при клике на ссылку с названием товара, нужно попадать внутрь карточки товара, а не в ее "листинг". Схематически нарисовал, чего я пытаюсь добиться. За доступ к единице товара в manufacturer_list.tpl отвечает код <div class="col-sm-3"><a href="<?php echo $manufacturer['href']; ?>"><?php echo $manufacturer['name']; ?></a></div> Замена в нем $manufacturer на $product не помогает. В php не силен (от слова "совсем"). Полдня "двигаю пятнашки" Может подскажет кто, кому не сложно. Сам manufacturer_list.tpl тоже прикрепил на всякий случай. manufacturer_list.tpl
  20. Победил. <div id="owl-demo" class="image-additional " > <div class="image-additional "> <a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" data-thumb="<?php echo $thumb; ?>" data-key="0"> <img class="img-responsive" src="<?php echo $small; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>"/></a> </div> <?php foreach ($images as $key => $image) { ?> <div> <a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>"data-thumb="<?php echo $image['small']; ?>" data-key="<?php echo $key+1; ?>" > <img class="img-responsive" src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" class="img-responsive" /></a> </div> <?php } ?> </div>
  21. Может поможет кто, как адаптировать код с отображением превьюшек ниже... П.С. сайт на локалке. <li class="row"> <div class="image-additional col-xs-3 col-sm-2"> <a class="thumbnail" href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" data-thumb="<?php echo $thumb; ?>" data-key="0"> <img src="<?php echo $small; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" class="img-responsive" /> </a> </div> <?php foreach ($images as $key => $image) { ?> <div class="image-additional col-xs-3 col-sm-2"> <a class="thumbnail" href="<?php echo $image['popup']; ?>" title="<?php echo $heading_title; ?>" data-thumb="<?php echo $image['small']; ?>" data-key="<?php echo $key+1; ?>"> <img src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" class="img-responsive" /> </a> </div> <?php } ?> </li>
  22. Я, как "продвинутый" пользователь подключил контроллер корзины И в модификаторах product.php И в основном product.php, так что после обновленя кеши "чудо" на месте, проверил.
  23. Разместил указанный вами код в: \system\storage\modification\catalog\model\catalog\product.php и \catalog\controller\product\product.php ... и случилось "чудо", корзина стала на "своё" место! Nash, жму вашу руку, сам бы не справился.
×
×
  • Створити...

Important Information

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