summaryrefslogtreecommitdiff
path: root/noncore/net/mail/libmailwrapper/settings.cpp
Unidiff
Diffstat (limited to 'noncore/net/mail/libmailwrapper/settings.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/libmailwrapper/settings.cpp36
1 files changed, 23 insertions, 13 deletions
diff --git a/noncore/net/mail/libmailwrapper/settings.cpp b/noncore/net/mail/libmailwrapper/settings.cpp
index 17aa1b0..c5187f5 100644
--- a/noncore/net/mail/libmailwrapper/settings.cpp
+++ b/noncore/net/mail/libmailwrapper/settings.cpp
@@ -1,19 +1,29 @@
1#include <stdlib.h> 1#include <stdlib.h>
2#include <qdir.h> 2#include <qdir.h>
3 3
4#include <qpe/config.h> 4#include <qpe/config.h>
5 5
6#include "settings.h" 6#include "settings.h"
7#include "defines.h" 7//#include "defines.h"
8
9#define IMAP_PORT "143"
10#define IMAP_SSL_PORT "993"
11#define SMTP_PORT "25"
12#define SMTP_SSL_PORT "465"
13#define POP3_PORT "110"
14#define POP3_SSL_PORT "995"
15#define NNTP_PORT "119"
16#define NNTP_SSL_PORT "563"
17
8 18
9Settings::Settings() 19Settings::Settings()
10 : QObject() 20 : QObject()
11{ 21{
12 updateAccounts(); 22 updateAccounts();
13} 23}
14 24
15void Settings::checkDirectory() 25void Settings::checkDirectory()
16{ 26{
17 if ( !QDir( (QString) getenv( "HOME" ) + "/Applications/opiemail/" ).exists() ) { 27 if ( !QDir( (QString) getenv( "HOME" ) + "/Applications/opiemail/" ).exists() ) {
18 system( "mkdir -p $HOME/Applications/opiemail" ); 28 system( "mkdir -p $HOME/Applications/opiemail" );
19 qDebug( "$HOME/Applications/opiemail created" ); 29 qDebug( "$HOME/Applications/opiemail created" );
@@ -53,48 +63,48 @@ void Settings::updateAccounts()
53 for ( it = pop3.begin(); it != pop3.end(); it++ ) { 63 for ( it = pop3.begin(); it != pop3.end(); it++ ) {
54 qDebug( "Added POP account" ); 64 qDebug( "Added POP account" );
55 POP3account *account = new POP3account( (*it).replace(0, 5, "") ); 65 POP3account *account = new POP3account( (*it).replace(0, 5, "") );
56 accounts.append( account ); 66 accounts.append( account );
57 } 67 }
58 68
59 QStringList smtp = dir.entryList( "smtp-*" ); 69 QStringList smtp = dir.entryList( "smtp-*" );
60 for ( it = smtp.begin(); it != smtp.end(); it++ ) { 70 for ( it = smtp.begin(); it != smtp.end(); it++ ) {
61 qDebug( "Added SMTP account" ); 71 qDebug( "Added SMTP account" );
62 SMTPaccount *account = new SMTPaccount( (*it).replace(0, 5, "") ); 72 SMTPaccount *account = new SMTPaccount( (*it).replace(0, 5, "") );
63 accounts.append( account ); 73 accounts.append( account );
64 } 74 }
65 75
66 QStringList nntp = dir.entryList( "nntp-*" ); 76 QStringList nntp = dir.entryList( "nntp-*" );
67 for ( it = nntp.begin(); it != nntp.end(); it++ ) { 77 for ( it = nntp.begin(); it != nntp.end(); it++ ) {
68 qDebug( "Added NNTP account" ); 78 qDebug( "Added NNTP account" );
69 NNTPaccount *account = new NNTPaccount( (*it).replace(0, 5, "") ); 79 NNTPaccount *account = new NNTPaccount( (*it).replace(0, 5, "") );
70 accounts.append( account ); 80 accounts.append( account );
71 } 81 }
72 82
73 readAccounts(); 83 readAccounts();
74} 84}
75 85
76void Settings::saveAccounts() 86void Settings::saveAccounts()
77{ 87{
78 checkDirectory(); 88 checkDirectory();
79 Account *it; 89 Account *it;
80 90
81 for ( it = accounts.first(); it; it = accounts.next() ) { 91 for ( it = accounts.first(); it; it = accounts.next() ) {
82 it->save(); 92 it->save();
83 } 93 }
84} 94}
85 95
86void Settings::readAccounts() 96void Settings::readAccounts()
87{ 97{
88 checkDirectory(); 98 checkDirectory();
89 Account *it; 99 Account *it;
90 100
91 for ( it = accounts.first(); it; it = accounts.next() ) { 101 for ( it = accounts.first(); it; it = accounts.next() ) {
92 it->read(); 102 it->read();
93 } 103 }
94} 104}
95 105
96Account::Account() 106Account::Account()
97{ 107{
98 accountName = "changeMe"; 108 accountName = "changeMe";
99 type = "changeMe"; 109 type = "changeMe";
100 ssl = false; 110 ssl = false;
@@ -121,25 +131,25 @@ IMAPaccount::IMAPaccount( QString filename )
121{ 131{
122 file = filename; 132 file = filename;
123 accountName = "New IMAP Account"; 133 accountName = "New IMAP Account";
124 ssl = false; 134 ssl = false;
125 type = "IMAP"; 135 type = "IMAP";
126 port = IMAP_PORT; 136 port = IMAP_PORT;
127} 137}
128 138
129QString IMAPaccount::getUniqueFileName() 139QString IMAPaccount::getUniqueFileName()
130{ 140{
131 int num = 0; 141 int num = 0;
132 QString unique; 142 QString unique;
133 143
134 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" ); 144 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" );
135 145
136 QStringList imap = dir.entryList( "imap-*" ); 146 QStringList imap = dir.entryList( "imap-*" );
137 do { 147 do {
138 unique.setNum( num++ ); 148 unique.setNum( num++ );
139 } while ( imap.contains( "imap-" + unique ) > 0 ); 149 } while ( imap.contains( "imap-" + unique ) > 0 );
140 150
141 return unique; 151 return unique;
142} 152}
143 153
144void IMAPaccount::read() 154void IMAPaccount::read()
145{ 155{
@@ -155,25 +165,25 @@ void IMAPaccount::read()
155 user = conf->readEntry( "User","" ); 165 user = conf->readEntry( "User","" );
156 if (user.isNull()) user = ""; 166 if (user.isNull()) user = "";
157 password = conf->readEntryCrypt( "Password","" ); 167 password = conf->readEntryCrypt( "Password","" );
158 if (password.isNull()) password = ""; 168 if (password.isNull()) password = "";
159 prefix = conf->readEntry("MailPrefix",""); 169 prefix = conf->readEntry("MailPrefix","");
160 if (prefix.isNull()) prefix = ""; 170 if (prefix.isNull()) prefix = "";
161} 171}
162 172
163void IMAPaccount::save() 173void IMAPaccount::save()
164{ 174{
165 qDebug( "saving " + getFileName() ); 175 qDebug( "saving " + getFileName() );
166 Settings::checkDirectory(); 176 Settings::checkDirectory();
167 177
168 Config *conf = new Config( getFileName(), Config::File ); 178 Config *conf = new Config( getFileName(), Config::File );
169 conf->setGroup( "IMAP Account" ); 179 conf->setGroup( "IMAP Account" );
170 conf->writeEntry( "Account", accountName ); 180 conf->writeEntry( "Account", accountName );
171 conf->writeEntry( "Server", server ); 181 conf->writeEntry( "Server", server );
172 conf->writeEntry( "Port", port ); 182 conf->writeEntry( "Port", port );
173 conf->writeEntry( "SSL", ssl ); 183 conf->writeEntry( "SSL", ssl );
174 conf->writeEntry( "User", user ); 184 conf->writeEntry( "User", user );
175 conf->writeEntryCrypt( "Password", password ); 185 conf->writeEntryCrypt( "Password", password );
176 conf->writeEntry( "MailPrefix",prefix); 186 conf->writeEntry( "MailPrefix",prefix);
177 conf->write(); 187 conf->write();
178} 188}
179 189
@@ -198,25 +208,25 @@ POP3account::POP3account( QString filename )
198{ 208{
199 file = filename; 209 file = filename;
200 accountName = "New POP3 Account"; 210 accountName = "New POP3 Account";
201 ssl = false; 211 ssl = false;
202 type = "POP3"; 212 type = "POP3";
203 port = POP3_PORT; 213 port = POP3_PORT;
204} 214}
205 215
206QString POP3account::getUniqueFileName() 216QString POP3account::getUniqueFileName()
207{ 217{
208 int num = 0; 218 int num = 0;
209 QString unique; 219 QString unique;
210 220
211 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" ); 221 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" );
212 222
213 QStringList imap = dir.entryList( "pop3-*" ); 223 QStringList imap = dir.entryList( "pop3-*" );
214 do { 224 do {
215 unique.setNum( num++ ); 225 unique.setNum( num++ );
216 } while ( imap.contains( "pop3-" + unique ) > 0 ); 226 } while ( imap.contains( "pop3-" + unique ) > 0 );
217 227
218 return unique; 228 return unique;
219} 229}
220 230
221void POP3account::read() 231void POP3account::read()
222{ 232{
@@ -225,25 +235,25 @@ void POP3account::read()
225 accountName = conf->readEntry( "Account" ); 235 accountName = conf->readEntry( "Account" );
226 server = conf->readEntry( "Server" ); 236 server = conf->readEntry( "Server" );
227 port = conf->readEntry( "Port" ); 237 port = conf->readEntry( "Port" );
228 ssl = conf->readBoolEntry( "SSL" ); 238 ssl = conf->readBoolEntry( "SSL" );
229 user = conf->readEntry( "User" ); 239 user = conf->readEntry( "User" );
230 password = conf->readEntryCrypt( "Password" ); 240 password = conf->readEntryCrypt( "Password" );
231} 241}
232 242
233void POP3account::save() 243void POP3account::save()
234{ 244{
235 qDebug( "saving " + getFileName() ); 245 qDebug( "saving " + getFileName() );
236 Settings::checkDirectory(); 246 Settings::checkDirectory();
237 247
238 Config *conf = new Config( getFileName(), Config::File ); 248 Config *conf = new Config( getFileName(), Config::File );
239 conf->setGroup( "POP3 Account" ); 249 conf->setGroup( "POP3 Account" );
240 conf->writeEntry( "Account", accountName ); 250 conf->writeEntry( "Account", accountName );
241 conf->writeEntry( "Server", server ); 251 conf->writeEntry( "Server", server );
242 conf->writeEntry( "Port", port ); 252 conf->writeEntry( "Port", port );
243 conf->writeEntry( "SSL", ssl ); 253 conf->writeEntry( "SSL", ssl );
244 conf->writeEntry( "User", user ); 254 conf->writeEntry( "User", user );
245 conf->writeEntryCrypt( "Password", password ); 255 conf->writeEntryCrypt( "Password", password );
246 conf->write(); 256 conf->write();
247} 257}
248 258
249 259
@@ -272,25 +282,25 @@ SMTPaccount::SMTPaccount( QString filename )
272 file = filename; 282 file = filename;
273 accountName = "New SMTP Account"; 283 accountName = "New SMTP Account";
274 ssl = false; 284 ssl = false;
275 login = false; 285 login = false;
276 type = "SMTP"; 286 type = "SMTP";
277 port = SMTP_PORT; 287 port = SMTP_PORT;
278} 288}
279 289
280QString SMTPaccount::getUniqueFileName() 290QString SMTPaccount::getUniqueFileName()
281{ 291{
282 int num = 0; 292 int num = 0;
283 QString unique; 293 QString unique;
284 294
285 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" ); 295 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" );
286 296
287 QStringList imap = dir.entryList( "smtp-*" ); 297 QStringList imap = dir.entryList( "smtp-*" );
288 do { 298 do {
289 unique.setNum( num++ ); 299 unique.setNum( num++ );
290 } while ( imap.contains( "smtp-" + unique ) > 0 ); 300 } while ( imap.contains( "smtp-" + unique ) > 0 );
291 301
292 return unique; 302 return unique;
293} 303}
294 304
295void SMTPaccount::read() 305void SMTPaccount::read()
296{ 306{
@@ -300,25 +310,25 @@ void SMTPaccount::read()
300 server = conf->readEntry( "Server" ); 310 server = conf->readEntry( "Server" );
301 port = conf->readEntry( "Port" ); 311 port = conf->readEntry( "Port" );
302 ssl = conf->readBoolEntry( "SSL" ); 312 ssl = conf->readBoolEntry( "SSL" );
303 login = conf->readBoolEntry( "Login" ); 313 login = conf->readBoolEntry( "Login" );
304 user = conf->readEntry( "User" ); 314 user = conf->readEntry( "User" );
305 password = conf->readEntryCrypt( "Password" ); 315 password = conf->readEntryCrypt( "Password" );
306} 316}
307 317
308void SMTPaccount::save() 318void SMTPaccount::save()
309{ 319{
310 qDebug( "saving " + getFileName() ); 320 qDebug( "saving " + getFileName() );
311 Settings::checkDirectory(); 321 Settings::checkDirectory();
312 322
313 Config *conf = new Config( getFileName(), Config::File ); 323 Config *conf = new Config( getFileName(), Config::File );
314 conf->setGroup( "SMTP Account" ); 324 conf->setGroup( "SMTP Account" );
315 conf->writeEntry( "Account", accountName ); 325 conf->writeEntry( "Account", accountName );
316 conf->writeEntry( "Server", server ); 326 conf->writeEntry( "Server", server );
317 conf->writeEntry( "Port", port ); 327 conf->writeEntry( "Port", port );
318 conf->writeEntry( "SSL", ssl ); 328 conf->writeEntry( "SSL", ssl );
319 conf->writeEntry( "Login", login ); 329 conf->writeEntry( "Login", login );
320 conf->writeEntry( "User", user ); 330 conf->writeEntry( "User", user );
321 conf->writeEntryCrypt( "Password", password ); 331 conf->writeEntryCrypt( "Password", password );
322 conf->write(); 332 conf->write();
323} 333}
324 334
@@ -345,25 +355,25 @@ NNTPaccount::NNTPaccount( QString filename )
345 file = filename; 355 file = filename;
346 accountName = "New NNTP Account"; 356 accountName = "New NNTP Account";
347 ssl = false; 357 ssl = false;
348 login = false; 358 login = false;
349 type = "NNTP"; 359 type = "NNTP";
350 port = NNTP_PORT; 360 port = NNTP_PORT;
351} 361}
352 362
353QString NNTPaccount::getUniqueFileName() 363QString NNTPaccount::getUniqueFileName()
354{ 364{
355 int num = 0; 365 int num = 0;
356 QString unique; 366 QString unique;
357 367
358 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" ); 368 QDir dir( (QString) getenv( "HOME" ) + "/Applications/opiemail" );
359 369
360 QStringList imap = dir.entryList( "nntp-*" ); 370 QStringList imap = dir.entryList( "nntp-*" );
361 do { 371 do {
362 unique.setNum( num++ ); 372 unique.setNum( num++ );
363 } while ( imap.contains( "nntp-" + unique ) > 0 ); 373 } while ( imap.contains( "nntp-" + unique ) > 0 );
364 374
365 return unique; 375 return unique;
366} 376}
367 377
368void NNTPaccount::read() 378void NNTPaccount::read()
369{ 379{
@@ -373,25 +383,25 @@ void NNTPaccount::read()
373 server = conf->readEntry( "Server" ); 383 server = conf->readEntry( "Server" );
374 port = conf->readEntry( "Port" ); 384 port = conf->readEntry( "Port" );
375 ssl = conf->readBoolEntry( "SSL" ); 385 ssl = conf->readBoolEntry( "SSL" );
376 login = conf->readBoolEntry( "Login" ); 386 login = conf->readBoolEntry( "Login" );
377 user = conf->readEntry( "User" ); 387 user = conf->readEntry( "User" );
378 password = conf->readEntryCrypt( "Password" ); 388 password = conf->readEntryCrypt( "Password" );
379} 389}
380 390
381void NNTPaccount::save() 391void NNTPaccount::save()
382{ 392{
383 qDebug( "saving " + getFileName() ); 393 qDebug( "saving " + getFileName() );
384 Settings::checkDirectory(); 394 Settings::checkDirectory();
385 395
386 Config *conf = new Config( getFileName(), Config::File ); 396 Config *conf = new Config( getFileName(), Config::File );
387 conf->setGroup( "NNTP Account" ); 397 conf->setGroup( "NNTP Account" );
388 conf->writeEntry( "Account", accountName ); 398 conf->writeEntry( "Account", accountName );
389 conf->writeEntry( "Server", server ); 399 conf->writeEntry( "Server", server );
390 conf->writeEntry( "Port", port ); 400 conf->writeEntry( "Port", port );
391 conf->writeEntry( "SSL", ssl ); 401 conf->writeEntry( "SSL", ssl );
392 conf->writeEntry( "Login", login ); 402 conf->writeEntry( "Login", login );
393 conf->writeEntry( "User", user ); 403 conf->writeEntry( "User", user );
394 conf->writeEntryCrypt( "Password", password ); 404 conf->writeEntryCrypt( "Password", password );
395 conf->write(); 405 conf->write();
396} 406}
397 407