Example usage for com.liferay.portal.kernel.workflow WorkflowConstants STATUS_APPROVED

List of usage examples for com.liferay.portal.kernel.workflow WorkflowConstants STATUS_APPROVED

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.workflow WorkflowConstants STATUS_APPROVED.

Prototype

int STATUS_APPROVED

To view the source code for com.liferay.portal.kernel.workflow WorkflowConstants STATUS_APPROVED.

Click Source Link

Usage

From source file:com.liferay.knowledgebase.service.impl.KBArticleServiceImpl.java

License:Open Source License

@Override
public List<KBArticle> getSectionsKBArticles(long groupId, String[] sections, int status, int start, int end,
        OrderByComparator<KBArticle> orderByComparator) {

    String[] array = AdminUtil.escapeSections(sections);

    for (int i = 0; i < array.length; i++) {
        array[i] = StringUtil.quote(array[i], StringPool.PERCENT);
    }//from  ww w.  j  av  a2 s.c o m

    if (status == WorkflowConstants.STATUS_ANY) {
        return kbArticlePersistence.filterFindByG_P_S_L(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID,
                array, true, start, end, orderByComparator);
    } else if (status == WorkflowConstants.STATUS_APPROVED) {
        return kbArticlePersistence.filterFindByG_P_S_M(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID,
                array, true, start, end, orderByComparator);
    }

    return kbArticlePersistence.filterFindByG_P_S_S(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, array,
            status, start, end, orderByComparator);
}

From source file:com.liferay.knowledgebase.service.impl.KBArticleServiceImpl.java

License:Open Source License

@Override
public int getSectionsKBArticlesCount(long groupId, String[] sections, int status) {

    String[] array = AdminUtil.escapeSections(sections);

    for (int i = 0; i < array.length; i++) {
        array[i] = StringUtil.quote(array[i], StringPool.PERCENT);
    }//from  www .ja  v  a2 s. c  o m

    if (status == WorkflowConstants.STATUS_ANY) {
        return kbArticlePersistence.filterCountByG_P_S_L(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID,
                array, true);
    } else if (status == WorkflowConstants.STATUS_APPROVED) {
        return kbArticlePersistence.filterCountByG_P_S_M(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID,
                array, true);
    }

    return kbArticlePersistence.filterCountByG_P_S_S(groupId, KBFolderConstants.DEFAULT_PARENT_FOLDER_ID, array,
            status);
}

From source file:com.liferay.knowledgebase.service.impl.KBCommentLocalServiceImpl.java

License:Open Source License

protected void notifySubscribers(KBComment kbComment, ServiceContext serviceContext) throws PortalException {

    PortletPreferences preferences = portletPreferencesLocalService.getPreferences(kbComment.getCompanyId(),
            kbComment.getGroupId(), PortletKeys.PREFS_OWNER_TYPE_GROUP, PortletKeys.PREFS_PLID_SHARED,
            PortletKeys.KNOWLEDGE_BASE_ADMIN, null);

    if (!AdminUtil.isFeedbackStatusChangeNotificationEnabled(kbComment.getStatus(), preferences)) {

        return;// w  w  w  .ja v  a 2s.c o m
    }

    String fromName = AdminUtil.getEmailFromName(preferences, serviceContext.getCompanyId());
    String fromAddress = AdminUtil.getEmailFromAddress(preferences, kbComment.getCompanyId());

    String subject = AdminUtil.getEmailKBArticleFeedbackNotificationSubject(kbComment.getStatus(), preferences);
    String body = AdminUtil.getEmailKBArticleFeedbackNotificationBody(kbComment.getStatus(), preferences);

    KBArticle kbArticle = kbArticleLocalService.getLatestKBArticle(kbComment.getClassPK(),
            WorkflowConstants.STATUS_APPROVED);

    String kbArticleContent = StringUtil.replace(kbArticle.getContent(), new String[] { "href=\"/", "src=\"/" },
            new String[] { "href=\"" + serviceContext.getPortalURL() + "/",
                    "src=\"" + serviceContext.getPortalURL() + "/" });

    SubscriptionSender subscriptionSender = new AdminSubscriptionSender(kbArticle, serviceContext);

    subscriptionSender.setBody(body);
    subscriptionSender.setCompanyId(kbArticle.getCompanyId());
    subscriptionSender.setContextAttribute("[$ARTICLE_CONTENT$]", kbArticleContent, false);
    subscriptionSender.setContextAttribute("[$ARTICLE_TITLE$]", kbArticle.getTitle(), false);
    subscriptionSender.setContextAttribute("[$COMMENT_CONTENT$]", kbComment.getContent(), false);
    subscriptionSender.setContextUserPrefix("ARTICLE");
    subscriptionSender.setFrom(fromAddress, fromName);
    subscriptionSender.setHtmlFormat(true);
    subscriptionSender.setMailId("kb_article", kbArticle.getKbArticleId());
    subscriptionSender.setPortletId(serviceContext.getPortletId());
    subscriptionSender.setReplyToAddress(fromAddress);
    subscriptionSender.setScopeGroupId(kbArticle.getGroupId());
    subscriptionSender.setSubject(subject);
    subscriptionSender.setUserId(kbArticle.getUserId());

    User user = userLocalService.getUser(kbComment.getUserId());

    subscriptionSender.addRuntimeSubscribers(user.getEmailAddress(), user.getFullName());

    subscriptionSender.flushNotificationsAsync();
}

