diff options
author | Andrea Diamantini <adjam7@gmail.com> | 2009-08-03 15:32:23 +0200 |
---|---|---|
committer | Andrea Diamantini <adjam7@gmail.com> | 2009-08-03 15:32:23 +0200 |
commit | 94c85d5da90e3b0ce73e985126295e1426578b58 (patch) | |
tree | 7783ee046b254347e81e940e2403e0959829e899 /src/kaccessmanager.cpp | |
parent | Fixed target link libraries bug. (diff) | |
download | rekonq-94c85d5da90e3b0ce73e985126295e1426578b58.tar.xz |
Removed (for 0.2 version) KIO::AccessManager support
That's because of some troubles with wikis, phpBB and CMS products
in general..
Diffstat (limited to 'src/kaccessmanager.cpp')
-rw-r--r-- | src/kaccessmanager.cpp | 206 |
1 files changed, 0 insertions, 206 deletions
diff --git a/src/kaccessmanager.cpp b/src/kaccessmanager.cpp deleted file mode 100644 index a79ff865..00000000 --- a/src/kaccessmanager.cpp +++ /dev/null @@ -1,206 +0,0 @@ -/* ============================================================ -* -* This file is a part of the rekonq project -* -* Copyright (C) 2007-2008 Trolltech ASA. All rights reserved -* Copyright (C) 2008-2009 by Andrea Diamantini <adjam7 at gmail dot com> -* -* -* 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 3, 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. -* -* ============================================================ */ - - -// Self Includes -#include "kaccessmanager.h" -#include "kaccessmanager.moc" - -// Local Includes -#include "application.h" -#include "mainwindow.h" - -// Auto Includes -#include "rekonq.h" - -// Ui Includes -#include "ui_password.h" -#include "ui_proxy.h" - -// KDE Includes -#include <KMessageBox> -#include <KStandardDirs> - -// Qt Includes -#include <QtCore/QPointer> -#include <QtCore/QIODevice> - -#include <QtGui/QStyle> -#include <QtGui/QTextDocument> - -#include <QtNetwork/QAuthenticator> -#include <QtNetwork/QNetworkProxy> -#include <QtNetwork/QNetworkReply> -#include <QtNetwork/QNetworkRequest> -#include <QtNetwork/QSslError> - - -NetworkAccessManager::NetworkAccessManager(QObject *parent) - : QNetworkAccessManager(parent) -{ - connect(this, SIGNAL(authenticationRequired(QNetworkReply*, QAuthenticator*)), - SLOT(authenticationRequired(QNetworkReply*, QAuthenticator*))); - connect(this, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)), - SLOT(proxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*))); - -#ifndef QT_NO_OPENSSL - connect(this, SIGNAL(sslErrors(QNetworkReply*, const QList<QSslError>&)), - SLOT(slotSSLErrors(QNetworkReply*, const QList<QSslError>&))); -#endif - - loadSettings(); - - // resetting disk cache - resetDiskCache(); -} - - -void NetworkAccessManager::loadSettings() -{ - if (ReKonfig::isProxyEnabled()) - { - QNetworkProxy proxy; - if (ReKonfig::proxyType() == 0) - { - proxy.setType(QNetworkProxy::Socks5Proxy); - } - else - { - proxy.setType(QNetworkProxy::HttpProxy); - } - proxy.setHostName(ReKonfig::proxyHostName()); - proxy.setPort(ReKonfig::proxyPort()); - proxy.setUser(ReKonfig::proxyUserName()); - proxy.setPassword(ReKonfig::proxyPassword()); - - setProxy(proxy); - } -} - - - -void NetworkAccessManager::authenticationRequired(QNetworkReply *reply, QAuthenticator *auth) -{ - MainWindow *mainWindow = Application::instance()->mainWindow(); - - QPointer<KDialog> dialog = new KDialog(mainWindow, Qt::Sheet); - dialog->setButtons(KDialog::Ok | KDialog::Cancel); - - Ui::passwordWidget passwordWidget; - QWidget widget; - passwordWidget.setupUi(&widget); - - dialog->setMainWidget(&widget); - - passwordWidget.iconLabel->setText(QString()); - passwordWidget.iconLabel->setPixmap(mainWindow->style()->standardIcon(QStyle::SP_MessageBoxQuestion, 0, mainWindow).pixmap(32, 32)); - - QString introMessage = i18n("<qt>Enter username and password for %1 at %2</qt>", - Qt::escape(reply->url().toString()), - Qt::escape(reply->url().toString()) ); - passwordWidget.introLabel->setText(introMessage); - passwordWidget.introLabel->setWordWrap(true); - - if (dialog->exec() == KDialog::Ok) - { - auth->setUser(passwordWidget.userNameLineEdit->text()); - auth->setPassword(passwordWidget.passwordLineEdit->text()); - } - delete dialog; -} - - -void NetworkAccessManager::resetDiskCache() -{ - if(!m_diskCache) - { - m_diskCache = new QNetworkDiskCache(this); - QString location = KStandardDirs::locateLocal("cache", "", true); - kDebug() << location; - - m_diskCache->setCacheDirectory(location); - setCache(m_diskCache); - } - else - { - QString location = m_diskCache->cacheDirectory(); -// setCache(0); -// delete m_diskCache; - - QDir cacheDir(location + QString("/http") ); - QStringList fileList = cacheDir.entryList(); - foreach(QString str, fileList) - { - QFile file(str); - file.remove(); - } - -// m_diskCache = new QNetworkDiskCache(this); -// m_diskCache->setCacheDirectory(location); -// setCache(m_diskCache); - } -} - - -void NetworkAccessManager::proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *auth) -{ - MainWindow *mainWindow = Application::instance()->mainWindow(); - - QPointer<KDialog> dialog = new KDialog(mainWindow, Qt::Sheet); - dialog->setButtons(KDialog::Ok | KDialog::Cancel); - - Ui::proxyWidget proxyWdg; - QWidget widget; - proxyWdg.setupUi(&widget); - - dialog->setMainWidget(&widget); - - proxyWdg.iconLabel->setText(QString()); - proxyWdg.iconLabel->setPixmap(mainWindow->style()->standardIcon(QStyle::SP_MessageBoxQuestion, 0, mainWindow).pixmap(32, 32)); - - QString introMessage = i18n("<qt>Connect to proxy %1 using:</qt>", Qt::escape(proxy.hostName()) ); - proxyWdg.introLabel->setText(introMessage); - proxyWdg.introLabel->setWordWrap(true); - - if (dialog->exec() == KDialog::Ok) - { - auth->setUser(proxyWdg.userNameLineEdit->text()); - auth->setPassword(proxyWdg.passwordLineEdit->text()); - } - delete dialog; -} - - -#ifndef QT_NO_OPENSSL -void NetworkAccessManager::slotSSLErrors(QNetworkReply *reply, const QList<QSslError> &error) -{ - MainWindow *mainWindow = Application::instance()->mainWindow(); - - QStringList errorStrings; - for (int i = 0; i < error.count(); ++i) - errorStrings += error.at(i).errorString(); - QString errors = errorStrings.join(QLatin1String("\n")); - int ret = KMessageBox::warningContinueCancel(mainWindow, - i18n("SSL Errors:\n\n") + reply->url().toString() + "\n\n" + QString(errors) + "\n\n"); - - if (ret == KMessageBox::Yes) - reply->ignoreSslErrors(); -} -#endif |