Kategória:
Snippet Ez a kis kód segít abban, hogy a blokkba helyezett calendar nézet miatt ne kelljen mindig újra újratölteni az oldalt, ha a naptárban lapoz valaki. A kód akkor fog működni ha nem az eredeti calendar modul által létrehozott nézetet használod (amúgy sem módosítunk bele modul által létrehozott nézetbe), hanem klónozod my_calendar néven, majd az eredetit letiltod.
sajat.js file-ba írandó, majd a sminkben hozzáadandó, lusták a page.tpl.php-be is beszúrhatják.
<script type="text/javascript"> $(document).ready(function() { $.ajaxSetup ({cache: false}); // Display animated loading gif during the load event. Change the "path-to-loader-pic" text to a real path to the ajax-loader.pic var loading = "<center><img class='loading' src='path-to-loader-pic/ajax-loader.gif' alt='loading...' /></center>"; function nextLoad(){ // Get the nextURL from the pagers next link var nextUrl = $(".view-display-id-calendar_block_1 .date-next a")[0].href; // Identify the content/container you wish to replace $(".view-display-id-calendar_block_1") // Add the loading image .html(loading) .css({ opacity: 0 }).fadeTo("normal",1) // Load the nextUrl + return the specific content by specifing the css class or id + bind the click function tp the newly loaded //content .load(nextUrl+ "#block-views-my_calendar-calendar_block_1 .view-display-id-calendar_block_1 .calendar-calendar", bindClick ); }; function prevLoad(){ var prevUrl = $(".view-display-id-calendar_block_1 .date-prev a")[0].href; $(".view-display-id-calendar_block_1") .html(loading) .css({ opacity: 0 }).fadeTo("normal",1) .load(prevUrl+ "#block-views-my_calendar-calendar_block_1 .calendar-calendar", bindClick ); }; function bindClick(){ $(".view-display-id-calendar_block_1 .date-prev a").click(function(){ prevLoad(); return false; }); $(".view-display-id-calendar_block_1 .date-next a").click(function(){ nextLoad(); return false; }); }; // Append the click function to the on the initial page load bindClick(); }); </script>
Az eredeti kód innen van: http://drupal.org/node/339279#comment-2006476 viszont ét kellett alakítani, különben naptár oldalon a naptár blokk nem viselkedett valami jó.
Hozzászólások
Hozzászólás