void OwncloudSetupWizard::startWizard(bool intro) { // create the ocInfo object connect(ownCloudInfo::instance(),SIGNAL(ownCloudInfoFound(QString,QString,QString,QString)),SLOT(slotOwnCloudFound(QString,QString,QString,QString))); connect(ownCloudInfo::instance(),SIGNAL(noOwncloudFound(QNetworkReply*)),SLOT(slotNoOwnCloudFound(QNetworkReply*))); connect(ownCloudInfo::instance(),SIGNAL(webdavColCreated(QNetworkReply::NetworkError)),SLOT(slotCreateRemoteFolderFinished(QNetworkReply::NetworkError))); MirallConfigFile cfgFile; QString url = cfgFile.ownCloudUrl(); if( !url.isEmpty() ) { _ocWizard->setOCUrl( url ); } #ifdef OWNCLOUD_CLIENT QString user = cfgFile.ownCloudUser(); if( !user.isEmpty() ) { _ocWizard->setOCUser( user ); } bool doStore = cfgFile.passwordStorageAllowed(); _ocWizard->setAllowPasswordStorage( doStore ); if (intro) _ocWizard->setStartId(OwncloudWizard::Page_oCWelcome); else _ocWizard->setStartId(OwncloudWizard::Page_oCSetup); #endif _ocWizard->restart(); _ocWizard->show(); }
void OwncloudSetupWizard::slotCreateRemoteFolderFinished( QNetworkReply::NetworkError error ) { qDebug() << "** webdav mkdir request finished " << error; disconnect(ownCloudInfo::instance(), SIGNAL(webdavColCreated(QNetworkReply::NetworkError)), this, SLOT(slotCreateRemoteFolderFinished(QNetworkReply::NetworkError))); bool success = true; if( error == QNetworkReply::NoError ) { _ocWizard->appendToConfigurationLog( tr("Remote folder %1 created successfully.").arg(_remoteFolder)); } else if( error == 202 ) { _ocWizard->appendToConfigurationLog( tr("The remote folder %1 already exists. Connecting it for syncing.").arg(_remoteFolder)); } else if( error > 202 && error < 300 ) { _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) ); } else if( error == QNetworkReply::OperationCanceledError ) { _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>" "<br/>Please go back and check your credentials.</p>")); _remoteFolder.clear(); success = false; } else { _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) ); _remoteFolder.clear(); success = false; } finalizeSetup( success ); }
void FolderWizardTargetPage::initializePage() { showWarn(); /* check the owncloud configuration file and query the ownCloud */ ownCloudInfo *ocInfo = ownCloudInfo::instance(); if( ocInfo->isConfigured() ) { connect( ocInfo, SIGNAL(ownCloudInfoFound(QString,QString,QString,QString)), SLOT(slotOwnCloudFound(QString,QString,QString,QString))); connect( ocInfo, SIGNAL(noOwncloudFound(QNetworkReply*)), SLOT(slotNoOwnCloudFound(QNetworkReply*))); connect( ocInfo, SIGNAL(ownCloudDirExists(QString,QNetworkReply*)), SLOT(slotDirCheckReply(QString,QNetworkReply*))); connect( ocInfo, SIGNAL(webdavColCreated(QNetworkReply::NetworkError)), SLOT(slotCreateRemoteFolderFinished( QNetworkReply::NetworkError ))); connect(_ui._buttCreateFolder, SIGNAL(clicked()), SLOT(slotCreateRemoteFolder())); ocInfo->checkInstallation(); _ui.OCFolderLineEdit->setEnabled( false ); QString dir = _ui.OCFolderLineEdit->text(); if( !dir.isEmpty() ) { slotFolderTextChanged( dir ); } } }
// ================================================================================= FolderWizardTargetPage::FolderWizardTargetPage() : _dirChecked( false ), _warnWasVisible(false) { _ui.setupUi(this); _ui.warnFrame->hide(); registerField(QLatin1String("local?"), _ui.localFolderRadioBtn); registerField(QLatin1String("remote?"), _ui.urlFolderRadioBtn); registerField(QLatin1String("OC?"), _ui.OCRadioBtn); registerField(QLatin1String("targetLocalFolder"), _ui.localFolder2LineEdit); registerField(QLatin1String("targetURLFolder"), _ui.urlFolderLineEdit); registerField(QLatin1String("targetOCFolder"), _ui.OCFolderLineEdit); connect( _ui.OCFolderLineEdit, SIGNAL(textChanged(QString)), SLOT(slotFolderTextChanged(QString))); _timer = new QTimer(this); _timer->setSingleShot( true ); connect( _timer, SIGNAL(timeout()), SLOT(slotTimerFires())); connect( ownCloudInfo::instance(), SIGNAL(ownCloudDirExists(QString,QNetworkReply*)), SLOT(slotDirCheckReply(QString,QNetworkReply*))); connect( ownCloudInfo::instance(), SIGNAL(webdavColCreated(QNetworkReply::NetworkError)), SLOT(slotCreateRemoteFolderFinished( QNetworkReply::NetworkError ))); #if QT_Version >= 0x040700 _ui.OCFolderLineEdit->setPlaceholderText(QApplication::translate("FolderWizardTargetPage", "root", 0, QApplication::UnicodeUTF8)); _ui.localFolder2LineEdit->setPlaceholderText(QApplication::translate("FolderWizardTargetPage", "/home/local", 0, QApplication::UnicodeUTF8)); _ui.urlFolderLineEdit->setPlaceholderText(QApplication::translate("FolderWizardTargetPage", "scp://[email protected]//myfolder", 0, QApplication::UnicodeUTF8)); #endif }
void ownCloudInfo::qhttpResponseHeaderReceived(const QHttpResponseHeader& header) { qDebug() << "Resp:" << header.toString(); if (header.statusCode() == 201) emit webdavColCreated( QNetworkReply::NoError ); else qDebug() << "http request failed" << header.toString(); }
bool OwncloudSetupWizard::createRemoteFolder() { if( _remoteFolder.isEmpty() ) return false; _ocWizard->appendToConfigurationLog( tr("creating folder on ownCloud: %1" ).arg( _remoteFolder )); connect(ownCloudInfo::instance(), SIGNAL(webdavColCreated(QNetworkReply::NetworkError)), this, SLOT(slotCreateRemoteFolderFinished(QNetworkReply::NetworkError))); _mkdirRequestReply = ownCloudInfo::instance()->mkdirRequest( _remoteFolder ); return (_mkdirRequestReply != NULL); }
void ownCloudInfo::slotMkdirFinished() { QNetworkReply *reply = qobject_cast<QNetworkReply *>(sender()); if( ! reply ) { qDebug() << "ownCloudInfo: Reply empty!"; return; } emit webdavColCreated( reply->error() ); qDebug() << "mkdir slot hit with status: " << reply->error(); if( _configHandleMap.contains( reply ) ) { _configHandleMap.remove( reply ); } reply->deleteLater(); }