Class: Wiki2Go::Servlet
- Inherits:
-
Object
- Object
- Wiki2Go::Servlet
- Defined in:
- lib/Wiki2Go/Wiki2GoServlet.rb
Constant Summary collapse
- USER_COOKIE =
'Wiki2Go_user'
Instance Method Summary collapse
- #execute(request, response) ⇒ Object
-
#initialize(config) ⇒ Servlet
constructor
A new instance of Servlet.
- #perform_admin(req, res, wikiweb) ⇒ Object
- #perform_changes(req, res, wikiweb) ⇒ Object
- #perform_edit(req, res, wikiweb) ⇒ Object
- #perform_generate_static(req, res, wikiweb) ⇒ Object
- #perform_log_rss(req, res, wikiweb) ⇒ Object
- #perform_perform(req, res, wikiweb) ⇒ Object
- #perform_redirect(req, res, wikiweb) ⇒ Object
- #perform_removespam(req, res, wikiweb) ⇒ Object
- #perform_save(req, res, wikiweb) ⇒ Object
- #perform_search(req, res, wikiweb) ⇒ Object
- #perform_upload(req, res, wikiweb) ⇒ Object
- #perform_versions(req, res, wikiweb) ⇒ Object
- #perform_view(req, res, wikiweb) ⇒ Object
Constructor Details
#initialize(config) ⇒ Servlet
Returns a new instance of Servlet.
13 14 15 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 13 def initialize(config) @config = config end |
Instance Method Details
#execute(request, response) ⇒ Object
17 18 19 20 21 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 17 def execute(request,response) result = false result = execute_command(request,response) result end |
#perform_admin(req, res, wikiweb) ⇒ Object
112 113 114 115 116 117 118 119 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 112 def perform_admin(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) result = wiki.admin(req) res.content_type = "text/html" res.body = result true end |
#perform_changes(req, res, wikiweb) ⇒ Object
67 68 69 70 71 72 73 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 67 def perform_changes(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = "text/html" res.body = wiki.changes(wikiweb) true end |
#perform_edit(req, res, wikiweb) ⇒ Object
93 94 95 96 97 98 99 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 93 def perform_edit(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = "text/html" res.body = wiki.edit(wikiweb) true end |
#perform_generate_static(req, res, wikiweb) ⇒ Object
136 137 138 139 140 141 142 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 136 def perform_generate_static(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = "text/html" res.body = wiki.generate_html(wikiweb) true end |
#perform_log_rss(req, res, wikiweb) ⇒ Object
165 166 167 168 169 170 171 172 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 165 def perform_log_rss(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) errorlog = IO::readlines(@config.logfile) res.content_type = "text/xml" res.body = wiki.generate_rss_from_log(wikiweb,errorlog) true end |
#perform_perform(req, res, wikiweb) ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 35 def perform_perform(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = 'text/html' res.body = wiki.perform(wikiweb,req) true end |
#perform_redirect(req, res, wikiweb) ⇒ Object
101 102 103 104 105 106 107 108 109 110 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 101 def perform_redirect(req,res,wikiweb) redirect_to = req.parameter('url') wiki = Wiki2Go::Wiki.new(@config) res.redirect_to = redirect_to res.content_type = "text/html" res.body = "Redirect to #{redirect_to}" true end |
#perform_removespam(req, res, wikiweb) ⇒ Object
121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 121 def perform_removespam(req,res,wikiweb) user = req.parameter('user') wiki = Wiki2Go::Wiki.new(@config) if !user.nil? && !user.empty? then wiki.blacklist(user) end res.content_type = "text/html" res.body = wiki.remove_spam(wikiweb) true end |
#perform_save(req, res, wikiweb) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 43 def perform_save(req,res,wikiweb) content = req.parameter('text','') name = req.parameter('title',wikiweb.current_page) = req.parameter('author') remember_me = req.parameter('remember_me') if !.nil? && .length > 0 then # !wikiweb.secure && wikiweb.alias = timeout = Time.now + 7 * 24 * 3600 res.(USER_COOKIE,,nil,'/',timeout) unless remember_me.nil? end wiki = Wiki2Go::Wiki.new(@config) wikiweb.title = name redirect_to = wiki.save(wikiweb,content) res.redirect_to = redirect_to res.content_type = "text/html" res.body = "Redirect to #{redirect_to}" true end |
#perform_search(req, res, wikiweb) ⇒ Object
75 76 77 78 79 80 81 82 83 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 75 def perform_search(req,res,wikiweb) topic = req.parameter('text') wiki = Wiki2Go::Wiki.new(@config) res.content_type = "text/html" res.body = wiki.search(wikiweb,topic) true end |
#perform_upload(req, res, wikiweb) ⇒ Object
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 144 def perform_upload(req,res,wikiweb) uploaded_file = req.uploaded_file('FILE') wiki = Wiki2Go::Wiki.new(@config) filename = uploaded_file.filename if filename =~ /\\/ then filename = filename.split('\\').pop end if filename =~ /\// then filename = filename.split('/').pop end redirect_to = wiki.upload(wikiweb,filename,uploaded_file.content) res.redirect_to = redirect_to res.content_type = "text/html" res.body = "Redirect to #{redirect_to}" true end |
#perform_versions(req, res, wikiweb) ⇒ Object
85 86 87 88 89 90 91 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 85 def perform_versions(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = "text/html" res.body = wiki.versions(wikiweb) true end |
#perform_view(req, res, wikiweb) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/Wiki2Go/Wiki2GoServlet.rb', line 23 def perform_view(req,res,wikiweb) wiki = Wiki2Go::Wiki.new(@config) res.content_type = 'text/html' if @config.allow_dynamic_pages && wikiweb.current_page =~ /\.rbl$/i then res.body = wiki.perform(wikiweb,req) else res.body = wiki.view(wikiweb) end true end |