ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90   •   Посмотреть все темы

ГАЛЕРЕЯ

 

53
artkhvz @artkhvz
Народ помогите разобраться С ГАЛЕРЕЕЙ..

ВОТ:
/* Функция формирования информации о фотографии */

function fotoinfo(x) {
var info="";
if(x[3]) info+=x[3]+"<br>";
info+="<a href=?inc=gallery&gallery="+x[2]+">"+x[2]+"</a>";
if(gal_upload>0) info+=" [<a href='?inc=info&userid="+x[8]+"' target='"+x[2]+"'>?</a>]";
info+="<br>"+x[1]+"<br>";
if(x[4]>0) info+="Общая оценка: "+(Math.round(x[5]/x[4]*10)/10)+"<br>";
if(x[6]>0) info+="<font title='Последний: "+x[7]+"'>Коментариев: "+x[6]+"</font><br>";
return info;
}

А ВОТ:
/* Вывод мини-фотографий выбранной галереи или последние добавления */

if(!g_f.length) wr("<font color=red>Фотографии не найденны!</font><br><br>");
else {
var sites=Math.ceil(gal_ac/gal_ps);
var links=genlinks("?inc=gallery&gallery="+gallery+"&site=",sites,site);
var tr=5;
var atr=0;
wr(links+"<br><br><table style='border-collapse:separate; border:0;' cellspacing='10'>");
for(var i=0;i<g_f.length;i++) {if(atr==0) wr("<tr>");atr++;if(atr==5) atr=0;
if(moderator==1) todel="<a href='?inc=gallery&gallery="+gallery+"&delfoto="+g_f[i][0]+"' onclick='return confirm(\"Вы действительно хотите удалить эту фотографию?\");' class=low>удалить</a><br>"; else todel="";
wr("<td align=center valign=top><a href='?inc=gallery&gallery="+gallery+"&foto="+g_f[i][0]+"'><img src=gallery/trumb/"+g_f[i][0]+".jpg border=0></a><br>"+fotoinfo(g_f[i])+todel+"</td>");
}
wr("</table><br>"+links+"<br><br>");
}

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

Отредактировано artkhvz - 02.12.2012
1007
BETEPAH @BETEPAH
artkhvz пишет:

Народ помогите разобраться С ГАЛЕРЕЕЙ..

ВОТ:
/* Функция формирования информации о фотографии */

function fotoinfo(x) {
var info="";
if(x[3]) info+=x[3]+"<br>";
info+="<a href=?inc=gallery&gallery="+x[2]+">"+x[2]+"</a>";
if(gal_upload>0) info+=" [<a href='?inc=info&userid="+x[8]+"' target='"+x[2]+"'>?</a>]";
info+="<br>"+x[1]+"<br>";
if(x[4]>0) info+="Общая оценка: "+(Math.round(x[5]/x[4]*10)/10)+"<br>";
if(x[6]>0) info+="<font title='Последний: "+x[7]+"'>Коментариев: "+x[6]+"</font><br>";
return info;
}

А ВОТ:
/* Вывод мини-фотографий выбранной галереи или последние добавления */

if(!g_f.length) wr("<font color=red>Фотографии не найденны!</font><br><br>");
else {
var sites=Math.ceil(gal_ac/gal_ps);
var links=genlinks("?inc=gallery&gallery="+gallery+"&site=",sites,site);
var tr=5;
var atr=0;
wr(links+"<br><br><table style='border-collapse:separate; border:0;' cellspacing='10'>");
for(var i=0;i<g_f.length;i++) {if(atr==0) wr("<tr>");atr++;if(atr==5) atr=0;
if(moderator==1) todel="<a href='?inc=gallery&gallery="+gallery+"&delfoto="+g_f[i][0]+"' onclick='return confirm(\"Вы действительно хотите удалить эту фотографию?\");' class=low>удалить</a><br>"; else todel="";
wr("<td align=center valign=top><a href='?inc=gallery&gallery="+gallery+"&foto="+g_f[i][0]+"'><img src=gallery/trumb/"+g_f[i][0]+".jpg border=0></a><br>"+fotoinfo(g_f[i])+todel+"</td>");
}
wr("</table><br>"+links+"<br><br>");
}

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

