From 95b41c32897cf2eb1a5b67349dfb816d04b08300 Mon Sep 17 00:00:00 2001 From: Christian Wach Date: Thu, 5 Jun 2014 12:04:55 +0100 Subject: [PATCH] add loader file --- bp-courseware-loader.php | 73 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 bp-courseware-loader.php diff --git a/bp-courseware-loader.php b/bp-courseware-loader.php new file mode 100644 index 0000000..bc90c45 --- /dev/null +++ b/bp-courseware-loader.php @@ -0,0 +1,73 @@ +=' ) ) { + add_action( 'bp_loaded', 'bpsp_courseware_load_core_component' ); + } +} +add_action( 'bp_include', 'bp_courseware_init' ); + +/** + * Loads component into the $bp global + */ +function bpsp_courseware_load_core_component() { + global $bp; + + require_once BPSP_PLUGIN_DIR . '/component/component.class.php'; + $bp->courseware = new BPSP_Courseware_Component(); +} + +// if BuddyPress is not present, use Ian Dunn's loading procedure +if ( ! is_plugin_active( 'buddypress/bp-loader.php' ) ) { + + /** + * On plugins loaded, mimic the component + */ + function bpsp_on_plugins_load() { + BPSP_Groups::activate_component(); + } + add_action( 'plugins_loaded', 'bpsp_on_plugins_load', 5 ); + + /* Initiate the componenets */ + function bpsp_init() { + new BPSP_WordPress(); + new BPSP_Roles(); + new BPSP_Groups(); + new BPSP_Courses(); + new BPSP_Lectures(); + new BPSP_Assignments(); + new BPSP_Responses(); + new BPSP_Gradebook(); + new BPSP_Bibliography(); + new BPSP_Schedules(); + new BPSP_Dashboards(); + new BPSP_Static(); + new BPSP_Activity(); + new BPSP_Notifications(); + + // @todo maybe some classes like activity will only be loaded if bp is active b/c they're completely tied to it + } + add_action( 'init', 'bpsp_init', 6 ); + + /** + * Register post types and taxonomies + */ + function bpsp_registration() { + BPSP_Courses::register_post_types(); + BPSP_Lectures::register_post_types(); + BPSP_Assignments::register_post_types(); + BPSP_Responses::register_post_types(); + BPSP_Gradebook::register_post_types(); + BPSP_Bibliography::register_post_types(); + BPSP_Schedules::register_post_types(); + } + add_action( 'init', 'bpsp_registration' ); + +}