Files
click-erp/app/Http/Controllers/Controller.php

175 lines
5.8 KiB
PHP
Executable File

<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
use App\Models;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
public function log_queryBAK() {
\DB::listen(function ($sql) {
\Log::info('showing query', array('sql' => $sql));
}
);
}
public function log_query() {
// , $binding, $timing 'bindings' => $binding)
\DB::listen(function ($sql) {
\Log::info('Showing query', array('sql' => $sql));
$encoded_sql = json_encode($sql);
$this->sendNtfy("Showing Query : " . $encoded_sql);
}
);
}
public function sendNtfy($data){
$url = 'https://ntfy.sh/mMjh6hStlSQiyiUr';
$url_b = 'https://ntfy.sh/SansaTest';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => $data
));
$response = curl_exec($curl);
return $response;
}
public function logUsersActivity($type, $content, $user_id = null){
if($user_id == null){
$user_id = session('current_user.id');
}
$activity_arr = [
'type' => $type,
'content' => $content,
'user_id' => $user_id,
'ip_address' => \Request::ip(),
'device' => request()->header('User-Agent')
];
$retval = Models\UserActivity::create($activity_arr);
return true;
}
public function storeLoggedUser(){
$user_id = session('current_user.id');
$logged_arr = [
'user_id' => $user_id,
'last_seen_time' => date('Y-m-d H:i:s'),
'ip_address' => \Request::ip(),
'device' => request()->header('User-Agent')
];
$retval = Models\LoggedUser::create($logged_arr);
return true;
}
public function deleteLoggedUser(){
$user_id = session('current_user.id');
$device = request()->header('User-Agent');
$logged_user = Models\LoggedUser::where('user_id', $user_id)->where('device', $device)->first();
if ($logged_user) {
\DB::table('logged_users')->where('id', $logged_user->id)->delete();
}
return true;
}
public function sendToPaperless($file_path, $tags_arr, $created_at, $document_type, $title, $correspondent){
$dir = getcwd();
$prod_url = "http://206.225.84.201:8000/api/documents/post_document/";
$local_url = "http://192.168.68.152:8000/api/documents/post_document/";
// dd($ip);
if ($dir !== '/Users/kwesibanson/Sites/team_tracker') {
$url = $prod_url;
$auth = "";
}
else{
$url = $local_url;
$auth = "cGxhZG1pbjpCcmFuY2gyMDAw";
}
// $pop = new \CURLFILE('/Users/kwesibanson/Documents/36-PropertyBillsRegister-2019.pdf');
// $curl_file = new \CURLFILE(public_path('documents/ultra_host.pdf'));
$curl_file = new \CURLFILE(public_path($file_path));
$curl = curl_init();
$data = [
"document" => $curl_file,
'title' => $title,
'correspondent' => $correspondent,
'created' => $created_at,
'document_type' => $document_type
];
if (count($tags_arr) > 0) {
foreach ($tags_arr as $tag) {
$data['tags'] = $tag;
}
}
// dd($data);
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => $data, //['document' => $curl_file],
// CURLOPT_POSTFIELDS => array('document'=> new CURLFILE('/Users/kwesibanson/Documents/36-PropertyBillsRegister-2019.pdf')),
CURLOPT_HTTPHEADER => array(': ', 'Authorization: Basic ' . $auth),
));
$response = curl_exec($curl);
// print_r(curl_getinfo($ch));
// dump(curl_errno($curl));
// dump(curl_error($curl));
curl_close($curl);
return $response;
}
public function getToPaperlessParamValues($name){
// $name = "document_types/";
$dir = getcwd();
$prod_url = "http://206.225.84.201:8000/api/$name/";
$local_url = "http://192.168.68.152:8000/api/$name/";
// dd($ip);
if ($dir !== '/Users/kwesibanson/Sites/team_tracker') {
$url = $prod_url;
$auth = "";
}
else{
$url = $local_url;
$auth = "cGxhZG1pbjpCcmFuY2gyMDAw";
}
// $pop = new \CURLFILE('/Users/kwesibanson/Documents/36-PropertyBillsRegister-2019.pdf');
// $curl_file = new \CURLFILE(public_path('documents/ultra_host.pdf'));
// dd($data);
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(': ', 'Authorization: Basic ' . $auth),
));
$response = curl_exec($curl);
curl_close($curl);
return $response;
}
}