HEX
Server: LiteSpeed
System: Linux server44.twelveinks.com 5.14.0-570.12.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 13 06:11:55 EDT 2025 x86_64
User: moda (1338)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /python/moda/.trash/whmcs-bridge-master/bridge.init.php
<?php
if (!defined('WHMCS_BRIDGE')) define('WHMCS_BRIDGE','WHMCS Bridge');
if (!defined('WHMCS_BRIDGE_COMPANY')) define('WHMCS_BRIDGE_COMPANY','i-Plugins');
if (!defined('WHMCS_BRIDGE_PAGE')) define('WHMCS_BRIDGE_PAGE','WHMCS');

define("CC_WHMCS_BRIDGE_VERSION","3.4.5");

$compatibleWHMCSBridgeProVersions=array('2.0.1'); //kept for compatibility with older Pro versions, not used since version 2.0.0

// Pre-2.6 compatibility for wp-content folder location
if (!defined("WP_CONTENT_URL")) {
    define("WP_CONTENT_URL", get_option("siteurl") . "/wp-content");
}
if (!defined("WP_CONTENT_DIR")) {
    define("WP_CONTENT_DIR", ABSPATH . "wp-content");
}

if (!defined("CC_WHMCS_BRIDGE_PLUGIN")) {
    $cc_whmcs_bridge_plugin=str_replace(realpath(dirname(__FILE__).'/..'),"",dirname(__FILE__));
    $cc_whmcs_bridge_plugin=substr($cc_whmcs_bridge_plugin,1);
    define("CC_WHMCS_BRIDGE_PLUGIN", $cc_whmcs_bridge_plugin);
}

if (!defined("BLOGUPLOADDIR")) {
    $upload=wp_upload_dir();
    define("BLOGUPLOADDIR",$upload['path']);
}

define("CC_WHMCS_BRIDGE_URL", WP_CONTENT_URL . "/plugins/".CC_WHMCS_BRIDGE_PLUGIN."/");

$cc_whmcs_bridge_version=get_option("cc_whmcs_bridge_version");
if ($cc_whmcs_bridge_version) {
    add_action("init","cc_whmcs_bridge_init");
    if (get_option('cc_whmcs_bridge_footer')=='Site') add_filter('wp_footer','cc_whmcs_bridge_footer');
    add_filter('the_content', 'cc_whmcs_bridge_content', 10, 3);
    add_filter('the_title', 'cc_whmcs_bridge_title');
    #add_filter('wp_title', 'cc_whmcs_bridge_meta_title', 10, 2 );

    add_action('wp_head','cc_whmcs_bridge_header',10);
    add_action('admin_head','cc_whmcs_bridge_admin_header');
    add_action("plugins_loaded", "cc_whmcs_sidebar_init");
}
add_action('admin_head','cc_whmcs_bridge_admin_header');
add_action('admin_notices','cc_whmcs_admin_notices');

require_once(dirname(__FILE__) . '/includes/shared.inc.php');
require_once(dirname(__FILE__) . '/includes/http.class.php');
require_once(dirname(__FILE__) . '/includes/footer.inc.php');
require_once(dirname(__FILE__) . '/includes/integrator.inc.php');
require_once(dirname(__FILE__) . '/bridge_cp.php');
if (!class_exists('iplug_simple_html_dom_node')) require_once(dirname(__FILE__) . '/includes/simple_html_dom.php');
require(dirname(__FILE__).'/includes/sidebars.php');
require(dirname(__FILE__).'/includes/parser.inc.php');

