Changeset 25078 for main


Ignore:
Timestamp:
2012-02-13T20:05:33+13:00 (12 years ago)
Author:
davidb
Message:

@INC updated to include extension perllib folders

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone2/common-src/cgi-bin/gsdlCGI.pm

    r24872 r25078  
    603603    }
    604604
     605
    605606    # Process any extension setup.pl files
    606     my $ext_home = &util::filename_cat($gsdlhome,"ext");
    607 
    608     if (opendir(EXTDIR,$ext_home) ) {
    609     my @pot_ext_dir = grep { $_ !~ m/^\./ } readdir(EXTDIR);
    610 
    611     closedir(EXTDIR);
    612 
    613     foreach my $ed (@pot_ext_dir) {
    614         my $full_ext_dir = &util::filename_cat($ext_home,$ed);
    615         if (-d $full_ext_dir) {
    616         my $full_inc_file = &util::filename_cat($full_ext_dir,
    617                             "$ed-setup.pl");
    618         if (-f $full_inc_file) {
    619 
    620             my $store_cwd = Cwd::cwd();
    621 
    622             chdir($full_ext_dir);
    623             require "./$ed-setup.pl";
    624             chdir($store_cwd);
     607    my @ext_homes = ();
     608
     609    my $gsdl_ext_home = &util::filename_cat($gsdlhome,"ext");
     610    push(@ext_homes,$gsdl_ext_home);
     611
     612    if ($self->{'greenstone_version'} == 3) {
     613    my $gsdl3srchome = $self->get_gsdl3_src_home();
     614    my $gsdl3_ext_home = &util::filename_cat($gsdl3srchome,"ext");
     615    push(@ext_homes,$gsdl3_ext_home);
     616    }
     617
     618    foreach my $ext_home (@ext_homes) {
     619    # Should really think about making this a subroutine
     620
     621    if (opendir(EXTDIR,$ext_home) ) {
     622        my @pot_ext_dir = grep { $_ !~ m/^\./ } readdir(EXTDIR);
     623       
     624        closedir(EXTDIR);
     625       
     626        foreach my $ed (@pot_ext_dir) {
     627        my $full_ext_dir = &util::filename_cat($ext_home,$ed);
     628
     629        if (-d $full_ext_dir) {
     630
     631            my $full_ext_perllib_dir = &util::filename_cat($full_ext_dir,"perllib");
     632            if (-d $full_ext_perllib_dir) {
     633            unshift (@INC, $full_ext_perllib_dir);
     634            }
     635
     636            my $full_inc_file = &util::filename_cat($full_ext_dir,
     637                                "$ed-setup.pl");
     638            if (-f $full_inc_file) {
     639           
     640            my $store_cwd = Cwd::cwd();
     641           
     642            chdir($full_ext_dir);
     643            require "./$ed-setup.pl";
     644            chdir($store_cwd);
     645            }
    625646        }
    626647        }
Note: See TracChangeset for help on using the changeset viewer.