/[mldonkey]/mldonkey/src/daemon/driver/driverControlers.ml
ViewVC logotype

Diff of /mldonkey/src/daemon/driver/driverControlers.ml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.33 by spiralvoice, Sun Jul 10 23:19:16 2005 UTC revision 1.34 by spiralvoice, Thu Jul 14 14:02:28 2005 UTC
# Line 680  let chat_handler t event = Line 680  let chat_handler t event =
680    
681  let buf = Buffer.create 1000  let buf = Buffer.create 1000
682    
683  let html_page = ref true  type http_file =
684      BIN
685    | HTM
686    | MLHTM
687    | TXT
688    | UNK
689    
690    let http_file_type = ref UNK
691    
692  open Http_server  open Http_server
693    
# Line 719  let add_gzip_headers r = Line 726  let add_gzip_headers r =
726    end    end
727    
728  let http_add_html_header r =  let http_add_html_header r =
729      http_file_type := HTM;
730    http_add_gen_header r;    http_add_gen_header r;
731    add_reply_header r "Pragma" "no-cache";    add_reply_header r "Pragma" "no-cache";
732    add_reply_header r "Content-Type" "text/html; charset=UTF-8";    add_reply_header r "Content-Type" "text/html; charset=UTF-8";
733    add_gzip_headers r    add_gzip_headers r
734    
735  let http_add_css_header r =  let http_add_css_header r =
736      http_file_type := TXT;
737    http_add_gen_header r;    http_add_gen_header r;
738    add_reply_header r "Content-Type" "text/css; charset=UTF-8";    add_reply_header r "Content-Type" "text/css; charset=UTF-8";
739    add_gzip_headers r    add_gzip_headers r
740    
741  let http_add_js_header r =  let http_add_js_header r =
742      http_file_type := TXT;
743    http_add_gen_header r;    http_add_gen_header r;
744    add_reply_header  r "Content-Type" "text/javascript; charset=UTF-8";    add_reply_header  r "Content-Type" "text/javascript; charset=UTF-8";
745    add_gzip_headers r    add_gzip_headers r
746    
747  let http_add_png_header r =  let http_add_png_header r clen =
748      http_file_type := BIN;
749    http_add_gen_header r;    http_add_gen_header r;
750    add_reply_header r "Content-Type" "image/png;";    add_reply_header r "Content-Type" "image/png;";
751      add_reply_header r "Accept-Ranges" "bytes";
752      add_reply_header r "Content-Length" (Printf.sprintf "%d" clen);
753    add_gzip_headers r    add_gzip_headers r
754    
755  let http_add_jpg_header r =  let http_add_jpg_header r clen =
756      http_file_type := BIN;
757    http_add_gen_header r;    http_add_gen_header r;
758    add_reply_header r "Content-Type" "image/jpg;";    add_reply_header r "Content-Type" "image/jpg;";
759      add_reply_header r "Accept-Ranges" "bytes";
760      add_reply_header r "Content-Length" (Printf.sprintf "%d" clen);
761    add_gzip_headers r    add_gzip_headers r
762    
763  let any_ip = Ip.of_inet_addr Unix.inet_addr_any  let any_ip = Ip.of_inet_addr Unix.inet_addr_any
764    
765  let html_open_page buf t r open_body =  let html_open_page buf t r open_body =
766    Buffer.clear buf;    Buffer.clear buf;
   html_page := true;  
767    http_add_html_header r;    http_add_html_header r;
768    
769    if not !!html_mods then    if not !!html_mods then
# Line 787  let html_close_page buf = Line 802  let html_close_page buf =
802    
803  let clear_page buf =  let clear_page buf =
804    Buffer.clear buf;    Buffer.clear buf;
805    html_page := false    http_file_type := UNK
806    
807  let http_handler o t r =  let http_handler o t r =
808    CommonInteractive.display_vd := false;    CommonInteractive.display_vd := false;
# Line 897  let http_handler o t r = Line 912  let http_handler o t r =
912          | "/complex_search.html" ->          | "/complex_search.html" ->
913              html_open_page buf t r true;              html_open_page buf t r true;
914              CommonSearch.complex_search buf              CommonSearch.complex_search buf
915          | "/noframe.html" ->          | "/noframe.html" ->
916              html_open_page buf t r true              html_open_page buf t r true
917    
918          | "/oneframe.html" ->          | "/oneframe.html" ->
# Line 907  let http_handler o t r = Line 922  let http_handler o t r =
922          | "/bw_updown.png" ->          | "/bw_updown.png" ->
923              do_draw_pic "Traffic" "s(kb)" "t(h:m:s)" download_history upload_history;              do_draw_pic "Traffic" "s(kb)" "t(h:m:s)" download_history upload_history;
924              (* Buffer.clear buf; *)              (* Buffer.clear buf; *)
             html_page := false;  
             http_add_png_header r;  
