Skip to content

Instantly share code, notes, and snippets.

View dongido001's full-sized avatar
🕳️
../

Onwuka Gideon dongido001

🕳️
../
View GitHub Profile
// [...]
Route::post('/get-or-create-channel', 'ChatController@createOrGetChannel');
// [...]
// [...]
Route::get('/get-users', 'ChatController@getUsers');
// [...]
// [...]
/**
* Get all users
*/
public function getUsers(Request $request)
{
return response()->json([
'users' => User::all()
], 200);
}
Route::post('/generate-token', 'ChatController@getnerateToken');
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GetStream\StreamChat\Client as StreamClient;
use App\User;
use App\Channel;
use Illuminate\Support\Facades\Auth;
/* [...] */
input[type="text"] {
padding: 10px 8px;
margin-top: 10px;
border-radius: 2px;
border: 1px solid darkgray;
font-size: 16px;
box-sizing: border-box;
display: block;
}
<template>
<div class="active-chats row">
<message-component
v-for="chat in activeChats"
:key="chat.id"
:token="token"
:client="client"
:chat="chat"
:autheduser="autheduser">
</message-component>
<template>
<div class="card user-box">
<div class="card-header" @click="collapsed = !collapsed">
{{ chat.name }}
</div>
<div class="card-body" v-show="!collapsed">
<div class="user-messages">
<div
class="chat-message"
v-for="message in messages"
<template>
<div class="card users-box">
<div class="card-header" @click="collapsed = !collapsed">
Users
</div>
<div class="card-body users" v-show="!collapsed">
<div class="user" v-for="user in users" :key="user.id" @click="addToActiveChat(user)">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQSXmfj4kUOZR1oT7ood5_AqnC_TgkuyVojx73oE2eYdp4Mvl29" width="30" height="30">
{{ user.name }}
</div>
<template>
<div class="stream-chat row">
<active-chats-component :autheduser="autheduser"></active-chats-component>
<users-component></users-component>
</div>
</template>
<script>
export default {
props: ['autheduser'],