﻿<?php

#Create Post Information
// Account vars
$vars =  array();

$vars['IsValidationOnly'] = "true"; // Use On development Only!;

$vars['Oparation'] = "create";
$vars["UserName"] = "AAAA"; // delar user name
$vars["Password"] ="BBBB"; // delar password 
$vars["Secret"] = "CCCCC"; // delar Secret 
$vars['codepage'] = '65001'; // unicode
$vars['PaymentInfo.PayingAuthorizationType'] = '2'; 
$vars['SupportCallToNewCompany'] = 'false'; //  not working at the moment.

// ****************
// New Company Info
// ****************

// req :
$vars['CompanyInfo.Name'] = 'NewComp'; //  req
$vars['CompanyInfo.BusinessRegistrationNumber'] = '040617649'; //  req
$vars['CompanyInfo.Email'] = 'a@a.co.il'; //  req
$vars['CompanyInfo.PhoneLine'] = '0396352741'; // 
$vars['CompanyInfo.PhoneMobile'] = '0547894561'; // 

// not Req:
$vars['CompanyInfo.Activity'] = 'sales'; // 
$vars['CompanyInfo.Addres'] = 'hrokmin'; // 
$vars['CompanyInfo.City'] = 'kolon'; // 
$vars['CompanyInfo.ContactMan'] = 'yaniv'; // 
$vars['CompanyInfo.PhoneFax'] = '9624347';
$vars['CompanyInfo.ZipCode'] = '1234567';
$vars['CompanyInfo.IsVatFreeCompany'] = 'false'; 

// ****************
//  User Info
// *****************

// Req
$vars['UserInfo.Name'] = 'yaniv'; // 
$vars['UserInfo.IdentityNumber'] = '040617649'; // 
$vars['UserInfo.LogInName'] = 'SupABC1'; // 
$vars['UserInfo.LogInPassword'] = 'abc123!asd'; // 


// Not Req , if different from company :
//$vars['UserInfo.Addres'] = 'aa'; // 
//$vars['UserInfo.City'] = 'aa'; // 
//$vars['UserInfo.Email'] = 'aa'; // 
//$vars['UserInfo.PhoneFax'] = 'aa'; // 
//$vars['UserInfo.PhoneLine'] = 'aa'; // 
//$vars['UserInfo.PhoneMobile'] = 'aa'; // 
//$vars['UserInfo.ZipCode'] = 'aa'; // 



// ******************
// Terminal Info 
// ******************
// Req :
$vars['TerminalInfo.TerminalType'] = '4'; //  Upay
$vars['TerminalInfo.UpayHaveExsistingAccount'] = 'false';
$vars['TerminalInfo.UpayBankCode'] = '12'; 
$vars['TerminalInfo.UpayBranchCode'] = '123'; 
$vars['TerminalInfo.UpayAccountNumber'] = '1234567'; 
$vars['TerminalInfo.UpayLogInEmail'] = 'a@a.co.il'; 
$vars['TerminalInfo.UpayLogInPassword'] = 'a@a.co.il'; 

// ******************
// Modules to open
// ******************


$vars['TerminalInfo.ModuleList.ModuleID'] = 'ModuleCodeA'; //  ask the module code from CardCom sales .



// Send Data To Bill Gold Server
$r = PostVars($vars,'https://secure.cardcom.solutions/Interface/CompanyOperations.aspx');

echo $r;

parse_str($r,$responseArray);
if($responseArray['ResponseCode']==0)
{
  // Save In DB:
    echo "CompanyInternalID: " . $responseArray['CompanyInternalID'];
    echo "TerminalNumber: " . $responseArray['TerminalNumber'];
    echo "APIUserName: " . $responseArray['APIUserName'];
    echo "APISecret: " . $responseArray['APISecret'];
}
else
{
// if($responseArray['ShowErrorToEndUser']==true)
   if(true)
 {
    echo "Show Error To User : " .$responseArray['Description'];
 }
  else
 {
    echo "ResponseCode : " . $responseArray['ResponseCode'];
    echo "Developer  Error ! send email alert : " . $responseArray['Description'];
 }
}


function PostVars($vars,$PostVarsURL)
{
  $urlencoded = http_build_query($vars);
  #init curl connection
  if( function_exists( "curl_init" )) 
  { 
     $CR = curl_init();
    curl_setopt($CR, CURLOPT_URL, $PostVarsURL);
    curl_setopt($CR, CURLOPT_POST, 1);
    curl_setopt($CR, CURLOPT_FAILONERROR, true);
    curl_setopt($CR, CURLOPT_POSTFIELDS, $urlencoded );
    curl_setopt($CR, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($CR, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($CR, CURLOPT_FAILONERROR,true);
    #actual curl execution perfom
    $r = curl_exec( $CR );
    $error = curl_error ( $CR );
    # some error , send email to developer
    if( !empty( $error )) {

      echo $error;

      die();
    }
   curl_close( $CR );
   return $r;
 }
  else
 {
  echo "No curl_init" ;
  die();
  }
}

?>