Example #1
0
 static function getConfig($config_type = null, $type = 'array')
 {
     $db = oseDB::instance();
     $where = array();
     if (!empty($config_type)) {
         if (is_array($config_type)) {
             $values = array();
             foreach ($config_type as $configType) {
                 $values[] = $db->Quote($configType);
             }
             $where[] = 'type IN (' . implode(',', $values) . ')';
         } else {
             $where[] = 'type=' . $db->Quote($config_type);
         }
     }
     $where = oseDB::implodeWhere($where);
     $query = " SELECT * FROM `#__osemsc_configuration` " . $where;
     $db->setQuery($query);
     $objs = oseDB::loadList('obj');
     if ($type == 'array') {
         $config = array();
         foreach ($objs as $obj) {
             $config[$obj->key] = $obj->value;
             //oseObject::setValue($config,$obj->key,$obj->value);
         }
     } else {
         $config = new stdClass();
         foreach ($objs as $obj) {
             $config->{$obj->key} = $obj->value;
             //oseObject::setValue($config,$obj->key,$obj->value);
         }
     }
     /*foreach($objs as $obj)
     		{
     			$config = oseObject::setValue($config,$obj->key,$obj->value);
     		}*/
     $config = oseObject::setValue($config, 'id', 1);
     return $config;
 }
Example #2
0
 function getFullTree($start, $limit)
 {
     $msc = oseRegistry::call('msc');
     $return = array();
     $items = array();
     $items = $msc->retrieveTree();
     $return['total'] = count($items);
     $list = array_slice($items, $start, $limit);
     foreach ($list as $key => $item) {
         $members = $msc->getMembers(oseObject::getValue($item, 'id'), 0, 0, 0, 'obj');
         $totalExp = oseObject::getValue($members, 'total', 0);
         $members = $msc->getMembers(oseObject::getValue($item, 'id'), 1, 0, 0, 'obj');
         $totalAct = oseObject::getValue($members, 'total', 0);
         $total = $totalAct + $totalExp;
         $item = oseObject::setValue($item, 'total', $total);
         $item = oseObject::setValue($item, 'totalExp', $totalExp);
         $item = oseObject::setValue($item, 'totalAct', $totalAct);
         $list[$key] = $item;
     }
     $return['results'] = $list;
     return $return;
 }
	public static function getJoinHistory()
	{
		$db= oseDB :: instance();
		$my = JFactory::getUser();
		$member_id = $my->id;
		
		$msc_id = JRequest :: getInt('msc_id', '0');
		$start = JRequest::getInt('start',0);
		$limit = JRequest::getInt('limit',20);
		
		$query = " SELECT COUNT(*) FROM `#__osemsc_member_history` "
				." WHERE `msc_id` = '{$msc_id}' AND `member_id` = '{$member_id}'"
				;
		$db->setQuery($query);
		$total = $db->loadResult();
		
		$query = " SELECT * FROM `#__osemsc_member_history` "
				." WHERE `msc_id` = '{$msc_id}' AND `member_id` = '{$member_id}'"
				." ORDER BY id DESC"
				;
		$db->setQuery($query,$start,$limit);
		$items = oseDB :: loadList();
		foreach($items as $key => $item)
		{
			$globalConfig = oseRegistry::call('msc')->getConfig('global','obj');
			if(!empty($globalConfig->DateFormat))
			{
				$items[$key]= oseObject::setValue($item,'date',date($globalConfig->DateFormat,strtotime($item['date'])));
			}
		}
		$result = array();
		
		$result['total'] = $total;
		$result['results'] = $items;	
		
		$result = oseJson :: encode($result);
		oseExit($result);
	}
