anteo prototype
parent
2b7017b2b3
commit
f9e5c8efc0
|
@ -2,11 +2,13 @@
|
|||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="56e91349-2444-4553-bc78-90c2bab49e9c" name="Default" comment="">
|
||||
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Anteoloader.py" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Anteoloader.py" afterPath="$PROJECT_DIR$/Anteoloader.py" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Core.py" afterPath="$PROJECT_DIR$/Core.py" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/Downloader.py" afterPath="$PROJECT_DIR$/Downloader.py" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/addon.xml" afterPath="$PROJECT_DIR$/addon.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/language/English/strings.xml" afterPath="$PROJECT_DIR$/resources/language/English/strings.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/language/Hebrew/strings.xml" afterPath="$PROJECT_DIR$/resources/language/Hebrew/strings.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/resources/language/Russian/strings.xml" afterPath="$PROJECT_DIR$/resources/language/Russian/strings.xml" />
|
||||
</list>
|
||||
<ignored path="plugin.video.torrenter.iws" />
|
||||
<ignored path=".idea/workspace.xml" />
|
||||
|
@ -51,10 +53,21 @@
|
|||
<file leaf-file-name="Anteoloader.py" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/Anteoloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="1.3591772">
|
||||
<caret line="98" column="53" selection-start-line="98" selection-start-column="53" selection-end-line="98" selection-end-column="53" />
|
||||
<state vertical-scroll-proportion="0.46523178">
|
||||
<caret line="320" column="20" selection-start-line="320" selection-start-column="20" selection-end-line="320" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#787#800#0" expanded="true" />
|
||||
<element signature="e#24#785#1" expanded="false" />
|
||||
<element signature="e#2114#6189#0" expanded="false" />
|
||||
<element signature="e#3015#3125#0" expanded="false" />
|
||||
<element signature="e#3167#3262#0" expanded="false" />
|
||||
<element signature="e#3302#3966#0" expanded="false" />
|
||||
<element signature="e#4015#5899#0" expanded="false" />
|
||||
<element signature="e#5936#6115#0" expanded="false" />
|
||||
<element signature="e#6164#6189#0" expanded="false" />
|
||||
<element signature="e#7824#7934#0" expanded="false" />
|
||||
<element signature="e#7964#8559#0" expanded="false" />
|
||||
<element signature="e#9099#12516#0" expanded="false" />
|
||||
<element signature="e#12977#13072#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -64,19 +77,28 @@
|
|||
<entry file="file://$PROJECT_DIR$/../script.module.torrent2http/lib/torrent2http/engine.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="17" column="21" selection-start-line="17" selection-start-column="21" selection-end-line="17" selection-end-column="21" />
|
||||
<caret line="449" column="20" selection-start-line="449" selection-start-column="20" selection-end-line="449" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#425#493#1" expanded="false" />
|
||||
<element signature="e#729#1169#0" expanded="false" />
|
||||
<element signature="e#1212#1326#0" expanded="false" />
|
||||
<element signature="e#1383#3673#0" expanded="false" />
|
||||
<element signature="e#1383#1547#1" expanded="false" />
|
||||
<element signature="e#4693#9946#0" expanded="false" />
|
||||
<element signature="e#4693#7968#1" expanded="false" />
|
||||
<element signature="e#10009#10695#0" expanded="false" />
|
||||
<element signature="e#10009#10148#1" expanded="false" />
|
||||
<element signature="e#10744#15304#0" expanded="false" />
|
||||
<element signature="e#10744#11054#1" expanded="false" />
|
||||
<element signature="e#15362#15961#0" expanded="false" />
|
||||
<element signature="e#15362#15776#1" expanded="false" />
|
||||
<element signature="e#16005#16313#0" expanded="false" />
|
||||
<element signature="e#16005#16186#1" expanded="false" />
|
||||
<element signature="e#16363#16875#0" expanded="false" />
|
||||
<element signature="e#16935#17842#0" expanded="false" />
|
||||
<element signature="e#16935#17470#1" expanded="false" />
|
||||
<element signature="e#17903#18703#0" expanded="false" />
|
||||
<element signature="e#17903#18366#1" expanded="false" />
|
||||
<element signature="e#18746#19093#0" expanded="false" />
|
||||
<element signature="e#18746#18954#1" expanded="false" />
|
||||
<element signature="e#19127#19178#0" expanded="false" />
|
||||
|
@ -84,7 +106,6 @@
|
|||
<element signature="e#19468#20511#0" expanded="false" />
|
||||
<element signature="e#20567#21033#0" expanded="false" />
|
||||
<element signature="e#20567#20983#1" expanded="false" />
|
||||
<element signature="e#21064#22234#0" expanded="false" />
|
||||
<element signature="e#21064#21229#1" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
|
@ -101,17 +122,30 @@
|
|||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Downloader.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/Downloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="1.1724138">
|
||||
<caret line="28" column="16" selection-start-line="28" selection-start-column="16" selection-end-line="28" selection-end-column="16" />
|
||||
<folding>
|
||||
<element signature="e#838#852#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</split-first>
|
||||
<split-second>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file leaf-file-name="Player.py" pinned="false" current-in-tab="false">
|
||||
<file leaf-file-name="Player.py" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/Player.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="458" column="22" selection-start-line="458" selection-start-column="22" selection-end-line="458" selection-end-column="22" />
|
||||
<state vertical-scroll-proportion="0.47847682">
|
||||
<caret line="209" column="19" selection-start-line="209" selection-start-column="19" selection-end-line="209" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#24#832#1" expanded="false" />
|
||||
<element signature="e#834#843#0" expanded="true" />
|
||||
<element signature="e#1950#3666#0" expanded="false" />
|
||||
<element signature="e#2001#2656#0" expanded="false" />
|
||||
<element signature="e#2686#2864#0" expanded="false" />
|
||||
|
@ -120,8 +154,6 @@
|
|||
<element signature="e#3158#3175#0" expanded="false" />
|
||||
<element signature="e#3228#3320#0" expanded="false" />
|
||||
<element signature="e#3395#3666#0" expanded="false" />
|
||||
<element signature="e#6622#7073#0" expanded="false" />
|
||||
<element signature="e#7112#8392#0" expanded="false" />
|
||||
<element signature="e#8424#11253#0" expanded="false" />
|
||||
<element signature="e#11289#13581#0" expanded="false" />
|
||||
<element signature="e#13630#14978#0" expanded="false" />
|
||||
|
@ -131,7 +163,6 @@
|
|||
<element signature="e#15493#15624#0" expanded="false" />
|
||||
<element signature="e#15695#15828#0" expanded="false" />
|
||||
<element signature="e#15858#18558#0" expanded="false" />
|
||||
<element signature="e#18604#19147#0" expanded="false" />
|
||||
<element signature="e#19182#19323#0" expanded="false" />
|
||||
<element signature="e#19364#19700#0" expanded="false" />
|
||||
<element signature="e#20032#20127#0" expanded="false" />
|
||||
|
@ -144,7 +175,7 @@
|
|||
<entry file="file://$PROJECT_DIR$/Libtorrent.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="48" column="55" selection-start-line="48" selection-start-column="44" selection-end-line="48" selection-end-column="55" />
|
||||
<caret line="80" column="0" selection-start-line="80" selection-start-column="0" selection-end-line="80" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#24#836#1" expanded="false" />
|
||||
<element signature="e#6352#7821#0" expanded="false" />
|
||||
|
@ -194,57 +225,50 @@
|
|||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Core.py" pinned="false" current-in-tab="true">
|
||||
<file leaf-file-name="Core.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/Core.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="8.248695">
|
||||
<caret line="445" column="43" selection-start-line="445" selection-start-column="43" selection-end-line="445" selection-end-column="43" />
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="1309" column="28" selection-start-line="1309" selection-start-column="28" selection-end-line="1309" selection-end-column="28" />
|
||||
<folding>
|
||||
<element signature="e#24#837#1" expanded="false" />
|
||||
<element signature="e#5626#17591#0" expanded="false" />
|
||||
<element signature="e#17632#18363#0" expanded="false" />
|
||||
<element signature="e#29011#30238#0" expanded="false" />
|
||||
<element signature="e#34740#36829#0" expanded="false" />
|
||||
<element signature="e#36871#38601#0" expanded="false" />
|
||||
<element signature="e#38651#43413#0" expanded="false" />
|
||||
<element signature="e#43478#49892#0" expanded="false" />
|
||||
<element signature="e#49956#52466#0" expanded="false" />
|
||||
<element signature="e#52513#53380#0" expanded="false" />
|
||||
<element signature="e#53429#55618#0" expanded="false" />
|
||||
<element signature="e#57189#57606#0" expanded="false" />
|
||||
<element signature="e#57656#57807#0" expanded="false" />
|
||||
<element signature="e#66557#66596#0" expanded="false" />
|
||||
<element signature="e#66645#67425#0" expanded="false" />
|
||||
<element signature="e#67475#69959#0" expanded="false" />
|
||||
<element signature="e#70004#71204#0" expanded="false" />
|
||||
<element signature="e#71252#73080#0" expanded="false" />
|
||||
<element signature="e#73125#73998#0" expanded="false" />
|
||||
<element signature="e#74043#74644#0" expanded="false" />
|
||||
<element signature="e#74692#78270#0" expanded="false" />
|
||||
<element signature="e#78318#79561#0" expanded="false" />
|
||||
<element signature="e#79611#79707#0" expanded="false" />
|
||||
<element signature="e#79768#85094#0" expanded="false" />
|
||||
<element signature="e#85138#85195#0" expanded="false" />
|
||||
<element signature="e#85249#88483#0" expanded="false" />
|
||||
<element signature="e#88538#90144#0" expanded="false" />
|
||||
<element signature="e#90210#90830#0" expanded="false" />
|
||||
<element signature="e#90873#91857#0" expanded="false" />
|
||||
<element signature="e#91899#92675#0" expanded="false" />
|
||||
<element signature="e#92717#92812#0" expanded="false" />
|
||||
<element signature="e#92862#93010#0" expanded="false" />
|
||||
<element signature="e#93056#93340#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Downloader.py" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/Downloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="50" column="37" selection-start-line="50" selection-start-column="37" selection-end-line="50" selection-end-column="37" />
|
||||
<folding>
|
||||
<element signature="e#838#852#0" expanded="true" />
|
||||
<element signature="e#1759#2052#0" expanded="false" />
|
||||
<element signature="e#2089#5558#0" expanded="false" />
|
||||
<element signature="e#5597#17562#0" expanded="false" />
|
||||
<element signature="e#17603#18377#0" expanded="false" />
|
||||
<element signature="e#18428#25511#0" expanded="false" />
|
||||
<element signature="e#25555#28984#0" expanded="false" />
|
||||
<element signature="e#29025#30252#0" expanded="false" />
|
||||
<element signature="e#30352#34706#0" expanded="false" />
|
||||
<element signature="e#34754#36843#0" expanded="false" />
|
||||
<element signature="e#36885#38615#0" expanded="false" />
|
||||
<element signature="e#38665#43427#0" expanded="false" />
|
||||
<element signature="e#43492#49906#0" expanded="false" />
|
||||
<element signature="e#49970#52480#0" expanded="false" />
|
||||
<element signature="e#52527#53394#0" expanded="false" />
|
||||
<element signature="e#53443#55632#0" expanded="false" />
|
||||
<element signature="e#55789#57148#0" expanded="false" />
|
||||
<element signature="e#57204#57621#0" expanded="false" />
|
||||
<element signature="e#57671#57822#0" expanded="false" />
|
||||
<element signature="e#57874#66523#0" expanded="false" />
|
||||
<element signature="e#66572#66611#0" expanded="false" />
|
||||
<element signature="e#66660#67440#0" expanded="false" />
|
||||
<element signature="e#70021#71221#0" expanded="false" />
|
||||
<element signature="e#73133#74006#0" expanded="false" />
|
||||
<element signature="e#74051#74652#0" expanded="false" />
|
||||
<element signature="e#74700#78278#0" expanded="false" />
|
||||
<element signature="e#78326#79569#0" expanded="false" />
|
||||
<element signature="e#79619#79715#0" expanded="false" />
|
||||
<element signature="e#79776#85102#0" expanded="false" />
|
||||
<element signature="e#85146#85203#0" expanded="false" />
|
||||
<element signature="e#85257#88491#0" expanded="false" />
|
||||
<element signature="e#88546#90152#0" expanded="false" />
|
||||
<element signature="e#90218#90838#0" expanded="false" />
|
||||
<element signature="e#90881#91865#0" expanded="false" />
|
||||
<element signature="e#91907#92683#0" expanded="false" />
|
||||
<element signature="e#92725#92820#0" expanded="false" />
|
||||
<element signature="e#92870#93018#0" expanded="false" />
|
||||
<element signature="e#93064#93348#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -292,14 +316,11 @@
|
|||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/resources/scrapers/fuzzywuzzy/fuzz.py" />
|
||||
<option value="$PROJECT_DIR$/resources/btclient/htclient.py" />
|
||||
<option value="$PROJECT_DIR$/resources/btclient/opensubtitle.py" />
|
||||
<option value="$PROJECT_DIR$/resources/btclient/btclient.py" />
|
||||
<option value="$PROJECT_DIR$/BTClientPlayer.py" />
|
||||
<option value="$PROJECT_DIR$/resources/btclient/common.py" />
|
||||
<option value="$PROJECT_DIR$/resources/language/English/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/resources/language/Russian/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/../torrenter.searcher.Torrentz/Torrentz.py" />
|
||||
<option value="$PROJECT_DIR$/resources/proxy/immunicity.py" />
|
||||
<option value="$PROJECT_DIR$/resources/proxy/antizapret.py" />
|
||||
|
@ -341,8 +362,11 @@
|
|||
<option value="$PROJECT_DIR$/Libtorrent.py" />
|
||||
<option value="$PROJECT_DIR$/addon.xml" />
|
||||
<option value="$PROJECT_DIR$/Downloader.py" />
|
||||
<option value="$PROJECT_DIR$/Anteoloader.py" />
|
||||
<option value="$PROJECT_DIR$/resources/language/English/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/resources/language/Hebrew/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/resources/language/Russian/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/Core.py" />
|
||||
<option value="$PROJECT_DIR$/Anteoloader.py" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
|
@ -411,6 +435,46 @@
|
|||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="plugin.video.torrenter" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="plugin.video.torrenter" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="resources" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="language" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="Ukrainian" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="plugin.video.torrenter" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="plugin.video.torrenter" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="resources" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="language" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
</subPane>
|
||||
</pane>
|
||||
</panes>
|
||||
|
@ -594,12 +658,6 @@
|
|||
<option name="number" value="Default" />
|
||||
<updated>1420801533300</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00092" summary="log libtorr 0.15 fix">
|
||||
<created>1437075408271</created>
|
||||
<option name="number" value="00092" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1437075408273</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00093" summary="settings only for active searchers">
|
||||
<created>1437164160795</created>
|
||||
<option name="number" value="00093" />
|
||||
|
@ -888,18 +946,24 @@
|
|||
<option name="project" value="LOCAL" />
|
||||
<updated>1450189086720</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="141" />
|
||||
<task id="LOCAL-00141" summary="icon fix + anteo start">
|
||||
<created>1450296096322</created>
|
||||
<option name="number" value="00141" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1450296096323</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="142" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
|
||||
<editor active="false" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.13224447" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32925472" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32814237" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2650334" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2647386" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32703003" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.1319149" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
|
@ -929,7 +993,6 @@
|
|||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="riper fix" />
|
||||
<MESSAGE value="dht fix" />
|
||||
<MESSAGE value="module over system" />
|
||||
<MESSAGE value="speed & encryption" />
|
||||
|
@ -954,43 +1017,16 @@
|
|||
<MESSAGE value="fix nothing" />
|
||||
<MESSAGE value="RussakHH stable roll-back" />
|
||||
<MESSAGE value="RussakHH stable roll-back 2" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="RussakHH stable roll-back 2" />
|
||||
<MESSAGE value="icon fix + anteo start" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="icon fix + anteo start" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<option name="time" value="24" />
|
||||
<option name="time" value="27" />
|
||||
</breakpoint-manager>
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/../torrenter.searcher.MegaTorrent/addon.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.028192371">
|
||||
<caret line="1" column="57" selection-start-line="1" selection-start-column="57" selection-end-line="1" selection-end-column="57" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../torrenter.searcher.MegaTorrent/MegaTorrent.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="-0.5787728">
|
||||
<caret line="87" column="23" selection-start-line="87" selection-start-column="23" selection-end-line="87" selection-end-column="23" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../torrenter.searcher.TFileME/addon.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.028192371">
|
||||
<caret line="1" column="53" selection-start-line="1" selection-start-column="53" selection-end-line="1" selection-end-column="53" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../torrenter.searcher.TFileME/TFileME.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="-1.2369338">
|
||||
<caret line="103" column="0" selection-start-line="103" selection-start-column="0" selection-end-line="103" selection-end-column="0" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../torrenter.searcher.Uniongang/addon.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.50830567">
|
||||
|
@ -1271,39 +1307,6 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Player.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="458" column="22" selection-start-line="458" selection-start-column="22" selection-end-line="458" selection-end-column="22" />
|
||||
<folding>
|
||||
<element signature="e#24#832#1" expanded="false" />
|
||||
<element signature="e#1950#3666#0" expanded="false" />
|
||||
<element signature="e#2001#2656#0" expanded="false" />
|
||||
<element signature="e#2686#2864#0" expanded="false" />
|
||||
<element signature="e#2894#3072#0" expanded="false" />
|
||||
<element signature="e#3103#3114#0" expanded="false" />
|
||||
<element signature="e#3158#3175#0" expanded="false" />
|
||||
<element signature="e#3228#3320#0" expanded="false" />
|
||||
<element signature="e#3395#3666#0" expanded="false" />
|
||||
<element signature="e#6622#7073#0" expanded="false" />
|
||||
<element signature="e#7112#8392#0" expanded="false" />
|
||||
<element signature="e#8424#11253#0" expanded="false" />
|
||||
<element signature="e#11289#13581#0" expanded="false" />
|
||||
<element signature="e#13630#14978#0" expanded="false" />
|
||||
<element signature="e#15021#15152#0" expanded="false" />
|
||||
<element signature="e#15195#15278#0" expanded="false" />
|
||||
<element signature="e#15320#15450#0" expanded="false" />
|
||||
<element signature="e#15493#15624#0" expanded="false" />
|
||||
<element signature="e#15695#15828#0" expanded="false" />
|
||||
<element signature="e#15858#18558#0" expanded="false" />
|
||||
<element signature="e#18604#19147#0" expanded="false" />
|
||||
<element signature="e#19182#19323#0" expanded="false" />
|
||||
<element signature="e#19364#19700#0" expanded="false" />
|
||||
<element signature="e#20032#20127#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/addon.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.20376712">
|
||||
|
@ -1312,16 +1315,6 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Downloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="50" column="37" selection-start-line="50" selection-start-column="37" selection-end-line="50" selection-end-column="37" />
|
||||
<folding>
|
||||
<element signature="e#838#852#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/functions.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
|
@ -1340,22 +1333,41 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Downloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="1.1724138">
|
||||
<caret line="28" column="16" selection-start-line="28" selection-start-column="16" selection-end-line="28" selection-end-column="16" />
|
||||
<folding>
|
||||
<element signature="e#838#852#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../script.module.torrent2http/lib/torrent2http/engine.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="17" column="21" selection-start-line="17" selection-start-column="21" selection-end-line="17" selection-end-column="21" />
|
||||
<caret line="449" column="20" selection-start-line="449" selection-start-column="20" selection-end-line="449" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#425#493#1" expanded="false" />
|
||||
<element signature="e#729#1169#0" expanded="false" />
|
||||
<element signature="e#1212#1326#0" expanded="false" />
|
||||
<element signature="e#1383#3673#0" expanded="false" />
|
||||
<element signature="e#1383#1547#1" expanded="false" />
|
||||
<element signature="e#4693#9946#0" expanded="false" />
|
||||
<element signature="e#4693#7968#1" expanded="false" />
|
||||
<element signature="e#10009#10695#0" expanded="false" />
|
||||
<element signature="e#10009#10148#1" expanded="false" />
|
||||
<element signature="e#10744#15304#0" expanded="false" />
|
||||
<element signature="e#10744#11054#1" expanded="false" />
|
||||
<element signature="e#15362#15961#0" expanded="false" />
|
||||
<element signature="e#15362#15776#1" expanded="false" />
|
||||
<element signature="e#16005#16313#0" expanded="false" />
|
||||
<element signature="e#16005#16186#1" expanded="false" />
|
||||
<element signature="e#16363#16875#0" expanded="false" />
|
||||
<element signature="e#16935#17842#0" expanded="false" />
|
||||
<element signature="e#16935#17470#1" expanded="false" />
|
||||
<element signature="e#17903#18703#0" expanded="false" />
|
||||
<element signature="e#17903#18366#1" expanded="false" />
|
||||
<element signature="e#18746#19093#0" expanded="false" />
|
||||
<element signature="e#18746#18954#1" expanded="false" />
|
||||
<element signature="e#19127#19178#0" expanded="false" />
|
||||
|
@ -1363,7 +1375,6 @@
|
|||
<element signature="e#19468#20511#0" expanded="false" />
|
||||
<element signature="e#20567#21033#0" expanded="false" />
|
||||
<element signature="e#20567#20983#1" expanded="false" />
|
||||
<element signature="e#21064#22234#0" expanded="false" />
|
||||
<element signature="e#21064#21229#1" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
|
@ -1372,7 +1383,7 @@
|
|||
<entry file="file://$PROJECT_DIR$/Libtorrent.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="48" column="55" selection-start-line="48" selection-start-column="44" selection-end-line="48" selection-end-column="55" />
|
||||
<caret line="80" column="0" selection-start-line="80" selection-start-column="0" selection-end-line="80" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#24#836#1" expanded="false" />
|
||||
<element signature="e#6352#7821#0" expanded="false" />
|
||||
|
@ -1400,54 +1411,133 @@
|
|||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Anteoloader.py">
|
||||
<entry file="file://$PROJECT_DIR$/resources/language/Ukrainian/strings.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="1.3591772">
|
||||
<caret line="98" column="53" selection-start-line="98" selection-start-column="53" selection-end-line="98" selection-end-column="53" />
|
||||
<folding>
|
||||
<element signature="e#787#800#0" expanded="true" />
|
||||
</folding>
|
||||
<state vertical-scroll-proportion="0.3360791">
|
||||
<caret line="24" column="46" selection-start-line="24" selection-start-column="46" selection-end-line="24" selection-end-column="46" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/resources/language/Russian/strings.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.5881384">
|
||||
<caret line="45" column="35" selection-start-line="45" selection-start-column="35" selection-end-line="45" selection-end-column="35" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/resources/language/Hebrew/strings.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.7561779">
|
||||
<caret line="45" column="35" selection-start-line="45" selection-start-column="35" selection-end-line="45" selection-end-column="35" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/resources/language/English/strings.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.33217993">
|
||||
<caret line="45" column="35" selection-start-line="45" selection-start-column="23" selection-end-line="45" selection-end-column="35" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Core.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="8.248695">
|
||||
<caret line="445" column="43" selection-start-line="445" selection-start-column="43" selection-end-line="445" selection-end-column="43" />
|
||||
<state vertical-scroll-proportion="0.0">
|
||||
<caret line="1309" column="28" selection-start-line="1309" selection-start-column="28" selection-end-line="1309" selection-end-column="28" />
|
||||
<folding>
|
||||
<element signature="e#24#837#1" expanded="false" />
|
||||
<element signature="e#5626#17591#0" expanded="false" />
|
||||
<element signature="e#17632#18363#0" expanded="false" />
|
||||
<element signature="e#29011#30238#0" expanded="false" />
|
||||
<element signature="e#34740#36829#0" expanded="false" />
|
||||
<element signature="e#36871#38601#0" expanded="false" />
|
||||
<element signature="e#38651#43413#0" expanded="false" />
|
||||
<element signature="e#43478#49892#0" expanded="false" />
|
||||
<element signature="e#49956#52466#0" expanded="false" />
|
||||
<element signature="e#52513#53380#0" expanded="false" />
|
||||
<element signature="e#53429#55618#0" expanded="false" />
|
||||
<element signature="e#57189#57606#0" expanded="false" />
|
||||
<element signature="e#57656#57807#0" expanded="false" />
|
||||
<element signature="e#66557#66596#0" expanded="false" />
|
||||
<element signature="e#66645#67425#0" expanded="false" />
|
||||
<element signature="e#67475#69959#0" expanded="false" />
|
||||
<element signature="e#70004#71204#0" expanded="false" />
|
||||
<element signature="e#71252#73080#0" expanded="false" />
|
||||
<element signature="e#73125#73998#0" expanded="false" />
|
||||
<element signature="e#74043#74644#0" expanded="false" />
|
||||
<element signature="e#74692#78270#0" expanded="false" />
|
||||
<element signature="e#78318#79561#0" expanded="false" />
|
||||
<element signature="e#79611#79707#0" expanded="false" />
|
||||
<element signature="e#79768#85094#0" expanded="false" />
|
||||
<element signature="e#85138#85195#0" expanded="false" />
|
||||
<element signature="e#85249#88483#0" expanded="false" />
|
||||
<element signature="e#88538#90144#0" expanded="false" />
|
||||
<element signature="e#90210#90830#0" expanded="false" />
|
||||
<element signature="e#90873#91857#0" expanded="false" />
|
||||
<element signature="e#91899#92675#0" expanded="false" />
|
||||
<element signature="e#92717#92812#0" expanded="false" />
|
||||
<element signature="e#92862#93010#0" expanded="false" />
|
||||
<element signature="e#93056#93340#0" expanded="false" />
|
||||
<element signature="e#1759#2052#0" expanded="false" />
|
||||
<element signature="e#2089#5558#0" expanded="false" />
|
||||
<element signature="e#5597#17562#0" expanded="false" />
|
||||
<element signature="e#17603#18377#0" expanded="false" />
|
||||
<element signature="e#18428#25511#0" expanded="false" />
|
||||
<element signature="e#25555#28984#0" expanded="false" />
|
||||
<element signature="e#29025#30252#0" expanded="false" />
|
||||
<element signature="e#30352#34706#0" expanded="false" />
|
||||
<element signature="e#34754#36843#0" expanded="false" />
|
||||
<element signature="e#36885#38615#0" expanded="false" />
|
||||
<element signature="e#38665#43427#0" expanded="false" />
|
||||
<element signature="e#43492#49906#0" expanded="false" />
|
||||
<element signature="e#49970#52480#0" expanded="false" />
|
||||
<element signature="e#52527#53394#0" expanded="false" />
|
||||
<element signature="e#53443#55632#0" expanded="false" />
|
||||
<element signature="e#55789#57148#0" expanded="false" />
|
||||
<element signature="e#57204#57621#0" expanded="false" />
|
||||
<element signature="e#57671#57822#0" expanded="false" />
|
||||
<element signature="e#57874#66523#0" expanded="false" />
|
||||
<element signature="e#66572#66611#0" expanded="false" />
|
||||
<element signature="e#66660#67440#0" expanded="false" />
|
||||
<element signature="e#70021#71221#0" expanded="false" />
|
||||
<element signature="e#73133#74006#0" expanded="false" />
|
||||
<element signature="e#74051#74652#0" expanded="false" />
|
||||
<element signature="e#74700#78278#0" expanded="false" />
|
||||
<element signature="e#78326#79569#0" expanded="false" />
|
||||
<element signature="e#79619#79715#0" expanded="false" />
|
||||
<element signature="e#79776#85102#0" expanded="false" />
|
||||
<element signature="e#85146#85203#0" expanded="false" />
|
||||
<element signature="e#85257#88491#0" expanded="false" />
|
||||
<element signature="e#88546#90152#0" expanded="false" />
|
||||
<element signature="e#90218#90838#0" expanded="false" />
|
||||
<element signature="e#90881#91865#0" expanded="false" />
|
||||
<element signature="e#91907#92683#0" expanded="false" />
|
||||
<element signature="e#92725#92820#0" expanded="false" />
|
||||
<element signature="e#92870#93018#0" expanded="false" />
|
||||
<element signature="e#93064#93348#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Player.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.47847682">
|
||||
<caret line="209" column="19" selection-start-line="209" selection-start-column="19" selection-end-line="209" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#24#832#1" expanded="false" />
|
||||
<element signature="e#834#843#0" expanded="true" />
|
||||
<element signature="e#1950#3666#0" expanded="false" />
|
||||
<element signature="e#2001#2656#0" expanded="false" />
|
||||
<element signature="e#2686#2864#0" expanded="false" />
|
||||
<element signature="e#2894#3072#0" expanded="false" />
|
||||
<element signature="e#3103#3114#0" expanded="false" />
|
||||
<element signature="e#3158#3175#0" expanded="false" />
|
||||
<element signature="e#3228#3320#0" expanded="false" />
|
||||
<element signature="e#3395#3666#0" expanded="false" />
|
||||
<element signature="e#8424#11253#0" expanded="false" />
|
||||
<element signature="e#11289#13581#0" expanded="false" />
|
||||
<element signature="e#13630#14978#0" expanded="false" />
|
||||
<element signature="e#15021#15152#0" expanded="false" />
|
||||
<element signature="e#15195#15278#0" expanded="false" />
|
||||
<element signature="e#15320#15450#0" expanded="false" />
|
||||
<element signature="e#15493#15624#0" expanded="false" />
|
||||
<element signature="e#15695#15828#0" expanded="false" />
|
||||
<element signature="e#15858#18558#0" expanded="false" />
|
||||
<element signature="e#19182#19323#0" expanded="false" />
|
||||
<element signature="e#19364#19700#0" expanded="false" />
|
||||
<element signature="e#20032#20127#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/Anteoloader.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state vertical-scroll-proportion="0.46523178">
|
||||
<caret line="320" column="20" selection-start-line="320" selection-start-column="20" selection-end-line="320" selection-end-column="20" />
|
||||
<folding>
|
||||
<element signature="e#24#785#1" expanded="false" />
|
||||
<element signature="e#2114#6189#0" expanded="false" />
|
||||
<element signature="e#3015#3125#0" expanded="false" />
|
||||
<element signature="e#3167#3262#0" expanded="false" />
|
||||
<element signature="e#3302#3966#0" expanded="false" />
|
||||
<element signature="e#4015#5899#0" expanded="false" />
|
||||
<element signature="e#5936#6115#0" expanded="false" />
|
||||
<element signature="e#6164#6189#0" expanded="false" />
|
||||
<element signature="e#7824#7934#0" expanded="false" />
|
||||
<element signature="e#7964#8559#0" expanded="false" />
|
||||
<element signature="e#9099#12516#0" expanded="false" />
|
||||
<element signature="e#12977#13072#0" expanded="false" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
|
279
Anteoloader.py
279
Anteoloader.py
|
@ -24,27 +24,67 @@ import hashlib
|
|||
import re
|
||||
from StringIO import StringIO
|
||||
import gzip
|
||||
import sys
|
||||
from contextlib import closing
|
||||
|
||||
import xbmc
|
||||
import xbmcgui
|
||||
import xbmcvfs
|
||||
import xbmcplugin
|
||||
import Localization
|
||||
from functions import file_encode, isSubtitle, DownloadDB, log, debug, is_writable, unquote
|
||||
|
||||
|
||||
import os
|
||||
import urllib
|
||||
import json
|
||||
import sys
|
||||
from contextlib import contextmanager, closing, nested
|
||||
|
||||
|
||||
from functions import calculate, showMessage, clearStorage, DownloadDB, get_ids_video, log, debug
|
||||
|
||||
from torrent2http import State, Engine, MediaType
|
||||
|
||||
class Anteoloader:
|
||||
ROOT = sys.modules["__main__"].__root__
|
||||
RESOURCES_PATH = os.path.join(ROOT, 'resources')
|
||||
TORRENT2HTTP_TIMEOUT = 20
|
||||
TORRENT2HTTP_POLL = 1000
|
||||
PLAYING_EVENT_INTERVAL = 60
|
||||
MIN_COMPLETED_PIECES = 0.5
|
||||
|
||||
WINDOW_FULLSCREEN_VIDEO = 12005
|
||||
|
||||
XBFONT_LEFT = 0x00000000
|
||||
XBFONT_RIGHT = 0x00000001
|
||||
XBFONT_CENTER_X = 0x00000002
|
||||
XBFONT_CENTER_Y = 0x00000004
|
||||
XBFONT_TRUNCATED = 0x00000008
|
||||
XBFONT_JUSTIFY = 0x00000010
|
||||
|
||||
STATE_STRS = [
|
||||
'Queued',
|
||||
'Checking',
|
||||
'Downloading metadata',
|
||||
'Downloading',
|
||||
'Finished',
|
||||
'Seeding',
|
||||
'Allocating',
|
||||
'Allocating file & Checking resume'
|
||||
]
|
||||
|
||||
VIEWPORT_WIDTH = 1920.0
|
||||
VIEWPORT_HEIGHT = 1088.0
|
||||
OVERLAY_WIDTH = int(VIEWPORT_WIDTH * 0.7) # 70% size
|
||||
OVERLAY_HEIGHT = 150
|
||||
|
||||
ENCRYPTION_SETTINGS = {
|
||||
"Forced": 0,
|
||||
"Enabled": 1,
|
||||
"Disabled": 2,
|
||||
}
|
||||
|
||||
class AnteoLoader:
|
||||
magnetLink = None
|
||||
startPart = 0
|
||||
endPart = 0
|
||||
partOffset = 0
|
||||
torrentHandle = None
|
||||
session = None
|
||||
engine = None
|
||||
downloadThread = None
|
||||
threadComplete = False
|
||||
torrentFile = None
|
||||
|
||||
def __init__(self, storageDirectory='', torrentFile='', torrentFilesDirectory='torrents'):
|
||||
self.storageDirectory = storageDirectory
|
||||
|
@ -57,15 +97,10 @@ class Anteoloader:
|
|||
sys.exit(1)
|
||||
|
||||
#pre settings
|
||||
self.pre_buffer_bytes = 15*1024*1024
|
||||
print torrentFile
|
||||
torrentFile=unquote(torrentFile)
|
||||
print torrentFile
|
||||
print str(xbmcvfs.exists(torrentFile))
|
||||
print str(os.path.exists(torrentFile))
|
||||
|
||||
|
||||
self.engine = Engine(uri=torrentFile)
|
||||
if xbmcvfs.exists(torrentFile):
|
||||
self.torrentFile = "file:///"+torrentFile.replace('\\','//').replace('////','//')
|
||||
elif re.match("^magnet\:.+$", torrentFile):
|
||||
self.magnetLink = torrentFile
|
||||
|
||||
def __exit__(self):
|
||||
log('on __exit__')
|
||||
|
@ -73,17 +108,22 @@ class Anteoloader:
|
|||
self.engine.close()
|
||||
log('__exit__ worked!')
|
||||
|
||||
def localize(self, string):
|
||||
try:
|
||||
return Localization.localize(string)
|
||||
except:
|
||||
return string
|
||||
|
||||
def getContentList(self, media_types=None):
|
||||
def getContentList(self):
|
||||
self.engine = Engine(uri=self.torrentFile)
|
||||
files = []
|
||||
filelist = []
|
||||
with closing(self.engine):
|
||||
self.engine.start()
|
||||
if media_types is None:
|
||||
media_types=[MediaType.VIDEO, MediaType.AUDIO, MediaType.SUBTITLES, MediaType.UNKNOWN]
|
||||
#media_types=[MediaType.VIDEO, MediaType.AUDIO, MediaType.SUBTITLES, MediaType.UNKNOWN]
|
||||
|
||||
while not files and not xbmc.abortRequested:
|
||||
files = self.engine.list(media_types)
|
||||
files = self.engine.list()
|
||||
self.engine.check_torrent_error()
|
||||
xbmc.sleep(200)
|
||||
|
||||
|
@ -91,26 +131,128 @@ class Anteoloader:
|
|||
stringdata = {"title": fs.name, "size": fs.size, "ind": fs.index,
|
||||
'offset': fs.offset}
|
||||
filelist.append(stringdata)
|
||||
return filelist
|
||||
|
||||
def saveTorrent(self, torrentUrl):
|
||||
if not xbmcvfs.exists(torrentUrl):
|
||||
if re.match("^magnet\:.+$", torrentUrl):
|
||||
self.magnetLink = torrentUrl
|
||||
self.magnetToTorrent(torrentUrl)
|
||||
self.magnetLink = None
|
||||
return self.torrentFile
|
||||
else:
|
||||
if not xbmcvfs.exists(self.torrentFilesPath):
|
||||
xbmcvfs.mkdirs(self.torrentFilesPath)
|
||||
torrentFile = self.torrentFilesPath + self.md5(
|
||||
torrentUrl) + '.torrent'
|
||||
try:
|
||||
if not re.match("^http\:.+$", torrentUrl):
|
||||
content = xbmcvfs.File(torrentUrl, "rb").read()
|
||||
else:
|
||||
request = urllib2.Request(torrentUrl)
|
||||
request.add_header('Referer', torrentUrl)
|
||||
request.add_header('Accept-encoding', 'gzip')
|
||||
result = urllib2.urlopen(request)
|
||||
if result.info().get('Content-Encoding') == 'gzip':
|
||||
buf = StringIO(result.read())
|
||||
f = gzip.GzipFile(fileobj=buf)
|
||||
content = f.read()
|
||||
else:
|
||||
content = result.read()
|
||||
|
||||
def stream(self, params):
|
||||
localFile = xbmcvfs.File(torrentFile, "w+b")
|
||||
localFile.write(content)
|
||||
localFile.close()
|
||||
except Exception, e:
|
||||
print 'Unable to save torrent file from "' + torrentUrl + '" to "' + torrentFile + '" in Torrent::saveTorrent' + '. Exception: ' + str(
|
||||
e)
|
||||
return
|
||||
else:
|
||||
torrentFile = torrentUrl
|
||||
if xbmcvfs.exists(torrentFile):
|
||||
self.torrentFile = "file:///"+torrentFile.replace('\\','//').replace('////','//')
|
||||
return self.torrentFile
|
||||
|
||||
def md5(self, string):
|
||||
hasher = hashlib.md5()
|
||||
try:
|
||||
hasher.update(string)
|
||||
except:
|
||||
hasher.update(string.encode('utf-8', 'ignore'))
|
||||
return hasher.hexdigest()
|
||||
|
||||
def magnetToTorrent(self, magnet):
|
||||
self.torrentFile = magnet
|
||||
|
||||
class AnteoPlayer(xbmc.Player):
|
||||
__plugin__ = sys.modules["__main__"].__plugin__
|
||||
__settings__ = sys.modules["__main__"].__settings__
|
||||
ROOT = sys.modules["__main__"].__root__ # .decode('utf-8').encode(sys.getfilesystemencoding())
|
||||
USERAGENT = "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0"
|
||||
torrentFilesDirectory = 'torrents'
|
||||
debug = __settings__.getSetting('debug') == 'true'
|
||||
subs_dl = __settings__.getSetting('subs_dl') == 'true'
|
||||
seeding = __settings__.getSetting('keep_seeding') == 'true' and __settings__.getSetting('keep_files') == '1'
|
||||
seeding_status = False
|
||||
seeding_run = False
|
||||
ids_video = None
|
||||
episodeId = None
|
||||
basename = ''
|
||||
|
||||
def __init__(self, userStorageDirectory, torrentUrl, params={}):
|
||||
self.userStorageDirectory = userStorageDirectory
|
||||
self.torrentUrl = torrentUrl
|
||||
xbmc.Player.__init__(self)
|
||||
log("[TorrentPlayer] Initalized")
|
||||
self.params = params
|
||||
self.get = self.params.get
|
||||
self.contentId = int(self.get("url")) if self.get("url") else 0
|
||||
#with closing(self.engine):
|
||||
self.contentId = int(self.get("url"))
|
||||
self.torrent = AnteoLoader(self.userStorageDirectory, self.torrentUrl, self.torrentFilesDirectory)
|
||||
try:
|
||||
if self.get("url2"):
|
||||
self.ids_video = urllib.unquote_plus(self.get("url2")).split(',')
|
||||
else:
|
||||
self.ids_video = self.get_ids()
|
||||
except:
|
||||
pass
|
||||
self.init()
|
||||
self.setup_engine()
|
||||
with closing(self.engine):
|
||||
self.engine.start(self.contentId)
|
||||
|
||||
ready = self.buffer()
|
||||
if ready:
|
||||
file_status = self.engine.file_status(self.contentId)
|
||||
listitem = xbmcgui.ListItem('xxxx')
|
||||
playlist = xbmc.PlayList(xbmc.PLAYLIST_VIDEO)
|
||||
playlist.clear()
|
||||
playlist.add(file_status.url, listitem)
|
||||
xbmc.Player().play(playlist)
|
||||
while not xbmc.abortRequested and xbmc.Player().isPlaying():
|
||||
xbmc.sleep(500)
|
||||
xbmc.Player().stop()
|
||||
self.stream()
|
||||
|
||||
|
||||
def __exit__(self):
|
||||
log('on __exit__')
|
||||
if self.engine:
|
||||
self.engine.close()
|
||||
log('__exit__ worked!')
|
||||
|
||||
def init(self):
|
||||
self.next_dl = True if self.__settings__.getSetting('next_dl') == 'true' and self.ids_video else False
|
||||
log('[AnteoPlayer]: init - ' + str(self.next_dl))
|
||||
self.next_contentId = False
|
||||
self.display_name = ''
|
||||
self.downloadedSize = 0
|
||||
self.dialog = xbmcgui.Dialog()
|
||||
self.on_playback_started = []
|
||||
self.on_playback_resumed = []
|
||||
self.on_playback_paused = []
|
||||
self.on_playback_stopped = []
|
||||
if xbmcvfs.exists(self.torrentUrl):
|
||||
self.torrentUrl = "file:///"+str(self.torrentUrl).replace('\\','//').replace('////','//')
|
||||
|
||||
def setup_engine(self):
|
||||
encryption = True if self.__settings__.getSetting('encryption') == 'true' else False
|
||||
|
||||
upload_limit = self.__settings__.getSetting("upload_limit") if self.__settings__.getSetting(
|
||||
"upload_limit") != "" else 0
|
||||
download_limit = self.__settings__.getSetting("download_limit") if self.__settings__.getSetting(
|
||||
"download_limit") != "" else 0
|
||||
self.pre_buffer_bytes = 15*1024*1024
|
||||
self.engine = Engine(uri=self.torrentUrl)
|
||||
|
||||
def buffer(self):
|
||||
ready = False
|
||||
|
@ -178,60 +320,19 @@ class Anteoloader:
|
|||
progressBar.close()
|
||||
return ready
|
||||
|
||||
def stream(self):
|
||||
file_status = self.engine.file_status(self.contentId)
|
||||
listitem = xbmcgui.ListItem('xxxx')
|
||||
playlist = xbmc.PlayList(xbmc.PLAYLIST_VIDEO)
|
||||
playlist.clear()
|
||||
playlist.add(file_status.url, listitem)
|
||||
xbmc.Player().play(playlist)
|
||||
while not xbmc.abortRequested and xbmc.Player().isPlaying():
|
||||
xbmc.sleep(500)
|
||||
xbmc.Player().stop()
|
||||
|
||||
def localize(self, string):
|
||||
try:
|
||||
return Localization.localize(string)
|
||||
except:
|
||||
return string
|
||||
|
||||
|
||||
def saveTorrent(self, torrentUrl):
|
||||
if not xbmcvfs.exists(torrentUrl):
|
||||
if re.match("^magnet\:.+$", torrentUrl):
|
||||
self.magnetLink = torrentUrl
|
||||
self.magnetToTorrent(torrentUrl)
|
||||
self.magnetLink = None
|
||||
return self.torrentFile
|
||||
else:
|
||||
if not xbmcvfs.exists(self.torrentFilesPath):
|
||||
xbmcvfs.mkdirs(self.torrentFilesPath)
|
||||
torrentFile = self.torrentFilesPath + self.md5(
|
||||
torrentUrl) + '.torrent'
|
||||
try:
|
||||
if not re.match("^http\:.+$", torrentUrl):
|
||||
content = xbmcvfs.File(torrentUrl, "rb").read()
|
||||
else:
|
||||
request = urllib2.Request(torrentUrl)
|
||||
request.add_header('Referer', torrentUrl)
|
||||
request.add_header('Accept-encoding', 'gzip')
|
||||
result = urllib2.urlopen(request)
|
||||
if result.info().get('Content-Encoding') == 'gzip':
|
||||
buf = StringIO(result.read())
|
||||
f = gzip.GzipFile(fileobj=buf)
|
||||
content = f.read()
|
||||
else:
|
||||
content = result.read()
|
||||
|
||||
localFile = xbmcvfs.File(torrentFile, "w+b")
|
||||
localFile.write(content)
|
||||
localFile.close()
|
||||
except Exception, e:
|
||||
print 'Unable to save torrent file from "' + torrentUrl + '" to "' + torrentFile + '" in Torrent::saveTorrent' + '. Exception: ' + str(
|
||||
e)
|
||||
return
|
||||
else:
|
||||
torrentFile = torrentUrl
|
||||
if xbmcvfs.exists(torrentFile):
|
||||
self.torrentFile = "file:///"+torrentFile.replace('\\','//').replace('////','//')
|
||||
return self.torrentFile
|
||||
|
||||
def md5(self, string):
|
||||
hasher = hashlib.md5()
|
||||
try:
|
||||
hasher.update(string)
|
||||
except:
|
||||
hasher.update(string.encode('utf-8', 'ignore'))
|
||||
return hasher.hexdigest()
|
||||
|
||||
def magnetToTorrent(self, magnet):
|
||||
self.torrentFile = magnet
|
20
Core.py
20
Core.py
|
@ -45,7 +45,6 @@ class Core:
|
|||
|
||||
def __init__(self):
|
||||
print '!!!!!!!!!!!!!!!!!! BORN '+self.__class__.__name__
|
||||
print str(self.ROOT)
|
||||
if len(self.userStorageDirectory) == 0:
|
||||
download_dir = get_download_dir()
|
||||
else:
|
||||
|
@ -234,7 +233,7 @@ class Core:
|
|||
lockView('wide')
|
||||
|
||||
def test(self, params={}):
|
||||
from Anteoloader import Anteoloader
|
||||
from Anteoloader import AnteoLoader
|
||||
torrentUrl='D:\\ntest.torrent'
|
||||
params['url']='0'
|
||||
if not xbmcvfs.exists(torrentUrl):
|
||||
|
@ -242,13 +241,14 @@ class Core:
|
|||
torrentUrl = action.browse(1, self.localize('Choose .torrent in video library'), 'video', '.torrent')
|
||||
if torrentUrl and xbmcvfs.exists(torrentUrl):
|
||||
if 0 != len(torrentUrl):
|
||||
self.Downloader = Anteoloader(self.userStorageDirectory, torrentUrl)
|
||||
self.Downloader = Downloader.Torrent(self.userStorageDirectory, torrentUrl)
|
||||
else:
|
||||
print self.__plugin__ + " Unexpected access to method Anteoloader() without torrent content"
|
||||
if self.Downloader:
|
||||
self.Downloader.stream()
|
||||
x=self.Downloader.getContentList()
|
||||
print str(x)
|
||||
xbmc.sleep(1000)
|
||||
self.Downloader.__exit__()
|
||||
#self.Downloader.__exit__()
|
||||
|
||||
def DownloadStatus(self, params={}):
|
||||
db = DownloadDB()
|
||||
|
@ -972,7 +972,7 @@ class Core:
|
|||
def drawItem(self, title, action, link='', image='', isFolder=True, contextMenu=None, replaceMenu=True, action2='',
|
||||
info={}):
|
||||
listitem = xbmcgui.ListItem(title, iconImage=image, thumbnailImage=image)
|
||||
log('[drawItem]:'+str((title, action, image, isFolder, contextMenu, replaceMenu, action2, info)))
|
||||
#log('[drawItem]:'+str((title, action, image, isFolder, contextMenu, replaceMenu, action2, info)))
|
||||
if not info: info = {"Title": title, "plot": title}
|
||||
if isinstance(link, dict):
|
||||
link_url = ''
|
||||
|
@ -1209,8 +1209,8 @@ class Core:
|
|||
|
||||
def torrentPlayer(self, params={}):
|
||||
get = params.get
|
||||
url = unquote(get("url"),None)
|
||||
tdir = unquote(get("url2"),None)
|
||||
url = unquote(get("url"), None)
|
||||
tdir = unquote(get("url2"), None)
|
||||
|
||||
if not url:
|
||||
action = xbmcgui.Dialog()
|
||||
|
@ -1294,9 +1294,9 @@ class Core:
|
|||
else:
|
||||
print self.__plugin__ + " Unexpected access to method playTorrent() without torrent content"
|
||||
elif self.torrent_player == '2':
|
||||
from BTClientPlayer import BTClientPlayer
|
||||
from Anteoloader import AnteoPlayer
|
||||
if 0 != len(torrentUrl):
|
||||
self.Player = BTClientPlayer(userStorageDirectory=self.userStorageDirectory, torrentUrl=torrentUrl, params=params)
|
||||
self.Player = AnteoPlayer(userStorageDirectory=self.userStorageDirectory, torrentUrl=torrentUrl, params=params)
|
||||
else:
|
||||
print self.__plugin__ + " Unexpected access to method playTorrent() without torrent content"
|
||||
elif self.torrent_player == '1':
|
||||
|
|
|
@ -38,7 +38,7 @@ class Torrent():
|
|||
self.player = AceStream.AceStream(storageDirectory, torrentFile, torrentFilesDirectory)
|
||||
|
||||
elif self.player == 'anteo':
|
||||
self.player = Anteoloader.Anteoloader(storageDirectory, torrentFile, torrentFilesDirectory)
|
||||
self.player = Anteoloader.AnteoLoader(storageDirectory, torrentFile, torrentFilesDirectory)
|
||||
|
||||
def __exit__(self):
|
||||
self.player.__exit__()
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
<string id="30043">Delete files</string>
|
||||
<string id="30044">Save files</string>
|
||||
<string id="30045">Ask to save</string>
|
||||
<string id="30046">BTclient (python-libtorrent via http)</string>
|
||||
<string id="30046">Torrent2HTTP (python-libtorrent via http)</string>
|
||||
<string id="30047">Auto-unblocking proxy</string>
|
||||
<string id="30048">None</string>
|
||||
<string id="30049">Anti-zapret</string>
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
<string id="30043">מחיקת קבצים</string>
|
||||
<string id="30044">שמור קבצים</string>
|
||||
<string id="30045">שאל לשמירה</string>
|
||||
<string id="30046">BTclient (python-libtorrent via http)</string>
|
||||
<string id="30046">Torrent2HTTP (python-libtorrent via http)</string>
|
||||
<string id="30047">ביטול אוטומטי של חסימת proxy</string>
|
||||
<string id="30048">ללא</string>
|
||||
<string id="30049">Anti-zapret</string>
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
<string id="30043">Удалять файлы</string>
|
||||
<string id="30044">Сохранять файлы</string>
|
||||
<string id="30045">Спросить о сохранении</string>
|
||||
<string id="30046">BTclient (python-libtorrent по http)</string>
|
||||
<string id="30046">Torrent2HTTP (python-libtorrent по http)</string>
|
||||
<string id="30047">Антизапрет (прокси)</string>
|
||||
<string id="30048">Не использовать</string>
|
||||
<string id="30049">Anti-zapret</string>
|
||||
|
|
Loading…
Reference in New Issue