private function getAnalyticsXml() { $categoriesVoting = DB::cache()->fetch('AdminAnalyticsCategoryVotes'); if (empty($categoriesVoting)) { $categoriesVoting = DB::CategoryVote()->getAllFrontend(); if (empty($categoriesVoting)) { $categoriesVoting = array(); } else { DB::cache()->save('AdminAnalyticsCategoryVotes', $categoriesVoting, 120); } } $nomineesVoting = DB::cache()->fetch('AdminAnalyticsNomineeVotes'); if (empty($nomineesVoting)) { $nomineesVoting = DB::NomineeVote()->getAnalyticsData(); if (empty($nomineesVoting)) { $nomineesVoting = array(); } else { DB::cache()->save('AdminAnalyticsNomineeVotes', $nomineesVoting, 120); } } $nominationVoting = DB::cache()->fetch('AdminAnalyticsNominationVotes'); if (empty($nominationVoting)) { $nominationVoting = DB::Nomination()->getAnalyticsData(); if (empty($nominationVoting)) { $nominationVoting = array(); } else { DB::cache()->save('AdminAnalyticsNominationVotes', $nominationVoting, 120); } } App::$inst->config('templates.path', $this->analyticsXmlPath); $xml = App::$inst->view->fetch($this->analyticsXmlFile, array('categoriesVoting' => $categoriesVoting, 'nomineesVoting' => $nomineesVoting, 'nominationVoting' => $nominationVoting)); $xmlmd5 = md5($xml); if (isset($this->state['xmlmd5']) && $this->state['xmlmd5'] != $xmlmd5) { $this->log('State was droped. Xml File changed'); $this->dropState(); } $this->state['xmlmd5'] = $xmlmd5; // $xml = simplexml_load_string($xml); return $xml; }