def get(self):
     user = self.get_user()
     video_query = Video.query().order(-Video.score).fetch(50)
     video_list = list(video_query)
     videos = []
     for video in video_list:
         if video.mp4_video_ref and video.webm_video_ref and video.title != "":
             videos.append(video)
     videos = videos[:12]
     self.render("frontpage.html", user=user, videos=videos, top=True)
    def get(self, search_tag):
        user = self.get_user()
        the_query = Video.query(Video.tags.IN([search_tag])).order(-Video.created)
        videos = the_query.fetch(100)
        videos_list = list(videos)

        # just to make sure they're ready to serve
        final_videos = []
        for video in videos_list:
            if video.mp4_video_ref and video.webm_video_ref and video.title != "":
                final_videos.append(video)

        self.render("frontpage.html", user=user, videos=final_videos, tag=search_tag)
    def get(self, video_id):
        user = self.get_user()
        video = Video.get_by_id(int(video_id))

        owner = False
        if user:
            if video.user_id == user["model_id"]:
                owner = True

        comments = VideoComment.query(VideoComment.video_id == int(video_id)).order(VideoComment.created).fetch(50)

        potential_related_videos = Video.query(Video.subcategory == video.subcategory).order(Video.created).fetch(5)

        if video in potential_related_videos:
            potential_related_videos.remove(video)

        related_videos = []
        for potential_video in potential_related_videos:
            if potential_video.mp4_video_ref and potential_video.webm_video_ref and potential_video.title != "":
                related_videos.append(potential_video)
        self.render(
            "videopermalink.html", user=user, video=video, comments=comments, related_videos=related_videos, owner=owner
        )
 def get(self, *args, **kwargs):
     user = self.get_user()
     if user:
         profile_id = int(kwargs.get("profile_id"))
         profileowner = User.get_by_id(profile_id)
         current_profile_id = user['model_id']
         
         videos = Video.query(Video.user_id == int(profile_id)).order(-Video.created).fetch(10)
         videos = list(videos)
         videos_to_display = []
         for video in videos:
             if video.title != "":
                 videos_to_display.append(video)
         
         quote = profileowner.quote            
         
         avatar=None
         if profileowner.avatar:
             try:
                 avatar = images.get_serving_url(profileowner.avatar, size=None, crop=False, secure_url=None)
             except TransformationError:
                 logging.error('we just got a TransformationError while trying to open the users image')
                 avatar = None
         if not avatar:
             avatar = 'http://i.imgur.com/RE9OX.jpg'
         
         owner = False
         if current_profile_id == profile_id:
             owner = True               
             
         upload_url = blobstore.create_upload_url('/profileupload/%s' % (profile_id))
         
         self.render('profile.html', user=user, avatar=avatar, videos_to_display=videos_to_display,
                     profile_id=profile_id, upload_url=upload_url, profileowner=profileowner, owner=owner)
     else:
         self.render('login.html')
    def get(self):
        user = self.get_user()
        if user["model_id"] == 5187942536445952:
            user_model = User.get_by_id(5187942536445952)
            user_model.admin = True
            user_model.put

            all_videos = Video.query()
            video_count = 0
            for v in all_videos:
                video_count = video_count + 1

            all_users = User.query()
            user_count = 0
            for u in all_users:
                user_count = user_count + 1

            all_comments = VideoComment.query()
            comment_count = 0
            for c in all_comments:
                comment_count = comment_count + 1

            all_votes = Vote.query()
            vote_count = 0
            for vs in all_votes:
                vote_count = vote_count + 1

            self.response.write("There are " + str(video_count) + " videos.")
            self.response.write("<br>")
            self.response.write("There are " + str(user_count) + " users.")
            self.response.write("<br>")
            self.response.write("There are " + str(comment_count) + " comments.")
            self.response.write("<br>")
            self.response.write("There are " + str(vote_count) + " votes.")
        else:
            self.redirect("/noaccess")
    def get(self):
        sportcategory = self.request.get("sportcategory")
        subcategory = self.request.get("subcategory")
        sportlevel = self.request.get("sportlevel")

        user = self.get_user()

        if (
            (sportcategory == "" or sportcategory == "choose")
            and (subcategory == "" or subcategory == "choose a subcategory")
            and (sportlevel == "" or sportlevel == "choose")
        ):
            the_query = Video.query().order(-Video.created)
            videos = the_query.fetch(20)
            videos_list = list(videos)
            videos_list = sorted(videos_list, key=attrgetter("score"), reverse=True)
            videos = []
            for video in videos_list:
                if video.mp4_video_ref and video.webm_video_ref and video.title != "":
                    videos.append(video)
            videos = videos[:12]

            self.render("frontpage.html", user=user, videos=videos)

        else:
            final_videos = []
            filters = []
            prelim_videos = []
            videos_list = []

            if subcategory != "choose a subcategory":
                the_query = Video.query(Video.subcategory == subcategory).order(-Video.created)
                videos = the_query.fetch(100)
                videos_list = list(videos)
                if sportlevel != "choose":
                    for video in videos_list:
                        if video.sportlevel == sportlevel:
                            prelim_videos.append(video)
                    videos_list = prelim_videos
            elif sportcategory != "choose":
                the_query = Video.query(Video.sportcategory == sportcategory).order(-Video.created)
                videos = the_query.fetch(100)
                videos_list = list(videos)
                if sportlevel != "choose":
                    for video in videos_list:
                        if video.sportlevel == sportlevel:
                            prelim_videos.append(video)
                    videos_list = prelim_videos
            elif sportlevel != "choose":
                the_query = Video.query(Video.sportlevel == sportlevel).order(-Video.created)
                videos = the_query.fetch(100)
                videos_list = list(videos)
                for video in videos_list:
                    if video.sportlevel == sportlevel:
                        prelim_videos.append(video)
                videos_list = prelim_videos
            else:
                filters = None
                the_query = Video.query().order(-Video.created)
                videos = the_query.fetch(100)
                videos_list = list(videos)

            if sportcategory != "choose":
                filters.append(sportcategory)
            if subcategory != "choose a subcategory":
                filters.append(subcategory)
            if sportlevel != "choose":
                filters.append(sportlevel)

            # just to make sure they're ready to serve
            for video in videos_list:
                if video.mp4_video_ref and video.webm_video_ref and video.title != "":
                    final_videos.append(video)

            # TODO will need to so some sort of paging mechanism here
            self.render("frontpage.html", user=user, videos=final_videos, filters=filters)