Sammy30
10/9/2019 - 6:22 PM

E2 pay e2pay / Indonesia.php

Remove Text "Paymenttype" and Please choose bank to pay" Row : 382 - 387

/*
ethis.co.id / httpdocs / wp-content / plugins / e2pay-for-woocommerce / lib / e2pay-php / e2pay / Indonesia.php
*/
<?php
/**
 * Ipay88 Inc
 * @author Ipay88 Inc <pvchi@e2pay.com>
 * @package Ipay88\Lib
 */

class E2pay_Indonesia
{
    const URL_PAYMENT_PRODUCTION = 'https://payment.e2pay.co.id/epayment/entry.asp';
    const URL_PAYMENT_SANDBOX    = 'https://sandbox.e2pay.co.id/epayment/entry.asp';

    const PAYMENT_METHOD_ENABLE = 1;
    const PAYMENT_METHOD_DISABLE = 2;

    const PAYMENT_METHOD_CREDIT_CARD            = 1;
    const PAYMENT_METHOD_MANDIRI_CLICKPAY       = 24;
    const PAYMENT_METHOD_INDOSAT_DOMPETKU       = 14;
    const PAYMENT_METHOD_CIMB_CLICKS            = 7;
    const PAYMENT_METHOD_XL_TUNAI               = 9;
    const PAYMENT_METHOD_TCASH                  = 10;

    const PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING  = 11;
    const PAYMENT_METHOD_DINAMON_ONLINE_BANKING = 13;
    const PAYMENT_METHOD_ONLINE_SBI             = 16;
    const PAYMENT_METHOD_MAYBANK_VA             = 20;
    const PAYMENT_METHOD_MOBILE_BANKING_BTN     = 22;

    const PAYMENT_METHOD_EPAY_BRI               = 12;
    const PAYMENT_METHOD_QNB                    = 19;

    const MERCHANT_CODE = 'e2pay_merchant_code';
    const MERCHANT_KEY  = 'e2pay_merchant_key';
    const PAYMENT_MODE  = 'e2pay_payment_mode';


    const PAYMENT_METHOD_CREDIT_CONFIG                      = 'e2pay_credit_card_config';
    const PAYMENT_METHOD_MANDIRI_CLICKPAY_CONFIG            = 'e2pay_mandiri_clickpay_config';
    const PAYMENT_METHOD_INDOSAT_DOMPETKU_CONFIG            = 'e2pay_id_dompetku_config';
    const PAYMENT_METHOD_CIMB_CLICKS_CONFIG                 = 'e2pay_cimb_click_config';
    const PAYMENT_METHOD_XL_TUNAI_CONFIG                    = 'e2pay_xl_tuinai_config';

    const PAYMENT_METHOD_TCASH_CONFIG                       = 'e2pay_tcash_config';
    const PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING_CONFIG   = 'e2pay_muamalat_internet_banking_config';
    const PAYMENT_METHOD_DINAMON_ONLINE_BANKING_CONFIG      = 'e2pay_dinamon_online_banking_config';
    const PAYMENT_METHOD_ONLINE_SBI_CONFIG                  = 'e2pay_online_sbi_config';
    const PAYMENT_METHOD_MAYBANK_VA_CONFIG                  = 'e2pay_maybank_va_config';
    const PAYMENT_METHOD_MOBILE_BANKING_BTN_CONFIG          = 'e2pay_mobile_banking_btn_config';
    const PAYMENT_METHOD_EPAY_BRI_CONFIG                    = 'e2pay_epay_bri_config';
    const PAYMENT_METHOD_QNB_CONFIG                         = 'e2pay_qnb_config';

    const PAYMENT_METHOD_CREDIT_CONFIG_LABEL                      = 'Credit Card';
    const PAYMENT_METHOD_MANDIRI_CLICKPAY_CONFIG_LABEL            = 'Mandiri Clickpay';
    const PAYMENT_METHOD_INDOSAT_DOMPETKU_CONFIG_LABEL            = 'Indosat Dompetku';
    const PAYMENT_METHOD_CIMB_CLICKS_CONFIG_LABEL                 = 'CIMB Click';
    const PAYMENT_METHOD_XL_TUNAI_CONFIG_LABEL                    = 'XL Tunai';

