def media_search_results(request, blog_id=None, site_id=None): try: search_terms = request.query['search'] except KeyError: raise KeyError('No search field in query.') if search_terms == "": raise ValueError('Search field is empty.') search_terms_enc = utf8_escape(search_terms) from core.models import Media # TODO: move to DB.media_search for indexing media_searched = (Media.select(Media.id).where( Media.friendly_name.contains(search_terms_enc) | Media.filename.contains(search_terms_enc)).order_by( Media.id.desc()).tuples()) if site_id is not None: media_searched.select().where(Media.site == site_id) if blog_id is not None: media_searched.select().where(Media.blog == blog_id) return media_searched, search_terms
def media_search_results(request, blog_id=None, site_id=None): try: search_terms = request.query['search'] except KeyError: raise KeyError('No search field in query.') if search_terms == "": raise ValueError('Search field is empty.') search_terms_enc = utf8_escape(search_terms) from core.models import Media # TODO: move to DB.media_search for indexing media_searched = (Media.select(Media.id) .where(Media.friendly_name.contains(search_terms_enc) | Media.filename.contains(search_terms_enc)) .order_by(Media.id.desc()).tuples()) if site_id is not None: media_searched.select().where(Media.site == site_id) if blog_id is not None: media_searched.select().where(Media.blog == blog_id) return media_searched, search_terms
def page_media_add(page_id): user = auth.is_logged_in(request) page = Page.load(page_id) permission = auth.is_page_editor(user, page) media_list = Media.select().where(Media.blog == page.blog) tags = template_tags(page=page, user=user) return template('modal/modal_images.tpl', media_list=media_list, title="Select media", buttons='', **tags.__dict__)
def generate_xml(self, media_file_URI): # TODO: MASSIVE REFACTORING IN OUTPUT!!! try: media = list(Media.select(Media.q.file_URI==media_file_URI))[0] except IndexError: msg = '%s is not found' % media_file_URI pub.sendMessage('STD_OUT', msg) else: self.generator_type = get_setting('output_type') try: generator = eval(self.generator_type)(media) except NameError: msg = '%s generator not available.' % generator_type pub.sendMessage('STD_OUT', msg) else: self.output.append(generator)
def page_media_add(page_id): user = auth.is_logged_in(request) page = Page.load(page_id) permission = auth.is_page_editor(user, page) media_list = Media.select().where( Media.blog == page.blog) tags = template_tags(page=page, user=user) return template('modal/modal_images.tpl', media_list=media_list, title="Select media", buttons='', **tags.__dict__)
def rewind(self): try: media = list(Media.select()) except SQLObjectNotFound: msg = 'No media found with which to rewind' log.info(msg) sys.exit(msg) else: for medium in media: if medium.file_URI: if medium.original_file_URI: log.debug('Moving: %s to %s' % (medium.file_URI, medium.original_file_URI)) shutil.move(medium.file_URI, medium.original_file_URI) else: log.debug('Original file location does not exist') source_path = data.get_setting('source_path') media_directory = medium.media_type try: log.debug("Franchise: %s" % medium.franchise.name) new_title = medium.franchise.name except SQLObjectNotFound: log.debug('No franchise: %s' % medium.title) new_title = medium.title if medium.media_type == data.media_types[data.TV]: filename = '%s S%sE%s.%s' % (new_title, medium.season_number, medium.episode_number, medium.codec) else: filename = '%s.%s' % (new_title, medium.codec) dest = fjoin(source_path, media_directory, filename) log.debug('Moving: %s to %s' % (medium.file_URI, dest)) shutil.move(medium.file_URI, dest) medium.file_URI = dest else: msg = "%s can't be rewound." % medium.title log.error(msg) pub.sendMessage('STD_OUT', msg=msg)