alexjk

Пользователи
  • Публикаций

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

  • Посещение

Репутация

4 Обычный

Информация о alexjk

  • Звание
    Пользователь
  • День рождения 16.10.1986

Информация

  • Пол
    Мужчина
  1. Проще раз увидеть чем сто раз читать. На фото показал что мне нужно сделать, ну или что-то в этом роде. Может есть решение... готов к сотрудничеству на платной основе.
  2. для замены кнопки в категориях нужно сделать следующее. в файле catalog/controller/product/category.php код: $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => $descr_plaintext, 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'])); заменить кодом: //alexjk update for add to cart button $tovar_is=''; foreach ($this->session->data['cart'] as $key => $value) { $product = explode(':', $key); if ($product[0] == $result['product_id']) { $tovar_is = 1; } } $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => $descr_plaintext, 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']), 'tovar_is' => $tovar_is ); //end of alexjk update Дальше нужно в файле catalog/view/javascript/common.js в функцие function addToCart(product_id) после строчки $('.attention').fadeIn('slow'); вставить строчку $('#'+ product_id +'').after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Busket!</span></a>').remove(); И наконец в файле catalog/view/theme/default/template/product/category.tpl код <a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a></div> заменить на <?php if ($product['tovar_is']!=1) { ?> <a id="<?php echo $product['product_id']; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a> <?php } else {?> <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a> <?php } ?> </div> Ну вот и все вроде. В поиске делается все точно так же как и в категориях.
  3. все, разобрался сам. Просто по аналогии изменил category.php и немножко поправил category.tpl, а также скрипт common.js а именно функцию AddToCart()
  4. Сделал такую фишку. На странице товара когда покупатель кликает "в корзину" кнопка заменяется аналогичной с надписью "уже в корзине" и по следующему клику на нее перенаправляет покупателя на страницу Корзины (... ну мне так нужно) Но никак не получается сделать то же на странице просмотра товара списком/витриной. Версия ocStore v1.0.1. Вот как я сделал для страницы товара: в файле catalog/controller/product/product.php после строки где-то 245 после кода строчки ниже $this->data['options'] = array(); добавил //jk update for add to cart button $this->data['tovar_is'] = ''; foreach ($this->session->data['cart'] as $key => $value) { $product = explode(':', $key); if ($product[0] == $this->request->get['product_id']) { $this->data['tovar_is'] = 1; } } //end of jk update дальше в файле catalog/view/theme/default/template/product/product.tpl строку ниже <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div> заменил на <?php if (!$tovar_is) { ?> <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div> <?php } else {?> <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a></div> <?php } ?> в том же файле ниже, в скриптах, после строки $('.attention').fadeIn('slow'); вставил строчку: $("#button-cart").after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a>').remove(); Вот как-то так, но в категориях не могу никак разобраться как так что бы после нажатия "в корзину" менялось аналогично. ПОМОГИТЕ кто нибудь.
  5. все верно - В файле callback.php указать надо свой email вместо прописаного там и все )
  6. Категория 1 - под категория 1.1 - под категория 1.2 - под категория 1.3 - под категория 1.4 Категория 2 - под категория 2.1 - под категория 2.2 - - под под категория 2.2.1 - - под под категория 2.2.2 Категория 3 Категория 4 Нужно чтобы в зависимости от настройки в админ панели (отметки может на категории) Категория 1 пользователям не выводила под категории, а только товары из всех её под категорий. А категория 2 выводила под категорию 2.1 и все товары из других её дочерних под категорий.
  7. да все отлично, лучше внимательно посмотреть место где вы хотите этот блок вывести...
  8. вроде заработало, спасибо ! )))
  9. кэш чистил, полностью удалял... без результатно. может исключить тогда не нужные елементы когда формирутся масив для вывода в шаблон?
  10. нужно что бы товары у которых стоит определенный stock_status_id не отображались на сайте. Думал сделать просто: в файле catalog/model/catalog/product.php в public function getProductsByCategoryId в запрос добавить условие типа WHERE p.stock_status_id !=11 Когда запрос выполняю в phpmyadmin работает, но на сайте нет изминений. Может кто делал подобное или может посоветовать... osStore 0.1.6, есть модуль фильтров. Код public function getProductsByCategoryId public function getProductsByCategoryId($category_id, $values, $sort = 'p.sort_order', $order = 'ASC', $start = 0, $limit = 20) { $sql = "SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id)"; if($category_id != 0) { $sql .= "LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id)"; } $sql .= " WHERE p.stock_status_id !=11 AND p.stock_status_id !=9 AND p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "'"; if($category_id != 0) { $sql .= " AND p2c.category_id = '" . (int)$category_id . "'"; } if (isset($values) && $values != '') { $values_without_underline = ""; $values_for_IN = ""; $values_arr = explode('_', $values); asort($values_arr); reset($values_arr); foreach ($values_arr as $value_id) { if (empty($values_for_IN)) { $values_for_IN = "'" . $value_id . "'"; } else { $values_for_IN .= ", '" . $value_id . "'"; } $values_without_underline .= $value_id; } $sql .= " AND (SELECT GROUP_CONCAT(DISTINCT value_id ORDER BY value_id ASC SEPARATOR '') FROM " . DB_PREFIX . "product_to_value WHERE product_id = p.product_id AND p.stock_status_id !=11 AND p.stock_status_id !=9 AND value_id IN (" . $values_for_IN . ")) = '" . $values_without_underline . "'"; } $sort_data = array( 'pd.name', 'p.sort_order', 'special', 'rating', 'p.price', 'p.model' ); if (in_array($sort, $sort_data)) { if ($sort == 'pd.name' || $sort == 'p.model') { $sql .= " ORDER BY LCASE(" . $sort . ")"; } else { $sql .= " ORDER BY " . $sort; } } else { $sql .= " ORDER BY p.sort_order"; } if ($order == 'DESC') { $sql .= " DESC"; } else { $sql .= " ASC"; } if ($start < 0) { $start = 0; } $sql .= " LIMIT " . (int)$start . "," . (int)$limit; $query = $this->db->query($sql); return $query->rows; }
  11. нет - там сейчас описание товара краткое, и пустого практически нет.
  12. jquery clone()

    var p = clone.find('a#del').removeAttr("onclick").attr("onclick", "removeValue(" + row + ");"); правда тут опять ступор ...
  13. jquery clone()

    спасибо за копипаст но мне нужно не только id или только name - нужно и то и другое поменять, как? вот :rolleyes: var inp = clone.find('input#myid').removeAttr("name").attr("name","value" + count)
  14. jquery clone()

    суть вроде проста, есть: <tr id="value1"> <td><input type="text" name="some_name1"></td> <td><input type="text" name="some_name_new1"></td> <tr> делаю так: function copyValue(value) { var count=value++; var clone=$('#value' + value).clone(true).removeAttr("id").attr("id", "value" + count); $('#option_value'+value).append(clone); } и получается: <tr id="value2"> <td><input type="text" name="some_name1"></td> <td><input type="text" name="some_name_new1"></td> <tr> а нужно чтобы еще name="some_name2" и name="some_name_new2" как сменить атрибут name внутри скопированного контейнера?