Example #1
0
    def perform_create(self, serializer):
        clanResponse = clans.get_clan_by_tag(
            urllib.quote_plus(serializer.validated_data.get('clan_tag')))

        if clanResponse.status_code == 404:
            raise CouldntRetrieveClan(detail="No Results for your clan tag")

        clanJson = clanResponse.json()

        serializer.validated_data['name'] = clanJson.get('name')
        serializer.validated_data['clan_tag'] = clanJson.get("tag")[1:]

        clan = serializer.save()

        members = clanJson.get('memberList')
        if members != None and len(members) > 0:
            for clan_member in members:
                mem = Member.objects.filter(game_name=clan_member.get('name'),
                                            clan_tag=clan)
                if len(mem) == 0:
                    m = Member(game_name=clan_member.get('name'),
                               clan_tag=clan)
                    m.save()

        return clan
Example #2
0
    def perform_create(self, serializer):
        clanResponse = clans.get_clan_by_tag(urllib.quote_plus(serializer.validated_data.get('clan_tag')))
        enemyClanResponse = clans.get_clan_by_tag(urllib.quote_plus(serializer.validated_data.get('enemy_clan_tag')))

        if clanResponse.status_code == 404:
            raise CouldntRetrieveClan(detail="No Results for your clan tag")

        if enemyClanResponse.status_code == 404:
            raise CouldntRetrieveClan(detail="No Results for enemy clan tag")

        clan = clanResponse.json()
        enemyClan = enemyClanResponse.json()

        myClanTag = serializer.validated_data.get('clan_tag')[1:]
        enemyClanTag = serializer.validated_data.get('enemy_clan_tag')[1:]

        myClan = Clan.objects.filter(clan_tag=myClanTag)
        if len(myClan) == 1:
            myClan = myClan[0];
        elif len(myClan) > 1:
            raise CouldntRetrieveClan(detail="Not a unique clan tag")
        else:
            myClan = Clan(name=clan.get('name'), clan_tag=clan.get("tag")[1:])
            myClan.save()

        serializer.validated_data['title'] = "{0} Vs {1}".format(clan.get('name'), enemyClan.get('name'))
        serializer.validated_data['clan_id'] = myClan.clan_tag
        members = clan.get('memberList')
        if members != None:
            for clan_member in members:
                mem = Member.objects.filter(game_name=clan_member.get('name'), clan_tag=myClan)
                if len(mem) == 0:
                    m = Member(game_name=clan_member.get('name'), clan_tag=myClan)
                    m.save()

        print serializer.validated_data.get('clan_tag')
        print serializer.validated_data.get('clan_id')
        war = serializer.save()

        enemyMembers = enemyClan.get('memberList')
        if enemyMembers != None:
            for clan_member in enemyMembers:
                m = Base(war=war, name = clan_member.get('name'))
                m.save()
        return war
Example #3
0
    def perform_create(self, serializer):
    	clanResponse = clans.get_clan_by_tag(urllib.quote_plus(serializer.validated_data.get('clan_tag')))

    	if clanResponse.status_code == 404:
    		raise CouldntRetrieveClan(detail="No Results for your clan tag")

    	clanJson = clanResponse.json()

    	serializer.validated_data['name'] = clanJson.get('name')
    	serializer.validated_data['clan_tag'] = clanJson.get("tag")[1:]

    	clan = serializer.save()

    	members = clanJson.get('memberList')
        if members != None and len(members) > 0:
            for clan_member in members:
                mem = Member.objects.filter(game_name=clan_member.get('name'), clan_tag=clan)
                if len(mem) == 0:
                    m = Member(game_name=clan_member.get('name'), clan_tag=clan)
                    m.save()
    	
    	return clan