Exemple #1
0
    def SetDesgin(self):
        self.GetLayout().addStrut(200)
        self.Fixity.Configuration.fetchEmailConfiguration()
        self.email_addr_bar = GUILibraries.QLineEdit()
        self.out_going_mail_server = GUILibraries.QLineEdit()
        self.port = GUILibraries.QLineEdit()
        self.password = GUILibraries.QLineEdit()
        self.SSL_protocol = GUILibraries.QRadioButton("SSL Protocols")
        self.TLS_protocol = GUILibraries.QRadioButton("TLS Protocols")
        self.none_protocol = GUILibraries.QRadioButton("None")

        self.password.setEchoMode(GUILibraries.QLineEdit.Password)
        self.set_information = GUILibraries.QPushButton("Save && Close")
        self.reset = GUILibraries.QPushButton("Reset")
        self.check_email = GUILibraries.QPushButton("Check Credentials")
        self.cancel = GUILibraries.QPushButton("Close Without Saving")
        self.loader = GUILibraries.QLabel("Sending Email...")

        self.email_addr_bar.setPlaceholderText("email: [email protected]")
        self.password.setPlaceholderText("Password")
        self.out_going_mail_server.setPlaceholderText("smtp.gmail.com")
        self.port.setPlaceholderText("Port")

        self.email_addr_bar.setMaximumSize(200, 100)
        self.password.setMaximumSize(200, 100)
        self.reset.setMaximumSize(200, 100)
        self.cancel.setMaximumSize(200, 100)
        self.set_information.setMaximumSize(200, 100)
        self.out_going_mail_server.setMaximumSize(200, 100)
        self.port.setMaximumSize(200, 100)
        self.check_email.setMaximumSize(200, 100)

        self.SMTP_server_lable = GUILibraries.QLabel('SMTP Server')
        self.email_address_lable = GUILibraries.QLabel('Email Address')
        self.password_lable = GUILibraries.QLabel('Password')
        self.port_lable = GUILibraries.QLabel('Port')
        self.encryption_lable = GUILibraries.QLabel('Encryption Method')

        self.GetLayout().addWidget(self.loader)
        self.GetLayout().addWidget(self.SMTP_server_lable)
        self.GetLayout().addWidget(self.out_going_mail_server)

        self.GetLayout().addWidget(self.email_address_lable)
        self.GetLayout().addWidget(self.email_addr_bar)

        self.GetLayout().addWidget(self.password_lable)
        self.GetLayout().addWidget(self.password)

        self.GetLayout().addWidget(self.port_lable)
        self.GetLayout().addWidget(self.port)

        self.GetLayout().addWidget(self.encryption_lable)
        self.GetLayout().addWidget(self.SSL_protocol)
        self.GetLayout().addWidget(self.TLS_protocol)
        self.GetLayout().addWidget(self.none_protocol)
        self.GetLayout().addWidget(self.set_information)
        self.GetLayout().addWidget(self.check_email)
        self.GetLayout().addWidget(self.reset)
        self.GetLayout().addWidget(self.cancel)

        self.loader.hide()

        self.reset.clicked.connect(self.ResetForm)
        self.set_information.clicked.connect(self.Save)
        self.cancel.clicked.connect(self.CloseClick)
        self.check_email.clicked.connect(self.checkIsEmailValid)
        self.SSL_protocol.clicked.connect(self.SSL_protocolConif)
        self.TLS_protocol.clicked.connect(self.TLS_protocolConif)
        self.none_protocol.clicked.connect(self.none_protocolConif)

        self.SetWindowLayout()
        information = self.Fixity.Configuration.getEmailConfiguration()
        self.out_going_mail_server.setText('smtp.gmail.com')
        self.setInformation(information)

        self.TLS_protocol.setChecked(True)
        self.TLS_protocol.click()
        try:
            if information is not None and len(
                    information) > 0 and information['smtp'] != None:
                self.setInformation(information)
        except:
            pass
Exemple #2
0
    def creatSchedulingOptions(self):
        self.scheduling_groupBox = GUILibraries.QGroupBox("Scheduling")
        self.monthly = GUILibraries.QRadioButton("Monthly")
        self.weekly = GUILibraries.QRadioButton("Weekly")
        self.daily = GUILibraries.QRadioButton("Daily")

        self.run_only_on_ac_power = GUILibraries.QCheckBox(
            "Run when on battery power")
        self.start_when_available = GUILibraries.QCheckBox(
            "If missed, run upon restart")
        self.email_only_when_something_changed = GUILibraries.QCheckBox(
            "Email only upon warning or failure")

        self.run_only_on_ac_power.clicked.connect(self.changed)
        self.start_when_available.clicked.connect(self.changed)
        self.email_only_when_something_changed.clicked.connect(self.changed)

        self.run_only_on_ac_power.setChecked(True)
        self.start_when_available.setChecked(True)
        self.email_only_when_something_changed.setChecked(True)

        self.monthly.clicked.connect(self.monthClick)
        self.weekly.clicked.connect(self.weekClick)
        self.daily.clicked.connect(self.dayClick)

        self.switchDebugger(True)
        self.scheduling_layout = GUILibraries.QVBoxLayout()

        self.scheduling_layout.addWidget(self.monthly)
        self.scheduling_layout.addWidget(self.weekly)
        self.scheduling_layout.addWidget(self.daily)
        self.scheduler_run_time = GUILibraries.QLabel("Scheduler Run Time: ")
        self.scheduling_layout.addWidget(self.scheduler_run_time)
        self.timer = GUILibraries.QTimeEdit(GUILibraries.QTime())

        self.timer.setDisplayFormat(self.Fixity.Configuration.getTimeFormat())
        self.scheduling_layout.addWidget(self.timer)

        self.scheduler_run_on = GUILibraries.QLabel("Scheduler Run On: ")
        self.scheduling_layout.addWidget(self.scheduler_run_on)
        self.day_of_week = GUILibraries.QComboBox()
        self.day_of_week.addItems(self.Fixity.Configuration.getWeekDays())
        self.day_of_week.activated.connect(self.changed)
        self.scheduling_layout.addWidget(self.day_of_week)
        self.day_of_week.hide()

        self.day_of_month = GUILibraries.QSpinBox()
        self.day_of_month.setMaximum(31)
        self.day_of_month.setMinimum(1)

        self.day_of_month.valueChanged.connect(self.changed)
        self.scheduling_layout.addWidget(self.day_of_month)
        self.day_of_month.hide()

        self.spacer = GUILibraries.QSpacerItem(125, 30)
        self.scheduling_layout.addItem(self.spacer)
        system_information = self.Fixity.Configuration.getWindowsInformation()

        if self.Fixity.Configuration.getOsType() == 'Windows' and (
                str(system_information['WindowsType']) == '7'
                or str(system_information['WindowsType']) == '10'
                or str(system_information['WindowsType']) == '8'):
            self.scheduling_layout.addWidget(self.run_only_on_ac_power)
            self.scheduling_layout.addWidget(self.start_when_available)
        self.scheduling_layout.addWidget(
            self.email_only_when_something_changed)

        self.lastrun = GUILibraries.QLabel("Last checked: ")
        self.scheduling_layout.addWidget(self.lastrun)
        self.scheduling_groupBox.setLayout(self.scheduling_layout)
        self.scheduling_groupBox.setFixedSize(260, 289)