function cc_whmcs_admin_notices() {
    global $wpdb;
    $errors=array();
    $warnings=array();
    $notices=array();
    $files=array();
    $dirs=array();

    $cc_whmcs_bridge_version=get_option("cc_whmcs_bridge_version");
    if ($cc_whmcs_bridge_version && $cc_whmcs_bridge_version != CC_WHMCS_BRIDGE_VERSION) $warnings[]='You downloaded version '.CC_WHMCS_BRIDGE_VERSION.' and need to update your settings (currently at version '.$cc_whmcs_bridge_version.') by verifying your settings and clicking the "Save Settings" button on the <a href="options-general.php?page=cc-ce-bridge-cp">bridge control panel</a>.';
    $upload=wp_upload_dir();

    if (cc_whmcs_bridge_mainpage()) {
        //if (session_save_path() && !is_writable(session_save_path())) $warnings[]='It looks like PHP sessions are not properly configured on your server, the sessions save path <'.session_save_path().'> is not writable. This may be a false warning, contact us if in doubt.';
        if ($upload['error']) $errors[]=$upload['error'];
        if (!get_option('cc_whmcs_bridge_url')) $warnings[]="Please update your WHMCS connection settings on the plugin control panel";
        //if (get_option('cc_whmcs_bridge_debug')) $warnings[]="Debug is active, once you finished debugging, it's recommended to turn this off";
        if (phpversion() < '5') $warnings[]="You are running PHP version ".phpversion().". We recommend you upgrade to PHP 5.3 or higher.";
        if (ini_get("zend.ze1_compatibility_mode")) $warnings[]="You are running PHP in PHP 4 compatibility mode. We recommend you turn this option off.";
        if (!function_exists('curl_init')) $errors[]="You need to have cURL installed. Contact your hosting provider to do so.";
    }

    if (get_option("cc_whmcs_bridge_url") && !preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', get_option("cc_whmcs_bridge_url"))) $errors[]='Your WHMCS URL '.get_option("cc_whmcs_bridge_url").' seems to be incorrect, please verify it and make sure it starts with http or https.';

    if (count($errors) > 0) {
        foreach ($errors as $message)  {
            echo "<div id='zing-warning' style='background-color:pink' class='updated fade'><p><strong>";
            echo WHMCS_BRIDGE.':'.$message.'<br />';
            echo "</strong> "."</p></div>";
        }
    }
    if (count($warnings) > 0) {
        foreach ($warnings as $message) {
            echo "<div id='zing-warning' style='background-color:greenyellow' class='updated fade'><p><strong>";
            echo WHMCS_BRIDGE.': '.$message.'<br />';
            echo "</strong> "."</p></div>";
        }
    }
    if (isset($_REQUEST['page']) && ($_REQUEST['page']=='cc-ce-bridge-cp') && count($notices) > 0) {
        foreach ($notices as $message) {
            echo "<div id='zing-warning' style='background-color:lightyellow' class='updated fade'><p><strong>";
            echo $message.'<br />';
            echo "</strong> "."</p></div>";
        }
    }

    return array('errors'=> $errors, 'warnings' => $warnings);
}


/**
 * Activation: creation of database tables & set up of pages
 * @return unknown_type
 */
function cc_whmcs_bridge_activate() {
    //nothing much to do
}

function cc_whmcs_bridge_install() {
    global $wpdb,$current_user,$wp_rewrite;

    ob_start();
    cc_whmcs_log();
    set_error_handler('cc_whmcs_log');
    error_reporting(E_ALL & ~E_NOTICE);

    $cc_whmcs_bridge_version=get_option("cc_whmcs_bridge_version");
    if (!$cc_whmcs_bridge_version) add_option("cc_whmcs_bridge_version",CC_WHMCS_BRIDGE_VERSION);
    else update_option("cc_whmcs_bridge_version",CC_WHMCS_BRIDGE_VERSION);

    $cc_whmcs_bridge_page=get_option("cc_whmcs_bridge_pages");
    $create_page = false;
    if (is_numeric($cc_whmcs_bridge_page) && $cc_whmcs_bridge_page > 0) {
        $query = '';
        $pages = get_pages(array(
            'post_type' => 'page',
            'post_status' => 'publish',
        ));
        $found = false;
        foreach ($pages as $p) {
            if ($p->ID == $cc_whmcs_bridge_page) {
                $found = true;
                break;
            }
        }
        if (!$found) $create_page = true;
    } else {
        $create_page = true;
    }

    //create pages
    if ($create_page) {
        cc_whmcs_log(0,'Creating pages');
        $pages=array();
        $pages[]=array(WHMCS_BRIDGE_PAGE.'-bridge',WHMCS_BRIDGE_PAGE,"*",0);

        $ids="";
        foreach ($pages as $i =>$p)
        {
            $my_post = array();
            $my_post['post_title'] = $p['0'];
            $my_post['post_content'] = '';
            $my_post['post_status'] = 'publish';
            $my_post['post_author'] = 1;
            $my_post['post_type'] = 'page';
            $my_post['menu_order'] = 100+$i;
            $my_post['comment_status'] = 'closed';
            $id=wp_insert_post( $my_post );
            if (empty($ids)) { $ids.=$id; } else { $ids.=",".$id; }
            if (!empty($p[1])) add_post_meta($id,'cc_whmcs_bridge_page',$p[1]);
        }
        update_option("cc_whmcs_bridge_pages",$ids);
    }

    restore_error_handler();

    $wp_rewrite->flush_rules();

    return true;
}

function cc_whmcs_bridge_uninstall() {
    $cc_whmcs_bridge_options=cc_whmcs_bridge_options();

    delete_option('cc_whmcs_bridge_log');
    foreach ($cc_whmcs_bridge_options as $value) {
        delete_option( $value['id'] );
    }

    delete_option("cc_whmcs_bridge_page");
    delete_option("cc_whmcs_bridge_pages");
    delete_option("cc_whmcs_bridge_log");
    delete_option("cc_whmcs_bridge_ftp_user"); //legacy
    delete_option("cc_whmcs_bridge_ftp_password"); //legacy
    delete_option("cc_whmcs_bridge_version");
    delete_option("cc_whmcs_bridge_pages");
    delete_option('cc-ce-bridge-cp-support-us');
}

/**
 * Deactivation: nothing to do
 * @return void
 */
function cc_whmcs_bridge_deactivate() {
    $ids=get_option("cc_whmcs_bridge_pages");
    $ida=explode(",",$ids);
    foreach ($ida as $id) {
        wp_delete_post($id);
    }
}

function cc_whmcs_bridge_output($page=null) {
    global $post;
    global $wpdb;
    global $wordpressPageName;
    global $cc_whmcs_bridge_loaded,$cc_whmcs_bridge_to_include;

    $ajax=false;

    // contribution northgatewebhosting.co.uk
    if (isset($post)) {
        $post_id = $post->ID;
    } else {
        $post_id = 1;
    }
    // contribution northgatewebhosting.co.uk

    $cf=get_post_custom($post_id);

    if ($page) {
        $cc_whmcs_bridge_to_include=$page;
    } elseif (isset($_REQUEST['ccce']) && (isset($_REQUEST['ajax']) && $_REQUEST['ajax'])) {
        $cc_whmcs_bridge_to_include=$_REQUEST['ccce'];
        $ajax=intval($_REQUEST['ajax']);
    } elseif (isset($_REQUEST['ccce'])) {
        $cc_whmcs_bridge_to_include=$_REQUEST['ccce'];
    } elseif (isset($cf['cc_whmcs_bridge_page']) && $cf['cc_whmcs_bridge_page'][0]==WHMCS_BRIDGE_PAGE) {
        $cc_whmcs_bridge_to_include="index";
    } else {
        $cc_whmcs_bridge_to_include="index";
    }

    $http=cc_whmcs_bridge_http($cc_whmcs_bridge_to_include);

    $news = new bridgeHttpRequest($http,'whmcs-bridge-sso');
    $news->debugFunction='cc_whmcs_log';
    if (function_exists('cc_whmcs_bridge_sso_httpHeaders')) $news->httpHeaders=cc_whmcs_bridge_sso_httpHeaders($news->httpHeaders);

    if (isset($news->post['whmcsname'])) {
        $news->post['name']=$news->post['whmcsname'];
        unset($news->post['whmcsname']);
    }

    $news=apply_filters('bridge_http',$news);

    $news->forceWithRedirect['systpl']=get_option('cc_whmcs_bridge_template') ? get_option('cc_whmcs_bridge_template') : 'five';
    if (!function_exists('cc_whmcs_bridge_parser_with_permalinks') && !in_array($news->forceWithRedirect['systpl'], array('portal', 'five'))) {
        $news->forceWithRedirect['systpl'] = 'five';
    }

    if ($cc_whmcs_bridge_to_include=='dologin') {
        $news->post['rememberme']='on';
    }

    if (!$news->curlInstalled()) {
        cc_whmcs_log('Error','CURL not installed');
        return "cURL not installed";
    } elseif (!$news->live()) {
        cc_whmcs_log('Error','A HTTP Error occurred');
        return "A HTTP Error occurred";
    } else {
        @cc_whmcs_log(0, 'Headers: '.$news->headers['content-type'].' - Disposition: '.$news->headers['content-disposition']);

        if ($cc_whmcs_bridge_to_include=='verifyimage' || (isset($_REQUEST['showqrimage']) && $_REQUEST['showqrimage'] ==1)) {
            $output=$news->DownloadToString();
            while (count(ob_get_status(true)) > 0) ob_end_clean();
            header("Content-Type: image");
            echo $news->body;
            die();
        } elseif ($cc_whmcs_bridge_to_include=='dl' ||
            (isset($_REQUEST['a']) && $_REQUEST['a'] == 'CreateEmailAccount') ||
            (stristr($cc_whmcs_bridge_to_include, 'wbteampro') !== false && isset($_REQUEST['act']) && $_REQUEST['act'] == 'download') ||
            (stristr($cc_whmcs_bridge_to_include, 'project_management') !== false && isset($_REQUEST['action']) && $_REQUEST['action'] == 'dl') ||
            (stristr($cc_whmcs_bridge_to_include, 'project_management') !== false && stristr($cc_whmcs_bridge_to_include, '.css') !== false)
        ) {
            while (count(ob_get_status(true)) > 0) ob_end_clean();
            $output=$news->DownloadToString();
            header("Content-Disposition: ".$news->headers['content-disposition']);
            header("Content-Type: ".$news->headers['content-type']);
            echo $news->body;
            die();
        } elseif ($ajax == 1 ||
            (stristr($cc_whmcs_bridge_to_include, 'serverstatus') !== false && isset($_REQUEST['num'])) ||
            (isset($_REQUEST['action'])	&& $_REQUEST['action'] == 'getcustomfields') ||
            (isset($_REQUEST['check'], $_REQUEST['addtocart'], $_REQUEST['domain'])) ||
            (isset($_REQUEST['responseType']) && $_REQUEST['responseType'] == 'json')
        ) {
            $output=$news->DownloadToString();

            if (!$news->redirect) {
                while (count(ob_get_status(true)) > 0) ob_end_clean();
                $body=$news->body;
                $body=cc_whmcs_bridge_parser_ajax1($body);

                if (stristr($_REQUEST['js'], '.css') !== false) {
                    header('Content-Type: text/css');
                } else if (stristr($_REQUEST['js'], '.js') !== false) {
                    header('Content-Type: application/javascript');
                }

                echo $body;
                die();
            } else {
                header('Location:'.$output);
                die();
            }
        } elseif ($ajax==2) {
            while (count(ob_get_status(true)) > 0) ob_end_clean();
            $output=$news->DownloadToString();
            $body=$news->body;
            $body=cc_whmcs_bridge_parser_ajax2($body);

            if (stristr($_REQUEST['js'], '.css') !== false) {
                header('Content-Type: text/css');
            } else if (stristr($_REQUEST['js'], '.js') !== false) {
                header('Content-Type: application/javascript');
            } else {
                header('HTTP/1.1 200 OK');
            }

            echo $body;
            die();
        } elseif ($news->redirect) {
            $output=$news->DownloadToString();
            if ($wordpressPageName) $p=$wordpressPageName;
            else $p='/';
            $f[]='/.*\/([a-zA-Z\_]*?).php.(.*?)/';
            $r[]=get_option('home').$p.'?ccce=$1&$2';
            $f[]='/([a-zA-Z\_]*?).php.(.*?)/';
            $r[]=get_option('home').$p.'?ccce=$1&$2';
            $output=preg_replace($f,$r,$news->location,-1,$count);
            cc_whmcs_log('Notification','Redirect to: '.$output);
            header('Location:'.$output);
            die();
        } else {
            if (isset($_REQUEST['aff'])) $news->follow=false;
            $output=$news->DownloadToString();

            if ($news->redirect) {
                header('Location:'.$output);
                die();
            }
            if (isset($_REQUEST['aff']) && isset($news->headers['location'])) {
                if ($wordpressPageName) $p=$wordpressPageName;
                else $p='/';
                $f[]='/.*\/([a-zA-Z\_]*?).php.(.*?)/';
                $r[]=get_option('home').$p.'?ccce=$1&$2';
                $f[]='/([a-zA-Z\_]*?).php.(.*?)/';
                $r[]=get_option('home').$p.'?ccce=$1&$2';
                $output=preg_replace($f,$r,$news->headers['location'],-1,$count);
                cc_whmcs_log('Notification','Redirect to: '.$output);
                header('Location:'.$output);

                //if (strstr($news->headers['location'],get_option('home')))
                //    header('Location:'.$news->headers['location']);
                //else header('Location:'.get_option('home'));
                die();
            }
            return $output;
        }
    }
}

/**
 * Page content filter
 * @param $content
 * @return unknown_type
 */
function cc_whmcs_bridge_content($content) {
    global $cc_whmcs_bridge_content,$post;

    if (!is_page()) return $content;


    $cf=get_post_custom($post->ID);
    if (isset($_REQUEST['ccce']) || (isset($cf['cc_whmcs_bridge_page']) && $cf['cc_whmcs_bridge_page'][0]==WHMCS_BRIDGE_PAGE)) {
        if (!$cc_whmcs_bridge_content) { //support Gantry framework
            $cc_whmcs_bridge_content=cc_whmcs_bridge_parser();
        }
        if ($cc_whmcs_bridge_content) {
            $content='';
            ob_start();
            if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('whmcs-top-page') ) :
            endif;
            $content.=ob_get_clean();
            $content.='<div id="bridge">';
            $content.=$cc_whmcs_bridge_content['main'];
            $content.='</div><!--end bridge-->';
            ob_start();
            if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('whmcs-bottom-page') ) :
            endif;
            $content.=ob_get_clean();
            if (get_option('cc_whmcs_bridge_footer')=='Page') $content.=cc_whmcs_bridge_footer(true);
        }
    }

    return $content;
}

