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.
174 lines
8.5 KiB
174 lines
8.5 KiB
<?php
|
|
/*
|
|
==============================================================================
|
|
Dokeos - elearning and course management software
|
|
|
|
Copyright (c) 2004-2008 Dokeos SPRL
|
|
Copyright (c) Julio Montoya <gugli100@gmail.com>
|
|
Copyright (c) Isaac Flores <florespaz_isaac@hotmail.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, rue du Corbeau, 108, B-1030 Brussels, Belgium
|
|
Mail: info@dokeos.com
|
|
|
|
==============================================================================
|
|
*/
|
|
|
|
require_once api_get_path(LIBRARY_PATH).'online.inc.php';
|
|
require_once api_get_path(SYS_CODE_PATH).'messages/message.class.php';
|
|
function inbox_display() {
|
|
global $charset;
|
|
echo '<div id="div_content_messages"> ';
|
|
//api_display_tool_title(api_xml_http_response_encode(get_lang('Inbox')));
|
|
echo '<div class=actions>';
|
|
echo '<a onclick="compose_and_show_message(\'show\',\'1\')" href="javascript:void(0)">'.Display::return_icon('message_new.png',api_xml_http_response_encode(get_lang('ComposeMessage'))).api_xml_http_response_encode(get_lang('ComposeMessage')).'</a>';
|
|
echo '<a class="refresh" href="javascript:window.location.reload()">'.api_convert_encoding(get_lang('Refresh'),'UTF-8',$charset).'</a>';
|
|
echo '</div>';
|
|
echo '</div>';
|
|
$charset = api_get_setting('platform_charset');
|
|
$table_message = Database::get_main_table(TABLE_MESSAGE);
|
|
$request=api_is_xml_http_request();
|
|
if ($_SESSION['social_exist']===true) {
|
|
$redirect="#remote-tab-2";
|
|
if (api_get_setting('allow_social_tool')=='true' && api_get_setting('allow_message_tool')=='true') {
|
|
$success= get_lang('SelectedMessagesDeleted');
|
|
} else {
|
|
$success= get_lang('SelectedMessagesDeleted');
|
|
}
|
|
} else {
|
|
$success= get_lang('SelectedMessagesDeleted');
|
|
}
|
|
if (isset ($_REQUEST['action'])) {
|
|
switch ($_REQUEST['action']) {
|
|
case 'delete' :
|
|
$number_of_selected_messages = count($_POST['id']);
|
|
foreach ($_POST['id'] as $index => $message_id) {
|
|
MessageManager::delete_message_by_user_receiver(api_get_user_id(), $message_id);
|
|
}
|
|
Display::display_normal_message(api_xml_http_response_encode($success),false);
|
|
break;
|
|
case 'deleteone' :
|
|
MessageManager::delete_message_by_user_receiver(api_get_user_id(), $_GET['id']);
|
|
Display::display_confirmation_message(api_xml_http_response_encode($success),false);
|
|
echo '<br />';
|
|
break;
|
|
}
|
|
}
|
|
// display sortable table with messages of the current user
|
|
$table = new SortableTable('messages', 'get_number_of_messages_mask', 'get_message_data_mask', 3, get_number_of_messages_mask(),'DESC');
|
|
$table->set_header(0, '', false,array ('style' => 'width:20px;'));
|
|
$title=api_xml_http_response_encode(get_lang('Title'));
|
|
$action=api_xml_http_response_encode(get_lang('Actions'));
|
|
$table->set_header(1,api_xml_http_response_encode(get_lang('Status')),false,array('style' => 'width:30px;'));
|
|
$table->set_header(2,api_xml_http_response_encode(get_lang('From')),false);
|
|
$table->set_header(3,$title,false);
|
|
$table->set_header(4,api_xml_http_response_encode(get_lang('Date')),false,array('style' => 'width:150px;'));
|
|
$table->set_header(5,$action,false,array ('style' => 'width:100px;'));
|
|
echo '<div id="div_content_table_data">';
|
|
if ($request===true) {
|
|
echo '<form name="form_send" id="form_send" action="" method="post">';
|
|
echo '<input type="hidden" name="action" value="delete" />';
|
|
$table->display();
|
|
echo '</form>';
|
|
if (get_number_of_messages_mask() > 0) {
|
|
echo '<a href="javascript:void(0)" onclick="selectall_cheks()">'.api_xml_http_response_encode(get_lang('SelectAll')).'</a> ';
|
|
echo '<a href="javascript:void(0)" onclick="unselectall_cheks()">'.api_xml_http_response_encode(get_lang('UnSelectAll')).'</a> ';
|
|
echo '<button class="save" name="delete" type="button" value="'.api_xml_http_response_encode(get_lang('DeleteSelectedMessages')).'" onclick="submit_form(\'inbox\')">'.api_xml_http_response_encode(get_lang('DeleteSelectedMessages')).'</button>';
|
|
|
|
}
|
|
} else {
|
|
$table->set_form_actions(array ('delete' => get_lang('DeleteSelectedMessages')));
|
|
$table->display();
|
|
}
|
|
echo '</div>';
|
|
}
|
|
function get_number_of_messages_mask() {
|
|
return MessageManager::get_number_of_messages();
|
|
}
|
|
function get_message_data_mask($from, $number_of_items, $column, $direction) {
|
|
$column='3';
|
|
$direction='desc';
|
|
//non set by SortableTable ?
|
|
$number_of_items=get_number_of_messages_mask();
|
|
return MessageManager::get_message_data($from, $number_of_items, $column, $direction);
|
|
}
|
|
function outbox_display() {
|
|
$table_message = Database::get_main_table(TABLE_MESSAGE);
|
|
$request=api_is_xml_http_request();
|
|
global $charset;
|
|
if ($_SESSION['social_exist']===true) {
|
|
$redirect="#remote-tab-3";
|
|
if (api_get_setting('allow_social_tool')=='true' && api_get_setting('allow_message_tool')=='true') {
|
|
$success= get_lang('SelectedMessagesDeleted')." <br><a href=\""."../social/index.php?$redirect\">".get_lang('BackToOutbox')."</a>";
|
|
}else {
|
|
$success=get_lang('SelectedMessagesDeleted')." <br><a href=\""."../social/index.php?$redirect\">".get_lang('BackToOutbox')."</a>";
|
|
}
|
|
|
|
} else {
|
|
$success= get_lang('SelectedMessagesDeleted')." </b>"."<br><a href=\""."outbox.php\">".get_lang('BackToOutbox')."</a>";
|
|
}
|
|
if (isset ($_REQUEST['action'])) {
|
|
switch ($_REQUEST['action']) {
|
|
case 'delete' :
|
|
$number_of_selected_messages = count($_POST['id']);
|
|
if ($number_of_selected_messages!=0) {
|
|
foreach ($_POST['id'] as $index => $message_id) {
|
|
MessageManager::delete_message_by_user_receiver(api_get_user_id(), $message_id);
|
|
}
|
|
}
|
|
Display::display_normal_message(api_xml_http_response_encode($success),false);
|
|
break;
|
|
case 'deleteone' :
|
|
MessageManager::delete_message_by_user_receiver(api_get_user_id(), $_GET['id']);
|
|
Display::display_confirmation_message(api_xml_http_response_encode($success),false);
|
|
echo '<br/>';
|
|
break;
|
|
}
|
|
}
|
|
|
|
// display sortable table with messages of the current user
|
|
$table = new SortableTable('messages', 'get_number_of_messages_send_mask', 'get_message_data_send_mask', 3,get_number_of_messages_send_mask(),'DESC');
|
|
$title=api_xml_http_response_encode(get_lang('Title'));
|
|
$action=api_xml_http_response_encode(get_lang('Actions'));
|
|
$table->set_header(0, '', false,array ('style' => 'width:20px;'));
|
|
$table->set_header(1, api_xml_http_response_encode(get_lang('Status')),false,array ('style' => 'width:30px;'));
|
|
$table->set_header(2, api_xml_http_response_encode(get_lang('To')),false);
|
|
$table->set_header(3, $title,false);
|
|
$table->set_header(4, api_xml_http_response_encode(get_lang('Date')),false,array ('style' => 'width:150px;'));
|
|
$table->set_header(5,$action, false,array ('style' => 'width:100px;'));
|
|
echo '<div id="div_content_table_data_sent">';
|
|
if ($request===true) {
|
|
echo '<form name="form_send_out" id="form_send_out" action="" method="post">';
|
|
echo '<input type="hidden" name="action" value="delete" />';
|
|
$table->display();
|
|
echo '</form>';
|
|
if (get_number_of_messages_send_mask() > 0) {
|
|
echo '<a href="javascript:void(0)" onclick="selectall_cheks()">'.api_xml_http_response_encode(get_lang('SelectAll')).'</a> ';
|
|
echo '<a href="javascript:void(0)" onclick="unselectall_cheks()">'.api_xml_http_response_encode(get_lang('UnSelectAll')).'</a> ';
|
|
echo '<button class="save" name="delete" type="button" value="'.api_xml_http_response_encode(get_lang('DeleteSelectedMessages')).'" onclick="submit_form(\'outbox\')">'.api_xml_http_response_encode(get_lang('DeleteSelectedMessages')).'</button>';
|
|
}
|
|
} else {
|
|
$table->set_form_actions(array ('delete' => get_lang('DeleteSelectedMessages')));
|
|
$table->display();
|
|
}
|
|
echo '</div>';
|
|
}
|
|
function get_number_of_messages_send_mask() {
|
|
return MessageManager::get_number_of_messages_sent();
|
|
}
|
|
function get_message_data_send_mask($from, $number_of_items, $column, $direction) {
|
|
$column='3';
|
|
$direction='desc';
|
|
//non set by SortableTable ?
|
|
$number_of_items=get_number_of_messages_send_mask();
|
|
return MessageManager::get_message_data_sent($from, $number_of_items, $column, $direction);
|
|
}
|
|
?>
|
|
|