Exemplo n.º 1
0
if ($arResult['TASK']['DEADLINE']) {
    echo CAllDatabase::FormatDate($arResult['TASK']['DEADLINE'], FORMAT_DATETIME, 'YYYY-MM-DD HH:MI:SS');
} else {
    echo date('Y') . '-' . date('m') . '-' . date('d') . ' ' . date('H') . ':' . date('i') . ':00';
}
?>
',
							format: 'y-M-d H:m:s',
							type: 'datetime',
							callback: function(res)
							{
								BX('DEADLINE').innerHTML = res;
							}
						});"><?php 
if ($arResult['TASK']['DEADLINE']) {
    echo CAllDatabase::FormatDate($arResult['TASK']['DEADLINE'], FORMAT_DATETIME, 'YYYY-MM-DD HH:MI:SS');
} else {
    echo GetMessage('MB_TASKS_TASK_EDIT_BTN_SELECT');
}
?>
</span>
					</span>
			</div>
			<div class="task-form-row">
				<span class="task-form-row-left"><?php 
echo GetMessage('MB_TASKS_TASK_EDIT_PRIORITY');
?>
</span><span class="task-form-row-right">
					<select id="PRIORITY" name="PRIORITY">
						<?php 
$arPriorities = array(CTasks::PRIORITY_LOW => GetMessage('MB_TASKS_TASK_EDIT_PRIORITY_LOW'), CTasks::PRIORITY_AVERAGE => GetMessage('MB_TASKS_TASK_EDIT_PRIORITY_AVERAGE'), CTasks::PRIORITY_HIGH => GetMessage('MB_TASKS_TASK_EDIT_PRIORITY_HIGH'));
Exemplo n.º 2
0
 public static function SaveTask($tasksData)
 {
     $rc = false;
     if (!$GLOBALS['USER']->IsAuthorized()) {
         return false;
     }
     $delegateToUser = false;
     if (isset($tasksData['META::DELEGATE_TO_USER'])) {
         $delegateToUser = (int) $tasksData['META::DELEGATE_TO_USER'];
     }
     $bDelegate = false;
     if ($delegateToUser > 0) {
         $bDelegate = true;
     }
     $curUserId = (int) $GLOBALS['USER']->GetID();
     if (!CModule::IncludeModule('socialnetwork')) {
         return false;
     }
     $arNewTaskFields = false;
     $bErrorOccuredOnTaskCreation = false;
     if (isset($tasksData['TASK_ID']) && check_bitrix_sessid()) {
         $bCreateMode = true;
         if ($tasksData['TASK_ID'] > 0) {
             $bCreateMode = false;
         }
         // We are in edit mode
         if ($bCreateMode && $bDelegate) {
             throw new Exception('$bCreateMode && $bDelegate');
         }
         if (!$bCreateMode && $bDelegate) {
             $arNewTaskFields = array();
             if (intval($delegateToUser) !== $curUserId) {
                 $arNewTaskFields['RESPONSIBLE_ID'] = $delegateToUser;
                 $arNewTaskFields['STATUS'] = CTasks::STATE_PENDING;
                 $rsTask = CTasks::GetByID($tasksData['TASK_ID']);
                 $arTask = $rsTask->Fetch();
                 if (!$arTask || !isset($arTask['ID'])) {
                     return false;
                 }
                 if (sizeof($arTask['AUDITORS'] > 0)) {
                     if (!in_array($curUserId, $arTask['AUDITORS'])) {
                         $arNewTaskFields['AUDITORS'] = $arTask['AUDITORS'];
                         $arNewTaskFields['AUDITORS'][] = $curUserId;
                     }
                 } else {
                     $arNewTaskFields['AUDITORS'] = array($curUserId);
                 }
             } else {
                 return false;
             }
         } else {
             $arNewTaskFields = array('TITLE' => $tasksData['TITLE'], 'DESCRIPTION' => $tasksData['DESCRIPTION'], 'RESPONSIBLE_ID' => $tasksData['RESPONSIBLE_ID'], 'PRIORITY' => $tasksData['PRIORITY'], 'DEADLINE' => CAllDatabase::FormatDate(str_replace('T', ' ', $tasksData['DEADLINE']), 'YYYY-MM-DD HH:MI:SS', FORMAT_DATETIME));
             if (isset($tasksData['ACCOMPLICES'])) {
                 if ($tasksData['ACCOMPLICES'] == -1) {
                     $arNewTaskFields['ACCOMPLICES'] = array();
                 } else {
                     $arNewTaskFields['ACCOMPLICES'] = $tasksData['ACCOMPLICES'];
                 }
             }
             if (isset($tasksData['AUDITORS'])) {
                 if ($tasksData['AUDITORS'] == -1) {
                     $arNewTaskFields['AUDITORS'] = array();
                 } else {
                     $arNewTaskFields['AUDITORS'] = $tasksData['AUDITORS'];
                 }
             }
             $arNewTaskFields['GROUP_ID'] = 0;
             if (isset($tasksData['GROUP_ID']) && intval($tasksData['GROUP_ID']) > 0) {
                 if (CSocNetFeaturesPerms::CurrentUserCanPerformOperation(SONET_ENTITY_GROUP, (int) $tasksData['GROUP_ID'], 'tasks', 'create_tasks')) {
                     $arNewTaskFields['GROUP_ID'] = (int) $tasksData['GROUP_ID'];
                 } else {
                     unset($arNewTaskFields['GROUP_ID']);
                 }
             }
             if ($bCreateMode) {
                 $arNewTaskFields['CREATED_BY'] = $curUserId;
             }
         }
         if (isset($tasksData['META::EVENT_GUID'])) {
             $arNewTaskFields['META::EVENT_GUID'] = $tasksData['META::EVENT_GUID'];
         }
         if ($bCreateMode) {
             $arNewTaskFields['ID'] = 0;
         } else {
             $arNewTaskFields['ID'] = (int) $tasksData['TASK_ID'];
         }
         $oTask = new CTasks();
         if (!$bCreateMode) {
             $rc = $oTask->Update($arNewTaskFields['ID'], $arNewTaskFields);
         } else {
             $arNewTaskFields['MULTITASK'] = 'N';
             $arNewTaskFields['DESCRIPTION_IN_BBCODE'] = 'Y';
             // Only creator or priveleged user can set responsible person.
             $arNewTaskFields['RESPONSIBLE_ID'] = $curUserId;
             if ($arNewTaskFields['CREATED_BY'] === $curUserId || $GLOBALS['USER']->IsAdmin() || CTasksTools::IsPortalB24Admin()) {
                 $arNewTaskFields['RESPONSIBLE_ID'] = (int) $tasksData['RESPONSIBLE_ID'];
             }
             $arNewTaskFields['SITE_ID'] = SITE_ID;
             $rc = $oTask->Add($arNewTaskFields);
             if ($rc > 0) {
                 $arNewTaskFields['ID'] = $rc;
             } else {
                 $bErrorOccuredOnTaskCreation = true;
             }
         }
         $rc = $arNewTaskFields['ID'];
     }
     if ($bErrorOccuredOnTaskCreation) {
         return false;
     }
     return $rc;
 }
