Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2009-10-08 17:21:25

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Требуется помощь c {personal_menu}

Авторизация в моём шаблоне размещена в шапке сайта, мне необходимо сделать так что бы после авторизации "Меню пользователя" отображалось совершенно в другом месте. Подскажите как это реализовать и можно ли вообще это сделать ?
Пробовал вставлять в main.tpl всё что находится в [is-logged] [/is-logged] - не работает sad

Не в сети

#2 2009-10-08 17:34:24

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

Gnome, Просто сделать отдельный плагин для вывода меню пользователя при его авторизации...

Изменено ROZARD (2009-10-08 17:35:16)

Не в сети

#3 2009-10-08 17:43:39

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

ROZARD пишет:

Gnome, Просто сделать отдельный плагин для вывода меню пользователя при его авторизации...

Мне бы хотелось это реализовать средствами шаблонной системы не трогая php код.

Не в сети

#4 2009-10-08 17:47:48

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Требуется помощь c {personal_menu}

По быстрому, можно просто доработать плагин ads (добавить группы пользователей), он для подобных целей очень подойдет


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#5 2009-10-08 17:55:13

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

Amarelius пишет:

По быстрому, можно просто доработать плагин ads (добавить группы пользователей), он для подобных целей очень подойдет

Тоже не вариант.
А есть ли в движке какие-нибудь переменные заключая в которые код он отображался бы только для зарегистрированных пользователей ?

Не в сети

#6 2009-10-08 18:02:51

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Требуется помощь c {personal_menu}

Добавь гдето после 191-й строки в файле index.php

if (is_array($userROW) && ($userROW['status'] < 0)) {
	$template['vars']['[is-logged]'] = '';
	$template['vars']['[/is-logged]'] = '';
} else {
	$template['regx']["'\\[is-logged\\].*?\\[/is-logged\\]'si"] = '';
}

и в main.tpl начнет работать конструкция [is-logged] [/is-logged]

-------------------------------
Только версия у меня из SVN

А лучше устанавливай непосредственно перед

// ===================================================================
// Make page output
// ===================================================================

$tpl -> template('main', tpl_site);
..........

Изменено Amarelius (2009-10-08 18:18:24)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#7 2009-10-08 19:02:20

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

Gnome, нельзя, подобной задачи никогда не вставало.

Возникло 2 возможных варианта решения:
1. Добавить поддержку блоков

[is-logged] .. [/is-logged]
[isnt-logged] .. [/isnt-logged]

в main.tpl

2. Сделать кроме блока {personal_menu} ещё и блоки {personal_menu:logged} и {personal_menu:not.logged} которые можно будет разносить в разные места шаблона.

Подумаю что лучше (а, возможно, есть смысл сделать оба варианта) и добавлю в SVN версию.

Не в сети

#8 2009-10-08 21:33:50

Евгений
Модератор
Откуда Россия
Зарегистрирован: 2009-04-08
Сообщений: 1,014
Рейтинг :   38 
Сайт

Re: Требуется помощь c {personal_menu}

vitaly, мысль очень хорошая, я думаю что это обязательно пригодится. Сам сталкивался с этим.

Изменено Евгений (2009-10-08 21:34:20)


I NGeneration CMS

Не в сети

#9 2009-10-09 05:11:24

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

vitaly пишет:

Gnome, нельзя, подобной задачи никогда не вставало.

Возникло 2 возможных варианта решения:
1. Добавить поддержку блоков

[is-logged] .. [/is-logged]
[isnt-logged] .. [/isnt-logged]

в main.tpl

2. Сделать кроме блока {personal_menu} ещё и блоки {personal_menu:logged} и {personal_menu:not.logged} которые можно будет разносить в разные места шаблона.

Подумаю что лучше (а, возможно, есть смысл сделать оба варианта) и добавлю в SVN версию.

Благодарю ! smile
Сообщите пожалуйста когда это сделаете smile

Изменено Gnome (2009-10-09 08:45:23)

Не в сети

#10 2009-10-09 10:10:43

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

И что только мешает это сделать в виде плагина, зачем же засорять двиг разными хаками...

Не в сети

#11 2009-10-09 10:57:05

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

