[cvs-annodex] commit (/annodex): cmmlwiki/trunk/cmmlwiki/handler.py
conrad
nobody at lists.annodex.net
Fri Dec 23 12:04:50 EST 2005
Update of /annodex (new revision 1731)
Modified files:
cmmlwiki/trunk/cmmlwiki/handler.py
Log Message:
delete metas attached to a clip when deleting an individual clip
Modified: cmmlwiki/trunk/cmmlwiki/handler.py
===================================================================
--- cmmlwiki/trunk/cmmlwiki/handler.py 2005-12-23 00:34:14 UTC (rev 1730)
+++ cmmlwiki/trunk/cmmlwiki/handler.py 2005-12-23 01:04:48 UTC (rev 1731)
@@ -355,16 +355,33 @@
location ('%s?action=edit&ixc=%s' % (iname2edit (self.iname), values['ixc']))
def delete_clip (self):
- values = {}
- values['ixc'] = self.form['ixc'].value
+ vals = {}
+ vals['ixc'] = self.form['ixc'].value
env = Environment()
db = env.db_filename()
con = sqlite.connect(db, encoding='utf-8', autocommit=1)
cur = con.cursor()
- sql = 'DELETE FROM clips WHERE ixc="%(ixc)s"' % values
+
+ # Delete metas of clips
+ sql = """DELETE FROM metas
+ WHERE ixm IN (
+ SELECT metas.ixm FROM metas,clip_metas
+ WHERE clip_metas.ixm=metas.ixm
+ AND clip_metas.ixc="%(ixc)s"
+ )
+ """ % vals
+ cur.execute (sql)
+
+ sql = """DELETE FROM clip_metas
+ WHERE ixc="%(ixc)s"
+ """ % vals
+ cur.execute (sql)
+
+ sql = 'DELETE FROM clips WHERE ixc="%(ixc)s"' % vals
cur.execute(sql)
- sql = 'DELETE FROM item_clips WHERE ixc="%(ixc)s"' % values
+
+ sql = 'DELETE FROM item_clips WHERE ixc="%(ixc)s"' % vals
cur.execute(sql)
self.toc()
--
conrad
More information about the cvs-annodex
mailing list