示例#1
0
文件: Logs.py 项目: emper0r/aron-conf
 def logs(self):
     if self.comboBox.currentText() == 'Tutti':
         db_table = sql_query.Q(
             action='allLogs',
             kwargs=[
                 str(self.calendarFrom.selectedDate().year()) + '-' +
                 str(self.calendarFrom.selectedDate().month()) + '-' +
                 str(self.calendarFrom.selectedDate().day()) + ' 00:00:00',
                 str(self.calendarTo.selectedDate().year()) + '-' +
                 str(self.calendarTo.selectedDate().month()) + '-' +
                 str(self.calendarTo.selectedDate().day()) + ' 23:59:59'
             ])
     else:
         db_table = sql_query.Q(
             action='logs_by',
             kwargs=[
                 str(self.calendarFrom.selectedDate().year()) + '-' +
                 str(self.calendarFrom.selectedDate().month()) + '-' +
                 str(self.calendarFrom.selectedDate().day()) + ' 00:00:00',
                 str(self.calendarTo.selectedDate().year()) + '-' +
                 str(self.calendarTo.selectedDate().month()) + '-' +
                 str(self.calendarTo.selectedDate().day()) + ' 23:59:59',
                 str(self.comboBox.currentText())
             ])
     for i in reversed(range(self.tableWidget.rowCount())):
         self.tableWidget.removeRow(i)
     for row in range(0, len(db_table)):
         self.tableWidget.insertRow(self.tableWidget.rowCount())
         for colum in range(0, 3):
             value = QTableWidgetItem(str(db_table[row][colum]), 0)
             self.tableWidget.setItem(row, colum, value)
             colum += 1
         row += 1
示例#2
0
 def accept(self):
     if self.EditDialog.text() == '':
         QMessageBox.about(self, 'Attenzione',
                           'Deve scrivere un nome cliente')
     else:
         check_client = sql_query.Q(action='check_client',
                                    kwargs=[self.EditDialog.text()])
         if str(check_client) == '()':
             sql_query.Q(action='new_client',
                         kwargs=[self.EditDialog.text()])
             self.hide()
         else:
             QMessageBox.about(self, 'Attenzione', 'Cliente esistente')
示例#3
0
    def _save(self):
        conf = configparser.RawConfigParser()
        conf.read(
            os.path.join(os.path.dirname(os.path.abspath(__file__)),
                         '../db.conf'))
        email_regex = re.compile(r"[^@]+@[^@]+\.[^@]+")
        if self.lineEditClient.text() == '' or \
                        self.lineEditName.text() == '' or \
                        self.lineEditEmail.text() == '' or \
                        self.lineEditReq.text() == '' or \
                        self.lineEditLic.text() == '' or \
                not email_regex.match(self.lineEditEmail.text()):
            QMessageBox.about(self, 'Attenzione', codes.msg(code=413))
        else:
            sql_query.Q(action='insert_lic',
                        kwargs=[
                            self.lineEditClient.text(),
                            self.lineEditName.text(),
                            self.lineEditEmail.text(),
                            self.dateEditActive.text(),
                            self.dateEditExpire.text(),
                            self.lineEditReq.text(),
                            self.lineEditLic.text(),
                            self.spinBoxQty.value()
                        ])

            if self.spinBoxQty.value() is 0:
                qty = 'Ilimitati'
            else:
                qty = str(self.spinBoxQty.value())

            sender = base64.b64decode(
                conf['Mail']['sender'][2:-1]).decode('utf-8')
            recipient = self.lineEditEmail.text()

            ctx = 'Gentile Cliente,<br><br>Grazie per aver scelto il nostro prodotto Aron Proxy,<br>'
            ctx += 'nel seguito inviamo i dati per l\'attivazione della licenza.<br><br>'
            ctx += 'Cliente: %s<br>Nome: %s<br>Codice: %s<br>Licenza: %s<br>Quantita\' devices: %s<br><br>' \
                   'Cordiali Saluti,<br><br>' \
                   'Computer Time s.r.l' % \
                   (self.lineEditClient.text(), self.lineEditName.text(),
                    self.lineEditReq.text(), self.lineEditLic.text(), qty)

            msg = MIMEMultipart('alternative')
            msg['Subject'] = u'Computer Time :: Licenza per Aron Proxy'
            msg['From'] = sender
            msg['To'] = recipient
            message = MIMEText(ctx, 'html')
            msg.attach(message)
            s = smtplib.SMTP(
                base64.b64decode(conf['Mail']['server'][2:-1]).decode('utf-8'),
                25)
            s.login(
                base64.b64decode(conf['Mail']['user'][2:-1]).decode('utf-8'),
                base64.b64decode(
                    conf['Mail']['password'][2:-1]).decode('utf-8'))
            s.sendmail(sender, recipient, msg.as_string())
            s.quit()

            self._loadtable()
示例#4
0
 def _delete_user(self):
     sql_query.Q(action='delete_user',
                 kwargs=[
                     self.tableWidget.item(self.tableWidget.currentRow(),
                                           0).text()
                 ])
     self.load_table()
