b0y-101 Mini Shell


Current Path : E:/www2/kidsbangna/wp-content/plugins/dw-question-answer/inc/extend/buddypress/
File Upload :
Current File : E:/www2/kidsbangna/wp-content/plugins/dw-question-answer/inc/extend/buddypress/loader.php

<?php
// Exit if accessed directly
if ( !defined( 'ABSPATH' ) ) exit;

if ( !class_exists( 'DWQA_QA_Component' ) ) :

class DWQA_QA_Component extends BP_Component {

	public function __construct() {
		parent::start(
			'dwqa',
			__( 'DWQA', 'dw-question-answer' ),
			DWQA_DIR .'inc/extend/buddypress/'
		);
		$this->includes();
		$this->setup_globals();
		$this->fully_loaded();
	}

	public function includes( $includes = array() ) {

		$includes[] = 'functions.php';

		if ( bp_is_active( 'notifications' ) ) {
			$includes[] = 'notifications.php';
		}

		parent::includes( $includes );
	}

	public function setup_globals( $args = array() ) {
		$bp = buddypress();

		// Define a slug, if necessary
		if ( !defined( 'BP_DWQA_SLUG' ) )
			define( 'BP_DWQA_SLUG', 'dwqa' );
			// define( 'BP_DWQA_SLUG', $this->id );

		$args = array(
			'path'          => BP_PLUGIN_DIR,
			'slug'          => BP_DWQA_SLUG,
			'root_slug'     => BP_DWQA_SLUG,
			'has_directory' => false,
			'search_string' => __( 'Search DWQA...', 'dw-question-answer' ),
		);

		parent::setup_globals( $args );
	}

	public function setup_nav( $main_nav = array(), $sub_nav = array() ) {

		// Stop if there is no user displayed or logged in
		if ( !is_user_logged_in() && !bp_displayed_user_id() )
			return;

		// Define local variable(s)
		$user_domain = '';

		// Add 'DWQA' to the main navigation
		$main_nav = array(
			'name'                => __( 'DWQA', 'dw-question-answer' ),
			'slug'                => $this->slug,
			'position'            => 80,
			'screen_function'     => 'dp_dwqa_screen_questions',
			'default_subnav_slug' => 'dwqa-question',
			'item_css_id'         => $this->id
		);

		// Determine user to use
		if ( bp_displayed_user_id() )
			$user_domain = bp_displayed_user_domain();
		elseif ( bp_loggedin_user_domain() )
			$user_domain = bp_loggedin_user_domain();
		else
			return;

		// User link
		$dwqa_link = trailingslashit( $user_domain . $this->slug );

		$sub_nav[] = array(
			'name'            => __( 'Questions', 'dw-question-answer' ),
			'slug'            => 'dwqa-question',
			'parent_url'      => $dwqa_link,
			'parent_slug'     => $this->slug,
			'screen_function' => 'dp_dwqa_screen_questions',
			'position'        => 20,
			'item_css_id'     => 'topics'
		);

		parent::setup_nav( $main_nav, $sub_nav );
	}

	/**
	 * Set up the admin bar
	 *
	 * @since bbPress (r3552)
	 */
	public function setup_admin_bar( $wp_admin_nav = array() ) {
		if ( !bp_use_wp_admin_bar() || defined( 'DOING_AJAX' ) )
			return;
		// Menus for logged in user
		if ( is_user_logged_in() ) {

			// Setup the logged in user variables
			$user_domain = bp_loggedin_user_domain();
			$dwqa_link = trailingslashit( $user_domain . $this->slug );

			// Add the "My Account" sub menus
			$wp_admin_nav[] = array(
				'parent' => buddypress()->my_account_menu_id,
				'id'     => 'my-account-' . $this->id,
				'title'  => __( 'DWQA', 'dw-question-answer' ),
				'href'   => trailingslashit( $dwqa_link )
			);
			$wp_admin_nav[] = array(
				'parent' => 'my-account-' . $this->id,
				'id'     => 'my-account-' . $this->id.'-question',
				'title'  => __( 'Questions', 'dw-question-answer' ),
				'href'   => trailingslashit( $dwqa_link )
			);
		 
		}

		parent::setup_admin_bar( $wp_admin_nav );
	}

	private function fully_loaded() {
		do_action_ref_array( 'bp_dwqa_buddypress_loaded', array( $this ) );
	}
}
endif;

Copyright © 2019 by b0y-101