/**
  * Resource methods
  */
 public function post()
 {
     // Just a dummy redirect to prevent errors in checkout/reward/reward.
     $this->request->post['redirect'] = 'checkout/cart';
     $data = parent::getInternalRouteData('checkout/reward/reward', true);
     ApiException::evaluateErrors($data);
 }
 /**
  * Resource methods
  */
 public function get($id = NULL)
 {
     $this->setRequestParams();
     $data = parent::getInternalRouteData('product/special');
     $products = array('products' => $this->getProducts($data));
     $this->response->setOutput($products);
 }
 /**
  * Resource methods
  */
 public function get($id = NULL)
 {
     $this->url->addCatalogLink('account/download/download');
     $data = parent::getInternalRouteData('account/download');
     $downloads = array('downloads' => $this->getDownloads($data));
     $this->response->setOutput($downloads);
 }
 /**
  * Resource methods
  */
 public function get()
 {
     $data = parent::getInternalRouteData('checkout/cart');
     ApiException::evaluateErrors($data, false);
     $cart = array('cart' => $this->getCart($data));
     $this->response->setOutput($cart);
 }
 public function getReorder($id = NULL)
 {
     if ($id != NULL) {
         $this->request->get['order_id'] = $id;
         $data = parent::getInternalRouteData('account/order/reorder');
     }
 }
 /**
  * Resource methods
  */
 public function put($id = NULL)
 {
     $this->request->convertBoolToYesNoRadioValue('newsletter');
     $this->request->server['REQUEST_METHOD'] = 'POST';
     $data = parent::getInternalRouteData('account/newsletter');
     ApiException::evaluateErrors($data);
 }
 /**
  * Resource methods
  */
 public function post()
 {
     $this->request->setDefaultParameters($this->defaultParameters);
     $this->request->convertBoolToCheckbox('agree');
     $this->request->convertBoolToYesNoRadioValue('newsletter');
     $data = parent::getInternalRouteData('account/register');
     ApiException::evaluateErrors($data);
 }
 public function delete($id = NULL)
 {
     if ($id !== NULL) {
         $this->request->get['remove'] = $id;
     }
     $data = parent::getInternalRouteData('account/wishlist');
     ApiException::evaluateErrors($data);
 }
 public function post()
 {
     $this->request->setDefaultParameters($this->defaultParameters);
     $data = parent::getInternalRouteData('checkout/shipping_method/save', true);
     if (isset($data['redirect'])) {
         $this->redirect($data['redirect']);
     }
     ApiException::evaluateErrors($data);
 }
 public function put()
 {
     $this->request->setDefaultParameters($this->defaultParameters);
     $this->request->server['REQUEST_METHOD'] = 'POST';
     $data = parent::getInternalRouteData('account/edit');
     ApiException::evaluateErrors($data);
     $account = array('account' => $this->getAccount($data));
     $this->response->setOutput($account);
 }
 /**
  * Resource methods
  */
 public function get()
 {
     $data = parent::getInternalRouteData('checkout/confirm');
     if (isset($data['redirect'])) {
         $this->redirect($data['redirect']);
     }
     ApiException::evaluateErrors($data);
     $order = array('order' => $this->getOrder($data));
     $this->response->setOutput($order);
 }
 /**
  * Resource methods
  */
 public function post()
 {
     $this->request->setDefaultParameters($this->defaultParameters);
     $this->request->convertBoolToCheckbox('shipping_address');
     $data = parent::getInternalRouteData('checkout/guest/save', true);
     if (isset($data['redirect'])) {
         $this->redirect($data['redirect']);
     }
     ApiException::evaluateErrors($data);
 }
 /**
  * Resource methods
  */
 public function post()
 {
     // Validate if customer is logged in. This is needed because in the parent::validate the checkout/checkout route serves two purposes.
     if (!$this->customer->isLogged()) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_USER_NOT_LOGGED_IN, ErrorCodes::getMessage(ErrorCodes::ERRORCODE_USER_NOT_LOGGED_IN));
     }
     $this->request->setDefaultParameters($this->defaultParameters);
     $data = parent::getInternalRouteData('checkout/shipping_address/save', true);
     if (isset($data['redirect'])) {
         $this->redirect($data['redirect']);
     }
     ApiException::evaluateErrors($data);
 }
 protected function getVendorProducts($id)
 {
     $this->setRequestParams($id);
     $data = parent::getInternalRouteData('product/vendor/info');
     if (isset($data['text_error'])) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_NOT_FOUND, ErrorCodes::ERRORCODE_VENDOR_NOT_FOUND, $data['text_error']);
     }
     $products = $data['products'];
     foreach ($products as &$product) {
         $product = $this->processProduct($product);
     }
     return $products;
 }
 /**
  * Resource methods
  */
 public function get($id = NULL)
 {
     if ($id != NULL) {
         $this->request->get['manufacturer_id'] = $id;
         $this->setRequestParams();
         $data = parent::getInternalRouteData('product/manufacturer/info');
         if (isset($data['text_error'])) {
             throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_NOT_FOUND, ErrorCodes::ERRORCODE_MANUFACTURER_NOT_FOUND, $data['text_error']);
         }
         $manufacturer = array('manufacturer' => $this->getManufacturer($id, $data));
         $this->response->setOutput($manufacturer);
     } else {
         $manufacturers = array('manufacturers' => $this->getManufacturers());
         $this->response->setOutput($manufacturers);
     }
 }
 /**
  * Resource methods
  */
 public function get($id = NULL)
 {
     if ($id != NULL) {
         $this->request->get['path'] = $id;
         $this->setRequestParams();
         $data = parent::getInternalRouteData('product/category');
         if (isset($data['text_error'])) {
             throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_NOT_FOUND, ErrorCodes::ERRORCODE_CATEGORY_NOT_FOUND, $data['text_error']);
         }
         $category = array('category' => $this->getCategory($id, $data));
         $this->response->setOutput($category);
     } else {
         $categories = array('categories' => $this->getCategories());
         $this->response->setOutput($categories);
     }
 }
 public function getRecurringDescription($id = NULL)
 {
     $this->request->post['product_id'] = $id;
     $this->request->post['recurring_id'] = $this->request->get['recurring_id'];
     if (isset($this->request->get['quantity'])) {
         $this->request->post['quantity'] = $this->request->get['quantity'];
     }
     $data = parent::getInternalRouteData('product/product/getRecurringDescription', true);
     ApiException::evaluateErrors($data);
     if (isset($data['success'])) {
         $product = array('recurring_description' => $data['success']);
         $this->response->setOutput($product);
     } else {
         // No description found.
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_NOT_FOUND, ErrorCodes::ERRORCODE_RECURRING_DESCRIPTION_NOT_FOUND, ErrorCodes::getMessage(ErrorCodes::ERRORCODE_RECURRING_DESCRIPTION_NOT_FOUND));
     }
 }
 /**
  * Resource methods
  */
 public function get()
 {
     parent::getInternalRouteData('checkout/success');
     unset($this->session->data['autosubmit']);
 }
 public function post()
 {
     parent::getInternalRouteData('common/currency/currency');
 }
 /**
  * Resource methods
  */
 public function get($id = NULL)
 {
     $data = parent::getInternalRouteData('account/logout');
     ApiException::evaluateErrors($data);
 }
