Commit 2202f042 by aa.gusti

penambahan routes

1 parent 37c7afb0
......@@ -3,14 +3,12 @@ import importlib
import inspect
import locale
import logging
from sqlalchemy import or_
import re
import urllib
from .routes import routes
# from opensipkd.tools.captcha import get_captcha_url
try:
from urllib import (urlencode, quote, quote_plus, )
except ImportError:
......@@ -24,13 +22,13 @@ from pyramid.renderers import JSON
from pyramid_mailer import mailer_factory_from_settings
import datetime
import decimal
from sqlalchemy import engine_from_config, or_
from sqlalchemy import engine_from_config
from .security import (
group_finder, get_user, MySecurityPolicy,)
get_user, MySecurityPolicy,)
from pyramid.csrf import get_csrf_token
from opensipkd.models import (
DBSession, Base, Parameter, init_model,)
# Route,
DBSession, Base, Parameter, init_model, Route,)
from opensipkd.tools import (
DefaultTimeZone, money, should_int, thousand, as_timezone, split,
get_settings, dmy, dmyhms,)
......@@ -444,36 +442,43 @@ def get_home(request):
return request.route_url('home')[:-1]
# def _set_routes1(config, app_id):
# 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"):
# 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_routes1(config, app_id):
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"):
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):
if app_id and type(app_id) == str:
return _set_routes2(config, app_id)
else:
return _set_routes1(config, app_id)
def _add_route(config, route):
......@@ -553,13 +558,6 @@ def _add_view_config(config, view_name, route):
# config.scan('.')
# def set_routes(config, app_id=None):
# if app_id and type(app_id) == str:
# return _set_routes2(config, app_id)
# else:
# return _set_routes1(config, app_id)
def get_route_names(rows):
return [r.kode for r in rows if not r.is_menu]
......@@ -724,6 +722,10 @@ def get_route_file(filename):
return open(fullpath)
def routes_by_array(config, routs):
BaseApp().route_from_list(config, routs)
class BaseApp():
def __init__(self):
self.menus = []
......@@ -768,8 +770,8 @@ class BaseApp():
route["is_menu"] = route.get("is_menu", 0)
url_path = route.get("path", None)
if not url_path:
# pjdl /pjdl pjdl-add /pjdl/add
url_path = "/"+route["kode"].replace("-", "/")
route["path"] = url_path
children = route.get("children", [])
......@@ -795,4 +797,4 @@ class BaseApp():
return self.menus
BASE_CLASS = BaseApp()
\ No newline at end of file
BASE_CLASS = BaseApp()
# kode, path, nama
routes = [
("user-area", "/user/area", "User Area"),
("user-area-add", "/user/area/add", "Tambah User Area"),
......@@ -5,12 +6,16 @@ routes = [
("user-area-delete", "/user/area/{id}/delete", "Hapus User Area"),
("user-area-view", "/user/area/{id}/view", "Lihat User Area"),
("user-area-act", "/user/area/{act}/act", "Action User Area"),
("user-area-upload", "/user/area/upload", "Upload User Area"),
("user-area-upload", "/user/area/upload", "Upload User Area"),
("user-departemen", "/user/departemen", "User Departemen"),
("user-departemen-add", "/user/departemen/add", "Tambah User Departemen"),
("user-departemen-edit", "/user/departemen/{id}/edit", "Edit User Departemen"),
("user-departemen-delete", "/user/departemen/{id}/delete", "Hapus User Departemen"),
("user-departemen-view", "/user/departemen/{id}/view", "Lihat User Departemen"),
("user-departemen-act", "/user/departemen/{act}/act", "Action User Departemen"),
("user-departemen-edit",
"/user/departemen/{id}/edit", "Edit User Departemen"),
("user-departemen-delete",
"/user/departemen/{id}/delete", "Hapus User Departemen"),
("user-departemen-view",
"/user/departemen/{id}/view", "Lihat User Departemen"),
("user-departemen-act",
"/user/departemen/{act}/act", "Action User Departemen"),
("user-departemen-upload", "/user/departemen/upload", "Upload User Departemen"),
]
\ No newline at end of file
]
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!