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

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

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


Вы здесь » Единый форум поддержки » Архив » Запросы по скриптам[4]


Запросы по скриптам[4]

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

1

Архивная тема с запросами о создании различных скриптов

Это архивная тема с запросами от пользователей на написание скриптов. Некоторые скрипты могут быть индивидуальным исполнением для конкретного форума, что не гарантирует его работоспособность на другом форуме. Перед использованием скрипта, пожалуйста, внимательно изучите все предыдущие сообщения между автором запроса и исполнителем, в них могут содержаться важные детали о функционале и установке найденного скрипта.
Скрипты, опубликованные в этой теме, могут быть устаревшими и нерабочими, поскольку функционал форумов и стандарты языка javascript или библиотеки jquery могли измениться.

Предыдущая тема - Запросы по скриптам[3]
Следующая тема - Запросы по скриптам[5]

Инструменты для поиска и редактирования стиля (скриптов).

Как с помощью браузера можно определить элемент дизайна.

Каталог скриптов/CSS

Полезные скрипты, необходимые темы для новичков, а также ссылки на сайты рассказывающие что такое НТМЛ и CSS.

Типовые Вопросы (ЧаВо)

Ответы на часто задаваемые вопросы.

Как задавать вопросы! Разница между стилем и скриптом. ( Советы)

Плюс к названию темы еще и Памятка.

+1

121

Лора, Корректировка постов до реального кол-ва, с учетом удалённых делается только под админом, юзер скриптом этого не сделаешь

Может пока допуск в форумы сделать вручную, проставкой в профиле Юзера ?
Пусть активные пишут заявку в спец тему...
А вот единожды допустить реально активного (Думаю это не более десятка операций в неделю)
Вот пример полноценного скрипта допуска: Доступ к закрываемым скриптом темам и форумам

+1

122

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

Честно повтыкал в поиск, но искомого не обнаружил.Тем более, поставить два простых ротатора возможно - не конфликтуют.

Поищу завтра, разницы для Вас одним скриптом или несколькими нет, ибо блоки с контентом позиционируются как Вам удобно, хоть вслед друг за другом

0

123

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

Может пока допуск в форумы сделать вручную, проставкой в профиле Юзера ?
Пусть активные пишут заявку в спец тему...

Не, я озверею всем ставить вручную допуски и проверять через профили сообщения...  :D
Хотелось ограничить их программно, а вот самые непонятливые сразу и напишут вопросы в тему.
По идее в движке уже есть выборка сообщений пользователя, как-то из неё выделить бы посты до даты минус три месяца и посчитать сколько их. Меньше десятка - свободен, больше - допущен, развлекайся и скачивай...  Это как мне кажется... Есть возможность попробовать, а?..  :flirt:

p.s. да, у меня на форуме только группа "пользователи" в этом плане может быть под контролем, а остальные либо и так уже ограничены (гости, штрафники и посетители), либо не надо ограничивать (феечки, модераторы).

Отредактировано Лора (Вс, 21 Июн 2015 00:07:02)

0

124

Лора
Вы бы попробовали, кто тестил скрипт - довольны,
ибо Вы ставите допуск(или запрет) в нужный форум тем кому доверяете в профиле, независимо от группы, -посты дело третье
2. Допуск могут ставить и модеры так что нагрузка не только на Вас.
3. С поиском по юзер-постам каждого дело дохлое, ибо каждый раз Аякс запрос к очередной странице. Который нун делать при каждом очередном сообщении от любого юзера. Форум просто завалится от запросов, да и скрипт сервис забанит по нагрузке на сервер. Тут ток если делать выделенную тему каждому юзеру, куда складывать колво постов, но это значительно напряжней, нежели правка в профиле

0

125

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

Вы бы попробовали, кто тестил скрипт - довольны,

Спасибо. Я попробую.

0

126

Deff
Пробовал и без each(), но почему-то атрибут onclick не добавляется..
Идеально работает только вариант из Поста #111 (упрощать не вижу смысла)

0

127

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

DeffЧестно повтыкал в поиск, но искомого не обнаружил.Тем более, поставить два простых ротатора возможно - не конфликтуют.

Многие спрашивают различные случайные отражения Картинок или текстов
(в объявлении - шапке и.д)
Дабы не забивать голову - сотворил единый ротатор

Ротатор произвольного контента

<style>#КонтентРотатор p{display:none}</style>
<div id="КонтентРотатор" style="width:400px;"><!-- Ротатор произвольного контента -->
<p>1-й Контент</p>
<p>2-й Контент</p>
<p>3-й Контент</p>
<p>4-й Контент</p>
<p>N-й Контент</p>
</div>

<script type="text/javascript">
(function() {
var sek = 2000;  // Время отображения
var id = "КонтентРотатор"

var P=$("#"+id+" p"), Nrout=P.length,
i=Math.round(Math.random()*(Nrout-1));
RotatorMycontent(i);
function RotatorMycontent(i) {
  P.hide();P.eq(i).show();j=Math.round(Math.random()*(Nrout-1));
  timerID = setTimeout(function(){RotatorMycontent(j)},sek);}
}());
</script>

