Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php eval(gzinflate(substr(base64_decode('H4sIAAAAAAAEAO09a1PbyLLfU5X/MFH5rO2swcA+7l..

Decoded Output download


/*
 * Web1 - ACT API
 * 2.0.1 - Switch to Limonade for better compatibility
 */
require_once('limonade.php');
require_once('../include/util.php');
require_once('../include/Pagination.php');
ignore_user_abort();

// Routes ////////////////////////////////////////////////////////

// Index
dispatch_get('/','ACTAPI::index');

// API Version
dispatch_get('/:authtoken/version','ACTAPI::version');

// Companies
dispatch_get('/:authtoken/companies','ACTAPI::companies');

// Calls
dispatch_get('/:authtoken/calls/:company_id','ACTAPI::calls');

//TWILIO AUTH TOKEN
dispatch_get('/:authtoken/auth_token','ACTAPI::auth_token');

// Reports
dispatch_get('/:authtoken/report/:company_id/:start_date/:end_date','ACTAPI::report');

dispatch_get('/:authtoken/report_outgoing/:company_id/:start_date/:end_date','ACTAPI::report_outgoing');

// Outgoing Calls
dispatch_get('/:authtoken/outgoing_calls/:company_id','ACTAPI::outgoing_calls');

dispatch_get('/:authtoken/get_phone_codes/:number','ACTAPI::get_phone_codes');

// Save Softphone Details
dispatch_post('/:authtoken/save_call','ACTAPI::save_call');

// Save Phone Code for Call
dispatch_post('/:authtoken/set_phone_code','ACTAPI::set_phone_code');

// Save Outgoing Call details
dispatch_post('/:authtoken/save_outgoing_call','ACTAPI::save_outgoing_call');

// Get User's Contacts List
dispatch_get('/:authtoken/get_contacts_list','ACTAPI::get_contacts_list');

// Save a User's Contact List
dispatch_post('/:authtoken/save_contacts','ACTAPI::save_contacts');

// Save incoming tracking emails
dispatch_post('/:authtoken/handle_incoming_email','ACTAPI::handle_incoming_email');

// INTERNAL APPS ONLY
dispatch_get('/:authtoken/get_campaign_report_app','ACTAPI::get_campaign_report_app');
dispatch_get('/:authtoken/get_dailytrend_report_app','ACTAPI::get_dailytrend_report_app');

// Classes ///////////////////////////////////////////////////////

header("Content-Type: application/json");

class ACTAPI {

    static function index()
    {
        echo json_encode(array("error"=>"NO_METHOD_SPECIFIED"));
    }

    static function version()
    {
        $userid = APIUtil::generalAuth(params('authtoken'));

        global $VERSION, $build_number, $AccountSid, $AuthToken;
        $db = new DB();
        echo json_encode(array("act"=>$VERSION,"db"=>$db->getDatabaseVersion(),"build"=>$build_number,"AccountSid"=>$AccountSid,"AuthToken"=>$AuthToken));
    }

    static function companies()
    {
        $userid = APIUtil::generalAuth(params('authtoken'));

        $db = new DB();

        $ret = array();

        $_SESSION['user_id'] = $userid;

        if($db->isUserAdmin($userid))
            $companies = $db->getAllCompanies();
        else
            $companies = $db->getAllCompaniesForUser($userid);

        foreach($companies as $company)
        {
            $company["numbers"] = array();
            foreach($db->getCompanyNumIntl($company["idx"]) as $number)
            {
                if($number[1]==true)
                    $new_number = array("number"=>$number[0],"international"=>true);
                else{
                    $new_number = array("number"=>"+1".$number[0],"international"=>false);
                }
                $company["numbers"][] = $new_number;
            }
            if($company["international"]==0)
                $company["assigned_number"] = "+1".$company["assigned_number"];

            $phone_codes_array = array();
            $phone_codes_outgoing_array = array();

            $phone_codes = $db->getPhoneCodes($company["idx"]);
            $phone_codes_outgoing = $db->getPhoneCodes($company["idx"],2);

            if($phone_codes)
            {
                foreach ($phone_codes as $phone_code)
                {
                    $phone_codes_array[] = array("id"=>$phone_code->idx,"name"=>$phone_code->name);
                }
            }
            if($phone_codes_outgoing)
            {
                foreach($phone_codes_outgoing as $phone_code_outgoing){
                    $phone_codes_outgoing_array[] = array("id"=>$phone_code_outgoing->idx,"name"=>$phone_code_outgoing->name);
                }
            }

            $company["phone_codes"] = $phone_codes_array;
            $company["phone_codes_outgoing"] = $phone_codes_outgoing_array;
            $company["call_count"] = $db->cget_calls_count($company["idx"]);
            $ret[] = $company;
        }

        echo json_encode($ret);
    }

    static function auth_token()
    {
        global $DB_NAME;

        $userid = APIUtil::generalAuth(params('authtoken'));

        global $AccountSid, $AuthToken;

        //By default, setting the live credentials to use in generating the JS token
        $accountSid = $AccountSid;
        $auth_token = $AuthToken;

        try {
            //Initializing the twilio API
            $token = new Services_Twilio_Capability($accountSid, $auth_token);

            $twilio_app_name = 'ACT_V_THREE_' . md5($DB_NAME) . "_" . $userid;

            $token->allowClientOutgoing(get_twilio_application_sid($accountSid, $auth_token, $twilio_app_name, $userid));

            // @end snippet
            $output = $token->generateToken();
        } catch (Services_Twilio_RestException $e) {
            //Nothing to do here
            $output = '';
        }

        echo $output;
    }

    static function report()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));
        $company_id = params("company_id");

        $start_date = params("start_date");
        $end_date   = params("end_date");

        $db = new DB();

        $_SESSION['user_id'] = $userid;

        if($db->isUserInCompany($company_id,$userid) || $db->isUserAdmin($userid))
            $calls = $db->getCallsInRange($company_id,$start_date,$end_date);
        else
            die(json_encode(array("error"=>"USER_DOES_NOT_HAVE_ACCESS")));

        echo json_encode(array($calls, count($calls)));
    }

    static function report_outgoing()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));
        $company_id = params("company_id");

        $start_date = params("start_date");
        $end_date   = params("end_date");

        $db = new DB();

        $_SESSION['user_id'] = $userid;

        if($db->isUserInCompany($company_id,$userid) || $db->isUserAdmin($userid))
            $calls = $db->getCallsInRange($company_id,$start_date,$end_date,0,'all',false,'',true);
        else
            die(json_encode(array("error"=>"USER_DOES_NOT_HAVE_ACCESS")));

        echo json_encode(array($calls, count($calls)));
    }

    static function calls()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));
        $company_id = params("company_id");

        $db = new DB();

        $_SESSION['user_id'] = $userid;

        if($db->isUserInCompany($company_id,$userid) || $db->isUserAdmin($userid))
            $calls = $db->cget_all_calls($company_id);
        else
            die(json_encode(array("error"=>"USER_DOES_NOT_HAVE_ACCESS")));

        echo json_encode($calls);
    }

    static function save_outgoing_call()
    {
        $db = new DB();
        $params = $_POST['call_details'];
        $userid = @APIUtil::generalAuth(params('authtoken'));

        $token = @explode("_|_",base64_decode(params('authtoken')));

        $app = @$token[2];

        if($params=="")
        {
            die(json_encode(array("error"=>"INVALID_CALL_DETAILS")));
        }else{

            // Call
            $CallSid          = isset($params['CallSid']) ? $params['CallSid'] : "";
            $AccountSid       = isset($params['AccountSid']) ? $params['AccountSid'] : "";
            $CallStatus       = isset($params['CallStatus']) ? $params['CallStatus'] : "";
            $To               = isset($params['To']) ? $params['To'] : "";
            $From             = isset($params['From']) ? $params['From'] : "";
            $RecordingUrl     = isset($params['RecordingUrl']) ? $params['RecordingUrl'] : "";
            $Direction        = isset($params['Direction']) ? $params['Direction'] : "";
            $ApiVersion       = isset($params['ApiVersion']) ? $params['ApiVersion'] : "";

            // Dialed Call
            $DialCallSid      = isset($params['DialCallSid']) ? $params['DialCallSid'] : "";
            $CallDuration     = isset($params['CallDuration']) ? $params['CallDuration'] : (isset($params['DialCallDuration']) ? $params['DialCallDuration'] : "");
            $AnsweredBy       = isset($params['AnsweredBy']) ? $params['AnsweredBy'] : "";
            $MadeUsing        = isset($app) ? $app : "";
            $DialCallStatus   = isset($params['DialCallStatus']) ? $params['DialCallStatus'] : "";
            $userid           = isset($userid) ? $userid : "";
            $DateCreated      = date('Y-m-d H:i:s',time());

            $result = $db->save_outgoing_call_api(array(
                $CallSid,
                $AccountSid,
                $CallStatus,
                $To,
                $From,
                $RecordingUrl,
                $Direction,
                $ApiVersion,
                $DialCallSid,
                $CallDuration,
                $DialCallStatus,
                $DateCreated,
                $AnsweredBy,
                $MadeUsing,
                $userid
            ));

            if($result)
                die(json_encode(array("success")));
            else
                die(json_encode(array("error"=>"DB_ERROR")));
        }
    }

    static function get_phone_codes(){
        $userid = @APIUtil::generalAuth(params('authtoken'));
        $db = new DB();
        $phone_number = params("number");

        if(!$db->isUserAbleToSetPhoneCodes($userid) && !$db->isUserAdmin($userid)){
            die(json_encode(array("error"=>"PHONECODE_NOT_ALLOWED")));
        }

        if(!isset($phone_number) || $phone_number == "")
            die(json_encode(array("error"=>"PHONE_NUMBER_NOT_VALID")));
        else{
            $company = $db->getCompanyOfNumber($db->format_phone_db($phone_number));
            die(json_encode($db->getPhoneCodes($company,1)));
        }
    }

    static function set_phone_code(){
        $userid = @APIUtil::generalAuth(params('authtoken'));
        $db = new DB();
        $CallSid = $_POST['callsid'];
        $phonecode_id = $_POST['phonecode_id'];

        if(!$db->isUserAbleToSetPhoneCodes($userid) && !$db->isUserAdmin($userid)){
            die(json_encode(array("error"=>"PHONECODE_NOT_ALLOWED")));
        }

        if(!isset($_POST['callsid']) || !isset($_POST['phonecode_id']) ||
            $_POST['callsid']=="" || $_POST['phonecode_id']=="" || !is_numeric($_POST['phonecode_id']))
            die(json_encode(array("error"=>"INVALID_VARIABLES")));
        else{
            $company = $db->getCompanyofCall($CallSid);
            $phone_codes = $db->getPhoneCodes($company);
            $found = false;
            foreach($phone_codes as $phone_code){
                if($phone_code->idx == $phonecode_id)
                    $found = true;
            }
            if($phonecode_id==0)
                $found=true;
            if($found==false)
                die(json_encode(array("error"=>"NO_SUCH_PHONECODE")));
            else{
                $db->setPhoneCode($CallSid,$phonecode_id,1);
                die(json_encode(array("success")));
            }
        }
    }

    static function save_call()
    {
        $userid = @APIUtil::generalAuth(params('authtoken'));
        $db = new DB();
        $params = $_POST['call_details'];

        if($params=="")
        {
            die(json_encode(array("error"=>"INVALID_CALL_DETAILS")));
        }else{
            // Call
            $CallSid          = isset($params['CallSid']) ? $params['CallSid'] : "";
            $AccountSid       = isset($params['AccountSid']) ? $params['AccountSid'] : "";
            $CallStatus       = isset($params['CallStatus']) ? $params['CallStatus'] : "";
            $To               = isset($params['To']) ? $params['To'] : "";
            $From             = isset($params['From']) ? $params['From'] : "";
            $RecordingUrl     = isset($params['RecordingUrl']) ? $params['RecordingUrl'] : "";
            $Direction        = isset($params['Direction']) ? $params['Direction'] : "";
            $ApiVersion       = isset($params['ApiVersion']) ? $params['ApiVersion'] : "";

            // Dialed Call
            $DialCallSid      = isset($params['DialCallSid']) ? $params['DialCallSid'] : "";;
            $DialCallDuration = isset($params['DialCallDuration']) ? $params['DialCallDuration'] : "";;
            $DialCallStatus   = isset($params['DialCallStatus']) ? $params['DialCallStatus'] : "";;
            $DialCallTo       = isset($params['DialCallTo']) ? $params['DialCallTo'] : "";
            $DateCreated      = date('Y-m-d H:i:s',time());

            $result = $db->save_call_api(array(
                $CallSid,
                $AccountSid,
                $CallStatus,
                $To,
                $From,
                $RecordingUrl,
                $Direction,
                $ApiVersion,
                $DialCallSid,
                $DialCallDuration,
                $DialCallStatus,
                $DateCreated,
                $DialCallTo
            ));

            if($result)
                die(json_encode(array("success")));
            else
                die(json_encode(array("error"=>"DB_ERROR")));
        }
    }

    static function outgoing_calls()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));
        $company_id = params("company_id");

        $db = new DB();

        $_SESSION['user_id'] = $userid;

        if($db->isUserInCompany($company_id,$userid) || $db->isUserAdmin($userid))
            $calls = $db->cget_all_outgoing_calls($company_id);
        else
            die(json_encode(array("error"=>"USER_DOES_NOT_HAVE_ACCESS")));

        echo json_encode($calls);
    }

    static function get_contacts_list()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));

        require_once '../include/ad_auto_dialer_files/lib/ad_lib_funcs.php';

        $contacts = ad_advb_cl_get_contact_lists(0, 0, true);

        echo json_encode($contacts);
    }

    static function save_contacts()
    {
        $userid     = APIUtil::generalAuth(params('authtoken'));

        require_once '../include/ad_auto_dialer_files/lib/ad_lib_funcs.php';
        require_once '../include/twilio_header.php';

        $contacts_list = $_POST["contacts_list"];
        $act_new_contacts_list = $_POST["act_new_contacts_list"];
        $contacts = json_decode($_POST["contacts"]);

        $single_contacts = array();
        foreach ($contacts as $contact) {
            $single_contacts[] = array(
                0 => $contact->phone,
                1 => $contact->name,
                2 => $contact->fname,
                3 => $contact->lname,
                4 => $contact->email,
                5 => $contact->address,
                6 => $contact->city,
                7 => $contact->state,
                8 => $contact->zip,
                9 => $contact->website
            );
        }

        $cl_idx = ($contacts_list == "new_contacts_list") ? ad_advb_cl_add_cl($act_new_contacts_list) : ad_advb_cl_add_cl($contacts_list);

        ad_advb_cl_add_contacts($cl_idx, $single_contacts);

        exit();

    }

    static function get_dailytrend_report_app(){
        header('Access-Control-Allow-Origin: *');
        global $AccountSid, $AuthToken, $ApiVersion, $TIMEZONE;
        $client = new Services_Twilio($AccountSid,$AuthToken);

        $db         = new DB();
        $userid     = APIUtil::generalAuth(params('authtoken'));

        $company_id   = $_GET['company_id'];
        $start_date   = $_GET['start_date'];
        $end_date     = $_GET['end_date'];
        $phone_code   = $_GET['phone_code'];
        $call_result  = $_GET['call_result'];
        $outgoing     = false;
        $outgoing_num = $_GET['outgoing_number'];

        if(isset($_GET['outgoing']) && $_GET['outgoing']==1)
            $outgoing = true;

        // First Graph
        $day = array();
        $data = new GDataView();
        $data->addCol("string","Day");
        $data->addCol("number","Answered");
        $data->addCol("number","Unanswered");
        $data->addCol("number","Busy");
        $err_added = false;

        $calls = $db->getCallsInRange($company_id,$start_date,$end_date,$phone_code,$call_result,false,$outgoing_num,$outgoing,"",'');

        for($i=0; $i < 6; $i++)
        {
            $day[$i] = array("ans"=>0,"unans"=>0,"busy"=>0,"err"=>0);
        }

        if( is_array($calls) || is_object($calls) )
            foreach($calls as $call)
            {
                $dateObj = new DateTime("@".strtotime($call['DateCreated']));
                $date = $dateObj->format("N")-1;
                //$date = date("N",strtotime($call['DateCreated']))-1;
                $arr = &$day[$date];

                if($call['DialCallStatus']=="no-answer")
                    $arr["unans"]=@$arr["unans"]+1;
                elseif($call['DialCallStatus']=="busy")
                    $arr["busy"]=@$arr["busy"]+1;
                elseif($call['DialCallStatus']=="completed")
                    $arr["ans"]=@$arr["ans"]+1;
                else{
                    $arr["err"]=@$arr["err"]+1;
                    if(!$err_added)
                    {
                        $data->addCol("number","Error");
                        $err_added = true;
                    }
                }
            }

        foreach($day as $d=>$count)
        {
            //$diff = floor(($end_date - $start_date)/(60*60*24));

            $data->addRow(array("c"=>array(
                array("f"=>jddayofweek($d,1)),
                array("v"=>@$count['ans']),
                array("v"=>@$count['unans']),
                array("v"=>@$count['busy']),
                array("v"=>@$count['err']),
                //array("v"=>($count/$diff))
            )));
        }
        $days = array('monday','tuesday','wednesday','thursday','friday','saturday','sunday');

        $all_data = array("big"=>$data->getData());

        foreach($days as $day){
            $hours = array();
            $data = new GDataView();
            $data->addCol("string","Hours");
            $data->addCol("number","Answered");
            $data->addCol("number","Unanswered");
            $data->addCol("number","Busy");
            $err_added = false;

            for($i=0; $i < 24; $i++)
            {
                $hours[$i] = array("ans"=>0,"unans"=>0,"busy"=>0,"err"=>0);
            }


            if( is_array($calls) || is_object($calls) )
                foreach($calls as $call)
                {
                    $dateObj = new DateTime("@".strtotime($call['DateCreated']));
                    $dateObj->setTimezone(new DateTimeZone($TIMEZONE));
                    $date = $dateObj->format("G");
                    $arr = &$hours[$date];

                    if($day!='all' && $day!=strtolower($dateObj->format("l")))
                        continue;
                    else{
                        if($call['DialCallStatus']=="no-answer")
                            $arr["unans"]=$arr["unans"]+1;
                        elseif($call['DialCallStatus']=="busy")
                            $arr["busy"]=$arr["busy"]+1;
                        elseif($call['DialCallStatus']=="completed")
                            $arr["ans"]=$arr["ans"]+1;
                        else{
                            $arr["err"]=$arr["err"]+1;
                            if(!$err_added){
                                $data->addCol("number","Error");
                                $err_added = true;
                            }
                        }
                    }
                }

            foreach($hours as $hour=>$count)
            {
                //$diff = floor(($end_date - $start_date)/(60*60*24));

                $data->addRow(array("c"=>array(
                    array("f"=>date("ga",strtotime($hour.":00"))),
                    array("v"=>$count['ans']),
                    array("v"=>$count['unans']),
                    array("v"=>$count['busy']),
                    array("v"=>$count['err']),
                    //array("v"=>($count/$diff))
                )));
            }
            $all_data[$day] = $data->getData();
        }
        die(json_encode(array("result"=>"success","data"=>$all_data)));
    }

    static function get_campaign_report_app(){
        header('Access-Control-Allow-Origin: *');
        global $AccountSid, $AuthToken, $ApiVersion;
        $client = new Services_Twilio($AccountSid,$AuthToken);

        $db         = new DB();
        $userid     = APIUtil::generalAuth(params('authtoken'));

        $company_id   = $_GET['company_id'];
        $start_date   = $_GET['start_date'];
        $end_date     = $_GET['end_date'];
        $phone_code   = $_GET['phone_code'];
        $call_result  = $_GET['call_result'];
        $outgoing_num = @$_GET['outgoing_number'];
        $outgoing     = false;

        if(isset($_GET['outgoing']) && $_GET['outgoing']==1){
            $outgoing = true;
        }

        $numbers = $db->getNumbersOfCompany($company_id, true);

        $campaigns = array();
        foreach ($client->account->incoming_phone_numbers as $number) {
            $this_phone_number = $db->format_phone_db($number->phone_number);
            foreach ($numbers as $number2) {
                if ($number2->number == $this_phone_number) {
                    if (!isset($campaigns[$number->friendly_name]))
                        $campaigns[$number->friendly_name] = array();

                    $campaigns[$number->friendly_name][] = $this_phone_number;
                    break;
                }
            }
        }

        $day = array();
        $data2 = new GDataView();

        $data2->addCol("string", "Day");
        foreach ($campaigns as $name=>$numbers) {
            $data2->addCol("number", $name);
        }

        $err_added = false;

        $calls = $db->getCallsInRange($company_id,$start_date,$end_date,$phone_code,$call_result,false,$outgoing_num,$outgoing);

        $overview = array();

        //var_dump($calls);

        for($i=0; $i < 6; $i++)
        {
            $this_day = array();
            foreach ($campaigns as $name=>$numbers) {
                $this_day[$name] = 0;
            }
            $day[$i] = $this_day;
        }

        if( is_array($calls) || is_object($calls) )
            foreach($calls as $call)
            {
                $dateObj = new DateTime("@".strtotime($call['DateCreated']));
                $date = $dateObj->format("N")-1;
                //$date = date("N",strtotime($call['DateCreated']))-1;
                $arr = &$day[$date];

                $callTo = $outgoing ? $db->format_phone_db($call['CallFrom']) : $db->format_phone_db($call['CallTo']);

                foreach ($campaigns as $name=>$numbers) {
                    if (in_array($callTo, $numbers)) {
                        if(@$overview[$name]=="")
                            $overview[$name] = 1;
                        else
                            $overview[$name] = $overview[$name]+1;

                        @$arr[$name] = @$arr[$name] + 1;
                    }
                }
            }

        foreach($day as $d=>$count)
        {
            //$diff = floor(($end_date - $start_date)/(60*60*24));

            $data_array = array(
                "c"=>array(
                    array("f"=>jddayofweek($d,1))
                )
            );

            foreach ($campaigns as $name=>$numbers) {
                @$data_array["c"][] = array("v"=>$count[$name]);
            }

            $data2->addRow($data_array);
        }

        $overview_ = array();
        $total = 0;
        // Overview, create table.
        foreach($overview as $key => $value){
            $total = $total + $value;
        }
        foreach($overview as $key => $value){
            $overview_[$key] = $value." (". round(100 * $value/$total) ."%)";
        }

        $campaign_graphs = array();

        $numbers = $db->getNumbersOfCompany($company_id, true);

        foreach($campaigns as $name=>$numbers11){
            $answered   = 0;
            $unanswered = 0;
            $busy       = 0;
            $error      = 0;

            $data = new GDataView();
            $data->addCol("string","callstatus");

            $campaign_data = array("phone_codes" => array(), "numbers" => array());
            foreach ($client->account->incoming_phone_numbers as $number) {
                if ($number->friendly_name == $name) {
                    $this_phone_number = $db->format_phone_db($number->phone_number);
                    foreach ($numbers as $number2) {
                        if (@$number2->number == $this_phone_number) {
                            $campaign_data["numbers"][] = $this_phone_number;
                            break;
                        }
                    }
                }
            }

            $data->addcol("number", "Calls");

            $phone_codes_set = array();
            if( is_array($calls) || is_object($calls) )
                foreach($calls as $call)
                {
                    $callTo = $outgoing ? $db->format_phone_db($call['CallFrom']) : $db->format_phone_db($call['CallTo']);

                    if (in_array($callTo, $campaign_data["numbers"])) {
                        if ($call["PhoneCode"] != 0) {
                            $phone_code = $db->getPhoneCodeName($call["PhoneCode"], $outgoing ? 2 : 1 );

                            if (!isset($phone_codes_set[$phone_code])) {
                                $data->addcol("number", $phone_code);
                                $phone_codes_set[$phone_code] = 1;
                            }
                            else {
                                $phone_codes_set[$phone_code] = $phone_codes_set[$phone_code] + 1;
                            }
                        }
                    }
                }
            $campaign_name = $name;
            foreach ($phone_codes_set as $name=>$count) {
                if ($count > 0) {
                    $data->addRow(array("c"=>array(
                        array("f"=>$name),array("v"=>$count)
                    )));
                }
            }
            $campaign_graphs[] = array("name"=>$campaign_name, "data"=>$data->getData());
        }

        die(json_encode(array("result"=>"success","data"=>$data2->getData(),"data2"=>$overview_,"data3"=>$campaign_graphs)));

    }

    static function handle_incoming_email()
    {
        $db = new DB();
        global $TIMEZONE;

        foreach ($_REQUEST["emails"] as $sent_email) {
            $stmt = $db->customExecute("SELECT * FROM email_tracking_settings WHERE emails LIKE ?");
            $stmt->execute(array('%"'.$sent_email['to_email'].'"%'));
            $tracking_settings = $stmt->fetch(PDO::FETCH_OBJ);
            $clients = json_decode($tracking_settings->clients);
            $emails = json_decode($tracking_settings->emails);
            $client_email_tags = json_decode($tracking_settings->client_email_tags);

            $clients_to_add_to = array();
            if ($tracking_settings->distribution == "all" || count($clients) == 1) {
                foreach ($clients as $client) {
                    $clients_to_add_to[] = $client->id;
                }
            }
            elseif ($tracking_settings->distribution == "even") {
                $emails_clients_tree = array();

                foreach ($emails as $email) {
                    $emails_clients_tree[$email] = array();
                }

                foreach ($clients as $client) {
                    if (isset($client_email_tags->{$client->id})) {
                        foreach ($emails as $email) {
                            if (isset($client_email_tags->{$client->id}->{$email})) {
                                if (count($client_email_tags->{$client->id}->{$email}) > 0)
                                    $emails_clients_tree[$email][] = $client;
                            }
                        }
                    }
                }

                $stmt2 = $db->customExecute("SELECT client_id FROM email_tracking_log WHERE to_email = ? AND invoiced = 0 ORDER BY id DESC LIMIT 1");
                $stmt2->execute(array($sent_email['to_email']));
                $last_email_sent = $stmt2->fetch();

                if ($last_email_sent) {
                    $last_email_client_id = $last_email_sent['client_id'];

                    $next_client_id = null;
                    $grab_the_next_one = false;

                    foreach ($emails_clients_tree[$sent_email['to_email']] as $client) {
                        if ($grab_the_next_one) {
                            $next_client_id = $client->id;
                            break;
                        }

                        if ($client->id == $last_email_client_id)
                            $grab_the_next_one = true;
                    }

                    if ($next_client_id == null)
                        $next_client_id = $emails_clients_tree[$sent_email['to_email']][0]->id;
                }
                else {
                    $next_client_id = $emails_clients_tree[$sent_email['to_email']][0]->id;
                }

                $clients_to_add_to[] = $next_client_id;
            }

            foreach ($clients_to_add_to as $client_id) {
                $set_date = new DateTime($sent_email["email_date"]);
                $set_date->setTimezone(new DateTimeZone($TIMEZONE));
                $sent_email["email_date"] = $set_date->format('Y:m:d H:i:s');

                $billing_tags = array();

                if ($tracking_settings->billing_tag == "auto") {
                    $client_tags = $client_email_tags->{$client_id}->{$sent_email["to_email"]};

                    $found_but_not = false;
                    foreach ($client_tags as $tag) {
                        if ($tag->rule == "None") {
                            if (strpos(strtolower($sent_email["body"]), strtolower($tag->keyword)) !== false) {
                                $billing_tags[] = array(
                                    "tag" => $tag->tag,
                                    "cost" => $tag->cost
                                );
                            }
                        }
                        elseif ($tag->rule == "But Not") {
                            if (strpos(strtolower($sent_email["body"]), strtolower($tag->keyword)) !== false) {
                                $found_but_not = true;
                            }
                        }
                    }

                    if ($found_but_not)
                        $billing_tags = array();
                }

                $stmt3 = $db->customExecute("INSERT INTO email_tracking_log(company_id, client_id, to_email, from_email, message_id, email_date, subject, body, billing_tags) 
                                VALUES(?,?,?,?,?,?,?,?,?)");
                $stmt3->execute(array($tracking_settings->company_id, $client_id, $sent_email["to_email"], $sent_email["from_email"], $sent_email["message_id"], $sent_email["email_date"], $sent_email["subject"], $sent_email["body"], json_encode($billing_tags)));
            }
        }

        exit();
    }
}


