Hey Y'all I was reading the thread and you know another prime use case is sizing images for mobile or web using css alone. We need to be able to do this. I could use use it starting yesterday.
Just so you know, Jon On Thu, Mar 29, 2012 at 2:20 PM, Juan Alba <juan.a...@condortech.com.ar>wrote: > Thanks Lance Again. > > I have just been being reading the article you share with me and I realized > that is for tapestry 5.2.0. I am using 5.1.0.5, so I will have to use the * > URLRewriter* service (Can't update to 5.2.0). I have no idea how this work > either, do you think that I will be able to do something similar with this > service? > > Thanks in advance. > > > On Wed, Mar 28, 2012 at 1:08 PM, Lance Java <lance.j...@googlemail.com > >wrote: > > > Great, if Tapestry is the only thing rendering your links then it will > all > > work. > > > > By overriding the PageRenderLinkTransformer you are intercepting both > link > > creation and URL decoding so you are covering the whole flow. > > > > On Wednesday, 28 March 2012, Juan Alba <juan.a...@condortech.com.ar> > > wrote: > > > Thanks Again Lance. > > > > > > On Wed, Mar 28, 2012 at 12:10 PM, Lance Java < > lance.j...@googlemail.com > > >wrote: > > > > > >> I was assuming that all of your links were rendered by Tapestry (eg > > >> EventLink and ActionLink). If this was the case then it *should* just > > work. > > >> > > > > > > You are assuming well. I am using ActionLinks. > > > Right now, When you click a link I am doing: > > > "return Page.class;" > > > But as far as I understood, now I will have to do something like: > > > *@Inject Enviroment* > > > > > > and instead of return do some stuff like: > > > > > > *return(pageRender.createPageRenderLink(FBAssociationPage.class)+ > > > ".facebookloginlink");* > > > > > > adding the getMode() somewhere in there... > > > > > > So it seems I am not understanding very well how to use the > @Enviroment. > > Or > > > this is what I have to do? > > > > > > Thanks. > > > > > > > > >> On Wednesday, 28 March 2012, Juan Alba <juan.a...@condortech.com.ar> > > >> wrote: > > >> > First of all, thanks again Lance! > > >> > > > >> > > > >> > > > >> > On Wed, Mar 28, 2012 at 11:25 AM, Lance Java < > > lance.j...@googlemail.com > > >> >wrote: > > >> > > > >> >> Perhaps this would work > > >> >> > > >> >> Create an environmental object called Mode > > >> >> > > >> >> public interface Mode { > > >> >> public String getMode(); // facebook or normal > > >> >> } > > >> >> > > >> >> Use tapestry's URL rewriting to rewrite > http://myapp/facebook/pageto > > >> >> http://myapp/page (see > > >> >> > http://blog.tapestry5.de/index.php/2010/09/06/new-url-rewriting-api/ > > ) > > >> >> > > >> >> As the URL is rewritten, it pushes a mode onto the environment > > (either > > >> >> "facebook" or "normal") > > >> >> > > >> >> @Inject > > >> >> Environment environment > > >> >> > > >> >> String mode = getModeFromURL(); > > >> >> environment.push(Mode.class, new ModeImpl(mode)); > > >> >> > > >> > > > >> > This is great and I think that I'd got it. > > >> > > > >> > The problem is with this second part: > > >> > > > >> >> When rendering links, use Environment.peek() to get the Mode from > the > > >> >> environment and add the mode to each link URL if necessary. > > >> >> > > >> >> Components and Pages can then use the @Environmental annotation to > > >> inject > > >> >> the mode to determine which styles to include > > >> >> > > >> >> Then you get normal browsers to access http://myapp/page and > > facebook > > >> to > > >> >> access http://myapp/facebook/page > > >> >> > > >> >> > > >> > My web app is using a lot of webLibs (almost one per section). If I > do > > >> > this, I will have to change all the web app, and all the web libs to > > >> > build the links correctly? It seems to be a huge re-factoring. > > >> > > > >> > I am getting the idea right? > > >> > > > >> > Thanks. > > >> > > > >> > > > >> > > > >> > > > >> >> On Wednesday, 28 March 2012, Juan Alba < > juan.a...@condortech.com.ar> > > >> >> wrote: > > >> >> > Thanks Bob and Lance for the ideas and recomendations. > > >> >> > I think that Lance understood better my problem. The mode to > change > > >> the > > >> >> css > > >> >> > I have it already solved with Thiago's suggestion. > > >> >> > Now my problem is that I can't define which stylesheet to use > from > > >> >> server's > > >> >> > side because the only way to define it is knowing if the app is > > >> running > > >> >> on > > >> >> > an iframe or not. > > >> >> > > > >> >> > Before sending the mail with my problems I tried to use either > > >> >> suggestions > > >> >> > "Parameter" and "Cookies or Session". > > >> >> > > > >> >> > *Parameter:* > > >> >> > If I have the parameter I have to change every class in the > webapp > > to > > >> add > > >> >> > the parameter if is set and don't loose it after the first link > > hit. > > >> >> > > > >> >> > *Cookies or Session:* > > >> >> > If they are set, It seems to work fine until I close the > > application > > >> >> > running in the iframe and open it in a new browser. It keeps all > > the > > >> >> > session or cookies and will use the wrong stylesheet. > > >> >> > > > >> >> > Any other idea? > > >> >> > > > >> >> > Thanks guys. > > >> >> > > > >> >> > On Wed, Mar 28, 2012 at 4:31 AM, Lance Java < > > >> lance.j...@googlemail.com > > >> >> >wrote: > > >> >> > > > >> >> >> All of the solutions mentioned on this thread assume that there > i > > >