lib/tsks/storage.rb in tsks-0.0.12 vs lib/tsks/storage.rb in tsks-0.0.13
- old
+ new
@@ -5,11 +5,11 @@
class Storage
def self.init
storage = get_storage_instance
storage.execute <<-SQL
CREATE TABLE tsks (
- id VARCHAR PRIMARY KEY UNIQUE NOT NULL,
+ id VARCHAR PRIMARY KEY UNIQUE,
user_id INTEGER DEFAULT 1,
tsk VARCHAR NOT NULL,
status VARCHAR DEFAULT todo,
context VARCHAR DEFAULT inbox,
created_at VARCHAR NOT NULL,
@@ -17,31 +17,30 @@
)
SQL
storage.execute <<-SQL
CREATE TABLE removed_tsks (
- tsk_uuid VARCHAR UNIQUE NOT NULL
+ tsk_id VARCHAR UNIQUE NOT NULL
)
SQL
end
def self.insert tsk, ctx=nil
storage = get_storage_instance
- now = Time.now.strftime "%F %T"
- uuid = UUID.new.generate
+ now = Time.now.strftime("%Y-%m-%dT%H:%M:%S.%LZ")
if ctx
storage.execute("
- INSERT INTO tsks (id, tsk, status, context, created_at, updated_at)
- VALUES (?, ?, ?, ?, ?, ?)",
- [uuid, tsk, 'todo', ctx, now, now]
+ INSERT INTO tsks (tsk, status, context, created_at, updated_at)
+ VALUES (?, ?, ?, ?, ?)",
+ [tsk, 'todo', ctx, now, now]
)
else
storage.execute("
- INSERT INTO tsks (id, tsk, status, created_at, updated_at)
- VALUES (?, ?, ?, ?, ?)",
- [uuid, tsk, 'todo', now, now]
+ INSERT INTO tsks (tsk, status, created_at, updated_at)
+ VALUES (?, ?, ?, ?)",
+ [tsk, 'todo', now, now]
)
end
end
def self.insert_many tsks
@@ -99,10 +98,21 @@
end
tsks = structure_tsks raw_tsks
end
+ # TODO: write tests for Storage.select_local_id
+ def self.select_local_id params
+ storage = get_storage_instance
+
+ tsk = storage.execute(
+ "SELECT rowid, * FROM tsks WHERE #{params.keys.first}=? AND #{params.keys[1]}=? AND #{params.keys.last}=?",
+ params.values.first, params.values[1], params.values.last)
+
+ tsk_local_id = tsk[0][0]
+ end
+
def self.select_all local_id=true
storage = get_storage_instance
raw_tsks = local_id ?
storage.execute("SELECT rowid, * FROM tsks") :
storage.execute("SELECT * FROM tsks")
@@ -115,28 +125,26 @@
tsks = structure_tsks raw_tsks
end
def self.delete local_id
storage = get_storage_instance
- removed_tsks = storage
- .execute("SELECT * FROM tsks WHERE rowid=?", local_id)
+ removed_tsks = storage.execute("SELECT * FROM tsks WHERE rowid=?", local_id)
if removed_tsks.empty?
return false
end
- storage
- .execute("INSERT INTO removed_tsks (tsk_uuid) VALUES (?)", removed_tsks[0][0])
+ storage.execute("INSERT INTO removed_tsks (tsk_id) VALUES (?)", removed_tsks[0][0])
storage.execute("DELETE FROM tsks WHERE rowid=?", local_id)
end
def self.select_removed_uuids
storage = get_storage_instance
result = storage.execute("SELECT * FROM removed_tsks")
- tsk_uuids = []
+ tsk_ids = []
for item in result
- tsk_uuids.append item[0]
+ tsk_ids.append item[0]
end
- return tsk_uuids
+ return tsk_ids
end
def self.delete_removed_uuids
storage = get_storage_instance
storage.execute("DELETE FROM removed_tsks")