Пример #1
0
def add_sponsored_event(context,request):
    logged_in = authenticated_userid(request)
    user = find_root(request.context)['users'][logged_in]
    main = get_renderer('../templates/master.pt').implementation()
    projectList = find_root(context)["settings"].projects
    projectTupleList = []
    for project in projectList:
        projectTupleList.append((project,project))
    projectTupleTuple=tuple(projectTupleList)   #sorry about this.  It was more fun than a ListList
    class SponsoredEventSchema(colander.MappingSchema):
        completionDate = colander.SchemaNode(colander.Date(),title="Completion Date (YYYY-MM-DD): ")
        hours = colander.SchemaNode(colander.Float(), title="Number of Hours: ")
        description = colander.SchemaNode(
                colander.String(),
                validator=colander.OneOf([x[0] for x in projectTupleTuple]),
                widget=deform.widget.RadioChoiceWidget(values=projectTupleTuple),
                title='Project',
                description='Select a Project')
        taskDescription = colander.SchemaNode(
                    colander.String(), title="Description: ",
                    widget=deform.widget.TextAreaWidget(rows=5, cols=40),
                    description='Enter some text')
        contact = colander.SchemaNode(colander.String(),title="Contact Name: ")
        contactInfo = colander.SchemaNode(colander.String(),title="Contact Info: ")
    schema=SponsoredEventSchema()
    eventform = Form(schema, buttons=('submit',))
    if 'taskDescription' in request.params:
        try:
            controls = request.POST.items()
            captured = eventform.validate(controls)
        except deform.ValidationFailure, e:
            eventform = e.render()
            return {'red':'',
                    'main':main, 
                    'form':eventform, 
                    'content':'',
                    'logged_in':logged_in,
                    'name':'Add Sponsored Event',
		    'TutText': getTutText(user, view='')}
        completionDate = calendarstuff.datetime_from_str(request.params['completionDate'])
        hours = request.params['hours']
        description = request.params['deformField3']
        taskDescription = request.params['taskDescription']
        contact = request.params['contact']
        contactInfo = request.params['contactInfo']
        context.eventcount += 1
        user = context.user
        event = Event("Sponsored","N/A",completionDate,hours,description,taskDescription,contact,contactInfo,user,context.eventcount)
        event.__parent__ = context
        context[str(context.eventcount)] = event
        activitylog = find_root(context)['activityLogs']
        activitylog.event_creation(find_root(request.context)["users"][logged_in],event,request.application_url)
        return {'red':'serviceLogs/'+context.user.username,
                'main':main,
                'form':'',
                'content':"Added sponsored event for "+description,
                'logged_in':logged_in,
                'name':'Redirecting...',
		'TutText': getTutText(user, view='')}
Пример #2
0
def add_independent_event(context, request):
    logged_in = authenticated_userid(request)
    main = get_renderer("../templates/master.pt").implementation()
    schema = IndependentEventSchema()
    eventform = Form(schema, buttons=("submit",))
    if "description" in request.params:
        try:
            controls = request.POST.items()
            captured = eventform.validate(controls)
        except deform.ValidationFailure, e:
            eventform = e.render()
            return {
                "red": "",
                "main": main,
                "form": eventform,
                "content": "",
                "logged_in": logged_in,
                "name": "Add Independent Event",
            }
        completionDate = calendarstuff.datetime_from_str(request.params["completionDate"])
        hours = request.params["hours"]
        description = request.params["description"]
        taskDescription = request.params["taskDescription"]
        contact = request.params["contact"]
        contactInfo = request.params["contactInfo"]
        affects = request.params["affects"]
        context.eventcount += 1
        user = context.user
        event = Event(
            "Independent",
            completionDate,
            hours,
            description,
            taskDescription,
            contact,
            contactInfo,
            user,
            context.eventcount,
            affects=affects,
        )
        event.__parent__ = context
        context[str(context.eventcount)] = event
        activitylog = find_root(context)["activityLogs"]
        activitylog.event_creation(find_root(request.context)["users"][logged_in], event, request.application_url)
        return {
            "red": "serviceLogs/" + context.user.username,
            "main": main,
            "form": "",
            "content": "Added independent event for " + description,
            "logged_in": logged_in,
            "name": "Redirecting...",
        }
