def writeContent(self): wr = self.writeln wr('<h1>%s</h1>' % (self.title())) form = self.request().fields() if self.request()._environ.get('REQUEST_METHOD') == 'POST': set_journal_access(form) self.response().sendRedirect('UM_Journal?saved=1') else: if form.get('saved'): self.render_special_msg('Journal access settings saved.') JOURNALIST = get_journal_access() if not JOURNALIST: JOURNALIST = [] all = get_all_users() aks = all.keys() aks = sorted(aks, key=lambda x: (x.isdigit() and float(x)) or x.lower()) wr('<form action="UM_Journal" method="POST">') wr('<table>') wr('<tr>') wr('<th>Name') wr('<th colspan="2">Allow Journal Access') count = 0 for ak in aks: count += 1 ud = all[ak] username = ud.get('username') wr('<tr class="c"') if not count % 3: wr('style="background-color: #E0E0E0;"') wr('>') wr('<td class="t12">%s, %s' % (ud.get('sn'), ud.get('fn'))) wr('<td>') wr('<label for="%s_journal_yes"><input type="radio" name="%s" id="%s_journal_yes" value="yes"' % (username, username, username)) if username in JOURNALIST: wr(' checked="checked"') wr('> Yes</label>') wr('<td>') wr('<label for="%s_journal_no"><input type="radio" name="%s" id="%s_journal_no" value="no"' % (username, username, username)) if username not in JOURNALIST: wr(' checked="checked"') wr('> No</label>') wr('<tr><td colspan="3" style="text-align: center;">') wr('%s' % (submit('Save Journal Access Settings'))) wr('</table>') wr('</form>')
def writeContent(self): wr = self.writeln wr('<h1>%s</h1>' % (self.title())) form = self.request().fields() if self.request()._environ.get('REQUEST_METHOD') == 'POST': set_journal_access(form) self.response().sendRedirect('UM_Journal?saved=1') else: if form.get('saved'): self.render_special_msg('Journal access settings saved.') JOURNALIST = get_journal_access() if not JOURNALIST: JOURNALIST = [] all = get_all_users() aks = all.keys() aks = sorted(aks, key=lambda x: (x.isdigit() and float(x)) or x.lower()) wr('<form action="UM_Journal" method="POST">') wr('<table>') wr('<tr>') wr('<th>Name') wr('<th colspan="2">Allow Journal Access') count = 0 for ak in aks: count += 1 ud = all[ak] username = ud.get('username') wr('<tr class="c"') if not count % 3: wr('style="background-color: #E0E0E0;"') wr('>') wr('<td class="t12">%s, %s' % ( ud.get('sn'), ud.get('fn') )) wr('<td>') wr('<label for="%s_journal_yes"><input type="radio" name="%s" id="%s_journal_yes" value="yes"' % (username, username, username)) if username in JOURNALIST: wr(' checked="checked"') wr('> Yes</label>') wr('<td>') wr('<label for="%s_journal_no"><input type="radio" name="%s" id="%s_journal_no" value="no"' % (username, username, username)) if username not in JOURNALIST: wr(' checked="checked"') wr('> No</label>') wr('<tr><td colspan="3" style="text-align: center;">') wr('%s' % (submit('Save Journal Access Settings'))) wr('</table>') wr('</form>')
def writeContent(self): wr = self.writeln wr('<div class="button">') wr('<a href="UM_Journal">ACVAA Journal Access</a>') wr('</div>') wr('<h1>%s</h1>' % (self.title())) qs = self.request().fields() if qs.get('delok'): self.render_special_msg('User account %s deleted.' % (qs.get('delok'))) if qs.get('rolok'): self.render_special_msg('User roles for %s saved.' % (qs.get('rolok'))) all = get_all_users() aks = all.keys() aks = sorted(aks, key=lambda x: (x.isdigit() and float(x)) or x.lower()) # Create bookmarks & jump links. NAVLETTERS, DISPLAYLETTERS = [], [] for namestring in aks: firstletter = namestring[0].lower() if firstletter not in NAVLETTERS: NAVLETTERS.append(firstletter) wr('<P>') for letter in NAVLETTERS: wr('<a href="#%s">%s</a>' % (letter, letter.capitalize())) wr('</P>') wr(''' <table border="1"><tr><th> <th colspan="6">Roles <tr><th>Name<th>A<th>D<th>R<th>E<th>H<th>M<th>Actions ''') for ak in aks: ud = all[ak] wr('<tr class="c">') wr('<td class="t12">') firstletter = ak[0].lower() if firstletter not in DISPLAYLETTERS: wr('<a name="%s"></a>' % (firstletter)) DISPLAYLETTERS.append(firstletter) wr('%s, %s' % ( ud.get('sn'), ud.get('fn') )) ROLEICONS = ( ('admin', 'fa-pencil'), ('diplomate', 'fa-user-md'), ('resident', 'fa-graduation-cap'), ('emeritus', 'fa-trophy'), ('honorary', 'fa-certificate'), ('memoriam', 'fa-cloud-upload'), ) for role, icon in ROLEICONS: color = '#E0E0E0' if role in ud.get('roles', []): color = '#006600' wr('<td><i class="fa %s" style="color: %s;"></i>' % (icon, color)) if 'master' in ud.get('roles'): wr('<td class="t10 hint" colspan="4">You cannot manage the master account.</td>') elif self.request().cookies().get('username') == ud.get('username'): wr('<td class="t10 hint" colspan="4">You cannot manage your own account.</td>') else: un = ud.get('username') wr('''<td> <select class="form-control" onChange="javascript:window.location = this.options[this.selectedIndex].value"> <option value="#">Select...</option> <option value="UM_Act_as_User?u=%s">Act as User</option> <option value="UM_Roles_Form?u=%s">Edit Roles</option> <option value="UM_Reset_User_Pass?u=%s">Reset Password</option> <option value="UM_Delete_User?u=%s">Delete User</option> </select> ''' % (un, un, un, un)) wr('</table>')
def writeContent(self): wr = self.writeln wr('<div class="button">') wr('<a href="UM_Journal">ACVAA Journal Access</a>') wr('</div>') wr('<h1>%s</h1>' % (self.title())) qs = self.request().fields() if qs.get('delok'): self.render_special_msg('User account %s deleted.' % (qs.get('delok'))) if qs.get('rolok'): self.render_special_msg('User roles for %s saved.' % (qs.get('rolok'))) all = get_all_users() aks = all.keys() aks = sorted(aks, key=lambda x: (x.isdigit() and float(x)) or x.lower()) # Create bookmarks & jump links. NAVLETTERS, DISPLAYLETTERS = [], [] for namestring in aks: firstletter = namestring[0].lower() if firstletter not in NAVLETTERS: NAVLETTERS.append(firstletter) wr('<P>') for letter in NAVLETTERS: wr('<a href="#%s">%s</a>' % (letter, letter.capitalize())) wr('</P>') wr(''' <table border="1"><tr><th> <th colspan="6">Roles <tr><th>Name<th>A<th>D<th>R<th>E<th>H<th>M<th>Actions ''') for ak in aks: ud = all[ak] wr('<tr class="c">') wr('<td class="t12">') firstletter = ak[0].lower() if firstletter not in DISPLAYLETTERS: wr('<a name="%s"></a>' % (firstletter)) DISPLAYLETTERS.append(firstletter) wr('%s, %s' % (ud.get('sn'), ud.get('fn'))) ROLEICONS = ( ('admin', 'fa-pencil'), ('diplomate', 'fa-user-md'), ('resident', 'fa-graduation-cap'), ('emeritus', 'fa-trophy'), ('honorary', 'fa-certificate'), ('memoriam', 'fa-cloud-upload'), ) for role, icon in ROLEICONS: color = '#E0E0E0' if role in ud.get('roles', []): color = '#006600' wr('<td><i class="fa %s" style="color: %s;"></i>' % (icon, color)) if 'master' in ud.get('roles'): wr('<td class="t10 hint" colspan="4">You cannot manage the master account.</td>' ) elif self.request().cookies().get('username') == ud.get( 'username'): wr('<td class="t10 hint" colspan="4">You cannot manage your own account.</td>' ) else: un = ud.get('username') wr('''<td> <select class="form-control" onChange="javascript:window.location = this.options[this.selectedIndex].value"> <option value="#">Select...</option> <option value="UM_Act_as_User?u=%s">Act as User</option> <option value="UM_Roles_Form?u=%s">Edit Roles</option> <option value="UM_Reset_User_Pass?u=%s">Reset Password</option> <option value="UM_Delete_User?u=%s">Delete User</option> </select> ''' % (un, un, un, un)) wr('</table>')