<?php
/**
 * Open Source Social Network
 *
 * @package   (softlab24.com).ossn
 * @author    OSSN Core Team <info@softlab24.com>
 * @copyright (C) SOFTLAB24 LIMITED
 * @license   Open Source Social Network License (OSSN LICENSE)  http://www.opensource-socialnetwork.org/licence
 * @link      https://www.opensource-socialnetwork.org/
 */
define('__THEMEDIR__', ossn_route()->themes . 'white/');

ossn_register_callback('ossn', 'init', 'ossn_goblue_theme_init');
ossn_register_callback('ossn', 'init', 'ossn_goblue_theme_css_rewrite', 500);

function ossn_goblue_theme_css_rewrite(){
		ossn_extend_view('css/ossn.default', 'white/components_override_css');
		ossn_extend_view('js/opensource.socialnetwork', 'white/components_override_js');
		ossn_add_hook('halt', "view:components/OssnSitePages/pages/page", 'white_site_pages_override');
		
		ossn_add_hook('newsfeed', 'sidebar:right', 'com_latest_members_widget_white');
}
function com_latest_members_widget_white($hook, $type, $return){
	$widget_content = ossn_plugin_view('white/members_widget');
	$widget = ossn_plugin_view('widget/view', array(
					'title' => ossn_print('com:latestmembers:latest:members'),
					'contents' => $widget_content
	));	
	$return[] = $widget;
	return $return;
}

function ossn_goblue_theme_init(){	
	ossn_unset_callback('ossn', 'init', 'com_RightColumnFocusizer_init');

	//add bootstrap
	ossn_new_css('bootstrap.min', 'css/bootstrap/bootstrap.min.css');
	//ossn_new_js('bootstrap.min', 'js/bootstrap/bootstrap.min.js');
	
	ossn_new_css('ossn.default', 'css/core/default');
	ossn_new_css('ossn.admin.default', 'css/core/administrator');

	//load bootstrap
	ossn_load_css('bootstrap.min', 'admin');
	ossn_load_css('bootstrap.min');

	ossn_load_css('ossn.default');
	ossn_load_css('ossn.admin.default', 'admin');
	
	ossn_extend_view('ossn/admin/head', 'ossn_goblue_admin_head');
	ossn_extend_view('ossn/site/head', 'ossn_goblue_head');
    ossn_extend_view('js/opensource.socialnetwork', 'js/white');	
	
	ossn_register_admin_sidemenu('admin:theme:white', 'admin:theme:white', ossn_site_url('administrator/settings/white'), ossn_print('admin:sidemenu:themes'));
	ossn_register_site_settings_page('white', 'settings/admin/white');
	
	if(ossn_isAdminLoggedin()) {
		ossn_register_action('goblue/settings', __THEMEDIR__ . 'actions/settings.php');
	}	
		if(ossn_isLoggedin()){
			ossn_register_action('white/darkmode/enable',  __THEMEDIR__ . 'actions/darkmode/enable.php');
			ossn_register_action('white/darkmode/disable', __THEMEDIR__ . 'actions/darkmode/disable.php');
			
			$user = ossn_loggedin_user();
			if(!isset($user->theme_darkmode) || $user->theme_darkmode == false){
				ossn_register_menu_item('topbar_dropdown', array(
						'name' => 'darkmode',
						'id' => 'theme-darkmode-btn',
						'text' => ossn_print('darkmode:enable:darkmode'),
						'href' => 'javascript:void(0);',
						'data-type' => 1,
						'priority' => 1,
				));	
			} else {
				ossn_register_menu_item('topbar_dropdown', array(
						'name' => 'darkmode',
						'text' => ossn_print('darkmode:enable:darkmode'),
						'id' => 'theme-darkmode-btn',
						'href' => 'javascript:void(0);',
						'data-type' => 0,
						'priority' => 1,
				));			
			}
		}
}
function white_site_pages_override($hook, $type, $return, $params){
	return 	ossn_plugin_view('white/site_pages', $params);
}
function ossn_goblue_head(){
	$head	 = array();
	
	$head[]  = ossn_html_css(array(
					'href' => '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css'
			  ));	
	$head[]  = ossn_html_css(array(
					'href' =>  'https://fonts.googleapis.com/css?family=PT+Sans:400italic,700,400'
			  ));		
	$head[]  = ossn_html_js(array(
					'src' => ossn_theme_url() . 'vendors/bootstrap/js/bootstrap.min.js'
			  ));
	$head[]  = ossn_html_css(array(
					'href' => '//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/css/jquery-ui.css'
			  ));	
	return implode('', $head);
}
function ossn_goblue_admin_head(){
	$head	 = array();	
	$head[]  = ossn_html_css(array(
					'href' => '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css'
			  ));	
	$head[]  = ossn_html_css(array(
					'href' =>  '//fonts.googleapis.com/css?family=Roboto+Slab:300,700,400'
			  ));		
	$head[]  = ossn_html_js(array(
					'src' => ossn_theme_url() . 'vendors/bootstrap/js/bootstrap.min.js'
			  ));
	$head[]  = ossn_html_css(array(
					'href' => '//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/css/jquery-ui.css'
			  ));
	return implode('', $head);
}
//right column
function white_RightColumnFocusizer_init() {
	ossn_extend_view('js/opensource.socialnetwork', 'white/right_column/js/RightColumnFocusizer');
	ossn_extend_view('css/ossn.default', 'white/right_column/RightColumnFocusizer');
	if(com_is_active('OssnAutoPagination')) {
		ossn_add_hook('newsfeed', "sidebar:right", 'white_RightColumnFocusizer_sidebar_footer', 1000);
		ossn_add_hook('profile', 'modules', 'white_RightColumnFocusizer_sidebar_footer', 1000);
		ossn_add_hook('group', 'widgets', 'white_RightColumnFocusizer_sidebar_footer', 1000);
		ossn_add_hook('theme', 'sidebar:right', 'white_RightColumnFocusizer_sidebar_footer', 1000);
	}
}

function white_RightColumnFocusizer_sidebar_footer($hook, $tye, $return){
	$return[] = "<footer class='sidebar-footer'><div class='sidebar-footer-content' style='display: none'><div class='ossn-footer-menu'>" . str_replace('menu-footer-powered', 'sidebar-footer-powered', ossn_plugin_view('white/right_column/menus/sidebar_footer')) . "</div></div></footer>";
	return $return;
}
function ossn_styler_override() {
		if(com_is_active('Styler') && function_exists('styler_colors')) {
				$colors = styler_colors();
				foreach($colors as $color) {
						ossn_unload_css("styler.{$color}");
				}
		}
}
ossn_register_callback('ossn', 'init', 'white_RightColumnFocusizer_init');
ossn_register_callback('ossn', 'init', 'ossn_styler_override', 300);