Esempio n. 1
0
 def get(self, request, id):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             I = get_user_ID(request)
             # TargetUser = User.objects.filter(id = id).first()
             profile = Profile.objects.get(user=id)
             user_dictionary = {}
             user_dictionary["name"] = profile.name
             user_dictionary["phone"] = profile.mobile
             user_dictionary["college_id"] = profile.college_id
             user_dictionary["email"] = profile.user.email
             user_dictionary["group"] = profile.user.groups.all().first(
             ).name
             log(
                 user=User.objects.get(id=I),
                 action="Viewed one user",
             )
             return Response(user_dictionary)
         except ObjectDoesNotExist:
             return Response({"msg": "This user doesn't exist"},
                             status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), I)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "unauthorized"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 2
0
 def put(self, request, id):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             I = get_user_ID(request)
             user = User.objects.get(pk=id)
             updated_group = Group.objects.get(name=request.data['group'])
             print(user)
             user.groups.clear()
             user.groups.add(updated_group)
             log(
                 user=User.objects.filter(id=I).first(),
                 action="Updated a user",
             )
             return Response(
                 {"msg": "User Group Permissions SUccessfully Updated"},
                 status=status.HTTP_202_ACCEPTED)
         except ObjectDoesNotExist:
             return Response({"msg": "This user doesn't exist"},
                             status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), I)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "unauthorized"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 3
0
 def delete(self, request, pk):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             I = get_user_ID(request)
             teams = Team.objects.get(id=pk)
             for i in teams.achievement.all():
                 ach = Achievement.objects.get(id=i.id)
                 teams.achievement.remove(ach)
                 ach.delete()
             teams.delete()
             log(
                 user=User.objects.get(id=I),
                 action="Deleted a team",
             )
             return Response({"msg": "Deleted successfully!"},
                             status=status.HTTP_200_OK)
         except ObjectDoesNotExist:
             return Response({"msg": "This team doesn't exist"},
                             status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), I)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "Token Invalid"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 4
0
 def post(self, request):
     if TokenVerify(request):
         try:
             id = get_user_ID(request)
             serializer = FAQSerializer(data=request.data)
             if (serializer.is_valid()):
                 serializer.save()
                 log(
                     user=User.objects.get(id=id),
                     action="Added FAQ",
                 )
                 return Response(serializer.data,
                                 status=status.HTTP_201_CREATED)
             else:
                 log(
                     user=User.objects.get(id=id),
                     action="Tried to add FAQ",
                 )
                 return Response(serializer.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), id)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "unauthorized"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 5