925              let showgraph = File.to_string "bw_updown.png" in              let showgraph = File.to_string "bw_updown.png" in
926                let size = String.length showgraph in
927                http_add_png_header r size;
928              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
929    
930          | "/bw_updown.jpg" ->          | "/bw_updown.jpg" ->
931              do_draw_pic "Traffic" "s(kb)" "t(h:m:s)" download_history upload_history;              do_draw_pic "Traffic" "s(kb)" "t(h:m:s)" download_history upload_history;
932              (* Buffer.clear buf;*)              (* Buffer.clear buf;*)
933              html_page := false;              let showgraph = File.to_string_alt "bw_updown.jpg" in
934              http_add_jpg_header r;              let size = Buffer.length showgraph in
935              let showgraph = File.to_string "bw_updown.jpg" in              http_add_jpg_header r size;
936              Buffer.add_string buf showgraph              Buffer.add_buffer buf showgraph
937    
938          | "/bw_download.png" ->          | "/bw_download.png" ->
939              do_draw_down_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_history;              do_draw_down_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_history;
             html_page := false;  
             http_add_png_header r;  
940              let showgraph = File.to_string "bw_download.png" in              let showgraph = File.to_string "bw_download.png" in
941                let size = String.length showgraph in
942                http_add_png_header r size;
943              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
944    
945          | "/bw_download.jpg" ->          | "/bw_download.jpg" ->
946              do_draw_down_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_history;              do_draw_down_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_history;
947              Buffer.clear buf;              Buffer.clear buf;
             html_page := false;  
             http_add_jpg_header r;  
948              let showgraph = File.to_string "bw_download.jpg" in              let showgraph = File.to_string "bw_download.jpg" in
949                let size = String.length showgraph in
950                http_add_jpg_header r size;
951              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
952    
953          | "/bw_upload.png" ->          | "/bw_upload.png" ->
954              do_draw_up_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_history;              do_draw_up_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_history;
             html_page := false;  
             http_add_png_header r;  
955              let showgraph = File.to_string "bw_upload.png" in              let showgraph = File.to_string "bw_upload.png" in
956                let size = String.length showgraph in
957                http_add_png_header r size;
958              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
959    
960          | "/bw_upload.jpg" ->          | "/bw_upload.jpg" ->
961              do_draw_up_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_history;              do_draw_up_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_history;
962              Buffer.clear buf;              Buffer.clear buf;
             html_page := false;  
             http_add_jpg_header r;  
963              let showgraph = File.to_string "bw_upload.jpg" in              let showgraph = File.to_string "bw_upload.jpg" in
964                let size = String.length showgraph in
965                http_add_jpg_header r size;
966              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
967    
968          | "/bw_h_updown.png" ->          | "/bw_h_updown.png" ->
969              do_draw_h_pic "Traffic" "s(kb)" "t(h:m:s)" download_h_history upload_h_history;              do_draw_h_pic "Traffic" "s(kb)" "t(h:m:s)" download_h_history upload_h_history;
970              (* Buffer.clear buf; *)              (* Buffer.clear buf; *)
             html_page := false;  
             http_add_png_header r;  
971              let showgraph = File.to_string "bw_h_updown.png" in              let showgraph = File.to_string "bw_h_updown.png" in
972                let size = String.length showgraph in
973                http_add_png_header r size;
974              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
975            
976          | "/bw_h_updown.jpg" ->          | "/bw_h_updown.jpg" ->
977              do_draw_h_pic "Traffic" "s(kb)" "t(h:m:s)" download_h_history upload_h_history;              do_draw_h_pic "Traffic" "s(kb)" "t(h:m:s)" download_h_history upload_h_history;
978              (* Buffer.clear buf;*)              (* Buffer.clear buf;*)
             html_page := false;  
             http_add_jpg_header r;  
