|
|
|
|
@ -37,6 +37,10 @@ require_once api_get_path(CONFIGURATION_PATH).'add_course.conf.php'; |
|
|
|
|
// Including additional libraries. |
|
|
|
|
require_once api_get_path(LIBRARY_PATH).'fileManage.lib.php'; |
|
|
|
|
|
|
|
|
|
// The delete action should be deactivated in this page. |
|
|
|
|
// Better reject the target request, after that you can delete it. |
|
|
|
|
define(DELETE_ACTION_ENABLED, false); |
|
|
|
|
|
|
|
|
|
// Filltering passed to this page parameters. |
|
|
|
|
$accept_course_request = intval($_GET['accept_course_request']); |
|
|
|
|
$reject_course_request = intval($_GET['reject_course_request']); |
|
|
|
|
@ -122,7 +126,8 @@ function get_request_data($from, $number_of_items, $column, $direction) { |
|
|
|
|
$users_table = Database :: get_main_table(TABLE_MAIN_USER); |
|
|
|
|
$course_users_table = Database :: get_main_table(TABLE_MAIN_COURSE_USER); |
|
|
|
|
|
|
|
|
|
$sql = "SELECT code AS col0, |
|
|
|
|
if (DELETE_ACTION_ENABLED) { |
|
|
|
|
$sql = "SELECT id AS col0, |
|
|
|
|
code AS col1, |
|
|
|
|
title AS col2, |
|
|
|
|
category_code AS col3, |
|
|
|
|
@ -130,12 +135,22 @@ function get_request_data($from, $number_of_items, $column, $direction) { |
|
|
|
|
request_date AS col5, |
|
|
|
|
id AS col6 |
|
|
|
|
FROM $course_table WHERE status = ".COURSE_REQUEST_PENDING; |
|
|
|
|
} else { |
|
|
|
|
$sql = "SELECT |
|
|
|
|
code AS col0, |
|
|
|
|
title AS col1, |
|
|
|
|
category_code AS col2, |
|
|
|
|
tutor_name AS col3, |
|
|
|
|
request_date AS col4, |
|
|
|
|
id AS col5 |
|
|
|
|
FROM $course_table WHERE status = ".COURSE_REQUEST_PENDING; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sql .= " ORDER BY col$column $direction "; |
|
|
|
|
$sql .= " LIMIT $from,$number_of_items"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
$courses = array(); |
|
|
|
|
|
|
|
|
|
$courses = array(); |
|
|
|
|
while ($course = Database::fetch_row($res)) { |
|
|
|
|
$courses[] = $course; |
|
|
|
|
} |
|
|
|
|
@ -164,25 +179,27 @@ function modify_filter($id) { |
|
|
|
|
if (!CourseRequestManager::additional_info_asked($id)) { |
|
|
|
|
$result .= ' <a href="?request_info='.$id.'">'.Display::return_icon('request_info.gif', get_lang('AskAdditionalInfo'), array('style' => 'vertical-align: middle;', 'onclick' => 'javascript: if (!confirm(\''.addslashes(api_htmlentities(sprintf(get_lang('AdditionalInfoWillBeAsked'), $code), ENT_QUOTES)).'\')) return false;')).'</a>'; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// The delete action has been deactivated here. Better reject the target request, after that you can delete it. |
|
|
|
|
//$result .= ' <a href="?delete_course_request='.$id.'">'.Display::return_icon('delete.gif', get_lang('DeleteThisCourseRequest'), array('style' => 'vertical-align: middle;', 'onclick' => 'javascript: if (!confirm(\''.addslashes(api_htmlentities(sprintf(get_lang('ACourseRequestWillBeDeleted'), $code), ENT_QUOTES)).'\')) return false;')).'</a>'; |
|
|
|
|
|
|
|
|
|
if (DELETE_ACTION_ENABLED) { |
|
|
|
|
$result .= ' <a href="?delete_course_request='.$id.'">'.Display::return_icon('delete.gif', get_lang('DeleteThisCourseRequest'), array('style' => 'vertical-align: middle;', 'onclick' => 'javascript: if (!confirm(\''.addslashes(api_htmlentities(sprintf(get_lang('ACourseRequestWillBeDeleted'), $code), ENT_QUOTES)).'\')) return false;')).'</a>'; |
|
|
|
|
} |
|
|
|
|
return $result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset ($_POST['action'])) { |
|
|
|
|
/** |
|
|
|
|
* Form actions: delete. |
|
|
|
|
*/ |
|
|
|
|
if (DELETE_ACTION_ENABLED && isset($_POST['action'])) { |
|
|
|
|
switch ($_POST['action']) { |
|
|
|
|
// Delete selected courses |
|
|
|
|
case 'delete_courses' : |
|
|
|
|
$course_codes = $_POST['course']; |
|
|
|
|
if (count($course_codes) > 0) { |
|
|
|
|
foreach ($course_codes as $index => $course_code) { |
|
|
|
|
//CourseManager :: delete_course($course_code); |
|
|
|
|
$sql = "DELETE FROM ".Database :: get_main_table(TABLE_MAIN_COURSE_REQUEST)." WHERE code LIKE '".$course_code."'"; |
|
|
|
|
//echo $sql; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
case 'delete_course_requests' : |
|
|
|
|
$course_requests = $_POST['course_request']; |
|
|
|
|
if (is_array($_POST['course_request']) && !empty($_POST['course_request'])) { |
|
|
|
|
$success = true; |
|
|
|
|
foreach ($_POST['course_request'] as $index => $course_request_id) { |
|
|
|
|
$success &= CourseRequestManager::delete_course_request($course_request_id); |
|
|
|
|
} |
|
|
|
|
$message = $success ? get_lang('SelectedCourseRequestsDeleted') : get_lang('SomeCourseRequestsNotDeleted'); |
|
|
|
|
$is_error_message = !$success; |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
@ -209,20 +226,23 @@ echo '<a href="course_request_rejected.php">'.Display::return_icon('course_reque |
|
|
|
|
echo '</div>'; |
|
|
|
|
|
|
|
|
|
// Create a sortable table with the course data |
|
|
|
|
$table = new SortableTable('course_requests', 'get_number_of_requests', 'get_request_data', 2); |
|
|
|
|
$offet = DELETE_ACTION_ENABLED ? 1 : 0; |
|
|
|
|
$table = new SortableTable('course_requests', 'get_number_of_requests', 'get_request_data', 1 + $offet); |
|
|
|
|
$table->set_additional_parameters($parameters); |
|
|
|
|
$table->set_header(0, '', false); |
|
|
|
|
$table->set_header(1, get_lang('Code')); |
|
|
|
|
$table->set_header(2, get_lang('Title')); |
|
|
|
|
$table->set_header(3, get_lang('Category')); |
|
|
|
|
//$table->set_header(4, get_lang('Teacher'), false); |
|
|
|
|
//$table->set_header(5, get_lang('CourseRequestDate'), false); |
|
|
|
|
$table->set_header(4, get_lang('Teacher')); |
|
|
|
|
$table->set_header(5, get_lang('CourseRequestDate')); |
|
|
|
|
$table->set_header(6, '', false); |
|
|
|
|
$table->set_column_filter(4,'email_filter'); |
|
|
|
|
$table->set_column_filter(6,'modify_filter'); |
|
|
|
|
$table->set_form_actions(array('delete_courses' => get_lang('DeleteCourse')), 'course'); |
|
|
|
|
if (DELETE_ACTION_ENABLED) { |
|
|
|
|
$table->set_header(0, '', false); |
|
|
|
|
} |
|
|
|
|
$table->set_header(0 + $offet, get_lang('Code')); |
|
|
|
|
$table->set_header(1 + $offet, get_lang('Title')); |
|
|
|
|
$table->set_header(2 + $offet, get_lang('Category')); |
|
|
|
|
$table->set_header(3 + $offet, get_lang('Teacher')); |
|
|
|
|
$table->set_header(4 + $offet, get_lang('CourseRequestDate')); |
|
|
|
|
$table->set_header(5 + $offet, '', false); |
|
|
|
|
$table->set_column_filter(3 + $offet, 'email_filter'); |
|
|
|
|
$table->set_column_filter(5 + $offet, 'modify_filter'); |
|
|
|
|
if (DELETE_ACTION_ENABLED) { |
|
|
|
|
$table->set_form_actions(array('delete_course_requests' => get_lang('DeleteCourseRequests')), 'course_request'); |
|
|
|
|
} |
|
|
|
|
$table->display(); |
|
|
|
|
|
|
|
|
|
/* FOOTER */ |
|
|
|
|
|