where('meta_key', $key)->pluck('meta_value')->first(); } } } if (!function_exists('messagesCounter')) { function messagesCounter($userID = '') { try { $user = \Auth::guard('sanctum')->user(); if ($userID == '') { $userID = $user->id; } $result = DB::table('message_threads as mt') ->leftJoin('messages as m', 'mt.id', '=', 'm.message_thread_id') ->where(function ($query) use ($userID) { $query->where('mt.receiver_id', '=', $userID)->orWhere('mt.sender_id', '=', $userID); }) ->where('m.user_id', '!=', $userID) ->where('m.status', '=', "0")->get()->count(); return $result; } catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadMessageCounter')) { function unreadMessageCounter($id) { try { $user = User::where('id', $id)->first(); $unreadMessageCount = $user->unread_message_count; return $unreadMessageCount; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadNotificationCounter')) { function unreadNotificationCounter($id) { try { $user = User::find($id); $user->unread_notification_count = $user->unread_notification_count + 1; $user->save(); return $user->unread_notification_count; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadSantMenuCounter')) { function unreadSantMenuCounter($id, $flag) { try { $user = User::find($id); $user->sant_menu = $flag; $user->save(); return $user->sant_menu; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadSanghMenuCounter')) { function unreadSanghMenuCounter($id, $flag) { try { $user = User::find($id); $user->sangh_menu = $flag; $user->save(); return $user->sangh_menu; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadShravakMenuCounter')) { function unreadShravakMenuCounter($id, $flag) { try { $user = User::find($id); $user->shravak_menu = $flag; $user->save(); return $user->shravak_menu; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadSanghInviteCounter')) { function unreadSanghInviteCounter($id, $flag) { try { $user = User::find($id); $user->pending_sangh_invitation = $flag; $user->save(); return $user->pending_sangh_invitation; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadSantActionCounter')) { function unreadSantActionCounter($id, $flag) { try { $user = User::find($id); $user->pending_sant_action = $flag; $user->save(); return $user->pending_sant_action; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('unreadFriendRequestCounter')) { function unreadFriendRequestCounter($id, $flag) { try { $user = User::find($id); $user->pending_friend_request = $flag; $user->save(); return $user->pending_friend_request; }catch (\Exception $ex) { Log::error($ex->getMessage()); return 0; } } } if (!function_exists('addUserSingleMetaValue')) { /** * @param null $userId * @param null $key * @param null $value * @return bool * * Store single user meta key and value * */ function addUserSingleMetaValue($userId = null, $key = null, $value = null) { if (!empty($userId) && !empty($key) && !empty($value)) { $data['user_id'] = $userId; $data['meta_key'] = $key; $data['meta_value'] = $value; if (UserMeta::create($data)) { return true; } return false; } else { return false; } } } if (!function_exists('addUserMultipleMetaValue')) { /** * @param null $data * @return bool * * * Store multiple user meta keys and values * */ function addUserMultipleMetaValue($data = null) { if (!empty($data)) { if (UserMeta::insert($data)) { return true; } return false; } else { return false; } } } if (!function_exists('updateUserMetaValue')) { /** * @param null $userId * @param null $key * @param null $value * @return bool * * Update user meta value * */ function updateUserMetaValue($userId = null, $key = null, $value = null) { if (!empty($userId) && !empty($key) && !empty($value)) { UserMeta::where('user_id', $userId)->where('meta_key', $key)->update(['meta_value' => $value]); return true; } } } if (!function_exists('removeUserMetaValue')) { /** * @param null $userId * @param null $key * @param null $value * @return bool * * remove user meta value * */ function removeUserMetaValue($userId = null, $key = null, $value = null) { if (!empty($userId) && !empty($key)) { UserMeta::where('user_id', $userId)->where('meta_key', $key)->delete(); return true; } } } if (!function_exists('generateConfirmationCode')) { /** * @param int $length * @return false|string * * Generate confirmation code * */ function generateConfirmationCode($length = 6) { $pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; return substr(str_shuffle(str_repeat($pool, $length)), 0, $length); } } if (!function_exists('generateOtp')) { /** * @param int $length * @return false|string * * Generate OTP * */ function generateOtp($length = 6) { $pool = '0123456789'; return substr(str_shuffle(str_repeat($pool, $length)), 0, $length); } } if (!function_exists('generateUsername')) { /** * @param $string * @return string * * Generate username * */ function generateUsername($string) { $pattern = " "; $firstPart = substr(strstr(strtolower($string), $pattern, true), 0, 2); $secondPart = substr(strstr(strtolower($string), $pattern, false), 0, 3); $nrRand = rand(0, 100); $str_result = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; $str_result = substr(str_shuffle($str_result), 0, 3); return trim($firstPart) . trim($secondPart) . trim($nrRand) . trim($str_result); } } if (!function_exists('loggedUserDetail')) { /** * @param $string * @return string */ function loggedUserDetail($user) { if($user){ $userData['id'] = $user->id; $userData['name'] = $user->name; $userData['email'] = $user->email; $userData['country_code'] = $user->country_code; $userData['mobile'] = $user->mobile; $userData['email_preview'] = hideEmailAddress($user->email); $userData['avatar'] = $user->avatar; $userData['is_profile_verified'] = $user->is_profile_verified; $userData['login_type'] = UserSocialLogin::where('user_id',$user->id)->first() ? 1 : 0; return $userData; }else{ return $userData = []; } } } if (!function_exists('getUserByID')) { /** * @return array */ function getUserByID($id) { try { return User::find($id); } catch (Exception $ex) { Log::error($ex->getMessage()); return []; } } } if (!function_exists('hideEmailAddress')) { /** * @param $string * @return string * @author Shailesh Jakhaniya * @since 2020-06-19 * * Hide the email address * */ function hideEmailAddress($email) { if(filter_var($email, FILTER_VALIDATE_EMAIL)) { list($first, $last) = explode('@', $email); $first = str_replace(substr($first, '1'), str_repeat('*', strlen($first)-1), $first); $last = explode('.', $last); $last_domain = str_replace(substr($last['0'], '1'), str_repeat('*', strlen($last['0'])-1), $last['0']); $hideEmailAddress = $first.'@'.$last_domain.'.'.$last['1']; return $hideEmailAddress; } } } if (!function_exists('userNotificationSetting')) { function userNotificationSetting($user) { try { $checkNotification = UserNotificationSetting::where('user_id',$user->id)->count(); if($checkNotification == 0){ if($user->type == 2){ $typeArr = brandNotificationType(); }else{ $typeArr = freelancerNotificationType(); } foreach($typeArr as $slug => $type){ UserNotificationSetting::insert([ 'user_id' => $user->id, 'notification_type' => $slug, 'allow' => 0, 'created_at' => Carbon::now() ]); } } }catch(Exception $ex){ Log::error($ex->getMessage()); } } }