some really shady shit
parent
94e02d116b
commit
4223c6d942
|
@ -302,6 +302,9 @@ class AnteoPlayer(xbmc.Player):
|
|||
if self.buffer():
|
||||
log('[AnteoPlayer]: ************************************* GOING LOOP')
|
||||
if self.setup_play():
|
||||
WatchedHistoryDB().add(self.basename,
|
||||
foldername(self.getContentList()[self.contentId]['title']),
|
||||
self.watchedTime, self.totalTime, self.contentId, self.fullSize)
|
||||
self.setup_subs()
|
||||
self.loop()
|
||||
WatchedHistoryDB().add(self.basename, foldername(self.getContentList()[self.contentId]['title']), self.watchedTime, self.totalTime, self.contentId, self.fullSize)
|
||||
|
@ -321,19 +324,19 @@ class AnteoPlayer(xbmc.Player):
|
|||
|
||||
log('[AnteoPlayer]: ************************************* NO! break')
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('Stopping the torrent2http process...'), forced=True)
|
||||
self.localize('Stopping the torrent2http process...'))
|
||||
break
|
||||
|
||||
xbmc.Player().stop()
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
if '1' != self.__settings__.getSetting("keep_files") and 'Saved Files' not in self.userStorageDirectory:
|
||||
xbmc.sleep(1000)
|
||||
clearStorage(self.userStorageDirectory)
|
||||
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('torrent2http process stopped.'), forced=True)
|
||||
self.localize('torrent2http process stopped.'))
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
def init(self):
|
||||
self.next_contentId = False
|
||||
|
|
7
Core.py
7
Core.py
|
@ -1473,7 +1473,10 @@ class Core:
|
|||
self.userStorageDirectory=dirname
|
||||
|
||||
def playTorrent(self, params={}):
|
||||
torrentUrl = self.__settings__.getSetting("lastTorrent")
|
||||
if params.get('filename'):
|
||||
torrentUrl = params.get('filename')
|
||||
else:
|
||||
torrentUrl = self.__settings__.getSetting("lastTorrent")
|
||||
#xbmc.executebuiltin('Action(Stop)')
|
||||
self.userStorage(params)
|
||||
if self.torrent_player == '0':
|
||||
|
@ -1608,7 +1611,7 @@ class Core:
|
|||
'XBMC.RunPlugin(%s)' % ('%s?action=%s&ind=%s') % (
|
||||
sys.argv[0], 'downloadLibtorrent', str(identifier))),
|
||||
]
|
||||
link = {'url': identifier, 'thumbnail': thumbnail, 'save_folder':save_folder}
|
||||
link = {'url': identifier, 'thumbnail': thumbnail, 'save_folder':save_folder, 'filename':url}
|
||||
self.drawItem(title, 'playTorrent', link, image=thumbnail, isFolder=False,
|
||||
action2=ids_video.rstrip(','), contextMenu=contextMenu, replaceMenu=False, fileSize=filesize)
|
||||
view_style('openTorrent')
|
||||
|
|
|
@ -273,6 +273,9 @@ class InposPlayer(xbmc.Player):
|
|||
while True:
|
||||
log('['+author+'Player]: ************************************* GOING LOOP')
|
||||
if self.setup_play():
|
||||
WatchedHistoryDB().add(self.basename,
|
||||
foldername(self.getContentList()[self.contentId]['title']),
|
||||
self.watchedTime, self.totalTime, self.contentId, self.fullSize)
|
||||
self.setup_subs()
|
||||
self.loop()
|
||||
WatchedHistoryDB().add(self.basename, foldername(self.getContentList()[self.contentId]['title']), self.watchedTime, self.totalTime, self.contentId, self.fullSize)
|
||||
|
@ -301,8 +304,6 @@ class InposPlayer(xbmc.Player):
|
|||
|
||||
xbmc.Player().stop()
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
if '1' != self.__settings__.getSetting("keep_files") and 'Saved Files' not in self.userStorageDirectory:
|
||||
xbmc.sleep(1000)
|
||||
clearStorage(self.userStorageDirectory)
|
||||
|
@ -313,7 +314,9 @@ class InposPlayer(xbmc.Player):
|
|||
#else:
|
||||
#if self.seeding: self.db_delete()
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('Torrent downloading is stopped.'), forced=True)
|
||||
self.localize('Torrent downloading is stopped.'))
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
def init(self):
|
||||
self.next_contentId = False
|
||||
|
@ -572,7 +575,7 @@ class InposPlayer(xbmc.Player):
|
|||
int) and self.next_contentId != False:
|
||||
self.engine.activate_file(self.next_contentId)
|
||||
showMessage(self.localize('Torrent Downloading'),
|
||||
self.localize('Starting download next episode!'), forced=True)
|
||||
self.localize('Starting download next episode!'))
|
||||
log('[loop]: next_contentId '+str(self.next_contentId)+str(isinstance(self.next_contentId, int)))
|
||||
file_status = self.engine.file_status(self.next_contentId)
|
||||
self.basename = self.display_name = os.path.basename(file_status.name)
|
||||
|
|
16
Player.py
16
Player.py
|
@ -166,6 +166,10 @@ class TorrentPlayer(xbmc.Player):
|
|||
debug('************************************* GOING LOOP')
|
||||
self.torrent.startSession()
|
||||
self.torrent.continueSession(self.contentId)
|
||||
WatchedHistoryDB().add(self.basename,
|
||||
foldername(self.torrent.getContentList()[self.contentId]['title']),
|
||||
self.watchedTime, self.totalTime, self.contentId,
|
||||
self.fullSize / 1024 / 1024)
|
||||
self.loop()
|
||||
WatchedHistoryDB().add(self.basename, foldername(self.torrent.getContentList()[self.contentId]['title']), self.watchedTime, self.totalTime, self.contentId, self.fullSize / 1024 / 1024)
|
||||
else:
|
||||
|
@ -184,8 +188,6 @@ class TorrentPlayer(xbmc.Player):
|
|||
debug('************************************* NO! break')
|
||||
break
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
self.torrent.stopSession()
|
||||
self.torrent.threadComplete = True
|
||||
self.torrent.checkThread()
|
||||
|
@ -195,11 +197,13 @@ class TorrentPlayer(xbmc.Player):
|
|||
else:
|
||||
if self.seeding_status:
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('Torrent is seeding. To stop it use Download Status.'), forced=True)
|
||||
self.localize('Torrent is seeding. To stop it use Download Status.'))
|
||||
else:
|
||||
if self.seeding: self.db_delete()
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('Torrent downloading is stopped.'), forced=True)
|
||||
self.localize('Torrent downloading is stopped.'))
|
||||
|
||||
loadsw_onstop() # Reload Search Window
|
||||
|
||||
def init(self):
|
||||
self.next_dl = True if self.__settings__.getSetting('next_dl') == 'true' and self.ids_video else False
|
||||
|
@ -369,7 +373,7 @@ class TorrentPlayer(xbmc.Player):
|
|||
if len(subs) > 0:
|
||||
self.torrent.startSession()
|
||||
showMessage(self.localize('Information'),
|
||||
self.localize('Downloading and copy subtitles. Please wait.'), forced=True)
|
||||
self.localize('Downloading and copy subtitles. Please wait.'))
|
||||
for ind, title in subs:
|
||||
self.torrent.continueSession(ind)
|
||||
while iterator < 100:
|
||||
|
@ -457,7 +461,7 @@ class TorrentPlayer(xbmc.Player):
|
|||
if self.iterator == 100 and self.next_dl and not self.next_dling and isinstance(self.next_contentId,
|
||||
int) and self.next_contentId != False:
|
||||
showMessage(self.localize('Torrent Downloading'),
|
||||
self.localize('Starting download next episode!'), forced=True)
|
||||
self.localize('Starting download next episode!'))
|
||||
self.torrent.stopSession()
|
||||
# xbmc.sleep(1000)
|
||||
path = self.torrent.getFilePath(self.next_contentId)
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
English changelog at http://bit.ly/1MfSVUP
|
||||
|
||||
[B]Version 2.6.0[/B]
|
||||
[+] Окно Поиска: Полноценный релиз
|
||||
[+] Настройки: Добавлена возможность отключения уведомлений
|
||||
[+] История Просмотров: При аварийном выходе данные остаются
|
||||
|
||||
[B]Version 2.5.6[/B]
|
||||
[+] Списки Медиа: Добавлен RuTorOrg
|
||||
|
||||
|
|
12
functions.py
12
functions.py
|
@ -93,10 +93,10 @@ def clearStorage(userStorageDirectory, force = False):
|
|||
if saved_bool:
|
||||
shutil.move(saved_temp, saved)
|
||||
|
||||
showMessage(Localization.localize('Storage'), Localization.localize('Storage has been cleared'), forced=True)
|
||||
showMessage(Localization.localize('Storage'), Localization.localize('Storage has been cleared'))
|
||||
|
||||
else:
|
||||
showMessage(Localization.localize('Storage'), Localization.localize('Does not exists'), forced=True)
|
||||
showMessage(Localization.localize('Storage'), Localization.localize('Does not exists'))
|
||||
log('[clearStorage]: fail storage '+userStorageDirectory + os.sep)
|
||||
|
||||
try:
|
||||
|
@ -152,8 +152,9 @@ def debug(msg, forced=False):
|
|||
|
||||
|
||||
def showMessage(heading, message, times=10000, forced=False):
|
||||
xbmc.executebuiltin('XBMC.Notification("%s", "%s", %s, "%s")' % (
|
||||
heading.replace('"', "'"), message.replace('"', "'"), times, icon))
|
||||
if forced or not getSettingAsBool('disable_notifications'):
|
||||
xbmc.executebuiltin('XBMC.Notification("%s", "%s", %s, "%s")' % (
|
||||
heading.replace('"', "'"), message.replace('"', "'"), times, icon))
|
||||
debug(str((heading.replace('"', "'"), message.replace('"', "'"), times, icon)))
|
||||
|
||||
|
||||
|
@ -1362,6 +1363,7 @@ def get_contentList(url):
|
|||
import Downloader
|
||||
|
||||
url = urllib.unquote_plus(url)
|
||||
log('0' + __settings__.getSetting("lastTorrent"))
|
||||
|
||||
__settings__.setSetting("lastTorrentUrl", url)
|
||||
classMatch = re.search('(\w+)::(.+)', url)
|
||||
|
@ -1372,7 +1374,9 @@ def get_contentList(url):
|
|||
|
||||
torrent = Downloader.Torrent(userStorageDirectory, url, torrentFilesDirectory=torrentFilesDirectory)
|
||||
|
||||
log('1'+__settings__.getSetting("lastTorrent"))
|
||||
__settings__.setSetting("lastTorrent", torrent.saveTorrent(url))
|
||||
log('2'+__settings__.getSetting("lastTorrent"))
|
||||
|
||||
append_filesize = __settings__.getSetting("append_filesize") == 'true'
|
||||
|
||||
|
|
|
@ -85,6 +85,7 @@
|
|||
<string id="30109">Enabled, optional</string>
|
||||
<string id="30110">Disabled</string>
|
||||
<string id="30111">Search Window Transparent Background</string>
|
||||
<string id="30112">Disable Notifications</string>
|
||||
<string id="50301">Save path</string>
|
||||
<string id="50302">Call dialog</string>
|
||||
<string id="50303">Default</string>
|
||||
|
|
|
@ -79,6 +79,13 @@
|
|||
<string id="30103">Дополнительные</string>
|
||||
<string id="30104">Торрент-клиент</string>
|
||||
<string id="30105">Hentai (тонкая настр.)</string>
|
||||
<string id="30106">Режим работы Окна Поиска</string>
|
||||
<string id="30107">Включен, убрать старый вид</string>
|
||||
<string id="30108">Включен, заменить старый вид</string>
|
||||
<string id="30109">Включен, как опция</string>
|
||||
<string id="30110">Отключен</string>
|
||||
<string id="30111">Прозрачность Окна Поиска</string>
|
||||
<string id="30112">Отключить Уведомления</string>
|
||||
<string id="50301">Директория для сохранения файлов</string>
|
||||
<string id="50302">Вызывать диалог</string>
|
||||
<string id="50303">Задать по умолчанию</string>
|
||||
|
|
|
@ -73,6 +73,7 @@
|
|||
<setting id="enable_dht" type="bool" label="30070" default="true" visible="!eq(-8,1)"/>
|
||||
<setting id="append_filesize" type="bool" label="30069" default="true"/>
|
||||
<setting id="torrent_info_style" type="enum" label="30072" default="0" lvalues="30073|30074|30075"/>
|
||||
<setting id="disable_notifications" type="bool" label="30112" default="false"/>
|
||||
<setting id="sw_transparent_back" type="bool" label="30111" default="false"/>
|
||||
</category>
|
||||
</settings>
|
||||
|
|
|
@ -240,8 +240,11 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
navi = read.read()
|
||||
read.close()
|
||||
|
||||
debug('navi_load navi: '+str(navi))
|
||||
log('navi_load navi: ' + str(navi['route']))
|
||||
try:
|
||||
debug('navi_load navi: '+str(navi))
|
||||
log('navi_load navi: ' + str(navi['route']))
|
||||
except:
|
||||
log('navi_load load error')
|
||||
|
||||
if navi and len(navi) > 0:
|
||||
self.navi = json.loads(navi)
|
||||
|
@ -335,7 +338,11 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
if query:
|
||||
self.input_search.setText(query)
|
||||
else:
|
||||
query = self.input_search.getText()
|
||||
if self.input_search.getText() not in ['', None]:
|
||||
query = self.input_search.getText()
|
||||
elif self.navi['last_query'] not in ['', None]:
|
||||
query = self.navi['last_query']
|
||||
self.input_search.setText(self.navi['last_query'])
|
||||
|
||||
log('Search query: ' + str(query))
|
||||
|
||||
|
@ -814,7 +821,7 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
|
||||
contentListNew = sorted(contentListNew, key=lambda x: x[0], reverse=False)
|
||||
for title, identifier, filesize in contentListNew:
|
||||
params = {'mode': 'torrent_play', 'url': identifier, 'url2': ids_video.rstrip(','), 'filename': link}
|
||||
params = {'mode': 'torrent_play', 'fileIndex': identifier, 'url2': ids_video.rstrip(','), 'url': link}
|
||||
self.drawItem(title, params)
|
||||
|
||||
self.navi_save('open_torrent')
|
||||
|
@ -865,7 +872,11 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
return label_list
|
||||
|
||||
def context(self):
|
||||
if self.getFocus() == self.listing:
|
||||
try:
|
||||
focused_control = self.getFocus()
|
||||
except:
|
||||
focused_control = None
|
||||
if focused_control == self.listing:
|
||||
item = self.listing.getSelectedItem()
|
||||
params = json.loads(item.getfilename())
|
||||
mode = params.get('mode')
|
||||
|
@ -879,6 +890,8 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
|
||||
if ret > -1 and ret < len(label_list):
|
||||
getattr(self, "right_press" + str(ret + 1))()
|
||||
elif focused_control == self.input_search:
|
||||
self.input_search.setText('')
|
||||
|
||||
def right_menu(self, mode='place'):
|
||||
if not mode == 'place':
|
||||
|
@ -1028,7 +1041,7 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
self.navi_back()
|
||||
elif mode == 'torrent_play':
|
||||
if index == 1:
|
||||
url = self.form_link('playTorrent', params)
|
||||
url = self.form_link('playSTRM', params)
|
||||
xbmc.executebuiltin('xbmc.RunPlugin("%s")' % (url))
|
||||
__settings__.setSetting('loadsw_onstop', 'true')
|
||||
self.close()
|
||||
|
@ -1125,7 +1138,7 @@ class SearchWindow(pyxbmct.AddonDialogWindow):
|
|||
link_url = ''
|
||||
for key in link.keys():
|
||||
if link.get(key) and key != 'mode':
|
||||
link_url = '%s&%s=%s' % (link_url, key, urllib.quote_plus(link.get(key)))
|
||||
link_url = '%s&%s=%s' % (link_url, key, urllib.quote_plus(ensure_str(link.get(key))))
|
||||
url = '%s?action=%s' % ('plugin://plugin.video.torrenter/', action) + link_url
|
||||
else:
|
||||
url = '%s?action=%s&url=%s' % ('plugin://plugin.video.torrenter/', action, urllib.quote_plus(link))
|
||||
|
|
Loading…
Reference in New Issue