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 8a3a0a6f
authored
Feb 06, 2025
by
aa.gusti
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
perbaikan idcard folder
1 parent
a6536b88
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
72 additions
and
72 deletions
opensipkd/base/__init__.py
opensipkd/base/tools/buttons.py
opensipkd/base/tools/captcha.py
opensipkd/base/tools/pbb.py
opensipkd/base/tools/validation.py
opensipkd/base/views/common.py
opensipkd/base/views/register.py
opensipkd/base/__init__.py
View file @
8a3a0a6
import
importlib
import
importlib
import
inspect
import
locale
import
locale
import
logging
import
logging
import
re
import
re
...
@@ -22,27 +23,13 @@ import datetime
...
@@ -22,27 +23,13 @@ import datetime
import
decimal
import
decimal
from
sqlalchemy
import
engine_from_config
,
or_
from
sqlalchemy
import
engine_from_config
,
or_
from
.security
import
(
from
.security
import
(
group_finder
,
group_finder
,
get_user
,
MySecurityPolicy
,)
get_user
,
MySecurityPolicy
,
)
from
pyramid.csrf
import
get_csrf_token
from
pyramid.csrf
import
get_csrf_token
from
opensipkd.models
import
(
from
opensipkd.models
import
(
DBSession
,
DBSession
,
Base
,
Route
,
Parameter
,
init_model
,)
Base
,
init_model
,
Route
,
Parameter
)
from
opensipkd.tools
import
(
from
opensipkd.tools
import
(
DefaultTimeZone
,
DefaultTimeZone
,
money
,
should_int
,
thousand
,
as_timezone
,
split
,
money
,
get_settings
,
dmy
,
dmyhms
,)
should_int
,
thousand
,
as_timezone
,
split
,
get_settings
,
dmy
,
dmyhms
,
)
from
deform
import
ZPTRendererFactory
,
Form
from
deform
import
ZPTRendererFactory
,
Form
from
pkg_resources
import
resource_filename
from
pkg_resources
import
resource_filename
...
@@ -51,7 +38,7 @@ import os
...
@@ -51,7 +38,7 @@ import os
from
opensipkd.models.handlers
import
LogDBSession
from
opensipkd.models.handlers
import
LogDBSession
lo
g
=
logging
.
getLogger
(
__name__
)
_loggin
g
=
logging
.
getLogger
(
__name__
)
# version 2.0.0 digunakan untuk change default template
# version 2.0.0 digunakan untuk change default template
deform_templates
=
resource_filename
(
'deform'
,
'templates'
)
deform_templates
=
resource_filename
(
'deform'
,
'templates'
)
...
@@ -62,9 +49,7 @@ renderer = ZPTRendererFactory(search_path)
...
@@ -62,9 +49,7 @@ renderer = ZPTRendererFactory(search_path)
Form
.
set_zpt_renderer
(
search_path
)
Form
.
set_zpt_renderer
(
search_path
)
main_title
=
'openSIPKD'
main_title
=
'openSIPKD'
titles
=
{}
titles
=
{}
static_route
=
[
static_route
=
[]
]
# http://stackoverflow.com/questions/9845669/pyramid-inverse-to-add-notfound-viewappend-slash-true
# http://stackoverflow.com/questions/9845669/pyramid-inverse-to-add-notfound-viewappend-slash-true
...
@@ -106,7 +91,7 @@ def add_cors_headers_response_callback(event):
...
@@ -106,7 +91,7 @@ def add_cors_headers_response_callback(event):
'Access-Control-Allow-Headers'
:
'Origin, Content-Type, Accept, Authorization'
,
'Access-Control-Allow-Headers'
:
'Origin, Content-Type, Accept, Authorization'
,
'Access-Control-Max-Age'
:
'1728000'
,
'Access-Control-Max-Age'
:
'1728000'
,
}
}
#
lo
g.info(f"{origin} {request.is_xhr}")
#
_loggin
g.info(f"{origin} {request.is_xhr}")
# response.headers.update(
# response.headers.update(
# {'Access-Control-Allow-Credential': 'true',
# {'Access-Control-Allow-Credential': 'true',
# 'Access-Control-Allow-Origin': "*"}
# 'Access-Control-Allow-Origin': "*"}
...
@@ -118,7 +103,7 @@ def add_cors_headers_response_callback(event):
...
@@ -118,7 +103,7 @@ def add_cors_headers_response_callback(event):
if
'Access-Control-Allow-Credentials'
not
in
headers
:
if
'Access-Control-Allow-Credentials'
not
in
headers
:
headers
[
'Access-Control-Allow-Credentials'
]
=
'true'
headers
[
'Access-Control-Allow-Credentials'
]
=
'true'
#
lo
g.info(f"Headers: {headers}")
#
_loggin
g.info(f"Headers: {headers}")
response
.
headers
.
update
(
headers
)
response
.
headers
.
update
(
headers
)
event
.
request
.
add_response_callback
(
cors_headers
)
event
.
request
.
add_response_callback
(
cors_headers
)
...
@@ -141,8 +126,11 @@ def has_modules_(module_name, context=None):
...
@@ -141,8 +126,11 @@ def has_modules_(module_name, context=None):
def
_get_params
(
request
,
params
,
default
=
None
,
settings
=
None
,
context
=
None
):
def
_get_params
(
request
,
params
,
default
=
None
,
settings
=
None
,
context
=
None
):
log
.
debug
(
"_get_params"
)
_logging
.
debug
(
f
"_get_params: {params}, {default}"
)
log
.
debug
(
f
"{params}, {default}"
)
curframe
=
inspect
.
currentframe
()
calframe
=
inspect
.
getouterframes
(
curframe
,
2
)
_logging
.
debug
(
'caller name:'
,
calframe
[
1
][
3
])
return
get_params
(
params
,
default
,
settings
)
return
get_params
(
params
,
default
,
settings
)
...
@@ -182,7 +170,8 @@ def get_params(params, alternate=None, settings=None):
...
@@ -182,7 +170,8 @@ def get_params(params, alternate=None, settings=None):
contoh penggunaan:
contoh penggunaan:
get_params('devel', False)
get_params('devel', False)
"""
"""
log
.
debug
(
"get_params"
)
_logging
.
debug
(
f
"get_params: {params}, {alternate}"
)
if
not
settings
:
if
not
settings
:
settings
=
get_settings
()
settings
=
get_settings
()
result
=
settings
and
params
in
settings
and
\
result
=
settings
and
params
in
settings
and
\
...
@@ -226,15 +215,21 @@ def get_ini_params(request, params=None, alternate=None, settings=None):
...
@@ -226,15 +215,21 @@ def get_ini_params(request, params=None, alternate=None, settings=None):
def
get_id_card_folder
(
ext
=
None
,
settings
=
None
):
def
get_id_card_folder
(
ext
=
None
,
settings
=
None
):
folder
=
get_params
(
"partner_idcard_folder"
,
'/tmp/idcard'
,
settings
=
settings
)
_logging
.
debug
(
'get_id_card_folder'
)
idcard_files
=
get_params
(
"partner_idcard_folder"
,
'/tmp/idcard'
,
settings
=
settings
)
if
ext
:
if
ext
:
if
ext
and
os
.
sep
!=
'/'
:
idcard_files
+=
ext
ext
=
ext
.
replace
(
'/'
,
'
\\
'
)
# if ext and os.sep != '/':
if
not
os
.
path
.
exists
(
folder
+
ext
):
# ext = ext.replace('/', '\\')
os
.
makedirs
(
folder
+
ext
)
log
.
info
(
f
"IDCard Folder: {folder+ext}"
)
if
os
.
sep
!=
'/'
:
return
folder
+
ext
idcard_files
=
idcard_files
.
replace
(
'/'
,
'
\\
'
)
return
folder
if
not
os
.
path
.
exists
(
idcard_files
):
os
.
makedirs
(
idcard_files
)
_logging
.
info
(
f
"IDCard Files: {idcard_files}"
)
return
idcard_files
def
allow_register
(
request
):
def
allow_register
(
request
):
...
@@ -509,8 +504,8 @@ def add_view_config(config, module, view_name):
...
@@ -509,8 +504,8 @@ def add_view_config(config, module, view_name):
params
[
"permission"
]
=
row
.
permission
params
[
"permission"
]
=
row
.
permission
config
.
add_view
(
views
.
Views
,
**
params
)
config
.
add_view
(
views
.
Views
,
**
params
)
except
Exception
as
e
:
except
Exception
as
e
:
lo
g
.
error
(
str
(
e
))
_loggin
g
.
error
(
str
(
e
))
lo
g
.
error
(
dict
(
row
.
__dict__
))
_loggin
g
.
error
(
dict
(
row
.
__dict__
))
config
.
scan
(
'.'
)
config
.
scan
(
'.'
)
...
@@ -527,7 +522,7 @@ def get_route_names(rows):
...
@@ -527,7 +522,7 @@ def get_route_names(rows):
def
get_children
(
rows
):
def
get_children
(
rows
):
lo
g
.
debug
(
f
"Children: {dict(rows.__dict__)}"
)
_loggin
g
.
debug
(
f
"Children: {dict(rows.__dict__)}"
)
return
[
dict
(
return
[
dict
(
order_id
=
r
.
order_id
,
order_id
=
r
.
order_id
,
id
=
r
.
id
,
id
=
r
.
id
,
...
@@ -547,7 +542,7 @@ def get_module_menus(module):
...
@@ -547,7 +542,7 @@ def get_module_menus(module):
Route
.
parent_id
==
None
)
Route
.
parent_id
==
None
)
result
=
get_children
(
query
.
order_by
(
Route
.
order_id
))
result
=
get_children
(
query
.
order_by
(
Route
.
order_id
))
#
lo
g.debug(result)
#
_loggin
g.debug(result)
return
result
return
result
...
@@ -604,36 +599,42 @@ def get_config(settings):
...
@@ -604,36 +599,42 @@ def get_config(settings):
# config.add_translation_dirs('opensipkd.base:locale/')
# config.add_translation_dirs('opensipkd.base:locale/')
partner_files
=
get_params
(
"partner_files"
,
settings
=
settings
,
alternate
=
"/tmp/partner"
)
captcha_files
=
get_params
(
'captcha_files'
,
settings
=
settings
,
alternate
=
"/tmp/captcha"
)
if
os
.
sep
!=
'/'
:
captcha_files
=
captcha_files
.
replace
(
'/'
,
'
\\
'
)
partner_files
=
partner_files
.
replace
(
'/'
,
'
\\
'
)
_logging
.
info
(
f
"Captcha Files: {captcha_files}"
)
_logging
.
info
(
f
"Partner Files: {partner_files}"
)
if
not
os
.
path
.
exists
(
captcha_files
):
os
.
makedirs
(
captcha_files
)
if
not
os
.
path
.
exists
(
partner_files
):
os
.
makedirs
(
captcha_files
)
config
.
add_static_view
(
'static'
,
'opensipkd.base:static'
,
config
.
add_static_view
(
'static'
,
'opensipkd.base:static'
,
cache_max_age
=
3600
)
cache_max_age
=
3600
)
config
.
add_static_view
(
'deform_static'
,
'deform:static'
)
config
.
add_static_view
(
partner_idcard_url
,
config
.
add_static_view
(
partner_idcard_url
,
get_id_card_folder
(
"/"
,
settings
=
settings
),
get_id_card_folder
(
"/"
,
settings
=
settings
),
cache_max_age
=
3600
)
cache_max_age
=
3600
)
config
.
add_static_view
(
'deform_static'
,
'deform:static'
)
captcha_files
=
get_params
(
'captcha_files'
,
settings
=
settings
,
alternate
=
"/tmp/captcha"
)
if
not
os
.
path
.
exists
(
captcha_files
):
os
.
makedirs
(
captcha_files
)
config
.
add_static_view
(
'captcha'
,
captcha_files
)
config
.
add_static_view
(
'captcha'
,
captcha_files
)
config
.
add_static_view
(
'partner/files'
,
config
.
add_static_view
(
'partner/files'
,
partner_files
)
get_params
(
"partner_files"
,
settings
=
settings
,
alternate
=
"/tmp/partner"
))
config
.
add_renderer
(
'csv'
,
'opensipkd.tools.CSVRenderer'
)
config
.
add_renderer
(
'csv'
,
'opensipkd.tools.CSVRenderer'
)
config
.
add_renderer
(
'json'
,
json_renderer
())
config
.
add_renderer
(
'json'
,
json_renderer
())
config
.
add_renderer
(
'json_rpc'
,
json_rpc
())
config
.
add_renderer
(
'json_rpc'
,
json_rpc
())
config
.
registry
[
'mailer'
]
=
mailer_factory_from_settings
(
settings
)
set_routes
(
config
)
set_routes
(
config
)
routes_by_array
(
config
)
routes_by_array
(
config
)
config
.
registry
[
'mailer'
]
=
mailer_factory_from_settings
(
settings
)
config
.
scan
()
config
.
scan
()
# for m in modules:
_logging
.
debug
(
config
)
# config.scan(m)
return
config
return
config
...
...
opensipkd/base/tools/buttons.py
View file @
8a3a0a6
from
..
import
log
from
opensipkd.tools.buttons
import
*
from
opensipkd.tools.buttons
import
*
import
logging
log
=
logging
.
getLogger
(
__name__
)
log
.
warning
(
"opensipkd.base.buttons depreciated use opensipkd.tools.buttons"
)
log
.
warning
(
"opensipkd.base.buttons depreciated use opensipkd.tools.buttons"
)
opensipkd/base/tools/captcha.py
View file @
8a3a0a6
from
..
import
log
from
opensipkd.tools.captcha
import
*
from
opensipkd.tools.captcha
import
*
log
=
logging
.
getLogger
(
__name__
)
log
.
warning
(
"opensipkd.base.captcha depreciated use opensipkd.tools.captcha"
)
log
.
warning
(
"opensipkd.base.captcha depreciated use opensipkd.tools.captcha"
)
# from ...tools.captcha import *
\ No newline at end of file
\ No newline at end of file
# from ...tools.captcha import *
opensipkd/base/tools/pbb.py
View file @
8a3a0a6
from
opensipkd.base
import
lo
g
import
loggin
g
from
opensipkd.tools.pbb
import
*
from
opensipkd.tools.pbb
import
*
log
=
logging
.
getLogger
(
__name__
)
log
.
warning
(
"Opensipkd.base.tools.pbb depreciated use opensipkd.tools.pbb"
)
log
.
warning
(
"Opensipkd.base.tools.pbb depreciated use opensipkd.tools.pbb"
)
opensipkd/base/tools/validation.py
View file @
8a3a0a6
import
logging
from
opensipkd.tools.validation
import
*
from
opensipkd.tools.report
import
*
from
opensipkd.tools.report
import
*
from
opensipkd.base
import
log
log
=
logging
.
getLogger
(
__name__
)
log
.
warning
(
"Opensipkd.base.tools.pbb depreciated use opensipkd.tools.pbb"
)
log
.
warning
(
"Opensipkd.base.tools.pbb depreciated use opensipkd.tools.pbb"
)
from
opensipkd.tools.validation
import
*
\ No newline at end of file
\ No newline at end of file
opensipkd/base/views/common.py
View file @
8a3a0a6
import
logging
from
datatables.clean_regex
import
clean_regex
from
datatables.clean_regex
import
clean_regex
from
datatables.search_methods
import
SEARCH_METHODS
from
datatables.search_methods
import
SEARCH_METHODS
from
sqlalchemy
import
(
from
sqlalchemy
import
(
String
,
Text
,
or_
,)
String
,
Text
,
or_
,
)
from
sqlalchemy.dialects
import
oracle
,
mssql
from
sqlalchemy.dialects
import
oracle
,
mssql
from
datatables
import
DataTables
as
BaseDataTables
,
ColumnDT
from
datatables
import
DataTables
as
BaseDataTables
,
ColumnDT
from
opensipkd.base
import
log
log
=
logging
.
getLogger
(
__name__
)
log
.
warning
(
"opensipkd.base.captcha depreciated use opensipkd.tools.captcha"
)
class
DataTables
(
BaseDataTables
):
class
DataTables
(
BaseDataTables
):
...
@@ -99,4 +98,4 @@ class DataTables(BaseDataTables):
...
@@ -99,4 +98,4 @@ class DataTables(BaseDataTables):
# # log.info(str(sort_expressions))
# # log.info(str(sort_expressions))
# for e in sort_expressions:
# for e in sort_expressions:
# print(e)
# print(e)
# self.sort_expressions = sort_expressions
\ No newline at end of file
\ No newline at end of file
# self.sort_expressions = sort_expressions
opensipkd/base/views/register.py
View file @
8a3a0a6
...
@@ -280,10 +280,11 @@ class Registrasi(BaseView):
...
@@ -280,10 +280,11 @@ class Registrasi(BaseView):
if
not
user
or
not
UserService
.
check_password
(
if
not
user
or
not
UserService
.
check_password
(
user
,
value
[
'password'
]):
user
,
value
[
'password'
]):
err_login
()
err_login
()
if
"idcard"
in
value
and
value
[
"idcard"
]:
if
"idcard"
in
value
and
value
[
"idcard"
]:
idcard
=
value
[
"idcard"
]
idcard
=
value
[
"idcard"
]
path
=
get_id_card_folder
()
if
"fp"
in
idcard
and
idcard
[
"fp"
]
and
idcard
[
"fp"
]
!=
b
''
:
if
"fp"
in
idcard
and
idcard
[
"fp"
]
and
idcard
[
"fp"
]
!=
b
''
:
path
=
get_id_card_folder
()
_logging
.
debug
(
idcard
[
"fp"
])
_logging
.
debug
(
idcard
[
"fp"
])
upload
=
Upload
(
path
)
upload
=
Upload
(
path
)
value
[
"idcard"
]
=
upload
.
save_fp
(
idcard
)
value
[
"idcard"
]
=
upload
.
save_fp
(
idcard
)
...
@@ -386,7 +387,6 @@ class Registrasi(BaseView):
...
@@ -386,7 +387,6 @@ class Registrasi(BaseView):
row
=
super
()
.
save_request
(
values
,
row
)
row
=
super
()
.
save_request
(
values
,
row
)
if
not
self
.
req
.
user
:
# User Baru
if
not
self
.
req
.
user
:
# User Baru
user
=
User
()
user
=
User
()
user
.
email
=
row
.
email
user
.
email
=
row
.
email
user
.
user_name
=
row
.
email
user
.
user_name
=
row
.
email
...
@@ -434,9 +434,6 @@ class Registrasi(BaseView):
...
@@ -434,9 +434,6 @@ class Registrasi(BaseView):
form
.
set_appstruct
(
e
.
cstruct
)
form
.
set_appstruct
(
e
.
cstruct
)
return
self
.
returned_form
(
form
,
table
,
**
kwargs
)
return
self
.
returned_form
(
form
,
table
,
**
kwargs
)
# return dict(form=form.render(e.cstruct),
# table=table and table.render() or None,
# scripts=self.form_scripts, css=resources["css"],
# js=resources["js"])
# js=resources["js"])
values
=
dict
(
c
)
values
=
dict
(
c
)
row
=
self
.
save_request
(
values
)
row
=
self
.
save_request
(
values
)
...
...
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