Update User Login dan view_act

1 parent d46c5797
......@@ -14,7 +14,7 @@ pyramid.debug_notfound = true
pyramid.debug_routematch = true
pyramid.debug_templates = true
default_locale_name = id
sqlalchemy.url = postgresql://aagusti:a@localhost:5432/webrs
sqlalchemy.url = postgresql://aagusti:a@localhost:5432/demos
pyramid.includes =
pyramid_tm
pyramid_beaker
......@@ -26,7 +26,7 @@ pyramid.includes =
; opensipkd.pbb.monitoring
session.url = postgresql://aagusti:a@localhost:5432/demo
session.url = postgresql://aagusti:a@localhost:5432/demos
session.type = ext:database
session.secret = s0s3cr3ts
session.cookie_expires = true
......@@ -151,7 +151,7 @@ keys = console, filelog
keys = generic
[logger_root]
level = DEBUG
level = WARN
handlers = console, filelog
#, tabel
......@@ -161,7 +161,7 @@ handlers =console, filelog
qualname = opensipkd
[logger_sqlalchemy]
level = DEBUG
level = WARN
handlers =
qualname = sqlalchemy.engine
# "level = INFO" logs SQL queries.
......@@ -189,7 +189,7 @@ level = WARN
formatter = generic
[formatter_generic]
format = %(asctime)s %(levelname)-5.5s [%(name)s][%(threadName)s] %(message)s
format = %(asctime)s %(levelname)-5.5s [%(name)s][%(lineno)s][%(threadName)s] %(message)s
# End logging configuration
......
......@@ -117,7 +117,6 @@ def get_menus(request):
key, val = menu.strip().split('|')
key = request.route_url(key.strip())
val = val.strip()
else:
key = menu.strip()
val = key.replace('/', '-')
......@@ -832,13 +831,13 @@ from pyramid.response import Response
import json
@exception_view_config(HTTPBadRequest)
def bad_request_view(exc, request):
_logging.error(f"Bad Request: {exc} from {request.url}")
if request.matched_route.name=='base-login' :
# Bersihkan sesi autentikasi (logout)
headers = forget(request)
# Arahkan ulang ke halaman login (misalnya route 'login')
request.session.flash("Permintaan tidak valid. Silakan ulangi kembali. atau origin tidak diizinkan.", "error")
_logging.debug(f"Bad Request: {exc} from {request.url}")
referrer = request.route_url('base-login')
response = HTTPFound(location=referrer)
response.headers.extend(headers)
......
......@@ -626,6 +626,8 @@ class BaseView(object):
and getattr(d, "search_method", "string_contains") or "string_contains"
if hasattr(d, "field"):
if isinstance(d.field, str):
if d.field=="calculated":
continue
columns.append(
ColumnDT(getattr(self.table, d.field),
mData=d.name,
......
......@@ -318,8 +318,9 @@ class ViewAuth(BaseView):
msg = 'Login gagal'
set_user_log(msg, request, log, identity)
if self.req.is_xhr:
d = {"error": e.error.asdict()}
return Response(json=d)
raise HTTPNotAcceptable(explanation=msg)
# d = {"error": e.error.asdict()}
# return Response(json=d)
# d = self.form2dict(e.field)
# return Response(json={"data": d["children"]})
request.session.flash(msg, 'error')
......@@ -347,11 +348,12 @@ class ViewAuth(BaseView):
else:
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},
"data": []})
raise HTTPNotAcceptable(explanation=login.message)
# return Response(json={"error": {"code": -1,
# "msg": login.message},
# "data": []})
request.session.flash(login.message, "error")
next_url = f"{request.route_url('base-login')}?next={next_url}"
return HTTPFound(location=next_url)
......@@ -478,6 +480,7 @@ def xhr_response(user, headers):
}
headers.append(("Content-Type", "application/json"))
return Response(json=data, headerlist=headers)
......
......@@ -59,7 +59,7 @@
-->
<!-- </div> -->
<table id="${tableid}" class="table table-bordered table-hover table-condensed dataTable no-footer">
<table id="${tableid}" class="table table-bordered table-hover table-condensed no-footer" style="width: 100%;">
<thead>
<tr>
<tal:block tal:repeat="child field">
......@@ -258,6 +258,7 @@
autoWidth: false,
paginate: ${paginates},
paging:${field.paging},
responsive:true,
info: ${field.list_info},
//searching: ${field.list_info},
paginationType: "full_numbers",
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!