добавить функционал BannerX

Добрый день, Василий!
Я озадачился баннерокрутилкой для revo, нашел компонет BannerX.
ВСе хорошо, но очень надо добавить еще два поля — текстовое поле (для баннера-текста, без картинки) и поле для сортировки (что то вроде еще одного параметра position).
Ну и соответственно изменить внешний вид управления компонента и добавить функционал в сниппет.
Написание компонентов и PDO я только осваиваю, поэтому прошу помощи.
1. можно ли внести эти изменения в компонент BannerX?
2. насколько сложно будет внести эти изменения?
3. может посоветуете что то, для успешной реализации моей задумки?

Заранее Спасибо!
Роман Харин
03 сентября 2012, 13:22
modx.pro
1
1 606
0

Комментарии: 26

Василий Наумкин
03 сентября 2012, 20:00
0
1. Баннер-без-картинки — это что? Это же не баннер вообще. Если есть ­­необходимость — пишите кодовое слово, и при выводе чанка фильтруйте его ­­сниппетом, типа [[+file:filter]], и если вместо картинки это слово — ­­выводите описание, а не картинку.
Если что — инфа про такую фильтрацию ­­в чанках — ­­http://goo.gl/EsYAH

2. Поля для сортировки и так есть — параметр ­­&sortby. Называете баннеры в позиции типа «1. первый баннер», ­­«2. второй баннер» и сортируете по имени ­­(&sortby=`name`).

Возможно, в будущем добавлю сортировку ­­перетаскиванием, как в галерее miniShop, но пока некогда.

Таким ­­образом, ничего менять не надо — можете уже сейчас реализовывать свою ­­задумку.
    Роман Харин
    04 сентября 2012, 16:28
    0
    Можно конечно код перебрать, но лучше же спросить. Как сделать, что бы при добавлении нового баннера добавление картинки было необязательным полем?
Роман Харин
04 сентября 2012, 16:41
0
А еще Очень хочется в статистику добавить число показов.
    Василий Наумкин
    04 сентября 2012, 17:03
    0
    Можно, только у меня времени нет.
      Роман Харин
      04 сентября 2012, 17:05
      0
      я сам попробовал сделать, нужно только направить в правильную сторону =)
      Роман Харин
      04 сентября 2012, 17:11
      0
      буду пробовать
        Роман Харин
        12 сентября 2012, 13:10
        0
        Добавил +1 в сниппет, в таблицу ads добавил поле. В таблицу значения записываются, но никак не могу вывести эти значения в админку, ну хотя бы на страницу Баннеры (типо главная страница компонента).
        Добавил в карту и в схему, в ads.grid.js добавил. Появилось поле в админке на главной, но там пусто.
        Может подскажешь где копать?!
      Роман Харин
      04 сентября 2012, 17:08
      0
      Насчет сортировки. Дело в том что на странице есть три места, где будут выводится баннеры — они все разного размера, но &position у них одинаковые. Грубо говоря необходимо сделать &position2. Я уже подумываю что бы просто продублировать реализацию &position, что бы сделать &position2.
      Антон Слободчук
      06 сентября 2012, 00:28
      0
      Действительно имеет смысл добавить сортировку и описание баннера. Тогда можно делать и такие карусели: twitter.github.com/bootstrap/javascript.html#carousel
      Поддерживаю топикстартера :)
        Роман Харин
        06 сентября 2012, 13:15
        0
        Совсем нет времени, поэтому решил добавить сортировку иначе.
        В таблице ads добавил еще одно поле — place, сделал так, что при нажатии на кнопку добавить баннер появляется radiogroup с выбором одного из трех значения, ​потом в сниппет добавлю параметр place и по нему буду сортировать вывод ​баннеров. НО! Значения из формы добавления нового баннера почему то не ​передаются в базу. Я никак не вразумлю где и что я не добавил или сделал не ​так.
        В моделях в схему и в карту добавил.
        В ads.js ​добавил
        {header: _('Place'),dataIndex: ​'place',sortable: true}
        
        после 77 и 112 строчки
        и в районе ​294-296 строчек
        {
        name: ​'Place',
        fieldLabel: 'Place',
        allowBlank: ​ true,
        columns: 3,
        items: [
        ​ {
        name: 'Place',
        ​ boxLabel: 'Top',
        ​ inputValue: '1'
        },
        ​ {
        name: ​'Place',
        boxLabel: ​'Right',
        inputValue: ​'2'
        },
        {
        ​ name: 'Place',
        ​ boxLabel: 'bottom',
        ​inputValue: '3'
        }
        ​],
        xtype: 'radiogroup'
        }
        
          Василий Наумкин
          06 сентября 2012, 14:00
          0
          И у меня совсем нет времени.
            Роман Харин
            12 сентября 2012, 13:47
            0
            И все же. Ситуация теперь следующая. При создании новых баннеров все работает.
            А вот при изменении уже существующих проблема остается — значения из формы не ​​передаются в базу.
              Роман Харин
              12 сентября 2012, 13:50
              0
              ДУмаю надо копаться в процессорах ads -> update. Я копался и безуспешно.
            Роман Харин
            12 сентября 2012, 18:17
            0
            Н-да уж. Видимо никто не заморачивался еще баннерокрутилкой!
              Василий Наумкин
              12 сентября 2012, 18:20
              0
              Ага, никто не заморачивался. BannerX сам по себе, на дереве вырос.

              Есть хорошая новость — скоро буду вносить в него изменения, появится поле description и еще может что-то.
                Роман Харин
                12 сентября 2012, 18:22
                0
                =)
                  Роман Харин
                  12 сентября 2012, 18:29
                  0
                  а как скоро?
                    Василий Наумкин
                    13 сентября 2012, 18:41
                    0
                    Уже делаю.

                    Сделал поле description и сортировку баннеров в позиции, перетаскиванием.
                    Благодарность будете присылать?
                      Роман Харин
                      14 сентября 2012, 21:21
                      0
                      Круто. Я смотрю появилась версия 0,3. БЛагодарю!
                      С меня 100 гр. и пирожок.
                      А я вот тоже сделал все что задумал =)
                        Василий Наумкин
                        14 сентября 2012, 21:23
                        0
                        Там даже сразу новый компонент, в итоге, появился.

                        modx.com/extras/package/bannery
                          Роман Харин
                          14 сентября 2012, 21:28
                          0
                          Я уже смотрю, сутки не было меня, а тут такие глобальные перемены. Будет оценивать. Вот доделаю проект пришлю тебе «пирожок» =).
                          Меня к стати сегодня логинза не пускала то ли днем, то ли утром утром. Пойду на ветку Баннер Y
                Роман
                14 ноября 2015, 16:29
                0
                Василий, BannerY считает только клики? Показы баннеров не считает, как я понимаю?
                  Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                  26