greenstone.org greenstone wiki greenstone trac planet greenstone

Changeset 16327

Show
Ignore:
Timestamp:
2008-07-10 11:48:54 (2 months ago)
Author:
ak19
Message:

Minor changes to better work with Windows (preview url/libraryUrlSuffix is library.exe for GS2 server).

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • greenstone3/trunk/web/WEB-INF/cgi/gsdlCGI.pm

    r16249 r16327  
    327327            $library_url = $self->get_config_info("httpprefix"); 
    328328            $library_url = "$library_url/cgi-bin/library"; 
     329 
     330            my $gsdlos = (defined $ENV{'GSDLOS'}) ? $ENV{'GSDLOS'} : $self->get_gsdl_os(); 
     331            if($gsdlos =~ /windows/) { # remote GS2 server on Windows uses "library.exe" 
     332                $library_url .= ".exe"; 
     333            } 
    329334        }  
    330335        else { # greenstone 3 or later and gwcgi not defined 
     
    341346    my $gsdlhome = $self->get_gsdl_home(); 
    342347    my $gsdlos = $self->get_gsdl_os(); 
    343     my $library_url = $self->get_library_url_suffix(); 
    344  
    345348    $ENV{'GSDLHOME'} = $gsdlhome; 
    346349    $ENV{'GSDLOS'} = $gsdlos; 
     350 
     351    my $library_url = $self->get_library_url_suffix(); # best to have GSDLOS set beforehand 
    347352    $self->{'library_url_suffix'} = $library_url; 
    348353     
    349354    if($self->{'greenstone_version'} == 3) { 
    350355        my $gsdl3srchome = $self->get_gsdl3_src_home(); 
    351         my $javahome = $self->get_java_home(); 
    352          
    353356        $ENV{'GSDL3SRCHOME'} = $gsdl3srchome;    
    354         $ENV{'JAVA_HOME'} = $javahome;   
    355357    }  
    356358 
     
    362364    my $gsdl_bin_os = &util::filename_cat($gsdlhome,"bin",$gsdlos); 
    363365    &util::envvar_append("PATH",$gsdl_bin_os); 
    364  
     366     
     367    # Perl comes installed with the GS Windows Release Kit.  
     368    # However, if GS is from SVN, the user must have their own Perl and put it on the path. 
     369    my $perl_bin_dir; # undefined 
    365370    if ($gsdlos eq "windows") { 
    366         my $gsdl_perl_bin_directory = &util::filename_cat($gsdlhome, "bin", "windows", "perl", "bin"); 
    367         &util::envvar_append("PATH", $gsdl_perl_bin_directory); 
    368     } 
    369     elsif($self->{'greenstone_version'} == 3) { # and it's on linux now 
    370         my $perlpath = $self->get_perl_path(); 
    371         &util::envvar_append("PATH", $perlpath); 
    372     } 
     371        $perl_bin_dir = &util::filename_cat($gsdlhome, "bin", "windows", "perl", "bin"); 
     372        if(-e $perl_bin_dir) { 
     373            &util::envvar_append("PATH", $perl_bin_dir); 
     374        } 
     375    } 
     376     
     377    # Uncomment these lines if you want to read the "javahome" and "perlpath" properties  
     378    # from values you have set in the gsdl(3)site.cfg config file 
     379    #my $javahome = $self->get_java_home();      
     380    #$ENV{'JAVA_HOME'} = $javahome; 
     381    #if(!defined $perl_bin_dir) { 
     382        #$perl_bin_dir = $self->get_perl_path(); 
     383        #&util::envvar_append("PATH", $perl_bin_dir); 
     384    #} 
    373385} 
    374386 
     
    413425 
    414426    my $prefix_dir = getcwd();  
    415     my $full_dir = &util::filename_cat($prefix_dir,$local_dir); 
     427    my $full_path = &util::filename_cat($prefix_dir,$local_dir); 
    416428     
    417429    if ($prefix_dir !~ m/collect/) { 
    418         $self->generate_error("Trying to delete outside of Greenstone collect: $full_dir"); 
     430        $self->generate_error("Trying to delete outside of Greenstone collect: $full_path"); 
    419431    } 
    420432 
    421433    # Delete recursively 
    422     if (!-e $full_dir) { 
    423         $self->generate_error("File/Directory does not exist: $full_dir"); 
    424     } 
    425  
    426     &util::rm_r($full_dir); 
     434    if (!-e $full_path) { 
     435        $self->generate_error("File/Directory does not exist: $full_path"); 
     436    } 
     437 
     438    &util::rm_r($full_path); 
    427439} 
    428440