OwncloudSetupWizard::OwncloudSetupWizard( FolderMan *folderMan, QObject *parent ) : QObject( parent ), _ocInfo(0), _folderMan(folderMan) { _process = new QProcess( this ); QObject::connect(_process, SIGNAL(readyReadStandardOutput()), SLOT(slotReadyReadStandardOutput())); QObject::connect(_process, SIGNAL(readyReadStandardError()), SLOT(slotReadyReadStandardError())); QObject::connect(_process, SIGNAL(stateChanged(QProcess::ProcessState)), SLOT(slotStateChanged(QProcess::ProcessState))); QObject::connect(_process, SIGNAL(error(QProcess::ProcessError)), SLOT(slotError(QProcess::ProcessError))); QObject::connect(_process, SIGNAL(started()), SLOT(slotStarted())); QObject::connect(_process, SIGNAL(finished(int, QProcess::ExitStatus)), SLOT(slotProcessFinished(int, QProcess::ExitStatus))); _ocWizard = new OwncloudWizard(); connect( _ocWizard, SIGNAL(connectToOCUrl( const QString& ) ), this, SLOT(slotConnectToOCUrl( const QString& ))); connect( _ocWizard, SIGNAL(installOCServer()), this, SLOT(slotInstallOCServer())); connect( _ocWizard, SIGNAL(installOCLocalhost()), this, SLOT(slotCreateOCLocalhost())); // in case of cancel, terminate the owncloud-admin script. connect( _ocWizard, SIGNAL(rejected()), _process, SLOT(terminate())); }
void OwncloudWizard::slotCurrentPageChanged( int id ) { qDebug() << "Current Wizard page changed to " << id; qDebug() << "Page_install is " << Page_Install; if( id == Page_FTP ) { // preset the ftp url field CreateAnOwncloudPage *p = static_cast<CreateAnOwncloudPage*> (page( Page_Create_OC )); QString domain = p->domain(); if( domain.startsWith( QLatin1String("http://") )) { domain = domain.right( domain.length()-7 ); } if( domain.startsWith( QLatin1String("https://") )) { domain = domain.right( domain.length()-8 ); } QString host = QLatin1String("ftp.") +domain; OwncloudFTPAccessPage *p1 = static_cast<OwncloudFTPAccessPage*> (page( Page_FTP )); p1->setFTPUrl( host ); } if( id == Page_Install ) { appendToResultWidget( QString::null ); showOCUrlLabel( false ); if( field(QLatin1String("connectMyOC")).toBool() ) { // check the url and connect. _oCUrl = ocUrl(); emit connectToOCUrl( _oCUrl); } else if( field(QLatin1String("createLocalOC")).toBool() ) { qDebug() << "Connect to local!"; emit installOCLocalhost(); } else if( field(QLatin1String("createNewOC")).toBool() ) { // call in installation mode and install to ftp site. emit installOCServer(); } else { } } if( id == Page_oCSetup ) { emit clearPendingRequests(); } }