Example #1
0
    def get(self):
        data = MoodSuggestion.parser.parse_args()
        today = date.today()
        moodlist = []
        for i in range(0, 7):
            for mood in MoodModel.find_by_email_and_date(
                    data['email'], (today - timedelta(days=i))):
                moodlist.append(mood)

        return MoodModel.analyze_user_statistics(moodlist)
Example #2
0
    def get(self):
        local = reqparse.RequestParser()
        local.add_argument('email',
                           type=str,
                           required=True,
                           help='email is mandatory')

        data = local.parse_args()

        moodlist = []
        today = date.today()
        for i in range(0, 7):
            #print (today - timedelta(days=i))
            for mood in MoodModel.find_by_email_and_date(
                    data['email'], (today - timedelta(days=i))):
                moodlist.append(mood)

        return MoodModel.analyze_weekly_status(moodlist)
Example #3
0
    def get(self):

        data = UserMoodStatus.parser.parse_args()
        moodlist = []
        today = date.today()
        for i in range(0, 7):
            for mood in MoodModel.find_by_email_and_date(
                    data['email'], (today - timedelta(days=i))):
                moodlist.append(mood.json())

        return {'moods': moodlist}
Example #4
0
    def delete(self, on_date, child_id):
        claims = get_jwt_claims()

        if not claims['is_admin']:
            return {'message': 'Admin privilege required.'}, 401

        mood = MoodModel.find_by_child_id(on_date, child_id)
        if mood:
            mood.delete_from_db()
            return ({'message': 'Mood Deleted'}), 202  # deleted

        return ({'message': 'Mood not found'}), 404
Example #5
0
    def post(self, on_date, child_id):
        if MoodModel.find_by_child_id(on_date, child_id):
            return {
                'message':
                "A mood for child '{}' already exists.".format(child_id)
            }, 400

        data = Mood.parser.parse_args()
        mood = MoodModel(
            on_date, child_id,
            **data)  # expands to mood['variable1'], mood['variable2'], etc

        try:
            mood.save_to_db()
        except:
            return {"message": "An error occurred inserting the Mood."}, 500

        return mood.json(), 201  # created
Example #6
0
    def post(self):
        data = Mood.parser.parse_args()
        new = date.today()
        mood = MoodModel.check_by_email_and_date(data['email'], new)

        if mood:
            mood.sleep_status = data['sleep_status']  #updating current data
            mood.day_status = data['day_status']
            mood.time_spending = data['time_spending']
            mood.eat_status = data['eat_status']
            mood.activities = data['activities']

        else:
            mood = MoodModel(**data, entry_date=new)  #save all data at once

        mood.save()

        return mood.json()
Example #7
0
    def delete(self):

        local = reqparse.RequestParser()
        local.add_argument('email',
                           type=str,
                           required=True,
                           help='email is mandatory')
        local.add_argument('ram',
                           type=str,
                           required=True,
                           help='ram haridas knows this stuff, ask him')

        data = local.parse_args()
        if data['ram'] != 'force':
            return {'msg': 'koshish kiya tumne, par jama nahi'}
        today = date.today()
        for i in range(0, 7):
            #print (today - timedelta(days=i))
            for mood in MoodModel.find_by_email_and_date(
                    data['email'], (today - timedelta(days=i))):
                if mood:
                    mood.delete()

        return {'msg': 'deleted'}
Example #8
0
 def get(self):
     moods = [mood.json() for mood in MoodModel.find_all()]
     return {'moods': moods}, 200
Example #9
0
    def put(self, on_date, child_id):
        data = Mood.parser.parse_args()

        mood = MoodModel.find_by_child_id(on_date, child_id)

        if mood is None:
            mood = MoodModel(
                on_date, child_id,
                **data)  # expands to mood['variable1'], mood['variable2'], etc
        else:
            mood.happy = data['happy']
            mood.helpful = data['helpful']
            mood.silly = data['silly']
            mood.vocal = data['vocal']
            mood.quiet = data['quiet']
            mood.fussy = data['fussy']
            mood.cranky = data['cranky']
            mood.sad = data['sad']

        mood.save_to_db()

        return mood.json()
Example #10
0
 def get(self, on_date, child_id):
     mood = MoodModel.find_by_child_id(on_date, child_id)
     if mood:
         return mood.json()
     return {'message': 'Mood not found'}, 404