diff src/nabble/view/web/util/nabbletabs.js @ 0:7ecd1a4ef557

add content
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 21 Mar 2019 19:15:52 -0600
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/nabble/view/web/util/nabbletabs.js	Thu Mar 21 19:15:52 2019 -0600
@@ -0,0 +1,62 @@
+var NabbleTabs = new Object();
+
+document.writeln('<link rel="stylesheet" href="/util/nabbletabs.css?1" type="text/css" />');
+
+NabbleTabs.startTabControl = function(isLive) {
+	NabbleTabs.isLive = isLive;
+	document.writeln('<ul id="tabs" class="medium-border-color">');
+};
+
+NabbleTabs.addLiveTab = function(elemId, text, selected,onclick) {
+	if (!NabbleTabs.isLive) alert('Live tab not allowed. Use static tabs only');
+	if (selected) {
+		NabbleTabs.selected = elemId;
+		document.writeln('<li id="li-' + elemId + '" class="tab-selected"><a id="a-' + elemId + '" class="tab-link-selected medium-border-color no-bg-color">' + text + '</a></li>');
+	} else
+		document.writeln('<li id="li-' + elemId + '"><a id="a-' + elemId + '" class="light-bg-color medium-border-color">' + text + '</a></li>');
+
+	if (onclick) {
+		$(document).ready(function() {
+			$('#li-'+elemId).click(function() { setTimeout(function() { onclick() },50); });
+		});
+	}
+};
+
+NabbleTabs.addTab = function(link, text, selected) {
+	if (NabbleTabs.isLive) alert('Static tab not allowed. Use live tabs only');
+	if (selected)
+		document.writeln('<li class="tab-selected"><a class="tab-link-selected medium-border-color no-bg-color">' + text + '</a></li>');
+	else
+		document.writeln('<li><a href="' + link + '" class="light-bg-color medium-border-color">' + text + '</a></li>');
+};
+
+NabbleTabs.endTabControl = function() {
+	document.writeln('</ul>');
+
+	$(document).ready(function() {
+		if (NabbleTabs.isLive) {
+			$('#tabs li').click(function() {
+				if ($(this).attr('id') != 'li-' + NabbleTabs.selected) {
+					$('#li-'+NabbleTabs.selected).removeClass('tab-selected').css('cursor', 'pointer');
+					$('#a-'+NabbleTabs.selected).removeClass('no-bg-color').removeClass('tab-link-selected').addClass('light-bg-color').css('cursor', 'pointer');
+					$('#'+NabbleTabs.selected).hide();
+					NabbleTabs.selected = $(this).attr('id').substring(3);
+					$('#li-'+NabbleTabs.selected).addClass('tab-selected').css('cursor', 'default');
+					$('#a-'+NabbleTabs.selected).removeClass('light-bg-color').addClass('no-bg-color').addClass('tab-link-selected').css('cursor', 'default');
+					$('#'+NabbleTabs.selected).show();
+					Nabble.resizeFrames();
+				}
+			});
+		} 
+		$('#tabs a').hover(
+				function() {
+					if (!$(this).hasClass('tab-link-selected'))
+						$(this).css('border-top-width', '3px');
+				},
+				function() {
+					if (!$(this).hasClass('tab-link-selected'))
+						$(this).css('border-top-width', '1px');
+				}
+		);
+	});
+};
\ No newline at end of file