Commit 7cc4df85 authored by Guillaume Lambert's avatar Guillaume Lambert

added prevent default to anbu events and linted/formatted profiler.js code

Signed-off-by: 's avatarGuillaume Lambert <falzhobel@gmail.com>
parent 63b1636d
...@@ -67,7 +67,7 @@ return array( ...@@ -67,7 +67,7 @@ return array(
| |
*/ */
'profiler' => false, 'profiler' => true,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
......
...@@ -214,3 +214,9 @@ span.anbu-count ...@@ -214,3 +214,9 @@ span.anbu-count
white-space: -o-pre-wrap; white-space: -o-pre-wrap;
word-wrap: break-word; word-wrap: break-word;
} }
/* hide panel-open elements, will become visible through anbu.start() */
#anbu-close, #anbu-zoom, .anbu-tab-pane {
visibility: hidden;
}
...@@ -6,77 +6,103 @@ var anbu = { ...@@ -6,77 +6,103 @@ var anbu = {
// the DOM every time they are used. // the DOM every time they are used.
el : { el : {
main : $('.anbu'), main: $('.anbu'),
close : $('#anbu-close'), close: $('#anbu-close'),
zoom : $('#anbu-zoom'), zoom: $('#anbu-zoom'),
hide : $('#anbu-hide'), hide: $('#anbu-hide'),
show : $('#anbu-show'), show: $('#anbu-show'),
tab_pane : $('.anbu-tab-pane'), tab_pane: $('.anbu-tab-pane'),
hidden_tab_pane : $('.anbu-tab-pane:visible'), hidden_tab_pane: $('.anbu-tab-pane:visible'),
tab : $('.anbu-tab'), tab: $('.anbu-tab'),
tabs : $('.anbu-tabs'), tabs: $('.anbu-tabs'),
tab_links : $('.anbu-tabs a'), tab_links: $('.anbu-tabs a'),
window : $('.anbu-window'), window: $('.anbu-window'),
closed_tabs : $('#anbu-closed-tabs'), closed_tabs: $('#anbu-closed-tabs'),
open_tabs : $('#anbu-open-tabs'), open_tabs: $('#anbu-open-tabs'),
content_area : $('.anbu-content-area') content_area: $('.anbu-content-area')
}, },
// CLASS ATTRIBUTES // CLASS ATTRIBUTES
// ------------------------------------------------------------- // -------------------------------------------------------------
// Useful variable for Anbu. // Useful variable for Anbu.
isZoomed : false, // is anbu in full screen mode // is anbu in full screen mode
small_height : $('.anbu-content-area').height(), // initial height of content area is_zoomed: false,
active_tab : 'anbu-active-tab', // the name of the active tab css
tab_data : 'data-anbu-tab', // the data attribute of the tab link // initial height of content area
mini_button_width : '2.6em', // size of anbu when compact small_height: $('.anbu-content-area').height(),
window_open : false, // is the top window open?
active_pane : '', // current active pane // the name of the active tab css
active_tab: 'anbu-active-tab',
// the data attribute of the tab link
tab_data: 'data-anbu-tab',
// size of anbu when compact
mini_button_width: '2.6em',
// is the top window open?
window_open: false,
// current active pane
active_pane: '',
// START() // START()
// ------------------------------------------------------------- // -------------------------------------------------------------
// Sets up all the binds for Anbu! // Sets up all the binds for Anbu!
start : function () start: function() {
{
// hide initial elements
anbu.el.close.hide(); // hide initial elements
anbu.el.zoom.hide(); anbu.el.close.css('visibility', 'visible').hide();
anbu.el.tab_pane.hide(); anbu.el.zoom.css('visibility', 'visible').hide();
anbu.el.tab_pane.css('visibility', 'visible').hide();
// bind all click events // bind all click events
anbu.el.close.click( function () { anbu.close_window(); }); anbu.el.close.click(function(event) {
anbu.el.hide.click( function () { anbu.hide(); }); anbu.close_window();
anbu.el.show.click( function () { anbu.show(); }); event.preventDefault();
anbu.el.zoom.click( function () { anbu.zoom(); }); });
anbu.el.tab.click( function () { anbu.clicked_tab($(this)); }); anbu.el.hide.click(function(event) {
anbu.hide();
event.preventDefault();
});
anbu.el.show.click(function(event) {
anbu.show();
event.preventDefault();
});
anbu.el.zoom.click(function(event) {
anbu.zoom();
event.preventDefault();
});
anbu.el.tab.click(function(event) {
anbu.clicked_tab($(this));
event.preventDefault();
});
}, },
// CLICKED_TAB() // CLICKED_TAB()
// ------------------------------------------------------------- // -------------------------------------------------------------
// A tab has been clicked, decide what to do. // A tab has been clicked, decide what to do.
clicked_tab : function (tab) clicked_tab: function(tab) {
{
// if the tab is closed // if the tab is closed
if(anbu.window_open && anbu.active_pane == tab.attr(anbu.tab_data)) if (anbu.window_open && anbu.active_pane == tab.attr(anbu.tab_data)) {
{
anbu.close_window(); anbu.close_window();
} } else {
else
{
anbu.open_window(tab); anbu.open_window(tab);
} }
}, },
// OPEN_WINDOW() // OPEN_WINDOW()
// ------------------------------------------------------------- // -------------------------------------------------------------
// Animate open the top window to the appropriate tab. // Animate open the top window to the appropriate tab.
open_window : function (tab) open_window: function(tab) {
{
// can't directly assign this line, but it works // can't directly assign this line, but it works
$('.anbu-tab-pane:visible').fadeOut(200); $('.anbu-tab-pane:visible').fadeOut(200);
$('.' + tab.attr(anbu.tab_data)).delay(220).fadeIn(300); $('.' + tab.attr(anbu.tab_data)).delay(220).fadeIn(300);
...@@ -87,15 +113,15 @@ var anbu = { ...@@ -87,15 +113,15 @@ var anbu = {
anbu.el.zoom.fadeIn(300); anbu.el.zoom.fadeIn(300);
anbu.active_pane = tab.attr(anbu.tab_data); anbu.active_pane = tab.attr(anbu.tab_data);
anbu.window_open = true; anbu.window_open = true;
},
},
// CLOSE_WINDOW() // CLOSE_WINDOW()
// ------------------------------------------------------------- // -------------------------------------------------------------
// Animate closed the top window hiding all tabs. // Animate closed the top window hiding all tabs.
close_window : function() close_window: function() {
{
anbu.el.tab_pane.fadeOut(100); anbu.el.tab_pane.fadeOut(100);
anbu.el.window.slideUp(300); anbu.el.window.slideUp(300);
anbu.el.close.fadeOut(300); anbu.el.close.fadeOut(300);
...@@ -103,28 +129,28 @@ var anbu = { ...@@ -103,28 +129,28 @@ var anbu = {
anbu.el.tab_links.removeClass(anbu.active_tab); anbu.el.tab_links.removeClass(anbu.active_tab);
anbu.active_pane = ''; anbu.active_pane = '';
anbu.window_open = false; anbu.window_open = false;
},
},
// SHOW() // SHOW()
// ------------------------------------------------------------- // -------------------------------------------------------------
// Show the Anbu toolbar when it has been compacted. // Show the Anbu toolbar when it has been compacted.
show : function () show: function() {
{
anbu.el.closed_tabs.fadeOut(600, function () { anbu.el.closed_tabs.fadeOut(600, function () {
anbu.el.open_tabs.fadeIn(200); anbu.el.open_tabs.fadeIn(200);
}) });
anbu.el.main.animate({width: '100%'}, 700); anbu.el.main.animate({width: '100%'}, 700);
anbu.el.main.removeClass('hidden'); anbu.el.main.removeClass('hidden');
}, },
// HIDE() // HIDE()
// ------------------------------------------------------------- // -------------------------------------------------------------
// Hide the anbu toolbar, show a tiny re-open button. // Hide the anbu toolbar, show a tiny re-open button.
hide : function () hide: function() {
{
anbu.close_window(); anbu.close_window();
anbu.el.window.slideUp(400, function () { anbu.el.window.slideUp(400, function () {
...@@ -132,7 +158,7 @@ var anbu = { ...@@ -132,7 +158,7 @@ var anbu = {
anbu.el.main.addClass('hidden'); anbu.el.main.addClass('hidden');
anbu.el.open_tabs.fadeOut(200, function () { anbu.el.open_tabs.fadeOut(200, function () {
anbu.el.closed_tabs.fadeIn(200); anbu.el.closed_tabs.fadeIn(200);
}) });
anbu.el.main.animate({width: anbu.mini_button_width}, 700); anbu.el.main.animate({width: anbu.mini_button_width}, 700);
}); });
...@@ -142,27 +168,24 @@ var anbu = { ...@@ -142,27 +168,24 @@ var anbu = {
// ------------------------------------------------------------- // -------------------------------------------------------------
// Toggle the zoomed mode of the top window. // Toggle the zoomed mode of the top window.
zoom : function () zoom: function() {
{
if(anbu.isZoomed) if (anbu.is_zoomed) {
{
height = anbu.small_height; height = anbu.small_height;
anbu.isZoomed = false; anbu.is_zoomed = false;
} } else {
else
{
// the 6px is padding on the top of the window // the 6px is padding on the top of the window
height = ($(window).height() - anbu.el.tabs.height() - 6) + 'px'; height = ($(window).height() - anbu.el.tabs.height() - 6) + 'px';
anbu.isZoomed = true; anbu.is_zoomed = true;
} }
anbu.el.content_area.animate({height: height}, 700); anbu.el.content_area.animate({height: height}, 700);
}
} }
};
jQuery(document).ready(function () { // launch anbu on jquery dom ready
// launch anbu jQuery(document).ready(function() {
anbu.start(); anbu.start();
}); });
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment