Search in sources :

Example 26 with Link

use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.

the class GridPager method writePageLink.

private void writePageLink(MarkupWriter writer, int pageIndex) {
    if (pageIndex < 1 || pageIndex > maxPages)
        return;
    if (pageIndex <= lastIndex)
        return;
    final boolean isBootstrap4 = isBootstrap4();
    if (pageIndex != lastIndex + 1) {
        writer.element("li", "class", isBootstrap4 ? "disabled page-item" : "disabled");
        writer.element("a", "href", "#", "aria-disabled", "true");
        addClassAttributeToPageLinkIfNeeded(writer, isBootstrap4);
        writer.write(" ... ");
        writer.end();
        writer.end();
    }
    lastIndex = pageIndex;
    if (pageIndex == currentPage) {
        writer.element("li", "aria-current", "page", "class", isBootstrap4 ? "active page-item" : "active");
        writer.element("a", "href", "#", "aria-disabled", "true");
        addClassAttributeToPageLinkIfNeeded(writer, isBootstrap4);
        writer.write(Integer.toString(pageIndex));
        writer.end();
        writer.end();
        return;
    }
    writer.element("li");
    if (isBootstrap4) {
        writer.getElement().attribute("class", "page-item");
    }
    Link link = resources.createEventLink(EventConstants.ACTION, pageIndex);
    if (zone != null) {
        link.addParameter("t:inplace", "true");
    }
    writer.element("a", "href", link, "data-update-zone", zone, "title", messages.format("core-goto-page", pageIndex));
    addClassAttributeToPageLinkIfNeeded(writer, isBootstrap4);
    writer.write(Integer.toString(pageIndex));
    writer.end();
    // li
    writer.end();
}
Also used : Link(org.apache.tapestry5.http.Link)

Example 27 with Link

use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.

the class PageLink method beginRender.

void beginRender(MarkupWriter writer) {
    if (isDisabled())
        return;
    Link link;
    if (page instanceof String) {
        final String pageName = (String) page;
        link = resources.isBound("context") ? linkSource.createPageRenderLinkWithContext(pageName, context == null ? CommonsUtils.EMPTY_STRING_ARRAY : context) : linkSource.createPageRenderLink(pageName);
    } else {
        // If page is a Class, use it directly. If not, use its class (type)
        Class<?> clasz = page instanceof Class<?> ? (Class<?>) page : page.getClass();
        link = resources.isBound("context") ? linkSource.createPageRenderLinkWithContext(clasz, context == null ? CommonsUtils.EMPTY_STRING_ARRAY : context) : linkSource.createPageRenderLink(clasz);
    }
    writeLink(writer, link);
}
Also used : AbstractLink(org.apache.tapestry5.corelib.base.AbstractLink) Link(org.apache.tapestry5.http.Link)

Example 28 with Link

use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.

the class Autocomplete method afterRender.

@Import(stylesheet = "typeahead-bootstrap3.css")
void afterRender() {
    Link link = resources.createEventLink(EVENT_NAME, context);
    JSONObject spec = new JSONObject("id", field.getClientId(), "url", link.toString()).put("minChars", minChars).put("limit", maxSuggestions);
    jsSupport.require("t5/core/autocomplete").with(spec);
}
Also used : JSONObject(org.apache.tapestry5.json.JSONObject) Link(org.apache.tapestry5.http.Link)

Example 29 with Link

use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.

the class RequestParameterDemo method getBrokenLink.

public Link getBrokenLink() {
    Link link = resources.createEventLink(EVENT_NAME);
    link.addParameter(PARAMETER_NAME, "frodo");
    return link;
}
Also used : Link(org.apache.tapestry5.http.Link)

Example 30 with Link

use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.

the class ComponentEventLinkEncoderImplTest method root_index_page_gone.

@Test
public void root_index_page_gone() {
    RequestSecurityManager manager = mockRequestSecurityManager();
    Response response = mockResponse();
    ContextPathEncoder contextPathEncoder = getService(ContextPathEncoder.class);
    expect(manager.checkPageSecurity("Index")).andReturn(LinkSecurity.INSECURE);
    train_encodeURL(response, "/", "MAGIC");
    replay();
    ComponentEventLinkEncoder encoder = new ComponentEventLinkEncoderImpl(null, contextPathEncoder, null, response, manager, null, null, false, "", "", null, null);
    PageRenderRequestParameters parameters = new PageRenderRequestParameters("Index", new EmptyEventContext());
    Link link = encoder.createPageRenderLink(parameters);
    assertEquals(link.toURI(), "MAGIC");
    verify();
}
Also used : Response(org.apache.tapestry5.http.services.Response) PageRenderRequestParameters(org.apache.tapestry5.services.PageRenderRequestParameters) ContextPathEncoder(org.apache.tapestry5.services.ContextPathEncoder) ComponentEventLinkEncoder(org.apache.tapestry5.services.ComponentEventLinkEncoder) EmptyEventContext(org.apache.tapestry5.internal.EmptyEventContext) Link(org.apache.tapestry5.http.Link) Test(org.testng.annotations.Test)

Aggregations

Link (org.apache.tapestry5.http.Link)66 Test (org.testng.annotations.Test)37 Response (org.apache.tapestry5.http.services.Response)19 MarkupWriter (org.apache.tapestry5.MarkupWriter)10 JSONObject (org.apache.tapestry5.json.JSONObject)10 ComponentEventLinkEncoder (org.apache.tapestry5.services.ComponentEventLinkEncoder)10 Request (org.apache.tapestry5.http.services.Request)8 PageRenderRequestParameters (org.apache.tapestry5.services.PageRenderRequestParameters)8 Element (org.apache.tapestry5.dom.Element)7 Contribute (org.apache.tapestry5.ioc.annotations.Contribute)7 Link (org.apache.tapestry5.Link)6 LinkCreationListener2 (org.apache.tapestry5.services.LinkCreationListener2)6 EventContext (org.apache.tapestry5.EventContext)5 ComponentClassResolver (org.apache.tapestry5.services.ComponentClassResolver)5 IOException (java.io.IOException)4 TapestryException (org.apache.tapestry5.commons.internal.util.TapestryException)4 BaseURLSource (org.apache.tapestry5.http.services.BaseURLSource)4 Page (org.apache.tapestry5.internal.structure.Page)4 List (java.util.List)3 ComponentResources (org.apache.tapestry5.ComponentResources)3