[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Koha-cvs] koha/installer install.pl
From: |
Henri-Damien LAURENT |
Subject: |
[Koha-cvs] koha/installer install.pl |
Date: |
Fri, 13 Apr 2007 16:30:00 +0000 |
CVSROOT: /cvsroot/koha
Module name: koha
Changes by: Henri-Damien LAURENT <hdl> 07/04/13 16:30:00
Modified files:
installer : install.pl
Log message:
Automatically adding a new syspref called FrameworksLoaded which is
updated via webinstaller.
It stores and lists loaded frameworks for management.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/installer/install.pl?cvsroot=koha&r1=1.4&r2=1.5
Patches:
Index: install.pl
===================================================================
RCS file: /cvsroot/koha/koha/installer/install.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- install.pl 6 Apr 2007 15:53:18 -0000 1.4
+++ install.pl 13 Apr 2007 16:30:00 -0000 1.5
@@ -215,19 +215,24 @@
my $lang;
my %hashlevel;
# sort by filename -> prepend with numbers to specify order of insertion.
-
- my @fnames = sort { my @aa = split /\/|\\/, ($a); my @bb = split /\/|\\/,
($b); $aa[-1] <=> $bb[-1] } $query->param('framework') ;
+ my @fnames = sort { my @aa = split /\/|\\/, ($a); my @bb = split /\/|\\/,
($b); $aa[-1] lt $bb[-1] } $query->param('framework') ;
+ my $systempreference;
foreach my $file (@fnames){
# warn $file;
undef $/;
my $strcmd="mysql ".($info{hostname}?"-h $info{hostname}
":"").($info{port}?"-P $info{port} ":"").($info{user}?"-u $info{user}
":"").($info{password}?"-p$info{password}":"")." $info{dbname} ";
- my $str = qx($strcmd < $file 2>&1);
+ my $error = qx($strcmd < $file 2>&1);
my @file = split qr(\/|\\),$file;
$lang=$file[scalar(@file)-3] unless ($lang);
my $level=$file[scalar(@file)-2];
+ unless ($error){
+ $systempreference.="$file[scalar(@file)-1]|";
+ }
#Bulding here a hierarchy to display files by level.
- push
@{$hashlevel{$level}},{"fwkname"=>$file[scalar(@file)-1],"error"=>$str};
+ push
@{$hashlevel{$level}},{"fwkname"=>$file[scalar(@file)-1],"error"=>$error};
}
+ #systempreference contains an ending |
+ chop $systempreference;
my @list;
map {push @list,{"level"=>$_,"fwklist"=>$hashlevel{$_}}} keys %hashlevel;
my $fwk_language;
@@ -238,6 +243,14 @@
$fwk_language = $each_language->{language_locale_name};
}
}
+ warn "frameworksloaded : $systempreference";
+ my $updateflag=$dbh->do("UPDATE systempreferences set
value=\"$systempreference\" where variable='FrameworksLoaded'");
+ unless ($updateflag==1){
+ my $string="INSERT INTO systempreferences (value, variable, explanation,
type) VALUES (\"$systempreference\",'FrameworksLoaded','Frameworks loaded
through webinstaller','choice')";
+ warn "$string";
+ my $rq=$dbh->prepare($string);
+ $rq->execute;
+ }
$template->param("fwklanguage"=>$fwk_language,
"list"=>address@hidden);
$template->param("$op"=>1);
@@ -270,6 +283,13 @@
@listdir= grep { !/^\.|CVS/ && -d "$dir/$_"} readdir(MYDIR);
closedir MYDIR;
my @levellist;
+ my $request=$dbh->prepare("SELECT value FROM systempreferences WHERE
variable='FrameworksLoaded'");
+ $request->execute;
+ my ($frameworksloaded)=$request->fetchrow;
+ my %frameworksloaded;
+ foreach (split(/\|/,$frameworksloaded)){
+ $frameworksloaded{$_}=1;
+ }
foreach my $requirelevel (@listdir){
$dir
=C4::Context->config('intranetdir')."/misc/sql-datas/$langchoice/$requirelevel";
opendir (MYDIR,$dir);
@@ -284,10 +304,15 @@
$lines=~s/\n|\r/<br \/>/g;
use utf8;
utf8::encode($lines) unless (utf8::is_utf8($lines));
- push @frameworklist,{'fwkname'=>$name,
'fwkfile'=>"$dir/$_",'fwkdescription'=>$lines};
+ push @frameworklist,
+ {'fwkname'=>$name,
+ 'fwkfile'=>"$dir/$_",
+ 'fwkdescription'=>$lines,
+
'checked'=>(($frameworksloaded{$_}||($requirelevel=~/(mandatory|requi|oblig|necess)/i))?1:0)
+ };
} @listname;
- my @fwks = sort { $a->{'fwkname'} <=> $b->{'fwkname'} }
@frameworklist;
- $cell{"mandatory"}=($requirelevel=~/(mandatory|requi|oblig|necess)/i);
+ my @fwks = sort { $a->{'fwkname'} lt $b->{'fwkname'} } @frameworklist;
+# $cell{"mandatory"}=($requirelevel=~/(mandatory|requi|oblig|necess)/i);
$cell{"frameworks"address@hidden;
$cell{"label"}=ucfirst($requirelevel);
$cell{"code"}=lc($requirelevel);
- [Koha-cvs] koha/installer install.pl,
Henri-Damien LAURENT <=