ROZARD пишет:

И что только мешает это сделать в виде плагина, зачем же засорять двиг разными хаками...

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

Не в сети

#12 2009-10-09 11:22:14

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

Gnome, Прям с плагином...

Не в сети

#13 2009-10-09 11:35:58

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

ROZARD, это достаточно логичное изменение, оно может для множества шаблонов оказаться полезным.
Поэтому из разряда "хак" переходит в разряд "нужная фича" smile

Не в сети

#14 2009-10-09 11:56:19

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

Извиняюсь что не совсем в тему но у меня возникла ещё одна проблема теперь уже с categories.tpl
Хотел сделать выпадающие подкатегории из категорий в навигации но как я понял реализовать это у меня не получится так как шаблон для категорий и подкатегорий один sad

и помоему {counter} в categories.tpl не работает sad

Изменено Gnome (2009-10-09 12:00:15)

Не в сети

#15 2009-10-09 16:37:04

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Требуется помощь c {personal_menu}

"Настройки" -> "Новости" -> "Счетчик новостей в категории" -> "Да"

Не в сети

#16 2009-10-09 17:33:27

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

vitaly, Так в самом двиге нужных фич может получится очень много...:/
Как буд то сложно сделать плагин и положить его с шаблоном, при том что правки кода делать не нужно, а просто переместить куда нужно и включить...

Не в сети

#17 2009-10-09 17:40:40

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Требуется помощь c {personal_menu}

Согласен с ROZARD'ом. Думаю лучше вынести все условные блоки в отдельный плагин с гибкой системой настройки, и тогда каждый сам для своего ресурса сможет включить нужные ему условные блоки в нужных шаблонах. Получится эдакий плагин глобальных условных блоков cool.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#18 2009-10-09 22:56:46

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

Gnome, выложил в SVN, тестируй.
Amarelius, хорошая мысль. Подумаю как это правильней сделать.

Не в сети

#19 2009-10-10 12:23:16

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

vitaly пишет:

Gnome, выложил в SVN, тестируй.

Не работает hmm

Извиняюсь, второй вариант работает, спасибо.

Изменено Gnome (2009-10-10 12:56:02)

Не в сети

#20 2009-10-10 16:15:56

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

Gnome, уточни что именно не работает?

Не в сети

#21 2009-10-10 17:01:01

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

Что то мне подсказывает что он хотел:

[is-logged] .. [/is-logged]
[isnt-logged] .. [/isnt-logged]

Использовать в main.tpl...:)

Не в сети

#22 2009-10-10 21:33:13

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

Gnome, выложил фикс в SVN
ROZARD, оно так и задумывалось,.. но из-за опечатки - не работало. Теперь - должно.

Не в сети

#23 2009-10-10 22:27:01

ROZARD
Модератор
Откуда Россия, Астрахань
Зарегистрирован: 2008-10-13
Сообщений: 1,523
Рейтинг :   82 
Сайт

Re: Требуется помощь c {personal_menu}

vitaly, Зачем засорять index.php:

$template['regx']['#\[is-logged\](.+?)\[/is-logged\]#is'] = $is_logged?'$1':''; 
$template['regx']['#\[isnt-logged\](.+?)\[/isnt-logged\]#is'] = $is_logged?'':'$1';

Не лучше будет добавить в usermenu.php, там им самое место...:)

Не в сети

#24 2009-10-10 22:57:10

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Требуется помощь c {personal_menu}

ROZARD, может ты и прав... но пока смысла переносить не вижу.
В процессе развития разберёмся что лучше а что хуже smile

Не в сети

#25 2009-10-11 10:31:07

Gnome
Участник
Зарегистрирован: 2008-11-17
Сообщений: 101
Рейтинг :   

Re: Требуется помощь c {personal_menu}

vitaly пишет:

Gnome, выложил фикс в SVN

Всё работает, ещё раз спасибо.

А по поводу меню кто-нибудь может что-нибудь посоветовать ?
Пытаюсь сделать нечто вроде этого:

attachment.php?item=182&download=1

Изменено Gnome (2009-10-11 10:32:18)

Не в сети

Подвал раздела

Работает на FluxBB