function cc_whmcs_bridge_header() {
    global $cc_whmcs_bridge_content,$post;

    if (!(isset($post->ID))) return;

    $cf=get_post_custom($post->ID);
    if (isset($_REQUEST['ccce']) || (isset($cf['cc_whmcs_bridge_page']) && $cf['cc_whmcs_bridge_page'][0]==WHMCS_BRIDGE_PAGE)) {
        if (!$cc_whmcs_bridge_content) {
            $cc_whmcs_bridge_content=cc_whmcs_bridge_parser();
        }

        if (isset($cc_whmcs_bridge_content['head'])) echo $cc_whmcs_bridge_content['head'];

        echo '<link rel="stylesheet" type="text/css" href="' . CC_WHMCS_BRIDGE_URL . 'cc.css" media="screen" />';
        echo '<script type="text/javascript" src="'. CC_WHMCS_BRIDGE_URL . 'cc.js"></script>';
        if (get_option('cc_whmcs_bridge_css')) {
            echo '<style type="text/css">'.get_option('cc_whmcs_bridge_css').'</style>';
        }
    }
    if(get_option('cc_whmcs_bridge_jquery')=='wp') echo '<script type="text/javascript">$=jQuery;</script>';
}

function cc_whmcs_bridge_admin_header() {
    echo '<link rel="stylesheet" type="text/css" href="' . CC_WHMCS_BRIDGE_URL . 'cc.css" media="screen" />';
}

