form = cgi.FieldStorage()
print 'Content-type: text/plain\n'
action = form.getvalue('action')
if action == 'add':
    if 'item_id' in form and 'cat_id' in form:
        itemid = int(form.getvalue('item_id'))
        item = db.get_item(itemid)
        catid = int(form.getvalue('cat_id'))
        cat = db.get_category(catid)
        if db.is_category_item(item,cat):
            raise Exception ('%s is already a category for %s' % (cat, item))
        else:
            db.add_category_item(item,cat)
            new_cat_item_id = db.get_category_item(item.get_id(),cat.get_id()).get_id()
            print '%d,%s,%s' % (new_cat_item_id, db.get_category_info_page_link(catid),cat)
    else:
        raise Exception ('need item_id and cat_id, given: %s ' % form.keys())
elif action == 'remove':
    if 'cat_item_id' in form:
        catitemid = int(form.getvalue('cat_item_id'))
        db.remove_category_item_byid(catitemid)
    elif 'item_id' in form and 'cat_id' in form:
        itemid = int(form.getvalue('item_id'))
        item = db.get_item(itemid)
        catid = int(form.getvalue('cat_id'))
        cat = db.get_category(catid)
        db.remove_category_item(item,cat)
    else:
        raise Exception ('no cat_item_id given')
elif action != None:
Beispiel #2
0
def print_categories(item):
    print '<table id="categories">'
    print '''<thead>
          <th>Category</th>
          <th>Remove</th>
          </thead>'''
    for category_item in item.get_category_items():
        category = db.get_category(category_item.get_cat_id())
        print '''<tr id="%d_category_tr"><td><a href="%s">%s</a></td><td><button type="button" onClick="removeCategory(%d)"> remove </button> </td>''' % (category_item.get_id(),db.get_category_info_page_link(category.get_id()),category.get_name(),category_item.get_id())
    print '''</table>'''
    print '<select id="new_category">'
    for cat in db.get_categories():
        print '''<option value="%d"> %s </option>''' % (cat.get_id(), cat)
    print '</select>'
    print '''<button type="button" onClick="addCategory()"> Add Category </button>'''
    print '<br />'*2