Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
ó
Eh-_c@sddlmZddlmZmZmZmZmZm	Z	ddl
mZddlm
ZmZddlZddlmZmZdd	d„ƒYZdS(
iÿÿÿÿ(tTranslateTXT(tprintDBGtprintExctbyteifytGetConfigDirtGetHostsListt
IsHostEnabled(tCHostsGroupItem(tloadstdumpsN(tpathtremovetIPTVHostsGroupscBs§eZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d	„Zd
„Zd„Z
d„Zd
„Zd„Zdd„Zdd„ZRS(cCs

tdƒd|_tdƒ|_dddddd	d
ddd
dddddddddddg|_idd6dd6dd6dd6dd6dd	6dd
6d d6d!d6d"d
6d#d6d$d6d%d6d&d6d'd6d(d6d)d6d*d6d+d6d,d6d-d6|_g|_i|_g|_d|_
i|_iÓd
dgd.6d
gd/6ddgd06dgd16dd
gd26ddgd36ddgd46ddgd56ddgd66ddgd76ddgd86ddgd96ddgd:6dgd;6dgd<6d
ddddgd=6ddgd>6d
gd?6d
dgd@6ddgdA6d
dgdB6ddgdC6ddgdD6ddgdE6dddgdF6ddgdG6ddgdH6dgdI6ddgdJ6ddgdK6ddgdL6ddgdM6d
ddgdN6d
dgdO6ddd
d
ddddddd	ddddddgdP6d
dgdQ6ddgdR6d
ddgdS6ddgdT6ddgdU6d
ddgdV6dgdW6ddgdX6dgdY6d
ddgdZ6ddgd[6ddgd\6ddgd]6ddgd^6ddgd_6d	ddgd`6d	dgda6ddgdb6dgdc6ddgdd6ddgde6d
dgdf6ddgdg6ddgdh6ddgdi6ddgdj6ddgdk6ddgdl6dd
dgdm6ddgdn6ddgdo6ddgdp6ddgdq6ddgdr6ddgds6ddgdt6ddgdu6d
d	ddgdv6dd
ddgdw6dgdx6dddgdy6ddgdz6ddgd{6d
dgd|6ddgd}6ddgd~6ddgd6ddgd€6ddgd6d
dgd‚6ddgdƒ6ddd
dddddddddddgd„6d
dgd…6d
dgd†6ddgd‡6dgdˆ6dgd‰6dgdŠ6d
gd‹6ddgdŒ6dgd6ddgdŽ6ddgd6ddgd6ddgd‘6dd
gd’6dd
gd“6ddgd”6ddgd•6ddgd–6dgd—6d
ddgd˜6ddgd™6d
dgdš6ddgd›6d
dgdœ6d
dgd6dgdž6dgdŸ6ddgd 6dgd¡6ddgd¢6d
ddddgd£6d
dgd¤6dd
dgd¥6ddgd¦6ddgd§6ddgd¨6ddgd©6dgdª6dgd«6dgd¬6d
dgd­6dgd®6dgd¯6ddgd°6ddgd±6ddgd²6ddgd³6dgd´6d
dgdµ6d
d
dgd¶6ddgd·6d
dgd¸6d
ddgd¹6ddgdº6dgd»6d
ddddgd¼6ddgd½6dgd¾6d
dgd¿6d
dgdÀ6ddgdÁ6dgdÂ6dgdÃ6ddgdÄ6d
gdÅ6ddgdÆ6ddgdÇ6ddgdÈ6ddgdÉ6d
dgdÊ6ddgdË6ddgdÌ6dgdÍ6ddgdÎ6d
ddgdÏ6ddgdÐ6dgdÑ6ddgdÒ6ddgdÓ6ddgdÔ6ddgdÕ6d	gdÖ6dgd×6ddgdØ6ddgdÙ6dgdÚ6d
dgdÛ6ddgdÜ6d
dgdÝ6ddgdÞ6dgdß6dgdà6dgdá6dgdâ6d
gdã6dgdä6dgdå6dgdæ6ddd
dddddddddddgdç6d
gdè6dgdé6d
d	dgdê6dgdë6ddgdì6dddddddddddddg
dí6dgdî6d
d
dgdï6d
dgdð6dd
gdñ6d
dgdò6d
dgdó6dd
dd	ddgdô6ddgdõ6ddgdö6d
dgd÷6dgdø6dgdù6dgdú6ddgdû6ddgdü6d
dgdý6d
dgdþ6ddd
ddddddd	dddddgdÿ6dgd6}xY|D]Q}xH||D]<}||jkr´|g|j|<qŒ|j|j|ƒqŒWq{Wi|_
i|_i|_i|_d|_d|_dS(NsIPTVHostsGroups.__init__tsiptvplayerhostsgroups.jsontuserdefinedtmoviesandseriestcartoonsandanimetmusictsporttlivetdocumentarytsciencetpolishtenglishtgermantfrenchtrussiant	hungariantarabictgreektlatinotitaliantswedishtbalkanstotherssUser definedsMovies and seriessCartoons and animetMusictSporttLivetDocumentarytSciencetPolishtEnglishtGermantFrenchtRussiant	HungariantArabictGreektLatinotItaliantSwedishtBalkanstOtherst123movieshdt3playert3sktvt7tvdet9animetakoamt	alltubetvtaltadefinizionetaltadefinizione01taltadefinizione1taltadefinizionecooltandrijaiandjelkatanimeodcinkit
appletrailerstardmediathektartetvtbajeczkiorgt
bbciplayertbbcsporttbstot	cartoonhdt
casacinematcb01tcb01unotcdapltcdafilmytchomikujtchristusvincittcimaclubcomtcinemaliberotcinemaxxtcinemaytcinetotclassiccinemaonlinetdailymotiontdancetrippintdardarkomcomtddltdeltdixmaxtdokumentalnenettdplayitt
dpstreamingcxtdrdktdsdatefilmytvtegybesttekinomaniaktekinotvt
ekstraklasatvteskagoteurosportplayert
faselhdcomt
favouritest	fenixsitet	fighttubet
fightvideot	filisertvtfilma24hdcomt	filma24iot
filmaoncomt	filmativat
filmehdnett
filmeonlinetotfilmezztfilmixcotfilmoviplextfilmovizijastudiot
filmpalasttfilmpertuttitfilmstreamhdittfilmstreamvkcomtfokustvtforjatntfrancetvt
freediscplt	gamatocomt
gamatotvmetgreekdocumentaries3tguardaseriethd1080onlinet	hdfilmetvthdfullt	hdkinomirt
hdpopcornscomt	hdstreamsthitboxtvt
hoofootcomticefilmsinfotiitvplt	interiatvtiplatiptvplayerinfotitvcomtkabaretytkijknltkinogot	kinopokaztkinotantkinoxtkissanimetot
kisscartoonmetkkistetkreskoweczkit
kreskowkazonetla7ittlaola1tvtlibrestreamtliveleakt
localmediatlookmovieagt	losmoviestluxveritatistmaxtvgot	meczykipltmediasetplaytmooviecct	movie4ktotmovienightwstmovierulzsxtmovizlandcomt	movs4ucomtmozicsillagtmrpiracytmusicboxt
musicmp3rut	myfreemp3tmythewatchseriestngolostninatekatnuteczkit	ogladajtotofficialfilmillimitet
oipeiratestokgoalstororotvtorthobulletscomtotakufrtourmatchnettpinkbiketplanetstreamingcomtplaypulst	playrtsiwtplusdedetpmgsportt
putlockertvtotquesttvcouktradiostacjatraiplaytredbulltrtbfbetrteieplayertrtlmostt	serialecot	serialnettserienstreamtotseriesonlinetserijeonlinetshahiidanimenett	shoutcasttskstreamt
solarmovietsovdubt	spiegeltvtsportdeutschlandtsportitaliat
spryciarzetstreaminghdfuntstreamlivetot	svtplaysettainieskaiseirestvttantifilmorgttatattedt	tfarjocomtthewatchseriestotturcjatvttvgryplttvn24ttvnowdettvnvodttvplayercomttvproartttvpvodttvrepublikattwitchtvtuktvplayturllistt	ustreamtvtvevot
vidcorncomtvimeotvodplt	vumedicomtvumoochtwatchcartoononlinetwatchwrestlingtwatchwrestlingunot	webstreamtwgranetwolnelekturypltworldfree4ut	wpolscepltwptvt
wrealu24tvtxrysoiset
tainiesonlinetyesmoviestotyifytvtyoutubetzdfmediathek(Rt	lastErrorRtGROUPS_FILEtPREDEFINED_GROUPStPREDEFINED_GROUPS_TITLESt
LOADED_GROUPStLOADED_GROUPS_TITLEStLOADED_DISABLED_GROUPStNonetCACHE_GROUPStPREDEFINED_HOSTStappendtLOADED_HOSTStLOADED_DISABLED_HOSTStCACHE_HOSTStADDED_HOSTSthostListFromFolderthostListFromList(tselftHOST_AND_GROUPSthtg((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyt__init__sþ
	

					






























:










































1


























































































1



.














4

					cCstdƒtd|ƒS(NsIPTVHostsGroups._getGroupFilesiptvplayer%sgroup.json(RR(Rt	groupName((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyt
_getGroupFile&s
cCs|jS(N(R(R((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytgetLastError*scCsptdƒ|j|ƒ}g|j|<||ksE||j|krXtdƒ|_tS|j|j|ƒtS(NsIPTVHostsGroups.addHostToGroups/This host has been added already to this group.(RtgetHostsListRt_RtFalseRtTrue(RRthostNamet	hostsList((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytaddHostToGroup-s

cCstdƒxg|jD]\}dt|j|ƒkr9qnt|j|ƒ}|j|j|ƒ|j||ƒqWi|_dS(NsIPTVHostsGroups.flushAddedHostsi(RRtlentlistRtextendtsetHostsList(RRtnewList((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytflushAddedHosts7s
cCss|jƒ}g}xZ|D]R}|j|jƒ}||kr||jj|jgƒkr|j|ƒqqW|S(N(t
getGroupsListR!tnameRtgetR(RR%t	groupListtretListt	groupItemR&((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytgetGroupsWithoutHost@s
*cCsgtdƒ||jkr$|j|S|jdkrNtdtdtƒ|_n|jdkrxtdtdtƒ|_n|j|ƒ}|j	|||j|jƒg}x1|j
|D]"}t|ƒr·|j|ƒq·q·Wxv|j
j|gƒD]_}||kró||j|kró||jkró||jkrót|ƒró|j|ƒqóqóW||j|<|S(NsIPTVHostsGroups.getHostsListtfromListtfromHostFolder(RRRRRR#R$RRt
_loadHostsRRRRR0R(RRt	groupFilethoststhost((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyR!Is$
I
cCsûtd||fƒidd6|d6gd6}g}x1|j|D]"}||krC|j|ƒqCqCWxL|j|D]=}||krw||jj|gƒkrw|j|ƒqwqwW||d<||j|<||j|<|j|ƒ}|j||ƒS(Ns9IPTVHostsGroups.setHostsList groupName[%s], hostsList[%s]itversionR9tdisabled_hosts(RRRRRR0Rt
_saveHosts(RRR&toutObjt
disabledHostsR:R8((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyR+bs'


cCsktdƒt}y t|ƒ}|j||ƒWn4tk
rftƒtdƒ|j|_t	}nX|S(NsIPTVHostsGroups._saveHostssError writing file "%s".
(
RR$t
json_dumpst_saveToFilet	ExceptionRR"R	RR#(RR>R8trettdata((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyR={s


cCs#td|ƒ|jj|gƒ}g}g}t}tj|ƒry£|j|ƒ}	t|	ƒ}	xH|	jdgƒD]4}
|
|kru|
|kru|jt	|
ƒƒququWx6|	jdgƒD]"}
|
|krÀ|j|
ƒqÀqÀWWqt
k
rtƒqXn||j|<||j
|<dS(Ns(IPTVHostsGroups._loadHosts groupName[%s]R<R9(RRR0R$tos_pathtisfilet
_loadFromFilet
json_loadsRtstrRBRRR(RR8RRRtpredefinedHostsR9R?RCRDtitem((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyR7‡s&

cCstdƒ|jdkr |jS|jƒt|jƒ}x?|jD]4}||jkrC||jkrC|j|ƒqCqCWg}x„|D]|}|j	j
|dƒ}|dkrÇ|jj
|dƒ}n|dkrâ|jƒ}nt
|t|ƒƒ}|j|ƒqˆW||_|S(NsIPTVHostsGroups.getGroupsListR
(RRRt_loadGroupsR)RR
RRRR0R
ttitleRR"(RtgroupstgroupR1RMRK((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyR. s&


	cCsQtdƒg}x:|jD]/}|j|}t||ƒ}|j|ƒqW|S(Ns'IPTVHostsGroups.getPredefinedGroupsList(RR
RRR(RR1RORMRK((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytgetPredefinedGroupsListµs

cCsºtd|ƒidd6gd6gd6}x1|jD]&}||kr3|dj|ƒq3q3WxM|D]E}|dji|d6ƒ||jkrd|j||dd<qdqdW|j|ƒS(Ns*IPTVHostsGroups.setGroupList groupList[%s]iR;RNtdisabled_groupsR/RM(RR
RR
t_saveGroups(RR1R>RO((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pytsetGroupList¾s
cCsntdƒt}y#t|ƒ}|j|j|ƒWn4tk
ritƒtdƒ|j|_t	}nX|S(NsIPTVHostsGroups._saveGroupssError writing file "%s".
(
RR$R@RAR	RBRR"RR#(RR>RCRD((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyRRÎs


cCsMtdƒg|_g|_i|_g}i}g}t}tj|jƒr.yÁ|j|jƒ}t	|ƒ}x?|j
dgƒD]+}||jkrƒ|jt
|ƒƒqƒqƒWxZ|j
dgƒD]F}t
|dƒ}|j|ƒd|krÅt
|dƒ||<qÅqÅWWq.tk
r*tƒq.Xn||_||_||_dS(NsIPTVHostsGroups._loadGroupsRQRNR/RM(RRRR
R$RERFR	RGRHR0R
RRIRBR(RRNttitlestdisabledGroupsRCRDRKR/((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyRLÚs2
			

		sutf-8cCs@td|ƒtj|d|dƒ}|j|ƒWdQXdS(Ns(IPTVHostsGroups._saveToFile filePath[%s]twtreplace(Rtcodecstopentwrite(RtfilePathRDtencodingtfp((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyRAùscCs=td|ƒtj|d|dƒ}|jƒSWdQXdS(Ns*IPTVHostsGroups._loadFromFile filePath[%s]trRW(RRXRYtread(RR[R\R]((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyRGþs(t__name__t
__module__RRR R'R-R4R!R+R=R7R.RPRSRRRLRARG(((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyRs$	ÿ			
														((t7Plugins.Extensions.IPTVPlayer.components.iptvplayerinitRR"t-Plugins.Extensions.IPTVPlayer.tools.iptvtoolsRRRRRRt.Plugins.Extensions.IPTVPlayer.components.ihostRt*Plugins.Extensions.IPTVPlayer.libs.e2ijsonRRHR	R@RXtosR
RERt	os_removeR(((sM/usr/lib/enigma2/python/Plugins/Extensions/IPTVPlayer/tools/iptvhostgroups.pyt<module>s.