From a90ad2840f5a10576caf0219036ae26ed1090dcc Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Wed, 07 Dec 2011 06:39:36 -0500
Subject: [PATCH] - Deprecate $DB, $USER, $IMAP global variables, Use $RCMAIL instead

---
 CHANGELOG                                  |    1 +
 program/steps/settings/delete_identity.inc |    2 +-
 program/steps/mail/compose.inc             |    2 +-
 program/include/rcmail.php                 |   13 ++++++++-----
 program/steps/settings/func.inc            |    4 ++--
 program/steps/settings/save_identity.inc   |    6 +++---
 program/steps/mail/sendmail.inc            |    4 ++--
 program/steps/settings/save_prefs.inc      |    2 +-
 bin/msgexport.sh                           |    8 ++++----
 program/steps/settings/edit_identity.inc   |    2 +-
 10 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 59b0dc9..7cfb358 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 CHANGELOG Roundcube Webmail
 ===========================
 
+- Deprecate $DB, $USER, $IMAP global variables, Use $RCMAIL instead
 - Add option to set default font for HTML message (#1484137)
 - Fix issues with big memory allocation of IMAP results
 - Replace prompt() with jQuery UI dialog (#1485135)
diff --git a/bin/msgexport.sh b/bin/msgexport.sh
index 0aa33b5..239d893 100755
--- a/bin/msgexport.sh
+++ b/bin/msgexport.sh
@@ -30,12 +30,12 @@
 function export_mailbox($mbox, $filename)
 {
 	global $IMAP;
-	
+
 	$IMAP->set_mailbox($mbox);
-	
+
 	vputs("Getting message list of {$mbox}...");
 	vputs($IMAP->messagecount()." messages\n");
-	
+
 	if ($filename)
 	{
 		if (!($out = fopen($filename, 'w')))
@@ -47,7 +47,7 @@
 	}
 	else
 		$out = STDOUT;
-	
+
 	for ($count = $IMAP->messagecount(), $i=1; $i <= $count; $i++)
 	{
 		$headers = $IMAP->get_headers($i, null, false);
diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index 9f26450..59ffaea 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -159,8 +159,6 @@
   /**
    * Initial startup function
    * to register session, create database and imap connections
-   *
-   * @todo Remove global vars $DB, $USER
    */
   private function startup()
   {
@@ -172,7 +170,10 @@
     }
 
     // connect to database
-    $GLOBALS['DB'] = $this->get_dbh();
+    $this->get_dbh();
+
+    // set global object for backward compatibility
+    $GLOBALS['DB'] = $this->db;
 
     // start session
     $this->session_init();
@@ -240,6 +241,8 @@
   {
     if (is_object($user)) {
       $this->user = $user;
+
+      // set global object for backward compatibility
       $GLOBALS['USER'] = $this->user;
 
       // overwrite config with user preferences
@@ -320,8 +323,8 @@
 
     return $this->db;
   }
-  
-  
+
+
   /**
    * Get global handle for memcache access
    *
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index c3863e4..0850322 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -245,7 +245,7 @@
 $MESSAGE->compose = array();
 
 // get user's identities
-$MESSAGE->identities = $USER->list_identities();
+$MESSAGE->identities = $RCMAIL->user->list_identities();
 if (count($MESSAGE->identities))
 {
   foreach ($MESSAGE->identities as $idx => $ident) {
diff --git a/program/steps/mail/sendmail.inc b/program/steps/mail/sendmail.inc
index e4e5093..9d4d425 100644
--- a/program/steps/mail/sendmail.inc
+++ b/program/steps/mail/sendmail.inc
@@ -72,9 +72,9 @@
 // get identity record
 function rcmail_get_identity($id)
 {
-  global $USER, $OUTPUT;
+  global $RCMAIL, $OUTPUT;
 
-  if ($sql_arr = $USER->get_identity($id)) {
+  if ($sql_arr = $RCMAIL->user->get_identity($id)) {
     $out = $sql_arr;
     $out['mailto'] = $sql_arr['email'];
     $out['string'] = format_email_recipient($sql_arr['email'],
diff --git a/program/steps/settings/delete_identity.inc b/program/steps/settings/delete_identity.inc
index 275bcb6..a110c1c 100644
--- a/program/steps/settings/delete_identity.inc
+++ b/program/steps/settings/delete_identity.inc
@@ -32,7 +32,7 @@
 {
   $plugin = $RCMAIL->plugins->exec_hook('identity_delete', array('id' => $iid));
   
-  $deleted = !$plugin['abort'] ? $USER->delete_identity($iid) : $plugin['result'];
+  $deleted = !$plugin['abort'] ? $RCMAIL->user->delete_identity($iid) : $plugin['result'];
 
   if ($deleted > 0 && $deleted !== false)
     $OUTPUT->show_message('deletedsuccessfully', 'confirmation', null, false);
diff --git a/program/steps/settings/edit_identity.inc b/program/steps/settings/edit_identity.inc
index a42e8d0..df5cf93 100644
--- a/program/steps/settings/edit_identity.inc
+++ b/program/steps/settings/edit_identity.inc
@@ -23,7 +23,7 @@
 
 // edit-identity
 if (($_GET['_iid'] || $_POST['_iid']) && $RCMAIL->action=='edit-identity') {
-  $IDENTITY_RECORD = $USER->get_identity(get_input_value('_iid', RCUBE_INPUT_GPC));
+  $IDENTITY_RECORD = $RCMAIL->user->get_identity(get_input_value('_iid', RCUBE_INPUT_GPC));
 
   if (is_array($IDENTITY_RECORD))
     $OUTPUT->set_env('iid', $IDENTITY_RECORD['identity_id']);
diff --git a/program/steps/settings/func.inc b/program/steps/settings/func.inc
index 65836a9..ac55acb 100644
--- a/program/steps/settings/func.inc
+++ b/program/steps/settings/func.inc
@@ -63,14 +63,14 @@
 
 function rcmail_identities_list($attrib)
 {
-  global $OUTPUT, $USER, $RCMAIL;
+  global $OUTPUT, $RCMAIL;
 
   // add id to message list table if not specified
   if (!strlen($attrib['id']))
     $attrib['id'] = 'rcmIdentitiesList';
 
   // get identities list and define 'mail' column
-  $list = $USER->list_identities();
+  $list = $RCMAIL->user->list_identities();
   foreach ($list as $idx => $row)
     $list[$idx]['mail'] = trim($row['name'] . ' <' . rcube_idn_to_utf8($row['email']) .'>');
 
diff --git a/program/steps/settings/save_identity.inc b/program/steps/settings/save_identity.inc
index f493f73..f88e732 100644
--- a/program/steps/settings/save_identity.inc
+++ b/program/steps/settings/save_identity.inc
@@ -84,7 +84,7 @@
     $save_data['reply-to'] = rcube_idn_to_ascii($save_data['reply-to']);
 
   if (!$plugin['abort'])
-    $updated = $USER->update_identity($iid, $save_data);
+    $updated = $RCMAIL->user->update_identity($iid, $save_data);
   else
     $updated = $plugin['result'];
 
@@ -124,7 +124,7 @@
     $save_data['reply-to'] = rcube_idn_to_ascii($save_data['reply-to']);
 
   if (!$plugin['abort'])
-    $insert_id = $save_data['email'] ? $USER->insert_identity($save_data) : null;
+    $insert_id = $save_data['email'] ? $RCMAIL->user->insert_identity($save_data) : null;
   else
     $insert_id = $plugin['result'];
 
@@ -149,7 +149,7 @@
 
 // mark all other identities as 'not-default'
 if ($default_id)
-  $USER->set_default($default_id);
+  $RCMAIL->user->set_default($default_id);
 
 // go to next step
 rcmail_overwrite_action('identities');
diff --git a/program/steps/settings/save_prefs.inc b/program/steps/settings/save_prefs.inc
index a6388c5..5cb79d1 100644
--- a/program/steps/settings/save_prefs.inc
+++ b/program/steps/settings/save_prefs.inc
@@ -188,7 +188,7 @@
 
 // Save preferences
 if (!$plugin['abort'])
-  $saved = $USER->save_prefs($a_user_prefs);
+  $saved = $RCMAIL->user->save_prefs($a_user_prefs);
 else
   $saved = $plugin['result'];
 

--
Gitblit v1.9.1