Typo3 Extension – Template Rendering in Extensions

In der Typo3 Extension kann z.B. folgende Methode geschrieben werden:

	/**
	 * Renders a team using the specified template
	 *
	 * @param template the template to use
	 * @param resource the sql resource with the list of teams
	 *
	 * @return the template with the replaced markers
	 */
	function renderTeam($team) {
		// Load the roster template
		$templateFile = $this->cObj->fileResource($this->conf['rosterTemplate']);
		$templateCodeTeam = $this->cObj->getSubpart ($templateFile,'###TEAM###');

		$marker = array();
		$marker['###TEAMNAME###'] = $team->getName();
		$marker['###RACE###'] = $team->getRace();
		$marker['###TEAMVALUE###'] = 'yet to do';
		$marker['###TREASURY###'] = $team->getTreasury();
		$marker['###HEADCOACH_NAME###'] = $team->getHeadCoachName();
		$marker['###HEADCOACH_EMAIL###'] = $team->getHeadCoachEmail();
		$marker['###HEADCOACH_NICK###'] = $team->getHeadCoachNick();
		$marker['###HEADCOACH###'] = $this->getHeadCoachLink($team->getHeadCoachNick(),$team->getHeadCoachEmail());
		$marker['###RR###'] = $team->getRR();
		$marker['###RR_COST###'] = $team->getRRCost();
		$marker['###RR_SUM_COSTS###'] = $team->getRR() * $team->getRRCost();
		$marker['###FF###'] = $team->getFF();
		$marker['###FF_COST###'] = '10000';
		$marker['###FF_SUM_COSTS###'] = $team->getFF() * 10000;
		$marker['###ASSCOACH###'] = $team->getAssCoaches();
		$marker['###ASSCOACH_COSTS###'] = 10000;
		$marker['###ASSCOACH_SUM_COSTS###'] =  $team->getAssCoaches() * 10000;
		$marker['###CHEER###'] = $team->getCheerleaders();
		$marker['###CHEER_COSTS###'] = 10000;
		$marker['###CHEER_SUM_COSTS###'] = $team->getCheerleaders() * 10000;
		$marker['###APO###'] =  $team->getApothecary();
		$marker['###APO_COST###'] = 50000;
		$marker['###APO_SUM_COSTS###'] =$team->getApothecary() * 50000;
		$marker['###TEAM_VALUE###'] = $this->getTeamValue($team);
		$marker['###SPIRALLING_EXPENSES###']= $this->getSpiralingExpenses($team);

		// Render the players
		$templateCodeTeam = $this->cObj->substituteSubpart($templateCodeTeam,'###PLAYERS###', $this->renderPlayers($templateCodeTeam, $team->getPlayers(), $team->getRace()));		

		return $this->cObj->substituteMarkerArrayCached($templateCodeTeam, $marker);

	}

Subscribe to comments Comment | Trackback |
Post Tags: ,

Browse Timeline


Add a Comment


XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>