Пример #1
0
    def ajouter_command(self, message=None):
        #who = db.IM("xmpp", message.sender)
        url = message.arg
        logging.debug('Wants to add present from URL ' + url)
        data = {"isAdded": False}
        email = message.sender.split("/")[0]
        logging.debug('XMPP handler started via /ajouter command. User ' +
                      email + ". URL: " + url)
        try:
            info = utils.get_image_urls_and_title_from_page(url)
            if info['title']:
                present = Present(title=info['title'], user=users.User(email))
                present.approximatePrice = int(info['price'])
                present.url = url
                # We're going to have to choose the first image anyway ...
                present.image = info['img'][0]
                present.imageFixed = False
                present.put()

                data["isAdded"] = True
                data["present"] = present
            else:
                data["error"] = "Could not parse website"
        except StandardError, e:
            data["error"] = e
    def post(self):
        session = get_current_session()
        if session.is_active() and self.request.get('title'):
            present = Present(title=self.request.get('title'),
                              user=session["user_info"]["username"])
            if self.request.get('approximatePrice'):
                present.approximatePrice = int(
                    self.request.get('approximatePrice'))
            if self.request.get('url'):
                present.url = self.request.get('url')
            if self.request.get('image'):
                present.image = self.request.get('image')
            present.imageFixed = False
            present.put()

            #increment counter
            try:
                counter = PresentCounter.all().fetch(1)[0]
            except:
                counter = PresentCounter(count=0)
            counter.count += 1
            counter.put()

        self.redirect('/?msg=addOk')