
function toggleProfileOption(about_id,property,value,imgprefix) {
	var keys=['about_id','prop','val'];
	var vals=[about_id,property,value];
	var d=loadJSONDoc (
		'/profile/hide_bookmark?'+queryString(keys,vals) );
	d.addCallbacks (
		function(ret) {
			logDebug ( "Set Property",property,value );
			if (ret.flash) {
				flashBack(ret);
				return;
			}
			switch(property) {
				case 'bookmarked':
					swapDOM ( 'bookmarked_'+about_id,
						getBookmarkDom(about_id,1==value?true:false,imgprefix) );
					break;
				case 'hidden':
					swapDOM ( 'hidden_'+about_id,
						getHiddenDom(about_id,1==value?true:false,imgprefix) );
					break;
				default:
					logError ( "property not handled." ); 
			}
		},
		flashErrBack );
}

function getBookmarkDom(id,bookmarked,imgprefix) {
	//logDebug ( "Return dom for plan_id,bookmark",plan_id,bookmarked );
	return A ( {'href':"javascript:toggleProfileOption("+id+",'bookmarked',"+(bookmarked?'0':'1')+",'"+imgprefix+"')",
			'id':'bookmarked_'+id}, 
			IMG( {'src':imgprefix+(bookmarked?'':'_off')+'.gif',
			  'border':'0'
			  } ) )
}

function getHiddenDom(id,hidden,imgprefix) {
	return A ( {'href':"javascript:toggleProfileOption("+id+",'hidden',"+(hidden?'0':'1')+",'"+imgprefix+"')",
				'id':'hidden_'+id}, 
			IMG( {'src':imgprefix+(hidden?'':'_off')+'.gif',
			  'border':'0'
			  } ) )
}
