예제 #1
0
def set_channel_info(parameters):
    logger.info()

    info = ''
    language = ''
    content = ''
    langs = parameters['language']
    lang_dict = {
        'lat': 'Latino',
        'cast': 'Castellano',
        '*': 'Latino, Castellano, VOSE, VO'
    }
    for lang in langs:
        if 'vos' in parameters['categories']:
            lang = '*'

        if lang in lang_dict:
            if language != '' and language != '*' and not parameters['adult']:
                language = '%s, %s' % (language, lang_dict[lang])
            elif not parameters['adult']:
                language = lang_dict[lang]
        if lang == '*':
            break

    categories = parameters['categories']
    for cat in categories:
        if content != '':
            content = '%s, %s' % (content, config.get_localized_category(cat))
        else:
            content = config.get_localized_category(cat)

    info = '[COLOR yellow]Tipo de contenido:[/COLOR] %s\n\n[COLOR yellow]Idiomas:[/COLOR] %s' % (
        content, language)
    return info
예제 #2
0
def set_channel_info(parameters):
    logger.info()

    info = ''
    language = ''
    content = ''
    langs = parameters['language']
    lang_dict = {
        'ita': 'Italiano',
        'sub-ita': 'Sottotitolato in Italiano',
        '*': 'Italiano, Sottotitolato in Italiano'
    }

    for lang in langs:

        if lang in lang_dict:
            if language != '' and language != '*':
                language = '%s, %s' % (language, lang_dict[lang])
            else:
                language = lang_dict[lang]
        if lang == '*':
            break

    categories = parameters['categories']
    for cat in categories:
        if content != '':
            content = '%s, %s' % (content, config.get_localized_category(cat))
        else:
            content = config.get_localized_category(cat)

    info = '[B]' + config.get_localized_string(
        70567) + ' [/B]' + content + '\n\n'
    info += '[B]' + config.get_localized_string(70568) + ' [/B] ' + language
    return info
예제 #3
0
def set_channel_info(parameters):
    logger.info()

    info = ''
    language = ''
    content = ''
    langs = parameters['language']
    lang_dict = {'ita': 'Italiano', '*': 'Italiano, VOSI, VO'}
    for lang in langs:
        if 'vos' in parameters['categories']:
            lang = '*'
        if 'vosi' in parameters['categories']:
            lang = 'ita'

        if lang in lang_dict:
            if language != '' and language != '*' and not parameters['adult']:
                language = '%s, %s' % (language, lang_dict[lang])
            elif not parameters['adult']:
                language = lang_dict[lang]
        if lang == '*':
            break

    categories = parameters['categories']
    for cat in categories:
        if content != '':
            content = '%s, %s' % (content, config.get_localized_category(cat))
        else:
            content = config.get_localized_category(cat)

    info = '[COLOR yellow]' + config.get_localized_string(
        70567) + ' [/COLOR]' + content + '\n\n'
    info += '[COLOR yellow]' + config.get_localized_string(
        70568) + ' [/COLOR] ' + language
    return info
예제 #4
0
def getchanneltypes(view="thumb_"):
    logger.info()

    # Lista de categorias
    #channel_types = ["movie", "tvshow", "anime", "documentary", "vos", "direct", "torrent", "sport"]
    channel_types = [
        "movie", "tvshow", "anime", "documentary", "vos", "direct", "torrent"
    ]

    if config.get_setting("adult_mode") != 0:
        channel_types.append("adult")

    channel_language = config.get_setting("channel_language", default="all")
    logger.info("channel_language=%s" % channel_language)

    # Ahora construye el itemlist ordenadamente
    itemlist = list()
    title = config.get_localized_string(30121)
    itemlist.append(
        Item(title=title,
             channel="channelselector",
             action="filterchannels",
             view=view,
             category=title,
             channel_type="all",
             thumbnail=get_thumb("channels_all.png", view),
             viewmode="thumbnails"))

    if config.get_setting('frequents_folder'):
        itemlist.append(
            Item(title='Frecuentes',
                 channel="channelselector",
                 action="filterchannels",
                 view=view,
                 category='all',
                 channel_type="freq",
                 thumbnail=get_thumb("channels_frequents.png", view),
                 viewmode="thumbnails"))

    for channel_type in channel_types:
        title = config.get_localized_category(channel_type)
        itemlist.append(
            Item(title=title,
                 channel="channelselector",
                 action="filterchannels",
                 category=title,
                 channel_type=channel_type,
                 viewmode="thumbnails",
                 thumbnail=get_thumb("channels_%s.png" % channel_type, view)))

    itemlist.append(
        Item(title='Comunidad',
             channel="community",
             action="mainlist",
             view=view,
             category=title,
             channel_type="all",
             thumbnail=get_thumb("channels_community.png", view),
             viewmode="thumbnails"))
    return itemlist
