Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Новые возможности форумов » Скрипт для создания анкет (новая версия)


Скрипт для создания анкет (новая версия)

Сообщений 121 страница 140 из 481

1

По многочисленным просьбам, для ролевых форумов реализован новый скрипт анкет,

Спасибо Герде за инициативу и стимулирование создания новой версии!                     

Скрипт для создания анкет

Новая версия

(Шаблон АнкDEMO (Шаблон анкеты) 
Анкета (Итог)

http://s6.uploads.ru/qIWjv.png

1. Позволяет создавать нужные типы полей для ввода текста: input и textarea, select и checkbox с заранее заданными пунктами на выбор.
2. Позволяет автоматически задавать название анкет связанное с именем ника, либо с именем нового персонажа, вводимого юзером, либо постоянным именем для всех анкет, либо с именем полностью задаваемым заполнящим анкету.
3. Позволяет создавать анкеты либо отдельной темой, либо присоединяемыми постами к шаблону анкеты. Можно создавать неограниченное число независимых шаблонов анкет в прописанных заранее форумах!
4. Позволяет помечать обязательность некоторых(или всех) полей для заполнения.
5. Позволяет пользователю вставлять в поле textarea BB-теги  http://s3.uploads.ru/t5xo2.jpg (см. дополнение к скрипту)  /Ссылки вставляются обычным текстом, они автоматически преобразуются сервисом/
6. Позволяет разбивать длинную анкету на несколько частей, последовательно открываемых по заполнении нужных полей

ВСТАВКА КОДА:

В HTML верх

<!-- Скрипт для создания анкет © Alex_63 -->
<script type="text/javascript">
var Questnr = {};
Questnr.groups = [
1,2]; //Группы, которым разрешено создавать шаблоны для анкет
Questnr.forums = [1,4,26]; //Форумы с допуском к анкетированию
Questnr.title  = 'Анкета от '; //Начало заголовка темы с анкетой (по умолчанию)
Questnr.noedit = 1; //Запрет редактирования заполненной анкеты пользователем
</script><script type="text/javascript">
['viewforum','viewtopic','post','edit'].indexOf($('.punbb')[0].id.substr(4))!=-1&&
$().pun_mainReady(function(){var s='script',l='https://forumstatic.ru/files/0015/c4/3f/45857.js';
var f=$('#pun-viewforum').length?$('link[rel="alternate"]'):$('.crumbs a[href*="viewforum"]:last');
f=+f[0].href.match(/id=(\d+)$/)[1];Questnr.forums.indexOf(f)!=-1&&document.write('<'+s+' src="'+l+'"></'+s+'>')});
</script>

Красным Ваши настройки для скрипта анкет.


Дополнение: Кнопки BB-тегов над многострочными полями в анкете
http://sg.uploads.ru/5lKMI.png
В HTML верх:

<!-- Анкета: Добавка кнопок BB-тегов к textarea -->
<style>
.new[id=form-buttons]{max-width:104px}.new[id=form-buttons] table{margin:0}
.new[id=form-buttons] td{border:0 none transparent!important; height:24px;padding:0!important}
</style>

<script type="text/javascript">
if(GroupID != 3)$(function() {var button_tbl = $('#post #form-buttons').clone().addClass('new');
  button_tbl.find('#button-image>img')[0].setAttribute('onclick','bbcode(\'['+'img]\',\'[/img]\')');
  button_tbl.find('td:not(#button-bold):not(#button-italic):not(#button-underline):not(#button-image)').remove();
  button_tbl.insertBefore('.questionary-post textarea');
  $('.new[id="form-buttons"]').on('mouseenter',function() {
     var area = $(this).next('textarea');if(!area.length){area = $(this).next().find('textarea');}
     $('.questionary-post').find('textarea').removeAttr('id');
     if(area[0].id!='main-reply')area.attr('id','main-reply');
  }).on('mouseleave',function(){$('.questionary-post textarea').removeAttr('id');});
});
</script>

СКРИНШОТЫ

Вид кнопки создания шаблона анкет в прописанных в скрипте форумах


http://s3.uploads.ru/8Nqxy.jpg


Вид панели управления создания шаблона анкеты


http://s2.uploads.ru/evoS4.jpg


Развернутый вид меню панели управления создания шаблона анкеты


http://sh.uploads.ru/T16dA.jpg

СОЗДАНИЕ ШАБЛОНОВ АНКЕТ, ПОЯСНЕНИЯ

Для создания в определенном форуме шаблона анкеты, должна быть создана хотя бы одна тема.
http://sf.uploads.ru/DzUlY.jpg


Начало работы происходит в левой части панели управления создания шаблона анкеты (элементы управления 1-3)

Элементы управления:
1. Радиокнопки переключения варианта создания анкет(создавать новую тему/добавлять пост в текущую)
2. Меню для выбора варианта создания заголовка анкеты
3. Кнопка вставки управляющего тега, определяемого ваш выбор элементов управления 1 и 2 (Где создавать анкету и формат заголовка)
PS: Простановка своего варианта начала названия темы в шаблоне анкеты:
[input topic-name=Анкета от ...]
В первом теге в шаблоне выставлено имя темы по умолчанию (см. пример выше), заменяем в очередном шаблоне на нужное


11. Заполните название (очередной) темы с шаблоном анкеты (К примеру шаблон анкеты к сюжету «Альфа и Омега»)


12. Форма ответа, создающая шаблон анкеты


Вставка тегов:  input и textarea, select и checkbox
4. Осуществляем выбор нужного элемента в выпадающем меню №4
5. Вписываем поясняющий текст, отображаемый внутри выбранного элемент, input под номером 5
6. Прописываем размеры выбранного элемента, поле (поля) под номером 6. Размеры прописываются числом, подразумеваются пикселы!
(Ширину можно также указывать в процентах.)
7. Флажок выбора обязательности заполнения вставленного элемента пользователем (Если обязательный элемент не заполнен - анкета не отправляется)
8. Кнопка вставки выбранного элемента в форму создания шаблона


9. Разделитель анкеты на части.
Если применяем тег разделения [part], то его необходимо вставлять перед каждой частью анкеты, включая первую!
http://sf.uploads.ru/t/aLKsx.jpg


10. Вставка обрамляющих тегов пояснения (пояснения не включаются в отправляемую анкету, заполненную юзером)


P.S.: Все теги input и textarea, select и checkbox можно оборачивать в любые теги, кроме textarea, для которого исключения теги: [b][/b], [i][/i], [u][/u], [img][/img],
которые может вставить сам пользователь в поле textarea через кнопки вставки:
http://s9.uploads.ru/4SQqk.png

ДОПОЛНЕНИЯ

Разрешаем отправку ответов в некоторых темах в анкет-форумах
В HTML верх ниже основной части скрипта анкет:

<script>
Questnr.allowReply = [ 17,28 ];// ID тем в анкет-форумах, где разрешено отвечать юзерам
</script>

Если нужно вернуть форму ответа во всех темах анкет-форумов, -
код будет выглядеть так:

<script>
Questnr.allowReply = [+$('link[rel="alternate"]')[0].href.match(/id=(\d+)$/)[1]]; //текущая тема
</script>


Тестируем, отписываемся о работе скрипта!

+10

121

бланш
Попробуйте заменить код для картинки на такой:

<img src="http://savepic.su/6945673m.gif"><pre class="Ava-th" style="margin: -63px auto 47px 370px;">[input width=170]Ccылка на аватар[/input]</pre><script>(function(){var $inp = $('script:last').prev(),b=$inp.text(),$img = $inp.prev()[0];if(b.match(/(?:png|gif|jpg)$/i))$img.src=$inp.hide().text();}());</script>

0

122

бланш написал(а):

понятно, что они уехали, так как там стоят настройки тега пре, как можно настроить так, чтобы эти настройки оставались лишь в шаблоне для заполнения? ибо они только там мне и нужны, в итоговом варианте кодами все ровно настроено)) или, может, как-то поправить, чтобы и там, и там все было ок

