Plugin Directory

Changeset 1631040


Ignore:
Timestamp:
04/06/2017 11:34:34 AM (9 years ago)
Author:
ishaijaffe
Message:

support debugging of plugin
Support for customer domains

Location:
bablic
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • bablic/tags/2.4/Bablic.php

    r1611084 r1631040  
    3535    var $options_group = 'bablic_option_option';
    3636    var $options_page = 'bablic';
    37     var $plugin_homepage = 'https://www.bablic.com/integrations/wordpress';
    38     var $bablic_docs = 'https://www.bablic.com/documentation';
     37    var $plugin_homepage = 'http://help.bablic.com/integrations/translate-your-wordpress-site-with-bablic';
     38    var $bablic_docs = 'http://help.bablic.com/';
    3939    var $plugin_name = 'Bablic';
    4040    var $plugin_textdomain = 'Bablic';
    41     var $bablic_version = '3.3';
     41    var $bablic_version = '3.9';
    4242    var $query_var = 'bablic_locale';
    43     var $bablic_plugin_version = '2.4.1';
     43    var $bablic_plugin_version = '2.4.2';
     44
     45    var $debug = false;
    4446   
    4547   
     
    110112                'subdir' => $options['dont_permalink'] == 'no',
    111113                'subdir_base' => $this->getDirBase(),
    112                 'store' => new wp_store()
     114                'store' => new wp_store(),
     115                'test' => $this->debug
    113116            )
    114117        );
     
    304307    function addAdminScripts($hook_suffix){
    305308        wp_enqueue_style('bablic-admin-css','//cdn2.bablic.com/addons/wp24.css');
    306         wp_enqueue_script('bablic-admin-sdk','//cdn2.bablic.com/addons/wp24.js');
     309        $test = '';
     310        if($this->debug)
     311            $test = '?test=true';
     312        wp_enqueue_script('bablic-admin-sdk','//cdn2.bablic.com/addons/wp24.js'. $test);
    307313    } 
    308314   
  • bablic/tags/2.4/sdk.php

    r1610736 r1631040  
    6464    private $timestamp = 0;
    6565    private $use_snippet_url = false;
     66    private $bablic_base = 'https://www.bablic.com';
     67    private $bablic_seo_base = 'http://seo.bablic.com';
     68    private $_locale = '';
    6669
    6770    function __construct($options) {
     
    6972            $options['channel_id'] = 'php';
    7073        }
     74        if(!empty($options['test']) && $options['test']){
     75            $this->bablic_base = 'http://staging.bablic.com';
     76            $this->bablic_seo_base = 'http://staging.bablic.com';
     77        }
     78
    7179        $this->channel_id = $options['channel_id'];
    7280        if(!empty($options['store']))
     
    8088            if($this->store->get('site_id') != $this->site_id)
    8189                $this->get_site_from_bablic();
     90            else if(!empty($_SERVER['HTTP_X_BABLIC_REFRESH']))
     91                $this->get_site_from_bablic();
    8292        }
    8393        if($this->site_id){
     
    145155        if($callback == '')
    146156            return;
    147         $url = "https://www.bablic.com/api/v1/site/".$site['id']."?access_token=$this->access_token&channel_id=$this->channel_id";
     157        $url = $this->bablic_base . "/api/v1/site/".$site['id']."?access_token=$this->access_token&channel_id=$this->channel_id";
    148158        $payload = array(
    149159            'callback' => $callback
     
    165175
    166176    public function create_site($options) {
    167         $url = "https://www.bablic.com/api/v1/site?channel_id=$this->channel_id";
     177        $url = $this->bablic_base . "/api/v1/site?channel_id=$this->channel_id";
    168178        $payload = array(
    169179            'url' => $options['site_url'],
     
    195205
    196206    public function get_site_from_bablic() {
    197         $url = "https://www.bablic.com/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
     207        $url = $this->bablic_base . "/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
    198208        $ch = curl_init();
    199209        curl_setopt($ch, CURLOPT_URL, $url);
     
    429439    }
    430440
    431     public function get_locale() {
     441    private function get_locale_inner(){
    432442        if(!empty($_SERVER['HTTP_BABLIC_LOCALE']))
    433443            return $_SERVER['HTTP_BABLIC_LOCALE'];
     
    458468        }
    459469        $from_cookie = $this->detect_locale_from_cookie($locale_keys);
    460         $parsed_url = parse_url($this->get_current_url());
     470        $url = $this->get_current_url();
     471        $parsed_url = parse_url($url);
    461472        switch ($locale_detection) {
    462473            case 'querystring':
     
    478489                return $default;
    479490            case 'custom':
    480                 function create_domain_regex($str) {
    481                     $new_str = preg_replace("/([.?+^$[\]\\(){}|-])/g", "\\$1", $str);
    482                     return preg_replace("/\*/g",'.*', $new_str);
    483                 }
    484                 foreach ($custom_urls as &$value) {
    485                     $pattern = create_domain_regex($value);
     491                foreach ($custom_urls as $key => $value) {
     492                    $pattern = $this->create_domain_regex($value);
    486493                    if (preg_match($pattern, $url, $matches))
    487                         return $value;
     494                        return $key;
    488495                }
    489496                return $default;
     
    494501    }
    495502
     503    public function get_locale() {
     504        if($this->_locale != '')
     505            return $this->_locale;
     506        $locale = $this->get_locale_inner();
     507        $this->_locale = $locale;
     508        return $locale;
     509    }
     510
     511
     512    private function create_domain_regex($str){
     513        $new_str = preg_replace("/([.?+^$[\]\\\/(){}|-])/", "\\\\$1", $str);
     514        return '/'.preg_replace("/\*/",'.*', $new_str).'/';
     515    }
     516
    496517    public function editor_url() {
    497         return "https://www.bablic.com/channels/editor?site=$this->site_id&access_token=$this->access_token";
     518        return $this->bablic_base . "/channels/editor?site=$this->site_id&access_token=$this->access_token";
    498519    }
    499520
    500521    public function remove_site(){
    501         $url = "https://www.bablic.com/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
     522        $url = $this->bablic_base . "/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
    502523        $ch = curl_init();
    503524        curl_setopt($ch, CURLOPT_URL, $url);
     
    536557        if(empty($_SERVER['HTTP_USER_AGENT']))
    537558            return false;
    538         $is_bot =  '/bot|crawler|baiduspider|facebookexternalhit|Twitterbot|80legs|mediapartners-google|adsbot-google/i';
     559        $is_bot =  '/bot|crawler|baiduspider|80legs|google|facebook|twitter|seo/i';
    539560        if(preg_match($is_bot, $_SERVER['HTTP_USER_AGENT'], $matches))
    540561            return true;
     
    607628
    608629    private function send_to_bablic($url, $html) {
    609         $bablic_url = "http://seo.bablic.com/api/engine/seo?site=$this->site_id&url=".urlencode($url).($this->subdir ? "&ld=subdir" : "").($this->subdir_base ? "&sdb=" .urlencode($this->subdir_base) : "");
     630        $bablic_url = $this->bablic_seo_base . "/api/engine/seo?site=$this->site_id&url=".urlencode($url).($this->subdir ? "&ld=subdir" : "").($this->subdir_base ? "&sdb=" .urlencode($this->subdir_base) : "");
    610631        $curl = curl_init($bablic_url);
    611632        $length = strlen($html);
  • bablic/trunk/Bablic.php

    r1611084 r1631040  
    3535    var $options_group = 'bablic_option_option';
    3636    var $options_page = 'bablic';
    37     var $plugin_homepage = 'https://www.bablic.com/integrations/wordpress';
    38     var $bablic_docs = 'https://www.bablic.com/documentation';
     37    var $plugin_homepage = 'http://help.bablic.com/integrations/translate-your-wordpress-site-with-bablic';
     38    var $bablic_docs = 'http://help.bablic.com/';
    3939    var $plugin_name = 'Bablic';
    4040    var $plugin_textdomain = 'Bablic';
    41     var $bablic_version = '3.3';
     41    var $bablic_version = '3.9';
    4242    var $query_var = 'bablic_locale';
    43     var $bablic_plugin_version = '2.4.1';
     43    var $bablic_plugin_version = '2.4.2';
     44
     45    var $debug = false;
    4446   
    4547   
     
    110112                'subdir' => $options['dont_permalink'] == 'no',
    111113                'subdir_base' => $this->getDirBase(),
    112                 'store' => new wp_store()
     114                'store' => new wp_store(),
     115                'test' => $this->debug
    113116            )
    114117        );
     
    304307    function addAdminScripts($hook_suffix){
    305308        wp_enqueue_style('bablic-admin-css','//cdn2.bablic.com/addons/wp24.css');
    306         wp_enqueue_script('bablic-admin-sdk','//cdn2.bablic.com/addons/wp24.js');
     309        $test = '';
     310        if($this->debug)
     311            $test = '?test=true';
     312        wp_enqueue_script('bablic-admin-sdk','//cdn2.bablic.com/addons/wp24.js'. $test);
    307313    } 
    308314   
  • bablic/trunk/sdk.php

    r1610736 r1631040  
    6464    private $timestamp = 0;
    6565    private $use_snippet_url = false;
     66    private $bablic_base = 'https://www.bablic.com';
     67    private $bablic_seo_base = 'http://seo.bablic.com';
     68    private $_locale = '';
    6669
    6770    function __construct($options) {
     
    6972            $options['channel_id'] = 'php';
    7073        }
     74        if(!empty($options['test']) && $options['test']){
     75            $this->bablic_base = 'http://staging.bablic.com';
     76            $this->bablic_seo_base = 'http://staging.bablic.com';
     77        }
     78
    7179        $this->channel_id = $options['channel_id'];
    7280        if(!empty($options['store']))
     
    8088            if($this->store->get('site_id') != $this->site_id)
    8189                $this->get_site_from_bablic();
     90            else if(!empty($_SERVER['HTTP_X_BABLIC_REFRESH']))
     91                $this->get_site_from_bablic();
    8292        }
    8393        if($this->site_id){
     
    145155        if($callback == '')
    146156            return;
    147         $url = "https://www.bablic.com/api/v1/site/".$site['id']."?access_token=$this->access_token&channel_id=$this->channel_id";
     157        $url = $this->bablic_base . "/api/v1/site/".$site['id']."?access_token=$this->access_token&channel_id=$this->channel_id";
    148158        $payload = array(
    149159            'callback' => $callback
     
    165175
    166176    public function create_site($options) {
    167         $url = "https://www.bablic.com/api/v1/site?channel_id=$this->channel_id";
     177        $url = $this->bablic_base . "/api/v1/site?channel_id=$this->channel_id";
    168178        $payload = array(
    169179            'url' => $options['site_url'],
     
    195205
    196206    public function get_site_from_bablic() {
    197         $url = "https://www.bablic.com/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
     207        $url = $this->bablic_base . "/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
    198208        $ch = curl_init();
    199209        curl_setopt($ch, CURLOPT_URL, $url);
     
    429439    }
    430440
    431     public function get_locale() {
     441    private function get_locale_inner(){
    432442        if(!empty($_SERVER['HTTP_BABLIC_LOCALE']))
    433443            return $_SERVER['HTTP_BABLIC_LOCALE'];
     
    458468        }
    459469        $from_cookie = $this->detect_locale_from_cookie($locale_keys);
    460         $parsed_url = parse_url($this->get_current_url());
     470        $url = $this->get_current_url();
     471        $parsed_url = parse_url($url);
    461472        switch ($locale_detection) {
    462473            case 'querystring':
     
    478489                return $default;
    479490            case 'custom':
    480                 function create_domain_regex($str) {
    481                     $new_str = preg_replace("/([.?+^$[\]\\(){}|-])/g", "\\$1", $str);
    482                     return preg_replace("/\*/g",'.*', $new_str);
    483                 }
    484                 foreach ($custom_urls as &$value) {
    485                     $pattern = create_domain_regex($value);
     491                foreach ($custom_urls as $key => $value) {
     492                    $pattern = $this->create_domain_regex($value);
    486493                    if (preg_match($pattern, $url, $matches))
    487                         return $value;
     494                        return $key;
    488495                }
    489496                return $default;
     
    494501    }
    495502
     503    public function get_locale() {
     504        if($this->_locale != '')
     505            return $this->_locale;
     506        $locale = $this->get_locale_inner();
     507        $this->_locale = $locale;
     508        return $locale;
     509    }
     510
     511
     512    private function create_domain_regex($str){
     513        $new_str = preg_replace("/([.?+^$[\]\\\/(){}|-])/", "\\\\$1", $str);
     514        return '/'.preg_replace("/\*/",'.*', $new_str).'/';
     515    }
     516
    496517    public function editor_url() {
    497         return "https://www.bablic.com/channels/editor?site=$this->site_id&access_token=$this->access_token";
     518        return $this->bablic_base . "/channels/editor?site=$this->site_id&access_token=$this->access_token";
    498519    }
    499520
    500521    public function remove_site(){
    501         $url = "https://www.bablic.com/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
     522        $url = $this->bablic_base . "/api/v1/site/$this->site_id?access_token=$this->access_token&channel_id=$this->channel_id";
    502523        $ch = curl_init();
    503524        curl_setopt($ch, CURLOPT_URL, $url);
     
    536557        if(empty($_SERVER['HTTP_USER_AGENT']))
    537558            return false;
    538         $is_bot =  '/bot|crawler|baiduspider|facebookexternalhit|Twitterbot|80legs|mediapartners-google|adsbot-google/i';
     559        $is_bot =  '/bot|crawler|baiduspider|80legs|google|facebook|twitter|seo/i';
    539560        if(preg_match($is_bot, $_SERVER['HTTP_USER_AGENT'], $matches))
    540561            return true;
     
    607628
    608629    private function send_to_bablic($url, $html) {
    609         $bablic_url = "http://seo.bablic.com/api/engine/seo?site=$this->site_id&url=".urlencode($url).($this->subdir ? "&ld=subdir" : "").($this->subdir_base ? "&sdb=" .urlencode($this->subdir_base) : "");
     630        $bablic_url = $this->bablic_seo_base . "/api/engine/seo?site=$this->site_id&url=".urlencode($url).($this->subdir ? "&ld=subdir" : "").($this->subdir_base ? "&sdb=" .urlencode($this->subdir_base) : "");
    610631        $curl = curl_init($bablic_url);
    611632        $length = strlen($html);
Note: See TracChangeset for help on using the changeset viewer.