0
|
1 <macro name="edit_profile" requires="servlet">
|
|
2 <n.user_page.>
|
|
3 <n.if.not.visitor.is_registered>
|
|
4 <then>
|
|
5 <n.login.><t>You must login to view this page.</t></n.login.>
|
|
6 </then>
|
|
7 </n.if.not.visitor.is_registered>
|
|
8
|
|
9 <n.if.both condition1="[n.not.visitor.is_site_admin/]" condition2="[n.not.page_user.equals.visitor/]">
|
|
10 <then>
|
|
11 <n.login.><t>You must login to view this page.</t></n.login.>
|
|
12 </then>
|
|
13 </n.if.both>
|
|
14
|
|
15 <n.if.is_submitted_form>
|
|
16 <then>
|
|
17 <n.catch_exception. id="save-profile">
|
|
18 <n.edit_page_user.>
|
|
19 <n.set_name name="[n.user_name_field.value/]"/>
|
|
20 <n.set_password password1="[n.password_field.value/]" password2="[n.password2_field.value/]"/>
|
|
21 <n.save_user/>
|
|
22 </n.edit_page_user.>
|
|
23 <n.if.page_user.equals.visitor>
|
|
24 <then.profile_update_with_redirection_to.page_user.url/>
|
|
25 <else.redirect_to.page_user.url/>
|
|
26 </n.if.page_user.equals.visitor>
|
|
27 </n.catch_exception.>
|
|
28 </then>
|
|
29 <else>
|
|
30 <n.user_name_field.set_value value="[n.page_user.name/]" />
|
|
31 </else>
|
|
32 </n.if.is_submitted_form>
|
|
33
|
|
34 <n.html>
|
|
35 <head>
|
|
36 <META NAME="robots" CONTENT="noindex,nofollow"/>
|
|
37 <n.title.><t>Edit Profile</t></n.title.>
|
|
38 </head>
|
|
39 <body>
|
|
40 <style>
|
|
41 div.field-title {margin-top:0}
|
|
42 </style>
|
|
43 <h1><t>Edit Profile</t></h1>
|
|
44
|
|
45 <div class="field-box light-border-color">
|
|
46 <div class="second-font field-title">Email</div>
|
|
47 <div class="weak-color">
|
|
48 <n.page_user.user_email/>
|
|
49 » <a href="[n.page_user.change_email_path/]">Change Email</a>
|
|
50 </div>
|
|
51 </div>
|
|
52
|
|
53 <n.form.>
|
|
54 <div class="field-box light-border-color" id="username-field">
|
|
55 <div class="second-font field-title">User Name</div>
|
|
56 <div class="weak-color">
|
|
57 Your user name must be unique in <n.root_node.subject/>
|
|
58 </div>
|
|
59 <div>
|
|
60 <n.user_name_field.input size="25" maxlength="25"/>
|
|
61 </div>
|
|
62 </div>
|
|
63
|
|
64 <div class="field-box light-border-color">
|
|
65 <div class="second-font field-title">Change Password</div>
|
|
66 <div class="weak-color">Nabble encrypts your password (<a href="[n.help.password/]">?</a>)</div>
|
|
67 <table style="margin:.4em 0" class="shaded-bg-color">
|
|
68 <tr valign="top">
|
|
69 <td class="form-label" style="padding-top:.6em">Password: </td>
|
|
70 <td><n.password_field.input type="password" size="25" maxlength="25"/></td>
|
|
71 </tr>
|
|
72 <tr>
|
|
73 <td class="form-label">Confirm Password: </td>
|
|
74 <td><n.password2_field.input type="password" size="25" maxlength="25"/></td>
|
|
75 </tr>
|
|
76 </table>
|
|
77 </div>
|
|
78
|
|
79 <input type="submit" class="toolbar action-button" value="[t]Save Changes[/t]"/>
|
|
80 <t>or</t> <a href="[n.page_user.url/]"><t>Cancel</t></a>
|
|
81 </n.form.>
|
|
82 </body>
|
|
83 </n.html>
|
|
84 </n.user_page.>
|
|
85 </macro>
|
|
86
|
|
87 <macro name="show_edit_profile_error">
|
|
88 <n.if.is_submitted_form>
|
|
89 <then.if.has_exception for="save-profile">
|
|
90 <then.format_error.handle_exception. for="save-profile">
|
|
91 <n.exception. name="empty_user_name">
|
|
92 <t>User name cannot be empty.</t>
|
|
93 </n.exception.>
|
|
94 <n.exception. name="passwords_dont_match">
|
|
95 <t>The password fields don't match.</t>
|
|
96 </n.exception.>
|
|
97 <n.exception. name="user_name_already_in_use">
|
|
98 <t>This user name is already in use.</t>
|
|
99 </n.exception.>
|
|
100 </then.format_error.handle_exception.>
|
|
101 </then.if.has_exception>
|
|
102 </n.if.is_submitted_form>
|
|
103 </macro> |