From source file:com.liferay.knowledgebase.service.impl.KBCommentLocalServiceImpl.java

License:Open Source License

protected void putTitle(JSONObject jsonObject, KBComment kbComment) {
    KBArticle kbArticle = null;//from ww w.  j a v  a2  s . co m
    KBTemplate kbTemplate = null;

    String className = kbComment.getClassName();

    try {
        if (className.equals(KBArticle.class.getName())) {
            kbArticle = KBArticleLocalServiceUtil.getLatestKBArticle(kbComment.getClassPK(),
                    WorkflowConstants.STATUS_APPROVED);

            jsonObject.put("title", kbArticle.getTitle());
        } else if (className.equals(KBTemplate.class.getName())) {
            kbTemplate = KBTemplateLocalServiceUtil.getKBTemplate(kbComment.getClassPK());

            jsonObject.put("title", kbTemplate.getTitle());
        }
    } catch (Exception e) {
        _log.error(e);
    }
}

From source file:com.liferay.knowledgebase.util.KBNavigationDisplayContext.java

License:Open Source License

public List<Long> getAncestorResourcePrimaryKeys() throws PortalException {
    List<Long> ancestorResourcePrimaryKeys = new ArrayList<>();

    if (_kbArticle != null) {
        KBArticle latestKBArticle = KBArticleLocalServiceUtil
                .getLatestKBArticle(_kbArticle.getResourcePrimKey(), WorkflowConstants.STATUS_APPROVED);

        ancestorResourcePrimaryKeys = latestKBArticle.getAncestorResourcePrimaryKeys();

        Collections.reverse(ancestorResourcePrimaryKeys);
    } else {//ww  w .  jav a2s  . co  m
        ancestorResourcePrimaryKeys.add(KBFolderConstants.DEFAULT_PARENT_FOLDER_ID);
    }

    return ancestorResourcePrimaryKeys;
}

From source file:com.liferay.knowledgebase.util.KBNavigationDisplayContext.java

License:Open Source License

protected boolean hasMultipleDescendantKBArticles() throws PortalException {
    long scopeGroupId = PortalUtil.getScopeGroupId(_portletRequest);

    long kbFolderClassNameId = PortalUtil.getClassNameId(KBFolderConstants.getClassName());

    if (getResourceClassNameId() == kbFolderClassNameId) {
        List<KBFolder> kbFolders = KnowledgeBaseUtil.getAlternateRootKBFolders(scopeGroupId,
                getResourcePrimKey());/*www  . ja v a2s  . c o m*/

        if (kbFolders.size() > 1) {
            int maxKBArticlesCount = 0;

            for (KBFolder kbFolder : kbFolders) {
                int kbArticlesCount = KBArticleLocalServiceUtil.getKBFolderKBArticlesCount(scopeGroupId,
                        kbFolder.getKbFolderId(), WorkflowConstants.STATUS_APPROVED);

                if (kbArticlesCount > maxKBArticlesCount) {
                    maxKBArticlesCount = kbArticlesCount;
                }
            }

            if (maxKBArticlesCount > 1) {
                return true;
            }

            return false;
        }
    }

    boolean showNavigation = true;

    long rootResourcePrimKey = getRootResourcePrimKey();

    int kbArticlesCount = KBArticleLocalServiceUtil.getKBArticlesCount(scopeGroupId, rootResourcePrimKey,
            WorkflowConstants.STATUS_APPROVED);

    if (kbArticlesCount == 0) {
        showNavigation = false;
    } else if (kbArticlesCount == 1) {
        List<KBArticle> kbArticles = KBArticleLocalServiceUtil.getKBArticles(scopeGroupId, rootResourcePrimKey,
                WorkflowConstants.STATUS_APPROVED, 0, 1, null);

        KBArticle navigationKBArticle = kbArticles.get(0);

        int navigationKBArticleChildCount = KBArticleLocalServiceUtil.getKBArticlesCount(scopeGroupId,
                navigationKBArticle.getResourcePrimKey(), WorkflowConstants.STATUS_APPROVED);

        if (navigationKBArticleChildCount == 0) {
            showNavigation = false;
        }
    }

    return showNavigation;
}

