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

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

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


Вы здесь » Единый форум поддержки » Архив » Скрипты: Шаблон для тем с Анкетами и Темы сообщениями по шаблону


Скрипты: Шаблон для тем с Анкетами и Темы сообщениями по шаблону

Сообщений 101 страница 120 из 147

101

Alex_63
Куда хочет, туды и вставляет(всё одно стирается), думаю перед теxtarea, как пояснение, хотя имхо проще пояснения вставлять через placeholder http://htmlbook.ru/html/textarea/placeholder

+1

102

Deff написал(а):

хотя имхо проще пояснения вставлять через placeholder

Ну так в твоем варианте анкеты они так и ставятся, не?
К инпутам radio, checkbox вставлять в виде label

0

103

Alex_63 написал(а):

А куда его вставлять-то?

как работает анкета у Деффа?
на основе бб-цитат. пост с анкетой полностью цитируется, теги quote выпиливаются, введенный юзером текст обрамляется в теги color=заданный_цвет и в корячиваются в виде нового поста/нового топика.
суть в том, чтобы в любом месте поста (над/под/в середине между пунктами) вкорячивать текст в определенных теках, который не будет копироваться при публикации поста.

подитожу:
1. нужны типы полей для ввода текста: input и textarea
2. а также select и checkbox с заранее заданными пунктами на выбор
3. нужна возможность обрамлять часть текста анкеты в тег, который НЕ будет копироваться при публикации юзером анкеты
4. нужна возможность дублировать анкету в личку заданным юзерам (= уведомление на мыло)
5. (если не лень) разбивание длинной анкеты на части как тут: http://ttgaming.mlsco.ru/recruitment/

если сделать пункт 1, сбудется мечта форумов, которые уже юзают скрипт.
если сделать пункты 1-4, майбб получает, считайте, полнофункциональную форму для оформления заявок, как на сайтах.
а если припилить еще и пункт 5, то мы получаем форму как на самых популярных плагинах для WP.

кароч, если проблематично с допиливанием, можно его разделить на этапы. :)

+1

104

Герда написал(а):

. (если не лень) разбивание длинной анкеты на части как тут: http://ttgaming.mlsco.ru/recruitment/

Я так понимаю весь этот спичь сводится к возможности наличия нескольких образцов Анкеты в одной теме, другое дело что явной связи меж ними не будет, либо только поисков по Нику в данном форуме (есть в Поиске Поиск по Нику и нужному форуму)
Либо прописывать в Начальном заголовке темы Ник и далее Название и номер куска Анкеты
Т.е неплохо в заголовке темы иметьвозможность формулы вставка ника и Номера по порядку темы созданной юзером
К примеру [NIC]+Название Темы(Или Анкеты)+ [UserNumTem]
Но склеивать разные темы в одну - я ни наю как... Хотя наверно возможно, что в первозозданном Посте Анкеты(уже прописанным и отправленным юзером), автогенерится второй пост с заготовкой второй части...
Но это опять уже будет длинно текст... Хотя добавить кнопку - перейти ко второй части, которая гасит(скрывает) первую, уже прописанную юзером часть и вставляет ниже заготовку второй части ... Чот не думается сегодня....

0

105

Deff написал(а):

Хотя добавить кнопку - перейти ко второй части, которая гасит(скрывает) первую, уже прописанную юзером часть и вставляет ниже заготовку второй части ...

+++, добавить разделители (например, тег [hr] + [описание(2 часть)] ) По этим тегам разбивать на части
===============
Гы, стоит подумать над этим, -

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

+1

106

Deff написал(а):

Я так понимаю весь этот спичь сводится к возможности наличия нескольких образцов Анкеты в одной теме, другое дело что явной связи меж ними не будет, либо только поисков по Нику в данном форуме (есть в Поиске Поиск по Нику и нужному форуму)
Либо прописывать в Начальном заголовке темы Ник и далее Название и номер куска Анкеты
Т.е неплохо в заголовке темы иметьвозможность формулы вставка ника и Номера по порядку темы созданной юзером
К примеру [NIC]+Название Темы(Или Анкеты)+ [UserNumTem]
Но склеивать разные темы в одну - я ни наю как... Хотя наверно возможно, что в первозозданном Посте Анкеты(уже прописанным и отправленным юзером), автогенерится второй пост с заготовкой второй части...
Но это опять уже будет длинно текст... Хотя добавить кнопку - перейти ко второй части, которая гасит(скрывает) первую, уже прописанную юзером часть и вставляет ниже заготовку второй части ... Чот не думается сегодня....

че-то сложнааа...
разделение разделение анкеты по этапам сводится всего-то к обрамлению отдельных ее частей в теги. например:

Код:
<div id="prt1">
тут первая часть вопросов

<input type="button" value="Далее">
</div>

<div id="prt2">
тут вторая часть вопросов

