// // C++ Implementation: accountsetupitem // // Description: // // // Author: Ulrich Weigelt , (C) 2007 // // Copyright: See COPYING file that comes with this distribution // // #include "accountsetupitem.h" AccountSetupItem::AccountSetupItem( TDEListView* parent ) : TDEListViewItem( parent ) { init(); } AccountSetupItem::AccountSetupItem( TDEListView * parent, TQString & name ) : TDEListViewItem( parent ) { init(); //save account name _account = name; //set column text setText( 0, getAccountName() ); } AccountSetupItem::~AccountSetupItem() { } void AccountSetupItem::init( ) { //set default values _account = DEFAULT_ACCOUNT_NAME; _server = DEFAULT_ACCOUNT_SERVER; _protocol = DEFAULT_ACCOUNT_PROTOCOL; _port = DEFAULT_ACCOUNT_PORT_POP3; _user = DEFAULT_ACCOUNT_USER; _password = DEFAULT_ACCOUNT_PASSWORD; _passwordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE; _active = DEFAULT_ACCOUNT_ACTIVE; _transferSecurity = DEFAULT_ACCOUNT_SECTRANSFER; //get application config object (kshowmailrc) config = TDEApplication::kApplication()->config(); } void AccountSetupItem::setAccountName( const TQString & name ) { _account = name; } TQString AccountSetupItem::getAccountName( ) const { return _account; } void AccountSetupItem::setServer( const TQString & server ) { _server = server; } TQString AccountSetupItem::getServer( ) const { return _server; } void AccountSetupItem::setProtocol( const TQString & protocol ) { _protocol = protocol; } TQString AccountSetupItem::getProtocol( ) const { return _protocol; } void AccountSetupItem::setPort( int port ) { if( port >= 0 && port <= 65535 ) _port = port; else _port = DEFAULT_ACCOUNT_PORT_POP3; } int AccountSetupItem::getPort( ) const { return _port; } void AccountSetupItem::setUser( const TQString & user ) { _user = user; } TQString AccountSetupItem::getUser( ) const { return _user; } void AccountSetupItem::setPassword( const TQString & password ) { _password = password; } TQString AccountSetupItem::getPassword( ) const { return _password; } void AccountSetupItem::setPasswordStorageType( int type ) { if( type == CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE || type == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE || type == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_TDEWALLET ) _passwordStorage = type; else _passwordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE; } int AccountSetupItem::getPasswordStorageType( ) const { return _passwordStorage; } void AccountSetupItem::setActive( bool active ) { _active = active; } bool AccountSetupItem::getActive( ) const { return _active; } void AccountSetupItem::save() const { config->setGroup( getAccountName() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_NAME, getAccountName() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_SERVER, getServer() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, getProtocol().upper() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_PORT, getPort() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_USER, getUser() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, getPasswordStorageType() ); //save crypted password KURL url; url.setUser( getUser() ); url.setHost( getServer() ); url.setPass( getPassword() ); if( getPasswordStorageType() == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE ) config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, crypt( url ) ); else config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, TQString::null ); //save password in TDEWallet if desired if( getPasswordStorageType() == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_TDEWALLET ) TDEWalletAccess::savePassword( getAccountName(), getPassword() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, getActive() ); config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, getTransferSecurity() ); } void AccountSetupItem::load( ) { config->setGroup( getAccountName() ); _server = config->readEntry( CONFIG_ENTRY_ACCOUNT_SERVER, DEFAULT_ACCOUNT_SERVER ); _protocol = config->readEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, DEFAULT_ACCOUNT_PROTOCOL ); _port = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PORT, DEFAULT_ACCOUNT_PORT_POP3 ); _user = config->readEntry( CONFIG_ENTRY_ACCOUNT_USER, DEFAULT_ACCOUNT_USER ); _passwordStorage = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, DEFAULT_ACCOUNT_PASSWORD_STORAGE ); if( _passwordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE ) _password = decrypt( config->readEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, DEFAULT_ACCOUNT_PASSWORD ) ); else if( _passwordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_TDEWALLET ) _password = TDEWalletAccess::getPassword( getAccountName() ); else _password = TQString::null; _active = config->readBoolEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, DEFAULT_ACCOUNT_ACTIVE ); _transferSecurity = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, DEFAULT_ACCOUNT_SECTRANSFER ); } void AccountSetupItem::setTransferSecurity( int type ) { if( type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE || type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL || type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS ) _transferSecurity = type; else _transferSecurity = DEFAULT_ACCOUNT_SECTRANSFER; } int AccountSetupItem::getTransferSecurity( ) const { return _transferSecurity; }