From source file:com.liferay.knowledgebase.util.KnowledgeBaseUtil.java

License:Open Source License

public static String getKBArticleURL(long plid, long resourcePrimKey, int status, String portalURL,
        boolean maximized) {

    StringBundler sb = new StringBundler(11);

    sb.append(portalURL);/*from   ww w . j  av a  2s. com*/
    sb.append(PortalUtil.getPathMain());
    sb.append("/portal/knowledge_base/find_kb_article");
    sb.append(StringPool.QUESTION);
    sb.append("plid");
    sb.append(StringPool.EQUAL);
    sb.append(String.valueOf(plid));
    sb.append(StringPool.AMPERSAND);
    sb.append("resourcePrimKey");
    sb.append(StringPool.EQUAL);
    sb.append(String.valueOf(resourcePrimKey));

    String url = sb.toString();

    if (status != WorkflowConstants.STATUS_APPROVED) {
        url = url.concat(StringPool.AMPERSAND).concat("status").concat(StringPool.EQUAL)
                .concat(String.valueOf(status));
    }

    if (maximized) {
        url = url.concat(StringPool.AMPERSAND).concat("maximized").concat(StringPool.EQUAL)
                .concat(String.valueOf(maximized));
    }

    return url;
}

From source file:com.liferay.layout.admin.web.internal.display.context.LayoutPageTemplateDisplayContext.java

License:Open Source License

public JSONArray getFragmentCollectionsJSONArray() throws PortalException {
    JSONArray fragmentCollectionsJSONArray = JSONFactoryUtil.createJSONArray();

    ThemeDisplay themeDisplay = (ThemeDisplay) _request.getAttribute(WebKeys.THEME_DISPLAY);

    List<FragmentCollection> fragmentCollections = FragmentCollectionServiceUtil
            .getFragmentCollections(themeDisplay.getScopeGroupId());

    for (FragmentCollection fragmentCollection : fragmentCollections) {
        List<FragmentEntry> fragmentEntries = FragmentEntryServiceUtil.getFragmentEntries(
                fragmentCollection.getFragmentCollectionId(), WorkflowConstants.STATUS_APPROVED);

        if (ListUtil.isEmpty(fragmentEntries)) {
            continue;
        }//from  w w  w. j  av a  2  s  . c  om

        JSONObject fragmentCollectionJSONObject = JSONFactoryUtil.createJSONObject();

        fragmentCollectionJSONObject.put("fragmentCollectionId", fragmentCollection.getFragmentCollectionId());

        JSONArray fragmentEntriesJSONArray = JSONFactoryUtil.createJSONArray();

        for (FragmentEntry fragmentEntry : fragmentEntries) {
            JSONObject fragmentEntryJSONObject = JSONFactoryUtil.createJSONObject();

            fragmentEntryJSONObject.put("fragmentEntryId", fragmentEntry.getFragmentEntryId());
            fragmentEntryJSONObject.put("imagePreviewURL", fragmentEntry.getImagePreviewURL(themeDisplay));
            fragmentEntryJSONObject.put("name", fragmentEntry.getName());

            fragmentEntriesJSONArray.put(fragmentEntryJSONObject);
        }

        fragmentCollectionJSONObject.put("fragmentEntries", fragmentEntriesJSONArray);

        fragmentCollectionJSONObject.put("name", fragmentCollection.getName());

        fragmentCollectionsJSONArray.put(fragmentCollectionJSONObject);
    }

    return fragmentCollectionsJSONArray;
}

From source file:com.liferay.layout.page.template.service.test.LayoutPageTemplateEntryServiceTest.java

License:Open Source License

@Test
public void testAddLayoutPageTemplateEntryWithFragmentEntries() throws PortalException {

    ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group.getGroupId(),
            TestPropsValues.getUserId());

    LayoutPageTemplateCollection layoutPageTemplateCollection = LayoutPageTemplateCollectionServiceUtil
            .addLayoutPageTemplateCollection(_group.getGroupId(), "Layout Page Template Collection", null,
                    serviceContext);//ww  w . j ava  2s.  c o m

    FragmentCollection fragmentCollection = FragmentCollectionServiceUtil.addFragmentCollection(
            _group.getGroupId(), "Fragment Collection", StringPool.BLANK, serviceContext);

    FragmentEntry fragmentEntry1 = FragmentEntryServiceUtil.addFragmentEntry(_group.getGroupId(),
            fragmentCollection.getFragmentCollectionId(), "Fragment Entry 1", WorkflowConstants.STATUS_APPROVED,
            serviceContext);

    FragmentEntry fragmentEntry2 = FragmentEntryServiceUtil.addFragmentEntry(_group.getGroupId(),
            fragmentCollection.getFragmentCollectionId(), "Fragment Entry 2", WorkflowConstants.STATUS_APPROVED,
            serviceContext);

    List<FragmentEntry> fragmentEntries = new ArrayList<>();

    fragmentEntries.add(fragmentEntry1);
    fragmentEntries.add(fragmentEntry2);

    LayoutPageTemplateEntry layoutPageTemplateEntry = LayoutPageTemplateEntryServiceUtil
            .addLayoutPageTemplateEntry(_group.getGroupId(),
                    layoutPageTemplateCollection.getLayoutPageTemplateCollectionId(),
                    "Layout Page Template Entry", fragmentEntries, serviceContext);

    List<FragmentEntryInstanceLink> actualLayoutPageTemplateEntriesCount = FragmentEntryInstanceLinkLocalServiceUtil
            .getFragmentEntryInstanceLinks(_group.getGroupId(),
                    layoutPageTemplateEntry.getLayoutPageTemplateEntryId());

    Assert.assertEquals(actualLayoutPageTemplateEntriesCount.toString(), 2,
            actualLayoutPageTemplateEntriesCount.size());
}

From source file:com.liferay.layout.page.template.service.test.LayoutPageTemplateEntryServiceTest.java

License:Open Source License

@Test
public void testRemoveFragmentsFromLayoutPageTemplateEntry() throws PortalException {

    ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext(_group.getGroupId(),
            TestPropsValues.getUserId());

    LayoutPageTemplateCollection layoutPageTemplateCollection = LayoutPageTemplateCollectionServiceUtil
            .addLayoutPageTemplateCollection(_group.getGroupId(), "Layout Page Template Collection", null,
                    serviceContext);/*from   ww  w. ja v  a  2 s  .c om*/

    FragmentCollection fragmentCollection = FragmentCollectionServiceUtil.addFragmentCollection(
            _group.getGroupId(), "Fragment Collection", StringPool.BLANK, serviceContext);

    FragmentEntry fragmentEntry1 = FragmentEntryServiceUtil.addFragmentEntry(_group.getGroupId(),
            fragmentCollection.getFragmentCollectionId(), "Fragment Entry 1", WorkflowConstants.STATUS_APPROVED,
            serviceContext);

    FragmentEntry fragmentEntry2 = FragmentEntryServiceUtil.addFragmentEntry(_group.getGroupId(),
            fragmentCollection.getFragmentCollectionId(), "Fragment Entry 2", WorkflowConstants.STATUS_APPROVED,
            serviceContext);

    List<FragmentEntry> fragmentEntries = new ArrayList<>();

    fragmentEntries.add(fragmentEntry1);
    fragmentEntries.add(fragmentEntry2);

    LayoutPageTemplateEntry layoutPageTemplateEntry = LayoutPageTemplateEntryServiceUtil
            .addLayoutPageTemplateEntry(_group.getGroupId(),
                    layoutPageTemplateCollection.getLayoutPageTemplateCollectionId(),
                    "Layout Page Template Entry", fragmentEntries, serviceContext);

    LayoutPageTemplateEntryServiceUtil.updateLayoutPageTemplateEntry(
            layoutPageTemplateEntry.getLayoutPageTemplateEntryId(), "New name", new ArrayList<FragmentEntry>(),
            serviceContext);

    List<FragmentEntryInstanceLink> actualLayoutPageTemplateEntriesCount = FragmentEntryInstanceLinkLocalServiceUtil
            .getFragmentEntryInstanceLinks(_group.getGroupId(),
                    layoutPageTemplateEntry.getLayoutPageTemplateEntryId());

    Assert.assertEquals(actualLayoutPageTemplateEntriesCount.toString(), 0,
            actualLayoutPageTemplateEntriesCount.size());
}