Example #4
0
	public function getOrdersMobile()
	{
		$db = oseDB::instance();
		$my = JFactory::getUser();

		$start = JRequest::getInt('start',0);
		$limit = JRequest::getInt('limit',999);

		$where = array();

		$where[] = "o.user_id = '{$my->id}'";
		$where[] = "o.entry_type IN ('msc','msc_list')";

		$where = oseDB::implodeWhere($where);

		$query = " SELECT u.username,u.name, o.* "
		." FROM `#__osemsc_order` AS o "
		." INNER JOIN `#__users` AS u ON u.id = o.user_id"
		. $where
		." LIMIT {$start},999 "
		;

		$db->setQuery($query);
		//oseExit($db->_sql);
		//oseExit($db->getQuery());
		$items = oseDB::loadList();

		$gw = oseRegistry::call('payment')->getInstance('GateWay');
		foreach($items as $key => $item)
		{
			$gwInfo = $gw->getGWInfo(oseObject::getValue($item,'payment_method'));
			if(oseObject::getValue($gwInfo,'is_cc',0) == 1)
			{
				$items[$key] = oseObject::setValue($item,'payment_method','Credit Card');
			}
			if ($item['order_status']=='confirmed' || $item['order_status']=='pending')
			{
				$items[$key]=oseObject::setValue($item,'order_status',JText::_(strtoupper($items[$key]['order_status'])));
			}
			if (isset($item['payment_method']))
			{
				$items[$key]=oseObject::setValue($item,'payment_method',JText::_(strtoupper($items[$key]['payment_method'])));
			}

			$globalConfig = oseRegistry::call('msc')->getConfig('global','obj');
			if(!empty($globalConfig->DateFormat))
			{
				$items[$key]= oseObject::setValue($item,'create_date',date($globalConfig->DateFormat,strtotime($item['create_date'])));
			}
		}

		$result = array();
		$result['total'] = $this->getTotal();
		$result['results'] = $items;
		return $result;
	}
Example #5
0
	function getMscList_M()
	{
		$cartItems = oseMscPublic::getCartItems();
		///$item = $items[0];

		$db = oseDB::instance();

		$where = array();

		$where[] = "published = 1";

		$msc_option = 0;

		if(!empty($items[0]))
		{
			$msc_id = oseObject::getValue($items[0],'entry_id');

			if(!empty($msc_id))
			{
				$where[] = "id = {$msc_id}";
			}
			$msc_option = oseObject::getValue($items[0],'msc_option');
		}

		$where = oseDB::implodeWhere($where);

		$query = " SELECT * FROM `#__osemsc_acl`"
				. $where
				." ORDER BY lft ASC"
				;

		$db->setQuery($query);

		$objs = oseDB::loadList('obj');

		//$mscExtend = oseRegistry::call('msc')->getConfig('global','obj')->msc_extend;

		$items = array();

		$session =& JFactory::getSession();
    	$osePaymentCurrency = $session->get('osePaymentCurrency',oseRegistry::call('msc')->getConfig('currency','obj')->primary_currency);

		foreach($objs as  $obj)
		{


			if(empty($msc_option))
			{
				$paymentInfos = oseRegistry::call('msc')->getExtInfo($obj->id,'payment','array');
				//oseExit($paymentInfos);
				foreach($paymentInfos as $key => $paymentInfo)
				{
					$fItem = oseRegistry::call('msc')->getPaymentMscInfo($obj->id,$osePaymentCurrency,$key);
					$fItem = oseObject::setValue($fItem,'msc_option',$key);
					$items[] = $fItem;

				}
			}
			else
			{
				$fItem = oseRegistry::call('msc')->getPaymentMscInfo($obj->id,$osePaymentCurrency,$msc_option);
				$fItem = oseObject::setValue($fItem,'msc_option',$msc_option);
				$items[] = $fItem;
			}

		}

		$total = count($items);

		$result = array();

		if($total > 0)
		{
			$result['total'] = $total;
			$result['results'] = $items;
		}
		$result = oseJson::encode($result);

		oseExit($result);
	}
