<!DOCTYPE html>
<html dir="ltr" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>GitHub plugin for Gerrit Code Review - Account review</title>
#include ("static/styles.html")
#include ("static/scripts.html")
</head>
<body>
	<div class="header">
		<div>
		    <div class="center">
            #include ("static/header.html")
				<div class="page-title">
					<div>
						<h2>
							Account profile
						</h2>
                        <div class="right">
                          <button type="button" onclick="window.location='/'"
                              id="cancel">
                              <span class="button"><span>Cancel</span></span>
                          </button>
                          <button type="submit" onclick="document.forms[0].submit()">
                              <span class="button green"><span>Accept &gt;</span></span>
                          </button>
                          <input type="hidden" name="next" value="$nextUrl" />
                        </div>
					</div>
				</div>
			</div>
		</div>
	</div>
	<!--div.header end -->

	<!--div.container start -->
	<div class="container">
		<div class="center">
			<form class="signupform" method="post" action="account.gh">
				<h5>
					GitHub account details
				</h5>
				<ul>
					<li><label for="username">Username:</label> <input
						maxlength="50" id="username" name="username" type="text"
						value="$myself.login" readonly="readonly" />
					</li>

					<li><label for="lastName">Full name:</label> <input
						maxlength="50" id="fullname" name="fullname" type="text"
						value="$myself.name" readonly="readonly" /></li>

					<li><label for="eMail">e-Mail:</label> 
							<input maxlength="50" value="$myself.email" type="text" name="email" readonly="readonly" /></li>
				</ul>

				<h5>Import GitHub SSH Public Keys</h5>
				<ul>
				#foreach ( $key in $myself.publicKeys )
					#if ( $key.key.length() > 45 )
						<li> <label for="$key.title" style="font-weight: bold;">$key.title :</label> 
							#set ( $trailStart = $key.key.length() - 10 )
							<textarea
								class="keyvalue" rows="1" cols="80" readonly="readonly">$key.key.substring(1,35) ... $key.key.substring($trailStart).trim()</textarea>
							<input class="keycheckbox" type="checkbox"
									name="key_check_$key.id" checked="checked" />
						</li>
					#end
                #end
				</ul>
			</form>
		</div>
	</div>
    <!--div.container end -->

    #include ("static/footer.html")

	<script type='text/javascript' src='js/jquery/jquery.form.js?ver=2.02m'></script>
</body>
</html>