[Решено] Календарь событий в друпале

Прислано: ValBangMan

пн, 23/03/2009 - 08:17

Добрый день!
Есть необходимость сделать календарь событий вот тут: http://pzrk.ru/ исходный код блока (на ссылку пока стоит заглушка):

<div class="fl">
  <h3>Календарь событий</h3>
  <select name="month" class="sb">				
    <option>Январь</option>
    <option>Февраль</option>
    <option>Март</option>
    <option>Апрель</option>
    <option>Май</option>
    <option>Июнь</option>
    <option>Июль</option>
    <option>Август</option>
    <option>Сентябрь</option>
    <option>Октябрь</option>
    <option>Ноябрь</option>
    <option>Декабрь</option>
  </select>
  <select name="year" class="sm">
    <option>2008</option>
    <option>2009</option>
  </select> 
  <a href="#">Перейти</a>
</div>

Нужны советы профессионалов. Далее по пунктам, по которым хотелось бы услышать, что думают знатоки:
1. думаю создать вьюшку с аргументами для месяца и для года, чтобы при запросе http://pzrk.ru/events/05/2008 показывались все публикации за май 2008 или http://pzrk.ru/events/07/2008 за июль 2009.
2 нужно создать модуль, который будет реализовывать следующее: после того, как пользователь выбрал интересующие значения, они заноситься в переменные $month и $year и далее формируем ссылку "Перейти" примерно вот так:

<?php
echo '<a href="http://pzrk.ru/events/'.$month.'/'.$year;
?>

но тут без ajax не обойтись я так понимаю...
второй вариант, это оформить выпадающие менюшки как форму, но тогда вопрос, как вместо кнопки типа submit повесить обработку формы на просто ссылку...

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано beerman в пн, 23/03/2009 - 09:09.

а встроенная вьюха чем не устраивает?


Опубликовано ValBangMan в пн, 23/03/2009 - 10:58.

Что имеется ввиду под встроенной? В page.tpl.php встроить ?


Опубликовано beerman в пн, 23/03/2009 - 23:31.

во views есть archive


Опубликовано ValBangMan в вт, 31/03/2009 - 21:20.

Там немного по-другому сделана она, а нужно точно как по дизайну. В общем решил проблему так:
1. Создал с помощью Views вьюху с именем events и с двумя аргументами %1/%2(для месяца и года). То есть, набрав events/02/2008 будет отображены все материалы за февраль 2008 года.
2. В page.tpl.php добавил такой скрипт:

  function get_link() {
    document.getElementById("changed_link").href = 'events/'+document.getElementById("month").value+'/'+document.getElementById("year").value;
  }
  function get_link_en() {
    document.getElementById("changed_link").href = 'en/events/'+document.getElementById("month").value+'/'+document.getElementById("year").value;
  }

Он позволяет переписывать ссылку, которая будет открывать вьюшку, каждый раз, когда происходит выбор нового значения в выпадающих менюшках месяца и года.
3. В нужном месте в page.tpl.php выводим выпадающие списки следующим образом:
<div>
  <h3>Календарь событий</h3>
  <select id="month" name="" onchange=get_link()>
    <option value="01">Январь</option>
    <option value="02">Февраль</option>
    <option value="03">Март</option>
    <option value="04">Апрель</option>
    <option value="05">Май</option>
    <option value="06">Июнь</option>
    <option value="07">Июль</option>
    <option value="08">Август</option>
    <option value="09">Сентябрь</option>
    <option value="10">Октябрь</option>
    <option value="11">Ноябрь</option>
    <option value="12">Декабрь</option>
  </select>
  <select id="year" name="" onchange=get_link()>
    <option value="2008">2008</option>
    <option value="2009">2009</option>
  </select> 
  <a id="changed_link" href="/events/01/2008">Перейти</a>
</div>

Что получилось, можно посмотреть на www.pzrk.ru


Опубликовано Tankha в пн, 25/05/2009 - 21:38.

Получилось так, что сайт не открылся - Касперский замучал красными окошками. (угроза, кража паролей...)
Что там у вас происходит?


Опубликовано ValBangMan в пн, 01/06/2009 - 19:22.

Ну как мне заказчик объяснил - действует правительство, сайт-то партии, которую не жалуют особо...я сам стремался, когда там просто статика была, и каспер кричал. Но когда я на денвере разработал сайт на друпале (естессно без всяких краж паролей) и залил его на хост именно pzrk.ru, то каспер кричать стал :) стоит задуматься...все под калпаком :) На локали этот набор файлов закачиваю в папку pzrk, все норм, создаю pzrk.ru на денвере, каспер начинает опять ругаться, стебато :)


Новое на сайте