Changeset 12090


Ignore:
Timestamp:
Dec 7, 2011, 11:58:44 AM (9 years ago)
Author:
madie
Message:

[ipk] update crossepg

Location:
ipk
Files:
65 added
53 edited
2 moved

Legend:

Unmodified
Added
Removed
  • ipk/source.sh4/swapepg_crossepg/CONTROL/control

    r7451 r12090  
    11Package: enigma2-plugin-swapepg-crossepg
    2 Version: 0.61
     2Version: 0.62
    33Architecture: sh4
    44OE: CrossEPG by sandro cavazzoni for SKYit, SKYuk, AUsat
  • ipk/source.sh4/swapepg_crossepg/CONTROL/preinst

    r11789 r12090  
    2525        exit 1
    2626fi
    27 echo "swapstick found...."
     27echo "swapstick found...." 
    2828
    29 if [ `df | grep /dev/mtdblock | grep var | sed 's/ \+/ /g' | cut -d ' ' -f4 | tail -n1 | wc -l` -eq 1 ]; then
    30         SPACE=`df | grep /dev/mtdblock | grep var | sed 's/ \+/ /g' | cut -d ' ' -f4 | tail -n1`
    31         FREE=`expr $SPACE - 100`
    32         SIZE=307
    33         echo "checking freespace"
    34         echo packege size $SIZE kb
    35         echo freespace size $FREE kb
    36         if  [ "$FREE" -lt "$SIZE" ]; then
    37                 echo "sorry no freespace left on device"
    38                 exit 1
    39         else
    40                 echo ok
    41         fi
    42 fi   
    43 echo "installing CrossEPG 0.61 for Swapstick..."
    4429buildgroup=`cat /etc/.buildgroup`
    4530echo "checking OS"       
     
    5237        exit 1           
    5338fi
     39
     40echo "installing CrossEPG for Swapstick..."
     41sync
     42
    5443exit 0
  • ipk/source.sh4/swapepg_crossepg/CONTROL/prerm

    r7451 r12090  
    1111        echo freespace size $FREE kb
    1212fi
    13 echo "removing CrossEPG v0.61"
     13echo "removing CrossEPG...."
    1414exit 0
  • ipk/source.sh4/swapepg_crossepg/var/swap/crossepg/crossepg_epgmove.sh

    r7451 r12090  
    99fi
    1010
     11if [ -f "/etc/enigma2/settings" ] # if enigma2 configuration exist
     12then
     13        EPGDAT=`cat /etc/enigma2/settings | grep "config\.misc\.epgcache_filename=" | sed "s/config\.misc\.epgcache_filename=//"`
     14else # else default path
     15        EPGDAT="/hdd/epg.dat"
     16fi
     17
     18if [ ! -n "$EPGDAT" ]
     19then
     20        EPGDAT="/hdd/epg.dat"
     21fi
     22
    1123if [ -f "$DBROOT/ext.epg.dat" ] # try on configuration path
    1224then
    1325        echo copying ext.epg.dat from $DBROOT
    14         $HOME/crossepg_epgcopy "$DBROOT/ext.epg.dat" /hdd/epg.dat
     26        $HOME/crossepg_epgcopy "$DBROOT/ext.epg.dat" $EPGDAT
    1527elif [ -f "/hdd/crossepg/ext.epg.dat" ] # if we have a bad path try with default path
    1628then
  • ipk/source.sh4/swapepg_crossepg/var/swap/crossepg/providers/krkadoni_exyu_xmltv.conf

    r7451 r12090  
    11description=Krkadoni ExYu XMLTV
    22protocol=xmltv
    3 channels=http://www.krkadoni.com/krkadoni.channels.xml.gz
    4 url=http://krkadoni.com/krkadonixmltv_exyu.gz
     3channels_url_0=http://www.krkadoni.com/krkadoni.channels.xml.gz
     4epg_url_0=http://krkadoni.com/krkadonixmltv_exyu.gz
    55preferred_language=eng
  • ipk/source.sh4/swapepg_crossepg/var/swap/crossepg/providers/linuxsat_exussr_xmltv.conf

    r7451 r12090  
    11description=Linuxsat ExUSSR XMLTV
    22protocol=xmltv
    3 channels=http://linux-sat.tv/epg/ls.channels.xml.gz
    4 url=http://linux-sat.tv/epg/tvprogram_ua_ru.gz
     3channels_url_0=http://linux-sat.tv/epg/ls.channels.xml.gz
     4epg_url_0=http://linux-sat.tv/epg/tvprogram_ua_ru.gz
    55preferred_language=eng
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_about.py

    r7451 r12090  
    5454                        version = "unknow version"
    5555
    56                 credit = "SIFTeam CrossEPG %s (c) 2009-2010 Sandro Cavazzoni\n" % version
     56                credit = "SIFTeam CrossEPG %s (c) 2009-2011 Sandro Cavazzoni\n" % version
    5757                credit += "http://code.google.com/p/crossepg/\n\n"
    5858                credit += "Application credits:\n"
    5959                credit += "- Sandro Cavazzoni aka skaman (main developer)\n"
    6060                credit += "- Ambrosa (scripts developer)\n"
     61                credit += "- Sergiotas (mhw2epgdownloader author)\n"
     62                credit += "- u Killer Bestia (server side application maintainer)\n"
    6163                credit += "- Spaeleus (italian translations)\n"
    62                 credit += "- Bodyan (ukrainian translations)\n\n"
     64                credit += "- Bodyan (ukrainian translations)\n"
     65                credit += "- Kosmacz (polish translations)\n"
     66                credit += "- Ku4a (russian translations)\n\n"
    6367                credit += "Sources credits:\n"
    6468                credit += "- Rytec http://www.rytec.be (xmltv providers for many countries)\n"
    65                 credit += "- Krkadoni http://www.krkadoni.com/ (xmltv provider for Ex Yugoslavia and various xepgdb sources maintainer)\n"
    66                 credit += "- Bodyan and dillinger http://linux-sat.tv/ (xmltv provider for ex USSR channels)"
     69                credit += "- Krkadoni http://www.krkadoni.com/ (xmltv provider for Ex Yugoslavia)\n"
     70                credit += "- Bodyan and dillinger http://linux-sat.tv/ (xmltv provider for ex USSR channels)\n"
     71                credit += "- Devilcosta http://sgcpm.com/ (xmltv provider for nova channels in greek and english)"
    6772                self["about"].setText(credit)
    6873
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_loader.py

    r7451 r12090  
    139139       
    140140        def loadEPG(self):
    141                 cmd = "%s/crossepg_epgcopy %s/ext.epg.dat /hdd/epg.dat" % (self.home_directory, self.db_root)
     141                try:
     142                        cmd = "%s/crossepg_epgcopy %s/ext.epg.dat %s" % (self.home_directory, self.db_root, config.misc.epgcache_filename.value)
     143                except Exception, e:
     144                        cmd = "%s/crossepg_epgcopy %s/ext.epg.dat /hdd/epg.dat" % (self.home_directory, self.db_root)
     145                       
    142146                print "[CrossEPG_Loader] %s" % (cmd)
    143147                os.system(cmd)
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_main.py

    r7451 r12090  
    1616                self.patchtype = getEPGPatchType()
    1717               
    18         def downloader(self, session, **kwargs):
     18        def downloader(self, session):
    1919                self.session = session
    2020                crossepg_auto.lock = True
     
    2626                        self.config.deleteLog()
    2727                        self.session.openWithCallback(self.downloadCallback, CrossEPG_Downloader, self.config.providers)
     28
     29        def loaderAsPlugin(self, session):
     30                self.session = session
     31                crossepg_auto.lock = True
     32                crossepg_auto.stop()
     33                self.loader()
    2834
    2935        def downloadCallback(self, ret):
     
    7379                crossepg_auto.lock = False
    7480
    75         def setup(self, session, **kwargs):
     81        def setup(self, session):
    7682                crossepg_auto.lock = True
    7783                crossepg_auto.stop()
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_menu.py

    r7451 r12090  
    1111from crossepg_loader import CrossEPG_Loader
    1212from crossepg_ordering import CrossEPG_Ordering
     13from crossepg_rytec_update import CrossEPG_Rytec_Update
     14from crossepg_xepgdb_update import CrossEPG_Xepgdb_Update
    1315from crossepg_locale import _
    1416
     
    5860                l.append(self.buildListEntry(_("XEPGDB providers"), "xepgdb.png"))
    5961                l.append(self.buildListEntry(_("Scripts providers"), "scripts.png"))
     62                l.append(self.buildListEntry(_("MHW2 providers"), "opentv.png"))
    6063                l.append(self.buildListEntry(_("Providers start order"), "reorder.png"))
     64                l.append(self.buildListEntry(_("Update rytec providers"), "rytec_small.png"))
     65                l.append(self.buildListEntry(_("Update xepgdb providers"), "xepgdb.png"))
    6166                l.append(self.buildListEntry(_("Download now"), "download.png"))
    6267                l.append(self.buildListEntry(_("Force csv import now"), "csv.png"))
     
    105110                        self.session.open(CrossEPG_Providers, "script")
    106111                elif index == 5:
     112                        self.session.open(CrossEPG_Providers, "mhw2")
     113                elif index == 6:
    107114                        self.session.open(CrossEPG_Ordering)
    108                 elif index == 6:
     115                elif index == 7:
     116                        self.session.open(CrossEPG_Rytec_Update)
     117                elif index == 8:
     118                        self.session.open(CrossEPG_Xepgdb_Update)
     119                elif index == 9:
    109120                        self.config.load()
    110121                        self.config.deleteLog()
    111122                        self.downloader()
    112                 elif index == 7:
     123                elif index == 10:
    113124                        self.importer()
    114                 elif index == 8:
     125                elif index == 11:
    115126                        self.converter()
    116                 elif index == 9:
     127                elif index == 12:
    117128                        self.loader()
    118                 elif index == 10:
     129                elif index == 13:
    119130                        self.session.open(CrossEPG_Info)
    120                 elif index == 11:
     131                elif index == 14:
    121132                        self.session.open(CrossEPG_About)
    122133               
     
    158169                                if self.config.download_manual_reboot:
    159170                                        from Screens.Standby import TryQuitMainloop
    160                                         session.open(TryQuitMainloop, 3)
     171                                        self.session.open(TryQuitMainloop, 3)
    161172
    162173        def loader(self):
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_providers.py

    r7451 r12090  
    6363                elif self.protocol == "xepgdb":
    6464                        self.setTitle("CrossEPG - XEPGDB providers")
    65                 elif self.protocol == "scripts":
     65                elif self.protocol == "script":
    6666                        self.setTitle("CrossEPG - Scripts providers")
     67                elif self.protocol == "mhw2":
     68                        self.setTitle("CrossEPG - MHW2 providers")
    6769
    6870        def buildList(self):
    6971                self.list = []
    7072                i = 0
     73                protocol = self.protocol
     74                if protocol == "mhw2":
     75                        protocol = "script"
     76                print protocol
     77                print self.protocol
    7178                for provider in self.providers[0]:
    72                         if self.providers[2][i] == self.protocol:
    73                                 self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     79                        if self.providers[2][i] == protocol:
     80                                if protocol == "script":
     81                                        description = self.providers[1][i].lower()
     82                                        # we use find("mhw2") as workaround because mhw2 doesn't exist as provider type
     83                                        if self.protocol == "mhw2" and description.find("mhw2") != -1:
     84                                                self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     85                                        elif self.protocol == "script" and description.find("mhw2") == -1:
     86                                                self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     87                                else:
     88                                        self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
    7489                        i += 1
    7590
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepg_setup.py

    r7451 r12090  
    44from Screens.MessageBox import MessageBox
    55
    6 from Components.config import KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_0, ConfigYesNo, ConfigSelection, ConfigClock
     6from Components.config import KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_0, ConfigYesNo, ConfigSelection, ConfigClock, config, configfile
    77from Components.ConfigList import ConfigList
    88from Components.Button import Button
     
    2121
    2222from time import *
     23
     24import os
    2325
    2426class CrossEPG_Setup(Screen):
     
    5355                self.show_extension = self.config.show_extension
    5456                self.show_plugin = self.config.show_plugin
     57                self.show_force_reload_as_plugin = self.config.show_force_reload_as_plugin
    5558
    5659                # make devices entries
     
    6063
    6164                for partition in harddiskmanager.getMountedPartitions():
    62                         if (partition.mountpoint != '/') and (partition.mountpoint != ''): # and self.isMountedInRW(partition.mountpoint):
     65                        if (partition.mountpoint != '/') and (partition.mountpoint != '') and self.isMountedInRW(partition.mountpoint):
    6366                                self.mountpoint.append(partition.mountpoint + "/crossepg")
    6467
     
    114117                self.makeList()
    115118
     119        def isMountedInRW(self, path):
     120                testfile = path + "/tmp-rw-test"
     121                os.system("touch " + testfile)
     122                if os.path.exists(testfile):
     123                        os.system("rm -f " + testfile)
     124                        return True
     125                return False
     126               
    116127        def showWarning(self): 
    117128                self.session.open(MessageBox, _("PLEASE READ!\nNo disk found. An hard drive or an usb pen is HARDLY SUGGESTED. If you still want use your internal flash pay attention to:\n(1) If you don't have enough free space your box may completely block and you need to flash it again\n(2) Many write operations on your internal flash may damage your flash memory"), type = MessageBox.TYPE_ERROR)
     
    188199                self.list.append((_("Show as plugin"), ConfigYesNo(self.config.show_plugin > 0)))
    189200                self.list.append((_("Show as extension"), ConfigYesNo(self.config.show_extension > 0)))
     201                self.list.append((_("Show 'Force reload' as plugin"), ConfigYesNo(self.config.show_force_reload_as_plugin > 0)))
    190202
    191203                self["config"].setList(self.list)
     
    233245                self.config.show_plugin = int(self.list[i][1].getValue())
    234246                self.config.show_extension = int(self.list[i+1][1].getValue())
     247                self.config.show_force_reload_as_plugin = int(self.list[i+2][1].getValue())
    235248
    236249                if redraw:
     
    247260
    248261                if index == 0:
    249                         self["information"].setText(_("Drive where you save data.\nThe drive MUST be mounted in rw"))
     262                        self["information"].setText(_("Drive where you save data.\nThe drive MUST be mounted in rw. If you can't see your device here probably is mounted as read only or autofs handle it only in read only mode. In case of mount it manually and try again"))
    250263                elif index == 1:
    251264                        self["information"].setText(_("Lamedb used for epg.dat conversion.\nThis option doesn't work with crossepg patch v2"))
     
    279292                self.config.configured = 1
    280293                self.config.save()
     294                try:
     295                        if self.config.db_root[-8:] == "crossepg":
     296                                config.misc.epgcache_filename.setValue(self.config.db_root[:-9] + "/epg.dat")
     297                        else:
     298                                config.misc.epgcache_filename.setValue(self.config.db_root + "/epg.dat")
     299                        config.misc.epgcache_filename.callNotifiersOnSaveAndCancel = True
     300                        config.misc.epgcache_filename.save()
     301                        configfile.save()
     302                except Exception, e:
     303                        print "custom epgcache filename not supported by current enigma2 version"
     304                       
     305                if getEPGPatchType() == -1:
     306                        # exec crossepg_prepare_pre_start for unpatched images
     307                        os.system(self.config.home_directory + "/crossepg_prepare_pre_start.sh")
     308                       
    281309                if self.show_extension != self.config.show_extension or self.show_plugin != self.config.show_plugin:
    282310                        for plugin in plugins.getPlugins(PluginDescriptor.WHERE_PLUGINMENU):
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/crossepglib.py

    r7451 r12090  
    6161        show_plugin = 1
    6262        show_extension = 1
     63        show_force_reload_as_plugin = 0
    6364        last_partial_download_timestamp = 0
    6465        last_full_download_timestamp = 0
     
    127128                                                elif key == "show_extension":
    128129                                                        self.show_extension = int(value);
     130                                                elif key == "show_force_reload_as_plugin":
     131                                                        self.show_force_reload_as_plugin = int(value);
    129132                                                elif key == "configured":
    130133                                                        self.configured = int(value);
     
    163166                f.write("show_plugin=%d\n" % (self.show_plugin))
    164167                f.write("show_extension=%d\n" % (self.show_extension))
     168                f.write("show_force_reload_as_plugin=%d\n" % (self.show_force_reload_as_plugin))
    165169                f.write("configured=%d\n" % (self.configured))
    166170               
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/plugin.py

    r7451 r12090  
    1010                return []
    1111
     12def call_downloader(session, **kwargs):
     13        crossepg_main.downloader(session)
     14       
     15def call_loaderAsPlugin(session, **kwargs):
     16        crossepg_main.loaderAsPlugin(session)
     17       
     18def call_setup(session, **kwargs):
     19        crossepg_main.setup(session)
     20       
     21def call_autostart(reason, session):
     22        crossepg_main.autostart(reason, session)
     23       
    1224def Plugins(**kwargs):
    1325        config = CrossEPG_Config()
     
    1830                                                                                description=_("An EPG downloader"),
    1931                                                                                where = [ PluginDescriptor.WHERE_EXTENSIONSMENU, PluginDescriptor.WHERE_PLUGINMENU ],
    20                                                                                 fnc = crossepg_main.downloader))
     32                                                                                fnc = call_downloader))
    2133        elif config.show_extension == 1:
    2234                plugins.append(PluginDescriptor(name="CrossEPG Downloader",
    2335                                                                                description=_("An EPG downloader"),
    2436                                                                                where = PluginDescriptor.WHERE_EXTENSIONSMENU,
    25                                                                                 fnc = crossepg_main.downloader))
     37                                                                                fnc = call_downloader))
    2638        elif config.show_plugin == 1:
    2739                plugins.append(PluginDescriptor(name="CrossEPG Downloader",
    2840                                                                                description=_("An EPG downloader"),
    2941                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
    30                                                                                 fnc = crossepg_main.downloader))
     42                                                                                fnc = call_downloader))
    3143       
    3244        if config.isQBOXHD():
     
    3446                                                                                description=_("CrossEPG setup panel"),
    3547                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
    36                                                                                 fnc = crossepg_main.setup))
     48                                                                                fnc = call_setup))
    3749        else:
    3850                plugins.append(PluginDescriptor(name="CrossEPG",
     
    4456                                                                        description = _("CrossEPG automatic actions"),
    4557                                                                        where = PluginDescriptor.WHERE_SESSIONSTART,
    46                                                                         fnc = crossepg_main.autostart))
     58                                                                        fnc = call_autostart))
     59                                                                       
     60        if config.show_force_reload_as_plugin == 1:
     61                plugins.append(PluginDescriptor(name="CrossEPG Force Reload",
     62                                                                                description=_("CrossEPG Force Reload"),
     63                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
     64                                                                                fnc = call_loaderAsPlugin))
     65                                                                       
    4766        return plugins;
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/skins/downloader_hd.xml

    r7451 r12090  
    11<screen position="530,590" size="600,70" title="CrossEPG" flags="wfNoBorder">
    22        <widget name="background" position="0,0" size="600,80" zPosition="-1" />
    3         <widget name="action" halign="center" valign="center" position="65,10" size="520,20" font="Regular;16" />
    4         <widget name="status" halign="center" valign="center" position="65,30" size="520,20" font="Regular;16" />
     3        <widget name="action" halign="center" valign="center" position="65,10" size="520,20" font="Regular;16" transparent="1"/>
     4        <widget name="status" halign="center" valign="center" position="65,30" size="520,20" font="Regular;16" transparent="1"/>
    55        <widget name="progress" position="65,55" size="520,5" borderWidth="1" />
    66</screen>
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/skins/downloader_sd.xml

    r7451 r12090  
    11<screen position="330,450" size="350,70" title="CrossEPG" flags="wfNoBorder">
    22        <widget name="background" position="0,0" size="350,80" zPosition="-1" />
    3         <widget name="action" halign="center" valign="center" position="65,10" size="270,20" font="Regular;15" />
    4         <widget name="status" halign="center" valign="center" position="65,30" size="270,20" font="Regular;15" />
     3        <widget name="action" halign="center" valign="center" position="65,10" size="270,20" font="Regular;15" transparent="1"/>
     4        <widget name="status" halign="center" valign="center" position="65,30" size="270,20" font="Regular;15" transparent="1"/>
    55        <widget name="progress" position="65,55" size="270,5" borderWidth="1" />
    66</screen>
  • ipk/source.sh4/swapepg_crossepg/var/swap/extensions/CrossEPG/version.py

    r7451 r12090  
    1 version = "0.6.1 (svn 241)"
     1version = "0.6.2)"
  • ipk/source/epg_crossepg/CONTROL/control

    r7451 r12090  
    11Package: enigma2-plugin-epg-crossepg
    2 Version: 0.61
     2Version: 0.62
    33Architecture: sh4
    44OE: CrossEPG by sandro cavazzoni for SKYit, SKYuk, AUsat
  • ipk/source/epg_crossepg/CONTROL/preinst

    r11791 r12090  
    3232        fi
    3333fi   
    34 echo "installing CrossEPG 0.61 ..."
    3534
    3635buildgroup=`cat /etc/.buildgroup`
     
    3938        echo ---------------------------                 
    4039        echo DONT USE this IPK Package!!                 
    41         echo ---                 
     40        echo ---               
    4241        echo Only for $buildgroup Image!!               
    4342        echo ---------------------------                 
    4443        exit 1           
    4544fi
     45
     46echo "installing CrossEPG ..."
     47sync
    4648exit 0
  • ipk/source/epg_crossepg/CONTROL/prerm

    r7451 r12090  
    88        echo freespace size $FREE kb
    99fi
    10 echo "removing CrossEPG v0.61"
     10echo "removing CrossEPG...."
    1111exit 0
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_about.py

    r7451 r12090  
    5454                        version = "unknow version"
    5555
    56                 credit = "SIFTeam CrossEPG %s (c) 2009-2010 Sandro Cavazzoni\n" % version
     56                credit = "SIFTeam CrossEPG %s (c) 2009-2011 Sandro Cavazzoni\n" % version
    5757                credit += "http://code.google.com/p/crossepg/\n\n"
    5858                credit += "Application credits:\n"
    5959                credit += "- Sandro Cavazzoni aka skaman (main developer)\n"
    6060                credit += "- Ambrosa (scripts developer)\n"
     61                credit += "- Sergiotas (mhw2epgdownloader author)\n"
     62                credit += "- u Killer Bestia (server side application maintainer)\n"
    6163                credit += "- Spaeleus (italian translations)\n"
    62                 credit += "- Bodyan (ukrainian translations)\n\n"
     64                credit += "- Bodyan (ukrainian translations)\n"
     65                credit += "- Kosmacz (polish translations)\n"
     66                credit += "- Ku4a (russian translations)\n\n"
    6367                credit += "Sources credits:\n"
    6468                credit += "- Rytec http://www.rytec.be (xmltv providers for many countries)\n"
    65                 credit += "- Krkadoni http://www.krkadoni.com/ (xmltv provider for Ex Yugoslavia and various xepgdb sources maintainer)\n"
    66                 credit += "- Bodyan and dillinger http://linux-sat.tv/ (xmltv provider for ex USSR channels)"
     69                credit += "- Krkadoni http://www.krkadoni.com/ (xmltv provider for Ex Yugoslavia)\n"
     70                credit += "- Bodyan and dillinger http://linux-sat.tv/ (xmltv provider for ex USSR channels)\n"
     71                credit += "- Devilcosta http://sgcpm.com/ (xmltv provider for nova channels in greek and english)"
    6772                self["about"].setText(credit)
    6873
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_loader.py

    r7451 r12090  
    139139       
    140140        def loadEPG(self):
    141                 cmd = "%s/crossepg_epgcopy %s/ext.epg.dat /hdd/epg.dat" % (self.home_directory, self.db_root)
     141                try:
     142                        cmd = "%s/crossepg_epgcopy %s/ext.epg.dat %s" % (self.home_directory, self.db_root, config.misc.epgcache_filename.value)
     143                except Exception, e:
     144                        cmd = "%s/crossepg_epgcopy %s/ext.epg.dat /hdd/epg.dat" % (self.home_directory, self.db_root)
     145                       
    142146                print "[CrossEPG_Loader] %s" % (cmd)
    143147                os.system(cmd)
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_main.py

    r7451 r12090  
    1616                self.patchtype = getEPGPatchType()
    1717               
    18         def downloader(self, session, **kwargs):
     18        def downloader(self, session):
    1919                self.session = session
    2020                crossepg_auto.lock = True
     
    2626                        self.config.deleteLog()
    2727                        self.session.openWithCallback(self.downloadCallback, CrossEPG_Downloader, self.config.providers)
     28
     29        def loaderAsPlugin(self, session):
     30                self.session = session
     31                crossepg_auto.lock = True
     32                crossepg_auto.stop()
     33                self.loader()
    2834
    2935        def downloadCallback(self, ret):
     
    7379                crossepg_auto.lock = False
    7480
    75         def setup(self, session, **kwargs):
     81        def setup(self, session):
    7682                crossepg_auto.lock = True
    7783                crossepg_auto.stop()
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_menu.py

    r7451 r12090  
    1111from crossepg_loader import CrossEPG_Loader
    1212from crossepg_ordering import CrossEPG_Ordering
     13from crossepg_rytec_update import CrossEPG_Rytec_Update
     14from crossepg_xepgdb_update import CrossEPG_Xepgdb_Update
    1315from crossepg_locale import _
    1416
     
    5860                l.append(self.buildListEntry(_("XEPGDB providers"), "xepgdb.png"))
    5961                l.append(self.buildListEntry(_("Scripts providers"), "scripts.png"))
     62                l.append(self.buildListEntry(_("MHW2 providers"), "opentv.png"))
    6063                l.append(self.buildListEntry(_("Providers start order"), "reorder.png"))
     64                l.append(self.buildListEntry(_("Update rytec providers"), "rytec_small.png"))
     65                l.append(self.buildListEntry(_("Update xepgdb providers"), "xepgdb.png"))
    6166                l.append(self.buildListEntry(_("Download now"), "download.png"))
    6267                l.append(self.buildListEntry(_("Force csv import now"), "csv.png"))
     
    105110                        self.session.open(CrossEPG_Providers, "script")
    106111                elif index == 5:
     112                        self.session.open(CrossEPG_Providers, "mhw2")
     113                elif index == 6:
    107114                        self.session.open(CrossEPG_Ordering)
    108                 elif index == 6:
     115                elif index == 7:
     116                        self.session.open(CrossEPG_Rytec_Update)
     117                elif index == 8:
     118                        self.session.open(CrossEPG_Xepgdb_Update)
     119                elif index == 9:
    109120                        self.config.load()
    110121                        self.config.deleteLog()
    111122                        self.downloader()
    112                 elif index == 7:
     123                elif index == 10:
    113124                        self.importer()
    114                 elif index == 8:
     125                elif index == 11:
    115126                        self.converter()
    116                 elif index == 9:
     127                elif index == 12:
    117128                        self.loader()
    118                 elif index == 10:
     129                elif index == 13:
    119130                        self.session.open(CrossEPG_Info)
    120                 elif index == 11:
     131                elif index == 14:
    121132                        self.session.open(CrossEPG_About)
    122133               
     
    158169                                if self.config.download_manual_reboot:
    159170                                        from Screens.Standby import TryQuitMainloop
    160                                         session.open(TryQuitMainloop, 3)
     171                                        self.session.open(TryQuitMainloop, 3)
    161172
    162173        def loader(self):
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_providers.py

    r7451 r12090  
    6363                elif self.protocol == "xepgdb":
    6464                        self.setTitle("CrossEPG - XEPGDB providers")
    65                 elif self.protocol == "scripts":
     65                elif self.protocol == "script":
    6666                        self.setTitle("CrossEPG - Scripts providers")
     67                elif self.protocol == "mhw2":
     68                        self.setTitle("CrossEPG - MHW2 providers")
    6769
    6870        def buildList(self):
    6971                self.list = []
    7072                i = 0
     73                protocol = self.protocol
     74                if protocol == "mhw2":
     75                        protocol = "script"
     76                print protocol
     77                print self.protocol
    7178                for provider in self.providers[0]:
    72                         if self.providers[2][i] == self.protocol:
    73                                 self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     79                        if self.providers[2][i] == protocol:
     80                                if protocol == "script":
     81                                        description = self.providers[1][i].lower()
     82                                        # we use find("mhw2") as workaround because mhw2 doesn't exist as provider type
     83                                        if self.protocol == "mhw2" and description.find("mhw2") != -1:
     84                                                self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     85                                        elif self.protocol == "script" and description.find("mhw2") == -1:
     86                                                self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
     87                                else:
     88                                        self.list.append(self.buildListEntry(provider, self.providers[1][i], self.config.providers.count(provider) > 0))
    7489                        i += 1
    7590
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepg_setup.py

    r7451 r12090  
    44from Screens.MessageBox import MessageBox
    55
    6 from Components.config import KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_0, ConfigYesNo, ConfigSelection, ConfigClock
     6from Components.config import KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_0, ConfigYesNo, ConfigSelection, ConfigClock, config, configfile
    77from Components.ConfigList import ConfigList
    88from Components.Button import Button
     
    2121
    2222from time import *
     23
     24import os
    2325
    2426class CrossEPG_Setup(Screen):
     
    5355                self.show_extension = self.config.show_extension
    5456                self.show_plugin = self.config.show_plugin
     57                self.show_force_reload_as_plugin = self.config.show_force_reload_as_plugin
    5558
    5659                # make devices entries
     
    6063
    6164                for partition in harddiskmanager.getMountedPartitions():
    62                         if (partition.mountpoint != '/') and (partition.mountpoint != ''): # and self.isMountedInRW(partition.mountpoint):
     65                        if (partition.mountpoint != '/') and (partition.mountpoint != '') and self.isMountedInRW(partition.mountpoint):
    6366                                self.mountpoint.append(partition.mountpoint + "/crossepg")
    6467
     
    114117                self.makeList()
    115118
     119        def isMountedInRW(self, path):
     120                testfile = path + "/tmp-rw-test"
     121                os.system("touch " + testfile)
     122                if os.path.exists(testfile):
     123                        os.system("rm -f " + testfile)
     124                        return True
     125                return False
     126               
    116127        def showWarning(self): 
    117128                self.session.open(MessageBox, _("PLEASE READ!\nNo disk found. An hard drive or an usb pen is HARDLY SUGGESTED. If you still want use your internal flash pay attention to:\n(1) If you don't have enough free space your box may completely block and you need to flash it again\n(2) Many write operations on your internal flash may damage your flash memory"), type = MessageBox.TYPE_ERROR)
     
    188199                self.list.append((_("Show as plugin"), ConfigYesNo(self.config.show_plugin > 0)))
    189200                self.list.append((_("Show as extension"), ConfigYesNo(self.config.show_extension > 0)))
     201                self.list.append((_("Show 'Force reload' as plugin"), ConfigYesNo(self.config.show_force_reload_as_plugin > 0)))
    190202
    191203                self["config"].setList(self.list)
     
    233245                self.config.show_plugin = int(self.list[i][1].getValue())
    234246                self.config.show_extension = int(self.list[i+1][1].getValue())
     247                self.config.show_force_reload_as_plugin = int(self.list[i+2][1].getValue())
    235248
    236249                if redraw:
     
    247260
    248261                if index == 0:
    249                         self["information"].setText(_("Drive where you save data.\nThe drive MUST be mounted in rw"))
     262                        self["information"].setText(_("Drive where you save data.\nThe drive MUST be mounted in rw. If you can't see your device here probably is mounted as read only or autofs handle it only in read only mode. In case of mount it manually and try again"))
    250263                elif index == 1:
    251264                        self["information"].setText(_("Lamedb used for epg.dat conversion.\nThis option doesn't work with crossepg patch v2"))
     
    279292                self.config.configured = 1
    280293                self.config.save()
     294                try:
     295                        if self.config.db_root[-8:] == "crossepg":
     296                                config.misc.epgcache_filename.setValue(self.config.db_root[:-9] + "/epg.dat")
     297                        else:
     298                                config.misc.epgcache_filename.setValue(self.config.db_root + "/epg.dat")
     299                        config.misc.epgcache_filename.callNotifiersOnSaveAndCancel = True
     300                        config.misc.epgcache_filename.save()
     301                        configfile.save()
     302                except Exception, e:
     303                        print "custom epgcache filename not supported by current enigma2 version"
     304                       
     305                if getEPGPatchType() == -1:
     306                        # exec crossepg_prepare_pre_start for unpatched images
     307                        os.system(self.config.home_directory + "/crossepg_prepare_pre_start.sh")
     308                       
    281309                if self.show_extension != self.config.show_extension or self.show_plugin != self.config.show_plugin:
    282310                        for plugin in plugins.getPlugins(PluginDescriptor.WHERE_PLUGINMENU):
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/crossepglib.py

    r7451 r12090  
    6161        show_plugin = 1
    6262        show_extension = 1
     63        show_force_reload_as_plugin = 0
    6364        last_partial_download_timestamp = 0
    6465        last_full_download_timestamp = 0
     
    127128                                                elif key == "show_extension":
    128129                                                        self.show_extension = int(value);
     130                                                elif key == "show_force_reload_as_plugin":
     131                                                        self.show_force_reload_as_plugin = int(value);
    129132                                                elif key == "configured":
    130133                                                        self.configured = int(value);
     
    163166                f.write("show_plugin=%d\n" % (self.show_plugin))
    164167                f.write("show_extension=%d\n" % (self.show_extension))
     168                f.write("show_force_reload_as_plugin=%d\n" % (self.show_force_reload_as_plugin))
    165169                f.write("configured=%d\n" % (self.configured))
    166170               
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/plugin.py

    r7451 r12090  
    1010                return []
    1111
     12def call_downloader(session, **kwargs):
     13        crossepg_main.downloader(session)
     14       
     15def call_loaderAsPlugin(session, **kwargs):
     16        crossepg_main.loaderAsPlugin(session)
     17       
     18def call_setup(session, **kwargs):
     19        crossepg_main.setup(session)
     20       
     21def call_autostart(reason, session):
     22        crossepg_main.autostart(reason, session)
     23       
    1224def Plugins(**kwargs):
    1325        config = CrossEPG_Config()
     
    1830                                                                                description=_("An EPG downloader"),
    1931                                                                                where = [ PluginDescriptor.WHERE_EXTENSIONSMENU, PluginDescriptor.WHERE_PLUGINMENU ],
    20                                                                                 fnc = crossepg_main.downloader))
     32                                                                                fnc = call_downloader))
    2133        elif config.show_extension == 1:
    2234                plugins.append(PluginDescriptor(name="CrossEPG Downloader",
    2335                                                                                description=_("An EPG downloader"),
    2436                                                                                where = PluginDescriptor.WHERE_EXTENSIONSMENU,
    25                                                                                 fnc = crossepg_main.downloader))
     37                                                                                fnc = call_downloader))
    2638        elif config.show_plugin == 1:
    2739                plugins.append(PluginDescriptor(name="CrossEPG Downloader",
    2840                                                                                description=_("An EPG downloader"),
    2941                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
    30                                                                                 fnc = crossepg_main.downloader))
     42                                                                                fnc = call_downloader))
    3143       
    3244        if config.isQBOXHD():
     
    3446                                                                                description=_("CrossEPG setup panel"),
    3547                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
    36                                                                                 fnc = crossepg_main.setup))
     48                                                                                fnc = call_setup))
    3749        else:
    3850                plugins.append(PluginDescriptor(name="CrossEPG",
     
    4456                                                                        description = _("CrossEPG automatic actions"),
    4557                                                                        where = PluginDescriptor.WHERE_SESSIONSTART,
    46                                                                         fnc = crossepg_main.autostart))
     58                                                                        fnc = call_autostart))
     59                                                                       
     60        if config.show_force_reload_as_plugin == 1:
     61                plugins.append(PluginDescriptor(name="CrossEPG Force Reload",
     62                                                                                description=_("CrossEPG Force Reload"),
     63                                                                                where = PluginDescriptor.WHERE_PLUGINMENU,
     64                                                                                fnc = call_loaderAsPlugin))
     65                                                                       
    4766        return plugins;
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/skins/downloader_hd.xml

    r7451 r12090  
    11<screen position="530,590" size="600,70" title="CrossEPG" flags="wfNoBorder">
    22        <widget name="background" position="0,0" size="600,80" zPosition="-1" />
    3         <widget name="action" halign="center" valign="center" position="65,10" size="520,20" font="Regular;16" />
    4         <widget name="status" halign="center" valign="center" position="65,30" size="520,20" font="Regular;16" />
     3        <widget name="action" halign="center" valign="center" position="65,10" size="520,20" font="Regular;16" transparent="1"/>
     4        <widget name="status" halign="center" valign="center" position="65,30" size="520,20" font="Regular;16" transparent="1"/>
    55        <widget name="progress" position="65,55" size="520,5" borderWidth="1" />
    66</screen>
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/skins/downloader_sd.xml

    r7451 r12090  
    11<screen position="330,450" size="350,70" title="CrossEPG" flags="wfNoBorder">
    22        <widget name="background" position="0,0" size="350,80" zPosition="-1" />
    3         <widget name="action" halign="center" valign="center" position="65,10" size="270,20" font="Regular;15" />
    4         <widget name="status" halign="center" valign="center" position="65,30" size="270,20" font="Regular;15" />
     3        <widget name="action" halign="center" valign="center" position="65,10" size="270,20" font="Regular;15" transparent="1"/>
     4        <widget name="status" halign="center" valign="center" position="65,30" size="270,20" font="Regular;15" transparent="1"/>
    55        <widget name="progress" position="65,55" size="270,5" borderWidth="1" />
    66</screen>
  • ipk/source/epg_crossepg/usr/lib/enigma2/python/Plugins/SystemPlugins/CrossEPG/version.py

    r7451 r12090  
    1 version = "0.6.1 (svn 241)"
     1version = "0.6.2)"
  • ipk/source/epg_crossepg/usr/lib/python2.6/crossepg.py

    r7451 r12090  
    11# This file was automatically generated by SWIG (http://www.swig.org).
    2 # Version 1.3.40
     2# Version 2.0.4
    33#
    44# Do not make changes to this file unless you know what you are doing--modify
    55# the SWIG interface file instead.
    6 # This file is compatible with both classic and new-style classes.
     6
     7
    78
    89from sys import version_info
     
    4041    method = class_type.__swig_setmethods__.get(name,None)
    4142    if method: return method(self,value)
    42     if (not static) or hasattr(self,name):
     43    if (not static):
    4344        self.__dict__[name] = value
    4445    else:
     
    480481  return _crossepg.epgdb_get_update_time()
    481482epgdb_get_update_time = _crossepg.epgdb_get_update_time
     483
     484def epgdb_get_revision():
     485  return _crossepg.epgdb_get_revision()
     486epgdb_get_revision = _crossepg.epgdb_get_revision
    482487import os
    483488import re
     
    522527        return flags & (~0x01)
    523528
    524 
    525 
     529# This file is compatible with both classic and new-style classes.
     530
     531
  • ipk/source/epg_crossepg/var/crossepg/crossepg_epgmove.sh

    r7451 r12090  
    99fi
    1010
     11if [ -f "/etc/enigma2/settings" ] # if enigma2 configuration exist
     12then
     13        EPGDAT=`cat /etc/enigma2/settings | grep "config\.misc\.epgcache_filename=" | sed "s/config\.misc\.epgcache_filename=//"`
     14else # else default path
     15        EPGDAT="/hdd/epg.dat"
     16fi
     17
     18if [ ! -n "$EPGDAT" ]
     19then
     20        EPGDAT="/hdd/epg.dat"
     21fi
     22
    1123if [ -f "$DBROOT/ext.epg.dat" ] # try on configuration path
    1224then
    1325        echo copying ext.epg.dat from $DBROOT
    14         $HOME/crossepg_epgcopy "$DBROOT/ext.epg.dat" /hdd/epg.dat
     26        $HOME/crossepg_epgcopy "$DBROOT/ext.epg.dat" $EPGDAT
    1527elif [ -f "/hdd/crossepg/ext.epg.dat" ] # if we have a bad path try with default path
    1628then
  • ipk/source/epg_crossepg/var/crossepg/providers/krkadoni_exyu_xmltv.conf

    r7451 r12090  
    11description=Krkadoni ExYu XMLTV
    22protocol=xmltv
    3 channels=http://www.krkadoni.com/krkadoni.channels.xml.gz
    4 url=http://krkadoni.com/krkadonixmltv_exyu.gz
     3channels_url_0=http://www.krkadoni.com/krkadoni.channels.xml.gz
     4epg_url_0=http://krkadoni.com/krkadonixmltv_exyu.gz
    55preferred_language=eng
  • ipk/source/epg_crossepg/var/crossepg/providers/linuxsat_exussr_xmltv.conf

    r7451 r12090  
    11description=Linuxsat ExUSSR XMLTV
    22protocol=xmltv
    3 channels=http://linux-sat.tv/epg/ls.channels.xml.gz
    4 url=http://linux-sat.tv/epg/tvprogram_ua_ru.gz
     3channels_url_0=http://linux-sat.tv/epg/ls.channels.xml.gz
     4epg_url_0=http://linux-sat.tv/epg/tvprogram_ua_ru.gz
    55preferred_language=eng
Note: See TracChangeset for help on using the changeset viewer.