Frontend/Http/Controllers/FrontendController.php

254 lines
8.9 KiB
PHP
Raw Normal View History

2023-09-07 16:33:13 +00:00
<?php
2023-09-11 08:35:05 +00:00
namespace Modules\Frontend\Http\Controllers;
use Carbon\Carbon;
use Illuminate\Contracts\Support\Renderable;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Http;
use Illuminate\Support\Facades\Storage;
use Revolution\Google\Sheets\Facades\Sheets;
class FrontendController extends Controller
2023-09-07 16:33:13 +00:00
{
2023-09-11 08:35:05 +00:00
/**
* Display a listing of the resource.
*
* @return Renderable
*/
public function index()
{
if (File::exists('storage/kurs.json')) {
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)->format('Y-m-d');
if ($date != date('Y-m-d')) {
$this->getKurs();
}
} else {
$this->getKurs();
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
$usd = $kurs->conversion_rate;
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)
->locale('id')
->setTimezone('Asia/Jakarta')
->translatedFormat('d F Y H:i:s');
$sheets = Sheets::spreadsheet('1c2Uv3QVTyLzsJPE4uqqlMGNKO8z0Kqj6aEGh0uixAqA')
->sheet('Platform')
2023-11-23 06:47:10 +00:00
->range('A:G')
2023-09-11 08:35:05 +00:00
->get();
$header = $sheets->pull(0);
$posts = Sheets::collection($header, $sheets);
$posts = $posts->take(5000);
$data = new Collection($posts->toArray());
$platform = $data->random(5);
return view('frontend::index', compact('kurs', 'usd', 'date', 'platform'));
}
2023-09-07 16:33:13 +00:00
2023-09-13 16:39:37 +00:00
public function ont()
{
2023-09-13 16:43:14 +00:00
if (File::exists('storage/kurs.json')) {
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)->format('Y-m-d');
if ($date != date('Y-m-d')) {
$this->getKurs();
}
} else {
2023-09-13 16:39:37 +00:00
$this->getKurs();
}
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
2023-09-13 16:43:14 +00:00
$usd = $kurs->conversion_rate;
2023-09-13 16:39:37 +00:00
2023-09-13 16:43:14 +00:00
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)
->locale('id')
->setTimezone('Asia/Jakarta')
->translatedFormat('d F Y H:i:s');
$sheets = Sheets::spreadsheet('1c2Uv3QVTyLzsJPE4uqqlMGNKO8z0Kqj6aEGh0uixAqA')
->sheet('Platform')
2023-11-23 06:47:10 +00:00
->range('A:G')
2023-09-13 16:43:14 +00:00
->get();
$header = $sheets->pull(0);
$posts = Sheets::collection($header, $sheets);
$posts = $posts->take(5000);
$data = new Collection($posts->toArray());
2023-09-13 16:39:37 +00:00
$platform = $data->random(5);
return view('frontend::ont', compact('kurs', 'usd','date','platform'));
}
public function press()
{
return view('frontend::press-release');
}
2023-11-23 07:17:03 +00:00
public function oligos()
{
return view('frontend::press-release-oligos');
}
2023-09-11 08:35:05 +00:00
public function cakupan()
{
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
if (File::exists('storage/kurs.json')) {
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)->format('Y-m-d');
if ($date != date('Y-m-d')) {
$this->getKurs();
}
} else {
$this->getKurs();
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
$json = File::get('storage/kurs.json');
$kurs = json_decode($json);
$usd = $kurs->conversion_rate;
$date = Carbon::createFromTimestamp($kurs->time_last_update_unix)
->locale('id')
->setTimezone('Asia/Jakarta')
->translatedFormat('d F Y H:i:s');
$sheets = Sheets::spreadsheet('1c2Uv3QVTyLzsJPE4uqqlMGNKO8z0Kqj6aEGh0uixAqA')
->sheet('Platform')
2023-11-23 06:47:10 +00:00
->range('A:G')
2023-09-11 08:35:05 +00:00
->get();
$header = $sheets->pull(0);
$posts = Sheets::collection($header, $sheets);
$data = new Collection($posts->toArray());
return view('frontend::cakupan', compact('kurs', 'usd', 'date', 'data'));
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
public function peneliti()
{
$sheets = Sheets::spreadsheet('1kM32QnxjRDpH1WkFSfOwMuTKzoCQpXFDYhekARcypjY')
->sheet('Research Proposal')
->range('A:K')
->get();
$header = $sheets->pull(0);
$posts = Sheets::collection($header, $sheets);
$posts = $posts->take(5000);
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
$data = $posts->toArray();
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
$researcher = [];
$no = 1;
if ($data) {
foreach ($data as $key => $value) {
if ($data[$key]['Researchers Name'] != null) {
$output['no'] = $no++;
$output['id'] = $data[$key]['ID'];
$output['reseracher_name'] = $data[$key]['Researchers Name'];
$output['region'] = $data[$key]['Region'];
$output['institution'] = $data[$key]['Institution'];
$output['research_title'] = $data[$key]['Research Title'];
$output['email'] = $data[$key]['Email'];
$output['registration_date'] = $data[$key]['Registration Date'];
$researcher[] = $output;
}
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
} else {
$researcher = [];
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
return view('frontend::peneliti', compact('researcher'));
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
public function facility()
{
$sheets = Sheets::spreadsheet('1kM32QnxjRDpH1WkFSfOwMuTKzoCQpXFDYhekARcypjY')
->sheet('Sequencing Facility')
->get();
$header = $sheets->pull(0);
$posts = Sheets::collection($header, $sheets);
$posts = $posts->take(5000);
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
$data = $posts->toArray();
$facility = [];
$no = 1;
if ($data) {
foreach ($data as $key => $value) {
if ($data[$key]['Facility Name'] != null) {
$output['no'] = $no++;
$output['facility_name'] = $data[$key]['Facility Name'];
$output['institution'] = $data[$key]['Institution'];
$output['address'] = $data[$key]['Address'];
$output['region'] = $data[$key]['Region'];
$facility[] = $output;
}
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
} else {
$facility = [];
2023-09-07 16:33:13 +00:00
}
2023-09-11 08:35:05 +00:00
return view('frontend::facility', compact('facility'));
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function hibah()
{
return view('frontend::hibah');
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function kuisioner()
{
return view('frontend::kuisioner');
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function consent()
{
return view('frontend::consent');
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function silx_ci()
{
return view('frontend::ci');
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function silx_ic()
{
return view('frontend::ic');
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function getKurs()
{
$response = Http::get('https://v6.exchangerate-api.com/v6/7ac9163481b1e658bc0ef6a5/pair/USD/IDR');
$data = $response->json();
Storage::disk('public')->put('kurs.json', json_encode($data));
}
2023-09-07 16:33:13 +00:00
2023-09-11 08:35:05 +00:00
public function domain(Request $request)
{
if (isset($request->search)) {
$domain = $request->search;
$response = Http::asForm()->POST('https://srb1975.srs-x.com/api/domain/check', [
'username' => "qnwa882l",
'password' => "cdae44fd320c033dcd69718b217cdcc6fd51b8476d739e3d8b1c3a1fa5366395",
'domain' => $domain,
]);
$data = simplexml_load_string($response->body());
$data = $data->result;
return view('frontend::domain', compact('data'));
} else {
return view('frontend::domain');
}
2023-09-07 16:33:13 +00:00
}
}