예제 #5
0
def set_channel_info(parameters, alfa_s=False):
    if not alfa_s: logger.info()

    info = ''
    language = ''
    content = ''
    is_adult = parameters['adult']
    langs = parameters['language']
    categories = parameters['categories']

    # Hacemos el listado de categorías p/ descripción
    content = ', '.join([config.get_localized_category(cat) for cat in categories if cat])

    # Si langs está vacío o es +18 y '*' está en langs omitimos la parte del idioma
    if is_adult and '*' in langs or not langs:
        info = '[COLOR yellow]Tipo de contenido:[/COLOR] %s' % content

    # Sino, procesamos
    else:
        lang_dict = { 'lat':'Latino', 'cast':'Castellano', 'vose': 'VOSE', 'vos': 'VOS' }
        langs = [lang_dict.get(lang.lower(), lang) for lang in langs]

        # Si se encuentra un '*' quiere decir contenido mixto, agregamos todos los elementos directamente
        if '*' in langs:
            language = ', '.join(list(lang_dict.values()))

        else:
            language = ', '.join(langs)

        info = '[COLOR yellow]Tipo de contenido:[/COLOR] %s\n\n[COLOR yellow]Idiomas:[/COLOR] %s' % (content, language)

    return info
예제 #6
0
def getchanneltypes(view="thumb_"):
    logger.info()

    # Lista de categorias
    channel_types = ["movie", "tvshow", "anime", "documentary", "vos", "direct", "torrent"]

    if config.get_setting("adult_mode") != 0:
        channel_types.append("adult")

    # channel_language = config.get_setting("channel_language", default="all")
    channel_language = auto_filter()
    logger.info("channel_language=%s" % channel_language)

    # Ahora construye el itemlist ordenadamente
    itemlist = list()
    title = config.get_localized_string(30121)
    itemlist.append(Item(title=title, channel="channelselector", action="filterchannels", view=view,
                         category=title, channel_type="all", thumbnail=get_thumb("channels_all.png", view),
                         viewmode="thumbnails"))

    for channel_type in channel_types:
        title = config.get_localized_category(channel_type)
        itemlist.append(Item(title=title, channel="channelselector", action="filterchannels", category=title,
                             channel_type=channel_type, viewmode="thumbnails",
                             thumbnail=get_thumb("channels_%s.png" % channel_type, view)))

    itemlist.append(Item(title='Oggi in TV', channel="filmontv", action="mainlist", view=view,
                         category=title, channel_type="all", thumbnail=get_thumb("on_the_air.png", view),
                         viewmode="thumbnails"))


    itemlist.append(Item(title=config.get_localized_string(70685), channel="community", action="mainlist", view=view,
                         category=title, channel_type="all", thumbnail=get_thumb("channels_community.png", view),
                         viewmode="thumbnails"))
    return itemlist
