コード例 #1
0
    function pay_old()
    {
        $id = addslashes($_GET['app_id']);
        $acc = new App2Acc();
        $apps = $acc->getWhereFromMultipleTable("ac_admin_id = '" . Account::getMyID() . "' AND ac_app_id = app_id AND ac_app_id = '{$id}' ", array("AppAccount"));
        if (count($apps) < 1) {
            die("hacking attempt");
        } else {
            $app = $apps[0];
        }
        if ($app->app_active) {
            header("Location:" . _SPPATH . "myapps");
            die;
        }
        AppAccount::checkOwnership($app);
        $paket = new Paket();
        $arrPaket = $paket->getWhere("paket_active = 1 AND paket_id > 1 ORDER BY paket_id ASC");
        $paket2 = new Paket();
        $paket2->getByID(2);
        // paket android
        $paket1 = new Paket();
        $paket1->getByID(3);
        //paket android iOS
        $paymentResponse = 0;
        $paymentText = "";
        $vpt = new VpTransaction();
        $arrVpt = $vpt->getWhere("order_app_id = '{$app->app_id}' AND order_status = '0' AND order_status_from != '0' ");
        if (count($arrVpt) > 0) {
            $vpt = $arrVpt[0];
            $paymentResponse = $vpt->order_status_from;
            if ($paymentResponse == "200") {
                //sucess
                $paymentText = "Your Payment is Success";
            }
            if ($paymentResponse == "201") {
                //sucess
                $paymentText = "Your Payment is Pending/Challenge";
            }
            if ($paymentResponse == "202") {
                //denied
                $paymentText = "Your Payment is denied";
            }
            if ($paymentResponse == "103") {
                //error
                $paymentText = "Error Response by payment";
            }
            if ($paymentResponse == "102") {
                //failed
                $paymentText = "Failed Response by payment";
            }
            if ($paymentResponse == "300") {
                //error
                //Move Permanently, current and all future requests should be directed to the new URL
                $paymentText = "Error, new URL needed";
            }
            if ($paymentResponse >= 400) {
                //error
                //Validation Error, merchant sent bad request data example; validation error, invalid transaction type, invalid credit card format, etc.
                $paymentText = "Validation Error";
            }
            if ($paymentResponse >= 500) {
                //error
                //Internal Server Error
                $paymentText = "Internal Server Error";
            }
        }
        ?>
<div class="container attop" style="text-align: center;" >
<div class="col-md-8 col-md-offset-2">

    <div class="appear_logo_pages">
        <a href="<?php 
        echo _SPPATH;
        ?>
">
            <img src="<?php 
        echo _SPPATH;
        ?>
images/appear-payment.png" >
        </a>
    </div>

    <div class="app" style="background-color: #dedede;">
        <div style="background-color: #f6f6f6; padding: 5px; text-align: center; font-size: 20px;">Payment For</div>
        <div class="col-md-3 " style="text-align: center; min-height: 270px;  padding: 10px; background-color: #FFFFFF;">
            <b >App Details</b><br><br>
            <img src="<?php 
        echo $app->app_icon;
        ?>
" width="80%"><br>
            <?php 
        echo $app->app_name;
        ?>
        </div>
        <div class="col-md-9 " style="text-align: center; padding: 10px;background-color: #dedede;">
            <div style="padding-bottom: 20px; font-weight: bold;">Package Details</div>
            <div class="clearfix"></div>
            <div class="col-md-6 col-sm-6 col-xs-6">
                <img style="cursor: pointer;" id="paket1" onclick="setPaket(1);" src="<?php 
        echo _SPPATH;
        ?>
images/paket-android-ios.png" width="100%">
                <small>what you get</small>
            </div>
            <div class="col-md-6 col-sm-6 col-xs-6">
                <img style="cursor: pointer;" id="paket2" onclick="setPaket(2);" src="<?php 
        echo _SPPATH;
        ?>
images/paket-android-2.png"  width="100%">
                <small>what you get</small>
            </div>
            <div class="clearfix"></div>
            <script>
                var paket_selected = 3;
                function setPaket(x){
                    if(x == 1){
                        $('#paket2').attr("src","<?php 
        echo _SPPATH;
        ?>
images/paket-android-2.png");
                        $('#paket1').attr("src","<?php 
        echo _SPPATH;
        ?>
images/paket-android-ios.png");
                        $('#paketprice').html("IDR <?php 
        echo idr($paket1->paket_price);
        ?>
 / year");
                        paket_selected = 3;
                        $('#paybuttonpaket3').show();
                        $('#paybuttonpaket2').hide();
                    }else{
                        $('#paket2').attr("src","<?php 
        echo _SPPATH;
        ?>
images/paket-android.png");
                        $('#paket1').attr("src","<?php 
        echo _SPPATH;
        ?>
images/paket-android-ios-2.png");
                        $('#paketprice').html("IDR <?php 
        echo idr($paket2->paket_price);
        ?>
 / year");
                        paket_selected = 2;
                        $('#paybuttonpaket2').show();
                        $('#paybuttonpaket3').hide();
                    }
                }
            </script>
        </div>
        <div class="clearfix"></div>
        <div id="paketprice" style="background-color: #f6f6f6; padding: 5px; text-align: center; font-size: 30px;">IDR <?php 
        echo idr($paket1->paket_price);
        ?>
 / year</div>
    </div>

    <div style="padding: 20px;">
        <a id="paybuttonpaket3" href="<?php 
        echo _SPPATH;
        ?>
Vp/pay?app_id=<?php 
        echo $app->app_id;
        ?>
&paket=3" class="btn btn-danger btn-lg">PAY NOW USING VERITRANS</a>
        <a id="paybuttonpaket2" style="display: none;" href="<?php 
        echo _SPPATH;
        ?>
Vp/pay?app_id=<?php 
        echo $app->app_id;
        ?>
&paket=2" class="btn btn-danger btn-lg">PAY NOW USING VERITRANS</a>

        <!--            <a href="--><?php 
        //=_SPPATH;
        ?>
<!--VeritransPay/pay?app_id=--><?php 
        //=$app->app_id;
        ?>
<!--" class="btn btn-danger btn-lg">PAY NOW USING VERITRANS</a>-->
    </div>

    <hr>
    <div style="text-align: center; ">
        <i>We support education, social, spiritual and other non-profit organization. <br>If this App is for one of the above purposes.</i><br>
        <a href="<?php 
        echo _SPPATH;
        ?>
apply_free?id=<?php 
        echo $app->app_id;
        ?>
" class="btn btn-default">apply as FREE apps</a>
        <br>
        <small>what you get</small>
    </div>
    <hr>
    <div style="text-align: center; margin-bottom: 100px;">
        <a href="<?php 
        echo _SPPATH;
        ?>
myapps">I will finish the payment later. Go back to My Apps.</a>
    </div>


<?php 
    }
コード例 #2
0
    function free()
    {
        $app = new AppAccount();
        $arrApp = $app->getWhere("app_active = 1 AND app_type = 1 ORDER BY app_contract_start ASC");
        //        pr($arrApp);
        ?>
        <h1>Free Approval Queue</h1>
        <div class="table-responsive">
            <table class="table table-striped">
                <thead>
                <tr>
                    <th>
                        App Details
                    </th>
                    <th>
                        Organization Details
                    </th>
                    <th>
                        User & Agent
                    </th>
                    <th>
                        Contract
                    </th>
                    <th>
                        Paket
                    </th>
                    <th>
                        Status
                    </th>

                </tr>
                </thead>
                <tbody>
                <?php 
        foreach ($arrApp as $app) {
            $paket = new Paket();
            $paket->getByID($app->app_paket_id);
            $acc = new Account();
            $acc->getByID($app->app_client_id);
            $agent = new Account();
            if ($acc->admin_marketer != "") {
                $agent->getByUsername($acc->admin_marketer);
            }
            $vp = new VpTransaction();
            $arrT = $vp->getWhere("order_app_id = '{$app->app_id}'");
            $free = new AppFree();
            $free->getByID($app->app_id);
            ?>
                    <tr>
                        <td>
                            ID :<?php 
            echo $app->app_id;
            ?>
<br>
                            <?php 
            echo $app->app_name;
            ?>
                        </td>
                        <td>
                            Apply Date : <?php 
            echo $free->free_date;
            ?>
<br>
                            Org Name : <?php 
            echo $free->free_org_name;
            ?>
<br>
                            Org Type : <?php 
            echo $free->free_org_type;
            ?>
<br>
                            Address : <?php 
            echo $free->free_address;
            ?>
<br>
                            Contact Name : <?php 
            echo $free->free_org_name;
            ?>
<br>
                            Phone : <?php 
            echo $free->free_org_name;
            ?>
<br>
                            Email : <?php 
            echo $free->free_org_name;
            ?>
<br>
                            Docs : <br><?php 
            $exp = explode(",", $free->free_org_docs);
            foreach ($exp as $x) {
                ?>
                                <a href="<?php 
                echo _SPPATH . _PHOTOURL . "inputfiles/" . $x;
                ?>
" target="_blank">
                                    <img src="<?php 
                echo _SPPATH . _PHOTOURL . "inputfiles/" . $x;
                ?>
" width="100px">
                                </a>
                                <?php 
            }
            ?>


                        </td>
                        <td>
                            <?php 
            echo $acc->admin_username;
            ?>
                            <?php 
            echo $acc->admin_nama_depan;
            ?>
                            <br>
                            <?php 
            echo $acc->admin_email;
            ?>
<br>
                            <?php 
            echo $acc->admin_phone;
            ?>
                            <hr>
                            Agent <br>
                            <?php 
            echo $agent->admin_username;
            ?>
                            <?php 
            echo $agent->admin_nama_depan;
            ?>
                            <br>
                            <?php 
            echo $agent->admin_email;
            ?>
<br>
                            <?php 
            echo $agent->admin_phone;
            ?>
                        </td>
                        <td>Start :
                            <?php 
            echo $app->app_contract_start;
            ?>
                            <br> End :
                            <?php 
            echo $app->app_contract_end;
            ?>

                        </td>
                        <td><?php 
            echo $paket->paket_name;
            ?>
</td>
                        <td>
                            <?php 
            echo $app->app_active;
            ?>
<br>
                            <button onclick="accept_free('<?php 
            echo $app->app_id;
            ?>
');"  class="btn btn-default">Accept App</button><br>
                            <button onclick="reject_free('<?php 
            echo $app->app_id;
            ?>
');" class="btn btn-default">Reject App</button><br>
                            <button onclick="view_free('<?php 
            echo $app->app_id;
            ?>
');" class="btn btn-default">View App</button>
                        </td>
                    </tr>
                <?php 
        }
        ?>
                </tbody>
            </table>
        </div>
        <script>

            function accept_free(id){

                if(confirm("this will accept the app"))
                $.post("<?php 
        echo _SPPATH;
        ?>
JobBE/actionfree",{app_id:id,action : "accept"},function(data){

                    console.log(data);
                    if(data.bool){
                        alert("Sukses");
                        lwrefresh('Accept_Free_Apps');
                    }else{
                        alert("Gagal");
                    }
                },'json');

            }
            function reject_free(id){
                if(confirm("this will reject the app"))
                $.post("<?php 
        echo _SPPATH;
        ?>
JobBE/actionfree",{app_id:id,action : "reject"},function(data){

                    console.log(data);
                    if(data.bool){
                        alert("Sukses");
                        lwrefresh('Accept_Free_Apps');
                    }else{
                        alert("Gagal");
                    }
                },'json');
            }
            function view_free(id){

            }
        </script>
    <?php 
    }
コード例 #3
0
    function revenue()
    {
        $vp = new VpTransaction();
        global $db;
        $q = "SELECT SUM(order_value) as total FROM {$vp->table_name} WHERE order_status = '1'  OR order_status = '2'";
        $arrRev = $db->query($q, 1);
        $mon = isset($_GET['mon']) ? addslashes($_GET['mon']) : date("n");
        //        pr($arrRev);
        ?>
        <h1>Total Revenue</h1>
        <h1>IDR <?php 
        echo idr($arrRev->total);
        ?>
</h1>

        Month : <select id="mon_m">
            <?php 
        for ($x = 1; $x < 13; $x++) {
            ?>
                <option <?php 
            if ($mon == $x) {
                echo "selected";
            }
            ?>
 value="<?php 
            echo $x;
            ?>
"><?php 
            echo $x;
            ?>
</option>
            <?php 
        }
        ?>
        </select>


        <button id="change_m" class="btn btn-default">Change Month</button>
        <script>
            $('#change_m').click(function(){

                openLw("Revenue",'<?php 
        echo _SPPATH;
        ?>
FinanceBE/revenue?mon='+$('#mon_m').val(),'fade');
            });
        </script>

        <?php 
        $q = "select SUM(order_value) as total from {$vp->table_name} where month(order_date) = " . $mon . " AND (order_status = '1'  OR order_status = '2')";
        $arrRev = $db->query($q, 1);
        ?>
        <hr>
        <h2>Revenue This Month</h2>
        <h2>IDR <?php 
        echo idr($arrRev->total);
        ?>
</h2>
        <?php 
        $arrs = $vp->getWhere("month(order_date) = " . $mon . " AND (order_status = '1'  OR order_status = '2')");
        //        pr($arrs);
        ?>
        <div class="table-responsive">
            <table class="table">
                <thead>
                    <tr>
                        <th>order_id</th>
                        <th>order_app_id</th>
                        <th>order_acc_id</th>
                        <th>order_date</th>
                        <th>order_value</th>
                        <th>order_paket_id</th>
                        <th>order_status</th>
                        <th>order_message</th>
                        <th>order_status_from</th>
                    </tr>
                </thead>
                <tbody>
                <?php 
        foreach ($arrs as $vp) {
            ?>
                    <tr>
                        <td><?php 
            echo $vp->order_id;
            ?>
</td>
                        <td><?php 
            echo $vp->order_app_id;
            ?>
</td>
                        <td><?php 
            echo $vp->order_acc_id;
            ?>
</td>
                        <td><?php 
            echo $vp->order_date;
            ?>
</td>
                        <td><?php 
            echo $vp->order_value;
            ?>
</td>
                        <td><?php 
            echo $vp->order_paket_id;
            ?>
</td>
                        <td><?php 
            echo $vp->order_status;
            ?>
</td>
                        <td><?php 
            echo $vp->order_message;
            ?>
</td>
                        <td><?php 
            echo $vp->order_status_from;
            ?>
</td>
                    </tr>
                    <?php 
        }
        ?>
                </tbody>
            </table>
        </div>
        <?php 
    }
コード例 #4
0
    public static function myorderspage()
    {
        $arrPaymentStatus = array("1" => array("settlement", "success"), "2" => array("success", "success"), "3" => array("challenge", "failed"), "4" => array("pending", "pending"), "5" => array("deny", "denied"), "6" => array("cancel", "canceled"));
        ?>
        <style>

            @media (max-width: 768px) {

                .monly {
                    display: initial;
                }

                .donly {
                    display: none;
                }

            }

            @media (min-width: 768px) {
                .monly {
                    display: none;
                }

                .donly {
                    display: initial;
                }



            }

        </style>
        <style>
            .heading_earning{
                font-size: 17px;
                font-style: italic;
            }
            .heading_amount{
                font-size: 40px;
            }

            .inside{
                padding: 20px;
            }
            .selectMonth{
                /*padding-left: 10px;*/
            }
            .payout{
                color: #95abc2;
            }
            .money{
                font-size: 22px;
                color: #73879C;
            }
            .big{
                font-size: 25px;
                color: #73879C;
            }
            .rev_item{
                background-color: #ffffff;
                margin-top: 20px;
                margin-bottom: 20px;
            }
            .order_id{
                font-size: 20px;
                color: #73879C;
            }
            .pdate{
                color: #73879C;
                font-style: italic;
            }
            .heading_amount{
                font-size: 30px;
                text-align: right;
                padding-bottom: 100px;
            }
            .heading_amount_Sales{
                font-size: 18px;
                text-align: right;
                /*padding-bottom: 20px;*/
            }

            @media (max-width: 768px) {

                .monly {
                    display: initial;
                }

                .donly {
                    display: none;
                }

                .selectMonth{
                    padding-left: 0px;
                    padding-bottom: 20px;
                    border-bottom: 1px solid #CCCCCC;
                }
                .rightborder{
                    border-bottom: 1px solid #CCCCCC;
                }
                .leftborder{
                    border-top: 1px solid #CCCCCC;
                }
                .inside{
                    padding: 10px;
                }
                .tarmob{
                    /*text-align: right;*/
                }

            }

            @media (min-width: 768px) {
                .monly {
                    display: none;
                }

                .donly {
                    display: initial;
                }

                .leftborder{
                    border-left: 1px solid #CCCCCC;
                    min-height: 120px;
                }

                .rightborder{
                    border-right: 1px solid #CCCCCC;
                }
            }
        </style>
        <div class="container attop"  >
            <div class="col-md-12">
                <div class="appear_logo_pages">
                    <a href="<?php 
        echo _SPPATH;
        ?>
">
                        <img src="<?php 
        echo _SPPATH;
        ?>
images/appear-order.png" >
                    </a>
                </div>
                <?php 
        $orders = new VpTransaction();
        $arrOrder = $orders->getWhere("order_acc_id = '" . Account::getMyID() . "' ORDER BY order_date DESC");
        if (count($arrOrder) > 0) {
            foreach ($arrOrder as $num => $orders) {
                $app = new AppAccount();
                $app->getByID($orders->order_app_id);
                $paket = new Paket();
                $paket->getByID($orders->order_paket_id);
                ?>
                        <div class="rev_item col-md-12">
                            <div class="col-md-5 ">
                                <div class="inside">
                                    <div class="payout col-md-6 col-sm-6 col-xs-6">
                                        <div class="rev_details2">
                                            <small>Order ID</small>
                                            <div class="order_id"><?php 
                echo $orders->order_id;
                ?>
</div>
                                        </div>
                                    </div>
                                    <div class="payout col-md-6 col-sm-6 col-xs-6">
                                        <div class="rev_details">
                                            Date : <?php 
                echo date("F j, Y, g:i a", strtotime($orders->order_date));
                ?>
                                        </div>
                                        <div class="rev_details">
                                            App : <?php 
                echo $app->app_name;
                ?>
                                        </div>

                                        <div class="rev_details">
                                            Paket  : <?php 
                echo $paket->paket_name;
                ?>
                                        </div>
                                    </div>
                                    <div class="clearfix"></div>
                                </div>
                            </div>



                            <div class="col-md-3 payout leftborder rightborder">
                                <div class="inside">
                                    <div class="komisi tarmob">
                                        Order Value
                                        <div class="order_id"> IDR <?php 
                echo idr($orders->order_value);
                ?>
</div>
                                    </div>
                                </div>
                            </div>
                            <div class="col-md-4 ">
                                <div class="inside tarmob">
                                    <small>Status</small>
                                    <div class="money big"><?php 
                echo $arrPaymentStatus[$orders->order_status][1];
                ?>
</div>
                                    <?php 
                if ($orders->order_status == "1" || $orders->order_status == "2") {
                    ?>
                                        <a href="<?php 
                    echo _SPPATH;
                    ?>
PaymentWeb/receipt?order_id=<?php 
                    echo $orders->order_id;
                    ?>
">receipt</a>
                                    <?php 
                }
                ?>
                                    <?php 
                if ($orders->order_status != "1" && $orders->order_status != "2" && $orders->order_status != "4") {
                    if ($app->app_active == 0) {
                        ?>
                                            <a href="<?php 
                        echo _SPPATH;
                        ?>
PaymentWeb/pay?app_id=<?php 
                        echo $app->app_id;
                        ?>
">pay again using different method</a>
                                        <?php 
                    }
                }
                ?>
                                </div>
                            </div>
                            <div class="clearfix"></div>
                        </div>
                    <?php 
            }
            ?>
                    <div class="clearfix"></div>


                <?php 
        } else {
            ?>
                    <h1>No orders has been made yet</h1>
                <?php 
        }
        ?>
            </div>
        </div>
    <?php 
    }
コード例 #5
0
ファイル: Vp.php プロジェクト: CapsuleCorpIndonesia/apel-enak
 function pay()
 {
     $app_id = addslashes($_GET['app_id']);
     $app = new AppAccount();
     $app->getByID($app_id);
     AppAccount::checkOwnership($app);
     $paket_id = addslashes($_GET['paket']);
     $paket = new Paket();
     $paket->getByID($paket_id);
     global $db;
     //create new order
     $vpt = new VpTransaction();
     $vpt->order_id = mt_rand() . $app->app_id . Account::getMyID();
     $vpt->order_acc_id = Account::getMyID();
     $vpt->order_app_id = $app->app_id;
     $vpt->order_date = leap_mysqldate();
     $vpt->order_paket_id = $paket->paket_id;
     $vpt->order_value = $paket->paket_price;
     $vpt->order_status = 0;
     $vpt->order_status_from = 0;
     //hapus yang blom ada action apa2
     $q = "DELETE FROM {$vpt->table_name} WHERE order_app_id = '{$app->app_id}' AND order_status = '0' AND order_status_from = '0'";
     $db->query($q, 0);
     $arrVpt = $vpt->getWhere("order_app_id = '{$app->app_id}' AND order_status = '0' AND order_status_from != '0' ");
     if (count($arrVpt) > 0) {
         die("Please wait for the payment response");
     }
     if ($vpt->save()) {
         //        pr($paket);
         //        pr($app);
         try {
             // Set our server key
             //live
             //            Veritrans_Config::$serverKey = 'VT-server-3UfrS7tn0EDT99S2B18TnUh_';
             //sandbox
             Veritrans_Config::$serverKey = $this->getKeyUsed();
         } catch (Exception $e) {
             echo $e->getMessage();
         }
         if ($this->isProd) {
             // Uncomment for production environment
             Veritrans_Config::$isProduction = true;
             // Uncomment to enable sanitization
             Veritrans_Config::$isSanitized = true;
             // Uncomment to enable 3D-Secure
             Veritrans_Config::$is3ds = true;
         }
         $acc = Account::getAccountObject();
         $exp = explode(" ", $acc->admin_nama_depan);
         $billing_address = array('first_name' => $exp[0], 'last_name' => $exp[1], 'phone' => $acc->admin_phone, 'country_code' => 'IDN');
         $customer_details = array('first_name' => $exp[0], 'last_name' => $exp[1], 'email' => $acc->admin_email, 'phone' => $acc->admin_phone, 'billing_address' => $billing_address);
         $item1_details = array('id' => $app->app_id, 'price' => $paket->paket_price, 'quantity' => 1, 'name' => $app->app_name . " " . $paket->paket_name . " 1 year");
         $item_details = array($item1_details);
         $transaction = array('transaction_details' => array('order_id' => $vpt->order_id, 'gross_amount' => $paket->paket_price), 'customer_details' => $customer_details, 'item_details' => $item_details);
         try {
             // Redirect to Veritrans VTWeb page
             header('Location: ' . Veritrans_VtWeb::getRedirectionUrl($transaction));
         } catch (Exception $e) {
             echo $e->getMessage();
             if (strpos($e->getMessage(), "Access denied due to unauthorized")) {
                 echo "<code>";
                 echo "<h4>Please set real server key from sandbox</h4>";
                 echo "In file: " . __FILE__;
                 echo "<br>";
                 echo "<br>";
                 echo htmlspecialchars('Veritrans_Config::$serverKey = \'<your server key>\';');
                 die;
             }
         }
     } else {
         //if save
         die("Please contact admin");
     }
 }