Пример #1
0
function change_day()
{
    global $Sql, $CONFIG_USER;
    #######Taches de maintenance#######
    $yesterday_timestamp = time() - 86400;
    $Sql->query_inject("INSERT INTO " . DB_TABLE_STATS . " (stats_year, stats_month, stats_day, nbr, pages, pages_detail) VALUES ('" . gmdate_format('Y', $yesterday_timestamp, TIMEZONE_SYSTEM) . "', '" . gmdate_format('m', $yesterday_timestamp, TIMEZONE_SYSTEM) . "', '" . gmdate_format('d', $yesterday_timestamp, TIMEZONE_SYSTEM) . "', 0, 0, '')", __LINE__, __FILE__);
    $last_stats = $Sql->insert_id("SELECT MAX(id) FROM " . PREFIX . "stats");
    #######Statistiques#######
    $Sql->query_inject("UPDATE " . DB_TABLE_STATS_REFERER . " SET yesterday_visit = today_visit", __LINE__, __FILE__);
    $Sql->query_inject("UPDATE " . DB_TABLE_STATS_REFERER . " SET today_visit = 0, nbr_day = nbr_day + 1", __LINE__, __FILE__);
    $Sql->query_inject("DELETE FROM " . DB_TABLE_STATS_REFERER . " WHERE last_update < '" . (time() - 604800) . "'", __LINE__, __FILE__);
    $pages_displayed = pages_displayed();
    import('io/filesystem/file');
    $pages_file = new File(PATH_TO_ROOT . '/cache/pages.txt');
    $pages_file->delete();
    $total_visit = $Sql->query("SELECT total FROM " . DB_TABLE_VISIT_COUNTER . " WHERE id = 1", __LINE__, __FILE__);
    $Sql->query_inject("DELETE FROM " . DB_TABLE_VISIT_COUNTER . " WHERE id <> 1", __LINE__, __FILE__);
    $Sql->query_inject("UPDATE " . DB_TABLE_VISIT_COUNTER . " SET time = '" . gmdate_format('Y-m-d', time(), TIMEZONE_SYSTEM) . "', total = 1 WHERE id = 1", __LINE__, __FILE__);
    $Sql->query_inject("INSERT INTO " . DB_TABLE_VISIT_COUNTER . " (ip, time, total) VALUES('" . USER_IP . "', '" . gmdate_format('Y-m-d', time(), TIMEZONE_SYSTEM) . "', '0')", __LINE__, __FILE__);
    $Sql->query_inject("UPDATE " . DB_TABLE_STATS . " SET nbr = '" . $total_visit . "', pages = '" . array_sum($pages_displayed) . "', pages_detail = '" . addslashes(serialize($pages_displayed)) . "' WHERE id = '" . $last_stats . "'", __LINE__, __FILE__);
    Session::garbage_collector();
    import('io/filesystem/folder');
    $week = 3600 * 24 * 7;
    $cache_image_folder_path = new Folder(PATH_TO_ROOT . '/images/maths/');
    foreach ($cache_image_folder_path->get_files('`\\.png$`') as $image) {
        if (time() - $image->get_last_modification_date() > $week) {
            $image->delete();
        }
    }
    import('modules/modules_discovery_service');
    $modules_loader = new ModulesDiscoveryService();
    $modules = $modules_loader->get_available_modules('on_changeday');
    foreach ($modules as $module) {
        if ($module->is_enabled()) {
            $module->functionality('on_changeday');
        }
    }
    $CONFIG_USER['delay_unactiv_max'] = $CONFIG_USER['delay_unactiv_max'] * 3600 * 24;
    if (!empty($CONFIG_USER['delay_unactiv_max']) && $CONFIG_USER['activ_mbr'] != 2) {
        $Sql->query_inject("DELETE FROM " . DB_TABLE_MEMBER . " WHERE timestamp < '" . (time() - $CONFIG_USER['delay_unactiv_max']) . "' AND user_aprob = 0", __LINE__, __FILE__);
    }
    if ($CONFIG_USER['verif_code'] == '1') {
        $Sql->query_inject("DELETE FROM " . DB_TABLE_VERIF_CODE . " WHERE timestamp < '" . (time() - 3600 * 24) . "'", __LINE__, __FILE__);
    }
    import('core/updates');
    new Updates();
}
Пример #2
0
 $current_day = substr($time, 6, 2);
 $day = retrieve(GET, 'd', (int) $current_day);
 $month = retrieve(GET, 'm', (int) $current_month);
 if ($pages_year) {
     $year = $pages_year;
     $clause = '';
 } elseif (retrieve(GET, 'd', false)) {
     $clause = " AND stats_month = '" . $month . "' AND stats_day = '" . $day . "'";
     $year = retrieve(GET, 'y', (int) $current_year);
 } else {
     $clause = " AND stats_month = '" . $month . "'";
     $year = retrieve(GET, 'y', (int) $current_year);
 }
 $info = $Sql->query_array(DB_TABLE_STATS, 'MAX(pages) as max_nbr', 'MIN(stats_day) as min_day', 'SUM(pages) as sum_nbr', 'AVG(pages) as avg_nbr', 'COUNT(DISTINCT(stats_month)) as nbr_month', 'pages', "WHERE stats_year = '" . $year . "'" . $clause . " AND pages_detail <> '' GROUP BY stats_month", __LINE__, __FILE__);
 $compteur_total = $Sql->query("SELECT SUM(pages) FROM " . PREFIX . "stats", __LINE__, __FILE__);
 $compteur_day = array_sum(pages_displayed(NO_UPDATE_PAGES)) + 1;
 $compteur_total = $compteur_total + $compteur_day;
 $compteur_day = !empty($compteur_day) ? $compteur_day : '1';
 $Template->assign_vars(array('L_TODAY' => $LANG['today'], 'L_TOTAL' => $LANG['total'], 'L_AVERAGE' => $LANG['average'], 'L_VISITORS' => $LANG['page_s'] . ':', 'L_VISITS_DAY' => $LANG['page_s'], 'L_DAY' => $LANG['date'], 'L_MONTH' => $LANG['month'], 'L_SUBMIT' => $LANG['submit']));
 $array_l_months = array($LANG['january'], $LANG['february'], $LANG['march'], $LANG['april'], $LANG['may'], $LANG['june'], $LANG['july'], $LANG['august'], $LANG['september'], $LANG['october'], $LANG['november'], $LANG['december']);
 if (!empty($pages_year)) {
     $next_year = $pages_year + 1;
     $previous_year = $pages_year - 1;
     $info = $Sql->query_array(DB_TABLE_STATS, 'MAX(pages) as max_nbr', 'SUM(pages) as sum_nbr', 'COUNT(DISTINCT(stats_month)) as nbr_month', "WHERE stats_year = '" . $pages_year . "' AND pages_detail <> '' GROUP BY stats_year", __LINE__, __FILE__);
     $Template->assign_vars(array('C_STATS_VISIT' => true, 'TYPE' => 'pages', 'VISIT_TOTAL' => $compteur_total, 'VISIT_DAY' => $compteur_day, 'YEAR' => $pages_year, 'COLSPAN' => 13, 'SUM_NBR' => $info['sum_nbr'], 'MAX_NBR' => $info['max_nbr'], 'MOY_NBR' => !empty($info['nbr_month']) ? number_round($info['sum_nbr'] / $info['nbr_month'], 1) : 0, 'U_NEXT_LINK' => url('.php?pages_year=' . $next_year), 'U_PREVIOUS_LINK' => url('.php?pages_year=' . $previous_year)));
     $info_year = $Sql->query_array(DB_TABLE_STATS, 'MAX(stats_year) as max_year', 'MIN(stats_year) as min_year', '', __LINE__, __FILE__);
     $years = '';
     for ($i = $info_year['min_year']; $i <= $info_year['max_year']; $i++) {
         $selected = $i == $year ? ' selected="selected"' : '';
         $years .= '<option value="' . $i . '"' . $selected . '>' . $i . '</option>';
     }
Пример #3
0
<?php

if (defined('PHPBOOST') !== true) {
    exit;
}
global $Sql, $Template, $MENUS, $LANG, $THEME, $CONFIG, $Bench;
$Sql->close();
$Template->set_filenames(array('footer' => 'footer.tpl'));
$Template->assign_vars(array('HOST' => HOST, 'DIR' => DIR, 'THEME' => get_utheme(), 'C_MENUS_BOTTOM_CENTRAL_CONTENT' => !empty($MENUS[BLOCK_POSITION__BOTTOM_CENTRAL]), 'MENUS_BOTTOMCENTRAL_CONTENT' => $MENUS[BLOCK_POSITION__BOTTOM_CENTRAL], 'C_MENUS_TOP_FOOTER_CONTENT' => !empty($MENUS[BLOCK_POSITION__TOP_FOOTER]), 'MENUS_TOP_FOOTER_CONTENT' => $MENUS[BLOCK_POSITION__TOP_FOOTER], 'C_MENUS_FOOTER_CONTENT' => !empty($MENUS[BLOCK_POSITION__FOOTER]), 'MENUS_FOOTER_CONTENT' => $MENUS[BLOCK_POSITION__FOOTER], 'C_DISPLAY_AUTHOR_THEME' => $CONFIG['theme_author'] ? true : false, 'L_POWERED_BY' => $LANG['powered_by'], 'L_PHPBOOST_RIGHT' => $LANG['phpboost_right'], 'L_THEME' => $LANG['theme'], 'L_THEME_NAME' => $THEME['name'], 'L_BY' => strtolower($LANG['by']), 'L_THEME_AUTHOR' => $THEME['author'], 'U_THEME_AUTHOR_LINK' => $THEME['author_link'], 'PHPBOOST_VERSION' => $CONFIG['version']));
pages_displayed();
if ($CONFIG['bench']) {
    $Bench->stop();
    $Template->assign_vars(array('C_DISPLAY_BENCH' => true, 'BENCH' => $Bench->to_string(), 'REQ' => $Sql->get_executed_requests_number(), 'L_REQ' => $LANG['sql_req'], 'L_ACHIEVED' => $LANG['achieved'], 'L_UNIT_SECOND' => $LANG['unit_seconds_short']));
}
$Template->pparse('footer');
ob_end_flush();