Example usage for com.liferay.portal.kernel.theme ThemeDisplay setSiteGroupId

List of usage examples for com.liferay.portal.kernel.theme ThemeDisplay setSiteGroupId

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.theme ThemeDisplay setSiteGroupId.

Prototype

public void setSiteGroupId(long siteGroupId) 

Source Link

Usage

From source file:com.liferay.layout.type.controller.test.LayoutTypeURLTest.java

License:Open Source License

private ThemeDisplay _initThemeDisplay() throws Exception {
    _company.setVirtualHostname(_VIRTUAL_HOSTNAME);

    ThemeDisplay themeDisplay = new ThemeDisplay();

    themeDisplay.setCompany(_company);//from w ww.ja v a  2  s.  com
    themeDisplay.setI18nLanguageId(StringPool.BLANK);
    themeDisplay.setLayout(_publicLayout);
    themeDisplay.setLayoutSet(_publicLayout.getLayoutSet());
    themeDisplay.setSecure(false);
    themeDisplay.setServerName(_VIRTUAL_HOSTNAME);
    themeDisplay.setServerPort(8080);
    themeDisplay.setSiteGroupId(_group.getGroupId());
    themeDisplay.setUser(TestPropsValues.getUser());
    themeDisplay.setWidget(false);

    return themeDisplay;
}

From source file:com.liferay.site.admin.web.internal.portlet.SiteAdminPortlet.java

License:Open Source License

