user_profile.naml

<macro name="user_profile" requires="servlet">
	<n.visitor.as_user_page.>
		<n.if.not.page_user.is_authenticated>
			<then>
				<n.login.><t>You must login to view this page.</t></n.login.>
			</then>
		</n.if.not.page_user.is_authenticated>
		<n.html>
			<head>
				<META NAME="robots" CONTENT="noindex,nofollow"/>
				<n.title.>Profile of <n.visitor.name/></n.title.>
				<n.zebra_table_javascript table_selector="table.profile"/>
			</head>
			<body>
				<n.page_user.profile_header/>
				<n.profile_options/>
			</body>
		</n.html>
	</n.visitor.as_user_page.>
</macro>

<macro name="profile_options">
	<n.put_in_head.>
		<style type="text/css">
			table.profile {
				border-collapse:collapse;
				width:100%;
				margin-top:.5em;
			}
			table.profile td {
				padding:.7em .3em;
			}
			table.profile td.title-row {
				background: transparent;
				padding:.2em .4em;
				border-bottom-width:2px;
				border-bottom-style:solid;
				font-weight:bold;
			}
		</style>
	</n.put_in_head.>
	<table class="profile">
		<n.profile_table_header.>
			<t>Account Settings</t>
		</n.profile_table_header.>

		<n.profile_option>
			<link><a href="[n.visitor.edit_profile_path/]"><t>Edit Personal Information</t></a></link>
			<hint><t>Change your registered email address, password, and your user name.</t></hint>
		</n.profile_option>

		<n.profile_option>
			<link><a href="[n.visitor.edit_signature_path/]"><t>Edit Your Signature</t></a></link>
			<hint><t>Change the signature text that is displayed at the bottom of your posts.</t></hint>
		</n.profile_option>

		<n.profile_option>
			<link><a href="[n.visitor.change_avatar_path/]"><t>Change Your Picture</t></a></link>
			<hint><t>Change or remove your avatar image.</t></hint>
		</n.profile_option>

		<n.profile_option>
			<link><a href="[n.visitor.advanced_settings_path/]"><t>Advanced Settings</t></a></link>
			<hint><t>Change viewing preferences and other settings.</t></hint>
		</n.profile_option>

		<n.profile_option>
			<link><a href="[n.visitor.remove_account_path/]"><t>Remove Your Account</t></a></link>
			<hint><t>Remove your account and all your posts from <t.subject><n.root_node.subject/></t.subject>.</t></hint>
		</n.profile_option>
	</table>
</macro>

<macro name="profile_table_header" dot_parameter="text">
	<tr>
		<td class="title-row medium-border-color" colspan="2">
			<n.text/>
		</td>
	</tr>
</macro>

<macro name="profile_option" parameters="link, hint">
	<tr>
		<td style="width:14em">
			<n.link/>
		</td>
		<td class="weak-color">
			<n.hint/>
		</td>
	</tr>
</macro>

