]> git.wh0rd.org - tt-rss.git/blame - include/login_form.php
reinstate scriptaculous controls (needed for ajax.autocomplete)
[tt-rss.git] / include / login_form.php
CommitLineData
67e0cf9a 1<?php startup_gettext(); ?>
01a87dff
AD
2<html>
3<head>
4 <title>Tiny Tiny RSS : Login</title>
68535211 5 <link rel="stylesheet" type="text/css" href="lib/dijit/themes/claro/claro.css"/>
5bbc4bb4 6 <link rel="stylesheet" type="text/css" href="css/tt-rss.css">
01a87dff 7 <link rel="shortcut icon" type="image/png" href="images/favicon.png">
01a87dff 8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
675f198a 9 <script type="text/javascript" src="lib/dojo/dojo.js"></script>
675f198a 10 <script type="text/javascript" src="lib/dojo/tt-rss-layer.js"></script>
fe7537b5 11 <script type="text/javascript" src="lib/prototype.js"></script>
c4c74732 12 <script type="text/javascript" src="js/functions.js"></script>
68535211 13 <script type="text/javascript" charset="utf-8" src="errors.php?mode=js"></script>
675f198a 14 <script type="text/javascript">
44bf49d4 15 require({cache:{}});
675f198a
AD
16 Event.observe(window, 'load', function() {
17 init();
18 });
19 </script>
20 <style type="text/css">
21 body#ttrssLogin {
22 padding : 2em;
23 font-size : 14px;
24 }
01a87dff 25
675f198a
AD
26 fieldset {
27 margin-left : auto;
28 margin-right : auto;
29 display : block;
30 width : 400px;
31 border-width : 0px;
32 }
01a87dff 33
c82c2aa4
AD
34 input.input {
35 font-family : sans-serif;
36 font-size : medium;
37 border-spacing : 2px;
38 border : 1px solid #b5bcc7;
39 padding : 2px;
40 }
41
675f198a
AD
42 label {
43 width : 120px;
44 margin-right : 20px;
45 display : inline-block;
46 text-align : right;
47 color : gray;
48 }
01a87dff 49
675f198a
AD
50 div.header {
51 border-width : 0px 0px 1px 0px;
52 border-style : solid;
53 border-color : #88b0f0;
54 margin-bottom : 1em;
55 padding-bottom : 5px;
56 }
68535211 57
675f198a
AD
58 div.footer {
59 margin-top : 1em;
60 padding-top : 5px;
61 border-width : 1px 0px 0px 0px;
62 border-style : solid;
63 border-color : #88b0f0;
64 text-align : center;
65 color : gray;
66 font-size : 12px;
67 }
68535211 68
f43e9e97
AD
69 a.forgotpass {
70 text-align : right;
71 font-size : 11px;
72 display : inline-block;
73 }
74
75 a {
76 color : #4684ff;
77 }
78
79 a:hover {
80 color : black;
81 }
82
675f198a
AD
83 div.footer a {
84 color : gray;
68535211
AD
85 }
86
675f198a
AD
87 div.footer a:hover {
88 color : #88b0f0;
89 }
a598370d 90
675f198a
AD
91 div.row {
92 padding : 0px 0px 5px 0px;
a598370d 93 }
eeee2ccf
AD
94
95 div.row-error {
96 color : red;
97 text-align : center;
98 padding : 0px 0px 5px 0px;
99 }
100
675f198a
AD
101 </style>
102</head>
a598370d 103
675f198a
AD
104<body id="ttrssLogin" class="claro">
105
106<script type="text/javascript">
107function init() {
675f198a 108
44bf49d4 109 require(['dojo/parser','dijit/form/Button','dijit/form/CheckBox','dijit/form/Form',
110 'dijit/form/Select','dijit/form/TextBox','dijit/form/ValidationTextBox'],function(parser){
111 parser.parse();
67e0cf9a 112 //show tooltip node only after this widget is instaniated.
44bf49d4 113 dojo.query('div[dojoType="dijit.Tooltip"]').style({
114 display:''
115 });
116 fetchProfiles();
117 dijit.byId("bw_limit").attr("checked", getCookie("ttrss_bwlimit") == 'true');
118 document.forms.loginForm.login.focus();
67e0cf9a 119 });
97acbaf1 120
01a87dff 121}
0456176a 122
d9084cf2
AD
123function fetchProfiles() {
124 try {
8f2ad8e1 125 var query = "op=getProfiles&login=" + param_escape(document.forms["loginForm"].login.value);
7b26a148 126
d9084cf2 127 if (query) {
5334e1ec 128 new Ajax.Request("public.php", {
d9084cf2 129 parameters: query,
97acbaf1
AD
130 onComplete: function(transport) {
131 if (transport.responseText.match("select")) {
132 $('profile_box').innerHTML = transport.responseText;
675f198a 133 dojo.parser.parse('profile_box');
97acbaf1
AD
134 }
135 } });
d9084cf2
AD
136 }
137
138 } catch (e) {
139 exception_error("fetchProfiles", e);
140 }
141}
142
143
0136468d
AD
144function gotoRegForm() {
145 window.location.href = "register.php";
146 return false;
147}
148
a598370d
AD
149function bwLimitChange(elem) {
150 try {
151 var limit_set = elem.checked;
152
7b26a148 153 setCookie("ttrss_bwlimit", limit_set,
a598370d
AD
154 <?php print SESSION_COOKIE_LIFETIME ?>);
155
156 } catch (e) {
157 exception_error("bwLimitChange", e);
158 }
159}
675f198a 160</script>
a598370d 161
675f198a 162<?php $return = urlencode($_SERVER["REQUEST_URI"]) ?>
ec6b7ada 163
675f198a
AD
164<form action="public.php?return=<?php echo $return ?>"
165 dojoType="dijit.form.Form" method="POST" id="loginForm" name="loginForm">
ec6b7ada 166
675f198a 167<input dojoType="dijit.form.TextBox" style="display : none" name="op" value="login">
ec6b7ada 168
675f198a
AD
169<div class='header'>
170 <img src="images/logo_wide.png">
171</div>
a0b9990a 172
675f198a 173<div class='form'>
01a87dff 174
675f198a 175 <fieldset>
eeee2ccf
AD
176 <?php if ($_SESSION["login_error_msg"]) { ?>
177 <div class="row-error">
178 <?php echo $_SESSION["login_error_msg"] ?>
179 </div>
180 <?php $_SESSION["login_error_msg"] = ""; ?>
181 <?php } ?>
675f198a
AD
182 <div class="row">
183 <label><?php echo __("Login:") ?></label>
c82c2aa4 184 <input name="login" class="input"
97acbaf1 185 onchange="fetchProfiles()" onfocus="fetchProfiles()" onblur="fetchProfiles()"
eeee2ccf 186 style="width : 220px"
c82c2aa4 187 required="1"
675f198a
AD
188 value="<?php echo $_SESSION["fake_login"] ?>" />
189 </div>
190
3921f508 191
675f198a
AD
192 <div class="row">
193 <label><?php echo __("Password:") ?></label>
c82c2aa4
AD
194 <input type="password" name="password" required="1"
195 style="width : 220px" class="input"
675f198a 196 value="<?php echo $_SESSION["fake_password"] ?>"/>
f43e9e97 197 <label></label>
13db181d 198 <?php if (strpos(PLUGINS, "auth_internal") !== FALSE) { ?>
f43e9e97 199 <a class='forgotpass' href="public.php?op=forgotpass"><?php echo __("I forgot my password") ?></a>
13db181d 200 <?php } ?>
675f198a
AD
201 </div>
202
3921f508 203
675f198a
AD
204 <div class="row">
205 <label><?php echo __("Profile:") ?></label>
d9084cf2 206
eeee2ccf
AD
207 <span id='profile_box'><select disabled='disabled' dojoType='dijit.form.Select'
208 style='width : 220px; margin : 0px'>
675f198a 209 <option><?php echo __("Default profile") ?></option></select></span>
d9084cf2 210
675f198a 211 </div>
4fc1580a 212
675f198a
AD
213 <div class="row">
214 <label>&nbsp;</label>
215 <input dojoType="dijit.form.CheckBox" name="bw_limit" id="bw_limit" type="checkbox"
216 onchange="bwLimitChange(this)">
a62337b3
AD
217 <label id="bw_limit_label" style='display : inline' for="bw_limit"><?php echo __("Use less traffic") ?></label>
218 </div>
219
44bf49d4 220 <div dojoType="dijit.Tooltip" connectId="bw_limit_label" position="below" style="display:none">
a62337b3 221<?php echo __("Does not display images in articles, reduces automatic refreshes."); ?>
675f198a
AD
222 </div>
223
aadd636a 224 <?php if (SESSION_COOKIE_LIFETIME > 0) { ?>
f231f438
AD
225
226 <div class="row">
227 <label>&nbsp;</label>
228 <input dojoType="dijit.form.CheckBox" name="remember_me" id="remember_me" type="checkbox">
229 <label style='display : inline' for="remember_me"><?php echo __("Remember me") ?></label>
230 </div>
231
232 <?php } ?>
233
675f198a
AD
234 <div class="row" style='text-align : right'>
235 <button dojoType="dijit.form.Button" type="submit"><?php echo __('Log in') ?></button>
4f7956b3 236 <?php if (defined('ENABLE_REGISTRATION') && ENABLE_REGISTRATION) { ?>
675f198a 237 <button onclick="return gotoRegForm()" dojoType="dijit.form.Button">
2ec990ab 238 <?php echo __("Create new account") ?></button>
4fc1580a 239 <?php } ?>
675f198a 240 </div>
4fc1580a 241
675f198a 242 </fieldset>
a598370d 243
a598370d 244
675f198a 245</div>
a598370d 246
675f198a 247<div class='footer'>
ce72cb95 248 <a href="http://tt-rss.org/">Tiny Tiny RSS</a>
ce72cb95 249 &copy; 2005&ndash;<?php echo date('Y') ?> <a href="http://fakecake.org/">Andrew Dolgov</a>
675f198a 250</div>
01a87dff
AD
251
252</form>
253
5a68dec1 254</body></html>