package fr.sophiacom.app;

import com.webobjects.appserver.WOActionResults;
import com.webobjects.appserver.WOComponent;
import com.webobjects.directtoweb.D2W;
import com.webobjects.directtoweb.ERD2WUtilities;
import com.webobjects.directtoweb.ListPageInterface;

import er.directtoweb.delegates.ERDBranchDelegate;
import er.directtoweb.pages.ERD2WListPage;
import fr.sophiacom.ynp.business.NODailyStatistic;

public class ListStatisticsController extends ERDBranchDelegate 
{
	public ListStatisticsController()
	{
		super();
	}
	
	private WOComponent _sender;

	private WOComponent sender() 
	{
		return _sender;
	}

	private void setSender(final WOComponent aSender) 
	{
		_sender = aSender;
	}
	
	// "Export To Excel"
	public WOActionResults exportToExcel(final WOComponent sender) 
	{
		String pageConfigurationName;
		setSender(sender);
		String entityName = ((ERD2WListPage) ERD2WUtilities.parentListPage(sender)).entityName();
		if (NODailyStatistic.Keys.ENTITY_NAME.equals(entityName))
			pageConfigurationName = "ListExcelNODailyStatistic";
		else
			pageConfigurationName = "ListExcelNOMonthlyStatistic";
		ListPageInterface lpi = (ListPageInterface) D2W.factory().pageForConfigurationNamed(pageConfigurationName, sender().session());
		lpi.setDataSource(((ERD2WListPage) ERD2WUtilities.parentListPage(sender)).dataSource());
		lpi.setNextPage(sender());
		return (WOActionResults) lpi;
	}
}
