[svn r17781] Adding some interface to the multiple url access, still working on this FS#3462

skala
Julio Montoya 17 years ago
parent 8a84dda172
commit 2985761f4d
  1. 221
      main/admin/access_url_add_users_to_url.php
  2. 130
      main/admin/access_url_edit.php
  3. 177
      main/admin/access_urls.php
  4. 5
      main/admin/add_users_to_session.php
  5. 193
      main/admin/index.php
  6. 22
      main/admin/session_list.php
  7. 3
      main/inc/lib/database.lib.php
  8. 260
      main/inc/lib/urlmanager.lib.php
  9. 12
      main/inc/lib/usermanager.lib.php

@ -0,0 +1,221 @@
<?php
/*
==============================================================================
Dokeos - elearning and course management software
Copyright (c) 2009 Dokeos SPRL
Copyright (c) 2009 Julio Montoya Armas <gugli100@gmail.com>
For a full list of contributors, see "credits.txt".
The full license can be read in "license.txt".
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
See the GNU General Public License for more details.
Contact address: Dokeos, 44 rue des palais, B-1030 Brussels, Belgium
Mail: info@dokeos.com
==============================================================================
*/
/**
==============================================================================
* This script allows platform admins to add users to urls.
* It displays a list of users and a list of courses;
* you can select multiple users and courses and then click on
* @package dokeos.admin
==============================================================================
*/
// name of the language file that needs to be included
$language_file = 'admin';
$cidReset = true;
require ('../inc/global.inc.php');
$this_section=SECTION_PLATFORM_ADMIN;
require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
api_protect_admin_script();
if (!$_configuration['multiple_access_urls'])
header('Location: index.php');
/*
-----------------------------------------------------------
Global constants and variables
-----------------------------------------------------------
*/
$users = $_GET['users'];
$form_sent = 0;
$first_letter_user = '';
$first_letter_course = '';
$courses = array ();
$url_list = array();
$users = array();
$tbl_access_url_rel_user = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$tbl_access_url = Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$tbl_user = Database :: get_main_table(TABLE_MAIN_USER);
/*
-----------------------------------------------------------
Header
-----------------------------------------------------------
*/
$tool_name = get_lang('AddUsersToURL');
$interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin'));
$interbreadcrumb[] = array ('url' => 'access_urls.php', 'name' => get_lang('MultipleAccessURLs'));
/*
==============================================================================
MAIN CODE
==============================================================================
*/
/*
-----------------------------------------------------------
React on POSTed request
-----------------------------------------------------------
*/
Display :: display_header($tool_name);
//api_display_tool_title($tool_name);
if ($_POST['formSent']) {
$form_sent = $_POST['formSent'];
$users = is_array($_POST['UserList']) ? $_POST['UserList'] : array() ;
$url_list = is_array($_POST['URLList']) ? $_POST['URLList'] : array() ;
$first_letter_user = $_POST['firstLetterUser'];
//$first_letter_course = $_POST['firstLetterCourse'];
foreach($users as $key => $value) {
$users[$key] = intval($value);
}
if ($form_sent == 1)
{
if ( count($users) == 0 || count($url_list) == 0) {
Display :: display_error_message(get_lang('AtLeastOneUserAndOneURL'));
//header('Location: access_urls.php?action=show_message&message='.get_lang('AtLeastOneUserAndOneURL'));
} else {
UrlManager::add_users_to_urls($users,$url_list);
Display :: display_confirmation_message(get_lang('UsersBelongURL'));
//header('Location: access_urls.php?action=show_message&message='.get_lang('UsersBelongURL'));
}
}
}
/*
-----------------------------------------------------------
Display GUI
-----------------------------------------------------------
*/
if(empty($first_letter_user))
{
$sql = "SELECT count(*) as nb_users FROM $tbl_user";
$result = api_sql_query($sql, __FILE__, __LINE__);
$num_row = Database::fetch_array($result);
if($num_row['nb_users']>1000)
{//if there are too much users to gracefully handle with the HTML select list,
// assign a default filter on users names
$first_letter_user = 'A';
}
unset($result);
}
$sql = "SELECT user_id,lastname,firstname,username FROM $tbl_user WHERE lastname LIKE '".$first_letter_user."%' ORDER BY ". (count($users) > 0 ? "(user_id IN(".implode(',', $users).")) DESC," : "")." lastname";
$result = api_sql_query($sql, __FILE__, __LINE__);
$db_users = api_store_result($result);
unset($result);
$sql = "SELECT id, url FROM $tbl_access_url WHERE active=1 ORDER BY url";
$result = api_sql_query($sql, __FILE__, __LINE__);
$db_urls = api_store_result($result);
unset($result);
?>
<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>" style="margin:0px;">
<input type="hidden" name="formSent" value="1"/>
<table border="0" cellpadding="5" cellspacing="0" width="100%">
<tr>
<td width="40%" align="center">
<b><?php echo get_lang('UserList'); ?></b>
<br/><br/>
<?php echo get_lang('FirstLetterUser'); ?> :
<select name="firstLetterUser" onchange="javascript:document.formulaire.formSent.value='2'; document.formulaire.submit();">
<option value="">--</option>
<?php
echo Display :: get_alphabet_options($first_letter_user);
?>
</select>
</td>
<td width="20%">&nbsp;</td>
<td width="40%" align="center">
<b><?php echo get_lang('URLList'); ?> :</b>
</td>
<?php
//
/*
<td width="20%">&nbsp;</td>
<td width="40%" align="center">
<b><?php echo get_lang('URLList'); ?> :</b>
<br/><br/>
<?php echo get_lang('FirstLetterCourse'); ?> :
<select name="firstLetterCourse" onchange="javascript:document.formulaire.formSent.value='2'; document.formulaire.submit();">
<option value="">--</option>
<?php
echo Display :: get_alphabet_options($first_letter_course);
?>
</select>
</td>
*/
?>
</tr>
<tr>
<td width="40%" align="center">
<select name="UserList[]" multiple="multiple" size="20" style="width:230px;">
<?php
foreach ($db_users as $user)
{
?>
<option value="<?php echo $user['user_id']; ?>" <?php if(in_array($user['user_id'],$users)) echo 'selected="selected"'; ?>><?php echo $user['lastname'].' '.$user['firstname'].' ('.$user['username'].')'; ?></option>
<?php
}
?>
</select>
</td>
<td width="20%" valign="middle" align="center">
<input type="submit" value="<?php echo get_lang('AddToThatURL'); ?> &gt;&gt;"/>
</td>
<td width="40%" align="center">
<select name="URLList[]" multiple="multiple" size="20" style="width:230px;">
<?php
foreach ($db_urls as $url_obj)
{
?>
<option value="<?php echo $url_obj['id']; ?>" <?php if(in_array($url_obj['id'],$url_list)) echo 'selected="selected"'; ?>><?php echo $url_obj['url']; ?></option>
<?php
}
?>
</select>
</td>
</tr>
</table>
</form>
<?php
/*
==============================================================================
FOOTER
==============================================================================
*/
Display :: display_footer();
?>