Example #6
0
 private function ordering($id, $msc_id, $orderingChange)
 {
     $db = oseDB::instance();
     //$post = JRequest::get('post');
     $extItem = oseRegistry::call('msc')->getExtInfoItem($msc_id, 'payment', 'obj');
     $extItem->params = empty($extItem->params) ? array() : $extItem->params;
     $items = oseJson::decode($extItem->params, true);
     // if no ordering exists, resort it.
     $i = 1;
     foreach ($items as $key => $item) {
         if (!oseObject::getValue($item, 'ordering', 0)) {
             $item = oseObject::setValue($item, 'ordering', $i);
             $items[$key] = $item;
         } else {
             break;
         }
         $i++;
     }
     if (oseObject::getValue($items[$id], 'ordering') == 1 && $orderingChange < 0) {
         return true;
     }
     if (oseObject::getValue($items[$id], 'ordering') == count($items) && $orderingChange > 0) {
         return true;
     }
     // get new array by ordering
     $nItems = array();
     foreach ($items as $key => $item) {
         $ordering = oseObject::getValue($item, 'ordering');
         $nItems[$ordering] = $item;
     }
     ksort($nItems);
     $curOrdering = oseObject::getValue($items[$id], 'ordering');
     $curItem = $nItems[$curOrdering];
     $toOrdering = $curOrdering + $orderingChange;
     $toItem = $nItems[$toOrdering];
     // resort the ordering
     $i = 1;
     $rItems = array();
     foreach ($nItems as $key => $item) {
         if ($i == $curOrdering) {
             $rItems[$i] = $toItem;
         } elseif ($i == $toOrdering) {
             $rItems[$i] = $curItem;
         } else {
             $rItems[$i] = $item;
         }
         $i++;
     }
     // restore key: id
     $i = 1;
     $items = array();
     foreach ($rItems as $key => $item) {
         $nkey = oseObject::getValue($item, 'id');
         $items[$nkey] = oseObject::setValue($item, 'ordering', $key);
     }
     $where = array();
     $where[] = 'id = ' . $db->Quote($msc_id);
     $where[] = 'type = ' . $db->Quote('payment');
     $newParams = $db->Quote(oseJson::encode($items));
     $where = oseDB::implodeWhere($where);
     $query = " UPDATE `#__osemsc_ext` " . " SET " . " params = {$newParams} " . $where;
     $db->setQuery($query);
     if (oseDB::query()) {
         return true;
     } else {
         return false;
     }
 }
	public static function getItems($params = array())
	{
		$my = JFactory::getUser();
		
		$member_id = $my->id;
		
		$member = oseRegistry::call('member');
		
		$member->instance($member_id);
		
		$items = array();
		$memAllInfos = $member->getAllOwnedMsc(true,0,'obj');
		
		$db = oseDB::instance();
		$query = " SELECT * FROM `#__osemsc_acl`"
				//." WHERE `published` = 1"
				;
		$db->setQuery($query);
		$objs = oseDB::loadList('obj');
		
		$mscIds = array();
		foreach($objs as $obj)
		{
			$mscIds[] = $obj->id;
		}
		
		foreach($memAllInfos as $key => $memAllInfo)
		{
			if(!in_array($memAllInfo->msc_id,$mscIds))
			{
				unset($memAllInfos[$key]);
				continue;
			}
			$memParams = oseJson::decode($memAllInfo->params);
			
			if( $memParams->payment_mode == 'a' )
			{
				if($memAllInfo->status == 0)
				{
					$items[] = $memAllInfo;
				}
			}
			else
			{
				$items[] = $memAllInfo;
			}
		}
			
		foreach($items as $item)
		{
			$mscInfo = oseRegistry::call('msc')->getInfo($item->msc_id,'obj');
			$item = oseObject::setValue($item,'msc_name',$mscInfo->title);
		}
		
		$result = array();
		
		if(count($items) < 1)
		{
			$result['total'] = 0;
			$result['results'] = '';
		}
		else
		{
			$result['total'] = count($items);
			$result['results'] = $items;
		}
		
		return $result;
	}
 function setExchangeRateList($rateList)
 {
     $rateList = oseObject::setValue($rateList, $this->pCurrency, array('currency' => $this->pCurrency, 'rate' => 1));
     $this->rateList = $rateList;
 }
 function updateOrderParams($orderInfo, $params)
 {
     $orderInfoParams = oseObject::getValue($orderInfo, 'params');
     $orderInfoParams = oseJson::decode($orderInfoParams);
     if (!is_Array($params)) {
         $params = (array) $params;
     }
     foreach ($params as $key => $value) {
         $orderInfoParams = oseObject::setValue($orderInfoParams, $key, $value);
     }
     $orderInfoParams = oseJson::encode($orderInfoParams);
     $orderInfo = oseObject::setValue($orderInfo, 'params', $orderInfoParams);
     return $orderInfo;
 }
