0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
magento
/
1.7.0.2-6
/
standard
/
htdocs
/
js
/
prototype
/
[
Home
]
File: extended_debug.js
var commandHistory; var historyIndex; function showExtendedDebug() { if (debugWindow != null) { hideDebug(); } if (debugWindow == null) { commandHistory = new Array(); historyIndex = 0; debugWindow = new Window('debug_window', {className: 'dialog',width:250, height:100, right:4, minWidth:250, bottom:42, zIndex:1000, opacity:1, showEffect: Element.show, resizable: true, title: "Debug"}) debugWindow.getContent().innerHTML = "<style>#debug_window .dialog_content {background:#000;}</style> <div font='monaco' id='debug' style='padding:3px;color:#0F0;font-family:monaco'></div>"; //create hourglass icon and attach events to it. var cont = "<div id=\"debug_window_inspect\" style=\"width: 15px; height: 15px; background: transparent url(themes/default/inspect.gif) no-repeat 0 0; position:absolute; top:5px; left:70px; cursor:pointer; z-index:3000;\"></div>"; new Insertion.After('debug_window_maximize', cont); Event.observe('debug_window_inspect', 'click', enterInspectionMode, false); //create command text box cont = "Eval:<input id=\"debug_window_command\" type=\"textbox\" style=\"width:150px; height: 12px; color: black;\">" debugWindow.setStatusBar(cont); Event.observe('debug_window_command', 'mousedown', donothing); Event.observe('debug_window_command', 'keypress', evalJS, false); } debugWindow.show(); } function donothing(evt){ Field.activate('debug_window_command'); return false; } function evalJS(evt){ if(evt.keyCode == Event.KEY_RETURN){ var js = $F('debug_window_command'); try{ var ret = eval(js); if(ret != null) debug(ret); }catch(e){ debug(e); } $('debug_window_command').value = ''; Field.activate('debug_window_command'); commandHistory.push(js); historyIndex = 0; } if(evt.keyCode == Event.KEY_UP){ if(commandHistory.length > historyIndex){ historyIndex++; var js = commandHistory[commandHistory.length-historyIndex]; $('debug_window_command').value = js; Event.stop(evt); Field.activate('debug_window_command'); } } if(evt.keyCode == Event.KEY_DOWN){ if(commandHistory.length >= historyIndex && historyIndex > 1){ historyIndex--; var js = commandHistory[commandHistory.length-historyIndex]; $('debug_window_command').value = js; Event.stop(evt); Field.activate('debug_window_command'); } } } function enterInspectionMode(evt){ //stop observing magnifying glass Event.stopObserving('debug_window_inspect', 'click', enterInspectionMode, false); //change pointer document.body.style.cursor='help'; //start observing mouse clicks Event.observe(window, 'click', inspectItem, false); } function inspectItem(evt){ // the element that triggered the event var element = Event.element(evt); if(element.id!="debug_window_inspect"){ clearDebug() //change pointer document.body.style.cursor='default'; debug(element.id); inspect(element); //stop observing mouse clicks Event.stopObserving(window, 'click', inspectItem, false); //alert('doing something'); //start observing mag Event.observe('debug_window_inspect', 'click', enterInspectionMode, false); } } function clearDebug() { var win = $('debug'); if (win == null) return; win.innerHTML=" "; //clear inspections too var divs = document.getElementsByClassName('inspector'); divs.each(function(div){ Element.remove(div); }); }