За вывод названия отвечает x[3] в функции fotoinfo(x). Так как в эту функцию передается x = g_f[i], то полный путь к названию в коде страницы - g_f[i][3].

53
artkhvz @artkhvz
+fotoinfo(g_f[i])+todel+
а что здесь нужно изменить чтобы название здесь не выводилось??

1007
BETEPAH @BETEPAH
artkhvz пишет:

+fotoinfo(g_f[i])+todel+
а что здесь нужно изменить чтобы название здесь не выводилось??

Издеваетесь?
Повторяю. За вывод названия отвечает x[3] в функции fotoinfo(x).
Чтоб оно не выводилось, удалите соответственно строку:
if(x[3]) info+=x[3]+"<br>";

415
Денис @FeNIX74
Вопрос относителен галереи как вывести все фото пользователя в анкету?? (ссори за повторение вопроса)

Есть ли другие способы кроме добавления в ручную?

Отредактировано FeNIX74 - 03.12.2012
2615
Сергей @Pegass
FeNIX74, никак

53
artkhvz @artkhvz
Почему при добавлении g_f[i][3] в данный срипт возникает ошибка?

/* Выводим выбранную фотографию */
if(afoto) {
if(moderator==1) todel="<a href='?inc=gallery&gallery="+gallery+"&delfoto="+afoto[0]+"' onclick='return confirm(\"Вы действительно хотите удалить эту фотографию?\");'>Удалить фотографию</a><br>"; else todel="";
if(pfoto) prev="<a href='?inc=gallery&gallery="+gallery+"&foto="+pfoto[0]+"'> <<<< </a><br>"; else prev="";
if(nfoto) next="<a href='?inc=gallery&gallery="+gallery+"&foto="+nfoto[0]+"'> >>>> </a><br>"; else next="";
wr("<table><tr><td width=80 align=center valign=middle>"+prev+"<td align=center><img src=gallery/image/"+afoto[0]+".jpg><br>"+g_f[i][3]+"<br>Опубликовал(а) "+fotoinfo(afoto)+todel+"</td><td width=80 align=center valign=middle>"+next+"</td></tr></table><br><br>");

Отредактировано artkhvz - 03.12.2012
1007
BETEPAH @BETEPAH
artkhvz пишет:

Почему при добавлении g_f[i][3] в данный срипт возникает ошибка?

/* Выводим выбранную фотографию */
if(afoto) {
if(moderator==1) todel="<a href='?inc=gallery&gallery="+gallery+"&delfoto="+afoto[0]+"' onclick='return confirm(\"Вы действительно хотите удалить эту фотографию?\");'>Удалить фотографию</a><br>"; else todel="";
if(pfoto) prev="<a href='?inc=gallery&gallery="+gallery+"&foto="+pfoto[0]+"'> <<<< </a><br>"; else prev="";
if(nfoto) next="<a href='?inc=gallery&gallery="+gallery+"&foto="+nfoto[0]+"'> >>>> </a><br>"; else next="";
wr("<table><tr><td width=80 align=center valign=middle>"+prev+"<td align=center><img src=gallery/image/"+afoto[0]+".jpg><br>"+g_f[i][3]+"<br>Опубликовал(а) "+fotoinfo(afoto)+todel+"</td><td width=80 align=center valign=middle>"+next+"</td></tr></table><br><br>");

А что означает переменная i в добавленном? Может вместо g_f[i][3] написать afoto[3]?

53
artkhvz @artkhvz
BETEPAH пишет:

artkhvz пишет:

Почему при добавлении g_f[i][3] в данный срипт возникает ошибка?

/* Выводим выбранную фотографию */
if(afoto) {
if(moderator==1) todel="<a href='?inc=gallery&gallery="+gallery+"&delfoto="+afoto[0]+"' onclick='return confirm(\"Вы действительно хотите удалить эту фотографию?\");'>Удалить фотографию</a><br>"; else todel="";
if(pfoto) prev="<a href='?inc=gallery&gallery="+gallery+"&foto="+pfoto[0]+"'> <<<< </a><br>"; else prev="";
if(nfoto) next="<a href='?inc=gallery&gallery="+gallery+"&foto="+nfoto[0]+"'> >>>> </a><br>"; else next="";
wr("<table><tr><td width=80 align=center valign=middle>"+prev+"<td align=center><img src=gallery/image/"+afoto[0]+".jpg><br>"+g_f[i][3]+"<br>Опубликовал(а) "+fotoinfo(afoto)+todel+"</td><td width=80 align=center valign=middle>"+next+"</td></tr></table><br><br>");

А что означает переменная i в добавленном? Может вместо g_f[i][3] написать afoto[3]?

Вы правы!! так работает.

83
VipeR707 @VipeR707
Как сделать оценку звездочками?

596
Сергей @Князь_Пипецкий
VipeR707 пишет:

Как сделать оценку звездочками?

Вот:

https://vmeste.eu/forum?pid=205193#p205193

И вот:

https://vmeste.eu/forum?pid=204845#p204845

4619
Web3r @Web3r
Не создаю новую тему. Решил переверстать галерею, столкнулся с проблемой.
Не могу создать таблицу 4x4 для последних фото (в параметрах указал 16 для общего числа). Есть в коде две переменные:
var tr = 5;
var atr = 0;

Первая, как понял, общее число строк? Но даже если так, все равно значение 4 ничего не дает.
Что означает вторая? Чисто td внутри tr? Поставил туда и туда по четверке. Не работает.

Еще не понял вот с этим моментом:
if (atr == 0) wr("<tr>");
atr++;
if (atr == 5) atr = 0;

Что тут имеется в виду?

2615
Сергей @Pegass
Web3r пишет:

Еще не понял вот с этим моментом:
if (atr == 0) wr("<tr>");
atr++;
if (atr == 5) atr = 0;

Что тут имеется в виду?

а вот и зря, именно это тебе и надо - поменяй здесь 5 на 4)))