Example #10
0
 function getUsersTable($id)
 {
     $db = oseDB::instance();
     $where = array();
     $where[] = "c.`coupon_id` = '{$id}'";
     $where = oseDB::implodeWhere($where);
     $query = " SELECT c.* FROM `#__osemsc_coupon_user` AS c " . $where;
     $db->setQuery($query);
     //oseExit($db->_sql);
     $items = oseDB::loadList();
     //oseExit($items);
     foreach ($items as $key => $item) {
         $user_id = oseObject::getValue($item, 'user_id');
         $query = " SELECT * FROM `#__users`" . " WHERE `id` = '{$user_id}'";
         $db->setQuery($query);
         $obj = oseDB::loadItem('obj');
         $item = oseObject::setValue($item, 'username', oseObject::getValue($obj, 'username'));
         $items[$key] = $item;
     }
     $html = $this->generateTable($items);
     return $html;
 }
Example #11
0
	public static function getMscInfo($params = array()) {
		$my = JFactory::getUser();
		$msc_id = JRequest::getInt('msc_id', 0);
		$member_id = $my->id;
		$db = oseDB::instance();
		$query = " SELECT * FROM `#__osemsc_member`" . " WHERE member_id = {$member_id} AND msc_id = {$msc_id}";
		$db->setQuery($query);
		$item = oseDB::loadItem('obj');
		$memParams = oseJson::decode($item->params);
		//order
		$orderId = oseObject::getValue($memParams, 'order_id');
		$orderInfo = oseRegistry::call('payment')->getInstance('Order')->getOrder(array('order_id = ' . $orderId), 'obj');
		//order item
		$orderItemId = oseObject::getValue($memParams, 'order_item_id', 'm');
		$orderItemInfo = oseRegistry::call('payment')->getInstance('Order')->getOrderItem(array('0' => 'order_item_id = ' . $orderItemId), 'obj');
		$orderItemInfoParams = oseJson::decode($orderItemInfo->params);
		$msc = oseRegistry::call('msc');
		$node = $msc->getInfo($msc_id, 'obj');
		$paymentInfos = $msc->getExtInfo($msc_id, 'payment');
		$paymentInfo = $paymentInfos[oseObject::getValue($orderItemInfoParams, 'msc_option')];
		$option = oseMscPublic::generatePriceOption($node, array($paymentInfo), 'USD');
		if (oseObject::getValue($memParams, 'payment_mode', 'm') == 'm') {
			$titlePaymentMode = JText::_('MANUAL_BILLING');
			$query = " SELECT acl.*,mem.*, (SELECT DATEDIFF(mem.expired_date,NOW())) AS days_left " . " ,mem.`expired_date` AS `real_expired_date`"
					. " FROM `#__osemsc_member` AS mem " . " INNER JOIN `#__osemsc_acl` AS acl ON acl.id = mem.msc_id"
					. " WHERE mem.member_id = {$member_id} AND mem.msc_id = {$msc_id}";
		} else {
			$titlePaymentMode = JText::_('AUTOMATIC_BILLING');
			$query = " SELECT acl.*,mem.*, (SELECT DATEDIFF(mem.expired_date,NOW()) - 1) AS days_left " . " ,DATE_SUB(mem.`expired_date`,INTERVAL 1 DAY) AS `real_expired_date`"
					. " FROM `#__osemsc_member` AS mem " . " INNER JOIN `#__osemsc_acl` AS acl ON acl.id = mem.msc_id"
					. " WHERE mem.member_id = {$member_id} AND mem.msc_id = {$msc_id}";
		}
		$db->setQuery($query);
		$item = oseDB::loadItem();
		$globalConfig = oseRegistry::call('msc')->getConfig('global', 'obj');
		if ($item['start_date'] != '0000-00-00 00:00:00' && !empty($globalConfig->DateFormat)) {
			$item = oseObject::setValue($item, 'start_date', date($globalConfig->DateFormat, strtotime($item['start_date'])));
		}
		if ($item['real_expired_date'] != '0000-00-00 00:00:00' && !empty($globalConfig->DateFormat)) {
			$item = oseObject::setValue($item, 'real_expired_date', date($globalConfig->DateFormat, strtotime($item['real_expired_date'])));
		}
		if (oseObject::getValue($item, 'eternal', false)) {
			$item = oseObject::setValue($item, 'real_expired_date', JText::_('LIFE_TIME'));
			$item = oseObject::setValue($item, 'days_left', JText::_('INFINITED'));
		}
		$result = array();
		if (empty($item)) {
			$result['total'] = 0;
			$result['result'] = array();
		} else {
			$item['title'] = oseObject::getValue($option[0], 'title') . "({$titlePaymentMode})";
			$item['msc_option'] = oseObject::getValue($orderItemInfoParams, 'msc_option');
			$item['expired_date'] = $item['real_expired_date'];
			$item['params'] = oseJson::decode($item['params']);
			if ($item['status'] == 1) {
				$exp_text = '';
				if (oseObject::getValue($memParams, 'payment_mode', 'm') == 'a') {
					if (in_array($orderInfo->order_status, array('cancelled'))) {
						$exp_text = ' until ' . $item['expired_date'];
					}
				}
				$item['status'] = JText::_('ACTIVE') . ' ' . $exp_text;
			} else {
				$item['status'] = JText::_('INACTIVE');
			}
			$item['payment_mode_text'] = ($item['params']->payment_mode == 'm') ? JText::_('MANUAL_RENEWING') : JText::_('AUTOMATIC_RENEWING');
			if (empty($paymentInfo)) {
				$item['interval'] = '--';
			} else {
				$item['interval'] = oseObject::getValue($paymentInfo, 'p3') . ' ' . JText::_(strtoupper(oseObject::getValue($paymentInfo, 't3'))) . '(s)';
			}
			$result['total'] = 1;
			$result['result'] = $item;
		}
		return $result;
	}
