public static function getAllMenus() { $fname = DIR_DATA . '/menus.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['menus']['group'] as $key => $value) { $entries[] = new MenuItem(array('name' => $value['name'], 'class' => $value['class'], 'link' => $value['link'])); } return $entries; }
public static function getAllDocuments() { $fname = DIR_DATA . '/documentation.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['documentation']['document'] as $key => $value) { $entries[] = new Document($value); } return $entries; }
public static function getAllCredits() { $fname = DIR_DATA . '/credits.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $sections = array(); foreach ($a['credits']['section'] as $key => $value) { $sections[] = new CSection($value); } return $sections; }
public static function getAllArticles() { $fname = DIR_DATA . '/press_articles.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['articles']['article'] as $key => $value) { $entries[] = new Article(array('name' => $value['name'], 'url' => $value['url'], 'language' => $value['language'], 'posted' => $value['posted'])); } return $entries; }
public static function getAllDownloads() { $fname = DIR_DATA . '/downloads.xml'; /* Now parse the data. */ $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $sections = array(); foreach ($a['downloads']['section'] as $key => $value) { $sections[] = new DSection($value); } return $sections; }
public static function getAllGroupsAndDemos() { $fname = DIR_DATA . '/game_demos.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['game_demos']['group'] as $key => $value) { $demos = array(); foreach ($value['demos']['demo'] as $data) { $demos[] = new GameDemo($data); } $entries[] = array('name' => $value['name'], 'href' => $value['href'], 'demos' => $demos); } return $entries; }
public static function getAllGroupsAndLinks() { $fname = DIR_DATA . '/links.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['external_links']['group'] as $key => $value) { /* Get all links. */ $links = array(); foreach ($value['link'] as $data) { $links[] = new WebLink($data); } $entries[] = array('name' => $value['name'], 'description' => $value['description'], 'links' => $links); } return $entries; }
public static function getAllScreenshots() { $fname = DIR_DATA . '/screenshots.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); BasicObject::toArray($a['screenshots']['group']); foreach ($a['screenshots']['group'] as $value) { BasicObject::toArray($value['game']); $games = array(); foreach ($value['game'] as $data) { $games[] = new Screenshot($data); } $entries[] = array('title' => $value['title'], 'category' => $value['category'], 'games' => $games); } return $entries; }
public static function getAllData($version) { if (!is_string($version)) { throw new ErrorException(self::NO_VERSION); } $fname = DIR_COMPAT . "/compat-{$version}.xml"; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); foreach ($a['compatibility']['company'] as $key => $value) { $games = array(); foreach ($value['games']['game'] as $data) { $games[] = new CompatGame($data); } $entries[$value['name']] = $games; } return $entries; }
public static function getAllSubprojects() { $fname = DIR_DATA . '/subprojects.xml'; $parser = new XMLParser(); $a = $parser->parseByFilename($fname); $entries = array(); BasicObject::toArray($a['subprojects']['project']); foreach ($a['subprojects']['project'] as $key => $value) { $downloads = array(); foreach ($value['entries'] as $type => $data) { if ($type == 'file') { BasicObject::toArray($data); foreach ($data as $file) { $downloads[] = new File($file); } } } $entries[] = new Project(array('name' => $value['name'], 'info' => $value['info'], 'downloads' => $downloads)); } return $entries; }