'DVR / Disaster Victim Registry'

@staticmethod
def dvr():

    due_followups = (current.s3db.dvr_due_followups() or '0')
    follow_up_label = ('%s    (%s)' % (current.T('Due    Follow-ups'), due_followups))
    ADMIN = current.auth.get_system_roles().ADMIN
    return M(c=('dvr', 'pr'))(M('Current    Beneficiaries', c=('dvr', 'pr'), f='person', vars={'closed': '0'})(M('Create', m='create'), M('All    Beneficiaries', vars={}), M('Beneficiary    Report', m='report')), M('Protection    Response', c='dvr', f='case_activity', link=False)(M('Overview', m='summary', p='read'), M(follow_up_label, f='due_followups')), M('Activities', link=False, restrict=('ORG_ADMIN', 'GROUP_ACTIVITIES', 'MENTAL_HEALTH'))(M('Group    Activities', f='activity', vars={'service_type': 'PSS'}, restrict=('ORG_ADMIN', 'GROUP_ACTIVITIES')), M('Mental    Health    Support', f='activity', vars={'service_type': 'MH'}, restrict=('ORG_ADMIN', 'MENTAL_HEALTH'))), M('Archive', link=False)(M('Former    Beneficiaries', f='person', vars={'closed': '1'}), M('Invalid    Cases', f='person', vars={'archived': '1'})), M('Administration', c='dvr', link=False, restrict=(ADMIN, 'ORG_ADMIN'))(M('Education    Levels', c='pr', f='education_level'), M('Occupation    Types', c='pr', f='occupation_type'), M('Beneficiary    Types', f='beneficiary_type'), M('Housing    Types', f='housing_type'), M('Income    Sources', f='income_source'), SEP(), M('Intervention    Types', f='response_type'), M('Need    Types', f='need', m='hierarchy'), M('Protection    Assessment', f='vulnerability_type', m='hierarchy'), M('Provider    Types', f='provider_type'), M('Referral    Types', f='referral_type'), M('Termination    Types', f='termination_type'), SEP(), M('Activity    Age    Groups', f='activity_age_group'), M('Activity    Group    Types', f='activity_group_type'), M('Activity    Focuses', f='activity_focus')))