Example #12
0
 public static function getExtInfo($msc_id, $xtype, $type = 'array')
 {
     $db = oseDB::instance();
     $query = " SELECT * FROM `#__osemsc_ext` " . " WHERE id={$msc_id} AND type= " . $db->Quote($xtype);
     $db->setQuery($query);
     $item = oseDB::loadItem($type);
     $isData = $type == 'array' ? true : false;
     $extParams = oseObject::getValue($item, 'params');
     $data = oseJson::decode($extParams, $isData);
     $data = oseObject::setValue($data, 'id', $msc_id);
     return $data;
 }
Example #13
0
	private function sendEmail($user)
	{
		if (file_exists(JPATH_SITE.DS.'components'.DS.'com_osemsc'.DS.'init.php') && file_exists(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_ose_cpu'.DS.'define.php') && !file_exists(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_osemsc'.DS.'installer.dummy.ini'))
		{
			require_once(JPATH_SITE.DS.'components'.DS.'com_osemsc'.DS.'init.php');
		}
		$emailConfig = oseMscConfig::getConfig('email', 'obj');
		if (!empty($emailConfig->default_reg_email)) {
			$member = oseRegistry::call('member');
			$email = $member->getInstance('email');
			$emailTempDetail = $email->getDoc($emailConfig->default_reg_email, 'obj');
			if (!empty($emailTempDetail)) {
				$variables = $email->getEmailVariablesRegistration($user->id);
				$variables['user'] = oseObject::setValue($variables['user'], 'password', $user->password_clear);
				$emailParams = $email->buildEmailParams($emailTempDetail->type);
				$emailDetail = $email->transEmail($emailTempDetail, $variables, $emailParams);
				$email->sendEmail($emailDetail, $user->email);
				if ($emailConfig->sendReg2Admin) {
					$email->sendToAdminGroup($emailDetail, $emailConfig->admin_group);
				}
			}
		}
	}