示例#5
0
 def closeEvent(self, event):
     if self._want_to_close:
         super(DialogLogin, self).closeEvent()
     else:
         event.ignore()
         sql_query.Q(action='log', kwargs=[self.EditLogin.text(), codes.msg(code=404) + self.EditLogin.text()])
         qApp.exit(0)
示例#6
0
 def accept(self):
     if self.EditDialog.text() == '':
         QMessageBox.about(self, 'Attenzione', codes.msg(code=308))
     else:
         if self.EditDialog.isReadOnly() is False:
             self._save()
         sql_query.Q(action='new_hw', kwargs=[self.EditDialog.text(), self._client])
         self.hide()
示例#7
0
文件: Item.py 项目: emper0r/aron-conf
 def _delete_it(self):
     sql_query.Q(action='delete_it_item',
                 kwargs=[
                     self.tableWidget.item(self.tableWidget.currentRow(),
                                           0).text()
                 ])
     self.EditDialog.setText('')
     self.load_table()
示例#8
0
文件: Item.py 项目: emper0r/aron-conf
 def load_table(self):
     db_table = sql_query.Q(action='load_item')
     for i in reversed(range(self.tableWidget.rowCount())):
         self.tableWidget.removeRow(i)
     for row in range(0, len(db_table)):
         self.tableWidget.insertRow(self.tableWidget.rowCount())
         value = QTableWidgetItem(str(db_table[row][0]), 0)
         self.tableWidget.setItem(row, 0, value)
         row += 1
示例#9
0
 def accept(self):
     if self.EditDialog.text() == '':
         QMessageBox.about(self, 'Attenzione', codes.msg(code=308))
     else:
         if self._item == 'LAN' or self._item == 'WAN':
             if iptools.ipv4.validate_ip(self.EditDialog.text()) is True:
                 sql_query.Q(action='new_line',
                             kwargs=[self._hardware,
                                     self._item,
                                     self.EditDialog.text(),
                                     self._client])
                 self.hide()
                 return
             else:
                 QMessageBox.about(self, 'Attenzione', codes.msg(code=311))
                 return
         sql_query.Q(action='new_line', kwargs=[self._hardware, self._item, self.EditDialog.text(), self._client])
         self.hide()
示例#10
0
文件: Item.py 项目: emper0r/aron-conf
 def _save(self):
     try:
         sql_query.Q(action='save_it_new', kwargs=[self.EditDialog.text()])
         self.EditDialog.setReadOnly(True)
         self.btItSave.setDisabled(True)
         self.EditDialog.setText('')
         self.buttonBox.setDisabled(False)
         self.load_table()
     except:
         QMessageBox.about(self, 'Attenzione', codes.msg(code=307))
示例#11
0
 def accept(self):
     if self.EditNew.text() == '' or self.EditConferm.text() == '':
         QMessageBox.about(self, 'Attenzione', codes.msg(code=309))
     if self.EditNew.text() == self.EditConferm.text():
         sql_query.Q(action='update_pwd', kwargs=[self.EditNew.text(), self._client])
         self.hide()
     else:
         self.EditNew.clear()
         self.EditConferm.clear()
         QMessageBox.about(self, 'Attenzione', codes.msg(code=310))
示例#12
0
 def accept(self):
     if self.EditLogin.text() == '' or self.EditPass.text() == '':
         QMessageBox.about(self, 'Attenzione', codes.msg(code=114))
     else:
         try:
             access = sql_query.Q(action='login', kwargs=[self.EditLogin.text()])
             if len(access) is 0:
                 self.EditLogin.clear()
                 self.EditPass.clear()
                 self.EditLogin.setFocus()
             elif bcrypt.hashpw(str(self.EditPass.text()).encode('utf-8'), str(access[0][1]).encode('utf-8')) == str(access[0][2]).encode('utf-8'):
                 self._login = self.EditLogin.text()
                 sql_query.Q(action='log', kwargs=[self.EditLogin.text(), codes.msg(code=115)])
                 self._access = self.hide()
             else:
                 self.EditLogin.clear()
                 self.EditPass.clear()
                 self.EditLogin.setFocus()
                 sql_query.Q(action='log', kwargs=[self.EditLogin.text(), codes.msg(code=404 + self.EditLogin.text())])
         except:
             QMessageBox.about(self, 'Attenzione', codes.msg(code=401))
示例#13
0
 def _modify(self):
     try:
         self.btSave.setEnabled(True)
         self.EditDialog.setText(self.tableWidget.selectedItems()[0].text())
         db_table = sql_query.Q(
             action='load_user',
             kwargs=[self.tableWidget.selectedItems()[0].text()])
         self.EditDialogPwd.setText(db_table[0][1])
         self.checkBox.setCheckState(db_table[0][2])
         self.modify = 'True'
     except:
         pass
