All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.designer.edit_kaleo_definition_version.jsp Maven / Gradle / Ivy

The newest version!
<%--
/**
 * SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
 * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
 */
--%>

<%@ include file="/designer/init.jsp" %>

<%
String successMessageKey = KaleoDesignerPortletKeys.KALEO_DESIGNER + "requestProcessed";
%>


	


<%
String mvcPath = ParamUtil.getString(request, "mvcPath", "/designer/edit_workflow_definition.jsp");

String redirect = ParamUtil.getString(request, "redirect");
String closeRedirect = ParamUtil.getString(request, "closeRedirect");

KaleoDefinitionVersion kaleoDefinitionVersion = (KaleoDefinitionVersion)request.getAttribute(KaleoDesignerWebKeys.KALEO_DRAFT_DEFINITION);

KaleoDefinition kaleoDefinition = kaleoDesignerDisplayContext.getKaleoDefinition(kaleoDefinitionVersion);

String name = BeanParamUtil.getString(kaleoDefinitionVersion, request, "name");
String draftVersion = BeanParamUtil.getString(kaleoDefinitionVersion, request, "version");
String content = BeanParamUtil.getString(kaleoDefinitionVersion, request, "contentAsXML");

String latestDraftVersion = StringPool.BLANK;
int version = 0;

KaleoDefinitionVersion latestKaleoDefinitionVersion = null;

if (kaleoDefinitionVersion != null) {
	if (Validator.isNull(name)) {
		name = kaleoDefinitionVersion.getName();
	}

	draftVersion = kaleoDefinitionVersion.getVersion();

	latestKaleoDefinitionVersion = KaleoDefinitionVersionLocalServiceUtil.getLatestKaleoDefinitionVersion(themeDisplay.getCompanyId(), name);

	latestDraftVersion = latestKaleoDefinitionVersion.getVersion();

	if (kaleoDefinition != null) {
		version = kaleoDefinition.getVersion();
	}
}

portletDisplay.setShowBackIcon(true);

portletDisplay.setURLBack(
	PortletURLBuilder.create(
		PortalUtil.getControlPanelPortletURL(renderRequest, KaleoDesignerPortletKeys.CONTROL_PANEL_WORKFLOW, PortletRequest.RENDER_PHASE)
	).setMVCPath(
		"/view.jsp"
	).buildString());

renderResponse.setTitle((kaleoDefinitionVersion == null) ? LanguageUtil.get(request, "new-workflow") : kaleoDefinitionVersion.getTitle(locale));

String state = (String)request.getParameter(WorkflowWebKeys.WORKFLOW_JSP_STATE);

String duplicateTitle = kaleoDesignerDisplayContext.getDuplicateTitle(kaleoDefinition);

String randomNamespace = StringUtil.randomId() + StringPool.UNDERLINE;
%>