Example #21
0
 public function handleRegistration()
 {
     $this->load->model('account/signup');
     $data = array();
     $data['username'] = $this->request->post['username'];
     $data['password'] = $this->request->post['password'];
     $data['firstname'] = $this->request->post['firstname'];
     $data['lastname'] = $this->request->post['lastname'];
     $data['email'] = $this->request->post['email'];
     if (!isset($data['confirm'])) {
         //we expect to handle password confirmation check on the client side
         $this->request->post['confirm'] = $this->request->post['password'];
     }
     if (!isset($this->request->post['singup_plan'])) {
         $this->request->post['singup_plan'] = '1::1:';
     }
     if (!isset($this->request->post['iban'])) {
         $this->request->post['iban'] = '';
     }
     if (!isset($this->request->post['swift_bic'])) {
         $this->request->post['swift_bic'] = '';
     }
     if (!isset($this->request->post['bank_name'])) {
         $this->request->post['bank_name'] = '';
     }
     if (!isset($this->request->post['bank_address'])) {
         $this->request->post['bank_address'] = '';
     }
     if (!isset($this->request->post['fax'])) {
         $this->request->post['fax'] = '';
     }
     if (!isset($this->request->post['paypal'])) {
         $this->request->post['paypal'] = '';
     }
     if (!isset($this->request->post['tax_id'])) {
         $this->request->post['tax_id'] = '';
     }
     if (!isset($this->request->post['store_url'])) {
         $this->request->post['store_url'] = '';
     }
     if (!isset($this->request->post['company_id'])) {
         $this->request->post['company_id'] = '';
     }
     if (!isset($this->request->post['store_description'])) {
         $this->request->post['store_description'] = '';
     }
     if (!isset($this->request->post['hsignup_plan'])) {
         $this->request->post['hsignup_plan'] = '';
     }
     if (!isset($this->request->post['telephone'])) {
         $this->request->post['telephone'] = '';
     }
     if (!isset($this->request->post['address_1'])) {
         $this->request->post['address_1'] = '';
     }
     if (!isset($this->request->post['address_2'])) {
         $this->request->post['address_2'] = '';
     }
     if (!isset($this->request->post['city'])) {
         $this->request->post['city'] = '';
     }
     if (!isset($this->request->post['postcode'])) {
         $this->request->post['postcode'] = '';
     }
     if (!isset($this->request->post['country_id'])) {
         $this->request->post['country_id'] = '';
     }
     if (!isset($this->request->post['zone_id'])) {
         $this->request->post['zone_id'] = '';
     }
     if (!isset($this->request->post['company'])) {
         $this->request->post['company'] = $data['firstname'] . ' ' . $data['lastname'];
     }
     $data = parent::getInternalRouteData('account/signup/index');
     if ('' != $data['error_warning']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_warning']);
     }
     if ('' != $data['error_username']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_username']);
     }
     if ('' != $data['error_firstname']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_firstname']);
     }
     if ('' != $data['error_lastname']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_lastname']);
     }
     if ('' != $data['error_email']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_email']);
     }
     if ('' != $data['error_paypal']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_paypal']);
     }
     if ('' != $data['error_telephone']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_telephone']);
     }
     if ('' != $data['error_password']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_password']);
     }
     if ('' != $data['error_address_1']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_address_1']);
     }
     if ('' != $data['error_city']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_city']);
     }
     if ('' != $data['error_company']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_company']);
     }
     if ('' != $data['error_postcode']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_postcode']);
     }
     if ('' != $data['error_country']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_country']);
     }
     if ('' != $data['error_zone']) {
         throw new ApiException(ApiResponse::HTTP_RESPONSE_CODE_BAD_REQUEST, ErrorCodes::ERRORCODE_BAD_PARAMETER, $data['error_zone']);
     }
 }
 /**
  * Resource methods
  */
 public function post()
 {
     $data = parent::getInternalRouteData('checkout/voucher/voucher', true);
     ApiException::evaluateErrors($data);
 }
 public function delete($id = NULL)
 {
     if ($id !== NULL) {
         $this->request->get['address_id'] = $id;
     }
     $data = parent::getInternalRouteData('account/address/delete');
     ApiException::evaluateErrors($data);
 }
 /**
  * Resource methods
  */
 public function post()
 {
     $data = parent::getInternalRouteData('account/forgotten');
     ApiException::evaluateErrors($data);
 }
 public function post()
 {
     parent::getInternalRouteData('common/language/language');
 }