Exemple #1
0
def main():

    while True:
        i = int(
            input(
                " 1=> add user, 2=> view user, 3=>remove user ,4=> view all 5=> quit"
            ))
        if i == 1:
            name = input("give user name: ")
            if db.contains(name):
                print("ERROR!! user {} already exists".format(name))
            else:
                pwd = getpass.getpass("give password:"******"confirm passwd:")
                if pwd == pwd2:
                    db.add(name, pwd)
                    print("{} sucessfully added".format(name))
                    disc = input("give description:?? ")
                    db.adddisc(name, pwd, disc)
                else:
                    print("{} not added as typed password not matched".format(
                        name))
        elif i == 2:
            name = input("give user name: ")
            if db.contains(name):
                pwd = getpass.getpass("give password: "******"NAME:   ", name, '\nDISCRIPTION:   ',
                          db.discription(name, pwd))
                else:
                    print("you entered a wrong password for user".format(name))
            else:
                print("user {} does not exist".format(name))
        elif i == 3:
            name = input("give user name: ")
            if db.contains(name):
                pwd = getpass.getpass("give password: "******"you entered a wrong password for user {}".format(
                        name))
            else:
                print("user {} does not exist".format(name))
        elif i == 4:
            db.view()
        elif i == 5:
            print("thank you")
            break
        else:
            print("not a choice")
    else:
        db.close()
Exemple #2
0
def discover(count=config.words_in_each_discover):
    words = db.getnewword(count)
    if len(words) == 0:
        input(config.message_for_ending_discover)
        return
    i = 1
    for w in words:
        clear()
        print(config.discover_header)
        print(f"{i} : {w}")
        print("\n", db.db[w])
        db.view(w)
        input('\npress enter to continue...')
        i += 1
Exemple #3
0
def practise(count=config.words_in_each_practise):
    words = db.getpractise(count)
    if len(words) == 0:
        input(config.message_for_ending_practicing)
        return
    i = 1
    for w in words:
        clear()
        print(config.practise_header)
        print(f"{i} : {w}")
        print("\n", db.db[w])
        db.view(w)
        input('\npress enter to continue...')
        i += 1
Exemple #4
0
def find_coverid_from_couch(db, key, value):
    rows = db.view("covers/by_id", key=[key, value], limit=10, stale="ok")
    rows = list(rows)
    
    if rows:
        row = max(rows, key=lambda row: row.value['last_modified'])
        return row.value['cover']
Exemple #5
0
def find_coverid_from_couch(db, key, value):
    rows = db.view("covers/by_id", key=[key, value], limit=10, stale="ok")
    rows = list(rows)

    if rows:
        row = max(rows, key=lambda row: row.value['last_modified'])
        return row.value['cover']
Exemple #6
0
def view_data():
    if request.method == "POST":
        Table_name = request.form.get('table_name')
        data = view(Table_name)
        return Response(json.dumps(data))
    else:
        return 403
Exemple #7
0
def view_command():
    refresh()
    refresh_list()
    for row in db.view():
        listbox.insert(
            END,
            '{:2d}|{:6s}|{:6s}|{:4d}|{:10d}'.format(row[0], row[1], row[2],
                                                    row[3], row[4]))
Exemple #8
0
def index():
    data = db.view()
    print(data)
    jsonData = json.dumps(data, default=str, sort_keys=True, indent=2)
    resp = app.response_class(
        response=jsonData, status=200, mimetype="application/json"
    )
    return resp
Exemple #9
0
def update_record_pro():
    userId = request.form['userId']
    password = request.form['password']
    email = request.form['email']

    db.update_record(password, email, userId)

    result_data = db.view(userId)
    return render_template('view.html', result_data=result_data)
def list_files():
    if 'logged_in' in session and session['logged_in'] == "Is_logged_in":# Login Session prüfen
        if request.method == 'POST':# Logout
            session.pop('logged_in', None)# Login Session löschen
            return redirect('/login')
        elif request.method == 'GET':
        	return render_template('index.html',files = db.view())# index.html mit liste der hochgeladenen Dateien zurückgeben
    else:
        return redirect('/login')
def delete_file():
    if 'logged_in' in session and session['logged_in'] == "Is_logged_in":# Login Session prüfen
        if request.method == 'POST':
            filename = request.form['file']# Zu löschenden Dateinamen erhalten
            db.delete(filename)# Datei aus der Datenbank löschen
            os.remove(os.path.join(app.config['UPLOAD_FOLDER'], filename))# Datei aus UPLOAD_FOLDER löschen
            return redirect('/')

        elif request.method == 'GET':
            return render_template('delete.html', files = db.view())
    else:
        return redirect('/login')
