Language
Contacts
GitHub
Support
Registration
Enter
Login: Password: The autologin:
Users
Recent posts
Ответить
1 2

Как реализуются активные кнопки?

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Nov -0001
#11
ну тогда можно вообще пойти простым путем. Это конечно некие костыли, зато работать будет на УРА. В модуле новостей в экшенах index, category и section найти участок где формируется список категорий и там проверять, если в данный момент мы в одной из них, то добавляем стиль "active"

Пример
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
<?php //формируем блок со списком  разделов
if ($this->cached && $this->Cache->check('category_' $this->cacheKey)) {
    
$this->categories $this->Cache->read('category_' $this->cacheKey);
} else {
    
$sql_cat $this->DB->select('news_sections'DB_ALL, array('cond' => array('class' => 'category''section_id' => $id)));
    
//выводим поочередно все разделы, каждый с новой строки(формируем список)
    
foreach ($sql_cat as $result) {
        
$css_klass = ($id == $result['id']) ? ' class="active"' '';
        
$this->categories .= '<li' $css_klass '>' get_link($result['title'], '/news/category/'.$result['id']) . '</li>';
    }
    if (
$this->cached)
        
$this->Cache->write($this->categories'category_' $this->cacheKey, array('module_news''category_block'));
}
?>

Добавлено2011.06.07 11-48

типа этого. Только этот кусок из экшена "section" и по этому у нас есть чудо-переменная $id. В экшене "category" она тоже должна быть, только надо ее найти(я уже не помню и пока нет времени смотреть). Там вроде все очень просто.

Добавлено2011.06.07 11-48

ЗЫ: к стати, это не список секций, а список категорий, но смысл я думаю понятен.

Edit by author 7 Jun 2011
Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Oct 2010
#12
Цитата
Обычно это делается джавой или пхп, как удобнее. Просто проверяешь текущую страницу и подсвечиваешь нужную ссылку. Что то типа

1
2
3
4
5
<?php if ($page == 'login') {
echo <a class="active">
} else {
echo <a>
}?>

Добавлено2011.06.06 19-17

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

Добавлено2011.06.06 19-19

ARMI пишет:
Именно это я и имел ввиду. Это нужно для красоты) для чего же еще)
просто мне показалось, что Атер имел виду другое.

Например при переходе на страницу "Авторизация" что бы ссылка на эту страницу была подсвечена, как бы говоря пользователю, что в данный момент он на этой странице)

Нахрена нужен геморой с джаваскриптом и пыхой, если прописать можно 1 строчку и не париться?

Ater

  • Атом-мозг
  • Юзер
  • 750
  • Репутация:15 
  • Предупреждения: 0 
  • Регистрация:
    17 Aug 2010
#13
skad0 пишет:
Нахрена нужен геморой с джаваскриптом и пыхой, если прописать можно 1 строчку и не париться?

и этой строчкой будет?

уж сразу бы договаривал бы...

Добавлено2011.06.09 13-54

в конечном итоге сделал джава скриптами как тут написано http://fromgomel.com/index.php?module=articles&c=articles&b=6&a=9

Все мое имхо...
------
Не флуди и не да зафлудим будешь!

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Nov -0001
#14
skad0, что то ты не то говоришь.... Или я чего-то не знаю?

Добавлено2011.06.09 22-19

Ater, ну вот и нашлось решение)

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

Ater

  • Атом-мозг
  • Юзер
  • 750
  • Репутация:15 
  • Предупреждения: 0 
  • Регистрация:
    17 Aug 2010
#15
только я там не оч втыкнул каким же образом скрипт ищет ID которое в котором необходимо вставлять, или просто в этом примере ID не определено и оно ищет первое попавшееся?

Все мое имхо...
------
Не флуди и не да зафлудим будешь!

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Nov -0001
#16
я в скрипт тоже особо не втыкал)) Главное что работает.

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)
1 2
Register или login что бы писать
Сейчас online: 17. Зарегистрированных: 0. Гостей: 17.