def index(self): c = TemplateContext() c.heading = _('Statistics') c.members = len(self.mf.getUserList()) activeMembers = self.mf.getActiveMemberList() c.activeMembers = len(activeMembers) c.formerMembers = c.members - c.activeMembers c.paymentsOk = 0 for uid in activeMembers: last_payment = None try: last_payment = self.db.query(Payment).filter( and_(Payment.uid == uid, Payment.verified == 1)).order_by( Payment.date.desc()).limit(1)[0] except Exception as e: ''' Don't care if there is no payment ''' pass if last_payment: d = last_payment.date today = datetime.datetime.now().date() if d.year > today.year or (d.year == today.year and d.month >= today.month): c.paymentsOk += 1 c.paymentsNotOk = c.activeMembers - c.paymentsOk return self.render('/statistics/index.mako', template_context=c)
def exportList(self, listType='plain'): c = TemplateContext() try: members = self.mf.getUsers() c.members = [] # make sure to clean out some vars for m in members: m.sambaNTPassword = '******' m.userPassword = '******' if not m.lockedMember: c.members.append(m) if listType == 'RCSL': cherrypy.response.content_type = 'text/plain' return self.render('/members/exportRCSLCSV.mako', template_context=c) else: cherrypy.response.content_type = 'text/plain' return self.render('/members/exportCSV.mako', template_context=c) except LookupError as e: print 'Lookup error!' print e pass return 'ERROR 4x0'
def index(self): c = TemplateContext() c.heading = _("Statistics") c.members = len(self.mf.getUserList()) activeMembers = self.mf.getActiveMemberList() c.activeMembers = len(activeMembers) c.formerMembers = c.members - c.activeMembers c.paymentsOk = 0 for uid in activeMembers: last_payment = None try: last_payment = ( self.db.query(Payment) .filter(and_(Payment.uid == uid, Payment.verified == 1)) .order_by(Payment.date.desc()) .limit(1)[0] ) except Exception as e: """ Don't care if there is no payment """ pass if last_payment: d = last_payment.date today = datetime.datetime.now().date() if d.year > today.year or (d.year == today.year and d.month >= today.month): c.paymentsOk += 1 c.paymentsNotOk = c.activeMembers - c.paymentsOk return self.render("/statistics/index.mako", template_context=c)
def showAllMembers(self, _filter='active'): c = TemplateContext() try: c.heading = _('All members') members = self.mf.getUsers(clear_credentials=True) c.members = [] # make sure to clean out some vars for m in members: if _filter == 'active' and not m.lockedMember: c.members.append(m) elif _filter == 'former' and m.lockedMember: c.members.append(m) elif _filter == 'all': c.members.append(m) return self.render('/members/viewAll.mako', template_context=c) except LookupError as e: import sys, traceback traceback.print_exc(file=sys.stdout) print 'Lookup error!' print e pass except NoResultFound: print 'No such sql user !' return 'ERROR 4x0'
def exportList(self, listType='plain'): c = TemplateContext() try: members = self.mf.getUsers() c.members = [] # make sure to clean out some vars for m in members: m.sambaNTPassword = '******' m.userPassword = '******' if not m.lockedMember: c.members.append(m) if listType == 'RCSL': cherrypy.response.content_type = 'text/plain' return self.render('/members/exportRCSLCSV.mako', template_context=c) else: cherrypy.response.content_type = 'text/plain' return self.render('/members/exportCSV.mako', template_context=c) except LookupError as e: print 'Lookup error!' print e pass return 'ERROR 4x0'
def showAllMembers(self, _filter='active'): c = TemplateContext() try: c.heading = _('All members') members = self.mf.getUsers(clear_credentials=True) c.members = [] # make sure to clean out some vars for m in members: if _filter == 'active' and not m.lockedMember: c.members.append(m) elif _filter == 'former' and m.lockedMember: c.members.append(m) elif _filter == 'all': c.members.append(m) return self.render('/members/viewAll.mako', template_context=c) except LookupError as e: import sys, traceback traceback.print_exc(file=sys.stdout) print 'Lookup error!' print e pass except NoResultFound: print 'No such sql user !' return 'ERROR 4x0'
def showOutstanding(self, showAll=0): """ Show which users still need to pay their membership fees and if a reminder has already been sent """ if showAll == '1': showAll = True else: showAll = False activeMembers = self.mf.getActiveMemberList() # Prepare add payment form c = TemplateContext() c.heading = _('Outstanding payments') c.members = [] c.member_ids = [] for uid in activeMembers: last_payment = None try: last_payment = self.db.query(Payment).filter( and_(Payment.uid == uid, Payment.verified == 1)).order_by( Payment.date.desc()).limit(1)[0] except: ''' Don't care if there is no payment ''' pass m = self.mf.getUser(uid) m.paymentGood = False if last_payment: d = last_payment.date today = datetime.datetime.now().date() if d.year > today.year or (d.year == today.year and d.month >= today.month): m.paymentGood = True if not m.paymentGood or showAll: c.members.append(m) c.member_ids.append(uid) return self.render('/payments/showOutstanding.mako', template_context=c)
def showOutstanding(self, showAll=0): """ Show which users still need to pay their membership fees and if a reminder has already been sent """ if showAll == '1': showAll = True else: showAll = False activeMembers = self.mf.getActiveMemberList() # Prepare add payment form c = TemplateContext() c.heading = _('Outstanding payments') c.members = [] c.member_ids = [] for uid in activeMembers: last_payment = None try: last_payment = self.db.query(Payment).filter(and_(Payment.uid == uid, Payment.verified == 1)).order_by(Payment.date.desc()).limit(1)[0] except: ''' Don't care if there is no payment ''' pass m = self.mf.getUser(uid) m.paymentGood = False if last_payment: d = last_payment.date today = datetime.datetime.now().date() if d.year > today.year or (d.year == today.year and d.month >= today.month): m.paymentGood = True if not m.paymentGood or showAll: c.members.append(m) c.member_ids.append(uid) return self.render('/payments/showOutstanding.mako', template_context=c)