Commits

bcaballero committed 473a2e9

New icons; new css

  • Participants
  • Parent commits 2f2c34b

Comments (0)

Files changed (32)

File demoproject/apps/djfacet/templates/djfacet/all_facets.html

 
 	       <div class="unit size1of2 RegionName {% if facet.mptt %} istreefacet  {% endif %}"> 
 	          <section>
-	       		<h3>{{facet.name|capfirst}}</h3>	
+	       		<h3>{{facet.name|capfirst}} <span class="info tip" title="this is an example of some text and more text"></span></h3>	
                 
 				{% block inner_facet_values %}  								
 

File demoproject/apps/djfacet/templates/djfacet/base.html

     <head>
         <title>DJfacet: a faceted browser that'll get you going in no time</title>
         <!-- jquery from Google CDN -->
-        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
+        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
+        <script src="http://cdn.jquerytools.org/1.2.7/full/jquery.tools.min.js"></script>
         
         <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/base.css" />
         <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/site.css" />
         <script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/modernizr-dev.js"></script>
 		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery-ui.min.js"></script>
 		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery.blockUI2.31.js"></script>
+		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery.tipsy.js"></script>
 		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/djfacet.js"></script>		
 
   
 					});
 					
 				{% endif %}
+				
+				/* Tipsy tool tips */
+				   try {
+				       $(".tip").tipsy({
+				           delayIn: 500,
+				           delayOut: 500,
+				           fade: true
+				       });
+				   } catch(e) {
+				       // pass
+				       }
 			});
 
 		

File demoproject/apps/djfacet/templates/djfacet/base.html.orig

