<?php

namespace App\Http\Controllers;
use App\Mail\ContactFormMail;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Storage;

use Illuminate\Http\Request;

class PageController extends Controller
{
    public function home() {
        return view('home');
    }

    public function about() {
        return view('about');
    }

    public function contact() {
        return view('contact');
    }

    public function support() {
        return view('support');
    }

    public function logo() {
        return view('logo');
    }

    public function supportdocuments() {
        return view('support-documents');
    }

    public function submit(Request $request)
    {
        if (!empty($request->website_link)) {
            // Log bot attempt and stop form processing
            Log::warning('Bot detected via honeypot!');
            return back()->with('error', 'Bot detected! Form not submitted.');
        }

        $data = $request->all();
        
        // Mail::to('support@powerupgreen.org')->send(new ContactFormMail($data));

        // return back()->with('success', 'Your message has been sent!');
        try {
            // Send email to the recipient (this email will appear in Mailtrap inbox)
            Mail::to('support@powerupgreen.org')->send(new ContactFormMail($data));

            // Log the success message (you can check the log if needed)
            logger('Mail sent successfully to support@powerupgreen.org');

            // Return success message to user
            
            // return back()->with('success',' Thank you. Your response has been submitted.');
            return response()->json(['message' => 'Thanks for contacting us! We will be in touch soon.']);

        } catch (\Exception $e) {
            // Log the error message if something goes wrong
            logger('Mail failed: ' . $e->getMessage());

            // Return error message to the user
            // return back()->with('error', 'Mail not sent: ' . $e->getMessage());
            return response()->json(['message' => 'Something went wrong. Please try again.']);
            
        }
      
    }


    public function subscribe(Request $request)
    {
        // Validate email
        $request->validate([
            'email' => 'required|email',
        ]);

        // Prepare email to save
        $email = $request->input('email');
        $line = $email . PHP_EOL;

        // Save to a file called "subscribers.txt" inside storage/app
        Storage::append('subscribers.txt', $line);

        // Optional: Flash message back to user
        // return back()->with('success', 'Thanks for subscribing!');

          // Return success message
          return response()->json(['message' => 'Thanks for subscribing!']);
    }
}