4619
Web3r @Web3r
Еще вопрос. Можно ли эту функцию вынести в отдельную переменную, например, galleryNav, чтобы потом без проблем подключить использовать в wr()?
Пробовал вынести в function galleryNav() { } и выводить так: wr("..."+ galleryNav() + "...") - не получилось.
Полагаю, сложность в том, что тут массив и wr() уже используется внутри... Может, как-нибудь с return?

if (gal_upload > 0) {
sym = "0-9";
if (g_a[sym]) sym = ""; // some code
wr(sym + " ");
for (var i = 65; i < 1072; i++) {
sym = String.fromCharCode(i);
if (g_a[sym]) sym = ""; // some code
else sym = "";
wr(sym + " ");
if (i == 90) {
i = 1039;
wr("<br />");
}
}
}

Отредактировано Web3r - 25.03.2015
2970
удалён @Foggy
Если хочешь внутри wr, то нужно в этом коде везде wr() заменить на назначение переменной типа alphabetic =
А в конце перед закрытием функции написать return alphabetic;
Но учти, что это и исходную функцию переназначит - её нужно будет тоже через wr выводить.

p.s. только объяви где-нибудь эту переменную через var вначале, чтоб она не была глобальной. глобальные переменные это плохо, хоть их у Димы дохрена сейчас.

Отредактировано Foggy - 25.03.2015
2615
Сергей @Pegass
function galleryNav()
{
var atmp='';
if(gal_upload>0)
{
sym="0-9";
if(g_a[sym]) sym="<a href=?inc=gallery&abc="+sym+" title='Галерей: "+g_a[sym]+"'>"+sym+"</a>";
atmp+=sym+" ";
for(var i=65;i<1072;i++)
{
sym=String.fromCharCode(i);
if(g_a[sym]) sym="<a href=?inc=gallery&abc="+sym+" title='Галерей: "+g_a[sym]+"'>"+sym+"</a>";
atmp+=sym+" ";
if(i==90) {i=1039;wr("<br>");}
}
atmp+="<br><br>";
return atmp;
}
}