Exemple #1
0
 public function pay_membershipAction()
 {
     $this->noViewRenderer(true);
     $request = $this->getRequest();
     if (!JO_Session::get('user_id')) {
         JO_Session::set('msg_error', $this->translate('You must be logged to change your profile'));
         $this->redirect(WM_Router::create($request->getBaseUrl() . '?controller=users&action=login'));
     }
     if ($request->issetPost('item_id')) {
         if ($request->getPost('licence') == 'personal') {
             $item = Model_Items::get($request->getPost('item_id'));
             $downloads = Model_Membership::getByUser(JO_Session::get('user_id'));
             if (!$downloads) {
                 JO_Session::set('msg_error', $this->translate('Your membership download quota has been exhausted.'));
                 $this->redirect(WM_Router::create($request->getBaseUrl() . '?controller=users&action=membership'));
             } else {
                 Model_Orders::buy($item, $item['price']);
                 Model_Membership::buy(JO_Session::get('user_id'));
                 JO_Session::set('msg_success', $this->translate('You have successfully bought this item.'));
                 $this->redirect(WM_Router::create($request->getBaseUrl() . '?controller=users&action=downloads'));
             }
         } elseif ($request->getPost('licence') == 'extended') {
             JO_Session::set('msg_error', $this->translate('Membership customers can only purchase items with personal license.'));
         }
     }
     $this->redirect($request->getServer('HTTP_REFERER'));
 }