';
}
if($widget_adbuttons_cfg['ab_fix']){
$results = $wpdb->get_results("SELECT * FROM "."{$wpdb->prefix}ad_buttons WHERE
ad_active = 1 ORDER BY ad_pos");
}else{
$results = $wpdb->get_results("SELECT * FROM "."{$wpdb->prefix}ad_buttons WHERE
ad_active = 1 ORDER BY RAND()");
}
foreach($results as $result){
if ($ab_count < $widget_adbuttons_cfg['ab_dspcnt']) {
if($widget_adbuttons_cfg['ab_adsense']){
if($widget_adbuttons_cfg['ab_adsense_pos']==$ab_count){
echo $ab_adsense_ad;
}
}
if(ad_buttons_show_ad($result->id)) {
echo $widget_adbuttons_cfg['ab_nofollow'];
echo '';
$ab_count = $ab_count + 1;
// update view counter on the ad button
if(!ad_buttons_is_bot()) {
if($widget_adbuttons_cfg['ab_count'] OR !is_user_logged_in()){
$wpdb->query($wpdb->prepare("UPDATE {$wpdb->prefix}ad_buttons
SET ad_views = ad_views + 1 WHERE id = %d",$result->id));
$ab_ip = (int)ip2long($_SERVER['REMOTE_ADDR']);
$wpdb->query($wpdb->prepare("INSERT INTO {$wpdb->prefix}ad_buttons_stats(abs_dat, abs_ip, abs_view)
VALUES(CURDATE(), %d, %d)",$ab_ip,$result->id));
}
}
}
}
}
if($widget_adbuttons_cfg['ab_adsense']){
if($widget_adbuttons_cfg['ab_adsense_pos']==$ab_count){
echo $ab_adsense_ad;
}
}
if($widget_adbuttons_cfg['ab_yah']){
if($widget_adbuttons_cfg['ab_yaht'] == 'url'){
echo'';
} else {
echo'';
}
}
if($widget_adbuttons_cfg['ab_nocss']){
echo $ab_powered;
}else{
echo ''.$ab_powered.'
';
}
}
function ad_buttons_settings(){
global $wpdb;
include 'adbuttonsadmin.php';
}
function ad_buttons_stats(){
global $wpdb;
include 'adbuttonsstats.php';
}
function ad_buttons_test_gae(){
global $wpdb;
include 'adbuttonstestgae.php';
}
function ad_buttons_top(){
global $wpdb;
include 'adbuttonstop.php';
}
function ad_buttons_act(){
global $wpdb;
include 'adbuttonsact.php';
}
function ad_buttons_stats_actions(){
add_menu_page('Ad Buttons', 'Ad Buttons', 'edit_pages', __FILE__, 'ad_buttons_act', get_option('siteurl').'/'.PLUGINDIR.'/'.dirname(plugin_basename(__FILE__)).'/ad_buttons_icon.png');
// Add a submenu to the custom top-level menu:
add_submenu_page(__FILE__, 'Ad Buttons Settings', 'Settings', 'edit_pages', 'ad-buttons-settings', 'ad_buttons_settings');
add_submenu_page(__FILE__, 'Ad Buttons Stats', 'Stats', 'edit_pages', 'ad-buttons-stats', 'ad_buttons_stats');
}
add_action('admin_menu', 'ad_buttons_stats_actions');
// process ad clicks
function ad_buttons_getclick(){
global $wpdb;
$widget_adbuttons_cfg = ad_buttons_get_config();
if(isset($_GET['recommends'])){
if(is_numeric($_GET['recommends'])){
$ad_id = (int)$_GET['recommends'];
if(is_numeric($ad_id)){
$results = $wpdb->get_results($wpdb->prepare("SELECT ad_link FROM {$wpdb->prefix}ad_buttons WHERE id = %d LIMIT 1",$ad_id));
foreach($results as $result){
$send_to_url = $result->ad_link;
if(!ad_buttons_is_bot()) {
if($widget_adbuttons_cfg['ab_count'] OR !is_user_logged_in()){
$wpdb->query($wpdb->prepare("UPDATE {$wpdb->prefix}ad_buttons
SET ad_clicks = ad_clicks + 1 WHERE id = %d",$ad_id));
$ab_ip = ip2long($_SERVER['REMOTE_ADDR']);
$wpdb->query($wpdb->prepare("INSERT INTO {$wpdb->prefix}ad_buttons_stats(abs_dat, abs_ip, abs_click)
VALUES(CURDATE(), %d, %d)",$ab_ip,$ad_id));
}
}
//redirect to the URL of the clicked ad
header("Location: ".esc_url( $send_to_url ));
exit(0);
}
}
}
}
}
// widget
function widget_init_ad_buttons_widget() {
// Check for required functions
if (!function_exists('register_sidebar_widget'))
return;
function ad_buttons_widget($args){
extract($args);
$options = get_option('widget_adbuttons_cfg');
$title = empty($options['ab_title']) ? __('Sponsored Links') : $options['ab_title'];
echo $before_widget;
echo $before_title . esc_html($title) . $after_title ;
if( !stristr( $_SERVER['PHP_SELF'], 'widgets.php' ) ){
ad_buttons();
}
echo $after_widget;
}
function ad_buttons_widget_control() {
$options = $newoptions = get_option('widget_adbuttons_cfg');
if($_SERVER['REQUEST_METHOD'] == 'POST' && current_user_can( 'manage_options' )) {
// add a nonce check here
//adbuttonsupdtitle
if ( !empty($_POST['ad_buttons_widget_submit']) && wp_verify_nonce( $_POST['adbuttonsupdtitle'], 'adbuttons_updatewidgettitle' )) {
$newoptions['ab_title'] = sanitize_text_field( $_POST['ad_buttons_widget_title'] );
}
if ( $options != $newoptions ) {
$options = $newoptions;
update_option('widget_adbuttons_cfg', $options);
}
}
$title = esc_attr($options['ab_title']);
// add a nonce creation here
?>
That's all you can set here. All other options and ad controls can be found in the Ad Buttons
menu located on the far left side of this page.
'Displays ad buttons'
)
);
wp_register_widget_control(
'ad_buttons_widget_1', // unique widget id
'Ad Buttons', // widget name
'ad_buttons_widget_control', // callback function
array( // options
'description' => 'Displays ad buttons'
)
);
}
// Delay plugin execution until sidebar is loaded
add_action('widgets_init', 'widget_init_ad_buttons_widget');
add_action('init', 'ad_buttons_getclick');
add_filter('query_vars','ad_buttons_add_trigger');
function ad_buttons_add_trigger($vars) {
$vars[] = 'ad_buttons_graph';
return $vars;
}
add_action('template_redirect', 'ad_buttons_gen_graph');
function ad_buttons_gen_graph() {
if(intval(get_query_var('ad_buttons_graph')) == 1) {
// png image generation code
include('adbuttonsstatsimg.php');
exit;
}
}
?>