fix bug d'include de javascript lorsqu'on essaie de se logger depuis des pages comme...
[platal.git] / templates / javascript / do_challenge_response_logged.js.tpl
1 /***************************************************************************
2  *  Copyright (C) 2003-2006 Polytechnique.org                              *
3  *  http://opensource.polytechnique.org/                                   *
4  *                                                                         *
5  *  This program is free software; you can redistribute it and/or modify   *
6  *  it under the terms of the GNU General Public License as published by   *
7  *  the Free Software Foundation; either version 2 of the License, or      *
8  *  (at your option) any later version.                                    *
9  *                                                                         *
10  *  This program is distributed in the hope that it will be useful,        *
11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of         *
12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
13  *  GNU General Public License for more details.                           *
14  *                                                                         *
15  *  You should have received a copy of the GNU General Public License      *
16  *  along with this program; if not, write to the Free Software            *
17  *  Foundation, Inc.,                                                      *
18  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
19  ***************************************************************************/
20
21 document.write('<script language="javascript" src="{rel}/javascript/secure_hash.js.php"></script>');
22
23 {literal}
24 function readCookie(name)
25 {
26     var nameEQ = name + "=";
27     var ca = document.cookie.split(';');
28     for(var i=0;i < ca.length;i++)
29     {
30         var c = ca[i];
31         while (c.charAt(0)==' ') c = c.substring(1,c.length);
32         if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
33     }
34     return null;
35 }
36
37
38 function doChallengeResponse() {
39     var new_pass = hash_encrypt(document.forms.login.password.value);
40     var old_pass = MD5(document.forms.login.password.value);
41     
42     str = readCookie('ORGuid') + ":" +
43         hash_encrypt(document.forms.login.password.value) + ":" +
44         document.forms.loginsub.challenge.value;
45
46     document.forms.loginsub.response.value = hash_encrypt(str);
47     document.forms.loginsub.xorpass.value = hash_xor(new_pass, old_pass);
48     document.forms.loginsub.remember.value = document.forms.login.remember.checked;
49     document.forms.login.password.value = "";
50     document.forms.loginsub.submit();
51 }
52 {/literal}