RSS Git Download  Clone
Raw Blame History
    [% META title = 'Login' %]
<!-- BEGIN [% template.name %] -->
    [%
        # INCLUDE dumper.tt dump = c.cfg('settings');
        IF user_profile; # INCLUDE dumper.tt dump = user_profile;
            username = c.query.url.match(8080) AND NOT env.DB_SESSIONS
                ? user_profile.username
                : user_profile.first_name _ '.' _ user_profile.last_name;
        END;
    %]
    
    [% BLOCK logout_msg %]
        <p>
            <span class="info">
            [% IF username %]
                You are logged in as <b>[% username %]</b>
            [% ELSE %]
                You are already logged in
            [% END %]
            </span>
            [ <a href="[% app_url %]/logout">logout</a> ]
        </p>
    [% END %]
    
    [% IF c.authen.username; INCLUDE logout_msg; # already logged in %]
    [% ELSIF c.cfg('settings').offline %]
        <p class="warning">Logins temporarily disabled during essential maintenance.
            Please try again in a few minutes ....</p>
    [% ELSE %]
        [% SET destination = c.query.param('destination') || destination_url %]

        [% IF c.authen.login_attempts %]
			<p class="error">
                Login failed (login attempt [% c.authen.login_attempts %])
            </p>
			<div class="bold">Possible reasons:</div>
			<div class="indent">- invalid username / password</div>
			<div class="indent">- expired user account</div>
			<p>If you have previously registered for a user account, please
				reset your password below. Otherwise, you can apply for one
				<a href="/">here</a>.
			</p>
        [% ELSIF c.authen.is_login_timeout; INCLUDE logout_msg; %]
            <div class="warning indent">
                Idle timeout - please re-enter your login details:
            </div>
        [% ELSE %]
			<div class="message">Please enter your login details:</div>
        [% END %]

        <script type="text/javascript">
            function closeMe() {
                window.open('','_parent','');
                window.close();
            }
        </script>
	
        [% # PROCESS dumper.tt dump = c.stash.REMOTE_ADDR # test Apache mod_rpaf working %]
        [% # PROCESS dumper.tt dump = CAP_Messages %]
	
        <!-- Login form -->
        <form method="post" action="[% app_url %]" id="login_form" name="login_form"
               autocomplete="off">
            <input type="hidden" name="destination" value="[% destination %]" />
            <input type="hidden" name="access_token"
                value="[% c.query.param('access_token') %]" />
            
            <input type="hidden" name="rm" value="authen_login" />
    
            <table class="indent" id="login_form">
                <tr>
                    <td><b>Username</b>:</td>
                    <td>
                        <input type="text" size="20" name="authen_username"
                            [% IF c.authen.is_login_timeout %]
                               value="[% username %]" [% site.html.readonly %]
                            [% END %] id="authen_loginfield" />
                    </td>
                </tr>
                <tr>
                    <td><b>Password</b>:</td>
                    <td>
                        <input type="password" id="authen_passwordfield"
                            name="authen_password" size="20" />
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="right">
                        [% site.html.submit %]
                        <!--[if IE]>
                        <input type="button" name="Close" value="Close"
                            onclick="closeMe()" />
                        <![endif]-->
                    </td>
                </tr>
            </table>
    
            <p id="result" style="color: #f00"></p>
        </form>

        <script type="text/javascript">
            function log(msg){
                document.getElementById('result').innerHTML = msg;
            }
            document.getElementById('authen_passwordfield').onkeypress = function(e){
                if(isCapslock(e)){
                    log("WARNING: CAPS LOCK IS ON");
                }
                else {
                    log("");
                }
            }
        </script>
    
        [% PROCESS site/toggle.tt link = 'Forgotten my password' %]
    
        <div style="padding: 10px">
            <p>
                <a href="javascript:toggleview('form','toggleform')"
                   id="toggleform">[% link %]</a>
            </p>
        </div>

        [%
            DEFAULT forgotten_pwd_class = 'itemhidden'; # overridden below
            msg = CAP_Messages.0; # if failure msg set in User::password_change()
            IF msg.class == 'email_address'; # PROCESS dumper.tt dump = msg;
                email_address = msg.message; 
                forgotten_pwd_class = 'itemvisible'; # override default so it shows
        %]
            <p class="error">[% c.messages('login').email_not_found %]</p>		
        [% END %]

        <div class="[% forgotten_pwd_class %]" id="form">
            <form method="post" action="[% app_url %]/user/password_change"
                name="forgotten_pwd" id="forgotten_pwd">
                <p class="title">
                    Enter your email address:
                    <input type="text" id="email_address" name="email_address"
                        size="40" value="[% email_address %]" />
                    <input type="hidden" name="access_token"
                        value="[% c.query.param('access_token') %]" />
                    [% site.html.submit %]
                </p>
                <p>
                [% UNLESS email_address %]
                    Your password will be reset and a new one e-mailed to you.
                [% END %]
                </p>
            </form>
        </div>
	[% END %]

	[% IF limerick AND ( c.cfg('settings').offline OR devel_server );
        INCLUDE site/limerick.tt; END %]
	
	<div align="right">
        <!--<a href="http://cgi-app.org/" style="background-color: #fff; text-decoration: none">-->
            <img style="border: none" src="/images/titanium_logo.png"
                alt="powered by Titanium" />
        <!-- Start Trustico Site Seal Tag. Do Not Edit. --><!-- // don't need it
        <a target="_blank" href="http://www.trustico.co.uk/?seal=quickssl">
            <img alt="Secured By QuickSSL and Trustico"
                title="Secured By QuickSSL and Trustico"
                src="https://secure.trustico.com/quickssl/quickssl-115x55.gif"
                width="115" height="55" border="0">
        </a> -->
        <!-- End Trustico Site Seal Tag -->
	</div>

    [% # set 'active' textbox - contains cursor:
        active = c.authen.is_login_timeout ? 'authen_password' : 'authen_username';
        PROCESS site/field_focus.tt form_name = 'login_form', field_name = active;
    %]
<!-- END [% template.name %] -->