Exemple #12
0
def login_pro():
    userId = request.args['userId']
    password = request.args['password']
    login_result = db.login_result(userId, password)
    user_data = db.view(userId)
    # True => session 안에 userId 저장. 로그인 후 페이지로 연결. logined.html
    # False => 회원 가입 페이지로 연결. memberJoin.html
    if login_result:
        # 세션 저장 : session[변수] = 값
        session['userId'] = userId
        return render_template('logined.html', userId=userId)
    else:
        return render_template('memberJoin.html')
Exemple #13
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(587, 532)
        MainWindow.setStyleSheet("background-color: rgb(0 ,0 ,0);")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.label1 = QtWidgets.QLabel(self.centralwidget)
        self.label1.setGeometry(QtCore.QRect(20, 0, 81, 31))
        font = QtGui.QFont()
        font.setFamily("Vemana2000")
        font.setBold(True)
        font.setWeight(75)
        self.label1.setFont(font)
        self.label1.setStyleSheet("color: rgb(255, 255, 255);")
        self.label1.setObjectName("label1")
        self.l1 = QtWidgets.QLabel(self.centralwidget)
        self.l1.setGeometry(QtCore.QRect(20, 40, 81, 20))
        self.l1.setStyleSheet("color: rgb(255, 255, 255);")
        self.l1.setObjectName("l1")
        self.t1 = QtWidgets.QLineEdit(self.centralwidget)
        self.t1.setGeometry(QtCore.QRect(110, 40, 271, 20))
        self.t1.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.t1.setText("")
        self.t1.setObjectName("t1")
        self.l2 = QtWidgets.QLabel(self.centralwidget)
        self.l2.setGeometry(QtCore.QRect(20, 70, 81, 17))
        self.l2.setStyleSheet("color: rgb(255, 255, 255);")
        self.l2.setObjectName("l2")
        self.t2 = QtWidgets.QLineEdit(self.centralwidget)
        self.t2.setGeometry(QtCore.QRect(110, 70, 271, 21))
        self.t2.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.t2.setObjectName("t2")
        self.l3 = QtWidgets.QLabel(self.centralwidget)
        self.l3.setGeometry(QtCore.QRect(20, 100, 81, 17))
        self.l3.setStyleSheet("color: rgb(255, 255, 255);")
        self.l3.setObjectName("l3")
        self.t3 = QtWidgets.QLineEdit(self.centralwidget)
        self.t3.setGeometry(QtCore.QRect(110, 100, 271, 20))
        self.t3.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.t3.setObjectName("t3")
        self.b1 = QtWidgets.QPushButton(self.centralwidget)
        self.b1.setGeometry(QtCore.QRect(80, 140, 89, 25))
        self.b1.setStyleSheet("background-color: rgb(245, 121, 0);")
        self.b1.setObjectName("b1")
        self.b1.clicked.connect(lambda : insert(self.t1.text(),self.t2.text(),self.t3.text()))
        self.label2 = QtWidgets.QLabel(self.centralwidget)
        self.label2.setGeometry(QtCore.QRect(20, 170, 121, 31))
        font = QtGui.QFont()
        font.setFamily("Vemana2000")
        font.setBold(True)
        font.setWeight(75)
        self.label2.setFont(font)
        self.label2.setStyleSheet("color: rgb(255, 255, 255);")
        self.label2.setObjectName("label2")
        self.b2 = QtWidgets.QPushButton(self.centralwidget)
        self.b2.setGeometry(QtCore.QRect(80, 210, 89, 25))
        self.b2.setStyleSheet("background-color: rgb(245, 121, 0);")
        self.b2.setObjectName("b2")
        self.b2.clicked.connect(lambda : viewfolder())
        self.label3 = QtWidgets.QLabel(self.centralwidget)
        self.label3.setGeometry(QtCore.QRect(20, 250, 131, 31))
        font = QtGui.QFont()
        font.setFamily("Vemana2000")
        font.setBold(True)
        font.setWeight(75)
        self.label3.setFont(font)
        self.label3.setStyleSheet("color: rgb(255, 255, 255);")
        self.label3.setObjectName("label3")
        self.l4 = QtWidgets.QLabel(self.centralwidget)
        self.l4.setGeometry(QtCore.QRect(20, 290, 81, 17))
        self.l4.setStyleSheet("color: rgb(255, 255, 255);")
        self.l4.setObjectName("l4")
        self.t4 = QtWidgets.QLineEdit(self.centralwidget)
        self.t4.setGeometry(QtCore.QRect(110, 290, 271, 21))
        self.t4.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.t4.setObjectName("t4")
        self.b3 = QtWidgets.QPushButton(self.centralwidget)
        self.b3.setGeometry(QtCore.QRect(80, 340, 89, 25))
        self.b3.setStyleSheet("background-color: rgb(245, 121, 0);")
        self.b3.setObjectName("b3")
        self.b3.clicked.connect(lambda  : delete(self.t4.text()))
        self.label4 = QtWidgets.QLabel(self.centralwidget)
        self.label4.setGeometry(QtCore.QRect(20, 370, 261, 31))
        font = QtGui.QFont()
        font.setFamily("Vemana2000")
        font.setBold(True)
        font.setWeight(75)
        self.label4.setFont(font)
        self.label4.setStyleSheet("color: rgb(255, 255, 255);")
        self.label4.setObjectName("label4")
        self.l5 = QtWidgets.QLabel(self.centralwidget)
        self.l5.setGeometry(QtCore.QRect(20, 410, 81, 17))
        self.l5.setStyleSheet("color: rgb(255, 255, 255);")
        self.l5.setObjectName("l5")
        self.t5 = QtWidgets.QLineEdit(self.centralwidget)
        self.t5.setGeometry(QtCore.QRect(110, 410, 271, 21))
        self.t5.setStyleSheet("background-color: rgb(255, 255, 255);")
        self.t5.setObjectName("t5")
        self.b4 = QtWidgets.QPushButton(self.centralwidget)
        self.b4.setGeometry(QtCore.QRect(80, 460, 89, 25))
        self.b4.setStyleSheet("background-color: rgb(245, 121, 0);")
        self.b4.setObjectName("b4")
        self.b4.clicked.connect(lambda  :  view(self.t5.text()))
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 587, 22))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Exemple #14
0
def view_cmd():
    listbox.delete(0, END)
    for row in db.view():
        listbox.insert(END, row)
Exemple #15
0
def view():
    userId = request.args['userId']

    result_data = db.view(userId)
    return render_template('view.html', result_data=result_data)
Exemple #16
0
def webpoller():
    # Grab all the Monitor Entries in the database
    rows = db.view()
    for row in rows:
        # For each entry, resolve the hostname of the DNS server if applicable.
        # Create Flag in the event of a DNS issue
        dnserror = 0
        # Timestamp of test
        polltime = datetime.datetime.now().strftime("%Y-%m-%d-%H.%M.%S")
        # Grab the coordinates
        coordinates = row[1]
        # Grab the friendly name of the Location we are testing
        location = row[2]
        myResolver = dns.resolver.Resolver()
        myResolver.timeout = 5
        myResolver.lifetime = 5
        try:
            # Is IP?
            socket.inet_aton(row[3])
            # Then set our DNS server to the IP
            myResolver.nameservers = [row[3]]
        except socket.error:
            # Is not IP?  Then resolve the hostname
            dnsquery = myResolver.query(row[3], "A")
            # We only want the 1st A record
            #myResolver.nameservers = [arecord]
            arecord = dnsquery[0]
            myResolver.nameservers = [arecord]
        dnsserver = myResolver.nameservers[0]
        try:
            # Resove the FQDN we are testing
            cdnip = myResolver.query('www.example.com', "A")
            edgeip = str(cdnip[0])
            # Send HTTP request to edge IP - ignoring SSL errors and sending the correct host header
            r = requests.head('https://' + str(edgeip) + '/health.html',
                              headers={'host': 'www.example.com'},
                              verify=False,
                              timeout=5)
        except:
            # IF failure - raise DNS flag
            dnserror = 1
        if dnserror != 1:
            if r.status_code == 200:
                # Get total time taken for requests
                loadtime = r.elapsed.total_seconds()
                # Adjust latency based on latency.py script
                adjlatency = latency.ping_time(edgeip)
                if adjlatency != "latency test failed":
                    adjloadtime = (float(loadtime) - float(adjlatency))
                else:
                    adjloadtime = "latency test failed"
                result = "success"
                results.add(polltime, location, dnsserver, str(edgeip), result,
                            loadtime, adjloadtime, coordinates)
            else:
                result = "failure"
                loadtime = "N/A"
                adjloadtime = "N/A"
                results.add(polltime, location, dnsserver, str(edgeip), result,
                            loadtime, adjloadtime, coordinates)
        else:
            edgeip = "N/A"
            result = "DNS Error"
            loadtime = "N/A"
            adjloadtime = "N/A"
            results.add(polltime, location, dnsserver, str(edgeip), result,
                        loadtime, adjloadtime, coordinates)
    time.sleep(30)
    # Database cleanup ; create json file
    rows = results.view()
    for row in rows:
        if datetime.datetime.strptime(
                row[1], "%Y-%m-%d-%H.%M.%S"
        ) < datetime.datetime.now() - datetime.timedelta(days=14):
            todelete = row[0]
            results.delete(todelete)

    jsonoutredux = results.failedlist()
    jsondocredux = open('templates/jsonout.json', 'w')
    for line in jsonoutredux:
        jsondocredux.write("%s" % line)
    jsondocredux.close()
    with open('templates/jsonout.json', 'r+') as f:
        s = f.read()
        s = s[:-1]
        f.seek(0)
        f.write('eqfeed_callback({"type":"FeatureCollection","features":[' + s)
    with open('templates/jsonout.json', 'a') as f:
        f.write("]});")
Exemple #17
0
def view_command():
    list1.delete(0, END)
    for row in db.view():
        list1.insert(END, row)