def add_item_post(self, request): check_signed_in() try: item = Item(title=request.title, description=request.description, expiration=datetime.strptime(request.expiration, "%m/%d/%Y"), price=request.price, owner=User.get_current_user()) key = item.put() return BaseMessage(message="OK", code="OK", data=str(key.id())) except BadValueError as e: return BaseMessage(message=e.message, code="ERROR", data=e.message)
def add_comm_post(self, request): user = check_signed_in() item = Item.get_by_id(long(request.item_id)) try: comm = Comm(subject=request.subject, sender=user.id(), receiver=request.receiver.split(';'), content=request.content, item_id=item, item_title=item.title, price=item.price) key = comm.put() return BaseMessage(message="OK", code="OK", data=str(key.id())) except Exception as e: return BaseMessage(message=e.message, code="ERROR", data=e.message)
def del_item_post(self, request): user = check_signed_in() item = Item.get_by_id(request.id) if item.owner != User.get_current_user(): return BaseMessage( message="Missing permissions", code="ERROR", data="You are not authorized to delete the Item.") if item: item.key.delete() return BaseMessage(message="OK", code="OK", data="Item successful deleted") else: raise endpoints.NotFoundException('Item %s not found.' % (request.id, ))
def add_user_post(self, request): check_signed_in() #check if email already exists user = User(email=endpoints.get_current_user().email(), name=request.name, description=request.description, image_url=request.image_url, tag=request.tag, disabled=request.disabled) key = user.put() return BaseMessage(message="OK", code="OK", data=str(key.id()))
def del_comm_post(self, request): #delete Users Items? user = check_signed_in() comm = Comm.get_by_id(request.id) if comm and comm.sender == User.query( User.email == endpoints.get_current_user()).get(): comm.delete() return BaseMessage(message="OK", code="OK", data="User deleted") else: raise endpoints.NotFoundException('Item %s not found.' % (request.id, ))
def del_user_post(self, request): #delete Users Items? check_signed_in() user = User.get_by_id(request.id) if user and user == User.query( User.email == endpoints.get_current_user().email()).get(): user.key.delete() return BaseMessage(message="OK", code="OK", data="User deleted") else: raise endpoints.NotFoundException('Item %s not found.' % (request.id, ))
def mod_user_post(self, request): user = check_signed_in().get() if user.key.id() == long(request.user_id): user.name = request.name user.description = request.description user.image_url = request.image_url user.put() return BaseMessage(message="OK", code="OK", data=str(user.key.id())) else: raise endpoints.UnauthorizedException('')
def run(self): logger = logging.getLogger() buffer = b"" state = "inactive" while not self.__abort: curr_char = self.read() if not curr_char: continue if state != "after_escape" and curr_char == STX: buffer = b"" state = "in_message" elif state == "in_message" and curr_char == ESC: state = "after_escape" elif state == "in_message" and curr_char == ETB: state = "after_message" elif state in ["after_escape", "in_message"]: buffer += curr_char if state == "after_escape": state = "in_message" if state == "after_message": if not buffer: logger.warning('Received empty message, skipping!') continue try: msg = BaseMessage.from_raw_data(buffer) logger.debug("< {}".format(msg)) self.received_message.emit(msg) if isinstance(msg, ConfirmationMessage): self.writer.remove_message_from_slots( msg.confirmed_message_number() ) except MessageCRCError as e: logger.error('Message CRC mismatch... transmitted CRC: {}, ' 'computed CRC: {}'.format( e.transmitted_crc, e.computed_crc) ) except UnknownMessageType: logger.warn('Unknown message {}'.format( binascii.hexlify(buffer)) ) buffer = b""
def del_feedback_post(self, request): #delete Users Items? user = check_signed_in() feedback = Feedback.get_by_id(request.id) if feedback and feedback.author == User.query( User.email == endpoints.get_current_user()).get(): feedback.delete() return BaseMessage(message="OK", code="OK", data="Feedback deleted") else: raise endpoints.NotFoundException('Feedback %s not found.' % (request.id, ))
def mod_item_post(self, request): user = check_signed_in() item = Item.get_by_id(request.item_id) if item.owner == user: item.description = request.description item.expiration = request.expiration item.price = request.price item.title = request.title item.put() return BaseMessage(message="OK", code="OK", data=str(item.key.id())) else: raise endpoints.UnauthorizedException('')
def add_feedback_post(self, request): check_signed_in() feedback = Feedback() key = feedback.put() return BaseMessage(message="OK", code="OK", data=str(key.id()))