Перейти к содержимому


Сделать из магазина закрытый каталог

авторизация доступ к каталогу

  • Вы не можете ответить в тему
Сообщений в теме: 10

#1 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 09 November 2012 - 10:29 PM

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

как минимум 3 типа пользователей
- администраторы
управляют каталогом
управляют заказами

- обычные пользователи
могут добавлять позиции в каталог
могут просматривать детальную информацию только о своих позициях

- VIP - пользователи
могут добавлять позиции в каталог
могут пользоваться поиском
могут просматривать детальную информацию о всех позициях
могут делать заказы
отчетность о ходе выполнения

Пока вызрели такие требования к будущей системе, буду расширять по мере понимания.

Жду отзывов и советов о том как можно реализовать подобное разделение прав.
  • 0

#2 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 09 November 2012 - 10:48 PM

Жду отзывов и советов о том как можно реализовать подобное разделение прав.

В рамках штатного ShopCMS - разобраться с разделением прав. Но уверен, что даже ограниченный (на уровне разрешения добавлять товары и не более) доступ к админке обычному стороннему пользователю ни к чему хорошему не приведет. Найдутся грабли и дырки для любознательного студента, которых в админке ShopCMS достаточно. Придется либо писать дополнительные модули для реализации желаемого, либо (что правильнее!) найти не классический интернет-магазин, а некий другой продукт, с закосом под eBay, т.е. имеющий в основе принципиально другую идею.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#3 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 09 November 2012 - 11:46 PM

Жду отзывов и советов о том как можно реализовать подобное разделение прав.

В рамках штатного ShopCMS - разобраться с разделением прав. Но уверен, что даже ограниченный (на уровне разрешения добавлять товары и не более) доступ к админке обычному стороннему пользователю ни к чему хорошему не приведет. Найдутся грабли и дырки для любознательного студента, которых в админке ShopCMS достаточно. Придется либо писать дополнительные модули для реализации желаемого, либо (что правильнее!) найти не классический интернет-магазин, а некий другой продукт, с закосом под eBay, т.е. имеющий в основе принципиально другую идею.


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

другую систему конечно можно, но проект не коммерческий, да и нет времени разбираться с другими системами, все равно идеальных нет, а тут я хоть не много понимать начал что как устроено.
  • 0

#4 R.Sergey

    Администратор

  • Администраторы
  • 2810 сообщений
Репутация: 332
Мастер

Отправлено 10 November 2012 - 06:41 AM

Некоммерческий проект с VIP-клиентами и добавлением товаров? :blink: Это как это?
  • 0

#5 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 10 November 2012 - 11:05 AM

Некоммерческий проект с VIP-клиентами и добавлением товаров? :blink: Это как это?


это я просто перевел на язык магазина требования к будущему каталогу, в данном случае про товары и клиентов
я нигде не писал, а да и не коммерческий для меня значит, что я на нем ничего не зарабатываю, а вот если сестре поможет в работе,
то слава богу.
  • 0

#6 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 10 November 2012 - 11:35 AM

Очень напоминает биржу товаров (услуг). Обычные клиенты могут разместить свою заявку по своей цене, но не могут посмотреть чужие заявки и цену, однако есть VIP-клиент, который видит все заявки и может выбирать наилучший вариант для приобретения, продажи или перепродажи. Если обычный клиент хочет не только бесплатно размещать свое, но и видеть чужое, то он должен стать VIP-клиентом, т.е. заплатить денежку за работу на бирже.

Лет десять назад (больше?), если не ошибаюсь, похоже работал какой-то из каталогов бесплатных объявлений. Толи Шанс, толи ИРР. Размещение бесплатно, поиск и просмотр бесплатно, а вот увидеть поле с телефоном в желаемом объявлении - за денежку. Как я понимаю, тема умерла, т.к. ушлый народ стал публиковать телефон прямо в тексте объявления, маскируя его аналогично спамерам :).
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#7 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 10 November 2012 - 06:19 PM

Подскажите, плз, где проверяются права показывать или нет блок по правам.
Добавил новые виды пользователей для блоков, они заносятся в базу в таблицу blocks в колонку admin,
но что- то не могу понять в какой функции где идет проверка этого значения.
  • 0

#8 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 10 November 2012 - 08:42 PM

Подскажите, плз, где проверяются права показывать или нет блок по правам.

Насколько я помню (не факт, что я прав!) у блоков нет фишки показа или непоказа в зависимости от прав пользователя.
Штатно можно разрешить показ блока либо для всех, либо для админа. Я несколько дней назад дописывал (и выкладывал в общий доступ? не помню) трехвариантность показа блоков вместо двухвариантности - не всем/админам а всем/админам/зарегистрированым_юзерам. Но даже в этом случае нет возможности разрешить/запретить показ блока конкретным пользователям.

Вся система "разграничения прав" в ShopCMS применима только к админке. В клиентской части она почти не используется.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#9 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 10 November 2012 - 09:41 PM

Я несколько дней назад дописывал (и выкладывал в общий доступ? не помню) трехвариантность показа блоков вместо двухвариантности - не всем/админам а всем/админам/зарегистрированым_юзерам. Но даже в этом случае нет возможности разрешить/запретить показ блока конкретным пользователям.

Вся система "разграничения прав" в ShopCMS применима только к админке. В клиентской части она почти не используется.


Это именно то что нужно, я тоже пошел по этому пути, только я добавил дополнительно 2 варианта менеджер и VIP-пользователь.
Можешь дать ссылку, если выкладывал, а то я не нашел. Ну или просто подскажи, где проверяется эти права.
  • 0

#10 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 November 2012 - 04:16 PM

Можешь дать ссылку, если выкладывал, а то я не нашел

Похоже, не выкладывал.
======================
1. в файле conf_blocks_edit.tpl.html

1.1 после строки


<option value="1" {if $blocks_edit.admin eq 1}selected{/if}> {$smarty.const.BLOCK_EDIT_ADMIN3} </option>


добавляем


<option value="2" {if $blocks_edit.admin eq 2}selected{/if}> Registered users </option>


1.2 после строки


<option value="1"> {$smarty.const.BLOCK_EDIT_ADMIN3} </option>


добавляем


<option value="2"> Registered users </option>



2. в файле index.php

после строки


if ($vallb["admin"] == 1) if (!$adminislog) $vallb["state"] = false;


добавляем


if ($vallb["admin"] == 2) if (!isset($_SESSION["log"])) $vallb["state"] = false;


таких строк там четыре по числу вариантов расположения блоков - лево/право/верх/низ.
Заменить, естественно, надо во всех четырех местах.
===============================

Ну или просто подскажи, где проверяется эти права.


В общем случае это $_SESSION['log'], плюс есть функция checklogin() в functions.php, возвращающая массив разрешенных действий для текущего пользователя (они задаются в админке). Штатно там задаются только административные действия, но никто не мешает добавить свои фишки. Например, "показывать клиенту блок номер восемь"- [да/нет] :).
  • 1
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#11 trust2005

    Пользователь

  • Download User
  • PipPip
  • 10 сообщений
Репутация: 0
Начинающий

Отправлено 12 November 2012 - 12:53 AM

Спасибо, дитяте не дало сегодня позаниматься разработкой, но обязательно отпишусь о результатах.
Единственно, что я вместо "Registered users" использовал {$smarty.const.BLOCK_EDIT_ADMIN4} и дописал соответствующее значение в RUSSIN.PHP
  • 0