1
0
mirror of https://github.com/aquatix/digimarks.git synced 2025-12-06 23:05:10 +01:00

On delete, don't delete from DB but set status to DELETED

This commit is contained in:
2016-07-26 14:17:13 +02:00
parent 7471373ee4
commit 247886cc70

View File

@@ -75,8 +75,6 @@ class Bookmark(db.Model):
title = CharField(default='')
url = CharField()
created_date = DateTimeField(default=datetime.datetime.now)
modified_date = DateTimeField(null=True)
#image = CharField(default='')
url_hash = CharField(default='')
tags = CharField(default='')
@@ -88,6 +86,15 @@ class Bookmark(db.Model):
# Status code: 200 is OK, 404 is not found, for example (showing an error)
http_status = IntegerField(default=200)
created_date = DateTimeField(default=datetime.datetime.now)
modified_date = DateTimeField(null=True)
deleted_date = DateTimeField(null=True)
# Bookmark status; deleting doesn't remove from DB
VISIBLE = 0
DELETED = 1
status = IntegerField(default=VISIBLE)
class Meta:
ordering = (('created_date', 'desc'),)
@@ -321,7 +328,10 @@ def editingbookmark(userkey, urlhash):
@app.route('/<userkey>/<urlhash>/delete', methods=['GET', 'POST'])
def deletingbookmark(userkey, urlhash):
""" Delete the bookmark from form submit by <urlhash>/delete """
Bookmark.delete().where(Bookmark.userkey==userkey, Bookmark.url_hash==urlhash)
query = Bookmark.update(status=Bookmark.DELETED).where(Bookmark.userkey==userkey, Bookmark.url_hash==urlhash)
query.execute()
query = Bookmark.update(deleted_date = datetime.datetime.now()).where(Bookmark.userkey==userkey, Bookmark.url_hash==urlhash)
query.execute()
message = 'Bookmark deleted'
all_tags[userkey] = get_tags_for_user(userkey)
return redirect(url_for('bookmarks', userkey=userkey, message=message))