Пример #1
0
    def get(self):
        stats_map = {}

        # get hits to any page
        stats_map['page_hit_count'] = SiteLog.query(SiteLog.page == '/', SiteLog.admin_email == None).count()
      
        # get hits to home page
        stats_map['homepage_hit_count'] = SiteLog.query(SiteLog.page == '/', SiteLog.admin_email == None).count()

        # get hits to provider signup page
        stats_map['provider_signup_hit_count'] = SiteLog.query(SiteLog.page == '/signup/provider', SiteLog.admin_email == None).count()

        # get total # of providers
        stats_map['provider_total_count'] = Provider.query().count()

        # get hits from Internet Explorer
        stats_map['internet_explorer_count'] = db.get_site_counter().internet_explorer_hits

        # number of times exiting site to blog
        stats_map['blog_clicks'] = db.get_site_counter().blog_clicks
        
        stats_map['click_full_button'] = db.get_site_counter().click_full_button
        stats_map['click_preview_button'] = db.get_site_counter().click_preview_button
        
        stats_map['signup_full_button'] = db.get_signup_from_origin('full')
        stats_map['signup_preview_button'] = db.get_signup_from_origin('preview')

        stats_map['paid_full_button'] = db.get_paid_from_origin('full')
        stats_map['paid_preview_button'] = db.get_paid_from_origin('preview')

        self.render_template('admin/dashboard.html', stats_map=stats_map)
Пример #2
0
def get_site_logs_for_prospect(prospect):
    ''' returns all the log events for a user '''
    if prospect:
        return SiteLog.query(SiteLog.prospect == prospect.key).order(
            -SiteLog.access_time).fetch()
    else:
        return None
Пример #3
0
 def calculate_sitelog_stats(self):
     '''
         Calculates all stats related to sitelogs and stores them in ndb properties
     '''
     logging.info('Calculating sitelog stats for %s. Last update was %s UTC' % (self.prospect_id, self.sitelog_calculation_timestamp))
     latest_site_visit = SiteLog.query(SiteLog.prospect == self.key).order(-SiteLog.access_time).get()
     if latest_site_visit:
         self.last_site_visit_timestamp = latest_site_visit.access_time
     # update calculation time
     self.sitelog_calculation_timestamp = datetime.utcnow()
     self.put()
Пример #4
0
 def get_site_logs(self):
     return SiteLog.query(SiteLog.prospect == self.key).order(-SiteLog.access_time).fetch(100)
Пример #5
0
 def get_profile_views_total(self):
     page = '/' + self.vanity_url
     return SiteLog.query(SiteLog.page == page).count()
Пример #6
0
 def get_profile_views_past_30_days(self):
     page = '/' + self.vanity_url
     today_minus_30_days = datetime.today() - timedelta(days=30)
     return SiteLog.query(SiteLog.page == page, SiteLog.access_time > today_minus_30_days).count()
Пример #7
0
def get_site_logs_for_prospect(prospect):
    ''' returns all the log events for a user '''
    if prospect:
        return SiteLog.query(SiteLog.prospect == prospect.key).order(-SiteLog.access_time).fetch()
    else:
        return None  
Пример #8
0
 def get_profile_views_total(self):
     page = '/' + self.vanity_url
     return SiteLog.query(SiteLog.page == page).count()
Пример #9
0
 def get_profile_views_past_30_days(self):
     page = '/' + self.vanity_url
     today_minus_30_days = datetime.today() - timedelta(days=30)
     return SiteLog.query(
         SiteLog.page == page,
         SiteLog.access_time > today_minus_30_days).count()