[Scummvm-git-logs] scummvm-web master -> 149d6372945925eace9b36d32615636f776a856d

Thunderforge wjherrmann at gmail.com
Sat Apr 4 22:44:20 UTC 2020


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm-web' repo located at https://github.com/scummvm/scummvm-web .

Summary:
149d637294 DATA: Converting Links data from XML to YAML


Commit: 149d6372945925eace9b36d32615636f776a856d
    https://github.com/scummvm/scummvm-web/commit/149d6372945925eace9b36d32615636f776a856d
Author: Thunderforge (wjherrmann at gmail.com)
Date: 2020-04-04T17:44:17-05:00

Commit Message:
DATA: Converting Links data from XML to YAML

Changed paths:
  A data/links.yaml
  R data/links.xml
    include/Models/LinksModel.php


diff --git a/data/links.xml b/data/links.xml
deleted file mode 100644
index 5378b424..00000000
--- a/data/links.xml
+++ /dev/null
@@ -1,116 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<external_links xmlns:h="http://www.w3.org/TR/html4/">
-	<group>
-		<name>Libraries & Technologies</name>
-		<description>The following lists some libraries and technologies ScummVM makes use of (depending on which system your run it and which configuration is chosen).</description>
-		<link>
-			<name>SDL</name>
-			<url>http://www.libsdl.org/</url>
-			<description>SDL (Simple DirectMedia Layer) is a cross-platform multimedia library, and used by the primary backend of ScummVM.</description>
-		</link>
-		<link>
-			<name>MAD</name>
-			<url>http://www.underbit.com/products/mad/</url>
-			<description>MAD is a high-quality MPEG (MP3) audio decoder. ScummVM optionally supports playback of CD tracks and other audio data encoded using MP3.</description>
-		</link>
-		<link>
-			<name>Ogg Vorbis</name>
-			<url>https://xiph.org/vorbis/</url>
-			<description>Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. ScummVM optionally supports playback of CD tracks and other audio data encoded using Ogg Vorbis.</description>
-		</link>
-		<link>
-			<name>FLAC</name>
-			<url>http://flac.sourceforge.net/</url>
-			<description>FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is similar to MP3, but lossless, meaning that audio is compressed in FLAC without any loss in quality. ScummVM optionally supports playback of CD tracks and other audio data encoded using FLAC.</description>
-		</link>
-		<link>
-			<name>Scale2x/3x/4x</name>
-			<url>http://scale2x.sourceforge.net/</url>
-			<description>Scale2x is a real-time graphics effect able to increase the size of small bitmaps guessing the missing pixels without blurring the images. ScummVM optionally supports enlarging the game graphics using this scaler.</description>
-		</link>
-		<link>
-			<name>hq2x/3x/4x</name>
-			<url>https://web.archive.org/web/20131114143602/http://www.hiend3d.com/hq3x.html</url>
-			<description>The hq2x/3x/4x filters form a family of fast, high-quality magnification filters. ScummVM optionally supports enlarging the game graphics using these scaler.</description>
-		</link>
-	</group>
-	<group>
-		<name>Other sites of interest</name>
-		<description>The following are links to sites that provide news and help on retro-gaming or are otherwise of interest.</description>
-		<link>
-			<name>VOGONS :: Very Old Games On New Systems</name>
-			<url>http://vogons.zetafleet.com/</url>
-			<description>VOGONS is a large forum site, offering supports and tips for people who need help running older classic games on their modern computers and operating systems. If you want to play a game that ScummVM doesn't support, this is the place to ask for help!</description>
-		</link>
-		<link>
-			<name>MixNMojo :: The Purple LucasArts Fan Site</name>
-			<url>http://www.mixnmojo.com/</url>
-			<description>MixNmojo is one of the longest running, and definitely largest, LucasArts sites out there. If your looking for information, hints, news... or even just a place to hang... with hosted and partnered sites catering for everything, the International House of Mojo should be your very first stop.</description>
-		</link>
-		<link>
-			<name>DoubleFine :: Where taking over the word is a news scripts job</name>
-			<url>http://www.doublefine.com/news.htm</url>
-			<description>DoubleFine is the company of the lovable Tim Schafer, the genius behind some of the best of the worst gags and games in LucasArts history. Go buy Psychonauts, their new game. Because if you don't, the rats will get you and eat your family, computer and house. And poop everywhere.</description>
-		</link>
-		<link>
-			<name>Revolution Software</name>
-			<url>http://www.revolution.co.uk/</url>
-			<description>Revolution Software are the people behind such wonderful titles as Beneath a Steel Sky and the Broken Sword series of games. Revolution have provided us with the source code to some of these games so that we can add support for them, and allowed us to release BASS as freeware. Thanks guys!</description>
-		</link>
-		<link>
-			<name>Grumpy Gamer</name>
-			<url>http://grumpygamer.com/</url>
-			<description>The personal blog of Ron Gilbert, the man behind many great LucasArts adventures, like Maniac Mansion and Monkey Island.</description>
-		</link>
-	</group>
-	<group>
-		<name>Other classic game engine open source projects</name>
-		<description>The following are links to other classic game engine open source projects similar to ScummVM. Know any other classic game projects that should be linked here? <h:a href="https://sourceforge.net/sendmessage.php?touser=339357">Let me know!</h:a></description>
-		<link>
-			<name>XU4 :: Ultima IV</name>
-			<url>http://xu4.sourceforge.net/</url>
-			<description>XU4 is the recreation of Ultima IV - Quest of the Avatar.</description>
-		</link>
-		<link>
-			<name>Nuvie :: Ultima VI</name>
-			<url>http://nuvie.sourceforge.net/</url>
-			<description>Nuvie, pronounced 'New-Vee' is an open sourced game engine for playing Origin's games Ultima 6, Martian Dreams and Savage Empire on modern operating systems.</description>
-		</link>
-		<link>
-			<name>Exult :: Ultima VII</name>
-			<url>http://exult.sourceforge.net/</url>
-			<description>Exult is the recreation of the Ultima VII engine used in <h:i>The Black Gate</h:i> and <h:i>The Serpent Isle</h:i></description>
-		</link>
-		<link>
-			<name>Pentagram :: Ultima VIII</name>
-			<url>http://pentagram.sourceforge.net/</url>
-			<description>Pentagram is a project aiming to create an Ultima 8 engine for use on modern operating systems.</description>
-		</link>
-		<link>
-			<name>ResidualVM</name>
-			<url>http://residualvm.org/</url>
-			<description>ResidualVM is a cross-platform interpreter which allows you to play LucasArts' LUA-based 3D adventures <h:i>Grim Fandango</h:i> and <h:i>Escape from Monkey Island</h:i>.</description>
-		</link>
-		<link>
-			<name>DOSBox</name>
-			<url>http://www.dosbox.com/</url>
-			<description>DOSBox does not really quite fit in here since it emulates a classic operating system (namely DOS) and
-			even a PC to run it on; but since it can be used to run many classic DOS games (at least if you are using a
-			sufficiently powerful desktop computer), we mention it here anyway. Plus it's a cool project, too :).</description>
-		</link>
-	</group>
-	<group>
-		<name>Technical information about SCUMM and other engines</name>
-		<description>SCUMM is a complex system that grew over many years. Understanding it can be quite difficult at times. Therefore we tried to collect some information about these engines in our <h:a href="http://wiki.scummvm.org">Wiki</h:a>. Sadly not everything is in there. But there are other sites out there that provide you with a bunch of information about some engines. Here are some of them.</description>
-		<link>
-			<name>SCUMM Hacking forum</name>
-			<url>http://www.lucasforums.com/forumdisplay.php?f=363</url>
-			<description>Information and discussion on resource formats used in LucasArts games.</description>
-		</link>
-		<link>
-			<name>AGI Development Site</name>
-			<url>http://www.agidev.com</url>
-			<description>Large amounts of information surrounding Sierra's AGI system and home of the NAGI AGI interpreter.</description>
-		</link>
-	</group>
-</external_links>
diff --git a/data/links.yaml b/data/links.yaml
new file mode 100644
index 00000000..ba00071e
--- /dev/null
+++ b/data/links.yaml
@@ -0,0 +1,74 @@
+# External links to other websites
+groups:
+  - name: "Libraries & Technologies"
+    description: "The following lists some libraries and technologies ScummVM makes use of (depending on which system your run it and which configuration is chosen)."
+    links:
+      - name: "SDL"
+        description: "SDL (Simple DirectMedia Layer) is a cross-platform multimedia library, and used by the primary backend of ScummVM."
+        url: "http://www.libsdl.org/"
+      - name: "MAD"
+        description: "MAD is a high-quality MPEG (MP3) audio decoder. ScummVM optionally supports playback of CD tracks and other audio data encoded using MP3."
+        url: "http://www.underbit.com/products/mad/"
+      - name: "Ogg Vorbis"
+        description: "Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. ScummVM optionally supports playback of CD tracks and other audio data encoded using Ogg Vorbis."
+        url: "https://xiph.org/vorbis/"
+      - name: "FLAC"
+        description: "FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is similar to MP3, but lossless, meaning that audio is compressed in FLAC without any loss in quality. ScummVM optionally supports playback of CD tracks and other audio data encoded using FLAC."
+        url: "http://flac.sourceforge.net/"
+      - name: "Scale2x/3x/4x"
+        description: "Scale2x is a real-time graphics effect able to increase the size of small bitmaps guessing the missing pixels without blurring the images. ScummVM optionally supports enlarging the game graphics using this scaler."
+        url: "http://scale2x.sourceforge.net/"
+      - name: "hq2x/3x/4x"
+        description: "The hq2x/3x/4x filters form a family of fast, high-quality magnification filters. ScummVM optionally supports enlarging the game graphics using these scaler."
+        url: "https://web.archive.org/web/20131114143602/http://www.hiend3d.com/hq3x.html"
+
+  - name: "Other sites of interest"
+    description: "The following are links to sites that provide news and help on retro-gaming or are otherwise of interest."
+    links:
+      - name: "VOGONS :: Very Old Games On New Systems"
+        description: "VOGONS is a large forum site, offering supports and tips for people who need help running older classic games on their modern computers and operating systems. If you want to play a game that ScummVM doesn't support, this is the place to ask for help!"
+        url: "http://vogons.zetafleet.com/"
+      - name: "MixNMojo :: The Purple LucasArts Fan Site"
+        description: "MixNmojo is one of the longest running, and definitely largest, LucasArts sites out there. If your looking for information, hints, news... or even just a place to hang... with hosted and partnered sites catering for everything, the International House of Mojo should be your very first stop."
+        url: "http://www.mixnmojo.com/"
+      - name: "DoubleFine :: Where taking over the word is a news scripts job"
+        description: "DoubleFine is the company of the lovable Tim Schafer, the genius behind some of the best of the worst gags and games in LucasArts history. Go buy Psychonauts, their new game. Because if you don't, the rats will get you and eat your family, computer and house. And poop everywhere."
+        url: "http://www.doublefine.com/news.htm"
+      - name: "Revolution Software"
+        description: "Revolution Software are the people behind such wonderful titles as Beneath a Steel Sky and the Broken Sword series of games. Revolution have provided us with the source code to some of these games so that we can add support for them, and allowed us to release BASS as freeware. Thanks guys!"
+        url: "http://www.revolution.co.uk/"
+      - name: "Grumpy Gamer"
+        description: "The personal blog of Ron Gilbert, the man behind many great LucasArts adventures, like Maniac Mansion and Monkey Island."
+        url: "http://grumpygamer.com/"
+
+  - name: "Other classic game engine open source projects"
+    description: "The following are links to other classic game engine open source projects similar to ScummVM. Know any other classic game projects that should be linked here? <a href=\"https://sourceforge.net/sendmessage.php?touser=339357\">Let me know!</a>"
+    links:
+      - name: "XU4 :: Ultima IV"
+        description: "XU4 is the recreation of Ultima IV - Quest of the Avatar."
+        url: "http://xu4.sourceforge.net/"
+      - name: "Nuvie :: Ultima VI"
+        description: "Nuvie, pronounced 'New-Vee' is an open sourced game engine for playing Origin's games Ultima 6, Martian Dreams and Savage Empire on modern operating systems."
+        url: "http://nuvie.sourceforge.net/"
+      - name: "Exult :: Ultima VII"
+        description: "Exult is the recreation of the Ultima VII engine used in <i>The Black Gate</i> and <i>The Serpent Isle</i>"
+        url: "http://exult.sourceforge.net/"
+      - name: "Pentagram :: Ultima VIII"
+        description: "Pentagram is a project aiming to create an Ultima 8 engine for use on modern operating systems."
+        url: "http://pentagram.sourceforge.net/"
+      - name: "ResidualVM"
+        description: "ResidualVM is a cross-platform interpreter which allows you to play LucasArts' LUA-based 3D adventures <i>Grim Fandango</i> and <i>Escape from Monkey Island</i>."
+        url: "http://residualvm.org/"
+      - name: "DOSBox"
+        description: "DOSBox does not really quite fit in here since it emulates a classic operating system (namely DOS) and even a PC to run it on; but since it can be used to run many classic DOS games (at least if you are using a sufficiently powerful desktop computer), we mention it here anyway. Plus it's a cool project, too :)."
+        url: "http://www.dosbox.com/"
+
+  - name: "Technical information about SCUMM and other engines"
+    description: "SCUMM is a complex system that grew over many years. Understanding it can be quite difficult at times. Therefore we tried to collect some information about these engines in our <a href=\"http://wiki.scummvm.org\">Wiki</a>. Sadly not everything is in there. But there are other sites out there that provide you with a bunch of information about some engines. Here are some of them."
+    links:
+      - name: "SCUMM Hacking forum"
+        description: "Information and discussion on resource formats used in LucasArts games."
+        url: "http://www.lucasforums.com/forumdisplay.php?f=363"
+      - name: "AGI Development Site"
+        description: "Large amounts of information surrounding Sierra's AGI system and home of the NAGI AGI interpreter."
+        url: "http://www.agidev.com"
diff --git a/include/Models/LinksModel.php b/include/Models/LinksModel.php
index dd7b010e..e8845d6e 100644
--- a/include/Models/LinksModel.php
+++ b/include/Models/LinksModel.php
@@ -2,7 +2,6 @@
 namespace ScummVM\Models;
 
 use ScummVM\Objects\WebLink;
-use ScummVM\XMLParser;
 
 /**
  * The LinksModel class will generate WebLink objects.
@@ -13,14 +12,13 @@ abstract class LinksModel extends BasicModel
     /* Get all the groups and the respectively demos. */
     public static function getAllGroupsAndLinks()
     {
-        $fname = DIR_DATA . '/links.xml';
-        $parser = new XMLParser();
-        $parsedData = $parser->parseByFilename($fname);
+        $fname = DIR_DATA . '/links.yaml';
+        $parsedData = \yaml_parse_file($fname);
         $entries = array();
-        foreach (array_values($parsedData['external_links']['group']) as $value) {
+        foreach (array_values($parsedData['groups']) as $value) {
             /* Get all links. */
             $links = array();
-            foreach ($value['link'] as $data) {
+            foreach ($value['links'] as $data) {
                 $links[] = new WebLink($data);
             }
             $entries[] = array(




More information about the Scummvm-git-logs mailing list