
function IAM_ajaxShowMore(postid, throbberurl, morepageurl, apea_fx, dur) {
	Element.hide('show-inline-more-' + postid);
	$('inline-more-notification-' + postid).innerHTML = 
		'<p align="center"><img src="' + throbberurl + '" alt="loading" /></p>';
	
	if ($('inline-more-' + postid).innerHTML.length > 1)
		IAM_ajaxDisplayWhenLoaded(postid, apea_fx, dur);
	else {
		ajaxedMore = 
			new Ajax.Updater(
				'inline-more-' + postid,
				morepageurl,
				{
					method: 'post',
					postBody: 'id=' + postid,
					onComplete: IAM_ajaxWaitForHide(postid, apea_fx, dur)
				}
			);
	}
}

function IAM_ajaxWaitForHide(postid, apea_fx, dur) {
		Element.hide('inline-more-' + postid);
		setTimeout("IAM_ajaxDisplayWhenLoaded(" + postid + ",'" + apea_fx + "',"+dur+")", 600);
}

function IAM_ajaxHideMore(postid, fade_fx, DEF_DUR) {
	more = ('inline-more-' + (postid));
	switch(fade_fx){
		case 'BlindUp':
			Effect.BlindUp(more,{duration: DEF_DUR});
			break;
		case 'SlideUp':
			Effect.SlideUp(more,{duration: DEF_DUR});
			break;
		case 'Squish':
			Effect.Squish(more,{duration: DEF_DUR});
			break;
		case 'Fold':
			Effect.Fold(more,{duration: DEF_DUR});
			break;
		case 'Shrink':
			Effect.Shrink(more,{duration: DEF_DUR});
			break;
		case 'DropOut':
			Effect.DropOut(more,{duration: DEF_DUR});
			break;
		case 'Puff':
			Effect.Puff(more,{duration: DEF_DUR});
			break;
		case 'SwitchOff':
			Effect.SwitchOff(more,{duration: DEF_DUR});
			break;
		case 'Fade':
		default:
			Effect.Fade(more,{duration: DEF_DUR});
			break;
	}
	$(more).blur();
	
	setTimeout("Element.show('show-inline-more-" + postid + "')", (DEF_DUR*1000));
	Element.hide('1-hide-inline-more-' + postid);
	Element.hide('2-hide-inline-more-' + postid);
}

function IAM_ajaxDisplayWhenLoaded(postid, apea_fx, DEF_DUR) {
	if ($('inline-more-' + postid).innerHTML.length < 100)
		setTimeout("IAM_ajaxDisplayWhenLoaded(" + postid + ",'" + apea_fx + "',"+DEF_DUR+")", 100);
	else{
		
		more = ('inline-more-' + (postid));
		switch(apea_fx){
			case 'BlindDown':
				Effect.BlindDown(more,{duration: DEF_DUR});
				break;
			case 'SlideDown':
				Effect.SlideDown(more,{duration: DEF_DUR});
				break;
			case 'Grow':
				Effect.Grow(more,{duration: DEF_DUR});
				break;
			case 'Appear':
			default:
				Effect.Appear(more,{duration: DEF_DUR});
				break;
		}
			
		$(more).blur();
		
		$('inline-more-notification-' + postid).innerHTML = '';
		Element.show('1-hide-inline-more-' + postid);
		Element.show('2-hide-inline-more-' + postid);
	}
}