示例#1
0
 public static function getInstance($type)
 {
     static $instance;
     $className = "osePaymentSC{$type}";
     $arrayInstance = array();
     $arrayInstance['MscList'] = 'osePaymentMscList';
     $arrayInstance['View'] = 'osePaymentView';
     $arrayInstance['Price'] = 'osePaymentPrice';
     $arrayInstance['Tax'] = 'osePaymentTax';
     $arrayInstance['GateWay'] = 'osePaymentGateWay';
     if (isset($arrayInstance[$type])) {
         if (strtolower($type) == 'price') {
             $primaryCurrency = osePayment::getCurrencyInfo();
             $instance = new osePaymentPrice($primaryCurrency->value, oseJson::decode($primaryCurrency->default));
             return $instance;
         }
         $className = $arrayInstance[$type];
     } else {
         $className = "osePaymentSC{$type}";
     }
     if (!$instance instanceof $className) {
         $instance = new $className();
     }
     return $instance;
 }
	public static function add($params)
	{
		$result = array();
		$result['success'] = true;
		
		if(empty($params))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('Error Register_Order.PAP');
			
			return $result;
		}
		//unset($params['allow_work']);
		
		if(!empty($_COOKIE['PAPVisitorId']))
		{
			$orderParams = oseJson::decode($params['params']);
			
			$orderParams->pap_visitorid = $_COOKIE['PAPVisitorId'];
			$orderParams->first_ip = oseMscPublic::getIP();
			$params['params'] = oseJson::encode($orderParams);
			return $params;
		}
		else
		{
			return $params;
		}
	}
	public static function getMSCs()
	{
		$my = JFactory::getUser();
		$member_id = $my->id;
		$result = array();
		$db= oseDB :: instance();
		$query= " SELECT acl.id, acl.title FROM `#__osemsc_member_history` AS omh" 
			   ." INNER JOIN `#__osemsc_acl` AS acl" 
			   ." ON omh.`msc_id` = acl.`id`" 
			   ." WHERE omh.`member_id` = '{$member_id}'" 
			   ." GROUP BY acl.`id`";
		$db->setQuery($query);
		$items = oseDB :: loadList();
		if(count($items) < 1)
		{
			$result['total'] = 0;
			$result['results'] = '';
		}else
		{
			$result['total'] = count($items);
			$result['results'] = $items;
		}	
		$result = oseJson :: encode($result);
		oseExit($result);
	}
	public static function add($params)
	{
		$result = array();
		$result['success'] = true;
		
		if(empty($params))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('Error Register_Order.PAP');
			
			return $result;
		}
		//unset($params['allow_work']);
		if(!empty($_COOKIE['oseAffiliate']))
		{
			$orderParams = oseJson::decode($params['params']);
			$oseAffiliate = oseJSON::decode($_COOKIE['oseAffiliate']);
		
			
			$orderParams->oseaffiliateID = $oseAffiliate->oafid;
			$orderParams->osebannerID = $oseAffiliate->obid;
			$orderParams->first_ip = oseMscPublic::getIP();
			//$orderParams->first_ip = oseMscPublic::getIP();
			$params['params'] = oseJson::encode($orderParams);
			return $params;
		}
		else
		{
			return $params;
		}
	}