    const PAYMENT_METHOD_TCASH_CONFIG_LABEL                       = 'Tcash';
    const PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING_CONFIG_LABEL   = 'Muamalat Internet Banking';
    const PAYMENT_METHOD_DINAMON_ONLINE_BANKING_CONFIG_LABEL      = 'Dinamon Online Banking';
    const PAYMENT_METHOD_ONLINE_SBI_CONFIG_LABEL                  = 'Online SBI';
    const PAYMENT_METHOD_MAYBANK_VA_CONFIG_LABEL                  = 'Maybank';

    const PAYMENT_METHOD_MOBILE_BANKING_BTN_CONFIG_LABEL          = 'Mobile Banking BTN';
    const PAYMENT_METHOD_EPAY_BRI_CONFIG_LABEL                    = 'epay BRI';
    const PAYMENT_METHOD_QNB_CONFIG_LABEL                         = 'QNB';

    public function getBanksConfigs() {
        return array(
            self::PAYMENT_METHOD_CREDIT_CONFIG,
            self::PAYMENT_METHOD_MANDIRI_CLICKPAY_CONFIG,
            self::PAYMENT_METHOD_INDOSAT_DOMPETKU_CONFIG,
            self::PAYMENT_METHOD_CIMB_CLICKS_CONFIG,
            self::PAYMENT_METHOD_XL_TUNAI_CONFIG,

            self::PAYMENT_METHOD_TCASH_CONFIG,
            self::PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING_CONFIG,
            self::PAYMENT_METHOD_DINAMON_ONLINE_BANKING_CONFIG,
            self::PAYMENT_METHOD_ONLINE_SBI_CONFIG,
            self::PAYMENT_METHOD_MAYBANK_VA_CONFIG,

            self::PAYMENT_METHOD_MOBILE_BANKING_BTN_CONFIG,
            self::PAYMENT_METHOD_EPAY_BRI_CONFIG,
            self::PAYMENT_METHOD_QNB_CONFIG,
        );
    }

    public function getFieldsConfigs() {
        return array(
            self::MERCHANT_CODE,
            self::MERCHANT_KEY,
            self::PAYMENT_MODE,

            self::PAYMENT_METHOD_CREDIT_CONFIG,
            self::PAYMENT_METHOD_MANDIRI_CLICKPAY_CONFIG,
            self::PAYMENT_METHOD_INDOSAT_DOMPETKU_CONFIG,
            self::PAYMENT_METHOD_CIMB_CLICKS_CONFIG,
            self::PAYMENT_METHOD_XL_TUNAI_CONFIG,

            self::PAYMENT_METHOD_TCASH_CONFIG,
            self::PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING_CONFIG,
            self::PAYMENT_METHOD_DINAMON_ONLINE_BANKING_CONFIG,
            self::PAYMENT_METHOD_ONLINE_SBI_CONFIG,
            self::PAYMENT_METHOD_MAYBANK_VA_CONFIG,

            self::PAYMENT_METHOD_MOBILE_BANKING_BTN_CONFIG,
            self::PAYMENT_METHOD_EPAY_BRI_CONFIG,
            self::PAYMENT_METHOD_QNB_CONFIG,
        );
    }

    protected $paymentMethod;

    protected $banks;

    protected $bankKeyConfig;

    protected $paymentId;

    protected $bankName;

    protected $logo;

    protected $imagePath;

    protected $bankEnabled;

    /**
     * @return array
     */
    public function getBankEnabled()
    {
        return $this->bankEnabled;
    }

    /**
     * @param mixed $bankEnabled
     */
    public function setBankEnabled($bankEnabled)
    {
        $this->bankEnabled = $bankEnabled;
    }

    /**
     * @return mixed
     */
    public function getPaymentMethod()
    {
        return $this->paymentMethod;
    }

    /**
     * @param mixed $paymentMethod
     */
    public function setPaymentMethod($paymentMethod)
    {
        $this->paymentMethod = $paymentMethod;
    }