<input type="button" value="Далее">
</div>

<div id="prt3">
тут третья часть вопросов

<input type="button" value="Отправить">
</div>

по кнопке "далее" скрывается через стиль предыдущая часть и открывается через стиль следующая.
конечно, учитывая сложность кода, в постах это делать не самая лучшая идея, проще на страницах.

а ваще конкретно на это можно аще забить. это мелочи жизни.

что реально важно - это банальная textarea

Герда написал(а):

1. нужны типы полей для ввода текста: input и textarea

или просто заменить в нынешнем скрипте вместо полей input - поле textarea
если сделать это, скрипт УЖЕ будет применим для анкетирования вовсю.
сейчас он не юзабелен из-за того, что в нем используется только поля input - нет ваще места для развернутых ответов.

я произвела попытку это сделать, но не вышло: Скрипты: Шаблон для тем с  Анкетами и Темы сообщениями по шаблону
вбитый текст в textarea не отправляется и я хз че там дальше править, шоб работало...

Код:
    <script>
    (function() {
      function InpTst(that) {
         var val = $.trim(that.value);
         if(val==""){$(that).css({'border':'red solid 1px'}); return false} 
         else {$(that).css({'border':''});}
         return true;
      }
      var tid = document.URL.split(/\/viewtopic\.php\?id=|&p=|#/gim)[1];
      if(temaID == tid) {
         $('.post.topicpost .post-content p>span[style="color: red"]').each(function(i) {
            $(this).replaceWith('<textarea type="text" class="pst-textarea" style="margin-left:23px;margin-top:12px; width: '+($(this).parent().offset().left - 43 + $(this).parents().width()-$(this).offset().left)+'px" placeholder="'+$(this).text()+'"></textarea>')
         });
     
         if(GroupID>2)$('#post,.postlink').remove();
         if(!!UserLogin)$('.post.topicpost .post-content').append('<input id="pst-submit" type="button" class="button" value="Отправить" accesskey="s" title="Accesskey:s"/>');
     
         $('.post.topicpost .pst-textarea.tst').live('textarea',function() {
               InpTst(this);
         });
       
         var tst = true;
         $('#pst-submit').click(function() { tst = true;
            $('.post.topicpost .pst-textarea').each(function() {
               $(this).addClass('tst');if(!InpTst(this))tst=false;
            });
            if(!tst)return false;
            var Pst = $('.post.topicpost')
            var content = Pst.clone();
            content.find('#pst-submit,.post-box:eq(1)').remove();
            var a=content.find('.post-content');
            content.find('.pst-textarea.tst').each(function() {$(this).replaceWith('<span style="color: '+color+'">'+$(this).val()+'</span>');});
            function NewForm (){ /*==123==;
    	<form id="post2" style="display:none" class="container" method="post" action="/post.php?action=post&fid=#$1#" target="_blank">
    	  <div id="formkey"></div>
    	  <div id="formetc" style="display:none"></div>
    	  <input type="hidden" name="form_sent" value="1">
    	  <input type="hidden" name="form_user" value="#$2#">
    	  <input id="fld3" type="text" name="req_subject" value="#$3#" size="80" maxlength="70">
    	  <textarea id="main-reply" name="req_message" rows="20"></textarea>
    	  <input type="submit" class="button" name="submit" value="Отправить" accesskey="s"/>
    	  </form>
             ==123==;*/
            } NewForm = NewForm.toString().split('==123==;')[1];NewForm = NewForm.replace('#$1#',''+AnketForumId).replace('#$2#',UserLogin).replace('#$3#',title+UserLogin);
            if($('#post2').length==0)$(NewForm).insertAfter(Pst);
            $('#post2 #main-reply').val("");
            MyfuncBB_tagCopy(a[0]);
            var repl = $('#post2 #main-reply');
            repl[0].value = repl.val().replace(/^\[quote=.*?\]([\s\S]+?)\[\/quote\]$/gim,'$1');
            process_form($('#post2')[0]);
            setTimeout(function(){$('#post2 input[type="submit"]').click();},100);
         });
     
      }
    }());
    </script>

0

107

Герда
Кинь ссылку на исходный скрипт..

0

108

Alex_63
http://disbb.ru/board/mybb_forumy/stran … 96-1-0-198

0

109

Герда написал(а):

че-то сложнааа...разделение разделение анкеты по этапам сводится всего-то к обрамлению отдельных ее частей в теги. например:

Ничо сложного - ты ставишь теги разделения, а скрипт скрывает следующую чать анкеты (которую ты выделила тегами) вплоть до оформления предыдущей, как отправил, в конце созданного поста, - кнопка - заполнить вторую часть, нажал - Верхняя часть(оформленная) скрылась - появилась вторая часть Анкеты для заполнения (Старая стала - ленивая(к чтенью), как и я)

0

110

скрипт очень заинтересовал.
только на моём форуме он в том виде, каком есть, не работает. опытным путём выяснил, что дело в несовместимости с каким-то другим скриптом %)
+ здесь обязательно необходимо ставить скрипт bb-цитаты, а он некрасиво работает со скриптом аватарки пользователя в цитате.
ну и субъективно заменять красный текст в теме на поля ввода - как-то фе) в том плане, что когда страница грузится, видно, как этот красный текст мелькает. с частыми подтормаживаниями mybb это кажется критичным.

