Example #1
0
def edit_event(id):
    event = Event.query.filter(Event.id==id).first_or_404()
    user = event.user.first()

    if user.id == current_user.id:

        if request.method == 'POST':
            form = EventForm(formdata=request.form, obj=event)
        
            date_begin = request.form.get('date_begin')
            date_end = request.form.get('date_end')
            theme = request.form.get('theme')
            description = request.form.get('description')
            event.date_begin = date_begin
            event.date_end = date_end
            event.theme = theme
            event.description = description

            db.session.commit()
            return redirect(url_for('event_detail', id=event.id))
        
        form = EventForm(obj=event)
        return render_template('edit_event.html', form=form, event=event)

    events = Event.query.all()
    flash('Please login another user.')
    return render_template('index.html', events=events)
Example #2
0
def event_edit(request, event_id, response_format='html'):
    "Event edit"

    event = get_object_or_404(Event, pk=event_id)
    if not request.user.profile.has_permission(event, mode='w'):
        return user_denied(request,
                           message="You don't have access to this Event")

    if request.POST:
        if 'cancel' not in request.POST:
            form = EventForm(request.user.profile,
                             None,
                             None,
                             request.POST,
                             instance=event)
            if form.is_valid():
                event = form.save()
                return HttpResponseRedirect(
                    reverse('events_event_view', args=[event.id]))
        else:
            return HttpResponseRedirect(reverse('events'))
    else:
        form = EventForm(request.user.profile, instance=event)

    return render_to_response('events/event_edit', {
        'event': event,
        'form': form
    },
                              context_instance=RequestContext(request),
                              response_format=response_format)
Example #3
0
def today(request):
    form = EventForm()
    today = get_begining(datetime.datetime.now())
    events = Event.objects.filter(author=request.user).filter(
        timestamp__gt=today)
    context = {
        'form': form,
        'events': events,
    }
    if request.method == 'POST':
        form = EventForm(request.POST)
        if form.is_valid():
            event = form.save(commit=False)
            event.author = request.user
            try:
                event.save()
                context['msgs'] = [
                    'Event added successfully.',
                ]
            except:
                context['msgs'] = [
                    'Some error occured. Please enter \
                        valid data.',
                ]
                context['form'] = form
        else:
            context['msgs'] = [
                'Error: You must enter a title.',
            ]
            context['form'] = form
    return render_to_response('diary/today.html',
                              RequestContext(request, context))
Example #4
0
def edit_event(request, event_name):
    try:
        event = Event.objects.get(name=event_name)
    except Event.DoesNotExist:
        raise Http404('Event does not exist')
    if request.method == 'POST':
        form = EventForm(request.POST, instance=event)
        if (form.is_valid()):
            e = form.save(commit=False)
            events = Event.objects.filter(name=e.name)
            # To allow editing the same event and keeping its short name.
            alreadyExists = False
            for ev in events:
                if ev != event:
                    alreadyExists = True
                    break
            if not alreadyExists:
                e.save()
                return redirect('feedback:index', e.name)
            messages.add_message(request, messages.WARNING,
                                 'Event with that short name already exists.')
    else:
        form = EventForm(instance=event)
    context = {
        'form': form,
        'event_name': event_name,
    }
    return render(request, 'feedback/edit_event.html', context)
Example #5
0
def create_event(request, library_code, managed_libraries=[]):
    library = org_utils.get_library(library_code, managed_libraries)
    if not library:
        return HttpResponseForbidden(
            u'Вы должны быть сотрудником этой организации')

    if request.method == 'POST':
        event_form = EventForm(request.POST,
                               request.FILES,
                               prefix='event_form')

        event_content_forms = []
        for lang in settings.LANGUAGES:
            event_content_forms.append({
                'form':
                EventContentForm(request.POST,
                                 prefix='event_content' + lang[0]),
                'lang':
                lang[0]
            })
        if event_form.is_valid():
            valid = False
            for event_content_form in event_content_forms:
                valid = event_content_form['form'].is_valid()
                if not valid:
                    break

            if valid:
                event = event_form.save(commit=False)
                event.library = library
                event.save()
                for event_content_form in event_content_forms:
                    event_content = event_content_form['form'].save(
                        commit=False)
                    event_content.lang = event_content_form['lang']
                    event_content.event = event
                    event_content.save()
                event_form.save_m2m()
                return redirect(
                    'participant_events:administration:events_list',
                    library_code=library_code)
    else:
        event_form = EventForm(prefix="event_form")
        event_content_forms = []
        for lang in settings.LANGUAGES:
            event_content_forms.append({
                'form':
                EventContentForm(prefix='event_content' + lang[0]),
                'lang':
                lang[0]
            })

    return render(
        request, 'participant_events/administration/create_event.html', {
            'library': library,
            'event_form': event_form,
            'event_content_forms': event_content_forms,
        })
