fix including hirarchy
This commit is contained in:
parent
c1d736ce02
commit
ee25c1f94b
8 changed files with 89 additions and 61 deletions
|
@ -13,7 +13,6 @@
|
||||||
|
|
||||||
#include <list>
|
#include <list>
|
||||||
|
|
||||||
#include "src/grades/Course.h"
|
|
||||||
#include "src/grades/GradePage.h"
|
#include "src/grades/GradePage.h"
|
||||||
#include "src/user.h"
|
#include "src/user.h"
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
#include "loginhandler.h"
|
#include "loginhandler.h"
|
||||||
|
|
||||||
loginHandler::loginHandler()
|
loginHandler::loginHandler(user *ptr): logggedInFlag(false)
|
||||||
|
{
|
||||||
|
this->jceLog = new jceLogin(ptr);
|
||||||
|
}
|
||||||
|
void loginHandler::setPointers(QLabel *statusLabelPtr,QLineEdit *pswdEditPtr,QLineEdit *usrnmEditPtr)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
|
||||||
void loginHandler::setPointers(jceLogin *ptr,QLabel *statusLabelPtr,QLineEdit *pswdEditPtr,QLineEdit *usrnmEditPtr)
|
|
||||||
{
|
|
||||||
this->jceLog = ptr;
|
|
||||||
this->statusLabelPtr = statusLabelPtr;
|
this->statusLabelPtr = statusLabelPtr;
|
||||||
this->pswdEditPtr = pswdEditPtr;
|
this->pswdEditPtr = pswdEditPtr;
|
||||||
this->usrnmEditPtr = usrnmEditPtr;
|
this->usrnmEditPtr = usrnmEditPtr;
|
||||||
|
@ -28,7 +28,8 @@ bool loginHandler::makeConnection()
|
||||||
{
|
{
|
||||||
case jceLogin::JCE_YOU_ARE_IN:
|
case jceLogin::JCE_YOU_ARE_IN:
|
||||||
{
|
{
|
||||||
return true;
|
logggedInFlag = true;
|
||||||
|
return logggedInFlag;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case jceLogin::ERROR_ON_VALIDATION:
|
case jceLogin::ERROR_ON_VALIDATION:
|
||||||
|
@ -80,6 +81,40 @@ bool loginHandler::makeConnection()
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool loginHandler::isLoggedInFlag()
|
||||||
|
{
|
||||||
|
return this->logggedInFlag;
|
||||||
|
}
|
||||||
|
|
||||||
|
void loginHandler::setLoginFlag(bool flag)
|
||||||
|
{
|
||||||
|
this->logggedInFlag = flag;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString loginHandler::getCurrentPageContect()
|
||||||
|
{
|
||||||
|
QTextEdit phrase;
|
||||||
|
if (isLoggedInFlag())
|
||||||
|
phrase.setText(QString::fromStdString(jceLog->getPage()));
|
||||||
|
else
|
||||||
|
throw jceLogin::ERROR_ON_GETTING_INFO;
|
||||||
|
|
||||||
|
return phrase.toPlainText();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loginHandler::makeDisconnectionRequest()
|
||||||
|
{
|
||||||
|
jceLog->closeAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
int loginHandler::makeGradeRequest()
|
||||||
|
{
|
||||||
|
if (isLoggedInFlag())
|
||||||
|
return jceLog->getGrades();
|
||||||
|
else
|
||||||
|
return jceLogin::JCE_NOT_CONNECTED;
|
||||||
|
}
|
||||||
void loginHandler::popMessage(QString message,bool addInfo)
|
void loginHandler::popMessage(QString message,bool addInfo)
|
||||||
{
|
{
|
||||||
if (addInfo)
|
if (addInfo)
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
|
#include <QTextEdit>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include <QPixmap>
|
#include <QPixmap>
|
||||||
|
|
||||||
|
@ -12,15 +13,22 @@
|
||||||
class loginHandler
|
class loginHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
loginHandler();
|
loginHandler(user *ptr);
|
||||||
void setPointers(jceLogin *ptr,QLabel *statusLabelPtr,QLineEdit *pswdEditPtr,QLineEdit *usrnmEditPtr);
|
void setPointers(QLabel *statusLabelPtr,QLineEdit *pswdEditPtr,QLineEdit *usrnmEditPtr);
|
||||||
bool makeConnection();
|
bool makeConnection();
|
||||||
|
bool isLoggedInFlag();
|
||||||
|
void setLoginFlag(bool flag);
|
||||||
|
|
||||||
|
QString getCurrentPageContect();
|
||||||
|
int makeGradeRequest();
|
||||||
|
|
||||||
|
void makeDisconnectionRequest();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
void popMessage(QString message, bool addInfo = true);
|
void popMessage(QString message, bool addInfo = true);
|
||||||
|
|
||||||
|
bool logggedInFlag;
|
||||||
jceLogin *jceLog;
|
jceLogin *jceLog;
|
||||||
|
|
||||||
QLabel *statusLabelPtr;
|
QLabel *statusLabelPtr;
|
||||||
|
|
|
@ -28,10 +28,9 @@ MainScreen::MainScreen(QWidget *parent) :QMainWindow(parent), ui(new Ui::MainScr
|
||||||
|
|
||||||
|
|
||||||
//Pointer allocating
|
//Pointer allocating
|
||||||
this->jceLog = NULL;
|
|
||||||
this->userLoginSetting = new user("","");
|
this->userLoginSetting = new user("","");
|
||||||
this->courseTableMgr = new coursesTableManager(ui->coursesTable,userLoginSetting);
|
this->courseTableMgr = new coursesTableManager(ui->coursesTable,userLoginSetting);
|
||||||
this->loginHandel = new loginHandler();
|
this->loginHandel = new loginHandler(userLoginSetting);
|
||||||
|
|
||||||
updateDates();
|
updateDates();
|
||||||
|
|
||||||
|
@ -48,33 +47,30 @@ MainScreen::MainScreen(QWidget *parent) :QMainWindow(parent), ui(new Ui::MainScr
|
||||||
MainScreen::~MainScreen()
|
MainScreen::~MainScreen()
|
||||||
{
|
{
|
||||||
delete userLoginSetting;
|
delete userLoginSetting;
|
||||||
delete jceLog;
|
|
||||||
delete loginHandel;
|
delete loginHandel;
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
void MainScreen::on_ratesButton_clicked()
|
void MainScreen::on_ratesButton_clicked()
|
||||||
{
|
{
|
||||||
QTextEdit phrase;
|
|
||||||
std::string pageString;
|
std::string pageString;
|
||||||
if (this->jceLog != NULL)
|
int status = 0;
|
||||||
|
if (loginHandel->isLoggedInFlag())
|
||||||
{
|
{
|
||||||
if (jceLog->isLoginFlag() == true)
|
if ((status = loginHandel->makeGradeRequest()) == jceLogin::JCE_GRADE_PAGE_PASSED)
|
||||||
{
|
{
|
||||||
if (jceLog->getGrades() == jceLogin::JCE_GRADE_PAGE_PASSED)
|
pageString = loginHandel->getCurrentPageContect().toStdString();
|
||||||
{
|
courseTableMgr->setCoursesList(pageString);
|
||||||
phrase.setText(QString::fromStdString(jceLog->getPage()));
|
courseTableMgr->insertJceCoursesIntoTable();
|
||||||
pageString = phrase.toPlainText().toStdString();
|
}
|
||||||
courseTableMgr->setCoursesList(pageString);
|
else if (status == jceLogin::JCE_NOT_CONNECTED)
|
||||||
courseTableMgr->insertJceCoursesIntoTable();
|
{
|
||||||
}
|
QMessageBox::critical(this,tr("Error"),tr("Not Connected"));
|
||||||
else
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainScreen::on_spinBoxFromYear_editingFinished()
|
void MainScreen::on_spinBoxFromYear_editingFinished()
|
||||||
|
@ -134,15 +130,11 @@ void MainScreen::on_coursesTable_itemChanged(QTableWidgetItem *item)
|
||||||
|
|
||||||
void MainScreen::on_loginButton_clicked()
|
void MainScreen::on_loginButton_clicked()
|
||||||
{
|
{
|
||||||
if (this->jceLog == NULL)
|
if (loginHandel->isLoggedInFlag())
|
||||||
uiSetConnectMode();
|
uiSetDisconnectMode();
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
uiSetConnectMode();
|
||||||
if (jceLog->isLoginFlag() == true)
|
|
||||||
uiSetDisconnectMode();
|
|
||||||
else
|
|
||||||
uiSetConnectMode();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -173,8 +165,7 @@ void MainScreen::uiSetDisconnectMode()
|
||||||
ui->usrnmLineEdit->setEnabled(true);
|
ui->usrnmLineEdit->setEnabled(true);
|
||||||
ui->pswdLineEdit->setEnabled(true);
|
ui->pswdLineEdit->setEnabled(true);
|
||||||
|
|
||||||
delete jceLog;
|
loginHandel->makeDisconnectionRequest();
|
||||||
jceLog = NULL;
|
|
||||||
ui->loginButton->setText("&Login");
|
ui->loginButton->setText("&Login");
|
||||||
this->ui->ratesButton->setDisabled(true);
|
this->ui->ratesButton->setDisabled(true);
|
||||||
return;
|
return;
|
||||||
|
@ -182,11 +173,6 @@ void MainScreen::uiSetDisconnectMode()
|
||||||
|
|
||||||
void MainScreen::uiSetConnectMode() //fix before distrbute
|
void MainScreen::uiSetConnectMode() //fix before distrbute
|
||||||
{
|
{
|
||||||
std::string page;
|
|
||||||
|
|
||||||
if (this->jceLog != NULL)
|
|
||||||
delete jceLog;
|
|
||||||
|
|
||||||
string username;
|
string username;
|
||||||
string password;
|
string password;
|
||||||
if ((ui->usrnmLineEdit->text().isEmpty()) || (ui->pswdLineEdit->text().isEmpty()))
|
if ((ui->usrnmLineEdit->text().isEmpty()) || (ui->pswdLineEdit->text().isEmpty()))
|
||||||
|
@ -205,20 +191,10 @@ void MainScreen::uiSetConnectMode() //fix before distrbute
|
||||||
userLoginSetting->setUsername(username);
|
userLoginSetting->setUsername(username);
|
||||||
userLoginSetting->setPassword(password);
|
userLoginSetting->setPassword(password);
|
||||||
|
|
||||||
this->repaint();
|
this->loginHandel->setPointers(statusLabel,ui->pswdLineEdit,ui->usrnmLineEdit);
|
||||||
page = "connecting with username ";
|
|
||||||
page = username;
|
|
||||||
page += "and password: ";
|
|
||||||
page += password;
|
|
||||||
ui->textEdit->setText(ui->textEdit->toPlainText() + QString::fromStdString(page));
|
|
||||||
|
|
||||||
jceLog = new jceLogin(userLoginSetting);
|
|
||||||
this->loginHandel->setPointers(jceLog,statusLabel,ui->pswdLineEdit,ui->usrnmLineEdit);
|
|
||||||
|
|
||||||
if (loginHandel->makeConnection() == true)
|
if (loginHandel->makeConnection() == true)
|
||||||
{
|
{
|
||||||
page = this->jceLog->getPage();
|
|
||||||
ui->textEdit->setText(ui->textEdit->toPlainText() + QString::fromStdString(page));
|
|
||||||
setLabelConnectionStatus(jceLogin::jceStatus::JCE_YOU_ARE_IN);
|
setLabelConnectionStatus(jceLogin::jceStatus::JCE_YOU_ARE_IN);
|
||||||
ui->loginButton->setText("&Logout");
|
ui->loginButton->setText("&Logout");
|
||||||
this->ui->ratesButton->setEnabled(true);
|
this->ui->ratesButton->setEnabled(true);
|
||||||
|
|
|
@ -10,9 +10,6 @@
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
|
|
||||||
#include "src/grades/GradePage.h"
|
|
||||||
#include "src/jce/jcelogin.h"
|
|
||||||
#include "coursestablemanager.h"
|
#include "coursestablemanager.h"
|
||||||
#include "loginhandler.h"
|
#include "loginhandler.h"
|
||||||
|
|
||||||
|
@ -66,7 +63,6 @@ private:
|
||||||
|
|
||||||
Ui::MainScreen *ui;
|
Ui::MainScreen *ui;
|
||||||
|
|
||||||
jceLogin *jceLog;
|
|
||||||
user *userLoginSetting;
|
user *userLoginSetting;
|
||||||
|
|
||||||
coursesTableManager *courseTableMgr;
|
coursesTableManager *courseTableMgr;
|
||||||
|
|
|
@ -42,11 +42,11 @@ bool qtsslsocket::isCon()
|
||||||
//need to fix the method
|
//need to fix the method
|
||||||
bool qtsslsocket::send(std::string str)
|
bool qtsslsocket::send(std::string str)
|
||||||
{
|
{
|
||||||
int status;
|
// int status;
|
||||||
bool flag = isCon();
|
bool flag = isCon();
|
||||||
if (flag) //if connected
|
if (flag) //if connected
|
||||||
{
|
{
|
||||||
status = socket->write(str.c_str(),str.length());
|
socket->write(str.c_str(),str.length());
|
||||||
while (socket->waitForBytesWritten());
|
while (socket->waitForBytesWritten());
|
||||||
}
|
}
|
||||||
return flag;
|
return flag;
|
||||||
|
@ -64,3 +64,11 @@ bool qtsslsocket::recieve(std::string &str)
|
||||||
|
|
||||||
return flag;
|
return flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool qtsslsocket::makeDiconnect()
|
||||||
|
{
|
||||||
|
this->socket->abort();
|
||||||
|
if (socket->isOpen())
|
||||||
|
return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ public:
|
||||||
bool isCon();
|
bool isCon();
|
||||||
bool send(std::string str);
|
bool send(std::string str);
|
||||||
bool recieve(std::string &str);
|
bool recieve(std::string &str);
|
||||||
|
bool makeDiconnect();
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -21,6 +21,9 @@ jceLogin::~jceLogin()
|
||||||
*/
|
*/
|
||||||
void jceLogin::makeConnection() throw (jceStatus)
|
void jceLogin::makeConnection() throw (jceStatus)
|
||||||
{
|
{
|
||||||
|
if (this->recieverPage == NULL)
|
||||||
|
this->recieverPage = new std::string();
|
||||||
|
|
||||||
if (JceConnector->makeConnect(dst_host,dst_port) == false)
|
if (JceConnector->makeConnect(dst_host,dst_port) == false)
|
||||||
throw jceStatus::ERROR_ON_OPEN_SOCKET;
|
throw jceStatus::ERROR_ON_OPEN_SOCKET;
|
||||||
|
|
||||||
|
@ -96,6 +99,7 @@ void jceLogin::reConnect() throw (jceStatus)
|
||||||
this->JceConnector = new qtsslsocket();
|
this->JceConnector = new qtsslsocket();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
makeConnection();
|
makeConnection();
|
||||||
}
|
}
|
||||||
catch (jceLogin::jceStatus &a)
|
catch (jceLogin::jceStatus &a)
|
||||||
|
@ -106,9 +110,10 @@ void jceLogin::reConnect() throw (jceStatus)
|
||||||
|
|
||||||
void jceLogin::closeAll()
|
void jceLogin::closeAll()
|
||||||
{
|
{
|
||||||
|
JceConnector->makeDiconnect();
|
||||||
delete recieverPage;
|
delete recieverPage;
|
||||||
recieverPage = NULL;
|
recieverPage = NULL;
|
||||||
JceConnector = NULL;
|
loginFlag = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue