/** * Payment deatails and paypal configuration can be configured here * @return [view] Renders view with form inputs */ public function action_payment() { // validation active //$this->template->scripts['footer'][]= '/js/oc-panel/settings.js'; Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Payments'))); $this->template->title = __('Payments'); // all form config values $paymentconf = new Model_Config(); $config = $paymentconf->where('group_name', '=', 'payment')->find_all(); $paypal_currency = Paypal::get_currency(); // currencies limited by paypal // save only changed values if ($this->request->post()) { $validation = Validation::factory($this->request->post())->rule('sandbox', 'range', array(':value', 0, 1))->rule('authorize_sandbox', 'range', array(':value', 0, 1))->rule('stripe_address', 'range', array(':value', 0, 1)); if ($validation->check()) { foreach ($config as $c) { $config_res = $this->request->post($c->config_key); if ($c->config_key == 'paypal_currency') { $config_res = $paypal_currency[core::post('paypal_currency')]; } if ($config_res != $c->config_value) { $c->config_value = $config_res; try { $c->save(); } catch (Exception $e) { echo $e; } } } } else { $errors = $validation->errors('config'); foreach ($errors as $error) { Alert::set(Alert::ALERT, $error); } $this->redirect(Route::url('oc-panel', array('controller' => 'settings', 'action' => 'payment'))); } Alert::set(Alert::SUCCESS, __('Payment Configuration updated')); $this->redirect(Route::url('oc-panel', array('controller' => 'settings', 'action' => 'payment'))); } $pages = array('' => __('Deactivated')); foreach (Model_Content::get_pages() as $key => $value) { $pages[$value->seotitle] = $value->title; } $this->template->content = View::factory('oc-panel/pages/settings/payment', array('config' => $config, 'pages' => $pages, 'paypal_currency' => $paypal_currency)); }
/** * Payment deatails and paypal configuration can be configured here * @return [view] Renders view with form inputs */ public function action_payment() { // validation active //$this->template->scripts['footer'][]= '/js/oc-panel/settings.js'; Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Payments'))); $this->template->title = __('Payments'); // all form config values $paymentconf = new Model_Config(); $config = $paymentconf->where('group_name', '=', 'payment')->find_all(); $paypal_currency = Paypal::get_currency(); // currencies limited by paypal // save only changed values if ($this->request->post()) { foreach ($config as $c) { $config_res = $this->request->post($c->config_key); if ($c->config_key == 'paypal_currency') { $config_res = $paypal_currency[core::post('paypal_currency')]; } if ($config_res != $c->config_value) { $c->config_value = $config_res; try { $c->save(); } catch (Exception $e) { echo $e; } } } Alert::set(Alert::SUCCESS, __('General Configuration updated')); $this->request->redirect(Route::url('oc-panel', array('controller' => 'settings', 'action' => 'payment'))); } $this->template->content = View::factory('oc-panel/pages/settings/payment', array('config' => $config, 'paypal_currency' => $paypal_currency)); }