run('begin_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook require_once $uploadingMethodClass; // //Is kleeja only for members? // if(empty($d_groups[2]['exts']) && !$usrcp->name()) { // Send a 503 HTTP response code to prevent search bots from indexing this message //header('HTTP/1.1 503 Service Temporarily Unavailable'); kleeja_info($lang['SITE_FOR_MEMBER_ONLY'], $lang['HOME']); } $action = $config['siteurl']; /** @var KleejaUploader $uploader */ $uploadingMethodClassBaseName = basename($uploadingMethodClass, '.php'); $uploader = new $uploadingMethodClassBaseName; $uploader->setAllowedFileExtensions($d_groups[$userinfo['group_id']]['exts']); $uploader->setUploadFieldsLimit($config['filesnum']); $uploading_type = ip('submitr') ? 1 : (ip('submittxt') ? 2 : false); if($uploading_type) { $uploader->upload($uploading_type); } #file input fields $FILES_NUM_LOOP = array(); if($config['filesnum'] > 0) { foreach(range(1, $config['filesnum']) as $i) { $FILES_NUM_LOOP[] = array('i' => $i, 'show'=>($i == 1 || (!empty($config['filesnum_show']) && (int) $config['filesnum_show'] == 1) ? '' : 'display: none')); } } else { $text = $lang['PLACE_NO_YOU']; } #show errors and info $info = array(); foreach($uploader->getMessages() as $t => $s) { $info[] = array( 't' => $s[1] == 'error' ? 'index_err' : 'index_info', #for old Kleeja versions 'i' => $s[0], //#for old Kleeja versions 'message_content' => $s[0], 'message_type' => $s[1], ); } #some words for template $welcome_msg = $config['welcome_msg']; $filecp_link = $usrcp->id() ? $config['siteurl'] . ($config['mod_writer'] ? 'filecp.html' : 'ucp.php?go=filecp') : false; $terms_msg = sprintf($lang['AGREE_RULES'], '' , ''); $link_avater = sprintf($lang['EDIT_U_AVATER_LINK'], '', ''); $js_allowed_extensions_types = "['" . implode("', '", array_keys($d_groups[$userinfo['group_id']]['exts'])) . "']"; $js_allowed_extensions_sizes = "[" . implode(", ", array_values($d_groups[$userinfo['group_id']]['exts'])) . "]"; // //who's online right now.. //I don't like this feature and I prefer that you disable it // $show_online = $config['allow_online'] == 1 ? true : false; if ($show_online) { $current_online_users = 0; $online_names = array(); $timeout = 60; //30 second $timeout2 = time()-$timeout; //put another bot name is_array($plugin_run_result = Plugins::getInstance()->run('anotherbots_online_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook $query = array( 'SELECT' => 'u.name', 'FROM' => "{$dbprefix}users u", 'WHERE' => "u.last_visit > $timeout2" ); is_array($plugin_run_result = Plugins::getInstance()->run('qr_select_online_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook $result = $SQL->build($query); while($row=$SQL->fetch_array($result)) { is_array($plugin_run_result = Plugins::getInstance()->run('while_qr_select_online_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook $current_online_users++; $online_names[$row['name']] = $row['name']; }#while $SQL->freeresult($result); //make names as array to print them in template $show_names = array(); $show_names_sizeof = sizeof($show_names); foreach ($online_names as $k) { $show_names[] = array('name' => $k, 'separator' => $show_names_sizeof ? ',' : ''); } //some variables must be destroyed here unset($online_names, $timeout, $timeout2); //check & update most ever users and visitors were online if(empty($config['most_user_online_ever']) || trim($config['most_user_online_ever']) == '') { $most_online = $current_online_users; $online_time = time(); } else { list($most_online, $online_time) = @explode(':', $config['most_user_online_ever']); } if ($most_online < $current_online_users || empty($config['most_user_online_ever'])) { update_config('most_user_online_ever', $current_online_users . ':' . time()); } $online_time = kleeja_date('d-m-Y h:i a', $online_time); //before 1.8, styles computability $usersnum = $current_online_users; $shownames = $show_names; is_array($plugin_run_result = Plugins::getInstance()->run('if_online_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook }#allow_online $show_style = true; is_array($plugin_run_result = Plugins::getInstance()->run('end_index_page', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook //is ajax if(ip('ajax')) { if(!empty($info)) { header('Content-Type: text/plain; charset=utf-8'); echo json_encode($info); } exit; } //show style if($show_style) { Saaheader(); echo $tpl->display(($config['filesnum'] > 0 ? "index_body" : "info")); Saafooter(); }