AccountingForms = {
	init: function() {
		this.infoHeader = $('info-header');
		this.list = new Element('ul');
		this.infoHeader.insert(this.list);
		this.processHeaders.bind(this).defer();
	},
	processHeaders: function() {
		var headers = $$('#sf-content h2')
		headers.each(function(el, index) {
			var name = 'af'+index;
			var a = new Element('a', {
				href: '#'+name
			});
			a.update(el.innerHTML);
			var li = new Element('li');
			li.update(a);
			if (headers.size() != index+1) {
				li.insert(' | ');
			}
			this.list.insert(li);
			var anchor = new Element('a', {
				name: name
			});
			el.insert({before: anchor});
		}, this);
//		this.list.linkify(this.scroll.bindAsEventListener(this));
	},
	scroll: function(e) {
		var el = e.element();
		if (el.match('a')) {
			var name = el.readAttribute('href').substr(1);
			var anchor = $$('a[name='+name+']').first();
			e.stop();
			Effect.ScrollTo(anchor, {
				queue: {
					scope: 'af',
					position: 'end',
					limit: 2
				}
			});
		}
	}
};

Event.observe(window, 'load', AccountingForms.init.bind(AccountingForms));
