plugin system for payment gateway

This commit is contained in:
Ibnu Maksum
2022-09-16 11:05:33 +07:00
parent 0bd6c9e3c7
commit 061224b469
17 changed files with 598 additions and 815 deletions

View File

@ -26,18 +26,6 @@
<input type="text" class="form-control" id="phone" name="phone" value="{$_c['phone']}">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Payment Gateway</label>
<div class="col-md-6">
<select name="payment_gateway" id="payment_gateway" class="form-control">
<option value="none">None</option>
<option value="xendit" {if $_c['payment_gateway'] eq 'xendit'}selected="selected" {/if}>Xendit - Indonesia &amp; Philippines</option>
{* <option value="midtrans" {if $_c['payment_gateway'] eq 'midtrans'}selected="selected" {/if}>Midtrans</option> *}
<option value="tripay" {if $_c['payment_gateway'] eq 'tripay'}selected="selected" {/if}>Tripay - Indonesia</option>
<option value="duitku" {if $_c['payment_gateway'] eq 'duitku'}selected="selected" {/if}>Duitku - Indonesia</option>
</select>
</div>
</div>
<div class="form-group hidden">
<label class="col-md-2 control-label">Radius Mode?</label>
<div class="col-md-6">

34
ui/ui/paymentgateway.tpl Normal file
View File

@ -0,0 +1,34 @@
{include file="sections/header.tpl"}
<div class="row">
<div class="col-sm-12">
<div class="panel panel-info panel-hovered">
<div class="panel-heading">{Lang::T('Payment Gateway')}</div>
<div class="panel-body row">
{foreach $pgs as $pg}
<div class="col-sm-4 mb20">
<a href="{$_url}paymentgateway/{$pg}"
class="btn btn-block btn-{if $pg==$_c['payment_gateway']}success{else}default{/if}">{ucwords($pg)}</a>
</div>
{/foreach}
</div>
<div class="panel-footer">
<form method="post">
<div class="form-group row">
<label class="col-md-2 control-label">Payment Gateway</label>
<div class="col-md-8">
<select name="payment_gateway" id="payment_gateway" class="form-control">
<option value="none">None</option>
{foreach $pgs as $pg}
<option value="{$pg}" {if $_c['payment_gateway'] eq {$pg}}selected="selected" {/if}>{ucwords($pg)}</option>
{/foreach}
</select>
</div>
<div class="col-md-2">
<button class="btn btn-block btn-primary waves-effect waves-light" type="submit">{$_L['Save']}</button>
</div>
</div>
</div>
</div>
</div>
</div>
{include file="sections/footer.tpl"}

View File

@ -1,6 +1,6 @@
{include file="sections/header.tpl"}
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/duitku-post" >
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/duitku" >
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-default panel-hovered panel-stacked mb30">

View File