Example #6
0
def add_event(request):
    if request.POST:
        form = EventForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'Task added!')
            return HttpResponseRedirect('/events/')
    else:
        form = EventForm()

    return render(request, 'add.html', locals())
def add_event(request):
    if request.method == 'POST':
        form = EventForm(request.POST)
        if form.is_valid():
            event = form.save(commit=False)
            event.user = request.user
            event.save()

            return view_event(request, event.id)
    else:
        form = EventForm()
    return render(request, 'add_event.html', {'form': form})
Example #8
0
def create_event(request):
    if request.method == 'POST':
        form = EventForm(request.POST)
        # check whether it's valid:
        if form.is_valid():
            f = form.cleaned_data
            event = Event(name=f['name'])
            event.save()
            return HttpResponse("Creado")
    else:
        event_form = EventForm()
        return render(request, 'core/create-event.html',
                      {'event_form': event_form})
Example #9
0
def handle_event(request):
    if request.method == 'POST':
        form = EventForm(request.POST)
        if form.is_valid():
            request.session['arkistoija']['event'] = {
                'name': form.cleaned_data['name'],
                'date': form.cleaned_data['date'],
            }
            request.session.modified = True
            return HttpResponseRedirect('/arkistoija/p/2/')
    else:
        form = EventForm()

    return {'eventform': form}
Example #10
0
def create_event(request):

    if request.method == 'POST':
        event_form = EventForm(request.POST, prefix='event_form')

        event_content_forms = []
        for lang in settings.LANGUAGES:
            event_content_forms.append({
                'form':
                EventContentForm(request.POST,
                                 prefix='event_content' + lang[0]),
                'lang':
                lang[0]
            })

        if event_form.is_valid():

            valid = False
            for event_content_form in event_content_forms:
                valid = event_content_form['form'].is_valid()
                if not valid:
                    break

            if valid:
                event = event_form.save(commit=False)
                event.save()
                for event_content_form in event_content_forms:
                    event_content = event_content_form['form'].save(
                        commit=False)
                    event_content.lang = event_content_form['lang']
                    event_content.event = event
                    event_content.save()
                return redirect('events:administration:events_list')
    else:
        event_form = EventForm(prefix="event_form")
        event_content_forms = []
        for lang in settings.LANGUAGES:
            event_content_forms.append({
                'form':
                EventContentForm(prefix='event_content' + lang[0]),
                'lang':
                lang[0]
            })

    return render(request, 'events/administration/create_event.html', {
        'event_form': event_form,
        'event_content_forms': event_content_forms,
    })
Example #11
0
def add():
    if get_cookie('event_app'):
        username = get_cookie('event_app').split('=')[1]
        if username_legit(username):
            form = EventForm()
            if request.method == 'POST':
                if form.validate_on_submit():
                    new_data = form.data
                    new_data['start'] = str(new_data['start'])
                    new_data['end'] = str(new_data['end'])
                    del new_data['csrf_token']
                    del new_data['submit']
                    f = File('events')
                    data = f.read()
                    data.append(new_data)
                    data = json.dumps(data)
                    f.write(data)
                    return data
                else:
                    return 'FORM FAILED'
            else:
                return flask.render_template('add.html',
                                             form=form,
                                             user=username)
    else:
        return flask_redirect('/login')
