From 09cfb5635cf85bc01e7f3ba385933a99e3d756a7 Mon Sep 17 00:00:00 2001 From: Alexey Verkhovsky Date: Sat, 5 Feb 2005 13:04:55 +0000 Subject: [PATCH] merged edit_web and update_web into one action --- app/controllers/admin_controller.rb | 44 ++++++++++++++---------- app/models/wiki_service.rb | 2 +- app/views/admin/edit_web.rhtml | 4 +-- app/views/wiki/page.rhtml | 2 +- libraries/url_rewriting_hack.rb | 1 - test/functional/admin_controller_test.rb | 8 ++--- 6 files changed, 33 insertions(+), 28 deletions(-) diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index 61b3ec9e..7873b0bd 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb @@ -44,26 +44,32 @@ class AdminController < ApplicationController end def edit_web - # to template - end - - def update_web - if wiki.authenticate(@params['system_password']) - wiki.update_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'] - ) - redirect_show('HomePage', @params['address']) + if @params['system_password'] + # form submitted + if wiki.authenticate(@params['system_password']) + 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'] + ) + redirect_show('HomePage', @params['address']) + else + if @params['system_password'].empty? + flash[:error] = 'Please enter the system password' + else + flash[:error] = 'You entered a wrong system password. Please enter the right one' + end + # and re-render the same template again + end else - redirect_show('HomePage') + # no form submitted - go to template end end diff --git a/app/models/wiki_service.rb b/app/models/wiki_service.rb index e8966988..c68fd0ff 100644 --- a/app/models/wiki_service.rb +++ b/app/models/wiki_service.rb @@ -74,7 +74,7 @@ module AbstractWikiService not (@webs.empty?) end - def update_web(old_address, new_address, name, markup, color, additional_style, safe_mode = false, + def edit_web(old_address, new_address, name, markup, color, additional_style, safe_mode = false, password = nil, published = false, brackets_only = false, count_pages = false, allow_uploads = true, max_upload_size = nil) if old_address != new_address diff --git a/app/views/admin/edit_web.rhtml b/app/views/admin/edit_web.rhtml index e752b607..86382a18 100644 --- a/app/views/admin/edit_web.rhtml +++ b/app/views/admin/edit_web.rhtml @@ -1,6 +1,6 @@ <% @title = "Edit Web" %> -
+

Name and address

The name of the web is included in the title on all pages. @@ -109,7 +109,7 @@

Other administrative tasks

- +

Clean up by entering system password diff --git a/app/views/wiki/page.rhtml b/app/views/wiki/page.rhtml index 3212bb4a..b8cb46f8 100644 --- a/app/views/wiki/page.rhtml +++ b/app/views/wiki/page.rhtml @@ -28,7 +28,7 @@