Changeset fcb3fa507d5b857295aaf9bbbc9a4b079e494224
- Timestamp:
- 03/20/09 02:13:11 (4 years ago)
- git-parent:
- Files:
-
- ui/web/htdocs/graph_panel.inc (modified) (1 diff)
- ui/web/htdocs/hugeness.php (deleted)
- ui/web/htdocs/index.php (modified) (3 diffs)
- ui/web/htdocs/js/recon.js (modified) (6 diffs)
- ui/web/htdocs/js/reconui.js (added)
- ui/web/htdocs/search_saved_graphs.inc (modified) (1 diff)
- ui/web/htdocs/search_simple.inc (modified) (1 diff)
- ui/web/htdocs/thumb.inc (deleted)
- ui/web/htdocs/worksheet_panel.inc (modified) (2 diffs)
- ui/web/htdocs/ws_search_graphs.inc (modified) (1 diff)
- ui/web/htdocs/ws_search_simple.inc (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
ui/web/htdocs/graph_panel.inc
r462702b rfcb3fa5 1 <script type="text/javascript" src="js/eye/datepicker.js"></script>2 <script type="text/javascript" src="js/eye/colorpicker.js"></script>3 <script type="text/javascript" src="js/eye/eye.js"></script>4 <script type="text/javascript" src="js/eye/utils.js"></script>5 <script type="text/javascript" src="js/jquery.timers.js"></script>6 <script type="text/javascript" src="js/jquery.ajaxq-0.0.1.js" ></script>7 1 <script type="text/javascript"> 8 2 <!-- ui/web/htdocs/index.php
r48908b9 rfcb3fa5 19 19 <script src="js/jquery.treeview.js" type="text/javascript"></script> 20 20 <script src="js/jquery.treeview.async.js" type="text/javascript"></script> 21 <script src="js/eye/datepicker.js" type="text/javascript"></script> 22 <script src="js/eye/eye.js" type="text/javascript"></script> 23 <script src="js/eye/utils.js" type="text/javascript"></script> 24 <script src="js/jquery.timers.js" type="text/javascript"></script> 25 <script src="js/jquery.ajaxq-0.0.1.js" type="text/javascript"></script> 26 <script src="js/eye/datepicker.js" type="text/javascript"></script> 27 <script src="js/eye/colorpicker.js" type="text/javascript"></script> 28 <script src="js/eye/eye.js" type="text/javascript"></script> 29 <script src="js/eye/utils.js" type="text/javascript"></script> 30 <script src="js/jquery.timers.js" type="text/javascript"></script> 31 <script src="js/jquery.ajaxq-0.0.1.js" type="text/javascript"></script> 21 32 <script src="js/recon.js" type="text/javascript"></script> 22 33 … … 38 49 <![endif]--> 39 50 40 <!--accordion-->41 <script type="text/javascript">42 $(document).ready(function(){43 $(".accordion h3:first").addClass("active");44 $(".accordion span").slideUp();45 $(".accordion span:first").slideDown();46 47 $("div#content > div:first").siblings().slideUp();48 49 $(".accordion h3").click(function(){50 $(this).next("span").slideToggle("normal")51 .siblings("span:visible").slideUp("normal");52 $(this).toggleClass("active");53 $(this).siblings("h3").removeClass("active");54 $(this).siblings("h3").each(function(e) {55 $("#" + $(this).attr("id") + "_panel").slideUp("fast");56 });57 if($(this).hasClass("active"))58 $("#" + $(this).attr("id") + "_panel").slideDown("fast");59 else60 $("#" + $(this).attr("id") + "_panel").slideUp("fast");61 });62 63 });64 </script>65 66 <script type="text/javascript">67 jQuery(document).ready(function(){68 $("#targets").treeview({69 url: "json/ds/remote_address/target/name/metric_name",70 params: {} // will become hash, indexed by id, of url params71 })72 });73 </script>74 75 <script type="text/javascript">76 jQuery(document).ready(function(){77 $("#templates").treeview({78 url: "json/templates/templateid/targetname/sid",79 params: {}80 })81 });82 </script>83 84 <!-- search tabs -->85 <script type="text/javascript">86 $(function () {87 var tabContainers = $('div.tabs > div');88 tabContainers.hide().filter(':first').show();89 90 $('div.tabs ul.tabNavigation a').click(function () {91 tabContainers.hide();92 tabContainers.filter(this.hash).show();93 $('div.tabs ul.tabNavigation a').removeClass('selected');94 $(this).addClass('selected');95 return false;96 }).filter(':first').click();97 98 var wstabContainers = $('div.ws-tabs > div');99 wstabContainers.hide().filter(':first').show();100 101 $('div.ws-tabs ul.tabNavigation a').click(function () {102 wstabContainers.hide();103 wstabContainers.filter(this.hash).show();104 $('div.ws-tabs ul.tabNavigation a').removeClass('selected');105 $(this).addClass('selected');106 return false;107 }).filter(':first').click();108 });109 </script>110 111 <!-- math box -->112 51 </head> 113 52 … … 138 77 </div><!-- end content --> 139 78 </div><!-- end container --> 79 <script src="js/reconui.js" type="text/javascript"></script> 140 80 </body> 141 81 </html> ui/web/htdocs/js/recon.js
r597eebf rfcb3fa5 62 62 s.unshift(Math.log(s.shift())); break; 63 63 case 'round': 64 r = s.shift();64 r = Math.pow(10,s.shift()); 65 65 l = s.shift(); 66 s.unshift(Math.round( l, r));66 s.unshift(Math.round(r * l)/r); 67 67 break; 68 68 case 'floor': … … 116 116 case 1000000000: meta.suffix = 'G'; break; 117 117 case 1000000000000: meta.suffix = 'T'; break; 118 default: meta.suffi c= null; break;118 default: meta.suffix = null; break; 119 119 } 120 120 s.unshift( s.shift() / units ); … … 374 374 if(items && items.length) { 375 375 // Emulate opacity on white 376 if(! $("div.tooltip")[0]) 376 if(! $("div.tooltip")[0]) { 377 377 $('<div class="tooltip"></div>').appendTo($('body')); 378 $("div.tooltip") 379 .hover(function() {}, 380 function() { $("div.tooltip").remove(); }); 381 } 378 382 $("div.tooltip") 379 383 .css( { top: items[0].pageY - 15, … … 392 396 .join(',') + 393 397 ')'; 398 var val = items[i].datapoint[1]; 399 if(items[i].series.dataManip) { 400 var meta = { _max: val }; 401 val = items[i].series.dataManip(val, meta); 402 if(meta.suffix) val = val + meta.suffix; 403 } 394 404 var tt = $('<div><div/>') 395 .html((items[i].datapoint[2] ? items[i].datapoint[2] : items[i].datapoint[1]) + " (" + items[i].series.label + ")")405 .html((items[i].datapoint[2] ? items[i].datapoint[2] : val) + " (" + items[i].series.label + ")") 396 406 .css( { backgroundColor: soft }); 397 407 tt.appendTo($("div.tooltip")); … … 467 477 } 468 478 function ws_search_summary(r) { 479 if(r.count > 0 && r.query == '') return ''; 469 480 return r.count + ' worksheet' + (r.count == 1 ? '' : 's' ) + ' found for \'' + htmlentities(r.query) + '\''; 470 481 } 471 482 function graph_search_summary(r) { 483 if(r.count > 0 && r.query == '') return ''; 472 484 return r.count + ' graph' + (r.count == 1 ? '' : 's' ) + ' found for \'' + htmlentities(r.query) + '\''; 473 485 } 474 486 function datapoint_search_summary(r) { 487 if(r.count > 0 && r.query == '') return ''; 475 488 return 'Found ' + r.count + ' data point' + (r.count == 1 ? '' : 's' ) + ' found for \'' + htmlentities(r.query) + '\''; 476 489 } … … 639 652 li.append(a); 640 653 } 654 655 /////////////////////////// 656 // Worksheet manipulation 657 ////////////////////////// 658 659 var ws_displayinfo = { start : 14*86400, cnt: '100', end: '' }; 660 var wsinfo = {}; 661 var locked = true; 662 var streaming = false; 663 var stream_graph; 664 var time_windows = { '6h' : 3600*6, 665 '12h' : 3600*12, 666 '1d' : 86400*1, 667 '2d' : 86400*2, 668 '1w' : 86400*7, 669 '2w' : 86400*14, 670 '4w' : 86400*28, 671 '1y' : 86400*365, 672 }; 673 674 function ws_locked(warning) { 675 if(locked) { 676 modal_warning("Worksheet Locked!", warning); 677 return locked; 678 } 679 else if($(".rememberWorksheet:visible").length != 0) { 680 modal_warning("Worksheet not saved!", "You must hit 'Remember' to continue editing."); 681 return true; 682 } 683 return locked; 684 } 685 686 function stream_data(graph_id) { 687 688 polltime = 1000; 689 timewindow = 300000; 690 stream_object = stream_graph; 691 stream_dirty = false; 692 stream_graph.ReconGraphPrepareStream(timewindow, polltime); 693 694 695 //setup functionality so that every second check if we are streaming and dirty, plot if true 696 stream_graph.everyTime(1000, function() { 697 if(!streaming) { 698 $('#streambox').html(''); 699 $(".stream-log").attr("style", "display:none;"); 700 stream_graph.stopTime(); 701 } 702 else { 703 if(stream_dirty){ 704 stream_graph.ReconGraphPlotPoints(); 705 stream_dirty=false; 706 } 707 } 708 }); 709 710 $.getJSON("json/graph/info/" + graph_id, 711 function(g) { 712 713 sids = ""; 714 var sidneed = new Object(); 715 716 for(var i=0; i<g.datapoints.length; i++) { 717 if(g.datapoints[i].sid) { 718 sidneed[g.datapoints[i].sid] = polltime; 719 } 720 } 721 for(var sid in sidneed) { 722 sids+= "/"+sid+"@"+sidneed[sid]; 723 } 724 725 //console.log("sids requestd from noit server = ", sids); 726 $('#streambox').html('<iframe src="http://bob.office.omniti.com/data'+sids+'"></iframe>'); 727 }); 728 } 729 730 function make_ws_graph(g) { 731 var o = $('<div></div>').ReconGraph(g); 732 733 zb = $("<li class='zoomGraph' id='Zoom-"+g.graphid+"'><img src='images/zoom_icon.png'></li>"); 734 zb.attr("graphid", g.graphid); 735 zb.attr("graphtype", g.type); 736 zb.click(function() { zoom_modal($(this).attr("graphid"), $(this).attr("graphtype")); }); 737 mb = $("<li class='moveGraph' id='Move-"+g.graphid+"'><img src='images/drag_icon.png'></li>"); 738 rb = $("<li class='deleteWorksheetGraph' id='Remove-"+g.graphid+"'><img src='images/remove_icon.png'></li>"); 739 rb.attr("graphid", g.graphid); 740 rb.click( function() { 741 $.getJSON('json/worksheet/deletegraph/' + wsinfo.id + '/' + $(this).attr("graphid"), 742 function(r) { if(r.error) { $("#ws-tool-error").html(r.error).fadeIn('fast'); } }); 743 $("#"+$(this).attr("graphid")).remove(); 744 }); 745 746 var ws_tbar = $('<div class="ws-toolbar"></div>').append("<ul/>").append(zb).append(mb).append(rb); 747 748 ws_tbar.attr("style", "display:none;"); 749 750 o.prepend(ws_tbar); 751 o.mouseover( 752 function() { 753 o.attr("style", "outline: 1px solid #DDDDDD;"); 754 ws_tbar.removeAttr("style"); 755 }); 756 o.mouseout( 757 function() { 758 o.removeAttr("style"); 759 ws_tbar.attr("style", "display:none;"); 760 }); 761 762 return o; 763 } 764 765 function zoom_modal (id, gtype) { 766 stream_graph = $('<div></div>').ReconGraph({graphid: id, type: gtype}); 767 var smod = stream_graph.modal({ 768 containerId: 'StreamingModalContainer', 769 close: 'true', 770 overlayCss: { 771 backgroundColor: '#000000', 772 cursor: 'wait' 773 }, 774 containerCss: { 775 backgroundColor: '#FFFFFF', 776 left: '30%', 777 top: '10%', 778 border: '2px solid #000000', 779 padding: '5px' 780 }, 781 }); 782 stream_graph.ReconGraphRefresh({graphid: id}); 783 784 785 var dtool = $("<div id='mini_ws_datetool'>"); 786 dtool.append('<div class="zoom"> \ 787 <dl> \ 788 <dt>Zoom:</dt> \ 789 <dd><a href="#" class="first datechoice">1d</a></dd> \ 790 <dd><a href="#" class="datechoice">2d</a></dd> \ 791 <dd><a href="#" class="datechoice">1w</a></dd> \ 792 <dd><a href="#" class="selected datechoice">2w</a></dd> \ 793 <dd><a href="#" class="datechoice">4w</a></dd> \ 794 <dd><a href="#" class="datechoice">1y</a></dd> \ 795 </dl>\ 796 </div>\ 797 </div>'); 798 799 var mheader = $("<div id='stream-modal-header'>").append(dtool); 800 mheader.append("<span class='zoomClose'>x</span>"); 801 mheader.append("<span class='zoomStream'>Stream Data</span><br>"); 802 803 stream_graph.prepend(mheader); 804 805 stream_graph.append("<div class='stream-log' style='display:none'></div>"); 806 $(".zoomClose").click(function() { 807 streaming = false; 808 $('#streambox').html(''); 809 smod.close(); 810 }); 811 812 $(".zoomStream").click(function() { 813 if(!streaming) { 814 streaming = true; 815 $(".zoomStream").html('Streaming!').fadeIn('slow'); 816 $(".stream-log").removeAttr("style").html("stream log_"); 817 stream_data(id); 818 } 819 else if(streaming) { 820 streaming = false; 821 $('#streambox').html(''); 822 $(".zoomStream").html('Stream Data').fadeIn('slow'); 823 $(".stream-log").attr("style", "display:none;"); 824 stream_graph.ReconGraphRefresh({graphid: id}); 825 } 826 }); //end stream click function 827 828 $("#mini_ws_datetool .datechoice").click(function(){ 829 $(".datechoice").removeClass("selected"); 830 $(this).addClass("selected"); 831 stream_graph.ReconGraphRefresh({graphid: id, start: time_windows[$(this).html()], end: ''}); 832 return false; 833 }); 834 835 }//end zoom_modal 836 837 function lock_wforms() { 838 $("h2#worksheetTitle").unbind(); 839 $("ul#worksheet-graphs").unbind(); 840 $(".ws-toolbar-edit").attr("class","ws-toolbar"); 841 } 842 843 function unlock_wforms() { 844 $("h2#worksheetTitle").editable(function(value, settings) { 845 wsinfo.title = value; 846 update_current_worksheet(); 847 return(value); 848 }, { }); 849 850 var ul = $("ul#worksheet-graphs"); 851 ul.sortable({ handle: '.moveGraph', 852 scroll: true, 853 stop: 854 function (e,ui) { 855 wsinfo.graphs = new Array(); 856 ui.item.parent().find("> li > div").each( 857 function(i) { 858 wsinfo.graphs.push($(this).attr("id")); 859 } 860 ); 861 update_current_worksheet(); 862 } 863 }); 864 865 $(".ws-toolbar").attr("class","ws-toolbar-edit"); 866 }//end unlock_wforms 867 868 function update_current_worksheet(f) { 869 var str = JSON.stringify(wsinfo); 870 $.post("json/worksheet/store", 871 {'json':str}, 872 function(d) { 873 wsinfo.id = d.id; 874 if(d.error) $("#ws-tool-error").html(d.error).fadeIn('fast'); 875 else $("#ws-tool-error").fadeOut('fast'); 876 if(wsinfo.id && wsinfo.title && wsinfo.saved != true && 877 $(".rememberWorksheet:visible").length == 0) { 878 wsinfo.saved = false; 879 $(".rememberWorksheet").html('"Remember" this worksheet.').fadeIn('slow'); 880 lock_wforms(); 881 modal_warning("Worksheet not saved!", "You must hit 'Remember' to continue editing."); 882 $(".rememberWorksheet").click(function() { 883 wsinfo.saved = true; 884 update_current_worksheet(function(r) { 885 if(r.error) wsinfo.saved = false; 886 else { 887 $(".rememberWorksheet").html('Remebered').fadeOut('slow'); 888 unlock_wforms(); 889 } 890 }); 891 }); 892 } 893 if(f) f(d); 894 }, 'json'); 895 } 896 897 function process_worksheet_json(r) { 898 wsinfo.id = r.sheetid; 899 wsinfo.title = r.title; 900 wsinfo.graphs = new Array(); 901 902 var ul = $("ul#worksheet-graphs"); 903 $("h2#worksheetTitle").html(r.title); 904 ul.empty(); 905 for(var i = 0; i < r.graphs.length; i++) { 906 var g = {}; 907 g.graphid = r.graphs[i]; 908 g.start = ws_displayinfo.start; 909 g.end = ws_displayinfo.end; 910 g.cnt = ws_displayinfo.cnt; 911 912 $.getJSON("json/graph/info/" + g.graphid, 913 function (j) { 914 g.type = j.type; 915 g.graphid = j.id; 916 var o = make_ws_graph(g); 917 ul.append($('<li/>').append(o)); 918 o.ReconGraphRefresh(); 919 wsinfo.graphs.push(g.graphid); 920 }); 921 922 } 923 ul.sortable("refresh"); 924 } 925 926 function add_graph_to_worksheet(graphid) { 927 if(!ws_locked("Click 'Edit Worksheet' to unlock.")){ 928 for(var i = 0; wsinfo.graphs && (i < wsinfo.graphs.length); i++) { 929 if(wsinfo.graphs[i]==graphid) { 930 modal_warning("", "Worksheets cannot have duplicate graphs!"); 931 return; 932 } 933 } 934 var g = { start: ws_displayinfo.start, 935 end: ws_displayinfo.end, 936 cnt: ws_displayinfo.cnt, 937 graphid: graphid }; 938 939 $.getJSON("json/graph/info/" + g.graphid, 940 function (j) { 941 g.type = j.type; 942 g.graphid = j.id; 943 var o = make_ws_graph(g); 944 var ul = $("ul#worksheet-graphs"); 945 ul.append($('<li/>').append(o)); 946 o.ReconGraphRefresh(); 947 ul.sortable("refresh"); 948 if(!wsinfo.graphs) {wsinfo.graphs = new Array();} 949 wsinfo.graphs.push(graphid); 950 update_current_worksheet(); 951 unlock_wforms(); 952 }); 953 } 954 955 } 956 function refresh_worksheet() { 957 var g = { start: ws_displayinfo.start, 958 end: ws_displayinfo.end, 959 cnt: ws_displayinfo.cnt }; 960 $("ul#worksheet-graphs > li > div").ReconGraphRefresh(g); 961 } 962 function load_worksheet(id) { 963 if(id==null) { 964 wsinfo.saved = false; 965 locked = false; 966 unlock_wforms(); 967 $(".editWorksheet").html('Editing!').fadeIn('slow'); 968 process_worksheet_json({graphs: [], title:'Worksheet Title (click to edit)', sheetid: ''}); 969 } 970 else { 971 wsinfo.saved = true; 972 locked = true; 973 lock_wforms(); 974 $(".editWorksheet").html('Edit Worksheet').fadeIn('slow'); 975 $.getJSON("json/worksheet/info/" + id, process_worksheet_json); 976 } 977 } ui/web/htdocs/search_saved_graphs.inc
r7c1da69 rfcb3fa5 1 <script type="text/javascript">2 <!--3 $(document).ready(function(){4 $("#graph-searchform").submit(function() {5 perform_graph_search_edit({ 'domid': '#graphlist',6 'search': $("#graph-searchinput").val(),7 'offset': 0,8 'limit': 25 });9 return false;10 });11 });12 -->13 </script>14 1 <h4 id="graph-searchterms"></h4> 15 2 <div id="graph-searchform-container" style="margin:.5em 0 2em 0;padding-bottom:1em;border-bottom: solid 1px #e6e4e5;"> ui/web/htdocs/search_simple.inc
rfd997b7 rfcb3fa5 1 <script type="text/javascript">2 <!--3 $(document).ready(function(){4 $("#datapoint-searchform").submit(function() {5 perform_datapoint_search_add({ domid: '#searchlist',6 search: $("#searchinput").val(),7 offset: 0,8 limit: 25 });9 return false;10 });11 });12 -->13 </script>14 1 <h4 id="searchterms"></h4> 15 2 <div id="datapoint-searchform-container" style="margin:.5em 0 2em 0;padding-bottom:1em;border-bottom: solid 1px #e6e4e5;"> ui/web/htdocs/worksheet_panel.inc
r54ed1f6 rfcb3fa5 1 <script type="text/javascript" src="js/eye/datepicker.js"></script>2 <script type="text/javascript" src="js/eye/eye.js"></script>3 <script type="text/javascript" src="js/eye/utils.js"></script>4 <script type="text/javascript" src="js/jquery.timers.js"></script>5 <script type="text/javascript" src="js/jquery.ajaxq-0.0.1.js" ></script>6 <script type="text/javascript">7 <!--8 9 var ws_displayinfo = { start : 14*86400, cnt: '100', end: '' };10 var wsinfo = {};11 var locked = true;12 var streaming = false;13 var stream_graph;14 var time_windows = { '6h' : 3600*6,15 '12h' : 3600*12,16 '1d' : 86400*1,17 '2d' : 86400*2,18 '1w' : 86400*7,19 '2w' : 86400*14,20 '4w' : 86400*28,21 '1y' : 86400*365,22 };23 24 function ws_locked(warning) {25 if(locked) {26 modal_warning("Worksheet Locked!", warning);27 return locked;28 }29 else if($(".rememberWorksheet:visible").length != 0) {30 modal_warning("Worksheet not saved!", "You must hit 'Remember' to continue editing.");31 return true;32 }33 return locked;34 }35 36 function stream_data(graph_id) {37 38 polltime = 1000;39 timewindow = 300000;40 stream_object = stream_graph;41 stream_dirty = false;42 stream_graph.ReconGraphPrepareStream(timewindow, polltime);43 44 45 //setup functionality so that every second check if we are streaming and dirty, plot if true46 stream_graph.everyTime(1000, function() {47 if(!streaming) {48 $('#streambox').html('');49 $(".stream-log").attr("style", "display:none;");50 stream_graph.stopTime();51 }52 else {53 if(stream_dirty){54 stream_graph.ReconGraphPlotPoints();55 stream_dirty=false;56 }57 }58 });59 60 $.getJSON("json/graph/info/" + graph_id,61 function(g) {62 63 sids = "";64 var sidneed = new Object();65 66 for(var i=0; i<g.datapoints.length; i++) {67 if(g.datapoints[i].sid) {68 sidneed[g.datapoints[i].sid] = polltime;69 }70 }71 for(var sid in sidneed) {72 sids+= "/"+sid+"@"+sidneed[sid];73 }74 75 //console.log("sids requestd from noit server = ", sids);76 $('#streambox').html('<iframe src="http://bob.office.omniti.com/data'+sids+'"></iframe>');77 });78 79 }80 81 function make_ws_graph(g) {82 var o = $('<div></div>').ReconGraph(g);83 84 zb = $("<li class='zoomGraph' id='Zoom-"+g.graphid+"'><img src='images/zoom_icon.png'></li>");85 zb.attr("graphid", g.graphid);86 zb.attr("graphtype", g.type);87 zb.click(function() { zoom_modal($(this).attr("graphid"), $(this).attr("graphtype")); });88 mb = $("<li class='moveGraph' id='Move-"+g.graphid+"'><img src='images/drag_icon.png'></li>");89 rb = $("<li class='deleteWorksheetGraph' id='Remove-"+g.graphid+"'><img src='images/remove_icon.png'></li>");90 rb.attr("graphid", g.graphid);91 rb.click( function() {92 $.getJSON('json/worksheet/deletegraph/' + wsinfo.id + '/' + $(this).attr("graphid"),93 function(r) { if(r.error) { $("#ws-tool-error").html(r.error).fadeIn('fast'); } });94 $("#"+$(this).attr("graphid")).remove();95 });96 97 var ws_tbar = $('<div class="ws-toolbar"></div>').append("<ul/>").append(zb).append(mb).append(rb);98 99 ws_tbar.attr("style", "display:none;");100 101 o.prepend(ws_tbar);102 o.mouseover(103 function() {104 o.attr("style", "outline: 1px solid #DDDDDD;");105 ws_tbar.removeAttr("style");106 });107 o.mouseout(108 function() {109 o.removeAttr("style");110 ws_tbar.attr("style", "display:none;");111 });112 113 return o;114 }115 116 function zoom_modal (id, gtype) {117 stream_graph = $('<div></div>').ReconGraph({graphid: id, type: gtype});118 var smod = stream_graph.modal({119 containerId: 'StreamingModalContainer',120 close: 'true',121 overlayCss: {122 backgroundColor: '#000000',123 cursor: 'wait'124 },125 containerCss: {126 backgroundColor: '#FFFFFF',127 left: '30%',128 top: '10%',129 border: '2px solid #000000',130 padding: '5px'131 },132 });133 stream_graph.ReconGraphRefresh({graphid: id});134 135 136 var dtool = $("<div id='mini_ws_datetool'>");137 dtool.append('<div class="zoom"> \138 <dl> \139 <dt>Zoom:</dt> \140 <dd><a href="#" class="first datechoice">1d</a></dd> \141 <dd><a href="#" class="datechoice">2d</a></dd> \142 <dd><a href="#" class="datechoice">1w</a></dd> \143 <dd><a href="#" class="selected datechoice">2w</a></dd> \144 <dd><a href="#" class="datechoice">4w</a></dd> \145 <dd><a href="#" class="datechoice">1y</a></dd> \146 </dl>\147 </div>\148 </div>');149 150 var mheader = $("<div id='stream-modal-header'>").append(dtool);151 mheader.append("<span class='zoomClose'>x</span>");152 mheader.append("<span class='zoomStream'>Stream Data</span><br>");153 154 stream_graph.prepend(mheader);155 156 stream_graph.append("<div class='stream-log' style='display:none'></div>");157 $(".zoomClose").click(function() {158 streaming = false;159 $('#streambox').html('');160 smod.close();161 });162 163 $(".zoomStream").click(function() {164 if(!streaming) {165 streaming = true;166 $(".zoomStream").html('Streaming!').fadeIn('slow');167 $(".stream-log").removeAttr("style").html("stream log_");168 stream_data(id);169 }170 else if(streaming) {171 streaming = false;172 $('#streambox').html('');173 $(".zoomStream").html('Stream Data').fadeIn('slow');174 $(".stream-log").attr("style", "display:none;");175 stream_graph.ReconGraphRefresh({graphid: id});176 }177 }); //end stream click function178 179 $("#mini_ws_datetool .datechoice").click(function(){180 $(".datechoice").removeClass("selected");181 $(this).addClass("selected");182 stream_graph.ReconGraphRefresh({graphid: id, start: time_windows[$(this).html()], end: ''});183 return false;184 });185 186 }//end zoom_modal187 188 function lock_wforms() {189 $("h2#worksheetTitle").unbind();190 $("ul#worksheet-graphs").unbind();191 $(".ws-toolbar-edit").attr("class","ws-toolbar");192 }193 194 function unlock_wforms() {195 $("h2#worksheetTitle").editable(function(value, settings) {196 wsinfo.title = value;197 update_current_worksheet();198 return(value);199 }, { });200 201 var ul = $("ul#worksheet-graphs");202 ul.sortable({ handle: '.moveGraph',203 scroll: true,204 stop:205 function (e,ui) {206 wsinfo.graphs = new Array();207 ui.item.parent().find("> li > div").each(208 function(i) {209 wsinfo.graphs.push($(this).attr("id"));210 }211 );212 update_current_worksheet();213 }214 });215 216 $(".ws-toolbar").attr("class","ws-toolbar-edit");217 }//end unlock_wforms218 219 function update_current_worksheet(f) {220 var str = JSON.stringify(wsinfo);221 $.post("json/worksheet/store",222 {'json':str},223 function(d) {224 wsinfo.id = d.id;225 if(d.error) $("#ws-tool-error").html(d.error).fadeIn('fast');226 else $("#ws-tool-error").fadeOut('fast');227 if(wsinfo.id && wsinfo.title && wsinfo.saved != true &&228 $(".rememberWorksheet:visible").length == 0) {229 wsinfo.saved = false;230 $(".rememberWorksheet").html('"Remember" this worksheet.').fadeIn('slow');231 lock_wforms();232 modal_warning("Worksheet not saved!", "You must hit 'Remember' to continue editing.");233 $(".rememberWorksheet").click(function() {234 wsinfo.saved = true;235 update_current_worksheet(function(r) {236 if(r.error) wsinfo.saved = false;237 else {238 $(".rememberWorksheet").html('Remebered').fadeOut('slow');239 unlock_wforms();240 }241 });242 });243 }244 if(f) f(d);245 }, 'json');246 }247 248 function process_worksheet_json(r) {249 wsinfo.id = r.sheetid;250 wsinfo.title = r.title;251 wsinfo.graphs = new Array();252 253 var ul = $("ul#worksheet-graphs");254 $("h2#worksheetTitle").html(r.title);255 ul.empty();256 for(var i = 0; i < r.graphs.length; i++) {257 var g = {};258 g.graphid = r.graphs[i];259 g.start = ws_displayinfo.start;260 g.end = ws_displayinfo.end;261 g.cnt = ws_displayinfo.cnt;262 263 $.getJSON("json/graph/info/" + g.graphid,264 function (j) {265 g.type = j.type;266 g.graphid = j.id;267 var o = make_ws_graph(g);268 ul.append($('<li/>').append(o));269 o.ReconGraphRefresh();270 wsinfo.graphs.push(g.graphid);271 });272 273 }274 ul.sortable("refresh");275 }276 277 function add_graph_to_worksheet(graphid) {278 if(!ws_locked("Click 'Edit Worksheet' to unlock.")){279 for(var i = 0; wsinfo.graphs && (i < wsinfo.graphs.length); i++) {280 if(wsinfo.graphs[i]==graphid) {281 modal_warning("", "Worksheets cannot have duplicate graphs!");282 return;283 }284 }285 var g = { start: ws_displayinfo.start,286 end: ws_displayinfo.end,287 cnt: ws_displayinfo.cnt,288 graphid: graphid };289 290 $.getJSON("json/graph/info/" + g.graphid,291 function (j) {292 g.type = j.type;293 g.graphid = j.id;294 var o = make_ws_graph(g);295 var ul = $("ul#worksheet-graphs");296 ul.append($('<li/>').append(o));297 o.ReconGraphRefresh();298 ul.sortable("refresh");299 if(!wsinfo.graphs) {wsinfo.graphs = new Array();}300 wsinfo.graphs.push(graphid);301 update_current_worksheet();302 unlock_wforms();303 });304 }305 306 }307 function refresh_worksheet() {308 var g = { start: ws_displayinfo.start,309 end: ws_displayinfo.end,310 cnt: ws_displayinfo.cnt };311 $("ul#worksheet-graphs > li > div").ReconGraphRefresh(g);312 }313 function load_worksheet(id) {314 if(id==null) {315 wsinfo.saved = false;316 locked = false;317 unlock_wforms();318 $(".editWorksheet").html('Editing!').fadeIn('slow');319 process_worksheet_json({graphs: [], title:'Worksheet Title (click to edit)', sheetid: ''});320 }321 else {322 wsinfo.saved = true;323 locked = true;324 lock_wforms();325 $(".editWorksheet").html('Edit Worksheet').fadeIn('slow');326 $.getJSON("json/worksheet/info/" + id, process_worksheet_json);327 }328 }329 -->330 </script>331 1 <span class="rememberWorksheet"></span> 332 2 <span class="blankWorksheet">New Blank</span> … … 334 4 <h2 id="worksheetTitle">Worksheet Title</h2> 335 5 <p/> 336 <!-- date range box -->337 <script type="text/javascript">338 $(document).ready(function(){339 var state = false;340 341 $("h2#worksheetTitle").editable(function(value, settings) {342 wsinfo.title = value;343 update_current_worksheet();344 return(value);345 }, { });346 347 $(".editWorksheet").click(function() {348 if(locked){349 locked = false;350 unlock_wforms();351 $(".editWorksheet").html('Editing!').fadeIn('slow');352 }353 else if(!locked){354 locked = true;355 lock_wforms();356 $(".editWorksheet").html('Edit Worksheet').fadeIn('slow');357 }358 });359 360 361 $(".blankWorksheet").click(function() {362 load_worksheet();363 });364 365 $("#ws_datetool .btn-slide").click(function(){366 $("#ws_widgetCalendar").stop().animate({367 height: state ? 0 :368 $('#ws_widgetCalendar div.datepicker').get(0).offsetHeight369 }, 500);370 state = !state;371 $(this).toggleClass("active");372 return false;373 });374 $("#ws_datetool .datechoice").click(function(){375 $("#ws_datetool .range a.btn-slide").html("YYYY/MM/DD - YYYY/MM/DD");376 $("#ws_widgetCalendar").slideUp("slow");377 $(".datechoice").removeClass("selected");378 ws_displayinfo.start = time_windows[$(this).html()];379 ws_displayinfo.end = '';380 $(this).addClass("selected");381 refresh_worksheet();382 return false;383 });384 $('#ws_widgetCalendar').DatePicker({385 flat: true,386 format: 'Y/m/d',387 date: [new Date(), new Date()],388 calendars: 3,389 mode: 'range',390 starts: 1,391 onChange: function(formated) {392 var dates;393 dates = formated[0].split('/');394 var start = new Date(dates[0], dates[1]-1, dates[2], 0, 0, 0);395 dates = formated[1].split('/');396 var end = new Date((new Date(dates[0], dates[1]-1, dates[2], 0, 0, 0)).getTime() + 86400000);397 ws_displayinfo.start = start.toUTCString();398 ws_displayinfo.end = end.toUTCString();399 refresh_worksheet();400 $(".datechoice").removeClass("selected");401 $('#ws_datetool .range a.btn-slide').get(0).innerHTML = formated.join(' - ');402 }403 });404 $("#ws-tool-error").click(function(){405 $("#ws-tool-error").fadeOut("slow");406 });407 408 });409 </script>410 6 411 7 <div id="ws_datetool"> ui/web/htdocs/ws_search_graphs.inc
r7c1da69 rfcb3fa5 1 <script type="text/javascript">2 <!--3 $(document).ready(function(){4 $("#ws-graph-searchform").submit(function() {5 perform_graph_search_add({ 'domid': '#ws-graphlist',6 'search': $("#ws-graph-searchinput").val(),7 'offset': 0,8 'limit': 25 });9 return false;10 });11 });12 -->13 </script>14 1 <h4 id="ws-graph-searchterms"></h4> 15 2 <div id="ws-graph-searchform-container" style="margin:.5em 0 2em 0;padding-bottom:1em;border-bottom: solid 1px #e6e4e5;"> 16 3 <form id="ws-graph-searchform"> 17 4 <fieldset> 5 <p class="explain">Enter a term to search for graphs.</p> 18 6 <legend style="display:none;">Search</legend> 19 7 <label for="keyword" style="display:none;">Keyword</label> <input type="text" id="ws-graph-searchinput" style="width:220px;" /> <input type="submit" value="Search" /> ui/web/htdocs/ws_search_simple.inc
r171b238 rfcb3fa5 1 <script type="text/javascript">2 <!--3 $(document).ready(function(){4 $("#ws-searchform").submit(function() {5 perform_ws_search_edit({ domid: '#worksheetlist',6 search: $("#ws-searchinput").val(),7 offset: 0,8 limit: 25 });9 return false;10 });11 });12 -->13 </script>14 1 <h4 id="ws-searchterms"></h4> 15 2 <div id="ws-searchform-container" style="margin:.5em 0 2em 0;padding-bottom:1em;border-bottom: solid 1px #e6e4e5;"> 16 3 <form id="ws-searchform"> 17 4 <fieldset> 5 <p class="explain">Enter a term to search for worksheets.</p> 18 6 <legend style="display:none;">Search</legend> 19 7 <label for="keyword" style="display:none;">Keyword</label> <input type="text" id="ws-searchinput" style="width:220px;" /> <input type="submit" value="Search" />
