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

ZloyShaman

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

    15
  • З нами

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

Відвідувачі профілю

Блок відвідувачів профілю відключений і не буде доступний широкому іншим користувачам

ZloyShaman's Achievements

Apprentice

Apprentice (3/14)

  • First Post
  • Collaborator
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

0

Репутація

  1. По сути нужно разместить их товар на нашем сайте, с фото и информацией о товарах, обновлять цены и наличие на складе
  2. Если обосную нецелесообразность, то откажутся от этой мысли собственно поставщик Омега (запчасти) https://public.omega.page/swagger/ui/index#!/PublicSearch/PublicSearch_SimpleSearch
  3. Добрый день, возникла такая проблема, руководство хочет что бы на нашем сайте, кроме имеющихся позиций (около 5к), появились товары нашего поставщика. поставщик дает возможность взаимодействия по API(есть ссылка на документацию) , и стала собственно проблема как это организовать, модуль может какой есть, или надо писать какой то код вручную, сколько вообще это стоит, и целесообразно ли..
  4. Модуль был установлен через стандартную установку, модификаторы обновлены, в менеджере дополнений также был добавлен(установлен) после чего появился в дополнениях, но в самих дополнениях НЕ включен, и при этом всем на каждой странице была куча ошибок, которая исчезала после нескольких обновлений страниц. В следствии был отключен. Что не так?
  5. я так понял, новые цены должны в любом случае хранится в БД, и если я понял правильно хранится они будут в oc_product_discount и oc_product_special, это так?
  6. Добрый день, такой вопрос. В стандартной выгрузке товара на комп в файл ексель, есть поле Цена, которая позволяет сравнить цену с выгруженным с 1С прайсом, тем самым обновить цену. Вопрос собственно в том появятся ли новые поля в этой выгрузке после установки данного модуля? для массового обновления цен для каждой категории пользователей
  7. Да я понял, конечно нужно, я пока не понимаю как, вариантов слишком много
  8. Та ну мне скучно просто, я по ночам удаляю файлы, а утром удивленно обнаруживаю их отсутствие)))) на самом деле, я просто переделывал немного БД, с опенкарта 1,5, для того чтобы поставить ее на 2,3. Все прошло успешно, база перенеслась, все пока проводилось на опенсервере. Для справки делаю я это первый раз, так же это первое знакомство с опенкартом. Поэтому считаю что подобные проблемы скорее всего связаны с отсутствием опыта
  9. И проблема решилась.. но привела к новой.. По сути куда то делась часть файлов, каждый раз копируя недостающий, проблема уходит
  10. Спасибо всем. Решение найдено, не хватало файла hyper_position.php . Проблема решилась его копированием в указанную папку
  11. Сложность в том что перед появление ошибки ничего не менялось и все работало, последний раз, в Модулях, я заходил в "Магазин", но ничего не менялось. никаких изменений связанных с шаблоном не было.. Файл Layout.php <?php class ControllerDesignLayout extends Controller { private $error = array(); public function index() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); $this->getList(); } public function add() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { $this->model_design_layout->addLayout($this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getForm(); } public function edit() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { $this->model_design_layout->editLayout($this->request->get['layout_id'], $this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getForm(); } public function delete() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (isset($this->request->post['selected']) && $this->validateDelete()) { foreach ($this->request->post['selected'] as $layout_id) { $this->model_design_layout->deleteLayout($layout_id); } $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getList(); } protected function getList() { if (isset($this->request->get['sort'])) { $sort = $this->request->get['sort']; } else { $sort = 'name'; } if (isset($this->request->get['order'])) { $order = $this->request->get['order']; } else { $order = 'ASC'; } if (isset($this->request->get['page'])) { $page = $this->request->get['page']; } else { $page = 1; } $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true) ); $data['add'] = $this->url->link('design/layout/add', 'token=' . $this->session->data['token'] . $url, true); $data['delete'] = $this->url->link('design/layout/delete', 'token=' . $this->session->data['token'] . $url, true); $data['layouts'] = array(); $filter_data = array( 'sort' => $sort, 'order' => $order, 'start' => ($page - 1) * $this->config->get('config_limit_admin'), 'limit' => $this->config->get('config_limit_admin') ); $layout_total = $this->model_design_layout->getTotalLayouts(); $results = $this->model_design_layout->getLayouts($filter_data); foreach ($results as $result) { $data['layouts'][] = array( 'layout_id' => $result['layout_id'], 'name' => $result['name'], 'edit' => $this->url->link('design/layout/edit', 'token=' . $this->session->data['token'] . '&layout_id=' . $result['layout_id'] . $url, true) ); } $data['heading_title'] = $this->language->get('heading_title'); $data['text_list'] = $this->language->get('text_list'); $data['text_no_results'] = $this->language->get('text_no_results'); $data['text_confirm'] = $this->language->get('text_confirm'); $data['column_name'] = $this->language->get('column_name'); $data['column_action'] = $this->language->get('column_action'); $data['button_add'] = $this->language->get('button_add'); $data['button_edit'] = $this->language->get('button_edit'); $data['button_delete'] = $this->language->get('button_delete'); if (isset($this->error['warning'])) { $data['error_warning'] = $this->error['warning']; } else { $data['error_warning'] = ''; } if (isset($this->session->data['success'])) { $data['success'] = $this->session->data['success']; unset($this->session->data['success']); } else { $data['success'] = ''; } if (isset($this->request->post['selected'])) { $data['selected'] = (array)$this->request->post['selected']; } else { $data['selected'] = array(); } $url = ''; if ($order == 'ASC') { $url .= '&order=DESC'; } else { $url .= '&order=ASC'; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['sort_name'] = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . '&sort=name' . $url, true); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } $pagination = new Pagination(); $pagination->total = $layout_total; $pagination->page = $page; $pagination->limit = $this->config->get('config_limit_admin'); $pagination->url = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url . '&page={page}', true); $data['pagination'] = $pagination->render(); $data['results'] = sprintf($this->language->get('text_pagination'), ($layout_total) ? (($page - 1) * $this->config->get('config_limit_admin')) + 1 : 0, ((($page - 1) * $this->config->get('config_limit_admin')) > ($layout_total - $this->config->get('config_limit_admin'))) ? $layout_total : ((($page - 1) * $this->config->get('config_limit_admin')) + $this->config->get('config_limit_admin')), $layout_total, ceil($layout_total / $this->config->get('config_limit_admin'))); $data['sort'] = $sort; $data['order'] = $order; $tmp_data = $this->load->controller('design/hyper_positions'); $data = array_merge($data, $tmp_data); $data['header'] = $this->load->controller('common/header'); $data['column_left'] = $this->load->controller('common/column_left'); $data['footer'] = $this->load->controller('common/footer'); $this->response->setOutput($this->load->view('design/layout_list', $data)); } protected function getForm() { $data['heading_title'] = $this->language->get('heading_title'); $data['text_form'] = !isset($this->request->get['layout_id']) ? $this->language->get('text_add') : $this->language->get('text_edit'); $data['text_route'] = $this->language->get('text_route'); $data['text_module'] = $this->language->get('text_module'); $data['text_default'] = $this->language->get('text_default'); $data['text_content_top'] = $this->language->get('text_content_top'); $data['text_content_bottom'] = $this->language->get('text_content_bottom'); $data['text_column_left'] = $this->language->get('text_column_left'); $data['text_column_right'] = $this->language->get('text_column_right'); $data['text_edit'] = $this->language->get('text_edit'); $data['text_remove'] = $this->language->get('text_remove'); $data['entry_name'] = $this->language->get('entry_name'); $data['entry_store'] = $this->language->get('entry_store'); $data['entry_route'] = $this->language->get('entry_route'); $data['entry_module'] = $this->language->get('entry_module'); $data['button_save'] = $this->language->get('button_save'); $data['button_cancel'] = $this->language->get('button_cancel'); $data['button_route_add'] = $this->language->get('button_route_add'); $data['button_module_add'] = $this->language->get('button_module_add'); $data['button_edit'] = $this->language->get('button_edit'); $data['button_remove'] = $this->language->get('button_remove'); if (isset($this->error['warning'])) { $data['error_warning'] = $this->error['warning']; } else { $data['error_warning'] = ''; } if (isset($this->error['name'])) { $data['error_name'] = $this->error['name']; } else { $data['error_name'] = ''; } $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true) ); if (!isset($this->request->get['layout_id'])) { $data['action'] = $this->url->link('design/layout/add', 'token=' . $this->session->data['token'] . $url, true); } else { $data['action'] = $this->url->link('design/layout/edit', 'token=' . $this->session->data['token'] . '&layout_id=' . $this->request->get['layout_id'] . $url, true); } $data['cancel'] = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true); $data['token'] = $this->session->data['token']; if (isset($this->request->get['layout_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) { $layout_info = $this->model_design_layout->getLayout($this->request->get['layout_id']); } if (isset($this->request->post['name'])) { $data['name'] = $this->request->post['name']; } elseif (!empty($layout_info)) { $data['name'] = $layout_info['name']; } else { $data['name'] = ''; } $this->load->model('setting/store'); $data['stores'] = $this->model_setting_store->getStores(); if (isset($this->request->post['layout_route'])) { $data['layout_routes'] = $this->request->post['layout_route']; } elseif (isset($this->request->get['layout_id'])) { $data['layout_routes'] = $this->model_design_layout->getLayoutRoutes($this->request->get['layout_id']); } else { $data['layout_routes'] = array(); } $this->load->model('extension/extension'); $this->load->model('extension/module'); $data['extensions'] = array(); // Get a list of installed modules $extensions = $this->model_extension_extension->getInstalled('module'); // Add all the modules which have multiple settings for each module foreach ($extensions as $code) { $this->load->language('extension/module/' . $code); $module_data = array(); $modules = $this->model_extension_module->getModulesByCode($code); foreach ($modules as $module) { $module_data[] = array( 'name' => strip_tags($module['name']), 'code' => $code . '.' . $module['module_id'] ); } if ($this->config->has($code . '_status') || $module_data) { $data['extensions'][] = array( 'name' => strip_tags($this->language->get('heading_title')), 'code' => $code, 'module' => $module_data ); } } // Modules layout if (isset($this->request->post['layout_module'])) { $layout_modules = $this->request->post['layout_module']; } elseif (isset($this->request->get['layout_id'])) { $layout_modules = $this->model_design_layout->getLayoutModules($this->request->get['layout_id']); } else { $layout_modules = array(); } $data['layout_modules'] = array(); // Add all the modules which have multiple settings for each module foreach ($layout_modules as $layout_module) { $part = explode('.', $layout_module['code']); $this->load->language('extension/module/' . $part[0]); if (!isset($part[1])) { $data['layout_modules'][] = array( 'name' => strip_tags($this->language->get('heading_title')), 'code' => $layout_module['code'], 'edit' => $this->url->link('extension/module/' . $part[0], 'token=' . $this->session->data['token'], true), 'position' => $layout_module['position'], 'sort_order' => $layout_module['sort_order'] ); } else { $module_info = $this->model_extension_module->getModule($part[1]); if ($module_info) { $data['layout_modules'][] = array( 'name' => strip_tags($module_info['name']), 'code' => $layout_module['code'], 'edit' => $this->url->link('extension/module/' . $part[0], 'token=' . $this->session->data['token'] . '&module_id=' . $part[1], true), 'position' => $layout_module['position'], 'sort_order' => $layout_module['sort_order'] ); } } } $tmp_data = $this->load->controller('design/hyper_positions'); $data = array_merge($data, $tmp_data); $data['header'] = $this->load->controller('common/header'); $data['column_left'] = $this->load->controller('common/column_left'); $data['footer'] = $this->load->controller('common/footer'); $this->response->setOutput($this->load->view('design/layout_hp_form', $data)); } protected function validateForm() { if (!$this->user->hasPermission('modify', 'design/layout')) { $this->error['warning'] = $this->language->get('error_permission'); } if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) { $this->error['name'] = $this->language->get('error_name'); } return !$this->error; } protected function validateDelete() { if (!$this->user->hasPermission('modify', 'design/layout')) { $this->error['warning'] = $this->language->get('error_permission'); } $this->load->model('setting/store'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $this->load->model('catalog/information'); foreach ($this->request->post['selected'] as $layout_id) { if ($this->config->get('config_layout_id') == $layout_id) { $this->error['warning'] = $this->language->get('error_default'); } $store_total = $this->model_setting_store->getTotalStoresByLayoutId($layout_id); if ($store_total) { $this->error['warning'] = sprintf($this->language->get('error_store'), $store_total); } $product_total = $this->model_catalog_product->getTotalProductsByLayoutId($layout_id); if ($product_total) { $this->error['warning'] = sprintf($this->language->get('error_product'), $product_total); } $category_total = $this->model_catalog_category->getTotalCategoriesByLayoutId($layout_id); if ($category_total) { $this->error['warning'] = sprintf($this->language->get('error_category'), $category_total); } $information_total = $this->model_catalog_information->getTotalInformationsByLayoutId($layout_id); if ($information_total) { $this->error['warning'] = sprintf($this->language->get('error_information'), $information_total); } } return !$this->error; } }
  12. Нужна помощь, проблема изображена на скрине.
×
×
  • Створити...

Important Information

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