示例#14
0
 def _save(self):
     try:
         if self.modify == 'False':
             sql_query.Q(action='save_new_user',
                         kwargs=[
                             self.EditDialog.text(),
                             self.EditDialogPwd.text(),
                             self.checkBox.checkState()
                         ])
         else:
             sql_query.Q(action='update_user',
                         kwargs=[
                             self.EditDialog.text(),
                             self.checkBox.checkState()
                         ])
             self.modify = 'False'
         self.EditDialog.setText('')
         self.EditDialogPwd.setText('')
         self.EditDialog.setReadOnly(True)
         self.EditDialogPwd.setReadOnly(True)
         self.load_table()
         self.btSave.setDisabled(True)
     except:
         QMessageBox.about(self, 'Attenzione', codes.msg(code=307))
示例#15
0
 def load_table(self):
     db_table = sql_query.Q(action='load_users')
     for i in reversed(range(self.tableWidget.rowCount())):
         self.tableWidget.removeRow(i)
     for row in range(0, len(db_table)):
         self.tableWidget.insertRow(self.tableWidget.rowCount())
         user = QTableWidgetItem(str(db_table[row][0]), 0)
         self.tableWidget.setItem(row, 0, user)
         if db_table[row][2] == 2:
             pix = QPixmap("images/enable.png")
         else:
             pix = QPixmap("images/disable.png")
         img = QLabel(self)
         img.setPixmap(QPixmap(pix).scaled(16, 16))
         self.tableWidget.setCellWidget(row, 1, img)
         row += 1
示例#16
0
文件: Logs.py 项目: emper0r/aron-conf
 def __init__(self, parent=None):
     QDialog.__init__(self, parent)
     self.setupUi(self)
     self.comboBox.setFocus()
     self._want_to_close = False
     users_list = sql_query.Q(action='load_users')
     self.tableWidget.setColumnWidth(0, 200)
     self.tableWidget.setColumnWidth(1, 100)
     self.tableWidget.setColumnWidth(2, 360)
     self.comboBox.clear()
     logs = QPixmap("images/log.png")
     self.btFind.setIcon(QIcon(logs))
     self.btFind.setToolTip('Logs del sistema')
     self.btFind.setToolTipDuration(10000)
     self.comboBox.addItem('Tutti')
     for item in range(0, len(users_list)):
         self.comboBox.addItem(users_list[item][0])
     self.logs()
     self.btFind.clicked.connect(self.logs)
示例#17
0
 def _loadtable(self):
     for i in reversed(range(self.tableWidget.rowCount())):
         self.tableWidget.removeRow(i)
     db_table = sql_query.Q(action='license')
     for row in range(0, len(db_table)):
         self.tableWidget.insertRow(self.tableWidget.rowCount())
         for column in range(0, 11):
             if column == 9 and db_table[row][9] == 1:
                 pix = QPixmap("images/enable.png")
                 img = QLabel(self)
                 img.setPixmap(QPixmap(pix).scaled(16, 16))
                 self.tableWidget.setCellWidget(row, 9, img)
             elif column == 9 and db_table[row][9] is None:
                 pix = QPixmap("images/disable.png")
                 img = QLabel(self)
                 img.setPixmap(QPixmap(pix).scaled(16, 16))
                 self.tableWidget.setCellWidget(row, 9, img)
             elif column == 5 and db_table[row][5] < datetime.date.today():
                 value = QTableWidgetItem(str(db_table[row][column]), 0)
                 value.setForeground(QColor(Qt.red))
                 value.setTextAlignment(Qt.AlignHCenter)
                 value.setTextAlignment(Qt.AlignVCenter)
                 self.tableWidget.setItem(row, column, value)
             elif column == 5 and db_table[row][5] >= datetime.date.today():
                 value = QTableWidgetItem(str(db_table[row][column]), 0)
                 value.setForeground(QColor(Qt.green))
                 value.setTextAlignment(Qt.AlignHCenter)
                 value.setTextAlignment(Qt.AlignVCenter)
                 self.tableWidget.setItem(row, column, value)
             else:
                 if column == 3 and db_table[row][3] is 0:
                     value = QTableWidgetItem(str('Ilimitati'), 0)
                 else:
                     value = QTableWidgetItem(str(db_table[row][column]), 0)
                 value.setTextAlignment(Qt.AlignHCenter)
                 value.setTextAlignment(Qt.AlignVCenter)
                 self.tableWidget.setItem(row, column, value)
                 column += 1
         row += 1
示例#18
0
 def keyPressEvent(self, event):
     if event.key() == Qt.Key_Return:
         self.accept()
     if event.key() == Qt.Key_Escape:
         sql_query.Q(action='log', kwargs=[self.EditLogin.text(), codes.msg(code=404) + self.EditLogin.text()])
         qApp.exit(0)
示例#19
0
 def _delete(self):
     client = self.tableWidget.item(self.tableWidget.currentRow(), 0).text()
     lic = self.tableWidget.item(self.tableWidget.currentRow(), 7).text()
     sql_query.Q(action='delete_lic', kwargs=[client, lic])
     self._loadtable()