var commentFieldController = {
	init:function(){
		this.listfield = $("addition-comments");
		
		this.FIELD_HEIGHT = Element.getHeight("addition-comments");
		this.container_height = Element.getHeight("addition-comments-inner");
		
		this.page_num = Math.ceil(this.FIELD_HEIGHT / this.container_height);
		
		this.changePage(0);
		
	},
	
	changePage:function(_page_id){
		this.scrollList(_page_id);
	},
	
	browsePage:function(vec){
		
		switch(vec){
			case "+":
				++this.headpage_id;
				this.changePage(this.headpage_id);
			break;
			case "-":
				--this.headpage_id ;
				this.headpage_id  = Math.max(this.headpage_id ,0);
				this.changePage(this.headpage_id);
			break;
			default:
			break;
		}
		
	},
	
	scrollList:function(_headpage_id,callback){
		
		//クリア
		this.clearScrollList();
		
		//バリデート
		_headpage_id = (_headpage_id<=0) ? 0 : _headpage_id;
		_headpage_id = (_headpage_id>=this.page_num) ? this.page_num : _headpage_id;
		
		//idの更新
		this.headpage_id = _headpage_id;
		
		//移動
		var dist_y = _headpage_id*this.FIELD_HEIGHT;
		if (_headpage_id >= this.page_num) {
			//alert (this.container_height);
			dist_y = Math.min(dist_y, (this.container_height - this.FIELD_HEIGHT))+5;
		}
		
		//スクロール設定＆開始
		this.tw_scroll = new Tween(this.listfield,"scrollTop",Tween.strongEaseOut,this.listfield.scrollTop,dist_y,0.5);
		this.tw_scroll.onMotionFinished = function(){
			if (callback){
				callback();
			}
		}
		this.tw_scroll.start();
	},
	
	clearScrollList:function(){
		if (this.tw_scroll) {
			this.tw_scroll.stop();
			delete this.tw_scroll;
		}
	}
}

var trackbackFieldController = {
	init:function(){
		this.listfield = $("addition-trackbacks");
		
		this.FIELD_HEIGHT = Element.getHeight("addition-trackbacks");
		this.container_height = Element.getHeight("addition-trackbacks-inner");
		
		this.page_num = Math.ceil(this.FIELD_HEIGHT / this.container_height);
		
		this.changePage(0);
		
	},
	
	changePage:function(_page_id){
		this.scrollList(_page_id);
	},
	
	browsePage:function(vec){
		
		switch(vec){
			case "+":
				++this.headpage_id;
				this.changePage(this.headpage_id);
			break;
			case "-":
				--this.headpage_id ;
				this.headpage_id  = Math.max(this.headpage_id ,0);
				this.changePage(this.headpage_id);
			break;
			default:
			break;
		}
		
	},
	
	scrollList:function(_headpage_id,callback){
		
		//クリア
		this.clearScrollList();
		
		//バリデート
		_headpage_id = (_headpage_id<=0) ? 0 : _headpage_id;
		_headpage_id = (_headpage_id>=this.page_num) ? this.page_num : _headpage_id;
		
		//idの更新
		this.headpage_id = _headpage_id;
		
		//移動
		var dist_y = _headpage_id*this.FIELD_HEIGHT;
		if (_headpage_id >= this.page_num) {
			//alert (this.container_height);
			dist_y = Math.min(dist_y, (this.container_height - this.FIELD_HEIGHT))+5;
		}
		
		//スクロール設定＆開始
		this.tw_scroll = new Tween(this.listfield,"scrollTop",Tween.strongEaseOut,this.listfield.scrollTop,dist_y,0.5);
		this.tw_scroll.onMotionFinished = function(){
			if (callback){
				callback();
			}
		}
		this.tw_scroll.start();
	},
	
	clearScrollList:function(){
		if (this.tw_scroll) {
			this.tw_scroll.stop();
			delete this.tw_scroll;
		}
	}
}


