- Timestamp:
- 2000-08-21T14:58:48+12:00 (24 years ago)
- Location:
- trunk/gsdl/perllib/plugins
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl/perllib/plugins/ConvertToPlug.pm
r1420 r1435 88 88 { 89 89 $self = new TEXTPlug ($class, @_); 90 $self->{'convert_to'} = "TEXT"; 91 $self->{'convert_to_ext'} = "txt"; 90 92 } 91 93 else 92 94 { 93 95 $self = new HTMLPlug ($class, @_); 96 $self->{'convert_to'} = "HTML"; 97 $self->{'convert_to_ext'} = "html"; 94 98 } 95 99 96 100 return bless $self, $class; 97 101 } 102 103 104 105 # Run conversion utility on the input file. Output files generated in 106 # collection specific 'tmp' directory. 107 # The collection tmp area is used to convert Word, PDF etc documents into 108 # another format (such as text or HTML) suitable for reading and indexing 109 110 sub tmp_area_convert_file { 111 my $self = shift (@_); 112 my ($output_ext,$input_filename, $textref) = @_; 113 114 # softlink to collection tmp dir 115 my $colname = &util::use_collection(); 116 my $tmp_dirname 117 = &util::filename_cat($ENV{'GSDLHOME'},"collect",$colname,"tmp"); 118 &util::mk_dir($tmp_dirname) if (!-e $tmp_dirname); 119 120 # derive tmp filename from input filename 121 my ($tailname,$dirname,$suffix) 122 = File::Basename::fileparse($input_filename,'\..+'); 123 my $tmp_filename = &util::filename_cat($tmp_dirname,"$tailname$suffix"); 124 125 # Remove any white space from filename -- no risk of name collision, and 126 # makes latter conversion by utils simpler 127 $tmp_filename =~ s/\s+//g; 128 129 &util::soft_link($input_filename,$tmp_filename); 130 131 my $output_filename 132 = &util::filename_cat($tmp_dirname,"$tailname.$output_ext"); 133 $output_filename =~ s/\s+//g; 134 135 my $verbosity = $self->{'verbosity'}; 136 if ($verbosity>0) 137 { 138 print STDERR "Converting $tailname$suffix to $self->{'convert_to'}\n"; 139 } 140 141 # run either gs2txt.pl or gs2html.pl to peform the requested conversion 142 if (system("gs2$output_ext.pl -verbose $verbosity \"$tmp_filename\"")>0) 143 { 144 print STDERR "Warning: unable to convert to $output_ext format\n"; 145 } 146 147 # remove symbolic link to original file 148 &util::rm($tmp_filename); 149 150 return $output_filename; 151 } 152 153 154 # Remove collection specific tmp directory and all its contents. 155 156 sub cleanup_tmp_area { 157 my $self = shift (@_); 158 159 my $colname = &util::use_collection(); 160 my $tmp_dirname 161 = &util::filename_cat($ENV{'GSDLHOME'},"collect",$colname,"tmp"); 162 &util::rm_r($tmp_dirname); 163 &util::mk_dir($tmp_dirname); 164 } 165 98 166 99 167 … … 155 223 $doc_obj->associate_file($filename, "doc.$doc_ext", undef, $cursection); 156 224 225 my $doclink = "<a href=_httpcollection_/index/assoc/[archivedir]/doc.$doc_ext>"; 226 $doc_obj->add_utf8_metadata ($cursection, "srclink", $doclink); 157 227 $doc_obj->add_utf8_metadata ($cursection, "srcicon", "_icon".$doc_ext."_"); 158 $doc_obj->add_utf8_metadata ($cursection, "srcdoc", "doc.$doc_ext");159 160 # my $doclink = '<a href=_httpcollection_/index/assoc/[archivedir]/doc.$doc_ext>';161 # $doc_obj->add_utf8_metadata ($cursection, "srclink", $doclink);162 228 $doc_obj->add_utf8_metadata ($cursection, "/srclink", "</a>"); 163 229 -
trunk/gsdl/perllib/plugins/HTMLPlug.pm
r1431 r1435 38 38 package HTMLPlug; 39 39 40 use ConvertToBasPlug;40 use BasPlug; 41 41 use ghtml; 42 42 use util; … … 44 44 45 45 sub BEGIN { 46 @ISA = (' ConvertToBasPlug');46 @ISA = ('BasPlug'); 47 47 } 48 48 … … 72 72 sub new { 73 73 my $class = shift (@_); 74 my $self = new ConvertToBasPlug ($class, @_);74 my $self = new BasPlug ($class, @_); 75 75 76 76 if (!parsargv::parse(\@_, … … 93 93 $self->{'dir_num'} = 0; 94 94 $self->{'file_num'} = 0; 95 96 $self->{'convert_to'} = "HTML";97 $self->{'convert_to_ext'} = "html";98 95 99 96 return bless $self, $class; -
trunk/gsdl/perllib/plugins/TEXTPlug.pm
r1424 r1435 29 29 package TEXTPlug; 30 30 31 use ConvertToBasPlug;31 use BasPlug; 32 32 33 33 sub BEGIN { 34 @ISA = (' ConvertToBasPlug');34 @ISA = ('BasPlug'); 35 35 } 36 36 37 37 sub new { 38 38 my ($class) = @_; 39 my $self = new ConvertToBasPlug ($class, @_); 40 41 $self->{'convert_to'} = "TEXT"; 42 $self->{'convert_to_ext'} = "txt"; 39 my $self = new BasPlug ($class, @_); 43 40 44 41 return bless $self, $class;
Note:
See TracChangeset
for help on using the changeset viewer.