def __init__(self, mode):
        # Create List for display
        showList = []  # [plugin.getstr(571)]
        self.mode = mode

        # Load in Skin Codes from Database
        jsonData = storageDB.SkinCodes()
        if self.skin in jsonData:
            # Fetch viewmodes for selected mode
            self.viewModes = self.filterCodes(jsonData[self.skin], mode)

            # Append each key of viewModes to show list
            for i in sorted(self.viewModes.keys()):
                showList.append(i)

        # Fetch Current Mode if set and Show to user under Custom Mode ID
        self.currentMode = currentMode = plugin.get_setting("%s.%s.view" %
                                                            (self.skin, mode))
        if currentMode:
            showList.append("%s (%s)" % (plugin.get_string(636), currentMode))
        else:
            showList.append(plugin.get_string(636))

        # Display List
        self.display(showList)
    def display(self, showList):
        # Bold the already selected view mode
        orgList = showList[:]
        if self.currentMode and len(showList) > 2:
            # Convert current viewmode to an interger
            currentMode = int(self.currentMode)
            for key, value in self.viewModes.iteritems():
                # Check if current mode is found in viewModes
                if currentMode == value:
                    # When found find its position in the list
                    for count, i in enumerate(showList):
                        # Check for required key
                        if key == i:
                            # Wen found, Bold and Indent the value
                            showList[count] = "[B]-%s[/B]" % showList[count]
                            break
                    break

        # Display List to User
        ret = xbmcutil.Dialog.dialogSelect(
            plugin.get_setting(self.skin, "name"), showList)
        if ret >= 0:
            # Take action depending on response
            response = orgList[ret]
            if response.startswith(plugin.get_string(636)): self.askForViewID()
            elif response == plugin.get_string(571):
                plugin.set_setting("%s.%s.view" % (self.skin, self.mode), "")
            else:
                plugin.set_setting("%s.%s.view" % (self.skin, self.mode),
                                   str(self.viewModes[str(response)]))
	def display(self, showList):
		# Bold the already selected view mode
		orgList = showList[:]
		if self.currentMode and len(showList) > 2:
			# Convert current viewmode to an interger
			currentMode = int(self.currentMode)
			for key, value in self.viewModes.iteritems():
				# Check if current mode is found in viewModes
				if currentMode == value:
					# When found find its position in the list
					for count, i in enumerate(showList):
						# Check for required key
						if key == i:
							# Wen found, Bold and Indent the value
							showList[count] = "[B]-%s[/B]" % showList[count]
							break
					break
		
		# Display List to User
		ret = xbmcutil.Dialog.dialogSelect(plugin.get_setting(self.skin, "name"), showList)
		if ret >= 0:
			# Take action depending on response
			response = orgList[ret]
			if response.startswith(plugin.get_string(636)): self.askForViewID()
			elif response == plugin.get_string(571): plugin.set_setting("%s.%s.view" % (self.skin, self.mode), "")
			else: plugin.set_setting("%s.%s.view" % (self.skin, self.mode), str(self.viewModes[str(response)]))
	def __init__(self, mode):
		# Create List for display
		showList = [] # [plugin.getstr(571)]
		self.mode = mode
		
		# Load in Skin Codes from Database
		jsonData = storageDB.SkinCodes()
		if self.skin in jsonData:
			# Fetch viewmodes for selected mode
			self.viewModes = self.filterCodes(jsonData[self.skin], mode)
			
			# Append each key of viewModes to show list
			for i in sorted(self.viewModes.keys()):
				showList.append(i)
		
		# Fetch Current Mode if set and Show to user under Custom Mode ID
		self.currentMode = currentMode = plugin.get_setting("%s.%s.view" % (self.skin, mode))
		if currentMode: showList.append("%s (%s)" % (plugin.get_string(636), currentMode))
		else: showList.append(plugin.get_string(636))
		
		# Display List
		self.display(showList)
Exemple #5
0
# -*- coding: utf-8 -*-
from xbmcswift2 import Plugin
import resources.lib.afreeca as afreeca
import resources.lib.afreeca_station as afreeca_station
import resources.lib.afreeca_sports as afreeca_sports

plugin = Plugin()

UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.9"
m_broad = "plugin://plugin.video.m.afreeca/broadcast/"

tPrevPage = u"[B]<<%s[/B]" % plugin.get_string(30100)
tNextPage = u"[B]%s>>[/B]" % plugin.get_string(30101)


@plugin.route('/')
def main_menu():
    items = []
    ### 이슈 생방송
    if plugin.get_setting("showIssueBroad", bool):
        videos = afreeca.getIssueBroadcast()
        if videos:
            items.append({
                'label': u"[COLOR FF0000FF]이슈 생방송[/COLOR]",
                'path': ''
            })
            for video in videos:
                vid_path = m_broad + video['broad_no']
                items.append({
                    'label': video['broad_title'],
                    'label2': video['user_nick'],
            },
            'path': plugin.url_for(
                endpoint='play_movie',
                stream_path=item['stream_path']
            ),
            'is_playable': True
        } for item in category_items]
        return items

    items = get_movies(category_id)
    finish_kwargs = {}
    if plugin.get_setting('force_viewmode') == 'true':
        finish_kwargs['view_mode'] = 'thumbnail'
    return plugin.finish(items, **finish_kwargs)


@plugin.route('/movie/<stream_path>/')
def play_movie(stream_path):
    if plugin.get_setting('use_rtmp') == 'true':
        stream_url = api.get_rtmp_url(stream_path)
    else:
        stream_url = api.get_stream_url(stream_path)
    return plugin.set_resolved_url(stream_url)

