示例#1
0
    def P_multiepg(self, request):
        epgmode = "tv"
        if "epgmode" in request.args.keys():
            epgmode = request.args["epgmode"][0]
            if epgmode not in ["tv", "radio"]:
                epgmode = "tv"

        bouq = getBouquets(epgmode)
        if "bref" not in request.args.keys():
            bref = bouq['bouquets'][0][0]
        else:
            bref = request.args["bref"][0]
        endtime = 1440
        begintime = -1
        day = 0
        week = 0
        wadd = 0
        if "week" in request.args.keys():
            try:
                week = int(request.args["week"][0])
                wadd = week * 7
            except ValueError:
                pass
        if "day" in request.args.keys():
            try:
                day = int(request.args["day"][0])
                if day > 0 or wadd > 0:
                    now = localtime()
                    begintime = mktime(
                        (now.tm_year, now.tm_mon, now.tm_mday + day + wadd, 0,
                         0, 0, -1, -1, -1))
            except ValueError:
                pass
        mode = 1
        if config.OpenWebif.webcache.mepgmode.value:
            try:
                mode = int(config.OpenWebif.webcache.mepgmode.value)
            except ValueError:
                pass
        epg = getMultiEpg(self, bref, begintime, endtime, mode)
        epg['bouquets'] = bouq['bouquets']
        epg['bref'] = bref
        epg['day'] = day
        epg['week'] = week
        epg['mode'] = mode
        epg['epgmode'] = epgmode
        return epg
示例#2
0
	def P_multiepg(self, request):
		epgmode = "tv"
		if "epgmode" in request.args.keys():
			epgmode = request.args["epgmode"][0]
			if epgmode not in ["tv", "radio"]:
				epgmode = "tv"
				
		bouq = getBouquets(epgmode)
		if "bref" not in request.args.keys():
			bref = bouq['bouquets'][0][0]
		else:
			bref = request.args["bref"][0]
		endtime = 1440
		begintime = -1
		day = 0
		week = 0
		wadd = 0
		if "week" in request.args.keys():
			try:
				week = int(request.args["week"][0])
				wadd = week * 7
			except ValueError:
				pass
		if "day" in request.args.keys():
			try:
				day = int(request.args["day"][0])
				if day > 0 or wadd > 0:
					now = localtime()
					begintime = mktime( (now.tm_year, now.tm_mon, now.tm_mday+day + wadd, 0, 0, 0, -1, -1, -1) )
			except ValueError:
				pass
		mode = 1
		if config.OpenWebif.webcache.mepgmode.value:
			try:
				mode = int(config.OpenWebif.webcache.mepgmode.value)
			except ValueError:
				pass
		epg = getMultiEpg(self, bref, begintime, endtime, mode)
		epg['bouquets'] = bouq['bouquets']
		epg['bref'] = bref
		epg['day'] = day
		epg['week'] = week
		epg['mode'] = mode
		epg['epgmode'] = epgmode
		return epg
		else:
			bref = request.args["bref"][0]

		endtime = 1440

		begintime = -1
		day = 0
		if "day" in request.args.keys():
			try:
				day = int(request.args["day"][0])
				now = localtime()
				begintime = mktime( (now.tm_year, now.tm_mon, now.tm_mday+day, 6, 0, 0, -1, -1, -1) )
			except Exception, e:
				pass

		epg = getMultiEpg(self, bref, begintime, endtime)
		epg['bouquets'] = bouq['bouquets']
		epg['bref'] = bref
		epg['day'] = day
		epg['reloadtimer'] = reloadtimer

		return epg

	def P_at(self, request):
		ret = {}
		loc = getLocations()
		ret['locations'] = loc['locations']
		return ret

	def P_bqe(self, request):
		ret = {}