예제 #7
0
def channels_onoff(item):
    import channelselector, xbmcgui
    from core import channeltools

    # Cargar lista de opciones
    # ------------------------
    lista = []; ids = []
    channels_list = channelselector.filterchannels('allchannelstatus')
    for channel in channels_list:
        channel_parameters = channeltools.get_channel_parameters(channel.channel)
        lbl = '%s' % channel_parameters['language']
        # ~ lbl += ' %s' % [config.get_localized_category(categ) for categ in channel_parameters['categories']]
        lbl += ' %s' % ', '.join(config.get_localized_category(categ) for categ in channel_parameters['categories'])

        it = xbmcgui.ListItem(channel.title, lbl)
        it.setArt({ 'thumb': channel.thumbnail, 'fanart': channel.fanart })
        lista.append(it)
        ids.append(channel.channel)

    # Diálogo para pre-seleccionar
    # ----------------------------
    preselecciones = [config.get_localized_string(70517), config.get_localized_string(70518), config.get_localized_string(70519)]
    ret = platformtools.dialog_select(config.get_localized_string(60545), preselecciones)
    if ret == -1: return False # pedido cancel
    if ret == 2: preselect = []
    elif ret == 1: preselect = range(len(ids))
    else:
        preselect = []
        for i, canal in enumerate(ids):
            channel_status = config.get_setting('enabled', canal)
            if channel_status is None: channel_status = True
            if channel_status:
                preselect.append(i)

    # Diálogo para seleccionar
    # ------------------------
    ret = xbmcgui.Dialog().multiselect(config.get_localized_string(60545), lista, preselect=preselect, useDetails=True)
    if ret == None: return False # pedido cancel
    seleccionados = [ids[i] for i in ret]

    # Guardar cambios en canales activados
    # ------------------------------------
    for canal in ids:
        channel_status = config.get_setting('enabled', canal)
        if channel_status is None: channel_status = True

        if channel_status and canal not in seleccionados:
            config.set_setting('enabled', False, canal)
        elif not channel_status and canal in seleccionados:
            config.set_setting('enabled', True, canal)

    return False
예제 #8
0
def getchanneltypes(view="thumb_"):
    logger.info()

    # Category List
    channel_types = [
        "movie", "tvshow", "anime", "documentary", "vos", "live", "torrent",
        "music"
    ]  #, "direct"

    # Channel Language
    channel_language = auto_filter()
    logger.info("channel_language=%s" % channel_language)

    # Build Itemlist
    itemlist = list()
    title = config.get_localized_string(30121)
    itemlist.append(
        Item(title=title,
             channel="channelselector",
             action="filterchannels",
             view=view,
             category=title,
             channel_type="all",
             thumbnail=get_thumb("all.png", view),
             viewmode="thumbnails"))

    for channel_type in channel_types:
        title = config.get_localized_category(channel_type)
        itemlist.append(
            Item(title=title,
                 channel="channelselector",
                 action="filterchannels",
                 category=title,
                 channel_type=channel_type,
                 viewmode="thumbnails",
                 thumbnail=get_thumb("%s.png" % channel_type, view)))

    itemlist.append(
        Item(title=config.get_localized_string(70685),
             channel="community",
             action="mainlist",
             view=view,
             category=config.get_localized_string(70685),
             channel_type="all",
             thumbnail=get_thumb("community.png", view),
             viewmode="thumbnails"))
    return itemlist
