Exemplo n.º 1
0
def run(cwl):
    try:
        user = User.objects.get(cwl=cwl)
        user_certs = api.get_user_certs(user)
        missing_certs = api.get_missing_certs(user)
        expired_certs = api.get_expired_certs(user)

        print("User %s" % user.cwl)
        print("Has Certs...")
        for uc in user_certs:
            print(uc['name'])

        print("")

        print("Has Expired Certs")
        for ec in expired_certs:
            print(ec['name'])

        print("")

        print("Is Missing Certs")
        for mc in missing_certs:
            print(mc['name'])

        print("")

    except (User.DoesNotExist):
        print("User %s does not exist" % cwl)
        print("Available users:")
        for user in User.objects.all():
            print(user.cwl)
Exemplo n.º 2
0
 def test2Certs1Expired(self):
     data = urlencode({
         'name': 'testexpire',
         'expiry_in_years': 1,
         'redirect_url': '/certificates/'
     })
     self.client.post('/api/certificates/',
                      content_type="application/x-www-form-urlencoded",
                      data=data)
     certexpired = list(
         filter(lambda x: x['name'] == 'testexpire', api.get_certs()))[0]
     cert = list(
         filter(lambda x: x['name'] != 'testexpire', api.get_certs()))[0]
     user = api.get_user_by_username('admin')
     api.update_or_create_user_cert(user_id=user.id,
                                    cert_id=certexpired['id'],
                                    cert_file='testCert.pdf',
                                    completion_date="2017-07-03",
                                    expiry_date="2018-07-03")
     api.update_or_create_user_cert(user_id=user.id,
                                    cert_id=cert['id'],
                                    cert_file='testCert.pdf',
                                    completion_date="2018-07-03",
                                    expiry_date="2018-07-03")
     expiredCerts = api.get_expired_certs(user.id)
     certsAll = api.get_user_certs(user.id)
     self.assertEqual(expiredCerts[0]['name'], 'testexpire')
     self.assertEqual(len(certsAll), 2)
Exemplo n.º 3
0
def user_report(request, user_id):
    """ Download user's report as PDF """

    app_user = uApi.get_user(user_id)

    missing_cert_list = api.get_missing_certs(user_id)
    user_cert_list = api.get_user_certs(user_id)
    user_cert_ids = set([uc['id'] for uc in user_cert_list])
    expired_cert_ids = set([ec['id'] for ec in api.get_expired_certs(user_id)])

    user_lab_list = api.get_user_labs(user_id)
    user_labs = []
    for user_lab in user_lab_list:
        lab_certs = api.get_lab_certs(user_lab['id'])
        missing_lab_certs = []
        for lc in lab_certs:
            if lc['id'] not in user_cert_ids or lc['id'] in expired_cert_ids:
                missing_lab_certs.append(lc)
        user_labs.append((user_lab, lab_certs, missing_lab_certs))

    for uc in user_cert_list:
        no_expiry_date = False
        if uc['completion_date'] == uc['expiry_date']:
            no_expiry_date = True
        uc['no_expiry_date'] = no_expiry_date

    return render_to_pdf(
        'users/user_report.html', {
            'app_user': app_user,
            'user_labs': user_labs,
            'user_cert_list': user_cert_list
        })
Exemplo n.º 4
0
    def get(self, request, *args, **kwargs):
        user_id = kwargs['user_id']

        if request.user.id != user_id:

            # Add next string to session
            if request.GET.get('next'):
                next = request.get_full_path().split('next=')
                request.session['next'] = next[1]

        viewing = {}
        if request.user.id != user_id and request.session.get('next'):
            viewing = uApi.get_viewing(request.session.get('next'))

        return render(
            request, 'users/user_details.html', {
                'app_user':
                uApi.get_user(kwargs['user_id']),
                'user_lab_list':
                api.get_user_labs(user_id),
                'pi_user_lab_list':
                api.get_user_labs(user_id, is_principal_investigator=True),
                'user_certs':
                api.get_user_certs_404(user_id),
                'missing_cert_list':
                api.get_missing_certs(user_id),
                'expired_cert_list':
                api.get_expired_certs(user_id),
                'welcome_message':
                uApi.welcome_message(),
                'viewing':
                viewing
            })
Exemplo n.º 5
0
    def get(self, request, *args, **kwargs):
        user_id = kwargs['user_id']
        app_user = uApi.get_user(user_id)

        viewing = {}
        if request.user.id != user_id and request.session.get('next'):
            viewing = uApi.get_viewing(request.session.get('next'))

        return render(
            request, 'trainings/user_trainings.html', {
                'app_user': app_user,
                'user_cert_list': api.get_user_certs(user_id),
                'missing_cert_list': api.get_missing_certs(user_id),
                'expired_cert_list': api.get_expired_certs(user_id),
                'form': self.form_class(initial={'user': user_id}),
                'viewing': viewing
            })