var initYears = function() { $$('ul#archive-list li.year > a').each(function(el) { el.observe('click', function(e) { e.stop(); if(el.next().innerHTML == '') { initMonths(el.next(), el.next().readAttribute('rel')); } else { Effect.toggle(el.next()); } }); }); } var initMonths = function(ul, year) { new Ajax.Updater(ul, '/archive/months/'+year, { onComplete: function() { Effect.toggle(ul, 'appear', { duration: 0.2 }); ul.select('li.month > a').each(function(el) { el.observe('click', function(e) { e.stop(); if(el.next().innerHTML == '') { initArticles(el.next(), year, el.next().readAttribute('rel')); } else { Effect.toggle(el.next(), 'appear', { duration: 0.2 }); } }); }); } }); } var initArticles = function(ul, year, month) { new Ajax.Updater(ul, '/archive/articles/'+year+'/'+month, { onComplete: function() { Effect.toggle(ul, 'appear', { duration: 0.2 }); } }); } windowLoad = function() { init(); initYears(); var d = new Date(); var year = d.getFullYear(); var month=new Array(12); month[0]="January"; month[1]="February"; month[2]="March"; month[3]="April"; month[4]="May"; month[5]="June"; month[6]="July"; month[7]="August"; month[8]="September"; month[9]="October"; month[10]="November"; month[11]="December"; //$$('ul[rel=' + year + ']').first().appear({ duration: 0.2 }); //$$('ul[rel=' + year + '] ul[rel=' + month[d.getMonth()] + ']').first().appear({ duration: 0.2 }); } Event.observe(window,'load',windowLoad);