". "". "". "". "". "". "". "". ""; $PM_SOAP = new PluginProcessmakerProcessmaker; $PM_DB = new PluginProcessmakerDB; $rand = rand(); echo "
"; echo __('Re-assign task to', 'processmaker')." "; echo ""; echo ""; echo $commoninputs; $can_unclaim = false; // by default $grp = false; $query = "SELECT TAS_GROUP_VARIABLE FROM TASK WHERE TAS_UID='".$_REQUEST['taskGuid']."' AND TAS_ASSIGN_TYPE='SELF_SERVICE';"; $res = $PM_DB->query($query); if ($PM_DB->numrows($res) > 0 && $row = $PM_DB->fetchAssoc($res)) { $can_unclaim = true; if ($row['TAS_GROUP_VARIABLE'] != '') { //self-service value based assignment $PM_SOAP->login(true); // needs to be logged in to be able to call SOAP $grp = $PM_SOAP->getGLPIGroupIdForSelfServiceTask($_REQUEST['caseGuid'], $_REQUEST['taskGuid']); } } PluginProcessmakerUser::dropdown( ['name' => 'users_id_recipient', 'value' => $_REQUEST['users_id'], 'used' => $_REQUEST['used'], 'entity' => 0, //$item->fields["entities_id"], // not used, as any user can be assigned to any tasks 'entity_sons' => false, // not used, as any user can be assigned to any tasks 'right' => 'all', 'all' => ($can_unclaim ? 0 : -1), 'rand' => $rand, 'width' => '', 'specific_tags' => ['taskGuid' => $_REQUEST['taskGuid'], 'grpGuid' => ($grp !== false ? $grp['uid'] : 0)] ]); echo "  "; echo ""; echo ""; echo HTML::scriptBlock(" $(function () { // Dialog helpers // Create the dialog with \"Re-assign\" button function showCommentDlg(title, content, alttext) { var dlgContents = { title: title, modal: true, width: 'auto', height: 'auto', resizable: false, close: function (event, ui) { $(this).dialog('destroy').remove(); }, buttons: [{ text: alttext, id: 'submit$rand', disabled: 'disabled', click: function() { $('#processmaker_form_task$rand-".$_REQUEST['delIndex']." input[name=comment]').val($('#comment$rand').val()); //$('#processmaker_form_task$rand-".$_REQUEST['delIndex']."').submit(); $('input[name=reassign').click(); $('#submit$rand').button('disable'); } }], show: true, hide: true } $('
').appendTo($('#processmaker_form_task$rand-".$_REQUEST['delIndex']."')); var locDlg = $('#reassign$rand').html(content + '

".addslashes(__('Input at least 10 words in English to justify.','processmaker'))."').dialog(dlgContents); $('#comment$rand').focus(); $('#comment$rand').on('keydown keyup', function(e) { if ($('#comment$rand').val().split(/\W+/).length > 10) { $('#submit$rand').button('enable'); } else { $('#submit$rand').button('disable'); } }); return locDlg; }; $('input[name=reassign$rand]').click(function (e) { e.preventDefault(); if ($('input[name=users_id]').val() == $('input[name=users_id_recipient]').val()) { // task is already assigned to this user if ($('input[name=users_id]').val() == 0) { alert('".addslashes(__('Task is already un-assigned!', 'processmaker'))."', '".addslashes(__('Re-assign task', 'processmaker'))."'); } else { alert('".addslashes(__('Task is already assigned to this user!', 'processmaker'))."', '".addslashes(__('Re-assign task', 'processmaker'))."'); } } else if ($('input[name=users_id_recipient]').val() == 0) { // un-claim if (".($can_unclaim ? 1 : 0)." && $('input[name=users_id]').val() != 0) { showCommentDlg('".addslashes(__('Un-claim task', 'processmaker'))."', '".addslashes(__('Please input reason to un-claim
(task will be re-assigned to former group):', 'processmaker'))."', '".addslashes(__('Un-claim', 'processmaker'))."'); } else { // task can't be unclaim because it isn't SELF_SERVICE alert('".addslashes(__("Can't un-assign task!", 'processmaker'))."', '".addslashes(__('Un-claim task', 'processmaker'))."'); } } else { showCommentDlg('".addslashes(__('Re-assign task', 'processmaker'))."', '".addslashes(__('Please input reason to re-assign:', 'processmaker'))."', '".addslashes(__('Re-assign', 'processmaker'))."'); } return false; }); }) "); if (Session::getLoginUserID() != $_REQUEST['users_id']) { echo "  "; echo ""; } Html::closeForm(true);