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

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

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


Вы здесь » Единый форум поддержки » Проблемы с форумом » Внезапно споткнулся дизайн


Внезапно споткнулся дизайн

Сообщений 1 страница 6 из 6

1

Адрес форума: http://dreamworld.magicrpg.ru/

Проблема: Сломались функции в профиле. "Локация" должна указывать на последнее место, где отписывался человек(находился игровой персонаж) в игровом форуме, но сейчас там непонятные символы. Кроме того сломалось много чего еще.

Значок с книжкой должен указывать на вписанную ссылку на анкету, но теперь перекидывает на сломанную страницу.
В медальках и рюкзачке пропал значок помогающий закрыть открывшееся окошко и сами медальки пропали, хотя загружены были в файлы форума.
Может сломалось что-то еще, но это кинулось в глаза больше всего. Скрин прикреплю. Помогите пожалуйста разобраться с проблемой.

https://forumupload.ru/uploads/0000/14/1c/18858/t764734.png

В профиле не видно наград(картинок), которые должны отображаться в окне. Только надписи.

https://forumupload.ru/uploads/0000/14/1c/18858/t833621.png https://forumupload.ru/uploads/0000/14/1c/18858/t179681.png

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

https://forumupload.ru/uploads/0000/14/1c/18858/t644963.png https://forumupload.ru/uploads/0000/14/1c/18858/t130558.png

Замечания так же отображаются не картинкой, а словами. Там должны были отображаться звездочки и надпись появляться только при наведении курсора. Раньше скриптами занимался человек с которым нет сейчас связи. В файлах форума нашла ссылки ведущими на скрипт. Они я так понимаю были связаны с другим форумом нашего бывшего тех админа(с применением джавы). Можно ли их куда-то перенести, и если можно, то как? Я не очень понимаю, как технически это исправить. Вот сами скрипты:

Код:
//Инвентарь Дрима by MavJK

//----------------------------------------------
// редактор веще в профиле
//----------------------------------------------
var fld3 = $("#fld3");
function BuildItemFields(url, about, idx)
{
	var strStart = "<div id='userItem"+idx+"'>";
	var imgstr = "Картинка "+idx+":  <input type='text' oninput='itemChange(this,0,"+idx+")' value='"+url+"' size='50' maxlength='999'>      <input type='button' onclick='RemoveItem("+idx+")' value='-'><br>";
	var aboutstr = "Описание "+idx+":  <input type='text' oninput='itemChange(this,1,"+idx+")' value='"+about+"' size='50' maxlength='999'>      <br>";
	var strEnd = "<br></div>"
	return strStart+imgstr+aboutstr+strEnd;
};
function CalcFreeInvSpace()
{
	var charsRemain = 999-fld3[0].value.length;
	var remSpaceLabel = $("#remainSpace");
	remSpaceLabel.html("Свободное место: "+charsRemain+" символов");
}
function ReparseInventory()
{
	if (fld3[0])
	{
var divs = fld3.parent().find("div");
for(var i=0;i<divs.length;i++)
	fld3.parent()[0].removeChild(divs[i]);
	
fld3.css("display","none"); //спрятать поле вещей
var items = fld3[0].value; //текст в поле вещей
var charsRemain = 999-items.length;
var itemlist = items.split(";");
if (itemlist.length < 2)
{
	itemlist = ["",items];
}
var itemsHtml = "";
for(var i=0;i<itemlist.length-1;i+=2)
{
	itemsHtml += BuildItemFields(itemlist[i],itemlist[i+1],i/2+1);
}
var ending = "<div><hr><br>      <input type='button' onclick='AddNewItem()' value='+'>    <span id='remainSpace'>Свободное место: "+charsRemain+" символов</span></div>";
fld3.after(itemsHtml+ending);
	}
}
function itemChange(inp, type, idx)
{
	var items = fld3[0].value; //текст в поле вещей
	var itemlist = items.split(";");
	itemlist[(idx-1)*2+type] = inp.value;
	fld3[0].value = itemlist.join(";");
	CalcFreeInvSpace();
}
function AddNewItem()
{
	var items = fld3[0].value; //текст в поле вещей
	var itemlist = items.split(";");
	itemlist.splice(itemlist.length,0,"","");
	fld3[0].value = itemlist.join(";");
	ReparseInventory();
}
function RemoveItem(idx)
{
	var items = fld3[0].value; //текст в поле вещей
	var itemlist = items.split(";");
	itemlist.splice((idx-1)*2,2);
	fld3[0].value = itemlist.join(";");
	ReparseInventory();
}

if (window.location.search.includes("section=fields"))
	ReparseInventory();

//----------------------------------------------
// просмотр вещей в постах
//----------------------------------------------

function OpenItems(t) 
{ 
	$('div.AwardAllWindow').fadeIn(500); 
	$('div.AwardWindow div#AwardContent').html($(t).parent().parent().find('div')[2].innerHTML); 
	$('div.AwardWindow h3').html('Инвентарь <span>'+ 
$(t).parent().parent().parent().parent().find('li.pa-author a').text()+'</span>'); 
}

