-- Prestige Barber Club v4.40.3
-- Disarankan menjalankan upgrade_v4_40_3.php karena dapat mengikuti nilai setting member_card_validity_months.
-- SQL ini idempotent untuk MySQL/MariaDB dengan INFORMATION_SCHEMA.
SET @db := DATABASE();
SET @exists_col := (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=@db AND TABLE_NAME='pre_members' AND COLUMN_NAME='membership_validity_months');
SET @ddl := IF(@exists_col=0,
  'ALTER TABLE pre_members ADD COLUMN membership_validity_months INT NOT NULL DEFAULT 12 AFTER join_date',
  'SELECT 1');
PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt;
SET @validity := COALESCE((SELECT CAST(setting_value AS UNSIGNED) FROM settings WHERE setting_key='member_card_validity_months' LIMIT 1),12);
UPDATE pre_members SET membership_validity_months=@validity WHERE membership_validity_months IS NULL OR membership_validity_months<=0;
INSERT INTO settings(setting_key,setting_value) VALUES('schema_release','4.40.3') ON DUPLICATE KEY UPDATE setting_value=VALUES(setting_value);
