From 414e59e28035cad8a893aeeeb998bf7c5948fbb8 Mon Sep 17 00:00:00 2001 From: Connor Turland Date: Tue, 28 Jan 2014 22:46:58 -0500 Subject: [PATCH] this is a lot of changes. too many to say here, oops --- app/assets/images/MMCCicon_add.png | Bin 0 -> 269 bytes app/assets/images/MMCCicon_commons.png | Bin 0 -> 1167 bytes app/assets/images/MMCCicon_help.png | Bin 0 -> 919 bytes app/assets/images/MMCCicon_info.png | Bin 0 -> 673 bytes app/assets/images/MMCCicon_invite.png | Bin 0 -> 471 bytes app/assets/images/MMCCicon_logout.png | Bin 0 -> 772 bytes app/assets/images/MMCCicon_map.png | Bin 0 -> 725 bytes app/assets/images/MMCCicon_mapper.png | Bin 0 -> 1008 bytes app/assets/images/MMCCicon_pop-out.png | Bin 0 -> 358 bytes app/assets/images/MMCCicon_private.png | Bin 0 -> 1169 bytes app/assets/images/MMCCicon_public.png | Bin 0 -> 1168 bytes app/assets/images/MMCCicon_settings.png | Bin 0 -> 466 bytes app/assets/images/MMCCicon_synapse.png | Bin 0 -> 603 bytes app/assets/images/MMCCicon_topic.png | Bin 0 -> 892 bytes app/assets/images/account_icon.png | Bin 0 -> 3327 bytes app/assets/images/argument.png | Bin 10405 -> 10250 bytes app/assets/images/decision.png | Bin 10395 -> 10357 bytes app/assets/images/example.png | Bin 10735 -> 9176 bytes app/assets/images/experience.png | Bin 11076 -> 10314 bytes app/assets/images/futuredev.png | Bin 10311 -> 11835 bytes app/assets/images/idea.png | Bin 10711 -> 9251 bytes app/assets/images/implication.png | Bin 9993 -> 11919 bytes app/assets/images/insight.png | Bin 7822 -> 9832 bytes app/assets/images/intention.png | Bin 10215 -> 10331 bytes app/assets/images/knowledge.png | Bin 9901 -> 9697 bytes app/assets/images/location.png | Bin 10109 -> 9871 bytes app/assets/images/menu_icon_32.png | Bin 0 -> 3059 bytes app/assets/images/moviemap.png | Bin 10540 -> 10563 bytes app/assets/images/my_maps_icon.png | Bin 0 -> 6656 bytes app/assets/images/opinion.png | Bin 10197 -> 9553 bytes app/assets/images/pro.png | Bin 10111 -> 8956 bytes app/assets/images/problem.png | Bin 10776 -> 11075 bytes app/assets/images/question.png | Bin 10236 -> 8585 bytes app/assets/images/resource.png | Bin 9822 -> 9661 bytes app/assets/images/role.png | Bin 9955 -> 9598 bytes app/assets/images/search_icon_32x32.png | Bin 0 -> 543 bytes app/assets/images/task.png | Bin 8750 -> 7676 bytes app/assets/images/wildcard.png | Bin 10416 -> 9359 bytes .../Jit/graphsettings-event-handlers.js | 115 ++- .../javascripts/Jit/graphsettings-model.js | 5 + app/assets/javascripts/Jit/graphsettings.js | 85 +- app/assets/javascripts/Jit/jit2.0.0.js | 44 +- .../Jit/select-edit-delete-nodes-and-edges.js | 1 - app/assets/javascripts/application.js | 251 ++++-- .../autocomplete-rails-uncompressed.js | 130 --- .../carousel/cloud-carousel.1.0.5.js | 40 +- app/assets/javascripts/hogan-2.0.0.js | 576 +++++++++++++ app/assets/javascripts/realtime.js.coffee | 8 +- app/assets/javascripts/typeahead.min.js | 7 + app/assets/stylesheets/application.css | 794 ++++++++++++------ app/controllers/application_controller.rb | 16 + app/controllers/main_controller.rb | 148 +++- app/controllers/topics_controller.rb | 16 +- app/controllers/users_controller.rb | 13 - app/helpers/content_helper.rb | 13 + app/helpers/maps_helper.rb | 30 + app/helpers/topics_helper.rb | 21 + app/helpers/users_helper.rb | 16 + app/models/map.rb | 11 + app/models/topic.rb | 2 +- app/views/layouts/_account.html.erb | 40 + app/views/layouts/_searchtemplates.html.erb | 88 ++ app/views/layouts/application.html.erb | 63 +- app/views/main/_analyze.html.erb | 10 - app/views/main/_find.html.erb | 80 -- app/views/main/_organize.html.erb | 9 - app/views/main/console.html.erb | 48 -- app/views/main/home.html.erb | 1 - app/views/maps/_newtopic.html.erb | 2 +- app/views/maps/show.html.erb | 36 +- app/views/synapses/create.js.erb | 26 +- app/views/topics/_new.html.erb | 2 +- app/views/topics/create.js.erb | 20 +- app/views/topics/show.html.erb | 12 +- app/views/users/edit.html.erb | 2 + app/views/users/passwords/new.html.erb | 3 +- app/views/users/registrations/new.html.erb | 6 +- app/views/users/sessions/new.html.erb | 9 +- app/views/users/show.html.erb | 40 - config/routes.rb | 70 +- ...n_add-e907e5cd1adb7cee2cacd99aabf8ed5d.png | Bin 0 -> 269 bytes public/assets/MMCCicon_add.png | Bin 0 -> 269 bytes ...mmons-51c9d948f0f791cf52aca4e294e48975.png | Bin 0 -> 1167 bytes public/assets/MMCCicon_commons.png | Bin 0 -> 1167 bytes ..._help-dfde3a342abc809a6508695a75ea9b87.png | Bin 0 -> 919 bytes public/assets/MMCCicon_help.png | Bin 0 -> 919 bytes ..._info-76fbf35e20e1bb6facb3e14254543c9c.png | Bin 0 -> 673 bytes public/assets/MMCCicon_info.png | Bin 0 -> 673 bytes ...nvite-33ce02d3a0500b602c15e9192c3c4f66.png | Bin 0 -> 471 bytes public/assets/MMCCicon_invite.png | Bin 0 -> 471 bytes ...ogout-2b7d4dfff8cdc4d38089c082ac0c6929.png | Bin 0 -> 772 bytes public/assets/MMCCicon_logout.png | Bin 0 -> 772 bytes ...n_map-77c3768601370ee04d15f7da448fee91.png | Bin 0 -> 725 bytes public/assets/MMCCicon_map.png | Bin 0 -> 725 bytes ...apper-3d7a6f42563271141b72483efa7701d2.png | Bin 0 -> 1008 bytes public/assets/MMCCicon_mapper.png | Bin 0 -> 1008 bytes ...p-out-f929f9f904f0dde84210a68980110e9b.png | Bin 0 -> 358 bytes public/assets/MMCCicon_pop-out.png | Bin 0 -> 358 bytes ...ivate-9de86555fbdb4a6acafb0082678c07bd.png | Bin 0 -> 1169 bytes public/assets/MMCCicon_private.png | Bin 0 -> 1169 bytes ...ublic-1f8e2ccd3461f477899c0e0adb8fe501.png | Bin 0 -> 1168 bytes public/assets/MMCCicon_public.png | Bin 0 -> 1168 bytes ...tings-b80201e3f081378771338f2a37afc64b.png | Bin 0 -> 466 bytes public/assets/MMCCicon_settings.png | Bin 0 -> 466 bytes ...napse-ddb1ae0d586aa9b787244b3648bde538.png | Bin 0 -> 603 bytes public/assets/MMCCicon_synapse.png | Bin 0 -> 603 bytes ...topic-f3343e0b8ed9c74cd084e65a9a2ae9a8.png | Bin 0 -> 892 bytes public/assets/MMCCicon_topic.png | Bin 0 -> 892 bytes ..._icon-accfe0ae2fc05f59f0459bb5da3d92a3.png | Bin 0 -> 3327 bytes public/assets/account_icon.png | Bin 0 -> 3327 bytes ...on-2c86fcfea5ad67960a6daa7b4946e241.css.gz | Bin 9960 -> 0 bytes ...tion-5944cd89814c860b80568fec3cd40f3e.css} | 2 +- ...on-5944cd89814c860b80568fec3cd40f3e.css.gz | Bin 0 -> 11051 bytes ...cation-c3fe52825aa0abf02fc60756d5e1dcec.js | 36 - ...ion-c3fe52825aa0abf02fc60756d5e1dcec.js.gz | Bin 195417 -> 0 bytes ...cation-d814b5d6c168834ae86da9ae7c11f401.js | 31 + ...ion-d814b5d6c168834ae86da9ae7c11f401.js.gz | Bin 0 -> 154070 bytes public/assets/application.css | 2 +- public/assets/application.css.gz | Bin 9960 -> 11051 bytes public/assets/application.js | 41 +- public/assets/application.js.gz | Bin 195417 -> 154070 bytes ...ument-0d73e7980d2a2051880d458038a44442.png | Bin 0 -> 10250 bytes ...ument-2fbcf5f2508bb08f5f2bd37e1bd4ceea.png | Bin 10405 -> 0 bytes public/assets/argument.png | Bin 10405 -> 10250 bytes ...ision-1469be34a607298a833b711aba314380.png | Bin 10395 -> 0 bytes ...ision-457574169c586146d3c8533fb2126eaa.png | Bin 0 -> 10357 bytes public/assets/decision.png | Bin 10395 -> 10357 bytes ...ample-4dec1f08747fe8160cd8ee749e0796ec.png | Bin 0 -> 9176 bytes ...ample-c4aac5c9d6c046d5e092e596ee9ca2f7.png | Bin 10735 -> 0 bytes public/assets/example.png | Bin 10735 -> 9176 bytes ...ience-1afef68cd310743142f89ab67c9c40cd.png | Bin 0 -> 10314 bytes ...ience-b8fdc9e6f79ca620ee298a55498931e2.png | Bin 11076 -> 0 bytes public/assets/experience.png | Bin 11076 -> 10314 bytes ...redev-0d5daeb0100f388aedb79d75bd7e3fb8.png | Bin 0 -> 11835 bytes ...redev-1c864500103936fb1ada0b194fb97c1d.png | Bin 10311 -> 0 bytes public/assets/futuredev.png | Bin 10311 -> 11835 bytes .../idea-84fc29553000b7c710f136ef797898da.png | Bin 0 -> 9251 bytes .../idea-dd3262ac6bc9b082d98dd02524e5bdf1.png | Bin 10711 -> 0 bytes public/assets/idea.png | Bin 10711 -> 9251 bytes ...ation-614f81d187607020b491db7bb060c4ee.png | Bin 9993 -> 0 bytes ...ation-df9ae923c3614de364c781519d6c4afc.png | Bin 0 -> 11919 bytes public/assets/implication.png | Bin 9993 -> 11919 bytes ...sight-76f0ab9b04a6bd112f1899adb171520d.png | Bin 0 -> 9832 bytes ...sight-9fceade9b7711d8770b55999bca9be59.png | Bin 7822 -> 0 bytes public/assets/insight.png | Bin 7822 -> 9832 bytes ...ntion-14e542078f64d4818dc45f358b235a9c.png | Bin 0 -> 10331 bytes ...ntion-f99bd393fba776079833c602c22a1309.png | Bin 10215 -> 0 bytes public/assets/intention.png | Bin 10215 -> 10331 bytes ...ledge-3a4ccca68b046ef64bb19f855d4305d2.png | Bin 9901 -> 0 bytes ...ledge-ad0ac3677d346b09b49b9e693514b3d1.png | Bin 0 -> 9697 bytes public/assets/knowledge.png | Bin 9901 -> 9697 bytes ...ation-5ad5660c5a3132a6c932159bea135f65.png | Bin 10109 -> 0 bytes ...ation-cea0f2a62f9d151cafdc0110dded953e.png | Bin 0 -> 9871 bytes public/assets/location.png | Bin 10109 -> 9871 bytes public/assets/manifest.yml | 124 ++- ...on_32-45a773e31d8a68a2e404f176e528b467.png | Bin 0 -> 3059 bytes public/assets/menu_icon_32.png | Bin 0 -> 3059 bytes ...iemap-090435483d05cf98c6aad5c4d09e3b06.png | Bin 0 -> 10563 bytes ...iemap-43e11aac061cde9b3292edaa296d4c35.png | Bin 10540 -> 0 bytes public/assets/moviemap.png | Bin 10540 -> 10563 bytes ..._icon-fcf59dec797c1fcbe0fe2e4d65e3621a.png | Bin 0 -> 6656 bytes public/assets/my_maps_icon.png | Bin 0 -> 6656 bytes ...inion-8180fcf67a74b7a8c4a450c4c75d4589.png | Bin 0 -> 9553 bytes ...inion-ef6ecbc90fd143bae407204845c1a5fe.png | Bin 10197 -> 0 bytes public/assets/opinion.png | Bin 10197 -> 9553 bytes .../pro-5887086d0058a33020e48c9b26dbb35d.png | Bin 10111 -> 0 bytes .../pro-c633975d5df7701ae85723453a73ad49.png | Bin 0 -> 8956 bytes public/assets/pro.png | Bin 10111 -> 8956 bytes ...oblem-8792e99203e0d5c1595f803727d5f6e8.png | Bin 10776 -> 0 bytes ...oblem-9700584ff07c14663732e128bfea5fc8.png | Bin 0 -> 11075 bytes public/assets/problem.png | Bin 10776 -> 11075 bytes ...stion-173c48e4a6e20fff153481cb52ac30cf.png | Bin 0 -> 8585 bytes ...stion-653d6f9b4cd6b5fc619eff16f9b96a8e.png | Bin 10236 -> 0 bytes public/assets/question.png | Bin 10236 -> 8585 bytes ...ource-71e7130d4e5cfa588c27bec9fc2f5bd7.png | Bin 0 -> 9661 bytes ...ource-e2c66f5a2dc9eecb932d5bfc159be4c9.png | Bin 9822 -> 0 bytes public/assets/resource.png | Bin 9822 -> 9661 bytes .../role-780437f47e5c0db0f7b4bbf1f95a069c.png | Bin 0 -> 9598 bytes .../role-96a6877bad7c3c51bc495deab0fa9411.png | Bin 9955 -> 0 bytes public/assets/role.png | Bin 9955 -> 9598 bytes ...32x32-69cf355efabc41a792639fd80e443077.png | Bin 0 -> 543 bytes public/assets/search_icon_32x32.png | Bin 0 -> 543 bytes .../task-9a87e7f3a1fd2a5a314af77ab047cebf.png | Bin 8750 -> 0 bytes .../task-f2d6edd73c8e920e2c16594d62102ce2.png | Bin 0 -> 7676 bytes public/assets/task.png | Bin 8750 -> 7676 bytes ...dcard-d14b7f8216956998b0c5bac8e6f000ce.png | Bin 10416 -> 0 bytes ...dcard-decf4ac26625f917b10c8621d963a232.png | Bin 0 -> 9359 bytes public/assets/wildcard.png | Bin 10416 -> 9359 bytes test/fixtures/users.yml | 38 +- 189 files changed, 2117 insertions(+), 1066 deletions(-) create mode 100644 app/assets/images/MMCCicon_add.png create mode 100644 app/assets/images/MMCCicon_commons.png create mode 100644 app/assets/images/MMCCicon_help.png create mode 100644 app/assets/images/MMCCicon_info.png create mode 100644 app/assets/images/MMCCicon_invite.png create mode 100644 app/assets/images/MMCCicon_logout.png create mode 100644 app/assets/images/MMCCicon_map.png create mode 100644 app/assets/images/MMCCicon_mapper.png create mode 100644 app/assets/images/MMCCicon_pop-out.png create mode 100644 app/assets/images/MMCCicon_private.png create mode 100644 app/assets/images/MMCCicon_public.png create mode 100644 app/assets/images/MMCCicon_settings.png create mode 100644 app/assets/images/MMCCicon_synapse.png create mode 100644 app/assets/images/MMCCicon_topic.png create mode 100644 app/assets/images/account_icon.png create mode 100644 app/assets/images/menu_icon_32.png create mode 100644 app/assets/images/my_maps_icon.png create mode 100644 app/assets/images/search_icon_32x32.png delete mode 100644 app/assets/javascripts/autocomplete-rails-uncompressed.js create mode 100644 app/assets/javascripts/hogan-2.0.0.js create mode 100644 app/assets/javascripts/typeahead.min.js create mode 100644 app/helpers/content_helper.rb create mode 100644 app/views/layouts/_account.html.erb create mode 100644 app/views/layouts/_searchtemplates.html.erb delete mode 100644 app/views/main/_analyze.html.erb delete mode 100644 app/views/main/_find.html.erb delete mode 100644 app/views/main/_organize.html.erb delete mode 100644 app/views/main/console.html.erb delete mode 100644 app/views/users/show.html.erb create mode 100644 public/assets/MMCCicon_add-e907e5cd1adb7cee2cacd99aabf8ed5d.png create mode 100644 public/assets/MMCCicon_add.png create mode 100644 public/assets/MMCCicon_commons-51c9d948f0f791cf52aca4e294e48975.png create mode 100644 public/assets/MMCCicon_commons.png create mode 100644 public/assets/MMCCicon_help-dfde3a342abc809a6508695a75ea9b87.png create mode 100644 public/assets/MMCCicon_help.png create mode 100644 public/assets/MMCCicon_info-76fbf35e20e1bb6facb3e14254543c9c.png create mode 100644 public/assets/MMCCicon_info.png create mode 100644 public/assets/MMCCicon_invite-33ce02d3a0500b602c15e9192c3c4f66.png create mode 100644 public/assets/MMCCicon_invite.png create mode 100644 public/assets/MMCCicon_logout-2b7d4dfff8cdc4d38089c082ac0c6929.png create mode 100644 public/assets/MMCCicon_logout.png create mode 100644 public/assets/MMCCicon_map-77c3768601370ee04d15f7da448fee91.png create mode 100644 public/assets/MMCCicon_map.png create mode 100644 public/assets/MMCCicon_mapper-3d7a6f42563271141b72483efa7701d2.png create mode 100644 public/assets/MMCCicon_mapper.png create mode 100644 public/assets/MMCCicon_pop-out-f929f9f904f0dde84210a68980110e9b.png create mode 100644 public/assets/MMCCicon_pop-out.png create mode 100644 public/assets/MMCCicon_private-9de86555fbdb4a6acafb0082678c07bd.png create mode 100644 public/assets/MMCCicon_private.png create mode 100644 public/assets/MMCCicon_public-1f8e2ccd3461f477899c0e0adb8fe501.png create mode 100644 public/assets/MMCCicon_public.png create mode 100644 public/assets/MMCCicon_settings-b80201e3f081378771338f2a37afc64b.png create mode 100644 public/assets/MMCCicon_settings.png create mode 100644 public/assets/MMCCicon_synapse-ddb1ae0d586aa9b787244b3648bde538.png create mode 100644 public/assets/MMCCicon_synapse.png create mode 100644 public/assets/MMCCicon_topic-f3343e0b8ed9c74cd084e65a9a2ae9a8.png create mode 100644 public/assets/MMCCicon_topic.png create mode 100644 public/assets/account_icon-accfe0ae2fc05f59f0459bb5da3d92a3.png create mode 100644 public/assets/account_icon.png delete mode 100644 public/assets/application-2c86fcfea5ad67960a6daa7b4946e241.css.gz rename public/assets/{application-2c86fcfea5ad67960a6daa7b4946e241.css => application-5944cd89814c860b80568fec3cd40f3e.css} (81%) create mode 100644 public/assets/application-5944cd89814c860b80568fec3cd40f3e.css.gz delete mode 100644 public/assets/application-c3fe52825aa0abf02fc60756d5e1dcec.js delete mode 100644 public/assets/application-c3fe52825aa0abf02fc60756d5e1dcec.js.gz create mode 100644 public/assets/application-d814b5d6c168834ae86da9ae7c11f401.js create mode 100644 public/assets/application-d814b5d6c168834ae86da9ae7c11f401.js.gz create mode 100644 public/assets/argument-0d73e7980d2a2051880d458038a44442.png delete mode 100644 public/assets/argument-2fbcf5f2508bb08f5f2bd37e1bd4ceea.png delete mode 100644 public/assets/decision-1469be34a607298a833b711aba314380.png create mode 100644 public/assets/decision-457574169c586146d3c8533fb2126eaa.png create mode 100644 public/assets/example-4dec1f08747fe8160cd8ee749e0796ec.png delete mode 100644 public/assets/example-c4aac5c9d6c046d5e092e596ee9ca2f7.png create mode 100644 public/assets/experience-1afef68cd310743142f89ab67c9c40cd.png delete mode 100644 public/assets/experience-b8fdc9e6f79ca620ee298a55498931e2.png create mode 100644 public/assets/futuredev-0d5daeb0100f388aedb79d75bd7e3fb8.png delete mode 100644 public/assets/futuredev-1c864500103936fb1ada0b194fb97c1d.png create mode 100644 public/assets/idea-84fc29553000b7c710f136ef797898da.png delete mode 100644 public/assets/idea-dd3262ac6bc9b082d98dd02524e5bdf1.png delete mode 100644 public/assets/implication-614f81d187607020b491db7bb060c4ee.png create mode 100644 public/assets/implication-df9ae923c3614de364c781519d6c4afc.png create mode 100644 public/assets/insight-76f0ab9b04a6bd112f1899adb171520d.png delete mode 100644 public/assets/insight-9fceade9b7711d8770b55999bca9be59.png create mode 100644 public/assets/intention-14e542078f64d4818dc45f358b235a9c.png delete mode 100644 public/assets/intention-f99bd393fba776079833c602c22a1309.png delete mode 100644 public/assets/knowledge-3a4ccca68b046ef64bb19f855d4305d2.png create mode 100644 public/assets/knowledge-ad0ac3677d346b09b49b9e693514b3d1.png delete mode 100644 public/assets/location-5ad5660c5a3132a6c932159bea135f65.png create mode 100644 public/assets/location-cea0f2a62f9d151cafdc0110dded953e.png create mode 100644 public/assets/menu_icon_32-45a773e31d8a68a2e404f176e528b467.png create mode 100644 public/assets/menu_icon_32.png create mode 100644 public/assets/moviemap-090435483d05cf98c6aad5c4d09e3b06.png delete mode 100644 public/assets/moviemap-43e11aac061cde9b3292edaa296d4c35.png create mode 100644 public/assets/my_maps_icon-fcf59dec797c1fcbe0fe2e4d65e3621a.png create mode 100644 public/assets/my_maps_icon.png create mode 100644 public/assets/opinion-8180fcf67a74b7a8c4a450c4c75d4589.png delete mode 100644 public/assets/opinion-ef6ecbc90fd143bae407204845c1a5fe.png delete mode 100644 public/assets/pro-5887086d0058a33020e48c9b26dbb35d.png create mode 100644 public/assets/pro-c633975d5df7701ae85723453a73ad49.png delete mode 100644 public/assets/problem-8792e99203e0d5c1595f803727d5f6e8.png create mode 100644 public/assets/problem-9700584ff07c14663732e128bfea5fc8.png create mode 100644 public/assets/question-173c48e4a6e20fff153481cb52ac30cf.png delete mode 100644 public/assets/question-653d6f9b4cd6b5fc619eff16f9b96a8e.png create mode 100644 public/assets/resource-71e7130d4e5cfa588c27bec9fc2f5bd7.png delete mode 100644 public/assets/resource-e2c66f5a2dc9eecb932d5bfc159be4c9.png create mode 100644 public/assets/role-780437f47e5c0db0f7b4bbf1f95a069c.png delete mode 100644 public/assets/role-96a6877bad7c3c51bc495deab0fa9411.png create mode 100644 public/assets/search_icon_32x32-69cf355efabc41a792639fd80e443077.png create mode 100644 public/assets/search_icon_32x32.png delete mode 100644 public/assets/task-9a87e7f3a1fd2a5a314af77ab047cebf.png create mode 100644 public/assets/task-f2d6edd73c8e920e2c16594d62102ce2.png delete mode 100644 public/assets/wildcard-d14b7f8216956998b0c5bac8e6f000ce.png create mode 100644 public/assets/wildcard-decf4ac26625f917b10c8621d963a232.png diff --git a/app/assets/images/MMCCicon_add.png b/app/assets/images/MMCCicon_add.png new file mode 100644 index 0000000000000000000000000000000000000000..fdb4045fbe0d5b8afd121a59b99fab5be332f495 GIT binary patch literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?3oVGw3ym^DWNC@5Lt z8c`CQpH@S#dX{pCTo5>@nAazqAQ>)@%y59XfSNSaq=FJUN+_X%S3*N-C`b=8I6Vx$0N`8z zd;>jw9!ay&lWa+Ge%P5MvAwbO+g(Y!D;kWk=r_}!I$qLfG&=laz`4g6-}@HPDd&uH z0_Mg`<{lg#2w_ew&L^Bxye5!y&LaR1)uZ7XLfqO?ad1D2V<3FmWfuXtL0D6FQe*laf0@$oTxd3j;3^!4?{uCA_Fx7#&&1s-WR>*NtGV>(c~ z-DY=pcWhpIe}88O2M4CmifaKNCT2=44(ruT@SwpX!?^$m^qdu`al>o$2sbYTBgaw0uNJ;^S(8=X$ zv*-!yN_%^I*7=|VIG2KpSSmvah9vVLGXkL2$0oIIbar-T^a2HNA_eN$Ve6)!pC9Ul z)C3@vvF}SCA0O=S@Q`h7Z50FH^YrwzQf_l|v$+2L{tnsXdJ2HZ;fn_l@}Z}vr$P}^ zx(wwcy}rI$<#u*ZKIgJ^|F)glQ>4BiM!4|^^8CX>G#V>(=px%Z3dJn<|60%`w9TjuLGdd+yD?RWfRaQ zw>ALu!HHfh!5om((g9C&lM?pHeh+sO$%@oODIN=&*S@KGBLgW zuV@+O%lKD=;hg_wKrMc4IzC#62MiwRi8%u9I{s`b!g0*UAI~*@-T!V=wEINUNv{Tl hwNtMUsi1!X3;>|y6z}FI+`9L0T|(0V5#{r;NB0-ljcG5%$C3a zU~r>()V!?QG;5yLeKP-%99cqds5SS55NFM&9YGB6R`UShTtGxF0MfCj(%bO1gM}0t! zxRH_ClHhnj9L_!&VdaKRp;Ae z8kljTukay!|BuY2Ly&V|%(rRl{uEuKX5mL-+gyZiV;3kh zYn~GR1-4amRH`xqu*sC?U0|r*ieyWP9!$k`E*%`d^^wBcNl%ql^bv`KmxT6*1kZL_ z-~!;7aZ9BN(HMZL91m|3nAtqdqj%2F!ai$$NpY zeW>LgaM&PnA9B==0dW_5#8f-Rhhqk7bk-Ew>s%tntP41MlR)scd9EUZ8g(BBk4^#8%n~h#uS(p?LI+Bt zZLA@rg!>w~wzC!9rw95eHK)SXP|UY32hIZaLJ(SbvU=KkUqeq<9+-d&$)X#kR`Le* zEVSUI=Qc<(23Pvpe|9P3x;X$j#0Q}9CCXS4@6;DuWs)lMfN6>tfml)}ekkb&lYlm`mN z6jqIRuVs1>x>n(&Lop!yN6(YqC$f~$Hj9CkOMjBfT)NS@2kY0`Bv)w-V346cw@@J0 zwikOuW^$Q{Ic;{L%?f*0@Vcf^m-4;qDRmdiU45E^7BpW994KTO^ue|u=InIdEcZr} z)`8-m+~3lMBAaM^57|y<1jbeJ_s^4>EG>M2>h6DH`W0XR$T?XF`MK;800000NkvXX Hu0mjfk3Sw5 literal 0 HcmV?d00001 diff --git a/app/assets/images/MMCCicon_invite.png b/app/assets/images/MMCCicon_invite.png new file mode 100644 index 0000000000000000000000000000000000000000..347ddc02ae11d4ccb36fab9ed1572f7e7f05b6f4 GIT binary patch literal 471 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?3oVGw3ym^DWNC@5Lt z8c`CQpH@L^K?3i4+5a-03f;iSu2<}}@mut%+^BUwe^34w&=~YK zGUvocsh?%ccMToxAKJQ>GslT#8q0#9soEP%*T`tRb!^CM4BExi;_y3sO1(3~4^_^O zlT`V#<3IE;+>(k}{Z%11|RE? zmp`f>i6pF9cYGb|Y{msvA$ouBtlY!+fbZ$!!`B&qNWEIWVAI^_gIpIbA9tI0{N~ps z&)&F+$Io_|$Npil(0~0S3_J%I9>;1t;W1!f2B8D@-e@0S_?i59_q@Fovw)Gp;OXk; Jvd$@?2>_mK!b1Q6 literal 0 HcmV?d00001 diff --git a/app/assets/images/MMCCicon_logout.png b/app/assets/images/MMCCicon_logout.png new file mode 100644 index 0000000000000000000000000000000000000000..5f22796f8859633b247d42ba4c74e7f2d0ac2ed9 GIT binary patch literal 772 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 literal 0 HcmV?d00001 diff --git a/app/assets/images/MMCCicon_public.png b/app/assets/images/MMCCicon_public.png new file mode 100644 index 0000000000000000000000000000000000000000..37a6fd07985fe2c0691bd950938414498a5599d1 GIT binary patch literal 1168 zcmV;B1aJF^P)fWa34k_&)2 zfj&Kdl4c_$Tb7+TJEMuM$o6~tBd=Bt8Dl|P5{BWB|DX*-7mg#|GTw60aGdey=B+#w z1bmwSm+WaO* zyfB-5eSNWqhX;0id|Z&T5E(9o05rtgj6QH@XNTR~+_0aYALb(W}Y*^jN20rN$yoE&SL_o~(dDq~jV5TdZolFE$c>(72t_3ln1@^#7K+N^UKm^jd z2&Qa8;IWK=dQo9+UMJCJrr{p~RQm{?brVeCgutzdz^#w=kB*N1qyk%8TWoJ{k9~Z6 zsBt*Qe+LH#3)k=N?iT&0r>AwT5a|R|QdURGvP=;9{{AkS>;qvbudlDF--Q73E^_|_ zkKYgrk+EDKjK^c=wZz-on>ywi4lXY*0}e3Yz>7XUg9Ojd&kN(Y#*Nq0ew!poLQe~z zn`GtGhyZ|d_b86Hx3`0{vol5F^YhaP)Ye}n+(Uw=rzaV+|1BU-c$OJNQRGFy1_0Km zvH-?_w2KUfO4mK^IRi;xp#AA2QiD1GxD9nJ2~;O(>o1cyj_K(@x=`PTfDQoea(#WR z2mm}Ks%szP>k`mJ5vVN`0047y{&5`ywatBe{NH4O4POEjfG%*SySuvrSX(oYO&VE% z&OkB-07kk_8Bm`9UJ3yKm`H)T>!{2y4>I2FHEydEFklsiOexvga@d~NpNfvngby(LcT+jKO}NZmYFJ< zqibN7dJlle@igN!iOfRv#$BrNT9c5~SxN~+b=Cq>i!K_36)+wakiek;^fz1+oapIv zDi`v;rNR|gDF!-$WEIu7Cgn#{iA7%%=j&<(P5WaT0ae6B34C1ywJBPqtEvmB%ET&a zp&rGpxQakb%jjLZlIA*(uC>t#-NfjMgtmyEnF_pR)#KL#R<|ezLf~WFcB8%oBrp7R1pe=vNTNt zx#FA8=cY@3#ne5i{S8IKZzW=vPYx=+mq=XpgIl$L#VWCIG5WR2Nc_&li%6#JnaC&` if3eaUfv)7A00RK>9;An*%T(t80000{`(cf-n#T!@q8zBe;QVpc}{tx&dy$2C{*=LEQj0V1#Z^+oT^2a@fN{3%QrP zAMC+B`+9d6VJ&}1WdnmE_GyXVVsT9XSLxDneXguEwa5X~J}BfpV#XcnrGv2Vw@l$I85 zwB5g|P^v%JSUimD2fBhfPiM=uTgkgF=~dE7s_^85AqAldsf=>u`q!^UrgmZvs2-!q z<%rVEO#4CtRPu+3cc2(z;l&PfK9QMavW0XG0(Kbtl7#@oG){ZiffJ%fu*mL5uE_+b zzVSe;KNt-x2n!9FWzvw&0GlXgGz+O@u85szTur_%4{;HB7{{rM0(b&%cBSJtxzPk1 z$2_=;vJeR%0VH6deV_zNUSoOR+aF~VRcd4Uvj++I4<7*r07bz20UhhA{r~^~07*qo IM6N<$f;-N*)c^nh literal 0 HcmV?d00001 diff --git a/app/assets/images/MMCCicon_synapse.png b/app/assets/images/MMCCicon_synapse.png new file mode 100644 index 0000000000000000000000000000000000000000..9fea87f0f4fa6259f5cefdae9e39a841440a57f3 GIT binary patch literal 603 zcmV-h0;K(kP)AZ~6BH(BvjLfa+LDnF;=^a( zoy|!nC7>kl-m~AGQR1%aqAkZRP+Uiux2+Z+Wd4~J5C^t|!~l3Av)z&cnam%V2bqNl z_>dG(;J@_irz!iPC{PT*M-cWyP@t6gF?bJR-=_k~Ca)v#VD^0}(0lyb=sK8v9}0*W z@K)?|E6{^KOx&|#pHqSJ0(fioxfIAoHi^bQhXR)s@J{SgD^O0@Fn_G&VzF7FYgfJ0_7+YUd} zccvy7TohPqP`2^Zox7&o#5oc82L!zB9x(NIXfzr;**HCS2*HTE4S1-H)&P%(L}lnm z&I%~Ij92o`2_C~nhj|8CWrp#)m<8Op!MpZ>@rmo*(Bsp{@VO_~DAD%?)CR>ljhe9E zXcMThEo{%geq-zL914gP_P;5?V-#>%@%WSyylWpw7Hl#{v}ZCKom=~#df?*;MD|& literal 0 HcmV?d00001 diff --git a/app/assets/images/MMCCicon_topic.png b/app/assets/images/MMCCicon_topic.png new file mode 100644 index 0000000000000000000000000000000000000000..90457c0b0d2e3c80843ab481ead132c3b13e6a38 GIT binary patch literal 892 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 JPDHLkV1l#EE@=P& literal 0 HcmV?d00001 diff --git a/app/assets/images/argument.png b/app/assets/images/argument.png index 4221eed31207d524e3dac7a3f7510decf078cf53..e306ee65b35fa126e81b785d027b4c7838734af6 100644 GIT binary patch literal 10250 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 Qu>b%707*qoM6N<$g0qt8)Bpeg literal 10405 zcmV;WC|cKvP)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0014(NklgndN%CahA_!K$ExMgdIV`knxgks}d^lzvW3#P*35yfFV00z&9}{WD>H24$3T z&?w{`Rlwl-6_FDRWqJ;4arU)*0bCUu>Nb_78UvkQb|Ia93aQzAa zAOa||LZ>*^!c_{P5)`1wTRK+)MPjD!>Rn zr>&g?lme+(3tbVQVl8x~v}6@&1%P>kv3^j7j2Qe_>le~myY&JsaHkCOnvjuwZoQ&- zpcK*L3SbtWgCZt$rG*~Hfbt&TET2@`>K*iC$wrv}m=Xj45=_um=#ldT5k>mB^NI+N z0sxAD=y8weQ3VXHUy;*LLxSQMh+{3-IQEK&t>woa@0HSmCLRkA!cQ855-^0o`h}2M zu*4upNFa)s;Ef_8=M`j>P<&S@z+^Nz5J_+43W$pd!87Y8a1dmF9%*4mIv)_Z2#9i_cL)bd>Y!JEvHBd80>woy?6{~sz$%24ha9E^ zZT&VbC<7xDdIBiaK{5!td%*-Py%z|X5f7NaBcqgD&U;4`0T9JJFR`F;pJJT2w$BV_{nts-&;nj(l?F1R<|P$*Yy zD2oCN~70P|(m~6+%Yv7Lu&sZ5rzEU!|>{C=@==gnR|;Ga*74jD=)bk?{m6 zAw%Yt8G%Q6%5jtBclmn8wtpHt2Q4X;ZTF^yi_2zMw;28|1V8<4% zL}*^JpcZZWMpGOQ2UINx)c_3uQElQ>HbaQb`k`C}A$E$2ipJ_0b62`xj6_kEf*)xD zu~CE-zSMCc@P;TN14;2arT`=SJYo+uR4jP7vBI~hW*mbk28wY4@4dyhJbGVs@zssz zP+XV>MUw!k?!KSPm5|ZWXuzPQ{XX%f%^r%FB7_8Tk@g6i8JS?Lg`U?Q5aqlww6_$x zqlEodKuY*=(Ft7#UxxcGAp07CEdHCEzxlqo)2P@s14>Qn*~&*Wid;o~?(m}@t~&do zW(!BcSwDj!X$39;nKKHBAoBULDPg}9Ft~n21fslyoI(LGI8Vg{?#D%+hANi-o2;jK z(VQ7nXuA%e;iW$BxY`LAe)NeLbm%bD9Cac9pytTqP}#Si`<<7be+mHb=C&<(V`~%s z+_(l!n_j@4-MdPidNZP^K0j>K?OG9us@N*QrlhHOkP8*DpGxSm0<7g*tLF-EFl4R1 zSnyWQi?0p@KWIn|#!WaIV<$|-aql0mG?HSwfrY&+PJ=B zMQ|kqUSRHpbb{By&ztA_=Lua>fX;R(k2p5jP61Rf_ZII91+N4LKOTCT7vES*d*1#* zI*0-j&%6Lr&YguLjvB?f5R_{FPzeo)#L|E;T~eDQy|sNSRxST29{sPoGdx3V78Sj& zslI6bQs)gu;K)S~k&OY7hNGNU0CIUAn7fo6by@*B&!-9~C8$sUiUl8V3vF8X#e$9j zWHKHW13(Hp@45DR#Kr6Q`&Rbtk178+3um2s5&Bg2Gs5;lcS=Y!K+}a-!V`oSeo`3% z!0O-q62ExxHtg8e6rQM*OY=3yU0OBeqGm)a5a(D7uyAA{C||*20s*3}vvopO6i@-B zq!xM+)YfKTr{J?6TX?yOw+O@vEsrj$E^Pku@}$*IJo5s4`to_`UD;PBo-FlOL_z&U zB?KNElxU153S%jS%|ZbHd-v?d@?S2>@CdP4RP{T*divZ(*B8n$7?M0C%>((o$&yT5 z5K?WQJ-MxH3K(3!A_t-z72CYU7Yd-bpdqHv<^^sPVDY~B!5eF-og6fz2D7gI z4o1CyoTx{e?QeNx(cSyeYvwKUw{E)>a*orLl> zi$Tn?9OBtd>|nkMo&B4nGLPFcOJnB<0cp@CwI?< z#o>iAT0UJpsGWQN*na>KP(APvOgQ~K{Q3DO(ERr|>`zATUH6CP-eW)fq+5SxYth1B zoDh1w!Fxd@sy;dsEe-dpE_;B(V zivH)Ioaq#I8G>^D8?vkhKEM*iL0h5a(M8of;9B7ye&k4flIBEX6+#Y&lyV8alp+Gi z0#iav?0XS<^{GlJfeQQX-nICqTCM~qgSZGl1yJOM4S-yi6kx1BBCcVF|Lir3{jmZl zMq%?y0p?#h?*SZspMV9OB*dmM6Bpz@_oj4{GejExv z3u>N!@(-w=dm--m`sH}_udnp15)$h?TnYAj_NwfQYZv~U|7CTd>7^ey3}c;MyRJ=a z?c2Fn2`@+mVPpMy7i3N0Dguhoy!ggi>}&lYPc=V&;cUc;!jq!3@cFUv z#dWyzrVH`b8(Xmb)s1*|^~3ncxtG5~6H`9595C<@RP{f^r>I27?t5-UQ|~cnG`cA~ zHuxo^eNFn;A}OotX2vZI_jl+4QLv6n3F|j$7+7PC_Uyiu7g?Xa?0RQGNsB5ad;r++ zLRbj3w(P>j7oR;~kQBrUAk){OWNFpTIxkB6Zh3FI z|78A=|K3^=3W^AqerX|#2UJ~Xdii=j%cKpJoNV}{pBXr7Uje4iFPv6`u|Ymil-xbO3O#aavdmDl%hbbjlNt=PE!+2EsW@kW6c5PJ9Ni*sjO!z<<4Z~yEY z!#&Qbj72BbiYEv&4_nd$Bm!+FG@G>kMRR8Ge*T5C<^(MTmwPKWWq42>Pd&C2H(Y)y zzB~7yvGD41g4wTB)os$#Dd$YbpdmHBJa}u{b$*b*FR>C!Sok`Knf^{Iz^9%n)S$C| z_9mq5L@%iLz&mizVH$2g+Iq}{8+UEAcPj-yRQ}sjk1fUG+plz=^6FpLW8?Z~+$fBL zA*FPK5aeRnc{8qNUr)_wd2~^A5HRdbP_X7rIvWa7QW+@2R3^!Z1wNl|71aF08zyn< zKX>{Uph$Vh%a|SsqCH>S(Ne|ps;nZlob#kcXELk)|tgQ9)8Yu zRu2}ylI`PCC*R)D+On(U-}I^Kk1KBYF^1NR>bCI5PyA@f+zX1Jq(CGrA`?zMW13e0 zX!x$h^K1KmW^SWbg1I*^B-p6EkWvN^WH3qak-z|cIKF|w zv({X$qqSuhmOb>{PGNq#!auF9Aj3)&N12PsVh;;&u?4>Kbd8FaFm`dhl3cTEwz0mug!cy{|feZEM8#Lc?J6UUxcjF5Fn52UyRqQnaIk_gC}9 z^-;%tvCLbI?2Dh@B}ujUy~_-51xKL1`ZjPdVS;x<8kz{ zV@nnoPpxXelKL;EUcYemw=n*+shulK%uEt^8^r|X%F2GIIr;=QZ&ZA3(_G{6R7LCLEUjp~Ef1yJ1HG}?Z*nxjuZpUVD-O|{Fb`%sqav7Rm})pD7Y(^NfAg23_t2brvQqJqd{0oAZ^}?0Ld;Y zQNcwfA{&B$?2936Txe@^*8koiHL1XB|Lso!HS)w$GOfJJMb_hwWDEa_Z{p zv;87hU}|GjM5q~gB98;LUS44#Nh<6+SqSn9C?zlzuAqWwfb)Q(PVgxwbJeo89J<&G zdTMn8mfZfOY~i0;*S)X7*A7fDtvPZOcb96Oz*5#lC7CgRxUYF_2as~7z{wM)cH{d9kRTrpT(~4u_Nn6Eb98!Ysr~2D^ngl_ z4YUL3g9aa_<4jUc6iyp-Q~KQ(em5*Xn4I7X{O0-L!$$?HWvM}=lrd7U_?2_>My^kf z_M2j#$eLmH7<$CWcHisiH4P<&KYl`8Sv*k~k`{q*RFcqrLzBTGXh(~rr5vN{h>>}W zpHSzDwLVq-apCOS(7R8+{T6-o z>Wet%Q(x>*p-(^Y2$s}elOgZYyQ3o0z(UBdK)N||^d^?68sUy!2 zD6!lq0P3NC?FoO}DRpK4yd=bn_B=pjU96CeAlqk8Hp^oIiJ^L==ohlyWXBt?GY<$C zw}W({jJIe0*pMy!D{jTO57qV1nms!&gx!HxH^0oK-|Uo-K#O3sn#nQe9i3fH0(MO; zWcX%Mu0pJvaXYrX=6fZXz4Y=f0zbQU8J66hE&Q<`oLctJ`!qD2?h^zAnl}EK{i5`fauh1UPS4rNIa?%1S1}~vhXmtP@E(vG zGTgaY)5i7K)3PgsHv^BNOfu<6_&t3%;Zri!>XY5P=>`8g8K&o5Xh1MnIR;GM z;kC(nYs=fgwa2-kN3C>3QDAgAgpfK-Af*81=v_F4OOoWmJ(eq-g+BS1CJ&*oOz*A- z{OQSMSW^F$62k9!%SRGgQw*7e_3Kt~muPfX+;g}Q-hhSV)HzU20p^-kax8)fe_7bq z?4)ll?-cON6U%(8u_>D9UKIY*+JSaDV@6%Ub&dO1PTfTj)>C;q3F9^y~d2x=-fb3KTT7B65 z;hGh{h7e?;d%BVl=v=|`+#gE_|6gyxXq##tpql_P&V#H0UN*BFo8pGQdmQW7P9ju$J3Q_pD0acs%gAfP|jB@uz$Gf zw-2HD&8?aW0Lhdsc@b~|b~1$j>CfG)h2H^G{B^^+vIpM3yzsPx92a;^@Rb7i)sOGs z!S_K={KP2GL^dHHho5W(2tg?>HOn>|xRgNk#S0z;3{M+?pD+2A$-YF%#vl)J&#i61 zkM6v-r0_cvC`XJusq6}Dr-AiH1BWc&81D=>l8$%I%hM46`1ene zbquawkq4=W3I$NxK21wgFw7_g#*kvJmT$iI+G(1SKp$7#a34k-J62z)5mRuXhGM<+ zm!4aN`@jA9)X9J9vIQ9Zp{^~aY~HXA&#r0c_9%OwzWp$M!bfrZNfTYYBn2QN0VxIA zT6bg46;nO4ij3+9%vyMj=M&OwDULa%qL=0p%2z;CQ~*N8+h5Y!Fx>W9dPMzG zmoMlr;AR~)$DD+kW4h-FwioFFFR|j)1mqvxGoR7gh~|9Faq~6bT*P?iwDrTXE=E2E z04TPzBZ8~Z!5vY+b_@7UIaU;X$yE-lrmo9~|s6Bh;y7!rK$Cuhy? zFyQu7rE9n55Nt9~3WocV@c3_k8sz;VUvW*<*%vi)jycCC1je>&VW|WWcqUm#RozTz z{zjX_n=hAKcQpBOulG;fws+m{h4q4_O)uim!)q|~h+~3PIX+b|WY{qnGvIqp62DwdLy%$B@(@(v znYJK`S=2Qp37ZDjugF8i5vM1kwl+YS7*Hs%Yhg8q(9XNQ{3xHC{?flM!iZ60+y!oq z9smh;`W{%k=}eb1*{0{XF9Z-p0&T4=nEQpg5PC+u@7Suki&zC36*i+rzH{Xa9W(Fz$d7s?^W9$UIgO>azHR)9HT2tkfL z)_j;}mi58M^6>Zn%)Ca?r}BLJ2385LZFz;Apyt1}H*1Z86>h<7KsT-3_H{(^GuU@v zYfjkt=If}x`Ew!9Xq3OE`jVR;)GWHz%2|*Vk->i^AN@h?@`$#}nAOs7KdS0xk`Bo5 z0T}@F#b&T-k^?J_|r^0C?`n-(&aA9T<81807L5jQB3m z#uiy=V&`;`f)*ZNDO@eoH{sg!tAG0t?z-(t6x#L$mOtRKg>yud;0?`WP0V|xh|V#q zcY!zbF~b{LOjO5(fU+_m?p85&J#a&dt(<<@T#OhsCSb?4yb=H#C>H4a_@l@e z!6Cj1$oNB9@zwn1R{Z$h`FN@EiSX_6y=GNka?69Bz?FGGE^j!cD?DGQ^#CE%_SvU* ziZ`@F4`8){f)J4~V-kWdPLo{=uvRKXS_^x3Xg3Q1m|ZhL^K4J1GnoI#N+g|X$1c08hSV*dbzop*mZ zle+lBb<=U$M=n6G%Bt`RPxuSI`DkE!Wo=4nh9*}g#+#m5-GGLl-;<^;7IJBR#POF_ zP4%f}ux~&ThSF5_Z9T#r&6E(Zr+e!9Vkmr0Rup^c`dts)P^E`5FN_(?c%>?9m@>{uTII$JEW3iq|94fyNJ z>#+9mU!!T`i&?*{>FaBby&|xDn@Q}kWwB{H<07Hk3LT`3`)}~k10R;U0&8_(Rj@R**m)D_b z(~BK%;9vyrd-_qhl}VHfDeDi09W=7xDE2JsmfDx|r&;Ex5_`xrFS>pjwe6b$IzU^P z95M3YQ1FuN8^b-o6j`~v-$x*qb1jE=Y!8`~Cvc)VzPpCuR^}9#sqL#6?^?^Ud#j6o z`^!00EKCEHdlR4cF70>z)tj?+Q3{t~*=`wp%aUMEG1+b5mqh_AJIaGdSXOlu6I+@j z_YvbBP;wtJVAl_CsHL{Oqe;cXp;Rr1_ zNl2ILyKKj|U=E&r#F!GyPI^ibCw6UjC%xo8V#@C$#`r1-8MJ1lHj!ZqxxswC47arn zwy$#A6-v|7iTvJStPiHW0;)4Dh6Anurijk(B}s|xZMg@4IK@|DLjh_JO(>h4 z^b%8lZbi%Pp2wlb?j;#H$T@iTlFWdloZeTGWj@6sgCDlbDkyVPH>U(3+*7iY4s7C2 zj82~KsLDOS4NCFp1-8z?9}A(3@DKjoR5QGx{r!ZKa3nmdNamiBozHfHTY6K^NM}EM zKVg&c_(dl1?%Yo}BQ|J7I6h64_5uz`oH|WV`cnUPn{kOvor9iq2KM_sgSo}S>@i<_ zSMR8uRs`h$M5(RKgS~~5_-~n}*vbr{b1}f}ZjrICd=#aFusm>rKi~>TctoV32_n6d zwhC(lBq?)BG=!3ug(AE}h);a`kwF`fK}PWLffD>Xrhs%22R(w#mBIPxTt}{>9kmni z!!Hlg69Ilq+zVX+P~9!2-n9zIP=+wv$}*siOfnI6(1>$ZpIk7|(~$}g^iB%>pj1Ex zOeIzrsbk)RpiB#{lTu)p1szPsL8*Yw)fwrdC-U?jR{#;=|BrX>_@4m)if`~H>oWu% P00000NkvXXu0mjfIEv~& diff --git a/app/assets/images/decision.png b/app/assets/images/decision.png index c416a00da6c4abd3b05e678db6c06b1d90f26076..0fda323e4242e993937a75edb03a6ef4da9b2fd8 100644 GIT binary patch literal 10357 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

6SMNE#1FIdQe z=^gQHi>jL_%F`ZFxXyu>|K*NVcb zsGpt#-F)`zukhTfn;W{bv*l=(pEv`P%QLTiGN&Ckjf>8kO^|CwOyHFXw}69*5CQ@< zOl_IO>E|xsmG#@=s;*5`(rQq^YeNNS4#n#u>a?JB7-l#4t_8sB{Qzg3H6O!dz@*Fy z5k$`BqA18X(m=g!CmNuqyN8c_{v{rH=7k||J9Y6=KJ@1cxbVDLh{++|+d@nZ6Xf0M znTl(FWFUx8@SVz_CdYYa&f~uId3qRx6iyn_hSp)Yn#d7gb}e&hq1Nr^0?eR=RcFj| z3m%ZHVySheT?IdQNo{-VC?S^5(ZCVD`rWP}#ZEgjxar0fT=nng6XcpPCXYzq)|0_4 z+=%zMQ0HACs28VstN}4fU<1xReLk~W=hJhj3t$CzT{o@5wWSu!PS)*!wiJE}_3kRf zCg&9ZGuvi!!U^pN#_1~Ob#_UR7|SP;>{>Zq{f?1oR)_`Yx86lop@CG5$9GuwFW}l(gdip z|F#OOj87IGH09FK}7SydMIZl{jN6*)GL6tq$XDOOCs-IXXM1 za}-l}lU``ple+-TVM+uI5B>z4C(hjVR#3010jh?Ir4=3fL)BuV0d~FF&3C@_V%^5x zeB;TSbbLD|H`!}DF{?Isq+SCXdu%w(P7Jh6naq?R!TU;v33V5Y>%kNz(LSdY^*#qC zHP;eroGHSZ>|2ZhD2k0N#bQ5S`ltG$=jw}2;mV5_VS*NfCg+JU><2oJ3Bfse#X?9> z(1689&tlSy$*>nlb3g;CsHfq`2#{xzbNi#{d^W`<+7I9@pkuH7t98BqSC8)C;m4k; zS#H^kMSSx5B?S3c)f}lf%)W!Qfj4uD<9tzaO(TwZA|t;u9*zVA>p8&9deusOcQE|S z(vRMaB1dscn}bn5-~7?`np#g2aLY|gX>FSdrU?}@imu@0Jx&`EH|U{(Ma6k~jGVZm z3|Av6Ze|!by#O_tYiTGgj>OB85sJDwgb6SvNG5dEUdPE`iya)~{)b=X$*r%{Y}dtS zy@NAX9z$RzIlt3UDFa??r97~m57F2t7&%5LC#?6?bjG&Q8iQ&8#xK5S8mU-6c=jGT z#IrB$rLeu96PLGg!qVB8pvjv6g3?SheYamu>^XFpZ{NL*S}>QR_~;FtNN%#5T!~vF z7!`QguYL>>qscp4uaS)qH0NjA!-heQ;FsGmSi}Zy%@4nF#!PUg;_RoK~;!M z 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 FV1kGQ5LW;I diff --git a/app/assets/images/example.png b/app/assets/images/example.png index 986ce0498daa1ca3ff765781aceaaca9b2e7aae8..29a9393aaf46909584e48cdd5d07b91ebeea6425 100644 GIT binary patch literal 9176 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 diff --git a/app/assets/images/experience.png b/app/assets/images/experience.png index 1a7f55690373aca7eb240b2ebc7a40d2a1122df2..0e70033adee916aeb7f169cacda464e181490a0b 100644 GIT binary patch literal 10314 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 KMNUMnLSTZ6y&g#b diff --git a/app/assets/images/futuredev.png b/app/assets/images/futuredev.png index b5c666094e41044b7299f479544d7183ff7bf974..ad58519a8fe25d5f959a0055ec2aedcec52d1964 100644 GIT binary patch literal 11835 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 literal 10311 zcmWkzRa6~Y3?1O&?p`kL?(XjHR@^Dj;_g!1-J!S?cc(bTio3fNiay@Qnf%O}|`QUl%$an2oL}OK$ew}Q2VeZ{~tJ*kLOOhJI{xKcb3t01pq|M{|^L^nT-bk2+B6% z;wmcEPHs-F)=th~S#fc&vx}3ZjlBf`c&y~8TWP2t;|M-%+=FZUDk#4iOIMRm|#TAqsy-JrT<=fCvbI=yglrk%tSw0z|xG#YzDYDTsia zbSiZq9|V|;n|^Y+*~BjZU?f4oq%qbgJOT#*68V92b)tlKeRvGLFhqUOYki0>CR`z6 z6odU@XkrNF0Yok)v{gZ3G+~o<#B?Ui^CH9?y{gt>NzN!t{hF;Pg3hQR?hO6LkrqUX9 zB~D0ugr)Zg50-tHIsdAX0POA#4Bl6yCy51dx5h&RU&joT9 z1Dk#lmC;eqQTiiO4kn`DKwp99hKCAK?WZP7DwqFB)sFse5brY^Yq*XK1NkCG940fG zcZB#LHw8wdI2(0aJfv)WvBqzV-%`IF)yR(-eq?dT5RfPRS~0h4faOhQ0Mn0#?&a(a z?6L0=?vdW;BjkJ*`BMC-zC)unW-EukkG9XT4`Y$eCaPJKskUBTpn=XArzcij(5zOg z8eWdc@imioG8jizzNES^Wsbla*ZRSx_QEgSxZ@)Ehc&%dJN6w&8-%)4SRZ}x);rzj-h(Ix+OZAdWMZs z)j8FaiyhS+W$0yXN=ZtUxrYyX!bR=`iyJUGE_5gk<^vs z+wS}QRS*_Ad>N&ZSdZAx^`{FKpBCRn=2Z5DuM^sG&NSNeANJj5%yHU5n;iA5 zIcY0gt2Wo*+lc5$`Ji#8G$E!e!r}GNu01)o`!9yuUcc{ivKq7c&&yY9FSssjF2dLH zCOGnFb9LEWX9h;aw^a9Mg%R^oSnM{d{FKF&1Ff14$(hZV6SS+B>RL+ND;`WQafSX0 zx#aB%?Fw*jux;oXPjL6PjJAv`4>;u-hi;1dlfRq4d%e#BWdW2BR#1_FqJjF5&yQX{ zq&>01e5)3J8fy(>UE{*Th{nC7vWwB{s6GSe1Ee8Ra8w9?1t|IJWL(_+8!Bh#fMm5tpEGSo=Yp2!tby0aK+65Z* zjRo~JLD-!lY9j21`kt;Wof|6aFzaqMnLdT(5DH;OM%7@g;-+Ey|Djp)*e48k8tche zOaA$za+-W>%a9#XfZ!%qabez2)^zQu2akj9k-}&$=^s9SS6GBsQ!E(Xk zS@yZ{LAWNe;`lN3*}GcS2-I(=S6FhC=B2jz1>)a=8ftNi^rzA&BP88#IhXE? z$Xv*p-?N8z$ekrT_l_UnHy=JB^R0Y~@vhp2og?{1Y(>m$E0%eaDV3$3`KAk zXm;^r!|O$Ql>{}LLqOM4?pEWM&B}4mT$0tzbWBc4j;|lnzcrK9!e;M7v#Cv6RHw^! zG`H>FlJC)n{GI$$1~;v4Hw~-%nA)w{nYDbz4kvCW0&huk$|D`w9ho(426k;1UR_Pz zmJi2-x!hChcU_*>IPZ%Kxx9kwUAJCN4?_?4n>g!!F4V76;~mTH)ECvA%ALk{BIlyZ z;_KlH!uoG(e=gVjZF}AGZ)ew}A7Da*r{5Cp<50z+<1*sL!;r&Hb9sb#d3S_eUXNeO z#HY=tsd91O3g5;=b^r2UXEnOh zdOq)SUvnqEEZRg>-tz(b)4W^%tG`#DDSJ-BPfB_RL8afmn6Wdie&|iGnT(nu0C-UX zKtM16{Coef#{lq^1prP=0DvzY0C1fWjfbQFfY?P=LR79AO>-gR{oM6}eh+$Y zh#WOij4V0=weGVjeZ6LKyG%|+K@krMvBBJu%+d*gij`Ixu`avASA#h%hcZ;vNIh)B zP&NHN)gm1bUEEES00ssHd}K%n#lx4WT;ZwZ=d-S9p@$69ZC+uHMM_vM4& z-OIstX&y(S)DR0g{8qZE!$@w0a-|JCih` z2GW>|K8CqF(M-b^fGH#i>Cb!k00TwTKsBg&7>055pAJyX`|ul!@W%Pz3IGgmjKu@h zcXfe0=dBcR9who+2yyjuoyy=(GqjGvRdd-Z*S&tA((_lXUTf(EFL(eQ4rLg>C5jy~ zpz<1B_bBz@PqV=}E}$YBA5!}~HHaEy4Q=oU0+*5ia~i!OL0nq1%A7#W)<8a2paq21 z7_-kfM!7VIG~#{elKx9Pte6(oo=__25^}psN>t`1skl@b3HUva6XcL(Fsdbo3KW5D zZ9?)wp;E(GAaKJ0t0iO%<5vQ$)5nDskGfDI7=CHJh7}Nn&lUz|+FyMkA zp^vR;zC*`gz?C5bo(Fa0KJ@Sun7MVDK>C4|T<0Jt27BEDBWw!}&Ze*+f5(7Jmld-U z9Rzg50R>k!!OnU>{6e*=^i0hG^|Bc{Fz%^1@|;?N+o^b80^9VIF%0biSU2n_XcSux zkU>YbIODP4!=ZzTcpc>NSON2|b|9@No}at6er($|zHG;~U3fvI+kPbX))>q*TFxHQ zNP_48cs5i6w*y^}aIYCh`+;f6;2tIubQhR_~Xg*s(Tpw>VxNIH(jB2 z#F6W&ZC;UxPx;zh5EL z&cEPcc{lP4v!tF;FC$DhJLYDWUU`vx?q;af=vgNQ@Px1V%l}QhZx`ArKS8hvylE$~ zsoy~$0NZdT>AGo54UiuQMgQ|{uz+ak_=F*V-;^Ez7LF16FL`Z0Ka()^)(5+rT5oN* zZH`Ptg7sK&5())EqFq=m^?vlePhHl-Bt^9Nhe%8VJJL!ft*=E}s1v{ZLF!CT@HM(_ z6f9&2p+q8LQP?4Z(i5+uG)Q<-S{Bh~fQb@!MgS;C>p2PXvW!Udxz%{)QGC_x&(rGa z%w~r`gkHa7+i0F{>{=$91pP3%S~4OUWWTu50;W2t%h&Qr0)?&lZlyaX;h?|=eiLLH z9WpGNVaYtZL2Sg1uHuP!h^;q~?;&EbR|Dv8*-U)QZ}kvh#cETX)V`(-X;Fn!!@f!! z@N8_|%Kb(=2GO5y(r812V}!kB>d&#HTD+flQzThN zBm}Mzx9Po=e&AZ<`1BC_W}y`Ndv|P*)!4i+l^Ss|NJ}u#At0uLe=Gli>Wz%CU(v}B zZ~%x->d7$9i!qdn$<!Ym09&Z6rBsvm0}H&99__MYvqO!dj{wMq{(&9m z#gM2&D8y2qRb3HR{NGaV9xM=%8;Ml)u?uJ>&j)e`!+@PLp8Ir9U5Z*RDX3J zObOO}bHa!Fsl%2hMzYMgknx^JMuVr&BqLL%;_0XiOiMtb5dSt<1dvhBf}qDv{V9z9 zz+;Ro2qizobv5R19DLDCtr1JYUX4YG$Ry^dh#x^1ibiGsx%De2IuJxI>`mO|bgnF) zb&yWO)Ou;Tr-2QR)5{QqV8XK~vMv$7!liW1A6BH?9c?~M%lkR=ZF#!L?;5?9Yp)j3 zGn3>m;9OW}KEvnA0#xc3$xsG>igH>^I ze5AO=VC3Ou{tliV`P${3(ccuMcX{Ca?O6<(>N5P@qsf#LeyzO(r^{YMx=gKN>n-vJ z1#KjEGic-c&3kC%p>dqPcIUQk04)I43jhKTW#Yvb|0i#xKU#Q^t@Mw@NFs8ufNLic zbl2U0-HhjvX3Fk(w+}u7(+?0U92~1a1!-9E@!D~F_U7L~sk`pu4>6+IQdHH9HSqeS zs{2-#1a7ysMsne|XO!#WBMbz{mfh|V?L4lFQd(h`iebnQRggA?N&{g>L_$!GO!gAO?r5uK=ypqZUuU*1H}3{m0y!j3Ej)}t*wgh`*)hwp9q5-qDXUH+}R^APy^0= zq-!KU1+Uwc9|7mNv41p`jQb`AEk3!If?ZA*LmSxB0|au;h~(Yx16yOgPNjisnUU!( z@5m7;akoNOMP|xd+VnWjxXBEjZ3}9->I91i!4L^?@|3ji;d<@;na`3Nn<@cmepeNE z+aL6y+H}UJ(CW)2_K%lEVXiCGpwGMi0c7TEYwQ2yaM#_YT}karOkHwV@wd^g{GR78 zlRt`h^$2gZr?X(mey8q%CZaWR_aX7?0oKXV%M-(R9?i^<>tED;CkW_-qg z-z-bE4*0si>~*;ZPL(yca?-fSQ_{zUDx9aVG&cRoUF@j)SrqUTwkn$8@5CR;qKdlK zPg`L5R+qFK2d6kY0Dyn#tly5Fn=F-NNYnV8p#|w1W&88&&DQwQs*8+XXTqD)0s=B- zm?=1!Q2hS&R@Gw&3qPdn{oIlSs%|8eG0iZ0k3D-9Hr@(F(sMou4~MAs6mkA+Ne<%l zQ)M5lKBcUpo)7e}k!N?=_C?%hs_B2Z0pXc+Uw;a9liG!6RVxDl72YSTZzp=1*CLX6 z;3p{CU_BiBRk727T2tqqtBg6z>A`;g}7mHzr#v#^?|QQ znv#!}N}z>@$&o+w%mBL0FjiZxGYSr;P|_7{bvv<*u<$^Dw&WwjlL*8R2dV@p0omg9psK ztIE^`axL9G1cMU%ZKI<5m|D$kt5fH2WfZG@Ou)qCLG|3LAvrjrI|z>j3Chw4Npt+f z^q@5|*C8jo#n=ZcCtR_+^xUo<%Ta`f81P~&BM@5s`waQh{u;5T0&bAQa0)l4l2n4U zuiwe@YQKu;A~wza-^T4mMYT{KS}TW2VxFa;alTyeXw+Viir=*62FV~SVg1E*mN{k9 z3!53D3Li-?`{p1^_Mj* zF5%XTDK(#iXzH$Pkx?iz)(0WFeNfm{PsZEOm#=+;UH3l z8k>v^Q$U7Rh2mOB|K4Fa{z>?D-42apuOu`wx>iJqvWR$T7DN5um7^avAQjg5+h;ee zg(}9B5c(h%jJ*74zp=}7{svCx0vyV)3KTf1F-Po*+OnsMA$im#(9H+;&R;?0>l0|q zuHJM&5;=HkPB(wm05JN2ghU@>fNJr#--PJ3_Tq9DYHhzm2w3Z1^lTE${3;T9w#w4ttLTM+Up3SoP zUB>2$kFiAL7BMagk;;CZPye7I8*Zui1LF`jHO6ju2< zNbQ5&#ThprG0$#ujqO4l9&Vq(E3BSMkC4V|us-C|zk+=#P2pq55{qiQMx@ga-(d0M z7+39kRO{(TLZZ(y!pgVJeT`=hxd|ipB^6|)uPeDk+i$&jehg~LRW6+j9s_pI;}kD} zg2XF2#?))zZL9WSW5ei=h(maXFNNEeE@$l8(a?@)e%0IbQTNJI$>SJMJO>G8eb(E) ztr4b!FtO!NSUw*jSp?(fok|FrVlkH|*@TZ8)8$-+>&5MEp)Tzvb^ia!4_avIC$SZ* zS@64mx*D3a{&2_C7f82e04r%$%k^E#{6{<87>gMaJ;osm%$Zo)SGGVD7glL_rMX zbFWhj*}erBGviPBr_VyO%f0H48A;gfrpDpL3;wKY43&)c7Om|ShuXQFf-Larp~Clp zp)}c?l+~N2^XgjqQT@L{11}jX8Hc*EdLlcP82-L)l61E&|0CLN!7PCmdf##RGPxDT zF_!nS&^H`G$sl{(Gd5sq@siK6$rzYSuxu5TO{eqWoItwa|BB4+{E#`+>OJ|{;W)^* z=L6Wni?6wVH77qI(^4Y-f`m~jwy7_s0|;aQ2GaK&^?1xVg;e7--pp|Q~sWZ88Ut(XE;f@hwA)OW^F`VB&Uy_*zsF)y@4qmC{T{ZHC%owpRt?Fe;+y2+hv{g8E`;EtM_R4(As_{$1?QRrmYO|nfqt4u`-yg43j&5$=o^6jW|(d&uwQT z40gD@O47hzQH1k7QD{dsl)h&B+r@eR34h*@v%il<$ma8bkrJsw+9TT$Onsm1h_2&fTqq9IS;u!8`}B(M8!@nfc4)nwco z3)l6VBA8#>rMK|p*xg6Yrv#QB7MYXMGfT7KA7!yd%_=E_OB}grw!_#sCv91X%JU=| zTD6ef@($O20@U}NBsA^8;H)u{= zY$}uAdFcNIt$T=X+ie;fiSVUMxFLb>m`YiY>th-}Ivu3pl;Jz=5cP!IaDE znz^I%$x_gxdjchVa?9pd+dgGF&>yUHxJ5TQGFz*Kfj{B=sALGcUm6_=>N_NxTDoL9 z0qnwx>_?-(=Qc$K+@sBni@PUhc@tj_2Dl=ClqN@5UH^(M+aTg266;kTiBn7^=|_eY zjOrR!C)~x4R6?UpD$^S*P@B`aMyTRqgP3vFX=u*+%n7y|A>tvSXNTqFa(VZpe}Q{j z;q9)r1EqkYRX4bg*(F$wFob~VeHA><%6Kw7fa#d={Y{V<@6URHqRY3MLaji!N z+6I{2^pA25O+vi-=-mP#lcmX%$)rhFuNEi;ecCpEQ~nki`Z(13+eUNCsgFV-y&mk_ z;lAc}S=5yvmi_(8M-0hzO5n;rN|Tc9a^LVTu`Nng$8Z42;QoHvk72t-s5>yc{eKLO z$KmX>@842fkW@qF)kG_;If;b6!l*4}WOS2iI_$C@83YIu0ME3Ww^RllfpROIxTJlyl zkGoj?UzB~5FYH?yI5Sx4J8jg)&Tpghc2TNdL45vQla0XYX`Xo&v513;%AN+!HB*Q^ zkz=U~+pfpu2A+z!Ie9BPF6CZB~k_y?uA9G@Yo@^hxJ%{sEtns3hQ8AA2n#F zO0b6WSNqXfZh9`4BjzF4QEuQ+ANsXc;|`otcRnm_UI$VrQ{gGj?6sNs6ez9ztMV<74gG?WMCjg2OzU1f^`}d#ojtz@AK)ByexDP1iy+NNYO1-{_y-T4EW)YD2AQwf z{ljB*Ji%@nfkuS$dor%qSE^OoShAi6A zJ|8%M;Tmc_-F_y1(szqri&=1N=Bc3)h}%Z>F{QSBP4_nS-< zzj-18poMY7W3sb+>5E$SRIHizlCe+IanB|Zb-N~{y5sOqby2kh+OfbOixIqNBG8(} zh}d1*UbfMb{EO>bFrB_G?V(qh_)7g9<|WbA8ycX(`|9O$?!U2>Gh^RkPEoPWT(wy` z_5e5X3h0bUogaQ`#|r<}y-UwO@k8oEh+6Fhkm?1JLWmS&bCQi3=(uY_g(8(i*wbY$ zj62?8NXmtZ)g~^l7!}f9kT-wrpC){UyYTkoU3zlXXkR){NBu*+X4~7)kAiGN6EPWW z;yw7+K5Dy(`kgqK`f>q6Rl_(~M>1iiwUSUA%pnljuU%FEH@!TN%l%Mz9{F7t-oKx* zk@Z@>@t%{|G&zu9vvT{}gVVRIM?TW**nO_;%1z^-D81-QOdLkANuKjT&dpAGkOKey z`_(wYneRhdRkYI1{>>MfY<6g~T7gYneM=J&X;~xQY#DVl3l<6I6~A`Xjx?S5r?HYH zva$vpoGwS-;Hd3VM*F?ygrkd*S@I(*UonAWdx3;ACU;}R6CyY$~CTw;FEioXqEM_}#$%jzuF71_y05xtFMVYjkm!eKg0+{0U7;Z7W2FeMx6uLh+7)Ov@_B!krL+{O?PJGdxdKXW zLm$%hrZg;kf+->G{Un#ao1rN4iNu+#amPo&+8Gk^z3`J}zXIuOLstVr3D*DXE$?$B z&j45eOHnUsHC6Z=&KO^NpqzR@X8i0Bni4~V?qW8Mqk?U{6HLfc#~3Eett_p5%01sl z%qLQay^H4R)HXNfgR{Nr4Gu~&wb9~k4YrN46_@t<*jj;~xQK6*mk^}0RNe1|w+@_$ z5)LIo+Gg6I-gs_<4CtN1T-Xt1=r9`}M+q!Gw>zp8I`EQ@{q1BY79=)aM0WUX_yMqx z=$m-{YOI5FxDR(G2NLL&MAT5^fuuT!DN*ox=PfY1cx#)-v7B}fcKlm0)fsMYYHO`O z@spV9_5u~@0CX_c7|)(}2>b5N*i3h_-{(Re&e@i0{XZ3RbEcn_Zz?=2k9&yy`N$mwcTP@{kbFl41WgE0PAJ&Hf<-2axz`V z;oq>gdv`}`HXtAw136O5ME7lSyt_;NDgcez@Z5%}S2`z@ z=SvmAb>D3~UWFtZt3DAD8=W>s89elmoeI~!@&_x@$d&25DBz#_fWKOkko@BPI>oSVdO;-aZ2`m5^>h@NFa+0vzE54B1o>{z#EOPvq+Qy^#) z)>=xuma~87Mroe1a{TYi`m0<0aUL67f9BjAs;MH2TE0_%zQX7gSo z|L}>2V#}t?mlipA%b!bbz2Y1putmK_XYBpjesOAbkAx2ol43sw>eTvh(A*Nkyh=s% z5Xi=;!tBeXT`dC&csa$3!4Dplar7^$PyylP^HeKUJnNX}Gd@2SJ z-ezMbAtyuNmf5_B;HLBk4doo2phRJPR#OfnffUVD@#L0WT2UW%cL)!wCtBJ_(O4Jo z6Gi9HL-F4l-oWEsF7=uIMllBwkFvUe;edN)#X0c_SE8B(SEP14G|#1SZe-Eq^i{@9 zH4IJv%68p16E_BZ5g&%DryAt8to7nDsEH|He*)(iun@*jCkQqs=Z)dw)2 zA?l6_D_jqx^V9)r2-7bm>}SbG`a}^u4}oaWyx$u|8U4|L7fyrWO$q03weKXr#XdA7 Uw_T6K$Ddk2R#Hi#M$9DWKYiwoTL1t6 diff --git a/app/assets/images/idea.png b/app/assets/images/idea.png index 775f9a092940f6b6cc0e6e6129dcd9a24ae98d3f..25378e79df331787c6dee6ef109adb3022acd32e 100644 GIT binary patch literal 9251 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 FV1k946*2$- literal 10711 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 JPDHLkV1mT!seS+e diff --git a/app/assets/images/implication.png b/app/assets/images/implication.png index 328bfcc8d3021cc9b24ce42794ebc221b5000ead..4d7e0120704592ad065f952623af0efc332c9635 100644 GIT binary patch literal 11919 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 Xp99!zr*GfrKY*;Hl0>zbaqxctQxZyJ literal 7822 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 KDqSmS8uUM{NYax4 diff --git a/app/assets/images/intention.png b/app/assets/images/intention.png index 46e556073236b29eacd464f529d2636b9110a7bc..3d734ed5bf3b4d73a33fd69b2c3ab9ebe4b7fb41 100644 GIT binary patch literal 10331 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 I5i<$-AGb+SkpKVy diff --git a/app/assets/images/knowledge.png b/app/assets/images/knowledge.png index 238118ad1ad58e853eba31f09cd2c4fe445144f2..ece21567a94acb9c7473ccaa80de2d9f797031b5 100644 GIT binary patch literal 9697 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 literal 9901 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 KNLNZ42mBAjE97th diff --git a/app/assets/images/location.png b/app/assets/images/location.png index 00aa12fafc646bbf28d823153de3212e0c3dfaad..004472284bae81fe5848aab6ab72909fe36ecb25 100644 GIT binary patch literal 9871 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 BN@xH8 literal 10109 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 Su=Q=e2`I>@NY_f52LBKLHw&!* diff --git a/app/assets/images/menu_icon_32.png b/app/assets/images/menu_icon_32.png new file mode 100644 index 0000000000000000000000000000000000000000..811f4af31a86b1448108f43f2e5603ab93daa15f GIT binary patch literal 3059 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�oMZfwCwKQ{_I= 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 KMNUMnLSTabOMTn` literal 0 HcmV?d00001 diff --git a/app/assets/images/opinion.png b/app/assets/images/opinion.png index 9cb9c921ee07ec8ec61e12d85f7ae3771faa2ae9..3e418b653b4f3af15c0902555c14d897ec7af11d 100644 GIT binary patch literal 9553 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 P00000NkvXXu0mjfxBQii diff --git a/app/assets/images/pro.png b/app/assets/images/pro.png index 44af61c943b39f5965868ebd1e5bac98cfa5ca4a..a93acb844861ea34641f7dc9ccf4fa943f9fba9e 100644 GIT binary patch literal 8956 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 diff --git a/app/assets/images/problem.png b/app/assets/images/problem.png index 06f6f188ccba19550368db455d7ebfed636a7fb7..199cfbb00e236cdd16f763febda6972c74abc960 100644 GIT binary patch literal 11075 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

Bb=T`Sl^U|>>L{|z($@F!mXpVR=)kMI3Gx|6PG z+7^wb$(QRk@ZR)i{Fl7|75|%9&J={hRB($na!bVWLj>S5OWs_<+IQZ^G%ajlC2aMO zs!^baDGY}x3Kviq4pR^c$(jL0by7c^`d&-c_cj^^4Y3&Yu|^IzHn3&w=WO_R1zXqG zU|6OkvQuF>{HNEaOmD@~Wjr$W8fw4d7PG9AUTsM}M=vx$kin}M4llIOxtgm_HYUkjElC)BF}jsl7GV7I?Di&jNN z6zU-~O+#}EGLmD%Lf|Dk$+)lW<#g;CdE$?2C2r)8rCma8W`#F!?u08cy!4WB#~bXVF|jp@3DR5svaL(5*PPRM8$BDrc&vYSRD#v70R zmAft;!!y6B;_avYo)!53XMcYL-TI#zPySLAbXBEg>(<=(@Bi1ds)H8KDj7cJ%BzI_-j zYjFgq|DS1Dd@yr1Z@n-xuiFkA_d~|~c9K)_6lZ6uDsyzYmG|O5p80EDW4ch>p@c~< zKh1YXjg%|j5xVt8jE`TR$47}Nh%W$tPAJR((pOJrhXevtRYc-7tqJ!C7_|(bbAki^ zqnBU9G)*kamj*6~SEAT9YuJ5W6?<{8i!wE#)4Ez)-t;8-XIe?%2_;E}U z0n)P}AGoxLYeP4=r#^W8AJiKLhHYUxx%ieX65PCnS<(dkaLd!vIBRqTg#pNSK~ZoD zDs(z@>&nef{)H=k|7-f4Gbmt0=yUc!#{X^-e|-N<27P}dg?d;9)&bMDX)sK-tXt3Q z$q8(2GcYK%sfUM%0LadMAjti2Fd}jb(nnljJPTiy7z!lDoc$(>-KHMGN5XlPu{0vLkYW}azC>F z4gm8Xn#TTpd!;OJtYaCp5h#jE-*eB-n1po3#TRhvb5GK`q=c}pqdBZ07f=;NmYs$| z()K7Qpi}o!dVhBSow}D&6fU4ZFYs!YQDtn}upH!nzMf}Nk>4LG97{JDa#;O|?uQgj zAcX)qu_6EHa$*nrKV9cx-3tI8z3?huZ`(%9GB6!iwJl`cy{74W=iGDn@gIIo+mPgdo!YhG z`uis{;>PPJ42M&+ohE@IyuWfcN{d|E_&`2HdRaLcohohfCXW+tW|byr7W6Pzc@EB}KLxv%GY4)p0YsKL1=SZ5Z}+geNDR7HR)Rwq@h^gjUy4@u?Ap-dn#7DizP3;>eT(3 zo>n9fj!RkgY4H1q^gQ@|CU9*K_vN}eEL&h&CJm;+p;#l!Uavj^WGha-ypAFoI?Ot_`Cim z(~|vx4#lKzC&|44M+^B$mo=$hkN`n#Bu>4o5uXU~*nZ$_|HqGwxrRM^zM;V|rBL=t zKpibf#Cdf-JyTp4hudjII9UtvRWGniQKdDp%mMkO5wsGL=KI2I@_Nn9ovnd9&qYpGkLhq7NxyKJGt{ zXl_nwoY&hz3VFjasJ9FbHa4>ApYJj~v788CG19`_Penxw2FFK`v=r3l?pt!i0!cd5i zKQ4?@km2Sr2N1z2<%@Sk1P}2xPGrrpXmC0dFQ> zJ!rxh28|y>%a*MO>6*+Fa#)e#FTrtzGy+RVqslNXzS+Kmm2WIa?%&|TV&Hn&nz$*e zKH!5UA|H;B0FVn2Ao!6b6Wbw;wV}yZpFC_3r(Jj+W#nP_y_0 zmd$&MJ)Z@(1lWw!#1;qp@m)wG0P^V-&50|N(6ua6&3P(fLp?|#HO|cS^+(svm=qk&&!?no8)`nBdZ{Hq(knA4;u0)J;Dl( zA^{-4SaTs4LL`5bt`D0ZKlva$`MbHC3>x|Wd+&($6TC!7F&P(a}ww6xEnZz>c;EY8O|5i30%e5(kM z3{E&ear&!iIqwpg1Zz2^pyJzv@MQQ_6X5>`$iGVRUvO06{{UzO;|Cki`AYx*002ov JPDHLkV1m8YP!RwC literal 10776 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

b!Dkuw&C3}2Ep@YIL#!BMA84S^! zu3p+cs+hVugR~k=!m9duI^6EX3a(25n8EAy#(bb`xZ9E{ev$(Cd&2(%q%0RxMd8CN P00000NkvXXu0mjfj<8x= literal 10236 zcmVKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z0012)NklUdSqaiahx@aUcZkd`A6h*We=OvL8I2wv#_gn$sy zee^e>{|2R%a@;87LsdZa>W!WiIzd1SnUoQBtN`~MAfklv3#JGzczu%sLP&iswJ%v^ zg#Tw0P`!Gi0N?@S8KF}cM#5DJt`ZcWD7JL21dc?){>Ow5K+4!7q>Rt?V<9D1MhGC> zzx)FFU#S2sct5gs5>N`H!bs?f02M|;S1OXMqDTQ?9-*xtlp-SrKgRlnG}dmsAQHG$ zhJH>+&zu{t$Q~<247&oD#rsgigsvi?hasS153rU`D%a{Q^rXo~=zmNJ0ssjnXd`sb zdV=u0=-hgR2S@<`SwIZCM+~b1s#kCHBd8%kVF-j_B-k*F6%iWC4`aMnDiSpDSO6D( zaxo|YLvXBL2pI{M7z7CkcpekHR)lB0g0vE{A1MXsjK&9%jICS&VKyOnX8ojM2(m(t z;E9}IjQkz|XzSHk5Tf7)`}A;|pQi-he(`GD{}!1G=25EhoyajyVv^*)pWh1pox zVK(vrqYzRtf)^Fm1(lA1o)<|2;IPr_JmyP?`0qs=ld@7@U)b}kCX}QH;V8z zGD5`(fF_>npgYeg90%P1~5-r#wpAu0UO6rhElK^Q{~WrG-QjPOmW8HOMVfozz- zdv5UxM}P6dny~F)11PMAqI!TT27ZOI2|{iXBTApB_{W=?qkwFnh$%uy!1p4LFqx4K z#*xr7kq3Bwtc=K8g25uwLh#0+YU59Wfy^H z`Y!Gd`Bh(QwPguuM#`QGMbZdd0@BwC@gOppAydMD6i~f-qX(jlg`6M& zG|p2tf%{=LPD2&T|FyNZt+``5b$qZKq!#t|o#UoWLwR*IDypkN0LD$7>iqq{TW_Je zy&YZc?KrS&7yi0y7rNWqd-V)aGUCpPFMhYlLKF|iMhPY*&4~xTtB3(Aq2CHHmT#<{ zE5O2#vHENfTRk6q8H+#s-u)m|pY}afwY8W!cP^?Hf54XX&Q1jh^Xy^vP$k?=G6d|;l?F9k%|4rLIAI@<|A zfxb6*9|W-yEd0dK)Bf}W6~XSm+zb^iPk#Q$>S~318&e02|pV|F@SW&!(sqPq3z*Y>#4Kjet>F{@N&+A1sFSR zniaUcX`ws!yLc))Qs{m1WtE z$?@aSZrhsMrmOc4HF3QE*xb4J?AO1J6HYn_ibIZ4PzK`%fct4jGGpS3BqFOQiUol) z>*`Q)!U<@7`DODlCCCPgx|^GJmz+Jf+3J_vxd$QR2_Ru7gCroNY+wISIA8^6=bC++)TQ5LV(jaKzM@kS<08+@Zd5gpL z^$(@~EWekZ?AxhBp4A`@utcF-R)9jV`}Joy=3lsC1B=|g*U#Q^sZQqWd zqXP$9TkUhjWn~yWVFHRvOEJ2pCLNN9wXm4FlNP!FKw$`}rz{CT<%9|N``d5FFK@X; z2WP6F_M^`n{l(qqlwWm2D~S+72#^dRlmvxY2q{2e7%3slg5qgVA3#uW5Z2aTOxXYk zvY>1a5cGhuL0s?2_C!TB<`v0Q^MWNyF#Xa?W2;YEe}O6Hj!m1;x^*jdZ{1puu}_#a z3#Uw(f=P9C$mB^f`btryl<=g)q1IMB`qi&GBj-`e?m8!`kjgmyH21bdk%1^Kj#E>J z?zFK%Dg>3yTbu!rj0ElG`Cv63UfXGV@H-921}n{HOqn|upS=2No81`UtA1Ghj!m2J z>^=9OWz#0Kz58y#Xw&xYyV%>@j6Xm5B-#%gz=<_AC`wU;aOM%*=gnVAM~_BDbv1Ur z@PhgCn68%_N0rR_yA4scr310K_dJdNdeTSO_7{;B3vv{otv_RftWGoIfmH}n5#E!^ z0*cW7^aB;)!F|sFC^4z#=We+r$MVf%;@L>bak#Y=8&<8tUm6?H)6p>~=s&c3H(q=C zX%v^0;iO5E`iu|Gb6OGAr=O1Qjt=a5;|*gmbGl#s{ic!`pK7&Tc&zcuWYE2 zu|TE;W@jFkSS`oY^|N7IWFv*3_4Sn|<0&pH!(}(#7zf-W<|p#}G~xg5``^bQhVesj zY+17gzrX+fyzznmE(?+D8qQs?09CcM@q4;DR>l)bTqdmiZZpHs1bi>~-6;wn&o)BY zo*f-%Z5Nw4C$v5My?S0sK6l|llvh<*=&=`)NHu#C{$Q;>-_f#ZQ@@p9es`v%1Q%a_ zJ%7XWBmaKWa^A}n87f)X@J>J7aMrs5be&&VtvYRkyrC+dK&P(GoA@Yq#=LpCSkHTX z@<31ffdj)Te6EBYn>H1!1Zzk{IB~)R%xq|g-w%X<0*LXg)WQnzS3d7t%Ri)Yy#2G!nPMLyG3tpw<`FU}F_wIsI%$ZkQfywptC_C}QoX^a=9lIpgWT(?ou|v7m0T9@W}q<9Q#i_>nxiwP~svANfrA#CfC(r;(6!w z`MUG2yAI`5Reip$5KloOei_d$Dk;H~xpU)}WqX$Mt_};`D(!Jz1(0;$hc`zl#WZWb z#73jDFS{&N=p0LXRX_nL=gcdwEEwa*&ze;b4D~Mi+;WMHZ$vozvdf%|=;$y0wZ>I~ zz8B0ROshSM1Cq5B3f>avz>gxHN}=u1JE!wv+v%V9gquMy;oG8DFSp`8g6QPBI+Tqb z-RI|+TcJVu@Y`?q{#o1$m{JrG$}20KaY1j5&E0XQE*Ecg(k zrfiR^{8MvW@?vp|G> zufJZ90x~5f1$|yJnJ|w}pFNvtOVvAa;>inAQgA(Kr_)dpR_G4a^HqxcKF)r|O`V!r z-zhWz13=lRQMl^vyYcdGeq#f2QE4eYcJakHdGh3bS@ph_mVyFoWuCHiK2I>IDKWz; zudKw#>T0~de}7a2eE8P-ifeCca@IF+W48XJV3y&Sae$!Yszi=|=6M0UzvlLO-qlcE zS&7gF?!tm@K5Lw_aN(dJCFtrx<30Bj^x8txRU>?``2-HNC)L(k1yE0SJqS$%ip<-L z4a}kvcbY^-|ABHL2qI@aE+t}s{xAx|8b10Z$4ks0Sryj7Fhs|`H{V3# zJ@*t`$~gPVE0HNK?%(et0;F_mTkt%Ln>LNVswP%f^g5ATRFWD4tc+v0AtV;W*@tR6 zp9*xco_L^f%#J^;TZcdW`qu@&esW!%Gl=T17YII`sRw0DNj16C{Jo$1)vGs(cu6SW zDg_<*;Z#CTR~MeT>#lxH+Dxvi!+Fj zqIgA5TBik}*B%%^_=A>4!up3Bf_geT@zlzd{SyAnE3UvyUOE`ewQ}L}#{)c=0{Z$O z(QB%f`a_4|X#DYy3l@HPRTa)#x)di*oH#VUhxZl@f$)t2$jDc)<|IenLgaVF0Svqb zdc3`DTVYj9M6D_3FJ9~hNeqP(kUKW$?V3sSWyd6=iGdWp9nFu_w`b_gfLjI;#4sqJ z(0PM%uD%*`zw(u#6Mou!Hc`4!@^gnlAy*>%mtR1>eSsBzLhikMNOwm^{0yZB>7hId z$$09PEyKjwvxoM(d53i(4!nQxVEXHG6vH0~B?93L=xaX86(D4js|UdhmsxToPvSwCbZ=g+29rEILbRDLcz^%?xI0+? zAOQ?tgKZzj)Qc_}mha?jT*5%E@qhyd(i0Yu5I9E|mXKNx5R6M9YNbQWy$0R=3qTYV zTP^S3wJX=dhEeFf%^Q?gRpl&Q9a1H54`3^9{`%Hi@r$I~WMxLKB24!jTTj3hASefZ zNH9)?*aKwgNSgy5*tIKi#pJ4#e#`~*=Qd~l{Ja91{e>?K%Xf;DfXm_b05?MEwOT8e zjHx9l+eqxL2S7M5V>uN7M(-sA%KzbOt$?sf*xS-#yNi=b5MpR^q0y(Fic4<15fj*) zZ)Hsl=B`+Q@xy8T3Ebz`#~1j?k(EuBC<=@&hu~7Dv2`Q9ogol0xg8k_7bQU=MT`ke#R!`JGX2}wff{DxsT!@5-Tl{xW1h)y~JPK z#1j~Yr^p(vVd?^f9%93cqVjk&z|)4xx*9-j_EDMh|D5zzM@iO ziq=8I?dX<~g;Qo)V}?qO12haVK27ObJ(w$%UGk+iNV(3|T)=hXSn zzvdc@KIN3*gCaf-5CYqqn)nNzu)^mIja=vv-I;^`jtA(PP-x?TVGThNh9X|giY0eG zVzQy`_ICWavC;XV{D(U|HG{Y{-hY3N@PVka?x|I)aQK~f2K^m;5SjE`sRg*NrNzm9 zyvi|mf-On10*BzFux9y^!$q2GPgmA`yj(KVh{h`p%J953=8Z2u`6PNeJ5z)2P(aYG zKmM`TN@!0<2cCQQ;UR~h}zVz7g= zLgxXxJ3EIY?M$l!1)ZJPz?V1)*;H}OZA}rSnHRyckrkvPL(Rshl1o+77U^Xzv!Lgt zG77?;3yfO&gFE=h_}K>^gp|@+3}+`vt(g~i6ub&%khBJlbl!pjh z<}ruR2wzyDBBl^8;>|I<%N5t$)&voc3pTG^i}zYua=3YVv%0>HDfRVzzviNgqK4c4 zSbfTGNHS~%U0wL?z4tnEBBPf6%N^FzJ&&>N$|S$2X=O=eO-WTi#Bn1+!SUbo0pZ0~ zFSzC_8IT;yI@0xtRrjwel=i1STbNy<@KQ-kSxKA_-WOXS3+ zH2Q*`&QAR2U3WQTPO^05(inPTSqKvcjP=`ifG{6#P+qo_vU!V1lT7Fzt87hN2tErI zwclkX&g|}aZF3U^J@WySgh7CJT3Rq^&K&rej3vde6E%$2Ejif9cZ@pqRGfU~nFxXa zoo#Ihg8-E^HTd`?m*Cvbe;%Ii7Zzxf-)Z1RN|!4_2t5DTW1K$-B2&Dq;!C%0h}p6< zgQD+47z#6A^F#Q)fuA5BTS~8tSrK25@-1mc&~16*9NJ38mfQBzZ!e;t+olRtwY6xt z;Ra-ii|u+_GeTC0Zt7z-gO=uz&T(%LSWyd! zjA{altVzFF3*%0-GLwI7Rp?m)Vrl^E8i~$@il;VDaDcOy1usV^%*o;{sU9 zN={YDIO7ac?vbC|a6hLoC@w3*<=^}!MvWbtzK%E{FzO|x?2EWHE!c`)f~;T=6m)gr z$-D1%X1X9m^QbT1eU7EEG!&MGrp7|gFmT4TuYZWj<}HTMlu$xXx0oPmC* zpSW;c*GvB;%xao22(aVD7jZ&mB`U{{PwyMz_4hn+p)Z(9t3^5NiQ3YwH=3K2II?#y zo?NvGhxhJvEI)JF$G%v6=Im~VH#C(sk#Pr!!kE?j!5jMDnm05Xdw`)WW|Wl{ESXH zi(*nHLt`w2+Q0l$1@VUV=>aS&QV_xux_{9rx)C|dfu;pR2!Z0i`Al>7w&yk>o4p*G zPw4R8y?DK;2`7vmjT6U@Pq)-WwlYwG%Y?-{RxbqhzxgJf`N>bv@`pbpCG(9@UtW2O z@Df6IU?(B`Xv-7oE$bPu2k>~n85GG-7#r?r!>|>G&i(=I>wj7iytO@tz_qHj7N49y zA7ds@&dV*)-z+JOE0oXWN+Hm3=nyuqU5gzrzL

t1KHif8;gaZMK6eFG1GIVJMf% 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 literal 9822 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 literal 0 HcmV?d00001 diff --git a/app/assets/images/task.png b/app/assets/images/task.png index 11e5a7aec8c1469236ac637103c56244788ddb0c..c9d8f081206caadc4e6edd228e3fcce72ee9491b 100644 GIT binary patch literal 7676 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%0D4Q@V`_RV(i`ouQ&_bUBC{a8kAfb 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 Y0OR&1xwK;JasU7T07*qoM6N<$g5z_oegFUf diff --git a/app/assets/images/wildcard.png b/app/assets/images/wildcard.png index 64dceb8ca30fb635f2b5411b0cc5993954f2182a..d72c49941bdaff34b883df226dee49fbedb870a1 100644 GIT binary patch literal 9359 zcmV;AByih_P)4Tx07!|QmUmQC*A|D*y?1({%`g-xL+`x}AiX!K(nMjH8DJ;_4l^{dA)*2i zMMMM@L4qO%jD{kyB8r88V8I@cAfUux6j4!mGqP56<>kGXm){>}eQTe+_dRFteb%}F zki7l5ymVL!fHa~vAmcQ z7uoQ$&mudEnVrUCi&%W-40ak@%snFBnkD3j81WZzQ5KhzE#g}u)=U+qaYg)A9Gk{r zW&(gBiR}UoD@nwrA|~;}Lfk~W6aXA4@hgu1iUph;f%sBx=^43vZeo&vuFKM+o7vhj z=-!;{RE|Jk6vSkuF!^k{TY6dsla~v?;+;QBMqFFEsL0l4w$|20=Ei1U73#lk{!NK{ zyGXBsKlcox^?kAZm0x;20E}5tZFYRI#qR~6V>1Bq_rKUQ4+0=5>RbE3SNEZb=OsxX z$gndp$O~ z2}Gii1cZ;QLyD0~q#kKOx{zMvCNhFdBkxcc6a_^`8KLY^-l*j$7HTzW9jX*njXHvA zNA;j?qDE0Os847zS_y4{wnO`%BhiWIY;+O265WVyLtjGQMvtT4U@#aOMh9bq@y0}9 zk}+#ArI`JgR?K_yPPlex4vr&>=Vw!U)NPjf5&f z3*i#sA>kE~NK_}<5`&3c;s#Leh59VbXchJ<=;OnXFBA zCP$M6>atgt3H=1Y2UgM2$qd#E`@bNxY<%q>JP#$vnwQ$&-=;lG9Rn zDQzh?DW=pqsT!$MQo~ZS(iCYk=|Jf;=~C&V(pRM?Ww0{ZG9EH)nL?REG8bjWC@3{{8fLrtcZP`{)0Q)gslWG!XGWpiX}WY5Ts&=8t7&4-psE2EvD z-J!jgQfv(`8kfN|tp+n)3B1%zTF<3EM z@qpqb#pxx~CH6~LONy7ASaM$pR?=4rQCg#PNU2Y0R#`>aOF2V%ukuCZX%(7^vr4i` zh00l#DOHN9qbgUmLiL>LGrBC@g`P^UqW92e)Rfe`)r4wwYW-^S>N@Jn)eF>H)gNgP zG#DBQ8WkGd8Z(-zngN>mn$4Q`weVUDtt72ITD@9x+B(`1+FP_cv?q1sb$oR4beeS@ z>XLPxbXV)v>)z7C=rQzC^!DrB(1-P{^po^!^al)J18W1W!G425L$sl-Ayeeqo|%5^b{6q}Sw=sg-G}X@ltlGZ`~qvjVd&v)|42%~|F( z=C>@!7M>RCEjle;S{hh#EDu=TwW3%BSZ%TDw)$voW6ig2v7WNgw28CXXEV&8GJ+VT zj4QTiTUXolwx@01*;(5O>`vJIW^ZJlVt>?ra;eTz&eDdZV-D&LOouv$5l6aXoZ~^q z5hpb#rc=Gs6K4%)wsWKNgo~a_vdb}-7p|tReAhPDIX64EwQlF#5qB^5V)uRz8IR>2 z)gF&M)jbnEn>}Z|ti0BEo%cq2`+4v59`;f8Vfi%q%=p^)uJ!HlBl(5;Rr@{h*Z1f9 zcLl%!z5%-e9xl^b##`1A2m*ZqcLhEQ(g|7}^kXn4I4HO#_-Tk)NPb9fC?zyD^l0dt zFxRlMum{U^mkXD7hf9XXgg1rHMYu zc#Ks{QOuo{IxBNlUR|ZQDs|PFSjkvs?8!KETtwW_xDU)gW<7H@-Y0%v{0z&DwTJbb z?aZ!VPjMVL<(!EGhlKKk$wY_5U5QgkPDzzX(_A-hHTPw*cXDm=TuNZd;gp5ch}70J zTv}Y(DV_{3h1Zj=lAe=3m|>7nlrgf}ZuRcfGkiaOVz}3Y2Bx^Z`;1P{p|fi z2b>SI)GF7O)V@E+J$SdytFFCXyT0-e=1|t5rw!o^z27pvZE93(ENT3Bn0I*ONXU_% zCYz?Fqe@51n&D<)^VG4JV>iBY|E{yesHLuz)>?8L92Xvc_I=#J{_+2=_${t8_!le8-Jehe15v28 zmBOpTuPtA9&j!stev|fQey;ef!rLS781H)DN4%ey&;Ee@Q1wyoW7j9YPY)N;78d>m z1DNyts>f=+00009a7bBm000XU000XU0RWnu7ytko1xZ9fRCt`-oqLcSRhhtlr|+Ga z1c?bjvO)>d1P}z0APHG5B^jlb5;Z>1Y*9j%2>~`6K&(<&zyzZNP>EG$36C`p1_S&- zTwETC%Cb)4x?6%Mgz!{C58zsx7?L5tkh!<}>>uAb-KYC@-`n#f_*M1H?bGM^edl|e z@4S@Ons*{7@Z5I|(c4v*kwEqBu0Rne@aQ#2o`y#siixNu@e>$8(}`xgAxam~zDgjq zuW&$&@M(B#PxtOogK0!;C)$??^0pE{ZKT3xugoA&l#94g{B`DVFdHudo$#F!Hx z?(szmKPZz+sYn^{M;fg@9vm^I1W>(H3q?)PEM?Bez9AIcS@gj#PLub^h$h`deF&uw z3C4r~3Ot@R;wB40Q7Y%dP>@{~8i?ZO$IAw~=5CNLNAL6W8ygXq5G8-e-I47w1k`R2V-2-9U=eaJ<0 zOo*Is*`NV5r%@XXku+igsEt(EpK1#EL0(J~n1^`VqkC+^KA^{@nFq`SrT{0K2(y66 znOypTC(Q3(0lR@Mz-GZw&*ZK=Q@8_NU~ zAwB?l0~28-2nrUMXWpLwUN+Z9a*9Q`>C%{4cMF`@vA|(YgyKiOs zaVPRON6p~f2UIw07I;SJMH*gu0$$q{vi%QF^1@TUV@uDHR?X-~2yuOi5M9uK;m(|} z%M!tE;>-9YWj;L8q6U5KI;z8z|`U(6K1kqjvlm^d(iUPdE1+4)h2(|gI zAdEmq@bcsEn_v8lP1l@O)Fg)xEBm2Sbc7EnEa!29^Ai{r5r#y7Tx%!D#tJgX55#ck z4S?H$-g&?e$Qc@Se(D;|zWQ?Bb2zkD1kn`*TE*p~l$ahBO^O1cnW52+eW)~q2r);n773$I+v zyQe}&RS>Tb(V=ZOisXM(fbdiuO`M8}Q$h07hLcc+o)PS=!)vd?#&6xmW9!e!X0-)4 z54yL&d?S+lOr6URpuxQmWMc%)kiP&yeoEGV^Ks2VM?go#^jgpK zawEG#1nIVVkrhK3PB2Mhu;R)y@stw1p$tLr40jm9?hRqb3-FB-8vKR*2odfd77aD8E;I|bAs0Zn2D)$SK-@6D=wlOTdr^bxGt1`iZs+Wisi$tvrF^t>~6?ldlvS8y# zB@>g>g$fXvo?k(@!_&eQRZj@ud4i>S1bZXc@=%?dPjAa+bv|@$fU^rY!FhLnGJw{n zu{WpsF*GGWbI}tt6FUvazvP#iqvk-xldcgWO3@-e(jvp_p8U5+*I8}WN@A+?Ph~}y zCzg|^ML#G7ZC+y5R**95A^h<%_-z2&>S%b+Kh!$18P>}go1pn6S-eER!^)0+@}>daka@K(niEtvlRI@XzEZ4rA{cR z;}LV<+MuDZA4uCandaxU-eQ-c+Sb8&^)wSIW-2^OHSPint)30}3e?G``15m*qHi{y*MR{W~gB5piQs013-+aiXp-Yr&O7J&U!cH zh0^A}98u&1xZeu6puq|%wtNDo5FD##F~GApLz5eJX(qObg%L(c@2^E-W?C^Y9OP>Z z*Ek|e88g&trtO-6O{<{II{Yf4Ju9AY%Rmh-I3SgKA8-uZmbQwr12jKXQiDa*D1rvc z^!~tn+XNzd;$koPrKa7u6|9H}LnC8xdj2pV(qgd;)Zn$fu**EJ?Uk@vnD~r_3btN@ z82#jkDCI$WRodo2r?kC=LUzBoxHXU>fZAAMxuDIoH^BJwW6?9K`&N$lps~9gr5l-1 zDmXoNh=|gN_M4&<LwVPtuJrYPMdTW+yX89DdrE9h|e$|BviC$_go@|b*Df{8nlve1eA2WfN5?z?@T0lToA{4~^4m)3kHS;cj*KbU|&%KJ%FI&zL$HRn*$Xq)LZUr@i z^qT4QZ-wx}R=DTetKg9pNyPn^aq;FGIB+UVsG9lW93ku(;;0D13RH~CS_4NO*ARUs zu!VrutK}!T1ejQY0D$4CS*Z#l(}t0m+f`x0t`@R%&Zs z_p@-}rIBO%}(S5j_#&H}P6H!#oWg3TA(3DkrY^?^4B&4J_r8XUwI;%M8G> zj~xdX{@zwGE94YS<$xUrXaFza zg3*8~Bk&aK5W+TSa~)Sm&xl&o(6-kDsufv_Q?J0JS&9!Fe=dWo&gGSt;f`PYCw%{u z;Z^V}4|CS3ALo6CrV(Dr&LL;bo@_f^9bqjz4Rs~v_Xt4SfnICy<6m3skLMrRDMT=p zvoaDy%#`u`Mv8c{qiV#`ejTv?1USrxrHeied~FzQ`x;9ZeVoI5$!ot3$-7#S-8Ptk zW0^WaLZf)vQcDMX{*j$-p<6PzY6_admG*hy+njgXkXjVUoT(jfLA=D!RbFKuPs^yY zis+Y01TQ~Z2UeG_W(=!&`Pn*^Nb;(ZtPLG%z3j-|GIa=`#NDB5DOTSNe!(*Kd=LT* zl;8qC{u9G1+nz&(X7-D;=^0{HKQr|CkeY^p5Vr4vpPbpSQn@tzmOT5W&md0?JvFfTpprY!$7Q3fX+Mu_-X3-@tU?6Fn^+3$_ieQ_gaDtr2Tav=sUl_P7Mt;o#3NNRWhYLH17p@XFR2 z^(c{%AgVo7q;|lxYH%3A-WvSrMR@eG8Lb=Oui)ga!#KI?FqpogW%Nh>`FM8hgttl( zA)Z<#X%m>irdiefrzca3cKc~%1-aonTmmd?GOmaT>dW3)**v@1hW`BSb!f90>45WY`&Owmw{$7q8sh3XSNVdB2eg@``;WU*TOl?> zm%)+WI%9)#56sviR}c6(uU#OAUI6gih6`lVg)tj-G&JKDh^G+u^tX-+@QEA##Cyz4 z)`Th?I2As-VW3pn|9fR<3xgx4KUgcTjtsz_+;D*#^?v9|qpTBhi7}AOf+nb%R(5pV z2@VGUy!7NCwJ1@>wzpKx|1u_D9oX^opIaBdU=7E73Xw0~lAd7I*YZPd4nm+gw`yJGf2=u+1TWUy#uE%^<_?!{LJK7cXmIYgdr8 z8vNJ+*r6vK+_LT$e&fsRUy*g1b{R<<@UDt{YXyhSJy_hxP3q)D$)-KGEfw>-7QvdO zsouXC{5~10`uPRB!Q1i(P^bs|G-10y4nIl=!0ub=-)&scPKE6j(MXwxVsj4#)he*? zhWu&(pWiUR#CBP`ubup~lCX*G@VOs05k(7cpsgxp6`IFN>J0|rR<9X{-JpiuyMRC6 z>gIe0bQ}3^ph)~c3fD0KG-xI@n!OF+$GLC7858_y^&0ACEofw%SC$afC|O;Q_kcLa zCRE_!E0!_$(uW(0{lbO;rq7(f1hcuDOnT3gy=c>CPT*tLJkgMT?xhcN@fFLMP)W|A z$gPW`a4lHmhY^HzxOa6*)b$H4I?LJrlhS9Argq3Q97PkjDT4&vy#e&z4)iPszHVb& z@u=Ami6~X;DYQG-ZNqZ)pH3Fw+Qn0$iP+|eH?!S%GmB=gv`#O;vM!Q}O47F#xSwNZ zr*RBcfOZpBF+|%7yt)&vIVqL+YUo}?*VzdNxR#^y4`?{jCT*`QBr5M0nh$V2&Y0ku zuU;85wP1ZKN;=x$T^%rK0=#!z6~ij z@n$wt=24Qq-K4j9w9(odYS*4>FPZK0 zknlkbFFf%EZ2q>3kyX&$FGrr`AUuo1X);_YBme-jizc-EoY(mv=j+6};0IsapTT+} zew3MS^*lj>Qf8#gzV#?0+H7a>lq|Q`p0s7KE^Tw5Puia8{mqnb4sII=(4dU7dAVHB z?PHD~JKv46e96~%t1jFBJ)JDv1=)pY56{>az}7{PaDZp(s7Vg-SiYoTQs{hGS+GOW zfbaaClz$L-{+M-kku~IJUVZTABgcHPHV*&w_xR2Ij}q2ofTbLpU0KhmQ?lKS;x26; z(?_QrZnpQ^dRnWejwtot-1}Sj_4nMCuZ6D7_<5F3LqJoU<`O_dRLli_&bZ)g5M2;Y zSKfE&T>kh(zZ}XDWg3Vmx_0xwG6dJaXn@rPZtutZw@d9qV^MAUeLweJdXk%b3$Q9a zSI#1*b??s|XBB&G3UvYL0uxcx5BxojRkZGmDg5E_e%>+`P(>w#pdwsgpBNc>Y#%H7 zEC;$}dk*pkBKX7O{j579weH89qP4QW;m8_6#*lGYNB|?Rl7y+eGX?oRbj=4=_8~-w zVZ9+jtuCtw?Abi7E@(%TpSC+J)#xf%J6iUPQuRD3vqHKK6~x-9)nVJ?{j5(TA8Fgl zEp*M#nfG8%J}$Wfx&;T#(Ax&xj)5=!5RfWR&vlXH4Pw$9FMM6LI7@oL~_T zMjVkA4;30$Eth@b^iExD86aibdRU?l*5H}PcjY1feCXaBpQLD^8S)3vbT#)bG$nur z&1uw%WB6$zbc2|t-5baf;Y(9_=#B>%2w|@lBD9fs94i3E%}}+y)d=Uv8~S7SE8F!y z?Ig#PL1J#UA>a3EnGpKf9S?B(m!@VL>YSEk+6~Q3PQaWY+ElxZ!l{Yo#f}7899_l- zzs!o;*D$eahWZB4_FRV8E;qlGQ@z%Xs?33|n9((jh*!$wt;JO`P=~9|z8HT0FWD^f zk1ET$8!|sBd1~U=oEw@Z!aOo3Cj$J#ojaL6bE+&8RHoNP=F}<#+1e;?<%CJ4^Xq6i z#vNl=#M`q(+suD265q~X9ky+Gl^>pYU^Y8rRCI41GV(|J+)w}oLp(V*FjoL<0#`7%Z~+^I&{VPj3`S*O7Zqz~?w?!!1ld{y;plnAQXAN$GZuLEF))12#FA*gYWNtl<(!LC)ZO9cCn zb*x*Yr~5R$IVmLoGv6|=`_w&RaYitDH|eE_;YJEFj|+b0ff%brNOz(ndE{j4!oGNu zUMj;O-6iRK$Rk7?#YybuldfV`}9t|PdHTo$W`V=M`8wLb1EItfIqTmlL*J-YV+~GQ@+{Rq`|mU zr8#ZJ3Go)jjR0|hAa~3ci6$3_ESrNOxhMA%F|U>#XR-V-j+vX&(h= zo94g(nohIrY7d$&Sr{?i;-w7ilLTl5s@a0FcNn}Q3Gmkh{|}}oi_jJ^p^N|k002ov JPDHLkV1iYwF{}Up literal 10416 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

+uT(?|B%anoY7$*M4}y7Q5dgMrUyGLSmMwT2 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 WSmRf=Yu(qEFd!u+Ct4}2@Ap4yyE*Ux diff --git a/app/assets/javascripts/Jit/graphsettings-event-handlers.js b/app/assets/javascripts/Jit/graphsettings-event-handlers.js index 47eb2c49..54af42c8 100644 --- a/app/assets/javascripts/Jit/graphsettings-event-handlers.js +++ b/app/assets/javascripts/Jit/graphsettings-event-handlers.js @@ -1,13 +1,12 @@ function selectEdgeOnClickHandler(adj, e) { if (Mconsole.busy) return; - //editing overrides everything else - if (e.altKey) { - //in select-edit-delete-nodes-and-edges.js - editEdge(adj, e); + if (synapseWasDoubleClicked()) { + synapseDoubleClickHandler(adj, e); return; } + var edgeIsSelected = MetamapsModel.selectedEdges.indexOf(adj); if (edgeIsSelected == -1) edgeIsSelected = false; else if (edgeIsSelected != -1) edgeIsSelected = true; @@ -30,18 +29,48 @@ function selectEdgeOnClickHandler(adj, e) { Mconsole.plot(); }//selectEdgeOnClickHandler +function synapseDoubleClickHandler(adj, e) { + editEdge(adj, e); +} + +/* + * Returns a boolean saying if the synapse was double clicked in our understanding of the word + */ +function synapseWasDoubleClicked() { + //grab the timestamp of the click + var storedTime = MetamapsModel.lastSynapseClick; + var now = Date.now(); //not compatible with IE8 FYI + MetamapsModel.lastSynapseClick = now; + + if (now - storedTime < MetamapsModel.DOUBLE_CLICK_TOLERANCE) { + return true; + } else { + return false; + } +}//synapseWasDoubleClicked; + function nodeDoubleClickHandler(node, e) { - keepFromCommons(node); + openNodeShowcard(node); } function enterKeyHandler() { - var selectedNodesCopy = MetamapsModel.selectedNodes.slice(0); - var len = selectedNodesCopy.length; - for (var i = 0; i < len; i += 1) { - n = selectedNodesCopy[i]; - keepFromCommons(n); - }//for - Mconsole.plot(); + + // if the metacode spinner is open, create topic when enter is pressed + if ( $('.new_topic').css('display') != 'none' ) { + $('.new_topic').submit(); + } + // if the metacode spinner is open, create topic when enter is pressed + else if ( $('.new_synapse').css('display') != 'none' ) { + $('.new_synapse').submit(); + } + + //var selectedNodesCopy = MetamapsModel.selectedNodes.slice(0); + //var len = selectedNodesCopy.length; + //for (var i = 0; i < len; i += 1) { + // n = selectedNodesCopy[i]; + // keepFromCommons(n); + //}//for + //Mconsole.plot(); }//enterKeyHandler function escKeyHandler() { @@ -53,36 +82,16 @@ function escKeyHandler() { * Make a node "in the commons" (with a green circle) lose its * green circle so it stays on the console/map/... */ -function keepFromCommons(node) { +function keepFromCommons(id) { if (userid == null) { return; } - //greenCircle being true denotes it's actually "in the commons" still - if (node.getData('greenCircle') == false) { - return; - } - - //this line adds it to the console if you close seek - node.setData('greenCircle', false); - - //this is just aesthetic - deselectNode(node); - - //this adds the node to the map, if it's a map - if (window.mapid) { - $.post('/mappings', - { - topic: {id: node.id}, - map: {id: window.mapid}, - xloc: node.pos.x, - yloc: node.pos.y - }, - function(data, textStatus, jqXHR) { - console.log(data); - node.setData('mappingid', data.id); - }); - } + $('#topic_addSynapse').val("false"); + $('#topic_x').val(0); + $('#topic_y').val(0); + $('#topic_grabTopic').val(id); + $('.new_topic').submit(); }//doubleClickNodeHandler /* @@ -143,14 +152,20 @@ function canvasDoubleClickHandler(canvasLoc,e) { $('#new_topic').css('left', e.clientX + "px"); $('#new_topic').css('top', e.clientY + "px"); $('#topic_x').val(canvasLoc.x); - $('#topic_y').val(canvasLoc.y); - $('#topic_name').autocomplete('enable'); + $('#topic_y').val(canvasLoc.y); $('#new_topic').fadeIn('fast'); addMetacode(); $('#topic_name').focus(); } else { $('#new_topic').fadeOut('fast'); $('#new_synapse').fadeOut('fast'); + // reset the draw synapse positions to false + MetamapsModel.synapseStartCoord = false; + MetamapsModel.synapseEndCoord = false; + // set all node dimensions back to normal + Mconsole.graph.eachNode(function (n) { + n.setData('dim', 25, 'current'); + }); tempInit = false; tempNode = null; tempNode2 = null; @@ -250,13 +265,25 @@ function onDragMoveTopicHandler(node, eventInfo, e) { if (tempInit == false) { tempNode = node; tempInit = true; + // set the draw synapse start position + MetamapsModel.synapseStartCoord = { + x: node.pos.getc().x, + y: node.pos.getc().y + }; } // temp = eventInfo.getNode(); if (temp != false && temp.id != node.id) { // this means a Node has been returned tempNode2 = temp; + + // set the draw synapse end position + MetamapsModel.synapseEndCoord = { + x: temp.pos.getc().x, + y: temp.pos.getc().y + }; + Mconsole.plot(); - renderMidArrow({ x: tempNode.pos.getc().x, y: tempNode.pos.getc().y }, { x: temp.pos.getc().x, y: temp.pos.getc().y }, 13, false, Mconsole.canvas); + // before making the highlighted one bigger, make sure all the others are regular size Mconsole.graph.eachNode(function (n) { n.setData('dim', 25, 'current'); @@ -279,8 +306,12 @@ function onDragMoveTopicHandler(node, eventInfo, e) { $('#new_synapse').css('top',myY + "px"); $('#topic_x').val(eventInfo.getPos().x); $('#topic_y').val(eventInfo.getPos().y); + // set the draw synapse end position + MetamapsModel.synapseEndCoord = { + x: eventInfo.getPos().x, + y: eventInfo.getPos().y + }; Mconsole.plot(); - renderMidArrow({ x: tempNode.pos.getc().x, y: tempNode.pos.getc().y }, { x: pos.x, y: pos.y }, 13, false, Mconsole.canvas); Mconsole.fx.plotNode(tempNode, Mconsole.canvas); } } diff --git a/app/assets/javascripts/Jit/graphsettings-model.js b/app/assets/javascripts/Jit/graphsettings-model.js index ea62de64..1939e738 100644 --- a/app/assets/javascripts/Jit/graphsettings-model.js +++ b/app/assets/javascripts/Jit/graphsettings-model.js @@ -31,7 +31,12 @@ MetamapsModel.edgeHoveringOver = false; MetamapsModel.boxStartCoordinates = false; MetamapsModel.boxEndCoordinates = false; +//coordinates for drawing edge that's not created yet +MetamapsModel.synapseStartCoord = false; +MetamapsModel.synapseEndCoord = false; + //double clicking of nodes or canvas +MetamapsModel.lastSynapseClick = 0; MetamapsModel.lastNodeClick = 0; MetamapsModel.lastCanvasClick = 0; MetamapsModel.DOUBLE_CLICK_TOLERANCE = 300; diff --git a/app/assets/javascripts/Jit/graphsettings.js b/app/assets/javascripts/Jit/graphsettings.js index 75cdeb69..9ff758c8 100644 --- a/app/assets/javascripts/Jit/graphsettings.js +++ b/app/assets/javascripts/Jit/graphsettings.js @@ -13,7 +13,6 @@ function graphSettings(type, embed) { //by scrolling and DnD Navigation: { enable: true, - type: 'HTML', //Enable panning events only if we're dragging the empty //canvas (and not a node). panning: 'avoid nodes', @@ -39,8 +38,11 @@ function graphSettings(type, embed) { }, //Native canvas text styling Label: { - type: 'HTML', //Native or HTML + type: 'Native', //Native or HTML size: 20, + family: 'LatoLight', + textBaseline: 'hanging', + color:'#000' //style: 'bold' }, //Add Tips @@ -52,7 +54,6 @@ function graphSettings(type, embed) { Events: { enable: true, enableForEdges: true, - type: 'HTML', onMouseMove: function(node, eventInfo, e) { onMouseMoveHandler(node, eventInfo, e); }, @@ -123,6 +124,17 @@ function graphSettings(type, embed) { } canvasDoubleClickHandler(eventInfo.getPos(), e); }//if + }, + onRightClick: function (node, eventInfo, e) { + if (node && !node.nodeFrom) { + // open right click menu + } + else if (node && node.nodeFrom) { // the variable 'node' is actually an edge/adjacency + // open right click menu + } + else { + // right click on open canvas, options here? + } } }, //Number of iterations for the FD algorithm @@ -131,13 +143,13 @@ function graphSettings(type, embed) { levelDistance: 200, // Add text to the labels. This method is only triggered // on label creation and only for DOM labels (not native canvas ones). - onCreateLabel: function (domElement, node) { - onCreateLabelHandler(type, domElement, node); - }, + //onCreateLabel: function (domElement, node) { + // onCreateLabelHandler(type, domElement, node); + //}, // Change node styles when DOM labels are placed or moved. - onPlaceLabel: function (domElement, node) { - onPlaceLabelHandler(domElement, node); - } + //onPlaceLabel: function (domElement, node) { + // onPlaceLabelHandler(domElement, node); + //} }; if (embed) { @@ -191,7 +203,7 @@ function hideCards() { } // defining code to draw edges with arrows pointing in one direction -var renderMidArrow = function(from, to, dim, swap, canvas){ +var renderMidArrow = function(from, to, dim, swap, canvas, placement, newSynapse){ var ctx = canvas.getCtx(); // invert edge direction if (swap) { @@ -204,7 +216,10 @@ var renderMidArrow = function(from, to, dim, swap, canvas){ // scale it vect.$scale(dim / vect.norm()); // compute the midpoint of the edge line - var midPoint = new $jit.Complex((to.x + from.x) / 2, (to.y + from.y) / 2); + var newX = (to.x - from.x) * placement + from.x; + var newY = (to.y - from.y) * placement + from.y; + var midPoint = new $jit.Complex(newX, newY); + // move midpoint by half the "length" of the arrow so the arrow is centered on the midpoint var arrowPoint = new $jit.Complex((vect.x / 0.7) + midPoint.x, (vect.y / 0.7) + midPoint.y); // compute the tail intersection point with the edge line @@ -213,8 +228,12 @@ var renderMidArrow = function(from, to, dim, swap, canvas){ var normal = new $jit.Complex(-vect.y / 2, vect.x / 2); var v1 = intermediatePoint.add(normal); var v2 = intermediatePoint.$add(normal.$scale(-1)); - - //ctx.strokeStyle = "#222222"; + + if (newSynapse) { + ctx.strokeStyle = "#222222"; + ctx.lineWidth = 2; + ctx.globalAlpha = 0.4; + } ctx.beginPath(); ctx.moveTo(from.x, from.y); ctx.lineTo(to.x, to.y); @@ -225,38 +244,6 @@ var renderMidArrow = function(from, to, dim, swap, canvas){ ctx.lineTo(v2.x, v2.y); ctx.stroke(); }; -// defining code to draw edges with arrows pointing in both directions -var renderMidArrows = function(from, to, dim, swap, canvas){ - var ctx = canvas.getCtx(); - // invert edge direction - if (swap) { - var tmp = from; - from = to; - to = tmp; - } - // vect represents a line from tip to tail of the arrow - var vect = new $jit.Complex(to.x - from.x, to.y - from.y); - // scale it - vect.$scale(dim / vect.norm()); - // compute the midpoint of the edge line - var midPoint = new $jit.Complex((to.x + from.x) / 2, (to.y + from.y) / 2); - // move midpoint by half the "length" of the arrow so the arrow is centered on the midpoint - var arrowPoint = new $jit.Complex((vect.x / 0.7) + midPoint.x, (vect.y / 0.7) + midPoint.y); - // compute the tail intersection point with the edge line - var intermediatePoint = new $jit.Complex(arrowPoint.x - vect.x, -arrowPoint.y - vect.y); - // vector perpendicular to vect - var normal = new $jit.Complex(-vect.y / 2, vect.x / 2); - var v1 = intermediatePoint.add(normal); - var v2 = intermediatePoint.$add(normal.$scale(-1)); - - //ctx.strokeStyle = "#222222"; - ctx.beginPath(); - ctx.moveTo(v1.x, v1.y); - ctx.lineTo(arrowPoint.x, arrowPoint.y); - ctx.lineTo(v2.x, v2.y); - ctx.stroke(); -}; // defining custom node type var nodeSettings = { @@ -309,13 +296,14 @@ var nodeSettings = { edgeHelper.line.render({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, canvas); } else if (directionCat == "both") { - renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, true, canvas); - renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, false, canvas); + renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, true, canvas, 0.7); + renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, false, canvas, 0.7); } else if (directionCat == "from-to") { var direction = adj.data.$direction; var inv = (direction && direction.length > 1 && direction[0] != adj.nodeFrom.id); - renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, inv, canvas); + renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, inv, canvas, 0.7); + renderMidArrow({ x: pos.x, y: pos.y }, { x: posChild.x, y: posChild.y }, 13, inv, canvas, 0.3); } }//renderEdgeArrow @@ -549,7 +537,6 @@ function onDragEndTopicHandler(node, eventInfo, e, allowRealtime) { $('#topic_addSynapse').val("false"); $('#synapse_topic1id').val(tempNode.id); $('#synapse_topic2id').val(tempNode2.id); - $('#synapse_desc').autocomplete('enable'); $('#new_synapse').fadeIn('fast'); $('#synapse_desc').focus(); tempNode = null; diff --git a/app/assets/javascripts/Jit/jit2.0.0.js b/app/assets/javascripts/Jit/jit2.0.0.js index 61520b7a..6f08f42c 100644 --- a/app/assets/javascripts/Jit/jit2.0.0.js +++ b/app/assets/javascripts/Jit/jit2.0.0.js @@ -7040,6 +7040,19 @@ Graph.Plot = { !animating && opt.onAfterPlotLine(adj); } }); + + //START METAMAPS CODE + if (MetamapsModel.synapseStartCoord) { + ctx.save(); + var X = MetamapsModel.synapseStartCoord.x; + var Y = MetamapsModel.synapseStartCoord.y; + var X2 = MetamapsModel.synapseEndCoord.x; + var Y2 = MetamapsModel.synapseEndCoord.y; + renderMidArrow({ x: X, y: Y }, { x: X2, y: Y2 }, 13, false, canvas, 0.5, true); + ctx.restore(); + } + //END METAMAPS CODE + ctx.save(); if(node.drawn) { !animating && opt.onBeforePlotNode(node); @@ -7213,8 +7226,32 @@ Graph.Label.Native = new Class({ ctx.font = node.getLabelData('style') + ' ' + node.getLabelData('size') + 'px ' + node.getLabelData('family'); ctx.textAlign = node.getLabelData('textAlign'); - ctx.fillStyle = ctx.strokeStyle = node.getLabelData('color'); + // ORIGINAL CODE ctx.fillStyle = ctx.strokeStyle = node.getLabelData('color'); ctx.textBaseline = node.getLabelData('textBaseline'); + + //START METAMAPS CODE + //render background + ctx.fillStyle = 'rgba(255, 255, 255, 0.7)'; + var margin = 5; + var height = 16 + margin; //font size + margin + var CURVE = height / 2; //offset for curvy corners + var width = ctx.measureText(node.name).width + 2 * margin - 2 * CURVE; + var labelX = (pos.x - width/2) - margin + CURVE/2; + var labelY = pos.y + node.getData("height"); // - height + margin; + ctx.fillRect(labelX, labelY, width, height); + + //curvy corners woo - circles in place of last CURVE pixels of rect + ctx.beginPath(); + ctx.arc(labelX, labelY + CURVE, CURVE, 0.5 * Math.PI, 1.5 * Math.PI, false); + ctx.closePath(); + ctx.fill(); + ctx.beginPath(); + ctx.arc(labelX + width, labelY + CURVE, CURVE, 1.5 * Math.PI, 0.5 * Math.PI, false); + ctx.closePath(); + ctx.fill(); + + ctx.fillStyle = ctx.strokeStyle = node.getLabelData('color'); + // END METAMAPS CODE this.renderLabel(canvas, node, controller); }, @@ -7235,7 +7272,10 @@ Graph.Label.Native = new Class({ renderLabel: function(canvas, node, controller) { var ctx = canvas.getCtx(); var pos = node.pos.getc(true); - ctx.fillText(node.name, pos.x, pos.y + node.getData("height") / 2); + //ctx.fillText(node.name, pos.x, pos.y + node.getData("height") / 2); + // START METAMAPS CODE + ctx.fillText(node.name, pos.x, pos.y + node.getData("height")); + // END METAMAPS CODE }, hideLabel: $.empty, diff --git a/app/assets/javascripts/Jit/select-edit-delete-nodes-and-edges.js b/app/assets/javascripts/Jit/select-edit-delete-nodes-and-edges.js index ac122288..eabc3025 100644 --- a/app/assets/javascripts/Jit/select-edit-delete-nodes-and-edges.js +++ b/app/assets/javascripts/Jit/select-edit-delete-nodes-and-edges.js @@ -230,7 +230,6 @@ function updateEdgeDisplay(edge, dir, dirCat) { } function best_in_place_perms(edge) { - console.log(edge); var output = '{{value}}

{{type}}
{{type}}', + remote: { + url: '/topics/autocomplete_topic?term=%QUERY' + }, + engine: Hogan + } + ]); + $('#topic_name').bind('typeahead:selected', function (event, datum, dataset) { + $('#topic_grabTopic').val(datum.id); $('.new_topic').submit(); - } - }); + event.preventDefault(); + event.stopPropagation(); + }); - $('.new_topic').bind('submit', function(event, data){ + $('.new_topic, .new_synapse').bind('submit', function(event, data){ event.preventDefault(); - }); + }); + + // this is for the search box + $('.sidebarSearchField').typeahead([ + { + name: 'topics', + template: $('.topicTemplate').html(), + remote: { + url: '/search/topics?term=%QUERY' + }, + engine: Hogan, + header: '

Topics

' + }, + { + name: 'maps', + template: $('.mapTemplate').html(), + remote: { + url: '/search/maps?term=%QUERY' + }, + engine: Hogan, + header: '

Maps

' + }, + { + name: 'mappers', + template: $('.mapperTemplate').html(), + remote: { + url: '/search/mappers?term=%QUERY' + }, + engine: Hogan, + header: '

Mappers

' + } + ]); + + $(".scroll").mCustomScrollbar(); @@ -52,49 +97,131 @@ var labelType, useGradients, nativeTextSupport, animate, json, Mconsole = null, //$('.nodemargin').css('padding-top',$('.focus').css('height')); // controls the sliding hover of the menus at the top - var sliding1 = false; + var sliding1 = false; var lT; - $(".logo").hover( - function () { - $('.menuflag').hide(); - clearTimeout(lT); - if (! sliding1) { - sliding1 = true; - var listLength = $('.logo .menu li').length * 28; - $('.footer .menu').animate({ - height: listLength + 'px' - }, 300, function() { - sliding1 = false; - }); - } - }, - function () { - lT = setTimeout(function() { + + var closeMenu = function() { + lT = setTimeout(function() { if (! sliding1) { - sliding1 = true; - $('.footer .menu').animate({ - height: '0px' - }, 300, function() { - sliding1 = false; - menuIsOpen = false; + sliding1 = true; + // $('.footer .menu').animate({ + // height: '0px' + // }, 300, function() { + // sliding1 = false; + // menuIsOpen = false; + // }); + $('.footer').css('border-top-right-radius','5px'); + $('.logo').animate({ + 'background-position-x':'-10px' + }, 300); + $('.footer .menu').fadeOut(300, function() { + sliding1 = false; + menuIsOpen = false; }); } },800); - } - ); + } + + var openMenu = function() { + //closeAccount(); + //closeSearch(); + $('.menuflag').hide(); + clearTimeout(lT); + if (! sliding1) { + sliding1 = true; + + // $('.footer .menu').animate({ + // height: listLength + 'px' + // }, 300, function() { + // sliding1 = false; + // }); + $('.footer').css('border-top-right-radius','0'); + $('.logo').animate({ + 'background-position-x':'-7px' + }, 300); + $('.footer .menu').fadeIn(300, function() { + sliding1 = false; + }); + } + } + // bind the hover events + $(".logo").hover(openMenu, closeMenu); - var menuIsOpen = false; + // when on touch screen, make touching on the logo do what hovering does on desktop $("#mainTitle a").bind('touchend', function(evt) { if (!menuIsOpen) { - menuIsOpen = true; - var listLength = $('.logo .menu li').length * 28; - $('.footer .menu').animate({ - height: listLength + 'px' - }, 300); + openMenu(); evt.preventDefault(); - evt.stopPropogation(); + evt.stopPropagation(); } - }); + }); + + + // start account section + $('.sidebarAccountIcon').click(function(e) { + if (!accountIsOpen) openAccount(); + else if (accountIsOpen) closeAccount(); + e.stopPropagation(); + }); + $('.sidebarAccountBox').click(function(e) { + e.stopPropagation(); + }); + + function openAccount() { + //closeMenu(); + //closeSearch(); + if (!accountIsOpen) { + $('.sidebarAccountBox').fadeIn(300, function() { + //$('.sidebarSearchField').css({padding:'5px 10px', width:'180px'}).focus(); + accountIsOpen = true; + }); + } + } + function closeAccount() { + if (accountIsOpen) { + $('.sidebarAccountBox').fadeOut(300, function() { + accountIsOpen = false; + }); + } + } + // end account section + + // start search section + $('.sidebarSearchIcon').click(function(e) { + if (!searchIsOpen) openSearch(); + else if (searchIsOpen) closeSearch(); + e.stopPropagation(); + }); + $('.sidebarSearch .twitter-typeahead').click(function(e) { + e.stopPropagation(); + }); + + function openSearch() { + hideCards(); + $('.sidebarSearch .twitter-typeahead, .sidebarSearch .tt-hint, .sidebarSearchField').animate({ + width: '200px' + }, 300, function() { + $('.sidebarSearchField, .sidebarSearch .tt-hint').css({padding:'5px 10px', width:'180px'}); + $('.sidebarSearchField').focus(); + searchIsOpen = true; + }); + } + function closeSearch() { + if (searchIsOpen) { + $('.sidebarSearchField, .sidebarSearch .tt-hint').css({padding:'5px 0', width:'200px'}); + $('.sidebarSearch .twitter-typeahead, .sidebarSearch .tt-hint, .sidebarSearchField').animate({ + width: '0' + }, 300, function() { + searchIsOpen = false; + }); + } + } + // end search section + + $('body').click(function() { + closeSearch(); + closeAccount(); + }); addHoverForSettings(); @@ -119,6 +246,15 @@ var labelType, useGradients, nativeTextSupport, animate, json, Mconsole = null, event.preventDefault(); saveLayoutAll(); }); + + // bind keyboard handlers + $('body').bind('keyup', function(e) { + switch(e.which) { + case 13: enterKeyHandler(); break; + case 27: escKeyHandler(); break; + default: break; //console.log(e.which); + } + }); }); // end document.ready @@ -244,7 +380,7 @@ function addMetacode() { yRadius:40, xPos: 150, yPos: 40, - speed:0.15, + speed:0.3, mouseWheel:true, bringToFront: true }); @@ -305,24 +441,17 @@ function MconsoleReset() { var mX = Mconsole.canvas.scaleOffsetX; var mY = Mconsole.canvas.scaleOffsetY; Mconsole.canvas.scale((1/mX),(1/mY)); - } -function hideLabels() { - if (Mconsole.labels.labelsHidden) { - Mconsole.labels.hideLabels(); - $('.hidelabels').html('Hide Labels'); - } - else if (!Mconsole.labels.labelsHidden) { - Mconsole.labels.hideLabels(true); - $('.hidelabels').html('Show Labels'); - } -} +function openNodeShowcard(node) { + //populate the card that's about to show with the right topics data + populateShowCard(node); -$('*').keypress(function(e) { - switch(e.which) { - case 13: enterKeyHandler(); break; - case 27: escKeyHandler(); break; - default: //alert(e.which); break; - } -}); + // positions the card in the right place + $('#showcard').css('top', '250px'); + $('#showcard').css('left', '100px'); + + $('.showcard.topic_' + node.id).fadeIn('fast'); + //node.setData('dim', 1, 'current'); + MetamapsModel.showcardInUse = node.id; +} diff --git a/app/assets/javascripts/autocomplete-rails-uncompressed.js b/app/assets/javascripts/autocomplete-rails-uncompressed.js deleted file mode 100644 index 37b61fea..00000000 --- a/app/assets/javascripts/autocomplete-rails-uncompressed.js +++ /dev/null @@ -1,130 +0,0 @@ -/* -* Unobtrusive autocomplete -* -* To use it, you just have to include the HTML attribute autocomplete -* with the autocomplete URL as the value -* -* Example: -* -* -* Optionally, you can use a jQuery selector to specify a field that can -* be updated with the element id whenever you find a matching value -* -* Example: -* -*/ - -(function(jQuery) -{ - var self = null; - jQuery.fn.railsAutocomplete = function() { - return this.live('focus',function() { - if (!this.railsAutoCompleter) { - this.railsAutoCompleter = new jQuery.railsAutocomplete(this); - } - }); - }; - - jQuery.railsAutocomplete = function (e) { - _e = e; - this.init(_e); - }; - - jQuery.railsAutocomplete.fn = jQuery.railsAutocomplete.prototype = { - railsAutocomplete: '0.0.1' - }; - - jQuery.railsAutocomplete.fn.extend = jQuery.railsAutocomplete.extend = jQuery.extend; - jQuery.railsAutocomplete.fn.extend({ - init: function(e) { - e.delimiter = jQuery(e).attr('data-delimiter') || null; - function split( val ) { - return val.split( e.delimiter ); - } - function extractLast( term ) { - return split( term ).pop().replace(/^\s+/,""); - } - - jQuery(e).autocomplete({ - source: function( request, response ) { - jQuery.getJSON( jQuery(e).attr('data-autocomplete'), { - term: extractLast( request.term ) - }, function() { - if(arguments[0].length == 0) { - arguments[0] = [] - //arguments[0][0] = { id: "", label: "no existing match" } - } - jQuery(arguments[0]).each(function(i, el) { - var obj = {}; - obj[el.id] = el; - jQuery(e).data(obj); - }); - response.apply(null, arguments); - }); - }, - change: function( event, ui ) { - if(jQuery(jQuery(this).attr('data-id-element')).val() == "") { - return; - } - jQuery(jQuery(this).attr('data-id-element')).val(ui.item ? ui.item.id : ""); - var update_elements = jQuery.parseJSON(jQuery(this).attr("data-update-elements")); - var data = ui.item ? jQuery(this).data(ui.item.id.toString()) : {}; - if(update_elements && jQuery(update_elements['id']).val() == "") { - return; - } - for (var key in update_elements) { - jQuery(update_elements[key]).val(ui.item ? data[key] : ""); - } - }, - search: function() { - // custom minLength - var term = extractLast( this.value ); - if ( term.length < 2 ) { - return false; - } - }, - focus: function() { - // prevent value inserted on focus - return false; - }, - select: function( event, ui ) { - var terms = split( this.value ); - // remove the current input - terms.pop(); - // add the selected item - terms.push( ui.item.value ); - // add placeholder to get the comma-and-space at the end - if (e.delimiter != null) { - terms.push( "" ); - this.value = terms.join( e.delimiter ); - } else { - this.value = terms.join(""); - if (jQuery(this).attr('data-id-element')) { - jQuery(jQuery(this).attr('data-id-element')).val(ui.item.id); - } - if (jQuery(this).attr('data-update-elements')) { - var data = jQuery(this).data(ui.item.id.toString()); - var update_elements = jQuery.parseJSON(jQuery(this).attr("data-update-elements")); - for (var key in update_elements) { - jQuery(update_elements[key]).val(data[key]); - } - } - } - var remember_string = this.value; - jQuery(this).bind('keyup.clearId', function(){ - if(jQuery(this).val().trim() != remember_string.trim()){ - jQuery(jQuery(this).attr('data-id-element')).val(""); - jQuery(this).unbind('keyup.clearId'); - } - }); - jQuery(e).trigger('railsAutocomplete.select', ui); - return false; - } - }); - } - }); - - jQuery(document).ready(function(){ - jQuery('input[data-autocomplete]').railsAutocomplete(); - }); -})(jQuery); diff --git a/app/assets/javascripts/carousel/cloud-carousel.1.0.5.js b/app/assets/javascripts/carousel/cloud-carousel.1.0.5.js index 2bae6528..7820a5f5 100644 --- a/app/assets/javascripts/carousel/cloud-carousel.1.0.5.js +++ b/app/assets/javascripts/carousel/cloud-carousel.1.0.5.js @@ -7,6 +7,40 @@ // // Please retain this copyright header in all versions of the software ////////////////////////////////////////////////////////////////////////////////// +var matched, browser; + +jQuery.uaMatch = function( ua ) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || + /(webkit)[ \/]([\w.]+)/.exec( ua ) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || + /(msie) ([\w.]+)/.exec( ua ) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; +}; + +matched = jQuery.uaMatch( navigator.userAgent ); +browser = {}; + +if ( matched.browser ) { + browser[ matched.browser ] = true; + browser.version = matched.version; +} + +// Chrome is Webkit, but Webkit is also Safari. +if ( browser.chrome ) { + browser.webkit = true; +} else if ( browser.webkit ) { + browser.safari = true; +} + +jQuery.browser = browser; (function($) { @@ -206,6 +240,8 @@ if ( items[this.frontIndex] === undefined ) { return; } // Images might not have loaded yet. // METAMAPS CODE $('#topic_metacode').val($(items[this.frontIndex].image).attr('title')); + $('img.cloudcarousel').css({"background":"none", "width":"","height":""}); + $(items[this.frontIndex].image).css({"width":"45px","height":"45px"}); // NOT METAMAPS CODE $(options.titleBox).html( $(items[this.frontIndex].image).attr('title')); $(options.altBox).html( $(items[this.frontIndex].image).attr('alt')); @@ -285,11 +321,11 @@ if (item.imageOK) { var img = item.image; - w = img.width = item.orgWidth * scale; + img.style.zIndex = "" + (scale * 100)>>0; // >>0 = Math.foor(). Firefox doesn't like fractional decimals in z-index. + w = img.width = item.orgWidth * scale; h = img.height = item.orgHeight * scale; img.style.left = x + px ; img.style.top = y + px; - img.style.zIndex = "" + (scale * 100)>>0; // >>0 = Math.foor(). Firefox doesn't like fractional decimals in z-index. if (item.reflection !== null) { reflHeight = options.reflHeight * scale; diff --git a/app/assets/javascripts/hogan-2.0.0.js b/app/assets/javascripts/hogan-2.0.0.js new file mode 100644 index 00000000..43a67074 --- /dev/null +++ b/app/assets/javascripts/hogan-2.0.0.js @@ -0,0 +1,576 @@ +/* + * Copyright 2011 Twitter, Inc. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + + +var Hogan = {}; + +(function (Hogan, useArrayBuffer) { + Hogan.Template = function (renderFunc, text, compiler, options) { + this.r = renderFunc || this.r; + this.c = compiler; + this.options = options; + this.text = text || ''; + this.buf = (useArrayBuffer) ? [] : ''; + } + + Hogan.Template.prototype = { + // render: replaced by generated code. + r: function (context, partials, indent) { return ''; }, + + // variable escaping + v: hoganEscape, + + // triple stache + t: coerceToString, + + render: function render(context, partials, indent) { + return this.ri([context], partials || {}, indent); + }, + + // render internal -- a hook for overrides that catches partials too + ri: function (context, partials, indent) { + return this.r(context, partials, indent); + }, + + // tries to find a partial in the curent scope and render it + rp: function(name, context, partials, indent) { + var partial = partials[name]; + + if (!partial) { + return ''; + } + + if (this.c && typeof partial == 'string') { + partial = this.c.compile(partial, this.options); + } + + return partial.ri(context, partials, indent); + }, + + // render a section + rs: function(context, partials, section) { + var tail = context[context.length - 1]; + + if (!isArray(tail)) { + section(context, partials, this); + return; + } + + for (var i = 0; i < tail.length; i++) { + context.push(tail[i]); + section(context, partials, this); + context.pop(); + } + }, + + // maybe start a section + s: function(val, ctx, partials, inverted, start, end, tags) { + var pass; + + if (isArray(val) && val.length === 0) { + return false; + } + + if (typeof val == 'function') { + val = this.ls(val, ctx, partials, inverted, start, end, tags); + } + + pass = (val === '') || !!val; + + if (!inverted && pass && ctx) { + ctx.push((typeof val == 'object') ? val : ctx[ctx.length - 1]); + } + + return pass; + }, + + // find values with dotted names + d: function(key, ctx, partials, returnFound) { + var names = key.split('.'), + val = this.f(names[0], ctx, partials, returnFound), + cx = null; + + if (key === '.' && isArray(ctx[ctx.length - 2])) { + return ctx[ctx.length - 1]; + } + + for (var i = 1; i < names.length; i++) { + if (val && typeof val == 'object' && names[i] in val) { + cx = val; + val = val[names[i]]; + } else { + val = ''; + } + } + + if (returnFound && !val) { + return false; + } + + if (!returnFound && typeof val == 'function') { + ctx.push(cx); + val = this.lv(val, ctx, partials); + ctx.pop(); + } + + return val; + }, + + // find values with normal names + f: function(key, ctx, partials, returnFound) { + var val = false, + v = null, + found = false; + + for (var i = ctx.length - 1; i >= 0; i--) { + v = ctx[i]; + if (v && typeof v == 'object' && key in v) { + val = v[key]; + found = true; + break; + } + } + + if (!found) { + return (returnFound) ? false : ""; + } + + if (!returnFound && typeof val == 'function') { + val = this.lv(val, ctx, partials); + } + + return val; + }, + + // higher order templates + ho: function(val, cx, partials, text, tags) { + var compiler = this.c; + var options = this.options; + options.delimiters = tags; + var text = val.call(cx, text); + text = (text == null) ? String(text) : text.toString(); + this.b(compiler.compile(text, options).render(cx, partials)); + return false; + }, + + // template result buffering + b: (useArrayBuffer) ? function(s) { this.buf.push(s); } : + function(s) { this.buf += s; }, + fl: (useArrayBuffer) ? function() { var r = this.buf.join(''); this.buf = []; return r; } : + function() { var r = this.buf; this.buf = ''; return r; }, + + // lambda replace section + ls: function(val, ctx, partials, inverted, start, end, tags) { + var cx = ctx[ctx.length - 1], + t = null; + + if (!inverted && this.c && val.length > 0) { + return this.ho(val, cx, partials, this.text.substring(start, end), tags); + } + + t = val.call(cx); + + if (typeof t == 'function') { + if (inverted) { + return true; + } else if (this.c) { + return this.ho(t, cx, partials, this.text.substring(start, end), tags); + } + } + + return t; + }, + + // lambda replace variable + lv: function(val, ctx, partials) { + var cx = ctx[ctx.length - 1]; + var result = val.call(cx); + + if (typeof result == 'function') { + result = coerceToString(result.call(cx)); + if (this.c && ~result.indexOf("{\u007B")) { + return this.c.compile(result, this.options).render(cx, partials); + } + } + + return coerceToString(result); + } + + }; + + var rAmp = /&/g, + rLt = //g, + rApos =/\'/g, + rQuot = /\"/g, + hChars =/[&<>\"\']/; + + + function coerceToString(val) { + return String((val === null || val === undefined) ? '' : val); + } + + function hoganEscape(str) { + str = coerceToString(str); + return hChars.test(str) ? + str + .replace(rAmp,'&') + .replace(rLt,'<') + .replace(rGt,'>') + .replace(rApos,''') + .replace(rQuot, '"') : + str; + } + + var isArray = Array.isArray || function(a) { + return Object.prototype.toString.call(a) === '[object Array]'; + }; + +})(typeof exports !== 'undefined' ? exports : Hogan); + + + + +(function (Hogan) { + // Setup regex assignments + // remove whitespace according to Mustache spec + var rIsWhitespace = /\S/, + rQuot = /\"/g, + rNewline = /\n/g, + rCr = /\r/g, + rSlash = /\\/g, + tagTypes = { + '#': 1, '^': 2, '/': 3, '!': 4, '>': 5, + '<': 6, '=': 7, '_v': 8, '{': 9, '&': 10 + }; + + Hogan.scan = function scan(text, delimiters) { + var len = text.length, + IN_TEXT = 0, + IN_TAG_TYPE = 1, + IN_TAG = 2, + state = IN_TEXT, + tagType = null, + tag = null, + buf = '', + tokens = [], + seenTag = false, + i = 0, + lineStart = 0, + otag = '{{', + ctag = '}}'; + + function addBuf() { + if (buf.length > 0) { + tokens.push(new String(buf)); + buf = ''; + } + } + + function lineIsWhitespace() { + var isAllWhitespace = true; + for (var j = lineStart; j < tokens.length; j++) { + isAllWhitespace = + (tokens[j].tag && tagTypes[tokens[j].tag] < tagTypes['_v']) || + (!tokens[j].tag && tokens[j].match(rIsWhitespace) === null); + if (!isAllWhitespace) { + return false; + } + } + + return isAllWhitespace; + } + + function filterLine(haveSeenTag, noNewLine) { + addBuf(); + + if (haveSeenTag && lineIsWhitespace()) { + for (var j = lineStart, next; j < tokens.length; j++) { + if (!tokens[j].tag) { + if ((next = tokens[j+1]) && next.tag == '>') { + // set indent to token value + next.indent = tokens[j].toString() + } + tokens.splice(j, 1); + } + } + } else if (!noNewLine) { + tokens.push({tag:'\n'}); + } + + seenTag = false; + lineStart = tokens.length; + } + + function changeDelimiters(text, index) { + var close = '=' + ctag, + closeIndex = text.indexOf(close, index), + delimiters = trim( + text.substring(text.indexOf('=', index) + 1, closeIndex) + ).split(' '); + + otag = delimiters[0]; + ctag = delimiters[1]; + + return closeIndex + close.length - 1; + } + + if (delimiters) { + delimiters = delimiters.split(' '); + otag = delimiters[0]; + ctag = delimiters[1]; + } + + for (i = 0; i < len; i++) { + if (state == IN_TEXT) { + if (tagChange(otag, text, i)) { + --i; + addBuf(); + state = IN_TAG_TYPE; + } else { + if (text.charAt(i) == '\n') { + filterLine(seenTag); + } else { + buf += text.charAt(i); + } + } + } else if (state == IN_TAG_TYPE) { + i += otag.length - 1; + tag = tagTypes[text.charAt(i + 1)]; + tagType = tag ? text.charAt(i + 1) : '_v'; + if (tagType == '=') { + i = changeDelimiters(text, i); + state = IN_TEXT; + } else { + if (tag) { + i++; + } + state = IN_TAG; + } + seenTag = i; + } else { + if (tagChange(ctag, text, i)) { + tokens.push({tag: tagType, n: trim(buf), otag: otag, ctag: ctag, + i: (tagType == '/') ? seenTag - ctag.length : i + otag.length}); + buf = ''; + i += ctag.length - 1; + state = IN_TEXT; + if (tagType == '{') { + if (ctag == '}}') { + i++; + } else { + cleanTripleStache(tokens[tokens.length - 1]); + } + } + } else { + buf += text.charAt(i); + } + } + } + + filterLine(seenTag, true); + + return tokens; + } + + function cleanTripleStache(token) { + if (token.n.substr(token.n.length - 1) === '}') { + token.n = token.n.substring(0, token.n.length - 1); + } + } + + function trim(s) { + if (s.trim) { + return s.trim(); + } + + return s.replace(/^\s*|\s*$/g, ''); + } + + function tagChange(tag, text, index) { + if (text.charAt(index) != tag.charAt(0)) { + return false; + } + + for (var i = 1, l = tag.length; i < l; i++) { + if (text.charAt(index + i) != tag.charAt(i)) { + return false; + } + } + + return true; + } + + function buildTree(tokens, kind, stack, customTags) { + var instructions = [], + opener = null, + token = null; + + while (tokens.length > 0) { + token = tokens.shift(); + if (token.tag == '#' || token.tag == '^' || isOpener(token, customTags)) { + stack.push(token); + token.nodes = buildTree(tokens, token.tag, stack, customTags); + instructions.push(token); + } else if (token.tag == '/') { + if (stack.length === 0) { + throw new Error('Closing tag without opener: /' + token.n); + } + opener = stack.pop(); + if (token.n != opener.n && !isCloser(token.n, opener.n, customTags)) { + throw new Error('Nesting error: ' + opener.n + ' vs. ' + token.n); + } + opener.end = token.i; + return instructions; + } else { + instructions.push(token); + } + } + + if (stack.length > 0) { + throw new Error('missing closing tag: ' + stack.pop().n); + } + + return instructions; + } + + function isOpener(token, tags) { + for (var i = 0, l = tags.length; i < l; i++) { + if (tags[i].o == token.n) { + token.tag = '#'; + return true; + } + } + } + + function isCloser(close, open, tags) { + for (var i = 0, l = tags.length; i < l; i++) { + if (tags[i].c == close && tags[i].o == open) { + return true; + } + } + } + + Hogan.generate = function (tree, text, options) { + var code = 'var _=this;_.b(i=i||"");' + walk(tree) + 'return _.fl();'; + if (options.asString) { + return 'function(c,p,i){' + code + ';}'; + } + + return new Hogan.Template(new Function('c', 'p', 'i', code), text, Hogan, options); + } + + function esc(s) { + return s.replace(rSlash, '\\\\') + .replace(rQuot, '\\\"') + .replace(rNewline, '\\n') + .replace(rCr, '\\r'); + } + + function chooseMethod(s) { + return (~s.indexOf('.')) ? 'd' : 'f'; + } + + function walk(tree) { + var code = ''; + for (var i = 0, l = tree.length; i < l; i++) { + var tag = tree[i].tag; + if (tag == '#') { + code += section(tree[i].nodes, tree[i].n, chooseMethod(tree[i].n), + tree[i].i, tree[i].end, tree[i].otag + " " + tree[i].ctag); + } else if (tag == '^') { + code += invertedSection(tree[i].nodes, tree[i].n, + chooseMethod(tree[i].n)); + } else if (tag == '<' || tag == '>') { + code += partial(tree[i]); + } else if (tag == '{' || tag == '&') { + code += tripleStache(tree[i].n, chooseMethod(tree[i].n)); + } else if (tag == '\n') { + code += text('"\\n"' + (tree.length-1 == i ? '' : ' + i')); + } else if (tag == '_v') { + code += variable(tree[i].n, chooseMethod(tree[i].n)); + } else if (tag === undefined) { + code += text('"' + esc(tree[i]) + '"'); + } + } + return code; + } + + function section(nodes, id, method, start, end, tags) { + return 'if(_.s(_.' + method + '("' + esc(id) + '",c,p,1),' + + 'c,p,0,' + start + ',' + end + ',"' + tags + '")){' + + '_.rs(c,p,' + + 'function(c,p,_){' + + walk(nodes) + + '});c.pop();}'; + } + + function invertedSection(nodes, id, method) { + return 'if(!_.s(_.' + method + '("' + esc(id) + '",c,p,1),c,p,1,0,0,"")){' + + walk(nodes) + + '};'; + } + + function partial(tok) { + return '_.b(_.rp("' + esc(tok.n) + '",c,p,"' + (tok.indent || '') + '"));'; + } + + function tripleStache(id, method) { + return '_.b(_.t(_.' + method + '("' + esc(id) + '",c,p,0)));'; + } + + function variable(id, method) { + return '_.b(_.v(_.' + method + '("' + esc(id) + '",c,p,0)));'; + } + + function text(id) { + return '_.b(' + id + ');'; + } + + Hogan.parse = function(tokens, text, options) { + options = options || {}; + return buildTree(tokens, '', [], options.sectionTags || []); + }, + + Hogan.cache = {}; + + Hogan.compile = function(text, options) { + // options + // + // asString: false (default) + // + // sectionTags: [{o: '_foo', c: 'foo'}] + // An array of object with o and c fields that indicate names for custom + // section tags. The example above allows parsing of {{_foo}}{{/foo}}. + // + // delimiters: A string that overrides the default delimiters. + // Example: "<% %>" + // + options = options || {}; + + var key = text + '||' + !!options.asString; + + var t = this.cache[key]; + + if (t) { + return t; + } + + t = this.generate(this.parse(this.scan(text, options.delimiters), text, options), text, options); + return this.cache[key] = t; + }; +})(typeof exports !== 'undefined' ? exports : Hogan); + diff --git a/app/assets/javascripts/realtime.js.coffee b/app/assets/javascripts/realtime.js.coffee index 53238fab..9efcd6b1 100644 --- a/app/assets/javascripts/realtime.js.coffee +++ b/app/assets/javascripts/realtime.js.coffee @@ -1,6 +1,6 @@ window.app.realtime = connect : () -> - window.app.socket = io.connect('http://metamaps.cc:5001'); - window.app.socket.on 'connect', () -> - subscribeToRooms() - console.log('socket connected') \ No newline at end of file + #window.app.socket = io.connect('http://localhost:5001'); + #window.app.socket.on 'connect', () -> + #subscribeToRooms() + #console.log('socket connected') \ No newline at end of file diff --git a/app/assets/javascripts/typeahead.min.js b/app/assets/javascripts/typeahead.min.js new file mode 100644 index 00000000..c085f8a8 --- /dev/null +++ b/app/assets/javascripts/typeahead.min.js @@ -0,0 +1,7 @@ +/*! + * typeahead.js 0.9.3 + * https://github.com/twitter/typeahead + * Copyright 2013 Twitter, Inc. and other contributors; Licensed MIT + */ + +!function(a){var b="0.9.3",c={isMsie:function(){var a=/(msie) ([\w.]+)/i.exec(navigator.userAgent);return a?parseInt(a[2],10):!1},isBlankString:function(a){return!a||/^\s*$/.test(a)},escapeRegExChars:function(a){return a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isString:function(a){return"string"==typeof a},isNumber:function(a){return"number"==typeof a},isArray:a.isArray,isFunction:a.isFunction,isObject:a.isPlainObject,isUndefined:function(a){return"undefined"==typeof a},bind:a.proxy,bindAll:function(b){var c;for(var d in b)a.isFunction(c=b[d])&&(b[d]=a.proxy(c,b))},indexOf:function(a,b){for(var c=0;c=j?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},tokenizeQuery:function(b){return a.trim(b).toLowerCase().split(/[\s]+/)},tokenizeText:function(b){return a.trim(b).toLowerCase().split(/[\s\-_]+/)},getProtocol:function(){return location.protocol},noop:function(){}},d=function(){var a=/\s+/;return{on:function(b,c){var d;if(!c)return this;for(this._callbacks=this._callbacks||{},b=b.split(a);d=b.shift();)this._callbacks[d]=this._callbacks[d]||[],this._callbacks[d].push(c);return this},trigger:function(b,c){var d,e;if(!this._callbacks)return this;for(b=b.split(a);d=b.shift();)if(e=this._callbacks[d])for(var f=0;fa;a++)(b=f.key(a)).match(this.keyMatcher)&&c.push(b.replace(this.keyMatcher,""));for(a=c.length;a--;)this.remove(c[a]);return this},isExpired:function(a){var d=e(f.getItem(this._ttlKey(a)));return c.isNumber(d)&&b()>d?!0:!1}}:{get:c.noop,set:c.noop,remove:c.noop,clear:c.noop,isExpired:c.noop},c.mixin(a.prototype,g),a}(),g=function(){function a(a){c.bindAll(this),a=a||{},this.sizeLimit=a.sizeLimit||10,this.cache={},this.cachedKeysByAge=[]}return c.mixin(a.prototype,{get:function(a){return this.cache[a]},set:function(a,b){var c;this.cachedKeysByAge.length===this.sizeLimit&&(c=this.cachedKeysByAge.shift(),delete this.cache[c]),this.cache[a]=b,this.cachedKeysByAge.push(a)}}),a}(),h=function(){function b(a){c.bindAll(this),a=c.isString(a)?{url:a}:a,i=i||new g,h=c.isNumber(a.maxParallelRequests)?a.maxParallelRequests:h||6,this.url=a.url,this.wildcard=a.wildcard||"%QUERY",this.filter=a.filter,this.replace=a.replace,this.ajaxSettings={type:"get",cache:a.cache,timeout:a.timeout,dataType:a.dataType||"json",beforeSend:a.beforeSend},this._get=(/^throttle$/i.test(a.rateLimitFn)?c.throttle:c.debounce)(this._get,a.rateLimitWait||300)}function d(){j++}function e(){j--}function f(){return h>j}var h,i,j=0,k={};return c.mixin(b.prototype,{_get:function(a,b){function c(c){var e=d.filter?d.filter(c):c;b&&b(e),i.set(a,c)}var d=this;f()?this._sendRequest(a).done(c):this.onDeckRequestArgs=[].slice.call(arguments,0)},_sendRequest:function(b){function c(){e(),k[b]=null,f.onDeckRequestArgs&&(f._get.apply(f,f.onDeckRequestArgs),f.onDeckRequestArgs=null)}var f=this,g=k[b];return g||(d(),g=k[b]=a.ajax(b,this.ajaxSettings).always(c)),g},get:function(a,b){var d,e,f=this,g=encodeURIComponent(a||"");return b=b||c.noop,d=this.replace?this.replace(this.url,g):this.url.replace(this.wildcard,g),(e=i.get(d))?c.defer(function(){b(f.filter?f.filter(e):e)}):this._get(d,b),!!e}}),b}(),i=function(){function d(b){c.bindAll(this),c.isString(b.template)&&!b.engine&&a.error("no template engine specified"),b.local||b.prefetch||b.remote||a.error("one of local, prefetch, or remote is required"),this.name=b.name||c.getUniqueId(),this.limit=b.limit||5,this.minLength=b.minLength||1,this.header=b.header,this.footer=b.footer,this.valueKey=b.valueKey||"value",this.template=e(b.template,b.engine,this.valueKey),this.local=b.local,this.prefetch=b.prefetch,this.remote=b.remote,this.itemHash={},this.adjacencyList={},this.storage=b.name?new f(b.name):null}function e(a,b,d){var e,f;return c.isFunction(a)?e=a:c.isString(a)?(f=b.compile(a),e=c.bind(f.render,f)):e=function(a){return"

"+a[d]+"

"},e}var g={thumbprint:"thumbprint",protocol:"protocol",itemHash:"itemHash",adjacencyList:"adjacencyList"};return c.mixin(d.prototype,{_processLocalData:function(a){this._mergeProcessedData(this._processData(a))},_loadPrefetchData:function(d){function e(a){var b=d.filter?d.filter(a):a,e=m._processData(b),f=e.itemHash,h=e.adjacencyList;m.storage&&(m.storage.set(g.itemHash,f,d.ttl),m.storage.set(g.adjacencyList,h,d.ttl),m.storage.set(g.thumbprint,n,d.ttl),m.storage.set(g.protocol,c.getProtocol(),d.ttl)),m._mergeProcessedData(e)}var f,h,i,j,k,l,m=this,n=b+(d.thumbprint||"");return this.storage&&(f=this.storage.get(g.thumbprint),h=this.storage.get(g.protocol),i=this.storage.get(g.itemHash),j=this.storage.get(g.adjacencyList)),k=f!==n||h!==c.getProtocol(),d=c.isString(d)?{url:d}:d,d.ttl=c.isNumber(d.ttl)?d.ttl:864e5,i&&j&&!k?(this._mergeProcessedData({itemHash:i,adjacencyList:j}),l=a.Deferred().resolve()):l=a.getJSON(d.url).done(e),l},_transformDatum:function(a){var b=c.isString(a)?a:a[this.valueKey],d=a.tokens||c.tokenizeText(b),e={value:b,tokens:d};return c.isString(a)?(e.datum={},e.datum[this.valueKey]=a):e.datum=a,e.tokens=c.filter(e.tokens,function(a){return!c.isBlankString(a)}),e.tokens=c.map(e.tokens,function(a){return a.toLowerCase()}),e},_processData:function(a){var b=this,d={},e={};return c.each(a,function(a,f){var g=b._transformDatum(f),h=c.getUniqueId(g.value);d[h]=g,c.each(g.tokens,function(a,b){var d=b.charAt(0),f=e[d]||(e[d]=[h]);!~c.indexOf(f,h)&&f.push(h)})}),{itemHash:d,adjacencyList:e}},_mergeProcessedData:function(a){var b=this;c.mixin(this.itemHash,a.itemHash),c.each(a.adjacencyList,function(a,c){var d=b.adjacencyList[a];b.adjacencyList[a]=d?d.concat(c):c})},_getLocalSuggestions:function(a){var b,d=this,e=[],f=[],g=[];return c.each(a,function(a,b){var d=b.charAt(0);!~c.indexOf(e,d)&&e.push(d)}),c.each(e,function(a,c){var e=d.adjacencyList[c];return e?(f.push(e),(!b||e.length").css({position:"absolute",left:"-9999px",visibility:"hidden",whiteSpace:"nowrap",fontFamily:b.css("font-family"),fontSize:b.css("font-size"),fontStyle:b.css("font-style"),fontVariant:b.css("font-variant"),fontWeight:b.css("font-weight"),wordSpacing:b.css("word-spacing"),letterSpacing:b.css("letter-spacing"),textIndent:b.css("text-indent"),textRendering:b.css("text-rendering"),textTransform:b.css("text-transform")}).insertAfter(b)}function f(a,b){return a=(a||"").replace(/^\s*/g,"").replace(/\s{2,}/g," "),b=(b||"").replace(/^\s*/g,"").replace(/\s{2,}/g," "),a===b}return c.mixin(b.prototype,d,{_handleFocus:function(){this.trigger("focused")},_handleBlur:function(){this.trigger("blured")},_handleSpecialKeyEvent:function(a){var b=this.specialKeyCodeMap[a.which||a.keyCode];b&&this.trigger(b+"Keyed",a)},_compareQueryToInputValue:function(){var a=this.getInputValue(),b=f(this.query,a),c=b?this.query.length!==a.length:!1;c?this.trigger("whitespaceChanged",{value:this.query}):b||this.trigger("queryChanged",{value:this.query=a})},destroy:function(){this.$hint.off(".tt"),this.$input.off(".tt"),this.$hint=this.$input=this.$overflowHelper=null},focus:function(){this.$input.focus()},blur:function(){this.$input.blur()},getQuery:function(){return this.query},setQuery:function(a){this.query=a},getInputValue:function(){return this.$input.val()},setInputValue:function(a,b){this.$input.val(a),!b&&this._compareQueryToInputValue()},getHintValue:function(){return this.$hint.val()},setHintValue:function(a){this.$hint.val(a)},getLanguageDirection:function(){return(this.$input.css("direction")||"ltr").toLowerCase()},isOverflow:function(){return this.$overflowHelper.text(this.getInputValue()),this.$overflowHelper.width()>this.$input.width()},isCursorAtEnd:function(){var a,b=this.$input.val().length,d=this.$input[0].selectionStart;return c.isNumber(d)?d===b:document.selection?(a=document.selection.createRange(),a.moveStart("character",-b),b===a.text.length):!0}}),b}(),k=function(){function b(b){c.bindAll(this),this.isOpen=!1,this.isEmpty=!0,this.isMouseOverDropdown=!1,this.$menu=a(b.menu).on("mouseenter.tt",this._handleMouseenter).on("mouseleave.tt",this._handleMouseleave).on("click.tt",".tt-suggestion",this._handleSelection).on("mouseover.tt",".tt-suggestion",this._handleMouseover)}function e(a){return a.data("suggestion")}var f={suggestionsList:''},g={suggestionsList:{display:"block"},suggestion:{whiteSpace:"nowrap",cursor:"pointer"},suggestionChild:{whiteSpace:"normal"}};return c.mixin(b.prototype,d,{_handleMouseenter:function(){this.isMouseOverDropdown=!0},_handleMouseleave:function(){this.isMouseOverDropdown=!1},_handleMouseover:function(b){var c=a(b.currentTarget);this._getSuggestions().removeClass("tt-is-under-cursor"),c.addClass("tt-is-under-cursor")},_handleSelection:function(b){var c=a(b.currentTarget);this.trigger("suggestionSelected",e(c))},_show:function(){this.$menu.css("display","block")},_hide:function(){this.$menu.hide()},_moveCursor:function(a){var b,c,d,f;if(this.isVisible()){if(b=this._getSuggestions(),c=b.filter(".tt-is-under-cursor"),c.removeClass("tt-is-under-cursor"),d=b.index(c)+a,d=(d+1)%(b.length+1)-1,-1===d)return this.trigger("cursorRemoved"),void 0;-1>d&&(d=b.length-1),f=b.eq(d).addClass("tt-is-under-cursor"),this._ensureVisibility(f),this.trigger("cursorMoved",e(f))}},_getSuggestions:function(){return this.$menu.find(".tt-suggestions > .tt-suggestion")},_ensureVisibility:function(a){var b=this.$menu.height()+parseInt(this.$menu.css("paddingTop"),10)+parseInt(this.$menu.css("paddingBottom"),10),c=this.$menu.scrollTop(),d=a.position().top,e=d+a.outerHeight(!0);0>d?this.$menu.scrollTop(c+d):e>b&&this.$menu.scrollTop(c+(e-b))},destroy:function(){this.$menu.off(".tt"),this.$menu=null},isVisible:function(){return this.isOpen&&!this.isEmpty},closeUnlessMouseIsOverDropdown:function(){this.isMouseOverDropdown||this.close()},close:function(){this.isOpen&&(this.isOpen=!1,this.isMouseOverDropdown=!1,this._hide(),this.$menu.find(".tt-suggestions > .tt-suggestion").removeClass("tt-is-under-cursor"),this.trigger("closed"))},open:function(){this.isOpen||(this.isOpen=!0,!this.isEmpty&&this._show(),this.trigger("opened"))},setLanguageDirection:function(a){var b={left:"0",right:"auto"},c={left:"auto",right:" 0"};"ltr"===a?this.$menu.css(b):this.$menu.css(c)},moveCursorUp:function(){this._moveCursor(-1)},moveCursorDown:function(){this._moveCursor(1)},getSuggestionUnderCursor:function(){var a=this._getSuggestions().filter(".tt-is-under-cursor").first();return a.length>0?e(a):null},getFirstSuggestion:function(){var a=this._getSuggestions().first();return a.length>0?e(a):null},renderSuggestions:function(b,d){var e,h,i,j,k,l="tt-dataset-"+b.name,m='
%body
',n=this.$menu.find("."+l);0===n.length&&(h=a(f.suggestionsList).css(g.suggestionsList),n=a("
").addClass(l).append(b.header).append(h).append(b.footer).appendTo(this.$menu)),d.length>0?(this.isEmpty=!1,this.isOpen&&this._show(),i=document.createElement("div"),j=document.createDocumentFragment(),c.each(d,function(c,d){d.dataset=b.name,e=b.template(d.datum),i.innerHTML=m.replace("%body",e),k=a(i.firstChild).css(g.suggestion).data("suggestion",d),k.children().each(function(){a(this).css(g.suggestionChild)}),j.appendChild(k[0])}),n.show().find(".tt-suggestions").html(j)):this.clearSuggestions(b.name),this.trigger("suggestionsRendered")},clearSuggestions:function(a){var b=a?this.$menu.find(".tt-dataset-"+a):this.$menu.find('[class^="tt-dataset-"]'),c=b.find(".tt-suggestions");b.hide(),c.empty(),0===this._getSuggestions().length&&(this.isEmpty=!0,this._hide())}}),b}(),l=function(){function b(a){var b,d,f;c.bindAll(this),this.$node=e(a.input),this.datasets=a.datasets,this.dir=null,this.eventBus=a.eventBus,b=this.$node.find(".tt-dropdown-menu"),d=this.$node.find(".tt-query"),f=this.$node.find(".tt-hint"),this.dropdownView=new k({menu:b}).on("suggestionSelected",this._handleSelection).on("cursorMoved",this._clearHint).on("cursorMoved",this._setInputValueToSuggestionUnderCursor).on("cursorRemoved",this._setInputValueToQuery).on("cursorRemoved",this._updateHint).on("suggestionsRendered",this._updateHint).on("opened",this._updateHint).on("closed",this._clearHint).on("opened closed",this._propagateEvent),this.inputView=new j({input:d,hint:f}).on("focused",this._openDropdown).on("blured",this._closeDropdown).on("blured",this._setInputValueToQuery).on("enterKeyed tabKeyed",this._handleSelection).on("queryChanged",this._clearHint).on("queryChanged",this._clearSuggestions).on("queryChanged",this._getSuggestions).on("whitespaceChanged",this._updateHint).on("queryChanged whitespaceChanged",this._openDropdown).on("queryChanged whitespaceChanged",this._setLanguageDirection).on("escKeyed",this._closeDropdown).on("escKeyed",this._setInputValueToQuery).on("tabKeyed upKeyed downKeyed",this._managePreventDefault).on("upKeyed downKeyed",this._moveDropdownCursor).on("upKeyed downKeyed",this._openDropdown).on("tabKeyed leftKeyed rightKeyed",this._autocomplete)}function e(b){var c=a(g.wrapper),d=a(g.dropdown),e=a(b),f=a(g.hint);c=c.css(h.wrapper),d=d.css(h.dropdown),f.css(h.hint).css({backgroundAttachment:e.css("background-attachment"),backgroundClip:e.css("background-clip"),backgroundColor:e.css("background-color"),backgroundImage:e.css("background-image"),backgroundOrigin:e.css("background-origin"),backgroundPosition:e.css("background-position"),backgroundRepeat:e.css("background-repeat"),backgroundSize:e.css("background-size")}),e.data("ttAttrs",{dir:e.attr("dir"),autocomplete:e.attr("autocomplete"),spellcheck:e.attr("spellcheck"),style:e.attr("style")}),e.addClass("tt-query").attr({autocomplete:"off",spellcheck:!1}).css(h.query);try{!e.attr("dir")&&e.attr("dir","auto")}catch(i){}return e.wrap(c).parent().prepend(f).append(d)}function f(a){var b=a.find(".tt-query");c.each(b.data("ttAttrs"),function(a,d){c.isUndefined(d)?b.removeAttr(a):b.attr(a,d)}),b.detach().removeData("ttAttrs").removeClass("tt-query").insertAfter(a),a.remove()}var g={wrapper:'',hint:'',dropdown:''},h={wrapper:{position:"relative",display:"inline-block"},hint:{position:"absolute",top:"0",left:"0",borderColor:"transparent",boxShadow:"none"},query:{position:"relative",verticalAlign:"top",backgroundColor:"transparent"},dropdown:{position:"absolute",top:"100%",left:"0",zIndex:"100",display:"none"}};return c.isMsie()&&c.mixin(h.query,{backgroundImage:"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)"}),c.isMsie()&&c.isMsie()<=7&&(c.mixin(h.wrapper,{display:"inline",zoom:"1"}),c.mixin(h.query,{marginTop:"-1px"})),c.mixin(b.prototype,d,{_managePreventDefault:function(a){var b,c,d=a.data,e=!1;switch(a.type){case"tabKeyed":b=this.inputView.getHintValue(),c=this.inputView.getInputValue(),e=b&&b!==c;break;case"upKeyed":case"downKeyed":e=!d.shiftKey&&!d.ctrlKey&&!d.metaKey}e&&d.preventDefault()},_setLanguageDirection:function(){var a=this.inputView.getLanguageDirection();a!==this.dir&&(this.dir=a,this.$node.css("direction",a),this.dropdownView.setLanguageDirection(a))},_updateHint:function(){var a,b,d,e,f,g=this.dropdownView.getFirstSuggestion(),h=g?g.value:null,i=this.dropdownView.isVisible(),j=this.inputView.isOverflow();h&&i&&!j&&(a=this.inputView.getInputValue(),b=a.replace(/\s{2,}/g," ").replace(/^\s+/g,""),d=c.escapeRegExChars(b),e=new RegExp("^(?:"+d+")(.*$)","i"),f=e.exec(h),this.inputView.setHintValue(a+(f?f[1]:"")))},_clearHint:function(){this.inputView.setHintValue("")},_clearSuggestions:function(){this.dropdownView.clearSuggestions()},_setInputValueToQuery:function(){this.inputView.setInputValue(this.inputView.getQuery())},_setInputValueToSuggestionUnderCursor:function(a){var b=a.data;this.inputView.setInputValue(b.value,!0)},_openDropdown:function(){this.dropdownView.open()},_closeDropdown:function(a){this.dropdownView["blured"===a.type?"closeUnlessMouseIsOverDropdown":"close"]()},_moveDropdownCursor:function(a){var b=a.data;b.shiftKey||b.ctrlKey||b.metaKey||this.dropdownView["upKeyed"===a.type?"moveCursorUp":"moveCursorDown"]()},_handleSelection:function(a){var b="suggestionSelected"===a.type,d=b?a.data:this.dropdownView.getSuggestionUnderCursor();d&&(this.inputView.setInputValue(d.value),b?this.inputView.focus():a.data.preventDefault(),b&&c.isMsie()?c.defer(this.dropdownView.close):this.dropdownView.close(),this.eventBus.trigger("selected",d.datum,d.dataset))},_getSuggestions:function(){var a=this,b=this.inputView.getQuery();c.isBlankString(b)||c.each(this.datasets,function(c,d){d.getSuggestions(b,function(c){b===a.inputView.getQuery()&&a.dropdownView.renderSuggestions(d,c)})})},_autocomplete:function(a){var b,c,d,e,f;("rightKeyed"!==a.type&&"leftKeyed"!==a.type||(b=this.inputView.isCursorAtEnd(),c="ltr"===this.inputView.getLanguageDirection()?"leftKeyed"===a.type:"rightKeyed"===a.type,b&&!c))&&(d=this.inputView.getQuery(),e=this.inputView.getHintValue(),""!==e&&d!==e&&(f=this.dropdownView.getFirstSuggestion(),this.inputView.setInputValue(f.value),this.eventBus.trigger("autocompleted",f.datum,f.dataset)))},_propagateEvent:function(a){this.eventBus.trigger(a.type)},destroy:function(){this.inputView.destroy(),this.dropdownView.destroy(),f(this.$node),this.$node=null},setQuery:function(a){this.inputView.setQuery(a),this.inputView.setInputValue(a),this._clearHint(),this._clearSuggestions(),this._getSuggestions()}}),b}();!function(){var b,d={},f="ttView";b={initialize:function(b){function g(){var b,d=a(this),g=new e({el:d});b=c.map(h,function(a){return a.initialize()}),d.data(f,new l({input:d,eventBus:g=new e({el:d}),datasets:h})),a.when.apply(a,b).always(function(){c.defer(function(){g.trigger("initialized")})})}var h;return b=c.isArray(b)?b:[b],0===b.length&&a.error("no datasets provided"),h=c.map(b,function(a){var b=d[a.name]?d[a.name]:new i(a);return a.name&&(d[a.name]=b),b}),this.each(g)},destroy:function(){function b(){var b=a(this),c=b.data(f);c&&(c.destroy(),b.removeData(f))}return this.each(b)},setQuery:function(b){function c(){var c=a(this).data(f);c&&c.setQuery(b)}return this.each(c)}},jQuery.fn.typeahead=function(a){return b[a]?b[a].apply(this,[].slice.call(arguments,1)):b.initialize.apply(this,arguments)}}()}(window.jQuery); \ No newline at end of file diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css index b23aa5ff..7aa738c2 100644 --- a/app/assets/stylesheets/application.css +++ b/app/assets/stylesheets/application.css @@ -59,7 +59,7 @@ html { body { background:#031924 url(background2-for-repeating.jpg) repeat 0 0; - font-family: 'katarine-web', sans-serif; + font-family: 'LatoLight', helvetica, sans-serif; background-attachment:fixed; color:#FFF; } @@ -88,6 +88,43 @@ a { text-decoration:none; } +button.button, a.button, input[type="submit"] { +border: none; +-webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2); +box-shadow: 0 1px 2px rgba(0,0,0,.2); +border: none; +border-bottom-left-radius: 0; +border-top-left-radius: 0; +height: 30px; +outline: none; +padding: 0 0; +width: 60px; +-webkit-box-shadow: none; +box-shadow: none; +background: #69a3a4; +background: -webkit-linear-gradient(top,#69a3a4,#69a3aF); +background: linear-gradient(top,#4387fd,#4683ea); +filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#4387fd,endColorstr=#4683ea,GradientType=1); +vertical-align: top; +color: #fff!important; +margin: 0px; +cursor: default!important; +display: inline-block; +font-weight: bold; +line-height: 29px; +min-width: 54px; +text-align: center; +text-decoration: none!important; +-webkit-border-radius: 2px; +border-radius: 2px; +-webkit-user-select: none; +} + +button.button:hover, a.button:hover, input[type="submit"]:hover { +-webkit-box-shadow: 0 1px 0 rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.2); +box-shadow: 0 1px 0 rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.2); +} + /* * Utility */ @@ -109,6 +146,10 @@ a { * Layout stuffs */ +#barometer_tab { + display:none; +} + #error_explanation { background: #612127; padding: 30px; @@ -123,7 +164,6 @@ a { } .profile { - overflow-y:scroll; height:100%; margin-bottom:50px; } @@ -210,12 +250,28 @@ a { position: absolute; } -.anypage #topic_name { - width:200px; - position:absolute; +#new_topic .twitter-typeahead { + position:absolute !important; top:40px; left:50px; - z-index:9999; + z-index:9999; + width:202px; + height: 37px; + font-family: 'katarine-web'; +} + +.anypage #topic_name, .anypage .tt-hint { + width:190px; +background: rgba(0,0,0,0.8); +height: 25px; +margin: 0; +padding: 5px 5px; +border: 1px solid black; +outline: none; +font-size: 25px; +line-height: 35px; +color: rgba(255,255,255,0.7); +font-family: 'katarine-web'; } #metacodeImg { @@ -235,13 +291,21 @@ label, select, input, textarea { } label { - margin-top:5px; + margin-top:10px; + margin-bottom:4px; } input[type="submit"] { margin-top:5px; } +#user_remember_me { + margin-top:11px; +} +#user_remember_me, label[for="user_remember_me"] { + float:left; +} + .contentarea p, .contentarea ul, .contentarea ol, @@ -340,118 +404,410 @@ box-shadow: 6px 6px 8px rgba(0,0,0,0.4); margin:0 0; } + +/* bottom right corner stuffs */ + +.wrapper div.index { + position: fixed; + bottom: 9px; + right: 0px; + z-index: 9999; + width: auto; + background: rgba(0,0,0,0.7); + padding: 1px 10px 0px 10px; + font-family: "vinyl",sans-serif; + font-style:italic; + height: 35px; + font-size: 30px; + line-height: 38px; + border:1px solid #000; + border-right:none; + border-bottom-left-radius:5px; + border-top-left-radius:5px; +} +.wrapper div.index .openCheatsheet { + position:absolute; + top:0; + left:-45px; + background: rgba(0,0,0,0.7) url('MMCCicon_help.png') no-repeat center center; + background-size: 32px 32px; + border:1px solid #000; + border-radius:5px; + height:36px; + width:36px; + cursor:pointer; +} +.wrapper div.index span { + float:left; +} +.wrapper div.index span.mapName { + text-transform:uppercase; + margin-right:9px; +} +.wrapper div.index span.mapInfo { + width: 24px; + height: 24px; + line-height: 24px; + text-align: center; + margin-top: 5px; + font-size: 27px; + background: url('MMCCicon_info.png') no-repeat center center; + background-size:24px 24px; + cursor:pointer; +} + .wrapper h1.index { position: fixed; bottom: 9px; right: 0; z-index: 9999; width: auto; - background: url('black_bg.png'); + background: rgba(0,0,0,0.7); padding: 1px 10px 0px 20px; - border-bottom-left-radius: 5px; - border-top-left-radius: 5px; text-transform:uppercase; font-style:italic; height: 35px; font-size: 30px; line-height: 38px; border:1px solid #000; + border-right:none; + border-bottom-left-radius:5px; + border-top-left-radius:5px; } -.nodemargin { - padding-top:120px; +/* account */ + +.sidebarAccount { +position:absolute; +top:5px; +right:5px; +z-index:200; +width: 35px; +height:35px; } -.focus { - position:fixed; - top:0; - left:0; - width:90%; - z-index:2; - display: block; - min-width:533px; - margin: 50px 50px 25px 50px; - background: url('bg.png'); border-radius: 20px; - color:#000; - border:1px solid #000; +.sidebarAccountIcon { +position:absolute; +width: 35px; +height: 35px; +background: #69a3a4 url('MMCCicon_mapper.png') no-repeat center center; +background-size: 28px 28px; +cursor:pointer; +} +.sidebarAccountBox { + position:absolute; + display:none; + height:auto; + background: rgba(0,0,0,0.7); + top: 36px; + right:0; + padding: 10px; + border: 1px solid black; + min-width:120px; + font-family: 'LatoLight', helvetica, sans-serif; +} +.sidebarAccountBox.loggedin { + width:auto; +} +.sidebarAccountBox.loggedout { + width:200px; } -.focus h1 { - margin-top:0; +.sidebarAccountBox h3 { + font-family: 'vinyl', helvetica, sans-serif; + text-transform:uppercase; + font-style:italic; } - -.focusleft, -.focusmiddle, -.focusright { +.sidebarAccountBox ul { + list-style:none; +} +.sidebarAccountBox li.accountIcon { +padding: 6px 0 6px 25px; +background-size: 18px 18px; +background-repeat: no-repeat; +background-position: 0px 6px; +font-size: 18px; +line-height: 20px; +} +li.accountMaps { + background-image: url('MMCCicon_map.png'); +} +li.accountSettings { + background-image: url('MMCCicon_settings.png'); +} +li.accountInvite{ + background-image: url('MMCCicon_invite.png'); +} +li.accountLogout { + background-image: url('MMCCicon_logout.png'); +} +li.accountIcon a { display:block; +} + +.sidebarAccountBox a { + color:white; +} + +.sidebarAccountBox input[type="email"], .sidebarAccountBox input[type="password"] { +width: 200px; +height: 32px; +font-size: 15px; +direction: ltr; +-webkit-appearance: none; +appearance: none; +display: inline-block; +margin: 0; +padding: 0 8px; +background: #fff; +border: 1px solid #d9d9d9; +border-top: 1px solid #c0c0c0; +-webkit-box-sizing: border-box; +-moz-box-sizing: border-box; +box-sizing: border-box; +-webkit-border-radius: 1px; +-moz-border-radius: 1px; +border-radius: 1px; +font: -webkit-small-control; +color: initial; +letter-spacing: normal; +word-spacing: normal; +text-transform: none; +text-indent: 0px; +text-shadow: none; +display: inline-block; +text-align: start; +} + +.sidebarAccountBox .links a { + display:block; + margin-top:5px; +} + +/* search */ + +.sidebarSearch { +position:absolute; +top:5px; +left:5px; +height: 35px; +z-index:200; +} + +.sidebarSearchIcon { +float:left; +width: 35px; +height: 35px; +background: #cf8e88 url('search_icon_32x32.png') no-repeat center center; +background-size: 25px 25px; +cursor:pointer; +} + +.sidebarSearch .twitter-typeahead { float:left; } -.focusleft { - width:20%; - min-width:70px; - text-align:center; +.sidebarSearchField, .sidebarSearch .tt-hint { + height:25px; + padding:5px 0; + width:0px; + margin: 0; + border: 0; + outline: none; + font-size: 25px; + line-height:35px; + background:rgba(0,0,0,0.7); + color: rgba(255,255,255,0.6); + font-family: 'katarine-web'; } -.focusmiddle { - display:block; - width:49%; - min-height:115px; - border-right:2px solid #000; - border-left:2px solid #000; +.sidebarSearch .tt-dropdown-menu { +left:-35px !important; +background: rgba(0,0,0,0.7); +min-width: 440px; +border: 1px solid black; } -.focusright { - width:30%; - min-width:150px; -} - -.focus .focusleft p { - font-weight:normal; - font-size:16px; +.sidebarSearch .tt-dropdown-menu h3 { + font-family:'vinyl',helvetica,sans-serif; + text-transform:uppercase; + font-style:italic; + font-size:20px; line-height:20px; - padding:10px 0 5px 0; + margin: 10px 0 3px 10px; } -.focus .focusright p { - font-weight:normal; +.sidebarSearch .tt-suggestions { + font-family:'LatoLight', helvetica, sans-serif; +} + +.sidebarSearch .tt-suggestion { +background: rgba(0,0,0,0.5); +border: 1px solid black; +} + +.sidebarSearch .tt-is-under-cursor { + background:black; +} + +.sidebarSearch .tt-suggestion .icon { + float:left; + width:36px; + height:36px; + margin-right:5px; +} +.sidebarSearch .tt-dataset-mappers .tt-suggestion .icon { + width:28px; + height:28px; + padding:4px; +} + +.sidebarSearch .resultText { + width: 280px; + display: block; + float: left; +} + +.sidebarSearch .resultTitle { + font-weight:bold; + font-size:20px; + line-height:22px; + width:100%; + padding-top:8px; +} +.sidebarSearch .resultDesc { + font-style:italic; font-size:16px; - line-height:20px; - padding:10px 0 5px 10px; + line-height:16px; + width:100%; + padding: 6px 0; } -.focus .icon { - margin:0 auto; +.sidebarSearch .tip { + display:none; } -.focus .title { - font-size:22px; - line-height:25px; - border-bottom:2px solid #000; - padding:10px; +.sidebarSearch div.autoOptions { + width: 117px; + float: left; + position:relative; + display:none; } - -.focus .desc { - padding:10px; - height:75px; - font-family:Arial, Helvetica, sans-serif; -} - -.focus .desc h3 { - font-style:normal; -} - -.focus .location { - padding-left:10px; -} - -.focus .link { - padding:0 0 0 10px; +.sidebarSearch .tt-is-under-cursor .autoOptions { display:block; - width:90%; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; +} + +.sidebarSearch .autoOptions button, .sidebarSearch .autoOptions a, .sidebarSearch .autoOptions div { + position: absolute; + padding: 0; + margin: 0; + border: none; + outline: none; +} + +.sidebarSearch button.addToMap { + width: 20px; + height: 20px; + background: url(/assets/MMCCicon_add.png) no-repeat center center; + background-size: 15px 15px; + top: 10px; + left: 0px; +} + +.sidebarSearch a.goTo { +width: 20px; +height: 20px; +background: url(/assets/MMCCicon_pop-out.png) no-repeat center center; +background-size: 15px 15px; +top: 11px; +left: 22px; +} + +.sidebarSearch div.mapCount { +width: 20px; +height: 20px; +background: url(/assets/MMCCicon_map.png) no-repeat 0px center; +background-size: 14px 14px; +top: 0px; +left: 50px; +padding-left: 18px; +font-size: 12px; +line-height: 20px; +} + +.sidebarSearch div.topicCount { +width: 20px; +height: 20px; +background: url(/assets/MMCCicon_topic.png) no-repeat 0px center; +background-size: 14px 14px; +top: 0px; +left: 50px; +padding-left: 18px; +font-size: 12px; +line-height: 20px; +} + +.sidebarSearch div.synapseCount { +width: 20px; +height: 20px; +background: url(/assets/MMCCicon_synapse.png) no-repeat 0px center; +background-size: 14px 14px; +top: 0px; +left: 83px; +padding-left: 15px; +font-size: 12px; +line-height: 20px; +} + +.sidebarSearch div.topicOriginatorIcon { + width: 20px; + height: 20px; + background: url(/assets/MMCCicon_mapper.png) no-repeat center center; + background-size: 16px 16px; + top: 21px; + left: 52px; +} + +.sidebarSearch div.mapContributorsIcon { + width: 20px; + height: 20px; + background: url(/assets/MMCCicon_mapper.png) no-repeat 0px center; + background-size: 16px 16px; + top: 21px; + left: 50px; + padding-left: 18px; + font-size: 12px; + line-height: 20px; +} + +.sidebarSearch div.topicPermission, .sidebarSearch div.mapPermission { +width: 20px; +height: 20px; +background-size: 20px 20px !important; +top: 20px; +left: 84px; +} +.sidebarSearch div.topicPermission.commons, .sidebarSearch div.mapPermission.commons { + background: url(/assets/MMCCicon_commons.png) no-repeat center center; +} +.sidebarSearch div.topicPermission.public, .sidebarSearch div.mapPermission.public { + background: url(/assets/MMCCicon_public.png) no-repeat center center; +} +.sidebarSearch div.topicPermission.private, .sidebarSearch div.mapPermission.private { + background: url(/assets/MMCCicon_private.png) no-repeat center center; +} + +.sidebarSearch .tt-dataset-mappers a.goTo { + top:7px; +} +.sidebarSearch .tt-dataset-mappers div.mapCount { + top:8px; +} + +/* end search */ + +.nodemargin { + padding-top:120px; } .divider { @@ -468,177 +824,21 @@ box-shadow: 6px 6px 8px rgba(0,0,0,0.4); } #cards { - height:100%; - overflow-y:scroll; + height:100%; } #cards p.empty { margin-left:50px; } -/* --- styling the sideOptions section ---*/ -.sideOption { - position:fixed; - left:0px; - display:block; - height:32px; - background: #FFF; - padding:0 0 0 15px; - border-bottom-right-radius:10px; - border-top-right-radius:10px; - color:#000; - border:1px solid #000; - overflow:hidden; - cursor:pointer; - box-shadow: 6px 6px 8px rgba(0,0,0,0.4); -} - -#sideOptionFind { - top:25%; - width:45px; -} - -#sideOptionAnalyze { - top:35%; - width:64px; -} - -#sideOptionOrganize { - top:45%; - width:75px; - display:none; -} - -.closeSideOption { - position:fixed; - left:4px; - display:none; - margin-top: -22px; - cursor: pointer; - background: #000; - padding: 0 4px; - border-radius: 8px; -} -#closeFind { - top:25%; -} - -#closeAnalyze { - top:35%; -} - -#closeOrganize { - top:45%; -} - -#findWhere { - position:fixed; - top:25%; - left:90px; - display:none; - margin-top:-20px; -} - -.findWhereField, #findWhere input, #findWhere p { - float:left; -} - -.findWhereField.inCommons { - color:#67be5f; -} - -.sideOption select, -.sideOption span { - float:left; - margin-top:10px; -} - -.sideOption .spacer { - margin:10px 10px 0; -} - -.sideOption .find_key { - margin-right:8px; -} - -.find_topic_by_name { - display: block; -} - -.find_topic_by_name input, .find_map_by_name input, .find_mapper_by_name input { - margin:10px 0 0 0; - width: 270px; - border-radius: 10px; - height: 20px; - padding: 0 10px; - outline: none; - } - -.find_mapper_by_name, -.find_map_by_name { - display:none; -} - -.find_topic_by_metacode { - z-index:12; - display:none; - width:auto; - color: #67AF9F; -} - -.find_topic_by_metacode ul { - display:block; -} - -.find_topic_by_metacode ul li { - clear:both; - list-style-type:none; - display:block; - padding:3px; -} - -.find_topic_by_metacode ul img { - width:40px; - height:40px; - float:left; -} - -.find_topic_by_metacode ul p { - float:left; - display: block; - margin: 0; - background: none; - padding: 10px 4px 2px 4px; -} - -.find_topic_by_metacode #filters-one { - float:left; -} - -.find_topic_by_metacode #filters-two { - float:left; -} - -.find_topic_by_metacode #filters-three { - float:left; -} - -.find_topic_by_metacode li.toggledOff { - opacity: 0.4; -} - -#get_topics_form { - display:none; -} - /* --- styling the logo button ---*/ -.footer { +/*.footer { width: 188px; display: block; position: fixed; bottom: 9px; height: 38px; - background: url('black_bg.png'); + background: rgba(0,0,0,0.5); border-bottom-right-radius: 5px; border-top-right-radius: 5px; z-index: 15000; @@ -655,12 +855,29 @@ box-shadow: 6px 6px 8px rgba(0,0,0,0.4); padding: 3px 8px; margin: -0.75em 0 0; } +*/ +.footer { + display: block; + position: fixed; + bottom: 9px; + height: 35px; + z-index: 15000; + border:1px solid #000; + border-bottom-right-radius:5px; + border-top-right-radius:5px; +} + +.logo { + z-index:12; + display:block; + width: 136px; +background: rgba(0,0,0,0.7) url(menu_icon_32.png) no-repeat -10px 8px; +padding: 5px 0px 1px 15px; +background-size: 22px 20px; +} #mainTitle { - float: left; - /*background: url('black_bg.png') repeat 0 0;*/ padding: 0 5px; - border-radius: 10px; } #mainTitle a { @@ -669,37 +886,33 @@ box-shadow: 6px 6px 8px rgba(0,0,0,0.4); font-style: italic; text-transform:uppercase; font-weight: 400; -} - -#beta { - float:left; - margin-left: 2px; + font-size:30px; + line-height:30px; } .footer .menu { - display:block; + display:none; position:absolute; border:none; - bottom:42px; - left:10px; - height:0px; + bottom:36px; + left:-1px; + height:142px; z-index:12; - width:118px; + width:151px; color: #67AF9F; white-space: nowrap; text-align: center; font-size: 16px; overflow: hidden; - padding: 0 8px; + padding: 0; margin: 0; - background: white; - border-radius: 6px; + /*border-radius: 6px; -webkit-border-radius: 6px; -moz-border-radius: 6px; box-shadow: 0 2px rgba(0, 0, 0, 0.05), 0 -2px rgba(0, 0, 0, 0.05) inset; -webkit-box-shadow: 0 2px rgba(0, 0, 0, 0.05), 0 -2px rgba(0, 0, 0, 0.05) inset; - -moz-box-shadow: 0 2px rgba(0, 0, 0, 0.05), 0 -2px rgba(0, 0, 0, 0.05) inset; - background: url('black_bg.png') repeat 0 0; + -moz-box-shadow: 0 2px rgba(0, 0, 0, 0.05), 0 -2px rgba(0, 0, 0, 0.05) inset;*/ + background: rgba(0,0,0,0.7);/*url('black_bg.png'); */ border-left:1px solid #000; border-right:1px solid #000; } @@ -710,21 +923,65 @@ box-shadow: 6px 6px 8px rgba(0,0,0,0.4); float:none; list-style-type:none; display:block; - padding:3px; + padding:0; text-align:center; - border-top:1px solid #999; } -.footer ul li.first { - border:none; + +li.meta .button { + background: #89aa7b; + margin:7px; } -.footer ul li a:hover { - color:#9E2; + +li.beta { + margin: 4px 0 0 !important; +border-top: 1px solid black; +border-bottom: 1px solid black; +position: relative; +height: 30px; } -.footer ul li a { - color: #FFF; +.inBeta { + background: rgba(0,0,0,0.6); +display: inline-block; +color: white; +height: 30px; +padding: 0 5px; +font-family: 'LatoLight'; +font-size: 30px; +position: absolute; +top: 0; +left: 0; +line-height: 30px; +} + +li.beta button { +position: absolute; +top: 0; +right: 0; +width: 84px; +border-radius: 0; +font-size: 12px; +margin: 0; +} + +li.tutorial, li.exploreMaps { + height:30px; + line-height:30px; + font-size:20px; +} + +li.tutorial a, li.exploreMaps a { display:block; } +li.exploreMaps { + border-top:1px solid white; +} + +.footer ul li a { + color: #FFF; +} + + .menuflag { position: absolute; @@ -748,7 +1005,6 @@ font-size: 21px; } .home_bg { - overflow-y:scroll; display:block; height:100%; } @@ -806,3 +1062,7 @@ background: url('home_bg2.png') no-repeat center -46px; #edit_synapse label.left { margin-right: 0.5em; } + +.templates { + display:none; +} diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 2a7b3ceb..9b5009da 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -1,9 +1,25 @@ class ApplicationController < ActionController::Base protect_from_forgery + # this is for global login + include ContentHelper + helper_method :user helper_method :authenticated? + after_filter :store_location + + def store_location + # store last url - this is needed for post-login redirect to whatever the user last visited. + if (!request.fullpath.match("/users/") && !request.xhr?) # don't store ajax calls + session[:previous_url] = request.fullpath + end + end + + def after_sign_in_path_for(resource) + session[:previous_url] || root_path + end + private def require_no_user diff --git a/app/controllers/main_controller.rb b/app/controllers/main_controller.rb index 7cb2f870..8c40fd51 100644 --- a/app/controllers/main_controller.rb +++ b/app/controllers/main_controller.rb @@ -1,10 +1,13 @@ class MainController < ApplicationController include TopicsHelper + include MapsHelper + include UsersHelper before_filter :require_user, only: [:invite] respond_to :html, :js, :json + # home page def home @maps = Map.visibleToUser(@current, nil).sort! { |a,b| b.created_at <=> a.created_at } @maps = @maps.slice(0,5) @@ -12,46 +15,12 @@ class MainController < ApplicationController respond_with(@maps) end - def console - - end - - def search - @current = current_user - @topics = Array.new() - @synapses = Array.new() - if params[:topics_by_name] != "" - like_keyword = "%"+params[:topics_by_name]+"%" - like_keyword.downcase! #convert to lowercase for better comparison - @topics = Topic.where("LOWER(name) LIKE ?", like_keyword) - end - if params[:topics_by_user_id] != "" - @user = User.find(params[:topics_by_user_id]) - @topics = @topics | Topic.visibleToUser(@current, @user) - end - if params[:topics_by_map_id] != "" - @map = Map.find(params[:topics_by_map_id]) - @topics = @topics | @map.topics.delete_if{|topic| not topic.authorize_to_view(@current)} - end - - @topics.each do |t| - t.synapses.each do |s| - @synapses = @synapses.push(s) if not @synapses.include? s - end - end - - @topics.sort! { |a,b| a.name.downcase <=> b.name.downcase } - - respond_to do |format| - format.js { respond_with(@topics,@synapses) } - end - end - - + # /request def requestinvite end + # /invite def invite @user = current_user @@ -60,5 +29,112 @@ class MainController < ApplicationController end end + ### SEARCHING ### + + # get /search/topics?term=SOMETERM + def searchtopics + @current = current_user + + term = params[:term] + + if term && !term.empty? && term.downcase[0..3] != "map:" && term.downcase[0..6] != "mapper:" && term.downcase != "topic:" + + #remove "topic:" if appended at beginning + term = term[6..-1] if term.downcase[0..5] == "topic:" + + #check whether there's a filter by metacode as part of the query + filterByMetacode = false + Metacode.all.each do |m| + lOne = m.name.length+1 + lTwo = m.name.length + + if term.downcase[0..lTwo] == m.name.downcase + ":" + term = term[lOne..-1] + filterByMetacode = m + end + end + + if filterByMetacode + if term == "" + @topics = [] + else + search = '%' + term.downcase + '%' + @topics = Topic.where('LOWER("name") like ? OR LOWER("desc") like ? OR LOWER("link") like ?', search, search, search). + where('metacode_id = ?', filterByMetacode.id).limit(10).order('"name"').visibleToUser(@current,nil) + end + else + search = '%' + term.downcase + '%' + @topics = Topic.where('LOWER("name") like ? OR LOWER("desc") like ? OR LOWER("link") like ?', search, search, search). + limit(10).order('"name"').visibleToUser(@current,nil) + end + else + @topics = [] + end + render json: autocomplete_array_json(@topics) + #if params[:topics_by_user_id] != "" + # @user = User.find(params[:topics_by_user_id]) + # @topics = @topics | Topic.visibleToUser(@current, @user) + #end + #if params[:topics_by_map_id] != "" + # @map = Map.find(params[:topics_by_map_id]) + # @topics = @topics | @map.topics.delete_if{|topic| not topic.authorize_to_view(@current)} + #end + #@topics.sort! { |a,b| a.name.downcase <=> b.name.downcase } + end + + # get /search/maps?term=SOMETERM + def searchmaps + @current = current_user + + term = params[:term] + if term && !term.empty? && term.downcase[0..5] != "topic:" && term.downcase[0..6] != "mapper:" && term.downcase != "map:" + + #remove "map:" if appended at beginning + term = term[4..-1] if term.downcase[0..3] == "map:" + + search = '%' + term.downcase + '%' + @maps = Map.where('LOWER("name") like ? OR LOWER("desc") like ?', search, search). + limit(10).order('"name"').visibleToUser(@current,nil) + else + @maps = [] + end + render json: autocomplete_map_array_json(@maps) + #if params[:topics_by_user_id] != "" + # @user = User.find(params[:topics_by_user_id]) + # @topics = @topics | Topic.visibleToUser(@current, @user) + #end + #if params[:topics_by_map_id] != "" + # @map = Map.find(params[:topics_by_map_id]) + # @topics = @topics | @map.topics.delete_if{|topic| not topic.authorize_to_view(@current)} + #end + #@topics.sort! { |a,b| a.name.downcase <=> b.name.downcase } + end + + # get /search/mappers?term=SOMETERM + def searchmappers + @current = current_user + + term = params[:term] + if term && !term.empty? && term.downcase[0..3] != "map:" && term.downcase[0..5] != "topic:" && term.downcase != "mapper:" + + #remove "mapper:" if appended at beginning + term = term[7..-1] if term.downcase[0..6] == "mapper:" + + @mappers = User.where('LOWER("name") like ?', '%' + term.downcase + '%'). + limit(10).order('"name"') + else + @mappers = [] + end + render json: autocomplete_user_array_json(@mappers) + #if params[:topics_by_user_id] != "" + # @user = User.find(params[:topics_by_user_id]) + # @topics = @topics | Topic.visibleToUser(@current, @user) + #end + #if params[:topics_by_map_id] != "" + # @map = Map.find(params[:topics_by_map_id]) + # @topics = @topics | @map.topics.delete_if{|topic| not topic.authorize_to_view(@current)} + #end + #@topics.sort! { |a,b| a.name.downcase <=> b.name.downcase } + end end diff --git a/app/controllers/topics_controller.rb b/app/controllers/topics_controller.rb index ec337ac7..9b89c0bc 100644 --- a/app/controllers/topics_controller.rb +++ b/app/controllers/topics_controller.rb @@ -1,10 +1,24 @@ class TopicsController < ApplicationController + include TopicsHelper + before_filter :require_user, only: [:new, :create, :edit, :update, :removefrommap, :destroy] respond_to :html, :js, :json - autocomplete :topic, :name, :full => true, :extra_data => [:user_id], :display_value => :topic_autocomplete_method + #autocomplete :topic, :name, :full => true, :extra_data => [:user_id], :display_value => :topic_autocomplete_method + # GET /topics/autocomplete_topic + def autocomplete_topic + @current = current_user + term = params[:term] + if term && !term.empty? + t = Topic.where('LOWER("name") like ?', term.downcase + '%'). + limit(10).order('"name"').visibleToUser(@current,nil) + else + t = [] + end + render json: autocomplete_array_json(t) + end # GET topics # or GET /users/:user_id/topics diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 56723d72..13af08f8 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -14,19 +14,6 @@ class UsersController < ApplicationController respond_with(@user) end - # GET /user/:id - def show - @user = User.find(params[:id]) - @topics = Topic.visibleToUser(@current, @user).sort! { |a,b| b.created_at <=> a.created_at } - @topics = @topics.slice(0,3) - @synapses = Synapse.visibleToUser(@current, @user).sort! { |a,b| b.created_at <=> a.created_at } - @synapses = @synapses.slice(0,3) - @maps = Map.visibleToUser(@current, @user).sort! { |a,b| b.created_at <=> a.created_at } - @maps = @maps.slice(0,3) - - respond_with(@user, @topics, @synapses, @maps) - end - # PUT /user def update @user = current_user diff --git a/app/helpers/content_helper.rb b/app/helpers/content_helper.rb new file mode 100644 index 00000000..4a8820f0 --- /dev/null +++ b/app/helpers/content_helper.rb @@ -0,0 +1,13 @@ +module ContentHelper + def resource_name + :user + end + + def resource + @resource ||= User.new + end + + def devise_mapping + @devise_mapping ||= Devise.mappings[:user] + end +end diff --git a/app/helpers/maps_helper.rb b/app/helpers/maps_helper.rb index 88ee3d5c..99a3a752 100644 --- a/app/helpers/maps_helper.rb +++ b/app/helpers/maps_helper.rb @@ -1,2 +1,32 @@ module MapsHelper + + ## this one is for building our custom JSON autocomplete format for typeahead + def autocomplete_map_array_json(maps) + temp = [] + maps.each do |m| + map = {} + map['id'] = m.id + map['label'] = m.name + map['value'] = m.name + map['description'] = m.desc.truncate(30) + map['permission'] = m.permission + map['topicCount'] = m.topics.count + map['synapseCount'] = m.synapses.count + map['contributorCount'] = m.contributors.count + + contributorList = '' + if m.contributors.count > 0 + contributorList += '
    ' + m.contributors.each do |c| + contributorList += '
  • ' + c.name + '
  • ' + end + contributorList += '
' + end + map['contributorList'] = contributorList + + temp.push map + end + return temp + end + end diff --git a/app/helpers/topics_helper.rb b/app/helpers/topics_helper.rb index 9d7593b6..1c0b1f1f 100644 --- a/app/helpers/topics_helper.rb +++ b/app/helpers/topics_helper.rb @@ -1,5 +1,26 @@ module TopicsHelper + ## this one is for building our custom JSON autocomplete format for typeahead + def autocomplete_array_json(topics) + temp = [] + topics.each do |t| + topic = {} + topic['id'] = t.id + topic['label'] = t.name + topic['value'] = t.name + topic['description'] = t.desc.truncate(35) # make this return matched results + topic['type'] = t.metacode.name + topic['typeImageURL'] = '/assets/' + t.metacode.icon + topic['permission'] = t.permission + topic['mapCount'] = t.maps.count + topic['synapseCount'] = t.synapses.count + topic['originator'] = t.user.name + + temp.push topic + end + return temp + end + #find all nodes in any given nodes network def network(node, array, count) # recurse starting with a node to find all connected nodes and return an array of topics that constitutes the starting nodes network diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb index 2310a240..03bdb2dd 100644 --- a/app/helpers/users_helper.rb +++ b/app/helpers/users_helper.rb @@ -1,2 +1,18 @@ module UsersHelper + + ## this one is for building our custom JSON autocomplete format for typeahead + def autocomplete_user_array_json(users) + temp = [] + users.each do |u| + user = {} + user['id'] = u.id + user['label'] = u.name + user['value'] = u.name + user['mapCount'] = u.maps.count + + temp.push user + end + return temp + end + end diff --git a/app/models/map.rb b/app/models/map.rb index 5eb088f9..f204a370 100644 --- a/app/models/map.rb +++ b/app/models/map.rb @@ -21,6 +21,17 @@ def mk_permission "pr" end end + + #return an array of the contributors to the map + def contributors + contributors = [] + + self.mappings.each do |m| + contributors.push(m.user) if !contributors.include?(m.user) + end + + return contributors + end ###### JSON ###### diff --git a/app/models/topic.rb b/app/models/topic.rb index 63758248..1c826bcc 100644 --- a/app/models/topic.rb +++ b/app/models/topic.rb @@ -18,7 +18,7 @@ has_many :maps, :through => :mappings def relatives topics1 + topics2 - end + end belongs_to :metacode diff --git a/app/views/layouts/_account.html.erb b/app/views/layouts/_account.html.erb new file mode 100644 index 00000000..661e016e --- /dev/null +++ b/app/views/layouts/_account.html.erb @@ -0,0 +1,40 @@ +<%# + # @file + # The inner HTML of the account box that comes up in the bottom left + #%> + +<% if authenticated? %> + <% account = current_user %> +

Hello <%= account.name.split[0...1][0] %>!

+
    +
  • <%= link_to "My Maps", user_maps_url(user) %>
  • +
  • <%= link_to "Settings", edit_user_url(account) %>
  • +
  • <%= link_to "Share Invite", invite_path %>
  • +
  • <%= link_to "Logout", "/sign_out", id: "Logout" %>
  • +
+<% else %> +

Sign In

+ <%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { class: "loginAnywhere" }) do |f| %> +
+ <%= f.label :email %> + <%= f.email_field :email, :autofocus => true %> +
+
+ <%= f.label :password %> + <%= f.password_field :password %> +
+ <% if devise_mapping.rememberable? -%> +
<%= f.check_box :remember_me %> <%= f.label :remember_me %>
+ <% end -%> +
+ <%= f.submit "Sign in" %>
+ +
+ <% end %> +
+<% end %> diff --git a/app/views/layouts/_searchtemplates.html.erb b/app/views/layouts/_searchtemplates.html.erb new file mode 100644 index 00000000..8c1ac4b1 --- /dev/null +++ b/app/views/layouts/_searchtemplates.html.erb @@ -0,0 +1,88 @@ +<%# + # @file + # templates for the upper right autocomplete results + #%> + +
+ +
+ + {{type}} +
+

{{value}}

+

{{description}}

+
+
+ + <% if controller_name == 'maps' && action_name == 'show' && @map.authorize_to_edit(@current) %> + + add to map + <% end %> + + open in new tab + +
+ appears on maps + {{mapCount}} +
+
+ # of synapses + {{synapseCount}} +
+
+ {{originator}} +
+
+ permission: {{permission}} +
+
+
+
+ +
+ +
+

{{value}}

+

{{description}}

+
+
+ + open in new tab + +
+ has topics + {{topicCount}} +
+
+ has synapses + {{synapseCount}} +
+
+ {{contributorList}} + {{contributorCount}} +
+
+ permission: {{permission}} +
+
+
+
+ +
+ +
+

{{value}}

+
+
+ + open in new tab + +
+ # of maps + {{mapCount}} +
+
+
+
+ +
\ No newline at end of file diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 9dc6750a..5a9f0156 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -47,43 +47,50 @@ <%= content_tag :div, class: authenticated? ? "main authenticated" : "main unauthenticated" do %>
+
+
+ +
+ <%= render :partial => 'layouts/searchtemplates' %> +
+
+
+
+ <%= render :partial => 'layouts/account' %> +
+
<%= yield %>
<% end %> <%= render :partial => 'layouts/ga' if Rails.env.production? %> + + <% if authenticated? %> + + + + + <% end %> diff --git a/app/views/main/_analyze.html.erb b/app/views/main/_analyze.html.erb deleted file mode 100644 index c96d3cb6..00000000 --- a/app/views/main/_analyze.html.erb +++ /dev/null @@ -1,10 +0,0 @@ -<%# - # @file - # Analyze partial view. New options for the analyze menu go here. - #%> -close -
- Analyze... -
-
-
diff --git a/app/views/main/_find.html.erb b/app/views/main/_find.html.erb deleted file mode 100644 index b9e5d335..00000000 --- a/app/views/main/_find.html.erb +++ /dev/null @@ -1,80 +0,0 @@ -<%# - # @file - # Find partial view. New options for the find menu go here. - #%> -close -
-

On my Canvas

-

In the Commons

-
-
- Seek... - - by - -
- <%= form_for Topic.new, :html => { :class => "find_topic_by_name find find_topic", :id => "find_topic_by_name" } do |f| %> - <%= f.autocomplete_field :name, autocomplete_topic_name_topics_path, :id => "topic_by_name_input", :placeholder => "Search for topics..." %> - <% end %> - <%= form_for Map.new, :html => { :class => "find_map_by_name find", :id => "find_map_by_name" } do |f| %> - <%= f.autocomplete_field :name, autocomplete_map_name_maps_path, :id => "map_by_name_input", :placeholder => "Search for maps..." %> - <% end %> - <%= form_for User.new, :html => { :class => "find_mapper_by_name find", :id => "find_mapper_by_name" } do |f| %> - <%= f.autocomplete_field :name, autocomplete_user_name_users_path, :id => "mapper_by_name_input", :placeholder => "Search for mappers..." %> - <% end %> -
-
    -
  • Show All
  • -
  • Action

    action

  • -
  • Activity

    activity

  • -
  • Bizarre

    bizarre

  • -
  • Catalyst

    catalyst

  • -
  • Closed

    closed

  • -
  • Experience

    experience

  • -
  • Future Dev

    future dev

  • -
  • Group

    group

  • -
  • Idea

    idea

  • -
-
    -
  • Hide All
  • -
  • Implication

    implication

  • -
  • Insight

    insight

  • -
  • Intention

    intention

  • -
  • Knowledge

    knowledge

  • -
  • Location

    location

  • -
  • Open Issue

    open issue

  • -
  • Opinion

    opinion

  • -
  • Opportunity

    opportunity

  • -
  • Person

    person

  • -
-
    -
  • Platform

    platform

  • -
  • Problem

    problem

  • -
  • Question

    question

  • -
  • Reference

    reference

  • -
  • Requirement

    requirement

  • -
  • Resource

    resource

  • -
  • Role

    role

  • -
  • Task

    task

  • -
  • Tool

    tool

  • -
  • Trajectory

    trajectory

  • -
-
- <%= form_tag("/search", :method => "get", :id => 'get_topics_form', :class => 'get_topics_form', :remote => true) do %> - <%= text_field_tag(:topics_by_name, "", :id => "topicsByName", :class => "getTopicsInput") %> - <%= text_field_tag(:topics_by_user_id, "", :id => "topicsByUser", :class => "getTopicsInput") %> - <%= text_field_tag(:topics_by_map_id, "", :id => "topicsByMap", :class => "getTopicsInput") %> - <%= text_field_tag(:synapses_by_user_id, "", :id => "synapsesByUser", :class => "getTopicsInput") %> - <%= text_field_tag(:synapses_by_map_id, "", :id => "synapsesByMap", :class => "getTopicsInput") %> - <% end %> -
diff --git a/app/views/main/_organize.html.erb b/app/views/main/_organize.html.erb deleted file mode 100644 index 05a723f0..00000000 --- a/app/views/main/_organize.html.erb +++ /dev/null @@ -1,9 +0,0 @@ -<%# - # @file - # Organize partial view. New options for the organize menu go here. - #%> -close -
- - Organize... -
diff --git a/app/views/main/console.html.erb b/app/views/main/console.html.erb deleted file mode 100644 index 13148fa5..00000000 --- a/app/views/main/console.html.erb +++ /dev/null @@ -1,48 +0,0 @@ -<%# - # @file - # Located at /console - # Console view has the Find/Analyze/Organize tabs, and starts mostly empty - # so it's kind of like a workspace. You can then save to map, etc. - # Emphasis is on pulling in and creating data. - #%> - -<% content_for :title, "Console | Metamaps" %> - -
-
- - - - <% if authenticated? %> - - - <% end %> - -
-
- -

- Console -

- -
-
-
-
-
-
-
- <% if authenticated? %> - <%= render :partial => 'topics/new' %> - <%= render :partial => 'synapses/new' %> - <%= render :partial => 'maps/new' %> - <% end %> - - -<%= render :partial => 'find' %> diff --git a/app/views/main/home.html.erb b/app/views/main/home.html.erb index 9c4f33d8..09860786 100644 --- a/app/views/main/home.html.erb +++ b/app/views/main/home.html.erb @@ -79,7 +79,6 @@ $jit.RGraph.Plot.NodeTypes.implement({ type = node.data.t, ctx = canvas.getCtx(); - console.log(type); if (type == "map") { ctx.drawImage(image1, pos.x - dim, pos.y - dim, dim*2, dim*2); } else if (type == 1) { diff --git a/app/views/maps/_newtopic.html.erb b/app/views/maps/_newtopic.html.erb index c1a8d1ab..d79d5b7c 100644 --- a/app/views/maps/_newtopic.html.erb +++ b/app/views/maps/_newtopic.html.erb @@ -11,7 +11,7 @@ <%= metacode.name %> <% end %> - <%= form.autocomplete_field :name, autocomplete_topic_name_topics_path, :placeholder => "What is the name of your topic?" %> + <%= form.text_field :name, :placeholder => "title..." %> <%= form.hidden_field :metacode, :value => "Action" %> <%= form.hidden_field :x, :value => 0 %> <%= form.hidden_field :y, :value => 0 %> diff --git a/app/views/maps/show.html.erb b/app/views/maps/show.html.erb index 8949420d..710e24e2 100644 --- a/app/views/maps/show.html.erb +++ b/app/views/maps/show.html.erb @@ -6,17 +6,11 @@ <% content_for :title, @map.name + " | Metamaps" %> -
+ -

- <% if (@map.permission == "commons" && authenticated?) || @map.user == user %> - Editing Map: - <% else %> - Viewing Map: - <% end %> - <%= @map.name %> - <% if (@map.permission == "commons" && authenticated?) || @map.user == user %> - <%= link_to "[edit]", edit_map_path(@map) %> - <% end %> -

+
+
+ + <%= @map.name %> + +
+
@@ -65,7 +55,7 @@ viewMode = "graph"; json = <%= @mapjson %>; if (json.length > 0) { - $(document).ready(function() { + $(window).load(function() { <% if (@map.arranged) %> initialize("arranged"); <% else %> @@ -74,7 +64,7 @@ }); } else { - $(document).ready(function() { + $(window).load(function() { initialize("chaotic", true); }); } @@ -119,6 +109,4 @@ } }); } - - -<%= render :partial => 'main/find' %> + \ No newline at end of file diff --git a/app/views/synapses/create.js.erb b/app/views/synapses/create.js.erb index 037d99f3..36948ca3 100644 --- a/app/views/synapses/create.js.erb +++ b/app/views/synapses/create.js.erb @@ -4,28 +4,32 @@ */ $('#new_synapse').fadeOut('fast'); $('#synapse_desc').attr('value',''); -$('.ui-autocomplete.ui-widget').fadeOut('fast'); -$('#synapse_desc').autocomplete('disable'); $('#synapse_topic1id').attr('value','0'); $('#synapse_topic2id').attr('value','0'); +// reset the draw synapse positions to false +MetamapsModel.synapseStartCoord = false; +MetamapsModel.synapseEndCoord = false; var temp1, temp2, temp; if ( Mconsole != null) { temp1 = Mconsole.graph.getNode(<%= @synapse.topic1.id %>); temp2 = Mconsole.graph.getNode(<%= @synapse.topic2.id %>); + temp2.setData('dim', 25, 'current'); Mconsole.graph.addAdjacence(temp1, temp2, {}); temp = Mconsole.graph.getAdjacence(temp1.id, temp2.id); temp.setDataset('start', { - lineWidth: 0.4 + lineWidth: 0.4, + alpha: 0.1 }); temp.setDataset('end', { - lineWidth: 2 + lineWidth: 2, + alpha: 1 }); var d = new Array(<%= @synapse.node1_id.to_s() %>, <%= @synapse.node2_id.to_s() %>); temp.setDataset('current', { desc: '<%= @synapse.desc %>', - showDesc: false, //will be changed by selectEdge + showDesc: true, //will be changed by selectEdge category: '<%= @synapse.category %>', id: '<%= @synapse.id %>', userid: '<%= @synapse.user.id %>', @@ -33,8 +37,16 @@ if ( Mconsole != null) { permission: '<%= @synapse.permission %>' }); temp.data.$direction = d; - Mconsole.fx.plotLine(temp, Mconsole.canvas); - selectEdge(temp); + Mconsole.fx.animate({ + modes: ['edge-property:lineWidth:alpha'], + duration: 100, + onComplete: function() { + setTimeout(function (){ + temp.setData('showDesc', false); + Mconsole.plot(); + }, 3000); + } + }); } else { json = <%= @synapse.selfplusnodes_as_json.html_safe %> diff --git a/app/views/topics/_new.html.erb b/app/views/topics/_new.html.erb index faf5c3bc..5277a146 100644 --- a/app/views/topics/_new.html.erb +++ b/app/views/topics/_new.html.erb @@ -13,7 +13,7 @@ <%= metacode.name %> <% end %>
- <%= form.autocomplete_field :name, autocomplete_topic_name_topics_path, :placeholder => "What is the name of your topic?" %> + <%= form.text_field :name, :placeholder => "title..." %> <%= form.hidden_field :metacode, :value => "Action" %> <%= form.hidden_field :x, :value => 0 %> <%= form.hidden_field :y, :value => 0 %> diff --git a/app/views/topics/create.js.erb b/app/views/topics/create.js.erb index d28696af..77defa96 100644 --- a/app/views/topics/create.js.erb +++ b/app/views/topics/create.js.erb @@ -2,10 +2,8 @@ * @file * This javascript is returned and executed when you create a new node. */ -$('#topic_name').autocomplete('disable'); -$('.ui-autocomplete.ui-widget').fadeOut('fast'); $('#new_topic').fadeOut('fast'); -$('#topic_name').attr('value',''); +$('#topic_name').typeahead('setQuery',''); $('#topic_grabTopic').attr('value','null'); $('#topic_addSynapse').attr('value','false'); @@ -52,7 +50,6 @@ if (!$.isEmptyObject(Mconsole.graph.nodes)) { if ( '<%= @synapse %>' == "true" ) { $('#synapse_topic1id').val(tempNode.id); $('#synapse_topic2id').val(temp.id); - $('#synapse_desc').autocomplete('enable'); $('#synapse_desc').val(""); $('#new_synapse').fadeIn('fast'); $('#synapse_desc').focus(); @@ -60,7 +57,10 @@ if (!$.isEmptyObject(Mconsole.graph.nodes)) { modes: ['node-property:dim'], duration: 500, onComplete: function() { - renderMidArrow({ x: tempNode.pos.getc().x, y: tempNode.pos.getc().y }, { x: temp.pos.getc().x, y: temp.pos.getc().y }, 13, false, Mconsole.canvas); + setTimeout(function (){ + temp.setData('dim', 25, 'current'); + Mconsole.plot(); + }, 3000); Mconsole.fx.plotNode(tempNode, Mconsole.canvas); Mconsole.fx.plotNode(temp, Mconsole.canvas); tempNode = null; @@ -74,7 +74,10 @@ if (!$.isEmptyObject(Mconsole.graph.nodes)) { modes: ['node-property:dim'], duration: 500, onComplete: function() { - selectNode(temp); + setTimeout(function (){ + temp.setData('dim', 25, 'current'); + Mconsole.plot(); + }, 3000); } }); @@ -103,7 +106,10 @@ if (!$.isEmptyObject(Mconsole.graph.nodes)) { modes: ['node-property:dim'], duration: 500, onComplete: function() { - selectNode(temp); + setTimeout(function (){ + temp.setData('dim', 25, 'current'); + Mconsole.plot(); + }, 3000); } }); } diff --git a/app/views/topics/show.html.erb b/app/views/topics/show.html.erb index 570d89c0..9d81e82a 100644 --- a/app/views/topics/show.html.erb +++ b/app/views/topics/show.html.erb @@ -25,9 +25,13 @@
-

- Viewing Topic: <%= @topic.name %> -

+
+
+ + <%= @topic.name %> + +
+
@@ -40,7 +44,7 @@ diff --git a/app/views/users/edit.html.erb b/app/views/users/edit.html.erb index 2a5dfa62..5de14fc8 100644 --- a/app/views/users/edit.html.erb +++ b/app/views/users/edit.html.erb @@ -5,6 +5,8 @@ #%> <% content_for :title, @user.name + "'s Settings | Metamaps" %> + +

Your Settings

<%= formula_form_for @user, url: user_url do |form| %>

Choose Active Metacodes

diff --git a/app/views/users/passwords/new.html.erb b/app/views/users/passwords/new.html.erb index 007ad563..b4b3ee25 100644 --- a/app/views/users/passwords/new.html.erb +++ b/app/views/users/passwords/new.html.erb @@ -1,4 +1,4 @@ - +

Password Reset

<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %> <%= devise_error_messages! %> @@ -10,7 +10,6 @@
<%= f.submit "Send me reset password instructions" %>
- <%= render "devise/shared/links" %> <% end %> diff --git a/app/views/users/registrations/new.html.erb b/app/views/users/registrations/new.html.erb index 6f09d1cd..357edd31 100644 --- a/app/views/users/registrations/new.html.erb +++ b/app/views/users/registrations/new.html.erb @@ -1,7 +1,9 @@ +

Sign Up

+ <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %> <%= devise_error_messages! %> -

Sign up

+

Sign Up

<%= f.label :name %> <%= f.text_field :name, :autofocus => true %>
@@ -20,7 +22,7 @@
<%= f.submit "Sign up" %>
- <%= render "devise/shared/links" %> +
Don't have an access code? Request an Invite
<% end %> diff --git a/app/views/users/sessions/new.html.erb b/app/views/users/sessions/new.html.erb index c4918e9a..df778627 100644 --- a/app/views/users/sessions/new.html.erb +++ b/app/views/users/sessions/new.html.erb @@ -1,4 +1,4 @@ - +

Sign In

<%= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>

Sign in

@@ -10,12 +10,15 @@ <%= f.password_field :password %>
<% if devise_mapping.rememberable? -%> -
<%= f.check_box :remember_me %> <%= f.label :remember_me %>
+
<%= f.check_box :remember_me %> <%= f.label :remember_me %>
<% end -%>
<%= f.submit "Sign in" %>
- <%= render "devise/shared/links" %> + <%- if devise_mapping.recoverable? && controller_name != 'passwords' %> + <%= link_to "Forgot your password?", new_password_path(resource_name) %>
+ <% end -%> +
Don't have an account? Request an Invite
<% end %> diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb deleted file mode 100644 index 811f17ba..00000000 --- a/app/views/users/show.html.erb +++ /dev/null @@ -1,40 +0,0 @@ -<%# - # @file - # User profile page - # TODO: What URL? - # TODO: Is this code used? - #%> - -<% content_for :title, @user.name + "'s Profile | Metamaps" %> - -
- -

Recently Created Topics <%= link_to "see all", user_topics_path(@user)%>

-
-<% @topics.each do |topic| %> - <%= render topic %> -<% end %> -
-
- -

Recently Created Synapses <%= link_to "see all", user_synapses_path(@user)%>

-
-<% @synapses.each do |synapse| %> - <%= render synapse %> -<% end %> -
-
- -

Recently Created Maps <%= link_to "see all", user_maps_path(@user)%>

-
-<% @maps.each do |map| %> - <%= render map %> -<% end %> -
-
- -
- -

- Viewing Mapper: <%= @user.name %> -

diff --git a/config/routes.rb b/config/routes.rb index 59ee0f4e..960d6a38 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -2,20 +2,20 @@ ISSAD::Application.routes.draw do root to: 'main#home', via: :get - match 'console', to: 'main#console', via: :get, as: :console - match 'request', to: 'main#requestinvite', via: :get, as: :request match 'invite', to: 'main#invite', via: :get, as: :invite - match 'search', to: 'main#search', via: :get, as: :search + match '/search/topics', to: 'main#searchtopics', via: :get, as: :searchtopics + match '/search/maps', to: 'main#searchmaps', via: :get, as: :searchmaps + match '/search/mappers', to: 'main#searchmappers', via: :get, as: :searchmappers match 'maps/:id/savelayout', to: 'maps#savelayout', via: :put, as: :savelayout match 'topics/:map_id/:topic_id/removefrommap', to: 'topics#removefrommap', via: :post, as: :removefrommap match 'synapses/:map_id/:synapse_id/removefrommap', to: 'synapses#removefrommap', via: :post, as: :removefrommap resources :topics do - get :autocomplete_topic_name, :on => :collection + get :autocomplete_topic, :on => :collection end match 'topics/:id/:format', to: 'topics#json', via: :get, as: :json @@ -31,7 +31,11 @@ ISSAD::Application.routes.draw do match 'maps/:id/:format', to: 'maps#json', via: :get, as: :json devise_for :users, :path_names => { :sign_in => 'login', :sign_out => 'logout' } - resources :users do + devise_scope :user do + get "sign_out", :to => "devise/sessions#destroy" + end + + resources :users, except: :show do get :autocomplete_user_name, :on => :collection resources :topics, :only => [:index] resources :synapses, :only => [:index] @@ -40,60 +44,4 @@ ISSAD::Application.routes.draw do resources :mappings - # The priority is based upon order of creation: - # first created -> highest priority. - - # Sample of regular route: - # match 'products/:id' => 'catalog#view' - # Keep in mind you can assign values other than :controller and :action - - # Sample of named route: - # match 'products/:id/purchase' => 'catalog#purchase', :as => :purchase - # This route can be invoked with purchase_url(:id => product.id) - - # Sample resource route (maps HTTP verbs to controller actions automatically): - # resources :products - - # Sample resource route with options: - # resources :products do - # member do - # get 'short' - # post 'toggle' - # end - # - # collection do - # get 'sold' - # end - # end - - # Sample resource route with sub-resources: - # resources :products do - # resources :comments, :sales - # resource :seller - # end - - # Sample resource route with more complex sub-resources - # resources :products do - # resources :comments - # resources :sales do - # get 'recent', :on => :collection - # end - # end - - # Sample resource route within a namespace: - # namespace :admin do - # # Directs /admin/products/* to Admin::ProductsController - # # (app/controllers/admin/products_controller.rb) - # resources :products - # end - - # You can have the root of your site routed with "root" - # just remember to delete public/index.html. - # root :to => 'welcome#index' - - # See how all your routes lay out with "rake routes" - - # This is a legacy wild controller route that's not recommended for RESTful applications. - # Note: This route will make all actions in every controller accessible via GET requests. - # match ':controller(/:action(/:id))(.:format)' end diff --git a/public/assets/MMCCicon_add-e907e5cd1adb7cee2cacd99aabf8ed5d.png b/public/assets/MMCCicon_add-e907e5cd1adb7cee2cacd99aabf8ed5d.png new file mode 100644 index 0000000000000000000000000000000000000000..fdb4045fbe0d5b8afd121a59b99fab5be332f495 GIT binary patch literal 269 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 Hu0mjfk3Sw5 literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_info.png b/public/assets/MMCCicon_info.png new file mode 100644 index 0000000000000000000000000000000000000000..4594cba094f3ecd0551fdfa787129fd47ac8b660 GIT binary patch literal 673 zcmV;S0$%-zP)Bk4^#8%n~h#uS(p?LI+Bt zZLA@rg!>w~wzC!9rw95eHK)SXP|UY32hIZaLJ(SbvU=KkUqeq<9+-d&$)X#kR`Le* zEVSUI=Qc<(23Pvpe|9P3x;X$j#0Q}9CCXS4@6;DuWs)lMfN6>tfml)}ekkb&lYlm`mN z6jqIRuVs1>x>n(&Lop!yN6(YqC$f~$Hj9CkOMjBfT)NS@2kY0`Bv)w-V346cw@@J0 zwikOuW^$Q{Ic;{L%?f*0@Vcf^m-4;qDRmdiU45E^7BpW994KTO^ue|u=InIdEcZr} z)`8-m+~3lMBAaM^57|y<1jbeJ_s^4>EG>M2>h6DH`W0XR$T?XF`MK;800000NkvXX Hu0mjfk3Sw5 literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_invite-33ce02d3a0500b602c15e9192c3c4f66.png b/public/assets/MMCCicon_invite-33ce02d3a0500b602c15e9192c3c4f66.png new file mode 100644 index 0000000000000000000000000000000000000000..347ddc02ae11d4ccb36fab9ed1572f7e7f05b6f4 GIT binary patch literal 471 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?3oVGw3ym^DWNC@5Lt z8c`CQpH@L^K?3i4+5a-03f;iSu2<}}@mut%+^BUwe^34w&=~YK zGUvocsh?%ccMToxAKJQ>GslT#8q0#9soEP%*T`tRb!^CM4BExi;_y3sO1(3~4^_^O zlT`V#<3IE;+>(k}{Z%11|RE? zmp`f>i6pF9cYGb|Y{msvA$ouBtlY!+fbZ$!!`B&qNWEIWVAI^_gIpIbA9tI0{N~ps z&)&F+$Io_|$Npil(0~0S3_J%I9>;1t;W1!f2B8D@-e@0S_?i59_q@Fovw)Gp;OXk; Jvd$@?2>_mK!b1Q6 literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_invite.png b/public/assets/MMCCicon_invite.png new file mode 100644 index 0000000000000000000000000000000000000000..347ddc02ae11d4ccb36fab9ed1572f7e7f05b6f4 GIT binary patch literal 471 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?3oVGw3ym^DWNC@5Lt z8c`CQpH@L^K?3i4+5a-03f;iSu2<}}@mut%+^BUwe^34w&=~YK zGUvocsh?%ccMToxAKJQ>GslT#8q0#9soEP%*T`tRb!^CM4BExi;_y3sO1(3~4^_^O zlT`V#<3IE;+>(k}{Z%11|RE? zmp`f>i6pF9cYGb|Y{msvA$ouBtlY!+fbZ$!!`B&qNWEIWVAI^_gIpIbA9tI0{N~ps z&)&F+$Io_|$Npil(0~0S3_J%I9>;1t;W1!f2B8D@-e@0S_?i59_q@Fovw)Gp;OXk; Jvd$@?2>_mK!b1Q6 literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_logout-2b7d4dfff8cdc4d38089c082ac0c6929.png b/public/assets/MMCCicon_logout-2b7d4dfff8cdc4d38089c082ac0c6929.png new file mode 100644 index 0000000000000000000000000000000000000000..5f22796f8859633b247d42ba4c74e7f2d0ac2ed9 GIT binary patch literal 772 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 literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_private.png b/public/assets/MMCCicon_private.png new file mode 100644 index 0000000000000000000000000000000000000000..50e98e18ba8d8f9fdedb2c3a9e5cb183cac5ddd2 GIT binary patch literal 1169 zcmV;C1aA9@P)*+kLx|R_QXvI{&l$s^cczZg<3AW_(Qe!24-|>WYtq zj|hW1FRJ`-M8Ico8Srt&M~vHej+BoDfcx6fb)^vZwlo~0uYNzBPCKK~C>yFoQPfG2 zq_bMBbhlpeap@ctN3YL?*K#lR`+atLddgm2UYMN2LHnsmwXwwxD1T5RnmppiU~Q zP16Z$D+dP$h54WYxRi=bluBQLBS}6aS^(7hn54E%E-o&#QJ?_Mq(U7tY~Awn^FyN$ z>j1=(`z~^PeEiRPW@l%I?eFiikB<+d-tO)$J3l{X-{0RpliVZ+AlC5N7f^B$({dR= zq;V#_!^1=Cxq?d>gpzqhxi)#1^w*0Yfy z2d`7>qF0fmX}b1N0!XqyNn*`^SwTzybb3_*#Bsd#Q3A+ZkB*rQ2%Cwi zNUtgY!jctdRJsNr+YE1-v5V8Ys7FnD z6lhuA6p7;8aIH5=7j#&*ZljQuXsX-LOtztwVp%?Ki#GL<&%R*8-esv zqVcis0mqzfJ~q*AM6?y!#HKSd+k?IQhJ54SSkqUjHl@b99P-WRX$>fahauE;O;U>2 z3pwuvfOPL7-4Ux#k^?*{oW}69=rpFTgYLO#!w>0oZb;U%!H@^tw1a?UFjkXT&*ME= zRZ{saT88N+erhnU_%j3Q@mt;TQ6mx1L}Vgz1Y>OZZ!1B^kUu}H^!&PiZi9AT-gHuS jgTmXf6GckouK)u88{95w_D7s{00000NkvXXu0mjfe`y?C literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_public-1f8e2ccd3461f477899c0e0adb8fe501.png b/public/assets/MMCCicon_public-1f8e2ccd3461f477899c0e0adb8fe501.png new file mode 100644 index 0000000000000000000000000000000000000000..37a6fd07985fe2c0691bd950938414498a5599d1 GIT binary patch literal 1168 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 IM6N<$f;-N*)c^nh literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_settings.png b/public/assets/MMCCicon_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..ae56c5a95ca5f96f7d0ff5cd30c6976834202883 GIT binary patch literal 466 zcmV;@0WJQCP){`(cf-n#T!@q8zBe;QVpc}{tx&dy$2C{*=LEQj0V1#Z^+oT^2a@fN{3%QrP zAMC+B`+9d6VJ&}1WdnmE_GyXVVsT9XSLxDneXguEwa5X~J}BfpV#XcnrGv2Vw@l$I85 zwB5g|P^v%JSUimD2fBhfPiM=uTgkgF=~dE7s_^85AqAldsf=>u`q!^UrgmZvs2-!q z<%rVEO#4CtRPu+3cc2(z;l&PfK9QMavW0XG0(Kbtl7#@oG){ZiffJ%fu*mL5uE_+b zzVSe;KNt-x2n!9FWzvw&0GlXgGz+O@u85szTur_%4{;HB7{{rM0(b&%cBSJtxzPk1 z$2_=;vJeR%0VH6deV_zNUSoOR+aF~VRcd4Uvj++I4<7*r07bz20UhhA{r~^~07*qo IM6N<$f;-N*)c^nh literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_synapse-ddb1ae0d586aa9b787244b3648bde538.png b/public/assets/MMCCicon_synapse-ddb1ae0d586aa9b787244b3648bde538.png new file mode 100644 index 0000000000000000000000000000000000000000..9fea87f0f4fa6259f5cefdae9e39a841440a57f3 GIT binary patch literal 603 zcmV-h0;K(kP)AZ~6BH(BvjLfa+LDnF;=^a( zoy|!nC7>kl-m~AGQR1%aqAkZRP+Uiux2+Z+Wd4~J5C^t|!~l3Av)z&cnam%V2bqNl z_>dG(;J@_irz!iPC{PT*M-cWyP@t6gF?bJR-=_k~Ca)v#VD^0}(0lyb=sK8v9}0*W z@K)?|E6{^KOx&|#pHqSJ0(fioxfIAoHi^bQhXR)s@J{SgD^O0@Fn_G&VzF7FYgfJ0_7+YUd} zccvy7TohPqP`2^Zox7&o#5oc82L!zB9x(NIXfzr;**HCS2*HTE4S1-H)&P%(L}lnm z&I%~Ij92o`2_C~nhj|8CWrp#)m<8Op!MpZ>@rmo*(Bsp{@VO_~DAD%?)CR>ljhe9E zXcMThEo{%geq-zL914gP_P;5?V-#>%@%WSyylWpw7Hl#{v}ZCKom=~#df?*;MD|& literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_synapse.png b/public/assets/MMCCicon_synapse.png new file mode 100644 index 0000000000000000000000000000000000000000..9fea87f0f4fa6259f5cefdae9e39a841440a57f3 GIT binary patch literal 603 zcmV-h0;K(kP)AZ~6BH(BvjLfa+LDnF;=^a( zoy|!nC7>kl-m~AGQR1%aqAkZRP+Uiux2+Z+Wd4~J5C^t|!~l3Av)z&cnam%V2bqNl z_>dG(;J@_irz!iPC{PT*M-cWyP@t6gF?bJR-=_k~Ca)v#VD^0}(0lyb=sK8v9}0*W z@K)?|E6{^KOx&|#pHqSJ0(fioxfIAoHi^bQhXR)s@J{SgD^O0@Fn_G&VzF7FYgfJ0_7+YUd} zccvy7TohPqP`2^Zox7&o#5oc82L!zB9x(NIXfzr;**HCS2*HTE4S1-H)&P%(L}lnm z&I%~Ij92o`2_C~nhj|8CWrp#)m<8Op!MpZ>@rmo*(Bsp{@VO_~DAD%?)CR>ljhe9E zXcMThEo{%geq-zL914gP_P;5?V-#>%@%WSyylWpw7Hl#{v}ZCKom=~#df?*;MD|& literal 0 HcmV?d00001 diff --git a/public/assets/MMCCicon_topic-f3343e0b8ed9c74cd084e65a9a2ae9a8.png b/public/assets/MMCCicon_topic-f3343e0b8ed9c74cd084e65a9a2ae9a8.png new file mode 100644 index 0000000000000000000000000000000000000000..90457c0b0d2e3c80843ab481ead132c3b13e6a38 GIT binary patch literal 892 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 JPDHLkV1l#EE@=P& literal 0 HcmV?d00001 diff --git a/public/assets/account_icon.png b/public/assets/account_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..403c656d0829f3325cbf07b2ce6bc70d6a7ac54c GIT binary patch literal 3327 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 JPDHLkV1l#EE@=P& literal 0 HcmV?d00001 diff --git a/public/assets/application-2c86fcfea5ad67960a6daa7b4946e241.css.gz b/public/assets/application-2c86fcfea5ad67960a6daa7b4946e241.css.gz deleted file mode 100644 index 1739873a6d720eeffee28e734236af3c8e6964c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9960 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

$N84^4aCqu#7!)$`}{N3^!6-1td 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 UyU*VTwtw(FusWUkY>*KD1LH#{1poj5 literal 0 HcmV?d00001 diff --git a/public/assets/application-c3fe52825aa0abf02fc60756d5e1dcec.js b/public/assets/application-c3fe52825aa0abf02fc60756d5e1dcec.js deleted file mode 100644 index 94d26e49..00000000 --- a/public/assets/application-c3fe52825aa0abf02fc60756d5e1dcec.js +++ /dev/null @@ -1,36 +0,0 @@ -/*! - * jQuery JavaScript Library v1.8.1 - * http://jquery.com/ - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * - * Copyright 2012 jQuery Foundation and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: Thu Aug 30 2012 17:17:22 GMT-0400 (Eastern Daylight Time) - */ -function BestInPlaceEditor(e){this.element=e,this.initOptions(),this.bindForm(),this.initNil(),jQuery(this.activator).bind("click",{editor:this},this.clickHandler)}function openAnalyze(){analyzeOpen=!0,findOpen&&closeFind(),organizeOpen&&closeOrganize(),$("#sideOptionFind").css("z-index","8"),$("#sideOptionAnalyze, #closeAnalyze").css("z-index","10"),$("#sideOptionOrganize").css("z-index","8"),$("#sideOptionAnalyze").animate({width:"100px",height:"76px"},100),$("#closeAnalyze").css("display","block"),$("#sideOptionAnalyze").css("cursor","default");var e=Object.keys(Mconsole.graph.nodes).length,t=0;Mconsole.graph.eachNode(function(e){e.eachAdjacency(function(){t++})}),t/=2,$(".analysis").html("

"+e+" topics

"+t+" synapses

")}function closeAnalyze(){analyzeOpen=!1,$("#closeAnalyze").css("display","none"),$("#sideOptionAnalyze").css("cursor","pointer"),$("#sideOptionAnalyze").animate({width:"64px",height:"32px"},100)}function switchVisible(e,t){categoryVisible[e]==1?hideCategory(e,t):categoryVisible[e]==0&&showCategory(e,t)}function hideCategory(e,t){t==null&&(t=500),Mconsole.graph.eachNode(function(t){t.getData("metacode")==e&&(t.setData("alpha",.4,"end"),t.eachAdjacency(function(e){e.setData("alpha",.4,"end")}))}),Mconsole.fx.animate({modes:["node-property:alpha","edge-property:alpha"],duration:t})}function showCategory(e,t){t==null&&(t=500),Mconsole.graph.eachNode(function(t){t.getData("metacode")==e&&(t.setData("alpha",1,"end"),t.eachAdjacency(function(e){e.setData("alpha",1,"end")}))}),Mconsole.fx.animate({modes:["node-property:alpha","edge-property:alpha"],duration:t})}function hideAll(e){e==null&&(e=500),Mconsole.graph.eachNode(function(e){!e.getData("greenCircle")&&!e.getData("whiteCircle")&&(e.setData("alpha",.4,"end"),e.eachAdjacency(function(e){e.setData("alpha",.4,"end")}))}),Mconsole.fx.animate({modes:["node-property:alpha","edge-property:alpha"],duration:e})}function showAll(e){e==null&&(e=500),Mconsole.graph.eachNode(function(e){e.setData("alpha",1,"end"),e.eachAdjacency(function(e){e.setData("alpha",1,"end")})}),Mconsole.fx.animate({modes:["node-property:alpha","edge-property:alpha"],duration:e})}function onCanvasSearch(e,t,n){e=name.toLowerCase(),Mconsole.graph.eachNode(function(r){nodeName=r.name.toLowerCase(),name!=null?nodeName.indexOf(e)!==-1&&e!=""?r.setData("whiteCircle",!0):r.setData("whiteCircle",!1):t!=null?r.getData("inmaps").indexOf(parseInt(t))!==-1?r.setData("whiteCircle",!0):r.setData("whiteCircle",!1):n!=null&&(r.getData("userid").toString()==n?r.setData("whiteCircle",!0):r.setData("whiteCircle",!1)),Mconsole.plot()})}function clearCanvas(){Mconsole.graph.eachNode(function(e){Mconsole.graph.removeNode(e.id),Mconsole.labels.disposeLabel(e.id),delete Mconsole.labels.labels[""+e.id]}),Mconsole.plot()}function clearCanvasExceptRoot(){var e=new Array;Mconsole.graph.eachNode(function(t){e.push(t.id)});var t=Mconsole.graph.nodes[Mconsole.root];e.forEach(function(e,n){e!=t.id&&(Mconsole.graph.removeNode(e),Mconsole.labels.hideLabel(e),$("#topic_"+e+"_label").hide())}),fetchRelatives(t)}function clearFoundData(){Mconsole.graph.eachNode(function(e){e.getData("greenCircle")===!0&&(Mconsole.graph.removeNode(e.id),Mconsole.labels.hideLabel(e.id),$("#topic_"+e.id+"_label").hide())}),Mconsole.plot()}function openFind(){findOpen=!0,analyzeOpen&&closeAnalyze(),organizeOpen&&closeOrganize(),$("#sideOptionFind, #closeFind").css("z-index","10"),$("#sideOptionAnalyze").css("z-index","9"),$("#sideOptionOrganize").css("z-index","8"),firstVal=$('#sideOptionFind option[value="name"]').attr("selected"),secondVal=$('#sideOptionFind option[value="metacode"]').attr("selected"),thirdVal=$('#sideOptionFind option[value="map (by name)"]').attr("selected"),fourthVal=$('#sideOptionFind option[value="mapper (by name)"]').attr("selected"),firstVal==="selected"||thirdVal==="selected"||fourthVal==="selected"?$("#sideOptionFind").animate({width:"305px",height:"76px"},100,function(){$("#topic_by_name_input").focus()}):secondVal==="selected"?$("#sideOptionFind").animate({width:"380px",height:"463px"},100,function(){}):thirdVal==="selected"?$("#sideOptionFind").animate({width:"305px",height:"76px"},100,function(){$("#map_by_name_input").focus()}):fourthVal==="selected"&&$("#sideOptionFind").animate({width:"305px",height:"76px"},100,function(){$("#mapper_by_name_input").focus()}),$("#closeFind, #findWhere").css("display","block"),$("#sideOptionFind").css("cursor","default")}function closeFind(){clearFoundData(),findOpen=!1,$("#closeFind, #findWhere").css("display","none"),$("#sideOptionFind").css("cursor","pointer"),$("#sideOptionFind").animate({width:"45px",height:"32px"},100)}function selectEdgeOnClickHandler(e,t){if(Mconsole.busy)return;if(t.altKey){editEdge(e,t);return}var n=MetamapsModel.selectedEdges.indexOf(e);n==-1?n=!1:n!=-1&&(n=!0),n&&t.shiftKey?deselectEdge(e):!n&&t.shiftKey?selectEdge(e):n&&!t.shiftKey?deselectAllEdges():!n&&!t.shiftKey&&(deselectAllEdges(),selectEdge(e)),Mconsole.plot()}function nodeDoubleClickHandler(e,t){keepFromCommons(e)}function enterKeyHandler(){var e=MetamapsModel.selectedNodes.slice(0),t=e.length;for(var r=0;r=Mconsole.canvas.scaleOffsetX*d&&Mconsole.canvas.scaleOffsetX*d>=1&&Mconsole.canvas.scale(d,d),Mconsole.canvas.scaleOffsetX<.5?Mconsole.canvas.viz.labels.hideLabels(!0):Mconsole.canvas.scaleOffsetX>.5&&Mconsole.canvas.viz.labels.hideLabels(!1),lastDist=p}}function graphSettings(e,t){var n={injectInto:"infovis",Navigation:{enable:!0,type:"HTML",panning:"avoid nodes",zooming:28},Node:{overridable:!0,color:"#2D6A5D",type:"customNode",dim:25},Edge:{overridable:!0,color:"#222222",type:"customEdge",lineWidth:2,alpha:.4},Label:{type:"HTML",size:20},Tips:{enable:!1,onShow:function(e,t){}},Events:{enable:!0,enableForEdges:!0,type:"HTML",onMouseMove:function(e,t,n){onMouseMoveHandler(e,t,n)},onDragMove:function(e,t,n){onDragMoveTopicHandler(e,t,n)},onDragEnd:function(e,t,n){onDragEndTopicHandler(e,t,n,!1)},onDragCancel:function(e,t,n){onDragCancelHandler(e,t,n,!1)},onTouchStart:function(e,t,n){Mconsole.events.touched=!0,touchPos=t.getPos();var r=Mconsole.canvas,i=r.translateOffsetX;oy=r.translateOffsetY,sx=r.scaleOffsetX,sy=r.scaleOffsetY,touchPos.x*=sx,touchPos.y*=sy,touchPos.x+=i,touchPos.y+=oy,touchDragNode=e},onTouchMove:function(e,t,n){touchDragNode?onDragMoveTopicHandler(touchDragNode,t,n):(touchPanZoomHandler(t,n),Mconsole.labels.hideLabel(Mconsole.graph.getNode(MetamapsModel.showcardInUse)))},onTouchEnd:function(e,t,n){},onTouchCancel:function(e,t,n){},onClick:function(e,t,n){if(MetamapsModel.boxStartCoordinates){Mconsole.busy=!1,MetamapsModel.boxEndCoordinates=t.getPos(),selectNodesWithBox();return}if(n.target.id!="infovis-canvas")return!1;e.nodeFrom?selectEdgeOnClickHandler(e,n):e&&!e.nodeFrom?selectNodeOnClickHandler(e,n):(MetamapsModel.didPan||hideCards(),canvasDoubleClickHandler(t.getPos(),n))}},iterations:200,levelDistance:200,onCreateLabel:function(t,n){onCreateLabelHandler(e,t,n)},onPlaceLabel:function(e,t){onPlaceLabelHandler(e,t)}};return t&&(n.Edge.type="customEdgeEmbed"),e=="centered"&&(n.background={CanvasStyles:{strokeStyle:"#333",lineWidth:1.5}},n.levelDistance=400,n.Events.enableForEdges=!0,n.Events.onDragEnd=function(e,t,n){onDragEndTopicHandler(e,t,n,!1)},n.Events.onDragCancel=function(e,t,n){onDragCancelHandler(e,t,n,!0)}),n}function hideCards(){$("#edit_synapse").hide(),MetamapsModel.edgecardInUse=null,hideCurrentCard()}function drawSelectBox(e,t){Mconsole.plot();var n=Mconsole.canvas.getCtx(),r=MetamapsModel.boxStartCoordinates.x,i=MetamapsModel.boxStartCoordinates.y,s=e.getPos().x,o=e.getPos().y;Mconsole.plot(),n.beginPath(),n.moveTo(r,i),n.lineTo(r,o),n.lineTo(s,o),n.lineTo(s,i),n.lineTo(r,i),n.strokeStyle="black",n.stroke()}function selectNodesWithBox(){var e=MetamapsModel.boxStartCoordinates.x,t=MetamapsModel.boxStartCoordinates.y,n=MetamapsModel.boxEndCoordinates.x,r=MetamapsModel.boxEndCoordinates.y;Mconsole.graph.eachNode(function(i){var s=gType=="centered"?i.pos.toComplex().x:i.pos.x,o=gType=="centered"?i.pos.toComplex().y:i.pos.y;if(es&&s>n&&t>o&&o>r||e>s&&s>n&&to&&o>r){var u=MetamapsModel.selectedNodes.indexOf(i);u==-1?selectNode(i):u!=-1&&deselectNode(i)}}),MetamapsModel.boxStartCoordinates=!1,MetamapsModel.boxEndCoordinates=!1,Mconsole.plot()}function onMouseMoveHandler(e,t,n){if(Mconsole.busy)return;var e=t.getNode(),r=t.getEdge();if(e!=0){MetamapsModel.edgeHoveringOver&&onMouseLeave(MetamapsModel.edgeHoveringOver);return}r==0&&MetamapsModel.edgeHoveringOver!=0?onMouseLeave(MetamapsModel.edgeHoveringOver):r!=0&&MetamapsModel.edgeHoveringOver==0?onMouseEnter(r):r!=0&&MetamapsModel.edgeHoveringOver!=r&&(onMouseLeave(MetamapsModel.edgeHoveringOver),onMouseEnter(r)),MetamapsModel.edgeHoveringOver=r}function onMouseEnter(e){$("canvas").css("cursor","pointer");var t=MetamapsModel.selectedEdges.indexOf(e);t==-1&&(e.setData("showDesc",!0,"current"),e.setDataset("end",{lineWidth:4,alpha:1}),Mconsole.fx.animate({modes:["edge-property:lineWidth:color:alpha"],duration:100}),Mconsole.plot())}function onMouseLeave(e){$("canvas").css("cursor","default");var t=MetamapsModel.selectedEdges.indexOf(e);t==-1&&(e.setData("showDesc",!1,"current"),e.setDataset("end",{lineWidth:2,alpha:.4}),Mconsole.fx.animate({modes:["edge-property:lineWidth:color:alpha"],duration:100})),Mconsole.plot()}function onDragEndTopicHandler(e,t,n,r){if(tempInit&&tempNode2==null)$("#topic_addSynapse").val("true"),$("#new_topic").fadeIn("fast"),addMetacode(),$("#topic_name").focus();else if(tempInit&&tempNode2!=null)$("#topic_addSynapse").val("false"),$("#synapse_topic1id").val(tempNode.id),$("#synapse_topic2id").val(tempNode2.id),$("#synapse_desc").autocomplete("enable"),$("#new_synapse").fadeIn("fast"),$("#synapse_desc").focus(),tempNode=null,tempNode2=null,tempInit=!1;else if(dragged!=0&&goRealtime){saveLayout(dragged);for(var i=0;i

$_metacode_$

$_metacode_$
$_mk_permission_$
$_edit_permission_$
$_name_$
Added by: $_username_$
$_desc_$

'}function replaceVariables(e,t){var n,r,i;authorizeToEdit(t)?(n='[go]',r="",i=""):(n="",t.getData("link")!=""?(r='',i=""):(r="",i=""));var s=new Array;for(var o in imgArray)imgArray.hasOwnProperty(o)&&o!=t.getData("metacode")&&s.push(o);s.sort(),s.unshift(t.getData("metacode"));var u="'[";for(var a in s)u+='["'+s[a]+'","'+s[a]+'"],';u=u.slice(0,-1),u+="]'";var f="Click to add description.",l="Click to add link.",c="";userid==t.getData("userid")&&(c='
Permissions:  $_permission_$
');var h=["commons","public","private"],p="'[";for(var a in h)p+='["'+h[a]+'","'+h[a]+'"],';return p=p.slice(0,-1),p+="]'",c=c.replace(/\$_permission_choices_\$/g,p),e=e.replace(/\$_edit_permission_\$/g,c),e=e.replace(/\$_permission_\$/g,t.getData("permission")),e=e.replace(/\$_mk_permission_\$/g,mk_permission(t)),e=e.replace(/\$_id_\$/g,t.id),e=e.replace(/\$_metacode_\$/g,t.getData("metacode")),e=e.replace(/\$_imgsrc_\$/g,imgArray[t.getData("metacode")].src),e=e.replace(/\$_name_\$/g,t.name),e=e.replace(/\$_userid_\$/g,t.getData("userid")),e=e.replace(/\$_username_\$/g,t.getData("username")),e=e.replace(/\$_metacode_choices_\$/g,u),e=e.replace(/\$_go_link_\$/g,n),e=e.replace(/\$_a_tag_\$/g,r),e=e.replace(/\$_close_a_tag_\$/g,i),e=e.replace(/\$_link_nil_\$/g,l),t.getData("link")==""&&authorizeToEdit(t)?e=e.replace(/\$_link_\$/g,l):e=e.replace(/\$_link_\$/g,t.getData("link")),e=e.replace(/\$_desc_nil_\$/g,f),t.getData("desc")==""&&authorizeToEdit(t)?e=e.replace(/\$_desc_\$/g,f):e=e.replace(/\$_desc_\$/g,t.getData("desc")),e}function generateLittleHTML(e){var t='
$_name_$
';return userid==null||mapid==null||!mapperm?t+=' ':mapperm&&(t+=' '),userid==e.getData("userid")&&(t+=' '),t+="
",t=t.replace(/\$_id_\$/g,e.id),t=t.replace(/\$_mapid_\$/g,mapid),t=t.replace(/\$_name_\$/g,e.name),t}function generateCenteredLittleHTML(e){var t='
$_name_$
';return t+=' ',t+="
",t=t.replace(/\$_id_\$/g,e.id),t=t.replace(/\$_name_\$/g,e.name),t}function hideCurrentCard(){if(MetamapsModel.showcardInUse){var e=Mconsole.graph.getNode(MetamapsModel.showcardInUse);hideCard(e)}}function hideCard(e){var t=".showcard";e!=null&&(t+=".topic_"+e.id),$(t).fadeOut("fast",function(){e.setData("dim",25,"current"),Mconsole.labels.hideLabel(Mconsole.graph.getNode(e.id),!0),Mconsole.plot()}),MetamapsModel.showcardInUse=null}function bindNameContainerCallbacks(e,t){e.onmouseover=function(){$(".name.topic_"+t.id+" .nodeOptions").css("display","block")},e.onmouseout=function(){$(".name.topic_"+t.id+" .nodeOptions").css("display","none")},$(e).find(".label").click(function(e){MetamapsModel.showcardInUse!=null&&(currentOpenNode=Mconsole.graph.getNode(MetamapsModel.showcardInUse),currentOpenNode.setData("dim",25,"current"),Mconsole.labels.hideLabel(currentOpenNode,!0),Mconsole.plot()),populateShowCard(t);var n=$("#"+t.id).css("top"),r=parseInt($("#"+t.id).css("left")),i=$("#topic_"+t.id+"_label").width();i/=2,r=r+i+"px",$("#showcard").css("top",n),$("#showcard").css("left",r),$(".showcard.topic_"+t.id).fadeIn("fast"),t.setData("dim",1,"current"),MetamapsModel.showcardInUse=t.id,Mconsole.plot(),Mconsole.labels.hideLabel(Mconsole.graph.getNode(t.id))})}function populateShowCard(e){var t=document.getElementById("showcard");t.innerHTML="";var n=generateShowcardHTML();n=replaceVariables(n,e),t.className="showcard topic_"+e.id;if(authorizeToEdit(e)){var r=document.createElement("div");r.className="permission canEdit",r.innerHTML=n,t.appendChild(r)}else t.innerHTML=n;$(t).find(".best_in_place_metacode").bind("ajax:success",function(){var n=$(this).html();$(t).find("img.icon").attr("alt",n),$(t).find("img.icon").attr("src",imgArray[n].src),e.setData("metacode",n),Mconsole.plot()}),$(t).find(".best_in_place_name").bind("ajax:success",function(){var t=$(this).html();$("#topic_"+e.id+"_label").find(".label").html(t),e.name=t}),$(t).find(".best_in_place_desc").bind("ajax:success",function(){$(t).find(".scroll").mCustomScrollbar("update");var n=$(this).html();e.setData("desc",n)}),$(t).find(".best_in_place_link").bind("ajax:success",function(){var n=$(this).html();$(t).find(".go-link").attr("href",n),e.setData("link",n)}),$(t).find(".permActivator").bind("mouseover",function(){clearTimeout(MetamapsModel.topicPermTimer2),that=this,MetamapsModel.topicPermTimer1=setTimeout(function(){MetamapsModel.topicPermSliding||(MetamapsModel.topicPermSliding=!0,$(that).animate({width:"203px",height:"37px"},300,function(){MetamapsModel.topicPermSliding=!1}))},300)}),$(t).find(".permActivator").bind("mouseout",function(){clearTimeout(MetamapsModel.topicPermTimer1),that=this,MetamapsModel.topicPermTimer2=setTimeout(function(){MetamapsModel.topicPermSliding||(MetamapsModel.topicPermSliding=!0,$(that).animate({height:"16px",width:"16px"},300,function(){MetamapsModel.topicPermSliding=!1}))},800)}),$(t).find(".best_in_place_permission").bind("ajax:success",function(){var t=$(this).html(),n=$(this).parents(".cardSettings").find(".mapPerm");n.attr("title",t),t=="commons"?n.html("co"):t=="public"?n.html("pu"):t=="private"&&n.html("pr"),e.setData("permission",t)}),$(".showcard.topic_"+e.id).find(".scroll").mCustomScrollbar(),$(".showcard").find("img.icon").click(function(){hideCard(e)})}function organize(){Mconsole.compute(),Mconsole.fx.animate({modes:["linear"],hideLabels:!0})}function openOrganize(){organizeOpen=!0,findOpen&&closeFind(),analyzeOpen&&closeAnalyze(),$("#sideOptionFind").css("z-index","8"),$("#sideOptionAnalyze").css("z-index","9"),$("#sideOptionOrganize, #closeOrganize").css("z-index","10"),$("#sideOptionOrganize").animate({width:"100px",height:"76px"},100),$("#closeOrganize").css("display","block"),$("#sideOptionOrganize").css("cursor","default")}function closeOrganize(){organizeOpen=!1,$("#closeOrganize").css("display","none"),$("#sideOptionOrganize").css("cursor","pointer"),$("#sideOptionOrganize").animate({width:"75px",height:"32px"},100)}function authorizeToEdit(e){return!userid||e.data.$permission!="commons"&&e.data.$userid!=userid?!1:!0}function mk_permission(e){if(e.getData("permission")=="commons")return"co";if(e.getData("permission")=="public")return"pu";if(e.getData("permission")=="private")return"pr"}function centerOn(e){if(!Mconsole.busy){var t=Mconsole.graph.getNode(e);$("h1.index").html("Viewing Topic: "+t.name),window.history.pushState(t.name,"Metamaps","/topics/"+t.id),Mconsole.onClick(t.id,{hideLabels:!1,duration:1e3,onComplete:function(){fetchRelatives(t)}})}}function editEdge(e,t){if(authorizeToEdit(e)){var n=$("#edit_synapse").css("left"),r=$("#edit_synapse").css("top");$("#edit_synapse").remove(),deselectEdge(e);var i=document.createElement("div");i.setAttribute("id","edit_synapse"),i.className="permission canEdit",$(".main .wrapper").append(i),populateEditEdgeForm(e),$("#edit_synapse").css("position","absolute"),t?($("#edit_synapse").css("left",t.clientX),$("#edit_synapse").css("top",t.clientY)):($("#edit_synapse").css("left",n),$("#edit_synapse").css("top",r)),$("#edit_synapse").show(),MetamapsModel.edgecardInUse=e.data.$id}else!authorizeToEdit(e)&&userid&&alert("You don't have the permissions to edit this synapse.")}function populateEditEdgeForm(e){add_perms_form(e),add_direction_form(e),add_name_form(e)}function add_name_form(e){var t='Click to add description.';$("#edit_synapse").append('
' -),$("#edit_synapse_name").attr("class","best_in_place best_in_place_desc"),$("#edit_synapse_name").attr("data-object","synapse"),$("#edit_synapse_name").attr("data-attribute","desc"),$("#edit_synapse_name").attr("data-type","input"),$("#edit_synapse_name").attr("data-nil",t),$("#edit_synapse_name").attr("data-url","/synapses/"+e.getData("id")),$("#edit_synapse_name").html(e.getData("desc")),$("#edit_synapse_name").html().trim()==""&&$("#edit_synapse_name").html(t),$("#edit_synapse_name").bind("ajax:success",function(){var n=$(this).html();n==t?e.setData("desc",""):e.setData("desc",n),selectEdge(e),Mconsole.plot()})}function add_perms_form(e){$("#edit_synapse").append('
'),$("#edit_synapse .mapPerm").html(mk_permission(e)),userid==e.getData("userid")&&($("#edit_synapse").append('
'),$("#edit_synapse .permActivator").append('
'),$("#edit_synapse .editSettings").append("Permissions:"),$("#edit_synapse .editSettings").append(''),$("#edit_synapse .click-to-edit").attr("title","Click to Edit"),$("#edit_synapse .click-to-edit").append(best_in_place_perms(e)),$("#edit_synapse .editSettings").append('
'),$("#edit_synapse").find(".best_in_place_permission").bind("ajax:success",function(){var e=$(this).html();switch(e){case"commons":$("#edit_synapse .mapPerm").html("co");break;case"public":$("#edit_synapse .mapPerm").html("pu");break;case"private":$("#edit_synapse .mapPerm").html("pr")}}),$("#edit_synapse .permActivator").bind("mouseover",function(){clearTimeout(MetamapsModel.edgePermTimer2),that=this,MetamapsModel.edgePermTimer1=setTimeout(function(){MetamapsModel.edgePermSliding||(MetamapsModel.edgePermSliding=!0,$(that).animate({width:"203px",height:"37px"},300,function(){MetamapsModel.edgePermSliding=!1}))},300)}),$("#edit_synapse .permActivator").bind("mouseout",function(){clearTimeout(MetamapsModel.edgePermTimer1),that=this,MetamapsModel.edgePermTimer2=setTimeout(function(){MetamapsModel.edgePermSliding||(MetamapsModel.edgePermSliding=!0,$(that).animate({height:"16px",width:"16px"},300,function(){MetamapsModel.edgePermSliding=!1}))},800)}))}function add_direction_form(e){$("#edit_synapse").append(''),$("#edit_synapse").append(''),$("#edit_synapse").append(''),$("#edit_synapse").append('');if(e.nodeFrom.pos.x=0;t-=1){var n=MetamapsModel.selectedEdges[t];deselectEdge(n)}}function deselectAllNodes(){var e=MetamapsModel.selectedNodes.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedNodes[t];deselectNode(n)}}function removeEdge(e){var t=e.getData("id");$.ajax({type:"DELETE",url:"/synapses/"+t,success:function(){hideEdge(e)}})}function hideEdge(e){var t=e.nodeFrom.id,n=e.nodeTo.id;e.setData("alpha",0,"end"),Mconsole.fx.animate({modes:["edge-property:alpha"],duration:1e3}),Mconsole.graph.removeAdjacence(t,n),Mconsole.plot()}function hideSelectedEdges(){var e=MetamapsModel.selectedEdges.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedEdges[t];hideEdge(n)}MetamapsModel.selectedEdges=new Array}function removeSelectedEdges(){var e=MetamapsModel.selectedEdges.length;for(var t=e-1;t>=0;t-=1){if(mapid!=null){var n=MetamapsModel.selectedEdges[t],r=n.getData("id");$.ajax({type:"POST",url:"/synapses/"+mapid+"/"+r+"/removefrommap"})}hideEdge(n)}MetamapsModel.selectedEdges=new Array}function deleteSelectedEdges(){var e=MetamapsModel.selectedEdges.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedEdges[t],r=n.getData("id");$.ajax({type:"DELETE",url:"/synapses/"+r}),hideEdge(n)}MetamapsModel.selectedEdges=new Array}function selectNode(e){if(MetamapsModel.selectedNodes.indexOf(e)!=-1)return;e.selected=!0,e.setData("dim",30,"current"),e.setData("whiteCircle",!0),e.eachAdjacency(function(e){selectEdge(e)}),MetamapsModel.selectedNodes.push(e)}function deselectNode(e){delete e.selected,e.setData("whiteCircle",!1),e.eachAdjacency(function(e){deselectEdge(e)}),e.setData("dim",25,"current"),MetamapsModel.selectedNodes.splice(MetamapsModel.selectedNodes.indexOf(e),1)}function selectEdge(e){if(MetamapsModel.selectedEdges.indexOf(e)!=-1)return;e.setData("showDesc",!0,"current"),MetamapsModel.embed?MetamapsModel.embed&&e.setDataset("end",{lineWidth:4,color:"#999",alpha:1}):e.setDataset("end",{lineWidth:4,color:"#FFFFFF",alpha:1}),Mconsole.fx.animate({modes:["edge-property:lineWidth:color:alpha"],duration:100}),MetamapsModel.selectedEdges.push(e)}function deselectEdge(e){e.setData("showDesc",!1,"current"),e.setDataset("end",{lineWidth:2,color:"#222222",alpha:.4}),MetamapsModel.edgeHoveringOver==e&&(e.setData("showDesc",!0,"current"),e.setDataset("end",{lineWidth:4,color:"#222222",alpha:1})),Mconsole.fx.animate({modes:["edge-property:lineWidth:color:alpha"],duration:100}),MetamapsModel.selectedEdges.splice(MetamapsModel.selectedEdges.indexOf(e),1)}function hideNode(e){var t=Mconsole.graph.getNode(e);if(e==Mconsole.root&&gType=="centered"){alert("You can't hide this topic, it is the root of your graph.");return}deselectNode(t),t.setData("alpha",0,"end"),t.eachAdjacency(function(e){e.setData("alpha",0,"end")}),Mconsole.fx.animate({modes:["node-property:alpha","edge-property:alpha"],duration:1e3}),Mconsole.graph.removeNode(e),Mconsole.labels.disposeLabel(e),delete Mconsole.labels.labels[""+e]}function hideSelectedNodes(){var e=MetamapsModel.selectedNodes.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedNodes[t];hideNode(n.id)}}function removeNode(e){var t=Mconsole.graph.getNode(e);deselectNode(t),mapperm&&$.ajax({type:"POST",url:"/topics/"+mapid+"/"+e+"/removefrommap"})}function removeSelectedNodes(){if(mapperm){var e=MetamapsModel.selectedNodes.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedNodes[t];removeNode(n.id)}}}function deleteNode(e){if(e==Mconsole.root&&gType=="centered"){alert("You can't delete this topic, it is the root of your graph.");return}$.ajax({type:"DELETE",url:"/topics/"+e})}function deleteSelectedNodes(){var e=MetamapsModel.selectedNodes.length;for(var t=e-1;t>=0;t-=1){var n=MetamapsModel.selectedNodes[t];deleteNode(n.id)}}function addHoverForSettings(){$(".permActivator").unbind("mouseover"),$(".permActivator").unbind("mouseout");var e=!1,t,n;$(".permActivator").bind("mouseover",function(){clearTimeout(n),that=this,t=setTimeout(function(){e||(e=!0,$(that).animate({width:"203px",height:"37px"},300,function(){e=!1}))},300)}),$(".permActivator").bind("mouseout",function(){clearTimeout(t),that=this,n=setTimeout(function(){e||(e=!0,$(that).animate({height:"16px",width:"16px"},300,function(){e=!1}))},800)}),$(".best_in_place_permission").unbind("ajax:success"),$(".best_in_place_permission").bind("ajax:success",function(){var e=$(this).html(),t=$(this).parents(".cardSettings").find(".mapPerm");t.attr("title",e),e=="commons"?t.html("co"):e=="public"?t.html("pu"):e=="private"&&t.html("pr")})}function saveLayoutAll(){var e="";if(gType=="arranged"||gType=="chaotic")Mconsole.graph.eachNode(function(t){e=e+t.getData("mappingid")+"/"+t.pos.x+"/"+t.pos.y+","}),e=e.slice(0,-1),$("#map_coordinates").val(e),$("#saveMapLayout").submit()}function saveLayout(e){var t=Mconsole.graph.getNode(e);$("#map_coordinates").val(t.getData("mappingid")+"/"+t.pos.x+"/"+t.pos.y),$("#saveMapLayout").submit(),dragged=0,$("#saveLayout").attr("value","Saved!"),setTimeout(function(){$("#saveLayout").attr("value","Save Layout")},1500)}function saveToMap(){var e="",t="",n=new Array;Mconsole.graph.eachNode(function(t){if(categoryVisible[t.getData("metacode")]==0)return;var r,i;if(t.pos.x&&t.pos.y)r=t.pos.x,i=t.pos.y;else var r=Math.cos(t.pos.theta)*t.pos.rho,i=Math.sin(t.pos.theta)*t.pos.rho;e+=t.id+"/"+r+"/"+i+",",t.eachAdjacency(function(e){n.push(e.getData("id"))})}),n=$.grep(n,function(e,t){return $.inArray(e,n)===t}),t=n.join(),e=e.slice(0,-1),$("#map_topicsToMap").val(e),$("#map_synapsesToMap").val(t),$("#new_map").fadeIn("fast")}function addMetacode(){metacodeIMGinit||($("#metacodeImg").CloudCarousel({titleBox:$("#metacodeImgTitle"),yRadius:40,xPos:150,yPos:40,speed:.15,mouseWheel:!0,bringToFront:!0}),metacodeIMGinit=!0)}function fetchRelatives(e){var t=$.ajax({type:"Get",url:"/topics/"+e.id+"?format=json",success:function(e){gType=="centered"?(Mconsole.busy=!0,Mconsole.op.sum(e,{type:"fade",duration:500,hideLabels:!1}),Mconsole.graph.eachNode(function(e){e.eachAdjacency(function(e){e.getData("showDesc")||(e.setData("alpha",.4,"start"),e.setData("alpha",.4,"current"),e.setData("alpha",.4,"end"))})}),Mconsole.busy=!1):(Mconsole.op.sum(e,{type:"nothing"}),Mconsole.plot())},error:function(){alert("failure")}})}function MconsoleReset(){var e=Mconsole.canvas.translateOffsetX,t=Mconsole.canvas.translateOffsetY;Mconsole.canvas.translate(-e,-t);var n=Mconsole.canvas.scaleOffsetX,r=Mconsole.canvas.scaleOffsetY;Mconsole.canvas.scale(1/n,1/r)}function hideLabels(){Mconsole.labels.labelsHidden?(Mconsole.labels.hideLabels(),$(".hidelabels").html("Hide Labels")):Mconsole.labels.labelsHidden||(Mconsole.labels.hideLabels(!0),$(".hidelabels").html("Show Labels"))}(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.1",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toUpperCase()===t.toUpperCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return typeof e=="object"?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0],r.style.cssText="top:1px;float:left;opacity:.5";if(!n||!n.length||!r)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
t
" -,s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||++v.uuid:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n-1)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n-1)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r,i,s=e.selectedIndex,o=[],u=e.options,a=e.type==="select-one";if(s<0)return null;n=a?s:0,r=a?s+1:u.length;for(;n=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,""+r),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0),u[c]&&f.push(l);f.length&&b.push({elem:s,matches:f})}p.length>d&&b.push({elem:this,matches:p.slice(d)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function Y(e,t,n,r){n=n||[],t=t||m;var i,s,o,f,l=t.nodeType;if(l!==1&&l!==9)return[];if(!e||typeof e!="string")return n;o=u(t);if(!o&&!r)if(i=j.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&a(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return w.apply(n,b.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&K&&t.getElementsByClassName)return w.apply(n,b.call(t.getElementsByClassName(f),0)),n}return lt(e,t,n,r,o)}function Z(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function et(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function tt(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function nt(e,t,n,r){var i,o,u,a,f,l,c,h,p,v,g=!n&&t!==m,y=(g?"":"")+e.replace(D,"$1"),w=T[d][y];if(w)return r?0:b.call(w,0);f=e,l=[],h=0,p=s.preFilter,v=s.filter;while(f){if(!i||(o=P.exec(f)))o&&(f=f.slice(o[0].length),u.selector=c),l.push(u=[]),c="",g&&(f=" "+f);i=!1;if(o=H.exec(f))c+=o[0],f=f.slice(o[0].length),i=u.push({part:o.pop().replace(D," "),string:o[0],captures:o});for(a in v)(o=W[a].exec(f))&&(!p[a]||(o=p[a](o,t,n)))&&(c+=o[0],f=f.slice(o[0].length),i=u.push({part:a,string:o.shift(),captures:o}));if(!i)break}return c&&(u.selector=c),r?f.length:f?Y.error(e):b.call(T(y,l),0)}function rt(e,t,i,s){var o=t.dir,u=y++;return e||(e=function(e){return e===i}),t.first?function(t){while(t=t[o])if(t.nodeType===1)return e(t)&&t}:s?function(t){while(t=t[o])if(t.nodeType===1&&e(t))return t}:function(t){var i,s=u+"."+n,a=s+"."+r;while(t=t[o])if(t.nodeType===1){if((i=t[d])===a)return t.sizset;if(typeof i=="string"&&i.indexOf(s)===0){if(t.sizset)return t}else{t[d]=a;if(e(t))return t.sizset=!0,t;t.sizset=!1}}}}function it(e,t){return e?function(n){var r=t(n);return r&&e(r===!0?n:r)}:t}function st(e,t,n){var r,i,o=0;for(;r=e[o];o++)s.relative[r.part]?i=rt(i,s.relative[r.part],t,n):i=it(i,s.filter[r.part].apply(null,r.captures.concat(t,n)));return i}function ot(e){return function(t){var n,r=0;for(;n=e[r];r++)if(n(t))return!0;return!1}}function ut(e,t,n,r){var i=0,s=t.length;for(;i0?a(u,n,o):[]}function ft(e,n,r,i){var s,o,u,a,f,l,c,h,p,d,v,m,g,y=0,b=e.length,E=W.POS,S=new RegExp("^"+E.source+"(?!"+C+")","i"),x=function(){var e=1,n=arguments.length-2;for(;ec){o+=l.slice(c,p.index),c=v,m=[n],H.test(o)&&(h&&(m=h),h=i);if(g=q.test(o))o=o.slice(0,-5).replace(H,"$&*"),c++;p.length>1&&p[0].replace(S,x),h=at(o,p[1],p[2],m,h,g)}o=""}}d||(o+=l),d=!1}o?H.test(o)?ut(o,h||[n],r,i):Y(o,n,r,i?i.concat(h):h):w.apply(r,h)}return b===1?r:Y.uniqueSort(r)}function lt(e,t,i,o,u){e=e.replace(D,"$1");var a,l,c,h,p,d,v,m,g,y,E=nt(e,t,u),S=t.nodeType;if(W.POS.test(e))return ft(E,t,i,o);if(o)a=b.call(o,0);else if(E.length===1){if((d=b.call(E[0],0)).length>2&&(v=d[0]).part==="ID"&&S===9&&!u&&s.relative[d[1].part]){t=s.find.ID(v.captures[0].replace(z,""),t,u)[0];if(!t)return i;e=e.slice(d.shift().string.length)}g=(E=I.exec(d[0].string))&&!E.index&&t.parentNode||t,m="";for(p=d.length-1;p>=0;p--){v=d[p],y=v.part,m=v.string+m;if(s.relative[y])break;if(s.order.test(y)){a=s.find[y](v.captures[0].replace(z,""),g,u);if(a==null)continue;e=e.slice(0,e.length-m.length)+m.replace(W[y],""),e||w.apply(i,b.call(a,0));break}}}if(e){l=f(e,t,u),n=l.dirruns++,a==null&&(a=s.find.TAG("*",I.test(e)&&t.parentNode||t));for(p=0;h=a[p];p++)r=l.runs++,l(h)&&i.push(h)}return i}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=e.document,g=m.documentElement,y=0,b=[].slice,w=[].push,E=function(e,t){return e[d]=t||!0,e},S=function(){var e={},t=[];return E(function(n,r){return t.push(n)>s.cacheLength&&delete e[t.shift()],e[n]=r},e)},x=S(),T=S(),N=S(),C="[\\x20\\t\\r\\n\\f]",k="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",L=k.replace("w","w#"),A="([*^$|!~]?=)",O="\\["+C+"*("+k+")"+C+"*(?:"+A+C+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+L+")|)|)"+C+"*\\]",M=":("+k+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+O+")|[^:]|\\\\.)*|.*))\\)|)",_=":(nth|eq|gt|lt|first|last|even|odd)(?:\\(((?:-\\d)?\\d*)\\)|)(?=[^-]|$)",D=new RegExp("^"+C+"+|((?:^|[^\\\\])(?:\\\\.)*)"+C+"+$","g"),P=new RegExp("^"+C+"*,"+C+"*"),H=new RegExp("^"+C+"*([\\x20\\t\\r\\n\\f>+~])"+C+"*"),B=new RegExp(M),j=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,F=/^:not/,I=/[\x20\t\r\n\f]*[+~]/,q=/:not\($/,R=/h\d/i,U=/input|select|textarea|button/i,z=/\\(?!\\)/g,W={ID:new RegExp("^#("+k+")"),CLASS:new RegExp("^\\.("+k+")"),NAME:new RegExp("^\\[name=['\"]?("+k+")['\"]?\\]"),TAG:new RegExp("^("+k.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+C+"*(even|odd|(([+-]|)(\\d*)n|)"+C+"*(?:([+-]|)"+C+"*(\\d+)|))"+C+"*\\)|)","i"),POS:new RegExp(_,"ig"),needsContext:new RegExp("^"+C+"*[>+~]|"+_,"i")},X=function(e){var t=m.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},V=X(function(e){return e.appendChild(m.createComment("")),!e.getElementsByTagName("*").length}),$=X(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),J=X(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),K=X(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),Q=X(function(e){e.id=d+0,e.innerHTML="
",g.insertBefore(e,g.firstChild);var t=m.getElementsByName&&m.getElementsByName(d).length===2+m.getElementsByName(d+0).length;return i=!m.getElementById(d),g.removeChild(e),t});try{b.call(g.childNodes,0)[0].nodeType}catch(G){b=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}Y.matches=function(e,t){return Y(e,null,null,t)},Y.matchesSelector=function(e,t){return Y(t,null,null,[e]).length>0},o=Y.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=o(t);return n},u=Y.isXML=function(t){var n=t&&(t.ownerDocument||t).documentElement;return n?n.nodeName!=="HTML":!1},a=Y.contains=g.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:g.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},Y.attr=function(e,t){var n,r=u(e);return r||(t=t.toLowerCase()),s.attrHandle[t]?s.attrHandle[t](e):J||r?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},s=Y.selectors={cacheLength:50,createPseudo:E,match:W,order:new RegExp("ID|TAG"+(Q?"|NAME":"")+(K?"|CLASS":"")),attrHandle:$?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:i?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:V?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(z,""),e[3]=(e[4]||e[5]||"").replace(z,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||Y.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&Y.error(e[0]),e},PSEUDO:function(e,t,n){var r,i;if(W.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(r=e[4])B.test(r)&&(i=nt(r,t,n,!0))&&(i=r.indexOf(")",r.length-i)-r.length)&&(r=r.slice(0,i),e[0]=e[0].slice(0,i)),e[2]=r;return e.slice(0,3)}},filter:{ID:i?function(e){return e=e.replace(z,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace(z,"" -),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace(z,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=x[d][e];return t||(t=x(e,new RegExp("(^|"+C+")"+e+"("+C+"|$)"))),function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")}},ATTR:function(e,t,n){return t?function(r){var i=Y.attr(r,e),s=i+"";if(i==null)return t==="!=";switch(t){case"=":return s===n;case"!=":return s!==n;case"^=":return n&&s.indexOf(n)===0;case"*=":return n&&s.indexOf(n)>-1;case"$=":return n&&s.substr(s.length-n.length)===n;case"~=":return(" "+s+" ").indexOf(n)>-1;case"|=":return s===n||s.substr(0,n.length+1)===n+"-"}}:function(t){return Y.attr(t,e)!=null}},CHILD:function(e,t,n,r){if(e==="nth"){var i=y++;return function(e){var t,s,o=0,u=e;if(n===1&&r===0)return!0;t=e.parentNode;if(t&&(t[d]!==i||!e.sizset)){for(u=t.firstChild;u;u=u.nextSibling)if(u.nodeType===1){u.sizset=++o;if(u===e)break}t[d]=i}return s=e.sizset-r,n===0?s===0:s%n===0&&s/n>=0}}return function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t,n,r){var i,o=s.pseudos[e]||s.pseudos[e.toLowerCase()];return o||Y.error("unsupported pseudo: "+e),o[d]?o(t,n,r):o.length>1?(i=[e,e,"",t],function(e){return o(e,0,i)}):o}},pseudos:{not:E(function(e,t,n){var r=f(e.replace(D,"$1"),t,n);return function(e){return!r(e)}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!s.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},contains:E(function(e){return function(t){return(t.textContent||t.innerText||o(t)).indexOf(e)>-1}}),has:E(function(e){return function(t){return Y(e,t).length>0}}),header:function(e){return R.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:Z("radio"),checkbox:Z("checkbox"),file:Z("file"),password:Z("password"),image:Z("image"),submit:et("submit"),reset:et("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return U.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&(!!e.type||!!e.href)},active:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(e,t,n){return n?e.slice(1):[e[0]]},last:function(e,t,n){var r=e.pop();return n?e:[r]},even:function(e,t,n){var r=[],i=n?1:0,s=e.length;for(;i",e.querySelectorAll("[selected]").length||i.push("\\["+C+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),X(function(e){e.innerHTML="

",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+C+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=i.length&&new RegExp(i.join("|")),lt=function(e,r,s,o,u){if(!o&&!u&&(!i||!i.test(e)))if(r.nodeType===9)try{return w.apply(s,b.call(r.querySelectorAll(e),0)),s}catch(a){}else if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){var f,l,c,h=r.getAttribute("id"),p=h||d,v=I.test(e)&&r.parentNode||r;h?p=p.replace(n,"\\$&"):r.setAttribute("id",p),f=nt(e,r,u),p="[id='"+p+"']";for(l=0,c=f.length;l0})}(),s.setFilters.nth=s.setFilters.eq,s.filters=s.pseudos,Y.attr=v.attr,v.find=Y,v.expr=Y.selectors,v.expr[":"]=v.expr.pseudos,v.unique=Y.uniqueSort,v.text=Y.getText,v.isXMLDoc=Y.isXML,v.contains=Y.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
","
"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{ln=s.href}catch(Nn){ln=i.createElement("a"),ln.href="",ln=ln.href}cn=wn.exec(ln.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:ln,isLocal:dn.test(cn[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=""+(n||T),l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,cn[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]==cn[1]&&a[2]==cn[2]&&(a[3]||(a[1]==="http:"?80:443))==(cn[3]||(cn[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(e){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i,s=this.createTween(e,t),o=zn.exec(t),u=s.cur(),a=+u||0,f=1;if(o){n=+o[2],r=o[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&a){a=v.css(s.elem,e,!0)||n||1;do i=f=f||".5",a/=f,v.style(s.elem,e,a+r),f=s.cur()/u;while(f!==1&&f!==i)}s.unit=r,s.start=a,s.end=o[1]?a+(o[1]+1)*n:n}return s}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window),function(e,t){function n(t,n){var i=t.nodeName.toLowerCase();if("area"===i){var s=t.parentNode,o=s.name,u;return!t.href||!o||s.nodeName.toLowerCase()!=="map"?!1:(u=e("img[usemap=#"+o+"]")[0],!!u&&r(u))}return(/input|select|textarea|button|object/.test(i)?!t.disabled:"a"==i?t.href||n:n)&&r(t)}function r(t){return!e(t).parents().andSelf().filter(function(){return e.curCSS(this,"visibility")==="hidden"||e.expr.filters.hidden(this)}).length}e.ui=e.ui||{};if(e.ui.version)return;e.extend(e.ui,{version:"1.8.23",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}}),e.fn.extend({propAttr:e.fn.prop||e.fn.attr,_focus:e.fn.focus,focus:function(t,n){return typeof t=="number"?this.each(function(){var r=this;setTimeout(function(){e(r).focus(),n&&n.call(r)},t)}):this._focus.apply(this,arguments)},scrollParent:function(){var t;return e.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.curCSS(this,"position",1))&&/(auto|scroll)/.test(e.curCSS(this,"overflow",1)+e.curCSS(this,"overflow-y",1)+e.curCSS(this,"overflow-x",1))}).eq(0):t=this.parents().filter(function(){return/(auto|scroll)/.test(e.curCSS(this,"overflow",1)+e.curCSS(this,"overflow-y",1)+e.curCSS(this,"overflow-x",1))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(n){if(n!==t)return this.css("zIndex",n);if(this.length){var r=e(this[0]),i,s;while(r.length&&r[0]!==document){i=r.css("position");if(i==="absolute"||i==="relative"||i==="fixed"){s=parseInt(r.css("zIndex"),10);if(!isNaN(s)&&s!==0)return s}r=r.parent()}}return 0},disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e("").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function u(t,n,r,s){return e.each(i,function(){n-=parseFloat(e.curCSS(t,"padding"+this,!0))||0,r&&(n-=parseFloat(e.curCSS(t,"border"+this+"Width",!0))||0),s&&(n-=parseFloat(e.curCSS(t,"margin"+this,!0))||0)}),n}var i=r==="Width"?["Left","Right"]:["Top","Bottom"],s=r.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?o["inner"+r].call(this):this.each(function(){e(this).css(s,u(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?o["outer"+r].call(this,t):this.each(function(){e(this).css(s,u(this,t,!0,n)+"px")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return n(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var r=e.attr(t,"tabindex"),i=isNaN(r);return(i||r>=0)&&n(t,!i)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement("div"));n.offsetHeight,e.extend(n.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart="onselectstart"in n,t.removeChild(n).style.display="none"}),e.curCSS||(e.curCSS=e.css),e.extend(e.ui,{plugin:{add:function(t,n,r){var i=e.ui[t].prototype;for(var s in r)i.plugins[s]=i.plugins[s]||[],i.plugins[s].push([n,r[s]])},call:function(e,t,n){var r=e.plugins[t];if(!r||!e.element[0].parentNode)return;for(var i=0;i0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target==this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})}(jQuery),function(e,t){e.widget("ui.draggable",e.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},destroy:function(){if(!this.element.data("draggable"))return;return this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy(),this},_mouseCapture:function(t){var n=this.options;return this.helper||n.disabled||e(t.target).is(".ui-resizable-handle")?!1:(this.handle=this._getHandle(t),this.handle?(n.iframeFix&&e(n.iframeFix===!0?"iframe":n.iframeFix).each(function(){e('
').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var n=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.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},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,n.cursorAt&&this._adjustOffsetFromHelper(n.cursorAt),n.containment&&this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,n){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute");if(!n){var r=this._uiHash();if(this._trigger("drag",t,r)===!1)return this._mouseUp({}),!1;this.position=r.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";return e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var n=!1;e.ui.ddmanager&&!this.options.dropBehaviour&&(n=e.ui.ddmanager.drop(this,t)),this.dropped&&(n=this.dropped,this.dropped=!1);var r=this.element[0],i=!1;while(r&&(r=r.parentNode))r==document&&(i=!0);if(!i&&this.options.helper==="original")return!1;if(this.options.revert=="invalid"&&!n||this.options.revert=="valid"&&n||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,n)){var s=this;e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){s._trigger("stop",t)!==!1&&s._clear()})}else this._trigger("stop",t)!==!1&&this._clear();return!1},_mouseUp:function(t){return this.options.iframeFix===!0&&e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){var n=!this.options.handle||!e(this.options.handle,this.element).length?!0:!1;return e(this.options.handle,this.element).find("*").andSelf().each(function(){this==t.target&&(n=!0)}),n},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t])):n.helper=="clone"?this.element.clone().removeAttr("id"):this.element;return r.parents("body").length||r.appendTo(n.appendTo=="parent"?this.element[0].parentNode:n.appendTo),r[0]!=this.element[0]&&!/(fixed|absolute)/.test(r.css("position"))&&r.css("position","absolute"),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.browser.msie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.element.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.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 t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[t.containment=="document"?0:e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t.containment=="document"?0:e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(t.containment=="document"?0:e(window).scrollLeft())+e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(t.containment=="document"?0:e(window).scrollTop())+(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)&&t.containment.constructor!=Array){var n=e(t.containment),r=n[0];if(!r)return;var i=n.offset(),s=e(r).css("overflow")!="hidden";this.containment=[(parseInt(e(r).css("borderLeftWidth"),10)||0)+(parseInt(e(r).css("paddingLeft"),10)||0),(parseInt(e(r).css("borderTopWidth"),10)||0)+(parseInt(e(r).css("paddingTop"),10)||0),(s?Math.max(r.scrollWidth,r.offsetWidth):r.offsetWidth)-(parseInt(e(r).css("borderLeftWidth"),10)||0)-(parseInt(e(r).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(s?Math.max(r.scrollHeight,r.offsetHeight):r.offsetHeight)-(parseInt(e(r).css("borderTopWidth"),10)||0)-(parseInt(e(r).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=n}else t.containment.constructor==Array&&(this.containment=t.containment)},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r),left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r)}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName),s=t.pageX,o=t.pageY;if(this.originalPosition){var u;if(this.containment){if(this.relative_container){var a=this.relative_container.offset();u=[this.containment[0]+a.left,this.containment[1]+a.top,this.containment[2]+a.left,this.containment[3]+a.top]}else u=this.containment;t.pageX-this.offset.click.leftu[2]&&(s=u[2]+this.offset.click.left),t.pageY-this.offset.click.top>u[3]&&(o=u[3]+this.offset.click.top)}if(n.grid){var f=n.grid[1]?this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1]:this.originalPageY;o=u?f-this.offset.click.topu[3]?f-this.offset.click.topu[2]?l-this.offset.click.left=0;l--){var c=r.snapElements[l].left,h=c+r.snapElements[l].width,p=r.snapElements[l].top,d=p+r.snapElements[l].height;if(!(c-s=l&&o<=c||u>=l&&u<=c||oc)&&(i>=a&&i<=f||s>=a&&s<=f||if);default:return!1}},e.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,n){var r=e.ui.ddmanager.droppables[t.options.scope]||[],i=n?n.type:null,s=(t.currentItem||t.element).find(":data(droppable)").andSelf();e:for(var o=0;o
').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=n.handles||(e(".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 r=this.handles.split(",");this.handles={};for(var i=0;i');u.css({zIndex:n.zIndex}),"se"==s&&u.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(u)}}this._renderAxis=function(t){t=t||this.element;for(var n in this.handles){this.handles[n].constructor==String&&(this.handles[n]=e(this.handles[n],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var r=e(this.handles[n],this.element),i=0;i=/sw|ne|nw|se|n|s/.test(n)?r.outerHeight():r.outerWidth();var s=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");t.css(s,i),this._proportionallyResize()}if(!e(this.handles[n]).length)continue}},this._renderAxis(this.element),this._handles=e(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!t.resizing){if(this.className)var e=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);t.axis=e&&e[1]?e[1]:"se"}}),n.autoHide&&(this._handles.hide(),e(this.element).addClass("ui-resizable-autohide").hover(function(){if(n.disabled)return;e(this).removeClass("ui-resizable-autohide"),t._handles.show()},function(){if(n.disabled)return;t.resizing||(e(this).addClass("ui-resizable-autohide"),t._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var t=function(t){e(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){t(this.element);var n=this.element;n.after(this.originalElement.css({position:n.css("position"),width:n.outerWidth(),height:n.outerHeight(),top:n.css("top"),left:n.css("left")})).remove()}return this.originalElement.css("resize",this.originalResizeStyle),t(this.originalElement),this},_mouseCapture:function(t){var n=!1;for(var r in this.handles)e(this.handles[r])[0]==t.target&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(t){var r=this.options,i=this.element.position(),s=this.element;this.resizing=!0,this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()},(s.is(".ui-draggable")||/absolute/.test(s.css("position")))&&s.css({position:"absolute",top:i.top,left:i.left}),this._renderProxy();var o=n(this.helper.css("left")),u=n(this.helper.css("top"));r.containment&&(o+=e(r.containment).scrollLeft()||0,u+=e(r.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:o,top:u},this.size=this._helper?{width:s.outerWidth(),height:s.outerHeight()}:{width:s.width(),height:s.height()},this.originalSize=this._helper?{width:s.outerWidth(),height:s.outerHeight()}:{width:s.width(),height:s.height()},this.originalPosition={left:o,top:u},this.sizeDiff={width:s.outerWidth()-s.width(),height:s.outerHeight()-s.height()},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio=typeof r.aspectRatio=="number"?r.aspectRatio:this.originalSize.width/this.originalSize.height||1;var a=e(".ui-resizable-"+this.axis).css("cursor");return e("body").css("cursor",a=="auto"?this.axis+"-resize":a),s.addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var n=this.helper,r=this.options,i={},s=this,o=this.originalMousePosition,u=this.axis,a=t.pageX-o.left||0,f=t.pageY-o.top||0,l=this._change[u];if(!l)return!1;var c=l.apply(this,[t,a,f]),h=e.browser.msie&&e.browser.version<7,p=this.sizeDiff;this._updateVirtualBoundaries(t.shiftKey);if(this._aspectRatio||t.shiftKey)c=this._updateRatio(c,t);return c=this._respectSize(c,t),this._propagate("resize",t),n.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(c),this._trigger("resize",t,this.ui()),!1},_mouseStop:function(t){this.resizing=!1;var n=this.options,r=this;if(this._helper){var i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),o=s&&e.ui.hasScroll(i[0],"left")?0:r.sizeDiff.height,u=s?0:r.sizeDiff.width,a={width:r.helper.width()-u,height:r.helper.height()-o},f=parseInt(r.element.css("left"),10)+(r.position.left-r.originalPosition.left)||null,l=parseInt(r.element.css("top"),10)+(r.position.top-r.originalPosition.top)||null;n.animate||this.element.css(e.extend(a,{top:l,left:f})),r.helper.height(r.size.height),r.helper.width(r.size.width),this._helper&&!n.animate&&this._proportionallyResize()}return e("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(e){var t=this.options,n,i,s,o,u;u={minWidth:r(t.minWidth)?t.minWidth:0,maxWidth:r(t.maxWidth)?t.maxWidth:Infinity,minHeight:r(t.minHeight)?t.minHeight:0,maxHeight:r(t.maxHeight)?t.maxHeight:Infinity};if(this._aspectRatio||e)n=u.minHeight*this.aspectRatio,s=u.minWidth/this.aspectRatio,i=u.maxHeight*this.aspectRatio,o=u.maxWidth/this.aspectRatio,n>u.minWidth&&(u.minWidth=n),s>u.minHeight&&(u.minHeight=s),ie.width,l=r(e.height)&&i.minHeight&&i.minHeight>e.height;f&&(e.width=i.minWidth),l&&(e.height=i.minHeight),u&&(e.width=i.maxWidth),a&&(e.height=i.maxHeight);var c=this.originalPosition.left+this.originalSize.width,h=this.position.top+this.size.height,p=/sw|nw|w/.test(o),d=/nw|ne|n/.test(o);f&&p&&(e.left=c-i.minWidth),u&&p&&(e.left=c-i.maxWidth),l&&d&&(e.top=h-i.minHeight),a&&d&&(e.top=h-i.maxHeight);var v=!e.width&&!e.height;return v&&!e.left&&e.top?e.top=null:v&&!e.top&&e.left&&(e.left=null),e},_proportionallyResize:function(){var t=this.options;if(!this._proportionallyResizeElements.length)return;var n=this.helper||this.element;for(var r=0;r');var r=e.browser.msie&&e.browser.version<7,i=r?1:0,s=r?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+s,height:this.element.outerHeight()+s,position:"absolute",left:this.elementOffset.left-i+"px",top:this.elementOffset.top-i+"px",zIndex:++n.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(e,t,n){return{width:this.originalSize.width+t}},w:function(e,t,n){var r=this.options,i=this.originalSize,s=this.originalPosition;return{left:s.left+t,width:i.width-t}},n:function(e,t,n){var r=this.options,i=this.originalSize,s=this.originalPosition;return{top:s.top+n,height:i.height-n}},s:function(e,t,n){return{height:this.originalSize.height+n}},se:function(t,n,r){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,n,r]))},sw:function(t,n,r){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,n,r]))},ne:function(t,n,r){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,n,r]))},nw:function(t,n,r){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,n,r]))}},_propagate:function(t,n){e.ui.plugin.call(this,t,[n,this.ui()]),t!="resize"&&this._trigger(t,n,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}}}),e.extend(e.ui.resizable,{version:"1.8.23"}),e.ui.plugin.add("resizable","alsoResize",{start:function(t,n){var r=e(this).data("resizable"),i=r.options,s=function(t){e(t).each(function(){var t=e(this);t.data("resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})};typeof i.alsoResize=="object"&&!i.alsoResize.parentNode?i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):e.each(i.alsoResize,function(e){s(e)}):s(i.alsoResize)},resize:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r.originalSize,o=r.originalPosition,u={height:r.size.height-s.height||0,width:r.size.width-s.width||0,top:r.position.top-o.top||0,left:r.position.left-o.left||0},a=function(t,r){e(t).each(function(){var t=e(this),i=e(this).data("resizable-alsoresize"),s={},o=r&&r.length?r:t.parents(n.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(o,function(e,t){var n=(i[t]||0)+(u[t]||0);n&&n>=0&&(s[t]=n||null)}),t.css(s)})};typeof i.alsoResize=="object"&&!i.alsoResize.nodeType?e.each(i.alsoResize,function(e,t){a(e,t)}):a(i.alsoResize)},stop:function(t,n){e(this).removeData("resizable-alsoresize")}}),e.ui.plugin.add("resizable","animate",{stop:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r._proportionallyResizeElements,o=s.length&&/textarea/i.test(s[0].nodeName),u=o&&e.ui.hasScroll(s[0],"left")?0:r.sizeDiff.height,a=o?0:r.sizeDiff.width,f={width:r.size.width-a,height:r.size.height-u},l=parseInt(r.element.css("left"),10)+(r.position.left-r.originalPosition.left)||null,c=parseInt(r.element.css("top"),10)+(r.position.top-r.originalPosition.top)||null;r.element.animate(e.extend(f,c&&l?{top:c,left:l}:{}),{duration:i.animateDuration,easing:i.animateEasing,step:function(){var n={width:parseInt(r.element.css("width"),10),height:parseInt(r.element.css("height"),10),top:parseInt(r.element.css("top"),10),left:parseInt(r.element.css("left"),10)};s&&s.length&&e(s[0]).css({width:n.width,height:n.height}),r._updateCache(n),r._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(t,r){var i=e(this).data("resizable"),s=i.options,o=i.element,u=s.containment,a=u instanceof e?u.get(0):/parent/.test(u)?o.parent().get(0):u;if(!a)return;i.containerElement=e(a);if(/document/.test(u)||u==document)i.containerOffset={left:0,top:0},i.containerPosition={left:0,top:0},i.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight};else{var f=e(a),l=[];e(["Top","Right","Left","Bottom"]).each(function(e,t){l[e]=n(f.css("padding"+t))}),i.containerOffset=f.offset(),i.containerPosition=f.position(),i.containerSize={height:f.innerHeight()-l[3],width:f.innerWidth()-l[1]};var c=i.containerOffset,h=i.containerSize.height,p=i.containerSize.width,d=e.ui.hasScroll(a,"left")?a.scrollWidth:p,v=e.ui.hasScroll(a)?a.scrollHeight:h;i.parentData={element:a,left:c.left,top:c.top,width:d,height:v}}},resize:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r.containerSize,o=r.containerOffset,u=r.size,a=r.position,f=r._aspectRatio||t.shiftKey,l={top:0,left:0},c=r.containerElement;c[0]!=document&&/static/.test(c.css("position"))&&(l=o),a.left<(r._helper?o.left:0)&&(r.size.width=r.size.width+(r._helper?r.position.left-o.left:r.position.left-l.left),f&&(r.size.height=r.size.width/r.aspectRatio),r.position.left=i.helper?o.left:0),a.top<(r._helper?o.top:0)&&(r.size.height=r.size.height+(r._helper?r.position.top-o.top:r.position.top),f&&(r.size.width=r.size.height*r.aspectRatio),r.position.top=r._helper?o.top:0),r.offset.left=r.parentData.left+r.position.left,r.offset.top=r.parentData.top+r.position.top;var h=Math.abs((r._helper?r.offset.left-l.left:r.offset.left-l.left)+r.sizeDiff.width),p=Math.abs((r._helper?r.offset.top-l.top:r.offset.top-o.top)+r.sizeDiff.height),d=r.containerElement.get(0)==r.element.parent().get(0),v=/relative|absolute/.test(r.containerElement.css("position"));d&&v&&(h-=r.parentData.left),h+r.size.width>=r.parentData.width&&(r.size.width=r.parentData.width-h,f&&(r.size.height=r.size.width/r.aspectRatio)),p+r.size.height>=r.parentData.height&&(r.size.height=r.parentData.height-p,f&&(r.size.width=r.size.height*r.aspectRatio))},stop:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r.position,o=r.containerOffset,u=r.containerPosition,a=r.containerElement,f=e(r.helper),l=f.offset(),c=f.outerWidth()-r.sizeDiff.width,h=f.outerHeight()-r.sizeDiff.height;r._helper&&!i.animate&&/relative/.test(a.css("position"))&&e(this).css({left:l.left-u.left-o.left,width:c,height:h}),r._helper&&!i.animate&&/static/.test(a.css("position"))&&e(this).css({left:l.left-u.left-o.left,width:c,height:h})}}),e.ui.plugin.add("resizable","ghost",{start:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r.size;r.ghost=r.originalElement.clone(),r.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:""),r.ghost.appendTo(r.helper)},resize:function(t,n){var r=e(this).data("resizable"),i=r.options;r.ghost&&r.ghost.css({position:"relative",height:r.size.height,width:r.size.width})},stop:function(t,n){var r=e(this).data("resizable"),i=r.options;r.ghost&&r.helper&&r.helper.get(0).removeChild(r.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(t,n){var r=e(this).data("resizable"),i=r.options,s=r.size,o=r.originalSize,u=r.originalPosition,a=r.axis,f=i._aspectRatio||t.shiftKey;i.grid=typeof i.grid=="number"?[i.grid,i.grid]:i.grid;var l=Math.round((s.width-o.width)/(i.grid[0]||1))*(i.grid[0]||1),c=Math.round((s.height-o.height)/(i.grid[1]||1))*(i.grid[1]||1);/^(se|s|e)$/.test(a)?(r.size.width=o.width+l,r.size.height=o.height+c):/^(ne)$/.test(a)?(r.size.width=o.width+l,r.size.height=o.height+c,r.position.top=u.top-c):/^(sw)$/.test(a)?(r.size.width=o.width+l,r.size.height=o.height+c,r.position.left=u.left-l):(r.size.width=o.width+l,r.size.height=o.height+c,r.position.top=u.top-c,r.position.left=u.left-l)}});var n=function(e){return parseInt(e,10)||0},r=function(e){return!isNaN(parseInt(e,10))}}(jQuery),function(e,t){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch"},_create:function(){var t=this;this.element.addClass("ui-selectable"),this.dragged=!1;var n;this.refresh=function(){n=e(t.options.filter,t.element[0]),n.addClass("ui-selectee"),n.each(function(){var t=e(this),n=t.offset();e.data(this,"selectable-item",{element:this,$element:t,left:n.left,top:n.top,right:n.left+t.outerWidth(),bottom:n.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=n.addClass("ui-selectee"),this._mouseInit(),this.helper=e("
")},destroy:function(){return this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable"),this._mouseDestroy(),this},_mouseStart:function(t){var n=this;this.opos=[t.pageX,t.pageY];if(this.options.disabled)return;var r=this.options;this.selectees=e(r.filter,this.element[0]),this._trigger("start",t),e(r.appendTo).append(this.helper),this.helper.css({left:t.clientX,top:t.clientY,width:0,height:0}),r.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var r=e.data(this,"selectable-item");r.startselected=!0,!t.metaKey&&!t.ctrlKey&&(r.$element.removeClass("ui-selected"),r.selected=!1,r.$element.addClass("ui-unselecting"),r.unselecting=!0,n._trigger("unselecting",t,{unselecting:r.element}))}),e(t.target).parents().andSelf().each(function(){var r=e.data(this,"selectable-item");if(r){var i=!t.metaKey&&!t.ctrlKey||!r.$element.hasClass("ui-selected");return r.$element.removeClass(i?"ui-unselecting":"ui-selected").addClass(i?"ui-selecting":"ui-unselecting"),r.unselecting=!i,r.selecting=i,r.selected=i,i?n._trigger("selecting",t,{selecting:r.element}):n._trigger("unselecting",t,{unselecting:r.element}),!1}})},_mouseDrag:function(t){var n=this;this.dragged=!0;if(this.options.disabled)return;var r=this.options,i=this.opos[0],s=this.opos[1],o=t.pageX,u=t.pageY;if(i>o){var a=o;o=i,i=a}if(s>u){var a=u;u=s,s=a}return this.helper.css({left:i,top:s,width:o-i,height:u-s}),this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!a||a.element==n.element[0])return;var f=!1;r.tolerance=="touch"?f=!(a.left>o||a.rightu||a.bottomi&&a.rights&&a.bottom *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?e.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(){e.Widget.prototype.destroy.call(this),this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var t=this.items.length-1;t>=0;t--)this.items[t].item.removeData(this.widgetName+"-item");return this},_setOption:function(t,n){t==="disabled"?(this.options[t]=n,this.widget()[n?"addClass":"removeClass"]("ui-sortable-disabled")):e.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(t,n){var r=this;if(this.reverting)return!1;if(this.options.disabled||this.options.type=="static")return!1;this._refreshItems(t);var i=null,s=this,o=e(t.target).parents().each(function(){if(e.data(this,r.widgetName+"-item")==s)return i=e(this),!1});e.data(t.target,r.widgetName+"-item")==s&&(i=e(t.target));if(!i)return!1;if(this.options.handle&&!n){var u=!1;e(this.options.handle,i).find("*").andSelf().each(function(){this==t.target&&(u=!0)});if(!u)return!1}return this.currentItem=i,this._removeCurrentsFromItems(),!0},_mouseStart:function(t,n,r){var i=this.options,s=this;this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),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},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!=this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),i.containment&&this._setContainment(),i.cursor&&(e("body").css("cursor")&&(this._storedCursor=e("body").css("cursor")),e("body").css("cursor",i.cursor)),i.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",i.opacity)),i.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",i.zIndex)),this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions();if(!r)for(var o=this.containers.length-1;o>=0;o--)this.containers[o]._trigger("activate",t,s._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var n=this.options,r=!1;this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY=0;i--){var s=this.items[i],o=s.item[0],u=this._intersectsWithPointer(s);if(!u)continue;if(o!=this.currentItem[0]&&this.placeholder[u==1?"next":"prev"]()[0]!=o&&!e.ui.contains(this.placeholder[0],o)&&(this.options.type=="semi-dynamic"?!e.ui.contains(this.element[0],o):!0)){this.direction=u==1?"down":"up";if(this.options.tolerance!="pointer"&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,n){if(!t)return;e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t);if(this.options.revert){var r=this,i=r.placeholder.offset();r.reverting=!0,e(this.helper).animate({left:i.left-this.offset.parent.left-r.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:i.top-this.offset.parent.top-r.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){r._clear(t)})}else this._clear(t,n);return!1},cancel:function(){var t=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 n=this.containers.length-1;n>=0;n--)this.containers[n]._trigger("deactivate",null,t._uiHash(this)),this.containers[n].containerCache.over&&(this.containers[n]._trigger("out",null,t._uiHash(this)),this.containers[n].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},e(n).each(function(){var n=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[-=_](.+)/);n&&r.push((t.key||n[1]+"[]")+"="+(t.key&&t.expression?n[1]:n[2]))}),!r.length&&t.key&&r.push(t.key+"="),r.join("&")},toArray:function(t){var n=this._getItemsAsjQuery(t&&t.connected),r=[];return t=t||{},n.each(function(){r.push(e(t.item||this).attr(t.attribute||"id")||"")}),r},_intersectsWith:function(e){var t=this.positionAbs.left,n=t+this.helperProportions.width,r=this.positionAbs.top,i=r+this.helperProportions.height,s=e.left,o=s+e.width,u=e.top,a=u+e.height,f=this.offset.click.top,l=this.offset.click.left,c=r+f>u&&r+fs&&t+le[this.floating?"width":"height"]?c:s0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return e!=0&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor==String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){var n=this,r=[],i=[],s=this._connectWith();if(s&&t)for(var o=s.length-1;o>=0;o--){var u=e(s[o]);for(var a=u.length-1;a>=0;a--){var f=e.data(u[a],this.widgetName);f&&f!=this&&!f.options.disabled&&i.push([e.isFunction(f.options.items)?f.options.items.call(f.element):e(f.options.items,f.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),f])}}i.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(var o=i.length-1;o>=0;o--)i[o][0].each(function(){r.push(this)});return e(r)},_removeCurrentsFromItems:function(){var e=this.currentItem.find(":data("+this.widgetName+"-item)");for(var t=0;t=0;o--){var u=e(s[o]);for(var a=u.length-1;a>=0;a--){var f=e.data(u[a],this.widgetName);f&&f!=this&&!f.options.disabled&&(i.push([e.isFunction(f.options.items)?f.options.items.call(f.element[0],t,{item:this.currentItem}):e(f.options.items,f.element),f]),this.containers.push(f))}}for(var o=i.length-1;o>=0;o--){var l=i[o][1],c=i[o][0];for(var a=0,h=c.length;a=0;n--){var r=this.items[n];if(r.instance!=this.currentContainer&&this.currentContainer&&r.item[0]!=this.currentItem[0])continue;var i=this.options.toleranceElement?e(this.options.toleranceElement,r.item):r.item;t||(r.width=i.outerWidth(),r.height=i.outerHeight());var s=i.offset();r.left=s.left,r.top=s.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(var n=this.containers.length-1;n>=0;n--){var s=this.containers[n].element.offset();this.containers[n].containerCache.left=s.left,this.containers[n].containerCache.top=s.top,this.containers[n].containerCache.width=this.containers[n].element.outerWidth(),this.containers[n].containerCache.height=this.containers[n].element.outerHeight()}return this},_createPlaceholder:function(t){var n=t||this,r=n.options;if(!r.placeholder||r.placeholder.constructor==String){var i=r.placeholder;r.placeholder={element:function(){var t=e(document.createElement(n.currentItem[0].nodeName)).addClass(i||n.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];return i||(t.style.visibility="hidden"),t},update:function(e,t){if(i&&!r.forcePlaceholderSize)return;t.height()||t.height(n.currentItem.innerHeight()-parseInt(n.currentItem.css("paddingTop")||0,10)-parseInt(n.currentItem.css("paddingBottom")||0,10)),t.width()||t.width(n.currentItem.innerWidth()-parseInt(n.currentItem.css("paddingLeft")||0,10)-parseInt(n.currentItem.css("paddingRight")||0,10))}}}n.placeholder=e(r.placeholder.element.call(n.element,n.currentItem)),n.currentItem.after(n.placeholder),r.placeholder.update(n,n.placeholder)},_contactContainers:function(t){var n=null,r=null;for(var i=this.containers.length-1;i>=0;i--){if(e.ui.contains(this.currentItem[0],this.containers[i].element[0]))continue;if(this._intersectsWith(this.containers[i].containerCache)){if(n&&e.ui.contains(this.containers[i].element[0],n.element[0]))continue;n=this.containers[i],r=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0)}if(!n)return;if(this.containers.length===1)this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1;else if(this.currentContainer!=this.containers[r]){var s=1e4,o=null,u=this.positionAbs[this.containers[r].floating?"left":"top"];for(var a=this.items.length-1;a>=0;a--){if(!e.ui.contains(this.containers[r].element[0],this.items[a].item[0]))continue;var f=this.containers[r].floating?this.items[a].item.offset().left:this.items[a].item.offset().top;Math.abs(f-u)0?"down":"up")}if(!o&&!this.options.dropOnEmpty)return;this.currentContainer=this.containers[r],o?this._rearrange(t,o,null,!0):this._rearrange(t,null,this.containers[r].element,!0),this._trigger("change",t,this._uiHash()),this.containers[r]._trigger("change",t,this._uiHash(this)),this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[r]._trigger("over",t,this._uiHash(this)),this.containers[r].containerCache.over=1}},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t,this.currentItem])):n.helper=="clone"?this.currentItem.clone():this.currentItem;return r.parents("body").length||e(n.appendTo!="parent"?n.appendTo:this.currentItem[0].parentNode)[0].appendChild(r[0]),r[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")}),(r[0].style.width==""||n.forceHelperSize)&&r.width(this.currentItem.width()),(r[0].style.height==""||n.forceHelperSize)&&r.height(this.currentItem.height()),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.browser.msie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.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 t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)){var n=e(t.containment)[0],r=e(t.containment).offset(),i=e(n).css("overflow")!="hidden";this.containment=[r.left+(parseInt(e(n).css("borderLeftWidth"),10)||0)+(parseInt(e(n).css("paddingLeft"),10)||0)-this.margins.left,r.top+(parseInt(e(n).css("borderTopWidth"),10)||0)+(parseInt(e(n).css("paddingTop"),10)||0)-this.margins.top,r.left+(i?Math.max(n.scrollWidth,n.offsetWidth):n.offsetWidth)-(parseInt(e(n).css("borderLeftWidth"),10)||0)-(parseInt(e(n).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,r.top+(i?Math.max(n.scrollHeight,n.offsetHeight):n.offsetHeight)-(parseInt(e(n).css("borderTopWidth"),10)||0)-(parseInt(e(n).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(e.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r),left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(e.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r)}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName);this.cssPosition=="relative"&&(this.scrollParent[0]==document||this.scrollParent[0]==this.offsetParent[0])&&(this.offset.relative=this._getRelativeOffset());var s=t.pageX,o=t.pageY;if(this.originalPosition){this.containment&&(t.pageX-this.offset.click.leftthis.containment[2]&&(s=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top));if(n.grid){var u=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1];o=this.containment?u-this.offset.click.topthis.containment[3]?u-this.offset.click.topthis.containment[2]?a-this.offset.click.left=0;s--)e.ui.contains(this.containers[s].element[0],this.currentItem[0])&&!n&&(r.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.containers[s])),r.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.containers[s])))}for(var s=this.containers.length-1;s>=0;s--)n||r.push(function(e){return function(t){e._trigger("deactivate",t,this._uiHash(this))}}.call(this,this.containers[s])),this.containers[s].containerCache.over&&(r.push(function(e){return function(t){e._trigger("out",t,this._uiHash(this))}}.call(this,this.containers[s])),this.containers[s].containerCache.over=0);this._storedCursor&&e("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(!n){this._trigger("beforeStop",t,this._uiHash());for(var s=0;s").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i=document.activeElement;try{i.id}catch(s){i=document.body}return t.wrap(r),(t[0]===i||e.contains(t[0],i))&&e(i).focus(),r=t.parent(),t.css("position")=="static"?(r.css({position:"relative"}),t.css({position:"relative"})):(e.extend(n,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,r){n[r]=t.css(r),isNaN(parseInt(n[r],10))&&(n[r]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),r.css(n).show()},removeWrapper:function(t){var n,r=document.activeElement;return t.parent().is(".ui-effects-wrapper")?(n=t.parent().replaceWith(t),(t[0]===r||e.contains(t[0],r))&&e(r).focus(),n):t},setTransition:function(t,n,r,i){return i=i||{},e.each(n,function(e,n){var s=t.cssUnit(n);s[0]>0&&(i[n]=s[0]*r+s[1])}),i}}),e.fn.extend({effect:function(t,n,r,i){var s=l.apply(this,arguments),o={options:s[1],duration:s[2],callback:s[3]},u=o.options.mode,a=e.effects[t];return e.fx.off||!a?u?this[u](o.duration,o.callback):this.each(function(){o.callback&&o.callback.call(this)}):a.call(this,o)},_show:e.fn.show,show:function(e){if(c(e))return this._show.apply(this,arguments);var t=l.apply(this,arguments);return t[1].mode="show",this.effect.apply(this,t)},_hide:e.fn.hide,hide:function(e){if(c(e))return this._hide.apply(this,arguments);var t=l.apply(this,arguments);return t[1].mode="hide",this.effect.apply(this,t)},__toggle:e.fn.toggle,toggle:function(t){if(c(t)||typeof t=="boolean"||e.isFunction(t))return this.__toggle.apply(this,arguments);var n=l.apply(this,arguments);return n[1].mode="toggle",this.effect.apply(this,n)},cssUnit:function(t){var n=this.css(t),r=[];return e.each(["em","px","%","pt"],function(e,t){n.indexOf(t)>0&&(r=[parseFloat(n),t])}),r}});var h={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,t){h[t]=function(t){return Math.pow(t,e+2)}}),e.extend(h,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e)},Elastic:function(e){return e===0||e===1?e:-Math.pow(2,8*(e-1))*Math.sin(((e-1)*80-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){var t,n=4;while(e<((t=Math.pow(2,--n))-1)/11);return 1/Math.pow(4,3-n)-7.5625*Math.pow((t*3-2)/22-e,2)}}),e.each(h,function(t,n){e.easing["easeIn"+t]=n,e.easing["easeOut"+t]=function(e){return 1-n(1-e)},e.easing["easeInOut"+t]=function(e){return e<.5?n(e*2)/2:n(e*-2+2)/-2+1}})}(jQuery),function(e,t){e.effects.blind=function(t){return this.queue(function(){var n=e(this),r=["position","top","bottom","left","right"],i=e.effects.setMode(n,t.options.mode||"hide"),s=t.options.direction||"vertical";e.effects.save(n,r),n.show();var u=e.effects.createWrapper(n).css({overflow:"hidden"}),a=s=="vertical"?"height":"width",f=s=="vertical"?u.height():u.width();i=="show"&&u.css(a,0);var l={};l[a]=i=="show"?f:0,u.animate(l,t.duration,t.options.easing,function(){i=="hide"&&n.hide(),e.effects.restore(n,r),e.effects.removeWrapper(n),t.callback&&t.callback.apply(n[0],arguments),n.dequeue()})})}}(jQuery),function(e,t){e.effects.bounce=function(t){return this.queue(function(){var n=e(this),r=["position","top","bottom","left","right"],i=e.effects.setMode(n,t.options.mode||"effect"),s=t.options.direction||"up",u=t.options.distance||20,a=t.options.times||5,f=t.duration||250;/show|hide/.test(i)&&r.push("opacity"),e.effects.save(n,r),n.show(),e.effects.createWrapper(n);var l=s=="up"||s=="down"?"top":"left",c=s=="up"||s=="left"?"pos":"neg",u=t.options.distance||(l=="top"?n.outerHeight(!0)/3:n.outerWidth(!0)/3);i=="show"&&n.css("opacity",0).css(l,c=="pos"?-u:u),i=="hide"&&(u/=a*2),i!="hide"&&a--;if(i=="show"){var h={opacity:1};h[l]=(c=="pos"?"+=":"-=")+u,n.animate(h,f/2,t.options.easing),u/=2,a--}for(var p=0;p").css({position:"absolute",visibility:"visible",left:-l*(u/r),top:-f*(a/n)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:u/r,height:a/n,left:s.left+l*(u/r)+(t.options.mode=="show"?(l-Math.floor(r/2))*(u/r):0),top:s.top+f*(a/n)+(t.options.mode=="show"?(f-Math.floor(n/2))*(a/n):0),opacity:t.options.mode=="show"?0:1}).animate({left:s.left+l*(u/r)+(t.options.mode=="show"?0:(l-Math.floor(r/2))*(u/r)),top:s.top+f*(a/n)+(t.options.mode=="show"?0:(f-Math.floor(n/2))*(a/n)),opacity:t.options.mode=="show"?1:0},t.duration||500);setTimeout(function(){t.options.mode=="show"?i.css({visibility:"visible"}):i.css({visibility:"visible"}).hide(),t.callback&&t.callback.apply(i[0]),i.dequeue(),e("div.ui-effects-explode").remove()},t.duration||500)})}}(jQuery),function(e,t){e.effects.fade=function(t){return this.queue(function(){var n=e(this),r=e.effects.setMode(n,t.options.mode||"hide");n.animate({opacity:r},{queue:!1,duration:t.duration,easing:t.options.easing,complete:function(){t.callback&&t.callback.apply(this,arguments),n.dequeue()}})})}}(jQuery),function(e,t){e.effects.fold=function(t){return this.queue(function(){var n=e(this),r=["position","top","bottom","left","right"],i=e.effects.setMode(n,t.options.mode||"hide"),s=t.options.size||15,u=!!t.options.horizFirst,a=t.duration?t.duration/2:e.fx.speeds._default/2;e.effects.save( -n,r),n.show();var f=e.effects.createWrapper(n).css({overflow:"hidden"}),l=i=="show"!=u,c=l?["width","height"]:["height","width"],h=l?[f.width(),f.height()]:[f.height(),f.width()],p=/([0-9]+)%/.exec(s);p&&(s=parseInt(p[1],10)/100*h[i=="hide"?0:1]),i=="show"&&f.css(u?{height:0,width:s}:{height:s,width:0});var d={},v={};d[c[0]]=i=="show"?h[0]:s,v[c[1]]=i=="show"?h[1]:0,f.animate(d,a,t.options.easing).animate(v,a,t.options.easing,function(){i=="hide"&&n.hide(),e.effects.restore(n,r),e.effects.removeWrapper(n),t.callback&&t.callback.apply(n[0],arguments),n.dequeue()})})}}(jQuery),function(e,t){e.effects.highlight=function(t){return this.queue(function(){var n=e(this),r=["backgroundImage","backgroundColor","opacity"],i=e.effects.setMode(n,t.options.mode||"show"),s={backgroundColor:n.css("backgroundColor")};i=="hide"&&(s.opacity=0),e.effects.save(n,r),n.show().css({backgroundImage:"none",backgroundColor:t.options.color||"#ffff99"}).animate(s,{queue:!1,duration:t.duration,easing:t.options.easing,complete:function(){i=="hide"&&n.hide(),e.effects.restore(n,r),i=="show"&&!e.support.opacity&&this.style.removeAttribute("filter"),t.callback&&t.callback.apply(this,arguments),n.dequeue()}})})}}(jQuery),function(e,t){e.effects.pulsate=function(t){return this.queue(function(){var n=e(this),r=e.effects.setMode(n,t.options.mode||"show"),i=(t.options.times||5)*2-1,s=t.duration?t.duration/2:e.fx.speeds._default/2,u=n.is(":visible"),a=0;u||(n.css("opacity",0).show(),a=1),(r=="hide"&&u||r=="show"&&!u)&&i--;for(var f=0;f').appendTo(document.body).addClass(t.options.className).css({top:u.top,left:u.left,height:n.innerHeight(),width:n.innerWidth(),position:"absolute"}).animate(s,t.duration,t.options.easing,function(){a.remove(),t.callback&&t.callback.apply(n[0],arguments),n.dequeue()})})}}(jQuery),function(e,t){e.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 t=this,n=t.options;t.running=0,t.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix"),t.headers=t.element.find(n.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){if(n.disabled)return;e(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){if(n.disabled)return;e(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){if(n.disabled)return;e(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){if(n.disabled)return;e(this).removeClass("ui-state-focus")}),t.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");if(n.navigation){var r=t.element.find("a").filter(n.navigationFilter).eq(0);if(r.length){var i=r.closest(".ui-accordion-header");i.length?t.active=i:t.active=r.closest(".ui-accordion-content").prev()}}t.active=t._findActive(t.active||n.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top"),t.active.next().addClass("ui-accordion-content-active"),t._createIcons(),t.resize(),t.element.attr("role","tablist"),t.headers.attr("role","tab").bind("keydown.accordion",function(e){return t._keydown(e)}).next().attr("role","tabpanel"),t.headers.not(t.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide(),t.active.length?t.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):t.headers.eq(0).attr("tabIndex",0),e.browser.safari||t.headers.find("a").attr("tabIndex",-1),n.event&&t.headers.bind(n.event.split(" ").join(".accordion ")+".accordion",function(e){t._clickHandler.call(t,e,this),e.preventDefault()})},_createIcons:function(){var t=this.options;t.icons&&(e("").addClass("ui-icon "+t.icons.header).prependTo(this.headers),this.active.children(".ui-icon").toggleClass(t.icons.header).toggleClass(t.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 t=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 n=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");return(t.autoHeight||t.fillHeight)&&n.css("height",""),e.Widget.prototype.destroy.call(this)},_setOption:function(t,n){e.Widget.prototype._setOption.apply(this,arguments),t=="active"&&this.activate(n),t=="icons"&&(this._destroyIcons(),n&&this._createIcons()),t=="disabled"&&this.headers.add(this.headers.next())[n?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(t){if(this.options.disabled||t.altKey||t.ctrlKey)return;var n=e.ui.keyCode,r=this.headers.length,i=this.headers.index(t.target),s=!1;switch(t.keyCode){case n.RIGHT:case n.DOWN:s=this.headers[(i+1)%r];break;case n.LEFT:case n.UP:s=this.headers[(i-1+r)%r];break;case n.SPACE:case n.ENTER:this._clickHandler({target:t.target},t.target),t.preventDefault()}return s?(e(t.target).attr("tabIndex",-1),e(s).attr("tabIndex",0),s.focus(),!1):!0},resize:function(){var t=this.options,n;if(t.fillSpace){if(e.browser.msie){var r=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}n=this.element.parent().height(),e.browser.msie&&this.element.parent().css("overflow",r),this.headers.each(function(){n-=e(this).outerHeight(!0)}),this.headers.next().each(function(){e(this).height(Math.max(0,n-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")}else t.autoHeight&&(n=0,this.headers.next().each(function(){n=Math.max(n,e(this).height("").height())}).height(n));return this},activate:function(e){this.options.active=e;var t=this._findActive(e)[0];return this._clickHandler({target:t},t),this},_findActive:function(t){return t?typeof t=="number"?this.headers.filter(":eq("+t+")"):this.headers.not(this.headers.not(t)):t===!1?e([]):this.headers.filter(":eq(0)")},_clickHandler:function(t,n){var r=this.options;if(r.disabled)return;if(!t.target){if(!r.collapsible)return;this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(r.icons.headerSelected).addClass(r.icons.header),this.active.next().addClass("ui-accordion-content-active");var i=this.active.next(),s={options:r,newHeader:e([]),oldHeader:r.active,newContent:e([]),oldContent:i},o=this.active=e([]);this._toggle(o,i,s);return}var u=e(t.currentTarget||n),a=u[0]===this.active[0];r.active=r.collapsible&&a?!1:this.headers.index(u);if(this.running||!r.collapsible&&a)return;var f=this.active,o=u.next(),i=this.active.next(),s={options:r,newHeader:a&&r.collapsible?e([]):u,oldHeader:this.active,newContent:a&&r.collapsible?e([]):o,oldContent:i},l=this.headers.index(this.active[0])>this.headers.index(u[0]);this.active=a?e([]):u,this._toggle(o,i,s,a,l),f.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(r.icons.headerSelected).addClass(r.icons.header),a||(u.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(r.icons.header).addClass(r.icons.headerSelected),u.next().addClass("ui-accordion-content-active"));return},_toggle:function(t,n,r,i,s){var o=this,u=o.options;o.toShow=t,o.toHide=n,o.data=r;var a=function(){if(!o)return;return o._completed.apply(o,arguments)};o._trigger("changestart",null,o.data),o.running=n.size()===0?t.size():n.size();if(u.animated){var f={};u.collapsible&&i?f={toShow:e([]),toHide:n,complete:a,down:s,autoHeight:u.autoHeight||u.fillSpace}:f={toShow:t,toHide:n,complete:a,down:s,autoHeight:u.autoHeight||u.fillSpace},u.proxied||(u.proxied=u.animated),u.proxiedDuration||(u.proxiedDuration=u.duration),u.animated=e.isFunction(u.proxied)?u.proxied(f):u.proxied,u.duration=e.isFunction(u.proxiedDuration)?u.proxiedDuration(f):u.proxiedDuration;var l=e.ui.accordion.animations,c=u.duration,h=u.animated;h&&!l[h]&&!e.easing[h]&&(h="slide"),l[h]||(l[h]=function(e){this.slide(e,{easing:h,duration:c||700})}),l[h](f)}else u.collapsible&&i?t.toggle():(n.hide(),t.show()),a(!0);n.prev().attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).blur(),t.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(e){this.running=e?0:--this.running;if(this.running)return;this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""}),this.toHide.removeClass("ui-accordion-content-active"),this.toHide.length&&(this.toHide.parent()[0].className=this.toHide.parent()[0].className),this._trigger("change",null,this.data)}}),e.extend(e.ui.accordion,{version:"1.8.23",animations:{slide:function(t,n){t=e.extend({easing:"swing",duration:300},t,n);if(!t.toHide.size()){t.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},t);return}if(!t.toShow.size()){t.toHide.animate({height:"hide",paddingTop:"hide",paddingBottom:"hide"},t);return}var r=t.toShow.css("overflow"),i=0,s={},o={},u=["height","paddingTop","paddingBottom"],a,f=t.toShow;a=f[0].style.width,f.width(f.parent().width()-parseFloat(f.css("paddingLeft"))-parseFloat(f.css("paddingRight"))-(parseFloat(f.css("borderLeftWidth"))||0)-(parseFloat(f.css("borderRightWidth"))||0)),e.each(u,function(n,r){o[r]="hide";var i=(""+e.css(t.toShow[0],r)).match(/^([\d+-.]+)(.*)$/);s[r]={value:i[1],unit:i[2]||"px"}}),t.toShow.css({height:0,overflow:"hidden"}).show(),t.toHide.filter(":hidden").each(t.complete).end().filter(":visible").animate(o,{step:function(e,n){n.prop=="height"&&(i=n.end-n.start===0?0:(n.now-n.start)/(n.end-n.start)),t.toShow[0].style[n.prop]=i*s[n.prop].value+s[n.prop].unit},duration:t.duration,easing:t.easing,complete:function(){t.autoHeight||t.toShow.css("height",""),t.toShow.css({width:a,overflow:r}),t.complete()}})},bounceslide:function(e){this.slide(e,{easing:e.down?"easeOutBounce":"swing",duration:e.down?1e3:200})}}})}(jQuery),function(e,t){var n=0;e.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 t=this,n=this.element[0].ownerDocument,r;this.isMultiLine=this.element.is("textarea"),this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(n){if(t.options.disabled||t.element.propAttr("readOnly"))return;r=!1;var i=e.ui.keyCode;switch(n.keyCode){case i.PAGE_UP:t._move("previousPage",n);break;case i.PAGE_DOWN:t._move("nextPage",n);break;case i.UP:t._keyEvent("previous",n);break;case i.DOWN:t._keyEvent("next",n);break;case i.ENTER:case i.NUMPAD_ENTER:t.menu.active&&(r=!0,n.preventDefault());case i.TAB:if(!t.menu.active)return;t.menu.select(n);break;case i.ESCAPE:t.element.val(t.term),t.close(n);break;default:clearTimeout(t.searching),t.searching=setTimeout(function(){t.term!=t.element.val()&&(t.selectedItem=null,t.search(null,n))},t.options.delay)}}).bind("keypress.autocomplete",function(e){r&&(r=!1,e.preventDefault())}).bind("focus.autocomplete",function(){if(t.options.disabled)return;t.selectedItem=null,t.previous=t.element.val()}).bind("blur.autocomplete",function(e){if(t.options.disabled)return;clearTimeout(t.searching),t.closing=setTimeout(function(){t.close(e),t._change(e)},150)}),this._initSource(),this.menu=e("
    ").addClass("ui-autocomplete").appendTo(e(this.options.appendTo||"body",n)[0]).mousedown(function(n){var r=t.menu.element[0];e(n.target).closest(".ui-menu-item").length||setTimeout(function(){e(document).one("mousedown",function(n){n.target!==t.element[0]&&n.target!==r&&!e.ui.contains(r,n.target)&&t.close()})},1),setTimeout(function(){clearTimeout(t.closing)},13)}).menu({focus:function(e,n){var r=n.item.data("item.autocomplete");!1!==t._trigger("focus",e,{item:r})&&/^key/.test(e.originalEvent.type)&&t.element.val(r.value)},selected:function(e,r){var i=r.item.data("item.autocomplete"),s=t.previous;t.element[0]!==n.activeElement&&(t.element.focus(),t.previous=s,setTimeout(function(){t.previous=s,t.selectedItem=i},1)),!1!==t._trigger("select",e,{item:i})&&t.element.val(i.value),t.term=t.element.val(),t.close(e),t.selectedItem=i},blur:function(e,n){t.menu.element.is(":visible")&&t.element.val()!==t.term&&t.element.val(t.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"),e.fn.bgiframe&&this.menu.element.bgiframe(),t.beforeunloadHandler=function(){t.element.removeAttr("autocomplete")},e(window).bind("beforeunload",t.beforeunloadHandler)},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup"),this.menu.element.remove(),e(window).unbind("beforeunload",this.beforeunloadHandler),e.Widget.prototype.destroy.call(this)},_setOption:function(t,n){e.Widget.prototype._setOption.apply(this,arguments),t==="source"&&this._initSource(),t==="appendTo"&&this.menu.element.appendTo(e(n||"body",this.element[0].ownerDocument)[0]),t==="disabled"&&n&&this.xhr&&this.xhr.abort()},_initSource:function(){var t=this,n,r;e.isArray(this.options.source)?(n=this.options.source,this.source=function(t,r){r(e.ui.autocomplete.filter(n,t.term))}):typeof this.options.source=="string"?(r=this.options.source,this.source=function(n,i){t.xhr&&t.xhr.abort(),t.xhr=e.ajax({url:r,data:n,dataType:"json",success:function(e,t){i(e)},error:function(){i([])}})}):this.source=this.options.source},search:function(e,t){e=e!=null?e:this.element.val(),this.term=this.element.val();if(e.length").data("item.autocomplete",n).append(e("
    ").text(n.label)).appendTo(t)},_move:function(e,t){if(!this.menu.element.is(":visible")){this.search(null,t);return}if(this.menu.first()&&/^previous/.test(e)||this.menu.last()&&/^next/.test(e)){this.element.val(this.term),this.menu.deactivate();return}this.menu[e](t)},widget:function(){return this.menu.element},_keyEvent:function(e,t){if(!this.isMultiLine||this.menu.element.is(":visible"))this._move(e,t),t.preventDefault()}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},filter:function(t,n){var r=new RegExp(e.ui.autocomplete.escapeRegex(n),"i");return e.grep(t,function(e){return r.test(e.label||e.value||e)})}})}(jQuery),function(e){e.widget("ui.menu",{_create:function(){var t=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(n){if(!e(n.target).closest(".ui-menu-item a").length)return;n.preventDefault(),t.select(n)}),this.refresh()},refresh:function(){var t=this,n=this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem");n.children("a").addClass("ui-corner-all").attr("tabindex",-1).mouseenter(function(n){t.activate(n,e(this).parent())}).mouseleave(function(){t.deactivate()})},activate:function(e,t){this.deactivate();if(this.hasScroll()){var n=t.offset().top-this.element.offset().top,r=this.element.scrollTop(),i=this.element.height();n<0?this.element.scrollTop(r+n):n>=i&&this.element.scrollTop(r+n-i+t.height())}this.active=t.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end(),this._trigger("focus",e,{item:t})},deactivate:function(){if(!this.active)return;this.active.children("a").removeClass("ui-state-hover").removeAttr("id"),this._trigger("blur"),this.active=null},next:function(e){this.move("next",".ui-menu-item:first",e)},previous:function(e){this.move("prev",".ui-menu-item:last",e)},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(e,t,n){if(!this.active){this.activate(n,this.element.children(t));return}var r=this.active[e+"All"](".ui-menu-item").eq(0);r.length?this.activate(n,r):this.activate(n,this.element.children(t))},nextPage:function(t){if(this.hasScroll()){if(!this.active||this.last()){this.activate(t,this.element.children(".ui-menu-item:first"));return}var n=this.active.offset().top,r=this.element.height(),i=this.element.children(".ui-menu-item").filter(function(){var t=e(this).offset().top-n-r+e(this).height();return t<10&&t>-10});i.length||(i=this.element.children(".ui-menu-item:last")),this.activate(t,i)}else this.activate(t,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(t){if(this.hasScroll()){if(!this.active||this.first()){this.activate(t,this.element.children(".ui-menu-item:last"));return}var n=this.active.offset().top,r=this.element.height(),i=this.element.children(".ui-menu-item").filter(function(){var t=e(this).offset().top-n+r-e(this).height();return t<10&&t>-10});i.length||(i=this.element.children(".ui-menu-item:first")),this.activate(t,i)}else this.activate(t,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()",this.element[0].ownerDocument).addClass("ui-button-text").html(this.options.label).appendTo(t.empty()).text(),r=this.options.icons,i=r.primary&&r.secondary,s=[];r.primary||r.secondary?(this.options.text&&s.push("ui-button-text-icon"+(i?"s":r.primary?"-primary":"-secondary")),r.primary&&t.prepend(""),r.secondary&&t.append(""),this.options.text||(s.push(i?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||t.attr("title",n))):s.push("ui-button-text-only"),t.addClass(s.join(" "))}}),e.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(t,n){t==="disabled"&&this.buttons.button("option",t,n),e.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){var t=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 e(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(t?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(t?"ui-corner-left":"ui-corner-right").end().end()},destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return e(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy"),e.Widget.prototype.destroy.call(this)}})}(jQuery),function($,undefined){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($('
    '))}function bindHover(e){var t="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return e.bind("mouseout",function(e){var n=$(e.target).closest(t);if(!n.length)return;n.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(n){var r=$(n.target).closest(t);if($.datepicker._isDisabledDatepicker(instActive.inline?e.parent()[0]:instActive.input[0])||!r.length)return;r.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),r.addClass("ui-state-hover"),r.hasClass("ui-datepicker-prev")&&r.addClass("ui-datepicker-prev-hover"),r.hasClass("ui-datepicker-next")&&r.addClass("ui-datepicker-next-hover")})}function extendRemove(e,t){$.extend(e,t);for(var n in t)if(t[n]==null||t[n]==undefined)e[n]=t[n];return e}function isArray(e){return e&&($.browser.safari&&typeof e=="object"&&e.length||e.constructor&&e.constructor.toString().match(/\Array\(\)/))}$.extend($.ui,{datepicker:{version:"1.8.23"}});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(e){return extendRemove(this._defaults,e||{}),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(e,t){var n=e[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1");return{id:n,input:e,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:t,dpDiv:t?bindHover($('
    ')):this.dpDiv}},_connectDatepicker:function(e,t){var n=$(e);t.append=$([]),t.trigger=$([]);if(n.hasClass(this.markerClassName))return;this._attachments(n,t),n.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),this._autoSize(t),$.data(e,PROP_NAME,t),t.settings.disabled&&this._disableDatepicker(e)},_attachments:function(e,t){var n=this._get(t,"appendText"),r=this._get(t,"isRTL");t.append&&t.append.remove(),n&&(t.append=$(''+n+""),e[r?"before":"after"](t.append)),e.unbind("focus",this._showDatepicker),t.trigger&&t.trigger.remove();var i=this._get(t,"showOn");(i=="focus"||i=="both")&&e.focus(this._showDatepicker);if(i=="button"||i=="both"){var s=this._get(t,"buttonText"),o=this._get(t,"buttonImage");t.trigger=$(this._get(t,"buttonImageOnly")?$("").addClass(this._triggerClass).attr({src:o,alt:s,title:s}):$('').addClass(this._triggerClass).html(o==""?s:$("").attr({src:o,alt:s,title:s}))),e[r?"before":"after"](t.trigger),t.trigger.click(function(){return $.datepicker._datepickerShowing&&$.datepicker._lastInput==e[0]?$.datepicker._hideDatepicker():$.datepicker._datepickerShowing&&$.datepicker._lastInput!=e[0]?($.datepicker._hideDatepicker(),$.datepicker._showDatepicker(e[0])):$.datepicker._showDatepicker(e[0]),!1})}},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t=new Date(2009,11,20),n=this._get(e,"dateFormat");if(n.match(/[DM]/)){var r=function(e){var t=0,n=0;for(var r=0;rt&&(t=e[r].length,n=r);return n};t.setMonth(r(this._get(e,n.match(/MM/)?"monthNames":"monthNamesShort"))),t.setDate(r(this._get(e,n.match(/DD/)?"dayNames":"dayNamesShort"))+20-t.getDay())}e.input.attr("size",this._formatDate(e,t).length)}},_inlineDatepicker:function(e,t){var n=$(e);if(n.hasClass(this.markerClassName))return;n.addClass(this.markerClassName).append(t.dpDiv).bind("setData.datepicker",function(e,n,r){t.settings[n]=r}).bind("getData.datepicker",function(e,n){return this._get(t,n)}),$.data(e,PROP_NAME,t),this._setDate(t,this._getDefaultDate(t),!0),this._updateDatepicker(t),this._updateAlternate(t),t.settings.disabled&&this._disableDatepicker(e),t.dpDiv.css("display","block")},_dialogDatepicker:function(e,t,n,r,i){var s=this._dialogInst;if(!s){this.uuid+=1;var o="dp"+this.uuid;this._dialogInput=$(''),this._dialogInput.keydown(this._doKeyDown),$("body").append(this._dialogInput),s=this._dialogInst=this._newInst(this._dialogInput,!1),s.settings={},$.data(this._dialogInput[0],PROP_NAME,s)}extendRemove(s.settings,r||{}),t=t&&t.constructor==Date?this._formatDate(s,t):t,this._dialogInput.val(t),this._pos=i?i.length?i:[i.pageX,i.pageY]:null;if(!this._pos){var u=document.documentElement.clientWidth,a=document.documentElement.clientHeight,f=document.documentElement.scrollLeft||document.body.scrollLeft,l=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[u/2-100+f,a/2-150+l]}return this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),s.settings.onSelect=n,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),$.blockUI&&$.blockUI(this.dpDiv),$.data(this._dialogInput[0],PROP_NAME,s),this},_destroyDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();$.removeData(e,PROP_NAME),r=="input"?(n.append.remove(),n.trigger.remove(),t.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):(r=="div"||r=="span")&&t.removeClass(this.markerClassName).empty()},_enableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().removeClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t})},_disableDatepicker:function(e){var t=$(e),n=$.data(e,PROP_NAME);if(!t.hasClass(this.markerClassName))return;var r=e.nodeName.toLowerCase();if(r=="input")e.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if(r=="div"||r=="span"){var i=t.children("."+this._inlineClass);i.children().addClass("ui-state-disabled"),i.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=$.map(this._disabledInputs,function(t){return t==e?null:t}),this._disabledInputs[this._disabledInputs.length]=e},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;t-1}},_doKeyUp:function(e){var t=$.datepicker._getInst(e.target);if(t.input.val()!=t.lastVal)try{var n=$.datepicker.parseDate($.datepicker._get(t,"dateFormat"),t.input?t.input.val():null,$.datepicker._getFormatConfig(t));n&&($.datepicker._setDateFromField(t),$.datepicker._updateAlternate(t),$.datepicker._updateDatepicker(t))}catch(r){$.datepicker.log(r)}return!0},_showDatepicker:function(e){e=e.target||e,e.nodeName.toLowerCase()!="input"&&(e=$("input",e.parentNode)[0]);if($.datepicker._isDisabledDatepicker(e)||$.datepicker._lastInput==e)return;var t=$.datepicker._getInst(e);$.datepicker._curInst&&$.datepicker._curInst!=t&&($.datepicker._curInst.dpDiv.stop(!0,!0),t&&$.datepicker._datepickerShowing&&$.datepicker._hideDatepicker($.datepicker._curInst.input[0]));var n=$.datepicker._get(t,"beforeShow"),r=n?n.apply(e,[e,t]):{};if(r===!1)return;extendRemove(t.settings,r),t.lastVal=null,$.datepicker._lastInput=e,$.datepicker._setDateFromField(t),$.datepicker._inDialog&&(e.value=""),$.datepicker._pos||($.datepicker._pos=$.datepicker._findPos(e),$.datepicker._pos[1]+=e.offsetHeight);var i=!1;$(e).parents().each(function(){return i|=$(this).css("position")=="fixed",!i}),i&&$.browser.opera&&($.datepicker._pos[0]-=document.documentElement.scrollLeft,$.datepicker._pos[1]-=document.documentElement.scrollTop);var s={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null,t.dpDiv.empty(),t.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.datepicker._updateDatepicker(t),s=$.datepicker._checkOffset(t,s,i),t.dpDiv.css({position:$.datepicker._inDialog&&$.blockUI?"static":i?"fixed":"absolute",display:"none",left:s.left+"px",top:s.top+"px"});if(!t.inline){var o=$.datepicker._get(t,"showAnim"),u=$.datepicker._get(t,"duration"),a=function(){var e=t.dpDiv.find("iframe.ui-datepicker-cover");if(!!e.length){var n=$.datepicker._getBorders(t.dpDiv);e.css({left:-n[0],top:-n[1],width:t.dpDiv.outerWidth(),height:t.dpDiv.outerHeight()})}};t.dpDiv.zIndex($(e).zIndex()+1),$.datepicker._datepickerShowing=!0,$.effects&&$.effects[o]?t.dpDiv.show(o,$.datepicker._get(t,"showOptions"),u,a):t.dpDiv[o||"show"](o?u:null,a),(!o||!u)&&a(),t.input.is(":visible")&&!t.input.is(":disabled")&&t.input.focus(),$.datepicker._curInst=t}},_updateDatepicker:function(e){var t=this;t.maxRows=4;var n=$.datepicker._getBorders(e.dpDiv);instActive=e,e.dpDiv.empty().append(this._generateHTML(e)),this._attachHandlers(e);var r=e.dpDiv.find("iframe.ui-datepicker-cover");!r.length||r.css({left:-n[0],top:-n[1],width:e.dpDiv.outerWidth(),height:e.dpDiv.outerHeight()}),e.dpDiv.find("."+this._dayOverClass+" a").mouseover();var i=this._getNumberOfMonths(e),s=i[1],o=17;e.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),s>1&&e.dpDiv.addClass("ui-datepicker-multi-"+s).css("width",o*s+"em"),e.dpDiv[(i[0]!=1||i[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi"),e.dpDiv[(this._get(e,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),e==$.datepicker._curInst&&$.datepicker._datepickerShowing&&e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&e.input[0]!=document.activeElement&&e.input.focus();if(e.yearshtml){var u=e.yearshtml;setTimeout(function(){u===e.yearshtml&&e.yearshtml&&e.dpDiv.find("select.ui-datepicker-year:first").replaceWith(e.yearshtml),u=e.yearshtml=null},0)}},_getBorders:function(e){var t=function(e){return{thin:1,medium:2,thick:3}[e]||e};return[parseFloat(t(e.css("border-left-width"))),parseFloat(t(e.css("border-top-width")))]},_checkOffset:function(e,t,n){var r=e.dpDiv.outerWidth(),i=e.dpDiv.outerHeight(),s=e.input?e.input.outerWidth():0,o=e.input?e.input.outerHeight():0,u=document.documentElement.clientWidth+(n?0:$(document).scrollLeft()),a=document.documentElement.clientHeight+(n?0:$(document).scrollTop());return t.left-=this._get(e,"isRTL")?r-s:0,t.left-=n&&t.left==e.input.offset().left?$(document).scrollLeft():0,t.top-=n&&t.top==e.input.offset().top+o?$(document).scrollTop():0,t.left-=Math.min(t.left,t.left+r>u&&u>r?Math.abs(t.left+r-u):0),t.top-=Math.min(t.top,t.top+i>a&&a>i?Math.abs(i+o):0),t},_findPos:function(e){var t=this._getInst(e),n=this._get(t,"isRTL");while(e&&(e.type=="hidden"||e.nodeType!=1||$.expr.filters.hidden(e)))e=e[n?"previousSibling":"nextSibling"];var r=$(e).offset();return[r.left,r.top]},_hideDatepicker:function(e){var t=this._curInst;if(!t||e&&t!=$.data(e,PROP_NAME))return;if(this._datepickerShowing){var n=this._get(t,"showAnim"),r=this._get(t,"duration"),i=function(){$.datepicker._tidyDialog(t)};$.effects&&$.effects[n]?t.dpDiv.hide(n,$.datepicker._get(t,"showOptions"),r,i):t.dpDiv[n=="slideDown"?"slideUp":n=="fadeIn"?"fadeOut":"hide"](n?r:null,i),n||i(),this._datepickerShowing=!1;var s=this._get(t,"onClose");s&&s.apply(t.input?t.input[0]:null,[t.input?t.input.val():"",t]),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(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(e){if(!$.datepicker._curInst)return;var t=$(e.target),n=$.datepicker._getInst(t[0]);(t[0].id!=$.datepicker._mainDivId&&t.parents("#"+$.datepicker._mainDivId).length==0&&!t.hasClass($.datepicker.markerClassName)&&!t.closest("."+$.datepicker._triggerClass).length&&$.datepicker._datepickerShowing&&(!$.datepicker._inDialog||!$.blockUI)||t.hasClass($.datepicker.markerClassName)&&$.datepicker._curInst!=n)&&$.datepicker._hideDatepicker()},_adjustDate:function(e,t,n){var r=$(e),i=this._getInst(r[0]);if(this._isDisabledDatepicker(r[0]))return;this._adjustInstDate(i,t+(n=="M"?this._get(i,"showCurrentAtPos"):0),n),this._updateDatepicker(i)},_gotoToday:function(e){var t=$(e),n=this._getInst(t[0]);if(this._get(n,"gotoCurrent")&&n.currentDay)n.selectedDay=n.currentDay,n.drawMonth=n.selectedMonth=n.currentMonth,n.drawYear=n.selectedYear=n.currentYear;else{var r=new Date;n.selectedDay=r.getDate(),n.drawMonth=n.selectedMonth=r.getMonth(),n.drawYear=n.selectedYear=r.getFullYear()}this._notifyChange(n),this._adjustDate(t)},_selectMonthYear:function(e,t,n){var r=$(e),i=this._getInst(r[0]);i["selected"+(n=="M"?"Month":"Year")]=i["draw"+(n=="M"?"Month":"Year")]=parseInt(t.options[t.selectedIndex].value,10),this._notifyChange(i),this._adjustDate(r)},_selectDay:function(e,t,n,r){var i=$(e);if($(r).hasClass(this._unselectableClass)||this._isDisabledDatepicker(i[0]))return;var s=this._getInst(i[0]);s.selectedDay=s.currentDay=$("a",r).html(),s.selectedMonth=s.currentMonth=t,s.selectedYear=s.currentYear=n,this._selectDate(e,this._formatDate(s,s.currentDay,s.currentMonth,s.currentYear))},_clearDate:function(e){var t=$(e),n=this._getInst(t[0]);this._selectDate(t,"")},_selectDate:function(e,t){var n=$(e),r=this._getInst(n[0]);t=t!=null?t:this._formatDate(r),r.input&&r.input.val(t),this._updateAlternate(r);var i=this._get(r,"onSelect");i?i.apply(r.input?r.input[0]:null,[t,r]):r.input&&r.input.trigger("change"),r.inline?this._updateDatepicker(r):(this._hideDatepicker(),this._lastInput=r.input[0],typeof r.input[0]!="object"&&r.input.focus(),this._lastInput=null)},_updateAlternate:function(e){var t=this._get(e,"altField");if(t){var n=this._get(e,"altFormat")||this._get(e,"dateFormat"),r=this._getDate(e),i=this.formatDate(n,r,this._getFormatConfig(e));$(t).each(function(){$(this).val(i)})}},noWeekends:function(e){var t=e.getDay();return[t>0&&t<6,""]},iso8601Week:function(e){var t=new Date(e.getTime());t.setDate(t.getDate()+4-(t.getDay()||7));var n=t.getTime();return t.setMonth(0),t.setDate(1),Math.floor(Math.round((n-t)/864e5)/7)+1},parseDate:function(e,t,n){if(e==null||t==null)throw"Invalid arguments";t=typeof t=="object"?t.toString():t+"";if(t=="")return null;var r=(n?n.shortYearCutoff:null)||this._defaults.shortYearCutoff;r=typeof r!="string"?r:(new Date).getFullYear()%100+parseInt(r,10);var i=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,s=(n?n.dayNames:null)||this._defaults.dayNames,o=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,u=(n?n.monthNames:null)||this._defaults.monthNames,a=-1,f=-1,l=-1,c=-1,h=!1,p=function(t){var n=y+1-1){f=1,l=c;do{var w=this._getDaysInMonth(a,f-1);if(l<=w)break;f++,l-=w}while(!0)}var b=this._daylightSavingAdjust(new Date(a,f-1,l));if(b.getFullYear()!=a||b.getMonth()+1!=f||b.getDate()!=l)throw"Invalid date";return b},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(e,t,n){if(!t)return"";var r=(n?n.dayNamesShort:null)||this._defaults.dayNamesShort,i=(n?n.dayNames:null)||this._defaults.dayNames,s=(n?n.monthNamesShort:null)||this._defaults.monthNamesShort,o=(n?n.monthNames:null)||this._defaults.monthNames,u=function(t){var n=h+112?e.getHours()+2:0),e):null},_setDate:function(e,t,n){var r=!t,i=e.selectedMonth,s=e.selectedYear,o=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=o.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=o.getMonth(),e.drawYear=e.selectedYear=e.currentYear=o.getFullYear(),(i!=e.selectedMonth||s!=e.selectedYear)&&!n&&this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(r?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&e.input.val()==""?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(e){var t=this._get(e,"stepMonths"),n="#"+e.id.replace(/\\\\/g,"\\");e.dpDiv.find("[data-handler]").map(function(){var e={prev:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,-t,"M")},next:function(){window["DP_jQuery_"+dpuuid].datepicker._adjustDate(n,+t,"M")},hide:function(){window["DP_jQuery_"+dpuuid].datepicker._hideDatepicker()},today:function(){window["DP_jQuery_"+dpuuid].datepicker._gotoToday(n)},selectDay:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectDay(n,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"M"),!1},selectYear:function(){return window["DP_jQuery_"+dpuuid].datepicker._selectMonthYear(n,this,"Y"),!1}};$(this).bind(this.getAttribute("data-event"),e[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t=new Date;t=this._daylightSavingAdjust(new Date(t.getFullYear(),t.getMonth(),t.getDate()));var n=this._get(e,"isRTL"),r=this._get(e,"showButtonPanel"),i=this._get(e,"hideIfNoPrevNext"),s=this._get(e,"navigationAsDateFormat"),o=this._getNumberOfMonths(e),u=this._get(e,"showCurrentAtPos"),a=this._get(e,"stepMonths"),f=o[0]!=1||o[1]!=1,l=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),c=this._getMinMaxDate(e,"min"),h=this._getMinMaxDate(e,"max"),p=e.drawMonth-u,d=e.drawYear;p<0&&(p+=12,d--);if(h){var v=this._daylightSavingAdjust(new Date(h.getFullYear(),h.getMonth()-o[0]*o[1]+1,h.getDate()));v=c&&vv)p--,p<0&&(p=11,d--)}e.drawMonth=p,e.drawYear=d;var m=this._get(e,"prevText");m=s?this.formatDate(m,this._daylightSavingAdjust(new Date(d,p-a,1)),this._getFormatConfig(e)):m;var g=this._canAdjustMonth(e,-1,d,p)?''+m+"":i?"":''+m+"",y=this._get(e,"nextText");y=s?this.formatDate(y,this._daylightSavingAdjust(new Date(d,p+a,1)),this._getFormatConfig(e)):y;var b=this._canAdjustMonth(e,1,d,p)?''+y+"":i?"":''+y+"",w=this._get(e,"currentText"),E=this._get(e,"gotoCurrent")&&e.currentDay?l:t;w=s?this.formatDate(w,E,this._getFormatConfig(e)):w;var S=e.inline?"":'",x=r?'
    '+(n?S:"")+(this._isInRange(e,E)?'":"")+(n?"":S)+"
    ":"",T=parseInt(this._get(e,"firstDay"),10);T=isNaN(T)?0:T;var N=this._get(e,"showWeek"),C=this._get(e,"dayNames"),k=this._get(e,"dayNamesShort"),L=this._get(e,"dayNamesMin"),A=this._get(e,"monthNames"),O=this._get(e,"monthNamesShort"),M=this._get(e,"beforeShowDay"),_=this._get(e,"showOtherMonths"),D=this._get(e,"selectOtherMonths"),P=this._get(e,"calculateWeek")||this.iso8601Week,H=this._getDefaultDate(e),B="";for(var j=0;j1)switch(I){case 0:U+=" ui-datepicker-group-first",R=" ui-corner-"+(n?"right":"left");break;case o[1]-1:U+=" ui-datepicker-group-last",R=" ui-corner-"+(n?"left":"right");break;default:U+=" ui-datepicker-group-middle",R=""}U+='">'}U+='
    '+(/all|left/.test(R)&&j==0?n?b:g:"")+(/all|right/.test(R)&&j==0?n?g:b:"")+this._generateMonthYearHeader(e,p,d,c,h,j>0||I>0,A,O)+'
    '+"";var z=N?'":"";for(var W=0;W<7;W++){var X=(W+T)%7;z+="=5?' class="ui-datepicker-week-end"':"")+">"+''+L[X]+""}U+=z+"";var V=this._getDaysInMonth(d,p);d==e.selectedYear&&p==e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,V));var J=(this._getFirstDayOfMonth(d,p)-T+7)%7,K=Math.ceil((J+V)/7),Q=f?this.maxRows>K?this.maxRows:K:K;this.maxRows=Q;var G=this._daylightSavingAdjust(new Date(d,p,1-J));for(var Y=0;Y";var Z=N?'":"";for(var W=0;W<7;W++){var et=M?M.apply(e.input?e.input[0]:null,[G]):[!0,""],tt=G.getMonth()!=p,nt=tt&&!D||!et[0]||c&&Gh;Z+='",G.setDate(G.getDate()+1),G=this._daylightSavingAdjust(G)}U+=Z+""}p++,p>11&&(p=0,d++),U+="
    '+this._get(e,"weekHeader")+"
    '+this._get(e,"calculateWeek")(G)+""+(tt&&!_?" ":nt?''+G.getDate()+"":''+G.getDate()+"")+"
    "+(f?"
    "+(o[0]>0&&I==o[1]-1?'
    ':""):""),F+=U}B+=F}return B+=x+($.browser.msie&&parseInt($.browser.version,10)<7&&!e.inline?'':""),e._keyEvent=!1,B},_generateMonthYearHeader:function(e,t,n,r,i,s,o,u){var a=this._get(e,"changeMonth"),f=this._get(e,"changeYear"),l=this._get(e,"showMonthAfterYear" -),c='
    ',h="";if(s||!a)h+=''+o[t]+"";else{var p=r&&r.getFullYear()==n,d=i&&i.getFullYear()==n;h+='"}l||(c+=h+(s||!a||!f?" ":""));if(!e.yearshtml){e.yearshtml="";if(s||!f)c+=''+n+"";else{var m=this._get(e,"yearRange").split(":"),g=(new Date).getFullYear(),y=function(e){var t=e.match(/c[+-].*/)?n+parseInt(e.substring(1),10):e.match(/[+-].*/)?g+parseInt(e,10):parseInt(e,10);return isNaN(t)?g:t},b=y(m[0]),w=Math.max(b,y(m[1]||""));b=r?Math.max(b,r.getFullYear()):b,w=i?Math.min(w,i.getFullYear()):w,e.yearshtml+='",c+=e.yearshtml,e.yearshtml=null}}return c+=this._get(e,"yearSuffix"),l&&(c+=(s||!a||!f?" ":"")+h),c+="
    ",c},_adjustInstDate:function(e,t,n){var r=e.drawYear+(n=="Y"?t:0),i=e.drawMonth+(n=="M"?t:0),s=Math.min(e.selectedDay,this._getDaysInMonth(r,i))+(n=="D"?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(r,i,s)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),(n=="M"||n=="Y")&&this._notifyChange(e)},_restrictMinMax:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max"),i=n&&tr?r:i,i},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return t==null?[1,1]:typeof t=="number"?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return(new Date(e,t,1)).getDay()},_canAdjustMonth:function(e,t,n,r){var i=this._getNumberOfMonths(e),s=this._daylightSavingAdjust(new Date(n,r+(t<0?t:i[0]*i[1]),1));return t<0&&s.setDate(this._getDaysInMonth(s.getFullYear(),s.getMonth())),this._isInRange(e,s)},_isInRange:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max");return(!n||t.getTime()>=n.getTime())&&(!r||t.getTime()<=r.getTime())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t=typeof t!="string"?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,n,r){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var i=t?typeof t=="object"?t:this._daylightSavingAdjust(new Date(r,n,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),i,this._getFormatConfig(e))}}),$.fn.datepicker=function(e){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var t=Array.prototype.slice.call(arguments,1);return typeof e!="string"||e!="isDisabled"&&e!="getDate"&&e!="widget"?e=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t)):this.each(function(){typeof e=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this].concat(t)):$.datepicker._attachDatepicker(this,e)}):$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.23",window["DP_jQuery_"+dpuuid]=$}(jQuery),function(e,t){var n="ui-dialog ui-widget ui-widget-content ui-corner-all ",r={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},i={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0};e.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(t){var n=e(this).css(t).offset().top;n<0&&e(this).css("top",t.top-n)}},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 t=this,r=t.options,i=r.title||" ",s=e.ui.dialog.getTitleId(t.element),o=(t.uiDialog=e("
    ")).appendTo(document.body).hide().addClass(n+r.dialogClass).css({zIndex:r.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(n){r.closeOnEscape&&!n.isDefaultPrevented()&&n.keyCode&&n.keyCode===e.ui.keyCode.ESCAPE&&(t.close(n),n.preventDefault())}).attr({role:"dialog","aria-labelledby":s}).mousedown(function(e){t.moveToTop(!1,e)}),u=t.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(o),a=(t.uiDialogTitlebar=e("
    ")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(o),f=e('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){f.addClass("ui-state-hover")},function(){f.removeClass("ui-state-hover")}).focus(function(){f.addClass("ui-state-focus")}).blur(function(){f.removeClass("ui-state-focus")}).click(function(e){return t.close(e),!1}).appendTo(a),l=(t.uiDialogTitlebarCloseText=e("")).addClass("ui-icon ui-icon-closethick").text(r.closeText).appendTo(f),c=e("").addClass("ui-dialog-title").attr("id",s).html(i).prependTo(a);e.isFunction(r.beforeclose)&&!e.isFunction(r.beforeClose)&&(r.beforeClose=r.beforeclose),a.find("*").add(a).disableSelection(),r.draggable&&e.fn.draggable&&t._makeDraggable(),r.resizable&&e.fn.resizable&&t._makeResizable(),t._createButtons(r.buttons),t._isOpen=!1,e.fn.bgiframe&&o.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var e=this;return e.overlay&&e.overlay.destroy(),e.uiDialog.hide(),e.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"),e.uiDialog.remove(),e.originalTitle&&e.element.attr("title",e.originalTitle),e},widget:function(){return this.uiDialog},close:function(t){var n=this,r,i;if(!1===n._trigger("beforeClose",t))return;return n.overlay&&n.overlay.destroy(),n.uiDialog.unbind("keypress.ui-dialog"),n._isOpen=!1,n.options.hide?n.uiDialog.hide(n.options.hide,function(){n._trigger("close",t)}):(n.uiDialog.hide(),n._trigger("close",t)),e.ui.dialog.overlay.resize(),n.options.modal&&(r=0,e(".ui-dialog").each(function(){this!==n.uiDialog[0]&&(i=e(this).css("z-index"),isNaN(i)||(r=Math.max(r,i)))}),e.ui.dialog.maxZ=r),n},isOpen:function(){return this._isOpen},moveToTop:function(t,n){var r=this,i=r.options,s;return i.modal&&!t||!i.stack&&!i.modal?r._trigger("focus",n):(i.zIndex>e.ui.dialog.maxZ&&(e.ui.dialog.maxZ=i.zIndex),r.overlay&&(e.ui.dialog.maxZ+=1,r.overlay.$el.css("z-index",e.ui.dialog.overlay.maxZ=e.ui.dialog.maxZ)),s={scrollTop:r.element.scrollTop(),scrollLeft:r.element.scrollLeft()},e.ui.dialog.maxZ+=1,r.uiDialog.css("z-index",e.ui.dialog.maxZ),r.element.attr(s),r._trigger("focus",n),r)},open:function(){if(this._isOpen)return;var t=this,n=t.options,r=t.uiDialog;return t.overlay=n.modal?new e.ui.dialog.overlay(t):null,t._size(),t._position(n.position),r.show(n.show),t.moveToTop(!0),n.modal&&r.bind("keydown.ui-dialog",function(t){if(t.keyCode!==e.ui.keyCode.TAB)return;var n=e(":tabbable",this),r=n.filter(":first"),i=n.filter(":last");if(t.target===i[0]&&!t.shiftKey)return r.focus(1),!1;if(t.target===r[0]&&t.shiftKey)return i.focus(1),!1}),e(t.element.find(":tabbable").get().concat(r.find(".ui-dialog-buttonpane :tabbable").get().concat(r.get()))).eq(0).focus(),t._isOpen=!0,t._trigger("open"),t},_createButtons:function(t){var n=this,r=!1,i=e("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),s=e("
    ").addClass("ui-dialog-buttonset").appendTo(i);n.uiDialog.find(".ui-dialog-buttonpane").remove(),typeof t=="object"&&t!==null&&e.each(t,function(){return!(r=!0)}),r&&(e.each(t,function(t,r){r=e.isFunction(r)?{click:r,text:t}:r;var i=e('').click(function(){r.click.apply(n.element[0],arguments)}).appendTo(s);e.each(r,function(e,t){if(e==="click")return;e in i?i[e](t):i.attr(e,t)}),e.fn.button&&i.button()}),i.appendTo(n.uiDialog))},_makeDraggable:function(){function s(e){return{position:e.position,offset:e.offset}}var t=this,n=t.options,r=e(document),i;t.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(r,o){i=n.height==="auto"?"auto":e(this).height(),e(this).height(e(this).height()).addClass("ui-dialog-dragging"),t._trigger("dragStart",r,s(o))},drag:function(e,n){t._trigger("drag",e,s(n))},stop:function(o,u){n.position=[u.position.left-r.scrollLeft(),u.position.top-r.scrollTop()],e(this).removeClass("ui-dialog-dragging").height(i),t._trigger("dragStop",o,s(u)),e.ui.dialog.overlay.resize()}})},_makeResizable:function(n){function u(e){return{originalPosition:e.originalPosition,originalSize:e.originalSize,position:e.position,size:e.size}}n=n===t?this.options.resizable:n;var r=this,i=r.options,s=r.uiDialog.css("position"),o=typeof n=="string"?n:"n,e,s,w,se,sw,ne,nw";r.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:r.element,maxWidth:i.maxWidth,maxHeight:i.maxHeight,minWidth:i.minWidth,minHeight:r._minHeight(),handles:o,start:function(t,n){e(this).addClass("ui-dialog-resizing"),r._trigger("resizeStart",t,u(n))},resize:function(e,t){r._trigger("resize",e,u(t))},stop:function(t,n){e(this).removeClass("ui-dialog-resizing"),i.height=e(this).height(),i.width=e(this).width(),r._trigger("resizeStop",t,u(n)),e.ui.dialog.overlay.resize()}}).css("position",s).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var e=this.options;return e.height==="auto"?e.minHeight:Math.min(e.minHeight,e.height)},_position:function(t){var n=[],r=[0,0],i;if(t){if(typeof t=="string"||typeof t=="object"&&"0"in t)n=t.split?t.split(" "):[t[0],t[1]],n.length===1&&(n[1]=n[0]),e.each(["left","top"],function(e,t){+n[e]===n[e]&&(r[e]=n[e],n[e]=t)}),t={my:n.join(" "),at:n.join(" "),offset:r.join(" ")};t=e.extend({},e.ui.dialog.prototype.options.position,t)}else t=e.ui.dialog.prototype.options.position;i=this.uiDialog.is(":visible"),i||this.uiDialog.show(),this.uiDialog.css({top:0,left:0}).position(e.extend({of:window},t)),i||this.uiDialog.hide()},_setOptions:function(t){var n=this,s={},o=!1;e.each(t,function(e,t){n._setOption(e,t),e in r&&(o=!0),e in i&&(s[e]=t)}),o&&this._size(),this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",s)},_setOption:function(t,r){var i=this,s=i.uiDialog;switch(t){case"beforeclose":t="beforeClose";break;case"buttons":i._createButtons(r);break;case"closeText":i.uiDialogTitlebarCloseText.text(""+r);break;case"dialogClass":s.removeClass(i.options.dialogClass).addClass(n+r);break;case"disabled":r?s.addClass("ui-dialog-disabled"):s.removeClass("ui-dialog-disabled");break;case"draggable":var o=s.is(":data(draggable)");o&&!r&&s.draggable("destroy"),!o&&r&&i._makeDraggable();break;case"position":i._position(r);break;case"resizable":var u=s.is(":data(resizable)");u&&!r&&s.resizable("destroy"),u&&typeof r=="string"&&s.resizable("option","handles",r),!u&&r!==!1&&i._makeResizable(r);break;case"title":e(".ui-dialog-title",i.uiDialogTitlebar).html(""+(r||" "))}e.Widget.prototype._setOption.apply(i,arguments)},_size:function(){var t=this.options,n,r,i=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0}),t.minWidth>t.width&&(t.width=t.minWidth),n=this.uiDialog.css({height:"auto",width:t.width}).height(),r=Math.max(0,t.minHeight-n);if(t.height==="auto")if(e.support.minHeight)this.element.css({minHeight:r,height:"auto"});else{this.uiDialog.show();var s=this.element.css("height","auto").height();i||this.uiDialog.hide(),this.element.height(Math.max(s,r))}else this.element.height(Math.max(t.height-n,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}}),e.extend(e.ui.dialog,{version:"1.8.23",uuid:0,maxZ:0,getTitleId:function(e){var t=e.attr("id");return t||(this.uuid+=1,t=this.uuid),"ui-dialog-title-"+t},overlay:function(t){this.$el=e.ui.dialog.overlay.create(t)}}),e.extend(e.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:e.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(e){return e+".dialog-overlay"}).join(" "),create:function(t){this.instances.length===0&&(setTimeout(function(){e.ui.dialog.overlay.instances.length&&e(document).bind(e.ui.dialog.overlay.events,function(t){if(e(t.target).zIndex()
    ").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});return e.fn.bgiframe&&n.bgiframe(),this.instances.push(n),n},destroy:function(t){var n=e.inArray(t,this.instances);n!=-1&&this.oldInstances.push(this.instances.splice(n,1)[0]),this.instances.length===0&&e([document,window]).unbind(".dialog-overlay"),t.remove();var r=0;e.each(this.instances,function(){r=Math.max(r,this.css("z-index"))}),this.maxZ=r},height:function(){var t,n;return e.browser.msie&&e.browser.version<7?(t=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),n=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight),t0?t.left-i:Math.max(t.left-n.collisionPosition.left,t.left)},top:function(t,n){var r=e(window),i=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop();t.top=i>0?t.top-i:Math.max(t.top-n.collisionPosition.top,t.top)}},flip:{left:function(t,n){if(n.at[0]===i)return;var r=e(window),s=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft(),o=n.my[0]==="left"?-n.elemWidth:n.my[0]==="right"?n.elemWidth:0,u=n.at[0]==="left"?n.targetWidth:-n.targetWidth,a=-2*n.offset[0];t.left+=n.collisionPosition.left<0?o+u+a:s>0?o+u+a:0},top:function(t,n){if(n.at[1]===i)return;var r=e(window),s=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop(),o=n.my[1]==="top"?-n.elemHeight:n.my[1]==="bottom"?n.elemHeight:0,u=n.at[1]==="top"?n.targetHeight:-n.targetHeight,a=-2*n.offset[1];t.top+=n.collisionPosition.top<0?o+u+a:s>0?o+u+a:0}}},e.offset.setOffset||(e.offset.setOffset=function(t,n){/static/.test(e.curCSS(t,"position"))&&(t.style.position="relative");var r=e(t),i=r.offset(),s=parseInt(e.curCSS(t,"top",!0),10)||0,o=parseInt(e.curCSS(t,"left",!0),10)||0,u={top:n.top-i.top+s,left:n.left-i.left+o};"using"in n?n.using.call(t,u):r.css(u)},e.fn.offset=function(t){var n=this[0];return!n||!n.ownerDocument?null:t?e.isFunction(t)?this.each(function(n){e(this).offset(t.call(this,n,e(this).offset()))}):this.each(function(){e.offset.setOffset(this,t)}):u.call(this)}),e.curCSS||(e.curCSS=e.css),function(){var t=document.getElementsByTagName("body")[0],n=document.createElement("div"),r,i,o,u,a;r=document.createElement(t?"div":"body"),o={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},t&&e.extend(o,{position:"absolute",left:"-1000px",top:"-1000px"});for(var f in o)r.style[f]=o[f];r.appendChild(n),i=t||document.documentElement,i.insertBefore(r,i.firstChild),n.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",u=e(n).offset(function(e,t){return t}).offset(),r.innerHTML="",i.removeChild(r),a=u.top+u.left+(t?2e3:0),s.fractions=a>21&&a<22}()}(jQuery),function(e,t){e.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=e("
    ").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(),e.Widget.prototype.destroy.apply(this,arguments)},value:function(e){return e===t?this._value():(this._setOption("value",e),this)},_setOption:function(t,n){t==="value"&&(this.options.value=n,this._refreshValue(),this._value()===this.options.max&&this._trigger("complete")),e.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var e=this.options.value;return typeof e!="number"&&(e=0),Math.min(this.options.max,Math.max(this.min,e))},_percentage:function(){return 100*this._value()/this.options.max},_refreshValue:function(){var e=this.value(),t=this._percentage();this.oldValue!==e&&(this.oldValue=e,this._trigger("change")),this.valueDiv.toggle(e>this.min).toggleClass("ui-corner-right",e===this.options.max).width(t.toFixed(0)+"%"),this.element.attr("aria-valuenow",e)}}),e.extend(e.ui.progressbar,{version:"1.8.23"})}(jQuery),function(e,t){var n=5;e.widget("ui.slider",e.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 t=this,r=this.options,i=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),s="",o=r.values&&r.values.length||1,u=[];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"+(r.disabled?" ui-slider-disabled ui-disabled":"")),this.range=e([]),r.range&&(r.range===!0&&(r.values||(r.values=[this._valueMin(),this._valueMin()]),r.values.length&&r.values.length!==2&&(r.values=[r.values[0],r.values[0]])),this.range=e("
    ").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(r.range==="min"||r.range==="max"?" ui-slider-range-"+r.range:"")));for(var a=i.length;an&&(s=n,o=e(this),a=t)}),n.range===!0&&this.values(1)===n.min&&(a+=1,o=e(this.handles[a])),f=this._start(t,a),f===!1?!1:(this._mouseSliding=!0,u._handleIndex=a,o.addClass("ui-state-active").focus(),l=o.offset(),c=!e(t.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=c?{left:0,top:0}:{left:t.pageX-l.left-o.width()/2,top:t.pageY-l.top-o.height()/2-(parseInt(o.css("borderTopWidth"),10)||0)-(parseInt(o.css("borderBottomWidth"),10)||0)+(parseInt(o.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(t,a,i),this._animateOff=!0,!0))},_mouseStart:function(e){return!0},_mouseDrag:function(e){var t={x:e.pageX,y:e.pageY},n=this._normValueFromMouse(t);return this._slide(e,this._handleIndex,n),!1},_mouseStop:function(e){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(e,this._handleIndex),this._change(e,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(e){var t,n,r,i,s;return this.orientation==="horizontal"?(t=this.elementSize.width,n=e.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(t=this.elementSize.height,n=e.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),r=n/t,r>1&&(r=1),r<0&&(r=0),this.orientation==="vertical"&&(r=1-r),i=this._valueMax()-this._valueMin(),s=this._valueMin()+r*i,this._trimAlignValue(s)},_start:function(e,t){var n={handle:this.handles[t],value:this.value()};return this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("start",e,n)},_slide:function(e,t,n){var r,i,s;this.options.values&&this.options.values.length?(r=this.values(t?0:1),this.options.values.length===2&&this.options.range===!0&&(t===0&&n>r||t===1&&n1){this.options.values[t]=this._trimAlignValue(n),this._refreshValue(),this._change(null,t);return}if(!arguments.length)return this._values();if(!e.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(t):this.value();r=this.options.values,i=arguments[0];for(s=0;s=this._valueMax())return this._valueMax();var t=this.options.step>0?this.options.step:1,n=(e-this._valueMin())%t,r=e-n;return Math.abs(n)*2>=t&&(r+=n>0?t:-t),parseFloat(r.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var t=this.options.range,n=this.options,r=this,i=this._animateOff?!1:n.animate,s,o={},u,a,f,l;this.options.values&&this.options.values.length?this.handles.each(function(t,a){s=(r.values(t)-r._valueMin())/(r._valueMax()-r._valueMin())*100,o[r.orientation==="horizontal"?"left":"bottom"]=s+"%",e(this).stop(1,1)[i?"animate":"css"](o,n.animate),r.options.range===!0&&(r.orientation==="horizontal"?(t===0&&r.range.stop(1,1)[i?"animate":"css"]({left:s+"%"},n.animate),t===1&&r.range[i?"animate":"css"]({width:s-u+"%"},{queue:!1,duration:n.animate})):(t===0&&r.range.stop(1,1)[i?"animate":"css"]({bottom:s+"%"},n.animate),t===1&&r.range[i?"animate":"css"]({height:s-u+"%"},{queue:!1,duration:n.animate}))),u=s}):(a=this.value(),f=this._valueMin(),l=this._valueMax(),s=l!==f?(a-f)/(l-f)*100:0,o[r.orientation==="horizontal"?"left":"bottom"]=s+"%",this.handle.stop(1,1)[i?"animate":"css"](o,n.animate),t==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[i?"animate":"css"]({width:s+"%"},n.animate),t==="max"&&this.orientation==="horizontal"&&this.range[i?"animate":"css"]({width:100-s+"%"},{queue:!1,duration:n.animate}),t==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[i?"animate":"css"]({height:s+"%"},n.animate),t==="max"&&this.orientation==="vertical"&&this.range[i?"animate":"css"]({height:100-s+"%"},{queue:!1,duration:n.animate}))}}),e.extend(e.ui.slider,{version:"1.8.23"})}(jQuery),function(e,t){function i(){return++n}function s(){return++r}var n=0,r=0;e.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:"
    ",remove:null,select:null,show:null,spinner:"Loading…",tabTemplate:"
  • #{label}
  • "},_create:function(){this._tabify(!0)},_setOption:function(e,t){if(e=="selected"){if(this.options.collapsible&&t==this.options.selected)return;this.select(t)}else this.options[e]=t,this._tabify()},_tabId:function(e){return e.title&&e.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+i()},_sanitizeSelector:function(e){return e.replace(/:/g,"\\:")},_cookie:function(){var t=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+s());return e.cookie.apply(null,[t].concat(e.makeArray(arguments)))},_ui:function(e,t){return{tab:e,panel:t,index:this.anchors.index(e)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var t=e(this);t.html(t.data("label.tabs")).removeData("label.tabs")})},_tabify:function(n){function h(t,n){t.css("display",""),!e.support.opacity&&n.opacity&&t[0].style.removeAttribute("filter")}var r=this,i=this.options,s=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=e(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return e("a",this)[0]}),this.panels=e([]),this.anchors.each(function(t,n){var o=e(n).attr("href"),u=o.split("#")[0],a;u&&(u===location.toString().split("#")[0]||(a=e("base")[0])&&u===a.href)&&(o=n.hash,n.href=o);if(s.test(o))r.panels=r.panels.add(r.element.find(r._sanitizeSelector(o)));else if(o&&o!=="#"){e.data(n,"href.tabs",o),e.data(n,"load.tabs",o.replace(/#.*$/,""));var f=r._tabId(n);n.href="#"+f;var l=r.element.find("#"+f);l.length||(l=e(i.panelTemplate).attr("id",f).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(r.panels[t-1]||r.list),l.data("destroy.tabs",!0)),r.panels=r.panels.add(l)}else i.disabled.push(t)}),n?(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"),i.selected===t?(location -.hash&&this.anchors.each(function(e,t){if(t.hash==location.hash)return i.selected=e,!1}),typeof i.selected!="number"&&i.cookie&&(i.selected=parseInt(r._cookie(),10)),typeof i.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(i.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),i.selected=i.selected||(this.lis.length?0:-1)):i.selected===null&&(i.selected=-1),i.selected=i.selected>=0&&this.anchors[i.selected]||i.selected<0?i.selected:0,i.disabled=e.unique(i.disabled.concat(e.map(this.lis.filter(".ui-state-disabled"),function(e,t){return r.lis.index(e)}))).sort(),e.inArray(i.selected,i.disabled)!=-1&&i.disabled.splice(e.inArray(i.selected,i.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),i.selected>=0&&this.anchors.length&&(r.element.find(r._sanitizeSelector(r.anchors[i.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(i.selected).addClass("ui-tabs-selected ui-state-active"),r.element.queue("tabs",function(){r._trigger("show",null,r._ui(r.anchors[i.selected],r.element.find(r._sanitizeSelector(r.anchors[i.selected].hash))[0]))}),this.load(i.selected)),e(window).bind("unload",function(){r.lis.add(r.anchors).unbind(".tabs"),r.lis=r.anchors=r.panels=null})):i.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[i.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),i.cookie&&this._cookie(i.selected,i.cookie);for(var o=0,u;u=this.lis[o];o++)e(u)[e.inArray(o,i.disabled)!=-1&&!e(u).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");i.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(i.event!=="mouseover"){var a=function(e,t){t.is(":not(.ui-state-disabled)")&&t.addClass("ui-state-"+e)},f=function(e,t){t.removeClass("ui-state-"+e)};this.lis.bind("mouseover.tabs",function(){a("hover",e(this))}),this.lis.bind("mouseout.tabs",function(){f("hover",e(this))}),this.anchors.bind("focus.tabs",function(){a("focus",e(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){f("focus",e(this).closest("li"))})}var l,c;i.fx&&(e.isArray(i.fx)?(l=i.fx[0],c=i.fx[1]):l=c=i.fx);var p=c?function(t,n){e(t).closest("li").addClass("ui-tabs-selected ui-state-active"),n.hide().removeClass("ui-tabs-hide").animate(c,c.duration||"normal",function(){h(n,c),r._trigger("show",null,r._ui(t,n[0]))})}:function(t,n){e(t).closest("li").addClass("ui-tabs-selected ui-state-active"),n.removeClass("ui-tabs-hide"),r._trigger("show",null,r._ui(t,n[0]))},d=l?function(e,t){t.animate(l,l.duration||"normal",function(){r.lis.removeClass("ui-tabs-selected ui-state-active"),t.addClass("ui-tabs-hide"),h(t,l),r.element.dequeue("tabs")})}:function(e,t,n){r.lis.removeClass("ui-tabs-selected ui-state-active"),t.addClass("ui-tabs-hide"),r.element.dequeue("tabs")};this.anchors.bind(i.event+".tabs",function(){var t=this,n=e(t).closest("li"),s=r.panels.filter(":not(.ui-tabs-hide)"),o=r.element.find(r._sanitizeSelector(t.hash));if(n.hasClass("ui-tabs-selected")&&!i.collapsible||n.hasClass("ui-state-disabled")||n.hasClass("ui-state-processing")||r.panels.filter(":animated").length||r._trigger("select",null,r._ui(this,o[0]))===!1)return this.blur(),!1;i.selected=r.anchors.index(this),r.abort();if(i.collapsible){if(n.hasClass("ui-tabs-selected"))return i.selected=-1,i.cookie&&r._cookie(i.selected,i.cookie),r.element.queue("tabs",function(){d(t,s)}).dequeue("tabs"),this.blur(),!1;if(!s.length)return i.cookie&&r._cookie(i.selected,i.cookie),r.element.queue("tabs",function(){p(t,o)}),r.load(r.anchors.index(this)),this.blur(),!1}i.cookie&&r._cookie(i.selected,i.cookie);if(!o.length)throw"jQuery UI Tabs: Mismatching fragment identifier.";s.length&&r.element.queue("tabs",function(){d(t,s)}),r.element.queue("tabs",function(){p(t,o)}),r.load(r.anchors.index(this)),e.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(e){return typeof e=="string"&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},destroy:function(){var t=this.options;return this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var t=e.data(this,"href.tabs");t&&(this.href=t);var n=e(this).unbind(".tabs");e.each(["href","load","cache"],function(e,t){n.removeData(t+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){e.data(this,"destroy.tabs")?e(this).remove():e(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(" "))}),t.cookie&&this._cookie(null,t.cookie),this},add:function(n,r,i){i===t&&(i=this.anchors.length);var s=this,o=this.options,u=e(o.tabTemplate.replace(/#\{href\}/g,n).replace(/#\{label\}/g,r)),a=n.indexOf("#")?this._tabId(e("a",u)[0]):n.replace("#","");u.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var f=s.element.find("#"+a);return f.length||(f=e(o.panelTemplate).attr("id",a).data("destroy.tabs",!0)),f.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),i>=this.lis.length?(u.appendTo(this.list),f.appendTo(this.list[0].parentNode)):(u.insertBefore(this.lis[i]),f.insertBefore(this.panels[i])),o.disabled=e.map(o.disabled,function(e,t){return e>=i?++e:e}),this._tabify(),this.anchors.length==1&&(o.selected=0,u.addClass("ui-tabs-selected ui-state-active"),f.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){s._trigger("show",null,s._ui(s.anchors[0],s.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[i],this.panels[i])),this},remove:function(t){t=this._getIndex(t);var n=this.options,r=this.lis.eq(t).remove(),i=this.panels.eq(t).remove();return r.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(t+(t+1=t?--e:e}),this._tabify(),this._trigger("remove",null,this._ui(r.find("a")[0],i[0])),this},enable:function(t){t=this._getIndex(t);var n=this.options;if(e.inArray(t,n.disabled)==-1)return;return this.lis.eq(t).removeClass("ui-state-disabled"),n.disabled=e.grep(n.disabled,function(e,n){return e!=t}),this._trigger("enable",null,this._ui(this.anchors[t],this.panels[t])),this},disable:function(e){e=this._getIndex(e);var t=this,n=this.options;return e!=n.selected&&(this.lis.eq(e).addClass("ui-state-disabled"),n.disabled.push(e),n.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[e],this.panels[e]))),this},select:function(e){e=this._getIndex(e);if(e==-1){if(!this.options.collapsible||this.options.selected==-1)return this;e=this.options.selected}return this.anchors.eq(e).trigger(this.options.event+".tabs"),this},load:function(t){t=this._getIndex(t);var n=this,r=this.options,i=this.anchors.eq(t)[0],s=e.data(i,"load.tabs");this.abort();if(!s||this.element.queue("tabs").length!==0&&e.data(i,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(t).addClass("ui-state-processing");if(r.spinner){var o=e("span",i);o.data("label.tabs",o.html()).html(r.spinner)}return this.xhr=e.ajax(e.extend({},r.ajaxOptions,{url:s,success:function(s,o){n.element.find(n._sanitizeSelector(i.hash)).html(s),n._cleanup(),r.cache&&e.data(i,"cache.tabs",!0),n._trigger("load",null,n._ui(n.anchors[t],n.panels[t]));try{r.ajaxOptions.success(s,o)}catch(u){}},error:function(e,s,o){n._cleanup(),n._trigger("load",null,n._ui(n.anchors[t],n.panels[t]));try{r.ajaxOptions.error(e,s,t,i)}catch(o){}}})),n.element.dequeue("tabs"),this},abort:function(){return this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup(),this},url:function(e,t){return this.anchors.eq(e).removeData("cache.tabs").data("load.tabs",t),this},length:function(){return this.anchors.length}}),e.extend(e.ui.tabs,{version:"1.8.23"}),e.extend(e.ui.tabs.prototype,{rotation:null,rotate:function(e,t){var n=this,r=this.options,i=n._rotate||(n._rotate=function(t){clearTimeout(n.rotation),n.rotation=setTimeout(function(){var e=r.selected;n.select(++e
    '),r=e(r),e("body").append(r),i()},e.fn.purr=function(t){return t=t||{},t.fadeInSpeed=t.fadeInSpeed||500,t.fadeOutSpeed=t.fadeOutSpeed||500,t.removeTimer=t.removeTimer||4e3,t.isSticky=t.isSticky||!1,t.usingTransparentPNG=t.usingTransparentPNG||!1,this.each(function(){new e.purr(this,t)}),this}}(jQuery),BestInPlaceEditor.prototype={activate:function(){var e="";this.isNil?e="":this.original_content?e=this.original_content:this.sanitize?e=this.element.text():e=this.element.html();var t=this.isNil?"-":this.element.html();this.oldValue=t,this.display_value=e,jQuery(this.activator).unbind("click",this.clickHandler),this.activateForm(),this.element.trigger(jQuery.Event("best_in_place:activate"))},abort:function(){this.isNil?this.element.html(this.nil):this.element.html(this.oldValue),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:abort")),this.element.trigger(jQuery.Event("best_in_place:deactivate"))},abortIfConfirm:function(){if(!this.useConfirm){this.abort();return}confirm("Are you sure you want to discard your changes?")&&this.abort()},update:function(){var e=this;if(this.formType in{input:1,textarea:1}&&this.getValue()==this.oldValue)return this.abort(),!0;this.isNil=!1,e.ajax({type:"post",dataType:"text",data:e.requestData(),success:function(t){e.loadSuccessCallback(t)},error:function(t,n){e.loadErrorCallback(t,n)}});if(this.formType=="select"){var t=this.getValue();this.previousCollectionValue=t,jQuery.each(this.values,function(n,r){t==r[0]&&e.element.html(r[1])})}else this.formType=="checkbox"?e.element.html(this.getValue()?this.values[1]:this.values[0]):this.getValue()!==""?e.element.text(this.getValue()):e.element.html(this.nil);e.element.trigger(jQuery.Event("best_in_place:update"))},activateForm:function(){alert("The form was not properly initialized. activateForm is unbound")},initOptions:function(){var e=this;e.element.parents().each(function(){$parent=jQuery(this),e.url=e.url||$parent.attr("data-url"),e.collection=e.collection||$parent.attr("data-collection"),e.formType=e.formType||$parent.attr("data-type"),e.objectName=e.objectName||$parent.attr("data-object"),e.attributeName=e.attributeName||$parent.attr("data-attribute"),e.activator=e.activator||$parent.attr("data-activator"),e.okButton=e.okButton||$parent.attr("data-ok-button"),e.cancelButton=e.cancelButton||$parent.attr("data-cancel-button"),e.nil=e.nil||$parent.attr("data-nil"),e.inner_class=e.inner_class||$parent.attr("data-inner-class"),e.html_attrs=e.html_attrs||$parent.attr("data-html-attrs"),e.original_content=e.original_content||$parent.attr("data-original-content"),e.collectionValue=e.collectionValue||$parent.attr("data-value")}),e.element.parents().each(function(){var t=this.id.match(/^(\w+)_(\d+)$/i);t&&(e.objectName=e.objectName||t[1])}),e.url=e.element.attr("data-url")||e.url||document.location.pathname,e.collection=e.element.attr("data-collection")||e.collection,e.formType=e.element.attr("data-type")||e.formtype||"input",e.objectName=e.element.attr("data-object")||e.objectName,e.attributeName=e.element.attr("data-attribute")||e.attributeName,e.activator=e.element.attr("data-activator")||e.element,e.okButton=e.element.attr("data-ok-button")||e.okButton,e.cancelButton=e.element.attr("data-cancel-button")||e.cancelButton,e.nil=e.element.attr("data-nil")||e.nil||"-",e.inner_class=e.element.attr("data-inner-class")||e.inner_class||null,e.html_attrs=e.element.attr("data-html-attrs")||e.html_attrs,e.original_content=e.element.attr("data-original-content")||e.original_content,e.collectionValue=e.element.attr("data-value")||e.collectionValue,e.element.attr("data-sanitize")?e.sanitize=e.element.attr("data-sanitize")=="true":e.sanitize=!0,e.element.attr("data-use-confirm")?e.useConfirm=e.element.attr("data-use-confirm")!="false":e.useConfirm=!0,(e.formType=="select"||e.formType=="checkbox")&&e.collection!==null&&(e.values=jQuery.parseJSON(e.collection))},bindForm:function(){this.activateForm=BestInPlaceEditor.forms[this.formType].activateForm,this.getValue=BestInPlaceEditor.forms[this.formType].getValue},initNil:function(){this.element.text()===""&&(this.isNil=!0,this.element.html(this.nil))},getValue:function(){alert("The form was not properly initialized. getValue is unbound")},sanitizeValue:function(e){return jQuery.trim(e)},requestData:function(){csrf_token=jQuery("meta[name=csrf-token]").attr("content"),csrf_param=jQuery("meta[name=csrf-param]").attr("content");var e="_method=put";return e+="&"+this.objectName+"["+this.attributeName+"]="+encodeURIComponent(this.getValue()),csrf_param!==undefined&&csrf_token!==undefined&&(e+="&"+csrf_param+"="+encodeURIComponent(csrf_token)),e},ajax:function(e){return e.url=this.url,e.beforeSend=function(e){e.setRequestHeader("Accept","application/json")},jQuery.ajax(e)},loadSuccessCallback:function(e){var t=jQuery.parseJSON(jQuery.trim(e));t!==null&&t.hasOwnProperty("display_as")&&(this.element.attr("data-original-content",this.element.text()),this.original_content=this.element.text(),this.element.html(t.display_as)),this.element.trigger(jQuery.Event("ajax:success"),e),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:deactivate")),this.collectionValue!==null&&(this.collectionValue=this.previousCollectionValue,this.previousCollectionValue=null)},loadErrorCallback:function(e,t){this.element.html(this.oldValue),this.element.trigger(jQuery.Event("best_in_place:error"),[e,t]),this.element.trigger(jQuery.Event("ajax:error")),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:deactivate"))},clickHandler:function(e){e.preventDefault(),e.data.editor.activate()},setHtmlAttributes:function(){var e=this.element.find(this.formType),t=jQuery.parseJSON(this.html_attrs);for(var n in t)e.attr(n,t[n])}},BestInPlaceEditor.forms={input:{activateForm:function(){var e=jQuery(document.createElement("form")).addClass("form_in_place").attr("action","javascript:void(0);").attr("style","display:inline"),t=jQuery(document.createElement("input")).attr("type","text").attr("name",this.attributeName).val(this.display_value);this.inner_class!==null&&t.addClass(this.inner_class),e.append(t),this.okButton&&e.append(jQuery(document.createElement("input")).attr("type","submit").attr("value",this.okButton)),this.cancelButton&&e.append(jQuery(document.createElement("input")).attr("type","button").attr("value",this.cancelButton)),this.element.html(e),this.setHtmlAttributes(),this.element.find("input[type='text']")[0].select(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.input.submitHandler),this.cancelButton&&this.element.find("input[type='button']").bind("click",{editor:this},BestInPlaceEditor.forms.input.cancelButtonHandler),this.element.find("input[type='text']").bind("blur",{editor:this},BestInPlaceEditor.forms.input.inputBlurHandler),this.element.find("input[type='text']").bind("keyup",{editor:this},BestInPlaceEditor.forms.input.keyupHandler),this.blurTimer=null,this.userClicked=!1},getValue:function(){return this.sanitizeValue(this.element.find("input").val())},inputBlurHandler:function(e){e.data.editor.okButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.abort()},500):e.data.editor.cancelButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.update()},500):e.data.editor.update()},submitHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.update()},cancelButtonHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.abort(),e.stopPropagation()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},date:{activateForm:function(){var e=this,t=jQuery(document.createElement("form")).addClass("form_in_place").attr("action","javascript:void(0);").attr("style","display:inline"),n=jQuery(document.createElement("input")).attr("type","text").attr("name",this.attributeName).attr("value",this.sanitizeValue(this.display_value));this.inner_class!==null&&n.addClass(this.inner_class),t.append(n),this.element.html(t),this.setHtmlAttributes(),this.element.find("input")[0].select(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.input.submitHandler),this.element.find("input").bind("keyup",{editor:this},BestInPlaceEditor.forms.input.keyupHandler),this.element.find("input").datepicker({onClose:function(){e.update()}}).datepicker("show")},getValue:function(){return this.sanitizeValue(this.element.find("input").val())},submitHandler:function(e){e.data.editor.update()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},select:{activateForm:function(){var e=jQuery(document.createElement("form")).attr("action","javascript:void(0)").attr("style","display:inline");selected="",oldValue=this.oldValue,select_elt=jQuery(document.createElement("select")),currentCollectionValue=this.collectionValue,jQuery.each(this.values,function(e,t){var n=jQuery(document.createElement("option")).val(t[0]).html(t[1]);t[0]==currentCollectionValue&&n.attr("selected","selected"),select_elt.append(n)}),e.append(select_elt),this.element.html(e),this.setHtmlAttributes(),this.element.find("select").bind("change",{editor:this},BestInPlaceEditor.forms.select.blurHandler),this.element.find("select").bind("blur",{editor:this},BestInPlaceEditor.forms.select.blurHandler),this.element.find("select").bind("keyup",{editor:this},BestInPlaceEditor.forms.select.keyupHandler),this.element.find("select")[0].focus()},getValue:function(){return this.sanitizeValue(this.element.find("select").val())},blurHandler:function(e){e.data.editor.update()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},checkbox:{activateForm:function(){var e=Boolean(this.oldValue.toLowerCase()!=this.values[1].toLowerCase()),t=e?this.values[1]:this.values[0];this.element.html(t),this.setHtmlAttributes(),this.update()},getValue:function(){return Boolean(this.element.html().toLowerCase()==this.values[1].toLowerCase())}},textarea:{activateForm:function(){width=this.element.css("width"),height=this.element.css("height");var e=jQuery(document.createElement("form")).attr("action","javascript:void(0)").attr("style","display:inline").append(jQuery(document.createElement("textarea")).val(this.sanitizeValue(this.display_value)));this.okButton&&e.append(jQuery(document.createElement("input")).attr("type","submit").attr("value",this.okButton)),this.cancelButton&&e.append(jQuery(document.createElement("input")).attr("type","button").attr("value",this.cancelButton)),this.element.html(e),this.setHtmlAttributes(),jQuery(this.element.find("textarea")[0]).css({"min-width":width,"min-height":height}),jQuery(this.element.find("textarea")[0]).elastic(),this.element.find("textarea")[0].focus(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.textarea.submitHandler),this.cancelButton&&this.element.find("input[type='button']").bind("click",{editor:this},BestInPlaceEditor.forms.textarea.cancelButtonHandler),this.element.find("textarea").bind("blur",{editor:this},BestInPlaceEditor.forms.textarea.blurHandler),this.element.find("textarea").bind("keyup",{editor:this},BestInPlaceEditor.forms.textarea.keyupHandler),this.blurTimer=null,this.userClicked=!1},getValue:function(){return this.sanitizeValue(this.element.find("textarea").val())},blurHandler:function(e){e.data.editor.okButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.abortIfConfirm()},500):e.data.editor.cancelButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.update()},500):e.data.editor.update()},submitHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.update()},cancelButtonHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.abortIfConfirm(),e.stopPropagation()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abortIfConfirm()}}},jQuery.fn.best_in_place=function(){function e(e){if(!e.data("bestInPlaceEditor"))return e.data("bestInPlaceEditor",new BestInPlaceEditor(e)),!0}return jQuery(this.context).delegate(this.selector,"click",function(){var t=jQuery(this);e(t)&&t.click()}),this.each(function(){e(jQuery(this))}),this},function(e){e.fn.extend({elastic:function(){var t=["paddingTop","paddingRight","paddingBottom","paddingLeft","fontSize","lineHeight","fontFamily","width","fontWeight"];return this.each(function(){function f(e,t){curratedHeight=Math.floor(parseInt(e,10)),n.height()!=curratedHeight&&n.css({height:curratedHeight+"px",overflow:t})}function l(){var e=n.val().replace(/&/g,"&").replace(/ /g," ").replace(/<|>/g,">").replace(/\n/g,"
    "),t=r.html().replace(/
    /ig,"
    ");if(e+" "!=t){r.html(e+" ");if(Math.abs(r.height()+i-n.height())>3){var u=r.height()+i;u>=o?f(o,"auto"):u<=s?f(s,"hidden"):f(u,"hidden")}}}if(this.type!="textarea")return!1;var n=e(this),r=e("
    ").css({position:"absolute",display:"none","word-wrap":"break-word"}),i=parseInt(n.css("line-height"),10)||parseInt(n.css("font-size"),"10"),s=parseInt(n.css("height"),10)||i*3,o=parseInt(n.css("max-height"),10)||Number.MAX_VALUE,u=0,a=0;o<0&&(o=Number.MAX_VALUE),r.appendTo(n.parent()),a=t.length;while(a--)r.css(t[a].toString(),n.css(t[a].toString()));n.css({overflow:"hidden"}),n.bind("keyup change cut paste",function(){l()}),n.bind("blur",function(){r.height()s?n.height(r.height()):n.height(s))}),n.live("input paste",function(e){setTimeout(l,250)}),l()})}})}(jQuery),function(e){var t=null;e.fn.railsAutocomplete=function(){return this.live("focus",function(){this.railsAutoCompleter||(this.railsAutoCompleter=new e.railsAutocomplete(this))})},e.railsAutocomplete=function(e){_e=e,this.init(_e)},e.railsAutocomplete.fn=e.railsAutocomplete.prototype={railsAutocomplete:"0.0.1"},e.railsAutocomplete.fn.extend=e.railsAutocomplete.extend=e.extend,e.railsAutocomplete.fn.extend({init:function(t){function n(e){return e.split(t.delimiter)}function r(e){return n(e).pop().replace(/^\s+/,"")}t.delimiter=e(t).attr("data-delimiter")||null,e(t).autocomplete({source:function(n,i){e.getJSON(e(t).attr("data-autocomplete"),{term:r(n.term)},function(){arguments[0].length==0&&(arguments[0]=[]),e(arguments[0]).each(function(n,r){var i={};i[r.id]=r,e(t).data(i)}),i.apply(null,arguments)})},change:function(t,n){if(e(e(this).attr("data-id-element")).val()=="")return;e(e(this).attr("data-id-element")).val(n.item?n.item.id:"");var r=e.parseJSON(e(this).attr("data-update-elements")),i=n.item?e(this).data(n.item.id.toString()):{};if(r&&e(r["id"]).val()=="")return;for(var s in r)e(r[s]).val(n.item?i[s]:"")},search:function(){var e=r(this.value);if(e.length<2)return!1},focus:function(){return!1},select:function(r,i){var s=n(this.value);s.pop(),s.push(i.item.value);if(t.delimiter!=null)s.push(""),this.value=s.join(t.delimiter);else{this.value=s.join(""),e(this).attr("data-id-element")&&e(e(this).attr("data-id-element")).val(i.item.id);if(e(this).attr("data-update-elements")){var o=e(this).data(i.item.id.toString()),u=e.parseJSON(e(this).attr("data-update-elements"));for(var a in u)e(u[a]).val(o[a])}}var f=this.value;return e(this).bind("keyup.clearId",function(){e(this).val().trim()!=f.trim()&&(e(e(this).attr("data-id-element")).val(""),e(this).unbind("keyup.clearId"))}),e(t).trigger("railsAutocomplete.select",i),!1}})}}),e(document).ready(function(){e("input[data-autocomplete]").railsAutocomplete()})}(jQuery),function(e,t){var n=function(){var t=e._data(document,"events");return t&&t.click&&e.grep(t.click,function(e){return e.namespace==="rails"}).length};n()&&e.error("jquery-ujs has already been loaded!");var r;e.rails=r={linkClickSelector:"a[data-confirm], a[data-method], a[data-remote], a[data-disable-with]",inputChangeSelector:"select[data-remote], input[data-remote], textarea[data-remote]",formSubmitSelector:"form",formInputClickSelector:"form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])",disableSelector:"input[data-disable-with], button[data-disable-with], textarea[data-disable-with]",enableSelector:"input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled",requiredInputSelector:"input[name][required]:not([disabled]),textarea[name][required]:not([disabled])",fileInputSelector:"input:file",linkDisableSelector:"a[data-disable-with]",CSRFProtection:function(t){var n=e('meta[name="csrf-token"]').attr("content");n&&t.setRequestHeader("X-CSRF-Token",n)},fire:function(t,n,r){var i=e.Event(n);return t.trigger(i,r),i.result!==!1},confirm:function(e){return confirm(e)},ajax:function(t){return e.ajax(t)},href:function(e){return e.attr("href")},handleRemote:function(n){var i,s,o,u,a,f,l,c;if(r.fire(n,"ajax:before")){u=n.data("cross-domain"),a=u===t?null:u,f=n.data("with-credentials")||null,l=n.data("type")||e.ajaxSettings&&e.ajaxSettings.dataType;if(n.is("form")){i=n.attr("method"),s=n.attr("action"),o=n.serializeArray();var h=n.data("ujs:submit-button");h&&(o.push(h),n.data("ujs:submit-button",null))}else n.is(r.inputChangeSelector)?(i=n.data("method"),s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):(i=n.data("method"),s=r.href(n),o=n.data("params")||null);c={type:i||"GET",data:o,dataType:l,beforeSend:function(e,i){return i.dataType===t&&e.setRequestHeader("accept","*/*;q=0.5, "+i.accepts.script),r.fire(n,"ajax:beforeSend",[e,i])},success:function(e,t,r){n.trigger("ajax:success",[e,t,r])},complete:function(e,t){n.trigger("ajax:complete",[e,t])},error:function(e,t,r){n.trigger("ajax:error",[e,t,r])},xhrFields:{withCredentials:f},crossDomain:a},s&&(c.url=s);var p=r.ajax(c);return n.trigger("ajax:send",p),p}return!1},handleMethod:function(n){var i=r.href(n),s=n.data("method"),o=n.attr("target"),u=e("meta[name=csrf-token]").attr("content"),a=e("meta[name=csrf-param]").attr("content"),f=e('
    '),l='';a!==t&&u!==t&&(l+=''),o&&f.attr("target",o),f.hide().append(l).appendTo("body"),f.submit()},disableFormElements:function(t){t.find(r.disableSelector).each(function(){var t=e(this),n=t.is("button")?"html":"val";t.data("ujs:enable-with",t[n]()),t[n](t.data("disable-with")),t.prop("disabled",!0)})},enableFormElements:function(t){t.find(r.enableSelector).each(function(){var t=e(this),n=t.is("button")?"html":"val";t.data("ujs:enable-with")&&t[n](t.data("ujs:enable-with")),t.prop("disabled",!1)})},allowAction:function(e){var t=e.data("confirm"),n=!1,i;return t?(r.fire(e,"confirm")&&(n=r.confirm(t),i=r.fire(e,"confirm:complete",[n])),n&&i):!0},blankInputs:function(t,n,r){var i=e(),s,o,u=n||"input,textarea",a=t.find(u);return a.each(function(){s=e(this),o=s.is(":checkbox,:radio")?s.is(":checked"):s.val();if(!o==!r){if(s.is(":radio")&&a.filter('input:radio:checked[name="'+s.attr("name")+'"]').length)return!0;i=i.add(s)}}),i.length?i:!1},nonBlankInputs:function(e,t){return r.blankInputs(e,t,!0)},stopEverything:function(t){return e(t.target).trigger("ujs:everythingStopped"),t.stopImmediatePropagation(),!1},callFormSubmitBindings:function(n,r){var i=n.data("events"),s=!0;return i!==t&&i.submit!==t&&e.each(i.submit,function(e,t){if(typeof t.handler=="function")return s=t.handler(r)}),s},disableElement:function(e){e.data("ujs:enable-with",e.html()),e.html(e.data("disable-with")),e.bind("click.railsDisable",function(e){return r.stopEverything(e)})},enableElement:function(e){e.data("ujs:enable-with")!==t&&(e.html(e.data("ujs:enable-with")),e.data("ujs:enable-with",!1)),e.unbind("click.railsDisable")}},r.fire(e(document),"rails:attachBindings")&&(e.ajaxPrefilter(function(e,t,n){e.crossDomain||r.CSRFProtection(n)}),e(document).delegate(r.linkDisableSelector,"ajax:complete",function(){r.enableElement(e(this))}),e(document).delegate(r.linkClickSelector,"click.rails",function(n){var i=e(this),s=i.data("method"),o=i.data("params");if(!r.allowAction(i))return r.stopEverything(n);i.is(r.linkDisableSelector)&&r.disableElement(i);if(i.data("remote")!==t){if((n.metaKey||n.ctrlKey)&&(!s||s==="GET")&&!o)return!0;var u=r.handleRemote(i);return u===!1?r.enableElement(i):u.error(function(){r.enableElement(i)}),!1}if(i.data("method"))return r.handleMethod(i),!1}),e(document).delegate(r.inputChangeSelector,"change.rails",function(t){var n=e(this);return r.allowAction(n)?(r.handleRemote(n),!1):r.stopEverything(t)}),e(document).delegate(r.formSubmitSelector,"submit.rails",function(n){var i=e(this),s=i.data("remote")!==t,o=r.blankInputs(i,r.requiredInputSelector),u=r.nonBlankInputs(i,r.fileInputSelector);if(!r.allowAction(i))return r.stopEverything(n);if(o&&i.attr("novalidate")==t&&r.fire(i,"ajax:aborted:required",[o]))return r.stopEverything(n);if(s){if(u){setTimeout(function(){r.disableFormElements(i)},13);var a=r.fire(i,"ajax:aborted:file",[u]);return a||setTimeout(function(){r.enableFormElements(i)},13),a}return!e.support.submitBubbles&&e().jquery<"1.7"&&r.callFormSubmitBindings(i,n)===!1?r.stopEverything(n):(r.handleRemote(i),!1)}setTimeout(function(){r.disableFormElements(i)},13)}),e(document).delegate(r.formInputClickSelector,"click.rails",function(t){var n=e(this);if(!r.allowAction(n))return r.stopEverything(t);var i=n.attr("name"),s=i?{name:i,value:n.val()}:null;n.closest("form").data("ujs:submit-button",s)}),e(document).delegate(r.formSubmitSelector,"ajax:beforeSend.rails",function(t){this==t.target&&r.disableFormElements(e(this))}),e(document).delegate(r.formSubmitSelector,"ajax:complete.rails",function(t){this==t.target&&r.enableFormElements(e(this))}),e(function(){csrf_token=e("meta[name=csrf-token]").attr("content"),csrf_param=e("meta[name=csrf-param]").attr("content"),e('form input[name="'+csrf_param+'"]').val(csrf_token)}))}(jQuery),$(document).ready(function(){$("#sideOptionAnalyze").bind("click",function(){analyzeOpen||openAnalyze()}),$("#closeAnalyze").bind("click",function(){analyzeOpen&&closeAnalyze()})}),document.createElement("canvas").getContext||function(){function f(){return this.context_||(this.context_=new I(this))}function c(e,t,n){var r=l.call(arguments,2);return function(){return e.apply(t,r.concat(l.call(arguments)))}}function h(e){return String(e).replace(/&/g,"&").replace(/"/g,""")}function p(e,t,n){e.namespaces[t]||e.namespaces.add(t,n,"#default#VML")}function d(e){p(e,"g_vml_","urn:schemas-microsoft-com:vml"),p(e,"g_o_","urn:schemas-microsoft-com:office:office");if(!e.styleSheets.ex_canvas_){var t=e.createStyleSheet();t.owningElement.id="ex_canvas_",t.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}function m(e){var t=e.srcElement;switch(e.propertyName){case"width":t.getContext().clearRect(),t.style.width=t.attributes.width.nodeValue+"px",t.firstChild.style.width=t.clientWidth+"px" -;break;case"height":t.getContext().clearRect(),t.style.height=t.attributes.height.nodeValue+"px",t.firstChild.style.height=t.clientHeight+"px"}}function g(e){var t=e.srcElement;t.firstChild&&(t.firstChild.style.width=t.clientWidth+"px",t.firstChild.style.height=t.clientHeight+"px")}function E(){return[[1,0,0],[0,1,0],[0,0,1]]}function S(e,t){var n=E();for(var r=0;r<3;r++)for(var i=0;i<3;i++){var s=0;for(var o=0;o<3;o++)s+=e[r][o]*t[o][i];n[r][i]=s}return n}function x(e,t){t.fillStyle=e.fillStyle,t.lineCap=e.lineCap,t.lineJoin=e.lineJoin,t.lineWidth=e.lineWidth,t.miterLimit=e.miterLimit,t.shadowBlur=e.shadowBlur,t.shadowColor=e.shadowColor,t.shadowOffsetX=e.shadowOffsetX,t.shadowOffsetY=e.shadowOffsetY,t.strokeStyle=e.strokeStyle,t.globalAlpha=e.globalAlpha,t.font=e.font,t.textAlign=e.textAlign,t.textBaseline=e.textBaseline,t.arcScaleX_=e.arcScaleX_,t.arcScaleY_=e.arcScaleY_,t.lineScale_=e.lineScale_}function N(e){var t=e.indexOf("(",3),n=e.indexOf(")",t+1),r=e.substring(t+1,n).split(",");if(r.length!=4||e.charAt(3)!="a")r[3]=1;return r}function C(e){return parseFloat(e)/100}function k(e,t,n){return Math.min(n,Math.max(t,e))}function L(e){var t,n,r,i,s,o;i=parseFloat(e[0])/360%360,i<0&&i++,s=k(C(e[1]),0,1),o=k(C(e[2]),0,1);if(s==0)t=n=r=o;else{var u=o<.5?o*(1+s):o+s-o*s,a=2*o-u;t=A(a,u,i+1/3),n=A(a,u,i),r=A(a,u,i-1/3)}return"#"+y[Math.floor(t*255)]+y[Math.floor(n*255)]+y[Math.floor(r*255)]}function A(e,t,n){return n<0&&n++,n>1&&n--,6*n<1?e+(t-e)*6*n:2*n<1?t:3*n<2?e+(t-e)*(2/3-n)*6:e}function M(e){if(e in O)return O[e];var t,n=1;e=String(e);if(e.charAt(0)=="#")t=e;else if(/^rgb/.test(e)){var r=N(e),t="#",i;for(var s=0;s<3;s++)r[s].indexOf("%")!=-1?i=Math.floor(C(r[s])*255):i=+r[s],t+=y[k(i,0,255)];n=+r[3]}else if(/^hsl/.test(e)){var r=N(e);t=L(r),n=r[3]}else t=T[e]||e;return O[e]={color:t,alpha:n}}function P(e){if(D[e])return D[e];var t=document.createElement("div"),n=t.style;try{n.font=e}catch(r){}return D[e]={style:n.fontStyle||_.style,variant:n.fontVariant||_.variant,weight:n.fontWeight||_.weight,size:n.fontSize||_.size,family:n.fontFamily||_.family}}function H(e,t){var n={};for(var r in e)n[r]=e[r];var i=parseFloat(t.currentStyle.fontSize),s=parseFloat(e.size);return typeof e.size=="number"?n.size=e.size:e.size.indexOf("px")!=-1?n.size=s:e.size.indexOf("em")!=-1?n.size=i*s:e.size.indexOf("%")!=-1?n.size=i/100*s:e.size.indexOf("pt")!=-1?n.size=s/.75:n.size=i,n.size*=.981,n}function B(e){return e.style+" "+e.variant+" "+e.weight+" "+e.size+"px "+e.family}function F(e){return j[e]||"square"}function I(e){this.m_=E(),this.mStack_=[],this.aStack_=[],this.currentPath_=[],this.strokeStyle="#000",this.fillStyle="#000",this.lineWidth=1,this.lineJoin="miter",this.lineCap="butt",this.miterLimit=o*1,this.globalAlpha=1,this.font="10px sans-serif",this.textAlign="left",this.textBaseline="alphabetic",this.canvas=e;var t="width:"+e.clientWidth+"px;height:"+e.clientHeight+"px;overflow:hidden;position:absolute",n=e.ownerDocument.createElement("div");n.style.cssText=t,e.appendChild(n);var r=n.cloneNode(!1);r.style.backgroundColor="red",r.style.filter="alpha(opacity=0)",e.appendChild(r),this.element_=n,this.arcScaleX_=1,this.arcScaleY_=1,this.lineScale_=1}function R(e,t,n,r){e.currentPath_.push({type:"bezierCurveTo",cp1x:t.x,cp1y:t.y,cp2x:n.x,cp2y:n.y,x:r.x,y:r.y}),e.currentX_=r.x,e.currentY_=r.y}function U(e,t){var n=M(e.strokeStyle),r=n.color,i=n.alpha*e.globalAlpha,s=e.lineScale_*e.lineWidth;s<1&&(i*=s),t.push("')}function z(t,n,r,i){var s=t.fillStyle,u=t.arcScaleX_,a=t.arcScaleY_,f=i.x-r.x,l=i.y-r.y;if(s instanceof $){var c=0,h={x:0,y:0},p=0,d=1;if(s.type_=="gradient"){var v=s.x0_/u,m=s.y0_/a,g=s.x1_/u,y=s.y1_/a,b=W(t,v,m),w=W(t,g,y),E=w.x-b.x,S=w.y-b.y;c=Math.atan2(E,S)*180/Math.PI,c<0&&(c+=360),c<1e-6&&(c=0)}else{var b=W(t,s.x0_,s.y0_);h={x:(b.x-r.x)/f,y:(b.y-r.y)/l},f/=u*o,l/=a*o;var x=e.max(f,l);p=2*s.r0_/x,d=2*s.r1_/x-p}var T=s.colors_;T.sort(function(e,t){return e.offset-t.offset});var N=T.length,C=T[0].color,k=T[N-1].color,L=T[0].alpha*t.globalAlpha,A=T[N-1].alpha*t.globalAlpha,O=[];for(var _=0;_')}else if(s instanceof J){if(f&&l){var P=-r.x,H=-r.y;n.push("')}}else{var B=M(t.fillStyle),j=B.color,F=B.alpha*t.globalAlpha;n.push('')}}function W(e,t,n){var r=e.m_;return{x:o*(t*r[0][0]+n*r[1][0]+r[2][0])-u,y:o*(t*r[0][1]+n*r[1][1]+r[2][1])-u}}function X(e){return isFinite(e[0][0])&&isFinite(e[0][1])&&isFinite(e[1][0])&&isFinite(e[1][1])&&isFinite(e[2][0])&&isFinite(e[2][1])}function V(e,t,n){if(!X(t))return;e.m_=t;if(n){var r=t[0][0]*t[1][1]-t[0][1]*t[1][0];e.lineScale_=s(i(r))}}function $(e){this.type_=e,this.x0_=0,this.y0_=0,this.r0_=0,this.x1_=0,this.y1_=0,this.r1_=0,this.colors_=[]}function J(e,t){Q(e);switch(t){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=t;break;default:K("SYNTAX_ERR")}this.src_=e.src,this.width_=e.width,this.height_=e.height}function K(e){throw new G(e)}function Q(e){(!e||e.nodeType!=1||e.tagName!="IMG")&&K("TYPE_MISMATCH_ERR"),e.readyState!="complete"&&K("INVALID_STATE_ERR")}function G(e){this.code=this[e],this.message=e+": DOM Exception "+this.code}var e=Math,t=e.round,n=e.sin,r=e.cos,i=e.abs,s=e.sqrt,o=10,u=o/2,a=+navigator.userAgent.match(/MSIE ([\d.]+)?/)[1],l=Array.prototype.slice;d(document);var v={init:function(e){var t=e||document;t.createElement("canvas"),t.attachEvent("onreadystatechange",c(this.init_,this,t))},init_:function(e){var t=e.getElementsByTagName("canvas");for(var n=0;n','",""),this.element_.insertAdjacentHTML("BeforeEnd",w.join(""))},q.stroke=function(e){var n=[],r=!1,i=10,s=10;n.push("f.x)f.x=c.x;if(a.y==null||c.yf.y)f.y=c.y}}n.push(' ">'),e?z(this,n,a,f):U(this,n),n.push(""),this.element_.insertAdjacentHTML("beforeEnd",n.join(""))},q.fill=function(){this.stroke(!0)},q.closePath=function(){this.currentPath_.push({type:"close"})},q.save=function(){var e={};x(this,e),this.aStack_.push(e),this.mStack_.push(this.m_),this.m_=S(E(),this.m_)},q.restore=function(){this.aStack_.length&&(x(this.aStack_.pop(),this),this.m_=this.mStack_.pop())},q.translate=function(e,t){var n=[[1,0,0],[0,1,0],[e,t,1]];V(this,S(n,this.m_),!1)},q.rotate=function(e){var t=r(e),i=n(e),s=[[t,i,0],[-i,t,0],[0,0,1]];V(this,S(s,this.m_),!1)},q.scale=function(e,t){this.arcScaleX_*=e,this.arcScaleY_*=t;var n=[[e,0,0],[0,t,0],[0,0,1]];V(this,S(n,this.m_),!0)},q.transform=function(e,t,n,r,i,s){var o=[[e,t,0],[n,r,0],[i,s,1]];V(this,S(o,this.m_),!0)},q.setTransform=function(e,t,n,r,i,s){var o=[[e,t,0],[n,r,0],[i,s,1]];V(this,o,!0)},q.drawText_=function(e,n,r,i,s){var u=this.m_,a=1e3,f=0,l=a,c={x:0,y:0},p=[],d=H(P(this.font),this.element_),v=B(d),m=this.element_.currentStyle,g=this.textAlign.toLowerCase();switch(g){case"left":case"center":case"right":break;case"end":g=m.direction=="ltr"?"right":"left";break;case"start":g=m.direction=="rtl"?"right":"left";break;default:g="left"}switch(this.textBaseline){case"hanging":case"top":c.y=d.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":c.y=-d.size/2.25}switch(g){case"right":f=a,l=.05;break;case"center":f=l=a/2}var y=W(this,n+c.x,r+c.y);p.push(''),s?U(this,p):z(this,p,{x:-f,y:0},{x:l,y:d.size});var b=u[0][0].toFixed(3)+","+u[1][0].toFixed(3)+","+u[0][1].toFixed(3)+","+u[1][1].toFixed(3)+",0,0",w=t(y.x/o)+","+t(y.y/o);p.push('','',''),this.element_.insertAdjacentHTML("beforeEnd",p.join(""))},q.fillText=function(e,t,n,r){this.drawText_(e,t,n,r,!1)},q.strokeText=function(e,t,n,r){this.drawText_(e,t,n,r,!0)},q.measureText=function(e){if(!this.textMeasureEl_){var t='';this.element_.insertAdjacentHTML("beforeEnd",t),this.textMeasureEl_=this.element_.lastChild}var n=this.element_.ownerDocument;return this.textMeasureEl_.innerHTML="",this.textMeasureEl_.style.font=this.font,this.textMeasureEl_.appendChild(n.createTextNode(e)),{width:this.textMeasureEl_.offsetWidth}},q.clip=function(){},q.arcTo=function(){},q.createPattern=function(e,t){return new J(e,t)},$.prototype.addColorStop=function(e,t){t=M(t),this.colors_.push({offset:e,color:t.color,alpha:t.alpha})};var Y=G.prototype=new Error;Y.INDEX_SIZE_ERR=1,Y.DOMSTRING_SIZE_ERR=2,Y.HIERARCHY_REQUEST_ERR=3,Y.WRONG_DOCUMENT_ERR=4,Y.INVALID_CHARACTER_ERR=5,Y.NO_DATA_ALLOWED_ERR=6,Y.NO_MODIFICATION_ALLOWED_ERR=7,Y.NOT_FOUND_ERR=8,Y.NOT_SUPPORTED_ERR=9,Y.INUSE_ATTRIBUTE_ERR=10,Y.INVALID_STATE_ERR=11,Y.SYNTAX_ERR=12,Y.INVALID_MODIFICATION_ERR=13,Y.NAMESPACE_ERR=14,Y.INVALID_ACCESS_ERR=15,Y.VALIDATION_ERR=16,Y.TYPE_MISMATCH_ERR=17,G_vmlCanvasManager=v,CanvasRenderingContext2D=I,CanvasGradient=$,CanvasPattern=J,DOMException=G}();var categoryVisible=new Object;categoryVisible.Group=!0,categoryVisible.Person=!0,categoryVisible.Bizarre=!0,categoryVisible.Catalyst=!0,categoryVisible.Closed=!0,categoryVisible.Experience=!0,categoryVisible["Future Dev"]=!0,categoryVisible.Idea=!0,categoryVisible.Implication=!0,categoryVisible.Insight=!0,categoryVisible.Intention=!0,categoryVisible.Knowledge=!0,categoryVisible.Location=!0,categoryVisible["Open Issue"]=!0,categoryVisible.Opinion=!0,categoryVisible.Opportunity=!0,categoryVisible.Platform=!0,categoryVisible.Problem=!0,categoryVisible.Question=!0,categoryVisible.Reference=!0,categoryVisible.Requirement=!0,categoryVisible.Resource=!0,categoryVisible.Role=!0,categoryVisible.Task=!0,categoryVisible.Tool=!0,categoryVisible.Trajectory=!0,categoryVisible.Action=!0,categoryVisible.Activity=!0;var findTopics=["name","metacode","mapper (by name)","map (by name)"],findSynapses=["topics (by name)","directionality","mapper (by name)","map (by name)"],findMaps=["name","topic (by name)","mapper (by name)","synapse (by topics)"],findMappers=["name","topic (by name)","map (by name)","synapse (by topics)"];$(document).ready(function(){$("#sideOptionFind").bind("click",function(){findOpen||openFind()}),$("#closeFind").bind("click",function(){findOpen&&closeFind()}),$("#topic_by_name_input").typing({start:function(e,t){onCanvasChecked=$("#onCanvas").is(":checked"),inCommonsChecked=$("#inCommons").is(":checked"),clearFoundData(),onCanvasChecked&&inCommonsChecked?$("#topic_by_name_input").autocomplete("option","disabled",!0):onCanvasChecked?(setTimeout(function(){showAll()},0),$("#topic_by_name_input").autocomplete("option","disabled",!0)):inCommonsChecked?$("#topic_by_name_input").autocomplete("option","disabled",!0):alert("You either need to have searching On Your Canvas or In the Commons enabled")},stop:function(e,t){onCanvasChecked=$("#onCanvas").is(":checked"),inCommonsChecked=$("#inCommons").is(":checked");var n=$("#topic_by_name_input").val();onCanvasChecked&&setTimeout(function(){onCanvasSearch(n,null,null)},0),inCommonsChecked&&($("#topicsByName").val(n),$("#topicsByUser").val(""),$("#topicsByMap").val(""),$("#get_topics_form").submit()),n==""&&clearFoundData()},delay:2e3}),$("#sideOptionFind .select_content").change(function(){firstVal=$(this).children("option[value='topics']").attr("selected"),secondVal=$(this).children("option[value='maps']").attr("selected"),thirdVal=$(this).children("option[value='mappers']").attr("selected"),firstVal=="selected"?($("#sideOptionFind .select_type").children("option[value='metacode']").removeAttr("disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").removeAttr("disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").removeAttr("disabled"),$(".find").css("display","none"),$(".find_topic_by_name").css("display","block"),$("#topic_by_name_input").focus()):secondVal=="selected"?($("#sideOptionFind .select_type").val()!="name"&&($("#sideOptionFind .select_type").val("name"),$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){})),$("#sideOptionFind .select_type").children("option[value='metacode']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").attr("disabled","disabled"),$(".find").css("display","none"),$(".find_map_by_name").css("display","block"),$("#map_by_name_input").focus()):thirdVal=="selected"&&($("#sideOptionFind .select_type").val("name"),$("#sideOptionFind .select_type").children("option[value='metacode']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").attr("disabled","disabled"),$(".find").css("display","none"),$(".find_mapper_by_name").css("display","block"),$("#mapper_by_name_input").focus())}),$("#sideOptionFind .select_type").change(function(){firstVal=$(this).children("option[value='name']").attr("selected"),secondVal=$(this).children("option[value='metacode']").attr("selected"),thirdVal=$(this).children("option[value='map (by name)']").attr("selected"),fourthVal=$(this).children("option[value='mapper (by name)']").attr("selected"),firstVal==="selected"?$(".find").fadeOut("fast",function(){showAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").removeClass("toggledOff");for(var e in categoryVisible)categoryVisible[e]=!0;$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_topic_by_name").css("display","block"),$("#topic_by_name_input").focus()})}):secondVal==="selected"?$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"380px",height:"463px"},300,function(){$(".find_topic_by_metacode").fadeIn("fast")})}):thirdVal==="selected"?$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_map_by_name").css("display","block"),$("#map_by_name_input").focus()})}):fourthVal==="selected"&&$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_mapper_by_name").css("display","block"),$("#mapper_by_name_input").focus()})})}),$(".find_topic_by_name #topic_by_name_input").bind("railsAutocomplete.select",function(e,t){t.item.id!=undefined&&window.open("/topics/"+t.item.id),$(".find_topic_by_name #topic_by_name_input").val("")}),$(".find_topic_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_map_by_name #map_by_name_input").bind("railsAutocomplete.select",function(e,t){firstVal=$("#sideOptionFind .select_content").children("option[value='topics']").attr("selected"),secondVal=$("#sideOptionFind .select_content").children("option[value='maps']").attr("selected"),thirdVal=$("#sideOptionFind .select_content").children("option[value='mappers']").attr("selected"),firstVal=="selected"?(firstNewVal=$("#onCanvas").attr("checked"),secondNewVal=$("#inCommons").attr("checked"),firstNewVal=="checked"&&secondNewVal=="checked"?(setTimeout(function(){onCanvasSearch(null,t.item.id,null)},0),$("#topicsByMap").val(t.item.id),$("#topicsByUser").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):firstNewVal=="checked"?setTimeout(function(){onCanvasSearch(null,t.item.id,null)},0):secondNewVal=="checked"?($("#topicsByMap").val(t.item.id),$("#topicsByUser").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):alert("You either need to have searching On Your Canvas or In the Commons enabled")):secondVal=="selected"?(t.item.id!=undefined&&window.open("/maps/"+t.item.id),$(".find_map_by_name #map_by_name_input").val("")):thirdVal=="selected"}),$(".find_map_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_mapper_by_name #mapper_by_name_input").bind("railsAutocomplete.select",function(e,t){firstVal=$("#sideOptionFind .select_content").children("option[value='topics']").attr("selected"),secondVal=$("#sideOptionFind .select_content").children("option[value='maps']").attr("selected"),thirdVal=$("#sideOptionFind .select_content").children("option[value='mappers']").attr("selected"),firstVal=="selected"?(firstNewVal=$("#onCanvas").attr("checked"),secondNewVal=$("#inCommons").attr("checked"),firstNewVal=="checked"&&secondNewVal=="checked"?(setTimeout(function(){onCanvasSearch(null,null,t.item.id.toString())},0),$("#topicsByUser").val(t.item.id),$("#topicsByMap").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):firstNewVal=="checked"?setTimeout(function(){onCanvasSearch(null,null,t.item.id.toString())},0):secondNewVal=="checked"?($("#topicsByUser").val(t.item.id),$("#topicsByMap").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):alert("You either need to have searching On Your Canvas or In the Commons enabled")):secondVal!="selected"&&thirdVal=="selected"&&(t.item.id!=undefined&&window.open("/users/"+t.item.id),$(".find_mapper_by_name #mapper_by_name_input").val(""))}),$(".find_mapper_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_topic_by_metacode ul li").click(function(e){obj=document.getElementById("container");var t=$(this).attr("id");if(t==="showAll"||t==="hideAll"){if(t=="showAll"){showAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").removeClass("toggledOff");for(var n in categoryVisible)categoryVisible[n]=!0}else if(t=="hideAll"){hideAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").addClass("toggledOff");for(var n in categoryVisible)categoryVisible[n]=!1}}else{var r=$(this).children("img").attr("alt");switchVisible(r),categoryVisible[r]==1?($(this).addClass("toggledOff"),categoryVisible[r]=!1):categoryVisible[r]==0&&($(this).removeClass("toggledOff"),categoryVisible[r]=!0)}})});var lastDist=0,MetamapsModel=new Object;MetamapsModel.embed=!1,MetamapsModel.selectedEdges=new Array,MetamapsModel.selectedNodes=new Array,MetamapsModel.didPan=!1,MetamapsModel.showcardInUse=null,MetamapsModel.widthOfLabel=null,MetamapsModel.edgecardInUse=null,MetamapsModel.edgeHoveringOver=!1,MetamapsModel.boxStartCoordinates=!1,MetamapsModel.boxEndCoordinates=!1,MetamapsModel.lastNodeClick=0,MetamapsModel.lastCanvasClick=0,MetamapsModel.DOUBLE_CLICK_TOLERANCE=300,MetamapsModel.edgePermTimer1=null,MetamapsModel.edgePermTimer2=null,MetamapsModel.edgePermSliding=!1,MetamapsModel.topicPermTimer1=null,MetamapsModel.topicPermTimer2=null,MetamapsModel.topicPermSliding=!1;var renderMidArrow=function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new $jit.Complex(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new $jit.Complex((t.x+e.x)/2,(t.y+e.y)/2),f=new $jit.Complex(u.x/.7+a.x,u.y/.7+a.y),l=new $jit.Complex(f.x-u.x,f.y-u.y),c=new $jit.Complex(-u.y/2,u.x/2),h=l.add(c),p=l.$add(c.$scale(-1));s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(h.x,h.y),s.lineTo(f.x,f.y),s.lineTo(p.x,p.y),s.stroke()},renderMidArrows=function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new $jit.Complex(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new $jit.Complex((t.x+e.x)/2,(t.y+e.y)/2),f=new $jit.Complex(u.x/.7+a.x,u.y/.7+a.y),l=new $jit.Complex(f.x-u.x,f.y-u.y),c=new $jit.Complex(-u.y/2,u.x/2),h=l.add(c),p=l.$add(c.$scale(-1));s.beginPath(),s.moveTo(h.x,h.y),s.lineTo(f.x,f.y),s.lineTo(p.x,p.y),s.stroke()},nodeSettings={customNode:{render:function(e,t){var n=e.pos.getc(!0),r=e.getData("dim"),i=e.getData("metacode"),s=e.getData("greenCircle"),o=e.getData("whiteCircle"),u=t.getCtx();s&&(u.beginPath(),u.arc(n.x,n.y,r+3,0,2*Math.PI,!1),u.strokeStyle="#67be5f",u.lineWidth=2,u.stroke()),o&&(u.beginPath(),u.arc(n.x,n.y,r+3,0,2*Math.PI,!1),MetamapsModel.embed||(u.strokeStyle="white"),MetamapsModel.embed&&(u.strokeStyle="#999"),u.lineWidth=2,u.stroke()),u.drawImage(imgArray[i],n.x-r,n.y-r,r*2,r*2)},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("dim");return this.nodeHelper.circle.contains(n,t,r)}}},renderEdgeArrows=function(e,t){var n=Mconsole.canvas,r=t.getData("category"),i=t.getData("direction"),s=t.nodeFrom.pos.getc(!0),o=t.nodeTo.pos.getc(!0);if(r=="none")e.line.render({x:s.x,y:s.y},{x:o.x,y:o.y},n);else if(r=="both")renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,!0,n),renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,!1,n);else if(r=="from-to"){var i=t.data.$direction,u=i&&i.length>1&&i[0]!=t.nodeFrom.id;renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,u,n)}},edgeSettings={customEdge:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("category");renderEdgeArrows(this.edgeHelper,e);var s=e.getData("desc"),o=e.getData("showDesc");if(s!=""&&o){s=decodeEntities(s);var u=t.getCtx(),a=t.getSize(),f=parseInt((n.x+r.x-s.length*5)/2),l=parseInt((n.y+r.y)/2);u.font="bold 14px arial",u.fillStyle="#FFF";var c=5,h=14+c,p=h/2,d=u.measureText(s).width+2*c-2*p,v=f-c+p,m=l-h+c;u.fillRect(v,m,d,h),u.beginPath(),u.arc(v,m+p,p,0,2*Math.PI,!1),u.arc(v+d,m+p,p,0,2*Math.PI,!1),u.fill(),u.fillStyle="#000",u.fillText(s,f,l)}},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,e.Edge.epsilon)}}},edgeSettingsEmbed={customEdgeEmbed:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("category");renderEdgeArrows(this.edgeHelper,e);var s=e.getData("desc"),o=e.getData("showDesc");if(s!=""&&o){s=decodeEntities(s);var u=t.getCtx(),a=t.getSize(),f=parseInt((n.x+r.x-s.length*5)/2),l=parseInt((n.y+r.y)/2);u.font="bold 14px arial",u.fillStyle="#999";var c=5,h=14+c,p=h/2,d=u.measureText(s).width+2*c-2*p,v=f-c+p,m=l-h+c;u.fillRect(v,m,d,h),u.beginPath(),u.arc(v,m+p,p,0,2*Math.PI,!1),u.arc(v+d,m+p,p,0,2*Math.PI,!1),u.fill(),u.fillStyle="#000",u.fillText(s,f,l)}},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,e.Edge.epsilon)}}};(function(){window.$jit=function(e){e=e||window;for(var t in $jit)$jit[t].$extend&&(e[t]=$jit[t])},$jit.version="2.0.0b";var e=function(e){return document.getElementById(e)};e.empty=function(){},e.extend=function(e,t){for(var n in t||{})e[n]=t[n];return e},e.lambda=function(e){return typeof e=="function"?e:function(){return e}},e.time=Date.now||function(){return+(new Date)},e.splat=function(t){var n=e.type(t);return n?n!="array"?[t]:t:[]},e.type=function(t){var n=e.type.s.call(t).match(/^\[object\s(.*)\]$/)[1].toLowerCase();return n!="object"?n:t&&t.$$family?t.$$family:t&&t.nodeName&&t.nodeType==1?"element":n},e.type.s=Object.prototype.toString,e.each=function(t,n){var r=e.type(t);if(r=="object")for(var i in t)n(t[i],i);else for(var s=0,o=t.length;s>16,e>>8&255,e&255]},e.destroy=function(t){e.clean(t),t.parentNode&&t.parentNode.removeChild(t),t.clearAttributes&&t.clearAttributes()},e.clean=function(t){for(var n=t.childNodes,r=0,i=n.length;r-1},e.addClass=function(t,n){e.hasClass(t,n)||(t.className=t.className+" "+n)},e.removeClass=function(e,t){e.className=e.className.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)"),"$1")},e.getPos=function(e){function r(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.offsetLeft,t.y+=e.offsetTop,e=e.offsetParent;return t}function i(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.scrollLeft,t.y+=e.scrollTop,e=e.parentNode;return t}function s(e){return/^(?:body|html)$/i.test(e.tagName)}var t=r(e),n=i(e);return{x:t.x-n.x,y:t.y-n.y}},e.event={get:function(e,t){return t=t||window,e||t.event},getWheel:function(e){return e.wheelDelta?e.wheelDelta/120:-(e.detail||0)/3},isRightClick:function(e){return e.which==3||e.button==2},getPos:function(e,t){t=t||window,e=e||t.event;var n=t.document;n=n.documentElement||n.body,e.touches&&e.touches.length&&(e=e.touches[0]);var r={x:e.pageX||e.clientX+n.scrollLeft,y:e.pageY||e.clientY+n.scrollTop};return r},stop:function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1}},$jit.util=$jit.id=e;var t=function(n){n=n||{};var r=function(){for(var n in this)typeof this[n]!="function"&&(this[n]=e.unlink(this[n]));this.constructor=r;if(t.prototyping)return this;var i=this.initialize?this.initialize.apply(this,arguments):this;return this.$$family="class",i};for(var i in t.Mutators){if(!n[i])continue;n=t.Mutators[i](n,n[i]),delete n[i]}return e.extend(r,this),r.constructor=t,r.prototype=n,r};t.Mutators={Implements:function(n,r){return e.each(e.splat(r),function(e){t.prototyping=e;var r=typeof e=="function"?new e:e;for(var i in r)i in n||(n[i]=r[i]);delete t.prototyping}),n}},e.extend(t,{inherit:function(n,r){for(var i in r){var s=r[i],o=n[i],u=e.type(s);o&&u=="function"?s!=o&&t.override(n,i,s):u=="object"?n[i]=e.merge(o,s):n[i]=s}return n},override:function(e,n,r){var i=t.prototyping;i&&e[n]!=i[n]&&(i=null);var s=function(){var t=this.parent;this.parent=i?i[n]:e[n];var s=r.apply(this,arguments);return this.parent=t,s};e[n]=s}}),t.prototype.implement=function(){var n=this.prototype;return e.each(Array.prototype.slice.call(arguments||[]),function(e){t.inherit(n,e)}),this},$jit.Class=t,$jit.json={prune:function(e,t){this.each(e,function(e,n){n==t&&e.children&&(delete e.children,e.children=[])})},getParent:function(e,t){if(e.id==t)return!1;var n=e.children;if(n&&n.length>0)for(var r=0;r=(7-4*n)/11){t=r*r-Math.pow((11-6*n-11*e)/4,2);break}return t},Elastic:function(e,t){return Math.pow(2,10*--e)*Math.cos(20*e*Math.PI*(t[0]||1)/3)}};e.each(r,function(e,r){n[r]=t(e)}),e.each(["Quad","Cubic","Quart","Quint"],function(e,r){n[e]=t(function(e){return Math.pow(e,[r+2])})})})();var r=new t({initialize:function(e){this.setOptions(e)},setOptions:function(t){var r={duration:2500,fps:40,transition:n.Quart.easeInOut,compute:e.empty,complete:e.empty,link:"ignore"};return this.opt=e.merge(r,t||{}),this},step:function(){var t=e.time(),n=this.opt;if(ti.height?e.y-s.height-u:e.y+u)+"px",n.left=(e.x+s.width+o>i.width?e.x-s.width-o:e.x+o)+"px"},hide:function(e){this.tip.style.display="none",e&&this.config.onHide()}}),a.Classes.NodeStyles=new t({Implements:[s,o],initializePost:function(){this.fx=this.viz.fx,this.types=this.viz.fx.nodeTypes,this.nStyles=this.config,this.nodeStylesOnHover=this.nStyles.stylesHover,this.nodeStylesOnClick=this.nStyles.stylesClick,this.hoveredNode=!1,this.fx.nodeFxAnimation=new r,this.down=!1,this.move=!1},onMouseOut:function(e,t){this.down=this.move=!1;if(!this.hoveredNode)return;this.dom&&this.isLabel(e,t)&&this.toggleStylesOnHover(this.hoveredNode,!1);var n=e.relatedTarget,r=this.canvas.getElement();while(n&&n.parentNode){if(r==n.parentNode)return;n=n.parentNode}this.toggleStylesOnHover(this.hoveredNode,!1),this.hoveredNode=!1},onMouseOver:function(e,t){var n;if(this.dom&&(n=this.isLabel(e,t))){var r=this.viz.graph.getNode(n.id);if(r.selected)return;this.hoveredNode=r,this.toggleStylesOnHover(this.hoveredNode,!0)}},onMouseDown:function(e,t,n,r){if(r)return;var i;this.dom&&(i=this.isLabel(e,t))?this.down=this.viz.graph.getNode(i.id):this.dom||(this.down=n.getNode()),this.move=!1},onMouseUp:function(e,t,n,r){if(r)return;this.move||this.onClick(n.getNode()),this.down=this.move=!1},getRestoredStyles:function(e,t){var n={},r=this["nodeStylesOn"+t];for(var i in r)n[i]=e.styles["$"+i];return n},toggleStylesOnHover:function(e,t){this.nodeStylesOnHover&&this.toggleStylesOn("Hover",e,t)},toggleStylesOnClick:function(e,t){this.nodeStylesOnClick&&this.toggleStylesOn("Click",e,t)},toggleStylesOn:function(t,r,i){var s=this.viz,o=this.nStyles;if(i){var u=this;r.styles||(r.styles=e.merge(r.data,{}));for(var a in this["nodeStylesOn"+t]){var f="$"+a;f in r.styles||(r.styles[f]=r.getData(a))}s.fx.nodeFx(e.extend({elements:{id:r.id,properties:u["nodeStylesOn"+t]},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}else{var l=this.getRestoredStyles(r,t);s.fx.nodeFx(e.extend({elements:{id:r.id,properties:l},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}},onClick:function(e){if(!e)return;var t=this.nodeStylesOnClick;if(!t)return;e.selected?(this.toggleStylesOnClick(e,!1),delete e.selected):(this.viz.graph.eachNode(function(e){if(e.selected){for(var n in t)e.setData(n,e.styles["$"+n],"end");delete e.selected}}),this.toggleStylesOnClick(e,!0),e.selected=!0,delete e.hovered,this.hoveredNode=!1)},onMouseMove:function(e,t,n){this.down&&(this.move=!0);if(this.dom&&this.isLabel(e,t))return;var r=this.nodeStylesOnHover;if(!r)return;if(!this.dom){if(this.hoveredNode){var i=this.types[this.hoveredNode.getData("type")],s=i&&i.contains&&i.contains.call(this.fx,this.hoveredNode,n.getPos());if(s)return}var o=n.getNode();if(!this.hoveredNode&&!o)return;if(o.hovered)return;o&&!o.selected?(this.fx.nodeFxAnimation.stopTimer(),this.viz.graph.eachNode(function(e){if(e.hovered&&!e.selected){for(var t in r)e.setData(t,e.styles["$"+t],"end");delete e.hovered}}),o.hovered=!0,this.hoveredNode=o,this.toggleStylesOnHover(o,!0)):this.hoveredNode&&!this.hoveredNode.selected&&(this.fx.nodeFxAnimation.stopTimer(),this.toggleStylesOnHover(this.hoveredNode,!1),delete this.hoveredNode.hovered,this.hoveredNode=!1)}}}),a.Classes.Navigation=new t({Implements:[s,o],initializePost:function(){this.pos=!1,this.pressed=!1},onMouseWheel:function(t,n,r){if(!this.config.zooming)return;e.event.stop(e.event.get(t,n));var i=this.config.zooming/1e3,s=1+r*i;this.canvas.scale(s,s)},onMouseDown:function(e,t,n){if(!this.config.panning)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;this.pressed=!0,this.pos=n.getPos();var r=this.canvas,i=r.translateOffsetX,s=r.translateOffsetY,o=r.scaleOffsetX,u=r.scaleOffsetY;this.pos.x*=o,this.pos.x+=i,this.pos.y*=u,this.pos.y+=s},onMouseMove:function(e,t,n){if(!this.config.panning)return;if(!this.pressed)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;var r=this.pos,i=n.getPos(),s=this.canvas,o=s.translateOffsetX,u=s.translateOffsetY,a=s.scaleOffsetX,f=s.scaleOffsetY;i.x*=a,i.y*=f,i.x+=o,i.y+=u;var l=i.x-r.x,c=i.y-r.y;this.pos=i,this.canvas.translate(l*1/a,c*1/f)},onMouseUp:function(e,t,n,r){if(!this.config.panning)return;this.pressed=!1}});var f;(function(){function i(t,n){var i=document.createElement(t);for(var s in n)typeof n[s]=="object"?e.extend(i[s],n[s]):i[s]=n[s];return t=="canvas"&&!r&&G_vmlCanvasManager&&(i=G_vmlCanvasManager.initElement(document.body.appendChild(i))),i}var n=typeof HTMLCanvasElement,r=n=="object"||n=="function";$jit.Canvas=f=new t({canvases:[],pos:!1,element:!1,labelContainer:!1,translateOffsetX:0,translateOffsetY:0,scaleOffsetX:1,scaleOffsetY:1,initialize:function(t,n){this.viz=t,this.opt=n;var r=e.type(n.injectInto)=="string"?n.injectInto:n.injectInto.id,s=r+"-label",o=e(r),u=n.width||o.offsetWidth,a=n.height||o.offsetHeight;this.id=r;var l={injectInto:r,width:u,height:a};this.element=i("div",{id:r+"-canvaswidget",style:{position:"relative",width:u+"px",height:a+"px"}}),this.labelContainer=this.createLabelContainer(n.Label.type,s,l),this.canvases.push(new f.Base({config:e.extend({idSuffix:"-canvas"},l),plot:function(e){t.fx.plot()},resize:function(){t.refresh()}}));var c=n.background;if(c){var h=new f.Background[c.type](t,e.extend(c,l));this.canvases.push(new f.Base(h))}var p=this.canvases.length;while(p--)this.element.appendChild(this.canvases[p].canvas),p>0&&this.canvases[p].plot();this.element.appendChild(this.labelContainer),o.appendChild(this.element);var d=null,v=this;e.addEvent(window,"scroll",function(){clearTimeout(d),d=setTimeout(function(){v.getPos(!0)},500)})},getCtx:function(e){return this.canvases[e||0].getCtx()},getConfig:function(){return this.opt},getElement:function(){return this.element},getSize:function(e){return this.canvases[e||0].getSize()},resize:function(e,t){this.getPos(!0),this.translateOffsetX=this.translateOffsetY=0,this.scaleOffsetX=this.scaleOffsetY=1;for(var n=0,r=this.canvases.length;no?u=i(o+(s-r-o)*t):u=i(o-r+(s-o)*t):a>=n?s>o?u=i(o+(s-r-o)*t):u=i(o-r+(s-(o-r))*t):u=i(o+(s-o)*t);var f=(this.rho-e.rho)*t+e.rho;return{theta:u,rho:f}}};var c=function(e,t){return new l(e,t)};l.KER=c(0,0);var h=function(e,t){this.x=e,this.y=t};$jit.Complex=h,h.prototype={getc:function(){return this},getp:function(e){return this.toPolar(e)},set:function(e){e=e.getc(!0),this.x=e.x,this.y=e.y},setc:function(e,t){this.x=e,this.y=t},setp:function(e,t){this.x=Math.cos(e)*t,this.y=Math.sin(e)*t},clone:function(){return new h(this.x,this.y)},toPolar:function(e){var t=this.norm(),n=Math.atan2(this.y,this.x);return n<0&&(n+=Math.PI*2),e?{theta:n,rho:t}:new l(n,t)},norm:function(){return Math.sqrt(this.squaredNorm())},squaredNorm:function(){return this.x*this.x+this.y*this.y},add:function(e){return new h(this.x+e.x,this.y+e.y)},prod:function(e){return new h(this.x*e.x-this.y*e.y,this.y*e.x+this.x*e.y)},conjugate:function(){return new h(this.x,-this.y)},scale:function(e){return new h(this.x*e,this.y*e)},equals:function(e){return this.x==e.x&&this.y==e.y},$add:function(e){return this.x+=e.x,this.y+=e.y,this},$prod:function(e){var t=this.x,n=this.y;return this.x=t*e.x-n*e.y,this.y=n*e.x+t*e.y,this},$conjugate:function(){return this.y=-this.y,this},$scale:function(e){return this.x*=e,this.y*=e,this},$div:function(e){var t=this.x,n=this.y,r=e.squaredNorm();return this.x=t*e.x+n*e.y,this.y=n*e.x-t*e.y,this.$scale(1/r)}};var p=function(e,t){return new h(e,t)};h.KER=p(0,0),$jit.Graph=new t({initialize:function(t,n,r,i){var s={complex:!1,Node:{}};this.Node=n,this.Edge=r,this.Label=i,this.opt=e.merge(s,t||{}),this.nodes={},this.edges={};var o=this;this.nodeList={};for(var u in v)o.nodeList[u]=function(e){return function(){var t=Array.prototype.slice.call(arguments);o.eachNode(function(n){n[e].apply(n,t)})}}(u)},getNode:function(e){return this.hasNode(e)?this.nodes[e]:!1},getByName:function(e){for(var t in this.nodes){var n=this.nodes[t];if(n.name==e)return n}return!1},getAdjacence:function(e,t){return e in this.edges?this.edges[e][t]:!1},addNode:function(t){if(!this.nodes[t.id]){var n=this.edges[t.id]={};this.nodes[t.id]=new d.Node(e.extend({id:t.id,name:t.name,data:e.merge(t.data||{},{}),adjacencies:n},this.opt.Node),this.opt.complex,this.Node,this.Edge,this.Label)}return this.nodes[t.id]},addAdjacence:function(e,t,n){this.hasNode(e.id)||this.addNode(e),this.hasNode(t.id)||this.addNode(t),e=this.nodes[e.id],t=this.nodes[t.id];if(!e.adjacentTo(t)){var r=this.edges[e.id]=this.edges[e.id]||{},i=this.edges[t.id]=this.edges[t.id]||{};return r[t.id]=i[e.id]=new d.Adjacence(e,t,n,this.Edge,this.Label),r[t.id]}return this.edges[e.id][t.id]},removeNode:function(e){if(this.hasNode(e)){delete this.nodes[e];var t=this.edges[e];for(var n in t)delete this.edges[n][e];delete this.edges[e]}},removeAdjacence:function(e,t){delete this.edges[e][t],delete this.edges[t][e]},hasNode:function(e){return e in this.nodes},empty:function(){this.nodes={},this.edges={}}});var d=$jit.Graph,v;(function(){var t=function(e,t,n,r,i){var s;n=n||"current",e="$"+(e?e+"-":""),n=="current"?s=this.data:n=="start"?s=this.startData:n=="end"&&(s=this.endData);var o=e+t;return r?s[o]:this.Config.overridable?o in s?s[o]:o in this.data?this.data[o]:i[t]||0:i[t]||0},n=function(e,t,n,r){r=r||"current",e="$"+(e?e+"-":"");var i;r=="current"?i=this.data:r=="start"?i=this.startData:r=="end"&&(i=this.endData),i[e+t]=n},r=function(t,n){t="$"+(t?t+"-":"");var r=this;e.each(n,function(e){var n=t+e;delete r.data[n],delete r.endData[n],delete r.startData[n]})};v={getData:function(e,n,r){return t.call(this,"",e,n,r,this.Config)},setData:function(e,t,r){n.call(this,"",e,t,r)},setDataset:function(t,n){t=e.splat(t);for(var r in n)for(var i=0,s=e.splat(n[r]),o=t.length;i=t&&i<=n&&o(e)&&r(e,i),ii&&a(r,t,n)})}(e,t+s,n+s)},eachSubgraph:function(e,t,n){this.eachLevel(e,0,!1,t,n)},eachSubnode:function(e,t,n){this.eachLevel(e,1,1,t,n)},anySubnode:function(t,n,r){var i=!1;n=n||e.lambda(!0);var s=e.type(n)=="string"?function(e){return e[n]}:n;return this.eachSubnode(t,function(e){s(e)&&(i=!0)},r),i},getSubnodes:function(t,n,r){var i=[],s=this;n=n||0;var o,u;return e.type(n)=="array"?(o=n[0],u=n[1]):(o=n,u=Number.MAX_VALUE-t._depth),this.eachLevel(t,o,u,function(e){i.push(e)},r),i},getParents:function(e){var t=[];return this.eachAdjacency(e,function(n){var r=n.nodeTo;r._depth-1?t.endData[i]=r[i]:t.data[i]=r[i]}}),i.graph.eachNode(function(e){if(e.ignore)return;e.eachAdjacency(function(e){if(e.nodeFrom.ignore||e.nodeTo.ignore)return;var t=u.getNode(e.nodeFrom.id),n=u.getNode(e.nodeTo.id);if(!t.adjacentTo(n)){var e=i.graph.getAdjacence(t.id,n.id);f=!0,e.setData("alpha",1),e.setData("alpha",1,"start"),e.setData("alpha",0,"end")}})});var f=this.preprocessSum(u),c=f?["node-property:alpha","edge-property:alpha"]:["node-property:alpha"];c[0]=c[0]+(r&&"node-property"in r?":"+e.splat(r["node-property"]).join(":"):""),c[1]=(c[1]||"edge-property:alpha")+(r&&"edge-property"in r?":"+e.splat(r["edge-property"]).join(":"):""),r&&"label-property"in r&&c.push("label-property:"+e.splat(r["label-property"]).join(":")),i.reposition(),i.graph.eachNode(function(e){e.id!=o&&e.pos.getp().equals(l.KER)&&(e.pos.set(e.endPos),e.startPos.set(e.endPos))}),i.fx.animate(e.merge(s,{modes:["polar"].concat(c),onComplete:function(){i.graph.eachNode(function(e){e.ignore&&i.graph.removeNode(e.id)}),i.graph.eachNode(function(e){e.eachAdjacency(function(e){e.ignore&&i.graph.removeAdjacence(e.nodeFrom.id,e.nodeTo.id)})}),s.onComplete()}}));break;default:}},contract:function(t,n){var r=this.viz;if(t.collapsed||!t.anySubnode(e.lambda(!0)))return;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),t.collapsed=!0,function i(e){e.eachSubnode(function(e){e.ignore=!0,e.setData("alpha",0,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),function s(e){e.eachSubnode(function(e){e.setPos(t.getPos("end"),"end"),s(e)})}(t),r.fx.animate(n)):n.type=="replot"&&r.refresh()},expand:function(t,n){if(!("collapsed"in t))return;var r=this.viz;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),delete t.collapsed,function i(e){e.eachSubnode(function(e){delete e.ignore,e.setData("alpha",1,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),r.fx.animate(n)):n.type=="replot"&&r.refresh()},preprocessSum:function(e){var t=this.viz;e.eachNode(function(e){if(!t.graph.hasNode(e.id)){t.graph.addNode(e);var n=t.graph.getNode(e.id);n.setData("alpha",0),n.setData("alpha",0,"start"),n.setData("alpha",1,"end")}});var n=!1;return e.eachNode(function(e){e.eachAdjacency(function(e){var r=t.graph.getNode(e.nodeFrom.id),i=t.graph.getNode(e.nodeTo.id);if(!r.adjacentTo(i)){var e=t.graph.addAdjacence(r,i,e.data);r.startAlpha==r.endAlpha&&i.startAlpha==i.endAlpha&&(n=!0,e.setData("alpha",0),e.setData("alpha",0,"start"),e.setData("alpha",1,"end"))}})}),n}};var m={none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t,n,r){var i=r.getCtx();i.beginPath(),i.arc(t.x,t.y,n,0,Math.PI*2,!0),i.closePath(),i[e]()},contains:function(e,t,n){var r=e.x-t.x,i=e.y-t.y,s=r*r+i*i;return s<=n*n}},ellipse:{render:function(e,t,n,r,i){var s=i.getCtx();r/=2,n/=2,s.save(),s.scale(n/r,r/n),s.beginPath(),s.arc(t.x*(r/n),t.y*(n/r),r,0,Math.PI*2,!0),s.closePath(),s[e](),s.restore()},contains:function(e,t,n,r){n/=2,r/=2;var i=(n+r)/2,s=e.x-t.x,o=e.y-t.y,u=s*s+o*o;return u<=i*i}},square:{render:function(e,t,n,r){r.getCtx()[e+"Rect"](t.x-n,t.y-n,2*n,2*n)},contains:function(e,t,n){return Math.abs(t.x-e.x)<=n&&Math.abs(t.y-e.y)<=n}},rectangle:{render:function(e,t,n,r,i){i.getCtx()[e+"Rect"](t.x-n/2,t.y-r/2,n,r)},contains:function(e,t,n,r){return Math.abs(t.x-e.x)<=n/2&&Math.abs(t.y-e.y)<=r/2}},triangle:{render:function(e,t,n,r){var i=r.getCtx(),s=t.x,o=t.y-n,u=s-n,a=t.y+n,f=s+n,l=a;i.beginPath(),i.moveTo(s,o),i.lineTo(u,a),i.lineTo(f,l),i.closePath(),i[e]()},contains:function(e,t,n){return m.circle.contains(e,t,n)}},star:{render:function(e,t,n,r){var i=r.getCtx(),s=Math.PI/5;i.save(),i.translate(t.x,t.y),i.beginPath(),i.moveTo(n,0);for(var o=0;o<9;o++)i.rotate(s),o%2==0?i.lineTo(n/.525731*.200811,0):i.lineTo(n,0);i.closePath(),i[e](),i.restore()},contains:function(e,t,n){return m.circle.contains(e,t,n)}}},g={line:{render:function(e,t,n){var r=n.getCtx();r.beginPath(),r.moveTo(e.x,e.y),r.lineTo(t.x,t.y),r.stroke()},contains:function(e,t,n,r){var i=Math.min,s=Math.max,o=i(e.x,t.x),u=s(e.x,t.x),a=i(e.y,t.y),f=s(e.y,t.y);if(n.x>=o&&n.x<=u&&n.y>=a&&n.y<=f){if(Math.abs(t.x-e.x)<=r)return!0;var l=(t.y-e.y)/(t.x-e.x)*(n.x-e.x)+e.y;return Math.abs(l-n.y)<=r}return!1}},arrow:{render:function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new h(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new h(t.x-u.x,t.y-u.y),f=new h(-u.y/2,u.x/2),l=a.add(f),c=a.$add(f.$scale(-1));s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.lineTo(t.x,t.y),s.closePath(),s.fill()},contains:function(e,t,n,r){return g.line.contains(e,t,n,r)}},hyperline:{render:function(e,t,n,r){function f(e,t){var n=e.x*t.y-e.y*t.x,r=n,i=e.squaredNorm(),s=t.squaredNorm();if(n==0)return{x:0,y:0,ratio:-1};var o=(e.y*s-t.y*i+e.y-t.y)/n,u=(t.x*i-e.x*s+t.x-e.x)/r,a=-o/2,f=-u/2,l=(o*o+u*u)/4-1;if(l<0)return{x:0,y:0,ratio:-1};var c=Math.sqrt(l),h={x:a,y:f,ratio:c>1e3?-1:c,a:o,b:u};return h}function a(e,t){return et?!1:!0:t+Math.PI>e?!0:!1}var i=r.getCtx(),s=f(e,t);if(s.a>1e3||s.b>1e3||s.ratio<0)i.beginPath(),i.moveTo(e.x*n,e.y*n),i.lineTo(t.x*n,t.y*n),i.stroke();else{var o=Math.atan2(t.y-s.y,t.x-s.x),u=Math.atan2(e.y-s.y,e.x-s.x),a=a(o,u);i.beginPath(),i.arc(s.x*n,s.y*n,s.ratio*n,o,u,a),i.stroke()}},contains:e.lambda(!1)}};d.Plot={initialize:function(e,t){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge,this.animation=new r,this.nodeTypes=new t.Plot.NodeTypes,this.edgeTypes=new t.Plot.EdgeTypes,this.labels=e.labels},nodeHelper:m,edgeHelper:g,Interpolator:{map:{border:"color",color:"color",width:"number",height:"number",dim:"number",alpha:"number",lineWidth:"number",angularWidth:"number",span:"number",valueArray:"array-number",dimArray:"array-number"},canvas:{globalAlpha:"number",fillStyle:"color",strokeStyle:"color",lineWidth:"number",shadowBlur:"number",shadowColor:"color",shadowOffsetX:"number",shadowOffsetY:"number",miterLimit:"number"},label:{size:"number",color:"color"},compute:function(e,t,n){return e+(t-e)*n},moebius:function(e,t,n,r){var i=r.scale(-n);if(i.norm()<1){var s=i.x,o=i.y,u=e.startPos.getc().moebiusTransformation(i);e.pos.setc(u.x,u.y),i.x=s,i.y=o}},linear:function(e,t,n){var r=e.startPos.getc(!0),i=e.endPos.getc(!0);e.pos.setc(this.compute(r.x,i.x,n),this.compute(r.y,i.y,n))},polar:function(e,t,n){var r=e.startPos.getp(!0),i=e.endPos.getp(),s=i.interpolate(r,n);e.pos.setp(s.theta,s.rho)},number:function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end");e[i](t,this.compute(s,o,n))},color:function(t,n,r,i,s){var o=e.hexToRgb(t[i](n,"start")),u=e.hexToRgb(t[i](n,"end")),a=this.compute,f=e.rgbToHex([parseInt(a(o[0],u[0],r)),parseInt(a(o[1],u[1],r)),parseInt(a(o[2],u[2],r))]);t[s](n,f)},"array-number":function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end"),u=[];for(var a=0,f=s.length;a=.95?o.labels.plotLabel(i,n,e):o.labels.hideLabel(n,!1)),u.restore(),n.visited=!l})},plotTree:function(e,t,n){var r=this,i=this.viz,s=i.canvas,o=this.config,u=s.getCtx(),a=e.getData("alpha");e.eachSubnode(function(i){if(t.plotSubtree(e,i)&&i.exist&&i.drawn){var o=e.getAdjacency(i.id);!n&&t.onBeforePlotLine(o),u.globalAlpha=Math.min(a,i.getData("alpha")),r.plotLine(o,s,n),!n&&t.onAfterPlotLine(o),r.plotTree(i,t,n)}}),e.drawn?(!n&&t.onBeforePlotNode(e),this.plotNode(e,s,n),!n&&t.onAfterPlotNode(e),!t.hideLabels&&t.withLabels&&a>=.95?this.labels.plotLabel(s,e,t):this.labels.hideLabel(e,!1)):this.labels.hideLabel(e,!0)},plotNode:function(e,t,n){var r=e.getData("type"),i=this.node.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=e.getData("alpha"),a=t.getCtx();a.lineWidth=s,a.fillStyle=a.strokeStyle=o,a.globalAlpha=u;for(var f in i)a[f]=e.getCanvasStyle(f);this.nodeTypes[r].render.call(this,e,t,n)}},plotLine:function(e,t,n){var r=e.getData("type"),i=this.edge.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=t.getCtx();u.lineWidth=s,u.fillStyle=u.strokeStyle=o;for(var a in i)u[a]=e.getCanvasStyle(a);this.edgeTypes[r].render.call(this,e,t,n)}}},d.Label={},d.Label.Native=new t({plotLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.font=t.getLabelData("style")+" "+t.getLabelData("size")+"px "+t.getLabelData("family"),r.textAlign=t.getLabelData("textAlign"),r.fillStyle=r.strokeStyle=t.getLabelData("color"),r.textBaseline=t.getLabelData("textBaseline"),this.renderLabel(e,t,n)},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y+t.getData("height")/2)},hideLabel:e.empty,hideLabels:e.empty}),d.Label.DOM=new t({labelsHidden:!1,labelContainer:!1,labels:{},getLabelContainer:function(){return this.labelContainer?this.labelContainer:this.labelContainer=document.getElementById(this.viz.config.labelContainer)},getLabel:function(e){return e in this.labels&&this.labels[e]!=null?this.labels[e]:this.labels[e]=document.getElementById(e)},hideLabels:function(e){var t=this.getLabelContainer();e?t.style.display="none":t.style.display="",this.labelsHidden=e},clearLabels:function(e){for(var t in this.labels)if(e||!this.viz.graph.hasNode(t))this.disposeLabel(t),delete this.labels[t]},disposeLabel:function(e){var t=this.getLabel(e);t&&t.parentNode&&t.parentNode.removeChild(t)},hideLabel:function(t,n){t=e.splat(t);var r=n?"":"none",i,s=this;e.each(t,function(e){var t=s.getLabel(e.id);t&&(t.style.display=r)})},fitsInCanvas:function(e,t){var n=t.getSize();return e.x>=n.width||e.x<0||e.y>=n.height||e.y<0?!1:!0}}),d.Label.HTML=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){i=document.createElement("div");var s=this.getLabelContainer();i.id=r,i.className="node",i.style.position="absolute",n.onCreateLabel(i,t),s.appendChild(i),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Label.SVG=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){var s="http://www.w3.org/2000/svg";i=document.createElementNS(s,"svg:text");var o=document.createElementNS(s,"svg:tspan");i.appendChild(o);var u=this.getLabelContainer();i.setAttribute("id",r),i.setAttribute("class","node"),u.appendChild(i),n.onCreateLabel(i,t),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Geom=new t({initialize:function(e){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge},translate:function(t,n){n=e.splat(n),this.viz.graph.eachNode(function(r){e.each(n,function(e){r.getPos(e).$add(t)})})},setRightLevelToShow:function(t,n,r){var i=this.getRightLevelToShow(t,n),s=this.viz.labels,o=e.merge({execShow:!0,execHide:!0,onHide:e.empty,onShow:e.empty},r||{});t.eachLevel(0,this.config.levelsToShow,function(e){var n=e._depth-t._depth;n>i?(o.onHide(e),o.execHide&&(e.drawn=!1,e.exist=!1,s.hideLabel(e,!1))):(o.onShow(e),o.execShow&&(e.exist=!0))}),t.drawn=!0},getRightLevelToShow:function(e,t){var n=this.config,r=n.levelsToShow,i=n.constrained;if(!i)return r;while(!this.treeFitsInCanvas(e,t,r)&&r>1)r--;return r}});var y={construct:function(t){var n=e.type(t)=="array",r=new d(this.graphOptions,this.config.Node,this.config.Edge,this.config.Label);return n?function(t,n){var r=function(e){for(var r=0,i=n.length;rf?a:f;t.setData("width",c),t.setData("height",c),t.setData("dim",c)}}})},initializeLabel:function(e){this.label||(this.label=document.createElement("div"),document.body.appendChild(this.label)),this.setLabelStyles(e)},setLabelStyles:function(t){e.extend(this.label.style,{visibility:"hidden",position:"absolute",width:"auto",height:"auto"}),this.label.className="jit-autoadjust-label"}};b.Tree=function(){function r(e,t,n,r,i){var s=t.Node,o=t.multitree;if(s.overridable){var u=-1,a=-1;return e.eachNode(function(e){if(e._depth==n&&(!o||"$orn"in e.data&&e.data.$orn==r)){var t=e.getData("width",i),s=e.getData("height",i);u=u0?n[0]:null,i(n)}var r=this;this.graph.eachNode(function(e){e.selected=!1});for(var s=0,o=[t.id].concat(n);s=t._depth)});for(var i=0;i0&&e.drawn?(e.drawn=!1,c[l.id].push(e)):(!h||!p)&&e.drawn&&(e.drawn=!1,c[l.id].push(e))}),l.drawn=!0}a.length>0&&i.fx.plot();for(f in c)e.each(c[f],function(e){e.drawn=!0});for(f=0;fi?r:i)+this.config.subtreeOffset)},getEdge:function(e,t,n){var r=function(t,n){return function(){return e.pos.add(new h(t,n))}},i=this.node,s=e.getData("width"),o=e.getData("height");if(t=="begin"){if(i.align=="center")return this.dispatch(n,r(0,o/2),r(-s/2,0),r(0,-o/2),r(s/2,0));if(i.align=="left")return this.dispatch(n,r(0,o),r(0,0),r(0,0),r(s,0));if(i.align=="right")return this.dispatch(n,r(0,0),r(-s,0),r(0,-o),r(0,0));throw"align: not implemented"}if(t=="end"){if(i.align=="center")return this.dispatch(n,r(0,-o/2),r(s/2,0),r(0,o/2),r(-s/2,0));if(i.align=="left")return this.dispatch(n,r(0,0),r(s,0),r(0,o),r(0,0));if(i.align=="right")return this.dispatch(n,r(0,-o),r(0,0),r(0,0),r(-s,0));throw"align: not implemented"}},getScaledTreePosition:function(e,t){var n=this.node,r=e.getData("width"),i=e.getData("height"),s=this.config.multitree&&"$orn"in e.data&&e.data.$orn||this.config.orientation,o=function(n,r){return function(){return e.pos.add(new h(n,r)).$scale(1-t)}};if(n.align=="left")return this.dispatch(s,o(0,i),o(0,0),o(0,0),o(r,0));if(n.align=="center")return this.dispatch(s,o(0,i/2),o(-r/2,0),o(0,-i/2),o(r/2,0));if(n.align=="right")return this.dispatch(s,o(0,0),o(-r,0),o(0,-i),o(0,0));throw"align: not implemented"},treeFitsInCanvas:function(e,t,n){var r=t.getSize(),i=this.config.multitree&&"$orn"in e.data&&e.data.$orn||this.config.orientation,s=this.dispatch(i,r.width,r.height),o=this.getTreeBaseSize(e,n,function(e,t){return e===0||!t.anySubnode()});return o=0){t.drawn=!1;var a=o.getCtx(),f=s.geom.getScaledTreePosition(t,r);a.translate(f.x,f.y),a.scale(r,r)}this.plotTree(t,e.merge(n,{withLabels:!0,hideLabels:!!r,plotSubtree:function(e,n){var r=u.multitree&&!("$orn"in t.data),i=r&&t.getData("orns");return!r||i.indexOf(elem.getData("orn"))>-1}}),i),r>=0&&(t.drawn=!0)},getAlignedPos:function(e,t,n){var r=this.node,i,s;if(r.align=="center")i={x:e.x-t/2,y:e.y-n/2};else if(r.align=="left")s=this.config.orientation,s=="bottom"||s=="top"?i={x:e.x-t/2,y:e.y}:i={x:e.x,y:e.y-n/2};else{if(r.align!="right")throw"align: not implemented";s=this.config.orientation,s=="bottom"||s=="top"?i={x:e.x-t/2,y:e.y-n}:i={x:e.x-t,y:e.y-n/2}}return i},getOrientation:function(e){var t=this.config,n=t.orientation;if(t.multitree){var r=e.nodeFrom,i=e.nodeTo;n="$orn"in r.data&&r.data.$orn||"$orn"in i.data&&i.data.$orn}return n}}),$jit.ST.Label={},$jit.ST.Label.Native=new t({Implements:d.Label.Native,renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y)}}),$jit.ST.Label.DOM=new t({Implements:d.Label.DOM,placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.config,s=i.Node,o=this.viz.canvas,u=t.getData("width"),a=t.getData("height"),f=o.getSize(),l,c,h=o.translateOffsetX,p=o.translateOffsetY,d=o.scaleOffsetX,v=o.scaleOffsetY,m=r.x*d+h,g=r.y*v+p;if(s.align=="center")l={x:Math.round(m-u/2+f.width/2),y:Math.round(g-a/2+f.height/2)};else if(s.align=="left")c=i.orientation,c=="bottom"||c=="top"?l={x:Math.round(m-u/2+f.width/2),y:Math.round(g+f.height/2)}:l={x:Math.round(m+f.width/2),y:Math.round(g-a/2+f.height/2)};else{if(s.align!="right")throw"align: not implemented";c=i.orientation,c=="bottom"||c=="top"?l={x:Math.round(m-u/2+f.width/2),y:Math.round(g-a+f.height/2)}:l={x:Math.round(m-u+f.width/2),y:Math.round(g-a/2+f.height/2)}}var y=e.style;y.left=l.x+"px",y.top=l.y+"px",y.display=this.fitsInCanvas(l,o)?"":"none",n.onPlaceLabel(e,t)}}),$jit.ST.Label.SVG=new t({Implements:[$jit.ST.Label.DOM,d.Label.SVG],initialize:function(e){this.viz=e}}),$jit.ST.Label.HTML=new t({Implements:[$jit.ST.Label.DOM,d.Label.HTML],initialize:function(e){this.viz=e}}),$jit.ST.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.circle.render("fill",{x:r.x+i,y:r.y+i},i,t)},contains:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.circle.contains({x:r.x+i,y:r.y+i},i)}},square:{render:function(e,t){var n=e.getData("dim"),r=n/2,i=this.getAlignedPos(e.pos.getc(!0),n,n);this.nodeHelper.square.render("fill",{x:i.x+r,y:i.y+r},r,t)},contains:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.square.contains({x:r.x+i,y:r.y+i},i)}},ellipse:{render:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.ellipse.render("fill",{x:i.x+n/2,y:i.y+r/2},n,r,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.ellipse.contains({x:i.x+n/2,y:i.y+r/2},n,r,canvas)}},rectangle:{render:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.rectangle.render("fill",{x:i.x+n/2,y:i.y+r/2},n,r,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.rectangle.contains({x:i.x+n/2,y:i.y+r/2},n,r,canvas)}}}),$jit.ST.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=this.getOrientation(e),r=e.nodeFrom,i=e.nodeTo,s=r._depth1&&a[0]!=r.id;this.edgeHelper.arrow.render(o,u,s,f,t)},contains:function(e,t){var n=this.getOrientation(e),r=e.nodeFrom,i=e.nodeTo,s=r._depth0||l[T][1]>0)){var A=C+l[T][0],O=k+l[T][1],M=Math.atan((O-A)/i),_=55,D=S.createLinearGradient(u+i/2,a-(A+O)/2,u+i/2+_*Math.sin(M),a-(A+O)/2+_*Math.cos(M)),P=e.rgbToHex(e.map(e.hexToRgb(d[T%v].slice(1)),function(e){return e*.85>>0}));D.addColorStop(0,d[T%v]),D.addColorStop(1,P),S.fillStyle=D}S.beginPath(),S.moveTo(u,a-C),S.lineTo(u+i,a-k),S.lineTo(u+i,a-k-l[T][1]),S.lineTo(u,a-C-l[T][0]),S.lineTo(u,a-C),S.fill(),S.restore();if(x){var H=x.name==f[T],B=H?.7:.8,P=e.rgbToHex(e.map(e.hexToRgb(d[T%v].slice(1)),function(e){return e*B>>0}));S.strokeStyle=P,S.lineWidth=H?4:1,S.save(),S.beginPath(),x.index===0?(S.moveTo(u,a-C),S.lineTo(u,a-C-l[T][0])):(S.moveTo(u+i,a-k),S.lineTo(u+i,a-k-l[T][1])),S.stroke(),S.restore()}C+=l[T][0]||0,k+=l[T][1]||0,l[T][0]>0&&(L+=c[T][0]||0)}E&&w.type=="Native"&&(S.save(),S.beginPath(),S.fillStyle=S.strokeStyle=w.color,S.font=w.style+" "+w.size+"px "+w.family,S.textAlign="center",S.textBaseline="middle",b(t.name,h,p,t)&&S.fillText(L,u,a-C-m.labelOffset-w.size/2,i),y(t.name,h,p,t)&&S.fillText(t.name,u,a+w.size/2+m.labelOffset),S.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=t.x-o;if(t.xo+r||t.y>u||t.y=v){var m=+(f>r/2);return{name:e.getData("stringArray")[l],color:e.getData("colorArray")[l],value:e.getData("valueArray")[l][m],index:m}}}return!1}}}),$jit.AreaChart=new t({st:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","Margin","Label","AreaChart"),{Label:{type:"Native"}},t);var n=this.config.showLabels,r=e.type(n),s=this.config.showAggregates,o=e.type(s);this.config.showLabels=r=="function"?n:e.lambda(n),this.config.showAggregates=o=="function"?s:e.lambda(s),this.initializeViz()},initializeViz:function(){var t=this.config,n=this,r=t.type.split(":")[0],i={},s=new $jit.ST({injectInto:t.injectInto,orientation:"bottom",levelDistance:0,siblingOffset:0,subtreeOffset:0,withLabels:t.Label.type!="Native",useCanvas:t.useCanvas,Label:{type:t.Label.type},Node:{overridable:!0,type:"areachart-"+r,align:"left",width:1,height:1},Edge:{type:"none"},Tips:{enable:t.Tips.enable,type:"Native",force:!0,onShow:function(e,n,r){var i=r;t.Tips.onShow(e,i,n)}},Events:{enable:!0,type:"Native",onClick:function(e,r,i){if(!t.filterOnClick&&!t.Events.enable)return;var s=r.getContains();s&&t.filterOnClick&&n.filter(s.name),t.Events.enable&&t.Events.onClick(s,r,i)},onRightClick:function(e,r,i){if(!t.restoreOnRightClick)return;n.restore()},onMouseMove:function(e,r,i){if(!t.selectOnHover)return;if(e){var s=r.getContains();n.select(e.id,s.name,s.index)}else n.select(!1,!1,!1)}},onCreateLabel:function(n,r){var s=t.Label,o=r.getData("valueArray"),u=e.reduce(o,function(e,t){return e+t[0]},0),a=e.reduce(o,function(e,t){return e+t[1]},0);if(r.getData("prev")){var f={wrapper:document.createElement("div"),aggregate:document.createElement("div"),label:document.createElement("div")},l=f.wrapper,c=f.label,h=f.aggregate,p=l.style,d=c.style,v=h.style;i[r.id]=f,l.appendChild(c),l.appendChild(h),t.showLabels(r.name,u,a,r)||(c.style.display="none"),t.showAggregates(r.name,u,a,r)||(h.style.display="none"),p.position="relative",p.overflow="visible",p.fontSize=s.size+"px",p.fontFamily=s.family,p.color=s.color,p.textAlign="center",v.position=d.position="absolute",n.style.width=r.getData("width")+"px",n.style.height=r.getData("height")+"px",c.innerHTML=r.name,n.appendChild(l)}},onPlaceLabel:function(n,r){if(!r.getData("prev"))return;var s=i[r.id],o=s.wrapper.style,u=s.label.style,a=s.aggregate.style,f=r.getData("width"),l=r.getData("height"),c=r.getData("dimArray"),h=r.getData("valueArray"),p=e.reduce(h,function(e,t){return e+t[0]},0),d=e.reduce(h,function(e,t){return e+t[1]},0),v=parseInt(o.fontSize,10),m=n.style;if(c&&h){t.showLabels(r.name,p,d,r)?u.display="":u.display="none",t.showAggregates(r.name,p,d,r)?a.display="":a.display="none",o.width=a.width=u.width=n.style.width=f+"px",a.left=u.left=-f/2+"px";for(var g=0,y=h.length,b=0,w=0;g0&&(b+=h[g][0],w+=c[g][0]);a.top=-v-t.labelOffset+"px",u.top=t.labelOffset+w+"px",n.style.top=parseInt(n.style.top,10)-w+"px",n.style.height=o.height=w+"px",s.aggregate.innerHTML=b}}}),o=s.canvas.getSize(),u=t.Margin;s.config.offsetY=-o.height/2+u.bottom+(t.showLabels&&t.labelOffset+t.Label.size),s.config.offsetX=(u.right-u.left)/2,this.st=s,this.canvas=this.st.canvas},loadJSON:function(t){var n=e.time(),r=[],i=this.st,s=e.splat(t.label),o=e.splat(t.color||this.colors),u=this.config,a=!!u.type.split(":")[1],f=u.animate;for(var l=0,c=t.values,h=c.length;l-1?n:[0,0]}),"end")}),this.st.fx.animate({modes:["node-property:dimArray"],duration:1500,onComplete:function(){r.busy=!1}})},restore:function(){if(this.busy)return;this.busy=!0,this.config.Tips.enable&&this.st.tips.hide(),this.select(!1,!1,!1),this.normalizeDims();var e=this;this.st.fx.animate({modes:["node-property:height:dimArray"],duration:1500,onComplete:function(){e.busy=!1}})},select:function(e,t,n){if(!this.config.selectOnHover)return;var r=this.selected;if(r.id!=e||r.name!=t||r.index!=n){r.id=e,r.name=t,r.index=n,this.st.graph.eachNode(function(e){e.setData("border",!1)});if(e){var i=this.st.graph.getNode(e);i.setData("border",r);var s=n===0?"prev":"next";s=i.getData(s),s&&(i=this.st.graph.getByName(s),i&&i.setData("border",{name:t,index:1-n}))}this.st.plot()}},getLegend:function(){var t={},n;this.st.graph.getNode(this.st.root).eachAdjacency(function(e){n=e.nodeTo});var r=n.getData("colorArray"),i=r.length;return e.each(n.getData("stringArray"),function(e,n){t[e]=r[n%i]}),t},getMaxValue:function(){var t=0;return this.st.graph.eachNode(function(n){var r=n.getData("valueArray"),i=0,s=0;e.each(r,function(e){i+=+e[0],s+=+e[1]});var o=s>i?s:i;t=t>o?t:o}),t},normalizeDims:function(){var t=this.st.graph.getNode(this.st.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.st.canvas.getSize(),s=this.config,o=s.Margin,u=s.labelOffset+s.Label.size,a=(i.width-(o.left+o.right))/n,f=s.animate,l=i.height-(o.top+o.bottom)-(s.showAggregates&&u)-(s.showLabels&&u);this.st.graph.eachNode(function(t){var n=0,i=0,s=[];e.each(t.getData("valueArray"),function(e){n+=+e[0],i+=+e[1],s.push([0,0])});var o=i>n?i:n;t.setData("width",a);if(f){t.setData("height",o*l/r,"end"),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return[e[0]*l/r,e[1]*l/r]}),"end");var u=t.getData("dimArray");u||t.setData("dimArray",s)}else t.setData("height",o*l/r),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return[e[0]*l/r,e[1]*l/r]}))})}}),i.BarChart={$extend:!0,animate:!0,type:"stacked",labelOffset:3,barsOffset:0,hoveredColor:"#9fd4ff",orientation:"horizontal",showAggregates:!0,showLabels:!0,Tips:{enable:!1,onShow:e.empty,onHide:e.empty},Events:{enable:!1,onClick:e.empty}},$jit.ST.Plot.NodeTypes.implement({"barchart-stacked":{render:function(t,n){var r=t.pos.getc(!0),i=t.getData("width"),s=t.getData("height"),o=this.getAlignedPos(r,i,s),u=o.x,a=o.y,f=t.getData("dimArray"),l=t.getData("valueArray"),c=t.getData("colorArray"),h=c.length,p=t.getData("stringArray"),d=n.getCtx(),v={},m=t.getData("border"),g=t.getData("gradient"),y=t.getData("config"),b=y.orientation=="horizontal",w=y.showAggregates,E=y.showLabels,S=y.Label;if(c&&f&&p){for(var x=0,T=f.length,N=0,C=0;x>0}));k.addColorStop(0,L),k.addColorStop(.5,c[x%h]),k.addColorStop(1,L),d.fillStyle=k}b?d.fillRect(u+N,a,f[x],s):d.fillRect(u,a-N-f[x],i,f[x]),m&&m.name==p[x]&&(v.acum=N,v.dimValue=f[x]),N+=f[x]||0,C+=l[x]||0}m&&(d.save(),d.lineWidth=2,d.strokeStyle=m.color,b?d.strokeRect(u+v.acum+1,a+1,v.dimValue-2,s-2):d.strokeRect(u+1,a-v.acum-v.dimValue+1,i-2,v.dimValue-2),d.restore()),S.type=="Native"&&(d.save(),d.fillStyle=d.strokeStyle=S.color,d.font=S.style+" "+S.size+"px "+S.family,d.textBaseline="middle",w(t.name,C)&&(b?(d.textAlign="right",d.fillText(C,u+N-y.labelOffset,a+s/2)):(d.textAlign="center",d.fillText(C,u+i/2,a-s-S.size/2-y.labelOffset))),E(t.name,C,t)&&(b?(d.textAlign="center",d.translate(u-y.labelOffset-S.size/2,a+s/2),d.rotate(Math.PI/2),d.fillText(t.name,0,0)):(d.textAlign="center",d.fillText(t.name,u+i/2,a+S.size/2+y.labelOffset))),d.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=e.getData("config"),l=t.x-o,c=f.orientation=="horizontal";if(c){if(t.xo+r||t.y>u+i||t.yo+r||t.y>u||t.y=m)return{name:e.getData("stringArray")[h],color:e.getData("colorArray")[h],value:e.getData("valueArray")[h],label:e.name}}}return!1}},"barchart-grouped":{render:function(t,n){var r=t.pos.getc(!0),i=t.getData("width"),s=t.getData("height"),o=this.getAlignedPos(r,i,s),u=o.x,a=o.y,f=t.getData("dimArray"),l=t.getData("valueArray"),c=l.length,h=t.getData("colorArray"),p=h.length,d=t.getData("stringArray"),v=n.getCtx(),m={},g=t.getData("border"),y=t.getData("gradient"),b=t.getData("config"),w=b.orientation=="horizontal",E=b.showAggregates,S=b.showLabels,x=b.Label,T=(w?s:i)/c;if(h&&f&&d){for(var N=0,C=c,k=0,L=0;N>0}));A.addColorStop(0,O),A.addColorStop(.5,h[N%p]),A.addColorStop(1,O),v.fillStyle=A}w?v.fillRect(u,a+T*N,f[N],T):v.fillRect(u+T*N,a-f[N],T,f[N]),g&&g.name==d[N]&&(m.acum=T*N,m.dimValue=f[N]),k+=f[N]||0,L+=l[N]||0}g&&(v.save(),v.lineWidth=2,v.strokeStyle=g.color,w?v.strokeRect(u+1,a+m.acum+1,m.dimValue-2,T-2):v.strokeRect(u+m.acum+1,a-m.dimValue+1,T-2,m.dimValue-2),v.restore()),x.type=="Native"&&(v.save(),v.fillStyle=v.strokeStyle=x.color,v.font=x.style+" "+x.size+"px "+x.family,v.textBaseline="middle",E(t.name,L)&&(w?(v.textAlign="right",v.fillText(L,u+Math.max.apply(null,f)-b.labelOffset,a+s/2)):(v.textAlign="center",v.fillText(L,u+i/2,a-Math.max.apply(null,f)-x.size/2-b.labelOffset))),S(t.name,L,t)&&(w?(v.textAlign="center",v.translate(u-b.labelOffset-x.size/2,a+s/2),v.rotate(Math.PI/2),v.fillText(t.name,0,0)):(v.textAlign="center",v.fillText(t.name,u+i/2,a+x.size/2+b.labelOffset))),v.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=a.length,l=e.getData("config"),c=t.x-o,h=l.orientation=="horizontal",p=(h?i:r)/f;if(h){if(t.xo+r||t.y>u+i||t.yo+r||t.y>u||t.y=g&&t.y<=g+p)return{name:e.getData("stringArray")[d],color:e.getData("colorArray")[d],value:e.getData("valueArray")[d],label:e.name}}else{var g=o+p*d;if(t.x>=g&&t.x<=g+p&&t.y>=u-m)return{name:e.getData("stringArray")[d],color:e.getData("colorArray")[d],value:e.getData("valueArray")[d],label:e.name}}}return!1}}}),$jit.BarChart=new t({st:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","Margin","Label","BarChart"),{Label:{type:"Native"}},t);var n=this.config.showLabels,r=e.type(n),s=this.config.showAggregates,o=e.type(s);this.config.showLabels=r=="function"?n:e.lambda(n),this.config.showAggregates=o=="function"?s:e.lambda(s),this.initializeViz()},initializeViz:function(){var t=this.config,n=this,r=t.type.split(":")[0],i=t.orientation=="horizontal",s={},o=new $jit.ST({injectInto:t.injectInto,orientation:i?"left":"bottom",levelDistance:0,siblingOffset:t.barsOffset,subtreeOffset:0,withLabels:t.Label.type!="Native",useCanvas:t.useCanvas,Label:{type:t.Label.type},Node:{overridable:!0,type:"barchart-"+r,align:"left",width:1,height:1},Edge:{type:"none"},Tips:{enable:t.Tips.enable,type:"Native",force:!0,onShow:function(e,n,r){var i=r;t.Tips.onShow(e,i,n)}},Events:{enable:!0,type:"Native",onClick:function(e,n,r){if(!t.Events.enable)return;var i=n.getContains();t.Events.onClick(i,n,r)},onMouseMove:function(e,r,i){if(!t.hoveredColor)return;if(e){var s=r.getContains();n.select(e.id,s.name,s.index)}else n.select(!1,!1,!1)}},onCreateLabel:function(n,r){var i=t.Label,o=r.getData("valueArray"),u=e.reduce(o,function(e,t){return e+t},0),a={wrapper:document.createElement("div"),aggregate:document.createElement("div"),label:document.createElement("div")},f=a.wrapper,l=a.label,c=a.aggregate,h=f.style,p=l.style,d=c.style;s[r.id]=a,f.appendChild(l),f.appendChild(c),t.showLabels(r.name,u,r)||(p.display="none"),t.showAggregates(r.name,u,r)||(d.display="none"),h.position="relative",h.overflow="visible",h.fontSize=i.size+"px",h.fontFamily=i.family,h.color=i.color,h.textAlign="center",d.position=p.position="absolute",n.style.width=r.getData("width")+"px",n.style.height=r.getData("height")+"px",d.left=p.left="0px",l.innerHTML=r.name,n.appendChild(f)},onPlaceLabel:function(e,n){if(!s[n.id])return;var r=s[n.id],i=r.wrapper.style,o=r.label.style,u=r.aggregate.style,a=t.type.split(":")[0]=="grouped",f=t.orientation=="horizontal",l=n.getData("dimArray"),c=n.getData("valueArray"),h=a&&f?Math.max.apply(null,l):n.getData("width"),p=a&&!f?Math.max.apply(null,l):n.getData("height"),d=parseInt(i.fontSize,10),v=e.style;if(l&&c){i.width=u.width=o.width=e.style.width=h+"px";for(var m=0,g=c.length,y=0;m0&&(y+=c[m]);t.showLabels(n.name,y,n)?o.display="":o.display="none",t.showAggregates(n.name,y,n)?u.display="":u.display="none",t.orientation=="horizontal"?(u.textAlign="right",o.textAlign="left",o.textIndex=u.textIndent=t.labelOffset+"px",u.top=o.top=(p-d)/2+"px",e.style.height=i.height=p+"px"):(u.top=-d-t.labelOffset+"px",o.top=t.labelOffset+p+"px",e.style.top=parseInt(e.style.top,10)-p+"px",e.style.height=i.height=p+"px"),r.aggregate.innerHTML=y}}}),u=o.canvas.getSize(),a=t.Margin;i?(o.config.offsetX=u.width/2-a.left-(t.showLabels&&t.labelOffset+t.Label.size),o.config.offsetY=(a.bottom-a.top)/2):(o.config.offsetY=-u.height/2+a.bottom+(t.showLabels&&t.labelOffset+t.Label.size),o.config.offsetX=(a.right-a.left)/2),this.st=o,this.canvas=this.st.canvas},loadJSON:function(t){if(this.busy)return;this.busy=!0;var n=e.time(),r=[],i=this.st,s=e.splat(t.label),o=e.splat(t.color||this.colors),u=this.config,a=!!u.type.split(":")[1],f=u.animate,l=u.orientation=="horizontal",c=this;for(var h=0,p=t.values,d=p.length;hs?t:s}),t},setBarType:function(e){this.config.type=e,this.st.config.Node.type="barchart-"+e.split(":")[0]},normalizeDims:function(){var t=this.st.graph.getNode(this.st.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.st.canvas.getSize(),s=this.config,o=s.Margin,u=o.left+o.right,a=o.top+o.bottom,f=s.orientation=="horizontal",l=(i[f?"height":"width"]-(f?a:u)-(n-1)*s.barsOffset)/n,c=s.animate,h=i[f?"width":"height"]-(f?u:a)-(!f&&s.showAggregates&&s.Label.size+s.labelOffset)-(s.showLabels&&s.Label.size+s.labelOffset),p=f?"height":"width",d=f?"width":"height";this.st.graph.eachNode(function(t){var n=0,i=[];e.each(t.getData("valueArray"),function(e){n+=+e,i.push(0)}),t.setData(p,l);if(c){t.setData(d,n*h/r,"end"),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return e*h/r}),"end");var s=t.getData("dimArray");s||t.setData("dimArray",i)}else t.setData(d,n*h/r),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return e*h/r}))})}}),i.PieChart={$extend:!0,animate:!0,offset:25,sliceOffset:0,labelOffset:3,type:"stacked",hoveredColor:"#9fd4ff",Events:{enable:!1,onClick:e.empty},Tips:{enable:!1,onShow:e.empty,onHide:e.empty},showLabels:!0,resizeLabels:!1,updateHeights:!1},b.Radial=new t({compute:function(t){var n=e.splat(t||["current","start","end"]);w.compute(this.graph,n,this.config),this.graph.computeLevels(this.root,0,"ignore");var r=this.createLevelDistanceFunc();this.computeAngularWidths(n),this.computePositions(n,r)},computePositions:function(e,t){var n=e,r=this.graph,i=r.getNode(this.root),s=this.parent,o=this.config;for(var u=0,a=n.length;uf[i]?s:f[i]:s}a.push(e)},"ignore"),s&&s.id==e.id&&a.length>0&&a[0].dist&&a.sort(function(e,t){return(e.dist>=t.dist)-(e.dist<=t.dist)});for(var l=0,h=a.length;ld/2&&h.theta<3*d/2,a=v?h.theta+d:h.theta;v?(o-=Math.abs(Math.cos(h.theta)*s.width),u+=Math.sin(h.theta)*s.width):t.id==this.viz.root&&(o-=s.width/2)}i.save(),i.translate(o,u),i.rotate(a),i.fillText(t.name,0,0),i.restore()}}),n.Label.SVG=new t({Implements:d.Label.SVG,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz,s=this.viz.canvas,o=s.getSize(),u={x:Math.round(r.x+o.width/2),y:Math.round(r.y+o.height/2)};e.setAttribute("x",u.x),e.setAttribute("y",u.y);var a=e.getBBox();if(a){var f=e.getAttribute("x"),l=e.getAttribute("y"),c=t.pos.getp(!0),h=Math.PI,p=c.theta>h/2&&c.theta<3*h/2;p?(e.setAttribute("x",f-a.width),e.setAttribute("y",l-a.height)):t.id==i.root&&e.setAttribute("x",f-a.width/2);var d=p?c.theta+h:c.theta;t._depth&&e.setAttribute("transform","rotate("+d*360/(2*h)+" "+f+" "+l+")")}n.onPlaceLabel(e,t)}}),n.Label.HTML=new t({Implements:d.Label.HTML,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.clone(),i=this.viz.canvas,s=t.getData("height"),o=(s||t._depth==0?s:this.viz.config.levelDistance)/2,u=i.getSize();r.rho+=o,r=r.getc(!0);var a={x:Math.round(r.x+u.width/2),y:Math.round(r.y+u.height/2)},f=e.style;f.left=a.x+"px",f.top=a.y+"px",f.display=this.fitsInCanvas(a,i)?"":"none",n.onPlaceLabel(e,t)}}),n.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1),anglecontains:function(e,t){var n=e.getData("span")/2,r=e.pos.theta,i=r-n,s=r+n;i<0&&(i+=Math.PI*2);var o=Math.atan2(t.y,t.x);return o<0&&(o+=Math.PI*2),i>s?o>i&&o<=Math.PI*2||oi&&o=s*o&&n<=s*o+i}return!1}},"gradient-multipie":{render:function(t,n){var r=n.getCtx(),i=t.getData("height"),s=i?i:this.config.levelDistance,o=r.createRadialGradient(0,0,t.getPos().rho,0,0,t.getPos().rho+s),u=e.hexToRgb(t.getData("color")),a=[];e.each(u,function(e){a.push(parseInt(e*.5,10))});var f=e.rgbToHex(a);o.addColorStop(0,f),o.addColorStop(1,t.getData("color")),r.fillStyle=o,this.nodeTypes.multipie.render.call(this,t,n)},contains:function(e,t){return this.nodeTypes.multipie.contains.call(this,e,t)}},"gradient-pie":{render:function(t,n){var r=n.getCtx(),i=r.createRadialGradient(0,0,0,0,0,t.getPos().rho),s=e.hexToRgb(t.getData("color")),o=[];e.each(s,function(e){o.push(parseInt(e*.5,10))});var u=e.rgbToHex(o);i.addColorStop(1,u),i.addColorStop(0,t.getData("color")),r.fillStyle=i,this.nodeTypes.pie.render.call(this,t,n)},contains:function(e,t){return this.nodeTypes.pie.contains.call(this,e,t)}}}),n.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);this.edgeHelper.line.render(n,r,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,this.edge.epsilon)}},arrow:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("dim"),s=e.data.$direction,o=s&&s.length>1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}},hyperline:{render:function(e,t){var n=e.nodeFrom.pos.getc(),r=e.nodeTo.pos.getc(),i=Math.max(n.norm(),r.norm());this.edgeHelper.hyperline.render(n.$scale(1/i),r.$scale(1/i),i,t)},contains:e.lambda(!1)}})}($jit.Sunburst),$jit.Sunburst.Plot.NodeTypes.implement({"piechart-stacked":{render:function(t,n){var r=t.pos.getp(!0),i=t.getData("dimArray"),s=t.getData("valueArray"),o=t.getData("colorArray"),u=o.length,a=t.getData("stringArray"),f=t.getData("span")/2,c=t.pos.theta,h=c-f,p=c+f,d=new l,v=n.getCtx(),m={},g=t.getData("gradient"),y=t.getData("border"),b=t.getData("config"),w=b.showLabels,E=b.resizeLabels,S=b.Label,x=b.sliceOffset*Math.cos((h+p)/2),T=b.sliceOffset*Math.sin((h+p)/2);if(o&&i&&a){for(var N=0,C=i.length,k=0,L=0;N>0}),P=e.rgbToHex(D);M.addColorStop(0,O),M.addColorStop(.5,O),M.addColorStop(1,P),v.fillStyle=M}d.rho=k+b.sliceOffset,d.theta=h;var H=d.getc(!0);d.theta=p;var B=d.getc(!0);d.rho+=A;var j=d.getc(!0);d.theta=h;var F=d.getc(!0);v.beginPath(),v.arc(x,T,k+.01,h,p,!1),v.arc(x,T,k+A+.01,p,h,!0),v.fill(),y&&y.name==a[N]&&(m.acum=k,m.dimValue=i[N],m.begin=h,m.end=p),k+=A||0,L+=s[N]||0}if(y){v.save(),v.globalCompositeOperation="source-over",v.lineWidth=2,v.strokeStyle=y.color;var I=h>0;R=R<+E?+E:R,v.font=S.style+" "+R+"px "+S.family,v.textBaseline="middle",v.textAlign="center",d.rho=k+b.labelOffset+b.sliceOffset,d.theta=t.pos.theta;var U=d.getc(!0);v.fillText(t.name,U.x,U.y),v.restore()}}},contains:function(e,t){if(this.nodeTypes.none.anglecontains.call(this,e,t)){var n=Math.sqrt(t.x*t.x+t.y*t.y),r=this.config.levelDistance,i=e._depth,s=e.getData("config");if(n<=r*i+s.sliceOffset){var o=e.getData("dimArray");for(var u=0,a=o.length,f=s.sliceOffset;u=f&&n<=f+l)return{name:e.getData("stringArray")[u],color:e.getData("colorArray")[u],value:e.getData("valueArray")[u],label:e.name};f+=l}}return!1}return!1}}}),$jit.PieChart=new t({sb:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","PieChart","Label"),{Label:{type:"Native"}},t),this.initializeViz()},initializeViz:function(){var e=this.config,t=this,n=e.type.split(":")[0],r=new $jit.Sunburst({injectInto:e.injectInto,useCanvas:e.useCanvas,withLabels:e.Label.type!="Native",Label:{type:e.Label.type},Node:{overridable:!0,type:"piechart-"+n,width:1,height:1},Edge:{type:"none"},Tips:{enable:e.Tips.enable,type:"Native",force:!0,onShow:function(t,n,r){var i=r;e.Tips.onShow(t,i,n)}},Events:{enable:!0,type:"Native",onClick:function(t,n,r){if(!e.Events.enable)return;var i=n.getContains();e.Events.onClick(i,n,r)},onMouseMove:function(n,r,i){if(!e.hoveredColor)return;if(n){var s=r.getContains();t.select(n.id,s.name,s.index)}else t.select(!1,!1,!1)}},onCreateLabel:function(t,n){var r=e.Label;if(e.showLabels){var i=t.style;i.fontSize=r.size+"px",i.fontFamily=r.family,i.color=r.color,i.textAlign="center",t.innerHTML=n.name}},onPlaceLabel:function(n,r){if(!e.showLabels)return;var i=r.pos.getp(!0),s=r.getData("dimArray"),o=r.getData("span")/2,u=r.pos.theta,a=u-o,f=u+o,c=new l,h=e.showLabels,p=e.resizeLabels,d=e.Label;if(s){for(var v=0,m=s.length,g=0;v>0;b=b<+p?+p:b,n.style.fontSize=b+"px",c.rho=g+e.labelOffset+e.sliceOffset,c.theta=(a+f)/2;var i=c.getc(!0),w=t.canvas.getSize(),E={x:Math.round(i.x+w.width/2),y:Math.round(i.y+w.height/2)};n.style.left=E.x+"px",n.style.top=E.y+"px"}}}),i=r.canvas.getSize(),s=Math.min;r.config.levelDistance=s(i.width,i.height)/2-e.offset-e.sliceOffset,this.sb=r,this.canvas=this.sb.canvas,this.canvas.getCtx().globalCompositeOperation="lighter"},loadJSON:function(t){var n=e.time(),r=[],i=this.sb,s=e.splat(t.label),o=s.length,u=e.splat(t.color||this.colors),a=u.length,f=this.config,l=!!f.type.split(":")[1],c=f.animate,h=o==1;for(var p=0,d=t.values,v=d.length;pi?t:i}),t},normalizeDims:function(){var t=this.sb.graph.getNode(this.sb.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.config,s=i.animate,o=this.sb.config.levelDistance;this.sb.graph.eachNode(function(t){var n=0,u=[];e.each(t.getData("valueArray"),function(e){n+=+e,u.push(1)});var a=u.length==1&&!i.updateHeights;if(s){t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return a?o:e*o/r}),"end");var f=t.getData("dimArray");f||t.setData("dimArray",u)}else t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return a?o:e*o/r}));t.setData("normalizedDim",n/r)})}}),b.TM={},b.TM.SliceAndDice=new t({compute:function(e){var t=this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root);this.controller.onBeforeCompute(t);var n=this.canvas.getSize(),r=this.config,i=n.width,s=n.height;this.graph.computeLevels(this.root,0,"ignore"),t.getPos(e).setc(-i/2,-s/2),t.setData("width",i,e),t.setData("height",s+r.titleHeight,e),this.computePositions(t,t,this.layout.orientation,e),this.controller.onAfterCompute(t)},computePositions:function(e,t,n,r){var i=0;e.eachSubnode(function(e){i+=e.getData("area",r)});var s=this.config,o=s.offset,u=e.getData("width",r),a=e.getData("height",r)-s.titleHeight,f=e==t?1:t.getData("area",r)/i,l,c,h,p,d,v,m,g=n=="h";g?(n="v",l=a,c=u*f,h="height",p="y",d="x",v=s.titleHeight,m=0):(n="h",l=a*f,c=u,h="width",p="x",d="y",v=0,m=s.titleHeight);var y=t.getPos(r);t.setData("width",c,r),t.setData("height",l,r);var b=0,w=this;t.eachSubnode(function(e){var i=e.getPos(r);i[p]=b+y[p]+v,i[d]=y[d]+m,w.computePositions(t,e,n,r),b+=e.getData(h,r)})}}),b.TM.Area={compute:function(e){e=e||"current";var t=this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root);this.controller.onBeforeCompute(t);var n=this.config,r=this.canvas.getSize(),i=r.width,s=r.height,o=n.offset,u=i-o,a=s-o;this.graph.computeLevels(this.root,0,"ignore"),t.getPos(e).setc(-i/2,-s/2),t.setData("width",i,e),t.setData("height",s,e);var f={top:-s/2+n.titleHeight,left:-i/2,width:u,height:a-n.titleHeight};this.computePositions(t,f,e),this.controller.onAfterCompute(t)},computeDim:function(e,t,n,r,i,s){if(e.length+t.length==1){var o=e.length==1?e:t;this.layoutLast(o,n,r,s);return}e.length>=2&&t.length==0&&(t=[e.shift()]);if(e.length==0){t.length>0&&this.layoutRow(t,n,r,s);return}var u=e[0];if(i(t,n)>=i([u].concat(t),n))this.computeDim(e.slice(1),t.concat([u]),n,r,i,s);else{var a=this.layoutRow(t,n,r,s);this.computeDim(e,[],a.dim,a,i,s)}},worstAspectRatio:function(e,t){if(!e||e.length==0)return Number.MAX_VALUE;var n=0,r=0,i=Number.MAX_VALUE;for(var s=0,o=e.length;su?r:u}var a=t*t,f=n*n;return Math.max(a*r/f,f/(a*i))},avgAspectRatio:function(e,t){if(!e||e.length==0)return Number.MAX_VALUE;var n=0;for(var r=0,i=e.length;ro?t/o:o/t}return n/i},layoutLast:function(e,t,n,r){var i=e[0];i.getPos(r).setc(n.left,n.top),i.setData("width",n.width,r),i.setData("height",n.height,r)}},b.TM.Squarified=new t({Implements:b.TM.Area,computePositions:function(e,t,n){var r=this.config;t.width>=t.height?this.layout.orientation="h":this.layout.orientation="v";var i=e.getSubnodes([1,1],"ignore");if(i.length>0){this.processChildrenLayout(e,i,t,n);for(var s=0,o=i.length;s0){this.processChildrenLayout(e,r,t,n);for(var s=0,o=r.length;sa&&(a=t)});var f=this.graph.getNode(this.clickedNode&&this.clickedNode.id||t.id),l=Math.min(a,u-1),c=f._depth;this.layout.horizontal()?this.computeSubtree(f,-i/2,-s/2,i/(l+1),s,c,l,e):this.computeSubtree(f,-i/2,-s/2,i,s/(l+1),c,l,e)},computeSubtree:function(t,n,r,i,s,o,u,a){t.getPos(a).setc(n,r),t.setData("width",i,a),t.setData("height",s,a);var f,l=0,c=0,h=d.Util.getSubnodes(t,[1,1]);if(!h.length)return;e.each(h,function(e){c+=e.getData("dim")});for(var p=0,v=h.length;p>0}));d.addColorStop(0,p),d.addColorStop(1,v),h.fillStyle=d}a&&(h.strokeStyle=a,h.lineWidth=3),h.fillRect(l,c,Math.max(0,o-s),Math.max(0,u-s)),a&&h.strokeRect(f.x,f.y,o,u)},contains:function(e,t){if(this.viz.clickedNode&&!$jit.Graph.Util.isDescendantOf(e,this.viz.clickedNode.id))return!1;var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height");return this.nodeHelper.rectangle.contains({x:n.x+r/2,y:n.y+i/2},t,r,i)}}}),$jit.Icicle.Plot.EdgeTypes=new t({none:e.empty}),b.ForceDirected=new t({getOptions:function(e){var t=this.canvas.getSize(),n=t.width,r=t.height,i=0;this.graph.eachNode(function(e){i++});var s=n*r/i,o=Math.sqrt(s),u=this.config.levelDistance;return{width:n,height:r,tstart:n*.1,nodef:function(e){return s/(e||1)},edgef:function(e){return o*(e-u)}}},compute:function(t,n){var r=e.splat(t||["current","start","end"]),i=this.getOptions();w.compute(this.graph,r,this.config),this.graph.computeLevels(this.root,0,"ignore"),this.graph.eachNode(function(t){e.each(r,function(n){var s=t.getPos(n);s.equals(h.KER)&&(s.x=i.width/5*(Math.random()-.5),s.y=i.height/5*(Math.random()-.5)),t.disp={},e.each(r,function(e){t.disp[e]=p(0,0)})})}),this.computePositions(r,i,n)},computePositions:function(e,t,n){var r=this.config.iterations,i=0,s=this;if(n)(function o(){for(var u=n.iter,a=0;a=r){n.onComplete();return}}n.onStep(Math.round(i/(r-1)*100)),setTimeout(o,1)})();else for(;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.ForceDirected),$jit.TM={};var E=$jit.TM;$jit.TM.$extend=!0,E.Base={layout:{orientation:"h",vertical:function(){return this.orientation=="v"},horizontal:function(){return this.orientation=="h"},change:function(){this.orientation=this.vertical()?"h":"v"}},initialize:function(t){var n={orientation:"h",titleHeight:13,offset:2,levelsToShow:0,constrained:!1,animate:!1,Node:{type:"rectangle",overridable:!0,width:3,height:3,color:"#444"},Label:{textAlign:"center",textBaseline:"top"},Edge:{type:"none"},duration:700,fps:45};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),n,t),this.layout.orientation=this.config.orientation;var r=this.config;r.useCanvas?(this.canvas=r.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(r.background&&(r.background=e.merge({type:"Circles"},r.background)),this.canvas=new f(this,r),this.config.labelContainer=(typeof r.injectInto=="string"?r.injectInto:r.injectInto.id)+"-label"),this.graphOptions={complex:!0,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new E.Label[r.Label.type](this),this.fx=new E.Plot(this),this.op=new E.Op(this),this.group=new E.Group(this),this.geom=new E.Geom(this),this.clickedNode=null,this.busy=!1,this.initializeExtras()},refresh:function(){if(this.busy)return;this.busy=!0;var t=this;if(this.config.animate)this.compute("end"),this.config.levelsToShow>0&&this.geom.setRightLevelToShow(this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root)),this.fx.animate(e.merge(this.config,{modes:["linear","node-property:width:height"],onComplete:function(){t.busy=!1}}));else{var n=this.config.Label.type;if(n!="Native"){var t=this;this.graph.eachNode(function(e){t.labels.hideLabel(e,!1)})}this.busy=!1,this.compute(),this.config.levelsToShow>0&&this.geom.setRightLevelToShow(this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root)),this.plot()}},plot:function(){this.fx.plot()},leaf:function(e){return e.getSubnodes([1,1],"ignore").length==0},enter:function(e){if(this.busy)return;this.busy=!0;var t=this,n=this.config,r=this.graph,i=e,s=this.clickedNode,o={onComplete:function(){n.levelsToShow>0&&t.geom -.setRightLevelToShow(e),(n.levelsToShow>0||n.request)&&t.compute(),n.animate?(r.nodeList.setData("alpha",0,"end"),e.eachSubgraph(function(e){e.setData("alpha",1,"end")},"ignore"),t.fx.animate({duration:500,modes:["node-property:alpha"],onComplete:function(){t.clickedNode=i,t.compute("end"),t.clickedNode=s,t.fx.animate({modes:["linear","node-property:width:height"],duration:1e3,onComplete:function(){t.busy=!1,t.clickedNode=i}})}})):(t.busy=!1,t.clickedNode=e,t.refresh())}};n.request?this.requestNodes(i,o):o.onComplete()},out:function(){if(this.busy)return;this.busy=!0,this.events.hoveredNode=!1;var e=this,t=this.config,n=this.graph,r=n.getNode(this.clickedNode&&this.clickedNode.id||this.root).getParents(),i=r[0],s=i,o=this.clickedNode;if(!i){this.busy=!1;return}callback={onComplete:function(){e.clickedNode=i,t.request?e.requestNodes(i,{onComplete:function(){e.compute(),e.plot(),e.busy=!1}}):(e.compute(),e.plot(),e.busy=!1)}},t.levelsToShow>0&&this.geom.setRightLevelToShow(i),t.animate?(this.clickedNode=s,this.compute("end"),this.clickedNode=o,this.fx.animate({modes:["linear","node-property:width:height"],duration:1e3,onComplete:function(){e.clickedNode=s,n.eachNode(function(e){e.setDataset(["current","end"],{alpha:[0,1]})},"ignore"),o.eachSubgraph(function(e){e.setData("alpha",1)},"ignore"),e.fx.animate({duration:500,modes:["node-property:alpha"],onComplete:function(){callback.onComplete()}})}})):callback.onComplete()},requestNodes:function(t,n){var r=e.merge(this.controller,n),i=this.config.levelsToShow;if(r.request){var s=[],o=t._depth;t.eachLevel(0,i,function(e){var t=i-(e._depth-o);e.drawn&&!e.anySubnode()&&t>0&&(s.push(e),e._level=t)}),this.group.requestNodes(s,r)}else r.onComplete()}},E.Op=new t({Implements:d.Op,initialize:function(e){this.viz=e}}),E.Geom=new t({Implements:d.Geom,getRightLevelToShow:function(){return this.viz.config.levelsToShow},setRightLevelToShow:function(e){var t=this.getRightLevelToShow(),n=this.viz.labels;e.eachLevel(0,t+1,function(r){var i=r._depth-e._depth;i>t?(r.drawn=!1,r.exist=!1,r.ignore=!0,n.hideLabel(r,!1)):(r.drawn=!0,r.exist=!0,delete r.ignore)}),e.drawn=!0,delete e.ignore}}),E.Group=new t({initialize:function(e){this.viz=e,this.canvas=e.canvas,this.config=e.config},requestNodes:function(e,t){var n=0,r=e.length,i={},s=function(){t.onComplete()},o=this.viz;r==0&&s();for(var u=0;u>0}));v.addColorStop(0,m),v.addColorStop(1,g),h.fillStyle=v}h.fillRect(p,d,f-o,l-o),c&&(h.save(),h.strokeStyle=c,h.strokeRect(p,d,f-o,l-o),h.restore())}else u>0&&(h.fillRect(a.x+o/2,a.y+o/2,f-o,u-o),c&&(h.save(),h.strokeStyle=c,h.strokeRect(a.x+o/2,a.y+o/2,f-o,l-o),h.restore()))},contains:function(e,t){if(this.viz.clickedNode&&!e.isDescendantOf(this.viz.clickedNode.id)||e.ignore)return!1;var n=e.pos.getc(!0),r=e.getData("width"),i=this.viz.leaf(e),s=i?e.getData("height"):this.config.titleHeight;return this.nodeHelper.rectangle.contains({x:n.x+r/2,y:n.y+s/2},t,r,s)}}}),E.Plot.EdgeTypes=new t({none:e.empty}),E.SliceAndDice=new t({Implements:[y,a,E.Base,b.TM.SliceAndDice]}),E.Squarified=new t({Implements:[y,a,E.Base,b.TM.Squarified]}),E.Strip=new t({Implements:[y,a,E.Base,b.TM.Strip]}),$jit.RGraph=new t({Implements:[y,a,b.Radial],initialize:function(t){var n=$jit.RGraph,r={interpolation:"linear",levelDistance:100};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),r,t);var s=this.config;s.useCanvas?(this.canvas=s.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(s.background&&(s.background=e.merge({type:"Circles"},s.background)),this.canvas=new f(this,s),this.config.labelContainer=(typeof s.injectInto=="string"?s.injectInto:s.injectInto.id)+"-label"),this.graphOptions={complex:!1,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new n.Label[s.Label.type](this),this.fx=new n.Plot(this,n),this.op=new n.Op(this),this.json=null,this.root=null,this.busy=!1,this.parent=!1,this.initializeExtras()},createLevelDistanceFunc:function(){var e=this.config.levelDistance;return function(t){return(t._depth+1)*e}},refresh:function(){this.compute(),this.plot()},reposition:function(){this.compute("end")},plot:function(){this.fx.plot()},getNodeAndParentAngle:function(e){var t=!1,n=this.graph.getNode(e),r=n.getParents(),i=r.length>0?r[0]:!1;if(i){var s=i.pos.getc(),o=n.pos.getc(),u=s.add(o.scale(-1));t=Math.atan2(u.y,u.x),t<0&&(t+=2*Math.PI)}return{parent:i,theta:t}},tagChildren:function(e,t){if(e.angleSpan){var n=[];e.eachAdjacency(function(e){n.push(e.nodeTo)},"ignore");var r=n.length;for(var i=0;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.RGraph),h.prototype.moebiusTransformation=function(e){var t=this.add(e),n=e.$conjugate().$prod(this);return n.x++,t.$div(n)},d.Util.moebiusTransformation=function(e,t,n,r,i){this.eachNode(e,function(e){for(var i=0;i=2)return i(s-.01)}return i(.75)},getRadius:function(){var e=this.config.radius;if(e!=="auto")return e;var t=this.canvas.getSize();return Math.min(t.width,t.height)/2},refresh:function(e){e?(this.reposition(),this.graph.eachNode(function(e){e.startPos.rho=e.pos.rho=e.endPos.rho,e.startPos.theta=e.pos.theta=e.endPos.theta})):this.compute(),this.plot()},reposition:function(){this.compute("end");var e=this.graph.getNode(this.root).pos.getc().scale(-1);d.Util.moebiusTransformation(this.graph,[e],["end"],"end","ignore"),this.graph.eachNode(function(e){e.ignore&&(e.endPos.rho=e.pos.rho,e.endPos.theta=e.pos.theta)})},plot:function(){this.fx.plot()},onClick:function(e,t){var n=this.graph.getNode(e).pos.getc(!0);this.move(n,t)},move:function(t,n){var r=p(t.x,t.y);if(this.busy===!1&&r.norm()<1){this.busy=!0;var i=this.graph.getClosestNodeToPos(r),s=this;this.graph.computeLevels(i.id,0),this.controller.onBeforeCompute(i),n=e.merge({onComplete:e.empty},n||{}),this.fx.animate(e.merge({modes:["moebius"],hideLabels:!0},n,{onComplete:function(){s.busy=!1,n.onComplete()}}),r)}}}),$jit.Hypertree.$extend=!0,function(n){n.Op=new t({Implements:d.Op}),n.Plot=new t({Implements:d.Plot}),n.Label={},n.Label.Native=new t({Implements:d.Label.Native,initialize:function(e){this.viz=e},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0),s=this.viz.getRadius();r.fillText(t.name,i.x*s,i.y*s)}}),n.Label.SVG=new t({Implements:d.Label.SVG,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.canvas,s=i.translateOffsetX,o=i.translateOffsetY,u=i.scaleOffsetX,a=i.scaleOffsetY,f=i.getSize(),l=this.viz.getRadius(),c={x:Math.round(r.x*u*l+s+f.width/2),y:Math.round(r.y*a*l+o+f.height/2)};e.setAttribute("x",c.x),e.setAttribute("y",c.y),n.onPlaceLabel(e,t)}}),n.Label.HTML=new t({Implements:d.Label.HTML,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.canvas,s=i.translateOffsetX,o=i.translateOffsetY,u=i.scaleOffsetX,a=i.scaleOffsetY,f=i.getSize(),l=this.viz.getRadius(),c={x:Math.round(r.x*u*l+s+f.width/2),y:Math.round(r.y*a*l+o+f.height/2)},h=e.style;h.left=c.x+"px",h.top=c.y+"px",h.display=this.fitsInCanvas(c,i)?"":"none",n.onPlaceLabel(e,t)}}),n.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.circle.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.circle.contains(r,t,n)}},ellipse:{render:function(e,t){var n=e.pos.getc().$scale(e.scale),r=e.getData("width"),i=e.getData("height");this.nodeHelper.ellipse.render("fill",n,r,i,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=e.pos.getc().$scale(e.scale);return this.nodeHelper.circle.contains(i,t,n,r)}},square:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.square.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.square.contains(r,t,n)}},rectangle:{render:function(e,t){var n=this.node,r=e.getData("width"),i=e.getData("height"),s=e.pos.getc();r=n.transform?r*(1-s.squaredNorm()):r,i=n.transform?i*(1-s.squaredNorm()):i,s.$scale(e.scale),r>.2&&i>.2&&this.nodeHelper.rectangle.render("fill",s,r,i,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=e.pos.getc().$scale(e.scale);return this.nodeHelper.square.contains(i,t,n,r)}},triangle:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.triangle.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.triangle.contains(r,t,n)}},star:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.star.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.star.contains(r,t,n)}}}),n.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.line.render({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.line.contains({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t,this.edge.epsilon)}},arrow:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale,s=e.getData("dim"),o=e.data.$direction,u=o&&o.length>1&&o[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},s,u,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.arrow.contains({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t,this.edge.epsilon)}},hyperline:{render:function(e,t){var n=e.nodeFrom.pos.getc(),r=e.nodeTo.pos.getc(),i=this.viz.getRadius();this.edgeHelper.hyperline.render(n,r,i,t)},contains:e.lambda(!1)}})}($jit.Hypertree)})(),function(){window.$jit=function(e){e=e||window;for(var t in $jit)$jit[t].$extend&&(e[t]=$jit[t])},$jit.version="2.0.0b";var e=function(e){return document.getElementById(e)};e.empty=function(){},e.extend=function(e,t){for(var n in t||{})e[n]=t[n];return e},e.lambda=function(e){return typeof e=="function"?e:function(){return e}},e.time=Date.now||function(){return+(new Date)},e.splat=function(t){var n=e.type(t);return n?n!="array"?[t]:t:[]},e.type=function(t){var n=e.type.s.call(t).match(/^\[object\s(.*)\]$/)[1].toLowerCase();return n!="object"?n:t&&t.$$family?t.$$family:t&&t.nodeName&&t.nodeType==1?"element":n},e.type.s=Object.prototype.toString,e.each=function(t,n){var r=e.type(t);if(r=="object")for(var i in t)n(t[i],i);else for(var s=0,o=t.length;s>16,e>>8&255,e&255]},e.destroy=function(t){e.clean(t),t.parentNode&&t.parentNode.removeChild(t),t.clearAttributes&&t.clearAttributes()},e.clean=function(t){for(var n=t.childNodes,r=0,i=n.length;r-1},e.addClass=function(t,n){e.hasClass(t,n)||(t.className=t.className+" "+n)},e.removeClass=function(e,t){e.className=e.className.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)"),"$1")},e.getPos=function(e){function r(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.offsetLeft,t.y+=e.offsetTop,e=e.offsetParent;return t}function i(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.scrollLeft,t.y+=e.scrollTop,e=e.parentNode;return t}function s(e){return/^(?:body|html)$/i.test(e.tagName)}var t=r(e),n=i(e);return{x:t.x-n.x,y:t.y-n.y}},e.event={get:function(e,t){return t=t||window,e||t.event},getWheel:function(e){return e.wheelDelta?e.wheelDelta/120:-(e.detail||0)/3},isRightClick:function(e){return e.which==3||e.button==2},getPos:function(e,t){t=t||window,e=e||t.event;var n=t.document;n=n.documentElement||n.body,e.touches&&e.touches.length&&(e=e.touches[0]);var r={x:e.pageX||e.clientX+n.scrollLeft,y:e.pageY||e.clientY+n.scrollTop};return r},stop:function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1}},$jit.util=$jit.id=e;var t=function(n){n=n||{};var r=function(){for(var n in this)typeof this[n]!="function"&&(this[n]=e.unlink(this[n]));this.constructor=r;if(t.prototyping)return this;var i=this.initialize?this.initialize.apply(this,arguments):this;return this.$$family="class",i};for(var i in t.Mutators){if(!n[i])continue;n=t.Mutators[i](n,n[i]),delete n[i]}return e.extend(r,this),r.constructor=t,r.prototype=n,r};t.Mutators={Implements:function(n,r){return e.each(e.splat(r),function(e){t.prototyping=e;var r=typeof e=="function"?new e:e;for(var i in r)i in n||(n[i]=r[i]);delete t.prototyping}),n}},e.extend(t,{inherit:function(n,r){for(var i in r){var s=r[i],o=n[i],u=e.type(s);o&&u=="function"?s!=o&&t.override(n,i,s):u=="object"?n[i]=e.merge(o,s):n[i]=s}return n},override:function(e,n,r){var i=t.prototyping;i&&e[n]!=i[n]&&(i=null);var s=function(){var t=this.parent;this.parent=i?i[n]:e[n];var s=r.apply(this,arguments);return this.parent=t,s};e[n]=s}}),t.prototype.implement=function(){var n=this.prototype;return e.each(Array.prototype.slice.call(arguments||[]),function(e){t.inherit(n,e)}),this},$jit.Class=t,$jit.json={prune:function(e,t){this.each(e,function(e,n){n==t&&e.children&&(delete e.children,e.children=[])})},getParent:function(e,t){if(e.id==t)return!1;var n=e.children;if(n&&n.length>0)for(var r=0;r=(7-4*n)/11){t=r*r-Math.pow((11-6*n-11*e)/4,2);break}return t},Elastic:function(e,t){return Math.pow(2,10*--e)*Math.cos(20*e*Math.PI*(t[0]||1)/3)}};e.each(r,function(e,r){n[r]=t(e)}),e.each(["Quad","Cubic","Quart","Quint"],function(e,r){n[e]=t(function(e){return Math.pow(e,[r+2])})})})();var r=new t({initialize:function(e){this.setOptions(e)},setOptions:function(t){var r={duration:2500,fps:40,transition:n.Quart.easeInOut,compute:e.empty,complete:e.empty,link:"ignore"};return this.opt=e.merge(r,t||{}),this},step:function(){var t=e.time(),n=this.opt;if(ti.height?e.y-s.height-u:e.y+u)+"px",n.left=(e.x+s.width+o>i.width?e.x-s.width-o:e.x+o)+"px"},hide:function(e){this.tip.style.display="none",e&&this.config.onHide()}}),a.Classes.NodeStyles=new t({Implements:[s,o],initializePost:function(){this.fx=this.viz.fx,this.types=this.viz.fx.nodeTypes,this.nStyles=this.config,this.nodeStylesOnHover=this.nStyles.stylesHover,this.nodeStylesOnClick=this.nStyles.stylesClick,this.hoveredNode=!1,this.fx.nodeFxAnimation=new r,this.down=!1,this.move=!1},onMouseOut:function(e,t){this.down=this.move=!1;if(!this.hoveredNode)return;this.dom&&this.isLabel(e,t)&&this.toggleStylesOnHover(this.hoveredNode,!1);var n=e.relatedTarget,r=this.canvas.getElement();while(n&&n.parentNode){if(r==n.parentNode)return;n=n.parentNode}this.toggleStylesOnHover(this.hoveredNode,!1),this.hoveredNode=!1},onMouseOver:function(e,t){var n;if(this.dom&&(n=this.isLabel(e,t))){var r=this.viz.graph.getNode(n.id);if(r.selected)return;this.hoveredNode=r,this.toggleStylesOnHover(this.hoveredNode,!0)}},onMouseDown:function(e,t,n,r){if(r)return;var i;this.dom&&(i=this.isLabel(e,t))?this.down=this.viz.graph.getNode(i.id):this.dom||(this.down=n.getNode()),this.move=!1},onMouseUp:function(e,t,n,r){if(r)return;this.move||this.onClick(n.getNode()),this.down=this.move=!1},getRestoredStyles:function(e,t){var n={},r=this["nodeStylesOn"+t];for(var i in r)n[i]=e.styles["$"+i];return n},toggleStylesOnHover:function(e,t){this.nodeStylesOnHover&&this.toggleStylesOn("Hover",e,t)},toggleStylesOnClick:function(e,t){this.nodeStylesOnClick&&this.toggleStylesOn("Click",e,t)},toggleStylesOn:function(t,r,i){var s=this.viz,o=this.nStyles;if(i){var u=this;r.styles||(r.styles=e.merge(r.data,{}));for(var a in this["nodeStylesOn"+t]){var f="$"+a;f in r.styles||(r.styles[f]=r.getData(a))}s.fx.nodeFx(e.extend({elements:{id:r.id,properties:u["nodeStylesOn"+t]},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}else{var l=this.getRestoredStyles(r,t);s.fx.nodeFx(e.extend({elements:{id:r.id,properties:l},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}},onClick:function(e){if(!e)return;var t=this.nodeStylesOnClick;if(!t)return;e.selected?(this.toggleStylesOnClick(e,!1),delete e.selected):(this.viz.graph.eachNode(function(e){if(e.selected){for(var n in t)e.setData(n,e.styles["$"+n],"end");delete e.selected}}),this.toggleStylesOnClick(e,!0),e.selected=!0,delete e.hovered,this.hoveredNode=!1)},onMouseMove:function(e,t,n){this.down&&(this.move=!0);if(this.dom&&this.isLabel(e,t))return;var r=this.nodeStylesOnHover;if(!r)return;if(!this.dom){if(this.hoveredNode){var i=this.types[this.hoveredNode.getData("type")],s=i&&i.contains&&i.contains.call(this.fx,this.hoveredNode,n.getPos());if(s)return}var o=n.getNode();if(!this.hoveredNode&&!o)return;if(o.hovered)return;o&&!o.selected?(this.fx.nodeFxAnimation.stopTimer(),this.viz.graph.eachNode(function(e){if(e.hovered&&!e.selected){for(var t in r)e.setData(t,e.styles["$"+t],"end");delete e.hovered}}),o.hovered=!0,this.hoveredNode=o,this.toggleStylesOnHover(o,!0)):this.hoveredNode&&!this.hoveredNode.selected&&(this.fx.nodeFxAnimation.stopTimer(),this.toggleStylesOnHover(this.hoveredNode,!1),delete this.hoveredNode.hovered,this.hoveredNode=!1)}}}),a.Classes.Navigation=new t({Implements:[s,o],initializePost:function(){this.pos=!1,this.pressed=!1},onMouseWheel:function(t,n,r){if(!this.config.zooming)return;if(t.target.id!="infovis-canvas")return;e.event.stop(e.event.get(t,n));var i=this.config.zooming/1e3,s=1+r*i;s>1?5>=this.canvas.scaleOffsetX&&this.canvas.scale(s,s):s<1&&this.canvas.scaleOffsetX>=.2&&this.canvas.scale(s,s)},onMouseDown:function(e,t,n){if(!this.config.panning)return;if(this.config.panning=="avoid nodes"&&n.getNode()||n.getEdge())return;this.pressed=!0,!MetamapsModel.boxStartCoordinates&&e.shiftKey&&(MetamapsModel.boxStartCoordinates=n.getPos()),MetamapsModel.didPan=!1,this.pos=n.getPos();var r=this.canvas,i=r.translateOffsetX,s=r.translateOffsetY,o=r.scaleOffsetX,u=r.scaleOffsetY;this.pos.x*=o,this.pos.x+=i,this.pos.y*=u,this.pos.y+=s},onMouseMove:function(e,t,n){if(!this.config.panning)return;if(!this.pressed)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;if(!MetamapsModel.boxStartCoordinates&&e.shiftKey){Mconsole.busy=!0,MetamapsModel.boxStartCoordinates=n.getPos();return}if(MetamapsModel.boxStartCoordinates&&e.shiftKey){Mconsole.busy=!0,drawSelectBox(n,e);return}if(e.target.id!="infovis-canvas"){this.pressed=!1;return}MetamapsModel.didPan=!0;var r=this.pos,i=n.getPos(),s=this.canvas,o=s.translateOffsetX,u=s.translateOffsetY,a=s.scaleOffsetX,f=s.scaleOffsetY;i.x*=a,i.y*=f,i.x+=o,i.y+=u;var l=i.x-r.x,c=i.y-r.y;this.pos=i,this.canvas.translate(l*1/a,c*1/f)},onMouseUp:function(e,t,n,r){if(!this.config.panning)return;this.pressed=!1}});var f;(function(){function i(t,n){var i=document.createElement(t);for(var s in n)typeof n[s]=="object"?e.extend(i[s],n[s]):i[s]=n[s];return t=="canvas"&&!r&&G_vmlCanvasManager&&(i=G_vmlCanvasManager.initElement(document.body.appendChild(i))),i}var n=typeof HTMLCanvasElement,r=n=="object"||n=="function";$jit.Canvas=f=new t({canvases:[],pos:!1,element:!1,labelContainer:!1,translateOffsetX:0,translateOffsetY:0,scaleOffsetX:1,scaleOffsetY:1,initialize:function(t,n){this.viz=t,this.opt=n;var r=e.type(n.injectInto)=="string"?n.injectInto:n.injectInto.id,s=r+"-label",o=e(r),u=n.width||o.offsetWidth,a=n.height||o.offsetHeight;this.id=r;var l={injectInto:r,width:u,height:a};this.element=i("div",{id:r+"-canvaswidget",style:{position:"relative",width:u+"px",height:a+"px"}}),this.labelContainer=this.createLabelContainer(n.Label.type,s,l),this.canvases.push(new f.Base({config:e.extend({idSuffix:"-canvas"},l),plot:function(e){t.fx.plot()},resize:function(){t.refresh()}}));var c=n.background;if(c){var h=new f.Background[c.type](t,e.extend(c,l));this.canvases.push(new f.Base(h))}var p=this.canvases.length;while(p--)this.element.appendChild(this.canvases[p].canvas),p>0&&this.canvases[p].plot();this.element.appendChild(this.labelContainer),o.appendChild(this.element);var d=null,v=this;e.addEvent(window,"scroll",function(){clearTimeout(d),d=setTimeout(function(){v.getPos(!0)},500)})},getCtx:function(e){return this.canvases[e||0].getCtx()},getConfig:function(){return this.opt},getElement:function(){return this.element},getSize:function(e){return this.canvases[e||0].getSize()},resize:function(e,t){this.getPos(!0),this.translateOffsetX=this.translateOffsetY=0,this.scaleOffsetX=this.scaleOffsetY=1;for(var n=0,r=this.canvases.length;no?u=i(o+(s-r-o)*t):u=i(o-r+(s-o)*t):a>=n?s>o?u=i(o+(s-r-o)*t):u=i(o-r+(s-(o-r))*t):u=i(o+(s-o)*t);var f=(this.rho-e.rho)*t+e.rho;return{theta:u,rho:f}}};var c=function(e,t){return new l(e,t)};l.KER=c(0,0);var h=function(e,t){this.x=e,this.y=t};$jit.Complex=h,h.prototype={getc:function(){return this},getp:function(e){return this.toPolar(e)},set:function(e){e=e.getc(!0),this.x=e.x,this.y=e.y},setc:function(e,t){this.x=e,this.y=t},setp:function(e,t){this.x=Math.cos(e)*t,this.y=Math.sin(e)*t},clone:function(){return new h(this.x,this.y)},toPolar:function(e){var t=this.norm(),n=Math.atan2(this.y,this.x);return n<0&&(n+=Math.PI*2),e?{theta:n,rho:t}:new l(n,t)},norm:function(){return Math.sqrt(this.squaredNorm())},squaredNorm:function(){return this.x*this.x+this.y*this.y},add:function(e){return new h(this.x+e.x,this.y+e.y)},prod:function(e){return new h(this.x*e.x-this.y*e.y,this.y*e.x+this.x*e.y)},conjugate:function(){return new h(this.x,-this.y)},scale:function(e){return new h(this.x*e,this.y*e)},equals:function(e){return this.x==e.x&&this.y==e.y},$add:function(e){return this.x+=e.x,this.y+=e.y,this},$prod:function(e){var t=this.x,n=this.y;return this.x=t*e.x-n*e.y,this.y=n*e.x+t*e.y,this},$conjugate:function(){return this.y=-this.y,this},$scale:function(e){return this.x*=e,this.y*=e,this},$div:function(e){var t=this.x,n=this.y,r=e.squaredNorm();return this.x=t*e.x+n*e.y,this.y=n*e.x-t*e.y,this.$scale(1/r)}};var p=function(e,t){return new h(e,t)};h.KER=p(0,0),$jit.Graph=new t({initialize:function(t,n,r,i){var s={complex:!1,Node:{}};this.Node=n,this.Edge=r,this.Label=i,this.opt=e.merge(s,t||{}),this.nodes={},this.edges={};var o=this;this.nodeList={};for(var u in v)o.nodeList[u]=function(e){return function(){var t=Array.prototype.slice.call(arguments);o.eachNode(function(n){n[e].apply(n,t)})}}(u)},getNode:function(e){return this.hasNode(e)?this.nodes[e]:!1},getByName:function(e){for(var t in this.nodes){var n=this.nodes[t];if(n.name==e)return n}return!1},getAdjacence:function(e,t){return e in this.edges?this.edges[e][t]:!1},addNode:function(t){if(!this.nodes[t.id]){var n=this.edges[t.id]={};this.nodes[t.id]=new d.Node(e.extend({id:t.id,name:t.name,data:e.merge(t.data||{},{}),adjacencies:n},this.opt.Node),this.opt.complex,this.Node,this.Edge,this.Label)}return this.nodes[t.id]},addAdjacence:function(e,t,n){this.hasNode(e.id)||this.addNode(e),this.hasNode(t.id)||this.addNode(t),e=this.nodes[e.id],t=this.nodes[t.id];if(!e.adjacentTo(t)){var r=this.edges[e.id]=this.edges[e.id]||{},i=this.edges[t.id]=this.edges[t.id]||{};return r[t.id]=i[e.id]=new d.Adjacence(e,t,n,this.Edge,this.Label),r[t.id]}return this.edges[e.id][t.id]},removeNode:function(e){if(this.hasNode(e)){delete this.nodes[e];var t=this.edges[e];for(var n in t)delete this.edges[n][e];delete this.edges[e]}},removeAdjacence:function(e,t){delete this.edges[e][t],delete this.edges[t][e]},hasNode:function(e){return e in this.nodes},empty:function(){this.nodes={},this.edges={}}});var d=$jit.Graph,v;(function(){var t=function(e,t,n,r,i){var s;n=n||"current",e="$"+(e?e+"-":""),n=="current"?s=this.data:n=="start"?s=this.startData:n=="end"&&(s=this.endData);var o=e+t;return r?s[o]:this.Config.overridable?o in s?s[o]:o in this.data?this.data[o]:i[t]||0:i[t]||0},n=function(e,t,n,r){r=r||"current",e="$"+(e?e+"-":"");var i;r=="current"?i=this.data:r=="start"?i=this.startData:r=="end"&&(i=this.endData),i[e+t]=n},r=function(t,n){t="$"+(t?t+"-":"");var r=this;e.each(n,function(e){var n=t+e;delete r.data[n],delete r.endData[n],delete r.startData[n]})};v={getData:function(e,n,r){return t.call(this,"",e,n,r,this.Config)},setData:function(e,t,r){n.call(this,"",e,t,r)},setDataset:function(t,n){t=e.splat(t);for(var r in n)for(var i=0,s=e.splat(n[r]),o=t.length;i=t&&i<=n&&o(e)&&r(e,i),ii&&a(r,t,n)})}(e,t+s,n+s)},eachSubgraph:function(e,t,n){this.eachLevel(e,0,!1,t,n)},eachSubnode:function(e,t,n){this.eachLevel(e,1,1,t,n)},anySubnode:function(t,n,r){var i=!1;n=n||e.lambda(!0);var s=e.type(n)=="string"?function(e){return e[n]}:n;return this.eachSubnode(t,function(e){s(e)&&(i=!0)},r),i},getSubnodes:function(t,n,r){var i=[],s=this;n=n||0;var o,u;return e.type(n)=="array"?(o=n[0],u=n[1]):(o=n,u=Number.MAX_VALUE-t._depth),this.eachLevel(t,o,u,function(e){i.push(e)},r),i},getParents:function(e){var t=[];return this.eachAdjacency(e,function(n){var r=n.nodeTo;r._depth-1?t.endData[i]=r[i]:t.data[i]=r[i]}}),i.graph.eachNode(function(e){if(e.ignore)return;e.eachAdjacency(function(e){if(e.nodeFrom.ignore||e.nodeTo.ignore)return;var t=u.getNode(e.nodeFrom.id),n=u.getNode(e.nodeTo.id);if(!t.adjacentTo(n)){var e=i.graph.getAdjacence(t.id,n.id);f=!0,e.setData("alpha",1),e.setData("alpha",1,"start"),e.setData("alpha",0,"end")}})});var f=this.preprocessSum(u),c=f?["node-property:alpha","edge-property:alpha"]:["node-property:alpha"];c[0]=c[0]+(r&&"node-property"in r?":"+e.splat(r["node-property"]).join(":"):""),c[1]=(c[1]||"edge-property:alpha")+(r&&"edge-property"in r?":"+e.splat(r["edge-property"]).join(":"):""),r&&"label-property"in r&&c.push("label-property:"+e.splat(r["label-property"]).join(":")),i.reposition(),i.graph.eachNode(function(e){e.id!=o&&e.pos.getp().equals(l.KER)&&(e.pos.set(e.endPos),e.startPos.set(e.endPos))}),i.fx.animate(e.merge(s,{modes:["polar"].concat(c),onComplete:function(){i.graph.eachNode(function(e){e.ignore&&i.graph.removeNode(e.id)}),i.graph.eachNode(function(e){e.eachAdjacency(function(e){e.ignore&&i.graph.removeAdjacence(e.nodeFrom.id,e.nodeTo.id)})}),s.onComplete()}}));break;default:}},contract:function(t,n){var r=this.viz;if(t.collapsed||!t.anySubnode(e.lambda(!0)))return;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),t.collapsed=!0,function i(e){e.eachSubnode(function(e){e.ignore=!0,e.setData("alpha",0,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),function s(e){e.eachSubnode(function(e){e.setPos(t.getPos("end"),"end"),s(e)})}(t),r.fx.animate(n)):n.type=="replot"&&r.refresh()},expand:function(t,n){if(!("collapsed"in t))return;var r=this.viz;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),delete t.collapsed,function i(e){e.eachSubnode(function(e){delete e.ignore,e.setData("alpha",1,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),r.fx.animate(n)):n.type=="replot"&&r.refresh()},preprocessSum:function(e){var t=this.viz;e.eachNode(function(e){if(!t.graph.hasNode(e.id)){t.graph.addNode(e);var n=t.graph.getNode(e.id);n.setData("alpha",0),n.setData("alpha",0,"start"),n.setData("alpha",1,"end")}});var n=!1;return e.eachNode(function(e){e.eachAdjacency(function(e){var r=t.graph.getNode(e.nodeFrom.id),i=t.graph.getNode(e.nodeTo.id);if(!r.adjacentTo(i)){var e=t.graph.addAdjacence(r,i,e.data);r.startAlpha==r.endAlpha&&i.startAlpha==i.endAlpha&&(n=!0,e.setData("alpha",0),e.setData("alpha",0,"start"),e.setData("alpha",1,"end"))}})}),n}};var m={none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t,n,r){var i=r.getCtx();i.beginPath(),i.arc(t.x,t.y,n,0,Math.PI*2,!0),i.closePath(),i[e]()},contains:function(e,t,n){var r=e.x-t.x,i=e.y-t.y,s=r*r+i*i;return s<=n*n}},ellipse:{render:function(e,t,n,r,i){var s=i.getCtx();r/=2,n/=2,s.save(),s.scale(n/r,r/n),s.beginPath(),s.arc(t.x*(r/n),t.y*(n/r),r,0,Math.PI*2,!0),s.closePath(),s[e](),s.restore()},contains:function(e,t,n,r){n/=2,r/=2;var i=(n+r)/2,s=e.x-t.x,o=e.y-t.y,u=s*s+o*o;return u<=i*i}},square:{render:function(e,t,n,r){r.getCtx()[e+"Rect"](t.x-n,t.y-n,2*n,2*n)},contains:function(e,t,n){return Math.abs(t.x-e.x)<=n&&Math.abs(t.y-e.y)<=n}},rectangle:{render:function(e,t,n,r,i){i.getCtx()[e+"Rect"](t.x-n/2,t.y-r/2,n,r)},contains:function(e,t,n,r){return Math.abs(t.x-e.x)<=n/2&&Math.abs(t.y-e.y)<=r/2}},triangle:{render:function(e,t,n,r){var i=r.getCtx(),s=t.x,o=t.y-n,u=s-n,a=t.y+n,f=s+n,l=a;i.beginPath(),i.moveTo(s,o),i.lineTo(u,a),i.lineTo(f,l),i.closePath(),i[e]()},contains:function(e,t,n){return m.circle.contains(e,t,n)}},star:{render:function(e,t,n,r){var i=r.getCtx(),s=Math.PI/5;i.save(),i.translate(t.x,t.y),i.beginPath(),i.moveTo(n,0);for(var o=0;o<9;o++)i.rotate(s),o%2==0?i.lineTo(n/.525731*.200811,0):i.lineTo(n,0);i.closePath(),i[e](),i.restore()},contains:function(e,t,n){return m.circle.contains(e,t,n)}}},g={line:{render:function(e,t,n){var r=n.getCtx();r.beginPath(),r.moveTo(e.x,e.y),r.lineTo(t.x,t.y),r.stroke()},contains:function(e,t,n,r){var i=Math.min,s=Math.max,o=i(e.x,t.x),u=s(e.x,t.x),a=i(e.y,t.y),f=s(e.y,t.y);if(n.x>=o&&n.x<=u&&n.y>=a&&n.y<=f){if(Math.abs(t.x-e.x)<=r)return!0;var l=(t.y-e.y)/(t.x-e.x)*(n.x-e.x)+e.y;return Math.abs(l-n.y)<=r}return!1}},arrow:{render:function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new h(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new h(t.x-u.x,t.y-u.y),f=new h(-u.y/2.5,u.x/2.5),l=a.add(f),c=a.$add(f.$scale(-1)),p=new h(t.x-e.x,t.y-e.y);p.$scale(15/p.norm());var d=new h(t.x-p.x,t.y-p.y);t.x=d.x,t.y=d.y,s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.lineTo(t.x,t.y),s.closePath(),s.fill()},contains:function(e,t,n,r){return g.line.contains(e,t,n,r)}},hyperline:{render:function(e,t,n,r){function f(e,t){var n=e.x*t.y-e.y*t.x,r=n,i=e.squaredNorm(),s=t.squaredNorm();if(n==0)return{x:0,y:0,ratio:-1};var o=(e.y*s-t.y*i+e.y-t.y)/n,u=(t.x*i-e.x*s+t.x-e.x)/r,a=-o/2,f=-u/2,l=(o*o+u*u)/4-1;if(l<0)return{x:0,y:0,ratio:-1};var c=Math.sqrt(l),h={x:a,y:f,ratio:c>1e3?-1:c,a:o,b:u};return h}function a(e,t){return et?!1:!0:t+Math.PI>e?!0:!1}var i=r.getCtx(),s=f(e,t);if(s.a>1e3||s.b>1e3||s.ratio<0)i.beginPath(),i.moveTo(e.x*n,e.y*n),i.lineTo(t.x*n,t.y*n),i.stroke();else{var o=Math.atan2(t.y-s.y,t.x-s.x),u=Math.atan2(e.y-s.y,e.x-s.x),a=a(o,u);i.beginPath(),i.arc(s.x*n,s.y*n,s.ratio*n,o,u,a),i.stroke()}},contains:e.lambda(!1)}};d.Plot={initialize:function(e,t){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge,this.animation=new r,this.nodeTypes=new t.Plot.NodeTypes,this.edgeTypes=new t.Plot.EdgeTypes,this.labels=e.labels},nodeHelper:m,edgeHelper:g,Interpolator:{map:{border:"color",color:"color",width:"number",height:"number",dim:"number",alpha:"number",lineWidth:"number",angularWidth:"number",span:"number",valueArray:"array-number",dimArray:"array-number"},canvas:{globalAlpha:"number",fillStyle:"color",strokeStyle:"color",lineWidth:"number",shadowBlur:"number",shadowColor:"color",shadowOffsetX:"number",shadowOffsetY:"number",miterLimit:"number"},label:{size:"number",color:"color"},compute:function(e,t,n){return e+(t-e)*n},moebius:function(e,t,n,r){var i=r.scale(-n);if(i.norm()<1){var s=i.x,o=i.y,u=e.startPos.getc().moebiusTransformation(i);e.pos.setc(u.x,u.y),i.x=s,i.y=o}},linear:function(e,t,n){var r=e.startPos.getc(!0),i=e.endPos.getc(!0);e.pos.setc(this.compute(r.x,i.x,n),this.compute(r.y,i.y,n))},polar:function(e,t,n){var r=e.startPos.getp(!0),i=e.endPos.getp(),s=i.interpolate(r,n);e.pos.setp(s.theta,s.rho)},number:function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end");e[i](t,this.compute(s,o,n))},color:function(t,n,r,i,s){var o=e.hexToRgb(t[i](n,"start")),u=e.hexToRgb(t[i](n,"end")),a=this.compute,f=e.rgbToHex([parseInt(a(o[0],u[0],r)),parseInt(a(o[1],u[1],r)),parseInt(a(o[2],u[2],r))]);t[s](n,f)},"array-number":function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end"),u=[];for(var a=0,f=s.length;a=.95?o.labels.plotLabel(i,n,e):o.labels.hideLabel(n,!1)),u.restore(),n.visited=!l})},plotTree:function(e,t,n){var r=this,i=this.viz,s=i.canvas,o=this.config,u=s.getCtx(),a=e.getData("alpha");e.eachSubnode(function(i){if(t.plotSubtree(e,i)&&i.exist&&i.drawn){var o=e.getAdjacency(i.id);!n&&t.onBeforePlotLine(o),u.globalAlpha=Math.min(a,i.getData("alpha")),r.plotLine(o,s,n),!n&&t.onAfterPlotLine(o),r.plotTree(i,t,n)}}),e.drawn?(!n&&t.onBeforePlotNode(e),this.plotNode(e,s,n),!n&&t.onAfterPlotNode(e),!t.hideLabels&&t.withLabels&&a>=.95?this.labels.plotLabel(s,e,t):this.labels.hideLabel(e,!1)):this.labels.hideLabel(e,!0)},plotNode:function(e,t,n){var r=e.getData("type"),i=this.node.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=e.getData("alpha"),a=t.getCtx();a.lineWidth=s,a.fillStyle=a.strokeStyle=o,a.globalAlpha=u;for(var f in i)a[f]=e.getCanvasStyle(f);this.nodeTypes[r].render.call(this,e,t,n)}},plotLine:function(e,t,n){var r=e.getData("type"),i=this.edge.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=t.getCtx();u.lineWidth=s,u.fillStyle=u.strokeStyle=o;for(var a in i)u[a]=e.getCanvasStyle(a);this.edgeTypes[r].render.call(this,e,t,n)}}},d.Label={},d.Label.Native=new t({plotLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.font=t.getLabelData("style")+" "+t.getLabelData("size")+"px "+t.getLabelData("family"),r.textAlign=t.getLabelData("textAlign"),r.fillStyle=r.strokeStyle=t.getLabelData("color"),r.textBaseline=t.getLabelData("textBaseline"),this.renderLabel(e,t,n)},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y+t.getData("height")/2)},hideLabel:e.empty,hideLabels:e.empty}),d.Label.DOM=new t({labelsHidden:!1,labelContainer:!1,labels:{},getLabelContainer:function(){return this.labelContainer?this.labelContainer:this.labelContainer=document.getElementById(this.viz.config.labelContainer)},getLabel:function(e){return e in this.labels&&this.labels[e]!=null?this.labels[e]:this.labels[e]=document.getElementById(e)},hideLabels:function(e){var t=this.getLabelContainer();e?t.style.display="none":t.style.display="",this.labelsHidden=e},clearLabels:function(e){for(var t in this.labels)if(e||!this.viz.graph.hasNode(t))this.disposeLabel(t),delete this.labels[t]},disposeLabel:function(e){var t=this.getLabel(e);t&&t.parentNode&&t.parentNode.removeChild(t)},hideLabel:function(t,n){t=e.splat(t);var r=n?"":"none",i,s=this;e.each(t,function(e){var t=s.getLabel(e.id);t&&(t.style.display=r)})},fitsInCanvas:function(e,t){var n=t.getSize();return e.x>=n.width||e.x<0||e.y>=n.height||e.y<0?!1:!0}}),d.Label.HTML=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){i=document.createElement("div");var s=this.getLabelContainer();i.id=r,i.className="node",i.style.position="absolute",n.onCreateLabel(i,t),s.appendChild(i),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Label.SVG=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){var s="http://www.w3.org/2000/svg";i=document.createElementNS(s,"svg:text");var o=document.createElementNS(s,"svg:tspan");i.appendChild(o);var u=this.getLabelContainer();i.setAttribute("id",r),i.setAttribute("class","node"),u.appendChild(i),n.onCreateLabel(i,t),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Geom=new t({initialize:function(e){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge},translate:function(t,n){n=e.splat(n),this.viz.graph.eachNode(function(r){e.each(n,function(e){r.getPos(e).$add(t)})})},setRightLevelToShow:function(t,n,r){var i=this.getRightLevelToShow(t,n),s=this.viz.labels,o=e.merge({execShow:!0,execHide:!0,onHide:e.empty,onShow:e.empty},r||{});t.eachLevel(0,this.config.levelsToShow,function(e){var n=e._depth-t._depth;n>i?(o.onHide(e),o.execHide&&(e.drawn=!1,e.exist=!1,s.hideLabel(e,!1))):(o.onShow(e),o.execShow&&(e.exist=!0))}),t.drawn=!0},getRightLevelToShow:function(e,t){var n=this.config,r=n.levelsToShow,i=n.constrained;if(!i)return r;while(!this.treeFitsInCanvas(e,t,r)&&r>1)r--;return r}});var y={construct:function(t){var n=e.type(t)=="array",r=new d(this.graphOptions,this.config.Node,this.config.Edge,this.config.Label);return n?function(t,n){var r=function(e){for(var r=0,i=n.length;rf?a:f;t.setData("width",c),t.setData("height",c),t.setData("dim",c)}}})},initializeLabel:function(e){this.label||(this.label=document.createElement("div"),document.body.appendChild(this.label)),this.setLabelStyles(e)},setLabelStyles:function(t){e.extend(this.label.style,{visibility:"hidden",position:"absolute",width:"auto",height:"auto"}),this.label.className="jit-autoadjust-label"}};b.Tree=function(){function r(e,t,n,r,i){var s=t.Node,o=t.multitree;if(s.overridable){var u=-1,a=-1;return e.eachNode(function(e){if(e._depth==n&&(!o||"$orn"in e.data&&e.data.$orn==r)){var t=e.getData("width",i),s=e.getData("height",i);u=u=r){n.onComplete();return}}n.onStep(Math.round(i/(r-1)*100)),setTimeout(o,1)})();else for(;if[i]?s:f[i]:s}a.push(e)},"ignore"),s&&s.id==e.id&&a.length>0&&a[0].dist&&a.sort(function(e,t){return(e.dist>=t.dist)-(e.dist<=t.dist)});for(var l=0,h=a.length;l1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.ForceDirected),$jit.RGraph=new t({Implements:[y,a,b.Radial],initialize:function(t){var n=$jit.RGraph,r={interpolation:"linear",levelDistance:100};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),r,t);var s=this.config;s.useCanvas?(this.canvas=s.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(s.background&&(s.background=e.merge({type:"Circles"},s.background)),this.canvas=new f(this,s),this.config.labelContainer=(typeof s.injectInto=="string"?s.injectInto:s.injectInto.id)+"-label"),this.graphOptions={complex:!1,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new n.Label[s.Label.type](this),this.fx=new n.Plot(this,n),this.op=new n.Op(this),this.json=null,this.root=null,this.busy=!1,this.parent=!1,this.initializeExtras()},createLevelDistanceFunc:function(){var e=this.config.levelDistance;return function(t){return(t._depth+1)*e}},refresh:function(){this.compute(),this.plot()},reposition:function(){this.compute("end")},plot:function(){this.fx.plot()},getNodeAndParentAngle:function(e){var t=!1,n=this.graph.getNode(e),r=n.getParents(),i=r.length>0?r[0]:!1;if(i){var s=i.pos.getc(),o=n.pos.getc(),u=s.add(o.scale(-1));t=Math.atan2(u.y,u.x),t<0&&(t+=2*Math.PI)}return{parent:i,theta:t}},tagChildren:function(e,t){if(e.angleSpan){var n=[];e.eachAdjacency(function(e){n.push(e.nodeTo)},"ignore");var r=n.length;for(var i=0;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.RGraph),h.prototype.moebiusTransformation=function(e){var t=this.add(e),n=e.$conjugate().$prod(this);return n.x++,t.$div(n)},d.Util.moebiusTransformation=function(e,t,n,r,i){this.eachNode(e,function(e){for(var i=0;i").find(":last")[0];if(!i.getContext&&e.browser.msie)this.element=i=f.append("").find(":last")[0],i.src=t.src,i.style.filter="flipv progid:DXImageTransform.Microsoft.Alpha(opacity="+r*100+", style=1, finishOpacity=0, startx=0, starty=0, finishx=0, finishy="+n/u*100+")";else{s=i.getContext("2d");try{e(i).attr({width:o,height:n}),s.save(),s.translate(0,u-1),s.scale(1,-1),s.drawImage(t,0,0,o,u),s.restore(),s.globalCompositeOperation="destination-out",a=s.createLinearGradient(0,0,0,n),a.addColorStop(0,"rgba(255, 255, 255, "+(1-r)+")"),a.addColorStop(1,"rgba(255, 255, 255, 1.0)"),s.fillStyle=a,s.fillRect(0,0,o,n)}catch(l){return}}e(i).attr({alt:e(t).attr("alt"),title:e(t).attr("title")})}var n=function(n,r){this.orgWidth=n.width,this.orgHeight=n.height,this.image=n,this.reflection=null,this.alt=n.alt,this.title=n.title,this.imageOK=!1,this.options=r,this.imageOK=!0,this.options.reflHeight>0&&(this.reflection=new t(this.image,this.options.reflHeight,this.options.reflOpacity)),e(this.image).css("position","absolute")},r=function(t,r,i){var s=[],o=Math.sin,u=Math.cos,a=this;this.controlTimer=0,this.stopped=!1,this.container=t,this.xRadius=i.xRadius,this.yRadius=i.yRadius,this.showFrontTextTimer=0,this.autoRotateTimer=0,i.xRadius===0&&(this.xRadius=e(t).width()/2.3),i.yRadius===0&&(this.yRadius=e(t).height()/6),this.xCentre=i.xPos,this.yCentre=i.yPos,this.frontIndex=0,this.rotation=this.destRotation=Math.PI/2,this.timeDelay=1e3/i.FPS,i.altBox!==null&&(e(i.altBox).css("display","block"),e(i.titleBox).css("display","block")),e(t).css({position:"relative",overflow:"hidden"}),e(i.buttonLeft).css("display","inline"),e(i.buttonRight).css("display","inline"),e(i.buttonLeft).bind("mouseup",this,function(e){return e.data.rotate(-1),!1}),e(i.buttonRight).bind("mouseup",this,function(e){return e.data.rotate(1),!1}),e(".new_topic").bind("keydown",this,function(e){(e.keyCode==9||e.keyCode==9&&e.shiftKey)&&e.preventDefault()}),e(".new_topic").bind("keyup",this,function(e){e.keyCode==9&&e.shiftKey?e.data.rotate(-1):e.keyCode==9&&e.data.rotate(1)}),i.mouseWheel&&e(t).bind("mousewheel",this,function(e,t){return e.data.rotate(t),!1}),e(t).bind("mouseover click",this,function(t){clearInterval(t.data.autoRotateTimer);var n=e(t.target).attr("alt");if(n!==undefined&&n!==null){clearTimeout(t.data.showFrontTextTimer),e(i.altBox).html(e(t.target).attr("alt"));if(i.bringToFront&&t.type=="click"){e(i.titleBox).html(e(t.target).attr("title")),e("#topic_metacode").val(e(t.target).attr("title"));var s=e(t.target).data("itemIndex"),o=t.data.frontIndex,u=(s-o)%r.length;Math.abs(u)>r.length/2&&(u+=u>0?-r.length:r.length),t.data.rotate(-u)}}}),e(t).bind("mouseout",this,function(e){var t=e.data;clearTimeout(t.showFrontTextTimer),t.showFrontTextTimer=setTimeout(function(){t.showFrontText()},1e3),t.autoRotate()}),e(t).bind("mousedown",this,function(e){return e.data.container.focus(),!1}),t.onselectstart=function(){return!1},this.innerWrapper=e(t).wrapInner('
    ').children()[0],this.showFrontText=function(){if(s[this.frontIndex]===undefined)return;e("#topic_metacode").val(e(s[this.frontIndex].image).attr("title")),e(i.titleBox).html(e(s[this.frontIndex].image).attr("title")),e(i.altBox).html(e(s[this.frontIndex].image).attr("alt"))},this.go=function(){if(this.controlTimer!==0)return;var e=this;this.controlTimer=setTimeout(function(){e.updateAll()},this.timeDelay)},this.stop=function(){clearTimeout(this.controlTimer),this.controlTimer=0},this.rotate=function(e){this.frontIndex-=e,this.frontIndex==-1&&(this.frontIndex=s.length-1),this.frontIndex%=s.length,this.destRotation+=Math.PI/s.length*2*e,this.showFrontText(),this.go()},this.autoRotate=function(){if(i.autoRotate!=="no"){var e=i.autoRotate==="right"?1:-1;this.autoRotateTimer=setInterval(function(){a.rotate(e)},i.autoRotateDelay)}},this.updateAll=function(){var t=i.minScale,n=(1-t)*.5,r,a,f,l,c,h,p,d=this.destRotation-this.rotation,v=Math.abs(d);this.rotation+=d*i.speed,v<.001&&(this.rotation=this.destRotation);var m=s.length,g=Math.PI/m*2,y=this.rotation,b=e.browser.msie;this.innerWrapper.style.display="none";var w,E="px",S,x=this;for(var T=0;T>0,h.reflection!==null&&(S=i.reflHeight*c,w=h.reflection.element.style,w.left=f+E,w.top=l+a+i.reflGap*c+E,w.width=r+E,b?w.filter.finishy=S/a*100:w.height=S+E)}y+=g}this.innerWrapper.style.display="block",v>=.001?this.controlTimer=setTimeout(function(){x.updateAll()},this.timeDelay):this.stop()},this.checkImagesLoaded=function(){var t;for(t=0;t").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function i(t,n,r,i){return e.each(s,function(){n-=parseFloat(e.curCSS(t,"padding"+this,!0))||0,r&&(n-=parseFloat(e.curCSS(t,"border"+this+"Width",!0))||0),i&&(n-=parseFloat(e.curCSS(t,"margin"+this,!0))||0)}),n}var s=r==="Width"?["Left","Right"]:["Top","Bottom"],o=r.toLowerCase(),u={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?u["inner"+r].call(this):this.each(function(){e(this).css(o,i(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?u["outer"+r].call(this,t):this.each(function(){e(this).css(o,i(this,t,!0,n)+"px")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return n(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var r=e.attr(t,"tabindex"),i=isNaN(r);return(i||r>=0)&&n(t,!i)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement("div"));n.offsetHeight,e.extend(n.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart="onselectstart"in n,t.removeChild(n).style.display="none"}),e.curCSS||(e.curCSS=e.css),e.extend(e.ui,{plugin:{add:function(t,n,r){var i=e.ui[t].prototype;for(var s in r)i.plugins[s]=i.plugins[s]||[],i.plugins[s].push([n,r[s]])},call:function(e,t,n){var r=e.plugins[t];if(!r||!e.element[0].parentNode)return;for(var i=0;i0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target==this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})}(jQuery),function(e,t){e.ui=e.ui||{};var n=/left|center|right/,r=/top|center|bottom/,i="center",s={},o=e.fn.position,u=e.fn.offset;e.fn.position=function(t){if(!t||!t.of)return o.apply(this,arguments);t=e.extend({},t);var u=e(t.of),l=u[0],h=(t.collision||"flip").split(" "),p=t.offset?t.offset.split(" "):[0,0],v,m,y;return l.nodeType===9?(v=u.width(),m=u.height(),y={top:0,left:0}):l.setTimeout?(v=u.width(),m=u.height(),y={top:u.scrollTop(),left:u.scrollLeft()}):l.preventDefault?(t.at="left top",v=m=0,y={top:t.of.pageY,left:t.of.pageX}):(v=u.outerWidth(),m=u.outerHeight(),y=u.offset()),e.each(["my","at"],function(){var e=(t[this]||"").split(" ");e.length===1&&(e=n.test(e[0])?e.concat([i]):r.test(e[0])?[i].concat(e):[i,i]),e[0]=n.test(e[0])?e[0]:i,e[1]=r.test(e[1])?e[1]:i,t[this]=e}),h.length===1&&(h[1]=h[0]),p[0]=parseInt(p[0],10)||0,p.length===1&&(p[1]=p[0]),p[1]=parseInt(p[1],10)||0,t.at[0]==="right"?y.left+=v:t.at[0]===i&&(y.left+=v/2),t.at[1]==="bottom"?y.top+=m:t.at[1]===i&&(y.top+=m/2),y.left+=p[0],y.top+=p[1],this.each(function(){var n=e(this),r=n.outerWidth(),o=n.outerHeight(),u=parseInt(e.curCSS(this,"marginLeft",!0))||0,l=parseInt(e.curCSS(this,"marginTop",!0))||0,c=r+u+(parseInt(e.curCSS(this,"marginRight",!0))||0),d=o+l+(parseInt(e.curCSS(this,"marginBottom",!0))||0),g=e.extend({},y),w;t.my[0]==="right"?g.left-=r:t.my[0]===i&&(g.left-=r/2),t.my[1]==="bottom"?g.top-=o:t.my[1]===i&&(g.top-=o/2),s.fractions||(g.left=Math.round(g.left),g.top=Math.round(g.top)),w={left:g.left-u,top:g.top-l},e.each(["left","top"],function(n,i){e.ui.position[h[n]]&&e.ui.position[h[n]][i](g,{targetWidth:v,targetHeight:m,elemWidth:r,elemHeight:o,collisionPosition:w,collisionWidth:c,collisionHeight:d,offset:p,my:t.my,at:t.at})}),e.fn.bgiframe&&n.bgiframe(),n.offset(e.extend(g,{using:t.using}))})},e.ui.position={fit:{left:function(t,n){var r=e(window),i=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft();t.left=i>0?t.left-i:Math.max(t.left-n.collisionPosition.left,t.left)},top:function(t,n){var r=e(window),i=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop();t.top=i>0?t.top-i:Math.max(t.top-n.collisionPosition.top,t.top)}},flip:{left:function(t,n){if(n.at[0]===i)return;var r=e(window),s=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft(),o=n.my[0]==="left"?-n.elemWidth:n.my[0]==="right"?n.elemWidth:0,u=n.at[0]==="left"?n.targetWidth:-n.targetWidth,f=-2*n.offset[0];t.left+=n.collisionPosition.left<0?o+u+f:s>0?o+u+f:0},top:function(t,n){if(n.at[1]===i)return;var r=e(window),s=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop(),o=n.my[1]==="top"?-n.elemHeight:n.my[1]==="bottom"?n.elemHeight:0,u=n.at[1]==="top"?n.targetHeight:-n.targetHeight,f=-2*n.offset[1];t.top+=n.collisionPosition.top<0?o+u+f:s>0?o+u+f:0}}},e.offset.setOffset||(e.offset.setOffset=function(t,n){/static/.test(e.curCSS(t,"position"))&&(t.style.position="relative");var r=e(t),i=r.offset(),s=parseInt(e.curCSS(t,"top",!0),10)||0,o=parseInt(e.curCSS(t,"left",!0),10)||0,u={top:n.top-i.top+s,left:n.left-i.left+o};"using"in n?n.using.call(t,u):r.css(u)},e.fn.offset=function(t){var n=this[0];return!n||!n.ownerDocument?null:t?e.isFunction(t)?this.each(function(n){e(this).offset(t.call(this,n,e(this).offset()))}):this.each(function(){e.offset.setOffset(this,t)}):u.call(this)}),e.curCSS||(e.curCSS=e.css),function(){var t=document.getElementsByTagName("body")[0],n=document.createElement("div"),r,i,o,u,l;r=document.createElement(t?"div":"body"),o={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},t&&e.extend(o,{position:"absolute",left:"-1000px",top:"-1000px"});for(var c in o)r.style[c]=o[c];r.appendChild(n),i=t||document.documentElement,i.insertBefore(r,i.firstChild),n.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",u=e(n).offset(function(e,t){return t}).offset(),r.innerHTML="",i.removeChild(r),l=u.top+u.left+(t?2e3:0),s.fractions=l>21&&l<22}()}(jQuery),function(e,t){e.widget("ui.draggable",e.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},destroy:function(){if(!this.element.data("draggable"))return;return this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy(),this},_mouseCapture:function(t){var n=this.options;return this.helper||n.disabled||e(t.target).is(".ui-resizable-handle")?!1:(this.handle=this._getHandle(t),this.handle?(n.iframeFix&&e(n.iframeFix===!0?"iframe":n.iframeFix).each(function(){e('
    ').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var n=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.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},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,n.cursorAt&&this._adjustOffsetFromHelper(n.cursorAt),n.containment&&this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,n){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute");if(!n){var r=this._uiHash();if(this._trigger("drag",t,r)===!1)return this._mouseUp({}),!1;this.position=r.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";return e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var n=!1;e.ui.ddmanager&&!this.options.dropBehaviour&&(n=e.ui.ddmanager.drop(this,t)),this.dropped&&(n=this.dropped,this.dropped=!1);var r=this.element[0],i=!1;while(r&&(r=r.parentNode))r==document&&(i=!0);if(!i&&this.options.helper==="original")return!1;if(this.options.revert=="invalid"&&!n||this.options.revert=="valid"&&n||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,n)){var s=this;e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){s._trigger("stop",t)!==!1&&s._clear()})}else this._trigger("stop",t)!==!1&&this._clear();return!1},_mouseUp:function(t){return this.options.iframeFix===!0&&e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){var n=!this.options.handle||!e(this.options.handle,this.element).length?!0:!1;return e(this.options.handle,this.element).find("*").andSelf().each(function(){this==t.target&&(n=!0)}),n},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t])):n.helper=="clone"?this.element.clone().removeAttr("id"):this.element;return r.parents("body").length||r.appendTo(n.appendTo=="parent"?this.element[0].parentNode:n.appendTo),r[0]!=this.element[0]&&!/(fixed|absolute)/.test(r.css("position"))&&r.css("position","absolute"),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.browser.msie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.element.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.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 t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[t.containment=="document"?0:e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t.containment=="document"?0:e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(t.containment=="document"?0:e(window).scrollLeft())+e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(t.containment=="document"?0:e(window).scrollTop())+(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)&&t.containment.constructor!=Array){var n=e(t.containment),r=n[0];if(!r)return;var i=n.offset(),s=e(r).css("overflow")!="hidden";this.containment=[(parseInt(e(r).css("borderLeftWidth"),10)||0)+(parseInt(e(r).css("paddingLeft"),10)||0),(parseInt(e(r).css("borderTopWidth"),10)||0)+(parseInt(e(r).css("paddingTop"),10)||0),(s?Math.max(r.scrollWidth,r.offsetWidth):r.offsetWidth)-(parseInt(e(r).css("borderLeftWidth"),10)||0)-(parseInt(e(r).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(s?Math.max(r.scrollHeight,r.offsetHeight):r.offsetHeight)-(parseInt(e(r).css("borderTopWidth"),10)||0)-(parseInt(e(r).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=n}else t.containment.constructor==Array&&(this.containment=t.containment)},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r),left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r)}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName),s=t.pageX,o=t.pageY;if(this.originalPosition){var u;if(this.containment){if(this.relative_container){var f=this.relative_container.offset();u=[this.containment[0]+f.left,this.containment[1]+f.top,this.containment[2]+f.left,this.containment[3]+f.top]}else u=this.containment;t.pageX-this.offset.click.leftu[2]&&(s=u[2]+this.offset.click.left),t.pageY-this.offset.click.top>u[3]&&(o=u[3]+this.offset.click.top)}if(n.grid){var l=n.grid[1]?this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1]:this.originalPageY;o=u?l-this.offset.click.topu[3]?l-this.offset.click.topu[2]?c-this.offset.click.left=0;c--){var h=r.snapElements[c].left,p=h+r.snapElements[c].width,d=r.snapElements[c].top,v=d+r.snapElements[c].height;if(!(h-s
    ").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i=document.activeElement;try{i.id}catch(s){i=document.body}return t.wrap(r),(t[0]===i||e.contains(t[0],i))&&e(i).focus(),r=t.parent(),t.css("position")=="static"?(r.css({position:"relative"}),t.css({position:"relative"})):(e.extend(n,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,r){n[r]=t.css(r),isNaN(parseInt(n[r],10))&&(n[r]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),r.css(n).show()},removeWrapper:function(t){var n,r=document.activeElement;return t.parent().is(".ui-effects-wrapper")?(n=t.parent().replaceWith(t),(t[0]===r||e.contains(t[0],r))&&e(r).focus(),n):t},setTransition:function(t,n,r,i){return i=i||{},e.each(n,function(e,n){var s=t.cssUnit(n);s[0]>0&&(i[n]=s[0]*r+s[1])}),i}}),e.fn.extend({effect:function(t,n,r,i){var s=u.apply(this,arguments),o={options:s[1],duration:s[2],callback:s[3]},a=o.options.mode,f=e.effects[t];return e.fx.off||!f?a?this[a](o.duration,o.callback):this.each(function(){o.callback&&o.callback.call(this)}):f.call(this,o)},_show:e.fn.show,show:function(e){if(a(e))return this._show.apply(this,arguments);var t=u.apply(this,arguments);return t[1].mode="show",this.effect.apply(this,t)},_hide:e.fn.hide,hide:function(e){if(a(e))return this._hide.apply(this,arguments);var t=u.apply(this,arguments);return t[1].mode="hide",this.effect.apply(this,t)},__toggle:e.fn.toggle,toggle:function(t){if(a(t)||typeof t=="boolean"||e.isFunction(t))return this.__toggle.apply(this,arguments);var n=u.apply(this,arguments);return n[1].mode="toggle",this.effect.apply(this,n)},cssUnit:function(t){var n=this.css(t),r=[];return e.each(["em","px","%","pt"],function(e,t){n.indexOf(t)>0&&(r=[parseFloat(n),t])}),r}});var h={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,t){h[t]=function(t){return Math.pow(t,e+2)}}),e.extend(h,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e)},Elastic:function(e){return e===0||e===1?e:-Math.pow(2,8*(e-1))*Math.sin(((e-1)*80-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){var t,n=4;while(e<((t=Math.pow(2,--n))-1)/11);return 1/Math.pow(4,3-n)-7.5625*Math.pow((t*3-2)/22-e,2)}}),e.each(h,function(t,n){e.easing["easeIn"+t]=n,e.easing["easeOut"+t]=function(e){return 1-n(1-e)},e.easing["easeInOut"+t]=function(e){return e<.5?n(e*2)/2:n(e*-2+2)/-2+1}})}(jQuery),function(e){var t={init:function(t){function r(){return"ontouchstart"in window?1:0}var n={set_width:!1,set_height:!1,horizontalScroll:!1,scrollInertia:550,scrollEasing:"easeOutCirc",mouseWheel:"auto",autoDraggerLength:!0,scrollButtons:{enable:!1,scrollType:"continuous",scrollSpeed:20,scrollAmount:40},advanced:{updateOnBrowserResize:!0,updateOnContentResize:!1,autoExpandHorizontalScroll:!1},callbacks:{onScroll:function(){},onTotalScroll:function(){},onTotalScrollOffset:0}},t=e.extend(!0,n,t);return e(document).data("mCS-is-touch-device",!1),r()&&e(document).data("mCS-is-touch-device",!0),this.each(function(){var n=e(this);t.set_width&&n.css("width",t.set_width),t.set_height&&n.css("height",t.set_height);if(!e(document).data("mCustomScrollbar-index"))e(document).data("mCustomScrollbar-index","1");else{var i=parseInt(e(document).data("mCustomScrollbar-index"));e(document).data("mCustomScrollbar-index",i+1)}n.wrapInner("
    ").addClass("mCustomScrollbar _mCS_"+e(document).data("mCustomScrollbar-index"));var s=n.children(".mCustomScrollBox");if(t.horizontalScroll){s.addClass("mCSB_horizontal").wrapInner("
    ");var o=s.children(".mCSB_h_wrapper");o.wrapInner("
    ").children(".mCSB_container").css({width:o.children().outerWidth(),position:"relative"}).unwrap()}else s.wrapInner("
    ");var u=s.children(".mCSB_container");if(!e(document).data("mCS-is-touch-device")){u.after("
    ");var a=s.children(".mCSB_scrollTools"),f=a.children(".mCSB_draggerContainer"),l=f.children(".mCSB_dragger");t.horizontalScroll?l.data("minDraggerWidth",l.width()):l.data("minDraggerHeight",l.height()),t.scrollButtons.enable&&(t.horizontalScroll?a.prepend("").append(""):a.prepend("").append("")),s.bind("scroll",function(){s.scrollTop(0).scrollLeft(0)}),n.data({horizontalScroll:t.horizontalScroll,scrollInertia:t.scrollInertia,scrollEasing:t.scrollEasing,mouseWheel:t.mouseWheel,autoDraggerLength:t.autoDraggerLength,"scrollButtons-enable":t.scrollButtons.enable,"scrollButtons-scrollType":t.scrollButtons.scrollType,"scrollButtons-scrollSpeed":t.scrollButtons.scrollSpeed,"scrollButtons-scrollAmount":t.scrollButtons.scrollAmount,autoExpandHorizontalScroll:t.advanced.autoExpandHorizontalScroll,"onScroll-Callback":t.callbacks.onScroll,"onTotalScroll-Callback":t.callbacks.onTotalScroll,"onTotalScroll-Offset":t.callbacks.onTotalScrollOffset}).mCustomScrollbar("update");if(t.advanced.updateOnBrowserResize){var h;e(window).resize(function(){h&&clearTimeout(h),h=setTimeout(function(){n.mCustomScrollbar("update")},150)})}}else{var p=navigator.userAgent;if(p.indexOf("Android")!=-1){var v=parseFloat(p.slice(p.indexOf("Android")+8));v<3?m("mCSB_"+e(document).data("mCustomScrollbar-index")):s.css({overflow:"auto","-webkit-overflow-scrolling":"touch"})}else s.css({overflow:"auto","-webkit-overflow-scrolling":"touch"});u.addClass("mCS_no_scrollbar mCS_touch"),n.data({horizontalScroll:t.horizontalScroll,scrollInertia:t.scrollInertia,scrollEasing:t.scrollEasing,autoExpandHorizontalScroll:t.advanced.autoExpandHorizontalScroll,"onScroll-Callback":t.callbacks.onScroll,"onTotalScroll-Callback":t.callbacks.onTotalScroll,"onTotalScroll-Offset":t.callbacks.onTotalScrollOffset}),s.scroll(function(){n.mCustomScrollbar("callbacks",s,u)});function m(e){var t=document.getElementById(e),n=0,r=0;document.getElementById(e).addEventListener("touchstart",function(e){n=this.scrollTop+e.touches[0].pageY,r=this.scrollLeft+e.touches[0].pageX},!1),document.getElementById(e).addEventListener("touchmove",function(e){(this.scrollTopn+5)&&e.preventDefault(),(this.scrollLeftr+5)&&e.preventDefault(),this.scrollTop=n-e.touches[0].pageY,this.scrollLeft=r-e.touches[0].pageX},!1)}}if(t.advanced.updateOnContentResize){var g;if(t.horizontalScroll){var y=u.outerWidth();r()&&s.css({"-webkit-overflow-scrolling":"auto"})}else var y=u.outerHeight();g=setInterval(function(){if(t.horizontalScroll){t.advanced.autoExpandHorizontalScroll&&u.css({position:"absolute",width:"auto"}).wrap("
    ").css({width:u.outerWidth(),position:"relative"}).unwrap();var e=u.outerWidth()}else var e=u.outerHeight();e!=y&&(n.mCustomScrollbar("update"),y=e)},300)}})},update:function(){var t=e(this),n=t.children(".mCustomScrollBox"),r=n.children(".mCSB_container");e(document).data("mCS-is-touch-device")||r.removeClass("mCS_no_scrollbar");var i=n.children(".mCSB_scrollTools"),s=i.children(".mCSB_draggerContainer"),o=s.children(".mCSB_dragger");if(t.data("horizontalScroll")){var u=i.children(".mCSB_buttonLeft"),a=i.children(".mCSB_buttonRight"),f=n.width();t.data("autoExpandHorizontalScroll")&&r.css({position:"absolute",width:"auto"}).wrap("
    ").css({width:r.outerWidth(),position:"relative"}).unwrap();var l=r.outerWidth()}else var c=i.children(".mCSB_buttonUp"),h=i.children(".mCSB_buttonDown"),p=n.height(),d=r.outerHeight();if(d>p&&!t.data("horizontalScroll")&&!e(document).data("mCS-is-touch-device")){i.css("display","block");var v=s.height();if(t.data("autoDraggerLength")){var m=Math.round(p/d*v),g=o.data("minDraggerHeight");if(m<=g)o.css({height:g});else if(m>=v-10){var y=v-10;o.css({height:y})}else o.css({height:m});o.children(".mCSB_dragger_bar").css({"line-height":o.height()+"px"})}var w=o.height(),E=(d-p)/(v-w);t.data("scrollAmount",E),t.mCustomScrollbar("scrolling",n,r,s,o,c,h,u,a);var S=Math.abs(Math.round(r.position().top));t.mCustomScrollbar("scrollTo",S,{callback:!1})}else if(l>f&&t.data("horizontalScroll")&&!e(document).data("mCS-is-touch-device")){i.css("display","block");var x=s.width();if(t.data("autoDraggerLength")){var T=Math.round(f/l*x),N=o.data("minDraggerWidth");if(T<=N)o.css({width:N});else if(T>=x-10){var C=x-10;o.css({width:C})}else o.css({width:T})}var k=o.width(),E=(l-f)/(x-k);t.data("scrollAmount",E),t.mCustomScrollbar("scrolling",n,r,s,o,c,h,u,a);var S=Math.abs(Math.round(r.position().left));t.mCustomScrollbar("scrollTo",S,{callback:!1})}else n.unbind("mousewheel"),n.unbind("focusin"),t.data("horizontalScroll")?o.add(r).css("left",0):o.add(r).css("top",0),i.css("display","none"),r.addClass("mCS_no_scrollbar")},scrolling:function(t,n,r,i,s,o,u,a){var f=e(this);if(!i.hasClass("ui-draggable")){if(f.data("horizontalScroll"))var l="x";else var l="y";i.draggable({axis:l,containment:"parent",drag:function(e,t){f.mCustomScrollbar("scroll"),i.addClass("mCSB_dragger_onDrag")},stop:function(e,t){i.removeClass("mCSB_dragger_onDrag")}})}r.unbind("click").bind("click",function(e){if(f.data("horizontalScroll")){var t=e.pageX-r.offset().left;if(ti.position().left+i.width()){var n=t;n>=r.width()-i.width()&&(n=r.width()-i.width()),i.css("left",n),f.mCustomScrollbar("scroll")}}else{var t=e.pageY-r.offset().top;if(ti.position().top+i.height()){var n=t;n>=r.height()-i.height()&&(n=r.height()-i.height()),i.css("top",n),f.mCustomScrollbar("scroll")}}});if(f.data("mouseWheel")){var c=f.data("mouseWheel");if(f.data("mouseWheel")==="auto"){c=8;var h=navigator.userAgent;h.indexOf("Mac")!=-1&&h.indexOf("Safari")!=-1&&h.indexOf("AppleWebKit")!=-1&&h.indexOf("Chrome")==-1&&(c=1)}t.unbind("mousewheel").bind("mousewheel",function(e,t){e.preventDefault();var n=Math.abs(t*c);if(f.data("horizontalScroll")){var s=i.position().left-t*n;i.css("left",s),i.position().left<0&&i.css("left",0);var o=r.width(),u=i.width();i.position().left>o-u&&i.css("left",o-u)}else{var a=i.position().top-t*n;i.css("top",a),i.position().top<0&&i.css("top",0);var l=r.height(),h=i.height();i.position().top>l-h&&i.css("top",l-h)}f.mCustomScrollbar("scroll")})}if(f.data("scrollButtons-enable"))if(f.data("scrollButtons-scrollType")==="pixels"){var p;e.browser.msie&&parseInt(e.browser.version)<9&&f.data("scrollInertia",0),f.data("horizontalScroll")?(a.add(u).unbind("click mousedown mouseup mouseout",g,w),a.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().left)+f.data("scrollButtons-scrollAmount"),f.mCustomScrollbar("scrollTo",p))}),u.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().left)-f.data("scrollButtons-scrollAmount"),n.position().left>=-f.data("scrollButtons-scrollAmount")&&(p="left"),f.mCustomScrollbar("scrollTo",p))})):(o.add(s).unbind("click mousedown mouseup mouseout",T,C),o.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().top)+f.data("scrollButtons-scrollAmount"),f.mCustomScrollbar("scrollTo",p))}),s.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().top)-f.data("scrollButtons-scrollAmount"),n.position().top>=-f.data("scrollButtons-scrollAmount")&&(p="top"),f.mCustomScrollbar("scrollTo",p))}))}else if(f.data("horizontalScroll")){a.add(u).unbind("click mousedown mouseup mouseout",g,w);var d,v=r.width(),m=i.width();a.bind("mousedown",function(e){e.preventDefault();var t=v-m;d=setInterval(function(){var e=Math.abs(i.position().left-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({left:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var g=function(e){e.preventDefault(),clearInterval(d),i.stop()};a.bind("mouseup mouseout",g);var y;u.bind("mousedown",function(e){e.preventDefault();var t=0;y=setInterval(function(){var e=Math.abs(i.position().left-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({left:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var w=function(e){e.preventDefault(),clearInterval(y),i.stop()};u.bind("mouseup mouseout",w)}else{o.add(s).unbind("click mousedown mouseup mouseout",T,C);var E,S=r.height(),x=i.height();o.bind("mousedown",function(e){e.preventDefault();var t=S-x;E=setInterval(function(){var e=Math.abs(i.position().top-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({top:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var T=function(e){e.preventDefault(),clearInterval(E),i.stop()};o.bind("mouseup mouseout",T);var N;s.bind("mousedown",function(e){e.preventDefault();var t=0;N=setInterval(function(){var e=Math.abs(i.position().top-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({top:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var C=function(e){e.preventDefault(),clearInterval(N),i.stop()};s.bind("mouseup mouseout",C)}t.unbind("focusin").bind("focusin",function(){t.scrollTop(0).scrollLeft(0);var s=e(document.activeElement);if(s.is("input,textarea,select,button,a[tabindex],area,object"))if(f.data("horizontalScroll")){var o=n.position().left,u=s.position().left,a=t.width(),l=s.outerWidth();if(!(o+u>=0&&o+u<=a-l)){var c=u/f.data("scrollAmount");c>=r.width()-i.width()&&(c=r.width()-i.width()),i.css("left",c),f.mCustomScrollbar("scroll")}}else{var h=n.position().top,p=s.position().top,d=t.height(),v=s.outerHeight();if(!(h+p>=0&&h+p<=d-v)){var c=p/f.data("scrollAmount");c>=r.height()-i.height()&&(c=r.height()-i.height()),i.css("top",c),f.mCustomScrollbar("scroll")}}})},scroll:function(t){var n=e(this),r=n.find(".mCSB_dragger"),i=n.find(".mCSB_container"),s=n.find(".mCustomScrollBox");if(n.data("horizontalScroll"))var o=r.position().left,u=-o*n.data("scrollAmount"),a=i.position().left,f=Math.round(a-u);else var l=r.position().top,c=-l*n.data("scrollAmount"),h=i.position().top,p=Math.round(h-c);if(e.browser.webkit)var d=(window.outerWidth-8)/window.innerWidth,v=d<.98||d>1.02;n.data("scrollInertia")===0||v?(n.data("horizontalScroll")?i.css("left",u):i.css("top",c),t||n.mCustomScrollbar("callbacks",s,i)):n.data("horizontalScroll")?i.stop().animate({left:"-="+f},n.data("scrollInertia"),n.data("scrollEasing"),function(){t||n.mCustomScrollbar("callbacks",s,i)}):i.stop().animate({top:"-="+p},n.data("scrollInertia"),n.data("scrollEasing"),function(){t||n.mCustomScrollbar("callbacks",s,i)})},scrollTo:function(t,n){var r={moveDragger:!1,callback:!0},n=e.extend(r,n),i=e(this),s,o=i.find(".mCustomScrollBox"),u=o.children(".mCSB_container");if(!e(document).data("mCS-is-touch-device"))var a=i.find(".mCSB_draggerContainer"),f=a.children(".mCSB_dragger");var l;if(t){if(typeof t=="number")n.moveDragger?s=t:(l=t,s=Math.round(l/i.data("scrollAmount")));else if(typeof t=="string"){var c;t==="top"?c=0:t==="bottom"&&!i.data("horizontalScroll")?c=u.outerHeight()-o.height():t==="left"?c=0:t==="right"&&i.data("horizontalScroll")?c=u.outerWidth()-o.width():t==="first"?c=i.find(".mCSB_container").find(":first"):t==="last"?c=i.find(".mCSB_container").find(":last"):c=i.find(t),c.length===1?(i.data("horizontalScroll")?l=c.position().left:l=c.position().top,e(document).data("mCS-is-touch-device")?s=l:s=Math.ceil(l/i.data("scrollAmount"))):s=c}e(document).data("mCS-is-touch-device")?i.data("horizontalScroll")?o.stop().animate({scrollLeft:s},i.data("scrollInertia"),i.data("scrollEasing"),function(){n.callback&&i.mCustomScrollbar("callbacks",o,u)}):o.stop().animate({scrollTop:s},i.data("scrollInertia"),i.data("scrollEasing"),function(){n.callback&&i.mCustomScrollbar("callbacks",o,u)}):(i.data("horizontalScroll")?(s>=a.width()-f.width()&&(s=a.width()-f.width()),f.css("left",s)):(s>=a.height()-f.height()&&(s=a.height()-f.height()),f.css("top",s)),n.callback?i.mCustomScrollbar("scroll"):i.mCustomScrollbar("scroll",!0))}},callbacks:function(t,n){var r=e(this);if(!e(document).data("mCS-is-touch-device"))if(r.data("horizontalScroll")){var i=Math.round(n.position().left);i<0&&i<=t.width()-n.outerWidth()+r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else{var s=Math.round(n.position().top);s<0&&s<=t.height()-n.outerHeight()+r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else if(r.data("horizontalScroll")){var o=Math.round(t.scrollLeft());o>0&&o>=n.outerWidth()-r.width()-r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else{var u=Math.round(t.scrollTop());u>0&&u>=n.outerHeight()-r.height()-r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}}};e.fn.mCustomScrollbar=function(n){if(t[n])return t[n].apply(this,Array.prototype.slice.call(arguments,1));if(typeof n=="object"||!n)return t.init.apply(this,arguments);e.error("Method "+n+" does not exist")}}(jQuery),function(e){function t(t){var n=t||window.event,r=[].slice.call(arguments,1),i=0,s=!0,o=0,u=0;return t=e.event.fix(n),t.type="mousewheel",n.wheelDelta&&(i=n.wheelDelta/120),n.detail&&(i=-n.detail/3),u=i,n.axis!==undefined&&n.axis===n.HORIZONTAL_AXIS&&(u=0,o=-1*i),n.wheelDeltaY!==undefined&&(u=n.wheelDeltaY/120),n.wheelDeltaX!==undefined&&(o=-1*n.wheelDeltaX/120),r.unshift(t,i,o,u),(e.event.dispatch||e.event.handle).apply(this,r)}var n=["DOMMouseScroll","mousewheel"];if(e.event.fixHooks)for(var r=n.length;r;)e.event.fixHooks[n[--r]]=e.event.mouseHooks;e.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var e=n.length;e;)this.addEventListener(n[--e],t,!1);else this.onmousewheel=t},teardown:function(){if(this.removeEventListener)for(var e=n.length;e;)this.removeEventListener(n[--e],t,!1);else this.onmousewheel=null}},e.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})}(jQuery),function(){}.call(this);var io="undefined"==typeof module?{}:module.exports;(function(){(function(e,t){var n=e;n.version="0.9.11",n.protocol=1,n.transports=[],n.j=[],n.sockets={},n.connect=function(e,r){var i=n.util.parseUri(e),s,o;t&&t.location&&(i.protocol=i.protocol||t.location.protocol.slice(0,-1),i.host=i.host||(t.document?t.document.domain:t.location.hostname),i.port=i.port||t.location.port),s=n.util.uniqueUri(i);var u={host:i.host,secure:"https"==i.protocol,port:i.port||("https"==i.protocol?443:80),query:i.query||""};n.util.merge(u,r);if(u["force new connection"]||!n.sockets[s])o=new n.Socket(u);return!u["force new connection"]&&o&&(n.sockets[s]=o),o=o||n.sockets[s],o.of(i.path.length>1?i.path:"")}})("object"==typeof module?module.exports:this.io={},this),function(e,t){var n=e.util={},r=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,i=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];n.parseUri=function(e){var t=r.exec(e||""),n={},s=14;while(s--)n[i[s]]=t[s]||"";return n},n.uniqueUri=function(e){var n=e.protocol,r=e.host,i=e.port;return"document"in t?(r=r||document.domain,i=i||(n=="https"&&document.location.protocol!=="https:"?443:document.location.port)):(r=r||"localhost",!i&&n=="https"&&(i=443)),(n||"http")+"://"+r+":"+(i||80)},n.query=function(e,t){var r=n.chunkQuery(e||""),i=[];n.merge(r,n.chunkQuery(t||""));for(var s in r)r.hasOwnProperty(s)&&i.push(s+"="+r[s]);return i.length?"?"+i.join("&"):""},n.chunkQuery=function(e){var t={},n=e.split("&"),r=0,i=n.length,s;for(;rt.length?e:t,s=e.length>t.length?t:e;for(var o=0,u=s.length;o0&&e.splice(0,1)[0]!=n.transport.name);e.length?u(e):n.publish("connect_failed")}}},n.options["connect timeout"]))})}n.sessionid=r,n.closeTimeout=s*1e3,n.heartbeatTimeout=i*1e3,n.transports||(n.transports=n.origTransports=o?t.util.intersect(o.split(","),n.options.transports):n.options.transports),n.setHeartbeatTimeout(),u(n.transports),n.once("connect",function(){clearTimeout(n.connectTimeoutTimer),e&&typeof e=="function"&&e()})}),this},r.prototype.setHeartbeatTimeout=function(){clearTimeout(this.heartbeatTimeoutTimer);if(this.transport&&!this.transport.heartbeats())return;var e=this;this.heartbeatTimeoutTimer=setTimeout(function(){e.transport.onClose()},this.heartbeatTimeout)},r.prototype.packet=function(e){return this.connected&&!this.doBuffer?this.transport.packet(e):this.buffer.push(e),this},r.prototype.setBuffer=function(e){this.doBuffer=e,!e&&this.connected&&this.buffer.length&&(this.options.manualFlush||this.flushBuffer())},r.prototype.flushBuffer=function(){this.transport.payload(this.buffer),this.buffer=[]},r.prototype.disconnect=function(){if(this.connected||this.connecting)this.open&&this.of("").packet({type:"disconnect"}),this.onDisconnect("booted");return this},r.prototype.disconnectSync=function(){var e=t.util.request(),n=["http"+(this.options.secure?"s":"")+":/",this.options.host+":"+this.options.port,this.options.resource,t.protocol,"",this.sessionid].join("/")+"/?disconnect=1";e.open("GET",n,!1),e.send(null),this.onDisconnect("booted")},r.prototype.isXDomain=function(){var e=n.location.port||("https:"==n.location.protocol?443:80);return this.options.host!==n.location.hostname||this.options.port!=e},r.prototype.onConnect=function(){this.connected||(this.connected=!0,this.connecting=!1,this.doBuffer||this.setBuffer(!1),this.emit("connect"))},r.prototype.onOpen=function(){this.open=!0},r.prototype.onClose=function(){this.open=!1,clearTimeout(this.heartbeatTimeoutTimer)},r.prototype.onPacket=function(e){this.of(e.endpoint).onPacket(e)},r.prototype.onError=function(e){e&&e.advice&&e.advice==="reconnect"&&(this.connected||this.connecting)&&(this.disconnect(),this.options.reconnect&&this.reconnect()),this.publish("error",e&&e.reason?e.reason:e)},r.prototype.onDisconnect=function(e){var t=this.connected,n=this.connecting;this.connected=!1,this.connecting=!1,this.open=!1;if(t||n)this.transport.close(),this.transport.clearTimeouts(),t&&(this.publish("disconnect",e),"booted"!=e&&this.options.reconnect&&!this.reconnecting&&this.reconnect())},r.prototype.reconnect=function(){function i(){if(e.connected){for(var t in e.namespaces)e.namespaces.hasOwnProperty(t)&&""!==t&&e.namespaces[t].packet({type:"connect"});e.publish("reconnect",e.transport.name,e.reconnectionAttempts)}clearTimeout(e.reconnectionTimer),e.removeListener("connect_failed",s),e.removeListener("connect",s),e.reconnecting=!1,delete e.reconnectionAttempts,delete e.reconnectionDelay,delete e.reconnectionTimer,delete e.redoTransports,e.options["try multiple transports"]=n}function s(){if(!e.reconnecting)return;if(e.connected)return i();if(e.connecting&&e.reconnecting)return e.reconnectionTimer=setTimeout(s,1e3);e.reconnectionAttempts++>=t?e.redoTransports?(e.publish("reconnect_failed"),i()):(e.on("connect_failed",s),e.options["try multiple transports"]=!0,e.transports=e.origTransports,e.transport=e.getTransport(),e.redoTransports=!0,e.connect()):(e.reconnectionDelay=10:!1},n.xdomainCheck=function(){return!0},typeof window!="undefined"&&(WEB_SOCKET_DISABLE_AUTO_INITIALIZATION=!0),t.transports.push("flashsocket")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports);if("undefined"!=typeof window)var swfobject=function(){function C(){if(b)return;try{var e=a.getElementsByTagName("body")[0].appendChild(U("span"));e.parentNode.removeChild(e)}catch(t){return}b=!0;var n=c.length;for(var r=0;r0)for(var n=0;n0){var o=R(r);if(o)if(W(h[n].swfVersion)&&!(T.wk&&T.wk<312))V(r,!0),i&&(s.success=!0,s.ref=_(r),i(s));else if(h[n].expressInstall&&D()){var u={};u.data=h[n].expressInstall,u.width=o.getAttribute("width")||"0",u.height=o.getAttribute("height")||"0",o.getAttribute("class")&&(u.styleclass=o.getAttribute("class")),o.getAttribute("align")&&(u.align=o.getAttribute("align"));var a={},f=o.getElementsByTagName("param"),l=f.length;for(var c=0;c');u.outerHTML='"+l+"",p[p.length]=n.id,o=R(n.id)}else{var h=U(t);h.setAttribute("type",i);for(var d in n)n[d]!=Object.prototype[d]&&(d.toLowerCase()=="styleclass"?h.setAttribute("class",n[d]):d.toLowerCase()!="classid"&&h.setAttribute(d,n[d]));for(var v in r)r[v]!=Object.prototype[v]&&v.toLowerCase()!="movie"&&F(h,v,r[v]);u.parentNode.replaceChild(h,u),o=h}}return o}function F(e,t,n){var r=U("param");r.setAttribute("name",t),r.setAttribute("value",n),e.appendChild(r)}function I(e){var t=R(e);t&&t.nodeName=="OBJECT"&&(T.ie&&T.win?(t.style.display="none",function(){t.readyState==4?q(e):setTimeout(arguments.callee,10)}()):t.parentNode.removeChild(t))}function q(e){var t=R(e);if(t){for(var n in t)typeof t[n]=="function"&&(t[n]=null);t.parentNode.removeChild(t)}}function R(e){var t=null;try{t=a.getElementById(e)}catch(n){}return t}function U(e){return a.createElement(e)}function z(e,t,n){e.attachEvent(t,n),d[d.length]=[e,t,n]}function W(e){var t=T.pv,n=e.split(".");return n[0]=parseInt(n[0],10),n[1]=parseInt(n[1],10)||0,n[2]=parseInt(n[2],10)||0,t[0]>n[0]||t[0]==n[0]&&t[1]>n[1]||t[0]==n[0]&&t[1]==n[1]&&t[2]>=n[2]?!0:!1}function X(n,r,i,s){if(T.ie&&T.mac)return;var o=a.getElementsByTagName("head")[0];if(!o)return;var u=i&&typeof i=="string"?i:"screen";s&&(E=null,S=null);if(!E||S!=u){var f=U("style");f.setAttribute("type","text/css"),f.setAttribute("media",u),E=o.appendChild(f),T.ie&&T.win&&typeof a.styleSheets!=e&&a.styleSheets.length>0&&(E=a.styleSheets[a.styleSheets.length-1]),S=u}T.ie&&T.win?E&&typeof E.addRule==t&&E.addRule(n,r):E&&typeof a.createTextNode!=e&&E.appendChild(a.createTextNode(n+" {"+r+"}"))}function V(e,t){if(!x)return;var n=t?"visible":"hidden";b&&R(e)?R(e).style.visibility=n:X("#"+e,"visibility:"+n)}function $(t){var n=/[\\\"<>\.;]/,r=n.exec(t)!=null;return r&&typeof encodeURIComponent!=e?encodeURIComponent(t):t}var e="undefined",t="object",n="Shockwave Flash",r="ShockwaveFlash.ShockwaveFlash",i="application/x-shockwave-flash",s="SWFObjectExprInst",o="onreadystatechange",u=window,a=document,f=navigator,l=!1,c=[A],h=[],p=[],d=[],v,m,g,y,b=!1,w=!1,E,S,x=!0,T=function(){var s=typeof a.getElementById!=e&&typeof a.getElementsByTagName!=e&&typeof a.createElement!=e,o=f.userAgent.toLowerCase(),c=f.platform.toLowerCase(),h=c?/win/.test(c):/win/.test(o),p=c?/mac/.test(c):/mac/.test(o),d=/webkit/.test(o)?parseFloat(o.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):!1,v=!1,m=[0,0,0],g=null;if(typeof f.plugins!=e&&typeof f.plugins[n]==t)g=f.plugins[n].description,g&&(typeof f.mimeTypes==e||!f.mimeTypes[i]||!!f.mimeTypes[i].enabledPlugin)&&(l=!0,v=!1,g=g.replace(/^.*\s+(\S+\s+\S+$)/,"$1"),m[0]=parseInt(g.replace(/^(.*)\..*$/,"$1"),10),m[1]=parseInt(g.replace(/^.*\.(.*)\s.*$/,"$1"),10),m[2]=/[a-zA-Z]/.test(g)?parseInt(g.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0);else if(typeof u[["Active"].concat("Object").join("X")]!=e)try{var y=new(window[["Active"].concat("Object").join("X")])(r);y&&(g=y.GetVariable("$version"),g&&(v=!0,g=g.split(" ")[1].split(","),m=[parseInt(g[0],10),parseInt(g[1],10),parseInt(g[2],10)]))}catch(b){}return{w3:s,pv:m,wk:d,ie:v,win:h,mac:p}}(),N=function(){if(!T.w3)return;(typeof a.readyState!=e&&a.readyState=="complete"||typeof a.readyState==e&&(a.getElementsByTagName("body")[0]||a.body))&&C(),b||(typeof a.addEventListener!=e&&a.addEventListener("DOMContentLoaded",C,!1),T.ie&&T.win&&(a.attachEvent(o,function(){a.readyState=="complete"&&(a.detachEvent(o,arguments.callee),C())}),u==top&&function(){if(b)return;try{a.documentElement.doScroll("left")}catch(e){setTimeout(arguments.callee,0);return}C()}()),T.wk&&function(){if(b)return;if(!/loaded|complete/.test(a.readyState)){setTimeout(arguments.callee,0);return}C()}(),L(C))}(),J=function(){T.ie&&T.win&&window.attachEvent("onunload",function(){var e=d.length;for(var t=0;t= 10.0.0 is required.");return}location.protocol=="file:"&&e.error("WARNING: web-socket-js doesn't work in file:///... URL unless you set Flash Security Settings properly. Open the page via Web server i.e. http://..."),WebSocket=function(e,t,n,r,i){var s=this;s.__id=WebSocket.__nextId++,WebSocket.__instances[s.__id]=s,s.readyState=WebSocket.CONNECTING,s.bufferedAmount=0,s.__events={},t?typeof t=="string"&&(t=[t]):t=[],setTimeout(function(){WebSocket.__addTask(function(){WebSocket.__flash.create(s.__id,e,t,n||null,r||0,i||null)})},0)},WebSocket.prototype.send=function(e){if(this.readyState==WebSocket.CONNECTING)throw"INVALID_STATE_ERR: Web Socket connection has not been established";var t=WebSocket.__flash.send(this.__id,encodeURIComponent(e));return t<0?!0:(this.bufferedAmount+=t,!1)},WebSocket.prototype.close=function(){if(this.readyState==WebSocket.CLOSED||this.readyState==WebSocket.CLOSING)return;this.readyState=WebSocket.CLOSING,WebSocket.__flash.close(this.__id)},WebSocket.prototype.addEventListener=function(e,t,n){e in this.__events||(this.__events[e]=[]),this.__events[e].push(t)},WebSocket.prototype.removeEventListener=function(e,t,n){if(!(e in this.__events))return;var r=this.__events[e];for(var i=r.length-1;i>=0;--i)if(r[i]===t){r.splice(i,1);break}},WebSocket.prototype.dispatchEvent=function(e){var t=this.__events[e.type]||[];for(var n=0;n"),this.doc.close(),this.doc.parentWindow.s=this;var e=this.doc.createElement("div");e.className="socketio",this.doc.body.appendChild(e),this.iframe=this.doc.createElement("iframe"),e.appendChild(this.iframe);var n=this,r=t.util.query(this.socket.options.query,"t="+ +(new Date));this.iframe.src=this.prepareUrl()+r,t.util.on(window,"unload",function(){n.destroy()})},n.prototype._=function(e,t){this.onData(e);try{var n=t.getElementsByTagName("script")[0];n.parentNode.removeChild(n)}catch(r){}},n.prototype.destroy=function(){if(this.iframe){try{this.iframe.src="about:blank"}catch(e){}this.doc=null,this.iframe.parentNode.removeChild(this.iframe),this.iframe=null,CollectGarbage()}},n.prototype.close=function(){return this.destroy(),t.Transport.XHR.prototype.close.call(this)},n.check=function(e){if(typeof window!="undefined"&&["Active"].concat("Object").join("X")in window)try{var n=new(window[["Active"].concat("Object").join("X")])("htmlfile");return n&&t.Transport.XHR.check(e)}catch(r){}return!1},n.xdomainCheck=function(){return!1},t.transports.push("htmlfile")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports),function(e,t,n){function r(){t.Transport.XHR.apply(this,arguments)}function i(){}e["xhr-polling"]=r,t.util.inherit(r,t.Transport.XHR),t.util.merge(r,t.Transport.XHR),r.prototype.name="xhr-polling",r.prototype.heartbeats=function(){return!1},r.prototype.open=function(){var e=this;return t.Transport.XHR.prototype.open.call(e),!1},r.prototype.get=function(){function t(){this.readyState==4&&(this.onreadystatechange=i,this.status==200?(e.onData(this.responseText),e.get()):e.onClose())}function r(){this.onload=i,this.onerror=i,e.retryCounter=1,e.onData(this.responseText),e.get()}function s(){e.retryCounter++,!e.retryCounter||e.retryCounter>3?e.onClose():e.get()}if(!this.isOpen)return;var e=this;this.xhr=this.request(),n.XDomainRequest&&this.xhr instanceof XDomainRequest?(this.xhr.onload=r,this.xhr.onerror=s):this.xhr.onreadystatechange=t,this.xhr.send(null)},r.prototype.onClose=function(){t.Transport.XHR.prototype.onClose.call(this);if(this.xhr){this.xhr.onreadystatechange=this.xhr.onload=this.xhr.onerror=i;try{this.xhr.abort()}catch(e){}this.xhr=null}},r.prototype.ready=function(e,n){var r=this;t.util.defer(function(){n.call(r)})},t.transports.push("xhr-polling")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports,this),function(e,t,n){function i(e){t.Transport["xhr-polling"].apply(this,arguments),this.index=t.j.length;var n=this;t.j.push(function(e){n._(e)})}var r=n.document&&"MozAppearance"in n.document.documentElement.style;e["jsonp-polling"]=i,t.util.inherit(i,t.Transport["xhr-polling"]),i.prototype.name="jsonp-polling",i.prototype.post=function(e){function a(){f(),n.socket.setBuffer(!1)}function f(){n.iframe&&n.form.removeChild(n.iframe);try{u=document.createElement('':""),e._keyEvent=!1,B},_generateMonthYearHeader:function(e,t,n,r,i,s,o,u){var a=this._get(e,"changeMonth"),f=this._get(e,"changeYear"),l=this._get(e,"showMonthAfterYear" -),c='
    ',h="";if(s||!a)h+=''+o[t]+"";else{var p=r&&r.getFullYear()==n,d=i&&i.getFullYear()==n;h+='"}l||(c+=h+(s||!a||!f?" ":""));if(!e.yearshtml){e.yearshtml="";if(s||!f)c+=''+n+"";else{var m=this._get(e,"yearRange").split(":"),g=(new Date).getFullYear(),y=function(e){var t=e.match(/c[+-].*/)?n+parseInt(e.substring(1),10):e.match(/[+-].*/)?g+parseInt(e,10):parseInt(e,10);return isNaN(t)?g:t},b=y(m[0]),w=Math.max(b,y(m[1]||""));b=r?Math.max(b,r.getFullYear()):b,w=i?Math.min(w,i.getFullYear()):w,e.yearshtml+='",c+=e.yearshtml,e.yearshtml=null}}return c+=this._get(e,"yearSuffix"),l&&(c+=(s||!a||!f?" ":"")+h),c+="
    ",c},_adjustInstDate:function(e,t,n){var r=e.drawYear+(n=="Y"?t:0),i=e.drawMonth+(n=="M"?t:0),s=Math.min(e.selectedDay,this._getDaysInMonth(r,i))+(n=="D"?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(r,i,s)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),(n=="M"||n=="Y")&&this._notifyChange(e)},_restrictMinMax:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max"),i=n&&tr?r:i,i},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return t==null?[1,1]:typeof t=="number"?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return(new Date(e,t,1)).getDay()},_canAdjustMonth:function(e,t,n,r){var i=this._getNumberOfMonths(e),s=this._daylightSavingAdjust(new Date(n,r+(t<0?t:i[0]*i[1]),1));return t<0&&s.setDate(this._getDaysInMonth(s.getFullYear(),s.getMonth())),this._isInRange(e,s)},_isInRange:function(e,t){var n=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max");return(!n||t.getTime()>=n.getTime())&&(!r||t.getTime()<=r.getTime())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t=typeof t!="string"?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,n,r){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var i=t?typeof t=="object"?t:this._daylightSavingAdjust(new Date(r,n,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),i,this._getFormatConfig(e))}}),$.fn.datepicker=function(e){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var t=Array.prototype.slice.call(arguments,1);return typeof e!="string"||e!="isDisabled"&&e!="getDate"&&e!="widget"?e=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t)):this.each(function(){typeof e=="string"?$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this].concat(t)):$.datepicker._attachDatepicker(this,e)}):$.datepicker["_"+e+"Datepicker"].apply($.datepicker,[this[0]].concat(t))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="1.8.23",window["DP_jQuery_"+dpuuid]=$}(jQuery),function(e,t){var n="ui-dialog ui-widget ui-widget-content ui-corner-all ",r={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},i={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0};e.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(t){var n=e(this).css(t).offset().top;n<0&&e(this).css("top",t.top-n)}},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 t=this,r=t.options,i=r.title||" ",s=e.ui.dialog.getTitleId(t.element),o=(t.uiDialog=e("
    ")).appendTo(document.body).hide().addClass(n+r.dialogClass).css({zIndex:r.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(n){r.closeOnEscape&&!n.isDefaultPrevented()&&n.keyCode&&n.keyCode===e.ui.keyCode.ESCAPE&&(t.close(n),n.preventDefault())}).attr({role:"dialog","aria-labelledby":s}).mousedown(function(e){t.moveToTop(!1,e)}),u=t.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(o),a=(t.uiDialogTitlebar=e("
    ")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(o),f=e('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){f.addClass("ui-state-hover")},function(){f.removeClass("ui-state-hover")}).focus(function(){f.addClass("ui-state-focus")}).blur(function(){f.removeClass("ui-state-focus")}).click(function(e){return t.close(e),!1}).appendTo(a),l=(t.uiDialogTitlebarCloseText=e("")).addClass("ui-icon ui-icon-closethick").text(r.closeText).appendTo(f),c=e("").addClass("ui-dialog-title").attr("id",s).html(i).prependTo(a);e.isFunction(r.beforeclose)&&!e.isFunction(r.beforeClose)&&(r.beforeClose=r.beforeclose),a.find("*").add(a).disableSelection(),r.draggable&&e.fn.draggable&&t._makeDraggable(),r.resizable&&e.fn.resizable&&t._makeResizable(),t._createButtons(r.buttons),t._isOpen=!1,e.fn.bgiframe&&o.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var e=this;return e.overlay&&e.overlay.destroy(),e.uiDialog.hide(),e.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"),e.uiDialog.remove(),e.originalTitle&&e.element.attr("title",e.originalTitle),e},widget:function(){return this.uiDialog},close:function(t){var n=this,r,i;if(!1===n._trigger("beforeClose",t))return;return n.overlay&&n.overlay.destroy(),n.uiDialog.unbind("keypress.ui-dialog"),n._isOpen=!1,n.options.hide?n.uiDialog.hide(n.options.hide,function(){n._trigger("close",t)}):(n.uiDialog.hide(),n._trigger("close",t)),e.ui.dialog.overlay.resize(),n.options.modal&&(r=0,e(".ui-dialog").each(function(){this!==n.uiDialog[0]&&(i=e(this).css("z-index"),isNaN(i)||(r=Math.max(r,i)))}),e.ui.dialog.maxZ=r),n},isOpen:function(){return this._isOpen},moveToTop:function(t,n){var r=this,i=r.options,s;return i.modal&&!t||!i.stack&&!i.modal?r._trigger("focus",n):(i.zIndex>e.ui.dialog.maxZ&&(e.ui.dialog.maxZ=i.zIndex),r.overlay&&(e.ui.dialog.maxZ+=1,r.overlay.$el.css("z-index",e.ui.dialog.overlay.maxZ=e.ui.dialog.maxZ)),s={scrollTop:r.element.scrollTop(),scrollLeft:r.element.scrollLeft()},e.ui.dialog.maxZ+=1,r.uiDialog.css("z-index",e.ui.dialog.maxZ),r.element.attr(s),r._trigger("focus",n),r)},open:function(){if(this._isOpen)return;var t=this,n=t.options,r=t.uiDialog;return t.overlay=n.modal?new e.ui.dialog.overlay(t):null,t._size(),t._position(n.position),r.show(n.show),t.moveToTop(!0),n.modal&&r.bind("keydown.ui-dialog",function(t){if(t.keyCode!==e.ui.keyCode.TAB)return;var n=e(":tabbable",this),r=n.filter(":first"),i=n.filter(":last");if(t.target===i[0]&&!t.shiftKey)return r.focus(1),!1;if(t.target===r[0]&&t.shiftKey)return i.focus(1),!1}),e(t.element.find(":tabbable").get().concat(r.find(".ui-dialog-buttonpane :tabbable").get().concat(r.get()))).eq(0).focus(),t._isOpen=!0,t._trigger("open"),t},_createButtons:function(t){var n=this,r=!1,i=e("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),s=e("
    ").addClass("ui-dialog-buttonset").appendTo(i);n.uiDialog.find(".ui-dialog-buttonpane").remove(),typeof t=="object"&&t!==null&&e.each(t,function(){return!(r=!0)}),r&&(e.each(t,function(t,r){r=e.isFunction(r)?{click:r,text:t}:r;var i=e('').click(function(){r.click.apply(n.element[0],arguments)}).appendTo(s);e.each(r,function(e,t){if(e==="click")return;e in i?i[e](t):i.attr(e,t)}),e.fn.button&&i.button()}),i.appendTo(n.uiDialog))},_makeDraggable:function(){function s(e){return{position:e.position,offset:e.offset}}var t=this,n=t.options,r=e(document),i;t.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(r,o){i=n.height==="auto"?"auto":e(this).height(),e(this).height(e(this).height()).addClass("ui-dialog-dragging"),t._trigger("dragStart",r,s(o))},drag:function(e,n){t._trigger("drag",e,s(n))},stop:function(o,u){n.position=[u.position.left-r.scrollLeft(),u.position.top-r.scrollTop()],e(this).removeClass("ui-dialog-dragging").height(i),t._trigger("dragStop",o,s(u)),e.ui.dialog.overlay.resize()}})},_makeResizable:function(n){function u(e){return{originalPosition:e.originalPosition,originalSize:e.originalSize,position:e.position,size:e.size}}n=n===t?this.options.resizable:n;var r=this,i=r.options,s=r.uiDialog.css("position"),o=typeof n=="string"?n:"n,e,s,w,se,sw,ne,nw";r.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:r.element,maxWidth:i.maxWidth,maxHeight:i.maxHeight,minWidth:i.minWidth,minHeight:r._minHeight(),handles:o,start:function(t,n){e(this).addClass("ui-dialog-resizing"),r._trigger("resizeStart",t,u(n))},resize:function(e,t){r._trigger("resize",e,u(t))},stop:function(t,n){e(this).removeClass("ui-dialog-resizing"),i.height=e(this).height(),i.width=e(this).width(),r._trigger("resizeStop",t,u(n)),e.ui.dialog.overlay.resize()}}).css("position",s).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var e=this.options;return e.height==="auto"?e.minHeight:Math.min(e.minHeight,e.height)},_position:function(t){var n=[],r=[0,0],i;if(t){if(typeof t=="string"||typeof t=="object"&&"0"in t)n=t.split?t.split(" "):[t[0],t[1]],n.length===1&&(n[1]=n[0]),e.each(["left","top"],function(e,t){+n[e]===n[e]&&(r[e]=n[e],n[e]=t)}),t={my:n.join(" "),at:n.join(" "),offset:r.join(" ")};t=e.extend({},e.ui.dialog.prototype.options.position,t)}else t=e.ui.dialog.prototype.options.position;i=this.uiDialog.is(":visible"),i||this.uiDialog.show(),this.uiDialog.css({top:0,left:0}).position(e.extend({of:window},t)),i||this.uiDialog.hide()},_setOptions:function(t){var n=this,s={},o=!1;e.each(t,function(e,t){n._setOption(e,t),e in r&&(o=!0),e in i&&(s[e]=t)}),o&&this._size(),this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",s)},_setOption:function(t,r){var i=this,s=i.uiDialog;switch(t){case"beforeclose":t="beforeClose";break;case"buttons":i._createButtons(r);break;case"closeText":i.uiDialogTitlebarCloseText.text(""+r);break;case"dialogClass":s.removeClass(i.options.dialogClass).addClass(n+r);break;case"disabled":r?s.addClass("ui-dialog-disabled"):s.removeClass("ui-dialog-disabled");break;case"draggable":var o=s.is(":data(draggable)");o&&!r&&s.draggable("destroy"),!o&&r&&i._makeDraggable();break;case"position":i._position(r);break;case"resizable":var u=s.is(":data(resizable)");u&&!r&&s.resizable("destroy"),u&&typeof r=="string"&&s.resizable("option","handles",r),!u&&r!==!1&&i._makeResizable(r);break;case"title":e(".ui-dialog-title",i.uiDialogTitlebar).html(""+(r||" "))}e.Widget.prototype._setOption.apply(i,arguments)},_size:function(){var t=this.options,n,r,i=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0}),t.minWidth>t.width&&(t.width=t.minWidth),n=this.uiDialog.css({height:"auto",width:t.width}).height(),r=Math.max(0,t.minHeight-n);if(t.height==="auto")if(e.support.minHeight)this.element.css({minHeight:r,height:"auto"});else{this.uiDialog.show();var s=this.element.css("height","auto").height();i||this.uiDialog.hide(),this.element.height(Math.max(s,r))}else this.element.height(Math.max(t.height-n,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}}),e.extend(e.ui.dialog,{version:"1.8.23",uuid:0,maxZ:0,getTitleId:function(e){var t=e.attr("id");return t||(this.uuid+=1,t=this.uuid),"ui-dialog-title-"+t},overlay:function(t){this.$el=e.ui.dialog.overlay.create(t)}}),e.extend(e.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:e.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(e){return e+".dialog-overlay"}).join(" "),create:function(t){this.instances.length===0&&(setTimeout(function(){e.ui.dialog.overlay.instances.length&&e(document).bind(e.ui.dialog.overlay.events,function(t){if(e(t.target).zIndex()
    ").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});return e.fn.bgiframe&&n.bgiframe(),this.instances.push(n),n},destroy:function(t){var n=e.inArray(t,this.instances);n!=-1&&this.oldInstances.push(this.instances.splice(n,1)[0]),this.instances.length===0&&e([document,window]).unbind(".dialog-overlay"),t.remove();var r=0;e.each(this.instances,function(){r=Math.max(r,this.css("z-index"))}),this.maxZ=r},height:function(){var t,n;return e.browser.msie&&e.browser.version<7?(t=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),n=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight),t0?t.left-i:Math.max(t.left-n.collisionPosition.left,t.left)},top:function(t,n){var r=e(window),i=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop();t.top=i>0?t.top-i:Math.max(t.top-n.collisionPosition.top,t.top)}},flip:{left:function(t,n){if(n.at[0]===i)return;var r=e(window),s=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft(),o=n.my[0]==="left"?-n.elemWidth:n.my[0]==="right"?n.elemWidth:0,u=n.at[0]==="left"?n.targetWidth:-n.targetWidth,a=-2*n.offset[0];t.left+=n.collisionPosition.left<0?o+u+a:s>0?o+u+a:0},top:function(t,n){if(n.at[1]===i)return;var r=e(window),s=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop(),o=n.my[1]==="top"?-n.elemHeight:n.my[1]==="bottom"?n.elemHeight:0,u=n.at[1]==="top"?n.targetHeight:-n.targetHeight,a=-2*n.offset[1];t.top+=n.collisionPosition.top<0?o+u+a:s>0?o+u+a:0}}},e.offset.setOffset||(e.offset.setOffset=function(t,n){/static/.test(e.curCSS(t,"position"))&&(t.style.position="relative");var r=e(t),i=r.offset(),s=parseInt(e.curCSS(t,"top",!0),10)||0,o=parseInt(e.curCSS(t,"left",!0),10)||0,u={top:n.top-i.top+s,left:n.left-i.left+o};"using"in n?n.using.call(t,u):r.css(u)},e.fn.offset=function(t){var n=this[0];return!n||!n.ownerDocument?null:t?e.isFunction(t)?this.each(function(n){e(this).offset(t.call(this,n,e(this).offset()))}):this.each(function(){e.offset.setOffset(this,t)}):u.call(this)}),e.curCSS||(e.curCSS=e.css),function(){var t=document.getElementsByTagName("body")[0],n=document.createElement("div"),r,i,o,u,a;r=document.createElement(t?"div":"body"),o={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},t&&e.extend(o,{position:"absolute",left:"-1000px",top:"-1000px"});for(var f in o)r.style[f]=o[f];r.appendChild(n),i=t||document.documentElement,i.insertBefore(r,i.firstChild),n.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",u=e(n).offset(function(e,t){return t}).offset(),r.innerHTML="",i.removeChild(r),a=u.top+u.left+(t?2e3:0),s.fractions=a>21&&a<22}()}(jQuery),function(e,t){e.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=e("
    ").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(),e.Widget.prototype.destroy.apply(this,arguments)},value:function(e){return e===t?this._value():(this._setOption("value",e),this)},_setOption:function(t,n){t==="value"&&(this.options.value=n,this._refreshValue(),this._value()===this.options.max&&this._trigger("complete")),e.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var e=this.options.value;return typeof e!="number"&&(e=0),Math.min(this.options.max,Math.max(this.min,e))},_percentage:function(){return 100*this._value()/this.options.max},_refreshValue:function(){var e=this.value(),t=this._percentage();this.oldValue!==e&&(this.oldValue=e,this._trigger("change")),this.valueDiv.toggle(e>this.min).toggleClass("ui-corner-right",e===this.options.max).width(t.toFixed(0)+"%"),this.element.attr("aria-valuenow",e)}}),e.extend(e.ui.progressbar,{version:"1.8.23"})}(jQuery),function(e,t){var n=5;e.widget("ui.slider",e.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 t=this,r=this.options,i=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),s="",o=r.values&&r.values.length||1,u=[];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"+(r.disabled?" ui-slider-disabled ui-disabled":"")),this.range=e([]),r.range&&(r.range===!0&&(r.values||(r.values=[this._valueMin(),this._valueMin()]),r.values.length&&r.values.length!==2&&(r.values=[r.values[0],r.values[0]])),this.range=e("
    ").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(r.range==="min"||r.range==="max"?" ui-slider-range-"+r.range:"")));for(var a=i.length;an&&(s=n,o=e(this),a=t)}),n.range===!0&&this.values(1)===n.min&&(a+=1,o=e(this.handles[a])),f=this._start(t,a),f===!1?!1:(this._mouseSliding=!0,u._handleIndex=a,o.addClass("ui-state-active").focus(),l=o.offset(),c=!e(t.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=c?{left:0,top:0}:{left:t.pageX-l.left-o.width()/2,top:t.pageY-l.top-o.height()/2-(parseInt(o.css("borderTopWidth"),10)||0)-(parseInt(o.css("borderBottomWidth"),10)||0)+(parseInt(o.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(t,a,i),this._animateOff=!0,!0))},_mouseStart:function(e){return!0},_mouseDrag:function(e){var t={x:e.pageX,y:e.pageY},n=this._normValueFromMouse(t);return this._slide(e,this._handleIndex,n),!1},_mouseStop:function(e){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(e,this._handleIndex),this._change(e,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(e){var t,n,r,i,s;return this.orientation==="horizontal"?(t=this.elementSize.width,n=e.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(t=this.elementSize.height,n=e.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),r=n/t,r>1&&(r=1),r<0&&(r=0),this.orientation==="vertical"&&(r=1-r),i=this._valueMax()-this._valueMin(),s=this._valueMin()+r*i,this._trimAlignValue(s)},_start:function(e,t){var n={handle:this.handles[t],value:this.value()};return this.options.values&&this.options.values.length&&(n.value=this.values(t),n.values=this.values()),this._trigger("start",e,n)},_slide:function(e,t,n){var r,i,s;this.options.values&&this.options.values.length?(r=this.values(t?0:1),this.options.values.length===2&&this.options.range===!0&&(t===0&&n>r||t===1&&n1){this.options.values[t]=this._trimAlignValue(n),this._refreshValue(),this._change(null,t);return}if(!arguments.length)return this._values();if(!e.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(t):this.value();r=this.options.values,i=arguments[0];for(s=0;s=this._valueMax())return this._valueMax();var t=this.options.step>0?this.options.step:1,n=(e-this._valueMin())%t,r=e-n;return Math.abs(n)*2>=t&&(r+=n>0?t:-t),parseFloat(r.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var t=this.options.range,n=this.options,r=this,i=this._animateOff?!1:n.animate,s,o={},u,a,f,l;this.options.values&&this.options.values.length?this.handles.each(function(t,a){s=(r.values(t)-r._valueMin())/(r._valueMax()-r._valueMin())*100,o[r.orientation==="horizontal"?"left":"bottom"]=s+"%",e(this).stop(1,1)[i?"animate":"css"](o,n.animate),r.options.range===!0&&(r.orientation==="horizontal"?(t===0&&r.range.stop(1,1)[i?"animate":"css"]({left:s+"%"},n.animate),t===1&&r.range[i?"animate":"css"]({width:s-u+"%"},{queue:!1,duration:n.animate})):(t===0&&r.range.stop(1,1)[i?"animate":"css"]({bottom:s+"%"},n.animate),t===1&&r.range[i?"animate":"css"]({height:s-u+"%"},{queue:!1,duration:n.animate}))),u=s}):(a=this.value(),f=this._valueMin(),l=this._valueMax(),s=l!==f?(a-f)/(l-f)*100:0,o[r.orientation==="horizontal"?"left":"bottom"]=s+"%",this.handle.stop(1,1)[i?"animate":"css"](o,n.animate),t==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[i?"animate":"css"]({width:s+"%"},n.animate),t==="max"&&this.orientation==="horizontal"&&this.range[i?"animate":"css"]({width:100-s+"%"},{queue:!1,duration:n.animate}),t==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[i?"animate":"css"]({height:s+"%"},n.animate),t==="max"&&this.orientation==="vertical"&&this.range[i?"animate":"css"]({height:100-s+"%"},{queue:!1,duration:n.animate}))}}),e.extend(e.ui.slider,{version:"1.8.23"})}(jQuery),function(e,t){function i(){return++n}function s(){return++r}var n=0,r=0;e.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:"
    ",remove:null,select:null,show:null,spinner:"Loading…",tabTemplate:"
  • #{label}
  • "},_create:function(){this._tabify(!0)},_setOption:function(e,t){if(e=="selected"){if(this.options.collapsible&&t==this.options.selected)return;this.select(t)}else this.options[e]=t,this._tabify()},_tabId:function(e){return e.title&&e.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+i()},_sanitizeSelector:function(e){return e.replace(/:/g,"\\:")},_cookie:function(){var t=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+s());return e.cookie.apply(null,[t].concat(e.makeArray(arguments)))},_ui:function(e,t){return{tab:e,panel:t,index:this.anchors.index(e)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var t=e(this);t.html(t.data("label.tabs")).removeData("label.tabs")})},_tabify:function(n){function h(t,n){t.css("display",""),!e.support.opacity&&n.opacity&&t[0].style.removeAttribute("filter")}var r=this,i=this.options,s=/^#.+/;this.list=this.element.find("ol,ul").eq(0),this.lis=e(" > li:has(a[href])",this.list),this.anchors=this.lis.map(function(){return e("a",this)[0]}),this.panels=e([]),this.anchors.each(function(t,n){var o=e(n).attr("href"),u=o.split("#")[0],a;u&&(u===location.toString().split("#")[0]||(a=e("base")[0])&&u===a.href)&&(o=n.hash,n.href=o);if(s.test(o))r.panels=r.panels.add(r.element.find(r._sanitizeSelector(o)));else if(o&&o!=="#"){e.data(n,"href.tabs",o),e.data(n,"load.tabs",o.replace(/#.*$/,""));var f=r._tabId(n);n.href="#"+f;var l=r.element.find("#"+f);l.length||(l=e(i.panelTemplate).attr("id",f).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(r.panels[t-1]||r.list),l.data("destroy.tabs",!0)),r.panels=r.panels.add(l)}else i.disabled.push(t)}),n?(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"),i.selected===t?(location -.hash&&this.anchors.each(function(e,t){if(t.hash==location.hash)return i.selected=e,!1}),typeof i.selected!="number"&&i.cookie&&(i.selected=parseInt(r._cookie(),10)),typeof i.selected!="number"&&this.lis.filter(".ui-tabs-selected").length&&(i.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))),i.selected=i.selected||(this.lis.length?0:-1)):i.selected===null&&(i.selected=-1),i.selected=i.selected>=0&&this.anchors[i.selected]||i.selected<0?i.selected:0,i.disabled=e.unique(i.disabled.concat(e.map(this.lis.filter(".ui-state-disabled"),function(e,t){return r.lis.index(e)}))).sort(),e.inArray(i.selected,i.disabled)!=-1&&i.disabled.splice(e.inArray(i.selected,i.disabled),1),this.panels.addClass("ui-tabs-hide"),this.lis.removeClass("ui-tabs-selected ui-state-active"),i.selected>=0&&this.anchors.length&&(r.element.find(r._sanitizeSelector(r.anchors[i.selected].hash)).removeClass("ui-tabs-hide"),this.lis.eq(i.selected).addClass("ui-tabs-selected ui-state-active"),r.element.queue("tabs",function(){r._trigger("show",null,r._ui(r.anchors[i.selected],r.element.find(r._sanitizeSelector(r.anchors[i.selected].hash))[0]))}),this.load(i.selected)),e(window).bind("unload",function(){r.lis.add(r.anchors).unbind(".tabs"),r.lis=r.anchors=r.panels=null})):i.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")),this.element[i.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible"),i.cookie&&this._cookie(i.selected,i.cookie);for(var o=0,u;u=this.lis[o];o++)e(u)[e.inArray(o,i.disabled)!=-1&&!e(u).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");i.cache===!1&&this.anchors.removeData("cache.tabs"),this.lis.add(this.anchors).unbind(".tabs");if(i.event!=="mouseover"){var a=function(e,t){t.is(":not(.ui-state-disabled)")&&t.addClass("ui-state-"+e)},f=function(e,t){t.removeClass("ui-state-"+e)};this.lis.bind("mouseover.tabs",function(){a("hover",e(this))}),this.lis.bind("mouseout.tabs",function(){f("hover",e(this))}),this.anchors.bind("focus.tabs",function(){a("focus",e(this).closest("li"))}),this.anchors.bind("blur.tabs",function(){f("focus",e(this).closest("li"))})}var l,c;i.fx&&(e.isArray(i.fx)?(l=i.fx[0],c=i.fx[1]):l=c=i.fx);var p=c?function(t,n){e(t).closest("li").addClass("ui-tabs-selected ui-state-active"),n.hide().removeClass("ui-tabs-hide").animate(c,c.duration||"normal",function(){h(n,c),r._trigger("show",null,r._ui(t,n[0]))})}:function(t,n){e(t).closest("li").addClass("ui-tabs-selected ui-state-active"),n.removeClass("ui-tabs-hide"),r._trigger("show",null,r._ui(t,n[0]))},d=l?function(e,t){t.animate(l,l.duration||"normal",function(){r.lis.removeClass("ui-tabs-selected ui-state-active"),t.addClass("ui-tabs-hide"),h(t,l),r.element.dequeue("tabs")})}:function(e,t,n){r.lis.removeClass("ui-tabs-selected ui-state-active"),t.addClass("ui-tabs-hide"),r.element.dequeue("tabs")};this.anchors.bind(i.event+".tabs",function(){var t=this,n=e(t).closest("li"),s=r.panels.filter(":not(.ui-tabs-hide)"),o=r.element.find(r._sanitizeSelector(t.hash));if(n.hasClass("ui-tabs-selected")&&!i.collapsible||n.hasClass("ui-state-disabled")||n.hasClass("ui-state-processing")||r.panels.filter(":animated").length||r._trigger("select",null,r._ui(this,o[0]))===!1)return this.blur(),!1;i.selected=r.anchors.index(this),r.abort();if(i.collapsible){if(n.hasClass("ui-tabs-selected"))return i.selected=-1,i.cookie&&r._cookie(i.selected,i.cookie),r.element.queue("tabs",function(){d(t,s)}).dequeue("tabs"),this.blur(),!1;if(!s.length)return i.cookie&&r._cookie(i.selected,i.cookie),r.element.queue("tabs",function(){p(t,o)}),r.load(r.anchors.index(this)),this.blur(),!1}i.cookie&&r._cookie(i.selected,i.cookie);if(!o.length)throw"jQuery UI Tabs: Mismatching fragment identifier.";s.length&&r.element.queue("tabs",function(){d(t,s)}),r.element.queue("tabs",function(){p(t,o)}),r.load(r.anchors.index(this)),e.browser.msie&&this.blur()}),this.anchors.bind("click.tabs",function(){return!1})},_getIndex:function(e){return typeof e=="string"&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},destroy:function(){var t=this.options;return this.abort(),this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs"),this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all"),this.anchors.each(function(){var t=e.data(this,"href.tabs");t&&(this.href=t);var n=e(this).unbind(".tabs");e.each(["href","load","cache"],function(e,t){n.removeData(t+".tabs")})}),this.lis.unbind(".tabs").add(this.panels).each(function(){e.data(this,"destroy.tabs")?e(this).remove():e(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(" "))}),t.cookie&&this._cookie(null,t.cookie),this},add:function(n,r,i){i===t&&(i=this.anchors.length);var s=this,o=this.options,u=e(o.tabTemplate.replace(/#\{href\}/g,n).replace(/#\{label\}/g,r)),a=n.indexOf("#")?this._tabId(e("a",u)[0]):n.replace("#","");u.addClass("ui-state-default ui-corner-top").data("destroy.tabs",!0);var f=s.element.find("#"+a);return f.length||(f=e(o.panelTemplate).attr("id",a).data("destroy.tabs",!0)),f.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"),i>=this.lis.length?(u.appendTo(this.list),f.appendTo(this.list[0].parentNode)):(u.insertBefore(this.lis[i]),f.insertBefore(this.panels[i])),o.disabled=e.map(o.disabled,function(e,t){return e>=i?++e:e}),this._tabify(),this.anchors.length==1&&(o.selected=0,u.addClass("ui-tabs-selected ui-state-active"),f.removeClass("ui-tabs-hide"),this.element.queue("tabs",function(){s._trigger("show",null,s._ui(s.anchors[0],s.panels[0]))}),this.load(0)),this._trigger("add",null,this._ui(this.anchors[i],this.panels[i])),this},remove:function(t){t=this._getIndex(t);var n=this.options,r=this.lis.eq(t).remove(),i=this.panels.eq(t).remove();return r.hasClass("ui-tabs-selected")&&this.anchors.length>1&&this.select(t+(t+1=t?--e:e}),this._tabify(),this._trigger("remove",null,this._ui(r.find("a")[0],i[0])),this},enable:function(t){t=this._getIndex(t);var n=this.options;if(e.inArray(t,n.disabled)==-1)return;return this.lis.eq(t).removeClass("ui-state-disabled"),n.disabled=e.grep(n.disabled,function(e,n){return e!=t}),this._trigger("enable",null,this._ui(this.anchors[t],this.panels[t])),this},disable:function(e){e=this._getIndex(e);var t=this,n=this.options;return e!=n.selected&&(this.lis.eq(e).addClass("ui-state-disabled"),n.disabled.push(e),n.disabled.sort(),this._trigger("disable",null,this._ui(this.anchors[e],this.panels[e]))),this},select:function(e){e=this._getIndex(e);if(e==-1){if(!this.options.collapsible||this.options.selected==-1)return this;e=this.options.selected}return this.anchors.eq(e).trigger(this.options.event+".tabs"),this},load:function(t){t=this._getIndex(t);var n=this,r=this.options,i=this.anchors.eq(t)[0],s=e.data(i,"load.tabs");this.abort();if(!s||this.element.queue("tabs").length!==0&&e.data(i,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(t).addClass("ui-state-processing");if(r.spinner){var o=e("span",i);o.data("label.tabs",o.html()).html(r.spinner)}return this.xhr=e.ajax(e.extend({},r.ajaxOptions,{url:s,success:function(s,o){n.element.find(n._sanitizeSelector(i.hash)).html(s),n._cleanup(),r.cache&&e.data(i,"cache.tabs",!0),n._trigger("load",null,n._ui(n.anchors[t],n.panels[t]));try{r.ajaxOptions.success(s,o)}catch(u){}},error:function(e,s,o){n._cleanup(),n._trigger("load",null,n._ui(n.anchors[t],n.panels[t]));try{r.ajaxOptions.error(e,s,t,i)}catch(o){}}})),n.element.dequeue("tabs"),this},abort:function(){return this.element.queue([]),this.panels.stop(!1,!0),this.element.queue("tabs",this.element.queue("tabs").splice(-2,2)),this.xhr&&(this.xhr.abort(),delete this.xhr),this._cleanup(),this},url:function(e,t){return this.anchors.eq(e).removeData("cache.tabs").data("load.tabs",t),this},length:function(){return this.anchors.length}}),e.extend(e.ui.tabs,{version:"1.8.23"}),e.extend(e.ui.tabs.prototype,{rotation:null,rotate:function(e,t){var n=this,r=this.options,i=n._rotate||(n._rotate=function(t){clearTimeout(n.rotation),n.rotation=setTimeout(function(){var e=r.selected;n.select(++e
    '),r=e(r),e("body").append(r),i()},e.fn.purr=function(t){return t=t||{},t.fadeInSpeed=t.fadeInSpeed||500,t.fadeOutSpeed=t.fadeOutSpeed||500,t.removeTimer=t.removeTimer||4e3,t.isSticky=t.isSticky||!1,t.usingTransparentPNG=t.usingTransparentPNG||!1,this.each(function(){new e.purr(this,t)}),this}}(jQuery),BestInPlaceEditor.prototype={activate:function(){var e="";this.isNil?e="":this.original_content?e=this.original_content:this.sanitize?e=this.element.text():e=this.element.html();var t=this.isNil?"-":this.element.html();this.oldValue=t,this.display_value=e,jQuery(this.activator).unbind("click",this.clickHandler),this.activateForm(),this.element.trigger(jQuery.Event("best_in_place:activate"))},abort:function(){this.isNil?this.element.html(this.nil):this.element.html(this.oldValue),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:abort")),this.element.trigger(jQuery.Event("best_in_place:deactivate"))},abortIfConfirm:function(){if(!this.useConfirm){this.abort();return}confirm("Are you sure you want to discard your changes?")&&this.abort()},update:function(){var e=this;if(this.formType in{input:1,textarea:1}&&this.getValue()==this.oldValue)return this.abort(),!0;this.isNil=!1,e.ajax({type:"post",dataType:"text",data:e.requestData(),success:function(t){e.loadSuccessCallback(t)},error:function(t,n){e.loadErrorCallback(t,n)}});if(this.formType=="select"){var t=this.getValue();this.previousCollectionValue=t,jQuery.each(this.values,function(n,r){t==r[0]&&e.element.html(r[1])})}else this.formType=="checkbox"?e.element.html(this.getValue()?this.values[1]:this.values[0]):this.getValue()!==""?e.element.text(this.getValue()):e.element.html(this.nil);e.element.trigger(jQuery.Event("best_in_place:update"))},activateForm:function(){alert("The form was not properly initialized. activateForm is unbound")},initOptions:function(){var e=this;e.element.parents().each(function(){$parent=jQuery(this),e.url=e.url||$parent.attr("data-url"),e.collection=e.collection||$parent.attr("data-collection"),e.formType=e.formType||$parent.attr("data-type"),e.objectName=e.objectName||$parent.attr("data-object"),e.attributeName=e.attributeName||$parent.attr("data-attribute"),e.activator=e.activator||$parent.attr("data-activator"),e.okButton=e.okButton||$parent.attr("data-ok-button"),e.cancelButton=e.cancelButton||$parent.attr("data-cancel-button"),e.nil=e.nil||$parent.attr("data-nil"),e.inner_class=e.inner_class||$parent.attr("data-inner-class"),e.html_attrs=e.html_attrs||$parent.attr("data-html-attrs"),e.original_content=e.original_content||$parent.attr("data-original-content"),e.collectionValue=e.collectionValue||$parent.attr("data-value")}),e.element.parents().each(function(){var t=this.id.match(/^(\w+)_(\d+)$/i);t&&(e.objectName=e.objectName||t[1])}),e.url=e.element.attr("data-url")||e.url||document.location.pathname,e.collection=e.element.attr("data-collection")||e.collection,e.formType=e.element.attr("data-type")||e.formtype||"input",e.objectName=e.element.attr("data-object")||e.objectName,e.attributeName=e.element.attr("data-attribute")||e.attributeName,e.activator=e.element.attr("data-activator")||e.element,e.okButton=e.element.attr("data-ok-button")||e.okButton,e.cancelButton=e.element.attr("data-cancel-button")||e.cancelButton,e.nil=e.element.attr("data-nil")||e.nil||"-",e.inner_class=e.element.attr("data-inner-class")||e.inner_class||null,e.html_attrs=e.element.attr("data-html-attrs")||e.html_attrs,e.original_content=e.element.attr("data-original-content")||e.original_content,e.collectionValue=e.element.attr("data-value")||e.collectionValue,e.element.attr("data-sanitize")?e.sanitize=e.element.attr("data-sanitize")=="true":e.sanitize=!0,e.element.attr("data-use-confirm")?e.useConfirm=e.element.attr("data-use-confirm")!="false":e.useConfirm=!0,(e.formType=="select"||e.formType=="checkbox")&&e.collection!==null&&(e.values=jQuery.parseJSON(e.collection))},bindForm:function(){this.activateForm=BestInPlaceEditor.forms[this.formType].activateForm,this.getValue=BestInPlaceEditor.forms[this.formType].getValue},initNil:function(){this.element.text()===""&&(this.isNil=!0,this.element.html(this.nil))},getValue:function(){alert("The form was not properly initialized. getValue is unbound")},sanitizeValue:function(e){return jQuery.trim(e)},requestData:function(){csrf_token=jQuery("meta[name=csrf-token]").attr("content"),csrf_param=jQuery("meta[name=csrf-param]").attr("content");var e="_method=put";return e+="&"+this.objectName+"["+this.attributeName+"]="+encodeURIComponent(this.getValue()),csrf_param!==undefined&&csrf_token!==undefined&&(e+="&"+csrf_param+"="+encodeURIComponent(csrf_token)),e},ajax:function(e){return e.url=this.url,e.beforeSend=function(e){e.setRequestHeader("Accept","application/json")},jQuery.ajax(e)},loadSuccessCallback:function(e){var t=jQuery.parseJSON(jQuery.trim(e));t!==null&&t.hasOwnProperty("display_as")&&(this.element.attr("data-original-content",this.element.text()),this.original_content=this.element.text(),this.element.html(t.display_as)),this.element.trigger(jQuery.Event("ajax:success"),e),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:deactivate")),this.collectionValue!==null&&(this.collectionValue=this.previousCollectionValue,this.previousCollectionValue=null)},loadErrorCallback:function(e,t){this.element.html(this.oldValue),this.element.trigger(jQuery.Event("best_in_place:error"),[e,t]),this.element.trigger(jQuery.Event("ajax:error")),jQuery(this.activator).bind("click",{editor:this},this.clickHandler),this.element.trigger(jQuery.Event("best_in_place:deactivate"))},clickHandler:function(e){e.preventDefault(),e.data.editor.activate()},setHtmlAttributes:function(){var e=this.element.find(this.formType),t=jQuery.parseJSON(this.html_attrs);for(var n in t)e.attr(n,t[n])}},BestInPlaceEditor.forms={input:{activateForm:function(){var e=jQuery(document.createElement("form")).addClass("form_in_place").attr("action","javascript:void(0);").attr("style","display:inline"),t=jQuery(document.createElement("input")).attr("type","text").attr("name",this.attributeName).val(this.display_value);this.inner_class!==null&&t.addClass(this.inner_class),e.append(t),this.okButton&&e.append(jQuery(document.createElement("input")).attr("type","submit").attr("value",this.okButton)),this.cancelButton&&e.append(jQuery(document.createElement("input")).attr("type","button").attr("value",this.cancelButton)),this.element.html(e),this.setHtmlAttributes(),this.element.find("input[type='text']")[0].select(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.input.submitHandler),this.cancelButton&&this.element.find("input[type='button']").bind("click",{editor:this},BestInPlaceEditor.forms.input.cancelButtonHandler),this.element.find("input[type='text']").bind("blur",{editor:this},BestInPlaceEditor.forms.input.inputBlurHandler),this.element.find("input[type='text']").bind("keyup",{editor:this},BestInPlaceEditor.forms.input.keyupHandler),this.blurTimer=null,this.userClicked=!1},getValue:function(){return this.sanitizeValue(this.element.find("input").val())},inputBlurHandler:function(e){e.data.editor.okButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.abort()},500):e.data.editor.cancelButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.update()},500):e.data.editor.update()},submitHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.update()},cancelButtonHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.abort(),e.stopPropagation()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},date:{activateForm:function(){var e=this,t=jQuery(document.createElement("form")).addClass("form_in_place").attr("action","javascript:void(0);").attr("style","display:inline"),n=jQuery(document.createElement("input")).attr("type","text").attr("name",this.attributeName).attr("value",this.sanitizeValue(this.display_value));this.inner_class!==null&&n.addClass(this.inner_class),t.append(n),this.element.html(t),this.setHtmlAttributes(),this.element.find("input")[0].select(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.input.submitHandler),this.element.find("input").bind("keyup",{editor:this},BestInPlaceEditor.forms.input.keyupHandler),this.element.find("input").datepicker({onClose:function(){e.update()}}).datepicker("show")},getValue:function(){return this.sanitizeValue(this.element.find("input").val())},submitHandler:function(e){e.data.editor.update()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},select:{activateForm:function(){var e=jQuery(document.createElement("form")).attr("action","javascript:void(0)").attr("style","display:inline");selected="",oldValue=this.oldValue,select_elt=jQuery(document.createElement("select")),currentCollectionValue=this.collectionValue,jQuery.each(this.values,function(e,t){var n=jQuery(document.createElement("option")).val(t[0]).html(t[1]);t[0]==currentCollectionValue&&n.attr("selected","selected"),select_elt.append(n)}),e.append(select_elt),this.element.html(e),this.setHtmlAttributes(),this.element.find("select").bind("change",{editor:this},BestInPlaceEditor.forms.select.blurHandler),this.element.find("select").bind("blur",{editor:this},BestInPlaceEditor.forms.select.blurHandler),this.element.find("select").bind("keyup",{editor:this},BestInPlaceEditor.forms.select.keyupHandler),this.element.find("select")[0].focus()},getValue:function(){return this.sanitizeValue(this.element.find("select").val())},blurHandler:function(e){e.data.editor.update()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abort()}},checkbox:{activateForm:function(){var e=Boolean(this.oldValue.toLowerCase()!=this.values[1].toLowerCase()),t=e?this.values[1]:this.values[0];this.element.html(t),this.setHtmlAttributes(),this.update()},getValue:function(){return Boolean(this.element.html().toLowerCase()==this.values[1].toLowerCase())}},textarea:{activateForm:function(){width=this.element.css("width"),height=this.element.css("height");var e=jQuery(document.createElement("form")).attr("action","javascript:void(0)").attr("style","display:inline").append(jQuery(document.createElement("textarea")).val(this.sanitizeValue(this.display_value)));this.okButton&&e.append(jQuery(document.createElement("input")).attr("type","submit").attr("value",this.okButton)),this.cancelButton&&e.append(jQuery(document.createElement("input")).attr("type","button").attr("value",this.cancelButton)),this.element.html(e),this.setHtmlAttributes(),jQuery(this.element.find("textarea")[0]).css({"min-width":width,"min-height":height}),jQuery(this.element.find("textarea")[0]).elastic(),this.element.find("textarea")[0].focus(),this.element.find("form").bind("submit",{editor:this},BestInPlaceEditor.forms.textarea.submitHandler),this.cancelButton&&this.element.find("input[type='button']").bind("click",{editor:this},BestInPlaceEditor.forms.textarea.cancelButtonHandler),this.element.find("textarea").bind("blur",{editor:this},BestInPlaceEditor.forms.textarea.blurHandler),this.element.find("textarea").bind("keyup",{editor:this},BestInPlaceEditor.forms.textarea.keyupHandler),this.blurTimer=null,this.userClicked=!1},getValue:function(){return this.sanitizeValue(this.element.find("textarea").val())},blurHandler:function(e){e.data.editor.okButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.abortIfConfirm()},500):e.data.editor.cancelButton?e.data.editor.blurTimer=setTimeout(function(){e.data.editor.userClicked||e.data.editor.update()},500):e.data.editor.update()},submitHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.update()},cancelButtonHandler:function(e){e.data.editor.userClicked=!0,clearTimeout(e.data.editor.blurTimer),e.data.editor.abortIfConfirm(),e.stopPropagation()},keyupHandler:function(e){e.keyCode==27&&e.data.editor.abortIfConfirm()}}},jQuery.fn.best_in_place=function(){function e(e){if(!e.data("bestInPlaceEditor"))return e.data("bestInPlaceEditor",new BestInPlaceEditor(e)),!0}return jQuery(this.context).delegate(this.selector,"click",function(){var t=jQuery(this);e(t)&&t.click()}),this.each(function(){e(jQuery(this))}),this},function(e){e.fn.extend({elastic:function(){var t=["paddingTop","paddingRight","paddingBottom","paddingLeft","fontSize","lineHeight","fontFamily","width","fontWeight"];return this.each(function(){function f(e,t){curratedHeight=Math.floor(parseInt(e,10)),n.height()!=curratedHeight&&n.css({height:curratedHeight+"px",overflow:t})}function l(){var e=n.val().replace(/&/g,"&").replace(/ /g," ").replace(/<|>/g,">").replace(/\n/g,"
    "),t=r.html().replace(/
    /ig,"
    ");if(e+" "!=t){r.html(e+" ");if(Math.abs(r.height()+i-n.height())>3){var u=r.height()+i;u>=o?f(o,"auto"):u<=s?f(s,"hidden"):f(u,"hidden")}}}if(this.type!="textarea")return!1;var n=e(this),r=e("
    ").css({position:"absolute",display:"none","word-wrap":"break-word"}),i=parseInt(n.css("line-height"),10)||parseInt(n.css("font-size"),"10"),s=parseInt(n.css("height"),10)||i*3,o=parseInt(n.css("max-height"),10)||Number.MAX_VALUE,u=0,a=0;o<0&&(o=Number.MAX_VALUE),r.appendTo(n.parent()),a=t.length;while(a--)r.css(t[a].toString(),n.css(t[a].toString()));n.css({overflow:"hidden"}),n.bind("keyup change cut paste",function(){l()}),n.bind("blur",function(){r.height()s?n.height(r.height()):n.height(s))}),n.live("input paste",function(e){setTimeout(l,250)}),l()})}})}(jQuery),function(e){var t=null;e.fn.railsAutocomplete=function(){return this.live("focus",function(){this.railsAutoCompleter||(this.railsAutoCompleter=new e.railsAutocomplete(this))})},e.railsAutocomplete=function(e){_e=e,this.init(_e)},e.railsAutocomplete.fn=e.railsAutocomplete.prototype={railsAutocomplete:"0.0.1"},e.railsAutocomplete.fn.extend=e.railsAutocomplete.extend=e.extend,e.railsAutocomplete.fn.extend({init:function(t){function n(e){return e.split(t.delimiter)}function r(e){return n(e).pop().replace(/^\s+/,"")}t.delimiter=e(t).attr("data-delimiter")||null,e(t).autocomplete({source:function(n,i){e.getJSON(e(t).attr("data-autocomplete"),{term:r(n.term)},function(){arguments[0].length==0&&(arguments[0]=[]),e(arguments[0]).each(function(n,r){var i={};i[r.id]=r,e(t).data(i)}),i.apply(null,arguments)})},change:function(t,n){if(e(e(this).attr("data-id-element")).val()=="")return;e(e(this).attr("data-id-element")).val(n.item?n.item.id:"");var r=e.parseJSON(e(this).attr("data-update-elements")),i=n.item?e(this).data(n.item.id.toString()):{};if(r&&e(r["id"]).val()=="")return;for(var s in r)e(r[s]).val(n.item?i[s]:"")},search:function(){var e=r(this.value);if(e.length<2)return!1},focus:function(){return!1},select:function(r,i){var s=n(this.value);s.pop(),s.push(i.item.value);if(t.delimiter!=null)s.push(""),this.value=s.join(t.delimiter);else{this.value=s.join(""),e(this).attr("data-id-element")&&e(e(this).attr("data-id-element")).val(i.item.id);if(e(this).attr("data-update-elements")){var o=e(this).data(i.item.id.toString()),u=e.parseJSON(e(this).attr("data-update-elements"));for(var a in u)e(u[a]).val(o[a])}}var f=this.value;return e(this).bind("keyup.clearId",function(){e(this).val().trim()!=f.trim()&&(e(e(this).attr("data-id-element")).val(""),e(this).unbind("keyup.clearId"))}),e(t).trigger("railsAutocomplete.select",i),!1}})}}),e(document).ready(function(){e("input[data-autocomplete]").railsAutocomplete()})}(jQuery),function(e,t){var n=function(){var t=e._data(document,"events");return t&&t.click&&e.grep(t.click,function(e){return e.namespace==="rails"}).length};n()&&e.error("jquery-ujs has already been loaded!");var r;e.rails=r={linkClickSelector:"a[data-confirm], a[data-method], a[data-remote], a[data-disable-with]",inputChangeSelector:"select[data-remote], input[data-remote], textarea[data-remote]",formSubmitSelector:"form",formInputClickSelector:"form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])",disableSelector:"input[data-disable-with], button[data-disable-with], textarea[data-disable-with]",enableSelector:"input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled",requiredInputSelector:"input[name][required]:not([disabled]),textarea[name][required]:not([disabled])",fileInputSelector:"input:file",linkDisableSelector:"a[data-disable-with]",CSRFProtection:function(t){var n=e('meta[name="csrf-token"]').attr("content");n&&t.setRequestHeader("X-CSRF-Token",n)},fire:function(t,n,r){var i=e.Event(n);return t.trigger(i,r),i.result!==!1},confirm:function(e){return confirm(e)},ajax:function(t){return e.ajax(t)},href:function(e){return e.attr("href")},handleRemote:function(n){var i,s,o,u,a,f,l,c;if(r.fire(n,"ajax:before")){u=n.data("cross-domain"),a=u===t?null:u,f=n.data("with-credentials")||null,l=n.data("type")||e.ajaxSettings&&e.ajaxSettings.dataType;if(n.is("form")){i=n.attr("method"),s=n.attr("action"),o=n.serializeArray();var h=n.data("ujs:submit-button");h&&(o.push(h),n.data("ujs:submit-button",null))}else n.is(r.inputChangeSelector)?(i=n.data("method"),s=n.data("url"),o=n.serialize(),n.data("params")&&(o=o+"&"+n.data("params"))):(i=n.data("method"),s=r.href(n),o=n.data("params")||null);c={type:i||"GET",data:o,dataType:l,beforeSend:function(e,i){return i.dataType===t&&e.setRequestHeader("accept","*/*;q=0.5, "+i.accepts.script),r.fire(n,"ajax:beforeSend",[e,i])},success:function(e,t,r){n.trigger("ajax:success",[e,t,r])},complete:function(e,t){n.trigger("ajax:complete",[e,t])},error:function(e,t,r){n.trigger("ajax:error",[e,t,r])},xhrFields:{withCredentials:f},crossDomain:a},s&&(c.url=s);var p=r.ajax(c);return n.trigger("ajax:send",p),p}return!1},handleMethod:function(n){var i=r.href(n),s=n.data("method"),o=n.attr("target"),u=e("meta[name=csrf-token]").attr("content"),a=e("meta[name=csrf-param]").attr("content"),f=e('
    '),l='';a!==t&&u!==t&&(l+=''),o&&f.attr("target",o),f.hide().append(l).appendTo("body"),f.submit()},disableFormElements:function(t){t.find(r.disableSelector).each(function(){var t=e(this),n=t.is("button")?"html":"val";t.data("ujs:enable-with",t[n]()),t[n](t.data("disable-with")),t.prop("disabled",!0)})},enableFormElements:function(t){t.find(r.enableSelector).each(function(){var t=e(this),n=t.is("button")?"html":"val";t.data("ujs:enable-with")&&t[n](t.data("ujs:enable-with")),t.prop("disabled",!1)})},allowAction:function(e){var t=e.data("confirm"),n=!1,i;return t?(r.fire(e,"confirm")&&(n=r.confirm(t),i=r.fire(e,"confirm:complete",[n])),n&&i):!0},blankInputs:function(t,n,r){var i=e(),s,o,u=n||"input,textarea",a=t.find(u);return a.each(function(){s=e(this),o=s.is(":checkbox,:radio")?s.is(":checked"):s.val();if(!o==!r){if(s.is(":radio")&&a.filter('input:radio:checked[name="'+s.attr("name")+'"]').length)return!0;i=i.add(s)}}),i.length?i:!1},nonBlankInputs:function(e,t){return r.blankInputs(e,t,!0)},stopEverything:function(t){return e(t.target).trigger("ujs:everythingStopped"),t.stopImmediatePropagation(),!1},callFormSubmitBindings:function(n,r){var i=n.data("events"),s=!0;return i!==t&&i.submit!==t&&e.each(i.submit,function(e,t){if(typeof t.handler=="function")return s=t.handler(r)}),s},disableElement:function(e){e.data("ujs:enable-with",e.html()),e.html(e.data("disable-with")),e.bind("click.railsDisable",function(e){return r.stopEverything(e)})},enableElement:function(e){e.data("ujs:enable-with")!==t&&(e.html(e.data("ujs:enable-with")),e.data("ujs:enable-with",!1)),e.unbind("click.railsDisable")}},r.fire(e(document),"rails:attachBindings")&&(e.ajaxPrefilter(function(e,t,n){e.crossDomain||r.CSRFProtection(n)}),e(document).delegate(r.linkDisableSelector,"ajax:complete",function(){r.enableElement(e(this))}),e(document).delegate(r.linkClickSelector,"click.rails",function(n){var i=e(this),s=i.data("method"),o=i.data("params");if(!r.allowAction(i))return r.stopEverything(n);i.is(r.linkDisableSelector)&&r.disableElement(i);if(i.data("remote")!==t){if((n.metaKey||n.ctrlKey)&&(!s||s==="GET")&&!o)return!0;var u=r.handleRemote(i);return u===!1?r.enableElement(i):u.error(function(){r.enableElement(i)}),!1}if(i.data("method"))return r.handleMethod(i),!1}),e(document).delegate(r.inputChangeSelector,"change.rails",function(t){var n=e(this);return r.allowAction(n)?(r.handleRemote(n),!1):r.stopEverything(t)}),e(document).delegate(r.formSubmitSelector,"submit.rails",function(n){var i=e(this),s=i.data("remote")!==t,o=r.blankInputs(i,r.requiredInputSelector),u=r.nonBlankInputs(i,r.fileInputSelector);if(!r.allowAction(i))return r.stopEverything(n);if(o&&i.attr("novalidate")==t&&r.fire(i,"ajax:aborted:required",[o]))return r.stopEverything(n);if(s){if(u){setTimeout(function(){r.disableFormElements(i)},13);var a=r.fire(i,"ajax:aborted:file",[u]);return a||setTimeout(function(){r.enableFormElements(i)},13),a}return!e.support.submitBubbles&&e().jquery<"1.7"&&r.callFormSubmitBindings(i,n)===!1?r.stopEverything(n):(r.handleRemote(i),!1)}setTimeout(function(){r.disableFormElements(i)},13)}),e(document).delegate(r.formInputClickSelector,"click.rails",function(t){var n=e(this);if(!r.allowAction(n))return r.stopEverything(t);var i=n.attr("name"),s=i?{name:i,value:n.val()}:null;n.closest("form").data("ujs:submit-button",s)}),e(document).delegate(r.formSubmitSelector,"ajax:beforeSend.rails",function(t){this==t.target&&r.disableFormElements(e(this))}),e(document).delegate(r.formSubmitSelector,"ajax:complete.rails",function(t){this==t.target&&r.enableFormElements(e(this))}),e(function(){csrf_token=e("meta[name=csrf-token]").attr("content"),csrf_param=e("meta[name=csrf-param]").attr("content"),e('form input[name="'+csrf_param+'"]').val(csrf_token)}))}(jQuery),$(document).ready(function(){$("#sideOptionAnalyze").bind("click",function(){analyzeOpen||openAnalyze()}),$("#closeAnalyze").bind("click",function(){analyzeOpen&&closeAnalyze()})}),document.createElement("canvas").getContext||function(){function f(){return this.context_||(this.context_=new I(this))}function c(e,t,n){var r=l.call(arguments,2);return function(){return e.apply(t,r.concat(l.call(arguments)))}}function h(e){return String(e).replace(/&/g,"&").replace(/"/g,""")}function p(e,t,n){e.namespaces[t]||e.namespaces.add(t,n,"#default#VML")}function d(e){p(e,"g_vml_","urn:schemas-microsoft-com:vml"),p(e,"g_o_","urn:schemas-microsoft-com:office:office");if(!e.styleSheets.ex_canvas_){var t=e.createStyleSheet();t.owningElement.id="ex_canvas_",t.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}function m(e){var t=e.srcElement;switch(e.propertyName){case"width":t.getContext().clearRect(),t.style.width=t.attributes.width.nodeValue+"px",t.firstChild.style.width=t.clientWidth+"px" -;break;case"height":t.getContext().clearRect(),t.style.height=t.attributes.height.nodeValue+"px",t.firstChild.style.height=t.clientHeight+"px"}}function g(e){var t=e.srcElement;t.firstChild&&(t.firstChild.style.width=t.clientWidth+"px",t.firstChild.style.height=t.clientHeight+"px")}function E(){return[[1,0,0],[0,1,0],[0,0,1]]}function S(e,t){var n=E();for(var r=0;r<3;r++)for(var i=0;i<3;i++){var s=0;for(var o=0;o<3;o++)s+=e[r][o]*t[o][i];n[r][i]=s}return n}function x(e,t){t.fillStyle=e.fillStyle,t.lineCap=e.lineCap,t.lineJoin=e.lineJoin,t.lineWidth=e.lineWidth,t.miterLimit=e.miterLimit,t.shadowBlur=e.shadowBlur,t.shadowColor=e.shadowColor,t.shadowOffsetX=e.shadowOffsetX,t.shadowOffsetY=e.shadowOffsetY,t.strokeStyle=e.strokeStyle,t.globalAlpha=e.globalAlpha,t.font=e.font,t.textAlign=e.textAlign,t.textBaseline=e.textBaseline,t.arcScaleX_=e.arcScaleX_,t.arcScaleY_=e.arcScaleY_,t.lineScale_=e.lineScale_}function N(e){var t=e.indexOf("(",3),n=e.indexOf(")",t+1),r=e.substring(t+1,n).split(",");if(r.length!=4||e.charAt(3)!="a")r[3]=1;return r}function C(e){return parseFloat(e)/100}function k(e,t,n){return Math.min(n,Math.max(t,e))}function L(e){var t,n,r,i,s,o;i=parseFloat(e[0])/360%360,i<0&&i++,s=k(C(e[1]),0,1),o=k(C(e[2]),0,1);if(s==0)t=n=r=o;else{var u=o<.5?o*(1+s):o+s-o*s,a=2*o-u;t=A(a,u,i+1/3),n=A(a,u,i),r=A(a,u,i-1/3)}return"#"+y[Math.floor(t*255)]+y[Math.floor(n*255)]+y[Math.floor(r*255)]}function A(e,t,n){return n<0&&n++,n>1&&n--,6*n<1?e+(t-e)*6*n:2*n<1?t:3*n<2?e+(t-e)*(2/3-n)*6:e}function M(e){if(e in O)return O[e];var t,n=1;e=String(e);if(e.charAt(0)=="#")t=e;else if(/^rgb/.test(e)){var r=N(e),t="#",i;for(var s=0;s<3;s++)r[s].indexOf("%")!=-1?i=Math.floor(C(r[s])*255):i=+r[s],t+=y[k(i,0,255)];n=+r[3]}else if(/^hsl/.test(e)){var r=N(e);t=L(r),n=r[3]}else t=T[e]||e;return O[e]={color:t,alpha:n}}function P(e){if(D[e])return D[e];var t=document.createElement("div"),n=t.style;try{n.font=e}catch(r){}return D[e]={style:n.fontStyle||_.style,variant:n.fontVariant||_.variant,weight:n.fontWeight||_.weight,size:n.fontSize||_.size,family:n.fontFamily||_.family}}function H(e,t){var n={};for(var r in e)n[r]=e[r];var i=parseFloat(t.currentStyle.fontSize),s=parseFloat(e.size);return typeof e.size=="number"?n.size=e.size:e.size.indexOf("px")!=-1?n.size=s:e.size.indexOf("em")!=-1?n.size=i*s:e.size.indexOf("%")!=-1?n.size=i/100*s:e.size.indexOf("pt")!=-1?n.size=s/.75:n.size=i,n.size*=.981,n}function B(e){return e.style+" "+e.variant+" "+e.weight+" "+e.size+"px "+e.family}function F(e){return j[e]||"square"}function I(e){this.m_=E(),this.mStack_=[],this.aStack_=[],this.currentPath_=[],this.strokeStyle="#000",this.fillStyle="#000",this.lineWidth=1,this.lineJoin="miter",this.lineCap="butt",this.miterLimit=o*1,this.globalAlpha=1,this.font="10px sans-serif",this.textAlign="left",this.textBaseline="alphabetic",this.canvas=e;var t="width:"+e.clientWidth+"px;height:"+e.clientHeight+"px;overflow:hidden;position:absolute",n=e.ownerDocument.createElement("div");n.style.cssText=t,e.appendChild(n);var r=n.cloneNode(!1);r.style.backgroundColor="red",r.style.filter="alpha(opacity=0)",e.appendChild(r),this.element_=n,this.arcScaleX_=1,this.arcScaleY_=1,this.lineScale_=1}function R(e,t,n,r){e.currentPath_.push({type:"bezierCurveTo",cp1x:t.x,cp1y:t.y,cp2x:n.x,cp2y:n.y,x:r.x,y:r.y}),e.currentX_=r.x,e.currentY_=r.y}function U(e,t){var n=M(e.strokeStyle),r=n.color,i=n.alpha*e.globalAlpha,s=e.lineScale_*e.lineWidth;s<1&&(i*=s),t.push("')}function z(t,n,r,i){var s=t.fillStyle,u=t.arcScaleX_,a=t.arcScaleY_,f=i.x-r.x,l=i.y-r.y;if(s instanceof $){var c=0,h={x:0,y:0},p=0,d=1;if(s.type_=="gradient"){var v=s.x0_/u,m=s.y0_/a,g=s.x1_/u,y=s.y1_/a,b=W(t,v,m),w=W(t,g,y),E=w.x-b.x,S=w.y-b.y;c=Math.atan2(E,S)*180/Math.PI,c<0&&(c+=360),c<1e-6&&(c=0)}else{var b=W(t,s.x0_,s.y0_);h={x:(b.x-r.x)/f,y:(b.y-r.y)/l},f/=u*o,l/=a*o;var x=e.max(f,l);p=2*s.r0_/x,d=2*s.r1_/x-p}var T=s.colors_;T.sort(function(e,t){return e.offset-t.offset});var N=T.length,C=T[0].color,k=T[N-1].color,L=T[0].alpha*t.globalAlpha,A=T[N-1].alpha*t.globalAlpha,O=[];for(var _=0;_')}else if(s instanceof J){if(f&&l){var P=-r.x,H=-r.y;n.push("')}}else{var B=M(t.fillStyle),j=B.color,F=B.alpha*t.globalAlpha;n.push('')}}function W(e,t,n){var r=e.m_;return{x:o*(t*r[0][0]+n*r[1][0]+r[2][0])-u,y:o*(t*r[0][1]+n*r[1][1]+r[2][1])-u}}function X(e){return isFinite(e[0][0])&&isFinite(e[0][1])&&isFinite(e[1][0])&&isFinite(e[1][1])&&isFinite(e[2][0])&&isFinite(e[2][1])}function V(e,t,n){if(!X(t))return;e.m_=t;if(n){var r=t[0][0]*t[1][1]-t[0][1]*t[1][0];e.lineScale_=s(i(r))}}function $(e){this.type_=e,this.x0_=0,this.y0_=0,this.r0_=0,this.x1_=0,this.y1_=0,this.r1_=0,this.colors_=[]}function J(e,t){Q(e);switch(t){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=t;break;default:K("SYNTAX_ERR")}this.src_=e.src,this.width_=e.width,this.height_=e.height}function K(e){throw new G(e)}function Q(e){(!e||e.nodeType!=1||e.tagName!="IMG")&&K("TYPE_MISMATCH_ERR"),e.readyState!="complete"&&K("INVALID_STATE_ERR")}function G(e){this.code=this[e],this.message=e+": DOM Exception "+this.code}var e=Math,t=e.round,n=e.sin,r=e.cos,i=e.abs,s=e.sqrt,o=10,u=o/2,a=+navigator.userAgent.match(/MSIE ([\d.]+)?/)[1],l=Array.prototype.slice;d(document);var v={init:function(e){var t=e||document;t.createElement("canvas"),t.attachEvent("onreadystatechange",c(this.init_,this,t))},init_:function(e){var t=e.getElementsByTagName("canvas");for(var n=0;n','",""),this.element_.insertAdjacentHTML("BeforeEnd",w.join(""))},q.stroke=function(e){var n=[],r=!1,i=10,s=10;n.push("f.x)f.x=c.x;if(a.y==null||c.yf.y)f.y=c.y}}n.push(' ">'),e?z(this,n,a,f):U(this,n),n.push(""),this.element_.insertAdjacentHTML("beforeEnd",n.join(""))},q.fill=function(){this.stroke(!0)},q.closePath=function(){this.currentPath_.push({type:"close"})},q.save=function(){var e={};x(this,e),this.aStack_.push(e),this.mStack_.push(this.m_),this.m_=S(E(),this.m_)},q.restore=function(){this.aStack_.length&&(x(this.aStack_.pop(),this),this.m_=this.mStack_.pop())},q.translate=function(e,t){var n=[[1,0,0],[0,1,0],[e,t,1]];V(this,S(n,this.m_),!1)},q.rotate=function(e){var t=r(e),i=n(e),s=[[t,i,0],[-i,t,0],[0,0,1]];V(this,S(s,this.m_),!1)},q.scale=function(e,t){this.arcScaleX_*=e,this.arcScaleY_*=t;var n=[[e,0,0],[0,t,0],[0,0,1]];V(this,S(n,this.m_),!0)},q.transform=function(e,t,n,r,i,s){var o=[[e,t,0],[n,r,0],[i,s,1]];V(this,S(o,this.m_),!0)},q.setTransform=function(e,t,n,r,i,s){var o=[[e,t,0],[n,r,0],[i,s,1]];V(this,o,!0)},q.drawText_=function(e,n,r,i,s){var u=this.m_,a=1e3,f=0,l=a,c={x:0,y:0},p=[],d=H(P(this.font),this.element_),v=B(d),m=this.element_.currentStyle,g=this.textAlign.toLowerCase();switch(g){case"left":case"center":case"right":break;case"end":g=m.direction=="ltr"?"right":"left";break;case"start":g=m.direction=="rtl"?"right":"left";break;default:g="left"}switch(this.textBaseline){case"hanging":case"top":c.y=d.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":c.y=-d.size/2.25}switch(g){case"right":f=a,l=.05;break;case"center":f=l=a/2}var y=W(this,n+c.x,r+c.y);p.push(''),s?U(this,p):z(this,p,{x:-f,y:0},{x:l,y:d.size});var b=u[0][0].toFixed(3)+","+u[1][0].toFixed(3)+","+u[0][1].toFixed(3)+","+u[1][1].toFixed(3)+",0,0",w=t(y.x/o)+","+t(y.y/o);p.push('','',''),this.element_.insertAdjacentHTML("beforeEnd",p.join(""))},q.fillText=function(e,t,n,r){this.drawText_(e,t,n,r,!1)},q.strokeText=function(e,t,n,r){this.drawText_(e,t,n,r,!0)},q.measureText=function(e){if(!this.textMeasureEl_){var t='';this.element_.insertAdjacentHTML("beforeEnd",t),this.textMeasureEl_=this.element_.lastChild}var n=this.element_.ownerDocument;return this.textMeasureEl_.innerHTML="",this.textMeasureEl_.style.font=this.font,this.textMeasureEl_.appendChild(n.createTextNode(e)),{width:this.textMeasureEl_.offsetWidth}},q.clip=function(){},q.arcTo=function(){},q.createPattern=function(e,t){return new J(e,t)},$.prototype.addColorStop=function(e,t){t=M(t),this.colors_.push({offset:e,color:t.color,alpha:t.alpha})};var Y=G.prototype=new Error;Y.INDEX_SIZE_ERR=1,Y.DOMSTRING_SIZE_ERR=2,Y.HIERARCHY_REQUEST_ERR=3,Y.WRONG_DOCUMENT_ERR=4,Y.INVALID_CHARACTER_ERR=5,Y.NO_DATA_ALLOWED_ERR=6,Y.NO_MODIFICATION_ALLOWED_ERR=7,Y.NOT_FOUND_ERR=8,Y.NOT_SUPPORTED_ERR=9,Y.INUSE_ATTRIBUTE_ERR=10,Y.INVALID_STATE_ERR=11,Y.SYNTAX_ERR=12,Y.INVALID_MODIFICATION_ERR=13,Y.NAMESPACE_ERR=14,Y.INVALID_ACCESS_ERR=15,Y.VALIDATION_ERR=16,Y.TYPE_MISMATCH_ERR=17,G_vmlCanvasManager=v,CanvasRenderingContext2D=I,CanvasGradient=$,CanvasPattern=J,DOMException=G}();var categoryVisible=new Object;categoryVisible.Group=!0,categoryVisible.Person=!0,categoryVisible.Bizarre=!0,categoryVisible.Catalyst=!0,categoryVisible.Closed=!0,categoryVisible.Experience=!0,categoryVisible["Future Dev"]=!0,categoryVisible.Idea=!0,categoryVisible.Implication=!0,categoryVisible.Insight=!0,categoryVisible.Intention=!0,categoryVisible.Knowledge=!0,categoryVisible.Location=!0,categoryVisible["Open Issue"]=!0,categoryVisible.Opinion=!0,categoryVisible.Opportunity=!0,categoryVisible.Platform=!0,categoryVisible.Problem=!0,categoryVisible.Question=!0,categoryVisible.Reference=!0,categoryVisible.Requirement=!0,categoryVisible.Resource=!0,categoryVisible.Role=!0,categoryVisible.Task=!0,categoryVisible.Tool=!0,categoryVisible.Trajectory=!0,categoryVisible.Action=!0,categoryVisible.Activity=!0;var findTopics=["name","metacode","mapper (by name)","map (by name)"],findSynapses=["topics (by name)","directionality","mapper (by name)","map (by name)"],findMaps=["name","topic (by name)","mapper (by name)","synapse (by topics)"],findMappers=["name","topic (by name)","map (by name)","synapse (by topics)"];$(document).ready(function(){$("#sideOptionFind").bind("click",function(){findOpen||openFind()}),$("#closeFind").bind("click",function(){findOpen&&closeFind()}),$("#topic_by_name_input").typing({start:function(e,t){onCanvasChecked=$("#onCanvas").is(":checked"),inCommonsChecked=$("#inCommons").is(":checked"),clearFoundData(),onCanvasChecked&&inCommonsChecked?$("#topic_by_name_input").autocomplete("option","disabled",!0):onCanvasChecked?(setTimeout(function(){showAll()},0),$("#topic_by_name_input").autocomplete("option","disabled",!0)):inCommonsChecked?$("#topic_by_name_input").autocomplete("option","disabled",!0):alert("You either need to have searching On Your Canvas or In the Commons enabled")},stop:function(e,t){onCanvasChecked=$("#onCanvas").is(":checked"),inCommonsChecked=$("#inCommons").is(":checked");var n=$("#topic_by_name_input").val();onCanvasChecked&&setTimeout(function(){onCanvasSearch(n,null,null)},0),inCommonsChecked&&($("#topicsByName").val(n),$("#topicsByUser").val(""),$("#topicsByMap").val(""),$("#get_topics_form").submit()),n==""&&clearFoundData()},delay:2e3}),$("#sideOptionFind .select_content").change(function(){firstVal=$(this).children("option[value='topics']").attr("selected"),secondVal=$(this).children("option[value='maps']").attr("selected"),thirdVal=$(this).children("option[value='mappers']").attr("selected"),firstVal=="selected"?($("#sideOptionFind .select_type").children("option[value='metacode']").removeAttr("disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").removeAttr("disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").removeAttr("disabled"),$(".find").css("display","none"),$(".find_topic_by_name").css("display","block"),$("#topic_by_name_input").focus()):secondVal=="selected"?($("#sideOptionFind .select_type").val()!="name"&&($("#sideOptionFind .select_type").val("name"),$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){})),$("#sideOptionFind .select_type").children("option[value='metacode']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").attr("disabled","disabled"),$(".find").css("display","none"),$(".find_map_by_name").css("display","block"),$("#map_by_name_input").focus()):thirdVal=="selected"&&($("#sideOptionFind .select_type").val("name"),$("#sideOptionFind .select_type").children("option[value='metacode']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='map (by name)']").attr("disabled","disabled"),$("#sideOptionFind .select_type").children("option[value='mapper (by name)']").attr("disabled","disabled"),$(".find").css("display","none"),$(".find_mapper_by_name").css("display","block"),$("#mapper_by_name_input").focus())}),$("#sideOptionFind .select_type").change(function(){firstVal=$(this).children("option[value='name']").attr("selected"),secondVal=$(this).children("option[value='metacode']").attr("selected"),thirdVal=$(this).children("option[value='map (by name)']").attr("selected"),fourthVal=$(this).children("option[value='mapper (by name)']").attr("selected"),firstVal==="selected"?$(".find").fadeOut("fast",function(){showAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").removeClass("toggledOff");for(var e in categoryVisible)categoryVisible[e]=!0;$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_topic_by_name").css("display","block"),$("#topic_by_name_input").focus()})}):secondVal==="selected"?$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"380px",height:"463px"},300,function(){$(".find_topic_by_metacode").fadeIn("fast")})}):thirdVal==="selected"?$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_map_by_name").css("display","block"),$("#map_by_name_input").focus()})}):fourthVal==="selected"&&$(".find").fadeOut("fast",function(){$("#sideOptionFind").animate({width:"305px",height:"76px"},300,function(){$(".find_mapper_by_name").css("display","block"),$("#mapper_by_name_input").focus()})})}),$(".find_topic_by_name #topic_by_name_input").bind("railsAutocomplete.select",function(e,t){t.item.id!=undefined&&window.open("/topics/"+t.item.id),$(".find_topic_by_name #topic_by_name_input").val("")}),$(".find_topic_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_map_by_name #map_by_name_input").bind("railsAutocomplete.select",function(e,t){firstVal=$("#sideOptionFind .select_content").children("option[value='topics']").attr("selected"),secondVal=$("#sideOptionFind .select_content").children("option[value='maps']").attr("selected"),thirdVal=$("#sideOptionFind .select_content").children("option[value='mappers']").attr("selected"),firstVal=="selected"?(firstNewVal=$("#onCanvas").attr("checked"),secondNewVal=$("#inCommons").attr("checked"),firstNewVal=="checked"&&secondNewVal=="checked"?(setTimeout(function(){onCanvasSearch(null,t.item.id,null)},0),$("#topicsByMap").val(t.item.id),$("#topicsByUser").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):firstNewVal=="checked"?setTimeout(function(){onCanvasSearch(null,t.item.id,null)},0):secondNewVal=="checked"?($("#topicsByMap").val(t.item.id),$("#topicsByUser").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):alert("You either need to have searching On Your Canvas or In the Commons enabled")):secondVal=="selected"?(t.item.id!=undefined&&window.open("/maps/"+t.item.id),$(".find_map_by_name #map_by_name_input").val("")):thirdVal=="selected"}),$(".find_map_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_mapper_by_name #mapper_by_name_input").bind("railsAutocomplete.select",function(e,t){firstVal=$("#sideOptionFind .select_content").children("option[value='topics']").attr("selected"),secondVal=$("#sideOptionFind .select_content").children("option[value='maps']").attr("selected"),thirdVal=$("#sideOptionFind .select_content").children("option[value='mappers']").attr("selected"),firstVal=="selected"?(firstNewVal=$("#onCanvas").attr("checked"),secondNewVal=$("#inCommons").attr("checked"),firstNewVal=="checked"&&secondNewVal=="checked"?(setTimeout(function(){onCanvasSearch(null,null,t.item.id.toString())},0),$("#topicsByUser").val(t.item.id),$("#topicsByMap").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):firstNewVal=="checked"?setTimeout(function(){onCanvasSearch(null,null,t.item.id.toString())},0):secondNewVal=="checked"?($("#topicsByUser").val(t.item.id),$("#topicsByMap").val(""),$("#topicsByName").val(""),$("#get_topics_form").submit()):alert("You either need to have searching On Your Canvas or In the Commons enabled")):secondVal!="selected"&&thirdVal=="selected"&&(t.item.id!=undefined&&window.open("/users/"+t.item.id),$(".find_mapper_by_name #mapper_by_name_input").val(""))}),$(".find_mapper_by_name").bind("submit",function(e,t){e.preventDefault()}),$(".find_topic_by_metacode ul li").click(function(e){obj=document.getElementById("container");var t=$(this).attr("id");if(t==="showAll"||t==="hideAll"){if(t=="showAll"){showAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").removeClass("toggledOff");for(var n in categoryVisible)categoryVisible[n]=!0}else if(t=="hideAll"){hideAll(),$(".find_topic_by_metacode ul li").not("#hideAll, #showAll").addClass("toggledOff");for(var n in categoryVisible)categoryVisible[n]=!1}}else{var r=$(this).children("img").attr("alt");switchVisible(r),categoryVisible[r]==1?($(this).addClass("toggledOff"),categoryVisible[r]=!1):categoryVisible[r]==0&&($(this).removeClass("toggledOff"),categoryVisible[r]=!0)}})});var lastDist=0,MetamapsModel=new Object;MetamapsModel.embed=!1,MetamapsModel.selectedEdges=new Array,MetamapsModel.selectedNodes=new Array,MetamapsModel.didPan=!1,MetamapsModel.showcardInUse=null,MetamapsModel.widthOfLabel=null,MetamapsModel.edgecardInUse=null,MetamapsModel.edgeHoveringOver=!1,MetamapsModel.boxStartCoordinates=!1,MetamapsModel.boxEndCoordinates=!1,MetamapsModel.lastNodeClick=0,MetamapsModel.lastCanvasClick=0,MetamapsModel.DOUBLE_CLICK_TOLERANCE=300,MetamapsModel.edgePermTimer1=null,MetamapsModel.edgePermTimer2=null,MetamapsModel.edgePermSliding=!1,MetamapsModel.topicPermTimer1=null,MetamapsModel.topicPermTimer2=null,MetamapsModel.topicPermSliding=!1;var renderMidArrow=function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new $jit.Complex(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new $jit.Complex((t.x+e.x)/2,(t.y+e.y)/2),f=new $jit.Complex(u.x/.7+a.x,u.y/.7+a.y),l=new $jit.Complex(f.x-u.x,f.y-u.y),c=new $jit.Complex(-u.y/2,u.x/2),h=l.add(c),p=l.$add(c.$scale(-1));s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(h.x,h.y),s.lineTo(f.x,f.y),s.lineTo(p.x,p.y),s.stroke()},renderMidArrows=function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new $jit.Complex(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new $jit.Complex((t.x+e.x)/2,(t.y+e.y)/2),f=new $jit.Complex(u.x/.7+a.x,u.y/.7+a.y),l=new $jit.Complex(f.x-u.x,f.y-u.y),c=new $jit.Complex(-u.y/2,u.x/2),h=l.add(c),p=l.$add(c.$scale(-1));s.beginPath(),s.moveTo(h.x,h.y),s.lineTo(f.x,f.y),s.lineTo(p.x,p.y),s.stroke()},nodeSettings={customNode:{render:function(e,t){var n=e.pos.getc(!0),r=e.getData("dim"),i=e.getData("metacode"),s=e.getData("greenCircle"),o=e.getData("whiteCircle"),u=t.getCtx();s&&(u.beginPath(),u.arc(n.x,n.y,r+3,0,2*Math.PI,!1),u.strokeStyle="#67be5f",u.lineWidth=2,u.stroke()),o&&(u.beginPath(),u.arc(n.x,n.y,r+3,0,2*Math.PI,!1),MetamapsModel.embed||(u.strokeStyle="white"),MetamapsModel.embed&&(u.strokeStyle="#999"),u.lineWidth=2,u.stroke()),u.drawImage(imgArray[i],n.x-r,n.y-r,r*2,r*2)},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("dim");return this.nodeHelper.circle.contains(n,t,r)}}},renderEdgeArrows=function(e,t){var n=Mconsole.canvas,r=t.getData("category"),i=t.getData("direction"),s=t.nodeFrom.pos.getc(!0),o=t.nodeTo.pos.getc(!0);if(r=="none")e.line.render({x:s.x,y:s.y},{x:o.x,y:o.y},n);else if(r=="both")renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,!0,n),renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,!1,n);else if(r=="from-to"){var i=t.data.$direction,u=i&&i.length>1&&i[0]!=t.nodeFrom.id;renderMidArrow({x:s.x,y:s.y},{x:o.x,y:o.y},13,u,n)}},edgeSettings={customEdge:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("category");renderEdgeArrows(this.edgeHelper,e);var s=e.getData("desc"),o=e.getData("showDesc");if(s!=""&&o){s=decodeEntities(s);var u=t.getCtx(),a=t.getSize(),f=parseInt((n.x+r.x-s.length*5)/2),l=parseInt((n.y+r.y)/2);u.font="bold 14px arial",u.fillStyle="#FFF";var c=5,h=14+c,p=h/2,d=u.measureText(s).width+2*c-2*p,v=f-c+p,m=l-h+c;u.fillRect(v,m,d,h),u.beginPath(),u.arc(v,m+p,p,0,2*Math.PI,!1),u.arc(v+d,m+p,p,0,2*Math.PI,!1),u.fill(),u.fillStyle="#000",u.fillText(s,f,l)}},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,e.Edge.epsilon)}}},edgeSettingsEmbed={customEdgeEmbed:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("category");renderEdgeArrows(this.edgeHelper,e);var s=e.getData("desc"),o=e.getData("showDesc");if(s!=""&&o){s=decodeEntities(s);var u=t.getCtx(),a=t.getSize(),f=parseInt((n.x+r.x-s.length*5)/2),l=parseInt((n.y+r.y)/2);u.font="bold 14px arial",u.fillStyle="#999";var c=5,h=14+c,p=h/2,d=u.measureText(s).width+2*c-2*p,v=f-c+p,m=l-h+c;u.fillRect(v,m,d,h),u.beginPath(),u.arc(v,m+p,p,0,2*Math.PI,!1),u.arc(v+d,m+p,p,0,2*Math.PI,!1),u.fill(),u.fillStyle="#000",u.fillText(s,f,l)}},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,e.Edge.epsilon)}}};(function(){window.$jit=function(e){e=e||window;for(var t in $jit)$jit[t].$extend&&(e[t]=$jit[t])},$jit.version="2.0.0b";var e=function(e){return document.getElementById(e)};e.empty=function(){},e.extend=function(e,t){for(var n in t||{})e[n]=t[n];return e},e.lambda=function(e){return typeof e=="function"?e:function(){return e}},e.time=Date.now||function(){return+(new Date)},e.splat=function(t){var n=e.type(t);return n?n!="array"?[t]:t:[]},e.type=function(t){var n=e.type.s.call(t).match(/^\[object\s(.*)\]$/)[1].toLowerCase();return n!="object"?n:t&&t.$$family?t.$$family:t&&t.nodeName&&t.nodeType==1?"element":n},e.type.s=Object.prototype.toString,e.each=function(t,n){var r=e.type(t);if(r=="object")for(var i in t)n(t[i],i);else for(var s=0,o=t.length;s>16,e>>8&255,e&255]},e.destroy=function(t){e.clean(t),t.parentNode&&t.parentNode.removeChild(t),t.clearAttributes&&t.clearAttributes()},e.clean=function(t){for(var n=t.childNodes,r=0,i=n.length;r-1},e.addClass=function(t,n){e.hasClass(t,n)||(t.className=t.className+" "+n)},e.removeClass=function(e,t){e.className=e.className.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)"),"$1")},e.getPos=function(e){function r(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.offsetLeft,t.y+=e.offsetTop,e=e.offsetParent;return t}function i(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.scrollLeft,t.y+=e.scrollTop,e=e.parentNode;return t}function s(e){return/^(?:body|html)$/i.test(e.tagName)}var t=r(e),n=i(e);return{x:t.x-n.x,y:t.y-n.y}},e.event={get:function(e,t){return t=t||window,e||t.event},getWheel:function(e){return e.wheelDelta?e.wheelDelta/120:-(e.detail||0)/3},isRightClick:function(e){return e.which==3||e.button==2},getPos:function(e,t){t=t||window,e=e||t.event;var n=t.document;n=n.documentElement||n.body,e.touches&&e.touches.length&&(e=e.touches[0]);var r={x:e.pageX||e.clientX+n.scrollLeft,y:e.pageY||e.clientY+n.scrollTop};return r},stop:function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1}},$jit.util=$jit.id=e;var t=function(n){n=n||{};var r=function(){for(var n in this)typeof this[n]!="function"&&(this[n]=e.unlink(this[n]));this.constructor=r;if(t.prototyping)return this;var i=this.initialize?this.initialize.apply(this,arguments):this;return this.$$family="class",i};for(var i in t.Mutators){if(!n[i])continue;n=t.Mutators[i](n,n[i]),delete n[i]}return e.extend(r,this),r.constructor=t,r.prototype=n,r};t.Mutators={Implements:function(n,r){return e.each(e.splat(r),function(e){t.prototyping=e;var r=typeof e=="function"?new e:e;for(var i in r)i in n||(n[i]=r[i]);delete t.prototyping}),n}},e.extend(t,{inherit:function(n,r){for(var i in r){var s=r[i],o=n[i],u=e.type(s);o&&u=="function"?s!=o&&t.override(n,i,s):u=="object"?n[i]=e.merge(o,s):n[i]=s}return n},override:function(e,n,r){var i=t.prototyping;i&&e[n]!=i[n]&&(i=null);var s=function(){var t=this.parent;this.parent=i?i[n]:e[n];var s=r.apply(this,arguments);return this.parent=t,s};e[n]=s}}),t.prototype.implement=function(){var n=this.prototype;return e.each(Array.prototype.slice.call(arguments||[]),function(e){t.inherit(n,e)}),this},$jit.Class=t,$jit.json={prune:function(e,t){this.each(e,function(e,n){n==t&&e.children&&(delete e.children,e.children=[])})},getParent:function(e,t){if(e.id==t)return!1;var n=e.children;if(n&&n.length>0)for(var r=0;r=(7-4*n)/11){t=r*r-Math.pow((11-6*n-11*e)/4,2);break}return t},Elastic:function(e,t){return Math.pow(2,10*--e)*Math.cos(20*e*Math.PI*(t[0]||1)/3)}};e.each(r,function(e,r){n[r]=t(e)}),e.each(["Quad","Cubic","Quart","Quint"],function(e,r){n[e]=t(function(e){return Math.pow(e,[r+2])})})})();var r=new t({initialize:function(e){this.setOptions(e)},setOptions:function(t){var r={duration:2500,fps:40,transition:n.Quart.easeInOut,compute:e.empty,complete:e.empty,link:"ignore"};return this.opt=e.merge(r,t||{}),this},step:function(){var t=e.time(),n=this.opt;if(ti.height?e.y-s.height-u:e.y+u)+"px",n.left=(e.x+s.width+o>i.width?e.x-s.width-o:e.x+o)+"px"},hide:function(e){this.tip.style.display="none",e&&this.config.onHide()}}),a.Classes.NodeStyles=new t({Implements:[s,o],initializePost:function(){this.fx=this.viz.fx,this.types=this.viz.fx.nodeTypes,this.nStyles=this.config,this.nodeStylesOnHover=this.nStyles.stylesHover,this.nodeStylesOnClick=this.nStyles.stylesClick,this.hoveredNode=!1,this.fx.nodeFxAnimation=new r,this.down=!1,this.move=!1},onMouseOut:function(e,t){this.down=this.move=!1;if(!this.hoveredNode)return;this.dom&&this.isLabel(e,t)&&this.toggleStylesOnHover(this.hoveredNode,!1);var n=e.relatedTarget,r=this.canvas.getElement();while(n&&n.parentNode){if(r==n.parentNode)return;n=n.parentNode}this.toggleStylesOnHover(this.hoveredNode,!1),this.hoveredNode=!1},onMouseOver:function(e,t){var n;if(this.dom&&(n=this.isLabel(e,t))){var r=this.viz.graph.getNode(n.id);if(r.selected)return;this.hoveredNode=r,this.toggleStylesOnHover(this.hoveredNode,!0)}},onMouseDown:function(e,t,n,r){if(r)return;var i;this.dom&&(i=this.isLabel(e,t))?this.down=this.viz.graph.getNode(i.id):this.dom||(this.down=n.getNode()),this.move=!1},onMouseUp:function(e,t,n,r){if(r)return;this.move||this.onClick(n.getNode()),this.down=this.move=!1},getRestoredStyles:function(e,t){var n={},r=this["nodeStylesOn"+t];for(var i in r)n[i]=e.styles["$"+i];return n},toggleStylesOnHover:function(e,t){this.nodeStylesOnHover&&this.toggleStylesOn("Hover",e,t)},toggleStylesOnClick:function(e,t){this.nodeStylesOnClick&&this.toggleStylesOn("Click",e,t)},toggleStylesOn:function(t,r,i){var s=this.viz,o=this.nStyles;if(i){var u=this;r.styles||(r.styles=e.merge(r.data,{}));for(var a in this["nodeStylesOn"+t]){var f="$"+a;f in r.styles||(r.styles[f]=r.getData(a))}s.fx.nodeFx(e.extend({elements:{id:r.id,properties:u["nodeStylesOn"+t]},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}else{var l=this.getRestoredStyles(r,t);s.fx.nodeFx(e.extend({elements:{id:r.id,properties:l},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}},onClick:function(e){if(!e)return;var t=this.nodeStylesOnClick;if(!t)return;e.selected?(this.toggleStylesOnClick(e,!1),delete e.selected):(this.viz.graph.eachNode(function(e){if(e.selected){for(var n in t)e.setData(n,e.styles["$"+n],"end");delete e.selected}}),this.toggleStylesOnClick(e,!0),e.selected=!0,delete e.hovered,this.hoveredNode=!1)},onMouseMove:function(e,t,n){this.down&&(this.move=!0);if(this.dom&&this.isLabel(e,t))return;var r=this.nodeStylesOnHover;if(!r)return;if(!this.dom){if(this.hoveredNode){var i=this.types[this.hoveredNode.getData("type")],s=i&&i.contains&&i.contains.call(this.fx,this.hoveredNode,n.getPos());if(s)return}var o=n.getNode();if(!this.hoveredNode&&!o)return;if(o.hovered)return;o&&!o.selected?(this.fx.nodeFxAnimation.stopTimer(),this.viz.graph.eachNode(function(e){if(e.hovered&&!e.selected){for(var t in r)e.setData(t,e.styles["$"+t],"end");delete e.hovered}}),o.hovered=!0,this.hoveredNode=o,this.toggleStylesOnHover(o,!0)):this.hoveredNode&&!this.hoveredNode.selected&&(this.fx.nodeFxAnimation.stopTimer(),this.toggleStylesOnHover(this.hoveredNode,!1),delete this.hoveredNode.hovered,this.hoveredNode=!1)}}}),a.Classes.Navigation=new t({Implements:[s,o],initializePost:function(){this.pos=!1,this.pressed=!1},onMouseWheel:function(t,n,r){if(!this.config.zooming)return;e.event.stop(e.event.get(t,n));var i=this.config.zooming/1e3,s=1+r*i;this.canvas.scale(s,s)},onMouseDown:function(e,t,n){if(!this.config.panning)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;this.pressed=!0,this.pos=n.getPos();var r=this.canvas,i=r.translateOffsetX,s=r.translateOffsetY,o=r.scaleOffsetX,u=r.scaleOffsetY;this.pos.x*=o,this.pos.x+=i,this.pos.y*=u,this.pos.y+=s},onMouseMove:function(e,t,n){if(!this.config.panning)return;if(!this.pressed)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;var r=this.pos,i=n.getPos(),s=this.canvas,o=s.translateOffsetX,u=s.translateOffsetY,a=s.scaleOffsetX,f=s.scaleOffsetY;i.x*=a,i.y*=f,i.x+=o,i.y+=u;var l=i.x-r.x,c=i.y-r.y;this.pos=i,this.canvas.translate(l*1/a,c*1/f)},onMouseUp:function(e,t,n,r){if(!this.config.panning)return;this.pressed=!1}});var f;(function(){function i(t,n){var i=document.createElement(t);for(var s in n)typeof n[s]=="object"?e.extend(i[s],n[s]):i[s]=n[s];return t=="canvas"&&!r&&G_vmlCanvasManager&&(i=G_vmlCanvasManager.initElement(document.body.appendChild(i))),i}var n=typeof HTMLCanvasElement,r=n=="object"||n=="function";$jit.Canvas=f=new t({canvases:[],pos:!1,element:!1,labelContainer:!1,translateOffsetX:0,translateOffsetY:0,scaleOffsetX:1,scaleOffsetY:1,initialize:function(t,n){this.viz=t,this.opt=n;var r=e.type(n.injectInto)=="string"?n.injectInto:n.injectInto.id,s=r+"-label",o=e(r),u=n.width||o.offsetWidth,a=n.height||o.offsetHeight;this.id=r;var l={injectInto:r,width:u,height:a};this.element=i("div",{id:r+"-canvaswidget",style:{position:"relative",width:u+"px",height:a+"px"}}),this.labelContainer=this.createLabelContainer(n.Label.type,s,l),this.canvases.push(new f.Base({config:e.extend({idSuffix:"-canvas"},l),plot:function(e){t.fx.plot()},resize:function(){t.refresh()}}));var c=n.background;if(c){var h=new f.Background[c.type](t,e.extend(c,l));this.canvases.push(new f.Base(h))}var p=this.canvases.length;while(p--)this.element.appendChild(this.canvases[p].canvas),p>0&&this.canvases[p].plot();this.element.appendChild(this.labelContainer),o.appendChild(this.element);var d=null,v=this;e.addEvent(window,"scroll",function(){clearTimeout(d),d=setTimeout(function(){v.getPos(!0)},500)})},getCtx:function(e){return this.canvases[e||0].getCtx()},getConfig:function(){return this.opt},getElement:function(){return this.element},getSize:function(e){return this.canvases[e||0].getSize()},resize:function(e,t){this.getPos(!0),this.translateOffsetX=this.translateOffsetY=0,this.scaleOffsetX=this.scaleOffsetY=1;for(var n=0,r=this.canvases.length;no?u=i(o+(s-r-o)*t):u=i(o-r+(s-o)*t):a>=n?s>o?u=i(o+(s-r-o)*t):u=i(o-r+(s-(o-r))*t):u=i(o+(s-o)*t);var f=(this.rho-e.rho)*t+e.rho;return{theta:u,rho:f}}};var c=function(e,t){return new l(e,t)};l.KER=c(0,0);var h=function(e,t){this.x=e,this.y=t};$jit.Complex=h,h.prototype={getc:function(){return this},getp:function(e){return this.toPolar(e)},set:function(e){e=e.getc(!0),this.x=e.x,this.y=e.y},setc:function(e,t){this.x=e,this.y=t},setp:function(e,t){this.x=Math.cos(e)*t,this.y=Math.sin(e)*t},clone:function(){return new h(this.x,this.y)},toPolar:function(e){var t=this.norm(),n=Math.atan2(this.y,this.x);return n<0&&(n+=Math.PI*2),e?{theta:n,rho:t}:new l(n,t)},norm:function(){return Math.sqrt(this.squaredNorm())},squaredNorm:function(){return this.x*this.x+this.y*this.y},add:function(e){return new h(this.x+e.x,this.y+e.y)},prod:function(e){return new h(this.x*e.x-this.y*e.y,this.y*e.x+this.x*e.y)},conjugate:function(){return new h(this.x,-this.y)},scale:function(e){return new h(this.x*e,this.y*e)},equals:function(e){return this.x==e.x&&this.y==e.y},$add:function(e){return this.x+=e.x,this.y+=e.y,this},$prod:function(e){var t=this.x,n=this.y;return this.x=t*e.x-n*e.y,this.y=n*e.x+t*e.y,this},$conjugate:function(){return this.y=-this.y,this},$scale:function(e){return this.x*=e,this.y*=e,this},$div:function(e){var t=this.x,n=this.y,r=e.squaredNorm();return this.x=t*e.x+n*e.y,this.y=n*e.x-t*e.y,this.$scale(1/r)}};var p=function(e,t){return new h(e,t)};h.KER=p(0,0),$jit.Graph=new t({initialize:function(t,n,r,i){var s={complex:!1,Node:{}};this.Node=n,this.Edge=r,this.Label=i,this.opt=e.merge(s,t||{}),this.nodes={},this.edges={};var o=this;this.nodeList={};for(var u in v)o.nodeList[u]=function(e){return function(){var t=Array.prototype.slice.call(arguments);o.eachNode(function(n){n[e].apply(n,t)})}}(u)},getNode:function(e){return this.hasNode(e)?this.nodes[e]:!1},getByName:function(e){for(var t in this.nodes){var n=this.nodes[t];if(n.name==e)return n}return!1},getAdjacence:function(e,t){return e in this.edges?this.edges[e][t]:!1},addNode:function(t){if(!this.nodes[t.id]){var n=this.edges[t.id]={};this.nodes[t.id]=new d.Node(e.extend({id:t.id,name:t.name,data:e.merge(t.data||{},{}),adjacencies:n},this.opt.Node),this.opt.complex,this.Node,this.Edge,this.Label)}return this.nodes[t.id]},addAdjacence:function(e,t,n){this.hasNode(e.id)||this.addNode(e),this.hasNode(t.id)||this.addNode(t),e=this.nodes[e.id],t=this.nodes[t.id];if(!e.adjacentTo(t)){var r=this.edges[e.id]=this.edges[e.id]||{},i=this.edges[t.id]=this.edges[t.id]||{};return r[t.id]=i[e.id]=new d.Adjacence(e,t,n,this.Edge,this.Label),r[t.id]}return this.edges[e.id][t.id]},removeNode:function(e){if(this.hasNode(e)){delete this.nodes[e];var t=this.edges[e];for(var n in t)delete this.edges[n][e];delete this.edges[e]}},removeAdjacence:function(e,t){delete this.edges[e][t],delete this.edges[t][e]},hasNode:function(e){return e in this.nodes},empty:function(){this.nodes={},this.edges={}}});var d=$jit.Graph,v;(function(){var t=function(e,t,n,r,i){var s;n=n||"current",e="$"+(e?e+"-":""),n=="current"?s=this.data:n=="start"?s=this.startData:n=="end"&&(s=this.endData);var o=e+t;return r?s[o]:this.Config.overridable?o in s?s[o]:o in this.data?this.data[o]:i[t]||0:i[t]||0},n=function(e,t,n,r){r=r||"current",e="$"+(e?e+"-":"");var i;r=="current"?i=this.data:r=="start"?i=this.startData:r=="end"&&(i=this.endData),i[e+t]=n},r=function(t,n){t="$"+(t?t+"-":"");var r=this;e.each(n,function(e){var n=t+e;delete r.data[n],delete r.endData[n],delete r.startData[n]})};v={getData:function(e,n,r){return t.call(this,"",e,n,r,this.Config)},setData:function(e,t,r){n.call(this,"",e,t,r)},setDataset:function(t,n){t=e.splat(t);for(var r in n)for(var i=0,s=e.splat(n[r]),o=t.length;i=t&&i<=n&&o(e)&&r(e,i),ii&&a(r,t,n)})}(e,t+s,n+s)},eachSubgraph:function(e,t,n){this.eachLevel(e,0,!1,t,n)},eachSubnode:function(e,t,n){this.eachLevel(e,1,1,t,n)},anySubnode:function(t,n,r){var i=!1;n=n||e.lambda(!0);var s=e.type(n)=="string"?function(e){return e[n]}:n;return this.eachSubnode(t,function(e){s(e)&&(i=!0)},r),i},getSubnodes:function(t,n,r){var i=[],s=this;n=n||0;var o,u;return e.type(n)=="array"?(o=n[0],u=n[1]):(o=n,u=Number.MAX_VALUE-t._depth),this.eachLevel(t,o,u,function(e){i.push(e)},r),i},getParents:function(e){var t=[];return this.eachAdjacency(e,function(n){var r=n.nodeTo;r._depth-1?t.endData[i]=r[i]:t.data[i]=r[i]}}),i.graph.eachNode(function(e){if(e.ignore)return;e.eachAdjacency(function(e){if(e.nodeFrom.ignore||e.nodeTo.ignore)return;var t=u.getNode(e.nodeFrom.id),n=u.getNode(e.nodeTo.id);if(!t.adjacentTo(n)){var e=i.graph.getAdjacence(t.id,n.id);f=!0,e.setData("alpha",1),e.setData("alpha",1,"start"),e.setData("alpha",0,"end")}})});var f=this.preprocessSum(u),c=f?["node-property:alpha","edge-property:alpha"]:["node-property:alpha"];c[0]=c[0]+(r&&"node-property"in r?":"+e.splat(r["node-property"]).join(":"):""),c[1]=(c[1]||"edge-property:alpha")+(r&&"edge-property"in r?":"+e.splat(r["edge-property"]).join(":"):""),r&&"label-property"in r&&c.push("label-property:"+e.splat(r["label-property"]).join(":")),i.reposition(),i.graph.eachNode(function(e){e.id!=o&&e.pos.getp().equals(l.KER)&&(e.pos.set(e.endPos),e.startPos.set(e.endPos))}),i.fx.animate(e.merge(s,{modes:["polar"].concat(c),onComplete:function(){i.graph.eachNode(function(e){e.ignore&&i.graph.removeNode(e.id)}),i.graph.eachNode(function(e){e.eachAdjacency(function(e){e.ignore&&i.graph.removeAdjacence(e.nodeFrom.id,e.nodeTo.id)})}),s.onComplete()}}));break;default:}},contract:function(t,n){var r=this.viz;if(t.collapsed||!t.anySubnode(e.lambda(!0)))return;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),t.collapsed=!0,function i(e){e.eachSubnode(function(e){e.ignore=!0,e.setData("alpha",0,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),function s(e){e.eachSubnode(function(e){e.setPos(t.getPos("end"),"end"),s(e)})}(t),r.fx.animate(n)):n.type=="replot"&&r.refresh()},expand:function(t,n){if(!("collapsed"in t))return;var r=this.viz;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),delete t.collapsed,function i(e){e.eachSubnode(function(e){delete e.ignore,e.setData("alpha",1,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),r.fx.animate(n)):n.type=="replot"&&r.refresh()},preprocessSum:function(e){var t=this.viz;e.eachNode(function(e){if(!t.graph.hasNode(e.id)){t.graph.addNode(e);var n=t.graph.getNode(e.id);n.setData("alpha",0),n.setData("alpha",0,"start"),n.setData("alpha",1,"end")}});var n=!1;return e.eachNode(function(e){e.eachAdjacency(function(e){var r=t.graph.getNode(e.nodeFrom.id),i=t.graph.getNode(e.nodeTo.id);if(!r.adjacentTo(i)){var e=t.graph.addAdjacence(r,i,e.data);r.startAlpha==r.endAlpha&&i.startAlpha==i.endAlpha&&(n=!0,e.setData("alpha",0),e.setData("alpha",0,"start"),e.setData("alpha",1,"end"))}})}),n}};var m={none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t,n,r){var i=r.getCtx();i.beginPath(),i.arc(t.x,t.y,n,0,Math.PI*2,!0),i.closePath(),i[e]()},contains:function(e,t,n){var r=e.x-t.x,i=e.y-t.y,s=r*r+i*i;return s<=n*n}},ellipse:{render:function(e,t,n,r,i){var s=i.getCtx();r/=2,n/=2,s.save(),s.scale(n/r,r/n),s.beginPath(),s.arc(t.x*(r/n),t.y*(n/r),r,0,Math.PI*2,!0),s.closePath(),s[e](),s.restore()},contains:function(e,t,n,r){n/=2,r/=2;var i=(n+r)/2,s=e.x-t.x,o=e.y-t.y,u=s*s+o*o;return u<=i*i}},square:{render:function(e,t,n,r){r.getCtx()[e+"Rect"](t.x-n,t.y-n,2*n,2*n)},contains:function(e,t,n){return Math.abs(t.x-e.x)<=n&&Math.abs(t.y-e.y)<=n}},rectangle:{render:function(e,t,n,r,i){i.getCtx()[e+"Rect"](t.x-n/2,t.y-r/2,n,r)},contains:function(e,t,n,r){return Math.abs(t.x-e.x)<=n/2&&Math.abs(t.y-e.y)<=r/2}},triangle:{render:function(e,t,n,r){var i=r.getCtx(),s=t.x,o=t.y-n,u=s-n,a=t.y+n,f=s+n,l=a;i.beginPath(),i.moveTo(s,o),i.lineTo(u,a),i.lineTo(f,l),i.closePath(),i[e]()},contains:function(e,t,n){return m.circle.contains(e,t,n)}},star:{render:function(e,t,n,r){var i=r.getCtx(),s=Math.PI/5;i.save(),i.translate(t.x,t.y),i.beginPath(),i.moveTo(n,0);for(var o=0;o<9;o++)i.rotate(s),o%2==0?i.lineTo(n/.525731*.200811,0):i.lineTo(n,0);i.closePath(),i[e](),i.restore()},contains:function(e,t,n){return m.circle.contains(e,t,n)}}},g={line:{render:function(e,t,n){var r=n.getCtx();r.beginPath(),r.moveTo(e.x,e.y),r.lineTo(t.x,t.y),r.stroke()},contains:function(e,t,n,r){var i=Math.min,s=Math.max,o=i(e.x,t.x),u=s(e.x,t.x),a=i(e.y,t.y),f=s(e.y,t.y);if(n.x>=o&&n.x<=u&&n.y>=a&&n.y<=f){if(Math.abs(t.x-e.x)<=r)return!0;var l=(t.y-e.y)/(t.x-e.x)*(n.x-e.x)+e.y;return Math.abs(l-n.y)<=r}return!1}},arrow:{render:function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new h(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new h(t.x-u.x,t.y-u.y),f=new h(-u.y/2,u.x/2),l=a.add(f),c=a.$add(f.$scale(-1));s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.lineTo(t.x,t.y),s.closePath(),s.fill()},contains:function(e,t,n,r){return g.line.contains(e,t,n,r)}},hyperline:{render:function(e,t,n,r){function f(e,t){var n=e.x*t.y-e.y*t.x,r=n,i=e.squaredNorm(),s=t.squaredNorm();if(n==0)return{x:0,y:0,ratio:-1};var o=(e.y*s-t.y*i+e.y-t.y)/n,u=(t.x*i-e.x*s+t.x-e.x)/r,a=-o/2,f=-u/2,l=(o*o+u*u)/4-1;if(l<0)return{x:0,y:0,ratio:-1};var c=Math.sqrt(l),h={x:a,y:f,ratio:c>1e3?-1:c,a:o,b:u};return h}function a(e,t){return et?!1:!0:t+Math.PI>e?!0:!1}var i=r.getCtx(),s=f(e,t);if(s.a>1e3||s.b>1e3||s.ratio<0)i.beginPath(),i.moveTo(e.x*n,e.y*n),i.lineTo(t.x*n,t.y*n),i.stroke();else{var o=Math.atan2(t.y-s.y,t.x-s.x),u=Math.atan2(e.y-s.y,e.x-s.x),a=a(o,u);i.beginPath(),i.arc(s.x*n,s.y*n,s.ratio*n,o,u,a),i.stroke()}},contains:e.lambda(!1)}};d.Plot={initialize:function(e,t){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge,this.animation=new r,this.nodeTypes=new t.Plot.NodeTypes,this.edgeTypes=new t.Plot.EdgeTypes,this.labels=e.labels},nodeHelper:m,edgeHelper:g,Interpolator:{map:{border:"color",color:"color",width:"number",height:"number",dim:"number",alpha:"number",lineWidth:"number",angularWidth:"number",span:"number",valueArray:"array-number",dimArray:"array-number"},canvas:{globalAlpha:"number",fillStyle:"color",strokeStyle:"color",lineWidth:"number",shadowBlur:"number",shadowColor:"color",shadowOffsetX:"number",shadowOffsetY:"number",miterLimit:"number"},label:{size:"number",color:"color"},compute:function(e,t,n){return e+(t-e)*n},moebius:function(e,t,n,r){var i=r.scale(-n);if(i.norm()<1){var s=i.x,o=i.y,u=e.startPos.getc().moebiusTransformation(i);e.pos.setc(u.x,u.y),i.x=s,i.y=o}},linear:function(e,t,n){var r=e.startPos.getc(!0),i=e.endPos.getc(!0);e.pos.setc(this.compute(r.x,i.x,n),this.compute(r.y,i.y,n))},polar:function(e,t,n){var r=e.startPos.getp(!0),i=e.endPos.getp(),s=i.interpolate(r,n);e.pos.setp(s.theta,s.rho)},number:function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end");e[i](t,this.compute(s,o,n))},color:function(t,n,r,i,s){var o=e.hexToRgb(t[i](n,"start")),u=e.hexToRgb(t[i](n,"end")),a=this.compute,f=e.rgbToHex([parseInt(a(o[0],u[0],r)),parseInt(a(o[1],u[1],r)),parseInt(a(o[2],u[2],r))]);t[s](n,f)},"array-number":function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end"),u=[];for(var a=0,f=s.length;a=.95?o.labels.plotLabel(i,n,e):o.labels.hideLabel(n,!1)),u.restore(),n.visited=!l})},plotTree:function(e,t,n){var r=this,i=this.viz,s=i.canvas,o=this.config,u=s.getCtx(),a=e.getData("alpha");e.eachSubnode(function(i){if(t.plotSubtree(e,i)&&i.exist&&i.drawn){var o=e.getAdjacency(i.id);!n&&t.onBeforePlotLine(o),u.globalAlpha=Math.min(a,i.getData("alpha")),r.plotLine(o,s,n),!n&&t.onAfterPlotLine(o),r.plotTree(i,t,n)}}),e.drawn?(!n&&t.onBeforePlotNode(e),this.plotNode(e,s,n),!n&&t.onAfterPlotNode(e),!t.hideLabels&&t.withLabels&&a>=.95?this.labels.plotLabel(s,e,t):this.labels.hideLabel(e,!1)):this.labels.hideLabel(e,!0)},plotNode:function(e,t,n){var r=e.getData("type"),i=this.node.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=e.getData("alpha"),a=t.getCtx();a.lineWidth=s,a.fillStyle=a.strokeStyle=o,a.globalAlpha=u;for(var f in i)a[f]=e.getCanvasStyle(f);this.nodeTypes[r].render.call(this,e,t,n)}},plotLine:function(e,t,n){var r=e.getData("type"),i=this.edge.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=t.getCtx();u.lineWidth=s,u.fillStyle=u.strokeStyle=o;for(var a in i)u[a]=e.getCanvasStyle(a);this.edgeTypes[r].render.call(this,e,t,n)}}},d.Label={},d.Label.Native=new t({plotLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.font=t.getLabelData("style")+" "+t.getLabelData("size")+"px "+t.getLabelData("family"),r.textAlign=t.getLabelData("textAlign"),r.fillStyle=r.strokeStyle=t.getLabelData("color"),r.textBaseline=t.getLabelData("textBaseline"),this.renderLabel(e,t,n)},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y+t.getData("height")/2)},hideLabel:e.empty,hideLabels:e.empty}),d.Label.DOM=new t({labelsHidden:!1,labelContainer:!1,labels:{},getLabelContainer:function(){return this.labelContainer?this.labelContainer:this.labelContainer=document.getElementById(this.viz.config.labelContainer)},getLabel:function(e){return e in this.labels&&this.labels[e]!=null?this.labels[e]:this.labels[e]=document.getElementById(e)},hideLabels:function(e){var t=this.getLabelContainer();e?t.style.display="none":t.style.display="",this.labelsHidden=e},clearLabels:function(e){for(var t in this.labels)if(e||!this.viz.graph.hasNode(t))this.disposeLabel(t),delete this.labels[t]},disposeLabel:function(e){var t=this.getLabel(e);t&&t.parentNode&&t.parentNode.removeChild(t)},hideLabel:function(t,n){t=e.splat(t);var r=n?"":"none",i,s=this;e.each(t,function(e){var t=s.getLabel(e.id);t&&(t.style.display=r)})},fitsInCanvas:function(e,t){var n=t.getSize();return e.x>=n.width||e.x<0||e.y>=n.height||e.y<0?!1:!0}}),d.Label.HTML=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){i=document.createElement("div");var s=this.getLabelContainer();i.id=r,i.className="node",i.style.position="absolute",n.onCreateLabel(i,t),s.appendChild(i),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Label.SVG=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){var s="http://www.w3.org/2000/svg";i=document.createElementNS(s,"svg:text");var o=document.createElementNS(s,"svg:tspan");i.appendChild(o);var u=this.getLabelContainer();i.setAttribute("id",r),i.setAttribute("class","node"),u.appendChild(i),n.onCreateLabel(i,t),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Geom=new t({initialize:function(e){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge},translate:function(t,n){n=e.splat(n),this.viz.graph.eachNode(function(r){e.each(n,function(e){r.getPos(e).$add(t)})})},setRightLevelToShow:function(t,n,r){var i=this.getRightLevelToShow(t,n),s=this.viz.labels,o=e.merge({execShow:!0,execHide:!0,onHide:e.empty,onShow:e.empty},r||{});t.eachLevel(0,this.config.levelsToShow,function(e){var n=e._depth-t._depth;n>i?(o.onHide(e),o.execHide&&(e.drawn=!1,e.exist=!1,s.hideLabel(e,!1))):(o.onShow(e),o.execShow&&(e.exist=!0))}),t.drawn=!0},getRightLevelToShow:function(e,t){var n=this.config,r=n.levelsToShow,i=n.constrained;if(!i)return r;while(!this.treeFitsInCanvas(e,t,r)&&r>1)r--;return r}});var y={construct:function(t){var n=e.type(t)=="array",r=new d(this.graphOptions,this.config.Node,this.config.Edge,this.config.Label);return n?function(t,n){var r=function(e){for(var r=0,i=n.length;rf?a:f;t.setData("width",c),t.setData("height",c),t.setData("dim",c)}}})},initializeLabel:function(e){this.label||(this.label=document.createElement("div"),document.body.appendChild(this.label)),this.setLabelStyles(e)},setLabelStyles:function(t){e.extend(this.label.style,{visibility:"hidden",position:"absolute",width:"auto",height:"auto"}),this.label.className="jit-autoadjust-label"}};b.Tree=function(){function r(e,t,n,r,i){var s=t.Node,o=t.multitree;if(s.overridable){var u=-1,a=-1;return e.eachNode(function(e){if(e._depth==n&&(!o||"$orn"in e.data&&e.data.$orn==r)){var t=e.getData("width",i),s=e.getData("height",i);u=u0?n[0]:null,i(n)}var r=this;this.graph.eachNode(function(e){e.selected=!1});for(var s=0,o=[t.id].concat(n);s=t._depth)});for(var i=0;i0&&e.drawn?(e.drawn=!1,c[l.id].push(e)):(!h||!p)&&e.drawn&&(e.drawn=!1,c[l.id].push(e))}),l.drawn=!0}a.length>0&&i.fx.plot();for(f in c)e.each(c[f],function(e){e.drawn=!0});for(f=0;fi?r:i)+this.config.subtreeOffset)},getEdge:function(e,t,n){var r=function(t,n){return function(){return e.pos.add(new h(t,n))}},i=this.node,s=e.getData("width"),o=e.getData("height");if(t=="begin"){if(i.align=="center")return this.dispatch(n,r(0,o/2),r(-s/2,0),r(0,-o/2),r(s/2,0));if(i.align=="left")return this.dispatch(n,r(0,o),r(0,0),r(0,0),r(s,0));if(i.align=="right")return this.dispatch(n,r(0,0),r(-s,0),r(0,-o),r(0,0));throw"align: not implemented"}if(t=="end"){if(i.align=="center")return this.dispatch(n,r(0,-o/2),r(s/2,0),r(0,o/2),r(-s/2,0));if(i.align=="left")return this.dispatch(n,r(0,0),r(s,0),r(0,o),r(0,0));if(i.align=="right")return this.dispatch(n,r(0,-o),r(0,0),r(0,0),r(-s,0));throw"align: not implemented"}},getScaledTreePosition:function(e,t){var n=this.node,r=e.getData("width"),i=e.getData("height"),s=this.config.multitree&&"$orn"in e.data&&e.data.$orn||this.config.orientation,o=function(n,r){return function(){return e.pos.add(new h(n,r)).$scale(1-t)}};if(n.align=="left")return this.dispatch(s,o(0,i),o(0,0),o(0,0),o(r,0));if(n.align=="center")return this.dispatch(s,o(0,i/2),o(-r/2,0),o(0,-i/2),o(r/2,0));if(n.align=="right")return this.dispatch(s,o(0,0),o(-r,0),o(0,-i),o(0,0));throw"align: not implemented"},treeFitsInCanvas:function(e,t,n){var r=t.getSize(),i=this.config.multitree&&"$orn"in e.data&&e.data.$orn||this.config.orientation,s=this.dispatch(i,r.width,r.height),o=this.getTreeBaseSize(e,n,function(e,t){return e===0||!t.anySubnode()});return o=0){t.drawn=!1;var a=o.getCtx(),f=s.geom.getScaledTreePosition(t,r);a.translate(f.x,f.y),a.scale(r,r)}this.plotTree(t,e.merge(n,{withLabels:!0,hideLabels:!!r,plotSubtree:function(e,n){var r=u.multitree&&!("$orn"in t.data),i=r&&t.getData("orns");return!r||i.indexOf(elem.getData("orn"))>-1}}),i),r>=0&&(t.drawn=!0)},getAlignedPos:function(e,t,n){var r=this.node,i,s;if(r.align=="center")i={x:e.x-t/2,y:e.y-n/2};else if(r.align=="left")s=this.config.orientation,s=="bottom"||s=="top"?i={x:e.x-t/2,y:e.y}:i={x:e.x,y:e.y-n/2};else{if(r.align!="right")throw"align: not implemented";s=this.config.orientation,s=="bottom"||s=="top"?i={x:e.x-t/2,y:e.y-n}:i={x:e.x-t,y:e.y-n/2}}return i},getOrientation:function(e){var t=this.config,n=t.orientation;if(t.multitree){var r=e.nodeFrom,i=e.nodeTo;n="$orn"in r.data&&r.data.$orn||"$orn"in i.data&&i.data.$orn}return n}}),$jit.ST.Label={},$jit.ST.Label.Native=new t({Implements:d.Label.Native,renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y)}}),$jit.ST.Label.DOM=new t({Implements:d.Label.DOM,placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.config,s=i.Node,o=this.viz.canvas,u=t.getData("width"),a=t.getData("height"),f=o.getSize(),l,c,h=o.translateOffsetX,p=o.translateOffsetY,d=o.scaleOffsetX,v=o.scaleOffsetY,m=r.x*d+h,g=r.y*v+p;if(s.align=="center")l={x:Math.round(m-u/2+f.width/2),y:Math.round(g-a/2+f.height/2)};else if(s.align=="left")c=i.orientation,c=="bottom"||c=="top"?l={x:Math.round(m-u/2+f.width/2),y:Math.round(g+f.height/2)}:l={x:Math.round(m+f.width/2),y:Math.round(g-a/2+f.height/2)};else{if(s.align!="right")throw"align: not implemented";c=i.orientation,c=="bottom"||c=="top"?l={x:Math.round(m-u/2+f.width/2),y:Math.round(g-a+f.height/2)}:l={x:Math.round(m-u+f.width/2),y:Math.round(g-a/2+f.height/2)}}var y=e.style;y.left=l.x+"px",y.top=l.y+"px",y.display=this.fitsInCanvas(l,o)?"":"none",n.onPlaceLabel(e,t)}}),$jit.ST.Label.SVG=new t({Implements:[$jit.ST.Label.DOM,d.Label.SVG],initialize:function(e){this.viz=e}}),$jit.ST.Label.HTML=new t({Implements:[$jit.ST.Label.DOM,d.Label.HTML],initialize:function(e){this.viz=e}}),$jit.ST.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.circle.render("fill",{x:r.x+i,y:r.y+i},i,t)},contains:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.circle.contains({x:r.x+i,y:r.y+i},i)}},square:{render:function(e,t){var n=e.getData("dim"),r=n/2,i=this.getAlignedPos(e.pos.getc(!0),n,n);this.nodeHelper.square.render("fill",{x:i.x+r,y:i.y+r},r,t)},contains:function(e,t){var n=e.getData("dim"),r=this.getAlignedPos(e.pos.getc(!0),n,n),i=n/2;this.nodeHelper.square.contains({x:r.x+i,y:r.y+i},i)}},ellipse:{render:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.ellipse.render("fill",{x:i.x+n/2,y:i.y+r/2},n,r,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.ellipse.contains({x:i.x+n/2,y:i.y+r/2},n,r,canvas)}},rectangle:{render:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.rectangle.render("fill",{x:i.x+n/2,y:i.y+r/2},n,r,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=this.getAlignedPos(e.pos.getc(!0),n,r);this.nodeHelper.rectangle.contains({x:i.x+n/2,y:i.y+r/2},n,r,canvas)}}}),$jit.ST.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=this.getOrientation(e),r=e.nodeFrom,i=e.nodeTo,s=r._depth1&&a[0]!=r.id;this.edgeHelper.arrow.render(o,u,s,f,t)},contains:function(e,t){var n=this.getOrientation(e),r=e.nodeFrom,i=e.nodeTo,s=r._depth0||l[T][1]>0)){var A=C+l[T][0],O=k+l[T][1],M=Math.atan((O-A)/i),_=55,D=S.createLinearGradient(u+i/2,a-(A+O)/2,u+i/2+_*Math.sin(M),a-(A+O)/2+_*Math.cos(M)),P=e.rgbToHex(e.map(e.hexToRgb(d[T%v].slice(1)),function(e){return e*.85>>0}));D.addColorStop(0,d[T%v]),D.addColorStop(1,P),S.fillStyle=D}S.beginPath(),S.moveTo(u,a-C),S.lineTo(u+i,a-k),S.lineTo(u+i,a-k-l[T][1]),S.lineTo(u,a-C-l[T][0]),S.lineTo(u,a-C),S.fill(),S.restore();if(x){var H=x.name==f[T],B=H?.7:.8,P=e.rgbToHex(e.map(e.hexToRgb(d[T%v].slice(1)),function(e){return e*B>>0}));S.strokeStyle=P,S.lineWidth=H?4:1,S.save(),S.beginPath(),x.index===0?(S.moveTo(u,a-C),S.lineTo(u,a-C-l[T][0])):(S.moveTo(u+i,a-k),S.lineTo(u+i,a-k-l[T][1])),S.stroke(),S.restore()}C+=l[T][0]||0,k+=l[T][1]||0,l[T][0]>0&&(L+=c[T][0]||0)}E&&w.type=="Native"&&(S.save(),S.beginPath(),S.fillStyle=S.strokeStyle=w.color,S.font=w.style+" "+w.size+"px "+w.family,S.textAlign="center",S.textBaseline="middle",b(t.name,h,p,t)&&S.fillText(L,u,a-C-m.labelOffset-w.size/2,i),y(t.name,h,p,t)&&S.fillText(t.name,u,a+w.size/2+m.labelOffset),S.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=t.x-o;if(t.xo+r||t.y>u||t.y=v){var m=+(f>r/2);return{name:e.getData("stringArray")[l],color:e.getData("colorArray")[l],value:e.getData("valueArray")[l][m],index:m}}}return!1}}}),$jit.AreaChart=new t({st:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","Margin","Label","AreaChart"),{Label:{type:"Native"}},t);var n=this.config.showLabels,r=e.type(n),s=this.config.showAggregates,o=e.type(s);this.config.showLabels=r=="function"?n:e.lambda(n),this.config.showAggregates=o=="function"?s:e.lambda(s),this.initializeViz()},initializeViz:function(){var t=this.config,n=this,r=t.type.split(":")[0],i={},s=new $jit.ST({injectInto:t.injectInto,orientation:"bottom",levelDistance:0,siblingOffset:0,subtreeOffset:0,withLabels:t.Label.type!="Native",useCanvas:t.useCanvas,Label:{type:t.Label.type},Node:{overridable:!0,type:"areachart-"+r,align:"left",width:1,height:1},Edge:{type:"none"},Tips:{enable:t.Tips.enable,type:"Native",force:!0,onShow:function(e,n,r){var i=r;t.Tips.onShow(e,i,n)}},Events:{enable:!0,type:"Native",onClick:function(e,r,i){if(!t.filterOnClick&&!t.Events.enable)return;var s=r.getContains();s&&t.filterOnClick&&n.filter(s.name),t.Events.enable&&t.Events.onClick(s,r,i)},onRightClick:function(e,r,i){if(!t.restoreOnRightClick)return;n.restore()},onMouseMove:function(e,r,i){if(!t.selectOnHover)return;if(e){var s=r.getContains();n.select(e.id,s.name,s.index)}else n.select(!1,!1,!1)}},onCreateLabel:function(n,r){var s=t.Label,o=r.getData("valueArray"),u=e.reduce(o,function(e,t){return e+t[0]},0),a=e.reduce(o,function(e,t){return e+t[1]},0);if(r.getData("prev")){var f={wrapper:document.createElement("div"),aggregate:document.createElement("div"),label:document.createElement("div")},l=f.wrapper,c=f.label,h=f.aggregate,p=l.style,d=c.style,v=h.style;i[r.id]=f,l.appendChild(c),l.appendChild(h),t.showLabels(r.name,u,a,r)||(c.style.display="none"),t.showAggregates(r.name,u,a,r)||(h.style.display="none"),p.position="relative",p.overflow="visible",p.fontSize=s.size+"px",p.fontFamily=s.family,p.color=s.color,p.textAlign="center",v.position=d.position="absolute",n.style.width=r.getData("width")+"px",n.style.height=r.getData("height")+"px",c.innerHTML=r.name,n.appendChild(l)}},onPlaceLabel:function(n,r){if(!r.getData("prev"))return;var s=i[r.id],o=s.wrapper.style,u=s.label.style,a=s.aggregate.style,f=r.getData("width"),l=r.getData("height"),c=r.getData("dimArray"),h=r.getData("valueArray"),p=e.reduce(h,function(e,t){return e+t[0]},0),d=e.reduce(h,function(e,t){return e+t[1]},0),v=parseInt(o.fontSize,10),m=n.style;if(c&&h){t.showLabels(r.name,p,d,r)?u.display="":u.display="none",t.showAggregates(r.name,p,d,r)?a.display="":a.display="none",o.width=a.width=u.width=n.style.width=f+"px",a.left=u.left=-f/2+"px";for(var g=0,y=h.length,b=0,w=0;g0&&(b+=h[g][0],w+=c[g][0]);a.top=-v-t.labelOffset+"px",u.top=t.labelOffset+w+"px",n.style.top=parseInt(n.style.top,10)-w+"px",n.style.height=o.height=w+"px",s.aggregate.innerHTML=b}}}),o=s.canvas.getSize(),u=t.Margin;s.config.offsetY=-o.height/2+u.bottom+(t.showLabels&&t.labelOffset+t.Label.size),s.config.offsetX=(u.right-u.left)/2,this.st=s,this.canvas=this.st.canvas},loadJSON:function(t){var n=e.time(),r=[],i=this.st,s=e.splat(t.label),o=e.splat(t.color||this.colors),u=this.config,a=!!u.type.split(":")[1],f=u.animate;for(var l=0,c=t.values,h=c.length;l-1?n:[0,0]}),"end")}),this.st.fx.animate({modes:["node-property:dimArray"],duration:1500,onComplete:function(){r.busy=!1}})},restore:function(){if(this.busy)return;this.busy=!0,this.config.Tips.enable&&this.st.tips.hide(),this.select(!1,!1,!1),this.normalizeDims();var e=this;this.st.fx.animate({modes:["node-property:height:dimArray"],duration:1500,onComplete:function(){e.busy=!1}})},select:function(e,t,n){if(!this.config.selectOnHover)return;var r=this.selected;if(r.id!=e||r.name!=t||r.index!=n){r.id=e,r.name=t,r.index=n,this.st.graph.eachNode(function(e){e.setData("border",!1)});if(e){var i=this.st.graph.getNode(e);i.setData("border",r);var s=n===0?"prev":"next";s=i.getData(s),s&&(i=this.st.graph.getByName(s),i&&i.setData("border",{name:t,index:1-n}))}this.st.plot()}},getLegend:function(){var t={},n;this.st.graph.getNode(this.st.root).eachAdjacency(function(e){n=e.nodeTo});var r=n.getData("colorArray"),i=r.length;return e.each(n.getData("stringArray"),function(e,n){t[e]=r[n%i]}),t},getMaxValue:function(){var t=0;return this.st.graph.eachNode(function(n){var r=n.getData("valueArray"),i=0,s=0;e.each(r,function(e){i+=+e[0],s+=+e[1]});var o=s>i?s:i;t=t>o?t:o}),t},normalizeDims:function(){var t=this.st.graph.getNode(this.st.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.st.canvas.getSize(),s=this.config,o=s.Margin,u=s.labelOffset+s.Label.size,a=(i.width-(o.left+o.right))/n,f=s.animate,l=i.height-(o.top+o.bottom)-(s.showAggregates&&u)-(s.showLabels&&u);this.st.graph.eachNode(function(t){var n=0,i=0,s=[];e.each(t.getData("valueArray"),function(e){n+=+e[0],i+=+e[1],s.push([0,0])});var o=i>n?i:n;t.setData("width",a);if(f){t.setData("height",o*l/r,"end"),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return[e[0]*l/r,e[1]*l/r]}),"end");var u=t.getData("dimArray");u||t.setData("dimArray",s)}else t.setData("height",o*l/r),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return[e[0]*l/r,e[1]*l/r]}))})}}),i.BarChart={$extend:!0,animate:!0,type:"stacked",labelOffset:3,barsOffset:0,hoveredColor:"#9fd4ff",orientation:"horizontal",showAggregates:!0,showLabels:!0,Tips:{enable:!1,onShow:e.empty,onHide:e.empty},Events:{enable:!1,onClick:e.empty}},$jit.ST.Plot.NodeTypes.implement({"barchart-stacked":{render:function(t,n){var r=t.pos.getc(!0),i=t.getData("width"),s=t.getData("height"),o=this.getAlignedPos(r,i,s),u=o.x,a=o.y,f=t.getData("dimArray"),l=t.getData("valueArray"),c=t.getData("colorArray"),h=c.length,p=t.getData("stringArray"),d=n.getCtx(),v={},m=t.getData("border"),g=t.getData("gradient"),y=t.getData("config"),b=y.orientation=="horizontal",w=y.showAggregates,E=y.showLabels,S=y.Label;if(c&&f&&p){for(var x=0,T=f.length,N=0,C=0;x>0}));k.addColorStop(0,L),k.addColorStop(.5,c[x%h]),k.addColorStop(1,L),d.fillStyle=k}b?d.fillRect(u+N,a,f[x],s):d.fillRect(u,a-N-f[x],i,f[x]),m&&m.name==p[x]&&(v.acum=N,v.dimValue=f[x]),N+=f[x]||0,C+=l[x]||0}m&&(d.save(),d.lineWidth=2,d.strokeStyle=m.color,b?d.strokeRect(u+v.acum+1,a+1,v.dimValue-2,s-2):d.strokeRect(u+1,a-v.acum-v.dimValue+1,i-2,v.dimValue-2),d.restore()),S.type=="Native"&&(d.save(),d.fillStyle=d.strokeStyle=S.color,d.font=S.style+" "+S.size+"px "+S.family,d.textBaseline="middle",w(t.name,C)&&(b?(d.textAlign="right",d.fillText(C,u+N-y.labelOffset,a+s/2)):(d.textAlign="center",d.fillText(C,u+i/2,a-s-S.size/2-y.labelOffset))),E(t.name,C,t)&&(b?(d.textAlign="center",d.translate(u-y.labelOffset-S.size/2,a+s/2),d.rotate(Math.PI/2),d.fillText(t.name,0,0)):(d.textAlign="center",d.fillText(t.name,u+i/2,a+S.size/2+y.labelOffset))),d.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=e.getData("config"),l=t.x-o,c=f.orientation=="horizontal";if(c){if(t.xo+r||t.y>u+i||t.yo+r||t.y>u||t.y=m)return{name:e.getData("stringArray")[h],color:e.getData("colorArray")[h],value:e.getData("valueArray")[h],label:e.name}}}return!1}},"barchart-grouped":{render:function(t,n){var r=t.pos.getc(!0),i=t.getData("width"),s=t.getData("height"),o=this.getAlignedPos(r,i,s),u=o.x,a=o.y,f=t.getData("dimArray"),l=t.getData("valueArray"),c=l.length,h=t.getData("colorArray"),p=h.length,d=t.getData("stringArray"),v=n.getCtx(),m={},g=t.getData("border"),y=t.getData("gradient"),b=t.getData("config"),w=b.orientation=="horizontal",E=b.showAggregates,S=b.showLabels,x=b.Label,T=(w?s:i)/c;if(h&&f&&d){for(var N=0,C=c,k=0,L=0;N>0}));A.addColorStop(0,O),A.addColorStop(.5,h[N%p]),A.addColorStop(1,O),v.fillStyle=A}w?v.fillRect(u,a+T*N,f[N],T):v.fillRect(u+T*N,a-f[N],T,f[N]),g&&g.name==d[N]&&(m.acum=T*N,m.dimValue=f[N]),k+=f[N]||0,L+=l[N]||0}g&&(v.save(),v.lineWidth=2,v.strokeStyle=g.color,w?v.strokeRect(u+1,a+m.acum+1,m.dimValue-2,T-2):v.strokeRect(u+m.acum+1,a-m.dimValue+1,T-2,m.dimValue-2),v.restore()),x.type=="Native"&&(v.save(),v.fillStyle=v.strokeStyle=x.color,v.font=x.style+" "+x.size+"px "+x.family,v.textBaseline="middle",E(t.name,L)&&(w?(v.textAlign="right",v.fillText(L,u+Math.max.apply(null,f)-b.labelOffset,a+s/2)):(v.textAlign="center",v.fillText(L,u+i/2,a-Math.max.apply(null,f)-x.size/2-b.labelOffset))),S(t.name,L,t)&&(w?(v.textAlign="center",v.translate(u-b.labelOffset-x.size/2,a+s/2),v.rotate(Math.PI/2),v.fillText(t.name,0,0)):(v.textAlign="center",v.fillText(t.name,u+i/2,a+x.size/2+b.labelOffset))),v.restore())}},contains:function(e,t){var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height"),s=this.getAlignedPos(n,r,i),o=s.x,u=s.y,a=e.getData("dimArray"),f=a.length,l=e.getData("config"),c=t.x-o,h=l.orientation=="horizontal",p=(h?i:r)/f;if(h){if(t.xo+r||t.y>u+i||t.yo+r||t.y>u||t.y=g&&t.y<=g+p)return{name:e.getData("stringArray")[d],color:e.getData("colorArray")[d],value:e.getData("valueArray")[d],label:e.name}}else{var g=o+p*d;if(t.x>=g&&t.x<=g+p&&t.y>=u-m)return{name:e.getData("stringArray")[d],color:e.getData("colorArray")[d],value:e.getData("valueArray")[d],label:e.name}}}return!1}}}),$jit.BarChart=new t({st:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","Margin","Label","BarChart"),{Label:{type:"Native"}},t);var n=this.config.showLabels,r=e.type(n),s=this.config.showAggregates,o=e.type(s);this.config.showLabels=r=="function"?n:e.lambda(n),this.config.showAggregates=o=="function"?s:e.lambda(s),this.initializeViz()},initializeViz:function(){var t=this.config,n=this,r=t.type.split(":")[0],i=t.orientation=="horizontal",s={},o=new $jit.ST({injectInto:t.injectInto,orientation:i?"left":"bottom",levelDistance:0,siblingOffset:t.barsOffset,subtreeOffset:0,withLabels:t.Label.type!="Native",useCanvas:t.useCanvas,Label:{type:t.Label.type},Node:{overridable:!0,type:"barchart-"+r,align:"left",width:1,height:1},Edge:{type:"none"},Tips:{enable:t.Tips.enable,type:"Native",force:!0,onShow:function(e,n,r){var i=r;t.Tips.onShow(e,i,n)}},Events:{enable:!0,type:"Native",onClick:function(e,n,r){if(!t.Events.enable)return;var i=n.getContains();t.Events.onClick(i,n,r)},onMouseMove:function(e,r,i){if(!t.hoveredColor)return;if(e){var s=r.getContains();n.select(e.id,s.name,s.index)}else n.select(!1,!1,!1)}},onCreateLabel:function(n,r){var i=t.Label,o=r.getData("valueArray"),u=e.reduce(o,function(e,t){return e+t},0),a={wrapper:document.createElement("div"),aggregate:document.createElement("div"),label:document.createElement("div")},f=a.wrapper,l=a.label,c=a.aggregate,h=f.style,p=l.style,d=c.style;s[r.id]=a,f.appendChild(l),f.appendChild(c),t.showLabels(r.name,u,r)||(p.display="none"),t.showAggregates(r.name,u,r)||(d.display="none"),h.position="relative",h.overflow="visible",h.fontSize=i.size+"px",h.fontFamily=i.family,h.color=i.color,h.textAlign="center",d.position=p.position="absolute",n.style.width=r.getData("width")+"px",n.style.height=r.getData("height")+"px",d.left=p.left="0px",l.innerHTML=r.name,n.appendChild(f)},onPlaceLabel:function(e,n){if(!s[n.id])return;var r=s[n.id],i=r.wrapper.style,o=r.label.style,u=r.aggregate.style,a=t.type.split(":")[0]=="grouped",f=t.orientation=="horizontal",l=n.getData("dimArray"),c=n.getData("valueArray"),h=a&&f?Math.max.apply(null,l):n.getData("width"),p=a&&!f?Math.max.apply(null,l):n.getData("height"),d=parseInt(i.fontSize,10),v=e.style;if(l&&c){i.width=u.width=o.width=e.style.width=h+"px";for(var m=0,g=c.length,y=0;m0&&(y+=c[m]);t.showLabels(n.name,y,n)?o.display="":o.display="none",t.showAggregates(n.name,y,n)?u.display="":u.display="none",t.orientation=="horizontal"?(u.textAlign="right",o.textAlign="left",o.textIndex=u.textIndent=t.labelOffset+"px",u.top=o.top=(p-d)/2+"px",e.style.height=i.height=p+"px"):(u.top=-d-t.labelOffset+"px",o.top=t.labelOffset+p+"px",e.style.top=parseInt(e.style.top,10)-p+"px",e.style.height=i.height=p+"px"),r.aggregate.innerHTML=y}}}),u=o.canvas.getSize(),a=t.Margin;i?(o.config.offsetX=u.width/2-a.left-(t.showLabels&&t.labelOffset+t.Label.size),o.config.offsetY=(a.bottom-a.top)/2):(o.config.offsetY=-u.height/2+a.bottom+(t.showLabels&&t.labelOffset+t.Label.size),o.config.offsetX=(a.right-a.left)/2),this.st=o,this.canvas=this.st.canvas},loadJSON:function(t){if(this.busy)return;this.busy=!0;var n=e.time(),r=[],i=this.st,s=e.splat(t.label),o=e.splat(t.color||this.colors),u=this.config,a=!!u.type.split(":")[1],f=u.animate,l=u.orientation=="horizontal",c=this;for(var h=0,p=t.values,d=p.length;hs?t:s}),t},setBarType:function(e){this.config.type=e,this.st.config.Node.type="barchart-"+e.split(":")[0]},normalizeDims:function(){var t=this.st.graph.getNode(this.st.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.st.canvas.getSize(),s=this.config,o=s.Margin,u=o.left+o.right,a=o.top+o.bottom,f=s.orientation=="horizontal",l=(i[f?"height":"width"]-(f?a:u)-(n-1)*s.barsOffset)/n,c=s.animate,h=i[f?"width":"height"]-(f?u:a)-(!f&&s.showAggregates&&s.Label.size+s.labelOffset)-(s.showLabels&&s.Label.size+s.labelOffset),p=f?"height":"width",d=f?"width":"height";this.st.graph.eachNode(function(t){var n=0,i=[];e.each(t.getData("valueArray"),function(e){n+=+e,i.push(0)}),t.setData(p,l);if(c){t.setData(d,n*h/r,"end"),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return e*h/r}),"end");var s=t.getData("dimArray");s||t.setData("dimArray",i)}else t.setData(d,n*h/r),t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return e*h/r}))})}}),i.PieChart={$extend:!0,animate:!0,offset:25,sliceOffset:0,labelOffset:3,type:"stacked",hoveredColor:"#9fd4ff",Events:{enable:!1,onClick:e.empty},Tips:{enable:!1,onShow:e.empty,onHide:e.empty},showLabels:!0,resizeLabels:!1,updateHeights:!1},b.Radial=new t({compute:function(t){var n=e.splat(t||["current","start","end"]);w.compute(this.graph,n,this.config),this.graph.computeLevels(this.root,0,"ignore");var r=this.createLevelDistanceFunc();this.computeAngularWidths(n),this.computePositions(n,r)},computePositions:function(e,t){var n=e,r=this.graph,i=r.getNode(this.root),s=this.parent,o=this.config;for(var u=0,a=n.length;uf[i]?s:f[i]:s}a.push(e)},"ignore"),s&&s.id==e.id&&a.length>0&&a[0].dist&&a.sort(function(e,t){return(e.dist>=t.dist)-(e.dist<=t.dist)});for(var l=0,h=a.length;ld/2&&h.theta<3*d/2,a=v?h.theta+d:h.theta;v?(o-=Math.abs(Math.cos(h.theta)*s.width),u+=Math.sin(h.theta)*s.width):t.id==this.viz.root&&(o-=s.width/2)}i.save(),i.translate(o,u),i.rotate(a),i.fillText(t.name,0,0),i.restore()}}),n.Label.SVG=new t({Implements:d.Label.SVG,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz,s=this.viz.canvas,o=s.getSize(),u={x:Math.round(r.x+o.width/2),y:Math.round(r.y+o.height/2)};e.setAttribute("x",u.x),e.setAttribute("y",u.y);var a=e.getBBox();if(a){var f=e.getAttribute("x"),l=e.getAttribute("y"),c=t.pos.getp(!0),h=Math.PI,p=c.theta>h/2&&c.theta<3*h/2;p?(e.setAttribute("x",f-a.width),e.setAttribute("y",l-a.height)):t.id==i.root&&e.setAttribute("x",f-a.width/2);var d=p?c.theta+h:c.theta;t._depth&&e.setAttribute("transform","rotate("+d*360/(2*h)+" "+f+" "+l+")")}n.onPlaceLabel(e,t)}}),n.Label.HTML=new t({Implements:d.Label.HTML,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.clone(),i=this.viz.canvas,s=t.getData("height"),o=(s||t._depth==0?s:this.viz.config.levelDistance)/2,u=i.getSize();r.rho+=o,r=r.getc(!0);var a={x:Math.round(r.x+u.width/2),y:Math.round(r.y+u.height/2)},f=e.style;f.left=a.x+"px",f.top=a.y+"px",f.display=this.fitsInCanvas(a,i)?"":"none",n.onPlaceLabel(e,t)}}),n.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1),anglecontains:function(e,t){var n=e.getData("span")/2,r=e.pos.theta,i=r-n,s=r+n;i<0&&(i+=Math.PI*2);var o=Math.atan2(t.y,t.x);return o<0&&(o+=Math.PI*2),i>s?o>i&&o<=Math.PI*2||oi&&o=s*o&&n<=s*o+i}return!1}},"gradient-multipie":{render:function(t,n){var r=n.getCtx(),i=t.getData("height"),s=i?i:this.config.levelDistance,o=r.createRadialGradient(0,0,t.getPos().rho,0,0,t.getPos().rho+s),u=e.hexToRgb(t.getData("color")),a=[];e.each(u,function(e){a.push(parseInt(e*.5,10))});var f=e.rgbToHex(a);o.addColorStop(0,f),o.addColorStop(1,t.getData("color")),r.fillStyle=o,this.nodeTypes.multipie.render.call(this,t,n)},contains:function(e,t){return this.nodeTypes.multipie.contains.call(this,e,t)}},"gradient-pie":{render:function(t,n){var r=n.getCtx(),i=r.createRadialGradient(0,0,0,0,0,t.getPos().rho),s=e.hexToRgb(t.getData("color")),o=[];e.each(s,function(e){o.push(parseInt(e*.5,10))});var u=e.rgbToHex(o);i.addColorStop(1,u),i.addColorStop(0,t.getData("color")),r.fillStyle=i,this.nodeTypes.pie.render.call(this,t,n)},contains:function(e,t){return this.nodeTypes.pie.contains.call(this,e,t)}}}),n.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);this.edgeHelper.line.render(n,r,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.line.contains(n,r,t,this.edge.epsilon)}},arrow:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.getData("dim"),s=e.data.$direction,o=s&&s.length>1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}},hyperline:{render:function(e,t){var n=e.nodeFrom.pos.getc(),r=e.nodeTo.pos.getc(),i=Math.max(n.norm(),r.norm());this.edgeHelper.hyperline.render(n.$scale(1/i),r.$scale(1/i),i,t)},contains:e.lambda(!1)}})}($jit.Sunburst),$jit.Sunburst.Plot.NodeTypes.implement({"piechart-stacked":{render:function(t,n){var r=t.pos.getp(!0),i=t.getData("dimArray"),s=t.getData("valueArray"),o=t.getData("colorArray"),u=o.length,a=t.getData("stringArray"),f=t.getData("span")/2,c=t.pos.theta,h=c-f,p=c+f,d=new l,v=n.getCtx(),m={},g=t.getData("gradient"),y=t.getData("border"),b=t.getData("config"),w=b.showLabels,E=b.resizeLabels,S=b.Label,x=b.sliceOffset*Math.cos((h+p)/2),T=b.sliceOffset*Math.sin((h+p)/2);if(o&&i&&a){for(var N=0,C=i.length,k=0,L=0;N>0}),P=e.rgbToHex(D);M.addColorStop(0,O),M.addColorStop(.5,O),M.addColorStop(1,P),v.fillStyle=M}d.rho=k+b.sliceOffset,d.theta=h;var H=d.getc(!0);d.theta=p;var B=d.getc(!0);d.rho+=A;var j=d.getc(!0);d.theta=h;var F=d.getc(!0);v.beginPath(),v.arc(x,T,k+.01,h,p,!1),v.arc(x,T,k+A+.01,p,h,!0),v.fill(),y&&y.name==a[N]&&(m.acum=k,m.dimValue=i[N],m.begin=h,m.end=p),k+=A||0,L+=s[N]||0}if(y){v.save(),v.globalCompositeOperation="source-over",v.lineWidth=2,v.strokeStyle=y.color;var I=h>0;R=R<+E?+E:R,v.font=S.style+" "+R+"px "+S.family,v.textBaseline="middle",v.textAlign="center",d.rho=k+b.labelOffset+b.sliceOffset,d.theta=t.pos.theta;var U=d.getc(!0);v.fillText(t.name,U.x,U.y),v.restore()}}},contains:function(e,t){if(this.nodeTypes.none.anglecontains.call(this,e,t)){var n=Math.sqrt(t.x*t.x+t.y*t.y),r=this.config.levelDistance,i=e._depth,s=e.getData("config");if(n<=r*i+s.sliceOffset){var o=e.getData("dimArray");for(var u=0,a=o.length,f=s.sliceOffset;u=f&&n<=f+l)return{name:e.getData("stringArray")[u],color:e.getData("colorArray")[u],value:e.getData("valueArray")[u],label:e.name};f+=l}}return!1}return!1}}}),$jit.PieChart=new t({sb:null,colors:["#416D9C","#70A35E","#EBB056","#C74243","#83548B","#909291","#557EAA"],selected:{},busy:!1,initialize:function(t){this.controller=this.config=e.merge(i("Canvas","PieChart","Label"),{Label:{type:"Native"}},t),this.initializeViz()},initializeViz:function(){var e=this.config,t=this,n=e.type.split(":")[0],r=new $jit.Sunburst({injectInto:e.injectInto,useCanvas:e.useCanvas,withLabels:e.Label.type!="Native",Label:{type:e.Label.type},Node:{overridable:!0,type:"piechart-"+n,width:1,height:1},Edge:{type:"none"},Tips:{enable:e.Tips.enable,type:"Native",force:!0,onShow:function(t,n,r){var i=r;e.Tips.onShow(t,i,n)}},Events:{enable:!0,type:"Native",onClick:function(t,n,r){if(!e.Events.enable)return;var i=n.getContains();e.Events.onClick(i,n,r)},onMouseMove:function(n,r,i){if(!e.hoveredColor)return;if(n){var s=r.getContains();t.select(n.id,s.name,s.index)}else t.select(!1,!1,!1)}},onCreateLabel:function(t,n){var r=e.Label;if(e.showLabels){var i=t.style;i.fontSize=r.size+"px",i.fontFamily=r.family,i.color=r.color,i.textAlign="center",t.innerHTML=n.name}},onPlaceLabel:function(n,r){if(!e.showLabels)return;var i=r.pos.getp(!0),s=r.getData("dimArray"),o=r.getData("span")/2,u=r.pos.theta,a=u-o,f=u+o,c=new l,h=e.showLabels,p=e.resizeLabels,d=e.Label;if(s){for(var v=0,m=s.length,g=0;v>0;b=b<+p?+p:b,n.style.fontSize=b+"px",c.rho=g+e.labelOffset+e.sliceOffset,c.theta=(a+f)/2;var i=c.getc(!0),w=t.canvas.getSize(),E={x:Math.round(i.x+w.width/2),y:Math.round(i.y+w.height/2)};n.style.left=E.x+"px",n.style.top=E.y+"px"}}}),i=r.canvas.getSize(),s=Math.min;r.config.levelDistance=s(i.width,i.height)/2-e.offset-e.sliceOffset,this.sb=r,this.canvas=this.sb.canvas,this.canvas.getCtx().globalCompositeOperation="lighter"},loadJSON:function(t){var n=e.time(),r=[],i=this.sb,s=e.splat(t.label),o=s.length,u=e.splat(t.color||this.colors),a=u.length,f=this.config,l=!!f.type.split(":")[1],c=f.animate,h=o==1;for(var p=0,d=t.values,v=d.length;pi?t:i}),t},normalizeDims:function(){var t=this.sb.graph.getNode(this.sb.root),n=0;t.eachAdjacency(function(){n++});var r=this.getMaxValue()||1,i=this.config,s=i.animate,o=this.sb.config.levelDistance;this.sb.graph.eachNode(function(t){var n=0,u=[];e.each(t.getData("valueArray"),function(e){n+=+e,u.push(1)});var a=u.length==1&&!i.updateHeights;if(s){t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return a?o:e*o/r}),"end");var f=t.getData("dimArray");f||t.setData("dimArray",u)}else t.setData("dimArray",e.map(t.getData("valueArray"),function(e){return a?o:e*o/r}));t.setData("normalizedDim",n/r)})}}),b.TM={},b.TM.SliceAndDice=new t({compute:function(e){var t=this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root);this.controller.onBeforeCompute(t);var n=this.canvas.getSize(),r=this.config,i=n.width,s=n.height;this.graph.computeLevels(this.root,0,"ignore"),t.getPos(e).setc(-i/2,-s/2),t.setData("width",i,e),t.setData("height",s+r.titleHeight,e),this.computePositions(t,t,this.layout.orientation,e),this.controller.onAfterCompute(t)},computePositions:function(e,t,n,r){var i=0;e.eachSubnode(function(e){i+=e.getData("area",r)});var s=this.config,o=s.offset,u=e.getData("width",r),a=e.getData("height",r)-s.titleHeight,f=e==t?1:t.getData("area",r)/i,l,c,h,p,d,v,m,g=n=="h";g?(n="v",l=a,c=u*f,h="height",p="y",d="x",v=s.titleHeight,m=0):(n="h",l=a*f,c=u,h="width",p="x",d="y",v=0,m=s.titleHeight);var y=t.getPos(r);t.setData("width",c,r),t.setData("height",l,r);var b=0,w=this;t.eachSubnode(function(e){var i=e.getPos(r);i[p]=b+y[p]+v,i[d]=y[d]+m,w.computePositions(t,e,n,r),b+=e.getData(h,r)})}}),b.TM.Area={compute:function(e){e=e||"current";var t=this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root);this.controller.onBeforeCompute(t);var n=this.config,r=this.canvas.getSize(),i=r.width,s=r.height,o=n.offset,u=i-o,a=s-o;this.graph.computeLevels(this.root,0,"ignore"),t.getPos(e).setc(-i/2,-s/2),t.setData("width",i,e),t.setData("height",s,e);var f={top:-s/2+n.titleHeight,left:-i/2,width:u,height:a-n.titleHeight};this.computePositions(t,f,e),this.controller.onAfterCompute(t)},computeDim:function(e,t,n,r,i,s){if(e.length+t.length==1){var o=e.length==1?e:t;this.layoutLast(o,n,r,s);return}e.length>=2&&t.length==0&&(t=[e.shift()]);if(e.length==0){t.length>0&&this.layoutRow(t,n,r,s);return}var u=e[0];if(i(t,n)>=i([u].concat(t),n))this.computeDim(e.slice(1),t.concat([u]),n,r,i,s);else{var a=this.layoutRow(t,n,r,s);this.computeDim(e,[],a.dim,a,i,s)}},worstAspectRatio:function(e,t){if(!e||e.length==0)return Number.MAX_VALUE;var n=0,r=0,i=Number.MAX_VALUE;for(var s=0,o=e.length;su?r:u}var a=t*t,f=n*n;return Math.max(a*r/f,f/(a*i))},avgAspectRatio:function(e,t){if(!e||e.length==0)return Number.MAX_VALUE;var n=0;for(var r=0,i=e.length;ro?t/o:o/t}return n/i},layoutLast:function(e,t,n,r){var i=e[0];i.getPos(r).setc(n.left,n.top),i.setData("width",n.width,r),i.setData("height",n.height,r)}},b.TM.Squarified=new t({Implements:b.TM.Area,computePositions:function(e,t,n){var r=this.config;t.width>=t.height?this.layout.orientation="h":this.layout.orientation="v";var i=e.getSubnodes([1,1],"ignore");if(i.length>0){this.processChildrenLayout(e,i,t,n);for(var s=0,o=i.length;s0){this.processChildrenLayout(e,r,t,n);for(var s=0,o=r.length;sa&&(a=t)});var f=this.graph.getNode(this.clickedNode&&this.clickedNode.id||t.id),l=Math.min(a,u-1),c=f._depth;this.layout.horizontal()?this.computeSubtree(f,-i/2,-s/2,i/(l+1),s,c,l,e):this.computeSubtree(f,-i/2,-s/2,i,s/(l+1),c,l,e)},computeSubtree:function(t,n,r,i,s,o,u,a){t.getPos(a).setc(n,r),t.setData("width",i,a),t.setData("height",s,a);var f,l=0,c=0,h=d.Util.getSubnodes(t,[1,1]);if(!h.length)return;e.each(h,function(e){c+=e.getData("dim")});for(var p=0,v=h.length;p>0}));d.addColorStop(0,p),d.addColorStop(1,v),h.fillStyle=d}a&&(h.strokeStyle=a,h.lineWidth=3),h.fillRect(l,c,Math.max(0,o-s),Math.max(0,u-s)),a&&h.strokeRect(f.x,f.y,o,u)},contains:function(e,t){if(this.viz.clickedNode&&!$jit.Graph.Util.isDescendantOf(e,this.viz.clickedNode.id))return!1;var n=e.pos.getc(!0),r=e.getData("width"),i=e.getData("height");return this.nodeHelper.rectangle.contains({x:n.x+r/2,y:n.y+i/2},t,r,i)}}}),$jit.Icicle.Plot.EdgeTypes=new t({none:e.empty}),b.ForceDirected=new t({getOptions:function(e){var t=this.canvas.getSize(),n=t.width,r=t.height,i=0;this.graph.eachNode(function(e){i++});var s=n*r/i,o=Math.sqrt(s),u=this.config.levelDistance;return{width:n,height:r,tstart:n*.1,nodef:function(e){return s/(e||1)},edgef:function(e){return o*(e-u)}}},compute:function(t,n){var r=e.splat(t||["current","start","end"]),i=this.getOptions();w.compute(this.graph,r,this.config),this.graph.computeLevels(this.root,0,"ignore"),this.graph.eachNode(function(t){e.each(r,function(n){var s=t.getPos(n);s.equals(h.KER)&&(s.x=i.width/5*(Math.random()-.5),s.y=i.height/5*(Math.random()-.5)),t.disp={},e.each(r,function(e){t.disp[e]=p(0,0)})})}),this.computePositions(r,i,n)},computePositions:function(e,t,n){var r=this.config.iterations,i=0,s=this;if(n)(function o(){for(var u=n.iter,a=0;a=r){n.onComplete();return}}n.onStep(Math.round(i/(r-1)*100)),setTimeout(o,1)})();else for(;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.ForceDirected),$jit.TM={};var E=$jit.TM;$jit.TM.$extend=!0,E.Base={layout:{orientation:"h",vertical:function(){return this.orientation=="v"},horizontal:function(){return this.orientation=="h"},change:function(){this.orientation=this.vertical()?"h":"v"}},initialize:function(t){var n={orientation:"h",titleHeight:13,offset:2,levelsToShow:0,constrained:!1,animate:!1,Node:{type:"rectangle",overridable:!0,width:3,height:3,color:"#444"},Label:{textAlign:"center",textBaseline:"top"},Edge:{type:"none"},duration:700,fps:45};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),n,t),this.layout.orientation=this.config.orientation;var r=this.config;r.useCanvas?(this.canvas=r.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(r.background&&(r.background=e.merge({type:"Circles"},r.background)),this.canvas=new f(this,r),this.config.labelContainer=(typeof r.injectInto=="string"?r.injectInto:r.injectInto.id)+"-label"),this.graphOptions={complex:!0,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new E.Label[r.Label.type](this),this.fx=new E.Plot(this),this.op=new E.Op(this),this.group=new E.Group(this),this.geom=new E.Geom(this),this.clickedNode=null,this.busy=!1,this.initializeExtras()},refresh:function(){if(this.busy)return;this.busy=!0;var t=this;if(this.config.animate)this.compute("end"),this.config.levelsToShow>0&&this.geom.setRightLevelToShow(this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root)),this.fx.animate(e.merge(this.config,{modes:["linear","node-property:width:height"],onComplete:function(){t.busy=!1}}));else{var n=this.config.Label.type;if(n!="Native"){var t=this;this.graph.eachNode(function(e){t.labels.hideLabel(e,!1)})}this.busy=!1,this.compute(),this.config.levelsToShow>0&&this.geom.setRightLevelToShow(this.graph.getNode(this.clickedNode&&this.clickedNode.id||this.root)),this.plot()}},plot:function(){this.fx.plot()},leaf:function(e){return e.getSubnodes([1,1],"ignore").length==0},enter:function(e){if(this.busy)return;this.busy=!0;var t=this,n=this.config,r=this.graph,i=e,s=this.clickedNode,o={onComplete:function(){n.levelsToShow>0&&t.geom -.setRightLevelToShow(e),(n.levelsToShow>0||n.request)&&t.compute(),n.animate?(r.nodeList.setData("alpha",0,"end"),e.eachSubgraph(function(e){e.setData("alpha",1,"end")},"ignore"),t.fx.animate({duration:500,modes:["node-property:alpha"],onComplete:function(){t.clickedNode=i,t.compute("end"),t.clickedNode=s,t.fx.animate({modes:["linear","node-property:width:height"],duration:1e3,onComplete:function(){t.busy=!1,t.clickedNode=i}})}})):(t.busy=!1,t.clickedNode=e,t.refresh())}};n.request?this.requestNodes(i,o):o.onComplete()},out:function(){if(this.busy)return;this.busy=!0,this.events.hoveredNode=!1;var e=this,t=this.config,n=this.graph,r=n.getNode(this.clickedNode&&this.clickedNode.id||this.root).getParents(),i=r[0],s=i,o=this.clickedNode;if(!i){this.busy=!1;return}callback={onComplete:function(){e.clickedNode=i,t.request?e.requestNodes(i,{onComplete:function(){e.compute(),e.plot(),e.busy=!1}}):(e.compute(),e.plot(),e.busy=!1)}},t.levelsToShow>0&&this.geom.setRightLevelToShow(i),t.animate?(this.clickedNode=s,this.compute("end"),this.clickedNode=o,this.fx.animate({modes:["linear","node-property:width:height"],duration:1e3,onComplete:function(){e.clickedNode=s,n.eachNode(function(e){e.setDataset(["current","end"],{alpha:[0,1]})},"ignore"),o.eachSubgraph(function(e){e.setData("alpha",1)},"ignore"),e.fx.animate({duration:500,modes:["node-property:alpha"],onComplete:function(){callback.onComplete()}})}})):callback.onComplete()},requestNodes:function(t,n){var r=e.merge(this.controller,n),i=this.config.levelsToShow;if(r.request){var s=[],o=t._depth;t.eachLevel(0,i,function(e){var t=i-(e._depth-o);e.drawn&&!e.anySubnode()&&t>0&&(s.push(e),e._level=t)}),this.group.requestNodes(s,r)}else r.onComplete()}},E.Op=new t({Implements:d.Op,initialize:function(e){this.viz=e}}),E.Geom=new t({Implements:d.Geom,getRightLevelToShow:function(){return this.viz.config.levelsToShow},setRightLevelToShow:function(e){var t=this.getRightLevelToShow(),n=this.viz.labels;e.eachLevel(0,t+1,function(r){var i=r._depth-e._depth;i>t?(r.drawn=!1,r.exist=!1,r.ignore=!0,n.hideLabel(r,!1)):(r.drawn=!0,r.exist=!0,delete r.ignore)}),e.drawn=!0,delete e.ignore}}),E.Group=new t({initialize:function(e){this.viz=e,this.canvas=e.canvas,this.config=e.config},requestNodes:function(e,t){var n=0,r=e.length,i={},s=function(){t.onComplete()},o=this.viz;r==0&&s();for(var u=0;u>0}));v.addColorStop(0,m),v.addColorStop(1,g),h.fillStyle=v}h.fillRect(p,d,f-o,l-o),c&&(h.save(),h.strokeStyle=c,h.strokeRect(p,d,f-o,l-o),h.restore())}else u>0&&(h.fillRect(a.x+o/2,a.y+o/2,f-o,u-o),c&&(h.save(),h.strokeStyle=c,h.strokeRect(a.x+o/2,a.y+o/2,f-o,l-o),h.restore()))},contains:function(e,t){if(this.viz.clickedNode&&!e.isDescendantOf(this.viz.clickedNode.id)||e.ignore)return!1;var n=e.pos.getc(!0),r=e.getData("width"),i=this.viz.leaf(e),s=i?e.getData("height"):this.config.titleHeight;return this.nodeHelper.rectangle.contains({x:n.x+r/2,y:n.y+s/2},t,r,s)}}}),E.Plot.EdgeTypes=new t({none:e.empty}),E.SliceAndDice=new t({Implements:[y,a,E.Base,b.TM.SliceAndDice]}),E.Squarified=new t({Implements:[y,a,E.Base,b.TM.Squarified]}),E.Strip=new t({Implements:[y,a,E.Base,b.TM.Strip]}),$jit.RGraph=new t({Implements:[y,a,b.Radial],initialize:function(t){var n=$jit.RGraph,r={interpolation:"linear",levelDistance:100};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),r,t);var s=this.config;s.useCanvas?(this.canvas=s.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(s.background&&(s.background=e.merge({type:"Circles"},s.background)),this.canvas=new f(this,s),this.config.labelContainer=(typeof s.injectInto=="string"?s.injectInto:s.injectInto.id)+"-label"),this.graphOptions={complex:!1,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new n.Label[s.Label.type](this),this.fx=new n.Plot(this,n),this.op=new n.Op(this),this.json=null,this.root=null,this.busy=!1,this.parent=!1,this.initializeExtras()},createLevelDistanceFunc:function(){var e=this.config.levelDistance;return function(t){return(t._depth+1)*e}},refresh:function(){this.compute(),this.plot()},reposition:function(){this.compute("end")},plot:function(){this.fx.plot()},getNodeAndParentAngle:function(e){var t=!1,n=this.graph.getNode(e),r=n.getParents(),i=r.length>0?r[0]:!1;if(i){var s=i.pos.getc(),o=n.pos.getc(),u=s.add(o.scale(-1));t=Math.atan2(u.y,u.x),t<0&&(t+=2*Math.PI)}return{parent:i,theta:t}},tagChildren:function(e,t){if(e.angleSpan){var n=[];e.eachAdjacency(function(e){n.push(e.nodeTo)},"ignore");var r=n.length;for(var i=0;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.RGraph),h.prototype.moebiusTransformation=function(e){var t=this.add(e),n=e.$conjugate().$prod(this);return n.x++,t.$div(n)},d.Util.moebiusTransformation=function(e,t,n,r,i){this.eachNode(e,function(e){for(var i=0;i=2)return i(s-.01)}return i(.75)},getRadius:function(){var e=this.config.radius;if(e!=="auto")return e;var t=this.canvas.getSize();return Math.min(t.width,t.height)/2},refresh:function(e){e?(this.reposition(),this.graph.eachNode(function(e){e.startPos.rho=e.pos.rho=e.endPos.rho,e.startPos.theta=e.pos.theta=e.endPos.theta})):this.compute(),this.plot()},reposition:function(){this.compute("end");var e=this.graph.getNode(this.root).pos.getc().scale(-1);d.Util.moebiusTransformation(this.graph,[e],["end"],"end","ignore"),this.graph.eachNode(function(e){e.ignore&&(e.endPos.rho=e.pos.rho,e.endPos.theta=e.pos.theta)})},plot:function(){this.fx.plot()},onClick:function(e,t){var n=this.graph.getNode(e).pos.getc(!0);this.move(n,t)},move:function(t,n){var r=p(t.x,t.y);if(this.busy===!1&&r.norm()<1){this.busy=!0;var i=this.graph.getClosestNodeToPos(r),s=this;this.graph.computeLevels(i.id,0),this.controller.onBeforeCompute(i),n=e.merge({onComplete:e.empty},n||{}),this.fx.animate(e.merge({modes:["moebius"],hideLabels:!0},n,{onComplete:function(){s.busy=!1,n.onComplete()}}),r)}}}),$jit.Hypertree.$extend=!0,function(n){n.Op=new t({Implements:d.Op}),n.Plot=new t({Implements:d.Plot}),n.Label={},n.Label.Native=new t({Implements:d.Label.Native,initialize:function(e){this.viz=e},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0),s=this.viz.getRadius();r.fillText(t.name,i.x*s,i.y*s)}}),n.Label.SVG=new t({Implements:d.Label.SVG,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.canvas,s=i.translateOffsetX,o=i.translateOffsetY,u=i.scaleOffsetX,a=i.scaleOffsetY,f=i.getSize(),l=this.viz.getRadius(),c={x:Math.round(r.x*u*l+s+f.width/2),y:Math.round(r.y*a*l+o+f.height/2)};e.setAttribute("x",c.x),e.setAttribute("y",c.y),n.onPlaceLabel(e,t)}}),n.Label.HTML=new t({Implements:d.Label.HTML,initialize:function(e){this.viz=e},placeLabel:function(e,t,n){var r=t.pos.getc(!0),i=this.viz.canvas,s=i.translateOffsetX,o=i.translateOffsetY,u=i.scaleOffsetX,a=i.scaleOffsetY,f=i.getSize(),l=this.viz.getRadius(),c={x:Math.round(r.x*u*l+s+f.width/2),y:Math.round(r.y*a*l+o+f.height/2)},h=e.style;h.left=c.x+"px",h.top=c.y+"px",h.display=this.fitsInCanvas(c,i)?"":"none",n.onPlaceLabel(e,t)}}),n.Plot.NodeTypes=new t({none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.circle.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.circle.contains(r,t,n)}},ellipse:{render:function(e,t){var n=e.pos.getc().$scale(e.scale),r=e.getData("width"),i=e.getData("height");this.nodeHelper.ellipse.render("fill",n,r,i,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=e.pos.getc().$scale(e.scale);return this.nodeHelper.circle.contains(i,t,n,r)}},square:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.square.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.square.contains(r,t,n)}},rectangle:{render:function(e,t){var n=this.node,r=e.getData("width"),i=e.getData("height"),s=e.pos.getc();r=n.transform?r*(1-s.squaredNorm()):r,i=n.transform?i*(1-s.squaredNorm()):i,s.$scale(e.scale),r>.2&&i>.2&&this.nodeHelper.rectangle.render("fill",s,r,i,t)},contains:function(e,t){var n=e.getData("width"),r=e.getData("height"),i=e.pos.getc().$scale(e.scale);return this.nodeHelper.square.contains(i,t,n,r)}},triangle:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.triangle.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.triangle.contains(r,t,n)}},star:{render:function(e,t){var n=this.node,r=e.getData("dim"),i=e.pos.getc();r=n.transform?r*(1-i.squaredNorm()):r,i.$scale(e.scale),r>.2&&this.nodeHelper.star.render("fill",i,r,t)},contains:function(e,t){var n=e.getData("dim"),r=e.pos.getc().$scale(e.scale);return this.nodeHelper.star.contains(r,t,n)}}}),n.Plot.EdgeTypes=new t({none:e.empty,line:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.line.render({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.line.contains({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t,this.edge.epsilon)}},arrow:{render:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale,s=e.getData("dim"),o=e.data.$direction,u=o&&o.length>1&&o[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},s,u,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0),i=e.nodeFrom.scale;this.edgeHelper.arrow.contains({x:n.x*i,y:n.y*i},{x:r.x*i,y:r.y*i},t,this.edge.epsilon)}},hyperline:{render:function(e,t){var n=e.nodeFrom.pos.getc(),r=e.nodeTo.pos.getc(),i=this.viz.getRadius();this.edgeHelper.hyperline.render(n,r,i,t)},contains:e.lambda(!1)}})}($jit.Hypertree)})(),function(){window.$jit=function(e){e=e||window;for(var t in $jit)$jit[t].$extend&&(e[t]=$jit[t])},$jit.version="2.0.0b";var e=function(e){return document.getElementById(e)};e.empty=function(){},e.extend=function(e,t){for(var n in t||{})e[n]=t[n];return e},e.lambda=function(e){return typeof e=="function"?e:function(){return e}},e.time=Date.now||function(){return+(new Date)},e.splat=function(t){var n=e.type(t);return n?n!="array"?[t]:t:[]},e.type=function(t){var n=e.type.s.call(t).match(/^\[object\s(.*)\]$/)[1].toLowerCase();return n!="object"?n:t&&t.$$family?t.$$family:t&&t.nodeName&&t.nodeType==1?"element":n},e.type.s=Object.prototype.toString,e.each=function(t,n){var r=e.type(t);if(r=="object")for(var i in t)n(t[i],i);else for(var s=0,o=t.length;s>16,e>>8&255,e&255]},e.destroy=function(t){e.clean(t),t.parentNode&&t.parentNode.removeChild(t),t.clearAttributes&&t.clearAttributes()},e.clean=function(t){for(var n=t.childNodes,r=0,i=n.length;r-1},e.addClass=function(t,n){e.hasClass(t,n)||(t.className=t.className+" "+n)},e.removeClass=function(e,t){e.className=e.className.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)"),"$1")},e.getPos=function(e){function r(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.offsetLeft,t.y+=e.offsetTop,e=e.offsetParent;return t}function i(e){var t={x:0,y:0};while(e&&!s(e))t.x+=e.scrollLeft,t.y+=e.scrollTop,e=e.parentNode;return t}function s(e){return/^(?:body|html)$/i.test(e.tagName)}var t=r(e),n=i(e);return{x:t.x-n.x,y:t.y-n.y}},e.event={get:function(e,t){return t=t||window,e||t.event},getWheel:function(e){return e.wheelDelta?e.wheelDelta/120:-(e.detail||0)/3},isRightClick:function(e){return e.which==3||e.button==2},getPos:function(e,t){t=t||window,e=e||t.event;var n=t.document;n=n.documentElement||n.body,e.touches&&e.touches.length&&(e=e.touches[0]);var r={x:e.pageX||e.clientX+n.scrollLeft,y:e.pageY||e.clientY+n.scrollTop};return r},stop:function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1}},$jit.util=$jit.id=e;var t=function(n){n=n||{};var r=function(){for(var n in this)typeof this[n]!="function"&&(this[n]=e.unlink(this[n]));this.constructor=r;if(t.prototyping)return this;var i=this.initialize?this.initialize.apply(this,arguments):this;return this.$$family="class",i};for(var i in t.Mutators){if(!n[i])continue;n=t.Mutators[i](n,n[i]),delete n[i]}return e.extend(r,this),r.constructor=t,r.prototype=n,r};t.Mutators={Implements:function(n,r){return e.each(e.splat(r),function(e){t.prototyping=e;var r=typeof e=="function"?new e:e;for(var i in r)i in n||(n[i]=r[i]);delete t.prototyping}),n}},e.extend(t,{inherit:function(n,r){for(var i in r){var s=r[i],o=n[i],u=e.type(s);o&&u=="function"?s!=o&&t.override(n,i,s):u=="object"?n[i]=e.merge(o,s):n[i]=s}return n},override:function(e,n,r){var i=t.prototyping;i&&e[n]!=i[n]&&(i=null);var s=function(){var t=this.parent;this.parent=i?i[n]:e[n];var s=r.apply(this,arguments);return this.parent=t,s};e[n]=s}}),t.prototype.implement=function(){var n=this.prototype;return e.each(Array.prototype.slice.call(arguments||[]),function(e){t.inherit(n,e)}),this},$jit.Class=t,$jit.json={prune:function(e,t){this.each(e,function(e,n){n==t&&e.children&&(delete e.children,e.children=[])})},getParent:function(e,t){if(e.id==t)return!1;var n=e.children;if(n&&n.length>0)for(var r=0;r=(7-4*n)/11){t=r*r-Math.pow((11-6*n-11*e)/4,2);break}return t},Elastic:function(e,t){return Math.pow(2,10*--e)*Math.cos(20*e*Math.PI*(t[0]||1)/3)}};e.each(r,function(e,r){n[r]=t(e)}),e.each(["Quad","Cubic","Quart","Quint"],function(e,r){n[e]=t(function(e){return Math.pow(e,[r+2])})})})();var r=new t({initialize:function(e){this.setOptions(e)},setOptions:function(t){var r={duration:2500,fps:40,transition:n.Quart.easeInOut,compute:e.empty,complete:e.empty,link:"ignore"};return this.opt=e.merge(r,t||{}),this},step:function(){var t=e.time(),n=this.opt;if(ti.height?e.y-s.height-u:e.y+u)+"px",n.left=(e.x+s.width+o>i.width?e.x-s.width-o:e.x+o)+"px"},hide:function(e){this.tip.style.display="none",e&&this.config.onHide()}}),a.Classes.NodeStyles=new t({Implements:[s,o],initializePost:function(){this.fx=this.viz.fx,this.types=this.viz.fx.nodeTypes,this.nStyles=this.config,this.nodeStylesOnHover=this.nStyles.stylesHover,this.nodeStylesOnClick=this.nStyles.stylesClick,this.hoveredNode=!1,this.fx.nodeFxAnimation=new r,this.down=!1,this.move=!1},onMouseOut:function(e,t){this.down=this.move=!1;if(!this.hoveredNode)return;this.dom&&this.isLabel(e,t)&&this.toggleStylesOnHover(this.hoveredNode,!1);var n=e.relatedTarget,r=this.canvas.getElement();while(n&&n.parentNode){if(r==n.parentNode)return;n=n.parentNode}this.toggleStylesOnHover(this.hoveredNode,!1),this.hoveredNode=!1},onMouseOver:function(e,t){var n;if(this.dom&&(n=this.isLabel(e,t))){var r=this.viz.graph.getNode(n.id);if(r.selected)return;this.hoveredNode=r,this.toggleStylesOnHover(this.hoveredNode,!0)}},onMouseDown:function(e,t,n,r){if(r)return;var i;this.dom&&(i=this.isLabel(e,t))?this.down=this.viz.graph.getNode(i.id):this.dom||(this.down=n.getNode()),this.move=!1},onMouseUp:function(e,t,n,r){if(r)return;this.move||this.onClick(n.getNode()),this.down=this.move=!1},getRestoredStyles:function(e,t){var n={},r=this["nodeStylesOn"+t];for(var i in r)n[i]=e.styles["$"+i];return n},toggleStylesOnHover:function(e,t){this.nodeStylesOnHover&&this.toggleStylesOn("Hover",e,t)},toggleStylesOnClick:function(e,t){this.nodeStylesOnClick&&this.toggleStylesOn("Click",e,t)},toggleStylesOn:function(t,r,i){var s=this.viz,o=this.nStyles;if(i){var u=this;r.styles||(r.styles=e.merge(r.data,{}));for(var a in this["nodeStylesOn"+t]){var f="$"+a;f in r.styles||(r.styles[f]=r.getData(a))}s.fx.nodeFx(e.extend({elements:{id:r.id,properties:u["nodeStylesOn"+t]},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}else{var l=this.getRestoredStyles(r,t);s.fx.nodeFx(e.extend({elements:{id:r.id,properties:l},transition:n.Quart.easeOut,duration:300,fps:40},this.config))}},onClick:function(e){if(!e)return;var t=this.nodeStylesOnClick;if(!t)return;e.selected?(this.toggleStylesOnClick(e,!1),delete e.selected):(this.viz.graph.eachNode(function(e){if(e.selected){for(var n in t)e.setData(n,e.styles["$"+n],"end");delete e.selected}}),this.toggleStylesOnClick(e,!0),e.selected=!0,delete e.hovered,this.hoveredNode=!1)},onMouseMove:function(e,t,n){this.down&&(this.move=!0);if(this.dom&&this.isLabel(e,t))return;var r=this.nodeStylesOnHover;if(!r)return;if(!this.dom){if(this.hoveredNode){var i=this.types[this.hoveredNode.getData("type")],s=i&&i.contains&&i.contains.call(this.fx,this.hoveredNode,n.getPos());if(s)return}var o=n.getNode();if(!this.hoveredNode&&!o)return;if(o.hovered)return;o&&!o.selected?(this.fx.nodeFxAnimation.stopTimer(),this.viz.graph.eachNode(function(e){if(e.hovered&&!e.selected){for(var t in r)e.setData(t,e.styles["$"+t],"end");delete e.hovered}}),o.hovered=!0,this.hoveredNode=o,this.toggleStylesOnHover(o,!0)):this.hoveredNode&&!this.hoveredNode.selected&&(this.fx.nodeFxAnimation.stopTimer(),this.toggleStylesOnHover(this.hoveredNode,!1),delete this.hoveredNode.hovered,this.hoveredNode=!1)}}}),a.Classes.Navigation=new t({Implements:[s,o],initializePost:function(){this.pos=!1,this.pressed=!1},onMouseWheel:function(t,n,r){if(!this.config.zooming)return;if(t.target.id!="infovis-canvas")return;e.event.stop(e.event.get(t,n));var i=this.config.zooming/1e3,s=1+r*i;s>1?5>=this.canvas.scaleOffsetX&&this.canvas.scale(s,s):s<1&&this.canvas.scaleOffsetX>=.2&&this.canvas.scale(s,s)},onMouseDown:function(e,t,n){if(!this.config.panning)return;if(this.config.panning=="avoid nodes"&&n.getNode()||n.getEdge())return;this.pressed=!0,!MetamapsModel.boxStartCoordinates&&e.shiftKey&&(MetamapsModel.boxStartCoordinates=n.getPos()),MetamapsModel.didPan=!1,this.pos=n.getPos();var r=this.canvas,i=r.translateOffsetX,s=r.translateOffsetY,o=r.scaleOffsetX,u=r.scaleOffsetY;this.pos.x*=o,this.pos.x+=i,this.pos.y*=u,this.pos.y+=s},onMouseMove:function(e,t,n){if(!this.config.panning)return;if(!this.pressed)return;if(this.config.panning=="avoid nodes"&&n.getNode())return;if(!MetamapsModel.boxStartCoordinates&&e.shiftKey){Mconsole.busy=!0,MetamapsModel.boxStartCoordinates=n.getPos();return}if(MetamapsModel.boxStartCoordinates&&e.shiftKey){Mconsole.busy=!0,drawSelectBox(n,e);return}if(e.target.id!="infovis-canvas"){this.pressed=!1;return}MetamapsModel.didPan=!0;var r=this.pos,i=n.getPos(),s=this.canvas,o=s.translateOffsetX,u=s.translateOffsetY,a=s.scaleOffsetX,f=s.scaleOffsetY;i.x*=a,i.y*=f,i.x+=o,i.y+=u;var l=i.x-r.x,c=i.y-r.y;this.pos=i,this.canvas.translate(l*1/a,c*1/f)},onMouseUp:function(e,t,n,r){if(!this.config.panning)return;this.pressed=!1}});var f;(function(){function i(t,n){var i=document.createElement(t);for(var s in n)typeof n[s]=="object"?e.extend(i[s],n[s]):i[s]=n[s];return t=="canvas"&&!r&&G_vmlCanvasManager&&(i=G_vmlCanvasManager.initElement(document.body.appendChild(i))),i}var n=typeof HTMLCanvasElement,r=n=="object"||n=="function";$jit.Canvas=f=new t({canvases:[],pos:!1,element:!1,labelContainer:!1,translateOffsetX:0,translateOffsetY:0,scaleOffsetX:1,scaleOffsetY:1,initialize:function(t,n){this.viz=t,this.opt=n;var r=e.type(n.injectInto)=="string"?n.injectInto:n.injectInto.id,s=r+"-label",o=e(r),u=n.width||o.offsetWidth,a=n.height||o.offsetHeight;this.id=r;var l={injectInto:r,width:u,height:a};this.element=i("div",{id:r+"-canvaswidget",style:{position:"relative",width:u+"px",height:a+"px"}}),this.labelContainer=this.createLabelContainer(n.Label.type,s,l),this.canvases.push(new f.Base({config:e.extend({idSuffix:"-canvas"},l),plot:function(e){t.fx.plot()},resize:function(){t.refresh()}}));var c=n.background;if(c){var h=new f.Background[c.type](t,e.extend(c,l));this.canvases.push(new f.Base(h))}var p=this.canvases.length;while(p--)this.element.appendChild(this.canvases[p].canvas),p>0&&this.canvases[p].plot();this.element.appendChild(this.labelContainer),o.appendChild(this.element);var d=null,v=this;e.addEvent(window,"scroll",function(){clearTimeout(d),d=setTimeout(function(){v.getPos(!0)},500)})},getCtx:function(e){return this.canvases[e||0].getCtx()},getConfig:function(){return this.opt},getElement:function(){return this.element},getSize:function(e){return this.canvases[e||0].getSize()},resize:function(e,t){this.getPos(!0),this.translateOffsetX=this.translateOffsetY=0,this.scaleOffsetX=this.scaleOffsetY=1;for(var n=0,r=this.canvases.length;no?u=i(o+(s-r-o)*t):u=i(o-r+(s-o)*t):a>=n?s>o?u=i(o+(s-r-o)*t):u=i(o-r+(s-(o-r))*t):u=i(o+(s-o)*t);var f=(this.rho-e.rho)*t+e.rho;return{theta:u,rho:f}}};var c=function(e,t){return new l(e,t)};l.KER=c(0,0);var h=function(e,t){this.x=e,this.y=t};$jit.Complex=h,h.prototype={getc:function(){return this},getp:function(e){return this.toPolar(e)},set:function(e){e=e.getc(!0),this.x=e.x,this.y=e.y},setc:function(e,t){this.x=e,this.y=t},setp:function(e,t){this.x=Math.cos(e)*t,this.y=Math.sin(e)*t},clone:function(){return new h(this.x,this.y)},toPolar:function(e){var t=this.norm(),n=Math.atan2(this.y,this.x);return n<0&&(n+=Math.PI*2),e?{theta:n,rho:t}:new l(n,t)},norm:function(){return Math.sqrt(this.squaredNorm())},squaredNorm:function(){return this.x*this.x+this.y*this.y},add:function(e){return new h(this.x+e.x,this.y+e.y)},prod:function(e){return new h(this.x*e.x-this.y*e.y,this.y*e.x+this.x*e.y)},conjugate:function(){return new h(this.x,-this.y)},scale:function(e){return new h(this.x*e,this.y*e)},equals:function(e){return this.x==e.x&&this.y==e.y},$add:function(e){return this.x+=e.x,this.y+=e.y,this},$prod:function(e){var t=this.x,n=this.y;return this.x=t*e.x-n*e.y,this.y=n*e.x+t*e.y,this},$conjugate:function(){return this.y=-this.y,this},$scale:function(e){return this.x*=e,this.y*=e,this},$div:function(e){var t=this.x,n=this.y,r=e.squaredNorm();return this.x=t*e.x+n*e.y,this.y=n*e.x-t*e.y,this.$scale(1/r)}};var p=function(e,t){return new h(e,t)};h.KER=p(0,0),$jit.Graph=new t({initialize:function(t,n,r,i){var s={complex:!1,Node:{}};this.Node=n,this.Edge=r,this.Label=i,this.opt=e.merge(s,t||{}),this.nodes={},this.edges={};var o=this;this.nodeList={};for(var u in v)o.nodeList[u]=function(e){return function(){var t=Array.prototype.slice.call(arguments);o.eachNode(function(n){n[e].apply(n,t)})}}(u)},getNode:function(e){return this.hasNode(e)?this.nodes[e]:!1},getByName:function(e){for(var t in this.nodes){var n=this.nodes[t];if(n.name==e)return n}return!1},getAdjacence:function(e,t){return e in this.edges?this.edges[e][t]:!1},addNode:function(t){if(!this.nodes[t.id]){var n=this.edges[t.id]={};this.nodes[t.id]=new d.Node(e.extend({id:t.id,name:t.name,data:e.merge(t.data||{},{}),adjacencies:n},this.opt.Node),this.opt.complex,this.Node,this.Edge,this.Label)}return this.nodes[t.id]},addAdjacence:function(e,t,n){this.hasNode(e.id)||this.addNode(e),this.hasNode(t.id)||this.addNode(t),e=this.nodes[e.id],t=this.nodes[t.id];if(!e.adjacentTo(t)){var r=this.edges[e.id]=this.edges[e.id]||{},i=this.edges[t.id]=this.edges[t.id]||{};return r[t.id]=i[e.id]=new d.Adjacence(e,t,n,this.Edge,this.Label),r[t.id]}return this.edges[e.id][t.id]},removeNode:function(e){if(this.hasNode(e)){delete this.nodes[e];var t=this.edges[e];for(var n in t)delete this.edges[n][e];delete this.edges[e]}},removeAdjacence:function(e,t){delete this.edges[e][t],delete this.edges[t][e]},hasNode:function(e){return e in this.nodes},empty:function(){this.nodes={},this.edges={}}});var d=$jit.Graph,v;(function(){var t=function(e,t,n,r,i){var s;n=n||"current",e="$"+(e?e+"-":""),n=="current"?s=this.data:n=="start"?s=this.startData:n=="end"&&(s=this.endData);var o=e+t;return r?s[o]:this.Config.overridable?o in s?s[o]:o in this.data?this.data[o]:i[t]||0:i[t]||0},n=function(e,t,n,r){r=r||"current",e="$"+(e?e+"-":"");var i;r=="current"?i=this.data:r=="start"?i=this.startData:r=="end"&&(i=this.endData),i[e+t]=n},r=function(t,n){t="$"+(t?t+"-":"");var r=this;e.each(n,function(e){var n=t+e;delete r.data[n],delete r.endData[n],delete r.startData[n]})};v={getData:function(e,n,r){return t.call(this,"",e,n,r,this.Config)},setData:function(e,t,r){n.call(this,"",e,t,r)},setDataset:function(t,n){t=e.splat(t);for(var r in n)for(var i=0,s=e.splat(n[r]),o=t.length;i=t&&i<=n&&o(e)&&r(e,i),ii&&a(r,t,n)})}(e,t+s,n+s)},eachSubgraph:function(e,t,n){this.eachLevel(e,0,!1,t,n)},eachSubnode:function(e,t,n){this.eachLevel(e,1,1,t,n)},anySubnode:function(t,n,r){var i=!1;n=n||e.lambda(!0);var s=e.type(n)=="string"?function(e){return e[n]}:n;return this.eachSubnode(t,function(e){s(e)&&(i=!0)},r),i},getSubnodes:function(t,n,r){var i=[],s=this;n=n||0;var o,u;return e.type(n)=="array"?(o=n[0],u=n[1]):(o=n,u=Number.MAX_VALUE-t._depth),this.eachLevel(t,o,u,function(e){i.push(e)},r),i},getParents:function(e){var t=[];return this.eachAdjacency(e,function(n){var r=n.nodeTo;r._depth-1?t.endData[i]=r[i]:t.data[i]=r[i]}}),i.graph.eachNode(function(e){if(e.ignore)return;e.eachAdjacency(function(e){if(e.nodeFrom.ignore||e.nodeTo.ignore)return;var t=u.getNode(e.nodeFrom.id),n=u.getNode(e.nodeTo.id);if(!t.adjacentTo(n)){var e=i.graph.getAdjacence(t.id,n.id);f=!0,e.setData("alpha",1),e.setData("alpha",1,"start"),e.setData("alpha",0,"end")}})});var f=this.preprocessSum(u),c=f?["node-property:alpha","edge-property:alpha"]:["node-property:alpha"];c[0]=c[0]+(r&&"node-property"in r?":"+e.splat(r["node-property"]).join(":"):""),c[1]=(c[1]||"edge-property:alpha")+(r&&"edge-property"in r?":"+e.splat(r["edge-property"]).join(":"):""),r&&"label-property"in r&&c.push("label-property:"+e.splat(r["label-property"]).join(":")),i.reposition(),i.graph.eachNode(function(e){e.id!=o&&e.pos.getp().equals(l.KER)&&(e.pos.set(e.endPos),e.startPos.set(e.endPos))}),i.fx.animate(e.merge(s,{modes:["polar"].concat(c),onComplete:function(){i.graph.eachNode(function(e){e.ignore&&i.graph.removeNode(e.id)}),i.graph.eachNode(function(e){e.eachAdjacency(function(e){e.ignore&&i.graph.removeAdjacence(e.nodeFrom.id,e.nodeTo.id)})}),s.onComplete()}}));break;default:}},contract:function(t,n){var r=this.viz;if(t.collapsed||!t.anySubnode(e.lambda(!0)))return;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),t.collapsed=!0,function i(e){e.eachSubnode(function(e){e.ignore=!0,e.setData("alpha",0,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),function s(e){e.eachSubnode(function(e){e.setPos(t.getPos("end"),"end"),s(e)})}(t),r.fx.animate(n)):n.type=="replot"&&r.refresh()},expand:function(t,n){if(!("collapsed"in t))return;var r=this.viz;n=e.merge(this.options,r.config,n||{},{modes:["node-property:alpha:span","linear"]}),delete t.collapsed,function i(e){e.eachSubnode(function(e){delete e.ignore,e.setData("alpha",1,n.type=="animate"?"end":"current"),i(e)})}(t),n.type=="animate"?(r.compute("end"),r.rotated&&r.rotate(r.rotated,"none",{property:"end"}),r.fx.animate(n)):n.type=="replot"&&r.refresh()},preprocessSum:function(e){var t=this.viz;e.eachNode(function(e){if(!t.graph.hasNode(e.id)){t.graph.addNode(e);var n=t.graph.getNode(e.id);n.setData("alpha",0),n.setData("alpha",0,"start"),n.setData("alpha",1,"end")}});var n=!1;return e.eachNode(function(e){e.eachAdjacency(function(e){var r=t.graph.getNode(e.nodeFrom.id),i=t.graph.getNode(e.nodeTo.id);if(!r.adjacentTo(i)){var e=t.graph.addAdjacence(r,i,e.data);r.startAlpha==r.endAlpha&&i.startAlpha==i.endAlpha&&(n=!0,e.setData("alpha",0),e.setData("alpha",0,"start"),e.setData("alpha",1,"end"))}})}),n}};var m={none:{render:e.empty,contains:e.lambda(!1)},circle:{render:function(e,t,n,r){var i=r.getCtx();i.beginPath(),i.arc(t.x,t.y,n,0,Math.PI*2,!0),i.closePath(),i[e]()},contains:function(e,t,n){var r=e.x-t.x,i=e.y-t.y,s=r*r+i*i;return s<=n*n}},ellipse:{render:function(e,t,n,r,i){var s=i.getCtx();r/=2,n/=2,s.save(),s.scale(n/r,r/n),s.beginPath(),s.arc(t.x*(r/n),t.y*(n/r),r,0,Math.PI*2,!0),s.closePath(),s[e](),s.restore()},contains:function(e,t,n,r){n/=2,r/=2;var i=(n+r)/2,s=e.x-t.x,o=e.y-t.y,u=s*s+o*o;return u<=i*i}},square:{render:function(e,t,n,r){r.getCtx()[e+"Rect"](t.x-n,t.y-n,2*n,2*n)},contains:function(e,t,n){return Math.abs(t.x-e.x)<=n&&Math.abs(t.y-e.y)<=n}},rectangle:{render:function(e,t,n,r,i){i.getCtx()[e+"Rect"](t.x-n/2,t.y-r/2,n,r)},contains:function(e,t,n,r){return Math.abs(t.x-e.x)<=n/2&&Math.abs(t.y-e.y)<=r/2}},triangle:{render:function(e,t,n,r){var i=r.getCtx(),s=t.x,o=t.y-n,u=s-n,a=t.y+n,f=s+n,l=a;i.beginPath(),i.moveTo(s,o),i.lineTo(u,a),i.lineTo(f,l),i.closePath(),i[e]()},contains:function(e,t,n){return m.circle.contains(e,t,n)}},star:{render:function(e,t,n,r){var i=r.getCtx(),s=Math.PI/5;i.save(),i.translate(t.x,t.y),i.beginPath(),i.moveTo(n,0);for(var o=0;o<9;o++)i.rotate(s),o%2==0?i.lineTo(n/.525731*.200811,0):i.lineTo(n,0);i.closePath(),i[e](),i.restore()},contains:function(e,t,n){return m.circle.contains(e,t,n)}}},g={line:{render:function(e,t,n){var r=n.getCtx();r.beginPath(),r.moveTo(e.x,e.y),r.lineTo(t.x,t.y),r.stroke()},contains:function(e,t,n,r){var i=Math.min,s=Math.max,o=i(e.x,t.x),u=s(e.x,t.x),a=i(e.y,t.y),f=s(e.y,t.y);if(n.x>=o&&n.x<=u&&n.y>=a&&n.y<=f){if(Math.abs(t.x-e.x)<=r)return!0;var l=(t.y-e.y)/(t.x-e.x)*(n.x-e.x)+e.y;return Math.abs(l-n.y)<=r}return!1}},arrow:{render:function(e,t,n,r,i){var s=i.getCtx();if(r){var o=e;e=t,t=o}var u=new h(t.x-e.x,t.y-e.y);u.$scale(n/u.norm());var a=new h(t.x-u.x,t.y-u.y),f=new h(-u.y/2.5,u.x/2.5),l=a.add(f),c=a.$add(f.$scale(-1)),p=new h(t.x-e.x,t.y-e.y);p.$scale(15/p.norm());var d=new h(t.x-p.x,t.y-p.y);t.x=d.x,t.y=d.y,s.beginPath(),s.moveTo(e.x,e.y),s.lineTo(t.x,t.y),s.stroke(),s.beginPath(),s.moveTo(l.x,l.y),s.lineTo(c.x,c.y),s.lineTo(t.x,t.y),s.closePath(),s.fill()},contains:function(e,t,n,r){return g.line.contains(e,t,n,r)}},hyperline:{render:function(e,t,n,r){function f(e,t){var n=e.x*t.y-e.y*t.x,r=n,i=e.squaredNorm(),s=t.squaredNorm();if(n==0)return{x:0,y:0,ratio:-1};var o=(e.y*s-t.y*i+e.y-t.y)/n,u=(t.x*i-e.x*s+t.x-e.x)/r,a=-o/2,f=-u/2,l=(o*o+u*u)/4-1;if(l<0)return{x:0,y:0,ratio:-1};var c=Math.sqrt(l),h={x:a,y:f,ratio:c>1e3?-1:c,a:o,b:u};return h}function a(e,t){return et?!1:!0:t+Math.PI>e?!0:!1}var i=r.getCtx(),s=f(e,t);if(s.a>1e3||s.b>1e3||s.ratio<0)i.beginPath(),i.moveTo(e.x*n,e.y*n),i.lineTo(t.x*n,t.y*n),i.stroke();else{var o=Math.atan2(t.y-s.y,t.x-s.x),u=Math.atan2(e.y-s.y,e.x-s.x),a=a(o,u);i.beginPath(),i.arc(s.x*n,s.y*n,s.ratio*n,o,u,a),i.stroke()}},contains:e.lambda(!1)}};d.Plot={initialize:function(e,t){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge,this.animation=new r,this.nodeTypes=new t.Plot.NodeTypes,this.edgeTypes=new t.Plot.EdgeTypes,this.labels=e.labels},nodeHelper:m,edgeHelper:g,Interpolator:{map:{border:"color",color:"color",width:"number",height:"number",dim:"number",alpha:"number",lineWidth:"number",angularWidth:"number",span:"number",valueArray:"array-number",dimArray:"array-number"},canvas:{globalAlpha:"number",fillStyle:"color",strokeStyle:"color",lineWidth:"number",shadowBlur:"number",shadowColor:"color",shadowOffsetX:"number",shadowOffsetY:"number",miterLimit:"number"},label:{size:"number",color:"color"},compute:function(e,t,n){return e+(t-e)*n},moebius:function(e,t,n,r){var i=r.scale(-n);if(i.norm()<1){var s=i.x,o=i.y,u=e.startPos.getc().moebiusTransformation(i);e.pos.setc(u.x,u.y),i.x=s,i.y=o}},linear:function(e,t,n){var r=e.startPos.getc(!0),i=e.endPos.getc(!0);e.pos.setc(this.compute(r.x,i.x,n),this.compute(r.y,i.y,n))},polar:function(e,t,n){var r=e.startPos.getp(!0),i=e.endPos.getp(),s=i.interpolate(r,n);e.pos.setp(s.theta,s.rho)},number:function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end");e[i](t,this.compute(s,o,n))},color:function(t,n,r,i,s){var o=e.hexToRgb(t[i](n,"start")),u=e.hexToRgb(t[i](n,"end")),a=this.compute,f=e.rgbToHex([parseInt(a(o[0],u[0],r)),parseInt(a(o[1],u[1],r)),parseInt(a(o[2],u[2],r))]);t[s](n,f)},"array-number":function(e,t,n,r,i){var s=e[r](t,"start"),o=e[r](t,"end"),u=[];for(var a=0,f=s.length;a=.95?o.labels.plotLabel(i,n,e):o.labels.hideLabel(n,!1)),u.restore(),n.visited=!l})},plotTree:function(e,t,n){var r=this,i=this.viz,s=i.canvas,o=this.config,u=s.getCtx(),a=e.getData("alpha");e.eachSubnode(function(i){if(t.plotSubtree(e,i)&&i.exist&&i.drawn){var o=e.getAdjacency(i.id);!n&&t.onBeforePlotLine(o),u.globalAlpha=Math.min(a,i.getData("alpha")),r.plotLine(o,s,n),!n&&t.onAfterPlotLine(o),r.plotTree(i,t,n)}}),e.drawn?(!n&&t.onBeforePlotNode(e),this.plotNode(e,s,n),!n&&t.onAfterPlotNode(e),!t.hideLabels&&t.withLabels&&a>=.95?this.labels.plotLabel(s,e,t):this.labels.hideLabel(e,!1)):this.labels.hideLabel(e,!0)},plotNode:function(e,t,n){var r=e.getData("type"),i=this.node.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=e.getData("alpha"),a=t.getCtx();a.lineWidth=s,a.fillStyle=a.strokeStyle=o,a.globalAlpha=u;for(var f in i)a[f]=e.getCanvasStyle(f);this.nodeTypes[r].render.call(this,e,t,n)}},plotLine:function(e,t,n){var r=e.getData("type"),i=this.edge.CanvasStyles;if(r!="none"){var s=e.getData("lineWidth"),o=e.getData("color"),u=t.getCtx();u.lineWidth=s,u.fillStyle=u.strokeStyle=o;for(var a in i)u[a]=e.getCanvasStyle(a);this.edgeTypes[r].render.call(this,e,t,n)}}},d.Label={},d.Label.Native=new t({plotLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.font=t.getLabelData("style")+" "+t.getLabelData("size")+"px "+t.getLabelData("family"),r.textAlign=t.getLabelData("textAlign"),r.fillStyle=r.strokeStyle=t.getLabelData("color"),r.textBaseline=t.getLabelData("textBaseline"),this.renderLabel(e,t,n)},renderLabel:function(e,t,n){var r=e.getCtx(),i=t.pos.getc(!0);r.fillText(t.name,i.x,i.y+t.getData("height")/2)},hideLabel:e.empty,hideLabels:e.empty}),d.Label.DOM=new t({labelsHidden:!1,labelContainer:!1,labels:{},getLabelContainer:function(){return this.labelContainer?this.labelContainer:this.labelContainer=document.getElementById(this.viz.config.labelContainer)},getLabel:function(e){return e in this.labels&&this.labels[e]!=null?this.labels[e]:this.labels[e]=document.getElementById(e)},hideLabels:function(e){var t=this.getLabelContainer();e?t.style.display="none":t.style.display="",this.labelsHidden=e},clearLabels:function(e){for(var t in this.labels)if(e||!this.viz.graph.hasNode(t))this.disposeLabel(t),delete this.labels[t]},disposeLabel:function(e){var t=this.getLabel(e);t&&t.parentNode&&t.parentNode.removeChild(t)},hideLabel:function(t,n){t=e.splat(t);var r=n?"":"none",i,s=this;e.each(t,function(e){var t=s.getLabel(e.id);t&&(t.style.display=r)})},fitsInCanvas:function(e,t){var n=t.getSize();return e.x>=n.width||e.x<0||e.y>=n.height||e.y<0?!1:!0}}),d.Label.HTML=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){i=document.createElement("div");var s=this.getLabelContainer();i.id=r,i.className="node",i.style.position="absolute",n.onCreateLabel(i,t),s.appendChild(i),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Label.SVG=new t({Implements:d.Label.DOM,plotLabel:function(e,t,n){var r=t.id,i=this.getLabel(r);if(!i&&!(i=document.getElementById(r))){var s="http://www.w3.org/2000/svg";i=document.createElementNS(s,"svg:text");var o=document.createElementNS(s,"svg:tspan");i.appendChild(o);var u=this.getLabelContainer();i.setAttribute("id",r),i.setAttribute("class","node"),u.appendChild(i),n.onCreateLabel(i,t),this.labels[t.id]=i}this.placeLabel(i,t,n)}}),d.Geom=new t({initialize:function(e){this.viz=e,this.config=e.config,this.node=e.config.Node,this.edge=e.config.Edge},translate:function(t,n){n=e.splat(n),this.viz.graph.eachNode(function(r){e.each(n,function(e){r.getPos(e).$add(t)})})},setRightLevelToShow:function(t,n,r){var i=this.getRightLevelToShow(t,n),s=this.viz.labels,o=e.merge({execShow:!0,execHide:!0,onHide:e.empty,onShow:e.empty},r||{});t.eachLevel(0,this.config.levelsToShow,function(e){var n=e._depth-t._depth;n>i?(o.onHide(e),o.execHide&&(e.drawn=!1,e.exist=!1,s.hideLabel(e,!1))):(o.onShow(e),o.execShow&&(e.exist=!0))}),t.drawn=!0},getRightLevelToShow:function(e,t){var n=this.config,r=n.levelsToShow,i=n.constrained;if(!i)return r;while(!this.treeFitsInCanvas(e,t,r)&&r>1)r--;return r}});var y={construct:function(t){var n=e.type(t)=="array",r=new d(this.graphOptions,this.config.Node,this.config.Edge,this.config.Label);return n?function(t,n){var r=function(e){for(var r=0,i=n.length;rf?a:f;t.setData("width",c),t.setData("height",c),t.setData("dim",c)}}})},initializeLabel:function(e){this.label||(this.label=document.createElement("div"),document.body.appendChild(this.label)),this.setLabelStyles(e)},setLabelStyles:function(t){e.extend(this.label.style,{visibility:"hidden",position:"absolute",width:"auto",height:"auto"}),this.label.className="jit-autoadjust-label"}};b.Tree=function(){function r(e,t,n,r,i){var s=t.Node,o=t.multitree;if(s.overridable){var u=-1,a=-1;return e.eachNode(function(e){if(e._depth==n&&(!o||"$orn"in e.data&&e.data.$orn==r)){var t=e.getData("width",i),s=e.getData("height",i);u=u=r){n.onComplete();return}}n.onStep(Math.round(i/(r-1)*100)),setTimeout(o,1)})();else for(;if[i]?s:f[i]:s}a.push(e)},"ignore"),s&&s.id==e.id&&a.length>0&&a[0].dist&&a.sort(function(e,t){return(e.dist>=t.dist)-(e.dist<=t.dist)});for(var l=0,h=a.length;l1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.ForceDirected),$jit.RGraph=new t({Implements:[y,a,b.Radial],initialize:function(t){var n=$jit.RGraph,r={interpolation:"linear",levelDistance:100};this.controller=this.config=e.merge(i("Canvas","Node","Edge","Fx","Controller","Tips","NodeStyles","Events","Navigation","Label"),r,t);var s=this.config;s.useCanvas?(this.canvas=s.useCanvas,this.config.labelContainer=this.canvas.id+"-label"):(s.background&&(s.background=e.merge({type:"Circles"},s.background)),this.canvas=new f(this,s),this.config.labelContainer=(typeof s.injectInto=="string"?s.injectInto:s.injectInto.id)+"-label"),this.graphOptions={complex:!1,Node:{selected:!1,exist:!0,drawn:!0}},this.graph=new d(this.graphOptions,this.config.Node,this.config.Edge),this.labels=new n.Label[s.Label.type](this),this.fx=new n.Plot(this,n),this.op=new n.Op(this),this.json=null,this.root=null,this.busy=!1,this.parent=!1,this.initializeExtras()},createLevelDistanceFunc:function(){var e=this.config.levelDistance;return function(t){return(t._depth+1)*e}},refresh:function(){this.compute(),this.plot()},reposition:function(){this.compute("end")},plot:function(){this.fx.plot()},getNodeAndParentAngle:function(e){var t=!1,n=this.graph.getNode(e),r=n.getParents(),i=r.length>0?r[0]:!1;if(i){var s=i.pos.getc(),o=n.pos.getc(),u=s.add(o.scale(-1));t=Math.atan2(u.y,u.x),t<0&&(t+=2*Math.PI)}return{parent:i,theta:t}},tagChildren:function(e,t){if(e.angleSpan){var n=[];e.eachAdjacency(function(e){n.push(e.nodeTo)},"ignore");var r=n.length;for(var i=0;i1&&s[0]!=e.nodeFrom.id;this.edgeHelper.arrow.render(n,r,i,o,t)},contains:function(e,t){var n=e.nodeFrom.pos.getc(!0),r=e.nodeTo.pos.getc(!0);return this.edgeHelper.arrow.contains(n,r,t,this.edge.epsilon)}}})}($jit.RGraph),h.prototype.moebiusTransformation=function(e){var t=this.add(e),n=e.$conjugate().$prod(this);return n.x++,t.$div(n)},d.Util.moebiusTransformation=function(e,t,n,r,i){this.eachNode(e,function(e){for(var i=0;i").find(":last")[0];if(!i.getContext&&e.browser.msie)this.element=i=f.append("").find(":last")[0],i.src=t.src,i.style.filter="flipv progid:DXImageTransform.Microsoft.Alpha(opacity="+r*100+", style=1, finishOpacity=0, startx=0, starty=0, finishx=0, finishy="+n/u*100+")";else{s=i.getContext("2d");try{e(i).attr({width:o,height:n}),s.save(),s.translate(0,u-1),s.scale(1,-1),s.drawImage(t,0,0,o,u),s.restore(),s.globalCompositeOperation="destination-out",a=s.createLinearGradient(0,0,0,n),a.addColorStop(0,"rgba(255, 255, 255, "+(1-r)+")"),a.addColorStop(1,"rgba(255, 255, 255, 1.0)"),s.fillStyle=a,s.fillRect(0,0,o,n)}catch(l){return}}e(i).attr({alt:e(t).attr("alt"),title:e(t).attr("title")})}var n=function(n,r){this.orgWidth=n.width,this.orgHeight=n.height,this.image=n,this.reflection=null,this.alt=n.alt,this.title=n.title,this.imageOK=!1,this.options=r,this.imageOK=!0,this.options.reflHeight>0&&(this.reflection=new t(this.image,this.options.reflHeight,this.options.reflOpacity)),e(this.image).css("position","absolute")},r=function(t,r,i){var s=[],o=Math.sin,u=Math.cos,a=this;this.controlTimer=0,this.stopped=!1,this.container=t,this.xRadius=i.xRadius,this.yRadius=i.yRadius,this.showFrontTextTimer=0,this.autoRotateTimer=0,i.xRadius===0&&(this.xRadius=e(t).width()/2.3),i.yRadius===0&&(this.yRadius=e(t).height()/6),this.xCentre=i.xPos,this.yCentre=i.yPos,this.frontIndex=0,this.rotation=this.destRotation=Math.PI/2,this.timeDelay=1e3/i.FPS,i.altBox!==null&&(e(i.altBox).css("display","block"),e(i.titleBox).css("display","block")),e(t).css({position:"relative",overflow:"hidden"}),e(i.buttonLeft).css("display","inline"),e(i.buttonRight).css("display","inline"),e(i.buttonLeft).bind("mouseup",this,function(e){return e.data.rotate(-1),!1}),e(i.buttonRight).bind("mouseup",this,function(e){return e.data.rotate(1),!1}),e(".new_topic").bind("keydown",this,function(e){(e.keyCode==9||e.keyCode==9&&e.shiftKey)&&e.preventDefault()}),e(".new_topic").bind("keyup",this,function(e){e.keyCode==9&&e.shiftKey?e.data.rotate(-1):e.keyCode==9&&e.data.rotate(1)}),i.mouseWheel&&e(t).bind("mousewheel",this,function(e,t){return e.data.rotate(t),!1}),e(t).bind("mouseover click",this,function(t){clearInterval(t.data.autoRotateTimer);var n=e(t.target).attr("alt");if(n!==undefined&&n!==null){clearTimeout(t.data.showFrontTextTimer),e(i.altBox).html(e(t.target).attr("alt"));if(i.bringToFront&&t.type=="click"){e(i.titleBox).html(e(t.target).attr("title")),e("#topic_metacode").val(e(t.target).attr("title"));var s=e(t.target).data("itemIndex"),o=t.data.frontIndex,u=(s-o)%r.length;Math.abs(u)>r.length/2&&(u+=u>0?-r.length:r.length),t.data.rotate(-u)}}}),e(t).bind("mouseout",this,function(e){var t=e.data;clearTimeout(t.showFrontTextTimer),t.showFrontTextTimer=setTimeout(function(){t.showFrontText()},1e3),t.autoRotate()}),e(t).bind("mousedown",this,function(e){return e.data.container.focus(),!1}),t.onselectstart=function(){return!1},this.innerWrapper=e(t).wrapInner('
    ').children()[0],this.showFrontText=function(){if(s[this.frontIndex]===undefined)return;e("#topic_metacode").val(e(s[this.frontIndex].image).attr("title")),e(i.titleBox).html(e(s[this.frontIndex].image).attr("title")),e(i.altBox).html(e(s[this.frontIndex].image).attr("alt"))},this.go=function(){if(this.controlTimer!==0)return;var e=this;this.controlTimer=setTimeout(function(){e.updateAll()},this.timeDelay)},this.stop=function(){clearTimeout(this.controlTimer),this.controlTimer=0},this.rotate=function(e){this.frontIndex-=e,this.frontIndex==-1&&(this.frontIndex=s.length-1),this.frontIndex%=s.length,this.destRotation+=Math.PI/s.length*2*e,this.showFrontText(),this.go()},this.autoRotate=function(){if(i.autoRotate!=="no"){var e=i.autoRotate==="right"?1:-1;this.autoRotateTimer=setInterval(function(){a.rotate(e)},i.autoRotateDelay)}},this.updateAll=function(){var t=i.minScale,n=(1-t)*.5,r,a,f,l,c,h,p,d=this.destRotation-this.rotation,v=Math.abs(d);this.rotation+=d*i.speed,v<.001&&(this.rotation=this.destRotation);var m=s.length,g=Math.PI/m*2,y=this.rotation,b=e.browser.msie;this.innerWrapper.style.display="none";var w,E="px",S,x=this;for(var T=0;T>0,h.reflection!==null&&(S=i.reflHeight*c,w=h.reflection.element.style,w.left=f+E,w.top=l+a+i.reflGap*c+E,w.width=r+E,b?w.filter.finishy=S/a*100:w.height=S+E)}y+=g}this.innerWrapper.style.display="block",v>=.001?this.controlTimer=setTimeout(function(){x.updateAll()},this.timeDelay):this.stop()},this.checkImagesLoaded=function(){var t;for(t=0;t").outerWidth(1).jquery||e.each(["Width","Height"],function(n,r){function i(t,n,r,i){return e.each(s,function(){n-=parseFloat(e.curCSS(t,"padding"+this,!0))||0,r&&(n-=parseFloat(e.curCSS(t,"border"+this+"Width",!0))||0),i&&(n-=parseFloat(e.curCSS(t,"margin"+this,!0))||0)}),n}var s=r==="Width"?["Left","Right"]:["Top","Bottom"],o=r.toLowerCase(),u={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+r]=function(n){return n===t?u["inner"+r].call(this):this.each(function(){e(this).css(o,i(this,n)+"px")})},e.fn["outer"+r]=function(t,n){return typeof t!="number"?u["outer"+r].call(this,t):this.each(function(){e(this).css(o,i(this,t,!0,n)+"px")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,r){return!!e.data(t,r[3])},focusable:function(t){return n(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var r=e.attr(t,"tabindex"),i=isNaN(r);return(i||r>=0)&&n(t,!i)}}),e(function(){var t=document.body,n=t.appendChild(n=document.createElement("div"));n.offsetHeight,e.extend(n.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),e.support.minHeight=n.offsetHeight===100,e.support.selectstart="onselectstart"in n,t.removeChild(n).style.display="none"}),e.curCSS||(e.curCSS=e.css),e.extend(e.ui,{plugin:{add:function(t,n,r){var i=e.ui[t].prototype;for(var s in r)i.plugins[s]=i.plugins[s]||[],i.plugins[s].push([n,r[s]])},call:function(e,t,n){var r=e.plugins[t];if(!r||!e.element[0].parentNode)return;for(var i=0;i0?!0:(t[r]=1,i=t[r]>0,t[r]=0,i)},isOverAxis:function(e,t,n){return e>t&&e=9||!!t.button?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target==this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(e){return this.mouseDelayMet},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return!0}})}(jQuery),function(e,t){e.ui=e.ui||{};var n=/left|center|right/,r=/top|center|bottom/,i="center",s={},o=e.fn.position,u=e.fn.offset;e.fn.position=function(t){if(!t||!t.of)return o.apply(this,arguments);t=e.extend({},t);var u=e(t.of),l=u[0],h=(t.collision||"flip").split(" "),p=t.offset?t.offset.split(" "):[0,0],v,m,y;return l.nodeType===9?(v=u.width(),m=u.height(),y={top:0,left:0}):l.setTimeout?(v=u.width(),m=u.height(),y={top:u.scrollTop(),left:u.scrollLeft()}):l.preventDefault?(t.at="left top",v=m=0,y={top:t.of.pageY,left:t.of.pageX}):(v=u.outerWidth(),m=u.outerHeight(),y=u.offset()),e.each(["my","at"],function(){var e=(t[this]||"").split(" ");e.length===1&&(e=n.test(e[0])?e.concat([i]):r.test(e[0])?[i].concat(e):[i,i]),e[0]=n.test(e[0])?e[0]:i,e[1]=r.test(e[1])?e[1]:i,t[this]=e}),h.length===1&&(h[1]=h[0]),p[0]=parseInt(p[0],10)||0,p.length===1&&(p[1]=p[0]),p[1]=parseInt(p[1],10)||0,t.at[0]==="right"?y.left+=v:t.at[0]===i&&(y.left+=v/2),t.at[1]==="bottom"?y.top+=m:t.at[1]===i&&(y.top+=m/2),y.left+=p[0],y.top+=p[1],this.each(function(){var n=e(this),r=n.outerWidth(),o=n.outerHeight(),u=parseInt(e.curCSS(this,"marginLeft",!0))||0,l=parseInt(e.curCSS(this,"marginTop",!0))||0,c=r+u+(parseInt(e.curCSS(this,"marginRight",!0))||0),d=o+l+(parseInt(e.curCSS(this,"marginBottom",!0))||0),g=e.extend({},y),w;t.my[0]==="right"?g.left-=r:t.my[0]===i&&(g.left-=r/2),t.my[1]==="bottom"?g.top-=o:t.my[1]===i&&(g.top-=o/2),s.fractions||(g.left=Math.round(g.left),g.top=Math.round(g.top)),w={left:g.left-u,top:g.top-l},e.each(["left","top"],function(n,i){e.ui.position[h[n]]&&e.ui.position[h[n]][i](g,{targetWidth:v,targetHeight:m,elemWidth:r,elemHeight:o,collisionPosition:w,collisionWidth:c,collisionHeight:d,offset:p,my:t.my,at:t.at})}),e.fn.bgiframe&&n.bgiframe(),n.offset(e.extend(g,{using:t.using}))})},e.ui.position={fit:{left:function(t,n){var r=e(window),i=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft();t.left=i>0?t.left-i:Math.max(t.left-n.collisionPosition.left,t.left)},top:function(t,n){var r=e(window),i=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop();t.top=i>0?t.top-i:Math.max(t.top-n.collisionPosition.top,t.top)}},flip:{left:function(t,n){if(n.at[0]===i)return;var r=e(window),s=n.collisionPosition.left+n.collisionWidth-r.width()-r.scrollLeft(),o=n.my[0]==="left"?-n.elemWidth:n.my[0]==="right"?n.elemWidth:0,u=n.at[0]==="left"?n.targetWidth:-n.targetWidth,f=-2*n.offset[0];t.left+=n.collisionPosition.left<0?o+u+f:s>0?o+u+f:0},top:function(t,n){if(n.at[1]===i)return;var r=e(window),s=n.collisionPosition.top+n.collisionHeight-r.height()-r.scrollTop(),o=n.my[1]==="top"?-n.elemHeight:n.my[1]==="bottom"?n.elemHeight:0,u=n.at[1]==="top"?n.targetHeight:-n.targetHeight,f=-2*n.offset[1];t.top+=n.collisionPosition.top<0?o+u+f:s>0?o+u+f:0}}},e.offset.setOffset||(e.offset.setOffset=function(t,n){/static/.test(e.curCSS(t,"position"))&&(t.style.position="relative");var r=e(t),i=r.offset(),s=parseInt(e.curCSS(t,"top",!0),10)||0,o=parseInt(e.curCSS(t,"left",!0),10)||0,u={top:n.top-i.top+s,left:n.left-i.left+o};"using"in n?n.using.call(t,u):r.css(u)},e.fn.offset=function(t){var n=this[0];return!n||!n.ownerDocument?null:t?e.isFunction(t)?this.each(function(n){e(this).offset(t.call(this,n,e(this).offset()))}):this.each(function(){e.offset.setOffset(this,t)}):u.call(this)}),e.curCSS||(e.curCSS=e.css),function(){var t=document.getElementsByTagName("body")[0],n=document.createElement("div"),r,i,o,u,l;r=document.createElement(t?"div":"body"),o={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},t&&e.extend(o,{position:"absolute",left:"-1000px",top:"-1000px"});for(var c in o)r.style[c]=o[c];r.appendChild(n),i=t||document.documentElement,i.insertBefore(r,i.firstChild),n.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",u=e(n).offset(function(e,t){return t}).offset(),r.innerHTML="",i.removeChild(r),l=u.top+u.left+(t?2e3:0),s.fractions=l>21&&l<22}()}(jQuery),function(e,t){e.widget("ui.draggable",e.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},destroy:function(){if(!this.element.data("draggable"))return;return this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy(),this},_mouseCapture:function(t){var n=this.options;return this.helper||n.disabled||e(t.target).is(".ui-resizable-handle")?!1:(this.handle=this._getHandle(t),this.handle?(n.iframeFix&&e(n.iframeFix===!0?"iframe":n.iframeFix).each(function(){e('
    ').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var n=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.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},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,n.cursorAt&&this._adjustOffsetFromHelper(n.cursorAt),n.containment&&this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!n.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,n){this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute");if(!n){var r=this._uiHash();if(this._trigger("drag",t,r)===!1)return this._mouseUp({}),!1;this.position=r.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";return e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var n=!1;e.ui.ddmanager&&!this.options.dropBehaviour&&(n=e.ui.ddmanager.drop(this,t)),this.dropped&&(n=this.dropped,this.dropped=!1);var r=this.element[0],i=!1;while(r&&(r=r.parentNode))r==document&&(i=!0);if(!i&&this.options.helper==="original")return!1;if(this.options.revert=="invalid"&&!n||this.options.revert=="valid"&&n||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,n)){var s=this;e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){s._trigger("stop",t)!==!1&&s._clear()})}else this._trigger("stop",t)!==!1&&this._clear();return!1},_mouseUp:function(t){return this.options.iframeFix===!0&&e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){var n=!this.options.handle||!e(this.options.handle,this.element).length?!0:!1;return e(this.options.handle,this.element).find("*").andSelf().each(function(){this==t.target&&(n=!0)}),n},_createHelper:function(t){var n=this.options,r=e.isFunction(n.helper)?e(n.helper.apply(this.element[0],[t])):n.helper=="clone"?this.element.clone().removeAttr("id"):this.element;return r.parents("body").length||r.appendTo(n.appendTo=="parent"?this.element[0].parentNode:n.appendTo),r[0]!=this.element[0]&&!/(fixed|absolute)/.test(r.css("position"))&&r.css("position","absolute"),r},_adjustOffsetFromHelper:function(t){typeof t=="string"&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&e.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&e.browser.msie)t={top:0,left:0};return{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var e=this.element.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.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 t=this.options;t.containment=="parent"&&(t.containment=this.helper[0].parentNode);if(t.containment=="document"||t.containment=="window")this.containment=[t.containment=="document"?0:e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t.containment=="document"?0:e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(t.containment=="document"?0:e(window).scrollLeft())+e(t.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(t.containment=="document"?0:e(window).scrollTop())+(e(t.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(t.containment)&&t.containment.constructor!=Array){var n=e(t.containment),r=n[0];if(!r)return;var i=n.offset(),s=e(r).css("overflow")!="hidden";this.containment=[(parseInt(e(r).css("borderLeftWidth"),10)||0)+(parseInt(e(r).css("paddingLeft"),10)||0),(parseInt(e(r).css("borderTopWidth"),10)||0)+(parseInt(e(r).css("paddingTop"),10)||0),(s?Math.max(r.scrollWidth,r.offsetWidth):r.offsetWidth)-(parseInt(e(r).css("borderLeftWidth"),10)||0)-(parseInt(e(r).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(s?Math.max(r.scrollHeight,r.offsetHeight):r.offsetHeight)-(parseInt(e(r).css("borderTopWidth"),10)||0)-(parseInt(e(r).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=n}else t.containment.constructor==Array&&(this.containment=t.containment)},_convertPositionTo:function(t,n){n||(n=this.position);var r=t=="absolute"?1:-1,i=this.options,s=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,o=/(html|body)/i.test(s[0].tagName);return{top:n.top+this.offset.relative.top*r+this.offset.parent.top*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():o?0:s.scrollTop())*r),left:n.left+this.offset.relative.left*r+this.offset.parent.left*r-(e.browser.safari&&e.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():o?0:s.scrollLeft())*r)}},_generatePosition:function(t){var n=this.options,r=this.cssPosition!="absolute"||this.scrollParent[0]!=document&&!!e.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,i=/(html|body)/i.test(r[0].tagName),s=t.pageX,o=t.pageY;if(this.originalPosition){var u;if(this.containment){if(this.relative_container){var f=this.relative_container.offset();u=[this.containment[0]+f.left,this.containment[1]+f.top,this.containment[2]+f.left,this.containment[3]+f.top]}else u=this.containment;t.pageX-this.offset.click.leftu[2]&&(s=u[2]+this.offset.click.left),t.pageY-this.offset.click.top>u[3]&&(o=u[3]+this.offset.click.top)}if(n.grid){var l=n.grid[1]?this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1]:this.originalPageY;o=u?l-this.offset.click.topu[3]?l-this.offset.click.topu[2]?c-this.offset.click.left=0;c--){var h=r.snapElements[c].left,p=h+r.snapElements[c].width,d=r.snapElements[c].top,v=d+r.snapElements[c].height;if(!(h-s
    ").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),i=document.activeElement;try{i.id}catch(s){i=document.body}return t.wrap(r),(t[0]===i||e.contains(t[0],i))&&e(i).focus(),r=t.parent(),t.css("position")=="static"?(r.css({position:"relative"}),t.css({position:"relative"})):(e.extend(n,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,r){n[r]=t.css(r),isNaN(parseInt(n[r],10))&&(n[r]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),r.css(n).show()},removeWrapper:function(t){var n,r=document.activeElement;return t.parent().is(".ui-effects-wrapper")?(n=t.parent().replaceWith(t),(t[0]===r||e.contains(t[0],r))&&e(r).focus(),n):t},setTransition:function(t,n,r,i){return i=i||{},e.each(n,function(e,n){var s=t.cssUnit(n);s[0]>0&&(i[n]=s[0]*r+s[1])}),i}}),e.fn.extend({effect:function(t,n,r,i){var s=u.apply(this,arguments),o={options:s[1],duration:s[2],callback:s[3]},a=o.options.mode,f=e.effects[t];return e.fx.off||!f?a?this[a](o.duration,o.callback):this.each(function(){o.callback&&o.callback.call(this)}):f.call(this,o)},_show:e.fn.show,show:function(e){if(a(e))return this._show.apply(this,arguments);var t=u.apply(this,arguments);return t[1].mode="show",this.effect.apply(this,t)},_hide:e.fn.hide,hide:function(e){if(a(e))return this._hide.apply(this,arguments);var t=u.apply(this,arguments);return t[1].mode="hide",this.effect.apply(this,t)},__toggle:e.fn.toggle,toggle:function(t){if(a(t)||typeof t=="boolean"||e.isFunction(t))return this.__toggle.apply(this,arguments);var n=u.apply(this,arguments);return n[1].mode="toggle",this.effect.apply(this,n)},cssUnit:function(t){var n=this.css(t),r=[];return e.each(["em","px","%","pt"],function(e,t){n.indexOf(t)>0&&(r=[parseFloat(n),t])}),r}});var h={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,t){h[t]=function(t){return Math.pow(t,e+2)}}),e.extend(h,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e)},Elastic:function(e){return e===0||e===1?e:-Math.pow(2,8*(e-1))*Math.sin(((e-1)*80-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){var t,n=4;while(e<((t=Math.pow(2,--n))-1)/11);return 1/Math.pow(4,3-n)-7.5625*Math.pow((t*3-2)/22-e,2)}}),e.each(h,function(t,n){e.easing["easeIn"+t]=n,e.easing["easeOut"+t]=function(e){return 1-n(1-e)},e.easing["easeInOut"+t]=function(e){return e<.5?n(e*2)/2:n(e*-2+2)/-2+1}})}(jQuery),function(e){var t={init:function(t){function r(){return"ontouchstart"in window?1:0}var n={set_width:!1,set_height:!1,horizontalScroll:!1,scrollInertia:550,scrollEasing:"easeOutCirc",mouseWheel:"auto",autoDraggerLength:!0,scrollButtons:{enable:!1,scrollType:"continuous",scrollSpeed:20,scrollAmount:40},advanced:{updateOnBrowserResize:!0,updateOnContentResize:!1,autoExpandHorizontalScroll:!1},callbacks:{onScroll:function(){},onTotalScroll:function(){},onTotalScrollOffset:0}},t=e.extend(!0,n,t);return e(document).data("mCS-is-touch-device",!1),r()&&e(document).data("mCS-is-touch-device",!0),this.each(function(){var n=e(this);t.set_width&&n.css("width",t.set_width),t.set_height&&n.css("height",t.set_height);if(!e(document).data("mCustomScrollbar-index"))e(document).data("mCustomScrollbar-index","1");else{var i=parseInt(e(document).data("mCustomScrollbar-index"));e(document).data("mCustomScrollbar-index",i+1)}n.wrapInner("
    ").addClass("mCustomScrollbar _mCS_"+e(document).data("mCustomScrollbar-index"));var s=n.children(".mCustomScrollBox");if(t.horizontalScroll){s.addClass("mCSB_horizontal").wrapInner("
    ");var o=s.children(".mCSB_h_wrapper");o.wrapInner("
    ").children(".mCSB_container").css({width:o.children().outerWidth(),position:"relative"}).unwrap()}else s.wrapInner("
    ");var u=s.children(".mCSB_container");if(!e(document).data("mCS-is-touch-device")){u.after("
    ");var a=s.children(".mCSB_scrollTools"),f=a.children(".mCSB_draggerContainer"),l=f.children(".mCSB_dragger");t.horizontalScroll?l.data("minDraggerWidth",l.width()):l.data("minDraggerHeight",l.height()),t.scrollButtons.enable&&(t.horizontalScroll?a.prepend("").append(""):a.prepend("").append("")),s.bind("scroll",function(){s.scrollTop(0).scrollLeft(0)}),n.data({horizontalScroll:t.horizontalScroll,scrollInertia:t.scrollInertia,scrollEasing:t.scrollEasing,mouseWheel:t.mouseWheel,autoDraggerLength:t.autoDraggerLength,"scrollButtons-enable":t.scrollButtons.enable,"scrollButtons-scrollType":t.scrollButtons.scrollType,"scrollButtons-scrollSpeed":t.scrollButtons.scrollSpeed,"scrollButtons-scrollAmount":t.scrollButtons.scrollAmount,autoExpandHorizontalScroll:t.advanced.autoExpandHorizontalScroll,"onScroll-Callback":t.callbacks.onScroll,"onTotalScroll-Callback":t.callbacks.onTotalScroll,"onTotalScroll-Offset":t.callbacks.onTotalScrollOffset}).mCustomScrollbar("update");if(t.advanced.updateOnBrowserResize){var h;e(window).resize(function(){h&&clearTimeout(h),h=setTimeout(function(){n.mCustomScrollbar("update")},150)})}}else{var p=navigator.userAgent;if(p.indexOf("Android")!=-1){var v=parseFloat(p.slice(p.indexOf("Android")+8));v<3?m("mCSB_"+e(document).data("mCustomScrollbar-index")):s.css({overflow:"auto","-webkit-overflow-scrolling":"touch"})}else s.css({overflow:"auto","-webkit-overflow-scrolling":"touch"});u.addClass("mCS_no_scrollbar mCS_touch"),n.data({horizontalScroll:t.horizontalScroll,scrollInertia:t.scrollInertia,scrollEasing:t.scrollEasing,autoExpandHorizontalScroll:t.advanced.autoExpandHorizontalScroll,"onScroll-Callback":t.callbacks.onScroll,"onTotalScroll-Callback":t.callbacks.onTotalScroll,"onTotalScroll-Offset":t.callbacks.onTotalScrollOffset}),s.scroll(function(){n.mCustomScrollbar("callbacks",s,u)});function m(e){var t=document.getElementById(e),n=0,r=0;document.getElementById(e).addEventListener("touchstart",function(e){n=this.scrollTop+e.touches[0].pageY,r=this.scrollLeft+e.touches[0].pageX},!1),document.getElementById(e).addEventListener("touchmove",function(e){(this.scrollTopn+5)&&e.preventDefault(),(this.scrollLeftr+5)&&e.preventDefault(),this.scrollTop=n-e.touches[0].pageY,this.scrollLeft=r-e.touches[0].pageX},!1)}}if(t.advanced.updateOnContentResize){var g;if(t.horizontalScroll){var y=u.outerWidth();r()&&s.css({"-webkit-overflow-scrolling":"auto"})}else var y=u.outerHeight();g=setInterval(function(){if(t.horizontalScroll){t.advanced.autoExpandHorizontalScroll&&u.css({position:"absolute",width:"auto"}).wrap("
    ").css({width:u.outerWidth(),position:"relative"}).unwrap();var e=u.outerWidth()}else var e=u.outerHeight();e!=y&&(n.mCustomScrollbar("update"),y=e)},300)}})},update:function(){var t=e(this),n=t.children(".mCustomScrollBox"),r=n.children(".mCSB_container");e(document).data("mCS-is-touch-device")||r.removeClass("mCS_no_scrollbar");var i=n.children(".mCSB_scrollTools"),s=i.children(".mCSB_draggerContainer"),o=s.children(".mCSB_dragger");if(t.data("horizontalScroll")){var u=i.children(".mCSB_buttonLeft"),a=i.children(".mCSB_buttonRight"),f=n.width();t.data("autoExpandHorizontalScroll")&&r.css({position:"absolute",width:"auto"}).wrap("
    ").css({width:r.outerWidth(),position:"relative"}).unwrap();var l=r.outerWidth()}else var c=i.children(".mCSB_buttonUp"),h=i.children(".mCSB_buttonDown"),p=n.height(),d=r.outerHeight();if(d>p&&!t.data("horizontalScroll")&&!e(document).data("mCS-is-touch-device")){i.css("display","block");var v=s.height();if(t.data("autoDraggerLength")){var m=Math.round(p/d*v),g=o.data("minDraggerHeight");if(m<=g)o.css({height:g});else if(m>=v-10){var y=v-10;o.css({height:y})}else o.css({height:m});o.children(".mCSB_dragger_bar").css({"line-height":o.height()+"px"})}var w=o.height(),E=(d-p)/(v-w);t.data("scrollAmount",E),t.mCustomScrollbar("scrolling",n,r,s,o,c,h,u,a);var S=Math.abs(Math.round(r.position().top));t.mCustomScrollbar("scrollTo",S,{callback:!1})}else if(l>f&&t.data("horizontalScroll")&&!e(document).data("mCS-is-touch-device")){i.css("display","block");var x=s.width();if(t.data("autoDraggerLength")){var T=Math.round(f/l*x),N=o.data("minDraggerWidth");if(T<=N)o.css({width:N});else if(T>=x-10){var C=x-10;o.css({width:C})}else o.css({width:T})}var k=o.width(),E=(l-f)/(x-k);t.data("scrollAmount",E),t.mCustomScrollbar("scrolling",n,r,s,o,c,h,u,a);var S=Math.abs(Math.round(r.position().left));t.mCustomScrollbar("scrollTo",S,{callback:!1})}else n.unbind("mousewheel"),n.unbind("focusin"),t.data("horizontalScroll")?o.add(r).css("left",0):o.add(r).css("top",0),i.css("display","none"),r.addClass("mCS_no_scrollbar")},scrolling:function(t,n,r,i,s,o,u,a){var f=e(this);if(!i.hasClass("ui-draggable")){if(f.data("horizontalScroll"))var l="x";else var l="y";i.draggable({axis:l,containment:"parent",drag:function(e,t){f.mCustomScrollbar("scroll"),i.addClass("mCSB_dragger_onDrag")},stop:function(e,t){i.removeClass("mCSB_dragger_onDrag")}})}r.unbind("click").bind("click",function(e){if(f.data("horizontalScroll")){var t=e.pageX-r.offset().left;if(ti.position().left+i.width()){var n=t;n>=r.width()-i.width()&&(n=r.width()-i.width()),i.css("left",n),f.mCustomScrollbar("scroll")}}else{var t=e.pageY-r.offset().top;if(ti.position().top+i.height()){var n=t;n>=r.height()-i.height()&&(n=r.height()-i.height()),i.css("top",n),f.mCustomScrollbar("scroll")}}});if(f.data("mouseWheel")){var c=f.data("mouseWheel");if(f.data("mouseWheel")==="auto"){c=8;var h=navigator.userAgent;h.indexOf("Mac")!=-1&&h.indexOf("Safari")!=-1&&h.indexOf("AppleWebKit")!=-1&&h.indexOf("Chrome")==-1&&(c=1)}t.unbind("mousewheel").bind("mousewheel",function(e,t){e.preventDefault();var n=Math.abs(t*c);if(f.data("horizontalScroll")){var s=i.position().left-t*n;i.css("left",s),i.position().left<0&&i.css("left",0);var o=r.width(),u=i.width();i.position().left>o-u&&i.css("left",o-u)}else{var a=i.position().top-t*n;i.css("top",a),i.position().top<0&&i.css("top",0);var l=r.height(),h=i.height();i.position().top>l-h&&i.css("top",l-h)}f.mCustomScrollbar("scroll")})}if(f.data("scrollButtons-enable"))if(f.data("scrollButtons-scrollType")==="pixels"){var p;e.browser.msie&&parseInt(e.browser.version)<9&&f.data("scrollInertia",0),f.data("horizontalScroll")?(a.add(u).unbind("click mousedown mouseup mouseout",g,w),a.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().left)+f.data("scrollButtons-scrollAmount"),f.mCustomScrollbar("scrollTo",p))}),u.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().left)-f.data("scrollButtons-scrollAmount"),n.position().left>=-f.data("scrollButtons-scrollAmount")&&(p="left"),f.mCustomScrollbar("scrollTo",p))})):(o.add(s).unbind("click mousedown mouseup mouseout",T,C),o.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().top)+f.data("scrollButtons-scrollAmount"),f.mCustomScrollbar("scrollTo",p))}),s.bind("click",function(e){e.preventDefault(),n.is(":animated")||(p=Math.abs(n.position().top)-f.data("scrollButtons-scrollAmount"),n.position().top>=-f.data("scrollButtons-scrollAmount")&&(p="top"),f.mCustomScrollbar("scrollTo",p))}))}else if(f.data("horizontalScroll")){a.add(u).unbind("click mousedown mouseup mouseout",g,w);var d,v=r.width(),m=i.width();a.bind("mousedown",function(e){e.preventDefault();var t=v-m;d=setInterval(function(){var e=Math.abs(i.position().left-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({left:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var g=function(e){e.preventDefault(),clearInterval(d),i.stop()};a.bind("mouseup mouseout",g);var y;u.bind("mousedown",function(e){e.preventDefault();var t=0;y=setInterval(function(){var e=Math.abs(i.position().left-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({left:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var w=function(e){e.preventDefault(),clearInterval(y),i.stop()};u.bind("mouseup mouseout",w)}else{o.add(s).unbind("click mousedown mouseup mouseout",T,C);var E,S=r.height(),x=i.height();o.bind("mousedown",function(e){e.preventDefault();var t=S-x;E=setInterval(function(){var e=Math.abs(i.position().top-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({top:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var T=function(e){e.preventDefault(),clearInterval(E),i.stop()};o.bind("mouseup mouseout",T);var N;s.bind("mousedown",function(e){e.preventDefault();var t=0;N=setInterval(function(){var e=Math.abs(i.position().top-t)*(100/f.data("scrollButtons-scrollSpeed"));i.stop().animate({top:t},e,"linear"),f.mCustomScrollbar("scroll")},20)});var C=function(e){e.preventDefault(),clearInterval(N),i.stop()};s.bind("mouseup mouseout",C)}t.unbind("focusin").bind("focusin",function(){t.scrollTop(0).scrollLeft(0);var s=e(document.activeElement);if(s.is("input,textarea,select,button,a[tabindex],area,object"))if(f.data("horizontalScroll")){var o=n.position().left,u=s.position().left,a=t.width(),l=s.outerWidth();if(!(o+u>=0&&o+u<=a-l)){var c=u/f.data("scrollAmount");c>=r.width()-i.width()&&(c=r.width()-i.width()),i.css("left",c),f.mCustomScrollbar("scroll")}}else{var h=n.position().top,p=s.position().top,d=t.height(),v=s.outerHeight();if(!(h+p>=0&&h+p<=d-v)){var c=p/f.data("scrollAmount");c>=r.height()-i.height()&&(c=r.height()-i.height()),i.css("top",c),f.mCustomScrollbar("scroll")}}})},scroll:function(t){var n=e(this),r=n.find(".mCSB_dragger"),i=n.find(".mCSB_container"),s=n.find(".mCustomScrollBox");if(n.data("horizontalScroll"))var o=r.position().left,u=-o*n.data("scrollAmount"),a=i.position().left,f=Math.round(a-u);else var l=r.position().top,c=-l*n.data("scrollAmount"),h=i.position().top,p=Math.round(h-c);if(e.browser.webkit)var d=(window.outerWidth-8)/window.innerWidth,v=d<.98||d>1.02;n.data("scrollInertia")===0||v?(n.data("horizontalScroll")?i.css("left",u):i.css("top",c),t||n.mCustomScrollbar("callbacks",s,i)):n.data("horizontalScroll")?i.stop().animate({left:"-="+f},n.data("scrollInertia"),n.data("scrollEasing"),function(){t||n.mCustomScrollbar("callbacks",s,i)}):i.stop().animate({top:"-="+p},n.data("scrollInertia"),n.data("scrollEasing"),function(){t||n.mCustomScrollbar("callbacks",s,i)})},scrollTo:function(t,n){var r={moveDragger:!1,callback:!0},n=e.extend(r,n),i=e(this),s,o=i.find(".mCustomScrollBox"),u=o.children(".mCSB_container");if(!e(document).data("mCS-is-touch-device"))var a=i.find(".mCSB_draggerContainer"),f=a.children(".mCSB_dragger");var l;if(t){if(typeof t=="number")n.moveDragger?s=t:(l=t,s=Math.round(l/i.data("scrollAmount")));else if(typeof t=="string"){var c;t==="top"?c=0:t==="bottom"&&!i.data("horizontalScroll")?c=u.outerHeight()-o.height():t==="left"?c=0:t==="right"&&i.data("horizontalScroll")?c=u.outerWidth()-o.width():t==="first"?c=i.find(".mCSB_container").find(":first"):t==="last"?c=i.find(".mCSB_container").find(":last"):c=i.find(t),c.length===1?(i.data("horizontalScroll")?l=c.position().left:l=c.position().top,e(document).data("mCS-is-touch-device")?s=l:s=Math.ceil(l/i.data("scrollAmount"))):s=c}e(document).data("mCS-is-touch-device")?i.data("horizontalScroll")?o.stop().animate({scrollLeft:s},i.data("scrollInertia"),i.data("scrollEasing"),function(){n.callback&&i.mCustomScrollbar("callbacks",o,u)}):o.stop().animate({scrollTop:s},i.data("scrollInertia"),i.data("scrollEasing"),function(){n.callback&&i.mCustomScrollbar("callbacks",o,u)}):(i.data("horizontalScroll")?(s>=a.width()-f.width()&&(s=a.width()-f.width()),f.css("left",s)):(s>=a.height()-f.height()&&(s=a.height()-f.height()),f.css("top",s)),n.callback?i.mCustomScrollbar("scroll"):i.mCustomScrollbar("scroll",!0))}},callbacks:function(t,n){var r=e(this);if(!e(document).data("mCS-is-touch-device"))if(r.data("horizontalScroll")){var i=Math.round(n.position().left);i<0&&i<=t.width()-n.outerWidth()+r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else{var s=Math.round(n.position().top);s<0&&s<=t.height()-n.outerHeight()+r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else if(r.data("horizontalScroll")){var o=Math.round(t.scrollLeft());o>0&&o>=n.outerWidth()-r.width()-r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}else{var u=Math.round(t.scrollTop());u>0&&u>=n.outerHeight()-r.height()-r.data("onTotalScroll-Offset")?r.data("onTotalScroll-Callback").call():r.data("onScroll-Callback").call()}}};e.fn.mCustomScrollbar=function(n){if(t[n])return t[n].apply(this,Array.prototype.slice.call(arguments,1));if(typeof n=="object"||!n)return t.init.apply(this,arguments);e.error("Method "+n+" does not exist")}}(jQuery),function(e){function t(t){var n=t||window.event,r=[].slice.call(arguments,1),i=0,s=!0,o=0,u=0;return t=e.event.fix(n),t.type="mousewheel",n.wheelDelta&&(i=n.wheelDelta/120),n.detail&&(i=-n.detail/3),u=i,n.axis!==undefined&&n.axis===n.HORIZONTAL_AXIS&&(u=0,o=-1*i),n.wheelDeltaY!==undefined&&(u=n.wheelDeltaY/120),n.wheelDeltaX!==undefined&&(o=-1*n.wheelDeltaX/120),r.unshift(t,i,o,u),(e.event.dispatch||e.event.handle).apply(this,r)}var n=["DOMMouseScroll","mousewheel"];if(e.event.fixHooks)for(var r=n.length;r;)e.event.fixHooks[n[--r]]=e.event.mouseHooks;e.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var e=n.length;e;)this.addEventListener(n[--e],t,!1);else this.onmousewheel=t},teardown:function(){if(this.removeEventListener)for(var e=n.length;e;)this.removeEventListener(n[--e],t,!1);else this.onmousewheel=null}},e.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})}(jQuery),function(){}.call(this);var io="undefined"==typeof module?{}:module.exports;(function(){(function(e,t){var n=e;n.version="0.9.11",n.protocol=1,n.transports=[],n.j=[],n.sockets={},n.connect=function(e,r){var i=n.util.parseUri(e),s,o;t&&t.location&&(i.protocol=i.protocol||t.location.protocol.slice(0,-1),i.host=i.host||(t.document?t.document.domain:t.location.hostname),i.port=i.port||t.location.port),s=n.util.uniqueUri(i);var u={host:i.host,secure:"https"==i.protocol,port:i.port||("https"==i.protocol?443:80),query:i.query||""};n.util.merge(u,r);if(u["force new connection"]||!n.sockets[s])o=new n.Socket(u);return!u["force new connection"]&&o&&(n.sockets[s]=o),o=o||n.sockets[s],o.of(i.path.length>1?i.path:"")}})("object"==typeof module?module.exports:this.io={},this),function(e,t){var n=e.util={},r=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,i=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];n.parseUri=function(e){var t=r.exec(e||""),n={},s=14;while(s--)n[i[s]]=t[s]||"";return n},n.uniqueUri=function(e){var n=e.protocol,r=e.host,i=e.port;return"document"in t?(r=r||document.domain,i=i||(n=="https"&&document.location.protocol!=="https:"?443:document.location.port)):(r=r||"localhost",!i&&n=="https"&&(i=443)),(n||"http")+"://"+r+":"+(i||80)},n.query=function(e,t){var r=n.chunkQuery(e||""),i=[];n.merge(r,n.chunkQuery(t||""));for(var s in r)r.hasOwnProperty(s)&&i.push(s+"="+r[s]);return i.length?"?"+i.join("&"):""},n.chunkQuery=function(e){var t={},n=e.split("&"),r=0,i=n.length,s;for(;rt.length?e:t,s=e.length>t.length?t:e;for(var o=0,u=s.length;o0&&e.splice(0,1)[0]!=n.transport.name);e.length?u(e):n.publish("connect_failed")}}},n.options["connect timeout"]))})}n.sessionid=r,n.closeTimeout=s*1e3,n.heartbeatTimeout=i*1e3,n.transports||(n.transports=n.origTransports=o?t.util.intersect(o.split(","),n.options.transports):n.options.transports),n.setHeartbeatTimeout(),u(n.transports),n.once("connect",function(){clearTimeout(n.connectTimeoutTimer),e&&typeof e=="function"&&e()})}),this},r.prototype.setHeartbeatTimeout=function(){clearTimeout(this.heartbeatTimeoutTimer);if(this.transport&&!this.transport.heartbeats())return;var e=this;this.heartbeatTimeoutTimer=setTimeout(function(){e.transport.onClose()},this.heartbeatTimeout)},r.prototype.packet=function(e){return this.connected&&!this.doBuffer?this.transport.packet(e):this.buffer.push(e),this},r.prototype.setBuffer=function(e){this.doBuffer=e,!e&&this.connected&&this.buffer.length&&(this.options.manualFlush||this.flushBuffer())},r.prototype.flushBuffer=function(){this.transport.payload(this.buffer),this.buffer=[]},r.prototype.disconnect=function(){if(this.connected||this.connecting)this.open&&this.of("").packet({type:"disconnect"}),this.onDisconnect("booted");return this},r.prototype.disconnectSync=function(){var e=t.util.request(),n=["http"+(this.options.secure?"s":"")+":/",this.options.host+":"+this.options.port,this.options.resource,t.protocol,"",this.sessionid].join("/")+"/?disconnect=1";e.open("GET",n,!1),e.send(null),this.onDisconnect("booted")},r.prototype.isXDomain=function(){var e=n.location.port||("https:"==n.location.protocol?443:80);return this.options.host!==n.location.hostname||this.options.port!=e},r.prototype.onConnect=function(){this.connected||(this.connected=!0,this.connecting=!1,this.doBuffer||this.setBuffer(!1),this.emit("connect"))},r.prototype.onOpen=function(){this.open=!0},r.prototype.onClose=function(){this.open=!1,clearTimeout(this.heartbeatTimeoutTimer)},r.prototype.onPacket=function(e){this.of(e.endpoint).onPacket(e)},r.prototype.onError=function(e){e&&e.advice&&e.advice==="reconnect"&&(this.connected||this.connecting)&&(this.disconnect(),this.options.reconnect&&this.reconnect()),this.publish("error",e&&e.reason?e.reason:e)},r.prototype.onDisconnect=function(e){var t=this.connected,n=this.connecting;this.connected=!1,this.connecting=!1,this.open=!1;if(t||n)this.transport.close(),this.transport.clearTimeouts(),t&&(this.publish("disconnect",e),"booted"!=e&&this.options.reconnect&&!this.reconnecting&&this.reconnect())},r.prototype.reconnect=function(){function i(){if(e.connected){for(var t in e.namespaces)e.namespaces.hasOwnProperty(t)&&""!==t&&e.namespaces[t].packet({type:"connect"});e.publish("reconnect",e.transport.name,e.reconnectionAttempts)}clearTimeout(e.reconnectionTimer),e.removeListener("connect_failed",s),e.removeListener("connect",s),e.reconnecting=!1,delete e.reconnectionAttempts,delete e.reconnectionDelay,delete e.reconnectionTimer,delete e.redoTransports,e.options["try multiple transports"]=n}function s(){if(!e.reconnecting)return;if(e.connected)return i();if(e.connecting&&e.reconnecting)return e.reconnectionTimer=setTimeout(s,1e3);e.reconnectionAttempts++>=t?e.redoTransports?(e.publish("reconnect_failed"),i()):(e.on("connect_failed",s),e.options["try multiple transports"]=!0,e.transports=e.origTransports,e.transport=e.getTransport(),e.redoTransports=!0,e.connect()):(e.reconnectionDelay=10:!1},n.xdomainCheck=function(){return!0},typeof window!="undefined"&&(WEB_SOCKET_DISABLE_AUTO_INITIALIZATION=!0),t.transports.push("flashsocket")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports);if("undefined"!=typeof window)var swfobject=function(){function C(){if(b)return;try{var e=a.getElementsByTagName("body")[0].appendChild(U("span"));e.parentNode.removeChild(e)}catch(t){return}b=!0;var n=c.length;for(var r=0;r0)for(var n=0;n0){var o=R(r);if(o)if(W(h[n].swfVersion)&&!(T.wk&&T.wk<312))V(r,!0),i&&(s.success=!0,s.ref=_(r),i(s));else if(h[n].expressInstall&&D()){var u={};u.data=h[n].expressInstall,u.width=o.getAttribute("width")||"0",u.height=o.getAttribute("height")||"0",o.getAttribute("class")&&(u.styleclass=o.getAttribute("class")),o.getAttribute("align")&&(u.align=o.getAttribute("align"));var a={},f=o.getElementsByTagName("param"),l=f.length;for(var c=0;c');u.outerHTML='"+l+"",p[p.length]=n.id,o=R(n.id)}else{var h=U(t);h.setAttribute("type",i);for(var d in n)n[d]!=Object.prototype[d]&&(d.toLowerCase()=="styleclass"?h.setAttribute("class",n[d]):d.toLowerCase()!="classid"&&h.setAttribute(d,n[d]));for(var v in r)r[v]!=Object.prototype[v]&&v.toLowerCase()!="movie"&&F(h,v,r[v]);u.parentNode.replaceChild(h,u),o=h}}return o}function F(e,t,n){var r=U("param");r.setAttribute("name",t),r.setAttribute("value",n),e.appendChild(r)}function I(e){var t=R(e);t&&t.nodeName=="OBJECT"&&(T.ie&&T.win?(t.style.display="none",function(){t.readyState==4?q(e):setTimeout(arguments.callee,10)}()):t.parentNode.removeChild(t))}function q(e){var t=R(e);if(t){for(var n in t)typeof t[n]=="function"&&(t[n]=null);t.parentNode.removeChild(t)}}function R(e){var t=null;try{t=a.getElementById(e)}catch(n){}return t}function U(e){return a.createElement(e)}function z(e,t,n){e.attachEvent(t,n),d[d.length]=[e,t,n]}function W(e){var t=T.pv,n=e.split(".");return n[0]=parseInt(n[0],10),n[1]=parseInt(n[1],10)||0,n[2]=parseInt(n[2],10)||0,t[0]>n[0]||t[0]==n[0]&&t[1]>n[1]||t[0]==n[0]&&t[1]==n[1]&&t[2]>=n[2]?!0:!1}function X(n,r,i,s){if(T.ie&&T.mac)return;var o=a.getElementsByTagName("head")[0];if(!o)return;var u=i&&typeof i=="string"?i:"screen";s&&(E=null,S=null);if(!E||S!=u){var f=U("style");f.setAttribute("type","text/css"),f.setAttribute("media",u),E=o.appendChild(f),T.ie&&T.win&&typeof a.styleSheets!=e&&a.styleSheets.length>0&&(E=a.styleSheets[a.styleSheets.length-1]),S=u}T.ie&&T.win?E&&typeof E.addRule==t&&E.addRule(n,r):E&&typeof a.createTextNode!=e&&E.appendChild(a.createTextNode(n+" {"+r+"}"))}function V(e,t){if(!x)return;var n=t?"visible":"hidden";b&&R(e)?R(e).style.visibility=n:X("#"+e,"visibility:"+n)}function $(t){var n=/[\\\"<>\.;]/,r=n.exec(t)!=null;return r&&typeof encodeURIComponent!=e?encodeURIComponent(t):t}var e="undefined",t="object",n="Shockwave Flash",r="ShockwaveFlash.ShockwaveFlash",i="application/x-shockwave-flash",s="SWFObjectExprInst",o="onreadystatechange",u=window,a=document,f=navigator,l=!1,c=[A],h=[],p=[],d=[],v,m,g,y,b=!1,w=!1,E,S,x=!0,T=function(){var s=typeof a.getElementById!=e&&typeof a.getElementsByTagName!=e&&typeof a.createElement!=e,o=f.userAgent.toLowerCase(),c=f.platform.toLowerCase(),h=c?/win/.test(c):/win/.test(o),p=c?/mac/.test(c):/mac/.test(o),d=/webkit/.test(o)?parseFloat(o.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):!1,v=!1,m=[0,0,0],g=null;if(typeof f.plugins!=e&&typeof f.plugins[n]==t)g=f.plugins[n].description,g&&(typeof f.mimeTypes==e||!f.mimeTypes[i]||!!f.mimeTypes[i].enabledPlugin)&&(l=!0,v=!1,g=g.replace(/^.*\s+(\S+\s+\S+$)/,"$1"),m[0]=parseInt(g.replace(/^(.*)\..*$/,"$1"),10),m[1]=parseInt(g.replace(/^.*\.(.*)\s.*$/,"$1"),10),m[2]=/[a-zA-Z]/.test(g)?parseInt(g.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0);else if(typeof u[["Active"].concat("Object").join("X")]!=e)try{var y=new(window[["Active"].concat("Object").join("X")])(r);y&&(g=y.GetVariable("$version"),g&&(v=!0,g=g.split(" ")[1].split(","),m=[parseInt(g[0],10),parseInt(g[1],10),parseInt(g[2],10)]))}catch(b){}return{w3:s,pv:m,wk:d,ie:v,win:h,mac:p}}(),N=function(){if(!T.w3)return;(typeof a.readyState!=e&&a.readyState=="complete"||typeof a.readyState==e&&(a.getElementsByTagName("body")[0]||a.body))&&C(),b||(typeof a.addEventListener!=e&&a.addEventListener("DOMContentLoaded",C,!1),T.ie&&T.win&&(a.attachEvent(o,function(){a.readyState=="complete"&&(a.detachEvent(o,arguments.callee),C())}),u==top&&function(){if(b)return;try{a.documentElement.doScroll("left")}catch(e){setTimeout(arguments.callee,0);return}C()}()),T.wk&&function(){if(b)return;if(!/loaded|complete/.test(a.readyState)){setTimeout(arguments.callee,0);return}C()}(),L(C))}(),J=function(){T.ie&&T.win&&window.attachEvent("onunload",function(){var e=d.length;for(var t=0;t= 10.0.0 is required.");return}location.protocol=="file:"&&e.error("WARNING: web-socket-js doesn't work in file:///... URL unless you set Flash Security Settings properly. Open the page via Web server i.e. http://..."),WebSocket=function(e,t,n,r,i){var s=this;s.__id=WebSocket.__nextId++,WebSocket.__instances[s.__id]=s,s.readyState=WebSocket.CONNECTING,s.bufferedAmount=0,s.__events={},t?typeof t=="string"&&(t=[t]):t=[],setTimeout(function(){WebSocket.__addTask(function(){WebSocket.__flash.create(s.__id,e,t,n||null,r||0,i||null)})},0)},WebSocket.prototype.send=function(e){if(this.readyState==WebSocket.CONNECTING)throw"INVALID_STATE_ERR: Web Socket connection has not been established";var t=WebSocket.__flash.send(this.__id,encodeURIComponent(e));return t<0?!0:(this.bufferedAmount+=t,!1)},WebSocket.prototype.close=function(){if(this.readyState==WebSocket.CLOSED||this.readyState==WebSocket.CLOSING)return;this.readyState=WebSocket.CLOSING,WebSocket.__flash.close(this.__id)},WebSocket.prototype.addEventListener=function(e,t,n){e in this.__events||(this.__events[e]=[]),this.__events[e].push(t)},WebSocket.prototype.removeEventListener=function(e,t,n){if(!(e in this.__events))return;var r=this.__events[e];for(var i=r.length-1;i>=0;--i)if(r[i]===t){r.splice(i,1);break}},WebSocket.prototype.dispatchEvent=function(e){var t=this.__events[e.type]||[];for(var n=0;n"),this.doc.close(),this.doc.parentWindow.s=this;var e=this.doc.createElement("div");e.className="socketio",this.doc.body.appendChild(e),this.iframe=this.doc.createElement("iframe"),e.appendChild(this.iframe);var n=this,r=t.util.query(this.socket.options.query,"t="+ +(new Date));this.iframe.src=this.prepareUrl()+r,t.util.on(window,"unload",function(){n.destroy()})},n.prototype._=function(e,t){this.onData(e);try{var n=t.getElementsByTagName("script")[0];n.parentNode.removeChild(n)}catch(r){}},n.prototype.destroy=function(){if(this.iframe){try{this.iframe.src="about:blank"}catch(e){}this.doc=null,this.iframe.parentNode.removeChild(this.iframe),this.iframe=null,CollectGarbage()}},n.prototype.close=function(){return this.destroy(),t.Transport.XHR.prototype.close.call(this)},n.check=function(e){if(typeof window!="undefined"&&["Active"].concat("Object").join("X")in window)try{var n=new(window[["Active"].concat("Object").join("X")])("htmlfile");return n&&t.Transport.XHR.check(e)}catch(r){}return!1},n.xdomainCheck=function(){return!1},t.transports.push("htmlfile")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports),function(e,t,n){function r(){t.Transport.XHR.apply(this,arguments)}function i(){}e["xhr-polling"]=r,t.util.inherit(r,t.Transport.XHR),t.util.merge(r,t.Transport.XHR),r.prototype.name="xhr-polling",r.prototype.heartbeats=function(){return!1},r.prototype.open=function(){var e=this;return t.Transport.XHR.prototype.open.call(e),!1},r.prototype.get=function(){function t(){this.readyState==4&&(this.onreadystatechange=i,this.status==200?(e.onData(this.responseText),e.get()):e.onClose())}function r(){this.onload=i,this.onerror=i,e.retryCounter=1,e.onData(this.responseText),e.get()}function s(){e.retryCounter++,!e.retryCounter||e.retryCounter>3?e.onClose():e.get()}if(!this.isOpen)return;var e=this;this.xhr=this.request(),n.XDomainRequest&&this.xhr instanceof XDomainRequest?(this.xhr.onload=r,this.xhr.onerror=s):this.xhr.onreadystatechange=t,this.xhr.send(null)},r.prototype.onClose=function(){t.Transport.XHR.prototype.onClose.call(this);if(this.xhr){this.xhr.onreadystatechange=this.xhr.onload=this.xhr.onerror=i;try{this.xhr.abort()}catch(e){}this.xhr=null}},r.prototype.ready=function(e,n){var r=this;t.util.defer(function(){n.call(r)})},t.transports.push("xhr-polling")}("undefined"!=typeof io?io.Transport:module.exports,"undefined"!=typeof io?io:module.parent.exports,this),function(e,t,n){function i(e){t.Transport["xhr-polling"].apply(this,arguments),this.index=t.j.length;var n=this;t.j.push(function(e){n._(e)})}var r=n.document&&"MozAppearance"in n.document.documentElement.style;e["jsonp-polling"]=i,t.util.inherit(i,t.Transport["xhr-polling"]),i.prototype.name="jsonp-polling",i.prototype.post=function(e){function a(){f(),n.socket.setBuffer(!1)}function f(){n.iframe&&n.form.removeChild(n.iframe);try{u=document.createElement('