Example #12
0
def create():
    logging.info("create start")
    form = EventForm()

    if request.method == 'POST':
        logging.info("Method: POST")
        if True or form.validate_on_submit():
            event = Event(
                title=form.title.data,
                title_cal=form.title_cal.data,
                content=form.content.data,
                host=form.host.data,
                category_char=form.category_char.data,
                category_host=form.category_host.data,
                date_start=form.date_start.data,
                date_end=form.date_end.data,
                location=form.location.data,
                link=form.link.data,
                poster=form.poster.data,
                contact=form.contact.data,
                contact_open=form.contact_open.data,
            )
            print event
            logging.info("")

            db.session.add(event)
            db.session.commit()

            print "11111111"
            logging.info("")

            flash(u'이벤트를 등록했습니다.', 'success')

    return redirect(url_for('index'))
Example #13
0
def edit_event(id):
    """
    Edit an Event
    """
    check_admin()

    add_event = False

    event = Event.query.get_or_404(id)
    form = EventForm(obj=event)
    if form.validate_on_submit():
        event.fullnames = form.fullname.data
        event.mobilenumber = form.mobileno.data
        event.nationalid = form.nationalid.data
        event.deptamount = form.deptamount.data
        event.description = form.description.data
        db.session.commit()
        flash('You have successfully edited an event.')

        # redirect to the events page
        return redirect(url_for('admin.list_events'))

    form.fullname.data = event.fullnames
    form.mobileno.data = event.mobilenumber
    form.nationalid.data = event.nationalid
    form.deptamount.data = event.deptamount
    form.description.data = event.description
    return render_template('admin/events/addeditevent.html',
                           action="Edit",
                           add_event=add_event,
                           form=form,
                           event=event,
                           title="Edit Event")
Example #14
0
def add_event_page():
    """
    the admin interface for adding event
    """
    if not current_user.is_authenticated:
        return redirect(url_for('admin_login'))
    if not current_user.is_admin:
        return redirect(url_for('admin_login'))
    form = EventForm()
    if form.validate_on_submit():
        header = form.data["header"]
        content = form.data["content"]
        date = form.data["date"]
        if 'image' in request.files:
            image = request.files['image'].read()
            binary_image = dbapi2.Binary(image)
        else:
            binary_image = ""
        event = Event(header=header,
                      content=content,
                      date=date,
                      image=binary_image)
        db = current_app.config["db"]
        db.add_event(event, current_user.id)
        flash('event added to the database')
        return redirect(url_for("admin_page"))
    return render_template("event_add.html", form=form)
def edit_event(request, event_id):
    event = Event.objects.get(id=event_id)
    form = EventForm(request.POST or None, instance=event)
    if form.is_valid():
        form.save()
        return view_event(request, event_id)
    return render(request, 'edit_event.html', {'form': form})
Example #16
0
def edit_event(event_id):
    event = Event.query.get(event_id)
    if not event:
        # TODO: 404
        pass

    form = EventForm()
    populate_select_boxes(form)

    if request.method == 'GET':
        form.populate(event)
        set_select_box_defaults(event, form)
        form.process()
        form.populate(event)

    if request.method == 'POST':
        if form.validate_on_submit():
            update_event_details(event, form)

            folder = 'e' + str(event.id)
            save_picture(form.image_file.data, folder)
            event.update()

            flash(f'{form.eventTitle.data} has been updated!', 'success')
            return redirect(url_for('upcoming_events'))
        else:
            flash(f'Event failed to update! Check form for errors.', 'danger')

    return render_template('edit_event.html', title='Edit Event',
                           form=form, event=event)
Example #17
0
def post_event():
    form = EventForm()
    if 'email' not in session:
        flash("You need to login to post Events")
        return redirect(url_for('signin'))
    user = User.query.filter_by(email=session['email']).first()

    if user is None:
        return redirect(url_for())

    if request.method == 'POST':
        if form.validate() == False:
            flash("Fill all the fields")
            return render_template('post_events.html', form=form)
        else:

            newevent = Event(form.name.data, form.location.data,
                             form.date.data, form.description.data)
            db.session.add(newevent)
            flash("Event successfully posted")
            db.session.commit()

            return redirect(url_for('index'))
    elif request.method == 'GET':
        return render_template('post_events.html', form=form)