    /**
     * @return mixed
     */
    public function getBanks()
    {
        return $this->banks;
    }

    /**
     * @param mixed $banks
     */
    public function setBanks($banks)
    {
        $this->banks = $banks;
    }

    /**
     * @return mixed
     */
    public function getBankKeyConfig()
    {
        return $this->bankKeyConfig;
    }

    /**
     * @param mixed $bankKeyConfig
     */
    public function setBankKeyConfig($bankKeyConfig)
    {
        $this->bankKeyConfig = $bankKeyConfig;
    }

    /**
     * @return mixed
     */
    public function getPaymentId()
    {
        return $this->paymentId;
    }

    /**
     * @param mixed $paymentId
     */
    public function setPaymentId($paymentId)
    {
        $this->paymentId = $paymentId;
    }

    /**
     * @return mixed
     */
    public function getBankName()
    {
        return $this->bankName;
    }

    /**
     * @param mixed $bankName
     */
    public function setBankName($bankName)
    {
        $this->bankName = $bankName;
    }

    /**
     * @return mixed
     */
    public function getLogo()
    {
        return $this->logo;
    }

    /**
     * @param mixed $logo
     */
    public function setLogo($logo)
    {
        $this->logo = $logo;
    }

    /**
     * @return mixed
     */
    public function getImagePath()
    {
        return $this->imagePath;
    }

    /**
     * @param mixed $imagePath
     */
    public function setImagePath($imagePath)
    {
        $this->imagePath = $imagePath;
    }