$('.post li.pa-fld3').each(function() 
{ 
	Result = '<table>'; 
	var alt = $(this).find("div").attr("alt");
	var parts = alt.split(";");
	if (parts.length < 2)
parts = ["",alt];
	for(var i=0;i<parts.length-1;i+=2)
	{
Result += 
"<tr height='64px'>\
<td style='text-align: right;' width='160px'><img class='itemInvImg' src='"+parts[i]+"'></td>\
<td><strong>"+parts[i+1]+"</strong></td>\
</tr>"
	}
	Result += '</table>'; 
	$(this).html('<div><a href="#" onclick="OpenItems(this); return false;"><div id="iconInventory" title="Инвентарь"></div></a></div><div style="display: none">'+Result+'</div>'); 
});
Код:
//------------------------------------------------------------
// Отправка поста
//------------------------------------------------------------
function NPL_Contains(str){
	for(var i=0;i<NPL.length;i++)
if (NPL[i] == str) return true;
	return false;
}
function ClearLocationName(name)
{
	var name;
	var clearparts = name.split(";;");
	if (clearparts.length > 1)
name = clearparts[clearparts.length-1];
	name = name.replace(" ","");
	return name;
}
function GetLocationURL()
{
	var url = "";
	if (window.location.pathname == "/viewtopic.php")
	{
var permalinks = $(".topic .permalink");
url = permalinks[permalinks.length-1].href;
	}
	else if (window.location.pathname == "/post.php")
	{
var as = $(".topic a");
url = as[0].href;
	}
	url = url.split("#")[1];
	return url;
}
function GetLocationName()
{
	var crumbs = $("#pun-crumbs1 .container");
	if (window.location.pathname == "/viewtopic.php")
	{
var parts = crumbs.html().split("»");
return ClearLocationName(parts[parts.length-1]);
	}
	else if (window.location.pathname == "/post.php")
	{
var parts = crumbs.find("a");
var locname = parts[parts.length-1].innerHTML;
return ClearLocationName(locname);
	}
	return "";
}
function GetSubforumName()
{
	var crumbs = $("#pun-crumbs1 .container");
	var parts = crumbs.find("a");
	var locname = "";
	if (window.location.pathname == "/viewtopic.php")
locname = parts[parts.length-1].innerHTML;
	else if (window.location.pathname == "/post.php")
locname = parts[parts.length-2].innerHTML;

	return ClearLocationName(locname);
}

function SetLocInfo()
{
	var subforumName = GetSubforumName();
	if (NPL_Contains(subforumName))
	{
//Подфорум неигровой
	}
	else
	{
setcookie("locurl" ,GetLocationURL ());
setcookie("locname",GetLocationName());
	}
}

if (  (window.location.pathname == "/viewtopic.php") 
	|| (window.location.pathname == "/post.php"     ))
{
	var button = $(".button[name='submit']")[0];
	if (button)
button.onclick = SetLocInfo;
}

//------------------------------------------------------------
// Фоновый апдейт
//------------------------------------------------------------
if (window.location.search.includes("section=personal") && window.location.pathname == "/profile.php")
{
	if (getcookie("locurl") != false)
	{
var locurl  = getcookie("locurl" );
var locname = getcookie("locname");
$(".input #fld4")[0].value = locurl+";;"+locname;
setcookie("locurl",locurl,-1);
setcookie("locname",locname,-1);
setTimeout(function (){$(".button[name='update']")[0].click();},100);
	}
	if (GroupID != 1)
	{
$(".input #fld4").css("display","none");
$("label[for='fld4']").css("display","none");
	}
}

//------------------------------------------------------------
// Парсер поля под аватаркой и в профиле
//------------------------------------------------------------

function unMav(str)
{
	var p = str.split("%");
	for(var i=0;i<p.length;i++)
	{
if (p[i] == "") continue;
var prevp = p[i];
p[i] = parseInt(p[i],16);
if (p[i] <= 127 || p[i] > 255)
{
	p[i] = unescape("%"+prevp);
	continue;
}
p[i] += 848;
p[i] = p[i].toString(16);
while(p[i].length<4) p[i] = '0'+p[i];
p[i] = "%u"+p[i];
p[i] = unescape(p[i]);
	}
	return p.join("");
}

var g_urlHead = "http://dreamworld.magicrpg.ru/viewtopic.php?pid=";
if (window.location.pathname == "/viewtopic.php")
{
	var websites = $(".post-links .pl-website a");
	for(var i=0;i<websites.length;i++)
	{
var locnameurl = websites[i].href.replace("http://dreamworld.magicrpg.ru/click.php?http://","");

var reg = $(websites[i]).parent().parent().parent().parent().find(".pa-avatar");
if (!reg) continue; //???

if (locnameurl.split(";;").length != 2) continue; //еще не обновлено

var locurl  = locnameurl.split(";;")[0];
locurl = g_urlHead+locurl.replace("p","")+"#"+locurl;
var locname = unMav(locnameurl.split(";;")[1]);

$("<b>Локация: </b><a href='"+locurl+"'>"+locname+"</a><br>").insertAfter(reg);
$(websites[i]).css("display","none");
	}
}
Код:
var avaEms   = new Array();
var avaTimer = 0;
var avaK     = 0;

