def get(self):
        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions']['social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "social-media")

        path = os.path.join(os.path.dirname(__file__), '../../templates/suggest_review_home.html')
        self.response.out.write(template.render(path, self.template_values))
示例#2
0
    def get(self):
        self._require_admin()

        self.template_values['memcache_stats'] = memcache.get_stats()
        self.template_values['databasequery_stats'] = {
            'hits':
            sum(
                filter(None, [
                    memcache.get(key)
                    for key in DatabaseQuery.DATABASE_HITS_MEMCACHE_KEYS
                ])),
            'misses':
            sum(
                filter(None, [
                    memcache.get(key)
                    for key in DatabaseQuery.DATABASE_MISSES_MEMCACHE_KEYS
                ]))
        }

        # Gets the 5 recently created users
        users = Account.query().order(-Account.created).fetch(5)
        self.template_values['users'] = users

        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions'][
            'social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING,
                                                "social-media")

        # version info
        try:
            fname = os.path.join(os.path.dirname(__file__),
                                 '../../version_info.json')

            with open(fname, 'r') as f:
                data = json.loads(f.read().replace('\r\n', '\n'))

            self.template_values['git_branch_name'] = data['git_branch_name']
            self.template_values['build_time'] = data['build_time']

            commit_parts = re.split("[\n]+", data['git_last_commit'])
            self.template_values['commit_hash'] = commit_parts[0].split(" ")
            self.template_values['commit_author'] = commit_parts[1]
            self.template_values['commit_date'] = commit_parts[2]
            self.template_values['commit_msg'] = commit_parts[3]

        except Exception, e:
            logging.warning("version_info.json parsing failed: %s" % e)
            pass
    def get(self):
        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "media")

        path = os.path.join(os.path.dirname(__file__),
                            '../../templates/suggest_review_home.html')
        self.response.out.write(template.render(path, self.template_values))
    def get(self):
        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(
            Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions'][
            'social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING,
                                                "social-media")
        self.template_values['suggestions'][
            'offseason'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING,
                                                   "offseason-event")

        self.template_values[
            'offseason_permission'] = AccountPermissions.REVIEW_OFFSEASON_EVENTS

        path = os.path.join(os.path.dirname(__file__),
                            '../../templates/suggest_review_home.html')
        self.response.out.write(template.render(path, self.template_values))
    def get(self):
        self._require_admin()

        self.template_values['memcache_stats'] = memcache.get_stats()
        self.template_values['databasequery_stats'] = {
            'hits': sum(filter(None, [memcache.get(key) for key in DatabaseQuery.DATABASE_HITS_MEMCACHE_KEYS])),
            'misses': sum(filter(None, [memcache.get(key) for key in DatabaseQuery.DATABASE_MISSES_MEMCACHE_KEYS]))
        }

        # Gets the 5 recently created users
        users = Account.query().order(-Account.created).fetch(5)
        self.template_values['users'] = users

        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions']['social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "social-media")

        # version info
        try:
            fname = os.path.join(os.path.dirname(__file__), '../../version_info.json')

            with open(fname, 'r') as f:
                data = json.loads(f.read().replace('\r\n', '\n'))

            self.template_values['git_branch_name'] = data['git_branch_name']
            self.template_values['build_time'] = data['build_time']

            commit_parts = re.split("[\n]+", data['git_last_commit'])
            self.template_values['commit_hash'] = commit_parts[0].split(" ")
            self.template_values['commit_author'] = commit_parts[1]
            self.template_values['commit_date'] = commit_parts[2]
            self.template_values['commit_msg'] = commit_parts[3]

        except Exception, e:
            logging.warning("version_info.json parsing failed: %s" % e)
            pass
示例#6
0
    def get(self):
        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions']['event_media'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event_media")
        self.template_values['suggestions']['social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "social-media")
        self.template_values['suggestions']['offseason'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "offseason-event")
        self.template_values['suggestions']['apiwrite'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "api_auth_access")
        self.template_values['suggestions']['cad'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "robot")

        self.template_values['media_permission'] = AccountPermissions.REVIEW_MEDIA
        self.template_values['offseason_permission'] = AccountPermissions.REVIEW_OFFSEASON_EVENTS
        self.template_values['apiwrite_permission'] = AccountPermissions.REVIEW_APIWRITE
        self.template_values['cad_permission'] = AccountPermissions.REVIEW_DESIGNS
        self.template_values['event_media_permission'] = AccountPermissions.REVIEW_EVENT_MEDIA
        self.template_values['status'] = self.request.get('status')

        self.response.out.write(jinja2_engine.render('suggestions/suggest_review_home.html', self.template_values))
    def get(self):
        self.template_values['suggestions'] = dict()
        self.template_values['suggestions']['match'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "match")
        self.template_values['suggestions']['event'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event")
        self.template_values['suggestions']['media'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "media")
        self.template_values['suggestions']['social'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "social-media")
        self.template_values['suggestions']['offseason'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "offseason-event")
        self.template_values['suggestions']['apiwrite'] = SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "api_auth_access")

        self.template_values['offseason_permission'] = AccountPermissions.REVIEW_OFFSEASON_EVENTS
        self.template_values['apiwrite_permission'] = AccountPermissions.REVIEW_APIWRITE

        path = os.path.join(os.path.dirname(__file__), '../../templates/suggest_review_home.html')
        self.response.out.write(template.render(path, self.template_values))
示例#8
0
    def get(self):
        hook_sitevars = Sitevar.get_by_id('slack.hookurls')
        if not hook_sitevars:
            return
        channel_url = hook_sitevars.contents.get('suggestion-nag')
        if not channel_url:
            return
        counts = map(
            lambda t: SuggestionFetcher.count(Suggestion.REVIEW_PENDING, t),
            Suggestion.MODELS)

        nag_text = "There are pending suggestions!\n"
        suggestions_to_nag = False
        for count, name in zip(counts, Suggestion.MODELS):
            if count > 0:
                suggestions_to_nag = True
                nag_text += "*{0}*: {1} pending suggestions\n".format(
                    Suggestion.MODEL_NAMES.get(name), count)

        if suggestions_to_nag:
            nag_text += "_Review them on <https://www.thebluealliance.com/suggest/review|TBA>_"
            OutgoingNotificationHelper.send_slack_alert(channel_url, nag_text)
示例#9
0
    def get(self):
        hook_sitevars = Sitevar.get_by_id('slack.hookurls')
        if not hook_sitevars:
            return
        channel_url = hook_sitevars.contents.get('suggestion-nag')
        if not channel_url:
            return
        counts = map(lambda t: SuggestionFetcher.count(Suggestion.REVIEW_PENDING, t),
                     Suggestion.MODELS)

        nag_text = "There are pending suggestions!\n"
        suggestions_to_nag = False
        for count, name in zip(counts, Suggestion.MODELS):
            if count > 0:
                suggestions_to_nag = True
                nag_text += "*{0}*: {1} pending suggestions\n".format(
                    Suggestion.MODEL_NAMES.get(name),
                    count
                )

        if suggestions_to_nag:
            nag_text += "_Review them on <https://www.thebluealliance.com/suggest/review|TBA>_"
            OutgoingNotificationHelper.send_slack_alert(channel_url, nag_text)
 def testCount(self):
     self.assertEqual(SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "event"), 1)
     self.assertEqual(SuggestionFetcher.count(Suggestion.REVIEW_PENDING, "media"), 0)