Example #1
0
    def post(self, id = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context

	param_dict = dict(
		title = request.params.title,
		conf_id = request.params.conf_id,
		desc = request.params.desc,
		venue = request.params.venue,
		talk_type = request.params.talk_type,
		start_date = parse(request.params.start_date),
		end_date = parse(request.params.end_date),
		duration = request.params.duration,
		speaker_title = request.params.speaker_title)
	content = param_dict
	session = Session(**param_dict)
	session = session.save()

	conf = Conference.get(session.conf_id)
	if conf:
	    conf.add_session(session)

	self.set_body(session.to_json())
	response.headers['content-type'] = 'application/json'
	return self.render()
Example #2
0
    def get(self, conf_handle = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context

	if conf_handle:
	    conf_id = Conference.get_id_from_url_title(conf_handle)
	    c.conf = Conference.get(conf_id)
	    if c.conf:
		return self.render_stuff('/index.html')	
	
	self.set_body("Please enter a valid conference handle..")
	return self.render()
Example #3
0
    def delete(self, id = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context
	if id is None:
	    self.set_body('Conf id is a Must')
	else:
	    conf = Conference.get(id)
	    if conf is None:
		self.set_body('No conference with %d exist' % (id))
	    else:
		conf.delete()
		self.set_body("Deleted Successfully...")
	return self.render()
Example #4
0
    def get(self, id = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context
	response.headers['content-type'] = 'application/json'

	if id is None:
	    #get all the confs
	    confs = [x.to_json(encode = False) for x in Conference.get_all()]
	    self.set_body(json.dumps(confs))
	else:
	    conf = Conference.get(id)
	    self.set_body(conf.to_json())
	return self.render()
Example #5
0
    def put(self, id = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context

	if id is None:
	    self.set_body('Conf id is a Must')
	else:
	    conf = Conference.get(id)
	    if request.params.title: conf.title = request.params.title
	    if request.params.url_title: conf.url_title = request.params.url_title
	    if request.params.desc: conf.desc = request.params.desc
	    if request.params.venue: conf.venue = request.params.venue
	    if request.params.start_date: conf.start_date = parse(request.params.start_date)
	    if request.params.end_date: conf.end_date = parse(request.params.end_date)
	    if request.params.twitter_handle: conf.twitter_handle = request.params.twitter_handle
	    if request.params.twitter_hashcode: conf.twitter_hashcode = request.params.twitter_hashcode
	    conf = conf.save()
	    conf.update_url_key()
	    self.set_body(conf.to_json())
	return self.render()
Example #6
0
    def get(self, id = None):
	request = self.wsgi_request
	response = self.wsgi_response
	c = self.context
	response.headers['content-type'] = 'application/json'

	if id is None:
	    #get all the sessions
	    conf_id = request.params.conf_id
	    if conf_id:
		conf = Conference.get(conf_id)
		session_keys = conf.get_sessions_keys()
		log.info('request for sessions for conf_id %s with sessions: %s' % (conf.id, session_keys))
		sessions = [x.json_friendly() for x in Session.multi_get(None, *session_keys)]
	    else:
		sessions = [x.json_friendly() for x in Session.get_all()]
	    #for s in sessions:
		#s['day'] = s.get('start_date').strftime('%A') 
		#s['time_label'] = s.get('start_date').strftime('%I:%M %p')
	    self.set_body(json.dumps(sessions))
	else:
	    session = Session.get(id)
	    self.set_body(session.to_json())
	return self.render()