@ -1,68 +0,0 @@
{include file="sections/header.tpl"}
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/midtrans-post" >
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-default panel-hovered panel-stacked mb30">
<div class="panel-heading">MIDTRANS</div>
<div class="panel-body">
<div class="form-group">
<label class="col-md-2 control-label">ID Merchant</label>
<div class="col-md-6">
<input type="text" class="form-control" id="midtrans_merchant_id" name="midtrans_merchant_id" placeholder="G" value="{$_c['midtrans_merchant_id']}">
<a href="https://dashboard.midtrans.com/settings/config_info" target="_blank" class="help-block">https://dashboard.midtrans.com/settings/config_info</a>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Client Key</label>
<div class="col-md-6">
<input type="text" class="form-control" id="midtrans_client_key" name="midtrans_client_key" placeholder="Mid-client-XXXXXXXX" value="{$_c['midtrans_client_key']}">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Server Key</label>
<div class="col-md-6">
<input type="text" class="form-control" id="midtrans_server_key" name="midtrans_server_key" placeholder="Mid-server-XXXXXXXX" value="{$_c['midtrans_server_key']}">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Payment Notification URL</label>
<div class="col-md-6">
<input type="text" readonly class="form-control" onclick="this.select()" value="{$_url}callback/midtrans">
<p class="help-block">{Lang::T('Payment Notification URL, Recurring Notification URL, Pay Account Notification URL')}</p>
<p class="help-block">Midtrans wajib pake URL Notification</p>
<a href="https://dashboard.midtrans.com/settings/vtweb_configuration" target="_blank" class="help-block">https://dashboard.midtrans.com/settings/vtweb_configuration</a>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Finish Redirect URL</label>
<div class="col-md-6">
<input type="text" readonly class="form-control" onclick="this.select()" value="{$_url}order/unpaid">
<p class="help-block">{Lang::T('Finish Redirect URL, Unfinish Redirect URL, Error Redirect URL')}</p>
<a href="https://dashboard.midtrans.com/settings/vtweb_configuration" target="_blank" class="help-block">https://dashboard.midtrans.com/settings/vtweb_configuration</a>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Channels</label>
<div class="col-md-6">
{foreach $channels as $channel}
<label class="checkbox-inline"><input type="checkbox" {if strpos($_c['midtrans_channel'], $channel['id']) !== false}checked="true"{/if} id="midtrans_channel" name="midtrans_channel[]" value="{$channel['id']}"> {$channel['name']}</label>
{/foreach}
</div>
</div>
<div class="form-group">
<div class="col-lg-offset-2 col-lg-10">
<button class="btn btn-primary waves-effect waves-light" type="submit">{$_L['Save']}</button>
</div>
</div>
<pre>/ip hotspot walled-garden
add dst-host=midtrans.com
add dst-host=*.midtrans.com</pre>
</div>
</div>
</div>
</div>
</form>
{include file="sections/footer.tpl"}

View File

@ -1,6 +1,6 @@
{include file="sections/header.tpl"}
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/tripay-post" >
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/tripay" >
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-default panel-hovered panel-stacked mb30">

View File

@ -1,6 +1,6 @@
{include file="sections/header.tpl"}
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/xendit-post" >
<form class="form-horizontal" method="post" role="form" action="{$_url}paymentgateway/xendit" >
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-default panel-hovered panel-stacked mb30">
@ -13,7 +13,6 @@
<a href="https://dashboard.xendit.co/settings/developers#api-keys" target="_blank" class="help-block">https://dashboard.xendit.co/settings/developers#api-keys</a>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Verification Token</label>
<div class="col-md-6">

View File

@ -261,19 +261,11 @@
<li>&nbsp;</li>
</ul>
</li>
<li {if $_system_menu eq 'paymentgateway'}class="open"{/if}>
<a href="#" onClick="toggleDropdownMobile(this)">
<li {if $_system_menu eq 'paymentgateway'}class="active"{/if}>
<a href="{$_url}paymentgateway">
<i class="ion ion-cash"></i>
<span class="text">{Lang::T('Payment Gateway')}</span>
<i class="arrow ion-chevron-left"></i>
</a>
<ul class="inner-drop list-unstyled">
<li {if $_system_menu eq 'paymentgateway'}class="active"{/if}><a href="{$_url}paymentgateway/xendit">Xendit</a></li>
{* <li {if $_system_menu eq 'paymentgateway'}class="active"{/if}><a href="{$_url}paymentgateway/midtrans">Midtrans</a></li> *}
<li {if $_system_menu eq 'paymentgateway'}class="active"{/if}><a href="{$_url}paymentgateway/tripay">Tripay</a></li>
<li {if $_system_menu eq 'paymentgateway'}class="active"{/if}><a href="{$_url}paymentgateway/duitku">Duitku</a></li>
<li>&nbsp;</li>
</ul>
</li>
<li {if $_system_menu eq 'community'}class="active"{/if}>
<a href="{$_url}community">