Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2484)

Unified Diff: appengine_apps/trooper_o_matic/appengine_module/trooper_o_matic/tree_status.py

Issue 774323002: Moved trooper_o_matic to appengine/ (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine_apps/trooper_o_matic/appengine_module/trooper_o_matic/tree_status.py
diff --git a/appengine_apps/trooper_o_matic/appengine_module/trooper_o_matic/tree_status.py b/appengine_apps/trooper_o_matic/appengine_module/trooper_o_matic/tree_status.py
deleted file mode 100644
index fa852f89cc09b48bfb13d094fd2daec0a529949b..0000000000000000000000000000000000000000
--- a/appengine_apps/trooper_o_matic/appengine_module/trooper_o_matic/tree_status.py
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright (c) 2014 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import json
-import os
-
-import webapp2
-import jinja2
-
-from google.appengine.ext import ndb
-
-from appengine_module.trooper_o_matic import models
-from appengine_module.trooper_o_matic import timezones
-
-
-JINJA_ENVIRONMENT = jinja2.Environment(
- loader=jinja2.FileSystemLoader(os.path.join(os.path.dirname(__file__),
- 'templates')),
- extensions=['jinja2.ext.autoescape'],
- autoescape=True)
-
-
-class TreeStatusHandler(webapp2.RequestHandler):
-
- @staticmethod
- def _FormatGoogleChartsDateTime(dt):
- pt = timezones.UtcToPacific(dt)
- return 'Date(%d, %d, %d, %d, %d, %d)' % (
- pt.year, pt.month - 1, pt.day, pt.hour, pt.minute, pt.second)
-
- def get(self, project):
- project_key = ndb.Key(models.Project, project)
- data_1 = models.TreeOpenStat.query(
- models.TreeOpenStat.num_days == 1, ancestor=project_key).order(
- -models.TreeOpenStat.timestamp).fetch(limit=3000)
- data_1.reverse()
- cols_1 = [
- {'id': 'timestamp', 'label': 'Time', 'type': 'datetime'},
- {'id': '1', 'label': 'Percent open last 24 hours', 'type': 'number'},
- ]
- rows_1 = [{
- 'c': [
- {'v': self._FormatGoogleChartsDateTime(stat.timestamp)},
- {'v': stat.percent_open},
- ]} for stat in data_1]
- graph_1 = {'cols': cols_1, 'rows': rows_1}
- data_7 = models.TreeOpenStat.query(
- models.TreeOpenStat.num_days == 7, ancestor=project_key).order(
- -models.TreeOpenStat.timestamp).fetch(limit=3000)
- data_7.reverse()
- cols_7 = [
- {'id': 'timestamp', 'label': 'Time', 'type': 'datetime'},
- {'id': '7', 'label': 'Percent open last 24 hours', 'type': 'number'}
- ]
- rows_7 = [{
- 'c': [
- {'v': self._FormatGoogleChartsDateTime(stat.timestamp)},
- {'v': stat.percent_open}
- ]} for stat in data_7]
- graph_7 = {'cols': cols_7, 'rows': rows_7}
-
- data_gauge = [
- ['Label', 'Value'],
- ['1 Day', round(data_1[-1].percent_open, 0)],
- ['7 Days', round(data_7[-1].percent_open, 0)],
- ]
-
- template = JINJA_ENVIRONMENT.get_template('tree_status.html')
- self.response.write(template.render({
- 'days_1': graph_1,
- 'days_7': graph_7,
- 'data_gauge': data_gauge,
- }))
-
-class TreeStatusJSONHandler(webapp2.RequestHandler):
- def get(self, project):
- days = int(self.request.get('days', 1))
-
- project_key = ndb.Key(models.Project, project)
- latest = models.TreeOpenStat.query(
- models.TreeOpenStat.num_days == days, ancestor=project_key).order(
- -models.TreeOpenStat.timestamp).get()
-
- data = {}
- data['timestamp'] = latest.timestamp.isoformat()
- data['num_days'] = latest.num_days
- data['percent_open'] = latest.percent_open
-
- self.response.headers['Content-Type'] = 'application/json'
- self.response.headers['Access-Control-Allow-Origin'] = '*'
- self.response.write(json.dumps(data))

Powered by Google App Engine
This is Rietveld 408576698