From: Wilmer Ricciotti
Date: Thu, 23 Jun 2011 14:03:05 +0000 (+0000)
Subject: Added matitaweb administration panel.
X-Git-Tag: make_still_working~2395
X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=commitdiff_plain;h=5952e8ed7a1deffe8766f4ffb4cd6f97ba803d06;p=helm.git
Added matitaweb administration panel.
---
diff --git a/matitaB/matita/admin.html b/matitaB/matita/admin.html
new file mode 100644
index 000000000..a10a4a5d9
--- /dev/null
+++ b/matitaB/matita/admin.html
@@ -0,0 +1,13 @@
+
+
+
+
+ Matitaweb Administration Panel
+
+
+
+
+
diff --git a/matitaB/matita/matitaAuthentication.ml b/matitaB/matita/matitaAuthentication.ml
index ad6bec47d..a183bc420 100644
--- a/matitaB/matita/matitaAuthentication.ml
+++ b/matitaB/matita/matitaAuthentication.ml
@@ -120,3 +120,10 @@ let add_user uid pw =
user_tbl := (uid,(pw,None))::!user_tbl;
serialize ()
;;
+
+let reset () =
+ user_tbl := [];
+ session_tbl := [];
+ MatitaFilesystem.reset_lib ();
+ serialize ();
+;;
diff --git a/matitaB/matita/matitaAuthentication.mli b/matitaB/matita/matitaAuthentication.mli
index e47df783c..41f0304af 100644
--- a/matitaB/matita/matitaAuthentication.mli
+++ b/matitaB/matita/matitaAuthentication.mli
@@ -52,3 +52,5 @@ val serialize : unit -> unit
val deserialize : unit -> unit
val add_user : string -> string -> unit
+
+val reset : unit -> unit
diff --git a/matitaB/matita/matitaFilesystem.ml b/matitaB/matita/matitaFilesystem.ml
index 4abdf6c28..aef55c3b6 100644
--- a/matitaB/matita/matitaFilesystem.ml
+++ b/matitaB/matita/matitaFilesystem.ml
@@ -108,3 +108,8 @@ let html_of_library uid =
prerr_endline "BEGIN TREE";prerr_endline res;prerr_endline "END TREE";
res
;;
+
+let reset_lib () =
+ let to_be_removed = (Helm_registry.get "matita.rt_base_dir") ^ "/users/*" in
+ Sys.command ("rm -rf " ^ to_be_removed)
+;;
diff --git a/matitaB/matita/matitaFilesystem.mli b/matitaB/matita/matitaFilesystem.mli
index e04500e28..275ebff5b 100644
--- a/matitaB/matita/matitaFilesystem.mli
+++ b/matitaB/matita/matitaFilesystem.mli
@@ -3,3 +3,5 @@ exception SvnError of string;;
val checkout : string -> unit
val html_of_library : string -> string
+
+val reset_lib : unit -> unit
diff --git a/matitaB/matita/matitadaemon.ml b/matitaB/matita/matitadaemon.ml
index 92b1ce45c..c1bcab0d7 100644
--- a/matitaB/matita/matitadaemon.ml
+++ b/matitaB/matita/matitadaemon.ml
@@ -431,6 +431,20 @@ let viewLib (cgi : Netcgi1_compat.Netcgi_types.cgi_activation) =
;;
+let resetLib (cgi : Netcgi1_compat.Netcgi_types.cgi_activation) =
+ let cgi = Netcgi1_compat.Netcgi_types.of_compat_activation cgi in
+ MatitaAuthentication.reset ();
+ cgi # set_header
+ ~cache:`No_cache
+ ~content_type:"text/html; charset=\"utf-8\""
+ ();
+
+ cgi#out_channel#output_string
+ ("\n" ^
+ "Matitaweb Reset\n" ^
+ "Reset completed
");
+ cgi#out_channel#commit_work()
+
open Netcgi1_compat.Netcgi_types;;
(**********************************************************************)