public function getDisplayedAuthors( $locale = self::FALLBACK_LOCALE )
    {
        $result = array();
        $mapper = $this->getMapper();

        foreach ( $this->authors as $author )
        {
            if ( $mapper && ! empty( $author['email'] ) &&
                 ( $user = $mapper->getUserByEmail( $author['email'] ) ) )
            {
                $insert = array(
                    'name' => $user->displayName,
                    'url'  => '/app/' . $locale . '/user/view/' . rawurlencode( $user->displayName ),
                );
            }
            else if ( ! empty( $author['name'] ) || ! empty( $author['email'] ) )
            {
                $insert = array(
                    'name' => isset( $author['name'] )
                            ? $author['name']
                            : strstr( $author['email'], '@', true ),
                    'url'  => isset( $author['homepage'] )
                            ? $author['homepage']
                            : null,
                );
            }
            else
            {
                continue;
            }

            $result[] = $insert;
        }

        return $result;
    }