function GetEmerald(old_src)
{
	var links = 
	[
	"70198.gif","https://forumstatic.ru/files/0009/24/3d/87295.gif", //red
	"82396.gif","https://forumstatic.ru/files/0009/24/3d/98590.gif", //yellow
	"48932.gif","https://forumstatic.ru/files/0009/24/3d/52485.gif", //green
	"80470.gif","https://forumstatic.ru/files/0009/24/3d/72990.gif", //blue
	"17736.gif","https://forumstatic.ru/files/0009/24/3d/39760.gif", //sky
	"22015.gif","https://forumstatic.ru/files/0009/24/3d/32060.gif", //purple
	"63423.gif","https://forumstatic.ru/files/0009/24/3d/89167.gif", //white
	"16487.gif","https://forumstatic.ru/files/0009/24/3d/54507.gif", //black
	"55455.gif","https://forumstatic.ru/files/0009/24/3d/89750.gif"  //master
	];
	for(var i=0;i<links.length;i+=2)
	{
if (links[i] == old_src)
	return links[i+1];
	}
	return old_src;
};

//function
var avas = $(".pa-avatar");
for( var i=0; i < avas.length; i++ )
{
	var fld2 = $(avas[i]);
	if (!fld2) break;
	
	while(true)
	{
if (fld2[0].className == "pa-status-icon")
{
	break;
}
if (fld2[0].className == "pa-fld2")
{	
	avas[i].style.setProperty("position","relative");
	var chld = fld2.children();
	for( var j=0; j<chld.length;j++)
	{
$(avas[i]).append( "<div id=ava" + avaK + "> </div>");
avaEms[avaK] = $("#ava"+avaK);
var parts = chld[j].src.split("/");
parts = parts[parts.length-1];
var emSrc = GetEmerald(parts);
avaEms[avaK][0].style.setProperty("background-image","url('"+emSrc+"')");
avaEms[avaK][0].style.setProperty("position","absolute");
if (emSrc === 'https://forumstatic.ru/files/0009/24/3d/89750.gif') 
{
	avaEms[avaK][0].style.setProperty("width" ,"128px");
	avaEms[avaK][0].style.setProperty("height","128px");
}
else
{
	avaEms[avaK][0].style.setProperty("width" ,"54px");
	avaEms[avaK][0].style.setProperty("height","42px");
}
fld2[0].style.setProperty("display","none");
avaK++;
	}
	break;
}
fld2 = fld2.next();
if (!fld2) break;
	}
};

function updateAvaFunc()
{
	avaTimer += 0.02;
	if (avaTimer >= 360.0) avaTimer = 0.0;
	
	for(var i=0;i<avaK;i++)
	{
var s = Math.sin(avaTimer+i*0.9);
var c = Math.cos(avaTimer+i*0.9);
	   avaEms[i][0].style.setProperty( "top" , 40+c*35+"%" );
avaEms[i][0].style.setProperty( "left", 35+s*40+"%" );
	}
};

var avaIntTimer = setInterval( updateAvaFunc, 1000/20 );

Отредактировано NightAngelTDC (Вс, 7 Ноя 2021 03:11:49)

0

2

Решения проблемы нет? =( Не знаю к кому обратиться с ней

0

3

NightAngelTDC, не факт что поможет, но во всех трех подключаемых скриптах добавьте в ссылку (выделил красным):

<!-- изумруды на аватарках MavJK -->
<script type="text/javascript" src="https:https://forumstatic.ru/files/0009/24/3d/38126.js"></script>

+1

4

К сожалению это никак не повлияло =(
Скрипты что я кинула находятся в документах форума, может их нужно куда-то перенести, чтобы все работало как прежде? Я просто не знаю куда и как

Отредактировано NightAngelTDC (Вт, 9 Ноя 2021 01:25:45)

0

5

NightAngelTDC, ну скиньте в ЛС ник пароль с правами админа - посмотрю, так сложно разобраться..

+1

6

Выражаю форуму тех поддержки глубочайшую благодарность за помощь в решении проблем возникающих у их пользователей. Вы большие молодцы и то как вы быстро реагируете и качественно помогаете, приятно впечатляет, вызывая желание продолжать с форумами мубб и дальше в течении стольких лет. Большое вам человеческое спасибо.
Отдельная благодарность kolobdur74 чьи руки творят со скриптами настоящие чудеса. Решил проблемы с которой мы на форуме никак не могли справится очень давно. :') человек чудо.
Проблема решена и тему можно закрывать^^*

+3


Вы здесь » Единый форум поддержки » Проблемы с форумом » Внезапно споткнулся дизайн