Форум Diz-Cs.Ru
Преимущества регистрации:
Возможность создания тем
Общение с пользователями
Найдете множество полезной информации
Найдете своих единомышленников
DIZ-CS.RU - Мы с Вами НАВСЕГДА!
  • Страница 1 из 1
  • 1
Модератор форума: -SAM-  
Активный форум » WEB-мастеру » Скрипты для uCoz » Доп. поля для любого модуля
Доп. поля для любого модуля
Дата: Вт, 02.04.2013, 00:12:23 | Сообщение # 1
Аватарка [ErSTe™]
OFF
Пользователь
148 Сообщения:
138 Награды:
3 Отзывы:
ICQ пользователя:
Skype пользователя:

Плюсы:
- ограничение только на символы, суммарно 9999.
- работает БЕЗ PHP.
- дополнительные поля всегда заполняются автоматически при редактировании материала, что очень удобно и отличает этот скрипт от многих других аналогов.
- можно вставлять поля в плеера музыки и видео, да и вообще почти куда угодно, кроме как в сами операторы юкоза.
- ну и вроде бы простой
Минусы:
- убивает поле краткого описания (по умолчанию), можно убить поле полного описания, но эта проблема решаема, просто добавьте новое поле textarea.
остальные не выявлены.

Установка:

1. Скачиваем скрипт и закидываем себе на сайт.
2. На странице добавления и редактирования материала после $BODY$ (или любого другого тега):
Код
<div class="blockaddinput">
1: <input class="addinput" type="text"><br>
2: <textarea rows="10" cols="45" class="addinput"></textarea>
</div>
<a href="javascript://" class="addinputbutton">Добавить поле</a>

<script src="/js/nexInput.js"></script>

3. В шаблоне вида материала заключаем весь код в div с class="addinput$ID$",
в самый конец:
Код
<div class="inputmess$ID$">$MESSAGE$</div>
<script>
//By Nexonion специально для apo-ucoz.com
var input$ID$ = $('.inputmess$ID$').html().split(' |$|');
var classMaterial = ".addinput$ID$";

for(var i = 0; i < input$ID$.length; i++){
var sorce = $(classMaterial).html();
var reg = new RegExp("%other"+i+"%", "gi");
if(input$ID$[i] == ""){
$(classMaterial).html(sorce.replace(reg,''));
} else {
$(classMaterial).html(sorce.replace(reg,input$ID$[i]));
}
}
//By Nexonion специально для apo-ucoz.com
</script>

4. В шаблоне страницы с комментариями заключаем весь код в div с class="addinput$ID$",
в самый конец:
Код
<div class="inputmess$ID$">$BRIEF$</div>
<script>
//By Nexonion специально для apo-ucoz.com
var input$ID$ = $('.inputmess$ID$').html().split(' |$|');
var classMaterial = ".addinput$ID$";

for(var i = 0; i < input$ID$.length; i++){
var sorce = $(classMaterial).html();
var reg = new RegExp("%other"+i+"%", "gi");
if(input$ID$[i] == ""){
$(classMaterial).html(sorce.replace(reg,''));
} else {
$(classMaterial).html(sorce.replace(reg,input$ID$[i]));
}
}
//By Nexonion специально для apo-ucoz.com
</script>

5. В нужном вам месте вашего шаблона выводим данные:
Код
%other1%
Где 1 это порядковый номер. Счёт полей идёт с 0.

6. Вот и всё должно работать.

Внимание:
- Установка указана с настройками по умолчанию.
- Внутри скрипта имеются дополнительные настройки.
- Отключив Автоматический контроль вы можете как и где угодно расставить свою поля, но записываться они будут по порядку расположения.
- Структура иерархии input'ов не важна, главное чтобы у них был правильный класс (в соответствии с настройками) и скрипт стоял под ними.
- Кнопка добавить так же не обязательна.
- Нельзя использовать сочетания символов идентичные с уникальным разделителем.



[Мои Друзья: SindIkat28, Explo, Whisky, Archi-T]
Активный форум » WEB-мастеру » Скрипты для uCoz » Доп. поля для любого модуля
  • Страница 1 из 1
  • 1
Поиск: