example/LastFmAuthApp/src/baseDialog.cpp
author cgandhi
Tue, 12 Oct 2010 15:23:52 +0530
changeset 27 b3e1347ac96a
parent 26 83d6a149c755
permissions -rw-r--r--
Updating the information for test applications and results.
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
}