def canal(categoria_id): categories = fromcache("all_videos_categories") or tocache( "all_videos_categories", wordpress.wpgd.getVideosCategories()) page = int(request.args.get('page') or 1) page -= 1 # print "Carregando pagina", page # print categories nome_canal = "" for cat in categories: if int(cat['term_id']) == categoria_id: nome_canal = cat['name'] break videos_json = {} allvideos = fromcache("all_videos_root") or tocache( "all_videos_root", treat_categories(wordpress.wpgd.getVideos(where='status=true'), orderby='title')) for v in allvideos: videos_json[v['title']] = v['id'] # print "Buscando", current_app.config['VIDEO_PAGINACAO'], "vídeos por página!" cacheid = "videos_canal_%s_page_%s" % (str(categoria_id), page) cacheidall = "videos_canal_%s" % str(categoria_id) pagging = int(current_app.config['VIDEO_PAGINACAO']) offset = page * pagging allvideos_cat = fromcache(cacheidall) or tocache( cacheidall, treat_categories( wordpress.wpgd.getVideosByCategory(category=categoria_id))) # print "PAGINACAO", len(allvideos_cat), page, pagging, offset page_total = int(round(Decimal(len(allvideos_cat)) / pagging)) videos = fromcache(cacheid) or tocache( cacheid, paginate( treat_categories(wordpress.wpgd.getVideosByCategory( category=categoria_id, ), orderby='date'), pagging, offset)) hvideos = fromcache("h_videos_root") or tocache( "h_videos_root", treat_categories( wordpress.wpgd.getHighlightedVideos())) return render_template( 'videos.html', videos=videos, titulos=videos_json, categories=categories, hvideos=hvideos, canal=nome_canal, canalclass="fa fa-th-large", page=page + 1, page_total=page_total, sidebar=wordpress.getSidebar, )
def listing(): page = int(request.args.get('page') or 1) page -= 1 # page = wordpress.wpgd.getHighlightedVideos() hvideos = fromcache("h_videos_root") or tocache("h_videos_root", treat_categories(wordpress.wpgd.getHighlightedVideos()) ) # print "========================================================" # print dir(request) # print request.url # print request.url_rule # print "========================================================" canalclass="" if 'populares' in str(request.url_rule): order = "views" #recents nome_canal = "Populares" canalclass="fa-star" else : order = "date" nome_canal = "Recentes" canalclass="fa fa-clock-o" order_by = "%s desc" % order videos_json = {} allvideos = fromcache("all_videos_root_") or \ tocache("all_videos_root_" , treat_categories(wordpress.wpgd.getVideos(where='status=true'), orderby="date") ) categories = fromcache("all_videos_categories") or \ tocache("all_videos_categories",wordpress.wpgd.getVideosCategories()) for v in allvideos: videos_json[v['title']] = v['id'] # print "Buscando", current_app.config['VIDEO_PAGINACAO'], "vídeos por página!" cacheid = "videos_root_%s_page_%s" % (order,page) pagging = int(current_app.config['VIDEO_PAGINACAO']) offset = page * pagging page_total = int( round( Decimal( len(allvideos) ) / pagging ) ) # print "PAGINACAO", len(allvideos), page, pagging, offset videos = fromcache(cacheid) or tocache(cacheid, paginate(treat_categories(wordpress.wpgd.getVideos(where='v.status=true'),orderby=order_by), pagging, offset) ) try: twitter_hash_cabecalho = twitts() except KeyError: twitter_hash_cabecalho = "" menus = fromcache('menuprincipal') or tocache('menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal') ) return render_template('videos.html', videos=videos ,twitter_hash_cabecalho=twitter_hash_cabecalho ,menu=menus, titulos=videos_json, categories=categories, hvideos=hvideos ,canal=nome_canal, canalclass=canalclass, page=page+1, page_total=page_total, sidebar=wordpress.getSidebar,)
def details(vid): video = fromcache("video_%s" % str(vid)) if not video: # print "Video do wordpress...", vid video = tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0] ) sources = fromcache("video_src_%s" % str(vid)) or tocache("video_src_%s" % str(vid),wordpress.wpgd.getVideoSources(vid)) base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[-1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if(s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] try: twitter_hash_cabecalho = twitts() except KeyError: twitter_hash_cabecalho = "" menus = fromcache('menuprincipal') or tocache('menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal') ) return render_template('video.html', video=video, sources=video_sources ,menu=menus ,twitter_hash_cabecalho=twitter_hash_cabecalho ,base_url=base_url, sidebar=wordpress.getSidebar,)
def canal(categoria_id): categories = fromcache("all_videos_categories") or tocache("all_videos_categories",wordpress.wpgd.getVideosCategories()) page = int(request.args.get('page') or 1) page -= 1 # print "Carregando pagina", page # print categories nome_canal = "" for cat in categories: if int(cat['term_id']) == categoria_id: nome_canal = cat['name'] break videos_json = {} allvideos = fromcache("all_videos_root") or tocache("all_videos_root", treat_categories(wordpress.wpgd.getVideos(where='status=true'), orderby='title') ) for v in allvideos: videos_json[v['title']] = v['id'] # print "Buscando", current_app.config['VIDEO_PAGINACAO'], "vídeos por página!" cacheid = "videos_canal_%s_page_%s" % (str(categoria_id),page) cacheidall = "videos_canal_%s" % str(categoria_id) pagging = int(current_app.config['VIDEO_PAGINACAO']) offset = page * pagging allvideos_cat = fromcache(cacheidall) or tocache(cacheidall, treat_categories(wordpress.wpgd.getVideosByCategory(category=categoria_id)) ) # print "PAGINACAO", len(allvideos_cat), page, pagging, offset page_total = int( round( Decimal( len(allvideos_cat) ) / pagging ) ) videos = fromcache(cacheid) or tocache(cacheid, paginate(treat_categories(wordpress.wpgd.getVideosByCategory(category=categoria_id, ), orderby='date'), pagging, offset) ) hvideos = fromcache("h_videos_root") or tocache("h_videos_root", treat_categories(wordpress.wpgd.getHighlightedVideos()) ) return render_template('videos.html', videos=videos, titulos=videos_json, categories=categories, hvideos=hvideos, canal=nome_canal, canalclass="fa fa-th-large", page=page+1, page_total=page_total, sidebar=wordpress.getSidebar,)
def embed(vid): video = fromcache("video_%s" % str(vid)) or tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache("video_src_%s" % str(vid),wordpress.wpgd.getVideoSources(vid)) video_sources = {} for s in sources: if(s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] return render_template('videoembed.html', video=video, sources=video_sources)
def adjustCf(obras): """#Trata o retorno dos custom_fields para facilitar a utilizacao""" r_obras = [] for obra in obras: if obra['custom_fields']: custom_fields = {} for cf in obra['custom_fields']: valor = cf['value'] #=== tratamento especial para alguns custom fields if cf['key'] == 'gdvideo': vid = valor video = fromcache("video_%s" % str(vid)) or tocache( "video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache( "video_src_%s" % str(vid), wordpress.wpgd.getVideoSources(vid)) # print "SOURCES===", sources base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[ -1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if (s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] video['sources'] = video_sources # print "SOURCES===", video_sources valor = video if cf['key'] in ('gdobra_municipio'): #Deixa somente os nomes das empresas contratadas valor = [x[1:-1] for x in re.findall('\".+?\"', valor)] if cf['key'] in ('gdobra_empresa_contratada'): #Deixa somente os nomes das empresas contratadas if '{' in valor: valor = [x[1:-1] for x in re.findall('\".+?\"', valor)] else: valor = [valor] if cf['key'] == 'gdobra_coordenadas': # print "LLLLLLLL", "[" + valor + "]" valor = re.findall("([\+-].\d+.\d+,[\+-].\d+.\d+)", valor) custom_fields[cf['key']] = valor del obra['custom_fields'] obra['custom_fields'] = custom_fields r_obras.append(obra) return r_obras
def adjustCf(obras): """#Trata o retorno dos custom_fields para facilitar a utilizacao""" r_obras = [] for obra in obras: if obra['custom_fields']: custom_fields = {} for cf in obra['custom_fields']: valor = cf['value'] #=== tratamento especial para alguns custom fields if cf['key'] == 'gdvideo': vid = valor video = fromcache("video_%s" % str(vid)) or tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache("video_src_%s" % str(vid),wordpress.wpgd.getVideoSources(vid)) # print "SOURCES===", sources base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[-1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if(s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] video['sources'] = video_sources # print "SOURCES===", video_sources valor = video if cf['key'] in ( 'gdobra_municipio' ): #Deixa somente os nomes das empresas contratadas valor = [ x[1:-1] for x in re.findall('\".+?\"',valor) ] if cf['key'] in ( 'gdobra_empresa_contratada' ): #Deixa somente os nomes das empresas contratadas if '{' in valor: valor = [ x[1:-1] for x in re.findall('\".+?\"',valor) ] else: valor = [valor] if cf['key'] == 'gdobra_coordenadas' : # print "LLLLLLLL", "[" + valor + "]" valor = re.findall("([\+-].\d+.\d+,[\+-].\d+.\d+)", valor) custom_fields[cf['key']] = valor del obra['custom_fields'] obra['custom_fields'] = custom_fields r_obras.append(obra) return r_obras
def addview(vid): video = fromcache("video_%s" % str(vid)) if not video: video = tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) if 'views' in video: video['views'] = int(video['views']) + 1 else: video['views'] = 1 removecache("video_%s" % str(vid)) tocache("video_%s" % str(vid), video) wordpress.wpgd.setVideoViews(video['views'], vid); return "ok"
def addview(vid): video = fromcache("video_%s" % str(vid)) if not video: video = tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) if 'views' in video: video['views'] = int(video['views']) + 1 else: video['views'] = 1 removecache("video_%s" % str(vid)) tocache("video_%s" % str(vid), video) wordpress.wpgd.setVideoViews(video['views'], vid) return "ok"
def embed(vid): video = fromcache("video_%s" % str(vid)) or tocache( "video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache( "video_src_%s" % str(vid), wordpress.wpgd.getVideoSources(vid)) video_sources = {} for s in sources: if (s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] return render_template('videoembed.html', video=video, sources=video_sources)
def details(vid): video = fromcache("video_%s" % str(vid)) if not video: # print "Video do wordpress...", vid video = tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache( "video_src_%s" % str(vid), wordpress.wpgd.getVideoSources(vid)) base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[ -1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if (s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] try: twitter_hash_cabecalho = twitts() except KeyError: twitter_hash_cabecalho = "" menus = fromcache('menuprincipal') or tocache( 'menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal')) return render_template( 'video.html', video=video, sources=video_sources, menu=menus, twitter_hash_cabecalho=twitter_hash_cabecalho, base_url=base_url, sidebar=wordpress.getSidebar, )
def index(): obras = fromcache("obras-monitoramento") or tocache("obras-monitoramento", _get_obras()) # print "OBRAS ==========================================================================" # print obras menus = fromcache('menuprincipal') or tocache('menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal') ) slides = wordpress.getPagesByParent('capa-obras',thumbsizes=['slideshow','thumbnail']); """ Os slides que aparecem da capa do Monitoramento são Páginas filhas de uma página com slug 'capa-obras'. Com título e conteúdo de texto. - Se tem imagem destacada, mostra-a no thumbnail - Se tem custom_field "gdvideo" busca o video no sistema de videos do GD - Se tem custom_field "youtube" busca o thumbnail do youtube através do VideoID - Se tem custom_field "video" , contendo o endereco de um video qualquer, usa a imagem destacada como thumbnail também. """ retslides = [] for slide in slides: #Trata o retorno dos custom_fields para facilitar a utilizacao if slide['custom_fields']: custom_fields = {} for cf in slide['custom_fields']: custom_fields[cf['key']] = cf['value'] del slide['custom_fields'] slide['custom_fields'] = custom_fields # print "SLIDE===", slide if slide['custom_fields'].has_key('gdvideo'): vid = slide['custom_fields']['gdvideo'] video = fromcache("video_%s" % str(vid)) or tocache("video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache("video_src_%s" % str(vid),wordpress.wpgd.getVideoSources(vid)) # print "SOURCES===", sources base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[-1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if(s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] video['sources'] = video_sources # print "SOURCES===", video_sources slide['gdvideo'] = video if slide['custom_fields'].has_key('youtube'): video = slide['custom_fields']['youtube'] # Espera algo como: https://www.youtube.com/watch?v=IuW_gf7hQTE s = re.search(r'(v=)([A-Za-z0-9_]+)', video) if s: yid = s.groups()[1] else: yid = False if yid: thumb = "http://img.youtube.com/vi/%s/0.jpg" % yid video = {'video': video, 'thumb': thumb} slide['youtube'] = video if slide['custom_fields'].has_key('video'): slide['video'] = slide['custom_fields']['video'] retslides.append(slide) # print "OBRAS SLIDES ==========================================================================", len(slides) # try: # twitter_hash_cabecalho = twitts() # except KeyError: # twitter_hash_cabecalho = "" try: valor_investimentos = conf.VALOR_INVESTIMENTOS except KeyError: valor_investimentos = "" return render_template('monitoramento.html', obras=obras, slides=retslides, stats=_get_stats(), milhoes=valor_investimentos, )
def listing(): page = int(request.args.get('page') or 1) page -= 1 # page = wordpress.wpgd.getHighlightedVideos() hvideos = fromcache("h_videos_root") or tocache( "h_videos_root", treat_categories( wordpress.wpgd.getHighlightedVideos())) # print "========================================================" # print dir(request) # print request.url # print request.url_rule # print "========================================================" canalclass = "" if 'populares' in str(request.url_rule): order = "views" #recents nome_canal = "Populares" canalclass = "fa-star" else: order = "date" nome_canal = "Recentes" canalclass = "fa fa-clock-o" order_by = "%s desc" % order videos_json = {} allvideos = fromcache("all_videos_root_") or \ tocache("all_videos_root_" , treat_categories(wordpress.wpgd.getVideos(where='status=true'), orderby="date") ) categories = fromcache("all_videos_categories") or \ tocache("all_videos_categories",wordpress.wpgd.getVideosCategories()) for v in allvideos: videos_json[v['title']] = v['id'] # print "Buscando", current_app.config['VIDEO_PAGINACAO'], "vídeos por página!" cacheid = "videos_root_%s_page_%s" % (order, page) pagging = int(current_app.config['VIDEO_PAGINACAO']) offset = page * pagging page_total = int(round(Decimal(len(allvideos)) / pagging)) # print "PAGINACAO", len(allvideos), page, pagging, offset videos = fromcache(cacheid) or tocache( cacheid, paginate( treat_categories(wordpress.wpgd.getVideos(where='v.status=true'), orderby=order_by), pagging, offset)) try: twitter_hash_cabecalho = twitts() except KeyError: twitter_hash_cabecalho = "" menus = fromcache('menuprincipal') or tocache( 'menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal')) return render_template( 'videos.html', videos=videos, twitter_hash_cabecalho=twitter_hash_cabecalho, menu=menus, titulos=videos_json, categories=categories, hvideos=hvideos, canal=nome_canal, canalclass=canalclass, page=page + 1, page_total=page_total, sidebar=wordpress.getSidebar, )
def index(): obras = fromcache("obras-monitoramento") or tocache( "obras-monitoramento", _get_obras()) # print "OBRAS ==========================================================================" # print obras menus = fromcache('menuprincipal') or tocache( 'menuprincipal', wordpress.exapi.getMenuItens(menu_slug='menu-principal')) slides = wordpress.getPagesByParent('capa-obras', thumbsizes=['slideshow', 'thumbnail']) """ Os slides que aparecem da capa do Monitoramento são Páginas filhas de uma página com slug 'capa-obras'. Com título e conteúdo de texto. - Se tem imagem destacada, mostra-a no thumbnail - Se tem custom_field "gdvideo" busca o video no sistema de videos do GD - Se tem custom_field "youtube" busca o thumbnail do youtube através do VideoID - Se tem custom_field "video" , contendo o endereco de um video qualquer, usa a imagem destacada como thumbnail também. """ retslides = [] for slide in slides: #Trata o retorno dos custom_fields para facilitar a utilizacao if slide['custom_fields']: custom_fields = {} for cf in slide['custom_fields']: custom_fields[cf['key']] = cf['value'] del slide['custom_fields'] slide['custom_fields'] = custom_fields # print "SLIDE===", slide if slide['custom_fields'].has_key('gdvideo'): vid = slide['custom_fields']['gdvideo'] video = fromcache("video_%s" % str(vid)) or tocache( "video_%s" % str(vid), treat_categories(wordpress.wpgd.getVideo(vid))[0]) sources = fromcache("video_src_%s" % str(vid)) or tocache( "video_src_%s" % str(vid), wordpress.wpgd.getVideoSources(vid)) # print "SOURCES===", sources base_url = current_app.config['BASE_URL'] base_url = base_url if base_url[ -1:] != '/' else base_url[:-1] #corta a barra final video_sources = {} for s in sources: if (s['format'].find(';') > 0): f = s['format'][0:s['format'].find(';')] else: f = s['format'] video_sources[f] = s['url'] video['sources'] = video_sources # print "SOURCES===", video_sources slide['gdvideo'] = video if slide['custom_fields'].has_key('youtube'): video = slide['custom_fields']['youtube'] # Espera algo como: https://www.youtube.com/watch?v=IuW_gf7hQTE s = re.search(r'(v=)([A-Za-z0-9_]+)', video) if s: yid = s.groups()[1] else: yid = False if yid: thumb = "http://img.youtube.com/vi/%s/0.jpg" % yid video = {'video': video, 'thumb': thumb} slide['youtube'] = video if slide['custom_fields'].has_key('video'): slide['video'] = slide['custom_fields']['video'] retslides.append(slide) # print "OBRAS SLIDES ==========================================================================", len(slides) # try: # twitter_hash_cabecalho = twitts() # except KeyError: # twitter_hash_cabecalho = "" try: valor_investimentos = conf.VALOR_INVESTIMENTOS except KeyError: valor_investimentos = "" return render_template( 'monitoramento.html', obras=obras, slides=retslides, stats=_get_stats(), milhoes=valor_investimentos, )