/**
     * Set user parameters
     */
    private function set_user_parameters()
    {
        $user_info               = array();
        $user_info['logged']     = 0;
        $this->user_is_logged_in = false;
        if (api_user_is_login()) {
            $user_info           = api_get_user_info(api_get_user_id());
            $user_info['logged'] = 1;

            $user_info['is_admin'] = 0;
            if (api_is_platform_admin()) {
                $user_info['is_admin'] = 1;
            }

            $user_info['messages_count'] = MessageManager::get_new_messages();
            $this->user_is_logged_in     = true;
        }
        //Setting the $_u array that could be use in any template
        $this->assign('_u', $user_info);
    }
Exemple #2
0
// When loading a chamilo page do not include the hot courses and news
if (!isset($_REQUEST['include'])) {
    if (api_get_setting('show_hot_courses') == 'true') {
        $hot_courses = $controller->return_hot_courses();
    }
    $announcements_block = $controller->return_announcements();
}
$controller->tpl->assign('hot_courses', $hot_courses);
$controller->tpl->assign('announcements_block', $announcements_block);
$controller->tpl->assign('home_page_block', $controller->return_home_page());
$controller->tpl->assign('navigation_course_links', $controller->return_navigation_links());
$controller->tpl->assign('notice_block', $controller->return_notice());
$controller->tpl->assign('main_navigation_block', $controller->return_navigation_links());
$controller->tpl->assign('help_block', $controller->return_help());
if (api_is_platform_admin() || api_is_drh()) {
    $controller->tpl->assign('skills_block', $controller->return_skills_links());
}
if (api_is_anonymous()) {
    $controller->tpl->setLoginBodyClass();
}
// direct login to course
if (isset($_GET['firstpage'])) {
    api_set_firstpage_parameter($_GET['firstpage']);
    // if we are already logged, go directly to course
    if (api_user_is_login()) {
        echo "<script type='text/javascript'>self.location.href='index.php?firstpage=" . Security::remove_XSS($_GET['firstpage']) . "'</script>";
    }
} else {
    api_delete_firstpage_parameter();
}
$controller->tpl->display_two_col_template();
 /**
  * Return a link to go to the course, validating the visibility of the
  * course and the user status
  * @param int User ID
  * @param array Course details array
  * @param array  List of courses to which the user is subscribed (if not provided, will be generated)
  * @return mixed 'enter' for a link to go to the course or 'register' for a link to subscribe, or false if no access
  */
 static function get_access_link_by_user($uid, $course, $user_courses = array())
 {
     if (empty($uid) or empty($course)) {
         return false;
     }
     if (empty($user_courses)) {
         // get the array of courses to which the user is subscribed
         $user_courses = CourseManager::get_courses_list_by_user_id($uid);
         foreach ($user_courses as $k => $v) {
             $user_courses[$k] = $v['real_id'];
         }
     }
     if (!isset($course['real_id']) && empty($course['real_id'])) {
         $course = api_get_course_info($course['code']);
     }
     if ($course['visibility'] == COURSE_VISIBILITY_HIDDEN) {
         return array();
     }
     $is_admin = api_is_platform_admin_by_id($uid);
     $options = array();
     // Register button
     if (!api_is_anonymous($uid) && ($course['visibility'] == COURSE_VISIBILITY_OPEN_WORLD || $course['visibility'] == COURSE_VISIBILITY_OPEN_PLATFORM) && $course['subscribe'] == SUBSCRIBE_ALLOWED && (!in_array($course['real_id'], $user_courses) || empty($user_courses))) {
         $options[] = 'register';
     }
     // Go To Course button (only if admin, if course public or if student already subscribed)
     if ($is_admin || $course['visibility'] == COURSE_VISIBILITY_OPEN_WORLD && empty($course['registration_code']) || api_user_is_login($uid) && $course['visibility'] == COURSE_VISIBILITY_OPEN_PLATFORM && empty($course['registration_code']) || in_array($course['real_id'], $user_courses) && $course['visibility'] != COURSE_VISIBILITY_CLOSED) {
         $options[] = 'enter';
     }
     if ($is_admin || $course['visibility'] == COURSE_VISIBILITY_OPEN_WORLD && empty($course['registration_code']) || api_user_is_login($uid) && $course['visibility'] == COURSE_VISIBILITY_OPEN_PLATFORM && empty($course['registration_code']) || in_array($course['real_id'], $user_courses) && $course['visibility'] != COURSE_VISIBILITY_CLOSED) {
         $options[] = 'enter';
     }
     if ($course['visibility'] != COURSE_VISIBILITY_HIDDEN && empty($course['registration_code']) && $course['unsubscribe'] == UNSUBSCRIBE_ALLOWED && api_user_is_login($uid) && in_array($course['real_id'], $user_courses)) {
         $options[] = 'unsubscribe';
     }
     return $options;
 }
        // We are in teacherview here
        $_SESSION['studentview'] = 'teacherview';
    }
}
if (isset($_cid)) {
    $tbl_course = Database::get_main_table(TABLE_MAIN_COURSE);
    $time = api_get_utc_datetime();
    $sql = "UPDATE {$tbl_course} SET last_visit = '{$time}' WHERE code='{$_cid}'";
    Database::query($sql);
}
// direct login to course
if (isset($cas_login) && $cas_login && exist_firstpage_parameter() || $logging_in && exist_firstpage_parameter()) {
    $redirectCourseDir = api_get_firstpage_parameter();
    api_delete_firstpage_parameter();
    // delete the cookie
    if (!isset($_SESSION['request_uri'])) {
        if (CourseManager::get_course_id_from_path($redirectCourseDir)) {
            $_SESSION['noredirection'] = false;
            $_SESSION['request_uri'] = api_get_path(WEB_COURSE_PATH) . $redirectCourseDir . '/';
        }
    }
} elseif (api_user_is_login() && exist_firstpage_parameter()) {
    $redirectCourseDir = api_get_firstpage_parameter();
    api_delete_firstpage_parameter();
    // delete the cookie
    if (CourseManager::get_course_id_from_path($redirectCourseDir)) {
        $_SESSION['noredirection'] = false;
        $_SESSION['request_uri'] = api_get_path(WEB_COURSE_PATH) . $redirectCourseDir . '/';
    }
}
Redirect::session_request_uri($logging_in, $user_id);
Exemple #5
0
        }
    */
    if ($user_list) {
        if (!isset($_GET['id'])) {
            if (api_get_setting('allow_social_tool') == 'true') {
                if (!api_is_anonymous()) {
                    $query = isset($_GET['q']) ? $_GET['q'] : null;
                    $social_search .= UserManager::get_search_form($query);
                }
            }
            //$social_right_content .= SocialManager::display_user_list($user_list);
        }
    }
    $whoisonline_list .= SocialManager::display_user_list($user_list);
    if (isset($_GET['id'])) {
        if (api_get_setting('allow_social_tool') == 'true' && api_user_is_login()) {
            header("Location: " . api_get_path(WEB_CODE_PATH) . "social/profile.php?u=" . intval($_GET['id']));
            exit;
        } else {
            $social_right_content .= SocialManager::display_individual_user($_GET['id']);
        }
    }
} else {
    api_not_allowed();
    exit;
}
$tpl = new Template(get_lang('UsersOnLineList'));
if (api_get_setting('allow_social_tool') == 'true' && !api_is_anonymous()) {
    $tpl->assign('whoisonline', $whoisonline_list);
    $tpl->assign('social_search', $social_search);
    $social_layout = $tpl->get_template('social/whoisonline.tpl');
Exemple #6
0
 /**
  * Set user parameters
  */
 private function setUserParameters()
 {
     $user_info = array();
     $user_info['logged'] = 0;
     $this->user_is_logged_in = false;
     $user_info = isset($this->app['current_user']) ? $this->app['current_user'] : null;
     if (api_user_is_login() && !empty($user_info)) {
         $user_info['logged'] = 1;
         $user_info['is_admin'] = 0;
         if (api_is_platform_admin()) {
             $user_info['is_admin'] = 1;
         }
         $new_messages = MessageManager::get_new_messages();
         $user_info['messages_count'] = $new_messages != 0 ? Display::label($new_messages, 'warning') : null;
         $this->user_is_logged_in = true;
     }
     //Setting the $_u array that could be use in any template
     $this->assign('_u', $user_info);
 }