From 0222fd7bfe2fdf58e95c9a51a4c15042fc21a80d Mon Sep 17 00:00:00 2001 From: Elmar Kouwenhoven Date: Tue, 8 May 2012 09:59:16 +0200 Subject: [PATCH] Added new template 'lossless' --- data/interfaces/lossless/album.html | 144 ++ data/interfaces/lossless/artist.html | 190 +++ data/interfaces/lossless/base.html | 106 ++ data/interfaces/lossless/config.html | 775 ++++++++++ data/interfaces/lossless/css/config.less | 74 + data/interfaces/lossless/css/data_table.css | 326 +++++ data/interfaces/lossless/css/jquery-ui.css | 547 +++++++ data/interfaces/lossless/css/style.css | 1293 +++++++++++++++++ data/interfaces/lossless/css/style.less | 1116 ++++++++++++++ data/interfaces/lossless/css/style_bu.css | 1 + data/interfaces/lossless/extras.html | 15 + data/interfaces/lossless/history.html | 89 ++ .../interfaces/lossless/images/NoAlbumArt.png | Bin 0 -> 29433 bytes data/interfaces/lossless/images/button.png | Bin 0 -> 95 bytes data/interfaces/lossless/images/icon_add.png | Bin 0 -> 2845 bytes .../lossless/images/icon_delete.png | Bin 0 -> 3148 bytes .../interfaces/lossless/images/icon_extra.gif | Bin 0 -> 757 bytes data/interfaces/lossless/images/icon_gear.png | Bin 0 -> 3228 bytes .../lossless/images/icon_getextra.png | Bin 0 -> 3007 bytes .../lossless/images/icon_history.png | Bin 0 -> 2324 bytes data/interfaces/lossless/images/icon_logs.png | Bin 0 -> 3761 bytes .../lossless/images/icon_manage.png | Bin 0 -> 3108 bytes .../interfaces/lossless/images/icon_pause.png | Bin 0 -> 2855 bytes .../lossless/images/icon_refresh.png | Bin 0 -> 3444 bytes .../lossless/images/icon_removeextra.png | Bin 0 -> 3123 bytes .../lossless/images/icon_search.gif | Bin 0 -> 345 bytes .../lossless/images/icon_search.png | Bin 0 -> 3342 bytes .../lossless/images/icon_sprite_black.png | Bin 0 -> 4369 bytes .../lossless/images/icon_sprite_white.png | Bin 0 -> 4369 bytes .../lossless/images/icon_upcoming.png | Bin 0 -> 3035 bytes .../lossless/images/icon_wanted.png | Bin 0 -> 3403 bytes .../lossless/images/loader_black.gif | Bin 0 -> 9427 bytes .../lossless/images/loader_blue.gif | Bin 0 -> 9427 bytes .../lossless/images/loader_refresh_black.gif | Bin 0 -> 847 bytes .../lossless/images/loader_refresh_blue.gif | Bin 0 -> 847 bytes .../lossless/images/no-cover-art.png | Bin 0 -> 25265 bytes .../lossless/images/no-cover-artist.png | Bin 0 -> 6937 bytes data/interfaces/lossless/images/sort_asc.png | Bin 0 -> 968 bytes data/interfaces/lossless/images/sort_both.png | Bin 0 -> 135 bytes data/interfaces/lossless/images/sort_desc.png | Bin 0 -> 975 bytes data/interfaces/lossless/images/toTop.gif | Bin 0 -> 838 bytes .../images/ui-bg_flat_0_aaaaaa_40x100.png | Bin 0 -> 180 bytes .../images/ui-bg_flat_0_eeeeee_40x100.png | Bin 0 -> 180 bytes .../images/ui-bg_flat_55_c0402a_40x100.png | Bin 0 -> 182 bytes .../images/ui-bg_flat_55_eeeeee_40x100.png | Bin 0 -> 180 bytes .../images/ui-bg_glass_100_f8f8f8_1x400.png | Bin 0 -> 129 bytes .../images/ui-bg_glass_35_dddddd_1x400.png | Bin 0 -> 109 bytes .../images/ui-bg_glass_60_eeeeee_1x400.png | Bin 0 -> 110 bytes .../ui-bg_inset-hard_75_999999_1x100.png | Bin 0 -> 114 bytes .../ui-bg_inset-soft_50_c9c9c9_1x100.png | Bin 0 -> 96 bytes .../images/ui-icons_3383bb_256x240.png | Bin 0 -> 4369 bytes .../images/ui-icons_454545_256x240.png | Bin 0 -> 4369 bytes .../images/ui-icons_70b2e1_256x240.png | Bin 0 -> 5355 bytes .../images/ui-icons_999999_256x240.png | Bin 0 -> 4369 bytes .../images/ui-icons_fbc856_256x240.png | Bin 0 -> 4369 bytes data/interfaces/lossless/index.html | 101 ++ .../interfaces/lossless/js/fancybox/blank.gif | Bin 0 -> 43 bytes .../lossless/js/fancybox/fancy_close.png | Bin 0 -> 1517 bytes .../lossless/js/fancybox/fancy_loading.png | Bin 0 -> 10195 bytes .../lossless/js/fancybox/fancy_nav_left.png | Bin 0 -> 1446 bytes .../lossless/js/fancybox/fancy_nav_right.png | Bin 0 -> 1454 bytes .../lossless/js/fancybox/fancy_shadow_e.png | Bin 0 -> 107 bytes .../lossless/js/fancybox/fancy_shadow_n.png | Bin 0 -> 106 bytes .../lossless/js/fancybox/fancy_shadow_ne.png | Bin 0 -> 347 bytes .../lossless/js/fancybox/fancy_shadow_nw.png | Bin 0 -> 324 bytes .../lossless/js/fancybox/fancy_shadow_s.png | Bin 0 -> 111 bytes .../lossless/js/fancybox/fancy_shadow_se.png | Bin 0 -> 352 bytes .../lossless/js/fancybox/fancy_shadow_sw.png | Bin 0 -> 340 bytes .../lossless/js/fancybox/fancy_shadow_w.png | Bin 0 -> 103 bytes .../lossless/js/fancybox/fancy_title_left.png | Bin 0 -> 503 bytes .../lossless/js/fancybox/fancy_title_main.png | Bin 0 -> 96 bytes .../lossless/js/fancybox/fancy_title_over.png | Bin 0 -> 70 bytes .../js/fancybox/fancy_title_right.png | Bin 0 -> 506 bytes .../lossless/js/fancybox/fancybox-x.png | Bin 0 -> 203 bytes .../lossless/js/fancybox/fancybox-y.png | Bin 0 -> 176 bytes .../lossless/js/fancybox/fancybox.png | Bin 0 -> 15287 bytes .../js/fancybox/jquery.easing-1.3.pack.js | 72 + .../js/fancybox/jquery.fancybox-1.3.4.css | 359 +++++ .../js/fancybox/jquery.fancybox-1.3.4.js | 1156 +++++++++++++++ .../js/fancybox/jquery.fancybox-1.3.4.pack.js | 46 + .../fancybox/jquery.mousewheel-3.0.4.pack.js | 14 + .../lossless/js/libs/dd_belatedpng.js | 13 + .../lossless/js/libs/jquery-1.7.2.min.js | 4 + .../lossless/js/libs/jquery-ui.min.js | 121 ++ .../lossless/js/libs/jquery.dataTables.min.js | 648 +++++++++ .../lossless/js/libs/modernizr-1.7.min.js | 2 + data/interfaces/lossless/js/plugins.js | 41 + data/interfaces/lossless/js/script.js | 294 ++++ data/interfaces/lossless/logs.html | 63 + data/interfaces/lossless/manage.html | 104 ++ data/interfaces/lossless/manageartists.html | 111 ++ data/interfaces/lossless/managenew.html | 67 + data/interfaces/lossless/searchresults.html | 81 ++ data/interfaces/lossless/shutdown.html | 13 + data/interfaces/lossless/upcoming.html | 99 ++ 95 files changed, 8085 insertions(+) create mode 100644 data/interfaces/lossless/album.html create mode 100644 data/interfaces/lossless/artist.html create mode 100644 data/interfaces/lossless/base.html create mode 100644 data/interfaces/lossless/config.html create mode 100644 data/interfaces/lossless/css/config.less create mode 100644 data/interfaces/lossless/css/data_table.css create mode 100644 data/interfaces/lossless/css/jquery-ui.css create mode 100644 data/interfaces/lossless/css/style.css create mode 100644 data/interfaces/lossless/css/style.less create mode 100644 data/interfaces/lossless/css/style_bu.css create mode 100644 data/interfaces/lossless/extras.html create mode 100644 data/interfaces/lossless/history.html create mode 100644 data/interfaces/lossless/images/NoAlbumArt.png create mode 100644 data/interfaces/lossless/images/button.png create mode 100644 data/interfaces/lossless/images/icon_add.png create mode 100644 data/interfaces/lossless/images/icon_delete.png create mode 100644 data/interfaces/lossless/images/icon_extra.gif create mode 100644 data/interfaces/lossless/images/icon_gear.png create mode 100644 data/interfaces/lossless/images/icon_getextra.png create mode 100644 data/interfaces/lossless/images/icon_history.png create mode 100644 data/interfaces/lossless/images/icon_logs.png create mode 100644 data/interfaces/lossless/images/icon_manage.png create mode 100644 data/interfaces/lossless/images/icon_pause.png create mode 100644 data/interfaces/lossless/images/icon_refresh.png create mode 100644 data/interfaces/lossless/images/icon_removeextra.png create mode 100644 data/interfaces/lossless/images/icon_search.gif create mode 100644 data/interfaces/lossless/images/icon_search.png create mode 100644 data/interfaces/lossless/images/icon_sprite_black.png create mode 100644 data/interfaces/lossless/images/icon_sprite_white.png create mode 100644 data/interfaces/lossless/images/icon_upcoming.png create mode 100644 data/interfaces/lossless/images/icon_wanted.png create mode 100644 data/interfaces/lossless/images/loader_black.gif create mode 100644 data/interfaces/lossless/images/loader_blue.gif create mode 100644 data/interfaces/lossless/images/loader_refresh_black.gif create mode 100644 data/interfaces/lossless/images/loader_refresh_blue.gif create mode 100644 data/interfaces/lossless/images/no-cover-art.png create mode 100644 data/interfaces/lossless/images/no-cover-artist.png create mode 100644 data/interfaces/lossless/images/sort_asc.png create mode 100644 data/interfaces/lossless/images/sort_both.png create mode 100644 data/interfaces/lossless/images/sort_desc.png create mode 100644 data/interfaces/lossless/images/toTop.gif create mode 100644 data/interfaces/lossless/images/ui-bg_flat_0_aaaaaa_40x100.png create mode 100644 data/interfaces/lossless/images/ui-bg_flat_0_eeeeee_40x100.png create mode 100644 data/interfaces/lossless/images/ui-bg_flat_55_c0402a_40x100.png create mode 100644 data/interfaces/lossless/images/ui-bg_flat_55_eeeeee_40x100.png create mode 100644 data/interfaces/lossless/images/ui-bg_glass_100_f8f8f8_1x400.png create mode 100644 data/interfaces/lossless/images/ui-bg_glass_35_dddddd_1x400.png create mode 100644 data/interfaces/lossless/images/ui-bg_glass_60_eeeeee_1x400.png create mode 100644 data/interfaces/lossless/images/ui-bg_inset-hard_75_999999_1x100.png create mode 100644 data/interfaces/lossless/images/ui-bg_inset-soft_50_c9c9c9_1x100.png create mode 100644 data/interfaces/lossless/images/ui-icons_3383bb_256x240.png create mode 100644 data/interfaces/lossless/images/ui-icons_454545_256x240.png create mode 100644 data/interfaces/lossless/images/ui-icons_70b2e1_256x240.png create mode 100644 data/interfaces/lossless/images/ui-icons_999999_256x240.png create mode 100644 data/interfaces/lossless/images/ui-icons_fbc856_256x240.png create mode 100644 data/interfaces/lossless/index.html create mode 100644 data/interfaces/lossless/js/fancybox/blank.gif create mode 100644 data/interfaces/lossless/js/fancybox/fancy_close.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_loading.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_nav_left.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_nav_right.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_e.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_n.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_ne.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_nw.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_s.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_se.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_sw.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_shadow_w.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_title_left.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_title_main.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_title_over.png create mode 100644 data/interfaces/lossless/js/fancybox/fancy_title_right.png create mode 100644 data/interfaces/lossless/js/fancybox/fancybox-x.png create mode 100644 data/interfaces/lossless/js/fancybox/fancybox-y.png create mode 100644 data/interfaces/lossless/js/fancybox/fancybox.png create mode 100644 data/interfaces/lossless/js/fancybox/jquery.easing-1.3.pack.js create mode 100644 data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.css create mode 100644 data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.js create mode 100644 data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.pack.js create mode 100644 data/interfaces/lossless/js/fancybox/jquery.mousewheel-3.0.4.pack.js create mode 100644 data/interfaces/lossless/js/libs/dd_belatedpng.js create mode 100644 data/interfaces/lossless/js/libs/jquery-1.7.2.min.js create mode 100644 data/interfaces/lossless/js/libs/jquery-ui.min.js create mode 100644 data/interfaces/lossless/js/libs/jquery.dataTables.min.js create mode 100644 data/interfaces/lossless/js/libs/modernizr-1.7.min.js create mode 100644 data/interfaces/lossless/js/plugins.js create mode 100644 data/interfaces/lossless/js/script.js create mode 100644 data/interfaces/lossless/logs.html create mode 100644 data/interfaces/lossless/manage.html create mode 100644 data/interfaces/lossless/manageartists.html create mode 100644 data/interfaces/lossless/managenew.html create mode 100644 data/interfaces/lossless/searchresults.html create mode 100644 data/interfaces/lossless/shutdown.html create mode 100644 data/interfaces/lossless/upcoming.html diff --git a/data/interfaces/lossless/album.html b/data/interfaces/lossless/album.html new file mode 100644 index 00000000..fc6643e5 --- /dev/null +++ b/data/interfaces/lossless/album.html @@ -0,0 +1,144 @@ +<%inherit file="base.html" /> +<%! + from headphones import db, helpers + myDB = db.DBConnection() +%> + +<%def name="headerIncludes()"> +
+
+ Delete Album + %if album['Status'] == 'Skipped': + Mark Album as Wanted + %elif album['Status'] == 'Wanted': + Force Check + Mark Album as Skipped + %else: + Retry Download + Try New Version + %endif +
+
+ « Back to ${album['ArtistName']} + + +<%def name="body()"> +
+
+
+ albumart +
+ +

${album['AlbumTitle']}

+

${album['ArtistName']}

+ <% + totalduration = myDB.action("SELECT SUM(TrackDuration) FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] + totaltracks = len(myDB.select("SELECT TrackTitle from tracks WHERE AlbumID=?", [album['AlbumID']])) + try: + albumduration = helpers.convert_milliseconds(totalduration) + except: + albumduration = 'n/a' + + %> +
+ %if description: +

${description['Summary']}

+ %endif +
    +
  • Tracks: ${totaltracks}
  • +
  • Duration: ${albumduration}
  • +
+
+ +
+
+ + + + + + + + + + + + + %for track in tracks: + <% + if track['Location']: + grade = 'A' + location = track['Location'] + else: + grade = 'X' + location = '' + + if track['BitRate']: + bitrate = str(track['BitRate']/1000) + ' kbps' + else: + bitrate = '' + + try: + trackduration = helpers.convert_milliseconds(track['TrackDuration']) + except: + trackduration = 'n/a' + + if not track['Format']: + format = 'Unknown' + else: + format = track['Format'] + %> + + + + + + + + + %endfor + <% + unmatched = myDB.select('SELECT * from have WHERE ArtistName LIKE ? AND AlbumTitle LIKE ?', [album['ArtistName'], album['AlbumTitle']]) + %> + %if unmatched: + %for track in unmatched: + <% + duration = helpers.convert_seconds(float(track['TrackLength'])) + %> + + + + + + + + + %endfor + %endif + +
#Track TitleDurationLocal FileBit RateFormat
${track['TrackNumber']}${track['TrackTitle']}${trackduration}${location}${bitrate}${format}
${track['TrackNumber']}${track['TrackTitle']}${duration}${track['Location']}${int(track['BitRate'])/1000} kbps${track['Format']}
+
+
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + diff --git a/data/interfaces/lossless/artist.html b/data/interfaces/lossless/artist.html new file mode 100644 index 00000000..ce1b4aa8 --- /dev/null +++ b/data/interfaces/lossless/artist.html @@ -0,0 +1,190 @@ +<%inherit file="base.html"/> +<%! + from headphones import db + import headphones +%> + +<%def name="headerIncludes()"> +
+
+ Refresh Artist + Delete Artist + %if artist['Status'] == 'Paused': + Resume Artist + %else: + Pause Artist + %endif + %if artist['IncludeExtras']: + Remove Extras + %else: + Get Extras + %endif +
+
+ « Back to overview + + +<%def name="body()"> +
+
+ ${artist['ArtistName']} +
+

${artist['ArtistName']}

+
+ %if artist['Status'] == 'Loading': +

(Album information for this artist is currently being loaded)

+ %endif +
+
+ +
Mark selected albums as + + +
+ + + + + + + + + + + + + + + + %for album in albums: + <% + if album['Status'] == 'Skipped': + grade = 'Z' + elif album['Status'] == 'Wanted': + grade = 'X' + elif album['Status'] == 'Snatched': + grade = 'C' + else: + grade = 'A' + + myDB = db.DBConnection() + totaltracks = len(myDB.select('SELECT TrackTitle from tracks WHERE AlbumID=?', [album['AlbumID']])) + havetracks = len(myDB.select('SELECT TrackTitle from tracks WHERE AlbumID=? AND Location IS NOT NULL', [album['AlbumID']])) + len(myDB.select('SELECT TrackTitle from have WHERE ArtistName like ? AND AlbumTitle LIKE ?', [album['ArtistName'], album['AlbumTitle']])) + + try: + percent = (havetracks*100.0)/totaltracks + if percent > 100: + percent = 100 + except (ZeroDivisionError, TypeError): + percent = 0 + totaltracks = '?' + + avgbitrate = myDB.action("SELECT AVG(BitRate) FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] + if avgbitrate: + bitrate = str(int(avgbitrate)/1000) + ' kbps' + else: + bitrate = '' + + albumformatcount = myDB.action("SELECT COUNT(DISTINCT Format) FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] + if albumformatcount == 1: + albumformat = myDB.action("SELECT DISTINCT Format FROM tracks WHERE AlbumID=?", [album['AlbumID']]).fetchone()[0] + elif albumformatcount > 1: + albumformat = 'Mixed' + else: + albumformat = '' + + lossy_formats = [str.upper(fmt) for fmt in headphones.LOSSY_MEDIA_FORMATS] + + %> + + + + + + + + + + + + %endfor + +
NameDateTypeStatusHaveBitrateFormat
${album['AlbumTitle']}${album['ReleaseDate']}${album['Type']}${album['Status']} + %if album['Status'] == 'Skipped': + [want] + %elif (album['Status'] == 'Wanted' or album['Status'] == 'Wanted Lossless'): + [skip] + %else: + [retry][new] + %endif + %if albumformat in lossy_formats and album['Status'] == 'Skipped': + [want lossless] + %elif albumformat in lossy_formats and (album['Status'] == 'Snatched' or album['Status'] == 'Downloaded'): + [retry lossless] + %endif +
${havetracks}/${totaltracks}
${bitrate}${albumformat}
+
+ + +<%def name="headIncludes()"> + + + + + diff --git a/data/interfaces/lossless/base.html b/data/interfaces/lossless/base.html new file mode 100644 index 00000000..02a3e297 --- /dev/null +++ b/data/interfaces/lossless/base.html @@ -0,0 +1,106 @@ +<% + import headphones + from headphones import version +%> + + + + + + + + + + + Headphones - ${title} + + + + + + + + + + ${next.headIncludes()} + + + + +
+
+
+ % if not headphones.CURRENT_VERSION: +
+ You're running an unknown version of Headphones. Click here to update +
+ % elif headphones.CURRENT_VERSION != headphones.LATEST_VERSION and headphones.INSTALL_TYPE != 'win': +
+ A newer version is available. You're ${headphones.COMMITS_BEHIND} commits behind. Click here to update +
+ % endif +
+ + + + +
+
+ +
+
+ ${next.headerIncludes()} +
+ ${next.body()} +
+ +
+
+ Version: ${headphones.CURRENT_VERSION} + %if version.HEADPHONES_VERSION != 'master': + (${version.HEADPHONES_VERSION}) + %endif + Check for new version +
+
+ Back to top +
+ + + + + + ${next.javascriptIncludes()} + + + + + + + + +<%def name="javascriptIncludes()"> +<%def name="headIncludes()"> +<%def name="headerIncludes()"> diff --git a/data/interfaces/lossless/config.html b/data/interfaces/lossless/config.html new file mode 100644 index 00000000..60d866ad --- /dev/null +++ b/data/interfaces/lossless/config.html @@ -0,0 +1,775 @@ +<%inherit file="base.html"/> +<%! + import headphones +%> + +<%def name="headerIncludes()"> +
+ +
+ +<%def name="body()"> + + + +
+

settingsSettings

+
+
+ +
+ +
+ + + + + + + +
+
+ Basic +
+ + + e.g. localhost or 0.0.0.0 +
+
+ + +
+
+ + +
+ +
+ + +
+
+ +
+
+
+
+ API +
+ +
+
+ + + + Current API key: ${config['api_key']} +
+
+ +
+ Interval +
+ + mins +
+ +
+ + mins +
+ +
+ + mins +
+
+
+
+ +
+ + + + + + + +
+
+ SABnzbd +
+ + + usually http://localhost:8080 +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ Downloads +
+ + + Full path where SAB downloads your music. e.g. /Users/name/Downloads/music +
+
+
+
+ Torrents +
+ + + Folder your Download program watches for Torrents +
+
+ + + Number of minimum seeders a torrent must have to be accepted +
+
+ + + Full path where your torrent client downloads your music e.g. /Users/name/Downloads/music +
+
+
+ Blackhole +
+ +
+
+
+ + + Folder your Download program watches for NZBs +
+
+
+ +
+
+
+
+
+ + + + + + + +
+
+ NZBMatrix +
+ +
+
+
+ + +
+
+ + +
+
+
+ +
+ Newsnab +
+ +
+
+
+ + + e.g. http://nzb.su +
+
+ + +
+
+
+
+
+ NZBs.org +
+ +
+
+
+ + +
+
+
+
+ Newsbin +
+ +
+
+
+ + +
+
+ + +
+
+
+
+ Torrents +
+ +
+
+ +
+
+
+
+ +
+
+
+ + + + + +
+
+ Quality +
+ + + + +
+
+ + +
+ +
+
+
+ Post-Processing +
+ + + + + + + + +
+
+ + + e.g. /Users/name/Music/iTunes or /Volumes/share/music +
+
+
+
+
+ + + + + +
+ +
+ Renaming options +
+ + + Use: $Artist/$artist, $Album/$album, $Year/$year, $Type/$type (release type) and $First/$first (first letter in artist name) + E.g.: $Type/$First/$artist/$album [$year] = Album/G/girl talk/all day [2010] + +
+
+ + + Use: $Track/$track (track #), $Title/$title, $Artist/$artist, $Album/$album and $Year/$year +
+
+ +
+ Re-Encoding Options + Note: this option requires the lame or ffmpeg encoder +
+ +
+
+ +
+ <% + if config['encoder'] == 'lame': + lameselect = 'selected="selected"' + ffmpegselect = '' + else: + lameselect = '' + ffmpegselect = 'selected="selected"' + %> +
+ + +
+
+ + +
+
+ +
+ Audio Properties +
+ + +
+
+ + +
+
+ + +
+ + + <% + if config["samplingfrequency"] == 44100: + freq44100 = 'selected="selected"' + freq48000 = '' + else: + freq44100 = '' + freq48000 = 'selected="selected"' + %> +
+ + +
+
+ +
+ Advanced Encoding Options +
+ + +
+
+ + +
+ +
+ +
+ +
+ Miscellaneous +
+ + +
+
+ +
+ +
+
+
+
+ Interface +
+ + + +
+
+ + +
+
+ + + +

Notifications

+
+

Prowl

+
+ +
+
+
+ +
+
+ +
+
+ + +
+
+
+ + +
+

XBMC

+
+ +
+
+
+ + + e.g. http://localhost:8080. Separate hosts with commas +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ +
+

NotifyMyAndroid

+
+ +
+
+
+ + + Separate multiple api keys with commas +
+
+ + +
+
+
+ +
+ Musicbrainz +
+ + +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ + Get an Account +
+
+
+ +
+
+ +
+

Web Interface changes require a restart to take effect

+
+ + +
+ + +<%def name="javascriptIncludes()"> + + diff --git a/data/interfaces/lossless/css/config.less b/data/interfaces/lossless/css/config.less new file mode 100644 index 00000000..a726a661 --- /dev/null +++ b/data/interfaces/lossless/css/config.less @@ -0,0 +1,74 @@ +/* Variables */ +@base-font-face: "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif; +@alt-font-face: "Trebuchet MS", Helvetica, Arial, sans-serif; +@base-font-size: 12px; +@text-color: #343434; +@swatch-blue: #4183C4; +@swatch-grey: #666666; +@link-color: @swatch-blue; +@border-color: #CCCCCC; +@msg-bg: #FFF6A9; +@msg-bg-success: #D3FFD7; +@msg-bg-error: #FFD3D3; + +/* Mixins */ +.rounded(@radius: 5px) { + -moz-border-radius: @radius; + -webkit-border-radius: @radius; + border-radius: @radius; +} +.roundedTop(@radius: 5px) { + -moz-border-radius-topleft: @radius; + -moz-border-radius-topright: @radius; + -webkit-border-top-right-radius: @radius; + -webkit-border-top-left-radius: @radius; + border-top-left-radius: @radius; + border-top-right-radius: @radius; +} +.roundedLeftTop(@radius: 5px) { + -moz-border-radius-topleft: @radius; + -webkit-border-top-left-radius: @radius; + border-top-left-radius: @radius; +} +.roundedRightTop(@radius: 5px) { + -moz-border-radius-topright: @radius; + -webkit-border-top-right-radius: @radius; + border-top-right-radius: @radius; +} +.roundedBottom(@radius: 5px) { + -moz-border-radius-bottomleft: @radius; + -moz-border-radius-bottomright: @radius; + -webkit-border-bottom-right-radius: @radius; + -webkit-border-bottom-left-radius: @radius; + border-bottom-left-radius: @radius; + border-bottom-right-radius: @radius; +} +.roundedLeftBottom(@radius: 5px) { + -moz-border-radius-bottomleft: @radius; + -webkit-border-bottom-left-radius: @radius; + border-bottom-left-radius: @radius; +} +.roundedRightBottom(@radius: 5px) { + -moz-border-radius-bottomright: @radius; + -webkit-border-bottom-right-radius: @radius; + border-bottom-right-radius: @radius; +} +.shadow(@shadow: 0 17px 11px -1px #ced8d9) { + -moz-box-shadow: @shadow; + -webkit-box-shadow: @shadow; + box-shadow: @shadow; +} +.gradient(@gradientFrom: #FFFFFF, @gradientTo: #EEEEEE){ + background-image: -moz-linear-gradient(@gradientFrom, @gradientTo) !important; + background-image: linear-gradient(@gradientFrom, @gradientTo) !important; + background-image: -webkit-linear-gradient(@gradientFrom, @gradientTo) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=@gradientFrom, endColorstr=@gradientTo) !important; + -ms-filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=@gradientFrom, endColorstr=@gradientTo) !important; +} +.opacity(@opacity_percent:85) { + filter: ~"alpha(opacity=85)"; + -moz-opacity: @opacity_percent / 100 !important; + -khtml-opacity:@opacity_percent / 100 !important; + opacity:@opacity_percent / 100 !important; +} + diff --git a/data/interfaces/lossless/css/data_table.css b/data/interfaces/lossless/css/data_table.css new file mode 100644 index 00000000..a2642d13 --- /dev/null +++ b/data/interfaces/lossless/css/data_table.css @@ -0,0 +1,326 @@ +.dataTables_wrapper { + width: 100%; + min-height: 125px; + clear: both; + _height: 302px; + zoom: 1; /* Feeling sorry for IE */ +} +#wanted_table_wrapper { + margin-top: 0; +} +.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 20px; + height: 30px; + margin-left: -125px; + margin-top: -15px; + padding: 14px 0 2px 0; + border: 1px solid #ddd; + text-align: center; + color: #999; + font-size: 14px; + background-color: white; +} + +.dataTables_length { + width: 40%; + float: left; +} + +.dataTables_filter { + width: 50%; + float: right; + text-align: right; + margin-bottom: 15px; +} +.dataTables_filter input { + background: none repeat scroll 0 0 #FFFFFF; + border: 1px solid #CCC; + font-size: 15px; + padding: 2px 4px; +} +.dataTables_info { + width: 50%; + float: left; + font-weight: bold; +} + +.dataTables_paginate { + width: 44px; + * width: 50px; + float: right; + text-align: right; +} + +/* Pagination nested */ +.paginate_disabled_previous, .paginate_enabled_previous, .paginate_disabled_next, .paginate_enabled_next { + height: 19px; + width: 19px; + margin-left: 3px; + float: left; +} + +.paginate_disabled_previous { + background-image: url('../images/back_disabled.jpg'); +} + +.paginate_enabled_previous { + background-image: url('../images/back_enabled.jpg'); +} + +.paginate_disabled_next { + background-image: url('../images/forward_disabled.jpg'); +} + +.paginate_enabled_next { + background-image: url('../images/forward_enabled.jpg'); +} + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * DataTables display + */ +table.display { + margin: 20px auto; + clear: both; + border:1px solid #EEE; + width: 100%; + + /* Note Firefox 3.5 and before have a bug with border-collapse + * ( https://bugzilla.mozilla.org/show%5Fbug.cgi?id=155955 ) + * border-spacing: 0; is one possible option. Conditional-css.com is + * useful for this kind of thing + * + * Further note IE 6/7 has problems when calculating widths with border width. + * It subtracts one px relative to the other browsers from the first column, and + * adds one to the end... + * + * If you want that effect I'd suggest setting a border-top/left on th/td's and + * then filling in the gaps with other borders. + */ +} + +table.display thead th { + padding: 3px 18px 3px 10px; + background-color: white; + font-weight: bold; + font-size: 16px; + cursor: pointer; + * cursor: hand; +} + +table.display tfoot th { + padding: 3px 18px 3px 10px; + border-top: 1px solid black; + font-weight: bold; +} + +table.display tr.heading2 td { + border-bottom: 1px solid #aaa; +} + +table.display td { + padding: 8px 10px; + font-size: 16px; +} +table +table.display td.center { + text-align: center; +} + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * DataTables sorting + */ + +.sorting_asc { + background: url('../images/sort_asc.png') no-repeat center right; +} + +.sorting_desc { + background: url('../images/sort_desc.png') no-repeat center right; +} + +.sorting { + background: url('../images/sort_both.png') no-repeat center right; +} + +.sorting_asc_disabled { + background: url('../images/sort_asc_disabled.png') no-repeat center right; +} + +.sorting_desc_disabled { + background: url('../images/sort_desc_disabled.png') no-repeat center right; +} + + + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * DataTables row classes + */ +table.display tr.odd.gradeA { + background-color: #ddffdd; +} + +table.display tr.even.gradeA { + background-color: #ddffdd; +} + +table.display tr.odd.gradeC { + background-color: #ddddff; +} + +table.display tr.even.gradeC { + background-color: #ddddff; +} +table.display tr.even.gradeL { + background-color: #ddddff; +} +table.display tr.odd.gradeL { + background-color: #ddddff; +} + +table.display tr.odd.gradeX { + background-color: #ffdddd; +} + +table.display tr.even.gradeX { + background-color: #ffdddd; +} + +table.display tr.odd.gradeU { + background-color: #ddd; +} + +table.display tr.even.gradeU { + background-color: #eee; +} + + +table.display tr.odd.gradeZ { + background-color: #FAFAFA; +} + +table.display tr.even.gradeZ { + background-color: white; +} +table.display tr.gradeL #status { + background: url("../images/loader_black.gif") no-repeat scroll 15px center transparent; + font-size: 11px; + text-indent: -3000px; +} +table.display tr.gradeA td, +table.display tr.gradeC td, +table.display tr.gradeX td, +table.display tr.gradeU td, +table.display tr.gradeZ td {border-bottom: 1px solid #FFF;} +table.display tr:last-child td { + border-bottom: 1px solid #eee; +} +table.display tr td#add .ui-icon { display: inline-block; } + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Misc + */ +.dataTables_scroll { + clear: both; +} + +.dataTables_scrollBody { + *margin-top: -1px; +} + +.top, .bottom { + padding: 15px; + background-color: #F5F5F5; + border: 1px solid #CCCCCC; +} + +.top .dataTables_info { + float: none; +} + +.clear { + clear: both; +} + +.dataTables_empty { + font-size: 24px; + text-align: center; + vertical-align: middle; + background-color: white; + height: 50px; + width: 90%; +} + +tfoot input { + margin: 0.5em 0; + width: 100%; + color: #444; +} + +tfoot input.search_init { + color: #999; +} + +td.group { + background-color: #d1cfd0; + border-bottom: 2px solid #A19B9E; + border-top: 2px solid #A19B9E; +} + +td.details { + background-color: #d1cfd0; + border: 2px solid #A19B9E; +} + +.paging_full_numbers { + width: 400px; + height: 22px; + line-height: 22px; +} + +.paging_full_numbers span.paginate_button, + .paging_full_numbers span.paginate_active { + background: none repeat scroll 0 0 #F3F3F3; + border-radius: 5px 5px 5px 5px; + margin: 0 0 0 5px; + font-size: 15px; + padding: 2px 7px; + color: #4183C4; + cursor: pointer; + *cursor: hand; +} + +.paging_full_numbers span.paginate_button:hover { + background-color: #e2e2e2; +} + +.paging_full_numbers span.paginate_active { + background-color: #4183C4; + color: #FFF; +} + +table.display tr.even.row_selected td { + background-color: #B0BED9; +} + +table.display tr.odd.row_selected td { + background-color: #9FAFD1; +} + +div.box { + height: 100px; + padding: 10px; + overflow: auto; + border: 1px solid #8080FF; + background-color: #E5E5FF; +} diff --git a/data/interfaces/lossless/css/jquery-ui.css b/data/interfaces/lossless/css/jquery-ui.css new file mode 100644 index 00000000..c5d2fd39 --- /dev/null +++ b/data/interfaces/lossless/css/jquery-ui.css @@ -0,0 +1,547 @@ +/*! + * jQuery UI CSS Framework 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Theming/API + */ + +/* Layout helpers +----------------------------------*/ +.ui-helper-hidden { display: none; } +.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } +.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } +.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; } +.ui-helper-clearfix:after { clear: both; } +.ui-helper-clearfix { zoom: 1; } +.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } + + +/* Interaction Cues +----------------------------------*/ +.ui-state-disabled { cursor: default !important; } + + +/* Icons +----------------------------------*/ + +/* states and images */ +.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } + + +/* Misc visuals +----------------------------------*/ + +/* Overlays */ +.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } + + +/*! + * jQuery UI CSS Framework 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Theming/API + * + * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS,%20Helvetica,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=dddddd&bgTextureHeader=02_glass.png&bgImgOpacityHeader=35&borderColorHeader=bbbbbb&fcHeader=444444&iconColorHeader=999999&bgColorContent=c9c9c9&bgTextureContent=05_inset_soft.png&bgImgOpacityContent=50&borderColorContent=aaaaaa&fcContent=333333&iconColorContent=999999&bgColorDefault=eeeeee&bgTextureDefault=02_glass.png&bgImgOpacityDefault=60&borderColorDefault=cccccc&fcDefault=3383bb&iconColorDefault=70b2e1&bgColorHover=f8f8f8&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=bbbbbb&fcHover=599fcf&iconColorHover=3383bb&bgColorActive=999999&bgTextureActive=06_inset_hard.png&bgImgOpacityActive=75&borderColorActive=999999&fcActive=ffffff&iconColorActive=454545&bgColorHighlight=eeeeee&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=55&borderColorHighlight=ffffff&fcHighlight=444444&iconColorHighlight=3383bb&bgColorError=c0402a&bgTextureError=01_flat.png&bgImgOpacityError=55&borderColorError=c0402a&fcError=ffffff&iconColorError=fbc856&bgColorOverlay=eeeeee&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=80&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=60&thicknessShadow=4px&offsetTopShadow=-4px&offsetLeftShadow=-4px&cornerRadiusShadow=0pxdow=0px + */ + + +/* Component containers +----------------------------------*/ +.ui-widget { font-family: Trebuchet MS, Helvetica, Arial, sans-serif; font-size: 1.1em; } +.ui-widget .ui-widget { font-size: 1em; } +.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Trebuchet MS, Helvetica, Arial, sans-serif; font-size: 1em; } +.ui-widget-content { border: 1px solid #aaaaaa; background: #f2f2f2; color: #333333; } +.ui-widget-content a { /*color: #333333;*/ } +.ui-widget-header { border: 1px solid #bbbbbb; background: #dddddd url(../images/ui-bg_glass_35_dddddd_1x400.png) 50% 50% repeat-x; color: #444444; font-weight: bold; } +.ui-widget-header a { color: #444444; } + +/* Interaction states +----------------------------------*/ +.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #cccccc; background: #eeeeee url(../images/ui-bg_glass_60_eeeeee_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #3383bb; } +.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #3383bb; text-decoration: none; } +.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #bbbbbb; background: #f8f8f8 url(../images/ui-bg_glass_100_f8f8f8_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #599fcf; } +.ui-state-hover a, .ui-state-hover a:hover { color: #599fcf; text-decoration: none; } +.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #999999; background: #ccc; font-weight: bold; color: #ffffff; } +.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #ffffff; text-decoration: none; } +.ui-widget :active { outline: none; } + +/* Interaction Cues +----------------------------------*/ +.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #ffffff; background: #eeeeee url(../images/ui-bg_flat_55_eeeeee_40x100.png) 50% 50% repeat-x; color: #444444; } +.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #444444; } +.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #c0402a; background: #c0402a url(../images/ui-bg_flat_55_c0402a_40x100.png) 50% 50% repeat-x; color: #ffffff; } +.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; } +.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; } +.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } +.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } +.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } + +/* Icons +----------------------------------*/ + +/* states and images */ +.ui-icon { width: 16px; height: 16px; background-image: url(../images/icon_sprite_black.png); } +.ui-widget-content .ui-icon {background-image: url(../images/icon_sprite_black.png); } +.ui-widget-header .ui-icon {background-image: url(../images/icon_sprite_black.png); } +.ui-button.ui-state-hover .ui-icon { background-image: url(../images/icon_sprite_white.png); } +.ui-state-default .ui-icon { background-image: url(../images/ui-icons_70b2e1_256x240.png); } +.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../images/ui-icons_3383bb_256x240.png); } +.ui-state-active .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png); } +.ui-state-highlight .ui-icon {background-image: url(../images/ui-icons_3383bb_256x240.png); } +.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(../images/ui-icons_fbc856_256x240.png); } + +/* positioning */ +.ui-icon-carat-1-n { background-position: 0 0; } +.ui-icon-carat-1-ne { background-position: -16px 0; } +.ui-icon-carat-1-e { background-position: -32px 0; } +.ui-icon-carat-1-se { background-position: -48px 0; } +.ui-icon-carat-1-s { background-position: -64px 0; } +.ui-icon-carat-1-sw { background-position: -80px 0; } +.ui-icon-carat-1-w { background-position: -96px 0; } +.ui-icon-carat-1-nw { background-position: -112px 0; } +.ui-icon-carat-2-n-s { background-position: -128px 0; } +.ui-icon-carat-2-e-w { background-position: -144px 0; } +.ui-icon-triangle-1-n { background-position: 0 -16px; } +.ui-icon-triangle-1-ne { background-position: -16px -16px; } +.ui-icon-triangle-1-e { background-position: -32px -16px; } +.ui-icon-triangle-1-se { background-position: -48px -16px; } +.ui-icon-triangle-1-s { background-position: -64px -16px; } +.ui-icon-triangle-1-sw { background-position: -80px -16px; } +.ui-icon-triangle-1-w { background-position: -96px -16px; } +.ui-icon-triangle-1-nw { background-position: -112px -16px; } +.ui-icon-triangle-2-n-s { background-position: -128px -16px; } +.ui-icon-triangle-2-e-w { background-position: -144px -16px; } +.ui-icon-arrow-1-n { background-position: 0 -32px; } +.ui-icon-arrow-1-ne { background-position: -16px -32px; } +.ui-icon-arrow-1-e { background-position: -32px -32px; } +.ui-icon-arrow-1-se { background-position: -48px -32px; } +.ui-icon-arrow-1-s { background-position: -64px -32px; } +.ui-icon-arrow-1-sw { background-position: -80px -32px; } +.ui-icon-arrow-1-w { background-position: -96px -32px; } +.ui-icon-arrow-1-nw { background-position: -112px -32px; } +.ui-icon-arrow-2-n-s { background-position: -128px -32px; } +.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } +.ui-icon-arrow-2-e-w { background-position: -160px -32px; } +.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } +.ui-icon-arrowstop-1-n { background-position: -192px -32px; } +.ui-icon-arrowstop-1-e { background-position: -208px -32px; } +.ui-icon-arrowstop-1-s { background-position: -224px -32px; } +.ui-icon-arrowstop-1-w { background-position: -240px -32px; } +.ui-icon-arrowthick-1-n { background-position: 0 -48px; } +.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } +.ui-icon-arrowthick-1-e { background-position: -32px -48px; } +.ui-icon-arrowthick-1-se { background-position: -48px -48px; } +.ui-icon-arrowthick-1-s { background-position: -64px -48px; } +.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } +.ui-icon-arrowthick-1-w { background-position: -96px -48px; } +.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } +.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } +.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } +.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } +.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } +.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } +.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } +.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } +.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } +.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } +.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } +.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } +.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } +.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } +.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } +.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } +.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } +.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } +.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } +.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } +.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } +.ui-icon-arrow-4 { background-position: 0 -80px; } +.ui-icon-arrow-4-diag { background-position: -16px -80px; } +.ui-icon-extlink { background-position: -32px -80px; } +.ui-icon-newwin { background-position: -48px -80px; } +.ui-icon-refresh { background-position: -64px -80px; } +.ui-icon-shuffle { background-position: -80px -80px; } +.ui-icon-transfer-e-w { background-position: -96px -80px; } +.ui-icon-transferthick-e-w { background-position: -112px -80px; } +.ui-icon-folder-collapsed { background-position: 0 -96px; } +.ui-icon-folder-open { background-position: -16px -96px; } +.ui-icon-document { background-position: -32px -96px; } +.ui-icon-document-b { background-position: -48px -96px; } +.ui-icon-note { background-position: -64px -96px; } +.ui-icon-mail-closed { background-position: -80px -96px; } +.ui-icon-mail-open { background-position: -96px -96px; } +.ui-icon-suitcase { background-position: -112px -96px; } +.ui-icon-comment { background-position: -128px -96px; } +.ui-icon-person { background-position: -144px -96px; } +.ui-icon-print { background-position: -160px -96px; } +.ui-icon-trash { background-position: -176px -96px; } +.ui-icon-locked { background-position: -192px -96px; } +.ui-icon-unlocked { background-position: -208px -96px; } +.ui-icon-bookmark { background-position: -224px -96px; } +.ui-icon-tag { background-position: -240px -96px; } +.ui-icon-home { background-position: 0 -112px; } +.ui-icon-flag { background-position: -16px -112px; } +.ui-icon-calendar { background-position: -32px -112px; } +.ui-icon-cart { background-position: -48px -112px; } +.ui-icon-pencil { background-position: -64px -112px; } +.ui-icon-clock { background-position: -80px -112px; } +.ui-icon-disk { background-position: -96px -112px; } +.ui-icon-calculator { background-position: -112px -112px; } +.ui-icon-zoomin { background-position: -128px -112px; } +.ui-icon-zoomout { background-position: -144px -112px; } +.ui-icon-search { background-position: -160px -112px; } +.ui-icon-wrench { background-position: -176px -112px; } +.ui-icon-gear { background-position: -192px -112px; } +.ui-icon-heart { background-position: -208px -112px; } +.ui-icon-star { background-position: -224px -112px; } +.ui-icon-link { background-position: -240px -112px; } +.ui-icon-cancel { background-position: 0 -128px; } +.ui-icon-plus { background-position: -16px -128px; } +.ui-icon-plusthick { background-position: -32px -128px; } +.ui-icon-minus { background-position: -48px -128px; } +.ui-icon-minusthick { background-position: -64px -128px; } +.ui-icon-close { background-position: -80px -128px; } +.ui-icon-closethick { background-position: -96px -128px; } +.ui-icon-key { background-position: -112px -128px; } +.ui-icon-lightbulb { background-position: -128px -128px; } +.ui-icon-scissors { background-position: -144px -128px; } +.ui-icon-clipboard { background-position: -160px -128px; } +.ui-icon-copy { background-position: -176px -128px; } +.ui-icon-contact { background-position: -192px -128px; } +.ui-icon-image { background-position: -208px -128px; } +.ui-icon-video { background-position: -224px -128px; } +.ui-icon-script { background-position: -240px -128px; } +.ui-icon-alert { background-position: 0 -144px; } +.ui-icon-info { background-position: -16px -144px; } +.ui-icon-notice { background-position: -32px -144px; } +.ui-icon-help { background-position: -48px -144px; } +.ui-icon-check { background-position: -64px -144px; } +.ui-icon-bullet { background-position: -80px -144px; } +.ui-icon-radio-off { background-position: -96px -144px; } +.ui-icon-radio-on { background-position: -112px -144px; } +.ui-icon-pin-w { background-position: -128px -144px; } +.ui-icon-pin-s { background-position: -144px -144px; } +.ui-icon-play { background-position: 0 -160px; } +.ui-icon-pause { background-position: -16px -160px; } +.ui-icon-seek-next { background-position: -32px -160px; } +.ui-icon-seek-prev { background-position: -48px -160px; } +.ui-icon-seek-end { background-position: -64px -160px; } +.ui-icon-seek-start { background-position: -80px -160px; } +/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ +.ui-icon-seek-first { background-position: -80px -160px; } +.ui-icon-stop { background-position: -96px -160px; } +.ui-icon-eject { background-position: -112px -160px; } +.ui-icon-volume-off { background-position: -128px -160px; } +.ui-icon-volume-on { background-position: -144px -160px; } +.ui-icon-power { background-position: 0 -176px; } +.ui-icon-signal-diag { background-position: -16px -176px; } +.ui-icon-signal { background-position: -32px -176px; } +.ui-icon-battery-0 { background-position: -48px -176px; } +.ui-icon-battery-1 { background-position: -64px -176px; } +.ui-icon-battery-2 { background-position: -80px -176px; } +.ui-icon-battery-3 { background-position: -96px -176px; } +.ui-icon-circle-plus { background-position: 0 -192px; } +.ui-icon-circle-minus { background-position: -16px -192px; } +.ui-icon-circle-close { background-position: -32px -192px; } +.ui-icon-circle-triangle-e { background-position: -48px -192px; } +.ui-icon-circle-triangle-s { background-position: -64px -192px; } +.ui-icon-circle-triangle-w { background-position: -80px -192px; } +.ui-icon-circle-triangle-n { background-position: -96px -192px; } +.ui-icon-circle-arrow-e { background-position: -112px -192px; } +.ui-icon-circle-arrow-s { background-position: -128px -192px; } +.ui-icon-circle-arrow-w { background-position: -144px -192px; } +.ui-icon-circle-arrow-n { background-position: -160px -192px; } +.ui-icon-circle-zoomin { background-position: -176px -192px; } +.ui-icon-circle-zoomout { background-position: -192px -192px; } +.ui-icon-circle-check { background-position: -208px -192px; } +.ui-icon-circlesmall-plus { background-position: 0 -208px; } +.ui-icon-circlesmall-minus { background-position: -16px -208px; } +.ui-icon-circlesmall-close { background-position: -32px -208px; } +.ui-icon-squaresmall-plus { background-position: -48px -208px; } +.ui-icon-squaresmall-minus { background-position: -64px -208px; } +.ui-icon-squaresmall-close { background-position: -80px -208px; } +.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } +.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } +.ui-icon-grip-solid-vertical { background-position: -32px -224px; } +.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } +.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } +.ui-icon-grip-diagonal-se { background-position: -80px -224px; } + + +/* Misc visuals +----------------------------------*/ + +/* Corner radius */ +.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; -khtml-border-top-left-radius: 6px; border-top-left-radius: 6px; } +.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; -khtml-border-top-right-radius: 6px; border-top-right-radius: 6px; } +.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; -khtml-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; } +.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; -khtml-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; } + +/* Overlays */ +.ui-widget-overlay { background: #eeeeee url(../images/ui-bg_flat_0_eeeeee_40x100.png) 50% 50% repeat-x; opacity: .80;filter:Alpha(Opacity=80); } +.ui-widget-shadow { margin: -4px 0 0 -4px; padding: 4px; background: #aaaaaa url(../images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .60;filter:Alpha(Opacity=60); -moz-border-radius: 0pxdow=0px; -khtml-border-radius: 0pxdow=0px; -webkit-border-radius: 0pxdow=0px; border-radius: 0pxdow=0px; }/*! + * jQuery UI Resizable 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizable#theming + */ +.ui-resizable { position: relative;} +.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block; } +.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } +.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } +.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; } +.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } +.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } +.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } +.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } +.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } +.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*! + * jQuery UI Selectable 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Selectable#theming + */ +.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } +/*! + * jQuery UI Accordion 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Accordion#theming + */ +/* IE/Win - Fix animation bug - #4615 */ +.ui-accordion { width: 100%; } +.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; } +.ui-accordion .ui-accordion-li-fix { display: inline; } +.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; } +.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; } +.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; } +.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; } +.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; } +.ui-accordion .ui-accordion-content-active { display: block; } +/*! + * jQuery UI Autocomplete 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Autocomplete#theming + */ +.ui-autocomplete { position: absolute; cursor: default; } + +/* workarounds */ +* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ + +/* + * jQuery UI Menu @VERSION + * + * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Menu#theming + */ +.ui-menu { + list-style:none; + padding: 2px; + margin: 0; + display:block; + float: left; +} +.ui-menu .ui-menu { + margin-top: -3px; +} +.ui-menu .ui-menu-item { + margin:0; + padding: 0; + zoom: 1; + float: left; + clear: left; + width: 100%; +} +.ui-menu .ui-menu-item a { + text-decoration:none; + display:block; + padding:.2em .4em; + line-height:1.5; + zoom:1; +} +.ui-menu .ui-menu-item a.ui-state-hover, +.ui-menu .ui-menu-item a.ui-state-active { + font-weight: normal; + margin: -1px; +} +/*! + * jQuery UI Button 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Button#theming + */ +.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */ +.ui-button:hover { + color:#3383BB; +} +.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */ +button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */ +.ui-button-icons-only { width: 3.4em; } +button.ui-button-icons-only { width: 3.7em; } + +/*button text element */ +.ui-button .ui-button-text { display: block; line-height: 1.4; } +.ui-button-text-only .ui-button-text { padding: .4em 1em; } +.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; } +.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: 0.2em 0.5em 0.2em 1.8em } +.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: 0.2em 1.8em 0.2em 0.5em } +.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; } +/* no icon support for input elements, provide padding by default */ +input.ui-button { padding: .4em 1em; } + +/*button icon element(s) */ +.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; } +.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; } +.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .3em; } +.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } +.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; } + +/*button sets*/ +.ui-buttonset { margin-right: 7px; } +.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; } + +/* workarounds */ +button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */ +/*! + * jQuery UI Dialog 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Dialog#theming + */ +.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } +.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } +.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } +.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } +.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } +.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } +.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } +.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } +.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } +.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } +.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } +.ui-draggable .ui-dialog-titlebar { cursor: move; } +/*! + * jQuery UI Tabs 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Tabs#theming + */ +.ui-tabs { position: relative; padding: 0em; zoom: 1; background: transparent; border: none;} /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ +.ui-tabs .ui-tabs-nav { margin: 0; padding: 0; background: none; border:none;} +.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap;background: #FFF; } +.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; font-weight: normal; } +.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; background-color: #f7f7f7; border-color: #CCC; } +.ui-tabs .ui-tabs-nav li.ui-tabs-selected a { color: #454545; } +.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } +.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ +.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: #f7f7f7; border: 1px solid #CCC; } +.ui-tabs .ui-tabs-hide { display: none !important; } +/*! + * jQuery UI Datepicker 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Datepicker#theming + */ +.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } +.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } +.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } +.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } +.ui-datepicker .ui-datepicker-prev { left:2px; } +.ui-datepicker .ui-datepicker-next { right:2px; } +.ui-datepicker .ui-datepicker-prev-hover { left:1px; } +.ui-datepicker .ui-datepicker-next-hover { right:1px; } +.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } +.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } +.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } +.ui-datepicker select.ui-datepicker-month-year {width: 100%;} +.ui-datepicker select.ui-datepicker-month, +.ui-datepicker select.ui-datepicker-year { width: 49%;} +.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } +.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } +.ui-datepicker td { border: 0; padding: 1px; } +.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } +.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } +.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } +.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } + +/* with multiple calendars */ +.ui-datepicker.ui-datepicker-multi { width:auto; } +.ui-datepicker-multi .ui-datepicker-group { float:left; } +.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } +.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } +.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } +.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } +.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } +.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } +.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } +.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } + +/* RTL support */ +.ui-datepicker-rtl { direction: rtl; } +.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } +.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } +.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } +.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } +.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } +.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } +.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } +.ui-datepicker-rtl .ui-datepicker-group { float:right; } +.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } +.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } + +/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ +.ui-datepicker-cover { + display: none; /*sorry for IE5*/ + display/**/: block; /*sorry for IE5*/ + position: absolute; /*must have*/ + z-index: -1; /*must have*/ + filter: mask(); /*must have*/ + top: -4px; /*must have*/ + left: -4px; /*must have*/ + width: 200px; /*must have*/ + height: 200px; /*must have*/ +}/*! + * jQuery UI Progressbar 1.8.19 + * + * Copyright 2012, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Progressbar#theming + */ +.ui-progressbar { height:2em; text-align: left; overflow: hidden; } +.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; } \ No newline at end of file diff --git a/data/interfaces/lossless/css/style.css b/data/interfaces/lossless/css/style.css new file mode 100644 index 00000000..9927b171 --- /dev/null +++ b/data/interfaces/lossless/css/style.css @@ -0,0 +1,1293 @@ +/* Variables *//* Mixins */ +html, +body, +div, +span, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +abbr, +address, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +samp, +small, +strong, +sub, +sup, +var, +b, +i, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section, +summary, +time, +mark, +audio, +video { + border: 0; + font: inherit; + font-size: 100%; + margin: 0; + padding: 0; + vertical-align: baseline; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section { + display: block; +} +html { + color: #343434; + font-size: 12px; + line-height: 1.5; +} +body { + background: #fff; + color: #343434; + font-family: "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif; + margin: 0; + overflow-y: scroll; + padding: 0; +} +a { + color: #4183c4; + text-decoration: none; + outline: none; +} +a:hover { + color: #8B8B8B; +} +a.blue { + color: blue; +} +a .ui-icon { + display: inline-block; + position: relative; + top: 2px; +} +.links a { + color: #666666; + clear: both; + display: inline-block; + float: left; +} +.links a:hover { + color: #4183c4; +} +.links a .ui-icon { + float: left; + margin-right: 5px; + margin-top: 3px; +} +h1 { + font-size: 24px; +} +h2 { + font-size: 20px; +} +h3 { + font-size: 16px; +} +p.center { + text-align: center; +} +hr { + border: 0; + border-top: 1px solid #cccccc; + display: block; + height: 1px; + margin: 1em 0; + padding: 0; +} +small { + font-size: 85%; +} +img.albumArt { + float: left; + min-height: 100%; + min-width: 100%; + position: relative; +} +.title { + margin-bottom: 20px; + margin-top: 10px; +} +.title h1 img { + float: left; + margin-right: 5px; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +table th { + background-image: -moz-linear-gradient(#fafafa, #eaeaea) !important; + background-image: linear-gradient(#fafafa, #eaeaea) !important; + background-image: -webkit-linear-gradient(#fafafa, #eaeaea) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + text-shadow: 1px 1px 0 #FFFFFF ; +} +table th input[type="checkbox"] { + vertical-align: middle; +} +table td { + vertical-align: top; +} +table td a { + color: #666666; +} +select, +input, +textarea, +button { + font: 99%; +} +textarea { + overflow: auto; +} +input { + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; +} +input:invalid, +textarea:invalid { + -moz-box-shadow: 0 0 5px #ff0000; + -webkit-box-shadow: 0 0 5px #ff0000; + box-shadow: 0 0 5px #ff0000; + -moz-border-radius: 1px; + -webkit-border-radius: 1px; + border-radius: 1px; +} +.no-boxshadow input:invalid, +.no-boxshadow textarea:invalid { + background-color: #f0dddd; +} +input[type="checkbox"] { + vertical-align: bottom; +} +label, +input[type="button"], +input[type="submit"], +input[type="image"], +button { + cursor: pointer; +} +button, +input, +select, +textarea { + margin: 0; +} +button { + overflow: visible; + width: auto; +} +input, +select, +form .checkbox input, +.configtable td#middle, +#artist_table td#have, +#album_table td#have { + vertical-align: middle; +} +input[type="radio"] { + vertical-align: text-bottom; +} +::-moz-selection, +::selection { + background: grey; + color: #fff; + text-shadow: none; +} +input[type=submit], +input[type=button] { + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + background: #222222 url("../images/button.png") repeat-x; + border: 0; + border-bottom: 1px solid rgba(0, 0, 0, 0.25); + color: #fff; + cursor: pointer; + display: inline-block; + margin-right: 3px; + padding: 4px 10px; + position: relative; + text-decoration: none; + text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.25); +} +form legend, +form h2 { + font-size: 16px; + font-weight: bold; + margin-bottom: 10px; +} +form table { + width: 100%; +} +form fieldset { + margin-bottom: 20px; +} +form fieldset small.heading { + color: #666; + display: block; + font-style: italic; + margin-bottom: 10px; + margin-top: -15px; +} +form .row { + font-family: Helvetica, Arial; + margin-bottom: 10px; +} +form .row label { + display: block; + float: left; + font-size: 12px; + line-height: normal; + padding-top: 7px; + width: 175px; +} +form .row input { + margin-right: 5px; +} +form .row input[type=text], +form .row input[type=password] { + border: 1px solid #DDD; + border-top: 1px solid #CDCDCD; + -moz-box-shadow: 0 1px 0 #f1f1f1; + -webkit-box-shadow: 0 1px 0 #f1f1f1; + box-shadow: 0 1px 0 #f1f1f1; + -moz-box-shadow: inset 0 1px 1px #e0e0e0; + -webkit-box-shadow: inset 0 1px 1px #e0e0e0; + box-shadow: inset 0 1px 1px #e0e0e0; + color: #343434; + font-size: 14px; + height: auto; + line-height: normal; + max-width: 230px; + margin-right: 5px; + padding: 3px 5px; +} +form .row small { + color: #999; + display: block; + font-size: 9px; + line-height: 12px; + margin-left: 175px; + margin-top: 3px; +} +form .left label { + float: none; + line-height: normal; + margin-bottom: 10px; + padding-top: 1px; + width: auto; +} +form .left input { + float: left; + margin-bottom: 10px; +} +form .radio label { + float: none; + line-height: normal; + margin-bottom: 10px; + padding-top: 1px; + width: auto; +} +form .radio input { + float: left; + margin-bottom: 10px; +} +form .radio small { + display: inline !important; + line-height: normal !important; + margin: 0 !important; + width: auto; +} +form .checkbox small { + display: inline !important; + line-height: normal !important; + margin: 0 !important; + width: auto; +} +ul, +ol { + margin-left: 2em; +} +ol { + list-style-type: decimal; +} +nav ul, +nav li { + list-style: none; + list-style-image: none; + margin: 0; +} +ul#nav { + float: right; + margin: 0; + padding: 0 0 0 10px; + border-left: 1px solid #FAFAFA; + -moz-box-shadow: -1px 0 0 #e0e0e0; + -webkit-box-shadow: -1px 0 0 #e0e0e0; + box-shadow: -1px 0 0 #e0e0e0; + height: 58px; +} +ul#nav li { + display: block; + float: left; + font-size: 18px; + font-weight: bold; + margin: 8px 0 0 0; + text-align: center; +} +ul#nav li a { + color: #343434; + display: block; + padding: 7px 15px; + text-shadow: 1px 1px 0px #FFF; + text-transform: capitalize; + border: 1px solid transparent; + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; +} +ul#nav li a:hover { + background-image: -moz-linear-gradient(#f1f1f1, #e0e0e0) !important; + background-image: linear-gradient(#f1f1f1, #e0e0e0) !important; + background-image: -webkit-linear-gradient(#f1f1f1, #e0e0e0) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + border: 1px solid #DDDDDD; + -moz-border-radius: 3px; + -webkit-border-radius: 3px; + border-radius: 3px; + -moz-box-shadow: 0 1px 0 #fafafa; + -webkit-box-shadow: 0 1px 0 #fafafa; + box-shadow: 0 1px 0 #fafafa; + -moz-box-shadow: 0 1px 0 #fafafa inset; + -webkit-box-shadow: 0 1px 0 #fafafa inset; + box-shadow: 0 1px 0 #fafafa inset; + -webkit-transition: color 0.2s ease-in; + -moz-transition: color 0.2s ease-in; + -o-transition: color 0.2s ease-in; + transition: color 0.2s ease-in; +} +ul#nav li a.config { + height: 28px; + width: 10px; +} +ul#nav li a.config img { + position: relative; + top: -7px; + left: -7px; +} +ul#nav li a.log { + font-size: 13px; + padding: 10px 15px 11px; +} +header { + background-image: -moz-linear-gradient(#fafafa, #eaeaea) !important; + background-image: linear-gradient(#fafafa, #eaeaea) !important; + background-image: -webkit-linear-gradient(#fafafa, #eaeaea) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + border-bottom: 1px solid #CACACA; + -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); + -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); + box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); + height: 58px; + position: fixed; + width: 100%; + z-index: 999; +} +header .wrapper { + margin: 0 auto; + overflow: hidden; + position: relative; + width: 960px; +} +header #logo { + float: left; + margin-right: 20px; + position: relative; + top: -3px; + margin-left: 10px; +} +footer { + display: table; + margin: 20px auto; + width: 960px; +} +#main { + line-height: 24px; + margin: 0 auto; + padding: 75px 0 0; + width: 960px; +} +.message { + -moz-border-radius: 10px; + -webkit-border-radius: 10px; + border-radius: 10px; + background-color: #fff6a9; + display: inline-block; + padding: 5px 10px; + margin-top: 10px; +} +.message .ui-icon { + float: left; + margin-right: 5px; + position: relative; + top: 4px; +} +#ajaxMsg { + border: 1px solid #cccccc; + background-image: -moz-linear-gradient(#ffffff, #eeeeee) !important; + background-image: linear-gradient(#ffffff, #eeeeee) !important; + background-image: -webkit-linear-gradient(#ffffff, #eeeeee) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -moz-border-radius: 7px; + -webkit-border-radius: 7px; + border-radius: 7px; + display: none; + font-size: 14px; + right: 10px; + -moz-box-shadow: 0px 0px 2px #aaaaaa; + -webkit-box-shadow: 0px 0px 2px #aaaaaa; + box-shadow: 0px 0px 2px #aaaaaa; + padding: 7px 10px; + position: fixed; + text-align: center; + bottom: 10px; + min-height: 22px; + width: 250px; + z-index: 9999; + filter: alpha(opacity=85); + -moz-opacity: 0.8 !important; + -khtml-opacity: 0.8 !important; + opacity: 0.8 !important; +} +#ajaxMsg .msg { + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; + line-height: normal; + padding-left: 20px; +} +#ajaxMsg .loader { + position: relative; + top: 2px; +} +#ajaxMsg.success { + background-image: -moz-linear-gradient(#d3ffd7, #c2edc6) !important; + background-image: linear-gradient(#d3ffd7, #c2edc6) !important; + background-image: -webkit-linear-gradient(#d3ffd7, #c2edc6) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + padding: 15px 10px; + text-align: left; +} +#ajaxMsg.error { + background-image: -moz-linear-gradient(#ffd3d3, #edc4c4) !important; + background-image: linear-gradient(#ffd3d3, #edc4c4) !important; + background-image: -webkit-linear-gradient(#ffd3d3, #edc4c4) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + padding: 15px 10px; + text-align: left; +} +#ajaxMsg .ui-icon { + display: inline-block; + margin-left: -20px; + top: 2px; + position: relative; + margin-right: 3px; +} +#updatebar { + -moz-border-radius-bottomleft: 10px; + -moz-border-radius-bottomright: 10px; + -webkit-border-bottom-right-radius: 10px; + -webkit-border-bottom-left-radius: 10px; + border-bottom-left-radius: 10px; + border-bottom-right-radius: 10px; + background-color: #fff6a9; + border: 1px solid #cccccc; + font-size: 11px; + left: 35%; + margin: 0 auto; + padding: 1px 10px; + position: absolute; + text-align: center; + text-transform: lowercase; + top: 0; +} +#subhead .back { + float: left; + margin-top: -25px; +} +#subhead #subhead_container { + float: right; + height: 30px; + list-style-type: none; + width: 100%; + z-index: 998; +} +#subhead #subhead_container #subhead_menu { + float: right; + margin-top: 5px; + position: relative; + z-index: 99; +} +#subhead #subhead_container #subhead_menu a { + background-image: -moz-linear-gradient(#f4f4f4, #e7e7e7) !important; + background-image: linear-gradient(#f4f4f4, #e7e7e7) !important; + background-image: -webkit-linear-gradient(#f4f4f4, #e7e7e7) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + font-family: "Helvetica Neue", Helvetica, Arial, Geneva, sans-serif; + font-size: 12px; + font-weight: normal; +} +#subhead #subhead_container #subhead_menu a:hover { + background-image: -moz-linear-gradient(#599bdc, #3072b3) !important; + background-image: linear-gradient(#599bdc, #3072b3) !important; + background-image: -webkit-linear-gradient(#599bdc, #3072b3) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + color: #FFF; + border-color: #518CC6 #518CC6 #2A65A0; +} +div#searchbar { + border-left: 1px solid #FAFAFA; + -moz-box-shadow: -1px 0 0 #e0e0e0; + -webkit-box-shadow: -1px 0 0 #e0e0e0; + box-shadow: -1px 0 0 #e0e0e0; + padding: 15px 0 15px 20px; + position: absolute; + left: 90px; + top: 2px; +} +div#searchbar input[type=text] { + border: 1px solid #DDD; + border-top: 1px solid #CDCDCD; + -moz-box-shadow: 0 1px 0 #f1f1f1; + -webkit-box-shadow: 0 1px 0 #f1f1f1; + box-shadow: 0 1px 0 #f1f1f1; + -moz-box-shadow: inset 0 1px 1px #e0e0e0; + -webkit-box-shadow: inset 0 1px 1px #e0e0e0; + box-shadow: inset 0 1px 1px #e0e0e0; + color: #999; + float: left; + font-size: 14px; + height: auto; + line-height: normal; + margin-right: 5px; + padding: 4px 5px 4px 25px; + width: 150px; +} +div#searchbar .mini-icon { + height: 20px; + width: 20px; + background: url("../images/icon_search.gif") left top no-repeat; + position: absolute; + display: block; + margin-left: 6px; + margin-top: 6px; +} +.configtable legend { + font-size: 16px; + font-weight: bold; + margin-bottom: 10px; + text-shadow: 1px 1px 0 #FFFFFF; +} +.configtable tr td:last-child { + border-left: 1px dotted #ddd; + padding-left: 20px; +} +.configtable td { + padding-right: 15px; + width: 50%; +} +.table_wrapper { + _height: 302px; + background-color: #FFF; + clear: both; + margin: 30px auto 0; + min-height: 100px; + position: relative; + width: 100%; + zoom: 1px; +} +.manage_wrapper { + _height: 302px; + clear: both; + margin: 20px auto 0; + min-height: 150px; + padding: 25px; + width: 88%; + zoom: 1px; +} +#paddingheader { + position: relative; + top: -25px; +} +#paddingheader h1 { + line-height: 33px; + width: 450px; +} +#paddingheader h1 img { + float: left; + margin-right: 5px; +} +div#nopaddingheader { + font-size: 24px; + font-weight: bold; + text-align: center; +} +div#artistheader { + margin-top: 50px; + min-height: 200px; +} +div#artistheader #artistImg { + background: #ffffff url("../images/loader_black.gif") center no-repeat; + border: 5px solid #FFF; + -moz-box-shadow: 1px 1px 2px 0 #555555; + -webkit-box-shadow: 1px 1px 2px 0 #555555; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 200px; + margin-bottom: 30px; + margin-right: 25px; + overflow: hidden; + text-indent: -3000px; + width: 200px; +} +div#artistheader #artistBio { + font-size: 16px; + line-height: 24px; + margin-top: 10px; +} +div#artistheader h1 a { + font-size: 32px; + margin-bottom: 5px; + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; +} +div#artistheader h2 a { + font-style: italic; + font-weight: bold; + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; +} +#artist_table { + background-color: #FFF; + padding: 20px; + width: 100%; +} +#artist_table th#select { + text-align: left; +} +#artist_table th#select input { + vertical-align: middle; +} +#artist_table #artistImg { + background: url("../images/loader_black.gif") no-repeat scroll center center #ffffff; + border: 3px solid #FFFFFF; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 50px; + overflow: hidden; + text-indent: -3000px; + width: 50px; +} +#artist_table th#name { + min-width: 200px; + text-align: left; +} +#artist_table th#album { + min-width: 300px; + text-align: left; +} +#artist_table th#status, +#artist_table th#albumart { + min-width: 50px; + text-align: left; +} +#artist_table th#have { + text-align: center; +} +#artist_table td#name { + min-width: 200px; + text-align: left; + vertical-align: middle; +} +#artist_table td#status { + min-width: 50px; + text-align: left; + vertical-align: middle; +} +#artist_table td#album { + min-width: 300px; + text-align: left; + vertical-align: middle; +} +#markalbum { + position: relative; + top: 25px; + display: inline-block; +} +#albumheader { + margin-top: 50px; + min-height: 200px; +} +#albumheader #albumImg { + background: #ffffff url("../images/loader_black.gif") center no-repeat; + border: 5px solid #FFF; + -moz-box-shadow: 1px 1px 2px 0 #555555; + -webkit-box-shadow: 1px 1px 2px 0 #555555; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 200px; + margin-bottom: 30px; + margin-right: 25px; + overflow: hidden; + text-indent: -3000px; + width: 200px; +} +#albumheader p { + font-size: 16px; + line-height: 24px; + margin-bottom: 10px; +} +#albumheader h1 a { + display: inline-block; + font-size: 32px; + line-height: 35px; + margin-bottom: 3px; + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; +} +#albumheader h2 a { + display: inline-block; + font-style: italic; + font-weight: 400; + margin-bottom: 5px; + font-family: "Trebuchet MS", Helvetica, Arial, sans-serif; +} +#albumheader .albuminfo { + margin-left: 210px; +} +#albumheader .albuminfo li { + border-right: 1px dotted #ccc; + float: left; + font-size: 16px; + font-weight: bold; + list-style: none; + margin-right: 10px; + padding-right: 10px; +} +#albumheader .albuminfo li:last-child { + border: none; +} +#album_table { + background-color: #FFF; +} +#album_table th#select { + min-width: 10px; + text-align: left; + vertical-align: middle; +} +#album_table th#select input { + vertical-align: middle; +} +#album_table th#reldate { + min-width: 70px; + text-align: center; + width: 175px; +} +#album_table th#status, +#album_table th#albumart { + min-width: 50px; + text-align: left; +} +#album_table th#status { + min-width: 80px; + text-align: center; + width: 175px; +} +#album_table th#wantlossless { + min-width: 80px; + text-align: center; + width: 80px; +} +#album_table td#albumart img { + background: #FFF; + border: 1px solid #ccc; + padding: 3px; +} +#album_table td#status a#wantlossless { + white-space: nowrap; +} +#manageheader { + margin-top: 45px; + margin-bottom: 0; +} +#track_wrapper { + font-size: 16px; + padding-top: 20px; + width: 100%; +} +#track_table th#number { + min-width: 10px; + text-align: right; +} +#track_table th#name { + min-width: 350px; + text-align: center; +} +#track_table th#location { + text-align: center; + width: 250px; +} +#track_table td { + border-bottom: 1px solid #FFFFFF; +} +#track_table td#number { + text-align: right; + vertical-align: middle; +} +#track_table td#name { + font-size: 15px; + text-align: left; + vertical-align: middle; +} +#track_table td#location { + font-size: 11px; + line-height: normal; + text-align: center; + vertical-align: middle; +} +#history_table { + background-color: #FFF; + font-size: 13px; + width: 100%; +} +#history_table td#dateadded { + font-size: 14px; + min-width: 150px; + text-align: center; + vertical-align: middle; +} +#history_table td#filename { + font-size: 15px; + min-width: 100px; + text-align: center; + vertical-align: middle; +} +#history_table td#size { + font-size: 14px; + min-width: 75px; + text-align: center; + vertical-align: middle; +} +#log_table { + background-color: #FFF; +} +#log_table th#timestamp { + min-width: 150px; + text-align: left; +} +#log_table th#level { + min-width: 60px; + text-align: left; +} +#log_table th#message { + min-width: 500px; + text-align: left; +} +#log_table td { + font-size: 12px; + padding: 2px 10px; +} +#searchresults_table th#albumname { + min-width: 225px; + text-align: left; +} +#searchresults_table th#artistname { + min-width: 325px; + text-align: center; +} +#searchresults_table #artistImg { + background: url("../images/loader_black.gif") no-repeat scroll center center #ffffff; + border: 3px solid #FFFFFF; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 50px; + overflow: hidden; + text-indent: -3000px; + width: 50px; +} +#searchresults_table td#albumname { + min-width: 200px; + text-align: left; + vertical-align: middle; +} +#searchresults_table td#artistname { + min-width: 300px; + text-align: left; + vertical-align: middle; +} +#searchresults_table td#score .bar { + width: 100px; + margin: 0 auto; + border: 1px solid #cccccc; + padding: 1px; + background-color: #FFF; +} +#searchresults_table td#score .bar .score { + height: 14px; + color: #343434; + color: #FFF; + font-size: 11px; + vertical-align: middle; + line-height: normal; + background-image: -moz-linear-gradient(#a3e532, #90cc2a) !important; + background-image: linear-gradient(#a3e532, #90cc2a) !important; + background-image: -webkit-linear-gradient(#a3e532, #90cc2a) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; +} +.progress-container { + background: #FFF; + border: 1px solid #ccc; + float: left; + height: 14px; + margin: 2px 5px 2px 0; + padding: 1px; + width: 100px; +} +.progress-container > div { + background-image: -moz-linear-gradient(#a3e532, #90cc2a) !important; + background-image: linear-gradient(#a3e532, #90cc2a) !important; + background-image: -webkit-linear-gradient(#a3e532, #90cc2a) !important; + filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + -ms-filter: progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa, endColorstr=#eaeaea) !important; + height: 14px; +} +.havetracks { + font-size: 11px; + line-height: normal; + margin-left: 36px; + padding-bottom: 3px; + vertical-align: middle; +} +#version { + color: #999; + font-size: 10px; + position: relative; + z-index: 999; + margin: 20px auto; + text-align: center; + width: 390px; +} +#donate { + margin: 20px auto; + text-align: center; +} +#toTop { + background: url("../images/toTop.gif") no-repeat scroll 10px center #f7f7f7; + border-radius: 5px 0 0 0; + bottom: 0; + display: none; + padding: 10px 10px 10px 40px; + position: fixed; + right: 0; +} +#shutdown { + text-align: center; + vertical-align: middle; +} +#shutdown h1 img { + position: relative; + top: 7px; +} +.cloudtag { + font-size: 16px; + padding-top: 30px; +} +.cloudtag #cloud { + line-height: 1.5em; + margin: 0; + padding: 2px; + text-align: center; +} +.cloudtag #cloud a { + padding: 0; +} +.cloudtag #cloud a.tag1 { + font-size: 0.7em; + font-weight: 100; +} +.cloudtag #cloud a.tag2 { + font-size: 0.8em; + font-weight: 200; +} +.cloudtag #cloud a.tag3 { + font-size: 0.9em; + font-weight: 300; +} +.cloudtag #cloud a.tag4 { + font-size: 1em; + font-weight: 400; +} +.cloudtag #cloud a.tag5 { + font-size: 1.2em; + font-weight: 500; +} +.cloudtag #cloud a.tag6 { + font-size: 1.4em; + font-weight: 600; +} +.cloudtag #cloud a.tag7 { + font-size: 1.6em; + font-weight: bold; +} +.cloudtag #cloud a.tag8 { + font-size: 1.8em; + font-weight: 800; +} +.cloudtag #cloud a.tag9 { + font-size: 2.2em; + font-weight: 900; +} +.cloudtag #cloud a.tag10 { + font-size: 2.5em; + font-weight: 900; +} +.cloudtag #cloud li { + display: inline; +} +.floatright { + float: right; +} +.floatleft { + float: left; +} +.ir { + background-repeat: no-repeat; + direction: ltr; + display: block; + overflow: hidden; + text-align: left; + text-indent: -999em; +} +.hidden { + display: none; + visibility: hidden; +} +.visuallyhidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} +.visuallyhidden.focusable:active, +.visuallyhidden.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} +.invisible { + visibility: hidden; +} +.clearfix:before, +.clearfix:after { + content: "\0020"; + display: block; + height: 0; + overflow: hidden; +} +.clearfix { + zoom: 1px; +} +.clearfix:after { + clear: both; +} +#album_table th#albumname, +#upcoming_table th#artistname, +#wanted_table th#artistname { + min-width: 150px; + text-align: center; +} +#album_table th#type, +#track_table th#duration { + min-width: 100px; + text-align: center; + width: 175px; +} +#album_table th#bitrate, +#album_table th#albumformat { + min-width: 60px; + text-align: center; +} +#album_table td#select, +#album_table td#albumart { + text-align: left; + vertical-align: middle; +} +#album_table td#albumname, +#album_table td#reldate, +#album_table td#type, +#track_table td#duration, +#upcoming_table td#select, +#upcoming_table td#status, +#wanted_table td#select, +#wanted_table td#status { + text-align: center; + vertical-align: middle; +} +#album_table td#status, +#album_table td#bitrate, +#album_table td#albumformat, +#album_table td#wantlossless { + font-size: 13px; + text-align: center; + vertical-align: middle; +} +div#albumheader .albuminfo li span, +div#artistheader h3 span { + font-weight: 400; +} +#track_table th#bitrate, +#track_table th#format, +#upcoming_table th#type, +#wanted_table th#type, +#searchresults_table th#score { + min-width: 75px; + text-align: center; +} +#track_table td#bitrate, +#track_table td#format { + font-size: 12px; + text-align: center; + vertical-align: middle; +} +#history_table td#status, +#history_table td#action { + font-size: 14px; + text-align: center; + vertical-align: middle; +} +#upcoming_table th#albumart, +#wanted_table th#albumart { + min-width: 50px; + text-align: center; +} +#upcoming_table th#albumname, +#wanted_table th#albumname { + min-width: 200px; + text-align: center; +} +#upcoming_table th#reldate, +#wanted_table th#reldate { + min-width: 100px; + text-align: center; +} +#upcoming_table td#albumart, +#wanted_table td#albumart { + min-width: 50px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#albumname, +#wanted_table td#albumname { + min-width: 200px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#artistname, +#wanted_table td#artistname { + min-width: 150px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#reldate, +#wanted_table td#reldate { + min-width: 100px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#type, +#wanted_table td#type, +#searchresults_table td#score { + min-width: 75px; + text-align: center; + vertical-align: middle; +} +table tr td#status a { + color: #4183c4; +} +.ie7 input[type="checkbox"] { + vertical-align: baseline; +} +.ie7 img { + -ms-interpolation-mode: bicubic; +} +.ie7 legend { + margin-left: -7px; +} diff --git a/data/interfaces/lossless/css/style.less b/data/interfaces/lossless/css/style.less new file mode 100644 index 00000000..031a9f23 --- /dev/null +++ b/data/interfaces/lossless/css/style.less @@ -0,0 +1,1116 @@ +// Config +@import "config.less"; + +html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video { + border: 0; + font: inherit; + font-size: 100%; + margin: 0; + padding: 0; + vertical-align: baseline; +} + +article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;} + +html { + color: @text-color; + font-size: @base-font-size; + line-height: 1.5; +} +body { + background: #fff; + color: @text-color; + font-family: @base-font-face; + margin: 0; + overflow-y: scroll; + padding: 0; +} + +// Links +a { + color: @link-color; + text-decoration: none; + outline: none; + &:hover { + color: #8B8B8B; + } + &.blue { + color: blue; + } + .ui-icon { + display:inline-block; + position: relative; + top: 2px; + + } +} +.links { + a { + color: @swatch-grey; + clear: both; + display: inline-block; + float: left; + &:hover { color: @link-color;} + .ui-icon { + float: left; + margin-right: 5px; + margin-top: 3px; + } + } +} + +// Markup +h1 { font-size: 24px;} +h2 { font-size: 20px;} +h3 { font-size: 16px;} +p { + &.center { + text-align: center; + } +} +hr { + border: 0; + border-top: 1px solid @border-color; + display: block; + height: 1px; + margin: 1em 0; + padding: 0; +} +small { + font-size: 85%; +} +img { + &.albumArt { + float: left; + min-height: 100%; + min-width: 100%; + position: relative; + } +} +.title { + margin-bottom:20px; + margin-top:10px; + h1 { + img { + float: left; + margin-right: 5px; + } + } +} +// Tables + +table { + border-collapse: collapse; + border-spacing: 0; + th { + .gradient(#FAFAFA, #EAEAEA); + text-shadow:1px 1px 0 #FFFFFF ; + input[type="checkbox"]{ vertical-align: middle;} + } + td { + vertical-align: top; + a { color: @swatch-grey;} + } +} + + +// Forms +select, input, textarea, button { font: 99%;} +textarea {overflow: auto;} +input { .rounded(3px);} +input:invalid, textarea:invalid { + .shadow(0 0 5px #ff0000); + .rounded(1px); +} +.no-boxshadow input:invalid,.no-boxshadow textarea:invalid { background-color: #f0dddd;} +input[type="checkbox"] { vertical-align: bottom; } +label, input[type="button"],input[type="submit"],input[type="image"], button { cursor: pointer;} +button,input, select, textarea { margin: 0;} +button { + overflow: visible; + width: auto; +} +input,select,form .checkbox input,.configtable td#middle, #artist_table td#have,#album_table td#have { vertical-align: middle; } + +input[type="radio"]{ vertical-align: text-bottom; } +::-moz-selection, ::selection { + background: grey; + color: #fff; + text-shadow: none; +} +input[type=submit], input[type=button] { + .rounded(5px); + background: #222222 url("../images/button.png") repeat-x; + border: 0; + border-bottom: 1px solid rgba(0, 0, 0, 0.25); + color: #fff; + cursor: pointer; + display: inline-block; + margin-right: 3px; + padding: 4px 10px; + position: relative; + text-decoration: none; + text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.25); +} + +form { + legend, h2 { + font-size: 16px; + font-weight: bold; + margin-bottom: 10px; + } + table { width: 100%; } + fieldset { + margin-bottom: 20px; + small { + &.heading { + color: #666; + display: block; + font-style: italic; + margin-bottom: 10px; + margin-top: -15px; + } + } + } + .row { + font-family: Helvetica, Arial; + margin-bottom: 10px; + label { + display: block; + float: left; + font-size: 12px; + line-height: normal; + padding-top: 7px; + width: 175px; + } + input { margin-right: 5px; } + input[type=text], input[type=password] { + border: 1px solid #DDD; + border-top: 1px solid #CDCDCD; + .shadow(0 1px 0 #f1f1f1); + .shadow(inset 0 1px 1px #e0e0e0); + color: @text-color; + font-size: 14px; + height: auto; + line-height: normal; + max-width: 230px; + margin-right: 5px; + padding: 3px 5px; + } + small { + color: #999; + display: block; + font-size: 9px; + line-height: 12px; + margin-left: 175px; + margin-top: 3px; + } + } + .left { + label { + float: none; + line-height: normal; + margin-bottom: 10px; + padding-top: 1px; + width: auto; + } + input { + float: left; + margin-bottom: 10px; + } + } + .radio { + label { + float: none; + line-height: normal; + margin-bottom: 10px; + padding-top: 1px; + width: auto; + } + input { + float: left; + margin-bottom: 10px; + } + small { + display: inline !important; + line-height: normal !important; + margin: 0 !important; + width: auto; + } + } + .checkbox { + small { + display: inline !important; + line-height: normal !important; + margin: 0 !important; + width: auto; + } + } +} + +// Lists +ul, ol { margin-left: 2em;} +ol { list-style-type: decimal;} + +// Navigation +nav ul, nav li { + list-style: none; + list-style-image: none; + margin: 0; +} +ul#nav { + float: right; + margin: 0; + padding: 0 0 0 10px; + border-left: 1px solid #FAFAFA; + .shadow(-1px 0 0 #e0e0e0); + height: 58px; + li { + display: block; + float: left; + font-size: 18px; + font-weight: bold; + margin: 8px 0 0 0; + text-align: center; + a { + color: @text-color; + display: block; + padding: 7px 15px; + text-shadow: 1px 1px 0px #FFF; + text-transform: capitalize; + border: 1px solid transparent; + font-family: @alt-font-face; + &:hover { + .gradient(#F1F1F1, #E0E0E0); + border: 1px solid #DDDDDD; + .rounded(3px); + .shadow(0 1px 0 #FAFAFA); + .shadow(0 1px 0 #FAFAFA inset); + -webkit-transition:color .2s ease-in; + -moz-transition:color .2s ease-in; + -o-transition:color .2s ease-in; + transition:color .2s ease-in; + } + &.config { + height: 28px; + width: 10px; + img { + position: relative; + top: -7px; + left: -7px; + } + } + &.log { + font-size: 13px; + padding: 10px 15px 11px; + } + } + } +} +// Layout +header { + .gradient(#fafafa, #eaeaea); + border-bottom: 1px solid #CACACA; + .shadow(0 0 10px rgba(0, 0, 0, 0.1)); + height: 58px; + position: fixed; + width: 100%; + z-index: 999; + .wrapper { + margin: 0 auto; + overflow: hidden; + position: relative; + width: 960px; + } + #logo { + float: left; + margin-right: 20px; + position: relative; + top: -3px; + margin-left: 10px; + } +} +footer { + display: table; + margin: 20px auto; + width: 960px; +} +#main { + line-height: 24px; + margin: 0 auto; + padding: 75px 0 0; + width: 960px; +} + +// Messages +.message { + .rounded(10px); + background-color: @msg-bg; + display: inline-block; + padding: 5px 10px; + margin-top: 10px; + .ui-icon { + float: left; + margin-right: 5px; + position: relative; + top: 4px; + } +} +#ajaxMsg { + border: 1px solid @border-color; + .gradient(#FFFFFF, #EEEEEE); + .rounded(7px); + display: none; + font-size: 14px; + right: 10px; + .shadow(0px 0px 2px #aaa); + padding: 7px 10px; + position: fixed; + text-align: center; + bottom: 10px; + min-height: 22px; + width: 250px; + z-index: 9999; + .opacity(80); + .msg { + font-family: @alt-font-face; + line-height: normal; + padding-left: 20px; + } + .loader { + position: relative; + top: 2px; + } + &.success { + .gradient(@msg-bg-success,#C2EDC6); + padding: 15px 10px; + text-align: left; + } + &.error { + .gradient(@msg-bg-error,#EDC4C4); + padding:15px 10px; + text-align: left; + } + .ui-icon { + display: inline-block; + margin-left: -20px; + top: 2px; + position: relative; + margin-right: 3px; + } +} + +#updatebar { + .roundedBottom(10px); + background-color: @msg-bg; + border: 1px solid @border-color; + font-size: 11px; + left: 35%; + margin: 0 auto; + padding: 1px 10px; + position: absolute; + text-align: center; + text-transform: lowercase; + top: 0; +} + +// Subheader +#subhead { + .back { + float: left; + margin-top: -25px; + } + #subhead_container { + float: right; + height: 30px; + list-style-type: none; + width: 100%; + z-index: 998; + #subhead_menu { + float: right; + margin-top: 5px; + position: relative; + z-index: 99; + a { + .gradient(#F4F4F4, #e7e7e7); + font-family: @base-font-face; + font-size: 12px; + font-weight: normal; + &:hover { + .gradient(#599BDC, #3072B3); + color: #FFF; + border-color: #518CC6 #518CC6 #2A65A0; + } + } + } + } +} + +// Search +div#searchbar { + border-left: 1px solid #FAFAFA; + .shadow(-1px 0 0 #e0e0e0); + padding: 15px 0 15px 20px; + position: absolute; + left: 90px; + top: 2px; + input[type=text] { + border: 1px solid #DDD; + border-top: 1px solid #CDCDCD; + .shadow(0 1px 0 #f1f1f1); + .shadow(inset 0 1px 1px #e0e0e0); + color: #999; + float: left; + font-size: 14px; + height: auto; + line-height: normal; + margin-right: 5px; + padding: 4px 5px 4px 25px; + width: 150px; + } + .mini-icon { + height: 20px; + width: 20px; + background: url("../images/icon_search.gif") left top no-repeat; + position: absolute; + display: block; + margin-left: 6px; + margin-top: 6px; + } +} + +// Config Page +.configtable { + legend { + font-size: 16px; + font-weight: bold; + margin-bottom: 10px; + text-shadow: 1px 1px 0 #FFFFFF; + } + tr { + td { + &:last-child { + border-left: 1px dotted #ddd; + padding-left: 20px; + } + } + } + td { + padding-right: 15px; + width: 50%; + } +} + +// TABLES + +// wrappers +.table_wrapper { + _height: 302px; + background-color: #FFF; + clear: both; + margin: 30px auto 0; + min-height: 100px; + position: relative; + width: 100%; + zoom: 1px; +} +.manage_wrapper { + _height: 302px; + clear: both; + margin: 20px auto 0; + min-height: 150px; + padding: 25px; + width: 88%; + zoom: 1px; +} +// headers +#paddingheader { + position: relative; + top: -25px; + h1 { + line-height: 33px; + width: 450px; + img { + float:left; + margin-right: 5px; + } + } +} +div#nopaddingheader { + font-size: 24px; + font-weight: bold; + text-align: center; +} + +// Artist +div#artistheader { + margin-top: 50px; + min-height: 200px; + #artistImg { + background: #ffffff url("../images/loader_black.gif") center no-repeat; + border: 5px solid #FFF; + .shadow(1px 1px 2px 0 #555); + float: left; + height: 200px; + margin-bottom: 30px; + margin-right: 25px; + overflow: hidden; + text-indent: -3000px; + width: 200px; + } + #artistBio { + font-size: 16px; + line-height: 24px; + margin-top: 10px; + } + h1 { + a { + font-size: 32px; + margin-bottom: 5px; + font-family: @alt-font-face; + } + } + h2 { + a { + font-style: italic; + font-weight: bold; + font-family: @alt-font-face; + } + } +} + +#artist_table { + background-color: #FFF; + padding: 20px; + width: 100%; + th#select { + text-align: left; + input { vertical-align: middle;} + } + #artistImg { + background: url("../images/loader_black.gif") no-repeat scroll center center #FFFFFF; + border: 3px solid #FFFFFF; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 50px; + overflow: hidden; + text-indent: -3000px; + width: 50px; + } + th#name { + min-width: 200px; + text-align: left; + } + th#album { + min-width: 300px; + text-align: left; + } + th#status, th#albumart { + min-width: 50px; + text-align: left; + } + th#have { + text-align: center; + } + td#name { + min-width: 200px; + text-align: left; + vertical-align: middle; + } + td#status { + min-width: 50px; + text-align: left; + vertical-align: middle; + } + td#album { + min-width: 300px; + text-align: left; + vertical-align: middle; + } +} + +#markalbum { + position: relative; + top: 25px; + display: inline-block; +} + +// Album +#albumheader { + margin-top: 50px; + min-height: 200px; + #albumImg { + background: #ffffff url("../images/loader_black.gif") center no-repeat; + border: 5px solid #FFF; + .shadow(1px 1px 2px 0 #555); + float: left; + height: 200px; + margin-bottom: 30px; + margin-right: 25px; + overflow: hidden; + text-indent: -3000px; + width: 200px; + } + p { + font-size: 16px; + line-height: 24px; + margin-bottom: 10px; + } + h1 { + a { + display: inline-block; + font-size: 32px; + line-height: 35px; + margin-bottom: 3px; + font-family: @alt-font-face; + } + } + h2 { + a { + display: inline-block; + font-style: italic; + font-weight: 400; + margin-bottom: 5px; + font-family: @alt-font-face; + } + } + .albuminfo { + margin-left: 210px; + li { + border-right: 1px dotted #ccc; + float: left; + font-size: 16px; + font-weight: bold; + list-style: none; + margin-right: 10px; + padding-right: 10px; + &:last-child { border: none; } + } + } +} + +#album_table { + background-color: #FFF; + th#select { + min-width: 10px; + text-align: left; + vertical-align: middle; + input { vertical-align: middle;} + } + th#reldate { + min-width: 70px; + text-align: center; + width: 175px; + } + th#status, th#albumart { + min-width: 50px; + text-align: left; + } + th#status { + min-width: 80px; + text-align: center; + width: 175px; + } + th#wantlossless { + min-width: 80px; + text-align: center; + width: 80px; + } + td#albumart { + img { + background: #FFF; + border: 1px solid #ccc; + padding: 3px; + } + } + td#status { + a#wantlossless { + white-space: nowrap; + } + } +} + +// Manage +#manageheader { + margin-top: 45px; + margin-bottom: 0; +} + +// Tracks +#track_wrapper { + font-size: 16px; + padding-top: 20px; + width: 100%; +} + +#track_table { + th#number { + min-width: 10px; + text-align: right; + } + th#name { + min-width: 350px; + text-align: center; + } + th#location { + text-align: center; + width: 250px; + } + td { border-bottom: 1px solid #FFFFFF;} + td#number { + text-align: right; + vertical-align: middle; + } + td#name { + font-size: 15px; + text-align: left; + vertical-align: middle; + } + td#location { + font-size: 11px; + line-height: normal; + text-align: center; + vertical-align: middle; + } +} + +// History +#history_table { + background-color: #FFF; + font-size: 13px; + width: 100%; + td#dateadded { + font-size: 14px; + min-width: 150px; + text-align: center; + vertical-align: middle; + } + td#filename { + font-size: 15px; + min-width: 100px; + text-align: center; + vertical-align: middle; + } + td#size { + font-size: 14px; + min-width: 75px; + text-align: center; + vertical-align: middle; + } +} + +// Logs +#log_table { + background-color: #FFF; + th#timestamp { + min-width: 150px; + text-align: left; + } + th#level { + min-width: 60px; + text-align: left; + } + th#message { + min-width: 500px; + text-align: left; + } + td { + font-size: 12px; + padding: 2px 10px; + } +} +// Searchresults +#searchresults_table { + th#albumname { + min-width: 225px; + text-align: left; + } + th#artistname { + min-width: 325px; + text-align: center; + } + #artistImg { + background: url("../images/loader_black.gif") no-repeat scroll center center #FFFFFF; + border: 3px solid #FFFFFF; + box-shadow: 1px 1px 2px 0 #555555; + float: left; + height: 50px; + overflow: hidden; + text-indent: -3000px; + width: 50px; + } + td#albumname { + min-width: 200px; + text-align: left; + vertical-align: middle; + } + td#artistname { + min-width: 300px; + text-align: left; + vertical-align: middle; + } + td#score { + .bar { + width: 100px; + margin: 0 auto; + border: 1px solid @border-color; + padding: 1px; + background-color: #FFF; + .score { + height: 14px; + color: @text-color; + color: #FFF; + font-size: 11px; + vertical-align: middle; + line-height: normal; + .gradient(#A3E532,#90CC2A); + } + } + } +} +.progress-container { + background: #FFF; + border: 1px solid #ccc; + float: left; + height: 14px; + margin: 2px 5px 2px 0; + padding: 1px; + width: 100px; + & > div { + .gradient(#A3E532,#90CC2A); + height: 14px; + } +} +.havetracks { + font-size: 11px; + line-height: normal; + margin-left: 36px; + padding-bottom: 3px; + vertical-align: middle; +} + +// Globar elements +#version { + color: #999; + font-size: 10px; + position: relative; + z-index: 999; + margin: 20px auto; + text-align: center; + width: 390px; +} +#donate { + margin: 20px auto; + text-align: center; +} +#toTop { + background: url("../images/toTop.gif") no-repeat scroll 10px center #f7f7f7; + border-radius: 5px 0 0 0; + bottom: 0; + display: none; + padding: 10px 10px 10px 40px; + position: fixed; + right: 0; +} +#shutdown { + text-align: center; + vertical-align: middle; + h1 { + img { + position: relative; + top: 7px; + } + } +} +.cloudtag { + font-size: 16px; + padding-top: 30px; + #cloud { + line-height: 1.5em; + margin: 0; + padding: 2px; + text-align: center; + a { + padding: 0; + &.tag1 { + font-size: 0.7em; + font-weight: 100; + } + &.tag2 { + font-size: 0.8em; + font-weight: 200; + } + &.tag3 { + font-size: 0.9em; + font-weight: 300; + } + &.tag4 { + font-size: 1em; + font-weight: 400; + } + &.tag5 { + font-size: 1.2em; + font-weight: 500; + } + &.tag6 { + font-size: 1.4em; + font-weight: 600; + } + &.tag7 { + font-size: 1.6em; + font-weight: bold; + } + &.tag8 { + font-size: 1.8em; + font-weight: 800; + } + &.tag9 { + font-size: 2.2em; + font-weight: 900; + } + &.tag10 { + font-size: 2.5em; + font-weight: 900; + } + } + li { display: inline; } + } +} + +// Other elements +.floatright { float: right; } +.floatleft { float: left; } +.ir { + background-repeat: no-repeat; + direction: ltr; + display: block; + overflow: hidden; + text-align: left; + text-indent: -999em; +} +.hidden { + display: none; + visibility: hidden; +} +.visuallyhidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} +.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; +} +.invisible { visibility: hidden; } + +.clearfix:before, .clearfix:after { + content: "\0020"; + display: block; + height: 0; + overflow: hidden; +} +.clearfix { + zoom: 1px; + &:after { clear: both; } +} + +// Table width +#album_table th#albumname, #upcoming_table th#artistname, #wanted_table th#artistname { + min-width: 150px; + text-align: center; +} +#album_table th#type, #track_table th#duration { + min-width: 100px; + text-align: center; + width: 175px; +} +#album_table th#bitrate, #album_table th#albumformat { + min-width: 60px; + text-align: center; +} +#album_table td#select, #album_table td#albumart { + text-align: left; + vertical-align: middle; +} +#album_table td#albumname,#album_table td#reldate, #album_table td#type, #track_table td#duration, #upcoming_table td#select, #upcoming_table td#status, #wanted_table td#select, #wanted_table td#status { + text-align: center; + vertical-align: middle; +} +#album_table td#status, #album_table td#bitrate, #album_table td#albumformat, #album_table td#wantlossless { + font-size: 13px; + text-align: center; + vertical-align: middle; +} +div#albumheader .albuminfo li span, div#artistheader h3 span { + font-weight: 400; +} +#track_table th#bitrate, #track_table th#format, #upcoming_table th#type, #wanted_table th#type, #searchresults_table th#score { + min-width: 75px; + text-align: center; +} +#track_table td#bitrate, #track_table td#format { + font-size: 12px; + text-align: center; + vertical-align: middle; +} +#history_table td#status, #history_table td#action { + font-size: 14px; + text-align: center; + vertical-align: middle; +} +#upcoming_table th#albumart, #wanted_table th#albumart { + min-width: 50px; + text-align: center; +} +#upcoming_table th#albumname, #wanted_table th#albumname { + min-width: 200px; + text-align: center; +} +#upcoming_table th#reldate, #wanted_table th#reldate { + min-width: 100px; + text-align: center; +} +#upcoming_table td#albumart, #wanted_table td#albumart { + min-width: 50px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#albumname, #wanted_table td#albumname { + min-width: 200px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#artistname, #wanted_table td#artistname { + min-width: 150px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#reldate, #wanted_table td#reldate { + min-width: 100px; + text-align: center; + vertical-align: middle; +} +#upcoming_table td#type, #wanted_table td#type, #searchresults_table td#score { + min-width: 75px; + text-align: center; + vertical-align: middle; +} +table tr td#status a { + color: @link-color; +} + +// IE +.ie7 { + input[type="checkbox"] { vertical-align: baseline;} + img {-ms-interpolation-mode: bicubic;} + legend { margin-left: -7px;} +} diff --git a/data/interfaces/lossless/css/style_bu.css b/data/interfaces/lossless/css/style_bu.css new file mode 100644 index 00000000..e72d2e11 --- /dev/null +++ b/data/interfaces/lossless/css/style_bu.css @@ -0,0 +1 @@ +html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}html{color:#343434;font-size:12px;line-height:1.5}body{background:#fff;color:#343434;font-family:"Helvetica Neue",Helvetica,Arial,Geneva,sans-serif;margin:0;overflow-y:scroll;padding:0}a{color:#4183c4;text-decoration:none;outline:0}a:hover{color:#8b8b8b}a.blue{color:blue}a .ui-icon{display:inline-block;position:relative;top:2px}.links a{color:#666;clear:both;display:inline-block;float:left}.links a:hover{color:#4183c4}.links a .ui-icon{float:left;margin-right:5px;margin-top:3px}h1{font-size:24px}h2{font-size:20px}h3{font-size:16px}p.center{text-align:center}hr{border:0;border-top:1px solid #ccc;display:block;height:1px;margin:1em 0;padding:0}small{font-size:85%}img.albumArt{float:left;min-height:100%;min-width:100%;position:relative}.title{margin-bottom:20px;margin-top:10px}.title h1 img{float:left;margin-right:5px}table{border-collapse:collapse;border-spacing:0}table th{background-image:-moz-linear-gradient(#fafafa,#eaeaea)!important;background-image:linear-gradient(#fafafa,#eaeaea)!important;background-image:-webkit-linear-gradient(#fafafa,#eaeaea)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;text-shadow:1px 1px 0 #fff}table th input[type="checkbox"]{vertical-align:middle}table td{vertical-align:top}table td a{color:#666}select,input,textarea,button{font:99%}textarea{overflow:auto}input{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}input:invalid,textarea:invalid{-moz-box-shadow:0 0 5px #f00;-webkit-box-shadow:0 0 5px #f00;box-shadow:0 0 5px #f00;-moz-border-radius:1px;-webkit-border-radius:1px;border-radius:1px}.no-boxshadow input:invalid,.no-boxshadow textarea:invalid{background-color:#f0dddd}input[type="checkbox"]{vertical-align:bottom}label,input[type="button"],input[type="submit"],input[type="image"],button{cursor:pointer}button,input,select,textarea{margin:0}button{overflow:visible;width:auto}input,select,form .checkbox input,.configtable td#middle,#artist_table td#have,#album_table td#have{vertical-align:middle}input[type="radio"]{vertical-align:text-bottom}::-moz-selection,::selection{background:grey;color:#fff;text-shadow:none}input[type=submit],input[type=button]{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;background:#222 url("../images/button.png") repeat-x;border:0;border-bottom:1px solid rgba(0,0,0,0.25);color:#fff;cursor:pointer;display:inline-block;margin-right:3px;padding:4px 10px;position:relative;text-decoration:none;text-shadow:0 -1px 1px rgba(0,0,0,0.25)}form legend,form h2{font-size:16px;font-weight:bold;margin-bottom:10px}form table{width:100%}form fieldset{margin-bottom:20px}form fieldset small.heading{color:#666;display:block;font-style:italic;margin-bottom:10px;margin-top:-15px}form .row{font-family:Helvetica,Arial;margin-bottom:10px}form .row label{display:block;float:left;font-size:12px;line-height:normal;padding-top:7px;width:175px}form .row input{margin-right:5px}form .row input[type=text],form .row input[type=password]{border:1px solid #DDD;border-top:1px solid #cdcdcd;-moz-box-shadow:0 1px 0 #f1f1f1;-webkit-box-shadow:0 1px 0 #f1f1f1;box-shadow:0 1px 0 #f1f1f1;-moz-box-shadow:inset 0 1px 1px #e0e0e0;-webkit-box-shadow:inset 0 1px 1px #e0e0e0;box-shadow:inset 0 1px 1px #e0e0e0;color:#343434;font-size:14px;height:auto;line-height:normal;max-width:230px;margin-right:5px;padding:3px 5px}form .row small{color:#999;display:block;font-size:9px;line-height:12px;margin-left:175px;margin-top:3px}form .left label{float:none;line-height:normal;margin-bottom:10px;padding-top:1px;width:auto}form .left input{float:left;margin-bottom:10px}form .radio label{float:none;line-height:normal;margin-bottom:10px;padding-top:1px;width:auto}form .radio input{float:left;margin-bottom:10px}form .radio small{display:inline!important;line-height:normal!important;margin:0!important;width:auto}form .checkbox small{display:inline!important;line-height:normal!important;margin:0!important;width:auto}ul,ol{margin-left:2em}ol{list-style-type:decimal}nav ul,nav li{list-style:none;list-style-image:none;margin:0}ul#nav{float:right;margin:0;padding:0 0 0 10px;border-left:1px solid #fafafa;-moz-box-shadow:-1px 0 0 #e0e0e0;-webkit-box-shadow:-1px 0 0 #e0e0e0;box-shadow:-1px 0 0 #e0e0e0;height:58px}ul#nav li{display:block;float:left;font-size:18px;font-weight:bold;margin:8px 0 0 0;text-align:center}ul#nav li a{color:#343434;display:block;padding:7px 15px;text-shadow:1px 1px 0 #FFF;text-transform:capitalize;border:1px solid transparent;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif}ul#nav li a:hover{background-image:-moz-linear-gradient(#f1f1f1,#e0e0e0)!important;background-image:linear-gradient(#f1f1f1,#e0e0e0)!important;background-image:-webkit-linear-gradient(#f1f1f1,#e0e0e0)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;border:1px solid #ddd;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 #fafafa;-webkit-box-shadow:0 1px 0 #fafafa;box-shadow:0 1px 0 #fafafa;-moz-box-shadow:0 1px 0 #fafafa inset;-webkit-box-shadow:0 1px 0 #fafafa inset;box-shadow:0 1px 0 #fafafa inset;-webkit-transition:color .2s ease-in;-moz-transition:color .2s ease-in;-o-transition:color .2s ease-in;transition:color .2s ease-in}ul#nav li a.config{height:28px;width:10px}ul#nav li a.config img{position:relative;top:-7px;left:-7px}ul#nav li a.log{font-size:13px;padding:10px 15px 11px}header{background-image:-moz-linear-gradient(#fafafa,#eaeaea)!important;background-image:linear-gradient(#fafafa,#eaeaea)!important;background-image:-webkit-linear-gradient(#fafafa,#eaeaea)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;border-bottom:1px solid #cacaca;-moz-box-shadow:0 0 10px rgba(0,0,0,0.1);-webkit-box-shadow:0 0 10px rgba(0,0,0,0.1);box-shadow:0 0 10px rgba(0,0,0,0.1);height:58px;position:fixed;width:100%;z-index:999}header .wrapper{margin:0 auto;overflow:hidden;position:relative;width:960px}header #logo{float:left;margin-right:20px;position:relative;top:-3px;margin-left:10px}footer{display:table;margin:20px auto;width:960px}#main{line-height:24px;margin:0 auto;padding:75px 0 0;width:960px}.message{-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;background-color:#fff6a9;display:inline-block;padding:5px 10px;margin-top:10px}.message .ui-icon{float:left;margin-right:5px;position:relative;top:4px}#ajaxMsg{background-color:#fdfff2;border:1px solid #ccc;-moz-border-radius-bottomleft:10px;-moz-border-radius-bottomright:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;border-bottom-right-radius:10px;display:none;font-size:14px;left:50%;margin-left:-125px;min-height:16px;padding:0 10px;position:fixed;text-align:center;top:-1px;width:250px;z-index:9999}#ajaxMsg .msg{font-family:"Trebuchet MS",Helvetica,Arial,sans-serif;line-height:normal;padding-left:20px}#ajaxMsg.success{background-color:#d3ffd7;padding:10px 10px 10px}#ajaxMsg.error{background-color:#ffd3d3;padding:10px 10px 10px}#ajaxMsg .ui-icon{display:inline-block;margin-left:-20px;top:2px;position:relative;margin-right:3px}#updatebar{-moz-border-radius-bottomleft:10px;-moz-border-radius-bottomright:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;border-bottom-right-radius:10px;background-color:#fff6a9;border:1px solid #ccc;font-size:11px;left:35%;margin:0 auto;padding:1px 10px;position:absolute;text-align:center;text-transform:lowercase;top:0}#subhead .back{float:left;margin-top:-25px}#subhead #subhead_container{float:right;height:30px;list-style-type:none;width:100%;z-index:998}#subhead #subhead_container #subhead_menu{float:right;margin-top:5px;position:relative;z-index:99}#subhead #subhead_container #subhead_menu a{background-image:-moz-linear-gradient(#f4f4f4,#e7e7e7)!important;background-image:linear-gradient(#f4f4f4,#e7e7e7)!important;background-image:-webkit-linear-gradient(#f4f4f4,#e7e7e7)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;font-family:"Helvetica Neue",Helvetica,Arial,Geneva,sans-serif;font-size:12px;font-weight:normal}#subhead #subhead_container #subhead_menu a:hover{background-image:-moz-linear-gradient(#599bdc,#3072b3)!important;background-image:linear-gradient(#599bdc,#3072b3)!important;background-image:-webkit-linear-gradient(#599bdc,#3072b3)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;color:#FFF;border-color:#518cc6 #518cc6 #2a65a0}div#searchbar{border-left:1px solid #fafafa;-moz-box-shadow:-1px 0 0 #e0e0e0;-webkit-box-shadow:-1px 0 0 #e0e0e0;box-shadow:-1px 0 0 #e0e0e0;padding:15px 0 15px 20px;position:absolute;left:90px;top:2px}div#searchbar input[type=text]{border:1px solid #DDD;border-top:1px solid #cdcdcd;-moz-box-shadow:0 1px 0 #f1f1f1;-webkit-box-shadow:0 1px 0 #f1f1f1;box-shadow:0 1px 0 #f1f1f1;-moz-box-shadow:inset 0 1px 1px #e0e0e0;-webkit-box-shadow:inset 0 1px 1px #e0e0e0;box-shadow:inset 0 1px 1px #e0e0e0;color:#999;float:left;font-size:14px;height:auto;line-height:normal;margin-right:5px;padding:4px 5px 4px 25px;width:150px}div#searchbar .mini-icon{height:20px;width:20px;background:url("../images/icon_search.gif") left top no-repeat;position:absolute;display:block;margin-left:6px;margin-top:6px}.configtable legend{font-size:16px;font-weight:bold;margin-bottom:10px;text-shadow:1px 1px 0 #fff}.configtable tr td:last-child{border-left:1px dotted #ddd;padding-left:20px}.configtable td{padding-right:15px;width:50%}.table_wrapper{_height:302px;background-color:#FFF;clear:both;margin:30px auto 0;min-height:100px;position:relative;width:100%;zoom:1px}.manage_wrapper{_height:302px;clear:both;margin:20px auto 0;min-height:150px;padding:25px;width:88%;zoom:1px}#paddingheader{position:relative;top:-25px}#paddingheader h1{line-height:33px;width:450px}#paddingheader h1 img{float:left;margin-right:5px}div#nopaddingheader{font-size:24px;font-weight:bold;text-align:center}div#artistheader{margin-top:50px;min-height:200px}div#artistheader #artistImg{background:#fff url("../images/loader_black.gif") center no-repeat;border:5px solid #FFF;-moz-box-shadow:1px 1px 2px 0 #555;-webkit-box-shadow:1px 1px 2px 0 #555;box-shadow:1px 1px 2px 0 #555;float:left;height:200px;margin-bottom:30px;margin-right:25px;overflow:hidden;text-indent:-3000px;width:200px}div#artistheader #artistBio{font-size:16px;line-height:24px;margin-top:10px}div#artistheader h1 a{font-size:32px;margin-bottom:5px;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif}div#artistheader h2 a{font-style:italic;font-weight:bold;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif}#artist_table{background-color:#FFF;padding:20px;width:100%}#artist_table th#select{text-align:left}#artist_table th#select input{vertical-align:middle}#artist_table th#name{min-width:200px;text-align:left}#artist_table th#album{min-width:300px;text-align:left}#artist_table th#status,#artist_table th#albumart{min-width:50px;text-align:left}#artist_table th#have{text-align:center}#artist_table td#name{min-width:200px;text-align:left;vertical-align:middle}#artist_table td#status{min-width:50px;text-align:left;vertical-align:middle}#artist_table td#album{min-width:300px;text-align:left;vertical-align:middle}#markalbum{position:relative;top:25px;display:inline-block}#albumheader{margin-top:50px;min-height:200px}#albumheader #albumImg{background:#fff url("../images/loader_black.gif") center no-repeat;border:5px solid #FFF;-moz-box-shadow:1px 1px 2px 0 #555;-webkit-box-shadow:1px 1px 2px 0 #555;box-shadow:1px 1px 2px 0 #555;float:left;height:200px;margin-bottom:30px;margin-right:25px;overflow:hidden;text-indent:-3000px;width:200px}#albumheader p{font-size:16px;line-height:24px;margin-bottom:10px}#albumheader h1 a{display:inline-block;font-size:32px;line-height:35px;margin-bottom:3px;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif}#albumheader h2 a{display:inline-block;font-style:italic;font-weight:400;margin-bottom:5px;font-family:"Trebuchet MS",Helvetica,Arial,sans-serif}#albumheader .albuminfo{margin-left:210px}#albumheader .albuminfo li{border-right:1px dotted #ccc;float:left;font-size:16px;font-weight:bold;list-style:none;margin-right:10px;padding-right:10px}#albumheader .albuminfo li:last-child{border:0}#album_table{background-color:#FFF}#album_table th#select{min-width:10px;text-align:left;vertical-align:middle}#album_table th#select input{vertical-align:middle}#album_table th#reldate{min-width:70px;text-align:center;width:175px}#album_table th#status,#album_table th#albumart{min-width:50px;text-align:left}#album_table th#status{min-width:80px;text-align:center;width:175px}#album_table th#wantlossless{min-width:80px;text-align:center;width:80px}#album_table td#albumart img{background:#FFF;border:1px solid #ccc;padding:3px}#album_table td#status a#wantlossless{white-space:nowrap}#manageheader{margin-top:45px;margin-bottom:0}#track_wrapper{font-size:16px;padding-top:20px;width:100%}#track_table th#number{min-width:10px;text-align:right}#track_table th#name{min-width:350px;text-align:center}#track_table th#location{text-align:center;width:250px}#track_table td{border-bottom:1px solid #fff}#track_table td#number{text-align:right;vertical-align:middle}#track_table td#name{font-size:15px;text-align:left;vertical-align:middle}#track_table td#location{font-size:11px;line-height:normal;text-align:center;vertical-align:middle}#history_table{background-color:#FFF;font-size:13px;width:100%}#history_table td#dateadded{font-size:14px;min-width:150px;text-align:center;vertical-align:middle}#history_table td#filename{font-size:15px;min-width:100px;text-align:center;vertical-align:middle}#history_table td#size{font-size:14px;min-width:75px;text-align:center;vertical-align:middle}#log_table{background-color:#FFF}#log_table th#timestamp{min-width:150px;text-align:left}#log_table th#level{min-width:60px;text-align:left}#log_table th#message{min-width:500px;text-align:left}#log_table td{font-size:12px;padding:2px 10px}#searchresults_table th#albumname{min-width:225px;text-align:left}#searchresults_table th#artistname{min-width:325px;text-align:center}#searchresults_table td#albumname{min-width:200px;text-align:left;vertical-align:middle}#searchresults_table td#artistname{min-width:300px;text-align:left;vertical-align:middle}#searchresults_table td#score .bar{width:100px;margin:0 auto;border:1px solid #ccc;padding:1px;background-color:#FFF}#searchresults_table td#score .bar .score{height:14px;color:#343434;color:#FFF;font-size:11px;vertical-align:middle;line-height:normal;background-image:-moz-linear-gradient(#a3e532,#90cc2a)!important;background-image:linear-gradient(#a3e532,#90cc2a)!important;background-image:-webkit-linear-gradient(#a3e532,#90cc2a)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important}.progress-container{background:#FFF;border:1px solid #ccc;float:left;height:14px;margin:2px 5px 2px 0;padding:1px;width:100px}.progress-container>div{background-image:-moz-linear-gradient(#a3e532,#90cc2a)!important;background-image:linear-gradient(#a3e532,#90cc2a)!important;background-image:-webkit-linear-gradient(#a3e532,#90cc2a)!important;filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;-ms-filter:progid:dximagetransform.microsoft.gradient(startColorstr=#fafafa,endColorstr=#eaeaea)!important;height:14px}.havetracks{font-size:11px;line-height:normal;margin-left:36px;padding-bottom:3px;vertical-align:middle}#version{color:#999;font-size:10px;position:relative;z-index:999;margin:20px auto;text-align:center;width:390px}#donate{margin:20px auto;text-align:center}#toTop{background:url("../images/toTop.gif") no-repeat scroll 10px center #f7f7f7;border-radius:5px 0 0 0;bottom:0;display:none;padding:10px 10px 10px 40px;position:fixed;right:0}#shutdown{text-align:center;vertical-align:middle}#shutdown h1 img{position:relative;top:7px}.cloudtag{font-size:16px;padding-top:30px}.cloudtag #cloud{line-height:1.5em;margin:0;padding:2px;text-align:center}.cloudtag #cloud a{padding:0}.cloudtag #cloud a.tag1{font-size:.7em;font-weight:100}.cloudtag #cloud a.tag2{font-size:.8em;font-weight:200}.cloudtag #cloud a.tag3{font-size:.9em;font-weight:300}.cloudtag #cloud a.tag4{font-size:1em;font-weight:400}.cloudtag #cloud a.tag5{font-size:1.2em;font-weight:500}.cloudtag #cloud a.tag6{font-size:1.4em;font-weight:600}.cloudtag #cloud a.tag7{font-size:1.6em;font-weight:bold}.cloudtag #cloud a.tag8{font-size:1.8em;font-weight:800}.cloudtag #cloud a.tag9{font-size:2.2em;font-weight:900}.cloudtag #cloud a.tag10{font-size:2.5em;font-weight:900}.cloudtag #cloud li{display:inline}.floatright{float:right}.floatleft{float:left}.ir{background-repeat:no-repeat;direction:ltr;display:block;overflow:hidden;text-align:left;text-indent:-999em}.hidden{display:none;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"\0020";display:block;height:0;overflow:hidden}.clearfix{zoom:1px}.clearfix:after{clear:both}#album_table th#albumname,#upcoming_table th#artistname,#wanted_table th#artistname{min-width:150px;text-align:center}#album_table th#type,#track_table th#duration{min-width:100px;text-align:center;width:175px}#album_table th#bitrate,#album_table th#albumformat{min-width:60px;text-align:center}#album_table td#select,#album_table td#albumart{text-align:left;vertical-align:middle}#album_table td#albumname,#album_table td#reldate,#album_table td#type,#track_table td#duration,#upcoming_table td#select,#upcoming_table td#status,#wanted_table td#select,#wanted_table td#status{text-align:center;vertical-align:middle}#album_table td#status,#album_table td#bitrate,#album_table td#albumformat,#album_table td#wantlossless{font-size:13px;text-align:center;vertical-align:middle}div#albumheader .albuminfo li span,div#artistheader h3 span{font-weight:400}#track_table th#bitrate,#track_table th#format,#upcoming_table th#type,#wanted_table th#type,#searchresults_table th#score{min-width:75px;text-align:center}#track_table td#bitrate,#track_table td#format{font-size:12px;text-align:center;vertical-align:middle}#history_table td#status,#history_table td#action{font-size:14px;text-align:center;vertical-align:middle}#upcoming_table th#albumart,#wanted_table th#albumart{min-width:50px;text-align:center}#upcoming_table th#albumname,#wanted_table th#albumname{min-width:200px;text-align:center}#upcoming_table th#reldate,#wanted_table th#reldate{min-width:100px;text-align:center}#upcoming_table td#albumart,#wanted_table td#albumart{min-width:50px;text-align:center;vertical-align:middle}#upcoming_table td#albumname,#wanted_table td#albumname{min-width:200px;text-align:center;vertical-align:middle}#upcoming_table td#artistname,#wanted_table td#artistname{min-width:150px;text-align:center;vertical-align:middle}#upcoming_table td#reldate,#wanted_table td#reldate{min-width:100px;text-align:center;vertical-align:middle}#upcoming_table td#type,#wanted_table td#type,#searchresults_table td#score{min-width:75px;text-align:center;vertical-align:middle}table tr td#status a{color:#4183c4}.ie7 input[type="checkbox"]{vertical-align:baseline}.ie7 img{-ms-interpolation-mode:bicubic}.ie7 legend{margin-left:-7px} \ No newline at end of file diff --git a/data/interfaces/lossless/extras.html b/data/interfaces/lossless/extras.html new file mode 100644 index 00000000..fff485d5 --- /dev/null +++ b/data/interfaces/lossless/extras.html @@ -0,0 +1,15 @@ +<%inherit file="base.html" /> +<%def name="body()"> +
+

extraArtists You Might Like

+
+
+
+ +
+
+ diff --git a/data/interfaces/lossless/history.html b/data/interfaces/lossless/history.html new file mode 100644 index 00000000..7a37f932 --- /dev/null +++ b/data/interfaces/lossless/history.html @@ -0,0 +1,89 @@ +<%inherit file="base.html"/> +<%! + from headphones import helpers +%> + +<%def name="headerIncludes()"> +
+ +
+ + +<%def name="body()"> +
+

HistoryHistory

+
+ + + + + + + + + + + + %for item in history: + <% + if item['Status'] == 'Processed': + grade = 'A' + elif item['Status'] == 'Snatched': + grade = 'C' + elif item['Status'] == 'Unprocessed': + grade = 'X' + else: + grade = 'U' + + fileid = 'unknown' + if item['URL'].find('nzb') != -1: + fileid = 'nzb' + if item['URL'].find('torrent') != -1: + fileid = 'torrent' + %> + + + + + + + + %endfor + +
Date AddedFile NameSizeStatus
${item['DateAdded']}${item['Title']} [${fileid}][album page]${helpers.bytes_to_mb(item['Size'])}${item['Status']}[retry][new]
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file diff --git a/data/interfaces/lossless/images/NoAlbumArt.png b/data/interfaces/lossless/images/NoAlbumArt.png new file mode 100644 index 0000000000000000000000000000000000000000..146e1ccbe52cceedd4a1a610db69346cac90118c GIT binary patch literal 29433 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 z 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 Qo&W#<07*qoM6N<$g6(rq4*&oF literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/button.png b/data/interfaces/lossless/images/button.png new file mode 100644 index 0000000000000000000000000000000000000000..a5fd783044772a546b3e1de91276077828a82a94 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI}!3HGf{@&OHq|`iJ978y+C;#~We?PM@GxOnk ui-QfPT$TSl6jh%5wO`BaVY$jKcE)0Rqr~Z(e%u1;VDNPHb6Mw<&;$U)(H>|3 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_add.png b/data/interfaces/lossless/images/icon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..9e5ccc471e47fb4a2f0ae10774d10d509666af4e GIT binary patch literal 2845 zcmV+&3*z*NP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0000;NklKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0004ZNklBFOf`KeBx3{y4*$pJ|KQ#ily!ye%agv8&;DDu>%A5O5J%oGA z{O8@D89)dy87H~Gc~j<1g}_b5N!o87Fw@C6`Tnwj2?u07z5v`s8ke{Aw!TQ?d=E4I z@Gf}>0c2Xr#6Sh$-ly>=z{!;DVU{BRL1~ifCNtRN+kyP5)w;O~0e;on8YoRHOz;L( zt9A1lBEV|h)PmBR7T&}m397rtr{*04fZvZzZK66hz4iLs@7XapKZ$a0`f_XoZ*u1+ zQTmU;SrX+EP9l@whzbdJmOPn+0H<-3n{XzwH-=c4aHnyUh5+95{9!xmnpByT9SFAY zrYh_{alY?Vo5p6F#*UqM9s;!9X5BP8Rjs#|Q*B$TO)5=V^q6Vu?RxYKnP~<*box4c mJ2TZm5R{TCU=CaZ{2c&N?waMFMP}{*0000C_`)g=u`1$!oM@QS)*;!gz z>gwvcxw-lJ`g(YHSXfwid3o8|+G=TOnVXxNnwr|%+lPmT2L%N=J3Gh5#u^wHL`Ft> zdU{%0Tl@I@87?Uj*cNAAyH9LOO`CL zva)JuX!!BtM^jT%TwGjgYHCgfbabp(u_8G+IVL71ARwTqs3=%$B!RB zeE3jPQ?qa1K4W9!*RNme=;%zIJlVv=gaHRo{K*2A(E*X5IALJ_-@wq++@cwzU@7j@ z($m{yz{V%;pQvtB)HgGd!`e^AT}@3ne`c>s4%kj7&iqaOxTdn$f~tro5}+NW|jtRDT%O-ASPEycjq-O0tb~k z8wFH2Og=O+xw0~IN6cAh>~Wll*+j-=hjAlAleBP^!Ho@$P0Z{WL8c-rA0-`aZV9k) zX((8bA1_oYVbE|P!L`NGTkMC!4#uW#rU}aKb_R|g9`IyqKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0005UNklGF<=*PfC?}O+>ap&;1aW z=X}Xk1+P*h6ZCt54pLHjcUB4j@=#Z^)A+Ve;o#9{IGfmqQ2&VeuKLmk76SoK$r3HAQ`_sIVS`Og3kzpVW5BJNuN O0000KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0002$Nkl76l?`Suu?1p5fn)+A_x}u6qd0S?N2K~ zuuWy<8>ICRtgH?No3mLZu6Ie`3I`T;nEC#*Gt9Qived*nP!z?~#5Btnu!(IXSI0}c zKY$v+JT}Hei?uJP5MSe{BJ_qAtV{%qiJ$Qp&T!E0jY5IIyG}hp z{L9)J+W!MOvm~WizK`>;3%7p&X_hbJ604{h-UYhheu$5_g&V9R!CnR6De~{)7Lq7o z6#1u^3q|g65(5rG3u_qSEZT`zY*o#t)$}`m4FH#pHCqRmVDh9MW{E?clA@I4 zsFRSq>*+;gold8EN;<_TsaAR+u(8J z1Ob6SmdpSeN54W1FW6N7m8Yb<)i3r6I#&@aiBTl;WB`aPkVFGerid2{Z~&fQ%jQmi z2m%=|7lv>ZT-F)_Um}9@3^{P6NUBGJKtz&K%Hzia3TQMCD-`>{UNyGDphAHUY#o+` zWJ#$&oG>6o1_Y<94dJK6^YH>0$rnmg67&QjK*575MG0a#LFohg%uCSk4PgWf`Z+}r z?*sc=6qm(@QYA6~iiIQH`A8fJit~V@Jdk(~{7NVqi9#Y!Xav&J9fc%dJqbt@^veU& zSCa{12pk&YOD+A$2NtJLNC^l;a&j^}83UKdVi71j9*;nx5ool#KEqwUMXcZ{-Nkap z83r04=gWjrg-{}f8W?%el0=0MOt19s7DUpov|{;}YtmmBLdlaNP;jK7rI|z)>;I>U zL|?Pz3J&m(-v3D~57{CG5F9`*NtE&RgNt!Al#&vtGJvO$$U-ENgqd4p$4L|td7MNF zr3Pc+C@71^7m5v$&j=Qaz!b|BJTV_&(tKcg4!BS#AmC6Qo@6qXhNF67P$)Xe3rD5k z=@>K)gJIAZDC7*5CgCTF0I^~QEBFUX|0dR829Z=>nFh#&Nq~SMlZc?7n0G3cMW^R~*}okJ6T;H;=~Bku&)-prwpSGz4B|Fo$xun=-lXqJ-`U=~-tkx`L)xjz zTw@kLZm>7o#0{sVzh#{6awHs`w1apb@J9|O4w~i+aAF>k8wB{M&dxGHcJHK%qod=} zv$$5bx>b$w;N6c$RrSib*O8kS53#qKM3?M~aflu(Hg5PnbN$Lr@aVjzxfn>)^Nke8 ztQOANxVE#*G%>hItJRtnuC&qan6@{+ePiOy$Vh_A=$<;;9wlYe&#f@!un;n=31qRF zkGXpvS2pftXKHKb3=VTo8|4*x*+L+Y`_3*dM~X{Id^`Gl1};DDRc=!6@&?^63|NlC z%*}6F)@g+w#bmS$jvE(ZPYQnevFst%Z2kK6>9IBVtBngFS*7Pn8m0;6g-$)&qAx%i zB1_*nai15E2Qx?h$Yx%#LJJR>$9@Mc@;5~;O3tvt%mZq|jR=eFWvI56UG-<8kVnS< z#r4kE*ZAA~&}cW(y@?`eI@p^uh=$HZv-@`B==O`-DDa1!EvmzPQ z)hA92s#G<1Gyxq~s(YJwByS96bdI{u?9WT(<>iu&4vXh-$I3S7zV1eH6ni-W(f=Q( zici_Ksd3-ACgh*0sv<&kEcEU**5zBJN3Vt@H6hC6%ic!L@@wR-fWy<(MXi_K;dVM- zdTD9bOvxpAczKOQ5gkZnqW33CbsOd^q)zqYUa%W2uJjl^`JOVq{SV~{-Q+w9K4S#$ zRDYNX5=O2o=A7sO=p-?ttY12GeRa&UYfxDFz@D(c_?CtR94Y+Aq(`kd1!`bkty=G2m2wckTVdF`)MhYjuJUbi$`SEM*N9ybena8SNr|rY--J%rXUC^*u#=)z;Wx_)lTd*V3vfQ9J$uXTZsX literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_logs.png b/data/interfaces/lossless/images/icon_logs.png new file mode 100644 index 0000000000000000000000000000000000000000..4943de1aa2ed0c8a10796a021506c3515f6d24ed GIT binary patch literal 3761 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_manage.png b/data/interfaces/lossless/images/icon_manage.png new file mode 100644 index 0000000000000000000000000000000000000000..25c1a7e8d2bf392bdb41a2dbb7f8c7c1b914b242 GIT binary patch literal 3108 zcmV+<4BPXGP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0003`NkleP2FV6(CTKE2l?~Df$_R7<7VwiY0wb^i z{kcfU0pb{fRVnv}g#6BT@7_DBwrvqJ5=4&Z38dW*rPM5k8e=j5I{;e%8vq%A!dkm` z|5aTMOi92PlRKa{VXal86$k*;0Nw>qPj0~jpr3NvY*r3MF&a% zM*wR8t652S2lN*}NwRUc^OOXdD=5iwktygzL2@6H1IMT&bbI`=fq1K!ZtW#Cbf-wg0=Bb=sEvN#vn@gy8 zCC=@4fveT&PK!KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0000|Nkl#W|DWH5p;-yoJ|MxFk%?+|NlRn zHsO*(F@TW~w~uhiQ5*)N28KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0007?NklYQUd)4BR*_w|6}gS-m{<8M^ZG~T z)hd~zlDVNu)Gxfshd^9~Hv=;OqE|VU2l=L&yM29yt5q{4Iw3lth)OkguV-E_smRt9 z0uLYp!O7{&>%lxK!3pxO&VmzE;NC_tG(KGKTScHEdor&Fi>P=fY`QaN*YFye0~zmK zyxt?(JyK_Ur2ZxFh)&qQqrvz{{oSc^ zSD!dKJAb3sfe4hzMg?e>#?H-aE=`@g`dGU(f)h40A_sOh7WymxxnrNq&y@*McWEml zxWAVzMlX~GwcNeYE{$YHnc&!-yS~r7K6T{m{Iy#@_C`4U(ngA?7*LkRg|C1AEtz2k z%gM;RJ~A=Wx|YleU{XaUf#-V!M`!2D=0I#G>$LXkjrPeEAu~91rnP7WMbI}huhYTF zbaQQdrAM%wjL{9X@5<6p5tf$IKBqDb)VrAIRE~@AcJxB@!qcOJf2|7A1M6$=+`qos zjjxb-nG8-AoXXF^$x?7~%BeUNcz9zU+t*c3^azp}6Em&3XUFb1zk6#PuYz|%9+W)D zx;!YcYw@G^_4CYwgR>Jet*?46BmHFbf)!fG9wvWe03Orn*#tM WGR(vGu>0-+0000KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0004ANklY5Qd-i@&RI#2sS2-Sg3_fL=bEvc49C}8aovNBKZ+PD1FK-sx!o(TGBOd}xnzpa@J2$JJ=1ke&s;Iy4AaUMX=pco9b( zN>{eI-8#qs2igN*PR@LB>8C+Pf}5^3NY$)$6Nz2`Kluq*xBNb2Li~x)cTmoynn2P& zEY(|-b155=?D>%TS*hMy1NMPQpz#k-s<&oj&UxTEgmDCn%X-7UMqh&qU=fG`t0929 z!2U8gLM#yQ7}ytq5h-#d|D^+vmk}0#TVU7Dt`ySGz*3k#YS8ceHvqcGVf-JV6A1tS N002ovPDHLkV1n1E#Gn8G literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_search.gif b/data/interfaces/lossless/images/icon_search.gif new file mode 100644 index 0000000000000000000000000000000000000000..a64534cc8a8ab068d8d5ee14d9cfadb4874e44b4 GIT binary patch literal 345 zcmZ?wbhEHbouV245Zru3j(W5V4zRa03 zXWO=IOP4O)y?giX-@h+jymTmS$7 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_search.png b/data/interfaces/lossless/images/icon_search.png new file mode 100644 index 0000000000000000000000000000000000000000..9845cc95dff02df022adf4648f3824b4eec3f8fb GIT binary patch literal 3342 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_sprite_white.png b/data/interfaces/lossless/images/icon_sprite_white.png new file mode 100644 index 0000000000000000000000000000000000000000..42f8f992c727ddaa617da224a522e463df690387 GIT binary patch literal 4369 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/icon_upcoming.png b/data/interfaces/lossless/images/icon_upcoming.png new file mode 100644 index 0000000000000000000000000000000000000000..2a7acbe622195576aade6d6f4007f0958c42d91d GIT binary patch literal 3035 zcmV<13ncW3P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z00037Nkl9@vl8UV)`I%lPJNGtHh)Pn>m=KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0007ZNkl^j|PB`#0~*uAIQ0|a~eaj;E-+zf>0eJg)R7QuWH_Y&W_1hvd3)<1AfO!kNf>T zCPWSd0%ZWOEKA1Z90RxpaN!4lKp^nhvMfx4Wm&73fw{Rk6Tov{JRaY$XW}JkK@>&q zu@s^xa$h_iAK(cP@I?HFVo8#EUP~oO>Iu%h6bcpT{VZI()rVgx002ovPDHLkV1hl;QFs6V literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/loader_black.gif b/data/interfaces/lossless/images/loader_black.gif new file mode 100644 index 0000000000000000000000000000000000000000..e2a116c7280b4d9786ddb960fff4439a542866ec GIT binary patch literal 9427 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 OhM#~I&wK(i`}3bHw&zm- literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/loader_blue.gif b/data/interfaces/lossless/images/loader_blue.gif new file mode 100644 index 0000000000000000000000000000000000000000..956c1cd08b2cc504de5d122b09086a8c9a2c8226 GIT binary patch literal 9427 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/loader_refresh_black.gif b/data/interfaces/lossless/images/loader_refresh_black.gif new file mode 100644 index 0000000000000000000000000000000000000000..0ea146c0253f2e500ca022050f4353be456e6d4d GIT binary patch literal 847 zcmZ?wbhEHb6krfw_`<;O|NsBc(9mDMepOXfty!}sA|fI$FYoc=$48DFNls2)ym;}9 z88hCzd9!QRt{XRQw6wJJ_4P530u=vq`?-b$J39ur8tEA@GXnK0{*!VpN=+BBCMNfRtuR+y^ER&<(X zE7%B&e5#Z^`o7-@nEg_P~LI*N!rA^h{|;%@7gdIe0+9 zL6FPmK*NXRK=)=Qr!7yn1(?oIuvujqni9B8`-RfJ#pzQFR*0=zw6NbXTj0F1BLlZh zfVly?4JS*30beAWg%&SoyRsrS%M*Y;RQ^0c<0TpwHaFY zz6r{%O%_#7fe{VKyK@(naSJIeRCsx4aYAE48*ixFGRdMll6*@GUTc0%``>`o8j#V4 zg9*c-O~)LSJSTE&n6)s0!!ECt)zd(wL!wvC+k6wRhYtI}PTi7bt)^yIDG`AshjlL| qtmsHM!1PnVu#-b#!*qv!K4+}1yrR2vIXQw2G#%tg}#)`c}opMaul^%5>~C9 zA#!Y@lxf2UwwoOd(Y-7-Oqs0#69rlsJ6jj^txP# znr1852#b8Gls)>s-wB%~843zr?w5Kpw4{zcSh2!E#kKapfrHnMGI8`wX-Lfw5#l*` zK*2$f%jZDDhvY!_W+taCPqzh_&QP#fWg40ixJ~Oe;?`>ncX7DG7s;^5z=Kn)RmY&u=?Yh0wt&~O zw>+Wtrsd2mH7eP>F`E25-B>LRf&^=W!W1S$k)sYPnw{m?)`%a=?rxgHsOa=0!JeUU zJJY@i%C1coRZf8s4avK67nN}fDJ@iZd1!G$V?rBmsM|8hqC1j&OAB6Weop(}fYln1 z-+-~V!hy%tP~gx>iQHI;<2xlhdM>ox&|nwnVliP-c&?!%vCK^|(Sso(cm_vfuIZAk zj7csYTi6&@?MzJ4;p$UuC@>aFKBBxq{Ri(GC3X`t^8hui2>k|)o?aEKmc~OZ^#FQ| zW0`{q!=X*b9F;sLa%`BjFoDA^ua(u)K&3;XSI*mf6R(F3`@v4#l4h-@W>+Z@fhC7^ sFD9($NI1asQ^2s3Lt?{phkib1^9&AsLzXnw7|re;HAMz%Q1S!=06B^hng9R* literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/no-cover-art.png b/data/interfaces/lossless/images/no-cover-art.png new file mode 100644 index 0000000000000000000000000000000000000000..40334da48d2d939ce04424855127d3dd6953fe88 GIT binary patch literal 25265 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/no-cover-artist.png b/data/interfaces/lossless/images/no-cover-artist.png new file mode 100644 index 0000000000000000000000000000000000000000..2a716ae2361286f021400ca2321c4800ecdbab17 GIT binary patch literal 6937 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 LHuTr4JJ0?AAZ0G_ literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/toTop.gif b/data/interfaces/lossless/images/toTop.gif new file mode 100644 index 0000000000000000000000000000000000000000..cde291a44056ae03f528c32d69fdacb8d35d0181 GIT binary patch literal 838 zcmZ?wbhEHb6krfw_|Cv!n0)U4C>RZaks1Oz3_t+N3k)3E49pxd9vc=MY~~QwiirRU hwK2+A#aI|Va_*4O4w|wfaDiKof^(OQrhx*3H2|G>3ylB( literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_flat_0_aaaaaa_40x100.png b/data/interfaces/lossless/images/ui-bg_flat_0_aaaaaa_40x100.png new file mode 100644 index 0000000000000000000000000000000000000000..5b5dab2ab7b1c50dea9cfe73dc5a269a92d2d4b4 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FscKIb$B>N1x91EQ4=4yQ7#`R^ z$vje}bP0l+XkK DSH>_4 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_flat_0_eeeeee_40x100.png b/data/interfaces/lossless/images/ui-bg_flat_0_eeeeee_40x100.png new file mode 100644 index 0000000000000000000000000000000000000000..e44f861be1ccdfec4275eb20d9b056f14992f649 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FscKIb$B>N1x91EQ4=4yQ7#`Sv zZF_)9$%zYm;;c7~Kd+Iuj%U9o62cnl7#bi-T}u4XA(n|-?{<9$I)lN})z4*}Q$iB} D#5ytf literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_flat_55_c0402a_40x100.png b/data/interfaces/lossless/images/ui-bg_flat_55_c0402a_40x100.png new file mode 100644 index 0000000000000000000000000000000000000000..881ea6bf349b796e6500a999366c333215d0bba8 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*Fsaj7L$B>N1x91EQ8x$BA998%< zd-9As4-_=>)pNe9diS+Yes(;&AJ?j;RSUFMP?_RgC&%>BeA51TK!-4Ry85}Sb4q9e E0F4GjBLDyZ literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_flat_55_eeeeee_40x100.png b/data/interfaces/lossless/images/ui-bg_flat_55_eeeeee_40x100.png new file mode 100644 index 0000000000000000000000000000000000000000..e44f861be1ccdfec4275eb20d9b056f14992f649 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FscKIb$B>N1x91EQ4=4yQ7#`Sv zZF_)9$%zYm;;c7~Kd+Iuj%U9o62cnl7#bi-T}u4XA(n|-?{<9$I)lN})z4*}Q$iB} D#5ytf literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_glass_100_f8f8f8_1x400.png b/data/interfaces/lossless/images/ui-bg_glass_100_f8f8f8_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..0102c43d699529c28a0a35305ca6101c5414dccc GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAGVZ#9R3S1w1@m978O6-(E80JK(^M7?&-@N4DCQO89ZJ6T-G@yGywpf4K5`B literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_glass_35_dddddd_1x400.png b/data/interfaces/lossless/images/ui-bg_glass_35_dddddd_1x400.png new file mode 100644 index 0000000000000000000000000000000000000000..3550f06cc447d17ae2c4caac20ce49ed4eea2783 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnouq)a?r978O6lPi9Fcv!E-#>Unb zm^4K~wN3Zq^YijNhHh?dDNKq7j~r=P!_sT&)g!d{$O9FIBu&m!xp}EfK>ZA!u6{1- HoD!M zFlmZ}YMbuI=jY{9^pusA%k+eWh1=pOR)(vGCX<3`Ri0;xE;^{22WQ%mvv4F FO#t-yABX?| literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-bg_inset-hard_75_999999_1x100.png b/data/interfaces/lossless/images/ui-bg_inset-hard_75_999999_1x100.png new file mode 100644 index 0000000000000000000000000000000000000000..89b88d8da7b9c849a8c9fa5f9d44d0f89be8002e GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^j6j^i!3HGVb)pi0l%=POV~E7myXQA@G8po(9K1a5 zO8uIww=N0d2^Bw55)Ox!>#MwMcWK$6%P?`~FfkN~u>|JpM%M$iFnGH9xvXo literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-icons_3383bb_256x240.png b/data/interfaces/lossless/images/ui-icons_3383bb_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..905274f21d0478fc479d4ccc8267da89772e9662 GIT binary patch literal 4369 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-icons_454545_256x240.png b/data/interfaces/lossless/images/ui-icons_454545_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..59bd45b907c4fd965697774ce8c5fc6b2fd9c105 GIT binary patch literal 4369 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 Wf3}is$mak3GM}jHtJSJF#QYEaKVokH literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/images/ui-icons_999999_256x240.png b/data/interfaces/lossless/images/ui-icons_999999_256x240.png new file mode 100644 index 0000000000000000000000000000000000000000..50ff803dceabc920d514d6a41634fe4388b6c128 GIT binary patch literal 4369 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 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/index.html b/data/interfaces/lossless/index.html new file mode 100644 index 00000000..503ccf9c --- /dev/null +++ b/data/interfaces/lossless/index.html @@ -0,0 +1,101 @@ +lossless<%inherit file="base.html"/> +<%! + from headphones import helpers +%> + +<%def name="body()"> + + + + + + + + + + + + %for artist in artists: + <% + totaltracks = artist['TotalTracks'] + havetracks = artist['HaveTracks'] + if not havetracks: + havetracks = 0 + try: + percent = (havetracks*100.0)/totaltracks + if percent > 100: + percent = 100 + except (ZeroDivisionError, TypeError): + percent = 0 + totaltracks = '?' + + if artist['ReleaseDate'] and artist['LatestAlbum']: + releasedate = artist['ReleaseDate'] + albumdisplay = '%s (%s)' % (artist['LatestAlbum'], artist['ReleaseDate']) + if releasedate > helpers.today(): + grade = 'A' + else: + grade = 'Z' + elif artist['LatestAlbum']: + releasedate = '' + grade = 'Z' + albumdisplay = '%s' % artist['LatestAlbum'] + else: + releasedate = '' + grade = 'Z' + albumdisplay = 'None' + + if artist['Status'] == 'Paused': + grade = 'X' + + if artist['Status'] == 'Loading': + grade = 'L' + + %> + + + + + + + + %endfor + +
Artist NameStatusLatest AlbumHave
${artist['ArtistName']}${artist['Status']}${albumdisplay}
${havetracks}/${totaltracks}
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + + \ No newline at end of file diff --git a/data/interfaces/lossless/js/fancybox/blank.gif b/data/interfaces/lossless/js/fancybox/blank.gif new file mode 100644 index 0000000000000000000000000000000000000000..35d42e808f0a8017b8d52a06be2f8fec0b466a66 GIT binary patch literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_close.png b/data/interfaces/lossless/js/fancybox/fancy_close.png new file mode 100644 index 0000000000000000000000000000000000000000..07035307ad435f8f2f8eedf0bce50f7ec8a858c2 GIT binary patch literal 1517 zcmV1To%f)hA(E>uTT$~N#GA0orBqo9-jKM;POccZrXJjTzge4|Sa0ca~7y<+{ z2m7~>41(Jqf9L`mBM6zAjf4;hkjP@@B~d6Xz385|dB5iCM=Ro&JZZmk-uHdZd2i=@ zK0a@Md;u9DFE7t8BO^nxckf<*yC?SckUFGmX^jwM@NV80+eiP zQ*s##s^a3}Ldwd@cHO*r^T5i=%Fj}=Cr_R@78e&C((#usU;YFS>C)2Dw4tG)YO=*P zWt;6ZfL46;=u!R1$jGM-hhvcpVyCa+S}Q!T2ALHx;BHe#M~BsHHos=s2iW})#C?}q ztqvud-gYjKsG$zHm2XhmYPB(Bn>kzw z=gS!w6cG`jJ$?H00VK+=!cMnBDn?IFkCkj7KmNq~hrkZvU@n=EP}|7Gxw*M}1_lPI zNx@_?IS^|%_ok<(o3gXBH^f+@(X7_g)K~%n0$gMM{{Ab=%gZ*hH99)_Eo>!VJd8_C zE)WMoNsBB#u&}W3BMEnPby>y64F-cra9>kX)4DJoA0KZ5fitNn`NTT4wY3%+fA;Lz zZ+K4ucJi+Mg!m%<>Ug8kSg^LX_JD-5va;NEM#+V_H)8UHgaj8UJ?LiZVx92t@KxlB zb1oz#Bo|{kAO!IDVfOII$VfwRad8C+y?XV^;VEu~g@tQka>%(zhlYl1p7P=0!-vj9 zYiMYw3l0uW##jWq+eZ-;6r@4F%{+PXGcz;xx78|Q_F7Eb+}ynGO@4TI*h!27r4#SzfR=K~ zhtpe&%-o-olT$}R&!0cHdm}}wbdd`2lO~)PlarHXnm>2$+(ng2^$EtJ+=vwl#Xg-* zSA%x<9|=lJ3CXuACMEY46&1O~{LGm%7HKm8lhZ|+Pv?nF1LcJswy+L%zshO4HzpR4skij zxq<8a{QPpl!oq4$R(*n7$-q`gsjcF2;NWZ?##l9wBW)lu_Bpk)RJgGO&Ey+2dDr3J z*x2~aJFl#)G^5U)q~qh`_b^ru6q9Xf%arlfse$W(T#z5f?cqE0>k)x`c6QcMUS4jN z#$B996B84z1O(|{7{3S{Bb#j7?T~OCi+pq$fP9eGqJ%Evk~i}B@#8tcAnk_QAg)9f z!qn81MJO5W0n6>}?Q|$y25QL`+uU$0x?KbSI<(UOBavf=wCW!^J3Ie)^yty-8!yk& z($YLG4fjwT{k&5mHL@*_7Xi1c4?x$HT^y5qc2zyPPCG3CUKl!f@Zj&~&!7K?fD>&z zDk^G(=74sN=`q$#Wm{gaK5myi7K~vRQ8s=CoB+NC8j<}iKpXzI(SMmt*2r@wST=`s zW7t-}X4hPqXy3W00000NkvXXu0mjftFGKG literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_loading.png b/data/interfaces/lossless/js/fancybox/fancy_loading.png new file mode 100644 index 0000000000000000000000000000000000000000..2503017960b3972499d3aa92f89953935ae40934 GIT binary patch literal 10195 zcmZvCRa6{Z)GRK+A-I#l3GNJT8Egn7KyZS)ySwY)GC**5cXtmOAh^3rfXjE+eY*eu zvb$HWe&}AO&aSFmCtO)c7UKiS2N)O_4A2)TmG>(H3=HfB3ex-CA}8B>rB4S*iGOoj zIbB0`GB%#)yQsNe_Z(XHJVzvTksi>+`6l(%$`7%p5{2L+{tq=VJ?V0JL-5DetdIHF|rZRGiB+~M$cAs!3L4m1WqS5m4Uut{B{sus$nl}9N zp#?4R@YNv8YM{JrwP-Li8Ynr~UO3E8cBsK321T79L4oqq#7><+nH-uo4c3S zzbjdhtN2LE+Wk$ypLztVwTlowGQqng!^I&U`;KFsDxwwAwF4PR(`@g%I}B1@?aN<; z9cJzX7khkNkJG|u_OY88t2=a(9k|tRF|O^~620}B74q3{|Mu}rUKMRU=5i@t4rH}t zWMo)9&m6ObjvNsA;yz~`O>f^l&kjH&j=Aexy0cfmC&I>@QU7`Ql zPU3_q?7Cqi%{r7|wPeZc`_s9mfR2B_K39;>*-yWV=qR41Ls>bqydL@}bse|D>1|L> zSvMFEQ2vnWJKlHRcZAw{ZIfc@+_x^0qqpf`uaLP9OH$Mxyno5YuLvbooxn?EWW9?3 z!YB&gf0xHo{M%6#qA!QwrjFO!Dm~{w(pCL9Z1XeAf)Nj@AQGyB2^*KX+-VJJjiv1` z<4I`VooCdOm?}gf8PD(k+m)s!AE5Z?+0=PkK{!n$OKo*{K2N95Y`L?t*m<`z<@&zR zp~CHRl4dh@$sJ4b-?gm;KP++XcWjfN6N#Qw_o;QATHBKP9&7y-bUDZkt@PRB%5E8d zyIxSjYTf;8+p-~Y-!k=O$;kfFCPu};=7d4N%l)KG@8xK)nb+&}I$Q6pWy;&;g|G86 zI-2s|2J)g^1XG`LO53Wj0gJDEZw-Oyi2)Wft0k{z<}G%H3dQ>?Y(D?CDZ2o#2V1hj zM_=W)_N5IX(aMyXUqh1U_WG#TC%LuB%3bK~)3%|v<)+ah|2DDoR!5Ri1|w~KpZ~C> zj*1KZd%Z~(gdF2RFMx01Wj`AW>Y$yS`Ndy3rPZS*pr6~#`6Q{ z%20=uSgaS;|E%9NE(<&vHm9^dubopg^XZ9&z5b1D ztpelNuc?SSpElb&~gE~4TESBIw z4hXi+ap2YNx8^D{Y~U3Q@Y|(~)|YhqOBukuK1!NNCMG7sGZ6A#)2w8O6Kn zdChi*Bi4O9!Q85-l}W!%4SCss_ceWT5CR9)!>d)k=W(}t8zRG>zPaIpd-bRcl+8}< zyZAFh+)b7i2(xFGQ1NiT*Ss*nf$|V%2{)tO&r?qsL@GB0#g&?RJHuU!w|`-+L=^sL zBkr*m4+?S5Lim?WVQJ4G?3fKVc}Q*JmJmX3?v`M44RD$Chi8S>0a5i2&wbyXSv8dY zyfv7Z{pAwk7MSBUu@ z5G6tLJnE1!1UjyO1R`?s4&aNgugC^{U9o!idxxDc93pcZ7raY)Xn7Pw`)<#e)4& zcN7v?6cRi?#`bl9ECtBz_QVZ0guMA?CDv=_ljYyH*ZV4aa_^g&fXJni?@vAE{G+P77pVW4Tj}s-(;*& z1STX!WHYF!Btlft>2`qz&1ijPaSdm%!UIMua~VRnoET&%1AAf)#vSfWj=q$8;qo|vcK_;z1j(+l2X0@o7C&Rzg8!2h$XZGbenx^q2; zApAgMeMi;{fO?<|f=I--(6#z(IL}cC|D24*dg^rhIE3G^yTJFZF55a-#}tYH=P$~* zb}RzkLIDvK`;ZA4OnYPQQ?;ssg`Ml>vON8NVnk@fl0k&o2W`-r3Bg-8NJYuCo0$rb zAKi(Z+>hRKA>bjOr%LHS@;94B&obY#4yCecQ0pdAnSV&v!vLF&-`Mm?t?}6F z?PaX5mkzFp$i(YKsOTz58Zgc7q)IVxy5hYd;~k@a63_Ja7Z0!ycbH~U&Y;r17f{Z} zwhnd>Xve$Riey{w@OgRi9rKhkQO@>jj2#Py8_PSVvvwxp0HTR7DdE{>K_i9RL= zrPNU6SCAR*HU3BLhMV(aTn;NBJQziUp9-R3QkgnENmN9ZBlJCW?l9$81skWTmD&YK zJ%7bQFP*wlswyu56egGmr!KVx=+KneK+U;f>vSk#hKg0u(yv^fNk=GGdULDg_=itK zp3;*2U!wB8TA$o;k!;o@OA2zx*%c|y0#?BBp?nDDw5rBS_SB_Sbz$6-fYTvnj(ezNfL{$?uz9aa=HGSg$mLTxTf{7e`Oqr?7rp+0`lg6AQpk z9Nsxh5kt+I%$5|50=OZUzms%|OAS{5^$g0~djWjOVxYk^CLD{|njlM2ex}zn9yCa1 zXCSTHoM#Rjq25u6;*Ug2A+S~Y`_kh|<3C=w_~F{9JKTLW^z5D41V2cjL8y+L*0IQ_ z?L+y%E(_`Xj&MzngB*bEt_~znvHKiL&w-ytZ<@L~s{_sdoRaSXOA5{31d;sz#pvvv zgq9-MCupHYRhjX{g`7wlu9(YJkAO)+oP%bGYC{Q>2v4!wD(_QEQe5suxdx(SIXS!9 zV|=hm;s|y$aq8^~zssyzb{|fvQc!Cj#FNH1$?tLP+^0!rIS_gU*h1d?y;X7vm>l>a zwr^N0VzNQ_j$}0!F~;(iG9UmS=QO|XM%w%nK5uQHaLT2-I$_CRCbGr8ymE9J_k{YTcfRFh1nn)R6_X#W#Fg4I=2W=GD|J_UwPwIQsBklSR4`o0$A&X8xn-V`k#d|7nEr9kiD4Dx?q zJBBg6NsFLaJWHtZ+GQr~rb(+STSHpb`9UQ4BbXjmTjDz;@V0H}7=mOf+#fvH-crjF z@uztsU}U)L0`Q{D-mZfkuH|zPNNIKXy+C+QIrQ&23l%VJtwn!M0wNG>wEi_? z``=Fg-bBV*o!jNs*j0n^Sn^x-5T@n{us@koqBnB}HI+tGJ!*iBb=5xNu?gt0oYXmW z8+W9Aca$K535BsvBR3qs~{jn>MoPaD#Aa+9Thdjr^?c!Rm zd+L48(+PM55nZ#`>laDoAVlLUXKyJl;Rm?x@Vv6HMm5<-R6-Z-qq1C{(`EqabpBzG zj;4V!x`7^=;;cYNpRy+iPV>rQAJl)AhcD--7r9MjgEiiV#SR|%E*YZcCryW8uK0m8 zL*X&^7In#HoVp*5gKHN+#O5c>>55A?ba%a_dj$xtqeA|)Js2dMKsh{lLDK@0m9lYa zWh*#0TQ2T27j^N`(t+eEfPUoBbvH_Kxa-u1jcNIe2YA^XT=1{3*Wd)}tKRN&dun&* znJX0Gvn8K!-%j#7%+r_|9qIlzn!o^G{q2MJxsdbiTZx3rG2xVS7HXrp5s;0PD>=hY zBl<_TAVt^N>MxbO(@<=MbHrHR=MZIY*8L>tB_Jja#yQoQZ2U!66gIECXOtndOORap zIR~TG$;oHLIJfQd#!j_3_Qvmx`fn3O*zC1bYC_$3%GfsjXN1z3asw+xTs!lK0I3p~ z7+&tcZUsM&QuO)Rahedf=&&)d1_C6zma`x{C50fHF?zDa=ZblEB;H@x_ z*db{M-tS}6{hx>Au=h4<8bWA8WETt$$|~;BYStwE1pYq48aKuv)4zT2-le|_1FnV@ z&z3AIiy5J{V@~m(2Aps_b7@uMmeTM}Zrs1Cl&)1e*ht|I zj+H9o<}yH3ZLHkB*F?)hWh$+em0HTThaoLx6FA4~msa-#wQzbyJ7ZmQjr#_R2ho^; z^_`?dw}hUR_w8a@8*K8J-lhK2Ot+y`>+{`n0h_lu{26PzN8ov0&f4B@R&y6%I6s2# zaHh%b232N&`aa6F5}eHI$b&SYPEgsOw5r$FS9yGwbRGzrIvbyEgZ9&nFxs0*_O>EKspQWU0tWeX06p%_D|(!O+TmLQ=`cGc+aR*yqXicgOVfS-31*Vth9=M<`>TD z2ecu1@-;8F3cm{pGegNysh5>XjRo{+T&Ak)F?qQ`lGeFVEKm{O*Fh^hd&!`$*H zo5Oc&)hGQS+5HxkD6FQ8nebel#;ty}aAw`K(xh8I_#=)-z$e>p3&-I@Xi7DsewFYp z$O_YrvYr1N$2_XK@wwpD36YvYlkAWY{ImJ=ap?zi$l%xZ*=IqNes{oGZ_d&RUp#M>B0_e>rGRlDA!;QcB^(S{BAOFH9!5r^ucGvwr7zaBu z0nl8=Q**gw{nD9@q{NiDSWk(V7^!=lJ2pWMJjM<6vo&=apq;2<=R}w*8Y1=kz=PCQ z%)%vAD1wFG6WryVg@``Sirh@k%N803_$(=+!8Mvb9?1T!G85NtuNdZnEQyu#A?w`B z)F3b>f5ji+x}KM|Tj2^Y*G*7{b`Tfi5Vo1I10v&)jAXu~zp&^l9_6zJNyTM-8Umo1 z9&95H=Jn67@b=o@EulLxhu9I5NUWA}RT~7aM&6p*w#;#@t_WkoM=N611DP@^AO(5% z_O)wI8+=$Zu|&6GLOI$LM?5!R9z_jmV}oTTbo5w#im;QnduH`c$N zW{BAB52R%1;Rn5cODK_%Sd9)aoctB9zxfjVQ>(H0D(}uy@LHYyAgK3g(>S9( zPtYyFU)v324BQ;?fy(SYzzu)I?S5X)C%oy!_vo35qBl@iLxXeO0=c!$`taf&-nWfH z&;kAR#ny=d^p!J#(|f-;_JYU39P352-lqenf}$VP>n~VNP4fO z7WIbrhM-BLcG@K6C#AME+0)ar)&j3)4d;NqqtG&xvMIB$;{YjyD%@TxXDz(Gn^~Q$ z`{|#$49R1=uT?+cj-swXngY48cUNapbLV7E{z3w$^>d9@EA@w>HM^RNCa!C{AQXMm zpS_ccdl>Gl@TvUqk0?XIXoR{14Qy=kig!<*wYyEI!{IFM!!y{06q1<;ELY*y*mjQT zv-b*OcY}^&CpfUnzo^;VokcN($`aoxgOa2-iM%AbK5g=>;P?fEw9oVMKLygeXnM7D zPtexNCH+(J;~KzQ96%ZTw*j@q*9|u=z0Y-$-X6>%8rAx{yN1?B`D^BfVA-Q>P-Zwe z;|%7ZvMvfrLx6PA)1366l#K`VLUj=^JQGKQr;$;%1P{A3+amuyFpQjUjaj|r5k8@8&dKiV2D0a28K5jva= zscr^-stsDrbQN`~3V1XeM345Wu`L|$V2`1Pl`51 z!sHL}P{WSZ@>@dt0qCwF@)>_sDDUL@v?vgBJUvVtqIV{pdh9z%PiKh$SX?-VD2}@Z6HA6- zt@V4EnoebJo&k^RU@I_2;opR+}*c)nrCI`yn@ErJWz96(SbIVk1>cE!Tka7+3`tF#7q&mOS z`(vja3j^a6Q^nJG3SpdQm0wa<72`6^6xx!7k=(pVAT$qCygHU&2G^*HUT}^RwjJNp zVjsZ-`}x>d3-MAWGZ5r%sw4F*$o{=syLAd8Mu?DV4DF|;2*Jox zqVL%1j1#^%=iX>tz6Qjk3TO);M&rXtl%qgk9grE3>4MXk7Whlg72rmd9g!l$_+3&E z6*h-nCMPb4^T8$kZueK9(P+4T=;!doMXH%k2WDZ$>{4(7lz{?r+!{D2KSt$CV(H_H z09z`;*W-{JA{4V`;ct6^**HAhq-p$yC!Fv{xUAPqWOUMqgwdVO=ShY%=Zt@BDuAe`?$w6~HWQL{`llqWf6s}0s*z#HS;O3a z=ILyMmZ&A@kv(0D+vYjR5o^0XD5avMI0e%)%4(QMuouS5z3U;m`;cPc?0(9-y@U!e z8`cw(kspE<f=vKG@{6#xOuWYLU46A_{#wSGt9nrgw})%Z22yb0fhbwJaqq)%z$PaC_= z3ox7-F_lzT^9!i(CE6 zW<2&Wf2a{(QsxusH!M~2vW)|^uKs)OZ zmI^}fUwIueqDYM}Hp_|Vp>A79nJ8^LR5d1S;Q>w#hmAWb#T`r4AJ~Xv;6gnE-j*Qk zwNw7#)xPg>g$s)62xcF_l*sdm^_NrVX|dvZ&p>qY=srP47z1ewBWITjEe65;a(0E< zsKF5<#?0SAwMHrOG^N5~-08VWNK!`W|E7Jofg`@;V9vxN`V(KMQ7OQ50~f_DqPJi8 z6s(d7BHK|74FG*y=+P~=U{op#TT^k#OBsmpmz7R(n`tLDrm9z&lDKlR$rc{n&Wy_f}H^^xUb{sfU=4ICbJ`(9&;3Z3fCy0rvgB9M zYXJOzI!BVShvjpSRe=NmGVk>cdV`Q015u&=ITQ3#Gp7D;WU9-#Ty@{_tVkMAQNqTD z89X_&nz0hLSxzu+{iZ?fqt!=1tl;^;blU*(sJlZHnmNqp<|A?O8Yqeq>aY}@n1 zBd&ihKHMSw8p9mpUE#S1BM;d0J46}4d<00ZkaWga7oyiz?n2O$_km?HNrL+#l7`D1 zDt>O(bK^#^beJ$Dp;k3Q)+J?E0B-A4flwH2y@}{?;{_nm@P%QMps2J z#`ilc^%ORDrR0HkSAcEzL6MbEuv|s7a0Ar)gMbJT(!}yXkC_|qfJI;E22Fs6`>U2+ zV1&^n-1Dqhq~VvMo!jd|vkg^x@GPMw8SrLWQvGe4@@)xUShf-uDZ8HkE!_>b4{dqT z8096-(q!Ru;Ij<5@|jEX&B4JzS5AqWVG4h+OLc;we*kqEFMhlePe?Xo(mzk0QTAQb zpD2r0t+lznomct39G}wZEMuz0)=dgp3T>?BPsHbx^CB%dqpOboI~ogTn`N9K1hy>{ zDBae4+0e=;4Ed>107Xpg6!O@x>V~|>YdDrp^;g9CF{RNew0I&FVx}{X5%+2=zXe{D z)DMs9SjWl*_A?z_0KcjSCKJ!NP8N(+BX78sW+x%34{ePG(M^UYj%THt zxZ8TL#-|J$Ui@6z9;Yh}Z!tM%V>jJuIJ-?8kmCLBd^|wCgTzGsD_kLyfTJg|Cs%`+8tvvjHT@<@+c88YVruAnGHq;4A%KT z`@dcO=c%}~pTNFPbF|rymrfuW8#gW8GRQQEe8)QF8oAyYmLo%Jv;Y=7EHouB zJQ=5|h)@1}F#B{wX3e#`0jf@ocdnZ;E$5xtwD??6V3z;dPTQBe^HZq-b%{6VCF=FR zL>xf=$+cR=ko_y>!X9j&oZEAcOX#tMNcb;(xuU}kDM|P5mmN<5;map=HhG=w$|}(w z4F*XeZGLzBif3-phMaoKI`4adR)>&}aCKzXy<-RDAU(u_f-$(-Omb^%F>+tQyUWY- z98G`O5ncSRfQ;n3q=LbzbJNk}=XZs1__J63e;DEaOA!A=p#VP2rE}oOH-BMvLgYtc zoAcvckXV;~6fXD|`?DPrCnsupBsl^pc!s>84G60AQrQAUv~pvfJVGH*F3yd1!r-1e zi9&~F;796Dg(Wi1n4+u~#KD>ECTCUiM{t=D!kwPLM7V~k{HGdYq%u(>bX=z9#R zge?YcYjBNZvw0!CXZ)E}yiN$;?-`_vV=weI@%t6E>KQw$qZo?yP7%!-7D}&J;Rd^y z2L}gPL)GDF%_S8P%|t6;LU)8(vhxC{bue%1KQGKL{}`1SxM@5h3BqQW$1UJ=iHVKX z!>q&nVn}oCqRUI42H5o?zjm^4 zhTv#NSZ?tF^7J6}Ds4Id@g55ZMz$AERk7!_lo<;SCuZW33@e=0gl8*tD>!a0k^q_ViXjTmlOQizar{@TPjZ$e(u*)b zl&+l8$FXO3_IyDUh_4-QR3im{;hkU zv{vzd6YBp_9?y3`R?m*xel6XQdQ-D~W%obNJ?_u(^o)Wn2nbCAm5RjF3^UlDjNKOR z{-zm);7^zU^uJ~aeK0&5K7A zk!1|bDtR`F7u}LdQL>XuAiOL)$^!>_q!Rx_qE{et)MEwb@S{@W`+Z4Aw2az8N7*;j z28~WHm*L2qk_1^vZ{qCssnc0&vsCg(7oWohyP@9E!SL}lGkp5Mol&OL@SQWG!*9BR z0qAh(zMth9KCDMQT!@!?YhIMqNDF_IM(>}Gi}a7@vu~0@GO=V5?Pk#Sqt{UE%}PuM{~;(=J78A zSrs-=fTfW`08-7aQ5oi{Ll4And$a}6a7%A+l1f{j62K2!xMxo-1)`o$Id8iOER0N* zxIDeb$xtGU)+USD=qHDg(Y`X~J68tf`TqIO_Tn$%1NaeiYTKadL_2eajT1&)NB+^q2@D9b{MUY_>TNQpZi%SO_bqXjyXHB;Ui$Sf9@s+j;Wb z{id0A9C(t~>E@^vPF(@ScmscJxOc7zNXd^Oh>_aW(3u(xR)buk9$q9y|pmKaV!1QFxCztuHO}!PY}!G@y49mJ z0cZk6!rr+O$%3(;B?-}K84!e8{>9v~L;P_$0eQ4}M1oXBfsT{~ZTR)Ko%2eWMnbKn zb5q1ekkgw_RUy#!uXEEL9eB2&?El4NCZmw3r1hMX#a}lk-dBMCPR4OgqRj$-M;-^< hjOQhwL*8E5RB0mfPrR|R-jC_QfTWeADkby-{tw&r+hqU% literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_nav_left.png b/data/interfaces/lossless/js/fancybox/fancy_nav_left.png new file mode 100644 index 0000000000000000000000000000000000000000..ebaa6a4fd34e51575a01da366312c20618985cbc GIT binary patch literal 1446 zcmV;X1zGxuP)R`@usIzf?P{x4#0gFqr~|(;IJySuwjr=+Ar78e&sHZ(Lu;P)*wKU%|U#jmpg5~Q6= zNl8{#mZGz>Q!_F$qJ8n=#Z9x>Jn_n|ZEtTsSzllOW_Wn`!@Rt_=!l4jAl`tKb-5%L zv7js_CMF<1KR>Fcr{|nbr~AR4Y-MG|y0EZdwI6@^^5yrikSZ}TQ5hH*C?{R4Q{?KT zKD6U2SFWfB2M0g0TCEGD5GUP%Y0a>J0W!M1fVuVU?d@ix(YV91PjUK7@OzY8E)OJ~ z&Q30n%8njA8kC)#t?uvd&xMXHQZzI)WQmTB-n1vQM_gQ-{_*3-7UA?*_bJ9=m|W(F zT+IHE$H&L3T3T8zSS*%BTHM>)YZi;eI#;9uNVch|X-go#ckf=VQmKq2-ORBYaGo52 zejyg&!SS;_ltMX3~N9_#ORsfn&tMTp}T$j*yAd)6-A(_4O6g z0=-^ug|9bVkxorbSsNQ0x9sPG&EF`laq6qgf=!d ztnQGKnVtDqz_Vx1Y=Kr=TU+Vx?;nS;5H`1m#Lv%9fqI)#T3Y%!3C+yRSpE-E!h;77 zwm7Z1{&Y;%TkkIqz&m9sAKBbnCkzsHry#@vbY{a-wI?zu7 zloV4Q9NtQWLUAT7Ev=G-*4EZ6|HZd^F*!MDB>C#<>PDGN_5sGi_Yq4ZlG7@css!ck z9};wyN`LrygSGPaaLVfqXl2Z+Nkm;ygvo12>(Bf+YwDwC`Hbwy5foiCI>(Z2*F z+nZVe;)K}P*aF#9Y8tUS3{lK|w(!NULrkdP#x17leSb zXU`h&IIwaw4`8eqNV6{>BDOh|vjhZ0E{e&QDDu0Pe|>%Zmb;{dg@s0w$z&rPA0K~+ zu^J$UblaCq5g(ljxEe?Y`8AmFYt-vOfqZ&;+Eh?bV07kp3Z#jN34Zfk3!OW_7k zM!Hz%fopN!Lja&lI}y+lIZjBszTeT&@!Ra|?DQ)q4Us*EN5ey8M=zh0NVTlX;X`2G z(+8kuN)-Dfn@v@Ns?$arfE9ks%*_0?uCDGc0&cYN@bK_KngiO{r&oDx0_$@6^x5~= zW5Gx^5k=$2z;)mYpdQiR47B2ZEBzOVMD;v(on_N_Z6xdRarMj=Ped`)=n zv4Dh?$k=SYcJSdjDa(58`F?t%ZzxBbaRs;9zaA#)un(S!5dZ)H07*qoM6N<$g4RXF AD*ylh literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_nav_right.png b/data/interfaces/lossless/js/fancybox/fancy_nav_right.png new file mode 100644 index 0000000000000000000000000000000000000000..873294e969db9160f5ddd4e1ab498ff60b080e3f GIT binary patch literal 1454 zcmV;f1yTBmP)Wa6`&Z+!IVkxf`V#(j>y7#5eg z5*PD+C=wGBwT+F9xi*_^fd=>X_FBba@wz8b0c3ma+OG#c&LYnSBp_4S(*6BG8m#QpsI))yBSw}|WBy?ft)>pk?VIMu|0u-xC@UxO$< zHa9o-0~vR8bXeVyB61x;@W6T@vgyO$TgWvPslhu zJ>BGvFeN3$D2UT9wO!c-2M2E;RvddB6cm(&J}nRg`1!DUaA;_#J})n?kc`&W*6f~w z$XoI8@o`6>)z;Ql1O^7iqc4Qr?IQ^Y2vDQmrd_^#`AagIo}RXO6Tw=o)=2K&OZ?8A zJDVKcH{^2p2j~ms)bf#Ff5Y^8{ZZ7~8Zw%koV0nHJ||9`FbS!%u(0sL`TfAafI}Du zN;}#qfQDkqhr?T=R;!O@W@c89(aOq-SHe5pO)Do4INRL6f8R{+tE;Q)Wir`E=nLN^ zERjf#VBjT`yZ^}0T`IW~brs!I17PDwDHNtJpz(@u7&_Ci&*x`nXGh4eva-_hHlhTo z>wKX6jrLg})!Ef*2q(qH#unh5y~V~`*!#E25W2>+0$@y%jAkE;d^% z7KiBQ=;#CV)c|?K?OZZNymTtyIv@+;=i$b0QLhID@u{gPOF=<_+1^cd)FbceJt|Pr3Z2#UW)pC9hbbpr%#_w3xu>9DucKZSqKjwKC}oa!!=;B zxw)ARh3h~maWUsB$KtMw06>R!GGHKatdM5?eS3TRA2TyEQ!m{-s9LkQG(13d^zuqc z)WBRWF9N%+J^)=)qIgeo*i|*CI?Xfzc;V-hCr|!<<;s9veooizpgD1ug<#0dV!Z literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_shadow_e.png b/data/interfaces/lossless/js/fancybox/fancy_shadow_e.png new file mode 100644 index 0000000000000000000000000000000000000000..2eda0893649371f8d92b92976d8542cdd1b601ed GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxQbwLGjv*Y^lSRZuwe#}JO|p{EaWGAM`~zK|Yh zF7SQ+m+Ig>B0@o-N8?trihfzZ+Vp1~`{zf0o*#X0$hUAi%N$P)W1wCJ22WQ%mvv4F FO#q)zAp-ya literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_shadow_ne.png b/data/interfaces/lossless/js/fancybox/fancy_shadow_ne.png new file mode 100644 index 0000000000000000000000000000000000000000..79f6980a3ba5c43de120d963dbba2516b8f27ac7 GIT binary patch literal 347 zcmV-h0i^zkP)dR9Yb&V8f!h)aDezHAsc|y@|hdQ zYJb}?8~~zFbQ)ku!Ey)KSukutuvdZ@MKMX|x|A3tPyx?YVhN^6z!Mi4Mj2f#%<;nh z2{>?YAzu|{u^;Oq!;f7Z4tPBpJEmZ+^GZ#$=9nz(K+UmK7}|u&EPi%aRt_C3qOFB_ zHc`~N>51%{?ijG?xsHt>MwRChgk=x_z0gh3O2xSL)-6?+2LKZL74~Q>MZjWtwukkA tvjRC=&j+0R$&bLyT7MhBcTXDISHC&xXU0&5CWHV0002ovPDHLkV1fX+la~Mh literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_shadow_nw.png b/data/interfaces/lossless/js/fancybox/fancy_shadow_nw.png new file mode 100644 index 0000000000000000000000000000000000000000..7182cd938ae98e7e28c65a0bc55df576042ff9f5 GIT binary patch literal 324 zcmV-K0lWT*P)2-&4CO{qhKP$XKD&mgeXEM77>~`RA}h@U^Z##eQZVtM>a-K?QT4 z&(8BFf(rD5V61)2I__wHYuRwoaDIqw5Vdr_JSDVr){#J@r;{vbDL|tRyCiirf~4OF zX-l=Ecm>@yR)1nSMt~dy90Zb`^`)TQbhf8jR@fA!l6V$musRyB9Y{p$SCW}!$3==V zk)fW)Xo{s^ez$t+XhmZj;ts)!kTokvmM>z)zt70000 literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_shadow_se.png b/data/interfaces/lossless/js/fancybox/fancy_shadow_se.png new file mode 100644 index 0000000000000000000000000000000000000000..541e3ffd3e88224b34a4d2097c66a780e6060aeb GIT binary patch literal 352 zcmV-m0iXVfP){pM9=`y8<_IvWD02WY@RZ<9dgjNmAB|sYF}Xw>7Sq@O0000eMf9z;FC21=)67q_`W0*0KnS4AR00W2`RGn3i8UfsEegLO@ zPhds?2e1Tm)FK3=bymIAx?X=YFo3Mdh7W?@I#8s#svp!&PB> zwah@Ngd|l0N4SCfzvjtQnd$dZ0yM)N$X+lqdtN!Pt{Wn*_`0U}m1^#r1 mwpaW{;a?9KKt^WrpTAEd?0j1W(3L*`0000P{ho=rRL|66mGO)=r*Hk83F#~lnc)I$ztaD0e0sy?& B8X5oq literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_title_left.png b/data/interfaces/lossless/js/fancybox/fancy_title_left.png new file mode 100644 index 0000000000000000000000000000000000000000..6049223d1ec6af46e100499c01f6489c9e2c6240 GIT binary patch literal 503 zcmV+)0005LNklqcp9&~$uJw{{rUub~E?-XJ#Upm4Fe%-Gl z!u%tb0N102a|s5;SPlQvJlFCTBbvYaK@wIW6Gjx@?i20AlVDJcHNfh25WRlbF6CIq zv9_ZnqOH`}ppaUR0@%ZcM9zpDt2uQM>f+Z#wIMmyuui3DeoYXWE|hQ{D$te=Yhgkq zIvyj+$t8T|S1wITzUftNOe(E+Qjn$kDotY;I5}1lRgwi=?K26ke)djLR5W2|!7CVH zJ-`tuAq|`lK978y+CnqGNCkUke_%Gig ukvFM-ftpWh!il7Wg7kz7Y?7xB@G*olNlgoj4E_Yv!rmdKI;Vst0Ha3^zyJUM literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancy_title_right.png b/data/interfaces/lossless/js/fancybox/fancy_title_right.png new file mode 100644 index 0000000000000000000000000000000000000000..e36d9db2a7c6e570aec993d3665cbc13620115e2 GIT binary patch literal 506 zcmV+)0005ONklxjQB-g>5=x46nGBwseihc$zfzvTFh(=tCRj6cJ4M&ASrCAq-HbokPnRBAHVa2(-|l wYU(UxfYLN;KDSr z1<%~X^wgl##FWaylc_d9MY*0Xjv*Ddw)7kFH5l+P-xcE$W)3=fYI&uMKVzWNT*W|n zhqlRY)q0r(8Mg&Fu_zpISivgz+b7g)c6G&O{~njE??Y{u-MM!p^=9_W+X-j8mhfK? zj`H2Yy;kp%)!V-M3;EVThyB(Z@o88wpMja-vy^g)SgE!<&|(HpS3j3^P6|6H_V+Po~-c6$N>^IEGZ*^681?Yf#{6Zf~e!I`r4y-J+3m*Ue*gH=cNZ zzpU%p61aCO%jt%FHUKW&bEWLcUAGzK?;SYE)E{9#W9O8@uj{O@89qzNU(dkI YVCW(7-@(*!CeU;SPgg&ebxsLQ07`N|KL7v# literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/fancybox.png b/data/interfaces/lossless/js/fancybox/fancybox.png new file mode 100644 index 0000000000000000000000000000000000000000..65e14f68fd83b87f75c22c0c074e7b20bf20a133 GIT binary patch literal 15287 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 ZMt7F5hocMxav&E)U0Fw|QQ>vO{{ZOG+C=~W literal 0 HcmV?d00001 diff --git a/data/interfaces/lossless/js/fancybox/jquery.easing-1.3.pack.js b/data/interfaces/lossless/js/fancybox/jquery.easing-1.3.pack.js new file mode 100644 index 00000000..9028179e --- /dev/null +++ b/data/interfaces/lossless/js/fancybox/jquery.easing-1.3.pack.js @@ -0,0 +1,72 @@ +/* + * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ + * + * Uses the built in easing capabilities added In jQuery 1.1 + * to offer multiple easing options + * + * TERMS OF USE - jQuery Easing + * + * Open source under the BSD License. + * + * Copyright © 2008 George McGinley Smith + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * Neither the name of the author nor the names of contributors may be used to endorse + * or promote products derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * +*/ + +// t: current time, b: begInnIng value, c: change In value, d: duration +eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t')[0], { prop: 0 }), + + isIE6 = $.browser.msie && $.browser.version < 7 && !window.XMLHttpRequest, + + /* + * Private methods + */ + + _abort = function() { + loading.hide(); + + imgPreloader.onerror = imgPreloader.onload = null; + + if (ajaxLoader) { + ajaxLoader.abort(); + } + + tmp.empty(); + }, + + _error = function() { + if (false === selectedOpts.onError(selectedArray, selectedIndex, selectedOpts)) { + loading.hide(); + busy = false; + return; + } + + selectedOpts.titleShow = false; + + selectedOpts.width = 'auto'; + selectedOpts.height = 'auto'; + + tmp.html( '

The requested content cannot be loaded.
Please try again later.

' ); + + _process_inline(); + }, + + _start = function() { + var obj = selectedArray[ selectedIndex ], + href, + type, + title, + str, + emb, + ret; + + _abort(); + + selectedOpts = $.extend({}, $.fn.fancybox.defaults, (typeof $(obj).data('fancybox') == 'undefined' ? selectedOpts : $(obj).data('fancybox'))); + + ret = selectedOpts.onStart(selectedArray, selectedIndex, selectedOpts); + + if (ret === false) { + busy = false; + return; + } else if (typeof ret == 'object') { + selectedOpts = $.extend(selectedOpts, ret); + } + + title = selectedOpts.title || (obj.nodeName ? $(obj).attr('title') : obj.title) || ''; + + if (obj.nodeName && !selectedOpts.orig) { + selectedOpts.orig = $(obj).children("img:first").length ? $(obj).children("img:first") : $(obj); + } + + if (title === '' && selectedOpts.orig && selectedOpts.titleFromAlt) { + title = selectedOpts.orig.attr('alt'); + } + + href = selectedOpts.href || (obj.nodeName ? $(obj).attr('href') : obj.href) || null; + + if ((/^(?:javascript)/i).test(href) || href == '#') { + href = null; + } + + if (selectedOpts.type) { + type = selectedOpts.type; + + if (!href) { + href = selectedOpts.content; + } + + } else if (selectedOpts.content) { + type = 'html'; + + } else if (href) { + if (href.match(imgRegExp)) { + type = 'image'; + + } else if (href.match(swfRegExp)) { + type = 'swf'; + + } else if ($(obj).hasClass("iframe")) { + type = 'iframe'; + + } else if (href.indexOf("#") === 0) { + type = 'inline'; + + } else { + type = 'ajax'; + } + } + + if (!type) { + _error(); + return; + } + + if (type == 'inline') { + obj = href.substr(href.indexOf("#")); + type = $(obj).length > 0 ? 'inline' : 'ajax'; + } + + selectedOpts.type = type; + selectedOpts.href = href; + selectedOpts.title = title; + + if (selectedOpts.autoDimensions) { + if (selectedOpts.type == 'html' || selectedOpts.type == 'inline' || selectedOpts.type == 'ajax') { + selectedOpts.width = 'auto'; + selectedOpts.height = 'auto'; + } else { + selectedOpts.autoDimensions = false; + } + } + + if (selectedOpts.modal) { + selectedOpts.overlayShow = true; + selectedOpts.hideOnOverlayClick = false; + selectedOpts.hideOnContentClick = false; + selectedOpts.enableEscapeButton = false; + selectedOpts.showCloseButton = false; + } + + selectedOpts.padding = parseInt(selectedOpts.padding, 10); + selectedOpts.margin = parseInt(selectedOpts.margin, 10); + + tmp.css('padding', (selectedOpts.padding + selectedOpts.margin)); + + $('.fancybox-inline-tmp').unbind('fancybox-cancel').bind('fancybox-change', function() { + $(this).replaceWith(content.children()); + }); + + switch (type) { + case 'html' : + tmp.html( selectedOpts.content ); + _process_inline(); + break; + + case 'inline' : + if ( $(obj).parent().is('#fancybox-content') === true) { + busy = false; + return; + } + + $('
").css({position:"absolute",visibility:"visible",left:-j*(g/d),top:-i*(h/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:g/d,height:h/c,left:f.left+j*(g/d)+(b.options.mode=="show"?(j-Math.floor(d/2))*(g/d):0),top:f.top+i*(h/c)+(b.options.mode=="show"?(i-Math.floor(c/2))*(h/c):0),opacity:b.options.mode=="show"?0:1}).animate({left:f.left+j*(g/d)+(b.options.mode=="show"?0:(j-Math.floor(d/2))*(g/d)),top:f.top+i*(h/c)+(b.options.mode=="show"?0:(i-Math.floor(c/2))*(h/c)),opacity:b.options.mode=="show"?1:0},b.duration||500);setTimeout(function(){b.options.mode=="show"?e.css({visibility:"visible"}):e.css({visibility:"visible"}).hide(),b.callback&&b.callback.apply(e[0]),e.dequeue(),a("div.ui-effects-explode").remove()},b.duration||500)})}})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.effects.fade.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.effects.fade=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide");c.animate({opacity:d},{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.effects.fold.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.effects.fold=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.size||15,g=!!b.options.horizFirst,h=b.duration?b.duration/2:a.fx.speeds._default/2;a.effects.save(c,d),c.show();var i=a.effects.createWrapper(c).css({overflow:"hidden"}),j=e=="show"!=g,k=j?["width","height"]:["height","width"],l=j?[i.width(),i.height()]:[i.height(),i.width()],m=/([0-9]+)%/.exec(f);m&&(f=parseInt(m[1],10)/100*l[e=="hide"?0:1]),e=="show"&&i.css(g?{height:0,width:f}:{height:f,width:0});var n={},p={};n[k[0]]=e=="show"?l[0]:f,p[k[1]]=e=="show"?l[1]:0,i.animate(n,h,b.options.easing).animate(p,h,b.options.easing,function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.effects.highlight.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.effects.highlight=function(b){return this.queue(function(){var c=a(this),d=["backgroundImage","backgroundColor","opacity"],e=a.effects.setMode(c,b.options.mode||"show"),f={backgroundColor:c.css("backgroundColor")};e=="hide"&&(f.opacity=0),a.effects.save(c,d),c.show().css({backgroundImage:"none",backgroundColor:b.options.color||"#ffff99"}).animate(f,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),e=="show"&&!a.support.opacity&&this.style.removeAttribute("filter"),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.effects.pulsate.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.effects.pulsate=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"show"),e=(b.options.times||5)*2-1,f=b.duration?b.duration/2:a.fx.speeds._default/2,g=c.is(":visible"),h=0;g||(c.css("opacity",0).show(),h=1),(d=="hide"&&g||d=="show"&&!g)&&e--;for(var i=0;i').appendTo(document.body).addClass(b.options.className).css({top:g.top,left:g.left,height:c.innerHeight(),width:c.innerWidth(),position:"absolute"}).animate(f,b.duration,b.options.easing,function(){h.remove(),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}})(jQuery); \ No newline at end of file diff --git a/data/interfaces/lossless/js/libs/jquery.dataTables.min.js b/data/interfaces/lossless/js/libs/jquery.dataTables.min.js new file mode 100644 index 00000000..d3715ffd --- /dev/null +++ b/data/interfaces/lossless/js/libs/jquery.dataTables.min.js @@ -0,0 +1,648 @@ +/* +* File: jquery.dataTables.min.js +* Version: 1.8.1 +* Author: Allan Jardine (www.sprymedia.co.uk) +* Info: www.datatables.net +* +* Copyright 2008-2011 Allan Jardine, all rights reserved. +* +* This source file is free software, under either the GPL v2 license or a +* BSD style license, as supplied with this software. +* +* This source file 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 license files for details. +*/ +(function (i, wa, p) { + i.fn.dataTableSettings = []; + var D = i.fn.dataTableSettings; i.fn.dataTableExt = {}; + var o = i.fn.dataTableExt; + o.sVersion = "1.8.1"; + o.sErrMode = "alert"; + o.iApiIndex = 0; o.oApi = {}; + o.afnFiltering = []; + o.aoFeatures = []; + o.ofnSearch = {}; + o.afnSortData = []; + o.oStdClasses = { + sPagePrevEnabled: "paginate_enabled_previous", + sPagePrevDisabled: "paginate_disabled_previous", + sPageNextEnabled: "paginate_enabled_next", + sPageNextDisabled: "paginate_disabled_next", + sPageJUINext: "", sPageJUIPrev: "", + sPageButton: "paginate_button", + sPageButtonActive: "paginate_active", + sPageButtonStaticDisabled: "paginate_button paginate_button_disabled", + sPageFirst: "first", + sPagePrevious: "previous", + sPageNext: "next", + sPageLast: "last", + sStripOdd: "odd", + sStripEven: "even", + sRowEmpty: "dataTables_empty", + sWrapper: "dataTables_wrapper", + sFilter: "dataTables_filter", + sInfo: "dataTables_info", + sPaging: "dataTables_paginate paging_", + sLength: "dataTables_length", + sProcessing: "dataTables_processing", + sSortAsc: "sorting_asc", + sSortDesc: "sorting_desc", + sSortable: "sorting", + sSortableAsc: "sorting_asc_disabled", + sSortableDesc: "sorting_desc_disabled", + sSortableNone: "sorting_disabled", + sSortColumn: "sorting_", + sSortJUIAsc: "", + sSortJUIDesc: "", + sSortJUI: "", + sSortJUIAscAllowed: "", + sSortJUIDescAllowed: "", sSortJUIWrapper: "", sSortIcon: "", sScrollWrapper: "dataTables_scroll", + sScrollHead: "dataTables_scrollHead", + sScrollHeadInner: "dataTables_scrollHeadInner", + sScrollBody: "dataTables_scrollBody", + sScrollFoot: "dataTables_scrollFoot", + sScrollFootInner: "dataTables_scrollFootInner", + sFooterTH: "" + }; o.oJUIClasses = { sPagePrevEnabled: "fg-button ui-button ui-state-default ui-corner-left", + sPagePrevDisabled: "fg-button ui-button ui-state-default ui-corner-left ui-state-disabled", + sPageNextEnabled: "fg-button ui-button ui-state-default ui-corner-right", + sPageNextDisabled: "fg-button ui-button ui-state-default ui-corner-right ui-state-disabled", + sPageJUINext: "ui-icon ui-icon-circle-arrow-e", + sPageJUIPrev: "ui-icon ui-icon-circle-arrow-w", + sPageButton: "fg-button ui-button ui-state-default", + sPageButtonActive: "fg-button ui-button ui-state-default ui-state-disabled", + sPageButtonStaticDisabled: "fg-button ui-button ui-state-default ui-state-disabled", + sPageFirst: "first ui-corner-tl ui-corner-bl", + sPagePrevious: "previous", + sPageNext: "next", + sPageLast: "last ui-corner-tr ui-corner-br", + sStripOdd: "odd", + sStripEven: "even", + sRowEmpty: "dataTables_empty", + sWrapper: "dataTables_wrapper", + sFilter: "dataTables_filter", + sInfo: "dataTables_info", + sPaging: "dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi ui-buttonset-multi paging_", + sLength: "dataTables_length", + sProcessing: "dataTables_processing", + sSortAsc: "ui-state-default", + sSortDesc: "ui-state-default", + sSortable: "ui-state-default", + sSortableAsc: "ui-state-default", + sSortableDesc: "ui-state-default", + sSortableNone: "ui-state-default", + sSortColumn: "sorting_", + sSortJUIAsc: "css_right ui-icon ui-icon-triangle-1-n", + sSortJUIDesc: "css_right ui-icon ui-icon-triangle-1-s", + sSortJUI: "css_right ui-icon ui-icon-carat-2-n-s", + sSortJUIAscAllowed: "css_right ui-icon ui-icon-carat-1-n", + sSortJUIDescAllowed: "css_right ui-icon ui-icon-carat-1-s", + sSortJUIWrapper: "DataTables_sort_wrapper", + sSortIcon: "DataTables_sort_icon", + sScrollWrapper: "dataTables_scroll", + sScrollHead: "dataTables_scrollHead ui-state-default", + sScrollHeadInner: "dataTables_scrollHeadInner", + sScrollBody: "dataTables_scrollBody", + sScrollFoot: "dataTables_scrollFoot ui-state-default", + sScrollFootInner: "dataTables_scrollFootInner", + sFooterTH: "ui-state-default" + }; o.oPagination = { two_button: { fnInit: function (g, l, r) { + var s, w, y; if (g.bJUI) { + s = p.createElement("a"); w = p.createElement("a"); y = p.createElement("span"); y.className = g.oClasses.sPageJUINext; w.appendChild(y); y = p.createElement("span"); y.className = g.oClasses.sPageJUIPrev; + s.appendChild(y) + } + else { s = p.createElement("div"); w = p.createElement("div") } s.className = g.oClasses.sPagePrevDisabled; w.className = g.oClasses.sPageNextDisabled; s.title = g.oLanguage.oPaginate.sPrevious; w.title = g.oLanguage.oPaginate.sNext; l.appendChild(s); l.appendChild(w); i(s).bind("click.DT", function () { g.oApi._fnPageChange(g, "previous") && r(g) }); i(w).bind("click.DT", function () { g.oApi._fnPageChange(g, "next") && r(g) }); i(s).bind("selectstart.DT", function () { return false }); i(w).bind("selectstart.DT", function () { return false }); + + if (g.sTableId !== "" && typeof g.aanFeatures.p == "undefined") { + l.setAttribute("id", g.sTableId + "_paginate"); + s.setAttribute("id", g.sTableId + "_previous"); + w.setAttribute("id", g.sTableId + "_next") + } + }, fnUpdate: function (g) { + if (g.aanFeatures.p) for (var l = g.aanFeatures.p, r = 0, s = l.length; r < s; r++) + if (l[r].childNodes.length !== 0) { + l[r].childNodes[0].className = g._iDisplayStart === 0 ? g.oClasses.sPagePrevDisabled : g.oClasses.sPagePrevEnabled; l[r].childNodes[1].className = g.fnDisplayEnd() == g.fnRecordsDisplay() ? g.oClasses.sPageNextDisabled : +g.oClasses.sPageNextEnabled + } + } + }, iFullNumbersShowPages: 5, full_numbers: { fnInit: function (g, l, r) { + var s = p.createElement("span"), w = p.createElement("span"), y = p.createElement("span"), G = p.createElement("span"), x = p.createElement("span"); s.innerHTML = g.oLanguage.oPaginate.sFirst; w.innerHTML = g.oLanguage.oPaginate.sPrevious; G.innerHTML = g.oLanguage.oPaginate.sNext; x.innerHTML = g.oLanguage.oPaginate.sLast; var v = g.oClasses; s.className = v.sPageButton + " " + v.sPageFirst; w.className = v.sPageButton + " " + v.sPagePrevious; G.className = +v.sPageButton + " " + v.sPageNext; x.className = v.sPageButton + " " + v.sPageLast; l.appendChild(s); l.appendChild(w); l.appendChild(y); l.appendChild(G); l.appendChild(x); i(s).bind("click.DT", function () { g.oApi._fnPageChange(g, "first") && r(g) }); i(w).bind("click.DT", function () { g.oApi._fnPageChange(g, "previous") && r(g) }); i(G).bind("click.DT", function () { g.oApi._fnPageChange(g, "next") && r(g) }); i(x).bind("click.DT", function () { g.oApi._fnPageChange(g, "last") && r(g) }); i("span", l).bind("mousedown.DT", function () { return false }).bind("selectstart.DT", + +function () { return false }); if (g.sTableId !== "" && typeof g.aanFeatures.p == "undefined") { l.setAttribute("id", g.sTableId + "_paginate"); s.setAttribute("id", g.sTableId + "_first"); w.setAttribute("id", g.sTableId + "_previous"); G.setAttribute("id", g.sTableId + "_next"); x.setAttribute("id", g.sTableId + "_last") } + }, fnUpdate: function (g, l) { + if (g.aanFeatures.p) { + var r = o.oPagination.iFullNumbersShowPages, s = Math.floor(r / 2), w = Math.ceil(g.fnRecordsDisplay() / g._iDisplayLength), y = Math.ceil(g._iDisplayStart / g._iDisplayLength) + 1, G = +"", x, v = g.oClasses; if (w < r) { s = 1; x = w } else if (y <= s) { s = 1; x = r } else if (y >= w - s) { s = w - r + 1; x = w } else { s = y - Math.ceil(r / 2) + 1; x = s + r - 1 } for (r = s; r <= x; r++) G += y != r ? '' + r + "" : '' + r + ""; x = g.aanFeatures.p; var z, Y = function (L) { g._iDisplayStart = (this.innerHTML * 1 - 1) * g._iDisplayLength; l(g); L.preventDefault() }, V = function () { return false }; r = 0; for (s = x.length; r < s; r++) if (x[r].childNodes.length !== 0) { + z = i("span:eq(2)", x[r]); z.html(G); i("span", z).bind("click.DT", +Y).bind("mousedown.DT", V).bind("selectstart.DT", V); z = x[r].getElementsByTagName("span"); z = [z[0], z[1], z[z.length - 2], z[z.length - 1]]; i(z).removeClass(v.sPageButton + " " + v.sPageButtonActive + " " + v.sPageButtonStaticDisabled); if (y == 1) { z[0].className += " " + v.sPageButtonStaticDisabled; z[1].className += " " + v.sPageButtonStaticDisabled } else { z[0].className += " " + v.sPageButton; z[1].className += " " + v.sPageButton } if (w === 0 || y == w || g._iDisplayLength == -1) { + z[2].className += " " + v.sPageButtonStaticDisabled; z[3].className += " " + +v.sPageButtonStaticDisabled + } else { z[2].className += " " + v.sPageButton; z[3].className += " " + v.sPageButton } + } + } + } + } + }; o.oSort = { "string-asc": function (g, l) { if (typeof g != "string") g = ""; if (typeof l != "string") l = ""; g = g.toLowerCase(); l = l.toLowerCase(); return g < l ? -1 : g > l ? 1 : 0 }, "string-desc": function (g, l) { if (typeof g != "string") g = ""; if (typeof l != "string") l = ""; g = g.toLowerCase(); l = l.toLowerCase(); return g < l ? 1 : g > l ? -1 : 0 }, "html-asc": function (g, l) { + g = g.replace(/<.*?>/g, "").toLowerCase(); l = l.replace(/<.*?>/g, "").toLowerCase(); return g < +l ? -1 : g > l ? 1 : 0 + }, "html-desc": function (g, l) { g = g.replace(/<.*?>/g, "").toLowerCase(); l = l.replace(/<.*?>/g, "").toLowerCase(); return g < l ? 1 : g > l ? -1 : 0 }, "date-asc": function (g, l) { g = Date.parse(g); l = Date.parse(l); if (isNaN(g) || g === "") g = Date.parse("01/01/1970 00:00:00"); if (isNaN(l) || l === "") l = Date.parse("01/01/1970 00:00:00"); return g - l }, "date-desc": function (g, l) { + g = Date.parse(g); l = Date.parse(l); if (isNaN(g) || g === "") g = Date.parse("01/01/1970 00:00:00"); if (isNaN(l) || l === "") l = Date.parse("01/01/1970 00:00:00"); return l - +g + }, "numeric-asc": function (g, l) { return (g == "-" || g === "" ? 0 : g * 1) - (l == "-" || l === "" ? 0 : l * 1) }, "numeric-desc": function (g, l) { return (l == "-" || l === "" ? 0 : l * 1) - (g == "-" || g === "" ? 0 : g * 1) } + }; o.aTypes = [function (g) { if (typeof g == "number") return "numeric"; else if (typeof g != "string") return null; var l, r = false; l = g.charAt(0); if ("0123456789-".indexOf(l) == -1) return null; for (var s = 1; s < g.length; s++) { l = g.charAt(s); if ("0123456789.".indexOf(l) == -1) return null; if (l == ".") { if (r) return null; r = true } } return "numeric" }, function (g) { + var l = Date.parse(g); + + if (l !== null && !isNaN(l) || typeof g == "string" && g.length === 0) return "date"; return null + }, function (g) { if (typeof g == "string" && g.indexOf("<") != -1 && g.indexOf(">") != -1) return "html"; return null } ]; o.fnVersionCheck = function (g) { var l = function (x, v) { for (; x.length < v; ) x += "0"; return x }, r = o.sVersion.split("."); g = g.split("."); for (var s = "", w = "", y = 0, G = g.length; y < G; y++) { s += l(r[y], 3); w += l(g[y], 3) } return parseInt(s, 10) >= parseInt(w, 10) }; o._oExternConfig = { iNextUnique: 0 }; i.fn.dataTable = function (g) { + function l() { + this.fnRecordsTotal = +function () { return this.oFeatures.bServerSide ? parseInt(this._iRecordsTotal, 10) : this.aiDisplayMaster.length }; this.fnRecordsDisplay = function () { return this.oFeatures.bServerSide ? parseInt(this._iRecordsDisplay, 10) : this.aiDisplay.length }; this.fnDisplayEnd = function () { return this.oFeatures.bServerSide ? this.oFeatures.bPaginate === false || this._iDisplayLength == -1 ? this._iDisplayStart + this.aiDisplay.length : Math.min(this._iDisplayStart + this._iDisplayLength, this._iRecordsDisplay) : this._iDisplayEnd }; this.sInstance = +this.oInstance = null; this.oFeatures = { bPaginate: true, bLengthChange: true, bFilter: true, bSort: true, bInfo: true, bAutoWidth: true, bProcessing: false, bSortClasses: true, bStateSave: false, bServerSide: false, bDeferRender: false }; this.oScroll = { sX: "", sXInner: "", sY: "", bCollapse: false, bInfinite: false, iLoadGap: 100, iBarWidth: 0, bAutoCss: true }; this.aanFeatures = []; + this.oLanguage = { sProcessing: "Processing...", sLengthMenu: "Show _MENU_ artists per page", sZeroRecords: "No matching records found", sEmptyTable: "", + sLoadingRecords: "Loading...", sInfo: "Showing _START_ to _END_ of _TOTAL_ artists", sInfoEmpty: "Showing 0 to 0 of 0 artists", sInfoFiltered: "(filtered from _MAX_ total artists)", sInfoPostFix: "", sSearch: "Filter:", sUrl: "", oPaginate: { sFirst: "First", sPrevious: "Previous", sNext: "Next", sLast: "Last" }, fnInfoCallback: null + }; this.aoData = []; this.aiDisplay = []; this.aiDisplayMaster = []; this.aoColumns = []; this.aoHeader = []; this.aoFooter = []; this.iNextId = 0; this.asDataSearch = []; this.oPreviousSearch = { sSearch: "", bRegex: false, + bSmart: true + }; this.aoPreSearchCols = []; this.aaSorting = [[0, "asc", 0]]; this.aaSortingFixed = null; this.asStripClasses = []; this.asDestoryStrips = []; this.sDestroyWidth = 0; this.fnFooterCallback = this.fnHeaderCallback = this.fnRowCallback = null; this.aoDrawCallback = []; this.fnInitComplete = this.fnPreDrawCallback = null; this.sTableId = ""; this.nTableWrapper = this.nTBody = this.nTFoot = this.nTHead = this.nTable = null; this.bInitialised = this.bDeferLoading = false; this.aoOpenRows = []; this.sDom = "lfrtip"; this.sPaginationType = "two_button"; + this.iCookieDuration = 7200; this.sCookiePrefix = "SpryMedia_DataTables_"; this.fnCookieCallback = null; this.aoStateSave = []; this.aoStateLoad = []; this.sAjaxSource = this.oLoadedState = null; this.sAjaxDataProp = "aaData"; this.bAjaxDataGet = true; this.jqXHR = null; this.fnServerData = function (a, b, c, d) { d.jqXHR = i.ajax({ url: a, data: b, success: c, dataType: "json", cache: false, error: function (f, e) { e == "parsererror" && alert("DataTables warning: JSON data from server could not be parsed. This is caused by a JSON formatting error.") } }) }; + this.fnFormatNumber = function (a) { if (a < 1E3) return a; else { var b = a + ""; a = b.split(""); var c = ""; b = b.length; for (var d = 0; d < b; d++) { if (d % 3 === 0 && d !== 0) c = "," + c; c = a[b - d - 1] + c } } return c }; this.aLengthMenu = [10, 25, 50, 100]; this.bDrawing = this.iDraw = 0; this.iDrawError = -1; this._iDisplayLength = 10; this._iDisplayStart = 0; this._iDisplayEnd = 10; this._iRecordsDisplay = this._iRecordsTotal = 0; this.bJUI = false; this.oClasses = o.oStdClasses; this.bSortCellsTop = this.bSorted = this.bFiltered = false; this.oInit = null + } function r(a) { + return function () { + var b = +[A(this[o.iApiIndex])].concat(Array.prototype.slice.call(arguments)); return o.oApi[a].apply(this, b) + } + } function s(a) { + var b, c, d = a.iInitDisplayStart; if (a.bInitialised === false) setTimeout(function () { s(a) }, 200); else { + xa(a); V(a); L(a, a.aoHeader); a.nTFoot && L(a, a.aoFooter); + K(a, true); a.oFeatures.bAutoWidth && ea(a); + b = 0; for (c = a.aoColumns.length; b < c; b++) + if (a.aoColumns[b].sWidth !== null) a.aoColumns[b].nTh.style.width = u(a.aoColumns[b].sWidth); + if (a.oFeatures.bSort) R(a); + else if (a.oFeatures.bFilter) M(a, a.oPreviousSearch); + else { a.aiDisplay = a.aiDisplayMaster.slice(); E(a); C(a) } if (a.sAjaxSource !== null && !a.oFeatures.bServerSide) a.fnServerData.call(a.oInstance, a.sAjaxSource, [], function (f) { var e = f; if (a.sAjaxDataProp !== "") e = Z(a.sAjaxDataProp)(f); for (b = 0; b < e.length; b++) v(a, e[b]); a.iInitDisplayStart = d; if (a.oFeatures.bSort) R(a); else { a.aiDisplay = a.aiDisplayMaster.slice(); E(a); C(a) } K(a, false); w(a, f) }, a); else if (!a.oFeatures.bServerSide) { K(a, false); w(a) } + } + } function w(a, b) { + a._bInitComplete = true; if (typeof a.fnInitComplete == "function") typeof b != +"undefined" ? a.fnInitComplete.call(a.oInstance, a, b) : a.fnInitComplete.call(a.oInstance, a) + } function y(a, b, c) { + n(a.oLanguage, b, "sProcessing"); n(a.oLanguage, b, "sLengthMenu"); n(a.oLanguage, b, "sEmptyTable"); n(a.oLanguage, b, "sLoadingRecords"); n(a.oLanguage, b, "sZeroRecords"); n(a.oLanguage, b, "sInfo"); n(a.oLanguage, b, "sInfoEmpty"); n(a.oLanguage, b, "sInfoFiltered"); n(a.oLanguage, b, "sInfoPostFix"); n(a.oLanguage, b, "sSearch"); if (typeof b.oPaginate != "undefined") { + n(a.oLanguage.oPaginate, b.oPaginate, "sFirst"); n(a.oLanguage.oPaginate, +b.oPaginate, "sPrevious"); n(a.oLanguage.oPaginate, b.oPaginate, "sNext"); n(a.oLanguage.oPaginate, b.oPaginate, "sLast") + } typeof b.sEmptyTable == "undefined" && typeof b.sZeroRecords != "undefined" && n(a.oLanguage, b, "sZeroRecords", "sEmptyTable"); typeof b.sLoadingRecords == "undefined" && typeof b.sZeroRecords != "undefined" && n(a.oLanguage, b, "sZeroRecords", "sLoadingRecords"); c && s(a) + } function G(a, b) { + var c = a.aoColumns.length; b = { sType: null, _bAutoType: true, bVisible: true, bSearchable: true, bSortable: true, asSorting: ["asc", "desc"], + sSortingClass: a.oClasses.sSortable, sSortingClassJUI: a.oClasses.sSortJUI, sTitle: b ? b.innerHTML : "", sName: "", sWidth: null, sWidthOrig: null, sClass: null, fnRender: null, bUseRendered: true, iDataSort: c, mDataProp: c, fnGetData: null, fnSetData: null, sSortDataType: "std", sDefaultContent: null, sContentPadding: "", nTh: b ? b : p.createElement("th"), nTf: null + }; a.aoColumns.push(b); if (typeof a.aoPreSearchCols[c] == "undefined" || a.aoPreSearchCols[c] === null) a.aoPreSearchCols[c] = { sSearch: "", bRegex: false, bSmart: true }; else { + if (typeof a.aoPreSearchCols[c].bRegex == +"undefined") a.aoPreSearchCols[c].bRegex = true; if (typeof a.aoPreSearchCols[c].bSmart == "undefined") a.aoPreSearchCols[c].bSmart = true + } x(a, c, null) + } function x(a, b, c) { + b = a.aoColumns[b]; if (typeof c != "undefined" && c !== null) { + if (typeof c.sType != "undefined") { b.sType = c.sType; b._bAutoType = false } n(b, c, "bVisible"); n(b, c, "bSearchable"); n(b, c, "bSortable"); n(b, c, "sTitle"); n(b, c, "sName"); n(b, c, "sWidth"); n(b, c, "sWidth", "sWidthOrig"); n(b, c, "sClass"); n(b, c, "fnRender"); n(b, c, "bUseRendered"); n(b, c, "iDataSort"); n(b, c, "mDataProp"); + n(b, c, "asSorting"); n(b, c, "sSortDataType"); n(b, c, "sDefaultContent"); n(b, c, "sContentPadding") + } b.fnGetData = Z(b.mDataProp); b.fnSetData = ya(b.mDataProp); if (!a.oFeatures.bSort) b.bSortable = false; if (!b.bSortable || i.inArray("asc", b.asSorting) == -1 && i.inArray("desc", b.asSorting) == -1) { b.sSortingClass = a.oClasses.sSortableNone; b.sSortingClassJUI = "" } else if (b.bSortable || i.inArray("asc", b.asSorting) == -1 && i.inArray("desc", b.asSorting) == -1) { b.sSortingClass = a.oClasses.sSortable; b.sSortingClassJUI = a.oClasses.sSortJUI } else if (i.inArray("asc", +b.asSorting) != -1 && i.inArray("desc", b.asSorting) == -1) { b.sSortingClass = a.oClasses.sSortableAsc; b.sSortingClassJUI = a.oClasses.sSortJUIAscAllowed } else if (i.inArray("asc", b.asSorting) == -1 && i.inArray("desc", b.asSorting) != -1) { b.sSortingClass = a.oClasses.sSortableDesc; b.sSortingClassJUI = a.oClasses.sSortJUIDescAllowed } + } function v(a, b) { + var c; c = typeof b.length == "number" ? b.slice() : i.extend(true, {}, b); b = a.aoData.length; var d = { nTr: null, _iId: a.iNextId++, _aData: c, _anHidden: [], _sRowStripe: "" }; a.aoData.push(d); for (var f, +e = 0, h = a.aoColumns.length; e < h; e++) { c = a.aoColumns[e]; typeof c.fnRender == "function" && c.bUseRendered && c.mDataProp !== null && N(a, b, e, c.fnRender({ iDataRow: b, iDataColumn: e, aData: d._aData, oSettings: a })); if (c._bAutoType && c.sType != "string") { f = H(a, b, e, "type"); if (f !== null && f !== "") { f = fa(f); if (c.sType === null) c.sType = f; else if (c.sType != f) c.sType = "string" } } } a.aiDisplayMaster.push(b); a.oFeatures.bDeferRender || z(a, b); return b + } function z(a, b) { + var c = a.aoData[b], d; if (c.nTr === null) { + c.nTr = p.createElement("tr"); typeof c._aData.DT_RowId != +"undefined" && c.nTr.setAttribute("id", c._aData.DT_RowId); typeof c._aData.DT_RowClass != "undefined" && i(c.nTr).addClass(c._aData.DT_RowClass); for (var f = 0, e = a.aoColumns.length; f < e; f++) { + var h = a.aoColumns[f]; d = p.createElement("td"); d.innerHTML = typeof h.fnRender == "function" && (!h.bUseRendered || h.mDataProp === null) ? h.fnRender({ iDataRow: b, iDataColumn: f, aData: c._aData, oSettings: a }) : H(a, b, f, "display"); if (h.sClass !== null) d.className = h.sClass; if (h.bVisible) { c.nTr.appendChild(d); c._anHidden[f] = null } else c._anHidden[f] = +d + } + } + } function Y(a) { + var b, c, d, f, e, h, j, k, m; if (a.bDeferLoading || a.sAjaxSource === null) { j = a.nTBody.childNodes; b = 0; for (c = j.length; b < c; b++) if (j[b].nodeName.toUpperCase() == "TR") { k = a.aoData.length; a.aoData.push({ nTr: j[b], _iId: a.iNextId++, _aData: [], _anHidden: [], _sRowStripe: "" }); a.aiDisplayMaster.push(k); h = j[b].childNodes; d = e = 0; for (f = h.length; d < f; d++) { m = h[d].nodeName.toUpperCase(); if (m == "TD" || m == "TH") { N(a, k, e, i.trim(h[d].innerHTML)); e++ } } } } j = $(a); h = []; b = 0; for (c = j.length; b < c; b++) { + d = 0; for (f = j[b].childNodes.length; d < +f; d++) { e = j[b].childNodes[d]; m = e.nodeName.toUpperCase(); if (m == "TD" || m == "TH") h.push(e) } + } h.length != j.length * a.aoColumns.length && J(a, 1, "Unexpected number of TD elements. Expected " + j.length * a.aoColumns.length + " and got " + h.length + ". DataTables does not support rowspan / colspan in the table body, and there must be one cell for each row/column combination."); d = 0; for (f = a.aoColumns.length; d < f; d++) { + if (a.aoColumns[d].sTitle === null) a.aoColumns[d].sTitle = a.aoColumns[d].nTh.innerHTML; j = a.aoColumns[d]._bAutoType; + m = typeof a.aoColumns[d].fnRender == "function"; e = a.aoColumns[d].sClass !== null; k = a.aoColumns[d].bVisible; var t, q; if (j || m || e || !k) { + b = 0; for (c = a.aoData.length; b < c; b++) { + t = h[b * f + d]; if (j && a.aoColumns[d].sType != "string") { q = H(a, b, d, "type"); if (q !== "") { q = fa(q); if (a.aoColumns[d].sType === null) a.aoColumns[d].sType = q; else if (a.aoColumns[d].sType != q) a.aoColumns[d].sType = "string" } } if (m) { + q = a.aoColumns[d].fnRender({ iDataRow: b, iDataColumn: d, aData: a.aoData[b]._aData, oSettings: a }); t.innerHTML = q; a.aoColumns[d].bUseRendered && +N(a, b, d, q) + } if (e) t.className += " " + a.aoColumns[d].sClass; if (k) a.aoData[b]._anHidden[d] = null; else { a.aoData[b]._anHidden[d] = t; t.parentNode.removeChild(t) } + } + } + } + } function V(a) { + var b, c, d; a.nTHead.getElementsByTagName("tr"); if (a.nTHead.getElementsByTagName("th").length !== 0) { b = 0; for (d = a.aoColumns.length; b < d; b++) { c = a.aoColumns[b].nTh; a.aoColumns[b].sClass !== null && i(c).addClass(a.aoColumns[b].sClass); if (a.aoColumns[b].sTitle != c.innerHTML) c.innerHTML = a.aoColumns[b].sTitle } } else { + var f = p.createElement("tr"); b = 0; + for (d = a.aoColumns.length; b < d; b++) { c = a.aoColumns[b].nTh; c.innerHTML = a.aoColumns[b].sTitle; a.aoColumns[b].sClass !== null && i(c).addClass(a.aoColumns[b].sClass); f.appendChild(c) } i(a.nTHead).html("")[0].appendChild(f); W(a.aoHeader, a.nTHead) + } if (a.bJUI) { b = 0; for (d = a.aoColumns.length; b < d; b++) { c = a.aoColumns[b].nTh; f = p.createElement("div"); f.className = a.oClasses.sSortJUIWrapper; i(c).contents().appendTo(f); var e = p.createElement("span"); e.className = a.oClasses.sSortIcon; f.appendChild(e); c.appendChild(f) } } d = function () { + this.onselectstart = +function () { return false }; return false + }; if (a.oFeatures.bSort) for (b = 0; b < a.aoColumns.length; b++) if (a.aoColumns[b].bSortable !== false) { ga(a, a.aoColumns[b].nTh, b); i(a.aoColumns[b].nTh).bind("mousedown.DT", d) } else i(a.aoColumns[b].nTh).addClass(a.oClasses.sSortableNone); a.oClasses.sFooterTH !== "" && i(">tr>th", a.nTFoot).addClass(a.oClasses.sFooterTH); if (a.nTFoot !== null) { c = S(a, null, a.aoFooter); b = 0; for (d = a.aoColumns.length; b < d; b++) if (typeof c[b] != "undefined") a.aoColumns[b].nTf = c[b] } + } function L(a, b, c) { + var d, f, +e, h = [], j = [], k = a.aoColumns.length; if (typeof c == "undefined") c = false; d = 0; for (f = b.length; d < f; d++) { h[d] = b[d].slice(); h[d].nTr = b[d].nTr; for (e = k - 1; e >= 0; e--) !a.aoColumns[e].bVisible && !c && h[d].splice(e, 1); j.push([]) } d = 0; for (f = h.length; d < f; d++) { + if (h[d].nTr) { a = 0; for (e = h[d].nTr.childNodes.length; a < e; a++) h[d].nTr.removeChild(h[d].nTr.childNodes[0]) } e = 0; for (b = h[d].length; e < b; e++) { + k = c = 1; if (typeof j[d][e] == "undefined") { + h[d].nTr.appendChild(h[d][e].cell); for (j[d][e] = 1; typeof h[d + c] != "undefined" && h[d][e].cell == h[d + +c][e].cell; ) { j[d + c][e] = 1; c++ } for (; typeof h[d][e + k] != "undefined" && h[d][e].cell == h[d][e + k].cell; ) { for (a = 0; a < c; a++) j[d + a][e + k] = 1; k++ } h[d][e].cell.setAttribute("rowspan", c); h[d][e].cell.setAttribute("colspan", k) + } + } + } + } function C(a) { + var b, c, d = [], f = 0, e = false; b = a.asStripClasses.length; c = a.aoOpenRows.length; if (!(a.fnPreDrawCallback !== null && a.fnPreDrawCallback.call(a.oInstance, a) === false)) { + a.bDrawing = true; if (typeof a.iInitDisplayStart != "undefined" && a.iInitDisplayStart != -1) { + a._iDisplayStart = a.oFeatures.bServerSide ? +a.iInitDisplayStart : a.iInitDisplayStart >= a.fnRecordsDisplay() ? 0 : a.iInitDisplayStart; a.iInitDisplayStart = -1; E(a) + } if (a.bDeferLoading) { a.bDeferLoading = false; a.iDraw++ } else if (a.oFeatures.bServerSide) { if (!a.bDestroying && !za(a)) return } else a.iDraw++; if (a.aiDisplay.length !== 0) { + var h = a._iDisplayStart, j = a._iDisplayEnd; if (a.oFeatures.bServerSide) { h = 0; j = a.aoData.length } for (h = h; h < j; h++) { + var k = a.aoData[a.aiDisplay[h]]; k.nTr === null && z(a, a.aiDisplay[h]); var m = k.nTr; if (b !== 0) { + var t = a.asStripClasses[f % b]; if (k._sRowStripe != +t) { i(m).removeClass(k._sRowStripe).addClass(t); k._sRowStripe = t } + } if (typeof a.fnRowCallback == "function") { m = a.fnRowCallback.call(a.oInstance, m, a.aoData[a.aiDisplay[h]]._aData, f, h); if (!m && !e) { J(a, 0, "A node was not returned by fnRowCallback"); e = true } } d.push(m); f++; if (c !== 0) for (k = 0; k < c; k++) m == a.aoOpenRows[k].nParent && d.push(a.aoOpenRows[k].nTr) + } + } else { + d[0] = p.createElement("tr"); if (typeof a.asStripClasses[0] != "undefined") d[0].className = a.asStripClasses[0]; e = a.oLanguage.sZeroRecords.replace("_MAX_", a.fnFormatNumber(a.fnRecordsTotal())); + if (a.iDraw == 1 && a.sAjaxSource !== null && !a.oFeatures.bServerSide) e = a.oLanguage.sLoadingRecords; else if (typeof a.oLanguage.sEmptyTable != "undefined" && a.fnRecordsTotal() === 0) e = a.oLanguage.sEmptyTable; b = p.createElement("td"); b.setAttribute("valign", "top"); b.colSpan = X(a); b.className = a.oClasses.sRowEmpty; b.innerHTML = e; d[f].appendChild(b) + } typeof a.fnHeaderCallback == "function" && a.fnHeaderCallback.call(a.oInstance, i(">tr", a.nTHead)[0], aa(a), a._iDisplayStart, a.fnDisplayEnd(), a.aiDisplay); typeof a.fnFooterCallback == +"function" && a.fnFooterCallback.call(a.oInstance, i(">tr", a.nTFoot)[0], aa(a), a._iDisplayStart, a.fnDisplayEnd(), a.aiDisplay); f = p.createDocumentFragment(); b = p.createDocumentFragment(); if (a.nTBody) { e = a.nTBody.parentNode; b.appendChild(a.nTBody); if (!a.oScroll.bInfinite || !a._bInitComplete || a.bSorted || a.bFiltered) { c = a.nTBody.childNodes; for (b = c.length - 1; b >= 0; b--) c[b].parentNode.removeChild(c[b]) } b = 0; for (c = d.length; b < c; b++) f.appendChild(d[b]); a.nTBody.appendChild(f); e !== null && e.appendChild(a.nTBody) } for (b = a.aoDrawCallback.length - +1; b >= 0; b--) a.aoDrawCallback[b].fn.call(a.oInstance, a); a.bSorted = false; a.bFiltered = false; a.bDrawing = false; if (a.oFeatures.bServerSide) { K(a, false); typeof a._bInitComplete == "undefined" && w(a) } + } + } function ba(a) { if (a.oFeatures.bSort) R(a, a.oPreviousSearch); else if (a.oFeatures.bFilter) M(a, a.oPreviousSearch); else { E(a); C(a) } } function za(a) { + if (a.bAjaxDataGet) { + K(a, true); var b = a.aoColumns.length, c = [], d, f; a.iDraw++; c.push({ name: "sEcho", value: a.iDraw }); c.push({ name: "iColumns", value: b }); c.push({ name: "sColumns", value: ha(a) }); + c.push({ name: "iDisplayStart", value: a._iDisplayStart }); c.push({ name: "iDisplayLength", value: a.oFeatures.bPaginate !== false ? a._iDisplayLength : -1 }); for (f = 0; f < b; f++) { d = a.aoColumns[f].mDataProp; c.push({ name: "mDataProp_" + f, value: typeof d == "function" ? "function" : d }) } if (a.oFeatures.bFilter !== false) { + c.push({ name: "sSearch", value: a.oPreviousSearch.sSearch }); c.push({ name: "bRegex", value: a.oPreviousSearch.bRegex }); for (f = 0; f < b; f++) { + c.push({ name: "sSearch_" + f, value: a.aoPreSearchCols[f].sSearch }); c.push({ name: "bRegex_" + +f, value: a.aoPreSearchCols[f].bRegex + }); c.push({ name: "bSearchable_" + f, value: a.aoColumns[f].bSearchable }) + } + } if (a.oFeatures.bSort !== false) { + d = a.aaSortingFixed !== null ? a.aaSortingFixed.length : 0; var e = a.aaSorting.length; c.push({ name: "iSortingCols", value: d + e }); for (f = 0; f < d; f++) { c.push({ name: "iSortCol_" + f, value: a.aaSortingFixed[f][0] }); c.push({ name: "sSortDir_" + f, value: a.aaSortingFixed[f][1] }) } for (f = 0; f < e; f++) { c.push({ name: "iSortCol_" + (f + d), value: a.aaSorting[f][0] }); c.push({ name: "sSortDir_" + (f + d), value: a.aaSorting[f][1] }) } for (f = +0; f < b; f++) c.push({ name: "bSortable_" + f, value: a.aoColumns[f].bSortable }) + } a.fnServerData.call(a.oInstance, a.sAjaxSource, c, function (h) { Aa(a, h) }, a); return false + } else return true + } function Aa(a, b) { + if (typeof b.sEcho != "undefined") if (b.sEcho * 1 < a.iDraw) return; else a.iDraw = b.sEcho * 1; if (!a.oScroll.bInfinite || a.oScroll.bInfinite && (a.bSorted || a.bFiltered)) ia(a); a._iRecordsTotal = b.iTotalRecords; a._iRecordsDisplay = b.iTotalDisplayRecords; var c = ha(a); if (c = typeof b.sColumns != "undefined" && c !== "" && b.sColumns != c) var d = +Ba(a, b.sColumns); b = Z(a.sAjaxDataProp)(b); for (var f = 0, e = b.length; f < e; f++) if (c) { for (var h = [], j = 0, k = a.aoColumns.length; j < k; j++) h.push(b[f][d[j]]); v(a, h) } else v(a, b[f]); a.aiDisplay = a.aiDisplayMaster.slice(); a.bAjaxDataGet = false; C(a); a.bAjaxDataGet = true; K(a, false) + } function xa(a) { + var b = p.createElement("div"); a.nTable.parentNode.insertBefore(b, a.nTable); a.nTableWrapper = p.createElement("div"); a.nTableWrapper.className = a.oClasses.sWrapper; a.sTableId !== "" && a.nTableWrapper.setAttribute("id", a.sTableId + "_wrapper"); + a.nTableReinsertBefore = a.nTable.nextSibling; for (var c = a.nTableWrapper, d = a.sDom.split(""), f, e, h, j, k, m, t, q = 0; q < d.length; q++) { + e = 0; h = d[q]; if (h == "<") { + j = p.createElement("div"); k = d[q + 1]; if (k == "'" || k == '"') { + m = ""; for (t = 2; d[q + t] != k; ) { m += d[q + t]; t++ } if (m == "H") m = "fg-toolbar ui-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix"; else if (m == "F") m = "fg-toolbar ui-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix"; if (m.indexOf(".") != -1) { + k = m.split("."); j.setAttribute("id", k[0].substr(1, +k[0].length - 1)); j.className = k[1] + } else if (m.charAt(0) == "#") j.setAttribute("id", m.substr(1, m.length - 1)); else j.className = m; q += t + } c.appendChild(j); c = j + } else if (h == ">") c = c.parentNode; else if (h == "l" && a.oFeatures.bPaginate && a.oFeatures.bLengthChange) { f = Ca(a); e = 1 } else if (h == "f" && a.oFeatures.bFilter) { f = Da(a); e = 1 } else if (h == "r" && a.oFeatures.bProcessing) { f = Ea(a); e = 1 } else if (h == "t") { f = Fa(a); e = 1 } else if (h == "i" && a.oFeatures.bInfo) { f = Ga(a); e = 1 } else if (h == "p" && a.oFeatures.bPaginate) { f = Ha(a); e = 1 } else if (o.aoFeatures.length !== +0) { j = o.aoFeatures; t = 0; for (k = j.length; t < k; t++) if (h == j[t].cFeature) { if (f = j[t].fnInit(a)) e = 1; break } } if (e == 1 && f !== null) { if (typeof a.aanFeatures[h] != "object") a.aanFeatures[h] = []; a.aanFeatures[h].push(f); c.appendChild(f) } + } b.parentNode.replaceChild(a.nTableWrapper, b) + } function Fa(a) { + if (a.oScroll.sX === "" && a.oScroll.sY === "") return a.nTable; var b = p.createElement("div"), c = p.createElement("div"), d = p.createElement("div"), f = p.createElement("div"), e = p.createElement("div"), h = p.createElement("div"), j = a.nTable.cloneNode(false), +k = a.nTable.cloneNode(false), m = a.nTable.getElementsByTagName("thead")[0], t = a.nTable.getElementsByTagName("tfoot").length === 0 ? null : a.nTable.getElementsByTagName("tfoot")[0], q = typeof g.bJQueryUI != "undefined" && g.bJQueryUI ? o.oJUIClasses : o.oStdClasses; c.appendChild(d); e.appendChild(h); f.appendChild(a.nTable); b.appendChild(c); b.appendChild(f); d.appendChild(j); j.appendChild(m); if (t !== null) { b.appendChild(e); h.appendChild(k); k.appendChild(t) } b.className = q.sScrollWrapper; c.className = q.sScrollHead; d.className = +q.sScrollHeadInner; f.className = q.sScrollBody; e.className = q.sScrollFoot; h.className = q.sScrollFootInner; if (a.oScroll.bAutoCss) { c.style.overflow = "hidden"; c.style.position = "relative"; e.style.overflow = "hidden"; f.style.overflow = "auto" } c.style.border = "0"; c.style.width = "100%"; e.style.border = "0"; d.style.width = "150%"; j.removeAttribute("id"); j.style.marginLeft = "0"; a.nTable.style.marginLeft = "0"; if (t !== null) { k.removeAttribute("id"); k.style.marginLeft = "0" } d = i(">caption", a.nTable); h = 0; for (k = d.length; h < k; h++) j.appendChild(d[h]); + if (a.oScroll.sX !== "") { c.style.width = u(a.oScroll.sX); f.style.width = u(a.oScroll.sX); if (t !== null) e.style.width = u(a.oScroll.sX); i(f).scroll(function () { c.scrollLeft = this.scrollLeft; if (t !== null) e.scrollLeft = this.scrollLeft }) } if (a.oScroll.sY !== "") f.style.height = u(a.oScroll.sY); a.aoDrawCallback.push({ fn: Ia, sName: "scrolling" }); a.oScroll.bInfinite && i(f).scroll(function () { + if (!a.bDrawing) if (i(this).scrollTop() + i(this).height() > i(a.nTable).height() - a.oScroll.iLoadGap) if (a.fnDisplayEnd() < a.fnRecordsDisplay()) { + ja(a, +"next"); E(a); C(a) + } + }); a.nScrollHead = c; a.nScrollFoot = e; return b + } function Ia(a) { + var b = a.nScrollHead.getElementsByTagName("div")[0], c = b.getElementsByTagName("table")[0], d = a.nTable.parentNode, f, e, h, j, k, m, t, q, I = []; h = a.nTable.getElementsByTagName("thead"); h.length > 0 && a.nTable.removeChild(h[0]); if (a.nTFoot !== null) { k = a.nTable.getElementsByTagName("tfoot"); k.length > 0 && a.nTable.removeChild(k[0]) } h = a.nTHead.cloneNode(true); a.nTable.insertBefore(h, a.nTable.childNodes[0]); if (a.nTFoot !== null) { + k = a.nTFoot.cloneNode(true); + a.nTable.insertBefore(k, a.nTable.childNodes[1]) + } if (a.oScroll.sX === "") { d.style.width = "100%"; b.parentNode.style.width = "100%" } var O = S(a, h); f = 0; for (e = O.length; f < e; f++) { t = Ja(a, f); O[f].style.width = a.aoColumns[t].sWidth } a.nTFoot !== null && P(function (B) { B.style.width = "" }, k.getElementsByTagName("tr")); f = i(a.nTable).outerWidth(); if (a.oScroll.sX === "") { a.nTable.style.width = "100%"; if (i.browser.msie && i.browser.version <= 7) a.nTable.style.width = u(i(a.nTable).outerWidth() - a.oScroll.iBarWidth) } else if (a.oScroll.sXInner !== +"") a.nTable.style.width = u(a.oScroll.sXInner); else if (f == i(d).width() && i(d).height() < i(a.nTable).height()) { a.nTable.style.width = u(f - a.oScroll.iBarWidth); if (i(a.nTable).outerWidth() > f - a.oScroll.iBarWidth) a.nTable.style.width = u(f) } else a.nTable.style.width = u(f); f = i(a.nTable).outerWidth(); if (a.oScroll.sX === "") { d.style.width = u(f + a.oScroll.iBarWidth); b.parentNode.style.width = u(f + a.oScroll.iBarWidth) } e = a.nTHead.getElementsByTagName("tr"); h = h.getElementsByTagName("tr"); P(function (B, F) { + m = B.style; m.paddingTop = +"0"; m.paddingBottom = "0"; m.borderTopWidth = "0"; m.borderBottomWidth = "0"; m.height = 0; q = i(B).width(); F.style.width = u(q); I.push(q) +}, h, e); i(h).height(0); if (a.nTFoot !== null) { j = k.getElementsByTagName("tr"); k = a.nTFoot.getElementsByTagName("tr"); P(function (B, F) { m = B.style; m.paddingTop = "0"; m.paddingBottom = "0"; m.borderTopWidth = "0"; m.borderBottomWidth = "0"; m.height = 0; q = i(B).width(); F.style.width = u(q); I.push(q) }, j, k); i(j).height(0) } P(function (B) { B.innerHTML = ""; B.style.width = u(I.shift()) }, h); a.nTFoot !== null && P(function (B) { + B.innerHTML = +""; B.style.width = u(I.shift()) +}, j); if (i(a.nTable).outerWidth() < f) if (a.oScroll.sX === "") J(a, 1, "The table cannot fit into the current element which will cause column misalignment. It is suggested that you enable x-scrolling or increase the width the table has in which to be drawn"); else a.oScroll.sXInner !== "" && J(a, 1, "The table cannot fit into the current element which will cause column misalignment. It is suggested that you increase the sScrollXInner property to allow it to draw in a larger area, or simply remove that parameter to allow automatic calculation"); + if (a.oScroll.sY === "") if (i.browser.msie && i.browser.version <= 7) d.style.height = u(a.nTable.offsetHeight + a.oScroll.iBarWidth); if (a.oScroll.sY !== "" && a.oScroll.bCollapse) { d.style.height = u(a.oScroll.sY); j = a.oScroll.sX !== "" && a.nTable.offsetWidth > d.offsetWidth ? a.oScroll.iBarWidth : 0; if (a.nTable.offsetHeight < d.offsetHeight) d.style.height = u(i(a.nTable).height() + j) } j = i(a.nTable).outerWidth(); c.style.width = u(j); b.style.width = u(j + a.oScroll.iBarWidth); if (a.nTFoot !== null) { + b = a.nScrollFoot.getElementsByTagName("div")[0]; + c = b.getElementsByTagName("table")[0]; b.style.width = u(a.nTable.offsetWidth + a.oScroll.iBarWidth); c.style.width = u(a.nTable.offsetWidth) + } if (a.bSorted || a.bFiltered) d.scrollTop = 0 + } + // sFilter + function ca(a) { if (a.oFeatures.bAutoWidth === false) return false; ea(a); for (var b = 0, c = a.aoColumns.length; b < c; b++) a.aoColumns[b].nTh.style.width = a.aoColumns[b].sWidth } function Da(a) { + var b = a.oLanguage.sSearch; + b = b.indexOf("_INPUT_") !== -1 ? b.replace("_INPUT_", '') : b === "" ? '' : b + ' '; + var c = p.createElement("div"); + c.className = a.oClasses.sFilter; + c.innerHTML = "
" + b + "
"; + a.sTableId !== "" && typeof a.aanFeatures.f == "undefined" && c.setAttribute("id", a.sTableId + "_filter"); + b = i("input", c); + b.val(a.oPreviousSearch.sSearch.replace('"', """)); + b.bind("keyup.DT", function () { + for (var d = a.aanFeatures.f, f = 0, e = d.length; + f < e; f++) + d[f] != this.parentNode && i("input", d[f]).val(this.value); + this.value != a.oPreviousSearch.sSearch && M(a, { + sSearch: this.value, bRegex: a.oPreviousSearch.bRegex, bSmart: a.oPreviousSearch.bSmart + }) + }); + b.bind("keypress.DT", function (d) { + if (d.keyCode == 13) return false + }); + return c + + } function M(a, b, c) { Ka(a, b.sSearch, c, b.bRegex, b.bSmart); for (b = 0; b < a.aoPreSearchCols.length; b++) La(a, a.aoPreSearchCols[b].sSearch, b, a.aoPreSearchCols[b].bRegex, a.aoPreSearchCols[b].bSmart); o.afnFiltering.length !== 0 && Ma(a); a.bFiltered = true; a._iDisplayStart = 0; E(a); C(a); ka(a, 0) } function Ma(a) { + for (var b = o.afnFiltering, c = 0, d = b.length; c < d; c++) for (var f = 0, e = 0, h = a.aiDisplay.length; e < h; e++) { + var j = a.aiDisplay[e - f]; + if (!b[c](a, da(a, j, "filter"), + j)) { + a.aiDisplay.splice(e - f, 1); f++ + } + } + } function La(a, b, c, d, f) { if (b !== "") { var e = 0; b = la(b, d, f); for (d = a.aiDisplay.length - 1; d >= 0; d--) { f = ma(H(a, a.aiDisplay[d], c, "filter"), a.aoColumns[c].sType); if (!b.test(f)) { a.aiDisplay.splice(d, 1); e++ } } } } function Ka(a, b, c, d, f) { + var e = la(b, d, f); if (typeof c == "undefined" || c === null) c = 0; if (o.afnFiltering.length !== 0) c = 1; if (b.length <= 0) { a.aiDisplay.splice(0, a.aiDisplay.length); a.aiDisplay = a.aiDisplayMaster.slice() } else if (a.aiDisplay.length == a.aiDisplayMaster.length || a.oPreviousSearch.sSearch.length > +b.length || c == 1 || b.indexOf(a.oPreviousSearch.sSearch) !== 0) { a.aiDisplay.splice(0, a.aiDisplay.length); ka(a, 1); for (c = 0; c < a.aiDisplayMaster.length; c++) e.test(a.asDataSearch[c]) && a.aiDisplay.push(a.aiDisplayMaster[c]) } else { var h = 0; for (c = 0; c < a.asDataSearch.length; c++) if (!e.test(a.asDataSearch[c])) { a.aiDisplay.splice(c - h, 1); h++ } } a.oPreviousSearch.sSearch = b; a.oPreviousSearch.bRegex = d; a.oPreviousSearch.bSmart = f + } function ka(a, b) { + a.asDataSearch.splice(0, a.asDataSearch.length); b = typeof b != "undefined" && b == 1 ? a.aiDisplayMaster : +a.aiDisplay; for (var c = 0, d = b.length; c < d; c++) a.asDataSearch[c] = na(a, da(a, b[c], "filter")) + } function na(a, b) { var c = ""; if (typeof a.__nTmpFilter == "undefined") a.__nTmpFilter = p.createElement("div"); for (var d = a.__nTmpFilter, f = 0, e = a.aoColumns.length; f < e; f++) if (a.aoColumns[f].bSearchable) c += ma(b[f], a.aoColumns[f].sType) + " "; if (c.indexOf("&") !== -1) { d.innerHTML = c; c = d.textContent ? d.textContent : d.innerText; c = c.replace(/\n/g, " ").replace(/\r/g, "") } return c } function la(a, b, c) { + if (c) { + a = b ? a.split(" ") : oa(a).split(" "); + a = "^(?=.*?" + a.join(")(?=.*?") + ").*$"; return new RegExp(a, "i") + } else { a = b ? a : oa(a); return new RegExp(a, "i") } + } function ma(a, b) { if (typeof o.ofnSearch[b] == "function") return o.ofnSearch[b](a); else if (b == "html") return a.replace(/\n/g, " ").replace(/<.*?>/g, ""); else if (typeof a == "string") return a.replace(/\n/g, " "); else if (a === null) return ""; return a } function R(a, b) { + var c, d, f, e, h = [], j = [], k = o.oSort; d = a.aoData; var m = a.aoColumns; if (!a.oFeatures.bServerSide && (a.aaSorting.length !== 0 || a.aaSortingFixed !== null)) { + h = a.aaSortingFixed !== +null ? a.aaSortingFixed.concat(a.aaSorting) : a.aaSorting.slice(); for (c = 0; c < h.length; c++) { var t = h[c][0]; f = pa(a, t); e = a.aoColumns[t].sSortDataType; if (typeof o.afnSortData[e] != "undefined") { var q = o.afnSortData[e](a, t, f); f = 0; for (e = d.length; f < e; f++) N(a, f, t, q[f]) } } c = 0; for (d = a.aiDisplayMaster.length; c < d; c++) j[a.aiDisplayMaster[c]] = c; var I = h.length; a.aiDisplayMaster.sort(function (O, B) { + var F, qa; for (c = 0; c < I; c++) { + F = m[h[c][0]].iDataSort; qa = m[F].sType; F = k[(qa ? qa : "string") + "-" + h[c][1]](H(a, O, F, "sort"), H(a, B, F, "sort")); + if (F !== 0) return F + } return k["numeric-asc"](j[O], j[B]) +}) + } if ((typeof b == "undefined" || b) && !a.oFeatures.bDeferRender) T(a); a.bSorted = true; if (a.oFeatures.bFilter) M(a, a.oPreviousSearch, 1); else { a.aiDisplay = a.aiDisplayMaster.slice(); a._iDisplayStart = 0; E(a); C(a) } + } function ga(a, b, c, d) { + i(b).bind("click.DT", function (f) { + if (a.aoColumns[c].bSortable !== false) { + var e = function () { + var h, j; if (f.shiftKey) { + for (var k = false, m = 0; m < a.aaSorting.length; m++) if (a.aaSorting[m][0] == c) { + k = true; h = a.aaSorting[m][0]; j = a.aaSorting[m][2] + +1; if (typeof a.aoColumns[h].asSorting[j] == "undefined") a.aaSorting.splice(m, 1); else { a.aaSorting[m][1] = a.aoColumns[h].asSorting[j]; a.aaSorting[m][2] = j } break + } k === false && a.aaSorting.push([c, a.aoColumns[c].asSorting[0], 0]) + } else if (a.aaSorting.length == 1 && a.aaSorting[0][0] == c) { h = a.aaSorting[0][0]; j = a.aaSorting[0][2] + 1; if (typeof a.aoColumns[h].asSorting[j] == "undefined") j = 0; a.aaSorting[0][1] = a.aoColumns[h].asSorting[j]; a.aaSorting[0][2] = j } else { + a.aaSorting.splice(0, a.aaSorting.length); a.aaSorting.push([c, a.aoColumns[c].asSorting[0], +0]) + } R(a) + }; if (a.oFeatures.bProcessing) { K(a, true); setTimeout(function () { e(); a.oFeatures.bServerSide || K(a, false) }, 0) } else e(); typeof d == "function" && d(a) + } + }) + } function T(a) { + var b, c, d, f, e, h = a.aoColumns.length, j = a.oClasses; for (b = 0; b < h; b++) a.aoColumns[b].bSortable && i(a.aoColumns[b].nTh).removeClass(j.sSortAsc + " " + j.sSortDesc + " " + a.aoColumns[b].sSortingClass); f = a.aaSortingFixed !== null ? a.aaSortingFixed.concat(a.aaSorting) : a.aaSorting.slice(); for (b = 0; b < a.aoColumns.length; b++) if (a.aoColumns[b].bSortable) { + e = a.aoColumns[b].sSortingClass; + d = -1; for (c = 0; c < f.length; c++) if (f[c][0] == b) { e = f[c][1] == "asc" ? j.sSortAsc : j.sSortDesc; d = c; break } i(a.aoColumns[b].nTh).addClass(e); if (a.bJUI) { c = i("span", a.aoColumns[b].nTh); c.removeClass(j.sSortJUIAsc + " " + j.sSortJUIDesc + " " + j.sSortJUI + " " + j.sSortJUIAscAllowed + " " + j.sSortJUIDescAllowed); c.addClass(d == -1 ? a.aoColumns[b].sSortingClassJUI : f[d][1] == "asc" ? j.sSortJUIAsc : j.sSortJUIDesc) } + } else i(a.aoColumns[b].nTh).addClass(a.aoColumns[b].sSortingClass); e = j.sSortColumn; if (a.oFeatures.bSort && a.oFeatures.bSortClasses) { + d = +Q(a); if (a.oFeatures.bDeferRender) i(d).removeClass(e + "1 " + e + "2 " + e + "3"); else if (d.length >= h) for (b = 0; b < h; b++) if (d[b].className.indexOf(e + "1") != -1) { c = 0; for (a = d.length / h; c < a; c++) d[h * c + b].className = i.trim(d[h * c + b].className.replace(e + "1", "")) } else if (d[b].className.indexOf(e + "2") != -1) { c = 0; for (a = d.length / h; c < a; c++) d[h * c + b].className = i.trim(d[h * c + b].className.replace(e + "2", "")) } else if (d[b].className.indexOf(e + "3") != -1) { + c = 0; for (a = d.length / h; c < a; c++) d[h * c + b].className = i.trim(d[h * c + b].className.replace(" " + +e + "3", "")) + } j = 1; var k; for (b = 0; b < f.length; b++) { k = parseInt(f[b][0], 10); c = 0; for (a = d.length / h; c < a; c++) d[h * c + k].className += " " + e + j; j < 3 && j++ } + } + } function Ha(a) { if (a.oScroll.bInfinite) return null; var b = p.createElement("div"); b.className = a.oClasses.sPaging + a.sPaginationType; o.oPagination[a.sPaginationType].fnInit(a, b, function (c) { E(c); C(c) }); typeof a.aanFeatures.p == "undefined" && a.aoDrawCallback.push({ fn: function (c) { o.oPagination[c.sPaginationType].fnUpdate(c, function (d) { E(d); C(d) }) }, sName: "pagination" }); return b } + function ja(a, b) { + var c = a._iDisplayStart; if (b == "first") a._iDisplayStart = 0; else if (b == "previous") { a._iDisplayStart = a._iDisplayLength >= 0 ? a._iDisplayStart - a._iDisplayLength : 0; if (a._iDisplayStart < 0) a._iDisplayStart = 0 } else if (b == "next") if (a._iDisplayLength >= 0) { if (a._iDisplayStart + a._iDisplayLength < a.fnRecordsDisplay()) a._iDisplayStart += a._iDisplayLength } else a._iDisplayStart = 0; else if (b == "last") if (a._iDisplayLength >= 0) { b = parseInt((a.fnRecordsDisplay() - 1) / a._iDisplayLength, 10) + 1; a._iDisplayStart = (b - 1) * a._iDisplayLength } else a._iDisplayStart = +0; else J(a, 0, "Unknown paging action: " + b); return c != a._iDisplayStart + } function Ga(a) { var b = p.createElement("div"); b.className = a.oClasses.sInfo; if (typeof a.aanFeatures.i == "undefined") { a.aoDrawCallback.push({ fn: Na, sName: "information" }); a.sTableId !== "" && b.setAttribute("id", a.sTableId + "_info") } return b } function Na(a) { + if (!(!a.oFeatures.bInfo || a.aanFeatures.i.length === 0)) { + var b = a._iDisplayStart + 1, c = a.fnDisplayEnd(), d = a.fnRecordsTotal(), f = a.fnRecordsDisplay(), e = a.fnFormatNumber(b), h = a.fnFormatNumber(c), j = +a.fnFormatNumber(d), k = a.fnFormatNumber(f); if (a.oScroll.bInfinite) e = a.fnFormatNumber(1); e = a.fnRecordsDisplay() === 0 && a.fnRecordsDisplay() == a.fnRecordsTotal() ? a.oLanguage.sInfoEmpty + a.oLanguage.sInfoPostFix : a.fnRecordsDisplay() === 0 ? a.oLanguage.sInfoEmpty + " " + a.oLanguage.sInfoFiltered.replace("_MAX_", j) + a.oLanguage.sInfoPostFix : a.fnRecordsDisplay() == a.fnRecordsTotal() ? a.oLanguage.sInfo.replace("_START_", e).replace("_END_", h).replace("_TOTAL_", k) + a.oLanguage.sInfoPostFix : a.oLanguage.sInfo.replace("_START_", +e).replace("_END_", h).replace("_TOTAL_", k) + " " + a.oLanguage.sInfoFiltered.replace("_MAX_", a.fnFormatNumber(a.fnRecordsTotal())) + a.oLanguage.sInfoPostFix; if (a.oLanguage.fnInfoCallback !== null) e = a.oLanguage.fnInfoCallback(a, b, c, d, f, e); a = a.aanFeatures.i; b = 0; for (c = a.length; b < c; b++) i(a[b]).html(e) + } + } function Ca(a) { + if (a.oScroll.bInfinite) return null; var b = '"; var f = p.createElement("div"); a.sTableId !== "" && typeof a.aanFeatures.l == "undefined" && f.setAttribute("id", a.sTableId + "_length"); f.className = a.oClasses.sLength; f.innerHTML = ""; i('select option[value="' + +a._iDisplayLength + '"]', f).attr("selected", true); i("select", f).bind("change.DT", function () { var e = i(this).val(), h = a.aanFeatures.l; c = 0; for (d = h.length; c < d; c++) h[c] != this.parentNode && i("select", h[c]).val(e); a._iDisplayLength = parseInt(e, 10); E(a); if (a.fnDisplayEnd() == a.fnRecordsDisplay()) { a._iDisplayStart = a.fnDisplayEnd() - a._iDisplayLength; if (a._iDisplayStart < 0) a._iDisplayStart = 0 } if (a._iDisplayLength == -1) a._iDisplayStart = 0; C(a) }); return f + } function Ea(a) { + var b = p.createElement("div"); a.sTableId !== "" && typeof a.aanFeatures.r == +"undefined" && b.setAttribute("id", a.sTableId + "_processing"); b.innerHTML = a.oLanguage.sProcessing; b.className = a.oClasses.sProcessing; a.nTable.parentNode.insertBefore(b, a.nTable); return b + } function K(a, b) { if (a.oFeatures.bProcessing) { a = a.aanFeatures.r; for (var c = 0, d = a.length; c < d; c++) a[c].style.visibility = b ? "visible" : "hidden" } } function Ja(a, b) { for (var c = -1, d = 0; d < a.aoColumns.length; d++) { a.aoColumns[d].bVisible === true && c++; if (c == b) return d } return null } function pa(a, b) { + for (var c = -1, d = 0; d < a.aoColumns.length; d++) { + a.aoColumns[d].bVisible === +true && c++; if (d == b) return a.aoColumns[d].bVisible === true ? c : null + } return null + } function U(a, b) { var c, d; c = a._iDisplayStart; for (d = a._iDisplayEnd; c < d; c++) if (a.aoData[a.aiDisplay[c]].nTr == b) return a.aiDisplay[c]; c = 0; for (d = a.aoData.length; c < d; c++) if (a.aoData[c].nTr == b) return c; return null } function X(a) { for (var b = 0, c = 0; c < a.aoColumns.length; c++) a.aoColumns[c].bVisible === true && b++; return b } function E(a) { + a._iDisplayEnd = a.oFeatures.bPaginate === false ? a.aiDisplay.length : a._iDisplayStart + a._iDisplayLength > a.aiDisplay.length || +a._iDisplayLength == -1 ? a.aiDisplay.length : a._iDisplayStart + a._iDisplayLength + } function Oa(a, b) { if (!a || a === null || a === "") return 0; if (typeof b == "undefined") b = p.getElementsByTagName("body")[0]; var c = p.createElement("div"); c.style.width = u(a); b.appendChild(c); a = c.offsetWidth; b.removeChild(c); return a } function ea(a) { + var b = 0, c, d = 0, f = a.aoColumns.length, e, h = i("th", a.nTHead); for (e = 0; e < f; e++) if (a.aoColumns[e].bVisible) { + d++; if (a.aoColumns[e].sWidth !== null) { + c = Oa(a.aoColumns[e].sWidthOrig, a.nTable.parentNode); if (c !== +null) a.aoColumns[e].sWidth = u(c); b++ + } + } if (f == h.length && b === 0 && d == f && a.oScroll.sX === "" && a.oScroll.sY === "") for (e = 0; e < a.aoColumns.length; e++) { c = i(h[e]).width(); if (c !== null) a.aoColumns[e].sWidth = u(c) } else { + b = a.nTable.cloneNode(false); e = a.nTHead.cloneNode(true); d = p.createElement("tbody"); c = p.createElement("tr"); b.removeAttribute("id"); b.appendChild(e); if (a.nTFoot !== null) { b.appendChild(a.nTFoot.cloneNode(true)); P(function (k) { k.style.width = "" }, b.getElementsByTagName("tr")) } b.appendChild(d); d.appendChild(c); + d = i("thead th", b); if (d.length === 0) d = i("tbody tr:eq(0)>td", b); h = S(a, e); for (e = d = 0; e < f; e++) { var j = a.aoColumns[e]; if (j.bVisible && j.sWidthOrig !== null && j.sWidthOrig !== "") h[e - d].style.width = u(j.sWidthOrig); else if (j.bVisible) h[e - d].style.width = ""; else d++ } for (e = 0; e < f; e++) if (a.aoColumns[e].bVisible) { d = Pa(a, e); if (d !== null) { d = d.cloneNode(true); if (a.aoColumns[e].sContentPadding !== "") d.innerHTML += a.aoColumns[e].sContentPadding; c.appendChild(d) } } f = a.nTable.parentNode; f.appendChild(b); if (a.oScroll.sX !== "" && a.oScroll.sXInner !== +"") b.style.width = u(a.oScroll.sXInner); else if (a.oScroll.sX !== "") { b.style.width = ""; if (i(b).width() < f.offsetWidth) b.style.width = u(f.offsetWidth) } else if (a.oScroll.sY !== "") b.style.width = u(f.offsetWidth); b.style.visibility = "hidden"; Qa(a, b); f = i("tbody tr:eq(0)", b).children(); if (f.length === 0) f = S(a, i("thead", b)[0]); if (a.oScroll.sX !== "") { + for (e = d = c = 0; e < a.aoColumns.length; e++) if (a.aoColumns[e].bVisible) { + c += a.aoColumns[e].sWidthOrig === null ? i(f[d]).outerWidth() : parseInt(a.aoColumns[e].sWidth.replace("px", ""), +10) + (i(f[d]).outerWidth() - i(f[d]).width()); d++ + } b.style.width = u(c); a.nTable.style.width = u(c) + } for (e = d = 0; e < a.aoColumns.length; e++) if (a.aoColumns[e].bVisible) { c = i(f[d]).width(); if (c !== null && c > 0) a.aoColumns[e].sWidth = u(c); d++ } a.nTable.style.width = u(i(b).outerWidth()); b.parentNode.removeChild(b) + } + } function Qa(a, b) { if (a.oScroll.sX === "" && a.oScroll.sY !== "") { i(b).width(); b.style.width = u(i(b).outerWidth() - a.oScroll.iBarWidth) } else if (a.oScroll.sX !== "") b.style.width = u(i(b).outerWidth()) } function Pa(a, b) { + var c = +Ra(a, b); if (c < 0) return null; if (a.aoData[c].nTr === null) { var d = p.createElement("td"); d.innerHTML = H(a, c, b, ""); return d } return Q(a, c)[b] + } function Ra(a, b) { for (var c = -1, d = -1, f = 0; f < a.aoData.length; f++) { var e = H(a, f, b, "display") + ""; e = e.replace(/<.*?>/g, ""); if (e.length > c) { c = e.length; d = f } } return d } function u(a) { if (a === null) return "0px"; if (typeof a == "number") { if (a < 0) return "0px"; return a + "px" } var b = a.charCodeAt(a.length - 1); if (b < 48 || b > 57) return a; return a + "px" } function Va(a, b) { + if (a.length != b.length) return 1; for (var c = +0; c < a.length; c++) if (a[c] != b[c]) return 2; return 0 + } function fa(a) { for (var b = o.aTypes, c = b.length, d = 0; d < c; d++) { var f = b[d](a); if (f !== null) return f } return "string" } function A(a) { for (var b = 0; b < D.length; b++) if (D[b].nTable == a) return D[b]; return null } function aa(a) { for (var b = [], c = a.aoData.length, d = 0; d < c; d++) b.push(a.aoData[d]._aData); return b } function $(a) { for (var b = [], c = 0, d = a.aoData.length; c < d; c++) a.aoData[c].nTr !== null && b.push(a.aoData[c].nTr); return b } function Q(a, b) { + var c = [], d, f, e, h, j; f = 0; var k = a.aoData.length; + if (typeof b != "undefined") { f = b; k = b + 1 } for (f = f; f < k; f++) { j = a.aoData[f]; if (j.nTr !== null) { b = []; e = 0; for (h = j.nTr.childNodes.length; e < h; e++) { d = j.nTr.childNodes[e].nodeName.toLowerCase(); if (d == "td" || d == "th") b.push(j.nTr.childNodes[e]) } e = d = 0; for (h = a.aoColumns.length; e < h; e++) if (a.aoColumns[e].bVisible) c.push(b[e - d]); else { c.push(j._anHidden[e]); d++ } } } return c + } function oa(a) { return a.replace(new RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\|\\$|\\^)", "g"), "\\$1") } function ra(a, b) { + for (var c = -1, d = +0, f = a.length; d < f; d++) if (a[d] == b) c = d; else a[d] > b && a[d]--; c != -1 && a.splice(c, 1) + } function Ba(a, b) { b = b.split(","); for (var c = [], d = 0, f = a.aoColumns.length; d < f; d++) for (var e = 0; e < f; e++) if (a.aoColumns[d].sName == b[e]) { c.push(e); break } return c } function ha(a) { for (var b = "", c = 0, d = a.aoColumns.length; c < d; c++) b += a.aoColumns[c].sName + ","; if (b.length == d) return ""; return b.slice(0, -1) } function J(a, b, c) { + a = a.sTableId === "" ? "DataTables warning: " + c : "DataTables warning (table id = '" + a.sTableId + "'): " + c; if (b === 0) if (o.sErrMode == +"alert") alert(a); else throw a; else typeof console != "undefined" && typeof console.log != "undefined" && console.log(a) + } function ia(a) { a.aoData.splice(0, a.aoData.length); a.aiDisplayMaster.splice(0, a.aiDisplayMaster.length); a.aiDisplay.splice(0, a.aiDisplay.length); E(a) } function sa(a) { + if (!(!a.oFeatures.bStateSave || typeof a.bDestroying != "undefined")) { + var b, c, d, f = "{"; f += '"iCreate":' + (new Date).getTime() + ","; f += '"iStart":' + (a.oScroll.bInfinite ? 0 : a._iDisplayStart) + ","; f += '"iEnd":' + (a.oScroll.bInfinite ? a._iDisplayLength : +a._iDisplayEnd) + ","; f += '"iLength":' + a._iDisplayLength + ","; f += '"sFilter":"' + encodeURIComponent(a.oPreviousSearch.sSearch) + '",'; f += '"sFilterEsc":' + !a.oPreviousSearch.bRegex + ","; f += '"aaSorting":[ '; for (b = 0; b < a.aaSorting.length; b++) f += "[" + a.aaSorting[b][0] + ',"' + a.aaSorting[b][1] + '"],'; f = f.substring(0, f.length - 1); f += "],"; f += '"aaSearchCols":[ '; for (b = 0; b < a.aoPreSearchCols.length; b++) f += '["' + encodeURIComponent(a.aoPreSearchCols[b].sSearch) + '",' + !a.aoPreSearchCols[b].bRegex + "],"; f = f.substring(0, f.length - +1); f += "],"; f += '"abVisCols":[ '; for (b = 0; b < a.aoColumns.length; b++) f += a.aoColumns[b].bVisible + ","; f = f.substring(0, f.length - 1); f += "]"; b = 0; for (c = a.aoStateSave.length; b < c; b++) { d = a.aoStateSave[b].fn(a, f); if (d !== "") f = d } f += "}"; Sa(a.sCookiePrefix + a.sInstance, f, a.iCookieDuration, a.sCookiePrefix, a.fnCookieCallback) + } + } function Ta(a, b) { + if (a.oFeatures.bStateSave) { + var c, d, f; d = ta(a.sCookiePrefix + a.sInstance); if (d !== null && d !== "") { + try { c = typeof i.parseJSON == "function" ? i.parseJSON(d.replace(/'/g, '"')) : eval("(" + d + ")") } catch (e) { return } d = +0; for (f = a.aoStateLoad.length; d < f; d++) if (!a.aoStateLoad[d].fn(a, c)) return; a.oLoadedState = i.extend(true, {}, c); a._iDisplayStart = c.iStart; a.iInitDisplayStart = c.iStart; a._iDisplayEnd = c.iEnd; a._iDisplayLength = c.iLength; a.oPreviousSearch.sSearch = decodeURIComponent(c.sFilter); a.aaSorting = c.aaSorting.slice(); a.saved_aaSorting = c.aaSorting.slice(); if (typeof c.sFilterEsc != "undefined") a.oPreviousSearch.bRegex = !c.sFilterEsc; if (typeof c.aaSearchCols != "undefined") for (d = 0; d < c.aaSearchCols.length; d++) a.aoPreSearchCols[d] = +{ sSearch: decodeURIComponent(c.aaSearchCols[d][0]), bRegex: !c.aaSearchCols[d][1] }; if (typeof c.abVisCols != "undefined") { b.saved_aoColumns = []; for (d = 0; d < c.abVisCols.length; d++) { b.saved_aoColumns[d] = {}; b.saved_aoColumns[d].bVisible = c.abVisCols[d] } } + } + } + } function Sa(a, b, c, d, f) { + var e = new Date; e.setTime(e.getTime() + c * 1E3); c = wa.location.pathname.split("/"); a = a + "_" + c.pop().replace(/[\/:]/g, "").toLowerCase(); var h; if (f !== null) { + h = typeof i.parseJSON == "function" ? i.parseJSON(b) : eval("(" + b + ")"); b = f(a, h, e.toGMTString(), +c.join("/") + "/") + } else b = a + "=" + encodeURIComponent(b) + "; expires=" + e.toGMTString() + "; path=" + c.join("/") + "/"; f = ""; e = 9999999999999; if ((ta(a) !== null ? p.cookie.length : b.length + p.cookie.length) + 10 > 4096) { + a = p.cookie.split(";"); for (var j = 0, k = a.length; j < k; j++) if (a[j].indexOf(d) != -1) { var m = a[j].split("="); try { h = eval("(" + decodeURIComponent(m[1]) + ")") } catch (t) { continue } if (typeof h.iCreate != "undefined" && h.iCreate < e) { f = m[0]; e = h.iCreate } } if (f !== "") p.cookie = f + "=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=" + c.join("/") + +"/" + } p.cookie = b + } function ta(a) { var b = wa.location.pathname.split("/"); a = a + "_" + b[b.length - 1].replace(/[\/:]/g, "").toLowerCase() + "="; b = p.cookie.split(";"); for (var c = 0; c < b.length; c++) { for (var d = b[c]; d.charAt(0) == " "; ) d = d.substring(1, d.length); if (d.indexOf(a) === 0) return decodeURIComponent(d.substring(a.length, d.length)) } return null } function W(a, b) { + b = b.getElementsByTagName("tr"); var c, d, f, e, h, j, k, m, t = function (O, B, F) { for (; typeof O[B][F] != "undefined"; ) F++; return F }; a.splice(0, a.length); d = 0; for (j = b.length; d < +j; d++) a.push([]); d = 0; for (j = b.length; d < j; d++) { f = 0; for (k = b[d].childNodes.length; f < k; f++) { c = b[d].childNodes[f]; if (c.nodeName.toUpperCase() == "TD" || c.nodeName.toUpperCase() == "TH") { var q = c.getAttribute("colspan") * 1, I = c.getAttribute("rowspan") * 1; q = !q || q === 0 || q === 1 ? 1 : q; I = !I || I === 0 || I === 1 ? 1 : I; m = t(a, d, 0); for (h = 0; h < q; h++) for (e = 0; e < I; e++) { a[d + e][m + h] = { cell: c, unique: q == 1 ? true : false }; a[d + e].nTr = b[d] } } } } + } function S(a, b, c) { + var d = []; if (typeof c == "undefined") { c = a.aoHeader; if (typeof b != "undefined") { c = []; W(c, b) } } b = 0; + for (var f = c.length; b < f; b++) for (var e = 0, h = c[b].length; e < h; e++) if (c[b][e].unique && (typeof d[e] == "undefined" || !a.bSortCellsTop)) d[e] = c[b][e].cell; return d + } function Ua() { + var a = p.createElement("p"), b = a.style; b.width = "100%"; b.height = "200px"; var c = p.createElement("div"); b = c.style; b.position = "absolute"; b.top = "0px"; b.left = "0px"; b.visibility = "hidden"; b.width = "200px"; b.height = "150px"; b.overflow = "hidden"; c.appendChild(a); p.body.appendChild(c); b = a.offsetWidth; c.style.overflow = "scroll"; a = a.offsetWidth; if (b == a) a = +c.clientWidth; p.body.removeChild(c); return b - a + } function P(a, b, c) { for (var d = 0, f = b.length; d < f; d++) for (var e = 0, h = b[d].childNodes.length; e < h; e++) if (b[d].childNodes[e].nodeType == 1) typeof c != "undefined" ? a(b[d].childNodes[e], c[d].childNodes[e]) : a(b[d].childNodes[e]) } function n(a, b, c, d) { if (typeof d == "undefined") d = c; if (typeof b[c] != "undefined") a[d] = b[c] } function da(a, b, c) { for (var d = [], f = 0, e = a.aoColumns.length; f < e; f++) d.push(H(a, b, f, c)); return d } function H(a, b, c, d) { + var f = a.aoColumns[c]; if ((c = f.fnGetData(a.aoData[b]._aData)) === +undefined) { if (a.iDrawError != a.iDraw && f.sDefaultContent === null) { J(a, 0, "Requested unknown parameter '" + f.mDataProp + "' from the data source for row " + b); a.iDrawError = a.iDraw } return f.sDefaultContent } if (c === null && f.sDefaultContent !== null) c = f.sDefaultContent; if (d == "display" && c === null) return ""; return c + } function N(a, b, c, d) { a.aoColumns[c].fnSetData(a.aoData[b]._aData, d) } function Z(a) { + if (a === null) return function () { return null }; else if (typeof a == "function") return function (c) { return a(c) }; else if (typeof a == +"string" && a.indexOf(".") != -1) { var b = a.split("."); return b.length == 2 ? function (c) { return c[b[0]][b[1]] } : b.length == 3 ? function (c) { return c[b[0]][b[1]][b[2]] } : function (c) { for (var d = 0, f = b.length; d < f; d++) c = c[b[d]]; return c } } else return function (c) { return c[a] } + } function ya(a) { + if (a === null) return function () { }; else if (typeof a == "function") return function (c, d) { return a(c, d) }; else if (typeof a == "string" && a.indexOf(".") != -1) { + var b = a.split("."); return b.length == 2 ? function (c, d) { c[b[0]][b[1]] = d } : b.length == 3 ? function (c, +d) { c[b[0]][b[1]][b[2]] = d } : function (c, d) { for (var f = 0, e = b.length - 1; f < e; f++) c = c[b[f]]; c[b[b.length - 1]] = d } + } else return function (c, d) { c[a] = d } + } this.oApi = {}; this.fnDraw = function (a) { var b = A(this[o.iApiIndex]); if (typeof a != "undefined" && a === false) { E(b); C(b) } else ba(b) }; this.fnFilter = function (a, b, c, d, f) { + var e = A(this[o.iApiIndex]); if (e.oFeatures.bFilter) { + if (typeof c == "undefined") c = false; if (typeof d == "undefined") d = true; if (typeof f == "undefined") f = true; if (typeof b == "undefined" || b === null) { + M(e, { sSearch: a, bRegex: c, + bSmart: d + }, 1); if (f && typeof e.aanFeatures.f != "undefined") { b = e.aanFeatures.f; c = 0; for (d = b.length; c < d; c++) i("input", b[c]).val(a) } + } else { e.aoPreSearchCols[b].sSearch = a; e.aoPreSearchCols[b].bRegex = c; e.aoPreSearchCols[b].bSmart = d; M(e, e.oPreviousSearch, 1) } + } + }; this.fnSettings = function () { return A(this[o.iApiIndex]) }; this.fnVersionCheck = o.fnVersionCheck; this.fnSort = function (a) { var b = A(this[o.iApiIndex]); b.aaSorting = a; R(b) }; this.fnSortListener = function (a, b, c) { ga(A(this[o.iApiIndex]), a, b, c) }; this.fnAddData = function (a, +b) { if (a.length === 0) return []; var c = [], d, f = A(this[o.iApiIndex]); if (typeof a[0] == "object") for (var e = 0; e < a.length; e++) { d = v(f, a[e]); if (d == -1) return c; c.push(d) } else { d = v(f, a); if (d == -1) return c; c.push(d) } f.aiDisplay = f.aiDisplayMaster.slice(); if (typeof b == "undefined" || b) ba(f); return c }; this.fnDeleteRow = function (a, b, c) { + var d = A(this[o.iApiIndex]); a = typeof a == "object" ? U(d, a) : a; var f = d.aoData.splice(a, 1), e = i.inArray(a, d.aiDisplay); d.asDataSearch.splice(e, 1); ra(d.aiDisplayMaster, a); ra(d.aiDisplay, a); typeof b == +"function" && b.call(this, d, f); if (d._iDisplayStart >= d.aiDisplay.length) { d._iDisplayStart -= d._iDisplayLength; if (d._iDisplayStart < 0) d._iDisplayStart = 0 } if (typeof c == "undefined" || c) { E(d); C(d) } return f +}; this.fnClearTable = function (a) { var b = A(this[o.iApiIndex]); ia(b); if (typeof a == "undefined" || a) C(b) }; this.fnOpen = function (a, b, c) { + var d = A(this[o.iApiIndex]); this.fnClose(a); var f = p.createElement("tr"), e = p.createElement("td"); f.appendChild(e); e.className = c; e.colSpan = X(d); if (typeof b.jquery != "undefined" || typeof b == +"object") e.appendChild(b); else e.innerHTML = b; b = i("tr", d.nTBody); i.inArray(a, b) != -1 && i(f).insertAfter(a); d.aoOpenRows.push({ nTr: f, nParent: a }); return f +}; this.fnClose = function (a) { for (var b = A(this[o.iApiIndex]), c = 0; c < b.aoOpenRows.length; c++) if (b.aoOpenRows[c].nParent == a) { (a = b.aoOpenRows[c].nTr.parentNode) && a.removeChild(b.aoOpenRows[c].nTr); b.aoOpenRows.splice(c, 1); return 0 } return 1 }; this.fnGetData = function (a, b) { + var c = A(this[o.iApiIndex]); if (typeof a != "undefined") { + a = typeof a == "object" ? U(c, a) : a; if (typeof b != +"undefined") return H(c, a, b, ""); return typeof c.aoData[a] != "undefined" ? c.aoData[a]._aData : null + } return aa(c) +}; this.fnGetNodes = function (a) { var b = A(this[o.iApiIndex]); if (typeof a != "undefined") return typeof b.aoData[a] != "undefined" ? b.aoData[a].nTr : null; return $(b) }; this.fnGetPosition = function (a) { var b = A(this[o.iApiIndex]), c = a.nodeName.toUpperCase(); if (c == "TR") return U(b, a); else if (c == "TD" || c == "TH") { c = U(b, a.parentNode); for (var d = Q(b, c), f = 0; f < b.aoColumns.length; f++) if (d[f] == a) return [c, pa(b, f), f] } return null }; + this.fnUpdate = function (a, b, c, d, f) { + var e = A(this[o.iApiIndex]); b = typeof b == "object" ? U(e, b) : b; if (i.isArray(a) && typeof a == "object") { e.aoData[b]._aData = a.slice(); for (c = 0; c < e.aoColumns.length; c++) this.fnUpdate(H(e, b, c), b, c, false, false) } else if (typeof a == "object") { e.aoData[b]._aData = i.extend(true, {}, a); for (c = 0; c < e.aoColumns.length; c++) this.fnUpdate(H(e, b, c), b, c, false, false) } else { + a = a; N(e, b, c, a); if (e.aoColumns[c].fnRender !== null) { + a = e.aoColumns[c].fnRender({ iDataRow: b, iDataColumn: c, aData: e.aoData[b]._aData, + oSettings: e + }); e.aoColumns[c].bUseRendered && N(e, b, c, a) + } if (e.aoData[b].nTr !== null) Q(e, b)[c].innerHTML = a + } c = i.inArray(b, e.aiDisplay); e.asDataSearch[c] = na(e, da(e, b, "filter")); if (typeof f == "undefined" || f) ca(e); if (typeof d == "undefined" || d) ba(e); return 0 + }; this.fnSetColumnVis = function (a, b, c) { + var d = A(this[o.iApiIndex]), f, e; e = d.aoColumns.length; var h, j; if (d.aoColumns[a].bVisible != b) { + if (b) { + for (f = j = 0; f < a; f++) d.aoColumns[f].bVisible && j++; j = j >= X(d); if (!j) for (f = a; f < e; f++) if (d.aoColumns[f].bVisible) { h = f; break } f = 0; + for (e = d.aoData.length; f < e; f++) if (d.aoData[f].nTr !== null) j ? d.aoData[f].nTr.appendChild(d.aoData[f]._anHidden[a]) : d.aoData[f].nTr.insertBefore(d.aoData[f]._anHidden[a], Q(d, f)[h]) + } else { f = 0; for (e = d.aoData.length; f < e; f++) if (d.aoData[f].nTr !== null) { h = Q(d, f)[a]; d.aoData[f]._anHidden[a] = h; h.parentNode.removeChild(h) } } d.aoColumns[a].bVisible = b; L(d, d.aoHeader); d.nTFoot && L(d, d.aoFooter); f = 0; for (e = d.aoOpenRows.length; f < e; f++) d.aoOpenRows[f].nTr.colSpan = X(d); if (typeof c == "undefined" || c) { ca(d); C(d) } sa(d) + } + }; this.fnPageChange = +function (a, b) { var c = A(this[o.iApiIndex]); ja(c, a); E(c); if (typeof b == "undefined" || b) C(c) }; this.fnDestroy = function () { + var a = A(this[o.iApiIndex]), b = a.nTableWrapper.parentNode, c = a.nTBody, d, f; a.bDestroying = true; d = 0; for (f = a.aoColumns.length; d < f; d++) a.aoColumns[d].bVisible === false && this.fnSetColumnVis(d, true); i(a.nTableWrapper).find("*").andSelf().unbind(".DT"); i("tbody>tr>td." + a.oClasses.sRowEmpty, a.nTable).parent().remove(); if (a.nTable != a.nTHead.parentNode) { i(">thead", a.nTable).remove(); a.nTable.appendChild(a.nTHead) } if (a.nTFoot && +a.nTable != a.nTFoot.parentNode) { i(">tfoot", a.nTable).remove(); a.nTable.appendChild(a.nTFoot) } a.nTable.parentNode.removeChild(a.nTable); i(a.nTableWrapper).remove(); a.aaSorting = []; a.aaSortingFixed = []; T(a); i($(a)).removeClass(a.asStripClasses.join(" ")); if (a.bJUI) { + i("th", a.nTHead).removeClass([o.oStdClasses.sSortable, o.oJUIClasses.sSortableAsc, o.oJUIClasses.sSortableDesc, o.oJUIClasses.sSortableNone].join(" ")); i("th span." + o.oJUIClasses.sSortIcon, a.nTHead).remove(); i("th", a.nTHead).each(function () { + var e = +i("div." + o.oJUIClasses.sSortJUIWrapper, this), h = e.contents(); i(this).append(h); e.remove() + }) + } else i("th", a.nTHead).removeClass([o.oStdClasses.sSortable, o.oStdClasses.sSortableAsc, o.oStdClasses.sSortableDesc, o.oStdClasses.sSortableNone].join(" ")); a.nTableReinsertBefore ? b.insertBefore(a.nTable, a.nTableReinsertBefore) : b.appendChild(a.nTable); d = 0; for (f = a.aoData.length; d < f; d++) a.aoData[d].nTr !== null && c.appendChild(a.aoData[d].nTr); if (a.oFeatures.bAutoWidth === true) a.nTable.style.width = u(a.sDestroyWidth); + i(">tr:even", c).addClass(a.asDestoryStrips[0]); i(">tr:odd", c).addClass(a.asDestoryStrips[1]); d = 0; for (f = D.length; d < f; d++) D[d] == a && D.splice(d, 1); a = null +}; + this.fnAdjustColumnSizing = function (a) { var b = A(this[o.iApiIndex]); ca(b); if (typeof a == "undefined" || a) this.fnDraw(false); else if (b.oScroll.sX !== "" || b.oScroll.sY !== "") this.oApi._fnScrollDraw(b) }; for (var ua in o.oApi) if (ua) this[ua] = r(ua); this.oApi._fnExternApiFunc = r; this.oApi._fnInitalise = s; this.oApi._fnInitComplete = w; this.oApi._fnLanguageProcess = y; this.oApi._fnAddColumn = +G; + this.oApi._fnColumnOptions = x; this.oApi._fnAddData = v; this.oApi._fnCreateTr = z; this.oApi._fnGatherData = Y; this.oApi._fnBuildHead = V; this.oApi._fnDrawHead = L; this.oApi._fnDraw = C; this.oApi._fnReDraw = ba; this.oApi._fnAjaxUpdate = za; this.oApi._fnAjaxUpdateDraw = Aa; this.oApi._fnAddOptionsHtml = xa; this.oApi._fnFeatureHtmlTable = Fa; this.oApi._fnScrollDraw = Ia; this.oApi._fnAjustColumnSizing = ca; this.oApi._fnFeatureHtmlFilter = Da; this.oApi._fnFilterComplete = M; this.oApi._fnFilterCustom = Ma; this.oApi._fnFilterColumn = La; + this.oApi._fnFilter = Ka; this.oApi._fnBuildSearchArray = ka; this.oApi._fnBuildSearchRow = na; this.oApi._fnFilterCreateSearch = la; this.oApi._fnDataToSearch = ma; this.oApi._fnSort = R; this.oApi._fnSortAttachListener = ga; this.oApi._fnSortingClasses = T; this.oApi._fnFeatureHtmlPaginate = Ha; this.oApi._fnPageChange = ja; this.oApi._fnFeatureHtmlInfo = Ga; this.oApi._fnUpdateInfo = Na; this.oApi._fnFeatureHtmlLength = Ca; this.oApi._fnFeatureHtmlProcessing = Ea; this.oApi._fnProcessingDisplay = K; this.oApi._fnVisibleToColumnIndex = Ja; this.oApi._fnColumnIndexToVisible = +pa; + this.oApi._fnNodeToDataIndex = U; + this.oApi._fnVisbleColumns = X; this.oApi._fnCalculateEnd = E; this.oApi._fnConvertToWidth = Oa; this.oApi._fnCalculateColumnWidths = ea; this.oApi._fnScrollingWidthAdjust = Qa; this.oApi._fnGetWidestNode = Pa; this.oApi._fnGetMaxLenString = Ra; this.oApi._fnStringToCss = u; this.oApi._fnArrayCmp = Va; this.oApi._fnDetectType = fa; this.oApi._fnSettingsFromNode = A; this.oApi._fnGetDataMaster = aa; this.oApi._fnGetTrNodes = $; this.oApi._fnGetTdNodes = Q; this.oApi._fnEscapeRegex = oa; this.oApi._fnDeleteIndex = +ra; + this.oApi._fnReOrderIndex = Ba; + this.oApi._fnColumnOrdering = ha; + this.oApi._fnLog = J; + this.oApi._fnClearTable = ia; + this.oApi._fnSaveState = sa; + this.oApi._fnLoadState = Ta; + this.oApi._fnCreateCookie = Sa; + this.oApi._fnReadCookie = ta; + this.oApi._fnDetectHeader = W; this.oApi._fnGetUniqueThs = S; this.oApi._fnScrollBarWidth = Ua; this.oApi._fnApplyToChildren = P; this.oApi._fnMap = n; this.oApi._fnGetRowData = da; this.oApi._fnGetCellData = H; this.oApi._fnSetCellData = N; this.oApi._fnGetObjectDataFn = Z; this.oApi._fnSetObjectDataFn = ya; var va = +this; + return this.each(function () { + var a = 0, b, c, d, f; a = 0; for (b = D.length; a < b; a++) { + if (D[a].nTable == this) if (typeof g == "undefined" || typeof g.bRetrieve != "undefined" && g.bRetrieve === true) return D[a].oInstance; else if (typeof g.bDestroy != "undefined" && g.bDestroy === true) { D[a].oInstance.fnDestroy(); break } else { + J(D[a], 0, "Cannot reinitialise DataTable.\n\nTo retrieve the DataTables object for this table, please pass either no arguments to the dataTable() function, or set bRetrieve to true. Alternatively, to destory the old table and create a new one, set bDestroy to true (note that a lot of changes to the configuration can be made through the API which is usually much faster)."); + return + } if (D[a].sTableId !== "" && D[a].sTableId == this.getAttribute("id")) { D.splice(a, 1); break } + } var e = new l; D.push(e); var h = false, j = false; a = this.getAttribute("id"); if (a !== null) { e.sTableId = a; e.sInstance = a } else e.sInstance = o._oExternConfig.iNextUnique++; if (this.nodeName.toLowerCase() != "table") J(e, 0, "Attempted to initialise DataTables on a node which is not a table: " + this.nodeName); else { + e.nTable = this; e.oInstance = va.length == 1 ? va : i(this).dataTable(); e.oApi = va.oApi; e.sDestroyWidth = i(this).width(); if (typeof g != +"undefined" && g !== null) { + e.oInit = g; n(e.oFeatures, g, "bPaginate"); + n(e.oFeatures, g, "bLengthChange"); + n(e.oFeatures, g, "bFilter"); + n(e.oFeatures, g, "bSort"); + n(e.oFeatures, g, "bInfo"); + n(e.oFeatures, g, "bProcessing"); + n(e.oFeatures, g, "bAutoWidth"); + n(e.oFeatures, g, "bSortClasses"); + n(e.oFeatures, g, "bServerSide"); + n(e.oFeatures, g, "bDeferRender"); + n(e.oScroll, g, "sScrollX", "sX"); + n(e.oScroll, g, "sScrollXInner", "sXInner"); + n(e.oScroll, g, "sScrollY", "sY"); + n(e.oScroll, g, "bScrollCollapse", "bCollapse"); + n(e.oScroll, g, "bScrollInfinite", "bInfinite"); + n(e.oScroll, g, "iScrollLoadGap", "iLoadGap"); + n(e.oScroll, g, "bScrollAutoCss", "bAutoCss"); + n(e, g, "asStripClasses"); + n(e, g, "fnPreDrawCallback"); + n(e, g, "fnRowCallback"); n(e, g, "fnHeaderCallback"); n(e, g, "fnFooterCallback"); n(e, g, "fnCookieCallback"); n(e, g, "fnInitComplete"); n(e, g, "fnServerData"); n(e, g, "fnFormatNumber"); n(e, g, "aaSorting"); n(e, g, "aaSortingFixed"); n(e, g, "aLengthMenu"); n(e, g, "sPaginationType"); n(e, g, "sAjaxSource"); n(e, g, "sAjaxDataProp"); n(e, g, "iCookieDuration"); n(e, g, "sCookiePrefix"); + n(e, g, "sDom"); + n(e, g, "bSortCellsTop"); + n(e, g, "oSearch", "oPreviousSearch"); + n(e, g, "aoSearchCols", "aoPreSearchCols"); + n(e, g, "iDisplayLength", "_iDisplayLength"); + n(e, g, "bJQueryUI", "bJUI"); + n(e.oLanguage, g, "fnInfoCallback"); + typeof g.fnDrawCallback == "function" && e.aoDrawCallback.push({ + fn: g.fnDrawCallback, sName: "user" + }); + typeof g.fnStateSaveCallback == "function" && e.aoStateSave.push({ + fn: g.fnStateSaveCallback, sName: "user" + }); + typeof g.fnStateLoadCallback == "function" && e.aoStateLoad.push({ + fn: g.fnStateLoadCallback, sName: "user" + }); + if (e.oFeatures.bServerSide && e.oFeatures.bSort && e.oFeatures.bSortClasses) e.aoDrawCallback.push({ fn: T, sName: "server_side_sort_classes" }); else e.oFeatures.bDeferRender && e.aoDrawCallback.push({ fn: T, sName: "defer_sort_classes" }); if (typeof g.bJQueryUI != "undefined" && g.bJQueryUI) { e.oClasses = o.oJUIClasses; if (typeof g.sDom == "undefined") e.sDom = '<"H"lfr>t<"F"ip>' } if (e.oScroll.sX !== "" || e.oScroll.sY !== "") e.oScroll.iBarWidth = Ua(); if (typeof g.iDisplayStart != "undefined" && typeof e.iInitDisplayStart == "undefined") { + e.iInitDisplayStart = g.iDisplayStart; e._iDisplayStart = g.iDisplayStart + } if (typeof g.bStateSave != "undefined") { e.oFeatures.bStateSave = g.bStateSave; Ta(e, g); e.aoDrawCallback.push({ fn: sa, sName: "state_save" }) } if (typeof g.iDeferLoading != "undefined") { e.bDeferLoading = true; e._iRecordsTotal = g.iDeferLoading; e._iRecordsDisplay = g.iDeferLoading } if (typeof g.aaData != "undefined") j = true; if (typeof g != "undefined" && typeof g.aoData != "undefined") g.aoColumns = g.aoData; if (typeof g.oLanguage != "undefined") if (typeof g.oLanguage.sUrl != "undefined" && g.oLanguage.sUrl !== +"") { e.oLanguage.sUrl = g.oLanguage.sUrl; i.getJSON(e.oLanguage.sUrl, null, function (t) { y(e, t, true) }); h = true } else y(e, g.oLanguage, false) + } else g = {}; if (typeof g.asStripClasses == "undefined") { e.asStripClasses.push(e.oClasses.sStripOdd); e.asStripClasses.push(e.oClasses.sStripEven) } c = false; d = i(">tbody>tr", this); a = 0; for (b = e.asStripClasses.length; a < b; a++) if (d.filter(":lt(2)").hasClass(e.asStripClasses[a])) { c = true; break } if (c) { + e.asDestoryStrips = ["", ""]; if (i(d[0]).hasClass(e.oClasses.sStripOdd)) e.asDestoryStrips[0] += +e.oClasses.sStripOdd + " "; if (i(d[0]).hasClass(e.oClasses.sStripEven)) e.asDestoryStrips[0] += e.oClasses.sStripEven; if (i(d[1]).hasClass(e.oClasses.sStripOdd)) e.asDestoryStrips[1] += e.oClasses.sStripOdd + " "; if (i(d[1]).hasClass(e.oClasses.sStripEven)) e.asDestoryStrips[1] += e.oClasses.sStripEven; d.removeClass(e.asStripClasses.join(" ")) + } c = []; var k; a = this.getElementsByTagName("thead"); if (a.length !== 0) { W(e.aoHeader, a[0]); c = S(e) } if (typeof g.aoColumns == "undefined") { k = []; a = 0; for (b = c.length; a < b; a++) k.push(null) } else k = +g.aoColumns; a = 0; for (b = k.length; a < b; a++) { if (typeof g.saved_aoColumns != "undefined" && g.saved_aoColumns.length == b) { if (k[a] === null) k[a] = {}; k[a].bVisible = g.saved_aoColumns[a].bVisible } G(e, c ? c[a] : null) } if (typeof g.aoColumnDefs != "undefined") for (a = g.aoColumnDefs.length - 1; a >= 0; a--) { + var m = g.aoColumnDefs[a].aTargets; i.isArray(m) || J(e, 1, "aTargets must be an array of targets, not a " + typeof m); c = 0; for (d = m.length; c < d; c++) if (typeof m[c] == "number" && m[c] >= 0) { for (; e.aoColumns.length <= m[c]; ) G(e); x(e, m[c], g.aoColumnDefs[a]) } else if (typeof m[c] == +"number" && m[c] < 0) x(e, e.aoColumns.length + m[c], g.aoColumnDefs[a]); else if (typeof m[c] == "string") { b = 0; for (f = e.aoColumns.length; b < f; b++) if (m[c] == "_all" || i(e.aoColumns[b].nTh).hasClass(m[c])) x(e, b, g.aoColumnDefs[a]) } + } if (typeof k != "undefined") { a = 0; for (b = k.length; a < b; a++) x(e, a, k[a]) } a = 0; for (b = e.aaSorting.length; a < b; a++) { + if (e.aaSorting[a][0] >= e.aoColumns.length) + e.aaSorting[a][0] = 0; k = e.aoColumns[e.aaSorting[a][0]]; + if (typeof e.aaSorting[a][2] == "undefined") e.aaSorting[a][2] = 0; + if (typeof g.aaSorting == "undefined" && typeof e.saved_aaSorting == "undefined") + e.aaSorting[a][1] = k.asSorting[0]; + c = 0; for (d = k.asSorting.length; + c < d; c++) if (e.aaSorting[a][1] == k.asSorting[c]) { + e.aaSorting[a][2] = c; break + } + } T(e); a = i(">thead", this); if (a.length === 0) { + a = [p.createElement("thead")]; this.appendChild(a[0]) + } e.nTHead = a[0]; a = i(">tbody", this); + if (a.length === 0) { + a = [p.createElement("tbody")]; + this.appendChild(a[0]) + } e.nTBody = a[0]; a = i(">tfoot", this); + if (a.length > 0) { e.nTFoot = a[0]; W(e.aoFooter, e.nTFoot) } + if (j) + for (a = 0; a < g.aaData.length; a++) v(e, g.aaData[a]); + else Y(e); e.aiDisplay = e.aiDisplayMaster.slice(); e.bInitialised = true; h === false && s(e) + } + }) + } +})(jQuery, window, document); diff --git a/data/interfaces/lossless/js/libs/modernizr-1.7.min.js b/data/interfaces/lossless/js/libs/modernizr-1.7.min.js new file mode 100644 index 00000000..6f54850c --- /dev/null +++ b/data/interfaces/lossless/js/libs/modernizr-1.7.min.js @@ -0,0 +1,2 @@ +// Modernizr v1.7 www.modernizr.com +window.Modernizr=function(a,b,c){function G(){e.input=function(a){for(var b=0,c=a.length;b7)},r.history=function(){return !!(a.history&&history.pushState)},r.draganddrop=function(){return x("dragstart")&&x("drop")},r.websockets=function(){return"WebSocket"in a},r.rgba=function(){A("background-color:rgba(150,255,150,.5)");return D(k.backgroundColor,"rgba")},r.hsla=function(){A("background-color:hsla(120,40%,100%,.5)");return D(k.backgroundColor,"rgba")||D(k.backgroundColor,"hsla")},r.multiplebgs=function(){A("background:url(//:),url(//:),red url(//:)");return(new RegExp("(url\\s*\\(.*?){3}")).test(k.background)},r.backgroundsize=function(){return F("backgroundSize")},r.borderimage=function(){return F("borderImage")},r.borderradius=function(){return F("borderRadius","",function(a){return D(a,"orderRadius")})},r.boxshadow=function(){return F("boxShadow")},r.textshadow=function(){return b.createElement("div").style.textShadow===""},r.opacity=function(){B("opacity:.55");return/^0.55$/.test(k.opacity)},r.cssanimations=function(){return F("animationName")},r.csscolumns=function(){return F("columnCount")},r.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";A((a+o.join(b+a)+o.join(c+a)).slice(0,-a.length));return D(k.backgroundImage,"gradient")},r.cssreflections=function(){return F("boxReflect")},r.csstransforms=function(){return!!E(["transformProperty","WebkitTransform","MozTransform","OTransform","msTransform"])},r.csstransforms3d=function(){var a=!!E(["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"]);a&&"webkitPerspective"in g.style&&(a=w("@media ("+o.join("transform-3d),(")+"modernizr)"));return a},r.csstransitions=function(){return F("transitionProperty")},r.fontface=function(){var a,c,d=h||g,e=b.createElement("style"),f=b.implementation||{hasFeature:function(){return!1}};e.type="text/css",d.insertBefore(e,d.firstChild),a=e.sheet||e.styleSheet;var i=f.hasFeature("CSS2","")?function(b){if(!a||!b)return!1;var c=!1;try{a.insertRule(b,0),c=/src/i.test(a.cssRules[0].cssText),a.deleteRule(a.cssRules.length-1)}catch(d){}return c}:function(b){if(!a||!b)return!1;a.cssText=b;return a.cssText.length!==0&&/src/i.test(a.cssText)&&a.cssText.replace(/\r+|\n+/g,"").indexOf(b.split(" ")[0])===0};c=i('@font-face { font-family: "font"; src: url(data:,); }'),d.removeChild(e);return c},r.video=function(){var a=b.createElement("video"),c=!!a.canPlayType;if(c){c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"');var d='video/mp4; codecs="avc1.42E01E';c.h264=a.canPlayType(d+'"')||a.canPlayType(d+', mp4a.40.2"'),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"')}return c},r.audio=function(){var a=b.createElement("audio"),c=!!a.canPlayType;c&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"'),c.mp3=a.canPlayType("audio/mpeg;"),c.wav=a.canPlayType('audio/wav; codecs="1"'),c.m4a=a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;"));return c},r.localstorage=function(){try{return!!localStorage.getItem}catch(a){return!1}},r.sessionstorage=function(){try{return!!sessionStorage.getItem}catch(a){return!1}},r.webWorkers=function(){return!!a.Worker},r.applicationcache=function(){return!!a.applicationCache},r.svg=function(){return!!b.createElementNS&&!!b.createElementNS(q.svg,"svg").createSVGRect},r.inlinesvg=function(){var a=b.createElement("div");a.innerHTML="";return(a.firstChild&&a.firstChild.namespaceURI)==q.svg},r.smil=function(){return!!b.createElementNS&&/SVG/.test(n.call(b.createElementNS(q.svg,"animate")))},r.svgclippaths=function(){return!!b.createElementNS&&/SVG/.test(n.call(b.createElementNS(q.svg,"clipPath")))};for(var H in r)z(r,H)&&(v=H.toLowerCase(),e[v]=r[H](),u.push((e[v]?"":"no-")+v));e.input||G(),e.crosswindowmessaging=e.postmessage,e.historymanagement=e.history,e.addTest=function(a,b){a=a.toLowerCase();if(!e[a]){b=!!b(),g.className+=" "+(b?"":"no-")+a,e[a]=b;return e}},A(""),j=l=null,f&&a.attachEvent&&function(){var a=b.createElement("div");a.innerHTML="";return a.childNodes.length!==1}()&&function(a,b){function p(a,b){var c=-1,d=a.length,e,f=[];while(++c y) ? 1 : 0)); +}; + +jQuery.fn.dataTableExt.oSort['title-string-desc'] = function(a,b) { + var x = a.match(/title="(.*?)"/)[1].toLowerCase(); + var y = b.match(/title="(.*?)"/)[1].toLowerCase(); + return ((x < y) ? 1 : ((x > y) ? -1 : 0)); +}; + +jQuery.fn.dataTableExt.oSort['title-numeric-asc'] = function(a,b) { + var x = a.match(/title="*(-?[0-9]+)/)[1]; + var y = b.match(/title="*(-?[0-9]+)/)[1]; + x = parseFloat( x ); + y = parseFloat( y ); + return ((x < y) ? -1 : ((x > y) ? 1 : 0)); +}; + +jQuery.fn.dataTableExt.oSort['title-numeric-desc'] = function(a,b) { + var x = a.match(/title="*(-?[0-9]+)/)[1]; + var y = b.match(/title="*(-?[0-9]+)/)[1]; + x = parseFloat( x ); + y = parseFloat( y ); + return ((x < y) ? 1 : ((x > y) ? -1 : 0)); +}; + +function toggle(source) { + checkboxes = document.getElementsByClassName('checkbox'); + for(var i in checkboxes) + checkboxes[i].checked = source.checked; +} \ No newline at end of file diff --git a/data/interfaces/lossless/js/script.js b/data/interfaces/lossless/js/script.js new file mode 100644 index 00000000..73641e89 --- /dev/null +++ b/data/interfaces/lossless/js/script.js @@ -0,0 +1,294 @@ +function getArtistInfo(name,imgElem,size) { + var apikey = "690e1ed3bc00bc91804cd8f7fe5ed6d4"; + var url = "http://ws.audioscrobbler.com/2.0/?method=artist.getInfo&artist="+ name +"&api_key="+ apikey+"&format=json&callback=?"; + // Get Data + $.getJSON(url, function(data) { + var artist = data.artist.name; + var artistBio = data.artist.bio.summary; + var artistBio = artistBio; + var imageUrl = data.artist.image[size]['#text']; + if (data.artist === undefined || imageUrl == "") { + imageUrl = "interfaces/lossless/images/no-cover-artist.png"; + } else { + imageUrl = data.artist.image[size]['#text']; + // If Last.fm don't provide a cover then use standard + } + var imageLarge = data.artist.image[4]['#text']; + var image = imgElem; + var bio = $('#artistBio'); + $(image).attr("src",imageUrl).removeAttr("width").removeAttr("height"); + if ( bio.length > 0 ) $(bio).append(artistBio); + $(image).wrap(''); + }); +} + +function getAlbumInfo(name, album, elem) { + var apikey = "690e1ed3bc00bc91804cd8f7fe5ed6d4"; + var url = "http://ws.audioscrobbler.com/2.0/?method=album.getinfo&api_key=" + apikey + "&artist="+ name +"&album="+ album +"&format=json&callback=?"; + var dimensions = getOriginalWidthOfImg(this); + var cover = $(elem); + if ( dimensions <= 1) { + // Get Data + $.getJSON(url, function(data) { + if (data.album === undefined) { + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + } else { + imageUrl = data.album.image[3]['#text']; + // If Last.fm don't provide a cover then use standard + } + $(cover).error(function(){ + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + $('#albumImg img').css("background", "url("+ imageUrl+") center top no-repeat"); + }); + if ( imageUrl == "") { + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + $('#albumImg img').css("background", "url("+ imageUrl+") center top no-repeat"); + } + $('#albumImg img').css("background", "url("+ imageUrl+") center top no-repeat"); + }); + } +} + +function getOriginalWidthOfImg(img_element) { + var t = new Image(); + t.src = (img_element.getAttribute ? img_element.getAttribute("src") : false) || img_element.src; + return t.width; +} + +function replaceEmptyAlbum(elem,name) { + var album = $(elem); + var artist = name; + var albumname; + var apikey = "690e1ed3bc00bc91804cd8f7fe5ed6d4"; + // Loop through every album art and get the albums with no cover + $(album).each(function(e){ + var dimensions = getOriginalWidthOfImg(this); + var cover = $(this); + var url; + albumname = cover.closest("tr").find("#albumname a").text(); + if ( dimensions <= 1) { + url = "http://ws.audioscrobbler.com/2.0/?method=album.getinfo&api_key=" + apikey + "&artist="+ artist +"&album="+ albumname +"&format=json&callback=?"; + var imageUrl; + $.getJSON(url, function(data, response) { + if (data.album === undefined) { + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + } else { + imageUrl = data.album.image[3]['#text']; + imageLarge = data.album.image[4]['#text']; + // If Last.fm don't provide a cover then use standard + } + $(cover).error(function(){ + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + $(this).hide().attr("src", imageUrl).show(); + }) + if ( imageUrl == "") { + imageUrl = "interfaces/lossless/images/no-cover-art.png"; + $(this).hide().attr("src", imageUrl).show(); + } + $(cover).hide().attr("src", imageUrl).show(); + $(cover).wrap(''); + }); + } + }); +} + +function initHeader() { + //settings + var header = $("#container header"); + var fadeSpeed = 100, fadeTo = 0.5, topDistance = 20; + var topbarME = function() { $(header).fadeTo(fadeSpeed,1); }, topbarML = function() { $(header).fadeTo(fadeSpeed,fadeTo); }; + var inside = false; + //do + $(window).scroll(function() { + position = $(window).scrollTop(); + if(position > topDistance && !inside) { + //add events + topbarML(); + $(header).bind('mouseenter',topbarME); + $(header).bind('mouseleave',topbarML); + $("#toTop").fadeIn(); + inside = true; + } + else if (position < topDistance){ + topbarME(); + $(header).unbind('mouseenter',topbarME); + $(header).unbind('mouseleave',topbarML); + $("#toTop").fadeOut(); + inside = false; + } + }); + +} + +function initConfigCheckbox(elem) { + var config = $(elem).parent().next(); + if ( $(elem).is(":checked") ) { + config.show(); + } else { + config.hide(); + } + $(elem).click(function(){ + var config = $(this).parent().next(); + if ( $(this).is(":checked") ) { + config.slideDown(); + } else { + config.slideUp(); + } + }); +} +function initActions() { + $("#subhead_menu #menu_link_refresh").button({ icons: { primary: "ui-icon-refresh" } }); + $("#subhead_menu #menu_link_edit").button({ icons: { primary: "ui-icon-pencil" } }); + $("#subhead_menu #menu_link_delete" ).button({ icons: { primary: "ui-icon-trash" } }); + $("#subhead_menu #menu_link_pauze").button({ icons: { primary: "ui-icon-pause"} }); + $("#subhead_menu #menu_link_resume").button({ icons: { primary: "ui-icon-play"} }); + $("#subhead_menu #menu_link_getextra").button({ icons: { primary: "ui-icon-plus"} }); + $("#subhead_menu #menu_link_removeextra").button({ icons: { primary: "ui-icon-minus" } }); + $("#subhead_menu #menu_link_wanted" ).button({ icons: { primary: "ui-icon-heart" } }); + $("#subhead_menu #menu_link_check").button({ icons: { primary: "ui-icon-arrowrefresh-1-w"} }); + $("#subhead_menu #menu_link_skipped").button({ icons: { primary: "ui-icon-seek-end"} }); + $("#subhead_menu #menu_link_retry").button({ icons: { primary: "ui-icon-arrowrefresh-1-e"} }); + $("#subhead_menu #menu_link_new").button({ icons: { primary: "ui-icon-arrowreturnthick-1-s" } }); + $("#subhead_menu #menu_link_shutdown").button({ icons: { primary: "ui-icon-power"} }); + $("#subhead_menu #menu_link_scan").button({ icons: { primary: "ui-icon-search"} }); +} + +function refreshSubmenu(url) { + $("#subhead_container").load(url + " #subhead_menu",function(){ + initActions(); + }); +} +function refreshTable() { + var url = $(location).attr('href'); + $("table.display").load(url + " table.display tbody, table.display thead", function() { + initThisPage(); + }); +} +function refreshTab() { + var url = $(location).attr('href'); + var tabId = $('.ui-tabs-panel:visible').attr("id"); + $('.ui-tabs-panel:visible').load(url + " #"+ tabId, function() { + initThisPage(); + }); +} + +function doAjaxCall(url,elem,reload,form) { + // Set Message + feedback = $("#ajaxMsg"); + feedback.fadeIn(); + // Get Form data + var formID = "#"+url; + if ( form == true ) { + var dataString = $(formID).serialize(); + } + // Loader Image + var loader = $("loading"); + // Data Success Message + var dataSucces = $(elem).data('success'); + if (typeof dataSucces === "undefined") { + // Standard Message when variable is not set + var dataSucces = "Success!"; + } + // Data Errror Message + var dataError = $(elem).data('error'); + if (typeof dataError === "undefined") { + // Standard Message when variable is not set + var dataError = "There was a error"; + } + // Get Success & Error message from inline data, else use standard message + var succesMsg = $("
" + dataSucces + "
"); + var errorMsg = $("
" + dataError + "
"); + + // Check if checkbox is selected + if ( form ) { + if ( $('td#select input[type=checkbox]').length > 0 && !$('td#select input[type=checkbox]').is(':checked') || $('#importLastFM #username').length > 0 && $("#importLastFM #username" ).val().length === 0 ) { + feedback.addClass('error') + $(feedback).prepend(errorMsg); + setTimeout(function(){ + errorMsg.fadeOut(function(){ + $(this).remove(); + feedback.fadeOut(function(){ + feedback.removeClass('error'); + }); + }) + $(formID + " select").children('option[disabled=disabled]').attr('selected','selected'); + },2000); + return false; + } + } + + // Ajax Call + $.ajax({ + url: url, + data: dataString, + beforeSend: function(jqXHR, settings) { + // Start loader etc. + feedback.prepend(loader); + }, + error: function(jqXHR, textStatus, errorThrown) { + feedback.addClass('error') + feedback.prepend(errorMsg); + setTimeout(function(){ + errorMsg.fadeOut(function(){ + $(this).remove(); + feedback.fadeOut(function(){ + feedback.removeClass('error') + }); + }) + },2000); + }, + success: function(data,jqXHR) { + feedback.prepend(succesMsg); + feedback.addClass('success') + setTimeout(function(e){ + succesMsg.fadeOut(function(){ + $(this).remove(); + feedback.fadeOut(function(){ + feedback.removeClass('success'); + }); + if ( reload == true ) refreshSubmenu(url); + if ( reload == "table") refreshTable(); + if ( reload == "tabs") refreshTab(); + if ( form ) { + // Change the option to 'choose...' + $(formID + " select").children('option[disabled=disabled]').attr('selected','selected'); + } + }) + },2000); + }, + complete: function(jqXHR, textStatus) { + // Remove loaders and stuff, ajax request is complete! + loader.remove(); + } + }); +} + +function resetFilters(text){ + if ( $(".dataTables_filter").length > 0 ) { + $(".dataTables_filter input").attr("placeholder","filter " + text + ""); + } +} + +function preventDefault(){ + $("a[href='#']").live('click', function(){ + return false; + }); +} + +function initFancybox() { + if ( $("a[rel=dialog]").length > 0 ) { + $.getScript('interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.js', function() { + $("head").append(""); + $("a[rel=dialog]").fancybox(); + }); + } +} + +function init() { + initHeader(); + preventDefault(); +} + +$(document).ready(function(){ + init(); +}); diff --git a/data/interfaces/lossless/logs.html b/data/interfaces/lossless/logs.html new file mode 100644 index 00000000..58c8cfeb --- /dev/null +++ b/data/interfaces/lossless/logs.html @@ -0,0 +1,63 @@ +lossless<%inherit file="base.html"/> +<%! + from headphones import helpers +%> + +<%def name="body()"> +
+

LogsLogs

+
+ + + + + + + + + + %for line in lineList: + <% + timestamp, message, level, threadname = line + + if level == 'WARNING' or level == 'ERROR': + grade = 'X' + else: + grade = 'Z' + %> + + + + + + %endfor + +
TimestampLevelMessage
${timestamp}${level}${message}
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file diff --git a/data/interfaces/lossless/manage.html b/data/interfaces/lossless/manage.html new file mode 100644 index 00000000..cf8d2471 --- /dev/null +++ b/data/interfaces/lossless/manage.html @@ -0,0 +1,104 @@ +lossless<%inherit file="base.html" /> +<%! + import headphones + from headphones.helpers import checked +%> +<%def name="headerIncludes()"> +
+
+ Manage Artists + %if not headphones.ADD_ARTISTS: + Manage New Artists + %endif +
+
+ + +<%def name="body()"> +
+

manageManage

+
+
+ +
+
+
+ Scan Music Library +

Where do you keep your music?

+

You can put in any directory, and it will scan for audio files in that folder + (including all subdirectories).
For example: '/Users/name/Music'

+

+ It may take a while depending on how many files you have. You can navigate away from the page
+ as soon as you click 'Save changes' +

+
+
+ + %if headphones.MUSIC_DIR: + + %else: + + %endif +
+
+ +
+ +
+ + +
+ +
+
+
+ Import Last.FM Artists +

Enter the username whose artists you want to import:

+
+
+ + <% + if headphones.LASTFM_USERNAME: + lastfmvalue = headphones.LASTFM_USERNAME + else: + lastfmvalue = '' + %> + + Reset username +
+
+ +
+
+ + +
+ +<%def name="javascriptIncludes()"> + + \ No newline at end of file diff --git a/data/interfaces/lossless/manageartists.html b/data/interfaces/lossless/manageartists.html new file mode 100644 index 00000000..41fda9e0 --- /dev/null +++ b/data/interfaces/lossless/manageartists.html @@ -0,0 +1,111 @@ +lossless<%inherit file="base.html" /> + + + +<%def name="headerIncludes()"> +
+   +
+ « Back to manage overview + + + +<%def name="body()"> +
+
+

manageManage Artists

+
+
+
+ + selected artists + +
+ + + + + + + + + + + + %for artist in artists: + <% + if artist['Status'] == 'Paused': + grade = 'X' + elif artist['Status'] == 'Loading': + grade = 'C' + else: + grade = 'Z' + + if artist['ReleaseDate'] and artist['LatestAlbum']: + releasedate = artist['ReleaseDate'] + albumdisplay = '%s (%s)' % (artist['LatestAlbum'], artist['ReleaseDate']) + elif artist['LatestAlbum']: + releasedate = '' + albumdisplay = '%s' % artist['LatestAlbum'] + else: + releasedate = '' + albumdisplay = 'None' + %> + + + + + + + + %endfor + +
Artist NameStatusLatest Album
${artist['ArtistName']}${artist['Status']}${albumdisplay}
+
+
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file diff --git a/data/interfaces/lossless/managenew.html b/data/interfaces/lossless/managenew.html new file mode 100644 index 00000000..cd141268 --- /dev/null +++ b/data/interfaces/lossless/managenew.html @@ -0,0 +1,67 @@ +lossless<%inherit file="base.html" /> +<%! + import headphones +%> + +<%def name="headerIncludes()"> + + « Back to manage overview + + + +<%def name="body()"> +
+
+

manageManage New Artists

+
+
+
+ Add selected artists + +
+ + + + + + + + + %for artist in headphones.NEW_ARTISTS: + + + + + %endfor + +
Artist Name
${artist}
+
+
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file diff --git a/data/interfaces/lossless/searchresults.html b/data/interfaces/lossless/searchresults.html new file mode 100644 index 00000000..f04e0849 --- /dev/null +++ b/data/interfaces/lossless/searchresults.html @@ -0,0 +1,81 @@ +lossless<%inherit file="base.html" /> + +<%def name="body()"> +
+
+

Search resultsSearch Result

+
+ + + + %if type == 'album': + + %endif + + + + + + + + %if searchresults: + %for result in searchresults: + <% + if result['score'] == 100: + grade = 'A' + else: + grade = 'Z' + %> + + %if type == 'album': + + %endif + + + + %if type == 'album': + + %else: + + %endif + + %endfor + %endif + +
Album NameArtist NameScore
${result['title']}
${result['uniquename']}
${result['score']}
Add this album Add this artist
+
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file diff --git a/data/interfaces/lossless/shutdown.html b/data/interfaces/lossless/shutdown.html new file mode 100644 index 00000000..e28b34f3 --- /dev/null +++ b/data/interfaces/lossless/shutdown.html @@ -0,0 +1,13 @@ +lossless<%inherit file="base.html"/> + +<%def name="headIncludes()"> + + + +<%def name="body()"> +
+
+

Headphones is ${message}

+
+
+ \ No newline at end of file diff --git a/data/interfaces/lossless/upcoming.html b/data/interfaces/lossless/upcoming.html new file mode 100644 index 00000000..6fba69f1 --- /dev/null +++ b/data/interfaces/lossless/upcoming.html @@ -0,0 +1,99 @@ +lossless<%inherit file="base.html" /> +<%def name="body()"> + +
+

Wanted AlbumsWanted Albums

+
+
+
+ Mark selected albums as + + +
+
+ + + + + + + + + + + + + %for album in wanted: + + + + + + + + %endfor + +
ArtistAlbum NameRelease DateType
+ ${album['ArtistName']}${album['AlbumTitle']}${album['ReleaseDate']}${album['Type']}
+ + +
+
+

Upcoming AlbumsUpcoming Albums

+
+
+ + + + + + + + + + + + + %for album in upcoming: + + + + + + + + + %endfor + +
ArtistAlbum NameRelease DateTypeStatus
${album['ArtistName']}${album['AlbumTitle']}${album['ReleaseDate']}${album['Type']}${album['Status']}
+
+ + +<%def name="headIncludes()"> + + + +<%def name="javascriptIncludes()"> + + + \ No newline at end of file
') + .hide() + .insertBefore( $(obj) ) + .bind('fancybox-cleanup', function() { + $(this).replaceWith(content.children()); + }).bind('fancybox-cancel', function() { + $(this).replaceWith(tmp.children()); + }); + + $(obj).appendTo(tmp); + + _process_inline(); + break; + + case 'image': + busy = false; + + $.fancybox.showActivity(); + + imgPreloader = new Image(); + + imgPreloader.onerror = function() { + _error(); + }; + + imgPreloader.onload = function() { + busy = true; + + imgPreloader.onerror = imgPreloader.onload = null; + + _process_image(); + }; + + imgPreloader.src = href; + break; + + case 'swf': + selectedOpts.scrolling = 'no'; + + str = ''; + emb = ''; + + $.each(selectedOpts.swf, function(name, val) { + str += ''; + emb += ' ' + name + '="' + val + '"'; + }); + + str += ''; + + tmp.html(str); + + _process_inline(); + break; + + case 'ajax': + busy = false; + + $.fancybox.showActivity(); + + selectedOpts.ajax.win = selectedOpts.ajax.success; + + ajaxLoader = $.ajax($.extend({}, selectedOpts.ajax, { + url : href, + data : selectedOpts.ajax.data || {}, + error : function(XMLHttpRequest, textStatus, errorThrown) { + if ( XMLHttpRequest.status > 0 ) { + _error(); + } + }, + success : function(data, textStatus, XMLHttpRequest) { + var o = typeof XMLHttpRequest == 'object' ? XMLHttpRequest : ajaxLoader; + if (o.status == 200) { + if ( typeof selectedOpts.ajax.win == 'function' ) { + ret = selectedOpts.ajax.win(href, data, textStatus, XMLHttpRequest); + + if (ret === false) { + loading.hide(); + return; + } else if (typeof ret == 'string' || typeof ret == 'object') { + data = ret; + } + } + + tmp.html( data ); + _process_inline(); + } + } + })); + + break; + + case 'iframe': + _show(); + break; + } + }, + + _process_inline = function() { + var + w = selectedOpts.width, + h = selectedOpts.height; + + if (w.toString().indexOf('%') > -1) { + w = parseInt( ($(window).width() - (selectedOpts.margin * 2)) * parseFloat(w) / 100, 10) + 'px'; + + } else { + w = w == 'auto' ? 'auto' : w + 'px'; + } + + if (h.toString().indexOf('%') > -1) { + h = parseInt( ($(window).height() - (selectedOpts.margin * 2)) * parseFloat(h) / 100, 10) + 'px'; + + } else { + h = h == 'auto' ? 'auto' : h + 'px'; + } + + tmp.wrapInner('
'); + + selectedOpts.width = tmp.width(); + selectedOpts.height = tmp.height(); + + _show(); + }, + + _process_image = function() { + selectedOpts.width = imgPreloader.width; + selectedOpts.height = imgPreloader.height; + + $("").attr({ + 'id' : 'fancybox-img', + 'src' : imgPreloader.src, + 'alt' : selectedOpts.title + }).appendTo( tmp ); + + _show(); + }, + + _show = function() { + var pos, equal; + + loading.hide(); + + if (wrap.is(":visible") && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { + $.event.trigger('fancybox-cancel'); + + busy = false; + return; + } + + busy = true; + + $(content.add( overlay )).unbind(); + + $(window).unbind("resize.fb scroll.fb"); + $(document).unbind('keydown.fb'); + + if (wrap.is(":visible") && currentOpts.titlePosition !== 'outside') { + wrap.css('height', wrap.height()); + } + + currentArray = selectedArray; + currentIndex = selectedIndex; + currentOpts = selectedOpts; + + if (currentOpts.overlayShow) { + overlay.css({ + 'background-color' : currentOpts.overlayColor, + 'opacity' : currentOpts.overlayOpacity, + 'cursor' : currentOpts.hideOnOverlayClick ? 'pointer' : 'auto', + 'height' : $(document).height() + }); + + if (!overlay.is(':visible')) { + if (isIE6) { + $('select:not(#fancybox-tmp select)').filter(function() { + return this.style.visibility !== 'hidden'; + }).css({'visibility' : 'hidden'}).one('fancybox-cleanup', function() { + this.style.visibility = 'inherit'; + }); + } + + overlay.show(); + } + } else { + overlay.hide(); + } + + final_pos = _get_zoom_to(); + + _process_title(); + + if (wrap.is(":visible")) { + $( close.add( nav_left ).add( nav_right ) ).hide(); + + pos = wrap.position(), + + start_pos = { + top : pos.top, + left : pos.left, + width : wrap.width(), + height : wrap.height() + }; + + equal = (start_pos.width == final_pos.width && start_pos.height == final_pos.height); + + content.fadeTo(currentOpts.changeFade, 0.3, function() { + var finish_resizing = function() { + content.html( tmp.contents() ).fadeTo(currentOpts.changeFade, 1, _finish); + }; + + $.event.trigger('fancybox-change'); + + content + .empty() + .removeAttr('filter') + .css({ + 'border-width' : currentOpts.padding, + 'width' : final_pos.width - currentOpts.padding * 2, + 'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2 + }); + + if (equal) { + finish_resizing(); + + } else { + fx.prop = 0; + + $(fx).animate({prop: 1}, { + duration : currentOpts.changeSpeed, + easing : currentOpts.easingChange, + step : _draw, + complete : finish_resizing + }); + } + }); + + return; + } + + wrap.removeAttr("style"); + + content.css('border-width', currentOpts.padding); + + if (currentOpts.transitionIn == 'elastic') { + start_pos = _get_zoom_from(); + + content.html( tmp.contents() ); + + wrap.show(); + + if (currentOpts.opacity) { + final_pos.opacity = 0; + } + + fx.prop = 0; + + $(fx).animate({prop: 1}, { + duration : currentOpts.speedIn, + easing : currentOpts.easingIn, + step : _draw, + complete : _finish + }); + + return; + } + + if (currentOpts.titlePosition == 'inside' && titleHeight > 0) { + title.show(); + } + + content + .css({ + 'width' : final_pos.width - currentOpts.padding * 2, + 'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2 + }) + .html( tmp.contents() ); + + wrap + .css(final_pos) + .fadeIn( currentOpts.transitionIn == 'none' ? 0 : currentOpts.speedIn, _finish ); + }, + + _format_title = function(title) { + if (title && title.length) { + if (currentOpts.titlePosition == 'float') { + return '
' + title + '
'; + } + + return '
' + title + '
'; + } + + return false; + }, + + _process_title = function() { + titleStr = currentOpts.title || ''; + titleHeight = 0; + + title + .empty() + .removeAttr('style') + .removeClass(); + + if (currentOpts.titleShow === false) { + title.hide(); + return; + } + + titleStr = $.isFunction(currentOpts.titleFormat) ? currentOpts.titleFormat(titleStr, currentArray, currentIndex, currentOpts) : _format_title(titleStr); + + if (!titleStr || titleStr === '') { + title.hide(); + return; + } + + title + .addClass('fancybox-title-' + currentOpts.titlePosition) + .html( titleStr ) + .appendTo( 'body' ) + .show(); + + switch (currentOpts.titlePosition) { + case 'inside': + title + .css({ + 'width' : final_pos.width - (currentOpts.padding * 2), + 'marginLeft' : currentOpts.padding, + 'marginRight' : currentOpts.padding + }); + + titleHeight = title.outerHeight(true); + + title.appendTo( outer ); + + final_pos.height += titleHeight; + break; + + case 'over': + title + .css({ + 'marginLeft' : currentOpts.padding, + 'width' : final_pos.width - (currentOpts.padding * 2), + 'bottom' : currentOpts.padding + }) + .appendTo( outer ); + break; + + case 'float': + title + .css('left', parseInt((title.width() - final_pos.width - 40)/ 2, 10) * -1) + .appendTo( wrap ); + break; + + default: + title + .css({ + 'width' : final_pos.width - (currentOpts.padding * 2), + 'paddingLeft' : currentOpts.padding, + 'paddingRight' : currentOpts.padding + }) + .appendTo( wrap ); + break; + } + + title.hide(); + }, + + _set_navigation = function() { + if (currentOpts.enableEscapeButton || currentOpts.enableKeyboardNav) { + $(document).bind('keydown.fb', function(e) { + if (e.keyCode == 27 && currentOpts.enableEscapeButton) { + e.preventDefault(); + $.fancybox.close(); + + } else if ((e.keyCode == 37 || e.keyCode == 39) && currentOpts.enableKeyboardNav && e.target.tagName !== 'INPUT' && e.target.tagName !== 'TEXTAREA' && e.target.tagName !== 'SELECT') { + e.preventDefault(); + $.fancybox[ e.keyCode == 37 ? 'prev' : 'next'](); + } + }); + } + + if (!currentOpts.showNavArrows) { + nav_left.hide(); + nav_right.hide(); + return; + } + + if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex !== 0) { + nav_left.show(); + } + + if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex != (currentArray.length -1)) { + nav_right.show(); + } + }, + + _finish = function () { + if (!$.support.opacity) { + content.get(0).style.removeAttribute('filter'); + wrap.get(0).style.removeAttribute('filter'); + } + + if (selectedOpts.autoDimensions) { + content.css('height', 'auto'); + } + + wrap.css('height', 'auto'); + + if (titleStr && titleStr.length) { + title.show(); + } + + if (currentOpts.showCloseButton) { + close.show(); + } + + _set_navigation(); + + if (currentOpts.hideOnContentClick) { + content.bind('click', $.fancybox.close); + } + + if (currentOpts.hideOnOverlayClick) { + overlay.bind('click', $.fancybox.close); + } + + $(window).bind("resize.fb", $.fancybox.resize); + + if (currentOpts.centerOnScroll) { + $(window).bind("scroll.fb", $.fancybox.center); + } + + if (currentOpts.type == 'iframe') { + $('').appendTo(content); + } + + wrap.show(); + + busy = false; + + $.fancybox.center(); + + currentOpts.onComplete(currentArray, currentIndex, currentOpts); + + _preload_images(); + }, + + _preload_images = function() { + var href, + objNext; + + if ((currentArray.length -1) > currentIndex) { + href = currentArray[ currentIndex + 1 ].href; + + if (typeof href !== 'undefined' && href.match(imgRegExp)) { + objNext = new Image(); + objNext.src = href; + } + } + + if (currentIndex > 0) { + href = currentArray[ currentIndex - 1 ].href; + + if (typeof href !== 'undefined' && href.match(imgRegExp)) { + objNext = new Image(); + objNext.src = href; + } + } + }, + + _draw = function(pos) { + var dim = { + width : parseInt(start_pos.width + (final_pos.width - start_pos.width) * pos, 10), + height : parseInt(start_pos.height + (final_pos.height - start_pos.height) * pos, 10), + + top : parseInt(start_pos.top + (final_pos.top - start_pos.top) * pos, 10), + left : parseInt(start_pos.left + (final_pos.left - start_pos.left) * pos, 10) + }; + + if (typeof final_pos.opacity !== 'undefined') { + dim.opacity = pos < 0.5 ? 0.5 : pos; + } + + wrap.css(dim); + + content.css({ + 'width' : dim.width - currentOpts.padding * 2, + 'height' : dim.height - (titleHeight * pos) - currentOpts.padding * 2 + }); + }, + + _get_viewport = function() { + return [ + $(window).width() - (currentOpts.margin * 2), + $(window).height() - (currentOpts.margin * 2), + $(document).scrollLeft() + currentOpts.margin, + $(document).scrollTop() + currentOpts.margin + ]; + }, + + _get_zoom_to = function () { + var view = _get_viewport(), + to = {}, + resize = currentOpts.autoScale, + double_padding = currentOpts.padding * 2, + ratio; + + if (currentOpts.width.toString().indexOf('%') > -1) { + to.width = parseInt((view[0] * parseFloat(currentOpts.width)) / 100, 10); + } else { + to.width = currentOpts.width + double_padding; + } + + if (currentOpts.height.toString().indexOf('%') > -1) { + to.height = parseInt((view[1] * parseFloat(currentOpts.height)) / 100, 10); + } else { + to.height = currentOpts.height + double_padding; + } + + if (resize && (to.width > view[0] || to.height > view[1])) { + if (selectedOpts.type == 'image' || selectedOpts.type == 'swf') { + ratio = (currentOpts.width ) / (currentOpts.height ); + + if ((to.width ) > view[0]) { + to.width = view[0]; + to.height = parseInt(((to.width - double_padding) / ratio) + double_padding, 10); + } + + if ((to.height) > view[1]) { + to.height = view[1]; + to.width = parseInt(((to.height - double_padding) * ratio) + double_padding, 10); + } + + } else { + to.width = Math.min(to.width, view[0]); + to.height = Math.min(to.height, view[1]); + } + } + + to.top = parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - to.height - 40) * 0.5)), 10); + to.left = parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - to.width - 40) * 0.5)), 10); + + return to; + }, + + _get_obj_pos = function(obj) { + var pos = obj.offset(); + + pos.top += parseInt( obj.css('paddingTop'), 10 ) || 0; + pos.left += parseInt( obj.css('paddingLeft'), 10 ) || 0; + + pos.top += parseInt( obj.css('border-top-width'), 10 ) || 0; + pos.left += parseInt( obj.css('border-left-width'), 10 ) || 0; + + pos.width = obj.width(); + pos.height = obj.height(); + + return pos; + }, + + _get_zoom_from = function() { + var orig = selectedOpts.orig ? $(selectedOpts.orig) : false, + from = {}, + pos, + view; + + if (orig && orig.length) { + pos = _get_obj_pos(orig); + + from = { + width : pos.width + (currentOpts.padding * 2), + height : pos.height + (currentOpts.padding * 2), + top : pos.top - currentOpts.padding - 20, + left : pos.left - currentOpts.padding - 20 + }; + + } else { + view = _get_viewport(); + + from = { + width : currentOpts.padding * 2, + height : currentOpts.padding * 2, + top : parseInt(view[3] + view[1] * 0.5, 10), + left : parseInt(view[2] + view[0] * 0.5, 10) + }; + } + + return from; + }, + + _animate_loading = function() { + if (!loading.is(':visible')){ + clearInterval(loadingTimer); + return; + } + + $('div', loading).css('top', (loadingFrame * -40) + 'px'); + + loadingFrame = (loadingFrame + 1) % 12; + }; + + /* + * Public methods + */ + + $.fn.fancybox = function(options) { + if (!$(this).length) { + return this; + } + + $(this) + .data('fancybox', $.extend({}, options, ($.metadata ? $(this).metadata() : {}))) + .unbind('click.fb') + .bind('click.fb', function(e) { + e.preventDefault(); + + if (busy) { + return; + } + + busy = true; + + $(this).blur(); + + selectedArray = []; + selectedIndex = 0; + + var rel = $(this).attr('rel') || ''; + + if (!rel || rel == '' || rel === 'nofollow') { + selectedArray.push(this); + + } else { + selectedArray = $("a[rel=" + rel + "], area[rel=" + rel + "]"); + selectedIndex = selectedArray.index( this ); + } + + _start(); + + return; + }); + + return this; + }; + + $.fancybox = function(obj) { + var opts; + + if (busy) { + return; + } + + busy = true; + opts = typeof arguments[1] !== 'undefined' ? arguments[1] : {}; + + selectedArray = []; + selectedIndex = parseInt(opts.index, 10) || 0; + + if ($.isArray(obj)) { + for (var i = 0, j = obj.length; i < j; i++) { + if (typeof obj[i] == 'object') { + $(obj[i]).data('fancybox', $.extend({}, opts, obj[i])); + } else { + obj[i] = $({}).data('fancybox', $.extend({content : obj[i]}, opts)); + } + } + + selectedArray = jQuery.merge(selectedArray, obj); + + } else { + if (typeof obj == 'object') { + $(obj).data('fancybox', $.extend({}, opts, obj)); + } else { + obj = $({}).data('fancybox', $.extend({content : obj}, opts)); + } + + selectedArray.push(obj); + } + + if (selectedIndex > selectedArray.length || selectedIndex < 0) { + selectedIndex = 0; + } + + _start(); + }; + + $.fancybox.showActivity = function() { + clearInterval(loadingTimer); + + loading.show(); + loadingTimer = setInterval(_animate_loading, 66); + }; + + $.fancybox.hideActivity = function() { + loading.hide(); + }; + + $.fancybox.next = function() { + return $.fancybox.pos( currentIndex + 1); + }; + + $.fancybox.prev = function() { + return $.fancybox.pos( currentIndex - 1); + }; + + $.fancybox.pos = function(pos) { + if (busy) { + return; + } + + pos = parseInt(pos); + + selectedArray = currentArray; + + if (pos > -1 && pos < currentArray.length) { + selectedIndex = pos; + _start(); + + } else if (currentOpts.cyclic && currentArray.length > 1) { + selectedIndex = pos >= currentArray.length ? 0 : currentArray.length - 1; + _start(); + } + + return; + }; + + $.fancybox.cancel = function() { + if (busy) { + return; + } + + busy = true; + + $.event.trigger('fancybox-cancel'); + + _abort(); + + selectedOpts.onCancel(selectedArray, selectedIndex, selectedOpts); + + busy = false; + }; + + // Note: within an iframe use - parent.$.fancybox.close(); + $.fancybox.close = function() { + if (busy || wrap.is(':hidden')) { + return; + } + + busy = true; + + if (currentOpts && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { + busy = false; + return; + } + + _abort(); + + $(close.add( nav_left ).add( nav_right )).hide(); + + $(content.add( overlay )).unbind(); + + $(window).unbind("resize.fb scroll.fb"); + $(document).unbind('keydown.fb'); + + content.find('iframe').attr('src', isIE6 && /^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank'); + + if (currentOpts.titlePosition !== 'inside') { + title.empty(); + } + + wrap.stop(); + + function _cleanup() { + overlay.fadeOut('fast'); + + title.empty().hide(); + wrap.hide(); + + $.event.trigger('fancybox-cleanup'); + + content.empty(); + + currentOpts.onClosed(currentArray, currentIndex, currentOpts); + + currentArray = selectedOpts = []; + currentIndex = selectedIndex = 0; + currentOpts = selectedOpts = {}; + + busy = false; + } + + if (currentOpts.transitionOut == 'elastic') { + start_pos = _get_zoom_from(); + + var pos = wrap.position(); + + final_pos = { + top : pos.top , + left : pos.left, + width : wrap.width(), + height : wrap.height() + }; + + if (currentOpts.opacity) { + final_pos.opacity = 1; + } + + title.empty().hide(); + + fx.prop = 1; + + $(fx).animate({ prop: 0 }, { + duration : currentOpts.speedOut, + easing : currentOpts.easingOut, + step : _draw, + complete : _cleanup + }); + + } else { + wrap.fadeOut( currentOpts.transitionOut == 'none' ? 0 : currentOpts.speedOut, _cleanup); + } + }; + + $.fancybox.resize = function() { + if (overlay.is(':visible')) { + overlay.css('height', $(document).height()); + } + + $.fancybox.center(true); + }; + + $.fancybox.center = function() { + var view, align; + + if (busy) { + return; + } + + align = arguments[0] === true ? 1 : 0; + view = _get_viewport(); + + if (!align && (wrap.width() > view[0] || wrap.height() > view[1])) { + return; + } + + wrap + .stop() + .animate({ + 'top' : parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - content.height() - 40) * 0.5) - currentOpts.padding)), + 'left' : parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - content.width() - 40) * 0.5) - currentOpts.padding)) + }, typeof arguments[0] == 'number' ? arguments[0] : 200); + }; + + $.fancybox.init = function() { + if ($("#fancybox-wrap").length) { + return; + } + + $('body').append( + tmp = $('
'), + loading = $('
'), + overlay = $('
'), + wrap = $('
') + ); + + outer = $('
') + .append('
') + .appendTo( wrap ); + + outer.append( + content = $('
'), + close = $('
'), + title = $('
'), + + nav_left = $(''), + nav_right = $('') + ); + + close.click($.fancybox.close); + loading.click($.fancybox.cancel); + + nav_left.click(function(e) { + e.preventDefault(); + $.fancybox.prev(); + }); + + nav_right.click(function(e) { + e.preventDefault(); + $.fancybox.next(); + }); + + if ($.fn.mousewheel) { + wrap.bind('mousewheel.fb', function(e, delta) { + if (busy) { + e.preventDefault(); + + } else if ($(e.target).get(0).clientHeight == 0 || $(e.target).get(0).scrollHeight === $(e.target).get(0).clientHeight) { + e.preventDefault(); + $.fancybox[ delta > 0 ? 'prev' : 'next'](); + } + }); + } + + if (!$.support.opacity) { + wrap.addClass('fancybox-ie'); + } + + if (isIE6) { + loading.addClass('fancybox-ie6'); + wrap.addClass('fancybox-ie6'); + + $('').prependTo(outer); + } + }; + + $.fn.fancybox.defaults = { + padding : 10, + margin : 40, + opacity : false, + modal : false, + cyclic : false, + scrolling : 'auto', // 'auto', 'yes' or 'no' + + width : 560, + height : 340, + + autoScale : true, + autoDimensions : true, + centerOnScroll : false, + + ajax : {}, + swf : { wmode: 'transparent' }, + + hideOnOverlayClick : true, + hideOnContentClick : false, + + overlayShow : true, + overlayOpacity : 0.7, + overlayColor : '#777', + + titleShow : true, + titlePosition : 'float', // 'float', 'outside', 'inside' or 'over' + titleFormat : null, + titleFromAlt : false, + + transitionIn : 'fade', // 'elastic', 'fade' or 'none' + transitionOut : 'fade', // 'elastic', 'fade' or 'none' + + speedIn : 300, + speedOut : 300, + + changeSpeed : 300, + changeFade : 'fast', + + easingIn : 'swing', + easingOut : 'swing', + + showCloseButton : true, + showNavArrows : true, + enableEscapeButton : true, + enableKeyboardNav : true, + + onStart : function(){}, + onCancel : function(){}, + onComplete : function(){}, + onCleanup : function(){}, + onClosed : function(){}, + onError : function(){} + }; + + $(document).ready(function() { + $.fancybox.init(); + }); + +})(jQuery); \ No newline at end of file diff --git a/data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.pack.js b/data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.pack.js new file mode 100644 index 00000000..1373ed08 --- /dev/null +++ b/data/interfaces/lossless/js/fancybox/jquery.fancybox-1.3.4.pack.js @@ -0,0 +1,46 @@ +/* + * FancyBox - jQuery Plugin + * Simple and fancy lightbox alternative + * + * Examples and documentation at: http://fancybox.net + * + * Copyright (c) 2008 - 2010 Janis Skarnelis + * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated. + * + * Version: 1.3.4 (11/11/2010) + * Requires: jQuery v1.3+ + * + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + */ + +;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,y=0,s="",r,i,h=false,B=b.extend(b("
")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width="auto";e.height="auto";m.html('

The requested content cannot be loaded.
Please try again later.

'); +F()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w=="object")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(k===""&&e.orig&&e.titleFromAlt)k=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)|| +c=="#")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g="html";else if(c)g=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(g){if(g=="inline"){a=c.substr(c.indexOf("#"));g=b(a).length>0?"inline":"ajax"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick= +false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(j.children())});switch(g){case "html":m.html(e.content);F();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){h=false;break}b('
').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(j.children())}).bind("fancybox-cancel", +function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case "image":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b("").attr({id:"fancybox-img",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case "swf":e.scrolling="no";C='';P="";b.each(e.swf,function(x,H){C+='';P+=" "+x+'="'+H+'"'});C+='";m.html(C);F();break;case "ajax":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R=="object"?R:G).status==200){if(typeof e.ajax.win== +"function"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w=="string"||typeof w=="object")x=w}m.html(x);F()}}}));break;case "iframe":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";m.wrapInner('
');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(":visible")&&false===d.onCleanup(l,p,d)){b.event.trigger("fancybox-cancel");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({"background-color":d.overlayColor, +opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!u.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});u.show()}}else u.hide();i=X();s=d.title||"";y=0;n.empty().removeAttr("style").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length? +d.titlePosition=="float"?'
'+s+'
':'
'+s+"
":false;s=a;if(!(!s||s==="")){n.addClass("fancybox-title-"+d.titlePosition).html(s).appendTo("body").show();switch(d.titlePosition){case "inside":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding}); +y=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case "over":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case "float":n.css("left",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(":visible")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height== +i.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr("style");j.css("border-width",d.padding);if(d.transitionIn=="elastic"){r=V();j.html(m.contents()); +f.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode== +37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&j.css("height","auto");f.css("height","auto"); +s&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind("click",b.fancybox.close);d.hideOnOverlayClick&&u.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('').appendTo(j); +f.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c); +j.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type== +"image"||e.type=="swf"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css("paddingTop"), +10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(":visible")){b("div",t).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)}; +b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")o.push(this);else{o=b("a[rel="+c+"], area[rel="+c+"]");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!=="undefined"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k= +0,C=a.length;ko.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+ +1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut("fast");n.empty().hide();f.hide();b.event.trigger("fancybox-cleanup");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(":hidden"))){h= +true;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");j.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&n.empty();f.stop();if(d.transitionOut=="elastic"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1; +b(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(":visible")&&u.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5- +d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('
'),t=b('
'),u=b('
'),f=b('
'));D=b('
').append('
').appendTo(f); +D.append(j=b('
'),E=b(''),n=b('
'),z=b(''),A=b(''));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()}); +b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){t.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('').prependTo(D)}}}; +b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing", +easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery); \ No newline at end of file diff --git a/data/interfaces/lossless/js/fancybox/jquery.mousewheel-3.0.4.pack.js b/data/interfaces/lossless/js/fancybox/jquery.mousewheel-3.0.4.pack.js new file mode 100644 index 00000000..cb66588e --- /dev/null +++ b/data/interfaces/lossless/js/fancybox/jquery.mousewheel-3.0.4.pack.js @@ -0,0 +1,14 @@ +/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net) +* Licensed under the MIT License (LICENSE.txt). +* +* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. +* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. +* Thanks to: Seamus Leahy for adding deltaX and deltaY +* +* Version: 3.0.4 +* +* Requires: 1.2.2+ +*/ + +(function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a= +f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery); \ No newline at end of file diff --git a/data/interfaces/lossless/js/libs/dd_belatedpng.js b/data/interfaces/lossless/js/libs/dd_belatedpng.js new file mode 100644 index 00000000..6062fb3c --- /dev/null +++ b/data/interfaces/lossless/js/libs/dd_belatedpng.js @@ -0,0 +1,13 @@ +/** +* DD_belatedPNG: Adds IE6 support: PNG images for CSS background-image and HTML . +* Author: Drew Diller +* Email: drew.diller@gmail.com +* URL: http://www.dillerdesign.com/experiment/DD_belatedPNG/ +* Version: 0.0.8a +* Licensed under the MIT License: http://dillerdesign.com/experiment/DD_belatedPNG/#license +* +* Example usage: +* DD_belatedPNG.fix('.png_bg'); // argument is a CSS selector +* DD_belatedPNG.fixPng( someNode ); // argument is an HTMLDomElement +**/ +var DD_belatedPNG={ns:"DD_belatedPNG",imgSize:{},delay:10,nodesFixed:0,createVmlNameSpace:function(){if(document.namespaces&&!document.namespaces[this.ns]){document.namespaces.add(this.ns,"urn:schemas-microsoft-com:vml")}},createVmlStyleSheet:function(){var b,a;b=document.createElement("style");b.setAttribute("media","screen");document.documentElement.firstChild.insertBefore(b,document.documentElement.firstChild.firstChild);if(b.styleSheet){b=b.styleSheet;b.addRule(this.ns+"\\:*","{behavior:url(#default#VML)}");b.addRule(this.ns+"\\:shape","position:absolute;");b.addRule("img."+this.ns+"_sizeFinder","behavior:none; border:none; position:absolute; z-index:-1; top:-10000px; visibility:hidden;");this.screenStyleSheet=b;a=document.createElement("style");a.setAttribute("media","print");document.documentElement.firstChild.insertBefore(a,document.documentElement.firstChild.firstChild);a=a.styleSheet;a.addRule(this.ns+"\\:*","{display: none !important;}");a.addRule("img."+this.ns+"_sizeFinder","{display: none !important;}")}},readPropertyChange:function(){var b,c,a;b=event.srcElement;if(!b.vmlInitiated){return}if(event.propertyName.search("background")!=-1||event.propertyName.search("border")!=-1){DD_belatedPNG.applyVML(b)}if(event.propertyName=="style.display"){c=(b.currentStyle.display=="none")?"none":"block";for(a in b.vml){if(b.vml.hasOwnProperty(a)){b.vml[a].shape.style.display=c}}}if(event.propertyName.search("filter")!=-1){DD_belatedPNG.vmlOpacity(b)}},vmlOpacity:function(b){if(b.currentStyle.filter.search("lpha")!=-1){var a=b.currentStyle.filter;a=parseInt(a.substring(a.lastIndexOf("=")+1,a.lastIndexOf(")")),10)/100;b.vml.color.shape.style.filter=b.currentStyle.filter;b.vml.image.fill.opacity=a}},handlePseudoHover:function(a){setTimeout(function(){DD_belatedPNG.applyVML(a)},1)},fix:function(a){if(this.screenStyleSheet){var c,b;c=a.split(",");for(b=0;bn.H){i.B=n.H}d.vml.image.shape.style.clip="rect("+i.T+"px "+(i.R+a)+"px "+i.B+"px "+(i.L+a)+"px)"}else{d.vml.image.shape.style.clip="rect("+f.T+"px "+f.R+"px "+f.B+"px "+f.L+"px)"}},figurePercentage:function(d,c,f,a){var b,e;e=true;b=(f=="X");switch(a){case"left":case"top":d[f]=0;break;case"center":d[f]=0.5;break;case"right":case"bottom":d[f]=1;break;default:if(a.search("%")!=-1){d[f]=parseInt(a,10)/100}else{e=false}}d[f]=Math.ceil(e?((c[b?"W":"H"]*d[f])-(c[b?"w":"h"]*d[f])):parseInt(a,10));if(d[f]%2===0){d[f]++}return d[f]},fixPng:function(c){c.style.behavior="none";var g,b,f,a,d;if(c.nodeName=="BODY"||c.nodeName=="TD"||c.nodeName=="TR"){return}c.isImg=false;if(c.nodeName=="IMG"){if(c.src.toLowerCase().search(/\.png$/)!=-1){c.isImg=true;c.style.visibility="hidden"}else{return}}else{if(c.currentStyle.backgroundImage.toLowerCase().search(".png")==-1){return}}g=DD_belatedPNG;c.vml={color:{},image:{}};b={shape:{},fill:{}};for(a in c.vml){if(c.vml.hasOwnProperty(a)){for(d in b){if(b.hasOwnProperty(d)){f=g.ns+":"+d;c.vml[a][d]=document.createElement(f)}}c.vml[a].shape.stroked=false;c.vml[a].shape.appendChild(c.vml[a].fill);c.parentNode.insertBefore(c.vml[a].shape,c)}}c.vml.image.shape.fillcolor="none";c.vml.image.fill.type="tile";c.vml.color.fill.on=false;g.attachHandlers(c);g.giveLayout(c);g.giveLayout(c.offsetParent);c.vmlInitiated=true;g.applyVML(c)}};try{document.execCommand("BackgroundImageCache",false,true)}catch(r){}DD_belatedPNG.createVmlNameSpace();DD_belatedPNG.createVmlStyleSheet(); \ No newline at end of file diff --git a/data/interfaces/lossless/js/libs/jquery-1.7.2.min.js b/data/interfaces/lossless/js/libs/jquery-1.7.2.min.js new file mode 100644 index 00000000..16ad06c5 --- /dev/null +++ b/data/interfaces/lossless/js/libs/jquery-1.7.2.min.js @@ -0,0 +1,4 @@ +/*! jQuery v1.7.2 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cu(a){if(!cj[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),b.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write((f.support.boxModel?"":"")+""),cl.close();d=cl.createElement(a),cl.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ck)}cj[a]=e}return cj[a]}function ct(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function cs(){cq=b}function cr(){setTimeout(cs,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;e=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?+d:j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){if(typeof c!="string"||!c)return null;var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=p.getElementsByTagName("*"),e=p.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=p.getElementsByTagName("input")[0],b={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:p.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,pixelMargin:!0},f.boxModel=b.boxModel=c.compatMode==="CSS1Compat",i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete p.test}catch(r){b.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",function(){b.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),i.setAttribute("name","t"),p.appendChild(i),j=c.createDocumentFragment(),j.appendChild(p.lastChild),b.checkClone=j.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,j.removeChild(i),j.appendChild(p);if(p.attachEvent)for(n in{submit:1,change:1,focusin:1})m="on"+n,o=m in p,o||(p.setAttribute(m,"return;"),o=typeof p[m]=="function"),b[n+"Bubbles"]=o;j.removeChild(p),j=g=h=p=i=null,f(function(){var d,e,g,h,i,j,l,m,n,q,r,s,t,u=c.getElementsByTagName("body")[0];!u||(m=1,t="padding:0;margin:0;border:",r="position:absolute;top:0;left:0;width:1px;height:1px;",s=t+"0;visibility:hidden;",n="style='"+r+t+"5px solid #000;",q="
"+""+"
",d=c.createElement("div"),d.style.cssText=s+"width:0;height:0;position:static;top:0;margin-top:"+m+"px",u.insertBefore(d,u.firstChild),p=c.createElement("div"),d.appendChild(p),p.innerHTML="
t
",k=p.getElementsByTagName("td"),o=k[0].offsetHeight===0,k[0].style.display="",k[1].style.display="none",b.reliableHiddenOffsets=o&&k[0].offsetHeight===0,a.getComputedStyle&&(p.innerHTML="",l=c.createElement("div"),l.style.width="0",l.style.marginRight="0",p.style.width="2px",p.appendChild(l),b.reliableMarginRight=(parseInt((a.getComputedStyle(l,null)||{marginRight:0}).marginRight,10)||0)===0),typeof p.style.zoom!="undefined"&&(p.innerHTML="",p.style.width=p.style.padding="1px",p.style.border=0,p.style.overflow="hidden",p.style.display="inline",p.style.zoom=1,b.inlineBlockNeedsLayout=p.offsetWidth===3,p.style.display="block",p.style.overflow="visible",p.innerHTML="
",b.shrinkWrapBlocks=p.offsetWidth!==3),p.style.cssText=r+s,p.innerHTML=q,e=p.firstChild,g=e.firstChild,i=e.nextSibling.firstChild.firstChild,j={doesNotAddBorder:g.offsetTop!==5,doesAddBorderForTableAndCells:i.offsetTop===5},g.style.position="fixed",g.style.top="20px",j.fixedPosition=g.offsetTop===20||g.offsetTop===15,g.style.position=g.style.top="",e.style.overflow="hidden",e.style.position="relative",j.subtractsBorderForOverflowNotVisible=g.offsetTop===-5,j.doesNotIncludeMarginInBodyOffset=u.offsetTop!==m,a.getComputedStyle&&(p.style.marginTop="1%",b.pixelMargin=(a.getComputedStyle(p,null)||{marginTop:0}).marginTop!=="1%"),typeof d.style.zoom!="undefined"&&(d.style.zoom=1),u.removeChild(d),l=p=d=null,f.extend(b,j))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e1,null,!1)},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){var d=2;typeof a!="string"&&(c=a,a="fx",d--);if(arguments.length1)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,f.prop,a,b,arguments.length>1)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.type]||f.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.type]||f.valHooks[g.nodeName.toLowerCase()];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h,i=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;i=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/(?:^|\s)hover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function( +a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler,g=p.selector),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&j.push({elem:this,matches:d.slice(e)});for(k=0;k0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));o.match.globalPOS=p;var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/]","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){return f.access(this,function(a){return a===b?f.text(this):this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f +.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){return f.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(;d1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||f.isXMLDoc(a)||!bc.test("<"+a.nodeName+">")?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g,h,i,j=[];b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);for(var k=0,l;(l=a[k])!=null;k++){typeof l=="number"&&(l+="");if(!l)continue;if(typeof l=="string")if(!_.test(l))l=b.createTextNode(l);else{l=l.replace(Y,"<$1>");var m=(Z.exec(l)||["",""])[1].toLowerCase(),n=bg[m]||bg._default,o=n[0],p=b.createElement("div"),q=bh.childNodes,r;b===c?bh.appendChild(p):U(b).appendChild(p),p.innerHTML=n[1]+l+n[2];while(o--)p=p.lastChild;if(!f.support.tbody){var s=$.test(l),t=m==="table"&&!s?p.firstChild&&p.firstChild.childNodes:n[1]===""&&!s?p.childNodes:[];for(i=t.length-1;i>=0;--i)f.nodeName(t[i],"tbody")&&!t[i].childNodes.length&&t[i].parentNode.removeChild(t[i])}!f.support.leadingWhitespace&&X.test(l)&&p.insertBefore(b.createTextNode(X.exec(l)[0]),p.firstChild),l=p.childNodes,p&&(p.parentNode.removeChild(p),q.length>0&&(r=q[q.length-1],r&&r.parentNode&&r.parentNode.removeChild(r)))}var u;if(!f.support.appendChecked)if(l[0]&&typeof (u=l.length)=="number")for(i=0;i1)},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=by(a,"opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bu.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(by)return by(a,c)},swap:function(a,b,c){var d={},e,f;for(f in b)d[f]=a.style[f],a.style[f]=b[f];e=c.call(a);for(f in b)a.style[f]=d[f];return e}}),f.curCSS=f.css,c.defaultView&&c.defaultView.getComputedStyle&&(bz=function(a,b){var c,d,e,g,h=a.style;b=b.replace(br,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b))),!f.support.pixelMargin&&e&&bv.test(b)&&bt.test(c)&&(g=h.width,h.width=c,c=e.width,h.width=g);return c}),c.documentElement.currentStyle&&(bA=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f==null&&g&&(e=g[b])&&(f=e),bt.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),by=bz||bA,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth!==0?bB(a,b,d):f.swap(a,bw,function(){return bB(a,b,d)})},set:function(a,b){return bs.test(b)?b+"px":b}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bq.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bp,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bp.test(g)?g.replace(bp,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){return f.swap(a,{display:"inline-block"},function(){return b?by(a,"margin-right"):a.style.marginRight})}})}),f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)}),f.each({margin:"",padding:"",border:"Width"},function(a,b){f.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bx[d]+b]=e[d]||e[d-2]||e[0];return f}}});var bC=/%20/g,bD=/\[\]$/,bE=/\r?\n/g,bF=/#.*$/,bG=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bH=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bI=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bJ=/^(?:GET|HEAD)$/,bK=/^\/\//,bL=/\?/,bM=/)<[^<]*)*<\/script>/gi,bN=/^(?:select|textarea)/i,bO=/\s+/,bP=/([?&])_=[^&]*/,bQ=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bR=f.fn.load,bS={},bT={},bU,bV,bW=["*/"]+["*"];try{bU=e.href}catch(bX){bU=c.createElement("a"),bU.href="",bU=bU.href}bV=bQ.exec(bU.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bR)return bR.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bM,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bN.test(this.nodeName)||bH.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bE,"\r\n")}}):{name:b.name,value:c.replace(bE,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b$(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b$(a,b);return a},ajaxSettings:{url:bU,isLocal:bI.test(bV[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bW},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bY(bS),ajaxTransport:bY(bT),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?ca(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cb(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bG.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bF,"").replace(bK,bV[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bO),d.crossDomain==null&&(r=bQ.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bV[1]&&r[2]==bV[2]&&(r[3]||(r[1]==="http:"?80:443))==(bV[3]||(bV[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bZ(bS,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bJ.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bL.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bP,"$1_="+x);d.url=y+(y===d.url?(bL.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bW+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bZ(bT,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bC,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=typeof b.data=="string"&&/^application\/x\-www\-form\-urlencoded/.test(b.contentType);if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n);try{m.text=h.responseText}catch(a){}try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(ct("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);f.fn[a]=function(e){return f.access(this,function(a,e,g){var h=cy(a);if(g===b)return h?c in h?h[c]:f.support.boxModel&&h.document.documentElement[e]||h.document.body[e]:a[e];h?h.scrollTo(d?f(h).scrollLeft():g,d?g:f(h).scrollTop()):a[e]=g},a,e,arguments.length,null)}}),f.each({Height:"height",Width:"width"},function(a,c){var d="client"+a,e="scroll"+a,g="offset"+a;f.fn["inner"+a]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,c,"padding")):this[c]():null},f.fn["outer"+a]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,c,a?"margin":"border")):this[c]():null},f.fn[c]=function(a){return f.access(this,function(a,c,h){var i,j,k,l;if(f.isWindow(a)){i=a.document,j=i.documentElement[d];return f.support.boxModel&&j||i.body&&i.body[d]||j}if(a.nodeType===9){i=a.documentElement;if(i[d]>=i[e])return i[d];return Math.max(a.body[e],i[e],a.body[g],i[g])}if(h===b){k=f.css(a,c),l=parseFloat(k);return f.isNumeric(l)?l:k}f(a).css(c,h)},c,a,arguments.length,null)}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/data/interfaces/lossless/js/libs/jquery-ui.min.js b/data/interfaces/lossless/js/libs/jquery-ui.min.js new file mode 100644 index 00000000..886976df --- /dev/null +++ b/data/interfaces/lossless/js/libs/jquery-ui.min.js @@ -0,0 +1,121 @@ +/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.core.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;return!b.href||!g||f.nodeName.toLowerCase()!=="map"?!1:(h=a("img[usemap=#"+g+"]")[0],!!h&&d(h))}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.ui=a.ui||{};if(a.ui.version)return;a.extend(a.ui,{version:"1.8.19",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;return a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0),/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)}),c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?g["inner"+d].call(this):this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){return typeof b!="number"?g["outer"+d].call(this,b):this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!d||!a.element[0].parentNode)return;for(var e=0;e0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e)},isOverAxis:function(a,b,c){return a>b&&a=9||!!b.button?this._mouseStarted?(this._mouseDrag(b),b.preventDefault()):(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b)),!this._mouseStarted):this._mouseUp(b)},_mouseUp:function(b){return a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b)),!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.position.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;a.fn.position=function(b){if(!b||!b.of)return g.apply(this,arguments);b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;return i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1],this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at})}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}))})},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left)},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top)}},flip:{left:function(b,c){if(c.at[0]===e)return;var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0},top:function(b,c){if(c.at[1]===e)return;var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using"in c?c.using.call(b,h):d.css(h)},a.fn.offset=function(b){var c=this[0];return!c||!c.ownerDocument?null:b?this.each(function(){a.offset.setOffset(this,b)}):h.call(this)}),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&a.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});for(var j in g)d.style[j]=g[j];d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2e3:0),f.fractions=i>21&&i<22}()})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.draggable.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.widget("ui.draggable",a.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},destroy:function(){if(!this.element.data("draggable"))return;return this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy(),this},_mouseCapture:function(b){var c=this.options;return this.helper||c.disabled||a(b.target).is(".ui-resizable-handle")?!1:(this.handle=this._getHandle(b),this.handle?(c.iframeFix&&a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a('
').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(a(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(b){var c=this.options;return this.helper=this._createHelper(b),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),c.containment&&this._setContainment(),this._trigger("start",b)===!1?(this._clear(),!1):(this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.helper.addClass("ui-draggable-dragging"),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b),!0)},_mouseDrag:function(b,c){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute");if(!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1)return this._mouseUp({}),!1;this.position=d.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";return a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),!1},_mouseStop:function(b){var c=!1;a.ui.ddmanager&&!this.options.dropBehaviour&&(c=a.ui.ddmanager.drop(this,b)),this.dropped&&(c=this.dropped,this.dropped=!1);if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return!1;if(this.options.revert=="invalid"&&!c||this.options.revert=="valid"&&c||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,c)){var d=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){d._trigger("stop",b)!==!1&&d._clear()})}else this._trigger("stop",b)!==!1&&this._clear();return!1},_mouseUp:function(b){return this.options.iframeFix===!0&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b),a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?!0:!1;return a(this.options.handle,this.element).find("*").andSelf().each(function(){this==b.target&&(c=!0)}),c},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b])):c.helper=="clone"?this.element.clone().removeAttr("id"):this.element;return d.parents("body").length||d.appendTo(c.appendTo=="parent"?this.element[0].parentNode:c.appendTo),d[0]!=this.element[0]&&!/(fixed|absolute)/.test(d.css("position"))&&d.css("position","absolute"),d},_adjustOffsetFromHelper:function(b){typeof b=="string"&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)b={top:0,left:0};return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b=this.options;b.containment=="parent"&&(b.containment=this.helper[0].parentNode);if(b.containment=="document"||b.containment=="window")this.containment=[b.containment=="document"?0:a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,b.containment=="document"?0:a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(b.containment=="document"?0:a(window).scrollLeft())+a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(b.containment=="document"?0:a(window).scrollTop())+(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(b.containment)&&b.containment.constructor!=Array){var c=a(b.containment),d=c[0];if(!d)return;var e=c.offset(),f=a(d).css("overflow")!="hidden";this.containment=[(parseInt(a(d).css("borderLeftWidth"),10)||0)+(parseInt(a(d).css("paddingLeft"),10)||0),(parseInt(a(d).css("borderTopWidth"),10)||0)+(parseInt(a(d).css("paddingTop"),10)||0),(f?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(a(d).css("borderLeftWidth"),10)||0)-(parseInt(a(d).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(f?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(a(d).css("borderTopWidth"),10)||0)-(parseInt(a(d).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=c}else b.containment.constructor==Array&&(this.containment=b.containment)},_convertPositionTo:function(b,c){c||(c=this.position);var d=b=="absolute"?1:-1,e=this.options,f=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=/(html|body)/i.test(f[0].tagName);return{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():g?0:f.scrollTop())*d),left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:f.scrollLeft())*d)}},_generatePosition:function(b){var c=this.options,d=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(d[0].tagName),f=b.pageX,g=b.pageY;if(this.originalPosition){var h;if(this.containment){if(this.relative_container){var i=this.relative_container.offset();h=[this.containment[0]+i.left,this.containment[1]+i.top,this.containment[2]+i.left,this.containment[3]+i.top]}else h=this.containment;b.pageX-this.offset.click.lefth[2]&&(f=h[2]+this.offset.click.left),b.pageY-this.offset.click.top>h[3]&&(g=h[3]+this.offset.click.top)}if(c.grid){var j=c.grid[1]?this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1]:this.originalPageY;g=h?j-this.offset.click.toph[3]?j-this.offset.click.toph[2]?k-this.offset.click.left=0;k--){var l=d.snapElements[k].left,m=l+d.snapElements[k].width,n=d.snapElements[k].top,o=n+d.snapElements[k].height;if(!(l-f=k&&g<=l||h>=k&&h<=l||gl)&&(e>=i&&e<=j||f>=i&&f<=j||ej);default:return!1}},a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(b,c){var d=a.ui.ddmanager.droppables[b.options.scope]||[],e=c?c.type:null,f=(b.currentItem||b.element).find(":data(droppable)").andSelf();g:for(var h=0;h
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){if(c.disabled)return;a(this).removeClass("ui-resizable-autohide"),b._handles.show()},function(){if(c.disabled)return;b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}return this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement),this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");return a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b),!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);return l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui()),!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}return a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;return p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null),a},_proportionallyResize:function(){var b=this.options;if(!this._proportionallyResizeElements.length)return;var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.19"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!i)return;e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/d.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*d.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.selectable.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.widget("ui.selectable",a.ui.mouse,{options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch"},_create:function(){var b=this;this.element.addClass("ui-selectable"),this.dragged=!1;var c;this.refresh=function(){c=a(b.options.filter,b.element[0]),c.addClass("ui-selectee"),c.each(function(){var b=a(this),c=b.offset();a.data(this,"selectable-item",{element:this,$element:b,left:c.left,top:c.top,right:c.left+b.outerWidth(),bottom:c.top+b.outerHeight(),startselected:!1,selected:b.hasClass("ui-selected"),selecting:b.hasClass("ui-selecting"),unselecting:b.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=c.addClass("ui-selectee"),this._mouseInit(),this.helper=a("
")},destroy:function(){return this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable"),this._mouseDestroy(),this},_mouseStart:function(b){var c=this;this.opos=[b.pageX,b.pageY];if(this.options.disabled)return;var d=this.options;this.selectees=a(d.filter,this.element[0]),this._trigger("start",b),a(d.appendTo).append(this.helper),this.helper.css({left:b.clientX,top:b.clientY,width:0,height:0}),d.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var d=a.data(this,"selectable-item");d.startselected=!0,!b.metaKey&&!b.ctrlKey&&(d.$element.removeClass("ui-selected"),d.selected=!1,d.$element.addClass("ui-unselecting"),d.unselecting=!0,c._trigger("unselecting",b,{unselecting:d.element}))}),a(b.target).parents().andSelf().each(function(){var d=a.data(this,"selectable-item");if(d){var e=!b.metaKey&&!b.ctrlKey||!d.$element.hasClass("ui-selected");return d.$element.removeClass(e?"ui-unselecting":"ui-selected").addClass(e?"ui-selecting":"ui-unselecting"),d.unselecting=!e,d.selecting=e,d.selected=e,e?c._trigger("selecting",b,{selecting:d.element}):c._trigger("unselecting",b,{unselecting:d.element}),!1}})},_mouseDrag:function(b){var c=this;this.dragged=!0;if(this.options.disabled)return;var d=this.options,e=this.opos[0],f=this.opos[1],g=b.pageX,h=b.pageY;if(e>g){var i=g;g=e,e=i}if(f>h){var i=h;h=f,f=i}return this.helper.css({left:e,top:f,width:g-e,height:h-f}),this.selectees.each(function(){var i=a.data(this,"selectable-item");if(!i||i.element==c.element[0])return;var j=!1;d.tolerance=="touch"?j=!(i.left>g||i.righth||i.bottome&&i.rightf&&i.bottom *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var a=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},destroy:function(){a.Widget.prototype.destroy.call(this),this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var b=this.items.length-1;b>=0;b--)this.items[b].item.removeData(this.widgetName+"-item");return this},_setOption:function(b,c){b==="disabled"?(this.options[b]=c,this.widget()[c?"addClass":"removeClass"]("ui-sortable-disabled")):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(b,c){var d=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(b);var e=null,f=this,g=a(b.target).parents().each(function(){if(a.data(this,d.widgetName+"-item")==f)return e=a(this),!1});a.data(b.target,d.widgetName+"-item")==f&&(e=a(b.target));if(!e)return!1;if(this.options.handle&&!c){var h=!1;a(this.options.handle,e).find("*").andSelf().each(function(){this==b.target&&(h=!0)});if(!h)return!1}return this.currentItem=e,this._removeCurrentsFromItems(),!0},_mouseStart:function(b,c,d){var e=this.options,f=this;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(b),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,e.cursorAt&&this._adjustOffsetFromHelper(e.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),e.containment&&this._setContainment(),e.cursor&&(a("body").css("cursor")&&(this._storedCursor=a("body").css("cursor")),a("body").css("cursor",e.cursor)),e.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",e.opacity)),e.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",e.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",b,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!d)for(var g=this.containers.length-1;g>=0;g--)this.containers[g]._trigger("activate",b,f._uiHash(this));return a.ui.ddmanager&&(a.ui.ddmanager.current=this),a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(b),!0},_mouseDrag:function(b){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var c=this.options,d=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-b.pageY=0;e--){var f=this.items[e],g=f.item[0],h=this._intersectsWithPointer(f);if(!h)continue;if(g!=this.currentItem[0]&&this.placeholder[h==1?"next":"prev"]()[0]!=g&&!a.ui.contains(this.placeholder[0],g)&&(this.options.type=="semi-dynamic"?!a.ui.contains(this.element[0],g):!0)){this.direction=h==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(f))this._rearrange(b,f);else break;this._trigger("change",b,this._uiHash());break}}return this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(b,c){if(!b)return;a.ui.ddmanager&&!this.options.dropBehaviour&&a.ui.ddmanager.drop(this,b);if(this.options.revert){var d=this,e=d.placeholder.offset();d.reverting=!0,a(this.helper).animate({left:e.left-this.offset.parent.left-d.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:e.top-this.offset.parent.top-d.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){d._clear(b)})}else this._clear(b,c);return!1},cancel:function(){var b=this;if(this.dragging){this._mouseUp({target:null}),this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("deactivate",null,b._uiHash(this)),this.containers[c].containerCache.over&&(this.containers[c]._trigger("out",null,b._uiHash(this)),this.containers[c].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),a.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?a(this.domPosition.prev).after(this.currentItem):a(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},a(c).each(function(){var c=(a(b.item||this).attr(b.attribute||"id")||"").match(b.expression||/(.+)[-=_](.+)/);c&&d.push((b.key||c[1]+"[]")+"="+(b.key&&b.expression?c[1]:c[2]))}),!d.length&&b.key&&d.push(b.key+"="),d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];return b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")}),d},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,d=this.positionAbs.top,e=d+this.helperProportions.height,f=a.left,g=f+a.width,h=a.top,i=h+a.height,j=this.offset.click.top,k=this.offset.click.left,l=d+j>h&&d+jf&&b+ka[this.floating?"width":"height"]?l:f0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){return this._refreshItems(a),this.refreshPositions(),this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(b){var c=this,d=[],e=[],f=this._connectWith();if(f&&b)for(var g=f.length-1;g>=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&e.push([a.isFunction(j.options.items)?j.options.items.call(j.element):a(j.options.items,j.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),j])}}e.push([a.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):a(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var g=e.length-1;g>=0;g--)e[g][0].each(function(){d.push(this)});return a(d)},_removeCurrentsFromItems:function(){var a=this.currentItem.find(":data("+this.widgetName+"-item)");for(var b=0;b=0;g--){var h=a(f[g]);for(var i=h.length-1;i>=0;i--){var j=a.data(h[i],this.widgetName);j&&j!=this&&!j.options.disabled&&(e.push([a.isFunction(j.options.items)?j.options.items.call(j.element[0],b,{item:this.currentItem}):a(j.options.items,j.element),j]),this.containers.push(j))}}for(var g=e.length-1;g>=0;g--){var k=e[g][1],l=e[g][0];for(var i=0,m=l.length;i=0;c--){var d=this.items[c];if(d.instance!=this.currentContainer&&this.currentContainer&&d.item[0]!=this.currentItem[0])continue;var e=this.options.toleranceElement?a(this.options.toleranceElement,d.item):d.item;b||(d.width=e.outerWidth(),d.height=e.outerHeight());var f=e.offset();d.left=f.left,d.top=f.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var c=this.containers.length-1;c>=0;c--){var f=this.containers[c].element.offset();this.containers[c].containerCache.left=f.left,this.containers[c].containerCache.top=f.top,this.containers[c].containerCache.width=this.containers[c].element.outerWidth(),this.containers[c].containerCache.height=this.containers[c].element.outerHeight()}return this},_createPlaceholder:function(b){var c=b||this,d=c.options;if(!d.placeholder||d.placeholder.constructor==String){var e=d.placeholder;d.placeholder={element:function(){var b=a(document.createElement(c.currentItem[0].nodeName)).addClass(e||c.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper").html(" ")[0];return e||(b.style.visibility="hidden"),b},update:function(a,b){if(e&&!d.forcePlaceholderSize)return;b.height()||b.height(c.currentItem.innerHeight()-parseInt(c.currentItem.css("paddingTop")||0,10)-parseInt(c.currentItem.css("paddingBottom")||0,10)),b.width()||b.width(c.currentItem.innerWidth()-parseInt(c.currentItem.css("paddingLeft")||0,10)-parseInt(c.currentItem.css("paddingRight")||0,10))}}}c.placeholder=a(d.placeholder.element.call(c.element,c.currentItem)),c.currentItem.after(c.placeholder),d.placeholder.update(c,c.placeholder)},_contactContainers:function(b){var c=null,d=null;for(var e=this.containers.length-1;e>=0;e--){if(a.ui.contains(this.currentItem[0],this.containers[e].element[0]))continue;if(this._intersectsWith(this.containers[e].containerCache)){if(c&&a.ui.contains(this.containers[e].element[0],c.element[0]))continue;c=this.containers[e],d=e}else this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",b,this._uiHash(this)),this.containers[e].containerCache.over=0)}if(!c)return;if(this.containers.length===1)this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1;else if(this.currentContainer!=this.containers[d]){var f=1e4,g=null,h=this.positionAbs[this.containers[d].floating?"left":"top"];for(var i=this.items.length-1;i>=0;i--){if(!a.ui.contains(this.containers[d].element[0],this.items[i].item[0]))continue;var j=this.items[i][this.containers[d].floating?"left":"top"];Math.abs(j-h)this.containment[2]&&(f=this.containment[2]+this.offset.click.left),b.pageY-this.offset.click.top>this.containment[3]&&(g=this.containment[3]+this.offset.click.top));if(c.grid){var h=this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1];g=this.containment?h-this.offset.click.topthis.containment[3]?h-this.offset.click.topthis.containment[2]?i-this.offset.click.left=0;f--)a.ui.contains(this.containers[f].element[0],this.currentItem[0])&&!c&&(d.push(function(a){return function(b){a._trigger("receive",b,this._uiHash(this))}}.call(this,this.containers[f])),d.push(function(a){return function(b){a._trigger("update",b,this._uiHash(this))}}.call(this,this.containers[f])))}for(var f=this.containers.length-1;f>=0;f--)c||d.push(function(a){return function(b){a._trigger("deactivate",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over&&(d.push(function(a){return function(b){a._trigger("out",b,this._uiHash(this))}}.call(this,this.containers[f])),this.containers[f].containerCache.over=0);this._storedCursor&&a("body").css("cursor",this._storedCursor),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex),this.dragging=!1;if(this.cancelHelperRemoval){if(!c){this._trigger("beforeStop",b,this._uiHash());for(var f=0;f li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:!1,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var b=this,c=b.options;b.running=0,b.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix"),b.headers=b.element.find(c.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){if(c.disabled)return;a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){if(c.disabled)return;a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){if(c.disabled)return;a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){if(c.disabled)return;a(this).removeClass("ui-state-focus")}),b.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");if(c.navigation){var d=b.element.find("a").filter(c.navigationFilter).eq(0);if(d.length){var e=d.closest(".ui-accordion-header");e.length?b.active=e:b.active=d.closest(".ui-accordion-content").prev()}}b.active=b._findActive(b.active||c.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"),b.active.next().addClass("ui-accordion-content-active"),b._createIcons(),b.resize(),b.element.attr("role","tablist"),b.headers.attr("role","tab").bind("keydown.accordion",function(a){return b._keydown(a)}).next().attr("role","tabpanel"),b.headers.not(b.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide(),b.active.length?b.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):b.headers.eq(0).attr("tabIndex",0),a.browser.safari||b.headers.find("a").attr("tabIndex",-1),c.event&&b.headers.bind(c.event.split(" ").join(".accordion ")+".accordion",function(a){b._clickHandler.call(b,a,this),a.preventDefault()})},_createIcons:function(){var b=this.options;b.icons&&(a("").addClass("ui-icon "+b.icons.header).prependTo(this.headers),this.active.children(".ui-icon").toggleClass(b.icons.header).toggleClass(b.icons.headerSelected),this.element.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.children(".ui-icon").remove(),this.element.removeClass("ui-accordion-icons")},destroy:function(){var b=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex"),this.headers.find("a").removeAttr("tabIndex"),this._destroyIcons();var c=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");return(b.autoHeight||b.fillHeight)&&c.css("height",""),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b=="active"&&this.activate(c),b=="icons"&&(this._destroyIcons(),c&&this._createIcons()),b=="disabled"&&this.headers.add(this.headers.next())[c?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(b){if(this.options.disabled||b.altKey||b.ctrlKey)return;var c=a.ui.keyCode,d=this.headers.length,e=this.headers.index(b.target),f=!1;switch(b.keyCode){case c.RIGHT:case c.DOWN:f=this.headers[(e+1)%d];break;case c.LEFT:case c.UP:f=this.headers[(e-1+d)%d];break;case c.SPACE:case c.ENTER:this._clickHandler({target:b.target},b.target),b.preventDefault()}return f?(a(b.target).attr("tabIndex",-1),a(f).attr("tabIndex",0),f.focus(),!1):!0},resize:function(){var b=this.options,c;if(b.fillSpace){if(a.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}c=this.element.parent().height(),a.browser.msie&&this.element.parent().css("overflow",d),this.headers.each(function(){c-=a(this).outerHeight(!0)}),this.headers.next().each(function(){a(this).height(Math.max(0,c-a(this).innerHeight()+a(this).height()))}).css("overflow","auto")}else b.autoHeight&&(c=0,this.headers.next().each(function(){c=Math.max(c,a(this).height("").height())}).height(c));return this},activate:function(a){this.options.active=a;var b=this._findActive(a)[0];return this._clickHandler({target:b},b),this},_findActive:function(b){return b?typeof b=="number"?this.headers.filter(":eq("+b+")"):this.headers.not(this.headers.not(b)):b===!1?a([]):this.headers.filter(":eq(0)")},_clickHandler:function(b,c){var d=this.options;if(d.disabled)return;if(!b.target){if(!d.collapsible)return;this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header),this.active.next().addClass("ui-accordion-content-active");var e=this.active.next(),f={options:d,newHeader:a([]),oldHeader:d.active,newContent:a([]),oldContent:e},g=this.active=a([]);this._toggle(g,e,f);return}var h=a(b.currentTarget||c),i=h[0]===this.active[0];d.active=d.collapsible&&i?!1:this.headers.index(h);if(this.running||!d.collapsible&&i)return;var j=this.active,g=h.next(),e=this.active.next(),f={options:d,newHeader:i&&d.collapsible?a([]):h,oldHeader:this.active,newContent:i&&d.collapsible?a([]):g,oldContent:e},k=this.headers.index(this.active[0])>this.headers.index(h[0]);this.active=i?a([]):h,this._toggle(g,e,f,i,k),j.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header),i||(h.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected),h.next().addClass("ui-accordion-content-active"));return},_toggle:function(b,c,d,e,f){var g=this,h=g.options;g.toShow=b,g.toHide=c,g.data=d;var i=function(){if(!g)return;return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data),g.running=c.size()===0?b.size():c.size();if(h.animated){var j={};h.collapsible&&e?j={toShow:a([]),toHide:c,complete:i,down:f,autoHeight:h.autoHeight||h.fillSpace}:j={toShow:b,toHide:c,complete:i,down:f,autoHeight:h.autoHeight||h.fillSpace},h.proxied||(h.proxied=h.animated),h.proxiedDuration||(h.proxiedDuration=h.duration),h.animated=a.isFunction(h.proxied)?h.proxied(j):h.proxied,h.duration=a.isFunction(h.proxiedDuration)?h.proxiedDuration(j):h.proxiedDuration;var k=a.ui.accordion.animations,l=h.duration,m=h.animated;m&&!k[m]&&!a.easing[m]&&(m="slide"),k[m]||(k[m]=function(a){this.slide(a,{easing:m,duration:l||700})}),k[m](j)}else h.collapsible&&e?b.toggle():(c.hide(),b.show()),i(!0);c.prev().attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).blur(),b.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(this.running)return;this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""}),this.toHide.removeClass("ui-accordion-content-active"),this.toHide.length&&(this.toHide.parent()[0].className=this.toHide.parent()[0].className),this._trigger("change",null,this.data)}}),a.extend(a.ui.accordion,{version:"1.8.19",animations:{slide:function(b,c){b=a.extend({easing:"swing",duration:300},b,c);if(!b.toHide.size()){b.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},b);return}if(!b.toShow.size()){b.toHide.animate({height:"hide",paddingTop:"hide",paddingBottom:"hide"},b);return}var d=b.toShow.css("overflow"),e=0,f={},g={},h=["height","paddingTop","paddingBottom"],i,j=b.toShow;i=j[0].style.width,j.width(j.parent().width()-parseFloat(j.css("paddingLeft"))-parseFloat(j.css("paddingRight"))-(parseFloat(j.css("borderLeftWidth"))||0)-(parseFloat(j.css("borderRightWidth"))||0)),a.each(h,function(c,d){g[d]="hide";var e=(""+a.css(b.toShow[0],d)).match(/^([\d+-.]+)(.*)$/);f[d]={value:e[1],unit:e[2]||"px"}}),b.toShow.css({height:0,overflow:"hidden"}).show(),b.toHide.filter(":hidden").each(b.complete).end().filter(":visible").animate(g,{step:function(a,c){c.prop=="height"&&(e=c.end-c.start===0?0:(c.now-c.start)/(c.end-c.start)),b.toShow[0].style[c.prop]=e*f[c.prop].value+f[c.prop].unit},duration:b.duration,easing:b.easing,complete:function(){b.autoHeight||b.toShow.css("height",""),b.toShow.css({width:i,overflow:d}),b.complete()}})},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1e3:200})}}})})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.autocomplete.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){var c=0;a.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var b=this,c=this.element[0].ownerDocument,d;this.isMultiLine=this.element.is("textarea"),this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(b.options.disabled||b.element.propAttr("readOnly"))return;d=!1;var e=a.ui.keyCode;switch(c.keyCode){case e.PAGE_UP:b._move("previousPage",c);break;case e.PAGE_DOWN:b._move("nextPage",c);break;case e.UP:b._keyEvent("previous",c);break;case e.DOWN:b._keyEvent("next",c);break;case e.ENTER:case e.NUMPAD_ENTER:b.menu.active&&(d=!0,c.preventDefault());case e.TAB:if(!b.menu.active)return;b.menu.select(c);break;case e.ESCAPE:b.element.val(b.term),b.close(c);break;default:clearTimeout(b.searching),b.searching=setTimeout(function(){b.term!=b.element.val()&&(b.selectedItem=null,b.search(null,c))},b.options.delay)}}).bind("keypress.autocomplete",function(a){d&&(d=!1,a.preventDefault())}).bind("focus.autocomplete",function(){if(b.options.disabled)return;b.selectedItem=null,b.previous=b.element.val()}).bind("blur.autocomplete",function(a){if(b.options.disabled)return;clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150)}),this._initSource(),this.menu=a("
    ").addClass("ui-autocomplete").appendTo(a(this.options.appendTo||"body",c)[0]).mousedown(function(c){var d=b.menu.element[0];a(c.target).closest(".ui-menu-item").length||setTimeout(function(){a(document).one("mousedown",function(c){c.target!==b.element[0]&&c.target!==d&&!a.ui.contains(d,c.target)&&b.close()})},1),setTimeout(function(){clearTimeout(b.closing)},13)}).menu({focus:function(a,c){var d=c.item.data("item.autocomplete");!1!==b._trigger("focus",a,{item:d})&&/^key/.test(a.originalEvent.type)&&b.element.val(d.value)},selected:function(a,d){var e=d.item.data("item.autocomplete"),f=b.previous;b.element[0]!==c.activeElement&&(b.element.focus(),b.previous=f,setTimeout(function(){b.previous=f,b.selectedItem=e},1)),!1!==b._trigger("select",a,{item:e})&&b.element.val(e.value),b.term=b.element.val(),b.close(a),b.selectedItem=e},blur:function(a,c){b.menu.element.is(":visible")&&b.element.val()!==b.term&&b.element.val(b.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),a.fn.bgiframe&&this.menu.element.bgiframe(),b.beforeunloadHandler=function(){b.element.removeAttr("autocomplete")},a(window).bind("beforeunload",b.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),a(window).unbind("beforeunload",this.beforeunloadHandler),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments),b==="source"&&this._initSource(),b==="appendTo"&&this.menu.element.appendTo(a(c||"body",this.element[0].ownerDocument)[0]),b==="disabled"&&c&&this.xhr&&this.xhr.abort()},_initSource:function(){var b=this,c,d;a.isArray(this.options.source)?(c=this.options.source,this.source=function(b,d){d(a.ui.autocomplete.filter(c,b.term))}):typeof this.options.source=="string"?(d=this.options.source,this.source=function(c,e){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:d,data:c,dataType:"json",success:function(a,b){e(a)},error:function(){e([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length").data("item.autocomplete",c).append(a("").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible")){this.search(null,b);return}if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term),this.menu.deactivate();return}this.menu[a](b)},widget:function(){return this.menu.element},_keyEvent:function(a,b){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(a,b),b.preventDefault()}}),a.extend(a.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(b,c){var d=new RegExp(a.ui.autocomplete.escapeRegex(c),"i");return a.grep(b,function(a){return d.test(a.label||a.value||a)})}})})(jQuery),function(a){a.widget("ui.menu",{_create:function(){var b=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(c){if(!a(c.target).closest(".ui-menu-item a").length)return;c.preventDefault(),b.select(c)}),this.refresh()},refresh:function(){var b=this,c=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");c.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(c){b.activate(c,a(this).parent())}).mouseleave(function(){b.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var c=b.offset().top-this.element.offset().top,d=this.element.scrollTop(),e=this.element.height();c<0?this.element.scrollTop(d+c):c>=e&&this.element.scrollTop(d+c-e+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",a,{item:b})},deactivate:function(){if(!this.active)return;this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,c){if(!this.active){this.activate(c,this.element.children(b));return}var d=this.active[a+"All"](".ui-menu-item").eq(0);d.length?this.activate(c,d):this.activate(c,this.element.children(b))},nextPage:function(b){if(this.hasScroll()){if(!this.active||this.last()){this.activate(b,this.element.children(".ui-menu-item:first"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c-d+a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:last")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(b){if(this.hasScroll()){if(!this.active||this.first()){this.activate(b,this.element.children(".ui-menu-item:last"));return}var c=this.active.offset().top,d=this.element.height(),e=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10});e.length||(e=this.element.children(".ui-menu-item:first")),this.activate(b,e)}else this.activate(b,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()",this.element[0].ownerDocument).addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,e=d.primary&&d.secondary,f=[];d.primary||d.secondary?(this.options.text&&f.push("ui-button-text-icon"+(e?"s":d.primary?"-primary":"-secondary")),d.primary&&b.prepend(""),d.secondary&&b.append(""),this.options.text||(f.push(e?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||b.attr("title",c))):f.push("ui-button-text-only"),b.addClass(f.join(" "))}}),a.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c),a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){var b=this.element.css("direction")==="rtl";this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(b?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(b?"ui-corner-left":"ui-corner-right").end().end()},destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy"),a.Widget.prototype.destroy.call(this)}})})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.dialog.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){var c="ui-dialog ui-widget ui-widget-content ui-corner-all ",d={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},e={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0},f=a.attrFn||{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0,click:!0};a.widget("ui.dialog",{options:{autoOpen:!0,buttons:{},closeOnEscape:!0,closeText:"close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:!1,maxWidth:!1,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",collision:"fit",using:function(b){var c=a(this).css(b).offset().top;c<0&&a(this).css("top",b.top-c)}},resizable:!0,show:null,stack:!0,title:"",width:300,zIndex:1e3},_create:function(){this.originalTitle=this.element.attr("title"),typeof this.originalTitle!="string"&&(this.originalTitle=""),this.options.title=this.options.title||this.originalTitle;var b=this,d=b.options,e=d.title||" ",f=a.ui.dialog.getTitleId(b.element),g=(b.uiDialog=a("
    ")).appendTo(document.body).hide().addClass(c+d.dialogClass).css({zIndex:d.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(c){d.closeOnEscape&&!c.isDefaultPrevented()&&c.keyCode&&c.keyCode===a.ui.keyCode.ESCAPE&&(b.close(c),c.preventDefault())}).attr({role:"dialog","aria-labelledby":f}).mousedown(function(a){b.moveToTop(!1,a)}),h=b.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g),i=(b.uiDialogTitlebar=a("
    ")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),j=a('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){j.addClass("ui-state-hover")},function(){j.removeClass("ui-state-hover")}).focus(function(){j.addClass("ui-state-focus")}).blur(function(){j.removeClass("ui-state-focus")}).click(function(a){return b.close(a),!1}).appendTo(i),k=(b.uiDialogTitlebarCloseText=a("")).addClass("ui-icon ui-icon-closethick").text(d.closeText).appendTo(j),l=a("").addClass("ui-dialog-title").attr("id",f).html(e).prependTo(i);a.isFunction(d.beforeclose)&&!a.isFunction(d.beforeClose)&&(d.beforeClose=d.beforeclose),i.find("*").add(i).disableSelection(),d.draggable&&a.fn.draggable&&b._makeDraggable(),d.resizable&&a.fn.resizable&&b._makeResizable(),b._createButtons(d.buttons),b._isOpen=!1,a.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;return a.overlay&&a.overlay.destroy(),a.uiDialog.hide(),a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"),a.uiDialog.remove(),a.originalTitle&&a.element.attr("title",a.originalTitle),a},widget:function(){return this.uiDialog},close:function(b){var c=this,d,e;if(!1===c._trigger("beforeClose",b))return;return c.overlay&&c.overlay.destroy(),c.uiDialog.unbind("keypress.ui-dialog"),c._isOpen=!1,c.options.hide?c.uiDialog.hide(c.options.hide,function(){c._trigger("close",b)}):(c.uiDialog.hide(),c._trigger("close",b)),a.ui.dialog.overlay.resize(),c.options.modal&&(d=0,a(".ui-dialog").each(function(){this!==c.uiDialog[0]&&(e=a(this).css("z-index"),isNaN(e)||(d=Math.max(d,e)))}),a.ui.dialog.maxZ=d),c},isOpen:function(){return this._isOpen},moveToTop:function(b,c){var d=this,e=d.options,f;return e.modal&&!b||!e.stack&&!e.modal?d._trigger("focus",c):(e.zIndex>a.ui.dialog.maxZ&&(a.ui.dialog.maxZ=e.zIndex),d.overlay&&(a.ui.dialog.maxZ+=1,d.overlay.$el.css("z-index",a.ui.dialog.overlay.maxZ=a.ui.dialog.maxZ)),f={scrollTop:d.element.scrollTop(),scrollLeft:d.element.scrollLeft()},a.ui.dialog.maxZ+=1,d.uiDialog.css("z-index",a.ui.dialog.maxZ),d.element.attr(f),d._trigger("focus",c),d)},open:function(){if(this._isOpen)return;var b=this,c=b.options,d=b.uiDialog;return b.overlay=c.modal?new a.ui.dialog.overlay(b):null,b._size(),b._position(c.position),d.show(c.show),b.moveToTop(!0),c.modal&&d.bind("keydown.ui-dialog",function(b){if(b.keyCode!==a.ui.keyCode.TAB)return;var c=a(":tabbable",this),d=c.filter(":first"),e=c.filter(":last");if(b.target===e[0]&&!b.shiftKey)return d.focus(1),!1;if(b.target===d[0]&&b.shiftKey)return e.focus(1),!1}),a(b.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus(),b._isOpen=!0,b._trigger("open"),b},_createButtons:function(b){var c=this,d=!1,e=a("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=a("
    ").addClass("ui-dialog-buttonset").appendTo(e);c.uiDialog.find(".ui-dialog-buttonpane").remove(),typeof b=="object"&&b!==null&&a.each(b,function(){return!(d=!0)}),d&&(a.each(b,function(b,d){d=a.isFunction(d)?{click:d,text:b}:d;var e=a('').click(function(){d.click.apply(c.element[0],arguments)}).appendTo(g);a.each(d,function(a,b){if(a==="click")return;a in f?e[a](b):e.attr(a,b)}),a.fn.button&&e.button()}),e.appendTo(c.uiDialog))},_makeDraggable:function(){function f(a){return{position:a.position,offset:a.offset}}var b=this,c=b.options,d=a(document),e;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(d,g){e=c.height==="auto"?"auto":a(this).height(),a(this).height(a(this).height()).addClass("ui-dialog-dragging"),b._trigger("dragStart",d,f(g))},drag:function(a,c){b._trigger("drag",a,f(c))},stop:function(g,h){c.position=[h.position.left-d.scrollLeft(),h.position.top-d.scrollTop()],a(this).removeClass("ui-dialog-dragging").height(e),b._trigger("dragStop",g,f(h)),a.ui.dialog.overlay.resize()}})},_makeResizable:function(c){function h(a){return{originalPosition:a.originalPosition,originalSize:a.originalSize,position:a.position,size:a.size}}c=c===b?this.options.resizable:c;var d=this,e=d.options,f=d.uiDialog.css("position"),g=typeof c=="string"?c:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:g,start:function(b,c){a(this).addClass("ui-dialog-resizing"),d._trigger("resizeStart",b,h(c))},resize:function(a,b){d._trigger("resize",a,h(b))},stop:function(b,c){a(this).removeClass("ui-dialog-resizing"),e.height=a(this).height(),e.width=a(this).width(),d._trigger("resizeStop",b,h(c)),a.ui.dialog.overlay.resize()}}).css("position",f).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(b){var c=[],d=[0,0],e;if(b){if(typeof b=="string"||typeof b=="object"&&"0"in b)c=b.split?b.split(" "):[b[0],b[1]],c.length===1&&(c[1]=c[0]),a.each(["left","top"],function(a,b){+c[a]===c[a]&&(d[a]=c[a],c[a]=b)}),b={my:c.join(" "),at:c.join(" "),offset:d.join(" ")};b=a.extend({},a.ui.dialog.prototype.options.position,b)}else b=a.ui.dialog.prototype.options.position;e=this.uiDialog.is(":visible"),e||this.uiDialog.show(),this.uiDialog.css({top:0,left:0}).position(a.extend({of:window},b)),e||this.uiDialog.hide()},_setOptions:function(b){var c=this,f={},g=!1;a.each(b,function(a,b){c._setOption(a,b),a in d&&(g=!0),a in e&&(f[a]=b)}),g&&this._size(),this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",f)},_setOption:function(b,d){var e=this,f=e.uiDialog;switch(b){case"beforeclose":b="beforeClose";break;case"buttons":e._createButtons(d);break;case"closeText":e.uiDialogTitlebarCloseText.text(""+d);break;case"dialogClass":f.removeClass(e.options.dialogClass).addClass(c+d);break;case"disabled":d?f.addClass("ui-dialog-disabled"):f.removeClass("ui-dialog-disabled");break;case"draggable":var g=f.is(":data(draggable)");g&&!d&&f.draggable("destroy"),!g&&d&&e._makeDraggable();break;case"position":e._position(d);break;case"resizable":var h=f.is(":data(resizable)");h&&!d&&f.resizable("destroy"),h&&typeof d=="string"&&f.resizable("option","handles",d),!h&&d!==!1&&e._makeResizable(d);break;case"title":a(".ui-dialog-title",e.uiDialogTitlebar).html(""+(d||" "))}a.Widget.prototype._setOption.apply(e,arguments)},_size:function(){var b=this.options,c,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0}),b.minWidth>b.width&&(b.width=b.minWidth),c=this.uiDialog.css({height:"auto",width:b.width}).height(),d=Math.max(0,b.minHeight-c);if(b.height==="auto")if(a.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();var f=this.element.css("height","auto").height();e||this.uiDialog.hide(),this.element.height(Math.max(f,d))}else this.element.height(Math.max(b.height-c,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}}),a.extend(a.ui.dialog,{version:"1.8.19",uuid:0,maxZ:0,getTitleId:function(a){var b=a.attr("id");return b||(this.uuid+=1,b=this.uuid),"ui-dialog-title-"+b},overlay:function(b){this.$el=a.ui.dialog.overlay.create(b)}}),a.extend(a.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:a.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),create:function(b){this.instances.length===0&&(setTimeout(function(){a.ui.dialog.overlay.instances.length&&a(document).bind(a.ui.dialog.overlay.events,function(b){if(a(b.target).zIndex()").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});return a.fn.bgiframe&&c.bgiframe(),this.instances.push(c),c},destroy:function(b){var c=a.inArray(b,this.instances);c!=-1&&this.oldInstances.push(this.instances.splice(c,1)[0]),this.instances.length===0&&a([document,window]).unbind(".dialog-overlay"),b.remove();var d=0;a.each(this.instances,function(){d=Math.max(d,this.css("z-index"))}),this.maxZ=d},height:function(){var b,c;return a.browser.msie&&a.browser.version<7?(b=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),c=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight),b",remove:null,select:null,show:null,spinner:"Loading…",tabTemplate:"
  • #{label}
  • "},_create:function(){this._tabify(!0)},_setOption:function(a,b){if(a=="selected"){if(this.options.collapsible&&b==this.options.selected)return;this.select(b)}else this.options[a]=b,this._tabify()},_tabId:function(a){return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+e()},_sanitizeSelector:function(a){return a.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+f());return a.cookie.apply(null,[b].concat(a.makeArray(arguments)))},_ui:function(a,b){return{tab:a,panel:b,index:this.anchors.index(a)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=a(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(c){function m(b,c){b.css("display",""),!a.support.opacity&&c.opacity&&b[0].style.removeAttribute("filter")}var d=this,e=this.options,f=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=a(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return a("a",this)[0]}),this.panels=a([]),this.anchors.each(function(b,c){var g=a(c).attr("href"),h=g.split("#")[0],i;h&&(h===location.toString().split("#")[0]||(i=a("base")[0])&&h===i.href)&&(g=c.hash,c.href=g);if(f.test(g))d.panels=d.panels.add(d.element.find(d._sanitizeSelector(g)));else if(g&&g!=="#"){a.data(c,"href.tabs",g),a.data(c,"load.tabs",g.replace(/#.*$/,""));var j=d._tabId(c);c.href="#"+j;var k=d.element.find("#"+j);k.length||(k=a(e.panelTemplate).attr("id",j).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(d.panels[b-1]||d.list),k.data("destroy.tabs",!0)),d.panels=d.panels.add(k)}else e.disabled.push(b)}),c?(this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"),this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.lis.addClass("ui-state-default ui-corner-top"),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom"),e.selected===b?(location.hash&&this.anchors.each(function(a,b){if(b.hash==location.hash)return e.selected=a,!1}),typeof e.selected!="number"&&e.cookie&&(e.selected=parseInt(d._cookie(),10)),typeof e.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),e.selected=e.selected||(this.lis.length?0:-1)):e.selected===null&&(e.selected=-1),e.selected=e.selected>=0&&this.anchors[e.selected]||e.selected<0?e.selected:0,e.disabled=a.unique(e.disabled.concat(a.map(this.lis.filter(".ui-state-disabled"),function(a,b){return d.lis.index(a)}))).sort(),a.inArray(e.selected,e.disabled)!=-1&&e.disabled.splice(a.inArray(e.selected,e.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),e.selected>=0&&this.anchors.length&&(d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(e.selected).addClass("ui-tabs-selected ui-state-active"),d.element.queue("tabs",function(){d._trigger("show",null,d._ui(d.anchors[e.selected],d.element.find(d._sanitizeSelector(d.anchors[e.selected].hash))[0]))}),this.load(e.selected)),a(window).bind("unload",function(){d.lis.add(d.anchors).unbind(".tabs"),d.lis=d.anchors=d.panels=null})):e.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[e.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),e.cookie&&this._cookie(e.selected,e.cookie);for(var g=0,h;h=this.lis[g];g++)a(h)[a.inArray(g,e.disabled)!=-1&&!a(h).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");e.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(e.event!=="mouseover"){var i=function(a,b){b.is(":not(.ui-state-disabled)")&&b.addClass("ui-state-"+a)},j=function(a,b){b.removeClass("ui-state-"+a)};this.lis.bind("mouseover.tabs",function(){i("hover",a(this))}),this.lis.bind("mouseout.tabs",function(){j("hover",a(this))}),this.anchors.bind("focus.tabs",function(){i("focus",a(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){j("focus",a(this).closest("li"))})}var k,l;e.fx&&(a.isArray(e.fx)?(k=e.fx[0],l=e.fx[1]):k=l=e.fx);var n=l?function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.hide().removeClass("ui-tabs-hide").animate(l,l.duration||"normal",function(){m(c,l),d._trigger("show",null,d._ui(b,c[0]))})}:function(b,c){a(b).closest("li").addClass("ui-tabs-selected ui-state-active"),c.removeClass("ui-tabs-hide"),d._trigger("show",null,d._ui(b,c[0]))},o=k?function(a,b){b.animate(k,k.duration||"normal",function(){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),m(b,k),d.element.dequeue("tabs")})}:function(a,b,c){d.lis.removeClass("ui-tabs-selected ui-state-active"),b.addClass("ui-tabs-hide"),d.element.dequeue("tabs")};this.anchors.bind(e.event+".tabs",function(){var b=this,c=a(b).closest("li"),f=d.panels.filter(":not(.ui-tabs-hide)"),g=d.element.find(d._sanitizeSelector(b.hash));if(c.hasClass("ui-tabs-selected")&&!e.collapsible||c.hasClass("ui-state-disabled")||c.hasClass("ui-state-processing")||d.panels.filter(":animated").length||d._trigger("select",null,d._ui(this,g[0]))===!1)return this.blur(),!1;e.selected=d.anchors.index(this),d.abort();if(e.collapsible){if(c.hasClass("ui-tabs-selected"))return e.selected=-1,e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){o(b,f)}).dequeue("tabs"),this.blur(),!1;if(!f.length)return e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this)),this.blur(),!1}e.cookie&&d._cookie(e.selected,e.cookie);if(g.length)f.length&&d.element.queue("tabs",function(){o(b,f)}),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this));else throw"jQuery UI Tabs: Mismatching fragment identifier.";a.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(a){return typeof a=="string"&&(a=this.anchors.index(this.anchors.filter("[href$='"+a+"']"))),a},destroy:function(){var b=this.options;return this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var b=a.data(this,"href.tabs");b&&(this.href=b);var c=a(this).unbind(".tabs");a.each(["href","load","cache"],function(a,b){c.removeData(b+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){a.data(this,"destroy.tabs")?a(this).remove():a(this).removeClass(["ui-state-default","ui-corner-top","ui-tabs-selected","ui-state-active","ui-state-hover","ui-state-focus","ui-state-disabled","ui-tabs-panel","ui-widget-content","ui-corner-bottom","ui-tabs-hide"].join(" "))}),b.cookie&&this._cookie(null,b.cookie),this},add:function(c,d,e){e===b&&(e=this.anchors.length);var f=this,g=this.options,h=a(g.tabTemplate.replace(/#\{href\}/g,c).replace(/#\{label\}/g,d)),i=c.indexOf("#")?this._tabId(a("a",h)[0]):c.replace("#","");h.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var j=f.element.find("#"+i);return j.length||(j=a(g.panelTemplate).attr("id",i).data("destroy.tabs",!0)),j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),e>=this.lis.length?(h.appendTo(this.list),j.appendTo(this.list[0].parentNode)):(h.insertBefore(this.lis[e]),j.insertBefore(this.panels[e])),g.disabled=a.map(g.disabled,function(a,b){return a>=e?++a:a}),this._tabify(),this.anchors.length==1&&(g.selected=0,h.addClass("ui-tabs-selected ui-state-active"),j.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){f._trigger("show",null,f._ui(f.anchors[0],f.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[e],this.panels[e])),this},remove:function(b){b=this._getIndex(b);var c=this.options,d=this.lis.eq(b).remove(),e=this.panels.eq(b).remove();return d.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(b+(b+1=b?--a:a}),this._tabify(),this._trigger("remove",null,this._ui(d.find("a")[0],e[0])),this},enable:function(b){b=this._getIndex(b);var c=this.options;if(a.inArray(b,c.disabled)==-1)return;return this.lis.eq(b).removeClass("ui-state-disabled"),c.disabled=a.grep(c.disabled,function(a,c){return a!=b}),this._trigger("enable",null,this._ui(this.anchors[b],this.panels[b])),this},disable:function(a){a=this._getIndex(a);var b=this,c=this.options;return a!=c.selected&&(this.lis.eq(a).addClass("ui-state-disabled"),c.disabled.push(a),c.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[a],this.panels[a]))),this},select:function(a){a=this._getIndex(a);if(a==-1)if(this.options.collapsible&&this.options.selected!=-1)a=this.options.selected;else return this;return this.anchors.eq(a).trigger(this.options.event+".tabs"),this},load:function(b){b=this._getIndex(b);var c=this,d=this.options,e=this.anchors.eq(b)[0],f=a.data(e,"load.tabs");this.abort();if(!f||this.element.queue("tabs").length!==0&&a.data(e,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(b).addClass("ui-state-processing");if(d.spinner){var g=a("span",e);g.data("label.tabs",g.html()).html(d.spinner)}return this.xhr=a.ajax(a.extend({},d.ajaxOptions,{url:f,success:function(f,g){c.element.find(c._sanitizeSelector(e.hash)).html(f),c._cleanup(),d.cache&&a.data(e,"cache.tabs",!0),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.success(f,g)}catch(h){}},error:function(a,f,g){c._cleanup(),c._trigger("load",null,c._ui(c.anchors[b],c.panels[b]));try{d.ajaxOptions.error(a,f,b,e)}catch(g){}}})),c.element.dequeue("tabs"),this},abort:function(){return this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup(),this},url:function(a,b){return this.anchors.eq(a).removeData("cache.tabs").data("load.tabs",b),this},length:function(){return this.anchors.length}}),a.extend(a.ui.tabs,{version:"1.8.19"}),a.extend(a.ui.tabs.prototype,{rotation:null,rotate:function(a,b){var c=this,d=this.options,e=c._rotate||(c._rotate=function(b){clearTimeout(c.rotation),c.rotation=setTimeout(function(){var a=d.selected;c.select(++a'))}function bindHover(a){var b="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return a.bind("mouseout",function(a){var c=$(a.target).closest(b);if(!c.length)return;c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);if($.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])||!d.length)return;d.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),d.addClass("ui-state-hover"),d.hasClass("ui-datepicker-prev")&&d.addClass("ui-datepicker-prev-hover"),d.hasClass("ui-datepicker-next")&&d.addClass("ui-datepicker-next-hover")})}function extendRemove(a,b){$.extend(a,b);for(var c in b)if(b[c]==null||b[c]==undefined)a[c]=b[c];return a}function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}$.extend($.ui,{datepicker:{version:"1.8.19"}});var PROP_NAME="datepicker",dpuuid=(new Date).getTime(),instActive;$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline=nodeName=="div"||nodeName=="span";target.id||(this.uuid+=1,target.id="dp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),nodeName=="input"?this._connectDatepicker(target,inst):inline&&this._inlineDatepicker(target,inst)},_newInst:function(a,b){var c=a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:c,input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?bindHover($('
    ')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);if(c.hasClass(this.markerClassName))return;this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),this._autoSize(b),$.data(a,PROP_NAME,b),b.settings.disabled&&this._disableDatepicker(a)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$(''+c+""),a[d?"before":"after"](b.append)),a.unbind("focus",this._showDatepicker),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");(e=="focus"||e=="both")&&a.focus(this._showDatepicker);if(e=="button"||e=="both"){var f=this._get(b,"buttonText"),g=this._get(b,"buttonImage");b.trigger=$(this._get(b,"buttonImageOnly")?$("").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('').addClass(this._triggerClass).html(g==""?f:$("").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=a[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(a[0])):$.datepicker._showDatepicker(a[0]),!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var d=function(a){var b=0,c=0;for(var d=0;db&&(b=a[d].length,c=d);return c};b.setMonth(d(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort"))),b.setDate(d(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=$(a);if(c.hasClass(this.markerClassName))return;c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(a,c,d){b.settings[c]=d}).bind("getData.datepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(a),b.dpDiv.css("display","block")},_dialogDatepicker:function(a,b,c,d,e){var f=this._dialogInst;if(!f){this.uuid+=1;var g="dp"+this.uuid;this._dialogInput=$(''),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),f=this._dialogInst=this._newInst(this._dialogInput,!1),f.settings={},$.data(this._dialogInput[0],PROP_NAME,f)}extendRemove(f.settings,d||{}),b=b&&b.constructor==Date?this._formatDate(f,b):b,this._dialogInput.val(b),this._pos=e?e.length?e:[e.pageX,e.pageY]:null;if(!this._pos){var h=document.documentElement.clientWidth,i=document.documentElement.clientHeight,j=document.documentElement.scrollLeft||document.body.scrollLeft,k=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[h/2-100+j,i/2-150+k]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),f.settings.onSelect=c,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,f),this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),d=="input"?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(d=="div"||d=="span")&&b.removeClass(this.markerClassName).empty()},_enableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!1,c.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().removeClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b})},_disableDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!b.hasClass(this.markerClassName))return;var d=a.nodeName.toLowerCase();if(d=="input")a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(d=="div"||d=="span"){var e=b.children("."+this._inlineClass);e.children().addClass("ui-state-disabled"),e.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=a},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b-1}},_doKeyUp:function(a){var b=$.datepicker._getInst(a.target);if(b.input.val()!=b.lastVal)try{var c=$.datepicker.parseDate($.datepicker._get(b,"dateFormat"),b.input?b.input.val():null,$.datepicker._getFormatConfig(b));c&&($.datepicker._setDateFromField(b),$.datepicker._updateAlternate(b),$.datepicker._updateDatepicker(b))}catch(d){$.datepicker.log(d)}return!0},_showDatepicker:function(a){a=a.target||a,a.nodeName.toLowerCase()!="input"&&(a=$("input",a.parentNode)[0]);if($.datepicker._isDisabledDatepicker(a)||$.datepicker._lastInput==a)return;var b=$.datepicker._getInst(a);$.datepicker._curInst&&$.datepicker._curInst!=b&&($.datepicker._curInst.dpDiv.stop(!0,!0),b&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var c=$.datepicker._get(b,"beforeShow"),d=c?c.apply(a,[a,b]):{};if(d===!1)return;extendRemove(b.settings,d),b.lastVal=null,$.datepicker._lastInput=a,$.datepicker._setDateFromField(b),$.datepicker._inDialog&&(a.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(a),$.datepicker._pos[1]+=a.offsetHeight);var e=!1;$(a).parents().each(function(){return e|=$(this).css("position")=="fixed",!e}),e&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var f={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,b.dpDiv.empty(),b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(b),f=$.datepicker._checkOffset(b,f,e),b.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":e?"fixed":"absolute",display:"none",left:f.left+"px",top:f.top+"px"});if(!b.inline){var g=$.datepicker._get(b,"showAnim"),h=$.datepicker._get(b,"duration"),i=function(){var a=b.dpDiv.find("iframe.ui-datepicker-cover");if(!!a.length){var c=$.datepicker._getBorders(b.dpDiv);a.css({left:-c[0],top:-c[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex($(a).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[g]?b.dpDiv.show(g,$.datepicker._get(b,"showOptions"),h,i):b.dpDiv[g||"show"](g?h:null,i),(!g||!h)&&i(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.datepicker._curInst=b}},_updateDatepicker:function(a){var b=this;b.maxRows=4;var c=$.datepicker._getBorders(a.dpDiv);instActive=a,a.dpDiv.empty().append(this._generateHTML(a));var d=a.dpDiv.find("iframe.ui-datepicker-cover");!d.length||d.css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}),a.dpDiv.find("."+this._dayOverClass+" a").mouseover();var e=this._getNumberOfMonths(a),f=e[1],g=17;a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&a.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",g*f+"em"),a.dpDiv[(e[0]!=1||e[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),a==$.datepicker._curInst&&$.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var h=a.yearshtml;setTimeout(function(){h===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml),h=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var d=a.dpDiv.outerWidth(),e=a.dpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){var b=this._getInst(a),c=this._get(b,"isRTL");while(a&&(a.type=="hidden"||a.nodeType!=1||$.expr.filters.hidden(a)))a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_hideDatepicker:function(a){var b=this._curInst;if(!b||a&&b!=$.data(a,PROP_NAME))return;if(this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.datepicker._tidyDialog(b)};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,e):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,e),c||e(),this._datepickerShowing=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.dpDiv))),this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(!$.datepicker._curInst)return;var b=$(a.target),c=$.datepicker._getInst(b[0]);(b[0].id!=$.datepicker._mainDivId&&b.parents("#"+$.datepicker._mainDivId).length==0&&!b.hasClass($.datepicker.markerClassName)&&!b.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||b.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=c)&&$.datepicker._hideDatepicker()},_adjustDate:function(a,b,c){var d=$(a),e=this._getInst(d[0]);if(this._isDisabledDatepicker(d[0]))return;this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e)},_gotoToday:function(a){var b=$(a),c=this._getInst(b[0]);if(this._get(c,"gotoCurrent")&&c.currentDay)c.selectedDay=c.currentDay,c.drawMonth=c.selectedMonth=c.currentMonth,c.drawYear=c.selectedYear=c.currentYear;else{var d=new Date;c.selectedDay=d.getDate(),c.drawMonth=c.selectedMonth=d.getMonth(),c.drawYear=c.selectedYear=d.getFullYear()}this._notifyChange(c),this._adjustDate(b)},_selectMonthYear:function(a,b,c){var d=$(a),e=this._getInst(d[0]);e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10),this._notifyChange(e),this._adjustDate(d)},_selectDay:function(a,b,c,d){var e=$(a);if($(d).hasClass(this._unselectableClass)||this._isDisabledDatepicker(e[0]))return;var f=this._getInst(e[0]);f.selectedDay=f.currentDay=$("a",d).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))},_clearDate:function(a){var b=$(a),c=this._getInst(b[0]);this._selectDate(b,"")},_selectDate:function(a,b){var c=$(a),d=this._getInst(c[0]);b=b!=null?b:this._formatDate(d),d.input&&d.input.val(b),this._updateAlternate(d);var e=this._get(d,"onSelect");e?e.apply(d.input?d.input[0]:null,[b,d]):d.input&&d.input.trigger("change"),d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],typeof d.input[0]!="object"&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),d=this._getDate(a),e=this.formatDate(c,d,this._getFormatConfig(a));$(b).each(function(){$(this).val(e)})}},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b=new Date(a.getTime());b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var d=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;d=typeof d!="string"?d:(new Date).getFullYear()%100+parseInt(d,10);var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=-1,j=-1,k=-1,l=-1,m=!1,n=function(b){var c=s+1-1){j=1,k=l;do{var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}while(!0)}var t=this._daylightSavingAdjust(new Date(i,j-1,k));if(t.getFullYear()!=i||t.getMonth()+1!=j||t.getDate()!=k)throw"Invalid date";return t},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,e=(c?c.dayNames:null)||this._defaults.dayNames,f=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,h=function(b){var c=m+112?a.getHours()+2:0),a):null},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),(e!=a.selectedMonth||f!=a.selectedYear)&&!c&&this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),d=this._get(a,"showButtonPanel"),e=this._get(a,"hideIfNoPrevNext"),f=this._get(a,"navigationAsDateFormat"),g=this._getNumberOfMonths(a),h=this._get(a,"showCurrentAtPos"),i=this._get(a,"stepMonths"),j=g[0]!=1||g[1]!=1,k=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),l=this._getMinMaxDate(a,"min"),m=this._getMinMaxDate(a,"max"),n=a.drawMonth-h,o=a.drawYear;n<0&&(n+=12,o--);if(m){var p=this._daylightSavingAdjust(new Date(m.getFullYear(),m.getMonth()-g[0]*g[1]+1,m.getDate()));p=l&&pp)n--,n<0&&(n=11,o--)}a.drawMonth=n,a.drawYear=o;var q=this._get(a,"prevText");q=f?this.formatDate(q,this._daylightSavingAdjust(new Date(o,n-i,1)),this._getFormatConfig(a)):q;var r=this._canAdjustMonth(a,-1,o,n)?''+q+"":e?"":''+q+"",s=this._get(a,"nextText");s=f?this.formatDate(s,this._daylightSavingAdjust(new Date(o,n+i,1)),this._getFormatConfig(a)):s;var t=this._canAdjustMonth(a,1,o,n)?''+s+"":e?"":''+s+"",u=this._get(a,"currentText"),v=this._get(a,"gotoCurrent")&&a.currentDay?k:b;u=f?this.formatDate(u,v,this._getFormatConfig(a)):u;var w=a.inline?"":'",x=d?'
    '+(c?w:"")+(this._isInRange(a,v)?'":"")+(c?"":w)+"
    ":"",y=parseInt(this._get(a,"firstDay"),10);y=isNaN(y)?0:y;var z=this._get(a,"showWeek"),A=this._get(a,"dayNames"),B=this._get(a,"dayNamesShort"),C=this._get(a,"dayNamesMin"),D=this._get(a,"monthNames"),E=this._get(a,"monthNamesShort"),F=this._get(a,"beforeShowDay"),G=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths"),I=this._get(a,"calculateWeek")||this.iso8601Week,J=this._getDefaultDate(a),K="";for(var L=0;L1)switch(N){case 0:Q+=" ui-datepicker-group-first",P=" ui-corner-"+(c?"right":"left");break;case g[1]-1:Q+=" ui-datepicker-group-last",P=" ui-corner-"+(c?"left":"right");break;default:Q+=" ui-datepicker-group-middle",P=""}Q+='">'}Q+='
    '+(/all|left/.test(P)&&L==0?c?t:r:"")+(/all|right/.test(P)&&L==0?c?r:t:"")+this._generateMonthYearHeader(a,n,o,l,m,L>0||N>0,D,E)+'
    '+"";var R=z?'":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="=5?' class="ui-datepicker-week-end"':"")+">"+''+C[T]+""}Q+=R+"";var U=this._getDaysInMonth(o,n);o==a.selectedYear&&n==a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,U));var V=(this._getFirstDayOfMonth(o,n)-y+7)%7,W=Math.ceil((V+U)/7),X=j?this.maxRows>W?this.maxRows:W:W;this.maxRows=X;var Y=this._daylightSavingAdjust(new Date(o,n,1-V));for(var Z=0;Z";var _=z?'":"";for(var S=0;S<7;S++){var ba=F?F.apply(a.input?a.input[0]:null,[Y]):[!0,""],bb=Y.getMonth()!=n,bc=bb&&!H||!ba[0]||l&&Ym;_+='",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+""}n++,n>11&&(n=0,o++),Q+="
    '+this._get(a,"weekHeader")+"
    '+this._get(a,"calculateWeek")(Y)+""+(bb&&!G?" ":bc?''+Y.getDate()+"":''+Y.getDate()+"")+"
    "+(j?"
    "+(g[0]>0&&N==g[1]-1?'
    ':""):""),M+=Q}K+=M}return K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'':""),a._keyEvent=!1,K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='
    ',m="";if(f||!i)m+=''+g[b]+"";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='"}k||(l+=m+(f||!i||!j?" ":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+=''+c+"";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='",l+=a.yearshtml,a.yearshtml=null}}return l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?" ":"")+m),l+="
    ",l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&bd?d:e,e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return typeof a!="string"||a!="isDisabled"&&a!="getDate"&&a!="widget"?a=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b)):this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)}):$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="@VERSION",window["DP_jQuery_"+dpuuid]=$})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.ui.progressbar.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +(function(a,b){a.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()}),this.valueDiv=a("
    ").appendTo(this.element),this.oldValue=this._value(),this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove(),a.Widget.prototype.destroy.apply(this,arguments)},value:function(a){return a===b?this._value():(this._setOption("value",a),this)},_setOption:function(b,c){b==="value"&&(this.options.value=c,this._refreshValue(),this._value()===this.options.max&&this._trigger("complete")),a.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;return typeof a!="number"&&(a=0),Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*this._value()/this.options.max},_refreshValue:function(){var a=this.value(),b=this._percentage();this.oldValue!==a&&(this.oldValue=a,this._trigger("change")),this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(b.toFixed(0)+"%"),this.element.attr("aria-valuenow",a)}}),a.extend(a.ui.progressbar,{version:"1.8.19"})})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 +* https://github.com/jquery/jquery-ui +* Includes: jquery.effects.core.js +* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ +jQuery.effects||function(a,b){function c(b){var c;return b&&b.constructor==Array&&b.length==3?b:(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b))?[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)]:(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b))?[parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55]:(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b))?[parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16)]:(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b))?[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)]:(c=/rgba\(0, 0, 0, 0\)/.exec(b))?e.transparent:e[a.trim(b).toLowerCase()]}function d(b,d){var e;do{e=a.curCSS(b,d);if(e!=""&&e!="transparent"||a.nodeName(b,"body"))break;d="backgroundColor"}while(b=b.parentNode);return c(e)}function h(){var a=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,b={},c,d;if(a&&a.length&&a[0]&&a[a[0]]){var e=a.length;while(e--)c=a[e],typeof a[c]=="string"&&(d=c.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),b[d]=a[c])}else for(c in a)typeof a[c]=="string"&&(b[c]=a[c]);return b}function i(b){var c,d;for(c in b)d=b[c],(d==null||a.isFunction(d)||c in g||/scrollbar/.test(c)||!/color/i.test(c)&&isNaN(parseFloat(d)))&&delete b[c];return b}function j(a,b){var c={_:0},d;for(d in b)a[d]!=b[d]&&(c[d]=b[d]);return c}function k(b,c,d,e){typeof b=="object"&&(e=c,d=null,c=b,b=c.effect),a.isFunction(c)&&(e=c,d=null,c={});if(typeof c=="number"||a.fx.speeds[c])e=d,d=c,c={};return a.isFunction(d)&&(e=d,d=null),c=c||{},d=d||c.duration,d=a.fx.off?0:typeof d=="number"?d:d in a.fx.speeds?a.fx.speeds[d]:a.fx.speeds._default,e=e||c.complete,[b,c,d,e]}function l(b){return!b||typeof b=="number"||a.fx.speeds[b]?!0:typeof b=="string"&&!a.effects[b]?!0:!1}a.effects={},a.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","borderColor","color","outlineColor"],function(b,e){a.fx.step[e]=function(a){a.colorInit||(a.start=d(a.elem,e),a.end=c(a.end),a.colorInit=!0),a.elem.style[e]="rgb("+Math.max(Math.min(parseInt(a.pos*(a.end[0]-a.start[0])+a.start[0],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[1]-a.start[1])+a.start[1],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[2]-a.start[2])+a.start[2],10),255),0)+")"}});var e={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},f=["add","remove","toggle"],g={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};a.effects.animateClass=function(b,c,d,e){return a.isFunction(d)&&(e=d,d=null),this.queue(function(){var g=a(this),k=g.attr("style")||" ",l=i(h.call(this)),m,n=g.attr("class")||"";a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c])}),m=i(h.call(this)),g.attr("class",n),g.animate(j(l,m),{queue:!1,duration:c,easing:d,complete:function(){a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c])}),typeof g.attr("style")=="object"?(g.attr("style").cssText="",g.attr("style").cssText=k):g.attr("style",k),e&&e.apply(this,arguments),a.dequeue(this)}})})},a.fn.extend({_addClass:a.fn.addClass,addClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{add:b},c,d,e]):this._addClass(b)},_removeClass:a.fn.removeClass,removeClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{remove:b},c,d,e]):this._removeClass(b)},_toggleClass:a.fn.toggleClass,toggleClass:function(c,d,e,f,g){return typeof d=="boolean"||d===b?e?a.effects.animateClass.apply(this,[d?{add:c}:{remove:c},e,f,g]):this._toggleClass(c,d):a.effects.animateClass.apply(this,[{toggle:c},d,e,f])},switchClass:function(b,c,d,e,f){return a.effects.animateClass.apply(this,[{add:c,remove:b},d,e,f])}}),a.extend(a.effects,{version:"1.8.19",save:function(a,b){for(var c=0;c
    ").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e=document.activeElement;return b.wrap(d),(b[0]===e||a.contains(b[0],e))&&a(e).focus(),d=b.parent(),b.css("position")=="static"?(d.css({position:"relative"}),b.css({position:"relative"})):(a.extend(c,{position:b.css("position"),zIndex:b.css("z-index")}),a.each(["top","left","bottom","right"],function(a,d){c[d]=b.css(d),isNaN(parseInt(c[d],10))&&(c[d]="auto")}),b.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),d.css(c).show()},removeWrapper:function(b){var c,d=document.activeElement;return b.parent().is(".ui-effects-wrapper")?(c=b.parent().replaceWith(b),(b[0]===d||a.contains(b[0],d))&&a(d).focus(),c):b},setTransition:function(b,c,d,e){return e=e||{},a.each(c,function(a,c){var f=b.cssUnit(c);f[0]>0&&(e[c]=f[0]*d+f[1])}),e}}),a.fn.extend({effect:function(b,c,d,e){var f=k.apply(this,arguments),g={options:f[1],duration:f[2],callback:f[3]},h=g.options.mode,i=a.effects[b];return a.fx.off||!i?h?this[h](g.duration,g.callback):this.each(function(){g.callback&&g.callback.call(this)}):i.call(this,g)},_show:a.fn.show,show:function(a){if(l(a))return this._show.apply(this,arguments);var b=k.apply(this,arguments);return b[1].mode="show",this.effect.apply(this,b)},_hide:a.fn.hide,hide:function(a){if(l(a))return this._hide.apply(this,arguments);var b=k.apply(this,arguments);return b[1].mode="hide",this.effect.apply(this,b)},__toggle:a.fn.toggle,toggle:function(b){if(l(b)||typeof b=="boolean"||a.isFunction(b))return this.__toggle.apply(this,arguments);var c=k.apply(this,arguments);return c[1].mode="toggle",this.effect.apply(this,c)},cssUnit:function(b){var c=this.css(b),d=[];return a.each(["em","px","%","pt"],function(a,b){c.indexOf(b)>0&&(d=[parseFloat(c),b])}),d}}),a.easing.jswing=a.easing.swing,a.extend(a.easing,{def:"easeOutQuad",swing:function(b,c,d,e,f){return a.easing[a.easing.def](b,c,d,e,f)},easeInQuad:function(a,b,c,d,e){return d*(b/=e)*b+c},easeOutQuad:function(a,b,c,d,e){return-d*(b/=e)*(b-2)+c},easeInOutQuad:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b+c:-d/2*(--b*(b-2)-1)+c},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c},easeOutCubic:function(a,b,c,d,e){return d*((b=b/e-1)*b*b+1)+c},easeInOutCubic:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b+c:d/2*((b-=2)*b*b+2)+c},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c},easeOutQuart:function(a,b,c,d,e){return-d*((b=b/e-1)*b*b*b-1)+c},easeInOutQuart:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b*b+c:-d/2*((b-=2)*b*b*b-2)+c},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c},easeInOutQuint:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b*b*b+c:d/2*((b-=2)*b*b*b*b+2)+c},easeInSine:function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},easeInOutSine:function(a,b,c,d,e){return-d/2*(Math.cos(Math.PI*b/e)-1)+c},easeInExpo:function(a,b,c,d,e){return b==0?c:d*Math.pow(2,10*(b/e-1))+c},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c},easeInOutExpo:function(a,b,c,d,e){return b==0?c:b==e?c+d:(b/=e/2)<1?d/2*Math.pow(2,10*(b-1))+c:d/2*(-Math.pow(2,-10*--b)+2)+c},easeInCirc:function(a,b,c,d,e){return-d*(Math.sqrt(1-(b/=e)*b)-1)+c},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c},easeInOutCirc:function(a,b,c,d,e){return(b/=e/2)<1?-d/2*(Math.sqrt(1-b*b)-1)+c:d/2*(Math.sqrt(1-(b-=2)*b)+1)+c},easeInElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0)return c;if((b/=e)==1)return c+d;g||(g=e*.3);if(h