Example #14
0
 function updateTaxParams($key, $value)
 {
     $params = $this->get('tax');
     $params = oseObject::setValue($params, $key, $value);
     $this->set('tax', $params);
 }
Example #15
0
 function getExtSpecificPayment($node, $msc_id, $type, $osePaymentCurrency, $option)
 {
     $payment = oseRegistry::call('msc')->getExtInfo($msc_id, 'payment', 'array');
     //$payment = oseJson::decode($payment->params,true);
     if (empty($payment)) {
         return false;
     }
     if (empty($option)) {
         $options = array_keys($payment);
         $option = $options[0];
     } else {
         $options = array_keys($payment);
         //print_r($options); oseExit($option);
         if (count($options) > 0) {
             if (!in_array($option, $options)) {
                 $option = $options[0];
             }
         } else {
             return false;
         }
     }
     if (!isset($payment[$option])) {
         return false;
     }
     $payment = $payment[$option];
     $node = oseObject::setValue($node, 'msc_option', $option);
     if (oseObject::getValue($payment, 'payment_mode') != $type && oseObject::getValue($payment, 'payment_mode') != 'b') {
         $type = oseObject::getValue($payment, 'payment_mode');
     }
     $node = oseObject::setValue($node, 'has_trial', oseObject::getValue($payment, 'has_trial'));
     $node = oseObject::setValue($node, 'recurrence_mode', oseObject::getValue($payment, 'recurrence_mode'));
     $node = $this->getPriceStandard($node, $payment, $osePaymentCurrency);
     if (oseObject::getValue($payment, 'recurrence_mode') == 'fixed') {
         //$period = oseHtml::date( oseObject::getValue($payment,'start_date')).' - '. oseHtml::date( oseObject::getValue($payment,'expired_date'));
         $start_date = date("l,d F Y", strtotime(oseObject::getValue($payment, 'start_date')));
         $expired_date = date("l,d F Y", strtotime(oseObject::getValue($payment, 'expired_date')));
         if ($start_date == $expired_date) {
             $period = $start_date;
         } else {
             $period = $start_date . ' - ' . $expired_date;
         }
         $node = oseObject::setValue($node, 'standard_recurrence', $period);
         $node = oseObject::setValue($node, 'first_raw_price', oseObject::getValue($node, 'standard_raw_price'));
         $node = oseObject::setValue($node, 'second_raw_price', oseObject::getValue($node, 'standard_raw_price'));
         $node = oseObject::setValue($node, 'first_price', oseObject::getValue($node, 'standard_price'));
         $node = oseObject::setValue($node, 'second_price', $osePaymentCurrency . ' ' . oseObject::getValue($node, 'standard_raw_price'));
         $node = oseObject::setValue($node, 'p3', 0);
         $node = oseObject::setValue($node, 't3', 'week');
         $node = oseObject::setValue($node, 'eternal', 0);
         $node = oseObject::setValue($node, 'start_date', oseObject::getValue($payment, 'start_date'));
         $node = oseObject::setValue($node, 'expired_date', oseObject::getValue($payment, 'expired_date'));
     } else {
         if (oseObject::getValue($payment, 'has_trial')) {
             $node = $this->getPriceTrial($node, $payment, $osePaymentCurrency);
             $node = oseObject::setValue($node, 'first_raw_price', oseObject::getValue($node, 'trial_raw_price'));
             $node = oseObject::setValue($node, 'second_raw_price', oseObject::getValue($node, 'standard_raw_price'));
             $node = oseObject::setValue($node, 'first_price', oseObject::getValue($node, 'trial_price'));
             $node = oseObject::setValue($node, 'second_price', oseObject::getValue($node, 'standard_price'));
             $node = oseObject::setValue($node, 'p1', oseObject::getValue($payment, 'p1'));
             $node = oseObject::setValue($node, 't1', oseObject::getValue($payment, 't1'));
         } else {
             $node = oseObject::setValue($node, 'first_raw_price', oseObject::getValue($node, 'standard_raw_price'));
             $node = oseObject::setValue($node, 'second_raw_price', oseObject::getValue($node, 'standard_raw_price'));
             $node = oseObject::setValue($node, 'first_price', oseObject::getValue($node, 'standard_price'));
             $node = oseObject::setValue($node, 'second_price', $osePaymentCurrency . ' ' . oseObject::getValue($node, 'standard_raw_price'));
         }
         $node = oseObject::setValue($node, 'p3', oseObject::getValue($payment, 'p3'));
         $node = oseObject::setValue($node, 't3', oseObject::getValue($payment, 't3'));
         $node = oseObject::setValue($node, 'eternal', oseObject::getValue($payment, 'eternal', 0));
     }
     return $node;
 }
