<?php
/**
 * YATOON_Twilio - FREE stub
 *
 * SMS notifications are a Pro feature. All methods are safe no-ops in
 * the free version. The real implementation lives in the Pro package
 * (includes/pro/class-yatoon-twilio.php).
 *
 * [FREE]
 */
if ( ! defined( 'ABSPATH' ) ) exit;

class YATOON_Twilio {

    public function __construct() {}

    /**
     * The free version never has SMS configured. Core code consults this
     * before attempting to send anything, so returning false here is enough
     * to silently disable the entire SMS pipeline.
     */
    public static function is_enabled()    { return false; }
    public static function is_configured() { return false; }

    /** Catch-all for any other Twilio method the core code may call. */
    public function __call( $name, $args )           { return false; }
    public static function __callStatic( $name, $args ) { return false; }

    /** Common methods called by core code - all no-ops in free. */
    public static function send( $to, $message )                       { return false; }
    public static function send_customer_confirmation( $b, $s, $st )   { return false; }
    public static function send_admin_alert( $b, $s, $st )             { return false; }
    public static function send_reminder( $b, $s, $st )                { return false; }
    public static function send_reschedule_sms( $booking )             { return false; }
    public static function send_cancel_sms( $booking )                 { return false; }

    /** Test-send returns a structured "Pro required" response for the admin UI. */
    public static function test_send( $test_to ) {
        return array(
            'success'     => false,
            'message'     => __( 'SMS notifications are a Pro feature. Upgrade to enable Twilio.', 'yatoon-booking-system' ),
            'is_pro_gate' => true,
        );
    }
}
