コード例 #1
0
ファイル: tour.py プロジェクト: Carbulator/carbulator-server
 def get_marshaller():
     return {
         'id':
         fields.Integer,
         'time_created':
         fields.DateTime,
         'time_updated':
         fields.DateTime,
         'start_time':
         fields.DateTime,
         'end_time':
         fields.DateTime,
         'owner':
         fields.Nested(UserModel.get_marshaller()),
         'community':
         fields.Nested(CommunityModel.get_marshaller()),
         'start_km':
         fields.String,
         'end_km':
         fields.String,
         'parking_position':
         fields.String,
         'comment':
         fields.String,
         'is_force_finished':
         fields.Boolean,
         'force_finished_by':
         fields.Nested(UserModel.get_marshaller(), allow_null=True),
         'is_open':
         fields.Boolean,
         'passengers':
         fields.Nested(UserModel.get_marshaller())
     }
コード例 #2
0
 def get_marshaller():
     return {
         'id': fields.Integer,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'debtee': fields.Nested(UserModel.get_marshaller()),
         'recepient': fields.Nested(UserModel.get_marshaller()),
         'is_settled': fields.Boolean,
         'amount': fields.Float
     }
コード例 #3
0
 def get_marshaller():
     return {
         'message': fields.String,
         'access_token': fields.String,
         'refresh_token': fields.String,
         'user': fields.Nested(UserModel.get_marshaller())
     }
コード例 #4
0
 def get_marshaller():
     return {
         'id': fields.Integer,
         'name': fields.String,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'users': fields.List(fields.Nested(UserModel.get_marshaller())),
         'car': fields.Nested(CarModel.get_marshaller())
     }
コード例 #5
0
ファイル: car.py プロジェクト: Carbulator/carbulator-server
 def get_marshaller():
     return {
         'id': fields.Integer,
         'name': fields.String,
         'make': fields.String,
         'model': fields.String,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'owner': fields.Nested(UserModel.get_marshaller())
     }
コード例 #6
0
 def get_detailed_marshaller():
     return {
         'id': fields.Integer,
         'name': fields.String,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'users': fields.List(fields.Nested(UserModel.get_marshaller())),
         'car': fields.Nested(CarModel.get_marshaller()),
         'is_deletable': fields.Boolean,
         'is_editable': fields.Boolean
     }
コード例 #7
0
class CommunityUsers(Resource):
    @jwt_required
    @marshal_with(UserModel.get_marshaller())
    def get(self, community_id):
        user = UserModel.find_by_username(get_jwt_identity())
        community = CommunityModel.find_by_id(community_id)

        if user not in community.users:
            abort(401, message=UNAUTHORIZED)

        return community.users, 200
コード例 #8
0
ファイル: event.py プロジェクト: Carbulator/carbulator-server
 def get_marshaller():
     return {
         'id': fields.Integer,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'owner': fields.Nested(UserModel.get_marshaller()),
         'title': fields.String,
         'description': fields.String,
         'start': fields.DateTime,
         'end': fields.DateTime,
     }
コード例 #9
0
ファイル: task.py プロジェクト: Carbulator/carbulator-server
 def get_marshaller():
     return {
         'id': fields.Integer,
         'time_created': fields.DateTime,
         'time_updated': fields.DateTime,
         'time_next_instance': fields.DateTime,
         'time_interval': TimedeltaDays,
         'owner': fields.Nested(UserModel.get_marshaller()),
         'community': fields.Nested(CommunityModel.get_marshaller()),
         'name': fields.String,
         'description': fields.String,
         'km_interval': fields.Integer,
         'km_next_instance': fields.Float,
         'km_to_next_instance': fields.Float,
         'is_reocurrent': fields.Boolean
     }
コード例 #10
0
class InvitedUsers(Resource):
    @jwt_required
    @marshal_with(UserModel.get_marshaller())
    def get(self, community_id: int):

        user = UserModel.find_by_username(get_jwt_identity())
        community = CommunityModel.find_by_id(community_id)

        if not community:
            abort(404, message=COMMUNIY_DOESNT_EXIST)

        if user not in community.users:
            abort(401, message=UNAUTHORIZED)

        invitations = CommunityUserLinkModel.find_open_invitations_by_community(
            community_id)
        return [i.user for i in invitations], 200
コード例 #11
0
 def get_marshaller():
     return {
         'id':
         fields.Integer,
         'time_created':
         fields.DateTime,
         'time_updated':
         fields.DateTime,
         'time_finished':
         fields.DateTime,
         'task':
         fields.Nested(TaskModel.get_marshaller()),
         'is_open':
         fields.Boolean,
         'km_created_at':
         fields.Float,
         'finished_by':
         fields.Nested(UserModel.get_marshaller(), allow_null=True)
     }
コード例 #12
0
class UserSearch(Resource):
    @jwt_required
    @marshal_with(UserModel.get_marshaller())
    def get(self):
        data = search_parser.parse_args()
        username = get_jwt_identity()
        users = UserModel.search_by_username(data['q'], username)
        if not data['only-uninvited']:
            return users
        else:
            if not data['community']:
                abort(400, message=NO_COMMUNITY_ID_GIVEN)

            community = CommunityModel.find_by_id(data['community'])
            if not community:
                abort(404, message=COMMUNIY_DOESNT_EXIST)

            if username not in [u.username for u in community.users]:
                abort(401, message=UNAUTHORIZED)

            invitations = CommunityUserLinkModel.find_by_community(data['community'])
            return [u for u in users if u.id not in [i.user_id for i in invitations]]
コード例 #13
0
 def get_marshaller():
     return {
         'user': fields.Nested(UserModel.get_marshaller()),
         'costs': fields.Float,
     }
コード例 #14
0
 def get_marshaller():
     return {
         'user': fields.Nested(UserModel.get_marshaller()),
         'km': fields.Float,
         'km_accounted_for_passengers': fields.Float
     }
コード例 #15
0
class AllUsers(Resource):
    @jwt_required
    @marshal_with(UserModel.get_marshaller())
    def get(self):
        return UserModel.return_all(), 200