1
我试图注意到我聊天时未消除的新消息。我正在使用捆绑软件,并创建自己的好友列表。然后,在我的聊天视图中,我可以选择要与哪个用户聊天。我会告诉你我的代码,因为我没有得到错误,我不知道为什么这不起作用。通知未读消息
我在桌子上有一个名为reading的列,它使用布尔值,如果它的未读消息设置为0。
ChatController.php
在我的indexAction我做了这个:
` $userConnected= $this->container->get('security.token_storage')->getToken()->getUser();
$friends= $em->getRepository(Agenda::class)->findByIdUsuari($userConnected);
$messages= $em->getRepository(Messages::class)->findByAddressee($userConnected);
$newmessage= array();
foreach ($messages as $value) {
if ($value->getReading() == 0) {
$newmessage= $value->getAuthor()->getId();
}
}
在我看来,我打印的用户和形式。
这就是我打印的用户:
<div id="selectUser">
{% for user in users %}
{% if user.id != currentUser.id %}
<a href="" onclick="return false;" data-number="{{ user.id }}" class="changeUser" >{{ user.username }}</a>
{% endif %}
{% endfor %}
</div>
我如何能实现,如果我的列表的用户的ID是我保存在我的变量$ NewMessage作为???相同。我希望如果得到相同的ID,这意味着得到0,他不读取消息,所以如果我可以检查我将实现一个类,将改变用户的名字的颜色。
UPDATE:
似乎没有工作的原因,而是设置读取值设置为1,我不知道为什么AjaxController导致它设置在0时,我发送消息,并更改为1,当用户阅读它。
控制器:
对不起,我没有分享我渲染的内容。 返回$这 - >渲染( 'BackEndBundle:默认:chat.html.twig',阵列( 'chatForm'=> $ chatForm-> CreateView的(), '用户'=> $用户, “朋友'=> $ friends, 'newmessage'=> $ newmessage, 'getMessageUrl'=> $ getMessageUrl, 'currentUser'=> $ this-> getUser())); } – Pillow
所以你可以用newmessage检查你的user.id里面的小枝吗? –
是的我尝试应用样式如果user.id == newmessage但似乎没有工作。 – Pillow