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

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

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


Вы здесь » Единый форум поддержки » Архив » Подфорумы


Подфорумы

Сообщений 641 страница 660 из 668

641

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

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

Cкопировать включенный скрипт из Хидера, отключить, поправить  - потестить (5 часов максимум с перекурами)

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

Тут скорее стоит обратиться на https://forumd.ru к Fumuse или satsana что б поправили, потестить его в подфорумах с отключенным текущим в Админке... тогда можно просить kernel перезалить ...

Ты Вот считаешь нормальным правит всякие селекторы тут на сервисе(поскольку они тебе лично интересны), ну а коли говоришь что Ваш сайт продвинут и нужен всему сервису, так что там ты про дескать тебя напрягают его задачи, если это касается личных трудозатрат (тебя и твоего сайта). Ну и ты в конце концов модератор ЕТП,  можно было бы и приложить усилия для реализации своей же претензии, ну и на твоём сайте если 20% юзеров что-то не нравится - ты запросто заигноришь, а тут те вынь да положь, админ сервиса и так идёт тебе навстречу правя движок по твоим запросам селекторов, почему лично тебе и твоему составу чуток не напрячься и поправить лично твою же претензию, что в Ваших возможностях ?(А не напрягать админа сервиса?)
Так шо уйди в туман со своими претензиями!
Куплю технику, сделаю сам ближе к осени!

+1

642

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

Cкопировать включенный скрипт из Хидера, отключить, поправить  - потестить

Надеюсь, могу выложить тут свою доработку скрипта. Если нужно куда-то в иное место переместить соо - только скажите.
Внесла правки и по мере возможности потестила, у меня всё срабатывает как надо при любом отображении подфорумов. Если у кого-то есть возможность также протестить, то пожалуйста, код:

Исправленный код мгновенного переноса сообщения. Правки для подфорумов
Код:
<script>
/****************************************************
 * Fast post moving
 * Author: Alex_63
 * Date: 06.06.2017 / 20.06.2017 / 10.02.2023
 * 10.02.2023 - правки для корректной работы скрипта с подфорумами mybb.ru от Sachimot
****************************************************/