function cc_whmcs_bridge_http($page="index") {
    global $wpdb;

    $whmcs=cc_whmcs_bridge_url();
    if (substr($whmcs,-1)!='/') $whmcs.='/';
    if ((strpos($whmcs,'https://')!==0) && isset($_REQUEST['sec']) && ($_REQUEST['sec']=='1')) $whmcs=str_replace('http://','https://',$whmcs);
    $vars="";

    if ($page=='verifyimage') {
        $http=$whmcs.'includes/'.$page.'.php';
    } elseif (isset($_REQUEST['ccce']) && ($_REQUEST['ccce']=='js')) {
        $http=$whmcs.$_REQUEST['js'];
        return $http;
    } elseif (substr($page,-1)=='/') {
        $http=$whmcs.substr($page,0,-1);
    } else {
        $http=$whmcs.$page.'.php';
    }

    $and="";
    if (count($_GET) > 0) {
        foreach ($_GET as $n => $v) {
            if ($n!="page_id" && $n!="ccce" && $n!='whmcspage')  {
                if (is_array($v)) {
                    foreach ($v as $n2 => $v2) {
                        $vars.= $and.$n.'['.$n2.']'.'='.urlencode($v2);
                    }
                } else {
                    $vars.= $and.$n.'='.urlencode($v);
                }
                $and="&";
            }
        }
    }

    if (isset($_GET['whmcspage'])) {
        $vars.=$and.'page='.$_GET['whmcspage'];
        $and='&';
    }
    $systpl=get_option('cc_whmcs_bridge_template') ? get_option('cc_whmcs_bridge_template') : 'five';
    if (!function_exists('cc_whmcs_bridge_parser_with_permalinks') && !in_array($systpl, array('portal', 'five'))) {
        $systpl = 'five';
    }
    $vars.=$and.'systpl='.$systpl;
    $and="&";

    if (function_exists('cc_whmcs_bridge_sso_http')) cc_whmcs_bridge_sso_http($vars,$and);

    if ($vars) $http.='?'.$vars;

    return $http;
}

