Package org.apache.tapestry.form.translator

Examples of org.apache.tapestry.form.translator.DateTranslator


    public void renderContribution(IMarkupWriter writer, IRequestCycle cycle,
            FormComponentContributorContext context, IFormComponent field)
    {
        // TODO: This is a little hacky, but validators need to be able to cooperate
        // with translators during client side validation as well
        DateTranslator translator = (DateTranslator) getFieldTranslator(field, DateTranslator.class);
        if (translator == null)
            return;
       
        JSONObject profile = context.getProfile();
       
        context.addInitializationScript(field, "dojo.require(\"tapestry.form.datetime\");");
       
        if (!profile.has(ValidationConstants.CONSTRAINTS)) {
            profile.put(ValidationConstants.CONSTRAINTS, new JSONObject());
        }
        JSONObject cons = profile.getJSONObject(ValidationConstants.CONSTRAINTS);
       
        accumulateProperty(cons, field.getClientId(),
                new JSONLiteral("[tapestry.form.datetime.isValidDate,{"
                        + "max:"
                        + JSONObject.quote(translator.format(field, context.getLocale(), _maxDate))
                        + ","
                        + "datePattern:"
                        + JSONObject.quote(translator.getPattern())
                        + (translator.isLenient() ? "" : ",strict:true")
                        + "}]"));
       
        accumulateProfileProperty(field, profile,
                ValidationConstants.CONSTRAINTS, buildMessage(context, field, translator));
    }
