  <!--
    * 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.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Login</title>

 <script type="text/javascript" src="js/login.js"></script>

<style type="text/css">
    #container {
      padding: 1em;      
    }
    
    #container p {
      font-size: 1.2em;
      font-family: Tahoma,Verdana;
    }
    
    #openid_identifier {
      background-image: url(images/openid.ico);
      background-position: 3px 2px;
      background-repeat: no-repeat;
      margin: 0;
      padding: 0.2em 0.2em 0.2em 20px;
      vertical-align: middle;
      width: 400px;
    }
</style>
</head>
<body onload="initOpenIDPage();">
<div id="container">
  <div style="float:right;width:50%;font-size:0.8em;text-align:right;">
     <div><span><a href="../">Gallery</a></span></div>
  </div>
  <div style="clear:both"></div>
   <div style="color:red;font-size:1.4em">&nbsp; Your openid could not be resolved.</div>
  <p>Login with your <span style="color:orange">openid</span></p>
  <form method="POST">
    <input id="openid_identifier" name="openid_identifier" type="text" size=80/>
    <input class="btn" type="submit" value="send"/>
  </form>
  <br>
   <div style="float:left;font-size:0.8em;text-align:left;">
   <div id="provider_space" style="width:430px"></div>
     
  <!-- <p><span style="color:green;font-size:1em">https://www.google.com/accounts/o8/id</span><span> for google accounts</span></p>
  <p>or enter <span style="color:green;font-size:1em">your_username@gmail.com</span></p> -->
  </div>
 
  </div>
</body>
</html>
  