[SearchEngine] Fix BorderManager signature

This commit is contained in:
Romain Neutron
2012-08-24 14:27:54 +02:00
parent 1f5c70c84c
commit fbfed4d751
5 changed files with 4 additions and 96 deletions

View File

@@ -118,6 +118,7 @@ class RecordAdd extends Command
"Record id <info>%d</info> on collection `%s` (databox `%s`) has been created", $elementCreated->get_record_id(), $elementCreated->get_collection()->get_name(), $elementCreated->get_databox()->get_viewname()
)
);
$this->container['phraseanet.SE']->addRecord($elementCreated);
} elseif ($elementCreated instanceof LazaretFile) {
$output->writeln(
sprintf("Quarantine item id <info>%d</info> has been created", $elementCreated->getId())

View File

@@ -283,6 +283,8 @@ class Lazaret implements ControllerProviderInterface
$lazaretFile->getSession(), $borderFile, $callBack, Border\Manager::FORCE_RECORD
);
$app['phraseanet.SE']->addRecord($record);
if ($keepAttributes) {
//add attribute

View File

@@ -249,6 +249,7 @@ class Upload implements ControllerProviderInterface
$id = $elementCreated->get_serialize_key();
$element = 'record';
$message = _('The record was successfully created');
$app['phraseanet.SE']->addRecord($elementCreated);
} else {
$params = array('lazaret_file' => $elementCreated);

View File

@@ -193,21 +193,6 @@ class caption_Field_Value implements cache_cacheableInterface
$sbas_id = $this->record->get_sbas_id();
$this->record->get_caption()->delete_data_from_cache();
try {
$sphinx_rt = sphinxrt::get_instance($this->app['phraseanet.registry']);
$sbas_params = phrasea::sbas_params($this->app);
if (isset($sbas_params[$sbas_id])) {
$params = $sbas_params[$sbas_id];
$sbas_crc = crc32(str_replace(array('.', '%'), '_', sprintf('%s_%s_%s_%s', $params['host'], $params['port'], $params['user'], $params['dbname'])));
$sphinx_rt->delete(array("metadatas" . $sbas_crc, "metadatas" . $sbas_crc . "_stemmed_fr", "metadatas" . $sbas_crc . "_stemmed_en"), "metas_realtime" . $sbas_crc, $this->id);
$sphinx_rt->delete(array("documents" . $sbas_crc, "documents" . $sbas_crc . "_stemmed_fr", "documents" . $sbas_crc . "_stemmed_en"), "docs_realtime" . $sbas_crc, $this->record->get_record_id());
}
} catch (Exception $e) {
unset($e);
}
return $this;
}
@@ -276,21 +261,6 @@ class caption_Field_Value implements cache_cacheableInterface
$this->delete_data_from_cache();
try {
$sphinx_rt = sphinxrt::get_instance($this->app['phraseanet.registry']);
$sbas_params = phrasea::sbas_params($this->app);
if (isset($sbas_params[$sbas_id])) {
$params = $sbas_params[$sbas_id];
$sbas_crc = crc32(str_replace(array('.', '%'), '_', sprintf('%s_%s_%s_%s', $params['host'], $params['port'], $params['user'], $params['dbname'])));
$sphinx_rt->delete(array("metadatas" . $sbas_crc, "metadatas" . $sbas_crc . "_stemmed_fr", "metadatas" . $sbas_crc . "_stemmed_en"), "", $this->id);
$sphinx_rt->delete(array("documents" . $sbas_crc, "documents" . $sbas_crc . "_stemmed_fr", "documents" . $sbas_crc . "_stemmed_en"), "", $this->record->get_record_id());
}
} catch (Exception $e) {
}
$this->update_cache_value($value);
return $this;
@@ -304,55 +274,6 @@ class caption_Field_Value implements cache_cacheableInterface
public function update_cache_value($value)
{
$this->record->get_caption()->delete_data_from_cache();
$sbas_id = $this->databox_field->get_databox()->get_sbas_id();
try {
$sbas_params = phrasea::sbas_params($this->app);
if (isset($sbas_params[$sbas_id])) {
$params = $sbas_params[$sbas_id];
$sbas_crc = crc32(
str_replace(
array('.', '%')
, '_'
, sprintf('%s_%s_%s_%s', $params['host'], $params['port'], $params['user'], $params['dbname'])
)
);
$sphinx_rt = sphinxrt::get_instance($this->app['phraseanet.registry']);
$sphinx_rt->replace_in_metas(
"metas_realtime" . $sbas_crc
, $this->id
, $this->databox_field->get_id()
, $this->record->get_record_id()
, $sbas_id
, phrasea::collFromBas($this->app, $this->record->get_base_id())
, ($this->record->is_grouping() ? '1' : '0')
, $this->record->get_type()
, $value
, ($this->databox_field->isBusiness() ? '1' : '0')
, $this->record->get_creation_date()
);
$all_datas = array();
foreach ($this->record->get_caption()->get_fields(null, true) as $field) {
if ( ! $field->is_indexable()) {
continue;
}
$all_datas[] = $field->get_serialized_values();
}
$all_datas = implode(' ', $all_datas);
$sphinx_rt->replace_in_documents(
"docs_realtime" . $sbas_crc, //$this->id,
$this->record->get_record_id(), $all_datas, $sbas_id, phrasea::collFromBas($this->app, $this->record->get_base_id()), ($this->record->is_grouping() ? '1' : '0'), $this->record->get_type(), $this->record->get_creation_date()
);
}
} catch (Exception $e) {
unset($e);
}
return $this;
}

View File

@@ -1605,23 +1605,6 @@ class record_adapter implements record_Interface, cache_cacheableInterface
$rs = $stmt->fetchAll();
$stmt->closeCursor();
try {
$sphinx_rt = sphinxrt::get_instance($this->app['phraseanet.registry']);
$sbas_params = phrasea::sbas_params($this->app);
if (isset($sbas_params[$sbas_id])) {
$params = $sbas_params[$sbas_id];
$sbas_crc = crc32(str_replace(array('.', '%'), '_', sprintf('%s_%s_%s_%s', $params['host'], $params['port'], $params['user'], $params['dbname'])));
foreach ($rs as $row) {
$sphinx_rt->delete(array("metadatas" . $sbas_crc, "metadatas" . $sbas_crc . "_stemmed_en", "metadatas" . $sbas_crc . "_stemmed_fr"), "metas_realtime" . $sbas_crc, $row['id']);
}
$sphinx_rt->delete(array("documents" . $sbas_crc, "documents" . $sbas_crc . "_stemmed_fr", "documents" . $sbas_crc . "_stemmed_en"), "docs_realtime" . $sbas_crc, $this->get_record_id());
}
} catch (\Exception $e) {
unset($e);
}
$sql = "DELETE FROM metadatas WHERE record_id = :record_id";
$stmt = $connbas->prepare($sql);
$stmt->execute(array(':record_id' => $this->get_record_id()));