979              let showgraph = File.to_string "bw_h_updown.jpg" in              let showgraph = File.to_string "bw_h_updown.jpg" in
980                let size = String.length showgraph in
981                http_add_jpg_header r size;
982              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
983    
984          | "/bw_h_download.png" ->          | "/bw_h_download.png" ->
985              do_draw_down_h_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_h_history;              do_draw_down_h_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_h_history;
             html_page := false;  
             http_add_png_header r;  
986              let showgraph = File.to_string "bw_h_download.png" in              let showgraph = File.to_string "bw_h_download.png" in
987                let size = String.length showgraph in
988                http_add_png_header r size;
989              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
990    
991          | "/bw_h_download.jpg" ->          | "/bw_h_download.jpg" ->
992              do_draw_down_h_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_h_history;              do_draw_down_h_pic "Traffic" "download" "s(kb)" "t(h:m:s)" download_h_history;
993              Buffer.clear buf;              Buffer.clear buf;
             html_page := false;  
             http_add_jpg_header r;  
994              let showgraph = File.to_string "bw_h_download.jpg" in              let showgraph = File.to_string "bw_h_download.jpg" in
995                let size = String.length showgraph in
996                http_add_jpg_header r size;
997              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
998    
999          | "/bw_h_upload.png" ->          | "/bw_h_upload.png" ->
1000              do_draw_up_h_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_h_history;              do_draw_up_h_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_h_history;
             html_page := false;  
             http_add_png_header r;  
1001              let showgraph = File.to_string "bw_h_upload.png" in              let showgraph = File.to_string "bw_h_upload.png" in
1002                let size = String.length showgraph in
1003                http_add_png_header r size;
1004              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
1005    
1006          | "/bw_h_upload.jpg" ->          | "/bw_h_upload.jpg" ->
1007              do_draw_up_h_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_h_history;              do_draw_up_h_pic "Traffic" "upload" "s(kb)" "t(h:m:s)" upload_h_history;
1008              Buffer.clear buf;              Buffer.clear buf;
             html_page := false;  
             http_add_jpg_header r;  
1009              let showgraph = File.to_string "bw_h_upload.jpg" in              let showgraph = File.to_string "bw_h_upload.jpg" in
1010                let size = String.length showgraph in
1011                http_add_jpg_header r size;
1012              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
1013    
1014    
1015          | "/tag.png" ->          | "/tag.png" ->
1016              do_draw_tag !!html_mods_vd_gfx_tag_title download_history upload_history;              do_draw_tag !!html_mods_vd_gfx_tag_title download_history upload_history;
             html_page := false;  
             http_add_png_header r;  
1017              let showgraph = File.to_string "tag.png" in              let showgraph = File.to_string "tag.png" in
1018                let size = String.length showgraph in
1019                http_add_png_header r size;
1020              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
1021            
1022          | "/tag.jpg" ->          | "/tag.jpg" ->
1023              do_draw_tag !!html_mods_vd_gfx_tag_title download_history upload_history;              do_draw_tag !!html_mods_vd_gfx_tag_title download_history upload_history;
1024              (* Buffer.clear buf;*)              (* Buffer.clear buf;*)
             html_page := false;  
             http_add_jpg_header r;  
1025              let showgraph = File.to_string "tag.jpg" in              let showgraph = File.to_string "tag.jpg" in
1026                let size = String.length showgraph in
1027                http_add_jpg_header r size;
1028              Buffer.add_string buf showgraph              Buffer.add_string buf showgraph
1029    
1030          | "/filter" ->          | "/filter" ->
# Line 1307  let http_handler o t r = Line 1322  let http_handler o t r =
1322            r.reply_stream <- None            r.reply_stream <- None
1323      end;      end;
1324    
1325    if !html_page then  html_close_page buf;    let s =
1326    let s = Buffer.contents buf in      match !http_file_type with
1327    let s = dollar_escape o !!use_html_frames s in        HTM -> html_close_page buf; dollar_escape o !!use_html_frames (Buffer.contents buf)
1328        | MLHTM -> html_close_page buf; dollar_escape o !!use_html_frames (Buffer.contents buf)
1329        | TXT
1330        | BIN -> Buffer.contents buf
1331        | UNK -> "Unknown type for content :" ^ (Buffer.contents buf)
1332      in
1333    r.reply_content <- if Autoconf.has_zlib && !!html_use_gzip then Autoconf.zlib__gzip_string s else s    r.reply_content <- if Autoconf.has_zlib && !!html_use_gzip then Autoconf.zlib__gzip_string s else s
1334    
1335  let http_options = {  let http_options = {

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26