    // Payment methods, please view technical spec for latest update.
    protected $pMethod = array(
        self::PAYMENT_METHOD_CREDIT_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_CREDIT_CARD,
            'name' => 'Credit Card',
            'logo' => 'credit-card.png'
        ),
        self::PAYMENT_METHOD_MANDIRI_CLICKPAY_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_MANDIRI_CLICKPAY,
            'name' => 'Mandiri Clickpay',
            'logo' => 'mandiriclickpay.png'
        ),
        self::PAYMENT_METHOD_INDOSAT_DOMPETKU_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_INDOSAT_DOMPETKU,
            'name' => 'DOMPETKU',
            'logo' => 'dompetku.png'
        ),
        self::PAYMENT_METHOD_CIMB_CLICKS_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_CIMB_CLICKS,
            'name' => 'CIMB CLICKS',
            'logo' => 'cimb.png'
        ),
        self::PAYMENT_METHOD_XL_TUNAI_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_XL_TUNAI,
            'name' => 'XL Tunai',
            'logo' => 'xltunai.png'
        ),

        self::PAYMENT_METHOD_TCASH_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_TCASH,
            'name' => 'T-Cash',
            'logo' => 'tcash.png'
        ),
        self::PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING,
            'name' => 'Muamalat Internet Banking',
            'logo' => 'mib.png'
        ),
        self::PAYMENT_METHOD_DINAMON_ONLINE_BANKING_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_DINAMON_ONLINE_BANKING,
            'name' => 'Danamon Online Banking',
            'logo' => 'dob.png'
        ),
        self::PAYMENT_METHOD_ONLINE_SBI_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_ONLINE_SBI,
            'name' => 'Online SBI',
            'logo' => 'onlinesbi.png'
        ),
        self::PAYMENT_METHOD_MAYBANK_VA_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_MAYBANK_VA,
            'name' => 'Maybank VA',
            'logo' => 'maybank.png'
        ),
        self::PAYMENT_METHOD_MOBILE_BANKING_BTN_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_MOBILE_BANKING_BTN,
            'name' => 'Mobile Banking BTN',
            'logo' => 'mbb.png'
        ),
        self::PAYMENT_METHOD_EPAY_BRI_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_EPAY_BRI,
            'name' => 'ePay BRI',
            'logo' => 'epaybri.png'
        ),
        self::PAYMENT_METHOD_QNB_CONFIG  => array(
            'paymentId' => self::PAYMENT_METHOD_QNB,
            'name' => 'QNB',
            'logo' => 'qnb.png'
        )
    );

    /**
     * @return array
     */
    public function getPmethod() {
        return $this->pMethod;
    }

    // Payment methods, please view technical spec for latest update.
    public $paymentMethods = array(
        self::PAYMENT_METHOD_CREDIT_CARD                => array('name' => 'Credit Card',       'logo' => 'credit-card.png'),
        self::PAYMENT_METHOD_MANDIRI_CLICKPAY           => array('name' => 'Mandiri clickpay',  'logo' => 'mandiriclickpay.png'),
        self::PAYMENT_METHOD_INDOSAT_DOMPETKU           => array('name' => 'Indosat Dompetku',  'logo' => 'dompetku.png'),
        self::PAYMENT_METHOD_CIMB_CLICKS                => array('name' => 'CIMBClicks',        'logo' => 'cimb.png'),
        self::PAYMENT_METHOD_XL_TUNAI                   => array('name' => 'XL Tunai',          'logo' => 'xltunai.png'),
        self::PAYMENT_METHOD_TCASH                      => array('name' => 'T-Cash',            'logo' => 'tcash.png'),

        self::PAYMENT_METHOD_MUAMALAT_INTERNET_BANKING  => array('name' => 'Muamalat Internet Banking', 'logo' => 'mib.png'),
        self::PAYMENT_METHOD_DINAMON_ONLINE_BANKING     => array('name' => 'Danamon Online Banking',    'logo' => 'dob.png'),
        self::PAYMENT_METHOD_ONLINE_SBI                 => array('name' => 'Online SBI', 'logo' => 'onlinesbi.png'),
        self::PAYMENT_METHOD_MAYBANK_VA                 => array('name' => 'Maybank VA', 'logo' => 'maybank.png'),
        self::PAYMENT_METHOD_MOBILE_BANKING_BTN         => array('name' => 'Mobile Banking BTN', 'logo' => 'mbb.png'),
        self::PAYMENT_METHOD_EPAY_BRI                   => array('name' => 'ePay BRI', 'logo' => 'epaybri.png'),
        self::PAYMENT_METHOD_QNB                        => array('name' => 'QNB', 'logo' => 'qnb.png')
    );

    /**
     * @param $key
     * @return null
     */
    public function getPaymentMethodInfoByKey($key) {
        if(isset($this->pMethod[$key])) {
            return $this->pMethod[$key];
        }
        return null;
    }

    /**
     * @param $id
     * @return null
     */
    public function getPaymentMethodInfoById($id) {
        if(isset($this->pMethod[$id])) {
            return $this->pMethod[$id];
        }
        return null;
    }

    public function __construct($options = null)
    {
    }

    public function getWiget($banks, $imagePath, $auto = false) {
        $bankConfigurations = $banks;

        $html =
            '
           <p class="form-row">
			<!--<label for="ipay88_payment_type">PaymentType-->
					<!--<span class="required">*</span></label>-->
			</p><div class="payment_method_e2pay">
                <fieldset>
                    <!--<legend>Please choose bank to pay</legend>-->
                    <ul>';
        if(is_array($bankConfigurations) && count($bankConfigurations)) {
            foreach ($bankConfigurations as $key => $config) {
                if($config) {
                    $bank = $this->getPaymentMethodInfoByKey($key);

                    if(is_array($bank) && count($bank)) {
                        $paymentId = isset($bank['paymentId']) ? $bank['paymentId'] : '';
                        $name = isset($bank['name']) ? $bank['name'] : '';

                        $logo = $imagePath . DIRECTORY_SEPARATOR . (isset($bank['logo']) ? $bank['logo'] : '');

                        $html .=
                            '<li class="e2pay_payment_methods" style="list-style:none; max-width: 125px; margin: 2px; border: solid 1px #DDDDDD">
                                <input style="display: block" type="radio" name="e2pay_bank_payment_method" value="'.$paymentId.'">
                                <img payment_id="'.$paymentId.'" class="e2pay_bank_payment_method" src="'.$logo.'" alt="'.$name.'" class="e2pay_bank_logo" style="width:100px; height:33px; margin-top:2px">';
                        $html .=
                            '</li>';
                    }
                }
            }
        }
        $html .=
            '</ul>
                </fieldset>
            </div>';

        return $html;
    }
}