Example #1
0
 function getShipping(&$ref, &$cart, $ajax = false)
 {
     if (empty($cart)) {
         if (!empty($ref->cart)) {
             $cart =& $ref->cart;
         } else {
             $cart = VirtueMartCart::getCart(false, false);
         }
     }
     include JPATH_ROOT . DS . 'components' . DS . 'com_onepage' . DS . 'config' . DS . 'onepage.cfg.php';
     $cmd = JRequest::getVar('cmd', false);
     //$methods = OPCloader::getPluginMethods();
     if (!$ajax) {
         if (!class_exists('vmPSPlugin')) {
             require JPATH_VM_PLUGINS . DS . 'vmpsplugin.php';
         }
         JPluginHelper::importPlugin('vmpayment');
         $dispatcher = JDispatcher::getInstance();
         if (!isset($cart)) {
             $cart = VirtueMartCart::getCart();
         }
         $plugins = array();
         $html = '';
         $results = $dispatcher->trigger('loadPluginJavascriptOPC', array(&$cart, &$plugins, &$html));
         //include(JPATH_SITE.DS.'components'.DS.'com_onepage'.DS.'helpers'.DS.'third_party'.DS.'third_party_shipping_javascript.php');
         if (!empty($html)) {
             OPCloader::$extrahtml .= $html;
         }
         unset($html);
         // so we don't update the address twice
         require_once JPATH_SITE . DS . 'components' . DS . 'com_onepage' . DS . 'controllers' . DS . 'opc.php';
         $c = new VirtueMartControllerOpc();
         $c->setAddress($cart, true, false, true);
     }
     if ($cmd != 'customershipping' && $cmd != 'runpay') {
         if (!empty($op_customer_shipping)) {
             $onclick = 'onclick="javascript: return Onepage.op_runSS(null, false, true, \'customershipping\');" ';
             $html = $this->fetch($ref, 'customer_shipping', array('onclick' => $onclick));
             if (empty($html)) {
                 $html = '<a href="#" ' . $onclick . '  >' . OPClang::_('COM_ONEPAGE_CLICK_HERE_TO_DISPLAY_SHIPPING') . '</a>';
             }
             $html .= '<input type="hidden" name="invalid_country" id="invalid_country" value="invalid_country" /><input type="hidden" name="virtuemart_shipmentmethod_id" checked="checked" id="shipment_id_0" value="choose_shipping" />';
             $shipping_choose_html = '<div id="customer_shipping_wrapper">' . $html . '</div>';
             $shipping_choose_html_a = array();
             $shipping_choose_html_a[] = $shipping_choose_html;
         }
     }
     require_once JPATH_SITE . DS . 'components' . DS . 'com_onepage' . DS . 'helpers' . DS . 'ajaxhelper.php';
     $bhelper = new basketHelper();
     if (!isset($shipping_choose_html_a)) {
         $sh = $bhelper->getShippingArrayHtml($ref, $cart, $ajax);
     } else {
         $sh = $shipping_choose_html_a;
     }
     if (empty($cart) || empty($cart->products)) {
         $op_disable_shipping = OPCloader::getShippingEnabled($cart);
         if (empty($op_disable_shipping)) {
             $html = '<input type="hidden" name="invalid_country" id="invalid_country" value="invalid_country" /><input type="hidden" name="virtuemart_shipmentmethod_id" checked="checked" id="shipment_id_0" value="choose_shipping" />';
         }
         $html .= '<div style="color: red; font-weight: bold;">' . OPCLang::_('COM_VIRTUEMART_EMPTY_CART') . '</div>';
         $sh = array($html);
     }
     if (!empty($disable_payment_per_shipping)) {
         $session = JFactory::getSession();
         $dpps = array();
         require_once JPATH_ROOT . DS . 'components' . DS . 'com_onepage' . DS . 'helpers' . DS . 'transform.php';
         foreach ($sh as $k => $cs) {
             foreach ($dpps_search as $key => $val) {
                 // if we find the need in the shipping, let's associate it with an id
                 $val = urldecode($val);
                 if (strpos($cs, $val) !== false) {
                     //if (!empty($dpps[$key])) continue;
                     $id = OPCTransform::getFT($cs, 'input', 'virtuemart_shipmentmethod_id', 'name', 'virtuemart_shipmentmethod_id', '>', 'value');
                     if (is_array($id)) {
                         $id = reset($id);
                     }
                     if (empty($dpps[$key])) {
                         $dpps[$key] = array();
                     }
                     $dpps[$key][] = $id;
                 }
             }
         }
         $session->set('dpps', $dpps);
     }
     if ($cart->pricesUnformatted['billTotal'] && empty($cart->pricesUnformatted['billTotal'])) {
         $ph = array();
     } else {
         $ph = $bhelper->getPaymentArray();
     }
     $bhelper->createDefaultAddress($ref, $cart);
     $html = $bhelper->getPaymentArrayHtml($ref->cart, $ph, $sh);
     self::$totals_html = basketHelper::$totals_html;
     $bhelper->restoreDefaultAddress($ref, $cart);
     //$ret = implode('<br />', $sh);
     $ret = '';
     $ret .= $html;
     return $ret;
 }
 public function plgVmOnMainController($_controller)
 {
     $arr = array('user', 'registration');
     if (in_array($_controller, $arr)) {
         $isopc = JRequest::getVar('opcregistration', false);
         if (!empty($isopc)) {
             if (!defined('DS')) {
                 define('DS', DIRECTORY_SEPARATOR);
             }
             JRequest::setVar('task', 'opcregister');
             require_once JPATH_SITE . DS . 'components' . DS . 'com_onepage' . DS . 'controllers' . DS . 'opc.php';
             $opc = new VirtueMartControllerOpc();
             $msg = $opc->opcregister();
             $opc->setRedirect(JRoute::_('index.php?option=com_virtuemart&view=user', false), $msg);
             $app = JFactory::getApplication();
             $app->close();
         }
     }
 }
