コード例 #1
0
ファイル: sitecontent.py プロジェクト: umeboshi2/mslemon
class SiteJSResource(BaseResource):
    dbmodel = SiteJS

    def __init__(self, request):
        super(SiteJSResource, self).__init__(request)
        self.mgr = SiteContentManager(self.db)
        
    
    def collection_get(self):
        q = self.mgr.js_query()
        return dict(data=[o.serialize() for o in q])

    def collection_post(self):
        name = self.request.json['name']
        content = self.request.json['content']
        t = self.mgr.add_js(name, content)
        data = t.serialize()
        data['result'] = 'success'
        return data

    def put(self):
        content = self.request.json['content']
        id = int(self.request.matchdict['id'])
        t = self.mgr.update_js(id, content)
        data = dict(obj=t.serialize(), result='success')
        return data

    def delete(self):
        id = int(self.request.matchdict['id'])
        db = self.request.db
        with transaction.manager:
            t = self.mgr.js_query().get(id)
            if t is not None:
                db.delete(t)
        return dict(result='success')
コード例 #2
0
ファイル: sitecontent.py プロジェクト: umeboshi2/mslemon
class SitePathJSResource(BaseResource):
    dbmodel = SitePathJS

    def __init__(self, request):
        super(SitePathJSResource, self).__init__(request)
        self.mgr = SiteContentManager(self.db)

    def collection_get(self):
        path_id = int(self.request.matchdict['path_id'])
        jslist = self.mgr.get_js_for_path(path_id)
        jslist = [o.serialize() for o in jslist]
        return dict(data=jslist, result='success')

    def collection_post(self):
        js_id = self.request.json['id']
        path_id = int(self.request.matchdict['path_id'])
        obj = self.mgr.attach_js_to_path(path_id, js_id)
        return dict(obj=obj.serialize(), result='success')

    def delete(self):
        path_id = int(self.request.matchdict['path_id'])
        js_id = int(self.request.matchdict['id'])
        self.mgr.detach_js(path_id, js_id)

    def get(self):
        js_id = int(self.request.matchdict['id'])
        js = self.mgr.js_query().get(js_id)
        return dict(data=js.serialize(), result='success')
コード例 #3
0
ファイル: sitecontent.py プロジェクト: umeboshi2/mslemon
class SitePathResource(BaseResource):
    dbmodel = SitePath

    def __init__(self, request):
        super(SitePathResource, self).__init__(request)
        self.mgr = SiteContentManager(self.db)
        
    
    def collection_get(self):
        q = self.mgr.path_query()
        return dict(data=[o.serialize() for o in q])

    def collection_post(self):
        name = self.request.json['name']
        obj = self.mgr.add_sitepath(name)
        data = dict(obj=obj.serialize(), result='success')
        return data

    def delete(self):
        # FIXME: THIS NEEDS TO BE IN MANAGER 
        id = int(self.request.matchdict['id'])
        db = self.request.db
        with transaction.manager:
            t = self.mgr.path_query().get(id)
            if t is not None:
                db.delete(t)
        return dict(result='success')
コード例 #4
0
ファイル: sitecontent.py プロジェクト: umeboshi2/mslemon
 def __init__(self, request):
     super(SitePathJSResource, self).__init__(request)
     self.mgr = SiteContentManager(self.db)