/**
* Add permission language - this will make sure custom files will be included
*/
function add_permission_language()
{
    global $user, $class_plugins;
    // First of all, our own file. We need to include it as the first file because it presets all relevant variables.
    // MIGHTY GORGON - LANG - BEGIN
    global $class_plugins;
    global $db, $cache, $lang;
    setup_extra_lang(array('lang_cms_permissions', 'lang_permissions'));
    // Add Plugins Lang!
    if (!class_exists('class_plugins')) {
        include IP_ROOT_PATH . 'includes/class_plugins.' . PHP_EXT;
    }
    if (empty($class_plugins)) {
        $class_plugins = new class_plugins();
    }
    foreach ($cache->obtain_plugins_config() as $k => $plugin) {
        if (!empty($plugin['plugin_enabled'])) {
            $class_plugins->setup_lang($plugin['plugin_dir'] . '/', 'permissions');
        }
    }
    // Merge $lang with $user->lang
    merge_user_lang();
    // MIGHTY GORGON - LANG - END
    // CODE REMOVED
    /*
    $files_to_add = array();
    
    // Now search in acp and mods folder for permissions_ files.
    foreach (array('acp/', 'mods/') as $path)
    {
    	$dh = @opendir($user->lang_path . $user->lang_name . '/' . $path);
    
    	if ($dh)
    	{
    		while (($file = readdir($dh)) !== false)
    		{
    			if (($file !== 'permissions_phpbb.' . PHP_EXT) && (strpos($file, 'permissions_') === 0) && (substr($file, -(strlen(PHP_EXT) + 1)) === '.' . PHP_EXT))
    			{
    				$files_to_add[] = $path . substr($file, 0, -(strlen(PHP_EXT) + 1));
    			}
    		}
    		closedir($dh);
    	}
    }
    
    if (!sizeof($files_to_add))
    {
    	return false;
    }
    
    $user->add_lang($files_to_add);
    */
    return true;
}
Esempio n. 2
0
    define('IP_ROOT_PATH', './');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
