[PayAndSee] - Заплати и смотри
Хочу представить вам новый компонент [PayAndSee].
Реализует закрытые ресурсы на MODx. Создание подписки на ресурс, выбор подписки и оплата платной подписки со счета [msProfile] пользователем самостоятельно, а так же подписка пользователей в админке сайта.
Дополнение в Магазине: store.simpledream.ru/packages/ecommerce/payandsee.html
Подключение вкладки с подпиской
В системных настройках выбрать payandsee_enable_for_templates. В ней можно перечислить id шаблонов через запятую, для которых будет активирована вкладка с подпиской.
Создание подписки
На странице ресурса появится новая вкладка Закрытый контент — тут можно создать и настроить подписку к ресурсу(ам).
Параметры подписки и настройки доступа
— заголовок подписки
— описание подписки
— цена подписки
— цена продления подписки
— период подписки
— идентификатор подписки
— показывать авторизованным
— показывать подписанным
— временно открыта
— выключена
— активна для потомков
Тут все просто и понятно, думаю нет смысла особо расписывать. Можно выставить настройку показывать авторизованным и контент будет доступен только авторизованным пользователям, ну а если стоит настройка подписанным то пользователь увидит подписку только при наличии у него активной подписки.
Страница «доступ запрещен»
Если у пользователя нет доступа то он увидит страницу доступ запрещен, id страницы нужно проставить в настройках пакета. На этой странице доступно два плейсходера:
— original_id — id оригинальной страницы
— subscribed_id — id подписки
Вывод подписок
В комплекте сниппет для вывода подписок — [psSubscription]. C его помощью можно вывести необходымые подписки.
Вывод подписок к оплате
В комплекте сниппет для вывода подписок пользователя — [psList]. C его помощью можно вывести подписки выбранные пользователем, но еще не оплаченные.
Тут можно удалить подписку, изменить кол-во, вообщем и целом это список подписок к оплате.
Оплата подписок
В комплекте сниппет для оплаты подписок — [psBuy]. C его помощью можно вывести профиль покупателя и совершить покупку.
Уведомления при покупке
В настройках [Minishop2] необходимо создать отдельный стутус для покупки подписок. Соответственно весь механизм уведомления при покупке родной от [Minishop2]. Средства с личного счета
[msProfile] списываются при покупке и отображаются в родном табе [msProfile].
Подписка пользователя в админке
Выбираете пользователя, выбираете нужное кол-во дней. Подписка в админке немного отличается от подписки пользователем самостоятельно.
Во первых при подписке можно указать любое кол-во дней, независимо от срока указанного в параметрах подписки, а так же средства со счета пользователя не снимаются. То есть пользователь получает доступ к ресурсам минуя покупку.
Окончание срока подписки
Для перевода просроченных подписок в неактивное состояние в комплекте скрипт для cron.
При запуске выбирает просроченные подписки и ставит статус — неактивна. Так же одновременно формирует список писем пользователям и указанным менеджерам об окончании подписки.
Для рассылки писем из очереди тоже имеется скрипт для cron.
ps. Возможно что то еще не описал… Есть вопросы и тд — спрашивайте пожалуйста.
pps. При создании пакета источником вдохновения для меня был и есть репо Василия. Спасибо тебе огромное.
Кстати все сниппеты написаны с использованием [pdoTools].
И отдельное спасибо за помощь при создании пакета и покорение ExtJs хотел бы выразить Льву Вербицкому. Спасибо тебе огромное за помощь!!!
Реализует закрытые ресурсы на MODx. Создание подписки на ресурс, выбор подписки и оплата платной подписки со счета [msProfile] пользователем самостоятельно, а так же подписка пользователей в админке сайта.
Дополнение в Магазине: store.simpledream.ru/packages/ecommerce/payandsee.html
Подключение вкладки с подпиской
В системных настройках выбрать payandsee_enable_for_templates. В ней можно перечислить id шаблонов через запятую, для которых будет активирована вкладка с подпиской.
Создание подписки
На странице ресурса появится новая вкладка Закрытый контент — тут можно создать и настроить подписку к ресурсу(ам).
Параметры подписки и настройки доступа
— заголовок подписки
— описание подписки
— цена подписки
— цена продления подписки
— период подписки
— идентификатор подписки
— показывать авторизованным
— показывать подписанным
— временно открыта
— выключена
— активна для потомков
Тут все просто и понятно, думаю нет смысла особо расписывать. Можно выставить настройку показывать авторизованным и контент будет доступен только авторизованным пользователям, ну а если стоит настройка подписанным то пользователь увидит подписку только при наличии у него активной подписки.
Страница «доступ запрещен»
Если у пользователя нет доступа то он увидит страницу доступ запрещен, id страницы нужно проставить в настройках пакета. На этой странице доступно два плейсходера:
— original_id — id оригинальной страницы
— subscribed_id — id подписки
Вывод подписок
В комплекте сниппет для вывода подписок — [psSubscription]. C его помощью можно вывести необходымые подписки.
Вывод подписок к оплате
В комплекте сниппет для вывода подписок пользователя — [psList]. C его помощью можно вывести подписки выбранные пользователем, но еще не оплаченные.
Тут можно удалить подписку, изменить кол-во, вообщем и целом это список подписок к оплате.
Оплата подписок
В комплекте сниппет для оплаты подписок — [psBuy]. C его помощью можно вывести профиль покупателя и совершить покупку.
Уведомления при покупке
В настройках [Minishop2] необходимо создать отдельный стутус для покупки подписок. Соответственно весь механизм уведомления при покупке родной от [Minishop2]. Средства с личного счета
[msProfile] списываются при покупке и отображаются в родном табе [msProfile].
Подписка пользователя в админке
Выбираете пользователя, выбираете нужное кол-во дней. Подписка в админке немного отличается от подписки пользователем самостоятельно.
Во первых при подписке можно указать любое кол-во дней, независимо от срока указанного в параметрах подписки, а так же средства со счета пользователя не снимаются. То есть пользователь получает доступ к ресурсам минуя покупку.
Окончание срока подписки
Для перевода просроченных подписок в неактивное состояние в комплекте скрипт для cron.
При запуске выбирает просроченные подписки и ставит статус — неактивна. Так же одновременно формирует список писем пользователям и указанным менеджерам об окончании подписки.
Для рассылки писем из очереди тоже имеется скрипт для cron.
ps. Возможно что то еще не описал… Есть вопросы и тд — спрашивайте пожалуйста.
pps. При создании пакета источником вдохновения для меня был и есть репо Василия. Спасибо тебе огромное.
Кстати все сниппеты написаны с использованием [pdoTools].
И отдельное спасибо за помощь при создании пакета и покорение ExtJs хотел бы выразить Льву Вербицкому. Спасибо тебе огромное за помощь!!!
Поблагодарить автора
Отправить деньги
Комментарии: 60
Чтобы пользоваться, должен быть установлен Minishop2?
пока да… Minishop2 в целом для оплаты и лога покупок. Мне кажется это вполне разумным, там множество на данный момент способов оплаты и удобная админка. Он бесплатен! Почему этими удобствами не пользоваться?
Вообщем пока да, должен быть установлен Minishop2.
Вообщем пока да, должен быть установлен Minishop2.
Тогда последний вопрос, ориентировочная стоимость пакета? и когда его можно будет пощупать?
<=1 000. В начале недели.
Вопрос, а с помощью этого пакета возможно реализовать следующее:
Нужно сделать, чтобы пользователь в определенном разделе, при наличии подписки мог создавать ресурсы.
Нужно сделать, чтобы пользователь в определенном разделе, при наличии подписки мог создавать ресурсы.
делайте чтоб он вообще мог что то создавать, а потом банальная проверка на подписку. Есть — разрешаете создать, нет — не разрешаете создать…
Класс, жду.
Удалось создать какое-то рабоче решение проверки на подписку? Или вопрос неактуален за давностью лет?
можно таким образом gist.github.com/vgrish/97db0f633e9bbe390f367ea148dfa0b3
Спасибо) К сожалению, не совсем понял суть того, что именно делает сниппет. Применение как модификатора, что именно покажет? То есть при вызове конструкции:
[[*pagetitle:psCheck=`resource=15,6&active=1`]]
будет проверена активность подписки на ресурсы 15 и 6. При выполнении условий будет выведено значение pagetitle. Я правильно понял? Кажется, я запутался)
Дополнение в Магазине: store.simpledream.ru/packages/ecommerce/payandsee.html
чувак, не представляешь как это вовремя, как рас скоро будет проект в котором нужны платные разделы, уже иду покупать, есть пожелание чтобы можно было работать и без minishop2, но пока не обязательно, спасибо, правда большое спасибо!
Владимир, а можно создавать подписки не ограниченные по времени? Один раз подписался и пользуешься всегда, если авторизован.
Возможно неявно описал, но настройка авторизованным так и работает.
То есть если у подписки выставлен параметр авторизованным — ДА то покупать ничего не нужно, подписка доступна всем авторизованным пользователям в течении неограниченного времени.
Ps. Пока так, была мысль еще сделать проверку по группам пользователей…
То есть если у подписки выставлен параметр авторизованным — ДА то покупать ничего не нужно, подписка доступна всем авторизованным пользователям в течении неограниченного времени.
Ps. Пока так, была мысль еще сделать проверку по группам пользователей…
Понял, спасибо за ответ. В данном случае, конечно, интересна подписка по группам. Есть «все пользователи», а есть «доступ к подписке навсегда» и «доступ на такой-то срок».
опиши подробнее если можешь…
Можно ли сделать подписку не по количеству дней, а по количеству ресурсов? К примеру, человек подписывается на 10 публикаций, и с выходом очередной платной публикации, соответственно, кол-во оплаченных уменьшается.
И ещё вытекающий вопрос – есть ли способ оповещения о скором окончании подписки, например, когда осталось 3 публикации, 1 публикация?
Есть ещё один момент, но об этом наверное уже после покупки дополнения.
И ещё вытекающий вопрос – есть ли способ оповещения о скором окончании подписки, например, когда осталось 3 публикации, 1 публикация?
Есть ещё один момент, но об этом наверное уже после покупки дополнения.
а как сделать проверку, что если пользователь оплатил подписку то делать редирект на страницу оплаченную
и вывести активные подписки у конкретного пользователя
и вывести активные подписки у конкретного пользователя
Вы имеете в виду, чтобы пользователь не покупал дважды одну подписку? Если да, то меня тоже этот вопрос интересует.
p.s. неплохо бы сделать демо на modhost, т.к. дополнение довольно сложное и хотелось бы посмотреть не по картинкам.
p.s. неплохо бы сделать демо на modhost, т.к. дополнение довольно сложное и хотелось бы посмотреть не по картинкам.
и это тоже)
но мне просто надо по id пользователя вывести его подписки активные сейчас.
и если он имеет расширенную подписку, делать редирект на закрытый ресурс
но мне просто надо по id пользователя вывести его подписки активные сейчас.
и если он имеет расширенную подписку, делать редирект на закрытый ресурс
При клике на кнопку «добавить в подписки» ничего не происходит, а в консоли показывает такую ошибку (см. скрин). Подскажите, пожалуйста, что эта ошибка может означать и как ее устранить. Спасибо.
Добрый день. Сначала настроила вывод обычных товаров и их добавление в корзину. Затем, когда корзина обновляется при помощи msMiniCartDynamic заменила вызов на psSubscription.
При нажатии появляется зеленый попур о том, что все ок.
В js msMiniCartDynamic поменяла cart/add на pssubscription/add.
Но
При нажатии появляется зеленый попур о том, что все ок.
В js msMiniCartDynamic поменяла cart/add на pssubscription/add.
Но
[[!msMiniCart?]]
(даже стандартный, без внутреннего[[!msMiniCartDynamic?]]
Не пополняется новой строкой о товаре в корзине. Ошибок в консоли нет. Может есть боевой пример где-нибудь на демо сайте, чтобы глянуть?
Добрый вечер.
Не пополняется новой строкой о товаре в корзине.потому как подписка не является товаром.
Мг, а как Вы подсвечиваете, что пора переходить к оплате? Появляющейся ссылкой может где?
А пошаговой документации точно нигде нет? Застопорилась. Указала ресурсу, что он закрытый, страница 403 в настройках указана (опять же, 403 страница везде одна? в системных настройках, в минишопе и payandsee? но ведь на ней в трех этих местах показывать желательно разные данные, ну да ладно...), а страница в режиме инкогнито на месте… С минишоп и офис сложностей не возникло, там все по шагам описано. А вот на подписках застряла. Даже сниппеты не нашла с параметрами docs.modx.pro/components/payandsee, чтобы понимать алгоритмы…
Володя привет, перестало работать продление подписки!
Добрый день, а вот не могу понять, У пользователей есть личный кабинет через Office, они там регистрируются, а как связать msprofile + подписки на страницы.
Сейчас нет компонента в магазине.
По ссылке: modstore.pro/packages/ecommerce/payandsee — главная открывается.
Он убран из магазина или это ошибка?
По ссылке: modstore.pro/packages/ecommerce/payandsee — главная открывается.
Он убран из магазина или это ошибка?
Убран, морально устарел.
Будет выпущена новая версия к концу августа.
Будет выпущена новая версия к концу августа.
Спасибо. Буду ждать.
Вольдь. а подскажи пожалуйста, обратная совместимость у нового PayAndSee со старым будет?
А то, вот, буквально недавно решил реанимировать один проектик с платными подписками и как раз PayAndSee на черновик установил (успел), он еще был в репозитарии.
Т.е. вопрос, в том, делать на старом или лучше подождать нового?
А то, вот, буквально недавно решил реанимировать один проектик с платными подписками и как раз PayAndSee на черновик установил (успел), он еще был в репозитарии.
Т.е. вопрос, в том, делать на старом или лучше подождать нового?
Вольдь. а подскажи пожалуйста, обратная совместимость у нового PayAndSee со старым будет?
сомневаюсь…
Т.е. вопрос, в том, делать на старом или лучше подождать нового?подождать нового.
Ага, понял, спасибо!
Доброго дня!
Ненавязчиво поинтересуюсь о новой версии PayAndSee
Ненавязчиво поинтересуюсь о новой версии PayAndSee
Привет.
Зачатки документации можно увидеть тут docs.modx.pro/components/payandsee/
Функционал пока не обкатан, если есть проект где можно внедрить и опробовать данный функционал напиши в личку.
Спасибо!
Зачатки документации можно увидеть тут docs.modx.pro/components/payandsee/
Функционал пока не обкатан, если есть проект где можно внедрить и опробовать данный функционал напиши в личку.
Спасибо!
Спасибо, сейчас попробую срочно из состояния черновика проект развернуть.
Да спешка ни к чему.
Как соберешься так и пиши)
Как соберешься так и пиши)
Доступен демо сайт pas.vgrish.ru/
там можно авторизоваться и пощелкать что к чему
там можно авторизоваться и пощелкать что к чему
Спасибо, посмотрел. Подписка гибкая.
Подписка возможна только на ресурс, товар или тикет, так же? Т.е. если сайт «классически» мультиязычный (контексты) то ресурсы на разных языках в разных контекстах могут быть подписками независимо друг от друга или один может быть подпиской, а второй в открытом доступе. А если сайт сделать на Локализаторе, отдельные поля закрывать подпиской можно? (вот я размечтался-то)
Подписка возможна только на ресурс, товар или тикет, так же? Т.е. если сайт «классически» мультиязычный (контексты) то ресурсы на разных языках в разных контекстах могут быть подписками независимо друг от друга или один может быть подпиской, а второй в открытом доступе. А если сайт сделать на Локализаторе, отдельные поля закрывать подпиской можно? (вот я размечтался-то)
PS вижу в шаблоне модификатор
{$_modx->resource.content|pasraccess:('pas.content'|snippet:['resource'=>''])}
Любое поле так можно модификатором закрыть подпиской? Подписка возможна только на ресурс, товар или тикет, так же?на любой ресурс. В демо есть подписка для товара, тикета, обычного ресурса.
отдельные поля закрывать подпиской можно?да можно, docs.modx.pro/components/payandsee/quick-start#Доступ
Доброго
Пока до обновления компонента руки не дошли… есть вопросик.
Как можно на старой версии дать бесплатный месяц подписки к контенту вновь зарегистрировавшимся??
Как можно на старой версии дать бесплатный месяц подписки к контенту вновь зарегистрировавшимся??
к какому конкретно контенту? всему? то это только если плагин на сохранение пользователя, смотрим что пользователь новый, получаем массив контента и проходимся по нему добавляя подписки.
Кароч гемор.
Кароч гемор.
Суть такая… пользователь регистрируется через [[!officeAuth? &groups=`Users`]] и имеется одна подписка на скрытые ресурсы вот и к ней нужно дать допуск на месяц. Вот хотелось бы понять че где дописывать. Думал что где-то в таблицу нужно дописать startdate и stopdate.
есть метод SubscriptionAppend
$payandsee = $modx->getService('payandsee');
$payandsee->SubscriptionAppend($resource_id, $user_id, $period = 30, 1)
Благодарю! Попробую
Не знаю на сколько адекватен код для плагина но он работает!
Добавляя бесплатную подписку на скрытые ресурсы на месяц
Добавляя бесплатную подписку на скрытые ресурсы на месяц
<?php
$resource_id = 25;
$user_id = $modx->user->get('id');
switch ($modx->event->name) {
case 'OnUserFormSave': // Событие после регистрации пользователя
// Здесь мы добавляем подписку на месяц
$payandsee = $modx->getService('payandsee');
$payandsee->SubscriptionAppend($resource_id, $user_id, $period = 30, 1);
break;
}
Если код плагина один в один с оригиналом то у тебя будет добавляться подписка каждый раз при сохранении пользователя. И надо добавить проверку на нового.
Точна! Об этом не подумал… Посмотрел как реализовано в плагине officeAuth и сделал так же.
<?php
switch ($modx->event->name) {
// Срабатывает после того как пользователь сохранен.
case 'OnUserSave':
if (!empty($user) && !empty($mode) && $mode == 'new') {
if (!$user->get('remote_key')) {
$user->set('remote_key', $user->get('id'));
$user->save();
// вытаскиваем id юзера
$user_id = $user->get('id');
$resource_id = 25;
// Здесь мы добавляем подписку на месяц
$payandsee = $modx->getService('payandsee');
$payandsee->SubscriptionAppend($resource_id, $user_id, $period = 30, 1);
}
}
break;
}
День добрый Владимир! Пытаясь добавить подписку на месяц при регистрации где то кривого кода написал и в таблице
modx_paysee_resource_user_list
создалось много дублей. О чем Вы писали выше. Можно ли одним SQL запросом удалить дубли? И появился ли какой то гайд о перезде со старого компонента на новый?
modx_paysee_resource_user_list
создалось много дублей. О чем Вы писали выше. Можно ли одним SQL запросом удалить дубли? И появился ли какой то гайд о перезде со старого компонента на новый?
Добрый день.
Можно ли одним SQL запросом удалить дубли?написать какой то код, у меня нет готового решения. Если дублей немного — почистите руками.
И появился ли какой то гайд о перезде со старого компонента на новый?нет, не появился.
Если кому то понадобится такой запрос вроде срабатывает.
ALTER IGNORE TABLE modx_paysee_resource_user_list ADD UNIQUE KEY(user_id);
День добрый Володя! возможно ли в Вашем компоненте давать доступ к скрытым ресурсам всем залогиненым пользователям но не имеющим подписку (на 10 мин например) потом скрывать. Думаю по идее это не сложно как то реализовать через сессию?
У данного модуля есть автоматическое продление? что бы деньги автоматом снимались?
Нет. Автоматического списания денежных средств в счет продления подписки нет.
Можно настроить оповещение на окончание подписки и оповестить пользователя о необходимости продлить подписку.
Можно настроить оповещение на окончание подписки и оповестить пользователя о необходимости продлить подписку.
поможет ли данный модуль в реализации следующей задачи: при покупке товара открыть доступ к контенту на другой текстовой странице этого сайта?
Добрый день! @Володя, подскажите, пожалуйста. Я в системных настройках minishop2 (по ключу ms2_order_user_groups) поставил при покупке регистрацию пользователей в группы 3, 4. Прописывать названия групп полностью тоже пробовал (users и member) в моем случае.
Но при оформлении подписки через PayAndSee не происходит добавления в группы. Не подскажите, как исправить? Хочу добавлять пользователей в нужные группы, в которых установлю их права.
Но при оформлении подписки через PayAndSee не происходит добавления в группы. Не подскажите, как исправить? Хочу добавлять пользователей в нужные группы, в которых установлю их права.
Нашел как сделать. Извините, что невнимательно изучил.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.