diff --git a/lib/Alchemy/Phrasea/Command/RecordAdd.php b/lib/Alchemy/Phrasea/Command/RecordAdd.php
index 604f488c4f..cbbb492298 100644
--- a/lib/Alchemy/Phrasea/Command/RecordAdd.php
+++ b/lib/Alchemy/Phrasea/Command/RecordAdd.php
@@ -118,6 +118,7 @@ class RecordAdd extends Command
"Record id %d 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 %d has been created", $elementCreated->getId())
diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Lazaret.php b/lib/Alchemy/Phrasea/Controller/Prod/Lazaret.php
index 8dd46b78db..1ebbfbd328 100644
--- a/lib/Alchemy/Phrasea/Controller/Prod/Lazaret.php
+++ b/lib/Alchemy/Phrasea/Controller/Prod/Lazaret.php
@@ -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
diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Upload.php b/lib/Alchemy/Phrasea/Controller/Prod/Upload.php
index f6eef27ae5..8ff85a1339 100644
--- a/lib/Alchemy/Phrasea/Controller/Prod/Upload.php
+++ b/lib/Alchemy/Phrasea/Controller/Prod/Upload.php
@@ -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);
diff --git a/lib/classes/caption/Field/Value.class.php b/lib/classes/caption/Field/Value.class.php
index 729bec2f2d..842e8360b1 100644
--- a/lib/classes/caption/Field/Value.class.php
+++ b/lib/classes/caption/Field/Value.class.php
@@ -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;
}
diff --git a/lib/classes/record/adapter.class.php b/lib/classes/record/adapter.class.php
index 835321a409..b333e00fa3 100644
--- a/lib/classes/record/adapter.class.php
+++ b/lib/classes/record/adapter.class.php
@@ -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()));