include IP_ROOT_PATH . 'common.' . PHP_EXT;
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
// End session management
if (!$user->data['session_logged_in']) {
    message_die(GENERAL_MESSAGE, $lang['NOT_LOGGED_IN_VIEW_PAGE']);
}
include_once IP_ROOT_PATH . 'includes/digest_constants.' . PHP_EXT;
setup_extra_lang(array('lang_digests'));
if (empty($config['cron_digests_interval']) || $config['cron_digests_interval'] == -1) {
    message_die(GENERAL_MESSAGE, $lang['Not_Auth_View']);
}
// Get the server time zone. This is not necessarily what appears in $config['board_timezone']
$board_timezone = gmdate('Z') / 3600;
// Get current user's timezone
$user_timezone = (double) $user->data['user_timezone'];
// Offset the timezone information. We will store in the subscriptions table the
// server time to send the digest, since mail_digests.php expects it this way.
$offset = $board_timezone - $user_timezone;
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
    if ($user->data['session_logged_in']) {
        $template_to_parse = 'digests.tpl';
        // get current subscription data for this user, if any
        $sql = 'SELECT count(*) AS count FROM ' . DIGEST_SUBSCRIPTIONS_TABLE . ' WHERE user_id = ' . $user->data['user_id'];
Esempio n. 3
0
if (!empty($setmodules)) {
    $filename = basename(__FILE__);
    $module['1610_Users']['100_Jr_Admin'] = $filename;
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
include_once IP_ROOT_PATH . 'includes/functions_jr_admin_acp.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/functions_jr_admin.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/functions_groups.' . PHP_EXT;
include_once 'pagestart.' . PHP_EXT;
setup_extra_lang(array('lang_jr_admin'));
/**************************************************************************
* Module Actual Start
**************************************************************************/
/* If for some reason you need to disable the version check in THIS HACK ONLY,
change the blow to true instead of false.  No other hacks will be affected
by this change.
*/
define('DISABLE_VERSION_CHECK', false);
/* Debugging for this file */
$debug = false;
/**************************************************************************
* Constants and Main Vars.
**************************************************************************/
$status_message = '';
//Check for color groups mod
Esempio n. 4
0
                    $output .= $lines[$i] . "\n";
                }
                $lines[$i] = '';
            }
        }
        return trim($output);
    }
}
// Functions - END
// Mighty Gorgon - ACP Privacy - BEGIN
$is_allowed = check_acp_module_access();
if (empty($is_allowed)) {
    message_die(GENERAL_MESSAGE, $lang['Not_Auth_View']);
}
// Mighty Gorgon - ACP Privacy - END
setup_extra_lang(array('lang_bb_db_admin'));
$mode = request_var('mode', '');
$action = request_var('action', '');
$mass = request_var('mass', '');
$mass_change = request_var('mass_change', '');
// Auth Check - BEGIN
$allowed = false;
$founder_id = defined('FOUNDER_ID') ? FOUNDER_ID : get_founder_id();
if ($user->data['user_id'] == $founder_id) {
    $allowed = true;
}
if (!$allowed && defined('MAIN_ADMINS_ID')) {
    $allowed_admins = explode(',', MAIN_ADMINS_ID);
    if (in_array($user->data['user_id'], $allowed_admins)) {
        $allowed = true;
    }
*/
define('IN_ICYPHOENIX', true);
if (!empty($setmodules)) {
    $filename = basename(__FILE__);
    $module['2200_Photo_Album']['130_Album_Permissions'] = $filename;
    return;
}
// Load default Header
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
setup_extra_lang(array('lang_album_main', 'lang_album_admin'));
require ALBUM_MOD_PATH . 'album_common.' . PHP_EXT;
$album_user_id = ALBUM_PUBLIC_GALLERY;
if (!isset($_POST['submit'])) {
    album_read_tree();
    $s_album_cat_list = album_get_tree_option(ALBUM_ROOT_CATEGORY, ALBUM_AUTH_VIEW, ALBUM_SELECTBOX_INCLUDE_ALL | ALBUM_SELECTBOX_INCLUDE_ROOT);
    $template->set_filenames(array('body' => ADM_TPL . 'album_cat_select_body.tpl'));
    $template->assign_vars(array('L_ALBUM_AUTH_TITLE' => $lang['Album_Auth_Title'], 'L_ALBUM_AUTH_EXPLAIN' => $lang['Album_Auth_Explain'], 'L_SELECT_CAT' => $lang['Select_a_Category'], 'S_ALBUM_ACTION' => append_sid("admin_album_auth." . PHP_EXT), 'L_LOOK_UP_CAT' => $lang['Look_up_Category'], 'CAT_SELECT_TITLE' => $s_album_cat_list));
    $template->pparse('body');
    include IP_ROOT_PATH . ADM . '/page_footer_admin.' . PHP_EXT;
} else {
    if (!isset($_GET['cat_id'])) {
        $cat_id = intval($_POST['cat_id']);
        $template->set_filenames(array('body' => ADM_TPL . 'album_auth_body.tpl'));
        $template->assign_vars(array('L_ALBUM_AUTH_TITLE' => $lang['Album_Auth_Title'], 'L_ALBUM_AUTH_EXPLAIN' => $lang['Album_Auth_Explain'], 'L_SUBMIT' => $lang['Submit'], 'L_RESET' => $lang['Reset'], 'L_GROUPS' => $lang['Usergroups'], 'L_VIEW' => $lang['View'], 'L_UPLOAD' => $lang['Upload'], 'L_RATE' => $lang['Rate'], 'L_COMMENT' => $lang['Comment'], 'L_EDIT' => $lang['Edit'], 'L_DELETE' => $lang['Delete'], 'L_IS_MODERATOR' => $lang['Is_Moderator'], 'S_ALBUM_ACTION' => append_sid('admin_album_auth.' . PHP_EXT . '?cat_id=' . $cat_id)));
        $groups_data = get_groups_data(false, false, array());
/* MG Lang DB - END */
define('IN_ICYPHOENIX', true);
if (!empty($setmodules)) {
    $file = basename(__FILE__);
    $module['1100_General']['230_Language'] = $file;
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/class_lang_user_created.' . PHP_EXT;
setup_extra_lang(array('lang_admin_extend_lang'));
@set_time_limit(0);
$mem_limit = check_mem_limit();
@ini_set('memory_limit', $mem_limit);
$lang_management = new lang_management();
$value_maxlength = 250;
// Remove the ADMIN / NORMAL options => force $_POST options
$_POST['search_admin'] = 2;
$_POST['new_level'] = 'normal';
// get languages installed
$countries = $lang_management->get_countries();
// get packs installed
$packs = $lang_management->get_packs();
// get entries (all lang keys)
$entries = $lang_management->get_entries();
// get parameters
Esempio n. 7
0
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if (!defined('IN_ICYPHOENIX')) {
    die('Hacking attempt');
}
// Usage
/*
// BBCBMG - BEGIN
define('IN_ICYPHOENIX', true);
//$bbcbmg_in_acp = true;
include(IP_ROOT_PATH . 'includes/bbcb_mg.' . PHP_EXT);
$template->assign_var_from_handle('BBCB_MG', 'bbcb_mg');
// BBCBMG - END
*/
setup_extra_lang(array('lang_bbcb_mg'));
// This page is not in layout special...
$cms_page_id_tmp = 'pic_upload';
$cms_auth_level_tmp = isset($config['auth_view_pic_upload']) ? $config['auth_view_pic_upload'] : AUTH_ALL;
$view_pic_upload = check_page_auth($cms_page_id_tmp, $cms_auth_level_tmp, true);
if (defined('BBCB_MG_SMALL')) {
    $template->set_filenames(array('bbcb_mg' => 'bbcb_mg_small.tpl'));
} elseif (defined('BBCB_MG_CUSTOM')) {
    $template->set_filenames(array('bbcb_mg' => 'bbcb_mg_custom.tpl'));
} else {
    $template->set_filenames(array('bbcb_mg' => 'bbcb_mg.tpl'));
}
if (!empty($config['enable_postimage_org'])) {
    $template->assign_var('S_POSTIMAGE_ORG', true);
}
if (!empty($config['enable_colorpicker'])) {
Esempio n. 8
0
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
// SETTINGS - BEGIN
$is_plugin = false;
$settings_basename = 'captcha';
$acp_file = IP_ROOT_PATH . ADM . '/' . basename(__FILE__);
// SETTINGS - END
$class_settings->setup_modules('', $settings_basename . '_');
$lang_files = $class_settings->obtain_lang_files($settings_basename . '_');
if (!empty($lang_files)) {
    setup_extra_lang($lang_files);
}
// OTHERS SETTINGS - BEGIN
$acp_module_title = $lang['ACP_CAPTCHA'];
$acp_module_title_explain = $lang['ACP_CAPTCHA_EXPLAIN'];
$acp_modules = $class_settings->modules;
$acp_default_config = get_config(false);
// OTHERS SETTINGS - END
/*
include(IP_ROOT_PATH . 'includes/captcha/captcha_factory.' . PHP_EXT);
$captcha =& phpbb_captcha_factory::get_instance($config['captcha_plugin']);
*/
include IP_ROOT_PATH . ADM . '/acp_config_include.' . PHP_EXT;
// footer
$template->pparse('body');
include IP_ROOT_PATH . ADM . '/page_footer_admin.' . PHP_EXT;
Esempio n. 9
0
*
*/
define('IN_ICYPHOENIX', true);
if (!empty($setmodules)) {
    $file = basename(__FILE__);
    $module['2000_Downloads']['130_Fchecker'] = $file;
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
setup_extra_lang(array('lang_admin_pafiledb'));
include IP_ROOT_PATH . 'includes/pafiledb_common.' . PHP_EXT;
$this_dir = IP_ROOT_PATH . DOWNLOADS_PATH;
$html_path = create_server_url() . DOWNLOADS_PATH;
$safety = request_var('safety', 0);
$template->set_filenames(array('admin' => ADM_TPL . 'pa_admin_file_checker.tpl'));
$template->assign_vars(array('L_FILE_CHECKER' => $lang['File_checker'], 'L_FCHECKER_EXPLAIN' => $lang['File_checker_explain']));
if ($safety == 1) {
    $saved = 0;
    $template->assign_block_vars("check", array());
    $template->assign_vars(array('L_FILE_CHECKER_SP1' => $lang['Checker_sp1']));
    $sql = "SELECT * FROM " . PA_FILES_TABLE;
    $overall_result = $db->sql_query($sql);
    while ($temp = $db->sql_fetchrow($overall_result)) {
        $temp_dlurl = $temp['file_dlurl'];
        if (substr($temp_dlurl, 0, strlen($html_path)) !== $html_path) {
Esempio n. 10
0
function submit_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_id, &$post_id, &$topic_type, &$bbcode_on, &$html_on, &$acro_auto_on, &$smilies_on, &$attach_sig, $post_username, $post_subject, $topic_title_clean, $topic_tags, $post_message, $poll_title, &$poll_options, &$poll_data, &$reg_active, &$reg_reset, &$reg_max_option1, &$reg_max_option2, &$reg_max_option3, &$reg_length, &$news_category, &$topic_show_portal, &$mark_edit, &$topic_desc, $topic_calendar_time = 0, $topic_calendar_duration = 0)
{
    global $db, $cache, $config, $user, $lang;
    // CrackerTracker v5.x
    if (($mode == 'newtopic' || $mode == 'reply') && ($config['ctracker_spammer_blockmode'] > 0 || $config['ctracker_spam_attack_boost'] == 1) && $user->data['user_level'] != ANONYMOUS) {
        include_once IP_ROOT_PATH . 'includes/ctracker/classes/class_ct_userfunctions.' . PHP_EXT;
        $login_functions = new ct_userfunctions();
        $login_functions->handle_postings();
        unset($login_functions);
    }
    // CrackerTracker v5.x
    // BEGIN cmx_slash_news_mod
    if (isset($news_category) && is_numeric($news_category)) {
        $news_id = intval($news_category);
        //$topic_type = POST_NEWS;
    } else {
        $news_id = 0;
    }
    // END cmx_slash_news_mod
    include IP_ROOT_PATH . 'includes/functions_search.' . PHP_EXT;
    $current_time = time();
    if ($user->data['user_level'] != ADMIN && (!empty($config['force_large_caps_mods']) || $user->data['user_level'] != MOD)) {
        //$post_subject = strtolower($post_subject);
        $post_subject = ucwords($post_subject);
    }
    // Flood control
    if ($user->data['user_level'] != ADMIN && $user->data['user_level'] != MOD) {
        if (!function_exists('check_flood_posting')) {
            include_once IP_ROOT_PATH . 'includes/functions_flood.' . PHP_EXT;
        }
        check_flood_posting(false);
    }
    if ($mode == 'editpost') {
        remove_search_post($post_id);
    }
    if ($mode == 'newtopic' || $mode == 'editpost' && $post_data['first_post']) {
        $topic_vote = !empty($poll_title) && sizeof($poll_options) >= 2 ? 1 : 0;
        $topic_show_portal = $topic_show_portal == true ? 1 : 0;
        $topic_calendar_duration = $topic_calendar_duration == '' ? 0 : $topic_calendar_duration;
        // Event Registration - BEGIN
        $topic_reg = 0;
        if ($reg_active == 1) {
            $topic_reg = 1;
        }
        // Event Registration - END
        $sql = $mode != 'editpost' ? "INSERT INTO " . TOPICS_TABLE . " (topic_title, topic_desc, topic_tags, topic_poster, topic_time, forum_id, news_id, topic_status, topic_type, topic_calendar_time, topic_calendar_duration, topic_reg, topic_show_portal) VALUES ('" . $db->sql_escape($post_subject) . "', '" . $db->sql_escape($topic_desc) . "', " . $db->sql_validate_value($topic_tags) . ", " . $user->data['user_id'] . ", {$current_time}, {$forum_id}, {$news_id}, " . TOPIC_UNLOCKED . ", {$topic_type}, {$topic_calendar_time}, {$topic_calendar_duration}, {$topic_reg}, {$topic_show_portal})" : "UPDATE " . TOPICS_TABLE . " SET topic_title = '" . $db->sql_escape($post_subject) . "', news_id = {$news_id}, topic_desc = '" . $db->sql_escape($topic_desc) . "', topic_tags = " . $db->sql_validate_value($topic_tags) . ", topic_type = {$topic_type}, topic_calendar_time = {$topic_calendar_time}, topic_calendar_duration = {$topic_calendar_duration}, topic_reg = {$topic_reg}" . ", topic_show_portal = {$topic_show_portal}\n\t\tWHERE topic_id = {$topic_id}";
        $db->sql_query($sql);
        if ($mode == 'newtopic') {
            $topic_id = $db->sql_nextid();
        } else {
            // Event Registration - BEGIN
            if ($reg_reset) {
                $sql = "DELETE FROM " . REGISTRATION_TABLE . " WHERE topic_id = " . $topic_id;
                $db->sql_query($sql);
            }
            // Event Registration - END
        }
        if (!function_exists('create_clean_topic_title')) {
            @(include_once IP_ROOT_PATH . 'includes/functions_topics.' . PHP_EXT);
        }
        create_clean_topic_title($topic_id, $forum_id, $topic_title_clean, '');
        @(include_once IP_ROOT_PATH . 'includes/class_topics_tags.' . PHP_EXT);
        $class_topics_tags = new class_topics_tags();
        $topic_tags_array = $class_topics_tags->create_tags_array($topic_tags);
        $update_tags = $mode == 'editpost' ? true : false;
        $class_topics_tags->submit_tags($topic_id, $forum_id, $topic_tags_array, $update_tags);
        unset($class_topics_tags);
        // Empty the similar id cache for guests every time we create a new topic or edit the first post in a topic
        if ($config['similar_topics']) {
            $clear_result = clear_similar_topics();
        }
    }
    // Poll management - BEGIN
    if (($mode == 'newtopic' || $mode == 'editpost' && $post_data['edit_poll']) && !empty($poll_title) && sizeof($poll_options) >= 2) {
        $poll_title = !empty($poll_title) ? trim($poll_title) : (isset($poll_data['title']) ? trim($poll_data['title']) : '');
        $poll_start = !empty($poll_data['start']) ? $poll_data['start'] : $current_time;
        $poll_length = isset($poll_data['length']) ? max(0, intval($poll_data['length'])) : 0;
        $poll_max_options = isset($poll_data['max_options']) ? max(1, intval($poll_data['max_options'])) : 1;
        $poll_last_vote = !empty($post_data['poll_last_vote']) ? $post_data['poll_last_vote'] : 0;
        $poll_change = !empty($poll_data['change']) ? 1 : 0;
        $sql_ary = array('poll_title' => $poll_title, 'poll_start' => $poll_start, 'poll_length' => $poll_length, 'poll_max_options' => $poll_max_options, 'poll_last_vote' => $poll_last_vote, 'poll_vote_change' => $poll_change);
        $sql_poll_update = $db->sql_build_insert_update($sql_ary, false);
        $sql = "UPDATE " . TOPICS_TABLE . " SET " . $sql_poll_update . " WHERE topic_id = " . $topic_id;
        $db->sql_query($sql);
        $delete_option_sql = '';
        $old_poll_result = array();
        if ($mode == 'editpost' && $post_data['has_poll']) {
            $sql = "SELECT *\n\t\t\t\tFROM " . POLL_OPTIONS_TABLE . "\n\t\t\t\tWHERE topic_id = {$topic_id}\n\t\t\t\tORDER BY poll_option_id ASC";
            $result = $db->sql_query($sql);
            while ($row = $db->sql_fetchrow($result)) {
                $old_poll_result[$row['poll_option_id']] = $row['poll_option_total'];
                if (!isset($poll_options[$row['poll_option_id']])) {
                    $delete_option_sql .= ($delete_option_sql != '' ? ', ' : '') . $row['poll_option_id'];
                }
            }
        }
        $poll_option_id = 1;
        @reset($poll_options);
        while (list($option_id, $option_text) = each($poll_options)) {
            if (!empty($option_text)) {
                $option_insert = $mode != 'editpost' || !isset($old_poll_result[$option_id]) ? true : false;
                $poll_result = $option_insert ? 0 : $old_poll_result[$option_id];
                $poll_option_id = $option_insert ? $poll_option_id : $option_id;
                $sql_tmp_option_ary = array('poll_option_id' => $poll_option_id, 'topic_id' => $topic_id, 'poll_option_text' => $option_text, 'poll_option_total' => $poll_result);
                $sql_tmp_option = $db->sql_build_insert_update($sql_tmp_option_ary, $option_insert);
                if ($option_insert) {
                    $sql = "INSERT INTO " . POLL_OPTIONS_TABLE . " " . $sql_tmp_option;
                } else {
                    $sql = "UPDATE " . POLL_OPTIONS_TABLE . " SET " . $sql_tmp_option . " WHERE poll_option_id = {$option_id} AND topic_id = {$topic_id}";
                }
                $db->sql_query($sql);
                $poll_option_id++;
            }
        }
        if ($delete_option_sql != '') {
            $sql = "DELETE FROM " . POLL_OPTIONS_TABLE . "\n\t\t\t\tWHERE poll_option_id IN ({$delete_option_sql})\n\t\t\t\t\tAND topic_id = {$topic_id}";
            $db->sql_query($sql);
        }
    }
    // Poll management - END
    // Event Registration - BEGIN
    if (($mode == 'newtopic' || $mode == 'editpost') && $topic_reg == 1) {
        if ($mode == 'editpost') {
            $sql = "SELECT count(1) chk_reg FROM " . REGISTRATION_DESC_TABLE . " WHERE topic_id = {$topic_id}";
            $result = $db->sql_query($sql);
            $chk_reg = $db->sql_fetchfield('chk_reg', 0, $result) != 0 ? true : false;
        }
        $sql = $mode != 'editpost' || $mode == 'editpost' && $chk_reg == false ? "INSERT INTO " . REGISTRATION_DESC_TABLE . " (topic_id, reg_active, reg_max_option1, reg_max_option2, reg_max_option3, reg_start, reg_length) VALUES ({$topic_id}, {$reg_active}, {$reg_max_option1}, {$reg_max_option2}, {$reg_max_option3}, {$current_time}, " . $reg_length * 86400 . ")" : "UPDATE " . REGISTRATION_DESC_TABLE . " SET reg_active = {$reg_active}, reg_max_option1 = {$reg_max_option1}, reg_max_option2 = {$reg_max_option2}, reg_max_option3 = {$reg_max_option3}, reg_length = " . $reg_length * 86400 . " WHERE topic_id = {$topic_id}";
        $db->sql_query($sql);
    }
    // Event Registration - END
    // To show also admins modifications decomment this line!!!
    //if( ($user->data['user_level'] == ADMIN) && !$config['always_show_edit_by'] )
    if ($user->data['user_level'] == ADMIN) {
        $edited_sql = '';
    } else {
        // Original phpBB "Edit By"
        //$edited_sql = ($mode == 'editpost' && !$post_data['last_post'] && $post_data['poster_post']) ? ", post_edit_time = $current_time, post_edit_count = post_edit_count + 1 " : "";
        $edited_sql = ", post_edit_time = '" . $current_time . "', post_edit_count = (post_edit_count + 1), post_edit_id = '" . $user->data['user_id'] . "' ";
        if ($config['always_show_edit_by'] == true) {
            $edited_sql = $mode == 'editpost' ? $edited_sql : '';
        } else {
            $edited_sql = $mode == 'editpost' && !$post_data['last_post'] ? $edited_sql : '';
        }
    }
    $lock_post = request_boolean_var('post_locked', false);
    $sql = $mode != 'editpost' ? "INSERT INTO " . POSTS_TABLE . " (topic_id, forum_id, poster_id, post_username, post_subject, post_text, post_time, poster_ip, enable_bbcode, enable_html, enable_smilies, enable_autolinks_acronyms, enable_sig, post_locked, post_images) VALUES (" . $topic_id . ", " . $forum_id . ", " . $user->data['user_id'] . ", '" . $db->sql_escape($post_username) . "', '" . $db->sql_escape($post_subject) . "', '" . $db->sql_escape($post_message) . "', " . $current_time . ", '" . $db->sql_escape($user->ip) . "', " . $bbcode_on . ", " . $html_on . ", " . $smilies_on . ", " . $acro_auto_on . ", " . $attach_sig . ", " . (!empty($lock_post) ? '1' : '0') . ", '" . $db->sql_escape($post_data['post_images']) . "')" : "UPDATE " . POSTS_TABLE . " SET post_username = '******', post_text = '" . $db->sql_escape($post_message) . "', post_text_compiled = '', post_subject = '" . $db->sql_escape($post_subject) . "', enable_bbcode = " . $bbcode_on . ", enable_html = " . $html_on . ", enable_smilies = " . $smilies_on . ", enable_autolinks_acronyms = " . $acro_auto_on . ", enable_sig = " . $attach_sig . ", post_locked = " . (!empty($lock_post) ? '1' : '0') . ", post_images = '" . $db->sql_escape($post_data['post_images']) . "' " . $edited_sql . " WHERE post_id = " . $post_id;
    //die($sql);
    $db->sql_transaction('begin');
    $db->sql_query($sql);
    if ($mode != 'editpost') {
        $post_id = $db->sql_nextid();
    }
    // UPI2DB - BEGIN
    if ($config['upi2db_on']) {
        $mark_edit = $user->data['user_level'] == ADMIN || $user->data['user_level'] == MOD ? $mark_edit : true;
        if ($mode != 'editpost' || $mode == 'editpost' && $post_data['last_post'] && $config['upi2db_last_edit_as_new'] && $mark_edit || $mode == 'editpost' && !$post_data['last_post'] && $config['upi2db_edit_as_new'] && $mark_edit || $mode == 'reply') {
            $sql = "SELECT post_id FROM " . UPI2DB_LAST_POSTS_TABLE . "\n\t\t\t\tWHERE post_id = " . $post_id;
            $result = $db->sql_query($sql);
            $id_vorhanden = $db->sql_numrows($result);
            $db->sql_freeresult($result);
            if ($id_vorhanden == 0) {
                $pt_or_pet = $mode != 'editpost' ? "post_time" : "post_edit_time";
                $sql = "INSERT INTO " . UPI2DB_LAST_POSTS_TABLE . " (post_id, topic_id, forum_id, poster_id, " . $pt_or_pet . ", topic_type, post_edit_by) VALUES ('{$post_id}', '{$topic_id}', '{$forum_id}', '" . $user->data['user_id'] . "', '{$current_time}', '{$topic_type}', '" . $user->data['user_id'] . "')";
            } else {
                $sql = "UPDATE " . UPI2DB_LAST_POSTS_TABLE . " SET post_edit_time = '" . $current_time . "', topic_type = '" . $topic_type . "', post_edit_by = '" . $user->data['user_id'] . "' WHERE post_id = " . $post_id;
            }
            $db->sql_query($sql);
        }
        // Edited By Mighty Gorgon - BEGIN
        if ($user->data['user_level'] != ADMIN && $user->data['user_level'] != MOD) {
            if ($topic_type == POST_STICKY || $topic_type == POST_ANNOUNCE || $topic_type == POST_GLOBAL_ANNOUNCE) {
                $sql = "DELETE FROM " . UPI2DB_ALWAYS_READ_TABLE . "\n\t\t\t\t\tWHERE forum_id =  " . $forum_id;
                $db->sql_query($sql);
            }
        }
        // Edited By Mighty Gorgon - END
    }
    // UPI2DB - END
    add_search_words('single', $post_id, $post_message, $post_subject);
    // DOWNLOADS - BEGIN
    if (!empty($config['plugins']['downloads']['enabled'])) {
        setup_extra_lang(array('lang_downloads'), IP_ROOT_PATH . PLUGINS_PATH . $config['plugins']['downloads']['dir'] . 'language/');
        include IP_ROOT_PATH . PLUGINS_PATH . $config['plugins']['downloads']['dir'] . 'classes/class_dlmod.' . PHP_EXT;
        $dl_mod = new dlmod();
        $dl_config = $dl_mod->get_config();
        if ($dl_config['enable_post_dl_traffic']) {
            if (!$dl_config['delay_post_traffic'] || (time() - $user->data['user_regdate']) / 84600 > $dl_config['delay_post_traffic']) {
                $dl_traffic = 0;
                if ($mode == 'newtopic') {
                    $dl_traffic = $dl_config['newtopic_traffic'];
                } elseif ($mode == 'reply' || $mode == 'quote') {
                    $dl_traffic = $dl_config['reply_traffic'];
                }
                if ($dl_traffic > 0) {
                    $sql = "UPDATE " . USERS_TABLE . "\n\t\t\t\t\t\tSET user_traffic = user_traffic + {$dl_traffic}\n\t\t\t\t\t\tWHERE user_id = " . $user->data['user_id'];
                    $db->sql_query($sql);
                }
            }
        }
    }
    // DOWNLOADS - END
    // ReSync last topic title if needed
    if ($mode == 'editpost' && $post_data['first_post']) {
        $sql = "UPDATE " . FORUMS_TABLE . " f\n\t\t\tSET f.forum_last_post_subject = '" . $db->sql_escape($post_subject) . "'\n\t\t\tWHERE f.forum_last_topic_id = " . $topic_id;
        $result = $db->sql_query($sql);
    }
    $db->sql_transaction('commit');
    empty_cache_folders(POSTS_CACHE_FOLDER);
    empty_cache_folders(FORUMS_CACHE_FOLDER);
    board_stats();
    cache_tree(true);
    $cash_string = '';
    // MG Cash MOD For IP - BEGIN
    if (!empty($config['plugins']['cash']['enabled'])) {
        $cash_message = $GLOBALS['cm_posting']->update_post($mode, $post_data, $forum_id, $topic_id, $post_id, $topic_type, $post_username, $post_message);
        $cash_string = '<br />' . $cash_message;
    }
    // MG Cash MOD For IP - END
    $meta = '<meta http-equiv="refresh" content="3;url=' . append_sid(CMS_PAGE_VIEWTOPIC . '?' . POST_POST_URL . '=' . $post_id) . '#p' . $post_id . '">';
    $message = $lang['Stored'] . $cash_string . '<br /><br />' . sprintf($lang['Click_view_message'], '<a href="' . append_sid(CMS_PAGE_VIEWTOPIC . '?' . POST_POST_URL . '=' . $post_id) . '#p' . $post_id . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid(CMS_PAGE_VIEWFORUM . '?' . POST_FORUM_URL . '=' . $forum_id) . '">', '</a>');
    return false;
}
Esempio n. 11
0
/**
* Page Header
*/
function page_header($title = '', $parse_template = false)
{
    global $db, $cache, $config, $user, $template, $images, $theme, $lang, $tree;
    global $table_prefix, $SID, $_SID;
    global $ip_cms, $cms_config_vars, $cms_config_global_blocks, $cms_config_layouts, $cms_page;
    global $starttime, $base_memory_usage, $do_gzip_compress, $start;
    global $gen_simple_header, $meta_content, $nav_separator, $nav_links, $nav_pgm, $nav_add_page_title, $skip_nav_cat;
    global $breadcrumbs;
    global $forum_id, $topic_id;
    if (defined('HEADER_INC')) {
        return;
    }
    define('HEADER_INC', true);
    // gzip_compression
    $config['gzip_compress_runtime'] = isset($config['gzip_compress_runtime']) ? $config['gzip_compress_runtime'] : $config['gzip_compress'];
    $config['url_rw_runtime'] = $config['url_rw'] || $config['url_rw_guests'] && $user->data['user_id'] == ANONYMOUS ? true : false;
    if ($config['gzip_compress_runtime']) {
        if (@extension_loaded('zlib') && !headers_sent()) {
            ob_start('ob_gzhandler');
        }
    } else {
        // We need to enable this otherwise URL Rewrite will not work without output buffering
        if ($config['url_rw_runtime'] && !headers_sent()) {
            ob_start();
        }
    }
    // CMS
    if (!defined('CMS_INIT')) {
        define('CMS_INIT', true);
        $cms_config_vars = $cache->obtain_cms_config();
        $cms_config_global_blocks = $cache->obtain_cms_global_blocks_config(false);
    }
    //$server_url = create_server_url();
    $page_url = pathinfo($_SERVER['SCRIPT_NAME']);
    $page_query = $_SERVER['QUERY_STRING'];
    $meta_content['page_title'] = !empty($title) ? $title : $meta_content['page_title'];
    $meta_content['page_title'] = empty($meta_content['page_title']) ? $config['sitename'] : strip_tags($meta_content['page_title']);
    $meta_content['page_title_clean'] = empty($meta_content['page_title_clean']) ? strip_tags($meta_content['page_title']) : $meta_content['page_title_clean'];
    // DYNAMIC META TAGS - BEGIN
    // Reset some defaults... to be sure some values are taken from DB properly
    $lang['Default_META_Keywords'] = !empty($config['site_meta_keywords_switch']) && !empty($config['site_meta_keywords']) ? $config['site_meta_keywords'] : (!empty($lang['Default_META_Keywords']) ? $lang['Default_META_Keywords'] : strtolower(htmlspecialchars(strip_tags($config['sitename']))));
    $lang['Default_META_Description'] = !empty($config['site_meta_description_switch']) && !empty($config['site_meta_description']) ? $config['site_meta_description'] : (!empty($lang['Default_META_Description']) ? $lang['Default_META_Description'] : htmlspecialchars(strip_tags($config['site_desc'])));
    $lang['Default_META_Author'] = !empty($config['site_meta_author_switch']) && !empty($config['site_meta_author']) ? $config['site_meta_author'] : (!empty($lang['Default_META_Author']) ? $lang['Default_META_Author'] : htmlspecialchars(strip_tags($config['sitename'])));
    $lang['Default_META_Copyright'] = !empty($config['site_meta_copyright_switch']) && !empty($config['site_meta_copyright']) ? $config['site_meta_copyright'] : (!empty($lang['Default_META_Copyright']) ? $lang['Default_META_Copyright'] : htmlspecialchars(strip_tags($config['sitename'])));
    $meta_content_pages_array = array(CMS_PAGE_VIEWFORUM, CMS_PAGE_VIEWFORUMLIST, CMS_PAGE_VIEWTOPIC);
    if (!in_array($page_url['basename'], $meta_content_pages_array)) {
        $meta_content['cat_id'] = request_var(POST_CAT_URL, 0);
        $meta_content['forum_id'] = request_var(POST_FORUM_URL, 0);
        $meta_content['topic_id'] = request_var(POST_TOPIC_URL, 0);
        $meta_content['post_id'] = request_var(POST_POST_URL, 0);
        $no_meta_pages_array = array(CMS_PAGE_LOGIN, CMS_PAGE_PRIVMSG, CMS_PAGE_POSTING, 'kb.' . PHP_EXT);
        if (!in_array($page_url['basename'], $no_meta_pages_array) && (!empty($meta_content['post_id']) || !empty($meta_content['topic_id']) || !empty($meta_content['forum_id']) || !empty($meta_content['cat_id']))) {
            @(include_once IP_ROOT_PATH . 'includes/functions_meta.' . PHP_EXT);
            create_meta_content();
        } else {
            $meta_content['page_title'] = defined('IN_LOGIN') ? $lang['Login'] : $meta_content['page_title'];
            $meta_content['description'] = defined('IN_LOGIN') ? $lang['Default_META_Description'] : $meta_content['description'];
            $meta_content['keywords'] = defined('IN_LOGIN') ? $lang['Default_META_Keywords'] : $meta_content['keywords'];
        }
    }
    $meta_content['description'] = !empty($meta_content['description']) ? $meta_content['description'] . (META_TAGS_ATTACH ? ' - ' . $lang['Default_META_Description'] : '') : $lang['Default_META_Description'];
    $meta_content['keywords'] = !empty($meta_content['keywords']) ? $meta_content['keywords'] . (META_TAGS_ATTACH ? ' - ' . $lang['Default_META_Keywords'] : '') : $lang['Default_META_Keywords'];
    $meta_content['description'] = strip_tags($meta_content['description']);
    $meta_content['keywords'] = strip_tags($meta_content['keywords']);
    $meta_content['keywords'] = substr($meta_content['keywords'], -2) == ', ' ? substr($meta_content['keywords'], 0, -2) : $meta_content['keywords'];
    $phpbb_meta = '';
    $phpbb_meta .= '<meta name="author" content="' . $lang['Default_META_Author'] . '" />' . "\n";
    $phpbb_meta .= '<meta name="description" content="' . str_replace('"', '', $meta_content['description']) . '" />' . "\n";
    $phpbb_meta .= '<meta name="keywords" content="' . str_replace('"', '', $meta_content['keywords']) . '" />' . "\n";
    // These META are not valid and needed anymore by SEO and HTML 5
    /*
    $phpbb_meta .= '<meta name="title" content="' . $meta_content['page_title'] . '" />' . "\n";
    $phpbb_meta .= '<meta name="copyright" content="' . $lang['Default_META_Copyright'] . '" />' . "\n";
    $phpbb_meta .= '<meta name="category" content="general" />' . "\n";
    $phpbb_meta .= '<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9" />' . "\n";
    */
    if (defined('IN_ADMIN') || defined('IN_CMS') || defined('IN_SEARCH') || defined('IN_POSTING')) {
        $phpbb_meta_content = 'noindex,nofollow';
    } else {
        if (defined('ROBOTS_NOINDEX')) {
            $phpbb_meta_content = 'noindex';
        } else {
            $phpbb_meta_content = 'index,follow';
        }
    }
    $phpbb_meta .= '<meta name="robots" content="' . $phpbb_meta_content . '" />' . "\n";
    $phpbb_meta .= !empty($lang['Extra_Meta']) ? $lang['Extra_Meta'] . "\n\n" : "\n";
    $canonical_pages_array = array(CMS_PAGE_FORUM, CMS_PAGE_VIEWFORUM, CMS_PAGE_VIEWTOPIC);
    if (in_array($page_url['basename'], $canonical_pages_array)) {
        $canonical_append = '';
        if ($page_url['basename'] == CMS_PAGE_FORUM) {
            $canonical_append .= !empty($meta_content['cat_id']) ? (empty($canonical_append) ? '' : '&amp;') . POST_CAT_URL . '=' . $meta_content['cat_id'] : '';
        }
        $canonical_append .= !empty($meta_content['forum_id']) ? (empty($canonical_append) ? '' : '&amp;') . POST_FORUM_URL . '=' . $meta_content['forum_id'] : '';
        $canonical_append .= !empty($meta_content['topic_id']) ? (empty($canonical_append) ? '' : '&amp;') . POST_TOPIC_URL . '=' . $meta_content['topic_id'] : '';
        $canonical_append .= !empty($meta_content['post_id']) ? (empty($canonical_append) ? '' : '&amp;') . POST_POST_URL . '=' . $meta_content['post_id'] : '';
        $canonical_append .= !empty($start) ? (empty($canonical_append) ? '' : '&amp;') . 'start=' . $start : '';
        $canonical_url = $page_url['basename'] . (empty($canonical_append) ? '' : '?') . $canonical_append;
        $phpbb_meta .= !empty($canonical_url) ? '<link rel="canonical" href="' . $canonical_url . '" />' . "\n" : '';
    }
    // DYNAMIC META TAGS - END
    // Mighty Gorgon - Smart Header - Begin
    $encoding_charset = !empty($lang['ENCODING']) ? $lang['ENCODING'] : 'UTF-8';
    $lang_dir = !empty($lang['DIRECTION']) ? $lang['DIRECTION'] : 'ltr';
    $header_lang = !empty($lang['HEADER_LANG']) ? $lang['HEADER_LANG'] : 'en-gb';
    $xml_header_lang = !empty($lang['HEADER_LANG_XML']) ? $lang['HEADER_LANG_XML'] : 'en-gb';
    $doctype_html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' . "\n";
    //$doctype_html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' . "\n";
    $doctype_html .= '<html xmlns="http://www.w3.org/1999/xhtml" dir="' . $lang_dir . '" lang="' . $header_lang . '" xml:lang="' . $xml_header_lang . '">' . "\n";
    if ($page_url['basename'] == CMS_PAGE_VIEWONLINE) {
        $phpbb_meta .= '<meta http-equiv="refresh" content="180;url=viewonline.' . PHP_EXT . '" />' . "\n";
    }
    // Mighty Gorgon - Smart Header - End
    // Mighty Gorgon - AJAX Features - Begin
    $ajax_user_check = '';
    $ajax_user_check_alt = '';
    if (!empty($config['ajax_features'])) {
        $ajax_user_check = 'onkeyup="AJAXUsernameSearch(this.value, 0);"';
        $ajax_user_check_alt = 'onkeyup="AJAXUsernameSearch(this.value, 1);"';
    }
    // Mighty Gorgon - AJAX Features - End
    // Generate HTML required for Mozilla Navigation bar
    $nav_base_url = create_server_url();
    // Mozilla navigation bar - Default items that should be valid on all pages.
    // Defined here to correctly assign the Language Variables and be able to change the variables within code.
    $nav_links['top'] = array('url' => append_sid(CMS_PAGE_HOME), 'title' => $config['sitename']);
    $nav_links['forum'] = array('url' => append_sid(CMS_PAGE_FORUM), 'title' => sprintf($lang['Forum_Index'], $config['sitename']));
    $nav_links['search'] = array('url' => append_sid(CMS_PAGE_SEARCH), 'title' => $lang['Search']);
    $nav_links['help'] = array('url' => append_sid(CMS_PAGE_FAQ), 'title' => $lang['FAQ']);
    $nav_links['author'] = array('url' => append_sid(CMS_PAGE_MEMBERLIST), 'title' => $lang['Memberlist']);
    $nav_links_html = '';
    while (list($nav_item, $nav_array) = @each($nav_links)) {
        if (!empty($nav_array['url'])) {
            $nav_links_html .= '<link rel="' . $nav_item . '" type="text/html" title="' . strip_tags($nav_array['title']) . '" href="' . $nav_base_url . $nav_array['url'] . '" />' . "\n";
        } else {
            // We have a nested array, used for items like <link rel='chapter'> that can occur more than once.
            while (list(, $nested_array) = each($nav_array)) {
                $nav_links_html .= '<link rel="' . $nav_item . '" type="text/html" title="' . strip_tags($nested_array['title']) . '" href="' . $nav_base_url . $nested_array['url'] . '" />' . "\n";
            }
        }
    }
    // RSS Autodiscovery - BEGIN
    $rss_url = $nav_base_url . 'rss.' . PHP_EXT;
    $rss_forum_id = request_var(POST_FORUM_URL, 0);
    $rss_url_append = '';
    $rss_a_url_append = '';
    if ($rss_forum_id != 0) {
        $rss_url_append = '?' . POST_FORUM_URL . '=' . $rss_forum_id;
        $rss_a_url_append = '&amp;' . POST_FORUM_URL . '=' . $rss_forum_id;
    }
    $nav_links_html .= '<link rel="alternate" type="application/rss+xml" title="RSS" href="' . $rss_url . $rss_url_append . '" />' . "\n";
    $nav_links_html .= '<link rel="alternate" type="application/atom+xml" title="Atom" href="' . $rss_url . '?atom' . $rss_a_url_append . '" />' . "\n";
    // RSS Autodiscovery - END
    // Time Management - BEGIN
    // Format Timezone. We are unable to use array_pop here, because of PHP3 compatibility
    $s_timezone = str_replace('.0', '', sprintf('%.1f', number_format($config['board_timezone'], 1)));
    $l_timezone = $lang['tz'][$s_timezone];
    if (!$user->data['session_logged_in']) {
        $user->data['user_time_mode'] = $config['default_time_mode'];
    }
    switch ($user->data['user_time_mode']) {
        case MANUAL_DST:
            $time_message = sprintf($lang['All_times'], $l_timezone) . $lang['dst_enabled_mode'];
            break;
        case SERVER_SWITCH:
            $time_message = sprintf($lang['All_times'], $l_timezone);
            if (@date('I')) {
                $time_message = $time_message . $lang['dst_enabled_mode'];
            }
            break;
        default:
            $time_message = sprintf($lang['All_times'], $l_timezone);
            break;
    }
    $time_message = str_replace('GMT', 'UTC', $time_message);
    // Time Management - END
    // Mighty Gorgon - Advanced Switches - BEGIN
    $new_pm_switch = false;
    $new_private_chat_switch = false;
    // LOGGED IN CHECK - BEGIN
    if (!$user->data['session_logged_in']) {
        // Allow autologin?
        if (!isset($config['allow_autologin']) || $config['allow_autologin']) {
            $template->assign_block_vars('switch_allow_autologin', array());
        }
        $smart_redirect = strrchr($_SERVER['SCRIPT_NAME'], '/');
        $smart_redirect = substr($smart_redirect, 1, strlen($smart_redirect));
        if ($smart_redirect == CMS_PAGE_PROFILE || $smart_redirect == CMS_PAGE_LOGIN) {
            $smart_redirect = '';
        }
        if (isset($_GET) && !empty($smart_redirect)) {
            $smart_get_keys = array_keys($_GET);
            for ($i = 0; $i < sizeof($_GET); $i++) {
                //Better sanitize each key...
                $smart_get_keys[$i] = htmlspecialchars($smart_get_keys[$i]);
                if ($smart_get_keys[$i] != 'sid') {
                    $smart_redirect .= '&amp;' . $smart_get_keys[$i] . '=' . urlencode(ip_utf8_decode($_GET[$smart_get_keys[$i]]));
                }
            }
        }
        $u_login_logout = CMS_PAGE_LOGIN;
        $u_login_logout .= !empty($smart_redirect) ? '?redirect=' . $smart_redirect : '';
        $l_login_logout = $lang['Login'];
        $l_login_logout2 = $lang['Login'];
        $s_last_visit = '';
        $icon_pm = $images['pm_no_new_msg'];
        $l_privmsgs_text = $lang['Login_check_pm'];
        $l_privmsgs_text_unread = '';
        $s_privmsg_new = 0;
        $icon_private_chat = $images['private_chat'];
        $u_private_chat = '#';
    } else {
        if (!empty($user->data['user_popup_pm'])) {
            $template->assign_block_vars('switch_enable_pm_popup', array());
        }
        $u_login_logout = CMS_PAGE_LOGIN . '?logout=true&amp;sid=' . $user->data['session_id'];
        $l_login_logout = $lang['Logout'] . ' (' . $user->data['username'] . ')';
        $l_login_logout2 = $lang['Logout'];
        $s_last_visit = create_date($config['default_dateformat'], $user->data['user_lastvisit'], $config['board_timezone']);
        // DOWNLOADS ADV - BEGIN
        //@include(IP_ROOT_PATH . PLUGINS_PATH . $config['plugins']['downloads']['dir'] . 'includes/dl_page_header_inc.' . PHP_EXT);
        // DOWNLOADS ADV - END
        // Obtain number of new private messages
        if (empty($gen_simple_header)) {
            // Birthday - BEGIN
            // see if user has or have had birthday, also see if greeting are enabled
            if ($user->data['user_birthday'] != 999999 && $config['birthday_greeting'] && create_date('Ymd', time(), $config['board_timezone']) >= $user->data['user_next_birthday_greeting'] . realdate('md', $user->data['user_birthday'])) {
                if (!function_exists('birthday_pm_send')) {
                    include_once IP_ROOT_PATH . 'includes/functions_users.' . PHP_EXT;
                }
                birthday_pm_send();
            }
            // Birthday - END
            if ($user->data['user_profile_view'] && $user->data['user_profile_view_popup']) {
                $template->assign_vars(array('PROFILE_VIEW' => true, 'U_PROFILE_VIEW' => append_sid('profile_view_popup.' . PHP_EXT)));
            }
            if ($user->data['user_new_privmsg'] && !$config['privmsg_disable']) {
                $new_pm_switch = true;
                $l_message_new = $user->data['user_new_privmsg'] == 1 ? $lang['New_pm'] : $lang['New_pms'];
                $l_privmsgs_text = sprintf($l_message_new, $user->data['user_new_privmsg']);
                if ($user->data['user_last_privmsg'] > $user->data['user_lastvisit']) {
                    $sql = "UPDATE " . USERS_TABLE . "\n\t\t\t\t\t\tSET user_last_privmsg = '" . $user->data['user_lastvisit'] . "'\n\t\t\t\t\t\tWHERE user_id = " . $user->data['user_id'];
                    $db->sql_query($sql);
                    $s_privmsg_new = 1;
                    $icon_pm = $images['pm_new_msg'];
                } else {
                    $s_privmsg_new = 0;
                    $icon_pm = $images['pm_new_msg'];
                }
            } else {
                $l_privmsgs_text = $lang['No_new_pm'];
                $s_privmsg_new = 0;
                $icon_pm = $images['pm_no_new_msg'];
            }
            $icon_private_chat = $images['private_chat'];
            if (!empty($user->data['user_private_chat_alert'])) {
                $new_private_chat_switch = true;
                $icon_private_chat = $images['private_chat_alert'];
                $ajax_chat_page = !empty($config['ajax_chat_link_type']) ? CMS_PAGE_AJAX_CHAT : CMS_PAGE_AJAX_SHOUTBOX;
                $ajax_chat_room = 'chat_room=' . $user->data['user_private_chat_alert'];
                $ajax_chat_link = append_sid($ajax_chat_page . '?' . $ajax_chat_room);
                $ajax_chat_ref = !empty($config['ajax_chat_link_type']) ? $ajax_chat_link . '" target="_chat' : '#" onclick="window.open(\'' . $ajax_chat_link . '\', \'_chat\', \'width=720,height=600,resizable=yes\'); $(\'#shoutbox_pvt_alert\').css(\'display\', \'none\'); return false;';
                $u_private_chat = $ajax_chat_ref;
            }
            if ($user->data['user_unread_privmsg']) {
                $l_message_unread = $user->data['user_unread_privmsg'] == 1 ? $lang['Unread_pm'] : $lang['Unread_pms'];
                $l_privmsgs_text_unread = sprintf($l_message_unread, $user->data['user_unread_privmsg']);
            } else {
                $l_privmsgs_text_unread = $lang['No_unread_pm'];
            }
        } else {
            $icon_pm = $images['pm_no_new_msg'];
            $l_privmsgs_text = $lang['Login_check_pm'];
            $l_privmsgs_text_unread = '';
            $s_privmsg_new = 0;
        }
        // We don't want this SQL being too expensive... so we will allow the number of new messages only for some pages... (you can add here other pages if you wish!)
        // We will also allow the number of new messages only for users which log on frequently
        $new_messages_counter_pages_array = array(CMS_PAGE_FORUM, CMS_PAGE_VIEWFORUM);
        $display_counter = $config['enable_new_messages_number'] && !$user->data['is_bot'] && in_array($page_url['basename'], $new_messages_counter_pages_array) && $user->data['user_lastvisit'] > time() - LAST_LOGIN_DAYS_NEW_POSTS_RESET * 60 * 60 * 24 ? true : false;
        if ($display_counter) {
            $auth_forum = '';
            if ($user->data['user_level'] != ADMIN) {
                if (!function_exists('auth_forum_read')) {
                    include_once IP_ROOT_PATH . 'includes/functions_upi2db.' . PHP_EXT;
                }
                $user->data['auth_forum_id'] = isset($user->data['auth_forum_id']) ? $user->data['auth_forum_id'] : auth_forum_read($user->data);
                $auth_forum = !empty($user->data['auth_forum_id']) ? ' AND p.forum_id IN (' . $user->data['auth_forum_id'] . ') ' : '';
            }
            $sql = "SELECT p.forum_id, t.topic_poster\n\t\t\t\tFROM " . POSTS_TABLE . " p, " . TOPICS_TABLE . " t\n\t\t\t\tWHERE t.topic_id = p.topic_id\n\t\t\t\tAND p.post_time >= " . $user->data['user_lastvisit'] . $auth_forum . "\n\t\t\t\tAND p.poster_id != " . $user->data['user_id'];
            $db->sql_return_on_error(true);
            $result = $db->sql_query($sql);
            $db->sql_return_on_error(false);
            if ($result) {
                $is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $user->data);
                $new_posts = 0;
                while ($row = $db->sql_fetchrow($result)) {
                    if (intval($is_auth_ary[$row['forum_id']]['auth_read']) != AUTH_SELF || $user->data['user_level'] == ADMIN || $user->data['user_level'] == MOD && $config['allow_mods_view_self'] == true || $row['topic_poster'] == $user->data['user_id']) {
                        $new_posts++;
                    }
                }
                $lang['Search_new'] = $lang['Search_new'] . ' (' . $new_posts . ')';
                $lang['New'] = $lang['New'] . ' (' . $new_posts . ')';
                $lang['NEW_POSTS_SHORT'] = $lang['New_Label'] . ' (' . $new_posts . ')';
                $lang['NEW_POSTS_LONG'] = $lang['New_Messages_Label'] . ' (' . $new_posts . ')';
                $lang['Search_new2'] = $lang['Search_new2'] . ' (' . $new_posts . ')';
                $lang['Search_new_p'] = $lang['Search_new_p'] . ' (' . $new_posts . ')';
                $db->sql_freeresult($result);
            }
        } else {
            $lang['NEW_POSTS_SHORT'] = $lang['New_Label'];
            $lang['NEW_POSTS_LONG'] = $lang['New_Messages_Label'];
        }
    }
    // LOGGED IN CHECK - END
    if (!defined('IN_CMS')) {
        // UPI2DB - BEGIN
        $upi2db_first_use = '';
        $u_display_new = array();
        if ($user->data['upi2db_access']) {
            $u_display_new = index_display_new($user->data['upi2db_unread']);
            $template->assign_block_vars('switch_upi2db_on', array());
            $template->assign_var('IS_UPI2DB', true);
            $upi2db_first_use = $user->data['user_upi2db_datasync'] == '0' ? '<script type="text/javascript">' . "\n" . '// <![CDATA[' . "\n" . 'alert ("' . $lang['upi2db_first_use_txt'] . '");' . "\n" . '// ]]>' . "\n" . '</script>' : '';
        } else {
            if ($user->data['session_logged_in']) {
                $template->assign_block_vars('switch_upi2db_off', array());
            }
        }
        // UPI2DB - END
        // Digests - BEGIN
        if (!empty($config['cron_digests_interval']) && $config['cron_digests_interval'] > 0) {
            if (!defined('DIGEST_SITE_URL')) {
                $digest_server_url = create_server_url();
                define('DIGEST_SITE_URL', $digest_server_url);
            }
            setup_extra_lang(array('lang_digests'));
            if ($user->data['session_logged_in']) {
                $template->assign_block_vars('switch_show_digests', array());
            }
        }
        // Digests - END
        // Visit Counter - BEGIN
        if ($config['visit_counter_switch']) {
            $sql = "UPDATE " . CONFIG_TABLE . "\n\t\t\t\t\tSET config_value = (config_value + 1)\n\t\t\t\t\tWHERE config_name = 'visit_counter'";
            $result = $db->sql_query($sql);
        }
        // Visit Counter - END
        // Mighty Gorgon - Random Quote - Begin
        $randomquote_phrase = '';
        if ($config['show_random_quote']) {
            @(include_once IP_ROOT_PATH . 'language/lang_' . $config['default_lang'] . '/lang_randomquote.' . PHP_EXT);
            $randomquote_phrase = $randomquote[rand(0, sizeof($randomquote) - 1)];
        }
        // Mighty Gorgon - Random Quote - End
        // Mighty Gorgon - Advanced Switches - END
        // Show Online Block - BEGIN
        // Get basic (usernames + totals) online situation
        $online_userlist = '';
        $l_online_users = '';
        $ac_online_users = array('reg' => 0, 'guests' => 0, 'tot' => 0, 'list' => '', 'text' => '');
        if (defined('SHOW_ONLINE') && !$user->data['is_bot']) {
            include IP_ROOT_PATH . 'includes/users_online_block.' . PHP_EXT;
        }
        // Show Online Block - END
        // CrackerTracker v5.x
        /*
         * CrackerTracker IP Range Scanner
         */
        $marknow = request_var('marknow', '');
        if ($marknow == 'ipfeature' && $user->data['session_logged_in']) {
            // Mark IP Feature Read
            $user->data['ct_last_ip'] = $user->data['ct_last_used_ip'];
            $sql = 'UPDATE ' . USERS_TABLE . ' SET ct_last_ip = ct_last_used_ip WHERE user_id=' . $user->data['user_id'];
            $result = $db->sql_query($sql);
            if (!empty($_SERVER['HTTP_REFERER'])) {
                preg_match('#/([^/]*?)$#', $_SERVER['HTTP_REFERER'], $backlink);
                redirect($backlink[1]);
            }
        }
        if ($config['ctracker_login_ip_check'] == 1 && $user->data['ct_enable_ip_warn'] == 1 && $user->data['session_logged_in']) {
            include_once IP_ROOT_PATH . 'includes/ctracker/classes/class_ct_userfunctions.' . PHP_EXT;
            $ctracker_user = new ct_userfunctions();
            $check_ip_range = $ctracker_user->check_ip_range();
            if ($check_ip_range != 'allclear') {
                $template->assign_block_vars('ctracker_message', array('ROW_COLOR' => 'ffdfdf', 'ICON_GLOB' => $images['ctracker_note'], 'L_MESSAGE_TEXT' => $check_ip_range, 'L_MARK_MESSAGE' => $lang['ctracker_gmb_markip'], 'U_MARK_MESSAGE' => append_sid('index.' . PHP_EXT . '?marknow=ipfeature')));
            }
        }
        /*
         * CrackerTracker Global Message Function
         */
        if ($marknow == 'globmsg' && $user->data['session_logged_in']) {
            // Mark Global Message as read
            $user->data['ct_global_msg_read'] = 0;
            $sql = 'UPDATE ' . USERS_TABLE . ' SET ct_global_msg_read = 0 WHERE user_id=' . $user->data['user_id'];
            $result = $db->sql_query($sql);
            if (!empty($_SERVER['HTTP_REFERER'])) {
                preg_match('#/([^/]*?)$#', $_SERVER['HTTP_REFERER'], $backlink);
                redirect($backlink[1]);
            }
        }
        if ($user->data['ct_global_msg_read'] == 1 && $user->data['session_logged_in'] && $config['ctracker_global_message'] != '') {
            // Output Global Message
            $global_message_output = '';
            if ($config['ctracker_global_message_type'] == 1) {
                $global_message_output = $config['ctracker_global_message'];
            } else {
                $global_message_output = sprintf($lang['ctracker_gmb_link'], $config['ctracker_global_message'], $config['ctracker_global_message']);
            }
            $template->assign_block_vars('ctracker_message', array('ROW_COLOR' => 'e1ffdf', 'ICON_GLOB' => $images['ctracker_note'], 'L_MESSAGE_TEXT' => $global_message_output, 'L_MARK_MESSAGE' => $lang['ctracker_gmb_mark'], 'U_MARK_MESSAGE' => append_sid('index.' . PHP_EXT . '?marknow=globmsg')));
        }
        if (($config['login_history'] == 1 || $config['login_ip_check'] == 1) && $user->data['session_logged_in']) {
            $template->assign_block_vars('login_sec_link', array());
        }
        /*
         * CrackerTracker Password Expiry Check
         */
        if ($user->data['session_logged_in'] && $config['ctracker_pw_control'] == 1) {
            $pwd_expiry_time = $user->data['user_passchg'] + (!empty($config['ctracker_pw_validity']) ? (int) $config['ctracker_pw_validity'] : 365) * 24 * 60 * 60;
            if (time() > $pwd_expiry_time) {
                $template->assign_block_vars('ctracker_message', array('ROW_COLOR' => 'ffdfdf', 'ICON_GLOB' => $images['ctracker_note'], 'L_MESSAGE_TEXT' => sprintf($lang['ctracker_info_pw_expired'], $config['ctracker_pw_validity'], $user->data['user_id']), 'L_MARK_MESSAGE' => '', 'U_MARK_MESSAGE' => ''));
            }
        }
        /*
         * CrackerTracker Debug Mode Check
         */
        if (defined('CT_DEBUG_MODE') && CT_DEBUG_MODE === true && $user->data['user_level'] == ADMIN) {
            $template->assign_block_vars('ctracker_message', array('ROW_COLOR' => 'ffdfdf', 'ICON_GLOB' => $images['ctracker_note'], 'L_MESSAGE_TEXT' => $lang['ctracker_dbg_mode'], 'L_MARK_MESSAGE' => '', 'U_MARK_MESSAGE' => ''));
        }
        // CrackerTracker v5.x
        if ($config['switch_header_table']) {
            $template->assign_block_vars('switch_header_table', array('HEADER_TEXT' => $config['header_table_text'], 'L_STAFF_MESSAGE' => $lang['staff_message']));
        }
        if ($config['show_calendar_box_index']) {
            $path_parts = pathinfo($_SERVER['SCRIPT_NAME']);
            if ($path_parts['basename'] != CMS_PAGE_LOGIN) {
                if (!defined('IN_CALENDAR')) {
                    if (intval($config['calendar_header_cells']) > 0) {
                        $template->assign_block_vars('switch_calendar_box', array());
                        include_once IP_ROOT_PATH . 'includes/functions_calendar.' . PHP_EXT;
                        display_calendar('CALENDAR_BOX', intval($config['calendar_header_cells']));
                    }
                }
            }
        }
        $top_html_block_text = get_ad('glt');
        $header_banner_text = get_ad('glh');
        $nav_menu_ads_top = get_ad('nmt');
        $nav_menu_ads_bottom = get_ad('nmb');
        $social_connect_buttons = '';
        if (!empty($config['enable_social_connect'])) {
            include_once IP_ROOT_PATH . 'includes/class_social_connect.' . PHP_EXT;
            $available_networks = SocialConnect::get_available_networks();
            foreach ($available_networks as $social_network) {
                $social_connect_url = append_sid(CMS_PAGE_LOGIN . '?social_network=' . $social_network->get_name_clean());
                $social_connect_img = '<img src="' . IP_ROOT_PATH . 'images/social_connect/' . $social_network->get_name_clean() . '_button_connect.png" alt="" title="' . $social_network->get_name() . '" />';
                $social_connect_buttons .= '<a href="' . $social_connect_url . '">' . $social_connect_img . '</a>';
            }
        }
        // The following assigns all _common_ variables that may be used at any point in a template.
        $template->assign_vars(array('TOTAL_USERS_ONLINE' => $l_online_users, 'LOGGED_IN_USER_LIST' => $online_userlist, 'BOT_LIST' => !empty($online_botlist) ? $online_botlist : '', 'AC_LIST_TEXT' => $ac_online_users['text'], 'AC_LIST' => $ac_online_users['list'], 'RECORD_USERS' => sprintf($lang['Record_online_users'], $config['record_online_users'], create_date($config['default_dateformat'], $config['record_online_date'], $config['board_timezone'])), 'TOP_HTML_BLOCK' => $top_html_block_text, 'S_HEADER_BANNER' => empty($header_banner_text) ? false : true, 'HEADER_BANNER_CODE' => $header_banner_text, 'NAV_MENU_ADS_TOP' => $nav_menu_ads_top, 'NAV_MENU_ADS_BOTTOM' => $nav_menu_ads_bottom, 'L_SEARCH_NEW' => $lang['Search_new'], 'L_SEARCH_NEW2' => $lang['Search_new2'], 'L_NEW' => $lang['New'], 'L_NEW2' => empty($lang['NEW_POSTS_SHORT']) ? $lang['New_Label'] : $lang['NEW_POSTS_SHORT'], 'L_NEW3' => empty($lang['NEW_POSTS_LONG']) ? $lang['New_Messages_Label'] : $lang['NEW_POSTS_LONG'], 'L_POSTS' => $lang['Posts'], 'L_DISPLAY_ALL' => !empty($u_display_new) ? $u_display_new['all'] : '', 'L_DISPLAY_U' => !empty($u_display_new) ? $u_display_new['u'] : '', 'L_DISPLAY_M' => !empty($u_display_new) ? $u_display_new['m'] : '', 'L_DISPLAY_P' => !empty($u_display_new) ? $u_display_new['p'] : '', 'L_DISPLAY_UNREAD' => !empty($u_display_new) ? $u_display_new['unread'] : '', 'L_DISPLAY_MARKED' => !empty($u_display_new) ? $u_display_new['marked'] : '', 'L_DISPLAY_PERMANENT' => !empty($u_display_new) ? $u_display_new['permanent'] : '', 'L_DISPLAY_U_S' => !empty($u_display_new) ? $u_display_new['u_string_full'] : '', 'L_DISPLAY_M_S' => !empty($u_display_new) ? $u_display_new['m_string_full'] : '', 'L_DISPLAY_P_S' => !empty($u_display_new) ? $u_display_new['p_string_full'] : '', 'L_DISPLAY_UNREAD_S' => !empty($u_display_new) ? $u_display_new['unread_string'] : '', 'L_DISPLAY_MARKED_S' => !empty($u_display_new) ? $u_display_new['marked_string'] : '', 'L_DISPLAY_PERMANENT_S' => !empty($u_display_new) ? $u_display_new['permanent_string'] : '', 'U_DISPLAY_U' => !empty($u_display_new) ? $u_display_new['u_url'] : '', 'U_DISPLAY_M' => !empty($u_display_new) ? $u_display_new['m_url'] : '', 'U_DISPLAY_P' => !empty($u_display_new) ? $u_display_new['p_url'] : '', 'L_SEARCH_UNANSWERED' => $lang['Search_unanswered'], 'L_SEARCH_SELF' => $lang['Search_your_posts'], 'L_RECENT' => $lang['Recent_topics'], 'L_WATCHED_TOPICS' => $lang['Watched_Topics'], 'L_BOOKMARKS' => $lang['Bookmarks'], 'L_DIGESTS' => $lang['DIGESTS'], 'L_DRAFTS' => $lang['Drafts'], 'RANDOM_QUOTE' => $randomquote_phrase, 'L_LOGIN_SEC' => $lang['ctracker_gmb_loginlink'], 'U_LOGIN_SEC' => append_sid('ct_login_history.' . PHP_EXT), 'L_VIEWER' => $lang['Username'], 'L_NUMBER' => $lang['Views'], 'L_STAMP' => $lang['Last_updated'], 'L_YOUR_ACTIVITY' => $lang['Cpl_Personal_Profile'], 'L_PROFILE_EXPLAIN' => $lang['profile_explain'], 'L_PROFILE_MAIN' => $lang['profile_main'], 'L_CPL_NAV' => $lang['Profile'], 'L_CPL_REG_INFO' => $lang['Registration_info'], 'L_CPL_DELETE_ACCOUNT' => $lang['Delete_My_Account'], 'L_CPL_PROFILE_INFO' => $lang['Profile_info'], 'L_CPL_PROFILE_VIEWED' => $lang['Profile_viewed'], 'L_CPL_AVATAR_PANEL' => $lang['Avatar_panel'], 'L_CPL_SIG_EDIT' => $lang['sig_edit_link'], 'L_CPL_PREFERENCES' => $lang['Preferences'], 'L_CPL_SETTINGS_OPTIONS' => $lang['Cpl_Settings_Options'], 'L_CPL_BOARD_SETTINGS' => $lang['Cpl_Board_Settings'], 'L_CPL_MORE_INFO' => $lang['Cpl_More_info'], 'L_CPL_NEWMSG' => $lang['Cpl_NewMSG'], 'L_CPL_PERSONAL_PROFILE' => $lang['Cpl_Personal_Profile'], 'L_CPL_OWN_POSTS' => $lang['Search_your_posts'], 'L_CPL_OWN_PICTURES' => $lang['Personal_Gallery'], 'L_CPL_BOOKMARKS' => $lang['Bookmarks'], 'L_CPL_SUBSCFORUMS' => $lang['UCP_SubscForums'], 'L_CPL_PRIVATE_MESSAGES' => $lang['Private_Messages'], 'L_CPL_INBOX' => $lang['Inbox'], 'L_CPL_OUTBOX' => $lang['Outbox'], 'L_CPL_SAVEBOX' => $lang['Savebox'], 'L_CPL_SENTBOX' => $lang['Sentbox'], 'L_CPL_DRAFTS' => $lang['Drafts'], 'L_CPL_ZEBRA' => $lang['UCP_ZEBRA'], 'L_CPL_ZEBRA_EXPLAIN' => $lang['FRIENDS_EXPLAIN'], 'U_CPL_PROFILE_VIEWED' => append_sid('profile_view_user.' . PHP_EXT . '?' . POST_USERS_URL . '=' . $user->data['user_id']), 'U_CPL_NEWMSG' => append_sid(CMS_PAGE_PRIVMSG . '?mode=post'), 'U_CPL_REGISTRATION_INFO' => append_sid(CMS_PAGE_PROFILE . '?mode=editprofile&amp;cpl_mode=reg_info'), 'U_CPL_DELETE_ACCOUNT' => append_sid('contact_us.' . PHP_EXT . '?account_delete=' . $user->data['user_id']), 'U_CPL_PROFILE_INFO' => append_sid(CMS_PAGE_PROFILE . '?mode=editprofile&amp;cpl_mode=profile_info'), 'U_CPL_PREFERENCES' => append_sid(CMS_PAGE_PROFILE . '?mode=editprofile&amp;cpl_mode=preferences'), 'U_CPL_BOARD_SETTINGS' => append_sid(CMS_PAGE_PROFILE . '?mode=editprofile&amp;cpl_mode=board_settings'), 'U_CPL_AVATAR_PANEL' => append_sid(CMS_PAGE_PROFILE . '?mode=editprofile&amp;cpl_mode=avatar'), 'U_CPL_SIGNATURE' => append_sid(CMS_PAGE_PROFILE . '?mode=signature'), 'U_CPL_OWN_POSTS' => append_sid(CMS_PAGE_SEARCH . '?search_author=' . urlencode($user->data['username']) . '&amp;showresults=posts'), 'U_CPL_OWN_PICTURES' => append_sid('album.' . PHP_EXT . '?user_id=' . $user->data['user_id']), 'U_CPL_CALENDAR_SETTINGS' => append_sid('profile_options.' . PHP_EXT . '?sub=preferences&amp;module=calendar_settings&amp;' . POST_USERS_URL . '=' . $user->data['user_id']), 'U_CPL_SUBFORUM_SETTINGS' => append_sid('profile_options.' . PHP_EXT . '?sub=preferences&amp;module=forums_settings&amp;' . POST_USERS_URL . '=' . $user->data['user_id']), 'U_CPL_SUBSCFORUMS' => append_sid('subsc_forums.' . PHP_EXT), 'U_CPL_BOOKMARKS' => append_sid(CMS_PAGE_SEARCH . '?search_id=bookmarks'), 'U_CPL_INBOX' => append_sid(CMS_PAGE_PRIVMSG . '?folder=inbox'), 'U_CPL_OUTBOX' => append_sid(CMS_PAGE_PRIVMSG . '?folder=outbox'), 'U_CPL_SAVEBOX' => append_sid(CMS_PAGE_PRIVMSG . '?folder=savebox'), 'U_CPL_SENTBOX' => append_sid(CMS_PAGE_PRIVMSG . '?folder=sentbox'), 'U_CPL_DRAFTS' => append_sid('drafts.' . PHP_EXT), 'U_CPL_ZEBRA' => append_sid(CMS_PAGE_PROFILE . '?mode=zebra&amp;zmode=friends'), 'SOCIAL_CONNECT_BUTTONS' => $social_connect_buttons, 'P_ACTIVITY_MOD_PATH' => PLUGINS_PATH . $config['plugins']['activity']['dir'], 'U_ACTIVITY' => append_sid('activity.' . PHP_EXT), 'L_ACTIVITY' => $lang['Activity']));
    }
    // The following assigns all _common_ variables that may be used at any point in a template.
    $current_time = create_date($config['default_dateformat'], time(), $config['board_timezone']);
    $template->assign_vars(array('DOCTYPE_HTML' => $doctype_html, 'HEADER_LANG' => $header_lang, 'NAV_LINKS' => $nav_links_html, 'S_HIGHSLIDE' => !empty($config['thumbnail_highslide']) ? true : false, 'S_HEADER_DROPDOWN' => $config['switch_header_dropdown'] ? true : false, 'S_HEADER_DD_LOGGED_IN' => $config['switch_header_dropdown'] && $user->data['upi2db_access'] ? true : false, 'S_AJAX_FEATURES' => !empty($config['ajax_features']) ? true : false, 'S_AJAX_USER_CHECK' => $ajax_user_check, 'S_AJAX_USER_CHECK_ALT' => $ajax_user_check_alt, 'U_LOGIN_LOGOUT' => append_sid(IP_ROOT_PATH . $u_login_logout), 'USER_USERNAME' => $user->data['session_logged_in'] ? htmlspecialchars($user->data['username']) : $lang['Guest'], 'UPI2DB_FIRST_USE' => $upi2db_first_use, 'L_PAGE_TITLE' => $meta_content['page_title_clean'], 'PAGE_TITLE' => $config['page_title_simple'] ? $meta_content['page_title_clean'] : $meta_content['page_title'], 'META_TAG' => $phpbb_meta, 'LAST_VISIT_DATE' => sprintf($lang['You_last_visit'], $s_last_visit), 'CURRENT_TIME' => sprintf($lang['Current_time'], $current_time), 'CURRENT_TIME_ONLY' => $current_time, 'S_TIMEZONE' => $time_message, 'PRIVATE_MESSAGE_INFO' => $l_privmsgs_text, 'PRIVATE_MESSAGE_INFO_UNREAD' => $l_privmsgs_text_unread, 'PRIVATE_MESSAGE_NEW_FLAG' => $s_privmsg_new, 'PRIVMSG_IMG' => $icon_pm, 'NEW_PM_SWITCH' => $new_pm_switch, 'PRIVATE_CHAT_IMG' => $icon_private_chat, 'U_PRIVATE_CHAT' => $u_private_chat, 'NEW_PRIVATE_CHAT_SWITCH' => $new_private_chat_switch, 'L_USERNAME' => $lang['Username'], 'L_PASSWORD' => $lang['Password'], 'L_LOGIN_LOGOUT' => $l_login_logout, 'L_LOGIN_LOGOUT2' => $l_login_logout2, 'L_LOGIN' => $lang['Login'], 'L_HOME' => $lang['Home'], 'L_INDEX' => sprintf($lang['Forum_Index'], $config['sitename']), 'L_REGISTER' => $lang['Register'], 'L_BOARDRULES' => $lang['BoardRules'], 'L_PROFILE' => $lang['Profile'], 'L_CPL_NAV' => $lang['Profile'], 'L_SEARCH' => $lang['Search'], 'L_PRIVATEMSGS' => $lang['Private_Messages'], 'L_WHO_IS_ONLINE' => $lang['Who_is_Online'], 'L_MEMBERLIST' => $lang['Memberlist'], 'L_FAQ' => $lang['FAQ'], 'L_ADV_SEARCH' => $lang['Adv_Search'], 'L_SEARCH_EXPLAIN' => $lang['Search_Explain'], 'L_KB' => $lang['KB_title'], 'L_NEWS' => $lang['News_Cmx'], 'L_USERGROUPS' => $lang['Usergroups'], 'L_BOARD_DISABLE' => $lang['Board_disabled'], 'L_AJAX_SHOUTBOX' => $lang['Ajax_Chat'], 'L_BACK_TOP' => $lang['Back_to_top'], 'L_BACK_BOTTOM' => $lang['Back_to_bottom'], 'L_CALENDAR' => $lang['Calendar'], 'L_DOWNLOADS' => $lang['Downloads'], 'L_DOWNLOADS_ADV' => $lang['Downloads_ADV'], 'L_HACKS_LIST' => $lang['Hacks_List'], 'L_AVATAR_GEN' => $lang['AvatarGenerator'], 'L_LINKS' => $lang['Links'], 'L_WORDGRAPH' => $lang['Wordgraph'], 'L_ACRONYMS' => $lang['Acronyms'], 'L_SITEMAP' => $lang['Sitemap'], 'L_RANKS' => $lang['Rank_Header'], 'L_STAFF' => $lang['Staff'], 'L_CONTACT_US' => $lang['Contact_us'], 'L_UPLOAD_IMAGE' => $lang['Upload_Image_Local'], 'L_UPLOADED_IMAGES' => $lang['Uploaded_Images_Local'], 'L_ALBUM' => $lang['Album'], 'L_PIC_NAME' => $lang['Pic_Name'], 'L_DESCRIPTION' => $lang['Description'], 'L_GO' => $lang['Go'], 'L_SEARCH_CONTENTS' => $lang['Search_Contents'], 'L_SEARCH_MATCHES' => $lang['Search_Matches'], 'U_PREFERENCES' => append_sid('profile_options.' . PHP_EXT), 'L_PREFERENCES' => $lang['Preferences']));
    // get the nav sentence
    $nav_key = '';
    $nav_key = !empty($meta_content['cat_id']) ? POST_CAT_URL . $meta_content['cat_id'] : $nav_key;
    $nav_key = !empty($meta_content['forum_id']) ? POST_FORUM_URL . $meta_content['forum_id'] : $nav_key;
    $nav_key = !empty($meta_content['topic_id']) ? POST_TOPIC_URL . $meta_content['topic_id'] : $nav_key;
    $nav_key = !empty($meta_content['post_id']) ? POST_POST_URL . $meta_content['post_id'] : $nav_key;
    if (empty($nav_key)) {
        $selected_id = request_var('selected_id', 0);
        $nav_key = $selected_id < 0 ? 0 : $selected_id;
        $nav_key = empty($nav_key) ? 'Root' : $nav_key;
    }
    $nav_separator = empty($nav_separator) ? empty($lang['Nav_Separator']) ? '&nbsp;&raquo;&nbsp;' : $lang['Nav_Separator'] : $nav_separator;
    $nav_cat_desc = '';
    if (!isset($skip_nav_cat)) {
        $nav_pgm = empty($nav_pgm) ? '' : $nav_pgm;
        $nav_cat_desc = make_cat_nav_tree($nav_key, $nav_pgm, $meta_content);
    }
    if (!empty($nav_cat_desc)) {
        $nav_server_url = create_server_url();
        $nav_cat_desc = $nav_separator . $nav_cat_desc;
        $breadcrumbs['address'] = $nav_separator . '<a href="' . $nav_server_url . append_sid(CMS_PAGE_FORUM) . '">' . $lang['Forum'] . '</a>' . $nav_cat_desc;
        if (isset($nav_add_page_title) && $nav_add_page_title == true) {
            $breadcrumbs['address'] = $breadcrumbs['address'] . $nav_separator . '<a href="#" class="nav-current">' . $meta_content['page_title'] . '</a>';
        }
    }
    // send to template
    $template->assign_vars(array('S_PAGE_NAV' => isset($cms_page['page_nav']) ? $cms_page['page_nav'] : true, 'NAV_SEPARATOR' => $nav_separator, 'NAV_CAT_DESC' => $nav_cat_desc, 'BREADCRUMBS_ADDRESS' => empty($breadcrumbs['address']) ? $meta_content['page_title_clean'] != $config['sitename'] ? $lang['Nav_Separator'] . '<a href="#" class="nav-current">' . $meta_content['page_title_clean'] . '</a>' : '' : $breadcrumbs['address'], 'S_BREADCRUMBS_BOTTOM_LEFT_LINKS' => empty($breadcrumbs['bottom_left_links']) ? false : true, 'BREADCRUMBS_BOTTOM_LEFT_LINKS' => empty($breadcrumbs['bottom_left_links']) ? '&nbsp;' : $breadcrumbs['bottom_left_links'], 'S_BREADCRUMBS_BOTTOM_RIGHT_LINKS' => empty($breadcrumbs['bottom_right_links']) ? false : true, 'BREADCRUMBS_BOTTOM_RIGHT_LINKS' => empty($breadcrumbs['bottom_right_links']) ? '&nbsp;' : $breadcrumbs['bottom_right_links']));
    if ($config['board_disable'] && $user->data['user_level'] == ADMIN) {
        $template->assign_block_vars('switch_admin_disable_board', array());
    }
    if (!defined('IN_CMS')) {
        $cms_page['global_blocks'] = empty($cms_page['global_blocks']) ? false : true;
        //$cms_page['global_blocks'] = ((!isset($cms_page['page_id']) || !$cms_page['global_blocks']) ? false : true);
        $cms_page_blocks = empty($cms_page['page_id']) || empty($cms_config_layouts[$cms_page['page_id']]) ? false : true;
        if (empty($gen_simple_header) && !defined('HAS_DIED') && !defined('IN_LOGIN') && ($cms_page['global_blocks'] || $cms_page_blocks) && (!$config['board_disable'] || $user->data['user_level'] == ADMIN)) {
            $template->assign_var('SWITCH_CMS_GLOBAL_BLOCKS', true);
            $ip_cms->cms_parse_blocks($cms_page['page_id'], !empty($cms_page['page_id']), $cms_page['global_blocks'], 'header');
            if ($ip_cms->cms_parse_blocks($cms_page['page_id'], !empty($cms_page['page_id']), $cms_page['global_blocks'], 'headerleft')) {
                $template->assign_vars(array('HEADER_WIDTH' => $cms_config_vars['header_width'], 'HL_BLOCK' => true));
            }
            if ($ip_cms->cms_parse_blocks($cms_page['page_id'], !empty($cms_page['page_id']), $cms_page['global_blocks'], 'headercenter')) {
                $template->assign_var('HC_BLOCK', true);
            }
        }
        if (empty($gen_simple_header)) {
            if ($ip_cms->cms_parse_blocks(0, true, true, 'gheader')) {
                $template->assign_var('GH_BLOCK', true);
            }
            if ($ip_cms->cms_parse_blocks(0, true, true, 'ghtop')) {
                $template->assign_var('GT_BLOCK', true);
            }
            if ($ip_cms->cms_parse_blocks(0, true, true, 'ghbottom')) {
                $template->assign_var('GB_BLOCK', true);
            }
            if ($ip_cms->cms_parse_blocks(0, true, true, 'ghleft')) {
                $template->assign_var('GL_BLOCK', true);
            }
            if ($ip_cms->cms_parse_blocks(0, true, true, 'ghright')) {
                $template->assign_var('GR_BLOCK', true);
            }
        }
        if (defined('PARSE_CPL_NAV')) {
            $template->set_filenames(array('cpl_menu_output' => 'profile_cpl_menu.tpl'));
            $template->assign_var_from_handle('CPL_MENU_OUTPUT', 'cpl_menu_output');
        }
    }
    if ($user->data['user_level'] != ADMIN && $config['board_disable'] && !defined('HAS_DIED') && !defined('IN_ADMIN') && !defined('IN_LOGIN')) {
        if (!defined('STATUS_503')) {
            define('STATUS_503', true);
        }
        if ($config['board_disable_mess_st']) {
            message_die(GENERAL_MESSAGE, $config['board_disable_message']);
        } else {
            message_die(GENERAL_MESSAGE, $lang['Board_disabled']);
        }
    }
    if (!defined('AJAX_HEADERS')) {
        // application/xhtml+xml not used because of IE
        $encoding_charset = !empty($lang['ENCODING']) ? $lang['ENCODING'] : 'UTF-8';
        header('Content-type: text/html; charset=' . $encoding_charset);
        header('Cache-Control: private, no-cache="set-cookie"');
        header('Expires: 0');
        header('Pragma: no-cache');
    }
    if ($parse_template) {
        $header_tpl = empty($gen_simple_header) ? 'overall_header.tpl' : 'simple_header.tpl';
        $template->set_filenames(array('overall_header' => $header_tpl));
        $template->pparse('overall_header');
    }
    define('HEADER_INC_COMPLETED', true);
    return;
}
// Mighty Gorgon - ACP Privacy - END
define('DBMTNC_VERSION', '1.3.6');
// CONFIG_LEVEL = 0: configuration is disabled
// CONFIG_LEVEL = 1: only general configuration available
// CONFIG_LEVEL = 2: also configuration of rebuilding available
// CONFIG_LEVEL = 3: also configuration of current rebuilding available
define('CONFIG_LEVEL', 3);
// Level of configuration available (see above)
define('HEAP_SIZE', 500);
// Limit of Heap-Table for session data
require IP_ROOT_PATH . 'includes/functions_dbmtnc.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/functions_selects.' . PHP_EXT;
// Set up timer
$timer = getmicrotime();
// Get language file for this mod
setup_extra_lang(array('lang_dbmtnc'));
// Set up variables and constants
$function = request_var('function', '');
$mode_id = request_var('mode', '');
if ($mode_id == 'perform' && !isset($_POST['confirm'])) {
    $mode_id = '';
}
// Check for parameters
reset($config_data);
while (list(, $value) = each($config_data)) {
    if (!isset($config[$value])) {
        message_die(GENERAL_MESSAGE, sprintf($lang['Incomplete_configuration'], $value));
    }
}
// Switch of GZIP-compression when necessary and send the page header
if ($mode_id == 'start' || $mode_id == 'perform') {
Esempio n. 13
0
*/
define('IN_ICYPHOENIX', true);
if (!empty($setmodules)) {
    $file = basename(__FILE__);
    $module['1000_Configuration']['190_Spider_Bots'] = $file;
    return;
}
// Load default header
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
setup_extra_lang(array('lang_bots'));
$mode_array = array('add', 'delete', 'save', 'update');
$mode = request_var('mode', '');
$mode = in_array($mode, $mode_array) ? $mode : '';
$update = request_var('update', false);
if ($update) {
    $mode = 'update';
}
$bot_id = request_var('bot_id', 0);
$bot_active = request_var('bot_active', 0);
$bot_name = request_var('bot_name', '', true);
$bot_color = request_var('bot_color', '');
$bot_agent = request_var('bot_agent', '', true);
$bot_ip = request_var('bot_ip', '');
$bot_last_visit = request_var('bot_last_visit', 0);
$bot_visit_counter = request_var('bot_visit_counter', 0);
Esempio n. 14
0
function jr_admin_make_info_box()
{
    global $template, $lang, $module, $user, $config;
    /* Debug? Changes the status standing of ADMIN!!! You are warned */
    $debug = false;
    if ($user->data['user_level'] != ADMIN || $debug) {
        setup_extra_lang(array('lang_jr_admin'));
        $jr_admin_userdata = jr_admin_get_user_info($user->data['user_id']);
        $template->set_filenames(array('JR_ADMIN_INFO' => ADM_TPL . 'jr_admin_user_info_header.tpl'));
        $template->assign_vars(array('JR_ADMIN_START_DATE' => create_date($config['default_dateformat'], $jr_admin_userdata['start_date'], $config['board_timezone']), 'JR_ADMIN_UPDATE_DATE' => create_date($config['default_dateformat'], $jr_admin_userdata['update_date'], $config['board_timezone']), 'JR_ADMIN_ADMIN_NOTES' => $jr_admin_userdata['admin_notes'], 'L_VERSION' => $lang['Version'], 'L_JR_ADMIN_TITLE' => $lang['Junior_Admin_Info'], 'VERSION' => MOD_VERSION, 'L_MODULE_COUNT' => $lang['Module_Count'], 'L_NOTES' => $lang['Notes'], 'L_ALLOW_VIEW' => $lang['Allow_View'], 'L_START_DATE' => $lang['Start_Date'], 'L_UPDATE_DATE' => $lang['Update_Date'], 'L_ADMIN_NOTES' => $lang['Admin_Notes']));
        //Switch the info area if allowed to view it
        if ($jr_admin_userdata['notes_view']) {
            $template->assign_block_vars('jr_admin_info_switch', array());
        }
        $template->assign_var_from_handle('JR_ADMIN_INFO_TABLE', 'JR_ADMIN_INFO');
    }
}
Esempio n. 15
0
 function cms_block_ads()
 {
     global $db, $cache, $config, $template, $images, $user, $lang, $block_id, $cms_config_vars;
     setup_extra_lang(array('lang_main_ads'));
     $banner_var_all = '';
     $banner_var_guests = '';
     switch ($cms_config_vars['md_ads_type'][$block_id]) {
         case 1:
             $banner_var_all = 'banner_h_s_all';
             $banner_var_guests = 'banner_h_s_guests';
             break;
         case 2:
             $banner_var_all = 'banner_h_m_all';
             $banner_var_guests = 'banner_h_m_guests';
             break;
         case 3:
             $banner_var_all = 'banner_h_l_all';
             $banner_var_guests = 'banner_h_l_guests';
             break;
         case 4:
             $banner_var_all = 'banner_v_s_all';
             $banner_var_guests = 'banner_v_s_guests';
             break;
         case 5:
             $banner_var_all = 'banner_v_m_all';
             $banner_var_guests = 'banner_v_m_guests';
             break;
         case 6:
             $banner_var_all = 'banner_v_l_all';
             $banner_var_guests = 'banner_v_l_guests';
             break;
         case 7:
             $banner_var_all = 'banner_b_s_all';
             $banner_var_guests = 'banner_b_s_guests';
             break;
         case 8:
             $banner_var_all = 'banner_b_m_all';
             $banner_var_guests = 'banner_b_m_guests';
             break;
         case 9:
             $banner_var_all = 'banner_b_l_all';
             $banner_var_guests = 'banner_b_l_guests';
             break;
         default:
             $banner_var_all = 'banner_h_l_all';
             $banner_var_guests = 'banner_h_l_guests';
             break;
     }
     $ads_blocks = array();
     $ads_content = '';
     if (is_array(${$banner_var_all}) && sizeof(${$banner_var_all}) > 0) {
         foreach (${$banner_var_all} as $tmp_ads) {
             $ads_blocks[] = $tmp_ads;
         }
     }
     if (!$user->data['session_logged_in'] && is_array(${$banner_var_guests}) && sizeof(${$banner_var_guests}) > 0) {
         foreach (${$banner_var_guests} as $tmp_ads) {
             $ads_blocks[] = $tmp_ads;
         }
     }
     $ads_counter = sizeof($ads_blocks);
     if ($ads_counter > 0) {
         $microtime = explode(' ', microtime());
         $ads_seed = intval($microtime[0] * 100000) % $ads_counter;
         $ads_content = $ads_blocks[$ads_seed];
     }
     $template->assign_vars(array('ADS_CONTENT' => $ads_content));
 }
}
if ($attachment_version != '2.2.4' && !strstr($attachment_version, '2.3.') && !strstr($attachment_version, '2.4.')) {
    message_die(GENERAL_MESSAGE, 'Wrong Attachment Version detected.<br />Please update your Attachment Mod (V' . $attachment_version . ') to at least Version 2.2.4.');
}
if (strstr($attachment_version, '2.3.') || strstr($attachment_version, '2.4.')) {
    $real_filename = 'real_filename';
    $attach_table = ATTACHMENTS_TABLE;
    $attach_desc_table = ATTACHMENTS_DESC_TABLE;
    $sql_query = TRUE;
} else {
    $real_filename = 'filename';
    $attach_table = ATTACH_TABLE;
    $attach_desc_table = ATTACH_DESC_TABLE;
    $sql_query = FALSE;
}
setup_extra_lang(array('lang_admin_attach'));
$order_by = 'download_count DESC LIMIT ' . $return_limit;
// Get Valid Forum ID's to search
$sql = 'SELECT forum_id FROM ' . FORUMS_TABLE . ' WHERE forum_type = ' . FORUM_POST;
$result = $stat_db->sql_query($sql);
$is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $user->data);
$is_download_auth_ary = auth(AUTH_DOWNLOAD, AUTH_LIST_ALL, $user->data);
$forum_ids = array();
while ($row = $stat_db->sql_fetchrow($result)) {
    if ($is_auth_ary[$row['forum_id']]['auth_read'] && $is_download_auth_ary[$row['forum_id']]['auth_download']) {
        $forum_ids[] = $row['forum_id'];
    }
}
/*if (sizeof($forum_ids) == 0)
{
	message_die(GENERAL_MESSAGE, "You are not authorized to view Attachments at all.");
Esempio n. 17
0
    function main($action)
    {
        global $template, $lang, $config, $pafiledb_config, $db, $images, $user;
        if (!$this->auth_global['auth_stats']) {
            if (!$user->data['session_logged_in']) {
                redirect(append_sid(CMS_PAGE_LOGIN . '?redirect=dload.' . PHP_EXT . '&action=stats', true));
            }
            $message = sprintf($lang['Sorry_auth_stats'], $this->auth_global['auth_stats_type']);
            message_die(GENERAL_MESSAGE, $message);
        }
        $num['cats'] = $this->total_cat;
        $sql = "SELECT file_id\n\t\t\tFROM " . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'";
        $result = $db->sql_query($sql);
        $num['files'] = $db->sql_numrows($result);
        $db->sql_freeresult($result);
        $sql = 'SELECT file_id, file_name
			FROM ' . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'\n\t\t\tORDER BY file_time DESC";
        $result = $db->sql_query($sql);
        $newest = $db->sql_fetchrow($result);
        $db->sql_freeresult($result);
        $sql = 'SELECT file_id, file_name
			FROM ' . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'\n\t\t\tORDER BY file_time ASC";
        $result = $db->sql_query($sql);
        $oldest = $db->sql_fetchrow($result);
        $db->sql_freeresult($result);
        $sql = "SELECT r.votes_file, AVG(r.rate_point) AS rating, f.file_id, f.file_name\n\t\t\tFROM " . PA_VOTES_TABLE . " AS r, " . PA_FILES_TABLE . " AS f\n\t\t\tWHERE r.votes_file = f.file_id\n\t\t\tAND f.file_approved = '1'\n\t\t\tGROUP BY f.file_id\n\t\t\tORDER BY rating DESC";
        $result = $db->sql_query($sql);
        $popular = $db->sql_fetchrow($result);
        $db->sql_freeresult($result);
        $sql = "SELECT r.votes_file, AVG(r.rate_point) AS rating, f.file_id, f.file_name\n\t\t\tFROM " . PA_VOTES_TABLE . " AS r, " . PA_FILES_TABLE . " AS f\n\t\t\tWHERE r.votes_file = f.file_id\n\t\t\tAND f.file_approved = '1'\n\t\t\tGROUP BY f.file_id\n\t\t\tORDER BY rating ASC";
        $result = $db->sql_query($sql);
        $lpopular = $db->sql_fetchrow($result);
        $total_votes = $total_rating = 0;
        while ($row = $db->sql_fetchrow($result)) {
            $total_rating += $row['rating'];
            $total_votes++;
        }
        $db->sql_freeresult($result);
        $sql = "SELECT file_id, file_name, file_dls\n\t\t\tFROM " . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'\n\t\t\tORDER BY file_dls DESC";
        $result = $db->sql_query($sql);
        $mostdl = $db->sql_fetchrow($result);
        $db->sql_freeresult($result);
        $sql = "SELECT file_id, file_name, file_dls\n\t\t\tFROM " . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'\n\t\t\tORDER BY file_dls ASC";
        $result = $db->sql_query($sql);
        $leastdl = $db->sql_fetchrow($result);
        $db->sql_freeresult($result);
        $sql = "SELECT file_dls\n\t\t\tFROM " . PA_FILES_TABLE . "\n\t\t\tWHERE file_approved = '1'";
        $result = $db->sql_query($sql);
        while ($row = $db->sql_fetchrow($result)) {
            $totaldls += $row['file_dls'];
        }
        $db->sql_freeresult($result);
        $avg = @round($total_rating / $total_votes);
        $avgdls = @round($totaldls / $num['files']);
        setup_extra_lang(array('lang_pafiledb'));
        $lang['Stats_text'] = str_replace("{total_files}", $num['files'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{total_categories}", $num['cats'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{total_downloads}", $totaldls, $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_newest_file}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $newest['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{newest_file}", $newest['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_oldest_file}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $oldest['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{oldest_file}", $oldest['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{average}", $avg, $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_popular}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $popular['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{popular}", $popular['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{most}", round($popular['rating'], 2), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_lpopular}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $lpopular['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{lpopular}", $lpopular['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{least}", round($lpopular['rating'], 2), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{avg_dls}", $avgdls, $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_most_dl}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $mostdl['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{most_dl}", $mostdl['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{most_no}", $mostdl['file_dls'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{u_least_dl}", append_sid('dload.' . PHP_EXT . '?action=file&file_id=' . $leastdl['file_id']), $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{least_dl}", $leastdl['file_name'], $lang['Stats_text']);
        $lang['Stats_text'] = str_replace("{least_no}", $leastdl['file_dls'], $lang['Stats_text']);
        $agent_lang = array('OPERA' => 'Opera', 'IE' => 'Internet Explorer', 'MOZILLA' => 'Mozilla', 'NETSCAPE' => 'NetScape', 'OTHER' => 'Other');
        $agent_image = array('OPERA' => 'opera.png', 'IE' => 'msie.png', 'MOZILLA' => 'mozilla.png', 'NETSCAPE' => 'netscape.png', 'OTHER' => 'unknown.png');
        $agent_point = array('OPERA' => 0, 'IE' => 0, 'MOZILLA' => 0, 'NETSCAPE' => 0, 'OTHER' => 0);
        $os_lang = array('Win' => 'Windows', 'Mac' => 'Macintosh', 'Linux' => 'Linux', 'Unix' => 'Unix', 'Other' => 'Other');
        $os_image = array('Win' => 'windows.png', 'Mac' => 'apple.png', 'Linux' => 'linux.png', 'Unix' => 'linux.png', 'Other' => 'unknown.png');
        $os_point = array('Win' => 0, 'Mac' => 0, 'Linux' => 0, 'Unix' => 0, 'Other' => 0);
        $sql = "SELECT downloader_os, downloader_browser\n\t\t\tFROM " . PA_DOWNLOAD_INFO_TABLE;
        $result = $db->sql_query($sql);
        $row_downloads = $db->sql_fetchrowset($result);
        $db->sql_freeresult($result);
        for ($i = 0; $i < sizeof($row_downloads); $i++) {
            $os_point[$row_downloads[$i]['downloader_os']]++;
            $agent_point[$row_downloads[$i]['downloader_browser']]++;
        }
        $os_graphic = 0;
        $os_graphic_max = sizeof($images['voting_graphic']);
        foreach ($os_point as $index => $point) {
            $temp_point = $point > 100 ? 100 : $point;
            $os_graphic_img = $images['voting_graphic'][$os_graphic];
            $os_graphic = $os_graphic < $os_graphic_max - 1 ? $os_graphic + 1 : 0;
            $template->assign_block_vars('downloads_os', array('OS_IMG' => 'images/http_agents/os/' . $os_image[$index], 'OS_NAME' => $os_lang[$index], 'OS_OPTION_RESULT' => $point, 'OS_OPTION_IMG' => $os_graphic_img, 'OS_OPTION_IMG_WIDTH' => $temp_point * 2));
        }
        $b_graphic = 0;
        $b_graphic_max = sizeof($images['voting_graphic']);
        foreach ($agent_point as $index => $point) {
            $temp_point = $point > 100 ? 100 : $point;
            $b_graphic_img = $images['voting_graphic'][$b_graphic];
            $b_graphic = $b_graphic < $b_graphic_max - 1 ? $b_graphic + 1 : 0;
            $template->assign_block_vars('downloads_b', array('B_IMG' => 'images/http_agents/browsers/' . $agent_image[$index], 'B_NAME' => $agent_lang[$index], 'B_OPTION_RESULT' => $point, 'B_OPTION_IMG' => $b_graphic_img, 'B_OPTION_IMG_WIDTH' => $temp_point * 2));
        }
        $agent_point = array('OPERA' => 0, 'IE' => 0, 'MOZILLA' => 0, 'NETSCAPE' => 0, 'OTHER' => 0);
        $os_point = array('Win' => 0, 'Mac' => 0, 'Linux' => 0, 'Unix' => 0, 'Other' => 0);
        $sql = "SELECT voter_os, voter_browser\n\t\t\tFROM " . PA_VOTES_TABLE;
        $result = $db->sql_query($sql);
        $row_ratings = $db->sql_fetchrowset($result);
        $db->sql_freeresult($result);
        for ($i = 0; $i < sizeof($row_ratings); $i++) {
            $os_point[$row_ratings[$i]['voter_os']]++;
            $agent_point[$row_ratings[$i]['voter_browser']]++;
        }
        $os_graphic = 0;
        $os_graphic_max = sizeof($images['voting_graphic']);
        foreach ($os_point as $index => $point) {
            $temp_point = $point > 100 ? 100 : $point;
            $os_graphic_img = $images['voting_graphic'][$os_graphic];
            $os_graphic = $os_graphic < $os_graphic_max - 1 ? $os_graphic + 1 : 0;
            $template->assign_block_vars('rating_os', array('OS_IMG' => 'images/http_agents/os/' . $os_image[$index], 'OS_NAME' => $os_lang[$index], 'OS_OPTION_RESULT' => $point, 'OS_OPTION_IMG' => $os_graphic_img, 'OS_OPTION_IMG_WIDTH' => $temp_point));
        }
        $b_graphic = 0;
        $b_graphic_max = sizeof($images['voting_graphic']);
        foreach ($agent_point as $index => $point) {
            $temp_point = $point > 100 ? 100 : $point;
            $b_graphic_img = $images['voting_graphic'][$b_graphic];
            $b_graphic = $b_graphic < $b_graphic_max - 1 ? $b_graphic + 1 : 0;
            $template->assign_block_vars('rating_b', array('B_IMG' => 'images/http_agents/browsers/' . $agent_image[$index], 'B_NAME' => $agent_lang[$index], 'B_OPTION_RESULT' => $point, 'B_OPTION_IMG' => $b_graphic_img, 'B_OPTION_IMG_WIDTH' => $temp_point));
        }
        $template->assign_vars(array('S_ACTION_CHART' => append_sid('dload.' . PHP_EXT . '?action=stats'), 'L_STATISTICS' => $lang['Statistics'], 'L_INDEX' => sprintf($lang['Forum_Index'], $config['sitename']), 'L_GENERAL_INFO' => $lang['General_Info'], 'L_DOWNLOADS_STATS' => $lang['Downloads_stats'], 'L_RATING_STATS' => $lang['Rating_stats'], 'L_OS' => $lang['Os'], 'L_BROWSERS' => $lang['Browsers'], 'L_HOME' => $lang['Home'], 'CURRENT_TIME' => sprintf($lang['Current_time'], create_date($config['default_dateformat'], time(), $config['board_timezone'])), 'U_INDEX_HOME' => append_sid(CMS_PAGE_HOME), 'U_DOWNLOAD' => append_sid('dload.' . PHP_EXT), 'U_VOTE_LCAP' => $images['voting_graphic_left'], 'U_VOTE_RCAP' => $images['voting_graphic_right'], 'DOWNLOAD' => $pafiledb_config['settings_dbname'], 'STATS_TEXT' => $lang['Stats_text']));
        $this->display($lang['Download'], 'pa_stats_body.tpl');
    }
Esempio n. 18
0
$auth->acl($user->data);
$user->setup();
// End session management

$cms_page['page_id'] = 'rules';
$cms_page['page_nav'] = (!empty($cms_config_layouts[$cms_page['page_id']]['page_nav']) ? true : false);
$cms_page['global_blocks'] = (!empty($cms_config_layouts[$cms_page['page_id']]['global_blocks']) ? true : false);
$cms_auth_level = (isset($cms_config_layouts[$cms_page['page_id']]['view']) ? $cms_config_layouts[$cms_page['page_id']]['view'] : AUTH_ALL);
check_page_auth($cms_page['page_id'], $cms_auth_level);

// Load the appropriate Rules file
$lang_file = 'lang_rules';
$l_title = $lang['BoardRules'];

// Include the rules settings
setup_extra_lang(array($lang_file));

// Pull the array data from the lang pack
$j = 0;
$counter = 0;
$counter_2 = 0;
$rules_block = array();
$rules_block_titles = array();

for($i = 0; $i < sizeof($faq); $i++)
{
	if($faq[$i][0] != '--')
	{
		$rules_block[$j][$counter]['id'] = $counter_2;
		$rules_block[$j][$counter]['question'] = $faq[$i][0];
		$rules_block[$j][$counter]['answer'] = $faq[$i][1];
Esempio n. 19
0
 function cms_parse_blocks($layout, $is_special = false, $global_blocks = false, $type = '')
 {
     global $db, $cache, $config, $auth, $user, $lang, $bbcode, $template;
     global $cms_config_vars, $cms_config_layouts, $cms_config_global_blocks, $block_id;
     // Let's remove $auth->acl_get('a_') until I finish coding permissions properly... and also add/remove 'a_' when users are added/removed from administrators in ACP
     //$is_admin = (($user->data['user_level'] == ADMIN) || $auth->acl_get('a_')) ? true : false;
     $is_admin = $user->data['user_level'] == ADMIN ? true : false;
     $empty_block_tpl = 'cms_block_inc_wrapper.tpl';
     if (!$is_special) {
         $id_var_name = 'l_id';
         $table_name = $this->tables['layout_table'];
         $field_name = 'lid';
     } else {
         $id_var_name = 'ls_id';
         $table_name = $this->tables['layout_special_table'];
         $field_name = 'lsid';
         $layout = isset($cms_config_layouts[$layout][$field_name]) ? $cms_config_layouts[$layout][$field_name] : 0;
     }
     if (!defined('CMS_BLOCKS_LANG_INCLUDED')) {
         // We add lang_user_created again here to make sure we override lang_blocks var with customized ones without having to edit lang_blocks directly...
         setup_extra_lang(array('lang_blocks', 'lang_user_created'));
         define('CMS_BLOCKS_LANG_INCLUDED', true);
     }
     if (!$global_blocks && !$is_special) {
         $layout_pos = array();
         $sql_pos = "SELECT * FROM " . $this->tables['block_position_table'] . " WHERE layout = " . $layout;
         $block_pos_result = $db->sql_query($sql_pos, 0, 'cms_bp_', CMS_CACHE_FOLDER);
         while ($block_pos_row = $db->sql_fetchrow($block_pos_result)) {
             $layout_pos[$block_pos_row['bposition']] = $block_pos_row['pkey'];
         }
         $db->sql_freeresult($block_pos_result);
     }
     $block_info = array();
     if ($is_special || $global_blocks) {
         $temp_type = $type;
     } else {
         $temp_type = 's' . strval($layout);
     }
     $is_global_block = false;
     $is_gh_block = false;
     if (!$is_special && !$global_blocks) {
         if (!empty($config['cms_version'])) {
             $sql = "SELECT b.*, s.*\n\t\t\t\t\tFROM " . $this->tables['blocks_table'] . " AS b,\n\t\t\t\t\t" . $this->tables['block_settings_table'] . " AS s\n\t\t\t\t\tWHERE b.layout = " . $layout . "\n\t\t\t\t\tAND b.active = 1\n\t\t\t\t\tAND " . $db->sql_in_set('s.view', $this->cms_auth_view()) . "\n\t\t\t\t\tAND b.bposition NOT IN ('gh','gf','gt','gb','gl','gr','hh','hl','hc','fc','fr','ff')\n\t\t\t\t\tAND b.bs_id = s.bs_id\n\t\t\t\t\tORDER BY b.bposition ASC, b.layout ASC, b.layout_special ASC, b.weight ASC";
         } else {
             $sql = "SELECT *\n\t\t\t\t\tFROM " . $this->tables['blocks_table'] . "\n\t\t\t\t\tWHERE layout = " . $layout . "\n\t\t\t\t\tAND active = 1\n\t\t\t\t\tAND " . $db->sql_in_set('view', $this->cms_auth_view()) . "\n\t\t\t\t\tAND bposition NOT IN ('gh','gf','gt','gb','gl','gr','hh','hl','hc','fc','fr','ff')\n\t\t\t\t\tORDER BY bposition ASC, layout ASC, layout_special ASC, weight ASC";
         }
         $block_im_result = $db->sql_query($sql, 0, 'cms_blocks_', CMS_CACHE_FOLDER);
         $block_info = array();
         while ($row = $db->sql_fetchrow($block_im_result)) {
             $block_info[] = $row;
         }
         $db->sql_freeresult($block_im_result);
     } else {
         switch ($type) {
             case 'gheader':
                 $temp_pos = 'gh';
                 break;
             case 'gfooter':
                 $temp_pos = 'gf';
                 break;
             case 'ghtop':
                 $temp_pos = 'gt';
                 $empty_block_tpl = 'cms_block_inc_wrapper_buttons.tpl';
                 $is_gh_block = true;
                 break;
             case 'ghbottom':
                 $temp_pos = 'gb';
                 $empty_block_tpl = 'cms_block_inc_wrapper_buttons.tpl';
                 $is_gh_block = true;
                 break;
             case 'ghleft':
                 $temp_pos = 'gl';
                 $empty_block_tpl = 'cms_block_inc_wrapper_plain.tpl';
                 $is_gh_block = true;
                 break;
             case 'ghright':
                 $temp_pos = 'gr';
                 $empty_block_tpl = 'cms_block_inc_wrapper_plain.tpl';
                 $is_gh_block = true;
                 break;
             case 'header':
                 $temp_pos = 'hh';
                 break;
             case 'headerleft':
                 $temp_pos = 'hl';
                 $is_global_block = true;
                 break;
             case 'headercenter':
                 $temp_pos = 'hc';
                 $is_global_block = true;
                 break;
             case 'tailcenter':
                 $temp_pos = 'fc';
                 $is_global_block = true;
                 break;
             case 'tailright':
                 $temp_pos = 'fr';
                 $is_global_block = true;
                 break;
             case 'tail':
                 $temp_pos = 'ff';
                 break;
             default:
                 $temp_pos = 'tt';
                 break;
         }
         $config['cms_block_pos'] = $temp_pos;
         if ($is_special && !$global_blocks) {
             $sql_where = "AND layout_special = " . $layout;
             $check_array = array($layout);
         } elseif ($is_special && $global_blocks && $layout != 0) {
             $sql_where = "AND layout_special IN(0, " . $layout . ")";
             $check_array = array(0, $layout);
         } else {
             $sql_where = "AND layout_special = 0";
             $check_array = array(0);
         }
         if (empty($cms_config_global_blocks)) {
             $cms_config_global_blocks = $cache->obtain_cms_global_blocks_config(false);
         }
         $block_info = array();
         if (!empty($cms_config_global_blocks[$temp_pos])) {
             foreach ($cms_config_global_blocks[$temp_pos] as $row) {
                 if (in_array($row['layout_special'], $check_array)) {
                     $block_info[] = $row;
                 }
             }
         }
         /*
         $sql = "SELECT *
         	FROM " . CMS_BLOCKS_TABLE . "
         	WHERE layout = 0
         	" . $sql_where . "
         	AND active = 1
         	AND " . $db->sql_in_set('view', $this->cms_auth_view()) . "
         	AND bposition = '" . $temp_pos . "'
         	ORDER BY layout ASC, weight ASC";
         $block_im_result = $db->sql_query($sql, 0, 'cms_blocks_', CMS_CACHE_FOLDER);
         
         $block_info = array();
         while ($row = $db->sql_fetchrow($block_im_result))
         {
         	$block_info[] = $row;
         }
         $db->sql_freeresult($block_im_result);
         */
     }
     $block_count = sizeof($block_info);
     if (($is_global_block || $is_gh_block) && $block_count == 0) {
         return false;
     }
     for ($b_counter = 0; $b_counter < $block_count; $b_counter++) {
         // We cannot use 'bid' anymore since now blocks settings are identified by 'bs_id'
         //$block_id = $block_info[$b_counter]['bid'];
         $block_id = $block_info[$b_counter]['bs_id'];
         $is_group_allowed = true;
         if (!empty($block_info[$b_counter]['groups'])) {
             $is_group_allowed = false;
             $group_content = explode(',', $block_info[$b_counter]['groups']);
             for ($i = 0; $i < sizeof($group_content); $i++) {
                 if (in_array(intval($group_content[$i]), $this->cms_groups($user->data['user_id']))) {
                     $is_group_allowed = true;
                 }
             }
         }
         if ($is_group_allowed) {
             if ($is_special || $global_blocks) {
                 $position = $type;
             } else {
                 $position = $layout_pos[$block_info[$b_counter]['bposition']];
             }
             $position_prefix = $position . '_';
             $block_name = $block_info[$b_counter]['blockfile'];
             if ($block_info[$b_counter]['local'] == 1 && !empty($lang['cms_block_' . $block_name])) {
                 $title_string = $lang['cms_block_' . $block_name];
             } else {
                 $title_string = $block_info[$b_counter]['title'];
             }
             $content_type = 'block';
             if (!empty($block_info[$b_counter]['blockfile'])) {
                 $block_handle = $block_name . '_block_' . $block_info[$b_counter]['bid'];
                 $template->set_filenames(array($block_handle => 'blocks/' . $block_name . '_block.tpl'));
                 $output_block = '';
                 include IP_ROOT_PATH . 'blocks/' . $block_info[$b_counter]['blockfile'] . '.' . PHP_EXT;
                 $output_block = $template->get_var_from_handle($block_handle);
             } else {
                 $content_type = 'text';
                 $message = $block_info[$b_counter]['content'];
                 if ($block_info[$b_counter]['type'] == true) {
                     if (!class_exists('bbcode') || empty($bbcode)) {
                         @(include_once IP_ROOT_PATH . 'includes/bbcode.' . PHP_EXT);
                     }
                     //$message = preg_replace('#(<)([\/]?.*?)(>)#is', "&lt;\\2&gt;", $message);
                     $bbcode->allow_html = false;
                     $bbcode->allow_bbcode = true;
                     $bbcode->allow_smilies = true;
                     $message = $bbcode->parse($message);
                     //$message = str_replace("\n", "\n<br />\n", $message);
                     $message = '<div class="post-text">' . $message . '</div>';
                 } else {
                     // You shouldn't convert NEW LINES to <br /> because you are parsing HTML, so linebreaks must be inserted as <br />
                     // If you want linebreaks to be converted automatically, just decomment this line.
                     //$message = str_replace("\n", "\n<br />\n", $message);
                 }
                 $output_block = $message;
             }
             $b_admin_vars = array();
             if ($is_admin || !empty($user->data['user_cms_auth']['cmsb_admin'][$block_id])) {
                 $b_admin_vars = array('B_ADMIN' => true, 'B_EDIT_LINK' => append_sid(CMS_PAGE_CMS . '?mode=block_settings&amp;action=edit&amp;bs_id=' . $block_id . '&amp;sid=' . $user->data['session_id']));
             }
             $block_handle = 'block_' . $block_info[$b_counter]['bid'];
             $template->set_filenames(array($block_handle => $empty_block_tpl));
             $template->assign_vars($b_admin_vars);
             $template->assign_vars(array('POSITION' => $position, 'CONTENT_TYPE' => $content_type, 'OUTPUT' => $output_block, 'TITLE_CONTENT' => $title_string == '' ? '&nbsp;' : $title_string, 'TITLE' => $block_info[$b_counter]['titlebar'] == 1 ? true : false, 'BORDER' => $block_info[$b_counter]['border'] == 1 ? true : false, 'BACKGROUND' => $block_info[$b_counter]['background'] == 1 ? true : false));
             $cms_block = $template->get_var_from_handle($block_handle);
             $template->assign_block_vars($position_prefix . 'blocks_row', $b_admin_vars);
             $template->assign_block_vars($position_prefix . 'blocks_row', array('CMS_BLOCK' => $cms_block, 'OUTPUT' => $output_block));
         }
     }
     return true;
 }
Esempio n. 20
0
// MG Cash MOD For IP - BEGIN
define('IN_CASHMOD', true);
define('CM_POSTING', true);
// MG Cash MOD For IP - END
define('IN_ICYPHOENIX', true);
if (!defined('IP_ROOT_PATH')) define('IP_ROOT_PATH', './');
if (!defined('PHP_EXT')) define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
include(IP_ROOT_PATH . 'common.' . PHP_EXT);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
// End session management

setup_extra_lang(array('lang_rate'));
include_once(IP_ROOT_PATH . 'includes/functions_rate.' . PHP_EXT);

$rate_mode = request_var('rate_mode', '');
$forum_top = request_var('forum_top', '');
$topic_id = request_var('topic_id', 0);
$rating = request_post_var('rating', 0);

// Page Titles if Specific!

$meta_content['description'] = '';
$meta_content['keywords'] = '';
switch($rate_mode)
{
	case 'rate':
		$meta_content['page_title'] = $lang['Rating'];
Esempio n. 21
0
        }
        // Check if the user is in the chat room
        $is_user_in_chat = user_in_chat_session($profiledata['user_id']);
        $display_chat_link = !empty($is_user_in_chat) ? true : false;
    }
    if ($display_chat_link) {
        $ajax_chat_page = !empty($config['ajax_chat_link_type']) ? CMS_PAGE_AJAX_CHAT : CMS_PAGE_AJAX_SHOUTBOX;
        $ajax_chat_room = 'chat_room=' . (min($user->data['user_id'], $profiledata['user_id']) . '|' . max($user->data['user_id'], $profiledata['user_id']));
        $ajax_chat_link = append_sid($ajax_chat_page . '?' . $ajax_chat_room);
        $ajax_chat_ref = !empty($config['ajax_chat_link_type']) ? $ajax_chat_link . '" target="_chat' : '#" onclick="window.open(\'' . $ajax_chat_link . '\', \'_chat\', \'width=720,height=600,resizable=yes\'); return false;';
        $template->assign_vars(array('U_AJAX_SHOUTBOX_PVT_LINK' => $ajax_chat_ref, 'ICON_CHAT' => $all_ims['chat']['icon'], 'U_CHAT' => $all_ims['chat']['url']));
    }
}
// Custom Profile Fields - BEGIN
// Include Language
setup_extra_lang(array('lang_profile_fields'));
include_once IP_ROOT_PATH . 'includes/functions_profile.' . PHP_EXT;
$profile_data = get_fields('WHERE view_in_profile = ' . VIEW_IN_PROFILE . ' AND users_can_view = ' . ALLOW_VIEW);
$profile_names = array();
foreach ($profile_data as $field) {
    $name = $field['field_name'];
    $col_name = text_to_column($field['field_name']);
    $id = $profiledata['user_id'];
    $type = $field['field_type'];
    $location = $field['profile_location'];
    $field_id = $field['field_id'];
    $field_name = $field['field_name'];
    if (isset($lang[$field_id . '_' . $field_name])) {
        $field_name = $lang[$field_id . '_' . $field_name];
    }
    $sql = "SELECT {$col_name} FROM " . USERS_TABLE . "\n\t\tWHERE user_id = {$id}";
Esempio n. 22
0
 function get_plugin_info($plugin_dir)
 {
     global $lang;
     $plugin_info = array();
     $plugin_info_file = $this->plugins_path . $plugin_dir . '/info.' . PHP_EXT;
     if (file_exists($plugin_info_file)) {
         $plugin_info_lang_path = $this->plugins_path . $plugin_dir . '/language/';
         setup_extra_lang(array('lang_info'), $plugin_info_lang_path);
         @(include $plugin_info_file);
         $plugin_info = array('dir' => $plugin_dir, 'config' => !empty($plugin_details['config']) ? $plugin_details['config'] : $plugins_subdir, 'name' => !empty($plugin_details['name']) ? $plugin_details['name'] : $plugins_subdir, 'version' => !empty($plugin_details['version']) ? $plugin_details['version'] : '1.0.0', 'description' => !empty($plugin_details['description']) ? $plugin_details['description'] : '');
         foreach ($this->plugin_includes_array as $plugin_include) {
             $plugin_info[$plugin_include] = !empty($plugin_details[$plugin_include]) ? 1 : 0;
         }
     }
     return $plugin_info;
 }
Esempio n. 23
0
*/

/**
*
* @Icy Phoenix is based on phpBB
* @copyright (c) 2008 phpBB Group
*
*/

define('IN_ICYPHOENIX', true);
if (!defined('IP_ROOT_PATH')) define('IP_ROOT_PATH', './');
if (!defined('PHP_EXT')) define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
include(IP_ROOT_PATH . 'common.' . PHP_EXT);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
// End session management

$cms_page['page_id'] = 'privacy_policy';
$cms_page['page_nav'] = (!empty($cms_config_layouts[$cms_page['page_id']]['page_nav']) ? true : false);
$cms_page['global_blocks'] = (!empty($cms_config_layouts[$cms_page['page_id']]['global_blocks']) ? true : false);
$cms_auth_level = (isset($cms_config_layouts[$cms_page['page_id']]['view']) ? $cms_config_layouts[$cms_page['page_id']]['view'] : AUTH_ALL);
check_page_auth($cms_page['page_id'], $cms_auth_level);

setup_extra_lang(array('lang_policies'));

full_page_generation('privacy_policy_body.tpl', $lang['PRIVACY_POLICY_TITLE'], '', '');

?>
Esempio n. 24
0
 /**
  * Constructor
  */
 function umil($stand_alone = false, $db = false)
 {
     // Setup $this->db
     if ($db !== false) {
         if (!is_object($db) || !method_exists($db, 'sql_query')) {
             trigger_error('Invalid $db Object');
         }
         $this->db = $db;
     } else {
         global $db;
         $this->db = $db;
     }
     // Setup $this->db_tools
     if (!class_exists('phpbb_db_tools')) {
         include IP_ROOT_PATH . 'includes/db/db_tools.' . PHP_EXT;
     }
     $this->db_tools = new phpbb_db_tools($this->db);
     $this->stand_alone = $stand_alone;
     if (!$stand_alone) {
         global $config, $user;
         setup_extra_lang(array('lang_umil', 'lang_admin'));
     }
 }
Esempio n. 25
0
    $module['1250_News_Admin']['120_XS_News_Config'] = $filename . '?mode=config';
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
$db->clear_cache('xs_');
require_once IP_ROOT_PATH . 'includes/functions_xs_admin.' . PHP_EXT;
require_once IP_ROOT_PATH . 'includes/functions_xs_useless.' . PHP_EXT;
// define the path to the admin news templates
define('XS_TPL_PATH', '../../templates/common/xs_mod/tpl_news/');
setup_extra_lang(array('lang_xs_news'));
$news_text = request_var('news_text', '', true);
$news_text = htmlspecialchars_decode($news_text, ENT_COMPAT);
$message = request_var('message', '', true);
$message = htmlspecialchars_decode($message, ENT_COMPAT);
$news_text = !empty($message) ? $message : $news_text;
// Set Date format based on the admin choice
switch ($config['xs_news_dateformat']) {
    case 0:
        $date_format_ae = 'd/m/Y';
        $date_format_display = 'd M Y';
        // displays '01 Jan 2005'
        $date_format_explain = sprintf($lang['xs_news_dateformat_helper'], 'dd/mm/yyyy');
        break;
    case 1:
        $date_format_ae = 'm/d/Y';
Esempio n. 26
0
function show_coppa()
{
    global $config, $user, $template, $lang;
    // Load the appropriate Rules file
    $lang_file = 'lang_rules';
    $l_title = $lang['BoardRules'];
    // Include the rules settings
    setup_extra_lang(array($lang_file));
    //
    // Pull the array data from the lang pack
    //
    $j = 0;
    $counter = 0;
    $counter_2 = 0;
    $rules_block = array();
    $rules_block_titles = array();
    for ($i = 0; $i < sizeof($rules); $i++) {
        if ($rules[$i][0] != '--') {
            $rules_block[$j][$counter]['id'] = $counter_2;
            $rules_block[$j][$counter]['question'] = $rules[$i][0];
            $rules_block[$j][$counter]['answer'] = $rules[$i][1];
            $counter++;
            $counter_2++;
        } else {
            $j = $counter != 0 ? $j + 1 : 0;
            $rules_block_titles[$j] = $rules[$i][1];
            $counter = 0;
        }
    }
    $template->set_filenames(array('body' => 'agreement.tpl'));
    if (!function_exists('language_select')) {
        @(include_once IP_ROOT_PATH . 'includes/functions_selects.' . PHP_EXT);
    }
    $available_networks = array();
    $social_connect_append = '';
    $social_network = request_get_var('social_network', '');
    if ($config['enable_social_connect']) {
        include_once IP_ROOT_PATH . 'includes/class_social_connect.' . PHP_EXT;
        $available_networks = SocialConnect::get_available_networks();
        $login_admin = request_get_var('admin', 0);
        $redirect_url = CMS_LOGIN_REDIRECT_PAGE;
        $template->assign_var('SOCIAL_CONNECT', true);
        foreach ($available_networks as $social_network_item) {
            $template->assign_block_vars('social_connect_button', array('L_SOCIAL_CONNECT' => sprintf($lang['SOCIAL_CONNECT_LOGIN'], $social_network_item->get_name()), 'U_SOCIAL_CONNECT' => append_sid(CMS_PAGE_LOGIN . '?social_network=' . $social_network_item->get_name_clean() . '&redirect=' . urlencode($redirect_url) . '&admin=' . $login_admin), 'IMG_SOCIAL_CONNECT' => '<img src="' . IP_ROOT_PATH . 'images/social_connect/' . $social_network_item->get_name_clean() . '_button_connect.png" alt="" title="" />'));
        }
        if (!empty($social_network)) {
            if (!empty($available_networks[$social_network])) {
                $social_connect_append = '&amp;social_network=' . $social_network;
            }
        }
    }
    $template->assign_vars(array('L_PAGE_TITLE' => $lang['Registration'], 'REGISTRATION' => $lang['Registration'], 'AGREEMENT' => $lang['Reg_agreement'], 'L_AGREEMENT' => $lang['Agreement'], 'L_PRIVACY_DISCLAIMER' => $lang['PrivacyDisclaimer'], 'AGREE_OVER_13' => $lang['Agree_over_13'], 'AGREE_UNDER_13' => $lang['Agree_under_13'], 'DO_NOT_AGREE' => $lang['Agree_not'], 'AGREE_CHECKBOX' => $lang['Agree_checkbox'], 'S_LANG_CHANGE_ACTION' => append_sid(CMS_PAGE_PROFILE . '?mode=register' . $social_connect_append), 'LANGUAGE_SELECT' => language_select('l', $config['default_lang']), 'L_RULES_TITLE' => $l_title, 'L_BACK_TO_TOP' => $lang['Back_to_top'], 'S_AGREE_ACTION' => append_sid(CMS_PAGE_PROFILE . '?mode=register&amp;agreed=true' . $social_connect_append), 'U_AGREE_OVER13' => append_sid(CMS_PAGE_PROFILE . '?mode=register&amp;agreed=true' . $social_connect_append), 'U_AGREE_UNDER13' => append_sid(CMS_PAGE_PROFILE . '?mode=register&amp;agreed=true&amp;coppa=true' . $social_connect_append)));
    for ($i = 0; $i < sizeof($rules_block); $i++) {
        if (sizeof($rules_block[$i])) {
            $template->assign_block_vars('rules_block', array('BLOCK_TITLE' => $rules_block_titles[$i]));
            $template->assign_block_vars('rules_block_link', array('BLOCK_TITLE' => $rules_block_titles[$i]));
            for ($j = 0; $j < sizeof($rules_block[$i]); $j++) {
                $row_class = !($j % 2) ? $theme['td_class1'] : $theme['td_class2'];
                $template->assign_block_vars('rules_block.rules_row', array('ROW_CLASS' => $row_class, 'RULES_QUESTION' => $rules_block[$i][$j]['question'], 'RULES_ANSWER' => $rules_block[$i][$j]['answer'], 'U_RULES_ID' => $rules_block[$i][$j]['id']));
                $template->assign_block_vars('rules_block_link.rules_row_link', array('ROW_CLASS' => $row_class, 'RULES_LINK' => $rules_block[$i][$j]['question'], 'U_RULES_LINK' => '#' . $rules_block[$i][$j]['id']));
            }
        }
    }
    $template->pparse('body');
}
Esempio n. 27
0
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
$mode = request_var('mode', '');
if (isset($_POST['config'])) {
    $mode = 'config';
} elseif (isset($_POST['logs'])) {
    $mode = 'users';
}
setup_extra_lang(array('lang_ftr'));
$topic_id = (int) $config['ftr_topic_number'];
$topic_exists = check_topic_exists($topic_id);
if (empty($topic_exists)) {
    set_config('ftr_disable', '1');
    set_config('ftr_topic_number', '0');
}
$update = $_POST['update'];
if ($mode == 'delete_user') {
    $who = request_var('user', 0);
    $q = "DELETE FROM " . FORCE_READ_USERS_TABLE . " WHERE user = '******'";
    $r = $db->sql_query($q);
    message_die(GENERAL_MESSAGE, $lang['Ftr_user_deleted'], $lang['Ftr_msg_success']);
}
if ($mode == 'users') {
    $start = request_var('start', 0);
Esempio n. 28
0
*/
define('IN_ICYPHOENIX', true);
if (!empty($setmodules)) {
    $filename = basename(__FILE__);
    $module['2500_STATS']['Statistics_management'] = $filename . '?mode=manage';
    $module['2500_STATS']['Statistics_config'] = $filename . '?mode=config';
    return;
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
if (!defined('PHP_EXT')) {
    define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
}
require 'pagestart.' . PHP_EXT;
setup_extra_lang(array('lang_statistics'));
// FUNCTIONS - BEGIN
if (!function_exists('gen_auth_select')) {
    function gen_auth_select($default_auth_value)
    {
        global $lang;
        $auth_levels = array('ALL', 'REG', 'MOD', 'ADMIN');
        $auth_const = array(AUTH_ALL, AUTH_REG, AUTH_MOD, AUTH_ADMIN);
        $select_list = '<select name="auth_fields">';
        for ($i = 0; $i < sizeof($auth_levels); $i++) {
            $selected = $default_auth_value == $auth_const[$i] ? ' selected="selected"' : '';
            $select_list .= '<option value="' . $auth_const[$i] . '"' . $selected . '>' . $lang['Forum_' . $auth_levels[$i]] . '</option>';
        }
        $select_list .= '</select>';
        return $select_list;
    }
Esempio n. 29
0
*/
/**
*
* @Extra credits for this file
* Chris Lennert - (calennert@users.sourceforge.net) - (http://lennertmods.sourceforge.net)
*
*/
if (!defined('IN_ICYPHOENIX')) {
    die('Hacking attempt');
}
if (!defined('IP_ROOT_PATH')) {
    define('IP_ROOT_PATH', './../');
}
include IP_ROOT_PATH . 'includes/bb_usage_stats_constants.' . PHP_EXT;
include IP_ROOT_PATH . 'includes/bb_usage_stats_functions.' . PHP_EXT;
setup_extra_lang(array('lang_bb_usage_stats'));
/******************************************************************************
 * Creates the select list for the Board Usage Stats Special Access Group
 ******************************************************************************/
function specialgrp_select($select_name, $selected_group)
{
    global $db;
    $selected_attribute = 'selected="selected"';
    /* First, add the "---------------" (value=-1) option to the list */
    $group_select = "<select name=\"{$select_name}\">";
    if ($selected_group == -1) {
        $selected = $selected_attribute;
    }
    $group_select .= "<option value=\"-1\" {$selected}>---------------</option>";
    $selected = "";
    // Reset to empty string
Esempio n. 30
0
define('IN_MINI_CAL', 1);
include_once IP_ROOT_PATH . 'includes/mini_cal/mini_cal_config.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/mini_cal/mini_cal_common.' . PHP_EXT;
include_once IP_ROOT_PATH . 'includes/mini_cal/calendarSuite.' . PHP_EXT;
// get the mode (if any)
$mini_cal_mode = request_var('mode', '');
$mini_cal_mode = $mini_cal_mode == 'personal' ? $mini_cal_mode : 'default';
// get the user (for personal calendar)
$mini_cal_user = request_var(POST_USERS_URL, 0);
// get the calendar month
$mini_cal_month = request_var('month', 0);
// initialise our calendarsuite class
$mini_cal = new calendarSuite();
// initialise the mini_cal lang files
// for maximum efficiency you might want to move the mini_cal lang variables into lang_main and remove these lines
setup_extra_lang(array('lang_main_mini_cal'));
// setup our mini_cal template
$template->set_filenames(array('mini_cal_body' => 'mini_cal_body.tpl'));
// initialise some variables
$mini_cal_today = create_date('Ymd', time(), $config['board_timezone']);
$s_cal_month = $mini_cal_month != 0 ? $mini_cal_month . ' month' : $mini_cal_today;
$mini_cal->getMonth($s_cal_month);
$mini_cal_count = MINI_CAL_FDOW;
$mini_cal_this_year = $mini_cal->dateYYYY;
$mini_cal_this_month = $mini_cal->dateMM;
$mini_cal_this_day = $mini_cal->dateDD;
$mini_cal_month_days = $mini_cal->daysMonth;
if (MINI_CAL_CALENDAR_VERSION != 'NONE') {
    // include the required events calendar support
    $mini_cal_inc = 'mini_cal_' . MINI_CAL_CALENDAR_VERSION;
    include_once IP_ROOT_PATH . 'includes/mini_cal/' . $mini_cal_inc . '.' . PHP_EXT;