Example #18
0
def event_create():
    form = EventForm()

    if request.method == 'POST':
        if form.validate_on_submit():
            event = Event(
                title=form.title.data,
                title_cal=form.title_cal.data,
                content=form.content.data,
                host=form.host.data,
                category_char=form.category_char.data,
                category_host=form.category_host.data,
                date_start=form.date_start.data,
                date_end=form.date_end.data,
                location=form.location.data,
                link=form.link.data,
                poster=form.poster.data,
                contact=form.contact.data,
                contact_open=form.contact_open.data,
            )

            db.session.add(event)
            db.session.commit()

            flash(u'이벤트를 등록했습니다.', 'success')
            return redirect(url_for('event_list'))

    return render_template('event/create.html', form=form)
Example #19
0
def edit_event(id):
    """
    Edit an event
    """
    check_admin()

    add_event = False

    event = Event.query.get_or_404(id)
    form = EventForm(obj=event)
    if form.validate_on_submit():
        event.name = form.name.data
        event.timeD = form.timeD.data
        event.date = form.date.data
        event.location = form.location.data
        event.description = form.description.data
        event.menus = 'menus/'+form.menu.data
        db.session.commit()
        flash('You have successfully edited the event.')

        # redirect to the events page
        return redirect(url_for('admin.list_events'))

    form.description.data = event.description
    form.name.data = event.name
    form.timeD.data = event.timeD
    form.date.data = event.date
    form.location.data = event.location
    menu = re.sub('menus/', '', event.menus)
    form.menu.data= menu
    return render_template('admin/events/event.html', action="Edit",
                           add_event=add_event, form=form,
                           event=event, title="Edit Event")
Example #20
0
def create_event(user_id):
    """Used by users to create job posts"""
    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")
    if g.user and session[CURR_USER_KEY] == user_id:
        genres = Genre.query.all()
        genre_list = [(j.id, j.genre) for j in genres]
        regions = Region.query.all()
        # list of tuples for selectfield
        region_list = [(i.id, i.city) for i in regions]
        form = EventForm()
        #passing selectfield choice into the form
        form.region_id.choices = region_list
        form.genre_id.choices = genre_list
        if form.validate_on_submit():
            event = EventPost(title=form.title.data,
                              description=form.description.data,
                              address=form.address.data,
                              date=form.date.data,
                              region_id=form.region_id.data,
                              user_id=user_id,
                              genre_id=form.genre_id.data)

            db.session.add(event)
            db.session.commit()
            return redirect(f"/users/{user_id}")
        return render_template("events/event-form.html", form=form)
    else:
        flash("Access unauthorized.", "danger")
        return redirect("/")
Example #21
0
def event():
    form = EventForm(request.form, csrf_enabled=True)
    # data=[{'name':'Conference'}, {'name':'Class, Training, or Workshop'}, {'name':'IT event'}]
    error = ""

    data = []
    dict = {}

    event_types = EventType.query.all()
    keys = ['name', 'name', 'name']
    for i in range(0, len(event_types)):
        dict['name'] = event_types[i].name
        data.append(dict.copy())

    if request.method == "POST":
        budget = validated(str(form.budget.data))
        if (budget < 0):
            error = "Please select a number between 0 and 10000 for your budget"
        elif budget == 0:
            error = "# Are you sure you want to organize an event with 0 money?"
        elif budget > 0:
            select = request.form.get('event_type_select')
            print "Select: " + str(select)
            # print "Request sent + form data:" + form.event_type.data
            # return redirect(url_for("/event_options", event_type=form.event_type.data))
            return redirect(url_for(
                "event_options",
                event_type=select,
            ))

    return render_template("event.html", form=form, data=data, error=error)