Example #16
0
	function saveCart($post) {
		$result = array();
		$result['success'] = true;
		$result['reload'] = false;
		$result['script'] = false;
		$result['title'] = JText::_('SUCCESSFUL_ACTIVATION');
		$result['content'] = JText::_('MEMBERSHIP_ACTIVATED_CONTINUE');
		$juser = oseMscAddon::getPost('juser_', $post);
		$password1 = JRequest::getString('juser_password1', '', 'post', JREQUEST_ALLOWRAW);
		$password2 = JRequest::getString('juser_password2', '', 'post', JREQUEST_ALLOWRAW);
		if (oseObject::getValue($juser, 'firstname', false) && oseObject::getValue($juser, 'lastname', false)) {
			$juser['name'] = oseObject::getValue($juser, 'firstname', '') . ' ' . oseObject::getValue($juser, 'lastname', '');
		} else {
			$juser['name'] = oseObject::getValue($juser, 'username', false);
		}
		$juser['password'] = $juser['password1'] = $password1;
		$juser['password2'] = $password2;
		$juser['email1'] = $juser['email'];
		$juser['email2'] = $juser['email'];
		// check unique username
		$list = oseMscAddon::getAddonList('registerOS_body', false, 1, 'obj');
		foreach ($list as $addon) {
			$action_name = oseMscAddon::getActionName($addon, 'formValidate', 'register');
			$updated = oseMscAddon::runAction($action_name, array('inner' => true));
			if (!$updated['success']) {
				return $updated;
			}
		}
		if (!$updated['success']) {
			return $updated;
		}
		// check empty password
		if (empty($juser['password'])) {
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('MUST_SUPPLY_PASSWORD');
			return $result;
		}
		$register = oseMscPublic::juserRegister($juser);
		if (!oseObject::getValue($register, 'success', false)) {
			return $register;
		} else {
			$memConfig = oseMscConfig::getConfig('register', 'obj');
			if ($memConfig->auto_login) {
				$result['reload'] = true;
			}
			$list1 = oseMscAddon::getAddonList('registerOS_header', false, 1, 'obj');
			$list2 = oseMscAddon::getAddonList('registerOS_body', false, 1, 'obj');
			$list3 = oseMscAddon::getAddonList('registerOS_footer', false, 1, 'obj');
			$list = array_merge($list1, $list2, $list3);
			$user = oseObject::getValue($register, 'user');
			$cart = oseMscPublic::getCart();
			$items = $cart->get('items');
			$item = $items[0];
			$params = array();
			$params['msc_id'] = oseMscPublic::getEntryMscId($item);
			$params['msc_option'] = oseObject::getValue($item, 'msc_option');
			$params['payment_mode'] = $post['payment_payment_mode'];
			$params['member_id'] = $user->id;
			$params['payment_method'] = $post['payment_method'];
			foreach ($list as $addon) {
				$action_name = oseMscAddon::getActionName($addon, 'save', 'register');
				$updated = oseMscAddon::runAction($action_name, $params);
				if (!$updated['success']) {
					return $updated;
				}
			}
			$emailConfig = oseMscConfig::getConfig('email', 'obj');
			if (!empty($emailConfig->default_reg_email)) {
				$member = oseRegistry::call('member');
				$email = $member->getInstance('email');
				$emailTempDetail = $email->getDoc($emailConfig->default_reg_email, 'obj');
				if (!empty($emailTempDetail)) {
					$variables = $email->getEmailVariablesRegistration($user->id);
					$variables['user'] = oseObject::setValue($variables['user'], 'password', $juser['password1']);
					$emailParams = $email->buildEmailParams($emailTempDetail->type);
					$emailDetail = $email->transEmail($emailTempDetail, $variables, $emailParams);
					$email->sendEmail($emailDetail, $user->email);
					if ($emailConfig->sendReg2Admin) {
						$email->sendToAdminGroup($emailDetail, $emailConfig->admin_group);
					}
				}
			}
			if ($memConfig->auto_login) {
				$isLogin = $this->login($juser['username'], $juser['password']);
				if (!$isLogin['success']) {
					$session = JFactory::getSession();
					$return = $session->get('oseReturnUrl', base64_encode('index.php?option=com_osemsc&view=login'));
					$result['success'] = false;
					$result['title'] = 'Error';
					$result['content'] = $isLogin['content'];
					$result['returnUrl'] = $return;
					return $result;
				}
			}
			return $result;
		}
	}