예제 #9
0
파일: search.py 프로젝트: martinbm76/addon
def setting_channel_new(item):
    import xbmcgui

    # Cargar lista de opciones (canales activos del usuario y que permitan búsqueda global)
    # ------------------------
    lista = []
    ids = []
    lista_lang = []
    lista_ctgs = []
    channels_list = channelselector.filterchannels('all')
    for channel in channels_list:
        if channel.action == '':
            continue

        channel_parameters = channeltools.get_channel_parameters(
            channel.channel)

        # No incluir si en la configuracion del canal no existe "include_in_global_search"
        if not channel_parameters['include_in_global_search']:
            continue

        lbl = '%s' % channel_parameters['language']
        lbl += ' %s' % ', '.join(
            config.get_localized_category(categ)
            for categ in channel_parameters['categories'])

        it = xbmcgui.ListItem(channel.title, lbl)
        it.setArt({'thumb': channel.thumbnail, 'fanart': channel.fanart})
        lista.append(it)
        ids.append(channel.channel)
        lista_lang.append(channel_parameters['language'])
        lista_ctgs.append(channel_parameters['categories'])

    # Diálogo para pre-seleccionar
    # ----------------------------
    preselecciones = [
        'Buscar con la selección actual', 'Modificar selección actual',
        'Modificar partiendo de Recomendados',
        'Modificar partiendo de Frecuentes', 'Modificar partiendo de Todos',
        'Modificar partiendo de Ninguno', 'Modificar partiendo de Castellano',
        'Modificar partiendo de Latino'
    ]
    presel_values = [
        'skip', 'actual', 'recom', 'freq', 'all', 'none', 'cast', 'lat'
    ]

    categs = [
        'movie', 'tvshow', 'documentary', 'anime', 'vos', 'direct', 'torrent'
    ]
    if config.get_setting('adult_mode') > 0:
        categs.append('adult')
    for c in categs:
        preselecciones.append('Modificar partiendo de %s' %
                              config.get_localized_category(c))
        presel_values.append(c)

    if item.action == 'setting_channel':  # Configuración de los canales incluídos en la búsqueda
        del preselecciones[0]
        del presel_values[0]
    # else: # Llamada desde "buscar en otros canales" (se puede saltar la selección e ir directo a la búsqueda)

    ret = platformtools.dialog_select(config.get_localized_string(59994),
                                      preselecciones)
    if ret == -1:
        return False  # pedido cancel
    if presel_values[ret] == 'skip':
        return True  # continuar sin modificar
    elif presel_values[ret] == 'none':
        preselect = []
    elif presel_values[ret] == 'all':
        preselect = range(len(ids))
    elif presel_values[ret] in ['cast', 'lat']:
        preselect = []
        for i, lg in enumerate(lista_lang):
            if presel_values[ret] in lg or '*' in lg:
                preselect.append(i)
    elif presel_values[ret] == 'actual':
        preselect = []
        for i, canal in enumerate(ids):
            channel_status = config.get_setting('include_in_global_search',
                                                canal)
            if channel_status:
                preselect.append(i)

    elif presel_values[ret] == 'recom':
        preselect = []
        for i, canal in enumerate(ids):
            _not, set_canal_list = channeltools.get_channel_controls_settings(
                canal)
            if set_canal_list.get('include_in_global_search', False):
                preselect.append(i)

    elif presel_values[ret] == 'freq':
        preselect = []
        for i, canal in enumerate(ids):
            frequency = channeltools.get_channel_setting('frequency', canal, 0)
            if frequency > 0:
                preselect.append(i)
    else:
        preselect = []
        for i, ctgs in enumerate(lista_ctgs):
            if presel_values[ret] in ctgs:
                preselect.append(i)

    # Diálogo para seleccionar
    # ------------------------
    ret = xbmcgui.Dialog().multiselect(config.get_localized_string(59994),
                                       lista,
                                       preselect=preselect,
                                       useDetails=True)
    if not ret:
        return False  # pedido cancel
    seleccionados = [ids[i] for i in ret]

    # Guardar cambios en canales para la búsqueda
    # -------------------------------------------
    for canal in ids:
        channel_status = config.get_setting('include_in_global_search', canal)
        # if not channel_status:
        #     channel_status = True

        if channel_status and canal not in seleccionados:
            config.set_setting('include_in_global_search', False, canal)
        elif not channel_status and canal in seleccionados:
            config.set_setting('include_in_global_search', True, canal)

    return True
