@@ -49,3 +49,10 @@ class Connection:
def close(self):
self._conn.close()
+
+ def fetch_userid(self, user):
+ cur = self.execute("SELECT ID FROM Users WHERE Username = ?", [user])
+ userid = cur.fetchone()[0]
+ if userid == 0:
+ raise aurweb.exceptions.InvalidUserException(user)
+ return userid
@@ -38,10 +38,7 @@ def pkgbase_exists(pkgbase):
def list_repos(user):
conn = aurweb.db.Connection()
- cur = conn.execute("SELECT ID FROM Users WHERE Username = ?", [user])
- userid = cur.fetchone()[0]
- if userid == 0:
- raise aurweb.exceptions.InvalidUserException(user)
+ userid = conn.fetch_userid(user)
cur = conn.execute("SELECT Name, PackagerUID FROM PackageBases " +
"WHERE MaintainerUID = ?", [userid])
@@ -58,10 +55,7 @@ def create_pkgbase(pkgbase, user):
conn = aurweb.db.Connection()
- cur = conn.execute("SELECT ID FROM Users WHERE Username = ?", [user])
- userid = cur.fetchone()[0]
- if userid == 0:
- raise aurweb.exceptions.InvalidUserException(user)
+ userid = conn.fetch_userid(user)
now = int(time.time())
cur = conn.execute("INSERT INTO PackageBases (Name, SubmittedTS, " +
@@ -90,10 +84,7 @@ def pkgbase_adopt(pkgbase, user, privileged):
if not privileged and not cur.fetchone():
raise aurweb.exceptions.PermissionDeniedException(user)
- cur = conn.execute("SELECT ID FROM Users WHERE Username = ?", [user])
- userid = cur.fetchone()[0]
- if userid == 0:
- raise aurweb.exceptions.InvalidUserException(user)
+ userid = conn.fetch_userid(user)
cur = conn.execute("UPDATE PackageBases SET MaintainerUID = ? " +
"WHERE ID = ?", [userid, pkgbase_id])
@@ -138,23 +129,8 @@ def pkgbase_set_comaintainers(pkgbase, userlist,
user, privileged):
userlist_old = set(pkgbase_get_comaintainers(pkgbase))
- uids_old = set()
- for olduser in userlist_old:
- cur = conn.execute("SELECT ID FROM Users WHERE Username = ?",
- [olduser])
- userid = cur.fetchone()[0]
- if userid == 0:
- raise aurweb.exceptions.InvalidUserException(user)
- uids_old.add(userid)
-
- uids_new = set()
- for newuser in userlist:
- cur = conn.execute("SELECT ID FROM Users WHERE Username = ?",
- [newuser])
- userid = cur.fetchone()[0]
- if userid == 0:
- raise aurweb.exceptions.InvalidUserException(user)
- uids_new.add(userid)
+ uids_old = set([conn.fetch_userid(olduser) for olduser in userlist_old])
+ uids_new = set([conn.fetch_userid(newuser) for newuser in userlist])
uids_add = uids_new - uids_old