diff --git a/app/Http/Controllers/Admin/DashboardController.php b/app/Http/Controllers/Admin/DashboardController.php
index d45b654..ee88f6f 100644
--- a/app/Http/Controllers/Admin/DashboardController.php
+++ b/app/Http/Controllers/Admin/DashboardController.php
@@ -198,6 +198,7 @@ class DashboardController extends Controller
// dd(auth()->user()->id);
$tasks = LeadTasksMeeting::where('owner', auth()->user()->id)->orderBy('created_at', 'desc')->tasks()->get();
+ // $tasks = [];
// dd($tasks, auth()->user()->id);
$meetings = LeadTasksMeeting::where('host', (string)auth()->user()->id)->orderBy('created_at', 'desc')->meetings()->get();
// dd($meetings);
diff --git a/app/Http/Controllers/Admin/ManageCommissionController.php b/app/Http/Controllers/Admin/ManageCommissionController.php
index 69983bd..5702db4 100644
--- a/app/Http/Controllers/Admin/ManageCommissionController.php
+++ b/app/Http/Controllers/Admin/ManageCommissionController.php
@@ -58,30 +58,24 @@ class ManageCommissionController extends Controller
// ->orderBy('products.created_at')
->latest('products.created_at')
->get();
- // dd($products);
- $products->each(function($value){
- $monthlyData = MonthlyUpdateMaster::where('products_id',$value->id)->get();
+ // dd($products);
+ $products->each(function ($value) {
+ $monthlyData = MonthlyUpdateMaster::where('products_id', $value->id)->get();
$totalCommission = 0;
$totalInvestment = 0;
- if($monthlyData->isNotEmpty())
- {
- foreach($monthlyData as $monthlyDataRow)
- {
- if(MonthlyUpdateFractionalRealEstate::where('custom_id',$monthlyDataRow->custom_id)->exists())
- {
- $freData = MonthlyUpdateFractionalRealEstate::where('custom_id',$monthlyDataRow->custom_id)->first();
+ if ($monthlyData->isNotEmpty()) {
+ foreach ($monthlyData as $monthlyDataRow) {
+ if (MonthlyUpdateFractionalRealEstate::where('custom_id', $monthlyDataRow->custom_id)->exists()) {
+ $freData = MonthlyUpdateFractionalRealEstate::where('custom_id', $monthlyDataRow->custom_id)->first();
$totalInvestment += floatval($freData->getRawOriginal()['investment_value']);
}
- if(MonthlyUpdateAlternativeInvestmentFund::where('custom_id',$monthlyDataRow->custom_id)->exists())
- {
- $aifData = MonthlyUpdateAlternativeInvestmentFund::where('custom_id',$monthlyDataRow->custom_id)->first();
+ if (MonthlyUpdateAlternativeInvestmentFund::where('custom_id', $monthlyDataRow->custom_id)->exists()) {
+ $aifData = MonthlyUpdateAlternativeInvestmentFund::where('custom_id', $monthlyDataRow->custom_id)->first();
$totalInvestment += floatval($aifData->getRawOriginal()['commitment_amount']);
}
- $data = MonthlyUpdateMasterCommission::where('monthly_id',$monthlyDataRow->id)->get();
- if($data->isNotEmpty())
- {
- foreach($data as $dataRow)
- {
+ $data = MonthlyUpdateMasterCommission::where('monthly_id', $monthlyDataRow->id)->get();
+ if ($data->isNotEmpty()) {
+ foreach ($data as $dataRow) {
$totalCommission += floatval($dataRow->getRawOriginal()['gross_commissioned_earned_inr']);
}
}
@@ -193,6 +187,12 @@ class ManageCommissionController extends Controller
if (!$check) {
abort(404);
}
+ // $data = MonthlyUpdateMasterCommission::query()
+ // ->with('monthlyUpdate.products.fractional_real_estate')
+ // ->latest()
+ // ->get();
+ // // ->select('*');
+ // dd($data->toArray());
return view('Admin.Pages.manage_commission.user_commission');
}
@@ -262,7 +262,7 @@ class ManageCommissionController extends Controller
return '
' . $row->monthlyUpdate->investor_name . '
';
})
->editColumn('product_sold', function ($row) {
- return '' . 'ABC' . '
';
+ return '' . $row->monthlyUpdate->product_name . '
';
})
->editColumn('month', function ($row) {
return '' . $row->created_at->format('M') . '
';
@@ -283,11 +283,11 @@ class ManageCommissionController extends Controller
-
-
-
";
+ //
+ //
+ //
return $btn;
})
->rawColumns(['investor_name', 'product_sold', 'month', 'total_investment', 'applicable_rate', 'commission_type', 'created_at', 'action'])
@@ -298,8 +298,7 @@ class ManageCommissionController extends Controller
public function trailCommission()
{
$check = checkSidebarAccess('trail-commission');
- if(!$check)
- {
+ if (!$check) {
abort(404);
}
return view('Admin.Pages.manage_commission.trail_commission', [
diff --git a/app/Http/Controllers/Admin/ManageSellerProfileController.php b/app/Http/Controllers/Admin/ManageSellerProfileController.php
index 138c0fa..6540125 100644
--- a/app/Http/Controllers/Admin/ManageSellerProfileController.php
+++ b/app/Http/Controllers/Admin/ManageSellerProfileController.php
@@ -24,7 +24,7 @@ class ManageSellerProfileController extends Controller
->withCount(['aif', 'fre', 'op'])
->latest()
->get();
- // dd($sellerProfile->toArray());
+ dd($sellerProfile->toArray());
return view('Admin.Pages.pre_owned_investment.manage_seller_profile', compact('sellerProfile'));
}
diff --git a/app/Http/Controllers/Admin/ManageSubAdminController.php b/app/Http/Controllers/Admin/ManageSubAdminController.php
index 9d4e1c6..2fb4717 100644
--- a/app/Http/Controllers/Admin/ManageSubAdminController.php
+++ b/app/Http/Controllers/Admin/ManageSubAdminController.php
@@ -67,73 +67,55 @@ class ManageSubAdminController extends Controller
public function addSubAdmin(Request $request)
{
- // dd($request->all());
- $validator = Validator::make($request->post(), [
+ $validator = Validator::make($request->all(), [
'name' => 'required',
- // 'address' => 'required',
'mobile_number' => 'required',
'password' => 'required',
- 'email' => 'required',
+ 'email' => 'required|email|unique:users,email',
], [
- 'unique' => ':attribute should be unique',
- 'required' => ':attribute is required'
+ 'required' => ':attribute is required',
+ 'unique' => 'The :attribute has already been taken.',
+ 'email' => 'The :attribute must be a valid email address.',
]);
- $validationMessage = validationErrorMessage($validator);
- if ($validationMessage) {
- return response()->json(['status' => 400, 'message' => $validationMessage]);
- }
- // $principalType = Iam_Principal_Type::find($request->role_type);
- $emailAlreadyExists = User::where('email',$request->email)->exists();
- $contactAlreadyExists = User::where('contact_number',$request->contact_number)->exists();
- if($emailAlreadyExists)
- {
- return response()->json(['status' => 400, 'message' =>'email should be unique']);
- }
- if($contactAlreadyExists)
- {
- return response()->json(['status' => 400, 'message' =>'Mobile number should be unique']);
+
+ if ($validator->fails()) {
+ return response()->json(['status' => 400, 'message' => $validator->errors()->first()]);
}
- // defining user type
- if ($request->role_type == 1) {
- $roleType = 1;
- } else if ($request->role_type == 2) {
- $roleType = 2;
- } else {
- $roleType = 0;
+ if(User::where('contact_number', $request->mobile_number)->exists()) {
+ return response()->json(['status' => 400, 'message' => 'Mobile number should be unique']);
}
- // dd(Hash::make($request->password));
- $addUser = User::insertGetId([
- // 'principal_type_xid' => $principalType->id,
+
+ $roleType = $request->role_type ?? 0; // Default role type
+
+ $user = User::create([
'name' => $request->name,
'email' => $request->email,
'contact_number' => $request->mobile_number,
'password' => Hash::make($request->password),
'role' => $roleType,
- 'created_at' => Carbon::now(),
- 'updated_at' => Carbon::now(),
]);
- // $addUser = null;
- if ($addUser == null) {
- return response()->json(['status' => 400, 'message' => 'Something error!']);
+
+ if (!$user) {
+ return response()->json(['status' => 400, 'message' => 'Something went wrong!']);
}
- // dd('hello');
- foreach ($request->all() as $key => $value) {
- if ($key == '_token' || $key == 'name' || $key == 'email' || $key == 'mobile_number' || $key == 'role_type' || $key == 'password') {
- continue;
- } else {
- // dd($value );
- $appResource = Iam_App_Resources::find((int)$value);
+
+ // Assuming $request->resource_ids is an array of resource IDs to assign to the user
+ foreach ($request->resource_ids ?? [] as $resourceId) {
+ $appResource = Iam_App_Resources::find($resourceId);
+ if ($appResource) {
$addAppResourceActionLink = Iam_App_Resource_Action_Link::create([
- 'user_xid' => $addUser,
+ 'user_xid' => $user->id,
'app_resource_xid' => $appResource->id,
]);
}
}
+
return response()->json(['status' => 200, 'message' => 'User Added!']);
}
+
public function viewSubAdmin(Request $request)
{
// dd((int)$request->id);
@@ -223,4 +205,4 @@ class ManageSubAdminController extends Controller
$accessPage = Iam_App_Resource_Action_Link::where('user_xid', $id)->pluck('app_resource_xid');
return view('Admin.edit-sub-admin', ['user' => $user, 'accessPage' => $accessPage, 'id' => $id]);
}
-}
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Admin/ManageUserProductController.php b/app/Http/Controllers/Admin/ManageUserProductController.php
index b5b847b..3e9eaca 100644
--- a/app/Http/Controllers/Admin/ManageUserProductController.php
+++ b/app/Http/Controllers/Admin/ManageUserProductController.php
@@ -959,6 +959,7 @@ class ManageUserProductController extends Controller
public function updateAlternativeMonthlyUpdate(Request $request)
{
+ // dd($request->update_alternative_id);
$validator = Validator::make($request->all(), [
"update_alternative_id" => "required",
"commitment_amount" => "required",
@@ -1010,8 +1011,28 @@ class ManageUserProductController extends Controller
array_push($statementReportsArray, $statementReportName);
}
+ $oldStatementReport = MonthlyUpdateAlternativeInvestmentFund::where('id', $request->update_alternative_id)->first();
+ $statementReport = $oldStatementReport->getRawOriginal()['statement_reports'];
+ // dd($statementReport);
+ $ltrim = ltrim($statementReport,'[');
+ $rtrim = rtrim($ltrim,']');
+ $explode = explode(',',$rtrim);
+ $oldStatement = [];
+
+ foreach($explode as $report)
+ {
+ // dd($report);
+ $ltrimOfReport = ltrim($report,'"');
+ $rtrimOfReport = rtrim($ltrimOfReport,'"');
+ // dd($rtrimOfReport);
+ array_push($oldStatement,$report);
+ }
+
+ // merge array
+ $newStatementReport = array_merge($oldStatement,$statementReportsArray);
+
MonthlyUpdateAlternativeInvestmentFund::where('id', $request->update_alternative_id)->update([
- "statement_reports" => json_encode($statementReportsArray),
+ "statement_reports" => json_encode($newStatementReport),
]);
}
@@ -1206,10 +1227,15 @@ class ManageUserProductController extends Controller
$statementReportName = $key . $request->id . time() . '.' . $statementReport->extension();
$statementReport->storeAs('files/monthly-update', $statementReportName);
array_push($statementReportsArray, $statementReportName);
- MonthlyUpdateFractionalRealEstate::where('id', $request->id)->update([
- "statement_reports" => json_encode($statementReportsArray),
- ]);
}
+ $oldStatementReport = MonthlyUpdateFractionalRealEstate::where('id', $request->id)->first()->getRawOriginal('statement_reports');
+ // merge array
+ $newStatementReport = $oldStatementReport + $statementReportsArray->statement_reports;
+ // dd($oldStatementReport,$newStatementReport);
+ // store new with old
+ MonthlyUpdateFractionalRealEstate::where('id', $request->id)->update([
+ "statement_reports" => json_encode($newStatementReport),
+ ]);
}
@@ -1279,16 +1305,17 @@ class ManageUserProductController extends Controller
public function deleteStatementReport(Request $request)
{
- $fileName = $request->input('fileName');
+ $fileName = rtrim($request->input('fileName'),'❌');
$id = $request->input('id');
+ // dd($fileName,$id);
// Find the statement_report record
- $statementReport = MonthlyUpdateAlternativeInvestmentFund::findOrFail($id);
+ $statementReport = MonthlyUpdateAlternativeInvestmentFund::where('id',$id)->first()->getRawOriginal()['statement_reports'];
// Get the statement_reports array
- $statementReports = $statementReport->statement_reports;
- // $fileNames = json_decode($statementReports, true); // Decode JSON string to array
- $fileNames = array_map('basename', $statementReports);
+ // dd(json_decode($statementReport));
+ $fileNames = json_decode($statementReport);
+
// Find the index of the file name to be deleted
$index = array_search($fileName, $fileNames);
diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php
index 62dd725..cc62e3d 100644
--- a/app/Http/Controllers/AuthController.php
+++ b/app/Http/Controllers/AuthController.php
@@ -761,7 +761,8 @@ class AuthController extends Controller
'title' => 'Mail from ItSolutionStuff.com',
'body' => 'This is for testing email using smtp.'
];
-
+ Mail::to($validated['email2'])->send(new OtpMail($mailData, $otp));
+
$insertOtp = RegistrationOtp::insertGetId([
'contact_number'=>$request->contact_number2,
// 'contact_otp'=>$mobile_otp,
@@ -770,7 +771,6 @@ class AuthController extends Controller
'email_otp'=>$otp,
'email_expire_at'=>Carbon::now()->addMinutes('2'),
]);
- Mail::to($validated['email2'])->send(new OtpMail($mailData, $otp));
// $this->thirdPartyOTP($validated['contact_number2'], $mobile_otp);
// Mail::to('yadavritikesh29@gmail.com')->send(new OtpMail($mailData, $otp));
return response()->json(['status' => 200, 'message' => 'OTP has been sent to your email']);
@@ -818,7 +818,7 @@ class AuthController extends Controller
if ($userEmailOtpData) {
$otp = rand(1000,9999);
$this->thirdPartyOTP($userEmailOtpData->contact_number, $otp);
- RegistrationOtp::where('email', $emailToAdd)->update(['contact_otp'=>$otp,'contact_expire_at'=>Carbon::now()->addMinutes(2)]);
+ RegistrationOtp::where('email', $emailToAdd)->update(['contact_otp'=>$ ,'contact_expire_at'=>Carbon::now()->addMinutes(2)]);
return response()->json(['status' => 200, 'message' => 'Email OTP verified Successfully']);
}
}
@@ -883,7 +883,7 @@ class AuthController extends Controller
if ($userEmailOtpData) {
$otp = rand(1000,9999);
$this->thirdPartyOTP($userEmailOtpData->contact_number, $otp);
- RegistrationOtp::where('email', $emailToAdd)->update(['contact_otp'=>rand(1000,9999),'contact_expire_at'=>Carbon::now()->addMinutes(2)]);
+ RegistrationOtp::where('email', $emailToAdd)->update(['contact_otp'=>$otp,'contact_expire_at'=>Carbon::now()->addMinutes(2)]);
return response()->json(['status' => 200, 'message' => 'Email OTP verified Successfully']);
}
}
diff --git a/app/Http/Controllers/Frontend/HomeController.php b/app/Http/Controllers/Frontend/HomeController.php
index aad7a54..9a20f15 100644
--- a/app/Http/Controllers/Frontend/HomeController.php
+++ b/app/Http/Controllers/Frontend/HomeController.php
@@ -165,7 +165,8 @@ class HomeController extends Controller
'first_name' => auth()->guard('users')->user()->name,
'email' => auth()->guard('users')->user()->email,
'mobile' => auth()->guard('users')->user()->contact_number,
- 'lead_status' => 'New'
+ 'lead_status' => 'New',
+ 'lead_source' => 'Website Visitor',
]);
if ($addLead) {
diff --git a/public/assets/css/style.bundle.css b/public/assets/css/style.bundle.css
index 3620f3f..4a41ab9 100644
--- a/public/assets/css/style.bundle.css
+++ b/public/assets/css/style.bundle.css
@@ -38129,7 +38129,7 @@ html:not([data-theme="dark"]) .theme-light-bg-body {
.btn.btn-active-color-primary:hover:not(.btn-active) i,
.show > .btn.btn-active-color-primary .svg-icon,
.show > .btn.btn-active-color-primary i {
- color: #FFF;
+ color: #fff;
}
.btn-check:active + .btn.btn-active-color-primary.dropdown-toggle:after,
@@ -44322,15 +44322,29 @@ code:not([class*="language-"]) {
}
.symbol.symbol-45px > img {
- width: 45px;
- height: 45px;
+ width: 40px;
+ height: 40px;
}
.symbol.symbol-45px .symbol-label {
width: 45px;
height: 45px;
}
+.chat-box .card .card-body {
+ padding: 10px;
+}
+.user_Detail {
+ padding-right: 0 !important;
+}
+
+.user_Detail span#user_188 {
+ font-size: 15px;
+}
+
+.user_Detail .fw-semibold.text-muted {
+ font-size: 12px;
+}
.symbol.symbol-45px.symbol-fixed .symbol-label {
width: 45px;
height: 45px;
@@ -57874,22 +57888,31 @@ html:not([data-theme="dark"]) {
justify-content: flex-start !important;
margin: 0 auto 0 0;
}
-.table.gy-5 td, .table.gy-5 th {
- padding: 1.25rem !important;
+.table.gy-5 td,
+.table.gy-5 th {
+ padding: 1.25rem !important;
}
-.tabdiv input, .tabdiv select {
- border: 1px solid #e0dddd;
- padding: 10px !important;
- height: 40px;
- border-radius: 5px;
- width: 50%;
+.tabdiv input,
+.tabdiv select {
+ border: 1px solid #e0dddd;
+ padding: 10px !important;
+ height: 40px;
+ border-radius: 5px;
+ width: 50%;
+}
+.tabdiv input[type="checkbox"] {
+ border: 1px solid #e0dddd !important;
+ display: flex;
+ width: 20px;
+ height: 20px;
+ justify-content: flex-start !important;
+ margin: 0 auto 0 0;
}
-.tabdiv input[type="checkbox"] {border: 1px solid #e0dddd !important;display: flex;width: 20px;height: 20px;justify-content: flex-start !important;margin: 0 auto 0 0;}
.card {
- padding: 20px;
+ padding: 20px;
}
.index-box .card {
- min-height: 230px !important;
+ min-height: 170px !important;
}
#statement_reports_container li {
margin-bottom: 5px;
@@ -57909,3 +57932,10 @@ span.remove-icon {
padding: 0;
margin-top: 5px;
}
+.index-box .card-body {
+ min-height: 30px !important;
+ padding: 5px !important;
+}
+tr.odd td.dataTables_empty:last-child, tr.even td.dataTables_empty:last-child {
+ display: revert;
+}
\ No newline at end of file
diff --git a/public/assets/css/style.css b/public/assets/css/style.css
index 9d44456..ec26d4a 100644
--- a/public/assets/css/style.css
+++ b/public/assets/css/style.css
@@ -922,6 +922,7 @@ label#editor-error {
.btn.btn-light-primary {
color: #fff;
background-color: #c18948;
+ height: fit-content;
}
.btn.btn-light-primary .svg-icon,
.btn.btn-light-primary i {
@@ -1306,7 +1307,7 @@ table th,
table td,
.align-top {
vertical-align: middle !important;
- width: auto !important;
+ /* width: auto !important; */
}
.card-body.py-4 {
@@ -1352,20 +1353,39 @@ button.btn.btn-light-primary.me-3 {
justify-content: flex-start !important;
margin: 0 auto 0 0;
}
-.table.gy-5 td, .table.gy-5 th {
+.table.gy-5 td,
+.table.gy-5 th {
padding: 1.25rem !important;
}
-.tabdiv input, .tabdiv select {
+.tabdiv input,
+.tabdiv select {
border: 1px solid #e0dddd;
padding: 10px !important;
height: 40px;
border-radius: 5px;
width: 50%;
}
-.tabdiv input[type="checkbox"] {border: 1px solid #e0dddd !important;display: flex;width: 20px;height: 20px;justify-content: flex-start !important;margin: 0 auto 0 0;}
+.tabdiv input[type="checkbox"] {
+ border: 1px solid #e0dddd !important;
+ display: flex;
+ width: 20px;
+ height: 20px;
+ justify-content: flex-start !important;
+ margin: 0 auto 0 0;
+}
.card {
padding: 20px;
}
.index-box .card {
- min-height: 230px !important;
+ min-height: 170px !important;
+}
+.index-box .card-body {
+ min-height: 30px !important;
+ padding: 5px !important;
+}
+.top_header {
+ align-items: end;
+}
+tr.odd td.dataTables_empty:last-child, tr.even td.dataTables_empty:last-child {
+ display: revert;
}
\ No newline at end of file
diff --git a/resources/views/Admin/Pages/manage_leads/edit-lead.blade.php b/resources/views/Admin/Pages/manage_leads/edit-lead.blade.php
index 6241191..e9022ad 100644
--- a/resources/views/Admin/Pages/manage_leads/edit-lead.blade.php
+++ b/resources/views/Admin/Pages/manage_leads/edit-lead.blade.php
@@ -3,7 +3,7 @@
@section('style')
-
+
+ .dt-buttons {
+ display: none;
+ }
+
@endsection
@section('content')
-