+
+
+
+<!DOCTYPE html>
+<!--[if IE 7 ]>    <html class="no-js ie7" lang="en"> <![endif]--> 
+<!--[if IE 8 ]>    <html class="no-js ie8" lang="en"> <![endif]--> 
+<!--[if (gte IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]-->
+    <head>
+        <title>DJfacet: a faceted browser that'll get you going in no time</title>
+        <!-- jquery from Google CDN -->
+        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
+        <script src="http://cdn.jquerytools.org/1.2.7/full/jquery.tools.min.js"></script>
+        
+        <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/base.css" />
+        <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/site.css" />
+        <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/mod.css" />
+        <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/css/typography.css" />
+        
+        
+        <!-- Modernizr: this should be called AFTER CSS to avoid FOUC
+            For dev purposes use /_a/s/libs/modernizr-dev.js
+        -->
+        <script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/modernizr-dev.js"></script>
+		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery-ui.min.js"></script>
+		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery.blockUI2.31.js"></script>
+		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/jquery.tipsy.js"></script>
+		<script type="text/javascript" src="{{ STATIC_URL }}{{DJF_STATIC_PATH}}/js/djfacet.js"></script>		
+
+  
+		
+		<script type="text/javascript">
+		
+			
+			// ONLOAD FUNCTION
+
+			$(document).ready(function() {
+
+				toggle_facets();
+				toggle_history();
+				
+				close_history();
+				
+				{% if ajaxflag %}
+					
+					// DEFAULT: all panels are created open - then they get closed at load time via js					
+					close_facets();
+					
+					$(".openclosefacet").bind( "click", function(event, ui) {
+					  // alert("clicked" + $(this)); 
+					updateFacetValues($(this));
+					});
+					
+				{% endif %}
+				
+				/* Tipsy tool tips */
+				   try {
+				       $(".tip").tipsy({
+				           delayIn: 500,
+				           delayOut: 500,
+				           fade: true
+				       });
+				   } catch(e) {
+				       // pass
+				       }
+			});
+
+		
+		</script>
+		
+		
+    </head>
+
+	<body>
+		
+		<div class="hidden">
+            <ul>
+                <li><a href="#contentSection">Skip to content</a></li>
+                <li><a href="#localNavigation">Skip to local navigation</a></li>                
+                <li><a href="#mainNavigation">Skip to main navigation</a></li>
+            </ul>
+
+			{# a couple of useful fields #}
+			<input type="hidden" id="active_restype" name="" value="{{result_typeObj.uniquename}}" />
+			<input type="hidden" id="active_urlstub" name="" value="{{newurl_stub}}" />
+			<input type="hidden" id="blockUImessage1" name="" value="" />
+			
+        </div>
+
+        <!-- WRAPPER STARTS -->
+        <div class="wrapper" id="djfacet_maindiv">
+            
+
+		
+			{% block header %}
+		
+			{% endblock %}
+
+            
+
+			{% block contents %}
+ 
+
+			{% endblock %}
+			
+ 
+          
+
+			{% include "djfacet/components/footer.html" %}
+            
+            
+           
+            
+            
+        </div>
+        
+        <!-- WRAPPER ENDS -->
+        
+		
+	</body>
+</html>
+
+
+

File demoproject/apps/djfacet/templates/djfacet/components/control_available.html

 			
 	
   	        <section id="{{facet.uniquename}}" class="facetListing {% if facet.mptt %}istreefacet{% endif %}">
-	            <h3><span class="openclosefacet">-</span>&nbsp;{{facet.name|capfirst}}</h3>
+	            <h3><span class="openclosefacet closeFacet">-</span>&nbsp;{{facet.name|capfirst}}</h3>
 	
 				{% block inner_facet_values %}  								
 

File demoproject/apps/djfacet/templates/djfacet/components/control_available.html.orig

+
+{# ################## #}
+{# #   							       #}
+{# #  FACETS CHOOSER , BOTTOM LEFT     #}
+{# # 								   #}
+{# ################## #}
+
+
+
+
+<div class="filtersAvailable">
+	{# <h3>Filters available</h3> #}
+	<h5>Choose more filters in order to narrow down your query further:</h5>
+</div>
+
+<section class="facetPanel"><!-- facet panel -->
+    
+	{# we have a list of tuples like this: #}
+	{# [(<FacetsGroup1>, [(<Facet1>, [[<FacetValue1>, <FacetValue2>], [<FacetValue3>, <FacetValue4>]]), ('troupe country', [etc..])]), (......)] #}   
+
+	{% for facetgroup, facet_and_values in facetgroups_and_facets reversed %}
+
+
+	<div class="facetType {{facetgroup.uniquename}} {% cycle "red" "gray" "green" "purple" "blue" "brown" %}">  {# there is also {{facetgroup.bkcolor}} #}
+        <h2 id="{{facetgroup.uniquename}}" class="to_collapse {{facetgroup.uniquename}}_tip">{{facetgroup.label|upper}}</h2>
+            {% for tuple in facet_and_values %}  
+
+			{% with tuple.0 as facet %}
+			{% with tuple.1 as facetvalues %}
+			
+	
+  	        <section id="{{facet.uniquename}}" class="facetListing {% if facet.mptt %}istreefacet{% endif %}">
+	            <h3><span class="openclosefacet closeFacet">-</span>&nbsp;{{facet.name|capfirst}}</h3>
+	
+				{% block inner_facet_values %}  								
+
+					{% include "djfacet/components/snippet_facet.html" %}
+
+						
+				{% endblock %}
+
+	        </section>  <!-- end of {{facet.uniquename}} section  -->
+	
+
+	
+			{% endwith %}
+			{% endwith %}
+			{% endfor %}
+
+	 </div>  <!-- end of {{facetgroup.uniquename}} section  -->
+
+{% endfor %}
+</section>  
+
+
+
+

File demoproject/local_settings.py

 	    'ENGINE': 'django.db.backends.mysql',
 		'USER': 'root',
 		# 'DATABASE_PORT' : '3306',
-		'PASSWORD' : 'mikele' , 
+		'PASSWORD' : 'bea' , 
 		'HOST' : '127.0.0.1',
     }
 }

File demoproject/settings.py

 sys.path.append(os.path.join(SITE_ROOT, "demoproject/libs"))
 
 
-MYLOCAL_SERVER_PATH = "/mac/Dropbox/code/"
+MYLOCAL_SERVER_PATH = "/djangostack-1.3.1-3/apps/django/"
 
 # DYNAMIC LOCATION SELECTION: MODIFY AS NEEDED!
 if MYLOCAL_SERVER_PATH in SITE_ROOT: 
 DJF_URL_AS_NUMBERS = False  # default value = False
 DJF_SPLASHPAGE = True # default value = 'vertical'
 DJF_SPLASHPAGE_CACHE = False  # default value = False
-DJF_STATIC_PATH = 'djfacet'  # default value = 'djfacet'
+DJF_STATIC_PATH = 'djfacet_beax'  # default value = 'djfacet'
 DJF_MPTT_INHERITANCE = True  # default = False
 

File demoproject/settings.py.orig

+""" DJfacet_project settings.
+
+originally coded by michele pasin on 2011-10-11
+++++
+A ``local_settings`` module must be made available to define sensitive
+and highly installation-specific settings.
+
+"""
+
+
+import os, sys
+import django
+from time import strftime
+
+# the site root is one level up from where settings.py is
+DJANGO_ROOT = os.path.dirname(os.path.realpath(django.__file__))
+SITE_ROOT = os.path.dirname(os.path.realpath(__file__)).rsplit('/', 1)[0]
+
+sys.path.append(os.path.join(SITE_ROOT, "demoproject/apps"))
+sys.path.append(os.path.join(SITE_ROOT, "demoproject/libs"))
+
+
+MYLOCAL_SERVER_PATH = "/mac/Dropbox/code/"
+
+# DYNAMIC LOCATION SELECTION: MODIFY AS NEEDED!
+if MYLOCAL_SERVER_PATH in SITE_ROOT: 
+	LOCAL_SERVER, LIVE_SERVER = True, False
+else:
+	LOCAL_SERVER, LIVE_SERVER = False, True
+if not (LOCAL_SERVER or LIVE_SERVER):
+	raise Exception("Could not determine which location you're in! \nLOCAL_SERVER or LIVE_SERVER?")
+	
+
+if not LIVE_SERVER:
+	DEBUG = True
+else:
+	DEBUG = False
+TEMPLATE_DEBUG = DEBUG
+
+ADMINS = (
+	('mikele', 'michele@mail.com'),
+)
+MANAGERS = ADMINS 
+TIME_ZONE = 'Europe/London'
+LANGUAGE_CODE = 'en-us'
+SITE_ID = 1
+USE_I18N = True
+
+
+MEDIA_URL = '/media/uploads/'
+STATIC_URL = '/media/static/'
+ADMIN_MEDIA_PREFIX = '/media/static/admin/'
+MPTTEXTRA_ADMIN_MEDIA = '/media/static/feincms/'
+
+# Absolute path to the directory that holds media uploaded
+MEDIA_ROOT = os.path.join(SITE_ROOT, 'uploads')
+# physical location of extra static files in development server
+STATICFILES_DIRS = (
+    os.path.join(SITE_ROOT, 'demoproject/static'),
+)
+# path used with "python manage.py collectstatic"
+STATIC_ROOT = os.path.join(SITE_ROOT, 'apache/static')
+
+
+
+TEMPLATE_LOADERS = (
+	# 'django.template.loaders.filesystem.load_template_source', DEPRECATED django1.3
+	'django.template.loaders.filesystem.Loader',
+	# 'django.template.loaders.app_directories.load_template_source', DEPRECATED django1.3
+	'django.template.loaders.app_directories.Loader'
+)
+
+
+MIDDLEWARE_CLASSES = (
+	'django.middleware.common.CommonMiddleware',
+	'django.contrib.sessions.middleware.SessionMiddleware',
+	'django.contrib.auth.middleware.AuthenticationMiddleware',
+	'django.contrib.messages.middleware.MessageMiddleware',
+	'django.middleware.csrf.CsrfViewMiddleware',
+	# tHis is deprecated, but needed here for backward compatibility in the admin
+	'django.middleware.csrf.CsrfResponseMiddleware', 
+)
+
+
+TEMPLATE_DIRS = (
+	os.path.join(SITE_ROOT, 'demoproject/mytemplates'),
+)
+
+
+TEMPLATE_CONTEXT_PROCESSORS = (
+	"django.contrib.auth.context_processors.auth",
+	"django.core.context_processors.debug",
+	"django.core.context_processors.i18n",
+	"django.core.context_processors.media" , 
+	'django.contrib.messages.context_processors.messages',
+	"django.core.context_processors.request",
+	"django.core.context_processors.static"
+)
+
+
+
+
+
+ROOT_URLCONF = 'demoproject.urls'
+
+
+
+
+INSTALLED_APPS = (	
+	'django.contrib.auth',
+	'django.contrib.contenttypes',
+	'django.contrib.sessions',
+	'django.contrib.sites',
+	'django.contrib.humanize',
+	'django.contrib.messages',
+	
+	'django.contrib.staticfiles',
+	
+	'django.contrib.admin',
+	'django_extensions',
+	 	
+	'djfacet',	 
+	'religions',
+
+)
+
+
+
+
+
+
+try:
+	if LOCAL_SERVER:
+		from local_settings import *
+	elif LIVE_SERVER:
+		from local_livsettings import *
+except ImportError:
+	pass
+
+
+
+
+
+
+# 
+# simple function that appends a debug string to another string (or file)
+# 
+def printdebug(stringa):
+	""" helper function: print to the command line output only if not running WSGI (othersiwe it'd cause an error)"""
+	if stringa == 'noise':
+		stringa = "\n%s\n" % ("*&*^" * 100)
+	if LOCAL_SERVER:
+		print ">>[%s]debug>>: %s"  % (strftime("%Y-%m-%d %H:%M:%S"), stringa)
+	else:
+		pass
+
+
+
+
+
+
+
+# ********
+# SITE_WIDE CACHE
+# ********
+
+# Needed always cause the FB is stored here : from django.core.cache import cache
+
+if LIVE_SERVER:
+	CACHE_IS_LOADED = True	# False when testing or in other circumstances...
+else:
+	CACHE_IS_LOADED = False
+
+
+if CACHE_IS_LOADED:
+	MIDDLEWARE_CLASSES += ('django.middleware.cache.FetchFromCacheMiddleware',)   # CACHE: needs to be last
+	temp = list(MIDDLEWARE_CLASSES)
+	temp.reverse()
+	temp += ['django.middleware.cache.UpdateCacheMiddleware']  # CACHE: needs to be first
+	temp.reverse()
+	MIDDLEWARE_CLASSES = tuple(temp)
+	CACHE_BACKEND = 'locmem://'
+	CACHE_MIDDLEWARE_SECONDS = 100000    #900
+	if LIVE_SERVER:
+		CACHE_MIDDLEWARE_ANONYMOUS_ONLY = False  # this makes sure that the admin is not cached
+	else:
+		CACHE_MIDDLEWARE_ANONYMOUS_ONLY = False
+
+
+
+
+
+
+
+# ======= DJFACET options: showing all of them for description =======
+
+DJF_CACHE = False   # default value = False
+DJF_AJAX = False  	# default value = 'vertical' 
+DJF_MAXRES_PAGE = 50  # default value = 50
+DJF_MAXRES_FACET = 5  # default value = 5 
+DJF_MAXRES_ALLFACETS = 9  # default value = 9 
+DJF_SHOWLOGS = True		# default value = False
+DJF_SPECS_MODULE = 'facetspecs'  # default value = 'facetspecs'
+DJF_URL_AS_NUMBERS = False  # default value = False
+DJF_SPLASHPAGE = True # default value = 'vertical'
+DJF_SPLASHPAGE_CACHE = False  # default value = False
+DJF_STATIC_PATH = 'djfacet_beax'  # default value = 'djfacet'
+DJF_MPTT_INHERITANCE = True  # default = False
+

File demoproject/static/djfacet_beax/css/base.css

+/* reset */
+html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}
+

File demoproject/static/djfacet_beax/css/mod.css

+/*
+
+	mod.css:		CSS for modules
+	Included modules:
+		
+			facingPages
+			facetedNav
+			overlay
+			pagination
+			search
+				autocomplete
+			tabs
+			draggable
+			
+*/
+
+
+/* pageViewer */
+
+.mod.facingPages {
+	width:95%;
+	position:relative;
+	font-size:1em;
+	line-height:1.714285714285714;
+	margin:1.714285714285714em;
+}
+
+.facingPage {
+	
+	position:relative;
+	display: inline;
+	float: left;
+	height:100%;
+}
+	
+.facingPage.left{width:50%;}
+	
+.facingPage.right {width:50%;}
+
+.facingPage.full { width: 100%;}
+	
+.pageViewerTools {}
+	
+.pageViewerTextBox {
+	border:1px solid #ccc;
+	min-height:480px;
+	clear:both;
+	height:100%;
+	width:99%;
+	overflow:auto;
+}
+	
+.pageViewerTextBox.left { }
+	
+.pageViewerTextBox.right {}	
+
+.pageViewerTextBox {
+	
+}
+	
+.pageViewerText {
+	overflow:auto;
+	height:auto;
+	width:100%;
+	position:absolute;
+	top:24px;
+	bottom:0;
+	line-height:1.714285714285714em;
+}
+
+.pageViewerTextBox {
+	
+}
+
+/* tabs */
+.mod {
+	border:1px dotted #ccc;
+}
+
+
+.mod.tabs {
+	margin:1.714285714285714em;
+	width: 95%;
+	
+}
+
+.tabControlHeader a.current {
+	font-weight:bold;
+}
+
+/* pagination */
+.mod.pagination {
+	margin:1.714285714285714em;
+	width:95%;
+	
+}
+
+.mod.pagination p {
+	clear: both;
+	float:left;
+	margin-left:0;
+	margin-top:0;
+}
+
+.resultsNav {
+	float:right;
+	margin:0 1.714285714285714em;
+}
+
+.resultsOptions { 
+	float:left;
+	display:inline;
+	margin:0 1.714285714285714em;
+}
+.ctrl.recordDisplay grid {}
+.ctrl.recordDisplay list {}
+.resultsNav {}
+a.ctrl.resultsBrowse.first {}
+
+	
+/* controls */
+
+a.ctrl.tooltip {
+	vertical-align:super;
+	
+}
+
+div.tooltipBox {
+	background-color:#444;
+	font-size:0.857142857142857em;
+	padding:1em;
+	-webkit-box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.4);
+	-moz-box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.4);
+	box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.4);
+	color:#fff;
+	z-index:1000;
+	display:none;
+}
+
+
+
+
+a.ctrl.sync {}
+	
+a.ctrl.criticalApparatus {}
+	
+a.ctrl.commentary {}
+	
+a.ctrl.chapterisation {}
+	
+a.ctrl.fullScreen {}

File demoproject/static/djfacet_beax/css/site.css

+/* GRIDS */
+
+.line:after,.lastUnit:after{clear:both;display:block;visibility:hidden;overflow:hidden;height:0 !important;line-height:0;font-size:xx-large;content:" x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x ";}
+.line{zoom:1;}
+.unit{float:left;}
+.size1of1{float:none;}
+.size1of2{width:50%;}
+.size1of3{width:33.33333%;}
+.size2of3{width:66.66666%;}
+.size1of4{width:25%;}
+.size3of4{width:75%;}
+.size1of5{width:20%;}
+.size2of5{width:40%;}
+.size3of5{width:60%;}
+.size4of5{width:80%;}
+.lastUnit{display:table-cell;float:none;width:auto;*display:block;*zoom:1;_position:relative;_left:-3px;_margin-right:-3px;}
+
+a {outline: none;}
+
+/* FACETS */
+
+.contentSection { font-family: arial, helvetica, sans-serif}
+.logo {width: 400px;}
+.resultType {border:2px dotted #ddd; padding: 8px;margin: 0 0 30px 0}
+.resultType ul {float: left}
+.resultType ul li {margin-right: 10px}
+.resultType ul li a {text-decoration: none; border-bottom: 1px dotted #536383; color:#536383;}
+.resultType ul li a:hover {color: #233353; border-bottom: 1px solid #233353;}
+
+
+/* splash page*/
+
+.splashPage {min-height: 550px;}
+.splashPage .contentSection {margin: 5px 0 15px 0}
+.splashPage section {margin-right: 10px;}
+.splashPage h2 {font-weight: 700; padding: 8px 0 8px 8px; text-transform: uppercase;}
+.splashPage h3 {font-size: 85%; font-weight: 700; letter-spacing: 0.06em; padding: 8px 0 8px 10px; text-transform: uppercase; }
+.splashPage .unit ul {margin: 10px 0 15px 10px}
+.splashPage .unit ul li {line-height: 1.2em;}
+.splashPage .unit ul li a {text-decoration: none; font-size: 93% }
+
+.splashPage .minHeight { min-height: 95px; max-height: 995px; margin-bottom: 10px; overflow:hidden;}
+/*.splashPage .minHeight { height: 95px; min-height: 95px; max-height: 195px; margin-bottom: 10px; overflow:hidden;}*/
+
+.splashPage h3 span {background: url(../img/question-icon.png) no-repeat scroll 0 -2px transparent;  height: 16px; width: 16px; padding: 0 13px 0 0; cursor: pointer; margin-left: 5px;}
+
+/* facets colours*/
+
+/* red */
+.red {background: #f3e7e7;}
+.red h2 {color:#911F1F; }
+.red h3 {color:#4C4040; background:#E3C7C7 }
+.red ul li a {color: #911f1f;}
+.red ul li a:hover {border-bottom: 1px dotted #ab5252; color:#ab5252}
+
+/* gray */
+.gray {background: #E4E1E0;}
+.gray h2 {color:#534741;}
+.gray h3 {color:#534741; background: #D4D1CF}
+.gray ul li a {color:#534741}
+.gray ul li a:hover {border-bottom: 1px dotted #988c87; color:#988c87;}
+
+/* green*/
+.green {background: #E1ECE8;}
+.green h2 {color:#534741;}
+.green h3 {color:#4C4040; background: #C3DBD2}
+.green ul li a {color: #116F4B;}
+.green ul li a:hover {border-bottom: 1px dotted #55bb94; color:#55bb94;}
+
+/*purple*/
+.purple {background: #E9DEEE;}
+.purple h2 {color:#53116F;}
+.purple h3 {color:#4C4040; background: #D4C3DB}
+.purple ul li a {color: #53116F;}
+.purple ul li a:hover {border-bottom: 1px dotted #9767ab; color:#9767ab;}
+
+/*blue*/
+.blue {background: #E0E5ED;}
+.blue h2 {color:#435167;}
+.blue h3 {color:#534741; background: #C6D0E0}
+.blue ul li a {color: #2C528B;}
+.blue ul li a:hover {border-bottom: 1px dotted #6B87B2; color:#6B87B2;}
+
+/*brown*/
+.brown {background: #E0DAC9;}
+.brown h2 {color:#534741;}
+.brown h3 {color:#7A7056; background: #B5AB92}
+.brown ul li a {color: #534741;}
+.brown ul li a:hover {border-bottom: 1px dotted #ADA185; color:#ADA185;}
+
+/* SHOW ALL FACETS A TO Z */
+
+.AtoZ section {margin: 0 0 40px 0}
+.AtoZ section ul li {line-height: 1.55em; margin-right: 1px; background: #ebebeb; border: 1px solid #d7d7d7}
+.AtoZ section ul li a { text-decoration: none; color:#625454; padding: 1px 5px 0; font-weight: 600;}
+.AtoZ section ul li a:hover {color:#fff; background:#333;}
+
+.AtoZ h2 {font-size: 135%; font-weight:bold; margin: 0 0 20px 0;}
+.AtoZ h2.border {font-size: 135%; font-weight:bold; border-bottom: 1px solid #aaa; margin: 0 0 20px 0; padding-bottom: 3px;}
+.AtoZ .line {margin: 20px 0 20px 0;}
+.AtoZ ul li {line-height: 1.35em;}
+.AtoZ ul li a {text-decoration: none; color:#625454; }
+.AtoZ ul li a:hover {color:#2f2727; background-color: #f4f4f4;}
+
+/*2012-05-16: added by mikele*/
+.activeFilter {border: 1px dashed black; padding: 4.5px; background: lightPink;}
+.fatherfacet {color: darkslategrey;}
+.graytext {color: grey;}
+.smalllinks {font-size: 15px;}
+.activeResType {text-transform: uppercase;}
+#historyPanel {margin-top: 30px;}
+#historyPanel h3 {padding-left: 20px;}
+#historyPanel .filtersList { background: #C4C4C2; border: 2px solid #9E9E9E; box-shadow: none; border-radius: 0; }
+#historyPanel a {text-decoration: none; border-bottom: 1px dotted #536383; color:#536383;}
+#historyPanel a:hover {color: #233353; border-bottom: 1px solid #233353;}
+
+.openclosefacet, .openclosehistory {background: url(../img/plus-icon.png) no-repeat scroll 0 -1px transparent;left: 30px; height: 20px; width: 20px; position: absolute; text-indent: -9999px; cursor: pointer;}
+.openclosefacet:hover, .openclosehistory:hover {background: url(../img/plus-icon-h.png) no-repeat scroll 0 -1px transparent;}
+.closeFacet {background: url(../img/minus-icon.png) no-repeat scroll 0 -1px transparent;}
+.closeFacet:hover {background: url(../img/minus-icon-h.png) no-repeat scroll 0 -1px transparent;}
+
+/*end mikele*/
+
+
+
+/* FILTER RESULTS TABLE */
+
+.filterType .mod {border: 0 none;}
+.filterType h1 {border-bottom: 1px solid #a0a7af; color: #48515c; padding-bottom: 5px;}
+
+.resultsSummary {width: 100%;}
+.resultsNumber {color: #333; font-weight: 700; margin: 0 0 0 5px;}
+
+.headersX {margin: 20px 25px; width: 95%;}
+.headersX th {background: none repeat scroll 0 0 #e9eaea; border-bottom: 1px solid #d1d7dd;color: #5e6670;font-size: 93%;font-weight: 700; padding: 7px 7px 5px;}
+.headersX td {border-bottom: 1px solid #ededed;border-right: 1px dotted #ededed; color: #666666;font-size: 93%;line-height: 1.55em;margin: 0 0 3px;padding: 4px 7px 3px;vertical-align: top;}
+.headersX td a {color: #336699; border-bottom: 1px dotted #336699; text-decoration: none}
+.headersX td a:hover {border-bottom: 1px solid #336699;}
+
+/* faceted navigation */
+
+.filterType .facetedNavigation {background:#EEEEEA; border-radius: 4px; min-height: 450px; padding: 10px 0 10px 10px; border: 2px solid #e8e8e6; }
+
+.facetedNavigation h3 {font-size: 125%; font-weight: 700;font-family: arial, sans-serif; margin: 0 0 15px 0;}
+.facetedNavigation .no_facets a, .filtersList .selected a {font-weight: normal; font-size: 100%; color: #336699; text-decoration: none;}
+.facetedNavigation .no_facets a:hover, .filtersList .selected a:hover {color:#a2b2c2}
+
+.filtersList {border: 2px solid #B2AE62; border-radius: 5px; padding: 10px;margin-right: 10px;box-shadow: 2px 2px 2px #888;}
+.filtersList {
+	background-image: linear-gradient(bottom, rgb(250,242,80) 40%, rgb(255,255,209) 100%);
+	background-image: -o-linear-gradient(bottom, rgb(250,242,80) 40%, rgb(255,255,209) 100%);
+	background-image: -moz-linear-gradient(bottom, rgb(250,242,80) 40%, rgb(255,255,209) 100%);
+	background-image: -webkit-linear-gradient(bottom, rgb(250,242,80) 40%, rgb(255,255,209) 100%);
+	background-image: -ms-linear-gradient(bottom, rgb(250,242,80) 40%, rgb(255,255,209) 100%);
+
+	background-image: -webkit-gradient(
+		linear,
+		left bottom,
+		left top,
+		color-stop(0.4, rgb(250,242,80)),
+		color-stop(1, rgb(255,255,209))
+	);
+
+}
+.filtersList li {line-height: 1.35em; color:#5c5c47}
+.filtersList .selected {font-weight: 700;}
+
+.facetListing h5 {font-weight: bold; margin: 15px 0 15px 0;}
+
+.filtersAvailable {margin: 15px 0 15px 0; }
+.filtersAvailable h3 {font-size: 125%; font-weight: 700;font-family: arial, sans-serif; margin: 0 0 15px 0;}
+.filtersAvailable h5 {font-weight: 700;font-size: 85%; }
+
+.facetType {margin: 15px 10px 0 0; border-radius: 5px; padding-bottom: 7px;}
+.facetType h2 {font-size: 135%; margin: 10px 0 5px 0; padding: 5px}
+.facetType h3 {font-size: 110%; padding: 4px 0 4px 25px;}
+.facetType ul li {font-size: 93%; line-height: 1.35em;}
+.facetType ul li a {text-decoration: none; }
+
+
+ 
+.facetOptions {max-height: 130px; overflow: auto; margin: 5px 10px 10px 0; padding: 0 0 7px 7px; }
+
+/* pagination */
+
+.resultsNav li { margin: 0 2px 0 0; background: #E9EAEA; border: 0 none}
+.resultsNav li.selected {background:#333;color:#fff;padding: 1px 4px 0;}
+.resultsNav li a {line-height: 1.55em; text-decoration: none;color:#333;padding: 1px 4px 0;}
+.resultsNav li a:hover {background:#333;color:#fff;}
+
+.resultsNav li a.resultsBrowse {background:#fff; color:#bdbdbd; border:0 none;}
+.resultsNav li a.resultsBrowse:hover {color:#333; }
+
+/* presentational classes */
+
+#mainNavigation {background:#EEEEEA; padding: 8px; margin:10px 0 20px 0}
+
+.inline li {
+	display:inline;
+	position: relative;
+}
+
+.hidden {
+	text-indent:-9999px;
+	position:absolute;
+}
+
+/* clearfix */
+.clearfix:after {
+	content: ".";
+	display: block;
+	clear: both;
+	visibility: hidden;
+	line-height: 0;
+	height: 0;
+}
+ 
+.clearfix {
+	display: inline-block;
+}
+ 
+html[xmlns] .clearfix {
+	display: block;
+}
+
+/* end presentational classes */
+html {
+	font-size:62.5%;
+	
+}
+
+body {
+	font-size:1.4em;
+	color:#333;
+}
+
+.wrapper {
+	margin: 10px 15px 15px 15px;
+	
+}
+
+p {
+	margin:1.714285714285714em;
+}
+
+img.facsimile {
+	margin:1.714285714285714em auto;
+	line-height:1;
+	display: block;
+	cursor:hand;
+	position:relative;
+	
+}
+
+/* header */
+
+/* Main nav */
+nav.primary {
+	font-size:1em;
+	line-height:1.714285714285714;
+	margin:1.714285714285714em;
+}
+
+a.navLink {
+	margin-left:0.857142857142857em;
+	padding-right:0.857142857142857em;
+	border-right:1px solid #333;
+	text-decoration: none;
+	color:#534741; 
+}
+
+a.navLink.first {
+	margin-left:0;
+}
+
+a.navLink.last {
+	border-right:0;
+}
+
+/* Local nav */
+nav.local {
+	font-size:1em;
+	line-height:1;
+}
+
+nav.local li {
+	line-height:1.714285714285714em;
+	font-size:1em;
+	margin-left:1.714285714285714em;
+	
+}
+
+nav.local .navLink {
+	margin-left:0;
+	border:0;
+
+}
+
+
+
+
+
+
+/* footer */
+.footerSection {
+	background-color:#494A4C;
+	padding:1.714285714285714em 0;
+	margin: 30px 0 0 0;
+	border-top: 10px solid #343435;
+	color: #fff;
+}
+
+.footerSection ul {margin-left: 20px}
+.footerSection ul li a {color: #ddd; border-right: 1px solid #ddd;}
+.footerSection small {margin: 0 0 10px 20px; color: #ddd; position: relative; top: 10px;}
+.footerSection a {color:#ddd;}
+.footerSection small a:hover {color: yellow;}
+
+/* js styles */
+.tipsy { padding: 5px; font-size: 11px; opacity: 0.8; filter: alpha(opacity=80); background-repeat: no-repeat;  background-image: url(../img/bg-tip.png); }
+  .tipsy-inner { padding: 5px 8px 4px 8px; background-color: black; color: white; max-width: 200px; text-align: left; line-height:1.5em}
+  .tipsy-inner { -moz-border-radius:3px; -webkit-border-radius:3px; }
+  .tipsy-north { background-position: top center; }
+  .tipsy-south { background-position: bottom center; }
+  .tipsy-east { background-position: right center; }
+  .tipsy-west { background-position: left center; }

File demoproject/static/djfacet_beax/css/typography.css

+/*
+
+	base font size: 1.4em = 14pt
+	body is set to 1.4em
+	
+	h1	24pt = 24/14 = 1.714285714285714em
+	h2	18pt = 18/14 = 1.285714285714286em
+	h3	16pt = 16/14 = 1.142857142857143em
+	
+	p	14pt = 14/14 = 1em
+	
+	smallText: 12pt = 24/12 = 0.857142857142857em
+	largeText: 16pt = same as h3
+	largestText: 18pt = same as h2
+	
+	Baseline = 24px = at 1.4em line-height = 1.714285714285714
+
+
+*/
+
+
+body {
+	font-family:Helvetica,Arial,sans-serif;
+}
+
+h1{
+	font-family:Georgia, "Times New Roman", serif;
+}
+
+h1 {
+	font-size:1.714285714285714em;
+	line-height:1;
+	margin:0 1em;
+}
+
+.smallText {
+	font-size:0.857142857142857em;
+	line-height:2;
+	margin:2em;
+}

File demoproject/static/djfacet_beax/data/religion.csv

+,,,,,,,,,,,,,,,"These columns show some of the information presented in the original data, from the World Factbook",,,,,,,,,,,,

File demoproject/static/djfacet_beax/data/religion.xls

Binary file added.

File demoproject/static/djfacet_beax/img/bg-tip.png

Added
New image

File demoproject/static/djfacet_beax/img/filters-bg.png

Added
New image

File demoproject/static/djfacet_beax/img/logo.png

Added
New image

File demoproject/static/djfacet_beax/img/logo2.png

Added
New image

File demoproject/static/djfacet_beax/img/logo3.png

Added
New image

File demoproject/static/djfacet_beax/img/minus-icon-h.png

Added
New image

File demoproject/static/djfacet_beax/img/minus-icon.png

Added
New image

File demoproject/static/djfacet_beax/img/plus-icon-h.png

Added
New image

File demoproject/static/djfacet_beax/img/plus-icon.png

Added
New image

File demoproject/static/djfacet_beax/img/question-icon.png

Added
New image

File demoproject/static/djfacet_beax/js/__djfacet.js

+
+// OLD VERSION
+
+
+
+function disable_UI(message, id_location, color){
+	if (!id_location) var id_location = "#cs";	// the main DIV
+	if (!color) var color = "#2B3856";
+	// if (!message) var message = "processing query.... <br /><br /><img src='/dj_app_media/paul/i/g.gif' alt='loading data' />"
+	if (!message) var message = "processing query...."
+	$("#blockUImessage1").empty().append(message);
+	$(id_location).block({	message: $('#blockUImessage1'), 
+							css: { padding: '10px', fontsize: '5px'}, 
+							overlayCSS : {opacity: '.3', filter:'alpha(opacity=30)', backgroundColor : color }	//backgroundColor : '#2B3856'
+						}); 
+}
+
+function enable_UI(id_location){
+	if (!id_location) var id_location = "#cs"; 
+	$(id_location).unblock(); 
+}
+
+
+
+
+
+function explain_results(){
+	var resulttype = what_result_type();
+	$("#blockUImessage2").load("explain_results?resulttype=" + resulttype);
+	$("#cs").block({ 
+					message: $('#blockUImessage2'), 
+					centerY: 0, 
+					css: { padding: '10px', top: '10%', left: '', width: '50%', textAlign: 'left' } , 
+					overlayCSS : {opacity: '.3', backgroundColor : '#2B3856'} 
+					}); 
+	$('.blockOverlay').attr('title','Click to unblock').click(function () { 
+																  $("#cs").unblock(); 
+																});
+}
+
+
+
+
+
+// called when a column header is clicked on to order the result list
+function change_ordering(ordering){
+	old_ordering = $("#active_ordering").val();
+	if (!(old_ordering == ordering)) {
+		$("#active_ordering").val(ordering);
+		reload_results(1, ordering)
+	} else {  //the back end checks whether it's  an annotation or not
+		$("#active_ordering").val("-" + ordering);
+		reload_results(1, "-" + ordering)
+	}
+}
+
+
+function what_result_type(){
+	return $("li.ui-state-active").attr('id');	
+}
+
+
+
+function isFacetedCountActive() {
+	return True;
+	// var test = $("#refresh_facets").attr('value');
+	// if (test == 'True') {
+	//	return true;
+	// }
+	// else {
+	//	return false;
+	// }
+}
+
+
+// resets all the flags used to determine whether to call the backend or not!
+function resetFacetFlags() {
+	$("#accordion h5").each(function (i) {
+		$(this).parent().removeClass("values_are_updated");
+	});
+}
+
+
+
+
+
+
+// time= the delay time	  -- flag= whether 'updateFacetValues' should Disable the UI too...
+function delayUpdateFacetValues(time, flag) {
+	if (!time) var time = 400;
+	if (!flag) var flag = false;
+
+	// this is a hidden field that contains a Flag (set at initial loading time) indicating whether refresh is automatic
+	if (isFacetedCountActive()) {
+		// hack for IE
+		var myfun = function() { updateFacetValues(flag); };
+		setTimeout(myfun, time);
+	}  else {
+		enable_UI();
+	}
+		
+}
+
+
+
+// toggleClass("highlight");
+
+// 2010-07-22: refreshes the facet values available..
+// flag is used to determine whether the update is run by itself, or after updating the result list 
+// in the first case, we need to block the screen; in the second one, that is managed in 'ajax_update1'
+function OLD_updateFacetValues(flag) {
+	if (!flag) var flag = false;
+	var resulttype = what_result_type();
+	var activefacet = $("#accordion h5.ui-state-active").parent(); // the <LI> element
+	var is_tree_facet = $("#accordion h5.ui-state-active").parent().hasClass('istreefacet')
+	var activefacetid = $("#accordion h5.ui-state-active").parent().attr('id'); // the unique ID
+	var divelement = $("#accordion h5.ui-state-active").next(); // where the list is contained
+	var activegroup = $("#accordion h5.ui-state-active").parent().parent().prev().attr('id');
+	
+	if (activefacetid && !(activefacet.hasClass("values_are_updated"))) {
+		
+		activefacet.addClass("values_are_updated");	 // so that it doesn't get reloaded unless necessary
+				
+		if (flag) {
+			$(divelement).add_loading_icon();
+			// var message = "updating facets.... <br /><br /><img src='/dj_app_media/paul/i/g.gif' alt='loading data' />"		
+			var message = "updating facets...."		
+			disable_UI(message);
+		}
+
+		$.get('update_facet',
+			 { resulttype : resulttype, activefacet: activefacetid, activegroup: activegroup},
+				  function(data){
+						$(divelement).empty().append(data); 
+						
+						add_onclick_events();  // clicking items selects them..
+						activate_filtering();  //prepares the filter box 
+						
+						if (is_tree_facet) {   // 2010-11-12
+							$("#tree_" + activefacetid).treeview({
+									// url: "source.php",
+									animated: "fast",
+									collapsed: true,
+									control: "#treecontrol_" + activefacetid
+									});
+						} 
+						
+						
+						if (true) {
+							enable_UI();
+						}				
+				  }
+	   );					
+	}	
+	else {
+		// alert("here");
+		enable_UI();
+	}	
+}
+
+
+
+
+
+
+function updateFacetValues() {
+	var activefacet = $("#facets_list h4.ui-state-active") // the <H4> element
+	var is_tree_facet = $("#facets_list h4.ui-state-active").hasClass('istreefacet')
+	var activefacetid = $("#facets_list h4.ui-state-active").attr('id'); // the unique ID
+	var divelement = $("#facets_list h4.ui-state-active").next(); // where the list is contained
+	var rec_num = $("#rec_num").html();
+	
+	
+	if (activefacetid && !(activefacet.hasClass("values_are_updated"))) {		
+		activefacet.addClass("values_are_updated");	 // so that it doesn't get reloaded unless necessary
+		var list_ids = new Array();
+		$("#active_filters li").each( function(index) {
+			list_ids.push(this.id);
+		});
+
+		$.get('update_facet',
+			 { activefacet: activefacetid, totitems : rec_num , active_filters: list_ids},
+				  function(data){
+						$(divelement).empty().append(data); 
+			
+				  }
+	   );					
+	}	
+	else {
+		//alert("here");
+		// nothing to do!
+	}
+}
+
+
+
+
+// ONLOAD FUNCTION
+// ....................... do the make_next_element collapasable behaviour manually....
+
+$(document).ready(function() {
+	$("#facets_list").accordion({ header: 'h4', collapsible: true , active: false, fillSpace: true});
+
+	$("#facets_list ").bind( "accordionchange", function(event, ui) {
+	  updateFacetValues(50, true); 
+	}); 
+});
+
+
+
+
+

File demoproject/static/djfacet_beax/js/djfacet.js

+
+// DJFACET js functions (non ajax version)
+
+
+
+
+// ONLOAD FUNCTION <$(document).ready(function()..> included in base.html 
+
+
+
+
+function toggle_facets() {
+	$(".openclosefacet").click(function() {
+		$(this).parent().next().slideToggle("slow");
+		permute_plusminus($(this));
+		});
+}
+
+
+function toggle_history() {
+	$(".openclosehistory").click(function() {
+		$(this).parent().next().slideToggle("slow");
+		permute_plusminus($(this));
+		});
+}	
+	
+
+function permute_plusminus(el){
+		
+	if (el.text() == "+") {
+		el.text("-");
+		el.addClass('closeFacet');
+	} 	
+	else {
+		$(el).text("+");
+		el.removeClass('closeFacet');
+		}
+}	
+
+
+function close_facets() {
+	$(".openclosefacet").click();
+}
+
+function close_history() {
+	$(".openclosehistory").click();
+}
+
+
+
+
+
+
+function updateFacetValues(span_openclosefacet) {
+	
+	// eg: TEST it with $(".openclosefacet").first().parent().next().children("ul").html("<p>cioa</p>")
+	
+	var resulttype  = $("#active_restype").val();
+	var newurl_stub  = $("#active_urlstub").val();
+	var activefacetid = span_openclosefacet.parent().parent().attr('id')
+	
+	if (!(span_openclosefacet.hasClass("values_are_updated"))) {		
+
+		span_openclosefacet.addClass("values_are_updated");	 // so that it doesn't get reloaded unless necessary
+		var facet_title = span_openclosefacet.parent();
+		span_openclosefacet.parent().next().remove();
+
+		// WHY USING THIS ACTIVE FILTERS?
+		// var list_ids = new Array();
+		// $("#active_filters li").each( function(index) {
+		// 	list_ids.push(this.id);
+		// });
+		
+		var ajax_url = "update_facet?activefacet=" + activefacetid + "&resulttype=" + resulttype + newurl_stub
+
+		$.get(ajax_url,
+			 { },
+				  function(data){
+						$(facet_title).after(data); 
+			
+				  }
+	   );					
+	}	
+	else {
+		//alert("here");
+		// test
+		// $(divelement).empty().append("<p>Ciao!</p><p>Ciao!2</p>");
+	}
+	
+}
+
+
+
+// STILL NOT USED, but it works
+
+
+function disable_UI(message, id_location, color){
+	if (!id_location) var id_location = "#djfacet_maindiv";	// the main DIV
+	if (!color) var color = "#2B3856";
+	// if (!message) var message = "processing query.... <br /><br /><img src='/dj_app_media/paul/i/g.gif' alt='loading data' />"
+	if (!message) var message = "processing query...."
+	$("#blockUImessage1").val(message);
+	$(id_location).block({	message: $('#blockUImessage1').val(), 
+							css: { padding: '10px', fontsize: '5px'}, 
+							overlayCSS : {opacity: '.3', filter:'alpha(opacity=30)', backgroundColor : color }	//backgroundColor : '#2B3856'
+						}); 
+}
+
+function enable_UI(id_location){
+	if (!id_location) var id_location = "#djfacet_maindiv"; 
+	$(id_location).unblock(); 
+}
+
+

File demoproject/static/djfacet_beax/js/jquery-1.3.2.min.js

+/*
+ * jQuery JavaScript Library v1.3.2
+ * http://jquery.com/
+ *
+ * Copyright (c) 2009 John Resig
+ * Dual licensed under the MIT and GPL licenses.
+ * http://docs.jquery.com/License
+ *
+ * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
+ * Revision: 6246
+ */
+(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
+/*
+ * Sizzle CSS Selector Engine - v0.9.3
+ *  Copyright 2009, The Dojo Foundation
+ *  Released under the MIT, BSD, and GPL Licenses.
+ *  More information: http://sizzlejs.com/
+ */
+(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();

File demoproject/static/djfacet_beax/js/jquery-ui.min.js

+/*
+ * jQuery UI 1.7.2
+ *
+ * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
+ * and GPL (GPL-LICENSE.txt) licenses.
+ *
+ * http://docs.jquery.com/UI
+ */

File demoproject/static/djfacet_beax/js/jquery.blockUI2.31.js

+/*!
+ * jQuery blockUI plugin
+ * Version 2.33 (29-MAR-2010)
+ * @requires jQuery v1.2.3 or later
+ *
+ * Examples at: http://malsup.com/jquery/block/
+ * Copyright (c) 2007-2008 M. Alsup
+ * Dual licensed under the MIT and GPL licenses:
+ * http://www.opensource.org/licenses/mit-license.php
+ * http://www.gnu.org/licenses/gpl.html
+ *
+ * Thanks to Amir-Hossein Sobhi for some excellent contributions!
+ */
+
+;(function($) {
+
+if (/1\.(0|1|2)\.(0|1|2)/.test($.fn.jquery) || /^1.1/.test($.fn.jquery)) {
+	alert('blockUI requires jQuery v1.2.3 or later!  You are using v' + $.fn.jquery);
+	return;
+}
+
+$.fn._fadeIn = $.fn.fadeIn;
+
+var noOp = function() {};
+
+// this bit is to ensure we don't call setExpression when we shouldn't (with extra muscle to handle
+// retarded userAgent strings on Vista)
+var mode = document.documentMode || 0;
+var setExpr = $.browser.msie && (($.browser.version < 8 && !mode) || mode < 8);
+var ie6 = $.browser.msie && /MSIE 6.0/.test(navigator.userAgent) && !mode;
+
+// global $ methods for blocking/unblocking the entire page
+$.blockUI   = function(opts) { install(window, opts); };
+$.unblockUI = function(opts) { remove(window, opts); };
+
+// convenience method for quick growl-like notifications  (http://www.google.com/search?q=growl)
+$.growlUI = function(title, message, timeout, onClose) {
+	var $m = $('<div class="growlUI"></div>');
+	if (title) $m.append('<h1>'+title+'</h1>');
+	if (message) $m.append('<h2>'+message+'</h2>');
+	if (timeout == undefined) timeout = 3000;
+	$.blockUI({
+		message: $m, fadeIn: 700, fadeOut: 1000, centerY: false,
+		timeout: timeout, showOverlay: false,
+		onUnblock: onClose, 
+		css: $.blockUI.defaults.growlCSS
+	});
+};
+
+// plugin method for blocking element content
+$.fn.block = function(opts) {
+	return this.unblock({ fadeOut: 0 }).each(function() {
+		if ($.css(this,'position') == 'static')
+			this.style.position = 'relative';
+		if ($.browser.msie)
+			this.style.zoom = 1; // force 'hasLayout'
+		install(this, opts);
+	});
+};
+
+// plugin method for unblocking element content
+$.fn.unblock = function(opts) {
+	return this.each(function() {
+		remove(this, opts);
+	});
+};
+
+$.blockUI.version = 2.33; // 2nd generation blocking at no extra cost!
+
+// override these in your code to change the default behavior and style
+$.blockUI.defaults = {
+	// message displayed when blocking (use null for no message)
+	message:  '<h1>Please wait...</h1>',
+
+	title: null,	  // title string; only used when theme == true
+	draggable: true,  // only used when theme == true (requires jquery-ui.js to be loaded)
+	
+	theme: false, // set to true to use with jQuery UI themes
+	
+	// styles for the message when blocking; if you wish to disable
+	// these and use an external stylesheet then do this in your code:
+	// $.blockUI.defaults.css = {};
+	css: {
+		padding:	0,
+		margin:		0,
+		width:		'30%',
+		top:		'40%',
+		left:		'35%',
+		textAlign:	'center',
+		color:		'#000',
+		border:		'3px solid #aaa',
+		backgroundColor:'#fff',
+		cursor:		'wait'
+	},
+	
+	// minimal style set used when themes are used
+	themedCSS: {
+		width:	'30%',
+		top:	'40%',
+		left:	'35%'
+	},
+
+	// styles for the overlay
+	overlayCSS:  {
+		backgroundColor: '#000',
+		opacity:	  	 0.6,
+		cursor:		  	 'wait'
+	},
+
+	// styles applied when using $.growlUI
+	growlCSS: {
+		width:  	'350px',
+		top:		'10px',
+		left:   	'',
+		right:  	'10px',
+		border: 	'none',
+		padding:	'5px',
+		opacity:	0.6,
+		cursor: 	'default',
+		color:		'#fff',
+		backgroundColor: '#000',
+		'-webkit-border-radius': '10px',
+		'-moz-border-radius':	 '10px',
+		'border-radius': 		 '10px'
+	},
+	
+	// IE issues: 'about:blank' fails on HTTPS and javascript:false is s-l-o-w
+	// (hat tip to Jorge H. N. de Vasconcelos)
+	iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank',
+
+	// force usage of iframe in non-IE browsers (handy for blocking applets)
+	forceIframe: false,
+
+	// z-index for the blocking overlay
+	baseZ: 1000,
+
+	// set these to true to have the message automatically centered
+	centerX: true, // <-- only effects element blocking (page block controlled via css above)
+	centerY: true,
+
+	// allow body element to be stetched in ie6; this makes blocking look better
+	// on "short" pages.  disable if you wish to prevent changes to the body height
+	allowBodyStretch: true,
+
+	// enable if you want key and mouse events to be disabled for content that is blocked
+	bindEvents: true,
+
+	// be default blockUI will supress tab navigation from leaving blocking content
+	// (if bindEvents is true)
+	constrainTabKey: true,
+
+	// fadeIn time in millis; set to 0 to disable fadeIn on block
+	fadeIn:  200,
+
+	// fadeOut time in millis; set to 0 to disable fadeOut on unblock
+	fadeOut:  400,
+
+	// time in millis to wait before auto-unblocking; set to 0 to disable auto-unblock
+	timeout: 0,
+
+	// disable if you don't want to show the overlay
+	showOverlay: true,
+
+	// if true, focus will be placed in the first available input field when
+	// page blocking
+	focusInput: true,
+
+	// suppresses the use of overlay styles on FF/Linux (due to performance issues with opacity)
+	applyPlatformOpacityRules: true,
+	
+	// callback method invoked when fadeIn has completed and blocking message is visible
+	onBlock: null,
+
+	// callback method invoked when unblocking has completed; the callback is
+	// passed the element that has been unblocked (which is the window object for page
+	// blocks) and the options that were passed to the unblock call:
+	//	 onUnblock(element, options)
+	onUnblock: null,
+
+	// don't ask; if you really must know: http://groups.google.com/group/jquery-en/browse_thread/thread/36640a8730503595/2f6a79a77a78e493#2f6a79a77a78e493
+	quirksmodeOffsetHack: 4
+};
+
+// private data and functions follow...
+
+var pageBlock = null;
+var pageBlockEls = [];
+
+function install(el, opts) {
+	var full = (el == window);
+	var msg = opts && opts.message !== undefined ? opts.message : undefined;
+	opts = $.extend({}, $.blockUI.defaults, opts || {});
+	opts.overlayCSS = $.extend({}, $.blockUI.defaults.overlayCSS, opts.overlayCSS || {});
+	var css = $.extend({}, $.blockUI.defaults.css, opts.css || {});
+	var themedCSS = $.extend({}, $.blockUI.defaults.themedCSS, opts.themedCSS || {});
+	msg = msg === undefined ? opts.message : msg;
+
+	// remove the current block (if there is one)
+	if (full && pageBlock)
+		remove(window, {fadeOut:0});
+
+	// if an existing element is being used as the blocking content then we capture
+	// its current place in the DOM (and current display style) so we can restore
+	// it when we unblock
+	if (msg && typeof msg != 'string' && (msg.parentNode || msg.jquery)) {
+		var node = msg.jquery ? msg[0] : msg;
+		var data = {};
+		$(el).data('blockUI.history', data);
+		data.el = node;
+		data.parent = node.parentNode;
+		data.display = node.style.display;
+		data.position = node.style.position;
+		if (data.parent)
+			data.parent.removeChild(node);
+	}
+
+	var z = opts.baseZ;
+
+	// blockUI uses 3 layers for blocking, for simplicity they are all used on every platform;
+	// layer1 is the iframe layer which is used to supress bleed through of underlying content
+	// layer2 is the overlay layer which has opacity and a wait cursor (by default)
+	// layer3 is the message content that is displayed while blocking
+
+	var lyr1 = ($.browser.msie || opts.forceIframe) 
+		? $('<iframe class="blockUI" style="z-index:'+ (z++) +';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+opts.iframeSrc+'"></iframe>')
+		: $('<div class="blockUI" style="display:none"></div>');
+	var lyr2 = $('<div class="blockUI blockOverlay" style="z-index:'+ (z++) +';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');
+	
+	var lyr3, s;
+	if (opts.theme && full) {
+		s = '<div class="blockUI blockMsg blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:fixed">' +
+				'<div class="ui-widget-header ui-dialog-titlebar blockTitle">'+(opts.title || '&nbsp;')+'</div>' +
+				'<div class="ui-widget-content ui-dialog-content"></div>' +
+			'</div>';
+	}
+	else if (opts.theme) {
+		s = '<div class="blockUI blockMsg blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:absolute">' +
+				'<div class="ui-widget-header ui-dialog-titlebar blockTitle">'+(opts.title || '&nbsp;')+'</div>' +
+				'<div class="ui-widget-content ui-dialog-content"></div>' +
+			'</div>';
+	}
+	else if (full) {
+		s = '<div class="blockUI blockMsg blockPage" style="z-index:'+z+';display:none;position:fixed"></div>';
+	}			
+	else {
+		s = '<div class="blockUI blockMsg blockElement" style="z-index:'+z+';display:none;position:absolute"></div>';
+	}
+	lyr3 = $(s);
+
+	// if we have a message, style it
+	if (msg) {
+		if (opts.theme) {
+			lyr3.css(themedCSS);
+			lyr3.addClass('ui-widget-content');
+		}
+		else 
+			lyr3.css(css);
+	}
+
+	// style the overlay
+	if (!opts.applyPlatformOpacityRules || !($.browser.mozilla && /Linux/.test(navigator.platform)))
+		lyr2.css(opts.overlayCSS);
+	lyr2.css('position', full ? 'fixed' : 'absolute');
+
+	// make iframe layer transparent in IE
+	if ($.browser.msie || opts.forceIframe)
+		lyr1.css('opacity',0.0);
+
+	//$([lyr1[0],lyr2[0],lyr3[0]]).appendTo(full ? 'body' : el);
+	var layers = [lyr1,lyr2,lyr3], $par = full ? $('body') : $(el);
+	$.each(layers, function() {
+		this.appendTo($par);
+	});
+	
+	if (opts.theme && opts.draggable && $.fn.draggable) {
+		lyr3.draggable({
+			handle: '.ui-dialog-titlebar',
+			cancel: 'li'
+		});
+	}
+
+	// ie7 must use absolute positioning in quirks mode and to account for activex issues (when scrolling)
+	var expr = setExpr && (!$.boxModel || $('object,embed', full ? null : el).length > 0);
+	if (ie6 || expr) {
+		// give body 100% height
+		if (full && opts.allowBodyStretch && $.boxModel)
+			$('html,body').css('height','100%');
+
+		// fix ie6 issue when blocked element has a border width
+		if ((ie6 || !$.boxModel) && !full) {
+			var t = sz(el,'borderTopWidth'), l = sz(el,'borderLeftWidth');
+			var fixT = t ? '(0 - '+t+')' : 0;
+			var fixL = l ? '(0 - '+l+')' : 0;
+		}
+
+		// simulate fixed position
+		$.each([lyr1,lyr2,lyr3], function(i,o) {
+			var s = o[0].style;
+			s.position = 'absolute';
+			if (i < 2) {
+				full ? s.setExpression('height','Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:'+opts.quirksmodeOffsetHack+') + "px"')
+					 : s.setExpression('height','this.parentNode.offsetHeight + "px"');
+				full ? s.setExpression('width','jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"')
+					 : s.setExpression('width','this.parentNode.offsetWidth + "px"');
+				if (fixL) s.setExpression('left', fixL);
+				if (fixT) s.setExpression('top', fixT);
+			}
+			else if (opts.centerY) {
+				if (full) s.setExpression('top','(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"');
+				s.marginTop = 0;
+			}
+			else if (!opts.centerY && full) {
+				var top = (opts.css && opts.css.top) ? parseInt(opts.css.top) : 0;
+				var expression = '((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + '+top+') + "px"';
+				s.setExpression('top',expression);
+			}
+		});
+	}
+
+	// show the message
+	if (msg) {