0
 def post(self, request):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             id = get_user_ID(request)
             serializer = TeamSerializer(data=request.data)
             if serializer.is_valid():
                 serializer.save()
             else:
                 log(
                     user=User.objects.get(id=id),
                     action="Tried to add a team",
                 )
                 return Response(serializer.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
             teams = Team.objects.last()
             #achievement = {}  #name of the obj (JSON)-----DICTIONARY
             achievement = request.data[
                 "achievement"]  #field inside the dic , put data inside it key=value
             for single_achievement in achievement:
                 single_achievement = AchievementSerializer(
                     data=single_achievement)
                 if single_achievement.is_valid():
                     single_achievement.save()
                     teams.achievement.add(Achievement.objects.last())
                 else:
                     return Response(single_achievement.errors,
                                     status=status.HTTP_400_BAD_REQUEST)
             image = request.data["image"]
             for single_image in image:
                 single_image = ImageSerializer(data=single_image)
                 if single_image.is_valid():
                     single_image.save()
                     teams.image.add(Image.objects.last())
                 else:
                     return Response(single_image.errors,
                                     status=status.HTTP_400_BAD_REQUEST)
             log(
                 user=User.objects.get(id=id),
                 action="Added a team",
             )
             return Response(serializer.data,
                             status=status.HTTP_201_CREATED)
         except Exception as ex:
             log_errors(str(ex), id)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "Token Invalid"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 6
0
 def get(self, request):
     if TokenVerify(request):
         try:
             id = get_user_ID(request)
             groups = Group.objects.all()
             serializer = GroupSerializer(groups, many=True)
             return Response(serializer.data,
                             status=status.HTTP_201_CREATED)
         except Exception as ex:
             log_errors(str(ex), id)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "unauthorized"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 7
0
    def put(self, request, id):
        if TokenVerify(request) and BackEndPermissionVerifier(request):
            try:
                I = get_user_ID(request)
                image = {}
                news = NewsFeed.objects.get(id=id)
                image["image"] = request.data["image"]
                if (image["image"] != ""):
                    image = ImageSerializer(data=image)
                    if image.is_valid():
                        image.save()
                        news.image.add(Image.objects.last().id)
                    else:
                        return Response(image.errors,
                                        status=status.HTTP_400_BAD_REQUEST)
                else:
                    request.data.pop('image', None)

                serializer = NewsFeedSerializer(news, data=request.data)
                if serializer.is_valid():
                    serializer.save()
                    log(
                        user=User.objects.get(id=I),
                        action="Updated a newsfeed",
                    )
                    return Response(serializer.data,
                                    status=status.HTTP_201_CREATED)
                else:
                    log(
                        user=User.objects.get(id=I),
                        action="Tried to update newfeed",
                    )
                    return Response(serializer.errors,
                                    status=status.HTTP_400_BAD_REQUEST)
            except ObjectDoesNotExist:
                return Response({"msg": "This news doesn't exist"},
                                status=status.HTTP_400_BAD_REQUEST)
            except Exception as ex:
                log_errors(str(ex), I)
                return Response({"msg": "An error has happened! "},
                                status=status.HTTP_500_INTERNAL_SERVER_ERROR)
        else:
            return Response({"msg": "unauthorized"},
                            status=status.HTTP_400_BAD_REQUEST)
Esempio n. 8
0
 def delete(self, request, id):
     if TokenVerify(request):
         try:
             I = get_user_ID(request)
             FAQ.objects.get(id=id).delete()
             log(
                 user=User.objects.get(id=I),
                 action="Deleted a FAQ",
             )
             return Response({"msg": "Deleted successfully"},
                             status=status.HTTP_200_OK)
         except ObjectDoesNotExist:
             return Response({"msg": "This FAQ doesn't exist"},
                             status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), I)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "unauthorized"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 9
