svnno****@sourc*****
svnno****@sourc*****
2009年 8月 24日 (月) 00:02:19 JST
Revision: 999 http://sourceforge.jp/projects/hiki/svn/view?view=rev&revision=999 Author: okkez Date: 2009-08-24 00:02:19 +0900 (Mon, 24 Aug 2009) Log Message: ----------- handle cookie correctly Modified Paths: -------------- hiki/branches/rack/hiki/command.rb hiki/branches/rack/hiki/page.rb Modified: hiki/branches/rack/hiki/command.rb =================================================================== --- hiki/branches/rack/hiki/command.rb 2009-08-23 15:02:16 UTC (rev 998) +++ hiki/branches/rack/hiki/command.rb 2009-08-23 15:02:19 UTC (rev 999) @@ -27,6 +27,7 @@ @params = cgi.params @cgi = cgi @conf = conf + @cookies = cgi.cookies code_conv # for TrackBack @@ -67,7 +68,7 @@ options['params'] = @params @plugin = Plugin.new( options, @conf ) - session_id =****@cgi*****['session_id'] + session_id = @cookies['session_id'] if session_id session = Hiki::Session.new( @conf, session_id ) if session.check @@ -168,7 +169,7 @@ end def cmd_preview - raise SessionError if****@plugi*****_id && @plugin.session_id != @cgi['session_id'] + raise SessionError if****@plugi*****_id && @plugin.session_id != @params['session_id'] @cmd = 'preview' cmd_edit( @p, @params['contents'], @conf.msg_preview, @params['page_title'] ) end @@ -371,7 +372,7 @@ end def cmd_save( page, text, md5hex, update_timestamp = true ) - raise SessionError if****@plugi*****_id && @plugin.session_id != @cgi['session_id'] + raise SessionError if****@plugi*****_id && @plugin.session_id != @params['session_id'] subject = '' if text.empty? @db.delete( page ) @@ -521,7 +522,7 @@ data[:title] = title( @conf.msg_admin ) data[:session_id] =****@plugi*****_id if @params['saveconf'] - raise SessionError if****@plugi*****_id && @plugin.session_id != @cgi['session_id'] + raise SessionError if****@plugi*****_id && @plugin.session_id != @params['session_id'] data[:save_config] = true end generate_page( data ) @@ -567,7 +568,7 @@ end def cmd_logout - if session_id =****@cgi*****['session_id'][0] + if session_id = @cookies['session_id'] cookies = [session_cookie(session_id, -1)] Hiki::Session.new( @conf, session_id ).delete end Modified: hiki/branches/rack/hiki/page.rb =================================================================== --- hiki/branches/rack/hiki/page.rb 2009-08-23 15:02:16 UTC (rev 998) +++ hiki/branches/rack/hiki/page.rb 2009-08-23 15:02:19 UTC (rev 999) @@ -52,7 +52,16 @@ def out( headers = nil ) @headers.update( headers ) if headers - return Hiki::Response.new(@body, 200, @headers) + response = Hiki::Response.new(@body, 200, @headers) + if Object.const_defined?(:Rack) + cookies =****@heade*****('cookie') + if cookies + cookies.each do |cookie| + response.set_cookie(cookie.name, cookie.value) + end + end + end + return response end end end