1// use this to isolate the scope 2(function () { 3 4 if(!$axure.document.configuration.showConsole) { return; } 5 6 $(document).ready(function () { 7 $axure.player.createPluginHost({ 8 id: 'debugHost', 9 context: 'interface', 10 title: 'CONSOLE', 11 gid: 3 12 }); 13 14 generateDebug(); 15 16 $('#variablesClearLink').click(clearvars_click); 17 $('#traceClearLink').click(cleartrace_click); 18 19 20 $(document).on('ContainerHeightChange', function () { 21 updateContainerHeight(); 22 }); 23 24 //$('#traceContainer').hide(); 25 //$('#debugTraceLink').click(function () { 26 // $('#variablesContainer').hide(); 27 // $('#traceContainer').show(); 28 //}); 29 //$('#debugVariablesLink').click(function () { 30 // $('#variablesContainer').show(); 31 // $('#traceContainer').hide(); 32 //}); 33 34 var currentStack= []; 35 var finishedStack = []; 36 37 $axure.messageCenter.addMessageListener(function (message, data) { 38 if(message == 'globalVariableValues') { 39 //If variables container isn't visible, then ignore 40 //if(!$('#variablesContainer').is(":visible")) { 41 // return; 42 //} 43 44 $('#variablesDiv').empty(); 45 for(var key in data) { 46 var value = data[key] == '' ? '(blank)' : data[key]; 47 $('#variablesDiv').append('<div class="variableDiv"><span class="variableName">' + key + '</span><br/>' + value + '</div>'); 48 } 49 } if(message == 'setGlobalVar') { 50 //$('#variablesContainer').html(""); 51 //for (var variable in $axure.globalVariableProvider.getDefinedVariables) { 52 // $('#variablesContainer').append("<div class='varName'>" + variable + "</div>"); 53 // $('#variablesContainer').append("<div class='varVal'>" + $axure.globalVariableProvider.getVariableValue(variable) + "</div>"); 54 //} 55 } else if(message == 'axEvent') { 56 var addToStack = "<div class='axEventBlock'>"; 57 addToStack += "<div class='axTime'>" + new Date().toLocaleTimeString() + "</div>"; 58 addToStack += "<div class='axLabel'>" + data.label + " (" + data.type + ")</div>"; 59 addToStack += "<div class='axEvent'>" + data.event.description + "</div>"; 60 currentStack.push(addToStack); 61 } else if (message == 'axEventComplete') { 62 currentStack[currentStack.length - 1] += "</div>"; 63 finishedStack.push(currentStack.pop()); 64 if(currentStack.length == 0) { 65 $('#traceClearLinkContainer').show(); 66 $('#traceEmptyState').hide(); 67 68 $('.lastAxEvent').removeClass('lastAxEvent'); 69 for(var i = finishedStack.length - 1; i >= 0; i--) { 70 if($('#traceDiv').children().length > 99) $('#traceDiv').children().last().remove(); 71 $('#traceDiv').prepend(finishedStack[i]); 72 if(i == finishedStack.length - 1) $('#traceDiv').children().first().addClass('lastAxEvent'); 73 } 74 finishedStack = []; 75 } 76 } else if (message == 'axCase') { 77 currentStack[currentStack.length - 1] += "<div class='axCase'>" + data.description + "</div>"; 78 } else if (message == 'axAction') { 79 currentStack[currentStack.length - 1] += "<div class='axAction'>" + data.description + "</div>"; 80 } 81 }); 82 83 // bind to the page load 84 $axure.page.bind('load.debug', function () { 85 86 $axure.messageCenter.postMessage('getGlobalVariables', ''); 87 88 return false; 89 }); 90 91 function clearvars_click(event) { 92 $axure.messageCenter.postMessage('resetGlobalVariables', ''); 93 } 94 95 function cleartrace_click(event) { 96 $('#traceDiv').html(''); 97 $('#traceClearLinkContainer').hide(); 98 $('#traceEmptyState').show(); 99 } 100 });
101 102 function updateContainerHeight() { 103 $('#debugScrollContainer').height($('#debugHost').height() - $('#debugHeader').outerHeight()); 104 } 105 106 function generateDebug() { 107 var pageNotesUi = "<div id='debugHeader'' class='sitemapHeader'>"; 108 109 pageNotesUi += "<div id='debugToolbar' class='sitemapToolbar'>"; 110 pageNotesUi += "<div class='pluginNameHeader'>CONSOLE</div>"; 111 pageNotesUi += "<div class='pageNameHeader'></div>"; 112 113 //pageNotesUi += "<div class='pageButtonHeader'>"; 114 115 //pageNotesUi += "<a id='previousPageButton' title='Previous Page' class='sitemapToolbarButton'></a>"; 116 //pageNotesUi += "<a id='nextPageButton' title='Next Page' class='sitemapToolbarButton'></a>"; 117 //pageNotesUi += "<a id='variablesClearLink' title='Reset Variables' class='sitemapToolbarButton'></a>"; 118 119 //pageNotesUi += "</div>"; 120 pageNotesUi += "</div>"; 121 pageNotesUi += "</div>"; 122 123 //var pageNotesUi = "<div id='debugToolbar'><a id='debugVariablesLink' class='debugToolbarButton'>Variables</a> | <a id='debugTraceLink' class='debugToolbarButton'>Trace</a></div>"; 124 pageNotesUi += "<div id='debugScrollContainer'>"; 125 pageNotesUi += "<div id='debugContainer'>"; 126 pageNotesUi += "<div id='variablesContainer'>"; 127 pageNotesUi += "<div id='variablesClearLinkContainer' class='debugLinksContainer'><a id='variablesClearLink' title='Reset Variables'>Reset Variables</a></div>"; 128 pageNotesUi += "<div id='variablesDiv'></div></div>"; 129 pageNotesUi += "<div class='dottedDivider'></div>"; 130 pageNotesUi += "<div id='traceContainer'>"; 131 pageNotesUi += "<div id='traceClearLinkContainer' class='debugLinksContainer'><a id='traceClearLink' title='Clear Trace'>Clear Trace</a></div>"; 132 pageNotesUi += "<div id='traceEmptyState' class='emptyStateContainer'><div class='emptyStateTitle'>No interactions in the trace.</div><div class='emptyStateContent'>Triggered interactions will appear here.</div><div class='dottedDivider'></div></div>"; 133 pageNotesUi += "<div id='traceDiv'></div></div>"; 134 pageNotesUi += "</div></div>"; 135 136 $('#debugHost').html(pageNotesUi); 137 updateContainerHeight(); 138 139 $('#traceClearLinkContainer').hide(); 140 $('#traceEmptyState').show(); 141 } 142 143})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.