Plugin Directory

Changeset 2093485


Ignore:
Timestamp:
05/23/2019 05:56:46 AM (7 years ago)
Author:
mariaaspen
Message:

Update Plugin With Wordpress 5.2

Location:
wp-paytm-pay/trunk
Files:
3 added
3 edited

Legend:

Unmodified
Added
Removed
  • wp-paytm-pay/trunk/encdec_paytm.php

    r2008896 r2093485  
    11<?php
    2 function encrypt_data($input, $ky)
    3 {
     2function encrypt_data($input, $ky){
    43    $key   = html_entity_decode($ky);
    54    $iv = "@@@@&&&&####$$$$";
     
    87}
    98
    10 function decrypt_data($crypt, $ky)
    11 {
     9function decrypt_data($crypt, $ky){
    1210   $key   = html_entity_decode($ky);
    1311    $iv = "@@@@&&&&####$$$$";
     
    1614}
    1715
    18 function pkcs5_pad_data($text, $blocksize)
    19 {
    20     $pad = $blocksize - (strlen($text) % $blocksize);
    21     return $text . str_repeat(chr($pad), $pad);
    22 }
    23 
    24 function pkcs5_unpad_e($text)
    25 {
    26     $pad = ord($text{strlen($text) - 1});
    27     if ($pad > strlen($text))
    28         return false;
    29     return substr($text, 0, -1 * $pad);
    30 }
    31 
    32 function generateSalt_e($length)
    33 {
     16function generateSalt_e($length){
    3417    $random = "";
    3518    srand((double) microtime() * 1000000);
     
    4326}
    4427
    45 function checkString_data($value)
    46 {
     28function checkString_data($value){
    4729    $myvalue = ltrim($value);
    4830    $myvalue = rtrim($myvalue);
     
    5234}
    5335
    54 function getChecksumFromArray($arrayList, $key, $sort = 1)
    55 {
    56     if ($sort != 0) {
     36function getChecksumFromArray($arrayList, $key, $sort = 1){
     37    if($sort != 0){
    5738        ksort($arrayList);
    5839    }
     
    6647}
    6748
    68 function verifychecksum_e($arrayList, $key, $checksumvalue)
    69 {
     49function verifychecksum_e($arrayList, $key, $checksumvalue){
    7050    $arrayList = removeCheckSumParam($arrayList);
    7151    ksort($arrayList);
     
    7858    $validFlag = "FALSE";
    7959
    80     if ($website_hash == $paytm_hash) {
     60    if($website_hash == $paytm_hash){
    8161        $validFlag = "TRUE";
    8262    } else {
     
    8666}
    8767
    88 function getArray2Str($arrayList)
    89 {
     68function getArray2Str($arrayList){
    9069    $paramStr = "";
    9170    $flag     = 1;
    92     foreach ($arrayList as $key => $value) {
    93         if ($flag) {
     71    foreach($arrayList as $key => $value){
     72        if($flag){
    9473            $paramStr .= checkString_data($value);
    9574            $flag = 0;
     
    10180}
    10281
    103 function redirect2PG($paramList, $key)
    104 {
    105     $hashString = getchecksumFromArray($paramList);
    106     $checksum   = encrypt_data($hashString, $key);
    107 }
    108 
    109 function removeCheckSumParam($arrayList)
    110 {
    111     if (isset($arrayList["CHECKSUMHASH"])) {
     82function removeCheckSumParam($arrayList){
     83    if(isset($arrayList["CHECKSUMHASH"])){
    11284        unset($arrayList["CHECKSUMHASH"]);
    11385    }
     
    11587}
    11688
    117 function getTxnStatus($requestParamList)
    118 {
    119     return callAPI(PAYTM_STATUS_QUERY_URL, $requestParamList);
    120 }
    121 
    122 function initiateTxnRefund($requestParamList)
    123 {
    124     $CHECKSUM                     = getChecksumFromArray($requestParamList, PAYTM_MERCHANT_KEY, 0);
    125     $requestParamList["CHECKSUM"] = $CHECKSUM;
    126     return callAPI(PAYTM_REFUND_URL, $requestParamList);
    127 }
    128 
    129 function callAPI($apiURL, $requestParamList)
    130 {
    131     /*$jsonResponse      = "";
    132     $responseParamList = array();
    133     $JsonData          = json_encode($requestParamList);
    134     $postData          = 'JsonData=' . urlencode($JsonData);
    135     $ch                = curl_init($apiURL);
    136     curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    137     curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
    138     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    139     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    140     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    141     curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    142         'Content-Type: application/json',
    143         'Content-Length: ' . strlen($postData)
    144     ));
    145     $jsonResponse      = curl_exec($ch);
    146     $responseParamList = json_decode($jsonResponse, true);
    147     return $responseParamList;*/
    148     $jsonResponse      = "";
     89function callAPI($apiURL, $requestParamList){
     90    $jsonResponse      = "";
    14991    $responseParamList = array();
    15092    $JsonData          = json_encode($requestParamList);
     
    15597    return $responseParamList;
    15698}
    157 
    158 function sanitizedParam($param)
    159 {
    160     $pattern[0]     = "%,%";
    161     $pattern[1]     = "%#%";
    162     $pattern[2]     = "%\(%";
    163     $pattern[3]     = "%\)%";
    164     $pattern[4]     = "%\{%";
    165     $pattern[5]     = "%\}%";
    166     $pattern[6]     = "%<%";
    167     $pattern[7]     = "%>%";
    168     $pattern[8]     = "%`%";
    169     $pattern[9]     = "%!%";
    170     $pattern[10]    = "%\\$%";
    171     $pattern[11]    = "%\%%";
    172     $pattern[12]    = "%\^%";
    173     $pattern[13]    = "%=%";
    174     $pattern[14]    = "%\+%";
    175     $pattern[15]    = "%\|%";
    176     $pattern[16]    = "%\\\%";
    177     $pattern[17]    = "%:%";
    178     $pattern[18]    = "%'%";
    179     $pattern[19]    = "%\"%";
    180     $pattern[20]    = "%;%";
    181     $pattern[21]    = "%~%";
    182     $pattern[22]    = "%\[%";
    183     $pattern[23]    = "%\]%";
    184     $pattern[24]    = "%\*%";
    185     $pattern[25]    = "%&%";
    186     $sanitizedParam = preg_replace($pattern, "", $param);
    187     return $sanitizedParam;
    188 }
     99?>
  • wp-paytm-pay/trunk/readme.txt

    r2085214 r2093485  
    33Tags: donation plugin, paytm, payment for wordpress, paytm integration, Paytm payment, paytm fundraising, paytm plugin for wordpress, wordpress Paytm Donation, Wp Paytm Donation
    44Requires at least: 4.9
    5 Tested up to: 5.1.1
    6 Stable tag: 1.3
     5Tested up to: 5.2
     6Stable tag: 1.3.1
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    5757Bug Solve.
    5858
     59= 1.3.1 =
     60Bug Solve.
    5961 
  • wp-paytm-pay/trunk/wp-paytm-pay.php

    r2081462 r2093485  
    11<?php
    2 
    32/*
    4 Plugin Name: Wp Paytm Pay.
     3Plugin Name: Wp Paytm Pay
    54Version: 1.3
    65Description: This plugin using visitors to donate via PayTM in either set or custom amounts
     
    1817
    1918add_action('init', 'paytm_update_db_check');
    20 add_action('init', 'paytm_donation_response');
    2119
    2220if(isset($_GET['donation_msg']) && $_GET['donation_msg'] != ""){
     
    2422}
    2523
    26 function paytm_update_db_check() {
     24function paytm_update_db_check(){
    2725    global $paytm_db_version;
    2826    global $wpdb;
     
    5351}
    5452       
    55 function paytm_activation() {
     53function paytm_activation(){
    5654    global $wpdb;
    5755    global $paytm_db_version;
     
    5957
    6058    $settings = paytm_settings_list();
    61     foreach ($settings as $setting) {
     59    foreach($settings as $setting){
    6260        add_option($setting['name'], $setting['value']);
    6361    }
     
    8987}
    9088
    91 function paytm_deactivation() {
     89function paytm_deactivation(){
    9290    global $wpdb;
    9391    $settings = paytm_settings_list();
    94         foreach ($settings as $setting) {
     92    foreach($settings as $setting){
    9593        delete_option($setting['name']);
    9694    }
     
    169167
    170168
    171 if (is_admin()) {
     169if(is_admin()){
    172170    add_action( 'admin_menu', 'paytm_admin_menu' );
    173171    add_action( 'admin_init', 'paytm_register_settings' );
    174172}
    175173
    176 function paytm_admin_menu() {
    177     add_menu_page('Paytm Settings', 'Paytm Settings', 'manage_options', 'paytm_options_page', 'paytm_options_page');
     174function paytm_admin_menu(){
     175    add_menu_page('Paytm Settings', 'Paytm Settings', 'manage_options', 'paytm_options_page', 'paytm_options_page', plugin_dir_url( __FILE__ ) . 'paytm-wallet.png');
    178176    add_submenu_page('paytm_options_page','Paytm Paymet Details','Paytm Paymet Details','manage_options','wp_paytm_donation','wp_paytm_donation');
    179 }
    180 
    181 function paytm_options_page() {
    182     echo '
    183     <div class="wrap">
    184         <h2>Paytm Configuarations</h2>
     177    ?>
     178    <style type="text/css">
     179        .toplevel_page_paytm_options_page .wp-menu-image img{ max-width:20px; padding-top:5px !important; }
     180    </style>
     181    <?php
     182}
     183
     184function paytm_options_page(){
     185    echo '<div class="wrap">
     186        <h2>Paytm Configurations</h2>
    185187            <form method="post" action="options.php" style="float:left; clear:none;">';
    186188                wp_nonce_field('update-options');
    187189                echo '<table class="form-table">';
    188                 $settings = paytm_settings_list();
    189                 foreach ($settings as $setting) {
    190                     echo '<tr><th scope="row">'.$setting['display'].'</th><td>';
    191                     if ($setting['type']=='radio') {
    192                         echo $setting['yes'].' <input type="'.$setting['type'].'" name="'.$setting['name'].'" value="1" ';
    193                         if (get_option($setting['name'])==1) { echo 'checked="checked" />'; } else { echo ' />'; }
    194                         echo $setting['no'].' <input type="'.$setting['type'].'" name="'.$setting['name'].'" value="0" ';
    195                         if (get_option($setting['name'])==0) { echo 'checked="checked" />'; } else { echo ' />'; }
    196                     } elseif ($setting['type']=='select') {
    197                         $values=$setting['values'];
    198                         echo '<select name="'.$setting['name'].'">';
    199                         foreach ($values as $value=>$name) {
    200                             echo '<option value="'.$value.'" ';
    201                             if (get_option($setting['name'])==$value) { echo ' selected="selected" ';}
    202                             echo '>'.$name.'</option>';
    203                         }
    204                         echo '</select>';
    205                     } else { echo '<input type="'.$setting['type'].'" name="'.$setting['name'].'" value="'.get_option($setting['name']).'" style="width: 400px;" />'; }
    206                     echo ' (<em>'.$setting['hint'].'</em>)</td></tr>';
    207                 }
    208                 echo '<tr><th style="text-align:center;"></th><td><input type="submit" class="button-primary" value="Save Changes" />';
    209                 echo '<input type="hidden" name="action" value="update" />
    210                 <input type="hidden" name="page_options" value="';
    211                 foreach ($settings as $setting) {
    212                     echo $setting['name'].',';
    213                 }
    214                 echo '" /></td></tr></table></form>';
     190                    $settings = paytm_settings_list();
     191                    foreach($settings as $setting){
     192                        echo '<tr><th scope="row">'.$setting['display'].'</th><td>';
     193                        if($setting['type']=='radio'){
     194                            echo $setting['yes'].' <input type="'.$setting['type'].'" name="'.$setting['name'].'" value="1" ';
     195                            if (get_option($setting['name'])==1) { echo 'checked="checked" />'; } else { echo ' />'; }
     196                            echo $setting['no'].' <input type="'.$setting['type'].'" name="'.$setting['name'].'" value="0" ';
     197                            if (get_option($setting['name'])==0) { echo 'checked="checked" />'; } else { echo ' />'; }
     198                        } elseif($setting['type']=='select'){
     199                            $values = $setting['values'];
     200                            echo '<select name="'.$setting['name'].'">';
     201                            foreach($values as $value => $name){
     202                                echo '<option value="'.$value.'" ';
     203                                if (get_option($setting['name']) == $value) { echo ' selected="selected" '; }
     204                                echo '>'.$name.'</option>';
     205                            }
     206                            echo '</select>';
     207                        } else { echo '<input type="'.$setting['type'].'" name="'.$setting['name'].'" value="'.get_option($setting['name']).'" style="width: 400px;" />'; }
     208                        echo ' (<em>'.$setting['hint'].'</em>)</td></tr>';
     209                    }
     210                    echo '<tr><th style="text-align:center;"></th><td><input type="submit" class="button-primary" value="Save Changes" />';
     211                    echo '<input type="hidden" name="action" value="update" />
     212                    <input type="hidden" name="page_options" value="';
     213                    foreach($settings as $setting){
     214                        echo $setting['name'].',';
     215                    }
     216                    echo '" /></td></tr>
     217                </table>
     218            </form>';
    215219    echo '</div>';
    216220}
    217221
    218 function wp_paytm_donation()
    219 {
     222function wp_paytm_donation(){
    220223    require_once(dirname(__FILE__) . '/wp-paytm-pay-listings.php');
    221224}
    222225
    223 
    224 function paytm_register_settings() {
     226function paytm_register_settings(){
    225227    $settings = paytm_settings_list();
    226     foreach ($settings as $setting) {
     228    foreach ($settings as $setting){
    227229        register_setting($setting['name'], $setting['value']);
    228230    }
     
    230232
    231233add_shortcode( 'paytmpay', 'paytm_donate_button' );
    232 add_action('admin_post_paytm_donation_request','paytm_donate_button');
    233 
    234 function paytm_donate_button() {
    235     if( !isset($_POST['ORDERID']) && !isset($_GET['donation_msg'])){
    236         global $wpdb;
    237         extract(
    238             array(
    239                 'paytm_merchant_id' => trim(get_option('paytm_merchant_id')),
    240                 'paytm_merchant_key' => trim(get_option('paytm_merchant_key')),
    241                 'paytm_website' => trim(get_option('paytm_website')),
    242                 'paytm_industry_type_id' => trim(get_option('paytm_industry_type_id')),
    243                 'paytm_channel_id' => trim(get_option('paytm_channel_id')),
    244                 'paytm_mode' => trim(get_option('paytm_mode')),
    245                 'paytm_amount' => trim(get_option('paytm_amount')),     
    246                 'paytm_content' => trim(get_option('paytm_content'))                       
    247             )
    248         );
    249 
    250         if(isset($_POST['paytmcheckout'])){     
    251                 $valid = true;
    252                 $html = '';
    253                 $msg = '';
    254            
    255                 if( $_POST['donor_name'] != ''){
    256                     $donor_name = sanitize_text_field($_POST['donor_name']);
    257                 }
    258                 else{
    259                     $valid = false;
    260                     $msg.= 'Name is required </br>';
    261                 }
    262            
    263                 if( $_POST['donor_email'] != ''){
    264                     $donor_email = sanitize_email($_POST['donor_email']);
    265                     if( preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/" , $donor_email)){}
    266                     else{
    267                         $valid = false;
    268                         $msg.= 'Invalid email format </br>';
    269                     }
    270                 }
    271                 else{
    272                     $valid = false;
    273                     $msg.= 'E-mail is required </br>';
    274                 }
    275                
    276                 if( $_POST['donor_amount'] != ''){
    277                     $donor_amount = intval($_POST['donor_amount']);
    278                     if($donor_amount < 1)
    279                     {
    280                         $valid = false;
    281                         $msg.= 'Amount cannot be less then $1</br>';
    282                    
    283                     }else if( $donor_amount >= 50000 && $_POST['donor_pan'] == ''){
    284                         $valid = false;
    285                         $msg.= 'If Amount greater then 50000 then pan card no compulsory.';
    286                     }
    287                 } else {
    288                     $valid = false;
    289                     $msg.= 'Amount is required </br>';
    290                 }
    291                
    292                 if( $_POST['donor_pan'] != ''){   
    293                     $value = $_POST['donor_pan']; //PUT YOUR PAN CARD NUMBER HERE
    294                     $pattern = '/^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/';
    295                     $result = preg_match($pattern, $value);
    296                     if ($result) {
    297                         $findme = ucfirst(substr($value, 3, 1));
    298                         $mystring = 'CPHFATBLJG';
    299                         $pos = strpos($mystring, $findme);
    300                         if ($pos === false) {
    301                             $valid = false;   
    302                             $msg .= "Pan Card Is Not valid";
    303                         }
    304                     } else {
    305                         $valid = false;   
    306                         $msg .= "Pan Card Is Not valid";
    307                     }
    308            
    309                 }
    310                
    311                 if($valid){
    312                     $table_name = $wpdb->prefix . "paytm_donation";
    313                     $order_id = date('YmdHis'); //"ORDS" . rand(10000,99999999);
    314                     $data = array(
    315                         'name' => sanitize_text_field($_POST['donor_name']),
    316                         'order_id' => sanitize_text_field($order_id),
    317                         'email' => sanitize_text_field($_POST['donor_email']),
    318                         'phone' => sanitize_text_field($_POST['donor_phone']),
    319                         'address' => sanitize_text_field($_POST['donor_address']),
    320                         'city' => sanitize_text_field($_POST['donor_city']),
    321                         'country' => sanitize_text_field($_POST['donor_country']),
    322                         'state' => sanitize_text_field($_POST['donor_state']),
    323                         'zip' => sanitize_text_field($_POST['donor_postal_code']),
    324                         'amount' => sanitize_text_field($_POST['donor_amount']),
    325                         'pan_no' => sanitize_text_field($_POST['donor_pan']),
    326                         'payment_status' => 'Pending Payment',
    327                         'date' => date('Y-m-d H:i:s'),
    328                     );
    329                    
    330                     $wpdb->insert($table_name, $data);
    331                    
    332                     $post_params = array(
    333                         'MID' => $paytm_merchant_id,
    334                         'ORDER_ID' => $order_id,
    335                         'WEBSITE' => $paytm_website,
    336                         'CHANNEL_ID' => $paytm_channel_id,
    337                         'INDUSTRY_TYPE_ID' => $paytm_industry_type_id,
    338                         'TXN_AMOUNT' => sanitize_text_field($_POST['donor_amount']),
    339                         'CUST_ID' => sanitize_text_field($_POST['donor_email']),
    340                         'EMAIL' => sanitize_text_field($_POST['donor_email']),
    341                     );     
    342    
    343                    
    344                     $post_params["CALLBACK_URL"] = get_permalink();
    345                    
    346                     $checkSum = getChecksumFromArray ($post_params,$paytm_merchant_key);
    347                     $call = get_permalink();
    348                     $action_url = "https://securegw-stage.paytm.in/order/process";
    349                     if($paytm_mode == 'LIVE'){
    350                         $action_url = "https://securegw.paytm.in/order/process";
    351                     }
    352 
    353                    
    354                     $html= '<<<EOF
    355                         <center><h1>Please do not refresh this page...</h1></center>
    356                                 <form method="post" action="$action_url" name="f1">
    357                                 <table border="1">
    358                                         <tbody>
    359                                                 <input type="hidden" name="MID" value="$paytm_merchant_id">
    360                                                 <input type="hidden" name="WEBSITE" value="$paytm_website">
    361                                                 <input type="hidden" name="CHANNEL_ID" value="$paytm_channel_id">
    362                                                 <input type="hidden" name="ORDER_ID" value="$order_id">
    363                                                 <input type="hidden" name="INDUSTRY_TYPE_ID" value="$paytm_industry_type_id">                                   
    364                                                 <input type="hidden" name="TXN_AMOUNT" value="{$donor_amount}">
    365                                                 <input type="hidden" name="CUST_ID" value="{$donor_email}">
    366                                                 <input type="hidden" name="EMAIL" value="{$donor_email}">
    367                                                 <input type="hidden" name="CALLBACK_URL" value="$call">
    368                                                 <input type="hidden" name="CHECKSUMHASH" value="$checkSum">
    369                                         </tbody>
    370                                 </table>
    371                                 <script type="text/javascript">
    372                                         document.f1.submit();
    373                                 </script>
    374                         </form>
    375 EOF';       
    376                 return $html;
    377             }else{
    378                 return $msg;
    379             }
    380         }else{
    381            
    382             $html ="";
    383             $html='<form name="frmTransaction" method="post" >
    384                 <p><label for="name"> Name:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label> <input type="text" name="donor_name"  maxlength="255" value=""/> </p>
    385                 <p><label for="email"> Email:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_email"  maxlength="40" value=""/> </p>
    386                 <p><label for="phone"> Phone:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label> <input type="text" name="donor_phone"  maxlength="255" value=""/> </p>                    <p><label for="amount" > Amount:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_amount" value="'.$paytm_amount.'"/> </p>
    387                                 <p><label for="amount" > Pan No:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_pan" value=""/> </p>   
    388                 <p><label for="address"> Address:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</lable><input type="text" name="donor_address" maxlength="255" value=""/> </p>
    389                 <p><label for="city" > City:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_city"  maxlength="255" value=""/> </p>
    390                 <p><label for="state" > State:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_state"  maxlength="255" value=""/> </p>
    391                 <p><label for="postal_code" > Postal Code: &nbsp;</lable> <input type="text" name="donor_postal_code"  maxlength="255" value=""/> </p>
    392                 <p><label for="state" > Country:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label><input type="text" name="donor_country"  maxlength="255" value=""/> </p>
    393                 ';
    394                            
    395             $html .= '<input name="paytmcheckout" type="submit" value="' . $paytm_content .'"/>';
    396            
    397             return $html;
     234
     235function paytm_donate_button(){
     236    if(isset($_POST['ORDERID']) && isset($_POST['RESPCODE'])){
     237        require_once(dirname(__FILE__) . '/wp-paytm-response.php');
     238    } else {
     239        if(!isset($_GET['donation_msg'])){
     240            echo require_once(dirname(__FILE__) . '/wp-paytm-form.php');
    398241        }
    399242    }   
    400243}
    401 
    402 function paytm_donation_response(){
    403     if(! empty($_POST) && isset($_POST['ORDERID'])){
    404         global $wpdb;
    405         extract(
    406             array(
    407                 'paytm_merchant_id' => get_option('paytm_merchant_id'),
    408                 'paytm_merchant_key' => get_option('paytm_merchant_key'),
    409                 'paytm_website' => get_option('paytm_website'),
    410                 'paytm_industry_type_id' => get_option('paytm_industry_type_id'),
    411                 'paytm_channel_id' => get_option('paytm_channel_id'),
    412                 'paytm_mode' => get_option('paytm_mode'),
    413                 'paytm_amount' => get_option('paytm_amount'),                                               
    414                 'paytm_thanks_page_url' => get_option('paytm_thanks_page_url')                                             
    415             )
    416         );
    417 
    418         $isSuccess = false;
    419         if(verifychecksum_e($_POST,$paytm_merchant_key,$_POST['CHECKSUMHASH']) === "TRUE"){
    420             if($_POST['RESPCODE'] == "01"){
    421                 // Create an array having all required parameters for status query.
    422                 $requestParamList = array("MID" => $paytm_merchant_id , "ORDERID" => $_POST['ORDERID']);
    423                
    424                 // Call the PG's getTxnStatus() function for verifying the transaction status.
    425                
    426                 $check_status_url = 'https://securegw-stage.paytm.in/order/status';
    427                 if($paytm_mode == 'LIVE'){
    428                     $check_status_url = 'https://securegw.paytm.in/order/status';
    429                 }
    430 
    431                 $responseParamList = callAPI($check_status_url, $requestParamList);
    432                 //echo "<pre>"; print_r($responseParamList); die();
    433                
    434                 if($responseParamList['STATUS'] == 'TXN_SUCCESS' && $responseParamList['TXNAMOUNT'] == $_POST['TXNAMOUNT'])
    435                 {
    436                     $returnOrderId = $_POST['ORDERID'];
    437                     $wpdb->query(" UPDATE ".$wpdb->prefix . "paytm_donation SET payment_status = 'Complete Payment' WHERE  order_id = $returnOrderId ");
    438 
    439                     $msg = "Thank you for donation . Your transaction has been successful.";
    440                     $isSuccess = true;
    441                 } else {
    442                     $returnOrderId = $_POST['ORDERID'];
    443                     $wpdb->query(" UPDATE ".$wpdb->prefix . "paytm_donation SET payment_status = 'Fraud Payment' WHERE  order_id = $returnOrderId ");
    444 
    445                     $msg = "Thank You. However, the transaction has been Failed";
    446                 }
    447             } else {
    448                 $returnOrderId = $_POST['ORDERID'];
    449                 $wpdb->query(" UPDATE ".$wpdb->prefix . "paytm_donation SET payment_status = 'Canceled Payment' WHERE  order_id = $returnOrderId ");
    450 
    451                 $msg = "Thank You. However, the transaction has been Failed For Reason  : "  . sanitize_text_field($_POST['RESPMSG']);
    452             }
    453         } else {
    454             $returnOrderId = $_POST['ORDERID'];
    455             $wpdb->query(" UPDATE ".$wpdb->prefix . "paytm_donation SET payment_status = 'Payment Error' WHERE  order_id = $returnOrderId ");
    456 
    457             $msg = "Security error!";
    458         }
    459 
    460         $redirect_url = get_permalink(get_the_ID());
    461         if($isSuccess){
    462             if(trim($paytm_thanks_page_url) != ''){
    463                 $redirect_url = trim($paytm_thanks_page_url);
    464             }
    465         }
    466 
    467         $redirect_after_payment = add_query_arg( array('donation_msg' => urlencode($msg)), $redirect_url);
    468         wp_redirect( $redirect_after_payment, 301 );
    469         exit();
    470     }
    471 }
     244?>
Note: See TracChangeset for help on using the changeset viewer.