xaker01
Проверенные
- Сообщения
- 256
- Реакции
- 198
- Баллы
- 11,045
Не давно столкнулся с задачей, что бы было повышение прав при оплате $name платежной системой через внешний скрипт.
В документации функция дана, но не все точно описано. Дополню из личного опыта
Сама функция для этого дела
Вроде бы все хорошо, но переменная $upgrade является массивом. и что в ней должно быть неизвестно.
Путем отладки определяем что.
Дальше вызываем все что нам надо для работы функции
как всегда говорю скрипт не идеален, но надеюсь смог помочь с данной проблемой у кого могла она возникнуть
В документации функция дана, но не все точно описано. Дополню из личного опыта
Сама функция для этого дела
PHP:
$userModel->upgradeUser($userId,$upgrade, $allowInsertUnpurchasable,$endDate);
Путем отладки определяем что.
PHP:
$userId = "id пользователя которого повышаем";
$upgrade['user_upgrade_id'] = "id услуги в повышениях прав";
$upgrade['extra_group_ids'] = "до какой группы повышаем" ;
$upgrade['cost_amount']="сколько денег заплатили" ;
$upgrade['cost_currency']="валюта" ;
$upgrade['length_unit']= 'день/месяц/год';
$upgrade['length_amount']= 'сумма длины';//сам не знаю что это такое но роли не играет
$upgrade['can_purchase']= "тоже не знаю что это, передаем пустой или с любым текстом";
Дальше вызываем все что нам надо для работы функции
PHP:
require( XF_ROOT . '/library/XenForo/Autoloader.php' );
XenForo_Autoloader::getInstance()->setupAutoloader($fileDir . '/library');
XenForo_Application::initialize($fileDir . '/library', $fileDir);
$userModel = XenForo_Model_UserUpgrade::create('XenForo_Model_UserUpgrade');
$response = $userModel->upgradeUser($userId,$upgrade, $allowInsertUnpurchasable,$endDate);//а тут уже и повышаем права
как всегда говорю скрипт не идеален, но надеюсь смог помочь с данной проблемой у кого могла она возникнуть