Merge lp:~hrvojem/percona-playback/bp-doc into lp:percona-playback

Proposed by Hrvoje Matijakovic
Status: Merged
Merged at revision: 149
Proposed branch: lp:~hrvojem/percona-playback/bp-doc
Merge into: lp:percona-playback
Diff against target: 3901 lines (+3665/-7)
20 files modified
.bzrignore (+1/-1)
doc/Makefile (+144/-0)
doc/source/conf.py (+7/-1)
doc/source/glossary.rst (+3/-0)
doc/source/index.rst (+10/-1)
doc/source/intro.rst (+36/-0)
doc/source/manual.rst (+16/-3)
doc/source/percona-theme/layout.html (+397/-0)
doc/source/percona-theme/searchbox.html (+22/-0)
doc/source/percona-theme/static/default.css_t (+433/-0)
doc/source/percona-theme/static/jquery.min.js (+154/-0)
doc/source/percona-theme/static/percona.com.css (+1850/-0)
doc/source/percona-theme/static/percona.com.js (+269/-0)
doc/source/percona-theme/static/sidebar.js (+151/-0)
doc/source/percona-theme/theme.conf (+32/-0)
doc/source/plugins/query_log_plugin.rst (+12/-0)
doc/source/plugins/tcpdump_plugin.rst (+17/-0)
doc/source/pp_option_reference.rst (+88/-0)
doc/source/release-notes.rst (+5/-1)
doc/source/release-notes/0/0.1.rst (+18/-0)
To merge this branch: bzr merge lp:~hrvojem/percona-playback/bp-doc
Reviewer Review Type Date Requested Status
Percona core Pending
Review via email: mp+113388@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file '.bzrignore'
--- .bzrignore 2012-07-04 10:06:34 +0000
+++ .bzrignore 2012-07-04 12:10:50 +0000
@@ -40,7 +40,6 @@
40percona_playback/test/crashme-slow40percona_playback/test/crashme-slow
41percona_playback/test/sqlbench-transactions-slow41percona_playback/test/sqlbench-transactions-slow
42percona_playback/test/sysbench-slow42percona_playback/test/sysbench-slow
43percona-theme
44doc/build/*43doc/build/*
45m4/libtool.m444m4/libtool.m4
46m4/ltoptions.m445m4/ltoptions.m4
@@ -52,3 +51,4 @@
52percona_playback/test/tcpdump_multiple_connections51percona_playback/test/tcpdump_multiple_connections
53percona_playback/test/tcpdump_stress_test52percona_playback/test/tcpdump_stress_test
54percona_playback/test/tcpdump_without_handshake53percona_playback/test/tcpdump_without_handshake
54!doc/Makefile
5555
=== added file 'doc/Makefile'
--- doc/Makefile 1970-01-01 00:00:00 +0000
+++ doc/Makefile 2012-07-04 12:10:50 +0000
@@ -0,0 +1,144 @@
1# Makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line.
5SPHINXOPTS =
6SPHINXBUILD = sphinx-build
7PAPER =
8BUILDDIR = build
9
10# Internal variables.
11PAPEROPT_a4 = -D latex_paper_size=a4
12PAPEROPT_letter = -D latex_paper_size=letter
13ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
14
15.PHONY: help clean html offhtml dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
16
17help:
18 @echo "Please use \`make <target>' where <target> is one of"
19 @echo " html to make standalone HTML files"
20 @echo " offhtml to make standalone HTML files without fetching the remote theme"
21 @echo " dirhtml to make HTML files named index.html in directories"
22 @echo " singlehtml to make a single large HTML file"
23 @echo " pickle to make pickle files"
24 @echo " json to make JSON files"
25 @echo " htmlhelp to make HTML files and a HTML help project"
26 @echo " qthelp to make HTML files and a qthelp project"
27 @echo " devhelp to make HTML files and a Devhelp project"
28 @echo " epub to make an epub"
29 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
30 @echo " latexpdf to make LaTeX files and run them through pdflatex"
31 @echo " text to make text files"
32 @echo " man to make manual pages"
33 @echo " changes to make an overview of all changed/added/deprecated items"
34 @echo " linkcheck to check all external links for integrity"
35 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
36
37clean:
38 -rm -rf $(BUILDDIR)/*
39
40html:
41 @echo "Downloading percona-theme ..."
42 @wget -O percona-theme.tar.gz http://percona.com/docs/theme/percona-playback
43 @echo "Extracting theme."
44 @tar -zxf percona-theme.tar.gz
45 @rm -rf source/percona-theme
46 @mv percona-theme source/percona-theme
47 @rm percona-theme.tar.gz
48 @echo "Building html doc"
49 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
50 @echo
51 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
52
53offhtml:
54 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
55 @echo
56 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
57
58dirhtml:
59 $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
60 @echo
61 @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
62
63singlehtml:
64 $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
65 @echo
66 @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
67
68pickle:
69 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
70 @echo
71 @echo "Build finished; now you can process the pickle files."
72
73json:
74 $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
75 @echo
76 @echo "Build finished; now you can process the JSON files."
77
78htmlhelp:
79 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
80 @echo
81 @echo "Build finished; now you can run HTML Help Workshop with the" \
82 ".hhp project file in $(BUILDDIR)/htmlhelp."
83
84qthelp:
85 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
86 @echo
87 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
88 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
89 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PerconaXtraBackup.qhcp"
90 @echo "To view the help file:"
91 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PerconaXtraBackup.qhc"
92
93devhelp:
94 $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
95 @echo
96 @echo "Build finished."
97 @echo "To view the help file:"
98 @echo "# mkdir -p $$HOME/.local/share/devhelp/PerconaXtraBackup"
99 @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PerconaXtraBackup"
100 @echo "# devhelp"
101
102epub:
103 $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
104 @echo
105 @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
106
107latex:
108 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
109 @echo
110 @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
111 @echo "Run \`make' in that directory to run these through (pdf)latex" \
112 "(use \`make latexpdf' here to do that automatically)."
113
114latexpdf:
115 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
116 @echo "Running LaTeX files through pdflatex..."
117 make -C $(BUILDDIR)/latex all-pdf
118 @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
119
120text:
121 $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
122 @echo
123 @echo "Build finished. The text files are in $(BUILDDIR)/text."
124
125man:
126 $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
127 @echo
128 @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
129
130changes:
131 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
132 @echo
133 @echo "The overview file is in $(BUILDDIR)/changes."
134
135linkcheck:
136 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
137 @echo
138 @echo "Link check complete; look for any errors in the above output " \
139 "or in $(BUILDDIR)/linkcheck/output.txt."
140
141doctest:
142 $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
143 @echo "Testing of doctests in the sources finished, look at the " \
144 "results in $(BUILDDIR)/doctest/output.txt."
0145
=== added directory 'doc/build'
=== added file 'doc/source/_static/pp_intro.png'
1Binary files doc/source/_static/pp_intro.png 1970-01-01 00:00:00 +0000 and doc/source/_static/pp_intro.png 2012-07-04 12:10:50 +0000 differ146Binary files doc/source/_static/pp_intro.png 1970-01-01 00:00:00 +0000 and doc/source/_static/pp_intro.png 2012-07-04 12:10:50 +0000 differ
=== modified file 'doc/source/conf.py'
--- doc/source/conf.py 2012-07-03 01:02:05 +0000
+++ doc/source/conf.py 2012-07-04 12:10:50 +0000
@@ -92,10 +92,14 @@
9292
93.. |xtrabackup| replace:: :program:`xtrabackup`93.. |xtrabackup| replace:: :program:`xtrabackup`
9494
95.. |percona-playback| replace:: :program:`percona-playback`
96
95.. |innobackupex| replace:: :program:`innobackupex`97.. |innobackupex| replace:: :program:`innobackupex`
9698
97.. |XtraBackup| replace:: *XtraBackup*99.. |XtraBackup| replace:: *XtraBackup*
98100
101.. |Percona Playback| replace:: *Percona Playback*
102
99.. |Percona Server| replace:: *Percona Server*103.. |Percona Server| replace:: *Percona Server*
100104
101.. |Percona| replace:: *Percona*105.. |Percona| replace:: *Percona*
@@ -106,6 +110,8 @@
106110
107.. |MariaDB| replace:: *MariaDB*111.. |MariaDB| replace:: *MariaDB*
108112
113.. |tcpdump| replace:: :term:`tcpdump`
114
109115
110'''116'''
111117
@@ -120,7 +126,7 @@
120126
121# The theme to use for HTML and HTML Help pages. See the documentation for127# The theme to use for HTML and HTML Help pages. See the documentation for
122# a list of builtin themes.128# a list of builtin themes.
123#html_theme = 'percona-theme'129html_theme = 'percona-theme'
124130
125# Theme options are theme-specific and customize the look and feel of a theme131# Theme options are theme-specific and customize the look and feel of a theme
126# further. For a list of options available for each theme, see the132# further. For a list of options available for each theme, see the
127133
=== modified file 'doc/source/glossary.rst'
--- doc/source/glossary.rst 2012-07-02 13:06:34 +0000
+++ doc/source/glossary.rst 2012-07-04 12:10:50 +0000
@@ -10,6 +10,9 @@
10 MyISAM10 MyISAM
11 Previous default storage engine for |MySQL| for versions prior to 5.5. It doesn't fully support transactions but in some scenarios may be faster than :term:`InnoDB`. Each table is stored on disk in 3 files: `.frm`, `.MYD`, `.MYI`11 Previous default storage engine for |MySQL| for versions prior to 5.5. It doesn't fully support transactions but in some scenarios may be faster than :term:`InnoDB`. Each table is stored on disk in 3 files: `.frm`, `.MYD`, `.MYI`
1212
13 tcpdump
14 `Tcpdump <http://www.tcpdump.org/>`_ prints out a description of the contents of packets on a network interface that match the boolean expression.
15
13 XtraDB16 XtraDB
14 *Percona XtraDB* is an enhanced version of the InnoDB storage engine, designed to better scale on modern hardware, and including a variety of other features useful in high performance environments. It is fully backwards compatible, and so can be used as a drop-in replacement for standard InnoDB. More information `here <http://www.percona.com/docs/wiki/Percona-XtraDB:start>`_ .17 *Percona XtraDB* is an enhanced version of the InnoDB storage engine, designed to better scale on modern hardware, and including a variety of other features useful in high performance environments. It is fully backwards compatible, and so can be used as a drop-in replacement for standard InnoDB. More information `here <http://www.percona.com/docs/wiki/Percona-XtraDB:start>`_ .
1518
1619
=== modified file 'doc/source/index.rst'
--- doc/source/index.rst 2012-07-02 13:06:34 +0000
+++ doc/source/index.rst 2012-07-04 12:10:50 +0000
@@ -2,7 +2,16 @@
2 Percona Playback2 Percona Playback
3==================3==================
44
5Percona Playback is a tool for replaying the load of one database server to another.5|Percona Playback| is a tool for replaying the load of one database server to another. Currently it can read queries from |MySQL| query-log and |tcpdump| files and run them on other MySQL server. It has plugin architecture and can be extended with different plugins.
6
7Introduction
8============
9
10.. toctree::
11 :maxdepth: 1
12 :glob:
13
14 intro
615
7Installation16Installation
8============17============
918
=== added file 'doc/source/intro.rst'
--- doc/source/intro.rst 1970-01-01 00:00:00 +0000
+++ doc/source/intro.rst 2012-07-04 12:10:50 +0000
@@ -0,0 +1,36 @@
1========================
2 About Percona Playback
3========================
4
5|Percona Playback| is a tool for replaying the load of one database server to another. Currently it can read queries from |MySQL| query-log and |tcpdump| files and run them on other |MySQL| server. It has plugin architecture and can be extended with different plugins.
6
7There are four categories of plugins for |percona-playback|:
8
9 * **input** - responsible for where input data is given from,
10 * **db** - where queries should be played,
11 * **report** - how to represent results,
12 * **other** - plugins that doesn't belong to the previous categories.
13
14Each plugin can have own set of command line options which are usually provided with help messages.
15
16At this moment the following plugins are implemented:
17
18 1) `input`
19
20 * query_log - reads queries from query-log files
21 * tcpdump - reads queries from tcpdump files
22
23 2) `db`
24
25 * libmysqlclient - plays queries in mysql server
26 * null - doesn't play queries anywhere but useful for testing
27
28 3) `report`
29
30 * simple_report - output information about executed queries in simple form
31
32The engine's architecture is "thread-per-connection". Each thread has queries queue. `Input` plugin parses input data and pass parsed queries to the engine. The engine pushes queries to the queue of certain `db` thread. The queue size can be limited with :option:`--queue-depth` command line option. If the limit is reached the engine will stop `input` plugin thread until the size of the queue becomes less then the limit.
33
34.. image:: /_static/pp_intro.png
35
36Input data can be played several times in a row. The number of repeats can be set with --loop command line options (NYI).
037
=== modified file 'doc/source/manual.rst'
--- doc/source/manual.rst 2012-07-02 13:06:34 +0000
+++ doc/source/manual.rst 2012-07-04 12:10:50 +0000
@@ -4,7 +4,20 @@
4 Percona Playback User Manual4 Percona Playback User Manual
5==============================5==============================
66
7.. toctree::7Plugins
8 :maxdepth: 18----------
9 :hidden:9
10.. toctree::
11 :maxdepth: 1
12
13 plugins/tcpdump_plugin
14 plugins/query_log_plugin
15
16References
17----------
18
19.. toctree::
20 :maxdepth: 1
21
22 pp_option_reference
1023
1124
=== added directory 'doc/source/percona-theme'
=== added file 'doc/source/percona-theme/layout.html'
--- doc/source/percona-theme/layout.html 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/layout.html 2012-07-04 12:10:50 +0000
@@ -0,0 +1,397 @@
1{#
2 basic/layout.html
3 ~~~~~~~~~~~~~~~~~
4
5 Master layout template for Sphinx themes.
6
7 :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
8 :license: BSD, see LICENSE for details.
9#}
10{%- block doctype -%}
11<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
12 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
13{%- endblock %}
14{%- set reldelim1 = reldelim1 is not defined and ' &raquo;' or reldelim1 %}
15{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %}
16{%- set render_sidebar = (not embedded) and (not theme_nosidebar|tobool) and
17 (sidebars != []) %}
18{%- set url_root = pathto('', 1) %}
19{# XXX necessary? #}
20{%- if url_root == '#' %}{% set url_root = '' %}{% endif %}
21{%- if not embedded and docstitle %}
22 {%- set titlesuffix = " &mdash; "|safe + docstitle|e %}
23{%- else %}
24 {%- set titlesuffix = "" %}
25{%- endif %}
26
27{%- macro relbar() %}
28 <div class="related">
29 <h3>{{ _('Navigation') }}</h3>
30 <ul>
31 {%- for rellink in rellinks %}
32 <li class="right" {% if loop.first %}style="margin-right: 10px"{% endif %}>
33 <a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags|e }}"
34 {{ accesskey(rellink[2]) }}>{{ rellink[3] }}</a>
35 {%- if not loop.first %}{{ reldelim2 }}{% endif %}</li>
36 {%- endfor %}
37 {%- block rootrellink %}
38 <li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li>
39 {%- endblock %}
40 {%- for parent in parents %}
41 <li><a href="{{ parent.link|e }}" {% if loop.last %}{{ accesskey("U") }}{% endif %}>{{ parent.title }}</a>{{ reldelim1 }}</li>
42 {%- endfor %}
43 {%- block relbaritems %} {% endblock %}
44 </ul>
45 </div>
46{%- endmacro %}
47
48{%- macro sidebar() %}
49 {%- if render_sidebar %}
50 <div class="sphinxsidebar">
51 <div class="sphinxsidebarwrapper">
52
53
54
55 <div class="side-column-block">
56 <div class="header">Call Us</div>
57 <div class="content">
58 <div class="numbers">
59 <div style="padding-bottom: 4px">
60 +1-888-316-9775 (USA - Sales)<br>
61 +1-208-473-2904 (USA - Sales)
62 </div>
63 <div style="padding-bottom: 4px;">
64 +44-208-133-0309 (UK - Sales)
65 </div>
66 <div style="padding-bottom: 4px;">
67 +1-877-862-4316 (Emergency)
68 </div>
69 <div>
70 +1-855-55TRAIN (Training)<br>
71 +1-925-271-5054 (Training)
72 </div>
73 </div>
74 </div>
75 </div>
76
77
78
79 <div class="percona_com_ad" style="width:220px;"><script type="text/javascript" src="http://www.percona.com/ads.php?size=220x120"></script></div>
80
81 {%- if sidebars != None %}
82 {#- new style sidebar: explicitly include/exclude templates #}
83 {%- for sidebartemplate in sidebars %}
84 {%- include sidebartemplate %}
85 {%- endfor %}
86 {%- else %}
87 {#- old style sidebars: using blocks -- should be deprecated #}
88 {%- block serverseries %}
89
90 {%- endblock %}
91 {%- block sidebartoc %}
92 {%- include "localtoc.html" %}
93 {%- endblock %}
94 {%- block sidebarrel %}
95 {%- include "relations.html" %}
96 {%- endblock %}
97 {%- block sidebarsourcelink %}
98 {%- include "sourcelink.html" %}
99 {%- endblock %}
100 {%- if customsidebar %}
101 {%- include customsidebar %}
102 {%- endif %}
103 {%- block sidebarsearch %}
104 {%- include "searchbox.html" %}
105 {%- endblock %}
106 {%- endif %}
107<br /><br />
108 <div class="side-column-block">
109 <ul class="side-contact-buttons">
110 <li><a href="http://form.percona.com/ContactMe.html" title="Contact Me" class="contact-me"><span>Contact Me</span></a></li>
111 <li><a href="http://www.percona.com/webinars/" title="Attend a Webinar" class="webinar"><span>Attend a Webinar</span></a></li>
112 <li><a href="http://www.percona.com/downloads/" title="Download Software" class="download-software"><span>Download Software</span></a></li>
113 <li><a href="http://www.percona.com/subscribe/" title="Register For Newsletters" class="newsletters"><span>Register For Newsletters</span></a></li>
114 </ul>
115 </div>
116
117 </div>
118 </div>
119 {%- endif %}
120{%- endmacro %}
121
122{%- macro script() %}
123 <script type="text/javascript">
124 var DOCUMENTATION_OPTIONS = {
125 URL_ROOT: '{{ url_root }}',
126 VERSION: '{{ release|e }}',
127 COLLAPSE_INDEX: false,
128 FILE_SUFFIX: '{{ '' if no_search_suffix else file_suffix }}',
129 HAS_SOURCE: {{ has_source|lower }}
130 };
131 </script>
132 {%- for scriptfile in script_files %}
133 <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script>
134 {%- endfor %}
135{%- endmacro %}
136
137{%- macro css() %}
138 <link rel="stylesheet" href="{{ pathto('_static/percona.com.css', 1) }}" type="text/css" />
139 <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" />
140 <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" />
141 {%- for cssfile in css_files %}
142 <link rel="stylesheet" href="{{ pathto(cssfile, 1) }}" type="text/css" />
143 {%- endfor %}
144{%- endmacro %}
145
146<html xmlns="http://www.w3.org/1999/xhtml">
147 <head>
148 <meta http-equiv="Content-Type" content="text/html; charset={{ encoding }}" />
149 {{ metatags }}
150 {%- block htmltitle %}
151 <title>{{ title|striptags|e }}{{ titlesuffix }}</title>
152 {%- endblock %}
153
154 {{ css() }}
155 {%- if not embedded %}
156 {{ script() }}
157 {%- if use_opensearch %}
158 <link rel="search" type="application/opensearchdescription+xml"
159 title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
160 href="{{ pathto('_static/opensearch.xml', 1) }}"/>
161 {%- endif %}
162
163<script src="{{ pathto('_static/percona.com.js', 1)}}" type="text/javascript"></script>
164
165 {%- if favicon %}
166 <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/>
167 {%- endif %}
168 {%- endif %}
169{%- block linktags %}
170 {%- if hasdoc('about') %}
171 <link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" />
172 {%- endif %}
173 {%- if hasdoc('genindex') %}
174 <link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" />
175 {%- endif %}
176 {%- if hasdoc('search') %}
177 <link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" />
178 {%- endif %}
179 {%- if hasdoc('copyright') %}
180 <link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" />
181 {%- endif %}
182 <link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" />
183 {%- if parents %}
184 <link rel="up" title="{{ parents[-1].title|striptags|e }}" href="{{ parents[-1].link|e }}" />
185 {%- endif %}
186 {%- if next %}
187 <link rel="next" title="{{ next.title|striptags|e }}" href="{{ next.link|e }}" />
188 {%- endif %}
189 {%- if prev %}
190 <link rel="prev" title="{{ prev.title|striptags|e }}" href="{{ prev.link|e }}" />
191 {%- endif %}
192{%- endblock %}
193{%- block extrahead %} {% endblock %}
194 </head>
195 <body>
196
197{%- block header %}
198
199 <!-- <div id="stickywrapper"> -->
200 <!-- <div id="stickycontent"> -->
201 <div id="header"><div class="header">
202 <div class="logo"><a href="http://www.percona.com/" onfocus="this.blur()"><img src="http://s3.percona.com/ui-logo.png" alt="Percona Performance Consulting Experts" width="240" height="55" /></a></div>
203 <div class="right">
204 <div class="searchlink"><a onmouseover="SEARCH.Open()"><img id="searchlink-anchor" src="http://s2.percona.com/ui-search.png" alt="" /></a></div>
205 <span class="inv"><![CDATA[<noindex>]]></span>
206 <div class="navicontainer"><div class="navi">
207 <span id="navilink-span-about-us" ><a id="navilink-a-about-us" href="/about-us/">About Us</a></span><span id="navilink-span-mysql-consulting" ><a id="navilink-a-mysql-consulting" href="/mysql-consulting/">Consulting</a></span><span id="navilink-span-support" ><a id="navilink-a-support" href="/mysql-support/">Support</a></span><span id="navilink-span-training" ><a id="navilink-a-training" href="/training/">Training</a></span><span id="navilink-span-development" ><a id="navilink-a-development" href="/development/">Development</a></span><span id="navilink-span-software" ><a id="navilink-a-software" href="/software/">Software</a></span><span id="navilink-span-events" ><a id="navilink-a-events" href="/live/">Events</a></span><span id="navilink-span-contact" ><a id="navilink-a-contact" href="/contact/">Contact Us</a></span>
208 </div></div>
209
210 <span class="inv"><![CDATA[</noindex>]]></span>
211 <span class="inv"><![CDATA[</noindex>]]></span>
212 </div>
213 </div></div>
214 <div id="stripe"></div>
215
216{% endblock %}
217
218 <!-- <div id="stripe"></div> -->
219
220{%- block content %}
221
222
223
224 {%- block sidebar1 %} {# possible location for sidebar #} {% endblock %}
225
226 <div class="document">
227
228
229
230 {%- block document %}
231 <div class="documentwrapper">
232 {%- if render_sidebar %}
233 <div class="bodywrapper">
234 {%- endif %}
235
236 {%- block relbar1 %}{{ relbar() }}{% endblock %}
237
238 <div class="body">
239 {% block body %} {% endblock %}
240 </div>
241
242 {%- block relbar2 %}{{ relbar() }}
243
244 {%- if render_sidebar %}
245 <div class="percona_com_ad" style="margin:auto;width:630px;"><script type="text/javascript" src="http://www.percona.com/ads.php?size=630x80"></script></div>
246 </div>
247 {%- endif %}
248
249
250
251 </div>
252
253 {%- endblock %}
254
255 {%- block sidebar2 %}{{ sidebar() }}{% endblock %}
256
257 <div class="clearer"></div>
258
259 {%- if last_updated %}
260 {% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
261 {%- endif %}
262
263
264
265
266 <div class="license">
267
268 {%- if show_copyright %}
269 {%- if hasdoc('copyright') %}
270 {% trans path=pathto('copyright'), copyright=copyright|e %}&copy; <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
271 {%- else %}
272 {% trans copyright=copyright|e %}&copy; Copyright {{ copyright }}.{% endtrans %}
273 {%- endif %}
274 {%- endif %}
275
276 <br />
277 Except where otherwise noted, this documentation is licensed under the following license:
278 <br />
279 <a class="urlextern" rel="license" href="http://creativecommons.org/licenses/by-sa/2.0/">
280 CC Attribution-ShareAlike 2.0 Generic</a><br />
281
282 {%- if show_sphinx %}
283 {% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}
284 {%- endif %}
285
286 </div>
287
288 </div>
289 {%- endblock %}
290
291 {% endblock %}
292
293{%- block footer %}
294
295 <div class="file-bugs">
296 This documentation is developed in Launchpad as part of the <a href="https://code.launchpad.net/percona-playback">Percona Playback source code</a>.<br/>
297 If you spotted innacuracies, errors, don't understood it or you think something is missing or should be improved, please <a href="https://bugs.launchpad.net/percona-playback/+filebug?field.tags=doc&amp;field.comment=[In:Percona Playback Documentation]&amp;?field.tags=doc&amp;field.title=[DOC] ">file a bug</a>.
298
299 </div>
300
301 <div id="footer">
302
303 <div class="footer">
304 <div class="logo"><img width="110" height="25" alt="" src="{{ pathto('_static/ui-footer-logo.png', 1) }}">
305 </div>
306
307 <div class="text">
308 <span class="inv"><!--[CDATA[<noindex-->]]&gt;</span>
309 Call us: 1-888-316-9775 • <a href="/contact">Contact Us</a><br>
310 MySQL and InnoDB are trademarks of Oracle Corp.<br>
311 Proudly running <a href="/software/percona-server/">Percona Server<span id="recentServerVersion"></span></a><br>
312 Copyright &copy; 2006-2011 Percona Inc.<br>
313 <a href="/about-us/policies/">Copyright, Trademark, and Privacy Policy</a> • <a href="/sitemap/">Sitemap</a>
314 <span class="inv"><!--[CDATA[</noindex-->]]&gt;</span>
315 </div>
316 </div>
317
318 </div>
319{%- endblock %}
320<span class="inv"><!--[CDATA[<noindex-->]]&gt;</span>
321<div id="submenus">
322 <div class="navi-dropdown" id="navi-dropdown-about-us">
323 <div class="navi-dropdown-header-l"><!-- //--></div>
324 <div class="navi-dropdown-content"><div class="item"><a href="/about-us/our-mission/">Our Mission</a></div><div class="item"><a href="/about-us/why-percona/">Why Percona?</a></div><div class="item"><a href="/about-us/procedures/">Coordinating with Percona</a></div><div class="item"><a href="/about-us/customers/">Customers</a></div><div class="item"><a href="/webinars/">Webinars</a></div><div class="item"><a href="/about-us/mysql-case-studies/">MySQL Case Studies</a></div><div class="item"><a href="/about-us/our-team/">Our Team</a></div><div class="item"><a href="/about-us/books/">Our Books</a></div><div class="item"><a href="/about-us/blogs/">Our Blogs</a></div><div class="item"><a href="/about-us/mysql-white-papers/">MySQL White Papers</a></div><div class="item"><a href="/about-us/conferences/">Conferences</a></div><div class="item"><a href="/about-us/presentations/">Presentations</a></div><div class="item"><a href="/about-us/newsletters/">Newsletters</a></div><div class="item"><a href="/about-us/pressreleases/">Press Releases</a></div><div class="item"><a href="/about-us/careers/">Careers</a></div> </div>
325 <div class="navi-dropdown-footer"><!-- //--></div>
326 </div><div class="navi-dropdown" id="navi-dropdown-mysql-consulting">
327 <div class="navi-dropdown-header-l"><!-- //--></div>
328 <div class="navi-dropdown-content"><div class="item"><a href="/mysql-consulting/overview/">MySQL Consulting Overview</a></div><div class="item"><a href="/mysql-consulting/prices/">MySQL Consulting Prices</a></div><div class="item"><a href="/mysql-consulting/architecture/">MySQL Architecture &amp; Design</a></div><div class="item"><a href="/mysql-consulting/mysql-backups/">MySQL Backups</a></div><div class="item"><a href="/mysql-consulting/cloud-computing/">MySQL Cloud Solutions</a></div><div class="item"><a href="/mysql-consulting/cluster/">MySQL Cluster Consulting</a></div><div class="item"><a href="/mysql-consulting/data-warehousing/">MySQL Data Warehousing</a></div><div class="item"><a href="/mysql-consulting/data-recovery/">MySQL Data Recovery</a></div><div class="item"><a href="/mysql-consulting/high-availability/">MySQL High Availability</a></div><div class="item"><a href="/mysql-consulting/mysql-monitoring-graphing/">MySQL Monitoring &amp; Graphing</a></div><div class="item"><a href="/mysql-consulting/mysql-onsite-consulting/">MySQL Onsite Consulting</a></div><div class="item"><a href="/mysql-consulting/performance-audit/">MySQL Performance Audit</a></div><div class="item"><a href="/mysql-consulting/remote-dba/">MySQL Remote DBA</a></div><div class="item"><a href="/mysql-consulting/mysql-replication/">MySQL Replication</a></div><div class="item"><a href="/mysql-consulting/upgrade/">MySQL Version Upgrades</a></div><div class="item"><a href="/mysql-consulting/24x7-emergency/">Emergency 24&times;7 Consulting</a></div><div class="item"><a href="/mysql-consulting/migration/">Migration to MySQL</a></div><div class="item"><a href="/drizzle-consulting/">Drizzle Consulting</a></div><div class="item"><a href="/mysql-consulting/sphinx/">Sphinx Consulting</a></div><div class="item"><a href="/mysql-consulting/drbd/">DRBD Consulting</a></div><div class="item"><a href="/mysql-consulting/memcached/">Memcached Consulting</a></div><div class="item"><a href="/mysql-consulting/other-services/">Other Consulting Services</a></div> </div>
329 <div class="navi-dropdown-footer"><!-- //--></div>
330 </div><div class="navi-dropdown" id="navi-dropdown-support">
331 <div class="navi-dropdown-header-l"><!-- //--></div>
332 <div class="navi-dropdown-content"><div class="item"><a href="/mysql-support/">MySQL Support Overview</a></div><div class="item"><a href="/prices/mysql-support/">MySQL Support Prices</a></div><div class="item"><a href="/mysql-support/policies/">MySQL Support Policies</a></div><div class="item"><a href="/mysql-support/consulting-vs-support/">Consulting vs. Support</a></div><div class="item"><a href="https://customers.percona.com">Customer Portal Login</a></div> </div>
333 <div class="navi-dropdown-footer"><!-- //--></div>
334 </div><div class="navi-dropdown" id="navi-dropdown-training">
335 <div class="navi-dropdown-header-l"><!-- //--></div>
336 <div class="navi-dropdown-content"><div class="item"><a href="/training/">MySQL Training Overview</a></div><div class="item"><a href="/prices/training/">MySQL Training Prices</a></div><div class="item"><a href="/training/classes/dba/">MySQL DBA Training</a></div><div class="item"><a href="/training/classes/developers/">MySQL Developer Training</a></div><div class="item"><a href="/training/classes/operations/">MySQL Operations Training</a></div><div class="item"><a href="/training/classes/innodb/">InnoDB &amp; XtraDB Training</a></div><div class="item"><a href="/training/classes/custom-onsite/">Custom Onsite Training</a></div> </div>
337 <div class="navi-dropdown-footer"><!-- //--></div>
338 </div><div class="navi-dropdown" id="navi-dropdown-development">
339 <div class="navi-dropdown-header-l"><!-- //--></div>
340 <div class="navi-dropdown-content"><div class="item"><a href="/development/mysql/">MySQL Development Overview</a></div><div class="item"><a href="/development/prices/">Custom Development Prices</a></div><div class="item"><a href="/development/maintenance/">MySQL Support Overview</a></div><div class="item"><a href="/development/benchmarking/">Custom Product Evaluation</a></div><div class="item"><a href="/development/maatkit/">Custom Maatkit Development</a></div><div class="item"><a href="/development/custom-tools/">Custom Tools Development</a></div> </div>
341 <div class="navi-dropdown-footer"><!-- //--></div>
342 </div><div class="navi-dropdown" id="navi-dropdown-software">
343 <div class="navi-dropdown-header-l"><!-- //--></div>
344 <div class="navi-dropdown-content"><div class="item"><a href="/software/">Percona Software for MySQL</a></div><div class="item"><a href="/software/percona-server/">Percona Server with XtraDB</a></div><div class="item"><a href="/software/percona-xtradb-cluster/">Percona XtraDB Cluster</a></div><div class="item"><a href="/software/percona-xtrabackup/">Percona XtraBackup</a></div><div class="item"><a href="/software/mysql-innodb-data-recovery-tools/">Data Recovery Toolkit</a></div><div class="item"><a href="/software/percona-xtradb/">Percona XtraDB</a></div><div class="item"><a href="/software/percona-toolkit/">Percona Toolkit</a></div><div class="item"><a href="/software/percona-monitoring-plugins/">Percona Monitoring Plugins</a></div><div class="item"><a href="/prices/software/">Software Prices</a></div><div class="item"><a href="/downloads/">Downloads</a></div><div class="item"><a href="/software/repositories/">Repositories</a></div><div class="item"><a href="/software/documentation/">Documentation</a></div><div class="item"><a href="http://forum.percona.com">Forum</a></div><div class="item"><a href="http://groups.google.com/group/percona-discussion">Google Discussion</a></div><div class="item"><a href="https://launchpad.net/percona-server">Launchpad</a></div> </div>
345 <div class="navi-dropdown-footer"><!-- //--></div>
346 </div><div class="navi-dropdown" id="navi-dropdown-events">
347 <div class="navi-dropdown-header-r"><!-- //--></div>
348 <div class="navi-dropdown-content"><div class="item"><a href="/live/nyc-2012/">New York 2012</a></div><div class="item"><a href="/live/london-2012/">London 2012</a></div><div class="item"><a href="/live/mysql-conference-2013/">MySQL Conference &amp; Expo 2013</a></div><div class="item"><a href="/live/mysql-conference-2012/">MySQL Conference &amp; Expo 2012</a></div><div class="item"><a href="/live/">Previous Percona Live Events</a></div> </div>
349 <div class="navi-dropdown-footer"><!-- //--></div>
350 </div><div class="navi-dropdown" id="navi-dropdown-contact">
351 <div class="navi-dropdown-header-r"><!-- //--></div>
352 <div class="navi-dropdown-content"><div class="item"><a href="/contact/24x7-emergency/">24&times;7 Emergency</a></div><div class="item"><a href="/contact/sales/">Sales &amp; General Inquiries</a></div><div class="item"><a href="/contact/billing/">Billing Inquiries</a></div><div class="item"><a href="https://customers.percona.com">Customer Portal Login</a></div><div class="item"><a href="/contact/phone-directory/">Phone Directory</a></div><div class="item"><a href="/subscribe/">Subscribe to Newsletter</a></div> </div>
353 <div class="navi-dropdown-footer"><!-- //--></div>
354 </div>
355 <div id="search-dropdown" class="search-dropdown">
356 <div class="search-dropdown-header"><!-- //--></div>
357 <div class="search-dropdown-content">
358 <div class="search-info">Search Percona.com:</div>
359 <form method="get" action="http://search.percona.com/search/" id="search-form">
360 <div class="form"><input type="text" id="search-input" name="q" maxlength="100"></div>
361 </form>
362 </div>
363 <div class="search-dropdown-footer"><!-- //--></div>
364 </div>
365</div>
366<div id="stats">
367<!-- GA //-->
368 <script src="http://www.percona.com/static/js/urchin.js" type="text/javascript"></script>
369 <script type="text/javascript">
370 _uacct = "UA-343802-3";
371 urchinTracker();
372 </script>
373<!-- /GA //-->
374<!-- NAVI //-->
375<script type="text/javascript">//<![CDATA[
376var navi = [{id:"about-us", direction: "l"},{id:"mysql-consulting", direction: "l"},{id:"support", direction: "l"},{id:"training", direction: "l"},{id:"development", direction: "l"},{id:"software", direction: "l"},{id:"events", direction: "r"},{id:"contact", direction: "r"}];
377for(var i = 0, c = navi.length; i < c; i++) {
378window.jQuery('#navilink-a-' + navi[i].id).bind('mouseover',{id: navi[i].id, direction:navi[i].direction}, function(e) { NAVI.Open(e.data.id, e.data.direction); } );
379}
380window.jQuery('#search-form').bind('submit', function() { window.location.href = jQuery('#search-form').attr('action') + jQuery('#search-input').val(); return false; });
381//]]></script>
382<!-- /NAVI //-->
383<script type="text/javascript">
384//<![CDATA[
385Percona.host = 'www.percona.com';
386Percona.getRecentServerVersion('#recentServerVersion');
387//]]>
388</script>
389</div>
390 </body>
391</html>
392
393
394
395{% if theme_collapsiblesidebar|tobool %}
396{% set script_files = script_files + ['_static/sidebar.js'] %}
397{% endif %}
0398
=== added file 'doc/source/percona-theme/searchbox.html'
--- doc/source/percona-theme/searchbox.html 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/searchbox.html 2012-07-04 12:10:50 +0000
@@ -0,0 +1,22 @@
1{#
2 basic/searchbox.html
3 ~~~~~~~~~~~~~~~~~~~~
4
5 Sphinx sidebar template: quick search box.
6
7 :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
8 :license: BSD, see LICENSE for details.
9#}
10{%- if pagename != "search" %}
11<div id="searchbox" style="display: none; padding: 3px;">
12 <h3>{{ _('Quick search') }}</h3>
13 <form class="search" action="{{ pathto('search') }}" method="get">
14 <input type="text" name="q" size="18" />
15 <input type="submit" value="{{ _('Go') }}" />
16 <input type="hidden" name="check_keywords" value="yes" />
17 <input type="hidden" name="area" value="default" />
18 </form>
19
20</div>
21<script type="text/javascript">$('#searchbox').show(0);</script>
22{%- endif %}
023
=== added directory 'doc/source/percona-theme/static'
=== added file 'doc/source/percona-theme/static/boxes_header_bulletpoint.png'
1Binary files doc/source/percona-theme/static/boxes_header_bulletpoint.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/boxes_header_bulletpoint.png 2012-07-04 12:10:50 +0000 differ24Binary files doc/source/percona-theme/static/boxes_header_bulletpoint.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/boxes_header_bulletpoint.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/boxes_header_bulletpoint.png.moved'
2Binary files doc/source/percona-theme/static/boxes_header_bulletpoint.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/boxes_header_bulletpoint.png.moved 2012-07-04 12:10:50 +0000 differ25Binary files doc/source/percona-theme/static/boxes_header_bulletpoint.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/boxes_header_bulletpoint.png.moved 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/button-download-icon.png'
3Binary files doc/source/percona-theme/static/button-download-icon.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/button-download-icon.png 2012-07-04 12:10:50 +0000 differ26Binary files doc/source/percona-theme/static/button-download-icon.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/button-download-icon.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/button-download-icon.png.moved'
4Binary files doc/source/percona-theme/static/button-download-icon.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/button-download-icon.png.moved 2012-07-04 12:10:50 +0000 differ27Binary files doc/source/percona-theme/static/button-download-icon.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/button-download-icon.png.moved 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/content_list_bulletpoint.png'
5Binary files doc/source/percona-theme/static/content_list_bulletpoint.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/content_list_bulletpoint.png 2012-07-04 12:10:50 +0000 differ28Binary files doc/source/percona-theme/static/content_list_bulletpoint.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/content_list_bulletpoint.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/content_list_bulletpoint.png.moved'
6Binary files doc/source/percona-theme/static/content_list_bulletpoint.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/content_list_bulletpoint.png.moved 2012-07-04 12:10:50 +0000 differ29Binary files doc/source/percona-theme/static/content_list_bulletpoint.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/content_list_bulletpoint.png.moved 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/default.css_t'
--- doc/source/percona-theme/static/default.css_t 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/static/default.css_t 2012-07-04 12:10:50 +0000
@@ -0,0 +1,433 @@
1/*
2 * default.css_t
3 * ~~~~~~~~~~~~~
4 *
5 * Sphinx stylesheet -- default theme.
6 *
7 * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
8 * :license: BSD, see LICENSE for details.
9 *
10 */
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-size: 12px;
18 line-height: 16px;
19 font-family: Arial;
20
21 background-color: #fff;
22 color: #333333;
23 line-height: 20px;
24 margin: 0;
25 padding: 0;
26
27}
28
29div.document {
30 background-color: #fff;
31 margin: 0 auto;
32 overflow: hidden;
33 padding: 30px 0;
34 width: 960px;
35}
36
37div.documentwrapper {
38 /* float: left; */
39 /* width: 100%; */
40
41}
42
43div.bodywrapper {
44 margin: 10 0 0 0px;
45 width: 660px;
46 float:right;
47}
48
49div.body {
50 background-color: #fff;
51 color: #333333;
52 padding: 0 0 20px;
53}
54
55{%- if theme_rightsidebar|tobool %}
56div.bodywrapper {
57 margin: 0 {{ theme_sidebarwidth }}px 0 0;
58}
59{%- endif %}
60
61div.footer {
62 /* color: {{ theme_footertextcolor }}; */
63 /* width: 100%; */
64 /* padding: 9px 0 9px 0; */
65 /* text-align: center; */
66 /* font-size: 75%; */
67 font: 80% "Lucida Grande",Verdana,Lucida,Helvetica,Arial,sans-serif;
68 background: none repeat scroll 0 0 #333333;
69 border-top: 2px solid #D95200;
70 overflow: hidden;
71}
72
73div.footer a {
74 color: {{ theme_footertextcolor }};
75 text-decoration: underline;
76}
77
78div.related {
79 background-color: #ccc;
80 line-height: 30px;
81 color: #333;
82 background: none repeat scroll 0 0 #F8F8F8;
83 border: 1px solid #E0E0E0;
84 clear: both;
85 padding: 10px;
86 width: 635px;
87 margin-bottom: 5px;
88}
89
90div.related a {
91 color: #999;
92}
93
94div.sphinxsidebar {
95 margin-left: 0px;
96 margin-right: 30px;
97 color: #333333;
98 font-family: Arial,Helvetica,sans-serif;
99 width: 260px;
100 {%- if theme_stickysidebar|tobool %}
101 top: 30px;
102 bottom: 0;
103 margin: 0;
104 position: fixed;
105 overflow: auto;
106 height: auto;
107 {%- endif %}
108 {%- if theme_rightsidebar|tobool %}
109 float: right;
110 {%- if theme_stickysidebar|tobool %}
111 right: 0;
112 {%- endif %}
113 {%- endif %}
114}
115
116{%- if theme_stickysidebar|tobool %}
117/* this is nice, but it it leads to hidden headings when jumping
118 to an anchor */
119/*
120div.related {
121 position: fixed;
122}
123
124div.documentwrapper {
125 margin-top: 30px;
126}
127*/
128{%- endif %}
129
130div.sphinxsidebar h3 {
131 /* font-family: {{ theme_headfont }}; */
132 color: #999;
133 font-size: 18px;
134 line-height: 15px;
135 font-weight: 400;
136 margin-left: 5px;
137 padding: 0;
138}
139
140div.sphinxsidebar h3 a {
141 color: #333;
142}
143
144div.sphinxsidebar a:hover {
145 /* color: #333; */
146}
147
148div.sphinxsidebar h4 {
149 /* font-family: {{ theme_headfont }}; */
150 color: #666;
151 font-size: 18px;
152 font-weight: normal;
153 margin: 5px 0 0 5px;
154 padding: 0;
155}
156
157div.sphinxsidebar p {
158 color: #333;
159 margin-bottom: 5px;
160 margin-left: 5px;
161}
162
163div.sphinxsidebar p.topless {
164 margin: 5px 10px 10px 10px;
165}
166
167div.sphinxsidebar ul {
168 margin: 10px;
169 padding-left: 5px;
170 color: #333;
171}
172
173div.sphinxsidebar a {
174 color: #D12907;
175}
176
177div.sphinxsidebar input {
178 border: 1px solid #999;
179 font-family: sans-serif;
180 font-size: 1em;
181}
182
183{% if theme_collapsiblesidebar|tobool %}
184/* for collapsible sidebar */
185div#sidebarbutton {
186 background-color: {{ theme_sidebarbtncolor }};
187}
188{% endif %}
189
190/* -- hyperlink styles ------------------------------------------------------ */
191
192a {
193 color: #D12907;
194 text-decoration: underline;
195 border: medium none;
196 cursor: pointer;
197}
198
199a:visited {
200 color: #D12907;
201 text-decoration: underline;
202}
203
204a:hover {
205 color: #D12907;
206 text-decoration: underline;
207}
208
209{% if theme_externalrefs|tobool %}
210a.external {
211 text-decoration: none;
212 border-bottom: 1px dashed {{ theme_linkcolor }};
213}
214
215a.external:hover {
216 text-decoration: none;
217 border-bottom: none;
218}
219
220a.external:visited {
221 text-decoration: none;
222 border-bottom: 1px dashed {{ theme_visitedlinkcolor }};
223}
224{% endif %}
225
226/* -- body styles ----------------------------------------------------------- */
227
228
229
230a.headerlink {
231 color: {{ theme_headlinkcolor }};
232 font-size: 0.8em;
233 padding: 0 4px 0 4px;
234 text-decoration: none;
235}
236
237a.headerlink:hover {
238 background-color: {{ theme_headlinkcolor }};
239 color: white;
240}
241
242div.body dd, div.body li {
243 text-align: justify;
244}
245
246div.body dt {
247 list-style-type: square;
248 /* margin: 8px 0 8px 30px; */
249 padding: 0 4px 0 5px;
250
251}
252
253div.body p {
254 text-align: justify;
255/* line-height: 130%;*/
256 margin: 10px 0;
257}
258
259/* div.body ul, */
260div.body li {
261 list-style-type: square;
262 margin: 8px 0 8px 30px;
263 padding: 0 4px 0 5px;
264}
265
266.reference em {
267 font-style: normal;
268}
269
270.std-term {
271 font-style: normal;
272 font-weight: 400;
273 color: #FF7400
274}
275
276div.admonition p.admonition-title + p {
277 display: inline;
278}
279
280div.admonition p {
281 margin-bottom: 5px;
282}
283
284div.admonition pre {
285 margin-bottom: 5px;
286}
287
288div.admonition ul, div.admonition ol {
289 margin-bottom: 5px;
290}
291
292div.note {
293 background-color: #eee;
294 border: 1px solid #ccc;
295}
296
297div.seealso {
298 background-color: #ffc;
299 border: 1px solid #ff6;
300}
301
302div.topic {
303 background-color: #eee;
304}
305
306div.warning {
307 background-color: #ffe4e4;
308 border: 1px solid #f66;
309}
310
311p.admonition-title {
312 display: inline;
313}
314
315p.admonition-title:after {
316 content: ":";
317}
318
319pre {
320 padding: 10px;
321 background-color: #F0E6D9/* {{ theme_codebgcolor }} */;
322 color: {{ theme_codetextcolor }};
323 line-height: 120%;
324 border: 1px dashed #ED9821;
325 font-size: 80%;
326 overflow: auto;
327 /* border-left: none; */
328 /* border-right: none; */
329}
330
331tt {
332/* background-color: #ecf0f3;
333 padding: 0 1px 0 1px;
334 font-size: 0.95em;*/
335 font-weight: 400;
336}
337
338div.body td {
339 text-align: none;
340}
341
342table.docutils th {
343 background-color: #DEE7EC;
344 border: 1px solid #8CACBB;
345 padding: 3px;
346 text-align: center;
347 font-style: normal;
348 font-weight: 400;
349}
350
351table.docutils td {
352 border: 1px solid #8CACBB;
353 padding: 3px;
354 line-height: 16px;
355 vertical-align: middle;
356}
357
358.warning tt {
359 background: #efc2c2;
360}
361
362.note tt {
363 background: #d6d6d6;
364}
365
366.viewcode-back {
367 font-family: {{ theme_bodyfont }};
368}
369
370div.viewcode-block:target {
371 background-color: #f4debf;
372 border-top: 1px solid #ac9;
373 border-bottom: 1px solid #ac9;
374}
375
376.file-bugs {
377 background: none repeat scroll 0 0 #E8E8E8;
378 border: 1px solid #E0E0E0;
379 clear: both;
380 color: #333333;
381 padding: 10px;
382 text-align: center;
383 font-size: 90%;
384}
385
386div.footer .footer {
387 margin: 0 auto;
388 overflow: hidden;
389 padding: 10px 0;
390 width: 960px;
391 border-top: none;
392}
393
394div.footer .footer .logo {
395 float: left;
396 overflow: hidden;
397 padding: 17px 0 0;
398}
399
400div.footer .footer .text {
401 color: #E0E0E0;
402 float: right;
403 font-family: Arial,Helvetica,sans-serif;
404 font-size: 11px;
405 line-height: 15px;
406 overflow: hidden;
407 text-align: right;
408}
409
410div.license {
411 font-size: 80%;
412 /* padding: 0.5em; */
413 text-align: center;
414 margin: 13px 0 -15px;
415}
416
417#sidenavi.noborder {
418 border-right: medium none;
419 border-top: medium none;
420 margin: 0;
421}
422
423#sidenavi {
424 color: #333333;
425 /* float: left; */
426 font-family: Arial,Helvetica,sans-serif;
427 font-size: 18px;
428 line-height: 25px;
429 overflow: hidden;
430 padding: 10px 0 8px 0px;
431 width: 255px;
432}
433
0434
=== added file 'doc/source/percona-theme/static/email-small.png'
1Binary files doc/source/percona-theme/static/email-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/email-small.png 2012-07-04 12:10:50 +0000 differ435Binary files doc/source/percona-theme/static/email-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/email-small.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/jquery.min.js'
--- doc/source/percona-theme/static/jquery.min.js 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/static/jquery.min.js 2012-07-04 12:10:50 +0000
@@ -0,0 +1,154 @@
1/*!
2 * jQuery JavaScript Library v1.4.2
3 * http://jquery.com/
4 *
5 * Copyright 2010, John Resig
6 * Dual licensed under the MIT or GPL Version 2 licenses.
7 * http://jquery.org/license
8 *
9 * Includes Sizzle.js
10 * http://sizzlejs.com/
11 * Copyright 2010, The Dojo Foundation
12 * Released under the MIT, BSD, and GPL Licenses.
13 *
14 * Date: Sat Feb 13 22:33:48 2010 -0500
15 */
16(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(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 X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
17e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
18j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
19"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
20true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
21Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
22(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
23a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
24"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
25function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
26c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
27L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
28"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
29a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
30d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
31a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
32!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
33true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
34var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
35parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
36false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
37s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
38applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
39else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);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===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
40a,b)})},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 f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
41w)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 Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
42cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(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(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
43i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
44" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
45this.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(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
46e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
47c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
48a[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:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
49function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
50k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
51C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
52null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
53e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
54f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
55if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===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 originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
56fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;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=s.documentElement;d=s.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||
57d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)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,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
58"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
59a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
60isImmediatePropagationStopped:Y};var Da=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){}},Ea=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?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
61{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)return na("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)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
62if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=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(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
63e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.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 fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
64"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
65d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
66!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,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]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
67toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
68u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}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(" "),
69function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",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){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
70if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
71e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
72t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
73g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
74for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
751)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
76CLASS:/\.((?:[\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")}},
77relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
78l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
79h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
80CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
81g);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,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
82text: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)}},
83setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
84h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
85m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
86"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
87h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
88!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
89h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
90q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
91if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
92(function(){var g=s.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(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
93function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
94gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
95c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
96{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
97"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){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},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",
98d)},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")?
99a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
1001&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===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 Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
101a:b+"></"+d+">"},F={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,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
102c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).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},
103wrapInner: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)})},
104prepend: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,
105this.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,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}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);
106return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
107""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);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(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
108this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});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){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
109u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
1101?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
111return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
112""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
113c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
114c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
115function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
116Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
117"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
118a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
119a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
120"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
121serialize: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||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
122function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},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,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
123global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
124e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
125"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
126false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
127false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
128c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
129d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
130g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
1311223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
132"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
133if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
134this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
135"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
136animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
137j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
138this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
139"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+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]||
140c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
141this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},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=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
142this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
143e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,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||
144c.fx.stop()},stop:function(){clearInterval(W);W=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};c.fn.offset="getBoundingClientRect"in s.documentElement?
145function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
146this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
147k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
148f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||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>";
149a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
150c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
151d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
152f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.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(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
153"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
154e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
0155
=== added file 'doc/source/percona-theme/static/percona.com.css'
--- doc/source/percona-theme/static/percona.com.css 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/static/percona.com.css 2012-07-04 12:10:50 +0000
@@ -0,0 +1,1850 @@
1body, html{
2 height:100%;
3 margin:0;
4 padding:0;
5 font-size: 12px;
6 line-height: 16px;
7 font-family: Arial;
8 color: #333333;
9}
10
11form{
12 display:inline
13}
14
15a, a:visited{
16 border:none;
17 cursor:pointer;
18 color: #d5390b;
19 text-decoration: underline;
20}
21a:hover
22{
23 color: #712000;
24 text-decoration: underline;
25}
26
27img{
28 border:none
29}
30
31div,img{
32 behavior:url(/static/css/iepngfix.htc)
33}
34
35em
36{
37 font-style: italic;
38}
39
40del
41{
42 text-decoration: line-through;
43}
44
45.hidden{
46 display:none
47}
48
49strong {
50 font-weight: bold;
51}
52
53html, body {
54 height: 100%;
55}
56
57#stickywrapper {
58 position: relative;
59 min-height: 100%;
60}
61
62* html #stickywrapper {
63 height: 100%;
64}
65
66#stickycontent {
67 padding-bottom: 102px;
68}
69
70#stickyfooter {
71 position: relative;
72 margin: -97px auto 0 auto;
73}
74a.links
75{
76 font-style: oblique;
77 text-decoration: underline;
78}
79span.subpart
80{
81 font-weight: bold;
82}
83
84/**
85 * LAYOUT
86 */
87
88#header{
89 background:#333;
90 height:95px;
91 overflow:hidden;
92 zoom:1
93}
94
95#header .header{
96 height:95px;
97 margin:0 auto;
98 overflow:hidden;
99 width:960px;
100 zoom:1
101}
102#header .header .logo{
103 float:left;
104 overflow:hidden;
105 padding:20px 0;
106 width:240px;
107 zoom:1
108}
109
110#header .header .logo
111{
112 overflow: hidden;
113 zoom: 1;
114 float: left;
115 width: 240px;
116 padding: 20px 0px;
117}
118
119#header .header .right
120{
121 overflow: hidden;
122 zoom: 1;
123 float: left;
124 width: 720px;
125 height: 35px;
126 padding: 30px 0px;
127}
128
129
130#header .header .right .searchlink
131{
132 overflow: hidden;
133 zoom: 1;
134 width: 35px;
135 height: 35px;
136 float: right;
137 padding: 0px 0px 0px 10px;
138}
139
140
141#header .header .right .navicontainer
142{
143 overflow: hidden;
144 zoom: 1;
145 float: right;
146 height: 35px;
147 background: #ffffff url(ui-navi-l.png) top left no-repeat;
148}
149
150#header .header .right .navi
151{
152 overflow: hidden;
153 zoom: 1;
154 height: 27px;
155 padding: 4px 10px;
156 background: url(ui-navi-r.png) top right no-repeat;
157}
158
159#header .header .right .navicontainer .navi span
160{
161 overflow: hidden;
162 zoom: 1;
163 height: 27px;
164 float: left;
165 margin: 0px;
166}
167#header .header .right .navicontainer .navi span:hover
168{
169 background: #f0f0f0 url(ui-navi-hover-l.png) top left no-repeat;
170}
171#header .header .right .navicontainer .navi span.selected, #header .header .right .navicontainer .navi span.selected:hover
172{
173 background: #d5390b url(ui-navi-sel-l.png) top left no-repeat;
174}
175
176#header .header .right .navicontainer .navi span a, #header .header .right .navicontainer .navi span a:visited
177{
178 display: block;
179 padding: 6px 10px 4px 10px;
180 height: 17px;
181 font-family: Arial, Helvetica, sans-serif;
182 font-size: 14px;
183 line-height: 14px;
184 color: #000000;
185 text-decoration: none;
186}
187#header .header .right .navicontainer .navi span a:hover
188{
189 background: url(ui-navi-hover-r.png) top right no-repeat;
190}
191#header .header .right .navicontainer .navi span.selected a.selected, #header .header .right .navicontainer .navi span.selected a.selected:visited, #header .header .right .navicontainer .navi span.selected a.selected:hover
192{
193 background: url(ui-navi-sel-r.png) top right no-repeat;
194 color: #ffffff;
195}
196
197
198
199/*
200 * Banners
201 */
202
203#slogan
204{
205 overflow: hidden;
206 zoom: 1;
207 height: 125px;
208 background: #d24300 url(ui-orange-front.png) bottom center no-repeat;
209 text-align: center;
210}
211
212#stripe
213{
214 overflow: hidden;
215 zoom: 1;
216 height: 20px;
217 background: #d24300 url(ui-orange-content.png) top center no-repeat;
218}
219
220
221
222/*
223 * Footer
224 */
225
226#footer
227{
228 overflow: hidden;
229 zoom: 1;
230 background: #333333;
231 border-top: 2px #d95200 solid;
232}
233
234#footer .footer
235{
236 overflow: hidden;
237 zoom: 1;
238 width: 960px;
239 margin: 0px auto;
240 padding: 10px 0px;
241}
242
243#footer .footer .logo
244{
245 overflow: hidden;
246 zoom: 1;
247 float: left;
248 padding: 17px 0px 0px 0px;
249}
250
251#footer .footer .text
252{
253 overflow: hidden;
254 zoom: 1;
255 float: right;
256 text-align: right;
257 font-family: Arial, Helvetica, sans-serif;
258 font-size: 11px;
259 line-height: 15px;
260 color: #e0e0e0;
261}
262
263#footer .footer .text a, #footer .footer .text a:visited
264{
265 color: #e0e0e0;
266 text-decoration: none;
267}
268#footer .footer .text a:hover
269{
270 color: #ffffff;
271 text-decoration: underline;
272}
273
274
275/*
276 * Menu Dropdowns
277 */
278
279div.navi-dropdown
280{
281 display: none;
282 position: absolute;
283 overflow: hidden;
284 zoom: 1;
285 width: 255px;
286 z-index: 900;
287}
288
289div.navi-dropdown .navi-dropdown-header-l
290{
291 overflow: hidden;
292 zoom: 1;
293 width: 255px;
294 height: 20px;
295 background: url(ui-dropdown-header-l.png) top left no-repeat;
296}
297
298div.navi-dropdown .navi-dropdown-header-r
299{
300 overflow: hidden;
301 zoom: 1;
302 width: 255px;
303 height: 20px;
304 background: url(ui-dropdown-header-r.png) top left no-repeat;
305}
306
307div.navi-dropdown .navi-dropdown-content
308{
309 overflow: hidden;
310 zoom: 1;
311 width: 225px;
312 padding: 0px 15px 5px 15px;
313 background: #ffffff url(ui-dropdown-bg.png) repeat-y;
314 font-family: Arial, Helvetica, sans-serif;
315 font-size: 14px;
316 line-height: 20px;
317 color: #333333;
318}
319
320div.navi-dropdown .navi-dropdown-content .item
321{
322 padding: 3px 0px 1px 0px;
323}
324
325div.navi-dropdown .navi-dropdown-content a, div.navi-dropdown .navi-dropdown-content a:visited
326{
327 display: block;
328 color: #333333;
329 text-decoration: none;
330}
331div.navi-dropdown .navi-dropdown-content a:hover
332{
333 color: #d12907;
334 text-decoration: underline;
335}
336
337div.navi-dropdown .navi-dropdown-footer
338{
339 overflow: hidden;
340 zoom: 1;
341 width: 255px;
342 height: 10px;
343 background: url(ui-dropdown-footer.png) top left no-repeat;
344}
345
346
347div.search-dropdown
348{
349 display: none;
350 position: absolute;
351 overflow: hidden;
352 zoom: 1;
353 width: 255px;
354}
355
356div.search-dropdown .search-dropdown-header
357{
358 overflow: hidden;
359 zoom: 1;
360 width: 255px;
361 height: 20px;
362 background: url(ui-dropdown-header-search.png) top left no-repeat;
363}
364
365div.search-dropdown .search-dropdown-content
366{
367 overflow: hidden;
368 zoom: 1;
369 width: 225px;
370 padding: 0px 15px 5px 15px;
371 background: #ffffff url(ui-dropdown-bg.png) repeat-y;
372 font-family: Arial, Helvetica, sans-serif;
373 font-size: 14px;
374 line-height: 20px;
375 color: #333333;
376}
377
378div.search-dropdown .search-dropdown-content .form
379{
380 padding-top: 2px;
381}
382
383div.search-dropdown .search-dropdown-content .form input
384{
385 border: 1px #c0c0c0 solid;
386 padding: 4px;
387 width: 210px;
388 outline: none;
389}
390div.search-dropdown .search-dropdown-content .form input:focus
391{
392 border: 1px #707070 solid;
393 outline: none;
394}
395
396div.search-dropdown .search-dropdown-footer
397{
398 overflow: hidden;
399 zoom: 1;
400 width: 255px;
401 height: 10px;
402 background: url(ui-dropdown-footer.png) top left no-repeat;
403}
404
405
406
407#left-column .navi-title {
408 font-size: 15px;
409 color: #d5390b;
410 margin-bottom: 20px;
411}
412
413#left-column .navi-title span {
414 background: url("left_menu_title_bullet.png") right top no-repeat;
415 padding-right: 20px;
416 padding-left: 10px;
417}
418
419#left-column .item, #left-column .subitem {
420
421 border-top: 1px solid #f3f1ee;
422}
423
424#left-column .subitem {
425 padding-left: 15px;
426}
427
428#left-column .item a, #left-column .subitem a {
429 min-height: 18px;
430 /* line-height: 23px; */
431
432 color: #a3a3a3;
433 font-size: 11px;
434 text-decoration: none;
435 display: block;
436 padding: 5px 0 2px 10px;
437 background: url('left_column_item_bulletpoint.png') left no-repeat;
438}
439#left-column .item a:hover {
440 text-decoration: underline;
441}
442
443#left-column .selected > a {
444 color: #b82c02;
445 background: url('left_menu_item_selected_bulletpoint.png') left no-repeat;
446}
447
448/*
449 * Front page
450 */
451.frontpage-text {
452 font-size: 13px;
453}
454div.frontpage-banners
455{
456 overflow: hidden;
457 zoom: 1;
458 width: 960px;
459 margin: 0px;
460 margin-bottom: 20px;
461 padding: 0px;
462}
463
464div.frontpage-banners div.frontpage-banners-container
465{
466 overflow: hidden;
467 zoom: 1;
468 width: 960px;
469 height: 200px;
470 padding-bottom: 30px;
471 z-index: 100;
472}
473
474div.frontpage-banners a.nivo-imageLink
475{
476 position: absolute;
477 top: 0px;
478 left: 0px;
479 width: 960px;
480 height: 200px;
481 border: 0;
482 padding: 0;
483 margin: 0;
484 z-index: 20;
485 display: none;
486}
487
488
489div.frontpage-banners div.frontpage-banners-container div.nivo-directionNav
490{
491 width: 1px;
492 height: 1px;
493 display: none !important;
494 z-index: 18 !important;
495}
496
497div.frontpage-banners div.frontpage-banners-container div.nivo-controlNav
498{
499 position: absolute;
500 top: 200px;
501 width: 960px;
502 text-align: center;
503 font-size: 28px;
504 line-height: 25px;
505}
506
507div.frontpage-banners div.frontpage-banners-container div.nivo-controlNav a
508{
509 padding: 0px 3px;
510 text-decoration: none !important;
511 color: #919191 !important;
512}
513
514div.frontpage-banners div.frontpage-banners-container div.nivo-controlNav a.active
515{
516 color: #d12907 !important;
517}
518
519div.frontpage-banners div.frontpage-banners-selector
520{
521 overflow: hidden;
522 zoom: 1;
523 height: 20px;
524 text-align: center;
525}
526
527div.frontpage-main
528{
529 overflow: hidden;
530 zoom: 1;
531 width: 960px;
532 padding: 0px;
533}
534
535div.frontpage-boxes
536{
537 overflow: hidden;
538 zoom: 1;
539 margin: 25px 0px 0px 0px;
540 width: 515px;
541 padding: 0px;
542}
543
544div.frontpage-boxes div.frontpage-boxes-selector
545{
546 overflow: hidden;
547 zoom: 1;
548 width: 515px;
549}
550
551div.frontpage-boxes div.frontpage-boxes-selector div.frontpage-boxes-selector-item
552{
553 overflow: hidden;
554 zoom: 1;
555 width: 127px;
556 float: left;
557 margin-left: -1px;
558 border-top: 1px #cccccc solid;
559 border-left: 1px #cccccc solid;
560 border-right: 1px #cccccc solid;
561 border-bottom: 1px #cccccc solid;
562 text-align: center;
563 margin-top: 10px;
564 padding: 0px 0px 0px 0px;
565}
566
567div.frontpage-boxes div.frontpage-boxes-selector div.frontpage-boxes-selector-item:first-child
568{
569 margin-left: 0px;
570}
571
572div.frontpage-boxes div.frontpage-boxes-selector div.frontpage-boxes-selector-item.selected
573{
574 background: url(ui-tab-bg.png) repeat-x;
575 margin-top: 0px;
576 border-bottom: none;
577 padding: 5px 0px 6px 0px;
578}
579
580div.frontpage-boxes div.frontpage-boxes-selector div.frontpage-boxes-selector-item a
581{
582 display: block;
583 font-size: 13px;
584 line-height: 13px;
585 font-weight: bold;
586 color: #444444 !important;
587 text-decoration: none !important;
588 padding: 9px 0px 8px 0px;
589}
590
591div.frontpage-boxes div.frontpage-boxes-container
592{
593 overflow: hidden;
594 zoom: 1;
595 font-size: 12px;
596 width: 511px;
597 height: 150px;
598 padding-top: 20px;
599 border-left: 1px #cccccc solid;
600 border-right: 1px #cccccc solid;
601 border-bottom: 1px #cccccc solid;
602 padding-left: 0px;
603}
604
605div.frontpage-boxes div.frontpage-boxes-container div.frontpage-box img
606{
607 padding: 5px 15px 55px 0;
608 float:left;
609}
610
611.innerpage-box {
612 padding: 10px 20px;
613}
614/*
615 * Content
616 */
617
618#contentcontainer
619{
620 overflow: hidden;
621 zoom: 1;
622 width: 960px;
623 padding: 30px 0px;
624 margin: 0px auto;
625}
626
627
628.document p
629{
630 margin-bottom:15px;
631}
632
633.document h1
634{
635 font-size: 23px;
636 line-height: 30px;
637 margin: 5px 0px 10px 0px;
638 color: #d5390b;
639}
640
641.document h2
642{
643 font-size: 17px;
644 line-height: 20px;
645 padding: 0px 0px 3px 0px;
646 margin: 30px 0px 15px 0px;
647 color: #000000;
648 border-bottom: 1px #e0e0e0 solid;
649}
650
651.document h3
652{
653 font-weight: bold;
654 font-size: 14px;
655 line-height: 17px;
656 margin: 20px 0px 5px 0px;
657 color: #000000;
658}
659
660.document dl dt
661{
662 font-weight: bold;
663 margin-top: 10px;
664 margin-bottom: 10px;
665}
666
667.document dl dd
668{
669 padding: 0px 0px 0px 30px;
670}
671
672.document ol
673{
674 list-style-type: decimal;
675 padding: 0px 0px 0px 30px;
676}
677
678.document ol li
679{
680 list-style-type: decimal;
681 margin: 8px 0px;
682}
683
684/*
685.document h4
686{
687 font-family: Arial, Helvetica, sans-serif;
688 font-size: 14px;
689 line-height: 14px;
690 font-weight: bold;
691 padding: 5px 0px 0px 0px;
692 margin: -16px 0px 20px 0px;
693 color: #000000;
694 border-top: 1px #e0e0e0 solid;
695}
696.document h4 a, .document h4 a:visited
697{
698 color: #000000;
699 text-decoration: none;
700}
701.document h4 a:hover
702{
703 color: #d12907;
704 text-decoration: none;
705}
706
707
708
709.document ul
710{
711 list-style-type: square;
712 padding: 0px 0px 0px 30px;
713}
714
715.document ul li
716{
717 list-style-type: square;
718 margin: 8px 0px;
719}
720
721
722
723.document div.pagecontent
724{
725 overflow: hidden;
726 zoom: 1;
727}
728*/
729
730
731/*
732 * Content box
733 */
734/*
735div.contentbox
736{
737 border: 1px #e0e0e0 solid;
738}
739
740div.contentbox div.title
741{
742 font-size: 16px;
743 line-height: 20px;
744 font-weight: bold;
745 padding: 8px 15px 2px 15px;
746 background: url(ui-leftnavi-sel.png) repeat-x;
747}
748
749div.contentbox div.content
750{
751 padding: 15px;
752}
753*/
754
755
756div.side-column-block
757{
758 width: 220px;
759 position: relative;
760 margin: 0 0 20px;
761}
762
763div.side-column-block .header
764{
765 background: url("boxes_header_bulletpoint.png") left no-repeat;
766 text-align: left;
767 font-size: 14px;
768 line-height: 20px;
769 padding: 3px 0px 3px 20px;
770 margin-bottom: 10px;
771 font-weight: bold;
772 border-bottom: 1px solid #efece8;
773
774}
775
776div.side-column-block div.content
777{
778 font-size: 11px;
779 padding-left: 5px;
780}
781
782div.side-column-block div.content div.more
783{
784 overflow: hidden;
785 zoom: 1;
786 text-align: right;
787 padding: 5px 0px 0px 0px;
788 font-size: 11px;
789 line-height: 17px;
790}
791div.side-column-block div.content li {
792 padding-left: 10px;
793
794 background: url('boxes_list_bulletpoints.png') left top no-repeat;
795 margin-bottom:7px;
796}
797
798div.side-column-block .content a {
799 color: #b82c02;
800}
801
802div.side-column-block .content table.call-us {
803 width: 100%;
804}
805div.side-column-block .content table.call-us tr {
806 margin-bottom: 10px;
807}
808div.side-column-block .content table.call-us th {
809 vertical-align: text-top;
810 color: #e05d02;
811 font-size: 11px;
812}
813div.side-column-block .content table.call-us td, div.side-column-block .content table.call-us th {
814 padding-bottom: 10px;
815}
816div.side-column-block .content table.call-us td a {
817 color: #e05d02;
818}
819
820div.side-column-block .content .button-customer-login span{
821 display: none;
822}
823.side-column-block .content .button-customer-login {
824 display: block;
825 background: url('button-customer-login.png') top left no-repeat;
826 width: 220px;
827 height: 30px;
828 margin-top: 12px;
829}
830
831.side-column-block .side-contact-buttons {
832 margin: 0 !important;
833 padding-left: 0px !important;
834}
835.side-column-block .side-contact-buttons li {
836 margin-bottom: 5px;
837 list-style: none !important;
838}
839.side-column-block .side-contact-buttons a {
840 display: block;
841 width: 228px;
842 height: 32px;
843 background: url('side_buttons.png') top left no-repeat;
844}
845.side-column-block .side-contact-buttons a.contact-me { background-position: 0px 0px; }
846.side-column-block .side-contact-buttons a.webinar { background-position: 0px -36px; }
847.side-column-block .side-contact-buttons a.download-software { background-position: 0px -71px; }
848.side-column-block .side-contact-buttons a.newsletters { background-position: 0px -108px; }
849
850.side-column-block .side-contact-buttons a span {
851 display: none;
852}
853
854
855.side-column-block .content .numbers
856{
857 padding-left: 45px;
858 background: url(phone.png) 2px center no-repeat;
859 line-height: 18px;
860 text-align: right;
861 padding-right: 5px;
862}
863
864/*
865 * Our team list
866 */
867
868.our-team-page h2
869{
870 clear: both;
871}
872
873div.our-team-item
874{
875 text-align: center;
876 overflow: hidden;
877 zoom: 1;
878 width: 162px;
879 margin-left: 5px;
880 height: 200px;
881 float: left;
882}
883
884.pagecontent div.our-team-profile {
885 height: inherit;
886 margin-left: 0;
887}
888.pagecontent div.our-team-profile img{
889 margin-top: 20px;
890 margin-left: 0;
891 margin-right: 0;
892}
893div.our-team-item .img img
894{
895 border: 1px #e0e0e0 solid;
896 padding: 2px;
897}
898
899/*
900 * Phone Directory
901 */
902
903table.phonetable {
904 margin-top: 1em;
905 border-collapse: collapse;
906}
907
908.phonetable {
909 margin-left: 2em;
910}
911
912table.phonetable th,
913table.phonetable tr {
914 text-align: left;
915}
916
917table.phonetable th {
918 border: 1px #e0e0e0 solid;
919 background: #f8f8f8;
920 padding: 7px;
921 font-weight: bold;
922}
923
924table.phonetable td {
925 border: 1px #e0e0e0 solid;
926 padding: 7px ;
927}
928
929table.phonetable .label {
930 text-align: left;
931}
932
933table.phonetable td.label {
934}
935
936/*
937 * contact forms
938 */
939.form-item
940{
941 clear: both;
942 margin-top: 1em;
943 position: relative;
944}
945.form-item label
946{
947 display: block;
948 font-weight: bold;
949 position: absolute;
950 top: 0;
951 left: 0;
952 width: 13em;
953}
954.form-required
955{
956 color: #fa0;
957 font-weight: bold;
958}
959.form-item .description
960{
961 color: #888;
962 font-size: 0.85em;
963 line-height: 150%;
964 position: relative;
965 left: 14em;
966}
967#edit-submitbutton
968{
969 position: relative;
970 left: 12em;
971 margin: 1em 0;
972}
973.form-item input[type=text],
974.form-item select,
975.form-item textarea
976{
977 border: 1px solid #CCC;
978 width: 350px;
979 position: relative;
980 top: 0;
981 left: 12em;
982}
983.form-item textarea
984{
985 height: 12em;
986 padding: 3px;
987}
988.form-item-spacer
989{
990 padding-top: 1em;
991}
992.form-item #captcha
993{
994 position: relative;
995 top: 0;
996 left: 12em;
997}
998#edit-submitted-captcha
999{
1000 margin-top: 0.5em;
1001 width: 154px;
1002}
1003fieldset.form-item-set
1004{
1005 border: 1px solid #ccc;
1006 display: block;
1007 margin: 12px 0;
1008 padding: 12px;
1009}
1010fieldset.form-item-set legend
1011{
1012 border: none;
1013 display: block;
1014 padding: 0 2px;
1015}
1016div.error
1017{
1018 background: #fff;
1019 border: solid 1px #c52020;
1020 color: #C52020;
1021 padding: 5px;
1022}
1023div.messages
1024{
1025 margin: 5px 20px;
1026 font-size: 11px;
1027}
1028div.messages ul,
1029div.messages ul li
1030{
1031 list-style-image: none;
1032 list-style-type: none;
1033}
1034div.messages ul li
1035{
1036 padding: 0 0 0.2em 0;
1037}
1038.form-item .error
1039{
1040 background-color :#fdd;
1041}
1042
1043#emergency-contacts .node-field-name
1044{
1045 text-align: right;
1046 font-weight: bold;
1047 padding-right: 1em;
1048}
1049#emergency-contacts .node-field-value-phone
1050{
1051 font-weight: bold;
1052 color: #137F00;
1053}
1054#emergency-contacts .node-field-help
1055{
1056 font-weight: bold;
1057}
1058
1059/*
1060 * compact template
1061 */
1062#compact_footer
1063{
1064 width: auto !important;
1065}
1066#compact_contentcontainer
1067{
1068 overflow: hidden;
1069 zoom: 1;
1070 width: auto;
1071 padding: 30px 0px;
1072 margin: 0px 20px;
1073}
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089.content-featured-box {
1090 float: right;
1091 background-color: #f9f9f9;
1092 color: #999999;
1093 font-size: 11px;
1094 padding: 20px;
1095 width: 130px;
1096 margin: 0px 0 10px 10px;
1097}
1098.content-featured-box .footer {
1099 margin-top: 10px;
1100 text-align: right;
1101 color: #666666;
1102 font-size: 11px;
1103}
1104.content-featured-box .footer em {
1105 font-style: normal;
1106 font-size: 11px;
1107}
1108
1109.document ul {
1110 margin-left: 5px;
1111 padding-left: 15px;
1112 margin-bottom: 15px;
1113}
1114
1115.document ul li {
1116 list-style-image: url('content_list_bulletpoint.png');
1117 margin-bottom: 5px;
1118 line-height: 16px;
1119}
1120
1121.document ul.alt-list li {
1122 list-style-image: url('content_list_bulletpoint_alt.png');
1123 font-size: 13px;
1124}
1125
1126.document ul.alt-list li a {
1127 text-decoration: none;
1128
1129}
1130
1131.field-row {
1132 margin-bottom: 20px;
1133}
1134.field-row label {
1135 display:block;
1136 width: 80px;
1137 color: #cc3300;
1138 float: left;
1139}
1140.field-row .field {
1141 display: block;
1142 width: 400px;
1143 float: left;
1144}
1145.field-row:after {
1146 content: ".";
1147 display: block;
1148 visibility: hidden;
1149 height: 0;
1150 clear:both;
1151}
1152
1153/* **************************************************************************************** */
1154/*
1155 * Customer list
1156 */
1157
1158.custlogo img
1159{
1160 /* Images are 175px wide; three side-by-side in a 720px div means each has
1161 * roughly 240px of space to occupy. */
1162 padding: 20px;
1163 border: 1px solid white;
1164}
1165
1166.custlogo img:hover
1167{
1168 border: 1px solid gray;
1169}
1170
1171/*
1172 * Form table
1173 */
1174
1175table.formtable
1176{
1177 border-collapse: collapse;
1178}
1179
1180table.formtable th
1181{
1182 font-weight: normal;
1183 white-space: nowrap;
1184 padding: 4px 20px 4px 0px;
1185}
1186
1187table.formtable td
1188{
1189 padding: 4px 0px 4px 0px;
1190}
1191
1192table.formtable td input[type='text'],
1193table.formtable td select
1194{
1195 border: 1px #e0e0e0 solid;
1196 padding: 4px;
1197 width: 400px;
1198}
1199
1200table.formtable td.submit
1201{
1202 padding: 10px 0px 0px 0px;
1203 text-align: center;
1204}
1205
1206
1207/*
1208 * Data table
1209 */
1210
1211table.datatable
1212{
1213 margin-top: 1em;
1214 border-collapse: collapse;
1215}
1216.datatable
1217{
1218 margin-left: 2em;
1219}
1220table.datatable th,
1221table.datatable tr {
1222 text-align: center;
1223}
1224
1225table.datatable th
1226{
1227 border: 1px #e0e0e0 solid;
1228 background: #f8f8f8;
1229 padding: 7px;
1230 font-weight: bold;
1231}
1232
1233table.datatable td
1234{
1235 border: 1px #e0e0e0 solid;
1236 padding: 7px;
1237}
1238
1239table.datatable .label {
1240 text-align: left;
1241
1242}
1243
1244
1245
1246/*
1247 * Front page blocks
1248 */
1249/*
1250.frontpage-sidebar .header
1251{
1252 padding: 0px 0px 10px 0px;
1253 font-size: 18px;
1254 font-weight: normal;
1255 text-align: center;
1256}
1257.frontpage-sidebar .header.link
1258{
1259 padding: 13px 0px 10px 4px;
1260 text-align: left;
1261}
1262.frontpage-sidebar .header a, .frontpage-sidebar .header a:visited
1263{
1264 color: #333333 !important;
1265 text-decoration: none !important;
1266}
1267.frontpage-sidebar .header a:hover
1268{
1269 color: #d12907 !important;
1270 text-decoration: none !important;
1271}
1272
1273.frontpage-sidebar .header.bloglink
1274{
1275 font-size:16px;
1276 padding: 0px 0px 10px 10px;
1277 text-align: center;
1278}
1279
1280.frontpage-sidebar .header.blogheader
1281{
1282 font-weight:normal;
1283 text-align:center;
1284 font-size: 15px;
1285 padding: 13px 10px 10px 0px;
1286}
1287
1288.frontpage-sidebar .header a.email
1289{
1290 padding: 13px 10px 10px 40px;
1291 background: url(email-small.png) left center no-repeat;
1292}
1293
1294
1295
1296
1297
1298.frontpage-sidebar .eventum a, .frontpage-sidebar .eventum a:visited
1299{
1300 padding: 0px 2px 0px 55px;
1301 font-size: 12px;
1302 line-height: 18px;
1303 text-align: left;
1304 background: url(support-small.png) left center no-repeat;
1305 display: block;
1306 color: #333333 !important;
1307 text-decoration: none !important;
1308}
1309
1310.frontpage-sidebar .eventum a:hover
1311{
1312 color: #d12907 !important;
1313 text-decoration: underline !important;
1314}
1315*/
1316
1317/*
1318 * Presentations
1319 */
1320
1321div.presentation
1322{
1323 border-top: 1px #e0e0e0 dotted;
1324 padding: 15px 0px;
1325}
1326div.presentation:first-child
1327{
1328 margin-top: 0;
1329 border: none;
1330}
1331
1332div.presentation table.presentation
1333{
1334 border-collapse: collapse;
1335}
1336
1337div.presentation table.presentation td div.bordered-image-screenshot
1338{
1339 border: 1px #e0e0e0 solid;
1340 background: #f8f8f8;
1341 padding: 5px;
1342}
1343
1344div.presentation table.presentation td.presentations-descr
1345{
1346
1347 padding-left: 15px;
1348}
1349
1350div.presentation table.presentation td.presentations-descr h4
1351{
1352 font-size: 14px;
1353
1354 font-weight: bold;
1355 margin-top: 0px !important;
1356 margin-bottom: 10px;
1357 border-top: none !important;
1358}
1359
1360.customer-vote {
1361 width: 412px;
1362 text-align: justify;
1363}
1364
1365.training-info-container {
1366 float: right;
1367 width:200px;
1368 background-color:#fff;
1369 padding:10px;
1370 margin:0 15px;
1371 border:1px solid #E0E0E0;
1372}
1373
1374/*
1375 * Software info container
1376 */
1377
1378div.software-info-container
1379{
1380 overflow: hidden;
1381 zoom: 1;
1382 float: right;
1383 padding: 0px 0px 25px 25px;
1384}
1385
1386table.software-info-container
1387{
1388 width: 240px;
1389 border-collapse: collapse;
1390}
1391
1392table.software-info-container td
1393{
1394 border: 1px #e0e0e0 solid;
1395 padding: 10px 10px 10px 10px;
1396}
1397
1398table.software-info-container td.latest
1399{
1400 padding: 10px 10px 10px 62px;
1401 background: url(software-latest.png) 15px center no-repeat;
1402 min-height: 32px;
1403 font-size: 16px;
1404 line-height: 24px;
1405}
1406
1407table.software-info-container td.download a
1408{
1409 font-weight: bold;
1410}
1411
1412table.software-info-container td.download
1413{
1414 padding: 15px 62px 15px 20px;
1415 background: url(software-download.png) 195px center no-repeat;
1416 min-height: 32px;
1417 font-size: 18px;
1418 line-height: 24px;
1419}
1420
1421table.software-info-container td.links
1422{
1423 text-align: left;
1424 padding: 4px 10px 4px 20px;
1425}
1426
1427table.software-info-container td.links div
1428{
1429 margin: 10px 0px;
1430}
1431
1432.inv {
1433 display: none;
1434}
1435
1436/*
1437 * Downloads table
1438 */
1439
1440table.downloadstable
1441{
1442 margin-top: 20px;
1443 border-collapse: collapse;
1444}
1445
1446table.downloadstable th
1447{
1448 border: 1px #e0e0e0 solid;
1449 background: #f8f8f8;
1450 padding: 7px;
1451 font-weight: bold;
1452}
1453
1454table.downloadstable td
1455{
1456 border: 1px #e0e0e0 solid;
1457 padding: 7px;
1458}
1459
1460table.downloadstable td.file
1461{
1462 width: 90%;
1463 text-align: left;
1464}
1465
1466table.downloadstable td.modified
1467{
1468 width: 5%;
1469 text-align: center;
1470 white-space: nowrap;
1471}
1472
1473table.downloadstable td.size
1474{
1475 width: 5%;
1476 text-align: right;
1477 white-space: nowrap;
1478}
1479
1480/*
1481 * Maintenance promo on /downloads
1482 */
1483
1484div.downloads-maintenance-promo, div.downloads-warning
1485{
1486 border: 1px #e0e0e0 solid;
1487 padding: 15px 20px 15px 150px;
1488 margin: 30px 0px;
1489 background: url(shield.png) 35px center no-repeat;
1490}
1491div.downloads-maintenance-promo > .close-button
1492{
1493 float:right;
1494 clear:right;
1495 margin-top:-10px;
1496 margin-right:-15px;
1497 cursor: pointer; cursor: hand;
1498}
1499
1500div.downloads-warning {
1501 background: url(warning.png) 35px center no-repeat;
1502}
1503
1504
1505/*
1506 * Downloads pages
1507 */
1508
1509div.downloads-version
1510{
1511 border-top: 1px #e0e0e0 solid;
1512 margin-top: -10px;
1513 padding-top: 10px;
1514 text-align: right;
1515 font-size: 14px;
1516 line-height: 14px;
1517 font-weight: bold;
1518}
1519
1520div.downloads-anchors
1521{
1522 font-size: 12px;
1523 line-height: 15px;
1524 margin: 20px 0px;
1525}
1526
1527div.downloads-backtotop
1528{
1529 font-size: 12px;
1530 line-height: 15px;
1531 padding-top: 8px;
1532}
1533
1534
1535/*
1536 * Downloads signup
1537 */
1538
1539.downloadsignupdialog .ui-dialog-titlebar
1540{
1541 display: none;
1542}
1543
1544#downloadsignup .title-bar-close {
1545 float:right;
1546 margin-top:-10px;
1547}
1548
1549#downloadsignup h2
1550{
1551 font-family: Arial, Helvetica, sans-serif;
1552 font-size: 22px;
1553 line-height: 22px;
1554 margin: 10px 0px 20px 0px;
1555 color: #d12907;
1556}
1557
1558#downloadsignup .intro
1559{
1560 margin: 10px 0px 15px 0px;
1561}
1562
1563#downloadsignup .form .field
1564{
1565 overflow: hidden;
1566 zoom: 1;
1567 margin: 10px 0px;
1568}
1569
1570#downloadsignup .form .field .label
1571{
1572 overflow: hidden;
1573 zoom: 1;
1574 width: 150px;
1575 float: left;
1576 padding-top: 5px;
1577}
1578
1579#downloadsignup .form .field .element
1580{
1581 overflow: hidden;
1582 zoom: 1;
1583 width: 410px;
1584 float: left;
1585}
1586
1587#downloadsignup .form .field .element input, #downloadsignup .form .field .element select
1588{
1589 width: 400px;
1590 border: 1px #cccccc solid;
1591 padding: 3px;
1592 outline: none;
1593}
1594
1595#downloadsignup .form .field .element input:focus, #downloadsignup .form .field .element select:focus
1596{
1597 border: 1px #333333 solid;
1598 background: #f8f8f8;
1599 outline: none;
1600}
1601
1602#downloadsignup .form .field .radiolist
1603{
1604 overflow: hidden;
1605 zoom: 1;
1606 display: block;
1607 padding: 0;
1608 margin: 0;
1609}
1610
1611#downloadsignup .form .field table.radiolist
1612{
1613 width: 100%;
1614}
1615
1616#downloadsignup .form .field .radiolist td
1617{
1618 width: 25%;
1619}
1620
1621#downloadsignup .form .field div.radiolist label
1622{
1623 display: block;
1624 min-width: 55px;
1625 float: left;
1626 zoom: 1;
1627 padding: 8px 10px 2px 24px !important;
1628 text-indent: -24px;
1629 overflow: auto;
1630}
1631
1632#downloadsignup .form .field table.radiolist label
1633{
1634 padding: 8px 15px 2px 0px !important;
1635 zoom: 1;
1636 display: block;
1637}
1638#downloadsignup .form .field .radiolist label input
1639{
1640 margin: 0px 7px 0px 3px !important;
1641}
1642
1643/*
1644.schedule td {
1645 padding: 3px;
1646 border: 1px solid #eeeeee;
1647 padding-left: 10px;
1648 font-size: 16px;
1649}
1650
1651.tdmini {
1652 font-weight: bold;
1653 font-size: 10px !important;
1654}
1655
1656.tdbreak {
1657 background-color: #ffeeee;
1658 text-align: center;
1659}
1660.trhead td {
1661 background-color: #d12907;
1662 color: #ffffff;
1663 font-weight: bold;
1664}
1665
1666.speaker {
1667 font-size: 10px;
1668}
1669*/
1670/* Tables with bolded-right aligned headers in the first column */
1671/*table.left-headers th {
1672 font-weight: bold;
1673 text-align: right;
1674 padding: 5px 12px;
1675 vertical-align: top;
1676 border-right: 1px solid black;
1677}
1678table.left-headers td {
1679 padding: 5px 12px;
1680}
1681
1682.training-list tr th {
1683 font-weight:bold;
1684}
1685
1686.training-list tr td {
1687 padding-right: 15px;
1688}
1689*/
1690/***
1691 * side style buttons
1692*/
1693.a-btn-container {
1694 overflow:hidden;
1695 border-radius:4px;
1696}
1697.a-btn, .a-btn-new {
1698 width: 218px;
1699 height: 48px;
1700 background: #fdcd34;
1701 background:-webkit-gradient(linear,left top,left bottom,color-stop(##fdcd34,0),color-stop(##d42c14,1));
1702 background:-webkit-linear-gradient(top, #fdcd34 0%, #d42c14 100%);
1703 background:-moz-linear-gradient(top, #fdcd34 0%, #d42c14 100%);
1704 background:-o-linear-gradient(top, #fdcd34 0%, #d42c14 100%);
1705 background:linear-gradient(top, #fdcd34 0%, #d42c14 100%);
1706 filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#fdcd34', endColorstr='#d42c14',GradientType=0 );
1707
1708 padding:0px;
1709
1710 display:inline-block;
1711 position:relative;
1712 -webkit-border-radius:4px;
1713 -moz-border-radius:4px;
1714 border-radius:4px;
1715
1716 overflow:hidden;
1717 -webkit-transition:all 0.3s linear;
1718 -moz-transition:all 0.3s linear;
1719 -o-transition:all 0.3s linear;
1720 transition:all 0.3s linear;
1721 text-decoration: none !important;
1722 border: 1px solid #f08900;
1723 margin-bottom: 10px;
1724}
1725
1726.a-btn-text{
1727 padding-left:10px;
1728 padding-top:5px;
1729 display:block;
1730 font-size:13px;
1731 white-space:nowrap;
1732 color: #ffffff;
1733 -webkit-transition:all 0.3s linear;
1734 -moz-transition:all 0.3s linear;
1735 -o-transition:all 0.3s linear;
1736 transition:all 0.3s linear;
1737
1738}
1739
1740.a-btn-slide-text, .a-btn-fixed-slide-text {
1741 padding-left: 10px;
1742 left:0px;
1743 width:auto;
1744 right:52px;
1745 height:0px;
1746
1747 color:#000000;
1748 font-size:12px;
1749 white-space:nowrap;
1750 font-family:Georgia, serif;
1751 font-style:italic;
1752 text-indent:15px;
1753 overflow:hidden;
1754
1755
1756}
1757.a-btn-fixed-slide-text{
1758 height: 30px;
1759}
1760
1761.a-btn-icon-right{
1762 position:absolute;
1763 right:0px;
1764 top:0px;
1765 height:100%;
1766 width:52px;
1767}
1768
1769.a-btn-icon-right span{
1770 width:38px;
1771 height:38px;
1772
1773 position:absolute;
1774 left:50%;
1775 top:50%;
1776 margin:-20px 0px 0px -20px;
1777 background:transparent url('button-download-icon.png') no-repeat 50% 55%;
1778 -webkit-transition:all 0.3s linear;
1779 -moz-transition:all 0.3s linear;
1780 -o-transition:all 0.3s linear;
1781 transition:all 0.3s linear;
1782
1783}
1784
1785
1786.paper-desc {
1787 padding-left: 20px;
1788}
1789.papers-content h2 a {
1790 text-decoration: none !important;
1791 color: inherit !important;
1792}
1793.paper-author {
1794 padding-bottom: 20px;
1795}
1796.paper-author img {
1797 border: 1px solid #CCCCCC;
1798 display: block;
1799 float: left;
1800 margin-right: 15px;
1801 padding: 1px;
1802 width: 110px;
1803}
1804.paper-author h2 {
1805 border-bottom: 0 !important;
1806 color: #000000;
1807 font-family: Arial,Helvetica,sans-serif;
1808 font-size: 20px;
1809 line-height: 20px;
1810 margin: 30px 0 0 !important;
1811 padding: 0 0 3px;
1812}
1813.paper-author h3 {
1814 color: #555555 !important;
1815 font-family: Times New Roman,serif !important;
1816 font-style: italic;
1817 font-weight: normal !important;
1818 margin-left: 130px !important;
1819 margin-top: 5px !important;
1820}
1821.paper-long-desc {
1822 width: 325px;
1823 float: left;
1824}
1825.paper-long-desc > p{
1826 padding: 0 20px;
1827 margin:0 !important;
1828}
1829.paper-details .paper-thumb {
1830 width: 185px; float: left;
1831}
1832.paper-details .paper-thumb div.content {
1833 padding: 5px;
1834}
1835.paper-details .paper-thumb img {
1836 width: 175px;
1837}
1838.pr-subhead {
1839 font-size: 16px !important;
1840 border: none !important;
1841 text-align: center;
1842 margin-top: 15px !important;
1843 font-style: italic;
1844}
1845
1846
1847.clearer {
1848 clear: both;
1849}
1850
01851
=== added file 'doc/source/percona-theme/static/percona.com.js'
--- doc/source/percona-theme/static/percona.com.js 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/static/percona.com.js 2012-07-04 12:10:50 +0000
@@ -0,0 +1,269 @@
1window.jQuery(function($) {
2
3
4
5function setCookie(c_name, value, expiredays)
6{
7 var exdate = new Date();
8 exdate.setDate(exdate.getDate() + expiredays);
9 document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";path=/;expires=" + exdate.toUTCString());
10}
11
12function getCookie(c_name)
13{
14 if (document.cookie.length > 0)
15 {
16 c_start = document.cookie.indexOf(c_name + "=");
17 if (c_start != -1)
18 {
19 c_start = c_start + c_name.length+1;
20 c_end = document.cookie.indexOf(";",c_start);
21 if (c_end == -1)
22 {
23 c_end = document.cookie.length;
24 }
25 return unescape(document.cookie.substring(c_start, c_end));
26 }
27 }
28 return "";
29}
30
31
32NAVI = new Object();
33
34NAVI.CloseTimer = null;
35
36NAVI.Open = function ( menu_tag, dir )
37{
38 NAVI_CancelTimer();
39 NAVI_Close();
40 SEARCH_CancelTimer();
41 SEARCH_Close();
42 if ('h' == dir)
43 {
44 return;
45 }
46 var pos = $("#navilink-span-"+menu_tag).offset();
47 if (dir=='r')
48 {
49 $("#navi-dropdown-"+menu_tag).css( { "position": "absolute", "left": (pos.left + ($("#navilink-span-"+menu_tag).width()) + 2 - ($("#navi-dropdown-"+menu_tag).width())) + "px", "top": (pos.top + 32) + "px" } );
50 }
51 else
52 {
53 $("#navi-dropdown-"+menu_tag).css( { "position": "absolute", "left": (pos.left) + "px", "top": (pos.top + 32) + "px" } );
54 }
55 $("#navi-dropdown-"+menu_tag).show();
56 $("#navilink-span-"+menu_tag).bind('mouseover',NAVI_CancelTimer);
57 $("#navilink-span-"+menu_tag).bind('mouseout',NAVI_Timer);
58 $("#navi-dropdown-"+menu_tag).bind('mouseover',NAVI_CancelTimer);
59 $("#navi-dropdown-"+menu_tag).bind('mouseout',NAVI_Timer);
60};
61
62function NAVI_Close()
63{
64 $(".navi-dropdown").hide();
65 $("#menu div").unbind('mouseover');
66 $(".dropdown").unbind('mouseover');
67 $(".dropdown").unbind('mouseout');
68
69 $("#search-dropdown").hide();
70 $("#searchlink-anchor").unbind('mouseover');
71 $("#searchlink-anchor").unbind('mouseout');
72 $("#search-dropdown").unbind('mouseover');
73 $("#search-dropdown").unbind('mouseout');
74}
75
76function NAVI_CancelTimer()
77{
78 if (NAVI.CloseTimer!=null)
79 {
80 window.clearTimeout(NAVI.CloseTimer);
81 NAVI.CloseTimer = null;
82 }
83}
84
85function NAVI_Timer()
86{
87 if (NAVI.CloseTimer==null)
88 {
89 NAVI.CloseTimer = window.setTimeout(NAVI_Close, 300);
90 }
91}
92
93
94SUBNAVI = new Object();
95
96SUBNAVI.Open = function ( menu_tag )
97{
98 if ($("#sidesubnavi-" + menu_tag + ':hidden').length)
99 {
100 $(".sidesubnavi").hide();
101 $("#sidesubnavi-"+menu_tag).show();
102 return false;
103 } else {
104 return true;
105 }
106};
107
108
109SEARCH = new Object();
110
111SEARCH.CloseTimer = null;
112
113SEARCH.Open = function()
114{
115 NAVI_CancelTimer();
116 NAVI_Close();
117 SEARCH_CancelTimer();
118 SEARCH_Close();
119 var pos = $("#searchlink-anchor").offset();
120 $("#search-dropdown").css( { "position": "absolute", "left": (pos.left - ($("#search-dropdown").width()) + 40) + "px", "top": (pos.top + 36) + "px" } );
121 $("#search-dropdown").show();
122 $("#searchlink-anchor").bind('mouseover',NAVI_CancelTimer);
123 $("#searchlink-anchor").bind('mouseout',NAVI_Timer);
124 $("#search-dropdown").bind('mouseover',NAVI_CancelTimer);
125 $("#search-dropdown").bind('mouseout',NAVI_Timer);
126 $("#search-input")[0].focus();
127};
128
129function SEARCH_Close()
130{
131 $(".navi-dropdown").hide();
132 $("#menu div").unbind('mouseover');
133 $(".dropdown").unbind('mouseover');
134 $(".dropdown").unbind('mouseout');
135
136 $("#search-dropdown").hide();
137 $("#searchlink-anchor").unbind('mouseover');
138 $("#searchlink-anchor").unbind('mouseout');
139 $("#search-dropdown").unbind('mouseover');
140 $("#search-dropdown").unbind('mouseout');
141}
142
143
144function SEARCH_CancelTimer()
145{
146 if (SEARCH.CloseTimer!=null)
147 {
148 window.clearTimeout(SEARCH.CloseTimer);
149 SEARCH.CloseTimer = null;
150 }
151}
152
153function SEARCH_Timer()
154{
155 if (SEARCH.CloseTimer==null)
156 {
157 SEARCH.CloseTimer = window.setTimeout(SEARCH_Close, 300);
158 }
159}
160
161menuImg1 = new Image(); menuImg1.src = 'http://s1.percona.com/ui-dropdown-header-l.png';
162menuImg2 = new Image(); menuImg2.src = 'http://s2.percona.com/ui-dropdown-header-r.png';
163menuImg3 = new Image(); menuImg3.src = 'http://s3.percona.com/ui-dropdown-header-search.png';
164menuImg4 = new Image(); menuImg4.src = 'http://s0.percona.com/ui-dropdown-bg.png';
165menuImg5 = new Image(); menuImg5.src = 'http://s1.percona.com/ui-dropdown-footer.png';
166
167
168});
169
170
171var Percona = {
172 ssl: false,
173 host: 'www.percona.com'
174};
175/**
176 * @param string selector jQuery selector string
177 */
178Percona.getRecentServerVersion = function(selector)
179{
180 if ('string' != typeof(selector))
181 {
182 alert('Percona.getRecentServerVersion: missed or wrong selector!');
183 }
184 /* Localize jQuery variable */
185 var jQuery;
186 /******** Load jQuery if not present *********/
187 if (window.jQuery === undefined || window.jQuery.fn.jquery !== '1.4.2')
188 {
189 var script_tag = document.createElement('script');
190 script_tag.setAttribute("type","text/javascript");
191 script_tag.setAttribute('src', 'http' + (Percona.ssl ? 's' : '') + ':/' + '/ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
192 script_tag.onload = scriptLoadHandler;
193 script_tag.onreadystatechange = function () /* Same thing but for IE */
194 {
195 if (this.readyState == 'complete' || this.readyState == 'loaded')
196 {
197 scriptLoadHandler();
198 }
199 };
200 /* Try to find the head, otherwise default to the documentElement */
201 (document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_tag);
202 } else {
203 /* The jQuery version on the window is the one we want to use */
204 jQuery = window.jQuery;
205 main();
206 }
207 var scriptLoadHandler_counter = 0;
208 /******** Called once jQuery has loaded ******/
209 function scriptLoadHandler()
210 {
211 if (++scriptLoadHandler_counter > 1)
212 {
213 return;
214 }
215 /* Restore $ and window.jQuery to their previous values and store the
216 new jQuery in our local jQuery variable */
217 jQuery = window.jQuery.noConflict(true);
218 /* Call our main function */
219 main(jQuery);
220 }
221 /******** Our main function ********/
222 function main($)
223 {
224 var fillRecentServerVersion = function($)
225 {
226 if ($(selector).get(0))
227 {
228 $.get('http' + (Percona.ssl ? 's' : '') + ':/' + '/' + Percona.host + '/ajax/server-version/?callback=?', {}, function(json)
229 {
230 if ('object' == typeof(json) && 'string' == typeof(json.recentServerVersion))
231 {
232 $(selector).text(' ' + json.recentServerVersion);
233 }
234 }, 'jsonp');
235 }
236 };
237 $(document).ready(function()
238 {
239 fillRecentServerVersion(jQuery);
240 });
241 }
242};
243
244$(document).ready(function(){
245 $(window).bind("resize", resizeWindow);
246 resizeWindow();
247 function resizeWindow() {
248 var win_w = $(window).width();
249 var ribon = $("#support-ribbon");
250 if(win_w < 1265){
251 if(/mobile/i.test(navigator.userAgent)){
252 ribon.hide();
253 }else{
254 if(ribon.hasClass("vertical")){
255 ribon.removeClass("vertical");
256 ribon.addClass("horizontal");
257 }
258 ribon.css({"left":'50%', "margin-left": '-'+(ribon.width() / 2)+'px'});
259 }
260 }else{
261 if(ribon.hasClass("horizontal")){
262 ribon.addClass("vertical");
263 ribon.removeClass("horizontal");
264 ribon.removeAttr("style");
265 }
266
267 }
268 }
269});
0\ No newline at end of file270\ No newline at end of file
1271
=== added file 'doc/source/percona-theme/static/phone-small.png'
2Binary files doc/source/percona-theme/static/phone-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/phone-small.png 2012-07-04 12:10:50 +0000 differ272Binary files doc/source/percona-theme/static/phone-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/phone-small.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/phone.png'
3Binary files doc/source/percona-theme/static/phone.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/phone.png 2012-07-04 12:10:50 +0000 differ273Binary files doc/source/percona-theme/static/phone.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/phone.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/shield.png'
4Binary files doc/source/percona-theme/static/shield.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/shield.png 2012-07-04 12:10:50 +0000 differ274Binary files doc/source/percona-theme/static/shield.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/shield.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/side_buttons.png'
5Binary files doc/source/percona-theme/static/side_buttons.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/side_buttons.png 2012-07-04 12:10:50 +0000 differ275Binary files doc/source/percona-theme/static/side_buttons.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/side_buttons.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/side_buttons.png.moved'
6Binary files doc/source/percona-theme/static/side_buttons.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/side_buttons.png.moved 2012-07-04 12:10:50 +0000 differ276Binary files doc/source/percona-theme/static/side_buttons.png.moved 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/side_buttons.png.moved 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/sidebar.js'
--- doc/source/percona-theme/static/sidebar.js 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/static/sidebar.js 2012-07-04 12:10:50 +0000
@@ -0,0 +1,151 @@
1/*
2 * sidebar.js
3 * ~~~~~~~~~~
4 *
5 * This script makes the Sphinx sidebar collapsible.
6 *
7 * .sphinxsidebar contains .sphinxsidebarwrapper. This script adds
8 * in .sphixsidebar, after .sphinxsidebarwrapper, the #sidebarbutton
9 * used to collapse and expand the sidebar.
10 *
11 * When the sidebar is collapsed the .sphinxsidebarwrapper is hidden
12 * and the width of the sidebar and the margin-left of the document
13 * are decreased. When the sidebar is expanded the opposite happens.
14 * This script saves a per-browser/per-session cookie used to
15 * remember the position of the sidebar among the pages.
16 * Once the browser is closed the cookie is deleted and the position
17 * reset to the default (expanded).
18 *
19 * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
20 * :license: BSD, see LICENSE for details.
21 *
22 */
23
24$(function() {
25 // global elements used by the functions.
26 // the 'sidebarbutton' element is defined as global after its
27 // creation, in the add_sidebar_button function
28 var bodywrapper = $('.bodywrapper');
29 var sidebar = $('.sphinxsidebar');
30 var sidebarwrapper = $('.sphinxsidebarwrapper');
31
32 // for some reason, the document has no sidebar; do not run into errors
33 if (!sidebar.length) return;
34
35 // original margin-left of the bodywrapper and width of the sidebar
36 // with the sidebar expanded
37 var bw_margin_expanded = bodywrapper.css('margin-left');
38 var ssb_width_expanded = sidebar.width();
39
40 // margin-left of the bodywrapper and width of the sidebar
41 // with the sidebar collapsed
42 var bw_margin_collapsed = '.8em';
43 var ssb_width_collapsed = '.8em';
44
45 // colors used by the current theme
46 var dark_color = $('.related').css('background-color');
47 var light_color = $('.document').css('background-color');
48
49 function sidebar_is_collapsed() {
50 return sidebarwrapper.is(':not(:visible)');
51 }
52
53 function toggle_sidebar() {
54 if (sidebar_is_collapsed())
55 expand_sidebar();
56 else
57 collapse_sidebar();
58 }
59
60 function collapse_sidebar() {
61 sidebarwrapper.hide();
62 sidebar.css('width', ssb_width_collapsed);
63 bodywrapper.css('margin-left', bw_margin_collapsed);
64 sidebarbutton.css({
65 'margin-left': '0',
66 'height': bodywrapper.height()
67 });
68 sidebarbutton.find('span').text('»');
69 sidebarbutton.attr('title', _('Expand sidebar'));
70 document.cookie = 'sidebar=collapsed';
71 }
72
73 function expand_sidebar() {
74 bodywrapper.css('margin-left', bw_margin_expanded);
75 sidebar.css('width', ssb_width_expanded);
76 sidebarwrapper.show();
77 sidebarbutton.css({
78 'margin-left': ssb_width_expanded-12,
79 'height': bodywrapper.height()
80 });
81 sidebarbutton.find('span').text('«');
82 sidebarbutton.attr('title', _('Collapse sidebar'));
83 document.cookie = 'sidebar=expanded';
84 }
85
86 function add_sidebar_button() {
87 sidebarwrapper.css({
88 'float': 'left',
89 'margin-right': '0',
90 'width': ssb_width_expanded - 28
91 });
92 // create the button
93 sidebar.append(
94 '<div id="sidebarbutton"><span>&laquo;</span></div>'
95 );
96 var sidebarbutton = $('#sidebarbutton');
97 light_color = sidebarbutton.css('background-color');
98 // find the height of the viewport to center the '<<' in the page
99 var viewport_height;
100 if (window.innerHeight)
101 viewport_height = window.innerHeight;
102 else
103 viewport_height = $(window).height();
104 sidebarbutton.find('span').css({
105 'display': 'block',
106 'margin-top': (viewport_height - sidebar.position().top - 20) / 2
107 });
108
109 sidebarbutton.click(toggle_sidebar);
110 sidebarbutton.attr('title', _('Collapse sidebar'));
111 sidebarbutton.css({
112 'color': '#FFFFFF',
113 'border-left': '1px solid ' + dark_color,
114 'font-size': '1.2em',
115 'cursor': 'pointer',
116 'height': bodywrapper.height(),
117 'padding-top': '1px',
118 'margin-left': ssb_width_expanded - 12
119 });
120
121 sidebarbutton.hover(
122 function () {
123 $(this).css('background-color', dark_color);
124 },
125 function () {
126 $(this).css('background-color', light_color);
127 }
128 );
129 }
130
131 function set_position_from_cookie() {
132 if (!document.cookie)
133 return;
134 var items = document.cookie.split(';');
135 for(var k=0; k<items.length; k++) {
136 var key_val = items[k].split('=');
137 var key = key_val[0];
138 if (key == 'sidebar') {
139 var value = key_val[1];
140 if ((value == 'collapsed') && (!sidebar_is_collapsed()))
141 collapse_sidebar();
142 else if ((value == 'expanded') && (sidebar_is_collapsed()))
143 expand_sidebar();
144 }
145 }
146 }
147
148 add_sidebar_button();
149 var sidebarbutton = $('#sidebarbutton');
150 set_position_from_cookie();
151});
0152
=== added file 'doc/source/percona-theme/static/software-download.png'
1Binary files doc/source/percona-theme/static/software-download.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/software-download.png 2012-07-04 12:10:50 +0000 differ153Binary files doc/source/percona-theme/static/software-download.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/software-download.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/software-latest.png'
2Binary files doc/source/percona-theme/static/software-latest.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/software-latest.png 2012-07-04 12:10:50 +0000 differ154Binary files doc/source/percona-theme/static/software-latest.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/software-latest.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/support-small.png'
3Binary files doc/source/percona-theme/static/support-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/support-small.png 2012-07-04 12:10:50 +0000 differ155Binary files doc/source/percona-theme/static/support-small.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/support-small.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-dropdown-bg.png'
4Binary files doc/source/percona-theme/static/ui-dropdown-bg.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-bg.png 2012-07-04 12:10:50 +0000 differ156Binary files doc/source/percona-theme/static/ui-dropdown-bg.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-bg.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-dropdown-footer.png'
5Binary files doc/source/percona-theme/static/ui-dropdown-footer.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-footer.png 2012-07-04 12:10:50 +0000 differ157Binary files doc/source/percona-theme/static/ui-dropdown-footer.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-footer.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-dropdown-header-l.png'
6Binary files doc/source/percona-theme/static/ui-dropdown-header-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-l.png 2012-07-04 12:10:50 +0000 differ158Binary files doc/source/percona-theme/static/ui-dropdown-header-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-l.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-dropdown-header-r.png'
7Binary files doc/source/percona-theme/static/ui-dropdown-header-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-r.png 2012-07-04 12:10:50 +0000 differ159Binary files doc/source/percona-theme/static/ui-dropdown-header-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-r.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-dropdown-header-search.png'
8Binary files doc/source/percona-theme/static/ui-dropdown-header-search.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-search.png 2012-07-04 12:10:50 +0000 differ160Binary files doc/source/percona-theme/static/ui-dropdown-header-search.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-dropdown-header-search.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-footer-logo.png'
9Binary files doc/source/percona-theme/static/ui-footer-logo.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-footer-logo.png 2012-07-04 12:10:50 +0000 differ161Binary files doc/source/percona-theme/static/ui-footer-logo.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-footer-logo.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-leftnavi-sel.png'
10Binary files doc/source/percona-theme/static/ui-leftnavi-sel.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-leftnavi-sel.png 2012-07-04 12:10:50 +0000 differ162Binary files doc/source/percona-theme/static/ui-leftnavi-sel.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-leftnavi-sel.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-logo.png'
11Binary files doc/source/percona-theme/static/ui-logo.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-logo.png 2012-07-04 12:10:50 +0000 differ163Binary files doc/source/percona-theme/static/ui-logo.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-logo.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-hover-l.png'
12Binary files doc/source/percona-theme/static/ui-navi-hover-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-hover-l.png 2012-07-04 12:10:50 +0000 differ164Binary files doc/source/percona-theme/static/ui-navi-hover-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-hover-l.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-hover-r.png'
13Binary files doc/source/percona-theme/static/ui-navi-hover-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-hover-r.png 2012-07-04 12:10:50 +0000 differ165Binary files doc/source/percona-theme/static/ui-navi-hover-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-hover-r.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-l.png'
14Binary files doc/source/percona-theme/static/ui-navi-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-l.png 2012-07-04 12:10:50 +0000 differ166Binary files doc/source/percona-theme/static/ui-navi-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-l.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-r.png'
15Binary files doc/source/percona-theme/static/ui-navi-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-r.png 2012-07-04 12:10:50 +0000 differ167Binary files doc/source/percona-theme/static/ui-navi-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-r.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-sel-l.png'
16Binary files doc/source/percona-theme/static/ui-navi-sel-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-sel-l.png 2012-07-04 12:10:50 +0000 differ168Binary files doc/source/percona-theme/static/ui-navi-sel-l.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-sel-l.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-navi-sel-r.png'
17Binary files doc/source/percona-theme/static/ui-navi-sel-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-sel-r.png 2012-07-04 12:10:50 +0000 differ169Binary files doc/source/percona-theme/static/ui-navi-sel-r.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-navi-sel-r.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-orange-content.png'
18Binary files doc/source/percona-theme/static/ui-orange-content.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-orange-content.png 2012-07-04 12:10:50 +0000 differ170Binary files doc/source/percona-theme/static/ui-orange-content.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-orange-content.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-orange-front.png'
19Binary files doc/source/percona-theme/static/ui-orange-front.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-orange-front.png 2012-07-04 12:10:50 +0000 differ171Binary files doc/source/percona-theme/static/ui-orange-front.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-orange-front.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-search.png'
20Binary files doc/source/percona-theme/static/ui-search.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-search.png 2012-07-04 12:10:50 +0000 differ172Binary files doc/source/percona-theme/static/ui-search.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-search.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/ui-tab-bg.png'
21Binary files doc/source/percona-theme/static/ui-tab-bg.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-tab-bg.png 2012-07-04 12:10:50 +0000 differ173Binary files doc/source/percona-theme/static/ui-tab-bg.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/ui-tab-bg.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/static/warning.png'
22Binary files doc/source/percona-theme/static/warning.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/warning.png 2012-07-04 12:10:50 +0000 differ174Binary files doc/source/percona-theme/static/warning.png 1970-01-01 00:00:00 +0000 and doc/source/percona-theme/static/warning.png 2012-07-04 12:10:50 +0000 differ
=== added file 'doc/source/percona-theme/theme.conf'
--- doc/source/percona-theme/theme.conf 1970-01-01 00:00:00 +0000
+++ doc/source/percona-theme/theme.conf 2012-07-04 12:10:50 +0000
@@ -0,0 +1,32 @@
1[theme]
2inherit = default
3stylesheet = default.css
4pygments_style = sphinx
5
6[options]
7rightsidebar = false
8stickysidebar = false
9collapsiblesidebar = false
10externalrefs = false
11
12footerbgcolor = #11303d
13footertextcolor = #ffffff
14sidebarbgcolor = #1c4e63
15sidebarbtncolor = #3c6e83
16sidebartextcolor = #ffffff
17sidebarlinkcolor = #98dbcc
18relbarbgcolor = #133f52
19relbartextcolor = #ffffff
20relbarlinkcolor = #ffffff
21bgcolor = #ffffff
22textcolor = #000000
23headbgcolor = #f2f2f2
24headtextcolor = #20435c
25headlinkcolor = #c60f0f
26linkcolor = #355f7c
27visitedlinkcolor = #355f7c
28codebgcolor = #eeffcc
29codetextcolor = #333333
30
31bodyfont = sans-serif
32headfont = 'Arial', 'Helvetica' sans-serif
033
=== added directory 'doc/source/plugins'
=== added file 'doc/source/plugins/query_log_plugin.rst'
--- doc/source/plugins/query_log_plugin.rst 1970-01-01 00:00:00 +0000
+++ doc/source/plugins/query_log_plugin.rst 2012-07-04 12:10:50 +0000
@@ -0,0 +1,12 @@
1==================
2 Query_log plugin
3==================
4
5This plugin parses queries from query log files. It can preserve query execution time with :option:`--query-log-preserve-query-time` option. The :option:`--query-log-read-count` options allows to replay query log file several times (NYI). The difference between this and :option:`--loop` options should be that :option:`--loop` reports at the end of each execution whereas :option:`--query-log-read-count` reports once after all executions.
6
7The example of usage:
8Run ./percona_playback/test/basic-slow.log on default libmysqlplugin settings: ::
9
10 $ bin/percona_playback --db-plugin=libmysqlclient --slow-query-log-file=./percona_playback/test/basic-slow.log
11
12The other options description can be found in "help" message.
013
=== added file 'doc/source/plugins/tcpdump_plugin.rst'
--- doc/source/plugins/tcpdump_plugin.rst 1970-01-01 00:00:00 +0000
+++ doc/source/plugins/tcpdump_plugin.rst 2012-07-04 12:10:50 +0000
@@ -0,0 +1,17 @@
1================
2 tcpdump plugin
3================
4
5The main purpose of this plugin is to parse |MySQL| queries from |tcpdump| files. Currently this plugin doesn't support work with *prepare* and *execute* statements. Also it doesn't parse MySQL :option:`threads_id` because they are passed only during handshake, but tcpdump tool can be started in the middle of the session. That's why :option:`thread_id` which can be seen in the report of *report* plugins is some hash from client ip-port pair. Currently only parsing of ipv4 connections is implemented.
6
7The plugin has two modes of work:
8 * **accurate** - preserves queries execution time and pauses between queries, it's possible to playback the same load that was recorded on production with some accuracy.
9 * **fast** - play queries as fast as possible.
10
11The example of usage:
12Playback percona_playback/test/tcpdump_accuracy.dump on MySQL server in *accurate* mode and queries queue limit of 10 000 elements: ::
13
14 $ bin/percona-playback --input-plugin=tcpdump --tcpdump-file=percona-playback/test/tcpdump_accuracy.dump \
15 --tcpdump-mode=accurate --db-plugin=libmysqlclient --mysql-host=some_host --mysql-port=3307 \
16 --mysql-username=test_user --mysql-password=passW0rd --mysql-schema=test1 --queue-depth 10000
17
018
=== added file 'doc/source/pp_option_reference.rst'
--- doc/source/pp_option_reference.rst 1970-01-01 00:00:00 +0000
+++ doc/source/pp_option_reference.rst 2012-07-04 12:10:50 +0000
@@ -0,0 +1,88 @@
1==================================
2Percona Playback Option Reference
3==================================
4
5This page documents the command-line options for the :program:`percona-playback`.
6
7Options
8=======
9
10.. option:: --help
11
12 This option displays a help screen and exits.
13
14.. option:: --version
15
16 This option displays the |percona-playback| version and copyright notice and then exits.
17
18.. option:: --loop N
19
20 Do the whole run N times.
21
22Database Options:
23-----------------
24.. option:: --db-plugin=NAME
25
26 This options tells |percona-playback| which database plugin to use.
27
28.. option:: --input-plugin=NAME
29
30 This options tells |percona-playback| which input plugin to use.
31
32.. option:: --queue-depth[=#]
33
34 Queue depth for DB executor (thread). The larger this number is the greater the played-back workload can deviate from the original workload as some connections may be up to queue-depth behind. If no values is specified default is 1.
35
36MySQL Client Options:
37---------------------
38.. option:: --mysql-host=HOST
39
40 Hostname of MySQL server
41
42.. option:: --mysql-port=PORT
43
44 MySQL port number
45
46.. option:: --mysql-username=USERNAME
47
48 Username to connect to MySQL
49
50.. option:: --mysql-password=PASSWORD
51
52 Password for MySQL user
53
54.. option:: --mysql-schema=SCHEMA
55
56 MySQL Schema to connect to
57
58Query Log Options:
59------------------
60.. option:: --query-log-file=FILNAME
61
62 Query log file that's going to be used.
63
64.. option:: --query-log-read-count=[#]
65
66 Query log file read count (how many times to read query log file). If no value is specified default is 1.
67
68.. option:: --query-log-set-timestamp
69
70 By default, query SET TIMESTAMP=XX; that the MySQL slow query log always includes is skipped. This may cause some subsequent queries to fail, depending on the workload. If the :option:`--run-set-timestamp` option is enabled, these queries are run as well.
71
72.. option:: --query-log-preserve-query-time
73
74 This option ensures that each query takes at least Query_time (from slow query log) to execute.
75
76Simple Report Options:
77----------------------
78.. option:: --show-per-connection-query-count
79
80 Display the number of queries executed for each connection.
81
82|tcpdump| Options:
83------------------
84
85.. option:: --tcpdump-file=FILNAME
86
87 Tcpdump file name.
88
089
=== added directory 'doc/source/release-notes'
=== modified file 'doc/source/release-notes.rst'
--- doc/source/release-notes.rst 2012-07-02 13:06:34 +0000
+++ doc/source/release-notes.rst 2012-07-04 12:10:50 +0000
@@ -5,4 +5,8 @@
5Preview Release5Preview Release
6===============6===============
77
8Initial public release8.. toctree::
9 :maxdepth: 1
10 :glob:
11
12 release-notes/0/*
913
=== added directory 'doc/source/release-notes/0'
=== added file 'doc/source/release-notes/0/0.1.rst'
--- doc/source/release-notes/0/0.1.rst 1970-01-01 00:00:00 +0000
+++ doc/source/release-notes/0/0.1.rst 2012-07-04 12:10:50 +0000
@@ -0,0 +1,18 @@
1======================
2 Percona Playback 0.1
3======================
4
5This is the initial release and it's very limited. It should be considered Alpha.
6
7Features:
8---------
9- slow query log parsing
10- mysql client library
11- one thread per client thread
12- basic report as to how the replay went
13- "as fast as possible" playback only. If query execution takes less time on playback server than original one, percona-playback will not pause.
14
15Notable missing features:
16-------------------------
17- wall-time playback: ability to have the same amount of real-world time pass (i.e. a gap of 10seconds between queries will be preserved).
18- parsing of general query log

Subscribers

People subscribed via source and target branches