Перейти к содержанию

Рекомендуемые сообщения

Всем привет! Разрабатываю свой первый модуль для Opencart 1.5.5.1.2 и возникла проблема с возвратом значений из контроллера в шаблон через AJAX. Изначально делал всё по руководствам в Интернете. 
 
Контроллер (прошу извинить, не понял, как форматировать код в спойлере): 

 


class ControllerModuleMyModule extends Controller {

private $error = array();

public function index() {
//Load the language file for this module
$this->load->language('module/my_module');

//Set the title from the language file $_['heading_title'] string
$this->document->setTitle($this->language->get('heading_title'));

//Load the settings model. You can also add any other models you want to load here.
$this->load->model('setting/setting');

//Save the settings if the user has submitted the admin form (ie if someone has pressed save).
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
$this->model_setting_setting->editSetting('my_module', $this->request->post);

$this->session->data['success'] = $this->language->get('text_success');

$this->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'));
}

//This is how the language gets pulled through from the language file.
//
// If you want to use any extra language items - ie extra text on your admin page for any reason,
// then just add an extra line to the $text_strings array with the name you want to call the extra text,
// then add the same named item to the $_[] array in the language file.
//
// 'my_module_example' is added here as an example of how to add - see admin/language/english/module/my_module.php for the
// other required part.

$text_strings = array(
'heading_title',
'text_enabled',
'text_disabled',
'text_content_top',
'text_content_bottom',
'text_column_left',
'text_column_right',
'entry_layout',
'entry_limit',
'entry_image',
'entry_position',
'entry_status',
'entry_sort_order',
'button_save',
'button_cancel',
'button_add_module',
'button_remove',
'entry_cat_before',
'entry_part_name',
'entry_cat_after',
'entry_example' //this is an example extra field added
);

foreach ($text_strings as $text) {
$this->data[$text] = $this->language->get($text);
}
//END LANGUAGE

//The following code pulls in the required data from either config files or user
//submitted data (when the user presses save in admin). Add any extra config data
// you want to store.
//
// NOTE: These must have the same names as the form data in your my_module.tpl file
//
$config_data = array(
'my_module_example' //this becomes available in our view by the foreach loop just below.
);

foreach ($config_data as $conf) {
if (isset($this->request->post[$conf])) {
$this->data[$conf] = $this->request->post[$conf];
} else {
$this->data[$conf] = $this->config->get($conf);
}
}

//This creates an error message. The error['warning'] variable is set by the call to function validate() in this controller (below)
if (isset($this->error['warning'])) {
$this->data['error_warning'] = $this->error['warning'];
} else {
$this->data['error_warning'] = '';
}

//SET UP BREADCRUMB TRAIL. YOU WILL NOT NEED TO MODIFY THIS UNLESS YOU CHANGE YOUR MODULE NAME.
$this->data['breadcrumbs'] = array();

$this->data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/home', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => false
);

$this->data['breadcrumbs'][] = array(
'text' => $this->language->get('text_module'),
'href' => $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => ' :: '
);

$this->data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('module/my_module', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => ' :: '
);

$this->data['action'] = $this->url->link('module/my_module', 'token=' . $this->session->data['token'], 'SSL');

$this->data['cancel'] = $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL');


//This code handles the situation where you have multiple instances of this module, for different layouts.
$this->data['modules'] = array();

if (isset($this->request->post['my_module_module'])) {
$this->data['modules'] = $this->request->post['my_module_module'];
} elseif ($this->config->get('my_module_module')) {
$this->data['modules'] = $this->config->get('my_module_module');
}

$this->load->model('design/layout');

$this->data['layouts'] = $this->model_design_layout->getLayouts();

//Choose which template file will be used to display this request.
$this->template = 'module/my_module.tpl';
$this->children = array(
'common/header',
'common/footer',
);

/*My test module*/
//Taking all parent categories
$this->load->model('catalog/category');
$this->data['module_category'] = $this->model_catalog_category->getAllCategories();  //выводит список категорий в <select> 

/*End of test module*/
//Send the output.
$this->response->setOutput($this->render());

}

