Exemplo n.º 1
0
 function plgVmOnSelfCallFE($type, $name, &$render)
 {
     //Klarna Ajax
     require JPATH_VMKLARNAPLUGIN . '/klarna/helpers/klarna_ajax.php';
     if (!class_exists('VmModel')) {
         require JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'vmmodel.php';
     }
     $model = VmModel::getModel('paymentmethod');
     $payment = $model->getPayment();
     if (!class_exists('vmParameters')) {
         require JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'parameterparser.php';
     }
     $parameters = new vmParameters($payment, $payment->payment_element, 'plugin', 'vmpayment');
     $method = $parameters->getParamByName('data');
     $country = JRequest::getWord('country');
     $country = KlarnaHandler::convertToThreeLetterCode($country);
     if (!class_exists('klarna_virtuemart')) {
         require JPATH_VMKLARNAPLUGIN . '/klarna/helpers/klarna_virtuemart.php';
     }
     $settings = KlarnaHandler::getCountryData($method, $country);
     $klarna = new Klarna_virtuemart();
     $klarna->config($settings['eid'], $settings['secret'], $settings['country'], $settings['language'], $settings['currency'], KlarnaHandler::getKlarnaMode($method), VMKLARNA_PC_TYPE, KlarnaHandler::getKlarna_pc_type(), true);
     $SelfCall = new KlarnaAjax($klarna, (int) $settings['eid'], JPATH_VMKLARNAPLUGIN, Juri::base());
     $action = JRequest::getWord('action');
     $jlang = JFactory::getLanguage();
     $currentLang = substr($jlang->getDefault(), 0, 2);
     $newIso = JRequest::getWord('newIso');
     if ($currentLang != $newIso) {
         $iso = array("sv" => "sv-SE", "da" => "da-DK", "en" => "en-GB", "de" => "de-DE", "nl" => "nl-NL", "nb" => "nb-NO", "fi" => "fi-FI");
         if (array_key_exists($newIso, $iso)) {
             $jlang->load('plg_vmpayment_klarna', JPATH_ADMINISTRATOR, $iso[$newIso], true);
         }
     }
     echo $SelfCall->{$action}();
     jexit();
 }