if (GroupID <= 2) $(document).ready(function() {
	if (!$("#pun-multimove").length)
return;

	var lang_obj = {
'Введите URL адрес темы, в которую необходимо перенести выбранные сообщения' : {en: 'Enter the URL of topic in which you want to move selected posts'},
'Переместить' : {en: 'Move'},
'Выберите форум или введите ключевое слово' : {en: 'Select a forum or enter keywords'},
'Выберите тему для переноса' : {en: 'Select the topic for moving'},
'Поиск' : {en: 'Search'},
'Форумы' : {en: 'Forums'},
'Форум' : {en: 'Forum'},
'Тема' : {en: 'Topic'},
'Выбрать' : {en: 'Select'},
'Перенести сообщения' : {en: 'Move posts'},
'Не найдено ни одной темы' : {en: 'No topics found'},
'по запросу' : {en: 'for'},
'Уведомление' : {en: 'Notification'},
'Закрыть' : {en: 'Close'},
'Сообщения перемещены' : {en: 'Post have been successfully moved'},
'Перейти в тему' : {en: 'Go to topic'},
'выбрать еще сообщения для переноса' : {en: 'select more messages to move'},
'Произошла ошибка. Попробуйте повторить действие позднее.' : {en: 'An error occured. Try again later.'},
'Не выбраны сообщения для переноса.' : {en: 'No posts selected for moving.'}
	}, lang = $('html')[0].lang;
	function _(text) {
return (lang == 'ru' || !(lang_obj[text] && lang_obj[text][lang])) ? text : lang_obj[text][lang]
	}
	var transAnsiAjaxSys = [];
	var arr=[0x402,0x403,0x201A,0x453,0x201E,0x2026,0x2020,0x2021,0x20AC,0x2030,0x409,0x2039,
0x40A,0x40C,0x40B,0x40F,0x452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,'0',0x2122,
0x459,0x203A,0x45A,0x45C,0x45B,0x45F,0x0A0,0x40E,0x45E,0x408,0x0A4,0x490,0x0A6,0x0A7,0x401,
0x0A9,0x404,0x0AB,0x0AC,0x0AD,0x0AE,0x407,0x0B0,0x0B1,0x406,0x456,0x491,0x0B5,0x0B6,0x0B7,
0x451,0x2116,0x454,0x0BB,0x458,0x405,0x455,0x457,0x410,0x411,0x412,0x413,0x414,0x415,0x416,
0x417,0x418,0x419,0x41A,0x41B,0x41C,0x41D,0x41E,0x41F,0x420,0x421,0x422,0x423,0x424,0x425,
0x426,0x427,0x428,0x429,0x42A,0x42B,0x42C,0x42D,0x42E,0x42F,0x430,0x431,0x432,0x433,0x434,
0x435,0x436,0x437,0x438,0x439,0x43A,0x43B,0x43C,0x43D,0x43E,0x43F,0x440,0x441,0x442,0x443,
0x444,0x445,0x446,0x447,0x448,0x449,0x44A,0x44B,0x44C,0x44D,0x44E,0x44F];
	var arLng = arr.length;
	for (var i = 0; i < arLng; i++)transAnsiAjaxSys[arr[i]]=i+128;
	for (var i = 0x410; i <= 0x44F; i++) transAnsiAjaxSys[i] = i - 0x350; // А-Яа-я

	var encodeURIwin1251 = function(str){
var ret = [];
for (var i = 0; i < str.length; i++)	{
	var n = str.charCodeAt(i);
	if (typeof transAnsiAjaxSys[n] != 'undefined')
n = transAnsiAjaxSys[n];
	if (n <= 0xFF)
ret.push(n);
}
return escape(String.fromCharCode.apply(null, ret)).replace(/\+/mg,'%2B');

	};
	window.movePostsForm = {};
	var L = $('link[rel="up"]').attr("href").match(/id=(\d+)$/)[1];
	function h() {
var a = "  ";
$("#Move_Forum").find("option").each(function() {
	var d = $(this).parent("optgroup").attr("label");
	if (!d) {
return
	}
	if (!SUBF.hasSmb(d)) {
return
	}
	var c = $(this).parents("select").find("option:text('" + d + "')").parent("optgroup").attr("label");
	if (typeof(c) != "undefined" && SUBF.hasSmb(c)) {
$(this).html(a + " " + $(this).html())
	}
});
$("#Move_Forum").find('optgroup[label^="#"],optgroup[label^="' + SUBF.smb + '"]').each(function() {
	var d = $(this).attr("label");
	var c = a + " ";
	$(this).find("option").each(function() {
if ($(this).html().indexOf(a + " " + a) == -1) {
	$(this).html(c + $(this).html())
}
	});
	var b = $(this).html();
	$(this).parents("select").find("option:contains('" + $.trim(d) + "')").after(b);
	$(this).remove()
});
$("#Move_Forum").find('option:contains("#"),option:contains("' + SUBF.smb + '")').map(function() {
	$(this).html($(this).html().replace(/#/, ""))
})
	};
	movePostsForm.div = $('<div />');
	var d = document.URL.replace(/^.*\?fid=(\d+).*$/mg, "$1");
	var b = document.URL.replace(/^.*&tid=(\d+).*$/mg, "$1");
	var c = "/moderate.php?fid=" + d + "&tid=" + b;
	var e = '<style>.pun-modal.move_posts_form .modal-inner{width:72.4em}.pun-modal.move_posts_form h2{max-width:100%}.move_posts_form .modal-inner>.container{padding:0!important}.punbb #move_posts_form .formal>form.container{width:100%!important;position:relative;border:none!important;padding-left:0!important;padding-right:0!important}.move_posts_form fieldset{margin-left:1.8em;margin-right:1.8em}#move_posts_form table.container thead{display:block}#move_posts_form table.container tbody{overflow-y:auto;overflow-x:hidden;display:block;max-height:16em;width:100%}#move_posts_form thead tr,#move_posts_form tbody tr{width:100%!important;display:table}.pgl,.forum_name{margin-bottom:.8em}.punbb #move_posts_form .formsubmit{padding:0 1.7em}#SubmitMPst{margin:0 1.8em}@media screen and (max-width:540px){#pun .move_posts_form fieldset{margin:.4em 1.2em!important}#pun .move_posts_form table.container tbody{max-height:12.6em}}</style><div id="move_posts_form" style="display:none"><div class="formal" id="movePostsTable"><form class="container" method="post" action="#$2#&mode=move"><fieldset style="display:none" id="PMove_3"><legend><span>' + _('Введите URL адрес темы, в которую необходимо перенести выбранные сообщения') + '</span></legend><div class="fs-box"><input type="hidden" name="posts" value="0" /><p><input type="text" size="80" maxlength="100" name="new_tid" /></p></div></fieldset><p class="formsubmit"><input type="button" id="SubmitMPst" class="button" value="' + _('Переместить') + '" /></p></form></div></div>'.replace("#$2#", c);

	$("form:last").after(e);
	var i = $("#move_posts_form form");
	i.find("fieldset:last").before('<fieldset id="PMove_1"><legend><span>' + _('Выберите форум или введите ключевое слово') + '</span></legend><div class="fs-box"></div></fieldset>');
	i.find("fieldset:last").before('<fieldset id="PMove_2" style="display:none"><legend><span>' + _('Выберите тему для переноса') + '</span></legend><div class="fs-box"></div></fieldset>');
	$("#PMove_1 .fs-box").append('<select id="Move_Forum"><option value="0">|-- ' + _('Форумы') + '</option></select>    <input type="text" size="30" maxlength="100" id="search-topics-move" placeholder="' + _('Поиск') + '"/>');
	$("#PMove_2 .fs-box").append('<div class="Select_Topics"><table class="container" cellspacing="0" style="padding:0"><tbody></tbody></table></div>');
	$(".Select_Topics").find("table").prepend('<thead><th class="tcl">' + _('Тема') + '</th><th class="tc2">' + _('Выбрать') + '</th></thead>');
	i.find(".formsubmit .button").attr("disabled", "disabled");
	$.get("/", function(j) {
$(j).find(".category").each(function() {
	var k = $(this).find("h2 span").text();
	if (k == "@Blogs") {
return
	}
	var l = 'label="' + k + '"';
	if (k.indexOf("'") != -1) {
l = 'label="' + k + '"'
	} else {
if (k.indexOf('"') != -1) {
	l = "label='" + k + "'"
}
	}
	$("#PMove_1 .fs-box select").append("<optgroup " + l + "></optgroup>");
	$(this).find("tbody tr").each(function() {

var m = $(this).find(".tclcon h3 a").text();
if (!m)
	return;
var n = $(this).find(".tclcon h3 a").attr("href").split("?id=")[1];
$("#PMove_1 select optgroup:last").append('<option value="' + n + '">' + m + "</option>")

var subf = $(this).find(".tclcon .subforums a");
if (subf.length > 0) {
subf.each(function() {
      var subf_text = $(this).text();
      var subf_link = $(this).attr("href").split("?id=")[1];
      $("#PMove_1 select optgroup:last").append('<option value="' + subf_link+ '">' + subf_text + "</option>")})

}

	})
});
movePostsForm.div.mybbModal({
	content: $("#move_posts_form").show(),
	theme: 'move_posts_form',
	title: _('Перенести сообщения'),
	escClose: true,
	onclose: function() {
setTimeout(function() {
	$('.move_posts_form .modal-inner.moved').remove();
	$('.move_posts_form .modal-inner:first').show();
}, $.fn.mybbModal.defaults.animationDuration);
	},
	css: {
marginTop: '5%'
	}
});
if (window.SUBF) h()
	});
	function g(j, i) {
$.get(j, function(m) {
	$("#move_posts_form").find(".formsubmit .button").attr("disabled", "disabled");
	$("#PMove_2 table tbody tr,.pgl,.forum_name,.Select_Topics em").remove();
	$("#PMove_2").css("display", "block");
	if (!!i) {
$('#Move_Forum option[value="0"]').attr("selected", "selected")
	} else {
$("#search-topics-move").val("");
	}
	if (!$(m).find(".main tbody tr .tcr").length) {
$(".Select_Topics").find("table").hide().before("<em>" + _("Не найдено ни одной темы") + ".</em>");
return false;
	} else {
$(".Select_Topics").find("table").show();
	}
	$(m).find(".main .forum tbody tr").each(function() {
var p = $(this).find(".tcl a:first").text();
p = p.replace(/(?:‡|†|¤)(?:.*?)(?:¤|&a?m?p?;?)/mgi, "");
var o = $(this).find(".tcl a:first").attr("href").split("id=")[1];
var n = '<tr><td class="tcl">' + p + '</td><td class="tc2"><input class="slctps" type="radio" value="' + o + '"' + (o == L ? ' disabled="disabled"' : '') + '/></td></tr>';
$("#PMove_2").find(".Select_Topics tbody").append(n);
	});
	$(".Select_Topics tbody").scrollTop(0);
	var k = $(m).find(".linkst .pagelink").html();
	var l = $(m).find(".main h1>span").text();
	$("#PMove_2 table").before('<div class="forum_name"><strong style="font-size:1.1em">' + (!i ? _('Форум') + ': ' + l : l + ' ' + _('по запросу') + ' "' + i + '"') + "</strong></div>");
	if (!!k && (k.indexOf("«") != -1 || k.indexOf("»") != -1)) {
$("#PMove_2 table").before('<div class="pgl">' + k + "</div>")
	}
})
	}
	$("#PMove_1 select").live("change", function() {
var j = $(this).find("option:selected").attr("value");
if (j == "0") {
	return false
}
$(".formsubmit .button").attr("disabled", "disabled");
var k = "/viewforum.php?id=" + j;
g(k)
	});
	$(".pgl a").live("click", function(j) {
j.preventDefault();
var k = $(this).attr("href"), i = "";
if (k.indexOf("search.php") != -1) i = $.trim($("#search-topics-move").val());
$("#move_posts_form").find(".formsubmit .button").attr("disabled", "disabled");
g(k, i)
	});
	$("#search-topics-move").live("input", function(e) {
var t, j = $.trim($(this).val());
if (j.length < 2) return;
var k = '/search.php?action=search&keywords=' + encodeURIwin1251(j) + '&search_in=-1&sort_by=0&sort_dir=DESC&show_as=topics';
clearTimeout(t);
t = setTimeout(function() {
	g(k, j);
}, 600);
	});
	$(".slctps").live("click", function() {
$(".slctps").removeAttr("checked");
$(this).attr("checked", "checked");
$("#move_posts_form").find(".formsubmit .button").removeAttr("disabled")
	});
	movePostsForm.close = function(e,a) {
e.preventDefault();
$(a).parents('.pun-modal').find('.modal-bg').click();
	};
	var a = '<div class="modal-inner section moved"><h2><span>' + _('Уведомление') + '</span> <span class="closer" title="' + _('Закрыть') + '" onclick="movePostsForm.close(event,this)">×</span></h1><div id="afterMove"><div class="container moved_success"><strong>' + _('Сообщения перемещены') + '!</strong><br/>' + _('Перейти в тему') + ' <a href="#$3#" class=topic_link>#$4#</a> ' + _('или') + ' <a href="#" onclick="movePostsForm.close(event,this)" class=back_link>' + _('выбрать еще сообщения для переноса') + '.</a></div></div></div>';
	$("input#SubmitMPst").live("click", function() {
if ($(this).attr("disabled")) {
	return false
}
$(this).attr("disabled", "disabled");
var m = $("#PMove_2 .tc2").find("input:checked").attr("value");
var l = "http://" + location.hostname + "/viewtopic.php?id=" + m;
var j = $("#PMove_2 .tc2").find("input:checked").parent().prev("td").text();
if (m) {
	$('.move_posts_form input[name="new_tid"]').val(l)
}
$.ajax({
	url: c + "&mode=move",
	type: "POST",
	data: $(".move_posts_form form").serialize() + "&move_posts_comply=1",
	success: function(res) {
$(".formsubmit .button").removeAttr("disabled");
if ($(res).find("#pun-redirect,#pun-viewtopic").length) {
	a = a.replace("#$3#", l).replace("#$4#", j);
	$(".move_posts_form").find(".modal-inner:first").hide().after(a);
	$("#move_posts_form").find("input:checked").removeAttr("checked");
	var m = $('input[type="hidden"][name="posts"]').prop("value");
	if (m) {
m = m.split(",")
	}
	for (var k = 0; k < m.length; k++) {
$("#p" + m[k]).remove()
	}
	$(".modmenu input:checkbox").prop("checked", !1);
	var o = +$(".pagelink strong:last").text() - 1;
	var p = (!$(".post").length && !$(".pagelink .next").length && !!o) ? document.URL.replace(/(&p=)\d+/,'$1' + o) : document.URL;
	if ($(".pagelink .next").length || (!!o && p != document.URL)) {
$.get(p, function(d) {
	var s = "";
	$(d).find(".post").map(function() {
if (!$("#" + this.id).length) s += this.outerHTML
	});
	$(".topic").append(s);
	var e = $(d).find(".pagelink:first").html();
	$(".pagelink").html(e)
})
	}
} else if ($(res).find("#pun-message").length) {
	alert($.trim($(res).find(".info .container").text()));
}
	},
	error: function() {
alert(_("Произошла ошибка. Попробуйте повторить действие позднее."));
$(".formsubmit .button").removeAttr("disabled");
	}
});
	});
	$('input[name="move_posts"]').on("click", function(k) {
k.preventDefault();
if ($(".pl-select input:checkbox:checked").length == 0) {
	alert(_("Не выбраны сообщения для переноса."));
	return false
} else {
	movePostsForm.div.click();
	var j = [];
	$(".pl-select").find("input:checkbox:checked").each(function() {
var l = $(this).prop("name").replace(/^.*\[(\d+)\].*$/g, "$1");
j.push(l)
	});
	j = j.join(",");
	$('input[type="hidden"][name="posts"]').prop("value", j)
}
	});
});
</script>

Убрала отображение подфорумов в списке для переноса, если для переноса выбирается основной форум, в котором они есть, видны только темы основного форума. Добавила отображение подфорумов для выбора при кратком виде подфорумов на главной.

Отредактировано Sachimot (Пт, 10 Фев 2023 15:17:32)

+5

643

Sachimot
Пасиб, думаю тестирование займёт около недели ( попробую раздать на подшефные форумы, там разное оформление подфорумов)  :)  :flag:

+2

644

Sachimot
Ну и наверно в коммент

/****************************************************
* Fast post moving
* Author: Alex_63
* Date: 06.06.2017 / 20.06.2017
****************************************************/

Ну и наверно внести правки (Ваш ник и дату и про поправлено под субфорумы)

----------------------------------------------------------
И вопрос - сколько примерно по времени это заняло ?? (А то тут был спичь про большую нагрузку скриптёров форумД)

0

645

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

Ну и наверно внести правки (Ваш ник и дату и про поправлено под субфорумы)

ок, сейчас внесу

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

сколько примерно по времени это заняло ?

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

+1

646

Sachimot
Пасиб!

0

647

Deff
Sachimot

Протестил на ЛУЛ и на личном форуме - все работает хорошо, пока без сбоев )

