Francesco, Thanks very much. I am using Radiant 0.6.1. Do I still have to modify the site_controller.rb? That is something I would like to avoid if possible.
saji ... * Francesco Lunelli <[EMAIL PROTECTED]> [2007-07-04 10:26:35 +0200]: > Some time ago I used this method to include static html pages in a Radiant > site without using iframes. This method is far from to be cmplete, there are > many improvements, adn I hope I will have time to do them, but it works. The > biggest problem to resolve is the redirection of inner links. I am working on > this using apricot, but this part is not complete. I hope I will be able to > complete it soon. > If you need more feel free to ask me. > > The possibility of capturing query parameters is not limited to > addressing different part of pages, but it could be useful in many ways, > I hope this possibility will be included in standard radiant distribution. > In this case I used it to include static html pages into radiant > generated pages. > I have a customer that decided one of his emplyee MUST do some pages > using an editor like nvu. (Learning to use radiant cms is too difficult > for her) > But the rest of the site is generated from radiant, menu and pages etc. > For the moment the tag is customised to my needs, but I think it could > be easily modified to any needs. > First of all I modified the site_controller.rb according to this post > http://lists.radiantcms.org/pipermail/radiant/2007-February/003480.html > > Then I created a custom tag > > ... > require 'net/http' > require 'uri' > > tag 'inner_site' do |tag| > > # site is the url of the site I want to include risposta is the html > page I will get back > > site = tag.attr['site'] > risposta="" > > # this is the radiant pag with "inner_site" tag for example > http://www.mysite.org/including > # the page "including" shoud be simply <r:inner_site > site="http://radiantcms.org" /> > > server=request.env['PATH_INFO'] > > # this caputures the query string parameter (it should be made better > capturing all parameters in a hash with name and value, bu for the > moment it woks) The var @pagina contains the stati html page I want to > include. i.e /html/iniziative.html > > tag.globals.page.request.params.each do | param | > @pagina = param[1].to_s.dup > end > if site > url = URI.parse(site) > res = Net::HTTP.start(url.host, url.port) {|http| > @pagina ? http.get(@pagina) : http.get("/html/iniziative.html") > } > # here I replace every internal link with a link to the radiant page > adding in the url the query string for the new page > #external links (those starting with http://) are leaved unchanged > # this part need a lot of work to be useful in every situation (pages > made with mac osx have different new line charachter, there should be a > better way to control if the link is internal or external) but form my > needs work enought. > # images and css paths are unchanged, so you will not see images and css > formatting > res.body.each_line {|line| > risposta+= line=~/http/ ? line : > line.gsub(/href="(.*)"/,"href=\"#{server}?pag="+'\1"') > } > end > risposta > end > > > now you can use this form to include radiant site in your page > http://www.mysite.org/including?pag=/index > > > > -- > Francesco Lunelli > Ymir s.r.l. > Viale Verona 190/11 > 38100 Trento > > > _______________________________________________ > Radiant mailing list > Post: [email protected] > Search: http://radiantcms.org/mailing-list/search/ > Site: http://lists.radiantcms.org/mailman/listinfo/radiant -- Saji N. Hameed APEC Climate Center +82 51 668 7470 National Pension Corporation Busan Building 12F Yeonsan 2-dong, Yeonje-gu, BUSAN 611705 [EMAIL PROTECTED] KOREA _______________________________________________ Radiant mailing list Post: [email protected] Search: http://radiantcms.org/mailing-list/search/ Site: http://lists.radiantcms.org/mailman/listinfo/radiant
