
// Checks the browser and adds classes to the body to reflect it.

(
function ($)
{

$.browserDetect  =
  { userAgent:	navigator.userAgent.toLowerCase()
  , type:	'unknown'
  , n_version:	''
  , getParts:	function (type, name, no_version)
    {
      var ind = $.browserDetect.userAgent.indexOf(name)
	, len = name.length
	;
      $.browserDetect.type	= type;

      if (!no_version)
      {
	$.browserDetect.n_version  = 
		      $.browserDetect.userAgent.substring(ind + len);

	$.browserDetect.n_version =
			      $.browserDetect.n_version.substring(0,1);
      }
    }
  , detector: function ()
    {
      if ($.browserDetect.type)
      {
	$('body').addClass($.browserDetect.type);

	if ($.browserDetect.n_version)
	{
	  $('body').addClass('' + $.browserDetect.type +
				  $.browserDetect.n_version);
	}
      }
    }
  };

// jQuery browser tests currently exclude chrome
//
$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase()); 

if ($.browser.msie) // Is this a version of IE?
{
  $.browserDetect.getParts('browserIE', 'msie ');
}
else if ($.browser.chrome) // Is this a version of Chrome?
{
  $.browserDetect.getParts('browserChrome', 'chrome/');

  // If it is chrome then jQuery might think it's safari so we have to
  // tell jQuery that it isn't
  //
  $.browser.safari = false;
}
else if ($.browser.safari) // Is this a version of Safari?
{
  $.browserDetect.getParts('browserSafari', 'version/');
}
else if ($.browser.mozilla) // Is this a version of Mozilla?
{
  // Is it Firefox?
  //
  if (navigator.userAgent.toLowerCase().indexOf('firefox') != -1)
  {
    $.browserDetect.getParts('browserFirefox', 'firefox/');
  }
  else // If not then it must be another Mozilla
  {
    $.browserDetect.getParts('browserMozilla', '', true);
  }
}
if ($.browser.opera) // Is this a version of Opera?
{
  $.browserDetect.getParts('browserOpera', '', true);
}

$(document).ready($.browserDetect.detector);

}
)(jQuery);
;
// $Id: niceControls.js $
/*
** we're using the jQuery based javascript, but our design pattern will be
** the Yui object paradigm which is much better at stability and 
** expandability.
*/
var Ticode = (("undefined" == typeof Ticode) || (!Ticode)) ? {} : Ticode;

(
function ($)
{

Ticode.NiceControls = function ()
{
  /*  
  ******************************************************************
  ** private variables available only to methods of the module.
  */

  /*  
  ** private shorthand variables to page elements
  */
  var $message	= null
    ;

  /*  
  ** private shorthand variable for built jQuery objects. set in init()
  */

  /*  
  ** constants used in this module.
  */

  /*  
  ** module state:
  */

  /*  
  ** these are Dom refrences that won't change, they are set by direct
  ** calls when needed, and then used freely after that.
  */

  var startMessageToggle  = function ( )
    {
      $($message) .slideToggle('slow').delay('5000').slideToggle('slow');
    };

  var pauseToggle = function ( )
    {
      $(this) .stop('true', 'true');
    };

  var startToggle = function ( )
    {
      $(this) .slideToggle('slow');
    };

  /*  
  ** ******************************************************************
  ** private methods available only to other methods of the module.
  */
  var that =
    /*
    ** publicly accessible variables where we store AJAX results by
    ** evaluating valid js pointing to these arrays.
    */
    { translations: [] // Ticode.NiceControls.translations[]

      /*
      ** public method Ticode.NiceControls.unobtrusive -- Makes a message 
      **						  disappear at first
      **    then slowly appear and disappear, pausing while hovered.  Also
      **    adds a control to re-show the message.
      */
    , unobtrusive: function ( )
      {
	var $show = $('<a class="message-control" title="show messages">' +
			'Show Messages</a>')
	  ;
	$message  = this

	$($message) .hide()
		    .hover(pauseToggle, startToggle);

	$($show)  .click(startMessageToggle);
	$('body') .append($show);
	$($show)  .click();
      }

    };
      /*
      ** for finding .attr('style', 'background:#ee9933');
      */
        //attr('style', 'background:#ee9933');

  return that;

}(); // the parens here cause the anonymous func to execute and return

Drupal.behaviors.NiceControls =
{
  attach: function(context, settings)
  {
    /*
    ** no shadow
    **
    $('.blue-front-menu li a', 
      context)		      	.once('superior',
				      Ticode.NiceControls.shadow_link);
    */
    $('#block-delta-blocks-messages', context)

		    .once('niceControls', Ticode.NiceControls.unobtrusive);
  }
};

}
)(jQuery);
;
// $Id: all-elements.js $
/*
** we're using the jQuery based javascript, but our design pattern will be
** the Yui object paradigm which is much better at stability and 
** expandability.
*/
var Ticode = (("undefined" == typeof Ticode) || (!Ticode)) ? {} : Ticode;

(
function ($)
{

Ticode.All_Elements = function ()
{
  /*  
  ******************************************************************
  ** private variables available only to methods of the module.
  */

  /*  
  ** private shorthand variables to comon jQuery parts/utilities
  */

  /*  
  ** private shorthand variable for built jQuery objects. set in init()
  */

  /*  
  ** constants used in this module.
  */

  /*  
  ** module state:
  */

  /*  
  ** these are Dom refrences that won't change, they are set by direct
  ** calls when needed, and then used freely after that.
  */

  /*  
  ** ******************************************************************
  ** private methods available only to other methods of the module.
  */
  var that =
    /*
    ** publicly accessible variables where we store AJAX results by
    ** evaluating valid js pointing to these arrays.
    */
    { translations: [] // Ticode.All_Elements.translations[]

    };
      /*
      ** for finding .attr('style', 'background:#ee9933');
      */
        //attr('style', 'background:#ee9933');

  return that;

}(); // the parens here cause the anonymous func to execute and return

Drupal.behaviors.customOmegaSubthemeJS =
{
  attach: function(context, settings)
  {
    // first we init the hs and then create other attached behaviors
    //
  }
};

}
)(jQuery);
;

