show_errors(); $wpdb->query( "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}cf7db ( id int(11) unsigned NOT NULL auto_increment, form int(11) NOT NULL, data text NOT NULL, submitted datetime NOT NULL, PRIMARY KEY (id) );" ); } ); // Function to execute on plugin deactivation register_deactivation_hook( __FILE__, function() { if ( ! current_user_can( 'activate_plugins' ) ) { return; } $plugin = isset( $_REQUEST[ 'plugin' ] ) ? $_REQUEST[ 'plugin' ] : null; check_admin_referer( 'deactivate-plugin_' . $plugin ); /* Code here */ } ); // Add language support to internationalize plugin add_action( 'init', function() { load_plugin_textdomain( 'wpcf7db', false, dirname( plugin_basename( __FILE__ ) ) . '/i18n/' ); } ); // HPOS compatibility add_action( 'before_woocommerce_init', function() { if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) { \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true ); } } ); // Add link to configuration page into plugin add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), function( $links ) { return array_merge( array( 'view' => '' . __( 'View', 'wpcf7db' ) . '' ), $links ); } ); // Register scripts & styles add_action( 'admin_enqueue_scripts', function( $hook ) { // Hook only on requested page if ( strpos( $hook, '_page_wpcf7db' ) === false ) { return; } // Support for minified versions $minified = SCRIPT_DEBUG === false ? '.min' : false; wp_enqueue_style( 'datatables', plugins_url( 'libs/datatables/css/jquery.dataTables.min.css', __FILE__ ), false, '1.10.12', 'all' ); wp_enqueue_style( 'datatables-buttons', plugins_url( 'libs/datatables/css/buttons.dataTables.min.css', __FILE__ ), false, '1.2.2', 'all' ); wp_enqueue_style( 'wpcf7db', plugins_url( 'resources/css/wpcf7db' . $minified . '.css', __FILE__ ), false, '1.0', 'all' ); wp_enqueue_script( 'datatables', plugins_url( 'libs/datatables/js/jquery.dataTables.min.js', __FILE__ ), false, '1.10.12', true ); wp_enqueue_script( 'datatables-buttons', plugins_url( 'libs/datatables/js/dataTables.buttons.min.js', __FILE__ ), false, '1.2.2', true ); wp_enqueue_script( 'datatables-buttons_html5', plugins_url( 'libs/datatables/js/buttons.html5.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-buttons_colvis', plugins_url( 'libs/datatables/js/buttons.colVis.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-buttons_print', plugins_url( 'libs/datatables/js/buttons.print.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-jszip', plugins_url( 'libs/datatables/js/jszip.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-pdfmake', plugins_url( 'libs/datatables/js/pdfmake.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-vfs_fonts', plugins_url( 'libs/datatables/js/vfs_fonts.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'datatables-select', plugins_url( 'libs/datatables/js/dataTables.select.min.js', __FILE__ ), false, false, true ); wp_enqueue_script( 'wpcf7db', plugins_url( 'resources/js/wpcf7db' . $minified . '.js', __FILE__ ), false, '1.0', true ); wp_localize_script( 'wpcf7db', 'parameters', array( 'lang' => get_locale(), 'url' => plugins_url( '', __FILE__ ), 'ajax_url' => admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce('wpcf7db-delete-nonce'), 'confirm' => __( 'Are you sure? This action is irreversible', 'wpcf7db' ) ) ); } ); // Add checks and notices add_action( 'admin_notices', function() { if ( ! is_plugin_active( 'contact-form-7/wp-contact-form-7.php' ) ) { ?>
submitted ) ) ); ?> |
post_title ); ?>: |