X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/df341bdd09208d2b0f84060454cc0000df19deba..5fa4673581da8c9ebe6ff327c4520989a6675c8c:/src/redakcja/static/js/wiki/loader.js diff --git a/src/redakcja/static/js/wiki/loader.js b/src/redakcja/static/js/wiki/loader.js index 1573c763..7ea9b407 100644 --- a/src/redakcja/static/js/wiki/loader.js +++ b/src/redakcja/static/js/wiki/loader.js @@ -7,19 +7,17 @@ if (!window.console) { var DEFAULT_PERSPECTIVE = "#VisualPerspective"; -$(function() -{ +$(function() { var tabs = $('ol#tabs li'); var gallery = null; var MIN_SIDEBAR_WIDTH = 50, DEFAULT_SIDEBAR_WIDTH = 480; - CurrentDocument = new $.wikiapi.WikiDocument("document-meta"); + CurrentDocument = new $.wikiapi.WikiDocument("document-meta"); - $.blockUI.defaults.baseZ = 10000; + $.blockUI.defaults.baseZ = 10000; - function initialize() - { + function initialize() { var splitter = $('#splitter'), vsplitbar = $('#vsplitbar'), sidebar = $('#sidebar'), @@ -27,64 +25,61 @@ $(function() vsplitbarWidth = vsplitbar.outerWidth(), isHolding = false; - function setSidebarWidth(x) { - if (x < MIN_SIDEBAR_WIDTH) { - x = 0; - vsplitbar.removeClass('active'); - } else { - vsplitbar.addClass('active'); - } - $.wiki.state.perspectives.ScanGalleryPerspective.width = x; - sidebar[0].style.width = x + 'px'; - }; - + function setSidebarWidth(x) { + if (x < MIN_SIDEBAR_WIDTH) { + x = 0; + vsplitbar.removeClass('active'); + } else { + vsplitbar.addClass('active'); + } + $.wiki.state.perspectives.ScanGalleryPerspective.width = x; + sidebar[0].style.width = x + 'px'; + }; - /* The save button */ + /* The save button */ $('#save-button').click(function(event){ event.preventDefault(); - $.wiki.showDialog('#save_dialog'); + $.wiki.showDialog('#save_dialog'); }); - $('.editor').hide(); + $('.editor').hide(); - /* - * TABS - */ - $(document).on('click', '.tabs li', function(event, callback) { + /* + * TABS + */ + $(document).on('click', '.tabs li', function(event, callback) { event.preventDefault(); - $.wiki.switchToTab(this); + $.wiki.switchToTab(this); }); - $(document).on('click', '#tabs li .tabclose', function(event, callback) { - var $tab = $(this).parent().parent(); + $(document).on('click', '#tabs li .tabclose', function(event, callback) { + var $tab = $(this).parent().parent(); - if($('a', $tab).is('.active')) - $.wiki.switchToTab(DEFAULT_PERSPECTIVE); + if($('a', $tab).is('.active')) + $.wiki.switchToTab(DEFAULT_PERSPECTIVE); - var p = $.wiki.perspectiveForTab($tab); - p.destroy(); + var p = $.wiki.perspectiveForTab($tab); + p.destroy(); - return false; + return false; }); - $(window).resize(function(){ splitterWidth = splitter.width(); }); $(window).resize(); - $.wiki.perspectiveForTab($('#tabs-right .active').parent()).onEnter(); - - vsplitbar.on('click', function() { - var $this = $(this); - if ($this.hasClass('active')) { - $.wiki.state.perspectives.ScanGalleryPerspective.lastWidth = sidebar.width(); - setSidebarWidth(0); - } else { - setSidebarWidth($.wiki.state.perspectives.ScanGalleryPerspective.lastWidth); - } - }); - + $.wiki.perspectiveForTab($('#tabs-right .active').parent()).onEnter(); + + vsplitbar.on('click', function() { + var $this = $(this); + if ($this.hasClass('active')) { + $.wiki.state.perspectives.ScanGalleryPerspective.lastWidth = sidebar.width(); + setSidebarWidth(0); + } else { + setSidebarWidth($.wiki.state.perspectives.ScanGalleryPerspective.lastWidth); + } + }); /* Splitbar dragging support */ vsplitbar @@ -100,80 +95,76 @@ $(function() dragLayer.show(); // We don't show it up until now so that we don't lose single click events on vsplitbar } }); - dragLayer.mousemove(function(e) { - setSidebarWidth(splitterWidth - e.clientX - vsplitbarWidth / 2); - }); - $('body').mouseup(function(e) { - dragLayer.hide(); - isHolding = false; - }); + dragLayer.mousemove(function(e) { + setSidebarWidth(splitterWidth - e.clientX - vsplitbarWidth / 2); + }); + $('body').mouseup(function(e) { + dragLayer.hide(); + isHolding = false; + }); - setSidebarWidth($.wiki.state.perspectives.ScanGalleryPerspective.width); + setSidebarWidth($.wiki.state.perspectives.ScanGalleryPerspective.width); - window.onbeforeunload = function(e) { + window.onbeforeunload = function(e) { if($.wiki.isDirty()) { - e.returnValue = "Na stronie mogą być nie zapisane zmiany."; - return "Na stronie mogą być nie zapisane zmiany."; - }; + e.returnValue = "Na stronie mogą być nie zapisane zmiany."; + return "Na stronie mogą być nie zapisane zmiany."; + }; }; - console.log("Fetching document's text"); + $('body').mousemove(function(e) { + CurrentDocument.active = true; + }); + $('body').keydown(function(e) { + CurrentDocument.active = true; + }); + + console.log("Fetching document's text"); - $(document).bind('wlapi_document_changed', function(event, doc) { - try { - $('#document-revision').text(doc.revision); - } catch(e) { - console.log("Failed handler", e); - } - }); + $(document).bind('wlapi_document_changed', function(event, doc) { + try { + $('#document-revision').text(doc.revision); + } catch(e) { + console.log("Failed handler", e); + } + }); - CurrentDocument.fetch({ - success: function(){ - console.log("Fetch success"); - $('#loading-overlay').fadeOut(); - var active_tab = document.location.hash || DEFAULT_PERSPECTIVE; + CurrentDocument.fetch({ + success: function(){ + console.log("Fetch success"); + $('#loading-overlay').fadeOut(); + var active_tab = document.location.hash || DEFAULT_PERSPECTIVE; - if(active_tab == "#ScanGalleryPerspective") - active_tab = DEFAULT_PERSPECTIVE; + if(active_tab == "#ScanGalleryPerspective") + active_tab = DEFAULT_PERSPECTIVE; - console.log("Initial tab is:", active_tab) - $.wiki.switchToTab(active_tab); + console.log("Initial tab is:", active_tab) + $.wiki.switchToTab(active_tab); - /* every 5 minutes check for a newer version */ + /* every minute check for a newer version */ var revTimer = setInterval(function() { - CurrentDocument.checkRevision({outdated: function(){ - $('#header').addClass('out-of-date'); - clearInterval(revTimer); - }}); - }, 300000); - }, - failure: function() { - $('#loading-overlay').fadeOut(); - alert("FAILURE"); - } - }); + CurrentDocument.checkRevision({outdated: function(){ + $('#header').addClass('out-of-date'); + clearInterval(revTimer); + }}); + }, 60 * 1000); + }, + failure: function() { + $('#loading-overlay').fadeOut(); + alert("FAILURE"); + } + }); }; /* end of initialize() */ - /* Load configuration */ - $.wiki.loadConfig(); - - var initAll = function(a, f) { - if (a.length == 0) return f(); - - $.wiki.initTab({ - tab: a.pop(), - doc: CurrentDocument, - callback: function(){ - initAll(a, f); - } - }); - }; - + /* Load configuration */ + $.wiki.loadConfig(); - /* - * Initialize all perspectives - */ - initAll( $.makeArray($('.tabs li')), initialize); - console.log(location.hash); + /* + * Initialize all perspectives + */ + $('.tabs li').each((i, e) => { + $.wiki.initTab({tab: e, doc: CurrentDocument}); + }); + initialize(); });