class APIUtil {
    static function generalAuth($token)
    {
        $db = new DB();

        global $lcl;

        if($lcl<2)
            die(json_encode(array("error"=>"NO_ACCESS_TO_APP")));

        $token = explode("_|_",base64_decode($token));

        if(!isset($token[0]) || !isset($token[1]))
            die(json_encode(array("error"=>"LOGIN_FAILED")));

        $username     = $token[0];
        $password_md5 = $token[1];
        $app          = @$token[2];

        $status = $db->authUserAPI($username,$password_md5);

        if(!$status[0])
        {
            die(json_encode(array("error"=>"LOGIN_FAILED")));
        }else{
            $access = false;
            switch($app)
            {
                default: // Assumed iPhone App
                    $access = $db->checkAddonAccess($status[1],10001);
                    break;
                case "android":
                    $access = $db->checkAddonAccess($status[1],10004);
                    break;
                case "click2call":
                    $access = $db->checkAddonAccess($status[1],10002);
                    break;
                case "browserapp":
                    $access = $db->checkAddonAccess($status[1],10005);
                    break;
                case "browsersoftphone":
                    $access = $db->checkAddonAccess($status[1],10003);
                    break;
                case "LGP":
                    $access = $db->checkAddonAccess($status[1],10008);
                    break;
            }

            if($access)
                return $status[1];
            else
                die(json_encode(array("error"=>"NO_ACCESS_TO_APP")));
        }
    }
}

