I'm trying calling the controller method directly from the blade file, but it gives me an error like.
Error Non-static method App\Http\Controllers\CallDetailsController::insertVicidialReportLog() cannot be called statically (View: /var/www/html/vicidiallaravel/resources/views/reports/call_report_export.blade.php)
below is my code.
CallDetailsController.php
public function insertVicidialReportLog($webserver_id,$authUser,$userId,$reportName,$query_date,$end_date,$shift,$file_download,$report_display_type)
{
//return $authUser;
// die();
//
##### BEGIN log visit to the vicidial_report_log table #####
$LOGip = $_SERVER["REMOTE_ADDR"];
$LOGbrowser = $_SERVER["HTTP_USER_AGENT"];
$LOGscript_name = $_SERVER["SCRIPT_NAME"];
$LOGserver_name = $_SERVER["SERVER_NAME"];
$LOGserver_port = $_SERVER["SERVER_PORT"];
$LOGrequest_uri = $_SERVER["REQUEST_URI"];
$LOGhttp_referer = $_SERVER["HTTP_REFERER"];
$LOGbrowser=preg_replace("/\'|\"|\\\\/","",$LOGbrowser);
$LOGrequest_uri=preg_replace("/\'|\"|\\\\/","",$LOGrequest_uri);
$LOGhttp_referer=preg_replace("/\'|\"|\\\\/","",$LOGhttp_referer);
if (preg_match("/443/i",$LOGserver_port)) {$HTTPprotocol = 'https://';}
else {$HTTPprotocol = 'http://';}
if (($LOGserver_port == '80') or ($LOGserver_port == '443') ) {$LOGserver_port='';}
else {$LOGserver_port = ":$LOGserver_port";}
$LOGfull_url = "$HTTPprotocol$LOGserver_name$LOGserver_port$LOGrequest_uri";
$LOGhostname = php_uname('n');
if (strlen($LOGhostname)<1) {$LOGhostname='X';}
if (strlen($LOGserver_name)<1) {$LOGserver_name='X';}
$insertReportLog = DB::table('vicidial_report_log')->insertGetId([
'event_date' => NOW(),
'user' => $authUser,
'ip_address' => $LOGip,
'report_name' => $reportName,
'browser' => $LOGbrowser,
'referer' => $LOGhttp_referer,
'notes' => "$LOGserver_name:$LOGserver_port $LOGscript_name |$query_date, $end_date, $shift, $file_download, $report_display_type|",
'url' => "$LOGfull_url",
'webserver' => "$webserver_id",
]);
return $insertReportLog;
}
call_report_export.blade.php
$stmt = App\Http\Controllers\CallDetailsController::insertVicidialReportLog($webserver_id,$PHP_AUTH_USER,$PHP_AUTH_USER_ID,$report_name,$query_date,$end_date,$shift,$file_download,$report_display_type);
so, now how can we call that method from the Blade file?
Laravel Framework 8.83.27