Exemplo n.º 1
0
    def get (self):

        tool_user, db_user = ADayThere.tool_user ()
        if not tool_user:
            self.response.status = 401
            return

        action = self.request.get ('action');

        if action is None:
            self.response.status = 401
            return

        if (action == 'count'):
            count = 0
            query = Photos.query_user_id (db_user.user_id)
            if query is not None:
                count = query.count ()

            res = json.dumps ({ "count": count })
            self.response.write (res)
            return
        
        elif (action == 'img'):
            title = self.request.get ('title', None)
            if title is None:
                self.response.status = 401
                return

            photo_query = Photos.query_photo (db_user.user_id, title)
            photo = photo_query.get ()
            
            if photo is None:
                self.response.status = 404
                return

            self.response.headers['Content-Type'] = 'image/png'
            self.response.write (photo.photo)
            return

        elif (action == 'list'):
            list_query = Photos.query_user_id (db_user.user_id)
            
            if list_query is None:
                self.response.status = 404
                return

            titles = []
            photos = list_query.fetch ()
            for photo in photos:
                d = {}
                d['title'] = photo.title;
                d['used_by'] = photo.used_by;
                titles.append (d)

            self.response.write (json.dumps (titles))
            return