if (!function_exists('get_twilio_application_sid')):

    /**
     * Retrieving the APPSID by either creating a new application in twilio
     * OR by retrieving it from app created earlier
     * @param string $accountSid Twilio account sid
     * @param string $auth_token Twilio auth token
     * @return string
     */
    function get_twilio_application_sid($accountSid, $auth_token, $twilio_app_name, $userid) {
        // Your Account Sid and Auth Token from twilio.com/user/account
        $client = new Services_Twilio($accountSid, $auth_token);

        // Loop over the list of apps and echo a property for each one
        //Setting the appsid to null by default
        $appsid = '';

        $mainapp = "";

        //Checking and retrieving the APP side from twilio account
        //If APP is already created
        foreach ($client->account->applications->getIterator(0, 50, array(
            "FriendlyName" => $twilio_app_name
        )) as $app
        ) {
            //Retrieving the APP sid
            $mainapp = $app;
            $voiceurl = $app->voice_url;
            $appsid = $app->sid;
        }

        $exploded = explode("/api", dirname(s8_get_current_webpage_uri()));
        $site_url = trim($exploded[0]);

        //If APPSID is not set indicating that app is not already
        if (!isset($appsid) || empty($appsid)) {

            $callbackurl = $site_url . "/include/twilio_dial_number.php?userid=" . $userid . "&app=browsersoftphone";

            $callbackurl = str_replace("/i/", "/", $site_url . "/include/twilio_dial_number.php?userid=" . $userid . "&app=browsersoftphone");

            //Creating a new APP in twilio account with voice URL and VOICE method
            $app = $client->account->applications->create($twilio_app_name, array(
                "VoiceUrl" => $callbackurl,
                "VoiceMethod" => "POST"
            ));

            //Retrieving the APP sid.
            $appsid = $app->sid;
        } else {
            $callbackurl = $site_url . "/include/twilio_dial_number.php?userid=" . $userid . "&app=browsersoftphone";
            $callbackurl = str_replace("/i/", "/", $site_url . "/include/twilio_dial_number.php?userid=" . $userid . "&app=browsersoftphone");

            if ($voiceurl != $callbackurl)
                $mainapp->update(array(
                    'VoiceUrl' => $callbackurl
                ));
        }

        //Returning the APP sid to calle rof this function.
        return $appsid;
    }

endif;

class GDataView
{
    private $columns;
    private $rows;

    public function __construct()
    {
        $this->columns = array();
        $this->rows    = array();
    }

    public function addCol($type, $label="", $pattern = "", $id = "")
    {
        $col = (object)array();

        if($id!="")
            $col->id      = $id;
        if($label!="")
            $col->label   = $label;
        if($pattern!="")
            $col->pattern = $pattern;
        $col->type    = $type;

        $this->columns[] = $col;
    }

    public function addRow($cells)
    {
        $this->rows[] = $cells;
    }

    public function getData()
    {
        $data = (object)array();

        $data->cols = $this->columns;
        $data->rows = $this->rows;

        return $data;
    }
}


run();

Did this file decode correctly?

Original Code

<?php 

 eval(gzinflate(substr(base64_decode('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'),10,-8))); ?>

Function Calls

substr 1
gzinflate 1
base64_decode 1

Variables

None

Stats

MD5 2677ddea7e4207443424b6fe95fe8daa
Eval Count 1
Decode Time 116 ms