Initial revision
[mir.git] / dbscripts / lib / convert.pl
1 #
2 # convert.pl
3 #
4
5 sub mk_workfile {
6         my($props)=shift;
7         local(*HANLDE);
8         my($now,$count,$dir,$prefix);
9
10         $dir=$$props{'convert'}{'work_dir'};
11         $prefix=$$props{'convert'}{'work_prefix'};
12         $now=time;
13         $count=0;
14         
15         while (-f $dir.$prefix.$now.".".$count) { $count++; }
16
17         ## fast touch
18         if (sysopen(HANDLE,$dir.$prefix.$now.".".$count,O_CREATE|O_RDWR)) { close(HANDLE); }
19
20         return $dir.$prefix.$now.".".$count;
21         }
22
23 sub html_to_text {
24         my($props,$text)=@_;
25         local(*HANDLE);
26         my($file,$result);
27
28         $file=&mk_workfile($props);
29         if (open(HANDLE,">".$file)) {
30                 print HANDLE $text;
31                 close(HANDLE);
32                 }
33         else {
34                 ## error - do not convert
35                 return $text;
36                 }
37         if (open(HANDLE,$$props{'bin'}{'html_to_text'}.$file."|")) {
38                 while (<HANDLE>) {
39                         $result.=$_;    
40                         }
41                 close(HANDLE);  
42                 unlink($file);
43                 return $result;
44                 }       
45         else {
46                 unlink($file);
47                 return $text;
48                 }
49         }
50
51 1;