def get_primary_contributors(self):
        """
        Returns a list of primary contributors, with primary being defined
        as those contributors that have the highest role assigned (in terms
        of priority). Only permitted contributors are returned.
        """
        primary_credits = []
        credits = self.credits.exclude(credit_option=None).order_by(
            'credit_option__role_priority'
        )
        if credits:
            primary_role_priority = credits[0].credit_option.role_priority
            for credit in credits:
                if credit.credit_option.role_priority == primary_role_priority:
                    primary_credits.append(credit)

        contributors = []
        for credit in primary_credits:
            contributor = credit.contributor
            if contributor.is_permitted:
                contributors.append(contributor)

        return contributors
def get_primary_contributors ( self ) : primary_credits = [ ] credits = self . credits . exclude ( credit_option = None ) . order_by ( 'credit_option__role_priority' ) if credits : primary_role_priority = credits [ 0 ] . credit_option . role_priority for credit in credits : if credit . credit_option . role_priority == primary_role_priority : primary_credits . append ( credit ) contributors = [ ] for credit in primary_credits : contributor = credit . contributor if contributor . is_permitted : contributors . append ( contributor ) return contributors
Returns a list of primary contributors, with primary being defined
        as those contributors that have the highest role assigned (in terms
        of priority). Only permitted contributors are returned.