Exemplo n.º 1
0
/**
 * Main init hook.
 *
 * All rest of init processes are continued here.
 * Sets locale, constants, includes...
 *
 * @todo Make sure plugin AND embedded code are calling this function on 'init'
 * @todo Test priorities
 */
function wpcf_embedded_init()
{
    global $types_instances, $wp_current_filter;
    // Record hook
    $types_instances['hook'] = $wp_current_filter;
    $types_instances['init_queued'] = '#' . did_action('init');
    $types_instances['init_priority'] = TYPES_INIT_PRIORITY;
    $types_instances['forced_embedded'] = defined('TYPES_LOAD_EMBEDDED') && TYPES_LOAD_EMBEDDED;
    // Loader
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/loader.php';
    do_action('wpcf_before_init');
    do_action('types_before_init');
    // Define necessary constants if plugin is not present
    // This ones are skipped if used as embedded code!
    if (!defined('WPCF_VERSION')) {
        define('WPCF_VERSION', '1.6.6.3');
        define('WPCF_META_PREFIX', 'wpcf-');
    }
    // If forced embedded mode use path to __FILE__
    if (defined('TYPES_LOAD_EMBEDDED') && TYPES_LOAD_EMBEDDED || !defined('WPCF_RELPATH')) {
        define('WPCF_EMBEDDED_RELPATH', wpcf_get_file_url(__FILE__, false));
    } else {
        define('WPCF_EMBEDDED_RELPATH', WPCF_RELPATH . '/embedded');
    }
    // Define embedded paths
    define('WPCF_EMBEDDED_INC_RELPATH', WPCF_EMBEDDED_RELPATH . '/includes');
    define('WPCF_EMBEDDED_RES_RELPATH', WPCF_EMBEDDED_RELPATH . '/resources');
    // TODO INCLUDES!
    //
    // Please add all required includes here
    // Since Types 1.2 we can consider existing code as core.
    // All new functionalities should be added as includes HERE
    // and marked with @since Types $version.
    //
    // Thanks!
    //
    // Basic
    /*
     *
     * Mind class extensions queue
     */
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/fields.php';
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/field.php';
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/usermeta_field.php';
    // Added by Gen, usermeta fields class
    // Repeater
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/repeater.php';
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/usermeta_repeater.php';
    // Added by Gen, usermeta repeater class
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/repetitive-fields-ordering.php';
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/repetitive-usermetafields-ordering.php';
    // Relationship
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/relationship.php';
    // Conditional
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/conditional.php';
    // API
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/api.php';
    // Validation
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/validation.php';
    // Post Types
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/class.wpcf-post-types.php';
    // Import Export
    require_once WPCF_EMBEDDED_ABSPATH . '/classes/class.wpcf-import-export.php';
    // Module manager
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/module-manager.php';
    // WPML specific code
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/wpml.php';
    // CRED specific code.
    if (defined('CRED_FE_VERSION')) {
        require_once WPCF_EMBEDDED_INC_ABSPATH . '/cred.php';
    }
    /*
     *
     *
     * TODO This is a must for now.
     * See if any fields need to be loaded.
     *
     * 1. Checkboxes - may be missing when submitted
     */
    require_once WPCF_EMBEDDED_INC_ABSPATH . '/fields/checkbox.php';
    /*
     *
     *
     * Use this call to load basic scripts and styles if necesary
     * wpcf_enqueue_scripts();
     */
    require_once WPCF_EMBEDDED_ABSPATH . '/usermeta-init.php';
    // Include frontend or admin code
    if (is_admin()) {
        require_once WPCF_EMBEDDED_ABSPATH . '/admin.php';
        /*
         * TODO Check if called twice
         *
         * Watch this! This is actually called twice everytime
         * in both modes (plugin or embedded)
         */
        wpcf_embedded_admin_init_hook();
    } else {
        require_once WPCF_EMBEDDED_ABSPATH . '/frontend.php';
    }
    global $wpcf;
    // TODO since Types 1.2 Continue adding new functionalities HERE
    /*
     * Consider code already there as core.
     * Use hooks to add new functionalities
     *
     * Introduced new global object $wpcf
     * Holds useful objects like:
     * $wpcf->field - Field object (base item object)
     * $wpcf->repeater - Repetitive field object
     */
    // Set debugging
    if (!defined('WPCF_DEBUG')) {
        define('WPCF_DEBUG', false);
    } else {
        if (WPCF_DEBUG) {
            wp_enqueue_script('jquery');
        }
    }
    $wpcf->debug = new stdClass();
    require WPCF_EMBEDDED_INC_ABSPATH . '/debug.php';
    add_action('wp_footer', 'wpcf_debug', PHP_INT_MAX);
    add_action('admin_footer', 'wpcf_debug', PHP_INT_MAX);
    // Set field object
    $wpcf->field = new WPCF_Field();
    // Set fields object
    $wpcf->fields = new WPCF_Fields();
    // Set usermeta field object
    $wpcf->usermeta_field = new WPCF_Usermeta_Field();
    // Set repeater object
    $wpcf->usermeta_repeater = new WPCF_Usermeta_Repeater();
    // Set repeater object
    $wpcf->repeater = new WPCF_Repeater();
    // Set relationship object
    $wpcf->relationship = new WPCF_Relationship();
    // Set conditional object
    $wpcf->conditional = new WPCF_Conditional();
    // Set validate object
    $wpcf->validation = new WPCF_Validation();
    // Set import export objects
    $wpcf->import = new WPCF_Import_Export();
    $wpcf->export = new WPCF_Import_Export();
    // Set post object
    $wpcf->post = new stdClass();
    // Set post types object
    $wpcf->post_types = new WPCF_Post_Types();
    // Define exceptions - privileged plugins and their data
    $wpcf->toolset_post_types = array('view', 'view-template', 'cred-form');
    // 'attachment' = Media
    //
    $wpcf->excluded_post_types = array('dd_layouts', 'cred-form', 'mediapage', 'nav_menu_item', 'revision', 'view', 'view-template', 'wp-types-group', 'wp-types-user-group');
    // Init loader
    WPCF_Loader::init();
    /*
     * TODO Check why we enabled this
     *
     * I think because of CRED or Views using Types admin functions on frontend
     * Does this need review?
     */
    if (defined('DOING_AJAX')) {
        require_once WPCF_EMBEDDED_ABSPATH . '/frontend.php';
    }
    // Check if import/export request is going on
    wpcf_embedded_check_import();
    do_action('types_after_init');
    do_action('wpcf_after_init');
}
Exemplo n.º 2
0
<?php

/**
 *
 *
 */
require_once 'api.php';
define('WPTOOLSET_FORMS_VERSION', '0.1.1');
define('WPTOOLSET_FORMS_ABSPATH', dirname(__FILE__));
/**
 * check we are as a embedded?
 */
if (defined('WPCF_RUNNING_EMBEDDED') && WPCF_RUNNING_EMBEDDED) {
    define('WPTOOLSET_FORMS_RELPATH', wpcf_get_file_url(__FILE__, false));
}
/**
 * setup WPTOOLSET_FORMS_RELPATH for plugin
 */
if (!defined('WPTOOLSET_FORMS_RELPATH')) {
    define('WPTOOLSET_FORMS_RELPATH', plugins_url('', __FILE__));
}
if (!defined('WPTOOLSET_COMMON_PATH')) {
    define('WPTOOLSET_COMMON_PATH', plugin_dir_path(__FILE__));
}
class WPToolset_Forms_Bootstrap
{
    private $__forms;
    public final function __construct()
    {
        // Custom conditinal AJAX check
        add_action('wp_ajax_wptoolset_custom_conditional', array($this, 'ajaxCustomConditional'));