[ Index ]
 

Code source de eGroupWare 1.2.106-2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/felamimail/inc/ -> class.bopreferences.inc.php (source)

   1  <?php
   2      /***************************************************************************\
   3      * eGroupWare - FeLaMiMail                                                   *
   4      * http://www.linux-at-work.de                                               *
   5      * http://www.phpgw.de                                                       *
   6      * http://www.egroupware.org                                                 *
   7      * Written by : Lars Kneschke [lkneschke@linux-at-work.de]                   *
   8      * -------------------------------------------------                         *
   9      * This program is free software; you can redistribute it and/or modify it   *
  10      * under the terms of the GNU General Public License as published by the     *
  11      * Free Software Foundation; either version 2 of the License, or (at your    *
  12      * option) any later version.                                                *
  13      \***************************************************************************/
  14      /* $Id: class.bopreferences.inc.php 20039 2005-11-28 18:00:18Z lkneschke $ */
  15  
  16      class bopreferences
  17      {
  18          var $public_functions = array
  19          (
  20              'getPreferences'    => True,
  21          );
  22          
  23  		function bopreferences()
  24          {
  25              $this->boemailadmin =& CreateObject('emailadmin.bo');
  26          }
  27          
  28  		function getPreferences()
  29          {
  30              $data['emailConfigValid'] = true;
  31  
  32              $imapServerTypes    = $this->boemailadmin->getIMAPServerTypes();
  33              #$profileData        = $this->boemailadmin->getProfile($this->profileID);
  34              $profileData        = $this->boemailadmin->getUserProfile();
  35              
  36              if(!is_array($profileData) || $imapServerTypes[$profileData['imapType']]['protocol'] != 'imap')
  37              {
  38                  $data['emailConfigValid'] = false;
  39                  return $data;
  40              }
  41              
  42              #$usersEMailAddresses    = $this->boemailadmin->getAccountEmailAddress($GLOBALS['egw_info']['user']['userid'], $this->profileID);
  43              
  44              #_debug_array($usersEMailAddresses);
  45              
  46              $felamimailUserPrefs = $GLOBALS['egw_info']['user']['preferences']['felamimail'];
  47              
  48              // set values to the global values
  49              $data['profileID']        = $profileData['profileID'];
  50              $data['imapServerAddress']    = $profileData['imapServer'];
  51              $data['key']            = $GLOBALS['egw_info']['user']['passwd'];
  52              if ($profileData['imapLoginType'] == 'vmailmgr')
  53                  $data['username']        = $GLOBALS['egw_info']['user']['userid']."@".$profileData['defaultDomain'];
  54              else
  55                  $data['username']        = $GLOBALS['egw_info']['user']['userid'];
  56              $data['imap_server_type']    = $imapServerTypes[$profileData['imapType']]['protocol'];
  57              $data['realname']        = $GLOBALS['egw_info']['user']['fullname'];
  58              $data['defaultDomainname']    = $profileData['defaultDomain'];
  59  
  60              $data['smtpServerAddress']    = $profileData['smtpServer'];
  61              $data['smtpPort']        = $profileData['smtpPort'];
  62              $data['editForwardingAddress']    = ($profileData['editforwardingaddress'] == 'yes' ? true : false);
  63  
  64              if(!empty($profileData['organisationName']))
  65                  $data['organizationName']    = $profileData['organisationName'];
  66  
  67              $data['emailAddress']        = $this->boemailadmin->getAccountEmailAddress($GLOBALS['egw_info']['user']['userid'], $profileData['profileID']);
  68              $data['smtpAuth']        = $profileData['smtpAuth'];
  69              $data['imapAdminUsername']    = $profileData['imapAdminUsername'];
  70              $data['imapAdminPW']        = $profileData['imapAdminPW'];
  71  
  72              // check for user specific settings
  73              #_debug_array($felamimailUserPrefs);
  74              #_debug_array($profileData);
  75              
  76              if ($profileData['imapEnableSieve'] == 'yes')
  77              {
  78                  $data['imapSieveServer']    = $profileData['imapSieveServer'];
  79                  $data['imapSievePort']        = $profileData['imapSievePort'];
  80                  $data['imapEnableSieve']    = true;
  81              }
  82              
  83              if ($profileData['userDefinedAccounts'] == 'yes' &&
  84                  $felamimailUserPrefs['use_custom_settings'] == 'yes')
  85              {
  86                  if(!empty($felamimailUserPrefs['username']))
  87                      $data['username']        = $felamimailUserPrefs['username'];
  88  
  89                  if(!empty($felamimailUserPrefs['key']))
  90                      $data['key']            = $felamimailUserPrefs['key'];
  91  
  92                  if(!empty($felamimailUserPrefs['emailAddress']))
  93                      $data['emailAddress']        = array(
  94                                          array(
  95                                              'address'    => $felamimailUserPrefs['emailAddress'],
  96                                              'name'        => $GLOBALS['egw_info']['user']['fullname'],
  97                                              'type'        => 'default'
  98                                          )
  99                                      );
 100  
 101                  if(!empty($felamimailUserPrefs['imapServerAddress']))
 102                      $data['imapServerAddress']    = $felamimailUserPrefs['imapServerAddress'];
 103  
 104                  if(!empty($felamimailUserPrefs['imap_server_type']))
 105                      $data['imap_server_type']    = strtolower($felamimailUserPrefs['imap_server_type']);
 106              }
 107              
 108              if(($profileData['imapTLSEncryption'] == 'yes' ||
 109                  $profileData['imapTLSAuthentication'] == 'yes') &&
 110                  empty($profileData['imapPort']))
 111              {
 112                  $data['imapPort']    = 993;
 113              }
 114              else
 115              {
 116                  $data['imapPort']    = 143;
 117              }
 118              
 119              if($profileData['imapTLSEncryption'] == 'yes' &&
 120                   $profileData['imapTLSAuthentication'] == 'yes')
 121              {
 122                  $data['imapOptions']    = '/imap/tls';
 123              }
 124              elseif($profileData['imapTLSEncryption'] == 'yes')
 125              {
 126                  $data['imapOptions']    = '/imap/tls/novalidate-cert';
 127              }
 128              else
 129              {
 130                  if(version_compare(phpversion(),'4.3.0'))
 131                  {
 132                      $data['imapOptions']    = '/imap';
 133                  }
 134                  else
 135                  {
 136                      $data['imapOptions']    = '/imap/notls';
 137                  }
 138              }
 139              
 140              #_debug_array($data);
 141              
 142              $GLOBALS['egw']->preferences->read_repository();
 143              $userPrefs = $GLOBALS['egw_info']['user']['preferences'];
 144              
 145              // how to handle deleted messages
 146              if(isset($userPrefs['felamimail']['deleteOptions']))
 147              {
 148                  $data['deleteOptions'] = $userPrefs['felamimail']['deleteOptions'];
 149              }
 150              else
 151              {
 152                  $data['deleteOptions'] = 'mark_as_deleted';
 153              }
 154              
 155              $data['htmlOptions']        = $userPrefs['felamimail']['htmlOptions'];
 156               $data['sortOrder']        = $userPrefs['felamimail']['sortOrder'];
 157               $data['messageNewWindow']    = $userPrefs['felamimail']['message_newwindow'];
 158              
 159              // where is the trash folder
 160              $data['trash_folder']        = $userPrefs['felamimail']['trashFolder'];
 161              if(!empty($userPrefs['felamimail']['sentFolder']))
 162              {
 163                  $data['sent_folder']        = $userPrefs['felamimail']['sentFolder'];
 164                  $data['sentFolder']        = $userPrefs['felamimail']['sentFolder'];
 165              }
 166              $data['refreshTime']         = $userPrefs['felamimail']['refreshTime'];
 167  
 168              if (!empty($data['trash_folder'])) 
 169                  $data['move_to_trash']     = True;
 170              if (!empty($data['sent_folder'])) 
 171                  $data['move_to_sent']     = True;
 172              $data['signature']        = $userPrefs['felamimail']['email_sig'];
 173  
 174              #_debug_array($data);
 175              return $data;
 176          }
 177  }


Généré le : Sun Feb 25 17:20:01 2007 par Balluche grâce à PHPXref 0.7