/*function cc_whmcs_bridge_meta_title() {
    global $cc_whmcs_bridge_content;

    cc_whmcs_log(0, 'Bridge Title: '.print_r($cc_whmcs_bridge_content['page_title'], true));

    if (isset($cc_whmcs_bridge_content['page_title'])) return $cc_whmcs_bridge_content['page_title'];
    else return '';
}*/

function cc_whmcs_bridge_title($title,$id=0) {
    global $cc_whmcs_bridge_content;

    if (!in_the_loop()) return $title;
    if ($id==0) return $title;

    /** Not working just yet.
    if (get_option('cc_whmcs_bridge_whmcs_titles') == 'checked') {
        if (isset($cc_whmcs_bridge_content['page_title'])) return $cc_whmcs_bridge_content['page_title'];
    }
     */

    if (isset($cc_whmcs_bridge_content['title'])) return $cc_whmcs_bridge_content['title'];
    else return $title;
}

function cc_whmcs_bridge_default_page($pid) {
    $isPage=false;
    $ids=get_option("cc_whmcs_bridge_pages");
    $ida=explode(",",$ids);
    foreach ($ida as $id) {
        if (!empty($id) && $pid==$id) $isPage=true;
    }
    return $isPage;
}

function cc_whmcs_bridge_mainpage() {
    $ids=get_option("cc_whmcs_bridge_pages");
    $ida=explode(",",$ids);
    return $ida[0];
}

