%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/components/bitrix/bizproc.task/templates/.default/ |
Current File : //home/bitrix/www/bitrix/components/bitrix/bizproc.task/templates/.default/template.php |
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); \Bitrix\Main\Page\Asset::getInstance()->addJs('/bitrix/js/bizproc/tools.js'); \Bitrix\Main\Loader::includeModule('socialnetwork'); CJSCore::Init(array('socnetlogdest', 'bp_user_selector')); \Bitrix\Main\UI\Extension::load("ui.tooltip"); $cmpId = RandString(); $showDelegationButton = ( !$arResult['IsComplete'] && ($arResult['isAdmin'] || (int)$arResult['TASK']['DELEGATION_TYPE'] !== CBPTaskDelegationType::None) && IsModuleInstalled('intranet') ); if (empty($arResult['DOCUMENT_ICON'])) { $moduleIcon = 'default'; if (in_array($arResult['TASK']['MODULE_ID'], array('crm', 'disk', 'iblock', 'lists', 'tasks'))) $moduleIcon = $arResult['TASK']['MODULE_ID']; $arResult['DOCUMENT_ICON'] = $templateFolder.'/images/bp-'.$moduleIcon.'-icon.png'; } ?> <script type="text/javascript"> BX.message({ BPAT_DELEGATE_SELECT : '<?=GetMessageJS('BPAT_DELEGATE_SELECT')?>', BPAT_DELEGATE_CANCEL : '<?=GetMessageJS('BPAT_DELEGATE_CANCEL')?>' }); </script> <?if ($arParams['POPUP']):?> <div class="bp-popup-title"><?=htmlspecialcharsbx($arResult["WORKFLOW_TEMPLATE_NAME"])?></div> <div class="bp-popup"> <?endif?> <div class="bp-task-page bp-lent <?if (empty($arResult["TASK"]['STARTED_BY_PHOTO_SRC'])):?>no-photo<?endif?>"> <?if (!empty($arResult["TASK"]['STARTED_BY_PHOTO_SRC'])):?> <span class="bp-avatar" bx-tooltip-user-id="<?=(int)$arResult["TASK"]['STARTED_BY']?>" bx-tooltip-classname="intrantet-user-selector-tooltip"> <img src="<?=$arResult["TASK"]['STARTED_BY_PHOTO_SRC']?>" alt=""> </span> <?endif?> <span class="bp-title"><?=$arResult["TASK"]["NAME"]?></span> <?if ($arResult["TASK"]["DOCUMENT_NAME"]):?> <span class="bp-title-desc"> <span class="bp-title-desc-icon"> <img src="<?=htmlspecialcharsbx($arResult['DOCUMENT_ICON'])?>" width="36" border="0" /> </span> <span class=""><?=$arResult["TASK"]["DOCUMENT_NAME"]?></span> </span> <?endif?> <div class="bp-short-process-inner"> <?$APPLICATION->IncludeComponent( "bitrix:bizproc.workflow.faces", "", array( "WORKFLOW_ID" => $arResult["TASK"]["WORKFLOW_ID"], "TARGET_TASK_ID" => $arResult["TASK"]["ID"] ), $component ); if ($arResult['ReadOnly']): echo '<span class="bp-status"></span>'; elseif ($arResult["ShowMode"] == "Success"): switch ($arResult["TASK"]['USER_STATUS']) { case CBPTaskUserStatus::Yes: echo '<span class="bp-status-ready"><span>'.GetMessage('BPATL_USER_STATUS_YES').'</span></span>'; break; case CBPTaskUserStatus::No: case CBPTaskUserStatus::Cancel: echo '<span class="bp-status-cancel"><span>'.GetMessage('BPATL_USER_STATUS_NO').'</span></span>'; break; default: echo '<span class="bp-status-ready"><span>'.GetMessage('BPATL_USER_STATUS_OK').'</span></span>'; } elseif ($arResult["TASK"]['IS_INLINE'] == 'Y'):?> <div class="bp-btn-panel"> <div class="bp-btn-panel-inner"> <? if ($arParams['POPUP']): foreach ($arResult['TaskControls']['BUTTONS'] as $control): $class = $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::No || $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::Cancel ? 'decline' : 'accept'; $props = CUtil::PhpToJSObject(array( 'TASK_ID' => $arResult["TASK"]['ID'], $control['NAME'] => $control['VALUE'] )); ?> <a href="#" onclick="return BX.Bizproc.doInlineTask(<?=$props?>, function(){ if (!!BX.Bizproc.taskPopupInstance) BX.Bizproc.taskPopupInstance.close(); if (BX.Bizproc.taskPopupCallback) return BX.Bizproc.taskPopupCallback(); window.location.reload()}, this)" class="bp-button bp-button bp-button-<?=$class?>"><span class="bp-button-icon"></span><span class="bp-button-text"><?=$control['TEXT']?></span></a> <? endforeach; else: ?> <form method="post" action="<?=POST_FORM_ACTION_URI?>"> <?= bitrix_sessid_post() ?> <input type="hidden" name="action" value="doTask" /> <input type="hidden" name="id" value="<?= (int)$arResult["TASK"]["ID"] ?>" /> <input type="hidden" name="TASK_ID" value="<?= (int)$arResult["TASK"]["ID"] ?>" /> <input type="hidden" name="workflow_id" value="<?= htmlspecialcharsbx($arResult["TASK"]["WORKFLOW_ID"]) ?>" /> <input type="hidden" name="back_url" value="<?= htmlspecialcharsbx($arResult['backUrl']) ?>" /> <? foreach ($arResult['TaskControls']['BUTTONS'] as $control): $class = $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::No || $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::Cancel ? 'decline' : 'accept'; $props = CUtil::PhpToJSObject(array( 'TASK_ID' => $arResult["TASK"]['ID'], $control['NAME'] => $control['VALUE'] )); ?> <button type="submit" name="<?=htmlspecialcharsbx($control['NAME'])?>" value="<?=htmlspecialcharsbx($control['VALUE'])?>" class="bp-button bp-button bp-button-<?=$class?>" style="border: none"> <span class="bp-button-icon"></span><span class="bp-button-text"><?=$control['TEXT']?></span> </button> <? endforeach; ?> </form> <?endif;?> </div> </div> <?endif?> </div> <div class="bp-task-block"> <? if (!empty($arResult["ERROR_MESSAGE"])): ShowError($arResult["ERROR_MESSAGE"]); endif; ?> <span class="bp-task-block-title"><?=GetMessage("BPATL_TASK_TITLE")?>: </span> <? if (strlen($arResult["TASK"]["DESCRIPTION"]) > 0): echo nl2br($arResult["TASK"]["DESCRIPTION"]); else: echo $arResult["TASK"]["NAME"]; endif; ?> <br /><br /> <p> <?if (!empty($arResult["TASK"]["URL"]["VIEW"])):?> <a href="<?=$arResult["TASK"]["URL"]["VIEW"]?>" <?if ($arParams['POPUP']):?>target="_blank" <?endif?>><?=GetMessage("BPAT_GOTO_DOC")?></a> <?endif;?> </p> <? if ($showDelegationButton && $arResult["TASK"]['IS_INLINE'] == 'Y'):?> <a href="#" class="bp-button bp-button-transparent bp-button-first" onclick="return BX.Bizproc.showDelegationPopup(this, <?= (int)$arResult["TASK"]["ID"] ?>, <?= (int)$arParams["USER_ID"] ?>)"><span></span><?=GetMessage('BPAT_DELEGATE_LABEL')?></a> <? endif; if ($arResult["ShowMode"] != "Success" && $arResult["TASK"]['IS_INLINE'] != 'Y'): ?> <form method="post" name="bp_task_<?=$cmpId?>" action="<?=POST_FORM_ACTION_URI?>" enctype="multipart/form-data" <?if ($arParams['POPUP']):?> onsubmit="return BX.Bizproc.postTaskForm(this, event)"<?endif?>> <?= bitrix_sessid_post() ?> <input type="hidden" name="" value="" id="bp_task_<?=$cmpId?>_submiter"> <input type="hidden" name="action" value="doTask" /> <input type="hidden" name="id" value="<?= (int)$arResult["TASK"]["ID"] ?>" /> <input type="hidden" name="TASK_ID" value="<?= (int)$arResult["TASK"]["ID"] ?>" /> <input type="hidden" name="workflow_id" value="<?= htmlspecialcharsbx($arResult["TASK"]["WORKFLOW_ID"]) ?>" /> <input type="hidden" name="back_url" value="<?= htmlspecialcharsbx($arResult['backUrl']) ?>" /> <table class="bizproc-table-main bizproc-task-table" cellpadding="3" border="0"> <?= $arResult["TaskForm"]?> </table> <div class="bizproc-item-buttons"> <?if (!empty($arResult['TaskControls']['BUTTONS'])):?> <? foreach ($arResult['TaskControls']['BUTTONS'] as $control): $class = $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::No || $control['TARGET_USER_STATUS'] == CBPTaskUserStatus::Cancel ? 'decline' : 'accept'; $props = CUtil::PhpToJSObject(array( 'TASK_ID' => $arResult["TASK"]['ID'], $control['NAME'] => $control['VALUE'] )); ?> <button type="submit" name="<?=htmlspecialcharsbx($control['NAME'])?>" value="<?=htmlspecialcharsbx($control['VALUE'])?>" class="bp-button bp-button bp-button-<?=$class?>" style="border: none"> <?=$control['TEXT']?> </button> <? endforeach; ?> <?else: echo $arResult["TaskFormButtons"]; endif;?> <?if ($showDelegationButton):?> <a href="#" class="bp-button bp-button-transparent" onclick="return BX.Bizproc.showDelegationPopup(this, <?= (int)$arResult["TASK"]["ID"] ?>, <?= (int)$arParams["USER_ID"] ?>)"><span></span><?=GetMessage('BPAT_DELEGATE_LABEL')?></a> <?endif?> </div> <script> BX.ready(function(){ var form = document.forms['bp_task_<?=$cmpId?>'], submiter = BX('bp_task_<?=$cmpId?>_submiter'); var children = BX.findChildren(form, {property: {type: 'submit'}}, true); for (var i=0; i<children.length; i++) { var cb = function() { submiter.name = this.name; submiter.value = this.value; }; BX.bind(children[i], 'click', cb); BX.bind(children[i], 'tap', cb); } }); </script> </form> <? endif; ?> </div> <?if (!$arParams['POPUP']):?> <div class="bp-tab-container"> <div id="bp-task-tabs-header" class="bp-tabs-block"> <span id="bp-task-tab-1" class="bp-tab bp-tab-active" onclick="return function(){ var t1 = BX('bp-task-tab-1'), t2 = BX('bp-task-tab-2'), t1c = BX('bp-task-tab-1-content'), t2c = BX('bp-task-tab-2-content'); BX.addClass(t1, 'bp-tab-active'); BX.removeClass(t2, 'bp-tab-active'); BX.addClass(t1c, 'active'); BX.removeClass(t2c, 'active'); return false; }()"><?=GetMessage("BPATL_COMMENTS")?></span> <span id="bp-task-tab-2" class="bp-tab" onclick="return function(){ var t1 = BX('bp-task-tab-2'), t2 = BX('bp-task-tab-1'), t1c = BX('bp-task-tab-2-content'), t2c = BX('bp-task-tab-1-content'); BX.addClass(t1, 'bp-tab-active'); BX.removeClass(t2, 'bp-tab-active'); BX.addClass(t1c, 'active'); BX.removeClass(t2c, 'active'); return false; }()"><?=GetMessage("BPATL_DOC_HISTORY")?></span> </div> <div id="bp-task-tabs-content" class="bp-tab-contents"> <div id="bp-task-tab-1-content" class="bp-tab-content active"> <?endif?> <? if (!isset($arParams['IFRAME']) || $arParams['IFRAME'] == 'N'): // A < E < I < M < Q < U < Y // A - NO ACCESS, E - READ, I - ANSWER // M - NEW TOPIC // Q - MODERATE, U - EDIT, Y - FULL_ACCESS $APPLICATION->IncludeComponent("bitrix:forum.comments", "bitrix24", array( "FORUM_ID" => CBPHelper::getForumId(), "ENTITY_TYPE" => "WF", "ENTITY_ID" => CBPStateService::getWorkflowIntegerId($arResult["TASK"]['WORKFLOW_ID']), "ENTITY_XML_ID" => "WF_".$arResult["TASK"]['WORKFLOW_ID'], "PERMISSION" => "M", "URL_TEMPLATES_PROFILE_VIEW" => "/company/personal/user/#user_id#/", "SHOW_RATING" => "Y", "SHOW_LINK_TO_MESSAGE" => "N", "BIND_VIEWER" => "Y" ), false, array('HIDE_ICONS' => 'Y') ); else: ?> <iframe src="/bitrix/components/bitrix/bizproc.task/comments.php?TASK_ID=<?=$arResult['TASK']['ID']?>&USER_ID=<?=$arParams['USER_ID']?>&site_id=<?=SITE_ID?>&sessid=<?=bitrix_sessid()?>" frameborder="0" width="100%" height="0" onload="var me = this, resizer = function(f) { var innerDoc = f.contentDocument ? f.contentDocument : (f.contentWindow? f.contentWindow.document : null); if (!innerDoc) return false; var wrapper = BX.findChild(innerDoc.body, {id: 'wrapper'}); if (!wrapper) return false; f.style.height = wrapper.offsetHeight + 'px'; }; resizer(me); var interval = setInterval(function(){ var result = resizer(me); if (result === false) clearInterval(interval); }, 300);"> </iframe> <? endif; if (!$arParams['POPUP']):?> </div> <div id="bp-task-tab-2-content" class="bp-tab-content"> <? $APPLICATION->IncludeComponent( "bitrix:bizproc.log", "", array( "COMPONENT_VERSION" => 2, "ID" => $arResult["TASK"]["WORKFLOW_ID"], "SET_TITLE" => "N", "INLINE_MODE" => "Y", "NAME_TEMPLATE" => $arParams["NAME_TEMPLATE"] ), $component ); ?> </div> </div> </div> <?endif?> </div>