[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] messenger inc/hook_admin.inc.php inc/class.some...
From: |
Dave Hall |
Subject: |
[Phpgroupware-cvs] messenger inc/hook_admin.inc.php inc/class.some... |
Date: |
Sun, 09 Apr 2006 13:53:18 +0000 |
CVSROOT: /cvsroot/phpgroupware
Module name: messenger
Branch:
Changes by: Dave Hall <address@hidden> 06/04/09 13:53:18
Modified files:
inc : hook_admin.inc.php class.somessenger.inc.php
class.uimessenger.inc.php
class.bomessenger.inc.php
templates/base : inbox.tpl
setup : phpgw_sv.lang setup.inc.php
Added files:
inc : class.somessenger_sql.inc.php
class.somessenger_imap.inc.php
templates/base : config.tpl
Log message:
adding new smtp/imap backend
code clean up
still some work to be done here
thanks to ||cw for the initial backend changes
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/hook_admin.inc.php.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/class.somessenger.inc.php.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/class.uimessenger.inc.php.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/class.bomessenger.inc.php.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/class.somessenger_sql.inc.php?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/inc/class.somessenger_imap.inc.php?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/templates/base/config.tpl?rev=1.1
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/templates/base/inbox.tpl.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/setup/phpgw_sv.lang.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/phpgroupware/messenger/setup/setup.inc.php.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
Patches:
Index: messenger/inc/class.bomessenger.inc.php
diff -u messenger/inc/class.bomessenger.inc.php:1.3
messenger/inc/class.bomessenger.inc.php:1.4
--- messenger/inc/class.bomessenger.inc.php:1.3 Tue Apr 30 14:11:00 2002
+++ messenger/inc/class.bomessenger.inc.php Sun Apr 9 13:53:18 2006
@@ -12,18 +12,19 @@
* option) any later version.
*
\**************************************************************************/
- /* $Id: class.bomessenger.inc.php,v 1.3 2002/04/30 14:11:00 skeeter Exp
$ */
+ /* $Id: class.bomessenger.inc.php,v 1.4 2006/04/09 13:53:18 skwashd Exp
$ */
class bomessenger
{
var $so;
- var $public_functions = array(
- 'delete_message' => True,
- 'send_message' => True,
- 'send_global_message' => True,
- 'reply' => True,
- 'forward' => True,
- 'list_methods' => True
+ var $public_functions = array
+ (
+ 'delete_message' => true,
+ 'send_message' => true,
+ 'send_global_message' => true,
+ 'reply' => true,
+ 'forward' => true,
+ 'list_methods' => true
);
var $soap_functions = array();
@@ -49,7 +50,7 @@
if (! $GLOBALS['phpgw']->acl->check('run',1,'admin') ||
$cancel)
{
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
return False;
}
@@ -77,10 +78,9 @@
{
$message['to'] =
$account['account_lid'];
$this->so->send_message($message,True);
-
}
$this->so->db->transaction_commit();
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
}
}
@@ -116,7 +116,12 @@
{
$errors[] = lang("You didn't enter anything for
the message");
}
- return $errors;
+ return $errors;
+ }
+
+ function is_connected()
+ {
+ return $this->so->connected;
}
function send_message($data='')
@@ -136,7 +141,7 @@
if ($cancel)
{
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
return False;
}
@@ -150,13 +155,13 @@
else
{
$this->so->send_message($message);
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
}
}
- function read_inbox($start,$order,$sort)
+ function read_inbox($params)
{
- $messages = $this->so->read_inbox($start,$order,$sort);
+ $messages = $this->so->read_inbox($params);
while (is_array($messages) && list(,$message) =
each($messages))
{
@@ -184,7 +189,7 @@
if ($message['status'] == 'N')
{
$message['subject'] = '<b>' .
$message['subject'] . '</b>';
- $message['status'] = ' ';
+ $message['status'] = ' ';
$message['date'] = '<b>' .
$GLOBALS['phpgw']->common->show_date($message['date']) . '</b>';
$message['from'] = '<b>' .
$cached_names[$message['from']] . '</b>';
}
@@ -272,16 +277,16 @@
if (! is_array($messages))
{
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
return False;
}
- $this->so->db->transaction_begin();
+ $this->so->transaction_begin();
while (list(,$message_id) = each($messages))
{
$this->so->delete_message($message_id);
}
- $this->so->db->transaction_commit();
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+ $this->so->transaction_commit();
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
}
function reply($message_id='',$n_message='')
@@ -302,7 +307,7 @@
{
$this->so->send_message($n_message);
$this->so->update_message_status('R',$message_id);
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
}
}
@@ -325,7 +330,7 @@
{
$this->so->send_message($n_message);
$this->so->update_message_status('F',$message_id);
- Header('Location: ' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox'));
+
$GLOBALS['phpgw']->redirect_link('/index.php','menuaction=messenger.uimessenger.inbox');
}
}
Index: messenger/inc/class.somessenger.inc.php
diff -u messenger/inc/class.somessenger.inc.php:1.1
messenger/inc/class.somessenger.inc.php:1.2
--- messenger/inc/class.somessenger.inc.php:1.1 Sat Sep 22 02:21:47 2001
+++ messenger/inc/class.somessenger.inc.php Sun Apr 9 13:53:18 2006
@@ -2,9 +2,7 @@
/**************************************************************************\
* phpGroupWare - Messenger
*
* http://www.phpgroupware.org
*
- * This application written by Joseph Engo <address@hidden> *
- * --------------------------------------------
*
- * Funding for this program was provided by http://www.checkwithmom.com
*
+ * This file written by Chris Weiss <address@hidden>
*
* --------------------------------------------
*
* 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 *
@@ -12,97 +10,115 @@
* option) any later version.
*
\**************************************************************************/
- /* $Id: class.somessenger.inc.php,v 1.1 2001/09/22 02:21:47 milosch Exp
$ */
+ // Now we can use this again later if we need it
+ $GLOBALS['phpgw']->config =& CreateObject('phpgwapi.config',
'messenger');
+ $GLOBALS['phpgw']->config->read_repository();
+
+ if ( !is_array($GLOBALS['phpgw']->config->config_data)
+ || !isset($GLOBALS['phpgw_info']['server']['smtp_host'])
+ || !isset($GLOBALS['phpgw_info']['server']['smtp_port'])
+ ||
!isset($GLOBALS['phpgw']->config->config_data['imap_message_host']) )
+ {
+ $messenger_config = array('message_repository' => 'sql' );
//provide a safe default
+ }
+ else
+ {
+ $messenger_config = $GLOBALS['phpgw']->config->config_data;
+ }
+
+
include_once(PHPGW_INCLUDE_ROOT."/messenger/inc/class.somessenger_{$messenger_config['message_repository']}.inc.php");
+
//include_once(PHPGW_INCLUDE_ROOT."/messenger/inc/class.somessenger_sql.inc.php");
//this is good for functionality comparison between sql and imap - skwashd
- class somessenger
+ class somessenger_
{
- var $db;
+ /**
+ * @var bool connected Are we connected to the server?
+ */
+ var $connected = false;
+
+ /**
+ * @var int $owner The currently logged in user's id
+ */
var $owner;
- function somessenger()
- {
- $this->db = $GLOBALS['phpgw']->db;
- $this->owner =
$GLOBALS['phpgw_info']['user']['account_id'];
+ /**
+ * @constructor
+ */
+ function somessenger_()
+ {
+ $this->owner =&
$GLOBALS['phpgw_info']['user']['account_id'];
}
+ /**
+ * Update the status of a message
+ *
+ * @param string $status the message status one of N - New, R -
Replied, O - Old (read), F - Forwarded
+ * @param int $message_id the message number
+ */
function update_message_status($status, $message_id)
- {
- $this->db->query("update phpgw_messenger_messages set
message_status='$status' where message_id='"
- . $message_id . "' and message_owner='" .
$this->owner ."'",__LINE__,__FILE__);
- }
-
- function read_inbox($start,$order,$sort)
- {
- if ($sort && $order)
- {
- $sortmethod = " order by $order $sort";
- }
-
- $this->db->limit_query("select * from
phpgw_messenger_messages where message_owner='" . $this->owner
- . "' $sortmethod",$start,__LINE__,__FILE__);
- while ($this->db->next_record())
- {
- $messages[] = array(
- 'id' => $this->db->f('message_id'),
- 'from' =>
$this->db->f('message_from'),
- 'status' =>
$this->db->f('message_status'),
- 'date' =>
$this->db->f('message_date'),
- 'subject' =>
$this->db->f('message_subject')
- );
- }
- return $messages;
- }
+ {}
+ /**
+ * Get the list of messages in the user's inbox
+ *
+ * @param array $params the criteria
+ * @return array a list of messages
+ */
+ function read_inbox($params)
+ {}
+
+ /**
+ * Get the contents of a message
+ *
+ * @param int $message_id the id of the message sought
+ * @return array the message
+ */
function read_message($message_id)
- {
- $this->db->query("select * from
phpgw_messenger_messages where message_id='"
- . $message_id . "' and message_owner='" .
$this->owner ."'",__LINE__,__FILE__);
- $this->db->next_record();
- $message = array(
- 'id' => $this->db->f('message_id'),
- 'from' => $this->db->f('message_from'),
- 'status' => $this->db->f('message_status'),
- 'date' => $this->db->f('message_date'),
- 'subject' => $this->db->f('message_subject'),
- 'content' => $this->db->f('message_content')
- );
- if ($this->db->f('message_status') == 'N')
- {
- $this->update_message_status('O',$message_id);
- }
- return $message;
- }
-
- function send_message($message, $global_message = False)
- {
- if ($global_message)
- {
- $this->owner = -1;
- }
-
- if (! ereg('^[0-9]+$',$message['to']))
- {
- $message['to'] =
$GLOBALS['phpgw']->accounts->name2id($message['to']);
- }
-
- $this->db->query("insert into phpgw_messenger_messages
(message_owner, message_from, message_status, "
- . "message_date, message_subject,
message_content) values ('"
- . $message['to'] . "','" . $this->owner .
"','N','" . time() . "','"
- . addslashes($message['subject']) . "','"
. addslashes($message['content'])
- . "')",__LINE__,__FILE__);
- }
+ {}
+ /**
+ * Send a message
+ *
+ * @param array the message to be sent
+ * @param bool send a global message (to all users)
+ */
+ function send_message($message, $global_message = false)
+ {}
+
+ /**
+ * Get the number of messages in the user's inbox
+ *
+ * @return int the number of messages
+ */
function total_messages($extra_where_clause = '')
- {
- $this->db->query("select count(*) from
phpgw_messenger_messages where message_owner='"
- . $this->owner . "' " .
$extra_where_clause,__LINE__,__FILE__);
- $this->db->next_record();
- return $this->db->f(0);
- }
+ {}
+ /**
+ * Delete a message from the user's account
+ *
+ * @param int $message_id the ID for the message to be deleted
+ */
function delete_message($message_id)
+ {}
+
+ /**
+ * Start a transaction
+ *
+ * @internal not required for all implementations
+ */
+ function transaction_begin()
+ {
+ return 0;
+ }
+
+ /**
+ * Finish a transaction
+ *
+ * @internal not required for all implementations
+ */
+ function transaction_commit()
{
- $this->db->query("delete from phpgw_messenger_messages
where message_id='$message_id' and "
- . "message_owner='" . $this->owner .
"'",__LINE__,__FILE__);
+ return 0;
}
}
+?>
Index: messenger/inc/class.uimessenger.inc.php
diff -u messenger/inc/class.uimessenger.inc.php:1.6
messenger/inc/class.uimessenger.inc.php:1.7
--- messenger/inc/class.uimessenger.inc.php:1.6 Thu Aug 29 23:20:51 2002
+++ messenger/inc/class.uimessenger.inc.php Sun Apr 9 13:53:18 2006
@@ -12,19 +12,19 @@
* option) any later version.
*
\**************************************************************************/
- /* $Id: class.uimessenger.inc.php,v 1.6 2002/08/29 23:20:51 ceb Exp $ */
-
class uimessenger
{
var $bo;
var $template;
- var $public_functions = array(
- 'inbox' => True,
- 'compose' => True,
- 'compose_global' => True,
- 'read_message' => True,
- 'reply' => True,
- 'forward' => True
+ var $public_functions = array
+ (
+ 'inbox' => true,
+ 'compose' => true,
+ 'compose_global' => true,
+ 'read_message' => true,
+ 'reply' => true,
+ 'forward' => true,
+ 'delete' => true
);
function uimessenger()
@@ -32,105 +32,39 @@
$this->template = $GLOBALS['phpgw']->template;
$this->bo =
CreateObject('messenger.bomessenger');
$this->nextmatchs = createobject('phpgwapi.nextmatchs');
- }
-
- function display_headers($extras = '')
- {
- $this->template->set_file('_header','header.tpl');
- $this->template->set_block('_header','global_header');
- $this->template->set_var('lang_inbox','<a href="' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox')
. '">' . lang('Inbox') . '</a>');
- $this->template->set_var('lang_compose','<a href="' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.compose')
. '">' . lang('Compose') . '</a>');
-
- if ($extras['nextmatchs_left'])
+ if ( !$this->bo->is_connected() )
{
-
$this->template->set_var('nextmatchs_left',$extras['nextmatchs_left']);
- }
-
- if ($extras['nextmatchs_right'])
- {
-
$this->template->set_var('nextmatchs_right',$extras['nextmatchs_right']);
+ $this->_error_not_connected();
}
-
- $this->template->fp('app_header','global_header');
-
- $GLOBALS['phpgw']->common->phpgw_header();
}
- function set_common_langs()
- {
-
$this->template->set_var('th_bg',$GLOBALS['phpgw_info']['theme']['th_bg']);
-
$this->template->set_var('row_on',$GLOBALS['phpgw_info']['theme']['row_on']);
-
$this->template->set_var('row_off',$GLOBALS['phpgw_info']['theme']['row_off']);
-
- $this->template->set_var('lang_to',lang('Send message
to'));
- $this->template->set_var('lang_from',lang('Message
from'));
-
$this->template->set_var('lang_subject',lang('Subject'));
-
$this->template->set_var('lang_content',lang('Message'));
- $this->template->set_var('lang_date',lang('Date'));
- }
- function inbox()
+ function compose($errors = '')
{
- $start = get_var('start',Array('POST','GET'));
- $order = get_var('order',Array('POST','GET'));
- $sort = get_var('sort',Array('POST','GET'));
- $total = $this->bo->total_messages();
-
- $extra_menuaction =
'&menuaction=messenger.uimessenger.inbox';
- $extra_header_info['nextmatchs_left'] =
$this->nextmatchs->left('/index.php',$start,$total,$extra_menuaction);
- $extra_header_info['nextmatchs_right'] =
$this->nextmatchs->right('/index.php',$start,$total,$extra_menuaction);
+ $message = $_POST['message'];
- $this->display_headers($extra_header_info);
+ $this->_display_headers();
+ $this->_set_compose_read_blocks();
- $this->template->set_file('_inbox','inbox.tpl');
- $this->template->set_block('_inbox','list');
- $this->template->set_block('_inbox','row');
- $this->template->set_block('_inbox','row_empty');
-
- $this->set_common_langs();
- $this->template->set_var('sort_date','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_date',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('Date') . '</a>');
- $this->template->set_var('sort_subject','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_subject',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('Subject') . '</a>');
- $this->template->set_var('sort_from','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_from',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('From') . '</a>');
-
- $messages = $this->bo->read_inbox($start,$order,$sort);
-
- while (is_array($messages) && list(,$message) =
each($messages))
+ if (is_array($errors))
{
-
$this->template->set_var('row_status',$message['status']);
-
$this->template->set_var('row_from',$message['from']);
-
$this->template->set_var('row_date',$message['date']);
- $this->template->set_var('row_subject','<a
href="' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.read_message&message_id='
. $message['id']) . '">' . $message['subject'] . '</a>');
-
$this->template->set_var('row_status',$message['status']);
- $this->template->set_var('row_checkbox','<input
type="checkbox" name="messages[]" value="' . $message['id'] . '">');
-
- $this->template->fp('rows','row',True);
+
$this->template->set_var('errors',$GLOBALS['phpgw']->common->error_list($errors));
}
- if (! is_array($messages))
- {
- $this->template->set_var('lang_empty',lang('You
have no messages'));
- $this->template->fp('rows','row_empty',True);
- }
- else
- {
-
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.delete_message'));
-
$this->template->set_var('button_delete','<input type="image" src="' .
PHPGW_IMAGES . '/delete.gif" name="delete" title="' . lang('Delete selected') .
'" border="0">');
- }
+ $this->_set_common_langs();
+ $this->template->set_var('header_message',lang('Compose
message'));
- $this->template->pfp('out','list');
- }
+
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.send_message'));
+ $this->template->set_var('value_to','<input
name="message[to]" value="' . $message['to'] . '" size="30">');
+ $this->template->set_var('value_subject','<input
name="message[subject]" value="' . $message['subject'] . '" size="30">');
+ $this->template->set_var('value_content','<textarea
name="message[content]" rows="20" wrap="hard" cols="76">' . $message['content']
. '</textarea>');
- function set_compose_read_blocks()
- {
- $this->template->set_file('_form','form.tpl');
+ $this->template->set_var('button_send','<input
type="submit" name="send" value="' . lang('Send') . '">');
+ $this->template->set_var('button_cancel','<input
type="submit" name="cancel" value="' . lang('Cancel') . '">');
- $this->template->set_block('_form','form');
- $this->template->set_block('_form','form_to');
- $this->template->set_block('_form','form_date');
- $this->template->set_block('_form','form_from');
- $this->template->set_block('_form','form_buttons');
- $this->template->set_block('_form','form_read_buttons');
-
$this->template->set_block('_form','form_read_buttons_for_global');
+ $this->template->fp('to','form_to');
+ $this->template->fp('buttons','form_buttons');
+ $this->template->pfp('out','form');
}
function compose_global($errors = '')
@@ -143,15 +77,15 @@
return False;
}
- $this->display_headers();
- $this->set_compose_read_blocks();
+ $this->_display_headers();
+ $this->_set_compose_read_blocks();
if (is_array($errors))
{
$this->template->set_var('errors',$GLOBALS['phpgw']->common->error_list($errors));
}
- $this->set_common_langs();
+ $this->_set_common_langs();
$this->template->set_var('header_message',lang('Compose
global message'));
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.send_global_message'));
@@ -165,54 +99,100 @@
$this->template->pfp('out','form');
}
- function compose($errors = '')
+ function delete()
{
- $message = get_var('message',Array('POST'));
+ $messages = $_REQUEST['messages'];
+ $this->bo->delete_message($messages);
- $this->display_headers();
- $this->set_compose_read_blocks();
+ $this->inbox();
+ }
- if (is_array($errors))
- {
-
$this->template->set_var('errors',$GLOBALS['phpgw']->common->error_list($errors));
- }
+ function inbox()
+ {
+ $start = $_REQUEST['start'];
+ $order = $_REQUEST['order'];
+ $sort = $_REQUEST['sort'];
+ $total = $this->bo->total_messages();
- $this->set_common_langs();
- $this->template->set_var('header_message',lang('Compose
message'));
+ $extra_menuaction =
'&menuaction=messenger.uimessenger.inbox';
+ $extra_header_info['nextmatchs_left'] =
$this->nextmatchs->left('/index.php',$start,$total,$extra_menuaction);
+ $extra_header_info['nextmatchs_right'] =
$this->nextmatchs->right('/index.php',$start,$total,$extra_menuaction);
-
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.send_message'));
- $this->template->set_var('value_to','<input
name="message[to]" value="' . $message['to'] . '" size="30">');
- $this->template->set_var('value_subject','<input
name="message[subject]" value="' . $message['subject'] . '" size="30">');
- $this->template->set_var('value_content','<textarea
name="message[content]" rows="20" wrap="hard" cols="76">' . $message['content']
. '</textarea>');
+ $this->_display_headers($extra_header_info);
- $gdbutton = CreateObject('phpgwapi.gdbutton');
+ $this->template->set_file('_inbox','inbox.tpl');
+ $this->template->set_block('_inbox', 'row', 'rows');
+ $this->template->set_block('_inbox','list');
+ $this->template->set_block('_inbox','row_empty');
-
$this->template->set_var('button_send',$gdbutton->input_button(array('font_text'
=> lang('send'),'button_name' => 'send')));
-
$this->template->set_var('button_cancel',$gdbutton->input_button(array('font_text'
=> lang('cancel'),'button_name' => 'cancel')));
+ $this->_set_common_langs();
+ $this->template->set_var('sort_date','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_date',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('Date') . '</a>');
+ $this->template->set_var('sort_subject','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_subject',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('Subject') . '</a>');
+ $this->template->set_var('sort_from','<a href="' .
$this->nextmatchs->show_sort_order($sort,'message_from',$order,'/index.php','','&menuaction=messenger.uimessenger.inbox',False)
. '" class="topsort">' . lang('From') . '</a>');
- $this->template->fp('to','form_to');
- $this->template->fp('buttons','form_buttons');
- $this->template->pfp('out','form');
+ $params = array(
+ 'start' => $start,
+ 'order' => $order,
+ 'sort' => $sort
+ );
+ $messages = $this->bo->read_inbox($params);
+
+ if (! is_array($messages))
+ {
+ $this->template->set_var('lang_empty',lang('You
have no messages'));
+ $this->template->fp('rows','row_empty',True);
+ }
+ else
+ {
+
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.delete'));
+
$this->template->set_var('button_delete','<input type="image" src="' .
PHPGW_IMAGES . '/delete.gif" name="delete" title="' . lang('Delete selected') .
'" border="0">');
+ $i = 0;
+ foreach ( $messages as $message)
+ {
+ $status = $message['status'];
+ if ($message['status'] == 'N' ||
$message['status'] == 'O')
+ {
+ $status = ' ';
+ }
+
+ $this->template->set_var(array
+ (
+ 'row_class' => $i %
2 ? 'row_on' : 'row_off',
+ 'row_date' =>
$message['date'],
+ 'row_from' =>
$message['from'],
+ 'row_msg_id' =>
$message['id'],
+ 'row_status' => $status,
+ 'row_subject' =>
$GLOBALS['phpgw']->strip_html($message['subject']),
+ 'row_url' =>
$GLOBALS['phpgw']->link('/index.php', array('menuaction' =>
'messenger.uimessenger.read_message', 'message_id' => $message['id']))
+ ));
+ $this->template->parse('rows', 'row',
true);
+ ++$i;
+ }
+
+
+ }
+
+ $this->template->pfp('out','list');
}
function read_message()
{
- $message_id = get_var('message_id',Array('POST','GET'));
+ $message_id = $_REQUEST['message_id'];
$message = $this->bo->read_message($message_id);
- $this->display_headers();
- $this->set_compose_read_blocks();
- $this->set_common_langs();
+ $this->_display_headers();
+ $this->_set_compose_read_blocks();
+ $this->_set_common_langs();
$this->template->set_var('header_message',lang('Read
message'));
- $this->template->set_var('value_from',$message['from']);
-
$this->template->set_var('value_subject',$message['subject']);
- $this->template->set_var('value_date',$message['date']);
- $this->template->set_var('value_content','<pre>' .
$GLOBALS['phpgw']->strip_html($message['content']) . '</pre>');
+ $this->template->set_var('value_from',
$message['from']);
+ $this->template->set_var('value_subject',
$GLOBALS['phpgw']->strip_html($message['subject']));
+ $this->template->set_var('value_date',
$message['date']);
+ $this->template->set_var('value_content',
nl2br(wordwrap($GLOBALS['phpgw']->strip_html($message['content']), 80)));
$this->template->set_var('link_delete','<a href="'
- .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.delete_message&messages%5B%5D='
. $message['id'])
+ .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.delete&messages%5B%5D='
. $message['id'])
. '">' . lang('Delete') . '</a>');
$this->template->set_var('link_reply','<a href="'
@@ -225,9 +205,9 @@
switch($message['status'])
{
- case 'N':
$this->template->set_var('value_status',lang('New')); break;
- case 'R':
$this->template->set_var('value_status',lang('Replied')); break;
- case 'F':
$this->template->set_var('value_status',lang('Forwarded')); break;
+ case 'N':
$this->template->set_var('value_status',lang('New')); break;
+ case 'R':
$this->template->set_var('value_status',lang('Replied')); break;
+ case 'F':
$this->template->set_var('value_status',lang('Forwarded')); break;
}
if ($message['global_message'])
@@ -246,7 +226,7 @@
function reply($errors = '', $message = '')
{
- $message_id = get_var('message_id',Array('POST','GET'));
+ $message_id = $_REQUEST['message_id'];
if(is_array($errors))
{
@@ -259,9 +239,9 @@
$message =
$this->bo->read_message_for_reply($message_id,'RE');
}
- $this->display_headers();
- $this->set_compose_read_blocks();
- $this->set_common_langs();
+ $this->_display_headers();
+ $this->_set_compose_read_blocks();
+ $this->_set_common_langs();
if (is_array($errors))
{
@@ -272,8 +252,8 @@
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.reply&message_id='
. $message['id']));
$this->template->set_var('value_to','<input
name="n_message[to]" value="' . $message['from'] . '" size="30">');
- $this->template->set_var('value_subject','<input
name="n_message[subject]" value="' . stripslashes($message['subject']) . '"
size="30">');
- $this->template->set_var('value_content','<textarea
name="n_message[content]" rows="20" wrap="hard" cols="76">' .
stripslashes($message['content']) . '</textarea>');
+ $this->template->set_var('value_subject','<input
name="n_message[subject]" value="' .
$GLOBALS['phpgw']->strip_html(stripslashes($message['subject'])) . '"
size="30">');
+ $this->template->set_var('value_content','<textarea
name="n_message[content]" rows="20" wrap="hard" cols="76">' .
$GLOBALS['phpgw']->strip_html(stripslashes($message['content'])) .
'</textarea>');
$this->template->set_var('button_send','<input
type="submit" name="send" value="' . lang('Send') . '">');
$this->template->set_var('button_cancel','<input
type="submit" name="cancel" value="' . lang('Cancel') . '">');
@@ -285,7 +265,7 @@
function forward($errors = '', $message = '')
{
- $message_id = get_var('message_id',Array('POST','GET'));
+ $message_id = $_REQUEST['message_id'];
if(is_array($errors))
{
@@ -298,9 +278,9 @@
$message =
$this->bo->read_message_for_reply($message_id,'FW');
}
- $this->display_headers();
- $this->set_compose_read_blocks();
- $this->set_common_langs();
+ $this->_display_headers();
+ $this->_set_compose_read_blocks();
+ $this->_set_common_langs();
if (is_array($errors))
{
@@ -311,8 +291,8 @@
$this->template->set_var('form_action',$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.bomessenger.forward&message_id='
. $message['id']));
$this->template->set_var('value_to','<input
name="n_message[to]" value="' . $message['from'] . '" size="30">');
- $this->template->set_var('value_subject','<input
name="n_message[subject]" value="' . stripslashes($message['subject']) . '"
size="30">');
- $this->template->set_var('value_content','<textarea
name="n_message[content]" rows="20" wrap="hard" cols="76">' .
stripslashes($message['content']) . '</textarea>');
+ $this->template->set_var('value_subject','<input
name="n_message[subject]" value="' .
$GLOBALS['phpgw']->strip_html(stripslashes($message['subject'])) . '"
size="30">');
+ $this->template->set_var('value_content','<textarea
name="n_message[content]" rows="20" wrap="hard" cols="76">' .
$GLOBALS['phpgw']->strip_html(stripslashes($message['content'])) .
'</textarea>');
$this->template->set_var('button_send','<input
type="submit" name="send" value="' . lang('Send') . '">');
$this->template->set_var('button_cancel','<input
type="submit" name="cancel" value="' . lang('Cancel') . '">');
@@ -321,4 +301,57 @@
$this->template->fp('buttons','form_buttons');
$this->template->pfp('out','form');
}
+
+ function _display_headers($extras = '')
+ {
+ $this->template->set_file('_header','header.tpl');
+ $this->template->set_block('_header','global_header');
+ $this->template->set_var('lang_inbox','<a href="' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.inbox')
. '">' . lang('Inbox') . '</a>');
+ $this->template->set_var('lang_compose','<a href="' .
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.compose')
. '">' . lang('Compose') . '</a>');
+
+ if ($extras['nextmatchs_left'])
+ {
+
$this->template->set_var('nextmatchs_left',$extras['nextmatchs_left']);
+ }
+
+ if ($extras['nextmatchs_right'])
+ {
+
$this->template->set_var('nextmatchs_right',$extras['nextmatchs_right']);
+ }
+
+ $this->template->fp('app_header','global_header');
+
+ $GLOBALS['phpgw']->common->phpgw_header();
+ echo parse_navbar();
+ }
+
+ function _error_not_connected()
+ {
+ $this->_display_headers();
+ die( lang('exiting with error!') . "<br />\n" .
lang('Unable to connect to server, please contact your system administrator') );
+ }
+
+
+ function _set_common_langs()
+ {
+ $this->template->set_var('lang_to',lang('Send message
to'));
+ $this->template->set_var('lang_from',lang('Message
from'));
+
$this->template->set_var('lang_subject',lang('Subject'));
+
$this->template->set_var('lang_content',lang('Message'));
+ $this->template->set_var('lang_date',lang('Date'));
+ }
+
+ function _set_compose_read_blocks()
+ {
+ $this->template->set_file('_form','form.tpl');
+
+ $this->template->set_block('_form','form');
+ $this->template->set_block('_form','form_to');
+ $this->template->set_block('_form','form_date');
+ $this->template->set_block('_form','form_from');
+ $this->template->set_block('_form','form_buttons');
+ $this->template->set_block('_form','form_read_buttons');
+
$this->template->set_block('_form','form_read_buttons_for_global');
+ }
}
+?>
\ No newline at end of file
Index: messenger/inc/hook_admin.inc.php
diff -u messenger/inc/hook_admin.inc.php:1.7
messenger/inc/hook_admin.inc.php:1.8
--- messenger/inc/hook_admin.inc.php:1.7 Wed Apr 23 01:43:52 2003
+++ messenger/inc/hook_admin.inc.php Sun Apr 9 13:53:18 2006
@@ -11,13 +11,15 @@
* Free Software Foundation; either version 2 of the License, or (at
your *
* option) any later version.
*
\**************************************************************************/
- /* $Id: hook_admin.inc.php,v 1.7 2003/04/23 01:43:52 ceb Exp $ */
+ /* $Id: hook_admin.inc.php,v 1.8 2006/04/09 13:53:18 skwashd Exp $ */
+
+ $file = Array
+ (
+
+ // later maybe, was not enabled before imap backend was added
'Compose global message' =>
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.compose_global')
+ 'Site Configuration' =>
$GLOBALS['phpgw']->link('/index.php','menuaction=admin.uiconfig.index&appname='
. $appname)
+ );
+
+ display_section($appname,$file);
- {
- $file = Array
- (
- 'Compose global message' =>
$GLOBALS['phpgw']->link('/index.php','menuaction=messenger.uimessenger.compose_global')
- );
- $GLOBALS['phpgw']->common->display_mainscreen($appname,$file);
- }
?>
Index: messenger/setup/phpgw_sv.lang
diff -u messenger/setup/phpgw_sv.lang:1.3 messenger/setup/phpgw_sv.lang:1.4
--- messenger/setup/phpgw_sv.lang:1.3 Mon Nov 3 23:46:00 2003
+++ messenger/setup/phpgw_sv.lang Sun Apr 9 13:53:18 2006
@@ -5,18 +5,18 @@
delete selected messenger sv Radera vald
forward messenger sv Vidarebefordra
forward a message messenger sv Vidarebefordra ett meddelande
-forward a message to another user. messenger sv Vidarebefordra
ett meddelande till en annan användare.
+forward a message to another user. messenger sv Vidarebefordra
ett meddelande till en annan användare.
forwarded messenger sv Vidarebefordrad
-from messenger sv Från
+from messenger sv Från
global message messenger sv Globalt meddelande
-i can't find the username %1 on the system messenger sv Jag kan
inte hitta användarnamnet %1 i systemet
+i can't find the username %1 on the system messenger sv Jag kan
inte hitta användarnamnet %1 i systemet
inbox messenger sv Inkorg
-message from messenger sv Meddelande från
+message from messenger sv Meddelande från
messenger common sv Messenger
new messenger sv Nytt
-read a list of messages. messenger sv Läs en lista på
meddelanden.
-read a single message. messenger sv Läs ett enstaka meddelande.
-read message messenger sv Läs meddelande
+read a list of messages. messenger sv Läs en lista på
meddelanden.
+read a single message. messenger sv Läs ett enstaka meddelande.
+read message messenger sv Läs meddelande
replied messenger sv Besvarad
reply messenger sv Besvara
reply to a message messenger sv Besvara ett meddelande
@@ -25,11 +25,11 @@
send a global message. messenger sv Skicka ett globalt meddelande
send a message to a single recipient. messenger sv Skicka ett
meddelande till en mottagare.
send message to messenger sv Skicka meddelande till
-sorry, %1's account is not currently active messenger sv Tyvärr,
%1's konto är inte aktivt just nu
-update a message status messenger sv Uppdatera status för
ett meddelande
-you didn't enter anything for the message messenger sv Du har
inte fyllt i något i meddelandet
+sorry, %1's account is not currently active messenger sv
Tyvärr, %1's konto är inte aktivt just nu
+update a message status messenger sv Uppdatera status för
ett meddelande
+you didn't enter anything for the message messenger sv Du har
inte fyllt i något i meddelandet
you have %1 new message messenger sv Du har %1 nytt
meddelande
you have %1 new messages messenger sv Du har %1 nya
meddelanden
you have no messages messenger sv Du har inga meddelanden
-you must enter a subject messenger sv Du måste ange en rubrik
-you must enter the username this message is for messenger sv
Du måste ange användarnamnet som meddelandet ska skickas till
+you must enter a subject messenger sv Du måste ange en rubrik
+you must enter the username this message is for messenger sv
Du måste ange användarnamnet som meddelandet ska skickas till
Index: messenger/setup/setup.inc.php
diff -u messenger/setup/setup.inc.php:1.6 messenger/setup/setup.inc.php:1.7
--- messenger/setup/setup.inc.php:1.6 Sat Mar 11 23:20:49 2006
+++ messenger/setup/setup.inc.php Sun Apr 9 13:53:18 2006
@@ -12,11 +12,11 @@
* option) any later version.
*
\**************************************************************************/
- /* $Id: setup.inc.php,v 1.6 2006/03/11 23:20:49 skwashd Exp $ */
+ /* $Id: setup.inc.php,v 1.7 2006/04/09 13:53:18 skwashd Exp $ */
/* Basic information about this app */
$setup_info['messenger']['name'] = 'messenger';
- $setup_info['messenger']['version'] = '0.8.1';
+ $setup_info['messenger']['version'] = '0.9.0';
$setup_info['messenger']['app_order'] = '10';
$setup_info['messenger']['enable'] = 1;
$setup_info['messenger']['app_group'] = 'office';
@@ -27,6 +27,7 @@
);
/* The hooks this app includes, needed for hooks registration */
+ $setup_info['messenger']['hooks'][] = 'admin';
$setup_info['messenger']['hooks'][] = 'preferences';
$setup_info['messenger']['hooks'][] = 'home';
$setup_info['messenger']['hooks'][] = 'after_navbar';
@@ -34,6 +35,6 @@
/* Dependencies for this app to work */
$setup_info['messenger']['depends'][] = array(
'appname' => 'phpgwapi',
- 'versions' => Array('0.9.13', '0.9.14', '0.9.15', '0.9.17',
'0.9.18')
+ 'versions' => Array('0.9.18')
);
?>
Index: messenger/templates/base/inbox.tpl
diff -u messenger/templates/base/inbox.tpl:1.1
messenger/templates/base/inbox.tpl:1.2
--- messenger/templates/base/inbox.tpl:1.1 Sat Mar 25 13:03:49 2006
+++ messenger/templates/base/inbox.tpl Sun Apr 9 13:53:18 2006
@@ -1,12 +1,6 @@
<!-- BEGIN list -->
-<STYLE type="text/css">
- <!--
- .topsort { color: #000000; }
- -->
-</STYLE>
-
-<script>
-
+<script type="text/javascript">
+//<[CDATA[
function check_all()
{
for (i=0; i<document.messages.elements.length; i++) {
@@ -19,30 +13,35 @@
}
}
}
+//]]>
</script>
{app_header}
-<form action="{form_action}" method="POST" name="messages">
- <table border="0" width="95%" align="center" bgcolor="#DCDCDC">
- <tr>
- <td>
-
- <table border="0" width="100%" cellpadding="2" cellspacing="1">
- <tr bgcolor="#FFFFCC">
- <td width="1%" align="center"><input type="checkbox"
onClick="check_all()"></td>
- <td width="1%"> </td>
- <td width="8%">{sort_date}</td>
- <td width="27%">{sort_from}</td>
- <td width="60%">{sort_subject}</td>
- </tr>
-
- {rows}
+<form action="{form_action}" method="post" name="messages">
+ <table>
+ <thead>
+ <tr>
+ <td width="1%" align="center"><input
type="checkbox" onClick="check_all()"></td>
+ <td width="1%"> </td>
+ <td width="8%">{sort_date}</td>
+ <td width="27%">{sort_from}</td>
+ <td width="60%">{sort_subject}</td>
+ </tr>
+ </thead>
+ <tbody>
+<!-- BEGIN row -->
+ <tr class="{row_class}">
+ <td><input type="checkbox" name="messages[]"
value="{row_msg_id}" /></td>
+ <td><strong>{row_status}</strong></td>
+ <td>{row_date}</td>
+ <td>{row_from}</td>
+ <td><a href="{row_url}">{row_subject}</a></td>
+ </tr>
+<!-- END row -->
+ </tbody>
</table>
-
- </td>
- </tr>
- </table>
+
<table border="0" width="95%" align="center">
<tr>
@@ -54,15 +53,6 @@
</form>
<!-- END list -->
-<!-- BEGIN row -->
- <tr bgcolor="#FFFFFF">
- <td width="1%" align="center">{row_checkbox}</td>
- <td align="center"><b>{row_status}</b></td>
- <td>{row_date}</td>
- <td>{row_from}</td>
- <td>{row_subject}</td>
- </tr>
-<!-- END row -->
<!-- BEGIN row_empty -->
<tr bgcolor="#FFFFFF">
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] messenger inc/hook_admin.inc.php inc/class.some...,
Dave Hall <=