List of usage examples for com.liferay.portal.kernel.model Group hasStagingGroup
public boolean hasStagingGroup();
From source file:com.liferay.asset.publisher.web.internal.portlet.toolbar.contributor.AssetPublisherPortletToolbarContributor.java
License:Open Source License
private boolean _isVisible(AssetPublisherDisplayContext assetPublisherDisplayContext, PortletRequest portletRequest) { ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); if (!assetPublisherDisplayContext.isShowAddContentButton()) { return false; }/* ww w .j a v a2 s . c o m*/ Group scopeGroup = themeDisplay.getScopeGroup(); if (scopeGroup.hasStagingGroup() && !scopeGroup.isStagingGroup() && PropsValues.STAGING_LIVE_GROUP_LOCKING_ENABLED) { return false; } Layout layout = themeDisplay.getLayout(); if (layout.isLayoutPrototypeLinkActive() && assetPublisherDisplayContext.isSelectionStyleManual()) { return false; } PortletDisplay portletDisplay = themeDisplay.getPortletDisplay(); String portletName = portletDisplay.getPortletName(); if (portletName.equals(AssetPublisherPortletKeys.HIGHEST_RATED_ASSETS)) { return false; } if (portletName.equals(AssetPublisherPortletKeys.MOST_VIEWED_ASSETS)) { return false; } if (portletName.equals(AssetPublisherPortletKeys.RELATED_ASSETS)) { return false; } return true; }
From source file:com.liferay.calendar.test.util.CalendarStagingTestUtil.java
License:Open Source License
public static Calendar getStagingCalendar(Group group, Calendar calendar) throws PortalException { if (group.hasStagingGroup()) { group = group.getStagingGroup(); }// ww w .j a v a 2 s . c o m Assert.assertTrue(group.isStaged()); return CalendarLocalServiceUtil.fetchCalendarByUuidAndGroupId(calendar.getUuid(), group.getGroupId()); }
From source file:com.liferay.calendar.web.internal.portlet.CalendarPortlet.java
License:Open Source License
protected void serveCalendarResources(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); String keywords = ParamUtil.getString(resourceRequest, "keywords"); Set<Calendar> calendarsSet = new LinkedHashSet<>(); Hits hits = search(themeDisplay, keywords); for (Document document : hits.getDocs()) { long calendarId = GetterUtil.getLong(document.get(Field.ENTRY_CLASS_PK)); Calendar calendar = _calendarService.getCalendar(calendarId); CalendarResource calendarResource = calendar.getCalendarResource(); if (calendarResource.isActive()) { Group group = _groupLocalService.getGroup(calendar.getGroupId()); if (group.hasStagingGroup()) { Group stagingGroup = group.getStagingGroup(); long stagingGroupId = stagingGroup.getGroupId(); if (stagingGroupId == themeDisplay.getScopeGroupId()) { calendar = _calendarLocalService.fetchCalendarByUuidAndGroupId(calendar.getUuid(), stagingGroupId); }/*from www. ja va2 s . c om*/ } calendarsSet.add(calendar); } } String name = StringUtil.merge(CustomSQLUtil.keywords(keywords), StringPool.BLANK); LinkedHashMap<String, Object> params = new LinkedHashMap<>(); params.put("usersGroups", themeDisplay.getUserId()); List<Group> groups = _groupLocalService.search(themeDisplay.getCompanyId(), name, null, params, true, 0, SearchContainer.DEFAULT_DELTA); for (Group group : groups) { long groupClassNameId = _portal.getClassNameId(Group.class); addCalendar(resourceRequest, calendarsSet, groupClassNameId, group.getGroupId()); } long userClassNameId = _portal.getClassNameId(User.class); List<User> users = _userLocalService.search(themeDisplay.getCompanyId(), keywords, 0, null, 0, SearchContainer.DEFAULT_DELTA, new UserFirstNameComparator()); for (User user : users) { addCalendar(resourceRequest, calendarsSet, userClassNameId, user.getUserId()); } JSONArray jsonArray = JSONFactoryUtil.createJSONArray(); for (Calendar calendar : calendarsSet) { JSONObject jsonObject = CalendarUtil.toCalendarJSONObject(themeDisplay, calendar); jsonArray.put(jsonObject); } writeJSON(resourceRequest, resourceResponse, jsonArray); }
From source file:com.liferay.exportimport.internal.background.task.LayoutStagingBackgroundTaskExecutor.java
License:Open Source License
@Override public BackgroundTaskResult execute(BackgroundTask backgroundTask) throws PortalException { ExportImportConfiguration exportImportConfiguration = getExportImportConfiguration(backgroundTask); Map<String, Serializable> settingsMap = exportImportConfiguration.getSettingsMap(); long userId = MapUtil.getLong(settingsMap, "userId"); long targetGroupId = MapUtil.getLong(settingsMap, "targetGroupId"); long sourceGroupId = MapUtil.getLong(settingsMap, "sourceGroupId"); clearBackgroundTaskStatus(backgroundTask); File file = null;/*from w w w . j a va 2 s .c o m*/ MissingReferences missingReferences = null; try { ExportImportThreadLocal.setLayoutStagingInProcess(true); Group targetGroup = GroupLocalServiceUtil.fetchGroup(targetGroupId); if (targetGroup == null) { throw new NoSuchGroupException( "Target group does not exists with the primary key " + targetGroupId); } Group sourceGroup = GroupLocalServiceUtil.getGroup(sourceGroupId); if (sourceGroup.hasStagingGroup()) { Group stagingGroup = sourceGroup.getStagingGroup(); if (stagingGroup.getGroupId() == targetGroupId) { ExportImportThreadLocal.setInitialLayoutStagingInProcess(true); TrashEntryLocalServiceUtil.deleteEntries(sourceGroupId, true); } } ExportImportLifecycleManagerUtil.fireExportImportLifecycleEvent(EVENT_PUBLICATION_LAYOUT_LOCAL_STARTED, PROCESS_FLAG_LAYOUT_STAGING_IN_PROCESS, String.valueOf(exportImportConfiguration.getExportImportConfigurationId()), exportImportConfiguration); boolean privateLayout = MapUtil.getBoolean(settingsMap, "privateLayout"); initThreadLocals(sourceGroupId, privateLayout); file = ExportImportLocalServiceUtil.exportLayoutsAsFile(exportImportConfiguration); markBackgroundTask(backgroundTask.getBackgroundTaskId(), "exported"); missingReferences = TransactionInvokerUtil.invoke(transactionConfig, new LayoutStagingImportCallable(backgroundTask.getBackgroundTaskId(), exportImportConfiguration, file, sourceGroupId, targetGroupId, userId)); ExportImportThreadLocal.setInitialLayoutStagingInProcess(false); ExportImportThreadLocal.setLayoutStagingInProcess(false); ExportImportLifecycleManagerUtil.fireExportImportLifecycleEvent( EVENT_PUBLICATION_LAYOUT_LOCAL_SUCCEEDED, PROCESS_FLAG_LAYOUT_STAGING_IN_PROCESS, String.valueOf(exportImportConfiguration.getExportImportConfigurationId()), exportImportConfiguration); } catch (Throwable t) { ExportImportThreadLocal.setInitialLayoutStagingInProcess(false); ExportImportThreadLocal.setLayoutStagingInProcess(false); ExportImportLifecycleManagerUtil.fireExportImportLifecycleEvent(EVENT_PUBLICATION_LAYOUT_LOCAL_FAILED, PROCESS_FLAG_LAYOUT_STAGING_IN_PROCESS, String.valueOf(exportImportConfiguration.getExportImportConfigurationId()), exportImportConfiguration, t); if (_log.isDebugEnabled()) { _log.debug(t, t); } else if (_log.isWarnEnabled()) { _log.warn("Unable to publish layout: " + t.getMessage()); } Group sourceGroup = GroupLocalServiceUtil.getGroup(sourceGroupId); if (sourceGroup.hasStagingGroup()) { ServiceContext serviceContext = new ServiceContext(); serviceContext.setUserId(userId); StagingLocalServiceUtil.disableStaging(sourceGroup, serviceContext); List<BackgroundTask> queuedBackgroundTasks = BackgroundTaskManagerUtil.getBackgroundTasks( sourceGroupId, LayoutStagingBackgroundTaskExecutor.class.getName(), BackgroundTaskConstants.STATUS_QUEUED); for (BackgroundTask queuedBackgroundTask : queuedBackgroundTasks) { BackgroundTaskManagerUtil.amendBackgroundTask(queuedBackgroundTask.getBackgroundTaskId(), null, BackgroundTaskConstants.STATUS_CANCELLED, new ServiceContext()); } } deleteTempLarOnFailure(file); throw new SystemException(t); } deleteTempLarOnSuccess(file); return processMissingReferences(backgroundTask.getBackgroundTaskId(), missingReferences); }
From source file:com.liferay.exportimport.internal.background.task.LayoutStagingBackgroundTaskExecutor.java
License:Open Source License
protected void initLayoutSetBranches(long userId, long sourceGroupId, long targetGroupId) throws PortalException { Group sourceGroup = GroupLocalServiceUtil.getGroup(sourceGroupId); if (!sourceGroup.hasStagingGroup()) { return;/*from w w w . j a v a 2 s. c o m*/ } LayoutSetBranchLocalServiceUtil.deleteLayoutSetBranches(targetGroupId, false, true); LayoutSetBranchLocalServiceUtil.deleteLayoutSetBranches(targetGroupId, true, true); UnicodeProperties typeSettingsProperties = sourceGroup.getTypeSettingsProperties(); boolean branchingPrivate = GetterUtil.getBoolean(typeSettingsProperties.getProperty("branchingPrivate")); boolean branchingPublic = GetterUtil.getBoolean(typeSettingsProperties.getProperty("branchingPublic")); ServiceContext serviceContext = new ServiceContext(); serviceContext.setUserId(userId); StagingLocalServiceUtil.checkDefaultLayoutSetBranches(userId, sourceGroup, branchingPublic, branchingPrivate, false, serviceContext); }
From source file:com.liferay.exportimport.lar.PortletDataContextImpl.java
License:Open Source License
@Override public boolean isInitialPublication() { Group group = null; try {/* w ww .j a v a 2s . co m*/ group = GroupLocalServiceUtil.getGroup(getGroupId()); } catch (Exception e) { } if (ExportImportThreadLocal.isStagingInProcess() && (group != null) && group.hasStagingGroup()) { return true; } return false; }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public Group getPermissionStagingGroup(Group group) { if (group == null) { return null; }/* w w w. j ava 2 s . c o m*/ Group stagingGroup = group; if (!group.isStagedRemotely() && group.hasStagingGroup()) { try { PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); long scopeGroupId = stagingGroup.getGroupId(); boolean hasManageStagingPermission = GroupPermissionUtil.contains(permissionChecker, scopeGroupId, ActionKeys.MANAGE_STAGING); boolean hasPublishStagingPermission = GroupPermissionUtil.contains(permissionChecker, scopeGroupId, ActionKeys.PUBLISH_STAGING); boolean hasViewStagingPermission = GroupPermissionUtil.contains(permissionChecker, scopeGroupId, ActionKeys.VIEW_STAGING); if (hasManageStagingPermission || hasPublishStagingPermission || hasViewStagingPermission) { stagingGroup = group.getStagingGroup(); } } catch (Exception e) { } } return stagingGroup; }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public Group getStagingGroup(long groupId) { Group group = _groupLocalService.fetchGroup(groupId); if (group == null) { return null; }//from w w w . java 2 s. c o m Group stagingGroup = group; if (!group.isStagedRemotely() && group.hasStagingGroup()) { stagingGroup = group.getStagingGroup(); } return stagingGroup; }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
@Override public boolean isGroupAccessible(Group group, Group fromGroup) { if (group.equals(fromGroup)) { return true; }/*from w w w.ja va 2 s .c o m*/ if (group.isStaged() && !group.isStagedRemotely() && group.isStagingGroup()) { return false; } if (group.hasStagingGroup() && fromGroup.equals(group.getStagingGroup())) { return false; } return true; }
From source file:com.liferay.exportimport.staging.StagingImpl.java
License:Open Source License
/** * @deprecated As of 4.0.0, replaced by {@link * com.liferay.staging.configuration.web.internal.portlet.StagingConfigurationPortlet#editStagingConfiguration( * javax.portlet.ActionRequest, javax.portlet.ActionResponse)} *//*from www. j a v a2 s . c om*/ @Deprecated @Override public void updateStaging(PortletRequest portletRequest, Group liveGroup) throws PortalException { ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); PermissionChecker permissionChecker = themeDisplay.getPermissionChecker(); long userId = permissionChecker.getUserId(); if (!GroupPermissionUtil.contains(permissionChecker, liveGroup, ActionKeys.MANAGE_STAGING)) { return; } int stagingType = getStagingType(portletRequest, liveGroup); boolean branchingPublic = getBoolean(portletRequest, liveGroup, "branchingPublic"); boolean branchingPrivate = getBoolean(portletRequest, liveGroup, "branchingPrivate"); boolean forceDisable = ParamUtil.getBoolean(portletRequest, "forceDisable"); ServiceContext serviceContext = ServiceContextThreadLocal.getServiceContext(); serviceContext.setAttribute("forceDisable", forceDisable); if (stagingType == StagingConstants.TYPE_NOT_STAGED) { if (liveGroup.hasStagingGroup() || liveGroup.isStagedRemotely()) { _stagingLocalService.disableStaging(portletRequest, liveGroup, serviceContext); } } else if (stagingType == StagingConstants.TYPE_LOCAL_STAGING) { _stagingLocalService.enableLocalStaging(userId, liveGroup, branchingPublic, branchingPrivate, serviceContext); } else if (stagingType == StagingConstants.TYPE_REMOTE_STAGING) { String remoteAddress = getString(portletRequest, liveGroup, "remoteAddress"); remoteAddress = stripProtocolFromRemoteAddress(remoteAddress); int remotePort = getInteger(portletRequest, liveGroup, "remotePort"); String remotePathContext = getString(portletRequest, liveGroup, "remotePathContext"); boolean secureConnection = getBoolean(portletRequest, liveGroup, "secureConnection"); long remoteGroupId = getLong(portletRequest, liveGroup, "remoteGroupId"); _stagingLocalService.enableRemoteStaging(userId, liveGroup, branchingPublic, branchingPrivate, remoteAddress, remotePort, remotePathContext, secureConnection, remoteGroupId, serviceContext); } }