
META-INF.resources.select_organization_role.jspf 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
*/
--%>
<%
String p_u_i_d = ParamUtil.getString(request, "p_u_i_d");
int step = ParamUtil.getInteger(request, "step", 1);
String eventName = ParamUtil.getString(request, "eventName", liferayPortletResponse.getNamespace() + "selectOrganizationRole");
User selUser = PortalUtil.getSelectedUser(request);
long uniqueOrganizationId = 0;
List organizations = null;
String organizationIds = ParamUtil.getString(request, "organizationIds");
if (step == 1) {
String keywords = ParamUtil.getString(request, "keywords");
if (Validator.isNull(keywords)) {
organizations = OrganizationLocalServiceUtil.getOrganizations(StringUtil.split(organizationIds, 0L));
}
else {
organizations = OrganizationLocalServiceUtil.search(selUser.getCompanyId(), OrganizationConstants.ANY_PARENT_ORGANIZATION_ID, keywords, null, null, null, null, QueryUtil.ALL_POS, QueryUtil.ALL_POS);
}
if (filterManageableOrganizations) {
organizations = UsersAdminUtil.filterOrganizations(permissionChecker, organizations);
}
if (Validator.isNull(keywords) && (organizations.size() == 1)) {
step = 2;
Organization organization = organizations.get(0);
uniqueOrganizationId = organization.getOrganizationId();
}
}
SelectRoleManagementToolbarDisplayContext selectRoleManagementToolbarDisplayContext = new SelectRoleManagementToolbarDisplayContext(request, renderRequest, renderResponse, eventName);
PortletURL portletURL = selectRoleManagementToolbarDisplayContext.getPortletURL();
long organizationId = 0;
Organization selectedOrganization = null;
if (step == 2) {
organizationId = ParamUtil.getLong(request, "organizationId", uniqueOrganizationId);
selectedOrganization = OrganizationServiceUtil.getOrganization(organizationId);
}
SearchContainer roleSearchContainer = null;
if (selectedOrganization == null) {
roleSearchContainer = selectRoleManagementToolbarDisplayContext.getRoleSearchContainer(filterManageableRoles);
}
else {
roleSearchContainer = selectRoleManagementToolbarDisplayContext.getRoleSearchContainer(filterManageableRoles, selectedOrganization.getGroupId());
}
%>
<%
portletURL.setParameter("step", "1");
%>
<%
Group group = organization.getGroup();
%>
var form = document. selectOrganizationRoleFm;
Liferay.Util.delegate(
form,
'click',
'.organization-selector-button',
(event) => {
Liferay.Util.postForm(form, {
data: {
organizationId: event.delegateTarget.dataset.organizationid,
},
<%
portletURL.setParameter("resetCur", Boolean.TRUE.toString());
portletURL.setParameter("step", "2");
%>
url: '<%= portletURL.toString() %>',
});
}
);
<%
String groupEventName = ParamUtil.getString(request, "groupEventName");
%>
const openingLiferay = Liferay.Util.getOpener().Liferay;
openingLiferay.fire('<%= HtmlUtil.escapeJS(groupEventName) %>', {
data: '<%= organizationId %>',
});
<%
portletURL.setParameter("step", "1");
String taglibBreadcrumbs = "" + LanguageUtil.get(request, "organizations") + " » " + HtmlUtil.escape(selectedOrganization.getName());
%>
<%
portletURL.setParameter("step", "2");
portletURL.setParameter("organizationId", String.valueOf(organizationId));
%>
<%
Group selectedOrganizationGroup = selectedOrganization.getGroup();
Map data = HashMapBuilder.put(
"entityid", role.getRoleId()
).put(
"entityname", role.getTitle(locale)
).put(
"groupdescriptivename", selectedOrganizationGroup.getDescriptiveName(locale)
).put(
"groupid", selectedOrganization.getGroupId()
).put(
"iconcssclass", role.getIconCssClass()
).put(
"searchcontainername", "organizationRoles"
).build();
boolean disabled = false;
List userGroupRoles = UserGroupRoleLocalServiceUtil.getUserGroupRoles(selUser.getUserId());
for (UserGroupRole userGroupRole : userGroupRoles) {
if ((selectedOrganization.getGroupId() == userGroupRole.getGroupId()) && (userGroupRole.getRoleId() == role.getRoleId())) {
disabled = true;
break;
}
}
%>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy