Placeholder.java 2.44 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.day.cq.wcm.api.AuthoringUIMode
 *  com.day.cq.wcm.api.components.Component
 *  javax.servlet.ServletRequest
 *  org.apache.commons.lang3.StringUtils
 *  org.apache.sling.api.resource.ValueMap
 */
package com.day.cq.wcm.foundation;

import com.day.cq.wcm.api.AuthoringUIMode;
import com.day.cq.wcm.api.components.Component;
import javax.servlet.ServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.sling.api.resource.ValueMap;

public class Placeholder {
    public static final String DEFAULT_PLACEHOLDER_TOUCH = "cq-placeholder";
    public static final String ATTRIBUTE_EMTPYTEXT = "data-emptytext";

    public static boolean isAuthoringUIModeTouch(ServletRequest slingRequest) {
        return AuthoringUIMode.TOUCH.equals((Object)AuthoringUIMode.fromRequest((ServletRequest)slingRequest));
    }

    public static /* varargs */ String getDefaultPlaceholder(ServletRequest slingRequest, String title, String defaultPlaceholder, String ... addClasses) {
        String placeholder = defaultPlaceholder;
        if (Placeholder.isAuthoringUIModeTouch(slingRequest)) {
            if (title == null) {
                title = "";
            }
            String cls = "cq-placeholder";
            for (String cl : addClasses) {
                if (cl == null) continue;
                cls = cls + " " + cl;
            }
            placeholder = "<div class=\"" + cls + "\" " + "data-emptytext" + "=\"" + title + "\">" + "</div>";
        }
        return placeholder;
    }

    public static /* varargs */ String getDefaultPlaceholder(ServletRequest slingRequest, Component component, String defaultPlaceholder, String ... addClasses) {
        return Placeholder.getDefaultPlaceholder(slingRequest, Placeholder.getComponentTitle(component), defaultPlaceholder, addClasses);
    }

    public static String getDefaultPlaceholder(ServletRequest slingRequest, Component component, String defaultPlaceholder) {
        return Placeholder.getDefaultPlaceholder(slingRequest, Placeholder.getComponentTitle(component), defaultPlaceholder, new String[0]);
    }

    public static String getComponentTitle(Component component) {
        String title = null;
        if (component != null && StringUtils.isEmpty((CharSequence)(title = component.getProperties().get((Object)"./jcr:title").toString()))) {
            title = component.getPath();
        }
        return title;
    }
}