<macro name="profile_header" requires="user">
	<n.set_local_user.this_user />
	<n.block.>
		<div class="second-font shaded-bg-color rounded" style="font-size:170%;padding:.2em .5em;margin-left:.1em">
			<n.local_user.name/>
		</div>
		<table>
			<tr valign="top">
				<td><n.local_user.avatar size="big"/></td>
				<td style="width:100%;padding-left:.5em">
					<n.if.both condition1="[n.visitor.is_site_admin/]" condition2="[n.local_user.is_authenticated/]">
						<then>
							<strong>Email</strong>: <n.local_user.user_email/>
						</then>
					</n.if.both>

					<n.if.local_user.is_banned>
						<then>
							<n.local_user.banned_label/>
						</then>
						<else>
							<n.local_user.registration_label/>
							<n.local_user.list_current_groups/>
							<n.if.not.local_user.is_deactivated>
								<then.local_user.send_email_to_user_link/>
							</n.if.not.local_user.is_deactivated>
						</else>
					</n.if.local_user.is_banned>

					<!-- If this is the profile of the visitor -->
					<n.if.visitor.equals.local_user>
						<then>
							<!-- if the user is authenticated -->
							<n.if.local_user.is_authenticated>
								<then.local_user.authenticated_self_profile_header/>
								<else>
									<div style="margin-top:.5em">
										<t><n.register_link.>Register now</n.register_link.> if you want to edit your profile, receive posts via email or have access to your global profile.</t>
									</div>
								</else>
							</n.if.local_user.is_authenticated>
						</then>
						<else>
							<n.if.visitor.can_manage_banned_users>
								<then>
									<div style="margin-top:.5em">
										<img src="/images/icon_blocked.png" class="image16" style="margin:0 1px"/>
										<n.if.local_user.is_banned>
											<then><a href="[n.local_user.unban_path/]"><t>Unban this user</t></a></then>
											<else><a href="[n.local_user.ban_path/]"><t>Ban this user</t></a></else>
										</n.if.local_user.is_banned>
									</div>
								</then>
							</n.if.visitor.can_manage_banned_users>
						</else>
					</n.if.visitor.equals.local_user>
				</td>
			</tr>
		</table>
	</n.block.>
</macro>

<macro name="authenticated_self_profile_header" requires="user">
	<!-- Show basic profile links -->
	<n.if.not.equal value1="[n.get_parameter name='macro'/]" value2="user_profile">
		<then>
			<div style="margin-top:.5em">
				<img src="/images/tool.png" align="absmiddle" width="16" height="17" style="margin:0 1px"/>
				<a href="[n.user_profile_path/]"><t>Account Settings</t></a>
			</div>
		</then>
	</n.if.not.equal>

	<div style="margin-top:.5em">
		<img src="/images/forum_sm.png" class="image16" style="margin:0 1px"/>
		<a href="[n.nabble_global_apps_url/]" target="_top"><t>My Nabble Applications</t></a>
	</div>
</macro>

<macro name="banned_label" requires="user">
	<div style="margin-top:.4em">
		<strong><t>Banned User</t></strong>
	</div>
</macro>

<macro name="registration_label" requires="user">
	<div style="margin-top:.4em">
		<n.if.is_registered>
				<then><strong><t>Registered</t></strong>: <n.registration_date.date_only/></then>
				<else><strong><t>Unregistered User</t></strong></else>
		</n.if.is_registered>
	</div>
</macro>

<macro name="list_current_groups" requires="user">
	<!-- List the groups of the user-->
	<n.set_local_user.this_user />
	<div style="margin-top:.4em">
		<strong><t>Groups</t>:</strong>
		<n.local_user.groups.>
			<n.sort/>
			<n.loop.>
				<n.if.has_more_elements>
					<then><n.current_group/>,&nbsp;</then>
					<else><n.current_group/></else>
				</n.if.has_more_elements>
			</n.loop.>
		</n.local_user.groups.>
		<n.if.visitor.is_site_admin>
			<then>
				<div style="margin-top:.3em">
					<img src="/images/user_group.png" align="absmiddle" width="18" height="16"/>
					<a href="[n.local_user.change_user_groups_path/]"><t>Add / Remove Groups</t></a>
					| <a href="[n.local_user.edit_profile_path/]"><t>Edit Profile</t></a>
				</div>
			</then>
		</n.if.visitor.is_site_admin>
	</div>
</macro>

<macro name="send_email_to_user_link" requires="user">
	<n.set_local_user.this_user />
	<!-- If this is not the profile of the visitor AND the user is authenticated -->
	<n.if.both condition1="[n.not.visitor.equals.local_user/]" condition2="[n.local_user.is_authenticated/]">
		<then>
			<div style="margin-top:.5em">
				<img src="/images/mail.png" align="absmiddle" width="18" height="13"/>
				<a href="[n.local_user.send_email_path/]"><t>Send Email to <t.author.local_user.name/></t></a>
			</div>
		</then>
	</n.if.both>
</macro>