function bookmarks($bookmarks)
 {
     if (!$this->do_tracking()) {
         return $bookmarks;
     }
     $i = 0;
     while ($i < count($bookmarks)) {
         $target = yoast_ga_get_domain($bookmarks[$i]->link_url);
         $sitedomain = yoast_ga_get_domain(get_bloginfo('url'));
         if ($target['host'] == $sitedomain['host']) {
             $i++;
             continue;
         }
         if (isset($this->options['domainorurl']) && $this->options['domainorurl'] == "domain") {
             $url = $target["host"];
         } else {
             $url = $bookmarks[$i]->link_url;
         }
         $trackBit = '" onclick="' . $this->get_tracking_link('outbound-blogroll', $url);
         $bookmarks[$i]->link_target .= $trackBit;
         $i++;
     }
     return $bookmarks;
 }
Example #2
0
 function save_settings()
 {
     $options = get_option($this->optionname);
     if (isset($_REQUEST['reset']) && $_REQUEST['reset'] == "true" && isset($_REQUEST['plugin']) && $_REQUEST['plugin'] == 'google-analytics-for-wordpress') {
         $options = $this->set_defaults();
         $options['msg'] = "<div class=\"updated\"><p>" . __('Google Analytics settings reset.', 'gawp') . "</p></div>\n";
     } elseif (isset($_POST['submit']) && isset($_POST['plugin']) && $_POST['plugin'] == 'google-analytics-for-wordpress') {
         if (!current_user_can('manage_options')) {
             wp_die(__('You cannot edit the Google Analytics for WordPress options.', 'gawp'));
         }
         check_admin_referer('analyticspp-config');
         foreach (array('uastring', 'dlextensions', 'domainorurl', 'position', 'domain', 'customcode', 'ga_token', 'extraseurl', 'gajsurl', 'gfsubmiteventpv', 'trackprefix', 'ignore_userlevel', 'internallink', 'internallinklabel', 'primarycrossdomain', 'othercrossdomains') as $option_name) {
             if (isset($_POST[$option_name])) {
                 $options[$option_name] = $_POST[$option_name];
             } else {
                 $options[$option_name] = '';
             }
         }
         foreach (array('extrase', 'trackoutbound', 'admintracking', 'trackadsense', 'allowanchor', 'allowlinker', 'allowhash', 'rsslinktagging', 'advancedsettings', 'trackregistration', 'theme_updated', 'cv_loggedin', 'cv_authorname', 'cv_category', 'cv_all_categories', 'cv_tags', 'cv_year', 'cv_post_type', 'outboundpageview', 'downloadspageview', 'trackcrossdomain', 'gajslocalhosting', 'manual_uastring', 'taggfsubmit', 'wpec_tracking', 'shopp_tracking', 'anonymizeip', 'trackcommentform', 'debug', 'firebuglite', 'yoast_tracking') as $option_name) {
             if (isset($_POST[$option_name]) && $_POST[$option_name] == 'on') {
                 $options[$option_name] = true;
             } else {
                 $options[$option_name] = false;
             }
         }
         if (isset($_POST['manual_uastring']) && isset($_POST['uastring_man'])) {
             $options['uastring'] = $_POST['uastring_man'];
         }
         if ($options['trackcrossdomain']) {
             if (!$options['allowlinker']) {
                 $options['allowlinker'] = true;
             }
             if (empty($options['primarycrossdomain'])) {
                 $origin = yoast_ga_get_domain($_SERVER["HTTP_HOST"]);
                 $options['primarycrossdomain'] = $origin["domain"];
             }
         }
         if (function_exists('w3tc_pgcache_flush')) {
             w3tc_pgcache_flush();
         }
         if (function_exists('w3tc_dbcache_flush')) {
             w3tc_dbcache_flush();
         }
         if (function_exists('w3tc_minify_flush')) {
             w3tc_minify_flush();
         }
         if (function_exists('w3tc_objectcache_flush')) {
             w3tc_objectcache_flush();
         }
         if (function_exists('wp_cache_clear_cache')) {
             wp_cache_clear_cache();
         }
         $options['msg'] = "<div id=\"updatemessage\" class=\"updated fade\"><p>" . __("Google Analytics settings updated.", "gawp") . "</p></div>\n";
         $options['msg'] .= "<script type=\"text/javascript\">setTimeout(function(){jQuery('#updatemessage').hide('slow');}, 3000);</script>";
     }
     update_option($this->optionname, $options);
 }