We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1843
    • 35 Posts
    Допустим у меня есть папки
    Клубы [3] (10)
    Фоторепортажи [6] (165)
    - Репортаж с OpenAir «ОЗЕРКИ: Внимание Breaks» (01.08.2009)
    - Репортаж с вечеринки «BIRTHDAY DJ IVANOFF» в ночном клубе «Матрица» (04.02.2009)
    - Репортаж с вечеринки «Lady and Gentlemen» в ночном клубе «Матрица»

    Мне нужно вывести случайную фотку из всех подпапок папки "Фоторепортажи" и при на жати на нию уходило на соответствующую галерею...

    Если у кого котовый шаблон?!

    Заранее спасибо!
      • 1843
      • 35 Posts
      Сам спроси сам ответил


      <div class="thumb">
      <b class="b1"></b><b class="b2"></b><b class="b3"></b><b class="b4"></b>
      <div class="boxcontent">

      <a href="/gallery/[+easy2:parent_id+]/[+easy2:dir_id+]/[+easy2:id+].jpg" title="[+easy2:title+] - [+easy2:description+]" [+easy2:glibact+]><img src="[+easy2:src+]" alt="[+easy2:title+]" width="[+easy2:w+]" height="[+easy2:h+]"></a>
      <div><span class="[+easy2:com+]">[+easy2:comments+]</span>[+easy2:name+]</div>
      </div>
      <b class="b4b"></b><b class="b3b"></b><b class="b2b"></b><b class="b1b"></b>
      </div>
        • 31022
        • 328 Posts
        Спасибо Temus’у за замечательную сборку.

        Одна вот загвоздка появилась. Галерея перед собой выводит еще одну таблицу e2g. Вот код:

        <table class="e2g"><tr></tr></table><table class="e2g"><tr><td><div class="thumb">
        
        <a href="...


        Валидатор, есс-но, ругается. Откуда берется эта штука? В код посмотрел, не нашел ответа. Подскажите, если кто встречал.

        P.S. На всякий случай. Структура галерей такая: Easy2/FirstGal/SecondGal Вывожу я SecondGal (с лишней таблицей), тогда как FirstGal пуста в плане картинок.
          • 31022
          • 328 Posts
          И еще один вопрос вот возник. Библиотеки в Assets, а можно ли добавить свою библиотеку (PrettyPhoto, например) без грубого вмешательства в код? (Не, поменять не вопрос, но просто подумалось, раз уж так клево, может, вообще-вообще клево? (: )
            • 29487
            • 385 Posts
            Пустая таблица/див - это обрамление от внутренних папок (которых нет).
            Нужно исправить примерно так:
            $_e2g['content'] = $notables ? '<div class="e2g">':'<table class="e2g"><tr>';

            на
            $num_rows = mysql_num_rows($res);
            $_e2g['content'] = $num_rows ? ($notables ? '<div class="e2g">':'<table class="e2g"><tr>') : '';


            и
            $_e2g['content'] .= $notables ? '</div>' : '</tr></table>';

            на
            $_e2g['content'] .= $num_rows ? ($notables ? '</div>' : '</tr></table>') : '';


            Надо будет включить в новую сборку. Тут для одного проекта сделал несколько исправлений: вывод пустых папок если они содержат непустые, полноценная навигация-breadcrubms по галерее и вывод одиночного изображения.

            Без вмешательства в код не получится. А PrettyPhoto я не стал включать в сборку - там баг с навигацией вперёд-назад при нескольких наборах картинок.
              • 31022
              • 328 Posts
              Благодарю за быстрый и подробный ответ. Вечером попробую изменить.

              А поподробней можно узнать про баг в PrettyPhoto? Она мне нравится своей плавностью на jQ. Раньше я использовал slimbox на mootools, а тут на jQ что-то перешел, вот и ищу варианты.

              Кстати, еще вопрос. Если я вывожу несколько галерей на одной странице (посредством Дитто) могу ли я как-то изменять название подборки для каждой галереи? То есть, фактически запретить последовательный просмотр всех картинок из всех галерей, а оставить только перемещение внутри одной подборки? За это отвечает обычно атрибут типа rel="lightbox[GalleryName]", так вот как бы изменять GalleryName от подборки к подборке.
                • 29487
                • 385 Posts
                Про баг в PrettyPhoto.

                Есть допустим 2 набора картинок. Так она будет работать правильно:

                <li><a href="1.jpg" rel="prettyPhoto[gallery1]"><img ... /></a></li>
                <li><a href="2.jpg" rel="prettyPhoto[gallery1]"><img ... /></a></li>
                <li><a href="3.jpg" rel="prettyPhoto[gallery1]"><img ... /></a></li>
                <li><a href="4.jpg" rel="prettyPhoto[gallery2]"><img ... /></a></li>
                <li><a href="5.jpg" rel="prettyPhoto[gallery2]"><img ... /></a></li>

                А так уже не будет:

                <li><a href="1.jpg" rel="prettyPhoto[gallery1]"><img ... /></a></li>
                <li><a href="2.jpg" rel="prettyPhoto[gallery2]"><img ... /></a></li>
                <li><a href="3.jpg" rel="prettyPhoto[gallery1]"><img ... /></a></li>
                <li><a href="4.jpg" rel="prettyPhoto[gallery2]"><img ... /></a></li>
                <li><a href="5.jpg" rel="prettyPhoto[gallery2]"><img ... /></a></li>

                В easy2 это вызовет переход не на следующую картинку, а на окно комментария.
                  • 29487
                  • 385 Posts
                  Quote from: umanuma at Aug 19, 2009, 07:20 AM

                  могу ли я как-то изменять название подборки для каждой галереи?

                  Как то так надо сделать (для highslide не получится):

                  $show_group = isset($show_group) ? $show_group : 'easy2gallery';
                  
                  // gallery activation
                  if ($glib == 'highslide') {$l['glibact']='class="highslide" onclick="return hs.expand(this, {slideshowGroup: \'mygroup\'})"';}
                  if ($glib == 'slimbox' || $glib == 'slimbox2' || $glib == 'fancybox') {$l['glibact']='rel="lightbox['.$show_group.']"';}
                  if ($glib == 'shadowbox') {$l['glibact']='rel="shadowbox['.$show_group.'];player=img"';}
                  if ($glib == 'floatbox') {$l['glibact']='class="floatbox" rev="doSlideshow:true group:'.$show_group.'"';}
                  if ($glib == 'lightwindow') {$l['glibact']='class="lightwindow" rel="Gallery['.$show_group.']" params="lightwindow_type=image"';}
                  


                  И вызывать с параметром show_group=GalleryName

                  P.S. Для jQ есть slimbox2
                    • 18893
                    • 45 Posts
                    Quote from: Temus at Aug 18, 2009, 05:21 PM

                    вывод пустых папок если они содержат непустые
                    Вот это очень здорово, можно вас попросить выложить правленый файл?
                      • 31022
                      • 328 Posts
                      Ага, а если не заморачиваться с названием каждой галереи (это ж надо лишнюю tv делать или каким-то параметром документа приделывать), можно, думаю, поставить gallery$gid на то же место. Он ведь уникален, а больше ничего и не надо. Все равно название подборки нигде не отсвечивает, вроде бы. Попробую сейчас вот так:

                      // gallery activation
                      if ($glib == 'highslide') {$l['glibact']='class="highslide" onclick="return hs.expand(this, {slideshowGroup: \'mygroup\'})"';}
                      if ($glib == 'slimbox' || $glib == 'slimbox2' || $glib == 'fancybox') {$l['glibact']='rel="lightbox[gallery'.$gid.']"';}
                      if ($glib == 'shadowbox') {$l['glibact']='rel="shadowbox[gallery'.$gid.'];player=img"';}
                      if ($glib == 'floatbox') {$l['glibact']='class="floatbox" rev="doSlideshow:true group:gallery'.$gid.'"';}
                      if ($glib == 'lightwindow') {$l['glibact']='class="lightwindow" rel="Gallery[gallery'.$gid.']" params="lightwindow_type=image"';}


                      Спасибо за инфу по Pretty, попробую. Сейчас временно у меня работает именно slimbox2, но, во-первых, он мне не совсем подходит по оформлению, а во-вторых, (не знаю, может, чисто субъективно) он сильнее дергается. Вообще, по-моему, jQ дерганая какая-то в плане визуальных эффектов.