示例#5
0
 function display($tpl = null)
 {
     $tmpl = JRequest::getVar('tmpl');
     if (empty($tmpl)) {
         JRequest::setVar('tmpl', 'component');
     }
     if (JOOMLA16 == false) {
         require_once OSEMSC_B_PATH . DS . 'helpers' . DS . "extLanguage.php";
         oseHTML::script(OSEMSC_F_URL . '/libraries/joomla.core.js', '1.5');
         $strings = oseJson::encode(oseText::jsStrings());
         $document = JFactory::getDocument();
         $document->addScriptDeclaration('(function(){var strings=' . $strings . ';Joomla.JText.load(strings)})()');
     }
     $com = OSECPU_PATH_JS . '/com_ose_cpu/extjs';
     oseHTML::initScript();
     oseHTML::script($com . '/ose/app.msg.js', '1.5');
     oseHTML::script(OSEMSC_F_URL . '/libraries/init.js', '1.5');
     require_once OSEMSC_B_PATH . DS . 'helpers' . DS . "extLanguage.php";
     $OSESoftHelper = new OSESoftHelper();
     $footer = $OSESoftHelper->renderOSETM();
     $this->assignRef('footer', $footer);
     $preview_menus = $OSESoftHelper->getPreviewMenus();
     $this->assignRef('preview_menus', $preview_menus);
     $this->assignRef('OSESoftHelper', $OSESoftHelper);
     $title = JText::_('OSE Membership™ Profile Management');
     $this->assignRef('title', $title);
     parent::display($tpl);
 }
 function generateDesc($order_id)
 {
     $title = null;
     $db = oseDB::instance();
     $query = "SELECT * FROM `#__osemsc_order_item` WHERE `order_id` = '{$order_id}'";
     $db->setQuery($query);
     $obj = $db->loadObject();
     $params = oseJson::decode($obj->params);
     $msc_id = $obj->entry_id;
     $query = "SELECT title FROM `#__osemsc_acl` WHERE `id` = " . (int) $msc_id;
     $db->setQuery($query);
     $msc_name = $db->loadResult();
     $msc_option = $params->msc_option;
     $query = "SELECT params FROM `#__osemsc_ext` WHERE `type` = 'payment' AND `id` = " . (int) $msc_id;
     $db->setQuery($query);
     $result = oseJson::decode($db->loadResult());
     foreach ($result as $key => $value) {
         if ($msc_option == $key) {
             if ($value->recurrence_mode == 'period') {
                 if ($value->eternal) {
                     $title = 'Life Time Membership';
                 } else {
                     $title = $value->recurrence_num . ' ' . ucfirst($value->recurrence_unit) . ' Membership';
                 }
             } else {
                 $start_date = date("l,d F Y", strtotime($value->start_date));
                 $expired_date = date("l,d F Y", strtotime($value->expired_date));
                 $title = $start_date . ' - ' . $expired_date . ' Membership';
             }
         }
     }
     $title = $msc_name . ' : ' . $title;
     return $title;
 }
 public static function renew($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     unset($params['allow_work']);
     //oseExit($params);
     $db = oseDB::instance();
     $post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     if (empty($msc_id)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Renew Msc: No Msc ID");
         return $result;
     }
     // get the plan id of msc
     $query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'osecredit'";
     $db->setQuery($query);
     $data = $db->loadObject();
     $data = oseJson::decode($data->params);
     if (empty($data->osecredit_id) || empty($data->enable)) {
         $result['success'] = true;
         $result['title'] = JText::_('Done');
         $result['content'] = JText::_("Done");
         return $result;
     }
     $query = "SELECT credit_amount FROM `#__ose_credit_plan` WHERE `id` = '{$data->osecredit_id}'";
     $db->setQuery($query);
     $amount = $db->loadResult();
     $query = "SELECT * FROM `#__ose_credit_member` WHERE `member_id` = '{$member_id}'";
     $db->setQuery($query);
     $obj = $db->loadObject();
     if (empty($obj)) {
         $credit_params = oseJson::encode(array());
         $query = " INSERT INTO `#__ose_credit_member` (`member_id`, `credit_amount`, `params`)" . " VALUES" . " ('{$member_id}', '{$amount}', '{$credit_params}')";
     } else {
         $amount = $amount + $obj->credit_amount;
         $query = "UPDATE `#__ose_credit_member` SET `credit_amount` = '{$amount}' WHERE `id` = '{$obj->id}'";
     }
     $db->setQuery($query);
     if (!$db->query()) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_('Error');
         return $result;
     }
     $result['success'] = true;
     $result['title'] = JText::_('Done');
     $result['content'] = JText::_("Done");
     return $result;
 }
示例#8
0
 public static function activate($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     unset($params['allow_work']);
     //oseExit($params);
     $db = oseDB::instance();
     $post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     if (empty($msc_id)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Renew Msc: No Msc ID");
         return $result;
     }
     // get the docman groups_id  of msc
     $query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'docman'";
     $db->setQuery($query);
     $data = $db->loadObject();
     $data = oseJson::decode($data->params);
     if (empty($data->groups_id) || $data->groups_id == '-1') {
         $result['success'] = true;
         $result['title'] = JText::_('Done');
         $result['content'] = JText::_("Done");
         return $result;
     }
     $docman_group_id = $data->groups_id;
     $query = "SELECT * FROM `#__docman_groups` WHERE `groups_id` = " . (int) $docman_group_id;
     $db->setQuery($query);
     $obj = $db->loadObject();
     if (!empty($obj)) {
         $newmembers[] = $member_id;
         if (!empty($obj->groups_members)) {
             $oldmembers = explode(",", $obj->groups_members);
             if (count($oldmembers) > 0) {
                 $newmembers = array_merge($oldmembers, $newmembers);
             }
         }
         $newmembers = array_unique($newmembers);
         $newmembers = implode(",", $newmembers);
         $query = "UPDATE `#__docman_groups` SET `groups_members` = '" . $newmembers . "' WHERE `groups_id` = " . (int) $docman_group_id;
         $db->setQuery($query);
         if (!$db->query()) {
             $result['success'] = false;
             $result['title'] = 'Error';
             $result['content'] = JText::_("Error");
             return $result;
         }
     }
     return $result;
 }
