World: r3wp
[!Cheyenne] Discussions about the Cheyenne Web Server
older newer | first last |
Graham 11-Aug-2010 [8773] | I think the term is alchemist, and not magician! |
Kaj 11-Aug-2010 [8774] | Any sufficiently complex technology is indistinguishable from magic |
Graham 11-Aug-2010 [8775] | but one expects magic to be bug free |
Terry 11-Aug-2010 [8776x3] | looks hard to maintain. In PHP, I process/generate all the hypertext, and avoid the 'dynamic' aspect of web page creation altogether, so my page templates look like so; <html> <head> <?= $cssincludes ?> // CSS <?= $headincludes?> // JQuery, specific javascript functions </head> <body> <?= $body ?> </body> </html> |
That's pseudo.. in reality, I have column definitions for templating <? $var1 = "Column 1"; $var2 = "Column 2"; $var3 = "Column 3"; $c1.= "<div>$var1</div>"; $c2.= "<div>$var2</div>"; $c3.= "<div>$var3</div>"; //Column widths can be modified dynamically or set initially <style> #c1{ width: 50%; } #c2{ width: 25% } #c3{ width: 25% } </style> ?> <html> <head> </head> <body> <div id="content"> <div id="c1"> <?=$c1?> </div> <div id="c2"> <?=$c2?> </div> <div id="c3"> <?=$c3?> </div> </body> </html> | |
A simple 3 column template handles 97% of my needs | |
Oldes 11-Aug-2010 [8779] | As long as you have just simple pages, it's fine. You can use this with RSP easily as well.. but if you want to look at "hard to maintain" PHP code.. and have good nerves..just download Magento's sources and try to figure out what's going on. |
Graham 22-Aug-2010 [8780x2] | This is a little odd .... I created a PDF and sent it back to the browser using the response, and application pdf, and the browser's security prevents it from downloading ....on some of the user's PC's ( at a hospital ), but if I write the pdf to the disk and then redirect the browser to the file in the www directory, there's no complaint! |
so, the browser is treating a PDF differently that is being sent directly via the response, as opposed to fetching the PDF using GET | |
Oldes 23-Aug-2010 [8782] | check the header.. probably using some other content-type. |
Graham 23-Aug-2010 [8783x2] | it displays as a PDF for me .... |
content-type is application/pdf | |
Oldes 23-Aug-2010 [8785] | Use wireshark and check for differencies |
Graham 23-Aug-2010 [8786x2] | I used Firefox headers ... |
The difference is between a GET and POST ... I wonder if the hospital has configure their security this way | |
Oldes 23-Aug-2010 [8788] | And cannot you store the generated PDF in temp and redirect to it's location using the GET request? |
Graham 23-Aug-2010 [8789] | That's what I am having to do ... |
florin 24-Aug-2010 [8790x5] | Graham, how'd you go about doing it? |
Graham: Terry, I'm trying to get away from mixing html and rebol inside the view part of the page ... this type of stuff Hello <%= select session/content 'username %> ... looks hard to maintain. | |
Is the app-init.r file the place to map a template file (.html) to a mirror .r file? If so, we could use the response/buffer to have access to the dom. I tried to use the app-init.r file yet it did not work for me. | |
Wicket and Click are great example of how to get away from using scripting inside template files or even tags. | |
If I find a framework that does this for rebol, it will be the reason I'm looking for. | |
Graham 24-Aug-2010 [8795x2] | What's the question? |
I pretty much gave up on using the app-init.r file ... it is supposed to be local to the app, but I found variables spilling to other apps | |
florin 24-Aug-2010 [8797] | The question is the remark you make to Terry: I'm trying to get away from mixing html and rebol inside the view part of the page ... this type of stuff Hello <%= select session/content 'username %> ... looks hard to maintain. |
Graham 24-Aug-2010 [8798] | That's my remark ... what's your question? :) |
florin 24-Aug-2010 [8799x2] | What need for clean templeting is access to the html source file. I'd use the element ID to match with a backing .r file variable / component model. No scripting, no tags in the html file. So the question is, how can cheyenne let me map these two files? |
/path-to-file/page.html mapping to /same-path/page.r. From here, page.r works on the response/buffer. | |
Graham 24-Aug-2010 [8801x2] | So chyenne loads page.html and does what? |
You want cheyenne to load page.r instead? | |
florin 24-Aug-2010 [8803x2] | allows a mapped file to access the response/buffer before it returns it. |
Yes, where page.r manipulates page.thml | |
Graham 24-Aug-2010 [8805] | maybe you need this http://cheyenne-server.org/docs/rsp-api.html#def-56 |
florin 24-Aug-2010 [8806] | exactly. I tried that tonight as I look at cheyenne for the first time. However, the on-page-start/end do not seem to work (in debug mode). The instructions are so simple I wonder why it would not work though. |
Graham 24-Aug-2010 [8807x2] | are you using rsp pages? |
And is it inside a webapp? | |
florin 24-Aug-2010 [8809x2] | Aha. No. I guess that's where it is. I used .htm. Yet I found that the script in the .htm file also is processed. So there is a difference. |
Yes, inside a webapp. | |
Graham 24-Aug-2010 [8811x3] | It sounds like you want to do what I'm doing here http://rebol.wik.is/Cheyenne/Page_Title/HTML_dialect_demo but have the html page act as the template |
whereas i put both together | |
the element id or divs are used to control the layout of the template | |
florin 24-Aug-2010 [8814x2] | Yep. Yet, to my mind, it does not achieve my objective. |
There is no way a page designer would get into this mess. Appealing though. | |
Graham 24-Aug-2010 [8816] | in that case .. the rsp page would just load the html ... no real difference |
florin 24-Aug-2010 [8817] | What I need, is a clean html page that my code would not touch directly. |
Graham 25-Aug-2010 [8818x2] | well, this has limitations.. what say you want to update all the javascript ?? |
and most html is dynamically generated for me ... | |
florin 25-Aug-2010 [8820] | From the html page? The javascript would only execute after the response buffer is closed. |
Graham 25-Aug-2010 [8821x2] | I'm assuming that the JS and HTML are part of your template |
so say your library updates . .you have to update all the pages that use the js libraries | |
older newer | first last |