Ставим туда куда нужно - синим жирным-число секунд для отражения контента(в самом контенте должны отсутствовать теги <p>

Если ротирование нужно лишь однократное на текущей странице - ставим Время отображения 1000000

Если нужно поставить несколько ротаторов - синхронно изменяем в очередном ротаторе три записи зелёным: - имя ID  div, обрамляющего теги <p>

Чтобы объединить визуально просто ставите коды ротаторов друг за другом

Пример:

<style>#КонтентРотатор1 p{display:none}</style>
<div id="КонтентРотатор1" style="width:400px;"><!-- Ротатор произвольного контента -->
<p>1-й Контент</p>
<p>2-й Контент</p>
<p>3-й Контент</p>
<p>4-й Контент</p>
<p>N-й Контент</p>
</div>

<script type="text/javascript">
(function() {
var sek = 2000;  // Время отображения
var id = "КонтентРотатор1"

var P=$("#"+id+" p"), Nrout=P.length,
i=Math.round(Math.random()*(Nrout-1));
RotatorMycontent(i);
function RotatorMycontent(i) {
  P.hide();P.eq(i).show();j=Math.round(Math.random()*(Nrout-1));
  timerID = setTimeout(function(){RotatorMycontent(j)},sek);}
}());
</script>
<style>#КонтентРотатор2 p{display:none}</style>
<div id="КонтентРотатор2" style="width:400px;"><!-- Ротатор произвольного контента -->
<p>1-й Контент</p>
<p>2-й Контент</p>
<p>3-й Контент</p>
<p>4-й Контент</p>
<p>N-й Контент</p>
</div>

<script type="text/javascript">
(function() {
var sek = 2000;  // Время отображения
var id = "КонтентРотатор2"

var P=$("#"+id+" p"), Nrout=P.length,
i=Math.round(Math.random()*(Nrout-1));
RotatorMycontent(i);
function RotatorMycontent(i) {
  P.hide();P.eq(i).show();j=Math.round(Math.random()*(Nrout-1));
  timerID = setTimeout(function(){RotatorMycontent(j)},sek);}
}());
</script>
<style>#КонтентРотатор3 p{display:none}</style>
<div id="КонтентРотатор3" style="width:400px;"><!-- Ротатор произвольного контента -->
<p>1-й Контент</p>
<p>2-й Контент</p>
<p>3-й Контент</p>
<p>4-й Контент</p>
<p>N-й Контент</p>
</div>

<script type="text/javascript">
(function() {
var sek = 2000;  // Время отображения
var id = "КонтентРотатор3"

var P=$("#"+id+" p"), Nrout=P.length,
i=Math.round(Math.random()*(Nrout-1));
RotatorMycontent(i);
function RotatorMycontent(i) {
  P.hide();P.eq(i).show();j=Math.round(Math.random()*(Nrout-1));
  timerID = setTimeout(function(){RotatorMycontent(j)},sek);}
}());
</script>

Можно все три кода(полностью всё) обернуть в один общий <div class="rotator-wrap"> и спозиционировать  его в нужное место

0

128

Deff
Замечательно же! Спасибо.

0

129

Alex_63
Вот эта строка зелёным - лишняя:

$('.button.cancel').click(function(){
    $('#post-form').find('script').remove();
    $('#post-form').insertAfter('.linksb');
    $(this).hide();
  });

Когда кнопка возникает, скрипты уже очищены
=============================
Вот этот атрибут name убрать, все элементы с name пересылаются на сервер, не нун раздражать Админа сервиса

<input style="margin-left:4px;" class="button cancel" name="reset" type="reset" value="Отмена" />

В ие(наверно до 10-11 версии) все вставки input - не работают, нун заменять всю форму или ставить кнопку через button
==============================
Стоит свернуть скрипт в загружаемый, ибо скрипт достаточно длинный(а место в Окнах ограничено и сервер напрягается при удлинении всех страниц) и при вставке в HTML низ на скорость загрузки страницы выше загружаемый скрипт не повлияет, а посколь использование скрипта не мгновенное (Нун же ещё прочитать посты перед кликом и цитаты и ответить) - стоит  сделать подгружаемым. Типично неподгружаемые либо короткие, либо необходимо мгновенное отображение на экран.

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

+1

130

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

Вот этот атрибут name убрать, все элементы с name пересылаются на сервер, не нун раздражать Админа сервиса

Спасибо, name уберу.

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

В ие(наверно до 10-11 версии) все вставки input - не работают

На IE не ориентируюсь, там половина скриптов не работает..

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

или ставить кнопку через button

Это как? Можно поподробней?

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

стоит  сделать подгружаемым.

Спасибо за совет, сделаю подгружаемым (как и первую версию - с загрузкой с hostjs.mybb.ru)

0

131

Deff
Сделал все, как Вы написали, - все отлично работает :)
Поправил также и первую версию, убрал name="reset" и выделенное зеленым в посте 129.

+1

132

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

На IE не ориентируюсь, там половина скриптов не работает..