示例#9
0
 function getItems()
 {
     // Get a storage key.
     $store = $this->getStoreId('getItems');
     // Try to load the data from internal storage.
     if (!empty($this->cache[$store])) {
         return $this->cache[$store];
     }
     $search = $this->getState('filter.search');
     $searchid = $this->getState('filter.searchid');
     $searchpe = $this->getState('filter.searchpe');
     // Load the list items.
     $items = parent::getItems();
     // If emtpy or an error, just return.
     if (empty($items)) {
         return array();
     }
     //oseExit($items);
     $db = oseDB::instance();
     // Inject the values back into the array.
     foreach ($items as $k => $item) {
         $order_id = null;
         if ($item->msc_id > 0) {
             $params = oseJson::decode($item->params);
             $order_id = oseGetValue($params, 'order_id', 0);
             $query = " SELECT `title` FROM `#__osemsc_acl`" . " WHERE `id` = '{$item->msc_id}'";
             $db->setQuery($query);
             $item->membership = $db->loadResult();
             $query = " SELECT *" . " FROM `#__osemsc_order_fix`" . " WHERE `member_id` = '{$item->id}'";
             $db->setQuery($query);
             $ofItem = oseDB::loadItem('obj');
             $item->paypal_email = oseObject::getValue($ofItem, 'email', $item->email);
         } else {
             $item->expired_date = null;
             $item->status = '';
         }
         if (empty($search) && empty($searchid) && empty($searchpe)) {
             //return array();
         } else {
             //$item->order_number = null;
             if (!empty($order_id)) {
                 $query = " SELECT `order_id`,`order_number`,`payment_serial_number`,`order_status`" . " FROM `#__osemsc_order`" . " WHERE `order_id` = '{$order_id}'";
                 $db->setQuery($query);
                 $oItem = oseDB::loadItem('obj');
                 $item->order_number = $oItem->order_number;
                 $item->order_id = $oItem->order_id;
                 $item->payment_serial_number = $oItem->payment_serial_number;
                 $item->order_status = $oItem->order_status;
             } else {
             }
         }
         $items[$k] = $item;
     }
     // Add the items to the internal cache.
     $this->cache[$store] = $items;
     return $this->cache[$store];
 }
 function PayFastOneOffPostForm($orderInfo, $params = array())
 {
     $pConfig = oseMscConfig::getConfig('payment', 'obj');
     $merchantId = $pConfig->payfast_merchant_id;
     $merchantKey = $pConfig->payfast_merchant_key;
     $html = array();
     $test_mode = $pConfig->payfast_testmode;
     if (!$test_mode) {
         if (empty($merchantId) || empty($merchantKey)) {
             $html['form'] = "";
             $html['url'] = "";
             return $html;
         }
     }
     if ($test_mode == true) {
         $merchantId = '10000100';
         $merchantKey = '46f0cd694581a';
         $url = "https://sandbox.payfast.co.za/eng/process";
     } else {
         $url = "https://www.payfast.co.za/eng/process";
     }
     $db = oseDB::instance();
     $member = oseRegistry::call('member');
     $member->instance($orderInfo->user_id);
     $payment = oseRegistry::call('payment');
     $paymentOrder = $payment->getInstance('Order');
     $billinginfo = $paymentOrder->getBillingInfo($orderInfo->user_id);
     $amount = $orderInfo->payment_price;
     $currency = $orderInfo->payment_currency;
     $order_id = $orderInfo->order_id;
     $order_number = $orderInfo->order_number;
     $user =& JFactory::getUser($orderInfo->user_id);
     $orderInfoParams = oseJson::decode($orderInfo->params);
     $cancelUrl = JURI::base() . "index.php";
     $notifyUrl = JURI::base() . "components/com_osemsc/ipn/payfast_notify.php";
     $returnUrl = urldecode(JROUTE::_(JURI::base() . "index.php?option=com_osemsc&view=thankyou&order_id=" . $orderInfo->order_id));
     $returnUrl = $returnUrl ? $returnUrl : JURI::base() . "index.php?option=com_osemsc&view=member&result=success&amount={$amount}&ordernumber={$order_number}";
     // Create description
     $description = '';
     $vendor_image_url = "";
     $app =& JFactory::getApplication();
     $currentSession = JSession::getInstance('none', array());
     $stores = $currentSession->getStores();
     $html['form'] = '<form action="' . $url . '" method="post">';
     // Construct variables for post
     $post_variables = array('merchant_id' => $merchantId, 'merchant_key' => $merchantKey, 'return_url' => $returnUrl, 'cancel_url' => $cancelUrl, 'notify_url' => $notifyUrl, 'name_first' => substr($billinginfo->firstname, 0, 100), 'name_last' => substr($billinginfo->lastname, 0, 100), 'email_address' => substr($billinginfo->email, 0, 255), 'item_name' => JText::_('Order ID: ') . $order_id, 'item_description' => $description, 'amount' => number_format($amount, 2, '.', ''), 'm_payment_id' => $order_id, 'currency_code' => $currency, 'custom_str1' => $order_number, 'user_agent' => 'Open Source Membership Control V5');
     $html['form'] .= '<input type="image" id="payfast_image" name="cartImage" src="' . "components/com_osemsc/assets/images/checkout.png" . '" alt="' . JText::_('Click to pay with PayFast') . '" />';
     // Process payment variables;
     $html['url'] = $url . "?";
     foreach ($post_variables as $name => $value) {
         $html['form'] .= '<input type="hidden" name="' . $name . '" value="' . htmlspecialchars($value) . '" />';
         $html['url'] .= $name . "=" . urlencode($value) . "&";
     }
     $html['form'] .= '</form>';
     return $html;
 }
示例#11
0
	function getTerm()
	{
		$id = JRequest::getInt('id',0);

		$terms = oseRegistry::call('member')->getInstance('Email')->getTerm($id);
		$terms = str_replace("../", JURI::root(), $terms);
		$result = empty($terms)?'':$terms;
		$result = oseJson::encode($result);
		oseExit($result);
	}
 public static function renew($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     unset($params['allow_work']);
     $db = oseDB::instance();
     //$post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     if (empty($msc_id)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Join Msc: No Msc ID");
         return $result;
     }
     // get the sobi2 credit of msc
     $query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'sobi2credit'";
     $db->setQuery($query);
     $data = $db->loadObject();
     $data = oseJson::decode($data->params);
     if (empty($data->credit)) {
         $result['success'] = true;
         $result['title'] = JText::_('Done');
         $result['content'] = JText::_("Done");
         return $result;
     }
     $query = "SELECT * FROM `#__osemsc_credit` WHERE `member_id` = '{$member_id}'";
     $db->setQuery($query);
     $obj = $db->loadObject();
     if (empty($obj)) {
         $query = " INSERT INTO `#__osemsc_credit`" . " (`member_id`, `credit`, `recharge_times`, `total_consume_amout`)" . " VALUES" . " ('{$member_id}', '{$data->credit}', '0', '0')";
     } else {
         $credit = $obj->credit + $data->credit;
         $recharge_times = $obj->recharge_times + 1;
         $query = "UPDATE `#__osemsc_credit` SET `credit` = '{$credit}', `recharge_times` = '{$recharge_times}' WHERE `member_id` = '{$member_id}'";
     }
     $db->setQuery($query);
     if (!$db->query()) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_('Error');
         return $result;
     }
     $result['success'] = true;
     $result['title'] = JText::_('Done');
     $result['content'] = JText::_("Done");
     return $result;
 }
