def POST(self): postdata = web.input(fileselect={}, fileselect2={}) if session.get('logged_in', True): if postdata.formaction == 'createbughuntteammember': model.create_member(postdata.teamid, session.orgid, postdata.userfirstname, postdata.userlastname, postdata.useremail) elif postdata.formaction == 'userinactive': model.render_member_inactive(postdata.membershipid) elif postdata.formaction == 'createbughuntteam': model.create_team(postdata.teamname, postdata.teamshortname, session.orgid, session.userid) elif postdata.formaction == 'updatebughuntteam': model.update_team(postdata.updateteamid, postdata.updateteamname, postdata.updateteamshortname) elif postdata.formaction == 'createbughunt': orgid = model.create_organization(postdata.organizationname, session.userid, 'bughunt') session.orgid = orgid elif postdata.formaction == 'startbughunt': orgid = postdata.orgid model.commence_bughunt(orgid) elif postdata.formaction == 'stopbughunt': orgid = postdata.orgid model.stop_bughunt(orgid) elif postdata.formaction == 'generatecsvreportfororganization': statusstring = '' if hasattr(postdata, 'statusfieldopen'): statusstring = "'open'" if hasattr(postdata, 'statusfieldclosed'): statusstring = statusstring + ",'closed'" elif hasattr(postdata, 'statusfieldclosed'): statusstring = "'closed'" else: statusstring = "'open'" teamlist = [] teamsinorganization = model.get_teams_for_organization(session.orgid) for team in teamsinorganization: teamid = team['teamid'] if hasattr(postdata, str(teamid)): teamlist.append(teamid) if teamlist == []: teamlist.append('0') session.csvexportbugs = model.create_csv_report_for_organization_and_teams(session.userid, session.orgid, statusstring, teamlist) #return automatic download raise web.seeother('/adminbughunt?action=downloadcsvexportbugs&orgid='+str(session.orgid)) else: pass raise web.seeother('/adminbughunt?orgid='+str(session.orgid)) else: raise web.seeother('/login')
def GET(self): requestdata = web.input() if session.get('logged_in', True): teamandmemberlist = [] userdata = model.get_user_details_by_userid(session.userid) bughuntisactive = 0 organizationmysqldataset = model.get_user_adminbughunts(session.userid) session.organizationlist = [] session.orgid = '' totalnumberofbugs = 0 leadingteam = '' if organizationmysqldataset: for row in organizationmysqldataset: session.organizationlist.append([row["orgid"],row["organizationname"], row["active"]]) if hasattr(requestdata, 'orgid'): session.orgid = requestdata.orgid bughuntisactive = model.get_organization_status(session.orgid) model.set_last_used_organization_as_admin(session.userid, session.orgid) else: lastusedorgasadmin = model.get_last_used_organization_as_admin(session.userid) if lastusedorgasadmin == 0: session.orgid = session.organizationlist[0][0] else: session.orgid = lastusedorgasadmin bughuntisactive = session.organizationlist[0][2] teams = model.get_teams_for_organization(session.orgid) totalnumberofbugs = model.get_total_score_for_bughunt(session.orgid) datasetteams = model.get_teams_and_score_for_organization(session.orgid) if datasetteams: leadingteam = datasetteams[0]["teamname"] if teams: teamandmemberlist = self.populate_team_and_memberlist(teams) if hasattr(requestdata, 'action'): if requestdata.action == 'downloadcsvexportbugs': csvdownloadurl = session.csvexportbugs else: csvdownloadurl = '' return render.adminbughunt(session.organizationlist, session.orgid, teamandmemberlist, userdata, csvdownloadurl, bughuntisactive, totalnumberofbugs, leadingteam) else: raise web.seeother('/login')