<?php
namespace App\Http\Controllers;
use App\Models\anggota;
use App\Models\anggota_club;
use App\Models\anggota_gudep;
use App\Models\anggota_saka;
use App\Models\berita;
use App\Models\club;
use App\Models\dataIndikator;
use App\Models\document;
use App\Models\document_photo;
use App\Models\document_video;
use App\Models\event;
use App\Models\gedung_olahraga;
use App\Models\gedung_organisasi;
use App\Models\gudep;
use App\Models\kecamatan;
use App\Models\medsos;
use App\Models\olahraga;
use App\Models\Post;
use App\Models\saka;
use App\Models\tag_event;
use App\Models\User;
use CyrildeWit\EloquentViewable\Contracts\Views;
use CyrildeWit\EloquentViewable\Visitor;
use DateTime;
use Illuminate\Http\Request;
use Illuminate\Pagination\Paginator;
use Illuminate\Support\Facades\Crypt;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Response;
use Illuminate\Support\Facades\Storage;
class FrontController extends Controller
{
public function home(Request $request)
{
$data['organisasi'] = User::with('kecamatan')->where('persetujuan', 1)->whereIn('role', [1, 3, 4])->latest()->paginate(20);
$data['list'] = dataIndikator::with('listData')->get();
$data['berita'] = berita::paginate(3);
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$dateTime = new DateTime(now());
$year = $dateTime->format("Y");
$data['tahun'] = $year;
for ($a = 1; $a <= 10; $a++) {
$data["agt_$a"] = anggota::where('kecamatan_id', $a)->distinct('no_ktp')->count();
}
for ($b = 1; $b <= 10; $b++) {
$data["org_$b"] = User::where('kecamatan_id', $b)->where('persetujuan', 1)->count();
}
for ($i = 1; $i <= 10; $i++) {
$data["club_$i"] = User::where(['kecamatan_id' => $i, 'role' => 2, 'persetujuan' => 1])->count();
}
for ($j = 1; $j <= 10; $j++) {
$data["gedung_organisasi_$j"] = User::where('kecamatan_id', $j)->whereIn('role', [1, 3, 4])->where('persetujuan', 1)->select('gedung')->get();
$data["gedung_olahraga_$j"] = User::where('kecamatan_id', $j)->where('role', 2)->where('persetujuan', 1)->select('gedung')->get();
}
$request->visitor()->visit();
$startOfDay = now()->startOfDay();
$endOfDay = now()->endOfDay();
$startOfWeek = now()->startOfWeek();
$endOfWeek = now()->endOfWeek();
$startOfMonth = now()->startOfMonth();
$endOfMonth = now()->endOfMonth();
$data['visitor_hariini'] = DB::table('shetabit_visits')->whereBetween('created_at', [$startOfDay, $endOfDay])->count();
$data['visitor_mingguini'] = DB::table('shetabit_visits')->whereBetween('created_at', [$startOfWeek, $endOfWeek])->count();
$data['visitor_bulanini'] = DB::table('shetabit_visits')->whereBetween('created_at', [$startOfMonth, $endOfMonth])->count();
$data['visitor_all'] = DB::table('shetabit_visits')->count();
return view('front.home')->with($data);
}
public function sebaran_pemuda()
{
for ($i = 16; $i <= 35; $i++) {
$data["umur_l_$i"] = anggota_saka::where(['umur' => $i, 'jenis_kelamin' => 'laki-laki'])->count() + anggota_gudep::where(['umur' => $i, 'jenis_kelamin' => 'laki-laki'])->count() + anggota::where(['umur' => $i, 'jenis_kelamin' => 'laki-laki'])->count() + anggota_club::where(['umur' => $i, 'jenis_kelamin' => 'laki-laki'])->count();
$data["umur_p_$i"] = anggota_saka::where(['umur' => $i, 'jenis_kelamin' => 'perempuan'])->count() + anggota_gudep::where(['umur' => $i, 'jenis_kelamin' => 'perempuan'])->count() + anggota::where(['umur' => $i, 'jenis_kelamin' => 'perempuan'])->count() + anggota_club::where(['umur' => $i, 'jenis_kelamin' => 'perempuan'])->count();
}
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
return view('front.sebaran_pemuda')->with($data);
}
public function indeks_pemuda()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
return view('front.indeks_pemuda')->with($data);
}
public function organisasi_kepemudaan()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['organisasi'] = User::where('role', 1)->where('persetujuan', 1)->paginate(6);
Paginator::useBootstrap();
return view('front.organisasi_kepemudaan')->with($data);
}
public function newsById($id)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$decryptedId = Crypt::decryptString($id);
$data['berita'] = berita::where('id', $decryptedId)->first();
$data['rekomendasi'] = berita::where('id', '!=', $decryptedId)->latest()->paginate(3);
return view('berita.berita_byid')->with($data);
}
public function organisasi_detail($id)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$decryptedId = Crypt::decryptString($id);
$data['data'] = User::where('id', $decryptedId)->first();
return view('organisasi.detail')->with($data);
}
public function kwartir_cabang()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
return view('front.kwartir_cabang')->with($data);
}
public function satuan_karya()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['saka'] = User::with('saka')->where('role', 3)->where('persetujuan', 1)->paginate(10);
return view('front.satuan_karya')->with($data);
}
public function gugus_depan()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['gudep'] = User::with('gudep')->where('role', 4)->where('persetujuan', 1)->paginate(10);
return view('front.gugus_depan')->with($data);
}
public function olah_raga()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
// $berita = berita::where('tag', 'LIKE', '%'.'bawda'.'%')->get();
$data['olahraga'] = berita::where('tag', 'LIKE', '%' . 'olahraga' . '%')->latest()->paginate(3);
$data['jenis_olga'] = olahraga::get();
$data['tumbnail'] = berita::where('tag', 'LIKE', '%' . 'olahraga' . '%')->latest()->first();
return view('front.olahraga')->with($data);
}
public function olga_byid(string $id)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$decryptedId = Crypt::decrypt($id);
$data['olga'] = User::with('club')
->whereHas('club', function ($query) use ($decryptedId) {
$query->where('olahraga_id', $decryptedId);
})
->where('role', 2)->paginate(10);
return view('olahraga_populer.index')->with($data);
}
public function informasi()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['banner'] = Berita::where('banner', 1)->get();
$data['berita'] = Berita::where(function ($query) {
$query->where('tag', 'NOT LIKE', '%' . 'pariwisata' . '%')
->where('tag', 'NOT LIKE', '%' . 'ekonomi' . '%')
->where('tag', 'NOT LIKE', '%' . 'ekonomi kreatif' . '%')
->where('tag', 'NOT LIKE', '%' . 'wisata' . '%');
})->paginate(6);
return view('front.informasi')->with($data);
}
public function lihat_semua($id)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$op = 6 + $id;
$data['banner'] = berita::where('banner', 1)->get();
$data['berita'] = berita::paginate($op);
return view('front.informasi')->with($data);
}
public function filter_berita(string $filter)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['banner'] = berita::where('banner', 1);
$data['berita'] = berita::where('tag', 'LIKE', '%' . $filter . '%')->orwhere('deskripsi', 'LIKE', '%' . $filter . '%')->orwhere('title', 'LIKE', '%' . $filter . '%')->get();
return view('front.informasi')->with($data);
}
public function pariwisata()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['berita'] = berita::where('tag', 'LIKE', '%' . 'pariwisata' . '%')->orWhere('tag', 'LIKE', '%' . 'ekonomi ' . '%')->orWhere('tag', 'LIKE', '%' . 'ekonomi kreatif' . '%')->orWhere('tag', 'LIKE', '%' . 'wisata' . '%')->paginate(12);
return view('front.pariwisata')->with($data);
}
public function dokumen($id)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
if ($id == 1) {
$data['latest'] = document::latest('updated_at')->paginate(3);
$data['document'] = document::with('admin')->paginate(10);
return view('front.dokumen')->with($data);
} elseif ($id == 2) {
$data['latest'] = document_photo::latest('updated_at')->paginate(3);
$data['document'] = document_photo::with('admin')->paginate(10);
return view('front.dokumen')->with($data);
} else {
$data['latest'] = document_video::latest('updated_at')->paginate(3);
$data['document'] = document_video::with('admin')->paginate(10);
return view('front.dokumen')->with($data);
}
}
public function download($filename, $jenis)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
if ($jenis == 1) {
$file = document::where('name', $filename);
$file->increment('jumlah_download');
$filePath = public_path('documents' . '/' . $filename);
return Response::download($filePath);
} elseif ($jenis == 2) {
$file = document_photo::where('name', $filename);
$file->increment('jumlah_download');
$filePath = public_path('document_photos' . '/' . $filename);
return Response::download($filePath);
} else {
$file = document_video::where('name', $filename);
$file->increment('jumlah_download');
$filePath = public_path('document_videos' . '/' . $filename);
return Response::download($filePath);
}
}
public function search(Request $request)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$jenis = $request->jenis;
if ($jenis == 1) {
$search = $request->search;
$data['latest'] = document::latest('updated_at')->paginate(3);
$data['document'] = document::where('deskripsi', 'like', "%" . $search . "%")->paginate(10);
return view('front.dokumen')->with($data);
} elseif ($jenis == 2) {
$search = $request->search;
$data['latest'] = document_photo::latest('updated_at')->paginate(3);
$data['document'] = document_photo::where('deskripsi', 'like', "%" . $search . "%")->paginate(10);
return view('front.dokumen')->with($data);
} else {
$search = $request->search;
$data['latest'] = document_video::latest('updated_at')->paginate(3);
$data['document'] = document_video::where('deskripsi', 'like', "%" . $search . "%")->paginate(10);
return view('front.dokumen')->with($data);
}
}
public function filter(Request $request)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$jenis = $request->jenis;
if ($jenis == 1) {
$data['latest'] = document::latest('updated_at')->paginate(3);
$data['document'] = document::latest('tanggal')->paginate(10);
return view('front.dokumen')->with($data);
} elseif ($jenis == 2) {
$data['latest'] = document_photo::latest('updated_at')->paginate(3);
$data['document'] = document_photo::latest('tanggal')->paginate(10);
return view('front.dokumen')->with($data);
} else {
$data['latest'] = document_video::latest('updated_at')->paginate(3);
$data['document'] = document_video::latest('tanggal')->paginate(10);
return view('front.dokumen')->with($data);
}
}
public function event()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['event'] = event::with('tag_event')->paginate(12);
$data['tags'] = tag_event::paginate(12);
return view('front.event')->with($data);
}
public function search_event(Request $request)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$search = $request->search;
$data['tags'] = tag_event::paginate(12);
$data['event'] = event::where('title', 'like', "%" . $search . "%")->paginate(10);
return view('front.event')->with($data);
}
public function tags_event($tags)
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$tag = Crypt::decrypt($tags);
$data['tags'] = tag_event::paginate(12);
$data['event'] = event::where('tag_id', $tag)->paginate(10);
return view('front.event')->with($data);
}
public function rekomendasi()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['organisasi'] = User::paginate(9);
return view('front.rekomendasi')->with($data);
}
public function wirausaha()
{
$data['fb'] = medsos::where('id',1)->first();
$data['ig'] = medsos::where('id',2)->first();
$data['yt'] = medsos::where('id',3)->first();
$data['tw'] = medsos::where('id',4)->first();
$data['wirausaha'] = anggota::where('status', 1)->paginate(12);
return view('front.wirausaha')->with($data);
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]