Пример #1
0
    def post(self):
        
        from utils import Validator

        #XXX: need to add user interface

        write = self.response.out.write

        #XXX: needs validation!

        input = {
         "title": self.request.get("title"),
         "comment": self.request.get("comment"),
         "code": self.request.get("code"),
         "type": self.request.get("type"),
        }

        val = Validator(input)

        if not val.is_valid():
            write(Site(self, self.user_status_values).get_content(issues=val.get_issues(),vars=val.get_vars())) 
            return

        #getting only the first 8 characters of uuid:
        self.db.paste.uid = str(uuid.uuid4())[:8]
        self.db.paste.name = self.user_status_values['user']
        self.db.paste.title = val.get_var("title")
        self.db.paste.comment = val.get_var("comment")
        self.db.paste.code = val.get_var("code")
        self.db.paste.type = val.get_var("type")
        self.db.paste.put()

        #Updating Type Statistics
        self.db.aux= db.GqlQuery("SELECT * FROM Stats WHERE type = :1",val.get_var("type")).fetch(1)

        if self.db.aux:
            for stat in self.db.aux:
                stat.number = stat.number+1
        else:
            stat = Stats(type=val.get_var("type"),number=1)

        stat.put()

        self.response.headers['Content-Type'] = 'text/html'
        write(Site(self, self.user_status_values).get_content(uid=self.db.paste.uid))
Пример #2
0
 def put(self, row, col, value):
     Stats.put(self, row, col, value)
     if (row == col):        self.diag0 -= set([value])
     if (row + col) == 8:    self.diag8 -= set([value])
Пример #3
0
 def put(self, r, c, value):
     Stats.put(self, r, c, value)
     e = self.board.coordToExtra(r, c)
     if e != None:
         self.extra[e] -= set([value])