1
0
Fork 0
mirror of https://github.com/Oreolek/debug-toolbar.git synced 2024-04-30 08:09:19 +03:00
debug-toolbar/views/toolbar.js

113 lines
2.7 KiB
JavaScript
Raw Normal View History

2010-01-31 19:20:55 +02:00
var debugToolbar = {
// current toolbar section thats open
current: null,
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// current vars and config section open
currentvar: null,
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// current config section open
currentli: null,
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// toggle a toolbar section
show : function(obj) {
if (obj == debugToolbar.current) {
debugToolbar.off(obj);
debugToolbar.current = null;
} else {
debugToolbar.off(debugToolbar.current);
debugToolbar.on(obj);
debugToolbar.current = obj;
}
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// toggle a vars and configs section
showvar : function(li, obj) {
if (obj == debugToolbar.currentvar) {
debugToolbar.off(obj);
debugToolbar.currentli.className = '';
debugToolbar.currentli = null;
debugToolbar.currentvar = null;
} else {
debugToolbar.off(debugToolbar.currentvar);
if (debugToolbar.currentli)
debugToolbar.currentli.className = '';
debugToolbar.on(obj);
debugToolbar.currentvar = obj;
debugToolbar.currentli = li;
debugToolbar.currentli.className = 'active';
}
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// turn an element on
on : function(obj) {
if (document.getElementById(obj) != null)
document.getElementById(obj).style.display = '';
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// turn an element off
off : function(obj) {
if (document.getElementById(obj) != null)
document.getElementById(obj).style.display = 'none';
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// toggle an element
toggle : function(obj) {
if (typeof obj == 'string')
obj = document.getElementById(obj);
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
if (obj)
obj.style.display = obj.style.display == 'none' ? '' : 'none';
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// close the toolbar
close : function() {
document.getElementById('kohana-debug-toolbar').style.display = 'none';
},
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
collapse: function() {
debugToolbar.toggle('debug-toolbar-menu');
}
};
/*
* Test for javascript libraries
* (only supports jQuery at the moment
*/
if (typeof jQuery != 'undefined') {
$(document).ready(function(){
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// display ajax button in toolbar
$('#toggle-ajax').css({display: 'inline'});
2013-02-13 15:43:26 +02:00
var debugAjax = $('#debug-ajax');
2010-01-31 19:20:55 +02:00
// bind ajax event
2013-02-13 15:43:26 +02:00
$(document).ajaxComplete(function(event, xmlrequest, ajaxOptions){
2010-01-31 19:20:55 +02:00
// add a new row to ajax table
2013-02-13 15:43:26 +02:00
debugAjax.find('table').append(
2010-01-31 19:20:55 +02:00
'<tr class="even">' +
2013-02-13 15:43:26 +02:00
'<td>' + debugAjax.find('table tr').size() +'<\/td>' +
'<td>jQuery ' + jQuery.fn.jquery + '<\/td>' +
2010-01-31 19:20:55 +02:00
'<td>' + xmlrequest.statusText + ' (' + xmlrequest.status + ')<\/td>' +
'<td>' + ajaxOptions.url + '<\/td>' +
'<\/tr>'
);
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
// stripe table
2013-02-13 15:43:26 +02:00
debugAjax.find('table tbody tr:nth-child(even)').attr('class', 'odd');
2010-01-31 19:20:55 +02:00
// update count in toolbar
2013-02-13 15:43:26 +02:00
$('#toggle-ajax').find('span').text(debugAjax.find('table tr').size()-1);
2010-01-31 19:20:55 +02:00
});
});
}
2013-02-13 15:43:26 +02:00
2010-01-31 19:20:55 +02:00
if (typeof Prototype != 'undefined') {
}