示例#13
0
 public static function save($params)
 {
     $result = array();
     $result['success'] = true;
     //oseExit($params);
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_('Error Join.Idev');
         return $result;
     }
     unset($params['allow_work']);
     if ($params['join_from'] != 'payment') {
         $result['success'] = true;
         $result['title'] = JText::_('Done');
         $result['content'] = JText::_('Done Join.Order');
         return $result;
     }
     $oseMscConfig = oseRegistry::call('msc')->getConfig('thirdparty', 'obj');
     if (empty($oseMscConfig->idev_enable)) {
         return $result;
     }
     if (empty($oseMscConfig->idev_url)) {
         return $result;
     }
     $db = oseDB::instance();
     //$post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     $order_id = $params['order_id'];
     $order_item_id = $params['order_item_id'];
     $where = array();
     $where[] = "order_id = {$order_id}";
     $payment = oseRegistry::call('payment');
     $curOrder = $payment->getOrder($where, 'obj');
     $curOrderParams = oseJson::decode($curOrder->params);
     $member = oseRegistry::call('member');
     $member->instance($member_id);
     $userInfo = $member->getUserInfo('obj');
     $memParams = $member->getMemberInfo($msc_id, 'obj')->memParams;
     $memParams = oseJSON::decode($memParams);
     $memParams->first_ip = $curOrderParams->first_ip;
     try {
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, $oseMscConfig->idev_url . "/sale.php?profile=72198&idev_saleamt={$curOrder->payment_price}&idev_ordernum={$order_id}&ip_address={$memParams->first_ip}");
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
         curl_exec($ch);
         curl_close($ch);
         return $result;
     } catch (Exception $e) {
         return $result;
     }
 }
示例#14
0
 function setParams($item, $params)
 {
     $itemParams = oseGetValue($item, 'params', '{}');
     $itemParams = oseJson::decode($itemParams);
     if (!is_Array($params)) {
         $params = (array) $params;
     }
     foreach ($params as $key => $value) {
         $itemParams = oseSetValue($itemParams, $key, $value);
     }
     $itemParams = oseJson::encode($itemParams);
     $item = oseSetValue($item, 'params', $itemParams);
     return $item;
 }
 protected function init($item)
 {
     $item = empty($item) ? array() : (array) $item;
     foreach ($item as $key => $value) {
         if ($key == 'config') {
             $value = empty($value) ? '{}' : $value;
             $this->set($key, oseJson::decode($value));
         } elseif ($key == 'params') {
             $this->set($key, $this->getParams($item));
         } else {
             $this->set($key, $value);
         }
     }
 }
示例#16
0
 function getOwnMsc()
 {
     $model = $this->getModel('member');
     $items = $model->getOwnMsc();
     $total = count($items);
     if ($total > 0) {
         $result['total'] = $total;
         $result['results'] = $items;
     } else {
         $result['total'] = 0;
         $result['results'] = null;
     }
     $result = oseJson::encode($result);
     oseExit($result);
 }
 public static function add($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_('Error Register_Order.Idev');
         return $result;
     }
     $orderParams = oseJson::decode($params['params']);
     $orderParams->first_ip = oseMscPublic::getIP();
     $params['params'] = oseJson::encode($orderParams);
     return $params;
 }
示例#18
0
 function getList()
 {
     $model = $this->getModel('levels');
     $results = $model->getList();
     $result = array();
     if (count($results) > 0) {
         $result['total'] = count($results);
         $result['results'] = $results;
     } else {
         $result['total'] = 0;
         $result['results'] = array();
     }
     $result = oseJson::encode($result);
     oseExit($result);
 }
示例#19
0
	public static function save($params)
	{
		$result = array();
		$result['success'] = true;
		//oseExit($params);
		if(empty($params['allow_work']))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('Error Join.Order.1');
			
			return $result;
		}
		unset($params['allow_work']);
		
		if( $params['join_from'] != 'payment')
		{
			$result['success'] = true;
			$result['title'] = JText::_('Done');
			$result['content'] = JText::_('Done Join.Order');
			
			return $result;
		}
		
		$db = oseDB::instance();
		//$post = JRequest::get('post');
		$msc_id = $params['msc_id'];
		$member_id = $params['member_id'];
		
		$order_id = $params['order_id'];
		$order_item_id = $params['order_item_id'];
		
		$payment= oseRegistry :: call('payment');
		$orderInfo= $payment->getInstance('Order')->getOrder(array("order_id = {$order_id}"), 'obj');
		$orderInfoParams = oseJson::decode($orderInfo->params);
		
		$array = array();
		$array['id'] = $orderInfoParams->coupon_user_id;
		
		if(!empty($array['id']))
		{
			$array['paid'] = 1;
			$array['user_id'] = $member_id;
			$updated = oseDB::update('#__osemsc_coupon_user','id',$array);
		}
		
		return $result;
	}
