def createCard(request): if request.user.is_authenticated(): if request.method == 'POST': try: formDict = json.loads(request.body, encoding='latin1') except ValueError as e: print e return HttpResponse(status=500) try: values = parseCreateCardFormData(formDict) card = Card(name=values[0], value=values[1], cardIcon=values[2]) card.save() cardUser = CardUser(user=request.user, card=card, expiry_date=values[3]) cardUser.save() except Exception as e: print e return HttpResponse(status=500) return HttpResponse(card.id) else: return HttpResponse(status=400) return HttpResponse(status=401)
def shareCard(request, card_id): if request.user.is_authenticated(): if request.method == 'POST': try: cards = Card.objects.filter(users__id=request.user.id) cardToShare = cards.filter(pk=card_id) except Exception as e: print e return HttpResponse(status=500) if cardToShare.exists(): dicts = json.loads(request.body) name = dicts['username'] exp_date = dicts['exp_date'] # user does not exist, cannot share with non existing user try: userToShareKey = User.objects.get(username=name) except Exception as e: return HttpResponse(status=404) # user is self, cannot share with yourself if request.user.username == name: return HttpResponse(status=403) existingCardUser = Card.objects.filter( users__id=userToShareKey.pk, pk=card_id) # user already has this card if existingCardUser.exists(): return HttpResponse(status=403) # share the card for card in cardToShare: cardUserObjects = card.carduser_set.all() for cardUserObject in cardUserObjects: role = cardUserObject.role if role == 0: try: cardUser = CardUser(user=userToShareKey, card=card, expiry_date=exp_date, role=1) cardUser.save() except Exception as e: print e return HttpResponse(status=500) else: continue return HttpResponse(status=200) return HttpResponse(status=400) else: return HttpResponse(status=401)
def shareCard(request, card_id): if request.user.is_authenticated(): if request.method == 'POST': try: cards = Card.objects.filter(users__id = request.user.id) cardToShare = cards.filter(pk = card_id) except Exception as e: print e return HttpResponse(status=500) if cardToShare.exists(): dicts = json.loads(request.body) name = dicts['username'] exp_date = dicts['exp_date'] # user does not exist, cannot share with non existing user try: userToShareKey = User.objects.get(username = name) except Exception as e: return HttpResponse(status=404) # user is self, cannot share with yourself if request.user.username == name: return HttpResponse(status=403) existingCardUser = Card.objects.filter(users__id = userToShareKey.pk, pk = card_id) # user already has this card if existingCardUser.exists(): return HttpResponse(status=403) # share the card for card in cardToShare: cardUserObjects = card.carduser_set.all() for cardUserObject in cardUserObjects: role = cardUserObject.role if role == 0: try: cardUser = CardUser(user = userToShareKey, card = card, expiry_date = exp_date, role=1) cardUser.save() except Exception as e: print e return HttpResponse(status=500) else: continue return HttpResponse(status=200) return HttpResponse(status=400) else: return HttpResponse(status=401)
def createCard(request): if request.user.is_authenticated(): if request.method == 'POST': try: formDict = json.loads(request.body, encoding = 'latin1') except ValueError as e: print e return HttpResponse(status=500) try: values = parseCreateCardFormData(formDict) card = Card(name = values[0], value = values[1], cardIcon = values[2]) card.save() cardUser = CardUser(user = request.user, card = card, expiry_date = values[3]) cardUser.save() except Exception as e: print e return HttpResponse(status=500) return HttpResponse(card.id) else: return HttpResponse(status=400) return HttpResponse(status=401)