Ejemplo n.º 1
0
 def test_create_announcement_from_past_date_auto_publish(self):
     draft_announcement = baker.make(
         Announcement,
         datetime_released=timezone.now() - timedelta(days=3),
         auto_publish=True,
     )
     form = AnnouncementForm(data=model_to_dict(draft_announcement))
     self.assertFalse(form.is_valid())
Ejemplo n.º 2
0
def new_announcement(request):
	form = AnnouncementForm(request.POST)

	if not form.is_valid():
		return JSONResponse({'success': False, 'errors': form.errors})

	announcement = form.save(commit=False)
	announcement.owner_band = Band(id=request.POST.get('band_id'))
	announcement.save()

	print EquipamentType(id=5)
	announcement.instruments = [EquipamentType(id=i) for i in request.POST.getlist('instruments')]

	return JSONResponse({ "success": True })
Ejemplo n.º 3
0
def create_for_locale(request):
    """An ajax view to create a new announcement for the current locale."""
    user = request.user
    locale = Locale.objects.get(locale=request.LANGUAGE_CODE)

    if not user_can_announce(user, locale):
        return HttpResponseForbidden()

    form = AnnouncementForm(request.POST)

    if form.is_valid():
        a = Announcement(creator=user, locale=locale, **form.cleaned_data)
        a.save()
        return HttpResponse(json.dumps({'id': a.id}),
            content_type="application/json")
    else:
        return HttpResponse(json.dumps(form.errors), status=400,
            content_type="application/json")
Ejemplo n.º 4
0
	def put(self, request):

		try:
			body = request.body.decode('utf-8')
			body = json.loads(body)

		except json.decoder.JSONDecodeError as ex:
			return JsonResponse({ 'error': str(ex) }, status=400)

		form = AnnouncementForm(body)

		if not form.is_valid():
			return JsonResponse(dict(form.errors.items()), status=422)

		Announcement.objects.create(**{
			'content': form.cleaned_data['content'],
		})

		return JsonResponse({})
Ejemplo n.º 5
0
def create_for_locale(request):
    """An ajax view to create a new announcement for the current locale."""
    user = request.user
    locale = Locale.objects.get(locale=request.LANGUAGE_CODE)

    if not user_can_announce(user, locale):
        return HttpResponseForbidden()

    form = AnnouncementForm(request.POST)

    if form.is_valid():
        a = Announcement(creator=user, locale=locale, **form.cleaned_data)
        a.save()
        return HttpResponse(json.dumps({'id': a.id}),
                            content_type="application/json")
    else:
        return HttpResponse(json.dumps(form.errors),
                            status=400,
                            content_type="application/json")