|
|
02.10.2009, 08:53
|
|
Гость
Гость
|
Подскажите пожалуйста с чего начать, какими функциями пользоватся. Появилась необходимость чтоб определёный пользователь мог управлять своей страничкой, с правами я разобрался, но не как не могу додуматся как это всё реальзовать чтоб он мог непосредствено на странице редактировать, без входя в админку.
Помогите чем могите!
|
|
|
02.10.2009, 14:02
|
|
Denis

Зарегистрирован: 2008-07-15
Сообщений: 666
|
Режим редактирования доступен по адресу:
имя_сайта/netcat/
|
|
|
02.10.2009, 23:49
|
|
Гость
Гость
|
Это и ежу понятно =)))
Вопрос стоит в том, КАК можно редактировать раздел/компонент юзеру с правами на редактирование раздела/компонента БЕЗ входа в админку?
|
|
|
03.10.2009, 23:08
|
|
Denis

Зарегистрирован: 2008-07-15
Сообщений: 666
|
Редактировать сам компонент/раздел можно только через админку.
Не через админку можно управлять только контентом.
|
|
|
05.10.2009, 06:22
|
|
Гость
Гость
|
извеняюсь, но может меня нетак поняли...
меня кокраз и интересует, управление контентом, добавление/удаление/редактирование инфы на странице, неприбегая к заходу в администраторскую часть
|
|
|
05.10.2009, 19:17
|
|
malich
Андрей Малков
Зарегистрирован: 2005-08-09
Сообщений: 522
|
1. создание записи на странице. Если хочешь сделать все красиво то можешь например сделать вот так:
- Дать пользователю права на добавление в нужный раздел
- На нужных страницах подгружать форму добавления, например <iframe src="/news/" width="714" frameborder="0" scrolling="no" name="myIFR" onload="this.height = window.frames.myIFR.document.body.scrollHeight + 30"></iframe>
если на раздел /news/ стоит действие по умолчанию добавление, то откроется соответсвующая форма. Если действие просмотр то нужно вызывать /news/$action=add
если хочешь изменить внешний вид формы добавлений то можешь передовать второй параметр /news/$action=add¶metr=1
В альтернативной форме добавления объекта
".opt($admin_mode,"стандартная форма добавления")."
".opt($parametr,"твоя альтернативная форма")."
2. если не мудрить то форму добавления можно получить по ссылке /news/add_news.html
Изменить ее внешний скорее всего можно так же через проверки в альтернативной форме добавления
".opt($admin_mode,"стандартная форма добавления")."
".opt(!$admin_mode,"твоя альтернативная форма")."
3. пользователь наделяется всеми правами на редактирование добавленных им сообщений, для этого можешь использовать функцию ".nc_message_link(int $message_id, int $class_id, $action='')." отдаешь ей номер компонента и id записи, она тебе возвращает к примеру /news/edit_news.html
как то вот так :-)
|
|
|
05.10.2009, 23:51
|
|
Denis

Зарегистрирован: 2008-07-15
Сообщений: 666
|
Миша писал(а):
меня кокраз и интересует, управление контентом, добавление/удаление/редактирование инфы на странице, неприбегая к заходу в администраторскую часть
Можно так же воспользоваться ссылками, ввида
add_ИмяКомпонента.html
edit_ИмяКомпонента_НомерОбъекта.html
delete_ИмяКомпонента_НомерОбъекта.html
drop_ИмяКомпонента_НомерОбъекта.html
checked_ИмяКомпонента_НомерОбъекта.html
Например:
".($current_user['User_ID'] == 2 ? "<a href='$editLink'>Редактировать объект</a>" : "" )."
|
|
|
06.10.2009, 08:01
|
|
mishakor
Зарегистрирован: 2009-04-02
Сообщений: 7
|
большое спс, это что то новенькое для меня, буду тыкаться разбираться
есть есче пару вопросиков:
вот допустим у меня куча пользователей, у каждого пользователя свои права, на редактирование своих страничек, как правильно мне написать условие чтоб оно подходило ко всем, тобиш чтоб было одно и тоже условие, но оно срабатывало тока тогда когда пользователь с правами находится на своей страничке а на чужих не срабатывало
Дико извиняюсь если написал чушь, но эту тему тока неделю разбираю, пока ничего толком не понятно
и есче, как можно сменить дизайн $f_AdminButtons, $f_AdminCommon этих блоков
я не програмист, тока учусь
|
|
|
06.10.2009, 13:41
|
|
malich
Андрей Малков
Зарегистрирован: 2005-08-09
Сообщений: 522
|
Нужно исходить из конкретной реализации.
1. у авторизованного пользователя есть 2 переменные $current_user['User_ID'] и $AUTH_USER_ID которые содержат User_ID пользователя из таблицы User в БД.
во всех компонентах есть столбец User_ID в котором содержится id пользователя добавившего запись, тоесть для уже созданных записей можно делать проверку ".opt($f_UserID==$AUTH_USER_ID,"ссылка на редактирование или удаление")."
2. можно сделать что то вроде личного кабинета. с установленным модулем интерфейс пользователя становится доступным страничка /profile/profile_1.html с информацией о пользователе. где "1" это User_ID пользователя из таблицы User в БД.
Внешний вид этой странички можно поменять "разработка-системные таблицы-пользователи-отображение объекта"
там нужно написать что то вроде:
".opt($f_RowID=!$AUTH_USER_ID,"если id авторизованного(или $AUTH_USER_ID нет если пользователь не авторизован) пользователя не равно id пользователя (User_ID) владельца этой страницы то выводим какую то информацию")."
".opt($f_RowID==$AUTH_USER_ID,"если id авторизованного пользователя равно id пользователя (User_ID) владельца этой страницы то выводим ссылки на редактирование, удаление и добавление информации")."
дизайн $f_AdminButtons, $f_AdminCommon меняется в "настройки-настройки системы"
|
|
|
08.10.2009, 06:53
|
|
mishakor
Зарегистрирован: 2009-04-02
Сообщений: 7
|
и есче раз спс, буду разбиратся
я не програмист, тока учусь
|
|
|
13.10.2009, 11:09
|
|
mishakor
Зарегистрирован: 2009-04-02
Сообщений: 7
|
Denis писал(а):
add_ИмяКомпонента.html
edit_ИмяКомпонента_НомерОбъекта.html
delete_ИмяКомпонента_НомерОбъекта.html
drop_ИмяКомпонента_НомерОбъекта.html
checked_ИмяКомпонента_НомерОбъекта.html
подскажите в чем причина, кроме добавления этим способю ничего неполучается
я не програмист, тока учусь
|