Inheritance: extends Gpf_Object
Ejemplo n.º 1
0
 /**
  * @param string $saleScriptUrl Url to sale.php script
  */
 public function __construct($saleScriptUrl, $debug = false) {
     $session = new Gpf_Api_Session(str_replace('sale.php', 'server.php', $saleScriptUrl));
     if ($debug) {
         $session->setDebug(true);
     }
     parent::__construct($session);
 }
Ejemplo n.º 2
0
 public function __construct(Gpf_Api_Session $session) {
     if($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
 		throw new Exception("This class can be used only by merchant!");
 	} else {
 		parent::__construct("Pap_Merchants_Banner_BannersGrid", "getRows", $session);
 	}
 }
 public function __construct(Gpf_Api_Session $session) {
 	if($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
 		$className = "Pap_Affiliates_Reports_TransactionsGrid";
 	} else {
 		$className = "Pap_Merchants_Transaction_TransactionsGrid";
 	}
 	parent::__construct($className, "getRows", $session);
 }
Ejemplo n.º 4
0
 public function __construct(Gpf_Api_Session $session) {
     if($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
         throw new Gpf_Exception('Only merchant can view payouts grid. Please login as merchant.');
     }
     
     $className = 'Pap_Merchants_Payout_PayAffiliatesGrid';
     parent::__construct($className, 'getRows', $session);
 }
Ejemplo n.º 5
0
 public function __construct(Gpf_Api_Session $session) {
     if($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
         throw new Exception("This class can be used only by merchant!");
     } else {
         $this->class = "Pap_Merchants_Transaction_TransactionsForm";
     }
      
     parent::__construct($session);
 }
Ejemplo n.º 6
0
 /**
  * Check the connection
  */
 public function checkConnection()
 {
     // If not login properly the construct launch an exception
     $connection = true;
     $session = new Gpf_Api_Session("http://" . $this->_credentials["domain"] . "/scripts/server.php");
     if (!@$session->login($this->_credentials["user"], $this->_credentials["password"], Gpf_Api_Session::AFFILIATE)) {
         $connection = false;
     }
     $this->_session = $session;
     return $connection;
 }
Ejemplo n.º 7
0
    public function __construct(Gpf_Api_Session $session) {
        if($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
            $this->class = "Pap_Affiliates_Profile_PersonalDetailsForm";
        } else {
            $this->class = "Pap_Signup_AffiliateForm";
        }
         
        parent::__construct($session);

        $this->addEqualField('username');
         
        $this->getDataFields();
    }
function pap_login()
{
    require_once dirname(__FILE__) . "/lib/PapApi.class.php";
    $session = new Gpf_Api_Session(URL_TO_PAP . "scripts/server.php");
    if (!$session->login(PAP_LOGIN, PAP_PASS)) {
        //if admin, show notice. else ignore
        if (current_user_can("manage_options")) {
            ?>
			<p>ERROR: Can't authenticate with Post Affiliates Pro. Check that your PAP credentials are correct in the PMPro Post Affiliates Pro plugin and that the Post Affiliates Pro API is not experiencing an outage. Response from PAP: <?php 
            echo $session->getMessage();
            ?>
</p>
		<?php 
        } else {
            //shhh... don't let users know
        }
    }
}
Ejemplo n.º 9
0
 public function __construct(Gpf_Api_Session $session)
 {
     if ($session->getRoleType() == Gpf_Api_Session::AFFILIATE) {
         throw new Gpf_Exception('Only merchant can view payouts history. Please login as merchant.');
     }
     parent::__construct('Pap_Merchants_Payout_PayoutsHistoryGrid', 'getRows', $session);
 }
Ejemplo n.º 10
0
 private function includeJavascript() {
     $trackjsUrl = str_replace('server.php', 'trackjs.php', $this->session->getUrl());
     echo '<script id="pap_x2s6df8d" src="'.$trackjsUrl.'" type="text/javascript"></script>';
 }
