Commit de879328 by aagusti

get urls

1 parent 49766c2f
...@@ -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', "")
......
...@@ -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
......
...@@ -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)
...@@ -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
......
...@@ -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'
......
...@@ -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="
...@@ -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:
......
...@@ -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)))
########## ##########
......
...@@ -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:
......
...@@ -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
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!