Add route configuration functions for compatibility; refactor permission model class

1 parent ce26f872
...@@ -21,6 +21,7 @@ from .models.base import DBSession ...@@ -21,6 +21,7 @@ from .models.base import DBSession
from .models.handlers import LogDBSession from .models.handlers import LogDBSession
from .models.meta import Base from .models.meta import Base
from .models.users import init_model from .models.users import init_model
from .models import Route
# from deform import ZPTRendererFactory, Form # from deform import ZPTRendererFactory, Form
# from deform.widget import default_resource_registry # from deform.widget import default_resource_registry
...@@ -676,3 +677,48 @@ def get_params_(params, alternate=None, settings=None): ...@@ -676,3 +677,48 @@ def get_params_(params, alternate=None, settings=None):
# else: # else:
# return home + url # return home + url
# return url # return url
#Depreciated modules
def _set_routes1(config, app_id):
"""Compatibility
"""
q = DBSession.query(Route).filter(Route.path != None,
Route.module == None, Route.status == 1)
if not app_id:
q.filter(or_(Route.app_id == 0, None == Route.app_id))
else:
q.filter(Route.app_id == app_id)
for route in q:
if route.type == 0:
config.add_route(route.kode, route.path)
if route.nama:
titles[route.kode] = route.nama
elif route.type == 1:
config.add_jsonrpc_endpoint(route.kode, route.path,
default_renderer="json_rpc")
def _set_routes2(config, module="base"):
"""Compatibility
"""
q = DBSession.query(Route).filter(
Route.module == module, Route.status == 1)
for route in q:
if route.type == 0:
config.add_route(route.kode, route.path)
if route.nama:
titles[route.kode] = route.nama
elif route.type == 1:
config.add_jsonrpc_endpoint(
route.kode, route.path, default_renderer="json_rpc")
return q
def set_routes(config, app_id=None):
"""Compatibility
"""
if app_id and type(app_id) == str:
return _set_routes2(config, app_id)
else:
return _set_routes1(config, app_id)
...@@ -15,7 +15,6 @@ class MySession(Session): ...@@ -15,7 +15,6 @@ class MySession(Session):
def execute(self, clause, params=None, mapper=None, **kw): def execute(self, clause, params=None, mapper=None, **kw):
return Session.execute(self, clause, params) # , mapper return Session.execute(self, clause, params) # , mapper
session_factory = sessionmaker(class_=MySession) session_factory = sessionmaker(class_=MySession)
DBSession = scoped_session(session_factory) DBSession = scoped_session(session_factory)
register(DBSession) register(DBSession)
......
...@@ -241,7 +241,7 @@ class ExternalIdentity(Base, _ExternalIdentity, CommonModel): ...@@ -241,7 +241,7 @@ class ExternalIdentity(Base, _ExternalIdentity, CommonModel):
# groups = relationship("Group", backref=backref('grouppermission')) # groups = relationship("Group", backref=backref('grouppermission'))
class _Permission(CommonModel): class _Permission(DefaultModel):
__tablename__ = 'permissions' __tablename__ = 'permissions'
__table_args__ = (TABLE_ARGS) __table_args__ = (TABLE_ARGS)
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
......
...@@ -1100,7 +1100,8 @@ class BaseView(object): ...@@ -1100,7 +1100,8 @@ class BaseView(object):
resources = form.get_widget_resources() resources = form.get_widget_resources()
form.set_appstruct(self.get_values(row)) form.set_appstruct(self.get_values(row))
kwargs["readonly"] = True kwargs["readonly"] = True
return self.returned_form(form, table, **kwargs) kwargs["table"] = table
return self.returned_form(form, **kwargs)
def query_id(self, id=None): def query_id(self, id=None):
id=id or self.req.matchdict['id'] id=id or self.req.matchdict['id']
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!