'First Name', 'last_name' => 'Last Name', 'email' => 'Email', 'phone' => 'Phone', 'company' => 'Company', 'notes' => 'Notes', ); require_once LACRM_FORMS_PLUGIN_DIR . 'includes/class-lacrm-logger.php'; require_once LACRM_FORMS_PLUGIN_DIR . 'includes/class-lacrm-api.php'; require_once LACRM_FORMS_PLUGIN_DIR . 'includes/class-lacrm-admin-settings.php'; if ( class_exists( 'GFForms' ) ) { add_action( 'gform_loaded', 'lacrm_forms_init_gravity_forms', 5 ); } /** * Load Gravity Forms add-on only after GF feed framework is available (avoids GFFeedAddOn not found). */ function lacrm_forms_init_gravity_forms(): void { if ( ! method_exists( 'GFForms', 'include_feed_addon_framework' ) ) { return; } GFForms::include_feed_addon_framework(); require_once LACRM_FORMS_PLUGIN_DIR . 'includes/class-lacrm-gravity-forms.php'; GFAddOn::register( 'LACRM_Forms_Gravity_Forms' ); } /** * Bootstrap the plugin. */ function lacrm_forms_init(): void { LACRM_Forms_Admin_Settings::instance(); LACRM_Forms_Logger::instance(); if ( class_exists( 'WPCF7' ) ) { require_once LACRM_FORMS_PLUGIN_DIR . 'includes/class-lacrm-contact-form-7.php'; LACRM_Forms_Contact_Form_7::instance(); } } add_action( 'plugins_loaded', 'lacrm_forms_init' ); /** * Get plugin option. * * @param string $key Option key. * @param mixed $default Default value. * @return mixed */ function lacrm_forms_get_option( string $key, $default = null ) { $options = get_option( 'lacrm_forms_settings', array() ); $options = is_array( $options ) ? $options : array(); return array_key_exists( $key, $options ) ? $options[ $key ] : $default; }