Example #22
0
def create_event(template_id):
    form = EventForm()
    populate_select_boxes(form)

    if request.method == 'GET':
        if not template_id:
            return redirect(url_for('create_event')+'/1')
        form.loadTemplates()
        template = EventTemplate.query.filter_by(id=template_id).first()
        set_select_box_defaults(template, form)
        form.process()
        form.populate(template)
        return render_template('create_event.html', title='Create Event',
                               form=form, event=template)

    if request.method == 'POST':
        if form.validate_on_submit():
            indicatorValue = request.form.get('ts_indicator', '')

            if indicatorValue == "save_template" or indicatorValue == "save_copy_template" :
                if indicatorValue == "save_template":
                    event_template = EventTemplate.query.get(template_id)
                elif indicatorValue == "save_copy_template":
                    event_template = EventTemplate()
                update_event_details(event_template, form)
                folder = 't' + str(event_template.id)
                save_picture(form.image_file.data, folder)
                event_template.update()

                flash(f"{event_template.title} [{event_template.host_name}]  saved!", 'success')

                form.loadTemplates()
                form.populate(event_template)
                return render_template('create_event.html', title='Create Event',
                                       form=form, event=event_template)

            elif indicatorValue == "delete_template":
                event_template = EventTemplate.query.get(template_id)
                t_name = f"{event_template.title} [{event_template.host_name}]" 
                db.session.delete(event_template)
                db.session.commit()
                flash(f"{t_name} has been deleted!", 'success')

                return redirect(url_for('create_event')+'/1')
            else:
                event = Event()
                update_event_details(event, form)
                db.session.add(event)
                db.session.commit()
                folder = 'e' + str(event.id)
                save_picture(form.image_file.data, folder)

                flash(f'Class created for {form.eventTitle.data}!', 'success')
                return redirect(url_for('upcoming_events'))
        else:
            flash(f'Event failed to post! Check form for errors.', 'danger')

    form.loadTemplates()
    return render_template('create_event.html', title='Create Event',
                           form=form)
Example #23
0
def add_event():
    """
    Add an event to the database
    """
    check_admin()

    add_event = True

    form = EventForm()
    if form.validate_on_submit():
        event = Event(
            fullnames=form.fullname.data,
            mobilenumber=form.mobileno.data,
            nationalid=form.nationalid.data,
            deptamount=form.deptamount.data,
            description=form.description.data,
        )
        try:
            # add event to the database
            db.session.add(event)
            db.session.commit()
            flash('You have successfully added a new event request.')
        except:
            # in case event name already exists
            flash('Error: event name already exists.')

        # redirect to events page
        return redirect(url_for('admin.list_events'))

    # load event template
    return render_template('admin/events/addeditevent.html',
                           action="Add",
                           add_event=add_event,
                           form=form,
                           title="Add Event")
Example #24
0
def scheduleCampaign():
    import db_helpers
    db = db_helpers.get_db()
    campaign_id = request.args.get('campaign_id')

    print("---", campaign_id)
    events = return_events(campaign_id)
    print("!!!",events)
    #overwrite events.json
    with open("events.json", "w") as jsonFile:
        json.dump(events, jsonFile)

    event_form = EventForm(request.form)

    if request.method == 'POST':
        q = 'insert into events values (null, "%s", "%s", "%s", "%s", "%s", "    %s")' % (
             getval(event_form['event_name']),
             getval(event_form['event_description']),
             getval(event_form['event_type']),
             getval(event_form['start_date']),
             getval(event_form['end_date']),
             campaign_id
             )
        query = db_helpers.query_db(q)
        db.commit()
        return render_template('scheduleCampaign.html', form=event_form, events=events, campaign_id=campaign_id)

    return render_template('scheduleCampaign.html', form=event_form, events=events, campaign_id=campaign_id)
Example #25
0
def event_options():
    form = EventForm(request.form, csrf_enabled=True)

    query_name = request.args['event_type']
    event_type_query = EventType.query.filter_by(name=query_name)

    event_type = event_type_query[0]

    options = []
    options.append(event_type.venues)
    options.append(event_type.caterers)
    options.append(event_type.stylist_decor)
    options.append(event_type.event_planner)
    options.append(event_type.entertainment)
    options.append(event_type.photographer)
    print "options:"
    print options

    options_name = [
        'venues', 'caterers', 'stylist_decor', 'event_planner',
        'entertainment', 'photographer'
    ]

    return render_template("event.html",
                           form=form,
                           event_name=event_type_query[0].name,
                           options=options,
                           options_name=options_name)