@ -3,8 +3,8 @@
============================================================================== ==============================================================================
Dokeos - elearning and course management software Dokeos - elearning and course management software
Copyright (c) 2008 Dokeos SPRL Copyright (c) 2009 Dokeos SPRL
Copyright (c) 2008 Julio Montoya Copyright (c) 2009 Julio Montoya Armas <gugli100@gmail.com>
For a full list of contributors, see "credits.txt". For a full list of contributors, see "credits.txt".
The full license can be read in "license.txt". The full license can be read in "license.txt".
@ -20,103 +20,71 @@
Mail: info@dokeos.com Mail: info@dokeos.com
============================================================================== ==============================================================================
*/ */
// name of the language file that needs to be included /**
==============================================================================
* @package dokeos.admin
==============================================================================
*/
$language_file = 'admin'; $language_file = 'admin';
$cidReset = true; $cidReset = true;
require ('../inc/global.inc.php'); require ('../inc/global.inc.php');
$this_section = SECTION_PLATFORM_ADMIN; $this_section = SECTION_PLATFORM_ADMIN;
api_protect_admin_script(); api_protect_admin_script();
if (!$_configuration['multiple_access_urls'])
header('Location: index.php');
require_once (api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php'); require_once (api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php');
require_once (api_get_path(LIBRARY_PATH).'security.lib.php'); require_once (api_get_path(LIBRARY_PATH).'security.lib.php');
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL); require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
// Create the form // Create the form
$form = new FormValidator('add_url'); $form = new FormValidator('add_url');
$form->addElement('text','url',get_lang('URL'),array('size'=>'30')); if( $form->validate()) {
$form->addElement('static', null, null, get_lang('Example'));
$form->addRule('url', get_lang('ThisFieldIsRequired'), 'required');
$form->addRule('url', '', 'maxlength',254);
$form->addElement('textarea','description',get_lang('Description'));
$form->addElement('checkbox','active',get_lang('Active'));
$form->addRule('checkbox', get_lang('ThisFieldIsRequired'), 'required');
$defaults['url']='http://';
$form->setDefaults($defaults);
if( $form->validate())
{
$check = Security::check_token('post'); $check = Security::check_token('post');
if($check) if($check) {
{
$url_array = $form->getSubmitValues(); $url_array = $form->getSubmitValues();
$url = Security::remove_XSS($url_array['url']); $url = Security::remove_XSS($url_array['url']);
$description = Security::remove_XSS($url_array['description']); $description = Security::remove_XSS($url_array['description']);
$active = intval($url_array['active']); $active = intval($url_array['active']);
$tms = time();
$url_id = $url_array['id']; $url_id = $url_array['id'];
$url_to_go='access_urls.php'; $url_to_go='access_urls.php';
if ($url_id!='') {
if ($url_id!='') //we can't change the status of the url with id=1
{ if ($url_id==1)
$sql = "UPDATE $access_url_table $active=1;
SET url = '".Database::escape_string($url)."', UrlManager::udpate($url_id, $url, $description, $active);
description = '".Database::escape_string($description)."',
active = '".Database::escape_string($active)."',
created_by = '".Database::escape_string(api_get_user_id())."',
tms = FROM_UNIXTIME(".$tms.") WHERE id = '$url_id'";
api_sql_query($sql, __FILE__, __LINE__);
$url_to_go='access_urls.php'; $url_to_go='access_urls.php';
$message=get_lang('URLEdited'); $message=get_lang('URLEdited');
} } else {
else $num = UrlManager::url_exist($url);
{ if ($num == 0) {
$sql = "SELECT id FROM $access_url_table WHERE url = '$url' ";
$res = api_sql_query($sql,__FILE__,__LINE__);
$result = Database::fetch_array($res);
if (empty($result))
{
//checking url //checking url
if (substr($url,strlen($url)-1, strlen($url))=='/') if (substr($url,strlen($url)-1, strlen($url))=='/') {
{ UrlManager::add($url.'/', $description, $active);
//create
$sql = "INSERT INTO $access_url_table
SET url = '".Database::escape_string($url)."',
description = '".Database::escape_string($description)."',
active = '".Database::escape_string($active)."',
created_by = '".Database::escape_string(api_get_user_id())."',
tms = FROM_UNIXTIME(".$tms.")";
$result = api_sql_query($sql, __FILE__, __LINE__);
$message = get_lang('URLAdded'); $message = get_lang('URLAdded');
} else {
//create
UrlManager::add($url, $description, $active);
$message = get_lang('URLAdded');
} }
else $url_to_go='access_urls.php';
{ } else {
$message = get_lang('URLMustHaveFinalSlash');
}
$url_to_go='access_url_edit.php';
}
else
{
$url_to_go='access_url_edit.php'; $url_to_go='access_url_edit.php';
$message = get_lang('URLAlreadyAdded'); $message = get_lang('URLAlreadyAdded');
} }
Security::clear_token();
$tok = Security::get_token();
header('Location: '.$url_to_go.'?action=show_message&message='.urlencode($message).'&sec_token='.$tok);
exit();
} }
Security::clear_token();
$tok = Security::get_token();
header('Location: '.$url_to_go.'?action=show_message&message='.urlencode($message).'&sec_token='.$tok);
exit();
} }
} }
else else
{ {
if(isset($_POST['submit'])) if(isset($_POST['submit'])) {
{
Security::clear_token(); Security::clear_token();
} }
$token = Security::get_token(); $token = Security::get_token();
@ -124,18 +92,28 @@ else
$form->setConstants(array('sec_token' => $token)); $form->setConstants(array('sec_token' => $token));
} }
$form->addElement('text','url',get_lang('URL'),array('size'=>'30'));
$form->addElement('static', null, null, get_lang('MustHaveSlash'));
$form->addRule('url', get_lang('ThisFieldIsRequired'), 'required');
$form->addRule('url', '', 'maxlength',254);
$form->addElement('textarea','description',get_lang('Description'));
$form->addElement('checkbox','active',get_lang('Active'));
$form->addRule('checkbox', get_lang('ThisFieldIsRequired'), 'required');
$defaults['url']='http://';
$form->setDefaults($defaults);
$submit_name = get_lang('Add'); $submit_name = get_lang('Add');
if (isset($_GET['url_id'])) if (isset($_GET['url_id']))
{ {
$url_id = Database::escape_string($_GET['url_id']); $url_id = Database::escape_string($_GET['url_id']);
$sql = "SELECT id, url, description, active FROM $access_url_table WHERE id = '".$url_id."'"; $num_url_id = UrlManager::url_id_exist($url_id);
$res = api_sql_query($sql,__FILE__,__LINE__); if($num_url_id != 1)
if(mysql_num_rows($res) != 1)
{ {
header('Location: access_urls.php'); header('Location: access_urls.php');
exit; exit();
} }
$url_data = Database::fetch_array($res,'ASSOC'); $url_data = UrlManager::get_url_data_from_id($url_id);
$form->addElement('hidden','id',$url_data['id']); $form->addElement('hidden','id',$url_data['id']);
$form->setDefaults($url_data); $form->setDefaults($url_data);
$submit_name = get_lang('Edit'); $submit_name = get_lang('Edit');

@ -3,8 +3,8 @@
============================================================================== ==============================================================================
Dokeos - elearning and course management software Dokeos - elearning and course management software
Copyright (c) 2008 Dokeos SPRL Copyright (c) 2009 Dokeos SPRL
Copyright (c) 2008 Julio Montoya Copyright (c) 2009 Julio Montoya Armas <gugli100@gmail.com>
For a full list of contributors, see "credits.txt". For a full list of contributors, see "credits.txt".
The full license can be read in "license.txt". The full license can be read in "license.txt".
@ -25,11 +25,6 @@
* @package dokeos.admin * @package dokeos.admin
============================================================================== ==============================================================================
*/ */
/*
==============================================================================
INIT SECTION
==============================================================================
*/
// name of the language file that needs to be included // name of the language file that needs to be included
$language_file = 'admin'; $language_file = 'admin';
@ -48,51 +43,48 @@ Display :: display_header($tool_name);
require_once (api_get_path(LIBRARY_PATH).'sortabletable.class.php'); require_once (api_get_path(LIBRARY_PATH).'sortabletable.class.php');
require_once (api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php'); require_once (api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php');
require_once (api_get_path(LIBRARY_PATH).'security.lib.php'); require_once (api_get_path(LIBRARY_PATH).'security.lib.php');
require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
// Actions // Actions
if (isset ($_GET['action'])) if (isset ($_GET['action'])) {
{
$check = Security::check_token('get');
if ($check)
{
$url_id=Database::escape_string($_GET['url_id']);
switch ($_GET['action']) if ($_GET['action'] = 'show_message')
{ Display :: display_normal_message(Security::remove_XSS(stripslashes($_GET['message'])));
case 'show_message' :
Display :: display_normal_message(stripslashes($_GET['message'])); $check = Security::check_token('get');
break; if ($check) {
case 'delete_url' : $url_id=Database::escape_string($_GET['url_id']);
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL); switch ($_GET['action']) {
$sql= "DELETE FROM $access_url_table WHERE id = '$url_id'"; case 'delete_url' :
$result = api_sql_query($sql, __FILE__, __LINE__); $result = UrlManager::delete($url_id);
if ($result) if ($result) {
{ Display :: display_normal_message(get_lang('URLDeleted'));
Display :: display_normal_message(get_lang('URLDeleted')); } else {
} Display :: display_error_message(get_lang('CannotDeleteURL'));
else }
{ break;
Display :: display_error_message(get_lang('CannotDeleteURL')); case 'lock' :
} UrlManager::set_url_status('lock',$url_id);
break; Display :: display_normal_message(get_lang('URLInactivate'));
case 'lock' : break;
$message=lock_unlock_user('lock',$url_id); case 'unlock';
Display :: display_normal_message($message); UrlManager::set_url_status('unlock',$url_id);
break; Display :: display_normal_message(get_lang('URLActivate'));
case 'unlock'; break;
$message=lock_unlock_user('unlock',$url_id);
Display :: display_normal_message($message);
break;
} }
} }
Security::clear_token(); Security::clear_token();
} }
//<a href="'.api_get_path(WEB_CODE_PATH).'admin/access_url_edit_users_to_url.php">'.Display::return_icon('add_user_big.gif',get_lang('EditUsersToURL'),'').get_lang('EditUsersToURL').'</a>
echo '<div align="right"> echo '<div class="actions">';
<a href="'.api_get_path(WEB_CODE_PATH).'admin/access_url_edit.php">'.get_lang('AddUrl').'</a> echo '<div style="float:right;">
<a href="'.api_get_path(WEB_CODE_PATH).'admin/access_url_edit.php">'.Display::return_icon('view_more_stats.gif',get_lang('AddUrl'),'').get_lang('AddUrl').'</a>&nbsp;&nbsp;
<a href="'.api_get_path(WEB_CODE_PATH).'admin/access_url_add_users_to_url.php">'.Display::return_icon('add_user_big.gif',get_lang('AddUserToURL'),'').get_lang('AddUsersToURL').'</a>
</div><br />'; </div><br />';
echo '</div>';
$table = new SortableTable('urls', 'get_number_of_urls', 'get_url_data',2);
$table = new SortableTable('urls', 'url_count_mask', 'get_url_data_mask',2);
$parameters['sec_token'] = Security::get_token(); $parameters['sec_token'] = Security::get_token();
$table->set_additional_parameters($parameters); $table->set_additional_parameters($parameters);
$table->set_header(0, '', false); $table->set_header(0, '', false);
@ -100,99 +92,66 @@ $table->set_header(0, '', false);
$table->set_header(1, get_lang('URL')); $table->set_header(1, get_lang('URL'));
$table->set_header(2, get_lang('Description')); $table->set_header(2, get_lang('Description'));
$table->set_header(3, get_lang('Active')); $table->set_header(3, get_lang('Active'));
//$table->set_header(4, get_lang('Status'));
$table->set_header(4, get_lang('Modify')); $table->set_header(4, get_lang('Modify'));
$table->set_column_filter(3, 'active_filter'); $table->set_column_filter(3, 'active_filter');
//$table->set_column_filter(4, 'status_filter');
$table->set_column_filter(4, 'modify_filter'); $table->set_column_filter(4, 'modify_filter');
//$table->set_form_actions(array ('delete' => get_lang('DeleteFromPlatform')));
$table->display();
function get_number_of_urls()
{
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT count(id) as count_result FROM $access_url_table";
$res = api_sql_query($sql, __FILE__, __LINE__);
$url = Database::fetch_row($res);
$result = $url['0'];
return $result;
}
function get_url_data() //$table->set_form_actions(array ('delete' => get_lang('DeleteFromPlatform')));
{ $table->display();
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL); /*
$sql = "SELECT id AS col0, url AS col1, description AS col2, active AS col3 FROM $access_url_table"; function status_filter($active, $url_params, $row) {
$res = api_sql_query($sql, __FILE__, __LINE__); $url_id =UrlManager::check_status($row[1]);
$urls = array (); if ($row[0] == $url_id ) {
while ($url = Database::fetch_row($res)) $action='lock';
{ $image='right';
$urls[] = $url; } else {
$image='wrong';
} }
return $urls; // you cannot lock the default
} $result = Display::return_icon($image.'.gif', get_lang(ucfirst($action)));
function modify_filter($active, $url_params, $row) return $result;
{ }
*/
function modify_filter($active, $url_params, $row) {
global $charset; global $charset;
$url_id = $row['0']; $url_id = $row['0'];
if ($url_id != '1') $result .= '<a href="access_url_edit.php?url_id='.$url_id.'">'.Display::return_icon('edit.gif', get_lang('Edit')).'</a>&nbsp;';
{ if ($url_id != '1') {
$result .= '<a href="access_url_edit.php?url_id='.$url_id.'">'.Display::return_icon('edit.gif', get_lang('Edit')).'</a>&nbsp;';
$result .= '<a href="access_urls.php?action=delete_url&amp;url_id='.$url_id.'&amp;sec_token='.$_SESSION['sec_token'].'" onclick="javascript:if(!confirm('."'".addslashes(htmlentities(get_lang("ConfirmYourChoice"),ENT_QUOTES,$charset))."'".')) return false;">'.Display::return_icon('delete.gif', get_lang('Delete')).'</a>'; $result .= '<a href="access_urls.php?action=delete_url&amp;url_id='.$url_id.'&amp;sec_token='.$_SESSION['sec_token'].'" onclick="javascript:if(!confirm('."'".addslashes(htmlentities(get_lang("ConfirmYourChoice"),ENT_QUOTES,$charset))."'".')) return false;">'.Display::return_icon('delete.gif', get_lang('Delete')).'</a>';
} }
return $result; return $result;
} }
function active_filter($active, $url_params, $row) function active_filter($active, $url_params, $row) {
{
$active = $row['3']; $active = $row['3'];
if ($active=='1') if ($active=='1') {
{
$action='lock'; $action='lock';
$image='right'; $image='right';
} }
if ($active=='0') if ($active=='0') {
{
$action='unlock'; $action='unlock';
$image='wrong'; $image='wrong';
} }
if ($row['0']=='1') // you cannot lock the default // you cannot lock the default
{ if ($row['0']=='1') {
$result = Display::return_icon($image.'.gif', get_lang(ucfirst($action))); $result = Display::return_icon($image.'.gif', get_lang(ucfirst($action)));
} } else {
else
{
$result = '<a href="access_urls.php?action='.$action.'&amp;url_id='.$row['0'].'&amp;sec_token='.$_SESSION['sec_token'].'">'.Display::return_icon($image.'.gif', get_lang(ucfirst($action))).'</a>'; $result = '<a href="access_urls.php?action='.$action.'&amp;url_id='.$row['0'].'&amp;sec_token='.$_SESSION['sec_token'].'">'.Display::return_icon($image.'.gif', get_lang(ucfirst($action))).'</a>';
} }
return $result; return $result;
} }
function lock_unlock_user($status,$url_id) // this 2 "mask" function are here just because the SortableTable
{ function get_url_data_mask($id, $url_params=null, $row=null) {
$url_table = Database :: get_main_table(TABLE_MAIN_ACCESS_URL); return UrlManager::get_url_data();
if ($status=='lock') }
{ function url_count_mask() {
$status_db='0'; return UrlManager::url_count();
$return_message=get_lang('URLInactivate');
}
if ($status=='unlock')
{
$status_db='1';
$return_message=get_lang('URLActivate');
}
if(($status_db=='1' OR $status_db=='0') AND is_numeric($url_id))
{
$sql="UPDATE $url_table SET active='".Database::escape_string($status_db)."' WHERE id='".Database::escape_string($url_id)."'";
$result = api_sql_query($sql, __FILE__, __LINE__);
}
if ($result)
{
return $return_message;
}
} }
/* /*
============================================================================== ==============================================================================

@ -48,8 +48,8 @@ $this_section = SECTION_PLATFORM_ADMIN;
api_protect_admin_script(true); api_protect_admin_script(true);
// setting breadcrumbs // setting breadcrumbs
$interbreadcrumb[]=array('url' => 'index.php',"name" => get_lang('PlatformAdmin')); $interbreadcrumb[]=array('url' => 'index.php','name' => get_lang('PlatformAdmin'));
$interbreadcrumb[]=array('url' => "session_list.php","name" => "Liste des sessions"); $interbreadcrumb[]=array('url' => "session_list.php","name" => get_lang('SessionList'));
// Database Table Definitions // Database Table Definitions
$tbl_session = Database::get_main_table(TABLE_MAIN_SESSION); $tbl_session = Database::get_main_table(TABLE_MAIN_SESSION);
@ -123,6 +123,7 @@ function search_users($needle)
$xajax_response -> addAssign('ajax_list_users','innerHTML',utf8_encode($return)); $xajax_response -> addAssign('ajax_list_users','innerHTML',utf8_encode($return));
return $xajax_response; return $xajax_response;
} }
$xajax -> processRequests(); $xajax -> processRequests();
$htmlHeadXtra[] = $xajax->getJavascript('../inc/lib/xajax/'); $htmlHeadXtra[] = $xajax->getJavascript('../inc/lib/xajax/');

@ -1,4 +1,4 @@
<?php // $Id: index.php 17723 2009-01-14 17:50:21Z juliomontoya $ <?php // $Id: index.php 17781 2009-01-16 17:51:08Z juliomontoya $
/* /*
============================================================================== ==============================================================================
Dokeos - elearning and course management software Dokeos - elearning and course management software
@ -46,7 +46,7 @@ api_protect_admin_script(true);
$nameTools = get_lang('PlatformAdmin'); $nameTools = get_lang('PlatformAdmin');
// setting breadcrumbs // setting breadcrumbs
$interbreadcrumb[] = array('url' => 'index.php', 'name' => $nameTools); //$interbreadcrumb[] = array('url' => 'index.php', 'name' => $nameTools);
// setting the name of the tool // setting the name of the tool
$tool_name=get_lang('PlatformAdmin'); $tool_name=get_lang('PlatformAdmin');
@ -55,96 +55,115 @@ $tool_name=get_lang('PlatformAdmin');
Display::display_header($nameTools); Display::display_header($nameTools);
if(api_is_platform_admin()): if(api_is_platform_admin())
if(is_dir(api_get_path(SYS_CODE_PATH).'install/') && is_readable(api_get_path(SYS_CODE_PATH).'install/index.php'))
{ {
Display::display_normal_message(get_lang('InstallDirAccessibleSecurityThreat')); if(is_dir(api_get_path(SYS_CODE_PATH).'install/') && is_readable(api_get_path(SYS_CODE_PATH).'install/index.php'))
} {
/* Display::display_normal_message(get_lang('InstallDirAccessibleSecurityThreat'));
============================================================================== }
ACTION HANDLING /*
============================================================================== ==============================================================================
*/ ACTION HANDLING
if (!empty($_POST['Register'])) ==============================================================================
{ */
register_site(); if (!empty($_POST['Register']))
Display :: display_confirmation_message(get_lang('VersionCheckEnabled')); {
register_site();
Display :: display_confirmation_message(get_lang('VersionCheckEnabled'));
}
/*
==============================================================================
MAIN SECTION
==============================================================================
*/
$keyword_url = Security::remove_XSS((empty($_GET['keyword'])?'':$_GET['keyword']));
} }
/* if (api_is_platform_admin()) {
============================================================================== ?>
MAIN SECTION <div class="admin_section">
============================================================================== <h4><?php Display::display_icon('members.gif', get_lang('Users')); ?> <?php echo ucfirst(get_lang('Users')); ?></h4>
*/ <ul>
$keyword_url = Security::remove_XSS((empty($_GET['keyword'])?'':$_GET['keyword'])); <li style="list-style-type:none"><form method="get" action="user_list.php">
?> <input type="text" name="keyword" value="<?php echo $keyword_url; ?>"/>
<input type="submit" value="<?php echo get_lang('Search'); ?>"/>
<div class="admin_section"> </form>
<h4><?php Display::display_icon('members.gif', get_lang('Users')); ?> <?php echo ucfirst(get_lang('Users')); ?></h4> </li>
<ul><li style="list-style-type:none"><form method="get" action="user_list.php"> <li><a href="user_list.php?search=advanced"><?php echo ucfirst(get_lang('AdvancedSearch')); ?></a></li>
<li><a href="user_list.php"> <?php echo get_lang('UserList') ?></a></li>
<input type="text" name="keyword" value="<?php echo $keyword_url; ?>"/> <li><a href="user_add.php"> <?php echo get_lang('AddUsers') ?></a></li>
<input type="submit" value="<?php echo get_lang('Search'); ?>"/> <li><a href="user_export.php"> <?php echo get_lang('ExportUserListXMLCSV') ?></a></li>
</form></li> <li><a href="user_import.php"> <?php echo get_lang('ImportUserListXMLCSV') ?></a></li>
<li> <li><a href="user_fields.php"> <?php echo get_lang('ManageUserFields'); ?></a></li>
<a href="user_list.php?search=advanced"><?php echo ucfirst(get_lang('AdvancedSearch')); ?></a> </ul>
</div>
</li> <?php
<li><a href="user_list.php"><?php echo get_lang('UserList') ?></a></li> }
<li><a href="user_add.php"><?php echo get_lang('AddUsers') ?></a></li> else
<li><a href="user_export.php"><?php echo get_lang('ExportUserListXMLCSV') ?></a></li> {
<li><a href="user_import.php"><?php echo get_lang('ImportUserListXMLCSV') ?></a></li> ?>
<li><a href="user_fields.php"><?php echo get_lang('ManageUserFields'); ?></a></li> <div class="admin_section">
</ul> <h4><?php Display::display_icon('members.gif', get_lang('Users')); ?> <?php echo ucfirst(get_lang('Users')); ?></h4>
</div> <ul>
<li><a href="user_list.php"> <?php echo get_lang('UserList') ?></a></li>
<div class="admin_section"> <li><a href="../mySpace/user_add.php"> <?php echo get_lang('AddUsers') ?></a></li>
<h4><?php Display::display_icon('course.gif', get_lang('Courses')); ?> <?php echo ucfirst(get_lang('Courses')); ?></h4>
<ul><li style="list-style-type:none"><form method="get" action="course_list.php">
<input type="text" name="keyword" value="<?php echo $keyword_url; ?>"/>
<input type="submit" value="<?php echo get_lang('Search'); ?>"/>
</form></li>
<li>
<a href="course_list.php?search=advanced"><?php echo ucfirst(get_lang('AdvancedSearch')); ?></a>
</li> </ul>
<li><a href="course_list.php"><?php echo get_lang('CourseList') ?></a></li> </div>
<li><a href="course_add.php"><?php echo get_lang('AddCourse') ?></a></li> <?php
<li><a href="course_import.php"><?php echo get_lang('AddCourse').' CSV'; ?></a></li> }
<!--<li><a href="course_virtual.php"><?php //echo get_lang('AdminManageVirtualCourses') ?></a></li>-->
<li><a href="course_category.php"><?php echo get_lang("AdminCategories"); ?></a></li>
<li><a href="subscribe_user2course.php"><?php echo get_lang('AddUsersToACourse'); ?></a></li>
<li><a href="course_user_import.php"><?php echo get_lang('AddUsersToACourse').' CSV'; ?></a></li>
<?php if (api_get_setting('search_enabled')=='true') { ?>
<li><a href="specific_fields.php"><?php echo get_lang('SpecificSearchFields'); ?></a></li>
<?php } ?>
</ul>
</div>
<div class="admin_section">
<h4><?php Display::display_icon('settings.gif', get_lang('Platform')); ?> <?php echo ucfirst(get_lang('Platform')); ?></h4>
<ul>
<li><a href="settings.php"><?php echo get_lang('DokeosConfigSettings') ?></a></li>
<li><a href="system_announcements.php"><?php echo get_lang('SystemAnnouncements') ?></a></li>
<li><a href="languages.php"><?php echo get_lang('Languages'); ?></a></li>
<li><a href="configure_homepage.php"><?php echo get_lang('ConfigureHomePage'); ?></a></li>
<li><a href="statistics/index.php"><?php echo get_lang('ToolName'); ?> </a></li>
<li><a href="calendar.php"><?php echo get_lang('GlobalAgenda'); ?> </a></li>
<?php if(!empty($phpMyAdminPath)): ?>
<li><a href="<?php echo $phpMyAdminPath; ?>" target="_blank"><?php echo get_lang("AdminDatabases"); ?></a><br />(<?php echo get_lang("DBManagementOnlyForServerAdmin"); ?>)</li>
<?php endif; ?>
<?php
if(!empty($_configuration['multiple_access_urls']))
{
echo ' <li><a href="access_urls.php">'.get_lang('ConfigureMultipleAccessURLs').'</a></li>';
}
?>
</ul>
</div>
<?php if(api_is_platform_admin()) {
endif; ?>
<div class="admin_section">
<h4><?php Display::display_icon('course.gif', get_lang('Courses')); ?> <?php echo ucfirst(get_lang('Courses')); ?></h4>
<ul><li style="list-style-type:none"><form method="get" action="course_list.php">
<input type="text" name="keyword" value="<?php echo $keyword_url; ?>"/>
<input type="submit" value="<?php echo get_lang('Search'); ?>"/>
</form></li>
<li>
<a href="course_list.php?search=advanced"><?php echo ucfirst(get_lang('AdvancedSearch')); ?></a>
</li>
<li><a href="course_list.php"><?php echo get_lang('CourseList') ?></a></li>
<li><a href="course_add.php"><?php echo get_lang('AddCourse') ?></a></li>
<li><a href="course_import.php"><?php echo get_lang('AddCourse').' CSV'; ?></a></li>
<!--<li><a href="course_virtual.php"><?php //echo get_lang('AdminManageVirtualCourses') ?></a></li>-->
<li><a href="course_category.php"><?php echo get_lang("AdminCategories"); ?></a></li>
<li><a href="subscribe_user2course.php"><?php echo get_lang('AddUsersToACourse'); ?></a></li>
<li><a href="course_user_import.php"><?php echo get_lang('AddUsersToACourse').' CSV'; ?></a></li>
<?php if (api_get_setting('search_enabled')=='true') { ?>
<li><a href="specific_fields.php"><?php echo get_lang('SpecificSearchFields'); ?></a></li>
<?php } ?>
</ul>
</div>
<div class="admin_section">
<h4><?php Display::display_icon('settings.gif', get_lang('Platform')); ?> <?php echo ucfirst(get_lang('Platform')); ?></h4>
<ul>
<li><a href="settings.php"><?php echo get_lang('DokeosConfigSettings') ?></a></li>
<li><a href="system_announcements.php"><?php echo get_lang('SystemAnnouncements') ?></a></li>
<li><a href="languages.php"><?php echo get_lang('Languages'); ?></a></li>
<li><a href="configure_homepage.php"><?php echo get_lang('ConfigureHomePage'); ?></a></li>
<li><a href="statistics/index.php"><?php echo get_lang('ToolName'); ?> </a></li>
<li><a href="calendar.php"><?php echo get_lang('GlobalAgenda'); ?> </a></li>
<?php if(!empty($phpMyAdminPath)): ?>
<li><a href="<?php echo $phpMyAdminPath; ?>" target="_blank"><?php echo get_lang("AdminDatabases"); ?></a><br />(<?php echo get_lang("DBManagementOnlyForServerAdmin"); ?>)</li>
<?php endif; ?>
<?php
if(!empty($_configuration['multiple_access_urls']))
{
echo ' <li><a href="access_urls.php">'.get_lang('ConfigureMultipleAccessURLs').'</a></li>';
}
?>
</ul>
</div>
<?php
}
if(api_get_setting('use_session_mode')=='true') if(api_get_setting('use_session_mode')=='true')
{ {
@ -247,7 +266,7 @@ if(api_is_platform_admin()){
</ul> </ul>
</div> </div>
<?php <?php
if (get_setting('allow_reservation')=="true") if (get_setting('allow_reservation')=='true')
{ {
?> ?>
<div class="admin_section"> <div class="admin_section">

@ -19,7 +19,6 @@ $action=$_REQUEST['action'];
$sort=in_array($_GET['sort'],array('name','nbr_courses','date_start','date_end'))?$_GET['sort']:'name'; $sort=in_array($_GET['sort'],array('name','nbr_courses','date_start','date_end'))?$_GET['sort']:'name';
$idChecked = $_REQUEST['idChecked']; $idChecked = $_REQUEST['idChecked'];
if($action == 'delete') if($action == 'delete')
{ {
if(is_array($idChecked)) if(is_array($idChecked))
@ -42,18 +41,15 @@ if($action == 'delete')
} }
api_sql_query("DELETE FROM $tbl_session WHERE id IN($idChecked)",__FILE__,__LINE__); api_sql_query("DELETE FROM $tbl_session WHERE id IN($idChecked)",__FILE__,__LINE__);
api_sql_query("DELETE FROM $tbl_session_rel_course WHERE id_session IN($idChecked)",__FILE__,__LINE__); api_sql_query("DELETE FROM $tbl_session_rel_course WHERE id_session IN($idChecked)",__FILE__,__LINE__);
api_sql_query("DELETE FROM $tbl_session_rel_course_rel_user WHERE id_session IN($idChecked)",__FILE__,__LINE__);
api_sql_query("DELETE FROM $tbl_session_rel_course_rel_user WHERE id_session IN($idChecked)",__FILE__,__LINE__);
api_sql_query("DELETE FROM $tbl_session_rel_user WHERE id_session IN($idChecked)",__FILE__,__LINE__); api_sql_query("DELETE FROM $tbl_session_rel_user WHERE id_session IN($idChecked)",__FILE__,__LINE__);
header('Location: '.api_get_self().'?sort='.$sort); header('Location: '.api_get_self().'?sort='.$sort);
exit(); exit();
} }
$interbreadcrumb[]=array("url" => "index.php","name" => get_lang('AdministrationTools')); $interbreadcrumb[]=array("url" => "index.php","name" => get_lang('PlatformAdmin'));
if (isset ($_GET['search']) && $_GET['search'] == 'advanced') if (isset ($_GET['search']) && $_GET['search'] == 'advanced')
{ {
@ -76,7 +72,7 @@ if (isset ($_GET['search']) && $_GET['search'] == 'advanced')
$form->display(); $form->display();
} }
else{ else {
$limit=20; $limit=20;
$from=$page * $limit; $from=$page * $limit;
@ -87,7 +83,7 @@ else{
$where = 'WHERE session_admin_id='.intval($_user['user_id']); $where = 'WHERE session_admin_id='.intval($_user['user_id']);
$where .= (empty($_REQUEST['keyword']) ? " " : " AND name LIKE '%".addslashes($_REQUEST['keyword'])."%'"); $where .= (empty($_REQUEST['keyword']) ? " " : " AND name LIKE '%".addslashes($_REQUEST['keyword'])."%'");
} }
else{ else {
$where .= (empty($_REQUEST['keyword']) ? " " : " WHERE name LIKE '%".addslashes($_REQUEST['keyword'])."%'"); $where .= (empty($_REQUEST['keyword']) ? " " : " WHERE name LIKE '%".addslashes($_REQUEST['keyword'])."%'");
} }
@ -121,13 +117,15 @@ else{
Display::display_header($tool_name); Display::display_header($tool_name);
api_display_tool_title($tool_name); api_display_tool_title($tool_name);
?>
<div id="main">
echo '<div style="float:right;">
<a href="'.api_get_path(WEB_CODE_PATH).'admin/session_add.php">'.Display::return_icon('view_more_stats.gif',get_lang('AddSession')).get_lang('AddSession').'</a>
</div>';
?>
<div id="main">
<?php <?php
if(isset($_GET['action'])){ if(isset($_GET['action'])) {
Display::display_normal_message(Security::remove_XSS($_GET['message']), false); Display::display_normal_message(Security::remove_XSS($_GET['message']), false);
} }

@ -1,4 +1,4 @@
<?php // $Id: database.lib.php 17764 2009-01-16 03:20:18Z yannoo $ <?php // $Id: database.lib.php 17781 2009-01-16 17:51:08Z juliomontoya $
/* See license terms in /dokeos_license.txt */ /* See license terms in /dokeos_license.txt */
/** /**
============================================================================== ==============================================================================
@ -61,6 +61,7 @@ define('TABLE_MAIN_SPECIFIC_FIELD_VALUES', 'specific_field_values');
define('TABLE_MAIN_SEARCH_ENGINE_REF', 'search_engine_ref'); define('TABLE_MAIN_SEARCH_ENGINE_REF', 'search_engine_ref');
//Access URLS //Access URLS
define('TABLE_MAIN_ACCESS_URL', 'access_url'); define('TABLE_MAIN_ACCESS_URL', 'access_url');
define('TABLE_MAIN_ACCESS_URL_REL_USER', 'access_url_rel_user');
//Global calendar //Global calendar
define('TABLE_MAIN_SYSTEM_CALENDAR', 'sys_calendar'); define('TABLE_MAIN_SYSTEM_CALENDAR', 'sys_calendar');
//Reservation System //Reservation System

@ -0,0 +1,260 @@
<?php // $Id: usermanager.lib.php 17705 2009-01-13 20:13:58Z herodoto $
/*
==============================================================================
Dokeos - elearning and course management software
Copyright (c) 2009 Dokeos SPRL
Copyright (c) 2009 Julio Montoya Armas <gugli100@gmail.com>
For a full list of contributors, see "credits.txt".
The full license can be read in "license.txt".
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
See the GNU General Public License for more details.
Contact: Dokeos, rue du Corbeau, 108, B-1030 Brussels, Belgium, info@dokeos.com
==============================================================================
*/
/**
==============================================================================
* This library provides functions for the URL management.
* Include/require it in your code to use its functionality.
*
* @package dokeos.library
==============================================================================
*/
// define constants for user extra field types
class UrlManager
{
/**
* Creates a new access to Dokeos
* @author Julio Montoya <gugli100@gmail.com>,
*
* @param string The URL of the site
* @param string The description of the site
* @param int is active or not
* @param int the user_id of the owner
* @return boolean if success
*/
function add($url, $description, $active)
{
$tms = time();
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "INSERT INTO $access_url_table
SET url = '".Database::escape_string($url)."/',
description = '".Database::escape_string($description)."',
active = '".Database::escape_string($active)."',
created_by = '".Database::escape_string(api_get_user_id())."',
tms = FROM_UNIXTIME(".$tms.")";
$result = api_sql_query($sql, __FILE__, __LINE__);
return $result;
}
/**
* Updates an URL access to Dokeos
* @author Julio Montoya <gugli100@gmail.com>,
*
* @param int The url id
* @param string The description of the site
* @param int is active or not
* @param int the user_id of the owner
* @return boolean if success
*/
function udpate($url_id, $url, $description, $active) {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$tms = time();
$sql = "UPDATE $access_url_table
SET url = '".Database::escape_string($url)."',
description = '".Database::escape_string($description)."',
active = '".Database::escape_string($active)."',
created_by = '".Database::escape_string(api_get_user_id())."',
tms = FROM_UNIXTIME(".$tms.") WHERE id = '$url_id'";
$result = api_sql_query($sql, __FILE__, __LINE__);
return $result;
}
/**
*
* */
function url_exist($url) {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id FROM $access_url_table WHERE url = '".Database::escape_string($url)."' ";
$res = api_sql_query($sql,__FILE__,__LINE__);
$num = Database::num_rows($res);
return $num;
}
/**
*
* */
function url_id_exist($url) {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id FROM $access_url_table WHERE id = '".Database::escape_string($url)."' ";
$res = api_sql_query($sql,__FILE__,__LINE__);
$num = Database::num_rows($res);
return $num;
}
/**
* This function get the quantity of URL
* @author Julio Montoya
* @return int count of urls
* */
function url_count() {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT count(id) as count_result FROM $access_url_table";
$res = api_sql_query($sql, __FILE__, __LINE__);
$url = Database::fetch_row($res);
$result = $url['0'];
return $result;
}
/**
* Gets the id, url, description, and active status of ALL URLs
* @author Julio Montoya
* @return array
* */
function get_url_data() {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id , url , description, active FROM $access_url_table";
$res = api_sql_query($sql, __FILE__, __LINE__);
$urls = array ();
while ($url = Database::fetch_row($res))
{
$urls[] = $url;
}
return $urls;
}
/**
* Gets the id, url, description, and active status of ALL URLs
* @author Julio Montoya
* @return array
* */
function get_url_data_from_id($url_id) {
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id, url, description, active FROM $access_url_table WHERE id = ".Database::escape_string($url_id);
$res = api_sql_query($sql, __FILE__, __LINE__);
$row = Database::fetch_array($res);
return $row;
}
/**
* Sets the status of an URL 1 or 0
* @author Julio Montoya
* @param string lock || unlock
* @param int url id
* */
function set_url_status($status,$url_id)
{
$url_table = Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
if ($status=='lock') {
$status_db='0';
}
if ($status=='unlock') {
$status_db='1';
}
if(($status_db=='1' OR $status_db=='0') AND is_numeric($url_id)) {
$sql="UPDATE $url_table SET active='".Database::escape_string($status_db)."' WHERE id='".Database::escape_string($url_id)."'";
$result = api_sql_query($sql, __FILE__, __LINE__);
}
}
/**
* Deletes an url
* @author Julio Montoya
* @param int url id
* @return boolean true if success
* */
function delete($id)
{
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql= "DELETE FROM $access_url_table WHERE id = ".Database::escape_string($id)."";
$result = api_sql_query($sql, __FILE__, __LINE__);
return $result;
}
/**
* Deletes an url
* @author Julio Montoya
* @param int user id
* @param int url id
* @return boolean true if success
* */
function relation_url_user_exist($user_id, $url_id)
{
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql= "SELECT user_id FROM $access_url_rel_user_table WHERE access_url_id = ".Database::escape_string($url_id)." AND user_id = ".Database::escape_string($user_id)." ";
$result = api_sql_query($sql, __FILE__, __LINE__);
$num = Database::num_rows($result);
return $num;
}
/**
* Add a group of users into a group of URLs
* @author Julio Montoya
* @param array of user_ids
* @param array of url_ids
* */
function add_users_to_urls($user_list,$url_list)
{
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$result_array=array();
if (is_array($user_list) && is_array($url_list)){
foreach ($url_list as $url_id) {
foreach ($user_list as $user_id) {
$count = UrlManager::relation_url_user_exist($user_id,$url_id);
if ($count==0) {
$sql = "INSERT INTO $access_url_rel_user_table
SET user_id = ".Database::escape_string($user_id).", access_url_id = ".Database::escape_string($url_id);
$result = api_sql_query($sql, __FILE__, __LINE__);
if($result)
$result_array[$url_id][$user_id]=1;
else
$result_array[$url_id][$user_id]=0;
}
}
}
}
return $result_array;
}
/**
* Add a user into a url
* @author Julio Montoya
* @param user_id
* @param url_id
* @return boolean true if success
* */
function add_user_to_url($user_id,$url_id=1)
{
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$count = UrlManager::relation_url_user_exist($user_id,$url_id);
if (empty($count)) {
$sql = "INSERT INTO $access_url_rel_user_table
SET user_id = ".Database::escape_string($user_id).", access_url_id = ".Database::escape_string($url_id);
$result = api_sql_query($sql, __FILE__, __LINE__);
}
return $result;
}
function check_status($url)
{
$access_url_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL);
$sql = "SELECT id FROM $access_url_table WHERE url = '".$url."'";
$result = api_sql_query($sql);
$access_url_id = Database::result($result, 0, 0);
return $access_url_id;
}
}
?>

@ -1,4 +1,4 @@
<?php // $Id: usermanager.lib.php 17763 2009-01-16 03:15:23Z yannoo $ <?php // $Id: usermanager.lib.php 17781 2009-01-16 17:51:08Z juliomontoya $
/* /*
============================================================================== ==============================================================================
Dokeos - elearning and course management software Dokeos - elearning and course management software
@ -116,8 +116,16 @@ class UserManager
$result = api_sql_query($sql); $result = api_sql_query($sql);
if ($result) if ($result)
{ {
//echo "id returned"; //echo "id returned";
$return=Database::get_last_insert_id(); $return=Database::get_last_insert_id();
global $_configuration;
if (api_is_platform_admin(true) && $_configuration['multiple_access_urls']==true) {
require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
if (api_get_current_access_url_id()!=-1)
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
else
UrlManager::add_user_to_url($return, 1);
}
} }
else else
{ {

Loading…
Cancel
Save