<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_readonly_fields(self, request, obj=None):
 """ Return readonly fields by user's permissions. """

        readonly_fields = list(super(EntryAdmin, self).get_readonly_fields(
            request, obj))

        if not request.user.has_perm('zinnia.can_change_status'):
            readonly_fields.append('status')

        if not request.user.has_perm('zinnia.can_change_author'):
            readonly_fields.append('authors')

        return readonly_fields