<!DOCTYPE html>
<html lang="en">
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
-->
    <head>
        <meta charset="utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>Login to Apache Sling</title>
        <link href="../../../content/starter/css/bundle.css" rel="stylesheet" />
    </head>
    <body>
        <div class="Grid Fit-Medium Home-Grid">
            <div class="Gradient"></div>
            <header class="Cell Medium-35 Large-25 Align-Center Logos">
                <a href="https://sling.apache.org" target="_blank" rel="noopener" id="sling-logo" title="Visit the Apache Sling website">
                    <img src="../../../content/starter/img/sling-logo.svg" alt="Apache Sling Logo"/>
                </a>
                <a href="https://apache.org" target="_blank" rel="noopener" id="asf-logo" title="Visit the Apache Software Foundation website">
                    <img src="../../../content/starter/img/asf-logo.svg" alt="Apache Software Foundation Logo"/>
                </a>
            </header>
            <div class="Cell Align-Center Main-Content">
                <div class="Grid">
                    <section class="Cell Medium-35">
                    	<h3>Login:</h3>
						<form id="loginform" method="POST" action="${contextPath}/j_security_check" enctype="multipart/form-data" accept-charset="UTF-8">
							<input type="hidden" name="_charset_" value="UTF-8" />
							<input type="hidden" name="resource" value="${resource}" />
							<div id="error">
								<p>${j_reason}</p>
							</div>
							<div>
								<label for="j_username" >Username:</label>
							</div>
							<div>
								<input id="j_username" name="j_username" type="text" autofocus/>
							</div>
							<div>
								<label for="j_password" accesskey="p">Password:</label>
							</div>
							<div>
								<input id="j_password" name="j_password" type="password" />
							</div>
							<div class="buttongroup">
								<button id="login" class="form-button" type="submit">Login</button>
							</div>
						</form>
                    </section>
                    <div class="Cell Medium-65">
                    </div>
                </div>
            </div>
        </div>
    </body>
</html>
