Commit e1d0dddd authored by Antonio.Suerte's avatar Antonio.Suerte

EasyPaymentLink Integration

parent f71c91e3
<?php
include_once('config.php');
include_once($_SERVER['DOCUMENT_ROOT'] . '/logic/middleware/controller.php');
$logic = new ControlMiddleware();
$logic -> action();
?>
......@@ -22,7 +22,6 @@ include_once('template/base_head.php');
<p class="pleft40 mb20 respM">Please open your email to review and settle your deposit transaction.</p>
<div class="pleft40 pt10 mb20 respM">
<a href="menu.php" class="btn bg-default calign">Go back to homepage</a>
</div>
</article>
</div>
......
......@@ -42,10 +42,6 @@ include_once('template/base_head.php');
<th style="width: 180px;">Deposit Amount Due</th>
<td class="ralign"><?php echo $this -> getCurrency();?>&nbsp;<?php $this -> echoDepositAmountNatural(); ?></td>
</tr>
<tr>
<th style="width: 180px;">Message</th>
<td class="ralign"><?php echo $this -> message; ?></td>
</tr>
</table>
</div>
<br />
......@@ -65,14 +61,9 @@ include_once('template/base_head.php');
</div>
</div>
<div style="display:none;" id="trans_loader">
<p class="pleft40 mb20 respM">Submitting.</p>
</div>
<form id="acForm" action="" method="post">
<input type="hidden" name="type" id="type" />
<input type="hidden" name="token" id="token" value="<?php $this -> echoToken() ?>"/>
<input type="hidden" name="amount" value="<?php $this -> echoAmountPure(); ?>" />
<input type="hidden" name="currency" value="<?php echo $this -> getCurrency(); ?>" />
<input type="hidden" name="fee" value="<?php $this -> echoFee() ?>" />
......
......@@ -29,10 +29,7 @@ include_once('template/base_head.php');
<div class="">
<select name="currency" id="APNcurrency" class="px120 ArrowNone">
<option value="" class="px120">Select </option>
<option value="USD">USD</option>
<option value="EUR">EUR</option>
<option value="JPY">JPY</option>
<option value="PHP">PHP</option>
<?php $this -> echoEPLCurrencyDropdownOptions() ?>
</select>
</div>
</td>
......
......@@ -25,7 +25,6 @@ include_once('template/base_head.php');
<form id="acForm" action="" method="POST">
<input type="hidden" id="type" name="type"/>
<input type="hidden" id="valid_calc" value="<?php $this -> echoValidCalculation() ?>"/>
</form>
</div>
</div>
......@@ -38,20 +37,6 @@ include_once('template/base_head.php');
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit.js"></script>
<script type="text/javascript">
(function(){
setTimeout(function(){
var validCalculation = $("#valid_calc").val()
if(validCalculation == "valid")
$("#type").val("cc_deposit_complete")
else
$("#type").val("cc_deposit_fail")
submitForm()
}, 500)
})()
</script>
</body>
</html>
<?php
$page_title = "Credit Card Deposit Solution";
include_once('./config.php');
include_once('template/base_head.php');
?>
<!-- サイド�?ー -->
<aside id="colLeft">
<h1><a href="/en/menu"><img src="../img/logo.png" alt="iWallet"></a></h1>
<?php include_once('template/base_sidebar.php'); ?>
</aside>
<!-- /サイド�?ー -->
<!-- メインカラム -->
<div id="colMain">
<div class="mainIn">
<?php include_once('template/base_nav.php'); ?>
<article>
<div class="article-heading">
<h2>
<?php echo $page_title; ?>
</h2>
</div>
<p class="pleft40 mb20 respM">Successfully Credited.</p>
<div class="pleft40" style="margin-top:30px;">
<table class="table col bdr default odd fontM summaryT">
<tr><th colspan="2">Deposit Details</th></tr>
<tr>
<th>Transaction Time</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("transaction_time") ?></td>
</tr>
<tr>
<th>Debit Amount</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("amount") ?></td>
</tr>
<tr>
<th>Credit Amount</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("credit_amount") ?></td>
</tr>
<tr>
<th>Transaction Fee</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("fee") ?></td>
</tr>
<tr>
<th>Reference Number</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("transaction_number") ?></td>
</tr>
</table>
</div>
<br/>
<div class="pleft40 pt10 mb20 respM">
<a href="menu.php" class="btn bg-default calign">Go back to homepage</a>
</div>
</article>
</div>
</div>
</div>
<!-- /メインカラム -->
</div>
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit.js"></script>
</body>
</html>
<?php
include_once('config.php');
include_once($_SERVER['DOCUMENT_ROOT'] . '/logic/middleware/controller.php');
$logic = new ControlMiddleware();
$logic -> action();
?>
<?php
$page_title = "CHANGE ME";
include_once('./config.php');
include_once('template/base_head.php');
?>
<!-- サイド?ー -->
<aside id="colLeft">
<h1><a href="/en/menu"><img src="../img/logo.png" alt="iWallet"></a></h1>
<?php include_once('template/base_sidebar.php'); ?>
</aside>
<!-- /サイド?ー -->
<!-- メインカラム -->
<div id="colMain">
<div class="mainIn">
<?php include_once('template/base_nav.php'); ?>
<article>
<div class="article-heading">
<h2>
<?php echo $page_title; ?>
</h2>
</div>
<div class="parentDiv">
<div class="reverseFlex">
<!--reverse the column when the width match-->
<!--end a new div-->
</div> <!-- end of reverseFlex -->
</article>
</div>
</div>
</div>
<!-- /メインカラム -->
</div>
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit_credit_apn_success.js"></script>
</body>
</html>
<?php
include_once('config.php');
include_once($_SERVER['DOCUMENT_ROOT'] . '/logic/middleware/controller.php');
$logic = new ControlMiddleware();
$logic -> action();
?>
......@@ -22,7 +22,6 @@ include_once('template/base_head.php');
<p class="pleft40 mb20 respM">決済メールをご登録のメールアドレス宛に送信いたしました。ご確認ください。</p>
<div class="pleft40 pt10 mb20 respM">
<a href="menu.php" class="btn bg-default calign">ホームページへ戻る</a>
</div>
</article>
</div>
......
......@@ -59,14 +59,9 @@ include_once('template/base_head.php');
<a id="btnCCDComplete" class="btn bg-grad px180 mt10">次へ</a>
</div>
</div>
<div style="display:none;" id="trans_loader">
<p class="pleft40 mb20 respM">送信中。。</p>
</div>
<form id="acForm" action="" method="post">
<input type="hidden" name="type" id="type" />
<input type="hidden" name="token" id="token" value="<?php $this -> echoToken() ?>"/>
<input type="hidden" name="amount" value="<?php $this -> echoAmountPure(); ?>" />
<input type="hidden" name="currency" value="<?php echo $this -> getCurrency(); ?>" />
<input type="hidden" name="fee" value="<?php $this -> echoFee() ?>" />
......
......@@ -29,10 +29,7 @@ include_once('template/base_head.php');
<div class="">
<select name="currency" id="APNcurrency" class="px120 ArrowNone">
<option value="" class="px120">選択 </option>
<option value="USD">USD</option>
<option value="EUR">EUR</option>
<option value="JPY">JPY</option>
<option value="PHP">PHP</option>
<?php $this -> echoEPLCurrencyDropdownOptions() ?>
</select>
</div>
</td>
......
<?php
$page_title = "クレジットカード入金";
include_once('./config.php');
include_once('template/base_head.php');
?>
<!-- サイド�?ー -->
<aside id="colLeft">
<h1><a href="/en/menu"><img src="../img/logo.png" alt="iWallet"></a></h1>
<?php include_once('template/base_sidebar.php'); ?>
</aside>
<!-- /サイド�?ー -->
<!-- メインカラム -->
<div id="colMain">
<div class="mainIn">
<?php include_once('template/base_nav.php'); ?>
<article>
<div class="article-heading">
<h2>
<?php echo $page_title; ?>
</h2>
</div>
<p class="pleft40 mb20 respM">入金額が成功にクレジット致しました。</p>
<div class="pleft40" style="margin-top:30px;">
<table class="table col bdr default odd fontM summaryT">
<tr><th colspan="2">入金詳細</th></tr>
<tr>
<th>日時</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("transaction_time") ?></td>
</tr>
<tr>
<th>支払総額</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("amount") ?></td>
</tr>
<tr>
<th>入金額</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("credit_amount") ?></td>
</tr>
<tr>
<th>手数料</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("fee") ?></td>
</tr>
<tr>
<th>取引番号</th>
<td class="ralign"><?php $this -> echoCCDTransactionData("transaction_number") ?></td>
</tr>
</table>
</div>
<br/>
<div class="pleft40 pt10 mb20 respM">
<a href="menu.php" class="btn bg-default calign">ホームページへ戻る</a>
</div>
</article>
</div>
</div>
</div>
<!-- /メインカラム -->
</div>
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit.js"></script>
</body>
</html>
......@@ -234,18 +234,63 @@ $(function() {
$('#type').val('cc_deposit_input');
submitForm();
});
$('#btnCCDComplete').click(function() {
$("#confirm_main_content").hide()
$("#trans_loader").show()
var randSecond = Math.floor((Math.random() * 10) + 1);
setTimeout(function(){
$('#btnCCDComplete').prop('disabled', true);
$('#type').val('cc_deposit_send');
submitForm();
}, 1000 * randSecond)
$('#btnCCDComplete').click(function() {
$('#btnCCDComplete').prop('disabled', true);
$('#type').val('cc_deposit_send');
submitForm();
});
$('#APNcurrency').change(function(){
let cur = $(this).val();
// alert(cur);
if (cur.length != 0) {
$('.depositAmt_cont').show()
let amounts = [];
amounts["USD"] = {
"li05" : 100,
"li02" : 500,
"li03" : 1000,
"li04" : 3000,
"li01" : 5000
};
amounts["EUR"] = {
"li05" : 100,
"li02" : 500,
"li03" : 1000,
"li04" : 3000,
"li01" : 5000
};
amounts["JPY"] = {
"li05" : 10000,
"li02" : 50000,
"li03" : 100000,
"li04" : 300000,
"li01" : 500000
};
amounts["PHP"] = {
"li05" : 1000,
"li02" : 5000,
"li03" : 10000,
"li04" : 25000,
"li01" : 50000
};
for(var ids in amounts[cur]){
$("#"+ids).html(amounts[cur][ids])
}
}
else{
$('.depositAmt_cont').hide()
}
});
//CCD functions 05312021 end
//Add by Robby 20170609 start
......
<?php
require_once(SITE_LOGICS . 'deposit/ext/ESnappedAPI.php');
require_once('ext/ESnappedAPI.php');
require_once('ext/EasyPaymentLinkAPI.php');
require_once(SITE_LOGICS . 'deposit/logic.php');
require_once(SITE_LOGICS . 'deposit/config.php');
require_once('../logic/deposit/logic.php');
require_once('../logic/deposit/config.php');
class ControlDeposit extends LogicDeposit {
......@@ -26,7 +27,6 @@ class ControlDeposit extends LogicDeposit {
-------------------------------------------------------------------------*/
function action() {
// 変数宣言部
$result = NO_STRING;
try {
$this -> checkAvailability("site", function(){
require_once $this -> getUserHTML('TEMPLATE_MAINTENANCE_MODE_SITE_PATH');
......@@ -34,7 +34,7 @@ class ControlDeposit extends LogicDeposit {
});
// アクション実行
$result = $this -> logic();
$this -> logic();
if($this -> getType() == TYPE_APPLY) { // CARD決済前の場合何もしない
} else if($this -> getType() == TYPE_COMPLETE) { // 画面の表示(完了画面)
......@@ -216,6 +216,8 @@ class ControlDeposit extends LogicDeposit {
require_once($this -> getUserHTML('TEMPLATE_DEPOSIT_CREDIT_APN_COMPLETE_PATH', $this -> dispHTML()));
}else if($this -> getType() == TYPE_CCD_FAIL) {
require_once($this -> getUserHTML('TEMPLATE_DEPOSIT_CREDIT_APN_FAIL_PATH', $this -> dispHTML()));
}else if($this -> getType() == TYPE_CCD_SUCCESS) {
require_once($this -> getUserHTML('TEMPLATE_DEPOSIT_CREDIT_APN_SUCCESS_PATH', $this -> dispHTML()));
}else { // 画面の表示(初期画面)
require_once($this -> getUserHTML('TEMPLATE_DEPOSIT_INPUT_PATH', $this -> dispHTML()));
}
......
<?php
use Firebase\JWT\JWT;
class EasyPaymentLinkAPI extends System {
private static $instance;
/**
*
* @var string
*/
private $payload;
/**
*
* @var object
*/
private $eplconf;
/**
*
* @var object
*/
private $midconf;
/**
*
* @var int
*/
private $httpcode;
/**
*
* @var string
*/
private $formlink;
/**
*
* @var string
*/
private $processError = NO_STRING;
/**
*
* @var string
*/
private $language = "en";
/**
*
* @var string
*/
private $userAccount;
/**
*
* @var double
*/
private $amount;
/**
*
* @var double
*/
private $fee;
/**
*
* @var currency
*/
private $currency;
private function __construct(){
parent::__construct();
$this -> setParameter();
}
public static function getInstance(){
if(!isset(self::$instance))
self::$instance = new EasyPaymentLinkAPI();
return self::$instance;
}
private function setParameter(){
$this -> eplconf = $this -> getConfiguration("easy_payment_link");
$this -> midconf = $this -> getConfiguration("middleware_conf");
}
private function validation(){
$invalid = [];
if($this -> eplconf){
$currencies = explode(",", $this -> eplconf -> currencies);
if(!in_array($this -> currency, $currencies))
$invalid[] = "Invalid Currency *{$this -> currency}*";
}else
$invalid[] = "EasyPaymentLink settings could be missing or disabled.";
if($this -> isLoopData($invalid))
throw new Exception(print_r($invalid, true));
}
private function getConfiguration($settingId){
$devSetting = $this -> getRowData($this -> accessSelect("SELECT_DEV_SETTING", [$settingId]));
if($this -> isLoopData($devSetting)){
$enabled = $this -> getColumnData($devSetting, "dev_setting_enabled");
if(!$enabled)
return false;
if($this -> checkJSONString($this -> getColumnData($devSetting, "dev_setting_value")))
return json_decode($this -> getColumnData($devSetting, "dev_setting_value"));
}else
return false;
}
private function logDetails($content){
$timestamp = date("Y-m-d H:i:s");
$logDir = SITE_ROOT."api/Logs/APN";
if(!@file_exists($logDir))
mkdir($logDir, 0777, true);
$logFile = "{$logDir}/Log_EZ".date("Y-m-d").".log";
error_log("[{$timestamp}]\n\n{$content}\n\n", VAL_INT_3, $logFile);
}
public function setUserAccount($userAccount){
$this -> userAccount = $userAccount;
return $this;
}
public function setAmount($amount){
$this -> amount = $amount;
return $this;
}
public function setCurrency($currency){
$this -> currency = $currency;
return $this;
}
public function setFee($fee){
$this -> fee = $fee;
return $this;
}
public function setLanguage($language){
$this -> language = $language;
return $this;
}
public function generatePayload(){
$this -> validation();
$account = $this -> getRowData($this -> getAccountCommon($this -> userAccount));
$txnsnum = $this -> getTransactionNumberCommon(VAR_TRANSACTION_DEPOSIT);
$tokenPayload = [
"purpose" => "EasyPaymentLink",
"created" => date("Y-m-d H:i:s"),
"data" => base64_encode(json_encode([
"user_account" => $this -> getColumnData($account, PARAM_USER_ACCOUNT),
"transaction_number" => $txnsnum,
"currency" => $this -> currency,
"amount" => $this -> currencyToInt($this -> amount, $this -> currency),
"language" => $this -> language,
"fee" => $this -> currencyToInt($this -> fee, $this -> currency)
]))
];
$midtoken = JWT::encode($tokenPayload,
$this -> midconf -> token_secretkey,
$this -> midconf -> algorithm);
$callbck = SITE_PROTOCOL."://".SITE_DOMAIN_FULL."/{$this -> language}/middleware?token={$midtoken}";
$this -> logDetails("{$this -> getColumnData($account, PARAM_USER_ACCOUNT)}\n{$callbck}");
$this -> payload = json_encode([
"customer" => [
"first_name" => $this -> getColumnData($account, PARAM_FIRST_NAME),
"last_name" => $this -> getColumnData($account, PARAM_LAST_NAME),
"billing_address" => [
"line1" => $this -> getColumnData($account, PARAM_ADDRESS),
"line2" => "",
"city_municipality" => $this -> getColumnData($account, PARAM_CITY),
"zip" => $this -> getColumnData($account, PARAM_ZIP_CODE),
"state_province_region" => $this -> getColumnData($account, PARAM_STATE),
"country_code" => $this -> getColumnData($account, PARAM_COUNTRY)
],
"contact" => [
"email" => $this -> getColumnData($account, PARAM_MAIL),
"mobile" => $this -> getColumnData($account, PARAM_TEL)
]
],
"payment" => [
"description" => " ",
"amount" => $this -> amount,
"currency" => $this -> currency,
"merchant_reference_id" => $txnsnum
],
"route" => [
"callback_url" => $callbck,
"notify_user" => true
],
"key" => $this -> eplconf -> link_key
]);
return $this;
}
public function process(){
$handle = curl_init();
curl_setopt_array($handle, [
CURLOPT_URL => $this -> eplconf -> payment_link,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_ENCODING => "utf8",
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $this -> payload,
CURLOPT_HTTPHEADER => [
"Content-type: application/json"
]
]);
$output = curl_exec($handle);
$this -> httpcode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
if($err = curl_error($handle)){
$this -> processError = $err;
}else{
if($this -> httpcode == "200"){
if($this -> checkJSONString($output)){
$output = json_decode($output);
$this -> formlink = $output -> link;
}
}else
$this -> processError = $output;
}
curl_close($handle);
}
public function getHttpCode(){
return $this -> httpcode;
}
public function redirectToForm(){
if(isset($this -> formlink))
header("Location: {$this -> formlink}");
}
}
\ No newline at end of file
<?php
require_once(SITE_LOGICS . 'deposit/model.php');
require_once('../logic/deposit/model.php');
class LogicDeposit extends DepositModelClass {
......
This diff is collapsed.
<?php
require_once('../logic/middleware/logic.php');
class ControlMiddleware extends LogicMiddleware {
function __construct() {
parent::__construct();
}
function action() {
try {
$this -> checkAvailability("site", function(){
header("Location: menu");
exit();
});
$this -> logic();
} catch (Exception $e) {
header('Location: /' . $this -> getLangage() . '/login');
}
}
}
<?php
require_once('../logic/middleware/model.php');
class LogicMiddleware extends MiddlewareModelClass {
public function __construct() {
parent::__construct();
}
public function logic() {
try {
$this -> init();
$this -> runPurposeAction();
} catch (Exception $e) {
throw $e;
}
}
}
<?php
use Firebase\JWT\JWT;
class MiddlewareModelClass extends ModelClassEx {
/**
*
* @var String
*/
private $token;
/**
*
* @var array
*/
private $invalid;
/**
*
* @var object
*/
private $midconf;
/**
*
* @var String
*/
private $purposecls;
public function __construct() {
parent::__construct();
header("Content-type: text/json");
}
public function init() {
try {
$this -> loadPurposes();
$this -> setParameter();
$this -> validate();
} catch (Exception $e) {
throw new Exception(NO_STRING);
}
}
private function loadPurposes(){
$dirFiles = array_diff(
scandir(__DIR__."/purposes"),
array('.', '..'));
foreach($dirFiles as $dir){
require_once "purposes/{$dir}";
}
}
private function setParameter() {
$this -> token = $this -> getDataGet("token");
$this -> midconf = $this -> getConfiguration();
}
private function getConfiguration(){
$devSetting = $this -> getRowData($this -> accessSelect("SELECT_DEV_SETTING", ["middleware_conf"]));
if($this -> isLoopData($devSetting)){
$enabled = $this -> getColumnData($devSetting, "dev_setting_enabled");
if(!$enabled)
return false;
if($this -> checkJSONString($this -> getColumnData($devSetting, "dev_setting_value")))
return json_decode($this -> getColumnData($devSetting, "dev_setting_value"));
}else
return false;
}
private function decodeToken(){
try{
return JWT::decode(
$this -> token,
$this -> midconf -> token_secretkey,
[$this -> midconf -> algorithm]);
}catch(Exception $e){
return false;
}
}
public function validate() {
$this -> invalid = [];
if(!$this -> midconf){
header("HTTP/1.1 500 Internal Server Error");
die("Internal Issue Occurred");
}
if(trim($this -> token) != NO_STRING){
$decodedToken = $this -> decodeToken();
if($decodedToken){
if(is_object($decodedToken))
$this -> validateTokenPayload($decodedToken);
else
$this -> invalid[] = "Decoded Token is not a JSON object";
}else
$this -> invalid[] = "Invalid Token";
}else
$this -> invalid[] = "No Token String Found";
$accessDetails = [
"IP_Address" => $this -> getColumnData($_SERVER, "REMOTE_ADDR"),
"Method" => $this -> getColumnData($_SERVER, "REQUEST_METHOD"),
"headers" => apache_request_headers()
];
if($this -> getUserData(PARAM_USER_ACCOUNT) != NO_STRING)
$accessDetails[PARAM_USER_ACCOUNT] = $this -> getUserData(PARAM_USER_ACCOUNT);
if(isset($decodedToken))
$accessDetails["Decoded_Token"] = $decodedToken;
$this -> logDetails(print_r($accessDetails, true));
if($this -> isLoopData($this -> invalid)){
$this -> logDetails(print_r($this -> invalid, true));
header("HTTP/1.1 401 Unauthenticated");
die("NG");
}
}
public function runPurposeAction(){
if(isset($this -> purposecls))
$this ->purposecls::action();
}
private function logDetails($content){
$timestamp = date("Y-m-d H:i:s");
$logDir = SITE_ROOT."api/Logs/Middleware";
if(!@file_exists($logDir))
mkdir($logDir, 0777, true);
$logFile = "{$logDir}/Log_".date("Y-m-d").".log";
error_log("[{$timestamp}]\n\n{$content}\n\n", VAL_INT_3, $logFile);
}
private function validateTokenPayload($decodedToken){
$bools = [
[
"focus" => "purpose",
"expression" => !isset($decodedToken -> purpose),
"description" => "'purpose' is undefined"
],
[
"focus" => "data",
"expression" => !isset($decodedToken -> data),
"description" => "'data' is undefined"
],
[
"focus" => "expiration",
"expression" => isset($decodedToken -> expiration)
]
];
foreach($bools as $bool){
if($bool["expression"]){
if($bool["focus"] == "expiration"){
$now = strtotime(date("Y-m-d H:i:s"));
$exp = strtotime($decodedToken -> expiration);
if($now > $exp)
$this -> invalid[] = "Token Expired";
}else
$this -> invalid[] = $bool["description"];
}
}
$purposes = explode(",", $this -> midconf -> purposes);
if(in_array($decodedToken -> purpose, $purposes)){
if(class_exists($decodedToken -> purpose)){
$data = base64_decode($decodedToken -> data);
if($this -> checkJSONString($data)){
$verdict = [];
$decodedToken -> purpose::validation($data, $verdict);
if($this -> isLoopData($verdict)){
if(!$verdict["validation"])
$this -> invalid[] = $verdict["description"];
else
$this -> purposecls = $decodedToken -> purpose;
}
}
}else
$this -> invalid[] = "Purpose class doesn't exist [{$decodedToken -> purpose}]";
}else
$this -> invalid[] = "Invalid Purpose [{$decodedToken -> purpose}]";
}
}
This diff is collapsed.
<?php
include_once('config.php');
include_once($_SERVER['DOCUMENT_ROOT'] . '/logic/middleware/controller.php');
$logic = new ControlMiddleware();
$logic -> action();
?>
<?php
$page_title = "CHANGE ME";
include_once('./config.php');
include_once('template/base_head.php');
?>
<!-- サイド?ー -->
<aside id="colLeft">
<h1><a href="/en/menu"><img src="../img/logo.png" alt="iWallet"></a></h1>
<?php include_once('template/base_sidebar.php'); ?>
</aside>
<!-- /サイド?ー -->
<!-- メインカラム -->
<div id="colMain">
<div class="mainIn">
<?php include_once('template/base_nav.php'); ?>
<article>
<div class="article-heading">
<h2>
<?php echo $page_title; ?>
</h2>
</div>
<div class="parentDiv">
<div class="reverseFlex">
<!--reverse the column when the width match-->
<!--end a new div-->
</div> <!-- end of reverseFlex -->
</article>
</div>
</div>
</div>
<!-- /メインカラム -->
</div>
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit_credit_apn_success.js"></script>
</body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<MAIL>
<title>【iWallet】クレジットカード入金による入金完了/Completion of Deposit via Credit Card Deposit Solution</title>
<body>
__ELEMENT01__ __ELEMENT02__ 様
平素よりiWalletをご利用いただき、誠にありがとうございます。
お客様のごクレジットカード入金を確認いたしましたので、
iWallet口座にチャージさせて頂きました。
取引番号: __ELEMENT03__
日時:__ELEMENT04__(GMT +8)
お支払い金額: __ELEMENT05__ __ELEMENT06__
ご入金額:__ELEMENT07__ __ELEMENT08__
現在の残高は、にログインし、My Walletの口座残高からご確認ください。
ご質問やご不明な点などございましたら、いつでもお気軽にお問合せ下さいませ。
今後ともiWalletを何卒宜しくお願い申し上げます。
__ELEMENT01__ Mr./Ms. __ELEMENT02__
Thank you for using iWallet.
Your credit card deposit request has been successfully credited to your iWallet account.
Transaction number : __ELEMENT03__
Transaction time/date : __ELEMENT04__(GMT +8)
Payment amount :__ELEMENT05__ __ELEMENT06__
Amount reflected : __ELEMENT07__ __ELEMENT08__
The details of this deposit can also be viewed on your iWallet account transaction history.
 
If you have any questions or inquiries, please do not hesitate to contact us.
We are committed to providing our customers with the highest quality of service.
━━━━━━━━━━━━━━━━━━
iWallet Customer Support
URL:https://secure.iwl.world/
Email:cs@iwl.world
━━━━━━━━━━━━━━━━━━
</body>
</MAIL>
<?xml version="1.0" encoding="UTF-8"?>
<MAIL>
<title>【iWallet】クレジットカード入金が失敗しました/Failed Deposit via Credit Card Deposit Solution</title>
<body>
__ELEMENT01__ __ELEMENT02__ 様
平素よりiWalletをご利用いただき、誠にありがとうございます。
クレジットカード決済が失敗しました。
日時:__ELEMENT04__(GMT +8)
お支払い金額: __ELEMENT05__ __ELEMENT06__
カード決済失敗の原因は、下記が考えられます。
・間違ったカード情報の詳細
・残高不足
・ご申請額はご入金限度額の範囲外となります。
別のご入金方法をご利用ください。
ご質問やご不明な点などございましたら、いつでもお気軽にお問合せ下さいませ。
今後ともiWalletを何卒宜しくお願い申し上げます。
__ELEMENT01__ Mr./Ms. __ELEMENT02__
Thank you for using iWallet.
Your credit card deposit request failed.
Transaction time/date : __ELEMENT04__(GMT +8)
Payment amount :__ELEMENT05__ __ELEMENT06__
The possible causes of the transaction failing are as follows:
· Wrong card information details
· Insufficient Funds
· The amount you are trying to deposit is outside the payment limit
Please try again or use another card once you have confirmed the above reasons. You may also use another deposit method to complete your transaction.
 
If you have any questions or inquiries, please do not hesitate to contact us.
We are committed to providing our customers with the highest quality of service.
━━━━━━━━━━━━━━━━━━
iWallet Customer Support
URL:https://secure.iwl.world/
Email:cs@iwl.world
━━━━━━━━━━━━━━━━━━
</body>
</MAIL>
<?xml version="1.0" encoding="UTF-8"?>
<MAIL>
<title>【iWallet】クレジットカード入金による入金完了/Completion of Deposit via Credit Card Deposit Solution</title>
<body>
__ELEMENT01__ __ELEMENT02__ 様
平素よりiWalletをご利用いただき、誠にありがとうございます。
お客様のごクレジットカード入金を確認いたしましたので、
iWallet口座にチャージさせて頂きました。
取引番号: __ELEMENT03__
日時:__ELEMENT04__(GMT +8)
お支払い金額: __ELEMENT05__ __ELEMENT06__
ご入金額:__ELEMENT07__ __ELEMENT08__
現在の残高は、にログインし、My Walletの口座残高からご確認ください。
ご質問やご不明な点などございましたら、いつでもお気軽にお問合せ下さいませ。
今後ともiWalletを何卒宜しくお願い申し上げます。
__ELEMENT01__ Mr./Ms. __ELEMENT02__
Thank you for using iWallet.
Your credit card deposit request has been successfully credited to your iWallet account.
Transaction number : __ELEMENT03__
Transaction time/date : __ELEMENT04__(GMT +8)
Payment amount :__ELEMENT05__ __ELEMENT06__
Amount reflected : __ELEMENT07__ __ELEMENT08__
The details of this deposit can also be viewed on your iWallet account transaction history.
 
If you have any questions or inquiries, please do not hesitate to contact us.
We are committed to providing our customers with the highest quality of service.
━━━━━━━━━━━━━━━━━━
iWallet Customer Support
URL:https://secure.iwl.world/
Email:cs@iwl.world
━━━━━━━━━━━━━━━━━━
</body>
</MAIL>
<?xml version="1.0" encoding="UTF-8"?>
<MAIL>
<title>【iWallet】クレジットカード入金が失敗しました/Failed Deposit via Credit Card Deposit Solution</title>
<body>
__ELEMENT01__ __ELEMENT02__ 様
平素よりiWalletをご利用いただき、誠にありがとうございます。
クレジットカード決済が失敗しました。
日時:__ELEMENT04__(GMT +8)
お支払い金額: __ELEMENT05__ __ELEMENT06__
カード決済失敗の原因は、下記が考えられます。
・間違ったカード情報の詳細
・残高不足
・ご申請額はご入金限度額の範囲外となります。
別のご入金方法をご利用ください。
ご質問やご不明な点などございましたら、いつでもお気軽にお問合せ下さいませ。
今後ともiWalletを何卒宜しくお願い申し上げます。
__ELEMENT01__ Mr./Ms. __ELEMENT02__
Thank you for using iWallet.
Your credit card deposit request failed.
Transaction time/date : __ELEMENT04__(GMT +8)
Payment amount :__ELEMENT05__ __ELEMENT06__
The possible causes of the transaction failing are as follows:
· Wrong card information details
· Insufficient Funds
· The amount you are trying to deposit is outside the payment limit
Please try again or use another card once you have confirmed the above reasons. You may also use another deposit method to complete your transaction.
 
If you have any questions or inquiries, please do not hesitate to contact us.
We are committed to providing our customers with the highest quality of service.
━━━━━━━━━━━━━━━━━━
iWallet Customer Support
URL:https://secure.iwl.world/
Email:cs@iwl.world
━━━━━━━━━━━━━━━━━━
</body>
</MAIL>
......@@ -486,6 +486,7 @@ define('TYPE_CCD_CONFIRM','cc_deposit_confirm');
define('TYPE_CCD_COMPLETE','cc_deposit_complete');
define('TYPE_CCD_SEND','cc_deposit_send');
define('TYPE_CCD_FAIL','cc_deposit_fail');
define('TYPE_CCD_SUCCESS','cc_deposit_success');
define('TYPE_ZANETA_INPUT','zaneta_input');
......
......@@ -172,6 +172,7 @@
TEMPLATE_DEPOSIT_CREDIT_APN_FAIL_PATH=tmp_deposit_credit_apn_fail.php
TEMPLATE_DEPOSIT_CREDIT_APN_INPUT_PATH=tmp_deposit_credit_apn_input.php
TEMPLATE_DEPOSIT_CREDIT_APN_SEND_PATH=tmp_deposit_credit_apn_send.php
TEMPLATE_DEPOSIT_CREDIT_APN_SUCCESS_PATH=tmp_deposit_credit_apn_success.php
TEMPLATE_DEPOSIT_CUP_CONFIRM_PATH=tmp_deposit_cup_confirm.php
TEMPLATE_DEPOSIT_CUP_INPUT_PATH=tmp_deposit_cup_input.php
TEMPLATE_DEPOSIT_CUP_MAINTENANCE_PATH=tmp_deposit_cup_maintenance.php
......
<?php
include_once('config.php');
include_once($_SERVER['DOCUMENT_ROOT'] . '/logic/middleware/controller.php');
$logic = new ControlMiddleware();
$logic -> action();
?>
<?php
$page_title = "CHANGE ME";
include_once('./config.php');
include_once('template/base_head.php');
?>
<!-- サイド?ー -->
<aside id="colLeft">
<h1><a href="/en/menu"><img src="../img/logo.png" alt="iWallet"></a></h1>
<?php include_once('template/base_sidebar.php'); ?>
</aside>
<!-- /サイド?ー -->
<!-- メインカラム -->
<div id="colMain">
<div class="mainIn">
<?php include_once('template/base_nav.php'); ?>
<article>
<div class="article-heading">
<h2>
<?php echo $page_title; ?>
</h2>
</div>
<div class="parentDiv">
<div class="reverseFlex">
<!--reverse the column when the width match-->
<!--end a new div-->
</div> <!-- end of reverseFlex -->
</article>
</div>
</div>
</div>
<!-- /メインカラム -->
</div>
<?php include_once('template/base_foot.php'); ?>
</div>
<script src="../js/deposit_credit_apn_success.js"></script>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment