-rw-r--r-- | kmicromail/libmailwrapper/settings.cpp | 85 | ||||
-rw-r--r-- | kmicromail/libmailwrapper/settings.h | 3 |
2 files changed, 64 insertions, 24 deletions
diff --git a/kmicromail/libmailwrapper/settings.cpp b/kmicromail/libmailwrapper/settings.cpp index f996d9c..766eba0 100644 --- a/kmicromail/libmailwrapper/settings.cpp +++ b/kmicromail/libmailwrapper/settings.cpp | |||
@@ -2,7 +2,7 @@ | |||
2 | #include <qdir.h> | 2 | #include <qdir.h> |
3 | 3 | ||
4 | //#include <opie2/odebug.h> | 4 | //#include <opie2/odebug.h> |
5 | #include <qpe/config.h> | 5 | #include <kconfig.h> |
6 | 6 | ||
7 | #include <kstandarddirs.h> | 7 | #include <kstandarddirs.h> |
8 | #include "settings.h" | 8 | #include "settings.h" |
@@ -112,7 +112,10 @@ Account::Account() | |||
112 | type = MAILLIB::A_UNDEFINED; | 112 | type = MAILLIB::A_UNDEFINED; |
113 | ssl = false; | 113 | ssl = false; |
114 | connectionType = 1; | 114 | connectionType = 1; |
115 | offline = false; | 115 | offline = false; |
116 | maxMailSize = 0; | ||
117 | lastFetch; | ||
118 | leaveOnServer = false; | ||
116 | } | 119 | } |
117 | 120 | ||
118 | void Account::remove() | 121 | void Account::remove() |
@@ -121,6 +124,30 @@ void Account::remove() | |||
121 | file.remove(); | 124 | file.remove(); |
122 | } | 125 | } |
123 | 126 | ||
127 | void Account::setPasswordList(const QStringList &str) | ||
128 | { | ||
129 | password = ""; | ||
130 | int i; | ||
131 | for ( i = 0; i < str.count() ; ++i ) { | ||
132 | QChar c ( (str[i].toUInt()-131)/(str.count()- (i%3))); | ||
133 | password.append( c ); | ||
134 | } | ||
135 | //qDebug("password %s ", password.latin1()); | ||
136 | } | ||
137 | QStringList Account::getPasswordList() | ||
138 | { | ||
139 | int i; | ||
140 | int len = password.length(); | ||
141 | QStringList str; | ||
142 | |||
143 | for ( i = 0; i < len ; ++i ) { | ||
144 | int val = password.at(i).unicode()*(len-(i%3))+131; | ||
145 | str.append( QString::number( val ) ); | ||
146 | // qDebug("append %s ", str[i].latin1()); | ||
147 | } | ||
148 | return str; | ||
149 | } | ||
150 | |||
124 | IMAPaccount::IMAPaccount() | 151 | IMAPaccount::IMAPaccount() |
125 | : Account() | 152 | : Account() |
126 | { | 153 | { |
@@ -160,7 +187,7 @@ QString IMAPaccount::getUniqueFileName() | |||
160 | 187 | ||
161 | void IMAPaccount::read() | 188 | void IMAPaccount::read() |
162 | { | 189 | { |
163 | Config *conf = new Config( getFileName(), Config::File ); | 190 | KConfig *conf = new KConfig( getFileName() ); |
164 | conf->setGroup( "IMAP Account" ); | 191 | conf->setGroup( "IMAP Account" ); |
165 | accountName = conf->readEntry( "Account","" ); | 192 | accountName = conf->readEntry( "Account","" ); |
166 | if (accountName.isNull()) accountName = ""; | 193 | if (accountName.isNull()) accountName = ""; |
@@ -172,7 +199,8 @@ void IMAPaccount::read() | |||
172 | ssl = conf->readBoolEntry( "SSL",false ); | 199 | ssl = conf->readBoolEntry( "SSL",false ); |
173 | user = conf->readEntry( "User","" ); | 200 | user = conf->readEntry( "User","" ); |
174 | if (user.isNull()) user = ""; | 201 | if (user.isNull()) user = ""; |
175 | password = conf->readEntryCrypt( "Password","" ); | 202 | //password = conf->readEntryCrypt( "Password","" ); |
203 | setPasswordList( conf->readListEntry( "FolderHistory")); | ||
176 | if (password.isNull()) password = ""; | 204 | if (password.isNull()) password = ""; |
177 | prefix = conf->readEntry("MailPrefix",""); | 205 | prefix = conf->readEntry("MailPrefix",""); |
178 | if (prefix.isNull()) prefix = ""; | 206 | if (prefix.isNull()) prefix = ""; |
@@ -182,6 +210,8 @@ void IMAPaccount::read() | |||
182 | int lf = conf->readNumEntry( "LastFetch",0 ); | 210 | int lf = conf->readNumEntry( "LastFetch",0 ); |
183 | QDateTime dt ( QDate ( 2004, 1, 1 ), QTime( 0,0,0) ); | 211 | QDateTime dt ( QDate ( 2004, 1, 1 ), QTime( 0,0,0) ); |
184 | leaveOnServer = conf->readBoolEntry("LeaveOnServer",false); | 212 | leaveOnServer = conf->readBoolEntry("LeaveOnServer",false); |
213 | qDebug("reading last fetch: %d ", lf); | ||
214 | if ( lf < 0 ) lf = 0; | ||
185 | lastFetch = dt.addSecs( lf ); | 215 | lastFetch = dt.addSecs( lf ); |
186 | delete conf; | 216 | delete conf; |
187 | } | 217 | } |
@@ -191,7 +221,7 @@ void IMAPaccount::save() | |||
191 | qDebug("saving %s ",getFileName().latin1() ); | 221 | qDebug("saving %s ",getFileName().latin1() ); |
192 | Settings::checkDirectory(); | 222 | Settings::checkDirectory(); |
193 | 223 | ||
194 | Config *conf = new Config( getFileName(), Config::File ); | 224 | KConfig *conf = new KConfig( getFileName() ); |
195 | conf->setGroup( "IMAP Account" ); | 225 | conf->setGroup( "IMAP Account" ); |
196 | conf->writeEntry( "Account", accountName ); | 226 | conf->writeEntry( "Account", accountName ); |
197 | conf->writeEntry( "Server", server ); | 227 | conf->writeEntry( "Server", server ); |
@@ -199,7 +229,8 @@ void IMAPaccount::save() | |||
199 | conf->writeEntry( "SSL", ssl ); | 229 | conf->writeEntry( "SSL", ssl ); |
200 | conf->writeEntry( "ConnectionType", connectionType ); | 230 | conf->writeEntry( "ConnectionType", connectionType ); |
201 | conf->writeEntry( "User", user ); | 231 | conf->writeEntry( "User", user ); |
202 | conf->writeEntryCrypt( "Password", password ); | 232 | //conf->writeEntryCrypt( "Password", password ); |
233 | conf->writeEntry( "FolderHistory",getPasswordList() ); | ||
203 | conf->writeEntry( "MailPrefix",prefix); | 234 | conf->writeEntry( "MailPrefix",prefix); |
204 | conf->writeEntry( "Offline",offline); | 235 | conf->writeEntry( "Offline",offline); |
205 | conf->writeEntry( "LocalFolder", localFolder ); | 236 | conf->writeEntry( "LocalFolder", localFolder ); |
@@ -208,7 +239,7 @@ void IMAPaccount::save() | |||
208 | int lf = dt.secsTo ( lastFetch ); | 239 | int lf = dt.secsTo ( lastFetch ); |
209 | conf->writeEntry( "LastFetch", lf ); | 240 | conf->writeEntry( "LastFetch", lf ); |
210 | conf->writeEntry( "LeaveOnServer", leaveOnServer); | 241 | conf->writeEntry( "LeaveOnServer", leaveOnServer); |
211 | conf->write(); | 242 | conf->sync(); |
212 | delete conf; | 243 | delete conf; |
213 | } | 244 | } |
214 | 245 | ||
@@ -257,7 +288,7 @@ QString POP3account::getUniqueFileName() | |||
257 | 288 | ||
258 | void POP3account::read() | 289 | void POP3account::read() |
259 | { | 290 | { |
260 | Config *conf = new Config( getFileName(), Config::File ); | 291 | KConfig *conf = new KConfig( getFileName()); |
261 | conf->setGroup( "POP3 Account" ); | 292 | conf->setGroup( "POP3 Account" ); |
262 | accountName = conf->readEntry( "Account" ); | 293 | accountName = conf->readEntry( "Account" ); |
263 | server = conf->readEntry( "Server" ); | 294 | server = conf->readEntry( "Server" ); |
@@ -265,7 +296,8 @@ void POP3account::read() | |||
265 | ssl = conf->readBoolEntry( "SSL" ); | 296 | ssl = conf->readBoolEntry( "SSL" ); |
266 | connectionType = conf->readNumEntry( "ConnectionType" ); | 297 | connectionType = conf->readNumEntry( "ConnectionType" ); |
267 | user = conf->readEntry( "User" ); | 298 | user = conf->readEntry( "User" ); |
268 | password = conf->readEntryCrypt( "Password" ); | 299 | //password = conf->readEntryCrypt( "Password" ); |
300 | setPasswordList( conf->readListEntry( "FolderHistory")); | ||
269 | offline = conf->readBoolEntry("Offline",false); | 301 | offline = conf->readBoolEntry("Offline",false); |
270 | localFolder = conf->readEntry( "LocalFolder" ); | 302 | localFolder = conf->readEntry( "LocalFolder" ); |
271 | maxMailSize = conf->readNumEntry( "MaxSize",0 ); | 303 | maxMailSize = conf->readNumEntry( "MaxSize",0 ); |
@@ -280,7 +312,7 @@ void POP3account::save() | |||
280 | { | 312 | { |
281 | Settings::checkDirectory(); | 313 | Settings::checkDirectory(); |
282 | 314 | ||
283 | Config *conf = new Config( getFileName(), Config::File ); | 315 | KConfig *conf = new KConfig( getFileName() ); |
284 | conf->setGroup( "POP3 Account" ); | 316 | conf->setGroup( "POP3 Account" ); |
285 | conf->writeEntry( "Account", accountName ); | 317 | conf->writeEntry( "Account", accountName ); |
286 | conf->writeEntry( "Server", server ); | 318 | conf->writeEntry( "Server", server ); |
@@ -288,7 +320,8 @@ void POP3account::save() | |||
288 | conf->writeEntry( "SSL", ssl ); | 320 | conf->writeEntry( "SSL", ssl ); |
289 | conf->writeEntry( "ConnectionType", connectionType ); | 321 | conf->writeEntry( "ConnectionType", connectionType ); |
290 | conf->writeEntry( "User", user ); | 322 | conf->writeEntry( "User", user ); |
291 | conf->writeEntryCrypt( "Password", password ); | 323 | //conf->writeEntryCrypt( "Password", password ); |
324 | conf->writeEntry( "FolderHistory",getPasswordList() ); | ||
292 | conf->writeEntry( "Offline",offline); | 325 | conf->writeEntry( "Offline",offline); |
293 | conf->writeEntry( "LocalFolder", localFolder ); | 326 | conf->writeEntry( "LocalFolder", localFolder ); |
294 | conf->writeEntry( "MaxSize", maxMailSize ); | 327 | conf->writeEntry( "MaxSize", maxMailSize ); |
@@ -296,7 +329,7 @@ void POP3account::save() | |||
296 | int lf = dt.secsTo ( lastFetch ); | 329 | int lf = dt.secsTo ( lastFetch ); |
297 | conf->writeEntry( "LastFetch", lf ); | 330 | conf->writeEntry( "LastFetch", lf ); |
298 | conf->writeEntry( "LeaveOnServer", leaveOnServer); | 331 | conf->writeEntry( "LeaveOnServer", leaveOnServer); |
299 | conf->write(); | 332 | conf->sync(); |
300 | delete conf; | 333 | delete conf; |
301 | } | 334 | } |
302 | 335 | ||
@@ -350,7 +383,7 @@ QString SMTPaccount::getUniqueFileName() | |||
350 | 383 | ||
351 | void SMTPaccount::read() | 384 | void SMTPaccount::read() |
352 | { | 385 | { |
353 | Config *conf = new Config( getFileName(), Config::File ); | 386 | KConfig *conf = new KConfig( getFileName() ); |
354 | conf->setGroup( "SMTP Account" ); | 387 | conf->setGroup( "SMTP Account" ); |
355 | accountName = conf->readEntry( "Account" ); | 388 | accountName = conf->readEntry( "Account" ); |
356 | server = conf->readEntry( "Server" ); | 389 | server = conf->readEntry( "Server" ); |
@@ -359,7 +392,8 @@ void SMTPaccount::read() | |||
359 | connectionType = conf->readNumEntry( "ConnectionType" ); | 392 | connectionType = conf->readNumEntry( "ConnectionType" ); |
360 | login = conf->readBoolEntry( "Login" ); | 393 | login = conf->readBoolEntry( "Login" ); |
361 | user = conf->readEntry( "User" ); | 394 | user = conf->readEntry( "User" ); |
362 | password = conf->readEntryCrypt( "Password" ); | 395 | //password = conf->readEntryCrypt( "Password" ); |
396 | setPasswordList( conf->readListEntry( "FolderHistory")); | ||
363 | delete conf; | 397 | delete conf; |
364 | } | 398 | } |
365 | 399 | ||
@@ -367,7 +401,7 @@ void SMTPaccount::save() | |||
367 | { | 401 | { |
368 | Settings::checkDirectory(); | 402 | Settings::checkDirectory(); |
369 | 403 | ||
370 | Config *conf = new Config( getFileName(), Config::File ); | 404 | KConfig *conf = new KConfig( getFileName() ); |
371 | conf->setGroup( "SMTP Account" ); | 405 | conf->setGroup( "SMTP Account" ); |
372 | conf->writeEntry( "Account", accountName ); | 406 | conf->writeEntry( "Account", accountName ); |
373 | conf->writeEntry( "Server", server ); | 407 | conf->writeEntry( "Server", server ); |
@@ -376,8 +410,9 @@ void SMTPaccount::save() | |||
376 | conf->writeEntry( "ConnectionType", connectionType ); | 410 | conf->writeEntry( "ConnectionType", connectionType ); |
377 | conf->writeEntry( "Login", login ); | 411 | conf->writeEntry( "Login", login ); |
378 | conf->writeEntry( "User", user ); | 412 | conf->writeEntry( "User", user ); |
379 | conf->writeEntryCrypt( "Password", password ); | 413 | //conf->writeEntryCrypt( "Password", password ); |
380 | conf->write(); | 414 | conf->writeEntry( "FolderHistory",getPasswordList() ); |
415 | conf->sync(); | ||
381 | delete conf; | 416 | delete conf; |
382 | } | 417 | } |
383 | 418 | ||
@@ -426,7 +461,7 @@ QString NNTPaccount::getUniqueFileName() | |||
426 | 461 | ||
427 | void NNTPaccount::read() | 462 | void NNTPaccount::read() |
428 | { | 463 | { |
429 | Config *conf = new Config( getFileName(), Config::File ); | 464 | KConfig *conf = new KConfig( getFileName() ); |
430 | conf->setGroup( "NNTP Account" ); | 465 | conf->setGroup( "NNTP Account" ); |
431 | accountName = conf->readEntry( "Account" ); | 466 | accountName = conf->readEntry( "Account" ); |
432 | server = conf->readEntry( "Server" ); | 467 | server = conf->readEntry( "Server" ); |
@@ -434,8 +469,9 @@ void NNTPaccount::read() | |||
434 | ssl = conf->readBoolEntry( "SSL" ); | 469 | ssl = conf->readBoolEntry( "SSL" ); |
435 | login = conf->readBoolEntry( "Login" ); | 470 | login = conf->readBoolEntry( "Login" ); |
436 | user = conf->readEntry( "User" ); | 471 | user = conf->readEntry( "User" ); |
437 | password = conf->readEntryCrypt( "Password" ); | 472 | //password = conf->readEntryCrypt( "Password" ); |
438 | subscribedGroups = conf->readListEntry( "Subscribed", ',' ); | 473 | setPasswordList( conf->readListEntry( "FolderHistory")); |
474 | subscribedGroups = conf->readListEntry( "Subscribed"); | ||
439 | delete conf; | 475 | delete conf; |
440 | } | 476 | } |
441 | 477 | ||
@@ -443,7 +479,7 @@ void NNTPaccount::save() | |||
443 | { | 479 | { |
444 | Settings::checkDirectory(); | 480 | Settings::checkDirectory(); |
445 | 481 | ||
446 | Config *conf = new Config( getFileName(), Config::File ); | 482 | KConfig *conf = new KConfig( getFileName() ); |
447 | conf->setGroup( "NNTP Account" ); | 483 | conf->setGroup( "NNTP Account" ); |
448 | conf->writeEntry( "Account", accountName ); | 484 | conf->writeEntry( "Account", accountName ); |
449 | conf->writeEntry( "Server", server ); | 485 | conf->writeEntry( "Server", server ); |
@@ -451,9 +487,10 @@ void NNTPaccount::save() | |||
451 | conf->writeEntry( "SSL", ssl ); | 487 | conf->writeEntry( "SSL", ssl ); |
452 | conf->writeEntry( "Login", login ); | 488 | conf->writeEntry( "Login", login ); |
453 | conf->writeEntry( "User", user ); | 489 | conf->writeEntry( "User", user ); |
454 | conf->writeEntryCrypt( "Password", password ); | 490 | //conf->writeEntryCrypt( "Password", password ); |
455 | conf->writeEntry( "Subscribed" , subscribedGroups, ',' ); | 491 | conf->writeEntry( "FolderHistory",getPasswordList() ); |
456 | conf->write(); | 492 | conf->writeEntry( "Subscribed" , subscribedGroups ); |
493 | conf->sync(); | ||
457 | delete conf; | 494 | delete conf; |
458 | } | 495 | } |
459 | 496 | ||
diff --git a/kmicromail/libmailwrapper/settings.h b/kmicromail/libmailwrapper/settings.h index 85b817c..61051dd 100644 --- a/kmicromail/libmailwrapper/settings.h +++ b/kmicromail/libmailwrapper/settings.h | |||
@@ -37,6 +37,9 @@ public: | |||
37 | void setPassword(const QString&str) { password = str; } | 37 | void setPassword(const QString&str) { password = str; } |
38 | const QString&getPassword()const { return password; } | 38 | const QString&getPassword()const { return password; } |
39 | 39 | ||
40 | void setPasswordList(const QStringList &str); | ||
41 | QStringList getPasswordList(); | ||
42 | |||
40 | void setSSL( bool b ) { ssl = b; } | 43 | void setSSL( bool b ) { ssl = b; } |
41 | bool getSSL() { return ssl; } | 44 | bool getSSL() { return ssl; } |
42 | 45 | ||