Esempio n. 1
0
def get_show_info(title):
    show = db.get_tv_show(title.lower())
    if show:
        return show.name
    imdb = Imdb()
    imdb.search(title)
    return imdb.title
Esempio n. 2
0
 def get(self):
     result = self.user_login()
     show_name = cgi.escape(self.request.get('show'))
     if result['user'] is None:
         self.go_to_login()
     else:
         show = db.get_tv_show(show_name)
         following = db.is_already_following(result['user'], show)
         following.delete()
         self.redirect('/')
Esempio n. 3
0
 def AddTvShow(self, *args, **kwargs):
     data = {}
     try:
         title = imdb.get_show_info(args[0])
         show = db.get_tv_show(title)
         user = kwargs['user']
         if show and user:
             following = db.is_already_following(user, show)
             if following is None:
                 following = model.FollowingShows()
                 following.login = user
                 following.serie = show
                 following.put()
             else:
                 data['do_nothing'] = True
                 return data
             # Search for recent episode
             episode = db.obtain_most_recent_episode(show)
             data['name'] = show.name
             data['title'] = show.title
             url = ''
             if show.image_name:
                 url = db.get_image_url(show.image_name)
                 if url is None:
                     url = images.get_serving_url(
                         files.blobstore.get_blob_key(show.image_name))
                     published = model.PublishedImages()
                     published.image_name = show.image_name
                     published.url = url
                     published.put()
             data['image_url'] = url
             data['season'] = show.last_season
             if episode is not None:
                 data['episode_title'] = episode.title
                 data['episode_nro'] = episode.nro
                 if episode.airdate == datetime.date.today():
                     data['today'] = True
                 else:
                     date = "%s %i, %i" % (
                         episode.airdate.strftime('%B')[:3],
                         episode.airdate.day, episode.airdate.year)
                     data['airdate'] = date
             else:
                 data['episode_title'] = 'N/A'
                 data['episode_nro'] = 'N/A'
                 data['airdate'] = 'N/A'
         else:
             data['error'] = "Tv Show couldn't be found..."
     except Exception, reason:
         data['error'] = str(reason)
Esempio n. 4
0
 def get(self):
     result = self.user_login()
     show_name = cgi.escape(self.request.get('show'))
     episode = cgi.escape(self.request.get('episode'))
     if result['user'] is None:
         self.go_to_login()
     else:
         show = db.get_tv_show(show_name)
         result['show'] = show
         url = ''
         if show.image_name:
             url = db.get_image_url(show.image_name)
             if url is None:
                 url = images.get_serving_url(files.blobstore.get_blob_key(
                     show.image_name))
                 published = model.PublishedImages()
                 published.image_name = show.image_name
                 published.url = url
                 published.put()
         result['image_url'] = url
         # Get episodes
         season = db.get_last_season(show)
         # Check if it is detail or episode info
         if episode:
             nro = episode.split('x')[1]
             if nro.isdigit():
                 nro = int(nro)
             else:
                 nro = 1
             episode_info = db.get_episodes_for_season_and_nro(season, nro)
             result['episode_info'] = episode_info
         else:
             episodes = db.get_episodes_for_season(season)
             result['episodes'] = episodes
         path = os.path.join(os.path.dirname(__file__),
             "templates/details.html")
         self.response.out.write(template.render(path, result))