Jump to content


Photo
- - - - -

Организация артикула и поиск по нему


Best Answer SmetDenis , 15 July 2013 - 09:39

Попробуйте в этом классе
media\zoo\applications\jbuniversal\elements\jbprice\jbprice.php

добавить метод

public function bindData($data = array()) {
    // ваш код
    parent::bindData($data);
}
Этот метод отвечает за сохранение данных элемента.
В нем вы перехватите данные из массива $data, измените их по своему желанию и отправите дальше сохранятся как и было с помощью вызова родительского метода. Go to the full post


  • This topic is locked This topic is locked
23 replies to this topic

#11 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 15 July 2013 - 09:54

Это как я понимаю позволит присвоить буквенный индекс для всех каталогов? или для каждого свой? Если один для всех то с учетом наличия 7 каталогов есть вероятность получить 7 одинаковых артикулов.

Это уже зависит от того что вы напишите вместо строки "// ваш код"

Зависимость от каталога можно сделать так
if ($this->getItem()->application->id == 1) {
   // один тип каталога
} else if ($this->getItem()->application->id == 2) {
   // другой тип каталога
}

  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#12 sc

sc
  • JBZoo User (rus)
  • User rate: 2.4
  • posts: 163
  • topics: 26

Posted 15 July 2013 - 11:25

2.0 (очень скоро).

<_< ;D ждемс-ждемс


  • 1

yootheme-logo.png
Лицензирование YOOtheme (шаблоны, Widgetkit, ZOO). А так же самые свежие обновления напрямую от ZOOlanders, SH404SEF, Akeeba Backup PRO, Admin Tools PRO, Accordion Menu и д.р. Пишите в ЛС


#13 Sliapy

Sliapy
  • JBZoo User (rus)
  • User rate: 50.5
  • posts: 6393
  • topics: 15

Posted 15 July 2013 - 11:30

В другой теме Денис писал, что релиз должен состояться на этой неделе.


  • 1
[color=#aa0000]Не забывайте нажимать кнопку "Вопрос Решён" под сообщением, которое решило Вашу проблему.[/color]

#14 sc

sc
  • JBZoo User (rus)
  • User rate: 2.4
  • posts: 163
  • topics: 26

Posted 15 July 2013 - 11:35

В другой теме Денис писал, что релиз должен состояться на этой неделе.

Ураааааа!


  • 0

yootheme-logo.png
Лицензирование YOOtheme (шаблоны, Widgetkit, ZOO). А так же самые свежие обновления напрямую от ZOOlanders, SH404SEF, Akeeba Backup PRO, Admin Tools PRO, Accordion Menu и д.р. Пишите в ЛС


#15 3d

3d
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 96
  • topics: 33

Posted 15 July 2013 - 12:13

Это уже зависит от того что вы напишите вместо строки "// ваш код"

Зависимость от каталога можно сделать так

if ($this->getItem()->application->id == 1) {
   // один тип каталога
} else if ($this->getItem()->application->id == 2) {
   // другой тип каталога
}

Таким образом?
 
 
<?php
/**
 * JBZoo is universal CCK based Joomla! CMS and YooTheme Zoo component
 * @category   JBZoo
 * @author     smet.denis <admin@joomla-book.ru>
 * @copyright  Copyright © 2009-2013, Joomla-book.ru
 * @license    http://joomla-book.ru/info/disclaimer
 * @link       http://joomla-book.ru/projects/jbzoo JBZoo project page
 */
defined('_JEXEC') or die('Restricted access');
 
// register ElementRepeatable class
App::getInstance('zoo')->loader->register('ElementRepeatable', 'elements:repeatable/repeatable.php');
 
/**
 * The Price element for JBZoo
 */
class ElementJBPrice extends ElementRepeatable implements iRepeatSubmittable
{
    /**raznie artikuli
*/
public function bindData($data = array()) {
    if ($this->getItem()->application->id == 12 && 13) {
   // KV
} else if ($this->getItem()->application->id == 24 && 25) {
   // OF
}else if ($this->getItem()->application->id == 18 && 19) {
   // SK
}else if ($this->getItem()->application->id == 16 && 17) {
   // GR
}else if ($this->getItem()->application->id == 20 && 21) {
   // DA
}else if ($this->getItem()->application->id == 14 && 15) {
   // DO
}else if ($this->getItem()->application->id == 22 && 23) {
   // MA
}
    parent::bindData($data);
}
 
/**
     * Element constructor
     */
    public function __construct()
    {
        parent::__construct();
        $this->registerCallback('ajaxAddToCart');
        $this->registerCallback('ajaxRemoveFromCart');
        $this->registerCallback('ajaxModalWindow');
    } 

Edited by SmetDenis, 16 July 2013 - 07:58.
Отличный тег [code] !

  • 0

#16 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 16 July 2013 - 07:59

Да, примерно так, только меня сильно смущает логика условий внутри if.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#17 igorkuzyukov

igorkuzyukov
  • JBZoo User (rus)
  • User rate: 0.5
  • posts: 133
  • topics: 23

Posted 16 July 2013 - 08:21

В другой теме Денис писал, что релиз должен состояться на этой неделе.

Да ладно ....... ^-^  неужели дождались... как не пропустить и обновиться?


  • 0

#18 3d

3d
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 96
  • topics: 33

Posted 16 July 2013 - 10:08

Да, примерно так, только меня сильно смущает логика условий внутри if.

Чем именно? Что-то не так? Просто один артикул нужно присвоить двум категориям внутри каталога, или нужно присваивать ID каталога? Тогда подскажите где его вытащить?


  • 0

#19 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 16 July 2013 - 10:11

Чем именно? Что-то не так? Просто один артикул нужно присвоить двум категориям внутри каталога, или нужно присваивать ID каталога? Тогда подскажите где его вытащить?


Учите PHP ;)

$appId = $this->getItem()->application->id;
if ($appId == 1 || $appId == 2) {
   // code
}

  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#20 3d

3d
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 96
  • topics: 33

Posted 16 July 2013 - 10:21

Учите PHP ;)
 

$appId = $this->getItem()->application->id;
if ($appId == 1 || $appId == 2) {
   // code
}

Спасибо.. С PHP есть проблемы))) 

 

и как вытащить ID каталога? здесь же нужен ID каталога, если нужен артикул для каталога?


  • 0




Click to return to top of page in style!