Example #17
0
 function getBillingInfo($type = 'array')
 {
     $db = oseDB::instance();
     $query = " SELECT c.*,u.username,u.name,u.name AS jname, u.email AS user_email,u.id  FROM `#__users` AS u" . " LEFT JOIN `#__osemsc_billinginfo` AS c ON c.user_id = u.id" . " WHERE u.id = " . (int) $this->user_id;
     $db->setQuery($query);
     $item = oseDB::loadItem($type);
     $item = oseObject::setValue($item, 'user_id', oseObject::getValue($item, 'id', 0));
     return $item;
 }
Example #18
0
 function getEmails($email_type, $start, $limit, $type = 'array')
 {
     $db = oseDB::instance();
     $where = array();
     $items = array();
     $item = $type == 'array' ? array() : new stdClass();
     $item = oseObject::setValue($item, 'id', '0');
     $item = oseObject::setValue($item, 'subject', 'None');
     $items[] = $item;
     if (!empty($email_type)) {
         $where[] = ' type = ' . $db->Quote($email_type);
     }
     $where = oseDB::implodeWhere($where);
     $query = " SELECT * FROM `#__osemsc_email` " . $where;
     $db->setQuery($query, $start, $limit);
     $items = oseDB::loadList($type);
     $result = array();
     $result['total'] = $this->getTotal($email_type);
     $result['results'] = $items;
     return $result;
 }
 function setCartItems($items, $vkey, $value)
 {
     if (count($items) > 0) {
         foreach ($items as $key => $item) {
             $item = oseObject::setValue($item, $vkey, $value);
             $items[$key] = $item;
         }
     }
     $this->set('items', $items);
 }