<?php
/**
 * @copyright (c) Kufer Software GmbH, Loisachstrasse 4, D-84453 Mühldorf
 */

namespace Kufer\KuferTools\Mitarbeiter\AdressInfo;

class ControllerFactory
{
  public function getController($pAction)
  {
    switch ($pAction) {
      default:
      case 'adressuebersicht':
        return new AdressUebersicht\AdressUebersichtController();
      case 'showFilterAdressUebersicht':
        return new AdressUebersicht\FilterAdressUebersicht\FilterAdressUebersichtController();
      case 'setFilterAdressUebersicht':
        return new AdressUebersicht\AdressUebersichtSetFilterController();
      case 'resetFilterAdressUebersicht':
        return new AdressUebersicht\AdressUebersichtResetFilterController();
      case 'adressdetails':
        return new AdressUebersicht\AdressDetails\AdressDetailsController();
      case 'merkeAdressDetailsReiter':
        return new \Kufer\KuferTools\Basis\Kursdetails\DetailsReiter\MerkeReiter\MerkeReiterController(\ToolsAPI::TOOL_ADRESSINFO_MA, 410);
      case 'reiterAdressdetails':
        return new AdressUebersicht\AdressDetails\Detailsreiter\AdressDetails\AdressDetailsController();
      case 'reiterFotos':
        return new AdressUebersicht\AdressDetails\Detailsreiter\Fotos\FotosController();

      case 'updateAdress':
        return new UpdateAdress\UpdateAdressController();
      case 'handleAdrUpdate':
        return new UpdateAdress\HandleAdressUpdate\HandleAdressUpdateController();
      case 'validate':
        return new \Kufer\KuferTools\Basis\ValidateBankData\ValidateBankDataController(\ToolsAPI::TOOL_ADRESSINFO_MA, 410);
      case 'newAdress':
        return new NewAdress\NewAdressController();
      case 'handleAdrInsert':
        return new NewAdress\HandleAdressInsert\HandleAdressInsertController();
    }
  }
}