def delete_plugin(request):
"""
Delete A plugin
"""
plugin_id = request.matchdict['plugin_id']
user = request.user
query = request.db_session.query(LedPlugin).filter(LedPlugin.id == plugin_id)
plugin = query.first()
if plugin is None:
raise exc.HTTPBadRequest('No such plugin')
if user != plugin.user and not user.admin:
raise exc.HTTPForbidden("You don't have access to do that")
request.db_session.query(LedSchedule).filter(LedSchedule.led_plugin_id == plugin_id).delete()
request.db_session.query(LedPluginProposed).filter(LedPluginProposed.led_plugin_id == plugin_id).delete()
query.delete()
log(request, 'Deleted plugin ' + plugin.name)
return exc.HTTPFound(location='/plugin')
评论列表
文章目录