summaryrefslogtreecommitdiff
path: root/sql-ledger/bin/mozilla/login.pl
diff options
context:
space:
mode:
Diffstat (limited to 'sql-ledger/bin/mozilla/login.pl')
-rw-r--r--sql-ledger/bin/mozilla/login.pl325
1 files changed, 0 insertions, 325 deletions
diff --git a/sql-ledger/bin/mozilla/login.pl b/sql-ledger/bin/mozilla/login.pl
deleted file mode 100644
index 1cf1f72..0000000
--- a/sql-ledger/bin/mozilla/login.pl
+++ /dev/null
@@ -1,325 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-######################################################################
-#
-# login frontend
-#
-#######################################################################
-
-
-use DBI;
-use SL::User;
-use SL::Form;
-
-
-$form = new Form;
-
-$locale = new Locale $language, "login";
-
-# customization
-if (-f "$form->{path}/custom_$form->{script}") {
- eval { require "$form->{path}/custom_$form->{script}"; };
- $form->error($@) if ($@);
-}
-
-# per login customization
-if (-f "$form->{path}/$form->{login}_$form->{script}") {
- eval { require "$form->{path}/$form->{login}_$form->{script}"; };
- $form->error($@) if ($@);
-}
-
-# window title bar, user info
-$form->{titlebar} = "SQL-Ledger ".$locale->text('Version'). " $form->{version}";
-
-if ($form->{action}) {
- $form->{titlebar} .= " - $myconfig{name} - $myconfig{dbname}";
- &{ $locale->findsub($form->{action}) };
-} else {
- &login_screen;
-}
-
-
-1;
-
-
-sub login_screen {
-
- $form->{stylesheet} = "sql-ledger.css";
- $form->{favicon} = "sql-ledger.ico";
-
- $form->{endsession} = 1;
- $form->header(1);
-
- if ($form->{login}) {
- $sf = qq|function sf() { document.login.password.focus(); }|;
- } else {
- $sf = qq|function sf() { document.login.login.focus(); }|;
- }
-
- if ($form->{jsc} && -d 'bin/js') {
- print qq|
-<script language="JavaScript" type="text/javascript">
-<!--
-var agt = navigator.userAgent.toLowerCase();
-var is_major = parseInt(navigator.appVersion);
-var is_nav = ((agt.indexOf('mozilla') != -1) && (agt.indexOf('spoofer') == -1)
- && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera') == -1)
- && (agt.indexOf('webtv') == -1));
-var is_nav4lo = (is_nav && (is_major <= 4));
-
-function jsp() {
- if (is_nav4lo)
- document.login.path.value = "bin/mozilla"
- else
- document.login.path.value = "bin/js"
-}
-$sf
-// End -->
-</script>
-|;
- }
-
- print qq|
-
-<body class=login onload="jsp(); sf()">
-
-<pre>
-
-</pre>
-
-<center>
-<table class=login border=3 cellpadding=20>
- <tr>
- <td class=login align=center><a href="http://www.sql-ledger.org" target=_top><img src=sql-ledger.gif border=0></a>
-<h1 class=login align=center>|.$locale->text('Version').qq| $form->{version}
-</h1>
-
-<p>
-
-<form method=post action=$form->{script} name=login>
-
- <table width=100%>
- <tr>
- <td align=center>
- <table>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td><input class=login name=login size=30 value=$form->{login}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input class=login type=password name=password size=30></td>
- </tr>
- <input type=hidden name=path value=$form->{path}>
- </table>
-
- <br>
- <input type=submit name=action value="|.$locale->text('Login').qq|">
- </td>
- </tr>
- </table>
-
-</form>
-
- </td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub selectdataset {
- my ($login) = @_;
-
- if (-f "css/sql-ledger.css") {
- $form->{stylesheet} = "sql-ledger.css";
- }
-
- $form->header;
-
- print qq|
-<body class=login>
-
-<pre>
-
-</pre>
-
-<center>
-<table class=login border=3 cellpadding=20>
- <tr>
- <td class=login align=center><a href="http://www.sql-ledger.org" target=_top><img src=sql-ledger.gif border=0></a>
-<h1 class=login align=center>|.$locale->text('Version').qq| $form->{version}
-</h1>
-
-<p>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=beenthere value=1>
-
- <table width=100%>
- <tr>
- <td align=center>
- <table>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td>$form->{login}</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input class=login type=password name=password size=30 value=$form->{password}></td>
- </tr>
- <input type=hidden name=path value=$form->{path}>
- <tr>
- <th align=right>|.$locale->text('Company').qq|</th>
- <td>|;
-
- $checked = "checked";
- foreach $login (sort { $login{$a} cmp $login{$b} } keys %{ $login }) {
- print qq|
- <br><input class=login type=radio name=login value=$login $checked>$login{$login}
- |;
- $checked = "";
- }
-
- print qq|
- </td>
- </tr>
- </table>
- <br>
- <input type=submit name=action value="|.$locale->text('Login').qq|">
- </td>
- </tr>
- </table>
-
-</form>
-
- </td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub login {
-
- $form->{stylesheet} = "sql-ledger.css";
- $form->{favicon} = "sql-ledger.ico";
-
- $form->error($locale->text('You did not enter a name!')) unless ($form->{login});
-
- if (! $form->{beenthere}) {
- open(FH, "$memberfile") or $form->error("$memberfile : $!");
- @a = <FH>;
- close(FH);
-
- @login = grep { s/\[(.*)\]/$1/ } @a;
- @company = grep { s/company=(.*)/$1/ } @a;
- shift @login;
-
- for ($i = 0; $i <= $#login; $i++) {
- chop $login[$i];
- if (($form->{login} eq $login[$i]) || ($login[$i] =~ /$form->{login}@/)) {
- chop $company[$i];
- $login{$login[$i]} = $company[$i];
- }
- }
-
- if (keys %login > 1) {
- &selectdataset(\%login);
- exit;
- }
- }
-
-
- $user = new User $memberfile, $form->{login};
-
- # if we get an error back, bale out
- if (($errno = $user->login(\%$form, $userspath)) <= -1) {
-
- $errno *= -1;
- $err[1] = $locale->text('Incorrect Password!');
- $err[2] = $locale->text('Incorrect Dataset version!');
- $err[3] = qq|$form->{login} |.$locale->text('is not a member!');
- $err[4] = $locale->text('Dataset is newer than version!');
-
- if ($errno == 5) {
- # upgrade dataset and log in again
- open FH, ">$userspath/nologin" or $form->error($!);
-
- map { $form->{$_} = $user->{$_} } qw(dbname dbhost dbport dbdriver dbuser dbpasswd);
-
- $form->{dbpasswd} = unpack 'u', $form->{dbpasswd};
-
- $form->{dbupdate} = "db$user->{dbname}";
- $form->{$form->{dbupdate}} = 1;
-
- $form->header;
- print $locale->text('Upgrading to Version')." $form->{version} ... ";
-
- # required for Oracle
- $form->{dbdefault} = $sid;
-
- $user->dbupdate(\%$form);
-
- # remove lock file
- unlink "$userspath/nologin";
-
- print $locale->text('done');
-
- print "<p><a href=menu.pl?login=$form->{login}&sessionid=$form->{sessionid}&path=$form->{path}&action=display>".$locale->text('Continue')."</a>";
-
- exit;
- }
-
- $form->error($err[$errno]);
- }
-
-
- # made it this far, execute the menu
- $form->{callback} = "menu.pl?login=$form->{login}&path=$form->{path}&action=display";
-
- $form->redirect;
-
-}
-
-
-
-sub logout {
-
- $jsc = $form->{path} =~ /js/;
- $form->{callback} = "$form->{script}?path=$form->{path}&login=$form->{login}&jsc=$jsc";
-
- $form->redirect;
-
-}
-
-