diff --git a/mail-notifier.py b/mail-notifier.py
index ace595c..5e9d6f0 100755
--- a/mail-notifier.py
+++ b/mail-notifier.py
@@ -266,11 +266,62 @@ class Details(QDialog):
self.ui = Ui_Details()
self.ui.setupUi(self)
+ self.ui.btnRefresh.clicked.connect(self.Refresh_clicked)
def closeEvent(self, event):
event.ignore()
self.hide()
+ def Refresh_clicked(self):
+ mail_count = 0
+ AllFroms=[]
+ AllSubjs=[]
+ AllDates=[]
+ if (GlobalSettingsExist() and AccountExist()):
+ m = Mail()
+ groups = settings.childGroups()
+ for i in range (len(groups)):
+ settings.beginGroup(groups[i])
+ group = groups[i]
+ user = settings.value("Login")
+ password = settings.value("Password")
+ mailserver = settings.value("MailServer")
+ port = settings.value("Port")
+ ssl = settings.value("SSL")
+ settings.endGroup()
+ if m.login(mailserver,port,user,password,ssl):
+ if (mail_count == "ERROR" or m.checkMail() == "ERROR"):
+ mail_count = "ERROR"
+ else:
+ mail_count += m.checkMail()
+ AllFroms.extend(m.parseMail("From"))
+ AllSubjs.extend(m.parseMail("Subject"))
+ AllDates.extend(m.parseMail("Date"))
+ else:
+ mail_count = "CONNECTION_ERROR"
+ else:
+ mail_count = "CONFIGURATION_ERROR"
+
+ data = {"From":AllFroms,
+ "Subject":AllSubjs,
+ "Date":AllDates,}
+ self.ui.tableWidget.setRowCount(len(AllFroms))
+ self.ui.tableWidget.setColumnCount(3)
+ #Enter data onto Table
+ horHeaders = []
+ for n, key in enumerate(sorted(data.keys())):
+ #print(data.keys())
+ horHeaders.append(key)
+ for m, item in enumerate(data[key]):
+ newitem = QtWidgets.QTableWidgetItem(item)
+ self.ui.tableWidget.setItem(m, n, newitem)
+
+ #Add Header
+ self.ui.tableWidget.setHorizontalHeaderLabels(horHeaders)
+
+ #Adjust size of Table
+ self.ui.tableWidget.resizeColumnsToContents()
+ self.ui.tableWidget.resizeRowsToContents()
# Common functions
@@ -338,9 +389,6 @@ def mail_check():
mail_count = "ERROR"
else:
mail_count += m.checkMail()
- print("FROM:",m.parseMail("From"))
- print("SUBJECT:",m.parseMail("Subject"))
- print("DATE:",m.parseMail("Date"))
else:
mail_count = "CONNECTION_ERROR"
else:
diff --git a/ui/details.ui b/ui/details.ui
index ef837d9..35fb820 100644
--- a/ui/details.ui
+++ b/ui/details.ui
@@ -6,8 +6,8 @@
0
0
- 730
- 467
+ 1048
+ 619
@@ -19,7 +19,7 @@
-
-
+
0
diff --git a/ui_details.py b/ui_details.py
index 2542ca7..1d16b1c 100644
--- a/ui_details.py
+++ b/ui_details.py
@@ -11,23 +11,23 @@ from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Details(object):
def setupUi(self, Details):
Details.setObjectName("Details")
- Details.resize(730, 467)
+ Details.resize(1048, 619)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap(":/icons/mailbox_empty.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
Details.setWindowIcon(icon)
self.verticalLayout_2 = QtWidgets.QVBoxLayout(Details)
self.verticalLayout_2.setObjectName("verticalLayout_2")
- self.pushButton = QtWidgets.QPushButton(Details)
+ self.btnRefresh = QtWidgets.QPushButton(Details)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.pushButton.sizePolicy().hasHeightForWidth())
- self.pushButton.setSizePolicy(sizePolicy)
+ sizePolicy.setHeightForWidth(self.btnRefresh.sizePolicy().hasHeightForWidth())
+ self.btnRefresh.setSizePolicy(sizePolicy)
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(":/icons/check_now.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.pushButton.setIcon(icon1)
- self.pushButton.setObjectName("pushButton")
- self.verticalLayout_2.addWidget(self.pushButton)
+ self.btnRefresh.setIcon(icon1)
+ self.btnRefresh.setObjectName("btnRefresh")
+ self.verticalLayout_2.addWidget(self.btnRefresh)
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.tableWidget = QtWidgets.QTableWidget(Details)
@@ -43,6 +43,6 @@ class Ui_Details(object):
def retranslateUi(self, Details):
_translate = QtCore.QCoreApplication.translate
Details.setWindowTitle(_translate("Details", "Mail Notifier"))
- self.pushButton.setText(_translate("Details", "Refresh"))
+ self.btnRefresh.setText(_translate("Details", "Refresh"))
import resources_rc