void OwncloudSetupWizard::testOwnCloudConnect() { // write a temporary config. QDateTime now = QDateTime::currentDateTime(); _configHandle = now.toString(QLatin1String("MMddyyhhmmss")); MirallConfigFile cfgFile( _configHandle ); cfgFile.writeOwncloudConfig( Theme::instance()->appName(), _ocWizard->field(QLatin1String("OCUrl")).toString(), _ocWizard->field(QLatin1String("OCUser")).toString(), _ocWizard->field(QLatin1String("OCPasswd")).toString(), _ocWizard->field(QLatin1String("secureConnect")).toBool(), _ocWizard->field(QLatin1String("PwdNoLocalStore")).toBool() ); // 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() ); } } // now start ownCloudInfo to check the connection. ownCloudInfo* info = ownCloudInfo::instance(); info->setCustomConfigHandle( _configHandle ); if( info->isConfigured() ) { // reset the SSL Untrust flag to let the SSL dialog appear again. info->resetSSLUntrust(); _checkInstallationRequest = info->checkInstallation(); } else { qDebug() << " ownCloud seems not to be configured, can not start test connect."; } }
void OwncloudSetupWizard::testOwnCloudConnect() { // write a temporary config. QDateTime now = QDateTime::currentDateTime(); // remove a possibly existing custom config. if( ! _configHandle.isEmpty() ) { // remove the old config file. MirallConfigFile oldConfig( _configHandle ); oldConfig.cleanupCustomConfig(); } _configHandle = now.toString(QLatin1String("MMddyyhhmmss")); MirallConfigFile cfgFile( _configHandle ); 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); } cfgFile.writeOwncloudConfig( Theme::instance()->appName(), url, _ocWizard->field(QLatin1String("OCUser")).toString(), _ocWizard->field(QLatin1String("OCPasswd")).toString() ); // 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() ); } } // now start ownCloudInfo to check the connection. ownCloudInfo* info = ownCloudInfo::instance(); info->setCustomConfigHandle( _configHandle ); if( info->isConfigured() ) { // reset the SSL Untrust flag to let the SSL dialog appear again. info->resetSSLUntrust(); connect(info, SIGNAL(ownCloudInfoFound(QString,QString,QString,QString)), SLOT(slotOwnCloudFound(QString,QString,QString,QString))); connect(info, SIGNAL(noOwncloudFound(QNetworkReply*)), SLOT(slotNoOwnCloudFound(QNetworkReply*))); _checkInstallationRequest = info->checkInstallation(); } else { qDebug() << " ownCloud seems not to be configured, can not start test connect."; } }
QNetworkProxy ClientProxy::proxyFromConfig(const MirallConfigFile& cfg) { QNetworkProxy proxy; if (cfg.proxyHostName().isEmpty()) return QNetworkProxy(); proxy.setHostName(cfg.proxyHostName()); proxy.setPort(cfg.proxyPort()); if (cfg.proxyNeedsAuth()) { proxy.setUser(cfg.proxyUser()); proxy.setPassword(cfg.proxyPassword()); } return proxy; }