View Full Code Here


    protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle)
    {
        PageRenderSupport pageRenderSupport = TapestryUtils.getPageRenderSupport(cycle, this);

        boolean disabled = isDisabled();
        DateTranslator translator = (DateTranslator) getTranslator();
        Locale locale = getPage().getLocale();
        SimpleDateFormat format = translator.getDateFormat(locale);

        DateFormatSymbols dfs = format.getDateFormatSymbols();
        Calendar cal = Calendar.getInstance(locale);

        String name = getName();
View Full Code Here

    public void test_Render()
    {
        ValidatableFieldSupport vfs = newMock(ValidatableFieldSupport.class);
        TranslatedFieldSupport tfs = newMock(TranslatedFieldSupport.class);

        DateTranslator translator = new DateTranslator();
        translator.setPattern("hh:mm a");
        ResponseBuilder resp = newMock(ResponseBuilder.class);

        IRequestCycle cycle = newMock(IRequestCycle.class);
        IForm form = newMock(IForm.class);
        checkOrder(form, false);
View Full Code Here

{

    public void test_Render()
    {
        ValidatableFieldSupport vfs = newMock(ValidatableFieldSupport.class);
        DateTranslator translator = new DateTranslator();
        translator.setPattern("hh:mm a");
        ResponseBuilder resp = newMock(ResponseBuilder.class);

        IRequestCycle cycle = newMock(IRequestCycle.class);
        IForm form = newMock(IForm.class);
        checkOrder(form, false);
View Full Code Here

    protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle)
    {
        PageRenderSupport pageRenderSupport = TapestryUtils.getPageRenderSupport(cycle, this);

        boolean disabled = isDisabled();
        DateTranslator translator = (DateTranslator) getTranslator();
        Locale locale = getPage().getLocale();
        SimpleDateFormat format = translator.getDateFormat(locale);

        DateFormatSymbols dfs = format.getDateFormatSymbols();
        Calendar cal = Calendar.getInstance(locale);

        String name = getName();
View Full Code Here

       
        TranslatedField field = newMock(TranslatedField.class);
        checkOrder(field, false);
       
        Date maxDate = new Date(System.currentTimeMillis() + ONE_DAY);
        DateTranslator translator = new DateTranslator();
       
        expect(field.getTranslator()).andReturn(translator);
       
        expect(field.getClientId()).andReturn("myfield").anyTimes();
       
        expect(field.getDisplayName()).andReturn("My Field");
       
        FormComponentContributorContext context = newMock(FormComponentContributorContext.class);
       
        Locale locale = Locale.ENGLISH;
        expect(context.getLocale()).andReturn(locale).anyTimes();
       
        expect(context.getProfile()).andReturn(json);
       
        context.addInitializationScript(field, "dojo.require(\"tapestry.form.datetime\");");
       
        String strMax = translator.format(field, locale, maxDate);
       
        trainFormatMessage(context, "custom", ValidationStrings.DATE_TOO_LATE,
                new Object[] { "My Field", strMax },
                "custom\\message");
       
        replay();
       
        new MaxDate("maxDate=" + strMax + ",message=custom").renderContribution(writer, cycle, context, field);
       
        verify();
       
        assertEquals(json.toString(), "{\"constraints\":{\"myfield\":[["
                + "tapestry.form.datetime.isValidDate,{max:\""
                + strMax + "\",datePattern:"
                + JSONObject.quote(translator.getPattern())
                + "}]]},"
                + "\"myfield\":{\"constraints\":[\"custom\\\\message\"]}}");
    }
View Full Code Here

       
        TranslatedField field = newMock(TranslatedField.class);
        checkOrder(field, false);
       
        Date minDate = new Date(System.currentTimeMillis() + ONE_DAY);
        DateTranslator translator = new DateTranslator();
       
        expect(field.getTranslator()).andReturn(translator);
       
        expect(field.getClientId()).andReturn("myfield").anyTimes();
       
        expect(field.getDisplayName()).andReturn("My Field");
       
        FormComponentContributorContext context = newMock(FormComponentContributorContext.class);
       
        Locale locale = Locale.ENGLISH;
        expect(context.getLocale()).andReturn(locale).anyTimes();
       
        expect(context.getProfile()).andReturn(json);
       
        context.addInitializationScript(field, "dojo.require(\"tapestry.form.datetime\");");
       
        String strMin = translator.format(field, locale, minDate);
       
        trainFormatMessage(context, null, ValidationStrings.DATE_TOO_EARLY,
                new Object[] { "My Field", strMin }, "default message");
       
        replay();
       
        new MinDate("minDate="+strMin).renderContribution(writer, cycle, context, field);
       
        verify();
       
        assertEquals(json.toString(),"{\"constraints\":{\"myfield\":[["
                + "tapestry.form.datetime.isValidDate,{min:\""
                + strMin + "\",datePattern:"
                + JSONObject.quote(translator.getPattern())
                + "}]]},"
                + "\"myfield\":{\"constraints\":[\"default message\"]}}");
    }
View Full Code Here

       
        TranslatedField field = newMock(TranslatedField.class);
        checkOrder(field, false);
       
        Date minDate = new Date(System.currentTimeMillis() + ONE_DAY);
        DateTranslator translator = new DateTranslator();
       
        expect(field.getTranslator()).andReturn(translator);
       
        expect(field.getClientId()).andReturn("myfield").anyTimes();
       
        expect(field.getDisplayName()).andReturn("My Field");
       
        FormComponentContributorContext context = newMock(FormComponentContributorContext.class);
       
        Locale locale = Locale.ENGLISH;
        expect(context.getLocale()).andReturn(locale).anyTimes();
       
        expect(context.getProfile()).andReturn(json);
       
        context.addInitializationScript(field, "dojo.require(\"tapestry.form.datetime\");");
       
        String strMin = translator.format(field, locale, minDate);
       
        trainFormatMessage(context, "custom", ValidationStrings.DATE_TOO_EARLY,
                new Object[] { "My Field", strMin },
                "custom\\message");
       
        replay();
       
        new MinDate("minDate=" + strMin + ",message=custom").renderContribution(writer, cycle, context, field);
       
        verify();
       
        assertEquals(json.toString(), "{\"constraints\":{\"myfield\":[["
                + "tapestry.form.datetime.isValidDate,{min:\""
                + strMin + "\",datePattern:"
                + JSONObject.quote(translator.getPattern())
                + "}]]},"
                +"\"myfield\":{\"constraints\":[\"custom\\\\message\"]}}");
    }
View Full Code Here

    protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle)
    {
        PageRenderSupport pageRenderSupport = TapestryUtils.getPageRenderSupport(cycle, this);

        boolean disabled = isDisabled();
        DateTranslator translator = (DateTranslator) getTranslator();
        Locale locale = getPage().getLocale();
        SimpleDateFormat format = translator.getDateFormat(locale);

        DateFormatSymbols dfs = format.getDateFormatSymbols();
        Calendar cal = Calendar.getInstance(locale);

        String name = getName();
View Full Code Here

TOP

Related Classes of org.apache.tapestry.form.translator.DateTranslator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.