Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
aa.gusti
/
opensipkd-base
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit de879328
authored
Mar 04, 2023
by
aagusti
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
get urls
1 parent
49766c2f
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
62 additions
and
62 deletions
opensipkd/base/__init__.py
opensipkd/base/views/__init__.py
opensipkd/base/views/base_views.py
opensipkd/base/views/departemen.py
opensipkd/base/views/menus.py
opensipkd/base/views/partner_base.py
opensipkd/base/views/register.py
opensipkd/base/views/upload.py
opensipkd/base/views/user_group.py
opensipkd/base/views/user_login.py
opensipkd/base/__init__.py
View file @
de87932
...
@@ -148,7 +148,7 @@ def add_global(event):
...
@@ -148,7 +148,7 @@ def add_global(event):
event
[
'allow_register'
]
=
allow_register
event
[
'allow_register'
]
=
allow_register
event
[
'change_unit'
]
=
change_unit
event
[
'change_unit'
]
=
change_unit
event
[
'get_params'
]
=
get_params
event
[
'get_params'
]
=
get_params
event
[
'route_urls'
]
=
get_urls
#
event['route_urls'] = get_urls
def
get_params
(
params
,
alternate
=
None
,
settings
=
None
):
def
get_params
(
params
,
alternate
=
None
,
settings
=
None
):
...
@@ -352,16 +352,6 @@ def get_menus(request):
...
@@ -352,16 +352,6 @@ def get_menus(request):
return
result
return
result
def
get_urls
(
request
,
route_name
,
*
elements
,
**
kw
):
url
=
request
.
route_url
(
route_name
,
*
elements
,
**
kw
)
home
=
get_host
(
request
)
urls
=
url
.
split
(
":"
)
homes
=
home
.
split
(
":"
)
if
urls
[
0
]
!=
homes
[
0
]:
return
":"
.
join
([
homes
[
0
],
urls
[
1
:]])
return
url
def
format_datetime
(
v
):
def
format_datetime
(
v
):
if
v
.
time
()
!=
datetime
.
time
(
0
,
0
):
if
v
.
time
()
!=
datetime
.
time
(
0
,
0
):
return
dmyhms
(
v
)
return
dmyhms
(
v
)
...
@@ -391,6 +381,14 @@ def json_rpc():
...
@@ -391,6 +381,14 @@ def json_rpc():
# if user is not None:
# if user is not None:
# return user.id
# return user.id
def
get_urls
(
url
):
home
=
get_params
(
'_host'
,
""
)
if
home
:
urls
=
url
.
split
(
":"
)
homes
=
home
.
split
(
":"
)
if
urls
[
0
]
!=
homes
[
0
]:
return
":"
.
join
([
homes
[
0
],
urls
[
1
:]])
return
url
def
get_host
(
request
):
def
get_host
(
request
):
host
=
get_params
(
'_host'
,
""
)
host
=
get_params
(
'_host'
,
""
)
...
...
opensipkd/base/views/__init__.py
View file @
de87932
...
@@ -15,7 +15,7 @@ from pyramid.response import Response
...
@@ -15,7 +15,7 @@ from pyramid.response import Response
from
pyramid.security
import
remember
from
pyramid.security
import
remember
from
pyramid.view
import
view_config
from
pyramid.view
import
view_config
from
opensipkd.base
import
get_params
from
opensipkd.base
import
get_params
,
get_urls
from
opensipkd.base.tools.api
import
rpc_auth
from
opensipkd.base.tools.api
import
rpc_auth
from
.base_views
import
BaseView
from
.base_views
import
BaseView
...
@@ -68,11 +68,11 @@ class Home(BaseView):
...
@@ -68,11 +68,11 @@ class Home(BaseView):
log
.
info
(
request
.
session
.
peek_flash
())
log
.
info
(
request
.
session
.
peek_flash
())
if
modules_default
:
if
modules_default
:
if
request
.
user
and
request
.
has_permission
(
modules_default
):
if
request
.
user
and
request
.
has_permission
(
modules_default
):
return
HTTPFound
(
location
=
request
.
route_url
(
modules_default
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
modules_default
)
))
elif
request
.
user
and
len
(
request
.
session
.
peek_flash
(
'error'
))
<
2
:
elif
request
.
user
and
len
(
request
.
session
.
peek_flash
(
'error'
))
<
2
:
return
HTTPFound
(
location
=
request
.
route_url
(
modules_default
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
modules_default
)
))
elif
not
request
.
user
:
elif
not
request
.
user
:
return
HTTPFound
(
location
=
request
.
route_url
(
modules_default
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
modules_default
)
))
logo
=
get_params
(
'logo'
,
"static/img/logo.png"
)
logo
=
get_params
(
'logo'
,
"static/img/logo.png"
)
home_tpl
=
get_params
(
"home_tpl"
)
home_tpl
=
get_params
(
"home_tpl"
)
if
home_tpl
:
if
home_tpl
:
...
@@ -87,7 +87,7 @@ class Home(BaseView):
...
@@ -87,7 +87,7 @@ class Home(BaseView):
@view_config
(
context
=
HTTPForbidden
,
renderer
=
'templates/403.pt'
)
@view_config
(
context
=
HTTPForbidden
,
renderer
=
'templates/403.pt'
)
def
http_forbidden
(
request
):
def
http_forbidden
(
request
):
if
not
request
.
is_authenticated
:
if
not
request
.
is_authenticated
:
next_url
=
request
.
route_url
(
'login'
,
_query
=
{
'next'
:
request
.
url
}
)
next_url
=
get_urls
(
request
.
route_url
(
'login'
,
_query
=
{
'next'
:
request
.
url
})
)
return
HTTPSeeOther
(
location
=
next_url
)
return
HTTPSeeOther
(
location
=
next_url
)
request
.
response
.
status
=
403
request
.
response
.
status
=
403
...
...
opensipkd/base/views/base_views.py
View file @
de87932
...
@@ -11,7 +11,8 @@ from opensipkd.tools.captcha import get_captcha
...
@@ -11,7 +11,8 @@ from opensipkd.tools.captcha import get_captcha
from
pyramid.httpexceptions
import
HTTPFound
from
pyramid.httpexceptions
import
HTTPFound
from
.common
import
DataTables
from
.common
import
DataTables
from
..
import
DBSession
,
get_params
from
..
import
DBSession
,
get_params
,
get_urls
from
from
opensipkd.tools
import
dmy
,
date_from_str
,
get_settings
,
get_ext
,
\
from
opensipkd.tools
import
dmy
,
date_from_str
,
get_settings
,
get_ext
,
\
date_from_str
date_from_str
import
colander
import
colander
...
@@ -168,10 +169,10 @@ class BaseView(object):
...
@@ -168,10 +169,10 @@ class BaseView(object):
if
msg
:
if
msg
:
self
.
ses
.
flash
(
msg
,
error
)
self
.
ses
.
flash
(
msg
,
error
)
if
self
.
headers
:
if
self
.
headers
:
return
HTTPFound
(
location
=
self
.
req
.
route_url
(
self
.
list_route
),
return
HTTPFound
(
location
=
get_urls
(
self
.
req
.
route_url
(
self
.
list_route
)
),
headers
=
self
.
headers
)
headers
=
self
.
headers
)
else
:
else
:
return
HTTPFound
(
location
=
self
.
req
.
route_url
(
self
.
list_route
))
return
HTTPFound
(
location
=
get_urls
(
self
.
req
.
route_url
(
self
.
list_route
)
))
def
form_validator
(
self
,
form
,
value
):
def
form_validator
(
self
,
form
,
value
):
pass
pass
...
@@ -218,7 +219,7 @@ class BaseView(object):
...
@@ -218,7 +219,7 @@ class BaseView(object):
schema
=
self
.
list_schema
()
schema
=
self
.
list_schema
()
schema
=
schema
.
bind
(
request
=
self
.
req
)
schema
=
schema
.
bind
(
request
=
self
.
req
)
table
=
DeTable
(
schema
,
table
=
DeTable
(
schema
,
action
=
self
.
req
.
route_url
(
self
.
list_route
),
action
=
get_urls
(
self
.
req
.
route_url
(
self
.
list_route
)
),
action_suffix
=
"/grid/act"
,
action_suffix
=
"/grid/act"
,
buttons
=
self
.
list_buttons
,
buttons
=
self
.
list_buttons
,
request
=
self
.
req
,
request
=
self
.
req
,
...
@@ -618,4 +619,4 @@ def need_verify():
...
@@ -618,4 +619,4 @@ def need_verify():
def
get_url_captcha
(
request
):
def
get_url_captcha
(
request
):
captcha
=
get_captcha
(
request
)
captcha
=
get_captcha
(
request
)
return
os
.
path
.
join
(
request
.
route_url
(
'home'
),
'captcha'
,
captcha
)
return
os
.
path
.
join
(
get_urls
(
request
.
route_url
(
'home'
)
),
'captcha'
,
captcha
)
opensipkd/base/views/departemen.py
View file @
de87932
...
@@ -13,7 +13,7 @@ from sqlalchemy.orm import aliased
...
@@ -13,7 +13,7 @@ from sqlalchemy.orm import aliased
from
.company
import
company_widget
from
.company
import
company_widget
from
.upload
import
AddSchema
as
UploadSchema
from
.upload
import
AddSchema
as
UploadSchema
from
opensipkd.models
import
DBSession
,
Departemen
,
Partner
,
PartnerDepartemen
from
opensipkd.models
import
DBSession
,
Departemen
,
Partner
,
PartnerDepartemen
from
..views
import
ColumnDT
,
DataTables
,
BaseView
from
..views
import
ColumnDT
,
DataTables
,
BaseView
,
get_urls
SESS_ADD_FAILED
=
'Tambah departemen gagal'
SESS_ADD_FAILED
=
'Tambah departemen gagal'
SESS_EDIT_FAILED
=
'Edit departemen gagal'
SESS_EDIT_FAILED
=
'Edit departemen gagal'
...
@@ -87,7 +87,7 @@ class AddSchema(colander.Schema):
...
@@ -87,7 +87,7 @@ class AddSchema(colander.Schema):
size
=
60
,
min_length
=
3
,
size
=
60
,
min_length
=
3
,
requirements
=
((
"typeahead"
,
None
),
(
"deform"
,
None
),
requirements
=
((
"typeahead"
,
None
),
(
"deform"
,
None
),
{
"js"
:
"opensipkd.base:static/js/form/departemen.js"
}),
{
"js"
:
"opensipkd.base:static/js/form/departemen.js"
}),
values
=
f
"{request.route_url('departemen')}/hon/act"
)
values
=
get_urls
(
f
"{request.route_url('departemen')}/hon/act"
)
)
if
request
.
user
.
company_id
:
if
request
.
user
.
company_id
:
self
[
"company_id"
]
.
widget
=
widget
.
HiddenWidget
()
self
[
"company_id"
]
.
widget
=
widget
.
HiddenWidget
()
self
[
"company_id"
]
.
default
=
request
.
user
.
company_id
self
[
"company_id"
]
.
default
=
request
.
user
.
company_id
...
...
opensipkd/base/views/menus.py
View file @
de87932
...
@@ -7,7 +7,7 @@ from pyramid.view import (view_config, )
...
@@ -7,7 +7,7 @@ from pyramid.view import (view_config, )
from
sqlalchemy.orm
import
aliased
from
sqlalchemy.orm
import
aliased
from
..views
import
ColumnDT
,
DataTables
,
BaseView
from
..views
import
ColumnDT
,
DataTables
,
BaseView
from
..
import
get_urls
_
=
TranslationStringFactory
(
"opensipkd"
)
_
=
TranslationStringFactory
(
"opensipkd"
)
SESS_ADD_FAILED
=
'Tambah menu gagal'
SESS_ADD_FAILED
=
'Tambah menu gagal'
...
...
opensipkd/base/views/partner_base.py
View file @
de87932
...
@@ -7,6 +7,7 @@ from opensipkd.base.views.kecamatan import kecamatan_widget
...
@@ -7,6 +7,7 @@ from opensipkd.base.views.kecamatan import kecamatan_widget
from
opensipkd.base.views.provinsi
import
provinsi_widget
from
opensipkd.base.views.provinsi
import
provinsi_widget
from
opensipkd.tools
import
mem_tmp_store
from
opensipkd.tools
import
mem_tmp_store
from
..
import
get_urls
class
NamaSchema
(
colander
.
Schema
):
class
NamaSchema
(
colander
.
Schema
):
...
@@ -132,8 +133,7 @@ class PartnerSchema(NamaSchema):
...
@@ -132,8 +133,7 @@ class PartnerSchema(NamaSchema):
def
after_bind
(
self
,
schema
,
kwargs
):
def
after_bind
(
self
,
schema
,
kwargs
):
request
=
kwargs
[
"request"
]
request
=
kwargs
[
"request"
]
prefix
=
request
.
route_url
(
"home"
)
prefix
=
get_urls
(
request
.
route_url
(
"home"
)
)
self
[
"provinsi_id"
]
.
slave_url
=
f
"{prefix}/dati2/select/act?provinsi_id="
self
[
"provinsi_id"
]
.
slave_url
=
f
"{prefix}/dati2/select/act?provinsi_id="
self
[
"dati2_id"
]
.
slave_url
=
f
"{prefix}/kecamatan/select/act?dati2_id="
self
[
"dati2_id"
]
.
slave_url
=
f
"{prefix}/kecamatan/select/act?dati2_id="
self
[
"kecamatan_id"
]
.
slave_url
=
f
"{prefix}/desa/select/act?kecamatan_id="
self
[
"kecamatan_id"
]
.
slave_url
=
f
"{prefix}/desa/select/act?kecamatan_id="
opensipkd/base/views/register.py
View file @
de87932
...
@@ -47,6 +47,7 @@ from . import widget_os
...
@@ -47,6 +47,7 @@ from . import widget_os
from
.base_views
import
need_captcha
,
get_url_captcha
from
.base_views
import
need_captcha
,
get_url_captcha
from
.user_login
import
regenerate_security_code
,
send_email_security_code
from
.user_login
import
regenerate_security_code
,
send_email_security_code
from
..views
import
BaseView
from
..views
import
BaseView
from
..
import
get_urls
_
=
TranslationStringFactory
(
'user'
)
_
=
TranslationStringFactory
(
'user'
)
...
@@ -146,7 +147,7 @@ def _show_error(request, msg):
...
@@ -146,7 +147,7 @@ def _show_error(request, msg):
def
show_error
(
request
,
msg
):
def
show_error
(
request
,
msg
):
_show_error
(
request
,
msg
)
_show_error
(
request
,
msg
)
return
HTTPFound
(
location
=
request
.
route_url
(
'home'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'home'
)
))
# def reg_buttons():
# def reg_buttons():
...
@@ -310,16 +311,16 @@ class Registrasi(BaseView):
...
@@ -310,16 +311,16 @@ class Registrasi(BaseView):
def
view_register
(
self
):
def
view_register
(
self
):
if
"g_state"
in
self
.
req
.
cookies
:
if
"g_state"
in
self
.
req
.
cookies
:
if
"id_info"
not
in
self
.
ses
or
not
self
.
ses
[
"id_info"
]:
if
"id_info"
not
in
self
.
ses
or
not
self
.
ses
[
"id_info"
]:
return
HTTPFound
(
location
=
self
.
req
.
route_url
(
"login"
))
return
HTTPFound
(
location
=
get_urls
(
self
.
req
.
route_url
(
"login"
)
))
request
=
self
.
req
request
=
self
.
req
reg_form
=
get_params
(
"reg_form"
)
reg_form
=
get_params
(
"reg_form"
)
if
reg_form
:
if
reg_form
:
return
HTTPFound
(
location
=
self
.
req
.
route_url
(
reg_form
))
return
HTTPFound
(
location
=
get_urls
(
self
.
req
.
route_url
(
reg_form
)
))
self
.
bindings
=
dict
(
user
=
None
)
self
.
bindings
=
dict
(
user
=
None
)
if
request
.
user
:
if
request
.
user
:
return
HTTPFound
(
location
=
request
.
route_url
(
"profile"
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
"profile"
)
))
return
super
(
Registrasi
,
self
)
.
view_add
()
return
super
(
Registrasi
,
self
)
.
view_add
()
...
@@ -365,7 +366,7 @@ class Registrasi(BaseView):
...
@@ -365,7 +366,7 @@ class Registrasi(BaseView):
self
.
buttons
=
(
btn_save
,
btn_cancel
)
self
.
buttons
=
(
btn_save
,
btn_cancel
)
reg_form
=
get_params
(
"reg_form"
)
reg_form
=
get_params
(
"reg_form"
)
if
reg_form
:
if
reg_form
:
return
HTTPFound
(
location
=
self
.
req
.
route_url
(
reg_form
))
return
HTTPFound
(
location
=
get_urls
(
self
.
req
.
route_url
(
reg_form
)
))
self
.
bindings
=
dict
(
user
=
self
.
req
.
user
)
self
.
bindings
=
dict
(
user
=
self
.
req
.
user
)
resp
=
super
(
Registrasi
,
self
)
.
view_edit
()
resp
=
super
(
Registrasi
,
self
)
.
view_edit
()
if
not
resp
:
if
not
resp
:
...
...
opensipkd/base/views/upload.py
View file @
de87932
...
@@ -13,12 +13,12 @@ from opensipkd.tools import (
...
@@ -13,12 +13,12 @@ from opensipkd.tools import (
)
)
from
pyramid.httpexceptions
import
HTTPFound
from
pyramid.httpexceptions
import
HTTPFound
from
pyramid.view
import
view_config
from
pyramid.view
import
view_config
from
..
import
get_urls
# from unggah import DbUpload
# from unggah import DbUpload
def
route_list
(
request
,
p
=
{}):
def
route_list
(
request
,
p
=
{}):
q
=
dict_to_str
(
p
)
q
=
dict_to_str
(
p
)
return
HTTPFound
(
location
=
request
.
route_url
(
'upload-logo'
,
_query
=
q
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'upload-logo'
,
_query
=
q
)
))
##########
##########
...
...
opensipkd/base/views/user_group.py
View file @
de87932
...
@@ -19,7 +19,7 @@ from opensipkd.models import (
...
@@ -19,7 +19,7 @@ from opensipkd.models import (
UserGroup
,
)
UserGroup
,
)
from
datatables
import
ColumnDT
,
DataTables
from
datatables
import
ColumnDT
,
DataTables
from
..
import
get_urls
SESS_ADD_FAILED
=
'Tambah user gagal'
SESS_ADD_FAILED
=
'Tambah user gagal'
SESS_EDIT_FAILED
=
'Edit user gagal'
SESS_EDIT_FAILED
=
'Edit user gagal'
...
@@ -160,7 +160,7 @@ def save_request(values, request, row=None):
...
@@ -160,7 +160,7 @@ def save_request(values, request, row=None):
def
route_list
(
request
):
def
route_list
(
request
):
return
HTTPFound
(
location
=
request
.
route_url
(
'user-group'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'user-group'
)
))
def
session_failed
(
request
,
session_name
):
def
session_failed
(
request
,
session_name
):
...
@@ -186,7 +186,7 @@ def view_add(request):
...
@@ -186,7 +186,7 @@ def view_add(request):
c
=
form
.
validate
(
controls
)
c
=
form
.
validate
(
controls
)
except
ValidationFailure
as
e
:
except
ValidationFailure
as
e
:
request
.
session
[
SESS_ADD_FAILED
]
=
e
.
render
()
request
.
session
[
SESS_ADD_FAILED
]
=
e
.
render
()
return
HTTPFound
(
location
=
request
.
route_url
(
'user-group-add'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'user-group-add'
)
))
save_request
(
controls_dicted
,
request
)
save_request
(
controls_dicted
,
request
)
return
route_list
(
request
)
return
route_list
(
request
)
elif
SESS_ADD_FAILED
in
request
.
session
:
elif
SESS_ADD_FAILED
in
request
.
session
:
...
@@ -225,8 +225,8 @@ def view_edit(request):
...
@@ -225,8 +225,8 @@ def view_edit(request):
c
=
form
.
validate
(
controls
)
c
=
form
.
validate
(
controls
)
except
ValidationFailure
as
e
:
except
ValidationFailure
as
e
:
request
.
session
[
SESS_EDIT_FAILED
]
=
e
.
render
()
request
.
session
[
SESS_EDIT_FAILED
]
=
e
.
render
()
return
HTTPFound
(
location
=
request
.
route_url
(
'user-group-edit'
,
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'user-group-edit'
,
id
=
row
.
id
))
id
=
row
.
id
))
)
save_request
(
dict
(
controls
),
request
,
row
)
save_request
(
dict
(
controls
),
request
,
row
)
return
route_list
(
request
)
return
route_list
(
request
)
elif
SESS_EDIT_FAILED
in
request
.
session
:
elif
SESS_EDIT_FAILED
in
request
.
session
:
...
...
opensipkd/base/views/user_login.py
View file @
de87932
...
@@ -44,7 +44,7 @@ from pyramid_mailer.message import Message
...
@@ -44,7 +44,7 @@ from pyramid_mailer.message import Message
from
opensipkd.tools.buttons
import
btn_cancel
from
opensipkd.tools.buttons
import
btn_cancel
from
opensipkd.tools.form_api
import
formfield2dict
from
opensipkd.tools.form_api
import
formfield2dict
from
..
import
get_urls
log
=
__import__
(
"logging"
)
.
getLogger
(
__name__
)
log
=
__import__
(
"logging"
)
.
getLogger
(
__name__
)
...
@@ -168,11 +168,11 @@ class ViewLogin(BaseView):
...
@@ -168,11 +168,11 @@ class ViewLogin(BaseView):
next_url
=
request
.
params
.
get
(
'next'
,
request
.
referrer
)
next_url
=
request
.
params
.
get
(
'next'
,
request
.
referrer
)
login_tpl
=
get_params
(
'login_tpl'
,
'templates/login.pt'
)
login_tpl
=
get_params
(
'login_tpl'
,
'templates/login.pt'
)
if
not
next_url
:
if
not
next_url
:
next_url
=
request
.
route_url
(
'home'
)
next_url
=
get_urls
(
request
.
route_url
(
'home'
)
)
if
request
.
authenticated_userid
:
# (request):
if
request
.
authenticated_userid
:
# (request):
request
.
session
.
flash
(
'Anda sudah login'
,
'error'
)
request
.
session
.
flash
(
'Anda sudah login'
,
'error'
)
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
)
schema
=
Login
(
validator
=
login_validator
)
schema
=
Login
(
validator
=
login_validator
)
form
=
Form
(
schema
,
buttons
=
(
'login'
,))
form
=
Form
(
schema
,
buttons
=
(
'login'
,))
...
@@ -187,7 +187,7 @@ class ViewLogin(BaseView):
...
@@ -187,7 +187,7 @@ class ViewLogin(BaseView):
msg
=
'Login gagal'
msg
=
'Login gagal'
set_user_log
(
msg
,
request
,
log
,
identity
)
set_user_log
(
msg
,
request
,
log
,
identity
)
request
.
session
.
flash
(
msg
,
'error'
)
request
.
session
.
flash
(
msg
,
'error'
)
return
HTTPFound
(
location
=
request
.
route_url
(
'login'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'login'
)
))
values
=
dict
(
c
)
values
=
dict
(
c
)
# start cek external module
# start cek external module
...
@@ -206,19 +206,19 @@ class ViewLogin(BaseView):
...
@@ -206,19 +206,19 @@ class ViewLogin(BaseView):
except
Exception
as
e
:
except
Exception
as
e
:
log
.
warn
(
str
(
e
))
log
.
warn
(
str
(
e
))
request
.
session
.
flash
(
str
(
e
),
"error"
)
request
.
session
.
flash
(
str
(
e
),
"error"
)
return
HTTPFound
(
location
=
request
.
route_url
(
'login'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'login'
)
))
else
:
else
:
login
=
LoginUser
(
self
.
req
)
login
=
LoginUser
(
self
.
req
)
if
not
login
.
login
(
values
,
user
):
if
not
login
.
login
(
values
,
user
):
request
.
session
.
flash
(
login
.
message
,
"error"
)
request
.
session
.
flash
(
login
.
message
,
"error"
)
next_url
=
f
"{request.route_url('login')}?next={next_url}"
next_url
=
get_urls
(
f
"{request.route_url('login')}?next={next_url}"
)
return
HTTPFound
(
location
=
next_url
)
return
HTTPFound
(
location
=
next_url
)
return
redirect_login
(
request
,
user
)
return
redirect_login
(
request
,
user
)
elif
'register'
in
request
.
POST
:
elif
'register'
in
request
.
POST
:
register_form
=
get_params
(
"register_form"
,
'register'
)
register_form
=
get_params
(
"register_form"
,
'register'
)
return
HTTPFound
(
location
=
request
.
route_url
(
register_form
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
register_form
)
))
elif
'login failed'
in
request
.
session
:
elif
'login failed'
in
request
.
session
:
r
=
dict
(
form
=
request
.
session
[
'login failed'
])
r
=
dict
(
form
=
request
.
session
[
'login failed'
])
...
@@ -236,13 +236,13 @@ class ViewLogin(BaseView):
...
@@ -236,13 +236,13 @@ class ViewLogin(BaseView):
login_tpl
,
dict
(
login_tpl
,
dict
(
form
=
form
.
render
(),
form
=
form
.
render
(),
message
=
message
,
message
=
message
,
url
=
request
.
route_url
(
'login'
),
url
=
get_urls
(
request
.
route_url
(
'login'
)
),
next_url
=
next_url
,
next_url
=
next_url
,
login
=
login
,
),
login
=
login
,
),
request
=
request
)
request
=
request
)
except
Oauth2UserExc
as
e
:
except
Oauth2UserExc
as
e
:
request
.
session
.
flash
(
str
(
e
),
'error'
)
request
.
session
.
flash
(
str
(
e
),
'error'
)
return
HTTPFound
(
location
=
request
.
route_url
(
'login'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'login'
)
))
if
user
and
user
.
status
==
1
:
if
user
and
user
.
status
==
1
:
return
redirect_login
(
request
,
user
)
return
redirect_login
(
request
,
user
)
...
@@ -250,7 +250,7 @@ class ViewLogin(BaseView):
...
@@ -250,7 +250,7 @@ class ViewLogin(BaseView):
if
login_tpl
==
'templates/login.pt'
:
if
login_tpl
==
'templates/login.pt'
:
return
dict
(
form
=
form
.
render
(),
return
dict
(
form
=
form
.
render
(),
message
=
message
,
message
=
message
,
url
=
request
.
route_url
(
'login'
),
url
=
get_urls
(
request
.
route_url
(
'login'
)
),
next_url
=
next_url
,
next_url
=
next_url
,
login
=
login
,
)
login
=
login
,
)
...
@@ -259,7 +259,7 @@ class ViewLogin(BaseView):
...
@@ -259,7 +259,7 @@ class ViewLogin(BaseView):
request
=
request
,
request
=
request
,
value
=
dict
(
form
=
form
.
render
(),
value
=
dict
(
form
=
form
.
render
(),
message
=
message
,
message
=
message
,
url
=
request
.
route_url
(
'login'
),
url
=
get_urls
(
request
.
route_url
(
'login'
)
),
next_url
=
next_url
,
next_url
=
next_url
,
login
=
login
,
),
login
=
login
,
),
)
)
...
@@ -272,7 +272,7 @@ def redirect_login(request, user):
...
@@ -272,7 +272,7 @@ def redirect_login(request, user):
next_url
=
request
.
params
.
get
(
'next'
)
next_url
=
request
.
params
.
get
(
'next'
)
if
not
next_url
and
request
.
matched_route
.
name
==
'login'
:
if
not
next_url
and
request
.
matched_route
.
name
==
'login'
:
url
=
get_params
(
'modules_default'
,
'home'
)
url
=
get_params
(
'modules_default'
,
'home'
)
return
HTTPFound
(
location
=
request
.
route_url
(
url
),
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
url
)
),
headers
=
headers
)
headers
=
headers
)
return
HTTPFound
(
location
=
next_url
,
headers
=
headers
)
return
HTTPFound
(
location
=
next_url
,
headers
=
headers
)
...
@@ -299,8 +299,8 @@ class Logout(BaseView):
...
@@ -299,8 +299,8 @@ class Logout(BaseView):
form
=
self
.
get_form
(
LogoutSchema
,
buttons
=
(
btn_cancel
,
btn_logout
))
form
=
self
.
get_form
(
LogoutSchema
,
buttons
=
(
btn_cancel
,
btn_logout
))
if
'cancel'
in
request
.
POST
or
"home"
in
request
.
POST
:
if
'cancel'
in
request
.
POST
or
"home"
in
request
.
POST
:
log
.
info
(
request
.
route_url
(
'home'
))
log
.
info
(
get_urls
(
request
.
route_url
(
'home'
)
))
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
,
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
,
)
)
elif
"logout"
in
request
.
POST
:
elif
"logout"
in
request
.
POST
:
form
=
self
.
get_form
(
LogoutSchema
,
buttons
=
(
btn_home
,))
form
=
self
.
get_form
(
LogoutSchema
,
buttons
=
(
btn_home
,))
...
@@ -343,7 +343,7 @@ def change_password_validator(form, value):
...
@@ -343,7 +343,7 @@ def change_password_validator(form, value):
def
view_change_password
(
request
):
def
view_change_password
(
request
):
if
request
.
authenticated_userid
:
if
request
.
authenticated_userid
:
request
.
session
.
flash
(
'Anda sudah login'
,
'error'
)
request
.
session
.
flash
(
'Anda sudah login'
,
'error'
)
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
)
schema
=
ChangePassword
(
validator
=
change_password_validator
)
schema
=
ChangePassword
(
validator
=
change_password_validator
)
btn_save
=
Button
(
'save'
,
_
(
'Simpan'
))
btn_save
=
Button
(
'save'
,
_
(
'Simpan'
))
...
@@ -353,7 +353,7 @@ def view_change_password(request):
...
@@ -353,7 +353,7 @@ def view_change_password(request):
if
not
request
.
POST
:
if
not
request
.
POST
:
return
dict
(
form
=
form
.
render
())
return
dict
(
form
=
form
.
render
())
if
'save'
not
in
request
.
POST
:
if
'save'
not
in
request
.
POST
:
return
HTTPFound
(
location
=
request
.
route_url
(
'login'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'login'
)
))
items
=
request
.
POST
.
items
()
items
=
request
.
POST
.
items
()
try
:
try
:
c
=
form
.
validate
(
items
)
c
=
form
.
validate
(
items
)
...
@@ -365,7 +365,7 @@ def view_change_password(request):
...
@@ -365,7 +365,7 @@ def view_change_password(request):
if
not
user
or
\
if
not
user
or
\
create_now
()
-
user
.
security_code_date
>
one_hour
:
create_now
()
-
user
.
security_code_date
>
one_hour
:
request
.
session
.
flash
(
'Security code expired'
,
'error'
)
request
.
session
.
flash
(
'Security code expired'
,
'error'
)
return
HTTPFound
(
location
=
request
.
route_url
(
'login'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'login'
)
))
user
.
security_code
=
None
user
.
security_code
=
None
UserService
.
set_password
(
user
,
c
[
'new_password'
])
UserService
.
set_password
(
user
,
c
[
'new_password'
])
...
@@ -373,7 +373,7 @@ def view_change_password(request):
...
@@ -373,7 +373,7 @@ def view_change_password(request):
headers
=
get_login_headers
(
request
,
user
)
headers
=
get_login_headers
(
request
,
user
)
request
.
session
.
flash
(
'Password baru Anda sudah disimpan.'
)
request
.
session
.
flash
(
'Password baru Anda sudah disimpan.'
)
set_user_log
(
"Change Password"
,
request
,
log
)
set_user_log
(
"Change Password"
,
request
,
log
)
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
,
headers
=
headers
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
,
headers
=
headers
)
######################
######################
...
@@ -403,12 +403,12 @@ def view_recreate_api_key(request):
...
@@ -403,12 +403,12 @@ def view_recreate_api_key(request):
d
=
dict
(
api_key
=
request
.
user
.
api_key
)
d
=
dict
(
api_key
=
request
.
user
.
api_key
)
return
dict
(
form
=
form
.
render
(
appstruct
=
d
))
return
dict
(
form
=
form
.
render
(
appstruct
=
d
))
if
'recreate'
not
in
request
.
POST
:
if
'recreate'
not
in
request
.
POST
:
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
)
request
.
user
.
api_key
=
api_key
=
generate_api_key
()
request
.
user
.
api_key
=
api_key
=
generate_api_key
()
DBSession
.
add
(
request
.
user
)
DBSession
.
add
(
request
.
user
)
msg
=
'API Key Anda yang baru {}'
.
format
(
api_key
)
msg
=
'API Key Anda yang baru {}'
.
format
(
api_key
)
request
.
session
.
flash
(
msg
)
request
.
session
.
flash
(
msg
)
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
)
##################
##################
...
@@ -508,7 +508,7 @@ def regenerate_security_code(user, hour=1.0):
...
@@ -508,7 +508,7 @@ def regenerate_security_code(user, hour=1.0):
renderer
=
'templates/reset-password.pt'
)
renderer
=
'templates/reset-password.pt'
)
def
view_reset_password
(
request
):
def
view_reset_password
(
request
):
if
request
.
authenticated_userid
:
if
request
.
authenticated_userid
:
return
HTTPFound
(
location
=
f
"{request.route_url('home')}"
)
return
HTTPFound
(
location
=
get_urls
(
f
"{request.route_url('home')}"
)
)
resp
=
dict
(
title
=
_
(
'Reset password'
))
resp
=
dict
(
title
=
_
(
'Reset password'
))
schema
=
ResetPassword
(
validator
=
reset_password_validator
)
schema
=
ResetPassword
(
validator
=
reset_password_validator
)
...
@@ -530,7 +530,7 @@ def view_reset_password(request):
...
@@ -530,7 +530,7 @@ def view_reset_password(request):
send_email_security_code
(
send_email_security_code
(
request
,
user
,
remain
,
'Reset password'
,
'reset-password-body'
,
request
,
user
,
remain
,
'Reset password'
,
'reset-password-body'
,
'reset-password-body.tpl'
)
'reset-password-body.tpl'
)
return
HTTPFound
(
location
=
request
.
route_url
(
'reset-password-sent'
))
return
HTTPFound
(
location
=
get_urls
(
request
.
route_url
(
'reset-password-sent'
)
))
resp
[
'form'
]
=
form
.
render
()
resp
[
'form'
]
=
form
.
render
()
return
resp
return
resp
...
...
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