def get_full_people(): user_records = db_helpers.query_db('select * from users order by name asc') people_list = [] for user_record in user_records: card_records = db_helpers.query_db( 'select * from cards where user_id = ?', (user_record['user_id'], )) card_list = [] for card_record in card_records: card_r = dict() card_r['card_uuid'] = str(card_record['card_uuid']).encode('hex') card_r['card_id'] = card_record['card_id'] card_list.append(card_r) if (len(str(user_record['image'])) > 0): image_url = '/people/' + str(user_record['user_id']) + '/img' else: image_url = url_for('static', filename='img/icon-black.png') person_record = { \ 'cards':card_list, \ 'user_id':user_record['user_id'], \ 'image_url':image_url, \ 'name':user_record['name'], \ # 'cardcount':card_records['count'], \ 'logged_in': (True if (user_record['logged_in'] == 1) else False) } people_list.append(person_record) return people_list
def get_full_people(): user_records = db_helpers.query_db('select * from users order by name asc') people_list = [] for user_record in user_records: card_records = db_helpers.query_db('select * from cards where user_id = ?', (user_record['user_id'],) ) card_list = [] for card_record in card_records: card_r = dict() card_r['card_uuid'] = str(card_record['card_uuid']).encode('hex') card_r['card_id'] = card_record['card_id'] card_list.append(card_r) if ( len(str(user_record['image'])) > 0 ): image_url = '/people/' + str(user_record['user_id']) + '/img' else: image_url = url_for('static', filename='img/icon-black.png') person_record = { \ 'cards':card_list, \ 'user_id':user_record['user_id'], \ 'image_url':image_url, \ 'name':user_record['name'], \ # 'cardcount':card_records['count'], \ 'logged_in': (True if (user_record['logged_in'] == 1) else False) } people_list.append(person_record) return people_list
def get_people(sql): user_records = db_helpers.query_db(sql) people_list = [] for user_record in user_records: person_record = dict() if ( len(str(user_record['image'])) > 0 ): image_url = '/people/' + str(user_record['user_id']) + '/img' else: image_url = url_for('static', filename='img/icon-black.png') card_records = db_helpers.query_db('select count(*) as count from cards where user_id = ?', (user_record['user_id'],), True ) if (time.daylight): tz = " " + time.tzname[1] else: tz = " " + time.tzname[0] person_record = { \ 'user_id':user_record['user_id'], \ 'image_url':image_url, \ 'name':user_record['name'], \ 'cardcount':card_records['count'], \ 'logged_in': (True if (user_record['logged_in'] == 1) else False), \ 'event_when': time.strftime('%H:%M %d/%m/%Y', time.localtime(user_record['event_when'])) + tz \ # 'event_when': time.localtime(user_record['event_when']) # 'event_when': time.tzname[0] } people_list.append(person_record) return people_list
def get_image(user_id): user_info = db_helpers.query_db( 'select image from users where user_id = ?', [user_id], one=True) img = str(user_info['image']) response = make_response(img) response.headers['Content-Type'] = 'image/jpeg' return response
def toggle_logged_in_state(user_id): user_info = db_helpers.query_db("SELECT * FROM users WHERE user_id = ?", (user_id,), True) new_logged_in_state = 1 - user_info["logged_in"] db = db_helpers.get_db() db.execute("UPDATE users SET logged_in = ?, event_when = strftime('%s','now') WHERE user_id = ?;", (new_logged_in_state, user_id,)) db.execute("INSERT INTO attendance(logged_in, name, event_when) VALUES(?, ?, strftime('%s','now'));", (new_logged_in_state, user_info['name'])) db.commit()
def get_events(t_from, t_to): events = db_helpers.query_db( """ SELECT name || ',' || event_when || ',' || datetime(event_when,'unixepoch') || ',' || logged_in AS line, name, event_when, logged_in FROM attendance WHERE event_when BETWEEN ? AND ? ORDER BY name ASC, event_when ASC """, (t_from, t_to)) return events
def get_events(t_from, t_to): events = db_helpers.query_db( """ SELECT name || ',' || event_when || ',' || datetime(event_when,'unixepoch') || ',' || logged_in AS line, name, event_when, logged_in FROM attendance WHERE event_when BETWEEN ? AND ? ORDER BY name ASC, event_when ASC """, (t_from, t_to), ) return events
def get_people(sql): user_records = db_helpers.query_db(sql) people_list = [] for user_record in user_records: person_record = dict() if (len(str(user_record['image'])) > 0): image_url = '/people/' + str(user_record['user_id']) + '/img' else: image_url = url_for('static', filename='img/icon-black.png') card_records = db_helpers.query_db( 'select count(*) as count from cards where user_id = ?', (user_record['user_id'], ), True) if (time.daylight): tz = " " + time.tzname[1] else: tz = " " + time.tzname[0] person_record = { \ 'user_id':user_record['user_id'], \ 'image_url':image_url, \ 'name':user_record['name'], \ 'cardcount':card_records['count'], \ 'logged_in': (True if (user_record['logged_in'] == 1) else False), \ 'event_when': time.strftime('%H:%M %d/%m/%Y', time.localtime(user_record['event_when'])) + tz \ # 'event_when': time.localtime(user_record['event_when']) # 'event_when': time.tzname[0] } people_list.append(person_record) return people_list
def toggle_logged_in_state(user_id): user_info = db_helpers.query_db("SELECT * FROM users WHERE user_id = ?", (user_id, ), True) new_logged_in_state = 1 - user_info["logged_in"] db = db_helpers.get_db() db.execute( "UPDATE users SET logged_in = ?, event_when = strftime('%s','now') WHERE user_id = ?;", ( new_logged_in_state, user_id, )) db.execute( "INSERT INTO attendance(logged_in, name, event_when) VALUES(?, ?, strftime('%s','now'));", (new_logged_in_state, user_info['name'])) db.commit()
def trigger_link(user_id): user_info = db_helpers.query_db("SELECT * FROM users WHERE user_id = ?", (user_id,), True) hash_str = str("spamspam" + str(user_info["user_id"]) + user_info["name"]).encode("utf-8") m = hashlib.md5(hash_str) user_hash = bytearray((user_info["user_id"], 0)) user_hash += bytearray(m.digest()) server_address = "/tmp/nfcdaemon" sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) message = "" try: sock.connect(server_address) message = bytearray("write ") + user_hash sock.sendall(message) except: message = traceback.format_exc() finally: sock.close() return redirect("/people/edit")
def trigger_link(user_id): user_info = db_helpers.query_db("SELECT * FROM users WHERE user_id = ?", (user_id, ), True) hash_str = str("spamspam" + str(user_info["user_id"]) + user_info["name"]).encode("utf-8") m = hashlib.md5(hash_str) user_hash = bytearray((user_info["user_id"], 0)) user_hash += bytearray(m.digest()) server_address = '/tmp/nfcdaemon' sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) message = '' try: sock.connect(server_address) message = bytearray('write ') + user_hash sock.sendall(message) except: message = traceback.format_exc() finally: sock.close() return redirect('/people/edit')
def get_image(user_id): user_info = db_helpers.query_db("select image from users where user_id = ?", [user_id], one=True) img = str(user_info["image"]) response = make_response(img) response.headers["Content-Type"] = "image/jpeg" return response