prefix.DB::$namespace.'_booking_tracking'; } public function __construct() { parent::__construct(); $this->table_name = $this->prefix.'_booking_tracking'; $this->primary_key = 'id'; $this->version = '1.0'; } public function sql_create() { return "CREATE TABLE {$this->table_name} ( id bigint(20) NOT NULL AUTO_INCREMENT, restaurant_id bigint(20) DEFAULT NULL, booking_id bigint(20) DEFAULT NULL, utm_source varchar(255) DEFAULT NULL, utm_medium varchar(255) DEFAULT NULL, utm_campaign varchar(255) DEFAULT NULL, utm_term varchar(255) DEFAULT NULL, utm_content varchar(255) DEFAULT NULL, utm_id varchar(255) DEFAULT NULL, gclid varchar(255) DEFAULT NULL, fbclid varchar(255) DEFAULT NULL, msclkid varchar(255) DEFAULT NULL, ttclid varchar(255) DEFAULT NULL, referrer_url varchar(500) DEFAULT NULL, landing_page varchar(500) DEFAULT NULL, user_agent text DEFAULT NULL, ip_address varchar(45) DEFAULT NULL, raw_query text DEFAULT NULL, settings longtext DEFAULT NULL, date_created datetime NOT NULL, date_modified datetime NOT NULL, PRIMARY KEY (id), KEY `booking_tracking_restaurant_id_foreign` (`restaurant_id`), CONSTRAINT `booking_tracking_restaurant_id_foreign` FOREIGN KEY (`restaurant_id`) REFERENCES `{$this->prefix}_restaurants` (`id`) ON DELETE CASCADE, KEY `booking_tracking_booking_id_foreign` (`booking_id`), CONSTRAINT `booking_tracking_booking_id_foreign` FOREIGN KEY (`booking_id`) REFERENCES `{$this->prefix}_bookings` (`id`) ON DELETE CASCADE, KEY `booking_tracking_utm_source` (`utm_source`), KEY `booking_tracking_utm_medium` (`utm_medium`), KEY `booking_tracking_utm_campaign` (`utm_campaign`), KEY `booking_tracking_gclid` (`gclid`), KEY `booking_tracking_fbclid` (`fbclid`), KEY `booking_tracking_date_created` (`date_created`) )"; } public function sql_update_columns_releases() { $queries = []; $this->run_queries_updates($queries); } } SRR_DB_Booking_Tracking::init();