You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							79 lines
						
					
					
						
							2.5 KiB
						
					
					
				
			
		
		
	
	
							79 lines
						
					
					
						
							2.5 KiB
						
					
					
				<?php
 | 
						|
/* For licensing terms, see /license.txt */
 | 
						|
 | 
						|
/**
 | 
						|
 * Class UserForm
 | 
						|
 * Extends formvalidator with import and export forms
 | 
						|
 * @author Stijn Konings
 | 
						|
 * @package chamilo.gradebook
 | 
						|
 */
 | 
						|
class UserForm extends FormValidator
 | 
						|
{
 | 
						|
	const TYPE_USER_INFO= 1;
 | 
						|
	const TYPE_SIMPLE_SEARCH = 3;
 | 
						|
	/**
 | 
						|
	 * Builds a form containing form items based on a given parameter
 | 
						|
	 * @param int form_type 1 = user_info
 | 
						|
	 * @param user array
 | 
						|
	 * @param string form name
 | 
						|
	 * @param method
 | 
						|
	 * @param action
 | 
						|
	 */
 | 
						|
	public function UserForm($form_type, $user, $form_name, $method= 'post', $action= null)
 | 
						|
	{
 | 
						|
		parent :: __construct($form_name, $method, $action);
 | 
						|
		$this->form_type= $form_type;
 | 
						|
		if (isset ($user)) {
 | 
						|
			$this->user_info= $user;
 | 
						|
		}
 | 
						|
		if (isset ($result_object)) {
 | 
						|
			$this->result_object= $result_object;
 | 
						|
		}
 | 
						|
		if ($this->form_type == self :: TYPE_USER_INFO) {
 | 
						|
			$this->build_user_info_form();
 | 
						|
		}
 | 
						|
		elseif ($this->form_type == self :: TYPE_SIMPLE_SEARCH) {
 | 
						|
			$this->build_simple_search();
 | 
						|
		}
 | 
						|
		$this->setDefaults();
 | 
						|
	}
 | 
						|
 | 
						|
	protected function build_simple_search()
 | 
						|
	{
 | 
						|
		if (isset($_GET['search']) && (!empty($_GET['search']))) {
 | 
						|
			$this->setDefaults(array(
 | 
						|
				'keyword' => Security::remove_XSS($_GET['search'])
 | 
						|
			));
 | 
						|
		}
 | 
						|
		$renderer =& $this->defaultRenderer();
 | 
						|
		$renderer->setCustomElementTemplate('<span>{element}</span> ');
 | 
						|
		$this->addElement('text','keyword','');
 | 
						|
		$this->addButtonSearch(get_lang('Search'), 'submit');
 | 
						|
	}
 | 
						|
 | 
						|
	protected function build_user_info_form()
 | 
						|
	{
 | 
						|
		if (api_is_western_name_order()) {
 | 
						|
			$this->addElement('static', 'fname', get_lang('FirstName'), $this->user_info['firstname']);
 | 
						|
			$this->addElement('static', 'lname', get_lang('LastName'), $this->user_info['lastname']);
 | 
						|
		} else {
 | 
						|
			$this->addElement('static', 'lname', get_lang('LastName'), $this->user_info['lastname']);
 | 
						|
			$this->addElement('static', 'fname', get_lang('FirstName'), $this->user_info['firstname']);
 | 
						|
		}
 | 
						|
		$this->addElement('static', 'uname', get_lang('UserName'), $this->user_info['username']);
 | 
						|
		$this->addElement('static', 'email', get_lang('Email'), '<a href="mailto:' . $this->user_info['email'] . '">' . $this->user_info['email'] . '</a>');
 | 
						|
		$this->addElement('static', 'ofcode', get_lang('OfficialCode'), $this->user_info['official_code']);
 | 
						|
		$this->addElement('static', 'phone', get_lang('Phone'), $this->user_info['phone']);
 | 
						|
		$this->addButtonSave(get_lang('Back'), 'submit');
 | 
						|
	}
 | 
						|
 | 
						|
	function display()
 | 
						|
	{
 | 
						|
		parent :: display();
 | 
						|
	}
 | 
						|
 | 
						|
	function setDefaults($defaults= array(), $filter = null)
 | 
						|
	{
 | 
						|
		parent :: setDefaults($defaults, $filter);
 | 
						|
	}
 | 
						|
}
 | 
						|
 |