function cc_whmcs_bridge_init()
{
    ob_start();
    if (function_exists('cc_whmcsbridge_sso_session')) cc_whmcsbridge_sso_session();
    if (!session_id()) @session_start();
    register_sidebars(1,array('name'=>'WHMCS Top Page Widget Area','id'=>'whmcs-top-page',));
    //register_sidebars(1,array('name'=>'WHMCS Bottom Page Widget Area','id'=>'whmcs-top-page',));
    if(get_option('cc_whmcs_bridge_jquery')=='wp'){
        wp_enqueue_script(array('jquery','jquery-ui','jquery-ui-slider','jquery-ui-button'));
    }
    if (is_admin() && isset($_REQUEST['page']) && ($_REQUEST['page']=='cc-ce-bridge-cp')) {
        wp_enqueue_script(array('jquery-ui-tabs'));
        wp_enqueue_style('jquery-style', 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/flick/jquery-ui.css');
    }
}

function cc_whmcs_log($type=0,$msg='',$filename="",$linenum=0) {
    if ($type==0) $type='Debug';
    if (get_option('cc_whmcs_bridge_debug')) {
        if (is_array($msg)) $msg=print_r($msg,true);
        $v=get_option('cc_whmcs_bridge_log');
        if (!is_array($v)) $v=array();
        array_unshift($v,array(time(),$type,$msg));
        if (count($v) > 100) array_pop($v);
        update_option('cc_whmcs_bridge_log',$v);
    }
}

function cc_whmcs_bridge_url() {
    $url=get_option('cc_whmcs_bridge_url');
    if (substr($url,-1)=='/') $url=substr($url,0,-1);
    return $url;
}

//Kept for compatibility reasons
if (class_exists('bridgeHttpRequest')) {
    class HTTPRequestWHMCS extends bridgeHttpRequest {}
}