<?php
	/**
	 * @package     Freemius
	 * @copyright   Copyright (c) 2015, Freemius, Inc.
	 * @license     https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3
	 * @since       1.2.2.7
	 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

	/**
	 * @var array    $VARS
	 * @var Freemius $fs
	 */
	$fs = freemius( $VARS['id'] );

	$slug = $fs->get_slug();

	$menu_items = $fs->get_menu_items();

	$show_settings_with_tabs = $fs->show_settings_with_tabs();

	$tabs = array();
foreach ( $menu_items as $priority => $items ) {
	foreach ( $items as $item ) {
		if ( ! $item['show_submenu'] ) {
			$submenu_name = ( 'wp-support-forum' === $item['menu_slug'] ) ?
				'support' :
				$item['menu_slug'];

			if ( 'pricing' === $submenu_name && ! $fs->is_pricing_page_visible() ) {
				continue;
			}

			if ( ! $show_settings_with_tabs || ! $fs->is_submenu_item_visible( $submenu_name, true ) ) {
				continue;
			}
		}

		$url   = $fs->_get_admin_page_url( $item['menu_slug'] );
		$title = $item['menu_title'];

		$tab = array(
			'label' => $title,
			'href'  => $url,
			'slug'  => $item['menu_slug'],
		);

		if ( 'pricing' === $item['menu_slug'] && $fs->is_in_trial_promotion() ) {
			$tab['href'] .= '&trial=true';
		}

		$tabs[] = $tab;
	}
}
?>
<script type="text/javascript">
	(function ($) {
		$(document).ready(function () {
			var $wrap = $('.wrap');
			if (0 === $wrap.length) {
				$wrap = $('<div class="wrap">');
				$wrap.insertBefore($('#wpbody-content .clear'));
			}

			var
				$tabsWrapper = $('.nav-tab-wrapper'),
				$tabs        = $tabsWrapper.find('.nav-tab'),
				$tab         = null;

			if (0 < $tabs.length) {
				// Tries to set $tab to the first inactive tab.
				for (var i = 0; i < $tabs.length; i++) {
					$tab = $($tabs[i]);

					if (!$tab.hasClass('nav-tab-active')) {
						break;
					}
				}
			}

			<?php if ( 0 < count( $tabs ) ) : ?>
			if (null == $tab) {
				// No tabs found, therefore, create new tabs section if required.
				var $h1 = $wrap.find('h1');

				$tabsWrapper = $('<h2 class="nav-tab-wrapper"></h2>');

				if (0 < $h1.length) {
					$tabsWrapper.insertAfter($h1);
				} else if (0 < $wrap.length) {
					$wrap.prepend($tabsWrapper);
				}

				$tab = $('<a href="#" class="nav-tab"></a>');
			}

			// Create a clone.
			$tab = $tab.clone();
			// Open in current page.
			$tab.removeAttr('target');
			$tab.removeClass('nav-tab-active');
			$tab.addClass('fs-tab');
			$tab.addClass('<?php echo $fs->get_unique_affix(); ?>');

			var $tabClone = null;

				<?php $freemius_context_page = null; ?>

				<?php foreach ( $tabs as $tab ) : ?>
					<?php $is_support_tab = ( 'wp-support-forum' == $tab['slug'] ); ?>
			// Add the Freemius tabs.
			$tabClone = $tab.clone();
			$tabClone.html(<?php echo json_encode( $tab['label'] ); ?>)
				.attr('href', '<?php echo $is_support_tab ? $fs->get_support_forum_url() : $tab['href']; ?>')
				.appendTo($tabsWrapper)
				// Remove any custom click events.
				.off('click', '**')
				.addClass('<?php echo $tab['slug']; ?>')
				// Avoid tab click triggering parent events.
				.click(function (e) {
					e.stopPropagation();
				});

					<?php if ( $is_support_tab ) : ?>
			// Open support in a new tab/page.
			$tabClone.attr('target', '_blank');
			<?php endif ?>

					<?php if ( $fs->is_admin_page( $tab['slug'] ) ) : ?>
						<?php $freemius_context_page = $tab['slug']; ?>
			// Select the relevant Freemius tab.
			$tabs.removeClass('nav-tab-active');
			$tabClone.addClass('nav-tab-active');

						<?php if ( in_array( $freemius_context_page, array( 'pricing', 'contact', 'checkout' ) ) ) : ?>
			// Add AJAX loader.
			$tabClone.prepend('<i class="fs-ajax-spinner"></i>');
			// Hide loader after content fully loaded.
			$('.wrap i' + 'frame').load(function () {
				$(".fs-ajax-spinner").hide();
			});
			<?php endif ?>

			// Fix URLs that are starting with a hashtag.
			$tabs.each(function (j, tab) {
				if (0 === $(tab).attr('href').indexOf('#')) {
					$(tab).attr('href', '<?php echo esc_js( $fs->main_menu_url() ); ?>' + $(tab).attr('href'));
				}
			});
			<?php endif ?>
			<?php endforeach ?>

			var selectTab = function ($tab) {
				$(window).load(function () {
					$tab.click();

					// Scroll to the top since the browser will auto scroll to the anchor.
					document.body.scrollTop = 0;
					document.body.scrollLeft = 0;
//						window.scrollTo(0,0);
				});
			};

			// If the URL is loaded with a hashtag, find the context tab and select it.
			if (window.location.hash) {
				for (var j = 0; j < $tabs.length; j++) {
					if (window.location.hash === $($tabs[j]).attr('href')) {
						selectTab($($tabs[j]));
						break;
					}
				}
			}

				<?php
				if ( is_string( $freemius_context_page ) && in_array(
					$freemius_context_page,
					array(
						'pricing',
						'contact',
						'checkout',
					)
				) ) :
					?>
			// Add margin to the upper section of the tabs to give extra space for the HTTPS header.
			// @todo This code assumes that the wrapper style is fully loaded, if there's a stylesheet that is not loaded via the HTML head, it may cause unpredicted margin-top.
			var $tabsWrap = $tabsWrapper.parents('.wrap');
			$tabsWrap.css('marginTop', (parseInt($tabsWrap.css('marginTop'), 10) + 30) + 'px');
				<?php endif ?>
			<?php endif ?>
		});
	})(jQuery);
</script>
