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 b9b07e16
authored
Aug 05, 2025
by
aa.gustiana@gmail.com
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Add JSON response handling for AJAX login requests in ViewAuth class
1 parent
75d4b5ee
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
17 additions
and
2 deletions
opensipkd/base/views/user_login.py
opensipkd/base/views/user_login.py
View file @
b9b07e1
...
...
@@ -23,8 +23,7 @@ import os
import
re
from
datetime
import
timedelta
,
datetime
from
importlib
import
import_module
from
urllib
import
request
from
pyramid.request
import
Response
import
colander
from
deform
import
widget
,
Form
,
ValidationFailure
,
Button
from
pyramid.csrf
import
new_csrf_token
...
...
@@ -193,6 +192,11 @@ class ViewAuth(BaseView):
next_url
=
request
.
home
if
request
.
authenticated_userid
:
# (request):
message
=
'Anda sudah login'
if
self
.
req
.
is_xhr
:
return
Response
(
json
=
{
"success"
:
True
,
"msg"
:
message
})
request
.
session
.
flash
(
'Anda sudah login'
,
'error'
)
return
HTTPFound
(
location
=
f
"{request.home}"
)
...
...
@@ -216,6 +220,9 @@ class ViewAuth(BaseView):
except
ValidationFailure
as
e
:
msg
=
'Login gagal'
set_user_log
(
msg
,
request
,
log
,
identity
)
if
self
.
req
.
is_xhr
:
d
=
self
.
form2dict
(
e
.
field
)
return
Response
(
json
=
d
)
request
.
session
.
flash
(
msg
,
'error'
)
return
HTTPFound
(
location
=
request
.
route_url
(
'base-login'
))
...
...
@@ -243,6 +250,11 @@ class ViewAuth(BaseView):
login
=
LoginUser
(
self
.
req
)
if
not
login
.
login
(
values
,
user
):
request
.
session
.
flash
(
login
.
message
,
"error"
)
if
self
.
req
.
is_xhr
:
return
Response
(
json
=
{
"error"
:
{
"code"
:
-
1
,
"msg"
:
login
.
message
}
})
next_url
=
f
"{request.route_url('base-login')}?next={next_url}"
return
HTTPFound
(
location
=
next_url
)
return
redirect_login
(
request
,
user
)
...
...
@@ -262,6 +274,9 @@ class ViewAuth(BaseView):
except
Oauth2ParseExc
as
e
:
login
=
""
request
.
session
.
flash
(
str
(
e
),
"error"
)
if
self
.
req
.
is_xhr
:
# return Response(form.render())
return
Response
(
json
=
self
.
form2dict
(
form
))
return
render_to_response
(
login_tpl
,
dict
(
form
=
form
,
...
...
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