2011-09-30 19:42:28 +04:00
/*
* Copyright ( C ) by Klaas Freitag < freitag @ kde . org >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful , but
* WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License
* for more details .
*/
2013-04-28 00:24:32 +04:00
# include <QtCore>
# include <QProcess>
# include <QMessageBox>
# include <QDesktopServices>
2012-02-17 14:11:18 +04:00
# include "mirall/owncloudsetupwizard.h"
# include "mirall/mirallconfigfile.h"
2012-02-17 18:54:39 +04:00
# include "mirall/owncloudinfo.h"
2012-03-14 14:26:00 +04:00
# include "mirall/folderman.h"
2012-12-11 18:07:44 +04:00
# include "mirall/credentialstore.h"
2013-03-21 15:01:37 +04:00
# include "mirall/utility.h"
2011-09-28 20:14:48 +04:00
namespace Mirall {
2012-03-26 17:19:40 +04:00
class Theme ;
OwncloudSetupWizard : : OwncloudSetupWizard ( FolderMan * folderMan , Theme * theme , QObject * parent ) :
2012-02-17 18:54:39 +04:00
QObject ( parent ) ,
2013-02-10 17:03:09 +04:00
_mkdirRequestReply ( 0 ) ,
_checkInstallationRequest ( 0 ) ,
2012-03-14 14:26:00 +04:00
_folderMan ( folderMan )
2011-09-28 20:14:48 +04:00
{
2013-04-28 00:24:32 +04:00
_ocWizard = new OwncloudWizard ;
2011-09-29 21:05:49 +04:00
2011-09-29 18:36:27 +04:00
connect ( _ocWizard , SIGNAL ( connectToOCUrl ( const QString & ) ) ,
this , SLOT ( slotConnectToOCUrl ( const QString & ) ) ) ;
2011-09-28 20:14:48 +04:00
2012-06-12 14:30:05 +04:00
connect ( _ocWizard , SIGNAL ( finished ( int ) ) , this , SLOT ( slotAssistantFinished ( int ) ) ) ;
2012-03-30 15:57:02 +04:00
2013-02-10 17:03:09 +04:00
connect ( _ocWizard , SIGNAL ( clearPendingRequests ( ) ) ,
this , SLOT ( slotClearPendingRequests ( ) ) ) ;
2013-02-21 15:21:42 +04:00
_ocWizard - > setWindowTitle ( tr ( " %1 Connection Wizard " ) . arg ( theme ? theme - > appNameGUI ( ) : QLatin1String ( " Mirall " ) ) ) ;
2012-03-26 17:19:40 +04:00
2012-04-12 13:37:48 +04:00
}
OwncloudSetupWizard : : ~ OwncloudSetupWizard ( )
{
2013-04-28 00:24:32 +04:00
// delete _ocWizard; FIXME: this crashes!
}
2012-07-26 12:16:18 +04:00
2013-04-28 00:24:32 +04:00
OwncloudWizard * OwncloudSetupWizard : : wizard ( ) {
return _ocWizard ;
2011-09-28 20:14:48 +04:00
}
2013-03-02 00:30:22 +04:00
void OwncloudSetupWizard : : startWizard ( )
{
// Set useful default values.
MirallConfigFile cfgFile ;
// Fill the entry fields with existing values.
QString url = cfgFile . ownCloudUrl ( ) ;
if ( ! url . isEmpty ( ) ) {
_ocWizard - > setOCUrl ( url ) ;
}
QString user = cfgFile . ownCloudUser ( ) ;
if ( ! user . isEmpty ( ) ) {
_ocWizard - > setOCUser ( user ) ;
}
2013-04-28 00:24:32 +04:00
_remoteFolder = Theme : : instance ( ) - > defaultServerFolder ( ) ;
// remoteFolder may be empty, which means /
_localFolder = Theme : : instance ( ) - > defaultClientFolder ( ) ;
// if its a relative path, prepend with users home dir, otherwise use as absolute path
if ( ! _localFolder . startsWith ( QLatin1Char ( ' / ' ) ) ) {
_localFolder = QDir : : homePath ( ) + QDir : : separator ( ) + Theme : : instance ( ) - > defaultClientFolder ( ) ;
}
_ocWizard - > setFolderNames ( _localFolder , _remoteFolder ) ;
2013-03-02 00:30:22 +04:00
_ocWizard - > setStartId ( OwncloudWizard : : Page_oCSetup ) ;
_ocWizard - > restart ( ) ;
_ocWizard - > show ( ) ;
}
2012-06-12 14:30:05 +04:00
// Method executed when the user ends the wizard, either with 'accept' or 'reject'.
// accept the custom config to be the main one if Accepted.
void OwncloudSetupWizard : : slotAssistantFinished ( int result )
{
MirallConfigFile cfg ( _configHandle ) ;
2013-03-02 00:30:22 +04:00
2012-06-12 14:30:05 +04:00
if ( result = = QDialog : : Rejected ) {
// the old config remains valid. Remove the temporary one.
cfg . cleanupCustomConfig ( ) ;
qDebug ( ) < < " Rejected the new config, use the old! " ;
} else if ( result = = QDialog : : Accepted ) {
qDebug ( ) < < " Config Changes were accepted! " ;
2013-01-25 14:29:45 +04:00
2013-02-10 23:04:03 +04:00
// go through all folders and remove the journals if the server changed.
MirallConfigFile prevCfg ;
if ( prevCfg . ownCloudUrl ( ) ! = cfg . ownCloudUrl ( ) ) {
qDebug ( ) < < " ownCloud URL has changed, journals needs to be wiped. " ;
_folderMan - > wipeAllJournals ( ) ;
}
2012-12-11 18:07:44 +04:00
// save the user credentials and afterwards clear the cred store.
2012-06-12 14:30:05 +04:00
cfg . acceptCustomConfig ( ) ;
// Now write the resulting folder definition if folder names are set.
if ( ! ( _localFolder . isEmpty ( ) | | _remoteFolder . isEmpty ( ) ) ) { // both variables are set.
if ( _folderMan ) {
2012-09-28 17:19:42 +04:00
_folderMan - > addFolderDefinition ( QLatin1String ( " owncloud " ) , Theme : : instance ( ) - > appName ( ) ,
_localFolder , _remoteFolder , false ) ;
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " <font color= \" green \" ><b>Local sync folder %1 successfully created!</b></font> " ) . arg ( _localFolder ) ) ;
2012-06-12 14:30:05 +04:00
} else {
qDebug ( ) < < " WRN: Folderman is zero in Setup Wizzard. " ;
}
}
} else {
qDebug ( ) < < " WRN: Got unknown dialog result code " < < result ;
}
// clear the custom config handle
_configHandle . clear ( ) ;
2012-08-17 19:13:17 +04:00
ownCloudInfo : : instance ( ) - > setCustomConfigHandle ( QString : : null ) ;
2012-06-12 14:30:05 +04:00
// notify others.
emit ownCloudWizardDone ( result ) ;
}
2012-02-17 14:11:18 +04:00
void OwncloudSetupWizard : : slotConnectToOCUrl ( const QString & url )
2011-09-28 20:14:48 +04:00
{
qDebug ( ) < < " Connect to url: " < < url ;
2012-08-17 19:13:17 +04:00
_ocWizard - > setField ( QLatin1String ( " OCUrl " ) , url ) ;
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " Trying to connect to %1 at %2... " )
2013-02-21 15:21:42 +04:00
. arg ( Theme : : instance ( ) - > appNameGUI ( ) ) . arg ( url ) ) ;
2012-02-17 18:54:39 +04:00
testOwnCloudConnect ( ) ;
}
2013-02-10 17:03:09 +04:00
void OwncloudSetupWizard : : slotClearPendingRequests ( )
{
qDebug ( ) < < " Pending request: " < < _mkdirRequestReply ;
if ( _mkdirRequestReply & & _mkdirRequestReply - > isRunning ( ) ) {
qDebug ( ) < < " ABORTing pending mkdir request. " ;
_mkdirRequestReply - > abort ( ) ;
}
if ( _checkInstallationRequest & & _checkInstallationRequest - > isRunning ( ) ) {
qDebug ( ) < < " ABORTing pending check installation request. " ;
_checkInstallationRequest - > abort ( ) ;
}
2013-04-28 00:24:32 +04:00
if ( _checkRemoteFolderRequest & & _checkRemoteFolderRequest - > isRunning ( ) ) {
qDebug ( ) < < " ABORTing pending remote folder check request. " ;
_checkRemoteFolderRequest - > abort ( ) ;
}
2013-02-10 17:03:09 +04:00
}
2012-02-17 18:54:39 +04:00
void OwncloudSetupWizard : : testOwnCloudConnect ( )
{
2012-06-12 14:30:05 +04:00
// write a temporary config.
QDateTime now = QDateTime : : currentDateTime ( ) ;
2013-04-28 00:24:32 +04:00
// remove a possibly existing custom config.
if ( ! _configHandle . isEmpty ( ) ) {
// remove the old config file.
MirallConfigFile oldConfig ( _configHandle ) ;
oldConfig . cleanupCustomConfig ( ) ;
}
2012-08-17 19:13:17 +04:00
_configHandle = now . toString ( QLatin1String ( " MMddyyhhmmss " ) ) ;
2012-06-12 14:30:05 +04:00
MirallConfigFile cfgFile ( _configHandle ) ;
2013-04-28 00:24:32 +04:00
QString url = _ocWizard - > field ( QLatin1String ( " OCUrl " ) ) . toString ( ) ;
if ( url . isEmpty ( ) ) return ;
if ( ! ( url . startsWith ( QLatin1String ( " https:// " ) ) | | url . startsWith ( QLatin1String ( " http:// " ) ) ) ) {
qDebug ( ) < < " url does not start with a valid protocol, assuming https. " ;
url . prepend ( QLatin1String ( " https:// " ) ) ;
// FIXME: give a hint about the auto completion
_ocWizard - > setOCUrl ( url ) ;
}
2012-09-24 19:55:10 +04:00
cfgFile . writeOwncloudConfig ( Theme : : instance ( ) - > appName ( ) ,
2013-04-28 00:24:32 +04:00
url ,
2012-08-17 19:13:17 +04:00
_ocWizard - > field ( QLatin1String ( " OCUser " ) ) . toString ( ) ,
2013-04-28 00:24:32 +04:00
_ocWizard - > field ( QLatin1String ( " OCPasswd " ) ) . toString ( ) ) ;
2012-02-17 18:54:39 +04:00
2013-02-18 19:16:10 +04:00
// If there is already a config, take its proxy config.
if ( ownCloudInfo : : instance ( ) - > isConfigured ( ) ) {
MirallConfigFile prevCfg ;
if ( prevCfg . proxyType ( ) ! = QNetworkProxy : : DefaultProxy ) {
cfgFile . setProxyType ( prevCfg . proxyType ( ) , prevCfg . proxyHostName ( ) , prevCfg . proxyPort ( ) ,
prevCfg . proxyUser ( ) , prevCfg . proxyPassword ( ) ) ;
}
}
2012-02-17 18:54:39 +04:00
// now start ownCloudInfo to check the connection.
2012-09-26 18:52:22 +04:00
ownCloudInfo * info = ownCloudInfo : : instance ( ) ;
info - > setCustomConfigHandle ( _configHandle ) ;
if ( info - > isConfigured ( ) ) {
2012-04-12 13:37:48 +04:00
// reset the SSL Untrust flag to let the SSL dialog appear again.
2012-09-26 18:52:22 +04:00
info - > resetSSLUntrust ( ) ;
2013-04-28 00:24:32 +04:00
connect ( info , SIGNAL ( ownCloudInfoFound ( QString , QString , QString , QString ) ) ,
SLOT ( slotOwnCloudFound ( QString , QString , QString , QString ) ) ) ;
connect ( info , SIGNAL ( noOwncloudFound ( QNetworkReply * ) ) ,
SLOT ( slotNoOwnCloudFound ( QNetworkReply * ) ) ) ;
2013-02-10 17:03:09 +04:00
_checkInstallationRequest = info - > checkInstallation ( ) ;
2012-02-17 18:54:39 +04:00
} else {
qDebug ( ) < < " ownCloud seems not to be configured, can not start test connect. " ;
}
}
2012-05-14 18:22:30 +04:00
void OwncloudSetupWizard : : slotOwnCloudFound ( const QString & url , const QString & infoString , const QString & version , const QString & )
2012-02-17 18:54:39 +04:00
{
2013-04-28 00:24:32 +04:00
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( ownCloudInfoFound ( QString , QString , QString , QString ) ) ,
this , SLOT ( slotOwnCloudFound ( QString , QString , QString , QString ) ) ) ;
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( noOwncloudFound ( QNetworkReply * ) ) ,
this , SLOT ( slotNoOwnCloudFound ( QNetworkReply * ) ) ) ;
_ocWizard - > appendToConfigurationLog ( tr ( " <font color= \" green \" >Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> " )
2013-02-21 15:21:42 +04:00
. arg ( url ) . arg ( Theme : : instance ( ) - > appNameGUI ( ) ) . arg ( infoString ) . arg ( version ) ) ;
2012-03-14 14:26:00 +04:00
2012-04-14 13:19:36 +04:00
// enable the finish button.
_ocWizard - > button ( QWizard : : FinishButton ) - > setEnabled ( true ) ;
2012-03-14 14:26:00 +04:00
// start the local folder creation
setupLocalSyncFolder ( ) ;
2012-02-17 18:54:39 +04:00
}
2012-04-10 16:51:45 +04:00
void OwncloudSetupWizard : : slotNoOwnCloudFound ( QNetworkReply * err )
2012-02-17 18:54:39 +04:00
{
2013-04-28 00:24:32 +04:00
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( ownCloudInfoFound ( QString , QString , QString , QString ) ) ,
this , SLOT ( slotOwnCloudFound ( QString , QString , QString , QString ) ) ) ;
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( noOwncloudFound ( QNetworkReply * ) ) ,
this , SLOT ( slotNoOwnCloudFound ( QNetworkReply * ) ) ) ;
_ocWizard - > displayError ( tr ( " Failed to connect to %1:<br/>%2 " ) .
arg ( Theme : : instance ( ) - > appNameGUI ( ) ) . arg ( err - > errorString ( ) ) ) ;
2012-02-17 18:54:39 +04:00
// remove the config file again
2012-06-12 14:30:05 +04:00
MirallConfigFile cfgFile ( _configHandle ) ;
cfgFile . cleanupCustomConfig ( ) ;
finalizeSetup ( false ) ;
2011-09-28 20:14:48 +04:00
}
2012-02-17 14:11:18 +04:00
void OwncloudSetupWizard : : setupLocalSyncFolder ( )
2011-09-30 16:19:26 +04:00
{
2012-03-14 14:26:00 +04:00
if ( ! _folderMan ) return ;
2012-06-12 14:30:05 +04:00
qDebug ( ) < < " Setup local sync folder for new oC connection " < < _localFolder ;
2012-03-14 14:26:00 +04:00
QDir fi ( _localFolder ) ;
2013-03-02 00:30:22 +04:00
// FIXME: Show problems with local folder properly.
2011-09-30 16:19:26 +04:00
2012-03-14 14:26:00 +04:00
bool localFolderOk = true ;
if ( fi . exists ( ) ) {
// there is an existing local folder. If its non empty, it can only be synced if the
// ownCloud is newly created.
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " Local sync folder %1 already exists, setting it up for sync.<br/><br/> " ) . arg ( _localFolder ) ) ;
2011-10-05 14:11:10 +04:00
} else {
2012-03-14 14:26:00 +04:00
QString res = tr ( " Creating local sync folder %1... " ) . arg ( _localFolder ) ;
if ( fi . mkpath ( _localFolder ) ) {
2013-03-21 15:01:37 +04:00
Utility : : setupFavLink ( _localFolder ) ;
2012-03-14 14:26:00 +04:00
// FIXME: Create a local sync folder.
res + = tr ( " ok " ) ;
} else {
res + = tr ( " failed. " ) ;
qDebug ( ) < < " Failed to create " < < fi . path ( ) ;
localFolderOk = false ;
2013-04-28 00:24:32 +04:00
_ocWizard - > displayError ( tr ( " Could not create local folder %1 " ) . arg ( _localFolder ) ) ;
2012-03-14 14:26:00 +04:00
}
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( res ) ;
2012-03-14 14:26:00 +04:00
}
if ( localFolderOk ) {
2013-04-28 00:24:32 +04:00
checkRemoteFolder ( ) ;
2012-12-04 20:27:59 +04:00
}
}
2012-03-14 14:26:00 +04:00
2013-04-28 00:24:32 +04:00
void OwncloudSetupWizard : : checkRemoteFolder ( )
{
connect ( ownCloudInfo : : instance ( ) , SIGNAL ( ownCloudDirExists ( QString , QNetworkReply * ) ) ,
this , SLOT ( slotAuthCheckReply ( QString , QNetworkReply * ) ) ) ;
qDebug ( ) < < " # checking for authentication settings. " ;
ownCloudInfo : : instance ( ) - > setCustomConfigHandle ( _configHandle ) ;
_checkRemoteFolderRequest = ownCloudInfo : : instance ( ) - > getRequest ( _remoteFolder , true ) ; // this call needs to be authenticated.
// continue in slotAuthCheckReply
}
void OwncloudSetupWizard : : slotAuthCheckReply ( const QString & , QNetworkReply * reply )
2012-12-04 20:27:59 +04:00
{
2013-04-28 00:24:32 +04:00
// disconnect from ownCloud Info signals
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( ownCloudDirExists ( QString , QNetworkReply * ) ) ,
this , SLOT ( slotAuthCheckReply ( QString , QNetworkReply * ) ) ) ;
bool ok = true ;
QString error ;
QNetworkReply : : NetworkError errId = reply - > error ( ) ;
if ( errId = = QNetworkReply : : NoError ) {
qDebug ( ) < < " ******** Remote folder found, all cool! " ;
} else if ( errId = = QNetworkReply : : AuthenticationRequiredError ) { // returned if the user is wrong.
qDebug ( ) < < " ******** Password is wrong! " ;
error = tr ( " Credentials are wrong! " ) ;
ok = false ;
} else if ( errId = = QNetworkReply : : OperationCanceledError ) {
// the username was wrong and ownCloudInfo was closing the request after a couple of auth tries.
qDebug ( ) < < " ******** Username or password is wrong! " ;
error = tr ( " Username or password is wrong! " ) ;
ok = false ;
} else if ( errId = = QNetworkReply : : ContentNotFoundError ) {
// FIXME try to create the remote folder!
if ( ! createRemoteFolder ( ) ) {
error = tr ( " The remote folder could not be accessed! " ) ;
ok = false ;
} else {
return ; // Finish here, the mkdir request will go on.
}
} else {
error = tr ( " Error: %1 " ) . arg ( reply - > errorString ( ) ) ;
ok = false ;
2012-12-09 01:56:48 +04:00
}
2013-04-28 00:24:32 +04:00
if ( ! ok ) {
_ocWizard - > displayError ( error ) ;
2012-12-04 20:27:59 +04:00
} else {
2013-04-28 00:24:32 +04:00
_ocWizard - > setFolderNames ( _localFolder , _remoteFolder ) ;
2011-10-05 14:11:10 +04:00
}
2013-04-28 00:24:32 +04:00
finalizeSetup ( ok ) ;
2011-10-05 14:11:10 +04:00
}
2013-04-28 00:24:32 +04:00
bool OwncloudSetupWizard : : createRemoteFolder ( )
2011-10-05 14:11:10 +04:00
{
2013-04-28 00:24:32 +04:00
if ( _remoteFolder . isEmpty ( ) ) return false ;
2012-03-14 14:26:00 +04:00
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " creating folder on ownCloud: %1 " ) . arg ( _remoteFolder ) ) ;
connect ( ownCloudInfo : : instance ( ) , SIGNAL ( webdavColCreated ( QNetworkReply : : NetworkError ) ) ,
this , SLOT ( slotCreateRemoteFolderFinished ( QNetworkReply : : NetworkError ) ) ) ;
2012-03-14 14:26:00 +04:00
2013-04-28 00:24:32 +04:00
_mkdirRequestReply = ownCloudInfo : : instance ( ) - > mkdirRequest ( _remoteFolder ) ;
2012-04-18 13:59:56 +04:00
2013-04-28 00:24:32 +04:00
return ( _mkdirRequestReply ! = NULL ) ;
2011-10-05 14:11:10 +04:00
}
2012-04-21 01:58:09 +04:00
void OwncloudSetupWizard : : slotCreateRemoteFolderFinished ( QNetworkReply : : NetworkError error )
2012-03-14 14:26:00 +04:00
{
2012-04-21 01:58:09 +04:00
qDebug ( ) < < " ** webdav mkdir request finished " < < error ;
2013-04-28 00:24:32 +04:00
disconnect ( ownCloudInfo : : instance ( ) , SIGNAL ( webdavColCreated ( QNetworkReply : : NetworkError ) ) ,
this , SLOT ( slotCreateRemoteFolderFinished ( QNetworkReply : : NetworkError ) ) ) ;
2012-08-06 18:43:24 +04:00
bool success = true ;
2012-03-14 14:26:00 +04:00
2012-04-21 01:58:09 +04:00
if ( error = = QNetworkReply : : NoError ) {
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " Remote folder %1 created successfully. " ) . arg ( _remoteFolder ) ) ;
2012-04-21 01:58:09 +04:00
} else if ( error = = 202 ) {
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " The remote folder %1 already exists. Connecting it for syncing. " ) . arg ( _remoteFolder ) ) ;
2012-08-06 18:43:24 +04:00
} else if ( error > 202 & & error < 300 ) {
2013-04-28 00:24:32 +04:00
_ocWizard - > displayError ( tr ( " The folder creation resulted in HTTP error code %1 " ) . arg ( ( int ) error ) ) ;
_ocWizard - > appendToConfigurationLog ( tr ( " The folder creation resulted in HTTP error code %1 " ) . arg ( ( int ) error ) ) ;
2012-04-21 01:58:09 +04:00
} else if ( error = = QNetworkReply : : OperationCanceledError ) {
2013-04-28 00:24:32 +04:00
_ocWizard - > displayError ( tr ( " The remote folder creation failed because the provided credentials "
" are wrong! "
" <br/>Please go back and check your credentials.</p> " ) ) ;
_ocWizard - > appendToConfigurationLog ( tr ( " <p><font color= \" red \" >Remote folder creation failed probably because the provided credentials are wrong.</font> "
2012-04-18 13:59:56 +04:00
" <br/>Please go back and check your credentials.</p> " ) ) ;
2012-06-12 14:30:05 +04:00
_localFolder . clear ( ) ;
_remoteFolder . clear ( ) ;
2012-08-06 18:43:24 +04:00
success = false ;
2012-03-14 14:26:00 +04:00
} else {
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " Remote folder %1 creation failed with error <tt>%2</tt>. " ) . arg ( _remoteFolder ) . arg ( error ) ) ;
_ocWizard - > displayError ( tr ( " Remote folder %1 creation failed with error <tt>%2</tt>. " ) . arg ( _remoteFolder ) . arg ( error ) ) ;
2012-06-12 14:30:05 +04:00
_localFolder . clear ( ) ;
_remoteFolder . clear ( ) ;
2012-08-06 18:43:24 +04:00
success = false ;
2012-06-12 14:30:05 +04:00
}
2012-08-06 18:43:24 +04:00
finalizeSetup ( success ) ;
2012-06-12 14:30:05 +04:00
}
void OwncloudSetupWizard : : finalizeSetup ( bool success )
{
2013-02-06 13:21:50 +04:00
// enable/disable the finish button.
_ocWizard - > enableFinishOnResultWidget ( success ) ;
2012-06-12 14:30:05 +04:00
if ( success ) {
if ( ! ( _localFolder . isEmpty ( ) | | _remoteFolder . isEmpty ( ) ) ) {
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( tr ( " A sync connection from %1 to remote directory %2 was set up. " )
2012-06-12 14:30:05 +04:00
. arg ( _localFolder ) . arg ( _remoteFolder ) ) ;
}
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( QLatin1String ( " " ) ) ;
_ocWizard - > appendToConfigurationLog ( QLatin1String ( " <p><font color= \" green \" ><b> " )
2013-02-09 15:46:08 +04:00
+ tr ( " Successfully connected to %1! " )
2013-02-21 15:21:42 +04:00
. arg ( Theme : : instance ( ) - > appNameGUI ( ) )
2012-12-04 20:27:59 +04:00
+ QLatin1String ( " </b></font></p> " ) ) ;
2012-06-12 14:30:05 +04:00
} else {
2013-04-28 00:24:32 +04:00
_ocWizard - > appendToConfigurationLog ( QLatin1String ( " <p><font color= \" red \" > " )
2012-09-24 21:21:55 +04:00
+ tr ( " Connection to %1 could not be established. Please check again. " )
2013-02-21 15:21:42 +04:00
. arg ( Theme : : instance ( ) - > appNameGUI ( ) )
2012-06-12 14:30:05 +04:00
+ QLatin1String ( " </font></p> " ) ) ;
2012-03-14 14:26:00 +04:00
}
2013-04-28 00:24:32 +04:00
_ocWizard - > successfullyConnected ( success ) ;
2012-03-14 14:26:00 +04:00
}
2011-09-30 16:19:26 +04:00
2011-09-29 19:17:50 +04:00
}