import os
import xbmc
import xbmcgui
import xbmcaddon
import xbmcplugin
import xbmcvfs
try: 
	import simplejson as json
except ImportError: 
	import json
from metahandler import metahandlers
from donnie.settings import Settings
from donnie.databaseconnector import DataConnector
reg = Settings(['plugin.video.theroyalwe', 'script.module.donnie'])

if reg.getBoolSetting('tv_show_custom_directory'):
	TV_SHOWS_PATH = reg.getSetting('tv_show_directory')
else:
	DATA_PATH = os.path.join(xbmc.translatePath('special://profile/addon_data/plugin.video.theroyalwe'), '')
	TV_SHOWS_PATH = os.path.join(xbmc.translatePath(DATA_PATH + 'tvshows'), '')


def xbmcpath(path,filename):
	path = path.replace('/', os.sep)
     	translatedpath = os.path.join(xbmc.translatePath( path ), ''+filename+'')
     	return translatedpath

def formatStrPath(showname, season, episode):
	strpath = xbmcpath(TV_SHOWS_PATH, showname)
	strpath = xbmcpath(strpath, 'Season %s' % season)
	strfile = '%sx%s Episode.strm' % (season, str(episode).zfill(2))
Beispiel #2
0
		xbmc.executebuiltin("XBMC.Notification("+title+","+message+", 1000, "+image+")")

	def mkdir(self, dir_path):
		dir_path = dir_path.strip()
		if not os.path.exists(dir_path):
			os.makedirs(dir_path)

if __name__ == '__main__':
	filename = None
	Wt = Walter()
	xbmc.log("Walter Caching Service starting...")
	xbmc.log("Marking abandoned jobs as failed.")
	Wt.DB.execute("UPDATE wt_download_queue SET status=3 WHERE status=1")
	Wt.DB.commit()
	while(not xbmc.abortRequested):
		if not reg.getBoolSetting('enable-caching'):
			print "Caching service disabled in settings, enable and restart to proceed."
			break
		row = Wt.DB.query("SELECT * FROM wt_download_queue WHERE status=0 ORDER BY num ASC LIMIT 1")
		if row:
			Ca = CachingClass(Wt.cache_root, Wt.DB)
			try:
				filename = Ca.Cache(row[0], row[2], row[3], media=row[1], folder=row[5])
			except Exception, e:
				Ca = CachingClass(Wt.cache_root, Wt.DB)
				filename = None

			if filename:
				Wt.notify('Cache Complete', filename)
			else:
				Wt.notify('Caching Error', 'Check the log for details.')