Example #3
0
 private function storeShopperGroup(&$data, $update = false)
 {
     require_once JPATH_ROOT . DS . 'components' . DS . 'com_onepage' . DS . 'helpers' . DS . 'mini.php';
     $shoppergroupmodel = OPCmini::getModel('ShopperGroup');
     $userModel = OPCmini::getModel('user');
     $default = $shoppergroupmodel->getDefault(0);
     if (!empty($default)) {
         $default_id = $default->virtuemart_shoppergroup_id;
     } else {
         $default_id = 1;
     }
     $default2 = $shoppergroupmodel->getDefault(1);
     if (!empty($default2)) {
         $default2_id = $default2->virtuemart_shoppergroup_id;
     } else {
         $default2_id = 2;
     }
     $user = JFactory::getUser();
     $user_id = $user->get('id');
     $db = JFactory::getDBO();
     if (empty($user_id)) {
         return;
     }
     if (!empty($update)) {
         $q = 'select * from #__virtuemart_vmuser_shoppergroups where virtuemart_user_id = ' . (int) $user_id . ' limit 0,1';
         $db->setQuery($q);
         $res = $db->loadAssoc();
         // the shopper group was already set
         if (!empty($res)) {
             return;
         }
     }
     if (empty($data['virtuemart_shoppergroup_id']) || $data['virtuemart_shoppergroup_id'] == $default) {
         return;
     }
     require_once JPATH_ROOT . DS . 'components' . DS . 'com_onepage' . DS . 'helpers' . DS . 'mini.php';
     $usermodel = OPCmini::getModel('user');
     //$user = $usermodel->getUser ();
     //$user->shopper_groups = (array)$user->shopper_groups;
     // Bind the form fields to the table
     $data['virtuemart_shoppergroup_id'] = (int) $data['virtuemart_shoppergroup_id'];
     //if(!empty($data['virtuemart_shoppergroup_id']))
     $db = JFactory::getDBO();
     if (empty(self::$shopper_groups)) {
         self::$shopper_groups = array();
     }
     if (method_exists($userModel, 'getCurrentUser')) {
         $user = $userModel->getCurrentUser();
         self::$shopper_groups = $user->shopper_groups;
     }
     if (empty(self::$shopper_groups)) {
         self::$shopper_groups = array();
     }
     if (!in_array($data['virtuemart_shoppergroup_id'], self::$shopper_groups)) {
         self::$shopper_groups[] = $data['virtuemart_shoppergroup_id'];
     }
     foreach (self::$shopper_groups as $key => $group) {
         if (empty($group)) {
             continue;
         }
         // anonymous
         if ($group == $default_id) {
             continue;
         }
         // default
         if ($group == $default2_id) {
             continue;
         }
         if (empty($group)) {
             continue;
         }
         //$user = $userModel->getUser();
         $group = (int) $group;
         $q = "insert into `#__virtuemart_vmuser_shoppergroups` (id, virtuemart_user_id, virtuemart_shoppergroup_id) values (NULL, " . (int) $user_id . ", " . (int) $group . ")";
         $db->setQuery($q);
         $db->query();
         $e = $db->getError();
         // do not give an error: if (!empty($e)) { echo $e; }
         /*
         $shoppergroupData = array('virtuemart_user_id'=>$user_id,'virtuemart_shoppergroup_id'=>$group);
         $user_shoppergroups_table = $userModel->getTable('vmuser_shoppergroups');
         $shoppergroupData = $user_shoppergroups_table -> bindChecknStore($shoppergroupData);
         $errors = $user_shoppergroups_table->getErrors();
         
         
         foreach($errors as $error){
         	$this->setError($error);
         	vmError('Set shoppergroup '.$error);
         	echo $error;  
         	$noError = false;
         }
         */
     }
 }
Example #4
0
 *
*/
if (!defined('_VALID_MOS') && !defined('_JEXEC')) {
    die('Direct Access to ' . basename(__FILE__) . ' is not allowed.');
}
require_once JPATH_SITE . DIRECTORY_SEPARATOR . 'administrator' . DIRECTORY_SEPARATOR . 'components' . DIRECTORY_SEPARATOR . 'com_onepage' . DIRECTORY_SEPARATOR . 'helpers' . DIRECTORY_SEPARATOR . 'compatibility.php';
// disable cache for all one page pages
if (class_exists('JCache')) {
    $options = array('defaultgroup' => 'page', 'browsercache' => false, 'caching' => false);
    $caching = JCache::getInstance('page', $options);
    $caching->setCaching(false);
}
$task = JRequest::getVar('task', '');
if ($task === 'opcregister') {
    require_once JPATH_SITE . DS . 'components' . DS . 'com_onepage' . DS . 'controllers' . DS . 'opc.php';
    $opc = new VirtueMartControllerOpc();
    $opc->opcregister();
    $app = JFactory::getApplication();
    $app->close();
} else {
    if ($task === 'loadjs') {
        require_once JPATH_ROOT . DS . 'components' . DS . 'com_onepage' . DS . 'helpers' . DS . 'mini.php';
        $file = JRequest::getVar('file', '');
        if (!empty($file)) {
            OPCmini::loadJSfile($file);
            $app = JFactory::getApplication();
            $app->close();
            die;
        }
    } else {
        if ($task === 'ping') {