garybuhrmaster / tv_grab_zz_sdjson_sqlite

XMLTV grabber for Schedules Direct JSON service
GNU General Public License v2.0
6 stars 8 forks source link

Add Command Line Option to disable writing channel logo to xml #5

Closed bonelifer closed 7 years ago

bonelifer commented 7 years ago

I use specific icons for my channels, some of which are not redistributable. Right now I'd have to do a dump of the channel logos sql and re-run it against the db every time I run tv_grab_zz_sdjson_sqlite. As is, mythtv substitutes in the icons written to the xml for the ones already in the db when the xml file is imported. It'd be nice if there were a "skip-write-channel-logos" option.

garybuhrmaster commented 7 years ago

My first thought is that this is not a grabber issue. Choosing to replace channel icons (choosing to use/replace any data) is really up to the app, as an XMLTV grabber does not specify which data will be used (it just provides the data). Mythfilldatabase does have a "--only-update-guide" option which will not replace the icons (or update channels). One should also be able to use an xsltproc filter(*) to remove items one does not want to process (there are some instructions on the MythTV wiki about using xsltproc for other purposes). You could also consider opening a feature request with the MythTV project if you do not want icons loaded but --only-update-guide is not sufficient for your needs (my guess is it might only take you a few dozen lines of code to provide a patch to the project).

(*) A very lightly tested stylesheet to remove icons from the channel data might be:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="node() | @*">
    <xsl:copy>
        <xsl:apply-templates select="node() | @*"/>
    </xsl:copy>
</xsl:template>
<xsl:template match="channel//icon"/>
</xsl:stylesheet>
garybuhrmaster commented 7 years ago

While performing other code review, the ability for fixups to be applied for specific application issues via an environment variable has been made available (see fixups.txt in the repo for details). A fixup for not supplying logos has been added. Fixups are intended to be a time limited capability until the application can be updated, and may be removed from this grabber at some future time. It should be noted that a feature request for not updating logos was added to MythTV, and you should work to have that move forward for long term support for your desired capability (if you do not have the coding ability, perhaps find someone else interested via the community). Thank you for your report.