Пример #3
0
def add_independent_event(context,request):
    logged_in = authenticated_userid(request)
    user = find_root(request.context)['users'][logged_in]
    main = get_renderer('../templates/master.pt').implementation()
    schema = IndependentEventSchema()
    eventform = Form(schema, buttons=('submit',))
    if 'description' in request.params:
        try:
            controls = request.POST.items()
            captured = eventform.validate(controls)
        except deform.ValidationFailure, e:
            eventform = e.render()
            return {'red':'',
                    'main':main, 
                    'form':eventform, 
                    'content':'',
                    'logged_in':logged_in,
                    'name':'Add Independent Event',
		    'TutText': getTutText(user, view='')}
        completionDate = calendarstuff.datetime_from_str(request.params['completionDate'])
        hours = request.params['hours']
        description = request.params['description']
        taskDescription = request.params['taskDescription']
        contact = request.params['contact']
        contactInfo = request.params['contactInfo']
        affects = request.params['affects']
	type = request.params['type']
        context.eventcount += 1
        user = context.user
        event = Event("Independent",
                      type,
                      completionDate,
                      hours,
                      description,
                      taskDescription,
                      contact,contactInfo,
                      user,
                      context.eventcount,
                      affects=affects)
        event.__parent__ = context
        context[str(context.eventcount)]=event
        activitylog=find_root(context)['activityLogs']
        activitylog.event_creation(find_root(request.context)["users"][logged_in],event,request.application_url)
        return {'red':'serviceLogs/'+context.user.username,
                'main':main,
                'form':'',
                'content':"Added independent event for "+description,
                'logged_in':logged_in,
                'name':'Redirecting...',
		'TutText': getTutText(user, view='')}
Пример #4
0
def add_sponsored_event(context, request):
    logged_in = authenticated_userid(request)
    main = get_renderer("../templates/master.pt").implementation()
    projectList = find_root(context)["settings"].projects
    projectTupleList = []
    for project in projectList:
        projectTupleList.append((project, project))
    projectTupleTuple = tuple(projectTupleList)  # sorry about this.  It was more fun than a ListList

    class SponsoredEventSchema(colander.MappingSchema):
        completionDate = colander.SchemaNode(colander.Date(), title="Completion Date (YYYY-MM-DD): ")
        hours = colander.SchemaNode(colander.Float(), title="Number of Hours: ")
        description = colander.SchemaNode(
            colander.String(),
            validator=colander.OneOf([x[0] for x in projectTupleTuple]),
            widget=deform.widget.RadioChoiceWidget(values=projectTupleTuple),
            title="Project",
            description="Select a Project",
        )
        taskDescription = colander.SchemaNode(
            colander.String(),
            title="Description: ",
            widget=deform.widget.TextAreaWidget(rows=5, cols=40),
            description="Enter some text",
        )
        contact = colander.SchemaNode(colander.String(), title="Contact Name: ")
        contactInfo = colander.SchemaNode(colander.String(), title="Contact Info: ")

    schema = SponsoredEventSchema()
    eventform = Form(schema, buttons=("submit",))
    if "taskDescription" in request.params:
        try:
            controls = request.POST.items()
            captured = eventform.validate(controls)
        except deform.ValidationFailure, e:
            eventform = e.render()
            return {
                "red": "",
                "main": main,
                "form": eventform,
                "content": "",
                "logged_in": logged_in,
                "name": "Add Sponsored Event",
            }
        completionDate = calendarstuff.datetime_from_str(request.params["completionDate"])
        hours = request.params["hours"]
        description = request.params["deformField3"]
        taskDescription = request.params["taskDescription"]
        contact = request.params["contact"]
        contactInfo = request.params["contactInfo"]
        context.eventcount += 1
        user = context.user
        event = Event(
            "Sponsored",
            completionDate,
            hours,
            description,
            taskDescription,
            contact,
            contactInfo,
            user,
            context.eventcount,
        )
        event.__parent__ = context
        context[str(context.eventcount)] = event
        activitylog = find_root(context)["activityLogs"]
        activitylog.event_creation(find_root(request.context)["users"][logged_in], event, request.application_url)
        return {
            "red": "serviceLogs/" + context.user.username,
            "main": main,
            "form": "",
            "content": "Added sponsored event for " + description,
            "logged_in": logged_in,
            "name": "Redirecting...",
        }