Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Qhiey

Новичок
  
  • Публикаций

    6
  • Зарегистрирован

  • Посещение

Посетители профиля

412 просмотров профиля

Достижения Qhiey

Rookie

Rookie (2/14)

  • First Post
  • Week One Done
  • One Month Later
  • One Year In
  • Conversation Starter

Последние медали

0

Репутация

  1. Понял , спасибо , буду разбираться .
  2. Всем двс . Подскажите пожалуйста , как сделать так , что бы определённые товары после покупки получали статус " Заказ выполнен " , а другие " В обработке "? Например для цифровых товаров сразу после покупки - " Заказ выполнен " Для одежды , обуви и пр. - " В обработке " ?
  3. Всё получилось , спасибо за наводку , добавил две функции в контроллер и модель , пошаманил с js и всё получилось ) Только статусы отображаются наоборот , не name статуса а id , но это мелочи , спасибо ещё раз . Взял за основу вид не от " Показывать в категориях " , а от " Производителя " , так полегче было . У меня статусов over>>>>>>100000 (так надо) Необходимо было как то сортировать это и сделать более удобным . Если кому надо вот ответ, хотя вряд ли кому пригодиться )) в файле шаблона <div class="form-group"> <label class="col-sm-2 control-label" for="input-stock-status"><span data-toggle="tooltip" title="<?php echo $help_stock_status; ?>"><?php echo $entry_stock_status; ?></span></label> <div class="col-sm-10"> <input type="text" name="stock_status" value="<?php echo $stock_status['name']; ?>" placeholder="<?php echo $entry_stock_status; ?>" id="input-stock-status" class="form-control" /> <input type="hidden" name="stock_status_id" value="<?php echo $stock_status_id; ?>" /> </div> </div> + добавить код JS вниз файла шаблона // Stock_status $('input[name=\'stock_status\']').autocomplete({ 'source': function(request, response) { $.ajax({ url: 'index.php?route=catalog/manufacturer/autocomplete_stock&token=<?php echo $token; ?>&filter_name=' + encodeURIComponent(request), dataType: 'json', success: function(json) { json.unshift({ stock_status_id: 0, name: '<?php echo $text_none; ?>' }); response($.map(json, function(item) { return { label: item['name'], value: item['stock_status_id'] } })); } }); }, 'select': function(item) { $('input[name=\'stock_status\']').val(item['label']); $('input[name=\'stock_status_id\']').val(item['value']); } }); Добавить функцию в контроллер : admin / controller / catalog / manufacturer.php (можно в любой , только изменить надо будет в js ) public function autocomplete_stock() { $json = array(); if (isset($this->request->get['filter_name'])) { $this->load->model('catalog/product'); $filter_data = array( 'filter_name' => $this->request->get['filter_name'], 'start' => 0, 'limit' => 5 ); $results = $this->model_catalog_product->getStockStatus($filter_data); foreach ($results as $result) { $json[] = array( 'stock_status_id' => $result['stock_status_id'], 'name' => strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8')) ); } } Добавить функцию в модель : admin/ model / catalog / product.php public function getStockStatus($data = array()) { $sql = "SELECT * FROM " . DB_PREFIX . "stock_status"; if (!empty($data['filter_name'])) { $sql .= " WHERE name LIKE '" . $this->db->escape($data['filter_name']) . "%'"; } $sort_data = array( 'name', 'sort_order' ); if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { $sql .= " ORDER BY " . $data['sort']; } else { $sql .= " ORDER BY name"; } 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; }
  4. Всем двс , подскажите пожалуйста , как изменить вид в админке , в редакторе товара , выбор "статуса отсутсвия на складе " на такой же как " Выбор в каких категориях показывать товар " . Нашёл код "показывать в категориях" в админке : Получается как только вводишь первые буквы категории , она остаётся одна и можно её выбрать . <div class="form-group"> <label class="col-sm-2 control-label" for="input-category"><span data-toggle="tooltip" title="<?php echo $help_category; ?>"><?php echo $entry_category; ?></span></label> <div class="col-sm-10"> <input type="text" name="category" value="" placeholder="<?php echo $entry_category; ?>" id="input-category" class="form-control" /> <div id="product-category" class="well well-sm" style="height: 150px; overflow: auto;"> <?php foreach ($product_categories as $product_category) { ?> <div id="product-category<?php echo $product_category['category_id']; ?>"><i class="fa fa-minus-circle"></i> <?php echo $product_category['name']; ?> <input type="hidden" name="product_category[]" value="<?php echo $product_category['category_id']; ?>" /> </div> <?php } ?> </div> </div> </div> Статус на складе работает как select , он просто показывает все статусы и можно выбрать один из предложенных . Вводить текст туда нельзя . <div class="form-group"> <label class="col-sm-2 control-label" for="input-stock-status"><span data-toggle="tooltip" title="<?php echo $help_stock_status; ?>"><?php echo $entry_stock_status; ?></span></label> <div class="col-sm-10"> <select name="stock_status_id" id="input-stock-status" class="form-control"> <?php foreach ($stock_statuses as $stock_status) { ?> <?php if ($stock_status['stock_status_id'] == $stock_status_id) { ?> <option value="<?php echo $stock_status['stock_status_id']; ?>" selected="selected"><?php echo $stock_status['name']; ?></option> <?php } else { ?> <option value="<?php echo $stock_status['stock_status_id']; ?>"><?php echo $stock_status['name']; ?></option> <?php } ?> <?php } ?> </select> </div> </div> Поменял код по образцу " выбора категоии " . <div class="form-group"> <label class="col-sm-2 control-label" for="input-stock-status"><span data-toggle="tooltip" title="<?php echo $help_stock_status; ?>"><?php echo $entry_stock_status; ?></span></label> <div class="col-sm-10"> <input type="text" name="stock_status_id" value="" placeholder="<?php echo $entry_stock_status; ?>" id="input-stock-status" class="form-control" /> <div id="input-stock-status" class="well well-sm" style="height: 150px; overflow: auto;"> <?php foreach ($stock_statuses as $stock_status) { ?> <div id="input-stock-status<?php echo $stock_status['stock_status_id']; ?>"><i class="fa fa-minus-circle"></i> <?php echo $stock_status['name']; ?> <input type="hidden" name="stock_status_id" value="<?php echo $stock_status['stock_status_id']; ?>" /> </div> <?php } ?> </div> </div> </div> Но у меня ничего не получилось , оно просто показывает так , будто я уже выбрал все статусы на складе и не работает . Текст он вводит , но статус не предлагает к выбору . Подскажите пожалуйста , как сделать выбор " статуса отсутсвия на складе " таким же , как выбор " в каких категориях показывать товар " .
  5. Qhiey

    Отзывы клиентов

    Спасибо вам огромнейшее за помощь , работает всё как надо , наконец-то ёмаё )))) Напишите пожалуйста в личку ваш я.кошель , я хочу вас отблагодарить копеечкой .
  6. Всем двс , задача не стандартная , зачем мне это - лучше не спрашивайте ? . но в общем , чпокаюсь уже с этим недели две , необходимо в контроллере product.php произвести некоторые махинации , в конце есть функция write() , которая отвечает за «написание» отзыва , там есть строчка : if ((utf8_strlen($this->request->post['text']) < 25) || (utf8_strlen($this->request->post['text']) > 1000)) { $json['error'] = $this->language->get('error_text'); } так вот , изменив эту строчку таким образом : if ($this->request->post['text'] == Статус на складе ){ $json['error'] = $this->language->get('error_text'); } Получаем , что если клиент введёт текст в отзыв ( Статус на складе ) то появится сообщение об ошибке , теперь к самой задаче , подскажите пожалуйста , как захреначить туда переменную , например : $test = $product_info[‘stock_status’]; Что бы проверка текста работала со статусом на складе ? по типу , что бы вот этот мрак , выглядел примерно так : $test = $product_info[‘stock_status’]; if ($this->request->post['text'] == $test){ $json['error'] = $this->language->get('error_text'); } надеюсь понятно написал суть вопроса , и если что , сильно не пинайте ??
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.