function validate(form,list)
{
if(list.selectedIndex<0)
{
alert("Please select someone to send the message to.")
return false
}
else
return true
}
';
$nameTools = get_lang('ComposeMessage');
/*
==============================================================================
FUNCTIONS
==============================================================================
*/
/**
* Shows the compose area + a list of users to select from.
*/
function show_compose_to_any($user_id)
{
$online_user_list = get_online_user_list($user_id);
$default['user_list'] = $user_id;
manage_form($default, $online_user_list);
}
function show_compose_reply_to_message($message_id, $receiver_id)
{
$query = "SELECT * FROM `".MESSAGES_DATABASE."` WHERE id_receiver=".$receiver_id." AND id='".$message_id."';";
$result = api_sql_query($query,__FILE__,__LINE__);
$row = mysql_fetch_array($result);
if(!isset($row[1]))
{
echo get_lang('InvalidMessageId');
die();
}
echo get_lang('To').': '. GetFullUserName($row[1]).'';
$default['title'] = "Please enter a title";
$default['user_list'] = $row[1];
manage_form($default);
}
function show_compose_to_user($receiver_id)
{
echo get_lang('To').': '. GetFullUserName($receiver_id).'';
$default['title'] = "Please enter a title";
$default['user_list'] = $receiver_id;
manage_form($default);
}
function manage_form($default, $select_from_user_list = null)
{
$form = new FormValidator('compose_message');
if (isset($select_from_user_list))
{
$form->addElement('select', 'user_list', get_lang('SendMessageTo'), $select_from_user_list);
}
else
{
$form->addElement('hidden', 'user_list');
}
$form->add_textfield('title', get_lang('Title'));
$form->add_html_editor('content', get_lang('Content'));
$form->addElement('submit', 'compose', get_lang('Ok'));
$form->setDefaults($default);
if( $form->validate() )
{
$values = $form->exportValues();
$receiver_user_id = $values['user_list'];
$title = mysql_real_escape_string($values['title']);
$content = mysql_real_escape_string($values['content']);
//all is well, send the message
$id_tmp = api_get_user_id().$receiver_user_id.date('d-D-w-m-Y-H-s').microtime().rand();
$id_msg = md5($id_tmp);
$query = "INSERT INTO `".MESSAGES_DATABASE."` ( `id`, `id_sender`, `id_receiver`, `status`, `date`, `title`, `content` ) ".
" VALUES (".
"' ".$id_msg ."' , '".api_get_user_id()."', '".$receiver_user_id."', '1', '".date('Y-m-d H:i:s')."','".$title."','".$content."'".
");";
@api_sql_query($query,__FILE__,__LINE__);
display_success_message($receiver_user_id);
}
else
{
$form->display();
}
}
/*
==============================================================================
MAIN SECTION
==============================================================================
*/
$interbreadcrumb[] = array ("url" => 'inbox.php', "name" => get_lang('Messages'));
Display::display_header($nameTools, get_lang("ComposeMessage"));
api_display_tool_title($nameTools);
if(!isset($_POST['compose']))
{
if(isset($_GET['re_id']))
{
$message_id = $_GET['re_id'];
$receiver_id = api_get_user_id();
show_compose_reply_to_message($message_id, $receiver_id);
}
else if(isset($_GET['send_to_user']))
{
show_compose_to_user($_GET['send_to_user']);
}
else
{
show_compose_to_any($_user['user_id']);
}
}
else
{
if(api_get_user_id() && isset($_POST['user_list']) && isset($_POST['content']))
{
$default['title'] = $_POST['title'];
$default['user_list'] = $_POST['user_list'];
manage_form($default);
}
else
Display::display_error_message(get_lang('ErrorSendingMessage'));
}
/*
==============================================================================
FOOTER
==============================================================================
*/
Display::display_footer();
?>