var crumbManager = new Class({
	Implements: Options,
	options: {
		'class': 'crumb',
		'container': 'crumbs',
		'root': {
			'text': 'Home',
			'url': '',
			'options': {}
		}
	},
	initialize: function(options){
		this.setOptions(options);
		this.wrapper = $(this.options.container);
		if($type(this.wrapper) == false)
		{
			this.wrapper = new Element('div');
		}
		this.add(this.options.root.text,this.options.root.url, this.options.root.options);
	},
	open: function(el)
	{
		if($type(el) != 'element')
		{
			return;
		}
		title = el.title;
		url = el.retrieve("url");
		options = el.retrieve("ajasOptions");
		document.ajaxer.request(url, options);
		el.getAllNext().dispose();
		return this;
	},
	add: function(text, url, options)
	{
		n = new Element('div', {'class': this.options.crumbClass});
		n.set('text', text);
		n.store("url", url);
		if($type(options) != 'object')
		{
			options = {};
		}
		n.store("ajasOptions", options);
		n.addEvent('click', function(e) {
			this.open(e.target);
		}.bind(this));
		n.inject(this.wrapper);
		return this;
	},
	clear: function(){
		this.wrapper.getFirst().getAllNext().dispose();
		return this;
	},
	replace: function(text, url, options){
		if(this.wrapper.getChildren().length == 1)
		{
			this.add(text,url,options);
		}
		n = this.wrapper.getLast();
		n.set('text', text);
		n.store("url", url);
		if($type(options) != 'object')
		{
			options = {};
		}
		n.store("ajasOptions", options);
		return this;
	}


});