From 9f03f91142fe3b2d37089d164f1670cf8dc4beb6 Mon Sep 17 00:00:00 2001 From: kramm Date: Wed, 19 May 2010 17:48:12 -0700 Subject: [PATCH] updated gpdf2swf (patch from Ricardo Pedroso) --- wx/Makefile | 17 + wx/gpdf2swf.py | 23 +- wx/gui/dialogs.py | 96 +- wx/gui/info.py | 55 + wx/gui/main.py | 123 +- wx/gui/options/viewer.py | 8 +- wx/gui/plugin.py | 33 +- wx/setup.py | 163 + wx/viewers/flexpaper.py | 254 + wx/viewers/flexpaper/FlexPaperViewer.html | 96 + wx/viewers/flexpaper/FlexPaperViewer.swf | Bin 0 -> 302173 bytes wx/viewers/flexpaper/js/jquery.js | 5999 ++++++++++++++++++++ .../flexpaper/js/swfobject/expressInstall.swf | Bin 0 -> 727 bytes wx/viewers/flexpaper/js/swfobject/swfobject.js | 4 + wx/viewers/raw.py | 6 +- wx/viewers/rfx.py | 2 +- wx/viewers/simple.py | 2 +- wx/viewers/technoargia.py | 350 ++ wx/viewers/technoargia.swf | Bin 0 -> 766 bytes 19 files changed, 7124 insertions(+), 107 deletions(-) create mode 100644 wx/Makefile create mode 100644 wx/gui/info.py create mode 100644 wx/setup.py create mode 100644 wx/viewers/flexpaper.py create mode 100644 wx/viewers/flexpaper/FlexPaperViewer.html create mode 100644 wx/viewers/flexpaper/FlexPaperViewer.swf create mode 100644 wx/viewers/flexpaper/js/jquery.js create mode 100644 wx/viewers/flexpaper/js/swfobject/expressInstall.swf create mode 100644 wx/viewers/flexpaper/js/swfobject/swfobject.js create mode 100644 wx/viewers/technoargia.py create mode 100644 wx/viewers/technoargia.swf diff --git a/wx/Makefile b/wx/Makefile new file mode 100644 index 0000000..b2aa338 --- /dev/null +++ b/wx/Makefile @@ -0,0 +1,17 @@ +top_builddir = ../.. +srcdir = . +top_srcdir = .. +include ../Makefile.common + +all: pdf2swf_gui.exe + +pdf2swf_gui.exe: gpdf2swf.py app.py document.py gui/*.py viewers/*.py + cp gpdf2swf.py /xpython/main.py + cp -R app.py document.py viewers gui /xpython/ + cd /xpython/swftools;git pull + cd /xpython;make xpython.exe + ln -f /xpython/xpython.exe ./gpdf2swf.exe + ln -f gpdf2swf.exe ../win32_gui/ + ln -f gpdf2swf.exe ../win32/ + +.PHONY: exe diff --git a/wx/gpdf2swf.py b/wx/gpdf2swf.py index 3fd12c6..e6941c2 100644 --- a/wx/gpdf2swf.py +++ b/wx/gpdf2swf.py @@ -23,6 +23,7 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ from __future__ import division +import __builtin__ import os import sys import imp @@ -32,13 +33,31 @@ def main_is_frozen(): hasattr(sys, "importers") # old py2exe or imp.is_frozen("__main__")) # tools/freeze +#if not main_is_frozen(): +# try: +# import wxversion +# wxversion.select("2.6") +# except: +# wxversion.select("2.8") + +def get_main_dir(): + if main_is_frozen(): + return os.path.dirname(sys.executable) + return os.path.dirname(os.path.abspath(__file__)) +__builtin__.get_main_dir = get_main_dir +__builtin__.GPDF2SWF_BASEDIR = get_main_dir() + +pyver = "".join(map(str, sys.version_info[0:2])) +#print >>sys.stderr, pyver if main_is_frozen(): - sys.path.insert(0, os.path.join("..", "python25")) + sys.path.insert(0, os.path.join("..", "python%s" % pyver)) else: sys.path.insert(0, os.path.join("..", "lib", "python")) + sys.path.insert(1, os.path.join("..", "python%s" % pyver)) import wx -from app import Pdf2Swf +#print >>sys.stderr, wx.VERSION +from lib.app import Pdf2Swf if __name__ == "__main__": app = wx.App(False) diff --git a/wx/gui/dialogs.py b/wx/gui/dialogs.py index 0d76613..b5387c1 100644 --- a/wx/gui/dialogs.py +++ b/wx/gui/dialogs.py @@ -26,7 +26,7 @@ from __future__ import division import os import wx -from wx.lib.wordwrap import wordwrap +from lib.wordwrap import wordwrap from gui.options import Quality, ViewerBook @@ -51,11 +51,13 @@ class OptionsDialog(wx.Dialog): p.AddPage(self.__viewers, u"Viewer") sizer = wx.BoxSizer(wx.VERTICAL) - btnsizer = wx.BoxSizer(wx.HORIZONTAL) + btnsizer = wx.StdDialogButtonSizer() + + btn = wx.Button(self, wx.ID_OK) + btn.SetDefault() + btnsizer.AddButton(btn) + btnsizer.Realize() - btn = wx.Button(self, wx.ID_CLOSE) - self.SetAffirmativeId(wx.ID_CLOSE) - btnsizer.Add(btn) sizer.Add(p, 0, wx.EXPAND|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) sizer.Add(btnsizer, 0, wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) @@ -80,44 +82,52 @@ class OptionsDialog(wx.Dialog): viewers = property(__get_viewers_options) +from gui.info import InfoList +class InfoDialog(wx.Dialog): + def __init__(self, parent): + wx.Dialog.__init__(self, parent, + style=wx.DEFAULT_DIALOG_STYLE + |wx.RESIZE_BORDER + ) + + app_name = wx.GetApp().GetAppName() + self.SetTitle(u"Document info - %s" % app_name) + + self.info = InfoList(self) + + sizer = wx.BoxSizer(wx.VERTICAL) + sizer.Add(self.info, 1, wx.EXPAND, 0) + + + btnsizer = wx.BoxSizer(wx.HORIZONTAL) + + btn = wx.Button(self, wx.ID_OK) + btn.SetDefault() + #self.SetAffirmativeId(wx.ID_CLOSE) + btnsizer.Add(btn) + sizer.Add(btnsizer, 0, wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5) + + self.SetSizer(sizer) + + class AboutDialog: def __init__(self, parent): - info = wx.AboutDialogInfo() - # no need to get app name - #info.Name = wx.GetApp().GetAppName() - info.Version = u"0.9.0" - info.Copyright = (u"Copyright (c) 2008,2009 " - u"Matthias Kramm ") - info.Description = u"graphical user interface for pdf2swf" - info.Developers = [ - u"Matthias Kramm ", - u"Ricardo Pedroso ", - ] - - if 'wxGTK' in wx.PlatformInfo: - info.WebSite = (u"http://www.swftools.org/", u"swftools home page") - licenseText = [ - u"%(name)s is free software; you can redistribute " - u"it and/or modify it under the terms of the GNU General " - u"Public License as published by the Free Software " - u"Foundation; either version 2 of the License, or (at " - u"your option) any later version." - ] - licenseText.append( - u"%(name)s is distributed in the hope that it will " - u"be useful, but WITHOUT ANY WARRANTY; without even the " - u"implied warranty of MERCHANTABILITY or FITNESS FOR A " - u"PARTICULAR PURPOSE. See the GNU General Public License " - u"for more details." - ) - licenseText.append( - u"You should have received a copy of the GNU General " - u"Public License along with %(name)s; if not, " - u"write to the Free Software Foundation, Inc., 51 " - u"Franklin St, Fifth Floor, Boston, MA 02110-1301 USA" - ) - lic = (os.linesep*2).join(licenseText) % {'name': info.Name} - info.License = wordwrap(lic, 350, wx.ClientDC(parent)) - - wx.AboutBox(info) + appname = wx.GetApp().GetAppName() + version = u"0.9.0" + copyright = (u"Copyright (c) 2008,2009,2010\n" + u"Matthias Kramm ") + description = u"A graphical user interface for pdf2swf" + developers = (u"Developers:\nMatthias Kramm \n" + u"Ricardo Pedroso ") + + + message = ("%(appname)s %(version)s\n\n" + "%(description)s\n\n" + "%(developers)s\n\n" + "%(copyright)s" % locals()) + caption = "About %s" % appname + + #wx.MessageBox(message, caption) + + wx.MessageDialog(parent, message, caption, style=wx.OK | wx.CENTRE).ShowModal() diff --git a/wx/gui/info.py b/wx/gui/info.py new file mode 100644 index 0000000..69707fc --- /dev/null +++ b/wx/gui/info.py @@ -0,0 +1,55 @@ +import wx +from lib.document import PDF_INFO +import lib.utils as utils +#from wx.lib.mixins import listctrl as listmix + +#class InfoList(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin): +class InfoList(wx.ListCtrl): + def __init__(self, parent): + wx.ListCtrl.__init__(self, parent, + style=wx.LC_REPORT + | wx.LC_VIRTUAL + | wx.BORDER_SUNKEN + #| wx.BORDER_NONE + #| wx.LC_EDIT_LABELS + #| wx.LC_SORT_ASCENDING + #| wx.LC_NO_HEADER + | wx.LC_VRULES + | wx.LC_HRULES + | wx.LC_SINGLE_SEL + ) + #listmix.ListCtrlAutoWidthMixin.__init__(self) + #self.setResizeColumn("LAST") + + self.InsertColumn(0, "Property") + self.InsertColumn(1, "Value", wx.LIST_FORMAT_LEFT) + self.SetColumnWidth(0, 120) + self.SetColumnWidth(1, 400) + + self.__data = [] + + def append(self, data): + self.__data.append(data) + self.SetItemCount(len(self.__data)) + self.RefreshItem(len(self.__data)-1) + + def OnGetItemText(self, item, col): + data_row = self.__data[item] + return data_row[col] + + def display(self, doc): + self.__data = [] + for item in PDF_INFO: + val = getattr(doc, item) + # This will be the fallback value + sane_val = repr(val)[1:-1] + # Maybe more enconding, which ones? + for encoding in ["utf-8", "iso-8859-15",]: + try: + sane_val = utils.force_unicode(val, encoding) + break + except utils.GPdf2SwfUnicodeDecodeError: + pass + + self.append([item, sane_val]) + diff --git a/wx/gui/main.py b/wx/gui/main.py index 1aa686c..85aa2d6 100644 --- a/wx/gui/main.py +++ b/wx/gui/main.py @@ -26,30 +26,20 @@ from __future__ import division import os import wx from wx.lib.pubsub import Publisher -from wx.lib.embeddedimage import PyEmbeddedImage +from lib.embeddedimage import PyEmbeddedImage import thread import time +import lib.images as images ICON_SIZE = 64 ID_INVERT_SELECTION = wx.NewId() ID_SELECT_ODD = wx.NewId() ID_SELECT_EVEN = wx.NewId() +ID_ONE_PAGE_PER_FILE = wx.NewId() -# TODO: move into images.py -blank = PyEmbeddedImage( - "iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAAZiS0dE" - "AP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHDAscKjCK/4UAAABo" - "SURBVHja7dABAcBAEAIgXf/Ofo8dRKDblqPa5stxAgQIECBAgAABAgQIECBAgAABAgQIECBA" - "gAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEPALTbLLAQ8OIAV9" - "8WNeKwAAAABJRU5ErkJggg==") -getblankData = blank.GetData -getblankImage = blank.GetImage -getblankBitmap = blank.GetBitmap - -stop_width=8 -stop_height=8 -stop_data="""\xd5\x07\x07\xd5\x08\x08\xd5\x09\x09\xd4\x0a\x0a\xd4\x0a\x0a\xd5\x09\x09\xd5\x08\x08\xd5\x07\x07\xd5\x08\x08\xd4\x12\x12\xd4<<\xd1--\xd1,-\xd4;;\xd5\x12\x12\xd6\x08\x08\xd5\x0a\x0a\xd2@@\xd4\xc6\xc7\xd5kk\xd2gi\xd2\xc4\xc6\xd4<<\xd6\x0a\x0a\xd4\x0c\x0c\xcb66\xd6gi\xe3\xeb\xed\xe1\xeb\xed\xd4bc\xd3++\xd5\x0c\x0c\xd4\x0b\x0b\xd0--\xd3hi\xe2\xeb\xed\xe2\xed\xee\xd5cd\xd3++\xd5\x0c\x0c\xd5\x09\x09\xd4:;\xd3\xc5\xc7\xd3ij\xd3jj\xd3\xc5\xc7\xd4<<\xd6\x0a\x0a\xd5\x08\x08\xd4\x12\x12\xd5<=\xd2..\xd1,,\xd4;;\xd5\x12\x12\xd6\x08\x08\xd5\x07\x07\xd6\x08\x08\xd6\x0a\x0a\xd5\x0b\x0b\xd4\x0b\x0b\xd5\x09\x09\xd5\x08\x08\xd5\x07\x07""" +ID_DOC_INFO = wx.NewId() +ID_PREVIEW_TYPE = wx.NewId() class _AppendThumbnailThread: @@ -74,22 +64,20 @@ class _AppendThumbnailThread: if pos == 0: width, height = thumb.width, thumb.height else: - if abs(width - thumb.width) > 2 or \ - abs(height - thumb.height) > 2: - different_sizes = True + if not different_sizes: + if abs(width - thumb.width) > 2 or \ + abs(height - thumb.height) > 2: + different_sizes = True + wx.CallAfter(Publisher.sendMessage, "DIFF_SIZES") wx.CallAfter(self.__win.AppendThumbnail, pos, - thumb.asImage(ICON_SIZE, ICON_SIZE)) + thumb.asImage(ICON_SIZE, ICON_SIZE), thumb) wx.CallAfter(Publisher.sendMessage, "THUMBNAIL_ADDED", {'pagenr':pos+1,}) - time.sleep(.05) + time.sleep(.01) if not self.__keep_running: break - else: - if different_sizes: - wx.CallAfter(Publisher.sendMessage, "DIFF_SIZES") - time.sleep(.10) wx.CallAfter(Publisher.sendMessage, "THUMBNAIL_DONE") time.sleep(.10) @@ -123,6 +111,10 @@ class PagePreviewWindow(wx.ScrolledWindow): def DisplayPage(self, page): thread.start_new_thread(self.__DisplayPageThread, (page,)) + def Clear(self): + self.__buffer = wx.EmptyBitmap(1, 1) + self.Refresh() + def __OnPaint(self, event): dc = wx.BufferedPaintDC(self, self.__buffer, wx.BUFFER_VIRTUAL_AREA) @@ -132,7 +124,10 @@ class PagePreviewWindow(wx.ScrolledWindow): dc = wx.BufferedDC(None, self.__buffer) dc.Clear() dc.DrawRectangle(0, 0, w+2, h+2) - dc.DrawBitmap(wx.BitmapFromBuffer(w, h, page), 1, 1, True) + #dc.DrawBitmap(wx.BitmapFromBuffer(w, h, page), 1, 1, True) + dc.DrawBitmap(wx.BitmapFromImage( + wx.ImageFromData(w, h, page)), 1, 1, True) + self.Refresh() def __DisplayPageThread(self, page): @@ -149,19 +144,20 @@ class PageListCtrl(wx.ListView): self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu) def OnContextMenu(self, event): - menu = wx.Menu() - menu.Append(wx.ID_SELECTALL, u"Select All\tCTRL-A") - menu.AppendSeparator() - menu.Append(wx.ID_SAVE, u"Save SWF (all pages)\tCTRL-W") - menu.Append(wx.ID_SAVEAS, u"Save SWF (selected pages)\tCTRL-S") - self.PopupMenu(menu) - menu.Destroy() + if self.GetItemCount(): + menu = wx.Menu() + menu.Append(wx.ID_SELECTALL, u"Select All\tCTRL-A") + menu.AppendSeparator() + menu.Append(wx.ID_SAVE, u"Save SWF (all pages)\tCTRL-W") + menu.Append(wx.ID_SAVEAS, u"Save SWF (selected pages)\tCTRL-S") + self.PopupMenu(menu) + menu.Destroy() def DisplayEmptyThumbnails(self, pages): self.DeleteAllItems() self.imglist = wx.ImageList(ICON_SIZE, ICON_SIZE, mask=True) self.AssignImageList(self.imglist, wx.IMAGE_LIST_NORMAL) - bmp = getblankBitmap() + bmp = images.getblankBitmap() for pos in range(pages): self.imglist.Add(bmp) self.InsertImageStringItem(pos, u"Page %s" % (pos+1), pos) @@ -171,12 +167,17 @@ class PageListCtrl(wx.ListView): t.Start() return t - def AppendThumbnail(self, pos, thumb): - bmp = wx.BitmapFromBuffer(ICON_SIZE, ICON_SIZE, thumb) + def AppendThumbnail(self, pos, thumb, page): + #bmp = wx.BitmapFromBuffer(ICON_SIZE, ICON_SIZE, thumb) + bmp = wx.BitmapFromImage( + wx.ImageFromData(ICON_SIZE, ICON_SIZE, + thumb)) self.imglist.Replace(pos, bmp) + self.SetItemText(pos, u"Page %s\n(%sx%s)" % (pos+1, + page.width, page.height)) if pos == 0: wx.CallAfter(self.Select, 0) - self.Refresh() + self.RefreshItem(pos) class StatusBar(wx.StatusBar): @@ -189,7 +190,7 @@ class StatusBar(wx.StatusBar): self.gauge = wx.Gauge(self) - bmp = wx.BitmapFromImage(wx.ImageFromData(stop_width,stop_height,stop_data)) + bmp = images.getstopBitmap() self.btn_cancel = wx.BitmapButton(self, bitmap=bmp, style = wx.NO_BORDER) self.gauge.Hide() @@ -230,7 +231,7 @@ class PdfFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, size=(750,550), title=u"gpdf2swf") - icon = self.__MakeIcon(os.path.join("images", "pdf2swf_gui.ico")) + icon = self.__MakeIcon() self.SetIcon(icon) self.__CreateMenu() self.__CreateToolbar() @@ -247,9 +248,8 @@ class PdfFrame(wx.Frame): sashPosition=ICON_SIZE*2) hsplit.SetMinimumPaneSize(ICON_SIZE*2) - def __MakeIcon(self, filename): - # TODO: Probably include the icon on a .py file - img = wx.Bitmap(filename).ConvertToImage() + def __MakeIcon(self): + img = images.getgpdf2swfImage() if "wxMSW" in wx.PlatformInfo: img = img.Scale(16, 16) #elif "wxGTK" in wx.PlatformInfo: @@ -262,19 +262,26 @@ class PdfFrame(wx.Frame): def __CreateMenu(self): menubar = wx.MenuBar() + menu_recent = wx.Menu() + menu_save = wx.Menu() + menu_save.AppendCheckItem(ID_ONE_PAGE_PER_FILE, u"One Page Per File") + menu_save.AppendSeparator() + menu_save.Append(wx.ID_SAVE, u"All Pages\tCTRL-W", + u"Save all pages") + menu_save.Append(wx.ID_SAVEAS, u"Selected Pages\tCTRL-S", + u"Save selected pages") + menu = wx.Menu() menu.Append(wx.ID_OPEN, u"Open PDF\tCTRL-O", u"Open a PDF document") + menu.AppendMenu(wx.ID_ANY, u"Save SWF", menu_save) menu.AppendSeparator() - menu.Append(wx.ID_SAVE, u"Save SWF (all pages)\tCTRL-W", - u"Save all pages") - menu.Append(wx.ID_SAVEAS, u"Save SWF (selected pages)\tCTRL-S", - u"Save selected pages") + menu.AppendMenu(wx.ID_ANY, u"Recent", menu_recent) menu.AppendSeparator() menu.Append(wx.ID_EXIT, u"Exit\tCTRL-Q") menubar.Append(menu, u"&File") self.filehistory = wx.FileHistory() - self.filehistory.UseMenu(menu) + self.filehistory.UseMenu(menu_recent) menu = wx.Menu() menu.Append(wx.ID_SELECTALL, u"Select All\tCTRL-A", @@ -295,6 +302,8 @@ class PdfFrame(wx.Frame): menu.Append(wx.ID_ZOOM_OUT, u"Zoom Out\tCTRL--") menu.Append(wx.ID_ZOOM_100, u"Normal Size\tCTRL-0") menu.Append(wx.ID_ZOOM_FIT, u"Fit\tCTRL-1") + menu.AppendSeparator() + menu.Append(ID_DOC_INFO, u"Document Info\tCTRL-I") menubar.Append(menu, u"&View") menu = wx.Menu() @@ -315,9 +324,31 @@ class PdfFrame(wx.Frame): wxart(wx.ART_FILE_SAVE, wx.ART_TOOLBAR, tsize), u"Save SWF (all pages)") + self.toolbar.AddSeparator() + self.toolbar.AddSimpleTool(wx.ID_PREFERENCES, wxart(wx.ART_LIST_VIEW, wx.ART_TOOLBAR, tsize), u"Options") + self.toolbar.AddSeparator() + + self.toolbar.AddSimpleTool(ID_DOC_INFO, + wxart(wx.ART_TIP, + wx.ART_TOOLBAR, tsize), + u"Document Info") + + self.toolbar.AddSeparator() + + self.toolbar_preview_type = wx.Choice( + self.toolbar, ID_PREVIEW_TYPE, + choices=["everything to bitmaps", + "fonts to fonts, everything else to bitmaps", + "polygons to polygons and fonts to fonts"], + size=(350,-1), style=wx.CB_DROPDOWN + ) + # I'm not sure about the utility of this, so Show False + self.toolbar_preview_type.Show(False) + self.toolbar.AddControl(self.toolbar_preview_type) + self.toolbar.Realize() diff --git a/wx/gui/options/viewer.py b/wx/gui/options/viewer.py index 18c70af..94ab7fa 100644 --- a/wx/gui/options/viewer.py +++ b/wx/gui/options/viewer.py @@ -26,7 +26,7 @@ import os import wx import operator import imp -from wx.lib.wordwrap import wordwrap +from lib.wordwrap import wordwrap from gui.boldstatictext import BoldStaticText import viewers import gui.fields @@ -55,7 +55,7 @@ class Viewers: class ViewerBook(wx.Listbook): def __init__(self, parent): wx.Listbook.__init__(self, parent, wx.ID_ANY, style= - wx.BK_DEFAULT + wx.LB_DEFAULT ) self.__mod = [] @@ -77,10 +77,6 @@ class ViewerBook(wx.Listbook): win = self.makePanel(mod) self.AddPage(win, mod, imageId=idx) - # A hack to avoid having the scrollbar be on bottom - # the first time the control is created - self.ListView.Select(self.ListView.GetItemCount()-1) - self.ListView.Select(0) def makePanel(self, mod): p = wx.Panel(self) diff --git a/wx/gui/plugin.py b/wx/gui/plugin.py index 5cdc2a6..f58cc50 100644 --- a/wx/gui/plugin.py +++ b/wx/gui/plugin.py @@ -29,6 +29,8 @@ from wx.lib.pubsub import Publisher from subprocess import Popen, PIPE class Plugin: + one_page_per_file = False + def before_render(self): pass @@ -44,11 +46,16 @@ class Plugin: def __find_swfcombine(self): found = False - prog = "swfcombine.exe" if "wxMSW" in wx.PlatformInfo else "swfcombine" - basedir = os.path.dirname(__file__) + if "wxMSW" in wx.PlatformInfo: + prog = "swfcombine.exe" + else: + prog = "swfcombine" + #basedir = os.path.dirname(__file__) + basedir = GPDF2SWF_BASEDIR + #print 'basedir', basedir opj = os.path.join - locations = [opj(basedir, prog)] + locations = [os.path.normpath(opj(basedir, '..', prog))] if "wxMSW" in wx.PlatformInfo: locations.extend([ opj("c:", "swftools", prog), @@ -56,16 +63,20 @@ class Plugin: ]) else: locations.extend([ - opj(os.sep, "usr", "local", "bin", prog), - opj(os.sep, "usr", "bin", prog), + opj("/usr", "local", "bin", prog), + opj("/usr", "bin", prog), + opj(basedir, '..', 'src', prog), ]) + #print locations exe = prog for e in locations: + #print e if os.path.isfile(e): exe = e found = True break + #print exe, found return exe, found def swfcombine(self, *args): @@ -88,7 +99,17 @@ class Plugin: cmd = [exe,] cmd.extend(args) - output = Popen(cmd, stdout=PIPE).communicate()[0] + if "wxMSW" in wx.PlatformInfo: + try: + import win32process + # To avoid an ugly "DOS Window" to show up + flags = win32process.CREATE_NO_WINDOW + except ImportError: + flags = 0 + else: + flags = 0 + output = Popen(cmd, stdin=PIPE, stdout=PIPE, + stderr=PIPE, creationflags=flags).communicate()[0] # Check the process output if output: diff --git a/wx/setup.py b/wx/setup.py new file mode 100644 index 0000000..42bb831 --- /dev/null +++ b/wx/setup.py @@ -0,0 +1,163 @@ + +# ======================================================# +# File automagically generated by GUI2Exe version 0.3 +# Andrea Gavana, 01 April 2007 +# ======================================================# + +# Let's start with some default (for me) imports... + +from distutils.core import setup +import py2exe +import glob +import os +import zlib +import shutil + +from distutils.core import setup +import py2exe,sys,os + +# Overriding Criteria for Including DLLs, see: +# http://www.py2exe.org/index.cgi/OverridingCriteraForIncludingDlls +# XXX: Check the permission to redistribute msvcp71.dll +origIsSystemDLL = py2exe.build_exe.isSystemDLL +def isSystemDLL(pathname): + if os.path.basename(pathname).lower() in ("msvcp71.dll",): + return 0 + return origIsSystemDLL(pathname) +py2exe.build_exe.isSystemDLL = isSystemDLL + + +# Remove the build folder +shutil.rmtree("build", ignore_errors=True) + + +manifest_template = """ + + + +gpdf2swf Program + + + + + + +""" + +class Target(object): + """ A simple class that holds information on our executable file. """ + def __init__(self, **kw): + """ Default class constructor. Update as you need. """ + self.__dict__.update(kw) + + +# Ok, let's explain why I am doing that. +# Often, data_files, excludes and dll_excludes (but also resources) +# can be very long list of things, and this will clutter too much +# the setup call at the end of this file. So, I put all the big lists +# here and I wrap them using the textwrap module. + +data_files = [('viewers', ['viewers/__init__.py', + 'viewers/raw.py', + 'viewers/rfx.py', + 'viewers/rfx7.swf', + 'viewers/rfx8.swf', + 'viewers/simple.py']), + #('.', ['dll/msvcp71.dll', + # ]), + #('images', ['images/stop.png', + # 'images/pdf2swf_gui.ico']) + ] + +includes = [] +excludes = ['_gtkagg', '_tkagg', 'bsddb', 'curses', 'email', 'pywin.debugger', + 'pywin.debugger.dbgcon', 'pywin.dialogs', 'tcl', + 'Tkconstants', 'Tkinter'] +packages = ['viewers'] +dll_excludes = ['libgdk-win32-2.0-0.dll', 'libgobject-2.0-0.dll', 'tcl84.dll', + 'tk84.dll'] +icon_resources = [(1, 'gpdf2swf.ico')] +bitmap_resources = [] +other_resources = [(24, 1, manifest_template)] + + +# This is a place where the user custom code may go. You can do almost +# whatever you want, even modify the data_files, includes and friends +# here as long as they have the same variable name that the setup call +# below is expecting. + +# No custom code added + + +# Ok, now we are going to build our target class. +# I chose this building strategy as it works perfectly for me :-D + + +GUI2Exe_Target_1 = Target( + # what to build + script = "gpdf2swf.py", + icon_resources = icon_resources, + bitmap_resources = bitmap_resources, + other_resources = other_resources, + dest_base = "gpdf2swf", + version = "0.9.0", + company_name = "swftools", + copyright = "swftools", + name = "gpdf2exe" + ) + + + +# That's serious now: we have all (or almost all) the options py2exe +# supports. I put them all even if some of them are usually defaulted +# and not used. Some of them I didn't even know about. + +setup( + + data_files = data_files, + + options = {"py2exe": {"compressed": 0, + "optimize": 2, + "includes": includes, + "excludes": excludes, + "packages": packages, + "dll_excludes": dll_excludes, + "bundle_files": 3, + "dist_dir": "dist", + "xref": False, + "skip_archive": False, + "ascii": False, + "custom_boot_script": '', + } + }, + + zipfile = None, + console = [], + windows = [GUI2Exe_Target_1] + ) + +# This is a place where any post-compile code may go. +# You can add as much code as you want, which can be used, for example, +# to clean up your folders or to do some particular post-compilation +# actions. + +# No post-compilation code added + + +# And we are done. That's a setup script :-D + +# Run setup standalone... +if __name__ == "__main__": + setup() diff --git a/wx/viewers/flexpaper.py b/wx/viewers/flexpaper.py new file mode 100644 index 0000000..bc55b20 --- /dev/null +++ b/wx/viewers/flexpaper.py @@ -0,0 +1,254 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- +# +# gpdf2swf.py +# graphical user interface for pdf2swf +# +# Part of the swftools package. +# +# Copyright (c) 2008,2009 Matthias Kramm +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + +from gui.fields import Choose, ChooseAndInt + +order = 3 +type = "custom" +name = u"Flex Paper Viewer" +desc = u"""Provides a light weight document viewer with: + Printing, Searching, Fit width, Fit height, Flowbox mode + Zooming, Scrolling with Page Up/Down, Arrows, Drag, + Full screen mode, Navigation buttons (next/prev), + Print range. See http://flexpaper.devaldi.com/""" + +swf_options = [ + Choose("flashversion", u"Flash version:", + (u"9", 9,), 0), +] + +viewer_options = [ + Choose("scale", u"Scale:", + (u"0.1", 0.1, + u"0.2", 0.2, + u"0.3", 0.3, + u"0.4", 0.4, + u"0.5", 0.5, + u"0.6", 0.6, + u"0.7", 0.7, + u"0.8", 0.8, + u"0.9", 0.9, + u"1.0", 1.0, + ), 5), + Choose("zoomtransition", u"Zoom transition:", + ('easenone', 'easenone', + 'easeout', 'easeout', + 'linear', 'linear', + 'easeoutquad', 'easeoutquad', + ), 1), + Choose("zoomtime", u"Zoom time:", + (u"0.0", '0.0', + u"0.1", '0.1', + u"0.2", '0.2', + u"0.3", '0.3', + u"0.4", '0.4', + u"0.5", '0.5', + u"0.6", '0.6', + u"0.7", '0.7', + u"0.8", '0.8', + u"0.9", '0.9', + u"1.0", '1.0', + ), 5), + Choose("zoominterval", u"Zoom interval:", + (u"0.1", '0.1', + u"0.2", '0.2', + u"0.3", '0.3', + u"0.4", '0.4', + u"0.5", '0.5', + u"0.6", '0.6', + u"0.7", '0.7', + u"0.8", '0.8', + u"0.9", '0.9', + u"1.0", '1.0', + ), 0), + Choose("fitpageonload", u"Fit page on load:", + (u"no", 'false', u"yes", 'true', ), 0), + Choose("localechain", u"Locale chain:", + ( + 'English', 'en_US', + 'French', 'fr_FR', + 'Chinese, Simple', 'zh_CN', + 'Spanish', 'es_ES', + 'Brazilian Portugese', 'pt_BR', + 'Russian', 'ru_RU', + 'Finnish', 'fi_FN', + 'German', 'de_DE', + 'Netherlands', 'nl_NL', + 'Turkish', 'tr_TR', + 'Swedish', 'se_SE', + 'Portugese', 'pt_PT', + 'Greek', 'el_EL', + 'Danish', 'da_DN', + 'Czech', 'cz_CS', + 'Italian', 'it_IT', + 'Polish', 'pl_PL', + 'Finnish', 'pv_FN', + 'Hungarian', 'hu_HU', + ), 0), +] + + +html_template = open('viewers/flexpaper/FlexPaperViewer.html').read() + +from gui.plugin import Plugin +import os + +class FlexPaper(Plugin): + def __init__(self, swf, filename): + self.__swf = swf + self.__filename = filename + + for opt in swf_options: + setattr(self, "_%s" % opt.name, opt.value) + + for opt in viewer_options: + setattr(self, "_%s" % opt.name, opt.value) + + def after_save(self, page): + template_vars = { + 'swffilename': os.path.basename(self.__filename), + 'scale': self._scale, + 'zoomtransition': self._zoomtransition, + 'zoomtime': self._zoomtime, + 'zoominterval': self._zoominterval, + 'fitpageonload': self._fitpageonload, + 'localechain': self._localechain, + } + + htmlfilename = self._swap_extension(self.__filename, "html") + f = open(htmlfilename, "wb") + try: + f.write(html_template % template_vars) + except Exception, e: + print e + f.close() + + + import shutil + opj = os.path.join + src = opj(os.path.dirname(__file__), 'flexpaper') + dst = os.path.dirname(self.__filename) + shutil.copy(opj(src, 'FlexPaperViewer.swf'), dst) + + try: + os.mkdir(opj(dst, 'js')) + except OSError: + pass + shutil.copy(opj(src, 'js', 'jquery.js'), opj(dst,'js')) + + try: + os.mkdir(opj(dst, 'js', 'swfobject')) + except OSError: + pass + shutil.copy(opj(src, 'js', 'swfobject', 'expressInstall.swf'), opj(dst,'js', 'swfobject')) + shutil.copy(opj(src, 'js', 'swfobject', 'swfobject.js'), opj(dst,'js', 'swfobject')) + + #shutil.copytree(src+'/js', dst+'/js') + +def init(swf, filename): + return FlexPaper(swf, filename) + +from lib.embeddedimage import PyEmbeddedImage + +preview = PyEmbeddedImage( + "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") +getpreviewData = preview.GetData +getpreviewImage = preview.GetImage +getpreviewBitmap = preview.GetBitmap +getpreviewIcon = preview.GetIcon + diff --git a/wx/viewers/flexpaper/FlexPaperViewer.html b/wx/viewers/flexpaper/FlexPaperViewer.html new file mode 100644 index 0000000..264a406 --- /dev/null +++ b/wx/viewers/flexpaper/FlexPaperViewer.html @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + +
+
+

+ To view this page ensure that Adobe Flash Player version + 9.0.124 or greater is installed. +

+ +
+
+ Can't see the document? Running FlexPaper from your local directory? Make sure you have added FlexPaper as trusted. You can do that at Adobe's website. +
+
+ + diff --git a/wx/viewers/flexpaper/FlexPaperViewer.swf b/wx/viewers/flexpaper/FlexPaperViewer.swf new file mode 100644 index 0000000000000000000000000000000000000000..fb354537fc3572af6a89f7ec70e9a6067a340f60 GIT binary patch literal 302173 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%0DvPo8gn*M}o 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�W!V)6f!Yh!9pVvCIP(7DuOeddQ!_1U}bPhd) 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

@ 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 gze)2KcX zmPbfew{oK3@ux#+<)YBB>HK2l$O;m>P~mlN{@1lygXaq9I||amn$(DMP5Oyy#P1>D zEJHWMnFCsxKG74S--8G=X+7!7glRXFh_c4ARQU3tpm^adXEvWjG))!(;B^yYiRu=I zH$_54b`q7sEc4a>i>*g2=2JiF#HYe zV=B2zf}k|$bF?cum5Rg6vMGuHUrcLM9ZcGEP3;a_j%Kf)T1f%Ty6TB8j{%&9KqDW2 z%sP;L$`UQb*1?lZ<+c$^^T zOtE3VBru0X(b7%T&eiTDkVxVmGNDF$Ln!7*AwU*E#sP(6J`wxmcY}I^h-Y2^Bfu`; zkEoe>)CVdaqNr4gx>+CoY{~cH*-eI*l^Zr2^2E>Rg|?SvEuE(pJHHr}@Fjp|)yFDjC%?D99cZ1vq>J_rAd~=l zOR3oAlAlO4`7XmwvFm&)!<=v?)sCgrZYF_KSyzJqNw&NNfmSx179F+|d|7OLX?;1E zWet2R<~M7>e+H8b%BLWIA8=~``THZ?sS(1_zJvs6sj8K6Tdy;g55|bAv4?)BJ z$vDZsKqDf19ZNLEraH4ai}-z>gVc-cpL__1wGdAn@55d&7v)Vv48+zNT{1_Oqo(JK zJ|o+^3DJ;$T(GjU(jO~5sliNpRS9WLVaBnq3(}cwOW`7JF3uVtcaHeEeJfy5Z%+|~ zrNaMhFe<8ZcRN|^{Xa6!f%_q_buypWLkAss$5@q-Wtt( z2H>5h{3eDLIt1!j%COv_9XGX+)X|m}5}|0c%JfIt^mE`ilXt7nq6SP!0S47!QFTbH z$WN%Zo}vilMYgnc^riPxVFa#t=TR>8(WG*`plMvpxz8?2f3ny6lHYx4i6!D7QZBhsd|+?1!kgs_eu_w{_4Erc&*=Lv}zYvw#)) zaeLXLnoJ4ioDt$vi1QEultk_(8$3i>(2R6j_1|B)_06*zfKM3w7Z!w2TMwDwRaC!? z39zRX6|~!(b4M48wLi}OX{c&5q)J?xQXVc(Jg7T)YobA9E0R$KcKe{7rna0?x1#hA@qZ*+DIUT7TpE@EsGCC3rG&eLh zB5TbeJpBB!OD{Cggc*!3NOwXB3tu$-hxYrq zQCV>^e_I=iC0C{iEKBCKYbm=(!dYu@ib^}D!0AduVyY~^!-m9SSZgBqu|kRWDaSv= zV}eLjbJHOXiTa3sF|Me~Z|mJO{k8ppbe;?TNe1eD*o#z*z9c=$qoMI)q%_d0^rb4Y z!_RZHeS(X8x#i+-(w3q=YM-i}#^52(<+&gm(a{qNE_x)MEEg`tE#)rZhB1Mvu;#y7 zps0tNqNIP#SddA?SfE|7)?+%C2bZBqV%3)Wh`1oRFltn=D#<68k*brUuD(x1uS}>^ zt(>lWqvGkxza3`EZ&3=Z#WV;f=!>%)z#e?h`;HlL&b2ye$$f!x!F)ktA!Gq@0R!1| zO@rjRi>OYqgOiSviIag-S&g05Fw-!@Fl!}!C37W1$XE@CJuA)i?gh5Z?r48y1!V?hV5pE%1~tgB4Jqmt#eQIdvS`-aA*+=d zxmwge)tnH-JUY~or=zg3++~(Vpy|qflfR|>7^}+s0&P)y%k&q=x?^(^6w8CRySSyj zs`H*|WbCme);}}uifDG!T54hyB~J+#oxi$(sb2UccJvbKAT_#2hBvVcBQNQ@!Lha4 zGUWItJ}>U%oeKtu?ewX0x=+1y$$M zYRd+eid@|O=JI4!PZY zn2&0Tz1BL1J#Q0ZCpm)S3gfVg@Uz?s?;&MDMh!*|Z)EkUS|>er2LV%SqOE@cb>oUo zQhEu#3z#qKhOdKGbj?vWa?W!MV|M%$j-^9Hq8-=Lq+NC5q z2%ze-ghc+KazDxG#C<=>^~9Z%phTk3g*yZGr|L5o!&~*$#U@tORsKd+%~k#;R`u2P z#^aLDPG-Ec7T;RSB`m&m+FJL0a#B?6gGawoKX~*TK7mKS?317jBKd_o+r$9*MgRVK zzhVJ;i)Nh)RXY{CMgJL}p3Eyh4RD?cFS;$?IB3D3=W~sWMunT0IX|moCUsxmcB3B$ z^}kshp{rX^tmb<^#P;=1!?$Wt1U(_OPGFJK2VXJEhK8SZ5^_Mn|fv zuF1~#79Adxag7Jv2=LNQEuT2LGWQC4sb?p?p8}%=7rR`Mo6oz9y z)+=sp*2V`eb{I6fH^Bl*uEq&OlB32&u*p7zsZ znPZ+~;bgcP%rlQQu9XpYF_rC1IfeVa3#wIzQw#g;z_^j?hdzDQtuxSZ=T9asvlE## zv(cah^s~R@Fg-!GG#?rsPa31=VEf~!dXj64yfSf;A8QoHz+2=e0F#VMtfx^mDoR zHr|63I-ht&_B235$ajm(&g^)cWT^2Kn%kIHRK{(_%Or2rYU>(1{l8n}d&Hss+nS&JLEG=SC9!gwm6H4^jvQmA3d z!!SeKRce%5J*GW<-t2aqX;&AMufsCWMlHJGvTmHL)N;C%iIqYF#CV8)zoaJ;q+|Wa z%IlJj>}Rfp$Z41StJ1|1icz0Epy-mP(hNTubULtbpU>GF%M}*TA_OGfI*xOdWVb;X zQ;OFFEmzJ}a*{m(4kQiCPPUXbQmw_o#eV0JYuM*ycHCo9i7%DpJvcg)j8ybg%v94* zRb_rZ;d_PH-yPpkeKJ2=5cnmY3Y=ismLSi6_xa=(;g{iuj?X=Mi9uzgx~j6OD!dm+ z*rTY-c_JjYGY#$iyq!4>-EQj1ExT##DJcs!)`fp-dY@hvYx4+|AIu9<8a#e zD?g~CpCA-r?ZcnlQ}y689S@X>`VRFn_gGb_n+SzslcD)-Unb0`WB*V#3meVxx8_EaF+nM z;5eDw!znZ<_7w8ORZIZo4VZeabKc8SsUo=G2h0_R4V>*XoZ!?G(*epzR2@_eRS8vn zQDLgo(<7^sc0q7yrZLbGOgE4vS0GR3-%I@Y_EQ-_syayiSg=EMWfAmtt~30-uVj{@ zP!?035CLEk!7c)Q?oJ|*e#G`SBg=Q*e1RB&Y=M;Mb^V$X5IhLtQ!dti_|4Jh$dE1C zGFxRweL^Qa5#dkQQrl~}$HmMU;r3>nFa8$hk5CWa z!LdaDxjQ}f72(yH#x+`BvYenyl_4xc@Pz6zc!I`GvxhEWP*A~sax@^6C2V=@>HdZMOqBLlbZ~$=; z3=rKtQg2ETKoO!A&voe zf&LKS9z2J^^d~$<`H8q4AyJB&j(dv~1VEOdgE-YGiV!=Uumm0Sq*<_~zU*-gw_;7c z%82?Y=4g>eAM}D|<=XvD(>VrrfAO!_@E8vBP)=r;^i7Z}5A%|fW>w+#9JKj8J#d6h z6{{2=t^VW)9V;%V64#trC@Dzw<_E)z&NWA%uXPFLY?Oyo3xYA)J^ce`tYtx!bURiM z^6giSm&dozhO$-rlZxLP9HFxo@H}8cW+SgEt-lbjoO}(-9nb~XjG%&OSqrz2yt$ZJ zU@_M~*6Mk#d!UoW9tSMQB8e&ZkkX~;P%=?Poryrcp=$5FC)jgxtvUWcp2{ynB9PQB zP!x3_;T?ga#XxesuAU=xVkvi>`-5M5)F&pV!P^4(87K@cMDxL{jTyq;nqH{c>gU-4 zo`T~VQ8;yw!4kAzVx%r$(Z|bjB|ez67-oN7t~j6)dicfTE%zu-h)gmjn4v2dxV#9g zsBB2btaoep{1ii#J&!d6h@|YnR|A^BTk#)HeJa{NJJ5IXoQAs=7$2#H26h|#W<$`** z#tboVWpH&vb4mXaL|Ik$X$UG<(ph+vHTSHV{)rgW)@GVMQ#oK(YbT!k|N3miXU^|k zW~XL+xl2@^2Xdb3H>09YgO-08p+5TEMO$$vBF4)l((Cb>559Slxve@z)s-8j?*CYx zgPuLSRq`27`K|{=&p-wX5#GPxyc68HaO2{(VdZ!WL9+(&ppdTWke#bdCVu<2+Pe8e;^GN*i5uNsS-X7EW*b=d-NfpEk-V<7k~o z#v6LOez~$7sD=pa5pM-P#~RDG65CR>3|0N^0Kf-Fj@FnhL~A(bNC6dj+me-o-WL^X zxDi)6wxExslwQ4p9n`c`(W`Wcqm0R^*J$Iq3%n0hHO3lZ-w9?u(*C+|ayP6oV#O^%{%q^7P9ZQ|Rw{xDlg40f=>TqDF5O_I@R}6qs zO#!c?j34&?`hQ)?qE!H(-}h<}=@Dh<5S|+Fj@(yc`Zs9Zm7QYhOP317za2dl*se=1 z57!AKm(j)HO}F(RuSEo)BHvL3^3)N0rUS{-#p)W!VxcM_Fu0H+^A^}*jTtBUR9<;& zmgb@HCfM?gfvnl67HO-2{Kt8!1<0%JrA4Wtc)k%I{AT0+)1e*y7`*q>@-fx{Zzh5W zqGnChLT(IfL|#GWt$_QUiX3mihJvo<2IW#Dn(UW6_^rsl6_Eq#YiRf zF^P-siqv5+31Sn{+@|pdcZ+kA%8pO*##wFtUf-C|F%2mmY1>r~9J3}@%iquO%+g#n%;$oCMu zdCa=SKYHLWoa67Y9@yLA2T_KxfU_WP_WXoCH>1wr7-*ax)g2()kn5k4&6Kdo)Fwfy z+)0D3bFP$uT%+%pHh(@B9P@p{7V+e}>~7Q4R3qfyP2*p7w5!haQ1c_K6jIE8Gv!(% z&SUGi{N&m7`?5F9*?&C6i8RNXf9wxt_I5YHz|O+e{hi;c)Q=0s{ zSsm)QUwQRK%#I@dL?fwFybN{9zw*9Iq)zkNeV{C~o469;noK_OkxR{=IvAtmPnet* zb;MZ6SCizN)QI~8m_>3NJ}ge@I6{Eiwx}cfCG;;P|K{qL`zTd^T-(_R*-61T>yjXu zrne&I2NM>g@R0aRg+u3dQlDG|bsuart7Ed!LvPaUp8n*BN6~NZ9@6H&?+}T6p8fvo z)3PWlOip^cNwTdgVQN1~{KZN1653Mi_o1!=AMy_lt2quDer~;BLOr z!I3SfOZC88ayFZWrFCabq9(oWApdNqHtxKfzU8dGIk&!}$|}!N4;6N(&H|6#TlS)g zcq_KWx0DD(NP0$2Ra&kwVo8sappBZ$>P|k2{|A9Ue!p`v%wAwTFbP->Yyu7dGg@Vu znZU-JOfw6|ojMcYGR-_-5-=OKIlw09xi}8ZX^ya22$zL$SqPVfa9L(St1Q&=EK>vQ z12zE%fEx%mG^Yi^w#2a|!nZ{DmS%CQmS!n14*Dvv4Ely{i8w)|pN;U@2$zj?vJo%G zbZeetR<+83e~wv$*|uID)PR$q=e(Tcr7jyaQ^V@|bVZ<2%Z#CdQ$ zjpG^MECK)Jz&Ysit=P-3=gKh`Td}8NZq4RN^gJVw|djSQ&#+-JD-wt_fhy1ofn(c7jb|{B- zDARVxTRY^jo$1~B3DXCt%y|;wp2W4ZN1oavKkdz)oDMj4NW~)l$#JdqlM`A8pF)@0 z8o8X#tLlibMSu- zck(%edCn|o{Rv#%C(J?|D|7w?`S}yXdmj3ElYFBMTC73t>Hz4 zdl4o5BJ%JeTGxvR^CDW`(24V<$5Y#}U9H z-~g}ysH7d3;pt?C!F{wdzYX`zcbLt*XYAJd+BttWNAC-tx=b+9M3#$)DtgxO%eWHuqv zR^v0ffdO70in)UGkqxBooJic`jNt;E7dUUtRiFY=9-ZrzIbeLjFQ@J@sS{P|I5+i* z2j&u#koqzv3SY)N`pcLsd>Qe3dqDk^$xHe&O24uVf620qIgS(m@HO-9YvxCO(s3F4HSQpYc^ud0cHVnXvmK%Lg(xUmhgx)!;rZi9>7+(vu1z`7NHmfL{sz>YR%c#>=W@h|mh zcV3&|S1~7qbq}x?*az%y1FsrVK>&1sYOEg<->;fOZN3V}VOj*+nRgHZ=xPS zF9a5~#p(jbB|w)Pz1Vx&1@+e;^puOeOWT5$k&Y?Q)J#xCQ?nrZugyZBj`>-IxT}FR zz*=A(upZdZR*&>-#6%$F&EQ+8aBrFIZQsJ>yoJko3zzp6F7GYWm$tavw@{xW$_lu;Vn~~@+KCQ-!k{rx3t{d)(l2ce`AJ%-_|W|w={d(zTKoyzm3ZDwqD`I zqHu+GUt3U#0*z)Ze;X%#8z+4mCw&_yeH$lz+f*Ul(MaVTl+-&|O}9lEzJtq+LUKgnDK?y4UlV?WX@ z3fq~H?vKz_{m8tT6#TJHDsHD`?{*mEf2`$Dt_St;qXk!j&5@{5jqe)jaXcKKmTY<*VwkI2OiymX?+)d|ruAq_nly+u> zc-0(C{i5k&z8L%`(>LRvOexS0C;?8V`b=HwKbvj=*YpT5zxEodl;CIel^lnzd=c0Xuav} z$`ae$p3bJAE$wlt-voby(F#F(1~FREZ#!wB7dLHsQ_ztdGy;U#fiOFPUBGT&53skr zZnwWZGWZ+QH3wm8U_06#ebh0CWi2 z*B%$Qt&J)3{Dw1@Hs*-Sf||yHdeGhswXTQlP2Z-knyHz;4Ze@w^L^8;!}}%|D1siU z-Z$6f`)Hl-qma&DkVJF*_CxL3)+5wYKquZ60IJd13H*;oOK{j z0Sp2L1C<><&|*jjJ<2l_frbH99dOMbU_|=>BiaY3+#_Ke1&jv90Ao9tU%zL5-r4j` zd(V^rMfyL`kSj1xAKyWHCL+irgQpnnh`^n)iN% z)!y&1O8dQ;-{JR|R{S2*i{G0C&jy1Y8EL zbU^Xs33IhW9xniNo$3bZCTSUezWcU&s{;rF=xw)_3Ny^x?$r*aD*a_MBE5642TtDY zDU7GR(m}aY-AQ?*9;AFyPtrsN!B~sHbQX{bNkyb$Qg2cpQeRR(QVD4ahU3zw%#8FN z!jwIQvtszCeFoDUKvhl}_>|e2ZGG=_0No>D()eLAIu#7?m{mM*2S3F%$y2!Ke4)p9 zhCYRXIbUF4$rr(VUhlH zo0;l8($uH&MH8mqWE$0Ukm=HngcCNILFX(|SJ;{?pqc_gHG4|S#Y}JsX(_2|JJ2$! zGEyxwvz%%LX(ee6X%%TT3A3Hs?gFZf*`PI4m@nOS*HZO)%3SM!6VByX*F9yge?2`m z*chZuq;;ff(q_^Y(pJ)3(zd6}EL4a&=|4B~fCa#!^yFYqVM_VK?-RI3Fu{w(&>{tA zZ_g$dG?sK(Vdi0NwF-1xneoC6_7Y}W`cH!e!t6}{so4$m5S>k~Dio%GR6;5x<+-5s zP+YJ*Wh!XvPTP17XxCGPB8X#8I!4p)BGqZq5u|!G-8I+KUp0tsZsT~DZE1u@%Prch zl0|50APiQx5Bq@q0P2-|09@2T_^);8U-OjNz|eK+!t}^^)%40JMw`m;1u^WGWxO2h z!#mxFRRHRg?89mS=bWedu;BX$P7EaI=u@C$q~oL$q`6Pwwjl7y6a*fSVN6xVmrNDf zdS70AUtWA)ULa_i1l7TYezT*w7w9K~CBpP=0~+a;umDO}E+xDngPVXBDKpCpr(E4y z%V{0W!VK4}$|x1O%rmDWXl_R|k}?r2L%-0pRG6a~orC>_Igk!INV=y%6GW0J%KV)v zZuUEjRReH$NQ1=hOn+Fr=ai#ubpWkOD;Gf=7kEKsSv31VCsRNdn}aH7+m{JCP3I}n zSyB&rY;OxXPv;rZ4N@KHA?Z5lKBn-AY?$D8M8yNP0^1m6J81`LCutXHHwpb(wLX>u+C%4F(mv7ydhG9L@@#?! zkkApDkCKj&j(0TWnFCSQnH9oRX1<3?F$f_~cQm`2b%8j8C}%tB7Uyt04_xRN9L&u& z$c330J#f6-QIGIk>8Q7Btc$kmdm40=&TAx0JZ>~Y+E<&shZ#yGD!8vw1aVw~GX{qU zvplm4+7-@Ro!L1!RA2@QnlFcn;4oo^i&ukHXu+zAWBbrHW~6vk%Nrf_5k0+Wa5!>u z3puC-ZgUGFfGL+D5m#BrW@*~}NC_~r4_!OKK9HZ4BETs7EW%Hagd&j}^gjm`vb|`dye>q(NDo&5*1lGaOie?5uPri{NCDdNU)ndlNH0>!-mfsPl4) zz&vo!GiGwuPj5Wo@J|2|2L+N!x{gmKC8eY|3U&|RrJpw@kfSL`9{5X-#}}5uDj$t1 zWVB=u1;R;!BRK^mQ({w#2qA4mpU+13#0Ft9ib?n>{E1>aO(>egT2g@k9f4TU)QSHy z^e`XC82cB^NHkkmxc30vz^Xc4LrLa|!31cGz~L!!RkMejuPzQ^7cCwzY`Tp*hs*|EW+B8MU;?)J!p zjVw0L|Ai9$?-Q}Dvc4cच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

qLktZNja4Meb^<$mUoq@$DJB1=ncmB>Ytw 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 Ag8%>k literal 0 HcmV?d00001 diff --git a/wx/viewers/flexpaper/js/jquery.js b/wx/viewers/flexpaper/js/jquery.js new file mode 100644 index 0000000..a448490 --- /dev/null +++ b/wx/viewers/flexpaper/js/jquery.js @@ -0,0 +1,5999 @@ +/*! + * jQuery JavaScript Library v1.4 + * http://jquery.com/ + * + * Copyright 2010, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://docs.jquery.com/License + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2010, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Wed Jan 13 15:23:05 2010 -0500 + */ +(function( window, undefined ) { + +// Define a local copy of jQuery +var jQuery = function( selector, context ) { + // The jQuery object is actually just the init constructor 'enhanced' + return new jQuery.fn.init( selector, context ); + }, + + // Map over jQuery in case of overwrite + _jQuery = window.jQuery, + + // Map over the $ in case of overwrite + _$ = window.$, + + // Use the correct document accordingly with window argument (sandbox) + document = window.document, + + // A central reference to the root jQuery(document) + rootjQuery, + + // A simple way to check for HTML strings or ID strings + // (both of which we optimize for) + quickExpr = /^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/, + + // Is it a simple selector + isSimple = /^.[^:#\[\.,]*$/, + + // Check if a string has a non-whitespace character in it + rnotwhite = /\S/, + + // Used for trimming whitespace + rtrim = /^(\s|\u00A0)+|(\s|\u00A0)+$/g, + + // Match a standalone tag + rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/, + + // Keep a UserAgent string for use with jQuery.browser + userAgent = navigator.userAgent, + + // For matching the engine and version of the browser + browserMatch, + + // Has the ready events already been bound? + readyBound = false, + + // The functions to execute on DOM ready + readyList = [], + + // The ready event handler + DOMContentLoaded, + + // Save a reference to some core methods + toString = Object.prototype.toString, + hasOwnProperty = Object.prototype.hasOwnProperty, + push = Array.prototype.push, + slice = Array.prototype.slice, + indexOf = Array.prototype.indexOf; + +jQuery.fn = jQuery.prototype = { + init: function( selector, context ) { + var match, elem, ret, doc; + + // Handle $(""), $(null), or $(undefined) + if ( !selector ) { + return this; + } + + // Handle $(DOMElement) + if ( selector.nodeType ) { + this.context = this[0] = selector; + this.length = 1; + return this; + } + + // Handle HTML strings + if ( typeof selector === "string" ) { + // Are we dealing with HTML string or an ID? + match = quickExpr.exec( selector ); + + // Verify a match, and that no context was specified for #id + if ( match && (match[1] || !context) ) { + + // HANDLE: $(html) -> $(array) + if ( match[1] ) { + doc = (context ? context.ownerDocument || context : document); + + // If a single string is passed in and it's a single tag + // just do a createElement and skip the rest + ret = rsingleTag.exec( selector ); + + if ( ret ) { + if ( jQuery.isPlainObject( context ) ) { + selector = [ document.createElement( ret[1] ) ]; + jQuery.fn.attr.call( selector, context, true ); + + } else { + selector = [ doc.createElement( ret[1] ) ]; + } + + } else { + ret = buildFragment( [ match[1] ], [ doc ] ); + selector = (ret.cacheable ? ret.fragment.cloneNode(true) : ret.fragment).childNodes; + } + + // HANDLE: $("#id") + } else { + elem = document.getElementById( match[2] ); + + if ( elem ) { + // Handle the case where IE and Opera return items + // by name instead of ID + if ( elem.id !== match[2] ) { + return rootjQuery.find( selector ); + } + + // Otherwise, we inject the element directly into the jQuery object + this.length = 1; + this[0] = elem; + } + + this.context = document; + this.selector = selector; + return this; + } + + // HANDLE: $("TAG") + } else if ( !context && /^\w+$/.test( selector ) ) { + this.selector = selector; + this.context = document; + selector = document.getElementsByTagName( selector ); + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return (context || rootjQuery).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return jQuery( context ).find( selector ); + } + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( jQuery.isFunction( selector ) ) { + return rootjQuery.ready( selector ); + } + + if (selector.selector !== undefined) { + this.selector = selector.selector; + this.context = selector.context; + } + + return jQuery.isArray( selector ) ? + this.setArray( selector ) : + jQuery.makeArray( selector, this ); + }, + + // Start with an empty selector + selector: "", + + // The current version of jQuery being used + jquery: "1.4", + + // The default length of a jQuery object is 0 + length: 0, + + // The number of elements contained in the matched element set + size: function() { + return this.length; + }, + + toArray: function() { + return slice.call( this, 0 ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + return num == null ? + + // Return a 'clean' array + this.toArray() : + + // Return just the object + ( num < 0 ? this.slice(num)[ 0 ] : this[ num ] ); + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems, name, selector ) { + // Build a new jQuery matched element set + var ret = jQuery( elems || null ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + ret.context = this.context; + + if ( name === "find" ) { + ret.selector = this.selector + (this.selector ? " " : "") + selector; + } else if ( name ) { + ret.selector = this.selector + "." + name + "(" + selector + ")"; + } + + // Return the newly-formed element set + return ret; + }, + + // Force the current matched set of elements to become + // the specified array of elements (destroying the stack in the process) + // You should use pushStack() in order to do this, but maintain the stack + setArray: function( elems ) { + // Resetting the length to 0, then using the native Array push + // is a super-fast way to populate an object with array-like properties + this.length = 0; + push.apply( this, elems ); + + return this; + }, + + // Execute a callback for every element in the matched set. + // (You can seed the arguments with an array of args, but this is + // only used internally.) + each: function( callback, args ) { + return jQuery.each( this, callback, args ); + }, + + ready: function( fn ) { + // Attach the listeners + jQuery.bindReady(); + + // If the DOM is already ready + if ( jQuery.isReady ) { + // Execute the function immediately + fn.call( document, jQuery ); + + // Otherwise, remember the function for later + } else if ( readyList ) { + // Add the function to the wait list + readyList.push( fn ); + } + + return this; + }, + + eq: function( i ) { + return i === -1 ? + this.slice( i ) : + this.slice( i, +i + 1 ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ), + "slice", slice.call(arguments).join(",") ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map(this, function( elem, i ) { + return callback.call( elem, i, elem ); + })); + }, + + end: function() { + return this.prevObject || jQuery(null); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: [].sort, + splice: [].splice +}; + +// Give the init function the jQuery prototype for later instantiation +jQuery.fn.init.prototype = jQuery.fn; + +jQuery.extend = jQuery.fn.extend = function() { + // copy reference to target object + var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options, name, src, copy; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !jQuery.isFunction(target) ) { + target = {}; + } + + // extend jQuery itself if only one argument is passed + if ( length === i ) { + target = this; + --i; + } + + for ( ; i < length; i++ ) { + // Only deal with non-null/undefined values + if ( (options = arguments[ i ]) != null ) { + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging object literal values or arrays + if ( deep && copy && ( jQuery.isPlainObject(copy) || jQuery.isArray(copy) ) ) { + var clone = src && ( jQuery.isPlainObject(src) || jQuery.isArray(src) ) ? src + : jQuery.isArray(copy) ? [] : {}; + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend({ + noConflict: function( deep ) { + window.$ = _$; + + if ( deep ) { + window.jQuery = _jQuery; + } + + return jQuery; + }, + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // Handle when the DOM is ready + ready: function() { + // Make sure that the DOM is not already loaded + if ( !jQuery.isReady ) { + // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). + if ( !document.body ) { + return setTimeout( jQuery.ready, 13 ); + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If there are functions bound, to execute + if ( readyList ) { + // Execute all of them + var fn, i = 0; + while ( (fn = readyList[ i++ ]) ) { + fn.call( document, jQuery ); + } + + // Reset the list of functions + readyList = null; + } + + // Trigger any bound ready events + if ( jQuery.fn.triggerHandler ) { + jQuery( document ).triggerHandler( "ready" ); + } + } + }, + + bindReady: function() { + if ( readyBound ) { + return; + } + + readyBound = true; + + // Catch cases where $(document).ready() is called after the + // browser event has already occurred. + if ( document.readyState === "complete" ) { + return jQuery.ready(); + } + + // Mozilla, Opera and webkit nightlies currently support this event + if ( document.addEventListener ) { + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", jQuery.ready, false ); + + // If IE event model is used + } else if ( document.attachEvent ) { + // ensure firing before onload, + // maybe late but safe also for iframes + document.attachEvent("onreadystatechange", DOMContentLoaded); + + // A fallback to window.onload, that will always work + window.attachEvent( "onload", jQuery.ready ); + + // If IE and not a frame + // continually check to see if the document is ready + var toplevel = false; + + try { + toplevel = window.frameElement == null; + } catch(e) {} + + if ( document.documentElement.doScroll && toplevel ) { + doScrollCheck(); + } + } + }, + + // See test/unit/core.js for details concerning isFunction. + // Since version 1.3, DOM methods and functions like alert + // aren't supported. They return false on IE (#2968). + isFunction: function( obj ) { + return toString.call(obj) === "[object Function]"; + }, + + isArray: function( obj ) { + return toString.call(obj) === "[object Array]"; + }, + + isPlainObject: function( obj ) { + // Must be an Object. + // Because of IE, we also have to check the presence of the constructor property. + // Make sure that DOM nodes and window objects don't pass through, as well + if ( !obj || toString.call(obj) !== "[object Object]" || obj.nodeType || obj.setInterval ) { + return false; + } + + // Not own constructor property must be Object + if ( obj.constructor + && !hasOwnProperty.call(obj, "constructor") + && !hasOwnProperty.call(obj.constructor.prototype, "isPrototypeOf") ) { + return false; + } + + // Own properties are enumerated firstly, so to speed up, + // if last one is own, then all properties are own. + + var key; + for ( key in obj ) {} + + return key === undefined || hasOwnProperty.call( obj, key ); + }, + + isEmptyObject: function( obj ) { + for ( var name in obj ) { + return false; + } + return true; + }, + + noop: function() {}, + + // Evalulates a script in a global context + globalEval: function( data ) { + if ( data && rnotwhite.test(data) ) { + // Inspired by code by Andrea Giammarchi + // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html + var head = document.getElementsByTagName("head")[0] || document.documentElement, + script = document.createElement("script"); + + script.type = "text/javascript"; + + if ( jQuery.support.scriptEval ) { + script.appendChild( document.createTextNode( data ) ); + } else { + script.text = data; + } + + // Use insertBefore instead of appendChild to circumvent an IE6 bug. + // This arises when a base node is used (#2709). + head.insertBefore( script, head.firstChild ); + head.removeChild( script ); + } + }, + + nodeName: function( elem, name ) { + return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase(); + }, + + // args is for internal usage only + each: function( object, callback, args ) { + var name, i = 0, + length = object.length, + isObj = length === undefined || jQuery.isFunction(object); + + if ( args ) { + if ( isObj ) { + for ( name in object ) { + if ( callback.apply( object[ name ], args ) === false ) { + break; + } + } + } else { + for ( ; i < length; ) { + if ( callback.apply( object[ i++ ], args ) === false ) { + break; + } + } + } + + // A special, fast, case for the most common use of each + } else { + if ( isObj ) { + for ( name in object ) { + if ( callback.call( object[ name ], name, object[ name ] ) === false ) { + break; + } + } + } else { + for ( var value = object[0]; + i < length && callback.call( value, i, value ) !== false; value = object[++i] ) {} + } + } + + return object; + }, + + trim: function( text ) { + return (text || "").replace( rtrim, "" ); + }, + + // results is for internal usage only + makeArray: function( array, results ) { + var ret = results || []; + + if ( array != null ) { + // The window, strings (and functions) also have 'length' + // The extra typeof function check is to prevent crashes + // in Safari 2 (See: #3039) + if ( array.length == null || typeof array === "string" || jQuery.isFunction(array) || (typeof array !== "function" && array.setInterval) ) { + push.call( ret, array ); + } else { + jQuery.merge( ret, array ); + } + } + + return ret; + }, + + inArray: function( elem, array ) { + if ( array.indexOf ) { + return array.indexOf( elem ); + } + + for ( var i = 0, length = array.length; i < length; i++ ) { + if ( array[ i ] === elem ) { + return i; + } + } + + return -1; + }, + + merge: function( first, second ) { + var i = first.length, j = 0; + + if ( typeof second.length === "number" ) { + for ( var l = second.length; j < l; j++ ) { + first[ i++ ] = second[ j ]; + } + } else { + while ( second[j] !== undefined ) { + first[ i++ ] = second[ j++ ]; + } + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, inv ) { + var ret = []; + + // Go through the array, only saving the items + // that pass the validator function + for ( var i = 0, length = elems.length; i < length; i++ ) { + if ( !inv !== !callback( elems[ i ], i ) ) { + ret.push( elems[ i ] ); + } + } + + return ret; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var ret = [], value; + + // Go through the array, translating each of the items to their + // new value (or values). + for ( var i = 0, length = elems.length; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret[ ret.length ] = value; + } + } + + return ret.concat.apply( [], ret ); + }, + + // A global GUID counter for objects + guid: 1, + + proxy: function( fn, proxy, thisObject ) { + if ( arguments.length === 2 ) { + if ( typeof proxy === "string" ) { + thisObject = fn; + fn = thisObject[ proxy ]; + proxy = undefined; + + } else if ( proxy && !jQuery.isFunction( proxy ) ) { + thisObject = proxy; + proxy = undefined; + } + } + + if ( !proxy && fn ) { + proxy = function() { + return fn.apply( thisObject || this, arguments ); + }; + } + + // Set the guid of unique handler to the same of original handler, so it can be removed + if ( fn ) { + proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++; + } + + // So proxy can be declared as an argument + return proxy; + }, + + // Use of jQuery.browser is frowned upon. + // More details: http://docs.jquery.com/Utilities/jQuery.browser + uaMatch: function( ua ) { + var ret = { browser: "" }; + + ua = ua.toLowerCase(); + + if ( /webkit/.test( ua ) ) { + ret = { browser: "webkit", version: /webkit[\/ ]([\w.]+)/ }; + + } else if ( /opera/.test( ua ) ) { + ret = { browser: "opera", version: /version/.test( ua ) ? /version[\/ ]([\w.]+)/ : /opera[\/ ]([\w.]+)/ }; + + } else if ( /msie/.test( ua ) ) { + ret = { browser: "msie", version: /msie ([\w.]+)/ }; + + } else if ( /mozilla/.test( ua ) && !/compatible/.test( ua ) ) { + ret = { browser: "mozilla", version: /rv:([\w.]+)/ }; + } + + ret.version = (ret.version && ret.version.exec( ua ) || [0, "0"])[1]; + + return ret; + }, + + browser: {} +}); + +browserMatch = jQuery.uaMatch( userAgent ); +if ( browserMatch.browser ) { + jQuery.browser[ browserMatch.browser ] = true; + jQuery.browser.version = browserMatch.version; +} + +// Deprecated, use jQuery.browser.webkit instead +if ( jQuery.browser.webkit ) { + jQuery.browser.safari = true; +} + +if ( indexOf ) { + jQuery.inArray = function( elem, array ) { + return indexOf.call( array, elem ); + }; +} + +// All jQuery objects should point back to these +rootjQuery = jQuery(document); + +// Cleanup functions for the document ready method +if ( document.addEventListener ) { + DOMContentLoaded = function() { + document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); + jQuery.ready(); + }; + +} else if ( document.attachEvent ) { + DOMContentLoaded = function() { + // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). + if ( document.readyState === "complete" ) { + document.detachEvent( "onreadystatechange", DOMContentLoaded ); + jQuery.ready(); + } + }; +} + +// The DOM ready check for Internet Explorer +function doScrollCheck() { + if ( jQuery.isReady ) { + return; + } + + try { + // If IE is used, use the trick by Diego Perini + // http://javascript.nwbox.com/IEContentLoaded/ + document.documentElement.doScroll("left"); + } catch( error ) { + setTimeout( doScrollCheck, 1 ); + return; + } + + // and execute any waiting functions + jQuery.ready(); +} + +if ( indexOf ) { + jQuery.inArray = function( elem, array ) { + return indexOf.call( array, elem ); + }; +} + +function evalScript( i, elem ) { + if ( elem.src ) { + jQuery.ajax({ + url: elem.src, + async: false, + dataType: "script" + }); + } else { + jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" ); + } + + if ( elem.parentNode ) { + elem.parentNode.removeChild( elem ); + } +} + +// Mutifunctional method to get and set values to a collection +// The value/s can be optionally by executed if its a function +function access( elems, key, value, exec, fn, pass ) { + var length = elems.length; + + // Setting many attributes + if ( typeof key === "object" ) { + for ( var k in key ) { + access( elems, k, key[k], exec, fn, value ); + } + return elems; + } + + // Setting one attribute + if ( value !== undefined ) { + // Optionally, function values get executed if exec is true + exec = !pass && exec && jQuery.isFunction(value); + + for ( var i = 0; i < length; i++ ) { + fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass ); + } + + return elems; + } + + // Getting an attribute + return length ? fn( elems[0], key ) : null; +} + +function now() { + return (new Date).getTime(); +} +(function() { + + jQuery.support = {}; + + var root = document.documentElement, + script = document.createElement("script"), + div = document.createElement("div"), + id = "script" + now(); + + div.style.display = "none"; + div.innerHTML = "
a"; + + var all = div.getElementsByTagName("*"), + a = div.getElementsByTagName("a")[0]; + + // Can't get basic test support + if ( !all || !all.length || !a ) { + return; + } + + jQuery.support = { + // IE strips leading whitespace when .innerHTML is used + leadingWhitespace: div.firstChild.nodeType === 3, + + // Make sure that tbody elements aren't automatically inserted + // IE will insert them into empty tables + tbody: !div.getElementsByTagName("tbody").length, + + // Make sure that link elements get serialized correctly by innerHTML + // This requires a wrapper element in IE + htmlSerialize: !!div.getElementsByTagName("link").length, + + // Get the style information from getAttribute + // (IE uses .cssText insted) + style: /red/.test( a.getAttribute("style") ), + + // Make sure that URLs aren't manipulated + // (IE normalizes it by default) + hrefNormalized: a.getAttribute("href") === "/a", + + // Make sure that element opacity exists + // (IE uses filter instead) + // Use a regex to work around a WebKit issue. See #5145 + opacity: /^0.55$/.test( a.style.opacity ), + + // Verify style float existence + // (IE uses styleFloat instead of cssFloat) + cssFloat: !!a.style.cssFloat, + + // Make sure that if no value is specified for a checkbox + // that it defaults to "on". + // (WebKit defaults to "" instead) + checkOn: div.getElementsByTagName("input")[0].value === "on", + + // Make sure that a selected-by-default option has a working selected property. + // (WebKit defaults to false instead of true, IE too, if it's in an optgroup) + optSelected: document.createElement("select").appendChild( document.createElement("option") ).selected, + + // Will be defined later + scriptEval: false, + noCloneEvent: true, + boxModel: null + }; + + script.type = "text/javascript"; + try { + script.appendChild( document.createTextNode( "window." + id + "=1;" ) ); + } catch(e) {} + + root.insertBefore( script, root.firstChild ); + + // Make sure that the execution of code works by injecting a script + // tag with appendChild/createTextNode + // (IE doesn't support this, fails, and uses .text instead) + if ( window[ id ] ) { + jQuery.support.scriptEval = true; + delete window[ id ]; + } + + root.removeChild( script ); + + if ( div.attachEvent && div.fireEvent ) { + div.attachEvent("onclick", function click() { + // Cloning a node shouldn't copy over any + // bound event handlers (IE does this) + jQuery.support.noCloneEvent = false; + div.detachEvent("onclick", click); + }); + div.cloneNode(true).fireEvent("onclick"); + } + + // Figure out if the W3C box model works as expected + // document.body must exist before we can do this + // TODO: This timeout is temporary until I move ready into core.js. + jQuery(function() { + var div = document.createElement("div"); + div.style.width = div.style.paddingLeft = "1px"; + + document.body.appendChild( div ); + jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2; + document.body.removeChild( div ).style.display = 'none'; + div = null; + }); + + // Technique from Juriy Zaytsev + // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/ + var eventSupported = function( eventName ) { + var el = document.createElement("div"); + eventName = "on" + eventName; + + var isSupported = (eventName in el); + if ( !isSupported ) { + el.setAttribute(eventName, "return;"); + isSupported = typeof el[eventName] === "function"; + } + el = null; + + return isSupported; + }; + + jQuery.support.submitBubbles = eventSupported("submit"); + jQuery.support.changeBubbles = eventSupported("change"); + + // release memory in IE + root = script = div = all = a = null; +})(); + +jQuery.props = { + "for": "htmlFor", + "class": "className", + readonly: "readOnly", + maxlength: "maxLength", + cellspacing: "cellSpacing", + rowspan: "rowSpan", + colspan: "colSpan", + tabindex: "tabIndex", + usemap: "useMap", + frameborder: "frameBorder" +}; +var expando = "jQuery" + now(), uuid = 0, windowData = {}; +var emptyObject = {}; + +jQuery.extend({ + cache: {}, + + expando:expando, + + // The following elements throw uncatchable exceptions if you + // attempt to add expando properties to them. + noData: { + "embed": true, + "object": true, + "applet": true + }, + + data: function( elem, name, data ) { + if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) { + return; + } + + elem = elem == window ? + windowData : + elem; + + var id = elem[ expando ], cache = jQuery.cache, thisCache; + + // Handle the case where there's no name immediately + if ( !name && !id ) { + return null; + } + + // Compute a unique ID for the element + if ( !id ) { + id = ++uuid; + } + + // Avoid generating a new cache unless none exists and we + // want to manipulate it. + if ( typeof name === "object" ) { + elem[ expando ] = id; + thisCache = cache[ id ] = jQuery.extend(true, {}, name); + } else if ( cache[ id ] ) { + thisCache = cache[ id ]; + } else if ( typeof data === "undefined" ) { + thisCache = emptyObject; + } else { + thisCache = cache[ id ] = {}; + } + + // Prevent overriding the named cache with undefined values + if ( data !== undefined ) { + elem[ expando ] = id; + thisCache[ name ] = data; + } + + return typeof name === "string" ? thisCache[ name ] : thisCache; + }, + + removeData: function( elem, name ) { + if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) { + return; + } + + elem = elem == window ? + windowData : + elem; + + var id = elem[ expando ], cache = jQuery.cache, thisCache = cache[ id ]; + + // If we want to remove a specific section of the element's data + if ( name ) { + if ( thisCache ) { + // Remove the section of cache data + delete thisCache[ name ]; + + // If we've removed all the data, remove the element's cache + if ( jQuery.isEmptyObject(thisCache) ) { + jQuery.removeData( elem ); + } + } + + // Otherwise, we want to remove all of the element's data + } else { + // Clean up the element expando + try { + delete elem[ expando ]; + } catch( e ) { + // IE has trouble directly removing the expando + // but it's ok with using removeAttribute + if ( elem.removeAttribute ) { + elem.removeAttribute( expando ); + } + } + + // Completely remove the data cache + delete cache[ id ]; + } + } +}); + +jQuery.fn.extend({ + data: function( key, value ) { + if ( typeof key === "undefined" && this.length ) { + return jQuery.data( this[0] ); + + } else if ( typeof key === "object" ) { + return this.each(function() { + jQuery.data( this, key ); + }); + } + + var parts = key.split("."); + parts[1] = parts[1] ? "." + parts[1] : ""; + + if ( value === undefined ) { + var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); + + if ( data === undefined && this.length ) { + data = jQuery.data( this[0], key ); + } + return data === undefined && parts[1] ? + this.data( parts[0] ) : + data; + } else { + return this.trigger("setData" + parts[1] + "!", [parts[0], value]).each(function() { + jQuery.data( this, key, value ); + }); + } + }, + + removeData: function( key ) { + return this.each(function() { + jQuery.removeData( this, key ); + }); + } +}); +jQuery.extend({ + queue: function( elem, type, data ) { + if ( !elem ) { + return; + } + + type = (type || "fx") + "queue"; + var q = jQuery.data( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( !data ) { + return q || []; + } + + if ( !q || jQuery.isArray(data) ) { + q = jQuery.data( elem, type, jQuery.makeArray(data) ); + + } else { + q.push( data ); + } + + return q; + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), fn = queue.shift(); + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + } + + if ( fn ) { + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift("inprogress"); + } + + fn.call(elem, function() { + jQuery.dequeue(elem, type); + }); + } + } +}); + +jQuery.fn.extend({ + queue: function( type, data ) { + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + } + + if ( data === undefined ) { + return jQuery.queue( this[0], type ); + } + return this.each(function( i, elem ) { + var queue = jQuery.queue( this, type, data ); + + if ( type === "fx" && queue[0] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + }); + }, + dequeue: function( type ) { + return this.each(function() { + jQuery.dequeue( this, type ); + }); + }, + + // Based off of the plugin by Clint Helfers, with permission. + // http://blindsignals.com/index.php/2009/07/jquery-delay/ + delay: function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[time] || time : time; + type = type || "fx"; + + return this.queue( type, function() { + var elem = this; + setTimeout(function() { + jQuery.dequeue( elem, type ); + }, time ); + }); + }, + + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + } +}); +var rclass = /[\n\t]/g, + rspace = /\s+/, + rreturn = /\r/g, + rspecialurl = /href|src|style/, + rtype = /(button|input)/i, + rfocusable = /(button|input|object|select|textarea)/i, + rclickable = /^(a|area)$/i, + rradiocheck = /radio|checkbox/; + +jQuery.fn.extend({ + attr: function( name, value ) { + return access( this, name, value, true, jQuery.attr ); + }, + + removeAttr: function( name, fn ) { + return this.each(function(){ + jQuery.attr( this, name, "" ); + if ( this.nodeType === 1 ) { + this.removeAttribute( name ); + } + }); + }, + + addClass: function( value ) { + if ( jQuery.isFunction(value) ) { + return this.each(function(i) { + var self = jQuery(this); + self.addClass( value.call(this, i, self.attr("class")) ); + }); + } + + if ( value && typeof value === "string" ) { + var classNames = (value || "").split( rspace ); + + for ( var i = 0, l = this.length; i < l; i++ ) { + var elem = this[i]; + + if ( elem.nodeType === 1 ) { + if ( !elem.className ) { + elem.className = value; + + } else { + var className = " " + elem.className + " "; + for ( var c = 0, cl = classNames.length; c < cl; c++ ) { + if ( className.indexOf( " " + classNames[c] + " " ) < 0 ) { + elem.className += " " + classNames[c]; + } + } + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + if ( jQuery.isFunction(value) ) { + return this.each(function(i) { + var self = jQuery(this); + self.removeClass( value.call(this, i, self.attr("class")) ); + }); + } + + if ( (value && typeof value === "string") || value === undefined ) { + var classNames = (value || "").split(rspace); + + for ( var i = 0, l = this.length; i < l; i++ ) { + var elem = this[i]; + + if ( elem.nodeType === 1 && elem.className ) { + if ( value ) { + var className = (" " + elem.className + " ").replace(rclass, " "); + for ( var c = 0, cl = classNames.length; c < cl; c++ ) { + className = className.replace(" " + classNames[c] + " ", " "); + } + elem.className = className.substring(1, className.length - 1); + + } else { + elem.className = ""; + } + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, isBool = typeof stateVal === "boolean"; + + if ( jQuery.isFunction( value ) ) { + return this.each(function(i) { + var self = jQuery(this); + self.toggleClass( value.call(this, i, self.attr("class"), stateVal), stateVal ); + }); + } + + return this.each(function() { + if ( type === "string" ) { + // toggle individual class names + var className, i = 0, self = jQuery(this), + state = stateVal, + classNames = value.split( rspace ); + + while ( (className = classNames[ i++ ]) ) { + // check each className given, space seperated list + state = isBool ? state : !self.hasClass( className ); + self[ state ? "addClass" : "removeClass" ]( className ); + } + + } else if ( type === "undefined" || type === "boolean" ) { + if ( this.className ) { + // store className if set + jQuery.data( this, "__className__", this.className ); + } + + // toggle whole className + this.className = this.className || value === false ? "" : jQuery.data( this, "__className__" ) || ""; + } + }); + }, + + hasClass: function( selector ) { + var className = " " + selector + " "; + for ( var i = 0, l = this.length; i < l; i++ ) { + if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) { + return true; + } + } + + return false; + }, + + val: function( value ) { + if ( value === undefined ) { + var elem = this[0]; + + if ( elem ) { + if ( jQuery.nodeName( elem, "option" ) ) { + return (elem.attributes.value || {}).specified ? elem.value : elem.text; + } + + // We need to handle select boxes special + if ( jQuery.nodeName( elem, "select" ) ) { + var index = elem.selectedIndex, + values = [], + options = elem.options, + one = elem.type === "select-one"; + + // Nothing was selected + if ( index < 0 ) { + return null; + } + + // Loop through all the selected options + for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) { + var option = options[ i ]; + + if ( option.selected ) { + // Get the specifc value for the option + value = jQuery(option).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + } + + // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified + if ( rradiocheck.test( elem.type ) && !jQuery.support.checkOn ) { + return elem.getAttribute("value") === null ? "on" : elem.value; + } + + + // Everything else, we just grab the value + return (elem.value || "").replace(rreturn, ""); + + } + + return undefined; + } + + var isFunction = jQuery.isFunction(value); + + return this.each(function(i) { + var self = jQuery(this), val = value; + + if ( this.nodeType !== 1 ) { + return; + } + + if ( isFunction ) { + val = value.call(this, i, self.val()); + } + + // Typecast each time if the value is a Function and the appended + // value is therefore different each time. + if ( typeof val === "number" ) { + val += ""; + } + + if ( jQuery.isArray(val) && rradiocheck.test( this.type ) ) { + this.checked = jQuery.inArray( self.val(), val ) >= 0; + + } else if ( jQuery.nodeName( this, "select" ) ) { + var values = jQuery.makeArray(val); + + jQuery( "option", this ).each(function() { + this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0; + }); + + if ( !values.length ) { + this.selectedIndex = -1; + } + + } else { + this.value = val; + } + }); + } +}); + +jQuery.extend({ + attrFn: { + val: true, + css: true, + html: true, + text: true, + data: true, + width: true, + height: true, + offset: true + }, + + attr: function( elem, name, value, pass ) { + // don't set attributes on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) { + return undefined; + } + + if ( pass && name in jQuery.attrFn ) { + return jQuery(elem)[name](value); + } + + var notxml = elem.nodeType !== 1 || !jQuery.isXMLDoc( elem ), + // Whether we are setting (or getting) + set = value !== undefined; + + // Try to normalize/fix the name + name = notxml && jQuery.props[ name ] || name; + + // Only do all the following if this is a node (faster for style) + if ( elem.nodeType === 1 ) { + // These attributes require special treatment + var special = rspecialurl.test( name ); + + // Safari mis-reports the default selected property of an option + // Accessing the parent's selectedIndex property fixes it + if ( name === "selected" && !jQuery.support.optSelected ) { + var parent = elem.parentNode; + if ( parent ) { + parent.selectedIndex; + + // Make sure that it also works with optgroups, see #5701 + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + } + + // If applicable, access the attribute via the DOM 0 way + if ( name in elem && notxml && !special ) { + if ( set ) { + // We can't allow the type property to be changed (since it causes problems in IE) + if ( name === "type" && rtype.test( elem.nodeName ) && elem.parentNode ) { + throw "type property can't be changed"; + } + + elem[ name ] = value; + } + + // browsers index elements by id/name on forms, give priority to attributes. + if ( jQuery.nodeName( elem, "form" ) && elem.getAttributeNode(name) ) { + return elem.getAttributeNode( name ).nodeValue; + } + + // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set + // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + if ( name === "tabIndex" ) { + var attributeNode = elem.getAttributeNode( "tabIndex" ); + + return attributeNode && attributeNode.specified ? + attributeNode.value : + rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ? + 0 : + undefined; + } + + return elem[ name ]; + } + + if ( !jQuery.support.style && notxml && name === "style" ) { + if ( set ) { + elem.style.cssText = "" + value; + } + + return elem.style.cssText; + } + + if ( set ) { + // convert the value to a string (all browsers do this but IE) see #1070 + elem.setAttribute( name, "" + value ); + } + + var attr = !jQuery.support.hrefNormalized && notxml && special ? + // Some attributes require a special call on IE + elem.getAttribute( name, 2 ) : + elem.getAttribute( name ); + + // Non-existent attributes return null, we normalize to undefined + return attr === null ? undefined : attr; + } + + // elem is actually elem.style ... set the style + // Using attr for specific style information is now deprecated. Use style insead. + return jQuery.style( elem, name, value ); + } +}); +var fcleanup = function( nm ) { + return nm.replace(/[^\w\s\.\|`]/g, function( ch ) { + return "\\" + ch; + }); +}; + +/* + * A number of helper functions used for managing events. + * Many of the ideas behind this code originated from + * Dean Edwards' addEvent library. + */ +jQuery.event = { + + // Bind an event to an element + // Original by Dean Edwards + add: function( elem, types, handler, data ) { + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // For whatever reason, IE has trouble passing the window object + // around, causing it to be cloned in the process + if ( elem.setInterval && ( elem !== window && !elem.frameElement ) ) { + elem = window; + } + + // Make sure that the function being executed has a unique ID + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // if data is passed, bind to handler + if ( data !== undefined ) { + // Create temporary function pointer to original handler + var fn = handler; + + // Create unique handler function, wrapped around original handler + handler = jQuery.proxy( fn ); + + // Store data in unique handler + handler.data = data; + } + + // Init the element's event structure + var events = jQuery.data( elem, "events" ) || jQuery.data( elem, "events", {} ), + handle = jQuery.data( elem, "handle" ), eventHandle; + + if ( !handle ) { + eventHandle = function() { + // Handle the second event of a trigger and when + // an event is called after a page has unloaded + return typeof jQuery !== "undefined" && !jQuery.event.triggered ? + jQuery.event.handle.apply( eventHandle.elem, arguments ) : + undefined; + }; + + handle = jQuery.data( elem, "handle", eventHandle ); + } + + // If no handle is found then we must be trying to bind to one of the + // banned noData elements + if ( !handle ) { + return; + } + + // Add elem as a property of the handle function + // This is to prevent a memory leak with non-native + // event in IE. + handle.elem = elem; + + // Handle multiple events separated by a space + // jQuery(...).bind("mouseover mouseout", fn); + types = types.split( /\s+/ ); + var type, i=0; + while ( (type = types[ i++ ]) ) { + // Namespaced event handlers + var namespaces = type.split("."); + type = namespaces.shift(); + handler.type = namespaces.slice(0).sort().join("."); + + // Get the current list of functions bound to this event + var handlers = events[ type ], + special = this.special[ type ] || {}; + + + + // Init the event handler queue + if ( !handlers ) { + handlers = events[ type ] = {}; + + // Check for a special event handler + // Only use addEventListener/attachEvent if the special + // events handler returns false + if ( !special.setup || special.setup.call( elem, data, namespaces, handler) === false ) { + // Bind the global event handler to the element + if ( elem.addEventListener ) { + elem.addEventListener( type, handle, false ); + } else if ( elem.attachEvent ) { + elem.attachEvent( "on" + type, handle ); + } + } + } + + if ( special.add ) { + var modifiedHandler = special.add.call( elem, handler, data, namespaces, handlers ); + if ( modifiedHandler && jQuery.isFunction( modifiedHandler ) ) { + modifiedHandler.guid = modifiedHandler.guid || handler.guid; + handler = modifiedHandler; + } + } + + // Add the function to the element's handler list + handlers[ handler.guid ] = handler; + + // Keep track of which events have been used, for global triggering + this.global[ type ] = true; + } + + // Nullify elem to prevent memory leaks in IE + elem = null; + }, + + global: {}, + + // Detach an event or set of events from an element + remove: function( elem, types, handler ) { + // don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + var events = jQuery.data( elem, "events" ), ret, type, fn; + + if ( events ) { + // Unbind all events for the element + if ( types === undefined || (typeof types === "string" && types.charAt(0) === ".") ) { + for ( type in events ) { + this.remove( elem, type + (types || "") ); + } + } else { + // types is actually an event object here + if ( types.type ) { + handler = types.handler; + types = types.type; + } + + // Handle multiple events separated by a space + // jQuery(...).unbind("mouseover mouseout", fn); + types = types.split(/\s+/); + var i = 0; + while ( (type = types[ i++ ]) ) { + // Namespaced event handlers + var namespaces = type.split("."); + type = namespaces.shift(); + var all = !namespaces.length, + cleaned = jQuery.map( namespaces.slice(0).sort(), fcleanup ), + namespace = new RegExp("(^|\\.)" + cleaned.join("\\.(?:.*\\.)?") + "(\\.|$)"), + special = this.special[ type ] || {}; + + if ( events[ type ] ) { + // remove the given handler for the given type + if ( handler ) { + fn = events[ type ][ handler.guid ]; + delete events[ type ][ handler.guid ]; + + // remove all handlers for the given type + } else { + for ( var handle in events[ type ] ) { + // Handle the removal of namespaced events + if ( all || namespace.test( events[ type ][ handle ].type ) ) { + delete events[ type ][ handle ]; + } + } + } + + if ( special.remove ) { + special.remove.call( elem, namespaces, fn); + } + + // remove generic event handler if no more handlers exist + for ( ret in events[ type ] ) { + break; + } + if ( !ret ) { + if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) { + if ( elem.removeEventListener ) { + elem.removeEventListener( type, jQuery.data( elem, "handle" ), false ); + } else if ( elem.detachEvent ) { + elem.detachEvent( "on" + type, jQuery.data( elem, "handle" ) ); + } + } + ret = null; + delete events[ type ]; + } + } + } + } + + // Remove the expando if it's no longer used + for ( ret in events ) { + break; + } + if ( !ret ) { + var handle = jQuery.data( elem, "handle" ); + if ( handle ) { + handle.elem = null; + } + jQuery.removeData( elem, "events" ); + jQuery.removeData( elem, "handle" ); + } + } + }, + + // bubbling is internal + trigger: function( event, data, elem /*, bubbling */ ) { + // Event object or event type + var type = event.type || event, + bubbling = arguments[3]; + + if ( !bubbling ) { + event = typeof event === "object" ? + // jQuery.Event object + event[expando] ? event : + // Object literal + jQuery.extend( jQuery.Event(type), event ) : + // Just the event type (string) + jQuery.Event(type); + + if ( type.indexOf("!") >= 0 ) { + event.type = type = type.slice(0, -1); + event.exclusive = true; + } + + // Handle a global trigger + if ( !elem ) { + // Don't bubble custom events when global (to avoid too much overhead) + event.stopPropagation(); + + // Only trigger if we've ever bound an event for it + if ( this.global[ type ] ) { + jQuery.each( jQuery.cache, function() { + if ( this.events && this.events[type] ) { + jQuery.event.trigger( event, data, this.handle.elem ); + } + }); + } + } + + // Handle triggering a single element + + // don't do events on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 ) { + return undefined; + } + + // Clean up in case it is reused + event.result = undefined; + event.target = elem; + + // Clone the incoming data, if any + data = jQuery.makeArray( data ); + data.unshift( event ); + } + + event.currentTarget = elem; + + // Trigger the event, it is assumed that "handle" is a function + var handle = jQuery.data( elem, "handle" ); + if ( handle ) { + handle.apply( elem, data ); + } + + var nativeFn, nativeHandler; + try { + if ( !(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) ) { + nativeFn = elem[ type ]; + nativeHandler = elem[ "on" + type ]; + } + // prevent IE from throwing an error for some elements with some event types, see #3533 + } catch (e) {} + + var isClick = jQuery.nodeName(elem, "a") && type === "click"; + + // Trigger the native events (except for clicks on links) + if ( !bubbling && nativeFn && !event.isDefaultPrevented() && !isClick ) { + this.triggered = true; + try { + elem[ type ](); + // prevent IE from throwing an error for some hidden elements + } catch (e) {} + + // Handle triggering native .onfoo handlers + } else if ( nativeHandler && elem[ "on" + type ].apply( elem, data ) === false ) { + event.result = false; + } + + this.triggered = false; + + if ( !event.isPropagationStopped() ) { + var parent = elem.parentNode || elem.ownerDocument; + if ( parent ) { + jQuery.event.trigger( event, data, parent, true ); + } + } + }, + + handle: function( event ) { + // returned undefined or false + var all, handlers; + + event = arguments[0] = jQuery.event.fix( event || window.event ); + event.currentTarget = this; + + // Namespaced event handlers + var namespaces = event.type.split("."); + event.type = namespaces.shift(); + + // Cache this now, all = true means, any handler + all = !namespaces.length && !event.exclusive; + + var namespace = new RegExp("(^|\\.)" + namespaces.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)"); + + handlers = ( jQuery.data(this, "events") || {} )[ event.type ]; + + for ( var j in handlers ) { + var handler = handlers[ j ]; + + // Filter the functions by class + if ( all || namespace.test(handler.type) ) { + // Pass in a reference to the handler function itself + // So that we can later remove it + event.handler = handler; + event.data = handler.data; + + var ret = handler.apply( this, arguments ); + + if ( ret !== undefined ) { + event.result = ret; + if ( ret === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + + if ( event.isImmediatePropagationStopped() ) { + break; + } + + } + } + + return event.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(" "), + + fix: function( event ) { + if ( event[ expando ] ) { + return event; + } + + // store a copy of the original event object + // and "clone" to set read-only properties + var originalEvent = event; + event = jQuery.Event( originalEvent ); + + for ( var i = this.props.length, prop; i; ) { + prop = this.props[ --i ]; + event[ prop ] = originalEvent[ prop ]; + } + + // Fix target property, if necessary + if ( !event.target ) { + event.target = event.srcElement || document; // Fixes #1925 where srcElement might not be defined either + } + + // check if target is a textnode (safari) + if ( event.target.nodeType === 3 ) { + event.target = event.target.parentNode; + } + + // Add relatedTarget, if necessary + if ( !event.relatedTarget && event.fromElement ) { + event.relatedTarget = event.fromElement === event.target ? event.toElement : event.fromElement; + } + + // Calculate pageX/Y if missing and clientX/Y available + if ( event.pageX == null && event.clientX != null ) { + var doc = document.documentElement, body = document.body; + event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0); + event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0); + } + + // Add which for key events + if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) ) { + event.which = event.charCode || event.keyCode; + } + + // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) + if ( !event.metaKey && event.ctrlKey ) { + event.metaKey = event.ctrlKey; + } + + // Add which for click: 1 === left; 2 === middle; 3 === right + // Note: button is not normalized, so don't use it + if ( !event.which && event.button !== undefined ) { + event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); + } + + return event; + }, + + // Deprecated, use jQuery.guid instead + guid: 1E8, + + // Deprecated, use jQuery.proxy instead + proxy: jQuery.proxy, + + special: { + ready: { + // Make sure the ready event is setup + setup: jQuery.bindReady, + teardown: jQuery.noop + }, + + live: { + add: function( proxy, data, namespaces, live ) { + jQuery.extend( proxy, data || {} ); + + proxy.guid += data.selector + data.live; + jQuery.event.add( this, data.live, liveHandler, data ); + + }, + + remove: function( namespaces ) { + if ( namespaces.length ) { + var remove = 0, name = new RegExp("(^|\\.)" + namespaces[0] + "(\\.|$)"); + + jQuery.each( (jQuery.data(this, "events").live || {}), function() { + if ( name.test(this.type) ) { + remove++; + } + }); + + if ( remove < 1 ) { + jQuery.event.remove( this, namespaces[0], liveHandler ); + } + } + }, + special: {} + }, + beforeunload: { + setup: function( data, namespaces, fn ) { + // We only want to do this special case on windows + if ( this.setInterval ) { + this.onbeforeunload = fn; + } + + return false; + }, + teardown: function( namespaces, fn ) { + if ( this.onbeforeunload === fn ) { + this.onbeforeunload = null; + } + } + } + } +}; + +jQuery.Event = function( src ) { + // Allow instantiation without the 'new' keyword + if ( !this.preventDefault ) { + return new jQuery.Event( src ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + // Event type + } else { + this.type = src; + } + + // timeStamp is buggy for some events on Firefox(#3843) + // So we won't rely on the native value + this.timeStamp = now(); + + // Mark it as fixed + this[ expando ] = true; +}; + +function returnFalse() { + return false; +} +function returnTrue() { + return true; +} + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + preventDefault: function() { + this.isDefaultPrevented = returnTrue; + + var e = this.originalEvent; + if ( !e ) { + return; + } + + // if preventDefault exists run it on the original event + if ( e.preventDefault ) { + e.preventDefault(); + } + // otherwise set the returnValue property of the original event to false (IE) + e.returnValue = false; + }, + stopPropagation: function() { + this.isPropagationStopped = returnTrue; + + var e = this.originalEvent; + if ( !e ) { + return; + } + // if stopPropagation exists run it on the original event + if ( e.stopPropagation ) { + e.stopPropagation(); + } + // otherwise set the cancelBubble property of the original event to true (IE) + e.cancelBubble = true; + }, + stopImmediatePropagation: function() { + this.isImmediatePropagationStopped = returnTrue; + this.stopPropagation(); + }, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse +}; + +// Checks if an event happened on an element within another element +// Used in jQuery.event.special.mouseenter and mouseleave handlers +var withinElement = function( event ) { + // Check if mouse(over|out) are still within the same parent element + var parent = event.relatedTarget; + + // Traverse up the tree + while ( parent && parent !== this ) { + // Firefox sometimes assigns relatedTarget a XUL element + // which we cannot access the parentNode property of + try { + parent = parent.parentNode; + + // assuming we've left the element since we most likely mousedover a xul element + } catch(e) { + break; + } + } + + if ( parent !== this ) { + // set the correct event type + event.type = event.data; + + // handle event if we actually just moused on to a non sub-element + jQuery.event.handle.apply( this, arguments ); + } + +}, + +// In case of event delegation, we only need to rename the event.type, +// liveHandler will take care of the rest. +delegate = function( event ) { + event.type = event.data; + jQuery.event.handle.apply( this, arguments ); +}; + +// Create mouseenter and mouseleave events +jQuery.each({ + mouseenter: "mouseover", + mouseleave: "mouseout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + setup: function( data ) { + jQuery.event.add( this, fix, data && data.selector ? delegate : withinElement, orig ); + }, + teardown: function( data ) { + jQuery.event.remove( this, fix, data && data.selector ? delegate : withinElement ); + } + }; +}); + +// submit delegation +if ( !jQuery.support.submitBubbles ) { + +jQuery.event.special.submit = { + setup: function( data, namespaces, fn ) { + if ( this.nodeName.toLowerCase() !== "form" ) { + jQuery.event.add(this, "click.specialSubmit." + fn.guid, function( e ) { + var elem = e.target, type = elem.type; + + if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) { + return trigger( "submit", this, arguments ); + } + }); + + jQuery.event.add(this, "keypress.specialSubmit." + fn.guid, function( e ) { + var elem = e.target, type = elem.type; + + if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) { + return trigger( "submit", this, arguments ); + } + }); + + } else { + return false; + } + }, + + remove: function( namespaces, fn ) { + jQuery.event.remove( this, "click.specialSubmit" + (fn ? "."+fn.guid : "") ); + jQuery.event.remove( this, "keypress.specialSubmit" + (fn ? "."+fn.guid : "") ); + } +}; + +} + +// change delegation, happens here so we have bind. +if ( !jQuery.support.changeBubbles ) { + +var formElems = /textarea|input|select/i; + +function getVal( elem ) { + var type = elem.type, val = elem.value; + + if ( type === "radio" || type === "checkbox" ) { + val = elem.checked; + + } else if ( type === "select-multiple" ) { + val = elem.selectedIndex > -1 ? + jQuery.map( elem.options, function( elem ) { + return elem.selected; + }).join("-") : + ""; + + } else if ( elem.nodeName.toLowerCase() === "select" ) { + val = elem.selectedIndex; + } + + return val; +} + +function testChange( e ) { + var elem = e.target, data, val; + + if ( !formElems.test( elem.nodeName ) || elem.readOnly ) { + return; + } + + data = jQuery.data( elem, "_change_data" ); + val = getVal(elem); + + if ( val === data ) { + return; + } + + // the current data will be also retrieved by beforeactivate + if ( e.type !== "focusout" || elem.type !== "radio" ) { + jQuery.data( elem, "_change_data", val ); + } + + if ( elem.type !== "select" && (data != null || val) ) { + e.type = "change"; + return jQuery.event.trigger( e, arguments[1], this ); + } +} + +jQuery.event.special.change = { + filters: { + focusout: testChange, + + click: function( e ) { + var elem = e.target, type = elem.type; + + if ( type === "radio" || type === "checkbox" || elem.nodeName.toLowerCase() === "select" ) { + return testChange.call( this, e ); + } + }, + + // Change has to be called before submit + // Keydown will be called before keypress, which is used in submit-event delegation + keydown: function( e ) { + var elem = e.target, type = elem.type; + + if ( (e.keyCode === 13 && elem.nodeName.toLowerCase() !== "textarea") || + (e.keyCode === 32 && (type === "checkbox" || type === "radio")) || + type === "select-multiple" ) { + return testChange.call( this, e ); + } + }, + + // Beforeactivate happens also before the previous element is blurred + // with this event you can't trigger a change event, but you can store + // information/focus[in] is not needed anymore + beforeactivate: function( e ) { + var elem = e.target; + + if ( elem.nodeName.toLowerCase() === "input" && elem.type === "radio" ) { + jQuery.data( elem, "_change_data", getVal(elem) ); + } + } + }, + setup: function( data, namespaces, fn ) { + for ( var type in changeFilters ) { + jQuery.event.add( this, type + ".specialChange." + fn.guid, changeFilters[type] ); + } + + return formElems.test( this.nodeName ); + }, + remove: function( namespaces, fn ) { + for ( var type in changeFilters ) { + jQuery.event.remove( this, type + ".specialChange" + (fn ? "."+fn.guid : ""), changeFilters[type] ); + } + + return formElems.test( this.nodeName ); + } +}; + +var changeFilters = jQuery.event.special.change.filters; + +} + +function trigger( type, elem, args ) { + args[0].type = type; + return jQuery.event.handle.apply( elem, args ); +} + +// Create "bubbling" focus and blur events +if ( document.addEventListener ) { + jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { + jQuery.event.special[ fix ] = { + setup: function() { + this.addEventListener( orig, handler, true ); + }, + teardown: function() { + this.removeEventListener( orig, handler, true ); + } + }; + + function handler( e ) { + e = jQuery.event.fix( e ); + e.type = fix; + return jQuery.event.handle.call( this, e ); + } + }); +} + +jQuery.each(["bind", "one"], function( i, name ) { + jQuery.fn[ name ] = function( type, data, fn ) { + // Handle object literals + if ( typeof type === "object" ) { + for ( var key in type ) { + this[ name ](key, data, type[key], fn); + } + return this; + } + + if ( jQuery.isFunction( data ) ) { + thisObject = fn; + fn = data; + data = undefined; + } + + var handler = name === "one" ? jQuery.proxy( fn, function( event ) { + jQuery( this ).unbind( event, handler ); + return fn.apply( this, arguments ); + }) : fn; + + return type === "unload" && name !== "one" ? + this.one( type, data, fn, thisObject ) : + this.each(function() { + jQuery.event.add( this, type, handler, data ); + }); + }; +}); + +jQuery.fn.extend({ + unbind: function( type, fn ) { + // Handle object literals + if ( typeof type === "object" && !type.preventDefault ) { + for ( var key in type ) { + this.unbind(key, type[key]); + } + return this; + } + + return this.each(function() { + jQuery.event.remove( this, type, fn ); + }); + }, + trigger: function( type, data ) { + return this.each(function() { + jQuery.event.trigger( type, data, this ); + }); + }, + + triggerHandler: function( type, data ) { + if ( this[0] ) { + var event = jQuery.Event( type ); + event.preventDefault(); + event.stopPropagation(); + jQuery.event.trigger( event, data, this[0] ); + return event.result; + } + }, + + toggle: function( fn ) { + // Save reference to arguments for access in closure + var args = arguments, i = 1; + + // link all the functions, so any of them can unbind this click handler + while ( i < args.length ) { + jQuery.proxy( fn, args[ i++ ] ); + } + + return this.click( jQuery.proxy( fn, function( event ) { + // Figure out which function to execute + var lastToggle = ( jQuery.data( this, "lastToggle" + fn.guid ) || 0 ) % i; + jQuery.data( this, "lastToggle" + fn.guid, lastToggle + 1 ); + + // Make sure that clicks stop + event.preventDefault(); + + // and execute the function + return args[ lastToggle ].apply( this, arguments ) || false; + })); + }, + + hover: function( fnOver, fnOut ) { + return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); + }, + + live: function( type, data, fn ) { + if ( jQuery.isFunction( data ) ) { + fn = data; + data = undefined; + } + + jQuery( this.context ).bind( liveConvert( type, this.selector ), { + data: data, selector: this.selector, live: type + }, fn ); + + return this; + }, + + die: function( type, fn ) { + jQuery( this.context ).unbind( liveConvert( type, this.selector ), fn ? { guid: fn.guid + this.selector + type } : null ); + return this; + } +}); + +function liveHandler( event ) { + var stop = true, elems = [], selectors = [], args = arguments, + related, match, fn, elem, j, i, data, + live = jQuery.extend({}, jQuery.data( this, "events" ).live); + + for ( j in live ) { + fn = live[j]; + if ( fn.live === event.type || + fn.altLive && jQuery.inArray(event.type, fn.altLive) > -1 ) { + + data = fn.data; + if ( !(data.beforeFilter && data.beforeFilter[event.type] && + !data.beforeFilter[event.type](event)) ) { + selectors.push( fn.selector ); + } + } else { + delete live[j]; + } + } + + match = jQuery( event.target ).closest( selectors, event.currentTarget ); + + for ( i = 0, l = match.length; i < l; i++ ) { + for ( j in live ) { + fn = live[j]; + elem = match[i].elem; + related = null; + + if ( match[i].selector === fn.selector ) { + // Those two events require additional checking + if ( fn.live === "mouseenter" || fn.live === "mouseleave" ) { + related = jQuery( event.relatedTarget ).closest( fn.selector )[0]; + } + + if ( !related || related !== elem ) { + elems.push({ elem: elem, fn: fn }); + } + } + } + } + + for ( i = 0, l = elems.length; i < l; i++ ) { + match = elems[i]; + event.currentTarget = match.elem; + event.data = match.fn.data; + if ( match.fn.apply( match.elem, args ) === false ) { + stop = false; + break; + } + } + + return stop; +} + +function liveConvert( type, selector ) { + return ["live", type, selector.replace(/\./g, "`").replace(/ /g, "&")].join("."); +} + +jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + + "change select submit keydown keypress keyup error").split(" "), function( i, name ) { + + // Handle event binding + jQuery.fn[ name ] = function( fn ) { + return fn ? this.bind( name, fn ) : this.trigger( name ); + }; + + if ( jQuery.attrFn ) { + jQuery.attrFn[ name ] = true; + } +}); + +// Prevent memory leaks in IE +// Window isn't included so as not to unbind existing unload events +// More info: +// - http://isaacschlueter.com/2006/10/msie-memory-leaks/ +if ( window.attachEvent && !window.addEventListener ) { + window.attachEvent("onunload", function() { + for ( var id in jQuery.cache ) { + if ( jQuery.cache[ id ].handle ) { + // Try/Catch is to handle iframes being unloaded, see #4280 + try { + jQuery.event.remove( jQuery.cache[ id ].handle.elem ); + } catch(e) {} + } + } + }); +} +/*! + * Sizzle CSS Selector Engine - v1.0 + * Copyright 2009, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){ + +var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, + done = 0, + toString = Object.prototype.toString, + hasDuplicate = false, + baseHasDuplicate = true; + +// Here we check if the JavaScript engine is using some sort of +// optimization where it does not always call our comparision +// function. If that is the case, discard the hasDuplicate value. +// Thus far that includes Google Chrome. +[0, 0].sort(function(){ + baseHasDuplicate = false; + return 0; +}); + +var Sizzle = function(selector, context, results, seed) { + results = results || []; + var origContext = context = context || document; + + if ( context.nodeType !== 1 && context.nodeType !== 9 ) { + return []; + } + + if ( !selector || typeof selector !== "string" ) { + return results; + } + + var parts = [], m, set, checkSet, extra, prune = true, contextXML = isXML(context), + soFar = selector; + + // Reset the position of the chunker regexp (start from head) + while ( (chunker.exec(""), m = chunker.exec(soFar)) !== null ) { + soFar = m[3]; + + parts.push( m[1] ); + + if ( m[2] ) { + extra = m[3]; + break; + } + } + + if ( parts.length > 1 && origPOS.exec( selector ) ) { + if ( parts.length === 2 && Expr.relative[ parts[0] ] ) { + set = posProcess( parts[0] + parts[1], context ); + } else { + set = Expr.relative[ parts[0] ] ? + [ context ] : + Sizzle( parts.shift(), context ); + + while ( parts.length ) { + selector = parts.shift(); + + if ( Expr.relative[ selector ] ) { + selector += parts.shift(); + } + + set = posProcess( selector, set ); + } + } + } else { + // Take a shortcut and set the context if the root selector is an ID + // (but not if it'll be faster if the inner selector is an ID) + if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML && + Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) { + var ret = Sizzle.find( parts.shift(), context, contextXML ); + context = ret.expr ? Sizzle.filter( ret.expr, ret.set )[0] : ret.set[0]; + } + + if ( context ) { + var ret = seed ? + { expr: parts.pop(), set: makeArray(seed) } : + Sizzle.find( parts.pop(), parts.length === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode ? context.parentNode : context, contextXML ); + set = ret.expr ? Sizzle.filter( ret.expr, ret.set ) : ret.set; + + if ( parts.length > 0 ) { + checkSet = makeArray(set); + } else { + prune = false; + } + + while ( parts.length ) { + var cur = parts.pop(), pop = cur; + + if ( !Expr.relative[ cur ] ) { + cur = ""; + } else { + pop = parts.pop(); + } + + if ( pop == null ) { + pop = context; + } + + Expr.relative[ cur ]( checkSet, pop, contextXML ); + } + } else { + checkSet = parts = []; + } + } + + if ( !checkSet ) { + checkSet = set; + } + + if ( !checkSet ) { + throw "Syntax error, unrecognized expression: " + (cur || selector); + } + + if ( toString.call(checkSet) === "[object Array]" ) { + if ( !prune ) { + results.push.apply( results, checkSet ); + } else if ( context && context.nodeType === 1 ) { + for ( var i = 0; checkSet[i] != null; i++ ) { + if ( checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && contains(context, checkSet[i])) ) { + results.push( set[i] ); + } + } + } else { + for ( var i = 0; checkSet[i] != null; i++ ) { + if ( checkSet[i] && checkSet[i].nodeType === 1 ) { + results.push( set[i] ); + } + } + } + } else { + makeArray( checkSet, results ); + } + + if ( extra ) { + Sizzle( extra, origContext, results, seed ); + Sizzle.uniqueSort( results ); + } + + return results; +}; + +Sizzle.uniqueSort = function(results){ + if ( sortOrder ) { + hasDuplicate = baseHasDuplicate; + results.sort(sortOrder); + + if ( hasDuplicate ) { + for ( var i = 1; i < results.length; i++ ) { + if ( results[i] === results[i-1] ) { + results.splice(i--, 1); + } + } + } + } + + return results; +}; + +Sizzle.matches = function(expr, set){ + return Sizzle(expr, null, null, set); +}; + +Sizzle.find = function(expr, context, isXML){ + var set, match; + + if ( !expr ) { + return []; + } + + for ( var i = 0, l = Expr.order.length; i < l; i++ ) { + var type = Expr.order[i], match; + + if ( (match = Expr.leftMatch[ type ].exec( expr )) ) { + var left = match[1]; + match.splice(1,1); + + if ( left.substr( left.length - 1 ) !== "\\" ) { + match[1] = (match[1] || "").replace(/\\/g, ""); + set = Expr.find[ type ]( match, context, isXML ); + if ( set != null ) { + expr = expr.replace( Expr.match[ type ], "" ); + break; + } + } + } + } + + if ( !set ) { + set = context.getElementsByTagName("*"); + } + + return {set: set, expr: expr}; +}; + +Sizzle.filter = function(expr, set, inplace, not){ + var old = expr, result = [], curLoop = set, match, anyFound, + isXMLFilter = set && set[0] && isXML(set[0]); + + while ( expr && set.length ) { + for ( var type in Expr.filter ) { + if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) { + var filter = Expr.filter[ type ], found, item, left = match[1]; + anyFound = false; + + match.splice(1,1); + + if ( left.substr( left.length - 1 ) === "\\" ) { + continue; + } + + if ( curLoop === result ) { + result = []; + } + + if ( Expr.preFilter[ type ] ) { + match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter ); + + if ( !match ) { + anyFound = found = true; + } else if ( match === true ) { + continue; + } + } + + if ( match ) { + for ( var i = 0; (item = curLoop[i]) != null; i++ ) { + if ( item ) { + found = filter( item, match, i, curLoop ); + var pass = not ^ !!found; + + if ( inplace && found != null ) { + if ( pass ) { + anyFound = true; + } else { + curLoop[i] = false; + } + } else if ( pass ) { + result.push( item ); + anyFound = true; + } + } + } + } + + if ( found !== undefined ) { + if ( !inplace ) { + curLoop = result; + } + + expr = expr.replace( Expr.match[ type ], "" ); + + if ( !anyFound ) { + return []; + } + + break; + } + } + } + + // Improper expression + if ( expr === old ) { + if ( anyFound == null ) { + throw "Syntax error, unrecognized expression: " + expr; + } else { + break; + } + } + + old = expr; + } + + return curLoop; +}; + +var Expr = Sizzle.selectors = { + order: [ "ID", "NAME", "TAG" ], + match: { + ID: /#((?:[\w\u00c0-\uFFFF-]|\\.)+)/, + CLASS: /\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/, + NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/, + ATTR: /\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/, + TAG: /^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/, + CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/, + POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/, + PSEUDO: /:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/ + }, + leftMatch: {}, + attrMap: { + "class": "className", + "for": "htmlFor" + }, + attrHandle: { + href: function(elem){ + return elem.getAttribute("href"); + } + }, + relative: { + "+": function(checkSet, part){ + var isPartStr = typeof part === "string", + isTag = isPartStr && !/\W/.test(part), + isPartStrNotTag = isPartStr && !isTag; + + if ( isTag ) { + part = part.toLowerCase(); + } + + for ( var i = 0, l = checkSet.length, elem; i < l; i++ ) { + if ( (elem = checkSet[i]) ) { + while ( (elem = elem.previousSibling) && elem.nodeType !== 1 ) {} + + checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part ? + elem || false : + elem === part; + } + } + + if ( isPartStrNotTag ) { + Sizzle.filter( part, checkSet, true ); + } + }, + ">": function(checkSet, part){ + var isPartStr = typeof part === "string"; + + if ( isPartStr && !/\W/.test(part) ) { + part = part.toLowerCase(); + + for ( var i = 0, l = checkSet.length; i < l; i++ ) { + var elem = checkSet[i]; + if ( elem ) { + var parent = elem.parentNode; + checkSet[i] = parent.nodeName.toLowerCase() === part ? parent : false; + } + } + } else { + for ( var i = 0, l = checkSet.length; i < l; i++ ) { + var elem = checkSet[i]; + if ( elem ) { + checkSet[i] = isPartStr ? + elem.parentNode : + elem.parentNode === part; + } + } + + if ( isPartStr ) { + Sizzle.filter( part, checkSet, true ); + } + } + }, + "": function(checkSet, part, isXML){ + var doneName = done++, checkFn = dirCheck; + + if ( typeof part === "string" && !/\W/.test(part) ) { + var nodeCheck = part = part.toLowerCase(); + checkFn = dirNodeCheck; + } + + checkFn("parentNode", part, doneName, checkSet, nodeCheck, isXML); + }, + "~": function(checkSet, part, isXML){ + var doneName = done++, checkFn = dirCheck; + + if ( typeof part === "string" && !/\W/.test(part) ) { + var nodeCheck = part = part.toLowerCase(); + checkFn = dirNodeCheck; + } + + checkFn("previousSibling", part, doneName, checkSet, nodeCheck, isXML); + } + }, + find: { + ID: function(match, context, isXML){ + if ( typeof context.getElementById !== "undefined" && !isXML ) { + var m = context.getElementById(match[1]); + return m ? [m] : []; + } + }, + NAME: function(match, context){ + if ( typeof context.getElementsByName !== "undefined" ) { + var ret = [], results = context.getElementsByName(match[1]); + + for ( var i = 0, l = results.length; i < l; i++ ) { + if ( results[i].getAttribute("name") === match[1] ) { + ret.push( results[i] ); + } + } + + return ret.length === 0 ? null : ret; + } + }, + TAG: function(match, context){ + return context.getElementsByTagName(match[1]); + } + }, + preFilter: { + CLASS: function(match, curLoop, inplace, result, not, isXML){ + match = " " + match[1].replace(/\\/g, "") + " "; + + if ( isXML ) { + return match; + } + + for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) { + if ( elem ) { + if ( not ^ (elem.className && (" " + elem.className + " ").replace(/[\t\n]/g, " ").indexOf(match) >= 0) ) { + if ( !inplace ) { + result.push( elem ); + } + } else if ( inplace ) { + curLoop[i] = false; + } + } + } + + return false; + }, + ID: function(match){ + return match[1].replace(/\\/g, ""); + }, + TAG: function(match, curLoop){ + return match[1].toLowerCase(); + }, + CHILD: function(match){ + if ( match[1] === "nth" ) { + // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6' + var test = /(-?)(\d*)n((?:\+|-)?\d*)/.exec( + match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" || + !/\D/.test( match[2] ) && "0n+" + match[2] || match[2]); + + // calculate the numbers (first)n+(last) including if they are negative + match[2] = (test[1] + (test[2] || 1)) - 0; + match[3] = test[3] - 0; + } + + // TODO: Move to normal caching system + match[0] = done++; + + return match; + }, + ATTR: function(match, curLoop, inplace, result, not, isXML){ + var name = match[1].replace(/\\/g, ""); + + if ( !isXML && Expr.attrMap[name] ) { + match[1] = Expr.attrMap[name]; + } + + if ( match[2] === "~=" ) { + match[4] = " " + match[4] + " "; + } + + return match; + }, + PSEUDO: function(match, curLoop, inplace, result, not){ + if ( match[1] === "not" ) { + // If we're dealing with a complex expression, or a simple one + if ( ( chunker.exec(match[3]) || "" ).length > 1 || /^\w/.test(match[3]) ) { + match[3] = Sizzle(match[3], null, null, curLoop); + } else { + var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not); + if ( !inplace ) { + result.push.apply( result, ret ); + } + return false; + } + } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) { + return true; + } + + return match; + }, + POS: function(match){ + match.unshift( true ); + return match; + } + }, + filters: { + enabled: function(elem){ + return elem.disabled === false && elem.type !== "hidden"; + }, + disabled: function(elem){ + return elem.disabled === true; + }, + checked: function(elem){ + return elem.checked === true; + }, + selected: function(elem){ + // Accessing this property makes selected-by-default + // options in Safari work properly + elem.parentNode.selectedIndex; + return elem.selected === true; + }, + parent: function(elem){ + return !!elem.firstChild; + }, + empty: function(elem){ + return !elem.firstChild; + }, + has: function(elem, i, match){ + return !!Sizzle( match[3], elem ).length; + }, + header: function(elem){ + return /h\d/i.test( elem.nodeName ); + }, + text: function(elem){ + return "text" === elem.type; + }, + radio: function(elem){ + return "radio" === elem.type; + }, + checkbox: function(elem){ + return "checkbox" === elem.type; + }, + file: function(elem){ + return "file" === elem.type; + }, + password: function(elem){ + return "password" === elem.type; + }, + submit: function(elem){ + return "submit" === elem.type; + }, + image: function(elem){ + return "image" === elem.type; + }, + reset: function(elem){ + return "reset" === elem.type; + }, + button: function(elem){ + return "button" === elem.type || elem.nodeName.toLowerCase() === "button"; + }, + input: function(elem){ + return /input|select|textarea|button/i.test(elem.nodeName); + } + }, + setFilters: { + first: function(elem, i){ + return i === 0; + }, + last: function(elem, i, match, array){ + return i === array.length - 1; + }, + even: function(elem, i){ + return i % 2 === 0; + }, + odd: function(elem, i){ + return i % 2 === 1; + }, + lt: function(elem, i, match){ + return i < match[3] - 0; + }, + gt: function(elem, i, match){ + return i > match[3] - 0; + }, + nth: function(elem, i, match){ + return match[3] - 0 === i; + }, + eq: function(elem, i, match){ + return match[3] - 0 === i; + } + }, + filter: { + PSEUDO: function(elem, match, i, array){ + var name = match[1], filter = Expr.filters[ name ]; + + if ( filter ) { + return filter( elem, i, match, array ); + } else if ( name === "contains" ) { + return (elem.textContent || elem.innerText || getText([ elem ]) || "").indexOf(match[3]) >= 0; + } else if ( name === "not" ) { + var not = match[3]; + + for ( var i = 0, l = not.length; i < l; i++ ) { + if ( not[i] === elem ) { + return false; + } + } + + return true; + } else { + throw "Syntax error, unrecognized expression: " + name; + } + }, + CHILD: function(elem, match){ + var type = match[1], node = elem; + switch (type) { + case 'only': + case 'first': + while ( (node = node.previousSibling) ) { + if ( node.nodeType === 1 ) { + return false; + } + } + if ( type === "first" ) { + return true; + } + node = elem; + case 'last': + while ( (node = node.nextSibling) ) { + if ( node.nodeType === 1 ) { + return false; + } + } + return true; + case 'nth': + var first = match[2], last = match[3]; + + if ( first === 1 && last === 0 ) { + return true; + } + + var doneName = match[0], + parent = elem.parentNode; + + if ( parent && (parent.sizcache !== doneName || !elem.nodeIndex) ) { + var count = 0; + for ( node = parent.firstChild; node; node = node.nextSibling ) { + if ( node.nodeType === 1 ) { + node.nodeIndex = ++count; + } + } + parent.sizcache = doneName; + } + + var diff = elem.nodeIndex - last; + if ( first === 0 ) { + return diff === 0; + } else { + return ( diff % first === 0 && diff / first >= 0 ); + } + } + }, + ID: function(elem, match){ + return elem.nodeType === 1 && elem.getAttribute("id") === match; + }, + TAG: function(elem, match){ + return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match; + }, + CLASS: function(elem, match){ + return (" " + (elem.className || elem.getAttribute("class")) + " ") + .indexOf( match ) > -1; + }, + ATTR: function(elem, match){ + var name = match[1], + result = Expr.attrHandle[ name ] ? + Expr.attrHandle[ name ]( elem ) : + elem[ name ] != null ? + elem[ name ] : + elem.getAttribute( name ), + value = result + "", + type = match[2], + check = match[4]; + + return result == null ? + type === "!=" : + type === "=" ? + value === check : + type === "*=" ? + value.indexOf(check) >= 0 : + type === "~=" ? + (" " + value + " ").indexOf(check) >= 0 : + !check ? + value && result !== false : + type === "!=" ? + value !== check : + type === "^=" ? + value.indexOf(check) === 0 : + type === "$=" ? + value.substr(value.length - check.length) === check : + type === "|=" ? + value === check || value.substr(0, check.length + 1) === check + "-" : + false; + }, + POS: function(elem, match, i, array){ + var name = match[2], filter = Expr.setFilters[ name ]; + + if ( filter ) { + return filter( elem, i, match, array ); + } + } + } +}; + +var origPOS = Expr.match.POS; + +for ( var type in Expr.match ) { + Expr.match[ type ] = new RegExp( Expr.match[ type ].source + /(?![^\[]*\])(?![^\(]*\))/.source ); + Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, function(all, num){ + return "\\" + (num - 0 + 1); + })); +} + +var makeArray = function(array, results) { + array = Array.prototype.slice.call( array, 0 ); + + if ( results ) { + results.push.apply( results, array ); + return results; + } + + return array; +}; + +// Perform a simple check to determine if the browser is capable of +// converting a NodeList to an array using builtin methods. +try { + Array.prototype.slice.call( document.documentElement.childNodes, 0 ); + +// Provide a fallback method if it does not work +} catch(e){ + makeArray = function(array, results) { + var ret = results || []; + + if ( toString.call(array) === "[object Array]" ) { + Array.prototype.push.apply( ret, array ); + } else { + if ( typeof array.length === "number" ) { + for ( var i = 0, l = array.length; i < l; i++ ) { + ret.push( array[i] ); + } + } else { + for ( var i = 0; array[i]; i++ ) { + ret.push( array[i] ); + } + } + } + + return ret; + }; +} + +var sortOrder; + +if ( document.documentElement.compareDocumentPosition ) { + sortOrder = function( a, b ) { + if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) { + if ( a == b ) { + hasDuplicate = true; + } + return a.compareDocumentPosition ? -1 : 1; + } + + var ret = a.compareDocumentPosition(b) & 4 ? -1 : a === b ? 0 : 1; + if ( ret === 0 ) { + hasDuplicate = true; + } + return ret; + }; +} else if ( "sourceIndex" in document.documentElement ) { + sortOrder = function( a, b ) { + if ( !a.sourceIndex || !b.sourceIndex ) { + if ( a == b ) { + hasDuplicate = true; + } + return a.sourceIndex ? -1 : 1; + } + + var ret = a.sourceIndex - b.sourceIndex; + if ( ret === 0 ) { + hasDuplicate = true; + } + return ret; + }; +} else if ( document.createRange ) { + sortOrder = function( a, b ) { + if ( !a.ownerDocument || !b.ownerDocument ) { + if ( a == b ) { + hasDuplicate = true; + } + return a.ownerDocument ? -1 : 1; + } + + var aRange = a.ownerDocument.createRange(), bRange = b.ownerDocument.createRange(); + aRange.setStart(a, 0); + aRange.setEnd(a, 0); + bRange.setStart(b, 0); + bRange.setEnd(b, 0); + var ret = aRange.compareBoundaryPoints(Range.START_TO_END, bRange); + if ( ret === 0 ) { + hasDuplicate = true; + } + return ret; + }; +} + +// Utility function for retreiving the text value of an array of DOM nodes +function getText( elems ) { + var ret = "", elem; + + for ( var i = 0; elems[i]; i++ ) { + elem = elems[i]; + + // Get the text from text nodes and CDATA nodes + if ( elem.nodeType === 3 || elem.nodeType === 4 ) { + ret += elem.nodeValue; + + // Traverse everything else, except comment nodes + } else if ( elem.nodeType !== 8 ) { + ret += getText( elem.childNodes ); + } + } + + return ret; +} + +// Check to see if the browser returns elements by name when +// querying by getElementById (and provide a workaround) +(function(){ + // We're going to inject a fake input element with a specified name + var form = document.createElement("div"), + id = "script" + (new Date).getTime(); + form.innerHTML = ""; + + // Inject it into the root element, check its status, and remove it quickly + var root = document.documentElement; + root.insertBefore( form, root.firstChild ); + + // The workaround has to do additional checks after a getElementById + // Which slows things down for other browsers (hence the branching) + if ( document.getElementById( id ) ) { + Expr.find.ID = function(match, context, isXML){ + if ( typeof context.getElementById !== "undefined" && !isXML ) { + var m = context.getElementById(match[1]); + return m ? m.id === match[1] || typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id").nodeValue === match[1] ? [m] : undefined : []; + } + }; + + Expr.filter.ID = function(elem, match){ + var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id"); + return elem.nodeType === 1 && node && node.nodeValue === match; + }; + } + + root.removeChild( form ); + root = form = null; // release memory in IE +})(); + +(function(){ + // Check to see if the browser returns only elements + // when doing getElementsByTagName("*") + + // Create a fake element + var div = document.createElement("div"); + div.appendChild( document.createComment("") ); + + // Make sure no comments are found + if ( div.getElementsByTagName("*").length > 0 ) { + Expr.find.TAG = function(match, context){ + var results = context.getElementsByTagName(match[1]); + + // Filter out possible comments + if ( match[1] === "*" ) { + var tmp = []; + + for ( var i = 0; results[i]; i++ ) { + if ( results[i].nodeType === 1 ) { + tmp.push( results[i] ); + } + } + + results = tmp; + } + + return results; + }; + } + + // Check to see if an attribute returns normalized href attributes + div.innerHTML = ""; + if ( div.firstChild && typeof div.firstChild.getAttribute !== "undefined" && + div.firstChild.getAttribute("href") !== "#" ) { + Expr.attrHandle.href = function(elem){ + return elem.getAttribute("href", 2); + }; + } + + div = null; // release memory in IE +})(); + +if ( document.querySelectorAll ) { + (function(){ + var oldSizzle = Sizzle, div = document.createElement("div"); + div.innerHTML = "

"; + + // Safari can't handle uppercase or unicode characters when + // in quirks mode. + if ( div.querySelectorAll && div.querySelectorAll(".TEST").length === 0 ) { + return; + } + + Sizzle = function(query, context, extra, seed){ + context = context || document; + + // Only use querySelectorAll on non-XML documents + // (ID selectors don't work in non-HTML documents) + if ( !seed && context.nodeType === 9 && !isXML(context) ) { + try { + return makeArray( context.querySelectorAll(query), extra ); + } catch(e){} + } + + return oldSizzle(query, context, extra, seed); + }; + + for ( var prop in oldSizzle ) { + Sizzle[ prop ] = oldSizzle[ prop ]; + } + + div = null; // release memory in IE + })(); +} + +(function(){ + var div = document.createElement("div"); + + div.innerHTML = "
"; + + // Opera can't find a second classname (in 9.6) + // Also, make sure that getElementsByClassName actually exists + if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) { + return; + } + + // Safari caches class attributes, doesn't catch changes (in 3.2) + div.lastChild.className = "e"; + + if ( div.getElementsByClassName("e").length === 1 ) { + return; + } + + Expr.order.splice(1, 0, "CLASS"); + Expr.find.CLASS = function(match, context, isXML) { + if ( typeof context.getElementsByClassName !== "undefined" && !isXML ) { + return context.getElementsByClassName(match[1]); + } + }; + + div = null; // release memory in IE +})(); + +function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { + for ( var i = 0, l = checkSet.length; i < l; i++ ) { + var elem = checkSet[i]; + if ( elem ) { + elem = elem[dir]; + var match = false; + + while ( elem ) { + if ( elem.sizcache === doneName ) { + match = checkSet[elem.sizset]; + break; + } + + if ( elem.nodeType === 1 && !isXML ){ + elem.sizcache = doneName; + elem.sizset = i; + } + + if ( elem.nodeName.toLowerCase() === cur ) { + match = elem; + break; + } + + elem = elem[dir]; + } + + checkSet[i] = match; + } + } +} + +function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) { + for ( var i = 0, l = checkSet.length; i < l; i++ ) { + var elem = checkSet[i]; + if ( elem ) { + elem = elem[dir]; + var match = false; + + while ( elem ) { + if ( elem.sizcache === doneName ) { + match = checkSet[elem.sizset]; + break; + } + + if ( elem.nodeType === 1 ) { + if ( !isXML ) { + elem.sizcache = doneName; + elem.sizset = i; + } + if ( typeof cur !== "string" ) { + if ( elem === cur ) { + match = true; + break; + } + + } else if ( Sizzle.filter( cur, [elem] ).length > 0 ) { + match = elem; + break; + } + } + + elem = elem[dir]; + } + + checkSet[i] = match; + } + } +} + +var contains = document.compareDocumentPosition ? function(a, b){ + return a.compareDocumentPosition(b) & 16; +} : function(a, b){ + return a !== b && (a.contains ? a.contains(b) : true); +}; + +var isXML = function(elem){ + // documentElement is verified for cases where it doesn't yet exist + // (such as loading iframes in IE - #4833) + var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement; + return documentElement ? documentElement.nodeName !== "HTML" : false; +}; + +var posProcess = function(selector, context){ + var tmpSet = [], later = "", match, + root = context.nodeType ? [context] : context; + + // Position selectors must be done after the filter + // And so must :not(positional) so we move all PSEUDOs to the end + while ( (match = Expr.match.PSEUDO.exec( selector )) ) { + later += match[0]; + selector = selector.replace( Expr.match.PSEUDO, "" ); + } + + selector = Expr.relative[selector] ? selector + "*" : selector; + + for ( var i = 0, l = root.length; i < l; i++ ) { + Sizzle( selector, root[i], tmpSet ); + } + + return Sizzle.filter( later, tmpSet ); +}; + +// EXPOSE +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; +jQuery.expr[":"] = jQuery.expr.filters; +jQuery.unique = Sizzle.uniqueSort; +jQuery.getText = getText; +jQuery.isXMLDoc = isXML; +jQuery.contains = contains; + +return; + +window.Sizzle = Sizzle; + +})(); +var runtil = /Until$/, + rparentsprev = /^(?:parents|prevUntil|prevAll)/, + // Note: This RegExp should be improved, or likely pulled from Sizzle + rmultiselector = /,/, + slice = Array.prototype.slice; + +// Implement the identical functionality for filter and not +var winnow = function( elements, qualifier, keep ) { + if ( jQuery.isFunction( qualifier ) ) { + return jQuery.grep(elements, function( elem, i ) { + return !!qualifier.call( elem, i, elem ) === keep; + }); + + } else if ( qualifier.nodeType ) { + return jQuery.grep(elements, function( elem, i ) { + return (elem === qualifier) === keep; + }); + + } else if ( typeof qualifier === "string" ) { + var filtered = jQuery.grep(elements, function( elem ) { + return elem.nodeType === 1; + }); + + if ( isSimple.test( qualifier ) ) { + return jQuery.filter(qualifier, filtered, !keep); + } else { + qualifier = jQuery.filter( qualifier, elements ); + } + } + + return jQuery.grep(elements, function( elem, i ) { + return (jQuery.inArray( elem, qualifier ) >= 0) === keep; + }); +}; + +jQuery.fn.extend({ + find: function( selector ) { + var ret = this.pushStack( "", "find", selector ), length = 0; + + for ( var i = 0, l = this.length; i < l; i++ ) { + length = ret.length; + jQuery.find( selector, this[i], ret ); + + if ( i > 0 ) { + // Make sure that the results are unique + for ( var n = length; n < ret.length; n++ ) { + for ( var r = 0; r < length; r++ ) { + if ( ret[r] === ret[n] ) { + ret.splice(n--, 1); + break; + } + } + } + } + } + + return ret; + }, + + has: function( target ) { + var targets = jQuery( target ); + return this.filter(function() { + for ( var i = 0, l = targets.length; i < l; i++ ) { + if ( jQuery.contains( this, targets[i] ) ) { + return true; + } + } + }); + }, + + not: function( selector ) { + return this.pushStack( winnow(this, selector, false), "not", selector); + }, + + filter: function( selector ) { + return this.pushStack( winnow(this, selector, true), "filter", selector ); + }, + + is: function( selector ) { + return !!selector && jQuery.filter( selector, this ).length > 0; + }, + + closest: function( selectors, context ) { + if ( jQuery.isArray( selectors ) ) { + var ret = [], cur = this[0], match, matches = {}, selector; + + if ( cur && selectors.length ) { + for ( var i = 0, l = selectors.length; i < l; i++ ) { + selector = selectors[i]; + + if ( !matches[selector] ) { + matches[selector] = jQuery.expr.match.POS.test( selector ) ? + jQuery( selector, context || this.context ) : + selector; + } + } + + while ( cur && cur.ownerDocument && cur !== context ) { + for ( selector in matches ) { + match = matches[selector]; + + if ( match.jquery ? match.index(cur) > -1 : jQuery(cur).is(match) ) { + ret.push({ selector: selector, elem: cur }); + delete matches[selector]; + } + } + cur = cur.parentNode; + } + } + + return ret; + } + + var pos = jQuery.expr.match.POS.test( selectors ) ? + jQuery( selectors, context || this.context ) : null; + + return this.map(function( i, cur ) { + while ( cur && cur.ownerDocument && cur !== context ) { + if ( pos ? pos.index(cur) > -1 : jQuery(cur).is(selectors) ) { + return cur; + } + cur = cur.parentNode; + } + return null; + }); + }, + + // Determine the position of an element within + // the matched set of elements + index: function( elem ) { + if ( !elem || typeof elem === "string" ) { + return jQuery.inArray( this[0], + // If it receives a string, the selector is used + // If it receives nothing, the siblings are used + elem ? jQuery( elem ) : this.parent().children() ); + } + // Locate the position of the desired element + return jQuery.inArray( + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[0] : elem, this ); + }, + + add: function( selector, context ) { + var set = typeof selector === "string" ? + jQuery( selector, context || this.context ) : + jQuery.makeArray( selector ), + all = jQuery.merge( this.get(), set ); + + return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ? + all : + jQuery.unique( all ) ); + }, + + andSelf: function() { + return this.add( this.prevObject ); + } +}); + +// A painfully simple check to see if an element is disconnected +// from a document (should be improved, where feasible). +function isDisconnected( node ) { + return !node || !node.parentNode || node.parentNode.nodeType === 11; +} + +jQuery.each({ + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return jQuery.dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, i, until ) { + return jQuery.dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return jQuery.nth( elem, 2, "nextSibling" ); + }, + prev: function( elem ) { + return jQuery.nth( elem, 2, "previousSibling" ); + }, + nextAll: function( elem ) { + return jQuery.dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return jQuery.dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, i, until ) { + return jQuery.dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, i, until ) { + return jQuery.dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return jQuery.sibling( elem.parentNode.firstChild, elem ); + }, + children: function( elem ) { + return jQuery.sibling( elem.firstChild ); + }, + contents: function( elem ) { + return jQuery.nodeName( elem, "iframe" ) ? + elem.contentDocument || elem.contentWindow.document : + jQuery.makeArray( elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var ret = jQuery.map( this, fn, until ); + + if ( !runtil.test( name ) ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + ret = jQuery.filter( selector, ret ); + } + + ret = this.length > 1 ? jQuery.unique( ret ) : ret; + + if ( (this.length > 1 || rmultiselector.test( selector )) && rparentsprev.test( name ) ) { + ret = ret.reverse(); + } + + return this.pushStack( ret, name, slice.call(arguments).join(",") ); + }; +}); + +jQuery.extend({ + filter: function( expr, elems, not ) { + if ( not ) { + expr = ":not(" + expr + ")"; + } + + return jQuery.find.matches(expr, elems); + }, + + dir: function( elem, dir, until ) { + var matched = [], cur = elem[dir]; + while ( cur && cur.nodeType !== 9 && (until === undefined || !jQuery( cur ).is( until )) ) { + if ( cur.nodeType === 1 ) { + matched.push( cur ); + } + cur = cur[dir]; + } + return matched; + }, + + nth: function( cur, result, dir, elem ) { + result = result || 1; + var num = 0; + + for ( ; cur; cur = cur[dir] ) { + if ( cur.nodeType === 1 && ++num === result ) { + break; + } + } + + return cur; + }, + + sibling: function( n, elem ) { + var r = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + r.push( n ); + } + } + + return r; + } +}); +var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g, + rleadingWhitespace = /^\s+/, + rxhtmlTag = /(<([\w:]+)[^>]*?)\/>/g, + rselfClosing = /^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i, + rtagName = /<([\w:]+)/, + rtbody = /"; + }, + wrapMap = { + option: [ 1, "" ], + legend: [ 1, "
", "
" ], + thead: [ 1, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + col: [ 2, "", "
" ], + area: [ 1, "", "" ], + _default: [ 0, "", "" ] + }; + +wrapMap.optgroup = wrapMap.option; +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// IE can't serialize and