示例#20
0
 public static function activate($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     unset($params['allow_work']);
     //oseExit($params);
     $db = oseDB::instance();
     $post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     if (empty($msc_id)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Renew Msc: No Msc ID");
         return $result;
     }
     // get the groupid of msc
     $query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'jgroup'";
     $db->setQuery($query);
     $data = $db->loadObject();
     $data = oseJson::decode($data->params);
     if (empty($data->jgroup_id)) {
         $result['success'] = true;
         $result['title'] = JText::_('Done');
         $result['content'] = JText::_("Done");
         return $result;
     }
     $user = JUser::getInstance($member_id);
     $group['groups'] = array_merge($user->groups, (array) $data->jgroup_id);
     $user->bind($group);
     if (!$user->save()) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     $result['success'] = true;
     $result['title'] = JText::_('Done');
     $result['content'] = JText::_("Done");
     return $result;
 }
示例#21
0
	function getFaith()
	{
		$id = JRequest::getInt('id',0);
		$db= oseDB::instance();
		
		$query = " SELECT * FROM `#__osemsc_email` "
				." WHERE type = 'faith' AND id = {$id} "
				;
		
		$db->setQuery($query);
		
		$term = oseDB::loadItem();
		
		$result = empty($term)?'':$term;
		
		$result = oseJson::encode($result);
		
		oseExit($result);
	}
示例#22
0
	function display($tpl = null) {
		$tpl = null;
		$this->set('_layout', 'default');
		oseHTML::initCss();
		$com = OSECPU_PATH_JS . '/com_ose_cpu/extjs';
		oseHTML::initScript();
		oseHTML::script($com . '/ose/app.msg.js', '1.5');
		oseHTML::script($com . '/grid/expander.js', '1.5');
		oseHTML::script(OSEMSC_F_URL . '/libraries/init.js', '1.5');
		$config = oseMscConfig::getConfig('global', 'obj');
		oseHTML::stylesheet(OSEMSC_F_URL . '/assets/css/' . $config->frontend_style . '.css', (JOOMLA16) ? '1.6' : '1.5');
		$user = JFactory::getUser();
		$app = JFactory::getApplication('SITE');
		$session = JFactory::getSession();
		$db = oseDB::instance();
		$order_id = JRequest::getInt('order_id');
		$payment = oseRegistry::call('payment');
		$where = array();
		$where[] = "`order_id` = " . $db->quote($order_id);
		$order = $payment->getOrder($where, 'obj');
		$orderInfoParams = oseJson::decode($order->params);
		$redirectUrl = urldecode($orderInfoParams->returnUrl);
		$config = oseMscConfig::getConfig('thirdparty', 'obj');
		$account = oseObject::getValue($config, 'gag_account');
		$standard_type = oseObject::getValue($config, 'gag_domain_mode');
		$domain = oseObject::getValue($config, 'gag_domain');
		$htmlTrack = oseMscPublic::htmlTrack($account, $standard_type, $domain, $order_id);
		$code = oseMscPublic::ajaxOrderTrack($account, $order_id);
		if (empty($code)) {
			$code = false;
		} else {
			$code = implode("", $code);
		}
		$document = JFactory::getDocument();
		$document->addScriptDeclaration('var redirectUrl = "' . $redirectUrl . '";');
		$document->addScriptDeclaration($htmlTrack);
		$document->addScriptDeclaration($code);
		$this->assignRef('orderInfo', $order);
		$this->prepareDocument();
		parent::display($tpl);
	}
示例#23
0
 function getInfo($id)
 {
     $db = oseDB::instance();
     $query = " SELECT * FROM `#__osemsc_coupon` " . "WHERE `id` = " . $id;
     $db->setQuery($query);
     $item = oseDB::loadItem();
     $item['params'] = oseJson::decode($item['params']);
     $data = oseJson::decode($item['data'], true);
     if (empty($data)) {
         $data = array();
     }
     //$item['data'] = $this->generateTable($data);
     $where = array();
     $where[] = "c.`coupon_id` = " . (int) $id;
     $where = oseDB::implodeWhere($where);
     $query = " SELECT Count(*) FROM `#__osemsc_coupon_user` AS c WHERE c.`paid` = '1' AND c.`coupon_id` = " . (int) $id;
     $db->setQuery($query);
     $used = $db->loadResult();
     $item['amount_left'] = $item['amount'] >= $used ? $item['amount'] - $used : 0;
     return $item;
 }
示例#24
0
 public function getList()
 {
     $db = oseDB::instance();
     $search = JRequest::getString('search', null);
     $search = JString::strtolower($search);
     $start = JRequest::getInt('start', 0);
     $limit = JRequest::getInt('limit', 20);
     $dir = JRequest::getCmd('dir', 'ASC');
     $sortField = JRequest::getCmd('sort', 'domain');
     $msc_id = JRequest::getInt('msc_id');
     $user_id = JRequest::getInt('user_id');
     $where = array();
     $where[] = "`mscID` = '{$msc_id}'";
     $where[] = "`userID` = '{$user_id}'";
     if (!empty($search)) {
         $searchQuery = $db->Quote('%' . $search . '%');
         $where[] = "`domain` LIKE {$searchQuery}";
     }
     $where = oseDB::implodeWhere($where);
     $query = " SELECT COUNT(*) " . " FROM `#__osetickets_domains` " . $where;
     $db->setQuery($query);
     $total = $db->loadResult();
     $query = " SELECT *" . " FROM `#__osetickets_domains` " . $where . " ORDER BY {$sortField} {$dir}";
     if ($start >= 0 && $limit >= 0) {
         $db->setQuery($query, $start, $limit);
     } else {
         $db->setQuery($query);
     }
     $items = oseDB::loadList('obj');
     $list = array();
     foreach ($items as $key => $item) {
         $list[$key] = $item;
     }
     $resul = array();
     $result['total'] = $total;
     $result['results'] = $list;
     oseExit(oseJson::encode($result));
 }
