Esempio n. 1
0
def edit(request,
         success_url=None,
         authentication_key=None,
         template_name='events/edit/edit_event.html'):
    try:
        event = Event.events.get(authentication_key__exact=authentication_key)
    except ObjectDoesNotExist:
        return HttpResponseRedirect(reverse('event_create'))

    account = Account.objects.get(user_id=event.owner_id)

    if request.method == 'POST':
        form = EditEventForm(account=account,
                             instance=event,
                             data=request.POST)
        if form.is_valid():
            try:
                event_service.save_event(account.user, request.POST, form)
                return HttpResponseRedirect(
                    reverse('event_view', kwargs={'slug': event.slug}))

            except:
                form._errors['__all__'] = ErrorList(
                    ["Unhandled exception. Please inform administrator."])
    else:
        form = EditEventForm(
            account=account,
            instance=event,
            initial=event_service.prepare_initial_event_data_for_edit(event))

    return render_to_response(template_name, {
        'form': form,
        'event': event
    },
                              context_instance=RequestContext(request))
Esempio n. 2
0
def edit(request, success_url=None, authentication_key=None, template_name='events/edit/edit_event.html'):
    try:
        event = Event.events.get(authentication_key__exact=authentication_key)
    except ObjectDoesNotExist:
        return HttpResponseRedirect(reverse('event_create'))

    account = Account.objects.get(user_id=event.owner_id)

    if request.method == 'POST':
        form = EditEventForm(account=account, instance=event, data=request.POST)
        if form.is_valid():
            try:
                event_service.save_event(account.user, request.POST, form)
                return HttpResponseRedirect(
                    reverse('event_view', kwargs={'slug': event.slug})
                )

            except:
                form._errors['__all__'] = ErrorList(["Unhandled exception. Please inform administrator."])
    else:
        form = EditEventForm(
            account=account,
            instance=event,
            initial=event_service.prepare_initial_event_data_for_edit(event)
        )

    return render_to_response(template_name, {
            'form': form,
            'event': event
        }, context_instance=RequestContext(request))
Esempio n. 3
0
def create_from_facebook(request):
    if request.method == 'POST':
        success = False
        form = CreateEventForm(account=request.account,
                               data=request.POST,
                               by_admin=request.user.is_staff)
        if form.is_valid():
            try:
                facebook_event_id = request.POST['facebook_event_id']
                event_service.save_event(request.user, request.POST, form)
                facebook_services.save_facebook_event(facebook_event_id)
                success = True
            except Exception:
                form._errors['__all__'] = ErrorList(
                    ["Unhandled exception. Please inform administrator."])
            info = ''
        else:
            info = form.errors

        return HttpResponse(json.dumps({
            'success': success,
            'info': info
        }),
                            mimetype='application/json')
    else:
        event_data = facebook_services.get_prepared_event_data(
            request, request.GET)
        form = CreateEventForm(account=request.account,
                               data=event_data,
                               by_admin=request.user.is_staff)
        return render_to_response('events/create/create_event_popup.html',
                                  {'form': form},
                                  context_instance=RequestContext(request))
Esempio n. 4
0
def copy(request, authentication_key, template_name='events/create/copy_event.html'):
    if request.method == 'POST':
        form = CreateEventForm(account=request.account, data=request.POST, by_admin=request.user.is_staff)
        if form.is_valid():
            event_obj = event_service.save_event(request.user, request.POST, form)
            event_service.send_event_details_email(event_obj)

            success_url = reverse('event_created', kwargs={ 'slug': event_obj.slug })

            return HttpResponseRedirect(success_url)
    else:
        basic_event = Event.events.get(authentication_key__exact=authentication_key)   

        event = Event(
            name=basic_event.name, 
            description=basic_event.description,
            price=basic_event.price,
            website=basic_event.website,
            tickets=basic_event.tickets,
            owner=basic_event.owner,
            venue_account_owner=basic_event.venue_account_owner
        )

        form = CreateEventForm(
            account=request.account, 
            instance=event, 
            initial=event_service.prepare_initial_event_data_for_copy(basic_event),
            by_admin=request.user.is_staff
        )

    return render_to_response(template_name, {
            'form': form,
            'posting': True
        }, context_instance=RequestContext(request))    
