[ Index ] |
|
Code source de eGroupWare 1.2.106-2 |
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 }
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sun Feb 25 17:20:01 2007 | par Balluche grâce à PHPXref 0.7 |