Пример #1
0
                 // Skip files, that attached to some existing tasks
                 $rsFiles = CTaskFiles::GetList(array(), array('FILE_ID' => $file));
                 // There is no tasks with this file, so it can be removed
                 if (!($arFile = $rsFiles->Fetch())) {
                     $arFilesToUnlink[] = $file;
                 }
             }
         }
         foreach ($arFilesToUnlink as $file) {
             CFile::Delete($file);
         }
     }
     $result = $template->Update($arParams["TEMPLATE_ID"], $arFields, array('CHECK_RIGHTS_ON_FILES' => true, 'USER_ID' => (int) $USER->getId()));
     $templateID = $arParams["TEMPLATE_ID"];
 } else {
     $templateID = $result = $template->Add($arFields, array('CHECK_RIGHTS_ON_FILES' => true, 'USER_ID' => (int) $USER->getId()));
 }
 // format check list items
 if (is_array($_POST['CHECKLIST_ITEM_ID'])) {
     $sort = 0;
     $items = array();
     foreach ($_POST['CHECKLIST_ITEM_ID'] as $clId) {
         if ((string) $_POST['CHECKLIST_ITEM_TITLE'][$clId]) {
             $id = (string) $clId === (string) intval($clId) ? intval($clId) : false;
             $data = array('TEMPLATE_ID' => $templateID, 'TITLE' => $_POST['CHECKLIST_ITEM_TITLE'][$clId], 'CHECKED' => $_POST['CHECKLIST_ITEM_IS_CHECKED'][$clId] == 'Y', 'SORT' => $sort++);
             if (intval($id)) {
                 $data['ID'] = $id;
                 $items[$id] = $data;
             } else {
                 $items[] = $data;
             }
Пример #2
0
     }
 }
 if ($_POST["ADD_TO_TIMEMAN"] == "Y") {
     CTaskPlannerMaintance::plannerActions(array('add' => array($taskID)));
 }
 if ($arFields["REPLICATE"] == "Y") {
     unset($arTemplateFields["DEADLINE"], $arTemplateFields["START_DATE_PLAN"], $arTemplateFields["END_DATE_PLAN"]);
     $arTemplateFields["TASK_ID"] = $taskID;
     $arTemplateFields["ACCOMPLICES"] = sizeof($arTemplateFields["ACCOMPLICES"]) ? serialize($arTemplateFields["ACCOMPLICES"]) : false;
     $arTemplateFields["AUDITORS"] = sizeof($arTemplateFields["AUDITORS"]) ? serialize($arTemplateFields["AUDITORS"]) : false;
     $arTemplateFields["TAGS"] = strlen(trim($arTemplateFields["TAGS"])) > 0 ? serialize(explode(",", $arTemplateFields["TAGS"])) : false;
     $arTemplateFields["FILES"] = sizeof($arTemplateFields["FILES"]) ? serialize($arTemplateFields["FILES"]) : false;
     $arTemplateFields["DEPENDS_ON"] = sizeof($arTemplateFields["DEPENDS_ON"]) ? serialize($arTemplateFields["DEPENDS_ON"]) : false;
     $arTemplateFields["REPLICATE_PARAMS"] = serialize($arTemplateFields["REPLICATE_PARAMS"]);
     $taskTemplate = new CTaskTemplates();
     $templateId = $taskTemplate->Add($arTemplateFields, array('CHECK_RIGHTS_ON_FILES' => 'Y', 'USER_ID' => $USER->getId()));
     if (intval($templateId)) {
         // checklist
         if (is_array($_POST['CHECKLIST_ITEM_ID'])) {
             $sort = 0;
             $items = array();
             foreach ($_POST['CHECKLIST_ITEM_ID'] as $clId) {
                 if ((string) $_POST['CHECKLIST_ITEM_TITLE'][$clId]) {
                     $id = (string) $clId === (string) intval($clId) ? intval($clId) : false;
                     $data = array('TITLE' => $_POST['CHECKLIST_ITEM_TITLE'][$clId], 'CHECKED' => $_POST['CHECKLIST_ITEM_IS_CHECKED'][$clId] == 'Y', 'SORT' => $sort++);
                     if (intval($id)) {
                         $data['ID'] = $id;
                         $items[$id] = $data;
                     } else {
                         $items[] = $data;
                     }