protected function EntityShareMediasScaldImport::getImportRteFieldCallback in Entity Share 7
Generate the callback to treat the scald content from the field data.
Return value
callable The callback to treat RTE.
1 call to EntityShareMediasScaldImport::getImportRteFieldCallback()
- EntityShareMediasScaldImport::rteManagement in modules/
entity_share_medias/ modules/ entity_share_medias_scald/ includes/ entity_share_medias_scald.import.inc - Alter RTE datas.
File
- modules/
entity_share_medias/ modules/ entity_share_medias_scald/ includes/ entity_share_medias_scald.import.inc, line 64 - Class for handling scald Medias in RTE.
Class
- EntityShareMediasScaldImport
- Class to manage scald atoms import.
Code
protected function getImportRteFieldCallback() {
$instance = $this;
return function ($matches, &$field_value) use ($instance) {
foreach ($matches as $match) {
$full_pattern_match = $match[0];
$uuid = $match[1];
$context = $match[2];
$url = $match[3];
$orisid = $match[4];
$infos = $match[5];
$scald_atom = $instance->entity->entity_share['scald_atoms'][$orisid];
if (!empty($scald_atom)) {
$sid = $instance
->importScaldAtom((object) $scald_atom, $uuid, $url);
// Replace sid per file uuid (alter the original
// field_value, be careful with all references).
$field_value = str_replace($full_pattern_match, $instance
->generateImportRteMediaString($sid, $context, $infos), $field_value);
// Replace remote copyright id.
$instance
->manageCopyrights($orisid, $sid, $field_value);
}
}
};
}