Ejemplo n.º 1
0
    def delete(self, *args, **kwargs):
        # Get list of accounts.
        # This must happen before we call the super method,
        # as this will delete accounts that use this institute.
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            query = Account.objects.filter(person__groups=old_group)
            query = query.filter(date_deleted__isnull=True)
            accounts = list(query)
        else:
            accounts = []

        # delete the object
        log.delete(self, 'Deleted')
        super(Institute, self).delete(*args, **kwargs)

        # update datastore associations
        for account in accounts:
            from karaage.datastores import remove_account_from_institute
            remove_account_from_institute(account, self)

        # update the datastore
        from karaage.datastores import delete_institute
        delete_institute(self)
Ejemplo n.º 2
0
    def delete(self, *args, **kwargs):
        # ensure nothing connects to this project
        query = Account.objects.filter(default_project=self)
        query.update(default_project=None)

        # Get list of accounts.
        # We do this here to ensure nothing gets deleted when
        # we call the super method.
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            query = Account.objects.filter(person__groups=old_group)
            query = query.filter(date_deleted__isnull=True)
            accounts = list(query)
        else:
            accounts = []

        # delete the object
        log.delete(self, 'Deleted')
        super(Project, self).delete(*args, **kwargs)

        # update datastore associations
        for account in accounts:
            from karaage.datastores import remove_account_from_project
            remove_account_from_project(account, self)

        # update the datastore
        from karaage.datastores import delete_project
        delete_project(self)
Ejemplo n.º 3
0
    def delete(self, *args, **kwargs):
        # Get list of accounts.
        # This must happen before we call the super method,
        # as this will delete accounts that use this institute.
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            query = Account.objects.filter(person__groups=old_group)
            query = query.filter(date_deleted__isnull=True)
            accounts = list(query)
        else:
            accounts = []

        # delete the object
        log.delete(self, 'Deleted')
        super(Institute, self).delete(*args, **kwargs)

        # update datastore associations
        for account in accounts:
            from karaage.datastores import remove_account_from_institute
            remove_account_from_institute(account, self)

        # update the datastore
        from karaage.datastores import delete_institute
        delete_institute(self)
Ejemplo n.º 4
0
 def delete(self):
     # delete the object
     log.delete(self, 'Deleted')
     super(MachineCategory, self).delete()
     from karaage.datastores import set_mc_datastore
     old_datastore = self._datastore
     set_mc_datastore(self, old_datastore, None)
Ejemplo n.º 5
0
    def delete(self, *args, **kwargs):
        # ensure nothing connects to this project
        query = Account.objects.filter(default_project=self)
        query.update(default_project=None)

        # Get list of accounts.
        # We do this here to ensure nothing gets deleted when
        # we call the super method.
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            query = Account.objects.filter(person__groups=old_group)
            query = query.filter(date_deleted__isnull=True)
            accounts = list(query)
        else:
            accounts = []

        # delete the object
        log.delete(self, 'Deleted')
        super(Project, self).delete(*args, **kwargs)

        # update datastore associations
        for account in accounts:
            from karaage.datastores import remove_account_from_project
            remove_account_from_project(account, self)

        # update the datastore
        from karaage.datastores import delete_project
        delete_project(self)