Exemplo n.º 3
0
}
$rsUser = CUser::GetByID($arParams['USER_ID']);
if (!(is_object($rsUser) && ($arUser = $rsUser->GetNext()))) {
    return false;
}
$arResult['USER'] = $arUser;
unset($rsUser, $arUser);
$arNewTaskFields = false;
$bErrorOccuredOnTaskCreation = false;
if (isset($_POST['TASK_ID']) && check_bitrix_sessid()) {
    $bCreateMode = true;
    if ($_POST['TASK_ID'] > 0) {
        $bCreateMode = false;
    }
    // We are in edit mode
    $arNewTaskFields = array('TITLE' => $_POST['TITLE'], 'DESCRIPTION' => $_POST['DESCRIPTION'], 'RESPONSIBLE_ID' => $_POST['RESPONSIBLE_ID'], 'PRIORITY' => $_POST['PRIORITY'], 'DEADLINE' => CAllDatabase::FormatDate(str_replace('T', ' ', $_POST['DEADLINE']), 'YYYY-MM-DD HH:MI:SS', FORMAT_DATETIME));
    if ($bCreateMode) {
        $arNewTaskFields['ID'] = 0;
    } else {
        $arNewTaskFields['ID'] = (int) $_POST['TASK_ID'];
    }
    $arNewTaskFields['GROUP_ID'] = 0;
    if (isset($_POST['GROUP_ID']) && intval($_POST['GROUP_ID']) > 0) {
        if (CSocNetFeaturesPerms::CurrentUserCanPerformOperation(SONET_ENTITY_GROUP, (int) $_POST['GROUP_ID'], 'tasks', 'create_tasks')) {
            $arNewTaskFields['GROUP_ID'] = (int) $_POST['GROUP_ID'];
        } else {
            unset($arNewTaskFields['GROUP_ID']);
        }
    }
    $oTask = new CTasks();
    if (!$bCreateMode) {