Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
irul
/
opensipkd-base
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit ce3b6b5e
authored
Aug 04, 2025
by
aa.gustiana@gmail.com
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Penambahan parsing menu config
1 parent
c45f27d9
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
25 additions
and
26 deletions
opensipkd/base/__init__.py
opensipkd/base/views/templates/base5.pt
opensipkd/base/__init__.py
View file @
ce3b6b5
...
...
@@ -63,6 +63,10 @@ def get_params(params, alternate=None, settings=None):
return
result
and
result
.
strip
()
or
alternate
def
has_modules
(
module_name
,
context
=
None
):
modules
=
get_params
(
"pyramid.includes"
)
.
split
(
"
\n
"
)
return
module_name
in
modules
def
add_cors_headers_response_callback
(
event
):
def
cors_headers
(
request
,
response
):
origin
=
request
.
headers
.
get
(
"Origin"
,
None
)
...
...
@@ -122,7 +126,7 @@ def get_menus(request):
result
=
{}
for
menu
in
menus
:
if
menu
.
find
(
','
)
>
-
1
:
key
,
val
=
menu
.
strip
()
.
split
(
','
)
key
,
val
=
menu
.
strip
()
.
split
(
','
,
2
)
key
=
key
.
strip
()
.
strip
(
'/'
)
val
=
re
.
sub
(
'[//-]'
,
' '
,
val
)
...
...
@@ -130,6 +134,11 @@ def get_menus(request):
key
,
val
=
menu
.
strip
()
.
split
(
':'
)
key
=
key
.
strip
()
.
strip
(
'/'
)
val
=
re
.
sub
(
'[//-]'
,
' '
,
val
)
elif
menu
.
find
(
'|'
)
>
-
1
:
key
,
val
=
menu
.
strip
()
.
split
(
'|'
)
key
=
request
.
route_url
(
key
.
strip
())
val
=
val
.
strip
()
else
:
key
=
menu
.
strip
()
val
=
key
.
replace
(
'/'
,
'-'
)
...
...
@@ -246,7 +255,7 @@ def get_config(settings):
# config.add_request_method(get_address2, 'address2', reify=True)
# config.add_request_method(get_modules, 'modules', reify=True)
# config.add_request_method(has_modules_
, 'has_modules', reify=True)
config
.
add_request_method
(
has_modules
,
'has_modules'
,
reify
=
True
)
# config.add_request_method(thousand, 'thousand', reify=True)
# config.add_request_method(is_devel, 'devel', reify=True)
config
.
add_request_method
(
google_signin_client_id
,
...
...
@@ -395,7 +404,6 @@ def _add_view_config(config, paket, route):
class
BaseApp
():
def
__init__
(
self
):
self
.
menus
=
[]
self
.
partner_doc
=
""
self
.
temp_files
=
""
self
.
allow_register
=
0
...
...
@@ -593,8 +601,8 @@ def has_permission_(request, perm_names, context=None):
def
add_global
(
event
):
event
[
'has_permission'
]
=
has_permission_
event
[
'get_base_menus'
]
=
BASE_CLASS
.
get_menus
# event['has_modules'] = has_module
s_
event
[
'has_modules'
]
=
has_modules
event
[
'get_params'
]
=
get_param
s_
# event['urlencode'] = urlencode
# event['quote_plus'] = quote_plus
# event['quote'] = quote
...
...
@@ -605,7 +613,6 @@ def add_global(event):
# event['split'] = split
# event['allow_register'] = allow_register
# event['change_unit'] = change_unit
event
[
'get_params'
]
=
get_params_
# event['get_urls'] = get_urls
# event['get_csrf_token'] = get_csrf_token
# event['get_base_menus'] = BASE_CLASS.get_menus
...
...
opensipkd/base/views/templates/base5.pt
View file @
ce3b6b5
<!DOCTYPE html>
<html
lang=
"en-us"
tal:define=
"
home request.home;
user_path ['user', 'user-add', 'user-edit', 'user-view', 'user-delete'];
user_area_path ['user-area', 'user-area-add', 'user-area-edit', 'user-area-view', 'user-area-delete'];
user_dep_path ['user-departemen', 'user-departemen-add', 'user-departemen-edit', 'user-departemen-view', 'user-departemen-delete'];
user_ext_path ['user-ext', 'user-ext-view', 'user-ext-delete'];
group_path ['group', 'group-add', 'group-edit', 'group-view', 'group-delete'];
param_path ['parameter', 'parameter-add', 'parameter-edit', 'parameter-view', 'parameter-delete'];
dep_path ['departemen', 'departemen-add', 'departemen-edit', 'departemen-view', 'departemen-delete'];
partner_path ['partner', 'partner-add', 'partner-edit', 'partner-view', 'partner-delete'];
company_path ['company', 'company-add', 'company-edit', 'company-view', 'company-delete'];
part_dep_path ['partner-departemen', 'partner-departemen-add', 'partner-departemen-edit', 'partner-departemen-view', 'partner-departemen-delete'];
jabatan_path ['jabatan', 'jabatan-add', 'jabatan-edit', 'jabatan-view', 'jabatan-delete'];
eselon_path ['eselon', 'eselon-add', 'eselon-edit', 'eselon-view', 'eselon-delete'];
provinsi_path ['provinsi', 'provinsi-add', 'provinsi-edit', 'provinsi-view', 'provinsi-delete'];
dati2_path ['dati2', 'dati2-add', 'dati2-edit', 'dati2-view', 'dati2-delete'];
kecamatan_path ['kecamatan', 'kecamatan-add', 'kecamatan-edit', 'kecamatan-view', 'kecamatan-delete'];
desa_path ['desa', 'desa-add', 'desa-edit', 'desa-view', 'desa-delete'];
route_name route_name|request.matched_route.name;
css css|[];
js js|[];
route_name route_name|request.matched_route.name;
"
>
<head>
...
...
@@ -99,7 +83,7 @@
Module
<i
class=
"fa fa-angle-down"
></i></span>
<ul
tal:condition=
"request.user"
class=
"dropdown-menu"
>
<li
tal:repeat=
"menu request.menus"
>
<a
href=
"${
home}/${
menu}"
>
${request.menus[menu]}
</a>
<a
href=
"${menu}"
>
${request.menus[menu]}
</a>
</li>
</ul>
</div>
...
...
@@ -164,7 +148,6 @@
<ul
metal:define-slot=
"navs"
></ul>
<ul
style=
"margin-top: 0; padding-top: 0;"
>
<li
tal:repeat=
"menu get_base_menus()"
tal:attributes=
"class route_name in menu['route_name'] and 'active'"
>
<a
tal:condition=
"python:not menu['children'] and (not menu['permission'] or has_permission(request, menu['permission']))"
...
...
@@ -203,7 +186,16 @@
</ul>
</li>
</ul>
<ul>
<li>
<a
href=
"#"
><i
class=
"fa fa-lg fa-fw fa-shield"
></i>
<span
class=
"menu-item-parent"
>
Module Lainnya
</span></a>
<ul>
<li
tal:repeat=
"menu request.menus"
>
<a
href=
"${menu}"
>
${request.menus[menu]}
</a>
</li>
</ul>
</li>
</ul>
</nav>
<span
class=
"minifyme"
data-action=
"minifyMenu"
>
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment