Exemplo n.º 1
0
    def __init__(self, id, createDate):
        self.__id = unicode(id)

        jst = Utility.convert_jst_time(createDate)
        # self.__createDate = jst.strftime('%Y年%m月%d日 %H時%M分ごろの絵') とやりたいけれど、unicodeを渡せない
        # 改行して見やすくするために、右辺はカッコで閉じている
        self.__createDate = ( unicode(jst.year) + u'年'
                            + unicode(jst.month) + u'月'
                            + unicode(jst.day) + u'日 '
                            + unicode(jst.hour) + u'時'
                            + unicode(jst.minute) + u'分ごろの絵' )
Exemplo n.º 2
0
    def get(self):
        # 本とは異なり、main.htmlにuser関連の情報を持たせていないので、ここで取得する
        user, nickname = user_filter.do_filter()

        # ログインしていなければ登録しない
        if user == None:
            return


        # Over Runしていたら登録しない
        # leftLengthの算出方法は、main.jsの82行目に合わせる:小数点以下は切り捨てで計算、6での除算はトライ・アンド・エラーによるものらしい
        decimalLength = decimal.Decimal(self.request.get('leftLength'))
        leftLength = int((decimalLength / 6).to_integral_exact(rounding=decimal.ROUND_DOWN))
        if leftLength < 0:
            return


        # スコアエンティティを登録する
        accountId = user.federated_identity()
        if accountId == None:
            accountId = user.user_id()

        if nickname == None:
            nickname = 'Unknown nickname'

        jst = Utility.get_jst_now()
        offset = Score.get_date_offset(jst)
        rankValue = offset + leftLength

        q = Score(
                  key_name=accountId,
                  nickname=nickname,
                  registerDate=jst,
                  rankValue=rankValue,
                 )
        q.put()
Exemplo n.º 3
0
    def get_left_length(self):
        jst = Utility.convert_jst_time(self.registerDate)
        offset = self.get_date_offset(jst)

        return unicode(float(self.rankValue - offset) / 10)