def create_adminactivities_menu(req, uid, navmenuid, ln="en"): """Create admin activities menu. @param req: request object @param uid: user id @type uid: int @param navmenuid: the section of the website this page belongs (search, submit, baskets, etc.) @type navmenuid: string @param ln: language @type ln: string @return: HTML menu of the user activities @rtype: string """ _ = gettext_set_language(ln) if req: if req.subprocess_env.has_key('HTTPS') \ and req.subprocess_env['HTTPS'] == 'on': url_referer = CFG_SITE_SECURE_URL + req.unparsed_uri else: url_referer = CFG_SITE_URL + req.unparsed_uri if '/youraccount/logout' in url_referer: url_referer = '' else: url_referer = CFG_SITE_URL user_info = collect_user_info(req) activities = acc_find_possible_activities(user_info, ln) # For BibEdit and BibDocFile menu items, take into consideration # current record whenever possible if activities.has_key(_("Run Record Editor")) or \ activities.has_key(_("Run Document File Manager")) and \ user_info['uri'].startswith('/' + CFG_SITE_RECORD + '/'): try: # Get record ID and try to cast it to an int current_record_id = int(urlparse.urlparse(user_info['uri'])[2].split('/')[2]) except: pass else: if activities.has_key(_("Run Record Editor")): activities[_("Run Record Editor")] = activities[_("Run Record Editor")] + '&#state=edit&recid=' + str(current_record_id) if activities.has_key(_("Run Document File Manager")): activities[_("Run Document File Manager")] = activities[_("Run Document File Manager")] + '&recid=' + str(current_record_id) try: return tmpl.tmpl_create_adminactivities_menu( ln=ln, selected=navmenuid == 'admin', url_referer=url_referer, guest=isGuestUser(uid), username=get_nickname_or_email(uid), submitter=user_info['precached_viewsubmissions'], referee=user_info['precached_useapprove'], admin=user_info['precached_useadmin'], usebaskets=user_info['precached_usebaskets'], usemessages=user_info['precached_usemessages'], usealerts=user_info['precached_usealerts'], usegroups=user_info['precached_usegroups'], useloans=user_info['precached_useloans'], usestats=user_info['precached_usestats'], activities=activities ) except OperationalError: return ""
def create_adminactivities_menu(req, uid, navmenuid, ln="en"): """Create admin activities menu. @param req: request object @param uid: user id @type uid: int @param navmenuid: the section of the website this page belongs (search, submit, baskets, etc.) @type navmenuid: string @param ln: language @type ln: string @return: HTML menu of the user activities @rtype: string """ _ = gettext_set_language(ln) if req: if req.subprocess_env.has_key('HTTPS') \ and req.subprocess_env['HTTPS'] == 'on': url_referer = CFG_SITE_SECURE_URL + req.unparsed_uri else: url_referer = CFG_SITE_URL + req.unparsed_uri if '/youraccount/logout' in url_referer: url_referer = '' else: url_referer = CFG_SITE_URL user_info = collect_user_info(req) activities = acc_find_possible_activities(user_info, ln) # For BibEdit and BibDocFile menu items, take into consideration # current record whenever possible if activities.has_key(_("Run Record Editor")) or \ activities.has_key(_("Run Document File Manager")) and \ user_info['uri'].startswith('/record/'): try: # Get record ID and try to cast it to an int current_record_id = int( urlparse.urlparse(user_info['uri'])[2].split('/')[2]) except: pass else: if activities.has_key(_("Run Record Editor")): activities[_("Run Record Editor")] = activities[_( "Run Record Editor" )] + '&#state=edit&recid=' + str(current_record_id) if activities.has_key(_("Run Document File Manager")): activities[_("Run Document File Manager")] = activities[_( "Run Document File Manager")] + '&recid=' + str( current_record_id) try: return tmpl.tmpl_create_adminactivities_menu( ln=ln, selected=navmenuid == 'admin', url_referer=url_referer, guest=isGuestUser(uid), username=get_nickname_or_email(uid), submitter=user_info['precached_viewsubmissions'], referee=user_info['precached_useapprove'], admin=user_info['precached_useadmin'], usebaskets=user_info['precached_usebaskets'], usemessages=user_info['precached_usemessages'], usealerts=user_info['precached_usealerts'], usegroups=user_info['precached_usegroups'], useloans=user_info['precached_useloans'], usestats=user_info['precached_usestats'], activities=activities) except OperationalError: return ""
def isUserAdmin(user_info): """Return True if the user has some admin rights; False otherwise.""" return acc_find_possible_activities(user_info) != {}