예제 #10
0
파일: search.py 프로젝트: linuxvalley/addon
def setting_channel_new(item):
    import xbmcgui

    # Load list of options (active user channels that allow global search)
    lista = []
    ids = []
    lista_lang = []
    lista_ctgs = []
    channels_list = channelselector.filterchannels('all')
    for channel in channels_list:
        if channel.action == '':
            continue

        channel_parameters = channeltools.get_channel_parameters(channel.channel)

        # Do not include if "include_in_global_search" does not exist in the channel configuration
        if not channel_parameters['include_in_global_search']:
            continue

        lbl = '%s' % channel_parameters['language']
        lbl += ' %s' % ', '.join(config.get_localized_category(categ) for categ in channel_parameters['categories'])

        it = xbmcgui.ListItem(channel.title, lbl)
        it.setArt({'thumb': channel.thumbnail, 'fanart': channel.fanart})
        lista.append(it)
        ids.append(channel.channel)
        lista_lang.append(channel_parameters['language'])
        lista_ctgs.append(channel_parameters['categories'])

    # Pre-select dialog
    preselecciones = [
        config.get_localized_string(70570),
        config.get_localized_string(70571),
        # 'Modificar partiendo de Recomendados',
        # 'Modificar partiendo de Frecuentes',
        config.get_localized_string(70572),
        config.get_localized_string(70573),
        # 'Modificar partiendo de Castellano',
        # 'Modificar partiendo de Latino'
    ]
    # presel_values = ['skip', 'actual', 'recom', 'freq', 'all', 'none', 'cast', 'lat']
    presel_values = ['skip', 'actual', 'all', 'none']

    categs = ['movie', 'tvshow', 'documentary', 'anime', 'vos', 'direct', 'torrent']
    for c in categs:
        preselecciones.append(config.get_localized_string(70577) + config.get_localized_category(c))
        presel_values.append(c)

    if item.action == 'setting_channel':  # Configuración de los canales incluídos en la búsqueda
        del preselecciones[0]
        del presel_values[0]
    # else: # Call from "search on other channels" (you can skip the selection and go directly to the search)

    ret = platformtools.dialog_select(config.get_localized_string(59994), preselecciones)
    if ret == -1:
        return False  # order cancel
    if presel_values[ret] == 'skip':
        return True  # continue unmodified
    elif presel_values[ret] == 'none':
        preselect = []
    elif presel_values[ret] == 'all':
        preselect = list(range(len(ids)))
    elif presel_values[ret] in ['cast', 'lat']:
        preselect = []
        for i, lg in enumerate(lista_lang):
            if presel_values[ret] in lg or '*' in lg:
                preselect.append(i)
    elif presel_values[ret] == 'actual':
        preselect = []
        for i, canal in enumerate(ids):
            channel_status = config.get_setting('include_in_global_search', canal)
            if channel_status:
                preselect.append(i)

    elif presel_values[ret] == 'recom':
        preselect = []
        for i, canal in enumerate(ids):
            _not, set_canal_list = channeltools.get_channel_controls_settings(canal)
            if set_canal_list.get('include_in_global_search', False):
                preselect.append(i)

    elif presel_values[ret] == 'freq':
        preselect = []
        for i, canal in enumerate(ids):
            frequency = channeltools.get_channel_setting('frequency', canal, 0)
            if frequency > 0:
                preselect.append(i)
    else:
        preselect = []
        for i, ctgs in enumerate(lista_ctgs):
            if presel_values[ret] in ctgs:
                preselect.append(i)

    # Dialog to select
    ret = platformtools.dialog_multiselect(config.get_localized_string(59994), lista, preselect=preselect, useDetails=True)

    if ret == None: return False  # order cancel
    seleccionados = [ids[i] for i in ret]

    # Save changes to search channels
    for canal in ids:
        channel_status = config.get_setting('include_in_global_search', canal)
        # if not channel_status:
        #     channel_status = True

        if channel_status and canal not in seleccionados:
            config.set_setting('include_in_global_search', False, canal)
        elif not channel_status and canal in seleccionados:
            config.set_setting('include_in_global_search', True, canal)

    return True
예제 #11
0
def setting_channel_new(item):
    import channelselector, xbmcgui
    from core import channeltools

    # Cargar lista de opciones (canales activos del usuario y que permitan búsqueda global)
    # ------------------------
    lista = []; ids = []; lista_lang = []
    channels_list = channelselector.filterchannels('all')
    for channel in channels_list:
        channel_parameters = channeltools.get_channel_parameters(channel.channel)

        # No incluir si en la configuracion del canal no existe "include_in_global_search"
        if not channel_parameters['include_in_global_search']:
            continue

        lbl = '%s' % channel_parameters['language']
        lbl += ' %s' % ', '.join(config.get_localized_category(categ) for categ in channel_parameters['categories'])

        it = xbmcgui.ListItem(channel.title, lbl)
        it.setArt({ 'thumb': channel.thumbnail, 'fanart': channel.fanart })
        lista.append(it)
        ids.append(channel.channel)
        lista_lang.append(channel_parameters['language'])

    # Diálogo para pre-seleccionar
    # ----------------------------
    preselecciones_std = ['Modificar selección actual', 'Modificar partiendo de Todos', 'Modificar partiendo de Ninguno', 'Modificar partiendo de Castellano', 'Modificar partiendo de Latino']
    if item.action == 'setting_channel': 
        # Configuración de los canales incluídos en la búsqueda
        preselecciones = preselecciones_std
        presel_values = [1, 2, 3, 4, 5]
    else:
        # Llamada desde "buscar en otros canales" (se puede saltar la selección e ir directo a la búsqueda)
        preselecciones = ['Buscar con la selección actual'] + preselecciones_std
        presel_values = [0, 1, 2, 3, 4, 5]
    
    ret = platformtools.dialog_select(config.get_localized_string(59994), preselecciones)
    if ret == -1: return False # pedido cancel
    if presel_values[ret] == 0: return True # continuar sin modificar
    elif presel_values[ret] == 3: preselect = []
    elif presel_values[ret] == 2: preselect = range(len(ids))
    elif presel_values[ret] in [4, 5]:
        busca = 'cast' if presel_values[ret] == 4 else 'lat'
        preselect = []
        for i, lg in enumerate(lista_lang):
            if busca in lg or '*' in lg:
                preselect.append(i)
    else:
        preselect = []
        for i, canal in enumerate(ids):
            channel_status = config.get_setting('include_in_global_search', canal)
            if channel_status:
                preselect.append(i)

    # Diálogo para seleccionar
    # ------------------------
    ret = xbmcgui.Dialog().multiselect(config.get_localized_string(59994), lista, preselect=preselect, useDetails=True)
    if ret == None: return False # pedido cancel
    seleccionados = [ids[i] for i in ret]

    # Guardar cambios en canales para la búsqueda
    # -------------------------------------------
    for canal in ids:
        channel_status = config.get_setting('include_in_global_search', canal)
        if channel_status is None: channel_status = True

        if channel_status and canal not in seleccionados:
            config.set_setting('include_in_global_search', False, canal)
        elif not channel_status and canal in seleccionados:
            config.set_setting('include_in_global_search', True, canal)

    return True
