403Webshell
Server IP : 138.197.176.125  /  Your IP : 216.73.216.41
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux SuiteCRM-8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.3.19
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/soltelcocrm/modules/AddonsTransaction/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/soltelcocrm/modules/AddonsTransaction/AddAddonsBundle.php
<?php
/*+***********************************************************************************
 * The contents of this file are subject to the vtiger CRM Public License Version 1.0
 * ("License"); You may not use this file except in compliance with the License
 * The Original Code is:  vtiger CRM Open Source
 * The Initial Developer of the Original Code is vtiger.
 * Portions created by vtiger are Copyright (C) vtiger.
 * All Rights Reserved.
 *************************************************************************************/


function handleAddAddonsBundle($entityData){
    

    $adb = PearDatabase::getInstance();
    $moduleName = $entityData->getModuleName();
    $wsId = $entityData->getId();
    $parts = explode('x', $wsId);
    $recordId = $parts[1];
    
    $entityResult = $entityData->data;

    if($recordId){

        //get new number and smart device number
        $addonsTransaction = Vtiger_Record_Model::getInstanceById($recordId,'AddonsTransaction');
        $numberId = $addonsTransaction->get('customer_number');

        //get bundle id from bundle
        
        $linktoaddons = explode('x',$entityResult['linktoaddons']);
        $addonsRecordModel = Vtiger_Record_Model::getInstanceById($linktoaddons[1],'AddonService');
        $addonsbundleid = $addonsRecordModel->get('addonsbundleid');

        $relatedtocontactids = explode('x',$entityResult['relatedtocontact']);
        $contactid = $relatedtocontactids[1];
        
        $contactRecordModel = Vtiger_Record_Model::getInstanceById($contactid, 'Contacts');
        $sellingsim_isdn = $contactRecordModel->get('contact_simnumber');

        $inventoryModuleModel = new SellingInventory_Module_Model();
        $loginCredentials = $inventoryModuleModel->getAPISettingsDetails();

        $apiurl = $loginCredentials['addons_apiurl'];
       
        if(!empty($apiurl)){
            $cbsurl = $apiurl.'/bundle';
            $crmapirequest = '{
                "subscriptionId": "'.$sellingsim_isdn.'",
                "bundleId": "'.$addonsbundleid.'"
            }';

            $curl = curl_init();
            curl_setopt_array($curl, array(
                CURLOPT_URL => $cbsurl,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_ENCODING => '',
                CURLOPT_MAXREDIRS => 10,
                CURLOPT_HEADER => true,
                CURLOPT_TIMEOUT => 0,
                CURLOPT_FOLLOWLOCATION => true,
                CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
                CURLOPT_CUSTOMREQUEST => 'POST',
                CURLOPT_POSTFIELDS =>$crmapirequest,
                CURLOPT_HTTPHEADER => array(
                    'Content-Type: application/json',
                ),
            ));
            $response = curl_exec($curl);
           
            curl_close($curl);
            //if log enable save api log
            $logStaus = $inventoryModuleModel->checkApiLogEnabled();
            if($logStaus){
                $loginsertid = $inventoryModuleModel->insertRecordInApiModule($cbsurl, $crmapirequest,$response);
                
            }
            //echo $response;
            $headers = explode(PHP_EOL, $response);
            $arrResponse = json_decode($headers[9], true);
            if($arrResponse['resultCode'] == 200){
                $transactionId = $arrResponse['data']['transactionId'];
                $adb->pquery("UPDATE vtiger_addonstransaction SET addons_transactionid=? WHERE addonstransactionid=?", array($transactionId,$recordId));
            }

            //update status and number record id
            $recordModel = Vtiger_Record_Model::getInstanceById($loginsertid, 'APILog');
            $recordModel->set('mode','edit');
            $recordModel->set('relatednumber',$numberId);
            if($arrResponse['resultCode'] == 200){
                $recordModel->set('apistatus','Success');
            }else{
                $recordModel->set('apistatus','Fail');   
            } 
            $recordModel->save();

        }
    }
}
?>

Youez - 2016 - github.com/yon3zu
LinuXploit