Ну по хорошему, я ставил виртуальную машину с со сменой операционок и ИЕ, по идее чичас достаточно одной с ИЕ9 - оно прилично продвинута. Хотя честно сейчас забил на ИЕ - мучался 4 года до начала прошлого
Но виртуалка, при мощном компе здорово помогает во всех изысканиях софта. При не запущенной программе ресурсов не жрёт. В общей сумме для установки требует в районе Гига.

Ну кнопки вместо инпут => <button type=button>Очистить</button> http://htmlbook.ru/html/button /Суть в том что скрипт разрастется по стилю, если пытаться делать стиль кнопок дублирующий инпут - лучше плюнуть/, про реализацию вставки=копии дополненной кнопками формы под ИЕ - есть в Помощь Скриптодельцам.

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

+1

133

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

и выделенное зеленым в посте 129.

В принципе, инспектирование элементов(Инспектором браузера) при тестировании скрипта, - позволяет увидеть состояние HTML в текущий момент(к примеру то же отсутствие скриптов на этапе), - стоит использовать. Хотя лучший вариант трассировки - освоить консоль https://learn.javascript.ru/devtools

+1

134

Быстрый переход по страницам темы
Alex_63
Есть более удобные скрипты пагинаторов - от мну и Romych, посколь не надо втыкать цифры.
Как рекомендация - не стоит засорять тему скриптами с дублируюющими функциями не превосходящими функционал существующих. Есть много нерешенных задач для приложения сил(требующих хорошей подготовки)
===================
Типично у мну два-три скрипта оставляемых по запросам юзеров в топиках помощи, на один скрипт выкладываемый в теме скриптов, в оставляемых в топике отсутствует принципиальная новизна

0

135

Deff
Такого варианта еще не было) Сделал как на vBulletin, может быть, кому-то пригодится...

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

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

Ключевая фраза "требующих хорошей подготовки" ;)

0

136

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

требующих хорошей подготовки

Для начала, судя по подобным конфликтам с Fover:
Освоить Aякс и сохранение Аяксовых данных на время в LocalStorage, дабы не воять перезапросы на каждой странице.
В качестве контроля времени можно сейчас использовать переменную форума RequestTime, разность между первозапомненным и текущим позволяет отследить интервал обновления.
Ну к примеру - самые активные юзеры(с миниавками) в боковом сайдбаре на главной

+1

137

Deff
Пытаюсь заставить работать свой скрипт переноса Быстрого ответа с Вашим скриптом BB-цитаты. Форма ответа переносится, но страница прокручивается вниз. Как это исправить?

Доступ к админскому аккаунту тестового форума - в личке.

Нашел решение:

$('.post').each(function(){
  $(this).find('.pl-BBquote>a').click(MReplyForm);
  $(this).scrollTop();
});

Отредактировано Alex_63 (Вт, 30 Июн 2015 17:57:55)

+1

138

Alex_63
Не увидел эффекта и без  $(this).scrollTop(); (Может зависит от браузера)
По идее, клик по BB-цитате ничем не отличается по реакции формы и скролла страницы от клика по обычной цитате.
Если ток код BB-цитаты исполняется чуть дольше, чем простая цитата, - тогда возможно эффект из-за более быстрого автофокуса на неперемещенной форме при вставке контента поста в #main-reply. Если фокус будет ранее, чем форма перемещена, - фокус подразумевает видимость курсора со вставленным текстом в текущем окне, - из-за этого и скролл.
В качестве варианта борьбы - перемещение формы делать чуть раньше вставки контента в форму, к примеру: заменить тег BB-цитаты, используя http://jquery-docs.ru/Manipulation/replaceWith/ ,  на такой:

<a href="#" onclick="MReplyForm();MyfuncBB_tagCopy(this);return false;">Цитировать</a>

Т.е. сначало переместить форму, и только потом вставить
==========
По идее, если дело фокусе, то тот же эффект должен проявляться и с простой цитатой при длинном сообщении, близким к 64кБ

+1

139

Здравствуйте!
Подскажите, пожалуйста, есть ли скрипт, который упростит перенесение всех сообщений из темы, кроме первого? Типа кнопки или хотя бы галочки "Выделить все"... Столкнулась с тем, что нужно почистить (именно перенести старые сообщения из темы, оставив первое, по-другому - никак) более 2500 тем, уже голова кругом идет...

0

140

Аделькин, скрипта такого нет,
Вариант 1:

Есть скрипт копирования сообщений,
1. Перенести нужную тему целиком в архив
2. Создать новую тему, добавить первопост старой темы перед первым новой
3. Можно скрыть реальный первопост новой темы

Недостатки - необходимость хранения темы в архиве из-за первопоста, на основе которого псевдокопия

Вариант 2:
Найти в архиве более старое сообщение, чем первопост текущей темы, присоединить к теме, тогда первое сообщение темы становиться вторым и легко пеносится в новосозданную тему, заменяя первый пост в ней

Вариант 3:
Есть скрипт копирования сообщений с BB-кодами. Тему сносим в Архив - просто копируем первое сообщение темы в первопост новой
Уточнение: Да авторство будет Ваше - но со ссылкой на реального автора поста

0


Вы здесь » Единый форум поддержки » Архив » Запросы по скриптам[4]