Example #1
0
 def post(self):
   username = self.request.get('email')
   
   accounts = None
   if not username:
     accounts = accounts_dao.get_all_accounts()
   else:
     entity = accounts_dao.get(username)
     if not entity:
       self.error(400)
       return
     accounts = []
     accounts.append(entity)
   
   alldata = {'usage':[]}
   ''' retrieve all usage information summary (just API calls) '''
   for acc in accounts:
     q = APICountBatch.all().filter("account_key =", acc.key().name())
     values = {"success": "true", "email" : acc.email}
     res = q.fetch(1000) 
     values['total'] = q.count() or 1
     monthsdict = {}
     for ii in res:
       monthyear = ii.date.strftime('%Y-%m')
       curr=monthsdict.get(monthyear)
       if not curr:
         curr = 0
       curr += int(ii.counter)
       monthsdict[monthyear] = curr
     values['months'] = monthsdict
     alldata['usage'].append(values)
   
   self.response.out.write(simplejson.dumps(alldata))
Example #2
0
 def post(self):
   username = self.request.get('email')
   
   accounts = None
   if not username:
     accounts = accounts_dao.get_all_accounts()
   else:
     entity = accounts_dao.get(username)
     if not entity:
       self.error(400)
       return
     accounts = []
     accounts.append(entity)
   
   alldata = {'usage':[]}
   ''' retrieve all usage information summary (just API calls) '''
   for acc in accounts:
     q = APICountBatch.all().filter("account_key =", acc.key().name())
     values = {"success": "true", "email" : acc.email}
     res = q.fetch(1000) 
     values['total'] = q.count() or 1
     monthsdict = {}
     for ii in res:
       monthyear = ii.date.strftime('%Y-%m')
       curr=monthsdict.get(monthyear)
       if not curr:
         curr = 0
       curr += int(ii.counter)
       monthsdict[monthyear] = curr
     values['months'] = monthsdict
     alldata['usage'].append(values)
   
   self.response.out.write(json.dumps(alldata))
Example #3
0
 def post(self):
   encodeduser = self.request.get('email')
   encodedpass = self.request.get('password')
   
   username = base64.decodestring(encodeduser)
   password = base64.decodestring(encodedpass)
   
   entity = accounts_dao.authenticate_web_account(username, password)
   if not entity:
     self.error(400)
     return
   
   ''' retrieve all usage information summary (just API calls) '''
   
   q = APICountBatch.all().filter("account_key =", entity.key().name())
   values = {"success": "true"}
   res = q.fetch(1000) 
   values['total'] = q.count() or 1
   values['entry'] = []
   for ii in res:
     ent = {'date':ii.date.strftime("%Y-%m-%d"),
            'count':str(ii.counter)}
     values['entry'].append(ent)
   else:
     ent = {'date':datetime.datetime.now().strftime("%Y-%m-%d"),
            'count':"0"}
     values['entry'].append(ent)
   
   self.response.out.write(simplejson.dumps(values))