All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.larmic.butterfaces.component.renderkit.html_basic.text.MaskedTextRenderer Maven / Gradle / Ivy

The newest version!
package de.larmic.butterfaces.component.renderkit.html_basic.text;

import de.larmic.butterfaces.component.html.text.HtmlMaskedText;
import de.larmic.butterfaces.component.partrenderer.RenderUtils;
import de.larmic.butterfaces.util.StringUtils;

import javax.faces.context.ResponseWriter;
import javax.faces.render.FacesRenderer;
import java.io.IOException;

@FacesRenderer(componentFamily = HtmlMaskedText.COMPONENT_FAMILY, rendererType = HtmlMaskedText.RENDERER_TYPE)
public class MaskedTextRenderer extends AbstractHtmlTagRenderer {

    @Override
    protected void encodeEnd(HtmlMaskedText maskedText, ResponseWriter writer) throws IOException {
        writer.startElement("script", maskedText);
        writer.writeText(RenderUtils.createJQueryPluginCall(maskedText.getClientId(), ".butter-input-component", buildPluginCall(maskedText)), null);
        writer.endElement("script");
    }

    private String buildPluginCall(final HtmlMaskedText maskedText) {
        final String inputMask = maskedText.getInputMask();
        if (StringUtils.isNotEmpty(inputMask)) {
            if (inputMask.startsWith("'") || inputMask.startsWith("\"")) {
                return "inputmask(" + inputMask + ")";
            } else {
                return "inputmask('" + inputMask + "')";
            }
        }

        return "inputmask()";
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy