diff options
-rw-r--r-- | .compass/config.rb | 30 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | Gemfile | 18 | ||||
-rw-r--r-- | Gemfile.lock | 132 | ||||
-rw-r--r-- | LICENSE.txt | 2 | ||||
-rw-r--r-- | Rakefile | 4 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-bold-webfont.eot (renamed from public/stylesheets/fonts/delicious-bold-webfont.eot) | bin | 21160 -> 21160 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-bold-webfont.svg (renamed from public/stylesheets/fonts/delicious-bold-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-bold-webfont.ttf (renamed from public/stylesheets/fonts/delicious-bold-webfont.ttf) | bin | 42648 -> 42648 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-bold-webfont.woff (renamed from public/stylesheets/fonts/delicious-bold-webfont.woff) | bin | 24328 -> 24328 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-bolditalic-webfont.eot (renamed from public/stylesheets/fonts/delicious-bolditalic-webfont.eot) | bin | 24992 -> 24992 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-bolditalic-webfont.svg (renamed from public/stylesheets/fonts/delicious-bolditalic-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-bolditalic-webfont.ttf (renamed from public/stylesheets/fonts/delicious-bolditalic-webfont.ttf) | bin | 51020 -> 51020 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-bolditalic-webfont.woff (renamed from public/stylesheets/fonts/delicious-bolditalic-webfont.woff) | bin | 28268 -> 28268 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-heavy-webfont.eot (renamed from public/stylesheets/fonts/delicious-heavy-webfont.eot) | bin | 21199 -> 21199 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-heavy-webfont.svg (renamed from public/stylesheets/fonts/delicious-heavy-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-heavy-webfont.ttf (renamed from public/stylesheets/fonts/delicious-heavy-webfont.ttf) | bin | 42744 -> 42744 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-heavy-webfont.woff (renamed from public/stylesheets/fonts/delicious-heavy-webfont.woff) | bin | 24308 -> 24308 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-italic-webfont.eot (renamed from public/stylesheets/fonts/delicious-italic-webfont.eot) | bin | 23704 -> 23704 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-italic-webfont.svg (renamed from public/stylesheets/fonts/delicious-italic-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-italic-webfont.ttf (renamed from public/stylesheets/fonts/delicious-italic-webfont.ttf) | bin | 50464 -> 50464 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-italic-webfont.woff (renamed from public/stylesheets/fonts/delicious-italic-webfont.woff) | bin | 27080 -> 27080 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-roman-webfont.eot (renamed from public/stylesheets/fonts/delicious-roman-webfont.eot) | bin | 20415 -> 20415 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-roman-webfont.svg (renamed from public/stylesheets/fonts/delicious-roman-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-roman-webfont.ttf (renamed from public/stylesheets/fonts/delicious-roman-webfont.ttf) | bin | 42508 -> 42508 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-roman-webfont.woff (renamed from public/stylesheets/fonts/delicious-roman-webfont.woff) | bin | 23432 -> 23432 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-smallcaps-webfont.eot (renamed from public/stylesheets/fonts/delicious-smallcaps-webfont.eot) | bin | 9940 -> 9940 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-smallcaps-webfont.svg (renamed from public/stylesheets/fonts/delicious-smallcaps-webfont.svg) | 0 | ||||
-rwxr-xr-x | app/assets/fonts/delicious-smallcaps-webfont.ttf (renamed from public/stylesheets/fonts/delicious-smallcaps-webfont.ttf) | bin | 20936 -> 20936 bytes | |||
-rwxr-xr-x | app/assets/fonts/delicious-smallcaps-webfont.woff (renamed from public/stylesheets/fonts/delicious-smallcaps-webfont.woff) | bin | 12284 -> 12284 bytes | |||
-rw-r--r-- | app/assets/images/README.txt (renamed from public/images/README.txt) | 0 | ||||
-rw-r--r-- | app/assets/images/arrow-left.png (renamed from public/images/arrow-left.png) | bin | 353 -> 353 bytes | |||
-rw-r--r-- | app/assets/images/arrow-right.png (renamed from public/images/arrow-right.png) | bin | 439 -> 439 bytes | |||
-rw-r--r-- | app/assets/images/bighand.png (renamed from public/images/bighand.png) | bin | 2153 -> 2153 bytes | |||
-rw-r--r-- | app/assets/images/button-gradient-large.png (renamed from public/images/button-gradient-large.png) | bin | 266 -> 266 bytes | |||
-rw-r--r-- | app/assets/images/button-gradient.png (renamed from public/images/button-gradient.png) | bin | 329 -> 329 bytes | |||
-rw-r--r-- | app/assets/images/button-preview.png (renamed from public/images/button-preview.png) | bin | 1743 -> 1743 bytes | |||
-rw-r--r-- | app/assets/images/button-search.png (renamed from public/images/button-search.png) | bin | 1761 -> 1761 bytes | |||
-rw-r--r-- | app/assets/images/calendar.png (renamed from public/images/calendar.png) | bin | 388 -> 388 bytes | |||
-rw-r--r-- | app/assets/images/defaultprofilepic.png (renamed from public/images/defaultprofilepic.png) | bin | 4061 -> 4061 bytes | |||
-rw-r--r-- | app/assets/images/email-16.png (renamed from public/images/email-16.png) | bin | 313 -> 313 bytes | |||
-rwxr-xr-x | app/assets/images/fancybox-x.png (renamed from public/stylesheets/fancybox-x.png) | bin | 203 -> 203 bytes | |||
-rwxr-xr-x | app/assets/images/fancybox-y.png (renamed from public/stylesheets/fancybox-y.png) | bin | 176 -> 176 bytes | |||
-rwxr-xr-x | app/assets/images/fancybox.png (renamed from public/stylesheets/fancybox.png) | bin | 15287 -> 15287 bytes | |||
-rw-r--r-- | app/assets/images/feed-14.png (renamed from public/images/feed-14.png) | bin | 689 -> 689 bytes | |||
-rw-r--r-- | app/assets/images/feed-16.png (renamed from public/images/feed-16.png) | bin | 764 -> 764 bytes | |||
-rw-r--r-- | app/assets/images/feed-28.png (renamed from public/images/feed-28.png) | bin | 1737 -> 1737 bytes | |||
-rw-r--r-- | app/assets/images/flying-computer.png (renamed from public/images/flying-computer.png) | bin | 10357 -> 10357 bytes | |||
-rw-r--r-- | app/assets/images/glyphicons-halflings-white.png (renamed from public/admin/images/glyphicons-halflings-white.png) | bin | 8777 -> 8777 bytes | |||
-rw-r--r-- | app/assets/images/glyphicons-halflings.png (renamed from public/admin/images/glyphicons-halflings.png) | bin | 13826 -> 13826 bytes | |||
-rw-r--r-- | app/assets/images/helpmeinvestigate.png (renamed from public/images/helpmeinvestigate.png) | bin | 607 -> 607 bytes | |||
-rw-r--r-- | app/assets/images/home-grad.png (renamed from public/images/home-grad.png) | bin | 306 -> 306 bytes | |||
-rw-r--r-- | app/assets/images/icon-foi.png (renamed from public/images/icon-foi.png) | bin | 320 -> 320 bytes | |||
-rw-r--r-- | app/assets/images/icon-person.png (renamed from public/images/icon-person.png) | bin | 345 -> 345 bytes | |||
-rw-r--r-- | app/assets/images/icon-publicbody.png (renamed from public/images/icon-publicbody.png) | bin | 356 -> 356 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_octet-stream_large.png (renamed from public/images/icon_application_octet-stream_large.png) | bin | 3184 -> 3184 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_pdf_large.png (renamed from public/images/icon_application_pdf_large.png) | bin | 2522 -> 2522 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_rtf_large.png (renamed from public/images/icon_application_rtf_large.png) | bin | 2564 -> 2564 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_vnd.ms-excel_large.png (renamed from public/images/icon_application_vnd.ms-excel_large.png) | bin | 2891 -> 2891 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_vnd.ms-powerpoint_large.png (renamed from public/images/icon_application_vnd.ms-powerpoint_large.png) | bin | 2495 -> 2495 bytes | |||
-rw-r--r-- | app/assets/images/icon_application_vnd.ms-word_large.png (renamed from public/images/icon_application_vnd.ms-word_large.png) | bin | 2775 -> 2775 bytes | |||
l--------- | app/assets/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png (renamed from public/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png) | 0 | ||||
l--------- | app/assets/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png (renamed from public/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png) | 0 | ||||
l--------- | app/assets/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png (renamed from public/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png) | 0 | ||||
-rw-r--r-- | app/assets/images/icon_application_zip_large.png (renamed from public/images/icon_application_zip_large.png) | bin | 2863 -> 2863 bytes | |||
-rw-r--r-- | app/assets/images/icon_image_bmp_large.png (renamed from public/images/icon_image_bmp_large.png) | bin | 2774 -> 2774 bytes | |||
-rw-r--r-- | app/assets/images/icon_image_gif_large.png (renamed from public/images/icon_image_gif_large.png) | bin | 2575 -> 2575 bytes | |||
-rw-r--r-- | app/assets/images/icon_image_jpeg_large.png (renamed from public/images/icon_image_jpeg_large.png) | bin | 2633 -> 2633 bytes | |||
-rw-r--r-- | app/assets/images/icon_image_png_large.png (renamed from public/images/icon_image_png_large.png) | bin | 2736 -> 2736 bytes | |||
-rw-r--r-- | app/assets/images/icon_image_tiff_large.png (renamed from public/images/icon_image_tiff_large.png) | bin | 2552 -> 2552 bytes | |||
-rw-r--r-- | app/assets/images/icon_message_delivery-status_large.png (renamed from public/images/icon_message_delivery-status_large.png) | bin | 3184 -> 3184 bytes | |||
-rw-r--r-- | app/assets/images/icon_text_html_large.png (renamed from public/images/icon_text_html_large.png) | bin | 3259 -> 3259 bytes | |||
-rw-r--r-- | app/assets/images/icon_text_plain_large.png (renamed from public/images/icon_text_plain_large.png) | bin | 2138 -> 2138 bytes | |||
-rw-r--r-- | app/assets/images/icon_text_x-vcard_large.png (renamed from public/images/icon_text_x-vcard_large.png) | bin | 2779 -> 2779 bytes | |||
-rw-r--r-- | app/assets/images/icon_unknown.png (renamed from public/images/icon_unknown.png) | bin | 3604 -> 3604 bytes | |||
-rw-r--r-- | app/assets/images/link-icon.png (renamed from public/images/link-icon.png) | bin | 304 -> 304 bytes | |||
-rw-r--r-- | app/assets/images/littlehand.png (renamed from public/images/littlehand.png) | bin | 1113 -> 1113 bytes | |||
-rw-r--r-- | app/assets/images/logo.png | bin | 0 -> 1356 bytes | |||
-rw-r--r-- | app/assets/images/navimg/alaveteli-logo-header.png (renamed from public/images/navimg/alaveteli-logo-header.png) | bin | 1639 -> 1639 bytes | |||
-rw-r--r-- | app/assets/images/navimg/alaveteli-logo.png (renamed from public/images/navimg/alaveteli-logo.png) | bin | 2278 -> 2278 bytes | |||
-rw-r--r-- | app/assets/images/navimg/auth-icon.png (renamed from public/images/navimg/auth-icon.png) | bin | 982 -> 982 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-ifyoudontask-24bit.png (renamed from public/images/navimg/bnnr-ifyoudontask-24bit.png) | bin | 145459 -> 145459 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-ifyoudontask.png (renamed from public/images/navimg/bnnr-ifyoudontask.png) | bin | 55741 -> 55741 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-temp-100px.jpg (renamed from public/images/navimg/bnnr-temp-100px.jpg) | bin | 20020 -> 20020 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-temp-100pxa.jpg (renamed from public/images/navimg/bnnr-temp-100pxa.jpg) | bin | 16086 -> 16086 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-temp-100pxb.jpg (renamed from public/images/navimg/bnnr-temp-100pxb.jpg) | bin | 11552 -> 11552 bytes | |||
-rwxr-xr-x | app/assets/images/navimg/bnnr-temp-100pxc.jpg (renamed from public/images/navimg/bnnr-temp-100pxc.jpg) | bin | 15905 -> 15905 bytes | |||
-rwxr-xr-x | app/assets/images/navimg/bnnr-temp-100pxd.jpg (renamed from public/images/navimg/bnnr-temp-100pxd.jpg) | bin | 12203 -> 12203 bytes | |||
-rw-r--r-- | app/assets/images/navimg/bnnr-temp.jpg (renamed from public/images/navimg/bnnr-temp.jpg) | bin | 31690 -> 31690 bytes | |||
-rw-r--r-- | app/assets/images/navimg/infobug20px.png (renamed from public/images/navimg/infobug20px.png) | bin | 998 -> 998 bytes | |||
-rw-r--r-- | app/assets/images/navimg/logo-trans-small.png (renamed from public/images/navimg/logo-trans-small.png) | bin | 4445 -> 4445 bytes | |||
-rw-r--r-- | app/assets/images/navimg/logo-trans.png (renamed from public/images/navimg/logo-trans.png) | bin | 6040 -> 6040 bytes | |||
-rwxr-xr-x | app/assets/images/navimg/mysoc-logo-header.png (renamed from public/images/navimg/mysoc-logo-header.png) | bin | 1300 -> 1300 bytes | |||
-rw-r--r-- | app/assets/images/navimg/mysoc-logo-small.png (renamed from public/images/navimg/mysoc-logo-small.png) | bin | 1182 -> 1182 bytes | |||
-rwxr-xr-x | app/assets/images/navimg/quote-open-small.png (renamed from public/images/navimg/quote-open-small.png) | bin | 197 -> 197 bytes | |||
-rw-r--r-- | app/assets/images/navimg/quote-open.png (renamed from public/images/navimg/quote-open.png) | bin | 293 -> 293 bytes | |||
-rw-r--r-- | app/assets/images/navimg/request-icon.png (renamed from public/images/navimg/request-icon.png) | bin | 440 -> 440 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-attn.png (renamed from public/images/navimg/status-icons-attn.png) | bin | 870 -> 870 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-error-message.png (renamed from public/images/navimg/status-icons-error-message.png) | bin | 2395 -> 2395 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-fail.png (renamed from public/images/navimg/status-icons-fail.png) | bin | 822 -> 822 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-internal-review.png (renamed from public/images/navimg/status-icons-internal-review.png) | bin | 2218 -> 2218 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-not-held.png (renamed from public/images/navimg/status-icons-not-held.png) | bin | 2220 -> 2220 bytes | |||
-rwxr-xr-x | app/assets/images/navimg/status-icons-post.png (renamed from public/images/navimg/status-icons-post.png) | bin | 860 -> 860 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-succeed.png (renamed from public/images/navimg/status-icons-succeed.png) | bin | 926 -> 926 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-user-withdrawn.png (renamed from public/images/navimg/status-icons-user-withdrawn.png) | bin | 2937 -> 2937 bytes | |||
-rw-r--r-- | app/assets/images/navimg/status-icons-wait.png (renamed from public/images/navimg/status-icons-wait.png) | bin | 889 -> 889 bytes | |||
-rw-r--r-- | app/assets/images/navimg/user-icon.png (renamed from public/images/navimg/user-icon.png) | bin | 462 -> 462 bytes | |||
-rw-r--r-- | app/assets/images/petitions.png (renamed from public/images/petitions.png) | bin | 469 -> 469 bytes | |||
-rw-r--r-- | app/assets/images/pledgebank.png (renamed from public/images/pledgebank.png) | bin | 1126 -> 1126 bytes | |||
-rw-r--r-- | app/assets/images/quote-marks.png (renamed from public/images/quote-marks.png) | bin | 464 -> 464 bytes | |||
-rw-r--r-- | app/assets/images/rails.png (renamed from public/images/rails.png) | bin | 1787 -> 1787 bytes | |||
-rw-r--r-- | app/assets/images/rss-16.png (renamed from public/images/rss-16.png) | bin | 905 -> 905 bytes | |||
-rw-r--r-- | app/assets/images/rss-blue.png (renamed from public/images/rss-blue.png) | bin | 490 -> 490 bytes | |||
-rw-r--r-- | app/assets/images/rss-orange.png (renamed from public/images/rss-orange.png) | bin | 545 -> 545 bytes | |||
-rw-r--r-- | app/assets/images/rss.png (renamed from public/images/rss.png) | bin | 6171 -> 6171 bytes | |||
-rw-r--r-- | app/assets/images/search-button.png (renamed from public/images/search-button.png) | bin | 526 -> 526 bytes | |||
-rw-r--r-- | app/assets/images/small-white-cross.png (renamed from public/images/small-white-cross.png) | bin | 355 -> 355 bytes | |||
-rw-r--r-- | app/assets/images/start-button.png (renamed from public/images/start-button.png) | bin | 809 -> 809 bytes | |||
-rw-r--r-- | app/assets/images/status-complete.png (renamed from public/images/status-complete.png) | bin | 878 -> 878 bytes | |||
-rw-r--r-- | app/assets/images/status-denied.png (renamed from public/images/status-denied.png) | bin | 969 -> 969 bytes | |||
-rw-r--r-- | app/assets/images/status-error.png (renamed from public/images/status-error.png) | bin | 788 -> 788 bytes | |||
-rw-r--r-- | app/assets/images/status-gone-postal.png (renamed from public/images/status-gone-postal.png) | bin | 882 -> 882 bytes | |||
-rw-r--r-- | app/assets/images/status-internal-review.png (renamed from public/images/status-internal-review.png) | bin | 965 -> 965 bytes | |||
-rw-r--r-- | app/assets/images/status-not-held.png (renamed from public/images/status-not-held.png) | bin | 917 -> 917 bytes | |||
-rw-r--r-- | app/assets/images/status-overdue.png (renamed from public/images/status-overdue.png) | bin | 1049 -> 1049 bytes | |||
-rw-r--r-- | app/assets/images/status-pending.png (renamed from public/images/status-pending.png) | bin | 1031 -> 1031 bytes | |||
-rw-r--r-- | app/assets/images/status-withdrawn.png (renamed from public/images/status-withdrawn.png) | bin | 891 -> 891 bytes | |||
-rw-r--r-- | app/assets/images/stripes-70-light.png (renamed from public/images/stripes-70-light.png) | bin | 260 -> 260 bytes | |||
-rw-r--r-- | app/assets/images/stripes-70-light2.png (renamed from public/images/stripes-70-light2.png) | bin | 263 -> 263 bytes | |||
-rw-r--r-- | app/assets/images/stripes-70.png (renamed from public/images/stripes-70.png) | bin | 49397 -> 49397 bytes | |||
-rw-r--r-- | app/assets/images/stripes.png (renamed from public/images/stripes.png) | bin | 49397 -> 49397 bytes | |||
-rw-r--r-- | app/assets/images/twitter-16.png (renamed from public/images/twitter-16.png) | bin | 586 -> 586 bytes | |||
-rw-r--r-- | app/assets/images/twitter.png (renamed from public/images/twitter.png) | bin | 1486 -> 1486 bytes | |||
-rw-r--r-- | app/assets/images/ui-icons-theme.png (renamed from public/images/ui-icons-theme.png) | bin | 4863 -> 4863 bytes | |||
-rw-r--r-- | app/assets/images/wordpress.png (renamed from public/images/wordpress.png) | bin | 631 -> 631 bytes | |||
-rw-r--r-- | app/assets/images/writetothem.png (renamed from public/images/writetothem.png) | bin | 585 -> 585 bytes | |||
-rw-r--r-- | app/assets/javascripts/admin.js | 7 | ||||
-rw-r--r-- | app/assets/javascripts/admin/admin.js.coffee (renamed from public/admin/javascripts/admin.coffee) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/admin/bootstrap-collapse.js (renamed from public/admin/javascripts/bootstrap-collapse.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/admin/bootstrap-tab.js (renamed from public/admin/javascripts/bootstrap-tab.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/application.js | 6 | ||||
-rw-r--r-- | app/assets/javascripts/ba-throttle-debounce.js (renamed from public/javascripts/ba-throttle-debounce.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/bootstrap-collapse.js (renamed from public/javascripts/bootstrap-collapse.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/bootstrap-tab.js (renamed from public/javascripts/bootstrap-tab.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/excanvas.min.js (renamed from public/javascripts/excanvas.min.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/general.js (renamed from public/javascripts/general.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.Jcrop.js (renamed from public/javascripts/jquery.Jcrop.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.cookie.js (renamed from public/javascripts/jquery.cookie.js) | 0 | ||||
-rwxr-xr-x | app/assets/javascripts/jquery.fancybox-1.3.4.pack.js (renamed from public/javascripts/jquery.fancybox-1.3.4.pack.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.axislabels.js (renamed from public/javascripts/jquery.flot.axislabels.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.axislabels.min.js (renamed from public/javascripts/jquery.flot.axislabels.min.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.errorbars.js (renamed from public/javascripts/jquery.flot.errorbars.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.errorbars.min.js (renamed from public/javascripts/jquery.flot.errorbars.min.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.js (renamed from public/javascripts/jquery.flot.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.min.js (renamed from public/javascripts/jquery.flot.min.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.tickrotor.js (renamed from public/javascripts/jquery.flot.tickrotor.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.flot.tickrotor.min.js (renamed from public/javascripts/jquery.flot.tickrotor.min.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.form.js (renamed from public/javascripts/jquery.form.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery.js (renamed from public/javascripts/jquery.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/jquery_ujs.js (renamed from public/javascripts/jquery_ujs.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/profile-photos.js | 3 | ||||
-rw-r--r-- | app/assets/javascripts/profile_photo.js (renamed from public/javascripts/profile_photo.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/stats-graphs.js (renamed from public/javascripts/stats-graphs.js) | 0 | ||||
-rw-r--r-- | app/assets/javascripts/stats.js | 6 | ||||
-rw-r--r-- | app/assets/stylesheets/admin.scss (renamed from app/sass/admin.scss) | 0 | ||||
-rw-r--r-- | app/assets/stylesheets/application.css | 7 | ||||
-rw-r--r-- | app/assets/stylesheets/custom.css | 5 | ||||
-rw-r--r-- | app/assets/stylesheets/fonts.scss | 73 | ||||
-rw-r--r-- | app/assets/stylesheets/ie6.css (renamed from public/stylesheets/ie6.css) | 0 | ||||
-rw-r--r-- | app/assets/stylesheets/ie7.css (renamed from public/stylesheets/ie7.css) | 0 | ||||
-rwxr-xr-x | app/assets/stylesheets/jquery-ui-1.8.15.custom.css (renamed from public/stylesheets/admin-theme/jquery-ui-1.8.15.custom.css) | 2 | ||||
-rw-r--r-- | app/assets/stylesheets/jquery.Jcrop.css (renamed from public/stylesheets/jquery.Jcrop.css) | 0 | ||||
-rwxr-xr-x | app/assets/stylesheets/jquery.fancybox-1.3.4.css (renamed from public/stylesheets/jquery.fancybox-1.3.4.css) | 0 | ||||
-rw-r--r-- | app/assets/stylesheets/main.scss (renamed from public/stylesheets/main.css) | 52 | ||||
-rw-r--r-- | app/assets/stylesheets/print.css (renamed from public/stylesheets/print.css) | 0 | ||||
-rw-r--r-- | app/controllers/api_controller.rb | 2 | ||||
-rw-r--r-- | app/controllers/application_controller.rb | 4 | ||||
-rw-r--r-- | app/controllers/request_controller.rb | 5 | ||||
-rw-r--r-- | app/controllers/track_controller.rb | 5 | ||||
-rw-r--r-- | app/helpers/application_helper.rb | 8 | ||||
-rw-r--r-- | app/models/foi_attachment.rb | 2 | ||||
-rw-r--r-- | app/models/incoming_message.rb | 8 | ||||
-rw-r--r-- | app/models/public_body.rb | 1 | ||||
-rw-r--r-- | app/views/admin_public_body/_form.html.erb | 2 | ||||
-rw-r--r-- | app/views/comment/_single_comment.html.erb | 2 | ||||
-rw-r--r-- | app/views/general/_footer.html.erb | 2 | ||||
-rw-r--r-- | app/views/general/_frontpage_requests_list.html.erb | 2 | ||||
-rw-r--r-- | app/views/general/_header.html.erb | 37 | ||||
-rw-r--r-- | app/views/general/_stylesheet_includes.html.erb | 13 | ||||
-rw-r--r-- | app/views/general/blog.html.erb | 4 | ||||
-rw-r--r-- | app/views/help/api.html.erb | 2 | ||||
-rw-r--r-- | app/views/layouts/admin.html.erb | 5 | ||||
-rw-r--r-- | app/views/layouts/default.html.erb | 49 | ||||
-rw-r--r-- | app/views/layouts/no_chrome.html.erb | 7 | ||||
-rw-r--r-- | app/views/public_body/statistics.html.erb | 4 | ||||
-rw-r--r-- | app/views/request/_bubble.html.erb | 6 | ||||
-rw-r--r-- | app/views/request/_incoming_correspondence.text.erb | 2 | ||||
-rw-r--r-- | app/views/request/_outgoing_correspondence.text.erb | 2 | ||||
-rw-r--r-- | app/views/request/_request_listing_single.html.erb | 10 | ||||
-rw-r--r-- | app/views/request/_view_html_prefix.html.erb | 2 | ||||
-rw-r--r-- | app/views/request/new.html.erb | 1 | ||||
-rw-r--r-- | app/views/request/select_authority.html.erb | 1 | ||||
-rw-r--r-- | app/views/request/show.text.erb | 8 | ||||
-rw-r--r-- | app/views/track/_tracking_links.html.erb | 2 | ||||
-rw-r--r-- | app/views/track/atom_feed.atom.erb | 2 | ||||
-rw-r--r-- | app/views/user/_show_user_info.html.erb | 2 | ||||
-rw-r--r-- | config/application.rb | 29 | ||||
-rw-r--r-- | config/deploy.rb | 2 | ||||
-rw-r--r-- | config/environments/development.rb | 14 | ||||
-rw-r--r-- | config/environments/production.rb | 17 | ||||
-rw-r--r-- | config/environments/test.rb | 5 | ||||
-rw-r--r-- | config/initializers/acts_as_xapian.rb | 25 | ||||
-rw-r--r-- | config/initializers/has_tag_string.rb | 2 | ||||
-rw-r--r-- | config/initializers/strip_attributes.rb | 2 | ||||
-rw-r--r-- | config/initializers/theme_loader.rb | 4 | ||||
-rw-r--r-- | config/test.yml | 2 | ||||
-rw-r--r-- | doc/ADMIN.md | 19 | ||||
-rw-r--r-- | doc/INSTALL.md | 9 | ||||
-rw-r--r-- | doc/THEME-ASSETS-UPGRADE.md | 74 | ||||
-rw-r--r-- | doc/TRANSLATE.md | 2 | ||||
-rw-r--r-- | lib/acts_as_xapian/.gitignore (renamed from vendor/plugins/acts_as_xapian/.gitignore) | 0 | ||||
-rw-r--r-- | lib/acts_as_xapian/LICENSE.txt (renamed from vendor/plugins/acts_as_xapian/LICENSE.txt) | 0 | ||||
-rw-r--r-- | lib/acts_as_xapian/README.txt (renamed from vendor/plugins/acts_as_xapian/README.txt) | 0 | ||||
-rw-r--r-- | lib/acts_as_xapian/acts_as_xapian.rb (renamed from vendor/plugins/acts_as_xapian/lib/acts_as_xapian.rb) | 2 | ||||
-rw-r--r-- | lib/acts_as_xapian/tasks/xapian.rake (renamed from vendor/plugins/acts_as_xapian/lib/tasks/xapian.rake) | 0 | ||||
-rw-r--r-- | lib/generators/acts_as_xapian/USAGE (renamed from vendor/plugins/acts_as_xapian/generators/acts_as_xapian/USAGE) | 0 | ||||
-rw-r--r-- | lib/generators/acts_as_xapian/acts_as_xapian_generator.rb | 10 | ||||
-rw-r--r-- | lib/generators/acts_as_xapian/templates/migration.rb (renamed from vendor/plugins/acts_as_xapian/generators/acts_as_xapian/templates/migration.rb) | 0 | ||||
-rw-r--r-- | lib/has_tag_string/README.txt (renamed from vendor/plugins/has_tag_string/README.txt) | 0 | ||||
-rw-r--r-- | lib/has_tag_string/has_tag_string.rb (renamed from vendor/plugins/has_tag_string/lib/has_tag_string.rb) | 0 | ||||
-rw-r--r-- | lib/mail_handler/backends/mail_backend.rb | 4 | ||||
-rw-r--r-- | lib/mail_handler/backends/mail_extensions.rb | 66 | ||||
-rw-r--r-- | lib/no_constraint_disabling.rb | 2 | ||||
-rw-r--r-- | lib/strip_attributes/README.rdoc (renamed from vendor/plugins/strip_attributes/README.rdoc) | 0 | ||||
-rw-r--r-- | lib/strip_attributes/Rakefile (renamed from vendor/plugins/strip_attributes/Rakefile) | 0 | ||||
-rw-r--r-- | lib/strip_attributes/strip_attributes.rb (renamed from vendor/plugins/strip_attributes/lib/strip_attributes.rb) | 0 | ||||
-rw-r--r-- | lib/strip_attributes/test/strip_attributes_test.rb (renamed from vendor/plugins/strip_attributes/test/strip_attributes_test.rb) | 0 | ||||
-rw-r--r-- | lib/strip_attributes/test/test_helper.rb (renamed from vendor/plugins/strip_attributes/test/test_helper.rb) | 0 | ||||
-rw-r--r-- | lib/tasks/gettext.rake | 4 | ||||
-rw-r--r-- | lib/tasks/themes.rake | 28 | ||||
-rw-r--r-- | public/admin/javascripts/admin.js | 32 | ||||
-rw-r--r-- | public/admin/javascripts/jquery-ui.min.js | 356 | ||||
-rw-r--r-- | public/admin/stylesheets/admin.css | 1005 | ||||
-rw-r--r-- | public/down.default.html | 2 | ||||
-rw-r--r-- | public/images/logo.png | bin | 1351 -> 0 bytes | |||
-rw-r--r-- | public/javascripts/application.js | 2 | ||||
-rw-r--r-- | public/javascripts/jquery-ui.min.js | 168 | ||||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_0_aaaaaa_40x100.png | bin | 180 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_55_fbf9ee_40x100.png | bin | 182 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_65_ffffff_40x100.png | bin | 178 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_75_cccccc_40x100.png | bin | 180 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_75_dadada_40x100.png | bin | 180 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_75_e6e6e6_40x100.png | bin | 180 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_flat_75_ffffff_40x100.png | bin | 178 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-bg_inset-soft_95_fef1ec_1x100.png | bin | 123 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-icons_222222_256x240.png | bin | 4369 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-icons_2e83ff_256x240.png | bin | 4369 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-icons_454545_256x240.png | bin | 4369 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-icons_888888_256x240.png | bin | 4369 -> 0 bytes | |||
-rwxr-xr-x | public/stylesheets/admin-theme/images/ui-icons_cd0a0a_256x240.png | bin | 4369 -> 0 bytes | |||
-rw-r--r-- | public/stylesheets/fonts.css | 73 | ||||
-rwxr-xr-x | script/compact-xapian-database | 2 | ||||
-rwxr-xr-x | script/handle-mail-replies.rb | 3 | ||||
-rwxr-xr-x | script/rails-post-deploy | 5 | ||||
-rwxr-xr-x | script/switch-theme.rb | 8 | ||||
-rw-r--r-- | spec/fixtures/public_body_translations.yml | 20 | ||||
-rw-r--r-- | spec/lib/mail_handler/mail_handler_spec.rb | 2 | ||||
-rw-r--r-- | spec/lib/sendmail_return_path_spec.rb | 88 | ||||
-rw-r--r-- | spec/mailers/application_mailer_spec.rb | 2 | ||||
-rw-r--r-- | spec/models/xapian_spec.rb | 2 | ||||
-rw-r--r-- | spec/spec_helper.rb | 4 | ||||
-rw-r--r-- | vendor/plugins/acts_as_xapian/.cvsignore | 2 | ||||
-rw-r--r-- | vendor/plugins/acts_as_xapian/generators/acts_as_xapian/acts_as_xapian_generator.rb | 13 | ||||
-rw-r--r-- | vendor/plugins/acts_as_xapian/init.rb | 7 | ||||
-rw-r--r-- | vendor/plugins/has_tag_string/init.rb | 2 | ||||
-rw-r--r-- | vendor/plugins/strip_attributes/.gitignore | 1 | ||||
-rw-r--r-- | vendor/plugins/strip_attributes/init.rb | 2 |
277 files changed, 593 insertions, 2083 deletions
diff --git a/.compass/config.rb b/.compass/config.rb deleted file mode 100644 index 5e8e8cc2d..000000000 --- a/.compass/config.rb +++ /dev/null @@ -1,30 +0,0 @@ -require 'bootstrap-sass' -# Require any additional compass plugins here. - - -# Set this to the root of your project when deployed: -http_path = "/admin/" -css_dir = "public/admin/stylesheets" -http_css_dir = "stylesheets" -sass_dir = "app/sass" -images_dir = "public/admin/images" -http_images_dir = "images" -javascripts_dir = "public/admin/javascripts" - -output_style = :compact -#output_style = :compressed -# You can select your preferred output style here (can be overridden via the command line): -# output_style = :expanded or :nested or :compact or :compressed - -# To enable relative paths to assets via compass helper functions. Uncomment: -relative_assets = true - -# To disable debugging comments that display the original location of your selectors. Uncomment: -line_comments = false - - -# If you prefer the indented syntax, you might want to regenerate this -# project again passing --syntax sass, or you can uncomment this: -# preferred_syntax = :sass -# and then run: -# sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass diff --git a/.gitignore b/.gitignore index d2c256ef1..537a7abf2 100644 --- a/.gitignore +++ b/.gitignore @@ -11,7 +11,7 @@ .autotest *#*# TAGS -/vendor/plugins/*theme +/lib/themes /locale/model_attributes.rb /files/ /public/download @@ -28,3 +28,5 @@ alaveteli.sublime* webrat.log /.rbenv-version /db/development_structure.sql +/db/structure.sql +/public/assets @@ -7,7 +7,8 @@ if File.exist? "/etc/debian_version" and File.open("/etc/debian_version").read.s end source 'https://rubygems.org' -gem 'rails', '3.1.12' +gem 'rails', '3.2.16' + gem 'pg' # New gem releases aren't being done. master is newer and supports Rails > 3.0 @@ -17,7 +18,8 @@ gem 'charlock_holmes' gem 'dynamic_form' gem 'exception_notification' gem 'fastercsv', '>=1.5.5' -gem 'jquery-rails', '~> 2.1' +gem 'jquery-rails', '~> 3.0.4' +gem 'jquery-ui-rails' gem 'json' gem 'mahoro' gem 'memcache-client' @@ -46,13 +48,21 @@ gem 'zip' gem 'fast_gettext' gem 'gettext_i18n_rails' gem 'gettext' - gem 'globalize3', :git => 'git://github.com/globalize/globalize.git', :ref => '5fd95f2389dff1' gem 'locale' gem 'routing-filter' gem 'unicode' gem 'unidecoder' +group :assets do + gem 'bootstrap-sass' + gem 'sass-rails', '~> 3.2.3' + gem 'compass-rails' + gem 'coffee-rails', "~> 3.2.1" + gem 'uglifier', '>= 1.0.3' + gem 'therubyracer' +end + group :test do gem 'fakeweb' gem 'coveralls', :require => false @@ -67,8 +77,6 @@ end group :develop do gem 'ruby-debug', :platforms => :ruby_18 gem 'debugger', :platforms => :ruby_19 - gem 'bootstrap-sass' - gem 'compass' gem 'annotate' end diff --git a/Gemfile.lock b/Gemfile.lock index 53f77e1e3..6c0c99eeb 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -18,37 +18,36 @@ GIT GEM remote: https://rubygems.org/ specs: - actionmailer (3.1.12) - actionpack (= 3.1.12) - mail (~> 2.4.4) - actionpack (3.1.12) - activemodel (= 3.1.12) - activesupport (= 3.1.12) + actionmailer (3.2.16) + actionpack (= 3.2.16) + mail (~> 2.5.4) + actionpack (3.2.16) + activemodel (= 3.2.16) + activesupport (= 3.2.16) builder (~> 3.0.0) erubis (~> 2.7.0) - i18n (~> 0.6) - rack (~> 1.3.6) + journey (~> 1.0.4) + rack (~> 1.4.5) rack-cache (~> 1.2) - rack-mount (~> 0.8.2) rack-test (~> 0.6.1) - sprockets (~> 2.0.4) - activemodel (3.1.12) - activesupport (= 3.1.12) + sprockets (~> 2.2.1) + activemodel (3.2.16) + activesupport (= 3.2.16) builder (~> 3.0.0) - i18n (~> 0.6) - activerecord (3.1.12) - activemodel (= 3.1.12) - activesupport (= 3.1.12) - arel (~> 2.2.3) + activerecord (3.2.16) + activemodel (= 3.2.16) + activesupport (= 3.2.16) + arel (~> 3.0.2) tzinfo (~> 0.3.29) - activeresource (3.1.12) - activemodel (= 3.1.12) - activesupport (= 3.1.12) - activesupport (3.1.12) + activeresource (3.2.16) + activemodel (= 3.2.16) + activesupport (= 3.2.16) + activesupport (3.2.16) + i18n (~> 0.6, >= 0.6.4) multi_json (~> 1.0) annotate (2.5.0) rake - arel (2.2.3) + arel (3.0.3) bootstrap-sass (2.3.1.2) sass (~> 3.2) builder (3.0.4) @@ -60,12 +59,21 @@ GEM net-ssh-gateway (>= 1.1.0) charlock_holmes (0.6.9.4) chunky_png (1.2.8) + coffee-rails (3.2.2) + coffee-script (>= 2.2.0) + railties (~> 3.2.0) + coffee-script (2.2.0) + coffee-script-source + execjs + coffee-script-source (1.6.3) colorize (0.5.8) columnize (0.3.6) compass (0.12.2) chunky_png (~> 1.2) fssm (>= 0.2.7) sass (~> 3.1) + compass-rails (1.0.3) + compass (>= 0.12.2, < 0.14) coveralls (0.6.7) colorize multi_json (~> 1.3) @@ -85,6 +93,8 @@ GEM eventmachine (1.0.3) exception_notification (3.0.1) actionmailer (>= 3.0.4) + activesupport (>= 3.0.4) + execjs (2.0.1) factory_girl (2.6.4) activesupport (>= 2.3.9) factory_girl_rails (1.7.0) @@ -102,18 +112,21 @@ GEM haml (4.0.3) tilt highline (1.6.19) - hike (1.2.2) - i18n (0.6.4) - jquery-rails (2.3.0) + hike (1.2.3) + i18n (0.6.9) + journey (1.0.4) + jquery-rails (3.0.4) railties (>= 3.0, < 5.0) thor (>= 0.14, < 2.0) - json (1.8.0) + jquery-ui-rails (4.1.0) + railties (>= 3.1.0) + json (1.8.1) + libv8 (3.16.14.3) linecache (0.46) rbx-require-relative (> 0.0.4) locale (2.0.8) mahoro (0.4) - mail (2.4.4) - i18n (>= 0.4.0) + mail (2.5.4) mime-types (~> 1.16) treetop (~> 1.4.8) mailcatcher (0.5.11) @@ -126,8 +139,8 @@ GEM sqlite3 (~> 1.3) thin (~> 1.5.0) memcache-client (1.8.5) - mime-types (1.23) - multi_json (1.7.4) + mime-types (1.25.1) + multi_json (1.8.2) net-http-local (0.1.2) net-purge (0.1.0) net-scp (1.1.1) @@ -144,39 +157,38 @@ GEM railties (~> 3.0) pg (0.15.1) polyglot (0.3.3) - rack (1.3.10) + rack (1.4.5) rack-cache (1.2) rack (>= 0.4) - rack-mount (0.8.3) - rack (>= 1.0.0) rack-protection (1.5.0) rack rack-ssl (1.3.3) rack rack-test (0.6.2) rack (>= 1.0) - rails (3.1.12) - actionmailer (= 3.1.12) - actionpack (= 3.1.12) - activerecord (= 3.1.12) - activeresource (= 3.1.12) - activesupport (= 3.1.12) + rails (3.2.16) + actionmailer (= 3.2.16) + actionpack (= 3.2.16) + activerecord (= 3.2.16) + activeresource (= 3.2.16) + activesupport (= 3.2.16) bundler (~> 1.0) - railties (= 3.1.12) + railties (= 3.2.16) rails-i18n (0.7.3) i18n (~> 0.5) - railties (3.1.12) - actionpack (= 3.1.12) - activesupport (= 3.1.12) + railties (3.2.16) + actionpack (= 3.2.16) + activesupport (= 3.2.16) rack-ssl (~> 1.3.2) rake (>= 0.8.7) rdoc (~> 3.4) - thor (~> 0.14.6) + thor (>= 0.14.6, < 2.0) rake (0.9.2.2) rbx-require-relative (0.0.9) rdoc (3.12.2) json (~> 1.4) recaptcha (0.3.5) + ref (1.0.5) rest-client (1.6.7) mime-types (>= 1.16) rmagick (2.13.2) @@ -202,7 +214,11 @@ GEM ruby-ole (>= 1.2.8) vpim (>= 0.360) ruby-ole (1.2.11.6) - sass (3.2.9) + sass (3.2.10) + sass-rails (3.2.6) + railties (~> 3.2.0) + sass (>= 3.1.10) + tilt (~> 1.3) simplecov (0.7.1) multi_json (~> 1.0) simplecov-html (~> 0.7.1) @@ -218,24 +234,31 @@ GEM spork-rails (3.2.1) rails (>= 3.0.0, < 3.3.0) spork (>= 1.0rc0) - sprockets (2.0.4) + sprockets (2.2.2) hike (~> 1.2) + multi_json (~> 1.0) rack (~> 1.0) tilt (~> 1.1, != 1.3.0) sqlite3 (1.3.7) statistics2 (0.54) syslog_protocol (0.9.2) text (1.2.1) + therubyracer (0.12.0) + libv8 (~> 3.16.14.0) + ref thin (1.5.1) daemons (>= 1.0.9) eventmachine (>= 0.12.6) rack (>= 1.0.0) - thor (0.14.6) + thor (0.18.1) tilt (1.4.1) - treetop (1.4.12) + treetop (1.4.15) polyglot polyglot (>= 0.3.1) - tzinfo (0.3.37) + tzinfo (0.3.38) + uglifier (2.2.1) + execjs (>= 0.3.0) + multi_json (~> 1.0, >= 1.0.2) unicode (0.4.4) unidecoder (1.1.2) vpim (0.695) @@ -257,7 +280,8 @@ DEPENDENCIES bootstrap-sass capistrano charlock_holmes - compass + coffee-rails (~> 3.2.1) + compass-rails coveralls debugger dynamic_form @@ -269,7 +293,8 @@ DEPENDENCIES gettext gettext_i18n_rails globalize3! - jquery-rails (~> 2.1) + jquery-rails (~> 3.0.4) + jquery-ui-rails json locale mahoro @@ -281,7 +306,7 @@ DEPENDENCIES nokogiri pg rack - rails (= 3.1.12) + rails (= 3.2.16) rails-i18n rake (= 0.9.2.2) rdoc @@ -291,10 +316,13 @@ DEPENDENCIES rspec-rails ruby-debug ruby-msg (~> 1.5.0) + sass-rails (~> 3.2.3) spork-rails statistics2 (~> 0.54) syslog_protocol + therubyracer thin + uglifier (>= 1.0.3) unicode unidecoder vpim diff --git a/LICENSE.txt b/LICENSE.txt index 23976d86e..21e66eedb 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -10,7 +10,7 @@ by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Note in particular, -- acts_as_xapian in vendor/plugins/ is licensed with an MIT license. +- acts_as_xapian in lib/acts_as_xapian is licensed with an MIT license. Can you explain briefly what the GNU Affero GPL is? We offer the source code of our websites to our users. The GNU Affero GPL has the @@ -5,5 +5,7 @@ require File.expand_path('../config/application', __FILE__) require 'rake' Alaveteli::Application.load_tasks if Rails.env == 'test' - Dir[File.join(File.dirname(__FILE__),'commonlib','rblib','tests','*.rake')].each { |file| load(file) } + Dir[Rails.root.join('commonlib','rblib','tests','*.rake')].each { |file| load(file) } end +# Make sure the the acts_as_xapian tasks are also loaded: +Dir[Rails.root.join('lib','acts_as_xapian','tasks','*.rake')].each { |file| load(file) } diff --git a/public/stylesheets/fonts/delicious-bold-webfont.eot b/app/assets/fonts/delicious-bold-webfont.eot Binary files differindex 90d2e95fa..90d2e95fa 100755 --- a/public/stylesheets/fonts/delicious-bold-webfont.eot +++ b/app/assets/fonts/delicious-bold-webfont.eot diff --git a/public/stylesheets/fonts/delicious-bold-webfont.svg b/app/assets/fonts/delicious-bold-webfont.svg index 51a5d9080..51a5d9080 100755 --- a/public/stylesheets/fonts/delicious-bold-webfont.svg +++ b/app/assets/fonts/delicious-bold-webfont.svg diff --git a/public/stylesheets/fonts/delicious-bold-webfont.ttf b/app/assets/fonts/delicious-bold-webfont.ttf Binary files differindex 2ec5d3e49..2ec5d3e49 100755 --- a/public/stylesheets/fonts/delicious-bold-webfont.ttf +++ b/app/assets/fonts/delicious-bold-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-bold-webfont.woff b/app/assets/fonts/delicious-bold-webfont.woff Binary files differindex b47277ef1..b47277ef1 100755 --- a/public/stylesheets/fonts/delicious-bold-webfont.woff +++ b/app/assets/fonts/delicious-bold-webfont.woff diff --git a/public/stylesheets/fonts/delicious-bolditalic-webfont.eot b/app/assets/fonts/delicious-bolditalic-webfont.eot Binary files differindex 8e8957864..8e8957864 100755 --- a/public/stylesheets/fonts/delicious-bolditalic-webfont.eot +++ b/app/assets/fonts/delicious-bolditalic-webfont.eot diff --git a/public/stylesheets/fonts/delicious-bolditalic-webfont.svg b/app/assets/fonts/delicious-bolditalic-webfont.svg index 7368c90f2..7368c90f2 100755 --- a/public/stylesheets/fonts/delicious-bolditalic-webfont.svg +++ b/app/assets/fonts/delicious-bolditalic-webfont.svg diff --git a/public/stylesheets/fonts/delicious-bolditalic-webfont.ttf b/app/assets/fonts/delicious-bolditalic-webfont.ttf Binary files differindex ef25c0adc..ef25c0adc 100755 --- a/public/stylesheets/fonts/delicious-bolditalic-webfont.ttf +++ b/app/assets/fonts/delicious-bolditalic-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-bolditalic-webfont.woff b/app/assets/fonts/delicious-bolditalic-webfont.woff Binary files differindex 068f460de..068f460de 100755 --- a/public/stylesheets/fonts/delicious-bolditalic-webfont.woff +++ b/app/assets/fonts/delicious-bolditalic-webfont.woff diff --git a/public/stylesheets/fonts/delicious-heavy-webfont.eot b/app/assets/fonts/delicious-heavy-webfont.eot Binary files differindex 782a01422..782a01422 100755 --- a/public/stylesheets/fonts/delicious-heavy-webfont.eot +++ b/app/assets/fonts/delicious-heavy-webfont.eot diff --git a/public/stylesheets/fonts/delicious-heavy-webfont.svg b/app/assets/fonts/delicious-heavy-webfont.svg index 64e0eb347..64e0eb347 100755 --- a/public/stylesheets/fonts/delicious-heavy-webfont.svg +++ b/app/assets/fonts/delicious-heavy-webfont.svg diff --git a/public/stylesheets/fonts/delicious-heavy-webfont.ttf b/app/assets/fonts/delicious-heavy-webfont.ttf Binary files differindex deba1f94f..deba1f94f 100755 --- a/public/stylesheets/fonts/delicious-heavy-webfont.ttf +++ b/app/assets/fonts/delicious-heavy-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-heavy-webfont.woff b/app/assets/fonts/delicious-heavy-webfont.woff Binary files differindex b3c48915d..b3c48915d 100755 --- a/public/stylesheets/fonts/delicious-heavy-webfont.woff +++ b/app/assets/fonts/delicious-heavy-webfont.woff diff --git a/public/stylesheets/fonts/delicious-italic-webfont.eot b/app/assets/fonts/delicious-italic-webfont.eot Binary files differindex 8bc7f8ce0..8bc7f8ce0 100755 --- a/public/stylesheets/fonts/delicious-italic-webfont.eot +++ b/app/assets/fonts/delicious-italic-webfont.eot diff --git a/public/stylesheets/fonts/delicious-italic-webfont.svg b/app/assets/fonts/delicious-italic-webfont.svg index 3cad32124..3cad32124 100755 --- a/public/stylesheets/fonts/delicious-italic-webfont.svg +++ b/app/assets/fonts/delicious-italic-webfont.svg diff --git a/public/stylesheets/fonts/delicious-italic-webfont.ttf b/app/assets/fonts/delicious-italic-webfont.ttf Binary files differindex 01d11991b..01d11991b 100755 --- a/public/stylesheets/fonts/delicious-italic-webfont.ttf +++ b/app/assets/fonts/delicious-italic-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-italic-webfont.woff b/app/assets/fonts/delicious-italic-webfont.woff Binary files differindex 32aa7611e..32aa7611e 100755 --- a/public/stylesheets/fonts/delicious-italic-webfont.woff +++ b/app/assets/fonts/delicious-italic-webfont.woff diff --git a/public/stylesheets/fonts/delicious-roman-webfont.eot b/app/assets/fonts/delicious-roman-webfont.eot Binary files differindex 2e1b7b24e..2e1b7b24e 100755 --- a/public/stylesheets/fonts/delicious-roman-webfont.eot +++ b/app/assets/fonts/delicious-roman-webfont.eot diff --git a/public/stylesheets/fonts/delicious-roman-webfont.svg b/app/assets/fonts/delicious-roman-webfont.svg index c7c20b31c..c7c20b31c 100755 --- a/public/stylesheets/fonts/delicious-roman-webfont.svg +++ b/app/assets/fonts/delicious-roman-webfont.svg diff --git a/public/stylesheets/fonts/delicious-roman-webfont.ttf b/app/assets/fonts/delicious-roman-webfont.ttf Binary files differindex cc27c5c1d..cc27c5c1d 100755 --- a/public/stylesheets/fonts/delicious-roman-webfont.ttf +++ b/app/assets/fonts/delicious-roman-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-roman-webfont.woff b/app/assets/fonts/delicious-roman-webfont.woff Binary files differindex 9acbdd4a0..9acbdd4a0 100755 --- a/public/stylesheets/fonts/delicious-roman-webfont.woff +++ b/app/assets/fonts/delicious-roman-webfont.woff diff --git a/public/stylesheets/fonts/delicious-smallcaps-webfont.eot b/app/assets/fonts/delicious-smallcaps-webfont.eot Binary files differindex 358efc11f..358efc11f 100755 --- a/public/stylesheets/fonts/delicious-smallcaps-webfont.eot +++ b/app/assets/fonts/delicious-smallcaps-webfont.eot diff --git a/public/stylesheets/fonts/delicious-smallcaps-webfont.svg b/app/assets/fonts/delicious-smallcaps-webfont.svg index d1235b7f6..d1235b7f6 100755 --- a/public/stylesheets/fonts/delicious-smallcaps-webfont.svg +++ b/app/assets/fonts/delicious-smallcaps-webfont.svg diff --git a/public/stylesheets/fonts/delicious-smallcaps-webfont.ttf b/app/assets/fonts/delicious-smallcaps-webfont.ttf Binary files differindex 152f15f13..152f15f13 100755 --- a/public/stylesheets/fonts/delicious-smallcaps-webfont.ttf +++ b/app/assets/fonts/delicious-smallcaps-webfont.ttf diff --git a/public/stylesheets/fonts/delicious-smallcaps-webfont.woff b/app/assets/fonts/delicious-smallcaps-webfont.woff Binary files differindex 0d4d1f7d0..0d4d1f7d0 100755 --- a/public/stylesheets/fonts/delicious-smallcaps-webfont.woff +++ b/app/assets/fonts/delicious-smallcaps-webfont.woff diff --git a/public/images/README.txt b/app/assets/images/README.txt index 0bf9f36d6..0bf9f36d6 100644 --- a/public/images/README.txt +++ b/app/assets/images/README.txt diff --git a/public/images/arrow-left.png b/app/assets/images/arrow-left.png Binary files differindex 74d2fa253..74d2fa253 100644 --- a/public/images/arrow-left.png +++ b/app/assets/images/arrow-left.png diff --git a/public/images/arrow-right.png b/app/assets/images/arrow-right.png Binary files differindex 34dd75ef8..34dd75ef8 100644 --- a/public/images/arrow-right.png +++ b/app/assets/images/arrow-right.png diff --git a/public/images/bighand.png b/app/assets/images/bighand.png Binary files differindex 92a4a6105..92a4a6105 100644 --- a/public/images/bighand.png +++ b/app/assets/images/bighand.png diff --git a/public/images/button-gradient-large.png b/app/assets/images/button-gradient-large.png Binary files differindex 93ebc6cbc..93ebc6cbc 100644 --- a/public/images/button-gradient-large.png +++ b/app/assets/images/button-gradient-large.png diff --git a/public/images/button-gradient.png b/app/assets/images/button-gradient.png Binary files differindex 8b29e89ba..8b29e89ba 100644 --- a/public/images/button-gradient.png +++ b/app/assets/images/button-gradient.png diff --git a/public/images/button-preview.png b/app/assets/images/button-preview.png Binary files differindex 79b4ccd04..79b4ccd04 100644 --- a/public/images/button-preview.png +++ b/app/assets/images/button-preview.png diff --git a/public/images/button-search.png b/app/assets/images/button-search.png Binary files differindex 23945f4f0..23945f4f0 100644 --- a/public/images/button-search.png +++ b/app/assets/images/button-search.png diff --git a/public/images/calendar.png b/app/assets/images/calendar.png Binary files differindex 44981a41c..44981a41c 100644 --- a/public/images/calendar.png +++ b/app/assets/images/calendar.png diff --git a/public/images/defaultprofilepic.png b/app/assets/images/defaultprofilepic.png Binary files differindex affdaad3d..affdaad3d 100644 --- a/public/images/defaultprofilepic.png +++ b/app/assets/images/defaultprofilepic.png diff --git a/public/images/email-16.png b/app/assets/images/email-16.png Binary files differindex 8692748e2..8692748e2 100644 --- a/public/images/email-16.png +++ b/app/assets/images/email-16.png diff --git a/public/stylesheets/fancybox-x.png b/app/assets/images/fancybox-x.png Binary files differindex c2130f869..c2130f869 100755 --- a/public/stylesheets/fancybox-x.png +++ b/app/assets/images/fancybox-x.png diff --git a/public/stylesheets/fancybox-y.png b/app/assets/images/fancybox-y.png Binary files differindex 7ef399b99..7ef399b99 100755 --- a/public/stylesheets/fancybox-y.png +++ b/app/assets/images/fancybox-y.png diff --git a/public/stylesheets/fancybox.png b/app/assets/images/fancybox.png Binary files differindex 65e14f68f..65e14f68f 100755 --- a/public/stylesheets/fancybox.png +++ b/app/assets/images/fancybox.png diff --git a/public/images/feed-14.png b/app/assets/images/feed-14.png Binary files differindex b3c949d22..b3c949d22 100644 --- a/public/images/feed-14.png +++ b/app/assets/images/feed-14.png diff --git a/public/images/feed-16.png b/app/assets/images/feed-16.png Binary files differindex 1679ab05b..1679ab05b 100644 --- a/public/images/feed-16.png +++ b/app/assets/images/feed-16.png diff --git a/public/images/feed-28.png b/app/assets/images/feed-28.png Binary files differindex d64c669c7..d64c669c7 100644 --- a/public/images/feed-28.png +++ b/app/assets/images/feed-28.png diff --git a/public/images/flying-computer.png b/app/assets/images/flying-computer.png Binary files differindex b1e1d59bb..b1e1d59bb 100644 --- a/public/images/flying-computer.png +++ b/app/assets/images/flying-computer.png diff --git a/public/admin/images/glyphicons-halflings-white.png b/app/assets/images/glyphicons-halflings-white.png Binary files differindex 3bf6484a2..3bf6484a2 100644 --- a/public/admin/images/glyphicons-halflings-white.png +++ b/app/assets/images/glyphicons-halflings-white.png diff --git a/public/admin/images/glyphicons-halflings.png b/app/assets/images/glyphicons-halflings.png Binary files differindex 79bc568c2..79bc568c2 100644 --- a/public/admin/images/glyphicons-halflings.png +++ b/app/assets/images/glyphicons-halflings.png diff --git a/public/images/helpmeinvestigate.png b/app/assets/images/helpmeinvestigate.png Binary files differindex e9aaf5aec..e9aaf5aec 100644 --- a/public/images/helpmeinvestigate.png +++ b/app/assets/images/helpmeinvestigate.png diff --git a/public/images/home-grad.png b/app/assets/images/home-grad.png Binary files differindex ff9887a11..ff9887a11 100644 --- a/public/images/home-grad.png +++ b/app/assets/images/home-grad.png diff --git a/public/images/icon-foi.png b/app/assets/images/icon-foi.png Binary files differindex 138bf3b5c..138bf3b5c 100644 --- a/public/images/icon-foi.png +++ b/app/assets/images/icon-foi.png diff --git a/public/images/icon-person.png b/app/assets/images/icon-person.png Binary files differindex dfb35a849..dfb35a849 100644 --- a/public/images/icon-person.png +++ b/app/assets/images/icon-person.png diff --git a/public/images/icon-publicbody.png b/app/assets/images/icon-publicbody.png Binary files differindex 0f3848ccf..0f3848ccf 100644 --- a/public/images/icon-publicbody.png +++ b/app/assets/images/icon-publicbody.png diff --git a/public/images/icon_application_octet-stream_large.png b/app/assets/images/icon_application_octet-stream_large.png Binary files differindex a239862e1..a239862e1 100644 --- a/public/images/icon_application_octet-stream_large.png +++ b/app/assets/images/icon_application_octet-stream_large.png diff --git a/public/images/icon_application_pdf_large.png b/app/assets/images/icon_application_pdf_large.png Binary files differindex 9a38ca33c..9a38ca33c 100644 --- a/public/images/icon_application_pdf_large.png +++ b/app/assets/images/icon_application_pdf_large.png diff --git a/public/images/icon_application_rtf_large.png b/app/assets/images/icon_application_rtf_large.png Binary files differindex 2ad990608..2ad990608 100644 --- a/public/images/icon_application_rtf_large.png +++ b/app/assets/images/icon_application_rtf_large.png diff --git a/public/images/icon_application_vnd.ms-excel_large.png b/app/assets/images/icon_application_vnd.ms-excel_large.png Binary files differindex 3f346f5ef..3f346f5ef 100644 --- a/public/images/icon_application_vnd.ms-excel_large.png +++ b/app/assets/images/icon_application_vnd.ms-excel_large.png diff --git a/public/images/icon_application_vnd.ms-powerpoint_large.png b/app/assets/images/icon_application_vnd.ms-powerpoint_large.png Binary files differindex 82c225059..82c225059 100644 --- a/public/images/icon_application_vnd.ms-powerpoint_large.png +++ b/app/assets/images/icon_application_vnd.ms-powerpoint_large.png diff --git a/public/images/icon_application_vnd.ms-word_large.png b/app/assets/images/icon_application_vnd.ms-word_large.png Binary files differindex 91a696ab5..91a696ab5 100644 --- a/public/images/icon_application_vnd.ms-word_large.png +++ b/app/assets/images/icon_application_vnd.ms-word_large.png diff --git a/public/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png index 4e0dcebe7..4e0dcebe7 120000 --- a/public/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png +++ b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.presentationml.presentation_large.png diff --git a/public/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png index c664a30f9..c664a30f9 120000 --- a/public/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png +++ b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.spreadsheetml.sheet_large.png diff --git a/public/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png index 950105e3b..950105e3b 120000 --- a/public/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png +++ b/app/assets/images/icon_application_vnd.openxmlformats-officedocument.wordprocessingml.document_large.png diff --git a/public/images/icon_application_zip_large.png b/app/assets/images/icon_application_zip_large.png Binary files differindex 0a14e978e..0a14e978e 100644 --- a/public/images/icon_application_zip_large.png +++ b/app/assets/images/icon_application_zip_large.png diff --git a/public/images/icon_image_bmp_large.png b/app/assets/images/icon_image_bmp_large.png Binary files differindex f6e8dbaed..f6e8dbaed 100644 --- a/public/images/icon_image_bmp_large.png +++ b/app/assets/images/icon_image_bmp_large.png diff --git a/public/images/icon_image_gif_large.png b/app/assets/images/icon_image_gif_large.png Binary files differindex 424d1e0fd..424d1e0fd 100644 --- a/public/images/icon_image_gif_large.png +++ b/app/assets/images/icon_image_gif_large.png diff --git a/public/images/icon_image_jpeg_large.png b/app/assets/images/icon_image_jpeg_large.png Binary files differindex fd50a889d..fd50a889d 100644 --- a/public/images/icon_image_jpeg_large.png +++ b/app/assets/images/icon_image_jpeg_large.png diff --git a/public/images/icon_image_png_large.png b/app/assets/images/icon_image_png_large.png Binary files differindex f16edb08e..f16edb08e 100644 --- a/public/images/icon_image_png_large.png +++ b/app/assets/images/icon_image_png_large.png diff --git a/public/images/icon_image_tiff_large.png b/app/assets/images/icon_image_tiff_large.png Binary files differindex 356f63478..356f63478 100644 --- a/public/images/icon_image_tiff_large.png +++ b/app/assets/images/icon_image_tiff_large.png diff --git a/public/images/icon_message_delivery-status_large.png b/app/assets/images/icon_message_delivery-status_large.png Binary files differindex a239862e1..a239862e1 100644 --- a/public/images/icon_message_delivery-status_large.png +++ b/app/assets/images/icon_message_delivery-status_large.png diff --git a/public/images/icon_text_html_large.png b/app/assets/images/icon_text_html_large.png Binary files differindex 914502cf4..914502cf4 100644 --- a/public/images/icon_text_html_large.png +++ b/app/assets/images/icon_text_html_large.png diff --git a/public/images/icon_text_plain_large.png b/app/assets/images/icon_text_plain_large.png Binary files differindex f74a997ba..f74a997ba 100644 --- a/public/images/icon_text_plain_large.png +++ b/app/assets/images/icon_text_plain_large.png diff --git a/public/images/icon_text_x-vcard_large.png b/app/assets/images/icon_text_x-vcard_large.png Binary files differindex cc44d3edc..cc44d3edc 100644 --- a/public/images/icon_text_x-vcard_large.png +++ b/app/assets/images/icon_text_x-vcard_large.png diff --git a/public/images/icon_unknown.png b/app/assets/images/icon_unknown.png Binary files differindex 992c646c0..992c646c0 100644 --- a/public/images/icon_unknown.png +++ b/app/assets/images/icon_unknown.png diff --git a/public/images/link-icon.png b/app/assets/images/link-icon.png Binary files differindex 7d9237fcd..7d9237fcd 100644 --- a/public/images/link-icon.png +++ b/app/assets/images/link-icon.png diff --git a/public/images/littlehand.png b/app/assets/images/littlehand.png Binary files differindex f7ec82045..f7ec82045 100644 --- a/public/images/littlehand.png +++ b/app/assets/images/littlehand.png diff --git a/app/assets/images/logo.png b/app/assets/images/logo.png Binary files differnew file mode 100644 index 000000000..1e44ced7d --- /dev/null +++ b/app/assets/images/logo.png diff --git a/public/images/navimg/alaveteli-logo-header.png b/app/assets/images/navimg/alaveteli-logo-header.png Binary files differindex 49b529718..49b529718 100644 --- a/public/images/navimg/alaveteli-logo-header.png +++ b/app/assets/images/navimg/alaveteli-logo-header.png diff --git a/public/images/navimg/alaveteli-logo.png b/app/assets/images/navimg/alaveteli-logo.png Binary files differindex ce9abdd3d..ce9abdd3d 100644 --- a/public/images/navimg/alaveteli-logo.png +++ b/app/assets/images/navimg/alaveteli-logo.png diff --git a/public/images/navimg/auth-icon.png b/app/assets/images/navimg/auth-icon.png Binary files differindex 6eaa229bf..6eaa229bf 100644 --- a/public/images/navimg/auth-icon.png +++ b/app/assets/images/navimg/auth-icon.png diff --git a/public/images/navimg/bnnr-ifyoudontask-24bit.png b/app/assets/images/navimg/bnnr-ifyoudontask-24bit.png Binary files differindex 5c87bdab4..5c87bdab4 100644 --- a/public/images/navimg/bnnr-ifyoudontask-24bit.png +++ b/app/assets/images/navimg/bnnr-ifyoudontask-24bit.png diff --git a/public/images/navimg/bnnr-ifyoudontask.png b/app/assets/images/navimg/bnnr-ifyoudontask.png Binary files differindex f577778e1..f577778e1 100644 --- a/public/images/navimg/bnnr-ifyoudontask.png +++ b/app/assets/images/navimg/bnnr-ifyoudontask.png diff --git a/public/images/navimg/bnnr-temp-100px.jpg b/app/assets/images/navimg/bnnr-temp-100px.jpg Binary files differindex baf03585e..baf03585e 100644 --- a/public/images/navimg/bnnr-temp-100px.jpg +++ b/app/assets/images/navimg/bnnr-temp-100px.jpg diff --git a/public/images/navimg/bnnr-temp-100pxa.jpg b/app/assets/images/navimg/bnnr-temp-100pxa.jpg Binary files differindex f95a4d9f5..f95a4d9f5 100644 --- a/public/images/navimg/bnnr-temp-100pxa.jpg +++ b/app/assets/images/navimg/bnnr-temp-100pxa.jpg diff --git a/public/images/navimg/bnnr-temp-100pxb.jpg b/app/assets/images/navimg/bnnr-temp-100pxb.jpg Binary files differindex f09f5c838..f09f5c838 100644 --- a/public/images/navimg/bnnr-temp-100pxb.jpg +++ b/app/assets/images/navimg/bnnr-temp-100pxb.jpg diff --git a/public/images/navimg/bnnr-temp-100pxc.jpg b/app/assets/images/navimg/bnnr-temp-100pxc.jpg Binary files differindex e83ec90ed..e83ec90ed 100755 --- a/public/images/navimg/bnnr-temp-100pxc.jpg +++ b/app/assets/images/navimg/bnnr-temp-100pxc.jpg diff --git a/public/images/navimg/bnnr-temp-100pxd.jpg b/app/assets/images/navimg/bnnr-temp-100pxd.jpg Binary files differindex 105b97a19..105b97a19 100755 --- a/public/images/navimg/bnnr-temp-100pxd.jpg +++ b/app/assets/images/navimg/bnnr-temp-100pxd.jpg diff --git a/public/images/navimg/bnnr-temp.jpg b/app/assets/images/navimg/bnnr-temp.jpg Binary files differindex abcc0bcfc..abcc0bcfc 100644 --- a/public/images/navimg/bnnr-temp.jpg +++ b/app/assets/images/navimg/bnnr-temp.jpg diff --git a/public/images/navimg/infobug20px.png b/app/assets/images/navimg/infobug20px.png Binary files differindex f9cc70694..f9cc70694 100644 --- a/public/images/navimg/infobug20px.png +++ b/app/assets/images/navimg/infobug20px.png diff --git a/public/images/navimg/logo-trans-small.png b/app/assets/images/navimg/logo-trans-small.png Binary files differindex fde1d1e51..fde1d1e51 100644 --- a/public/images/navimg/logo-trans-small.png +++ b/app/assets/images/navimg/logo-trans-small.png diff --git a/public/images/navimg/logo-trans.png b/app/assets/images/navimg/logo-trans.png Binary files differindex 320a52efd..320a52efd 100644 --- a/public/images/navimg/logo-trans.png +++ b/app/assets/images/navimg/logo-trans.png diff --git a/public/images/navimg/mysoc-logo-header.png b/app/assets/images/navimg/mysoc-logo-header.png Binary files differindex ad813926a..ad813926a 100755 --- a/public/images/navimg/mysoc-logo-header.png +++ b/app/assets/images/navimg/mysoc-logo-header.png diff --git a/public/images/navimg/mysoc-logo-small.png b/app/assets/images/navimg/mysoc-logo-small.png Binary files differindex 1d644924c..1d644924c 100644 --- a/public/images/navimg/mysoc-logo-small.png +++ b/app/assets/images/navimg/mysoc-logo-small.png diff --git a/public/images/navimg/quote-open-small.png b/app/assets/images/navimg/quote-open-small.png Binary files differindex 46edaa850..46edaa850 100755 --- a/public/images/navimg/quote-open-small.png +++ b/app/assets/images/navimg/quote-open-small.png diff --git a/public/images/navimg/quote-open.png b/app/assets/images/navimg/quote-open.png Binary files differindex 7e8858265..7e8858265 100644 --- a/public/images/navimg/quote-open.png +++ b/app/assets/images/navimg/quote-open.png diff --git a/public/images/navimg/request-icon.png b/app/assets/images/navimg/request-icon.png Binary files differindex 9f2854d0e..9f2854d0e 100644 --- a/public/images/navimg/request-icon.png +++ b/app/assets/images/navimg/request-icon.png diff --git a/public/images/navimg/status-icons-attn.png b/app/assets/images/navimg/status-icons-attn.png Binary files differindex 6a543c5da..6a543c5da 100644 --- a/public/images/navimg/status-icons-attn.png +++ b/app/assets/images/navimg/status-icons-attn.png diff --git a/public/images/navimg/status-icons-error-message.png b/app/assets/images/navimg/status-icons-error-message.png Binary files differindex 03ddd60b7..03ddd60b7 100644 --- a/public/images/navimg/status-icons-error-message.png +++ b/app/assets/images/navimg/status-icons-error-message.png diff --git a/public/images/navimg/status-icons-fail.png b/app/assets/images/navimg/status-icons-fail.png Binary files differindex 57529237c..57529237c 100644 --- a/public/images/navimg/status-icons-fail.png +++ b/app/assets/images/navimg/status-icons-fail.png diff --git a/public/images/navimg/status-icons-internal-review.png b/app/assets/images/navimg/status-icons-internal-review.png Binary files differindex 44fe2fdb3..44fe2fdb3 100644 --- a/public/images/navimg/status-icons-internal-review.png +++ b/app/assets/images/navimg/status-icons-internal-review.png diff --git a/public/images/navimg/status-icons-not-held.png b/app/assets/images/navimg/status-icons-not-held.png Binary files differindex 1225a3db3..1225a3db3 100644 --- a/public/images/navimg/status-icons-not-held.png +++ b/app/assets/images/navimg/status-icons-not-held.png diff --git a/public/images/navimg/status-icons-post.png b/app/assets/images/navimg/status-icons-post.png Binary files differindex 56b9b9fa9..56b9b9fa9 100755 --- a/public/images/navimg/status-icons-post.png +++ b/app/assets/images/navimg/status-icons-post.png diff --git a/public/images/navimg/status-icons-succeed.png b/app/assets/images/navimg/status-icons-succeed.png Binary files differindex 8f3bba985..8f3bba985 100644 --- a/public/images/navimg/status-icons-succeed.png +++ b/app/assets/images/navimg/status-icons-succeed.png diff --git a/public/images/navimg/status-icons-user-withdrawn.png b/app/assets/images/navimg/status-icons-user-withdrawn.png Binary files differindex fa4e278ff..fa4e278ff 100644 --- a/public/images/navimg/status-icons-user-withdrawn.png +++ b/app/assets/images/navimg/status-icons-user-withdrawn.png diff --git a/public/images/navimg/status-icons-wait.png b/app/assets/images/navimg/status-icons-wait.png Binary files differindex a264f06f5..a264f06f5 100644 --- a/public/images/navimg/status-icons-wait.png +++ b/app/assets/images/navimg/status-icons-wait.png diff --git a/public/images/navimg/user-icon.png b/app/assets/images/navimg/user-icon.png Binary files differindex dfaf5525d..dfaf5525d 100644 --- a/public/images/navimg/user-icon.png +++ b/app/assets/images/navimg/user-icon.png diff --git a/public/images/petitions.png b/app/assets/images/petitions.png Binary files differindex 204e12b77..204e12b77 100644 --- a/public/images/petitions.png +++ b/app/assets/images/petitions.png diff --git a/public/images/pledgebank.png b/app/assets/images/pledgebank.png Binary files differindex 0f0a8f235..0f0a8f235 100644 --- a/public/images/pledgebank.png +++ b/app/assets/images/pledgebank.png diff --git a/public/images/quote-marks.png b/app/assets/images/quote-marks.png Binary files differindex e2bdfb06d..e2bdfb06d 100644 --- a/public/images/quote-marks.png +++ b/app/assets/images/quote-marks.png diff --git a/public/images/rails.png b/app/assets/images/rails.png Binary files differindex b8441f182..b8441f182 100644 --- a/public/images/rails.png +++ b/app/assets/images/rails.png diff --git a/public/images/rss-16.png b/app/assets/images/rss-16.png Binary files differindex d61986a56..d61986a56 100644 --- a/public/images/rss-16.png +++ b/app/assets/images/rss-16.png diff --git a/public/images/rss-blue.png b/app/assets/images/rss-blue.png Binary files differindex abc1b1859..abc1b1859 100644 --- a/public/images/rss-blue.png +++ b/app/assets/images/rss-blue.png diff --git a/public/images/rss-orange.png b/app/assets/images/rss-orange.png Binary files differindex d0e6a949e..d0e6a949e 100644 --- a/public/images/rss-orange.png +++ b/app/assets/images/rss-orange.png diff --git a/public/images/rss.png b/app/assets/images/rss.png Binary files differindex a88ac93f5..a88ac93f5 100644 --- a/public/images/rss.png +++ b/app/assets/images/rss.png diff --git a/public/images/search-button.png b/app/assets/images/search-button.png Binary files differindex f5d41d4f1..f5d41d4f1 100644 --- a/public/images/search-button.png +++ b/app/assets/images/search-button.png diff --git a/public/images/small-white-cross.png b/app/assets/images/small-white-cross.png Binary files differindex 3f78064d2..3f78064d2 100644 --- a/public/images/small-white-cross.png +++ b/app/assets/images/small-white-cross.png diff --git a/public/images/start-button.png b/app/assets/images/start-button.png Binary files differindex 585931c35..585931c35 100644 --- a/public/images/start-button.png +++ b/app/assets/images/start-button.png diff --git a/public/images/status-complete.png b/app/assets/images/status-complete.png Binary files differindex 2ff49770a..2ff49770a 100644 --- a/public/images/status-complete.png +++ b/app/assets/images/status-complete.png diff --git a/public/images/status-denied.png b/app/assets/images/status-denied.png Binary files differindex 1f768af5e..1f768af5e 100644 --- a/public/images/status-denied.png +++ b/app/assets/images/status-denied.png diff --git a/public/images/status-error.png b/app/assets/images/status-error.png Binary files differindex 5865dd1e1..5865dd1e1 100644 --- a/public/images/status-error.png +++ b/app/assets/images/status-error.png diff --git a/public/images/status-gone-postal.png b/app/assets/images/status-gone-postal.png Binary files differindex 00df771ac..00df771ac 100644 --- a/public/images/status-gone-postal.png +++ b/app/assets/images/status-gone-postal.png diff --git a/public/images/status-internal-review.png b/app/assets/images/status-internal-review.png Binary files differindex 639f72797..639f72797 100644 --- a/public/images/status-internal-review.png +++ b/app/assets/images/status-internal-review.png diff --git a/public/images/status-not-held.png b/app/assets/images/status-not-held.png Binary files differindex 9d20ac2e7..9d20ac2e7 100644 --- a/public/images/status-not-held.png +++ b/app/assets/images/status-not-held.png diff --git a/public/images/status-overdue.png b/app/assets/images/status-overdue.png Binary files differindex 637fed8d9..637fed8d9 100644 --- a/public/images/status-overdue.png +++ b/app/assets/images/status-overdue.png diff --git a/public/images/status-pending.png b/app/assets/images/status-pending.png Binary files differindex dcf4009f3..dcf4009f3 100644 --- a/public/images/status-pending.png +++ b/app/assets/images/status-pending.png diff --git a/public/images/status-withdrawn.png b/app/assets/images/status-withdrawn.png Binary files differindex d56aa213f..d56aa213f 100644 --- a/public/images/status-withdrawn.png +++ b/app/assets/images/status-withdrawn.png diff --git a/public/images/stripes-70-light.png b/app/assets/images/stripes-70-light.png Binary files differindex 7a0ee575d..7a0ee575d 100644 --- a/public/images/stripes-70-light.png +++ b/app/assets/images/stripes-70-light.png diff --git a/public/images/stripes-70-light2.png b/app/assets/images/stripes-70-light2.png Binary files differindex 443442a48..443442a48 100644 --- a/public/images/stripes-70-light2.png +++ b/app/assets/images/stripes-70-light2.png diff --git a/public/images/stripes-70.png b/app/assets/images/stripes-70.png Binary files differindex fda1c339d..fda1c339d 100644 --- a/public/images/stripes-70.png +++ b/app/assets/images/stripes-70.png diff --git a/public/images/stripes.png b/app/assets/images/stripes.png Binary files differindex fda1c339d..fda1c339d 100644 --- a/public/images/stripes.png +++ b/app/assets/images/stripes.png diff --git a/public/images/twitter-16.png b/app/assets/images/twitter-16.png Binary files differindex e848b8f2e..e848b8f2e 100644 --- a/public/images/twitter-16.png +++ b/app/assets/images/twitter-16.png diff --git a/public/images/twitter.png b/app/assets/images/twitter.png Binary files differindex 6589824af..6589824af 100644 --- a/public/images/twitter.png +++ b/app/assets/images/twitter.png diff --git a/public/images/ui-icons-theme.png b/app/assets/images/ui-icons-theme.png Binary files differindex f619648da..f619648da 100644 --- a/public/images/ui-icons-theme.png +++ b/app/assets/images/ui-icons-theme.png diff --git a/public/images/wordpress.png b/app/assets/images/wordpress.png Binary files differindex a0e254373..a0e254373 100644 --- a/public/images/wordpress.png +++ b/app/assets/images/wordpress.png diff --git a/public/images/writetothem.png b/app/assets/images/writetothem.png Binary files differindex f5648df65..f5648df65 100644 --- a/public/images/writetothem.png +++ b/app/assets/images/writetothem.png diff --git a/app/assets/javascripts/admin.js b/app/assets/javascripts/admin.js new file mode 100644 index 000000000..0b5d56525 --- /dev/null +++ b/app/assets/javascripts/admin.js @@ -0,0 +1,7 @@ +// ... +//= require jquery +//= require jquery.ui.tabs +//= require admin/bootstrap-collapse +//= require admin/bootstrap-tab +//= require admin/admin +//= require jquery_ujs diff --git a/public/admin/javascripts/admin.coffee b/app/assets/javascripts/admin/admin.js.coffee index 3d39369a4..3d39369a4 100644 --- a/public/admin/javascripts/admin.coffee +++ b/app/assets/javascripts/admin/admin.js.coffee diff --git a/public/admin/javascripts/bootstrap-collapse.js b/app/assets/javascripts/admin/bootstrap-collapse.js index 9a364468b..9a364468b 100644 --- a/public/admin/javascripts/bootstrap-collapse.js +++ b/app/assets/javascripts/admin/bootstrap-collapse.js diff --git a/public/admin/javascripts/bootstrap-tab.js b/app/assets/javascripts/admin/bootstrap-tab.js index 26c9ece75..26c9ece75 100644 --- a/public/admin/javascripts/bootstrap-tab.js +++ b/app/assets/javascripts/admin/bootstrap-tab.js diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js new file mode 100644 index 000000000..d8aed6346 --- /dev/null +++ b/app/assets/javascripts/application.js @@ -0,0 +1,6 @@ +// ... +//= require jquery +//= require jquery.ui.datepicker +//= require jquery.cookie +//= require general +//= require ba-throttle-debounce diff --git a/public/javascripts/ba-throttle-debounce.js b/app/assets/javascripts/ba-throttle-debounce.js index 07205508e..07205508e 100644 --- a/public/javascripts/ba-throttle-debounce.js +++ b/app/assets/javascripts/ba-throttle-debounce.js diff --git a/public/javascripts/bootstrap-collapse.js b/app/assets/javascripts/bootstrap-collapse.js index 9a364468b..9a364468b 100644 --- a/public/javascripts/bootstrap-collapse.js +++ b/app/assets/javascripts/bootstrap-collapse.js diff --git a/public/javascripts/bootstrap-tab.js b/app/assets/javascripts/bootstrap-tab.js index 26c9ece75..26c9ece75 100644 --- a/public/javascripts/bootstrap-tab.js +++ b/app/assets/javascripts/bootstrap-tab.js diff --git a/public/javascripts/excanvas.min.js b/app/assets/javascripts/excanvas.min.js index fcf876c74..fcf876c74 100644 --- a/public/javascripts/excanvas.min.js +++ b/app/assets/javascripts/excanvas.min.js diff --git a/public/javascripts/general.js b/app/assets/javascripts/general.js index b52131b83..b52131b83 100644 --- a/public/javascripts/general.js +++ b/app/assets/javascripts/general.js diff --git a/public/javascripts/jquery.Jcrop.js b/app/assets/javascripts/jquery.Jcrop.js index 9002b9787..9002b9787 100644 --- a/public/javascripts/jquery.Jcrop.js +++ b/app/assets/javascripts/jquery.Jcrop.js diff --git a/public/javascripts/jquery.cookie.js b/app/assets/javascripts/jquery.cookie.js index 6a3e394b4..6a3e394b4 100644 --- a/public/javascripts/jquery.cookie.js +++ b/app/assets/javascripts/jquery.cookie.js diff --git a/public/javascripts/jquery.fancybox-1.3.4.pack.js b/app/assets/javascripts/jquery.fancybox-1.3.4.pack.js index 1373ed083..1373ed083 100755 --- a/public/javascripts/jquery.fancybox-1.3.4.pack.js +++ b/app/assets/javascripts/jquery.fancybox-1.3.4.pack.js diff --git a/public/javascripts/jquery.flot.axislabels.js b/app/assets/javascripts/jquery.flot.axislabels.js index c6f77aad4..c6f77aad4 100644 --- a/public/javascripts/jquery.flot.axislabels.js +++ b/app/assets/javascripts/jquery.flot.axislabels.js diff --git a/public/javascripts/jquery.flot.axislabels.min.js b/app/assets/javascripts/jquery.flot.axislabels.min.js index 684d6173a..684d6173a 100644 --- a/public/javascripts/jquery.flot.axislabels.min.js +++ b/app/assets/javascripts/jquery.flot.axislabels.min.js diff --git a/public/javascripts/jquery.flot.errorbars.js b/app/assets/javascripts/jquery.flot.errorbars.js index 729843678..729843678 100644 --- a/public/javascripts/jquery.flot.errorbars.js +++ b/app/assets/javascripts/jquery.flot.errorbars.js diff --git a/public/javascripts/jquery.flot.errorbars.min.js b/app/assets/javascripts/jquery.flot.errorbars.min.js index 84a514b07..84a514b07 100644 --- a/public/javascripts/jquery.flot.errorbars.min.js +++ b/app/assets/javascripts/jquery.flot.errorbars.min.js diff --git a/public/javascripts/jquery.flot.js b/app/assets/javascripts/jquery.flot.js index 2855d2eb3..2855d2eb3 100644 --- a/public/javascripts/jquery.flot.js +++ b/app/assets/javascripts/jquery.flot.js diff --git a/public/javascripts/jquery.flot.min.js b/app/assets/javascripts/jquery.flot.min.js index b82faa18f..b82faa18f 100644 --- a/public/javascripts/jquery.flot.min.js +++ b/app/assets/javascripts/jquery.flot.min.js diff --git a/public/javascripts/jquery.flot.tickrotor.js b/app/assets/javascripts/jquery.flot.tickrotor.js index 404b2b0a7..404b2b0a7 100644 --- a/public/javascripts/jquery.flot.tickrotor.js +++ b/app/assets/javascripts/jquery.flot.tickrotor.js diff --git a/public/javascripts/jquery.flot.tickrotor.min.js b/app/assets/javascripts/jquery.flot.tickrotor.min.js index 87fc79d10..87fc79d10 100644 --- a/public/javascripts/jquery.flot.tickrotor.min.js +++ b/app/assets/javascripts/jquery.flot.tickrotor.min.js diff --git a/public/javascripts/jquery.form.js b/app/assets/javascripts/jquery.form.js index bc0061418..bc0061418 100644 --- a/public/javascripts/jquery.form.js +++ b/app/assets/javascripts/jquery.form.js diff --git a/public/javascripts/jquery.js b/app/assets/javascripts/jquery.js index 16ad06c5a..16ad06c5a 100644 --- a/public/javascripts/jquery.js +++ b/app/assets/javascripts/jquery.js diff --git a/public/javascripts/jquery_ujs.js b/app/assets/javascripts/jquery_ujs.js index 50121d6ed..50121d6ed 100644 --- a/public/javascripts/jquery_ujs.js +++ b/app/assets/javascripts/jquery_ujs.js diff --git a/app/assets/javascripts/profile-photos.js b/app/assets/javascripts/profile-photos.js new file mode 100644 index 000000000..c7ebe894d --- /dev/null +++ b/app/assets/javascripts/profile-photos.js @@ -0,0 +1,3 @@ +// ... +//= require jquery.Jcrop +//= require profile_photo diff --git a/public/javascripts/profile_photo.js b/app/assets/javascripts/profile_photo.js index 6d637b439..6d637b439 100644 --- a/public/javascripts/profile_photo.js +++ b/app/assets/javascripts/profile_photo.js diff --git a/public/javascripts/stats-graphs.js b/app/assets/javascripts/stats-graphs.js index ff3d3a11a..ff3d3a11a 100644 --- a/public/javascripts/stats-graphs.js +++ b/app/assets/javascripts/stats-graphs.js diff --git a/app/assets/javascripts/stats.js b/app/assets/javascripts/stats.js new file mode 100644 index 000000000..8c743ad87 --- /dev/null +++ b/app/assets/javascripts/stats.js @@ -0,0 +1,6 @@ +// ... +//= require jquery.flot.min +//= require jquery.flot.errorbars.min +//= require jquery.flot.tickrotor.min +//= require jquery.flot.axislabels +//= require stats-graphs diff --git a/app/sass/admin.scss b/app/assets/stylesheets/admin.scss index 584b0d00d..584b0d00d 100644 --- a/app/sass/admin.scss +++ b/app/assets/stylesheets/admin.scss diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css new file mode 100644 index 000000000..097221b2f --- /dev/null +++ b/app/assets/stylesheets/application.css @@ -0,0 +1,7 @@ +/* ... +*= require_self +*= require main +*= require custom +*= require jquery.ui.datepicker +*= require jquery.ui.tabs +*/ diff --git a/app/assets/stylesheets/custom.css b/app/assets/stylesheets/custom.css new file mode 100644 index 000000000..f1df5cca5 --- /dev/null +++ b/app/assets/stylesheets/custom.css @@ -0,0 +1,5 @@ +/* Themes will typically add a custom.css file with their own CSS. + This file is present to stop errors where THEME_URLS is empty, + since it is mentioned in the application.css manifest. Themes + should prepend their directories to the asset path so this will + be overriden by any custom.css in the theme. */ diff --git a/app/assets/stylesheets/fonts.scss b/app/assets/stylesheets/fonts.scss new file mode 100644 index 000000000..2bfb8d222 --- /dev/null +++ b/app/assets/stylesheets/fonts.scss @@ -0,0 +1,73 @@ + +@font-face { + font-family: 'DeliciousBold'; + src: font-url('delicious-bold-webfont.eot'); + src: font-url('delicious-bold-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-bold-webfont.woff') format('woff'), + font-url('delicious-bold-webfont.ttf') format('truetype'), + font-url('delicious-bold-webfont.svg#DeliciousBold') format('svg'); + font-weight: normal; + font-style: normal; + +} + +@font-face { + font-family: 'DeliciousBoldItalic'; + src: font-url('delicious-bolditalic-webfont.eot'); + src: font-url('delicious-bolditalic-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-bolditalic-webfont.woff') format('woff'), + font-url('delicious-bolditalic-webfont.ttf') format('truetype'), + font-url('delicious-bolditalic-webfont.svg#DeliciousBoldItalic') format('svg'); + font-weight: normal; + font-style: normal; + +} + +@font-face { + font-family: 'DeliciousHeavyRegular'; + src: font-url('delicious-heavy-webfont.eot'); + src: font-url('delicious-heavy-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-heavy-webfont.woff') format('woff'), + font-url('delicious-heavy-webfont.ttf') format('truetype'), + font-url('delicious-heavy-webfont.svg#DeliciousHeavyRegular') format('svg'); + font-weight: normal; + font-style: normal; + +} + +@font-face { + font-family: 'DeliciousItalic'; + src: font-url('delicious-italic-webfont.eot'); + src: font-url('delicious-italic-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-italic-webfont.woff') format('woff'), + font-url('delicious-italic-webfont.ttf') format('truetype'), + font-url('delicious-italic-webfont.svg#DeliciousItalic') format('svg'); + font-weight: normal; + font-style: normal; + +} + +@font-face { + font-family: 'DeliciousRoman'; + src: font-url('delicious-roman-webfont.eot'); + src: font-url('delicious-roman-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-roman-webfont.woff') format('woff'), + font-url('delicious-roman-webfont.ttf') format('truetype'), + font-url('delicious-roman-webfont.svg#DeliciousRoman') format('svg'); + font-weight: normal; + font-style: normal; + +} + +@font-face { + font-family: 'DeliciousSmallCapsRegular'; + src: font-url('delicious-smallcaps-webfont.eot'); + src: font-url('delicious-smallcaps-webfont.eot?#iefix') format('embedded-opentype'), + font-url('delicious-smallcaps-webfont.woff') format('woff'), + font-url('delicious-smallcaps-webfont.ttf') format('truetype'), + font-url('delicious-smallcaps-webfont.svg#DeliciousSmallCapsRegular') format('svg'); + font-weight: normal; + font-style: normal; + +} + diff --git a/public/stylesheets/ie6.css b/app/assets/stylesheets/ie6.css index 5eff5fac9..5eff5fac9 100644 --- a/public/stylesheets/ie6.css +++ b/app/assets/stylesheets/ie6.css diff --git a/public/stylesheets/ie7.css b/app/assets/stylesheets/ie7.css index c6e8fe4f2..c6e8fe4f2 100644 --- a/public/stylesheets/ie7.css +++ b/app/assets/stylesheets/ie7.css diff --git a/public/stylesheets/admin-theme/jquery-ui-1.8.15.custom.css b/app/assets/stylesheets/jquery-ui-1.8.15.custom.css index ea0254a2b..386d854ff 100755 --- a/public/stylesheets/admin-theme/jquery-ui-1.8.15.custom.css +++ b/app/assets/stylesheets/jquery-ui-1.8.15.custom.css @@ -56,7 +56,7 @@ /* Component containers ----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: ; } +.ui-widget { font-family: Verdana,Arial,sans-serif; } .ui-widget .ui-widget { font-size: 1em; } .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } .ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } diff --git a/public/stylesheets/jquery.Jcrop.css b/app/assets/stylesheets/jquery.Jcrop.css index 24925dc94..24925dc94 100644 --- a/public/stylesheets/jquery.Jcrop.css +++ b/app/assets/stylesheets/jquery.Jcrop.css diff --git a/public/stylesheets/jquery.fancybox-1.3.4.css b/app/assets/stylesheets/jquery.fancybox-1.3.4.css index 6f53d8f4a..6f53d8f4a 100755 --- a/public/stylesheets/jquery.fancybox-1.3.4.css +++ b/app/assets/stylesheets/jquery.fancybox-1.3.4.css diff --git a/public/stylesheets/main.css b/app/assets/stylesheets/main.scss index 21d0735e0..625245cce 100644 --- a/public/stylesheets/main.css +++ b/app/assets/stylesheets/main.scss @@ -41,7 +41,7 @@ border-width:1px; } #navigation_search input#navigation_search_button { -background: url(/images/search-button.png) no-repeat center center; +background: image-url('search-button.png') no-repeat center center; width: 27px; height: 26px; color: transparent; @@ -252,7 +252,7 @@ padding:12px 0 0; .request_listing span.head /* full page request list only */ { min-height:32px; -background-image:url(../images/navimg/request-icon.png); +background-image:image-url('navimg/request-icon.png'); background-repeat:no-repeat; background-position:4px 0; margin:0 0 0.3em; @@ -261,7 +261,7 @@ padding:8px 0 0 42px; .body_listing span.head /* full page request list only */ { min-height:32px; -background-image:url(../images/navimg/auth-icon.png); +background-image:image-url('navimg/auth-icon.png'); background-repeat:no-repeat; background-position:4px 0; margin:0 0 0.3em; @@ -270,7 +270,7 @@ padding:8px 0 0 42px; .user_listing span.head /* full page request list only */ { min-height:32px; -background-image:url(../images/navimg/user-icon.png); +background-image:image-url('navimg/user-icon.png'); background-repeat:no-repeat; background-position:4px 0; margin:0 0 0.3em; @@ -305,46 +305,46 @@ padding:8px 0 10px 42px; } .icon_waiting_response,.icon_waiting_classification,.icon_waiting_clarification { -background-image:url(/images/status-pending.png); +background-image:image-url('status-pending.png'); color:#A68C2E; } .icon_rejected { -background-image:url(../images/navimg/status-icons-fail.png); +background-image:image-url('navimg/status-icons-fail.png'); } .icon_not_held, .icon_attention_requested { -background-image:url(/images/status-not-held.png); +background-image:image-url('status-not-held.png'); color:#A68C2E; } .icon_successful,.icon_partially_successful { -background-image:url(/images/status-complete.png); +background-image:image-url('status-complete.png'); color:#69952F; } .icon_requires_admin,.icon_waiting_response_overdue,.icon_waiting_response_very_overdue { -background-image:url(/images/status-overdue.png); +background-image:image-url('status-overdue.png'); color:#C1272D; } .icon_gone_postal { -background-image:url(/images/status-gone-postal.png); +background-image:image-url('status-gone-postal.png'); color:#A68C2E; } .icon_error_message { -background-image:url(/images/status-error.png); +background-image:image-url('status-error.png'); color:#C1272D; } .icon_internal_review { -background-image:url(/images/status-internal-review.png); +background-image:image-url('status-internal-review.png'); color:#A68C2E; } .icon_user_withdrawn { -background-image:url(/images/status-withdrawn.png); +background-image:image-url('status-withdrawn.png'); color:#A68C2E; } @@ -360,7 +360,7 @@ overflow:hidden; .request_listing span.desc /* full page request list only */ { width:25em; -background-image:url(../images/navimg/quote-open.png); +background-image:image-url('navimg/quote-open.png'); background-repeat:no-repeat; background-position:0 0; padding:8px 0 0 25px; @@ -1073,7 +1073,7 @@ padding-bottom:0; } .icon_failed,.icon_rejected { -background-image:url(/images/status-denied.png); +background-image:image-url('status-denied.png'); color:#C1272D; } @@ -1086,7 +1086,7 @@ padding:4px 0; } .request_listing span.desc { -background:url(/images/quote-marks.png) no-repeat; +background:image-url('quote-marks.png') no-repeat; min-height:60px; width:100%; color:#444; @@ -1280,7 +1280,7 @@ padding:5px; form input.use-datepicker[type=text] { width:130px !important; -background:url(/images/calendar.png) no-repeat 115px 3px; +background:image-url('calendar.png') no-repeat 115px 3px; border-radius:3px !important; -moz-border-radius:3px !important; font-size:1.1em !important; @@ -1298,7 +1298,7 @@ input[type="submit"]::-moz-focus-inner { form input[type=submit],a.link_button_green,a.link_button_green_large { color:#FFF; background-color: #8cc63f; /* fallback color if gradients are not supported */ -background-image: url(/images/button-gradient.png); +background-image: image-url('button-gradient.png'); background-image: -webkit-linear-gradient(top, #8cc63f, #6b9731); /* For Chrome and Safari */ background-image: -moz-linear-gradient(top, #8cc63f, #6b9731); /* For old Fx (3.6 to 15) */ background-image: -ms-linear-gradient(top, #8cc63f, #6b9731); /* For pre-releases of IE 10*/ @@ -1320,7 +1320,7 @@ padding:5px 6px; color:white; } a.link_button_green_large { -background-image: url(/images/button-gradient-large.png); +background-image: image-url('button-gradient-large.png'); background-image: -webkit-linear-gradient(top, #8cc63f, #6b9731); /* For Chrome and Safari */ background-image: -moz-linear-gradient(top, #8cc63f, #6b9731); /* For old Fx (3.6 to 15) */ background-image: -ms-linear-gradient(top, #8cc63f, #6b9731); /* For pre-releases of IE 10*/ @@ -1362,7 +1362,7 @@ line-height:180%; } div.frontpage-box { -background:url(/images/stripes.png); +background:image-url('stripes.png'); border:1px solid #DEBEDD; border-radius:5px; -moz-border-radius:5px; @@ -1398,7 +1398,7 @@ padding:5px 0; #frontpage_examples .excerpt { cursor:pointer; -background:url(/images/quote-marks.png) no-repeat; +background:image-url('quote-marks.png') no-repeat; color:#444; line-height:18px; min-height:30px; @@ -1407,7 +1407,7 @@ padding:0 0 0 40px; } #set_photo { -background:url(/images/defaultprofilepic.png); +background:image-url('defaultprofilepic.png'); } div.correspondence,div.comment_in_request { @@ -1441,7 +1441,7 @@ margin:0 0 0 10px; } #frontpage_splash { -background:url(/images/flying-computer.png) no-repeat 175px bottom; +background:image-url('flying-computer.png') no-repeat 175px bottom; height:375px; margin-top:-12px; margin-bottom:20px; @@ -1547,7 +1547,7 @@ color:#FFF; } #ui-datepicker-div .ui-icon-circle-triangle-w,#ui-datepicker-div .ui-icon-circle-triangle-e { -background-image:url(/images/ui-icons-theme.png); +background-image:image-url('ui-icons-theme.png'); } #ui-datepicker-div .ui-datepicker-prev-hover { @@ -1598,7 +1598,7 @@ display:inline-block; border-radius:2px; -moz-border-radius:2px; cursor:pointer; -background:url(/images/small-white-cross.png) no-repeat; +background:image-url('small-white-cross.png') no-repeat; width:15px; height:15px; border:solid 0 #FFF; @@ -1632,7 +1632,7 @@ display:inline-block; width:20px; letter-spacing:-1000em; overflow:hidden; -background:url(/images/link-icon.png) no-repeat; +background:image-url('link-icon.png') no-repeat; } #to_public_body { diff --git a/public/stylesheets/print.css b/app/assets/stylesheets/print.css index 6f29c18da..6f29c18da 100644 --- a/public/stylesheets/print.css +++ b/app/assets/stylesheets/print.css diff --git a/app/controllers/api_controller.rb b/app/controllers/api_controller.rb index e7bea67ef..00a3beebd 100644 --- a/app/controllers/api_controller.rb +++ b/app/controllers/api_controller.rb @@ -200,7 +200,7 @@ class ApiController < ApplicationController ]) end if feed_type == "atom" - render :template => "api/request_events.atom", :layout => false + render :template => "api/request_events", :formats => ['atom'], :layout => false elsif feed_type == "json" # For the JSON feed, we take a "since" parameter that allows the client # to restrict to events more recent than a certain other event diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index cbdffc441..161a82b26 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -138,7 +138,9 @@ class ApplicationController < ActionController::Base backtrace = Rails.backtrace_cleaner.clean(exception.backtrace, :silent) message << " " << backtrace.join("\n ") Rails.logger.fatal("#{message}\n\n") - ExceptionNotifier::Notifier.exception_notification(request.env, exception).deliver + if !AlaveteliConfiguration.exception_notifications_from.blank? && !AlaveteliConfiguration.exception_notifications_to.blank? + ExceptionNotifier::Notifier.exception_notification(request.env, exception).deliver + end @status = 500 end respond_to do |format| diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb index 841950cd5..d982bd391 100644 --- a/app/controllers/request_controller.rb +++ b/app/controllers/request_controller.rb @@ -958,8 +958,9 @@ class RequestController < ApplicationController end if !done file_info = { :filename => 'correspondence.txt', - :data => render_to_string(:template => 'request/show.text', - :layout => false) } + :data => render_to_string(:template => 'request/show', + :layout => false, + :formats => [:text]) } end file_info end diff --git a/app/controllers/track_controller.rb b/app/controllers/track_controller.rb index 72c092221..1123903f9 100644 --- a/app/controllers/track_controller.rb +++ b/app/controllers/track_controller.rb @@ -160,7 +160,10 @@ class TrackController < ApplicationController format.json { render :json => @xapian_object.results.map { |r| r[:model].json_for_api(true, lambda { |t| view_context.highlight_and_excerpt(t, @xapian_object.words_to_highlight, 150) } ) } } - format.any { render :template => 'track/atom_feed.atom', :layout => false, :content_type => 'application/atom+xml' } + format.any { render :template => 'track/atom_feed', + :formats => ['atom'], + :layout => false, + :content_type => 'application/atom+xml' } end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 0c346ab4e..4b603b064 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -54,16 +54,16 @@ module ApplicationHelper # Highlight words, also escapes HTML (other than spans that we add) def highlight_words(t, words, html = true) if html - highlight(h(t), words, '<span class="highlight">\1</span>').html_safe + highlight(h(t), words, :highlighter => '<span class="highlight">\1</span>').html_safe else - highlight(t, words, '*\1*') + highlight(t, words, :highlighter => '*\1*') end end def highlight_and_excerpt(t, words, excount, html = true) - newt = excerpt(t, words[0], excount) + newt = excerpt(t, words[0], :radius => excount) if not newt - newt = excerpt(t, '', excount) + newt = excerpt(t, '', :radius => excount) end t = newt t = highlight_words(t, words, html) diff --git a/app/models/foi_attachment.rb b/app/models/foi_attachment.rb index 914420a2b..acbfc8a34 100644 --- a/app/models/foi_attachment.rb +++ b/app/models/foi_attachment.rb @@ -69,7 +69,7 @@ class FoiAttachment < ActiveRecord::Base tries = 0 delay = 1 begin - binary_data = File.open(self.filepath, "rb" ).read + binary_data = File.open(self.filepath, "rb" ){ |file| file.read } if self.content_type =~ /^text/ @cached_body = convert_string_to_utf8_or_binary(binary_data, 'UTF-8') else diff --git a/app/models/incoming_message.rb b/app/models/incoming_message.rb index 8b2aa87e7..bcf0b6ec9 100644 --- a/app/models/incoming_message.rb +++ b/app/models/incoming_message.rb @@ -129,15 +129,15 @@ class IncomingMessage < ActiveRecord::Base if (!force.nil? || self.last_parsed.nil?) ActiveRecord::Base.transaction do self.extract_attachments! - self.sent_at = self.mail.date || self.created_at - self.subject = self.mail.subject - self.mail_from = MailHandler.get_from_name(self.mail) + write_attribute(:sent_at, self.mail.date || self.created_at) + write_attribute(:subject, self.mail.subject) + write_attribute(:mail_from, MailHandler.get_from_name(self.mail)) if self.from_email self.mail_from_domain = PublicBody.extract_domain_from_email(self.from_email) else self.mail_from_domain = "" end - self.valid_to_reply_to = self._calculate_valid_to_reply_to + write_attribute(:valid_to_reply_to, self._calculate_valid_to_reply_to) self.last_parsed = Time.now self.foi_attachments reload=true self.save! diff --git a/app/models/public_body.rb b/app/models/public_body.rb index d2cfc4b8b..8e474c797 100644 --- a/app/models/public_body.rb +++ b/app/models/public_body.rb @@ -199,7 +199,6 @@ class PublicBody < ActiveRecord::Base self.non_versioned_columns << 'info_requests_overdue_count' class Version - attr_accessor :created_at def last_edit_comment_for_html_display text = self.last_edit_comment.strip diff --git a/app/views/admin_public_body/_form.html.erb b/app/views/admin_public_body/_form.html.erb index c577d1e18..18bf1d15b 100644 --- a/app/views/admin_public_body/_form.html.erb +++ b/app/views/admin_public_body/_form.html.erb @@ -82,7 +82,7 @@ </div> </div> <div class="control-group"> - <label for="public_body_home_page"><%=_("Home page")%></label> + <label for="public_body_home_page" class="control-label"><%=_("Home page")%></label> <div class="controls"> <%= f.text_field :home_page, :class => "span4" %> <p class="help-block">(of whole authority, not just their FOI page; set to <strong>blank</strong> (empty string) to guess it from the email)</p> diff --git a/app/views/comment/_single_comment.html.erb b/app/views/comment/_single_comment.html.erb index af1de0649..d2edc8dbe 100644 --- a/app/views/comment/_single_comment.html.erb +++ b/app/views/comment/_single_comment.html.erb @@ -11,7 +11,7 @@ </h2> <div class="comment_in_request_text"> <p> - <img class="comment_quote" src="/images/quote-marks.png" alt=""> + <%= image_tag "quote-marks.png", :class => "comment_quote" %> <%= comment.get_body_for_html_display %> </p> </div> diff --git a/app/views/general/_footer.html.erb b/app/views/general/_footer.html.erb index 990093694..04c60be3d 100644 --- a/app/views/general/_footer.html.erb +++ b/app/views/general/_footer.html.erb @@ -1,6 +1,6 @@ <div id="footer"> <%= link_to _("Contact {{site_name}}", :site_name => site_name), help_contact_path %> -| <img src="/images/twitter-16.png" alt="twitter icon" class="twitter-icon"> <a href="https://twitter.com/<%= AlaveteliConfiguration::twitter_username %>"><%= _("Follow us on twitter") %></a> +| <%= image_tag "twitter-16.png", :alt => "twitter icon", :class => "twitter-icon" %> <a href="https://twitter.com/<%= AlaveteliConfiguration::twitter_username %>"><%= _("Follow us on twitter") %></a> <%= render :partial => 'general/credits' %> </div> <div class="after-footer"> </div> diff --git a/app/views/general/_frontpage_requests_list.html.erb b/app/views/general/_frontpage_requests_list.html.erb index 41a875cab..d7d9184c4 100644 --- a/app/views/general/_frontpage_requests_list.html.erb +++ b/app/views/general/_frontpage_requests_list.html.erb @@ -22,7 +22,7 @@ <%=link_to h(event.info_request.title), request_path(event.info_request)%> <%= _('{{length_of_time}} ago', :length_of_time => time_ago_in_words(event.described_at)) %> - <p class="excerpt" onclick="document.location.href='<%=request_path(event.info_request)%>'"><%= excerpt(event.search_text_main(true), "", 200) %></p> + <p class="excerpt" onclick="document.location.href='<%=request_path(event.info_request)%>'"><%= excerpt(event.search_text_main(true), "", :radius => 200) %></p> </li> <% end %> </ul> diff --git a/app/views/general/_header.html.erb b/app/views/general/_header.html.erb new file mode 100644 index 000000000..55bf719e2 --- /dev/null +++ b/app/views/general/_header.html.erb @@ -0,0 +1,37 @@ +<div id="banner"> + <div id="banner_inner"> + <div class="lang"><%= render :partial => 'general/locale_switcher' %></div> + + <% if not (controller.action_name == 'signin' or controller.action_name == 'signup') %> + <div id="logged_in_bar"> + <% if @user %> + <%= _('Hello, {{username}}!', :username => h(@user.name))%> + + <% if @user %> + <%=link_to _("My requests"), show_user_requests_path(:url_name => @user.url_name) %> + <%=link_to _("My profile"), show_user_profile_path(:url_name => @user.url_name) %> + <%=link_to _("My wall"), show_user_wall_path(:url_name => @user.url_name) %> + <% end %> + + + <%= link_to _("Sign out"), signout_path(:r => request.fullpath) %> + <% else %> + <%= link_to _("Sign in or sign up"), signin_path(:r => request.fullpath) %> + <% end %> + </div> + <% end %> + + <div id="navigation_search"> + <form id="navigation_search_form" method="post" action="<%= search_redirect_path %>"> + <p> + <%= text_field_tag 'query', params[:query], { :size => 40, :id => "navigation_search_query", :title => "type your search term here" } %> + <input id="navigation_search_button" type="submit" value="search"> + </p> + </form> + </div> + + <%= render :partial => 'general/orglink' %> + + <%= render :partial => 'general/topnav' %> + </div> +</div> diff --git a/app/views/general/_stylesheet_includes.html.erb b/app/views/general/_stylesheet_includes.html.erb index 416ddb825..b3f32054c 100644 --- a/app/views/general/_stylesheet_includes.html.erb +++ b/app/views/general/_stylesheet_includes.html.erb @@ -1,23 +1,22 @@ <%- if @render_to_file %> <style> - <%= raw File.read(Rails.root.join('public', 'stylesheets', 'main.css')) %> - <%= raw File.read(Rails.root.join('public', 'stylesheets', 'print.css')) %> + <%= Rails.application.assets["main.css"].to_s %> + <%= Rails.application.assets["print.css"].to_s %> </style> <%- else %> - <%= stylesheet_link_tag 'main', :title => "Main", :rel => "stylesheet", :media => "all" %> + <%= stylesheet_link_tag 'application', :title => "Main", :rel => "stylesheet", :media => "all" %> <%= stylesheet_link_tag 'fonts', :rel => "stylesheet", :media => "all" %> <%= stylesheet_link_tag 'print', :rel => "stylesheet", :media => "print" %> <% if !params[:print_stylesheet].nil? %> <%= stylesheet_link_tag 'print', :rel => "stylesheet", :media => "all" %> <% end %> - <%= stylesheet_link_tag 'admin-theme/jquery-ui-1.8.15.custom.css', :rel => 'stylesheet'%> <!--[if LT IE 7]> - <style type="text/css">@import url("/stylesheets/ie6.css");</style> + <%= stylesheet_link_tag 'ie6.css' %> <![endif]--> <!--[if LT IE 8]> - <style type="text/css">@import url("/stylesheets/ie7.css");</style> + <%= stylesheet_link_tag 'ie7.css' %> <![endif]--> <% if AlaveteliConfiguration::force_registration_on_new_request %> - <%= stylesheet_link_tag 'jquery.fancybox-1.3.4', :rel => "stylesheet" %> + <%= stylesheet_link_tag 'jquery.fancybox-1.3.4.pack.js', :rel => "stylesheet" %> <% end %> <% end %> diff --git a/app/views/general/blog.html.erb b/app/views/general/blog.html.erb index ef587421e..b81989ca8 100644 --- a/app/views/general/blog.html.erb +++ b/app/views/general/blog.html.erb @@ -4,8 +4,8 @@ <div id="right_column"> <div class="act_link"> <h2><%= _("Stay up to date") %></h2> - <img src="/images/twitter-16.png" alt="twitter icon" class="twitter-icon"> <a href="https://twitter.com/<%= @twitter_user %>"><%= _("Follow us on twitter") %></a><br/><br/> - <img src="/images/feed-16.png" alt="RSS icon"> <a href="<%= @feed_url %>"><%= _("Subscribe to blog") %></a> + <%= image_tag "twitter-16.png", :alt => "twitter icon", :class => "twitter-icon" %> <a href="https://twitter.com/<%= @twitter_user %>"><%= _("Follow us on twitter") %></a><br/><br/> + <%= image_tag "feed-16.png", :alt => "RSS icon" %> <a href="<%= @feed_url %>"><%= _("Subscribe to blog") %></a> </div> <% if AlaveteliConfiguration::twitter_widget_id %> <div id="twitter"> diff --git a/app/views/help/api.html.erb b/app/views/help/api.html.erb index 57390d65a..df7bb30b6 100644 --- a/app/views/help/api.html.erb +++ b/app/views/help/api.html.erb @@ -36,7 +36,7 @@ use to get updates and links in XML format. Find the URL of the Atom feed in one of these ways: <ul> - <li>Look for the <img src="/images/feed-16.png" alt=""> RSS feed links.</li> + <li>Look for the <%= image_tag "feed-16.png", :alt => "RSS icon" %> RSS feed links.</li> <li>Examine the <code><link rel="alternate" type="application/atom+xml"></code> tag in the head of the HTML. </li> <li>Add <code>/feed</code> to the start of another URL. </ul> diff --git a/app/views/layouts/admin.html.erb b/app/views/layouts/admin.html.erb index 7722efad4..c1f9335b1 100644 --- a/app/views/layouts/admin.html.erb +++ b/app/views/layouts/admin.html.erb @@ -4,9 +4,8 @@ <meta http-equiv="content-type" content="text/html;charset=UTF-8" > <title><%= site_name %> admin<%= @title ? ":" : "" %> <%=@title%></title> - <%= javascript_include_tag '/javascripts/jquery.js', '/admin/javascripts/jquery-ui.min.js', '/admin/javascripts/bootstrap-collapse', '/admin/javascripts/bootstrap-tab', '/admin/javascripts/admin', '/javascripts/jquery_ujs' %> - <%= stylesheet_link_tag 'admin-theme/jquery-ui-1.8.15.custom.css', :rel => 'stylesheet'%> - <%= stylesheet_link_tag "/admin/stylesheets/admin", :title => "Main", :rel => "stylesheet" %> + <%= javascript_include_tag "admin" %> + <%= stylesheet_link_tag "admin", :title => "Main", :rel => "stylesheet" %> </head> <body class="admin"> diff --git a/app/views/layouts/default.html.erb b/app/views/layouts/default.html.erb index 5895becf7..8d69b2a08 100644 --- a/app/views/layouts/default.html.erb +++ b/app/views/layouts/default.html.erb @@ -14,14 +14,13 @@ <%= render :partial => 'general/stylesheet_includes' %> <% if is_admin? %> - <%= stylesheet_link_tag "/admin/stylesheets/admin", :title => "Main", :rel => "stylesheet" %> + <%= stylesheet_link_tag "admin", :title => "Main", :rel => "stylesheet" %> <% end %> - <%= javascript_include_tag 'jquery.js', 'jquery-ui.min','jquery.cookie.js', 'general.js' %> + <%= javascript_include_tag "application" %> <% if @profile_photo_javascript %> - <script type="text/javascript" src="/javascripts/jquery.Jcrop.js"></script> - <script type="text/javascript" src="/javascripts/profile_photo.js"></script> - <link rel="stylesheet" href="/stylesheets/jquery.Jcrop.css" type="text/css" > + <%= javascript_include_tag "profile-photos" %> + <%= stylesheet_link_tag "jquery.Jcrop.css" %> <% end %> <% if @feed_autodetect %> @@ -44,7 +43,7 @@ </head> <body class="<%= 'front' if params[:action] == 'frontpage' %>"> <% if AlaveteliConfiguration::force_registration_on_new_request && !@user %> - <%= javascript_include_tag 'jquery.fancybox-1.3.4.pack' %> + <%= javascript_include_tag 'jquery.fancybox-1.3.4.pack.js' %> <script type="text/javascript"> $(document).ready(function() { $("#make-request-link").fancybox({ @@ -77,43 +76,7 @@ <% end %> <div class="entirebody"> - <div id="banner"> - <div id="banner_inner"> - <div class="lang"><%= render :partial => 'general/locale_switcher' %></div> - - <% if not (controller.action_name == 'signin' or controller.action_name == 'signup') %> - <div id="logged_in_bar"> - <% if @user %> - <%= _('Hello, {{username}}!', :username => h(@user.name))%> - - <% if @user %> - <%=link_to _("My requests"), show_user_requests_path(:url_name => @user.url_name) %> - <%=link_to _("My profile"), show_user_profile_path(:url_name => @user.url_name) %> - <%=link_to _("My wall"), show_user_wall_path(:url_name => @user.url_name) %> - <% end %> - - - <%= link_to _("Sign out"), signout_path(:r => request.fullpath) %> - <% else %> - <%= link_to _("Sign in or sign up"), signin_path(:r => request.fullpath) %> - <% end %> - </div> - <% end %> - - <div id="navigation_search"> - <form id="navigation_search_form" method="post" action="<%= search_redirect_path %>"> - <p> - <%= text_field_tag 'query', params[:query], { :size => 40, :id => "navigation_search_query", :title => "type your search term here" } %> - <input id="navigation_search_button" type="submit" value="search"> - </p> - </form> - </div> - - <%= render :partial => 'general/orglink' %> - - <%= render :partial => 'general/topnav' %> - </div> - </div> + <%= render :partial => 'general/header' %> <div id="wrapper"> <div id="content"> <% if flash[:notice] %> diff --git a/app/views/layouts/no_chrome.html.erb b/app/views/layouts/no_chrome.html.erb index d7918cffc..589e1bb76 100644 --- a/app/views/layouts/no_chrome.html.erb +++ b/app/views/layouts/no_chrome.html.erb @@ -10,15 +10,14 @@ <% end %> </title> - <script type="text/javascript" src="/javascripts/jquery.js"></script> + <%= javascript_include_tag "application" %> - <%= stylesheet_link_tag 'main', :title => "Main", :rel => "stylesheet" %> + <%= stylesheet_link_tag 'application', :title => "Main", :rel => "stylesheet" %> <%= stylesheet_link_tag 'fonts', :rel => "stylesheet" %> <%= stylesheet_link_tag 'theme', :rel => "stylesheet" %> <!--[if LT IE 7]> - <style type="text/css">@import url("/stylesheets/ie6.css");</style> + <%= stylesheet_link_tag 'ie6', :rel => "stylesheet" %> <![endif]--> - <%= stylesheet_link_tag 'custom', :title => "Main", :rel => "stylesheet" %> </head> <body> <div class="entirebody"> diff --git a/app/views/public_body/statistics.html.erb b/app/views/public_body/statistics.html.erb index 6ea253260..d935a9e47 100644 --- a/app/views/public_body/statistics.html.erb +++ b/app/views/public_body/statistics.html.erb @@ -69,7 +69,7 @@ are due to him.") %></p> <script type="text/javascript"> var graphs_data = <%= @graph_list.to_json.html_safe %>; </script> -<!--[if lte IE 8]><%= javascript_include_tag 'excanvas.min.js' %><![endif]--> -<%= javascript_include_tag 'jquery.flot.min.js', 'jquery.flot.errorbars.min.js', 'jquery.flot.tickrotor.min.js', 'jquery.flot.axislabels.min.js', 'stats-graphs.js' %> +<!--[if lte IE 8]><%= javascript_include_tag "excanvas.min.js" %><![endif]--> +<%= javascript_include_tag "stats" %> </div> diff --git a/app/views/request/_bubble.html.erb b/app/views/request/_bubble.html.erb index 94498612a..8827d114d 100644 --- a/app/views/request/_bubble.html.erb +++ b/app/views/request/_bubble.html.erb @@ -13,11 +13,11 @@ :file_name => a.display_filename + '.html') %> <% img_filename = "icon_" + a.content_type.sub('/', '_') + "_large.png" - full_filename = File.expand_path(File.join(File.dirname(__FILE__), "../../../public/images", img_filename)) + full_filename = File.expand_path(File.join(File.dirname(__FILE__), "../../assets/images", img_filename)) if File.exist?(full_filename) %> - <a href="<%=attachment_path%>"><img class="attachment_image" alt="Attachment" src="/images/<%=img_filename%>"></a> + <%= link_to image_tag(img_filename, :class => "attachment_image", :alt => "Attachment"), attachment_path %> <% else %> - <a href="<%=attachment_path%>"><img class="attachment_image" alt="Attachment" src="/images/icon_unknown.png"></a> + <%= link_to image_tag("icon_unknown.png", :class => "attachment_image", :alt => "Attachment"), attachment_path %> <% end %> <strong><%= h a.display_filename %></strong> <br> diff --git a/app/views/request/_incoming_correspondence.text.erb b/app/views/request/_incoming_correspondence.text.erb index 33ddad926..c5e648d28 100644 --- a/app/views/request/_incoming_correspondence.text.erb +++ b/app/views/request/_incoming_correspondence.text.erb @@ -1,5 +1,5 @@ <%- if not incoming_message.user_can_view?(@user) %> - <%= render :partial => 'request/hidden_correspondence.text', :locals => { :message => incoming_message }%> + <%= render :partial => 'request/hidden_correspondence', :formats => 'text', :locals => { :message => incoming_message }%> <%- else %> <%= _('From:') %><% if incoming_message.specific_from_name? %> <%= incoming_message.safe_mail_from %><% end %><% if incoming_message.from_public_body? %>, <%= @info_request.public_body.name %><% end %> <%= _('To:') %> <% if @info_request.user_name %><%= @info_request.user_name %><% else %><%= "[#{_('An anonymous user')}]"%><% end %> diff --git a/app/views/request/_outgoing_correspondence.text.erb b/app/views/request/_outgoing_correspondence.text.erb index 80c71cc01..5375ef81b 100644 --- a/app/views/request/_outgoing_correspondence.text.erb +++ b/app/views/request/_outgoing_correspondence.text.erb @@ -1,5 +1,5 @@ <%- if not outgoing_message.user_can_view?(@user) %> - <%= render :partial => 'request/hidden_correspondence.text', :locals => { :message => outgoing_message }%> + <%= render :partial => 'request/hidden_correspondence', :formats => 'text', :locals => { :message => outgoing_message }%> <%- else %> <%= _('From:') %> <% if @info_request.user_name %><%= @info_request.user_name %><% else %><%= "[#{_('An anonymous user')}]"%><% end %> <%= _('To:') %> <%= @info_request.public_body.name %> diff --git a/app/views/request/_request_listing_single.html.erb b/app/views/request/_request_listing_single.html.erb index 56737fd3e..50f889d75 100644 --- a/app/views/request/_request_listing_single.html.erb +++ b/app/views/request/_request_listing_single.html.erb @@ -1,9 +1,9 @@ <div class="request_listing"> - <span class="head"> - <%= link_to h(info_request.title), (@play_urls ? categorise_request_path(:url_title => info_request.url_title) : request_path(info_request)) %> - </span> - <span class="desc"> - <%= excerpt(info_request.initial_request_text, "", 150) %> + <span class="head"> + <%= link_to h(info_request.title), (@play_urls ? categorise_request_path(:url_title => info_request.url_title) : request_path(info_request)) %> + </span> + <span class="desc"> + <%= excerpt(info_request.initial_request_text, "", :radius => 150) %> </span> <span class="bottomline icon_<%= info_request.calculate_status %>"> <strong> diff --git a/app/views/request/_view_html_prefix.html.erb b/app/views/request/_view_html_prefix.html.erb index 3a9946745..63caa98d4 100644 --- a/app/views/request/_view_html_prefix.html.erb +++ b/app/views/request/_view_html_prefix.html.erb @@ -1,6 +1,6 @@ <div class="view_html_prefix"> <div class="view_html_logo"> - <a href="/"><img src="/images/navimg/logo-trans-small.png" alt="<%= site_name %>"></a> + <a href="/"><%= image_tag "navimg/logo-trans-small.png", :alt => site_name %></a> </div> <div class="view_html_download_link"> <%=link_to _("Download original attachment"), @attachment_url %> diff --git a/app/views/request/new.html.erb b/app/views/request/new.html.erb index f8b97ffe3..849a94216 100644 --- a/app/views/request/new.html.erb +++ b/app/views/request/new.html.erb @@ -1,4 +1,3 @@ -<script type="text/javascript" src="/javascripts/ba-throttle-debounce.js"></script> <script type="text/javascript"> $(document).ready(function(){ // Avoid triggering too often (on each keystroke) by using the debounce jQuery plugin: diff --git a/app/views/request/select_authority.html.erb b/app/views/request/select_authority.html.erb index 75c51fc57..4f117ee75 100644 --- a/app/views/request/select_authority.html.erb +++ b/app/views/request/select_authority.html.erb @@ -1,4 +1,3 @@ -<script type="text/javascript" src="/javascripts/ba-throttle-debounce.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#authority_preview").hide(); diff --git a/app/views/request/show.text.erb b/app/views/request/show.text.erb index 29ac2987f..8079d10d5 100644 --- a/app/views/request/show.text.erb +++ b/app/views/request/show.text.erb @@ -4,13 +4,13 @@ <% if info_request_event.visible %> <% case info_request_event.event_type %> <% when 'response' %> - <%= render :partial => 'request/incoming_correspondence.text', :locals => { :incoming_message => info_request_event.incoming_message } %> + <%= render :partial => 'request/incoming_correspondence', :formats => 'text', :locals => { :incoming_message => info_request_event.incoming_message } %> <% when 'sent', 'followup_sent' %> - <%= render :partial => 'request/outgoing_correspondence.text', :locals => { :outgoing_message => info_request_event.outgoing_message, :info_request_event => info_request_event }%> + <%= render :partial => 'request/outgoing_correspondence', :formats => 'text', :locals => { :outgoing_message => info_request_event.outgoing_message, :info_request_event => info_request_event }%> <% when 'resent', 'followup_resent' %> - <%= render :partial => 'request/resent_outgoing_correspondence.text', :locals => { outgoing_message => info_request_event.outgoing_message, :info_request_event => info_request_event }%> + <%= render :partial => 'request/resent_outgoing_correspondence', :formats => 'text', :locals => { outgoing_message => info_request_event.outgoing_message, :info_request_event => info_request_event }%> <% when 'comment' %> - <%= render :partial => 'comment/single_comment.text', :locals => { :comment => info_request_event.comment } %> + <%= render :partial => 'comment/single_comment', :formats => 'text', :locals => { :comment => info_request_event.comment } %> <% end %> ------------------------------- <% end %> diff --git a/app/views/track/_tracking_links.html.erb b/app/views/track/_tracking_links.html.erb index a16dbc78f..a3cd8fc60 100644 --- a/app/views/track/_tracking_links.html.erb +++ b/app/views/track/_tracking_links.html.erb @@ -21,7 +21,7 @@ </div> <div class="feed_link feed_link_<%=location%>"> - <%= link_to '<img src="/images/feed-16.png" alt="">'.html_safe, do_track_path(track_thing, 'feed') %> + <%= link_to image_tag('feed-16.png', :alt => "RSS icon"), do_track_path(track_thing, 'feed') %> <%= link_to (location == 'sidebar' ? _('RSS feed of updates') : _('RSS feed')), do_track_path(track_thing, 'feed') %> </div> <% end %> diff --git a/app/views/track/atom_feed.atom.erb b/app/views/track/atom_feed.atom.erb index a12b9eff0..be9c39e72 100644 --- a/app/views/track/atom_feed.atom.erb +++ b/app/views/track/atom_feed.atom.erb @@ -9,7 +9,7 @@ # Get the HTML content from the same partial template as website search does content = '' if result[:model].class.to_s == 'InfoRequestEvent' - content += render :partial => 'request/request_listing_via_event.html', :locals => { :event => result[:model], :info_request => result[:model].info_request } + content += render :partial => 'request/request_listing_via_event', :formats => ['html'], :locals => { :event => result[:model], :info_request => result[:model].info_request } else content = "<p><strong>Unknown search result type " + result[:model].class.to_s + "</strong></p>" end diff --git a/app/views/user/_show_user_info.html.erb b/app/views/user/_show_user_info.html.erb index 305300236..9182f0733 100644 --- a/app/views/user/_show_user_info.html.erb +++ b/app/views/user/_show_user_info.html.erb @@ -1,7 +1,7 @@ <% if !@display_user.get_about_me_for_html_display.empty? || @is_you %> <div class="user_about_me"> - <img class="comment_quote" src="/images/quote-marks.png" alt=""> + <%= image_tag "quote-marks.png", :class => "comment_quote" %> <%= @display_user.get_about_me_for_html_display %> <% if @is_you %> (<%= link_to _("edit text about you"), set_profile_about_me_path %>) diff --git a/config/application.rb b/config/application.rb index 245a60782..dba3a0c57 100644 --- a/config/application.rb +++ b/config/application.rb @@ -6,7 +6,7 @@ require File.dirname(__FILE__) + '/../lib/configuration' # If you have a Gemfile, require the gems listed there, including any gems # you've limited to :test, :development, or :production. -Bundler.require(:default, Rails.env) if defined?(Bundler) +Bundler.require(:default, :assets, Rails.env) if defined?(Bundler) module Alaveteli class Application < Rails::Application @@ -31,6 +31,7 @@ module Alaveteli # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] # config.i18n.default_locale = :de + I18n.config.enforce_available_locales = false # JavaScript files you want as :defaults (application.js is always included). # config.action_view.javascript_expansions[:defaults] = %w(jquery rails) @@ -75,5 +76,31 @@ module Alaveteli # Insert a bit of middleware code to prevent uneeded cookie setting. require "#{Rails.root}/lib/whatdotheyknow/strip_empty_sessions" config.middleware.insert_before ::ActionDispatch::Cookies, WhatDoTheyKnow::StripEmptySessions, :key => '_wdtk_cookie_session', :path => "/", :httponly => true + + # Enable the asset pipeline + config.assets.enabled = true + + # Version of your assets, change this if you want to expire all your assets + config.assets.version = '1.0' + + # Change the path that assets are served from + # config.assets.prefix = "/assets" + + # These additional precompiled Javascript files are actually + # manifests that require the real javascript files: + config.assets.precompile += ['admin.js', + 'profile-photos.js', + 'stats.js'] + # ... while these are individual files that can't easily be + # grouped: + config.assets.precompile += ['jquery.fancybox-1.3.4.pack.js', + 'jquery.Jcrop.css', + 'excanvas.min.js', + 'fonts.css', + 'print.css', + 'admin.css', + 'ie6.css', + 'ie7.css'] + end end diff --git a/config/deploy.rb b/config/deploy.rb index 8ab67bc98..a0189c855 100644 --- a/config/deploy.rb +++ b/config/deploy.rb @@ -58,7 +58,7 @@ namespace :deploy do "#{release_path}/public/favicon.ico" => "#{shared_path}/favicon.ico", "#{release_path}/files" => "#{shared_path}/files", "#{release_path}/cache" => "#{shared_path}/cache", - "#{release_path}/vendor/plugins/acts_as_xapian/xapiandbs" => "#{shared_path}/xapiandbs", + "#{release_path}/lib/acts_as_xapian/xapiandbs" => "#{shared_path}/xapiandbs", } # "ln -sf <a> <b>" creates a symbolic link but deletes <b> if it already exists diff --git a/config/environments/development.rb b/config/environments/development.rb index a912dd5de..dbf8d7b2a 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -32,4 +32,18 @@ Alaveteli::Application.configure do # Print deprecation notices to the Rails logger config.active_support.deprecation = :log + + # Do not compress assets + config.assets.compress = false + + # Expands the lines which load the assets + config.assets.debug = true + + # Raise exception on mass assignment protection for Active Record models + config.active_record.mass_assignment_sanitizer = :strict + + # Log the query plan for queries taking more than this (works + # with SQLite, MySQL, and PostgreSQL) + config.active_record.auto_explain_threshold_in_seconds = 0.5 + end diff --git a/config/environments/production.rb b/config/environments/production.rb index 0c1929366..a3e3cebd2 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -31,4 +31,21 @@ Alaveteli::Application.configure do if AlaveteliConfiguration::force_ssl config.middleware.insert_before ActionDispatch::Cookies, ::Rack::SSL end + + # Compress JavaScripts and CSS + config.assets.compress = true + + # Choose the compressors to use + # config.assets.js_compressor = :uglifier + # config.assets.css_compressor = :yui + + # Don't fallback to assets pipeline if a precompiled asset is missed + config.assets.compile = false + + # Generate digests for assets URLs. + config.assets.digest = true + + # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added) + # config.assets.precompile += %w( search.js ) + end diff --git a/config/environments/test.rb b/config/environments/test.rb index df39e8873..97c2d4f7c 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -24,4 +24,9 @@ Alaveteli::Application.configure do # Print deprecation notices to the stderr config.active_support.deprecation = :stderr + if !AlaveteliConfiguration.exception_notifications_from.blank? && !AlaveteliConfiguration.exception_notifications_to.blank? + middleware.use ExceptionNotifier, + :sender_address => AlaveteliConfiguration::exception_notifications_from, + :exception_recipients => AlaveteliConfiguration::exception_notifications_to + end end diff --git a/config/initializers/acts_as_xapian.rb b/config/initializers/acts_as_xapian.rb new file mode 100644 index 000000000..f82193c85 --- /dev/null +++ b/config/initializers/acts_as_xapian.rb @@ -0,0 +1,25 @@ +# acts_as_xapian/init.rb: +# +# Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved. +# Email: hello@mysociety.org; WWW: http://www.mysociety.org/ + +# We're moving plugins out of vendor/plugins, since keeping them there +# is deprecated as of Rails 3.2, and the xapiandbs directory should be +# moved out of there along with the plugin itself. + +old_xapiandbs_path = Rails.root.join('vendor', + 'plugins', + 'acts_as_xapian', + 'xapiandbs') + +current_xapiandbs_path = Rails.root.join('lib', + 'acts_as_xapian', + 'xapiandbs') + +if File.exists? old_xapiandbs_path + unless File.exists? current_xapiandbs_path + File.rename old_xapiandbs_path, current_xapiandbs_path + end +end + +require 'acts_as_xapian/acts_as_xapian' diff --git a/config/initializers/has_tag_string.rb b/config/initializers/has_tag_string.rb new file mode 100644 index 000000000..5fa33cc70 --- /dev/null +++ b/config/initializers/has_tag_string.rb @@ -0,0 +1,2 @@ +require 'has_tag_string/has_tag_string' + diff --git a/config/initializers/strip_attributes.rb b/config/initializers/strip_attributes.rb new file mode 100644 index 000000000..25f70b2f3 --- /dev/null +++ b/config/initializers/strip_attributes.rb @@ -0,0 +1,2 @@ +require 'strip_attributes/strip_attributes' +ActiveRecord::Base.extend(StripAttributes) diff --git a/config/initializers/theme_loader.rb b/config/initializers/theme_loader.rb index b3ae11e1e..9c79e513c 100644 --- a/config/initializers/theme_loader.rb +++ b/config/initializers/theme_loader.rb @@ -3,7 +3,9 @@ $alaveteli_route_extensions = [] def require_theme(theme_name) - theme_main_include = File.expand_path "../../../vendor/plugins/#{theme_name}/lib/alavetelitheme.rb", __FILE__ + theme_lib = Rails.root.join 'lib', 'themes', theme_name, 'lib' + $LOAD_PATH.unshift theme_lib.to_s + theme_main_include = Rails.root.join theme_lib, "alavetelitheme.rb" if File.exists? theme_main_include require theme_main_include end diff --git a/config/test.yml b/config/test.yml index b26ca99d4..599e1e81a 100644 --- a/config/test.yml +++ b/config/test.yml @@ -116,7 +116,7 @@ HTML_TO_PDF_COMMAND: /usr/local/bin/wkhtmltopdf-amd64 # Exception notifications EXCEPTION_NOTIFICATIONS_FROM: do-not-reply-to-this-address@example.com -EXCEPTION_NOTIFICATIONS_TO: +EXCEPTION_NOTIFICATIONS_TO: exception-recipient@example.com MAX_REQUESTS_PER_USER_PER_DAY: 2 diff --git a/doc/ADMIN.md b/doc/ADMIN.md deleted file mode 100644 index 6248e6cfc..000000000 --- a/doc/ADMIN.md +++ /dev/null @@ -1,19 +0,0 @@ -Doing development work on the administration interface -====================================================== - -The Alaveteli admin interface uses Twitter's Bootstrap project to prettify it. - -If you want to work on the CSS, you'll want to use -[bootstrap-sass](https://github.com/thomas-mcdonald/bootstrap-sass). Do something like: - - - $ gem install bootstrap-sass - $ gem install compass - $ compass compile --config .compass/config.rb - -To change the JavaScript, edit `public/admin/javascripts/admin.coffee` -and then run: - - $ coffee -c public/admin/javascripts/admin.coffee - -That will update `public/admin/javascripts/admin.js`.
\ No newline at end of file diff --git a/doc/INSTALL.md b/doc/INSTALL.md index f39789936..3decb53a3 100644 --- a/doc/INSTALL.md +++ b/doc/INSTALL.md @@ -15,11 +15,10 @@ This creates an instance that runs in development mode, so we wouldn't recommend you use it for a production system without changing the configuration. -If you haven't used Amazon Web Services before, then you can get -a Micro instance which will be -[free for a year](http://aws.amazon.com/free/). You will find -that a micro instance isn't powerful enough for anything other -very basic testing of Alaveteli, however. +Unfortunately, Alaveteli will not run properly on a free Micro +instance due to the low amount of memory available on those +instances; you will need to use at least a Small instance, which +Amazon will charge for. The AMI can be found in the EU West (Ireland) region, with the ID ami-0f24c678 and name “Basic Alaveteli installation diff --git a/doc/THEME-ASSETS-UPGRADE.md b/doc/THEME-ASSETS-UPGRADE.md new file mode 100644 index 000000000..2c6e49986 --- /dev/null +++ b/doc/THEME-ASSETS-UPGRADE.md @@ -0,0 +1,74 @@ +This document has notes on switching your Alaveteli theme to use +the Rails asset pipeline. + +Firstly, add the following to your `lib/alavetelitheme.rb`, in +order to add the subdirectories of your theme's `assets` +directory to `config.assets.path`: + + # Prepend the asset directories in this theme to the asset path: + ['stylesheets', 'images', 'javascripts'].each do |asset_type| + theme_asset_path = File.join(File.dirname(__FILE__), + '..', + 'assets', + asset_type) + Rails.application.config.assets.paths.unshift theme_asset_path + end + +In the root of your theme, create these directories: + + assets + \ images + \ stylesheets + \ javascripts + +i.e. `assets` is at the same level as `lib` and `locale-theme`. + +Move any image files from `public/images` to `assets/images`. +Now change any references to those images with a literal `<img>` +tag to use `image_tag` instead. For example, instead of: + + <img src="/images/helpmeinvestigate.png" alt="" class="rss"> + +... you should have: + + image_tag('helpmeinvestigate.png', :alt => "", :class => "rss") + +You should similarly move your stylesheets into +`assets/stylesheets`. If a stylesheet refers to images, you +should rename the `.css` file to `.css.scss`, and change `url` +to the sass-rails `image-url` helper. e.g. instead of: + + background-image: url(../images/mysociety.png); + +... you should have: + + background-image: image-url('mysociety.png'); + +If your only stylesheet is called `custom.css`, as in the +example theme, you shouldn't need to make any other changes to +the CSS. If you have added additional stylesheets +(e.g. `extra.css`), then you'll need to both: + +1. add them to +`lib/views/general/_stylesheet_includes.html.erb`, for example +with: + + <%= stylesheet_link_tag "extra" %> + +2. add the following in `lib/alavetelitheme.rb`: + + config.assets.precompile.push 'extra.css' + +Any custom Javascript should be moved to `assets/javascripts` in +your theme directory, and, simlarly to the additional CSS, it +should be mentioned in `lib/alavetelitheme.rb` with: + + config.assets.precompile.push 'fancy-effects.js' + +You should be left with nothing in the `public` directory after +making these changes, except possibly custom error pages. + +Remove the code that symlinks the theme 'public' directory to a +subdirectory of the main application's 'public' directory from +install.rb. Also remove the code from uninstall.rb that removes that +symlink. The asset pipeline will handle making assets available. diff --git a/doc/TRANSLATE.md b/doc/TRANSLATE.md index 2a8b0269e..aef2cfdc9 100644 --- a/doc/TRANSLATE.md +++ b/doc/TRANSLATE.md @@ -79,7 +79,7 @@ must: language, using `bundle exec rake gettext:store_model_attributes`, followed by `bundle exec rake gettext:find` - * careful of including msgids from themes in `vendor/plugin`; + * careful of including msgids from themes in `lib/themes`; you might want to move them out of the way before running the above commands * this updates the PO template, but also merges it with the diff --git a/vendor/plugins/acts_as_xapian/.gitignore b/lib/acts_as_xapian/.gitignore index 60e95666f..60e95666f 100644 --- a/vendor/plugins/acts_as_xapian/.gitignore +++ b/lib/acts_as_xapian/.gitignore diff --git a/vendor/plugins/acts_as_xapian/LICENSE.txt b/lib/acts_as_xapian/LICENSE.txt index 72d93c4be..72d93c4be 100644 --- a/vendor/plugins/acts_as_xapian/LICENSE.txt +++ b/lib/acts_as_xapian/LICENSE.txt diff --git a/vendor/plugins/acts_as_xapian/README.txt b/lib/acts_as_xapian/README.txt index a1d22ef3f..a1d22ef3f 100644 --- a/vendor/plugins/acts_as_xapian/README.txt +++ b/lib/acts_as_xapian/README.txt diff --git a/vendor/plugins/acts_as_xapian/lib/acts_as_xapian.rb b/lib/acts_as_xapian/acts_as_xapian.rb index 2e486f328..b30bb4d10 100644 --- a/vendor/plugins/acts_as_xapian/lib/acts_as_xapian.rb +++ b/lib/acts_as_xapian/acts_as_xapian.rb @@ -100,7 +100,7 @@ module ActsAsXapian if config['base_db_path'] db_parent_path = Rails.root.join(config['base_db_path']) else - db_parent_path = File.join(File.dirname(__FILE__), '../xapiandbs/') + db_parent_path = File.join(File.dirname(__FILE__), 'xapiandbs') end # make the directory for the xapian databases to go in diff --git a/vendor/plugins/acts_as_xapian/lib/tasks/xapian.rake b/lib/acts_as_xapian/tasks/xapian.rake index c1986ce1e..c1986ce1e 100644 --- a/vendor/plugins/acts_as_xapian/lib/tasks/xapian.rake +++ b/lib/acts_as_xapian/tasks/xapian.rake diff --git a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/USAGE b/lib/generators/acts_as_xapian/USAGE index 2d027c46f..2d027c46f 100644 --- a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/USAGE +++ b/lib/generators/acts_as_xapian/USAGE diff --git a/lib/generators/acts_as_xapian/acts_as_xapian_generator.rb b/lib/generators/acts_as_xapian/acts_as_xapian_generator.rb new file mode 100644 index 000000000..434c02cb5 --- /dev/null +++ b/lib/generators/acts_as_xapian/acts_as_xapian_generator.rb @@ -0,0 +1,10 @@ +require 'rails/generators/active_record/migration' + +class ActsAsXapianGenerator < Rails::Generators::Base + include Rails::Generators::Migration + extend ActiveRecord::Generators::Migration + source_root File.expand_path("../templates", __FILE__) + def create_migration_file + migration_template "migration.rb", "db/migrate/add_acts_as_xapian_jobs.rb" + end +end diff --git a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/templates/migration.rb b/lib/generators/acts_as_xapian/templates/migration.rb index 84a9dd766..84a9dd766 100644 --- a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/templates/migration.rb +++ b/lib/generators/acts_as_xapian/templates/migration.rb diff --git a/vendor/plugins/has_tag_string/README.txt b/lib/has_tag_string/README.txt index 0d3a38229..0d3a38229 100644 --- a/vendor/plugins/has_tag_string/README.txt +++ b/lib/has_tag_string/README.txt diff --git a/vendor/plugins/has_tag_string/lib/has_tag_string.rb b/lib/has_tag_string/has_tag_string.rb index 4022faaac..4022faaac 100644 --- a/vendor/plugins/has_tag_string/lib/has_tag_string.rb +++ b/lib/has_tag_string/has_tag_string.rb diff --git a/lib/mail_handler/backends/mail_backend.rb b/lib/mail_handler/backends/mail_backend.rb index 28c486e1b..e019eba97 100644 --- a/lib/mail_handler/backends/mail_backend.rb +++ b/lib/mail_handler/backends/mail_backend.rb @@ -95,7 +95,7 @@ module MailHandler def get_from_address(mail) first_from = first_from(mail) if first_from - if first_from.is_a?(ActiveSupport::Multibyte::Chars) + if first_from.is_a?(String) return nil else return first_from.address @@ -109,7 +109,7 @@ module MailHandler def get_from_name(mail) first_from = first_from(mail) if first_from - if first_from.is_a?(ActiveSupport::Multibyte::Chars) + if first_from.is_a?(String) return nil else return (first_from.display_name || nil) diff --git a/lib/mail_handler/backends/mail_extensions.rb b/lib/mail_handler/backends/mail_extensions.rb index 029331802..87af526bf 100644 --- a/lib/mail_handler/backends/mail_extensions.rb +++ b/lib/mail_handler/backends/mail_extensions.rb @@ -7,54 +7,6 @@ module Mail attr_accessor :within_rfc822_attachment # for parts within a message attached as text (for getting subject mainly) attr_accessor :count_parts_count attr_accessor :count_first_uudecode_count - - # A patched version of the message initializer to work around a bug where stripping the original - # input removes meaningful spaces - e.g. in the case of uuencoded bodies. - def initialize(*args, &block) - @body = nil - @body_raw = nil - @separate_parts = false - @text_part = nil - @html_part = nil - @errors = nil - @header = nil - @charset = 'UTF-8' - @defaulted_charset = true - - @perform_deliveries = true - @raise_delivery_errors = true - - @delivery_handler = nil - - @delivery_method = Mail.delivery_method.dup - - @transport_encoding = Mail::Encodings.get_encoding('7bit') - - @mark_for_delete = false - - if args.flatten.first.respond_to?(:each_pair) - init_with_hash(args.flatten.first) - else - # The replacement of this commented out line is the change. - # init_with_string(args.flatten[0].to_s.strip) - init_with_string(args.flatten[0].to_s) - end - - if block_given? - instance_eval(&block) - end - - self - end - - def set_envelope_header - raw_string = raw_source.to_s - if match_data = raw_source.to_s.match(/\AFrom\s(#{TEXT}+)#{CRLF}/m) - set_envelope(match_data[1]) - self.raw_source = raw_string.sub(match_data[0], "") - end - end - end # A patched version of the parameter hash that handles nil values without throwing @@ -77,6 +29,7 @@ module Mail # HACK: Backport encoding fixes for Ruby 1.8 from Mail 2.5 # Can be removed when we no longer support Ruby 1.8 class Ruby18 + def Ruby18.b_value_decode(str) match = str.match(/\=\?(.+)?\?[Bb]\?(.+)?\?\=/m) if match @@ -129,11 +82,11 @@ module Mail def Ruby19.b_value_decode(str) match = str.match(/\=\?(.+)?\?[Bb]\?(.+)?\?\=/m) if match - encoding = match[1] + charset = match[1] str = Ruby19.decode_base64(match[2]) # Rescue an ArgumentError arising from an unknown encoding. begin - str.force_encoding(fix_encoding(encoding)) + str.force_encoding(pick_encoding(charset)) rescue ArgumentError end end @@ -141,18 +94,5 @@ module Mail decoded.valid_encoding? ? decoded : decoded.encode("utf-16le", :invalid => :replace, :replace => "").encode("utf-8") end - def Ruby19.q_value_decode(str) - match = str.match(/\=\?(.+)?\?[Qq]\?(.+)?\?\=/m) - if match - encoding = match[1] - str = Encodings::QuotedPrintable.decode(match[2].gsub(/_/, '=20')) - # Backport line from mail 2.5 to strip a trailing = character - # Remove trailing = if it exists in a Q encoding - str = str.sub(/\=$/, '') - str.force_encoding(fix_encoding(encoding)) - end - decoded = str.encode("utf-8", :invalid => :replace, :replace => "") - decoded.valid_encoding? ? decoded : decoded.encode("utf-16le", :invalid => :replace, :replace => "").encode("utf-8") - end end end diff --git a/lib/no_constraint_disabling.rb b/lib/no_constraint_disabling.rb index d515a959a..32a4a6bfe 100644 --- a/lib/no_constraint_disabling.rb +++ b/lib/no_constraint_disabling.rb @@ -47,7 +47,7 @@ module ActiveRecord connection, table_name, class_names[table_name.to_sym] || table_name.classify, - File.join(fixtures_directory, path)) + ::File.join(fixtures_directory, path)) end all_loaded_fixtures.update(fixtures_map) diff --git a/vendor/plugins/strip_attributes/README.rdoc b/lib/strip_attributes/README.rdoc index bd55c0c1c..bd55c0c1c 100644 --- a/vendor/plugins/strip_attributes/README.rdoc +++ b/lib/strip_attributes/README.rdoc diff --git a/vendor/plugins/strip_attributes/Rakefile b/lib/strip_attributes/Rakefile index 05b0c14ad..05b0c14ad 100644 --- a/vendor/plugins/strip_attributes/Rakefile +++ b/lib/strip_attributes/Rakefile diff --git a/vendor/plugins/strip_attributes/lib/strip_attributes.rb b/lib/strip_attributes/strip_attributes.rb index 130d10185..130d10185 100644 --- a/vendor/plugins/strip_attributes/lib/strip_attributes.rb +++ b/lib/strip_attributes/strip_attributes.rb diff --git a/vendor/plugins/strip_attributes/test/strip_attributes_test.rb b/lib/strip_attributes/test/strip_attributes_test.rb index 8158dc664..8158dc664 100644 --- a/vendor/plugins/strip_attributes/test/strip_attributes_test.rb +++ b/lib/strip_attributes/test/strip_attributes_test.rb diff --git a/vendor/plugins/strip_attributes/test/test_helper.rb b/lib/strip_attributes/test/test_helper.rb index 7d06c40db..7d06c40db 100644 --- a/vendor/plugins/strip_attributes/test/test_helper.rb +++ b/lib/strip_attributes/test/test_helper.rb diff --git a/lib/tasks/gettext.rake b/lib/tasks/gettext.rake index 366dfbe88..3f357213f 100644 --- a/lib/tasks/gettext.rake +++ b/lib/tasks/gettext.rake @@ -29,11 +29,11 @@ namespace :gettext do end def theme_files_to_translate(theme) - Dir.glob("{vendor/plugins/#{theme}/lib}/**/*.{rb,erb}") + Dir.glob("{lib/themes/#{theme}/lib}/**/*.{rb,erb}") end def theme_locale_path(theme) - File.join(Rails.root, "vendor", "plugins", theme, "locale-theme") + Rails.root.join "lib", "themes", theme, "locale-theme" end end diff --git a/lib/tasks/themes.rake b/lib/tasks/themes.rake index 1eed92f1e..65b142a63 100644 --- a/lib/tasks/themes.rake +++ b/lib/tasks/themes.rake @@ -2,13 +2,21 @@ namespace :themes do def plugin_dir - File.join(Rails.root,"vendor","plugins") + File.join(Rails.root,"lib","themes") end def theme_dir(theme_name) File.join(plugin_dir, theme_name) end + def old_theme_dir(theme_name) + File.join(Rails.root, "vendor", "plugins", theme_name) + end + + def possible_theme_dirs(theme_name) + [theme_dir(theme_name), old_theme_dir(theme_name)] + end + def checkout(commitish) puts "Checking out #{commitish}" if verbose system "git checkout #{commitish}" @@ -61,13 +69,14 @@ namespace :themes do end def uninstall(theme_name, verbose=false) - dir = theme_dir(theme_name) - if File.directory?(dir) - run_hook(theme_name, 'uninstall', verbose) - puts "Removing '#{dir}'" if verbose - rm_r dir - else - puts "Plugin doesn't exist: #{dir}" + possible_theme_dirs(theme_name).each do |dir| + if File.directory?(dir) + run_hook(theme_name, 'uninstall', verbose) + puts "Removing '#{dir}'" if verbose + rm_r dir + else + puts "Plugin doesn't exist: #{dir}" + end end end @@ -80,10 +89,11 @@ namespace :themes do end def installed?(theme_name) - File.directory?(theme_dir(theme_name)) + possible_theme_dirs(theme_name).any? { |dir| File.directory? dir } end def install_theme(theme_url, verbose, deprecated=false) + FileUtils.mkdir_p plugin_dir deprecation_string = deprecated ? " using deprecated THEME_URL" : "" theme_name = theme_url_to_theme_name theme_url puts "Installing theme #{theme_name}#{deprecation_string} from #{theme_url}" diff --git a/public/admin/javascripts/admin.js b/public/admin/javascripts/admin.js deleted file mode 100644 index 9daa51459..000000000 --- a/public/admin/javascripts/admin.js +++ /dev/null @@ -1,32 +0,0 @@ -(function() { - jQuery(function() { - $('.locales a:first').tab('show'); - $('.accordion-body').on('hidden', function() { - return $(this).prev().find('i').first().removeClass().addClass('icon-chevron-right'); - }); - $('.accordion-body').on('shown', function() { - return $(this).prev().find('i').first().removeClass().addClass('icon-chevron-down'); - }); - $('.toggle-hidden').live('click', function() { - $(this).parents('td').find('div:hidden').show(); - return false; - }); - return $('#request_hidden_user_explanation_reasons input').live('click', function() { - var info_request_id, reason; - $('#request_hidden_user_subject, #request_hidden_user_explanation, #request_hide_button').show(); - info_request_id = $('#hide_request_form').attr('data-info-request-id'); - reason = $(this).val(); - $('#request_hidden_user_explanation_field').attr("value", "[loading default text...]"); - return $.ajax("/hidden_user_explanation?reason=" + reason + "&info_request_id=" + info_request_id, { - type: "GET", - dataType: "text", - error: function(data, textStatus, jqXHR) { - return $('#request_hidden_user_explanation_field').attr("value", "Error: " + textStatus); - }, - success: function(data, textStatus, jqXHR) { - return $('#request_hidden_user_explanation_field').attr("value", data); - } - }); - }); - }); -}).call(this); diff --git a/public/admin/javascripts/jquery-ui.min.js b/public/admin/javascripts/jquery-ui.min.js deleted file mode 100644 index f00a62f13..000000000 --- a/public/admin/javascripts/jquery-ui.min.js +++ /dev/null @@ -1,356 +0,0 @@ -/*! - * jQuery UI 1.8.18 - * - * Copyright 2011, 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 - */(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",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;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);return/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){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)});return 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){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return 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)for(var e=0;e<d.length;e++)a.options[d[e][0]]&&d[e][1].apply(a.element,c)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden")return!1;var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;if(b[d]>0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a<b+c},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g)}}))})(jQuery);/*! - * jQuery UI Widget 1.8.18 - * - * Copyright 2011, 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/Widget - */(function(a,b){if(a.cleanData){var c=a.cleanData;a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++)try{a(e).triggerHandler("remove")}catch(f){}c(b)}}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}});return d.call(a(this),b,c)})}}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return!!a.data(c,b)},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b)};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b])},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e;if(f&&e.charAt(0)==="_")return h;f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b){h=f;return!1}}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this))});return h}},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b)},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()}),this._create(),this._trigger("create"),this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(c,d){var e=c;if(arguments.length===0)return a.extend({},this.options);if(typeof c=="string"){if(d===b)return this.options[c];e={},e[c]=d}this._setOptions(e);return this},_setOptions:function(b){var c=this;a.each(b,function(a,b){c._setOption(a,b)});return this},_setOption:function(a,b){this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b);return this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f)for(e in f)e in c||(c[e]=f[e]);this.element.trigger(c,d);return!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented())}}})(jQuery);/*! - * jQuery UI Mouse 1.8.18 - * - * Copyright 2011, 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/Mouse - * - * Depends: - * jquery.ui.widget.js - */(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent")){a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation();return!1}}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(b){if(!c){this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b))return!0;this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted){b.preventDefault();return!0}}!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a)},this._mouseUpDelegate=function(a){return d._mouseUp(a)},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0;return!0}},_mouseMove:function(b){if(a.browser.msie&&!(document.documentMode>=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){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));return!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 Position 1.8.18 - * - * Copyright 2011, 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/Position - */(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;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];return 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){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){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];if(!c||!c.ownerDocument)return null;if(b)return this.each(function(){a.offset.setOffset(this,b)});return 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 Draggable 1.8.18 - * - * Copyright 2011, 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/Draggables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */(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")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy();return this}},_mouseCapture:function(b){var c=this.options;if(this.helper||c.disabled||a(b.target).is(".ui-resizable-handle"))return!1;this.handle=this._getHandle(b);if(!this.handle)return!1;c.iframeFix&&a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(a(this).offset()).appendTo("body")});return!0},_mouseStart:function(b){var c=this.options;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();if(this._trigger("start",b)===!1){this._clear();return!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);return!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){this._mouseUp({});return!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";a.ui.ddmanager&&a.ui.ddmanager.drag(this,b);return!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){this.options.iframeFix===!0&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b);return a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?!0:!1;a(this.options.handle,this.element).find("*").andSelf().each(function(){this==b.target&&(c=!0)});return 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;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");return 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.left<h[0]&&(f=h[0]+this.offset.click.left),b.pageY-this.offset.click.top<h[1]&&(g=h[1]+this.offset.click.top),b.pageX-this.offset.click.left>h[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.top<h[1]||j-this.offset.click.top>h[3]?j-this.offset.click.top<h[1]?j+c.grid[1]:j-c.grid[1]:j:j;var k=c.grid[0]?this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0]:this.originalPageX;f=h?k-this.offset.click.left<h[0]||k-this.offset.click.left>h[2]?k-this.offset.click.left<h[0]?k+c.grid[0]:k-c.grid[0]:k:k}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(b,c,d){d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d]),b=="drag"&&(this.positionAbs=this._convertPositionTo("absolute"));return a.Widget.prototype._trigger.call(this,b,c,d)},plugins:{},_uiHash:function(a){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),a.extend(a.ui.draggable,{version:"1.8.18"}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c){var d=a(this).data("draggable"),e=d.options,f=a.extend({},c,{item:d.element});d.sortables=[],a(e.connectToSortable).each(function(){var c=a.data(this,"sortable");c&&!c.options.disabled&&(d.sortables.push({instance:c,shouldRevert:c.options.revert}),c.refreshPositions(),c._trigger("activate",b,f))})},stop:function(b,c){var d=a(this).data("draggable"),e=a.extend({},c,{item:d.element});a.each(d.sortables,function(){this.instance.isOver?(this.instance.isOver=0,d.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=!0),this.instance._mouseStop(b),this.instance.options.helper=this.instance.options._helper,d.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",b,e))})},drag:function(b,c){var d=a(this).data("draggable"),e=this,f=function(b){var c=this.offset.click.top,d=this.offset.click.left,e=this.positionAbs.top,f=this.positionAbs.left,g=b.height,h=b.width,i=b.top,j=b.left;return a.ui.isOver(e+c,f+d,i,j,g,h)};a.each(d.sortables,function(f){this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this.instance._intersectsWith(this.instance.containerCache)?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(e).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return c.helper[0]},b.target=this.instance.currentItem[0],this.instance._mouseCapture(b,!0),this.instance._mouseStart(b,!0,!0),this.instance.offset.click.top=d.offset.click.top,this.instance.offset.click.left=d.offset.click.left,this.instance.offset.parent.left-=d.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=d.offset.parent.top-this.instance.offset.parent.top,d._trigger("toSortable",b),d.dropped=this.instance.element,d.currentItem=d.element,this.instance.fromOutside=d),this.instance.currentItem&&this.instance._mouseDrag(b)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",b,this.instance._uiHash(this.instance)),this.instance._mouseStop(b,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),d._trigger("fromSortable",b),d.dropped=!1)})}}),a.ui.plugin.add("draggable","cursor",{start:function(b,c){var d=a("body"),e=a(this).data("draggable").options;d.css("cursor")&&(e._cursor=d.css("cursor")),d.css("cursor",e.cursor)},stop:function(b,c){var d=a(this).data("draggable").options;d._cursor&&a("body").css("cursor",d._cursor)}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;d.css("opacity")&&(e._opacity=d.css("opacity")),d.css("opacity",e.opacity)},stop:function(b,c){var d=a(this).data("draggable").options;d._opacity&&a(c.helper).css("opacity",d._opacity)}}),a.ui.plugin.add("draggable","scroll",{start:function(b,c){var d=a(this).data("draggable");d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"&&(d.overflowOffset=d.scrollParent.offset())},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=!1;if(d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"){if(!e.axis||e.axis!="x")d.overflowOffset.top+d.scrollParent[0].offsetHeight-b.pageY<e.scrollSensitivity?d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop+e.scrollSpeed:b.pageY-d.overflowOffset.top<e.scrollSensitivity&&(d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop-e.scrollSpeed);if(!e.axis||e.axis!="y")d.overflowOffset.left+d.scrollParent[0].offsetWidth-b.pageX<e.scrollSensitivity?d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft+e.scrollSpeed:b.pageX-d.overflowOffset.left<e.scrollSensitivity&&(d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft-e.scrollSpeed)}else{if(!e.axis||e.axis!="x")b.pageY-a(document).scrollTop()<e.scrollSensitivity?f=a(document).scrollTop(a(document).scrollTop()-e.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<e.scrollSensitivity&&(f=a(document).scrollTop(a(document).scrollTop()+e.scrollSpeed));if(!e.axis||e.axis!="y")b.pageX-a(document).scrollLeft()<e.scrollSensitivity?f=a(document).scrollLeft(a(document).scrollLeft()-e.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<e.scrollSensitivity&&(f=a(document).scrollLeft(a(document).scrollLeft()+e.scrollSpeed))}f!==!1&&a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(d,b)}}),a.ui.plugin.add("draggable","snap",{start:function(b,c){var d=a(this).data("draggable"),e=d.options;d.snapElements=[],a(e.snap.constructor!=String?e.snap.items||":data(draggable)":e.snap).each(function(){var b=a(this),c=b.offset();this!=d.element[0]&&d.snapElements.push({item:this,width:b.outerWidth(),height:b.outerHeight(),top:c.top,left:c.left})})},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=e.snapTolerance,g=c.offset.left,h=g+d.helperProportions.width,i=c.offset.top,j=i+d.helperProportions.height;for(var k=d.snapElements.length-1;k>=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<g&&g<m+f&&n-f<i&&i<o+f||l-f<g&&g<m+f&&n-f<j&&j<o+f||l-f<h&&h<m+f&&n-f<i&&i<o+f||l-f<h&&h<m+f&&n-f<j&&j<o+f)){d.snapElements[k].snapping&&d.options.snap.release&&d.options.snap.release.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=!1;continue}if(e.snapMode!="inner"){var p=Math.abs(n-j)<=f,q=Math.abs(o-i)<=f,r=Math.abs(l-h)<=f,s=Math.abs(m-g)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n-d.helperProportions.height,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l-d.helperProportions.width}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m}).left-d.margins.left)}var t=p||q||r||s;if(e.snapMode!="outer"){var p=Math.abs(n-i)<=f,q=Math.abs(o-j)<=f,r=Math.abs(l-g)<=f,s=Math.abs(m-h)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o-d.helperProportions.height,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m-d.helperProportions.width}).left-d.margins.left)}!d.snapElements[k].snapping&&(p||q||r||s||t)&&d.options.snap.snap&&d.options.snap.snap.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=p||q||r||s||t}}}),a.ui.plugin.add("draggable","stack",{start:function(b,c){var d=a(this).data("draggable").options,e=a.makeArray(a(d.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0)});if(!!e.length){var f=parseInt(e[0].style.zIndex)||0;a(e).each(function(a){this.style.zIndex=f+a}),this[0].style.zIndex=f+e.length}}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;d.css("zIndex")&&(e._zIndex=d.css("zIndex")),d.css("zIndex",e.zIndex)},stop:function(b,c){var d=a(this).data("draggable").options;d._zIndex&&a(c.helper).css("zIndex",d._zIndex)}})})(jQuery);/* - * jQuery UI Droppable 1.8.18 - * - * Copyright 2011, 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/Droppables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - * jquery.ui.mouse.js - * jquery.ui.draggable.js - */(function(a,b){a.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect"},_create:function(){var b=this.options,c=b.accept;this.isover=0,this.isout=1,this.accept=a.isFunction(c)?c:function(a){return a.is(c)},this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight},a.ui.ddmanager.droppables[b.scope]=a.ui.ddmanager.droppables[b.scope]||[],a.ui.ddmanager.droppables[b.scope].push(this),b.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){var b=a.ui.ddmanager.droppables[this.options.scope];for(var c=0;c<b.length;c++)b[c]==this&&b.splice(c,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(b,c){b=="accept"&&(this.accept=a.isFunction(c)?c:function(a){return a.is(c)}),a.Widget.prototype._setOption.apply(this,arguments)},_activate:function(b){var c=a.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),c&&this._trigger("activate",b,this.ui(c))},_deactivate:function(b){var c=a.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),c&&this._trigger("deactivate",b,this.ui(c))},_over:function(b){var c=a.ui.ddmanager.current;!!c&&(c.currentItem||c.element)[0]!=this.element[0]&&this.accept.call(this.element[0],c.currentItem||c.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",b,this.ui(c)))},_out:function(b){var c=a.ui.ddmanager.current;!!c&&(c.currentItem||c.element)[0]!=this.element[0]&&this.accept.call(this.element[0],c.currentItem||c.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",b,this.ui(c)))},_drop:function(b,c){var d=c||a.ui.ddmanager.current;if(!d||(d.currentItem||d.element)[0]==this.element[0])return!1;var e=!1;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var b=a.data(this,"droppable");if(b.options.greedy&&!b.options.disabled&&b.options.scope==d.options.scope&&b.accept.call(b.element[0],d.currentItem||d.element)&&a.ui.intersect(d,a.extend(b,{offset:b.element.offset()}),b.options.tolerance)){e=!0;return!1}});if(e)return!1;if(this.accept.call(this.element[0],d.currentItem||d.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",b,this.ui(d));return this.element}return!1},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}}),a.extend(a.ui.droppable,{version:"1.8.18"}),a.ui.intersect=function(b,c,d){if(!c.offset)return!1;var e=(b.positionAbs||b.position.absolute).left,f=e+b.helperProportions.width,g=(b.positionAbs||b.position.absolute).top,h=g+b.helperProportions.height,i=c.offset.left,j=i+c.proportions.width,k=c.offset.top,l=k+c.proportions.height;switch(d){case"fit":return i<=e&&f<=j&&k<=g&&h<=l;case"intersect":return i<e+b.helperProportions.width/2&&f-b.helperProportions.width/2<j&&k<g+b.helperProportions.height/2&&h-b.helperProportions.height/2<l;case"pointer":var m=(b.positionAbs||b.position.absolute).left+(b.clickOffset||b.offset.click).left,n=(b.positionAbs||b.position.absolute).top+(b.clickOffset||b.offset.click).top,o=a.ui.isOver(n,m,k,i,c.proportions.height,c.proportions.width);return o;case"touch":return(g>=k&&g<=l||h>=k&&h<=l||g<k&&h>l)&&(e>=i&&e<=j||f>=i&&f<=j||e<i&&f>j);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();droppablesLoop:for(var g=0;g<d.length;g++){if(d[g].options.disabled||b&&!d[g].accept.call(d[g].element[0],b.currentItem||b.element))continue;for(var h=0;h<f.length;h++)if(f[h]==d[g].element[0]){d[g].proportions.height=0;continue droppablesLoop}d[g].visible=d[g].element.css("display")!="none";if(!d[g].visible)continue;e=="mousedown"&&d[g]._activate.call(d[g],c),d[g].offset=d[g].element.offset(),d[g].proportions={width:d[g].element[0].offsetWidth,height:d[g].element[0].offsetHeight}}},drop:function(b,c){var d=!1;a.each(a.ui.ddmanager.droppables[b.options.scope]||[],function(){!this.options||(!this.options.disabled&&this.visible&&a.ui.intersect(b,this,this.options.tolerance)&&(d=this._drop.call(this,c)||d),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],b.currentItem||b.element)&&(this.isout=1,this.isover=0,this._deactivate.call(this,c)))});return d},dragStart:function(b,c){b.element.parents(":not(body,html)").bind("scroll.droppable",function(){b.options.refreshPositions||a.ui.ddmanager.prepareOffsets(b,c)})},drag:function(b,c){b.options.refreshPositions&&a.ui.ddmanager.prepareOffsets(b,c),a.each(a.ui.ddmanager.droppables[b.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var d=a.ui.intersect(b,this,this.options.tolerance),e=!d&&this.isover==1?"isout":d&&this.isover==0?"isover":null;if(!e)return;var f;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");g.length&&(f=a.data(g[0],"droppable"),f.greedyChild=e=="isover"?1:0)}f&&e=="isover"&&(f.isover=0,f.isout=1,f._out.call(f,c)),this[e]=1,this[e=="isout"?"isover":"isout"]=0,this[e=="isover"?"_over":"_out"].call(this,c),f&&e=="isout"&&(f.isout=0,f.isover=1,f._over.call(f,c))}})},dragStop:function(b,c){b.element.parents(":not(body,html)").unbind("scroll.droppable"),b.options.refreshPositions||a.ui.ddmanager.prepareOffsets(b,c)}}})(jQuery);/* - * jQuery UI Resizable 1.8.18 - * - * Copyright 2011, 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/Resizables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('<div class="ui-wrapper" style="overflow: hidden;"></div>').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<d.length;e++){var f=a.trim(d[e]),g="ui-resizable-"+f,h=a('<div class="ui-resizable-handle '+g+'"></div>');/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(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||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()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return 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");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!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);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());return!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()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!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),e<h.maxWidth&&(h.maxWidth=e),g<h.maxHeight&&(h.maxHeight=g);this._vBoundaries=h},_updateCache:function(a){var b=this.options;this.offset=this.helper.offset(),d(a.left)&&(this.position.left=a.left),d(a.top)&&(this.position.top=a.top),d(a.height)&&(this.size.height=a.height),d(a.width)&&(this.size.width=a.width)},_updateRatio:function(a,b){var c=this.options,e=this.position,f=this.size,g=this.axis;d(a.height)?a.width=a.height*this.aspectRatio:d(a.width)&&(a.height=a.width/this.aspectRatio),g=="sw"&&(a.left=e.left+(f.width-a.width),a.top=null),g=="nw"&&(a.top=e.top+(f.height-a.height),a.left=e.left+(f.width-a.width));return a},_respectSize:function(a,b){var c=this.helper,e=this._vBoundaries,f=this._aspectRatio||b.shiftKey,g=this.axis,h=d(a.width)&&e.maxWidth&&e.maxWidth<a.width,i=d(a.height)&&e.maxHeight&&e.maxHeight<a.height,j=d(a.width)&&e.minWidth&&e.minWidth>a.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;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d<this._proportionallyResizeElements.length;d++){var e=this._proportionallyResizeElements[d];if(!this.borderDif){var f=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],g=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];this.borderDif=a.map(f,function(a,b){var c=parseInt(a,10)||0,d=parseInt(g[b],10)||0;return c+d})}if(a.browser.msie&&(!!a(c).is(":hidden")||!!a(c).parents(":hidden").length))continue;e.css({height:c.height()-this.borderDif[0]-this.borderDif[2]||0,width:c.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var b=this.element,c=this.options;this.elementOffset=b.offset();if(this._helper){this.helper=this.helper||a('<div style="overflow:hidden;"></div>');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.18"}),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){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/e.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*e.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 Selectable 1.8.18 - * - * Copyright 2011, 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/Selectables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */(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("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable"),this._mouseDestroy();return this},_mouseStart:function(b){var c=this;this.opos=[b.pageX,b.pageY];if(!this.options.disabled){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");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});return!1}})}},_mouseDrag:function(b){var c=this;this.dragged=!0;if(!this.options.disabled){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}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]){var j=!1;d.tolerance=="touch"?j=!(i.left>g||i.right<e||i.top>h||i.bottom<f):d.tolerance=="fit"&&(j=i.left>e&&i.right<g&&i.top>f&&i.bottom<h),j?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,c._trigger("selecting",b,{selecting:i.element}))):(i.selecting&&((b.metaKey||b.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),c._trigger("unselecting",b,{unselecting:i.element}))),i.selected&&!b.metaKey&&!b.ctrlKey&&!i.startselected&&(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,c._trigger("unselecting",b,{unselecting:i.element})))}});return!1}},_mouseStop:function(b){var c=this;this.dragged=!1;var d=this.options;a(".ui-unselecting",this.element[0]).each(function(){var d=a.data(this,"selectable-item");d.$element.removeClass("ui-unselecting"),d.unselecting=!1,d.startselected=!1,c._trigger("unselected",b,{unselected:d.element})}),a(".ui-selecting",this.element[0]).each(function(){var d=a.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected"),d.selecting=!1,d.selected=!0,d.startselected=!0,c._trigger("selected",b,{selected:d.element})}),this._trigger("stop",b),this.helper.remove();return!1}}),a.extend(a.ui.selectable,{version:"1.8.18"})})(jQuery);/* - * jQuery UI Sortable 1.8.18 - * - * Copyright 2011, 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/Sortables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */(function(a,b){a.widget("ui.sortable",a.ui.mouse,{widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",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){e=a(this);return!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}this.currentItem=e,this._removeCurrentsFromItems();return!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));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);return!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<c.scrollSensitivity?this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop+c.scrollSpeed:b.pageY-this.overflowOffset.top<c.scrollSensitivity&&(this.scrollParent[0].scrollTop=d=this.scrollParent[0].scrollTop-c.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-b.pageX<c.scrollSensitivity?this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft+c.scrollSpeed:b.pageX-this.overflowOffset.left<c.scrollSensitivity&&(this.scrollParent[0].scrollLeft=d=this.scrollParent[0].scrollLeft-c.scrollSpeed)):(b.pageY-a(document).scrollTop()<c.scrollSensitivity?d=a(document).scrollTop(a(document).scrollTop()-c.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<c.scrollSensitivity&&(d=a(document).scrollTop(a(document).scrollTop()+c.scrollSpeed)),b.pageX-a(document).scrollLeft()<c.scrollSensitivity?d=a(document).scrollLeft(a(document).scrollLeft()-c.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<c.scrollSensitivity&&(d=a(document).scrollLeft(a(document).scrollLeft()+c.scrollSpeed))),d!==!1&&a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b)}this.positionAbs=this._convertPositionTo("absolute");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";for(var e=this.items.length-1;e>=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}}this._contactContainers(b),a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),this._trigger("sort",b,this._uiHash()),this.lastPositionAbs=this.positionAbs;return!1},_mouseStop:function(b,c){if(!!b){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)}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));return this},serialize:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];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+"=");return d.join("&")},toArray:function(b){var c=this._getItemsAsjQuery(b&&b.connected),d=[];b=b||{},c.each(function(){d.push(a(b.item||this).attr(b.attribute||"id")||"")});return 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+j<i&&b+k>f&&b+k<g;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?l:f<b+this.helperProportions.width/2&&c-this.helperProportions.width/2<g&&h<d+this.helperProportions.height/2&&e-this.helperProportions.height/2<i},_intersectsWithPointer:function(b){var c=a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top,b.height),d=a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left,b.width),e=c&&d,f=this._getDragVerticalDirection(),g=this._getDragHorizontalDirection();if(!e)return!1;return this.floating?g&&g=="right"||f=="down"?2:1:f&&(f=="down"?2:1)},_intersectsWithSides:function(b){var c=a.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,b.top+b.height/2,b.height),d=a.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,b.left+b.width/2,b.width),e=this._getDragVerticalDirection(),f=this._getDragHorizontalDirection();return this.floating&&f?f=="right"&&d||f=="left"&&!d:e&&(e=="down"&&c||e=="up"&&!c)},_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a),this.refreshPositions();return 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<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(b){this.items=[],this.containers=[this];var c=this.items,d=this,e=[[a.isFunction(this.options.items)?this.options.items.call(this.element[0],b,{item:this.currentItem}):a(this.options.items,this.element),this]],f=this._connectWith();if(f&&this.ready)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[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<m;i++){var n=a(l[i]);n.data(this.widgetName+"-item",k),c.push({item:n,instance:k,width:0,height:0,left:0,top:0})}}},refreshPositions:function(b){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());for(var c=this.items.length-1;c>=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")[0];e||(b.style.visibility="hidden");return b},update:function(a,b){if(!e||!!d.forcePlaceholderSize)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)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)<f&&(f=Math.abs(j-h),g=this.items[i])}if(!g&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[d],g?this._rearrange(b,g,null,!0):this._rearrange(b,null,this.containers[d].element,!0),this._trigger("change",b,this._uiHash()),this.containers[d]._trigger("change",b,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[d]._trigger("over",b,this._uiHash(this)),this.containers[d].containerCache.over=1}},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b,this.currentItem])):c.helper=="clone"?this.currentItem.clone():this.currentItem;d.parents("body").length||a(c.appendTo!="parent"?c.appendTo:this.currentItem[0].parentNode)[0].appendChild(d[0]),d[0]==this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(d[0].style.width==""||c.forceHelperSize)&&d.width(this.currentItem.width()),(d[0].style.height==""||c.forceHelperSize)&&d.height(this.currentItem.height());return 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.currentItem.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.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),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=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(b.containment)){var c=a(b.containment)[0],d=a(b.containment).offset(),e=a(c).css("overflow")!="hidden";this.containment=[d.left+(parseInt(a(c).css("borderLeftWidth"),10)||0)+(parseInt(a(c).css("paddingLeft"),10)||0)-this.margins.left,d.top+(parseInt(a(c).css("borderTopWidth"),10)||0)+(parseInt(a(c).css("paddingTop"),10)||0)-this.margins.top,d.left+(e?Math.max(c.scrollWidth,c.offsetWidth):c.offsetWidth)-(parseInt(a(c).css("borderLeftWidth"),10)||0)-(parseInt(a(c).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,d.top+(e?Math.max(c.scrollHeight,c.offsetHeight):c.offsetHeight)-(parseInt(a(c).css("borderTopWidth"),10)||0)-(parseInt(a(c).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_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&&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&&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);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var f=b.pageX,g=b.pageY;if(this.originalPosition){this.containment&&(b.pageX-this.offset.click.left<this.containment[0]&&(f=this.containment[0]+this.offset.click.left),b.pageY-this.offset.click.top<this.containment[1]&&(g=this.containment[1]+this.offset.click.top),b.pageX-this.offset.click.left>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.top<this.containment[1]||h-this.offset.click.top>this.containment[3]?h-this.offset.click.top<this.containment[1]?h+c.grid[1]:h-c.grid[1]:h:h;var i=this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0];f=this.containment?i-this.offset.click.left<this.containment[0]||i-this.offset.click.left>this.containment[2]?i-this.offset.click.left<this.containment[0]?i+c.grid[0]:i-c.grid[0]:i:i}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())}},_rearrange:function(a,b,c,d){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?b.item[0]:b.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var e=this,f=this.counter;window.setTimeout(function(){f==e.counter&&e.refreshPositions(!d)},0)},_clear:function(b,c){this.reverting=!1;var d=[],e=this;!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var f in this._storedCSS)if(this._storedCSS[f]=="auto"||this._storedCSS[f]=="static")this._storedCSS[f]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!c&&d.push(function(a){this._trigger("receive",a,this._uiHash(this.fromOutside))}),(this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!c&&d.push(function(a){this._trigger("update",a,this._uiHash())});if(!a.ui.contains(this.element[0],this.currentItem[0])){c||d.push(function(a){this._trigger("remove",a,this._uiHash())});for(var f=this.containers.length-1;f>=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<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}return!1}c||this._trigger("beforeStop",b,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!=this.currentItem[0]&&this.helper.remove(),this.helper=null;if(!c){for(var f=0;f<d.length;f++)d[f].call(this,b);this._trigger("stop",b,this._uiHash())}this.fromOutside=!1;return!0},_trigger:function(){a.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(b){var c=b||this;return{helper:c.helper,placeholder:c.placeholder||a([]),position:c.position,originalPosition:c.originalPosition,offset:c.positionAbs,item:c.currentItem,sender:b?b.element:null}}}),a.extend(a.ui.sortable,{version:"1.8.18"})})(jQuery);/* - * jQuery UI Accordion 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - */(function(a,b){a.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:!0,clearStyle:!1,collapsible:!1,event:"click",fillSpace:!1,header:"> 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(){c.disabled||a(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){c.disabled||a(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){c.disabled||a(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){c.disabled||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("<span></span>").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");(b.autoHeight||b.fillHeight)&&c.css("height","");return 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)){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()}if(f){a(b.target).attr("tabIndex",-1),a(f).attr("tabIndex",0),f.focus();return!1}return!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];this._clickHandler({target:b},b);return 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){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 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;this.running||(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.18",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);else{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 Autocomplete 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - * jquery.ui.position.js - */(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.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")){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._move("previous",c),c.preventDefault();break;case e.DOWN:b._move("next",c),c.preventDefault();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(){b.options.disabled||(b.selectedItem=null,b.previous=b.element.val())}).bind("blur.autocomplete",function(a){b.options.disabled||(clearTimeout(b.searching),b.closing=setTimeout(function(){b.close(a),b._change(a)},150))}),this._initSource(),this.response=function(){return b._response.apply(b,arguments)},this.menu=a("<ul></ul>").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,d,e;a.isArray(this.options.source)?(d=this.options.source,this.source=function(b,c){c(a.ui.autocomplete.filter(d,b.term))}):typeof this.options.source=="string"?(e=this.options.source,this.source=function(d,f){b.xhr&&b.xhr.abort(),b.xhr=a.ajax({url:e,data:d,dataType:"json",context:{autocompleteRequest:++c},success:function(a,b){this.autocompleteRequest===c&&f(a)},error:function(){this.autocompleteRequest===c&&f([])}})}):this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val(),this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==!1)return this._search(a)},_search:function(a){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.source({term:a},this.response)},_response:function(a){!this.options.disabled&&a&&a.length?(a=this._normalize(a),this._suggest(a),this._trigger("open")):this.close(),this.pending--,this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing),this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.deactivate(),this._trigger("close",a))},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(b){if(b.length&&b[0].label&&b[0].value)return b;return a.map(b,function(b){if(typeof b=="string")return{label:b,value:b};return a.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(b){var c=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(c,b),this.menu.deactivate(),this.menu.refresh(),c.show(),this._resizeMenu(),c.position(a.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next(new a.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(b,c){var d=this;a.each(c,function(a,c){d._renderItem(b,c)})},_renderItem:function(b,c){return a("<li></li>").data("item.autocomplete",c).append(a("<a></a>").text(c.label)).appendTo(b)},_move:function(a,b){if(!this.menu.element.is(":visible"))this.search(null,b);else{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}}),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){!a(c.target).closest(".ui-menu-item a").length||(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(){!this.active||(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));else{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();result=this.element.children(".ui-menu-item").filter(function(){var b=a(this).offset().top-c+d-a(this).height();return b<10&&b>-10}),result.length||(result=this.element.children(".ui-menu-item:first")),this.activate(b,result)}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[a.fn.prop?"prop":"attr"]("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})}(jQuery);/* - * jQuery UI Button 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - */(function(a,b){var c,d,e,f,g="ui-button ui-widget ui-state-default ui-corner-all",h="ui-state-hover ui-state-active ",i="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",j=function(){var b=a(this).find(":ui-button");setTimeout(function(){b.button("refresh")},1)},k=function(b){var c=b.name,d=b.form,e=a([]);c&&(d?e=a(d).find("[name='"+c+"']"):e=a("[name='"+c+"']",b.ownerDocument).filter(function(){return!this.form}));return e};a.widget("ui.button",{options:{disabled:null,text:!0,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",j),typeof this.options.disabled!="boolean"?this.options.disabled=!!this.element.propAttr("disabled"):this.element.propAttr("disabled",this.options.disabled),this._determineButtonType(),this.hasTitle=!!this.buttonElement.attr("title");var b=this,h=this.options,i=this.type==="checkbox"||this.type==="radio",l="ui-state-hover"+(i?"":" ui-state-active"),m="ui-state-focus";h.label===null&&(h.label=this.buttonElement.html()),this.buttonElement.addClass(g).attr("role","button").bind("mouseenter.button",function(){h.disabled||(a(this).addClass("ui-state-hover"),this===c&&a(this).addClass("ui-state-active"))}).bind("mouseleave.button",function(){h.disabled||a(this).removeClass(l)}).bind("click.button",function(a){h.disabled&&(a.preventDefault(),a.stopImmediatePropagation())}),this.element.bind("focus.button",function(){b.buttonElement.addClass(m)}).bind("blur.button",function(){b.buttonElement.removeClass(m)}),i&&(this.element.bind("change.button",function(){f||b.refresh()}),this.buttonElement.bind("mousedown.button",function(a){h.disabled||(f=!1,d=a.pageX,e=a.pageY)}).bind("mouseup.button",function(a){!h.disabled&&(d!==a.pageX||e!==a.pageY)&&(f=!0)})),this.type==="checkbox"?this.buttonElement.bind("click.button",function(){if(h.disabled||f)return!1;a(this).toggleClass("ui-state-active"),b.buttonElement.attr("aria-pressed",b.element[0].checked)}):this.type==="radio"?this.buttonElement.bind("click.button",function(){if(h.disabled||f)return!1;a(this).addClass("ui-state-active"),b.buttonElement.attr("aria-pressed","true");var c=b.element[0];k(c).not(c).map(function(){return a(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")}):(this.buttonElement.bind("mousedown.button",function(){if(h.disabled)return!1;a(this).addClass("ui-state-active"),c=this,a(document).one("mouseup",function(){c=null})}).bind("mouseup.button",function(){if(h.disabled)return!1;a(this).removeClass("ui-state-active")}).bind("keydown.button",function(b){if(h.disabled)return!1;(b.keyCode==a.ui.keyCode.SPACE||b.keyCode==a.ui.keyCode.ENTER)&&a(this).addClass("ui-state-active")}).bind("keyup.button",function(){a(this).removeClass("ui-state-active")}),this.buttonElement.is("a")&&this.buttonElement.keyup(function(b){b.keyCode===a.ui.keyCode.SPACE&&a(this).click()})),this._setOption("disabled",h.disabled),this._resetButton()},_determineButtonType:function(){this.element.is(":checkbox")?this.type="checkbox":this.element.is(":radio")?this.type="radio":this.element.is("input")?this.type="input":this.type="button";if(this.type==="checkbox"||this.type==="radio"){var a=this.element.parents().filter(":last"),b="label[for='"+this.element.attr("id")+"']";this.buttonElement=a.find(b),this.buttonElement.length||(a=a.length?a.siblings():this.element.siblings(),this.buttonElement=a.filter(b),this.buttonElement.length||(this.buttonElement=a.find(b))),this.element.addClass("ui-helper-hidden-accessible");var c=this.element.is(":checked");c&&this.buttonElement.addClass("ui-state-active"),this.buttonElement.attr("aria-pressed",c)}else this.buttonElement=this.element},widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible"),this.buttonElement.removeClass(g+" "+h+" "+i).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html()),this.hasTitle||this.buttonElement.removeAttr("title"),a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments);b==="disabled"?c?this.element.propAttr("disabled",!0):this.element.propAttr("disabled",!1):this._resetButton()},refresh:function(){var b=this.element.is(":disabled");b!==this.options.disabled&&this._setOption("disabled",b),this.type==="radio"?k(this.element[0]).each(function(){a(this).is(":checked")?a(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true"):a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}):this.type==="checkbox"&&(this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false"))},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var b=this.buttonElement.removeClass(i),c=a("<span></span>",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("<span class='ui-button-icon-primary ui-icon "+d.primary+"'></span>"),d.secondary&&b.append("<span class='ui-button-icon-secondary ui-icon "+d.secondary+"'></span>"),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 Dialog 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - * jquery.ui.button.js - * jquery.ui.draggable.js - * jquery.ui.mouse.js - * jquery.ui.position.js - * jquery.ui.resizable.js - */(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("<div></div>")).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("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),j=a('<a href="#"></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){b.close(a);return!1}).appendTo(i),k=(b.uiDialogTitlebarCloseText=a("<span></span>")).addClass("ui-icon ui-icon-closethick").text(d.closeText).appendTo(j),l=a("<span></span>").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;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);return a},widget:function(){return this.uiDialog},close:function(b){var c=this,d,e;if(!1!==c._trigger("beforeClose",b)){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);return c}},isOpen:function(){return this._isOpen},moveToTop:function(b,c){var d=this,e=d.options,f;if(e.modal&&!b||!e.stack&&!e.modal)return 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);return d},open:function(){if(!this._isOpen){var b=this,c=b.options,d=b.uiDialog;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){var c=a(":tabbable",this),d=c.filter(":first"),e=c.filter(":last");if(b.target===e[0]&&!b.shiftKey){d.focus(1);return!1}if(b.target===d[0]&&b.shiftKey){e.focus(1);return!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");return b}},_createButtons:function(b){var c=this,d=!1,e=a("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=a("<div></div>").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('<button type="button"></button>').click(function(){d.click.apply(c.element[0],arguments)}).appendTo(g);a.each(d,function(a,b){a!=="click"&&(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.18",uuid:0,maxZ:0,getTitleId:function(a){var b=a.attr("id");b||(this.uuid+=1,b=this.uuid);return"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()<a.ui.dialog.overlay.maxZ)return!1})},1),a(document).bind("keydown.dialog-overlay",function(c){b.options.closeOnEscape&&!c.isDefaultPrevented()&&c.keyCode&&c.keyCode===a.ui.keyCode.ESCAPE&&(b.close(c),c.preventDefault())}),a(window).bind("resize.dialog-overlay",a.ui.dialog.overlay.resize));var c=(this.oldInstances.pop()||a("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});a.fn.bgiframe&&c.bgiframe(),this.instances.push(c);return 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;if(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);return b<c?a(window).height()+"px":b+"px"}return a(document).height()+"px"},width:function(){var b,c;if(a.browser.msie){b=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),c=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return b<c?a(window).width()+"px":b+"px"}return a(document).width()+"px"},resize:function(){var b=a([]);a.each(a.ui.dialog.overlay.instances,function(){b=b.add(this)}),b.css({width:0,height:0}).css({width:a.ui.dialog.overlay.width(),height:a.ui.dialog.overlay.height()})}}),a.extend(a.ui.dialog.overlay.prototype,{destroy:function(){a.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);/* - * jQuery UI Slider 1.8.18 - * - * Copyright 2011, 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/Slider - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */(function(a,b){var c=5;a.widget("ui.slider",a.ui.mouse,{widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var b=this,d=this.options,e=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",g=d.values&&d.values.length||1,h=[];this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(d.disabled?" ui-slider-disabled ui-disabled":"")),this.range=a([]),d.range&&(d.range===!0&&(d.values||(d.values=[this._valueMin(),this._valueMin()]),d.values.length&&d.values.length!==2&&(d.values=[d.values[0],d.values[0]])),this.range=a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(d.range==="min"||d.range==="max"?" ui-slider-range-"+d.range:"")));for(var i=e.length;i<g;i+=1)h.push(f);this.handles=e.add(a(h.join("")).appendTo(b.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(a){a.preventDefault()}).hover(function(){d.disabled||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){d.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"))}).blur(function(){a(this).removeClass("ui-state-focus")}),this.handles.each(function(b){a(this).data("index.ui-slider-handle",b)}),this.handles.keydown(function(d){var e=a(this).data("index.ui-slider-handle"),f,g,h,i;if(!b.options.disabled){switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:d.preventDefault();if(!b._keySliding){b._keySliding=!0,a(this).addClass("ui-state-active"),f=b._start(d,e);if(f===!1)return}}i=b.options.step,b.options.values&&b.options.values.length?g=h=b.values(e):g=h=b.value();switch(d.keyCode){case a.ui.keyCode.HOME:h=b._valueMin();break;case a.ui.keyCode.END:h=b._valueMax();break;case a.ui.keyCode.PAGE_UP:h=b._trimAlignValue(g+(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.PAGE_DOWN:h=b._trimAlignValue(g-(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(g===b._valueMax())return;h=b._trimAlignValue(g+i);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(g===b._valueMin())return;h=b._trimAlignValue(g-i)}b._slide(d,e,h)}}).keyup(function(c){var d=a(this).data("index.ui-slider-handle");b._keySliding&&(b._keySliding=!1,b._stop(c,d),b._change(c,d),a(this).removeClass("ui-state-active"))}),this._refreshValue(),this._animateOff=!1},destroy:function(){this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider"),this._mouseDestroy();return this},_mouseCapture:function(b){var c=this.options,d,e,f,g,h,i,j,k,l;if(c.disabled)return!1;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),d={x:b.pageX,y:b.pageY},e=this._normValueFromMouse(d),f=this._valueMax()-this._valueMin()+1,h=this,this.handles.each(function(b){var c=Math.abs(e-h.values(b));f>c&&(f=c,g=a(this),i=b)}),c.range===!0&&this.values(1)===c.min&&(i+=1,g=a(this.handles[i])),j=this._start(b,i);if(j===!1)return!1;this._mouseSliding=!0,h._handleIndex=i,g.addClass("ui-state-active").focus(),k=g.offset(),l=!a(b.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=l?{left:0,top:0}:{left:b.pageX-k.left-g.width()/2,top:b.pageY-k.top-g.height()/2-(parseInt(g.css("borderTopWidth"),10)||0)-(parseInt(g.css("borderBottomWidth"),10)||0)+(parseInt(g.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(b,i,e),this._animateOff=!0;return!0},_mouseStart:function(a){return!0},_mouseDrag:function(a){var b={x:a.pageX,y:a.pageY},c=this._normValueFromMouse(b);this._slide(a,this._handleIndex,c);return!1},_mouseStop:function(a){this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(a,this._handleIndex),this._change(a,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1;return!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b,c,d,e,f;this.orientation==="horizontal"?(b=this.elementSize.width,c=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(b=this.elementSize.height,c=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),d=c/b,d>1&&(d=1),d<0&&(d=0),this.orientation==="vertical"&&(d=1-d),e=this._valueMax()-this._valueMin(),f=this._valueMin()+d*e;return this._trimAlignValue(f)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values());return this._trigger("start",a,c)},_slide:function(a,b,c){var d,e,f;this.options.values&&this.options.values.length?(d=this.values(b?0:1),this.options.values.length===2&&this.options.range===!0&&(b===0&&c>d||b===1&&c<d)&&(c=d),c!==this.values(b)&&(e=this.values(),e[b]=c,f=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e}),d=this.values(b?0:1),f!==!1&&this.values(b,c,!0))):c!==this.value()&&(f=this._trigger("slide",a,{handle:this.handles[b],value:c}),f!==!1&&this.value(c))},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("change",a,c)}},value:function(a){if(arguments.length)this.options.value=this._trimAlignValue(a),this._refreshValue(),this._change(null,0);else return this._value()},values:function(b,c){var d,e,f;if(arguments.length>1)this.options.values[b]=this._trimAlignValue(c),this._refreshValue(),this._change(null,b);else{if(!arguments.length)return this._values();if(!a.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(b):this.value();d=this.options.values,e=arguments[0];for(f=0;f<d.length;f+=1)d[f]=this._trimAlignValue(e[f]),this._change(null,f);this._refreshValue()}},_setOption:function(b,c){var d,e=0;a.isArray(this.options.values)&&(e=this.options.values.length),a.Widget.prototype._setOption.apply(this,arguments);switch(b){case"disabled":c?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.propAttr("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.propAttr("disabled",!1),this.element.removeClass("ui-disabled"));break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(d=0;d<e;d+=1)this._change(null,d);this._animateOff=!1}},_value:function(){var a=this.options.value;a=this._trimAlignValue(a);return a},_values:function(a){var b,c,d;if(arguments.length){b=this.options.values[a],b=this._trimAlignValue(b);return b}c=this.options.values.slice();for(d=0;d<c.length;d+=1)c[d]=this._trimAlignValue(c[d]);return c},_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b,d=a-c;Math.abs(c)*2>=b&&(d+=c>0?b:-b);return parseFloat(d.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var b=this.options.range,c=this.options,d=this,e=this._animateOff?!1:c.animate,f,g={},h,i,j,k;this.options.values&&this.options.values.length?this.handles.each(function(b,i){f=(d.values(b)-d._valueMin())/(d._valueMax()-d._valueMin())*100,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",a(this).stop(1,1)[e?"animate":"css"](g,c.animate),d.options.range===!0&&(d.orientation==="horizontal"?(b===0&&d.range.stop(1,1)[e?"animate":"css"]({left:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({width:f-h+"%"},{queue:!1,duration:c.animate})):(b===0&&d.range.stop(1,1)[e?"animate":"css"]({bottom:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({height:f-h+"%"},{queue:!1,duration:c.animate}))),h=f}):(i=this.value(),j=this._valueMin(),k=this._valueMax(),f=k!==j?(i-j)/(k-j)*100:0,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",this.handle.stop(1,1)[e?"animate":"css"](g,c.animate),b==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[e?"animate":"css"]({width:f+"%"},c.animate),b==="max"&&this.orientation==="horizontal"&&this.range[e?"animate":"css"]({width:100-f+"%"},{queue:!1,duration:c.animate}),b==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[e?"animate":"css"]({height:f+"%"},c.animate),b==="max"&&this.orientation==="vertical"&&this.range[e?"animate":"css"]({height:100-f+"%"},{queue:!1,duration:c.animate}))}}),a.extend(a.ui.slider,{version:"1.8.18"})})(jQuery);/* - * jQuery UI Tabs 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - */(function(a,b){function f(){return++d}function e(){return++c}var c=0,d=0;a.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:!1,cookie:null,collapsible:!1,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading…</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_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){e.selected=a;return!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){this.blur();return!1}e.selected=d.anchors.index(this),d.abort();if(e.collapsible){if(c.hasClass("ui-tabs-selected")){e.selected=-1,e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){o(b,f)}).dequeue("tabs"),this.blur();return!1}if(!f.length){e.cookie&&d._cookie(e.selected,e.cookie),d.element.queue("tabs",function(){n(b,g)}),d.load(d.anchors.index(this)),this.blur();return!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){typeof a=="string"&&(a=this.anchors.index(this.anchors.filter("[href$="+a+"]")));return a},destroy:function(){var b=this.options;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);return 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);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]));return this},remove:function(b){b=this._getIndex(b);var c=this.options,d=this.lis.eq(b).remove(),e=this.panels.eq(b).remove();d.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(b+(b+1<this.anchors.length?1:-1)),c.disabled=a.map(a.grep(c.disabled,function(a,c){return a!=b}),function(a,c){return a>=b?--a:a}),this._tabify(),this._trigger("remove",null,this._ui(d.find("a")[0],e[0]));return this},enable:function(b){b=this._getIndex(b);var c=this.options;if(a.inArray(b,c.disabled)!=-1){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]));return this}},disable:function(a){a=this._getIndex(a);var b=this,c=this.options;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])));return 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;this.anchors.eq(a).trigger(this.options.event+".tabs");return 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");else{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)}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");return this}},abort:function(){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();return this},url:function(a,b){this.anchors.eq(a).removeData("cache.tabs").data("load.tabs",b);return this},length:function(){return this.anchors.length}}),a.extend(a.ui.tabs,{version:"1.8.18"}),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<c.anchors.length?a:0)},a),b&&b.stopPropagation()}),f=c._unrotate||(c._unrotate=b?function(a){t=d.selected,e()}:function(a){a.clientX&&c.rotate(null)});a?(this.element.bind("tabsshow",e),this.anchors.bind(d.event+".tabs",f),e()):(clearTimeout(c.rotation),this.element.unbind("tabsshow",e),this.anchors.unbind(d.event+".tabs",f),delete this._rotate,delete this._unrotate);return this}})})(jQuery);/* - * jQuery UI Datepicker 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - */(function($,undefined){function isArray(a){return a&&($.browser.safari&&typeof a=="object"&&a.length||a.constructor&&a.constructor.toString().match(/\Array\(\)/))}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 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);!c.length||c.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(c){var d=$(c.target).closest(b);!$.datepicker._isDisabledDatepicker(instActive.inline?a.parent()[0]:instActive.input[0])&&!!d.length&&(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 Datepicker(){this.debug=!1,this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},$.extend(this._defaults,this.regional[""]),this.dpDiv=bindHover($('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}$.extend($.ui,{datepicker:{version:"1.8.18"}});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){extendRemove(this._defaults,a||{});return 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($('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')):this.dpDiv}},_connectDatepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]);c.hasClass(this.markerClassName)||(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=$('<span class="'+this._appendClass+'">'+c+"</span>"),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")?$("<img/>").addClass(this._triggerClass).attr({src:g,alt:f,title:f}):$('<button type="button"></button>').addClass(this._triggerClass).html(g==""?f:$("<img/>").attr({src:g,alt:f,title:f}))),a[d?"before":"after"](b.trigger),b.trigger.click(function(){$.datepicker._datepickerShowing&&$.datepicker._lastInput==a[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=a[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(a[0])):$.datepicker._showDatepicker(a[0]);return!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;d<a.length;d++)a[d].length>b&&(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);c.hasClass(this.markerClassName)||(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=$('<input type="text" id="'+g+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>'),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]}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);return this},_destroyDatepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(!!b.hasClass(this.markerClassName)){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)){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)){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<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,b,c){var d=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?$.extend({},$.datepicker._defaults):d?b=="all"?$.extend({},d.settings):this._get(d,b):null;var e=b||{};typeof b=="string"&&(e={},e[b]=c);if(d){this._curInst==d&&this._hideDatepicker();var f=this._getDateDatepicker(a,!0),g=this._getMinMaxDate(d,"min"),h=this._getMinMaxDate(d,"max");extendRemove(d.settings,e),g!==null&&e.dateFormat!==undefined&&e.minDate===undefined&&(d.settings.minDate=this._formatDate(d,g)),h!==null&&e.dateFormat!==undefined&&e.maxDate===undefined&&(d.settings.maxDate=this._formatDate(d,h)),this._attachments($(a),d),this._autoSize(d),this._setDate(d,f),this._updateAlternate(d),this._updateDatepicker(d)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);c&&!c.inline&&this._setDateFromField(c,b);return c?this._getDate(c):null},_doKeyDown:function(a){var b=$.datepicker._getInst(a.target),c=!0,d=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=!0;if($.datepicker._datepickerShowing)switch(a.keyCode){case 9:$.datepicker._hideDatepicker(),c=!1;break;case 13:var e=$("td."+$.datepicker._dayOverClass+":not(."+$.datepicker._currentClass+")",b.dpDiv);e[0]&&$.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,e[0]);var f=$.datepicker._get(b,"onSelect");if(f){var g=$.datepicker._formatDate(b);f.apply(b.input?b.input[0]:null,[g,b])}else $.datepicker._hideDatepicker();return!1;case 27:$.datepicker._hideDatepicker();break;case 33:$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 34:$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 35:(a.ctrlKey||a.metaKey)&&$.datepicker._clearDate(a.target),c=a.ctrlKey||a.metaKey;break;case 36:(a.ctrlKey||a.metaKey)&&$.datepicker._gotoToday(a.target),c=a.ctrlKey||a.metaKey;break;case 37:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?1:-1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?-$.datepicker._get(b,"stepBigMonths"):-$.datepicker._get(b,"stepMonths"),"M");break;case 38:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,-7,"D"),c=a.ctrlKey||a.metaKey;break;case 39:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,d?-1:1,"D"),c=a.ctrlKey||a.metaKey,a.originalEvent.altKey&&$.datepicker._adjustDate(a.target,a.ctrlKey?+$.datepicker._get(b,"stepBigMonths"):+$.datepicker._get(b,"stepMonths"),"M");break;case 40:(a.ctrlKey||a.metaKey)&&$.datepicker._adjustDate(a.target,7,"D"),c=a.ctrlKey||a.metaKey;break;default:c=!1}else a.keyCode==36&&a.ctrlKey?$.datepicker._showDatepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyPress:function(a){var b=$.datepicker._getInst(a.target);if($.datepicker._get(b,"constrainInput")){var c=$.datepicker._possibleChars($.datepicker._get(b,"dateFormat")),d=String.fromCharCode(a.charCode==undefined?a.keyCode:a.charCode);return a.ctrlKey||a.metaKey||d<" "||!c||c.indexOf(d)>-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(a){$.datepicker.log(a)}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){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(){e|=$(this).css("position")=="fixed";return!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();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);return 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))&&this._datepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=this,f=function(){$.datepicker._tidyDialog(b),e._curInst=null};$.effects&&$.effects[c]?b.dpDiv.hide(c,$.datepicker._get(b,"showOptions"),d,f):b.dpDiv[c=="slideDown"?"slideUp":c=="fadeIn"?"fadeOut":"hide"](c?d:null,f),c||f(),this._datepickerShowing=!1;var g=this._get(b,"onClose");g&&g.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){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]);this._isDisabledDatepicker(d[0])||(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])){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();b.setMonth(0),b.setDate(1);return 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<a.length&&a.charAt(s+1)==b;c&&s++;return c},o=function(a){var c=n(a),d=a=="@"?14:a=="!"?20:a=="y"&&c?4:a=="o"?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=b.substring(r).match(e);if(!f)throw"Missing number at position "+r;r+=f[0].length;return parseInt(f[0],10)},p=function(a,c,d){var e=$.map(n(a)?d:c,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)}),f=-1;$.each(e,function(a,c){var d=c[1];if(b.substr(r,d.length).toLowerCase()==d.toLowerCase()){f=c[0],r+=d.length;return!1}});if(f!=-1)return f+1;throw"Unknown name at position "+r},q=function(){if(b.charAt(r)!=a.charAt(s))throw"Unexpected literal at position "+r;r++},r=0;for(var s=0;s<a.length;s++)if(m)a.charAt(s)=="'"&&!n("'")?m=!1:q();else switch(a.charAt(s)){case"d":k=o("d");break;case"D":p("D",e,f);break;case"o":l=o("o");break;case"m":j=o("m");break;case"M":j=p("M",g,h);break;case"y":i=o("y");break;case"@":var t=new Date(o("@"));i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"!":var t=new Date((o("!")-this._ticksTo1970)/1e4);i=t.getFullYear(),j=t.getMonth()+1,k=t.getDate();break;case"'":n("'")?q():m=!0;break;default:q()}if(r<b.length)throw"Extra/unparsed characters found in date: "+b.substring(r);i==-1?i=(new Date).getFullYear():i<100&&(i+=(new Date).getFullYear()-(new Date).getFullYear()%100+(i<=d?0:-100));if(l>-1){j=1,k=l;for(;;){var u=this._getDaysInMonth(i,j-1);if(k<=u)break;j++,k-=u}}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+1<a.length&&a.charAt(m+1)==b;c&&m++;return c},i=function(a,b,c){var d=""+b;if(h(a))while(d.length<c)d="0"+d;return d},j=function(a,b,c,d){return h(a)?d[b]:c[b]},k="",l=!1;if(b)for(var m=0;m<a.length;m++)if(l)a.charAt(m)=="'"&&!h("'")?l=!1:k+=a.charAt(m);else switch(a.charAt(m)){case"d":k+=i("d",b.getDate(),2);break;case"D":k+=j("D",b.getDay(),d,e);break;case"o":k+=i("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864e5),3);break;case"m":k+=i("m",b.getMonth()+1,2);break;case"M":k+=j("M",b.getMonth(),f,g);break;case"y":k+=h("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":k+=b.getTime();break;case"!":k+=b.getTime()*1e4+this._ticksTo1970;break;case"'":h("'")?k+="'":l=!0;break;default:k+=a.charAt(m)}return k},_possibleChars:function(a){var b="",c=!1,d=function(b){var c=e+1<a.length&&a.charAt(e+1)==b;c&&e++;return c};for(var e=0;e<a.length;e++)if(c)a.charAt(e)=="'"&&!d("'")?c=!1:b+=a.charAt(e);else switch(a.charAt(e)){case"d":case"m":case"y":case"@":b+="0123456789";break;case"D":case"M":return null;case"'":d("'")?b+="'":c=!0;break;default:b+=a.charAt(e)}return b},_get:function(a,b){return a.settings[b]!==undefined?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e,f;e=f=this._getDefaultDate(a);var g=this._getFormatConfig(a);try{e=this.parseDate(c,d,g)||f}catch(h){this.log(h),d=b?"":d}a.selectedDay=e.getDate(),a.drawMonth=a.selectedMonth=e.getMonth(),a.drawYear=a.selectedYear=e.getFullYear(),a.currentDay=d?e.getDate():0,a.currentMonth=d?e.getMonth():0,a.currentYear=d?e.getFullYear():0,this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var d=function(a){var b=new Date;b.setDate(b.getDate()+a);return b},e=function(b){try{return $.datepicker.parseDate($.datepicker._get(a,"dateFormat"),b,$.datepicker._getFormatConfig(a))}catch(c){}var d=(b.toLowerCase().match(/^c/)?$.datepicker._getDate(a):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(b);while(i){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=parseInt(i[1],10)*7;break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,$.datepicker._getDaysInMonth(e,f))}i=h.exec(b)}return new Date(e,f,g)},f=b==null||b===""?c:typeof b=="string"?e(b):typeof b=="number"?isNaN(b)?c:d(b):new Date(b.getTime());f=f&&f.toString()=="Invalid Date"?c:f,f&&(f.setHours(0),f.setMinutes(0),f.setSeconds(0),f.setMilliseconds(0));return this._daylightSavingAdjust(f)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>12?a.getHours()+2:0);return a},_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&&p<l?l:p;while(this._daylightSavingAdjust(new Date(o,n,1))>p)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)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', -"+i+", 'M');\""+' title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>":e?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+q+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+q+"</span></a>",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)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._adjustDate('#"+a.id+"', +"+i+", 'M');\""+' title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":e?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>",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?"":'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+dpuuid+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>",x=d?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?w:"")+(this._isInRange(a,v)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+dpuuid+".datepicker._gotoToday('#"+a.id+"');\""+">"+u+"</button>":"")+(c?"":w)+"</div>":"",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;L<g[0];L++){var M="";this.maxRows=4;for(var N=0;N<g[1];N++){var O=this._daylightSavingAdjust(new Date(o,n,a.selectedDay)),P=" ui-corner-all",Q="";if(j){Q+='<div class="ui-datepicker-group';if(g[1]>1)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+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+P+'">'+(/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)+'</div><table class="ui-datepicker-calendar"><thead>'+"<tr>";var R=z?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(var S=0;S<7;S++){var T=(S+y)%7;R+="<th"+((S+y+6)%7>=5?' class="ui-datepicker-week-end"':"")+">"+'<span title="'+A[T]+'">'+C[T]+"</span></th>"}Q+=R+"</tr></thead><tbody>";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<X;Z++){Q+="<tr>";var _=z?'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(Y)+"</td>":"";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&&Y<l||m&&Y>m;_+='<td class="'+((S+y+6)%7>=5?" ui-datepicker-week-end":"")+(bb?" ui-datepicker-other-month":"")+(Y.getTime()==O.getTime()&&n==a.selectedMonth&&a._keyEvent||J.getTime()==Y.getTime()&&J.getTime()==O.getTime()?" "+this._dayOverClass:"")+(bc?" "+this._unselectableClass+" ui-state-disabled":"")+(bb&&!G?"":" "+ba[1]+(Y.getTime()==k.getTime()?" "+this._currentClass:"")+(Y.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!bb||G)&&ba[2]?' title="'+ba[2]+'"':"")+(bc?"":' onclick="DP_jQuery_'+dpuuid+".datepicker._selectDay('#"+a.id+"',"+Y.getMonth()+","+Y.getFullYear()+', this);return false;"')+">"+(bb&&!G?" ":bc?'<span class="ui-state-default">'+Y.getDate()+"</span>":'<a class="ui-state-default'+(Y.getTime()==b.getTime()?" ui-state-highlight":"")+(Y.getTime()==k.getTime()?" ui-state-active":"")+(bb?" ui-priority-secondary":"")+'" href="#">'+Y.getDate()+"</a>")+"</td>",Y.setDate(Y.getDate()+1),Y=this._daylightSavingAdjust(Y)}Q+=_+"</tr>"}n++,n>11&&(n=0,o++),Q+="</tbody></table>"+(j?"</div>"+(g[0]>0&&N==g[1]-1?'<div class="ui-datepicker-row-break"></div>':""):""),M+=Q}K+=M}K+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':""), -a._keyEvent=!1;return 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='<div class="ui-datepicker-title">',m="";if(f||!i)m+='<span class="ui-datepicker-month">'+g[b]+"</span>";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" "+">";for(var p=0;p<12;p++)(!n||p>=d.getMonth())&&(!o||p<=e.getMonth())&&(m+='<option value="'+p+'"'+(p==b?' selected="selected"':"")+">"+h[p]+"</option>");m+="</select>"}k||(l+=m+(f||!i||!j?" ":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+='<span class="ui-datepicker-year">'+c+"</span>";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+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+dpuuid+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" "+">";for(;t<=u;t++)a.yearshtml+='<option value="'+t+'"'+(t==c?' selected="selected"':"")+">"+t+"</option>";a.yearshtml+="</select>",l+=a.yearshtml,a.yearshtml=null}}l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?" ":"")+m),l+="</div>";return 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&&b<c?c:b;e=d&&e>d?d:e;return 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));b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth()));return 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");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{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);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return $.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)})},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.18",window["DP_jQuery_"+dpuuid]=$})(jQuery);/* - * jQuery UI Progressbar 1.8.18 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - */(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("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").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){if(a===b)return this._value();this._setOption("value",a);return 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;typeof a!="number"&&(a=0);return 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.18"})})(jQuery);/* - * jQuery UI Effects 1.8.18 - * - * Copyright 2011, 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/Effects/ - */jQuery.effects||function(a,b){function l(b){if(!b||typeof b=="number"||a.fx.speeds[b])return!0;if(typeof b=="string"&&!a.effects[b])return!0;return!1}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={};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;return[b,c,d,e]}function j(a,b){var c={_:0},d;for(d in b)a[d]!=b[d]&&(c[d]=b[d]);return c}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 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 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 c(b){var c;if(b&&b.constructor==Array&&b.length==3)return b;if(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b))return[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)];if(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b))return[parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55];if(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b))return[parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16)];if(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b))return[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)];if(c=/rgba\(0, 0, 0, 0\)/.exec(b))return e.transparent;return e[a.trim(b).toLowerCase()]}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){a.isFunction(d)&&(e=d,d=null);return 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.18",save:function(a,b){for(var c=0;c<b.length;c++)b[c]!==null&&a.data("ec.storage."+b[c],a[0].style[b[c]])},restore:function(a,b){for(var c=0;c<b.length;c++)b[c]!==null&&a.css(b[c],a.data("ec.storage."+b[c]))},setMode:function(a,b){b=="toggle"&&(b=a.is(":hidden")?"show":"hide");return b},getBaseline:function(a,b){var c,d;switch(a[0]){case"top":c=0;break;case"middle":c=.5;break;case"bottom":c=1;break;default:c=a[0]/b.height}switch(a[1]){case"left":d=0;break;case"center":d=.5;break;case"right":d=1;break;default:d=a[1]/b.width}return{x:d,y:c}},createWrapper:function(b){if(b.parent().is(".ui-effects-wrapper"))return b.parent();var c={width:b.outerWidth(!0),height:b.outerHeight(!0),"float":b.css("float")},d=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e=document.activeElement;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"}));return d.css(c).show()},removeWrapper:function(b){var c,d=document.activeElement;if(b.parent().is(".ui-effects-wrapper")){c=b.parent().replaceWith(b),(b[0]===d||a.contains(b[0],d))&&a(d).focus();return c}return b},setTransition:function(b,c,d,e){e=e||{},a.each(c,function(a,c){unit=b.cssUnit(c),unit[0]>0&&(e[c]=unit[0]*d+unit[1])});return 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];if(a.fx.off||!i)return h?this[h](g.duration,g.callback):this.each(function(){g.callback&&g.callback.call(this)});return 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);b[1].mode="show";return 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);b[1].mode="hide";return 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);c[1].mode="toggle";return this.effect.apply(this,c)},cssUnit:function(b){var c=this.css(b),d=[];a.each(["em","px","%","pt"],function(a,b){c.indexOf(b)>0&&(d=[parseFloat(c),b])});return 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){if((b/=e/2)<1)return d/2*b*b+c;return-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){if((b/=e/2)<1)return d/2*b*b*b+c;return 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){if((b/=e/2)<1)return d/2*b*b*b*b+c;return-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){if((b/=e/2)<1)return d/2*b*b*b*b*b+c;return 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){if(b==0)return c;if(b==e)return c+d;if((b/=e/2)<1)return d/2*Math.pow(2,10*(b-1))+c;return 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){if((b/=e/2)<1)return-d/2*(Math.sqrt(1-b*b)-1)+c;return 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<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g))+c},easeOutElastic: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<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*b)*Math.sin((b*e-f)*2*Math.PI/g)+d+c},easeInOutElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0)return c;if((b/=e/2)==2)return c+d;g||(g=e*.3*1.5);if(h<Math.abs(d)){h=d;var f=g/4}else var f=g/(2*Math.PI)*Math.asin(d/h);if(b<1)return-0.5*h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)+c;return h*Math.pow(2,-10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)*.5+d+c},easeInBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);return e*(c/=f)*c*((g+1)*c-g)+d},easeOutBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);return e*((c=c/f-1)*c*((g+1)*c+g)+1)+d},easeInOutBack:function(a,c,d,e,f,g){g==b&&(g=1.70158);if((c/=f/2)<1)return e/2*c*c*(((g*=1.525)+1)*c-g)+d;return e/2*((c-=2)*c*(((g*=1.525)+1)*c+g)+2)+d},easeInBounce:function(b,c,d,e,f){return e-a.easing.easeOutBounce(b,f-c,0,e,f)+d},easeOutBounce:function(a,b,c,d,e){return(b/=e)<1/2.75?d*7.5625*b*b+c:b<2/2.75?d*(7.5625*(b-=1.5/2.75)*b+.75)+c:b<2.5/2.75?d*(7.5625*(b-=2.25/2.75)*b+.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+.984375)+c},easeInOutBounce:function(b,c,d,e,f){if(c<f/2)return a.easing.easeInBounce(b,c*2,0,e,f)*.5+d;return a.easing.easeOutBounce(b,c*2-f,0,e,f)*.5+e*.5+d}})}(jQuery);/* - * jQuery UI Effects Blind 1.8.18 - * - * Copyright 2011, 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/Effects/Blind - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.blind=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.direction||"vertical";a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=f=="vertical"?"height":"width",i=f=="vertical"?g.height():g.width();e=="show"&&g.css(h,0);var j={};j[h]=e=="show"?i:0,g.animate(j,b.duration,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 Effects Bounce 1.8.18 - * - * Copyright 2011, 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/Effects/Bounce - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.bounce=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"up",g=b.options.distance||20,h=b.options.times||5,i=b.duration||250;/show|hide/.test(e)&&d.push("opacity"),a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",g=b.options.distance||(j=="top"?c.outerHeight({margin:!0})/3:c.outerWidth({margin:!0})/3);e=="show"&&c.css("opacity",0).css(j,k=="pos"?-g:g),e=="hide"&&(g=g/(h*2)),e!="hide"&&h--;if(e=="show"){var l={opacity:1};l[j]=(k=="pos"?"+=":"-=")+g,c.animate(l,i/2,b.options.easing),g=g/2,h--}for(var m=0;m<h;m++){var n={},p={};n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing),g=e=="hide"?g*2:g/2}if(e=="hide"){var l={opacity:0};l[j]=(k=="pos"?"-=":"+=")+g,c.animate(l,i/2,b.options.easing,function(){c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)})}else{var n={},p={};n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)})}c.queue("fx",function(){c.dequeue()}),c.dequeue()})}})(jQuery);/* - * jQuery UI Effects Clip 1.8.18 - * - * Copyright 2011, 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/Effects/Clip - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.clip=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","height","width"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"vertical";a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=c[0].tagName=="IMG"?g:c,i={size:f=="vertical"?"height":"width",position:f=="vertical"?"top":"left"},j=f=="vertical"?h.height():h.width();e=="show"&&(h.css(i.size,0),h.css(i.position,j/2));var k={};k[i.size]=e=="show"?j:0,k[i.position]=e=="show"?0:j/2,h.animate(k,{queue:!1,duration:b.duration,easing:b.options.easing,complete: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 Effects Drop 1.8.18 - * - * Copyright 2011, 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/Effects/Drop - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.drop=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","opacity"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"left";a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0})/2:c.outerWidth({margin:!0})/2);e=="show"&&c.css("opacity",0).css(g,h=="pos"?-i:i);var j={opacity:e=="show"?1:0};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}})(jQuery);/* - * jQuery UI Effects Explode 1.8.18 - * - * Copyright 2011, 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/Effects/Explode - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.explode=function(b){return this.queue(function(){var c=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3,d=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3;b.options.mode=b.options.mode=="toggle"?a(this).is(":visible")?"hide":"show":b.options.mode;var e=a(this).show().css("visibility","hidden"),f=e.offset();f.top-=parseInt(e.css("marginTop"),10)||0,f.left-=parseInt(e.css("marginLeft"),10)||0;var g=e.outerWidth(!0),h=e.outerHeight(!0);for(var i=0;i<c;i++)for(var j=0;j<d;j++)e.clone().appendTo("body").wrap("<div></div>").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 Effects Fade 1.8.18 - * - * Copyright 2011, 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/Effects/Fade - * - * Depends: - * jquery.effects.core.js - */(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 Effects Fold 1.8.18 - * - * Copyright 2011, 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/Effects/Fold - * - * Depends: - * jquery.effects.core.js - */(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 Effects Highlight 1.8.18 - * - * Copyright 2011, 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/Effects/Highlight - * - * Depends: - * jquery.effects.core.js - */(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 Effects Pulsate 1.8.18 - * - * Copyright 2011, 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/Effects/Pulsate - * - * Depends: - * jquery.effects.core.js - */(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");times=(b.options.times||5)*2-1,duration=b.duration?b.duration/2:a.fx.speeds._default/2,isVisible=c.is(":visible"),animateTo=0,isVisible||(c.css("opacity",0).show(),animateTo=1),(d=="hide"&&isVisible||d=="show"&&!isVisible)&×--;for(var e=0;e<times;e++)c.animate({opacity:animateTo},duration,b.options.easing),animateTo=(animateTo+1)%2;c.animate({opacity:animateTo},duration,b.options.easing,function(){animateTo==0&&c.hide(),b.callback&&b.callback.apply(this,arguments)}),c.queue("fx",function(){c.dequeue()}).dequeue()})}})(jQuery);/* - * jQuery UI Effects Scale 1.8.18 - * - * Copyright 2011, 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/Effects/Scale - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.puff=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide"),e=parseInt(b.options.percent,10)||150,f=e/100,g={height:c.height(),width:c.width()};a.extend(b.options,{fade:!0,mode:d,percent:d=="hide"?e:100,from:d=="hide"?g:{height:g.height*f,width:g.width*f}}),c.effect("scale",b.options,b.duration,b.callback),c.dequeue()})},a.effects.scale=function(b){return this.queue(function(){var c=a(this),d=a.extend(!0,{},b.options),e=a.effects.setMode(c,b.options.mode||"effect"),f=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:e=="hide"?0:100),g=b.options.direction||"both",h=b.options.origin;e!="effect"&&(d.origin=h||["middle","center"],d.restore=!0);var i={height:c.height(),width:c.width()};c.from=b.options.from||(e=="show"?{height:0,width:0}:i);var j={y:g!="horizontal"?f/100:1,x:g!="vertical"?f/100:1};c.to={height:i.height*j.y,width:i.width*j.x},b.options.fade&&(e=="show"&&(c.from.opacity=0,c.to.opacity=1),e=="hide"&&(c.from.opacity=1,c.to.opacity=0)),d.from=c.from,d.to=c.to,d.mode=e,c.effect("size",d,b.duration,b.callback),c.dequeue()})},a.effects.size=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","width","height","overflow","opacity"],e=["position","top","bottom","left","right","overflow","opacity"],f=["width","height","overflow"],g=["fontSize"],h=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],i=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],j=a.effects.setMode(c,b.options.mode||"effect"),k=b.options.restore||!1,l=b.options.scale||"both",m=b.options.origin,n={height:c.height(),width:c.width()};c.from=b.options.from||n,c.to=b.options.to||n;if(m){var p=a.effects.getBaseline(m,n);c.from.top=(n.height-c.from.height)*p.y,c.from.left=(n.width-c.from.width)*p.x,c.to.top=(n.height-c.to.height)*p.y,c.to.left=(n.width-c.to.width)*p.x}var q={from:{y:c.from.height/n.height,x:c.from.width/n.width},to:{y:c.to.height/n.height,x:c.to.width/n.width}};if(l=="box"||l=="both")q.from.y!=q.to.y&&(d=d.concat(h),c.from=a.effects.setTransition(c,h,q.from.y,c.from),c.to=a.effects.setTransition(c,h,q.to.y,c.to)),q.from.x!=q.to.x&&(d=d.concat(i),c.from=a.effects.setTransition(c,i,q.from.x,c.from),c.to=a.effects.setTransition(c,i,q.to.x,c.to));(l=="content"||l=="both")&&q.from.y!=q.to.y&&(d=d.concat(g),c.from=a.effects.setTransition(c,g,q.from.y,c.from),c.to=a.effects.setTransition(c,g,q.to.y,c.to)),a.effects.save(c,k?d:e),c.show(),a.effects.createWrapper(c),c.css("overflow","hidden").css(c.from);if(l=="content"||l=="both")h=h.concat(["marginTop","marginBottom"]).concat(g),i=i.concat(["marginLeft","marginRight"]),f=d.concat(h).concat(i),c.find("*[width]").each(function(){child=a(this),k&&a.effects.save(child,f);var c={height:child.height(),width:child.width()};child.from={height:c.height*q.from.y,width:c.width*q.from.x},child.to={height:c.height*q.to.y,width:c.width*q.to.x},q.from.y!=q.to.y&&(child.from=a.effects.setTransition(child,h,q.from.y,child.from),child.to=a.effects.setTransition(child,h,q.to.y,child.to)),q.from.x!=q.to.x&&(child.from=a.effects.setTransition(child,i,q.from.x,child.from),child.to=a.effects.setTransition(child,i,q.to.x,child.to)),child.css(child.from),child.animate(child.to,b.duration,b.options.easing,function(){k&&a.effects.restore(child,f)})});c.animate(c.to,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){c.to.opacity===0&&c.css("opacity",c.from.opacity),j=="hide"&&c.hide(),a.effects.restore(c,k?d:e),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}})(jQuery);/* - * jQuery UI Effects Shake 1.8.18 - * - * Copyright 2011, 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/Effects/Shake - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.shake=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"left",g=b.options.distance||20,h=b.options.times||3,i=b.duration||b.options.duration||140;a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",l={},m={},n={};l[j]=(k=="pos"?"-=":"+=")+g,m[j]=(k=="pos"?"+=":"-=")+g*2,n[j]=(k=="pos"?"-=":"+=")+g*2,c.animate(l,i,b.options.easing);for(var p=1;p<h;p++)c.animate(m,i,b.options.easing).animate(n,i,b.options.easing);c.animate(m,i,b.options.easing).animate(l,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments)}),c.queue("fx",function(){c.dequeue()}),c.dequeue()})}})(jQuery);/* - * jQuery UI Effects Slide 1.8.18 - * - * Copyright 2011, 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/Effects/Slide - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.slide=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"show"),f=b.options.direction||"left";a.effects.save(c,d),c.show(),a.effects.createWrapper(c).css({overflow:"hidden"});var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0}):c.outerWidth({margin:!0}));e=="show"&&c.css(g,h=="pos"?isNaN(i)?"-"+i:-i:i);var j={};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue()}})})}})(jQuery);/* - * jQuery UI Effects Transfer 1.8.18 - * - * Copyright 2011, 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/Effects/Transfer - * - * Depends: - * jquery.effects.core.js - */(function(a,b){a.effects.transfer=function(b){return this.queue(function(){var c=a(this),d=a(b.options.to),e=d.offset(),f={top:e.top,left:e.left,height:d.innerHeight(),width:d.innerWidth()},g=c.offset(),h=a('<div class="ui-effects-transfer"></div>').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/public/admin/stylesheets/admin.css b/public/admin/stylesheets/admin.css deleted file mode 100644 index 9c98ac432..000000000 --- a/public/admin/stylesheets/admin.css +++ /dev/null @@ -1,1005 +0,0 @@ -/* $iconSpritePath: image-url('glyphicons-halflings.png'); -$iconWhiteSpritePath: image-url('glyphicons-halflings-white.png'); */ -/* As we're namespacing bootstrap to class admin, which is applied to the body element in the admin interface (no id or class allowed on the HTML element in HTML 4.01) and to the navbar also, so it can be styled with bootstrap when showing for admin users on the front end, re-apply the bootstrap html and body styles here. -*/ -html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } - -body.admin { margin: 0; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px; color: #333333; background-color: white; } - -/* When the admin stylesheet is loaded (and so the user is seeing the admin navbar), pad the banner of the front end interface so that it isn't hidden, and move any special notice down too. -*/ -.entirebody, #banner { padding-top: 50px; } - -#special-notice { margin-top: 50px; } - -.admin { /* - * Bootstrap v2.2.2 - * - * Copyright 2012 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world @twitter by @mdo and @fat. - */ /* Allow for input prepend/append in search forms */ /* White icons with optional class, or on hover/active states of certain elements */ /* move down carets for tabs */ @-webkit-keyframes progress-bar-stripes { from { background-position: 40px 0; } - to { background-position: 0 0; } } - @-moz-keyframes progress-bar-stripes { from { background-position: 40px 0; } - to { background-position: 0 0; } } - @-ms-keyframes progress-bar-stripes { from { background-position: 40px 0; } - to { background-position: 0 0; } } - @-o-keyframes progress-bar-stripes { from { background-position: 0 0; } - to { background-position: 40px 0; } } - @keyframes progress-bar-stripes { from { background-position: 40px 0; } - to { background-position: 0 0; } } - } -.admin article, .admin aside, .admin details, .admin figcaption, .admin figure, .admin footer, .admin header, .admin hgroup, .admin nav, .admin section { display: block; } -.admin audio, .admin canvas, .admin video { display: inline-block; *display: inline; *zoom: 1; } -.admin audio:not([controls]) { display: none; } -.admin html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } -.admin a:focus { outline: thin dotted #333333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } -.admin a:hover, .admin a:active { outline: 0; } -.admin sub, .admin sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; } -.admin sup { top: -0.5em; } -.admin sub { bottom: -0.25em; } -.admin img { /* Responsive images (ensure images don't scale beyond their parents) */ max-width: 100%; /* Part 1: Set a maxium relative to the parent */ width: auto\9; /* IE7-8 need help adjusting responsive images */ height: auto; /* Part 2: Scale the height according to the width, otherwise you get stretching */ vertical-align: middle; border: 0; -ms-interpolation-mode: bicubic; } -.admin #map_canvas img, .admin .google-maps img { max-width: none; } -.admin button, .admin input, .admin select, .admin textarea { margin: 0; font-size: 100%; vertical-align: middle; } -.admin button, .admin input { *overflow: visible; line-height: normal; } -.admin button::-moz-focus-inner, .admin input::-moz-focus-inner { padding: 0; border: 0; } -.admin button, .admin html input[type="button"], .admin input[type="reset"], .admin input[type="submit"] { -webkit-appearance: button; cursor: pointer; } -.admin label, .admin select, .admin button, .admin input[type="button"], .admin input[type="reset"], .admin input[type="submit"], .admin input[type="radio"], .admin input[type="checkbox"] { cursor: pointer; } -.admin input[type="search"] { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; -webkit-appearance: textfield; } -.admin input[type="search"]::-webkit-search-decoration, .admin input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; } -.admin textarea { overflow: auto; vertical-align: top; } -@media print { .admin { @page { margin: 0.5cm; } - } - .admin * { text-shadow: none !important; color: black !important; background: transparent !important; box-shadow: none !important; } - .admin a, .admin a:visited { text-decoration: underline; } - .admin a[href]:after { content: " (" attr(href) ")"; } - .admin abbr[title]:after { content: " (" attr(title) ")"; } - .admin .ir a:after, .admin a[href^="javascript:"]:after, .admin a[href^="#"]:after { content: ""; } - .admin pre, .admin blockquote { border: 1px solid #999999; page-break-inside: avoid; } - .admin thead { display: table-header-group; } - .admin tr, .admin img { page-break-inside: avoid; } - .admin img { max-width: 100% !important; } - .admin p, .admin h2, .admin h3 { orphans: 3; widows: 3; } - .admin h2, .admin h3 { page-break-after: avoid; } } -.admin body { margin: 0; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px; color: #333333; background-color: white; } -.admin a { color: #0088cc; text-decoration: none; } -.admin a:hover { color: #005580; text-decoration: underline; } -.admin .img-rounded { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; } -.admin .img-polaroid { padding: 4px; background-color: #fff; border: 1px solid #cccccc; border: 1px solid rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); } -.admin .img-circle { -webkit-border-radius: 500px; -moz-border-radius: 500px; border-radius: 500px; } -.admin .row { margin-left: -20px; *zoom: 1; } -.admin .row:before, .admin .row:after { display: table; content: ""; line-height: 0; } -.admin .row:after { clear: both; } -.admin [class*="span"] { float: left; min-height: 1px; margin-left: 20px; } -.admin .container, .admin .navbar-static-top .container, .admin .navbar-fixed-top .container, .admin .navbar-fixed-bottom .container { width: 940px; } -.admin .span12 { width: 940px; } -.admin .span11 { width: 860px; } -.admin .span10 { width: 780px; } -.admin .span9 { width: 700px; } -.admin .span8 { width: 620px; } -.admin .span7 { width: 540px; } -.admin .span6 { width: 460px; } -.admin .span5 { width: 380px; } -.admin .span4 { width: 300px; } -.admin .span3 { width: 220px; } -.admin .span2 { width: 140px; } -.admin .span1 { width: 60px; } -.admin .offset12 { margin-left: 980px; } -.admin .offset11 { margin-left: 900px; } -.admin .offset10 { margin-left: 820px; } -.admin .offset9 { margin-left: 740px; } -.admin .offset8 { margin-left: 660px; } -.admin .offset7 { margin-left: 580px; } -.admin .offset6 { margin-left: 500px; } -.admin .offset5 { margin-left: 420px; } -.admin .offset4 { margin-left: 340px; } -.admin .offset3 { margin-left: 260px; } -.admin .offset2 { margin-left: 180px; } -.admin .offset1 { margin-left: 100px; } -.admin .row-fluid { width: 100%; *zoom: 1; } -.admin .row-fluid:before, .admin .row-fluid:after { display: table; content: ""; line-height: 0; } -.admin .row-fluid:after { clear: both; } -.admin .row-fluid [class*="span"] { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; float: left; margin-left: 2.12766%; *margin-left: 2.07447%; } -.admin .row-fluid [class*="span"]:first-child { margin-left: 0; } -.admin .row-fluid .controls-row [class*="span"] + [class*="span"] { margin-left: 2.12766%; } -.admin .row-fluid .span12 { width: 100%; *width: 99.94681%; } -.admin .row-fluid .span11 { width: 91.48936%; *width: 91.43617%; } -.admin .row-fluid .span10 { width: 82.97872%; *width: 82.92553%; } -.admin .row-fluid .span9 { width: 74.46809%; *width: 74.41489%; } -.admin .row-fluid .span8 { width: 65.95745%; *width: 65.90426%; } -.admin .row-fluid .span7 { width: 57.44681%; *width: 57.39362%; } -.admin .row-fluid .span6 { width: 48.93617%; *width: 48.88298%; } -.admin .row-fluid .span5 { width: 40.42553%; *width: 40.37234%; } -.admin .row-fluid .span4 { width: 31.91489%; *width: 31.8617%; } -.admin .row-fluid .span3 { width: 23.40426%; *width: 23.35106%; } -.admin .row-fluid .span2 { width: 14.89362%; *width: 14.84043%; } -.admin .row-fluid .span1 { width: 6.38298%; *width: 6.32979%; } -.admin .row-fluid .offset12 { margin-left: 104.25532%; *margin-left: 104.14894%; } -.admin .row-fluid .offset12:first-child { margin-left: 102.12766%; *margin-left: 102.02128%; } -.admin .row-fluid .offset11 { margin-left: 95.74468%; *margin-left: 95.6383%; } -.admin .row-fluid .offset11:first-child { margin-left: 93.61702%; *margin-left: 93.51064%; } -.admin .row-fluid .offset10 { margin-left: 87.23404%; *margin-left: 87.12766%; } -.admin .row-fluid .offset10:first-child { margin-left: 85.10638%; *margin-left: 85.0%; } -.admin .row-fluid .offset9 { margin-left: 78.7234%; *margin-left: 78.61702%; } -.admin .row-fluid .offset9:first-child { margin-left: 76.59574%; *margin-left: 76.48936%; } -.admin .row-fluid .offset8 { margin-left: 70.21277%; *margin-left: 70.10638%; } -.admin .row-fluid .offset8:first-child { margin-left: 68.08511%; *margin-left: 67.97872%; } -.admin .row-fluid .offset7 { margin-left: 61.70213%; *margin-left: 61.59574%; } -.admin .row-fluid .offset7:first-child { margin-left: 59.57447%; *margin-left: 59.46809%; } -.admin .row-fluid .offset6 { margin-left: 53.19149%; *margin-left: 53.08511%; } -.admin .row-fluid .offset6:first-child { margin-left: 51.06383%; *margin-left: 50.95745%; } -.admin .row-fluid .offset5 { margin-left: 44.68085%; *margin-left: 44.57447%; } -.admin .row-fluid .offset5:first-child { margin-left: 42.55319%; *margin-left: 42.44681%; } -.admin .row-fluid .offset4 { margin-left: 36.17021%; *margin-left: 36.06383%; } -.admin .row-fluid .offset4:first-child { margin-left: 34.04255%; *margin-left: 33.93617%; } -.admin .row-fluid .offset3 { margin-left: 27.65957%; *margin-left: 27.55319%; } -.admin .row-fluid .offset3:first-child { margin-left: 25.53191%; *margin-left: 25.42553%; } -.admin .row-fluid .offset2 { margin-left: 19.14894%; *margin-left: 19.04255%; } -.admin .row-fluid .offset2:first-child { margin-left: 17.02128%; *margin-left: 16.91489%; } -.admin .row-fluid .offset1 { margin-left: 10.6383%; *margin-left: 10.53191%; } -.admin .row-fluid .offset1:first-child { margin-left: 8.51064%; *margin-left: 8.40426%; } -.admin [class*="span"].hide, .admin .row-fluid [class*="span"].hide { display: none; } -.admin [class*="span"].pull-right, .admin .row-fluid [class*="span"].pull-right { float: right; } -.admin .container { margin-right: auto; margin-left: auto; *zoom: 1; } -.admin .container:before, .admin .container:after { display: table; content: ""; line-height: 0; } -.admin .container:after { clear: both; } -.admin .container-fluid { padding-right: 20px; padding-left: 20px; *zoom: 1; } -.admin .container-fluid:before, .admin .container-fluid:after { display: table; content: ""; line-height: 0; } -.admin .container-fluid:after { clear: both; } -.admin p { margin: 0 0 10px; } -.admin .lead { margin-bottom: 20px; font-size: 21px; font-weight: 200; line-height: 30px; } -.admin small { font-size: 85%; } -.admin strong { font-weight: bold; } -.admin em { font-style: italic; } -.admin cite { font-style: normal; } -.admin .muted { color: #999999; } -.admin a.muted:hover { color: gray; } -.admin .text-warning { color: #c09853; } -.admin a.text-warning:hover { color: #a47e3c; } -.admin .text-error { color: #b94a48; } -.admin a.text-error:hover { color: #953b39; } -.admin .text-info { color: #3a87ad; } -.admin a.text-info:hover { color: #2d6987; } -.admin .text-success { color: #468847; } -.admin a.text-success:hover { color: #356635; } -.admin h1, .admin h2, .admin h3, .admin h4, .admin h5, .admin h6 { margin: 10px 0; font-family: inherit; font-weight: bold; line-height: 20px; color: inherit; text-rendering: optimizelegibility; } -.admin h1 small, .admin h2 small, .admin h3 small, .admin h4 small, .admin h5 small, .admin h6 small { font-weight: normal; line-height: 1; color: #999999; } -.admin h1, .admin h2, .admin h3 { line-height: 40px; } -.admin h1 { font-size: 38.5px; } -.admin h2 { font-size: 31.5px; } -.admin h3 { font-size: 24.5px; } -.admin h4 { font-size: 17.5px; } -.admin h5 { font-size: 14px; } -.admin h6 { font-size: 11.9px; } -.admin h1 small { font-size: 24.5px; } -.admin h2 small { font-size: 17.5px; } -.admin h3 small { font-size: 14px; } -.admin h4 small { font-size: 14px; } -.admin .page-header { padding-bottom: 9px; margin: 20px 0 30px; border-bottom: 1px solid #eeeeee; } -.admin ul, .admin ol { padding: 0; margin: 0 0 10px 25px; } -.admin ul ul, .admin ul ol, .admin ol ol, .admin ol ul { margin-bottom: 0; } -.admin li { line-height: 20px; } -.admin ul.unstyled, .admin ol.unstyled { margin-left: 0; list-style: none; } -.admin ul.inline, .admin ol.inline { margin-left: 0; list-style: none; } -.admin ul.inline > li, .admin ol.inline > li { display: inline-block; padding-left: 5px; padding-right: 5px; } -.admin dl { margin-bottom: 20px; } -.admin dt, .admin dd { line-height: 20px; } -.admin dt { font-weight: bold; } -.admin dd { margin-left: 10px; } -.admin .dl-horizontal { *zoom: 1; } -.admin .dl-horizontal:before, .admin .dl-horizontal:after { display: table; content: ""; line-height: 0; } -.admin .dl-horizontal:after { clear: both; } -.admin .dl-horizontal dt { float: left; width: 160px; clear: left; text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } -.admin .dl-horizontal dd { margin-left: 180px; } -.admin hr { margin: 20px 0; border: 0; border-top: 1px solid #eeeeee; border-bottom: 1px solid white; } -.admin abbr[title], .admin abbr[data-original-title] { cursor: help; border-bottom: 1px dotted #999999; } -.admin abbr.initialism { font-size: 90%; text-transform: uppercase; } -.admin blockquote { padding: 0 0 0 15px; margin: 0 0 20px; border-left: 5px solid #eeeeee; } -.admin blockquote p { margin-bottom: 0; font-size: 16px; font-weight: 300; line-height: 25px; } -.admin blockquote small { display: block; line-height: 20px; color: #999999; } -.admin blockquote small:before { content: '\2014 \00A0'; } -.admin blockquote.pull-right { float: right; padding-right: 15px; padding-left: 0; border-right: 5px solid #eeeeee; border-left: 0; } -.admin blockquote.pull-right p, .admin blockquote.pull-right small { text-align: right; } -.admin blockquote.pull-right small:before { content: ''; } -.admin blockquote.pull-right small:after { content: '\00A0 \2014'; } -.admin q:before, .admin q:after, .admin blockquote:before, .admin blockquote:after { content: ""; } -.admin address { display: block; margin-bottom: 20px; font-style: normal; line-height: 20px; } -.admin code, .admin pre { padding: 0 3px 2px; font-family: Monaco, Menlo, Consolas, "Courier New", monospace; font-size: 12px; color: #333333; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } -.admin code { padding: 2px 4px; color: #d14; background-color: #f7f7f9; border: 1px solid #e1e1e8; white-space: nowrap; } -.admin pre { display: block; padding: 9.5px; margin: 0 0 10px; font-size: 13px; line-height: 20px; word-break: break-all; word-wrap: break-word; white-space: pre; white-space: pre-wrap; background-color: #f5f5f5; border: 1px solid #cccccc; border: 1px solid rgba(0, 0, 0, 0.15); -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin pre.prettyprint { margin-bottom: 20px; } -.admin pre code { padding: 0; color: inherit; white-space: pre; white-space: pre-wrap; background-color: transparent; border: 0; } -.admin .pre-scrollable { max-height: 340px; overflow-y: scroll; } -.admin form { margin: 0 0 20px; } -.admin fieldset { padding: 0; margin: 0; border: 0; } -.admin legend { display: block; width: 100%; padding: 0; margin-bottom: 20px; font-size: 21px; line-height: 40px; color: #333333; border: 0; border-bottom: 1px solid #e5e5e5; } -.admin legend small { font-size: 15px; color: #999999; } -.admin label, .admin input, .admin button, .admin select, .admin textarea { font-size: 14px; font-weight: normal; line-height: 20px; } -.admin input, .admin button, .admin select, .admin textarea { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; } -.admin label { display: block; margin-bottom: 5px; } -.admin select, .admin textarea, .admin input[type="text"], .admin input[type="password"], .admin input[type="datetime"], .admin input[type="datetime-local"], .admin input[type="date"], .admin input[type="month"], .admin input[type="time"], .admin input[type="week"], .admin input[type="number"], .admin input[type="email"], .admin input[type="url"], .admin input[type="search"], .admin input[type="tel"], .admin input[type="color"], .admin .uneditable-input { display: inline-block; height: 20px; padding: 4px 6px; margin-bottom: 10px; font-size: 14px; line-height: 20px; color: #555555; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; vertical-align: middle; } -.admin input, .admin textarea, .admin .uneditable-input { width: 206px; } -.admin textarea { height: auto; } -.admin textarea, .admin input[type="text"], .admin input[type="password"], .admin input[type="datetime"], .admin input[type="datetime-local"], .admin input[type="date"], .admin input[type="month"], .admin input[type="time"], .admin input[type="week"], .admin input[type="number"], .admin input[type="email"], .admin input[type="url"], .admin input[type="search"], .admin input[type="tel"], .admin input[type="color"], .admin .uneditable-input { background-color: white; border: 1px solid #cccccc; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; -moz-transition: border linear 0.2s, box-shadow linear 0.2s; -o-transition: border linear 0.2s, box-shadow linear 0.2s; transition: border linear 0.2s, box-shadow linear 0.2s; } -.admin textarea:focus, .admin input[type="text"]:focus, .admin input[type="password"]:focus, .admin input[type="datetime"]:focus, .admin input[type="datetime-local"]:focus, .admin input[type="date"]:focus, .admin input[type="month"]:focus, .admin input[type="time"]:focus, .admin input[type="week"]:focus, .admin input[type="number"]:focus, .admin input[type="email"]:focus, .admin input[type="url"]:focus, .admin input[type="search"]:focus, .admin input[type="tel"]:focus, .admin input[type="color"]:focus, .admin .uneditable-input:focus { border-color: rgba(82, 168, 236, 0.8); outline: 0; outline: thin dotted \9; /* IE6-9 */ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); } -.admin input[type="radio"], .admin input[type="checkbox"] { margin: 4px 0 0; *margin-top: 0; /* IE7 */ margin-top: 1px \9; /* IE8-9 */ line-height: normal; } -.admin input[type="file"], .admin input[type="image"], .admin input[type="submit"], .admin input[type="reset"], .admin input[type="button"], .admin input[type="radio"], .admin input[type="checkbox"] { width: auto; } -.admin select, .admin input[type="file"] { height: 30px; /* In IE7, the height of the select element cannot be changed by height, only font-size */ *margin-top: 4px; /* For IE7, add top margin to align select with labels */ line-height: 30px; } -.admin select { width: 220px; border: 1px solid #cccccc; background-color: white; } -.admin select[multiple], .admin select[size] { height: auto; } -.admin select:focus, .admin input[type="file"]:focus, .admin input[type="radio"]:focus, .admin input[type="checkbox"]:focus { outline: thin dotted #333333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } -.admin .uneditable-input, .admin .uneditable-textarea { color: #999999; background-color: #fcfcfc; border-color: #cccccc; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); cursor: not-allowed; } -.admin .uneditable-input { overflow: hidden; white-space: nowrap; } -.admin .uneditable-textarea { width: auto; height: auto; } -.admin input:-moz-placeholder, .admin textarea:-moz-placeholder { color: #999999; } -.admin input:-ms-input-placeholder, .admin textarea:-ms-input-placeholder { color: #999999; } -.admin input::-webkit-input-placeholder, .admin textarea::-webkit-input-placeholder { color: #999999; } -.admin .radio, .admin .checkbox { min-height: 20px; padding-left: 20px; } -.admin .radio input[type="radio"], .admin .checkbox input[type="checkbox"] { float: left; margin-left: -20px; } -.admin .controls > .radio:first-child, .admin .controls > .checkbox:first-child { padding-top: 5px; } -.admin .radio.inline, .admin .checkbox.inline { display: inline-block; padding-top: 5px; margin-bottom: 0; vertical-align: middle; } -.admin .radio.inline + .radio.inline, .admin .checkbox.inline + .checkbox.inline { margin-left: 10px; } -.admin .input-mini { width: 60px; } -.admin .input-small { width: 90px; } -.admin .input-medium { width: 150px; } -.admin .input-large { width: 210px; } -.admin .input-xlarge { width: 270px; } -.admin .input-xxlarge { width: 530px; } -.admin input[class*="span"], .admin select[class*="span"], .admin textarea[class*="span"], .admin .uneditable-input[class*="span"], .admin .row-fluid input[class*="span"], .admin .row-fluid select[class*="span"], .admin .row-fluid textarea[class*="span"], .admin .row-fluid .uneditable-input[class*="span"] { float: none; margin-left: 0; } -.admin .input-append input[class*="span"], .admin .input-append .uneditable-input[class*="span"], .admin .input-prepend input[class*="span"], .admin .input-prepend .uneditable-input[class*="span"], .admin .row-fluid input[class*="span"], .admin .row-fluid select[class*="span"], .admin .row-fluid textarea[class*="span"], .admin .row-fluid .uneditable-input[class*="span"], .admin .row-fluid .input-prepend [class*="span"], .admin .row-fluid .input-append [class*="span"] { display: inline-block; } -.admin input, .admin textarea, .admin .uneditable-input { margin-left: 0; } -.admin .controls-row [class*="span"] + [class*="span"] { margin-left: 20px; } -.admin input.span12, .admin textarea.span12, .admin .uneditable-input.span12 { width: 926px; } -.admin input.span11, .admin textarea.span11, .admin .uneditable-input.span11 { width: 846px; } -.admin input.span10, .admin textarea.span10, .admin .uneditable-input.span10 { width: 766px; } -.admin input.span9, .admin textarea.span9, .admin .uneditable-input.span9 { width: 686px; } -.admin input.span8, .admin textarea.span8, .admin .uneditable-input.span8 { width: 606px; } -.admin input.span7, .admin textarea.span7, .admin .uneditable-input.span7 { width: 526px; } -.admin input.span6, .admin textarea.span6, .admin .uneditable-input.span6 { width: 446px; } -.admin input.span5, .admin textarea.span5, .admin .uneditable-input.span5 { width: 366px; } -.admin input.span4, .admin textarea.span4, .admin .uneditable-input.span4 { width: 286px; } -.admin input.span3, .admin textarea.span3, .admin .uneditable-input.span3 { width: 206px; } -.admin input.span2, .admin textarea.span2, .admin .uneditable-input.span2 { width: 126px; } -.admin input.span1, .admin textarea.span1, .admin .uneditable-input.span1 { width: 46px; } -.admin .controls-row { *zoom: 1; } -.admin .controls-row:before, .admin .controls-row:after { display: table; content: ""; line-height: 0; } -.admin .controls-row:after { clear: both; } -.admin .controls-row [class*="span"], .admin .row-fluid .controls-row [class*="span"] { float: left; } -.admin .controls-row .checkbox[class*="span"], .admin .controls-row .radio[class*="span"] { padding-top: 5px; } -.admin input[disabled], .admin select[disabled], .admin textarea[disabled], .admin input[readonly], .admin select[readonly], .admin textarea[readonly] { cursor: not-allowed; background-color: #eeeeee; } -.admin input[type="radio"][disabled], .admin input[type="checkbox"][disabled], .admin input[type="radio"][readonly], .admin input[type="checkbox"][readonly] { background-color: transparent; } -.admin .control-group.warning .control-label, .admin .control-group.warning .help-block, .admin .control-group.warning .help-inline { color: #c09853; } -.admin .control-group.warning .checkbox, .admin .control-group.warning .radio, .admin .control-group.warning input, .admin .control-group.warning select, .admin .control-group.warning textarea { color: #c09853; } -.admin .control-group.warning input, .admin .control-group.warning select, .admin .control-group.warning textarea { border-color: #c09853; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } -.admin .control-group.warning input:focus, .admin .control-group.warning select:focus, .admin .control-group.warning textarea:focus { border-color: #a47e3c; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; } -.admin .control-group.warning .input-prepend .add-on, .admin .control-group.warning .input-append .add-on { color: #c09853; background-color: #fcf8e3; border-color: #c09853; } -.admin .control-group.error .control-label, .admin .control-group.error .help-block, .admin .control-group.error .help-inline { color: #b94a48; } -.admin .control-group.error .checkbox, .admin .control-group.error .radio, .admin .control-group.error input, .admin .control-group.error select, .admin .control-group.error textarea { color: #b94a48; } -.admin .control-group.error input, .admin .control-group.error select, .admin .control-group.error textarea { border-color: #b94a48; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } -.admin .control-group.error input:focus, .admin .control-group.error select:focus, .admin .control-group.error textarea:focus { border-color: #953b39; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; } -.admin .control-group.error .input-prepend .add-on, .admin .control-group.error .input-append .add-on { color: #b94a48; background-color: #f2dede; border-color: #b94a48; } -.admin .control-group.success .control-label, .admin .control-group.success .help-block, .admin .control-group.success .help-inline { color: #468847; } -.admin .control-group.success .checkbox, .admin .control-group.success .radio, .admin .control-group.success input, .admin .control-group.success select, .admin .control-group.success textarea { color: #468847; } -.admin .control-group.success input, .admin .control-group.success select, .admin .control-group.success textarea { border-color: #468847; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } -.admin .control-group.success input:focus, .admin .control-group.success select:focus, .admin .control-group.success textarea:focus { border-color: #356635; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; } -.admin .control-group.success .input-prepend .add-on, .admin .control-group.success .input-append .add-on { color: #468847; background-color: #dff0d8; border-color: #468847; } -.admin .control-group.info .control-label, .admin .control-group.info .help-block, .admin .control-group.info .help-inline { color: #3a87ad; } -.admin .control-group.info .checkbox, .admin .control-group.info .radio, .admin .control-group.info input, .admin .control-group.info select, .admin .control-group.info textarea { color: #3a87ad; } -.admin .control-group.info input, .admin .control-group.info select, .admin .control-group.info textarea { border-color: #3a87ad; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); } -.admin .control-group.info input:focus, .admin .control-group.info select:focus, .admin .control-group.info textarea:focus { border-color: #2d6987; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; } -.admin .control-group.info .input-prepend .add-on, .admin .control-group.info .input-append .add-on { color: #3a87ad; background-color: #d9edf7; border-color: #3a87ad; } -.admin input:focus:invalid, .admin textarea:focus:invalid, .admin select:focus:invalid { color: #b94a48; border-color: #ee5f5b; } -.admin input:focus:invalid:focus, .admin textarea:focus:invalid:focus, .admin select:focus:invalid:focus { border-color: #e9322d; -webkit-box-shadow: 0 0 6px #f8b9b7; -moz-box-shadow: 0 0 6px #f8b9b7; box-shadow: 0 0 6px #f8b9b7; } -.admin .form-actions { padding: 19px 20px 20px; margin-top: 20px; margin-bottom: 20px; background-color: whitesmoke; border-top: 1px solid #e5e5e5; *zoom: 1; } -.admin .form-actions:before, .admin .form-actions:after { display: table; content: ""; line-height: 0; } -.admin .form-actions:after { clear: both; } -.admin .help-block, .admin .help-inline { color: #595959; } -.admin .help-block { display: block; margin-bottom: 10px; } -.admin .help-inline { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; vertical-align: middle; padding-left: 5px; } -.admin .input-append, .admin .input-prepend { margin-bottom: 5px; font-size: 0; white-space: nowrap; } -.admin .input-append input, .admin .input-append select, .admin .input-append .uneditable-input, .admin .input-append .dropdown-menu, .admin .input-prepend input, .admin .input-prepend select, .admin .input-prepend .uneditable-input, .admin .input-prepend .dropdown-menu { font-size: 14px; } -.admin .input-append input, .admin .input-append select, .admin .input-append .uneditable-input, .admin .input-prepend input, .admin .input-prepend select, .admin .input-prepend .uneditable-input { position: relative; margin-bottom: 0; *margin-left: 0; vertical-align: top; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .input-append input:focus, .admin .input-append select:focus, .admin .input-append .uneditable-input:focus, .admin .input-prepend input:focus, .admin .input-prepend select:focus, .admin .input-prepend .uneditable-input:focus { z-index: 2; } -.admin .input-append .add-on, .admin .input-prepend .add-on { display: inline-block; width: auto; height: 20px; min-width: 16px; padding: 4px 5px; font-size: 14px; font-weight: normal; line-height: 20px; text-align: center; text-shadow: 0 1px 0 white; background-color: #eeeeee; border: 1px solid #cccccc; } -.admin .input-append .add-on, .admin .input-append .btn, .admin .input-append .btn-group > .dropdown-toggle, .admin .input-prepend .add-on, .admin .input-prepend .btn, .admin .input-prepend .btn-group > .dropdown-toggle { vertical-align: top; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .input-append .active, .admin .input-prepend .active { background-color: #a9dba9; border-color: #46a546; } -.admin .input-prepend .add-on, .admin .input-prepend .btn { margin-right: -1px; } -.admin .input-prepend .add-on:first-child, .admin .input-prepend .btn:first-child { -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px; } -.admin .input-append input, .admin .input-append select, .admin .input-append .uneditable-input { -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px; } -.admin .input-append input + .btn-group .btn:last-child, .admin .input-append select + .btn-group .btn:last-child, .admin .input-append .uneditable-input + .btn-group .btn:last-child { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .input-append .add-on, .admin .input-append .btn, .admin .input-append .btn-group { margin-left: -1px; } -.admin .input-append .add-on:last-child, .admin .input-append .btn:last-child, .admin .input-append .btn-group:last-child > .dropdown-toggle { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .input-prepend.input-append input, .admin .input-prepend.input-append select, .admin .input-prepend.input-append .uneditable-input { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .input-prepend.input-append input + .btn-group .btn, .admin .input-prepend.input-append select + .btn-group .btn, .admin .input-prepend.input-append .uneditable-input + .btn-group .btn { -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .input-prepend.input-append .add-on:first-child, .admin .input-prepend.input-append .btn:first-child { margin-right: -1px; -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px; } -.admin .input-prepend.input-append .add-on:last-child, .admin .input-prepend.input-append .btn:last-child { margin-left: -1px; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .input-prepend.input-append .btn-group:first-child { margin-left: 0; } -.admin input.search-query { padding-right: 14px; padding-right: 4px \9; padding-left: 14px; padding-left: 4px \9; /* IE7-8 doesn't have border-radius, so don't indent the padding */ margin-bottom: 0; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; } -.admin .form-search .input-append .search-query, .admin .form-search .input-prepend .search-query { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .form-search .input-append .search-query { -webkit-border-radius: 14px 0 0 14px; -moz-border-radius: 14px 0 0 14px; border-radius: 14px 0 0 14px; } -.admin .form-search .input-append .btn { -webkit-border-radius: 0 14px 14px 0; -moz-border-radius: 0 14px 14px 0; border-radius: 0 14px 14px 0; } -.admin .form-search .input-prepend .search-query { -webkit-border-radius: 0 14px 14px 0; -moz-border-radius: 0 14px 14px 0; border-radius: 0 14px 14px 0; } -.admin .form-search .input-prepend .btn { -webkit-border-radius: 14px 0 0 14px; -moz-border-radius: 14px 0 0 14px; border-radius: 14px 0 0 14px; } -.admin .form-search input, .admin .form-search textarea, .admin .form-search select, .admin .form-search .help-inline, .admin .form-search .uneditable-input, .admin .form-search .input-prepend, .admin .form-search .input-append, .admin .form-inline input, .admin .form-inline textarea, .admin .form-inline select, .admin .form-inline .help-inline, .admin .form-inline .uneditable-input, .admin .form-inline .input-prepend, .admin .form-inline .input-append, .admin .form-horizontal input, .admin .form-horizontal textarea, .admin .form-horizontal select, .admin .form-horizontal .help-inline, .admin .form-horizontal .uneditable-input, .admin .form-horizontal .input-prepend, .admin .form-horizontal .input-append { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; margin-bottom: 0; vertical-align: middle; } -.admin .form-search .hide, .admin .form-inline .hide, .admin .form-horizontal .hide { display: none; } -.admin .form-search label, .admin .form-inline label, .admin .form-search .btn-group, .admin .form-inline .btn-group { display: inline-block; } -.admin .form-search .input-append, .admin .form-inline .input-append, .admin .form-search .input-prepend, .admin .form-inline .input-prepend { margin-bottom: 0; } -.admin .form-search .radio, .admin .form-search .checkbox, .admin .form-inline .radio, .admin .form-inline .checkbox { padding-left: 0; margin-bottom: 0; vertical-align: middle; } -.admin .form-search .radio input[type="radio"], .admin .form-search .checkbox input[type="checkbox"], .admin .form-inline .radio input[type="radio"], .admin .form-inline .checkbox input[type="checkbox"] { float: left; margin-right: 3px; margin-left: 0; } -.admin .control-group { margin-bottom: 10px; } -.admin legend + .control-group { margin-top: 20px; -webkit-margin-top-collapse: separate; } -.admin .form-horizontal .control-group { margin-bottom: 20px; *zoom: 1; } -.admin .form-horizontal .control-group:before, .admin .form-horizontal .control-group:after { display: table; content: ""; line-height: 0; } -.admin .form-horizontal .control-group:after { clear: both; } -.admin .form-horizontal .control-label { float: left; width: 160px; padding-top: 5px; text-align: right; } -.admin .form-horizontal .controls { *display: inline-block; *padding-left: 20px; margin-left: 180px; *margin-left: 0; } -.admin .form-horizontal .controls:first-child { *padding-left: 180px; } -.admin .form-horizontal .help-block { margin-bottom: 0; } -.admin .form-horizontal input + .help-block, .admin .form-horizontal select + .help-block, .admin .form-horizontal textarea + .help-block, .admin .form-horizontal .uneditable-input + .help-block, .admin .form-horizontal .input-prepend + .help-block, .admin .form-horizontal .input-append + .help-block { margin-top: 10px; } -.admin .form-horizontal .form-actions { padding-left: 180px; } -.admin table { max-width: 100%; background-color: transparent; border-collapse: collapse; border-spacing: 0; } -.admin .table { width: 100%; margin-bottom: 20px; } -.admin .table th, .admin .table td { padding: 8px; line-height: 20px; text-align: left; vertical-align: top; border-top: 1px solid #dddddd; } -.admin .table th { font-weight: bold; } -.admin .table thead th { vertical-align: bottom; } -.admin .table caption + thead tr:first-child th, .admin .table caption + thead tr:first-child td, .admin .table colgroup + thead tr:first-child th, .admin .table colgroup + thead tr:first-child td, .admin .table thead:first-child tr:first-child th, .admin .table thead:first-child tr:first-child td { border-top: 0; } -.admin .table tbody + tbody { border-top: 2px solid #dddddd; } -.admin .table .table { background-color: white; } -.admin .table-condensed th, .admin .table-condensed td { padding: 4px 5px; } -.admin .table-bordered { border: 1px solid #dddddd; border-collapse: separate; *border-collapse: collapse; border-left: 0; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .table-bordered th, .admin .table-bordered td { border-left: 1px solid #dddddd; } -.admin .table-bordered caption + thead tr:first-child th, .admin .table-bordered caption + tbody tr:first-child th, .admin .table-bordered caption + tbody tr:first-child td, .admin .table-bordered colgroup + thead tr:first-child th, .admin .table-bordered colgroup + tbody tr:first-child th, .admin .table-bordered colgroup + tbody tr:first-child td, .admin .table-bordered thead:first-child tr:first-child th, .admin .table-bordered tbody:first-child tr:first-child th, .admin .table-bordered tbody:first-child tr:first-child td { border-top: 0; } -.admin .table-bordered thead:first-child tr:first-child > th:first-child, .admin .table-bordered tbody:first-child tr:first-child > td:first-child { -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; } -.admin .table-bordered thead:first-child tr:first-child > th:last-child, .admin .table-bordered tbody:first-child tr:first-child > td:last-child { -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; } -.admin .table-bordered thead:last-child tr:last-child > th:first-child, .admin .table-bordered tbody:last-child tr:last-child > td:first-child, .admin .table-bordered tfoot:last-child tr:last-child > td:first-child { -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-left-radius: 4px; } -.admin .table-bordered thead:last-child tr:last-child > th:last-child, .admin .table-bordered tbody:last-child tr:last-child > td:last-child, .admin .table-bordered tfoot:last-child tr:last-child > td:last-child { -webkit-border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; border-bottom-right-radius: 4px; } -.admin .table-bordered tfoot + tbody:last-child tr:last-child td:first-child { -webkit-border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0; border-bottom-left-radius: 0; } -.admin .table-bordered tfoot + tbody:last-child tr:last-child td:last-child { -webkit-border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0; border-bottom-right-radius: 0; } -.admin .table-bordered caption + thead tr:first-child th:first-child, .admin .table-bordered caption + tbody tr:first-child td:first-child, .admin .table-bordered colgroup + thead tr:first-child th:first-child, .admin .table-bordered colgroup + tbody tr:first-child td:first-child { -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; } -.admin .table-bordered caption + thead tr:first-child th:last-child, .admin .table-bordered caption + tbody tr:first-child td:last-child, .admin .table-bordered colgroup + thead tr:first-child th:last-child, .admin .table-bordered colgroup + tbody tr:first-child td:last-child { -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; } -.admin .table-striped tbody > tr:nth-child(odd) > td, .admin .table-striped tbody > tr:nth-child(odd) > th { background-color: #f9f9f9; } -.admin .table-hover tbody tr:hover td, .admin .table-hover tbody tr:hover th { background-color: whitesmoke; } -.admin table td[class*="span"], .admin table th[class*="span"], .admin .row-fluid table td[class*="span"], .admin .row-fluid table th[class*="span"] { display: table-cell; float: none; margin-left: 0; } -.admin .table td.span1, .admin .table th.span1 { float: none; width: 44px; margin-left: 0; } -.admin .table td.span2, .admin .table th.span2 { float: none; width: 124px; margin-left: 0; } -.admin .table td.span3, .admin .table th.span3 { float: none; width: 204px; margin-left: 0; } -.admin .table td.span4, .admin .table th.span4 { float: none; width: 284px; margin-left: 0; } -.admin .table td.span5, .admin .table th.span5 { float: none; width: 364px; margin-left: 0; } -.admin .table td.span6, .admin .table th.span6 { float: none; width: 444px; margin-left: 0; } -.admin .table td.span7, .admin .table th.span7 { float: none; width: 524px; margin-left: 0; } -.admin .table td.span8, .admin .table th.span8 { float: none; width: 604px; margin-left: 0; } -.admin .table td.span9, .admin .table th.span9 { float: none; width: 684px; margin-left: 0; } -.admin .table td.span10, .admin .table th.span10 { float: none; width: 764px; margin-left: 0; } -.admin .table td.span11, .admin .table th.span11 { float: none; width: 844px; margin-left: 0; } -.admin .table td.span12, .admin .table th.span12 { float: none; width: 924px; margin-left: 0; } -.admin .table tbody tr.success td { background-color: #dff0d8; } -.admin .table tbody tr.error td { background-color: #f2dede; } -.admin .table tbody tr.warning td { background-color: #fcf8e3; } -.admin .table tbody tr.info td { background-color: #d9edf7; } -.admin .table-hover tbody tr.success:hover td { background-color: #d0e9c6; } -.admin .table-hover tbody tr.error:hover td { background-color: #ebcccc; } -.admin .table-hover tbody tr.warning:hover td { background-color: #faf2cc; } -.admin .table-hover tbody tr.info:hover td { background-color: #c4e3f3; } -.admin [class^="icon-"], .admin [class*=" icon-"] { display: inline-block; width: 14px; height: 14px; *margin-right: .3em; line-height: 14px; vertical-align: text-top; background-image: url(../images/glyphicons-halflings.png?1361243119); background-position: 14px 14px; background-repeat: no-repeat; margin-top: 1px; } -.admin .icon-white, .admin .nav-pills > .active > a > [class^="icon-"], .admin .nav-pills > .active > a > [class*=" icon-"], .admin .nav-list > .active > a > [class^="icon-"], .admin .nav-list > .active > a > [class*=" icon-"], .admin .navbar-inverse .nav > .active > a > [class^="icon-"], .admin .navbar-inverse .nav > .active > a > [class*=" icon-"], .admin .dropdown-menu > li > a:hover > [class^="icon-"], .admin .dropdown-menu > li > a:hover > [class*=" icon-"], .admin .dropdown-menu > .active > a > [class^="icon-"], .admin .dropdown-menu > .active > a > [class*=" icon-"], .admin .dropdown-submenu:hover > a > [class^="icon-"], .admin .dropdown-submenu:hover > a > [class*=" icon-"] { background-image: url(../images/glyphicons-halflings-white.png?1361243119); } -.admin .icon-glass { background-position: 0 0; } -.admin .icon-music { background-position: -24px 0; } -.admin .icon-search { background-position: -48px 0; } -.admin .icon-envelope { background-position: -72px 0; } -.admin .icon-heart { background-position: -96px 0; } -.admin .icon-star { background-position: -120px 0; } -.admin .icon-star-empty { background-position: -144px 0; } -.admin .icon-user { background-position: -168px 0; } -.admin .icon-film { background-position: -192px 0; } -.admin .icon-th-large { background-position: -216px 0; } -.admin .icon-th { background-position: -240px 0; } -.admin .icon-th-list { background-position: -264px 0; } -.admin .icon-ok { background-position: -288px 0; } -.admin .icon-remove { background-position: -312px 0; } -.admin .icon-zoom-in { background-position: -336px 0; } -.admin .icon-zoom-out { background-position: -360px 0; } -.admin .icon-off { background-position: -384px 0; } -.admin .icon-signal { background-position: -408px 0; } -.admin .icon-cog { background-position: -432px 0; } -.admin .icon-trash { background-position: -456px 0; } -.admin .icon-home { background-position: 0 -24px; } -.admin .icon-file { background-position: -24px -24px; } -.admin .icon-time { background-position: -48px -24px; } -.admin .icon-road { background-position: -72px -24px; } -.admin .icon-download-alt { background-position: -96px -24px; } -.admin .icon-download { background-position: -120px -24px; } -.admin .icon-upload { background-position: -144px -24px; } -.admin .icon-inbox { background-position: -168px -24px; } -.admin .icon-play-circle { background-position: -192px -24px; } -.admin .icon-repeat { background-position: -216px -24px; } -.admin .icon-refresh { background-position: -240px -24px; } -.admin .icon-list-alt { background-position: -264px -24px; } -.admin .icon-lock { background-position: -287px -24px; } -.admin .icon-flag { background-position: -312px -24px; } -.admin .icon-headphones { background-position: -336px -24px; } -.admin .icon-volume-off { background-position: -360px -24px; } -.admin .icon-volume-down { background-position: -384px -24px; } -.admin .icon-volume-up { background-position: -408px -24px; } -.admin .icon-qrcode { background-position: -432px -24px; } -.admin .icon-barcode { background-position: -456px -24px; } -.admin .icon-tag { background-position: 0 -48px; } -.admin .icon-tags { background-position: -25px -48px; } -.admin .icon-book { background-position: -48px -48px; } -.admin .icon-bookmark { background-position: -72px -48px; } -.admin .icon-print { background-position: -96px -48px; } -.admin .icon-camera { background-position: -120px -48px; } -.admin .icon-font { background-position: -144px -48px; } -.admin .icon-bold { background-position: -167px -48px; } -.admin .icon-italic { background-position: -192px -48px; } -.admin .icon-text-height { background-position: -216px -48px; } -.admin .icon-text-width { background-position: -240px -48px; } -.admin .icon-align-left { background-position: -264px -48px; } -.admin .icon-align-center { background-position: -288px -48px; } -.admin .icon-align-right { background-position: -312px -48px; } -.admin .icon-align-justify { background-position: -336px -48px; } -.admin .icon-list { background-position: -360px -48px; } -.admin .icon-indent-left { background-position: -384px -48px; } -.admin .icon-indent-right { background-position: -408px -48px; } -.admin .icon-facetime-video { background-position: -432px -48px; } -.admin .icon-picture { background-position: -456px -48px; } -.admin .icon-pencil { background-position: 0 -72px; } -.admin .icon-map-marker { background-position: -24px -72px; } -.admin .icon-adjust { background-position: -48px -72px; } -.admin .icon-tint { background-position: -72px -72px; } -.admin .icon-edit { background-position: -96px -72px; } -.admin .icon-share { background-position: -120px -72px; } -.admin .icon-check { background-position: -144px -72px; } -.admin .icon-move { background-position: -168px -72px; } -.admin .icon-step-backward { background-position: -192px -72px; } -.admin .icon-fast-backward { background-position: -216px -72px; } -.admin .icon-backward { background-position: -240px -72px; } -.admin .icon-play { background-position: -264px -72px; } -.admin .icon-pause { background-position: -288px -72px; } -.admin .icon-stop { background-position: -312px -72px; } -.admin .icon-forward { background-position: -336px -72px; } -.admin .icon-fast-forward { background-position: -360px -72px; } -.admin .icon-step-forward { background-position: -384px -72px; } -.admin .icon-eject { background-position: -408px -72px; } -.admin .icon-chevron-left { background-position: -432px -72px; } -.admin .icon-chevron-right { background-position: -456px -72px; } -.admin .icon-plus-sign { background-position: 0 -96px; } -.admin .icon-minus-sign { background-position: -24px -96px; } -.admin .icon-remove-sign { background-position: -48px -96px; } -.admin .icon-ok-sign { background-position: -72px -96px; } -.admin .icon-question-sign { background-position: -96px -96px; } -.admin .icon-info-sign { background-position: -120px -96px; } -.admin .icon-screenshot { background-position: -144px -96px; } -.admin .icon-remove-circle { background-position: -168px -96px; } -.admin .icon-ok-circle { background-position: -192px -96px; } -.admin .icon-ban-circle { background-position: -216px -96px; } -.admin .icon-arrow-left { background-position: -240px -96px; } -.admin .icon-arrow-right { background-position: -264px -96px; } -.admin .icon-arrow-up { background-position: -289px -96px; } -.admin .icon-arrow-down { background-position: -312px -96px; } -.admin .icon-share-alt { background-position: -336px -96px; } -.admin .icon-resize-full { background-position: -360px -96px; } -.admin .icon-resize-small { background-position: -384px -96px; } -.admin .icon-plus { background-position: -408px -96px; } -.admin .icon-minus { background-position: -433px -96px; } -.admin .icon-asterisk { background-position: -456px -96px; } -.admin .icon-exclamation-sign { background-position: 0 -120px; } -.admin .icon-gift { background-position: -24px -120px; } -.admin .icon-leaf { background-position: -48px -120px; } -.admin .icon-fire { background-position: -72px -120px; } -.admin .icon-eye-open { background-position: -96px -120px; } -.admin .icon-eye-close { background-position: -120px -120px; } -.admin .icon-warning-sign { background-position: -144px -120px; } -.admin .icon-plane { background-position: -168px -120px; } -.admin .icon-calendar { background-position: -192px -120px; } -.admin .icon-random { background-position: -216px -120px; width: 16px; } -.admin .icon-comment { background-position: -240px -120px; } -.admin .icon-magnet { background-position: -264px -120px; } -.admin .icon-chevron-up { background-position: -288px -120px; } -.admin .icon-chevron-down { background-position: -313px -119px; } -.admin .icon-retweet { background-position: -336px -120px; } -.admin .icon-shopping-cart { background-position: -360px -120px; } -.admin .icon-folder-close { background-position: -384px -120px; } -.admin .icon-folder-open { background-position: -408px -120px; width: 16px; } -.admin .icon-resize-vertical { background-position: -432px -119px; } -.admin .icon-resize-horizontal { background-position: -456px -118px; } -.admin .icon-hdd { background-position: 0 -144px; } -.admin .icon-bullhorn { background-position: -24px -144px; } -.admin .icon-bell { background-position: -48px -144px; } -.admin .icon-certificate { background-position: -72px -144px; } -.admin .icon-thumbs-up { background-position: -96px -144px; } -.admin .icon-thumbs-down { background-position: -120px -144px; } -.admin .icon-hand-right { background-position: -144px -144px; } -.admin .icon-hand-left { background-position: -168px -144px; } -.admin .icon-hand-up { background-position: -192px -144px; } -.admin .icon-hand-down { background-position: -216px -144px; } -.admin .icon-circle-arrow-right { background-position: -240px -144px; } -.admin .icon-circle-arrow-left { background-position: -264px -144px; } -.admin .icon-circle-arrow-up { background-position: -288px -144px; } -.admin .icon-circle-arrow-down { background-position: -312px -144px; } -.admin .icon-globe { background-position: -336px -144px; } -.admin .icon-wrench { background-position: -360px -144px; } -.admin .icon-tasks { background-position: -384px -144px; } -.admin .icon-filter { background-position: -408px -144px; } -.admin .icon-briefcase { background-position: -432px -144px; } -.admin .icon-fullscreen { background-position: -456px -144px; } -.admin .dropup, .admin .dropdown { position: relative; } -.admin .dropdown-toggle { *margin-bottom: -3px; } -.admin .dropdown-toggle:active, .admin .open .dropdown-toggle { outline: 0; } -.admin .caret { display: inline-block; width: 0; height: 0; vertical-align: top; border-top: 4px solid black; border-right: 4px solid transparent; border-left: 4px solid transparent; content: ""; } -.admin .dropdown .caret { margin-top: 8px; margin-left: 2px; } -.admin .dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0; margin: 2px 0 0; list-style: none; background-color: white; border: 1px solid #cccccc; border: 1px solid rgba(0, 0, 0, 0.2); *border-right-width: 2px; *border-bottom-width: 2px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -webkit-background-clip: padding-box; -moz-background-clip: padding; background-clip: padding-box; } -.admin .dropdown-menu.pull-right { right: 0; left: auto; } -.admin .dropdown-menu .divider { *width: 100%; height: 1px; margin: 9px 1px; *margin: -5px 0 5px; overflow: hidden; background-color: #e5e5e5; border-bottom: 1px solid white; } -.admin .dropdown-menu li > a { display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 20px; color: #333333; white-space: nowrap; } -.admin .dropdown-menu li > a:hover, .admin .dropdown-menu li > a:focus, .admin .dropdown-submenu:hover > a { text-decoration: none; color: white; background-color: #0081c2; background-image: -moz-linear-gradient(top, #0088cc, #0077b3); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); background-image: -o-linear-gradient(top, #0088cc, #0077b3); background-image: linear-gradient(to bottom, #0088cc, #0077b3); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF0088CC', endColorstr='#FF0077B3', GradientType=0); } -.admin .dropdown-menu .active > a, .admin .dropdown-menu .active > a:hover { color: #333333; text-decoration: none; outline: 0; background-color: #0081c2; background-image: -moz-linear-gradient(top, #0088cc, #0077b3); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); background-image: -o-linear-gradient(top, #0088cc, #0077b3); background-image: linear-gradient(to bottom, #0088cc, #0077b3); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF0088CC', endColorstr='#FF0077B3', GradientType=0); } -.admin .dropdown-menu .disabled > a, .admin .dropdown-menu .disabled > a:hover { color: #999999; } -.admin .dropdown-menu .disabled > a:hover { text-decoration: none; background-color: transparent; background-image: none; filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); cursor: default; } -.admin .open { *z-index: 1000; } -.admin .open > .dropdown-menu { display: block; } -.admin .pull-right > .dropdown-menu { right: 0; left: auto; } -.admin .dropup .caret, .admin .navbar-fixed-bottom .dropdown .caret { border-top: 0; border-bottom: 4px solid black; content: ""; } -.admin .dropup .dropdown-menu, .admin .navbar-fixed-bottom .dropdown .dropdown-menu { top: auto; bottom: 100%; margin-bottom: 1px; } -.admin .dropdown-submenu { position: relative; } -.admin .dropdown-submenu > .dropdown-menu { top: 0; left: 100%; margin-top: -6px; margin-left: -1px; -webkit-border-radius: 0 6px 6px 6px; -moz-border-radius: 0 6px 6px 6px; border-radius: 0 6px 6px 6px; } -.admin .dropdown-submenu:hover > .dropdown-menu { display: block; } -.admin .dropup .dropdown-submenu > .dropdown-menu { top: auto; bottom: 0; margin-top: 0; margin-bottom: -2px; -webkit-border-radius: 5px 5px 5px 0; -moz-border-radius: 5px 5px 5px 0; border-radius: 5px 5px 5px 0; } -.admin .dropdown-submenu > a:after { display: block; content: " "; float: right; width: 0; height: 0; border-color: transparent; border-style: solid; border-width: 5px 0 5px 5px; border-left-color: #cccccc; margin-top: 5px; margin-right: -10px; } -.admin .dropdown-submenu:hover > a:after { border-left-color: white; } -.admin .dropdown-submenu.pull-left { float: none; } -.admin .dropdown-submenu.pull-left > .dropdown-menu { left: -100%; margin-left: 10px; -webkit-border-radius: 6px 0 6px 6px; -moz-border-radius: 6px 0 6px 6px; border-radius: 6px 0 6px 6px; } -.admin .dropdown .dropdown-menu .nav-header { padding-left: 20px; padding-right: 20px; } -.admin .typeahead { z-index: 1051; margin-top: 2px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .well { min-height: 20px; padding: 19px; margin-bottom: 20px; background-color: whitesmoke; border: 1px solid #e3e3e3; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); } -.admin .well blockquote { border-color: #ddd; border-color: rgba(0, 0, 0, 0.15); } -.admin .well-large { padding: 24px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; } -.admin .well-small { padding: 9px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } -.admin .fade { opacity: 0; -webkit-transition: opacity 0.15s linear; -moz-transition: opacity 0.15s linear; -o-transition: opacity 0.15s linear; transition: opacity 0.15s linear; } -.admin .fade.in { opacity: 1; } -.admin .collapse { position: relative; height: 0; overflow: hidden; -webkit-transition: height 0.35s ease; -moz-transition: height 0.35s ease; -o-transition: height 0.35s ease; transition: height 0.35s ease; } -.admin .collapse.in { height: auto; } -.admin .close { float: right; font-size: 20px; font-weight: bold; line-height: 20px; color: black; text-shadow: 0 1px 0 white; opacity: 0.2; filter: alpha(opacity=20); } -.admin .close:hover { color: black; text-decoration: none; cursor: pointer; opacity: 0.4; filter: alpha(opacity=40); } -.admin button.close { padding: 0; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; } -.admin .btn { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; padding: 4px 12px; margin-bottom: 0; font-size: 14px; line-height: 20px; text-align: center; vertical-align: middle; cursor: pointer; color: #333333; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); background-color: whitesmoke; background-image: -moz-linear-gradient(top, white, #e6e6e6); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), to(#e6e6e6)); background-image: -webkit-linear-gradient(top, white, #e6e6e6); background-image: -o-linear-gradient(top, white, #e6e6e6); background-image: linear-gradient(to bottom, #ffffff, #e6e6e6); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFE6E6E6', GradientType=0); border-color: #e6e6e6 #e6e6e6 #bfbfbf; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #e6e6e6; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); border: 1px solid #bbbbbb; *border: 0; border-bottom-color: #a2a2a2; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; *margin-left: .3em; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); } -.admin .btn:hover, .admin .btn:active, .admin .btn.active, .admin .btn.disabled, .admin .btn[disabled] { color: #333333; background-color: #e6e6e6; *background-color: #d9d9d9; } -.admin .btn:active, .admin .btn.active { background-color: #cccccc \9; } -.admin .btn:first-child { *margin-left: 0; } -.admin .btn:hover { color: #333333; text-decoration: none; background-position: 0 -15px; -webkit-transition: background-position 0.1s linear; -moz-transition: background-position 0.1s linear; -o-transition: background-position 0.1s linear; transition: background-position 0.1s linear; } -.admin .btn:focus { outline: thin dotted #333333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } -.admin .btn.active, .admin .btn:active { background-image: none; outline: 0; -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); } -.admin .btn.disabled, .admin .btn[disabled] { cursor: default; background-image: none; opacity: 0.65; filter: alpha(opacity=65); -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; } -.admin .btn-large { padding: 11px 19px; font-size: 17.5px; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; } -.admin .btn-large [class^="icon-"], .admin .btn-large [class*=" icon-"] { margin-top: 4px; } -.admin .btn-small { padding: 2px 10px; font-size: 11.9px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } -.admin .btn-small [class^="icon-"], .admin .btn-small [class*=" icon-"] { margin-top: 0; } -.admin .btn-mini [class^="icon-"], .admin .btn-mini [class*=" icon-"] { margin-top: -1px; } -.admin .btn-mini { padding: 0px 6px; font-size: 10.5px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } -.admin .btn-block { display: block; width: 100%; padding-left: 0; padding-right: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } -.admin .btn-block + .btn-block { margin-top: 5px; } -.admin input[type="submit"].btn-block, .admin input[type="reset"].btn-block, .admin input[type="button"].btn-block { width: 100%; } -.admin .btn-primary.active, .admin .btn-warning.active, .admin .btn-danger.active, .admin .btn-success.active, .admin .btn-info.active, .admin .btn-inverse.active { color: rgba(255, 255, 255, 0.75); } -.admin .btn { border-color: #c5c5c5; border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25); } -.admin .btn-primary { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #006ccc; background-image: -moz-linear-gradient(top, #0088cc, #0044cc); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); background-image: -o-linear-gradient(top, #0088cc, #0044cc); background-image: linear-gradient(to bottom, #0088cc, #0044cc); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF0088CC', endColorstr='#FF0044CC', GradientType=0); border-color: #0044cc #0044cc #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #0044cc; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-primary:hover, .admin .btn-primary:active, .admin .btn-primary.active, .admin .btn-primary.disabled, .admin .btn-primary[disabled] { color: white; background-color: #0044cc; *background-color: #003bb3; } -.admin .btn-primary:active, .admin .btn-primary.active { background-color: #003399 \9; } -.admin .btn-warning { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #f9a732; background-image: -moz-linear-gradient(top, #fbb450, #f89406); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); background-image: -webkit-linear-gradient(top, #fbb450, #f89406); background-image: -o-linear-gradient(top, #fbb450, #f89406); background-image: linear-gradient(to bottom, #fbb450, #f89406); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFBB450', endColorstr='#FFF89406', GradientType=0); border-color: #f89406 #f89406 #ad6704; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #f89406; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-warning:hover, .admin .btn-warning:active, .admin .btn-warning.active, .admin .btn-warning.disabled, .admin .btn-warning[disabled] { color: white; background-color: #f89406; *background-color: #df8505; } -.admin .btn-warning:active, .admin .btn-warning.active { background-color: #c67605 \9; } -.admin .btn-danger { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #da4e49; background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f)); background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f); background-image: -o-linear-gradient(top, #ee5f5b, #bd362f); background-image: linear-gradient(to bottom, #ee5f5b, #bd362f); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEE5F5B', endColorstr='#FFBD362F', GradientType=0); border-color: #bd362f #bd362f #802420; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #bd362f; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-danger:hover, .admin .btn-danger:active, .admin .btn-danger.active, .admin .btn-danger.disabled, .admin .btn-danger[disabled] { color: white; background-color: #bd362f; *background-color: #a9302a; } -.admin .btn-danger:active, .admin .btn-danger.active { background-color: #942a25 \9; } -.admin .btn-success { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #5bb65b; background-image: -moz-linear-gradient(top, #62c462, #51a351); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351)); background-image: -webkit-linear-gradient(top, #62c462, #51a351); background-image: -o-linear-gradient(top, #62c462, #51a351); background-image: linear-gradient(to bottom, #62c462, #51a351); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF62C462', endColorstr='#FF51A351', GradientType=0); border-color: #51a351 #51a351 #387038; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #51a351; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-success:hover, .admin .btn-success:active, .admin .btn-success.active, .admin .btn-success.disabled, .admin .btn-success[disabled] { color: white; background-color: #51a351; *background-color: #499249; } -.admin .btn-success:active, .admin .btn-success.active { background-color: #408140 \9; } -.admin .btn-info { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #49afcd; background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4)); background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4); background-image: -o-linear-gradient(top, #5bc0de, #2f96b4); background-image: linear-gradient(to bottom, #5bc0de, #2f96b4); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5BC0DE', endColorstr='#FF2F96B4', GradientType=0); border-color: #2f96b4 #2f96b4 #1f6377; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #2f96b4; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-info:hover, .admin .btn-info:active, .admin .btn-info.active, .admin .btn-info.disabled, .admin .btn-info[disabled] { color: white; background-color: #2f96b4; *background-color: #2a85a0; } -.admin .btn-info:active, .admin .btn-info.active { background-color: #24748c \9; } -.admin .btn-inverse { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #363636; background-image: -moz-linear-gradient(top, #444444, #222222); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222)); background-image: -webkit-linear-gradient(top, #444444, #222222); background-image: -o-linear-gradient(top, #444444, #222222); background-image: linear-gradient(to bottom, #444444, #222222); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF444444', endColorstr='#FF222222', GradientType=0); border-color: #222222 #222222 black; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #222222; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .btn-inverse:hover, .admin .btn-inverse:active, .admin .btn-inverse.active, .admin .btn-inverse.disabled, .admin .btn-inverse[disabled] { color: white; background-color: #222222; *background-color: #151515; } -.admin .btn-inverse:active, .admin .btn-inverse.active { background-color: #090909 \9; } -.admin button.btn, .admin input[type="submit"].btn { *padding-top: 3px; *padding-bottom: 3px; } -.admin button.btn::-moz-focus-inner, .admin input[type="submit"].btn::-moz-focus-inner { padding: 0; border: 0; } -.admin button.btn.btn-large, .admin input[type="submit"].btn.btn-large { *padding-top: 7px; *padding-bottom: 7px; } -.admin button.btn.btn-small, .admin input[type="submit"].btn.btn-small { *padding-top: 3px; *padding-bottom: 3px; } -.admin button.btn.btn-mini, .admin input[type="submit"].btn.btn-mini { *padding-top: 1px; *padding-bottom: 1px; } -.admin .btn-link, .admin .btn-link:active, .admin .btn-link[disabled] { background-color: transparent; background-image: none; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; } -.admin .btn-link { border-color: transparent; cursor: pointer; color: #0088cc; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .btn-link:hover { color: #005580; text-decoration: underline; background-color: transparent; } -.admin .btn-link[disabled]:hover { color: #333333; text-decoration: none; } -.admin .btn-group { position: relative; display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; font-size: 0; vertical-align: middle; white-space: nowrap; *margin-left: .3em; } -.admin .btn-group:first-child { *margin-left: 0; } -.admin .btn-group + .btn-group { margin-left: 5px; } -.admin .btn-toolbar { font-size: 0; margin-top: 10px; margin-bottom: 10px; } -.admin .btn-toolbar > .btn + .btn, .admin .btn-toolbar > .btn-group + .btn, .admin .btn-toolbar > .btn + .btn-group { margin-left: 5px; } -.admin .btn-group > .btn { position: relative; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .btn-group > .btn + .btn { margin-left: -1px; } -.admin .btn-group > .btn, .admin .btn-group > .dropdown-menu, .admin .btn-group > .popover { font-size: 14px; } -.admin .btn-group > .btn-mini { font-size: 10.5px; } -.admin .btn-group > .btn-small { font-size: 11.9px; } -.admin .btn-group > .btn-large { font-size: 17.5px; } -.admin .btn-group > .btn:first-child { margin-left: 0; -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-left-radius: 4px; } -.admin .btn-group > .btn:last-child, .admin .btn-group > .dropdown-toggle { -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; border-bottom-right-radius: 4px; } -.admin .btn-group > .btn.large:first-child { margin-left: 0; -webkit-border-top-left-radius: 6px; -moz-border-radius-topleft: 6px; border-top-left-radius: 6px; -webkit-border-bottom-left-radius: 6px; -moz-border-radius-bottomleft: 6px; border-bottom-left-radius: 6px; } -.admin .btn-group > .btn.large:last-child, .admin .btn-group > .large.dropdown-toggle { -webkit-border-top-right-radius: 6px; -moz-border-radius-topright: 6px; border-top-right-radius: 6px; -webkit-border-bottom-right-radius: 6px; -moz-border-radius-bottomright: 6px; border-bottom-right-radius: 6px; } -.admin .btn-group > .btn:hover, .admin .btn-group > .btn:focus, .admin .btn-group > .btn:active, .admin .btn-group > .btn.active { z-index: 2; } -.admin .btn-group .dropdown-toggle:active, .admin .btn-group.open .dropdown-toggle { outline: 0; } -.admin .btn-group > .btn + .dropdown-toggle { padding-left: 8px; padding-right: 8px; -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); *padding-top: 5px; *padding-bottom: 5px; } -.admin .btn-group > .btn-mini + .dropdown-toggle { padding-left: 5px; padding-right: 5px; *padding-top: 2px; *padding-bottom: 2px; } -.admin .btn-group > .btn-small + .dropdown-toggle { *padding-top: 5px; *padding-bottom: 4px; } -.admin .btn-group > .btn-large + .dropdown-toggle { padding-left: 12px; padding-right: 12px; *padding-top: 7px; *padding-bottom: 7px; } -.admin .btn-group.open .dropdown-toggle { background-image: none; -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); } -.admin .btn-group.open .btn.dropdown-toggle { background-color: #e6e6e6; } -.admin .btn-group.open .btn-primary.dropdown-toggle { background-color: #0044cc; } -.admin .btn-group.open .btn-warning.dropdown-toggle { background-color: #f89406; } -.admin .btn-group.open .btn-danger.dropdown-toggle { background-color: #bd362f; } -.admin .btn-group.open .btn-success.dropdown-toggle { background-color: #51a351; } -.admin .btn-group.open .btn-info.dropdown-toggle { background-color: #2f96b4; } -.admin .btn-group.open .btn-inverse.dropdown-toggle { background-color: #222222; } -.admin .btn .caret { margin-top: 8px; margin-left: 0; } -.admin .btn-mini .caret, .admin .btn-small .caret, .admin .btn-large .caret { margin-top: 6px; } -.admin .btn-large .caret { border-left-width: 5px; border-right-width: 5px; border-top-width: 5px; } -.admin .dropup .btn-large .caret { border-bottom-width: 5px; } -.admin .btn-primary .caret, .admin .btn-warning .caret, .admin .btn-danger .caret, .admin .btn-info .caret, .admin .btn-success .caret, .admin .btn-inverse .caret { border-top-color: white; border-bottom-color: white; } -.admin .btn-group-vertical { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; } -.admin .btn-group-vertical > .btn { display: block; float: none; max-width: 100%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .btn-group-vertical > .btn + .btn { margin-left: 0; margin-top: -1px; } -.admin .btn-group-vertical > .btn:first-child { -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0; } -.admin .btn-group-vertical > .btn:last-child { -webkit-border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; border-radius: 0 0 4px 4px; } -.admin .btn-group-vertical > .btn-large:first-child { -webkit-border-radius: 6px 6px 0 0; -moz-border-radius: 6px 6px 0 0; border-radius: 6px 6px 0 0; } -.admin .btn-group-vertical > .btn-large:last-child { -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px; } -.admin .alert { padding: 8px 35px 8px 14px; margin-bottom: 20px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); background-color: #fcf8e3; border: 1px solid #fbeed5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .alert, .admin .alert h4 { color: #c09853; } -.admin .alert h4 { margin: 0; } -.admin .alert .close { position: relative; top: -2px; right: -21px; line-height: 20px; } -.admin .alert-success { background-color: #dff0d8; border-color: #d6e9c6; color: #468847; } -.admin .alert-success h4 { color: #468847; } -.admin .alert-danger, .admin .alert-error { background-color: #f2dede; border-color: #eed3d7; color: #b94a48; } -.admin .alert-danger h4, .admin .alert-error h4 { color: #b94a48; } -.admin .alert-info { background-color: #d9edf7; border-color: #bce8f1; color: #3a87ad; } -.admin .alert-info h4 { color: #3a87ad; } -.admin .alert-block { padding-top: 14px; padding-bottom: 14px; } -.admin .alert-block > p, .admin .alert-block > ul { margin-bottom: 0; } -.admin .alert-block p + p { margin-top: 5px; } -.admin .nav { margin-left: 0; margin-bottom: 20px; list-style: none; } -.admin .nav > li > a { display: block; } -.admin .nav > li > a:hover { text-decoration: none; background-color: #eeeeee; } -.admin .nav > li > a > img { max-width: none; } -.admin .nav > .pull-right { float: right; } -.admin .nav-header { display: block; padding: 3px 15px; font-size: 11px; font-weight: bold; line-height: 20px; color: #999999; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); text-transform: uppercase; } -.admin .nav li + .nav-header { margin-top: 9px; } -.admin .nav-list { padding-left: 15px; padding-right: 15px; margin-bottom: 0; } -.admin .nav-list > li > a, .admin .nav-list .nav-header { margin-left: -15px; margin-right: -15px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); } -.admin .nav-list > li > a { padding: 3px 15px; } -.admin .nav-list > .active > a, .admin .nav-list > .active > a:hover { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); background-color: #0088cc; } -.admin .nav-list [class^="icon-"], .admin .nav-list [class*=" icon-"] { margin-right: 2px; } -.admin .nav-list .divider { *width: 100%; height: 1px; margin: 9px 1px; *margin: -5px 0 5px; overflow: hidden; background-color: #e5e5e5; border-bottom: 1px solid white; } -.admin .nav-tabs, .admin .nav-pills { *zoom: 1; } -.admin .nav-tabs:before, .admin .nav-tabs:after, .admin .nav-pills:before, .admin .nav-pills:after { display: table; content: ""; line-height: 0; } -.admin .nav-tabs:after, .admin .nav-pills:after { clear: both; } -.admin .nav-tabs > li, .admin .nav-pills > li { float: left; } -.admin .nav-tabs > li > a, .admin .nav-pills > li > a { padding-right: 12px; padding-left: 12px; margin-right: 2px; line-height: 14px; } -.admin .nav-tabs { border-bottom: 1px solid #dddddd; } -.admin .nav-tabs > li { margin-bottom: -1px; } -.admin .nav-tabs > li > a { padding-top: 8px; padding-bottom: 8px; line-height: 20px; border: 1px solid transparent; -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0; } -.admin .nav-tabs > li > a:hover { border-color: #eeeeee #eeeeee #dddddd; } -.admin .nav-tabs > .active > a, .admin .nav-tabs > .active > a:hover { color: #555555; background-color: white; border: 1px solid #dddddd; border-bottom-color: transparent; cursor: default; } -.admin .nav-pills > li > a { padding-top: 8px; padding-bottom: 8px; margin-top: 2px; margin-bottom: 2px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; } -.admin .nav-pills > .active > a, .admin .nav-pills > .active > a:hover { color: white; background-color: #0088cc; } -.admin .nav-stacked > li { float: none; } -.admin .nav-stacked > li > a { margin-right: 0; } -.admin .nav-tabs.nav-stacked { border-bottom: 0; } -.admin .nav-tabs.nav-stacked > li > a { border: 1px solid #dddddd; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .nav-tabs.nav-stacked > li:first-child > a { -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; } -.admin .nav-tabs.nav-stacked > li:last-child > a { -webkit-border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-left-radius: 4px; } -.admin .nav-tabs.nav-stacked > li > a:hover { border-color: #ddd; z-index: 2; } -.admin .nav-pills.nav-stacked > li > a { margin-bottom: 3px; } -.admin .nav-pills.nav-stacked > li:last-child > a { margin-bottom: 1px; } -.admin .nav-tabs .dropdown-menu { -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px; } -.admin .nav-pills .dropdown-menu { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; } -.admin .nav .dropdown-toggle .caret { border-top-color: #0088cc; border-bottom-color: #0088cc; margin-top: 6px; } -.admin .nav .dropdown-toggle:hover .caret { border-top-color: #005580; border-bottom-color: #005580; } -.admin .nav-tabs .dropdown-toggle .caret { margin-top: 8px; } -.admin .nav .active .dropdown-toggle .caret { border-top-color: #fff; border-bottom-color: #fff; } -.admin .nav-tabs .active .dropdown-toggle .caret { border-top-color: #555555; border-bottom-color: #555555; } -.admin .nav > .dropdown.active > a:hover { cursor: pointer; } -.admin .nav-tabs .open .dropdown-toggle, .admin .nav-pills .open .dropdown-toggle, .admin .nav > li.dropdown.open.active > a:hover { color: white; background-color: #999999; border-color: #999999; } -.admin .nav li.dropdown.open .caret, .admin .nav li.dropdown.open.active .caret, .admin .nav li.dropdown.open a:hover .caret { border-top-color: white; border-bottom-color: white; opacity: 1; filter: alpha(opacity=100); } -.admin .tabs-stacked .open > a:hover { border-color: #999999; } -.admin .tabbable { *zoom: 1; } -.admin .tabbable:before, .admin .tabbable:after { display: table; content: ""; line-height: 0; } -.admin .tabbable:after { clear: both; } -.admin .tab-content { overflow: auto; } -.admin .tabs-below > .nav-tabs, .admin .tabs-right > .nav-tabs, .admin .tabs-left > .nav-tabs { border-bottom: 0; } -.admin .tab-content > .tab-pane, .admin .pill-content > .pill-pane { display: none; } -.admin .tab-content > .active, .admin .pill-content > .active { display: block; } -.admin .tabs-below > .nav-tabs { border-top: 1px solid #dddddd; } -.admin .tabs-below > .nav-tabs > li { margin-top: -1px; margin-bottom: 0; } -.admin .tabs-below > .nav-tabs > li > a { -webkit-border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; border-radius: 0 0 4px 4px; } -.admin .tabs-below > .nav-tabs > li > a:hover { border-bottom-color: transparent; border-top-color: #ddd; } -.admin .tabs-below > .nav-tabs > .active > a, .admin .tabs-below > .nav-tabs > .active > a:hover { border-color: transparent #dddddd #dddddd #dddddd; } -.admin .tabs-left > .nav-tabs > li, .admin .tabs-right > .nav-tabs > li { float: none; } -.admin .tabs-left > .nav-tabs > li > a, .admin .tabs-right > .nav-tabs > li > a { min-width: 74px; margin-right: 0; margin-bottom: 3px; } -.admin .tabs-left > .nav-tabs { float: left; margin-right: 19px; border-right: 1px solid #dddddd; } -.admin .tabs-left > .nav-tabs > li > a { margin-right: -1px; -webkit-border-radius: 4px 0 0 4px; -moz-border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px; } -.admin .tabs-left > .nav-tabs > li > a:hover { border-color: #eeeeee #dddddd #eeeeee #eeeeee; } -.admin .tabs-left > .nav-tabs .active > a, .admin .tabs-left > .nav-tabs .active > a:hover { border-color: #dddddd transparent #dddddd #dddddd; *border-right-color: white; } -.admin .tabs-right > .nav-tabs { float: right; margin-left: 19px; border-left: 1px solid #dddddd; } -.admin .tabs-right > .nav-tabs > li > a { margin-left: -1px; -webkit-border-radius: 0 4px 4px 0; -moz-border-radius: 0 4px 4px 0; border-radius: 0 4px 4px 0; } -.admin .tabs-right > .nav-tabs > li > a:hover { border-color: #eeeeee #eeeeee #eeeeee #dddddd; } -.admin .tabs-right > .nav-tabs .active > a, .admin .tabs-right > .nav-tabs .active > a:hover { border-color: #dddddd #dddddd #dddddd transparent; *border-left-color: white; } -.admin .nav > .disabled > a { color: #999999; } -.admin .nav > .disabled > a:hover { text-decoration: none; background-color: transparent; cursor: default; } -.admin .navbar { overflow: visible; margin-bottom: 20px; *position: relative; *z-index: 2; } -.admin .navbar-inner { min-height: 40px; padding-left: 20px; padding-right: 20px; background-color: #f9f9f9; background-image: -moz-linear-gradient(top, white, #f2f2f2); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), to(#f2f2f2)); background-image: -webkit-linear-gradient(top, white, #f2f2f2); background-image: -o-linear-gradient(top, white, #f2f2f2); background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFF2F2F2', GradientType=0); border: 1px solid #d4d4d4; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); *zoom: 1; } -.admin .navbar-inner:before, .admin .navbar-inner:after { display: table; content: ""; line-height: 0; } -.admin .navbar-inner:after { clear: both; } -.admin .navbar .container { width: auto; } -.admin .nav-collapse.collapse { height: auto; overflow: visible; } -.admin .navbar .brand { float: left; display: block; padding: 10px 20px 10px; margin-left: -20px; font-size: 20px; font-weight: 200; color: #777777; text-shadow: 0 1px 0 white; } -.admin .navbar .brand:hover { text-decoration: none; } -.admin .navbar-text { margin-bottom: 0; line-height: 40px; color: #777777; } -.admin .navbar-link { color: #777777; } -.admin .navbar-link:hover { color: #333333; } -.admin .navbar .divider-vertical { height: 40px; margin: 0 9px; border-left: 1px solid #f2f2f2; border-right: 1px solid white; } -.admin .navbar .btn, .admin .navbar .btn-group { margin-top: 5px; } -.admin .navbar .btn-group .btn, .admin .navbar .input-prepend .btn, .admin .navbar .input-append .btn { margin-top: 0; } -.admin .navbar-form { margin-bottom: 0; *zoom: 1; } -.admin .navbar-form:before, .admin .navbar-form:after { display: table; content: ""; line-height: 0; } -.admin .navbar-form:after { clear: both; } -.admin .navbar-form input, .admin .navbar-form select, .admin .navbar-form .radio, .admin .navbar-form .checkbox { margin-top: 5px; } -.admin .navbar-form input, .admin .navbar-form select, .admin .navbar-form .btn { display: inline-block; margin-bottom: 0; } -.admin .navbar-form input[type="image"], .admin .navbar-form input[type="checkbox"], .admin .navbar-form input[type="radio"] { margin-top: 3px; } -.admin .navbar-form .input-append, .admin .navbar-form .input-prepend { margin-top: 5px; white-space: nowrap; } -.admin .navbar-form .input-append input, .admin .navbar-form .input-prepend input { margin-top: 0; } -.admin .navbar-search { position: relative; float: left; margin-top: 5px; margin-bottom: 0; } -.admin .navbar-search .search-query { margin-bottom: 0; padding: 4px 14px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; font-weight: normal; line-height: 1; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; } -.admin .navbar-static-top { position: static; margin-bottom: 0; } -.admin .navbar-static-top .navbar-inner { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .navbar-fixed-top, .admin .navbar-fixed-bottom { position: fixed; right: 0; left: 0; z-index: 1030; margin-bottom: 0; } -.admin .navbar-fixed-top .navbar-inner, .admin .navbar-static-top .navbar-inner { border-width: 0 0 1px; } -.admin .navbar-fixed-bottom .navbar-inner { border-width: 1px 0 0; } -.admin .navbar-fixed-top .navbar-inner, .admin .navbar-fixed-bottom .navbar-inner { padding-left: 0; padding-right: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; } -.admin .navbar-static-top .container, .admin .navbar-fixed-top .container, .admin .navbar-fixed-bottom .container { width: 940px; } -.admin .navbar-fixed-top { top: 0; } -.admin .navbar-fixed-top .navbar-inner, .admin .navbar-static-top .navbar-inner { -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); } -.admin .navbar-fixed-bottom { bottom: 0; } -.admin .navbar-fixed-bottom .navbar-inner { -webkit-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); -moz-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); } -.admin .navbar .nav { position: relative; left: 0; display: block; float: left; margin: 0 10px 0 0; } -.admin .navbar .nav.pull-right { float: right; margin-right: 0; } -.admin .navbar .nav > li { float: left; } -.admin .navbar .nav > li > a { float: none; padding: 10px 15px 10px; color: #777777; text-decoration: none; text-shadow: 0 1px 0 white; } -.admin .navbar .nav .dropdown-toggle .caret { margin-top: 8px; } -.admin .navbar .nav > li > a:focus, .admin .navbar .nav > li > a:hover { background-color: transparent; color: #333333; text-decoration: none; } -.admin .navbar .nav > .active > a, .admin .navbar .nav > .active > a:hover, .admin .navbar .nav > .active > a:focus { color: #555555; text-decoration: none; background-color: #e6e6e6; -webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); -moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); } -.admin .navbar .btn-navbar { display: none; float: right; padding: 7px 10px; margin-left: 5px; margin-right: 5px; color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #ededed; background-image: -moz-linear-gradient(top, #f2f2f2, #e6e6e6); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e6e6e6)); background-image: -webkit-linear-gradient(top, #f2f2f2, #e6e6e6); background-image: -o-linear-gradient(top, #f2f2f2, #e6e6e6); background-image: linear-gradient(to bottom, #f2f2f2, #e6e6e6); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF2F2F2', endColorstr='#FFE6E6E6', GradientType=0); border-color: #e6e6e6 #e6e6e6 #bfbfbf; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #e6e6e6; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); } -.admin .navbar .btn-navbar:hover, .admin .navbar .btn-navbar:active, .admin .navbar .btn-navbar.active, .admin .navbar .btn-navbar.disabled, .admin .navbar .btn-navbar[disabled] { color: white; background-color: #e6e6e6; *background-color: #d9d9d9; } -.admin .navbar .btn-navbar:active, .admin .navbar .btn-navbar.active { background-color: #cccccc \9; } -.admin .navbar .btn-navbar .icon-bar { display: block; width: 18px; height: 2px; background-color: #f5f5f5; -webkit-border-radius: 1px; -moz-border-radius: 1px; border-radius: 1px; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); } -.admin .btn-navbar .icon-bar + .icon-bar { margin-top: 3px; } -.admin .navbar .nav > li > .dropdown-menu:before { content: ''; display: inline-block; border-left: 7px solid transparent; border-right: 7px solid transparent; border-bottom: 7px solid #cccccc; border-bottom-color: rgba(0, 0, 0, 0.2); position: absolute; top: -7px; left: 9px; } -.admin .navbar .nav > li > .dropdown-menu:after { content: ''; display: inline-block; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 6px solid white; position: absolute; top: -6px; left: 10px; } -.admin .navbar-fixed-bottom .nav > li > .dropdown-menu:before { border-top: 7px solid #cccccc; border-top-color: rgba(0, 0, 0, 0.2); border-bottom: 0; bottom: -7px; top: auto; } -.admin .navbar-fixed-bottom .nav > li > .dropdown-menu:after { border-top: 6px solid white; border-bottom: 0; bottom: -6px; top: auto; } -.admin .navbar .nav li.dropdown > a:hover .caret { border-top-color: #555555; border-bottom-color: #555555; } -.admin .navbar .nav li.dropdown.open > .dropdown-toggle, .admin .navbar .nav li.dropdown.active > .dropdown-toggle, .admin .navbar .nav li.dropdown.open.active > .dropdown-toggle { background-color: #e6e6e6; color: #555555; } -.admin .navbar .nav li.dropdown > .dropdown-toggle .caret { border-top-color: #777777; border-bottom-color: #777777; } -.admin .navbar .nav li.dropdown.open > .dropdown-toggle .caret, .admin .navbar .nav li.dropdown.active > .dropdown-toggle .caret, .admin .navbar .nav li.dropdown.open.active > .dropdown-toggle .caret { border-top-color: #555555; border-bottom-color: #555555; } -.admin .navbar .pull-right > li > .dropdown-menu, .admin .navbar .nav > li > .dropdown-menu.pull-right { left: auto; right: 0; } -.admin .navbar .pull-right > li > .dropdown-menu:before, .admin .navbar .nav > li > .dropdown-menu.pull-right:before { left: auto; right: 12px; } -.admin .navbar .pull-right > li > .dropdown-menu:after, .admin .navbar .nav > li > .dropdown-menu.pull-right:after { left: auto; right: 13px; } -.admin .navbar .pull-right > li > .dropdown-menu .dropdown-menu, .admin .navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu { left: auto; right: 100%; margin-left: 0; margin-right: -1px; -webkit-border-radius: 6px 0 6px 6px; -moz-border-radius: 6px 0 6px 6px; border-radius: 6px 0 6px 6px; } -.admin .navbar-inverse .navbar-inner { background-color: #1b1b1b; background-image: -moz-linear-gradient(top, #222222, #111111); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111)); background-image: -webkit-linear-gradient(top, #222222, #111111); background-image: -o-linear-gradient(top, #222222, #111111); background-image: linear-gradient(to bottom, #222222, #111111); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF222222', endColorstr='#FF111111', GradientType=0); border-color: #252525; } -.admin .navbar-inverse .brand, .admin .navbar-inverse .nav > li > a { color: #999999; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); } -.admin .navbar-inverse .brand:hover, .admin .navbar-inverse .nav > li > a:hover { color: white; } -.admin .navbar-inverse .brand { color: #999999; } -.admin .navbar-inverse .navbar-text { color: #999999; } -.admin .navbar-inverse .nav > li > a:focus, .admin .navbar-inverse .nav > li > a:hover { background-color: transparent; color: white; } -.admin .navbar-inverse .nav .active > a, .admin .navbar-inverse .nav .active > a:hover, .admin .navbar-inverse .nav .active > a:focus { color: white; background-color: #111111; } -.admin .navbar-inverse .navbar-link { color: #999999; } -.admin .navbar-inverse .navbar-link:hover { color: white; } -.admin .navbar-inverse .divider-vertical { border-left-color: #111111; border-right-color: #222222; } -.admin .navbar-inverse .nav li.dropdown.open > .dropdown-toggle, .admin .navbar-inverse .nav li.dropdown.active > .dropdown-toggle, .admin .navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle { background-color: #111111; color: white; } -.admin .navbar-inverse .nav li.dropdown > a:hover .caret { border-top-color: white; color: white; } -.admin .navbar-inverse .nav li.dropdown > .dropdown-toggle .caret { border-top-color: #999999; border-bottom-color: #999999; } -.admin .navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret, .admin .navbar-inverse .nav li.dropdown.active > .dropdown-toggle .caret, .admin .navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle .caret { border-top-color: white; border-bottom-color: white; } -.admin .navbar-inverse .navbar-search .search-query { color: white; background-color: #515151; border-color: #111111; -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none; } -.admin .navbar-inverse .navbar-search .search-query:-moz-placeholder { color: #cccccc; } -.admin .navbar-inverse .navbar-search .search-query:-ms-input-placeholder { color: #cccccc; } -.admin .navbar-inverse .navbar-search .search-query::-webkit-input-placeholder { color: #cccccc; } -.admin .navbar-inverse .navbar-search .search-query:focus, .admin .navbar-inverse .navbar-search .search-query.focused { padding: 5px 15px; color: #333333; text-shadow: 0 1px 0 white; background-color: white; border: 0; -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); outline: 0; } -.admin .navbar-inverse .btn-navbar { color: white; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #0e0e0e; background-image: -moz-linear-gradient(top, #151515, #040404); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404)); background-image: -webkit-linear-gradient(top, #151515, #040404); background-image: -o-linear-gradient(top, #151515, #040404); background-image: linear-gradient(to bottom, #151515, #040404); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF151515', endColorstr='#FF040404', GradientType=0); border-color: #040404 #040404 black; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #040404; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } -.admin .navbar-inverse .btn-navbar:hover, .admin .navbar-inverse .btn-navbar:active, .admin .navbar-inverse .btn-navbar.active, .admin .navbar-inverse .btn-navbar.disabled, .admin .navbar-inverse .btn-navbar[disabled] { color: white; background-color: #040404; *background-color: black; } -.admin .navbar-inverse .btn-navbar:active, .admin .navbar-inverse .btn-navbar.active { background-color: black \9; } -.admin .breadcrumb { padding: 8px 15px; margin: 0 0 20px; list-style: none; background-color: #f5f5f5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .breadcrumb > li { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; text-shadow: 0 1px 0 white; } -.admin .breadcrumb > li > .divider { padding: 0 5px; color: #ccc; } -.admin .breadcrumb .active { color: #999999; } -.admin .pagination { margin: 20px 0; } -.admin .pagination ul { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; margin-left: 0; margin-bottom: 0; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); } -.admin .pagination ul > li { display: inline; } -.admin .pagination ul > li > a, .admin .pagination ul > li > span { float: left; padding: 4px 12px; line-height: 20px; text-decoration: none; background-color: white; border: 1px solid #dddddd; border-left-width: 0; } -.admin .pagination ul > li > a:hover, .admin .pagination ul > .active > a, .admin .pagination ul > .active > span { background-color: whitesmoke; } -.admin .pagination ul > .active > a, .admin .pagination ul > .active > span { color: #999999; cursor: default; } -.admin .pagination ul > .disabled > span, .admin .pagination ul > .disabled > a, .admin .pagination ul > .disabled > a:hover { color: #999999; background-color: transparent; cursor: default; } -.admin .pagination ul > li:first-child > a, .admin .pagination ul > li:first-child > span { border-left-width: 1px; -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-left-radius: 4px; } -.admin .pagination ul > li:last-child > a, .admin .pagination ul > li:last-child > span { -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; -webkit-border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; border-bottom-right-radius: 4px; } -.admin .pagination-centered { text-align: center; } -.admin .pagination-right { text-align: right; } -.admin .pagination-large ul > li > a, .admin .pagination-large ul > li > span { padding: 11px 19px; font-size: 17.5px; } -.admin .pagination-large ul > li:first-child > a, .admin .pagination-large ul > li:first-child > span { -webkit-border-top-left-radius: 6px; -moz-border-radius-topleft: 6px; border-top-left-radius: 6px; -webkit-border-bottom-left-radius: 6px; -moz-border-radius-bottomleft: 6px; border-bottom-left-radius: 6px; } -.admin .pagination-large ul > li:last-child > a, .admin .pagination-large ul > li:last-child > span { -webkit-border-top-right-radius: 6px; -moz-border-radius-topright: 6px; border-top-right-radius: 6px; -webkit-border-bottom-right-radius: 6px; -moz-border-radius-bottomright: 6px; border-bottom-right-radius: 6px; } -.admin .pagination-mini ul > li:first-child > a, .admin .pagination-mini ul > li:first-child > span, .admin .pagination-small ul > li:first-child > a, .admin .pagination-small ul > li:first-child > span { -webkit-border-top-left-radius: 3px; -moz-border-radius-topleft: 3px; border-top-left-radius: 3px; -webkit-border-bottom-left-radius: 3px; -moz-border-radius-bottomleft: 3px; border-bottom-left-radius: 3px; } -.admin .pagination-mini ul > li:last-child > a, .admin .pagination-mini ul > li:last-child > span, .admin .pagination-small ul > li:last-child > a, .admin .pagination-small ul > li:last-child > span { -webkit-border-top-right-radius: 3px; -moz-border-radius-topright: 3px; border-top-right-radius: 3px; -webkit-border-bottom-right-radius: 3px; -moz-border-radius-bottomright: 3px; border-bottom-right-radius: 3px; } -.admin .pagination-small ul > li > a, .admin .pagination-small ul > li > span { padding: 2px 10px; font-size: 11.9px; } -.admin .pagination-mini ul > li > a, .admin .pagination-mini ul > li > span { padding: 0px 6px; font-size: 10.5px; } -.admin .pager { margin: 20px 0; list-style: none; text-align: center; *zoom: 1; } -.admin .pager:before, .admin .pager:after { display: table; content: ""; line-height: 0; } -.admin .pager:after { clear: both; } -.admin .pager li { display: inline; } -.admin .pager li > a, .admin .pager li > span { display: inline-block; padding: 5px 14px; background-color: #fff; border: 1px solid #dddddd; -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; } -.admin .pager li > a:hover { text-decoration: none; background-color: #f5f5f5; } -.admin .pager .next > a, .admin .pager .next > span { float: right; } -.admin .pager .previous > a, .admin .pager .previous > span { float: left; } -.admin .pager .disabled > a, .admin .pager .disabled > a:hover, .admin .pager .disabled > span { color: #999999; background-color: #fff; cursor: default; } -.admin .modal-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; background-color: black; } -.admin .modal-backdrop.fade { opacity: 0; } -.admin .modal-backdrop, .admin .modal-backdrop.fade.in { opacity: 0.8; filter: alpha(opacity=80); } -.admin .modal { position: fixed; top: 50%; left: 50%; z-index: 1050; width: 560px; margin: -250px 0 0 -280px; background-color: white; border: 1px solid #999999; border: 1px solid rgba(0, 0, 0, 0.3); *border: 1px solid #999999; /* IE6-7 */ -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); -webkit-background-clip: padding-box; -moz-background-clip: padding-box; background-clip: padding-box; outline: none; } -.admin .modal.fade { -webkit-transition: opacity 0.3s linear, top 0.3s ease-out; -moz-transition: opacity 0.3s linear, top 0.3s ease-out; -o-transition: opacity 0.3s linear, top 0.3s ease-out; transition: opacity 0.3s linear, top 0.3s ease-out; top: -25%; } -.admin .modal.fade.in { top: 50%; } -.admin .modal-header { padding: 9px 15px; border-bottom: 1px solid #eeeeee; } -.admin .modal-header .close { margin-top: 2px; } -.admin .modal-header h3 { margin: 0; line-height: 30px; } -.admin .modal-body { position: relative; overflow-y: auto; max-height: 400px; padding: 15px; } -.admin .modal-form { margin-bottom: 0; } -.admin .modal-footer { padding: 14px 15px 15px; margin-bottom: 0; text-align: right; background-color: #f5f5f5; border-top: 1px solid #dddddd; -webkit-border-radius: 0 0 6px 6px; -moz-border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px; -webkit-box-shadow: inset 0 1px 0 white; -moz-box-shadow: inset 0 1px 0 white; box-shadow: inset 0 1px 0 white; *zoom: 1; } -.admin .modal-footer:before, .admin .modal-footer:after { display: table; content: ""; line-height: 0; } -.admin .modal-footer:after { clear: both; } -.admin .modal-footer .btn + .btn { margin-left: 5px; margin-bottom: 0; } -.admin .modal-footer .btn-group .btn + .btn { margin-left: -1px; } -.admin .modal-footer .btn-block + .btn-block { margin-left: 0; } -.admin .tooltip { position: absolute; z-index: 1030; display: block; visibility: visible; padding: 5px; font-size: 11px; opacity: 0; filter: alpha(opacity=0); } -.admin .tooltip.in { opacity: 0.8; filter: alpha(opacity=80); } -.admin .tooltip.top { margin-top: -3px; } -.admin .tooltip.right { margin-left: 3px; } -.admin .tooltip.bottom { margin-top: 3px; } -.admin .tooltip.left { margin-left: -3px; } -.admin .tooltip-inner { max-width: 200px; padding: 3px 8px; color: white; text-align: center; text-decoration: none; background-color: black; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .tooltip-arrow { position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; } -.admin .tooltip.top .tooltip-arrow { bottom: 0; left: 50%; margin-left: -5px; border-width: 5px 5px 0; border-top-color: black; } -.admin .tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-width: 5px 5px 5px 0; border-right-color: black; } -.admin .tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-width: 5px 0 5px 5px; border-left-color: black; } -.admin .tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-width: 0 5px 5px; border-bottom-color: black; } -.admin .popover { position: absolute; top: 0; left: 0; z-index: 1010; display: none; width: 236px; padding: 1px; text-align: left; background-color: white; -webkit-background-clip: padding-box; -moz-background-clip: padding; background-clip: padding-box; border: 1px solid #cccccc; border: 1px solid rgba(0, 0, 0, 0.2); -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); white-space: normal; } -.admin .popover.top { margin-top: -10px; } -.admin .popover.right { margin-left: 10px; } -.admin .popover.bottom { margin-top: 10px; } -.admin .popover.left { margin-left: -10px; } -.admin .popover-title { margin: 0; padding: 8px 14px; font-size: 14px; font-weight: normal; line-height: 18px; background-color: #f7f7f7; border-bottom: 1px solid #ebebeb; -webkit-border-radius: 5px 5px 0 0; -moz-border-radius: 5px 5px 0 0; border-radius: 5px 5px 0 0; } -.admin .popover-content { padding: 9px 14px; } -.admin .popover .arrow, .admin .popover .arrow:after { position: absolute; display: block; width: 0; height: 0; border-color: transparent; border-style: solid; } -.admin .popover .arrow { border-width: 11px; } -.admin .popover .arrow:after { border-width: 10px; content: ""; } -.admin .popover.top .arrow { left: 50%; margin-left: -11px; border-bottom-width: 0; border-top-color: #999; border-top-color: rgba(0, 0, 0, 0.25); bottom: -11px; } -.admin .popover.top .arrow:after { bottom: 1px; margin-left: -10px; border-bottom-width: 0; border-top-color: white; } -.admin .popover.right .arrow { top: 50%; left: -11px; margin-top: -11px; border-left-width: 0; border-right-color: #999; border-right-color: rgba(0, 0, 0, 0.25); } -.admin .popover.right .arrow:after { left: 1px; bottom: -10px; border-left-width: 0; border-right-color: white; } -.admin .popover.bottom .arrow { left: 50%; margin-left: -11px; border-top-width: 0; border-bottom-color: #999; border-bottom-color: rgba(0, 0, 0, 0.25); top: -11px; } -.admin .popover.bottom .arrow:after { top: 1px; margin-left: -10px; border-top-width: 0; border-bottom-color: white; } -.admin .popover.left .arrow { top: 50%; right: -11px; margin-top: -11px; border-right-width: 0; border-left-color: #999; border-left-color: rgba(0, 0, 0, 0.25); } -.admin .popover.left .arrow:after { right: 1px; border-right-width: 0; border-left-color: white; bottom: -10px; } -.admin .thumbnails { margin-left: -20px; list-style: none; *zoom: 1; } -.admin .thumbnails:before, .admin .thumbnails:after { display: table; content: ""; line-height: 0; } -.admin .thumbnails:after { clear: both; } -.admin .row-fluid .thumbnails { margin-left: 0; } -.admin .thumbnails > li { float: left; margin-bottom: 20px; margin-left: 20px; } -.admin .thumbnail { display: block; padding: 4px; line-height: 20px; border: 1px solid #dddddd; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; } -.admin a.thumbnail:hover { border-color: #0088cc; -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); } -.admin .thumbnail > img { display: block; max-width: 100%; margin-left: auto; margin-right: auto; } -.admin .thumbnail .caption { padding: 9px; color: #555555; } -.admin .media, .admin .media-body { overflow: hidden; *overflow: visible; zoom: 1; } -.admin .media, .admin .media .media { margin-top: 15px; } -.admin .media:first-child { margin-top: 0; } -.admin .media-object { display: block; } -.admin .media-heading { margin: 0 0 5px; } -.admin .media .pull-left { margin-right: 10px; } -.admin .media .pull-right { margin-left: 10px; } -.admin .media-list { margin-left: 0; list-style: none; } -.admin .label, .admin .badge { display: inline-block; padding: 2px 4px; font-size: 11.844px; font-weight: bold; line-height: 14px; color: white; vertical-align: baseline; white-space: nowrap; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #999999; } -.admin .label { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } -.admin .badge { padding-left: 9px; padding-right: 9px; -webkit-border-radius: 9px; -moz-border-radius: 9px; border-radius: 9px; } -.admin .label:empty, .admin .badge:empty { display: none; } -.admin a.label:hover, .admin a.badge:hover { color: white; text-decoration: none; cursor: pointer; } -.admin .label-important { background-color: #b94a48; } -.admin .label-important[href] { background-color: #953b39; } -.admin .label-warning { background-color: #f89406; } -.admin .label-warning[href] { background-color: #c67605; } -.admin .label-success { background-color: #468847; } -.admin .label-success[href] { background-color: #356635; } -.admin .label-info { background-color: #3a87ad; } -.admin .label-info[href] { background-color: #2d6987; } -.admin .label-inverse { background-color: #333333; } -.admin .label-inverse[href] { background-color: #1a1a1a; } -.admin .badge-important { background-color: #b94a48; } -.admin .badge-important[href] { background-color: #953b39; } -.admin .badge-warning { background-color: #f89406; } -.admin .badge-warning[href] { background-color: #c67605; } -.admin .badge-success { background-color: #468847; } -.admin .badge-success[href] { background-color: #356635; } -.admin .badge-info { background-color: #3a87ad; } -.admin .badge-info[href] { background-color: #2d6987; } -.admin .badge-inverse { background-color: #333333; } -.admin .badge-inverse[href] { background-color: #1a1a1a; } -.admin .btn .label, .admin .btn .badge { position: relative; top: -1px; } -.admin .btn-mini .label, .admin .btn-mini .badge { top: 0; } -.admin .progress { overflow: hidden; height: 20px; margin-bottom: 20px; background-color: #f6f6f6; background-image: -moz-linear-gradient(top, whitesmoke, #f9f9f9); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(whitesmoke), to(#f9f9f9)); background-image: -webkit-linear-gradient(top, whitesmoke, #f9f9f9); background-image: -o-linear-gradient(top, whitesmoke, #f9f9f9); background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF5F5F5', endColorstr='#FFF9F9F9', GradientType=0); -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .progress .bar { width: 0%; height: 100%; color: white; float: left; font-size: 12px; text-align: center; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); background-color: #0d90d1; background-image: -moz-linear-gradient(top, #149bdf, #0480be); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be)); background-image: -webkit-linear-gradient(top, #149bdf, #0480be); background-image: -o-linear-gradient(top, #149bdf, #0480be); background-image: linear-gradient(to bottom, #149bdf, #0480be); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF149BDF', endColorstr='#FF0480BE', GradientType=0); -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: width 0.6s ease; -moz-transition: width 0.6s ease; -o-transition: width 0.6s ease; transition: width 0.6s ease; } -.admin .progress .bar + .bar { -webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); -moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); } -.admin .progress-striped .bar { background-color: #149bdf; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); -webkit-background-size: 40px 40px; -moz-background-size: 40px 40px; -o-background-size: 40px 40px; background-size: 40px 40px; } -.admin .progress.active .bar { -webkit-animation: progress-bar-stripes 2s linear infinite; -moz-animation: progress-bar-stripes 2s linear infinite; -ms-animation: progress-bar-stripes 2s linear infinite; -o-animation: progress-bar-stripes 2s linear infinite; animation: progress-bar-stripes 2s linear infinite; } -.admin .progress-danger .bar, .admin .progress .bar-danger { background-color: #dd514b; background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35)); background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); background-image: linear-gradient(to bottom, #ee5f5b, #c43c35); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEE5F5B', endColorstr='#FFC43C35', GradientType=0); } -.admin .progress-danger.progress-striped .bar, .admin .progress-striped .bar-danger { background-color: #ee5f5b; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } -.admin .progress-success .bar, .admin .progress .bar-success { background-color: #5db95d; background-image: -moz-linear-gradient(top, #62c462, #57a957); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957)); background-image: -webkit-linear-gradient(top, #62c462, #57a957); background-image: -o-linear-gradient(top, #62c462, #57a957); background-image: linear-gradient(to bottom, #62c462, #57a957); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF62C462', endColorstr='#FF57A957', GradientType=0); } -.admin .progress-success.progress-striped .bar, .admin .progress-striped .bar-success { background-color: #62c462; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } -.admin .progress-info .bar, .admin .progress .bar-info { background-color: #4bb1cf; background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9)); background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); background-image: -o-linear-gradient(top, #5bc0de, #339bb9); background-image: linear-gradient(to bottom, #5bc0de, #339bb9); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5BC0DE', endColorstr='#FF339BB9', GradientType=0); } -.admin .progress-info.progress-striped .bar, .admin .progress-striped .bar-info { background-color: #5bc0de; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } -.admin .progress-warning .bar, .admin .progress .bar-warning { background-color: #f9a732; background-image: -moz-linear-gradient(top, #fbb450, #f89406); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); background-image: -webkit-linear-gradient(top, #fbb450, #f89406); background-image: -o-linear-gradient(top, #fbb450, #f89406); background-image: linear-gradient(to bottom, #fbb450, #f89406); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFBB450', endColorstr='#FFF89406', GradientType=0); } -.admin .progress-warning.progress-striped .bar, .admin .progress-striped .bar-warning { background-color: #fbb450; background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } -.admin .accordion { margin-bottom: 20px; } -.admin .accordion-group { margin-bottom: 2px; border: 1px solid #e5e5e5; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; } -.admin .accordion-heading { border-bottom: 0; } -.admin .accordion-heading .accordion-toggle { display: block; padding: 8px 15px; } -.admin .accordion-toggle { cursor: pointer; } -.admin .accordion-inner { padding: 9px 15px; border-top: 1px solid #e5e5e5; } -.admin .carousel { position: relative; margin-bottom: 20px; line-height: 1; } -.admin .carousel-inner { overflow: hidden; width: 100%; position: relative; } -.admin .carousel-inner > .item { display: none; position: relative; -webkit-transition: 0.6s ease-in-out left; -moz-transition: 0.6s ease-in-out left; -o-transition: 0.6s ease-in-out left; transition: 0.6s ease-in-out left; } -.admin .carousel-inner > .item > img { display: block; line-height: 1; } -.admin .carousel-inner > .active, .admin .carousel-inner > .next, .admin .carousel-inner > .prev { display: block; } -.admin .carousel-inner > .active { left: 0; } -.admin .carousel-inner > .next, .admin .carousel-inner > .prev { position: absolute; top: 0; width: 100%; } -.admin .carousel-inner > .next { left: 100%; } -.admin .carousel-inner > .prev { left: -100%; } -.admin .carousel-inner > .next.left, .admin .carousel-inner > .prev.right { left: 0; } -.admin .carousel-inner > .active.left { left: -100%; } -.admin .carousel-inner > .active.right { left: 100%; } -.admin .carousel-control { position: absolute; top: 40%; left: 15px; width: 40px; height: 40px; margin-top: -20px; font-size: 60px; font-weight: 100; line-height: 30px; color: white; text-align: center; background: #222222; border: 3px solid white; -webkit-border-radius: 23px; -moz-border-radius: 23px; border-radius: 23px; opacity: 0.5; filter: alpha(opacity=50); } -.admin .carousel-control.right { left: auto; right: 15px; } -.admin .carousel-control:hover { color: white; text-decoration: none; opacity: 0.9; filter: alpha(opacity=90); } -.admin .carousel-caption { position: absolute; left: 0; right: 0; bottom: 0; padding: 15px; background: #333333; background: rgba(0, 0, 0, 0.75); } -.admin .carousel-caption h4, .admin .carousel-caption p { color: white; line-height: 20px; } -.admin .carousel-caption h4 { margin: 0 0 5px; } -.admin .carousel-caption p { margin-bottom: 0; } -.admin .hero-unit { padding: 60px; margin-bottom: 30px; font-size: 18px; font-weight: 200; line-height: 30px; color: inherit; background-color: #eeeeee; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; } -.admin .hero-unit h1 { margin-bottom: 0; font-size: 60px; line-height: 1; color: inherit; letter-spacing: -1px; } -.admin .hero-unit li { line-height: 30px; } -.admin .pull-right { float: right; } -.admin .pull-left { float: left; } -.admin .hide { display: none; } -.admin .show { display: block; } -.admin .invisible { visibility: hidden; } -.admin .affix { position: fixed; } -.admin .clearfix { *zoom: 1; } -.admin .clearfix:before, .admin .clearfix:after { display: table; content: ""; line-height: 0; } -.admin .clearfix:after { clear: both; } -.admin .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; } -.admin .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } -.admin #main { padding-top: 50px; } -.admin .form-inline { display: inline; } -.admin table .form { display: inline-block; margin: 0; } -.admin .accordion-group { border: none; } -.admin .accordion-heading .btn { float: left; margin: 6px 15px; } -.admin .accordion-heading .accordion-toggle { padding: 2px; } -.admin .accordion-heading .accordion-toggle:hover { text-decoration: none; } -.admin div.item-detail div:nth-child(odd) span { background-color: #eee; } -.admin span.label.tag { margin-right: 2px; } -.admin span.label.tag a { color: white; } -.admin body.admin blockquote p { font-size: 13px; display: inline; } -.admin div#user_locale_switcher div.btn-group:before, .admin div#user_locale_switcher div.btn-group:after { display: inline; } -.admin #request_hidden_user_subject_field { width: 440px; } -.admin #request_hidden_user_explanation_field { width: 100%; height: 15em; } -.admin #request_hidden_user_subject, .admin #request_hide_button, .admin #request_hidden_user_explanation { display: none; } -.admin #outgoing_message_body, .admin #comment_body { width: 750px; } diff --git a/public/down.default.html b/public/down.default.html index ce4887b51..0440f91f9 100644 --- a/public/down.default.html +++ b/public/down.default.html @@ -6,7 +6,7 @@ WhatDoTheyKnow - make and browse Freedom of Information (FOI) requests </title> - <link href="http://www.whatdotheyknow.com/stylesheets/main.css?1246372679" media="screen" rel="stylesheet" title="Main" type="text/css"> + <link href="/assets/main.css" media="screen" rel="stylesheet" title="Main" type="text/css"> <!--[if LT IE 7]> <style type="text/css">@import url("/stylesheets/ie6.css");</style> <![endif]--> diff --git a/public/images/logo.png b/public/images/logo.png Binary files differdeleted file mode 100644 index a08bbeb58..000000000 --- a/public/images/logo.png +++ /dev/null diff --git a/public/javascripts/application.js b/public/javascripts/application.js deleted file mode 100644 index fe4577696..000000000 --- a/public/javascripts/application.js +++ /dev/null @@ -1,2 +0,0 @@ -// Place your application-specific JavaScript functions and classes here -// This file is automatically included by javascript_include_tag :defaults diff --git a/public/javascripts/jquery-ui.min.js b/public/javascripts/jquery-ui.min.js deleted file mode 100644 index fb641f675..000000000 --- a/public/javascripts/jquery-ui.min.js +++ /dev/null @@ -1,168 +0,0 @@ -/*! - * jQuery UI 1.8.16 - * - * Copyright 2011, 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 - */ -(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.16", -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}});c.fn.extend({propAttr:c.fn.prop||c.fn.attr,_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d= -this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this, -"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart": -"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight, -outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a, -"tabindex"),d=isNaN(b);return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&& -a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&& -c.ui.isOverAxis(b,e,i)}})}})(jQuery); -;/*! - * jQuery UI Widget 1.8.16 - * - * Copyright 2011, 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/Widget - */ -(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)try{b(d).triggerHandler("remove")}catch(e){}k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(d){}});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]= -function(h){return!!b.data(h,a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)): -d;if(e&&d.charAt(0)==="_")return h;e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options= -b.extend(true,{},this.options,this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+ -"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled", -c);return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery); -;/* - * jQuery UI Position 1.8.16 - * - * Copyright 2011, 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/Position - */ -(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY, -left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+= -k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-= -m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left= -d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+= -a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b), -g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery); -;/* - * jQuery UI Tabs 1.8.16 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - * jquery.ui.widget.js - */ -(function(d,p){function u(){return++v}function w(){return++x}var v=0,x=0;d.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading…</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&& -e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b= -d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]|| -(q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a.element.find(a._sanitizeSelector(i)));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=a.element.find("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){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");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected= -this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active"); -if(c.selected>=0&&this.anchors.length){a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash))[0]))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")); -this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+ -g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal", -function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")}; -this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=a.element.find(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected= --1;c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier."; -d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;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 e= -d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(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")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b, -e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=c.element.find("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]); -j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove(); -if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1<this.anchors.length?1:-1));e.disabled=d.map(d.grep(e.disabled,function(h){return h!=b}),function(h){return h>=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null, -this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this}, -load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c, -"cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this}, -url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.16"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&& -a.rotate(null)}:function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery); -;/* - * jQuery UI Datepicker 1.8.16 - * - * Copyright 2011, 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 - * - * Depends: - * jquery.ui.core.js - */ -(function(d,C){function M(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass= -"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su", -"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10", -minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=N(d('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function N(a){return a.bind("mouseout", -function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");b.length&&b.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");if(!(d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])||!b.length)){b.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"); -b.addClass("ui-state-hover");b.hasClass("ui-datepicker-prev")&&b.addClass("ui-datepicker-prev-hover");b.hasClass("ui-datepicker-next")&&b.addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==C)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.16"}});var B=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv}, -setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g, -"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker", -function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b);b.settings.disabled&&this._disableDatepicker(a)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d('<span class="'+this._appendClass+'">'+c+"</span>");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c== -"focus"||c=="both")a.focus(this._showDatepicker);if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("<img/>").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('<button type="button"></button>').addClass(this._triggerClass).html(f==""?c:d("<img/>").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker(): -d.datepicker._showDatepicker(a[0]);return false})}},_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 e=function(f){for(var h=0,i=0,g=0;g<f.length;g++)if(f[g].length>h){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(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=d(a);if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.settings.disabled&&this._disableDatepicker(a);b.dpDiv.css("display","block")}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+= -1;this._dialogInput=d('<input type="text" id="'+("dp"+this.uuid)+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/ -2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b= -d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,"datepicker");if(e=="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)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e= -a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a, -"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f== -a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return true;return false},_getInst:function(a){try{return d.data(a,"datepicker")}catch(b){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(a,b,c){var e=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?d.extend({},d.datepicker._defaults):e?b=="all"? -d.extend({},e.settings):this._get(e,b):null;var f=b||{};if(typeof b=="string"){f={};f[b]=c}if(e){this._curInst==e&&this._hideDatepicker();var h=this._getDateDatepicker(a,true),i=this._getMinMaxDate(e,"min"),g=this._getMinMaxDate(e,"max");H(e.settings,f);if(i!==null&&f.dateFormat!==C&&f.minDate===C)e.settings.minDate=this._formatDate(e,i);if(g!==null&&f.dateFormat!==C&&f.maxDate===C)e.settings.maxDate=this._formatDate(e,g);this._attachments(d(a),e);this._autoSize(e);this._setDate(e,h);this._updateAlternate(e); -this._updateDatepicker(e)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){(a=this._getInst(a))&&this._updateDatepicker(a)},_setDateDatepicker:function(a,b){if(a=this._getInst(a)){this._setDate(a,b);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(a,b){(a=this._getInst(a))&&!a.inline&&this._setDateFromField(a,b);return a?this._getDate(a):null},_doKeyDown:function(a){var b=d.datepicker._getInst(a.target),c=true,e=b.dpDiv.is(".ui-datepicker-rtl"); -b._keyEvent=true;if(d.datepicker._datepickerShowing)switch(a.keyCode){case 9:d.datepicker._hideDatepicker();c=false;break;case 13:c=d("td."+d.datepicker._dayOverClass+":not(."+d.datepicker._currentClass+")",b.dpDiv);c[0]&&d.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,c[0]);if(a=d.datepicker._get(b,"onSelect")){c=d.datepicker._formatDate(b);a.apply(b.input?b.input[0]:null,[c,b])}else d.datepicker._hideDatepicker();return false;case 27:d.datepicker._hideDatepicker();break;case 33:d.datepicker._adjustDate(a.target, -a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 34:d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 35:if(a.ctrlKey||a.metaKey)d.datepicker._clearDate(a.target);c=a.ctrlKey||a.metaKey;break;case 36:if(a.ctrlKey||a.metaKey)d.datepicker._gotoToday(a.target);c=a.ctrlKey||a.metaKey;break;case 37:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?+1:-1,"D");c= -a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 38:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,-7,"D");c=a.ctrlKey||a.metaKey;break;case 39:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?-1:+1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b, -"stepMonths"),"M");break;case 40:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,+7,"D");c=a.ctrlKey||a.metaKey;break;default:c=false}else if(a.keyCode==36&&a.ctrlKey)d.datepicker._showDatepicker(this);else c=false;if(c){a.preventDefault();a.stopPropagation()}},_doKeyPress:function(a){var b=d.datepicker._getInst(a.target);if(d.datepicker._get(b,"constrainInput")){b=d.datepicker._possibleChars(d.datepicker._get(b,"dateFormat"));var c=String.fromCharCode(a.charCode==C?a.keyCode:a.charCode); -return a.ctrlKey||a.metaKey||c<" "||!b||b.indexOf(c)>-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input", -a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);if(d.datepicker._curInst&&d.datepicker._curInst!=b){d.datepicker._datepickerShowing&&d.datepicker._triggerOnClose(d.datepicker._curInst);d.datepicker._curInst.dpDiv.stop(true,true)}var c=d.datepicker._get(b,"beforeShow");c=c?c.apply(a,[a,b]):{};if(c!==false){H(b.settings,c);b.lastVal=null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value= -"";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b); -c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0],top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing= -true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}}},_updateDatepicker:function(a){this.maxRows=4;var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover");c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}); -a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&& -!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(), -h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b= -this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_triggerOnClose:function(a){var b=this._get(a,"onClose");if(b)b.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a])},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b); -this._curInst=null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();d.datepicker._triggerOnClose(b);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")}, -_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"): -0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[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(a)},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=d("a",e).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){a=d(a); -this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.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"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/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 e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1<a.length&&a.charAt(A+1)==p)&&A++;return p},m=function(p){var D= -o(p);p=new RegExp("^\\d{1,"+(p=="@"?14:p=="!"?20:p=="y"&&D?4:p=="o"?3:2)+"}");p=b.substring(q).match(p);if(!p)throw"Missing number at position "+q;q+=p[0].length;return parseInt(p[0],10)},n=function(p,D,K){p=d.map(o(p)?K:D,function(w,x){return[[x,w]]}).sort(function(w,x){return-(w[1].length-x[1].length)});var E=-1;d.each(p,function(w,x){w=x[1];if(b.substr(q,w.length).toLowerCase()==w.toLowerCase()){E=x[0];q+=w.length;return false}});if(E!=-1)return E+1;else throw"Unknown name at position "+q;},s= -function(){if(b.charAt(q)!=a.charAt(A))throw"Unexpected literal at position "+q;q++},q=0,A=0;A<a.length;A++)if(k)if(a.charAt(A)=="'"&&!o("'"))k=false;else s();else switch(a.charAt(A)){case "d":l=m("d");break;case "D":n("D",f,h);break;case "o":u=m("o");break;case "m":j=m("m");break;case "M":j=n("M",i,g);break;case "y":c=m("y");break;case "@":var v=new Date(m("@"));c=v.getFullYear();j=v.getMonth()+1;l=v.getDate();break;case "!":v=new Date((m("!")-this._ticksTo1970)/1E4);c=v.getFullYear();j=v.getMonth()+ -1;l=v.getDate();break;case "'":if(o("'"))s();else k=true;break;default:s()}if(q<b.length)throw"Extra/unparsed characters found in date: "+b.substring(q);if(c==-1)c=(new Date).getFullYear();else if(c<100)c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100);if(u>-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!=c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},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 e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames: -null)||this._defaults.monthNames;var i=function(o){(o=k+1<a.length&&a.charAt(k+1)==o)&&k++;return o},g=function(o,m,n){m=""+m;if(i(o))for(;m.length<n;)m="0"+m;return m},j=function(o,m,n,s){return i(o)?s[m]:n[m]},l="",u=false;if(b)for(var k=0;k<a.length;k++)if(u)if(a.charAt(k)=="'"&&!i("'"))u=false;else l+=a.charAt(k);else switch(a.charAt(k)){case "d":l+=g("d",b.getDate(),2);break;case "D":l+=j("D",b.getDay(),e,f);break;case "o":l+=g("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()- -(new Date(b.getFullYear(),0,0)).getTime())/864E5),3);break;case "m":l+=g("m",b.getMonth()+1,2);break;case "M":l+=j("M",b.getMonth(),h,c);break;case "y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case "@":l+=b.getTime();break;case "!":l+=b.getTime()*1E4+this._ticksTo1970;break;case "'":if(i("'"))l+="'";else u=true;break;default:l+=a.charAt(k)}return l},_possibleChars:function(a){for(var b="",c=false,e=function(h){(h=f+1<a.length&&a.charAt(f+1)==h)&&f++;return h},f= -0;f<a.length;f++)if(c)if(a.charAt(f)=="'"&&!e("'"))c=false;else b+=a.charAt(f);else switch(a.charAt(f)){case "d":case "m":case "y":case "@":b+="0123456789";break;case "D":case "M":return null;case "'":if(e("'"))b+="'";else c=true;break;default:b+=a.charAt(f)}return b},_get:function(a,b){return a.settings[b]!==C?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),e=a.lastVal=a.input?a.input.val():null,f,h;f=h=this._getDefaultDate(a); -var i=this._getFormatConfig(a);try{f=this.parseDate(c,e,i)||h}catch(g){this.log(g);e=b?"":e}a.selectedDay=f.getDate();a.drawMonth=a.selectedMonth=f.getMonth();a.drawYear=a.selectedYear=f.getFullYear();a.currentDay=e?f.getDate():0;a.currentMonth=e?f.getMonth():0;a.currentYear=e?f.getFullYear():0;this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var e=function(h){var i=new Date; -i.setDate(i.getDate()+h);return i},f=function(h){try{return d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),h,d.datepicker._getFormatConfig(a))}catch(i){}var g=(h.toLowerCase().match(/^c/)?d.datepicker._getDate(a):null)||new Date,j=g.getFullYear(),l=g.getMonth();g=g.getDate();for(var u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,k=u.exec(h);k;){switch(k[2]||"d"){case "d":case "D":g+=parseInt(k[1],10);break;case "w":case "W":g+=parseInt(k[1],10)*7;break;case "m":case "M":l+=parseInt(k[1],10);g= -Math.min(g,d.datepicker._getDaysInMonth(j,l));break;case "y":case "Y":j+=parseInt(k[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(j,l));break}k=u.exec(h)}return new Date(j,l,g)};if(b=(b=b==null||b===""?c:typeof b=="string"?f(b):typeof b=="number"?isNaN(b)?c:e(b):new Date(b.getTime()))&&b.toString()=="Invalid Date"?c:b){b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0)}return this._daylightSavingAdjust(b)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()> -12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&& -a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay? -new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&n<k?k:n;this._daylightSavingAdjust(new Date(m,g,1))>n;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a)); -n=this._canAdjustMonth(a,-1,m,g)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', -"+j+", 'M');\" title=\""+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>":f?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>";var s=this._get(a,"nextText");s=!h?s:this.formatDate(s,this._daylightSavingAdjust(new Date(m, -g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', +"+j+", 'M');\" title=\""+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":f?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>";j=this._get(a,"currentText");s=this._get(a,"gotoCurrent")&& -a.currentDay?u:b;j=!h?j:this.formatDate(j,s,this._getFormatConfig(a));h=!a.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+B+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>":"";e=e?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?h:"")+(this._isInRange(a,s)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+ -B+".datepicker._gotoToday('#"+a.id+"');\">"+j+"</button>":"")+(c?"":h)+"</div>":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");s=this._get(a,"dayNames");this._get(a,"dayNamesShort");var q=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),D=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x<i[0];x++){var O= -"";this.maxRows=4;for(var G=0;G<i[1];G++){var P=this._daylightSavingAdjust(new Date(m,g,a.selectedDay)),t=" ui-corner-all",y="";if(l){y+='<div class="ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+t+'">'+(/all|left/.test(t)&& -x==0?c?f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var z=j?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(t=0;t<7;t++){var r=(t+h)%7;z+="<th"+((t+h+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+s[r]+'">'+q[r]+"</span></th>"}y+=z+"</tr></thead><tbody>";z=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay, -z);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;z=Math.ceil((t+z)/7);this.maxRows=z=l?this.maxRows>z?this.maxRows:z:z;r=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q<z;Q++){y+="<tr>";var R=!j?"":'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(r)+"</td>";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[r]):[true,""],F=r.getMonth()!=g,L=F&&!K||!I[0]||k&&r<k||o&&r>o;R+='<td class="'+((t+h+6)%7>=5?" ui-datepicker-week-end":"")+(F?" ui-datepicker-other-month":"")+(r.getTime()== -P.getTime()&&g==a.selectedMonth&&a._keyEvent||E.getTime()==r.getTime()&&E.getTime()==P.getTime()?" "+this._dayOverClass:"")+(L?" "+this._unselectableClass+" ui-state-disabled":"")+(F&&!D?"":" "+I[1]+(r.getTime()==u.getTime()?" "+this._currentClass:"")+(r.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!F||D)&&I[2]?' title="'+I[2]+'"':"")+(L?"":' onclick="DP_jQuery_'+B+".datepicker._selectDay('#"+a.id+"',"+r.getMonth()+","+r.getFullYear()+', this);return false;"')+">"+(F&&!D?" ":L?'<span class="ui-state-default">'+ -r.getDate()+"</span>":'<a class="ui-state-default'+(r.getTime()==b.getTime()?" ui-state-highlight":"")+(r.getTime()==u.getTime()?" ui-state-active":"")+(F?" ui-priority-secondary":"")+'" href="#">'+r.getDate()+"</a>")+"</td>";r.setDate(r.getDate()+1);r=this._daylightSavingAdjust(r)}y+=R+"</tr>"}g++;if(g>11){g=0;m++}y+="</tbody></table>"+(l?"</div>"+(i[0]>0&&G==i[1]-1?'<div class="ui-datepicker-row-break"></div>':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>': -"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='<div class="ui-datepicker-title">',o="";if(h||!j)o+='<span class="ui-datepicker-month">'+i[b]+"</span>";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" >";for(var n=0;n<12;n++)if((!i||n>=e.getMonth())&& -(!m||n<=f.getMonth()))o+='<option value="'+n+'"'+(n==b?' selected="selected"':"")+">"+g[n]+"</option>";o+="</select>"}u||(k+=o+(h||!(j&&l)?" ":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+='<span class="ui-datepicker-year">'+c+"</span>";else{g=this._get(a,"yearRange").split(":");var s=(new Date).getFullYear();i=function(q){q=q.match(/c[+-].*/)?c+parseInt(q.substring(1),10):q.match(/[+-].*/)?s+parseInt(q,10):parseInt(q,10);return isNaN(q)?s:q};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b, -e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" >";b<=g;b++)a.yearshtml+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";a.yearshtml+="</select>";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+=(h||!(j&&l)?" ":"")+o;k+="</div>";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+ -(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&b<c?c:b;return b=a&&b>a?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input? -a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_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,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c, -e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{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,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this; -if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a== -"string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.16";window["DP_jQuery_"+B]=d})(jQuery); -;
\ No newline at end of file diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_0_aaaaaa_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_0_aaaaaa_40x100.png Binary files differdeleted file mode 100755 index 5b5dab2ab..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_0_aaaaaa_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_55_fbf9ee_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_55_fbf9ee_40x100.png Binary files differdeleted file mode 100755 index 062f58072..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_55_fbf9ee_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_65_ffffff_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_65_ffffff_40x100.png Binary files differdeleted file mode 100755 index ac8b229af..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_65_ffffff_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_75_cccccc_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_75_cccccc_40x100.png Binary files differdeleted file mode 100755 index 5473afffb..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_75_cccccc_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_75_dadada_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_75_dadada_40x100.png Binary files differdeleted file mode 100755 index 7b7b0744d..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_75_dadada_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_75_e6e6e6_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_75_e6e6e6_40x100.png Binary files differdeleted file mode 100755 index 5b4ca1a03..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_75_e6e6e6_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_flat_75_ffffff_40x100.png b/public/stylesheets/admin-theme/images/ui-bg_flat_75_ffffff_40x100.png Binary files differdeleted file mode 100755 index ac8b229af..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_flat_75_ffffff_40x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-bg_inset-soft_95_fef1ec_1x100.png b/public/stylesheets/admin-theme/images/ui-bg_inset-soft_95_fef1ec_1x100.png Binary files differdeleted file mode 100755 index 0e05810ff..000000000 --- a/public/stylesheets/admin-theme/images/ui-bg_inset-soft_95_fef1ec_1x100.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-icons_222222_256x240.png b/public/stylesheets/admin-theme/images/ui-icons_222222_256x240.png Binary files differdeleted file mode 100755 index b273ff111..000000000 --- a/public/stylesheets/admin-theme/images/ui-icons_222222_256x240.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-icons_2e83ff_256x240.png b/public/stylesheets/admin-theme/images/ui-icons_2e83ff_256x240.png Binary files differdeleted file mode 100755 index 09d1cdc85..000000000 --- a/public/stylesheets/admin-theme/images/ui-icons_2e83ff_256x240.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-icons_454545_256x240.png b/public/stylesheets/admin-theme/images/ui-icons_454545_256x240.png Binary files differdeleted file mode 100755 index 59bd45b90..000000000 --- a/public/stylesheets/admin-theme/images/ui-icons_454545_256x240.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-icons_888888_256x240.png b/public/stylesheets/admin-theme/images/ui-icons_888888_256x240.png Binary files differdeleted file mode 100755 index 6d02426c1..000000000 --- a/public/stylesheets/admin-theme/images/ui-icons_888888_256x240.png +++ /dev/null diff --git a/public/stylesheets/admin-theme/images/ui-icons_cd0a0a_256x240.png b/public/stylesheets/admin-theme/images/ui-icons_cd0a0a_256x240.png Binary files differdeleted file mode 100755 index 2ab019b73..000000000 --- a/public/stylesheets/admin-theme/images/ui-icons_cd0a0a_256x240.png +++ /dev/null diff --git a/public/stylesheets/fonts.css b/public/stylesheets/fonts.css deleted file mode 100644 index f63b4b1f8..000000000 --- a/public/stylesheets/fonts.css +++ /dev/null @@ -1,73 +0,0 @@ - -@font-face { - font-family: 'DeliciousBold'; - src: url('./fonts/delicious-bold-webfont.eot'); - src: url('./fonts/delicious-bold-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-bold-webfont.woff') format('woff'), - url('./fonts/delicious-bold-webfont.ttf') format('truetype'), - url('./fonts/delicious-bold-webfont.svg#DeliciousBold') format('svg'); - font-weight: normal; - font-style: normal; - -} - -@font-face { - font-family: 'DeliciousBoldItalic'; - src: url('./fonts/delicious-bolditalic-webfont.eot'); - src: url('./fonts/delicious-bolditalic-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-bolditalic-webfont.woff') format('woff'), - url('./fonts/delicious-bolditalic-webfont.ttf') format('truetype'), - url('./fonts/delicious-bolditalic-webfont.svg#DeliciousBoldItalic') format('svg'); - font-weight: normal; - font-style: normal; - -} - -@font-face { - font-family: 'DeliciousHeavyRegular'; - src: url('./fonts/delicious-heavy-webfont.eot'); - src: url('./fonts/delicious-heavy-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-heavy-webfont.woff') format('woff'), - url('./fonts/delicious-heavy-webfont.ttf') format('truetype'), - url('./fonts/delicious-heavy-webfont.svg#DeliciousHeavyRegular') format('svg'); - font-weight: normal; - font-style: normal; - -} - -@font-face { - font-family: 'DeliciousItalic'; - src: url('./fonts/delicious-italic-webfont.eot'); - src: url('./fonts/delicious-italic-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-italic-webfont.woff') format('woff'), - url('./fonts/delicious-italic-webfont.ttf') format('truetype'), - url('./fonts/delicious-italic-webfont.svg#DeliciousItalic') format('svg'); - font-weight: normal; - font-style: normal; - -} - -@font-face { - font-family: 'DeliciousRoman'; - src: url('./fonts/delicious-roman-webfont.eot'); - src: url('./fonts/delicious-roman-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-roman-webfont.woff') format('woff'), - url('./fonts/delicious-roman-webfont.ttf') format('truetype'), - url('./fonts/delicious-roman-webfont.svg#DeliciousRoman') format('svg'); - font-weight: normal; - font-style: normal; - -} - -@font-face { - font-family: 'DeliciousSmallCapsRegular'; - src: url('./fonts/delicious-smallcaps-webfont.eot'); - src: url('./fonts/delicious-smallcaps-webfont.eot?#iefix') format('embedded-opentype'), - url('./fonts/delicious-smallcaps-webfont.woff') format('woff'), - url('./fonts/delicious-smallcaps-webfont.ttf') format('truetype'), - url('./fonts/delicious-smallcaps-webfont.svg#DeliciousSmallCapsRegular') format('svg'); - font-weight: normal; - font-style: normal; - -} - diff --git a/script/compact-xapian-database b/script/compact-xapian-database index f1a6058b0..982c0e878 100755 --- a/script/compact-xapian-database +++ b/script/compact-xapian-database @@ -4,7 +4,7 @@ export RAILS_ENV=$1 set -e if [ -x /usr/bin/xapian-compact ]; then - XAPIAN_DB_DIR=$( cd "$( dirname "$0" )" && pwd )/../vendor/plugins/acts_as_xapian/xapiandbs + XAPIAN_DB_DIR=$( cd "$( dirname "$0" )" && pwd )/../lib/acts_as_xapian/xapiandbs if [ -e "$XAPIAN_DB_DIR/$RAILS_ENV.new" ]; then echo >&2 "Didn't compact Xapian database because there was an existing database at $XAPIAN_DB_DIR/$RAILS_ENV.new" exit 1 diff --git a/script/handle-mail-replies.rb b/script/handle-mail-replies.rb index da0fc8e96..cbff03acb 100755 --- a/script/handle-mail-replies.rb +++ b/script/handle-mail-replies.rb @@ -20,6 +20,9 @@ $:.push(File.join($alaveteli_dir, "lib", "mail_handler")) load 'configuration.rb' MySociety::Config.set_file(File.join($alaveteli_dir, 'config', 'general'), true) MySociety::Config.load_default + + +require 'active_support/all' require 'mail_handler' if RUBY_VERSION.to_f >= 1.9 # the default encoding for IO is utf-8, and we use utf-8 internally diff --git a/script/rails-post-deploy b/script/rails-post-deploy index c09868347..a88e28b19 100755 --- a/script/rails-post-deploy +++ b/script/rails-post-deploy @@ -96,3 +96,8 @@ bundle exec rake submodules:check bundle exec rake db:migrate #--trace bundle exec rake themes:install + +if [ "$OPTION_STAGING_SITE" = "0" ] +then + bundle exec rake assets:precompile +fi diff --git a/script/switch-theme.rb b/script/switch-theme.rb index f6ecc80b1..980853687 100755 --- a/script/switch-theme.rb +++ b/script/switch-theme.rb @@ -121,9 +121,13 @@ else 'alavetelitheme') symlink(full_theme_path, - File.join(alaveteli_directory, 'vendor', 'plugins'), + File.join(alaveteli_directory, 'lib', 'themes'), requested_theme) end STDERR.puts """Switched to #{requested_theme}! -You will need to restart any development server you have running.""" +You will need to: + 1. restart any development server you have running. + 2. run: bundle exec rake assets:clean + 3. run: bundle exec rake assets:precompile +""" diff --git a/spec/fixtures/public_body_translations.yml b/spec/fixtures/public_body_translations.yml index 2030804ac..225bd74e2 100644 --- a/spec/fixtures/public_body_translations.yml +++ b/spec/fixtures/public_body_translations.yml @@ -10,6 +10,8 @@ geraldine_es_public_body_translation: notes: "" publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 geraldine_en_public_body_translation: name: Geraldine Quango @@ -23,6 +25,8 @@ geraldine_en_public_body_translation: notes: "" publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 humpadink_es_public_body_translation: name: "El Department for Humpadinking" @@ -36,6 +40,8 @@ humpadink_es_public_body_translation: notes: Baguette publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 humpadink_en_public_body_translation: name: "Department for Humpadinking" @@ -49,6 +55,8 @@ humpadink_en_public_body_translation: notes: An albatross told me!!! publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 forlorn_en_public_body_translation: name: "Department of Loneliness" @@ -62,6 +70,8 @@ forlorn_en_public_body_translation: notes: A very lonely public body that no one has corresponded with publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 silly_walks_en_public_body_translation: id: 6 @@ -75,6 +85,8 @@ silly_walks_en_public_body_translation: notes: You know the one. publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 sensible_walks_en_public_body_translation: id: 7 @@ -88,6 +100,8 @@ sensible_walks_en_public_body_translation: notes: I bet you’ve never heard of it. publication_scheme: "" disclosure_log: "" + created_at: 2008-10-25 10:51:01.161639 + updated_at: 2008-10-25 10:51:01.161639 other_public_body_translation: id: 8 @@ -101,6 +115,8 @@ other_public_body_translation: notes: More notes publication_scheme: "" disclosure_log: "" + created_at: 2008-10-25 10:51:01.161639 + updated_at: 2008-10-25 10:51:01.161639 humpadink_he_IL_public_body_translation: name: "Hebrew Humpadinking" @@ -114,6 +130,8 @@ humpadink_he_IL_public_body_translation: notes: An albatross told me!!! publication_scheme: "" disclosure_log: "" + created_at: 2007-10-24 10:51:01.161639 + updated_at: 2007-10-24 10:51:01.161639 accented_public_body_translation: id: 10 @@ -127,3 +145,5 @@ accented_public_body_translation: notes: This is to test unicode handling in body names publication_scheme: "" disclosure_log: "" + created_at: 2008-10-25 10:51:01.161639 + updated_at: 2008-10-25 10:51:01.161639 diff --git a/spec/lib/mail_handler/mail_handler_spec.rb b/spec/lib/mail_handler/mail_handler_spec.rb index aa351bd94..bc027eaec 100644 --- a/spec/lib/mail_handler/mail_handler_spec.rb +++ b/spec/lib/mail_handler/mail_handler_spec.rb @@ -235,7 +235,7 @@ describe 'when deriving a name, email and formatted address from a message from it 'should quote a name with quotes in it' do should_render_from_address('"FOI \" Person" <foiperson@localhost>', - ['FOI \" Person', + ['FOI " Person', 'foiperson@localhost', '"FOI \" Person" <foiperson@localhost>']) end diff --git a/spec/lib/sendmail_return_path_spec.rb b/spec/lib/sendmail_return_path_spec.rb deleted file mode 100644 index 83436c2bd..000000000 --- a/spec/lib/sendmail_return_path_spec.rb +++ /dev/null @@ -1,88 +0,0 @@ -# This is a test of the monkey patches in sendmail_return_path.rb - -# In Rails 3 the monkeypatches are not needed anymore because sendmail now has the "-f" flag -# set correctly. So, strictly these tests are testing the Rails internals. So, that means we really -# should delete them. Let's do that later when things have settled down. For the time being leave -# them in - -require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') - -describe "when sending email with an altered return path" do - before(:each) { ActionMailer::Base.deliveries = [] } - - it "should default to delivery method test" do - ActionMailer::Base.delivery_method.should == :test - end - - it "should let the helper change the method" do - with_delivery_method :smtp do - ActionMailer::Base.delivery_method.should == :smtp - end - ActionMailer::Base.delivery_method.should == :test - end - - # Documentation for fancy mock functions: http://rspec.info/documentation/mocks/message_expectations.html - it "should set the return path when sending email using SMTP" do - mock_smtp = mock("smtp") - mock_smtp_session = mock("smtp_session") - - mock_smtp.should_receive(:start).once.and_yield(mock_smtp_session) - # the second parameter to the SMTP session is the sender (return path) - mock_smtp_session.should_receive(:sendmail).once.with(anything(), "test@localhost", anything()) - - Net::SMTP.stub!(:new).and_return(mock_smtp) - - with_delivery_method :smtp do - ContactMailer.to_admin_message( - "Mr. Test", "test@localhost", "Test script spec/lib/sendmail_return_path_spec.rb", - "This is just a test for a test script", nil, nil, nil - ).deliver - end - - deliveries = ActionMailer::Base.deliveries - deliveries.size.should == 0 - end - - it "should set the return path when sending email using sendmail" do - with_stub_popen do - IO.should_receive(:popen).once.with('/usr/sbin/sendmail -i -t -f "test@localhost" postmaster@localhost', "w+") - with_delivery_method :sendmail do - ContactMailer.to_admin_message( - "Mr. Test", "test@localhost", "Test script spec/lib/sendmail_return_path_spec.rb", - "This is just a test for a test script", nil, nil, nil - ).deliver - end - end - - deliveries = ActionMailer::Base.deliveries - deliveries.size.should == 0 - end - - - protected - # Change the way Rails delivers memory, just for current scope - def with_delivery_method(new_delivery_method) - old_delivery_method, ActionMailer::Base.delivery_method = ActionMailer::Base.delivery_method, new_delivery_method - yield - ensure - ActionMailer::Base.delivery_method = old_delivery_method - end - - # By default, we can't stub popen, presumably because it is a builtin written in C. - # Replace it entirely with a normal method that just calls the C one, so we can stub it - - # this leaves IO working afterwards (for other tests that run in the same instance). - def with_stub_popen() - IO.class_eval "@orig_popen = self.method(:popen); def self.popen(a, b, &c); @orig_popen.call(a, b, &c); end" - begin - yield - ensure - # in theory would undo the popen alterations and return IO to a pristine state, but - # don't know how to (much fiddling with alias bind and the like didn't help). It - # doesn't matter - the new popen should behave just the same. - end - end - - -end - - diff --git a/spec/mailers/application_mailer_spec.rb b/spec/mailers/application_mailer_spec.rb index d8993f78f..718ac47fb 100644 --- a/spec/mailers/application_mailer_spec.rb +++ b/spec/mailers/application_mailer_spec.rb @@ -13,7 +13,7 @@ describe ApplicationMailer do end def add_mail_methods(method_names) - method_names.each{ |method_name| ApplicationMailer.send(:define_method, method_name){} } + method_names.each{ |method_name| ApplicationMailer.send(:define_method, method_name){ mail() } } end def remove_mail_methods(method_names) diff --git a/spec/models/xapian_spec.rb b/spec/models/xapian_spec.rb index 3c9fff784..a1e060d8e 100644 --- a/spec/models/xapian_spec.rb +++ b/spec/models/xapian_spec.rb @@ -370,7 +370,7 @@ describe PublicBody, " when only indexing selected things on a rebuild" do end end -# I would expect ActsAsXapian to have some tests under vendor/plugins/acts_as_xapian, but +# I would expect ActsAsXapian to have some tests under lib/acts_as_xapian, but # it looks like this is not the case. Putting a test here instead. describe ActsAsXapian::Search, "#words_to_highlight" do before(:each) do diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index d22f3c0ff..1eeb8603b 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -13,6 +13,10 @@ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[ SimpleCov.start('rails') do add_filter 'commonlib' add_filter 'vendor/plugins' + add_filter 'lib/strip_attributes' + add_filter 'lib/has_tag_string' + add_filter 'lib/acts_as_xapian' + add_filter 'lib/themes' end Spork.prefork do diff --git a/vendor/plugins/acts_as_xapian/.cvsignore b/vendor/plugins/acts_as_xapian/.cvsignore deleted file mode 100644 index 6379fb207..000000000 --- a/vendor/plugins/acts_as_xapian/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -xapiandbs -.git diff --git a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/acts_as_xapian_generator.rb b/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/acts_as_xapian_generator.rb deleted file mode 100644 index a1cd1801d..000000000 --- a/vendor/plugins/acts_as_xapian/generators/acts_as_xapian/acts_as_xapian_generator.rb +++ /dev/null @@ -1,13 +0,0 @@ -class ActsAsXapianGenerator < Rails::Generator::Base - def manifest - record do |m| - m.migration_template 'migration.rb', 'db/migrate', - :migration_file_name => "create_acts_as_xapian" - end - end - - protected - def banner - "Usage: #{$0} acts_as_xapian" - end -end diff --git a/vendor/plugins/acts_as_xapian/init.rb b/vendor/plugins/acts_as_xapian/init.rb deleted file mode 100644 index 1e5b8557b..000000000 --- a/vendor/plugins/acts_as_xapian/init.rb +++ /dev/null @@ -1,7 +0,0 @@ -# acts_as_xapian/init.rb: -# -# Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved. -# Email: hello@mysociety.org; WWW: http://www.mysociety.org/ - -require 'acts_as_xapian' - diff --git a/vendor/plugins/has_tag_string/init.rb b/vendor/plugins/has_tag_string/init.rb deleted file mode 100644 index 4a07073a7..000000000 --- a/vendor/plugins/has_tag_string/init.rb +++ /dev/null @@ -1,2 +0,0 @@ -require 'has_tag_string' - diff --git a/vendor/plugins/strip_attributes/.gitignore b/vendor/plugins/strip_attributes/.gitignore deleted file mode 100644 index 1a240903a..000000000 --- a/vendor/plugins/strip_attributes/.gitignore +++ /dev/null @@ -1 +0,0 @@ -rdoc
\ No newline at end of file diff --git a/vendor/plugins/strip_attributes/init.rb b/vendor/plugins/strip_attributes/init.rb deleted file mode 100644 index 2c71b29bc..000000000 --- a/vendor/plugins/strip_attributes/init.rb +++ /dev/null @@ -1,2 +0,0 @@ -require 'strip_attributes' -ActiveRecord::Base.extend(StripAttributes) |