From dd934bdd4d9d47bd0c10129aff6b0230f47783b1 Mon Sep 17 00:00:00 2001 From: tonnesen Date: Mon, 28 Oct 2002 21:45:38 +0000 Subject: [PATCH] Merging from rel-1-2 to trunk --- admin/z3950servers.pl | 312 ++++++++++++++++++ .../default/en/intranet-main.tmpl | 189 +++++++++++ 2 files changed, 501 insertions(+) create mode 100755 admin/z3950servers.pl create mode 100644 koha-tmpl/intranet-tmpl/default/en/intranet-main.tmpl diff --git a/admin/z3950servers.pl b/admin/z3950servers.pl new file mode 100755 index 0000000000..7993f66089 --- /dev/null +++ b/admin/z3950servers.pl @@ -0,0 +1,312 @@ +#!/usr/bin/perl + +#script to administer the branches table +#written 20/02/2002 by paul.poulain@free.fr +# This software is placed under the gnu General Public License, v2 (http://www.gnu.org/licenses/gpl.html) + +# ALGO : +# this script use an $op to know what to do. +# if $op is empty or none of the above values, +# - the default screen is build (with all records, or filtered datas). +# - the user can clic on add, modify or delete record. +# if $op=add_form +# - if primkey exists, this is a modification,so we read the $primkey record +# - builds the add/modify form +# if $op=add_validate +# - the user has just send datas, so we create/modify the record +# if $op=delete_form +# - we show the record having primkey=$primkey and ask for deletion validation form +# if $op=delete_confirm +# - we delete the record having primkey=$primkey + +use strict; +use C4::Output; +use CGI; +use C4::Search; +use C4::Database; + +sub StringSearch { + my ($env,$searchstring,$type)=@_; + my $dbh = &C4Connect; + $searchstring=~ s/\'/\\\'/g; + my @data=split(' ',$searchstring); + my $count=@data; + my $query="Select host,port,db,userid,password,name,id,checked,rank from z3950servers where (name like \"$data[0]\%\") order by rank,name"; + my $sth=$dbh->prepare($query); + $sth->execute; + my @results; + my $cnt=0; + while (my $data=$sth->fetchrow_hashref) { + push(@results,$data); + $cnt ++; + } + # $sth->execute; + $sth->finish; + $dbh->disconnect; + return ($cnt,\@results); +} + +my $input = new CGI; +my $searchfield=$input->param('searchfield'); +my $reqsel="select host,port,db,userid,password,name,id,checked,rank from z3950servers where (name = '$searchfield') order by rank,name"; +my $reqdel="delete from z3950servers where name='$searchfield'"; +my $offset=$input->param('offset'); +my $script_name="/cgi-bin/koha/admin/z3950servers.pl"; + +my $pagesize=20; +my $op = $input->param('op'); +$searchfield=~ s/\,//g; +print $input->header; + +#start the page and read in includes +print startpage(); +print startmenu('admin'); + +################## ADD_FORM ################################## +# called by default. Used to create form to add or modify a record +if ($op eq 'add_form') { + #---- if primkey exists, it's a modify action, so read values to modify... + my $data; + if ($searchfield) { + my $dbh = &C4Connect; + my $sth=$dbh->prepare("select host,port,db,userid,password,name,id,checked,rank from z3950servers where (name = '$searchfield') order by rank,name"); + $sth->execute; + $data=$sth->fetchrow_hashref; + $sth->finish; + } + print < + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// + function isNotNull(f,noalert) { + if (f.value.length ==0) { + return false; + } + return true; + } + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// + function toUC(f) { + var x=f.value.toUpperCase(); + f.value=x; + return true; + } + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// + function isNum(v,maybenull) { + var n = new Number(v.value); + if (isNaN(n)) { + return false; + } + if (maybenull==0 && v.value=='') { + return false; + } + return true; + } + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// + function isDate(f) { + var t = Date.parse(f.value); + if (isNaN(t)) { + return false; + } + } + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// + function Check(f) { + var ok=1; + var _alertString=""; + var alertString2; + if (f.searchfield.value.length==0) { + _alertString += "- site name missing\\n"; + } + if (f.host.value.length==0) { + _alertString += "- host missing\\n"; + } + if (f.port.value.length==0) { + _alertString += "- port missing\\n"; + } + if (f.db.value.length==0) { + _alertString += "- database missing\\n"; + } + if (isNaN(f.port.value)) { + _alertString += "- port must be a number\\n"; + } + if (isNaN(f.rank.value)) { + _alertString += "- rank must be a number\\n"; + } + if (isNaN(f.checked.value) || f.checked.value<0 || f.checked.value>1) { + _alertString += "- checked must be 0 or 1\\n"; + } + if (_alertString.length==0) { + document.Aform.submit(); + } else { + alertString2 = "Form not submitted because of the following problem(s)\\n"; + alertString2 += "------------------------------------------------------------------------------------\\n\\n"; + alertString2 += _alertString; + alert(alertString2); + } + } + +printend +;#/ + if ($searchfield) { + print "

Modify Z39.50 Server

"; + } else { + print "

Add Z39.50 Server

"; + } + print "
"; + print ""; + print ""; + if ($searchfield) { + print "\n"; + } else { + print "\n"; + } + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print ""; + print ""; + print ""; + print "
Z39.50 Server$searchfield
Z39.50 Server
Hostname
Port
Database
Userid
Password
Checked (searched by default)
Rank (display order)
 