назрел вопрос)
можно ли всё-таки доработать скрипт так, чтобы он работал с отдельными страницами форума?
например, есть болванка:
http://replay3.mybb.ru/pages/shablon_anketi
там поля select, textarea и input. у каждого поля своё уникальное имя.
по кнопке отправить данные надо занести не в новую тему, а в конкретную, название которой = логину пользователя, который оформляет анкету. если темы нет, её надо создать в указанном подфоруме.
ну и чтоб работало не через bb-цитирование, а через имена полей.

Отредактировано kael'thas (Вт, 17 Май 2016 10:52:10)

0

111

kael'thas
Ну позже попробую сваять.. Подумаю, как лучше и т.п.

+1

112

Deff написал(а):

скрипт скрывает следующую чать анкеты

ну, я б такое скрытие частей крафтила б чисто через css - дело привычки.

0

113

Герда написал(а):

ну, я б такое скрытие частей крафтила б чисто через css - дело привычки.

Скриптом удобнее имхо, если он имхо не написал первую часть, нафег давать полуфабрикату вторую ?
2. Если сил не хватит на все части = хоть что нидь сохраниться при первых отправках(При css он вынужден весь длиннопост добить до конца
Тут части могут быть пристыкованы отдельными сообщениями, хотя мон и одним(при добавки части вливать в первый пост через редактирование поста

0

114

kael'thas написал(а):

можно ли всё-таки доработать скрипт так, чтобы он работал с отдельными страницами форума?например, есть болванка:

Нет смысла усложнять перенося весь функционал на страницу(если сильно и оч хочется - воткните тему с анкетой фреймом на страницу,

Весь смысл что уже есть функционал написания BB-кодами темы. Нафег извращаться привязывая тоже самое и к страницам ?  Анкеты типично на майб создаются в спец закрытом форуме и обрабатываются - принимаются Администрацией кулуарно, консенсусом большинства. Страницы же низзя закрыть от пользователя. И Выносятся на общее обозрение (в иной раздел(форум))лишь при положительном решении.

Думаю Вы перешли с не майбышного ресурса или сайта. Скорее всего с клановой составляющей.

0

115

Deff написал(а):

Нафег извращаться привязывая тоже самое и к страницам ?

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

а ваще глубоко наср*ть на такие фичи.
напоминаю, что счастливыми будут много человек, если просто заменить в текущем скрипте поле input на поле textarea
только это сейчас горит. на остальные улучшения можно забить.

0

116

Герда написал(а):

а ваще глубоко наср*ть на такие фичи.

Дай ссылку на пост Анкеты  с Инпут - тупо скриптом замены(ниже) и заменить

0

117

Deff написал(а):

Нет смысла усложнять перенося весь функционал на страницу

смысл был в "красивости" решения) как я уже писал - красный текст страницы при загрузке мелькает, пока скрипт обрабатывается. страницу открыл - и она уже такая, какой была задумана.

Deff написал(а):

Страницы же низзя закрыть от пользователя.

а зачем страницы закрывать от пользователя, если эта страница содержит только шаблон? готовая анкета-то всё равно будет помещаться в обычную форумную тему.

0

118

kael'thas написал(а):

смысл был в "красивости" решения) как я уже писал - красный текст страницы при загрузке мелькает, пока скрипт обрабатывается. страницу открыл - и она уже такая, какой была задумана.

Красный текст правиться на этапе загрузки css с important - мон убрать красное, скрипт лишь тестирует наличие атрибута в cамом теге
2. Если мелькает = это значит скрипт Анкеты не в начале HTML низ

0

119

kael'thas написал(а):

а зачем страницы закрывать от пользователя, если эта страница содержит только шаблон? готовая анкета-то всё равно будет помещаться в обычную форумную тему.

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

0

120

Deff написал(а):

Дай ссылку на пост Анкеты  с Инпут - тупо скриптом замены(ниже) и заменить

http://blackteam.mmohost.ru/viewtopic.php?id=350

что надо добавить в скрипт замены, шоб работала замена?

зы. это какая-то дичь. сначала скрипт анкеты преобразовавает теги color=red в инпут, а потом скрипт замены предобразует инпут в текстэриа?
неужели нереально в скрипте анкеты поправить? %-)

0


Вы здесь » Единый форум поддержки » Архив » Скрипты: Шаблон для тем с Анкетами и Темы сообщениями по шаблону