how can I view the user data of users who write messages?
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
// use AppModelsPost;
use AppModelsConversation;
use AppModelsMessageReply;
use AppModelsUser;
use Auth;
use DB;
class ConversationController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware(['auth', 'verified']);
}
/**
* Show the application dashboard.
*
* @return IlluminateContractsSupportRenderable
*/
// public function index()
// {
// $posts = Post::all();
// return view('home', compact('posts'));
// }
public function index()
{
return view('superadmin.conversation.index');
}
public function create($title)
{
$user = User::where('id','!=',auth::user()->id)->get();
return view('conversation',compact('title','user'));
}
public function createwithout(){
$user = User::get();
$conv = Conversation::select('*')->where('recipients',auth::user()->id)->where('others','M')->get();
return view('conversation',compact('user','conv'));
}
public function store(Request $request){
$user = new Conversation();
if(!empty($request->input('opt2'))){$opt2 = 1;}else{$opt2 = 0;}
if(!empty($request->input('opt1'))){$opt1 = 1;}else{$opt1 = 0;}
if(!empty($request->doc)){
$file = $request->file('doc');
$doc = rand() . '.' . $file->getClientOriginalExtension();
$doc1=$file->move(public_path('/uploadedimages'), $doc);
}
else{$doc = 'NIL';}
foreach ($request->user as $index => $obj) {
$categoryS[] = Conversation::create([
'recipients' => $obj,
'created_by' => Auth::id(),
'title' => $request->input('title'),
'message' => $request->input('text_editor'),
'document' => $doc,
'invite_other' => $opt1,
'lock' => $opt2,
'status'=>'0',
'others'=>'M'
]);
}
return back();
}
public function showlist(){
$co = Conversation::where('recipients', '=', auth::user()->id)->update(['status' => 1]);
$conv = Conversation::select('*')->where('recipients',auth::user()->id)->orWhere('created_by', auth::user()->id)->get();
return view('conversationlist',compact('conv'));
}
public function updatestatus($id){
$co = Conversation::find($id);
$co->status = '1';
$co->save();
$conv = Conversation::select('*')->where('id',$id)->get();
return view('conversationlist',compact('conv'));
}
public function convshow($id){
$conv = Conversation::select('users.name as name','conversation.*')->leftJoin('users', 'users.id', '=', 'conversation.created_by')->where('conversation.id',$id)->get();
$reply = MessageReply::select('*')->where('message_id',$id)->get();
return view('showconversation',compact('conv','reply'));
}
public function replytoconv(Request $request){
$user = new MessageReply();
MessageReply::create([
'message_id' => $request->message_id,
'user_id' => Auth::id(),
'description' => $request->input('description'),
]);
return back();
}
}
@extends('layouts.app')
@section('content')
@push('stylesheets')
{{-- <script src="https://cdn.ckeditor.com/ckeditor5/23.0.0/classic/ckeditor.js"></script> --}}
<style>
.parent-social {
position: relative;
}
.child-social {
width: auto !important;
bottom: 0;
right: 1rem;
margin: 1rem 0;
}
blockquote {
padding-left: 20px;
padding-right: 8px;
border-left: 5px solid #ccc;
font-style: italic;
font-family: Georgia, Times, "Times New Roman", serif;
margin: 13px 40px;
}
.reaction-parent {
position: relative;
overflow: hidden;
display: flex;
justify-content: flex-end;
}
.reaction-child {
width: 135px;
/* Position the tooltip */
position: absolute;
z-index: 1;
right: 0;
}
.reaction-parent i {
margin-right: 0.5rem;
}
.reaction-child .bi {
font-size: 1.5rem;
}
</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
@endpush
<div class="container-fluid">
<div class="row no-gutters border m-1 p-2 parent-social">
<div class="col-12 col-md-2 col-sm-12">
<div class="card d-flex justify-content-center align-items-center" style="width: 100%;">
<img src="{{ asset('/uploads/avatar/defaultavatar.webp') }}" class="" alt="..." height="auto"
width="75px">
<div class="card-body">
<h5 class="card-title text-center">{{ $conv[0]->name }} <a href="/createconversation/{{$conv[0]->title}}"><span><i class="fa fa-envelope"></i></span></a></h5>
</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">Joined: {!! date('d-M-y', strtotime($conv[0]->created_at)) !!}</li>
<li class="list-group-item">Messages: 0</li>
<li class="list-group-item">Reactions: {{ $conv[0]->reactions }}</li>
<li class="list-group-item">Vestibulum at eros</li>
</ul>
</div>
</div>
<div class="col-12 col-sm-6 col-md-10 col-sm-12" style="overflow: hidden;">
<div class="card-body">
<h5 class="card-title">{{ $conv[0]->title }}</h5>
</div>
<hr class="m-1">
<div style="overflow-y: scroll; height: 300px; width: 100%; overflow-x: hidden">
{!! $conv[0]->message !!}
<img src="{{url('/uploadedimages')}}/{{$conv[0]->document}}" width="120">
</div>
<div class="child-social">
<div class="reaction-parent">
<i onclick="showReactions(this)" style="font-size: 1.2rem; cursor: pointer;" id="reaction"></i>
<a href="#ckreply" onclick="ckreply({{ json_encode($conv[0]->message, 1) }},{{ json_encode($conv[0]->name, 1) }})" style="color: #000;">
<i class="bi bi-reply" style="font-size: 1.2rem;"></i>
</a>
</div>
</div>
</div>
</div>
@if (isset($reply))
@foreach ($reply as $reply)
<div class="row no-gutters border m-1 p-2 parent-social">
<div class="col-12 col-md-2 col-sm-12">
<div class="card d-flex justify-content-center align-items-center" style="width: 100%;">
<img src="{{ asset('/uploads/avatar/defaultavatar.webp') }}" class="" alt="..." height="auto" width="75px">
<div class="card-body">
<h5 class="card-title text-center"></h5>
</div>
</div>
</div>
<div class="col-12 col-sm-6 col-md-10 col-sm-12" style="overflow: hidden;">
<div class="card-body">
</div>
<hr class="m-1">
<div style="overflow-y: scroll; height: 300px; width: 100%; overflow-x: hidden">
{!! $reply->description !!}
</div>
<!--<div class="child-social">
<div class="reaction-parent">
<i onclick="showReactions(this)"
class=""
style="font-size: 1.2rem; cursor: pointer;"></i>
<a href="#ckreply"
onclick="ckreply({{ json_encode($reply->description, 1) }},{{ json_encode($reply->description, 1) }})"
style="color: #000;">
<i class="bi bi-reply" style="font-size: 1.2rem;"></i>
</a>
</div>
</div>-->
</div>
</div>
@endforeach
@else
@endif
<div class="row no-gutters border m-1 p-2" id="ckreply" wire:ignore>
<div class="col-12 col-md-2 col-sm-12">
<div class="card d-flex justify-content-center align-items-center" style="width: 100%;">
<img src="{{ asset('/uploads/avatar/defaultavatar.webp') }}" class="" alt="..." height="75px" width="75px">
<div class="card-body">
<h5 class="card-title text-center">{{ Auth::user()->name }}</h5>
</div>
<ul class="list-group list-group-flush">
<li class="list-group-item">Joined : {!! date('d-M-y', strtotime(Auth::user()->created_at)) !!}</li>
<li class="list-group-item">Messages: 0</li>
<li class="list-group-item">Reactions: {{ Auth::user()->reactions }}</li>
<li class="list-group-item">Vestibulum at eros</li>
</ul>
</div>
</div>
<div class="col-12 col-sm-6 col-md-10 col-sm-12 parent-social">
<form action="/replytoconv" method="post">
@csrf
<div class="form-group">
<textarea wire:model.defer="description" class="form-control" id="description" name="description"></textarea>
</div>
<div class="form-group">
<input type="hidden" value="{{$conv[0]->id}}" name="message_id" />
<button type="submit" class="btn btn-primary my-2 d-flex justify-content-center align-items-center"> <i class="bi bi-reply" style="margin-bottom: 8px; margin-right: 4px;"></i> Message
reply</button>
</div>
</form>
</div>
</div>
</div>
@push('scripts')
<script src="//cdn.ckeditor.com/4.19.0/standard/ckeditor.js"></script>
<script>
var ckdata = "";
var editor = CKEDITOR.replace('description');
// The "change" event is fired whenever a change is made in the editor.
editor.on('change', function(event) {
})
</script>
@endpush
@endsection
@section('scripts')
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>
@endsection
I would like to display the data of users who write and reply messages so that it displays :
Joined: 10-Sep-22
Number of messages: 0
Reaction:
Vestibulum in eros
it displays the first user who created the conversation but not after (the person who answers or the one who created the conversation. i tried but I had errors, how could I display so that there is no error?