/** * @param String $fileName * @param \Translate\Translate $translation */ public function __construct($fileName, $translation = null) { $this->fileName = dirname(__FILE__) . '/../../templates/' . $fileName; $this->load(); $this->translation = $translation; if (empty($this->translation)) { $this->translation = TranslateController::getDefault(); } return true; }
/** * render average temperature chart head for google charts * @return string */ public function chartHead() { $t = \Translate\Controller::getDefault(); $oTemplate = new Templater('chartHead.html'); /** * Data from OpenWeatherMap.org */ $oOpenWeatherMap = new \Model\OpenWeatherMap(); $aHistory = $oOpenWeatherMap->getHourAggregate(168, "ASC"); $oChartHourPressure = new \General\GoogleChart(); $oChartHourPressure->setTitle($t->get('Pressure') . " [hPa]"); $oChartHourPressure->setDomID('chartHourPressure'); $oChartHourPressure->add('Hour', array()); $oChartHourPressure->add('Min', array()); foreach ($aHistory as $oReadout) { $oChartHourPressure->push('Hour', Formater::formatTime($oReadout['Date'])); $oChartHourPressure->push('Min', number_format($oReadout['MinPressure'], 2, '.', '')); } $oTemplate->add('chartHourPressure', $oChartHourPressure->getHead()); $oChartHourWindSpeed = new \General\GoogleChart(); $oChartHourWindSpeed->setTitle($t->get('Wind speed') . " [m/s]"); $oChartHourWindSpeed->setDomID('chartHourWindSpeed'); $oChartHourWindSpeed->add('Hour', array()); $oChartHourWindSpeed->add('Min', array()); foreach ($aHistory as $oReadout) { $oChartHourWindSpeed->push('Hour', Formater::formatTime($oReadout['Date'])); $oChartHourWindSpeed->push('Min', number_format($oReadout['WindSpeed'], 2, '.', '')); } $oTemplate->add('chartHourWindSpeed', $oChartHourWindSpeed->getHead()); /* * Hour Aggregate charts */ $aHistory = $this->model->getHourAggregate(168, "ASC"); $oChartHourTemperature = new \General\GoogleChart(); $oChartHourTemperature->setTitle($t->get('Temperature') . " [C]"); $oChartHourTemperature->setDomID('chartHourTemperature'); $oChartHourTemperature->add('Hour', array()); $oChartHourTemperature->add('Avg', array()); $oChartHourHumidity = new \General\GoogleChart(); $oChartHourHumidity->setTitle($t->get('Humidity') . " [%]"); $oChartHourHumidity->setDomID('chartHourHumidity'); $oChartHourHumidity->add('Hour', array()); $oChartHourHumidity->add('Avg', array()); foreach ($aHistory as $oReadout) { $oChartHourTemperature->push('Hour', Formater::formatTime($oReadout['Date'])); $oChartHourTemperature->push('Avg', number_format($oReadout['Temperature'], 2)); $oChartHourHumidity->push('Hour', Formater::formatTime($oReadout['Date'])); $oChartHourHumidity->push('Avg', number_format($oReadout['Humidity'], 2)); } $oTemplate->add('chartHourTemperature', $oChartHourTemperature->getHead()); $oTemplate->add('chartHourHumidity', $oChartHourHumidity->getHead()); return (string) $oTemplate; }
/** * Zamiana bool na ciąg Tak/Nie * @param boolean $in * @return string */ public static function parseYesNo($in) { if (empty($in)) { return \Translate\Controller::getDefault()->get('Nie'); } else { return \Translate\Controller::getDefault()->get('Tak'); } }
/** * render average temperature chart head for google charts * @return string */ public function chartHead() { $t = \Translate\Controller::getDefault(); $oTemplate = new Templater('history-chartHead.html'); $oChartDailyPressure = new \General\GoogleChart(); $oChartDailyPressure->setTitle($t->get('Pressure')); $oChartDailyPressure->setDomID('chartDailyPressure'); $oChartDailyPressure->add('Hour', array()); $oChartDailyPressure->add('Avg', array()); $oChartDailyPressure->add('Max', array()); $oChartDailyPressure->add('Min', array()); foreach ($this->externalData as $oReadout) { $oChartDailyPressure->push('Hour', Formater::formatDate($oReadout['Date'])); $oChartDailyPressure->push('Avg', number_format($oReadout['Pressure'], 2, '.', '')); $oChartDailyPressure->push('Max', number_format($oReadout['MaxPressure'], 2, '.', '')); $oChartDailyPressure->push('Min', number_format($oReadout['MinPressure'], 2, '.', '')); } $oTemplate->add('chartDailyPressure', $oChartDailyPressure->getHead()); /* * Day aggregate charts */ $oChartDailyTemperature = new \General\GoogleChart(); $oChartDailyTemperature->setTitle($t->get('Temperature')); $oChartDailyTemperature->setDomID('chartDailyTemperature'); $oChartDailyTemperature->add('Day', array()); $oChartDailyTemperature->add('Avg', array()); $oChartDailyTemperature->add('Max', array()); $oChartDailyTemperature->add('Min', array()); $oChartDailyHumidity = new \General\GoogleChart(); $oChartDailyHumidity->setTitle($t->get('Humidity')); $oChartDailyHumidity->setDomID('chartDailyHumidity'); $oChartDailyHumidity->add('Day', array()); $oChartDailyHumidity->add('Avg', array()); $oChartDailyHumidity->add('Min', array()); foreach ($this->internalData as $oReadout) { $oChartDailyTemperature->push('Day', Formater::formatDate($oReadout['Date'])); $oChartDailyTemperature->push('Avg', number_format($oReadout['Temperature'], 2)); $oChartDailyTemperature->push('Max', number_format($oReadout['MaxTemperature'], 2)); $oChartDailyTemperature->push('Min', number_format($oReadout['MinTemperature'], 2)); $oChartDailyHumidity->push('Day', Formater::formatDate($oReadout['Date'])); $oChartDailyHumidity->push('Avg', number_format($oReadout['Humidity'], 2)); $oChartDailyHumidity->push('Min', number_format($oReadout['MinHumidity'], 2)); } $oTemplate->add('chartDailyTemperature', $oChartDailyTemperature->getHead()); $oTemplate->add('chartDailyHumidity', $oChartDailyHumidity->getHead()); return (string) $oTemplate; }