Ejemplo n.º 1
0
function phpAds_logExpire($clientid, $type = 0)
{
    global $phpAds_config;
    // Get campaign information
    $campaignresult = phpAds_dbQuery("SELECT *, UNIX_TIMESTAMP(expire) AS expire_st, UNIX_TIMESTAMP(activate) AS activate_st FROM " . $phpAds_config['tbl_clients'] . " WHERE clientid = '" . $clientid . "'");
    if ($campaign = phpAds_dbFetchArray($campaignresult)) {
        // Decrement views
        if ($type == phpAds_Views && $campaign['views'] > 0) {
            phpAds_dbQuery("UPDATE " . $phpAds_config['tbl_clients'] . " SET views = views - 1 WHERE clientid = '" . $clientid . "'");
            $campaign['views']--;
            // Mail warning - preset is reached
            if ($campaign['views'] == $phpAds_config['warn_limit'] && ($phpAds_config['warn_admin'] || $phpAds_config['warn_client'])) {
                // Include warning library
                if (!defined('LIBWARNING_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-warnings.inc.php';
                }
                if (!defined('LIBMAIL_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-mail.inc.php';
                }
                if (!defined('LIBUSERLOG_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-userlog.inc.php';
                }
                phpAds_userlogSetUser(phpAds_userDeliveryEngine);
                phpAds_warningMail($campaign);
            }
        }
        // Decrement clicks
        if ($type == phpAds_Clicks && $campaign['clicks'] > 0) {
            phpAds_dbQuery("UPDATE " . $phpAds_config['tbl_clients'] . " SET clicks = clicks - 1 WHERE clientid='" . $clientid . "'");
            $campaign['clicks']--;
        }
        // Check activation status
        $active = "t";
        if ($campaign["clicks"] == 0 || $campaign["views"] == 0 || time() < $campaign["activate_st"] || time() > $campaign["expire_st"] && $campaign["expire_st"] != 0) {
            $active = "f";
        }
        if ($campaign["active"] != $active) {
            if (!defined('LIBUSERLOG_INCLUDED')) {
                require phpAds_path . '/libraries/lib-userlog.inc.php';
            }
            // Log deactivation
            phpAds_userlogSetUser(phpAds_userDeliveryEngine);
            phpAds_userlogAdd(phpAds_actionDeactiveCampaign, $campaign['clientid']);
            // Deactivate campaign
            phpAds_dbQuery("UPDATE " . $phpAds_config['tbl_clients'] . " SET active='" . $active . "' WHERE clientid='" . $clientid . "'");
            // Send deactivation warning
            if ($active == 'f') {
                // Rebuild priorities
                if (!defined('LIBPRIORITY_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-priority.inc.php';
                }
                phpAds_PriorityCalculate();
                // Recalculate cache
                if (!defined('LIBVIEWCACHE_INCLUDED')) {
                    include phpAds_path . '/libraries/deliverycache/cache-' . $phpAds_config['delivery_caching'] . '.inc.php';
                }
                phpAds_cacheDelete();
                // Include warning library
                if (!defined('LIBWARNING_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-warnings.inc.php';
                }
                if (!defined('LIBMAIL_INCLUDED')) {
                    require phpAds_path . '/libraries/lib-mail.inc.php';
                }
                phpAds_deactivateMail($campaign);
            }
        }
    }
}
    }
    // Send Query
    $res_campaigns = phpAds_dbQuery("\n\t\tSELECT\n\t\t\tclientid,\n\t\t\tclientname,\n\t\t\tparent,\n\t\t\tviews,\n\t\t\tclicks,\n\t\t\texpire,\n\t\t\tUNIX_TIMESTAMP(expire) as expire_st,\n\t\t\tactivate,\n\t\t\tUNIX_TIMESTAMP(activate) as activate_st,\n\t\t\tactive\n\t\tFROM\n\t\t\t" . $phpAds_config['tbl_clients'] . "\n\t\tWHERE\n\t\t\tparent = " . $client['clientid'] . "\n\t\t") or die($GLOBALS['strLogErrorClients']);
    while ($campaign = phpAds_dbFetchArray($res_campaigns)) {
        $active = "t";
        if ($campaign["clicks"] == 0 || $campaign["views"] == 0) {
            $active = "f";
        }
        if (time() < $campaign["activate_st"]) {
            $active = "f";
        }
        if (time() > $campaign["expire_st"] && $campaign["expire_st"] != 0) {
            $active = "f";
        }
        if ($campaign["active"] != $active) {
            if ($active == "t") {
                phpAds_userlogAdd(phpAds_actionActiveCampaign, $campaign['clientid']);
            } else {
                phpAds_userlogAdd(phpAds_actionDeactiveCampaign, $campaign['clientid']);
                phpAds_deactivateMail($campaign);
            }
            phpAds_dbQuery("UPDATE " . $phpAds_config['tbl_clients'] . " SET active='{$active}' WHERE clientid=" . $campaign['clientid']);
        }
        if ($active == "t" && ($phpAds_config['warn_admin'] || $phpAds_config['warn_client'])) {
            $days_left = round(($campaign["expire_st"] - phpAds_LastMidnight) / (60 * 60 * 24));
            if ($days_left == $phpAds_config['warn_limit_days']) {
                phpAds_warningMail($campaign, $campaign["expire_st"]);
            }
        }
    }
}