+2

648

Wilhelm
Пасиб!

0

649

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

можно было бы и приложить усилия для реализации своей же претензии

я - не программист.
программеры, которые работают на ФД - не мои личные рабы, а свободные люди.
мб ты с чего ты взял, что я они мне чем-то глубоко обязаны или сидят на зарплате? ты ошибаешься.

если ты в будущем захочешь у ребят что-то попросить - постучи им в личку и попроси.
отправлять меня им приказы раздавать - дохлый номер.

-1

650

Герда, про приказ выдумаешь на ходу выкручиваясь из разрешённой ситуации!
И да - претензию ты принесла сюда. я сказал что ты её можешь решить своими силами! В том числе и попросить своих скриптеров!
Сейчас ты выкручиваясь переложила ответственность на кого угодно, но дескать ты и твоя команда никому ничего не обязаны - обязана только техподдержка

Ну и вместо того чтобы потестировать и поблагодарить чела решившего проблему!

0

651

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

я сказал что ты её можешь решить своими силами!

я не могу решить это своими силами, т.к.
1. я не программист
2. у меня нет программиста, который ОБЯЗАН делать то, что я прошу

перестань гнать меня отсюда и унижать меня за то, что я не могу справиться со скриптами самостоятельно.

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

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

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

Ну и вместо того чтобы потестировать и поблагодарить чела решившего проблему!

