]> source.dussan.org Git - gitblit.git/commitdiff
Documentation.
authorJames Moger <james.moger@gitblit.com>
Fri, 20 May 2011 21:31:07 +0000 (17:31 -0400)
committerJames Moger <james.moger@gitblit.com>
Fri, 20 May 2011 21:31:07 +0000 (17:31 -0400)
61 files changed:
build.xml
docs/00_overview.mkd
docs/01_faq.mkd
docs/01_screenshots.mkd
docs/fancybox/blank.gif [new file with mode: 0644]
docs/fancybox/fancy_close.png [new file with mode: 0644]
docs/fancybox/fancy_loading.png [new file with mode: 0644]
docs/fancybox/fancy_nav_left.png [new file with mode: 0644]
docs/fancybox/fancy_nav_right.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_e.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_n.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_ne.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_nw.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_s.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_se.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_sw.png [new file with mode: 0644]
docs/fancybox/fancy_shadow_w.png [new file with mode: 0644]
docs/fancybox/fancy_title_left.png [new file with mode: 0644]
docs/fancybox/fancy_title_main.png [new file with mode: 0644]
docs/fancybox/fancy_title_over.png [new file with mode: 0644]
docs/fancybox/fancy_title_right.png [new file with mode: 0644]
docs/fancybox/fancybox-x.png [new file with mode: 0644]
docs/fancybox/fancybox-y.png [new file with mode: 0644]
docs/fancybox/fancybox.png [new file with mode: 0644]
docs/fancybox/jquery-1.4.3.min.js [new file with mode: 0644]
docs/fancybox/jquery.easing-1.3.pack.js [new file with mode: 0644]
docs/fancybox/jquery.fancybox-1.3.4.css [new file with mode: 0644]
docs/fancybox/jquery.fancybox-1.3.4.js [new file with mode: 0644]
docs/fancybox/jquery.fancybox-1.3.4.pack.js [new file with mode: 0644]
docs/fancybox/jquery.mousewheel-3.0.4.pack.js [new file with mode: 0644]
docs/page_header.html
docs/screenshots.js [new file with mode: 0644]
docs/screenshots/00.png [new file with mode: 0644]
docs/screenshots/01.png [new file with mode: 0644]
docs/screenshots/02.png [new file with mode: 0644]
docs/screenshots/03.png [new file with mode: 0644]
docs/screenshots/04.png [new file with mode: 0644]
docs/screenshots/05.png [new file with mode: 0644]
docs/screenshots/06.png [new file with mode: 0644]
docs/screenshots/07.png [new file with mode: 0644]
docs/screenshots/08.png [new file with mode: 0644]
docs/screenshots/image_processing.txt [new file with mode: 0644]
docs/screenshots/raw/00.png [new file with mode: 0644]
docs/screenshots/raw/01.png [new file with mode: 0644]
docs/screenshots/raw/02.png [new file with mode: 0644]
docs/screenshots/raw/03.png [new file with mode: 0644]
docs/screenshots/raw/04.png [new file with mode: 0644]
docs/screenshots/raw/05.png [new file with mode: 0644]
docs/screenshots/raw/06.png [new file with mode: 0644]
docs/screenshots/raw/07.png [new file with mode: 0644]
docs/screenshots/raw/08.png [new file with mode: 0644]
docs/screenshots/thumbs/00.png [new file with mode: 0644]
docs/screenshots/thumbs/01.png [new file with mode: 0644]
docs/screenshots/thumbs/02.png [new file with mode: 0644]
docs/screenshots/thumbs/03.png [new file with mode: 0644]
docs/screenshots/thumbs/04.png [new file with mode: 0644]
docs/screenshots/thumbs/05.png [new file with mode: 0644]
docs/screenshots/thumbs/06.png [new file with mode: 0644]
docs/screenshots/thumbs/07.png [new file with mode: 0644]
docs/screenshots/thumbs/08.png [new file with mode: 0644]
src/com/gitblit/wicket/resources/gitblit.css

index a25ba329ad38227602a139fee1f7622e6a9cc6ee..bb8ed4b30126da2ccd6e5a5a26aa8e3fef28e1c5 100644 (file)
--- a/build.xml
+++ b/build.xml
                <delete dir="${basedir}/site" />\r
                <mkdir dir="${basedir}/site" />\r
                <copy todir="${basedir}/site">\r
+                       <!-- Copy selected Git:Blit resources -->\r
                        <fileset dir="${basedir}/src/com/gitblit/wicket/resources">\r
                                <include name="background.png" />\r
                                <include name="gitblit.css" />\r
                                <include name="markdown.css" />\r
                                <include name="gitblt_25.png" />\r
                                <include name="gitblt-favicon.png" />\r
+                               <include name="lock_go_16x16.png" />\r
+                               <include name="lock_pull_16x16.png" />\r
+                               <include name="shield_16x16.png" />\r
+                               <include name="cold_16x16.png" />\r
+                               <include name="bug_16x16.png" />\r
+                               <include name="book_16x16.png" />\r
+                               <include name="blank.png" />\r
                        </fileset>\r
+                       \r
+                       <!-- Copy Doc images -->\r
                        <fileset dir="${basedir}/docs">\r
                                <include name="*.png" />\r
+                               <include name="*.js" />\r
+                       </fileset>\r
+               </copy>\r
+                       \r
+               <!-- Copy Fancybox -->\r
+               <mkdir dir="${basedir}/site/fancybox" />\r
+               <copy todir="${basedir}/site/fancybox">                 \r
+                       <fileset dir="${basedir}/docs/fancybox" >\r
+                               <exclude name="thumbs.db" />\r
                        </fileset>\r
                </copy>\r
+               \r
+               <!-- Copy screenshot thumbnails -->\r
+               <mkdir dir="${basedir}/site/thumbs" />\r
+               <copy todir="${basedir}/site/thumbs">\r
+                       <fileset dir="${basedir}/docs/screenshots/thumbs">\r
+                               <include name="*.png" />\r
+                       </fileset>\r
+               </copy>\r
+               \r
+               <!-- Copy screenshots -->\r
+               <mkdir dir="${basedir}/site/screenshots" />\r
+               <copy todir="${basedir}/site/screenshots">\r
+                       <fileset dir="${basedir}/docs/screenshots">\r
+                               <include name="*.png" />\r
+                       </fileset>\r
+               </copy>\r
+\r
                <java classpath="${project.build.dir}" classname="com.gitblit.BuildSite">\r
                        <classpath refid="master-classpath" />\r
                        <arg value="--sourceFolder" />\r
index 3b52455ce25632c9540d181103296cb4f3cdca98..6fdc0a1d654085c8c0b89ffcbbcfc9a5f2f8ddef 100644 (file)
@@ -1,53 +1,78 @@
 ## Overview\r
