aboutsummaryrefslogtreecommitdiff
path: root/source/javascripts/octopress.js
blob: 237163511eda7c854a42b9ddee8a8780b34ec27e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
window.addEvent('domready', function() {
  codeblocks = $$('div.highlight');
  codeblocks.each(addExpander);
  enableCompressedLayout(codeblocks);
});

function addExpander(div){
  new Element('span',{
		html: 'expand »',
		'class': 'pre_expander',
    'events': {
      'click': function(){
        toggleExpander();
      }
    }
	}).inject(div, 'top');
}
function toggleExpander(){
  var html = '';
  if($('main').toggleClass('expanded').hasClass('expanded'))
    html = '« contract';
  else
    html = 'expand »';
  $$('div.highlight span.pre_expander').each(function(span){
      span.set('html',html);
  });
}
function enableCompressedLayout(codeblocks){
  if(!codeblocks.length) return;
  new Element('span',{
		html: 'Collapse layout',
		'id': 'collapser',
    'events': {
      'click': function(){
        if($('page').toggleClass('collapsed').hasClass('collapsed'))
          this.set('html','Expand layout');
        else
          this.set('html','Collapse layout');
      }
    }
	}).inject($('main'), 'top');
}