diff --git a/libaddrbook.py b/libaddrbook.py index 6d4128a..3acc7ca 100644 --- a/libaddrbook.py +++ b/libaddrbook.py @@ -9,9 +9,44 @@ class LibAddrBook: def get_everyone(self): c = self.db.cursor() c.execute("""SELECT * from people""") + ppl = [] nums = [] for row in c.fetchall(): print(row) + print(row[0]) nums.append(row[PHONE_NUM_COL]) + ppl.append({'id': row[0], 'name': row[1]}) + return ppl + def get_groups(self): + c = self.db.cursor() + c.execute("""SELECT * from groups""") + groups = [] + for row in c.fetchall(): + groups.append({'gid': row[0], 'name': row[1]}) + return groups + +# todo: make sure ids is actually a list of numbers? + def get_nums_with_ids(self, ids): + c = self.db.cursor() + idlist = ', '.join('{}'.format(x) for x in ids) + print idlist + c.execute("""SELECT * from people WHERE id IN ({})""".format(idlist)) + nums = [] + for row in c.fetchall(): + nums.append(row[PHONE_NUM_COL]) return nums + + def get_people_in_groups(self, groups): + if(len(groups) == 0): + return [] + # /!\ SPECIAL CASE ALERT: A group ID of -1 signifies that 'everyone' is selected, so use that function instead. + if(-1 in groups): + return [p['id'] for p in self.get_everyone()] + + c = self.db.cursor() + grouplist = ', '.join('{}'.format(x) for x in groups) + print grouplist + c.execute("""SELECT people.id from people INNER JOIN memberships ON people.id = memberships.person_id WHERE memberships.group_id IN ({})""".format(grouplist)) + ids = [r[0] for r in c.fetchall()] + return ids diff --git a/mocksmscast.py b/mocksmscast.py index 13b8a21..175e5a3 100644 --- a/mocksmscast.py +++ b/mocksmscast.py @@ -2,6 +2,9 @@ class LibSMSCast: def __init__(self): pass def send(self, to, msg): + f = open('mocksms.log', 'a') for recipient in to: - print("\"{}\" -> {}".format(msg, recipient)) + f.write("\"{}\" -> {}\n".format(msg, recipient)) + f.close() + diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..7d8af84 --- /dev/null +++ b/templates/index.html @@ -0,0 +1,118 @@ +{% extends "layout.html" %} +{% block body %} + + + + +

uh hi

+

send

+

res

+

groups

+

+

people

+

+{% endblock %} diff --git a/templates/layout.html b/templates/layout.html new file mode 100644 index 0000000..a2d1ab8 --- /dev/null +++ b/templates/layout.html @@ -0,0 +1,8 @@ + +smscast + + +{% block body %}{% endblock %}