Esempio n. 1
0
def ajax_additional_info_club_card_load_clubs(request, offer_id):
    """Используется при вводе доп. информации к абонементу для подгрузки клубов в зависимости от номера карты"""
    if request.method == 'POST' and request.is_ajax():
        result = {}
        offer = get_object_or_404(Offers, pk=offer_id)
        card_number = request.POST.get('card_number')
        if not card_number:
            result['success'] = False
            result['message'] = 'Вы не ввели номер карты или договора'
        else:
            clubs = get_clubs_by_card_number(card_number)
            if not clubs:
                result['success'] = False
                result['message'] = 'Номер карты не опознан. Проверьте правильность ввода'
            else:
                appliable_clubs = []
                for club in clubs:
                    if club in offer.addresses.all():
                        appliable_clubs.append(club)
                if len(appliable_clubs):
                    result['success'] = True
                    result['clubs'] = []
                    for club in appliable_clubs:
                        result['clubs'].append([club.pk, club.title])
                else:
                    result['success'] = False
                    result['message'] = 'К сожалению, эта акция не распространяется на ваш клуб'
        return HttpResponse(simplejson.dumps(result))
    else:
        return redirect('home')
Esempio n. 2
0
 def clean_card_number(self):
     card_number = self.cleaned_data.get('card_number')
     clubs = get_clubs_by_card_number(card_number)
     if clubs:
         common_clubs = []
         for club in clubs:
             if club in self.auction.addresses.all():
                 common_clubs.append(club)
         if not len(common_clubs):
             raise forms.ValidationError('Данная акция не распространяется на ваш клуб.')
     else:
         raise forms.ValidationError('Данная акция не распространяется на ваш клуб.')
     return card_number