-Git:Blit is an open-source, integrated pure-Java stack for managing, viewing, and serving [Git](http://git-scm.com) repositories.\r
-Its designed primarily as a tool for small workgroups who want to host [Git](http://git-scm.com) repositories on a Windows machine.\r
+Git:Blit is an open-source, integrated pure Java stack for managing, viewing, and serving [Git][git] repositories.\r
+Its designed primarily as a tool for small workgroups who want to host [Git][git] repositories on a Windows machine.\r
 \r
-Of course, since its pure-Java it should run with any JVM on any platform, but there are already [many compelling Git solutions](https://git.wiki.kernel.org/index.php/InterfacesFrontendsAndTools) for non-Windows environments.\r
+Of course, since its pure Java it should run with any JVM on any platform, but there are already [many compelling Git solutions](https://git.wiki.kernel.org/index.php/InterfacesFrontendsAndTools) for non-Windows environments.\r
  \r
 ### Current Version\r
 \r
-[{0}](http://gitblit.com/{1}) based on [{2}](http://eclipse.org/jgit) &nbsp; (*{3}*)\r
+[{0}](http://gitblit.com/{1}) based on [{2}][jgit] &nbsp; (*{3}*)\r
+\r
+sources @ [Github][gitbltsrc]\r
+\r
+### Design Principles\r
+1. [KISS](http://en.wikipedia.org/wiki/KISS_principle)\r
+2. Offer useful features for serving Git repositories.  If feature is complex, refer to #1.\r
+3. All dependencies must be retrievable from a publicly accessible Maven repository.<br/>This is to ensure authenticity of dependencies and to keep the Git:Blit distribution svelte.  \r
 \r
 ### Features\r
 - Out-of-the-box integrated stack requiring minimal configuration\r
 - JGit SmartHTTP servlet\r
 - Browser and git client authentication\r
-- Four repository access control configurations\r
-    - *Anonymous View, Clone & Push*\r
-    - *Authenticated Push*\r
-    - *Authenticated Clone & Push*\r
-    - *Authenticated View, Clone & Push*    \r
-- Freeze repository temporarily or permanently (i.e. deny push, make read-only)\r
+- Four repository access control configurations and a Read-Only flag\r
+    <ul class='noBullets'>\r
+    <li>![anonymous](blank.png) *Anonymous View, Clone & Push*</li>\r
+    <li>![push](lock_go_16x16.png) *Authenticated Push*</li>\r
+    <li>![clone](lock_pull_16x16.png) *Authenticated Clone & Push*</li>\r
+    <li>![view](shield_16x16.png) *Authenticated View, Clone & Push*</li>\r
+    <li>![freeze](cold_16x16.png) Freeze repository (i.e. deny push, make read-only)\r
+    </ul>\r
 - Gitweb inspired UI\r
 - Administrators may create, edit, rename, or delete repositories through the web UI\r
 - Administrators may create, edit, rename, or delete users through the web UI\r
 - Repository Owners may edit repositories through the web UI\r
 - Automatically generates a self-signed certificate for https communications\r
-- Dates can optionally be displayed using browser's reported timezone\r
+- Dates can optionally be displayed using the browser''s reported timezone\r
 - Author and Committer email address display can be controlled\r
+- Markdown view support\r
 - Syntax highlighting\r
 - Customizable regular expression handling for commit messages\r
 - Single text file for server configuration\r
 - Single text file for users configuration\r
-- Simple repository stats\r
-- Optional read-only Docs page which enumerates all Markdown files within a repository\r
-- Optional read-only Ticgit Ticket pages *(based on last MIT release bf57b032 2009-01-27)*\r
+- Simple repository stats and activity graph (uses Google Charts)\r
+- Optional utility pages\r
+    <ul class='noBullets'>\r
+    <li>![docs](book_16x16.png) Docs page which enumerates all Markdown files within a repository</li>\r
+    <li>![tickets](bug_16x16.png) Ticgit ticket pages *(based on last MIT release bf57b032 2009-01-27)*</li>\r
+    </ul>\r
 \r
 ### Limitations\r
 - HTTP/HTTPS are the only supported protocols\r
 - Access controls are not path-based, they are repository-based\r
 - Only Administrators can create, rename or delete repositories\r
-- Git:Blit is a full-stack solution, its not just a webapp so at this time there is no WAR build\r
+- Git:Blit is an integrated, full-stack solution.  There is no WAR build at this time.\r
 \r
 ### Todo List\r
+- Manual certificate generation with BouncyCastle\r
+- User list with edit and delete links\r
 - Review spots where Git:Blit can cache data instead of abusing the disk\r
+    - stats\r
+    - users.properties access\r
+    - available repositories\r
+    - etc\r
+- Download zip feature\r
+- Site documentation\r
+- Code documentation\r
 - Unit testing\r
+\r
+### Idea List\r
 - Ticgit activity/timeline\r
 - Ticgit query feature with paging support\r
 - Ticgit ticket change history\r
-- Implement Markdown editing\r
 - View images on Blob page\r
 - View other binary files on Blob page\r
+- Markdown editing feature\r
+- Blame feature (waiting for the [JGit][jgit] team to do the hard part)\r
 \r
 ### License\r
 TBD\r
@@ -61,29 +86,33 @@ TBD
 ![block diagram](architecture.png "Git Blit Architecture")\r
 \r
 ### Bundled Dependencies\r
-The following dependencies are bundled with the Git:Blit zip file.\r
+The following dependencies are bundled with the Git:Blit zip distribution file.\r
 \r
-- [google-code-prettify](http://code.google.com/p/google-code-prettify)\r
-- [JavaService](http://forge.ow2.org/projects/javaservice)\r
-- icons courtesy of [FatCow Hosting](http://www.fatcow.com/free-icons)\r
+- [google-code-prettify](http://code.google.com/p/google-code-prettify) (Apache 2.0)\r
+- [JavaService](http://forge.ow2.org/projects/javaservice) (BSD and LGPL)\r
+- icons courtesy of [FatCow Hosting](http://www.fatcow.com/free-icons) (Creative Commons CC-BY)\r
+- magnifying glass search icon courtesy of [Gnome](http://gnome.org) (Creative Commons CC-BY)\r
 \r
 ### Downloaded Dependencies\r
 The following dependencies are automatically downloaded from the Apache Maven repository and from the Eclipse Maven repository when Git:Blit is launched for the first time.\r
 \r
-- [JGit](http://eclipse.org/jgit)\r
-- [Wicket](http://wicket.apache.org)\r
-- [WicketStuff GoogleCharts](https://github.com/wicketstuff/core/wiki/GoogleCharts)\r
-- [MarkdownPapers](http://markdown.tautua.org)\r
-- [Jetty](http://eclipse.org/jetty)\r
-- [SLF4J](http://www.slf4j.org)\r
-- [Log4j](http://logging.apache.org/log4j)\r
-- [JCommander](http://jcommander.org)\r
-- [BouncyCastle](http://www.bouncycastle.org)\r
+- [JGit][jgit] (EDL 1.0)\r
+- [Wicket](http://wicket.apache.org) (Apache 2.0)\r
+- [WicketStuff GoogleCharts](https://github.com/wicketstuff/core/wiki/GoogleCharts) (Apache 2.0)\r
+- [MarkdownPapers](http://markdown.tautua.org) (Apache 2.0)\r
+- [Jetty](http://eclipse.org/jetty) (Apache 2.0, EPL 1.0)\r
+- [SLF4J](http://www.slf4j.org) (MIT/X11)\r
+- [Log4j](http://logging.apache.org/log4j) (Apache 2.0) \r
+- [JCommander](http://jcommander.org) (Apache 2.0)\r
+- [BouncyCastle](http://www.bouncycastle.org) (MIT/X11)\r
+\r
+### Other Build Dependencies\r
+- [Fancybox image viewer](http://fancybox.net) (MIT and GPL dual-licensed)\r
 \r
 ## Building\r
 [Eclipse](http://eclipse.org) is recommended for development as the project settings are preconfigured.\r
 \r
-1. Clone the git repository from here.\r
+1. Clone the git repository from [Github][gitbltsrc].\r
 2. Import the gitblit project into your Eclipse workspace.<br/>\r
 *There will be lots of build errors.*\r
 3. Using Ant, execute the `build.xml` script in the project root.<br/>\r
@@ -91,4 +120,8 @@ The following dependencies are automatically downloaded from the Apache Maven re
 4. Select your gitblit project root and **Refresh** the project, this should correct all build problems.\r
 5. Review the settings in `gitblit.properties` in your project root.<br/>\r
 Make sure you set an appropriate value for *git.repositoriesFolder*. \r
-6. Execute the *com.gitblit.Launcher* class to start Git:Blit.
\ No newline at end of file
+6. Execute the *com.gitblit.Launcher* class to start Git:Blit.\r
+\r
+[jgit]: http://eclipse.org/jgit "Eclipse JGit Site"\r
+[git]: http://git-scm.com "Official Git Site"\r
+[gitbltsrc]: http://somewhere.com "gitblit git repository"
\ No newline at end of file
index c92bfabdb1da2092cc920e6c03b55cc7533a290e..343803d57fb6356300fc87cd7d6adee9cc9172ec 100644 (file)
@@ -1 +1,30 @@
 ## Frequently Asked Questions\r
+\r
+### Git:Blit?  What kind of name is that?\r
+Its a phonetic play on [bitblt][bitblt] which is an image processing operation meaning *bit-block transfer*.\r
+\r
+### Why use Git:Blit?\r
+Its small.  Its portable.  Its easy to manage.\r
+\r
+### Do I need real Git?\r
+No.  Git:Blit is based on [JGit][jgit] which is a pure Java implementation of the [Git version control system][git].<br/>\r
+Everything you need for Git:Blit is either in the zip distribution file or automatically downloaded on execution. \r
+\r
+### Why doesn't Git:Blit support SSH?\r
+Git:Blit could integrate [Apache Mina](http://mina.apache.org) to provide SSH access.  However, doing so violates design principle #1: KISS.  SSH supports requires creating, exchanging, and managing SSH keys.  While this is doable, its not simple like JGit's SmartHTTP implementation.\r
+\r
+You might consider [Gerrit](http://gerrit.googlecode.org) which supports SSH.\r
+\r
+### What types of Search does Git:Blit support?\r
+Git:Blit supports case-insensitive searches of *commit message* (default), *author*, and *committer*.<br/>\r
+\r
+To search by *author* or *committer* use the following syntax in the search box:\r
+\r
+    author: james\r
+    committer: james\r
+    \r
+Alternatively, you could enable the search type dropdown list in your `gitblit.properties` file.\r
+\r
+[bitblt]: http://en.wikipedia.org/wiki/Bit_blit "Wikipedia Bitblt"\r
+[jgit]: http://eclipse.org/jgit "Eclipse JGit Site"\r
+[git]: http://git-scm.com "Official Git Site"
\ No newline at end of file
index 666e943f134de092e9a0db7121b264a57b14062f..3d2061e9ad9403ac7c199142bcc27b783667cef7 100644 (file)
@@ -1,3 +1,35 @@
 ## Screenshots\r
+<table class="screenshots">\r
+<tr><td>\r
+       <a rel="screenshots_group" href="screenshots/00.png" title="Repository List">![Repositories](thumbs/00.png)</a>\r
+       <br/>Repository List\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/01.png" title="New User">![New User](thumbs/01.png)</a>\r
+       <br/>New User\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/02.png" title="Edit Repository">![Edit Repository](thumbs/02.png)</a>\r
+       <br/>Edit Repository\r
+</td></tr>\r
 \r
-![test](gitblt_25.png "Optional Title")
\ No newline at end of file
+<tr><td>\r
+       <a rel="screenshots_group" href="screenshots/03.png" title="Repository Summary">![Summary](thumbs/03.png)</a>\r
+       <br/>Repository Summary\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/04.png" title="Repository Log">![Log](thumbs/04.png)</a>\r
+       <br/>Repository Log\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/05.png" title="Repository Tree">![Tree](thumbs/05.png)</a>\r
+       <br/>Repository Tree\r
+</td></tr>\r
+\r
+<tr><td>\r
+       <a rel="screenshots_group" href="screenshots/06.png" title="File Diff">![Diff](thumbs/06.png)</a>\r
+       <br/>File Diff\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/07.png" title="Commit Diff">![Commitdiff](thumbs/07.png)</a>\r
+       <br/>Commit Diff\r
+</td><td>\r
+       <a rel="screenshots_group" href="screenshots/08.png" title="Blob View with Syntax Highlighting">![Blob](thumbs/08.png)</a>\r
+       <br/>Blob View with Syntax Highlighting\r
+</td></tr>\r
+</table>
\ No newline at end of file
diff --git a/docs/fancybox/blank.gif b/docs/fancybox/blank.gif
new file mode 100644 (file)
index 0000000..35d42e8
Binary files /dev/null and b/docs/fancybox/blank.gif differ
diff --git a/docs/fancybox/fancy_close.png b/docs/fancybox/fancy_close.png
new file mode 100644 (file)
index 0000000..0703530
Binary files /dev/null and b/docs/fancybox/fancy_close.png differ
diff --git a/docs/fancybox/fancy_loading.png b/docs/fancybox/fancy_loading.png
new file mode 100644 (file)
index 0000000..2503017
Binary files /dev/null and b/docs/fancybox/fancy_loading.png differ
diff --git a/docs/fancybox/fancy_nav_left.png b/docs/fancybox/fancy_nav_left.png
new file mode 100644 (file)
index 0000000..ebaa6a4
Binary files /dev/null and b/docs/fancybox/fancy_nav_left.png differ
diff --git a/docs/fancybox/fancy_nav_right.png b/docs/fancybox/fancy_nav_right.png
new file mode 100644 (file)
index 0000000..873294e
Binary files /dev/null and b/docs/fancybox/fancy_nav_right.png differ
diff --git a/docs/fancybox/fancy_shadow_e.png b/docs/fancybox/fancy_shadow_e.png
new file mode 100644 (file)
index 0000000..2eda089
Binary files /dev/null and b/docs/fancybox/fancy_shadow_e.png differ
diff --git a/docs/fancybox/fancy_shadow_n.png b/docs/fancybox/fancy_shadow_n.png
new file mode 100644 (file)
index 0000000..69aa10e
Binary files /dev/null and b/docs/fancybox/fancy_shadow_n.png differ
diff --git a/docs/fancybox/fancy_shadow_ne.png b/docs/fancybox/fancy_shadow_ne.png
new file mode 100644 (file)
index 0000000..79f6980
Binary files /dev/null and b/docs/fancybox/fancy_shadow_ne.png differ
diff --git a/docs/fancybox/fancy_shadow_nw.png b/docs/fancybox/fancy_shadow_nw.png
new file mode 100644 (file)
index 0000000..7182cd9
Binary files /dev/null and b/docs/fancybox/fancy_shadow_nw.png differ
diff --git a/docs/fancybox/fancy_shadow_s.png b/docs/fancybox/fancy_shadow_s.png
new file mode 100644 (file)
index 0000000..d8858bf
Binary files /dev/null and b/docs/fancybox/fancy_shadow_s.png differ
diff --git a/docs/fancybox/fancy_shadow_se.png b/docs/fancybox/fancy_shadow_se.png
new file mode 100644 (file)
index 0000000..541e3ff
Binary files /dev/null and b/docs/fancybox/fancy_shadow_se.png differ
diff --git a/docs/fancybox/fancy_shadow_sw.png b/docs/fancybox/fancy_shadow_sw.png
new file mode 100644 (file)
index 0000000..b451689
Binary files /dev/null and b/docs/fancybox/fancy_shadow_sw.png differ
diff --git a/docs/fancybox/fancy_shadow_w.png b/docs/fancybox/fancy_shadow_w.png
new file mode 100644 (file)
index 0000000..8a4e4a8
Binary files /dev/null and b/docs/fancybox/fancy_shadow_w.png differ
diff --git a/docs/fancybox/fancy_title_left.png b/docs/fancybox/fancy_title_left.png
new file mode 100644 (file)
index 0000000..6049223
Binary files /dev/null and b/docs/fancybox/fancy_title_left.png differ
diff --git a/docs/fancybox/fancy_title_main.png b/docs/fancybox/fancy_title_main.png
new file mode 100644 (file)
index 0000000..8044271
Binary files /dev/null and b/docs/fancybox/fancy_title_main.png differ
diff --git a/docs/fancybox/fancy_title_over.png b/docs/fancybox/fancy_title_over.png
new file mode 100644 (file)
index 0000000..d9f458f
Binary files /dev/null and b/docs/fancybox/fancy_title_over.png differ
diff --git a/docs/fancybox/fancy_title_right.png b/docs/fancybox/fancy_title_right.png
new file mode 100644 (file)
index 0000000..e36d9db
Binary files /dev/null and b/docs/fancybox/fancy_title_right.png differ
diff --git a/docs/fancybox/fancybox-x.png b/docs/fancybox/fancybox-x.png
new file mode 100644 (file)
index 0000000..c2130f8
Binary files /dev/null and b/docs/fancybox/fancybox-x.png differ
diff --git a/docs/fancybox/fancybox-y.png b/docs/fancybox/fancybox-y.png
new file mode 100644 (file)
index 0000000..7ef399b
Binary files /dev/null and b/docs/fancybox/fancybox-y.png differ
diff --git a/docs/fancybox/fancybox.png b/docs/fancybox/fancybox.png
new file mode 100644 (file)
index 0000000..65e14f6
Binary files /dev/null and b/docs/fancybox/fancybox.png differ
diff --git a/docs/fancybox/jquery-1.4.3.min.js b/docs/fancybox/jquery-1.4.3.min.js
new file mode 100644 (file)
index 0000000..c941a5f
--- /dev/null
@@ -0,0 +1,166 @@
+/*!
+ * jQuery JavaScript Library v1.4.3
+ * http://jquery.com/
+ *
+ * Copyright 2010, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2010, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Thu Oct 14 23:10:06 2010 -0400
+ */
+(function(E,A){function U(){return false}function ba(){return true}function ja(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ga(a){var b,d,e=[],f=[],h,k,l,n,s,v,B,D;k=c.data(this,this.nodeType?"events":"__events__");if(typeof k==="function")k=k.events;if(!(a.liveFired===this||!k||!k.live||a.button&&a.type==="click")){if(a.namespace)D=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var H=k.live.slice(0);for(n=0;n<H.length;n++){k=H[n];k.origType.replace(X,
+"")===a.type?f.push(k.selector):H.splice(n--,1)}f=c(a.target).closest(f,a.currentTarget);s=0;for(v=f.length;s<v;s++){B=f[s];for(n=0;n<H.length;n++){k=H[n];if(B.selector===k.selector&&(!D||D.test(k.namespace))){l=B.elem;h=null;if(k.preType==="mouseenter"||k.preType==="mouseleave"){a.type=k.preType;h=c(a.relatedTarget).closest(k.selector)[0]}if(!h||h!==l)e.push({elem:l,handleObj:k,level:B.level})}}}s=0;for(v=e.length;s<v;s++){f=e[s];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;
+a.handleObj=f.handleObj;D=f.handleObj.origHandler.apply(f.elem,arguments);if(D===false||a.isPropagationStopped()){d=f.level;if(D===false)b=false}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(Ha,"`").replace(Ia,"&")}function ka(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Ja.test(b))return c.filter(b,
+e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function la(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var k in e[h])c.event.add(this,h,e[h][k],e[h][k].data)}}})}function Ka(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}
+function ma(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?La:Ma,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function ca(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Na.test(a)?e(a,h):ca(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?
+e(a,""):c.each(b,function(f,h){ca(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(na.concat.apply([],na.slice(0,b)),function(){d[this]=a});return d}function oa(a){if(!da[a]){var b=c("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";da[a]=d}return da[a]}function ea(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var u=E.document,c=function(){function a(){if(!b.isReady){try{u.documentElement.doScroll("left")}catch(i){setTimeout(a,
+1);return}b.ready()}}var b=function(i,r){return new b.fn.init(i,r)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,k=/\S/,l=/^\s+/,n=/\s+$/,s=/\W/,v=/\d/,B=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,D=/^[\],:{}\s]*$/,H=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,G=/(?:^|:|,)(?:\s*\[)+/g,M=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,j=/(msie) ([\w.]+)/,o=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,
+q=[],t,x=Object.prototype.toString,C=Object.prototype.hasOwnProperty,P=Array.prototype.push,N=Array.prototype.slice,R=String.prototype.trim,Q=Array.prototype.indexOf,L={};b.fn=b.prototype={init:function(i,r){var y,z,F;if(!i)return this;if(i.nodeType){this.context=this[0]=i;this.length=1;return this}if(i==="body"&&!r&&u.body){this.context=u;this[0]=u.body;this.selector="body";this.length=1;return this}if(typeof i==="string")if((y=h.exec(i))&&(y[1]||!r))if(y[1]){F=r?r.ownerDocument||r:u;if(z=B.exec(i))if(b.isPlainObject(r)){i=
+[u.createElement(z[1])];b.fn.attr.call(i,r,true)}else i=[F.createElement(z[1])];else{z=b.buildFragment([y[1]],[F]);i=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,i)}else{if((z=u.getElementById(y[2]))&&z.parentNode){if(z.id!==y[2])return f.find(i);this.length=1;this[0]=z}this.context=u;this.selector=i;return this}else if(!r&&!s.test(i)){this.selector=i;this.context=u;i=u.getElementsByTagName(i);return b.merge(this,i)}else return!r||r.jquery?(r||f).find(i):b(r).find(i);
+else if(b.isFunction(i))return f.ready(i);if(i.selector!==A){this.selector=i.selector;this.context=i.context}return b.makeArray(i,this)},selector:"",jquery:"1.4.3",length:0,size:function(){return this.length},toArray:function(){return N.call(this,0)},get:function(i){return i==null?this.toArray():i<0?this.slice(i)[0]:this[i]},pushStack:function(i,r,y){var z=b();b.isArray(i)?P.apply(z,i):b.merge(z,i);z.prevObject=this;z.context=this.context;if(r==="find")z.selector=this.selector+(this.selector?" ":
+"")+y;else if(r)z.selector=this.selector+"."+r+"("+y+")";return z},each:function(i,r){return b.each(this,i,r)},ready:function(i){b.bindReady();if(b.isReady)i.call(u,b);else q&&q.push(i);return this},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(i){return this.pushStack(b.map(this,function(r,y){return i.call(r,
+y,r)}))},end:function(){return this.prevObject||b(null)},push:P,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var i=arguments[0]||{},r=1,y=arguments.length,z=false,F,I,K,J,fa;if(typeof i==="boolean"){z=i;i=arguments[1]||{};r=2}if(typeof i!=="object"&&!b.isFunction(i))i={};if(y===r){i=this;--r}for(;r<y;r++)if((F=arguments[r])!=null)for(I in F){K=i[I];J=F[I];if(i!==J)if(z&&J&&(b.isPlainObject(J)||(fa=b.isArray(J)))){if(fa){fa=false;clone=K&&b.isArray(K)?K:[]}else clone=
+K&&b.isPlainObject(K)?K:{};i[I]=b.extend(z,clone,J)}else if(J!==A)i[I]=J}return i};b.extend({noConflict:function(i){E.$=e;if(i)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(i){i===true&&b.readyWait--;if(!b.readyWait||i!==true&&!b.isReady){if(!u.body)return setTimeout(b.ready,1);b.isReady=true;if(!(i!==true&&--b.readyWait>0)){if(q){for(var r=0;i=q[r++];)i.call(u,b);q=null}b.fn.triggerHandler&&b(u).triggerHandler("ready")}}},bindReady:function(){if(!p){p=true;if(u.readyState==="complete")return setTimeout(b.ready,
+1);if(u.addEventListener){u.addEventListener("DOMContentLoaded",t,false);E.addEventListener("load",b.ready,false)}else if(u.attachEvent){u.attachEvent("onreadystatechange",t);E.attachEvent("onload",b.ready);var i=false;try{i=E.frameElement==null}catch(r){}u.documentElement.doScroll&&i&&a()}}},isFunction:function(i){return b.type(i)==="function"},isArray:Array.isArray||function(i){return b.type(i)==="array"},isWindow:function(i){return i&&typeof i==="object"&&"setInterval"in i},isNaN:function(i){return i==
+null||!v.test(i)||isNaN(i)},type:function(i){return i==null?String(i):L[x.call(i)]||"object"},isPlainObject:function(i){if(!i||b.type(i)!=="object"||i.nodeType||b.isWindow(i))return false;if(i.constructor&&!C.call(i,"constructor")&&!C.call(i.constructor.prototype,"isPrototypeOf"))return false;for(var r in i);return r===A||C.call(i,r)},isEmptyObject:function(i){for(var r in i)return false;return true},error:function(i){throw i;},parseJSON:function(i){if(typeof i!=="string"||!i)return null;i=b.trim(i);
+if(D.test(i.replace(H,"@").replace(w,"]").replace(G,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(i):(new Function("return "+i))();else b.error("Invalid JSON: "+i)},noop:function(){},globalEval:function(i){if(i&&k.test(i)){var r=u.getElementsByTagName("head")[0]||u.documentElement,y=u.createElement("script");y.type="text/javascript";if(b.support.scriptEval)y.appendChild(u.createTextNode(i));else y.text=i;r.insertBefore(y,r.firstChild);r.removeChild(y)}},nodeName:function(i,r){return i.nodeName&&i.nodeName.toUpperCase()===
+r.toUpperCase()},each:function(i,r,y){var z,F=0,I=i.length,K=I===A||b.isFunction(i);if(y)if(K)for(z in i){if(r.apply(i[z],y)===false)break}else for(;F<I;){if(r.apply(i[F++],y)===false)break}else if(K)for(z in i){if(r.call(i[z],z,i[z])===false)break}else for(y=i[0];F<I&&r.call(y,F,y)!==false;y=i[++F]);return i},trim:R?function(i){return i==null?"":R.call(i)}:function(i){return i==null?"":i.toString().replace(l,"").replace(n,"")},makeArray:function(i,r){var y=r||[];if(i!=null){var z=b.type(i);i.length==
+null||z==="string"||z==="function"||z==="regexp"||b.isWindow(i)?P.call(y,i):b.merge(y,i)}return y},inArray:function(i,r){if(r.indexOf)return r.indexOf(i);for(var y=0,z=r.length;y<z;y++)if(r[y]===i)return y;return-1},merge:function(i,r){var y=i.length,z=0;if(typeof r.length==="number")for(var F=r.length;z<F;z++)i[y++]=r[z];else for(;r[z]!==A;)i[y++]=r[z++];i.length=y;return i},grep:function(i,r,y){var z=[],F;y=!!y;for(var I=0,K=i.length;I<K;I++){F=!!r(i[I],I);y!==F&&z.push(i[I])}return z},map:function(i,
+r,y){for(var z=[],F,I=0,K=i.length;I<K;I++){F=r(i[I],I,y);if(F!=null)z[z.length]=F}return z.concat.apply([],z)},guid:1,proxy:function(i,r,y){if(arguments.length===2)if(typeof r==="string"){y=i;i=y[r];r=A}else if(r&&!b.isFunction(r)){y=r;r=A}if(!r&&i)r=function(){return i.apply(y||this,arguments)};if(i)r.guid=i.guid=i.guid||r.guid||b.guid++;return r},access:function(i,r,y,z,F,I){var K=i.length;if(typeof r==="object"){for(var J in r)b.access(i,J,r[J],z,F,y);return i}if(y!==A){z=!I&&z&&b.isFunction(y);
+for(J=0;J<K;J++)F(i[J],r,z?y.call(i[J],J,F(i[J],r)):y,I);return i}return K?F(i[0],r):A},now:function(){return(new Date).getTime()},uaMatch:function(i){i=i.toLowerCase();i=M.exec(i)||g.exec(i)||j.exec(i)||i.indexOf("compatible")<0&&o.exec(i)||[];return{browser:i[1]||"",version:i[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(i,r){L["[object "+r+"]"]=r.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=
+m.version}if(b.browser.webkit)b.browser.safari=true;if(Q)b.inArray=function(i,r){return Q.call(r,i)};if(!/\s/.test("\u00a0")){l=/^[\s\xA0]+/;n=/[\s\xA0]+$/}f=b(u);if(u.addEventListener)t=function(){u.removeEventListener("DOMContentLoaded",t,false);b.ready()};else if(u.attachEvent)t=function(){if(u.readyState==="complete"){u.detachEvent("onreadystatechange",t);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=u.documentElement,b=u.createElement("script"),d=u.createElement("div"),
+e="script"+c.now();d.style.display="none";d.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],k=u.createElement("select"),l=k.appendChild(u.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),
+hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:l.selected,optDisabled:false,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};k.disabled=true;c.support.optDisabled=!l.disabled;b.type="text/javascript";try{b.appendChild(u.createTextNode("window."+e+"=1;"))}catch(n){}a.insertBefore(b,
+a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function s(){c.support.noCloneEvent=false;d.detachEvent("onclick",s)});d.cloneNode(true).fireEvent("onclick")}d=u.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=u.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var s=u.createElement("div");
+s.style.width=s.style.paddingLeft="1px";u.body.appendChild(s);c.boxModel=c.support.boxModel=s.offsetWidth===2;if("zoom"in s.style){s.style.display="inline";s.style.zoom=1;c.support.inlineBlockNeedsLayout=s.offsetWidth===2;s.style.display="";s.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=s.offsetWidth!==2}s.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var v=s.getElementsByTagName("td");c.support.reliableHiddenOffsets=v[0].offsetHeight===
+0;v[0].style.display="";v[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&v[0].offsetHeight===0;s.innerHTML="";u.body.removeChild(s).style.display="none"});a=function(s){var v=u.createElement("div");s="on"+s;var B=s in v;if(!B){v.setAttribute(s,"return;");B=typeof v[s]==="function"}return B};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",
+cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var pa={},Oa=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?pa:a;var e=a.nodeType,f=e?a[c.expando]:null,h=c.cache;if(!(e&&!f&&typeof b==="string"&&d===A)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=
+c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==A)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?pa:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);else if(d)delete f[e];else for(var k in a)delete a[k]}},acceptData:function(a){if(a.nodeName){var b=
+c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){if(typeof a==="undefined")return this.length?c.data(this[0]):null;else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===A){var e=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(e===A&&this.length){e=c.data(this[0],a);if(e===A&&this[0].nodeType===1){e=this[0].getAttribute("data-"+a);if(typeof e===
+"string")try{e=e==="true"?true:e==="false"?false:e==="null"?null:!c.isNaN(e)?parseFloat(e):Oa.test(e)?c.parseJSON(e):e}catch(f){}else e=A}}return e===A&&d[1]?this.data(d[0]):e}else return this.each(function(){var h=c(this),k=[d[0],b];h.triggerHandler("setData"+d[1]+"!",k);c.data(this,a,b);h.triggerHandler("changeData"+d[1]+"!",k)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=c.data(a,b);if(!d)return e||
+[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===A)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
+a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var qa=/[\n\t]/g,ga=/\s+/,Pa=/\r/g,Qa=/^(?:href|src|style)$/,Ra=/^(?:button|input)$/i,Sa=/^(?:button|input|object|select|textarea)$/i,Ta=/^a(?:rea)?$/i,ra=/^(?:radio|checkbox)$/i;c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,
+a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(s){var v=c(this);v.addClass(a.call(this,s,v.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ga),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1)if(f.className){for(var h=" "+f.className+" ",k=f.className,l=0,n=b.length;l<n;l++)if(h.indexOf(" "+b[l]+" ")<0)k+=" "+b[l];f.className=c.trim(k)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(n){var s=
+c(this);s.removeClass(a.call(this,n,s.attr("class")))});if(a&&typeof a==="string"||a===A)for(var b=(a||"").split(ga),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(qa," "),k=0,l=b.length;k<l;k++)h=h.replace(" "+b[k]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,
+f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,k=c(this),l=b,n=a.split(ga);f=n[h++];){l=e?l:!k.hasClass(f);k[l?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(qa," ").indexOf(a)>-1)return true;return false},
+val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var k=f[h];if(k.selected&&(c.support.optDisabled?!k.disabled:k.getAttribute("disabled")===null)&&(!k.parentNode.disabled||!c.nodeName(k.parentNode,"optgroup"))){a=c(k).val();if(b)return a;d.push(a)}}return d}if(ra.test(b.type)&&
+!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Pa,"")}return A}var l=c.isFunction(a);return this.each(function(n){var s=c(this),v=a;if(this.nodeType===1){if(l)v=a.call(this,n,s.val());if(v==null)v="";else if(typeof v==="number")v+="";else if(c.isArray(v))v=c.map(v,function(D){return D==null?"":D+""});if(c.isArray(v)&&ra.test(this.type))this.checked=c.inArray(s.val(),v)>=0;else if(c.nodeName(this,"select")){var B=c.makeArray(v);c("option",this).each(function(){this.selected=
+c.inArray(c(this).val(),B)>=0});if(!B.length)this.selectedIndex=-1}else this.value=v}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return A;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==A;b=e&&c.props[b]||b;if(a.nodeType===1){var h=Qa.test(b);if((b in a||a[b]!==A)&&e&&!h){if(f){b==="type"&&Ra.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
+if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:Sa.test(a.nodeName)||Ta.test(a.nodeName)&&a.href?0:A;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return A;a=!c.support.hrefNormalized&&e&&
+h?a.getAttribute(b,2):a.getAttribute(b);return a===null?A:a}}});var X=/\.(.*)$/,ha=/^(?:textarea|input|select)$/i,Ha=/\./g,Ia=/ /g,Ua=/[^\w\s.|`]/g,Va=function(a){return a.replace(Ua,"\\$&")},sa={focusin:0,focusout:0};c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var k=a.nodeType?"events":"__events__",l=h[k],n=h.handle;if(typeof l===
+"function"){n=l.handle;l=l.events}else if(!l){a.nodeType||(h[k]=h=function(){});h.events=l={}}if(!n)h.handle=n=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(n.elem,arguments):A};n.elem=a;b=b.split(" ");for(var s=0,v;k=b[s++];){h=f?c.extend({},f):{handler:d,data:e};if(k.indexOf(".")>-1){v=k.split(".");k=v.shift();h.namespace=v.slice(0).sort().join(".")}else{v=[];h.namespace=""}h.type=k;if(!h.guid)h.guid=d.guid;var B=l[k],D=c.event.special[k]||{};if(!B){B=l[k]=[];
+if(!D.setup||D.setup.call(a,e,v,n)===false)if(a.addEventListener)a.addEventListener(k,n,false);else a.attachEvent&&a.attachEvent("on"+k,n)}if(D.add){D.add.call(a,h);if(!h.handler.guid)h.handler.guid=d.guid}B.push(h);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,k=0,l,n,s,v,B,D,H=a.nodeType?"events":"__events__",w=c.data(a),G=w&&w[H];if(w&&G){if(typeof G==="function"){w=G;G=G.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||
+typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in G)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[k++];){v=f;l=f.indexOf(".")<0;n=[];if(!l){n=f.split(".");f=n.shift();s=RegExp("(^|\\.)"+c.map(n.slice(0).sort(),Va).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(B=G[f])if(d){v=c.event.special[f]||{};for(h=e||0;h<B.length;h++){D=B[h];if(d.guid===D.guid){if(l||s.test(D.namespace)){e==null&&B.splice(h--,1);v.remove&&v.remove.call(a,D)}if(e!=null)break}}if(B.length===0||e!=null&&B.length===1){if(!v.teardown||
+v.teardown.call(a,n)===false)c.removeEvent(a,f,w.handle);delete G[f]}}else for(h=0;h<B.length;h++){D=B[h];if(l||s.test(D.namespace)){c.event.remove(a,v,D.handler,h);B.splice(h--,1)}}}if(c.isEmptyObject(G)){if(b=w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,H);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=
+f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return A;a.result=A;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===
+false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){e=a.target;var k,l=f.replace(X,""),n=c.nodeName(e,"a")&&l==="click",s=c.event.special[l]||{};if((!s._default||s._default.call(d,a)===false)&&!n&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[l]){if(k=e["on"+l])e["on"+l]=null;c.event.triggered=true;e[l]()}}catch(v){}if(k)e["on"+l]=k;c.event.triggered=false}}},handle:function(a){var b,d,e;
+d=[];var f,h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var k=d.length;f<k;f++){var l=d[f];if(b||e.test(l.namespace)){a.handler=l.handler;a.data=
+l.data;a.handleObj=l;l=l.handler.apply(this,h);if(l!==A){a.result=l;if(l===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
+fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||u;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=u.documentElement;d=u.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
+d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==A)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ga,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
+Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=u.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
+c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ba;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ba;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ba;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
+var ta=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},ua=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?ua:ta,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?ua:ta)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
+"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=A;return ja("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=A;return ja("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
+va=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ha.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=va(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===A||f===e))if(e!=null||f){a.type="change";a.liveFired=
+A;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",va(a))}},setup:function(){if(this.type===
+"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ha.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ha.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}u.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){sa[b]++===0&&u.addEventListener(a,d,true)},teardown:function(){--sa[b]===
+0&&u.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=A}var k=b==="one"?c.proxy(f,function(n){c(this).unbind(n,k);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var l=this.length;h<l;h++)c.event.add(this[h],d,k,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
+a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
+1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var wa={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var k,l=0,n,s,v=h||this.selector;h=h?this:c(this.context);if(typeof d===
+"object"&&!d.preventDefault){for(k in d)h[b](k,e,d[k],v);return this}if(c.isFunction(e)){f=e;e=A}for(d=(d||"").split(" ");(k=d[l++])!=null;){n=X.exec(k);s="";if(n){s=n[0];k=k.replace(X,"")}if(k==="hover")d.push("mouseenter"+s,"mouseleave"+s);else{n=k;if(k==="focus"||k==="blur"){d.push(wa[k]+s);k+=s}else k=(wa[k]||k)+s;if(b==="live"){s=0;for(var B=h.length;s<B;s++)c.event.add(h[s],"live."+Y(k,v),{data:e,selector:v,handler:f,origType:k,origHandler:f,preType:n})}else h.unbind("live."+Y(k,v),f)}}return this}});
+c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
+(function(){function a(g,j,o,m,p,q){p=0;for(var t=m.length;p<t;p++){var x=m[p];if(x){x=x[g];for(var C=false;x;){if(x.sizcache===o){C=m[x.sizset];break}if(x.nodeType===1&&!q){x.sizcache=o;x.sizset=p}if(x.nodeName.toLowerCase()===j){C=x;break}x=x[g]}m[p]=C}}}function b(g,j,o,m,p,q){p=0;for(var t=m.length;p<t;p++){var x=m[p];if(x){x=x[g];for(var C=false;x;){if(x.sizcache===o){C=m[x.sizset];break}if(x.nodeType===1){if(!q){x.sizcache=o;x.sizset=p}if(typeof j!=="string"){if(x===j){C=true;break}}else if(l.filter(j,
+[x]).length>0){C=x;break}}x=x[g]}m[p]=C}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,k=true;[0,0].sort(function(){k=false;return 0});var l=function(g,j,o,m){o=o||[];var p=j=j||u;if(j.nodeType!==1&&j.nodeType!==9)return[];if(!g||typeof g!=="string")return o;var q=[],t,x,C,P,N=true,R=l.isXML(j),Q=g,L;do{d.exec("");if(t=d.exec(Q)){Q=t[3];q.push(t[1]);if(t[2]){P=t[3];
+break}}}while(t);if(q.length>1&&s.exec(g))if(q.length===2&&n.relative[q[0]])x=M(q[0]+q[1],j);else for(x=n.relative[q[0]]?[j]:l(q.shift(),j);q.length;){g=q.shift();if(n.relative[g])g+=q.shift();x=M(g,x)}else{if(!m&&q.length>1&&j.nodeType===9&&!R&&n.match.ID.test(q[0])&&!n.match.ID.test(q[q.length-1])){t=l.find(q.shift(),j,R);j=t.expr?l.filter(t.expr,t.set)[0]:t.set[0]}if(j){t=m?{expr:q.pop(),set:D(m)}:l.find(q.pop(),q.length===1&&(q[0]==="~"||q[0]==="+")&&j.parentNode?j.parentNode:j,R);x=t.expr?l.filter(t.expr,
+t.set):t.set;if(q.length>0)C=D(x);else N=false;for(;q.length;){t=L=q.pop();if(n.relative[L])t=q.pop();else L="";if(t==null)t=j;n.relative[L](C,t,R)}}else C=[]}C||(C=x);C||l.error(L||g);if(f.call(C)==="[object Array]")if(N)if(j&&j.nodeType===1)for(g=0;C[g]!=null;g++){if(C[g]&&(C[g]===true||C[g].nodeType===1&&l.contains(j,C[g])))o.push(x[g])}else for(g=0;C[g]!=null;g++)C[g]&&C[g].nodeType===1&&o.push(x[g]);else o.push.apply(o,C);else D(C,o);if(P){l(P,p,o,m);l.uniqueSort(o)}return o};l.uniqueSort=function(g){if(w){h=
+k;g.sort(w);if(h)for(var j=1;j<g.length;j++)g[j]===g[j-1]&&g.splice(j--,1)}return g};l.matches=function(g,j){return l(g,null,null,j)};l.matchesSelector=function(g,j){return l(j,null,null,[g]).length>0};l.find=function(g,j,o){var m;if(!g)return[];for(var p=0,q=n.order.length;p<q;p++){var t=n.order[p],x;if(x=n.leftMatch[t].exec(g)){var C=x[1];x.splice(1,1);if(C.substr(C.length-1)!=="\\"){x[1]=(x[1]||"").replace(/\\/g,"");m=n.find[t](x,j,o);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=j.getElementsByTagName("*"));
+return{set:m,expr:g}};l.filter=function(g,j,o,m){for(var p=g,q=[],t=j,x,C,P=j&&j[0]&&l.isXML(j[0]);g&&j.length;){for(var N in n.filter)if((x=n.leftMatch[N].exec(g))!=null&&x[2]){var R=n.filter[N],Q,L;L=x[1];C=false;x.splice(1,1);if(L.substr(L.length-1)!=="\\"){if(t===q)q=[];if(n.preFilter[N])if(x=n.preFilter[N](x,t,o,q,m,P)){if(x===true)continue}else C=Q=true;if(x)for(var i=0;(L=t[i])!=null;i++)if(L){Q=R(L,x,i,t);var r=m^!!Q;if(o&&Q!=null)if(r)C=true;else t[i]=false;else if(r){q.push(L);C=true}}if(Q!==
+A){o||(t=q);g=g.replace(n.match[N],"");if(!C)return[];break}}}if(g===p)if(C==null)l.error(g);else break;p=g}return t};l.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=l.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\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,j){var o=typeof j==="string",m=o&&!/\W/.test(j);o=o&&!m;if(m)j=j.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=o||q&&q.nodeName.toLowerCase()===
+j?q||false:q===j}o&&l.filter(j,g,true)},">":function(g,j){var o=typeof j==="string",m,p=0,q=g.length;if(o&&!/\W/.test(j))for(j=j.toLowerCase();p<q;p++){if(m=g[p]){o=m.parentNode;g[p]=o.nodeName.toLowerCase()===j?o:false}}else{for(;p<q;p++)if(m=g[p])g[p]=o?m.parentNode:m.parentNode===j;o&&l.filter(j,g,true)}},"":function(g,j,o){var m=e++,p=b,q;if(typeof j==="string"&&!/\W/.test(j)){q=j=j.toLowerCase();p=a}p("parentNode",j,m,g,q,o)},"~":function(g,j,o){var m=e++,p=b,q;if(typeof j==="string"&&!/\W/.test(j)){q=
+j=j.toLowerCase();p=a}p("previousSibling",j,m,g,q,o)}},find:{ID:function(g,j,o){if(typeof j.getElementById!=="undefined"&&!o)return(g=j.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,j){if(typeof j.getElementsByName!=="undefined"){for(var o=[],m=j.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&o.push(m[p]);return o.length===0?null:o}},TAG:function(g,j){return j.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,j,o,m,p,q){g=" "+g[1].replace(/\\/g,
+"")+" ";if(q)return g;q=0;for(var t;(t=j[q])!=null;q++)if(t)if(p^(t.className&&(" "+t.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))o||m.push(t);else if(o)j[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var j=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=j[1]+(j[2]||1)-0;g[3]=j[3]-0}g[0]=e++;return g},ATTR:function(g,j,o,
+m,p,q){j=g[1].replace(/\\/g,"");if(!q&&n.attrMap[j])g[1]=n.attrMap[j];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,j,o,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=l(g[3],null,null,j);else{g=l.filter(g[3],j,o,true^p);o||m.push.apply(m,g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
+true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,j,o){return!!l(o[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
+g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,j){return j===0},last:function(g,j,o,m){return j===m.length-1},even:function(g,j){return j%2===0},odd:function(g,j){return j%2===1},lt:function(g,j,o){return j<o[3]-0},gt:function(g,j,o){return j>o[3]-0},nth:function(g,j,o){return o[3]-
+0===j},eq:function(g,j,o){return o[3]-0===j}},filter:{PSEUDO:function(g,j,o,m){var p=j[1],q=n.filters[p];if(q)return q(g,o,j,m);else if(p==="contains")return(g.textContent||g.innerText||l.getText([g])||"").indexOf(j[3])>=0;else if(p==="not"){j=j[3];o=0;for(m=j.length;o<m;o++)if(j[o]===g)return false;return true}else l.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,j){var o=j[1],m=g;switch(o){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(o===
+"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":o=j[2];var p=j[3];if(o===1&&p===0)return true;var q=j[0],t=g.parentNode;if(t&&(t.sizcache!==q||!g.nodeIndex)){var x=0;for(m=t.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++x;t.sizcache=q}m=g.nodeIndex-p;return o===0?m===0:m%o===0&&m/o>=0}},ID:function(g,j){return g.nodeType===1&&g.getAttribute("id")===j},TAG:function(g,j){return j==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
+j},CLASS:function(g,j){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(j)>-1},ATTR:function(g,j){var o=j[1];o=n.attrHandle[o]?n.attrHandle[o](g):g[o]!=null?g[o]:g.getAttribute(o);var m=o+"",p=j[2],q=j[4];return o==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&o!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,j,o,m){var p=n.setFilters[j[2]];
+if(p)return p(g,o,j,m)}}},s=n.match.POS,v=function(g,j){return"\\"+(j-0+1)},B;for(B in n.match){n.match[B]=RegExp(n.match[B].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[B]=RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[B].source.replace(/\\(\d+)/g,v))}var D=function(g,j){g=Array.prototype.slice.call(g,0);if(j){j.push.apply(j,g);return j}return g};try{Array.prototype.slice.call(u.documentElement.childNodes,0)}catch(H){D=function(g,j){var o=j||[],m=0;if(f.call(g)==="[object Array]")Array.prototype.push.apply(o,
+g);else if(typeof g.length==="number")for(var p=g.length;m<p;m++)o.push(g[m]);else for(;g[m];m++)o.push(g[m]);return o}}var w,G;if(u.documentElement.compareDocumentPosition)w=function(g,j){if(g===j){h=true;return 0}if(!g.compareDocumentPosition||!j.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(j)&4?-1:1};else{w=function(g,j){var o=[],m=[],p=g.parentNode,q=j.parentNode,t=p;if(g===j){h=true;return 0}else if(p===q)return G(g,j);else if(p){if(!q)return 1}else return-1;
+for(;t;){o.unshift(t);t=t.parentNode}for(t=q;t;){m.unshift(t);t=t.parentNode}p=o.length;q=m.length;for(t=0;t<p&&t<q;t++)if(o[t]!==m[t])return G(o[t],m[t]);return t===p?G(g,m[t],-1):G(o[t],j,1)};G=function(g,j,o){if(g===j)return o;for(g=g.nextSibling;g;){if(g===j)return-1;g=g.nextSibling}return 1}}l.getText=function(g){for(var j="",o,m=0;g[m];m++){o=g[m];if(o.nodeType===3||o.nodeType===4)j+=o.nodeValue;else if(o.nodeType!==8)j+=l.getText(o.childNodes)}return j};(function(){var g=u.createElement("div"),
+j="script"+(new Date).getTime();g.innerHTML="<a name='"+j+"'/>";var o=u.documentElement;o.insertBefore(g,o.firstChild);if(u.getElementById(j)){n.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:A:[]};n.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}o.removeChild(g);
+o=g=null})();(function(){var g=u.createElement("div");g.appendChild(u.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(j,o){var m=o.getElementsByTagName(j[1]);if(j[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(j){return j.getAttribute("href",2)};g=null})();u.querySelectorAll&&
+function(){var g=l,j=u.createElement("div");j.innerHTML="<p class='TEST'></p>";if(!(j.querySelectorAll&&j.querySelectorAll(".TEST").length===0)){l=function(m,p,q,t){p=p||u;if(!t&&!l.isXML(p))if(p.nodeType===9)try{return D(p.querySelectorAll(m),q)}catch(x){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var C=p.id,P=p.id="__sizzle__";try{return D(p.querySelectorAll("#"+P+" "+m),q)}catch(N){}finally{if(C)p.id=C;else p.removeAttribute("id")}}return g(m,p,q,t)};for(var o in g)l[o]=g[o];
+j=null}}();(function(){var g=u.documentElement,j=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,o=false;try{j.call(u.documentElement,":sizzle")}catch(m){o=true}if(j)l.matchesSelector=function(p,q){try{if(o||!n.match.PSEUDO.test(q))return j.call(p,q)}catch(t){}return l(q,null,null,[p]).length>0}})();(function(){var g=u.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===
+0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(j,o,m){if(typeof o.getElementsByClassName!=="undefined"&&!m)return o.getElementsByClassName(j[1])};g=null}}})();l.contains=u.documentElement.contains?function(g,j){return g!==j&&(g.contains?g.contains(j):true)}:function(g,j){return!!(g.compareDocumentPosition(j)&16)};l.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var M=function(g,
+j){for(var o=[],m="",p,q=j.nodeType?[j]:j;p=n.match.PSEUDO.exec(g);){m+=p[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;p=0;for(var t=q.length;p<t;p++)l(g,q[p],o);return l.filter(m,o)};c.find=l;c.expr=l.selectors;c.expr[":"]=c.expr.filters;c.unique=l.uniqueSort;c.text=l.getText;c.isXMLDoc=l.isXML;c.contains=l.contains})();var Wa=/Until$/,Xa=/^(?:parents|prevUntil|prevAll)/,Ya=/,/,Ja=/^.[^:#\[\.,]*$/,Za=Array.prototype.slice,$a=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("",
+"find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var k=0;k<d;k++)if(b[k]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(ka(this,a,false),"not",a)},filter:function(a){return this.pushStack(ka(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,
+b){var d=[],e,f,h=this[0];if(c.isArray(a)){var k={},l,n=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:n})}h=h.parentNode;n++}}return d}k=$a.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(k?k.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||
+!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});
+c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",
+d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Wa.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||Ya.test(e))&&Xa.test(a))f=f.reverse();return this.pushStack(f,a,Za.call(arguments).join(","))}});
+c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===A||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var xa=/ jQuery\d+="(?:\d+|null)"/g,
+$=/^\s+/,ya=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,za=/<([\w:]+)/,ab=/<tbody/i,bb=/<|&#?\w+;/,Aa=/<(?:script|object|embed|option|style)/i,Ba=/checked\s*(?:[^=]|=\s*.checked.)/i,cb=/\=([^="'>\s]+\/)>/g,O={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],
+area:[1,"<map>","</map>"],_default:[0,"",""]};O.optgroup=O.option;O.tbody=O.tfoot=O.colgroup=O.caption=O.thead;O.th=O.td;if(!c.support.htmlSerialize)O._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==A)return this.empty().append((this[0]&&this[0].ownerDocument||u).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,
+d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},
+unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=
+c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));
+c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(xa,"").replace(cb,'="$1">').replace($,
+"")],e)[0]}else return this.cloneNode(true)});if(a===true){la(this,b);la(this.find("*"),b.find("*"))}return b},html:function(a){if(a===A)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(xa,""):null;else if(typeof a==="string"&&!Aa.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!O[(za.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ya,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?
+this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,
+true)},domManip:function(a,b,d){var e,f,h=a[0],k=[],l;if(!c.support.checkClone&&arguments.length===3&&typeof h==="string"&&Ba.test(h))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(h))return this.each(function(s){var v=c(this);a[0]=h.call(this,s,b?v.html():A);v.domManip(a,b,d)});if(this[0]){e=h&&h.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);l=e.fragment;if(f=l.childNodes.length===1?l=l.firstChild:
+l.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var n=this.length;f<n;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):this[f]:this[f],f>0||e.cacheable||this.length>1?l.cloneNode(true):l)}k.length&&c.each(k,Ka)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:u;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===u&&!Aa.test(a[0])&&(c.support.checkClone||
+!Ba.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=
+d.length;f<h;f++){var k=(f>0?this.clone(true):this).get();c(d[f])[b](k);e=e.concat(k)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||u;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||u;for(var f=[],h=0,k;(k=a[h])!=null;h++){if(typeof k==="number")k+="";if(k){if(typeof k==="string"&&!bb.test(k))k=b.createTextNode(k);else if(typeof k==="string"){k=k.replace(ya,"<$1></$2>");var l=(za.exec(k)||["",""])[1].toLowerCase(),n=O[l]||O._default,
+s=n[0],v=b.createElement("div");for(v.innerHTML=n[1]+k+n[2];s--;)v=v.lastChild;if(!c.support.tbody){s=ab.test(k);l=l==="table"&&!s?v.firstChild&&v.firstChild.childNodes:n[1]==="<table>"&&!s?v.childNodes:[];for(n=l.length-1;n>=0;--n)c.nodeName(l[n],"tbody")&&!l[n].childNodes.length&&l[n].parentNode.removeChild(l[n])}!c.support.leadingWhitespace&&$.test(k)&&v.insertBefore(b.createTextNode($.exec(k)[0]),v.firstChild);k=v.childNodes}if(k.nodeType)f.push(k);else f=c.merge(f,k)}}if(d)for(h=0;f[h];h++)if(e&&
+c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,k=0,l;(l=a[k])!=null;k++)if(!(l.nodeName&&c.noData[l.nodeName.toLowerCase()]))if(d=l[c.expando]){if((b=e[d])&&b.events)for(var n in b.events)f[n]?
+c.event.remove(l,n):c.removeEvent(l,n,b.handle);if(h)delete l[c.expando];else l.removeAttribute&&l.removeAttribute(c.expando);delete e[d]}}});var Ca=/alpha\([^)]*\)/i,db=/opacity=([^)]*)/,eb=/-([a-z])/ig,fb=/([A-Z])/g,Da=/^-?\d+(?:px)?$/i,gb=/^-?\d/,hb={position:"absolute",visibility:"hidden",display:"block"},La=["Left","Right"],Ma=["Top","Bottom"],W,ib=u.defaultView&&u.defaultView.getComputedStyle,jb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===A)return this;
+return c.access(this,a,b,true,function(d,e,f){return f!==A?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),k=a.style,l=c.cssHooks[h];b=c.cssProps[h]||
+h;if(d!==A){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!l||!("set"in l)||(d=l.set(a,d))!==A)try{k[b]=d}catch(n){}}}else{if(l&&"get"in l&&(f=l.get(a,false,e))!==A)return f;return k[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==A)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=
+e[f]},camelCase:function(a){return a.replace(eb,jb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=ma(d,b,f);else c.swap(d,hb,function(){h=ma(d,b,f)});return h+"px"}},set:function(d,e){if(Da.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return db.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":
+b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=d.filter||"";d.filter=Ca.test(f)?f.replace(Ca,e):d.filter+" "+e}};if(ib)W=function(a,b,d){var e;d=d.replace(fb,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return A;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};else if(u.documentElement.currentStyle)W=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],
+h=a.style;if(!Da.test(f)&&gb.test(f)){d=h.left;e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f};if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var kb=c.now(),lb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
+mb=/^(?:select|textarea)/i,nb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ob=/^(?:GET|HEAD|DELETE)$/,Na=/\[\]$/,T=/\=\?(&|$)/,ia=/\?/,pb=/([?&])_=[^&]*/,qb=/^(\w+:)?\/\/([^\/?#]+)/,rb=/%20/g,sb=/#.*$/,Ea=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ea)return Ea.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=
+b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(k,l){if(l==="success"||l==="notmodified")h.html(f?c("<div>").append(k.responseText.replace(lb,"")).find(f):k.responseText);d&&h.each(d,[k.responseText,l,k])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
+!this.disabled&&(this.checked||mb.test(this.nodeName)||nb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
+getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
+script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),k=ob.test(h);b.url=b.url.replace(sb,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ia.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
+!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+kb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var l=E[d];E[d]=function(m){f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);if(c.isFunction(l))l(m);else{E[d]=A;try{delete E[d]}catch(p){}}v&&v.removeChild(B)}}if(b.dataType==="script"&&b.cache===null)b.cache=
+false;if(b.cache===false&&h==="GET"){var n=c.now(),s=b.url.replace(pb,"$1_="+n);b.url=s+(s===b.url?(ia.test(b.url)?"&":"?")+"_="+n:"")}if(b.data&&h==="GET")b.url+=(ia.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");n=(n=qb.exec(b.url))&&(n[1]&&n[1]!==location.protocol||n[2]!==location.host);if(b.dataType==="script"&&h==="GET"&&n){var v=u.getElementsByTagName("head")[0]||u.documentElement,B=u.createElement("script");if(b.scriptCharset)B.charset=b.scriptCharset;B.src=
+b.url;if(!d){var D=false;B.onload=B.onreadystatechange=function(){if(!D&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){D=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);B.onload=B.onreadystatechange=null;v&&B.parentNode&&v.removeChild(B)}}}v.insertBefore(B,v.firstChild);return A}var H=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!k||a&&a.contentType)w.setRequestHeader("Content-Type",
+b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}n||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(G){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
+c.triggerGlobal(b,"ajaxSend",[w,b]);var M=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){H||c.handleComplete(b,w,e,f);H=true;if(w)w.onreadystatechange=c.noop}else if(!H&&w&&(w.readyState===4||m==="timeout")){H=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
+c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&g.call&&g.call(w);M("abort")}}catch(j){}b.async&&b.timeout>0&&setTimeout(function(){w&&!H&&M("timeout")},b.timeout);try{w.send(k||b.data==null?null:b.data)}catch(o){c.handleError(b,w,null,o);c.handleComplete(b,w,e,f)}b.async||M();return w}},param:function(a,b){var d=[],e=function(h,k){k=c.isFunction(k)?k():k;d[d.length]=encodeURIComponent(h)+
+"="+encodeURIComponent(k)};if(b===A)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)ca(f,a[f],b,e);return d.join("&").replace(rb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",[b,a])},handleComplete:function(a,
+b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),e=a.getResponseHeader("Etag");
+if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});if(E.ActiveXObject)c.ajaxSettings.xhr=
+function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var da={},tb=/^(?:toggle|show|hide)$/,ub=/^([+\-]=)?([\d+.\-]+)(.*)$/,aa,na=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",3),a,b,d);else{a=
+0;for(b=this.length;a<b;a++){if(!c.data(this[a],"olddisplay")&&this[a].style.display==="none")this[a].style.display="";this[a].style.display===""&&c.css(this[a],"display")==="none"&&c.data(this[a],"olddisplay",oa(this[a].nodeName))}for(a=0;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",d)}for(a=
+0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,d,e);if(c.isEmptyObject(a))return this.each(f.complete);
+return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),k,l=this.nodeType===1,n=l&&c(this).is(":hidden"),s=this;for(k in a){var v=c.camelCase(k);if(k!==v){a[v]=a[k];delete a[k];k=v}if(a[k]==="hide"&&n||a[k]==="show"&&!n)return h.complete.call(this);if(l&&(k==="height"||k==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(oa(this.nodeName)===
+"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[k])){(h.specialEasing=h.specialEasing||{})[k]=a[k][1];a[k]=a[k][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(B,D){var H=new c.fx(s,h,B);if(tb.test(D))H[D==="toggle"?n?"show":"hide":D](a);else{var w=ub.exec(D),G=H.cur(true)||0;if(w){var M=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(s,B,(M||1)+g);
+G=(M||1)/H.cur(true)*G;c.style(s,B,G+g)}if(w[1])M=(w[1]==="-="?-1:1)*M+G;H.custom(G,M,g)}else H.custom(G,D,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
+d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
+Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(h){return f.step(h)}
+this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;var f=this;a=c.fx;e.elem=this.elem;if(e()&&c.timers.push(e)&&!aa)aa=setInterval(a.tick,a.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
+this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(l,n){f.style["overflow"+n]=h.overflow[l]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
+this.options.show)for(var k in this.options.curAnim)c.style(this.elem,k,this.options.orig[k]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
+c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(aa);aa=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
+b.elem}).length};var vb=/^t(?:able|d|h)$/i,Fa=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in u.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(k){c.offset.setOffset(this,a,k)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=ea(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
+h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(s){c.offset.setOffset(this,a,s)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,e=b.ownerDocument,f,h=e.documentElement,k=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;
+for(var l=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==k&&b!==h;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;f=e?e.getComputedStyle(b,null):b.currentStyle;l-=b.scrollTop;n-=b.scrollLeft;if(b===d){l+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&vb.test(b.nodeName))){l+=parseFloat(f.borderTopWidth)||0;n+=parseFloat(f.borderLeftWidth)||0}d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&f.overflow!=="visible"){l+=
+parseFloat(f.borderTopWidth)||0;n+=parseFloat(f.borderLeftWidth)||0}f=f}if(f.position==="relative"||f.position==="static"){l+=k.offsetTop;n+=k.offsetLeft}if(c.offset.supportsFixedPosition&&f.position==="fixed"){l+=Math.max(h.scrollTop,k.scrollTop);n+=Math.max(h.scrollLeft,k.scrollLeft)}return{top:l,left:n}};c.offset={initialize:function(){var a=u.body,b=u.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
+height:"1px",visibility:"hidden"});b.innerHTML="<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>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
+f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
+"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),k=c.css(a,"top"),l=c.css(a,"left"),n=e==="absolute"&&c.inArray("auto",[k,l])>-1;e={};var s={};if(n)s=f.position();k=n?s.top:parseInt(k,10)||0;l=n?s.left:parseInt(l,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+k;if(b.left!=null)e.left=b.left-h.left+l;"using"in b?b.using.call(a,
+e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Fa.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||u.body;a&&!Fa.test(a.nodeName)&&
+c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==A)return this.each(function(){if(h=ea(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=ea(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
+c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(h){var k=c(this);k[d](e.call(this,h,k[d]()))});return c.isWindow(f)?f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b]:f.nodeType===9?Math.max(f.documentElement["client"+
+b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]):e===A?parseFloat(c.css(f,d)):this.css(d,typeof e==="string"?e:e+"px")}})})(window);
diff --git a/docs/fancybox/jquery.easing-1.3.pack.js b/docs/fancybox/jquery.easing-1.3.pack.js
new file mode 100644 (file)
index 0000000..9028179
--- /dev/null
@@ -0,0 +1,72 @@
+/*
+ * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
+ *
+ * Uses the built in easing capabilities added In jQuery 1.1
+ * to offer multiple easing options
+ *
+ * TERMS OF USE - jQuery Easing
+ * 
+ * Open source under the BSD License. 
+ * 
+ * Copyright Â© 2008 George McGinley Smith
+ * All rights reserved.
+ * 
+ * Redistribution and use in source and binary forms, with or without modification, 
+ * are permitted provided that the following conditions are met:
+ * 
+ * Redistributions of source code must retain the above copyright notice, this list of 
+ * conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, this list 
+ * of conditions and the following disclaimer in the documentation and/or other materials 
+ * provided with the distribution.
+ * 
+ * Neither the name of the author nor the names of contributors may be used to endorse 
+ * or promote products derived from this software without specific prior written permission.
+ * 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+*/
+
+// t: current time, b: begInnIng value, c: change In value, d: duration
+eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t<d/2)6 h.i.A(x,t*2,0,c,d)*.5+b;6 h.i.v(x,t*2-d,0,c,d)*.5+c*.5+b}});',62,74,'||||||return||Math|function|||||if|var|PI|jQuery|easing|pow|75|70158|else|sin|sqrt||5625|asin|||undefined|easeOutBounce|abs||def|swing|easeInBounce|525|cos|easeOutQuad|easeOutBack|easeInBack|easeInSine|easeOutElastic|easeInOutQuint|easeOutQuint|easeInQuint|easeInOutQuart|easeOutQuart|easeInQuart|extend|easeInElastic|easeInOutCirc|easeInOutCubic|easeOutCirc|easeInOutElastic|easeOutCubic|easeInCirc|easeInOutExpo|easeInCubic|easeOutExpo|easeInExpo||9375|easeInOutSine|easeInOutQuad|25|easeOutSine|easeInOutBack|easeInQuad|625|984375|jswing|easeInOutBounce'.split('|'),0,{}))
+
+/*
+ *
+ * TERMS OF USE - EASING EQUATIONS
+ * 
+ * Open source under the BSD License. 
+ * 
+ * Copyright Â© 2001 Robert Penner
+ * All rights reserved.
+ * 
+ * Redistribution and use in source and binary forms, with or without modification, 
+ * are permitted provided that the following conditions are met:
+ * 
+ * Redistributions of source code must retain the above copyright notice, this list of 
+ * conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, this list 
+ * of conditions and the following disclaimer in the documentation and/or other materials 
+ * provided with the distribution.
+ * 
+ * Neither the name of the author nor the names of contributors may be used to endorse 
+ * or promote products derived from this software without specific prior written permission.
+ * 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+ */
diff --git a/docs/fancybox/jquery.fancybox-1.3.4.css b/docs/fancybox/jquery.fancybox-1.3.4.css
new file mode 100644 (file)
index 0000000..6f53d8f
--- /dev/null
@@ -0,0 +1,359 @@
+/*\r
+ * FancyBox - jQuery Plugin\r
+ * Simple and fancy lightbox alternative\r
+ *\r
+ * Examples and documentation at: http://fancybox.net\r
+ * \r
+ * Copyright (c) 2008 - 2010 Janis Skarnelis\r
+ * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.\r
+ * \r
+ * Version: 1.3.4 (11/11/2010)\r
+ * Requires: jQuery v1.3+\r
+ *\r
+ * Dual licensed under the MIT and GPL licenses:\r
+ *   http://www.opensource.org/licenses/mit-license.php\r
+ *   http://www.gnu.org/licenses/gpl.html\r
+ */\r
+\r
+#fancybox-loading {\r
+       position: fixed;\r
+       top: 50%;\r
+       left: 50%;\r
+       width: 40px;\r
+       height: 40px;\r
+       margin-top: -20px;\r
+       margin-left: -20px;\r
+       cursor: pointer;\r
+       overflow: hidden;\r
+       z-index: 1104;\r
+       display: none;\r
+}\r
+\r
+#fancybox-loading div {\r
+       position: absolute;\r
+       top: 0;\r
+       left: 0;\r
+       width: 40px;\r
+       height: 480px;\r
+       background-image: url('fancybox.png');\r
+}\r
+\r
+#fancybox-overlay {\r
+       position: absolute;\r
+       top: 0;\r
+       left: 0;\r
+       width: 100%;\r
+       z-index: 1100;\r
+       display: none;\r
+}\r
+\r
+#fancybox-tmp {\r
+       padding: 0;\r
+       margin: 0;\r
+       border: 0;\r
+       overflow: auto;\r
+       display: none;\r
+}\r
+\r
+#fancybox-wrap {\r
+       position: absolute;\r
+       top: 0;\r
+       left: 0;\r
+       padding: 20px;\r
+       z-index: 1101;\r
+       outline: none;\r
+       display: none;\r
+}\r
+\r
+#fancybox-outer {\r
+       position: relative;\r
+       width: 100%;\r
+       height: 100%;\r
+       background: #fff;\r
+}\r
+\r
+#fancybox-content {\r
+       width: 0;\r
+       height: 0;\r
+       padding: 0;\r
+       outline: none;\r
+       position: relative;\r
+       overflow: hidden;\r
+       z-index: 1102;\r
+       border: 0px solid #fff;\r
+}\r
+\r
+#fancybox-hide-sel-frame {\r
+       position: absolute;\r
+       top: 0;\r
+       left: 0;\r
+       width: 100%;\r
+       height: 100%;\r
+       background: transparent;\r
+       z-index: 1101;\r
+}\r
+\r
+#fancybox-close {\r
+       position: absolute;\r
+       top: -15px;\r
+       right: -15px;\r
+       width: 30px;\r
+       height: 30px;\r
+       background: transparent url('fancybox.png') -40px 0px;\r
+       cursor: pointer;\r
+       z-index: 1103;\r
+       display: none;\r
+}\r
+\r
+#fancybox-error {\r
+       color: #444;\r
+       font: normal 12px/20px Arial;\r
+       padding: 14px;\r
+       margin: 0;\r
+}\r
+\r
+#fancybox-img {\r
+       width: 100%;\r
+       height: 100%;\r
+       padding: 0;\r
+       margin: 0;\r
+       border: none;\r
+       outline: none;\r
+       line-height: 0;\r
+       vertical-align: top;\r
+}\r
+\r
+#fancybox-frame {\r
+       width: 100%;\r
+       height: 100%;\r
+       border: none;\r
+       display: block;\r
+}\r
+\r
+#fancybox-left, #fancybox-right {\r
+       position: absolute;\r
+       bottom: 0px;\r
+       height: 100%;\r
+       width: 35%;\r
+       cursor: pointer;\r
+       outline: none;\r
+       background: transparent url('blank.gif');\r
+       z-index: 1102;\r
+       display: none;\r
+}\r
+\r
+#fancybox-left {\r
+       left: 0px;\r
+}\r
+\r
+#fancybox-right {\r
+       right: 0px;\r
+}\r
+\r
+#fancybox-left-ico, #fancybox-right-ico {\r
+       position: absolute;\r
+       top: 50%;\r
+       left: -9999px;\r
+       width: 30px;\r
+       height: 30px;\r
+       margin-top: -15px;\r
+       cursor: pointer;\r
+       z-index: 1102;\r
+       display: block;\r
+}\r
+\r
+#fancybox-left-ico {\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -30px;\r
+}\r
+\r
+#fancybox-right-ico {\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -60px;\r
+}\r
+\r
+#fancybox-left:hover, #fancybox-right:hover {\r
+       visibility: visible; /* IE6 */\r
+}\r
+\r
+#fancybox-left:hover span {\r
+       left: 20px;\r
+}\r
+\r
+#fancybox-right:hover span {\r
+       left: auto;\r
+       right: 20px;\r
+}\r
+\r
+.fancybox-bg {\r
+       position: absolute;\r
+       padding: 0;\r
+       margin: 0;\r
+       border: 0;\r
+       width: 20px;\r
+       height: 20px;\r
+       z-index: 1001;\r
+}\r
+\r
+#fancybox-bg-n {\r
+       top: -20px;\r
+       left: 0;\r
+       width: 100%;\r
+       background-image: url('fancybox-x.png');\r
+}\r
+\r
+#fancybox-bg-ne {\r
+       top: -20px;\r
+       right: -20px;\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -162px;\r
+}\r
+\r
+#fancybox-bg-e {\r
+       top: 0;\r
+       right: -20px;\r
+       height: 100%;\r
+       background-image: url('fancybox-y.png');\r
+       background-position: -20px 0px;\r
+}\r
+\r
+#fancybox-bg-se {\r
+       bottom: -20px;\r
+       right: -20px;\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -182px; \r
+}\r
+\r
+#fancybox-bg-s {\r
+       bottom: -20px;\r
+       left: 0;\r
+       width: 100%;\r
+       background-image: url('fancybox-x.png');\r
+       background-position: 0px -20px;\r
+}\r
+\r
+#fancybox-bg-sw {\r
+       bottom: -20px;\r
+       left: -20px;\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -142px;\r
+}\r
+\r
+#fancybox-bg-w {\r
+       top: 0;\r
+       left: -20px;\r
+       height: 100%;\r
+       background-image: url('fancybox-y.png');\r
+}\r
+\r
+#fancybox-bg-nw {\r
+       top: -20px;\r
+       left: -20px;\r
+       background-image: url('fancybox.png');\r
+       background-position: -40px -122px;\r
+}\r
+\r
+#fancybox-title {\r
+       font-family: Helvetica;\r
+       font-size: 12px;\r
+       z-index: 1102;\r
+}\r
+\r
+.fancybox-title-inside {\r
+       padding-bottom: 10px;\r
+       text-align: center;\r
+       color: #333;\r
+       background: #fff;\r
+       position: relative;\r
+}\r
+\r
+.fancybox-title-outside {\r
+       padding-top: 10px;\r
+       color: #fff;\r
+}\r
+\r
+.fancybox-title-over {\r
+       position: absolute;\r
+       bottom: 0;\r
+       left: 0;\r
+       color: #FFF;\r
+       text-align: left;\r
+}\r
+\r
+#fancybox-title-over {\r
+       padding: 10px;\r
+       background-image: url('fancy_title_over.png');\r
+       display: block;\r
+}\r
+\r
+.fancybox-title-float {\r
+       position: absolute;\r
+       left: 0;\r
+       bottom: -20px;\r
+       height: 32px;\r
+}\r
+\r
+#fancybox-title-float-wrap {\r
+       border: none;\r
+       border-collapse: collapse;\r
+       width: auto;\r
+}\r
+\r
+#fancybox-title-float-wrap td {\r
+       border: none;\r
+       white-space: nowrap;\r
+}\r
+\r
+#fancybox-title-float-left {\r
+       padding: 0 0 0 15px;\r
+       background: url('fancybox.png') -40px -90px no-repeat;\r
+}\r
+\r
+#fancybox-title-float-main {\r
+       color: #FFF;\r
+       line-height: 29px;\r
+       font-weight: bold;\r
+       padding: 0 0 3px 0;\r
+       background: url('fancybox-x.png') 0px -40px;\r
+}\r
+\r
+#fancybox-title-float-right {\r
+       padding: 0 0 0 15px;\r
+       background: url('fancybox.png') -55px -90px no-repeat;\r
+}\r
+\r
+/* IE6 */\r
+\r
+.fancybox-ie6 #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_close.png', sizingMethod='scale'); }\r
+\r
+.fancybox-ie6 #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_left.png', sizingMethod='scale'); }\r
+.fancybox-ie6 #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_right.png', sizingMethod='scale'); }\r
+\r
+.fancybox-ie6 #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }\r
+.fancybox-ie6 #fancybox-title-float-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_left.png', sizingMethod='scale'); }\r
+.fancybox-ie6 #fancybox-title-float-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_main.png', sizingMethod='scale'); }\r
+.fancybox-ie6 #fancybox-title-float-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_right.png', sizingMethod='scale'); }\r
+\r
+.fancybox-ie6 #fancybox-bg-w, .fancybox-ie6 #fancybox-bg-e, .fancybox-ie6 #fancybox-left, .fancybox-ie6 #fancybox-right, #fancybox-hide-sel-frame {\r
+       height: expression(this.parentNode.clientHeight + "px");\r
+}\r
+\r
+#fancybox-loading.fancybox-ie6 {\r
+       position: absolute; margin-top: 0;\r
+       top: expression( (-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px');\r
+}\r
+\r
+#fancybox-loading.fancybox-ie6 div     { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_loading.png', sizingMethod='scale'); }\r
+\r
+/* IE6, IE7, IE8 */\r
+\r
+.fancybox-ie .fancybox-bg { background: transparent !important; }\r
+\r
+.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_n.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_e.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_se.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_s.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_w.png', sizingMethod='scale'); }\r
+.fancybox-ie #fancybox-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }
\ No newline at end of file
diff --git a/docs/fancybox/jquery.fancybox-1.3.4.js b/docs/fancybox/jquery.fancybox-1.3.4.js
new file mode 100644 (file)
index 0000000..be77275
--- /dev/null
@@ -0,0 +1,1156 @@
+/*\r
+ * FancyBox - jQuery Plugin\r
+ * Simple and fancy lightbox alternative\r
+ *\r
+ * Examples and documentation at: http://fancybox.net\r
+ *\r
+ * Copyright (c) 2008 - 2010 Janis Skarnelis\r
+ * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.\r
+ *\r
+ * Version: 1.3.4 (11/11/2010)\r
+ * Requires: jQuery v1.3+\r
+ *\r
+ * Dual licensed under the MIT and GPL licenses:\r
+ *   http://www.opensource.org/licenses/mit-license.php\r
+ *   http://www.gnu.org/licenses/gpl.html\r
+ */\r
+\r
+;(function($) {\r
+       var tmp, loading, overlay, wrap, outer, content, close, title, nav_left, nav_right,\r
+\r
+               selectedIndex = 0, selectedOpts = {}, selectedArray = [], currentIndex = 0, currentOpts = {}, currentArray = [],\r
+\r
+               ajaxLoader = null, imgPreloader = new Image(), imgRegExp = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i, swfRegExp = /[^\.]\.(swf)\s*$/i,\r
+\r
+               loadingTimer, loadingFrame = 1,\r
+\r
+               titleHeight = 0, titleStr = '', start_pos, final_pos, busy = false, fx = $.extend($('<div/>')[0], { prop: 0 }),\r
+\r
+               isIE6 = $.browser.msie && $.browser.version < 7 && !window.XMLHttpRequest,\r
+\r
+               /*\r
+                * Private methods \r
+                */\r
+\r
+               _abort = function() {\r
+                       loading.hide();\r
+\r
+                       imgPreloader.onerror = imgPreloader.onload = null;\r
+\r
+                       if (ajaxLoader) {\r
+                               ajaxLoader.abort();\r
+                       }\r
+\r
+                       tmp.empty();\r
+               },\r
+\r
+               _error = function() {\r
+                       if (false === selectedOpts.onError(selectedArray, selectedIndex, selectedOpts)) {\r
+                               loading.hide();\r
+                               busy = false;\r
+                               return;\r
+                       }\r
+\r
+                       selectedOpts.titleShow = false;\r
+\r
+                       selectedOpts.width = 'auto';\r
+                       selectedOpts.height = 'auto';\r
+\r
+                       tmp.html( '<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>' );\r
+\r
+                       _process_inline();\r
+               },\r
+\r
+               _start = function() {\r
+                       var obj = selectedArray[ selectedIndex ],\r
+                               href, \r
+                               type, \r
+                               title,\r
+                               str,\r
+                               emb,\r
+                               ret;\r
+\r
+                       _abort();\r
+\r
+                       selectedOpts = $.extend({}, $.fn.fancybox.defaults, (typeof $(obj).data('fancybox') == 'undefined' ? selectedOpts : $(obj).data('fancybox')));\r
+\r
+                       ret = selectedOpts.onStart(selectedArray, selectedIndex, selectedOpts);\r
+\r
+                       if (ret === false) {\r
+                               busy = false;\r
+                               return;\r
+                       } else if (typeof ret == 'object') {\r
+                               selectedOpts = $.extend(selectedOpts, ret);\r
+                       }\r
+\r
+                       title = selectedOpts.title || (obj.nodeName ? $(obj).attr('title') : obj.title) || '';\r
+\r
+                       if (obj.nodeName && !selectedOpts.orig) {\r
+                               selectedOpts.orig = $(obj).children("img:first").length ? $(obj).children("img:first") : $(obj);\r
+                       }\r
+\r
+                       if (title === '' && selectedOpts.orig && selectedOpts.titleFromAlt) {\r
+                               title = selectedOpts.orig.attr('alt');\r
+                       }\r
+\r
+                       href = selectedOpts.href || (obj.nodeName ? $(obj).attr('href') : obj.href) || null;\r
+\r
+                       if ((/^(?:javascript)/i).test(href) || href == '#') {\r
+                               href = null;\r
+                       }\r
+\r
+                       if (selectedOpts.type) {\r
+                               type = selectedOpts.type;\r
+\r
+                               if (!href) {\r
+                                       href = selectedOpts.content;\r
+                               }\r
+\r
+                       } else if (selectedOpts.content) {\r
+                               type = 'html';\r
+\r
+                       } else if (href) {\r
+                               if (href.match(imgRegExp)) {\r
+                                       type = 'image';\r
+\r
+                               } else if (href.match(swfRegExp)) {\r
+                                       type = 'swf';\r
+\r
+                               } else if ($(obj).hasClass("iframe")) {\r
+                                       type = 'iframe';\r
+\r
+                               } else if (href.indexOf("#") === 0) {\r
+                                       type = 'inline';\r
+\r
+                               } else {\r
+                                       type = 'ajax';\r
+                               }\r
+                       }\r
+\r
+                       if (!type) {\r
+                               _error();\r
+                               return;\r
+                       }\r
+\r
+                       if (type == 'inline') {\r
+                               obj     = href.substr(href.indexOf("#"));\r
+                               type = $(obj).length > 0 ? 'inline' : 'ajax';\r
+                       }\r
+\r
+                       selectedOpts.type = type;\r
+                       selectedOpts.href = href;\r
+                       selectedOpts.title = title;\r
+\r
+                       if (selectedOpts.autoDimensions) {\r
+                               if (selectedOpts.type == 'html' || selectedOpts.type == 'inline' || selectedOpts.type == 'ajax') {\r
+                                       selectedOpts.width = 'auto';\r
+                                       selectedOpts.height = 'auto';\r
+                               } else {\r
+                                       selectedOpts.autoDimensions = false;    \r
+                               }\r
+                       }\r
+\r
+                       if (selectedOpts.modal) {\r
+                               selectedOpts.overlayShow = true;\r
+                               selectedOpts.hideOnOverlayClick = false;\r
+                               selectedOpts.hideOnContentClick = false;\r
+                               selectedOpts.enableEscapeButton = false;\r
+                               selectedOpts.showCloseButton = false;\r
+                       }\r
+\r
+                       selectedOpts.padding = parseInt(selectedOpts.padding, 10);\r
+                       selectedOpts.margin = parseInt(selectedOpts.margin, 10);\r
+\r
+                       tmp.css('padding', (selectedOpts.padding + selectedOpts.margin));\r
+\r
+                       $('.fancybox-inline-tmp').unbind('fancybox-cancel').bind('fancybox-change', function() {\r
+                               $(this).replaceWith(content.children());                                \r
+                       });\r
+\r
+                       switch (type) {\r
+                               case 'html' :\r
+                                       tmp.html( selectedOpts.content );\r
+                                       _process_inline();\r
+                               break;\r
+\r
+                               case 'inline' :\r
+                                       if ( $(obj).parent().is('#fancybox-content') === true) {\r
+                                               busy = false;\r
+                                               return;\r
+                                       }\r
+\r
+                                       $('<div class="fancybox-inline-tmp" />')\r
+                                               .hide()\r
+                                               .insertBefore( $(obj) )\r
+                                               .bind('fancybox-cleanup', function() {\r
+                                                       $(this).replaceWith(content.children());\r
+                                               }).bind('fancybox-cancel', function() {\r
+                                                       $(this).replaceWith(tmp.children());\r
+                                               });\r
+\r
+                                       $(obj).appendTo(tmp);\r
+\r
+                                       _process_inline();\r
+                               break;\r
+\r
+                               case 'image':\r
+                                       busy = false;\r
+\r
+                                       $.fancybox.showActivity();\r
+\r
+                                       imgPreloader = new Image();\r
+\r
+                                       imgPreloader.onerror = function() {\r
+                                               _error();\r
+                                       };\r
+\r
+                                       imgPreloader.onload = function() {\r
+                                               busy = true;\r
+\r
+                                               imgPreloader.onerror = imgPreloader.onload = null;\r
+\r
+                                               _process_image();\r
+                                       };\r
+\r
+                                       imgPreloader.src = href;\r
+                               break;\r
+\r
+                               case 'swf':\r
+                                       selectedOpts.scrolling = 'no';\r
+\r
+                                       str = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"><param name="movie" value="' + href + '"></param>';\r
+                                       emb = '';\r
+\r
+                                       $.each(selectedOpts.swf, function(name, val) {\r
+                                               str += '<param name="' + name + '" value="' + val + '"></param>';\r
+                                               emb += ' ' + name + '="' + val + '"';\r
+                                       });\r
+\r
+                                       str += '<embed src="' + href + '" type="application/x-shockwave-flash" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"' + emb + '></embed></object>';\r
+\r
+                                       tmp.html(str);\r
+\r
+                                       _process_inline();\r
+                               break;\r
+\r
+                               case 'ajax':\r
+                                       busy = false;\r
+\r
+                                       $.fancybox.showActivity();\r
+\r
+                                       selectedOpts.ajax.win = selectedOpts.ajax.success;\r
+\r
+                                       ajaxLoader = $.ajax($.extend({}, selectedOpts.ajax, {\r
+                                               url     : href,\r
+                                               data : selectedOpts.ajax.data || {},\r
+                                               error : function(XMLHttpRequest, textStatus, errorThrown) {\r
+                                                       if ( XMLHttpRequest.status > 0 ) {\r
+                                                               _error();\r
+                                                       }\r
+                                               },\r
+                                               success : function(data, textStatus, XMLHttpRequest) {\r
+                                                       var o = typeof XMLHttpRequest == 'object' ? XMLHttpRequest : ajaxLoader;\r
+                                                       if (o.status == 200) {\r
+                                                               if ( typeof selectedOpts.ajax.win == 'function' ) {\r
+                                                                       ret = selectedOpts.ajax.win(href, data, textStatus, XMLHttpRequest);\r
+\r
+                                                                       if (ret === false) {\r
+                                                                               loading.hide();\r
+                                                                               return;\r
+                                                                       } else if (typeof ret == 'string' || typeof ret == 'object') {\r
+                                                                               data = ret;\r
+                                                                       }\r
+                                                               }\r
+\r
+                                                               tmp.html( data );\r
+                                                               _process_inline();\r
+                                                       }\r
+                                               }\r
+                                       }));\r
+\r
+                               break;\r
+\r
+                               case 'iframe':\r
+                                       _show();\r
+                               break;\r
+                       }\r
+               },\r
+\r
+               _process_inline = function() {\r
+                       var\r
+                               w = selectedOpts.width,\r
+                               h = selectedOpts.height;\r
+\r
+                       if (w.toString().indexOf('%') > -1) {\r
+                               w = parseInt( ($(window).width() - (selectedOpts.margin * 2)) * parseFloat(w) / 100, 10) + 'px';\r
+\r
+                       } else {\r
+                               w = w == 'auto' ? 'auto' : w + 'px';    \r
+                       }\r
+\r
+                       if (h.toString().indexOf('%') > -1) {\r
+                               h = parseInt( ($(window).height() - (selectedOpts.margin * 2)) * parseFloat(h) / 100, 10) + 'px';\r
+\r
+                       } else {\r
+                               h = h == 'auto' ? 'auto' : h + 'px';    \r
+                       }\r
+\r
+                       tmp.wrapInner('<div style="width:' + w + ';height:' + h + ';overflow: ' + (selectedOpts.scrolling == 'auto' ? 'auto' : (selectedOpts.scrolling == 'yes' ? 'scroll' : 'hidden')) + ';position:relative;"></div>');\r
+\r
+                       selectedOpts.width = tmp.width();\r
+                       selectedOpts.height = tmp.height();\r
+\r
+                       _show();\r
+               },\r
+\r
+               _process_image = function() {\r
+                       selectedOpts.width = imgPreloader.width;\r
+                       selectedOpts.height = imgPreloader.height;\r
+\r
+                       $("<img />").attr({\r
+                               'id' : 'fancybox-img',\r
+                               'src' : imgPreloader.src,\r
+                               'alt' : selectedOpts.title\r
+                       }).appendTo( tmp );\r
+\r
+                       _show();\r
+               },\r
+\r
+               _show = function() {\r
+                       var pos, equal;\r
+\r
+                       loading.hide();\r
+\r
+                       if (wrap.is(":visible") && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) {\r
+                               $.event.trigger('fancybox-cancel');\r
+\r
+                               busy = false;\r
+                               return;\r
+                       }\r
+\r
+                       busy = true;\r
+\r
+                       $(content.add( overlay )).unbind();\r
+\r
+                       $(window).unbind("resize.fb scroll.fb");\r
+                       $(document).unbind('keydown.fb');\r
+\r
+                       if (wrap.is(":visible") && currentOpts.titlePosition !== 'outside') {\r
+                               wrap.css('height', wrap.height());\r
+                       }\r
+\r
+                       currentArray = selectedArray;\r
+                       currentIndex = selectedIndex;\r
+                       currentOpts = selectedOpts;\r
+\r
+                       if (currentOpts.overlayShow) {\r
+                               overlay.css({\r
+                                       'background-color' : currentOpts.overlayColor,\r
+                                       'opacity' : currentOpts.overlayOpacity,\r
+                                       'cursor' : currentOpts.hideOnOverlayClick ? 'pointer' : 'auto',\r
+                                       'height' : $(document).height()\r
+                               });\r
+\r
+                               if (!overlay.is(':visible')) {\r
+                                       if (isIE6) {\r
+                                               $('select:not(#fancybox-tmp select)').filter(function() {\r
+                                                       return this.style.visibility !== 'hidden';\r
+                                               }).css({'visibility' : 'hidden'}).one('fancybox-cleanup', function() {\r
+                                                       this.style.visibility = 'inherit';\r
+                                               });\r
+                                       }\r
+\r
+                                       overlay.show();\r
+                               }\r
+                       } else {\r
+                               overlay.hide();\r
+                       }\r
+\r
+                       final_pos = _get_zoom_to();\r
+\r
+                       _process_title();\r
+\r
+                       if (wrap.is(":visible")) {\r
+                               $( close.add( nav_left ).add( nav_right ) ).hide();\r
+\r
+                               pos = wrap.position(),\r
+\r
+                               start_pos = {\r
+                                       top      : pos.top,\r
+                                       left : pos.left,\r
+                                       width : wrap.width(),\r
+                                       height : wrap.height()\r
+                               };\r
+\r
+                               equal = (start_pos.width == final_pos.width && start_pos.height == final_pos.height);\r
+\r
+                               content.fadeTo(currentOpts.changeFade, 0.3, function() {\r
+                                       var finish_resizing = function() {\r
+                                               content.html( tmp.contents() ).fadeTo(currentOpts.changeFade, 1, _finish);\r
+                                       };\r
+\r
+                                       $.event.trigger('fancybox-change');\r
+\r
+                                       content\r
+                                               .empty()\r
+                                               .removeAttr('filter')\r
+                                               .css({\r
+                                                       'border-width' : currentOpts.padding,\r
+                                                       'width' : final_pos.width - currentOpts.padding * 2,\r
+                                                       'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2\r
+                                               });\r
+\r
+                                       if (equal) {\r
+                                               finish_resizing();\r
+\r
+                                       } else {\r
+                                               fx.prop = 0;\r
+\r
+                                               $(fx).animate({prop: 1}, {\r
+                                                        duration : currentOpts.changeSpeed,\r
+                                                        easing : currentOpts.easingChange,\r
+                                                        step : _draw,\r
+                                                        complete : finish_resizing\r
+                                               });\r
+                                       }\r
+                               });\r
+\r
+                               return;\r
+                       }\r
+\r
+                       wrap.removeAttr("style");\r
+\r
+                       content.css('border-width', currentOpts.padding);\r
+\r
+                       if (currentOpts.transitionIn == 'elastic') {\r
+                               start_pos = _get_zoom_from();\r
+\r
+                               content.html( tmp.contents() );\r
+\r
+                               wrap.show();\r
+\r
+                               if (currentOpts.opacity) {\r
+                                       final_pos.opacity = 0;\r
+                               }\r
+\r
+                               fx.prop = 0;\r
+\r
+                               $(fx).animate({prop: 1}, {\r
+                                        duration : currentOpts.speedIn,\r
+                                        easing : currentOpts.easingIn,\r
+                                        step : _draw,\r
+                                        complete : _finish\r
+                               });\r
+\r
+                               return;\r
+                       }\r
+\r
+                       if (currentOpts.titlePosition == 'inside' && titleHeight > 0) { \r
+                               title.show();   \r
+                       }\r
+\r
+                       content\r
+                               .css({\r
+                                       'width' : final_pos.width - currentOpts.padding * 2,\r
+                                       'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2\r
+                               })\r
+                               .html( tmp.contents() );\r
+\r
+                       wrap\r
+                               .css(final_pos)\r
+                               .fadeIn( currentOpts.transitionIn == 'none' ? 0 : currentOpts.speedIn, _finish );\r
+               },\r
+\r
+               _format_title = function(title) {\r
+                       if (title && title.length) {\r
+                               if (currentOpts.titlePosition == 'float') {\r
+                                       return '<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">' + title + '</td><td id="fancybox-title-float-right"></td></tr></table>';\r
+                               }\r
+\r
+                               return '<div id="fancybox-title-' + currentOpts.titlePosition + '">' + title + '</div>';\r
+                       }\r
+\r
+                       return false;\r
+               },\r
+\r
+               _process_title = function() {\r
+                       titleStr = currentOpts.title || '';\r
+                       titleHeight = 0;\r
+\r
+                       title\r
+                               .empty()\r
+                               .removeAttr('style')\r
+                               .removeClass();\r
+\r
+                       if (currentOpts.titleShow === false) {\r
+                               title.hide();\r
+                               return;\r
+                       }\r
+\r
+                       titleStr = $.isFunction(currentOpts.titleFormat) ? currentOpts.titleFormat(titleStr, currentArray, currentIndex, currentOpts) : _format_title(titleStr);\r
+\r
+                       if (!titleStr || titleStr === '') {\r
+                               title.hide();\r
+                               return;\r
+                       }\r
+\r
+                       title\r
+                               .addClass('fancybox-title-' + currentOpts.titlePosition)\r
+                               .html( titleStr )\r
+                               .appendTo( 'body' )\r
+                               .show();\r
+\r
+                       switch (currentOpts.titlePosition) {\r
+                               case 'inside':\r
+                                       title\r
+                                               .css({\r
+                                                       'width' : final_pos.width - (currentOpts.padding * 2),\r
+                                                       'marginLeft' : currentOpts.padding,\r
+                                                       'marginRight' : currentOpts.padding\r
+                                               });\r
+\r
+                                       titleHeight = title.outerHeight(true);\r
+\r
+                                       title.appendTo( outer );\r
+\r
+                                       final_pos.height += titleHeight;\r
+                               break;\r
+\r
+                               case 'over':\r
+                                       title\r
+                                               .css({\r
+                                                       'marginLeft' : currentOpts.padding,\r
+                                                       'width' : final_pos.width - (currentOpts.padding * 2),\r
+                                                       'bottom' : currentOpts.padding\r
+                                               })\r
+                                               .appendTo( outer );\r
+                               break;\r
+\r
+                               case 'float':\r
+                                       title\r
+                                               .css('left', parseInt((title.width() - final_pos.width - 40)/ 2, 10) * -1)\r
+                                               .appendTo( wrap );\r
+                               break;\r
+\r
+                               default:\r
+                                       title\r
+                                               .css({\r
+                                                       'width' : final_pos.width - (currentOpts.padding * 2),\r
+                                                       'paddingLeft' : currentOpts.padding,\r
+                                                       'paddingRight' : currentOpts.padding\r
+                                               })\r
+                                               .appendTo( wrap );\r
+                               break;\r
+                       }\r
+\r
+                       title.hide();\r
+               },\r
+\r
+               _set_navigation = function() {\r
+                       if (currentOpts.enableEscapeButton || currentOpts.enableKeyboardNav) {\r
+                               $(document).bind('keydown.fb', function(e) {\r
+                                       if (e.keyCode == 27 && currentOpts.enableEscapeButton) {\r
+                                               e.preventDefault();\r
+                                               $.fancybox.close();\r
+\r
+                                       } else if ((e.keyCode == 37 || e.keyCode == 39) && currentOpts.enableKeyboardNav && e.target.tagName !== 'INPUT' && e.target.tagName !== 'TEXTAREA' && e.target.tagName !== 'SELECT') {\r
+                                               e.preventDefault();\r
+                                               $.fancybox[ e.keyCode == 37 ? 'prev' : 'next']();\r
+                                       }\r
+                               });\r
+                       }\r
+\r
+                       if (!currentOpts.showNavArrows) { \r
+                               nav_left.hide();\r
+                               nav_right.hide();\r
+                               return;\r
+                       }\r
+\r
+                       if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex !== 0) {\r
+                               nav_left.show();\r
+                       }\r
+\r
+                       if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex != (currentArray.length -1)) {\r
+                               nav_right.show();\r
+                       }\r
+               },\r
+\r
+               _finish = function () {\r
+                       if (!$.support.opacity) {\r
+                               content.get(0).style.removeAttribute('filter');\r
+                               wrap.get(0).style.removeAttribute('filter');\r
+                       }\r
+\r
+                       if (selectedOpts.autoDimensions) {\r
+                               content.css('height', 'auto');\r
+                       }\r
+\r
+                       wrap.css('height', 'auto');\r
+\r
+                       if (titleStr && titleStr.length) {\r
+                               title.show();\r
+                       }\r
+\r
+                       if (currentOpts.showCloseButton) {\r
+                               close.show();\r
+                       }\r
+\r
+                       _set_navigation();\r
+       \r
+                       if (currentOpts.hideOnContentClick)     {\r
+                               content.bind('click', $.fancybox.close);\r
+                       }\r
+\r
+                       if (currentOpts.hideOnOverlayClick)     {\r
+                               overlay.bind('click', $.fancybox.close);\r
+                       }\r
+\r
+                       $(window).bind("resize.fb", $.fancybox.resize);\r
+\r
+                       if (currentOpts.centerOnScroll) {\r
+                               $(window).bind("scroll.fb", $.fancybox.center);\r
+                       }\r
+\r
+                       if (currentOpts.type == 'iframe') {\r
+                               $('<iframe id="fancybox-frame" name="fancybox-frame' + new Date().getTime() + '" frameborder="0" hspace="0" ' + ($.browser.msie ? 'allowtransparency="true""' : '') + ' scrolling="' + selectedOpts.scrolling + '" src="' + currentOpts.href + '"></iframe>').appendTo(content);\r
+                       }\r
+\r
+                       wrap.show();\r
+\r
+                       busy = false;\r
+\r
+                       $.fancybox.center();\r
+\r
+                       currentOpts.onComplete(currentArray, currentIndex, currentOpts);\r
+\r
+                       _preload_images();\r
+               },\r
+\r
+               _preload_images = function() {\r
+                       var href, \r
+                               objNext;\r
+\r
+                       if ((currentArray.length -1) > currentIndex) {\r
+                               href = currentArray[ currentIndex + 1 ].href;\r
+\r
+                               if (typeof href !== 'undefined' && href.match(imgRegExp)) {\r
+                                       objNext = new Image();\r
+                                       objNext.src = href;\r
+                               }\r
+                       }\r
+\r
+                       if (currentIndex > 0) {\r
+                               href = currentArray[ currentIndex - 1 ].href;\r
+\r
+                               if (typeof href !== 'undefined' && href.match(imgRegExp)) {\r
+                                       objNext = new Image();\r
+                                       objNext.src = href;\r
+                               }\r
+                       }\r
+               },\r
+\r
+               _draw = function(pos) {\r
+                       var dim = {\r
+                               width : parseInt(start_pos.width + (final_pos.width - start_pos.width) * pos, 10),\r
+                               height : parseInt(start_pos.height + (final_pos.height - start_pos.height) * pos, 10),\r
+\r
+                               top : parseInt(start_pos.top + (final_pos.top - start_pos.top) * pos, 10),\r
+                               left : parseInt(start_pos.left + (final_pos.left - start_pos.left) * pos, 10)\r
+                       };\r
+\r
+                       if (typeof final_pos.opacity !== 'undefined') {\r
+                               dim.opacity = pos < 0.5 ? 0.5 : pos;\r
+                       }\r
+\r
+                       wrap.css(dim);\r
+\r
+                       content.css({\r
+                               'width' : dim.width - currentOpts.padding * 2,\r
+                               'height' : dim.height - (titleHeight * pos) - currentOpts.padding * 2\r
+                       });\r
+               },\r
+\r
+               _get_viewport = function() {\r
+                       return [\r
+                               $(window).width() - (currentOpts.margin * 2),\r
+                               $(window).height() - (currentOpts.margin * 2),\r
+                               $(document).scrollLeft() + currentOpts.margin,\r
+                               $(document).scrollTop() + currentOpts.margin\r
+                       ];\r
+               },\r
+\r
+               _get_zoom_to = function () {\r
+                       var view = _get_viewport(),\r
+                               to = {},\r
+                               resize = currentOpts.autoScale,\r
+                               double_padding = currentOpts.padding * 2,\r
+                               ratio;\r
+\r
+                       if (currentOpts.width.toString().indexOf('%') > -1) {\r
+                               to.width = parseInt((view[0] * parseFloat(currentOpts.width)) / 100, 10);\r
+                       } else {\r
+                               to.width = currentOpts.width + double_padding;\r
+                       }\r
+\r
+                       if (currentOpts.height.toString().indexOf('%') > -1) {\r
+                               to.height = parseInt((view[1] * parseFloat(currentOpts.height)) / 100, 10);\r
+                       } else {\r
+                               to.height = currentOpts.height + double_padding;\r
+                       }\r
+\r
+                       if (resize && (to.width > view[0] || to.height > view[1])) {\r
+                               if (selectedOpts.type == 'image' || selectedOpts.type == 'swf') {\r
+                                       ratio = (currentOpts.width ) / (currentOpts.height );\r
+\r
+                                       if ((to.width ) > view[0]) {\r
+                                               to.width = view[0];\r
+                                               to.height = parseInt(((to.width - double_padding) / ratio) + double_padding, 10);\r
+                                       }\r
+\r
+                                       if ((to.height) > view[1]) {\r
+                                               to.height = view[1];\r
+                                               to.width = parseInt(((to.height - double_padding) * ratio) + double_padding, 10);\r
+                                       }\r
+\r
+                               } else {\r
+                                       to.width = Math.min(to.width, view[0]);\r
+                                       to.height = Math.min(to.height, view[1]);\r
+                               }\r
+                       }\r
+\r
+                       to.top = parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - to.height - 40) * 0.5)), 10);\r
+                       to.left = parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - to.width - 40) * 0.5)), 10);\r
+\r
+                       return to;\r
+               },\r
+\r
+               _get_obj_pos = function(obj) {\r
+                       var pos = obj.offset();\r
+\r
+                       pos.top += parseInt( obj.css('paddingTop'), 10 ) || 0;\r
+                       pos.left += parseInt( obj.css('paddingLeft'), 10 ) || 0;\r
+\r
+                       pos.top += parseInt( obj.css('border-top-width'), 10 ) || 0;\r
+                       pos.left += parseInt( obj.css('border-left-width'), 10 ) || 0;\r
+\r
+                       pos.width = obj.width();\r
+                       pos.height = obj.height();\r
+\r
+                       return pos;\r
+               },\r
+\r
+               _get_zoom_from = function() {\r
+                       var orig = selectedOpts.orig ? $(selectedOpts.orig) : false,\r
+                               from = {},\r
+                               pos,\r
+                               view;\r
+\r
+                       if (orig && orig.length) {\r
+                               pos = _get_obj_pos(orig);\r
+\r
+                               from = {\r
+                                       width : pos.width + (currentOpts.padding * 2),\r
+                                       height : pos.height + (currentOpts.padding * 2),\r
+                                       top     : pos.top - currentOpts.padding - 20,\r
+                                       left : pos.left - currentOpts.padding - 20\r
+                               };\r
+\r
+                       } else {\r
+                               view = _get_viewport();\r
+\r
+                               from = {\r
+                                       width : currentOpts.padding * 2,\r
+                                       height : currentOpts.padding * 2,\r
+                                       top     : parseInt(view[3] + view[1] * 0.5, 10),\r
+                                       left : parseInt(view[2] + view[0] * 0.5, 10)\r
+                               };\r
+                       }\r
+\r
+                       return from;\r
+               },\r
+\r
+               _animate_loading = function() {\r
+                       if (!loading.is(':visible')){\r
+                               clearInterval(loadingTimer);\r
+                               return;\r
+                       }\r
+\r
+                       $('div', loading).css('top', (loadingFrame * -40) + 'px');\r
+\r
+                       loadingFrame = (loadingFrame + 1) % 12;\r
+               };\r
+\r
+       /*\r
+        * Public methods \r
+        */\r
+\r
+       $.fn.fancybox = function(options) {\r
+               if (!$(this).length) {\r
+                       return this;\r
+               }\r
+\r
+               $(this)\r
+                       .data('fancybox', $.extend({}, options, ($.metadata ? $(this).metadata() : {})))\r
+                       .unbind('click.fb')\r
+                       .bind('click.fb', function(e) {\r
+                               e.preventDefault();\r
+\r
+                               if (busy) {\r
+                                       return;\r
+                               }\r
+\r
+                               busy = true;\r
+\r
+                               $(this).blur();\r
+\r
+                               selectedArray = [];\r
+                               selectedIndex = 0;\r
+\r
+                               var rel = $(this).attr('rel') || '';\r
+\r
+                               if (!rel || rel == '' || rel === 'nofollow') {\r
+                                       selectedArray.push(this);\r
+\r
+                               } else {\r
+                                       selectedArray = $("a[rel=" + rel + "], area[rel=" + rel + "]");\r
+                                       selectedIndex = selectedArray.index( this );\r
+                               }\r
+\r
+                               _start();\r
+\r
+                               return;\r
+                       });\r
+\r
+               return this;\r
+       };\r
+\r
+       $.fancybox = function(obj) {\r
+               var opts;\r
+\r
+               if (busy) {\r
+                       return;\r
+               }\r
+\r
+               busy = true;\r
+               opts = typeof arguments[1] !== 'undefined' ? arguments[1] : {};\r
+\r
+               selectedArray = [];\r
+               selectedIndex = parseInt(opts.index, 10) || 0;\r
+\r
+               if ($.isArray(obj)) {\r
+                       for (var i = 0, j = obj.length; i < j; i++) {\r
+                               if (typeof obj[i] == 'object') {\r
+                                       $(obj[i]).data('fancybox', $.extend({}, opts, obj[i]));\r
+                               } else {\r
+                                       obj[i] = $({}).data('fancybox', $.extend({content : obj[i]}, opts));\r
+                               }\r
+                       }\r
+\r
+                       selectedArray = jQuery.merge(selectedArray, obj);\r
+\r
+               } else {\r
+                       if (typeof obj == 'object') {\r
+                               $(obj).data('fancybox', $.extend({}, opts, obj));\r
+                       } else {\r
+                               obj = $({}).data('fancybox', $.extend({content : obj}, opts));\r
+                       }\r
+\r
+                       selectedArray.push(obj);\r
+               }\r
+\r
+               if (selectedIndex > selectedArray.length || selectedIndex < 0) {\r
+                       selectedIndex = 0;\r
+               }\r
+\r
+               _start();\r
+       };\r
+\r
+       $.fancybox.showActivity = function() {\r
+               clearInterval(loadingTimer);\r
+\r
+               loading.show();\r
+               loadingTimer = setInterval(_animate_loading, 66);\r
+       };\r
+\r
+       $.fancybox.hideActivity = function() {\r
+               loading.hide();\r
+       };\r
+\r
+       $.fancybox.next = function() {\r
+               return $.fancybox.pos( currentIndex + 1);\r
+       };\r
+\r
+       $.fancybox.prev = function() {\r
+               return $.fancybox.pos( currentIndex - 1);\r
+       };\r
+\r
+       $.fancybox.pos = function(pos) {\r
+               if (busy) {\r
+                       return;\r
+               }\r
+\r
+               pos = parseInt(pos);\r
+\r
+               selectedArray = currentArray;\r
+\r
+               if (pos > -1 && pos < currentArray.length) {\r
+                       selectedIndex = pos;\r
+                       _start();\r
+\r
+               } else if (currentOpts.cyclic && currentArray.length > 1) {\r
+                       selectedIndex = pos >= currentArray.length ? 0 : currentArray.length - 1;\r
+                       _start();\r
+               }\r
+\r
+               return;\r
+       };\r
+\r
+       $.fancybox.cancel = function() {\r
+               if (busy) {\r
+                       return;\r
+               }\r
+\r
+               busy = true;\r
+\r
+               $.event.trigger('fancybox-cancel');\r
+\r
+               _abort();\r
+\r
+               selectedOpts.onCancel(selectedArray, selectedIndex, selectedOpts);\r
+\r
+               busy = false;\r
+       };\r
+\r
+       // Note: within an iframe use - parent.$.fancybox.close();\r
+       $.fancybox.close = function() {\r
+               if (busy || wrap.is(':hidden')) {\r
+                       return;\r
+               }\r
+\r
+               busy = true;\r
+\r
+               if (currentOpts && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) {\r
+                       busy = false;\r
+                       return;\r
+               }\r
+\r
+               _abort();\r
+\r
+               $(close.add( nav_left ).add( nav_right )).hide();\r
+\r
+               $(content.add( overlay )).unbind();\r
+\r
+               $(window).unbind("resize.fb scroll.fb");\r
+               $(document).unbind('keydown.fb');\r
+\r
+               content.find('iframe').attr('src', isIE6 && /^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank');\r
+\r
+               if (currentOpts.titlePosition !== 'inside') {\r
+                       title.empty();\r
+               }\r
+\r
+               wrap.stop();\r
+\r
+               function _cleanup() {\r
+                       overlay.fadeOut('fast');\r
+\r
+                       title.empty().hide();\r
+                       wrap.hide();\r
+\r
+                       $.event.trigger('fancybox-cleanup');\r
+\r
+                       content.empty();\r
+\r
+                       currentOpts.onClosed(currentArray, currentIndex, currentOpts);\r
+\r
+                       currentArray = selectedOpts     = [];\r
+                       currentIndex = selectedIndex = 0;\r
+                       currentOpts = selectedOpts      = {};\r
+\r
+                       busy = false;\r
+               }\r
+\r
+               if (currentOpts.transitionOut == 'elastic') {\r
+                       start_pos = _get_zoom_from();\r
+\r
+                       var pos = wrap.position();\r
+\r
+                       final_pos = {\r
+                               top      : pos.top ,\r
+                               left : pos.left,\r
+                               width : wrap.width(),\r
+                               height : wrap.height()\r
+                       };\r
+\r
+                       if (currentOpts.opacity) {\r
+                               final_pos.opacity = 1;\r
+                       }\r
+\r
+                       title.empty().hide();\r
+\r
+                       fx.prop = 1;\r
+\r
+                       $(fx).animate({ prop: 0 }, {\r
+                                duration : currentOpts.speedOut,\r
+                                easing : currentOpts.easingOut,\r
+                                step : _draw,\r
+                                complete : _cleanup\r
+                       });\r
+\r
+               } else {\r
+                       wrap.fadeOut( currentOpts.transitionOut == 'none' ? 0 : currentOpts.speedOut, _cleanup);\r
+               }\r
+       };\r
+\r
+       $.fancybox.resize = function() {\r
+               if (overlay.is(':visible')) {\r
+                       overlay.css('height', $(document).height());\r
+               }\r
+\r
+               $.fancybox.center(true);\r
+       };\r
+\r
+       $.fancybox.center = function() {\r
+               var view, align;\r
+\r
+               if (busy) {\r
+                       return; \r
+               }\r
+\r
+               align = arguments[0] === true ? 1 : 0;\r
+               view = _get_viewport();\r
+\r
+               if (!align && (wrap.width() > view[0] || wrap.height() > view[1])) {\r
+                       return; \r
+               }\r
+\r
+               wrap\r
+                       .stop()\r
+                       .animate({\r
+                               'top' : parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - content.height() - 40) * 0.5) - currentOpts.padding)),\r
+                               'left' : parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - content.width() - 40) * 0.5) - currentOpts.padding))\r
+                       }, typeof arguments[0] == 'number' ? arguments[0] : 200);\r
+       };\r
+\r
+       $.fancybox.init = function() {\r
+               if ($("#fancybox-wrap").length) {\r
+                       return;\r
+               }\r
+\r
+               $('body').append(\r
+                       tmp     = $('<div id="fancybox-tmp"></div>'),\r
+                       loading = $('<div id="fancybox-loading"><div></div></div>'),\r
+                       overlay = $('<div id="fancybox-overlay"></div>'),\r
+                       wrap = $('<div id="fancybox-wrap"></div>')\r
+               );\r
+\r
+               outer = $('<div id="fancybox-outer"></div>')\r
+                       .append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>')\r
+                       .appendTo( wrap );\r
+\r
+               outer.append(\r
+                       content = $('<div id="fancybox-content"></div>'),\r
+                       close = $('<a id="fancybox-close"></a>'),\r
+                       title = $('<div id="fancybox-title"></div>'),\r
+\r
+                       nav_left = $('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),\r
+                       nav_right = $('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>')\r
+               );\r
+\r
+               close.click($.fancybox.close);\r
+               loading.click($.fancybox.cancel);\r
+\r
+               nav_left.click(function(e) {\r
+                       e.preventDefault();\r
+                       $.fancybox.prev();\r
+               });\r
+\r
+               nav_right.click(function(e) {\r
+                       e.preventDefault();\r
+                       $.fancybox.next();\r
+               });\r
+\r
+               if ($.fn.mousewheel) {\r
+                       wrap.bind('mousewheel.fb', function(e, delta) {\r
+                               if (busy) {\r
+                                       e.preventDefault();\r
+\r
+                               } else if ($(e.target).get(0).clientHeight == 0 || $(e.target).get(0).scrollHeight === $(e.target).get(0).clientHeight) {\r
+                                       e.preventDefault();\r
+                                       $.fancybox[ delta > 0 ? 'prev' : 'next']();\r
+                               }\r
+                       });\r
+               }\r
+\r
+               if (!$.support.opacity) {\r
+                       wrap.addClass('fancybox-ie');\r
+               }\r
+\r
+               if (isIE6) {\r
+                       loading.addClass('fancybox-ie6');\r
+                       wrap.addClass('fancybox-ie6');\r
+\r
+                       $('<iframe id="fancybox-hide-sel-frame" src="' + (/^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank' ) + '" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(outer);\r
+               }\r
+       };\r
+\r
+       $.fn.fancybox.defaults = {\r
+               padding : 10,\r
+               margin : 40,\r
+               opacity : false,\r
+               modal : false,\r
+               cyclic : false,\r
+               scrolling : 'auto',     // 'auto', 'yes' or 'no'\r
+\r
+               width : 560,\r
+               height : 340,\r
+\r
+               autoScale : true,\r
+               autoDimensions : true,\r
+               centerOnScroll : false,\r
+\r
+               ajax : {},\r
+               swf : { wmode: 'transparent' },\r
+\r
+               hideOnOverlayClick : true,\r
+               hideOnContentClick : false,\r
+\r
+               overlayShow : true,\r
+               overlayOpacity : 0.7,\r
+               overlayColor : '#777',\r
+\r
+               titleShow : true,\r
+               titlePosition : 'float', // 'float', 'outside', 'inside' or 'over'\r
+               titleFormat : null,\r
+               titleFromAlt : false,\r
+\r
+               transitionIn : 'fade', // 'elastic', 'fade' or 'none'\r
+               transitionOut : 'fade', // 'elastic', 'fade' or 'none'\r
+\r
+               speedIn : 300,\r
+               speedOut : 300,\r
+\r
+               changeSpeed : 300,\r
+               changeFade : 'fast',\r
+\r
+               easingIn : 'swing',\r
+               easingOut : 'swing',\r
+\r
+               showCloseButton  : true,\r
+               showNavArrows : true,\r
+               enableEscapeButton : true,\r
+               enableKeyboardNav : true,\r
+\r
+               onStart : function(){},\r
+               onCancel : function(){},\r
+               onComplete : function(){},\r
+               onCleanup : function(){},\r
+               onClosed : function(){},\r
+               onError : function(){}\r
+       };\r
+\r
+       $(document).ready(function() {\r
+               $.fancybox.init();\r
+       });\r
+\r
+})(jQuery);
\ No newline at end of file
diff --git a/docs/fancybox/jquery.fancybox-1.3.4.pack.js b/docs/fancybox/jquery.fancybox-1.3.4.pack.js
new file mode 100644 (file)
index 0000000..1373ed0
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * FancyBox - jQuery Plugin
+ * Simple and fancy lightbox alternative
+ *
+ * Examples and documentation at: http://fancybox.net
+ * 
+ * Copyright (c) 2008 - 2010 Janis Skarnelis
+ * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
+ * 
+ * Version: 1.3.4 (11/11/2010)
+ * Requires: jQuery v1.3+
+ *
+ * Dual licensed under the MIT and GPL licenses:
+ *   http://www.opensource.org/licenses/mit-license.php
+ *   http://www.gnu.org/licenses/gpl.html
+ */
+
+;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,y=0,s="",r,i,h=false,B=b.extend(b("<div/>")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width="auto";e.height="auto";m.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');
+F()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w=="object")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(k===""&&e.orig&&e.titleFromAlt)k=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)||
+c=="#")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g="html";else if(c)g=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(g){if(g=="inline"){a=c.substr(c.indexOf("#"));g=b(a).length>0?"inline":"ajax"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=
+false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(j.children())});switch(g){case "html":m.html(e.content);F();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){h=false;break}b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(j.children())}).bind("fancybox-cancel",
+function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case "image":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b("<img />").attr({id:"fancybox-img",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case "swf":e.scrolling="no";C='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+e.width+'" height="'+e.height+'"><param name="movie" value="'+c+
+'"></param>';P="";b.each(e.swf,function(x,H){C+='<param name="'+x+'" value="'+H+'"></param>';P+=" "+x+'="'+H+'"'});C+='<embed src="'+c+'" type="application/x-shockwave-flash" width="'+e.width+'" height="'+e.height+'"'+P+"></embed></object>";m.html(C);F();break;case "ajax":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R=="object"?R:G).status==200){if(typeof e.ajax.win==
+"function"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w=="string"||typeof w=="object")x=w}m.html(x);F()}}}));break;case "iframe":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";m.wrapInner('<div style="width:'+a+";height:"+c+
+";overflow: "+(e.scrolling=="auto"?"auto":e.scrolling=="yes"?"scroll":"hidden")+';position:relative;"></div>');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(":visible")&&false===d.onCleanup(l,p,d)){b.event.trigger("fancybox-cancel");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({"background-color":d.overlayColor,
+opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!u.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});u.show()}}else u.hide();i=X();s=d.title||"";y=0;n.empty().removeAttr("style").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length?
+d.titlePosition=="float"?'<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">'+s+'</td><td id="fancybox-title-float-right"></td></tr></table>':'<div id="fancybox-title-'+d.titlePosition+'">'+s+"</div>":false;s=a;if(!(!s||s==="")){n.addClass("fancybox-title-"+d.titlePosition).html(s).appendTo("body").show();switch(d.titlePosition){case "inside":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding});
+y=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case "over":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case "float":n.css("left",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(":visible")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height==
+i.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr("style");j.css("border-width",d.padding);if(d.transitionIn=="elastic"){r=V();j.html(m.contents());
+f.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode==
+37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&j.css("height","auto");f.css("height","auto");
+s&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind("click",b.fancybox.close);d.hideOnOverlayClick&&u.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('<iframe id="fancybox-frame" name="fancybox-frame'+(new Date).getTime()+'" frameborder="0" hspace="0" '+(b.browser.msie?'allowtransparency="true""':"")+' scrolling="'+e.scrolling+'" src="'+d.href+'"></iframe>').appendTo(j);
+f.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c);
+j.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type==
+"image"||e.type=="swf"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css("paddingTop"),
+10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(":visible")){b("div",t).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)};
+b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")o.push(this);else{o=b("a[rel="+c+"], area[rel="+c+"]");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!=="undefined"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k=
+0,C=a.length;k<C;k++)if(typeof a[k]=="object")b(a[k]).data("fancybox",b.extend({},g,a[k]));else a[k]=b({}).data("fancybox",b.extend({content:a[k]},g));o=jQuery.merge(o,a)}else{if(typeof a=="object")b(a).data("fancybox",b.extend({},g,a));else a=b({}).data("fancybox",b.extend({content:a},g));o.push(a)}if(q>o.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+
+1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a<l.length){q=a;I()}else if(d.cyclic&&l.length>1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut("fast");n.empty().hide();f.hide();b.event.trigger("fancybox-cleanup");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(":hidden"))){h=
+true;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");j.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&n.empty();f.stop();if(d.transitionOut=="elastic"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1;
+b(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(":visible")&&u.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5-
+d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('<div id="fancybox-tmp"></div>'),t=b('<div id="fancybox-loading"><div></div></div>'),u=b('<div id="fancybox-overlay"></div>'),f=b('<div id="fancybox-wrap"></div>'));D=b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f);
+D.append(j=b('<div id="fancybox-content"></div>'),E=b('<a id="fancybox-close"></a>'),n=b('<div id="fancybox-title"></div>'),z=b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),A=b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()});
+b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){t.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('<iframe id="fancybox-hide-sel-frame" src="'+(/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")+'" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(D)}}};
+b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",
+easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery);
\ No newline at end of file
diff --git a/docs/fancybox/jquery.mousewheel-3.0.4.pack.js b/docs/fancybox/jquery.mousewheel-3.0.4.pack.js
new file mode 100644 (file)
index 0000000..cb66588
--- /dev/null
@@ -0,0 +1,14 @@
+/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net)
+* Licensed under the MIT License (LICENSE.txt).
+*
+* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
+* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
+* Thanks to: Seamus Leahy for adding deltaX and deltaY
+*
+* Version: 3.0.4
+*
+* Requires: 1.2.2+
+*/
+
+(function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=
+f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery);
\ No newline at end of file
index d282f54d18c4ef80dec909485481c37ff39202cc..5768fffdd5c19c259a6e837af821b226f86d2ed6 100644 (file)
@@ -1,15 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
 <html>\r
        <head>\r
                <title>Git:Blit</title>\r
-               <link rel="stylesheet" type="text/css" href="gitblit.css"/>\r
-               <link rel="stylesheet" type="text/css" href="markdown.css"/>\r
-               <link rel="shortcut icon" href="gitblt-favicon.png" type="image/png" />\r
+               <link rel="stylesheet" type="text/css" href="./gitblit.css"/>\r
+               <link rel="stylesheet" type="text/css" href="./markdown.css"/>\r
+               <link rel="shortcut icon" type="image/png" href="./gitblt-favicon.png" />\r
                <meta name="ROBOTS" content="INDEX, NOFOLLOW">\r
+               <meta http-equiv="imagetoolbar" content="no" />\r
+               <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
+               \r
+               <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>\r
+               <script>\r
+                       !window.jQuery && document.write('<script src="./fancybox/jquery-1.4.3.min.js"><\/script>');\r
+               </script>\r
+               <script type="text/javascript" src="./fancybox/query.mousewheel-3.0.4.pack.js"></script>\r
+               <script type="text/javascript" src="./fancybox/jquery.fancybox-1.3.4.pack.js"></script>\r
+               <link rel="stylesheet" type="text/css" href="./fancybox/jquery.fancybox-1.3.4.css" media="screen" />\r
+               \r
+               <script type="text/javascript" src="./screenshots.js"></script>\r
+               <style>\r
+                       ul.noBullets '{'\r
+                               list-style: none;\r
+                       '}'\r
+               </style>\r
        </head>\r
        <body>\r
                <div class="page_header">\r
                        <a title="gitblit homepage" href="http://gitblit.com/">\r
-                               <img src="gitblt_25.png" width="79" height="25" alt="gitblit" class="logo"/>\r
+                               <img src="./gitblt_25.png" width="79" height="25" alt="gitblit" class="logo"/>\r
                        </a>\r
                        <span style="color:black;">{0}</span>\r
                </div>\r
diff --git a/docs/screenshots.js b/docs/screenshots.js
new file mode 100644 (file)
index 0000000..c007e6e
--- /dev/null
@@ -0,0 +1,10 @@
+$(document).ready(function() {\r
+       $("a[rel=screenshots_group]").fancybox({\r
+               'transitionIn'          : 'none',\r
+               'transitionOut'         : 'none',\r
+               'titlePosition'         : 'over',\r
+               'titleFormat'           : function(title, currentArray, currentIndex, currentOpts) {\r
+                       return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' &nbsp; ' + title : '') + '</span>';\r
+               }\r
+       });\r
+});
\ No newline at end of file
diff --git a/docs/screenshots/00.png b/docs/screenshots/00.png
new file mode 100644 (file)
index 0000000..616b31c
Binary files /dev/null and b/docs/screenshots/00.png differ
diff --git a/docs/screenshots/01.png b/docs/screenshots/01.png
new file mode 100644 (file)
index 0000000..01d8cef
Binary files /dev/null and b/docs/screenshots/01.png differ
diff --git a/docs/screenshots/02.png b/docs/screenshots/02.png
new file mode 100644 (file)
index 0000000..31fedfa
Binary files /dev/null and b/docs/screenshots/02.png differ
diff --git a/docs/screenshots/03.png b/docs/screenshots/03.png
new file mode 100644 (file)
index 0000000..7a85ccd
Binary files /dev/null and b/docs/screenshots/03.png differ
diff --git a/docs/screenshots/04.png b/docs/screenshots/04.png
new file mode 100644 (file)
index 0000000..ac8da4e
Binary files /dev/null and b/docs/screenshots/04.png differ
diff --git a/docs/screenshots/05.png b/docs/screenshots/05.png
new file mode 100644 (file)
index 0000000..09b62c3
Binary files /dev/null and b/docs/screenshots/05.png differ
diff --git a/docs/screenshots/06.png b/docs/screenshots/06.png
new file mode 100644 (file)
index 0000000..e78301d
Binary files /dev/null and b/docs/screenshots/06.png differ
diff --git a/docs/screenshots/07.png b/docs/screenshots/07.png
new file mode 100644 (file)
index 0000000..2b467bb
Binary files /dev/null and b/docs/screenshots/07.png differ
diff --git a/docs/screenshots/08.png b/docs/screenshots/08.png
new file mode 100644 (file)
index 0000000..deaf154
Binary files /dev/null and b/docs/screenshots/08.png differ
diff --git a/docs/screenshots/image_processing.txt b/docs/screenshots/image_processing.txt
new file mode 100644 (file)
index 0000000..de1d102
--- /dev/null
@@ -0,0 +1,5 @@
+1. Install GIMP\r
+2. Download and install David's Batch Processor (DBP) http://members.ozemail.com.au/~hodsond/dbp.html\r
+3. Make screenshots and put them in "screenshots\raw"\r
+4. Using DBP, crop the images to 1007x661 and output PNGs to "screenshots"\r
+5. Using DBP, resize the cropped images to 0.25 with a blur of 1.0 and put PNGs in "screenshots\thumbs"
\ No newline at end of file
diff --git a/docs/screenshots/raw/00.png b/docs/screenshots/raw/00.png
new file mode 100644 (file)
index 0000000..314f521
Binary files /dev/null and b/docs/screenshots/raw/00.png differ
diff --git a/docs/screenshots/raw/01.png b/docs/screenshots/raw/01.png
new file mode 100644 (file)
index 0000000..e626edf
Binary files /dev/null and b/docs/screenshots/raw/01.png differ
diff --git a/docs/screenshots/raw/02.png b/docs/screenshots/raw/02.png
new file mode 100644 (file)
index 0000000..8578ca6
Binary files /dev/null and b/docs/screenshots/raw/02.png differ
diff --git a/docs/screenshots/raw/03.png b/docs/screenshots/raw/03.png
new file mode 100644 (file)
index 0000000..0fc0351
Binary files /dev/null and b/docs/screenshots/raw/03.png differ
diff --git a/docs/screenshots/raw/04.png b/docs/screenshots/raw/04.png
new file mode 100644 (file)
index 0000000..d2c1665
Binary files /dev/null and b/docs/screenshots/raw/04.png differ
diff --git a/docs/screenshots/raw/05.png b/docs/screenshots/raw/05.png
new file mode 100644 (file)
index 0000000..a2fe409
Binary files /dev/null and b/docs/screenshots/raw/05.png differ
diff --git a/docs/screenshots/raw/06.png b/docs/screenshots/raw/06.png
new file mode 100644 (file)
index 0000000..4dfc269
Binary files /dev/null and b/docs/screenshots/raw/06.png differ
diff --git a/docs/screenshots/raw/07.png b/docs/screenshots/raw/07.png
new file mode 100644 (file)
index 0000000..0b7c412
Binary files /dev/null and b/docs/screenshots/raw/07.png differ
diff --git a/docs/screenshots/raw/08.png b/docs/screenshots/raw/08.png
new file mode 100644 (file)
index 0000000..9c37663
Binary files /dev/null and b/docs/screenshots/raw/08.png differ
diff --git a/docs/screenshots/thumbs/00.png b/docs/screenshots/thumbs/00.png
new file mode 100644 (file)
index 0000000..6aea693
Binary files /dev/null and b/docs/screenshots/thumbs/00.png differ
diff --git a/docs/screenshots/thumbs/01.png b/docs/screenshots/thumbs/01.png
new file mode 100644 (file)
index 0000000..66bd6d0
Binary files /dev/null and b/docs/screenshots/thumbs/01.png differ
diff --git a/docs/screenshots/thumbs/02.png b/docs/screenshots/thumbs/02.png
new file mode 100644 (file)
index 0000000..316be98
Binary files /dev/null and b/docs/screenshots/thumbs/02.png differ
diff --git a/docs/screenshots/thumbs/03.png b/docs/screenshots/thumbs/03.png
new file mode 100644 (file)
index 0000000..e141348
Binary files /dev/null and b/docs/screenshots/thumbs/03.png differ
diff --git a/docs/screenshots/thumbs/04.png b/docs/screenshots/thumbs/04.png
new file mode 100644 (file)
index 0000000..eeee2ec
Binary files /dev/null and b/docs/screenshots/thumbs/04.png differ
diff --git a/docs/screenshots/thumbs/05.png b/docs/screenshots/thumbs/05.png
new file mode 100644 (file)
index 0000000..c60dc58
Binary files /dev/null and b/docs/screenshots/thumbs/05.png differ
diff --git a/docs/screenshots/thumbs/06.png b/docs/screenshots/thumbs/06.png
new file mode 100644 (file)
index 0000000..3e27890
Binary files /dev/null and b/docs/screenshots/thumbs/06.png differ
diff --git a/docs/screenshots/thumbs/07.png b/docs/screenshots/thumbs/07.png
new file mode 100644 (file)
index 0000000..4212d30
Binary files /dev/null and b/docs/screenshots/thumbs/07.png differ
diff --git a/docs/screenshots/thumbs/08.png b/docs/screenshots/thumbs/08.png
new file mode 100644 (file)
index 0000000..7432d3f
Binary files /dev/null and b/docs/screenshots/thumbs/08.png differ
index 36afae5845face212cc8f48fe2bc02c646aaf498..3fa1fcf1ce5a9b84bec2ae8c5d317137d5141d0d 100644 (file)
@@ -29,6 +29,10 @@ pre, code, pre.prettyprint, pre.plainprint {
        border:0px;\r
 }\r
 \r
+pre.prettyprint ol {\r
+       padding-left:25px;\r
+}\r
+\r
 /* age0: age < 60*60*2 */\r
 .age0 {\r
        color: #008000;\r
@@ -455,6 +459,16 @@ th {
        text-align: left;\r
 }\r
 \r
+table.screenshots td {\r
+       text-align: center;\r
+       padding-bottom: 10px;\r
+}\r
+\r
+table.screenshots img {\r
+       border: 1px solid #ccc;\r
+       margin: 5px;\r
+}\r
+\r
 table.plain {\r
        padding: 8px;\r
 }\r