async def index_view(request): user = request['user'] analytics = { 'total_user': await User.objects.count(User.select()), 'checkin_user': await User.objects.count(User.select().where(User.last_check_in_time > 0)), 'traffic_usage': tools.flow_auto_show(await User.objects.scalar( User.select(fn.Sum(User.u + User.d)))), 'online_user': await User.objects.count(User.select().where(User.t > 3600)), 'total_node': await SS_Node.objects.count(SS_Node.select()), } return render('admin_panel/index.html', request, user=user, **analytics)
def total_used(self): return tools.flow_auto_show(self.u + self.d)
def used_traffic(self): total = self.u + self.d return tools.flow_auto_show(total)
def unused_traffic(self): total = self.u + self.d return tools.flow_auto_show(self.transfer_enable - total)
def enable_traffic(self): return tools.flow_auto_show(self.transfer_enable)