Example #26
0
    def get(self, request, *args, **kwargs):
        if 'event' in request.GET:
            event = Event.objects.get(pk = request.GET['event'])
            form = EventForm(instance = event )
            return self.render_to_response( {'form':form, 'event': event} )
        
        if 'chapter' in request.GET:
            chapter = Chapter.objects.get(pk = request.GET['chapter'])
            events = chapter.events()
            return self.render_to_response( {'events': events} )

        if 'month' in request.GET:
            first_day = datetime.today().replace(day = 1)
            month = request.GET['month']
            if month:
                month = int(month) + 1
                first_day = first_day.replace(month = month)
            
            if first_day.month == 12:
                last_day = first_day.replace ( day = 31 )
            else:
                last_day = first_day.replace (month = first_day.month + 1 ) - timedelta( days = 1 )
            
            dates = ( datetime.combine( first_day, time.min ),  datetime.combine( last_day, time.max ) )
            events = Event.objects.filter( date__range = dates ).order_by('date')
            return self.render_to_response( {'events': events, 'month':first_day.month} )
Example #27
0
def event():
    form = EventForm(request.form, csrf_enabled=True)
    print request.method
    if request.method == 'POST':
        print form.target_group_id.data
        target_group = form.target_group_id.data
        type_event = form.type_event_id.data
        category = form.category_id.data
        district = form.district_id.data
        print target_group, type_event, category, district

        print "method POST - save data to database"
        # print form.district_id.enco  de('utf8')
        form_tasks = Event(titlu=form.titlu.data,
                           start_date=form.start_date.data,
                           end_date=form.end_date.data,
                           organizers=form.organizers.data,
                           price=form.price.data,
                           photo=form.photo.data,
                           phone=form.phone.data,
                           content=form.content.data,
                           additional_info=form.additional_info.data,
                           location=unicode(form.location.data),
                           target_group_id=target_group.id,
                           type_event_id=type_event.id,
                           category_id=category.id,
                           district_id=district.id)
        # form.populate_obj(form_tasks)
        db.session.add(form_tasks)
        db.session.commit()
        return redirect("/")
    return render_template("event.html", form=form)
Example #28
0
def add_event():
    """
    Add a event to the database
    """
    check_admin()
    add_event = True
    form = EventForm()
    if form.validate_on_submit():
        event = Event(event_name=form.event_name.data,
                      event_description=form.event_description.data,
                      event_date=form.event_date.data)
        try:
            # Create an Attendance object for every student
            # and add them to event
            for student in Student.query.filter(
                    Student.forum == current_user.forum).all():
                attendance = Attendance(TF_comment="", is_attended=False)
                attendance.student = student
                event.attendance.append(attendance)

            db.session.add(event)
            db.session.commit()
            flash('You have successfully added a new event.')
        except:
            flash('Error: can not add event.')

        # redirect to events page
        return redirect(url_for('teaching_fellow.list_events'))

    # load student template
    return render_template('teaching_fellow/events/event.html',
                           action="Add",
                           add_event=add_event,
                           form=form,
                           title="Add Event")
Example #29
0
def editEvent(event_id):
    '''
    Edit an event, requires to be logged and checks if the user is the event
    owner in the html rendered file.
    event_id is the id of the category to be edited.
    Returns a redirect to show events after event edition in case of POST
    or the edit event html page in case of GET
    '''
    event = Event.query.filter_by(id=event_id).one()
    form = EventForm(request.form)
    form.category_id.choices = ([
        (c.id, c.name) for c in Category.query.order_by(Category.name)
    ])
    form.category_id.choices.insert(0, (0, 'select'))
    if request.method == 'POST' and form.validate():
        event.category_id = request.form['category_id']
        event.name = request.form['name']
        event.location = request.form['location']
        event.date = datetime.datetime.strptime(request.form['date'],
                                                '%d/%m/%Y').date()
        db.session.commit()
        flash("Event updated")
        return redirect(url_for('showEvents'))
    else:
        return render_template('edit_event.html', event=event, form=form)
Example #30
0
def edit_event(id):
    """
    Edit an event
    """
    check_admin()

    add_event = False

    event = Event.query.get_or_404(id)
    form = EventForm(obj=event)
    if form.validate_on_submit():
        event.event_name = form.event_name.data
        db.session.commit()
        flash('You have successfully edited the event.')

        # redirect to the events page
        return redirect(url_for('teaching_fellow.list_events'))

    form.event_name.data = event.event_name
    return render_template('teaching_fellow/events/event.html',
                           action="Edit",
                           add_event=add_event,
                           form=form,
                           event=event,
                           title="Edit Event")