Set course password - refs #7094
	
		
	
				
					
				
			
							parent
							
								
									3a76a7a7c5
								
							
						
					
					
						commit
						67bd8a0a87
					
				@ -0,0 +1,59 @@ | 
				
			||||
<?php | 
				
			||||
/* For license terms, see /license.txt */ | 
				
			||||
/** | 
				
			||||
 * This page aims at requesting a password from a user to access a course | 
				
			||||
 * protected by password. If the password matches the course password, we  | 
				
			||||
 * store the fact that user can access it during its session | 
				
			||||
 */ | 
				
			||||
/** | 
				
			||||
 * Initializing context | 
				
			||||
 */ | 
				
			||||
use \ChamiloSession as Session; | 
				
			||||
 | 
				
			||||
// Language files that need to be included | 
				
			||||
$language_file = array('courses'); | 
				
			||||
 | 
				
			||||
$cidReset = true; | 
				
			||||
require_once '../inc/global.inc.php'; | 
				
			||||
$this_section = SECTION_COURSES; | 
				
			||||
$course_id = isset($_GET['course_id'])  ? intval($_GET['course_id']) : null; | 
				
			||||
$session_id = isset($_GET['session_id']) ? intval($_GET['session_id']) : null; | 
				
			||||
$user_id = api_get_user_id(); | 
				
			||||
 | 
				
			||||
/** | 
				
			||||
 * Security check | 
				
			||||
 */ | 
				
			||||
if (empty($course_id)) { | 
				
			||||
    api_not_allowed(); | 
				
			||||
} | 
				
			||||
/** | 
				
			||||
 * Code | 
				
			||||
 */ | 
				
			||||
$course_info = CourseManager::get_course_information_by_id($course_id); | 
				
			||||
 | 
				
			||||
$tpl = new Template(null); | 
				
			||||
 | 
				
			||||
// Build the form | 
				
			||||
$form = new FormValidator('set_temp_password', 'POST', api_get_self().'?course_id='.$course_id.'&session_id='.$session_id); | 
				
			||||
$form->addElement('header', get_lang('CourseRequiresPassword')); | 
				
			||||
$form->addElement('hidden', 'course_id', $course_id); | 
				
			||||
$form->addElement('hidden', 'session_id', $session_id); | 
				
			||||
$form->addElement('password', 'course_password', null, get_lang('Password')); | 
				
			||||
$form->addElement('style_submit_button', null, get_lang('Accept'), 'class="save"'); | 
				
			||||
 | 
				
			||||
if ($form->validate()) { | 
				
			||||
    $form_values = $form->exportValues(); | 
				
			||||
    if ($form_values['course_password'] === $course_info['registration_code']) { | 
				
			||||
        Session::write('course_password_'.$course_info['real_id'], true); | 
				
			||||
        header('Location: '.api_get_course_url($course_info['code'], $session_id)); | 
				
			||||
        exit; | 
				
			||||
    } else { | 
				
			||||
        $tpl->assign('error_message', Display::display_error_message(get_lang('CourseRegistrationCodeIncorrect'), true, true)); | 
				
			||||
    } | 
				
			||||
} | 
				
			||||
 | 
				
			||||
$tpl->assign('form', $form->toHtml()); | 
				
			||||
$content = $tpl->get_template('auth/set_temp_password.tpl'); | 
				
			||||
$tpl->assign('content', $tpl->fetch($content)); | 
				
			||||
$tpl->display_one_col_template(); | 
				
			||||
 | 
				
			||||
@ -0,0 +1,4 @@ | 
				
			||||
{% if error_message %} | 
				
			||||
{{ error_message }} | 
				
			||||
{% endif %} | 
				
			||||
{{form}} | 
				
			||||
					Loading…
					
					
				
		Reference in new issue