diff --git a/core/manage_action.php b/core/manage_action.php index 849f454da6d5e2968f826d297c66f03fbf6eef05..19d55eb769516b1333eb8bde2fc04528a0250470 100755 --- a/core/manage_action.php +++ b/core/manage_action.php @@ -373,8 +373,8 @@ elseif (empty($_POST['values']) || !isset($_POST['action_id']) || empty($_POST[' ); // SEND MESSAGE EXCHANGE REVIEW M2M - require_once "modules/sendmail/Controllers/MessageExchangeReviewController.php"; - \Sendmail\Controllers\MessageExchangeReviewController::sendMessageExchangeReview(['res_id' => $arr_res[$i], 'action_id' => $id_action]); + // RM + } } } diff --git a/modules/sendmail/Controllers/MessageExchangeReviewController.php b/modules/sendmail/Controllers/MessageExchangeReviewController.php index 759a85e766afb4fb5c7ac62c229bb2b6945d5756..9009704f8c6f9ea07110da5343ca817c4d307db0 100755 --- a/modules/sendmail/Controllers/MessageExchangeReviewController.php +++ b/modules/sendmail/Controllers/MessageExchangeReviewController.php @@ -17,8 +17,6 @@ namespace Sendmail\Controllers; use Slim\Http\Request; use Slim\Http\Response; -use Resource\models\ResModel; -use Action\models\ActionModel; use SrcCore\models\CoreConfigModel; require_once __DIR__.'/../../export_seda/Controllers/ReceiveMessage.php'; @@ -28,93 +26,6 @@ require_once 'modules/sendmail/Controllers/SendMessageExchangeController.php'; class MessageExchangeReviewController { - protected static function canSendMessageExchangeReview($aArgs = []) - { - if (empty($aArgs['res_id']) || !is_numeric($aArgs['res_id'])) { - return false; - } - - $resLetterboxData = ResModel::getOnView([ - 'select' => ['entity_label', 'res_id', 'external_id'], - 'where' => ['res_id = ?'], - 'data' => [$aArgs['res_id']], - 'orderBy' => ['res_id'], ]); - - if (!empty($resLetterboxData[0]['external_id'])) { - $resLetterboxData[0]['external_id'] = json_decode($resLetterboxData[0]['external_id'], true); - if (!empty($resLetterboxData[0]['external_id']['m2m'])) { - return $resLetterboxData[0]; - } else { - return false; - } - } else { - return false; - } - } - - /* - * Used in manage_action.php, so does not remove sessions - */ - public static function sendMessageExchangeReview($aArgs = []) - { - $messageExchangeData = self::canSendMessageExchangeReview(['res_id' => $aArgs['res_id']]); - if ($messageExchangeData) { - $actionInfo = ActionModel::getById(['id' => $aArgs['action_id']]); - $reviewObject = new \stdClass(); - $reviewObject->Comment = array(); - $reviewObject->Comment[0] = new \stdClass(); - $reviewObject->Comment[0]->value = '['.date('d/m/Y H:i:s').'] "'.$actionInfo['label_action'].'" '._M2M_ACTION_DONE.' '.$_SESSION['user']['entities'][0]['ENTITY_LABEL'].'. '._M2M_ENTITY_DESTINATION.' : '.$messageExchangeData['entity_label']; - - $date = new \DateTime(); - $reviewObject->Date = $date->format(\DateTime::ATOM); - - $reviewObject->MessageIdentifier = new \stdClass(); - $reviewObject->MessageIdentifier->value = $messageExchangeData['external_id']['m2m'].'_NotificationSent'; - - $reviewObject->CodeListVersions = new \stdClass(); - $reviewObject->CodeListVersions->value = ''; - - $reviewObject->UnitIdentifier = new \stdClass(); - $reviewObject->UnitIdentifier->value = $messageExchangeData['external_id']['m2m']; - - $RequestSeda = new \RequestSeda(); - $messageExchangeReply = $RequestSeda->getMessageByReference($messageExchangeData['external_id']['m2m'].'_ReplySent'); - $dataObject = json_decode($messageExchangeReply->data); - $reviewObject->OriginatingAgency = $dataObject->TransferringAgency; - $reviewObject->ArchivalAgency = $dataObject->ArchivalAgency; - - if ($reviewObject->ArchivalAgency->OrganizationDescriptiveMetadata->Communication[0]->Channel == 'url') { - $tab = explode('saveMessageExchangeReturn', $reviewObject->ArchivalAgency->OrganizationDescriptiveMetadata->Communication[0]->value); - $reviewObject->ArchivalAgency->OrganizationDescriptiveMetadata->Communication[0]->value = $tab[0].'saveMessageExchangeReview'; - } - - $sendMessage = new \SendMessage(); - - $reviewObject->MessageIdentifier->value = $messageExchangeData['external_id']['m2m'].'_Notification'; - - $tmpPath = CoreConfigModel::getTmpPath(); - $filePath = $sendMessage->generateMessageFile($reviewObject, 'ArchiveModificationNotification', $tmpPath); - - $reviewObject->MessageIdentifier->value = $messageExchangeData['external_id']['m2m'].'_NotificationSent'; - $reviewObject->TransferringAgency = $reviewObject->OriginatingAgency; - $messageExchangeSaved = \SendMessageExchangeController::saveMessageExchange(['dataObject' => $reviewObject, 'res_id_master' => $aArgs['res_id_master'], 'type' => 'ArchiveModificationNotification', 'file_path' => $filePath]); - - $reviewObject->MessageIdentifier->value = $messageExchangeData['external_id']['m2m'].'_Notification'; - - $reviewObject->DataObjectPackage = new \stdClass(); - $reviewObject->DataObjectPackage->DescriptiveMetadata = new \stdClass(); - $reviewObject->DataObjectPackage->DescriptiveMetadata->ArchiveUnit = array(); - $reviewObject->DataObjectPackage->DescriptiveMetadata->ArchiveUnit[0] = new \stdClass(); - $reviewObject->DataObjectPackage->DescriptiveMetadata->ArchiveUnit[0]->Content = new \stdClass(); - $reviewObject->DataObjectPackage->DescriptiveMetadata->ArchiveUnit[0]->Content->OriginatingSystemId = $aArgs['res_id_master']; - $reviewObject->DataObjectPackage->DescriptiveMetadata->ArchiveUnit[0]->Content->Title[0] = '[CAPTUREM2M_NOTIFICATION]'.date('Ymd_his'); - - $reviewObject->TransferringAgency->OrganizationDescriptiveMetadata = new \stdClass(); - $reviewObject->TransferringAgency->OrganizationDescriptiveMetadata->UserIdentifier = $_SESSION['user']['UserId']; - $sendMessage->send($reviewObject, $messageExchangeSaved['messageId'], 'ArchiveModificationNotification'); - } - } - public function saveMessageExchangeReview(Request $request, Response $response) { if (empty($GLOBALS['userId'])) { diff --git a/modules/sendmail/Controllers/ReadMessageExchangeController.php b/modules/sendmail/Controllers/ReadMessageExchangeController.php deleted file mode 100755 index f24eb86df13e697fefcfbcd124f2186b02a88500..0000000000000000000000000000000000000000 --- a/modules/sendmail/Controllers/ReadMessageExchangeController.php +++ /dev/null @@ -1,95 +0,0 @@ -<?php - -/** -* Copyright Maarch since 2008 under licence GPLv3. -* See LICENCE.txt file at the root folder for more details. -* This file is part of Maarch software. -* -*/ - -/** -* @brief Read Message Exchange Controller -* @author dev@maarch.org -* @ingroup core -*/ - -require_once 'modules/export_seda/RequestSeda.php'; -require_once "core/class/class_request.php"; - -class ReadMessageExchangeController -{ - public static function getMessageExchange($aArgs = []) - { - if (empty($aArgs['id'])) { - return ['errors' => 'id is empty']; - } - - $aDataForm = []; - $RequestSeda = new RequestSeda(); - $messageExchangeData = $RequestSeda->getMessageByIdentifier($aArgs['id']); - $unitIdentifierData = $RequestSeda->getUnitIdentifierByMessageId($aArgs['id']); - $aDataForm['reference'] = $messageExchangeData->reference; - $messageReview = $RequestSeda->getMessagesByReferenceByDate($aDataForm['reference'].'_Notification'); - - while ($res = $messageReview->fetchObject()) { - $oMessageReview = json_decode($res->data); - $aDataForm['messageReview'][] = $oMessageReview->Comment[0]->value; - } - - $request = new request(); - $aDataForm['creationDate'] = $request->dateformat($messageExchangeData->date); - $aDataForm['receptionDate'] = $request->dateformat($messageExchangeData->reception_date); - $aDataForm['operationDate'] = $request->dateformat($messageExchangeData->operation_date); - $aDataForm['type'] = $messageExchangeData->type; - - if (!empty($aDataForm['receptionDate'])) { - $reference = $aDataForm['reference'].'_Reply'; - $aDataForm['type'] = 'ArchiveTransfer'; - } elseif ($aDataForm['type'] == 'ArchiveTransferReply') { - $reference = $aDataForm['reference']; - $aDataForm['type'] = 'ArchiveTransferReplySent'; - } - - if (!empty($reference)) { - $replyData = $RequestSeda->getMessageByReference($reference); - $oReplyData = json_decode($replyData->data); - $aDataForm['operationComments'] = $oReplyData->Comment; - } - - $messageExchangeData = json_decode($messageExchangeData->data); - - $TransferringAgencyMetaData = $messageExchangeData->TransferringAgency->OrganizationDescriptiveMetadata; - $aDataForm['from'] = $TransferringAgencyMetaData->Contact[0]->PersonName . ' (' . $TransferringAgencyMetaData->Name . ')'; - - $ArchivalAgency = $messageExchangeData->ArchivalAgency; - $ArchivalAgencyMetaData = $ArchivalAgency->OrganizationDescriptiveMetadata; - $aDataForm['communicationType'] = $ArchivalAgencyMetaData->Communication[0]->value; - $aDataForm['contactInfo'] = $ArchivalAgencyMetaData->Name . ' - <b>' . $ArchivalAgency->Identifier->value . '</b> - ' . $ArchivalAgencyMetaData->Contact[0]->PersonName; - - $addressInfo = $ArchivalAgencyMetaData->Contact[0]->Address[0]->PostOfficeBox . ' ' . $ArchivalAgencyMetaData->Contact[0]->Address[0]->StreetName . ' ' . $ArchivalAgencyMetaData->Contact[0]->Address[0]->Postcode . ' ' . $ArchivalAgencyMetaData->Contact[0]->Address[0]->CityName . ' ' . $ArchivalAgencyMetaData->Contact[0]->Address[0]->Country; - - $aDataForm['contactInfo'] .= ', ' . $addressInfo; - $aDataForm['body'] = $messageExchangeData->Comment[0]->value; - $aDataForm['isHtml'] = 'N'; - $aDataForm['object'] = $messageExchangeData->DataObjectPackage->DescriptiveMetadata->ArchiveUnit[0]->Content->Title[0]; - - $aDataForm['attachments'] = []; - $aDataForm['notes'] = []; - foreach ($unitIdentifierData as $value) { - if ($value->tablename == 'notes') { - $aDataForm['notes'][] = $value->res_id; - } - if ($value->tablename == 'res_attachments') { - $aDataForm['attachments'][] = $value->res_id; - } - if ($value->tablename == 'res_letterbox') { - $aDataForm['resMasterAttached'] = 'Y'; - } - if ($value->disposition == 'body') { - $aDataForm['disposition'] = $value; - } - } - - return $aDataForm; - } -} diff --git a/modules/sendmail/mail_form.php b/modules/sendmail/mail_form.php index 4f29c2df44a48d26cb5da188912982cfa80fc510..c7128e568db5372709aca008b8946558e353f64e 100755 --- a/modules/sendmail/mail_form.php +++ b/modules/sendmail/mail_form.php @@ -31,7 +31,6 @@ require_once 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'] require_once 'modules'.DIRECTORY_SEPARATOR.'sendmail'.DIRECTORY_SEPARATOR .'class'.DIRECTORY_SEPARATOR.'class_modules_tools.php'; require_once 'modules/sendmail/class/class_email_signatures.php'; -require_once 'modules/sendmail/Controllers/ReadMessageExchangeController.php'; $core_tools = new core_tools(); $request = new request(); @@ -1009,7 +1008,6 @@ if ($mode == 'add') { if (isset($_REQUEST['id']) && !empty($_REQUEST['id'])) { $id = $_REQUEST['id']; if ($formContent == 'messageExchange') { - $emailArray = ReadMessageExchangeController::getMessageExchange(['id' => $id]); } else { $user = \User\models\UserModel::getByLogin(['login' => $_SESSION['user']['UserId'], 'select' => ['id']]); $emailArray = [];