def server_setup(control, server, loader, doc_factory, pw_enc, page_path)
page_maker = WebPageMakerDocument.new(WPM::XMLAssistByREXML, page_path, 'ControlPanel')
page_maker.debug = true
page_maker.set_page_option(:control, control)
page_maker.set_page_option(:factory, doc_factory)
page_maker.set_page_option(:pw_enc, pw_enc)
page_maker.set_page_option(:base_dir, File.dirname($0))
if (@params['japanese_handling']) then
require 'rucy/jconv'
page_maker.set_input_filter{|data| Jconv.jconv(data) }
page_maker.set_output_filter{|data| Uconv.u8toeuc(data) }
page_maker.charset = 'euc-jp'
end
server.mount(page_maker, '/control')
if (@params['localhost_only']) then
access = loader.RemoteAddressAllowAccessFilter.new
access.add_allow_address('127.0.0.1')
server.attach(access, '/control')
end
if (@params['admin_user'] && ! @params['admin_user'].empty? &&
@params['admin_password'] && ! @params['admin_password'].empty?)
then
passwd = PasswordVerifier.new(pw_enc)
passwd.add_encrypted_user(@params['admin_user'], @params['admin_password'])
auth = loader.BasicAuthFilter.new(passwd, "Administrator's password")
server.attach(auth, '/control')
end
nil
end