Ejemplo n.º 6
0
 def delete(self, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     super(MachineCategory, self).delete(**kwargs)
     from karaage.datastores import set_mc_datastore
     old_datastore = self._datastore
     set_mc_datastore(self, old_datastore, None)
Ejemplo n.º 7
0
def project_application_delete(request, token):
    project_application = get_object_or_404(ProjectApplication,
                                            secret_token=token)

    if project_application.state in [
            ProjectApplication.COMPLETE, ProjectApplication.ARCHIVED
    ]:
        messages.error(request, "This application has already been approved")
        return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
    if project_application.state == ProjectApplication.DECLINED:
        messages.error(request, "This application was delined")
        return HttpResponseRedirect(request.META.get('HTTP_REFERER'))

    members = ProjectApplicationMember.objects.filter(
        project_application=project_application)
    supervisor = members.get(is_supervisor=True)

    if request.method == 'POST':
        project_application_id = project_application.id
        project_application.delete()
        log.delete(request.user,
                   'Deleted Resource Application %s' % project_application_id)
        messages.info(request, "%s deleted." % project_application)
        return HttpResponseRedirect(reverse('project_application_list'))

    return render(
        request,
        'project_application/admin_confirm_delete.html',
        {
            'project_application': project_application,
            'members': members,
            'supervisor': supervisor
        },
    )
Ejemplo n.º 8
0
    def delete(self, *args, **kwargs):
        # delete the object
        log.delete(self, 'Deleted')
        super(Person, self).delete(*args, **kwargs)

        # update the datastore
        from karaage.datastores import global_delete_person
        global_delete_person(self)
Ejemplo n.º 9
0
    def delete(self, *args, **kwargs):
        # delete the object
        log.delete(self, 'Deleted')
        super(Person, self).delete(*args, **kwargs)

        # update the datastore
        from karaage.datastores import global_delete_person
        global_delete_person(self)
Ejemplo n.º 10
0
 def delete(self, **kwargs):
     # delete the object
     log.delete(self.person, 'Account %s: Deleted' % self)
     super(Account, self).delete(**kwargs)
     if self.date_deleted is None:
         # delete the datastore
         from karaage.datastores import delete_account
         delete_account(self)
Ejemplo n.º 11
0
 def delete(self):
     # delete the object
     log.delete(self.person, 'Account %s: Deleted' % self)
     log.delete(self.machine_category, 'Account %s: Deleted' % self)
     super(Account, self).delete()
     if self.date_deleted is None:
         # delete the datastore
         from karaage.datastores import machine_category_delete_account
         machine_category_delete_account(self)
Ejemplo n.º 12
0
    def delete(self, *args, **kwargs):
        for person in self.members.all():
            _remove_person_from_group(person, self)

        # delete the object
        log.delete(self, 'Deleted')
        super(Group, self).delete(*args, **kwargs)

        # update the datastore
        from karaage.datastores import delete_group
        delete_group(self)
Ejemplo n.º 13
0
    def delete(self, *args, **kwargs):
        for person in self.members.all():
            _remove_person_from_group(person, self)

        # delete the object
        log.delete(self, 'Deleted')
        super(Group, self).delete(*args, **kwargs)

        # update the datastore
        from karaage.datastores import delete_group
        delete_group(self)
Ejemplo n.º 14
0
    def delete(self, *args, **kwargs):
        log.delete(self.institute, 'Quota %s: Deleted' % self.machine_category)

        from karaage.datastores import remove_accounts_from_institute
        query = Account.objects.filter(person__groups=self.institute.group)
        remove_accounts_from_institute(query, self.institute)

        super(InstituteQuota, self).delete(*args, **kwargs)

        from karaage.datastores import machine_category_delete_institute
        machine_category_delete_institute(self.institute,
                                          self.machine_category)
Ejemplo n.º 15
0
    def delete(self, *args, **kwargs):
        log.delete(
            self.project,
            'Quota %s: Deleted' % self.machine_category)

        from karaage.datastores import remove_accounts_from_project
        query = Account.objects.filter(person__groups=self.project.group)
        remove_accounts_from_project(query, self.project)

        super(ProjectQuota, self).delete(*args, **kwargs)

        from karaage.datastores import machine_category_delete_project
        machine_category_delete_project(self.project, self.machine_category)
Ejemplo n.º 16
0
def delete_version(request, version_id):
    version = get_object_or_404(SoftwareVersion, pk=version_id)

    if request.method == 'POST':
        version.delete()
        log.delete(version.software, 'Deleted version: %s' % version)

        messages.success(request,
                         "Version '%s' was deleted succesfully" % version)
        return HttpResponseRedirect(version.get_absolute_url())

    return render(template_name='kgsoftware/version_confirm_delete.html',
                  context=locals(),
                  request=request)
Ejemplo n.º 17
0
    def delete(self, *args, **kwargs):
        log.delete(
            self.institute,
            'Quota %s: Deleted' % self.machine_category)

        from karaage.datastores import remove_accounts_from_institute
        query = Account.objects.filter(person__groups=self.institute.group)
        remove_accounts_from_institute(query, self.institute)

        super(InstituteQuota, self).delete(*args, **kwargs)

        from karaage.datastores import machine_category_delete_institute
        machine_category_delete_institute(
            self.institute, self.machine_category)
Ejemplo n.º 18
0
def delete_version(request, version_id):
    version = get_object_or_404(SoftwareVersion, pk=version_id)

    if request.method == 'POST':
        version.delete()
        log.delete(version.software, 'Deleted version: %s' % version)

        messages.success(
            request, "Version '%s' was deleted succesfully" % version)
        return HttpResponseRedirect(version.get_absolute_url())

    return render_to_response(
        'software/version_confirm_delete.html',
        locals(),
        context_instance=RequestContext(request))
Ejemplo n.º 19
0
def delete_version(request, version_id):
    version = get_object_or_404(SoftwareVersion, pk=version_id)

    if request.method == 'POST':
        version.delete()
        log.delete(version.software, 'Deleted version: %s' % version)

        messages.success(
            request, "Version '%s' was deleted succesfully" % version)
        return HttpResponseRedirect(version.get_absolute_url())

    return render(
        template_name='kgsoftware/version_confirm_delete.html',
        context=locals(),
        request=request)
Ejemplo n.º 20
0
    def delete(self, *args, **kwargs):
        # delete the object
        log.delete(self, 'Deleted')
        super(Institute, self).delete(*args, **kwargs)

        # update datastore associations
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            from karaage.datastores import remove_accounts_from_institute
            query = Account.objects.filter(person__groups=old_group)
            remove_accounts_from_institute(query, self)

        # update the datastore
        from karaage.datastores import machine_category_delete_institute
        machine_category_delete_institute(self)
Ejemplo n.º 21
0
    def delete(self, *args, **kwargs):
        # delete the object
        log.delete(self, 'Deleted')
        super(Institute, self).delete(*args, **kwargs)

        # update datastore associations
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            from karaage.datastores import remove_accounts_from_institute
            query = Account.objects.filter(person__groups=old_group)
            remove_accounts_from_institute(query, self)

        # update the datastore
        from karaage.datastores import machine_category_delete_institute
        machine_category_delete_institute(self)
Ejemplo n.º 22
0
    def delete(self, *args, **kwargs):
        # ensure nothing connects to this project
        query = Account.objects.filter(default_project=self)
        query.update(default_project=None)

        # delete the object
        log.delete(self, 'Deleted')
        super(Project, self).delete(*args, **kwargs)

        # update datastore associations
        old_group_pk = self._tracker.previous("group_id")
        if old_group_pk is not None:
            old_group = Group.objects.get(pk=old_group_pk)
            from karaage.datastores import remove_accounts_from_project
            query = Account.objects.filter(person__groups=old_group)
            remove_accounts_from_project(query, self)

        # update the datastore
        from karaage.datastores import machine_category_delete_project
        machine_category_delete_project(self)
Ejemplo n.º 23
0
 def delete(self, *args, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     super(Software, self).delete(*args, **kwargs)
Ejemplo n.º 24
0
 def delete(self, *args, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     super(Person, self).delete(*args, **kwargs)
Ejemplo n.º 25
0
    def save(self, *args, **kwargs):
        created = self.pk is None

        # save the object
        super(Account, self).save(*args, **kwargs)

        if created:
            log.add(
                self.person,
                'Account %s: Created on %s' % (self, self.machine_category))
            log.add(
                self.machine_category,
                'Account %s: Created on %s' % (self, self.machine_category))
        for field in self._tracker.changed():
            if field != "password":
                log.change(
                    self.person, 'Account %s: Changed %s to %s' %
                    (self, field, getattr(self, field)))
                log.change(
                    self.machine_category, 'Account %s: Changed %s to %s' %
                    (self, field, getattr(self, field)))

        # check if machine_category changed
        moved = False
        if self._tracker.has_changed('machine_category_id'):
            old_machine_category_pk = self._tracker.previous(
                'machine_category_id')
            if old_machine_category_pk is not None:
                old_machine_category = MachineCategory.objects.get(
                    pk=old_machine_category_pk)
                old_username = self._tracker.previous('username')

                new_machine_category = self.machine_category
                new_username = self.username

                # set old values so we can delete old datastore
                self.machine_category = old_machine_category
                self.username = old_username

                from karaage.datastores import machine_category_delete_account
                machine_category_delete_account(self)
                log.change(self.person, 'Account %s: Removed account' % self)
                log.change(self.machine_category,
                           'Account %s: Removed account' % self)

                # set new values again
                self.machine_category = new_machine_category
                self.username = new_username

                log.change(self.person, 'Account %s: Added account' % self)
                log.change(self.machine_category,
                           'Account %s: Added account' % self)

                moved = True

        # check if it was renamed
        if self._tracker.has_changed('username'):
            old_username = self._tracker.previous('username')
            if old_username is not None:
                new_username = self.username
                if self.date_deleted is None and not moved:
                    from karaage.datastores \
                        import machine_category_set_account_username
                    machine_category_set_account_username(
                        self, old_username, new_username)
                log.change(
                    self.person, 'Account %s: Changed username from %s to %s' %
                    (self, old_username, new_username))
                log.change(
                    self.machine_category,
                    'Account %s: Changed username from %s to %s' %
                    (self, old_username, new_username))

        # check if deleted status changed
        if self._tracker.has_changed('date_deleted'):
            if self.date_deleted is not None:
                # account is deactivated
                from karaage.datastores import machine_category_delete_account
                machine_category_delete_account(self)
                log.delete(self.person,
                           'Account %s: Deactivated account' % self)
                log.delete(self.machine_category,
                           'Account %s: Deactivated account' % self)
                # deleted
            else:
                # account is reactivated
                log.add(self.person, 'Account %s: Activated' % self)
                log.add(self.machine_category, 'Account %s: Activated' % self)

        # makes sense to lock non-existant account
        if self.date_deleted is not None:
            self.login_enabled = False

        # update the datastore
        if self.date_deleted is None:
            from karaage.datastores import machine_category_save_account
            machine_category_save_account(self)

            if self._password is not None:
                from karaage.datastores \
                    import machine_category_set_account_password
                machine_category_set_account_password(self, self._password)
                log.change(self.person, 'Account %s: Changed Password' % self)
                log.change(self.machine_category,
                           'Account %s: Changed Password' % self)
                self._password = None
Ejemplo n.º 26
0
 def delete(self, *args, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     log.delete(self.category, 'Machine %s: Deleted' % self)
     super(Machine, self).delete(*args, **kwargs)
Ejemplo n.º 27
0
 def delete(self, *args, **kwargs):
     log.delete(self, 'Deleted')
     super(Application, self).delete(*args, **kwargs)
Ejemplo n.º 28
0
    def delete(self, *args, **kwargs):
        super(InstituteDelegate, self).delete(*args, **kwargs)

        log.delete(
            self.institute,
            'Delegate %s: Deleted' % self.person)
Ejemplo n.º 29
0
    def delete(self, *args, **kwargs):
        super(InstituteDelegate, self).delete(*args, **kwargs)

        log.delete(self.institute, 'Delegate %s: Deleted' % self.person)
Ejemplo n.º 30
0
 def delete(self, *args, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     log.delete(self.category, 'Machine %s: Deleted' % self)
     super(Machine, self).delete(*args, **kwargs)
Ejemplo n.º 31
0
    def save(self, *args, **kwargs):
        created = self.pk is None

        # save the object
        super(Account, self).save(*args, **kwargs)

        if created:
            log.add(
                self.person,
                'Account %s: Created on %s' % (self, self.machine_category))
            log.add(
                self.machine_category,
                'Account %s: Created on %s' % (self, self.machine_category))
        for field in self._tracker.changed():
            if field != "password":
                log.change(
                    self.person,
                    'Account %s: Changed %s to %s'
                    % (self, field,  getattr(self, field)))
                log.change(
                    self.machine_category,
                    'Account %s: Changed %s to %s'
                    % (self, field,  getattr(self, field)))

        # check if machine_category changed
        moved = False
        if self._tracker.has_changed('machine_category_id'):
            old_machine_category_pk = self._tracker.previous(
                'machine_category_id')
            if old_machine_category_pk is not None:
                old_machine_category = MachineCategory.objects.get(
                    pk=old_machine_category_pk)
                old_username = self._tracker.previous('username')

                new_machine_category = self.machine_category
                new_username = self.username

                # set old values so we can delete old datastore
                self.machine_category = old_machine_category
                self.username = old_username

                from karaage.datastores import machine_category_delete_account
                machine_category_delete_account(self)
                log.change(
                    self.person,
                    'Account %s: Removed account' % self)
                log.change(
                    self.machine_category,
                    'Account %s: Removed account' % self)

                # set new values again
                self.machine_category = new_machine_category
                self.username = new_username

                log.change(
                    self.person,
                    'Account %s: Added account' % self)
                log.change(
                    self.machine_category,
                    'Account %s: Added account' % self)

                moved = True

        # check if it was renamed
        if self._tracker.has_changed('username'):
            old_username = self._tracker.previous('username')
            if old_username is not None:
                new_username = self.username
                if self.date_deleted is None and not moved:
                    from karaage.datastores \
                        import machine_category_set_account_username
                    machine_category_set_account_username(
                        self, old_username, new_username)
                log.change(
                    self.person,
                    'Account %s: Changed username from %s to %s' %
                    (self, old_username, new_username))
                log.change(
                    self.machine_category,
                    'Account %s: Changed username from %s to %s' %
                    (self, old_username, new_username))

        # check if deleted status changed
        if self._tracker.has_changed('date_deleted'):
            if self.date_deleted is not None:
                # account is deactivated
                from karaage.datastores import machine_category_delete_account
                machine_category_delete_account(self)
                log.delete(
                    self.person,
                    'Account %s: Deactivated account' % self)
                log.delete(
                    self.machine_category,
                    'Account %s: Deactivated account' % self)
                # deleted
            else:
                # account is reactivated
                log.add(
                    self.person,
                    'Account %s: Activated' % self)
                log.add(
                    self.machine_category,
                    'Account %s: Activated' % self)

        # makes sense to lock non-existant account
        if self.date_deleted is not None:
            self.login_enabled = False

        # update the datastore
        if self.date_deleted is None:
            from karaage.datastores import machine_category_save_account
            machine_category_save_account(self)

            if self._password is not None:
                from karaage.datastores \
                    import machine_category_set_account_password
                machine_category_set_account_password(self, self._password)
                log.change(
                    self.person,
                    'Account %s: Changed Password' % self)
                log.change(
                    self.machine_category,
                    'Account %s: Changed Password' % self)
                self._password = None
Ejemplo n.º 32
0
 def delete(self, *args, **kwargs):
     # delete the object
     log.delete(self, 'Deleted')
     super(Person, self).delete(*args, **kwargs)
Ejemplo n.º 33
0
 def delete(self, *args, **kwargs):
     log.delete(self, 'Deleted')
     super(Application, self).delete(*args, **kwargs)
Ejemplo n.º 34
0
    def save(self, *args, **kwargs):
        created = self.pk is None

        # save the object
        super(Account, self).save(*args, **kwargs)

        if created:
            log.add(
                self.person,
                'Account %s: Created' % self)
        for field in self._tracker.changed():
            if field != "password":
                log.change(
                    self.person,
                    'Account %s: Changed %s to %s'
                    % (self, field, getattr(self, field)))

        # check if it was renamed
        if self._tracker.has_changed('username'):
            old_username = self._tracker.previous('username')
            if old_username is not None:
                new_username = self.username
                if self.date_deleted is None:
                    from karaage.datastores import set_account_username
                    set_account_username(self, old_username, new_username)
                log.change(
                    self.person,
                    'Account %s: Changed username from %s to %s' %
                    (self, old_username, new_username))

        # check if deleted status changed
        if self._tracker.has_changed('date_deleted'):
            if self.date_deleted is not None:
                # account is deactivated
                from karaage.datastores import delete_account
                delete_account(self)
                log.delete(
                    self.person,
                    'Account %s: Deactivated account' % self)
                # deleted
            else:
                # account is reactivated
                log.add(
                    self.person,
                    'Account %s: Activated' % self)

        # makes sense to lock non-existant account
        if self.date_deleted is not None:
            self.login_enabled = False

        # update the datastore
        if self.date_deleted is None:
            from karaage.datastores import save_account
            save_account(self)

            if self._password is not None:
                from karaage.datastores import set_account_password
                set_account_password(self, self._password)
                log.change(
                    self.person,
                    'Account %s: Changed Password' % self)
                self._password = None