. /** * Moodle frontpage. * * @package core * @copyright 1999 onwards Martin Dougiamas (http://dougiamas.com) * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ if (!file_exists('./config.php')) { header('Location: install.php'); die; } require_once('config.php'); require_once($CFG->dirroot .'/course/lib.php'); require_once($CFG->libdir .'/filelib.php'); redirect_if_major_upgrade_required(); $urlparams = array(); if (!empty($CFG->defaulthomepage) && ($CFG->defaulthomepage == HOMEPAGE_MY) && optional_param('redirect', 1, PARAM_BOOL) === 0) { $urlparams['redirect'] = 0; } $PAGE->set_url('/', $urlparams); $PAGE->set_pagelayout('frontpage'); $PAGE->set_other_editing_capability('moodle/course:update'); $PAGE->set_other_editing_capability('moodle/course:manageactivities'); $PAGE->set_other_editing_capability('moodle/course:activityvisibility'); // Raghu Coding for redirecting if(cm_role_check('stateadmin')){ echo ""; exit; } if(cm_role_check('insadmin')){ echo ""; /* ""; /* ""; exit; } if(cm_role_check('student')){ $tablet_browser = 0; $mobile_browser = 0; if (preg_match('/(tablet|ipad|playbook)|(android(?!.*(mobi|opera mini)))/i', strtolower($_SERVER['HTTP_USER_AGENT']))) { $tablet_browser++; } if (preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|android|iemobile)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) { $mobile_browser++; } if ((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') > 0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))) { $mobile_browser++; } $mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'], 0, 4)); $mobile_agents = array( 'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac', 'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno', 'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-', 'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-', 'newt','noki','palm','pana','pant','phil','play','port','prox', 'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar', 'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-', 'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp', 'wapr','webc','winw','winw','xda ','xda-'); if (in_array($mobile_ua,$mobile_agents)) { $mobile_browser++; } if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'opera mini') > 0) { $mobile_browser++; //Check for tablets on opera mini alternative headers $stock_ua = strtolower(isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'])?$_SERVER['HTTP_X_OPERAMINI_PHONE_UA']:(isset($_SERVER['HTTP_DEVICE_STOCK_UA'])?$_SERVER['HTTP_DEVICE_STOCK_UA']:'')); if (preg_match('/(tablet|ipad|playbook)|(android(?!.*mobile))/i', $stock_ua)) { $tablet_browser++; } } if ($tablet_browser > 0) { // do something for tablet devices echo ""; exit; } else if ($mobile_browser > 0) { // do something for mobile devices echo ""; exit; } else { // do something for everything else echo ""; exit; } } // Prevent caching of this page to stop confusion when changing page after making AJAX changes. $PAGE->set_cacheable(false); require_course_login($SITE); echo ""; $hasmaintenanceaccess = has_capability('moodle/site:maintenanceaccess', context_system::instance()); // If the site is currently under maintenance, then print a message. if (!empty($CFG->maintenance_enabled) and !$hasmaintenanceaccess) { print_maintenance_message(); } $hassiteconfig = has_capability('moodle/site:config', context_system::instance()); if ($hassiteconfig && moodle_needs_upgrading()) { redirect($CFG->wwwroot .'/'. $CFG->admin .'/index.php'); } // If site registration needs updating, redirect. \core\hub\registration::registration_reminder('/index.php'); if (get_home_page() != HOMEPAGE_SITE) { // Redirect logged-in users to My Moodle overview if required. $redirect = optional_param('redirect', 1, PARAM_BOOL); if (optional_param('setdefaulthome', false, PARAM_BOOL)) { set_user_preference('user_home_page_preference', HOMEPAGE_SITE); } else if (!empty($CFG->defaulthomepage) && ($CFG->defaulthomepage == HOMEPAGE_MY) && $redirect === 1) { redirect($CFG->wwwroot .'/my/'); } else if (!empty($CFG->defaulthomepage) && ($CFG->defaulthomepage == HOMEPAGE_USER)) { $frontpagenode = $PAGE->settingsnav->find('frontpage', null); if ($frontpagenode) { $frontpagenode->add( get_string('makethismyhome'), new moodle_url('/', array('setdefaulthome' => true)), navigation_node::TYPE_SETTING); } else { $frontpagenode = $PAGE->settingsnav->add(get_string('frontpagesettings'), null, navigation_node::TYPE_SETTING, null); $frontpagenode->force_open(); $frontpagenode->add(get_string('makethismyhome'), new moodle_url('/', array('setdefaulthome' => true)), navigation_node::TYPE_SETTING); } } } // Trigger event. course_view(context_course::instance(SITEID)); // If the hub plugin is installed then we let it take over the homepage here. if (file_exists($CFG->dirroot.'/local/hub/lib.php') and get_config('local_hub', 'hubenabled')) { require_once($CFG->dirroot.'/local/hub/lib.php'); $hub = new local_hub(); $continue = $hub->display_homepage(); // Function display_homepage() returns true if the hub home page is not displayed // ...mostly when search form is not displayed for not logged users. if (empty($continue)) { exit; } } $PAGE->set_pagetype('site-index'); $PAGE->set_docs_path(''); $editing = $PAGE->user_is_editing(); $PAGE->set_title($SITE->fullname); $PAGE->set_heading($SITE->fullname); $courserenderer = $PAGE->get_renderer('core', 'course'); echo $OUTPUT->header(); // Print Section or custom info. $siteformatoptions = course_get_format($SITE)->get_format_options(); $modinfo = get_fast_modinfo($SITE); $modnames = get_module_types_names(); $modnamesplural = get_module_types_names(true); $modnamesused = $modinfo->get_used_module_names(); $mods = $modinfo->get_cms(); if (!empty($CFG->customfrontpageinclude)) { include($CFG->customfrontpageinclude); } else if ($siteformatoptions['numsections'] > 0) { if ($editing) { // Make sure section with number 1 exists. course_create_sections_if_missing($SITE, 1); // Re-request modinfo in case section was created. $modinfo = get_fast_modinfo($SITE); } $section = $modinfo->get_section_info(1); if (($section && (!empty($modinfo->sections[1]) or !empty($section->summary))) or $editing) { echo $OUTPUT->box_start('generalbox sitetopic'); // If currently moving a file then show the current clipboard. if (ismoving($SITE->id)) { $stractivityclipboard = strip_tags(get_string('activityclipboard', '', $USER->activitycopyname)); echo '
'; echo "$stractivityclipboard ("; echo get_string('cancel') . ')'; echo '
'; } $context = context_course::instance(SITEID); // If the section name is set we show it. if (trim($section->name) !== '') { echo $OUTPUT->heading( format_string($section->name, true, array('context' => $context)), 2, 'sectionname' ); } $summarytext = file_rewrite_pluginfile_urls($section->summary, 'pluginfile.php', $context->id, 'course', 'section', $section->id); $summaryformatoptions = new stdClass(); $summaryformatoptions->noclean = true; $summaryformatoptions->overflowdiv = true; echo format_text($summarytext, $section->summaryformat, $summaryformatoptions); if ($editing && has_capability('moodle/course:update', $context)) { $streditsummary = get_string('editsummary'); echo "id\">" . $OUTPUT->pix_icon('t/edit', $streditsummary) . "