56 lines
1.5 KiB
PHP
56 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Ejaculation;
|
|
use App\Information;
|
|
use Carbon\Carbon;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class HomeController extends Controller
|
|
{
|
|
/**
|
|
* Create a new controller instance.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Show the application dashboard.
|
|
*
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function index()
|
|
{
|
|
$informations = Information::query()
|
|
->select('id', 'category', 'pinned', 'title', 'created_at')
|
|
->orderByDesc('pinned')
|
|
->orderByDesc('created_at')
|
|
->take(3)
|
|
->get();
|
|
$categories = Information::CATEGORIES;
|
|
|
|
if (Auth::check()) {
|
|
// お惣菜コーナー用のデータ取得
|
|
$publicLinkedEjaculations = Ejaculation::join('users', 'users.id', '=', 'ejaculations.user_id')
|
|
->where('users.is_protected', false)
|
|
->where('ejaculations.is_private', false)
|
|
->where('ejaculations.link', '<>', '')
|
|
->orderBy('ejaculations.ejaculated_date', 'desc')
|
|
->select('ejaculations.*')
|
|
->with('user', 'tags')
|
|
->take(5)
|
|
->get();
|
|
|
|
return view('home')->with(compact('informations', 'categories', 'publicLinkedEjaculations'));
|
|
} else {
|
|
return view('guest')->with(compact('informations', 'categories'));
|
|
}
|
|
}
|
|
}
|