= (USER_FREQUENCY + SYS_FREQUENCY)) { $ads_int_count_our_post = 1; update_option('ads_int_count_our_post', $ads_int_count_our_post); } $ads_int_count_our_post++; update_option('ads_int_count_our_post', $ads_int_count_our_post); } add_action('admin_menu', 'adsense_integrator_admin'); function adsense_integrator_admin() { global $ads_int_domain; add_submenu_page('options-general.php', __('AdSense Integrator', $ads_int_domain), __('AdSense Integrator', $ads_int_domain), 5, __FILE__, 'adsense_integrator_admin_interface'); } /**************************** POST OPTIONS FUNCTIONS ************************************/ add_action('edit_post', 'ads_int_edit_action'); add_action('publish_post', 'ads_int_edit_action'); add_action('save_post', 'ads_int_edit_action'); add_action('edit_page_form', 'ads_int_edit_action'); function ads_int_edit_action($id) { $ads_int_edit = $_POST["ads_int_edit"]; if (isset($ads_int_edit) && !empty($ads_int_edit)) { $ads_int_disable = $_POST["ads_int_disable"]; delete_post_meta($id, 'ads_int_disable'); if (isset($ads_int_disable) && !empty($ads_int_disable)) add_post_meta($id, 'ads_int_disable', $ads_int_disable); } } add_action('simple_edit_form', 'ads_int_edit_form_action'); add_action('edit_form_advanced','ads_int_edit_form_action'); function ads_int_edit_form_action() { global $post; $post_id = $post; if (is_object($post_id)) $post_id = $post_id->ID; $ads_int_disable = htmlspecialchars(stripcslashes(get_post_meta($post_id, 'ads_int_disable', false))); global $ads_int_domain; ?>
' . $adsense_text . '
' . $adsense_text . '', $place_index, 0); return $content; } function adsense_integrator_helper_render_position_10($content, $adsense_text, $ads_int_margin) { $entry_positions = array(); $last_position = 0; $entry = '
' . $adsense_text . '', array_pop($entry_positions), 0); return $content; } function adsense_integrator_helper_render_position_12($content, $adsense_text, $ads_int_margin) { $entry_positions = array(); $last_position = 0; $entry = '
' . $adsense_text . '', $last, 0); return $content; } function adsense_integrator_helper_is_checked($ads_int_option, $value) { if(isset($ads_int_option) && is_array($ads_int_option)) { foreach($ads_int_option as $option) { if($option == $value) return 'checked'; if($option == ADS_INT_VIS_ALL) return 'checked'; } } return ''; } function adsense_integrator_helper_is_first_post($ads_first_post) { if($ads_first_post != 1) return true; global $ads_int_count_post; if ($ads_int_count_post > 1) return false; return true; } function adsense_integrator_helper_check_our_ads($adsense_text) { $ads_int_text_flag = $adsense_text; $ads_int_count_our_post = get_option('ads_int_count_our_post'); $ads_int_our_post_freq = get_option('ads_int_our_post_freq'); if($ads_int_our_post_freq == OFF_FREQUENCY) return $adsense_text; if(!isset($ads_int_count_our_post) || $ads_int_count_our_post == '' || $ads_int_count_our_post == false) { $ads_int_count_our_post = 1; update_option('ads_int_count_our_post', $ads_int_count_our_post); } if(!isset($ads_int_our_post_freq) || $ads_int_our_post_freq == '' || $ads_int_our_post_freq == false) { $ads_int_our_post_freq = USER_FREQUENCY; update_option('ads_int_our_post_freq', $ads_int_our_post_freq); } if($ads_int_count_our_post > $ads_int_our_post_freq) $ads_int_text_flag = adsense_integrator_helper_get_our_ads($adsense_text); return $ads_int_text_flag; } function adsense_integrator_helper_get_ads_dimensions($adsense_text) { //get width and height of ads with regular expression $matches = null; $pattern = 'google_ad_width = ([0-9]+)'; eregi($pattern, $adsense_text, $matches); $width = $matches[1]; $pattern = 'google_ad_height = ([0-9]+)'; eregi($pattern, $adsense_text, $matches); $height = $matches[1]; return array($width, $height); } function adsense_integrator_helper_get_our_ads($adsense_text) { $our_ads = ''; $dimensions = adsense_integrator_helper_get_ads_dimensions($adsense_text); $width = $dimensions[0]; $height = $dimensions[1]; $const = '_' . $width . 'x' . $height; switch ($const) { case '_728x90' : $our_ads = _728x90; break; case '_468x60' : $our_ads = _468x60; break; case '_234x60' : $our_ads = _234x60; break; case '_120x600': $our_ads = _120x600; break; case '_160x600': $our_ads = _160x600; break; case '_120x240': $our_ads = _120x240; break; case '_336x280': $our_ads = _336x280; break; case '_300x250': $our_ads = _300x250; break; case '_250x250': $our_ads = _250x250; break; case '_200x200': $our_ads = _200x200; break; case '_180x150': $our_ads = _180x150; break; case '_125x125': $our_ads = _125x125; break; case '_728x15' : $our_ads = _728x15; break; case '_468x15' : $our_ads = _468x15; break; case '_200x90' : $our_ads = _200x90; break; case '_180x90' : $our_ads = _180x90; break; case '_160x90' : $our_ads = _160x90; break; case '_120x90' : $our_ads = _120x90; break; } return $our_ads; } function adsense_integrator_helper_filter_ip($adsense_text) { $ads_int_banned_ips = get_option('ads_int_banned_ips'); if(isset($ads_int_banned_ips) && $ads_int_banned_ips != '') { $ads_int_banned_text = get_option('ads_int_banned_text'); if(!isset($ads_int_banned_text)) $ads_int_banned_text = ''; $ip_list = explode("-", $ads_int_banned_ips); if(isset($ip_list) && count($ip_list) > 0) { foreach($ip_list as $ip) { if($_SERVER['REMOTE_ADDR'] == $ip) return $ads_int_banned_text; } } } return $adsense_text; } function adsense_integrator_helper_format_ips($ads_int_banned_ips) { $ips = explode("-", $ads_int_banned_ips); $ips_output = ''; foreach($ips as $ip) $ips_output .= $ip . "\n"; return $ips_output; } function adsense_integrator_helper_get_margin($ads_int_entry) { $margin = ''; $u_o_m = ''; if(isset($ads_int_entry['margin_um']) && $ads_int_entry['margin_um'] != '') $u_o_m = $ads_int_entry['margin_um']; else $u_o_m = 'px'; if(isset($ads_int_entry['margin']['top']) && $ads_int_entry['margin']['top'] != '') $margin .= $ads_int_entry['margin']['top'] . $u_o_m . ' '; else $margin .= '0 '; if(isset($ads_int_entry['margin']['right']) && $ads_int_entry['margin']['right'] != '') $margin .= $ads_int_entry['margin']['right'] . $u_o_m . ' '; else $margin .= '0 '; if(isset($ads_int_entry['margin']['bottom']) && $ads_int_entry['margin']['bottom'] != '') $margin .= $ads_int_entry['margin']['bottom'] . $u_o_m . ' '; else $margin .= '0 '; if(isset($ads_int_entry['margin']['left']) && $ads_int_entry['margin']['left'] != '') $margin .= $ads_int_entry['margin']['left'] . $u_o_m; else $margin .= '0'; return $margin; } //main thread switch($_POST['action']) { case 'ip-banning': if (isset($_POST['banning-list']) && $_POST['banning-list'] != '') { $ip_list = explode("\n",$_POST['banning-list']); $ads_int_banned_ips = ''; foreach($ip_list as $ip) { if(strlen($ip) > 6) $ads_int_banned_ips .= trim($ip) . '-'; } $ads_int_banned_ips = substr($ads_int_banned_ips, 0, strlen($ads_int_banned_ips) - 1); update_option('ads_int_banned_ips', $ads_int_banned_ips); } else update_option('ads_int_banned_ips', ''); if(isset($_POST['banning-text']) && $_POST['banning-text'] != '') { update_option('ads_int_banned_text', $_POST['banning-text']); } else update_option('ads_int_banned_text', ''); break; case 'freq': if (isset($_POST['freq']) && $_POST['freq'] != '') { if($_POST['freq'] == 'on') update_option('ads_int_our_post_freq', USER_FREQUENCY); } else update_option('ads_int_our_post_freq', OFF_FREQUENCY); break; case 'update': $ads_int_announcement = get_option('ads_int_announcement'); $ads_int_ads = null; if($_POST['update_id'] != '') $ads_int_ads = $ads_int_announcement[$_POST['update_id']]; else break; if ($ads_int_ads == null) break; //reset params for security issues $ads_int_ads['position'] = array(); $ads_int_ads['visibility'] = array(); $ads_int_ads['margin'] = array(); //type if($_POST['new_ads_type'] != '') $ads_int_ads['type'] = $_POST['new_ads_type']; //times if($_POST['new_ads_rep'] != '') $ads_int_ads['repetition'] = $_POST['new_ads_rep']; //ads text if($_POST['new_ads_content'] != '') $ads_int_ads['content'] = stripslashes($_POST['new_ads_content']); //first post only if($_POST['ads_int_first_post'] == 'on') $ads_int_ads['first_post'] = 1; else $ads_int_ads['first_post'] = 0; //position if($_POST['ads_int_pos_0'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_0); if($_POST['ads_int_pos_1'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_1); if($_POST['ads_int_pos_2'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_2); if($_POST['ads_int_pos_3'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_3); if($_POST['ads_int_pos_4'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_4); if($_POST['ads_int_pos_6'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_6); if($_POST['ads_int_pos_8'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_8); if($_POST['ads_int_pos_10'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_10); if($_POST['ads_int_pos_12'] == 'on') array_push($ads_int_ads['position'], ADS_INT_POS_12); //visibility if($_POST['ads_int_vis_home'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_HOME); if($_POST['ads_int_vis_post'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_POST); if($_POST['ads_int_vis_page'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_PAGE); if($_POST['ads_int_vis_cat'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_CAT); if($_POST['ads_int_vis_tag'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_TAG); if($_POST['ads_int_vis_arc'] == 'on') array_push($ads_int_ads['visibility'], ADS_INT_VIS_ARC); //margin if($_POST['asd_int_margin_um'] != '') $ads_int_ads['margin_um'] = trim($_POST['asd_int_margin_um']); else $ads_int_ads['margin_um'] = 'px'; if($_POST['ads_int_margin_top'] != '') $ads_int_ads['margin']['top'] = trim($_POST['ads_int_margin_top']); else $ads_int_ads['margin']['top'] = 0; if($_POST['ads_int_margin_bottom'] != '') $ads_int_ads['margin']['bottom'] = trim($_POST['ads_int_margin_bottom']); else $ads_int_ads['margin']['bottom'] = 0; if($_POST['ads_int_margin_left'] != '') $ads_int_ads['margin']['left'] = trim($_POST['ads_int_margin_left']); else $ads_int_ads['margin']['left'] = 0; if($_POST['ads_int_margin_right'] != '') $ads_int_ads['margin']['right'] = trim($_POST['ads_int_margin_right']); else $ads_int_ads['margin']['right'] = 0; $ads_int_announcement[$_POST['update_id']] = $ads_int_ads; update_option('ads_int_announcement', $ads_int_announcement); break; case 'delete': $ads_int_announcement = get_option('ads_int_announcement'); if($_POST['delection_id'] != '') unset($ads_int_announcement[$_POST['delection_id']]); else break; update_option('ads_int_announcement', $ads_int_announcement); break; case 'save': $ads_int_announcement = get_option('ads_int_announcement'); $new_entry = array(); $new_entry['position'] = array(); $new_entry['visibility'] = array(); $new_entry['margin'] = array(); //name if($_POST['new_name'] != '') $new_entry['name'] = $_POST['new_name']; //type if($_POST['new_ads_type'] != '') $new_entry['type'] = $_POST['new_ads_type']; //times if($_POST['new_ads_rep'] != '') $new_entry['repetition'] = $_POST['new_ads_rep']; //ads text if($_POST['new_ads_content'] != '') $new_entry['content'] = stripslashes($_POST['new_ads_content']); //first post only if($_POST['ads_int_first_post'] == 'on') $new_entry['first_post'] = 1; else $new_entry['first_post'] = 0; //position if($_POST['ads_int_pos_0'] == 'on') array_push($new_entry['position'], ADS_INT_POS_0); if($_POST['ads_int_pos_1'] == 'on') array_push($new_entry['position'], ADS_INT_POS_1); if($_POST['ads_int_pos_2'] == 'on') array_push($new_entry['position'], ADS_INT_POS_2); if($_POST['ads_int_pos_3'] == 'on') array_push($new_entry['position'], ADS_INT_POS_3); if($_POST['ads_int_pos_4'] == 'on') array_push($new_entry['position'], ADS_INT_POS_4); if($_POST['ads_int_pos_6'] == 'on') array_push($new_entry['position'], ADS_INT_POS_6); if($_POST['ads_int_pos_8'] == 'on') array_push($new_entry['position'], ADS_INT_POS_8); if($_POST['ads_int_pos_10'] == 'on') array_push($new_entry['position'], ADS_INT_POS_10); if($_POST['ads_int_pos_12'] == 'on') array_push($new_entry['position'], ADS_INT_POS_12); //visibility if($_POST['ads_int_vis_home'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_HOME); if($_POST['ads_int_vis_post'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_POST); if($_POST['ads_int_vis_page'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_PAGE); if($_POST['ads_int_vis_cat'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_CAT); if($_POST['ads_int_vis_tag'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_TAG); if($_POST['ads_int_vis_arc'] == 'on') array_push($new_entry['visibility'], ADS_INT_VIS_ARC); //margins if($_POST['ads_int_margin_um'] != '') $new_entry['margin_um'] = trim($_POST['ads_int_margin_um']); else $new_entry['margin_um'] = 'px'; if($_POST['ads_int_margin_top'] != '') $new_entry['margin']['top'] = trim($_POST['ads_int_margin_top']); else $new_entry['margin']['top'] = 0; if($_POST['ads_int_margin_bottom'] != '') $new_entry['margin']['bottom'] = trim($_POST['ads_int_margin_bottom']); else $new_entry['margin']['bottom'] = 0; if($_POST['ads_int_margin_left'] != '') $new_entry['margin']['left'] = trim($_POST['ads_int_margin_left']); else $new_entry['margin']['left'] = 0; if($_POST['ads_int_margin_right'] != '') $new_entry['margin']['right'] = trim($_POST['ads_int_margin_right']); else $new_entry['margin']['right'] = 0; if(!isset($ads_int_announcement) || !is_array($ads_int_announcement)) $ads_int_announcement = array(); array_push($ads_int_announcement, $new_entry); update_option('ads_int_announcement', $ads_int_announcement); break; } /*********************** DEFINES OF OUR ADS *************************/ // ANNOUNCEMENT //120x240 BANNER VERTICALE define('_120x240',' '); //120x600 SKYSCRAPER define('_120x600',' '); //125x125 BUTTON define('_125x125',' '); //160x600 SKYSCAPER LARGO define('_160x600',' '); //180x150 RETTANGOLO PICCOLO define('_180x150',' '); //200x200 Quadrato piccolo define('_200x200',' '); //234x60 MEZZO BANNER define('_234x60',' '); //250x250 Quadrato define('_250x250',' '); //300x250 RETTANGOLO MEDIO define('_300x250',' '); //336x280 RETTANGOLO GRANDE define('_336x280',' '); //468x60 BANNER define('_468x60',' '); //728x90 LEADERBOARD define('_728x90',' '); // LINKS (defines only by dimensions) //120x90 define('_120x90',' '); //160x90 define('_160x90',' '); //180x90 define('_180x90',' '); //200x90 define('_200x90',' '); //468x15 define('_468x15',' '); //728x15 define('_728x15',' '); /**************************************************************************/ ?>