Давайте по одному - разберёмся с изображением, примемся за остальное, в принципе в Шаблоне есть свой класс, в итоговой анкете - нет
Очевидно вставить в шаблон css через класс Шаблона и нужный селектор - стиль непосредственно с элементов - снять(Но это позже)

0

123

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:11)

0

124

бланш
Ок, попробуйте по другому: всё удаляем и заменяем <img src="http://savepic.su/6945673m.gif">
На

<pre class="Ava-th" style="margin: -63px auto 47px 370px;"><script>document.write('<img src="')</script>[input width=170]Ccылка на аватар[/input]"></pre>

0

125

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:14)

0

126

бланш
Попробуйте ещё раз заменить код для картинки:

<img src="http://savepic.su/6945673m.gif" onload="if(!$(this).hasClass('set')&&$(this).next().text().match(/(?:png|gif|jpg)$/i)){$(this).addClass('set');this.src=$(this).next().hide().text()}"><pre class="Ava-th" style="margin: -63px auto 47px 370px;">[input width=170]Ccылка на аватар[/input]</pre>

+1

127

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:18)

0

128

Для разного стиля в Шаблоне и в итоговой анкете берете и делаете так
Был инпут:

<pre style="margin: 10px auto -9px 147px;"> [input width=270]ИФ персонажа на англ.[/input] </pre>

Заменяете на:
<pre class="inp01"> [input width=270]ИФ персонажа на англ.[/input] </pre>
(У следующего - inp02 и т.д.
Далее, в начало HTML(Шаблона Анкеты, после topic=new [input topic-name] [html]) вставляем два стиля (Для Шаблона и Самой Анкеты)

<style>
/*для Самой Анкеты*/
.post .inp01 {
  margin: A1px B1px C1px D1px;
}
.post .inp02 {
  margin: A2px B2px C2px D2px;
}
.... и т.д.
/*Для Шаблона*/
.questionary-post .inp01 {
  margin: A1px B1px C1px D1px;
}
.questionary-post .inp02 {
  margin: A2px B2px C2px D2px;
}
.... и т.д.
/*Для картинки в Шаблоне*/
.questionary-post .foto2 img[onload] {
  margin: A4px B4px C4px D4px!important;
}
</style>

+1

129

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:21)

0

130

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:25)

0

131

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:29)

0

132

1. Вынесите <br> за тег <pre>
<pre class="inp03"><br>text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 text04 </pre>

2.
Ограничение ширины:

.inp03  {
display:inline-block;
max-width:200px;
}

0

133

А что, разве в теxtarea cтрока так и не переводиться ???
Ведь вроде поправили с <pre>

0

134

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:32)

0

135

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:36)

0

136

бланш написал(а):

не сработал(

Отредактировано бланш (Сегодня 03:15:29)

А Вы вставили в стиль ??? ( В тот кусок с тегами <style> для Шаблона  для Анкеты)

0

137

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:41)

+1

138

бланш
Добавьте красным:
.inp03 {max-width:200px;word-wrap:break-word}

0

139

бланш написал(а):

теперь не хочет работатьв прошлый раз просто добавили тег пре (пост 111)

Ну оно не должно влиять - тег <pre> должен переносить при переводе строки

А в других textarea - тоже не переносит ?

0

140

...

Отредактировано бланш (Пт, 11 Ноя 2016 02:14:45)

0


Вы здесь » Единый форум поддержки » Новые возможности форумов » Скрипт для создания анкет (новая версия)