<%@ include file="/designer/edit_kaleo_definition_version_exceptions.jspf" %>
window['afterTabViewChange'] = function (event) { var tabContentNode = event.newVal.get('boundingBox'); var kaleoDesigner = kaleoDesigner; if (tabContentNode === kaleoDesigner.viewNode && kaleoDesigner.editor) { setTimeout(() => { kaleoDesigner.set('definition', kaleoDesigner.editor.get('value')); }, 0); } }; window['publishKaleoDefinitionVersion'] = function () { updateContent(); updateAction( '' ); submitForm(document.fm); }; window['saveKaleoDefinitionVersion'] = function () { updateContent(); updateAction( '' ); submitForm(document.fm); }; window['updateAction'] = function (action) { var form = document.fm; form.setAttribute('action', action); }; window['updateContent'] = function () { var content = document.getElementById('content'); var activeTab = kaleoDesigner.contentTabView.getActiveTab(); if (activeTab === kaleoDesigner.sourceNode) { content.value = kaleoDesigner.editor.get('value'); } else { content.value = kaleoDesigner.getContent(); } }; window['closeKaleoDialog'] = function () { var dialog = Liferay.Util.getWindow(); if (dialog) { dialog.destroy(); } }; <% String saveCallback = ParamUtil.getString(request, "saveCallback"); %> Liferay.Util.getOpener()['<%= HtmlUtil.escapeJS(saveCallback) %>']( '<%= HtmlUtil.escapeJS(name) %>', <%= version %>, <%= draftVersion %> ); var MAP_ROLE_TYPES = { account: 6, depot: 5, organization: 3, regular: 1, site: 2, }; var initializeKaleoDesigner = function () { window.kaleoDesigner = new Liferay.KaleoDesigner({ <% String availableFields = ParamUtil.getString(request, "availableFields"); %> availableFields: A.Object.getValue( window, '<%= HtmlUtil.escapeJS(availableFields) %>'.split('.') ), <% String availablePropertyModels = ParamUtil.getString(request, "availablePropertyModels", "Liferay.KaleoDesigner.AVAILABLE_PROPERTY_MODELS.KALEO_FORMS_EDIT"); %> availablePropertyModels: A.Object.getValue( window, '<%= HtmlUtil.escapeJS(availablePropertyModels) %>'.split('.') ), boundingBox: '#propertyBuilder', data: { kaleoProcessId: '<%= ParamUtil.getLong(request, "kaleoProcessId") %>', }, definition: '<%= HtmlUtil.escapeJS(content) %>', <% String propertiesSaveCallback = ParamUtil.getString(request, "propertiesSaveCallback"); %> on: { save: Liferay.Util.getOpener()[ '<%= HtmlUtil.escapeJS(propertiesSaveCallback) %>' ], }, portletNamespace: '', <% String portletResourceNamespace = ParamUtil.getString(request, "portletResourceNamespace"); %> portletResourceNamespace: '<%= HtmlUtil.escapeJS(portletResourceNamespace) %>', srcNode: '#propertyBuilderContent', }).render(); kaleoDesigner.after('render', () => { var diagramBuilderControlElements = document.querySelectorAll( '#propertyBuilder .diagram-builder-controls' ); diagramBuilderControlElements.forEach((element) => { element.parentElement.removeChild(element); }); kaleoDesigner.detachAll(); kaleoDesigner.set('readOnly', true); }); var uploadFile = document.querySelector('#upload'); var previousContent = ''; uploadFile.addEventListener('change', (evt) => { var files = evt.target.files; if (files) { var reader = new FileReader(); reader.onloadend = function (evt) { if (evt.target.readyState == FileReader.DONE) { previousContent = kaleoDesigner.getEditorContent(); kaleoDesigner.setEditorContent( evt.target.result ); uploadFile.value = ''; Liferay.KaleoDesignerDialogs.showDefinitionImportSuccessMessage( '' ); } }; reader.readAsText(files[0]); } }); Liferay.on('undoDefinition', (event) => { kaleoDesigner.setEditorContent(previousContent); Liferay.KaleoDesignerDialogs.showActionUndoneSuccessMessage(); }); kaleoDesigner.contentTabView.after({ selectionChange: afterTabViewChange, }); var fields = kaleoDesigner.get('fields'); if (fields.size() == 0) { kaleoDesigner.set('fields', [ { name: 'StartNode', type: 'start', xy: [100, 40], }, { actions: { description: [Liferay.KaleoDesignerStrings.approve], executionType: ['onEntry'], name: [Liferay.KaleoDesignerStrings.approve], script: [ 'com.liferay.portal.kernel.workflow.WorkflowStatusManagerUtil.updateStatus(com.liferay.portal.kernel.workflow.WorkflowConstants.getLabelStatus("approved"), workflowContext);', ], scriptLanguage: ['groovy'], }, name: 'EndNode', type: 'end', xy: [100, 500], }, ]); kaleoDesigner.connect('StartNode', 'EndNode'); } var createRoleAutocomplete = function ( inputNode, resultTextLocator, selectFn ) { var instance = this; var roleType = 0; var roleTypeNode = inputNode.previous('[name=roleType]'); if (roleTypeNode) { roleType = roleTypeNode.val(); } var type = MAP_ROLE_TYPES[roleType] || 0; var autocomplete = Liferay.KaleoDesignerAutoCompleteUtil.create( '', inputNode, '', null, resultTextLocator, selectFn ); autocomplete.set( 'requestTemplate', '&type=' + type + '&keywords={query}' ); autocomplete.sendRequest(''); }; var createUserAutocomplete = function ( inputNode, resultTextLocator, selectFn ) { var autocomplete = Liferay.KaleoDesignerAutoCompleteUtil.create( '', inputNode, '', null, resultTextLocator, selectFn ); autocomplete.sendRequest(''); }; A.getDoc().delegate( 'focus', (event) => { var inputNode = event.currentTarget; var inputName = inputNode.attr('name'); if (inputName == 'roleName' || inputName == 'roleNameAC') { createRoleAutocomplete(inputNode, null, (event) => { var data = event.result.raw; var roleId = inputNode.next('[name=roleId]'); if (roleId) { roleId.val(data.roleId); } }); } else if (inputName == 'fullName') { createUserAutocomplete(inputNode, inputName, (event) => { var data = event.result.raw; A.each(data, (item, index, collection) => { var input = inputNode .siblings('[name=' + index + ']') .first(); if (input) { input.val(data[index]); } }); }); } }, '.assignments-cell-editor-input' ); }; var opener = Liferay.Util.getOpener(); var inModal = window !== opener; if (inModal && opener.document.querySelector('.loading-animation')) { opener.Liferay.on('modalIframeLoaded', () => { initializeKaleoDesigner(); }); } else { initializeKaleoDesigner(); } Liferay.componentReady('title').then((titleComponent) => { var titlePlaceholderInput = titleComponent.get('inputPlaceholder'); if (titlePlaceholderInput) { titlePlaceholderInput.after('change', (event) => { kaleoDesigner.set( 'definitionName', titleComponent.getValue() ); }); } }); var dialog = Liferay.Util.getWindow(); if (dialog && !dialog._dialogAction) { dialog._dialogAction = function (event) { if (!event.newVal) { <% boolean refreshOpenerOnClose = ParamUtil.getBoolean(request, "refreshOpenerOnClose"); %> <% String openerWindowName = ParamUtil.getString(request, "openerWindowName"); %> var openerWindow = Liferay.Util.getTop(); var openerDialog = Liferay.Util.getWindow( '<%= HtmlUtil.escapeJS(openerWindowName) %>' ); openerWindow = openerDialog.iframe.node .get('contentWindow') .getDOM(); openerWindow.Liferay.Portlet.refresh( '#p_p_id<%= HtmlUtil.escapeJS(portletResourceNamespace) %>' ); } }; dialog.on('visibleChange', dialog._dialogAction); }
var duplicateWorkflowTitle = ''; Liferay.on('duplicateDefinition', function (event) { Liferay.KaleoDesignerDialogs.confirmBeforeDuplicateDialog( this, '<%= duplicateWorkflowDefinition %>', duplicateWorkflowTitle, '<%= randomNamespace %>', '' ); });




© 2015 - 2025 Weber Informatics LLC | Privacy Policy