コード例 #1
0
ファイル: event.php プロジェクト: mrdeadmouse/u136006
 function Update($ID, $arFields)
 {
     global $DB;
     if (!$this->CheckFields($arFields, $ID)) {
         return false;
     }
     if (is_set($arFields, "ACTIVE") && $arFields["ACTIVE"] != "Y") {
         $arFields["ACTIVE"] = "N";
     }
     $arLID = array();
     if (is_set($arFields, "LID")) {
         if (is_array($arFields["LID"])) {
             $arLID = $arFields["LID"];
         } else {
             $arLID[] = $arFields["LID"];
         }
         $arFields["LID"] = false;
         foreach ($arLID as $v) {
             $arFields["LID"] = $v;
         }
     }
     $arATTACHMENT_FILE = array();
     if (is_set($arFields, "ATTACHMENT_FILE")) {
         if (is_array($arFields["ATTACHMENT_FILE"])) {
             $arATTACHMENT_FILE = $arFields["ATTACHMENT_FILE"];
         } else {
             $arATTACHMENT_FILE[] = $arFields["ATTACHMENT_FILE"];
         }
         $arATTACHMENT_FILE_tmp = array();
         foreach ($arATTACHMENT_FILE as $v) {
             $v = intval($v);
             $arATTACHMENT_FILE_tmp[] = $v;
         }
         $arATTACHMENT_FILE = $arATTACHMENT_FILE_tmp;
         unset($arFields['ATTACHMENT_FILE']);
     }
     if (array_key_exists('NAME', $arFields)) {
         unset($arFields['NAME']);
     }
     $ID = intval($ID);
     Mail\Internal\EventMessageTable::update($ID, $arFields);
     if (count($arLID) > 0) {
         Mail\Internal\EventMessageSiteTable::delete($ID);
         $resultDb = \Bitrix\Main\SiteTable::getList(array('select' => array('LID'), 'filter' => array('LID' => $arLID)));
         while ($arResultSite = $resultDb->fetch()) {
             Mail\Internal\EventMessageSiteTable::add(array('EVENT_MESSAGE_ID' => $ID, 'SITE_ID' => $arResultSite['LID']));
         }
     }
     if (count($arATTACHMENT_FILE) > 0) {
         foreach ($arATTACHMENT_FILE as $file_id) {
             Mail\Internal\EventMessageAttachmentTable::add(array('EVENT_MESSAGE_ID' => $ID, 'FILE_ID' => $file_id));
         }
     }
     return true;
 }
コード例 #2
0
ファイル: message_edit.php プロジェクト: Satariall/izurit
     } else {
         //Files from template_test.php
         foreach (array_reverse($_POST["FILES"], true) as $file) {
             if (is_array($file) && strlen($file["tmp_name"]) > 0 && $APPLICATION->GetFileAccessPermission($file["tmp_name"]) >= "W") {
                 array_unshift($arFiles, $file);
             }
         }
     }
 }
 foreach ($arFiles as $file) {
     if (strlen($file["name"]) > 0 and intval($file["size"]) > 0) {
         $resultInsertAttachFile = false;
         $file["MODULE_ID"] = "main";
         $fid = intval(CFile::SaveFile($file, "main", true));
         if ($fid > 0) {
             $resultAddAttachFile = \Bitrix\Main\Mail\Internal\EventMessageAttachmentTable::add(array('EVENT_MESSAGE_ID' => $ID, 'FILE_ID' => $fid));
             $resultInsertAttachFile = $resultAddAttachFile->isSuccess();
         }
         if (!$resultInsertAttachFile) {
             break;
         }
     }
 }
 if (strlen($save) > 0) {
     if (!empty($_REQUEST["type"])) {
         LocalRedirect(BX_ROOT . "/admin/type_edit.php?EVENT_NAME=" . $EVENT_NAME . "&lang=" . LANGUAGE_ID);
     } else {
         LocalRedirect(BX_ROOT . "/admin/message_admin.php?lang=" . LANGUAGE_ID);
     }
 } else {
     LocalRedirect(BX_ROOT . "/admin/message_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $ID . "&type=" . $_REQUEST["type"] . "&" . $tabControl->ActiveTabParam());