コード例 #1
0
ファイル: Handler_Items.py プロジェクト: antiface/simplesto
    def post(self, auth_token=None, bucket_name=None, item_name=None):
        jsonp = self.request.get('jsoncallback')
        user_id, secret = decode_auth(auth_token)
        bucket_name = urllib.unquote(
            bucket_name.encode('ascii')).decode('utf-8')
        bucket = Bucket.get_by_key_name(bucket_name,
                                        parent=db.Key.from_path(
                                            'User', user_id))

        application = self.request.get('application', default_value='')
        datatype = self.request.get('datatype', default_value='')
        content = self.request.get('content', default_value='')
        exp_date = self.request.get('exp_date', default_value=None)

        if not bucket:
            return
        if bucket.secret != secret:
            return

        if not item_name:
            item_name = self.request.get('name')
        else:
            item_name = urllib.unquote(
                item_name.encode('ascii')).decode('utf-8')

        i = Item.get_by_key_name(item_name, parent=bucket)
        if i:
            upd = False
            if application:
                i.application = application
                upd = True
            if datatype:
                i.datatype = datatype
                upd = True
            if content:
                i.content = content
                upd = True
            if exp_date:
                i.exp_date = exp_date
                upd = True
            if upd:
                i.put()
        else:
            i = Item(key_name=item_name,
                     parent=bucket,
                     content=content,
                     datatype=datatype,
                     application=application,
                     exp_date=exp_date)
            i.put()
        self.response.out.write(i.to_json(jsonp))
コード例 #2
0
ファイル: Handler_Items.py プロジェクト: antiface/simplesto
	def post(self, auth_token=None, bucket_name=None, item_name=None):
		jsonp = self.request.get('jsoncallback')
		user_id, secret = decode_auth(auth_token)
		bucket_name = urllib.unquote(bucket_name.encode('ascii')).decode('utf-8')
		bucket = Bucket.get_by_key_name(bucket_name, parent=db.Key.from_path('User', user_id))
		
		application = self.request.get('application', default_value='')
		datatype = self.request.get('datatype', default_value='')
		content = self.request.get('content', default_value='')
		exp_date = self.request.get('exp_date', default_value=None)		
				
		if not bucket:
			return
		if bucket.secret != secret:
			return
			
		if not item_name:
			item_name = self.request.get('name')
		else:
			item_name = urllib.unquote(item_name.encode('ascii')).decode('utf-8')
			
		i = Item.get_by_key_name(item_name, parent=bucket)
		if i:
			upd = False 
			if application:
				i.application = application
				upd = True
			if datatype:
				i.datatype = datatype
				upd = True
			if content:
				i.content = content
				upd = True
			if exp_date:
				i.exp_date = exp_date
				upd = True
			if upd:
				i.put()	
		else:
			i = Item(
				key_name = item_name,
				parent = bucket,
				content = content,
				datatype = datatype,
				application = application,
				exp_date = exp_date
			)
			i.put()
		self.response.out.write(i.to_json(jsonp))