示例#25
0
	function display($tpl = null) {
		$tpl = null;
		$this->set('_layout', 'default');
		oseHTML::initCss();
		$com = OSECPU_PATH_JS . '/com_ose_cpu/extjs';
		oseHTML::initScript();
		oseHTML::script($com . '/ose/app.msg.js', '1.5');
		oseHTML::script($com . '/grid/expander.js', '1.5');
		oseHTML::script(OSEMSC_F_URL . '/libraries/init.js', '1.5');
		$config = oseMscConfig::getConfig('global', 'obj');
		oseHTML::stylesheet(OSEMSC_F_URL . '/assets/css/' . $config->frontend_style . '.css', (JOOMLA16) ? '1.6' : '1.5');
		$user = JFactory::getUser();
		$app = JFactory::getApplication('SITE');
		$session = JFactory::getSession();
		$db = oseDB::instance();
		$token = (isset($_REQUEST['token'])) ? urlencode($_REQUEST['token']) : "";
		$payment = oseRegistry::call('payment');
		$payment_mode = JRequest::getVar('mode');
		$orderID = JRequest::getInt('orderID');
		if (empty($orderID) || !is_numeric($orderID)) {
			echo "Order data is interrupted, payment process is terminated.";
		}
		if ($payment_mode == 'm') {
			$orderInfo = $payment->PaypalAPIPay($orderID, $token);
		} else {
			$orderInfo = $payment->PaypalAPICreateProfile($orderID, $token);
		}
		$where = array();
		$where[] = "`order_id` = " . $db->quote($orderID);
		$order = $payment->getOrder($where, 'obj');
		$orderInfoParams = oseJson::decode($order->params);
		$redirectUrl = urldecode($orderInfoParams->returnUrl);
		$document = JFactory::getDocument();
		$document->addScriptDeclaration('var redirectUrl = "' . $redirectUrl . '";');
		$this->assignRef('orderInfo', $orderInfo);
		$this->prepareDocument();
		parent::display($tpl);
	}
示例#26
0
	public static function save($params)
	{
		$result = array();
		
		if(empty($params['allow_work']))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_("Error");
			return $result;
		}
		unset($params['allow_work']);
		//oseExit($params);
		$db = oseDB::instance();
		//$post = JRequest::get('post');
		$msc_id = $params['msc_id'];
		$member_id = $params['member_id'];
		
		/*
		if( $params['join_from'] != 'payment' )
		{
			$result['success'] = true;
			$result['title'] = JText::_('Done');
			$result['content'] = JText::_("Join Msc: No Msc ID");
			return $result;
		}
		*/
		if(empty($msc_id))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_("Join Msc: No Msc ID");
			return $result;
		}
		
		// get the jspt id of msc
    	$query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'jspt'";
        $db->setQuery($query);
        $data = $db->loadObject();
		$data = oseJson::decode($data->params);
		
		if(empty($data->jspt_id) || empty($data->enable))
	    {
	    	$result['success'] = true;
			$result['title'] = JText::_('Done');
			$result['content'] = JText::_("Done");
			return $result;
	    }
	    
		$query = " SELECT userid FROM `#__xipt_users` WHERE `userid` = '{$member_id}' ";
		$db->setQuery($query);
		$userid = $db->loadResult();
		        	
		if($userid > 0)
		{
			$query = "SELECT id from `#__community_fields` WHERE `type` = 'profiletypes'";
			$db->setQuery($query);
			$jsptid = $db->loadResult(); 
		        		
			$query = "UPDATE `#__community_fields_values`  SET `value` = '{$data->jspt_id}'  WHERE `user_id` = '{$member_id}' AND `field_id` = '{$jsptid}'";
			$db->setQuery($query);
			$db->query(); 
		        		 
		   	$query = "UPDATE `#__xipt_users`  SET `profiletype` = '{$data->jspt_id}'  WHERE `userid` = '{$member_id}'";
			
		    $db->setQuery($query);
		    if (!$db->query())
		    {
			    $result['success'] = false;
				$result['title'] = 'Error';
				$result['content'] = JText::_('Error');
				return $result;
			}
		}else{
			
			$query = " INSERT INTO `#__xipt_users` (`profiletype`, `userid`) "
					." VALUES ('{$data->jspt_id}','{$member_id}') "
					;
			$db->setQuery($query);
			if (!$db->query())
			{
				$result['success'] = false;
				$result['title'] = 'Error';
				$result['content'] = JText::_('Error');
				return $result;
			}
		}
		    
		//Jomsocial Sync
		if(!empty($data->jomsync))
		{
			$query = "SELECT * FROM `#__osemsc_billinginfo` WHERE `user_id` = ".$member_id;
			$db->setQuery($query);
			$obj = $db->loadObject();
			if(!empty($obj))
			{
				$query = "SELECT * FROM `#__osemsc_country` WHERE `country_3_code` = '{$obj->country}'";
				$db->setQuery($query);
				$country = $db->loadObject();
				$obj->country = $country->country_name;
				$query = "SELECT state_name FROM `#__osemsc_state` WHERE `state_2_code` = '{$obj->state}' AND `country_id` = '{$country->country_id}'";
				$db->setQuery($query);
				$obj->state = $db->loadResult();
				$array = array();
				$array['firstname'] = $obj->firstname; 
				$array['lastname'] = $obj->lastname; 
				$array['company'] = $obj->company; 
				$array['addr1'] = $obj->addr1; 
				$array['addr2'] = $obj->addr2; 
				$array['city'] = $obj->city; 
				$array['state'] = $obj->state;
				$array['country'] = $obj->country;
				$array['postcode'] = $obj->postcode;
				$array['telephone'] =  $obj->telephone;
				
				foreach($array as $key => $val)
				{
					$val = $db->Quote($val);
					if(empty($data->$key))
					{
						continue;
					}
					$fid = $data->$key;
					$query = "SELECT count(*) FROM `#__community_fields_values` WHERE `field_id` = '{$fid}' AND `user_id` = ".$member_id;
					$db->setQuery($query);
					$exist = $db->loadResult();
					if(empty($exist))
					{
						$query = "INSERT INTO `#__community_fields_values` (`user_id`, `field_id`, `value`) VALUES ('{$member_id}', '{$fid}', {$val})";
					}else{
						$query = "UPDATE `#__community_fields_values` SET `value` = {$val} WHERE `field_id` = '{$fid}' AND `user_id` = ".$member_id;
					}
					$db->setQuery($query);
					if (!$db->query())
					{
						$result['success'] = false;
						$result['title'] = 'Error';
						$result['content'] = JText::_('Error');
						return $result;
					}

				}
			}
		}
		$result['success'] = true;
		$result['title'] = JText::_('Done');
		$result['content'] = JText::_("Done");
			
		return $result;
		
	}
