From 3b6cd309ffe9b46013b4658b9e8089851a79e060 Mon Sep 17 00:00:00 2001
From: Jacques Distler
Date: Fri, 11 May 2007 11:47:38 -0500
Subject: [PATCH] Sync with Instiki Trunk Sync with Revision 519 of Instiki
trunk (2007/5/7).
---
app/controllers/admin_controller.rb | 48 +++++++-------
app/controllers/application.rb | 32 ++++-----
app/controllers/file_controller.rb | 12 ++--
app/controllers/wiki_controller.rb | 26 ++++----
app/models/web.rb | 2 +-
app/views/admin/create_system.rhtml | 6 +-
app/views/admin/create_web.rhtml | 6 +-
app/views/admin/edit_web.rhtml | 12 ++--
app/views/file/file.rhtml | 6 +-
app/views/layouts/default.rhtml | 8 +--
app/views/navigation.rhtml | 6 +-
app/views/wiki/edit.rhtml | 6 +-
app/views/wiki/login.rhtml | 6 +-
app/views/wiki/new.rhtml | 6 +-
app/views/wiki/rollback.rhtml | 8 +--
app/views/wiki/search.rhtml | 4 +-
test/functional/admin_controller_test.rb | 4 +-
test/functional/file_controller_test.rb | 26 ++++----
test/functional/routes_test.rb | 6 +-
test/functional/wiki_controller_test.rb | 84 ++++++++++++------------
test/unit/page_renderer_test.rb | 17 +++--
21 files changed, 173 insertions(+), 158 deletions(-)
diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb
index 4390359d..836a9b4f 100644
--- a/app/controllers/admin_controller.rb
+++ b/app/controllers/admin_controller.rb
@@ -13,12 +13,12 @@ class AdminController < ApplicationController
"\n\n" +
"(WARNING: this will destroy content of your current wiki)."
redirect_home(@wiki.webs.keys.first)
- elsif @params['web_name']
+ elsif params['web_name']
# form submitted -> create a wiki
- @wiki.setup(@params['password'], @params['web_name'], @params['web_address'])
- flash[:info] = "Your new wiki '#{@params['web_name']}' is created!\n" +
+ @wiki.setup(params['password'], params['web_name'], params['web_address'])
+ flash[:info] = "Your new wiki '#{params['web_name']}' is created!\n" +
"Please edit its home page and press Submit when finished."
- redirect_to :web => @params['web_address'], :controller => 'wiki', :action => 'new',
+ redirect_to :web => params['web_address'], :controller => 'wiki', :action => 'new',
:id => 'HomePage'
else
# no form submitted -> go to template
@@ -26,13 +26,13 @@ class AdminController < ApplicationController
end
def create_web
- if @params['address']
+ if params['address']
# form submitted
- if @wiki.authenticate(@params['system_password'])
+ if @wiki.authenticate(params['system_password'])
begin
- @wiki.create_web(@params['name'], @params['address'])
- flash[:info] = "New web '#{@params['name']}' successfully created."
- redirect_to :web => @params['address'], :controller => 'wiki', :action => 'new',
+ @wiki.create_web(params['name'], params['address'])
+ flash[:info] = "New web '#{params['name']}' successfully created."
+ redirect_to :web => params['address'], :controller => 'wiki', :action => 'new',
:id => 'HomePage'
rescue Instiki::ValidationError => e
@error = e.message
@@ -47,25 +47,25 @@ class AdminController < ApplicationController
end
def edit_web
- system_password = @params['system_password']
+ system_password = params['system_password']
if system_password
# form submitted
if wiki.authenticate(system_password)
begin
wiki.edit_web(
- @web.address, @params['address'], @params['name'],
- @params['markup'].intern,
- @params['color'], @params['additional_style'],
- @params['safe_mode'] ? true : false,
- @params['password'].empty? ? nil : @params['password'],
- @params['published'] ? true : false,
- @params['brackets_only'] ? true : false,
- @params['count_pages'] ? true : false,
- @params['allow_uploads'] ? true : false,
- @params['max_upload_size']
+ @web.address, params['address'], params['name'],
+ params['markup'].intern,
+ params['color'], params['additional_style'],
+ params['safe_mode'] ? true : false,
+ params['password'].empty? ? nil : params['password'],
+ params['published'] ? true : false,
+ params['brackets_only'] ? true : false,
+ params['count_pages'] ? true : false,
+ params['allow_uploads'] ? true : false,
+ params['max_upload_size']
)
- flash[:info] = "Web '#{@params['address']}' was successfully updated"
- redirect_home(@params['address'])
+ flash[:info] = "Web '#{params['address']}' was successfully updated"
+ redirect_home(params['address'])
rescue Instiki::ValidationError => e
logger.warn e.message
@error = e.message
@@ -81,12 +81,12 @@ class AdminController < ApplicationController
end
def remove_orphaned_pages
- if wiki.authenticate(@params['system_password_orphaned'])
+ if wiki.authenticate(params['system_password_orphaned'])
wiki.remove_orphaned_pages(@web_name)
flash[:info] = 'Orphaned pages removed'
redirect_to :controller => 'wiki', :web => @web_name, :action => 'list'
else
- flash[:error] = password_error(@params['system_password_orphaned'])
+ flash[:error] = password_error(params['system_password_orphaned'])
redirect_to :controller => 'admin', :web => @web_name, :action => 'edit_web'
end
end
diff --git a/app/controllers/application.rb b/app/controllers/application.rb
index 23dd05c2..a44505a1 100644
--- a/app/controllers/application.rb
+++ b/app/controllers/application.rb
@@ -29,8 +29,8 @@ class ApplicationController < ActionController::Base
end
def connect_to_model
- @action_name = @params['action'] || 'index'
- @web_name = @params['web']
+ @action_name = params['action'] || 'index'
+ @web_name = params['web']
@wiki = wiki
@author = cookies['author'] || 'AnonymousCoward'
if @web_name
@@ -106,11 +106,11 @@ class ApplicationController < ActionController::Base
end
def remember_location
- if @request.method == :get and
- @response.headers['Status'] == '200 OK' and not
+ if request.method == :get and
+ response.headers['Status'] == '200 OK' and not
%w(locked save back file pic import).include?(action_name)
- @session[:return_to] = @request.request_uri
- logger.debug "Session ##{session.object_id}: remembered URL '#{@session[:return_to]}'"
+ session[:return_to] = request.request_uri
+ logger.debug "Session ##{session.object_id}: remembered URL '#{session[:return_to]}'"
end
end
@@ -126,8 +126,8 @@ class ApplicationController < ActionController::Base
def return_to_last_remembered
# Forget the redirect location
- redirect_target, @session[:return_to] = @session[:return_to], nil
- tried_home, @session[:tried_home] = @session[:tried_home], false
+ redirect_target, session[:return_to] = session[:return_to], nil
+ tried_home, session[:tried_home] = session[:tried_home], false
# then try to redirect to it
if redirect_target.nil?
@@ -146,15 +146,15 @@ class ApplicationController < ActionController::Base
def set_content_type_header
if %w(atom_with_content atom_with_headlines).include?(action_name)
- @response.headers['Content-Type'] = 'application/atom+xml; charset=UTF-8'
+ response.headers['Content-Type'] = 'application/atom+xml; charset=UTF-8'
elsif %w(tex).include?(action_name)
- @response.headers['Content-Type'] = 'text/plain; charset=UTF-8'
- elsif @request.env['HTTP_USER_AGENT'] =~ /MathPlayer|Validator/ or @request.env.include?('HTTP_ACCEPT') &&
- Mime::Type.parse(@request.env["HTTP_ACCEPT"]).include?(Mime::XHTML) &&
- !(@request.env['HTTP_USER_AGENT'] =~ /Safari/ and %w(s5).include?(action_name))
- @response.headers['Content-Type'] = 'application/xhtml+xml; charset=UTF-8'
+ response.headers['Content-Type'] = 'text/plain; charset=UTF-8'
+ elsif request.env['HTTP_USER_AGENT'] =~ /MathPlayer|Validator/ or request.env.include?('HTTP_ACCEPT') &&
+ Mime::Type.parse(request.env["HTTP_ACCEPT"]).include?(Mime::XHTML) &&
+ !(request.env['HTTP_USER_AGENT'] =~ /Safari/ and %w(s5).include?(action_name))
+ response.headers['Content-Type'] = 'application/xhtml+xml; charset=UTF-8'
else
- @response.headers['Content-Type'] = 'text/html; charset=UTF-8'
+ response.headers['Content-Type'] = 'text/html; charset=UTF-8'
end
end
@@ -192,7 +192,7 @@ class ApplicationController < ActionController::Base
@web.nil? or
@web.password.nil? or
cookies[CGI.escape(@web_name)] == @web.password or
- password_check(@params['password']) or
+ password_check(params['password']) or
(@web.published? and action_name == 's5')
end
diff --git a/app/controllers/file_controller.rb b/app/controllers/file_controller.rb
index 8dc9b5b6..499c0a2d 100644
--- a/app/controllers/file_controller.rb
+++ b/app/controllers/file_controller.rb
@@ -10,10 +10,10 @@ class FileController < ApplicationController
before_filter :check_allow_uploads
def file
- @file_name = @params['id']
- if @params['file']
+ @file_name = params['id']
+ if params['file']
# form supplied
- new_file = @web.wiki_files.create(@params['file'])
+ new_file = @web.wiki_files.create(params['file'])
if new_file.valid?
flash[:info] = "File '#{@file_name}' successfully uploaded"
return_to_last_remembered
@@ -39,10 +39,10 @@ class FileController < ApplicationController
end
def import
- if @params['file']
+ if params['file']
@problems = []
import_file_name = "#{@web.address}-import-#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}.zip"
- import_from_archive(@params['file'].path)
+ import_from_archive(params['file'].path)
if @problems.empty?
flash[:info] = 'Import successfully finished'
else
@@ -58,7 +58,7 @@ class FileController < ApplicationController
protected
def check_allow_uploads
- render(:status => 404, :text => "Web #{@params['web'].inspect} not found") and return false unless @web
+ render(:status => 404, :text => "Web #{params['web'].inspect} not found") and return false unless @web
if @web.allow_uploads?
return true
else
diff --git a/app/controllers/wiki_controller.rb b/app/controllers/wiki_controller.rb
index 81e711d0..35cb5531 100644
--- a/app/controllers/wiki_controller.rb
+++ b/app/controllers/wiki_controller.rb
@@ -30,10 +30,10 @@ class WikiController < ApplicationController
# Outside a single web --------------------------------------------------------
def authenticate
- if password_check(@params['password'])
+ if password_check(params['password'])
redirect_home
else
- flash[:info] = password_error(@params['password'])
+ flash[:info] = password_error(params['password'])
redirect_to :action => 'login', :web => @web_name
end
end
@@ -146,7 +146,7 @@ class WikiController < ApplicationController
end
def search
- @query = @params['query']
+ @query = params['query']
@title_results = @web.select { |page| page.name =~ /#{@query}/i }.sort
@results = @web.select { |page| page.content =~ /#{@query}/i }.sort
all_pages_found = (@results + @title_results).uniq
@@ -165,7 +165,7 @@ class WikiController < ApplicationController
def edit
if @page.nil?
redirect_home
- elsif @page.locked?(Time.now) and not @params['break_lock']
+ elsif @page.locked?(Time.now) and not params['break_lock']
redirect_to :web => @web_name, :action => 'locked', :id => @page_name
else
@page.lock(Time.now, @author)
@@ -216,7 +216,7 @@ class WikiController < ApplicationController
def revision
get_page_and_revision
- @show_diff = (@params[:mode] == 'diff')
+ @show_diff = (params[:mode] == 'diff')
@renderer = PageRenderer.new(@revision)
end
@@ -227,13 +227,13 @@ class WikiController < ApplicationController
def save
render(:status => 404, :text => 'Undefined page name') and return if @page_name.nil?
- author_name = @params['author'].delete("\x01-\x08\x0B\x0C\x0E-\x1F")
+ author_name = params['author'].delete("\x01-\x08\x0B\x0C\x0E-\x1F")
author_name = 'AnonymousCoward' if author_name =~ /^\s*$/
raise "Your name was not valid utf-8" if !author_name.is_utf8?
cookies['author'] = { :value => author_name, :expires => Time.utc(2030) }
begin
- the_content = @params['content'].delete("\x01-\x08\x0B\x0C\x0E-\x1F")
+ the_content = params['content'].delete("\x01-\x08\x0B\x0C\x0E-\x1F")
raise "Your content was not valid utf-8" if !the_content.is_utf8?
filter_spam(the_content)
if @page
@@ -262,7 +262,7 @@ class WikiController < ApplicationController
if @page
begin
@renderer = PageRenderer.new(@page.revisions.last)
- @show_diff = (@params[:mode] == 'diff')
+ @show_diff = (params[:mode] == 'diff')
render_action 'page'
# TODO this rescue should differentiate between errors due to rendering and errors in
# the application itself (for application errors, it's better not to rescue the error at all)
@@ -309,7 +309,7 @@ class WikiController < ApplicationController
protected
def load_page
- @page_name = @params['id']
+ @page_name = params['id']
@page = @wiki.read_page(@web_name, @page_name) if @page_name
end
@@ -371,8 +371,8 @@ class WikiController < ApplicationController
end
def get_page_and_revision
- if @params['rev']
- @revision_number = @params['rev'].to_i
+ if params['rev']
+ @revision_number = params['rev'].to_i
else
@revision_number = @page.revisions.length
end
@@ -381,7 +381,7 @@ class WikiController < ApplicationController
def parse_category
@categories = WikiReference.list_categories(@web).sort
- @category = @params['category']
+ @category = params['category']
if @category
@set_name = "category '#{@category}'"
pages = WikiReference.pages_in_category(@web, @category).sort.map { |page_name| @web.page(page_name) }
@@ -394,7 +394,7 @@ class WikiController < ApplicationController
end
def remote_ip
- ip = @request.remote_ip
+ ip = request.remote_ip
logger.info(ip)
ip
end
diff --git a/app/models/web.rb b/app/models/web.rb
index 2c72896d..59129120 100644
--- a/app/models/web.rb
+++ b/app/models/web.rb
@@ -40,7 +40,7 @@ class Web < ActiveRecord::Base
end
def has_page?(name)
- Page.count(['web_id = ? AND name = ?', id, name]) > 0
+ Page.count(:conditions => ['web_id = ? AND name = ?', id, name]) > 0
end
def has_file?(file_name)
diff --git a/app/views/admin/create_system.rhtml b/app/views/admin/create_system.rhtml
index 9196b181..40743c83 100644
--- a/app/views/admin/create_system.rhtml
+++ b/app/views/admin/create_system.rhtml
@@ -6,9 +6,9 @@
you'll need to do a brief one-time setup.
-<%= form_tag({ :controller => 'admin', :action => 'create_system' },
+<% form_tag({ :controller => 'admin', :action => 'create_system' },
{ 'id' => 'setup', 'method' => 'post', 'onsubmit' => 'return validateSetup()',
- 'accept-charset' => 'utf-8' })
+ 'accept-charset' => 'utf-8' }) do
%>
-
@@ -46,7 +46,7 @@
-<%= end_form_tag %>
+<% end %>