[svn r14669] Layout Improvements in User tool (see FS#2379)

skala
Julio Montoya 18 years ago
parent 789db84a0f
commit 04a0fa52e4
  1. 138
      main/user/subscribe_user.php
  2. 61
      main/user/user.php

@ -21,7 +21,7 @@
See the GNU General Public License for more details.
Contact address: Dokeos, 44 rue des palais, B-1030 Brussels, Belgium
Contact address: Dokeos, rue du Corbeau, 108, B-1030 Brussels, Belgium
Mail: info@dokeos.com
==============================================================================
*/
@ -53,15 +53,12 @@ require_once (api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php'
==============================================================================
*/
/*
-----------------------------------------------------------
Header
-----------------------------------------------------------
*/
$tool_name = get_lang("SubscribeUserToCourse");
//extra entries in breadcrumb
$interbreadcrumb[] = array ("url" => "user.php", "name" => get_lang("Users"));
@ -75,31 +72,130 @@ api_display_tool_title($tool_name);
==============================================================================
*/
$list_register_user='';
$list_not_register_user='';
if (isset ($_REQUEST['register']))
{
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher'){
CourseManager :: subscribe_user($_REQUEST['user_id'], $_course['sysCode'],COURSEMANAGER);
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher')
{
$result_simple_sub=CourseManager :: subscribe_user(Database::escape_string($_REQUEST['user_id']), $_course['sysCode'],COURSEMANAGER);
}
else
{
$result_simple_sub=CourseManager :: subscribe_user(Database::escape_string($_REQUEST['user_id']), $_course['sysCode']);
}
$user_id_temp=$_SESSION['session_user_id'];
if (is_array($user_id_temp))
{
for ($j=0; $j<count($user_id_temp);$j++)
{
if ($user_id_temp[$j]==$_GET['user_id'])
{
if ($result_simple_sub)
{
Display::display_confirmation_message($_SESSION['session_user_name'][$j].' '.get_lang('langAddedToCourse'));
}
else
{
Display::display_error_message($_SESSION['session_user_name'][$j].' '.get_lang('langNotAddedToCourse'));
}
}
else{
CourseManager :: subscribe_user($_REQUEST['user_id'], $_course['sysCode']);
}
unset($_SESSION['session_user_id']);
unset($_SESSION['session_user_name']);
}
}
if (isset ($_POST['action']))
{
switch ($_POST['action'])
{
case 'subscribe' :
if (is_array($_POST['user']))
{
foreach ($_POST['user'] as $index => $user_id)
{
CourseManager :: subscribe_user($user_id, $_course['sysCode']);
$user_id=Database::escape_string($user_id);
$is_suscribe[]=CourseManager :: subscribe_user($user_id, $_course['sysCode']);
$is_suscribe_user_id[]=$user_id;
}
}
$user_id_temp=$_SESSION['session_user_id'];
$user_name_temp=$_SESSION['session_user_name'];
unset($_SESSION['session_user_id']);
unset($_SESSION['session_user_name']);
$counter=0;
$$is_suscribe_counter=count($is_suscribe_user_id);
$list_register_user='';
if ($$is_suscribe_counter!=1)
{
for ($i=0; $i<$$is_suscribe_counter;$i++)
{
for ($j=0; $j<count($user_id_temp);$j++)
{
if ($is_suscribe_user_id[$i]==$user_id_temp[$j])
{
if ($is_suscribe[$i])
{
$list_register_user.=" - ".$user_name_temp[$j].'<br/>';
$counter++;
}
else
{
$list_not_register_user.=" - ".$user_name_temp[$j].'<br/>';
}
}
}
}
}
else
{
$list_register_user=$user_name_temp[0]; // only 1 user register
}
if (!empty($list_register_user))
{
if ($$is_suscribe_counter==1)
{
$register_user_message=$list_register_user.' '.get_lang('langAddedToCourse');
Display::display_confirmation_message($register_user_message,false);
}
else
{
$register_user_message='<br />'.get_lang('UsersRegistered').'<br/><br />'.$list_register_user;
Display::display_confirmation_message($register_user_message,false);
}
}
if (!empty($list_not_register_user))
{
$not_register_user_message='<br />'.get_lang('UsersNotRegistered').'<br/><br /><br />'.$list_not_register_user;
Display::display_error_message($not_register_user_message,false);
}
break;
}
}
if (!empty($_SESSION['session_user_id']))
{
unset($_SESSION['session_user_id']);
}
if (!empty($_SESSION['session_user_name']))
{
unset($_SESSION['session_user_name']);
}
/*
-----------------------------------------------------------
SHOW LIST OF USERS
@ -113,20 +209,23 @@ function get_number_of_users()
{
$user_table = Database :: get_main_table(TABLE_MAIN_USER);
$course_user_table = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher'){
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher')
{
$sql = "SELECT u.user_id
FROM $user_table u
LEFT JOIN $course_user_table cu on u.user_id = cu.user_id and course_code='".$_SESSION['_course']['id']."'
WHERE cu.user_id IS NULL AND u.status='1'
";
}
else{
else
{
$sql = "SELECT u.user_id
FROM $user_table u
LEFT JOIN $course_user_table cu on u.user_id = cu.user_id and course_code='".$_SESSION['_course']['id']."'
WHERE cu.user_id IS NULL AND u.status='5'
";
}
if (isset ($_REQUEST['keyword']))
{
$keyword = mysql_real_escape_string($_REQUEST['keyword']);
@ -144,7 +243,8 @@ function get_user_data($from, $number_of_items, $column, $direction)
$user_table = Database :: get_main_table(TABLE_MAIN_USER);
$course_user_table = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher'){
if(isset($_REQUEST['type']) && $_REQUEST['type']=='teacher')
{
$sql = "SELECT
u.user_id AS col0,
u.official_code AS col1,
@ -157,7 +257,8 @@ function get_user_data($from, $number_of_items, $column, $direction)
WHERE u.status='1' and cu.user_id IS NULL
";
}
else{
else
{
$sql = "SELECT
u.user_id AS col0,
u.official_code AS col1,
@ -182,6 +283,8 @@ function get_user_data($from, $number_of_items, $column, $direction)
while ($user = mysql_fetch_row($res))
{
$users[] = $user;
$_SESSION['session_user_id'][]=$user[0];
$_SESSION['session_user_name'][]=$user[3].' '.$user[2];
}
return $users;
}
@ -232,6 +335,13 @@ $table->set_form_actions(array ('subscribe' => get_lang('reg')), 'user');
$form->display();
echo '<br />';
$table->display();
if ( !empty($_POST['keyword']))
{
$keyword_name=Security::remove_XSS($_POST['keyword']);
echo '<br/>'.get_lang('SearchResultsFor').' <span style="font-style: italic ;"> '.$keyword_name.' </span><br>';
}
/*
==============================================================================
FOOTER

@ -3,7 +3,7 @@
==============================================================================
Dokeos - elearning and course management software
Copyright (c) 2004 Dokeos S.A.
Copyright (c) 2004-2008 Dokeos S.A.
Copyright (c) 2003 Ghent University (UGent)
Copyright (c) 2001 Universite catholique de Louvain (UCL)
Copyright (c) various contributors
@ -18,7 +18,8 @@
See the GNU General Public License for more details.
Contact: Dokeos, 181 rue Royale, B-1000 Brussels, Belgium, info@dokeos.com
Contact address: Dokeos, rue du Corbeau, 108, B-1030 Brussels, Belgium
Mail: info@dokeos.com
==============================================================================
*/
/**
@ -233,8 +234,12 @@ function show_users_in_virtual_courses()
//if(xxx['tutor'] == '0') $tutor = " - ";
//else $tutor = get_lang("Tutor");
$full_name = $lastname.", ".$firstname;
if( $lastname == "" || $firstname == '')
{
$full_name = $loginname;
}
$user_info_hyperlink = "<a href=\"userInfo.php?".api_get_cidreq()."&origin=".$origin."&uInfo=".$user_id."&virtual_course=".$virtual_course["code"]."\">".$full_name."</a>";
$row = 0;
$table_row[$row ++] = $user_id;
@ -252,7 +257,8 @@ function show_users_in_virtual_courses()
}
}
if(!$is_allowed_in_course){
if(!$is_allowed_in_course)
{
api_not_allowed(true);
}
@ -415,14 +421,16 @@ function get_user_data($from, $number_of_items, $column, $direction)
$groups_name=GroupManager :: get_user_group_name($user_id);
if(api_is_allowed_to_edit()){
if(api_is_allowed_to_edit())
{
$temp=array();
$temp[] = $user_id;
$temp[] = $o_course_user['official_code'];
$temp[] = $o_course_user['lastname'];
$temp[] = $o_course_user['firstname'];
$temp[] = $o_course_user['lastname'];
$temp[] = $o_course_user['role'];
$temp[] = implode(', ',$groups_name); //Group
$temp[] = $o_course_user['official_code'];
if(isset($o_course_user['tutor_id']) && $o_course_user['tutor_id']==1)
$temp[] = get_lang('Tutor');
@ -435,19 +443,21 @@ function get_user_data($from, $number_of_items, $column, $direction)
$temp[] = $user_id;
}
else{
else
{
$temp=array();
$temp[] = $o_course_user['official_code'];
$temp[] = $o_course_user['lastname'];
$temp[] = $o_course_user['firstname'];
$temp[] = $o_course_user['lastname'];
$temp[] = $o_course_user['role'];
$temp[] = implode(', ',$groups_name);//Group
$temp[] = $o_course_user['official_code'];
$temp[] = $user_id;
}
$a_users[$user_id] = $temp;
}
}
usort($a_users, 'sort_users');
return $a_users;
}
@ -466,25 +476,28 @@ function modify_filter($user_id)
// info
if(!api_is_anonymous())
{
$result .= '<a href="userInfo.php?'.api_get_cidreq().'&origin='.$origin.'&amp;uInfo='.$user_id.'"><img border="0" alt="'.get_lang('Info').'" src="../img/user_info.gif" /></a>&nbsp;';
$result .= '<a href="userInfo.php?'.api_get_cidreq().'&origin='.$origin.'&amp;uInfo='.$user_id.'" title="'.get_lang('Info').'" ><img border="0" alt="'.get_lang('Info').'" src="../img/user_info.gif" /></a>&nbsp;';
}
if($is_allowed_to_track)
{
$result .= '<a href="../mySpace/myStudents.php?'.api_get_cidreq().'&student='.$user_id.'&amp;details=true&amp;course='.$_course['id'].'&amp;origin=user_course"><img border="0" alt="'.get_lang('Tracking').'" src="../img/statistics.gif" /></a>&nbsp;';
$result .= '<a href="../mySpace/myStudents.php?'.api_get_cidreq().'&student='.$user_id.'&amp;details=true&amp;course='.$_course['id'].'&amp;origin=user_course" title="'.get_lang('Tracking').'" ><img border="0" alt="'.get_lang('Tracking').'" src="../img/statistics.gif" /></a>&nbsp;';
}
if(api_is_allowed_to_edit())
{
// edit
$result .= '<a href="userInfo.php?'.api_get_cidreq().'&origin='.$origin.'&amp;editMainUserInfo='.$user_id.'"><img border="0" alt="'.get_lang('Edit').'" src="../img/edit.gif" /></a>&nbsp;';
$result .= '<a href="userInfo.php?'.api_get_cidreq().'&origin='.$origin.'&amp;editMainUserInfo='.$user_id.'" title="'.get_lang('Edit').'" ><img border="0" alt="'.get_lang('Edit').'" src="../img/edit.gif" /></a>&nbsp;';
// unregister
if( $user_id != $_user['user_id'])
{
$result .= '<a href="'.api_get_self().'?'.api_get_cidreq().'&unregister=yes&amp;user_id='.$user_id.'" onclick="javascript:if(!confirm(\''.addslashes(htmlentities(get_lang('ConfirmYourChoice'),ENT_QUOTES,$charset)).'\')) return false;"><img border="0" alt="'.get_lang("Unreg").'" src="../img/delete.gif"/></a>';
$result .= '<a href="'.api_get_self().'?'.api_get_cidreq().'&unregister=yes&amp;user_id='.$user_id.'" title="'.get_lang('Unreg').' " onclick="javascript:if(!confirm(\''.addslashes(htmlentities(get_lang('ConfirmYourChoice'),ENT_QUOTES,$charset)).'\')) return false;"><img border="0" alt="'.get_lang("Unreg").'" src="../img/delete.gif"/></a>';
}
else
{
$result .= '<img border="0" alt="'.get_lang("Unreg").'" src="../img/delete_na.gif"/>';
}
}
$result.="</div>";
return $result;
@ -496,15 +509,18 @@ $table = new SortableTable('users', 'get_number_of_users', 'get_user_data',$defa
$parameters['keyword'] = $_GET['keyword'];
$table->set_additional_parameters($parameters);
$header_nr = 0;
if( api_is_allowed_to_edit())
if( api_is_allowed_to_edit())
{
$table->set_header($header_nr++, '', false);
}
$table->set_header($header_nr++, get_lang('OfficialCode'));
$table->set_header($header_nr++, get_lang('LastName'));
$table->set_header($header_nr++, get_lang('FirstName'));
$table->set_header($header_nr++, get_lang('LastName'));
$table->set_header($header_nr++, get_lang('Description'));
$table->set_header($header_nr++, get_lang('GroupSingle'),false);
$table->set_header($header_nr++, get_lang('OfficialCode'));
if( api_is_allowed_to_edit())
{
$table->set_header($header_nr++, get_lang('Tutor'));
@ -521,16 +537,23 @@ $table->set_column_filter($header_nr-1,'modify_filter');
}
// Build search-form
$form = new FormValidator('search_user', 'get','','',null,false);
$renderer = & $form->defaultRenderer();
$renderer->setElementTemplate('<span>{element}</span> ');
$form->add_textfield('keyword', '', false);
$form->addElement('submit', 'submit', get_lang('SearchButton'));
$form->display();
echo '<br />';
$table->display();
if( get_setting('allow_user_headings') == 'true' && $is_courseAdmin && api_is_allowed_to_edit() && $origin != 'learnpath') // only course administrators see this line
if ( !empty($_GET['keyword']) && !empty($_GET['submit']) )
{
$keyword_name=Security::remove_XSS($_GET['keyword']);
echo '<br/>'.get_lang('SearchResultsFor').' <span style="font-style: italic ;"> '.$keyword_name.' </span><br>';
}
if( get_setting('allow_user_headings') == 'true' && $is_courseAdmin && api_is_allowed_to_edit() && $origin != 'learnpath') // only course administrators see this line
{
echo "<div align=\"right\">", "<form method=\"post\" action=\"userInfo.php\">", get_lang("CourseAdministratorOnly"), " : ", "<input type=\"submit\" name=\"viewDefList\" value=\"".get_lang("DefineHeadings")."\" />", "</form>", "</div>\n";
}

Loading…
Cancel
Save