protected Group updateGroup(ActionRequest actionRequest) throws Exception {
    ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long userId = portal.getUserId(actionRequest);

    long liveGroupId = ParamUtil.getLong(actionRequest, "liveGroupId");

    long parentGroupId = ParamUtil.getLong(actionRequest, "parentGroupSearchContainerPrimaryKeys",
            GroupConstants.DEFAULT_PARENT_GROUP_ID);
    Map<Locale, String> nameMap = null;
    Map<Locale, String> descriptionMap = null;
    int type = 0;
    String friendlyURL = null;/*  w  w  w  . jav  a  2  s . c o  m*/
    boolean inheritContent = false;
    boolean active = false;
    boolean manualMembership = true;

    int membershipRestriction = GroupConstants.DEFAULT_MEMBERSHIP_RESTRICTION;

    boolean actionRequestMembershipRestriction = ParamUtil.getBoolean(actionRequest, "membershipRestriction");

    if (actionRequestMembershipRestriction && (parentGroupId != GroupConstants.DEFAULT_PARENT_GROUP_ID)) {

        membershipRestriction = GroupConstants.MEMBERSHIP_RESTRICTION_TO_PARENT_SITE_MEMBERS;
    }

    ServiceContext serviceContext = ServiceContextFactory.getInstance(Group.class.getName(), actionRequest);

    ServiceContextThreadLocal.pushServiceContext(serviceContext);

    Group liveGroup = null;

    if (liveGroupId <= 0) {

        // Add group

        nameMap = LocalizationUtil.getLocalizationMap(actionRequest, "name");
        descriptionMap = LocalizationUtil.getLocalizationMap(actionRequest, "description");
        type = ParamUtil.getInteger(actionRequest, "type");
        friendlyURL = ParamUtil.getString(actionRequest, "friendlyURL");
        manualMembership = ParamUtil.getBoolean(actionRequest, "manualMembership");
        inheritContent = ParamUtil.getBoolean(actionRequest, "inheritContent");
        active = ParamUtil.getBoolean(actionRequest, "active");

        liveGroup = groupService.addGroup(parentGroupId, GroupConstants.DEFAULT_LIVE_GROUP_ID, nameMap,
                descriptionMap, type, manualMembership, membershipRestriction, friendlyURL, true,
                inheritContent, active, serviceContext);

        LiveUsers.joinGroup(themeDisplay.getCompanyId(), liveGroup.getGroupId(), userId);
    } else {

        // Update group

        liveGroup = groupLocalService.getGroup(liveGroupId);

        nameMap = LocalizationUtil.getLocalizationMap(actionRequest, "name", liveGroup.getNameMap());
        descriptionMap = LocalizationUtil.getLocalizationMap(actionRequest, "description",
                liveGroup.getDescriptionMap());
        type = ParamUtil.getInteger(actionRequest, "type", liveGroup.getType());
        manualMembership = ParamUtil.getBoolean(actionRequest, "manualMembership",
                liveGroup.isManualMembership());
        friendlyURL = ParamUtil.getString(actionRequest, "friendlyURL", liveGroup.getFriendlyURL());
        inheritContent = ParamUtil.getBoolean(actionRequest, "inheritContent", liveGroup.getInheritContent());
        active = ParamUtil.getBoolean(actionRequest, "active", liveGroup.getActive());

        liveGroup = groupService.updateGroup(liveGroupId, parentGroupId, nameMap, descriptionMap, type,
                manualMembership, membershipRestriction, friendlyURL, inheritContent, active, serviceContext);

        if (type == GroupConstants.TYPE_SITE_OPEN) {
            List<MembershipRequest> membershipRequests = membershipRequestLocalService.search(liveGroupId,
                    MembershipRequestConstants.STATUS_PENDING, QueryUtil.ALL_POS, QueryUtil.ALL_POS);

            for (MembershipRequest membershipRequest : membershipRequests) {
                membershipRequestService.updateStatus(membershipRequest.getMembershipRequestId(),
                        themeDisplay.translate("your-membership-has-been-approved"),
                        MembershipRequestConstants.STATUS_APPROVED, serviceContext);

                LiveUsers.joinGroup(themeDisplay.getCompanyId(), membershipRequest.getGroupId(),
                        new long[] { membershipRequest.getUserId() });
            }
        }
    }

    // Settings

    UnicodeProperties typeSettingsProperties = liveGroup.getTypeSettingsProperties();

    String customJspServletContextName = ParamUtil.getString(actionRequest, "customJspServletContextName",
            typeSettingsProperties.getProperty("customJspServletContextName"));

    typeSettingsProperties.setProperty("customJspServletContextName", customJspServletContextName);

    typeSettingsProperties.setProperty("defaultSiteRoleIds",
            ListUtil.toString(getRoles(actionRequest), Role.ROLE_ID_ACCESSOR, StringPool.COMMA));
    typeSettingsProperties.setProperty("defaultTeamIds",
            ListUtil.toString(getTeams(actionRequest), Team.TEAM_ID_ACCESSOR, StringPool.COMMA));

    String[] analyticsTypes = PrefsPropsUtil.getStringArray(themeDisplay.getCompanyId(),
            PropsKeys.ADMIN_ANALYTICS_TYPES, StringPool.NEW_LINE);

    for (String analyticsType : analyticsTypes) {
        if (StringUtil.equalsIgnoreCase(analyticsType, "google")) {
            String googleAnalyticsId = ParamUtil.getString(actionRequest, "googleAnalyticsId",
                    typeSettingsProperties.getProperty("googleAnalyticsId"));

            typeSettingsProperties.setProperty("googleAnalyticsId", googleAnalyticsId);
        } else {
            String analyticsScript = ParamUtil.getString(actionRequest, Sites.ANALYTICS_PREFIX + analyticsType,
                    typeSettingsProperties.getProperty(analyticsType));

            typeSettingsProperties.setProperty(Sites.ANALYTICS_PREFIX + analyticsType, analyticsScript);
        }
    }

    boolean trashEnabled = ParamUtil.getBoolean(actionRequest, "trashEnabled",
            GetterUtil.getBoolean(typeSettingsProperties.getProperty("trashEnabled"), true));

    typeSettingsProperties.setProperty("trashEnabled", String.valueOf(trashEnabled));

    int trashEntriesMaxAgeCompany = PrefsPropsUtil.getInteger(themeDisplay.getCompanyId(),
            PropsKeys.TRASH_ENTRIES_MAX_AGE);

    int trashEntriesMaxAgeGroup = ParamUtil.getInteger(actionRequest, "trashEntriesMaxAge");

    if (trashEntriesMaxAgeGroup <= 0) {
        trashEntriesMaxAgeGroup = GetterUtil.getInteger(
                typeSettingsProperties.getProperty("trashEntriesMaxAge"), trashEntriesMaxAgeCompany);
    }

    if (trashEntriesMaxAgeGroup != trashEntriesMaxAgeCompany) {
        typeSettingsProperties.setProperty("trashEntriesMaxAge",
                String.valueOf(GetterUtil.getInteger(trashEntriesMaxAgeGroup)));
    } else {
        typeSettingsProperties.remove("trashEntriesMaxAge");
    }

    int contentSharingWithChildrenEnabled = ParamUtil.getInteger(actionRequest,
            "contentSharingWithChildrenEnabled",
            GetterUtil.getInteger(typeSettingsProperties.getProperty("contentSharingWithChildrenEnabled"),
                    Sites.CONTENT_SHARING_WITH_CHILDREN_DEFAULT_VALUE));

    typeSettingsProperties.setProperty("contentSharingWithChildrenEnabled",
            String.valueOf(contentSharingWithChildrenEnabled));

    UnicodeProperties formTypeSettingsProperties = PropertiesParamUtil.getProperties(actionRequest,
            "TypeSettingsProperties--");

    typeSettingsProperties.putAll(formTypeSettingsProperties);

    // Virtual hosts

    LayoutSet publicLayoutSet = liveGroup.getPublicLayoutSet();

    String publicVirtualHost = ParamUtil.getString(actionRequest, "publicVirtualHost",
            publicLayoutSet.getVirtualHostname());

    layoutSetService.updateVirtualHost(liveGroup.getGroupId(), false, publicVirtualHost);

    LayoutSet privateLayoutSet = liveGroup.getPrivateLayoutSet();

    String privateVirtualHost = ParamUtil.getString(actionRequest, "privateVirtualHost",
            privateLayoutSet.getVirtualHostname());

    layoutSetService.updateVirtualHost(liveGroup.getGroupId(), true, privateVirtualHost);

    // Staging

    if (liveGroup.hasStagingGroup()) {
        Group stagingGroup = liveGroup.getStagingGroup();

        friendlyURL = ParamUtil.getString(actionRequest, "stagingFriendlyURL", stagingGroup.getFriendlyURL());

        groupService.updateFriendlyURL(stagingGroup.getGroupId(), friendlyURL);

        LayoutSet stagingPublicLayoutSet = stagingGroup.getPublicLayoutSet();

        publicVirtualHost = ParamUtil.getString(actionRequest, "stagingPublicVirtualHost",
                stagingPublicLayoutSet.getVirtualHostname());

        layoutSetService.updateVirtualHost(stagingGroup.getGroupId(), false, publicVirtualHost);

        LayoutSet stagingPrivateLayoutSet = stagingGroup.getPrivateLayoutSet();

        privateVirtualHost = ParamUtil.getString(actionRequest, "stagingPrivateVirtualHost",
                stagingPrivateLayoutSet.getVirtualHostname());

        layoutSetService.updateVirtualHost(stagingGroup.getGroupId(), true, privateVirtualHost);

        UnicodeProperties stagedGroupTypeSettingsProperties = stagingGroup.getTypeSettingsProperties();

        stagedGroupTypeSettingsProperties.putAll(formTypeSettingsProperties);

        groupService.updateGroup(stagingGroup.getGroupId(), stagedGroupTypeSettingsProperties.toString());
    }

    liveGroup = groupService.updateGroup(liveGroup.getGroupId(), typeSettingsProperties.toString());

    // Layout set prototypes

    long privateLayoutSetPrototypeId = ParamUtil.getLong(actionRequest, "privateLayoutSetPrototypeId");
    long publicLayoutSetPrototypeId = ParamUtil.getLong(actionRequest, "publicLayoutSetPrototypeId");

    boolean privateLayoutSetPrototypeLinkEnabled = ParamUtil.getBoolean(actionRequest,
            "privateLayoutSetPrototypeLinkEnabled", privateLayoutSet.isLayoutSetPrototypeLinkEnabled());
    boolean publicLayoutSetPrototypeLinkEnabled = ParamUtil.getBoolean(actionRequest,
            "publicLayoutSetPrototypeLinkEnabled", publicLayoutSet.isLayoutSetPrototypeLinkEnabled());

    if ((privateLayoutSetPrototypeId == 0) && (publicLayoutSetPrototypeId == 0)
            && !privateLayoutSetPrototypeLinkEnabled && !publicLayoutSetPrototypeLinkEnabled) {

        long layoutSetPrototypeId = ParamUtil.getLong(actionRequest, "layoutSetPrototypeId");
        int layoutSetVisibility = ParamUtil.getInteger(actionRequest, "layoutSetVisibility");
        boolean layoutSetPrototypeLinkEnabled = ParamUtil.getBoolean(actionRequest,
                "layoutSetPrototypeLinkEnabled", layoutSetPrototypeId > 0);

        if (layoutSetVisibility == _LAYOUT_SET_VISIBILITY_PRIVATE) {
            privateLayoutSetPrototypeId = layoutSetPrototypeId;

            privateLayoutSetPrototypeLinkEnabled = layoutSetPrototypeLinkEnabled;
        } else {
            publicLayoutSetPrototypeId = layoutSetPrototypeId;

            publicLayoutSetPrototypeLinkEnabled = layoutSetPrototypeLinkEnabled;
        }
    }

    if (!liveGroup.isStaged() || liveGroup.isStagedRemotely()) {
        SitesUtil.updateLayoutSetPrototypesLinks(liveGroup, publicLayoutSetPrototypeId,
                privateLayoutSetPrototypeId, publicLayoutSetPrototypeLinkEnabled,
                privateLayoutSetPrototypeLinkEnabled);
    } else {
        SitesUtil.updateLayoutSetPrototypesLinks(liveGroup.getStagingGroup(), publicLayoutSetPrototypeId,
                privateLayoutSetPrototypeId, publicLayoutSetPrototypeLinkEnabled,
                privateLayoutSetPrototypeLinkEnabled);
    }

    themeDisplay.setSiteGroupId(liveGroup.getGroupId());

    return liveGroup;
}