Example usage for com.liferay.portal.kernel.util HttpUtil getParameter

List of usage examples for com.liferay.portal.kernel.util HttpUtil getParameter

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util HttpUtil getParameter.

Prototype

public static String getParameter(String url, String name) 

Source Link

Usage

From source file:com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.java

License:Open Source License

protected void formatImage(long groupId, String articleId, double version, boolean incrementVersion, Element el,
        String elInstanceId, String elName, Map<String, byte[]> images)
        throws PortalException, SystemException {

    List<Element> imageContents = el.elements("dynamic-content");

    for (Element dynamicContent : imageContents) {
        String elLanguage = dynamicContent.attributeValue("language-id", StringPool.BLANK);

        if (!elLanguage.equals(StringPool.BLANK)) {
            elLanguage = "_" + elLanguage;
        }//  w w  w.  ja  v  a2s  . co  m

        long imageId = journalArticleImageLocalService.getArticleImageId(groupId, articleId, version,
                elInstanceId, elName, elLanguage);

        double oldVersion = MathUtil.format(version - 0.1, 1, 1);

        long oldImageId = 0;

        if ((oldVersion >= 1) && incrementVersion) {
            oldImageId = journalArticleImageLocalService.getArticleImageId(groupId, articleId, oldVersion,
                    elInstanceId, elName, elLanguage);
        }

        String elContent = "/image/journal/article?img_id=" + imageId + "&t="
                + WebServerServletTokenUtil.getToken(imageId);

        if (dynamicContent.getText().equals("delete")) {
            dynamicContent.setText(StringPool.BLANK);

            imageLocalService.deleteImage(imageId);

            String defaultElLanguage = "";

            if (!Validator.isNotNull(elLanguage)) {
                defaultElLanguage = "_" + LocaleUtil.toLanguageId(LocaleUtil.getDefault());
            }

            long defaultImageId = journalArticleImageLocalService.getArticleImageId(groupId, articleId, version,
                    elInstanceId, elName, defaultElLanguage);

            imageLocalService.deleteImage(defaultImageId);

            continue;
        }

        byte[] bytes = images.get(elInstanceId + "_" + elName + elLanguage);

        if ((bytes != null) && (bytes.length > 0)) {
            dynamicContent.setText(elContent);
            dynamicContent.addAttribute("id", String.valueOf(imageId));

            imageLocalService.updateImage(imageId, bytes);

            continue;
        }

        if ((version > JournalArticleConstants.VERSION_DEFAULT) && (incrementVersion)) {

            Image oldImage = null;

            if (oldImageId > 0) {
                oldImage = imageLocalService.getImage(oldImageId);
            }

            if (oldImage != null) {
                dynamicContent.setText(elContent);
                dynamicContent.addAttribute("id", String.valueOf(imageId));

                bytes = oldImage.getTextObj();

                imageLocalService.updateImage(imageId, bytes);
            }

            continue;
        }

        Image image = imageLocalService.getImage(imageId);

        if (image != null) {
            dynamicContent.setText(elContent);
            dynamicContent.addAttribute("id", String.valueOf(imageId));

            continue;
        }

        long contentImageId = GetterUtil.getLong(HttpUtil.getParameter(dynamicContent.getText(), "img_id"));

        if (contentImageId <= 0) {
            contentImageId = GetterUtil
                    .getLong(HttpUtil.getParameter(dynamicContent.getText(), "img_id", false));
        }

        if (contentImageId > 0) {
            image = imageLocalService.getImage(contentImageId);

            if (image != null) {
                dynamicContent.addAttribute("id", String.valueOf(contentImageId));

                continue;
            }
        }

        String defaultElLanguage = "";

        if (!Validator.isNotNull(elLanguage)) {
            defaultElLanguage = "_" + LocaleUtil.toLanguageId(LocaleUtil.getDefault());
        }

        long defaultImageId = journalArticleImageLocalService.getArticleImageId(groupId, articleId, version,
                elInstanceId, elName, defaultElLanguage);

        Image defaultImage = imageLocalService.getImage(defaultImageId);

        if (defaultImage != null) {
            dynamicContent.setText(elContent);
            dynamicContent.addAttribute("id", String.valueOf(defaultImageId));

            bytes = defaultImage.getTextObj();

            imageLocalService.updateImage(defaultImageId, bytes);

            continue;
        }

        if (Validator.isNotNull(elLanguage)) {
            dynamicContent.setText(StringPool.BLANK);
        }
    }
}