pike.git / lib / modules / Search.pmod / Filter.pmod / Word.pmod

version» Context lines:

pike.git/lib/modules/Search.pmod/Filter.pmod/Word.pmod:1: + // This file is part of Roxen Search + // Copyright © 2000,2001 Roxen IS. All rights reserved. + // + // $Id: Word.pmod,v 1.1 2001/06/29 08:59:55 js Exp $    -  + // Filter for text/plain +  + inherit Search.Filter.Base; +  + constant contenttypes = ({ "application/msword", "application/vnd.ms-word" }); + constant fields = ({ "body","title", "keywords"}); +  + Output filter(Standards.URI uri, string|Stdio.File data, string content_type) + { +  Output res=Output(); +  +  if(objectp(data)) +  data=data->read(); +  +  string s=Process.popen(sprintf("")); +  +  string fn=tmp_filename(); +  object f=Stdio.File(fn,"wcb"); +  f->write(data); +  f->close(); +  +  string text=Process.popen(combine_path(__FILE__, "bin/wvware/wvdump")+" "+fn+" -"); +  rm(fn); +  +  string md="", body=""; +  array a=text/"\n----------"; +  +  if(sizeof(a)>1) +  { +  md=a[0]; +  body=a[1]; +  } +  +  string field,value=""; +  foreach(md/"\n", string md_line) +  if(sscanf(md_line,"%s: %s",field,value)==2) +  res->fields[field]=value; +  +  res->fields->body=body; +  +  return res; + } +  + string _sprintf() + { +  return "Search.Filter.Word"; + }   Newline at end of file added.