diff options
| author | horus | 2020-02-17 13:17:18 +0100 |
|---|---|---|
| committer | horus | 2020-02-17 13:17:18 +0100 |
| commit | 9ea335ab9c8f9e17e8ce8b6a7e76962bec7ed418 (patch) | |
| tree | dec69240d0d34eebce1cca7aab1f070742187fed /app/Http/Controllers | |
| download | zeitumstellung-9ea335ab9c8f9e17e8ce8b6a7e76962bec7ed418.tar.gz | |
Initial commit.
Diffstat (limited to 'app/Http/Controllers')
| -rw-r--r-- | app/Http/Controllers/Auth/ConfirmPasswordController.php | 40 | ||||
| -rw-r--r-- | app/Http/Controllers/Auth/ForgotPasswordController.php | 22 | ||||
| -rw-r--r-- | app/Http/Controllers/Auth/LoginController.php | 40 | ||||
| -rw-r--r-- | app/Http/Controllers/Auth/RegisterController.php | 73 | ||||
| -rw-r--r-- | app/Http/Controllers/Auth/ResetPasswordController.php | 30 | ||||
| -rw-r--r-- | app/Http/Controllers/Auth/VerificationController.php | 42 | ||||
| -rw-r--r-- | app/Http/Controllers/Controller.php | 13 | ||||
| -rw-r--r-- | app/Http/Controllers/IndexController.php | 18 | ||||
| -rw-r--r-- | app/Http/Controllers/iCalController.php | 46 |
9 files changed, 324 insertions, 0 deletions
diff --git a/app/Http/Controllers/Auth/ConfirmPasswordController.php b/app/Http/Controllers/Auth/ConfirmPasswordController.php new file mode 100644 index 0000000..138c1f0 --- /dev/null +++ b/app/Http/Controllers/Auth/ConfirmPasswordController.php @@ -0,0 +1,40 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use App\Providers\RouteServiceProvider; +use Illuminate\Foundation\Auth\ConfirmsPasswords; + +class ConfirmPasswordController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Confirm Password Controller + |-------------------------------------------------------------------------- + | + | This controller is responsible for handling password confirmations and + | uses a simple trait to include the behavior. You're free to explore + | this trait and override any functions that require customization. + | + */ + + use ConfirmsPasswords; + + /** + * Where to redirect users when the intended url fails. + * + * @var string + */ + protected $redirectTo = RouteServiceProvider::HOME; + + /** + * Create a new controller instance. + * + * @return void + */ + public function __construct() + { + $this->middleware('auth'); + } +} diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php new file mode 100644 index 0000000..465c39c --- /dev/null +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -0,0 +1,22 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use Illuminate\Foundation\Auth\SendsPasswordResetEmails; + +class ForgotPasswordController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Password Reset Controller + |-------------------------------------------------------------------------- + | + | This controller is responsible for handling password reset emails and + | includes a trait which assists in sending these notifications from + | your application to your users. Feel free to explore this trait. + | + */ + + use SendsPasswordResetEmails; +} diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php new file mode 100644 index 0000000..18a0d08 --- /dev/null +++ b/app/Http/Controllers/Auth/LoginController.php @@ -0,0 +1,40 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use App\Providers\RouteServiceProvider; +use Illuminate\Foundation\Auth\AuthenticatesUsers; + +class LoginController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Login Controller + |-------------------------------------------------------------------------- + | + | This controller handles authenticating users for the application and + | redirecting them to your home screen. The controller uses a trait + | to conveniently provide its functionality to your applications. + | + */ + + use AuthenticatesUsers; + + /** + * Where to redirect users after login. + * + * @var string + */ + protected $redirectTo = RouteServiceProvider::HOME; + + /** + * Create a new controller instance. + * + * @return void + */ + public function __construct() + { + $this->middleware('guest')->except('logout'); + } +} diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php new file mode 100644 index 0000000..c6a6de6 --- /dev/null +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -0,0 +1,73 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use App\Providers\RouteServiceProvider; +use App\User; +use Illuminate\Foundation\Auth\RegistersUsers; +use Illuminate\Support\Facades\Hash; +use Illuminate\Support\Facades\Validator; + +class RegisterController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Register Controller + |-------------------------------------------------------------------------- + | + | This controller handles the registration of new users as well as their + | validation and creation. By default this controller uses a trait to + | provide this functionality without requiring any additional code. + | + */ + + use RegistersUsers; + + /** + * Where to redirect users after registration. + * + * @var string + */ + protected $redirectTo = RouteServiceProvider::HOME; + + /** + * Create a new controller instance. + * + * @return void + */ + public function __construct() + { + $this->middleware('guest'); + } + + /** + * Get a validator for an incoming registration request. + * + * @param array $data + * @return \Illuminate\Contracts\Validation\Validator + */ + protected function validator(array $data) + { + return Validator::make($data, [ + 'name' => ['required', 'string', 'max:255'], + 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], + 'password' => ['required', 'string', 'min:8', 'confirmed'], + ]); + } + + /** + * Create a new user instance after a valid registration. + * + * @param array $data + * @return \App\User + */ + protected function create(array $data) + { + return User::create([ + 'name' => $data['name'], + 'email' => $data['email'], + 'password' => Hash::make($data['password']), + ]); + } +} diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php new file mode 100644 index 0000000..b1726a3 --- /dev/null +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -0,0 +1,30 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use App\Providers\RouteServiceProvider; +use Illuminate\Foundation\Auth\ResetsPasswords; + +class ResetPasswordController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Password Reset Controller + |-------------------------------------------------------------------------- + | + | This controller is responsible for handling password reset requests + | and uses a simple trait to include this behavior. You're free to + | explore this trait and override any methods you wish to tweak. + | + */ + + use ResetsPasswords; + + /** + * Where to redirect users after resetting their password. + * + * @var string + */ + protected $redirectTo = RouteServiceProvider::HOME; +} diff --git a/app/Http/Controllers/Auth/VerificationController.php b/app/Http/Controllers/Auth/VerificationController.php new file mode 100644 index 0000000..5e749af --- /dev/null +++ b/app/Http/Controllers/Auth/VerificationController.php @@ -0,0 +1,42 @@ +<?php + +namespace App\Http\Controllers\Auth; + +use App\Http\Controllers\Controller; +use App\Providers\RouteServiceProvider; +use Illuminate\Foundation\Auth\VerifiesEmails; + +class VerificationController extends Controller +{ + /* + |-------------------------------------------------------------------------- + | Email Verification Controller + |-------------------------------------------------------------------------- + | + | This controller is responsible for handling email verification for any + | user that recently registered with the application. Emails may also + | be re-sent if the user didn't receive the original email message. + | + */ + + use VerifiesEmails; + + /** + * Where to redirect users after verification. + * + * @var string + */ + protected $redirectTo = RouteServiceProvider::HOME; + + /** + * Create a new controller instance. + * + * @return void + */ + public function __construct() + { + $this->middleware('auth'); + $this->middleware('signed')->only('verify'); + $this->middleware('throttle:6,1')->only('verify', 'resend'); + } +} diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php new file mode 100644 index 0000000..a0a2a8a --- /dev/null +++ b/app/Http/Controllers/Controller.php @@ -0,0 +1,13 @@ +<?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; + +class Controller extends BaseController +{ + use AuthorizesRequests, DispatchesJobs, ValidatesRequests; +} diff --git a/app/Http/Controllers/IndexController.php b/app/Http/Controllers/IndexController.php new file mode 100644 index 0000000..629f756 --- /dev/null +++ b/app/Http/Controllers/IndexController.php @@ -0,0 +1,18 @@ +<?php + +namespace App\Http\Controllers; +use App\Libraries\Zeitumstellung; + +class IndexController extends Controller { + /** + * Shows the index page. + * + * @return Response + */ + public function showPage() { + + $tc = new Zeitumstellung(); + + return view('index', [ 'tc' => $tc ]); + } +} diff --git a/app/Http/Controllers/iCalController.php b/app/Http/Controllers/iCalController.php new file mode 100644 index 0000000..928976e --- /dev/null +++ b/app/Http/Controllers/iCalController.php @@ -0,0 +1,46 @@ +<?php + +namespace App\Http\Controllers; +use Illuminate\Http\Request; + +use Eluceo\iCal\Component\Calendar; +use Eluceo\iCal\Component\Event; + + +use App\Libraries\Zeitumstellung; + +class iCalController extends Controller { + /** + * Shows the index page. + * + * @return Response + */ + public function showPage(Request $request) { + + $tc = new Zeitumstellung(); + $data = $tc->getData(); + + $vCalendar = new Calendar('zeitumstellung.iamfabulous.de'); + $vCalendar->setName('Zeitumstellung'); + $vCalendar->setTimezone('Europe/Berlin'); + + $vEvent = new Event(); + $vEvent + ->setDtStart(new \DateTime($tc->dateText)) + ->setDtEnd(new \DateTime($tc->dateText)) + ->setNoTime(true) + ->setSummary('Zeitumstellung') + ->setDescription($tc->description) + ->setDescriptionHTML($tc->descriptionHTML); + + $vCalendar->addComponent($vEvent); + + header('Content-Type: text/calendar; charset=utf-8'); + + if ( '0' != $request->input('download') ) { + header('Content-Disposition: attachment; filename="zeitumstellung.ics"'); + } + + echo $vCalendar->render(); + } +} |