/*Моя функция для обработки AJAX*/
public function aj(){
      $this->load->language('module/my_module');
      $category_id = $this->request->get['category_id'];

      if ($category_id > 0) {
            //loading the AJAX
            $this->template = 'module/my_module.tpl';
            $this->load->model('catalog/product');
            $product = $this->model_catalog_product->getProduct($category_id);
            $data['product'] = $product;
            $this->response->setOutput($this->render());
}


/*
* This function is called to ensure that the settings chosen by the admin user are allowed/valid.
* You can add checks in here of your own.
*
*/

private function validate() {
if (!$this->user->hasPermission('modify', 'module/my_module')) {
$this->error['warning'] = $this->language->get('error_permission');
}

if (!$this->error) {
return TRUE;
} else {
return FALSE;
}
}

}
?>


 

AJAX функция в шаблоне (срабатывает при выборе нужного значения в списке <select>):

 $('#category').on('change', function() {
        $.ajax({
          type: 'get',
          url: 'index.php?route=module/my_module/aj&token=<?php echo $token; ?>',
          data: 'category_id='+this.value,
          dataType: 'html',
          beforeSend: function(){
              console.log("Send");
          },
          success: function(htmlText){
              console.log(htmlText);
        },
        error: function(xhr, textStatus, error){
          console.log(xhr.responseText);
          console.log(textStatus);
          console.log(error);
      }
    }); 

Первая проблема в том, что контроллер не может поймать параметры get запроса и, как следствие, обработать его. Вторая проблема - даже если я пишу простую переменную в функции-обработчике, в ответе console.log(xhr.responseText) выводит весь HTML код шаблона.

 

Я пробовал делать всё через JSON (создавал простой массив в функции контроллера и ставил его на вывод через $this->response->setOutput(json_encode($json))), но из-за проблемы с выводом в AJAX была ошибка парсинга JSON (т.к. выводится весь HTML код, а не ожидаемая пара "ключ-значение"). 

 

Что я делаю не так? 

 

Заранее благодарен за помощь. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если json

$this->response->addHeader('Content-Type: application/json');
$this->response->setOutput(json_encode( ..тут возврат массива в json.. ));
 $('#category').on('change', function() {

    var id = 'category_id='+this.value;

    $.ajax({
        type: 'GET',
        url: 'index.php?route=module/my_module/aj',
        data: id,
        dataType: 'html',
        beforeSend: function(){
          console.log("Send");
        },
        success: function(htmlText){
          console.log(htmlText);
        },
        error: function(xhr, textStatus, error){
          console.log(xhr.responseText);
          console.log(textStatus);
          console.log(error);
      }
    });
public function aj(){
  
    $this->load->language('module/my_module');
    if isset($this->request->get['category_id']) {

      $product = $this->model_catalog_product->getProduct($category_id);

      $this->response->setOutput($product);

      if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/my_module.tpl'))  
          $this->template = $this->config->get('config_template') . '/template/module/my_module.tpl';
      else $this->template = 'default/template/module/my_module.tpl'; 
    } else  $this->response->setOutput('ERROR');

} 

Пробуйте так, писал на скорую руку мог и ошибиться

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если json

$this->response->addHeader('Content-Type: application/json');
$this->response->setOutput(json_encode( ..тут возврат массива в json.. ));
 $('#category').on('change', function() {

    var id = 'category_id='+this.value;

    $.ajax({
        type: 'GET',
        url: 'index.php?route=module/my_module/aj',
        data: id,
        dataType: 'html',
        beforeSend: function(){
          console.log("Send");
        },
        success: function(htmlText){
          console.log(htmlText);
        },
        error: function(xhr, textStatus, error){
          console.log(xhr.responseText);
          console.log(textStatus);
          console.log(error);
      }
    });
public function aj(){
  
    $this->load->language('module/my_module');
    if isset($this->request->get['category_id']) {

      $product = $this->model_catalog_product->getProduct($category_id);

      $this->response->setOutput($product);

      if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/my_module.tpl'))  
          $this->template = $this->config->get('config_template') . '/template/module/my_module.tpl';
      else $this->template = 'default/template/module/my_module.tpl'; 
    } else  $this->response->setOutput('ERROR');

} 

Пробуйте так, писал на скорую руку мог и ошибиться

 

А где ставить заголовки и json output? В функции index или в функции для ajax? 

Пока создал функцию по образцу вашей, отредактировал ajax запрос, результат вывел в alert(htmlText), получилось то, что на скриншоте во вложении.  

post-711288-0-45204800-1464795167_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для начала поясните что он должен делать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для начала поясните что он должен делать

Он должен принимать через get запрос выбранную категорию (из списка <select> в шаблоне) в контроллер, затем переданная категория служит аргументом для функции getProductsByCategoryId, получаем массив товаров и парсим его обратно в .tpl файл. Это первое, что хочу сделать в модуле. Потом, на втором этапе, этот товар будет присвоен новой категории. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Он должен принимать через get запрос выбранную категорию (из списка <select> в шаблоне) в контроллер, затем переданная категория служит аргументом для функции getProductsByCategoryId, получаем массив товаров и парсим его обратно в .tpl файл. Это первое, что хочу сделать в модуле. Потом, на втором этапе, этот товар будет присвоен новой категории. 

так откройте любой стандартный модуль и не посмотрите как там сделано и не выдумывайте велосипед 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так откройте любой стандартный модуль и не посмотрите как там сделано и не выдумывайте велосипед 

 

А вы можете привести такой пример? Насколько я смотрел, функционал модулей в админпанели однообразен, там лишь форма с изменением положения модуля, кнопкой сохранения и удаления. А по ТЗ надо сделать функционал, который я описал выше, именно в админке. Это разве невозможно? Не сарказм, просто вопрос к профессионалу :)

Custom функций в стандартных модулях я также не увидел, только index() и validate(). Может, я действительно пошел не по тому пути? 

Изменено пользователем UnclePasha

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вы можете привести такой пример? Насколько я смотрел, функционал модулей в админпанели однообразен, там лишь форма с изменением положения модуля, кнопкой сохранения и удаления. А по ТЗ надо сделать функционал, который я описал выше, именно в админке. Это разве невозможно? Не сарказм, просто вопрос к профессионалу :)

Custom функций в стандартных модулях я также не увидел, только index() и validate(). Может, я действительно пошел не по тому пути? 

Пишите в ЛС подробный функционал, я не совсем "вехал" что там должно быть  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Shiptor
      Скачать/Купить дополнение


      Модуль Shiptor - агрегатор доставки
      Модуль устанавливается и обновляется по ftp. Инструкция по установке находится в архиве с модулем (обратите внимание, что для стандартной версии и с модулем Simple нужны разные файлы ocmod)
      Совместимость и преимущества:
      Гарантировано совместим с Opencart и OcStore версий 1.5, 2.0, 2.1, 2.2, 2.3, 3.0 в дефолтном шаблоне. Поддерживает работу с модификатором оформления заказа SimpleCheckout. Модуль предоставляется бесплатно.
       
      Модуль Shiptor позволяет использовать самую выгодную стоимость доставки и покрыть максимальную географию РФ благодаря выбору среди ведущих логистических компаний через единый договор с Shiptor. Также Shiptor предлагает единый забор и доставку день-в-день по Москве, единый забор в регионе и доставку по РФ любыми службами доставки. Фулфилмент и отправку через единый сортировочный центр Shiptor в Москве.
       
      Ключевые возможности модуля — это расчет стоимости и сроков доставки, предоставление выбора конкретной логистической службы для передачи заказа в пункт выдачи или доставка до двери курьером, а также создание заказа в личном кабинете сервиса Shiptor для дальнейшей обработки, управления и отслеживания заказа.
       
      Возможности:
      Автоматический расчет стоимости доставки по России от Москвы при схеме работы через единый забор нашим курьером или со склада фулфилмента. Перерасчет стоимости доставки в зависимости от выбранного способа оплаты с учетом всех комиссий. Отображение карты выбора пунктов самовывоза и постаматов. Скрытие отдельных способов доставки или устанавка для них правила по отдельным регионам. Увеличение отображаемого времени доставки. Использование веса из карточек товаров для расчета доставки. Использование габаритов из карточки товара для расчета доставки(только для 1 товара в корзине). Демонстрация подсказок при вводе названия населенного пункта и автовыбор региона для удобства использования и точности расчета. Передача заказов вместе с описью номенклатуры товаров и услуг в ЛК. Передача заказов с наложенным платежом в т.ч. с оплатой по карте или без него. Отображение трек-номера Shiptor и истории внутренних статусов заказа в админпанели сайта. Логирование операций обмена данными с Shiptor. Возможность установки правил по каждому способу доставки: Наценка в %; Наценка в ₽; Бесплатная доставка; Фиксированная цена; Фиксированная цена в зависимости от веса; Минимальный и максимальный вес корзины для доставки; Минимальная и максимальная сумма корзины для доставки и другое;  
      Инструкция по настройке модуля
      Добавил Shiptor Добавлено 22.09.2016 Категория Доставки Системные требования Сайт разработчика https://shiptor.ru Старая цена Метод активации Через официальный сайт дополнения Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От q3dm0
      450.00 руб
      Скачать/Купить дополнение


      Imagemanager+галерея ScangalleryPack
      Я начал разработку данного пакета из-за того что многие обладатели магазинов мучаются с добавлением изображений для товара, а также в данном случае для opencart  магазинов, как правило все галереи имеют весьма ограниченный потенциал, поэтому обычный модуль понемногу превращается в целый пакет, для работы с изображениями!
      Полноценная адаптивная галерея для организации своего блога, страницы новостей или фотогалереи с описанием товара или целой группы товаров с возможностью объединения галереи и товаров по тегам на сайте для более результативного поиска последних. Полноценный модуль imagemanager с возможностью заливать на лету тысячи фотографий  для своих товаров, баннеров, обрабатывать их, перетягивать в нужном порядке методом drugNdrop и не только, теперь Вы сможете это, с новым пакетом ScangalleryPack.
      Полный комплект:
      модуль Imagemanager на базе jquery файл-менеджера elFinder для версий opencart 1.5.X  -2.X – 3.X; галерея на базе jquery галереи blueimp-gallery конечно же с  мультизагрузкой изображений, а также с более простой поисковой оптимизацией Вашего сайта, теперь для каждой картинки можно присвоить свой alt и title прям из под админ панели, ну и само собой, в данный пакет интегрирован модуль сортировки изображений методом перетягивания (Sortable module). Теперь ужасная и нудная работа по добавлению изображений к товарам и баннерам на сайте сводиться к минимуму, в данной версии Вы можете:
      пакетная загрузка картинок на сервер; удаление файлов в корзину; drugNDrop пакетная загрузка изображение на сервер; обработка изображений (обрезка, поворот и другие приятности прям в окне Вашего броузера); создание, переименование, удаление, перемещение, копирование (вставка), архивирование, как изображений, так и папок, в том числе пакетная; различные варианты просмотра изображений и папок и т.д. многоязычность (определяется локализацией Вашего броузера); легкость обновления версий (для опытных пользователей!); автоматическая нумерация изображений; отсутствие перезаписи системных файлов opencart; объектный метод определения загрузки файлов, теперь Вы избавитесь от лишних надоедливых кнопок внизу; изменять любое изображение в админ панели обычным выбором, есть как встроенный менеджер, так и Imagemanager на выбор.  
      Посмотреть работу модуля можно на следующем видео: ссылка
       
      Установка на сервер
       
      Перед установкой желательно сделать бекап актуальной версии сайта!
      Imagemanager
       
      opencart 1.5.X:
      На Вашем сайте должен быть заранее установлен Vqmod!!
      Установка на сервер
      В папке vqmod/xml/ лежат версии xml для конкретной версии opencart выбираем необходимый все остальные удаляем, необходимо сделать перед копированием файлов на сервер! Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы;
        ScangalleryPack
      В галерею уже импортирован imagemanager поэтому если до этого он был установлен, выполняем его удаление.
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Установить модуль - Сканирующая галерея (Модуль), настроить и включить (По умолчанию уже стоят необходимые параметры); Перейти в “Дизайн->схемы или макеты” и добавить новые, назвать Галерея, далее скопировать следующие пути: product/ gallery и product/gallery/gallery; Далее настроить по вкусу, где будет располагаться у Вас модуль с альбомами. И при удалении ScangalleryPack или модуля из под админ панели, советуется сделать дамп базы данных.  
      opencart 2.X
      Установка на сервер
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Перейти в раздел установка дополнений OCMOD и установить imagemanager.ocmod.xml; Перейти в раздел "Менеджер дополнений" и нажать кнопку "Обновить".
        ScangalleryPack
      В галерею уже импортирован imagemanager поэтому если до этого он был установлен, выполняем его удаление.
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Перейти в раздел установка дополнений OCMOD и установить imagemanager.ocmod.xml; Перейти в раздел "Менеджер дополнений" и нажать кнопку "Обновить"; Установить модуль - Сканирующая галерея (Модуль), настроить и включить (По умолчанию уже стоят необходимые параметры); Перейти в “Дизайн->схемы или макеты” и добавить новые, назвать Галерея, далее скопировать следующие пути: product/ gallery и product/gallery/gallery; Далее настроить по вкусу, где будет располагаться у Вас модуль с альбомами. Новые альбомы располагаются под товарами в админ панели. И при удалении ScangalleryPack или модуля из под админ панели, советуется сделать дамп базы данных.  
      Файлы для opencart 3.X и выше
      Перейти в пункт "Extensions -> Installer" и установить пакет Imagemanager.ocmod.zip или Scangallery.ocmod.zip Перейти в пункт "Extensions -> Modifications" и обновить модификацию Перейти в пункт “User Groups”, дать все необходимые права на файлы модуля Перейти в пункт "Extensions ->  Modules" и установить Scangallery Settings и модуль управления Галереей  
      Траблы на хостинге!
      Если Вы установили, но все равно, что то не работает, не отчаивайтесь, все решаемо!
      Вопросы:
      Если я установил imagemanager для версии opencart 1.5.X, и у меня расползлась верстка в табе изображения карточки товара, при этом сами изображения располагаются как то не так. При установке scangallery Dcя захожу в альбомы и вижу такое “Fatal error: Uncaught exception 'Exception' with message 'Error: Table 'gallery.oc_gallery' doesn't exist<br />Error No: 1146<br />SELECT COUNT(DISTINCT p.album_id) AS total FROM oc_gallery p LEFT JOIN oc_gallery_description pd ON (p.album_id = pd.album_id) WHERE pd.language_id = '1'' in D:\OpenServer\domains\gallery.loc\system\library\db\mysqli.php:40 Stack trace: #0 D:\OpenServer\domains\gallery.loc\system\library\db.php(16): DB\MySQLi->query('SELECT COUNT(DI...', Array) #1 D:\OpenServer\domains\gallery.loc\admin\model\catalog\gallery.php(220): DB->query('SELECT COUNT(DI...') #2 [internal function]: ModelCatalogGallery->getTotalAlbums(Array) #3 D:\OpenServer\domains\gallery.loc\system\storage\modification\system\engine\loader.php(178): call_user_func_array(Array, Array) #4 [internal function]: Loader->{closure}(Array, Array) #5 D:\OpenServer\domains\gallery.loc\system\engine\proxy.php(25): call_user_func_array(Object(Closure), Array) #6 D:\OpenServer\domains\gallery.loc\admin\controller\catalog\gallery.php(215): Proxy-> in D:\OpenServer\domains\gallery.loc\system\library\db\mysqli.php on line 40”. Установил imagemanager для версии opencart 1.5.X и при его запуске вижу внизу модуля какой то не понятный код.  
      Ответы:
      Для этого необходимо подобрать соответствующий xml файл “В папке vqmod/xml/ лежат версии xml для конкретной версии opencart выбираем необходимый все остальные удаляем, необходимо сделать перед копированием файлов на сервер!”, если же и это не помогло, оставляем любой из них открываем на сервере любым текстовым редактором и находим строку - <search index="55" limit="1"><![CDATA[<tr>]]></search> она может отличаться от представленной цифрами, но она располагается под <td class="left"><?php echo $entry_image; ?></td> спутать ее будет сложно, и играемся с цифрами по очереди от 55 до 63, обычно этого достаточно, чтобы настроить правильно. ScangalleryPack написан полностью согласно документации opencart и в нем используются функции install и uninstall для создания таблиц в бд, для того чтобы проблема исчезла необходимо установить модуль (Пункт 5 установки). Как показала практика у многих магазинов на версиях ocstore 1.5.X стоит imagemanager plus в качестве стандартного загрузчика, для того чтобы не было конфликтов! При первой установке imagemanager from scangallery pack убедитесь что из папки xml сделана копия и удален imagemanager plus, далее необходимо перейти в папку admin/view/template/common/filemanager.tpl и сделать копию данного файла, после этого открыть его любым текстовым редактором и удалить все содержимое, кроме первой строки, где находиться следующий текст - <!DOCTYPE html>. После данных манипуляций все должно работать.  
      Добавил q3dm0 Добавлено 08.03.2017 Категория Обмен данными Системные требования Сайт разработчика www.opencart.com Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1  
    • От q3dm0
      Я начал разработку данного пакета из-за того что многие обладатели магазинов мучаются с добавлением изображений для товара, а также в данном случае для opencart  магазинов, как правило все галереи имеют весьма ограниченный потенциал, поэтому обычный модуль понемногу превращается в целый пакет, для работы с изображениями!
      Полноценная адаптивная галерея для организации своего блога, страницы новостей или фотогалереи с описанием товара или целой группы товаров с возможностью объединения галереи и товаров по тегам на сайте для более результативного поиска последних. Полноценный модуль imagemanager с возможностью заливать на лету тысячи фотографий  для своих товаров, баннеров, обрабатывать их, перетягивать в нужном порядке методом drugNdrop и не только, теперь Вы сможете это, с новым пакетом ScangalleryPack.
      Полный комплект:
      модуль Imagemanager на базе jquery файл-менеджера elFinder для версий opencart 1.5.X  -2.X – 3.X; галерея на базе jquery галереи blueimp-gallery конечно же с  мультизагрузкой изображений, а также с более простой поисковой оптимизацией Вашего сайта, теперь для каждой картинки можно присвоить свой alt и title прям из под админ панели, ну и само собой, в данный пакет интегрирован модуль сортировки изображений методом перетягивания (Sortable module). Теперь ужасная и нудная работа по добавлению изображений к товарам и баннерам на сайте сводиться к минимуму, в данной версии Вы можете:
      пакетная загрузка картинок на сервер; удаление файлов в корзину; drugNDrop пакетная загрузка изображение на сервер; обработка изображений (обрезка, поворот и другие приятности прям в окне Вашего броузера); создание, переименование, удаление, перемещение, копирование (вставка), архивирование, как изображений, так и папок, в том числе пакетная; различные варианты просмотра изображений и папок и т.д. многоязычность (определяется локализацией Вашего броузера); легкость обновления версий (для опытных пользователей!); автоматическая нумерация изображений; отсутствие перезаписи системных файлов opencart; объектный метод определения загрузки файлов, теперь Вы избавитесь от лишних надоедливых кнопок внизу; изменять любое изображение в админ панели обычным выбором, есть как встроенный менеджер, так и Imagemanager на выбор.  
      Посмотреть работу модуля можно на следующем видео: ссылка
       
      Установка на сервер
       
      Перед установкой желательно сделать бекап актуальной версии сайта!
      Imagemanager
       
      opencart 1.5.X:
      На Вашем сайте должен быть заранее установлен Vqmod!!
      Установка на сервер
      В папке vqmod/xml/ лежат версии xml для конкретной версии opencart выбираем необходимый все остальные удаляем, необходимо сделать перед копированием файлов на сервер! Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы;
        ScangalleryPack
      В галерею уже импортирован imagemanager поэтому если до этого он был установлен, выполняем его удаление.
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Установить модуль - Сканирующая галерея (Модуль), настроить и включить (По умолчанию уже стоят необходимые параметры); Перейти в “Дизайн->схемы или макеты” и добавить новые, назвать Галерея, далее скопировать следующие пути: product/ gallery и product/gallery/gallery; Далее настроить по вкусу, где будет располагаться у Вас модуль с альбомами. И при удалении ScangalleryPack или модуля из под админ панели, советуется сделать дамп базы данных.  
      opencart 2.X
      Установка на сервер
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Перейти в раздел установка дополнений OCMOD и установить imagemanager.ocmod.xml; Перейти в раздел "Менеджер дополнений" и нажать кнопку "Обновить".
        ScangalleryPack
      В галерею уже импортирован imagemanager поэтому если до этого он был установлен, выполняем его удаление.
      Скопировать файлы из папки upload на сервер; Перейти в пункт “Редактирования группы пользователя”, дать все необходимые права на файлы; Перейти в раздел установка дополнений OCMOD и установить imagemanager.ocmod.xml; Перейти в раздел "Менеджер дополнений" и нажать кнопку "Обновить"; Установить модуль - Сканирующая галерея (Модуль), настроить и включить (По умолчанию уже стоят необходимые параметры); Перейти в “Дизайн->схемы или макеты” и добавить новые, назвать Галерея, далее скопировать следующие пути: product/ gallery и product/gallery/gallery; Далее настроить по вкусу, где будет располагаться у Вас модуль с альбомами. Новые альбомы располагаются под товарами в админ панели. И при удалении ScangalleryPack или модуля из под админ панели, советуется сделать дамп базы данных.  
      Файлы для opencart 3.X и выше
      Перейти в пункт "Extensions -> Installer" и установить пакет Imagemanager.ocmod.zip или Scangallery.ocmod.zip Перейти в пункт "Extensions -> Modifications" и обновить модификацию Перейти в пункт “User Groups”, дать все необходимые права на файлы модуля Перейти в пункт "Extensions ->  Modules" и установить Scangallery Settings и модуль управления Галереей  
      Траблы на хостинге!
      Если Вы установили, но все равно, что то не работает, не отчаивайтесь, все решаемо!
      Вопросы:
      Если я установил imagemanager для версии opencart 1.5.X, и у меня расползлась верстка в табе изображения карточки товара, при этом сами изображения располагаются как то не так. При установке scangallery Dcя захожу в альбомы и вижу такое “Fatal error: Uncaught exception 'Exception' with message 'Error: Table 'gallery.oc_gallery' doesn't exist<br />Error No: 1146<br />SELECT COUNT(DISTINCT p.album_id) AS total FROM oc_gallery p LEFT JOIN oc_gallery_description pd ON (p.album_id = pd.album_id) WHERE pd.language_id = '1'' in D:\OpenServer\domains\gallery.loc\system\library\db\mysqli.php:40 Stack trace: #0 D:\OpenServer\domains\gallery.loc\system\library\db.php(16): DB\MySQLi->query('SELECT COUNT(DI...', Array) #1 D:\OpenServer\domains\gallery.loc\admin\model\catalog\gallery.php(220): DB->query('SELECT COUNT(DI...') #2 [internal function]: ModelCatalogGallery->getTotalAlbums(Array) #3 D:\OpenServer\domains\gallery.loc\system\storage\modification\system\engine\loader.php(178): call_user_func_array(Array, Array) #4 [internal function]: Loader->{closure}(Array, Array) #5 D:\OpenServer\domains\gallery.loc\system\engine\proxy.php(25): call_user_func_array(Object(Closure), Array) #6 D:\OpenServer\domains\gallery.loc\admin\controller\catalog\gallery.php(215): Proxy-> in D:\OpenServer\domains\gallery.loc\system\library\db\mysqli.php on line 40”. Установил imagemanager для версии opencart 1.5.X и при его запуске вижу внизу модуля какой то не понятный код.  
      Ответы:
      Для этого необходимо подобрать соответствующий xml файл “В папке vqmod/xml/ лежат версии xml для конкретной версии opencart выбираем необходимый все остальные удаляем, необходимо сделать перед копированием файлов на сервер!”, если же и это не помогло, оставляем любой из них открываем на сервере любым текстовым редактором и находим строку - <search index="55" limit="1"><![CDATA[<tr>]]></search> она может отличаться от представленной цифрами, но она располагается под <td class="left"><?php echo $entry_image; ?></td> спутать ее будет сложно, и играемся с цифрами по очереди от 55 до 63, обычно этого достаточно, чтобы настроить правильно. ScangalleryPack написан полностью согласно документации opencart и в нем используются функции install и uninstall для создания таблиц в бд, для того чтобы проблема исчезла необходимо установить модуль (Пункт 5 установки). Как показала практика у многих магазинов на версиях ocstore 1.5.X стоит imagemanager plus в качестве стандартного загрузчика, для того чтобы не было конфликтов! При первой установке imagemanager from scangallery pack убедитесь что из папки xml сделана копия и удален imagemanager plus, далее необходимо перейти в папку admin/view/template/common/filemanager.tpl и сделать копию данного файла, после этого открыть его любым текстовым редактором и удалить все содержимое, кроме первой строки, где находиться следующий текст - <!DOCTYPE html>. После данных манипуляций все должно работать.  
    • От yariknashivan
      Нужно по умолчанию выбрать тему Palora 4 как это сделать?
       
       

    • От androidpos
      3 300.00 руб
      Скачать/Купить дополнение


      54ФЗ Касса интернет-магазина (фискальный регистратор)
      Регистрация электронных платежей в соответствии с 54ФЗ, возможность оплаты заказов за наличный расчет. Данные с Вашего сайта поступают прямо на Ваш ПК и ФР. Никаких ежемесячных платежей и посредников по передаче данных. Любая модель регистраторов Штрих и Атол. Отправка данных ОФД, электронные чеки. Может работать с несколькими магазинами одновременно. OpenCart 1.5-2.0 - 2.3
       
      "Касса интернет-магазина" представляет собой комплекс из двух модулей - один устанавливается на сайте интернет-магазина, другой на ПК под управлением ОС Windows. К этому же ПК подключается фискальный регистратор (далее ФР).
      После оплаты покупателем товара и перехода статуса заказа в заранее выбранный при настройке, модуль сайта производит отправку информации об оплаченном заказе на ПК .Обработанные данные заносятся в базу и передаются на ФР. После регистрации происходит автоматическая передача данных ОФД (оператору фискальных данных), который в свою очередь фиксирует продажу и отправляет электронный чек покупателю на адрес, указанный при заказе. На всё уходит 1-2 сек.
      С текущей версии включена поддержка работы с курьерами.
      Требования к хостингу:
      - PHP от 5.4
      - ionCube Loader от 5.0 (два зашифрованных файла)
      - разрешённые исходящие соединения (на любом порту)
      Требования к ПК:
      - ОС Windows 7 и выше
      - .NET Framework 4.0
      - установленные драйвера ФР - в зависимости от выбранной модели
      - внешний статический выделенный IP (локальной сети или ПК)
      Фискальный регистратор (ФР) - любая модель Штрих или Атол, поддерживающая 54ФЗ.
      Возможности модуля на хостинге:
      - ввод IP для связи
      - данные логина и пароля для связи
      - выбор отслеживаемого статуса заказа
      - создание и сохранение списка видов платежей, которые следует считать электронными и фиксировать по 54ФЗ.
      - отправка и учет всех видов бонусов и скидок в заказе
      - сохранение (для последующей передачи) неотправленных по какой-либо причине оплаченных заказов
      - приём и передача информации на ФР от модуля "Смартфон курьера для OpenCart +54ФЗ"
      Возможности модуля на ПК:
      - автоматическая авторизация подключения
      - работа по HTTP и HTTPS
      - фильтрация по IP
      - запись данных в базу, вывод журнала, просмотр отдельных заказов (чеков)
      - при отсутствии связи с ФР накопление незарегистрированных чеков
      - все функции управления ФР, возвраты
      - возможность отключения печати чеков на ленте, с записью только в ФН (что предусмотрено 54ФЗ для удалённых электронных платежей)
      - пробитие как он-лайн чеков (оплата на сайте\платёжной системе), так за наличный расчет
      - тест канала связи
      - тест модуля на сайте
      Кроме этого, система имеет закодированную передачу данных и стойкое шифрование (256 бит) авторизации.
      В архиве три установки на OC (1.5, 2.0-2.2, 2.3), установщик Windows, инструкция PDF.
      Лицензия (ключ) по запросу после приобретения.
      Драйвера для регистраторов, бесплатные демо-версии (v1.0.1), ссылки на демо доступы здесь.
      Сайт поддержки - help.android-pos.ru
       
      Быстро и бесплатно спрашиваем здесь:  WhatsApp
       
      Новая услуга - удалённое подключение под ключ (при выполнении требований к оборудованию и ПО). Подробнее - support@android-pos.ru или ЛС.
       
      Добавил androidpos Добавлено 01.07.2017 Категория Платежные системы Системные требования Сайт разработчика http://cash.android-pos.ru Старая цена Метод активации По запросу в ЛС Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×