"; + print "
"; +; + # END $OP eq ADD_FORM +################## ADD_VALIDATE ################################## +# called by add_form, used to insert/modify data in DB +} elsif ($op eq 'add_validate') { + my $dbh=C4Connect; + my $sth=$dbh->prepare("select * from z3950servers where name=?"); + $sth->execute($input->param('searchfield')); + if ($sth->rows) { + $sth=$dbh->prepare("update z3950servers set host=?, port=?, db=?, userid=?, password=?, name=?, checked=?, rank=? where name=?"); + $sth->execute($input->param('host'), + $input->param('port'), + $input->param('db'), + $input->param('userid'), + $input->param('password'), + $input->param('searchfield'), + $input->param('checked'), + $input->param('rank'), + $input->param('searchfield') + ); + } else { + $sth=$dbh->prepare("insert into z3950servers (host,port,db,userid,password,name,checked,rank) values (?, ?, ?, ?, ?, ?, ?, ?)"); + $sth->execute($input->param('host'), + $input->param('port'), + $input->param('db'), + $input->param('userid'), + $input->param('password'), + $input->param('searchfield'), + $input->param('checked'), + $input->param('rank'), + ); + } + $sth->finish; + print "data recorded"; + print "
"; + print ""; + print "
"; + # END $OP eq ADD_VALIDATE +################## DELETE_CONFIRM ################################## +# called by default form, used to confirm deletion of data in DB +} elsif ($op eq 'delete_confirm') { + my $dbh = &C4Connect; + my $sth=$dbh->prepare("select count(*) as total from borrowers where branchcode='$searchfield'"); + $sth->execute; + my $total = $sth->fetchrow_hashref; + $sth->finish; + print "$reqsel"; + my $sth=$dbh->prepare($reqsel); + $sth->execute; + my $data=$sth->fetchrow_hashref; + $sth->finish; + print mktablehdr; + print mktablerow(2,'#99cc33',bold('Branch code'),bold("$searchfield"),'/images/background-mem.gif'); + print "
"; + print "Branch code$data->{'branchcode'}"; + print "  name$data->{'branchname'}"; + print "  adress$data->{'branchaddress1'}"; + print " $data->{'branchaddress2'}"; + print " $data->{'branchaddress3'}"; + print " phone$data->{'branchphone'}"; + print "  fax$data->{'branchfax'}"; + print "  e-mail$data->{'branchemail'}"; + print "  issuing$data->{'issuing'}"; + if ($total->{'total'} >0) { + print "This record is used $total->{'total'} times. Deletion not possible"; + print "
"; + } else { + print "CONFIRM DELETION"; + print "
"; + } + # END $OP eq DELETE_CONFIRM +################## DELETE_CONFIRMED ################################## +# called by delete_confirm, used to effectively confirm deletion of data in DB +} elsif ($op eq 'delete_confirmed') { + my $dbh=C4Connect; +# my $searchfield=$input->param('branchcode'); + my $sth=$dbh->prepare($reqdel); + $sth->execute; + $sth->finish; + print "data deleted"; + print "
"; + print ""; + print "
"; + # END $OP eq DELETE_CONFIRMED +################## DEFAULT ################################## +} else { # DEFAULT + my @inputs=(["text","searchfield",$searchfield], + ["reset","reset","clr"]); + print mkheadr(2,'branches admin'); + print mkformnotable("$script_name",@inputs); + print <$searchfield

"; + } + print mktablehdr; + print mktablerow(10,'#99cc33',bold('Site'),bold('hostname'),bold('port'), + bold('database'),bold('Userid'),bold('Password'),bold('Checked'),bold('Rank'), + ' ',' ','/images/background-mem.gif'); + my $env; + my ($count,$results)=StringSearch($env,$searchfield,'web'); + my $toggle="white"; + for (my $i=$offset; $i < ($offset+$pagesize<$count?$offset+$pagesize:$count); $i++){ + if ($toggle eq 'white'){ + $toggle="#ffffcc"; + } else { + $toggle="white"; + } + + my $urlsearchfield=$results->[$i]{name}; + $urlsearchfield=~s/ /%20/g; + print mktablerow(10,$toggle, + $results->[$i]{'name'}, + $results->[$i]{'host'}, + $results->[$i]{'port'}, + $results->[$i]{'db'}, + $results->[$i]{'userid'}, + ($results->[$i]{'password'}) ? ('#######') : (' '), + $results->[$i]{'checked'}, + $results->[$i]{'rank'}, + mklink("$script_name?op=add_form&searchfield=$urlsearchfield".'','Edit'), + mklink("$script_name?op=delete_confirm&searchfield=$urlsearchfield",'Delete')); + } + print mktableft; + print "

"; + print ""; + if ($offset>0) { + my $prevpage = $offset-$pagesize; + print mklink("$script_name?offset=".$prevpage,'<< Prev'); + } + print "      "; + if ($offset+$pagesize<$count) { + my $nextpage =$offset+$pagesize; + print mklink("$script_name?offset=".$nextpage,'Next >>'); + } + print "

"; + print "
"; +} #---- END $OP eq DEFAULT +print endmenu('admin'); +print endpage(); diff --git a/koha-tmpl/intranet-tmpl/default/en/intranet-main.tmpl b/koha-tmpl/intranet-tmpl/default/en/intranet-main.tmpl new file mode 100644 index 0000000000..a84c631a28 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/default/en/intranet-main.tmpl @@ -0,0 +1,189 @@ + +WELCOME TO THE KOHA INTRANET + + + + + + + + + +
+ + + + + +
 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ Koha: Horowhenua Library Trust
+
+ + Type in the box and press the enter key.
+ + + -Advanced Search (More Options)
+ +
+ + +
+ +
+ Type in the box and press the enter key.
+

+

+

+
+
+
+
+ + -- 2.39.5