javascriptSupport.require( "<module name>" ).with( <args> ) - if your module returns a function javascriptSupport.require( "<module name>" ).invoke( "<method name>" ).with( "<args>" ) if your module export named functions
Take a look at the t5 sources to see how things are used. -- Chris On Wed, Aug 31, 2016 at 9:36 AM, Qbyte Consulting <[email protected] > wrote: > How can I trigger the locate function from the component Java after login > success, what replaces .addScript? > > Sent from my iPhone > > > On 31 Aug 2016, at 08:07, Chris Poulsen <[email protected]> wrote: > > > > The javaScriptSupport.addScript is deprectated in 5.4 iirc. > > > > Instead I would use a module for the locate function, the url can be > passed > > as an init parameter to require or stored somewhere in the DOM (the > former > > probably makes the most sense in this case. > > > > Also I would use the tapestry ajax module ( > > http://tapestry.apache.org/current/coffeescript/ajax.html) instead of > > $.ajax as that will give you some code that understands the responses > that > > tapestry may generate in from an event handler (error screen, additional > > stuff added using ajaxResponseRenderer etc.) > > > > There is also a helper for adding url parameters ( > > http://tapestry.apache.org/current/coffeescript/utils.html) > > > > -- > > Chris > > > > > > On Wed, Aug 31, 2016 at 1:19 AM, Qbyte Consulting < > [email protected] > >> wrote: > > > >> I could not get the form method to work, so ended up passing an > eventlink > >> url to my javascript and adding parameters to it. Works a treat and > simple. > >> > >> Link link = > >> componentResources.createEventLink("geolocation", null); > >> final String eventLinkURI = link.toAbsoluteURI(); > >> ajaxResponseRenderer.addCallback(new > JavaScriptCallback() > >> { > >> @Override > >> public void run(JavaScriptSupport javascriptSupport) > { > >> javascriptSupport.addScript( > >> "locate('" + eventLinkURI + "');"); > >> } > >> }); > >> > >> > >> function locate(eventLinkURI) { > >> if (navigator.geolocation) { > >> navigator.geolocation > >> .getCurrentPosition(function (position) > >> { > >> var geolink = eventLinkURI > >> + "?lat=" + position.coords.latitude > >> + "&long=" + position.coords.longitude; > >> $.ajax({url: geolink}); > >> }, geoError); > >> } > >> } > >> > >> > >> On Tue, Aug 30, 2016 at 12:11 PM, Chris Poulsen <[email protected] > > > >> wrote: > >> > >>> Use a form, request parameters or url context - The usual way of > sending > >>> data to the server. > >>> > >>> -- > >>> Chris > >>> > >>> On Tue, Aug 30, 2016 at 11:56 AM, Qbyte Consulting < > >>> [email protected]> wrote: > >>> > >>>> I get JS to populate the hidden form fields, they are passed as > >>> parameters > >>>> to the page, but they are empty strings? > >>>> > >>>> function locate() { > >>>> //Geolocation > >>>> if (navigator.geolocation) { > >>>> navigator.geolocation > >>>> .getCurrentPosition(function (position) > >>>> { > >>>> $("#latitude").val(position. > >>>> coords.latitude.toString()); > >>>> > >>>> $("#longitude").val(position.coords.longitude.toString()); > >>>> }, geoError); > >>>> $("#locateForm").submit(); > >>>> } > >>>> } > >>>> > >>>> On Tue, Aug 30, 2016 at 8:24 AM, Nathan Quirynen < > >>>> [email protected]> wrote: > >>>> > >>>>> Hi > >>>>> > >>>>> I guess you could do something like the following: > >>>>> > >>>>> Create a component just containing two hidden fields and in the after > >>>>> render event of this component run a javascript module where you get > >>> the > >>>>> longitude and latitude and set these values to your hidden fields. > >>>>> Add two parameters (latitude and longitude) to the components java > >>> class > >>>>> to which you pass the latitude and longitude properties from your > >> page > >>>> that > >>>>> have to be set when submitting the form. Use these parameters in your > >>>>> component as the values for your hidden fields. > >>>>> Then you can add this component inside any form where you need. > >>>>> > >>>>> Nathan > >>>>> > >>>>> > >>>>> > >>>>>> On 30/08/16 01:10, Qbyte Consulting wrote: > >>>>>> > >>>>>> Hi, > >>>>>> > >>>>>> Does anyone have an idea how to pass latitude and longitude as > >> hidden > >>>>>> values in a login for with T5.4, or any other tricks to get this > >> data > >>>> into > >>>>>> a component? > >>>>>> > >>>>>> John > >>>>> > >>>>> ------------------------------------------------------------ > >> --------- > >>>>> To unsubscribe, e-mail: [email protected] > >>>>> For additional commands, e-mail: [email protected] > >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