Ejemplo n.º 11
0
	public static function cancel($params)
	{
		$result = array();
		$result['success'] = true;
		
		if(empty($params['allow_work']))
		{
			$result['success'] = false;
			$result['title'] = JText::_('Error');
			$result['content'] = JText::_('Error Join.PAP');
			
			return $result;
		}
		unset($params['allow_work']);
		
		$msc_id = $params['msc_id'];
		$member_id = $params['member_id'];
		$order_id = $params['order_id'];
		
		$oseMscConfig = oseRegistry::call('msc')->getConfig('thirdparty','obj');
		
		if(empty($oseMscConfig->pap_enable))
		{
			return $result;
		}
		
		require_once(OSEMSC_B_LIB.DS.'PapApi.class.php');
		$session = new Gpf_Api_Session($oseMscConfig->pap_url.'/scripts/server.php');
		if(empty($oseMscConfig->pap_username) || empty($oseMscConfig->pap_password))
		{
			return $result;
		}
		if(!$session->login(oseObject::getValue($oseMscConfig,'pap_username'), oseObject::getValue($oseMscConfig,'pap_password'))) {
			$result['success'] = false;
			$result['title'] = JText::_('Error');
			$result['content'] = $session->getMessage();
			return $result;
		}
		
		//loading transaction by orderid
		$transaction = new Pap_Api_Transaction($session);
		$transaction->setOrderId($order_id);
		$transaction->setType('S');
		//$transaction->setAccountId(oseObject::getValue($oseMscConfig,'pap_account_id','default1'));
		try {
			if(!$transaction->load()) {
		    	echo 'Cannot load transaction, error: '.$transaction->getMessage();
		  	} else {
			    $response = $transaction->refund('note for affiliate'); // or $transaction->chargeBack('note for affiliate');
			    if ($response->isError()) {
					$result['success'] = false;
					$result['title'] = JText::_('Error');
					$result['content'] = JText::_("PAP.cancel.error1");
			    } else {
			        //echo 'chargeback OK';
			       
					$result['success'] = true;
					$result['title'] = JText::_('Done');
					$result['content'] = JText::_("Done");
			    } 
		  	}
		} catch (Exception $e) {
		  	$result['success'] = false;
			$result['title'] = JText::_('Error');
			$result['content'] = JText::_("PAP.cancel.error2");
		}
		
		
		
		return $result;
	}
Ejemplo n.º 12
0
 private function corresponsApiVersion()
 {
     return $this->remoteApiVersion === Gpf_Api_Session::getAPIVersion(Gpf_Api_DownloadAPI::API_BASE_PATH . Gpf_Application::getInstance()->getApiFileName());
 }
Ejemplo n.º 13
0
	public static function renew($params)
	{
		if(!class_exists('oseMscPublic'))
		{
			require_once(OSEMSC_F_HELPER.DS.'oseMscPublic.php');
		}
		$result = array();
		$result['success'] = true;
		
		if(empty($params['allow_work']))
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('Error Renew.Order');
			
			return $result;
		}
		//unset($params['allow_work']);
		
		$oseMscConfig = oseRegistry::call('msc')->getConfig('thirdparty','obj');
		
		if(empty($oseMscConfig->pap_enable))
		{
			return $result;
		}
		
		if(empty($oseMscConfig->pap_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);
		$recurrence_times = ($curOrderParams->has_trial)?oseObject::getValue($curOrderParams,'recurrence_times',0)+1:oseObject::getValue($curOrderParams,'recurrence_times',0);
		$member = oseRegistry::call('member');
		$member->instance($member_id);
		$userInfo = $member->getUserInfo('obj');
		
		$memParams = $member->getMemberInfo($msc_id,'obj')->memParams;
		$memParams = oseJSON::decode($memParams);
		
		$usePAPUserId = false;
		require_once(OSEMSC_B_LIB.DS.'PapApi.class.php');
		
		if(!oseObject::GetValue($memParams,'pap_visitorid',oseObject::getValue($curOrderParams,'pap_visitorid',false)))
		{
			
			if(oseObject::GetValue($memParams,'pap_userid',false))
			{
				$usePAPUserId = true;
			}	
			else
			{
				// check whether has table in old version 4.4
				$tableList = $db->getTableList();
				if(in_array($db->replacePrefix('#__osemsc_affiliate_tracking'),$tableList))
				{
					$session = new Gpf_Api_Session($oseMscConfig->pap_url.'/scripts/server.php');
		
					if(!$session->login(oseObject::getValue($oseMscConfig,'pap_username'), oseObject::getValue($oseMscConfig,'pap_password'))) {
						$result['success'] = false;
						$result['title'] = JText::_('Error');
						$result['content'] = $session->getMessage();
						return $result;
					}
					$request = new Pap_Api_TransactionsGrid($session);
					// set filter
					//$request->addFilter('dateinserted', Gpf_Data_Filter::DATERANGE_IS, Gpf_Data_Filter::RANGE_THIS_YEAR);
					$request->addFilter('orderid', Gpf_Data_Filter::EQUALS, $order_id);
					$request->setLimit(0, 30);
					$request->setSorting('orderid', false);
					$request->sendNow();
					$grid = $request->getGrid();
					$recordset = $grid->getRecordset();
					
					if($grid->getTotalCount() > 0)
					{
						$usePAPUserId = true;
						foreach($recordset as $rec) 
						{	
					  		$memParams->pap_userid = $rec->get('userid');
					  		break;
						}
					}
					else
					{
						return $result;
					}
				}
				else
				{
					return $result;
				}
			}
		}
		else
		{
			$memParams->pap_visitorid = oseObject::GetValue($memParams,'pap_visitorid',oseObject::getValue($curOrderParams,'pap_visitorid'));
		}
		//oseObject::GetValue($memParams,'pap_visitorid',oseObject::getValue($curOrderParams,'pap_visitorid',false));
		
		$memParams->first_ip = oseObject::getValue($memParams,'first_ip',oseObject::getValue($curOrderParams,'first_ip',oseMscPublic::getIP()));
		$memParams->pap_url = OSEMSC_B_LIB;
		$memParams_encode = oseJSON::encode($memParams);
			
		$query = " UPDATE `#__osemsc_member`"
				." SET `params` = ".$db->Quote($memParams_encode)
				." WHERE `msc_id` = '{$msc_id}' AND `member_id` = '{$member_id}'"
				;
		$db->setQuery($query);
		if(!oseDB::query())
		{
			$result['success'] = false;
			$result['title'] = 'Error';
			$result['content'] = JText::_('Error Join.Order.2');
			return $result;
		}
		
		try {
			$msc = oseRegistry::call('msc');
			
			$where = array();
			$where[] = "`order_item_id` = '{$order_item_id}'";
			
			$curOrderItem = $payment->getInstance('Order')->getOrderItem($where,'obj');
			$curOrderItemParams = oseJson::decode($curOrderItem->params);
			
			$node = $msc->getInfo($msc_id,'obj');
			$paymentInfos = $msc->getExtInfo($msc_id,'payment');
			foreach($paymentInfos as $key => $paymentInfo)
			{
				if($key != $curOrderItemParams->msc_option)
				{
					unset($paymentInfos[$key]);
				}
			}
			$cart = oseMscPublic::getCart();

	    	$osePaymentCurrency = $cart->get('currency');

			$options = oseMscPublic::generatePriceOption($node,$paymentInfos,$osePaymentCurrency);
			
	        $saleTracker = new Pap_Api_SaleTracker($oseMscConfig->pap_url.'/scripts/sale.php');
			$saleTracker->setAccountId(oseObject::getValue($oseMscConfig,'pap_account_id','default1'));
			$sale1 = $saleTracker->createSale();
			if($usePAPUserId)
			{
				$sale1->setAffiliateID($memParams->pap_userid);
			}
			else
			{
				$saleTracker->setVisitorId($memParams->pap_visitorid);
			}
			
			$sale1->setTotalCost($curOrder->payment_price);
			$sale1->setOrderID($order_id);
			$sale1->setProductID("{$node->title}-{$options[0]['title']}");
			$sale1->setData1($userInfo->email);
			$sale1->setData2($userInfo->jname);
			$sale1->setData3($memParams->first_ip);
			$sale1->setData4($curOrder->payment_serial_number);
			$sale1->setData5("{$curOrder->order_id}-{$node->title}-{$options[0]['title']}-#recurrence:{$recurrence_times}");
			$saleTracker->register();
			
			return $result;
	    } catch (Exception $e) {
	    	return $result;
	    }
	}
Ejemplo n.º 14
0
 function admin_update_hc_affiliate_settings()
 {
     global $wpdb;
     check_ajax_referer('hyconspecialsecurityforajaxstring', 'security');
     $earn_money = isset($_POST['hc_check_affiliate']) && $_POST['hc_check_affiliate'] == "checked" ? 1 : 0;
     $update1 = update_option('hc_earn_money', $earn_money);
     if ($_POST['type'] == 0) {
         0;
         die;
     }
     if ($_POST['hc_manual'] == 1) {
         update_option('hc_affiliate_link', $_POST['hc_manual_link']);
         update_option('hc_affiliate_valid', 1);
         echo 5;
         die;
     }
     if ($earn_money == 1 && isset($_POST['hc_affiliate_email']) && $_POST['hc_affiliate_email'] != '') {
         $update2 = update_option('hc_affiliate_email', $_POST['hc_affiliate_email']);
         if (!class_exists('Gpf_Api_Session')) {
             include 'includes/apis/PapApi.class.php';
         }
         $session = new Gpf_Api_Session("http://affiliates.swissmademarketing.com/scripts/server.php");
         if (!$session->login("*****@*****.**", "hd73kAb38UrG2Hkdl")) {
             echo 3;
         }
         $emailAddress = $_POST['hc_affiliate_email'];
         $affiliate = new Pap_Api_Affiliate($session);
         $affiliate->setUsername($emailAddress);
         try {
             $affiliate->load();
         } catch (Exception $e) {
             update_option('hc_affiliate_valid', 0);
             echo 3;
             die;
         }
         $affiliate_link = "http://www.hybrid-connect.com/#a_aid=" . $affiliate->getRefid();
         echo "Your affiliate link has been added! (<a href= '" . $affiliate_link . "' target='_blank'>" . $affiliate_link . "</a>)";
         update_option('hc_affiliate_link', $affiliate_link);
         update_option('hc_affiliate_valid', 1);
         die;
     }
     echo 3;
     die;
 }