Помощь Вопрос по Resource Manager

maxi2013

Мой дом здесь!
Регистрация
9 Янв 2013
Сообщения
511
Реакции
217
Подскажите пожалуйста
Как сделать так, чтобы при нажатии на кнопку "Файл недоступен" в разделе "Ресурсы" нас НЕ направляло на стандартную страницу, где написано "У Вас нет прав для просмотра этой страницы или для выполнения этого действия", а просто всплывало стандартное фреймовое окно"error"(вроде так) где был свой текст, например "Для того чтобы скачать файл ван нужно быть Проверенным пользователем".
 
стандартным средствами никак. Нужно изменять код плагина. + добавлять переводы.. возможно что-то еще.
 
Поковырялся и вот что думаю
Нужно подправить одну из этих функций, а может и обе (это функции, которые отвечают, за то "кто может качать ресурсы, их версии":(

\library\XenResource\Model\Version.php
PHP:
public function canDownloadVersion(array $version, array $resource, array $category, &$errorPhraseKey = '', array $viewingUser = null, array $categoryPermissions = null)
    {
        $this->standardizeViewingUserReferenceForCategory($category, $viewingUser, $categoryPermissions);

        if (!$this->_getResourceModel()->canDownloadResource($resource, $category, $errorPhraseKey, $viewingUser))
        {
            return false;
        }

        if ($version['version_state'] == 'moderated')
        {
            if (!XenForo_Permission::hasContentPermission($categoryPermissions, 'viewModerated'))
            {
                if (!$viewingUser['user_id'] || $viewingUser['user_id'] != $resource['user_id'])
                {
                    return false;
                }
            }
        }
        else if ($version['version_state'] == 'deleted')
        {
            if (!XenForo_Permission::hasContentPermission($categoryPermissions, 'viewDeleted'))
            {
                return false;
            }
        }

        return true;
    }

а вторая
\library\XenResource\Model\Resource.php
PHP:
public function canDownloadResource(array $resource, array $category, &$errorPhraseKey = '', array $viewingUser = null, array $categoryPermissions = null)
    {
        $this->standardizeViewingUserReferenceForCategory($category, $viewingUser, $categoryPermissions);

        if ($viewingUser['user_id'] == $resource['user_id'])
        {
            return true;
        }

        return XenForo_Permission::hasContentPermission($categoryPermissions, 'download');
    }

И где-то как-то подправить, что
если пользователь есть в группе Проверенные (например id этой группы =8), то он сможет скачать, иначе
и ошибка примерно в таком виде
PHP:
return $this->_getErrorContent(new XenForo_Phrase ('you are do not proverennuy'), 400);

Фразу "you are do not proverennuy" заранее создать и присвоить ей любой текст на усмотрение (например, как я выше и писал "Для того чтобы скачать файл ван нужно быть Проверенным пользователем")

А вот код, который
Отображает содержимое определенной группе пользователей:
PHP:
<xen:if is="{xen:helper ismemberof, $visitor, X}">
Это содержимое видно только группе с ID=X
</xen:if>

Но этот код указан на примере использования его в шаблонах, а как он будет выглядеть в php файле не знаю.

Вобщем собрал такую информацию. Дальше тупик. Дело уже для профи.
Подскажите, кто сможет)
 
Русификатор к данному плагину имеется?
 
Назад
Сверху