Esempio n. 5
0
def create(request, success_url=None, template_name='events/create/create_event.html'):
    if request.method == 'POST':
        form = CreateEventForm(account=request.account, data=request.POST)
        if form.is_valid():
            try:
                event = event_service.save_event(request.user, request.POST, form)

                event_service.send_event_details_email(event)

                if success_url is None:
                    success_url = reverse('event_created', kwargs={ 'slug': event.slug })

                return HttpResponseRedirect(success_url)

            except:
                form._errors['__all__'] = ErrorList(["Unhandled exception. Please inform administrator."])

    else:
        form = CreateEventForm(account=request.account, initial={
            "venue_account_owner": request.current_venue_account
        })


    context = RequestContext(request)
    return render_to_response(template_name, {
            'form': form,
            'posting': True,
            'location': request.user_location["user_location_lat_lon"],
        }, context_instance=context)
Esempio n. 6
0
def create_from_facebook(request):
    if request.method == 'POST':
        success = False
        form = CreateEventForm(account=request.account, data=request.POST, by_admin=request.user.is_staff)
        if form.is_valid():
            try:
                facebook_event_id = request.POST['facebook_event_id']
                event_service.save_event(request.user, request.POST, form)
                facebook_services.save_facebook_event(facebook_event_id)
                success = True
            except Exception:
                form._errors['__all__'] = ErrorList(["Unhandled exception. Please inform administrator."])
            info = ''
        else:
            info = form.errors

        return HttpResponse(
            json.dumps({'success': success, 'info': info}),
            mimetype='application/json')
    else:
        event_data = facebook_services.get_prepared_event_data(request, request.GET)
        form = CreateEventForm(account=request.account, data=event_data, by_admin=request.user.is_staff)
        return render_to_response('events/create/create_event_popup.html', {'form': form},
                                  context_instance=RequestContext(request))
Esempio n. 7
0
def create(request,
           success_url=None,
           template_name='events/create/create_event.html'):
    if request.method == 'POST':
        form = CreateEventForm(account=request.account,
                               data=request.POST,
                               by_admin=request.user.is_staff)
        if form.is_valid():
            try:
                event = event_service.save_event(request.user, request.POST,
                                                 form)
                event_service.send_event_details_email(event)
            except Exception:
                response = HttpResponseServerError()
                transaction.rollback()
                return response
            else:
                if success_url is None:
                    success_url = reverse('event_created',
                                          kwargs={'slug': event.slug})

                response = HttpResponseRedirect(success_url)
                transaction.commit()
                return response

            # except:
            #     form._errors['__all__'] = ErrorList(["Unhandled exception. Please inform administrator."])

    else:
        form = CreateEventForm(
            account=request.account,
            initial={"venue_account_owner": request.current_venue_account},
            by_admin=request.user.is_staff)

    context = RequestContext(request)
    response = render_to_response(
        template_name, {
            'form': form,
            'posting': True,
            'location': request.user_location["user_location_lat_lon"],
        },
        context_instance=context)

    transaction.commit()  # unavoidable action
    return response
Esempio n. 8
0
def copy(request,
         authentication_key,
         template_name='events/create/copy_event.html'):
    if request.method == 'POST':
        form = CreateEventForm(account=request.account,
                               data=request.POST,
                               by_admin=request.user.is_staff)
        if form.is_valid():
            event_obj = event_service.save_event(request.user, request.POST,
                                                 form)
            event_service.send_event_details_email(event_obj)

            success_url = reverse('event_created',
                                  kwargs={'slug': event_obj.slug})

            return HttpResponseRedirect(success_url)
    else:
        basic_event = Event.events.get(
            authentication_key__exact=authentication_key)

        event = Event(name=basic_event.name,
                      description=basic_event.description,
                      price=basic_event.price,
                      website=basic_event.website,
                      tickets=basic_event.tickets,
                      owner=basic_event.owner,
                      venue_account_owner=basic_event.venue_account_owner)

        form = CreateEventForm(
            account=request.account,
            instance=event,
            initial=event_service.prepare_initial_event_data_for_copy(
                basic_event),
            by_admin=request.user.is_staff)

    return render_to_response(template_name, {
        'form': form,
        'posting': True
    },
                              context_instance=RequestContext(request))