Re: Generating javascript code with velocity
This sounds really usefull. Do you have any examples? Inandjo Taurel wrote: i have also used vm to generate dynamic JS code, to have cascade select boxes. When you select an option in on selector box, it changes the content of another selector box. it's pretty usefull! _ MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*. http://join.msn.com/?page=features/virus - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Claudio J. Mendoza Senior Partner Datos LLC www.datossys.com http://www.e-transact.com/ voice(direct): (305) 661-2675 cell: (305) 606-1126 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Generating javascript code with velocity
Jeffrey D. Brekke wrote: On Fri, 28 May 2004 14:09:59 +0200, Bernardo Arlandis Mañó [EMAIL PROTECTED] said: [SNIPPED] You've pointed something important, if the js code has to be regenerated there's no improvement other than having separate files. The js code should be static, but then I'd need to pass dinamically created collections of objects to the javascript functions to do their work. What I'd like to know is easy ways to do this or alternative ones with the same effect. For example, I need to pass a list of java objects generated by velocity to the javascript functions so that the js functions can work with them without having to use velocity to replicate the js code. We've done this. We put our javascript code into .js files as suggested. This is static js code, functions really. Then in our velocity templates we use the js functions. We really try to keep these javascript functions to ui issues ( speed ) and very little logic in them ( for example disabling or enabling a button on the fly ). So in one instance we had to take a list of objects we get from our pull tool and slam that into a js array for our javascript functions to use. In our velocity template we did just that: --- CommonJS.vm--- script language=JavaScript src=$content.getURI(javascript/selectbox.js)/script script language=JavaScript src=$content.getURI(javascript/format-utility.js)/script #set($jsfields = $layoutholder.Layout.Fields) #if ($jsfields) script language=JavaScript var noFields = $jsfields.size(); var fields = new Array(noFields); #set($offset = 1) #foreach($field in $jsfields) #set ($i = $velocityCount - 1) #set ($end = $offset + $field.FieldLength - 1 ) fields[$i] = new Array(6); fields[$i][0] = $formatutil.escapeJavaScript($!field.CustomerField); fields[$i][1] = $!field.QdsField; fields[$i][2] = $!field.FieldLength; fields[$i][3] = $offset; fields[$i][4] = $end; fields[$i][5] = $!field.FieldType; fields[$i][6] = $!field.FieldFormat; #set ($offset = $end+1); #end /script #end Then we use our javascript function on our html elements, passing the array as needed. select name=fmt size=10 onChange=update(this, fields) onkeypress=keyUpdate(this,event) Hope this helps. I was going to do something like that but I was looking for a more general solution that could work the same for any object without much coding. As it seems there's no such method, I'll take yours with your code as a working example. Thanks. Regards. -- Bernardo Arlandis Mañó * http://berarma.webhop.org/ * http://mozilla.webhop.org/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Generating javascript code with velocity
Hi. I've been using turbine for a while and i've been using velocity for generating html and javascript code inside .vm files, but now I'd like to take the javascript code out to its own .js file. That will make my pages smaller, but I can't use the velocity template engine inside .js files. Is there some way to not lose this functionality when working with external js files? How do you deal with this? Thanks. -- Bernardo Arlandis Mañó * http://berarma.webhop.org/ * http://mozilla.webhop.org/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Generating javascript code with velocity
My experience has been to move as much code as possible into .js files that do not require velocity processing as the .js files can be cached by the browser. However, by the nature of using velocity to generate javascript code, isn't it dynamic? I don't think there is an easy answer to your question. Could you create a Javascript screen as we have seen others creating dynamic charts and linking to them in that manner, I would think maybe you can create a Javascript screen and have your code generated there as you call it from within the main .vm you are currently working on. This still doesn't seem to have much benefit other than seperating the location of the code from the screen. Jeff Painter On Fri, 28 May 2004, Bernardo Arlandis Mañó wrote: Hi. I've been using turbine for a while and i've been using velocity for generating html and javascript code inside .vm files, but now I'd like to take the javascript code out to its own .js file. That will make my pages smaller, but I can't use the velocity template engine inside .js files. Is there some way to not lose this functionality when working with external js files? How do you deal with this? Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Generating javascript code with velocity
On Fri, 28 May 2004 14:09:59 +0200, Bernardo Arlandis Mañó [EMAIL PROTECTED] said: [SNIPPED] You've pointed something important, if the js code has to be regenerated there's no improvement other than having separate files. The js code should be static, but then I'd need to pass dinamically created collections of objects to the javascript functions to do their work. What I'd like to know is easy ways to do this or alternative ones with the same effect. For example, I need to pass a list of java objects generated by velocity to the javascript functions so that the js functions can work with them without having to use velocity to replicate the js code. We've done this. We put our javascript code into .js files as suggested. This is static js code, functions really. Then in our velocity templates we use the js functions. We really try to keep these javascript functions to ui issues ( speed ) and very little logic in them ( for example disabling or enabling a button on the fly ). So in one instance we had to take a list of objects we get from our pull tool and slam that into a js array for our javascript functions to use. In our velocity template we did just that: --- CommonJS.vm--- script language=JavaScript src=$content.getURI(javascript/selectbox.js)/script script language=JavaScript src=$content.getURI(javascript/format-utility.js)/script #set($jsfields = $layoutholder.Layout.Fields) #if ($jsfields) script language=JavaScript var noFields = $jsfields.size(); var fields = new Array(noFields); #set($offset = 1) #foreach($field in $jsfields) #set ($i = $velocityCount - 1) #set ($end = $offset + $field.FieldLength - 1 ) fields[$i] = new Array(6); fields[$i][0] = $formatutil.escapeJavaScript($!field.CustomerField); fields[$i][1] = $!field.QdsField; fields[$i][2] = $!field.FieldLength; fields[$i][3] = $offset; fields[$i][4] = $end; fields[$i][5] = $!field.FieldType; fields[$i][6] = $!field.FieldFormat; #set ($offset = $end+1); #end /script #end Then we use our javascript function on our html elements, passing the array as needed. select name=fmt size=10 onChange=update(this, fields) onkeypress=keyUpdate(this,event) Hope this helps. -- = Jeffrey D. Brekke [EMAIL PROTECTED] Wisconsin, USA [EMAIL PROTECTED] [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]