Include site header, footer and CSS on OpenID login form
Bug: issue 1879 Change-Id: I1c583e01433d09627ac845288cd67db35029ae58
This commit is contained in:
@@ -23,6 +23,7 @@ import com.google.gerrit.common.PageLinks;
|
||||
import com.google.gerrit.common.auth.openid.OpenIdUrls;
|
||||
import com.google.gerrit.extensions.restapi.Url;
|
||||
import com.google.gerrit.httpd.HtmlDomUtil;
|
||||
import com.google.gerrit.httpd.template.SiteHeaderFooter;
|
||||
import com.google.gerrit.reviewdb.client.AuthType;
|
||||
import com.google.gerrit.server.config.AuthConfig;
|
||||
import com.google.gerrit.server.config.CanonicalWebUrl;
|
||||
@@ -62,15 +63,18 @@ class LoginForm extends HttpServlet {
|
||||
private final OpenIdServiceImpl impl;
|
||||
private final int maxRedirectUrlLength;
|
||||
private final String ssoUrl;
|
||||
private final SiteHeaderFooter header;
|
||||
|
||||
@Inject
|
||||
LoginForm(
|
||||
@CanonicalWebUrl @Nullable Provider<String> urlProvider,
|
||||
@GerritServerConfig Config config,
|
||||
AuthConfig authConfig,
|
||||
OpenIdServiceImpl impl) {
|
||||
OpenIdServiceImpl impl,
|
||||
SiteHeaderFooter header) {
|
||||
this.urlProvider = urlProvider;
|
||||
this.impl = impl;
|
||||
this.header = header;
|
||||
this.maxRedirectUrlLength = config.getInt(
|
||||
"openid", "maxRedirectUrlLength",
|
||||
10);
|
||||
@@ -231,7 +235,7 @@ class LoginForm extends HttpServlet {
|
||||
cancel += "#" + token;
|
||||
}
|
||||
|
||||
Document doc = HtmlDomUtil.parseFile(LoginForm.class, "LoginForm.html");
|
||||
Document doc = header.parse(LoginForm.class, "LoginForm.html");
|
||||
HtmlDomUtil.find(doc, "hostName").setTextContent(req.getServerName());
|
||||
HtmlDomUtil.find(doc, "login_form").setAttribute("action", self);
|
||||
HtmlDomUtil.find(doc, "cancel_link").setAttribute("href", cancel);
|
||||
|
||||
@@ -27,50 +27,58 @@
|
||||
background: #fff url('data:image/gif;base64,R0lGODlhEAAQAMQAAO3t7eHh4srKyvz8/P5pDP9rENLS0v/28P/17tXV1dHEvPDw8M3Nzfn5+d3d3f5jA97Syvnv6MfLzcfHx/1mCPx4Kc/S1Pf189C+tP+xgv/k1N3OxfHy9NLV1/39/f///yH5BAAAAAAALAAAAAAQABAAAAVq4CeOZGme6KhlSDoexdO6H0IUR+otwUYRkMDCUwIYJhLFTyGZJACAwQcgEAQ4kVuEE2AIGAOPQQAQwXCfS8KQGAwMjIYIUSi03B7iJ+AcnmclHg4TAh0QDzIpCw4WGBUZeikDFzk0lpcjIQA7') no-repeat scroll 5px 50%
|
||||
}
|
||||
</style>
|
||||
<style id="gerrit_sitecss" type="text/css"></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Sign In to Gerrit Code Review at <span id="hostName">example.com</span></h1>
|
||||
<form method="POST" action="#" id="login_form">
|
||||
<input type="hidden" name="link" id="f_link" value="1" />
|
||||
<div id="logo_box"><div id="logo_img"></div></div>
|
||||
<div id="error_message">Invalid OpenID identifier.</div>
|
||||
<div>
|
||||
<input type="text"
|
||||
name="id"
|
||||
id="f_openid"
|
||||
size="60"
|
||||
tabindex="1" />
|
||||
</div>
|
||||
<div>
|
||||
<input name="rememberme" id="f_remember"
|
||||
type="checkbox"
|
||||
value="1"
|
||||
tabindex="2" />
|
||||
<label for="f_remember">Remember me</label>
|
||||
</div>
|
||||
<div style="margin-bottom: 25px;">
|
||||
<input type="submit" value="Sign In" id="f_submit" tabindex="3" />
|
||||
<a href="../" id="cancel_link">Cancel</a>
|
||||
</div>
|
||||
<div id="gerrit_topmenu" style="height:45px;" class="gerritTopMenu"></div>
|
||||
<div id="gerrit_header"></div>
|
||||
<div id="gerrit_body" class="gerritBody">
|
||||
<h1>Sign In to Gerrit Code Review at <span id="hostName">example.com</span></h1>
|
||||
<form method="POST" action="#" id="login_form">
|
||||
<input type="hidden" name="link" id="f_link" value="1" />
|
||||
<div id="logo_box"><div id="logo_img"></div></div>
|
||||
<div id="error_message">Invalid OpenID identifier.</div>
|
||||
<div>
|
||||
<input type="text"
|
||||
name="id"
|
||||
id="f_openid"
|
||||
size="60"
|
||||
tabindex="1" />
|
||||
</div>
|
||||
<div>
|
||||
<input name="rememberme" id="f_remember"
|
||||
type="checkbox"
|
||||
value="1"
|
||||
tabindex="2" />
|
||||
<label for="f_remember">Remember me</label>
|
||||
</div>
|
||||
<div style="margin-bottom: 25px;">
|
||||
<input type="submit" value="Sign In" id="f_submit" tabindex="3" />
|
||||
<a href="../" id="cancel_link">Cancel</a>
|
||||
</div>
|
||||
|
||||
<div id="provider_google">
|
||||
<img height="16" width="16" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABsUlEQVR42rWSy0sbYRRH88fYhW5KQXThIkUQN6ISJFBBW6FFBN2UqlC78LVKFlHIoqWGakF8gUZ8gajVzKSKZpQmAWtK0pBmhkxmSgPuiuaYmRKhSEwU/ODyDZfzO8ydOxbLQx1NB0H4y8FBlmMpy9LyOavrKUoKB4IXvBsIIopRPJ441dY/2Fr8fAtFSxO0dkRy4eA1PDp+TkVlmGhMKS5IJOFpbYgj6fQalhV4UhVm0esvLojELimv1JiYOPwPflS2gM93WNoIXZ1nPC4/IRDQzYDTqTA0PM2dtuCZ8vGmV6SvP5srL/da5c+4TnNLFlvTMYmEVrpkazuM2x1naOQ7Dc1fqLOmaayXkaSz4hLHewm7fY+Z2R0iP+JmYGpym/q6DDb76u0CwR+g9+0FHz4u3wAdLh9VNWu5UX4VlqysfaXRDoODNz+aw7nDs9ZPpNPpwgJV1WhvF6m1/qb79T6fpwXm5kVGRnd5/mIdQSzwH2iahq7/27nxiq5xLy9fbdDWsUtPzyausRVC4VMMzmAMNv9syTdkWTZLVVUymYx5J5NJs5dKpVAUxaw8Z/SM7BV+fz9Uc4yYRAAAAABJRU5ErkJggg==" />
|
||||
<a href="?id=https://www.google.com/accounts/o8/id" id="id_google">Sign in with a Google Account</a>
|
||||
</div>
|
||||
<div id="provider_yahoo">
|
||||
<img height="16" width="16" src="data:image/gif;base64,R0lGODlhEAAQAPECAAAAAP8AAP///8zMzCH5BAEAAAMALAAAAAAQABAAAAIqnI+py30BY3AgAjCkfJDjiIAQlgUkNxqWkqrm0honKk7KhZOzw/f+fygAADs=" />
|
||||
<a href="?id=https://me.yahoo.com" id="id_yahoo">Sign in with a Yahoo! ID</a>
|
||||
</div>
|
||||
<div id="provider_google">
|
||||
<img height="16" width="16" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABsUlEQVR42rWSy0sbYRRH88fYhW5KQXThIkUQN6ISJFBBW6FFBN2UqlC78LVKFlHIoqWGakF8gUZ8gajVzKSKZpQmAWtK0pBmhkxmSgPuiuaYmRKhSEwU/ODyDZfzO8ydOxbLQx1NB0H4y8FBlmMpy9LyOavrKUoKB4IXvBsIIopRPJ441dY/2Fr8fAtFSxO0dkRy4eA1PDp+TkVlmGhMKS5IJOFpbYgj6fQalhV4UhVm0esvLojELimv1JiYOPwPflS2gM93WNoIXZ1nPC4/IRDQzYDTqTA0PM2dtuCZ8vGmV6SvP5srL/da5c+4TnNLFlvTMYmEVrpkazuM2x1naOQ7Dc1fqLOmaayXkaSz4hLHewm7fY+Z2R0iP+JmYGpym/q6DDb76u0CwR+g9+0FHz4u3wAdLh9VNWu5UX4VlqysfaXRDoODNz+aw7nDs9ZPpNPpwgJV1WhvF6m1/qb79T6fpwXm5kVGRnd5/mIdQSzwH2iahq7/27nxiq5xLy9fbdDWsUtPzyausRVC4VMMzmAMNv9syTdkWTZLVVUymYx5J5NJs5dKpVAUxaw8Z/SM7BV+fz9Uc4yYRAAAAABJRU5ErkJggg==" />
|
||||
<a href="?id=https://www.google.com/accounts/o8/id" id="id_google">Sign in with a Google Account</a>
|
||||
</div>
|
||||
<div id="provider_yahoo">
|
||||
<img height="16" width="16" src="data:image/gif;base64,R0lGODlhEAAQAPECAAAAAP8AAP///8zMzCH5BAEAAAMALAAAAAAQABAAAAIqnI+py30BY3AgAjCkfJDjiIAQlgUkNxqWkqrm0honKk7KhZOzw/f+fygAADs=" />
|
||||
<a href="?id=https://me.yahoo.com" id="id_yahoo">Sign in with a Yahoo! ID</a>
|
||||
</div>
|
||||
|
||||
<div style="margin-top: 25px;">
|
||||
<h2>What is OpenID?</h2>
|
||||
<p>OpenID provides secure single-sign-on, without revealing your passwords to this website.</p>
|
||||
<p>There are many OpenID providers available. You may already be member of one!</p>
|
||||
<p><a href="http://openid.net/get/" target="_blank">Get OpenID</a></p>
|
||||
</div>
|
||||
</form>
|
||||
<div style="margin-top: 25px;">
|
||||
<h2>What is OpenID?</h2>
|
||||
<p>OpenID provides secure single-sign-on, without revealing your passwords to this website.</p>
|
||||
<p>There are many OpenID providers available. You may already be member of one!</p>
|
||||
<p><a href="http://openid.net/get/" target="_blank">Get OpenID</a></p>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div style="clear: both; margin-top: 15px; padding-top: 2px; margin-bottom: 15px;">
|
||||
<div id="gerrit_footer"></div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" language="javascript">
|
||||
<script type="text/javascript">
|
||||
var f_openid = document.getElementById('f_openid');
|
||||
var f_submit = document.getElementById('f_submit');
|
||||
if (f_openid.value == '')
|
||||
|
||||
Reference in New Issue
Block a user