示例#4
0
class AjaxController(BaseController):
	def __init__(self, session, path = ""):
		BaseController.__init__(self, path)
		self.session = session

	def P_current(self, request):
		return getCurrentFullInfo(self.session)

	def P_bouquets(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		bouq = getBouquets(stype)
		return { "bouquets": bouq['bouquets'], "stype": stype }

	def P_providers(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		prov = getProviders(stype)
		return { "providers": prov['providers'], "stype": stype }

	def P_satellites(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		sat = getSatellites(stype)
		return { "satellites": sat['satellites'], "stype": stype }

	def P_channels(self, request):
		stype = "tv"
		idbouquet = "ALL"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		if "id" in request.args.keys():
			idbouquet = request.args["id"][0]
		channels = getChannels(idbouquet, stype)
		channels['transcoding'] = getTranscodingSupport()
		channels['type'] = stype
		return channels

	def P_eventdescription(self, request):
		return getEventDesc(request.args["sref"][0], request.args["idev"][0])

	def P_event(self, request):
		event = getEvent(request.args["sref"][0], request.args["idev"][0])
		event['event']['recording_margin_before'] = config.recording.margin_before.value
		event['event']['recording_margin_after'] = config.recording.margin_after.value
		at = False
		try:
			from Plugins.Extensions.AutoTimer.AutoTimer import AutoTimer
			at = True
		except ImportError:
			pass
		event['at'] = at
		event['transcoding'] = getTranscodingSupport()
		event['kinopoisk'] = getLanguage()
		return event

	def P_about(self, request):
		info = {}
		info["modernwebifver"] = getModernWebifVer()
		return { "info": info }
	
	def P_boxinfo(self, request):
		info = getInfo()
		type = getBoxType()

		if fileExists(getPublicPath("/images/boxes/"+type+".jpg")):
			info["boximage"] = type+".jpg"
		else:
			info["boximage"] = "unknown.jpg?notfound"+type
		return info

	def P_epgpop(self, request):
		if "sref" in request.args.keys():
			event = getChannelEpg(request.args["sref"][0])
			event['kinopoisk'] = getLanguage()
			return event
		elif  "sstr" in request.args.keys():
			event = getSearchEpg(request.args["sstr"][0])
			event['kinopoisk'] = getLanguage()
			return event
		else: 
			return []

	def P_epgdialog(self, request):
		events = self.P_epgpop(request)
		timers = getTimers(self.session)
		at = False
		try:
			from Plugins.Extensions.AutoTimer.AutoTimer import AutoTimer
			at = True
		except ImportError:
			pass
		return { "events": events['events'] , "timers" : timers['timers'] , "at" : at, "kinopoisk": events['kinopoisk']}

	def P_screenshot(self, request):
		box = {}
		box['brand'] = "dmm"
		if getMachineBrand() == 'Vu+':
			box['brand'] = "vuplus"
		elif getMachineBrand() == 'GigaBlue':
			box['brand'] = "gigablue"
		elif getMachineBrand() == 'Edision':
			box['brand'] = "edision"
		elif getMachineBrand() == 'iQon':
			box['brand'] = "iqon"
		elif getMachineBrand() == 'Technomate':
			box['brand'] = "techomate"
		elif fileExists("/proc/stb/info/azmodel"):
			box['brand'] = "azbox"
		return { "box": box }

	def P_powerstate(self, request):
		return {}

	def P_rebootdialog(self, request):
		return {}

	def P_message(self, request):
		return {}

	def P_movies(self, request):
		if "dirname" in request.args.keys():
			movies = getMovieList(request.args["dirname"][0])
		else:
			movies = getMovieList()
		movies['transcoding'] = getTranscodingSupport()
		return movies

	def P_workinprogress(self, request):
		return {}

	def P_radio(self, request):
		return {}

	def P_timers(self, request):
		return getTimers(self.session)

	def P_edittimer(self, request):
		return {}

	def P_tv(self, request):
		return {}

	def P_config(self, request):
		section = "usage"
		if "section" in request.args.keys():
			section = request.args["section"][0]
		return getConfigs(section)

	def P_settings(self, request):
		ret = {
			"result": True
		}
		ret['configsections'] = getConfigsSections()['sections']
		return ret

	def P_multiepg(self, request):
		bouq = getBouquets("tv")
		if "bref" not in request.args.keys():
			bref = bouq['bouquets'][0][0]
		else:
			bref = request.args["bref"][0]

		endtime = 1440
				
		begintime = -1
		day = 0
		if "day" in request.args.keys():
			try:
				day = int(request.args["day"][0])
				now = localtime()
				begintime = mktime( (now.tm_year, now.tm_mon, now.tm_mday+day, 0, 0, 0, -1, -1, -1) )
			except Exception, e:
				pass

		epg = getMultiEpg(self, bref, begintime, endtime)
		epg['bouquets'] = bouq['bouquets']
		epg['bref'] = bref
		epg['day'] = day

		return epg
示例#5
0
		else:
			bref = request.args["bref"][0]

		endtime = 1440

		begintime = -1
		day = 0
		if "day" in request.args.keys():
			try:
				day = int(request.args["day"][0])
				now = localtime()
				begintime = mktime( (now.tm_year, now.tm_mon, now.tm_mday+day, 0, 0, 0, -1, -1, -1) )
			except Exception, e:
				pass

		epg = getMultiEpg(self, bref, begintime, endtime)
		epg['bouquets'] = bouq['bouquets']
		epg['bref'] = bref
		epg['day'] = day
		epg['reloadtimer'] = reloadtimer

		return epg

	def P_at(self, request):
		ret = {}
		ret['hasVPS'] = 0
		ret['hasSeriesPlugin'] = 0
		try:
			from Plugins.Extensions.AutoTimer.AutoTimer import typeMap
			ret['types'] = typeMap
		except ImportError:
示例#6
0
class AjaxController(BaseController):
    def __init__(self, session, path=""):
        BaseController.__init__(self, path)
        self.session = session

    def P_current(self, request):
        return getCurrentFullInfo(self.session)

    def P_bouquets(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        bouq = getBouquets(stype)
        return {"bouquets": bouq['bouquets'], "stype": stype}

    def P_providers(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        prov = getProviders(stype)
        return {"providers": prov['providers'], "stype": stype}

    def P_satellites(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        sat = getSatellites(stype)
        return {"satellites": sat['satellites'], "stype": stype}

    def P_channels(self, request):
        stype = "tv"
        idbouquet = "ALL"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        if "id" in request.args.keys():
            idbouquet = request.args["id"][0]
        channels = getChannels(idbouquet, stype)
        info = getInfo()
        model = info["model"]
        channels['transcoding'] = getTranscodingSupport()
        channels['type'] = stype
        return channels

    def P_eventdescription(self, request):
        return getEventDesc(request.args["sref"][0], request.args["idev"][0])

    def P_event(self, request):
        event = getEvent(request.args["sref"][0], request.args["idev"][0])
        event['event'][
            'recording_margin_before'] = config.recording.margin_before.value
        event['event'][
            'recording_margin_after'] = config.recording.margin_after.value
        return event

    def P_about(self, request):
        info = {}
        info["owiver"] = getOpenWebifVer()
        return {"info": info}

    def P_boxinfo(self, request):
        info = getInfo()
        model = info["model"]
        if model in ("et9000", "et9200", "et9500"):
            model = "et9x00"
        elif model in ("et5000", "et6000", "et6x00"):
            model = "et5x00"
        elif model == "et4000":
            model = "et4x00"
        elif model == "xp1000":
            model = "xp1000"
        elif model.startswith("vu"):
            model = model.replace("vu", "")
        if fileExists(getPublicPath("/images/boxes/" + model + ".jpg")):
            info["boximage"] = model + ".jpg"
        else:
            info["boximage"] = "unknown.jpg"
        if model in ("tf7700hdpvr", "topf", "TF 7700 HDPVR"):
            info["model"] = "TF 7700 HDPVR"
            if fileExists(getPublicPath("/images/boxes/topf.jpg")):
                info["boximage"] = "topf.jpg"
        return info

    def P_epgpop(self, request):
        if "sref" in request.args.keys():
            return getChannelEpg(request.args["sref"][0])
        elif "sstr" in request.args.keys():
            return getSearchEpg(request.args["sstr"][0])
        else:
            return []

    def P_epgdialog(self, request):
        events = self.P_epgpop(request)
        timers = getTimers(self.session)
        at = False
        try:
            from Plugins.Extensions.AutoTimer.AutoTimer import AutoTimer
            at = True
        except ImportError:
            pass
        return {
            "events": events['events'],
            "timers": timers['timers'],
            "at": at
        }

    def P_screenshot(self, request):
        box = {}
        box['brand'] = "dmm"
        if fileExists("/proc/stb/info/vumodel"):
            box['brand'] = "vuplus"
        elif fileExists("/proc/stb/info/azmodel"):
            box['brand'] = "azbox"
        elif fileExists("/proc/stb/info/gbmodel"):
            box['brand'] = "gigablue"
        return {"box": box}

    def P_powerstate(self, request):
        return {}

    def P_rebootdialog(self, request):
        return {}

    def P_message(self, request):
        return {}

    def P_movies(self, request):
        if "dirname" in request.args.keys():
            movies = getMovieList(request.args["dirname"][0])
        else:
            movies = getMovieList()
        info = getInfo()
        model = info["model"]
        movies['transcoding'] = getTranscodingSupport()
        return movies

    def P_workinprogress(self, request):
        return {}

    def P_radio(self, request):
        return {}

    def P_timers(self, request):
        return getTimers(self.session)

    def P_edittimer(self, request):
        return {}

    def P_tv(self, request):
        return {}

    def P_config(self, request):
        section = "usage"
        if "section" in request.args.keys():
            section = request.args["section"][0]
        return getConfigs(section)

    def P_settings(self, request):
        ret = {"result": True}
        ret['configsections'] = getConfigsSections()['sections']
        return ret

    def P_multiepg(self, request):
        bouq = getBouquets("tv")
        if "bref" not in request.args.keys():
            bref = bouq['bouquets'][0][0]
        else:
            bref = request.args["bref"][0]

        endtime = 1440

        begintime = -1
        day = 0
        if "day" in request.args.keys():
            try:
                day = int(request.args["day"][0])
                now = localtime()
                begintime = mktime((now.tm_year, now.tm_mon, now.tm_mday + day,
                                    6, 0, 0, -1, -1, -1))
            except Exception, e:
                pass

        epg = getMultiEpg(self, bref, begintime, endtime)
        epg['bouquets'] = bouq['bouquets']
        epg['bref'] = bref
        epg['day'] = day

        return epg
示例#7
0
class AjaxController(BaseController):
	def __init__(self, session, path = ""):
		BaseController.__init__(self, path)
		self.session = session
		
	def P_current(self, request):
		return getCurrentFullInfo(self.session)
		
	def P_bouquets(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		bouq = getBouquets(stype)
		return { "bouquets": bouq['bouquets'], "stype": stype }
			
	def P_providers(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		prov = getProviders(stype)
		return { "providers": prov['providers'], "stype": stype }
		
	def P_satellites(self, request):
		stype = "tv"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		sat = getSatellites(stype)
		return { "satellites": sat['satellites'], "stype": stype }

	
	def P_channels(self, request):
		stype = "tv"
		idbouquet = "ALL"
		if "stype" in request.args.keys():
			stype = request.args["stype"][0]
		if "id" in request.args.keys():
			idbouquet = request.args["id"][0]
		return getChannels(idbouquet, stype)
		

	def P_eventdescription(self, request):
		return getEventDesc(request.args["sref"][0], request.args["idev"][0])

	def P_event(self, request):
		event = getEvent(request.args["sref"][0], request.args["idev"][0])
		event['event']['recording_margin_before'] = config.recording.margin_before.value
		event['event']['recording_margin_after'] = config.recording.margin_after.value
		return event

	def P_about(self, request):
		info = {}
		info["owiver"] = getOpenWebifVer()
		return { "info": info }
	
	def P_boxinfo(self, request):
		info = getInfo()
		model = info["model"]
		if model == "et9000" or model == "et9200":
			model = "et9x00"
		elif model == "et5000" or model == "et6000":
			model = "et5x00"
		elif model == "et4000" :
			model = "et4x00"
		elif model == "xp1000" :
			model = "xp1000"		
		if fileExists(getPublicPath("/images/boxes/" + model + ".jpg")):
			info["boximage"] = model + ".jpg"
		else:
			info["boximage"] = "unknown.jpg"
		return info

	def P_epgpop(self, request):
		if "sref" in request.args.keys():
			return getChannelEpg(request.args["sref"][0])
		elif  "sstr" in request.args.keys():
			return getSearchEpg(request.args["sstr"][0])
		else: 
			return []
			
	def P_screenshot(self, request):
		box = {}
		box['brand'] = "dmm"
		if fileExists("/proc/stb/info/vumodel"):
			box['brand'] = "vuplus"
		elif fileExists("/proc/stb/info/azmodel"):
			box['brand'] = "azbox"
		elif fileExists("/proc/stb/info/gbmodel"):
			box['brand'] = "gigablue"
		return { "box": box }
		
	def P_powerstate(self, request):
		return {}
		
	def P_message(self, request):
		return {}
		
	def P_movies(self, request):
		if "dirname" in request.args.keys():
			movies = getMovieList(request.args["dirname"][0])
		else:
			movies = getMovieList()
		return movies
		
	def P_workinprogress(self, request):
		return {}
	
	def P_radio(self, request):
		return {}

	def P_timers(self, request):
		return getTimers(self.session)
		
	def P_edittimer(self, request):
		return {}
		
	def P_tv(self, request):
		return {}
		
	def P_config(self, request):
		section = "usage"
		if "section" in request.args.keys():
			section = request.args["section"][0]
			
		return getConfigs(section)

	def P_multiepg(self, request):
		bouq = getBouquets("tv")
		if "bref" not in request.args.keys():
			bref = bouq['bouquets'][0][0]
		else:
			bref = request.args["bref"][0]

		endtime = 1440
				
		begintime = -1
		day = 0
		if "day" in request.args.keys():
			try:
				day = int(request.args["day"][0])
				now = localtime()
				begintime = mktime( (now.tm_year, now.tm_mon, now.tm_mday+day, 6, 0, 0, -1, -1, -1) )
			except Exception, e:
				pass
		
		epg = getMultiEpg(self, bref, begintime, endtime)
		epg['bouquets'] = bouq['bouquets']
		epg['bref'] = bref
		epg['day'] = day
		
		return epg
示例#8
0
class AjaxController(BaseController):
    def __init__(self, session, path=""):
        BaseController.__init__(self, path)
        self.session = session

    def P_current(self, request):
        return getCurrentFullInfo(self.session)

    def P_bouquets(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        bouq = getBouquets(stype)
        return {"bouquets": bouq['bouquets'], "stype": stype}

    def P_providers(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        prov = getProviders(stype)
        return {"providers": prov['providers'], "stype": stype}

    def P_satellites(self, request):
        stype = "tv"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        sat = getSatellites(stype)
        return {"satellites": sat['satellites'], "stype": stype}

    def P_channels(self, request):
        stype = "tv"
        idbouquet = "ALL"
        if "stype" in request.args.keys():
            stype = request.args["stype"][0]
        if "id" in request.args.keys():
            idbouquet = request.args["id"][0]
        channels = getChannels(idbouquet, stype)
        info = getInfo()
        model = info["model"]
        channels['transcoding'] = False
        if model in (
                "solo2", "duo2", "Sezam Marvel", "Xpeed LX3", "gbquad",
                "gbquadplus"
        ) and path.exists(
                eEnv.resolve(
                    '${libdir}/enigma2/python/Plugins/SystemPlugins/TransCodingSetup/plugin.pyo'
                )):
            channels['transcoding'] = True
        return channels

    def P_eventdescription(self, request):
        return getEventDesc(request.args["sref"][0], request.args["idev"][0])

    def P_event(self, request):
        event = getEvent(request.args["sref"][0], request.args["idev"][0])
        event['event'][
            'recording_margin_before'] = config.recording.margin_before.getValue(
            )
        event['event'][
            'recording_margin_after'] = config.recording.margin_after.getValue(
            )
        return event

    def P_about(self, request):
        info = {}
        info["owiver"] = getOpenWebifVer()
        return {"info": info}

    def P_boxinfo(self, request):
        info = getInfo()
        model = info["model"]
        if model == "et9000" or model == "et9200":
            model = "et9x00"
        elif model == "et5000" or model == "et6000":
            model = "et5x00"
        elif model == "et4000":
            model = "et4x00"
        elif model == "xp1000":
            model = "xp1000"
        elif model == "xp1000s":
            model = "sf8"
        elif model == "odinm9":
            model = "odinm9"
        elif model == "odinm7":
            model = "odinm7"
        elif model == "e3hd":
            model = "e3hd"
        elif getBoxType() == 'odinm6':
            model = "starsatlx"
        elif getMachineName() == 'AX-Odin':
            model = "axodin"
        elif model == "MixOs F5":
            model = "ebox5000"
        elif model == "MixOs F5mini":
            model = "ebox5100"
        elif model == "MixOs F7":
            model = "ebox7358"
        elif model == "IOS-100HD":
            model = "ios100hd"
        elif model == "IOS-200HD":
            model = "ios200hd"
        elif model == "IOS-300HD":
            model = "ios300hd"
        elif model == "Optimuss-OS1":
            model = "optimussos1"
        elif model == "Optimuss-OS2":
            model = "optimussos2"
        elif model == "TM-TWIN-OE":
            model = "tmtwin"
        elif model == "TM-2T-OE":
            model = "tm2t"
        elif model == "TM-SINGLE":
            model = "tmsingle"
        elif model == "TM-NANO-OE":
            model = "tmnano"
        elif getBoxType() == 'ixussone':
            model = "ixussone"
        elif getBoxType() == 'ixussduo':
            model = "ixussduo"
        elif getBoxType() == 'ixusszero':
            model = "ixusszero"
        elif model == 'Premium Twin':
            model = "ini-5000sv"
        elif model == 'Premium Mini':
            model = "ini-1000sv"
        elif model == 'Xpeed LX':
            if fileExists("/proc/stb/fp/version"):
                file = open("/proc/stb/fp/version")
                version = file.read().strip().lower()
                file.close()
            if version.startswith('2'):
                model = "xpeedlx2"
            else:
                model = "xpeedlx1"
        elif model == 'Xpeed LX3':
            model = "xpeedlx3"
        elif model == 'Sezam 1000-HD':
            model = "sezam-1000"
        elif model == 'Sezam 5000-HD':
            model = "sezam-5000"
        elif model == 'Sezam 1000-HD':
            model = "sezam-9000"
        elif model == 'Sogno 8800HD':
            model = "sogno8800hd"
        elif model == 'ENfinity':
            model = "enfinity"
        elif getBoxType() == 'gb800solo':
            model = "gb800solo"
        elif getBoxType() == 'gb800se':
            model = "gb800se"
        elif getBoxType() == 'gb800ue':
            model = "gb800ue"
        elif getBoxType() == 'gb800seplus':
            model = "gb800seplus"
        elif getBoxType() == 'gb800ueplus':
            model = "gb800ueplus"
        elif getBoxType() == 'gbquad':
            model = "gbquad"
        elif getBoxType() == 'gbquadplus':
            model = "gbquadplus"
        if fileExists(getPublicPath("/images/boxes/" + model + ".jpg")):
            info["boximage"] = model + ".jpg"
        else:
            info["boximage"] = "unknown.jpg"
        return info

    def P_epgpop(self, request):
        if "sref" in request.args.keys():
            return getChannelEpg(request.args["sref"][0])
        elif "sstr" in request.args.keys():
            return getSearchEpg(request.args["sstr"][0])
        else:
            return []

    def P_screenshot(self, request):
        box = {}
        box['brand'] = "dmm"
        if fileExists("/proc/stb/info/vumodel"):
            box['brand'] = "vuplus"
        elif fileExists("/proc/stb/info/azmodel"):
            box['brand'] = "azbox"
        elif fileExists("/proc/stb/info/gbmodel"):
            box['brand'] = "gigablue"
        elif fileExists("/proc/stb/info/hwmodel"):
            if getBoxType().startswith('opti'):
                box['brand'] = "edision"
            elif getBoxType().startswith('iqon'):
                box['brand'] = "iqon"
            else:
                box['brand'] = "technomate"
        return {"box": box}

    def P_powerstate(self, request):
        return {}

    def P_message(self, request):
        return {}

    def P_movies(self, request):
        if "dirname" in request.args.keys():
            movies = getMovieList(request.args["dirname"][0])
        else:
            movies = getMovieList()
        info = getInfo()
        model = info["model"]
        movies['transcoding'] = False
        if model in (
                "solo2", "duo2", "Sezam Marvel", "Xpeed LX3", "gbquad",
                "gbquadplus"
        ) and path.exists(
                eEnv.resolve(
                    '${libdir}/enigma2/python/Plugins/SystemPlugins/TransCodingSetup/plugin.pyo'
                )):
            movies['transcoding'] = True
        return movies

    def P_workinprogress(self, request):
        return {}

    def P_radio(self, request):
        return {}

    def P_timers(self, request):
        return getTimers(self.session)

    def P_edittimer(self, request):
        return {}

    def P_tv(self, request):
        return {}

    def P_config(self, request):
        section = "usage"
        if "section" in request.args.keys():
            section = request.args["section"][0]
        return getConfigs(section)

    def P_settings(self, request):
        ret = {"result": True}
        ret['configsections'] = getConfigsSections()['sections']
        return ret

    def P_multiepg(self, request):
        bouq = getBouquets("tv")
        if "bref" not in request.args.keys():
            bref = bouq['bouquets'][0][0]
        else:
            bref = request.args["bref"][0]

        endtime = 1440

        begintime = -1
        day = 0
        if "day" in request.args.keys():
            try:
                day = int(request.args["day"][0])
                now = localtime()
                begintime = mktime((now.tm_year, now.tm_mon, now.tm_mday + day,
                                    6, 0, 0, -1, -1, -1))
            except Exception, e:
                pass

        epg = getMultiEpg(self, bref, begintime, endtime)
        epg['bouquets'] = bouq['bouquets']
        epg['bref'] = bref
        epg['day'] = day

        return epg