示例#27
0
 public static function renew($params)
 {
     $result = array();
     $result['success'] = true;
     if (empty($params['allow_work'])) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Error");
         return $result;
     }
     unset($params['allow_work']);
     //oseExit($params);
     $db = oseDB::instance();
     $post = JRequest::get('post');
     $msc_id = $params['msc_id'];
     $member_id = $params['member_id'];
     if (empty($msc_id)) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Renew Msc: No Msc ID");
         return $result;
     }
     // get the vm shopper group id of msc
     $query = "SELECT * FROM `#__osemsc_ext` WHERE `id` = '{$msc_id}' AND `type` = 'vm2'";
     $db->setQuery($query);
     $data = $db->loadObject();
     $data = oseJson::decode($data->params);
     if (!empty($data->sg_id)) {
         $vm_sg_id = $data->sg_id;
     } else {
         $query = "SELECT virtuemart_shoppergroup_id FROM `#__virtuemart_shoppergroups` WHERE `default` = '1'";
         $db->setQuery($query);
         $vm_sg_id = $db->loadResult();
     }
     $user_info_id = md5(uniqid($member_id));
     $query = "SELECT count(*) FROM `#__virtuemart_userinfos` WHERE `virtuemart_user_id` = " . (int) $member_id;
     $db->setQuery($query);
     $result = $db->loadResult();
     $option = JRequest::getVar('option');
     if (empty($result) && $option != 'com_virtuemart') {
         $query = "INSERT INTO `#__virtuemart_userinfos` (`virtuemart_userinfo_id`, `virtuemart_user_id`, `address_type`) VALUES ('{$user_info_id}', '{$member_id}', 'BT');";
         $db->setQuery($query);
         if (!$db->query()) {
             $result['success'] = false;
             $result['title'] = 'Error';
             $result['content'] = JText::_("Join VM User Info Error.");
             return $result;
         }
     }
     $query = "SELECT virtuemart_shoppergroup_id FROM `#__virtuemart_vmuser_shoppergroups` WHERE `virtuemart_user_id` = " . (int) $member_id;
     $db->setQuery($query);
     $result = $db->loadResult();
     if (!empty($result)) {
         $query = "UPDATE `#__virtuemart_vmuser_shoppergroups` SET `virtuemart_shoppergroup_id` =" . (int) $vm_sg_id . " WHERE `virtuemart_user_id` =" . (int) $member_id;
     } else {
         $query = "INSERT INTO `#__virtuemart_vmuser_shoppergroups` (`id` ,`virtuemart_user_id` ,`virtuemart_shoppergroup_id`)VALUES (NULL, '{$member_id}', '{$vm_sg_id}');";
     }
     $db->setQuery($query);
     if (!$db->query()) {
         $result['success'] = false;
         $result['title'] = 'Error';
         $result['content'] = JText::_("Join VM User Info Error.");
         return $result;
     }
     //Update VM billing Info
     if ($data->update_billing) {
         $payment = oseRegistry::call('payment');
         $paymentOrder = $payment->getInstance('Order');
         $billinginfo = $paymentOrder->getBillingInfo($member_id);
         $user = JFactory::getUser($member_id);
         if (!empty($billinginfo)) {
             $query = "SELECT virtuemart_country_id FROM `#__virtuemart_countries` WHERE `country_3_code` = '{$billinginfo->country}'";
             $db->setQuery($query);
             $country_id = $db->loadResult();
             $query = "SELECT virtuemart_state_id FROM `#__virtuemart_states` WHERE `virtuemart_country_id` = '{$country_id}' AND `state_2_code` = '{$billinginfo->state}'";
             $db->setQuery($query);
             $state_id = $db->loadResult();
             $bill = array();
             $bill['company'] = empty($billinginfo->company) ? null : $billinginfo->company;
             $bill['first_name'] = empty($billinginfo->firstname) ? null : $billinginfo->firstname;
             $bill['last_name'] = empty($billinginfo->lastname) ? null : $billinginfo->lastname;
             $bill['name'] = $bill['first_name'] . ' ' . $bill['last_name'];
             $bill['phone_1'] = empty($billinginfo->telephone) ? null : $billinginfo->telephone;
             $bill['address_1'] = empty($billinginfo->addr1) ? null : $billinginfo->addr1;
             $bill['address_2'] = empty($billinginfo->addr2) ? null : $billinginfo->addr2;
             $bill['city'] = empty($billinginfo->city) ? null : $billinginfo->city;
             $bill['virtuemart_state_id'] = empty($state_id) ? null : $state_id;
             $bill['zip'] = empty($billinginfo->postcode) ? null : $billinginfo->postcode;
             //$bill['user_email'] = empty($user->email )?null:$user->email;
             $bill['virtuemart_country_id'] = empty($country_id) ? null : $country_id;
             $billinfo = array();
             foreach ($bill as $key => $value) {
                 if (!empty($value)) {
                     $billinfo[$key] = "`{$key}`=" . $db->Quote($value);
                 }
             }
             $values = implode(',', $billinfo);
             $query = " UPDATE `#__virtuemart_userinfos` SET {$values}" . " WHERE `virtuemart_user_id` ={$member_id} AND `address_type` = 'BT'";
             $db->setQuery($query);
             if (!$db->query()) {
                 $result['success'] = false;
                 $result['title'] = 'Error';
                 $result['content'] = JText::_("Join VM User Info Error.");
                 return $result;
             }
         }
     }
     $result['success'] = true;
     $result['title'] = JText::_('Done');
     $result['content'] = JText::_("Done");
     return $result;
 }
