#!/usr/bin/perl

###############################################################################
# YakwaSI.pl                                                                  #
###############################################################################
# Yakwa CGI-BIN Client                                                        #
# =========================================================================== #
# Copyright (c) Maarten Janssen                                               #
# =========================================================================== #
# This file has been written by: Maarten Janssen                              #
###############################################################################

if(!(-e("Settings.pl"))) {
	$current_file = "$ENV{'REQUEST_URI'}";
	$current_file =~ s/\/(.*)\//$1/g;
	print "Location: http://$ENV{'SERVER_NAME'}/$1/Install.pl\n\n";
}
#$servername = "172.31.174.105";
$servername = $ENV{'SERVER_NAME'};
#$jaurl = "YakwaSI.pl";
$jaurl = $ENV{'SCRIPT_NAME'};
$jahurl = "Documents/";
#$yksdir = "/Library/WebServer/Documents/yakwasi";
$yksdir = $ENV{'SCRIPT_FILENAME'};
$yksdir =~ s/YakwaSI.pl$//;
require "Settings.pl";
require "$sourcedir/Subs.pl";
use Socket;
use DB_File;

## Charset test
#$charset = "x-mac-roman";
$charset = "ISO-8859-1"; 

if ( $INFO{'debug'} eq "yes" ) { $DEBUG = 1; } else { $DEBUG = 0; };

$cookieusername = "yakuser";
$cookiepassword = "yakpass";
$Cookie_Exp_Date = 'Mon, 31-Jan-3000 12:00:00 GMT';
&get_date;
&readform;
foreach (split(/; /,$ENV{'HTTP_COOKIE'})) {
	($cookie,$value) = split(/=/);
	if($cookie eq "$cookieusername") { $username="$value"; }
	if($cookie eq "$cookiepassword") { $password="$value"; }
}

# Define Language
$langname{'FR'} = "Francais";
$langname{'EN'} = "English";
#$langname{'SP'} = "Espanol";
	
$lang = $INFO{'xlang'}; if ($lang eq "" ) { $lang = "en" }; # EN is default language
if($username eq "") { $username = "Guest"; }
## Set defaut tagset
if ( $_COOKIE{'tagdefault'} ne "" ) { $tagset = $_COOKIE{'tagdefault'}; } else { $tagset = "cordial"; };

if ( $FORM{'action'} ne "" && $INFO{'action'} eq "" ) { $action = $FORM{'action'}; };

# Depending on on the action field choose what to do
if ($action eq "output") { require "$sourcedir/Output.pl"; &Output; }
if ($action eq "options") { require "$sourcedir/Options.pl"; &OptionMenu; }
if ($action eq "login") { require "$sourcedir/LogInOut.pl"; &Login; }
if ($action eq "login2") { require "$sourcedir/LogInOut.pl"; &Login2; }
if ($action eq "logout") { require "$sourcedir/LogInOut.pl"; &Logout; }
if ($action eq "register") { require "$sourcedir/Register.pl"; &Register; }
if ($action eq "register2") { require "$sourcedir/Register.pl"; &Register2; }
if ($action eq "extract") { require "$sourcedir/Extract.pl"; &Extract; }
if ($action eq "extract2") { require "$sourcedir/Extract2.pl"; &Extract2; }
if ($action eq "extract2b") { require "$sourcedir/Extract2b.pl"; &Extract2b; }
if ($action eq "organise") { require "$sourcedir/Organise.pl"; &Organise; }
if ($action eq "organise2") { require "$sourcedir/Organise.pl"; &Organise2; }
if ($action eq "query") { require "$sourcedir/Query.pl"; &Querydef; }
if ($action eq "tempdl") { require "$sourcedir/Tempdl.pl"; &Tempdl; }
if ($action eq "query2") { require "$sourcedir/Query2.pl"; &Querydef; }
if ($action eq "queryflash") { require "$sourcedir/QueryFlash.pl"; &Querydef; }
if ($action eq "search2") { require "$sourcedir/Search.pl"; &Search; }
if ($action eq "searchperl") { require "$sourcedir/SearchPerl.pl"; &Search; }
if ($action eq "display") { require "$sourcedir/Display.pl"; &Display; }
if ($action eq "corpora") { require "$sourcedir/Corpora.pl"; &Corpora; }
if ($action eq "search") { require "$sourcedir/SearchFlash.pl"; &Search; }
if ($action eq "browse") { require "$sourcedir/Browse.pl"; &Browse; }
if ($action eq "view") { require "$sourcedir/View.pl"; &ViewPage; }
if ($action eq "menu") { require "$sourcedir/Main.pl"; &MainMenu; }
if ($action eq "concordance") { require "$sourcedir/Concordance.pl"; &Concordance; }
if ($action eq "ccquery") { require "$sourcedir/CCQuery.pl"; &CCQuery; }
# No action? Show the query definition window - also if not exited (p.e. login2)
$INFO{'page'} = "home"; $_GET{'pagetitle'} = "YakwaSI Home";
 require "$sourcedir/View.pl"; &ViewPage;

exit;