if __name__ == '__main__':
    try:
        plugin.run()
    except NetworkError:
        plugin.log.error(NetworkError)
        plugin.notify(msg=plugin.get_string('30200'))
 def askForViewID(self):
     # Display Numeric Dialog
     ret = xbmcutil.Dialog.dialogNumeric(0, plugin.get_string(611),
                                         self.currentMode)
     if ret:
         plugin.set_setting("%s.%s.view" % (self.skin, self.mode), str(ret))
Exemple #8
0
# -*- coding: utf-8 -*-
from xbmcswift2 import Plugin
import resources.lib.afreeca as afreeca
import resources.lib.afreeca_station as afreeca_station
import resources.lib.afreeca_sports as afreeca_sports

plugin = Plugin()

UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.9"
m_broad = "plugin://plugin.video.m.afreeca/broadcast/"

tPrevPage = u"[B]<<%s[/B]" % plugin.get_string(30100)
tNextPage = u"[B]%s>>[/B]" % plugin.get_string(30101)


@plugin.route("/")
def main_menu():
    items = []
    ### 이슈 생방송
    if plugin.get_setting("showIssueBroad", bool):
        videos = afreeca.getIssueBroadcast()
        if videos:
            items.append({"label": u"[COLOR FF0000FF]이슈 생방송[/COLOR]", "path": ""})
            for video in videos:
                vid_path = m_broad + video["broad_no"]
                items.append(
                    {
                        "label": video["broad_title"],
                        "label2": video["user_nick"],
                        "path": vid_path,
                        "thumbnail": video["thumb"],
plugin = Plugin()


@plugin.route('/')
def show_root():
    videos = scraper.get_videos()
    shuffle(videos)
    items = [{
        'label': u'%s - %s' % (video['interpret'], video['title']),
        'thumbnail': video['thumb'],
        'is_playable': True,
        'path': plugin.url_for('play_video', video_url=video['video_url'])
    } for video in videos]
    finish_kwargs = {}
    if plugin.get_setting('force_viewmode', bool):
        finish_kwargs['view_mode'] = 'thumbnail'
    return plugin.finish(items, **finish_kwargs)


@plugin.route('/play/<video_url>')
def play_video(video_url):
    return plugin.set_resolved_url(video_url)


if __name__ == '__main__':
    try:
        plugin.run()
    except scraper.NetworkError:
        plugin.notify(plugin.get_string(30020))
Exemple #10
0
	def askForViewID(self):
		# Display Numeric Dialog
		ret = xbmcutil.Dialog.dialogNumeric(0, plugin.get_string(611), self.currentMode)
		if ret: plugin.set_setting("%s.%s.view" % (self.skin, self.mode), str(ret))
@plugin.route('/')
def show_root():
    videos = scraper.get_videos()
    shuffle(videos)
    items = [{
        'label': u'%s - %s' % (video['interpret'], video['title']),
        'thumbnail': video['thumb'],
        'is_playable': True,
        'path': plugin.url_for(
            'play_video',
            video_url=video['video_url']
        )
    } for video in videos]
    finish_kwargs = {}
    if plugin.get_setting('force_viewmode', bool):
        finish_kwargs['view_mode'] = 'thumbnail'
    return plugin.finish(items, **finish_kwargs)


@plugin.route('/play/<video_url>')
def play_video(video_url):
    return plugin.set_resolved_url(video_url)


if __name__ == '__main__':
    try:
        plugin.run()
    except scraper.NetworkError:
        plugin.notify(plugin.get_string(30020))
Exemple #12
0
            'path':
            plugin.url_for(endpoint='play_movie',
                           stream_path=item['stream_path']),
            'is_playable':
            True
        } for item in category_items]
        return items

    items = get_movies(category_id)
    finish_kwargs = {}
    if plugin.get_setting('force_viewmode') == 'true':
        finish_kwargs['view_mode'] = 'thumbnail'
    return plugin.finish(items, **finish_kwargs)


@plugin.route('/movie/<stream_path>/')
def play_movie(stream_path):
    if plugin.get_setting('use_rtmp') == 'true':
        stream_url = api.get_rtmp_url(stream_path)
    else:
        stream_url = api.get_stream_url(stream_path)
    return plugin.set_resolved_url(stream_url)


if __name__ == '__main__':
    try:
        plugin.run()
    except NetworkError:
        plugin.log.error(NetworkError)
        plugin.notify(msg=plugin.get_string('30200'))
Exemple #13
0
    plugin = Plugin()
    my_stations = plugin.get_storage('my_stations.json', file_format='json')
    found = False

    if plugin.get_setting('autostart', bool):
        for station in my_stations.values():
            if 'autostart' in station:
                found = True
                plugin.log.info("Play startup radio station: %s" %
                                station['name'])
                listitem = xbmcgui.ListItem(station['name'])
                listitem.setArt({'thumb': station['thumbnail']})
                listitem.setRating("radio.de",
                                   float(station.get('rating', '0.0')))
                listitem.setInfo(
                    'music', {
                        'title': station['name'],
                        'genre': station['genre'],
                        'size': station['bitrate'],
                        'comment': station['current_track']
                    })
                xbmc.Player().play(item=station['stream_url'],
                                   listitem=listitem)

        if not found:
            plugin.notify(plugin.get_string(
                Strings['no-station-notification']).encode('utf-8'),
                          delay=25000,
                          image=plugin.addon.getAddonInfo('path') +
                          "/icon.png")