0
 def delete(self, request, id):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             I = get_user_ID(request)
             Event.objects.get(id=id).delete()
             log(
                 user=User.objects.get(id=I),
                 action="Deleted an event",
             )
             return Response({"msg": "Deleted successfully"},
                             status=status.HTTP_200_OK)
         except ObjectDoesNotExist:
             return Response({"msg": "This event doesn't exist"},
                             status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), I)
             return Response({"msg": "An error has happened! "},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "Token Invalid"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 10
0
 def post(self, request):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         #to be able to send images , we must first check if image is valid , then save that image , and we will then obtain it from the
         #image table
         try:
             id = get_user_ID(request)
             image = {}
             image["image"] = request.data["image"]
             image = ImageSerializer(data=image)
             if image.is_valid():
                 image.save()
             else:
                 return Response(image.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
             serializer = EventSerializer(data=request.data)
             if serializer.is_valid():
                 serializer.validated_data["image"] = [
                     Image.objects.last().id
                 ]
                 serializer.save()
                 log(
                     user=User.objects.get(id=id),
                     action="Added an event",
                 )
                 return Response(serializer.data,
                                 status=status.HTTP_201_CREATED)
             else:
                 log(
                     user=User.objects.get(id=id),
                     action="Tried to add an event",
                 )
                 return Response(serializer.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), id)
             return Response({"msg": "An error has happened!"},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         return Response({"msg": "Token Invalid"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 11
0
 def post(self, request):
     if TokenVerify(request) and BackEndPermissionVerifier(request):
         try:
             id = get_user_ID(request)
             image = {}
             image["image"] = request.data["image"]
             image = ImageSerializer(data=image)
             if image.is_valid():
                 image.save()
             else:
                 return Response(image.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
             serializer = HighlightSerializer(data=request.data)
             if serializer.is_valid():
                 serializer.validated_data["image"] = [
                     Image.objects.last().id
                 ]
                 serializer.save()
                 log(
                     user=User.objects.get(id=id),
                     action="Added a highlight",
                 )
                 return Response(serializer.data,
                                 status=status.HTTP_201_CREATED)
             else:
                 log(
                     user=User.objects.get(id=id),
                     action="Tried to add a highlight",
                 )
                 return Response(serializer.errors,
                                 status=status.HTTP_400_BAD_REQUEST)
         except Exception as ex:
             log_errors(str(ex), id)
             return Response({"msg": "Error"},
                             status=status.HTTP_500_INTERNAL_SERVER_ERROR)
     else:
         # return Response({"Token Validation": "False"}, status=status.HTTP_400_BAD_REQUEST)
         return Response({"msg": "Token Invalid"},
                         status=status.HTTP_400_BAD_REQUEST)
Esempio n. 12
0
    def get(self, request):
        if TokenVerify(request) and BackEndPermissionVerifier(request):
            try:
                I = get_user_ID(request)
                profiles = Profile.objects.all()
                user_list = []
                for i in profiles:
                    user_dictionary = {}  #key + value
                    user_dictionary["id"] = i.user.id
                    user_dictionary["email"] = i.user.email
                    user_dictionary["name"] = i.name
                    user_dictionary["phone"] = i.mobile
                    user_dictionary["college_id"] = i.college_id
                    user_dictionary["group"] = i.user.groups.all().first().name
                    user_list.append(user_dictionary)
                return Response(user_list)
            except Exception as ex:
                log_errors(str(ex), I)
                return Response({"msg": "An error has happened! "},
                                status=status.HTTP_500_INTERNAL_SERVER_ERROR)

        else:
            return Response({"msg": "unauthorized"},
                            status=status.HTTP_400_BAD_REQUEST)
Esempio n. 13
0
    def put(self, request, pk):
        if TokenVerify(request) and BackEndPermissionVerifier(request):
            try:
                I = get_user_ID(request)
                teams = Team.objects.get(id=pk)
                achievements = request.data["achievement"]
                for single_achievement in achievements:
                    if (Achievement.objects.filter(
                            id=single_achievement["id"]).exists()):
                        ach = Achievement.objects.get(
                            id=single_achievement["id"])
                        if (single_achievement["image"] == ""):
                            single_achievement.pop('image', None)
                        single_achievement = AchievementSerializer(
                            ach, data=single_achievement)
                        if single_achievement.is_valid():
                            single_achievement.save()
                        else:
                            return Response(single_achievement.errors,
                                            status=status.HTTP_400_BAD_REQUEST)
                    else:
                        single_achievement = AchievementSerializer(
                            data=single_achievement)
                        if single_achievement.is_valid():
                            single_achievement.save()
                            teams.achievement.add(Achievement.objects.last())
                        else:
                            return Response(single_achievement.errors,
                                            status=status.HTTP_400_BAD_REQUEST)

                images = request.data["image"]
                for i in teams.image.all():
                    teams.image.remove(i)
                    i.delete()
                for single_image in images:
                    single_image = ImageSerializer(data=single_image)
                    if single_image.is_valid():
                        single_image.save()
                        teams.image.add(Image.objects.last())
                    else:
                        return Response(single_image.errors,
                                        status=status.HTTP_400_BAD_REQUEST)

                serializer = TeamSerializer(teams, data=request.data)
                if serializer.is_valid():
                    serializer.save()
                    log(
                        user=User.objects.get(id=I),
                        action="Updated a team",
                    )
                    return Response(serializer.data,
                                    status=status.HTTP_201_CREATED)
                else:
                    log(
                        user=User.objects.get(id=I),
                        action="Tried to update a team",
                    )
                    return Response(serializer.errors,
                                    status=status.HTTP_400_BAD_REQUEST)
            except ObjectDoesNotExist:
                return Response({"msg": "This team doesn't exist"},
                                status=status.HTTP_400_BAD_REQUEST)
            except Exception as ex:
                log_errors(str(ex), 1)
                return Response({"msg": "An error has happened! "},
                                status=status.HTTP_500_INTERNAL_SERVER_ERROR)
        else:
            return Response({"msg": "Token Invalid"},
                            status=status.HTTP_400_BAD_REQUEST)