Page 1 of 1

[Patch] Fix TFD filter in af_comics plugin

Posted: 08 Apr 2017, 20:05
by wbagdon
A while ago TFD changed the html for the comics page and broke the filter.
Here is a patch to show the comics in the feed again, as well as add Married to the Sea (sister site)

Code: Select all

diff --git a/plugins/af_comics/filters/af_comics_tfd.php b/plugins/af_comics/filters/af_comics_tfd.php
index d47c164..eeec28f 100644
--- a/plugins/af_comics/filters/af_comics_tfd.php
+++ b/plugins/af_comics/filters/af_comics_tfd.php
@@ -2,11 +2,12 @@
 class Af_Comics_Tfd extends Af_ComicFilter {

        function supported() {
-               return array("Toothpaste For Dinner");
+               return array("Toothpaste For Dinner", "Married to the Sea");
        }

        function process(&$article) {
-               if (strpos($article["link"], "toothpastefordinner.com") !== FALSE) {
+               if (strpos($article["link"], "toothpastefordinner.com") !== FALSE ||
+                   strpos($article["link"], "marriedtothesea.com") !== FALSE) {
                        $res = fetch_file_contents($article["link"], false, false, false,
                                false, false, 0,
                                "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)");
@@ -14,13 +15,13 @@ class Af_Comics_Tfd extends Af_ComicFilter {
                        if (!$res) return $article;

                        $doc = new DOMDocument();
-                       $doc->loadHTML($res);
-
+                       @$doc->loadHTML(fetch_file_contents($article["link"]));
+
                        $basenode = false;

                        if ($doc) {
                                $xpath = new DOMXPath($doc);
-                               $basenode = $xpath->query('//img[@class="comic"]')->item(0);
+                               $basenode = $xpath->query('//img[contains(@src, ".gif")]')->item(0);

                                if ($basenode) {
                                        $article["content"] = $doc->saveXML($basenode);

Re: [Patch] Fix TFD filter in af_comics plugin

Posted: 08 Apr 2017, 20:29
by fox
can you use gitlab pls?

Re: [Patch] Fix TFD filter in af_comics plugin

Posted: 10 Apr 2017, 16:03
by wbagdon
Sure, my Gitlab account is wbagdon if you can give me permissions to submit a merge request

Re: [Patch] Fix TFD filter in af_comics plugin

Posted: 10 Apr 2017, 16:32
by fox
you should have the permissions now