example/LastFmAuthApp/src/baseDialog.cpp
author cgandhi
Mon, 11 Oct 2010 21:59:54 +0530
changeset 26 83d6a149c755
permissions -rw-r--r--
Submitting following changes - AuthApps for Last.fm and Twitter added API for checking ServiceAuthorization added for SMFCredMgrClient API added for forcefully removing credential details from SMFCredMgr Extra argument checks in SMfClient APIs APIs for service login and logout from SMFClient Redundant members removed from SmfServerSymbian DSM bug fixes Test Apps included
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     1
/**
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     2
* Copyright (c) 2010 Sasken Communication Technologies Ltd.
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     3
* All rights reserved.
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     4
* This component and the accompanying materials are made available
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     5
* under the terms of the "{License}"
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     6
* which accompanies  this distribution, and is available
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     7
* at the URL "{LicenseUrl}".
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     8
*
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
     9
* Initial Contributors:
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    10
* Narasimhulu Kavadapu, Sasken Communication Technologies Ltd - Initial contribution
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    11
*
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    12
* Contributors:
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    13
* Siddhartha Chandra, Sasken Communication Technologies Ltd
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    14
* Description:
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    15
* Base class of All dialogs
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    16
*/
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    17
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    18
#define EMULATORTESTING 1
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    19
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    20
#include <QNetworkCookie>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    21
#include <QNetworkRequest>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    22
#include <QNetworkReply>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    23
#include <QWebFrame>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    24
#include <QFile>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    25
#include <QDesktopServices>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    26
#include <QResizeEvent>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    27
#include <QDebug>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    28
#include <qmessagebox.h>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    29
#include <QNetworkAccessManager>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    30
#include <QPropertyAnimation>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    31
 #include <qnetworkproxy.h>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    32
#include <qdesktopwidget.h>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    33
#include <qapplication.h>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    34
//#include <qboxlayout.h>
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    35
#include "baseDialog.h"
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    36
#include "sessionSP.h"
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    37
#include "errorCodes.h"
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    38
#include "keys.h"
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    39
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    40
static const QString kDefaultTitle = "Connect to LastFm";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    41
static const QString kStringBoundary = "3i2ndDfv2rTHiSisAbouNdArYfORhtTPEefj3q2f";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    42
/*static const QString kMinitokensuccessURL = "http://www.last.fm/api/grantaccess";//http://www.last.fm/api/auth/";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    43
static const QString kUrlChk = "http://www.last.fm/home";*/
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    44
//static const QString kInvalidUrl = "http://mlogin.yahoo.com/w/login";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    45
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    46
static QNetworkAccessManager namanager;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    47
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    48
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    49
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    50
FBDialog::FBDialog() : iSession(FBSession::session())
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    51
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    52
    createControls();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    53
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    54
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    55
FBDialog::FBDialog(FBSession* aSession) : iSession ( aSession )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    56
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    57
    createControls();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    58
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    59
void FBDialog::createControls()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    60
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    61
	flag = true;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    62
	iWebView = new QWebView(this);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    63
	iWebSettings =  iWebView->page()->settings();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    64
	iWebSettings->setAttribute(QWebSettings::JavascriptEnabled, false);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    65
	iWebSettings->setAttribute(QWebSettings::PrintElementBackgrounds,false);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    66
	iWebSettings->setAttribute(QWebSettings::DnsPrefetchEnabled,true);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    67
	iWebSettings->setAttribute(QWebSettings::AutoLoadImages,false);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    68
	//iWebSettings->setAttribute(QWebSettings::JavaEnabled,false);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    69
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    70
    iWebView->page()->setNetworkAccessManager(&namanager);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    71
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    72
    iWebView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    73
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    74
    layout = new QVBoxLayout(this);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    75
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    76
    progressbar = new QProgressBar(this);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    77
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    78
    //scrollbar = new QScrollArea(this);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    79
    layout->addWidget(iWebView);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    80
    //layout->addWidget(scrollbar);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    81
    //layout->addWidget(progressbar);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    82
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    83
    setLayout(layout);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    84
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    85
    progressbar->setOrientation(Qt::Horizontal);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    86
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    87
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    88
    connect( iWebView->page(), SIGNAL(linkClicked(const QUrl &)),
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    89
                    this, SLOT(linkClicked(const QUrl &)));
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    90
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    91
    connect ( iWebView->page(), SIGNAL(loadFinished(bool)), this, SLOT(loadFinished(bool)));
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    92
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    93
    connect ( iWebView->page(), SIGNAL(loadStarted()), this, SLOT ( loadStarted()));
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    94
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    95
    connect ( iWebView->page(), SIGNAL(loadProgress(int)), this, SLOT ( loadProgress(int)));
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    96
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    97
    connect (iWebView->page()->networkAccessManager(),SIGNAL( authenticationRequired( QNetworkReply*, QAuthenticator*)),this,SLOT( slotAuthenticationRequired( QNetworkReply*, QAuthenticator*)));
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    98
    connect (iWebView->page()->networkAccessManager(),SIGNAL( sslErrors( QNetworkReply*,QList<QSslError>&)),this,SLOT( slotsslErrors( QNetworkReply*,QList<QSslError>&)) );
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
    99
    connect (iWebView->page()->networkAccessManager(),SIGNAL( proxyAuthenticationRequired(QNetworkProxy&, QAuthenticator*)),this,SLOT( slotproxyAuthenticationRequired(QNetworkProxy&, QAuthenticator*)) );
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   100
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   101
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   102
QString FBDialog::generateURL( const QString& aUrl, const QHash<QString, QString>& aParams) const
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   103
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   104
    QString url ( aUrl );
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   105
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   106
    QStringList pairs;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   107
    QHashIterator<QString, QString> i(aParams);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   108
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   109
    while (i.hasNext()) {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   110
        i.next();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   111
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   112
        QUrl url (i.value());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   113
        QString pair = i.key() + "=" + url.toEncoded();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   114
        pairs << pair.toUtf8();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   115
    }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   116
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   117
    if (pairs.count())
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   118
    {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   119
        url = url + "?" + pairs.join("&");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   120
    }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   121
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   122
    return url;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   123
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   124
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   125
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   126
QByteArray FBDialog::generatePostBody (const QHash<QString, QString>& aParams) const
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   127
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   128
    QByteArray body;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   129
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   130
    if (!aParams.count())
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   131
        return body;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   132
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   133
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   134
    QString endLine = "\r\n--" + kStringBoundary + "\r\n", kStringBoundary;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   135
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   136
    QString tmp = "--" + kStringBoundary + "\r\n";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   137
    body.append(tmp.toUtf8());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   138
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   139
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   140
    QHashIterator<QString, QString> i(aParams);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   141
    while (i.hasNext()) {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   142
        i.next();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   143
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   144
        tmp = "Content-Disposition: form-data; name=\"" + i.key().toUtf8() + "\"\r\n\r\n" ;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   145
        body.append(tmp.toUtf8());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   146
        body.append(i.value().toUtf8());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   147
        body.append(endLine.toUtf8());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   148
    }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   149
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   150
    return body;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   151
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   152
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   153
void FBDialog::postDismissCleanup()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   154
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   155
    //accept();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   156
    // could also be reject()?
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   157
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   158
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   159
void FBDialog::dismiss (bool /*aAnimated*/) {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   160
    dialogWillDisappear();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   161
    iLoadingUrl.clear();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   162
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   163
    //todo: do some animations if aAnimated == true !
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   164
    postDismissCleanup();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   165
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   166
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   167
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   168
void FBDialog::dismissWithSuccess( bool aSuccess, bool aAnimated)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   169
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   170
  if (aSuccess) {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   171
        emit dialogDidSucceed();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   172
  } else {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   173
        emit dialogDidCancel();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   174
  }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   175
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   176
  dismiss(aAnimated);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   177
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   178
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   179
void FBDialog::dismissWithError (const FBError& aError)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   180
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   181
	Q_UNUSED(aError)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   182
	QMessageBox msgbox;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   183
	QString msg ("Error!Please try again!");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   184
	msgbox.setText(msg);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   185
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   186
void FBDialog::slotAuthenticationRequired( QNetworkReply* reply, QAuthenticator* authenticator )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   187
	{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   188
		Q_UNUSED(reply)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   189
		Q_UNUSED(authenticator)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   190
		QMessageBox msgbox;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   191
		QString msg ("Error!Authentication Required");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   192
		msgbox.setText(msg);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   193
	}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   194
void FBDialog::slotsslErrors( QNetworkReply* reply, const QList<QSslError>& errors  )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   195
	{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   196
		Q_UNUSED(reply)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   197
		Q_UNUSED(errors)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   198
		QMessageBox msgbox;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   199
		QString msg ("Error!SSL Error");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   200
		msgbox.setText(msg);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   201
	}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   202
void FBDialog::slotproxyAuthenticationRequired( const QNetworkProxy& proxy, QAuthenticator* authenticator  )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   203
	{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   204
		Q_UNUSED(proxy)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   205
		Q_UNUSED(authenticator)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   206
		QMessageBox msgbox;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   207
		QString msg ("Error!Proxy Authenticatio Required");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   208
		msgbox.setText(msg);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   209
	}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   210
void FBDialog::cancel()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   211
{}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   212
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   213
void FBDialog::load() {}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   214
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   215
void FBDialog::show()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   216
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   217
    load();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   218
    showMaximized();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   219
    dialogWillAppear();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   220
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   221
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   222
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   223
void FBDialog::loadURL(const QString& aUrl, QNetworkAccessManager::Operation aMethod, const QHash<QString, QString>& aGetParams, const QHash<QString, QString>&  aPostParams)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   224
{   
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   225
	Q_UNUSED(aMethod)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   226
	Q_UNUSED(aPostParams)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   227
    QNetworkCookieJar* cookieJar = iWebView->page()->networkAccessManager()->cookieJar();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   228
    QByteArray body;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   229
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   230
   iLoadingUrl = generateURL(aUrl, aGetParams);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   231
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   232
    QUrl url (iLoadingUrl);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   233
    QNetworkRequest request(aUrl);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   234
 
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   235
	proxysettings();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   236
	if(flag)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   237
		{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   238
			urlShoot = iLoadingUrl;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   239
			qDebug()<< "urlShoot : " << urlShoot;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   240
		}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   241
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   242
    qDebug()<< "Check URL : " << iLoadingUrl;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   243
    iWebView->load(url);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   244
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   245
void FBDialog::proxysettings()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   246
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   247
#ifdef EMULATORTESTING
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   248
	qDebug()<<"proxysettings";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   249
	
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   250
	// Reading the keys, CSM Stubbed - START
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   251
	QFile file("c://data//DoNotShare.txt");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   252
	if (!file.open(QIODevice::ReadOnly))
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   253
		{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   254
		qDebug()<<"File to read the windows username and password could not be opened, returning!!!";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   255
		return;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   256
		}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   257
	
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   258
	QByteArray arr = file.readAll();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   259
	QList<QByteArray> list = arr.split(' ');
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   260
	file.close();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   261
	
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   262
	QString username(list[0]);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   263
	QString password(list[1]);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   264
	
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   265
    QString httpProxy = "10.1.0.214";//ipwproxy.sasken.com
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   266
    QString httpPort = "3128";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   267
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   268
    QString httpUser =username;/* This could be taken thru an QDialog implmentation to remove the Hard coding */
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   269
    QString httpPass =password;/* This could be taken thru an QDialog implmentation to remove the Hard coding */
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   270
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   271
    /*==Classes used from Network Module==*/
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   272
    QNetworkProxy proxy;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   273
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   274
    proxy.setType(QNetworkProxy::HttpProxy);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   275
    proxy.setHostName(httpProxy);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   276
    proxy.setPort(httpPort.toInt());
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   277
    proxy.setUser(httpUser);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   278
    proxy.setPassword(httpPass);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   279
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   280
    QNetworkProxy::setApplicationProxy(proxy);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   281
#endif
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   282
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   283
void FBDialog::dialogWillAppear() {}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   284
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   285
void FBDialog::dialogWillDisappear() {}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   286
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   287
void FBDialog::dialogDidSucceed (const QUrl& /*aUrl*/) {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   288
  dismissWithSuccess(true,true);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   289
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   290
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   291
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   292
void FBDialog::linkClicked ( const QUrl & url )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   293
 {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   294
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   295
        qDebug() << "Loading the url: " <<  url;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   296
        
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   297
		proxysettings();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   298
        iWebView->load(url);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   299
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   300
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   301
void FBDialog::loadStarted()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   302
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   303
	qDebug() << "Enter: FBDialog::loadStarted()";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   304
    qDebug() << "Load started: " << iWebView->url();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   305
    qDebug() << "Before: layout->addWidget(progressbar);";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   306
    layout->addWidget(progressbar);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   307
    qDebug() << "After: layout->addWidget(progressbar);";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   308
    qDebug() << "Before: progressbar->setVisible(true);";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   309
    progressbar->setVisible(true);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   310
    qDebug() << "After: progressbar->setVisible(true);";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   311
    qDebug() << "Exit: FBDialog::loadStarted()";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   312
    
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   313
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   314
void FBDialog::loadProgress(int progress)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   315
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   316
	qDebug()<<"Enter: FBDialog::loadProgress(int progress)";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   317
	progressbar->setValue(progress);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   318
	qDebug()<<"Exit: FBDialog::loadProgress(int progress)";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   319
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   320
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   321
void FBDialog::GetSessionKey(const QUrl& aUrl)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   322
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   323
	Q_UNUSED(aUrl)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   324
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   325
void FBDialog::connectToGetSession()
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   326
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   327
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   328
}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   329
void FBDialog::loadFinished ( bool ok )
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   330
{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   331
	qDebug()<<"Enter: FBDialog::loadFinished ( bool ok )";
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   332
    qDebug() << "Load " << (ok ? "" : "un") << "successfull for: " << iWebView->url();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   333
    layout->removeWidget(progressbar);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   334
    progressbar->setVisible(false);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   335
    if (ok)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   336
    {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   337
        QString url = iWebView->url().toString();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   338
        qDebug() << "Loaded URL " << url;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   339
        qDebug() << "To be compared URL " << kMinitokensuccessURL;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   340
        if(url.compare(kMinitokensuccessURL)==0)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   341
        	{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   342
				iWebView->close();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   343
				QMessageBox msgbox;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   344
				QString msg ("Complete the Authorization?");
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   345
				msgbox.setText(msg);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   346
				msgbox.exec();
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   347
				
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   348
				connectToGetSession();				
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   349
				
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   350
        	}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   351
        else if(url.compare(kUrlChk)==0)
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   352
        	{
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   353
				iWebView->load(urlShoot);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   354
        	}
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   355
    }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   356
    else
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   357
    {
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   358
        FBError err;
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   359
        dismissWithError(err);
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   360
    }
83d6a149c755 Submitting following changes -
cgandhi
parents:
diff changeset
   361
}