示例#28
0
 public function initJs()
 {
     $result1 = $this->generateCountryStateData();
     $result2 = $this->generateMscIdOption();
     $result = array_merge($result1, $result2);
     $config = oseRegistry::call('msc')->getConfig('locale', 'obj');
     $jsonCountry = oseObject::getValue($config, 'default_country_json', false);
     if (!$jsonCountry) {
         $jsonCountry = oseJson::encode(array('code3' => 'USA', 'code2' => 'US'));
     } else {
         $jsonCountry = oseObject::getValue($config, 'default_country_json');
     }
     $js = oseHTML::getInstance('js');
     $js->append('oseMsc.defaultSelectedCountry=Ext.decode(\'' . $jsonCountry . '\');');
     $js->append('oseMsc.mscList = ' . oseJson::encode($result['mscList']) . ';');
     $js->append('oseMsc.mscOptions = ' . oseJson::encode($result['mscOptions']) . ';');
     $js->append('oseMsc.countryData = ' . oseJson::encode($result['country']) . ';');
     $js->append('oseMsc.stateData = ' . oseJson::encode($result['state']) . ';');
     $js->onReady();
     $js->wrap();
     return $js->toString();
 }
示例#29
0
 public static function preview()
 {
     $result = array();
     $result['success'] = true;
     $result['uploaded'] = false;
     $result['img_path'] = null;
     $uploadImg = JRequest::getVar('directory_directory_logo', null, 'files', 'array');
     $des = JPATH_COMPONENT_SITE . DS . 'assets' . DS . 'tmpl_image' . DS . $uploadImg['name'];
     if (JFile::exists($uploadImg['tmp_name'])) {
         if (!self::checkImage($uploadImg['type'])) {
             $result['success'] = true;
             $result['uploaded'] = false;
             $result['img_path'] = null;
             $result['title'] = JText::_('Error');
             $result['content'] = JText::_('Only .gif,.png,.jpeg is allowed');
             $result = oseJson::encode($result);
             oseExit($result);
         }
         $result['img_path'] = OSEMSC_F_URL . "/assets/tmpl_image/{$uploadImg['name']}";
         //$uploadImg['tmp_name'].'.png';
         if (JFile::upload($uploadImg['tmp_name'], $des)) {
             $result['uploaded'] = true;
         }
         $result = oseJson::encode($result);
         oseExit($result);
     }
     $result = oseJson::encode($result);
     oseExit($result);
 }
示例#30
0
defined('_JEXEC') or die("Direct Access Not Allowed");
$error_msg = "";
oseHTML::script(oseMscMethods::getJsModPath('reg','reg'),'1.5');
echo $this->initJs();
?>
<style type="text/css">
	.combo-left	{
		text-align: left
	}
</style>

<script type="text/javascript">
Ext.onReady(function(){
	var headerObjs = <?php echo oseJson::encode($this->registerOS_header);?>;
	var bodyObjs = <?php echo oseJson::encode($this->registerOS_body);?>;
	var footerObjs = <?php echo oseJson::encode($this->registerOS_footer);?>;

	var oseViewRegfp = oseMsc.reg.buildForm2c.buildForm(Ext.get('osemsc-reg').getWidth());

	oseMsc.reg.fp = new oseMsc.payment.form(oseViewRegfp);


	oseMsc.reg.n = 0;
	oseMsc.reg.fp.onLoadAddons = function(addons,position,getForm)	{
		Ext.each(addons, function(item,i,all)	{
			var sort = oseMsc.reg.n % 2;
			sort = String(sort); // 1-left,0-right
			if(item.addon_name == 'oseMscAddon.msc_cart' || item.addon_name == 'oseMscAddon.coupon')	{
				var posItem = eval("this.fp."+'left');
			}	else	{
				var posItem = eval("this.fp."+'right');