note description: "[ Administrate cache functionality. ]" date: "$Date$" revision: "$Revision$" class CMS_ADMIN_CACHE_HANDLER inherit CMS_HANDLER WSF_URI_HANDLER rename new_mapping as new_uri_mapping end WSF_RESOURCE_HANDLER_HELPER redefine do_get, do_post end REFACTORING_HELPER create make feature -- Execution execute (req: WSF_REQUEST; res: WSF_RESPONSE) -- Execute request handler do execute_methods (req, res) end do_get (req: WSF_REQUEST; res: WSF_RESPONSE) local l_response: CMS_RESPONSE s: STRING f: CMS_FORM do create {GENERIC_VIEW_CMS_RESPONSE} l_response.make (req, res, api) f := clear_cache_web_form (l_response) create s.make_empty f.append_to_html (create {CMS_TO_WSF_THEME}.make (l_response, l_response.theme), s) l_response.set_main_content (s) l_response.execute end do_post (req: WSF_REQUEST; res: WSF_RESPONSE) local l_response: CMS_RESPONSE s: STRING f: CMS_FORM do create {GENERIC_VIEW_CMS_RESPONSE} l_response.make (req, res, api) f := clear_cache_web_form (l_response) f.process (l_response) if attached f.last_data as fd and then fd.is_valid then if attached fd.string_item ("op") as l_op and then l_op.same_string (text_clear_all_caches) then l_response.hooks.invoke_clear_cache (Void, l_response) l_response.add_notice_message ("Caches cleared (if allowed)!") else fd.report_error ("Invalid form data!") end end create s.make_empty f.append_to_html (create {CMS_TO_WSF_THEME}.make (l_response, l_response.theme), s) l_response.set_main_content (s) l_response.execute end feature -- Widget clear_cache_web_form (a_response: CMS_RESPONSE): CMS_FORM local but: WSF_FORM_SUBMIT_INPUT do create Result.make (a_response.url (a_response.location, Void), "form_clear_cache") create but.make_with_text ("op", text_clear_all_caches) Result.extend (but) end feature -- Interface text. text_clear_all_caches: STRING_32 = "Clear all caches" end