Unanticipated User Role setting causes error
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 38/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Estagnada
- Stack de tecnologia
- php
- Domínio
- authorization, backend
Direção de pesquisa
Comece em CommentingPlugin::showComments e compare views/public/comments.php com o proposto views/public/commentingHeader.php. Rastreie as verificações de função para visualizar e adicionar comentários e, em seguida, verifique se uma função com permissão para comentar, mas não para visualizar comentários, ainda recebe o rótulo, a mensagem flash e o formulário de comentários sem um erro.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I came across an issue which gets triggered by the scenario that a certain User Role is able to make a comment, but not allowed to view them. In this case the $view variable along with $view->addHelperPath is not set since this is currently dependent on the ability to view comments. Also in this scenario the Label as well as the flash message does not get output, since they currently reside in views/public/comments.php, which gets bypassed.
To fix the issue, I updated the showComments function in CommentingPlugin to the following:
public static function showComments($args = array())
{
echo "<div id='comments-container'>";
// presume we will need the view in any case
if(isset($args['view'])) {
$view = $args['view'];
} else {
$view = get_view();
}
$view->addHelperPath(COMMENTING_PLUGIN_DIR . '/helpers', 'Commenting_View_Helper_');
// output the header
echo $view->partial('commentingHeader.php');
if( (get_option('commenting_allow_public') == 1)
|| (get_option('commenting_allow_public_view') == 1)
|| is_allowed('Commenting_Comment', 'show') ) {
$options = array('threaded'=> get_option('commenting_threaded'), 'approved'=>true);
$comments = isset($args['comments']) ? $args['comments'] : $view->getComments($options);
echo $view->partial('comments.php', array('comments'=>$comments, 'threaded'=>$options['threaded']));
}
if( (get_option('commenting_allow_public') == 1)
|| is_allowed('Commenting_Comment', 'add') ) {
echo "<div id='comment-main-container'>";
echo $view->getCommentForm();
echo "</div>";
}
echo "</div>";
}
This presumes that we need the $views set in any case.
I also created a new file views/public/commentingHeader.php which contains:
<?php $label = get_option('commenting_comments_label'); ?>
<?php if ($label == ''):?>
<h2><?php echo __('Comments'); ?></h2>
<?php else: ?>
<h2><?php echo $label; ?></h2>
<?php endif; ?>
<div id='comments-flash'><?php echo flash(true); ?></div>
This code has been removed from views/public/comments.php.
- Linguagem predominante
- PHP
- Estrelas
- 4
- Forks
- 5
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de omeka/plugin-Commenting
-
Rearrange config Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 42/100
omeka/plugin-Commenting#59 ·
-
Recaptcha link doesn't work Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 45/100
omeka/plugin-Commenting#58 ·
-
User role issues Aberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
omeka/plugin-Commenting#57 ·
-
omeka/plugin-Commenting#41 · 1 responsável ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 20/100
omeka/plugin-Commenting#26 · 3 comentários ·
Todas as issues de omeka/plugin-Commenting
Issues semelhantes
-
needs-triage Platform(Default)
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
-
bug No Code Attached Yet
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
joomla/joomla-cms#48501 ·
-
sync-en
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
-
sync-en
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
-
Перевод устарел
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100