anchor.diff:              </c:when>
               <c:otherwise>
                 <div class="feedbackMessage errorMessage">
  -                <fmt:message bundle="${messages}" key="label.login.invalidUsernameOrPassword" />
  +                <fmt:message bundle="${messages}" key="label.login.invalidUsernameOrPassword"/>
                 </div>
               </c:otherwise>
             </c:choose>
           </c:if>
           <c:if test="${param.loginMissing}">
  -         <div class="feedbackMessage errorMessage">
  -           <fmt:message bundle="${messages}" key="label.login.missingUsername" />
  -         </div>
  +          <div class="feedbackMessage errorMessage">
  +            <fmt:message bundle="${messages}" key="label.login.missingUsername"/>
  +          </div>
           </c:if>
           <c:if test="${param.securityError}">
  -         <div class="feedbackMessage errorMessage">
  -           <fmt:message bundle="${messages}" key="label.login.securityError" />
  -         </div>
  +          <div class="feedbackMessage errorMessage">
  +            <fmt:message bundle="${messages}" key="label.login.securityError"/>
  +          </div>
           </c:if>
           <div>
  -          <input  onBlur="return validateUserNameForCommonIssues();" class="login_input type="text" name="user_name" id="username"
  -            placeholder="<fmt:message bundle="${messages}" key="label.login.username" />"/>
  -            <i class="icon-key"></i>
  +          <input onBlur="return validateUserNameForCommonIssues();" class="login_input type=" text" name="user_name" id="username"
  +          placeholder="<fmt:message bundle="${messages}" key="label.login.username"/>"/>
  +          <i class="icon-key"></i>
           </div>
           <div>
             <input class="login_input" type="password" name="user_password" id="password"
  -            placeholder="<fmt:message bundle="${messages}" key="label.login.password" />"/>
  -            <i class="icon-key"></i>
  +                 placeholder="<fmt:message bundle="${messages}" key="label.login.password" />"/>
  +          <i class="icon-key"></i>
           </div>
           <% if (selectedLanguage != null) { %>
  -        <input type="hidden" name="language" id="language" value="<%= selectedLanguage %>" />
  +        <input type="hidden" name="language" id="language" value="<%= selectedLanguage %>"/>
           <% } %>
  -        <input type="hidden" name="requestedUrl" id="requestedUrl" value="${fn:escapeXml(param.requestedUrl == "'<%= fvContext %>'/index.html"?"'<%= fvContext %>'":param.requestedUrl)}" />
  -        <input type="hidden" name="forceAnonymousLogin" id="true" />
  -        <input type="hidden" name="form_submitted_marker" id="form_submitted_marker" />
  +        <input type="hidden" name="requestedUrl" id="requestedUrl" value="${fn:escapeXml(param.requestedUrl == "'<%= fvContext %>'/index.html" ?"'<%= fvContext %>'":param.requestedUrl)}" />
  +        <input type="hidden" name="forceAnonymousLogin" id="true"/>
  +        <input type="hidden" name="form_submitted_marker" id="form_submitted_marker"/>
           <input class="login_button" type="submit" name="Submit"
  -          value="<fmt:message bundle="${messages}" key="label.login.logIn" />" />
  +               value="<fmt:message bundle="${messages}" key="label.login.logIn" />"/>
           <% if (useExternalProviders) {%>
           <div class="loginOptions">
  -          <p><fmt:message bundle="${messages}" key="label.login.loginWithAnotherId" /></p>
  +          <p><fmt:message bundle="${messages}" key="label.login.loginWithAnotherId"/></p>
             <div class="idList">
               <% for (LoginProviderLink provider : providers) { %>
               <div class="idItem">
                 <a href="<%= provider.getLink(request, request.getContextPath() + request.getParameter("requestedUrl")) %>"
  -                style="background-image:url('<%=(context + provider.getIconPath())%>')" title="<%=provider.getDescription()%>"><%=provider.getLabel()%>
  +                 style="background-image:url('<%=(context + provider.getIconPath())%>')" title="<%=provider.getDescription()%>"><%=provider.getLabel()%>
                 </a>
               </div>
               <%}%>
  
positive.code: 
  <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
  <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
  <%
  String productName = Framework.getProperty(Environment.PRODUCT_NAME);
  String productVersion = Framework.getProperty(Environment.PRODUCT_VERSION);
  String testerName = Framework.getProperty("org.nuxeo.ecm.tester.name");
  boolean isTesting = "Nuxeo-Selenium-Tester".equals(testerName);
  String context = request.getContextPath();
  String fvContext = Framework.getProperty("fv.contextPath");
  
  HttpSession httpSession = request.getSession(false);
  if (httpSession!=null && httpSession.getAttribute(NXAuthConstants.USERIDENT_KEY)!=null) {
    response.sendRedirect(context + "/" + LoginScreenHelper.getStartupPagePath());
  }
  
  Locale locale = request.getLocale();
  String selectedLanguage = locale.getLanguage();
  selectedLanguage = Framework.getLocalService(LocaleProvider.class).getLocaleWithDefault(selectedLanguage).getLanguage();
  
  boolean maintenanceMode = AdminStatusHelper.isInstanceInMaintenanceMode();
  String maintenanceMessage = AdminStatusHelper.getMaintenanceMessage();
  
  LoginScreenConfig screenConfig = LoginScreenHelper.getConfig();
  List<LoginProviderLink> providers = screenConfig.getProviders();
  boolean useExternalProviders = providers!=null && providers.size()>0;
  
  // fetch Login Screen config and manage default
  boolean showNews = screenConfig.getDisplayNews();
  String iframeUrl = screenConfig.getNewsIframeUrl();
  
  String backgroundPath = LoginScreenHelper.getValueWithDefault(screenConfig.getBackgroundImage(), context + "/img/login_bg.jpg");
  String bodyBackgroundStyle = LoginScreenHelper.getValueWithDefault(screenConfig.getBodyBackgroundStyle(), "url('" + backgroundPath + "') no-repeat center center fixed #006ead");
  String loginButtonBackgroundColor = LoginScreenHelper.getValueWithDefault(screenConfig.getLoginButtonBackgroundColor(), "#0066ff");
  String loginBoxBackgroundStyle = LoginScreenHelper.getValueWithDefault(screenConfig.getLoginBoxBackgroundStyle(), "none repeat scroll 0 0");
  String footerStyle = LoginScreenHelper.getValueWithDefault(screenConfig.getFooterStyle(), "");
  boolean disableBackgroundSizeCover = Boolean.TRUE.equals(screenConfig.getDisableBackgroundSizeCover());
  String fieldAutocomplete = screenConfig.getFieldAutocomplete() ? "on" : "off";
  
  String logoWidth = LoginScreenHelper.getValueWithDefault(screenConfig.getLogoWidth(), "113");
  String logoHeight = LoginScreenHelper.getValueWithDefault(screenConfig.getLogoHeight(), "20");
  String logoAlt = LoginScreenHelper.getValueWithDefault(screenConfig.getLogoAlt(), "Nuxeo");
  String logoUrl = LoginScreenHelper.getValueWithDefault(screenConfig.getLogoUrl(), context + "/img/login_logo.png");
  String currentYear = new DateTime().toString("Y");
  
  boolean hasVideos = screenConfig.hasVideos();
  String muted = screenConfig.getVideoMuted() ? "muted " : "";
  String loop = screenConfig.getVideoLoop() ? "loop " : "";
  String NUXEO_URL = VirtualHostHelper.getBaseURL(request);
  boolean displayMobileBanner = !"false".equals(request.getParameter("displayMobileBanner"));
  
  String urlWithContext =  fvContext.equals("") ? "" : ( NUXEO_URL + fvContext);
  
  UserManager userManager = Framework.getService(UserManager.class);
  
  boolean isUserLocked = false;
  
  if (userManager != null) {
    String username = request.getParameter("user_name");
  
    if (username != null) {
      try {
        Method lockedMethod = userManager.getClass().getMethod("isUserLocked", String.class);
        isUserLocked = (boolean) lockedMethod.invoke(userManager, username);
      } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
        // we don't really care
      }
    }
  
  }
  request.setAttribute("isUserLocked", isUserLocked ? "true":"false");
  
  %>
  
  <html>
  <%
  if (selectedLanguage != null) { %>
  <fmt:setLocale value="<%= selectedLanguage %>"/>
  <%
  }%>
  <fmt:setBundle basename="messages" var="messages"/>
  
  <head>
  <title><%=productName%></title>
  <link rel="icon" type="image/png" href="<%=context%>/icons/favicon.png" />
  <link rel="shortcut icon" type="image/x-icon" href="<%=context%>/icons/favicon.ico" />
  <script type="text/javascript" src="<%=context%>/scripts/detect_timezone.js"></script>
  <script type="text/javascript" src="<%=context%>/scripts/nxtimezone.js"></script>
  <% if (displayMobileBanner) { %>
  <script type="text/javascript" src="<%=context%>/scripts/mobile-banner.js"></script>
  <% } %>
  <script type="text/javascript">
    nxtz.resetTimeZoneCookieIfNotSet();
  </script>
  
  <meta name="viewport" content="width=device-width, initial-scale=1">
  
    <style type='text/css'>
        body{
          margin:0;
          font-family: Arial, sans-serif;
          color: #101010;
          line-height: 24px;
        }
  
        h1{
          font-weight: 900;
          font-size: 24px;
        }
  
        .container-box{
          border: 1px #010101 solid;
          width: 100%;
          max-width: 650px;
          margin: 15px auto;
          text-align: center;
        }
  
        form.fv-form input{
          border: 1px solid #a9a9a9;
          font-size: 18px;
          margin: 5px;
          padding: 2px;
          width: 300px;
        }
  
        .feedbackMessage{
          text-align:center;
          width:100%;
        }
  
        .login_button{
          text-transform: uppercase;
          background: #b6020e;
          border-radius: 5px;
          padding: 5px;
          color:#fff;
        }
      .buttonLink{
          background-color: #4e4e4e;
          color: #fff;
          padding: 8px 15px;
          border-radius: 10px;
          margin-right: 15px;
          text-decoration: none;
      }
  
      .buttonLink:hover{
          background-color: #4c7784;
      }
      </style>
  
  <script type="text/javascript">
    function validateUserNameForCommonIssues() {
      var usernameFieldInputValue = document.getElementById("username").value;
      var hintMessageBox = document.getElementById("hintMessageJS");
  
  
      // Very simple check for missing @ sign
      if (usernameFieldInputValue != "" && usernameFieldInputValue.indexOf("@") == -1) {
        hintMessageBox.innerHTML = "Remember: In most cases your username will be your email...";
      } else {
        hintMessageBox.innerHTML = "";
      }
  
      return true;
  
    }
  </script>
  </head>
  
  <body>
  
negative.code:         </div>
          <%}%>
        </form>
        <div style="text-align: center;padding: 20px 0 0 25px;margin-top: 20px;border-top:1px solid gray;">
          <a href="<%=urlWithContext%>/register?requestedUrl=<%=fvContext%>/register" class="buttonLink">New to FirstVoices? Register here!</a>
          <a href="<%=urlWithContext%>/forgotpassword?requestedUrl=<%=fvContext%>/forgotpassword" class="buttonLink">Forgot your password?</a>
        </div>
      </div>
    </div>
    <div style="color:#fff;font-weight:bold;background: 0 95% url(<%=NUXEO_URL%>/img/footer-background.png) no-repeat;height:45px;padding-top: 15px;">
      Need help? Feel free to contact us at support@fpcc.ca
    </div>
  
    <!--   Current User = <%=request.getRemoteUser()%> -->
  
  </body>
  </html>
  