From: olivier <> Date: Fri, 10 Apr 2009 13:36:35 +0000 (+0000) Subject: eztelemeta: fix search indexing and xml doc failure warning X-Git-Tag: 1.1~682 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=960816ecb76889b519f0cf7721473958330e3f4f;p=telemeta.git eztelemeta: fix search indexing and xml doc failure warning --- diff --git a/tools/eztelemeta/datatypes/eztelemetaitem/eztelemetaitemtype.php b/tools/eztelemeta/datatypes/eztelemetaitem/eztelemetaitemtype.php index 6a64179d..3cfb8642 100755 --- a/tools/eztelemeta/datatypes/eztelemetaitem/eztelemetaitemtype.php +++ b/tools/eztelemeta/datatypes/eztelemetaitem/eztelemetaitemtype.php @@ -82,8 +82,8 @@ class eZTelemetaItemType extends eZDataType $request = "$url/oai/?verb=GetRecord&identifier=$id&metadataPrefix=oai_dc"; $doc = new DOMDocument(); - if (!$doc->load($request)) { - throw new ezTelemetaError("The Telemeta server couldn't be reached or returned malformed XML (request: $request)"); + if (!@$doc->load($request)) { + throw new eZTelemetaError("The Telemeta server couldn't be reached or returned malformed XML (request: $request)"); } $root = $doc->getElementsByTagName('OAI-PMH'); @@ -151,7 +151,17 @@ class eZTelemetaItemType extends eZDataType function metaData($attribute) { $data = unserialize($attribute->attribute("data_text")); - return array('title' => $data['title'], 'description' => $data['description']); + $words = array(); + $src = $data['title'] . ' ' . $data['description']; + $cut = split('[ =+()[{}_,.:;\\/"\'*#%!?&-]+', $src); + foreach ($cut as $w) { + if (strlen($w) >= 3) { + $words[] = $w; + } + } + $words = join(" ", $words); + file_put_contents("/tmp/c{$data['id']}", $words); + return $words; } function title($attribute, $name = null)