예제 #12
0
def channels(item):
    logger.info()
    itemlist = []

    if item.extra == 'movies':
        item.category = 'Canales con Películas'
        accion = 'mainlist_pelis'
        filtros = {'categories': 'movie'}

    elif item.extra == 'tvshows':
        item.category = 'Canales con Series'
        accion = 'mainlist_series'
        filtros = {'categories': 'tvshow'}

    elif item.extra == 'documentaries':
        item.category = 'Canales con Documentales'
        accion = 'mainlist'
        filtros = {'categories': 'documentary'}

    else:
        item.category = 'Todos los Canales'
        accion = 'mainlist'
        filtros = {}

    channels_list_status = config.get_setting(
        'channels_list_status',
        default=0)  # 0:Todos, 1:preferidos+activos, 2:preferidos
    if channels_list_status > 0:
        filtros['status'] = 0 if channels_list_status == 1 else 1
    color_preferidos = config.get_setting('channels_list_prefe_color')

    ch_list = channeltools.get_channels_list(filtros=filtros)
    for ch in ch_list:
        context = []
        if ch['status'] != -1:
            context.append({
                'title': 'Marcar como Desactivado',
                'channel': item.channel,
                'action': 'marcar_canal',
                'estado': -1
            })
        if ch['status'] != 0:
            context.append({
                'title': 'Marcar como Activo',
                'channel': item.channel,
                'action': 'marcar_canal',
                'estado': 0
            })
        if ch['status'] != 1:
            context.append({
                'title': 'Marcar como Preferido',
                'channel': item.channel,
                'action': 'marcar_canal',
                'estado': 1
            })

        color = color_preferidos if ch[
            'status'] == 1 else 'white' if ch['status'] == 0 else 'gray'

        plot = ''
        if item.extra == 'all':
            plot += '[' + ', '.join(
                [config.get_localized_category(ct)
                 for ct in ch['categories']]) + '][CR]'
        plot += '[' + ', '.join([idioma_canal(lg)
                                 for lg in ch['language']]) + ']'
        if ch['notes'] != '': plot += '[CR][CR]' + ch['notes']

        titulo = ch['name']
        if ch['status'] == -1: titulo += ' (desactivado)'

        itemlist.append(
            Item(channel=ch['id'],
                 action=accion,
                 title=titulo,
                 context=context,
                 text_color=color,
                 plot=plot,
                 thumbnail=ch['thumbnail'],
                 category=ch['name']))

    if item.extra == 'movies':
        itemlist.append(
            Item(channel='search',
                 action='search',
                 search_type='movie',
                 title='Buscar Película ...',
                 thumbnail=config.get_thumb('search')))
    elif item.extra == 'tvshows':
        itemlist.append(
            Item(channel='search',
                 action='search',
                 search_type='tvshow',
                 title='Buscar Serie ...',
                 thumbnail=config.get_thumb('search')))
    elif item.extra == 'documentaries':
        itemlist.append(
            Item(channel='search',
                 action='search',
                 search_type='documentary',
                 title='Buscar Documental ...',
                 thumbnail=config.get_thumb('search')))

    return itemlist