я поставила плюсик.
теперь было б круто, если бы @kernel поставил в админку рабочий скрипт

0

652

@kernel , Иван - Приветы!

Протестировали поправленный Sachimot скрипт "Быстрое перемещение сообщений" - без претензий

Можно заменить текущий код в Администрирование скрипты => http://forumscripts.ru/fast_moving/1.0.0/fast_moving.js

На такой => https://forumstatic.ru/files/0012/d8/04/91552.js   (свернул в UTF8 - этим кодом и тестировали (отчеты притащили более 5-ти форумов)

+2

653

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

Можно заменить текущий код в Администрирование скрипты

Заменил

+2

654

Romych
Спасибо!

И спасибо Sachimot!

+1

655

Deff
вроде бы раньше и на этом форуме этот скрипт был включён?

0

656

Romych
Он вообще сейчас на ЕТП не включен (в Админ-скриптах) :dontknow:

0

657

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

Код:
https://forumscripts.ru/fast_moving/1.0.0/fast_moving.js

новый здесь

Код:
https://forumscripts.ru/fast_moving/1.0.1/fast_moving.js

при активации в админке вижу старую версию  :dontknow:

Добавлено спустя 1 минуту 43 секунды:
а всё, теперь новый на месте

+1

658

Romych
Поставь
http://forumscripts.ru/fast_moving/1.0.1/fast_moving.js?v=2 (Так kernel делает при сменах версии скриптов в head)

0

659

Deff
https://forumupload.ru/uploads/0000/14/1c/15964/989135.jpg
он уже видится,
но я не вижу, чтоб он работал при модерации
а у тебя до сих пор не отображается в исходном коде?

+1

660

Romych
У меня тут срабатывает но тут жа отключается (ощущение что код дважды поставлен
Либо какие-то скрипты тут с ним в конфликте ...  :dontknow:

https://forumupload.ru/uploads/0000/14/1c/22787/869411.gif

0


Вы здесь » Единый форум поддержки » Архив » Подфорумы