Updated Account info:

If user is not logged in, show a login option.
Updated New Password
    Added option to request a new password using username.
Updated templates to use {$site_url}
This commit is contained in:
jvelilla
2015-07-14 10:58:16 -03:00
parent 5688cffcf1
commit bba504df53
15 changed files with 98 additions and 34 deletions

View File

@@ -343,6 +343,24 @@ feature -- Handler
r.values.force (l_email.value, "email")
r.set_status_code ({HTTP_CONSTANTS}.bad_request)
end
elseif attached {WSF_STRING} req.form_parameter ("username") as l_username then
if attached {CMS_USER} l_user_api.user_by_name (l_username) as l_user and then
attached l_user.email as l_email
then
-- User exist create a new token and send a new email.
l_token := new_token
l_user_api.new_password (l_token, l_user.id)
l_url := req.absolute_script_url ("/account/reset-password?token=" + l_token)
-- Send Email
create es.make (create {CMS_AUTHENTICATION_EMAIL_SERVICE_PARAMETERS}.make (api))
write_debug_log (generator + ".handle register: send_contact_password_email")
es.send_contact_password_email (l_email, l_url)
else
r.values.force ("The username does not exist !", "error_username")
r.values.force (l_username.value, "username")
r.set_status_code ({HTTP_CONSTANTS}.bad_request)
end
end
end
r.execute
@@ -621,10 +639,12 @@ feature {NONE} -- Block views
end
end
elseif a_response.request.is_post_request_method then
if a_response.values.has ("error_email") then
if a_response.values.has ("error_email") or else a_response.values.has ("error_username") then
if attached template_block (a_block_id, a_response) as l_tpl_block then
l_tpl_block.set_value (a_response.values.item ("error_email"), "error_email")
l_tpl_block.set_value (a_response.values.item ("email"), "email")
l_tpl_block.set_value (a_response.values.item ("error_username"), "error_username")
l_tpl_block.set_value (a_response.values.item ("username"), "username")
a_response.add_block (l_tpl_block, "content")
else
debug ("cms")

View File

@@ -1,5 +1,5 @@
<div class="primary-tabs">
{if isset="$user"}
{if isset="$user"}
<h3>Account Information</h3>
<div>
<div>
@@ -16,7 +16,7 @@
<label>Last login:</label> {$user.last_login_date/}
</div>
<div>
<form method="get" action="{$site_url/}account/{$strategy/}">
<form method="get" action="{$site_url/}{$auth_login_strategy/}">
<button type="submit">Logout</button>
</form>
</div>
@@ -57,6 +57,13 @@
</div>
{/foreach}
</div>
{/if}
{/if}
{unless isset="$user"}
<div>
<p> You are not logged in </p>
<form method="get" action="{$site_url/}{$auth.login/}">
<button type="submit">Login</button>
</form>
</div>
{/unless}
</div>

View File

@@ -1,7 +1,7 @@
<div>
<form action="/account/new-password" method="post">
<form action="{$site_url/}account/new-password" method="post">
<fieldset>
<legend>Require new password</legend>
<legend>Require new password by email</legend>
<div>
<input type="email" id="email" name="email" value="{$email/}" required/>
<label for="email">Email</label>
@@ -13,4 +13,20 @@
<button type="submit">Send</button>
</fieldset>
</form>
<hr>
<form action="{$site_url/}account/new-password" method="post">
<fieldset>
<legend>Require new password by username</legend>
<div>
<input type="text" id="username" name="username" value="{$username/}" required/>
<label for="username">Username</label>
{if isset="$error_username"}
<span><i>{$error_username/}</i></span> <br>
{/if}
<br>
</div>
<button type="submit">Send</button>
</fieldset>
</form>
</div>

View File

@@ -1,5 +1,5 @@
<div>
<form action="/account/reactivate" method="post">
<form action="{$site_url/}account/reactivate" method="post">
<fieldset>
<legend>Reactivate Form</legend>
<div>

View File

@@ -1,5 +1,5 @@
<div>
<form action="/account/roc-register" method="post">
<form action="{$site_url/}account/roc-register" method="post">
<fieldset>
<legend>Register Form</legend>
<div>

View File

@@ -1,5 +1,5 @@
<div>
<form action="/account/reset-password" method="post">
<form action="{$site_url/}account/reset-password" method="post">
<fieldset>
<legend>Generate New Password Form</legend>
<div>