summaryrefslogtreecommitdiffstats
path: root/src/database/database.vala
diff options
context:
space:
mode:
authorHolger Cremer <HolgerCremer@gmail.com>2017-06-13 22:14:26 +0200
committerHolger Cremer <HolgerCremer@gmail.com>2017-06-13 22:14:26 +0200
commit54828fef6bd859234b353685dade7d6841d7dd18 (patch)
treeab2cddec3ad0396fe43c05a50230e677c6e477ca /src/database/database.vala
parent1643686c6260ea6e5c54f50c52bcf7e1ebb8a010 (diff)
downloadserial-barcode-scanner-54828fef6bd859234b353685dade7d6841d7dd18.tar.bz2
adds the joined_at column and support in the db/web
Diffstat (limited to 'src/database/database.vala')
-rw-r--r--src/database/database.vala8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/database/database.vala b/src/database/database.vala
index 6bcbd70..fb7bde6 100644
--- a/src/database/database.vala
+++ b/src/database/database.vala
@@ -108,7 +108,7 @@ public class DataBase : Object {
queries["user_theme_set"] = "UPDATE users SET sound_theme=? WHERE id = ?";
queries["password_get"] = "SELECT password FROM authentication WHERE user = ?";
queries["password_set"] = "UPDATE authentication SET password=? WHERE user = ?";
- queries["userinfo"] = "SELECT firstname, lastname, email, gender, street, plz, city, pgp, hidden, disabled, sound_theme FROM users WHERE id = ?";
+ queries["userinfo"] = "SELECT firstname, lastname, email, gender, street, plz, city, pgp, hidden, disabled, sound_theme, joined_at FROM users WHERE id = ?";
queries["userauth"] = "SELECT superuser, auth_users, auth_products, auth_cashbox FROM authentication WHERE user = ?";
queries["userauth_set"] = "UPDATE authentication SET auth_users = ?, auth_products = ?, auth_cashbox = ? WHERE user = ?";
queries["profit_by_product"] = "SELECT name, SUM(memberprice - (SELECT price FROM purchaseprices WHERE product = purch.product)) AS price FROM sales purch, prices, products WHERE purch.product = products.id AND purch.product = prices.product AND purch.user > 0 AND purch.timestamp > ? AND purch.timestamp < ? AND prices.valid_from = (SELECT valid_from FROM prices WHERE product = purch.product AND valid_from < purch.timestamp ORDER BY valid_from DESC LIMIT 1) GROUP BY name ORDER BY price;";
@@ -121,7 +121,7 @@ public class DataBase : Object {
queries["total_sales"] = "SELECT SUM(price) FROM invoice WHERE user >= 0 AND timestamp >= ?";
queries["total_profit"] = "SELECT SUM(price - (SELECT price FROM purchaseprices WHERE product = productid)) FROM invoice WHERE user >= 0 AND timestamp >= ?";
queries["user_get_ids"] = "SELECT id FROM users WHERE id > 0";
- queries["user_replace"] = "INSERT OR REPLACE INTO users ('id', 'email', 'firstname', 'lastname', 'gender', 'street', 'plz', 'city', 'pgp', 'hidden', 'disabled', 'sound_theme') VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, (select sound_theme from users where id = ?))";
+ queries["user_replace"] = "INSERT OR REPLACE INTO users ('id', 'email', 'firstname', 'lastname', 'gender', 'street', 'plz', 'city', 'pgp', 'hidden', 'disabled', 'joined_at', 'sound_theme') VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, (select sound_theme from users where id = ?))";
queries["user_auth_create"] = "INSERT OR IGNORE INTO authentication (user) VALUES (?)";
queries["user_disable"] = "UPDATE users SET disabled = ? WHERE id = ?";
queries["last_timestamp"] = "SELECT timestamp FROM sales ORDER BY timestamp DESC LIMIT 1";
@@ -610,6 +610,7 @@ public class DataBase : Object {
result.hidden = statements["userinfo"].column_int(8) == 1;
result.disabled = statements["userinfo"].column_int(9) == 1;
result.soundTheme = statements["userinfo"].column_text(10);
+ result.joined_at = statements["userinfo"].column_int64(11);
} else if(rc == Sqlite.DONE) {
throw new DatabaseError.USER_NOT_FOUND("user not found");
} else {
@@ -872,7 +873,8 @@ public class DataBase : Object {
statements["user_replace"].bind_text(9, u.pgp);
statements["user_replace"].bind_int(10, u.hidden ? 1 : 0);
statements["user_replace"].bind_int(11, u.disabled ? 1 : 0);
- statements["user_replace"].bind_int(12, u.id);
+ statements["user_replace"].bind_int64(12, u.joined_at);
+ statements["user_replace"].bind_int(13, u.id);
int rc = statements["user_replace"].step();
if(rc != Sqlite.DONE)