flapjack 0.7.35 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -1
  3. data/Gemfile +3 -4
  4. data/Guardfile +1 -1
  5. data/README.md +38 -19
  6. data/Rakefile +1 -3
  7. data/etc/flapjack_config.yaml.example +11 -1
  8. data/features/steps/cli_steps.rb +3 -3
  9. data/features/steps/events_steps.rb +7 -6
  10. data/features/steps/flapjack-netsaint-parser_steps.rb +8 -8
  11. data/features/steps/notifications_steps.rb +10 -10
  12. data/features/steps/packaging-lintian_steps.rb +5 -9
  13. data/features/steps/time_travel_steps.rb +1 -1
  14. data/flapjack.gemspec +4 -3
  15. data/lib/flapjack/data/contact.rb +78 -6
  16. data/lib/flapjack/data/entity.rb +11 -2
  17. data/lib/flapjack/data/notification_rule.rb +67 -59
  18. data/lib/flapjack/data/semaphore.rb +44 -0
  19. data/lib/flapjack/gateways/api.rb +24 -28
  20. data/lib/flapjack/gateways/api/contact_methods.rb +1 -2
  21. data/lib/flapjack/gateways/api/entity_methods.rb +3 -3
  22. data/lib/flapjack/gateways/jsonapi.rb +249 -0
  23. data/lib/flapjack/gateways/jsonapi/contact_methods.rb +544 -0
  24. data/lib/flapjack/gateways/jsonapi/entity_check_presenter.rb +217 -0
  25. data/lib/flapjack/gateways/jsonapi/entity_methods.rb +350 -0
  26. data/lib/flapjack/gateways/jsonapi/entity_presenter.rb +75 -0
  27. data/lib/flapjack/gateways/jsonapi/rack/json_params_parser.rb +32 -0
  28. data/lib/flapjack/gateways/web.rb +78 -12
  29. data/lib/flapjack/gateways/web/public/css/bootstrap-theme.css +397 -0
  30. data/lib/flapjack/gateways/web/public/css/bootstrap-theme.min.css +7 -0
  31. data/lib/flapjack/gateways/web/public/css/bootstrap.css +7118 -0
  32. data/lib/flapjack/gateways/web/public/css/bootstrap.min.css +6 -8
  33. data/lib/flapjack/gateways/web/public/css/font-awesome.css +1338 -0
  34. data/lib/flapjack/gateways/web/public/css/font-awesome.min.css +4 -0
  35. data/lib/flapjack/gateways/web/public/css/screen.css +80 -0
  36. data/lib/flapjack/gateways/web/public/css/select2-bootstrap.css +87 -0
  37. data/lib/flapjack/gateways/web/public/css/select2.css +615 -0
  38. data/lib/flapjack/gateways/web/public/fonts/FontAwesome.otf +0 -0
  39. data/lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.eot +0 -0
  40. data/lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.svg +414 -0
  41. data/lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.ttf +0 -0
  42. data/lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.woff +0 -0
  43. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.eot +0 -0
  44. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.svg +229 -0
  45. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.ttf +0 -0
  46. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.woff +0 -0
  47. data/lib/flapjack/gateways/web/public/img/flapjack-2013-notext-transparent-300-300.png +0 -0
  48. data/lib/flapjack/gateways/web/public/img/select2.png +0 -0
  49. data/lib/flapjack/gateways/web/public/img/select2x2.png +0 -0
  50. data/lib/flapjack/gateways/web/public/js/backbone-min.js +2 -0
  51. data/lib/flapjack/gateways/web/public/js/backbone.js +1581 -0
  52. data/lib/flapjack/gateways/web/public/js/backbone.jsonapi.js +75 -0
  53. data/lib/flapjack/gateways/web/public/js/bootstrap.js +2276 -0
  54. data/lib/flapjack/gateways/web/public/js/contacts.js +225 -0
  55. data/lib/flapjack/gateways/web/public/js/jquery-1.10.2.js +9789 -0
  56. data/lib/flapjack/gateways/web/public/js/jquery-1.10.2.min.js +6 -0
  57. data/lib/flapjack/gateways/web/public/js/select2.js +3255 -0
  58. data/lib/flapjack/gateways/web/public/js/select2.min.js +22 -0
  59. data/lib/flapjack/gateways/web/public/js/underscore-min.js +6 -0
  60. data/lib/flapjack/gateways/web/public/js/underscore.js +1276 -0
  61. data/lib/flapjack/gateways/web/views/check.html.erb +423 -193
  62. data/lib/flapjack/gateways/web/views/checks.html.erb +51 -71
  63. data/lib/flapjack/gateways/web/views/contact.html.erb +142 -164
  64. data/lib/flapjack/gateways/web/views/contacts.html.erb +20 -40
  65. data/lib/flapjack/gateways/web/views/edit_contacts.html.erb +83 -0
  66. data/lib/flapjack/gateways/web/views/entities.html.erb +18 -37
  67. data/lib/flapjack/gateways/web/views/entity.html.erb +46 -65
  68. data/lib/flapjack/gateways/web/views/index.html.erb +6 -27
  69. data/lib/flapjack/gateways/web/views/layout.erb +95 -0
  70. data/lib/flapjack/gateways/web/views/self_stats.html.erb +100 -114
  71. data/lib/flapjack/pikelet.rb +4 -2
  72. data/lib/flapjack/version.rb +1 -1
  73. data/spec/lib/flapjack/coordinator_spec.rb +120 -120
  74. data/spec/lib/flapjack/data/contact_spec.rb +66 -58
  75. data/spec/lib/flapjack/data/entity_check_spec.rb +179 -179
  76. data/spec/lib/flapjack/data/entity_spec.rb +71 -71
  77. data/spec/lib/flapjack/data/event_spec.rb +34 -30
  78. data/spec/lib/flapjack/data/message_spec.rb +6 -6
  79. data/spec/lib/flapjack/data/notification_rule_spec.rb +24 -24
  80. data/spec/lib/flapjack/data/notification_spec.rb +19 -19
  81. data/spec/lib/flapjack/data/semaphore_spec.rb +24 -0
  82. data/spec/lib/flapjack/data/tag_spec.rb +11 -10
  83. data/spec/lib/flapjack/gateways/api/contact_methods_spec.rb +201 -201
  84. data/spec/lib/flapjack/gateways/api/entity_check_presenter_spec.rb +55 -55
  85. data/spec/lib/flapjack/gateways/api/entity_methods_spec.rb +257 -257
  86. data/spec/lib/flapjack/gateways/api/entity_presenter_spec.rb +26 -26
  87. data/spec/lib/flapjack/gateways/api_spec.rb +1 -1
  88. data/spec/lib/flapjack/gateways/email_spec.rb +4 -4
  89. data/spec/lib/flapjack/gateways/jabber_spec.rb +77 -77
  90. data/spec/lib/flapjack/gateways/jsonapi/contact_methods_spec.rb +830 -0
  91. data/spec/lib/flapjack/gateways/jsonapi/entity_check_presenter_spec.rb +211 -0
  92. data/spec/lib/flapjack/gateways/jsonapi/entity_methods_spec.rb +863 -0
  93. data/spec/lib/flapjack/gateways/jsonapi/entity_presenter_spec.rb +108 -0
  94. data/spec/lib/flapjack/gateways/jsonapi_spec.rb +8 -0
  95. data/spec/lib/flapjack/gateways/oobetet_spec.rb +35 -35
  96. data/spec/lib/flapjack/gateways/pagerduty_spec.rb +40 -40
  97. data/spec/lib/flapjack/gateways/sms_messagenet_spec.rb +3 -3
  98. data/spec/lib/flapjack/gateways/web/views/check.html.erb_spec.rb +1 -1
  99. data/spec/lib/flapjack/gateways/web/views/contact.html.erb_spec.rb +5 -5
  100. data/spec/lib/flapjack/gateways/web/views/index.html.erb_spec.rb +1 -1
  101. data/spec/lib/flapjack/gateways/web_spec.rb +73 -74
  102. data/spec/lib/flapjack/logger_spec.rb +13 -13
  103. data/spec/lib/flapjack/pikelet_spec.rb +33 -33
  104. data/spec/lib/flapjack/processor_spec.rb +22 -22
  105. data/spec/lib/flapjack/redis_pool_spec.rb +1 -1
  106. data/spec/lib/flapjack/utility_spec.rb +12 -12
  107. data/spec/spec_helper.rb +9 -9
  108. data/spec/support/erb_view_helper.rb +4 -0
  109. metadata +107 -96
  110. data/lib/flapjack/gateways/web/public/css/flapjack.css +0 -49
  111. data/lib/flapjack/gateways/web/views/_css.html.erb +0 -42
  112. data/lib/flapjack/gateways/web/views/_foot.html.erb +0 -3
  113. data/lib/flapjack/gateways/web/views/_head.html.erb +0 -5
  114. data/lib/flapjack/gateways/web/views/_nav.html.erb +0 -10
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
3
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4
+ */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.0.3');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.3333333333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857142858em;text-align:center}.fa-ul{padding-left:0;margin-left:2.142857142857143em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;top:.14285714285714285em;text-align:center}.fa-li.fa-lg{left:-1.8571428571428572em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-asc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-desc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-reply-all:before{content:"\f122"}.fa-mail-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}
@@ -0,0 +1,80 @@
1
+ /* sticky footer per http://mystrd.at/modern-clean-css-sticky-footer/ */
2
+ html {
3
+ position: relative;
4
+ min-height: 100%;
5
+ }
6
+ body {
7
+ margin: 0 0 90px;
8
+ }
9
+ /* end sticky footer */
10
+
11
+
12
+ /* navigation */
13
+ nav.navbar-inverse {
14
+ border-radius: 0px;
15
+ }
16
+
17
+ nav.navbar .navbar-brand {
18
+ padding: 7px;
19
+ }
20
+
21
+ nav.navbar .navbar-header img.logo {
22
+ height: 28px;
23
+ display: block;
24
+ float: left;
25
+ margin-left: 8px;
26
+ }
27
+
28
+ nav.navbar .navbar-header span.name {
29
+ padding-top: 8px;
30
+ display: block;
31
+ float: left;
32
+ margin-left: 8px;
33
+ }
34
+
35
+ .container.content {
36
+ padding-bottom: 20px;
37
+ }
38
+
39
+ /* end navigation */
40
+
41
+ /* check page */
42
+
43
+ button.decommission-check {
44
+ margin-left: 12px;
45
+ }
46
+
47
+ div#zone-of-surprise {
48
+ margin-top: 16px;
49
+ }
50
+
51
+ /* end check page */
52
+
53
+ /* footer */
54
+
55
+ footer {
56
+ margin-top: 20px;
57
+ padding: 20px 10px;
58
+ position: absolute;
59
+ height: 60px;
60
+ left: 0;
61
+ bottom: 0;
62
+ width: 100%;
63
+ color: #222;
64
+ background-color: #efefef;
65
+ }
66
+
67
+ footer .row {
68
+ margin: 0;
69
+ }
70
+
71
+ footer p.credits {
72
+ color: gray;
73
+ }
74
+
75
+ footer p.credits span.separator {
76
+ color: #ccc;
77
+ padding: 0 4px;
78
+ }
79
+
80
+ /* end footer */
@@ -0,0 +1,87 @@
1
+ .form-control .select2-choice {
2
+ border: 0;
3
+ border-radius: 2px;
4
+ }
5
+
6
+ .form-control .select2-choice .select2-arrow {
7
+ border-radius: 0 2px 2px 0;
8
+ }
9
+
10
+ .form-control.select2-container {
11
+ height: auto !important;
12
+ padding: 0px;
13
+ }
14
+
15
+ .form-control.select2-container.select2-dropdown-open {
16
+ border-color: #5897FB;
17
+ border-radius: 3px 3px 0 0;
18
+ }
19
+
20
+ .form-control .select2-container.select2-dropdown-open .select2-choices {
21
+ border-radius: 3px 3px 0 0;
22
+ }
23
+
24
+ .form-control.select2-container .select2-choices {
25
+ border: 0 !important;
26
+ border-radius: 3px;
27
+ }
28
+
29
+ .control-group.warning .select2-container .select2-choice,
30
+ .control-group.warning .select2-container .select2-choices,
31
+ .control-group.warning .select2-container-active .select2-choice,
32
+ .control-group.warning .select2-container-active .select2-choices,
33
+ .control-group.warning .select2-dropdown-open.select2-drop-above .select2-choice,
34
+ .control-group.warning .select2-dropdown-open.select2-drop-above .select2-choices,
35
+ .control-group.warning .select2-container-multi.select2-container-active .select2-choices {
36
+ border: 1px solid #C09853 !important;
37
+ }
38
+
39
+ .control-group.warning .select2-container .select2-choice div {
40
+ border-left: 1px solid #C09853 !important;
41
+ background: #FCF8E3 !important;
42
+ }
43
+
44
+ .control-group.error .select2-container .select2-choice,
45
+ .control-group.error .select2-container .select2-choices,
46
+ .control-group.error .select2-container-active .select2-choice,
47
+ .control-group.error .select2-container-active .select2-choices,
48
+ .control-group.error .select2-dropdown-open.select2-drop-above .select2-choice,
49
+ .control-group.error .select2-dropdown-open.select2-drop-above .select2-choices,
50
+ .control-group.error .select2-container-multi.select2-container-active .select2-choices {
51
+ border: 1px solid #B94A48 !important;
52
+ }
53
+
54
+ .control-group.error .select2-container .select2-choice div {
55
+ border-left: 1px solid #B94A48 !important;
56
+ background: #F2DEDE !important;
57
+ }
58
+
59
+ .control-group.info .select2-container .select2-choice,
60
+ .control-group.info .select2-container .select2-choices,
61
+ .control-group.info .select2-container-active .select2-choice,
62
+ .control-group.info .select2-container-active .select2-choices,
63
+ .control-group.info .select2-dropdown-open.select2-drop-above .select2-choice,
64
+ .control-group.info .select2-dropdown-open.select2-drop-above .select2-choices,
65
+ .control-group.info .select2-container-multi.select2-container-active .select2-choices {
66
+ border: 1px solid #3A87AD !important;
67
+ }
68
+
69
+ .control-group.info .select2-container .select2-choice div {
70
+ border-left: 1px solid #3A87AD !important;
71
+ background: #D9EDF7 !important;
72
+ }
73
+
74
+ .control-group.success .select2-container .select2-choice,
75
+ .control-group.success .select2-container .select2-choices,
76
+ .control-group.success .select2-container-active .select2-choice,
77
+ .control-group.success .select2-container-active .select2-choices,
78
+ .control-group.success .select2-dropdown-open.select2-drop-above .select2-choice,
79
+ .control-group.success .select2-dropdown-open.select2-drop-above .select2-choices,
80
+ .control-group.success .select2-container-multi.select2-container-active .select2-choices {
81
+ border: 1px solid #468847 !important;
82
+ }
83
+
84
+ .control-group.success .select2-container .select2-choice div {
85
+ border-left: 1px solid #468847 !important;
86
+ background: #DFF0D8 !important;
87
+ }
@@ -0,0 +1,615 @@
1
+ /*
2
+ Version: 3.4.5 Timestamp: Mon Nov 4 08:22:42 PST 2013
3
+ */
4
+ .select2-container {
5
+ margin: 0;
6
+ position: relative;
7
+ display: inline-block;
8
+ /* inline-block for ie7 */
9
+ zoom: 1;
10
+ *display: inline;
11
+ vertical-align: middle;
12
+ }
13
+
14
+ .select2-container,
15
+ .select2-drop,
16
+ .select2-search,
17
+ .select2-search input {
18
+ /*
19
+ Force border-box so that % widths fit the parent
20
+ container without overlap because of margin/padding.
21
+
22
+ More Info : http://www.quirksmode.org/css/box.html
23
+ */
24
+ -webkit-box-sizing: border-box; /* webkit */
25
+ -moz-box-sizing: border-box; /* firefox */
26
+ box-sizing: border-box; /* css3 */
27
+ }
28
+
29
+ .select2-container .select2-choice {
30
+ display: block;
31
+ height: 26px;
32
+ padding: 0 0 0 8px;
33
+ overflow: hidden;
34
+ position: relative;
35
+
36
+ border: 1px solid #aaa;
37
+ white-space: nowrap;
38
+ line-height: 26px;
39
+ color: #444;
40
+ text-decoration: none;
41
+
42
+ border-radius: 4px;
43
+
44
+ background-clip: padding-box;
45
+
46
+ -webkit-touch-callout: none;
47
+ -webkit-user-select: none;
48
+ -moz-user-select: none;
49
+ -ms-user-select: none;
50
+ user-select: none;
51
+
52
+ background-color: #fff;
53
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff));
54
+ background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%);
55
+ background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%);
56
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0);
57
+ background-image: linear-gradient(top, #fff 0%, #eee 50%);
58
+ }
59
+
60
+ .select2-container.select2-drop-above .select2-choice {
61
+ border-bottom-color: #aaa;
62
+
63
+ border-radius: 0 0 4px 4px;
64
+
65
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff));
66
+ background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%);
67
+ background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%);
68
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
69
+ background-image: linear-gradient(top, #eee 0%, #fff 90%);
70
+ }
71
+
72
+ .select2-container.select2-allowclear .select2-choice .select2-chosen {
73
+ margin-right: 42px;
74
+ }
75
+
76
+ .select2-container .select2-choice > .select2-chosen {
77
+ margin-right: 26px;
78
+ display: block;
79
+ overflow: hidden;
80
+
81
+ white-space: nowrap;
82
+
83
+ text-overflow: ellipsis;
84
+ }
85
+
86
+ .select2-container .select2-choice abbr {
87
+ display: none;
88
+ width: 12px;
89
+ height: 12px;
90
+ position: absolute;
91
+ right: 24px;
92
+ top: 8px;
93
+
94
+ font-size: 1px;
95
+ text-decoration: none;
96
+
97
+ border: 0;
98
+ background: url('../img/select2.png') right top no-repeat;
99
+ cursor: pointer;
100
+ outline: 0;
101
+ }
102
+
103
+ .select2-container.select2-allowclear .select2-choice abbr {
104
+ display: inline-block;
105
+ }
106
+
107
+ .select2-container .select2-choice abbr:hover {
108
+ background-position: right -11px;
109
+ cursor: pointer;
110
+ }
111
+
112
+ .select2-drop-mask {
113
+ border: 0;
114
+ margin: 0;
115
+ padding: 0;
116
+ position: fixed;
117
+ left: 0;
118
+ top: 0;
119
+ min-height: 100%;
120
+ min-width: 100%;
121
+ height: auto;
122
+ width: auto;
123
+ opacity: 0;
124
+ z-index: 9998;
125
+ /* styles required for IE to work */
126
+ background-color: #fff;
127
+ filter: alpha(opacity=0);
128
+ }
129
+
130
+ .select2-drop {
131
+ width: 100%;
132
+ margin-top: -1px;
133
+ position: absolute;
134
+ z-index: 9999;
135
+ top: 100%;
136
+
137
+ background: #fff;
138
+ color: #000;
139
+ border: 1px solid #aaa;
140
+ border-top: 0;
141
+
142
+ border-radius: 0 0 4px 4px;
143
+
144
+ -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
145
+ box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
146
+ }
147
+
148
+ .select2-drop-auto-width {
149
+ border-top: 1px solid #aaa;
150
+ width: auto;
151
+ }
152
+
153
+ .select2-drop-auto-width .select2-search {
154
+ padding-top: 4px;
155
+ }
156
+
157
+ .select2-drop.select2-drop-above {
158
+ margin-top: 1px;
159
+ border-top: 1px solid #aaa;
160
+ border-bottom: 0;
161
+
162
+ border-radius: 4px 4px 0 0;
163
+
164
+ -webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
165
+ box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
166
+ }
167
+
168
+ .select2-drop-active {
169
+ border: 1px solid #5897fb;
170
+ border-top: none;
171
+ }
172
+
173
+ .select2-drop.select2-drop-above.select2-drop-active {
174
+ border-top: 1px solid #5897fb;
175
+ }
176
+
177
+ .select2-container .select2-choice .select2-arrow {
178
+ display: inline-block;
179
+ width: 18px;
180
+ height: 100%;
181
+ position: absolute;
182
+ right: 0;
183
+ top: 0;
184
+
185
+ border-left: 1px solid #aaa;
186
+ border-radius: 0 4px 4px 0;
187
+
188
+ background-clip: padding-box;
189
+
190
+ background: #ccc;
191
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
192
+ background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
193
+ background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
194
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0);
195
+ background-image: linear-gradient(top, #ccc 0%, #eee 60%);
196
+ }
197
+
198
+ .select2-container .select2-choice .select2-arrow b {
199
+ display: block;
200
+ width: 100%;
201
+ height: 100%;
202
+ background: url('../img/select2.png') no-repeat 0 1px;
203
+ }
204
+
205
+ .select2-search {
206
+ display: inline-block;
207
+ width: 100%;
208
+ min-height: 26px;
209
+ margin: 0;
210
+ padding-left: 4px;
211
+ padding-right: 4px;
212
+
213
+ position: relative;
214
+ z-index: 10000;
215
+
216
+ white-space: nowrap;
217
+ }
218
+
219
+ .select2-search input {
220
+ width: 100%;
221
+ height: auto !important;
222
+ min-height: 26px;
223
+ padding: 4px 20px 4px 5px;
224
+ margin: 0;
225
+
226
+ outline: 0;
227
+ font-family: sans-serif;
228
+ font-size: 1em;
229
+
230
+ border: 1px solid #aaa;
231
+ border-radius: 0;
232
+
233
+ -webkit-box-shadow: none;
234
+ box-shadow: none;
235
+
236
+ background: #fff url('../img/select2.png') no-repeat 100% -22px;
237
+ background: url('../img/select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
238
+ background: url('../img/select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
239
+ background: url('../img/select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
240
+ background: url('../img/select2.png') no-repeat 100% -22px, linear-gradient(top, #fff 85%, #eee 99%);
241
+ }
242
+
243
+ .select2-drop.select2-drop-above .select2-search input {
244
+ margin-top: 4px;
245
+ }
246
+
247
+ .select2-search input.select2-active {
248
+ background: #fff url('../img/select2-spinner.gif') no-repeat 100%;
249
+ background: url('../img/select2-spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
250
+ background: url('../img/select2-spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
251
+ background: url('../img/select2-spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
252
+ background: url('../img/select2-spinner.gif') no-repeat 100%, linear-gradient(top, #fff 85%, #eee 99%);
253
+ }
254
+
255
+ .select2-container-active .select2-choice,
256
+ .select2-container-active .select2-choices {
257
+ border: 1px solid #5897fb;
258
+ outline: none;
259
+
260
+ -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
261
+ box-shadow: 0 0 5px rgba(0, 0, 0, .3);
262
+ }
263
+
264
+ .select2-dropdown-open .select2-choice {
265
+ border-bottom-color: transparent;
266
+ -webkit-box-shadow: 0 1px 0 #fff inset;
267
+ box-shadow: 0 1px 0 #fff inset;
268
+
269
+ border-bottom-left-radius: 0;
270
+ border-bottom-right-radius: 0;
271
+
272
+ background-color: #eee;
273
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee));
274
+ background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%);
275
+ background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%);
276
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
277
+ background-image: linear-gradient(top, #fff 0%, #eee 50%);
278
+ }
279
+
280
+ .select2-dropdown-open.select2-drop-above .select2-choice,
281
+ .select2-dropdown-open.select2-drop-above .select2-choices {
282
+ border: 1px solid #5897fb;
283
+ border-top-color: transparent;
284
+
285
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee));
286
+ background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%);
287
+ background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%);
288
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
289
+ background-image: linear-gradient(bottom, #fff 0%, #eee 50%);
290
+ }
291
+
292
+ .select2-dropdown-open .select2-choice .select2-arrow {
293
+ background: transparent;
294
+ border-left: none;
295
+ filter: none;
296
+ }
297
+ .select2-dropdown-open .select2-choice .select2-arrow b {
298
+ background-position: -18px 1px;
299
+ }
300
+
301
+ /* results */
302
+ .select2-results {
303
+ max-height: 200px;
304
+ padding: 0 0 0 4px;
305
+ margin: 4px 4px 4px 0;
306
+ position: relative;
307
+ overflow-x: hidden;
308
+ overflow-y: auto;
309
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
310
+ }
311
+
312
+ .select2-results ul.select2-result-sub {
313
+ margin: 0;
314
+ padding-left: 0;
315
+ }
316
+
317
+ .select2-results ul.select2-result-sub > li .select2-result-label { padding-left: 20px }
318
+ .select2-results ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 40px }
319
+ .select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 60px }
320
+ .select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 80px }
321
+ .select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 100px }
322
+ .select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 110px }
323
+ .select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 120px }
324
+
325
+ .select2-results li {
326
+ list-style: none;
327
+ display: list-item;
328
+ background-image: none;
329
+ }
330
+
331
+ .select2-results li.select2-result-with-children > .select2-result-label {
332
+ font-weight: bold;
333
+ }
334
+
335
+ .select2-results .select2-result-label {
336
+ padding: 3px 7px 4px;
337
+ margin: 0;
338
+ cursor: pointer;
339
+
340
+ min-height: 1em;
341
+
342
+ -webkit-touch-callout: none;
343
+ -webkit-user-select: none;
344
+ -moz-user-select: none;
345
+ -ms-user-select: none;
346
+ user-select: none;
347
+ }
348
+
349
+ .select2-results .select2-highlighted {
350
+ background: #3875d7;
351
+ color: #fff;
352
+ }
353
+
354
+ .select2-results li em {
355
+ background: #feffde;
356
+ font-style: normal;
357
+ }
358
+
359
+ .select2-results .select2-highlighted em {
360
+ background: transparent;
361
+ }
362
+
363
+ .select2-results .select2-highlighted ul {
364
+ background: #fff;
365
+ color: #000;
366
+ }
367
+
368
+
369
+ .select2-results .select2-no-results,
370
+ .select2-results .select2-searching,
371
+ .select2-results .select2-selection-limit {
372
+ background: #f4f4f4;
373
+ display: list-item;
374
+ }
375
+
376
+ /*
377
+ disabled look for disabled choices in the results dropdown
378
+ */
379
+ .select2-results .select2-disabled.select2-highlighted {
380
+ color: #666;
381
+ background: #f4f4f4;
382
+ display: list-item;
383
+ cursor: default;
384
+ }
385
+ .select2-results .select2-disabled {
386
+ background: #f4f4f4;
387
+ display: list-item;
388
+ cursor: default;
389
+ }
390
+
391
+ .select2-results .select2-selected {
392
+ display: none;
393
+ }
394
+
395
+ .select2-more-results.select2-active {
396
+ background: #f4f4f4 url('../img/select2-spinner.gif') no-repeat 100%;
397
+ }
398
+
399
+ .select2-more-results {
400
+ background: #f4f4f4;
401
+ display: list-item;
402
+ }
403
+
404
+ /* disabled styles */
405
+
406
+ .select2-container.select2-container-disabled .select2-choice {
407
+ background-color: #f4f4f4;
408
+ background-image: none;
409
+ border: 1px solid #ddd;
410
+ cursor: default;
411
+ }
412
+
413
+ .select2-container.select2-container-disabled .select2-choice .select2-arrow {
414
+ background-color: #f4f4f4;
415
+ background-image: none;
416
+ border-left: 0;
417
+ }
418
+
419
+ .select2-container.select2-container-disabled .select2-choice abbr {
420
+ display: none;
421
+ }
422
+
423
+
424
+ /* multiselect */
425
+
426
+ .select2-container-multi .select2-choices {
427
+ height: auto !important;
428
+ height: 1%;
429
+ margin: 0;
430
+ padding: 0;
431
+ position: relative;
432
+
433
+ border: 1px solid #aaa;
434
+ cursor: text;
435
+ overflow: hidden;
436
+
437
+ background-color: #fff;
438
+ background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff));
439
+ background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%);
440
+ background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%);
441
+ background-image: linear-gradient(top, #eee 1%, #fff 15%);
442
+ }
443
+
444
+ .select2-locked {
445
+ padding: 3px 5px 3px 5px !important;
446
+ }
447
+
448
+ .select2-container-multi .select2-choices {
449
+ min-height: 26px;
450
+ }
451
+
452
+ .select2-container-multi.select2-container-active .select2-choices {
453
+ border: 1px solid #5897fb;
454
+ outline: none;
455
+
456
+ -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
457
+ box-shadow: 0 0 5px rgba(0, 0, 0, .3);
458
+ }
459
+ .select2-container-multi .select2-choices li {
460
+ float: left;
461
+ list-style: none;
462
+ }
463
+ .select2-container-multi .select2-choices .select2-search-field {
464
+ margin: 0;
465
+ padding: 0;
466
+ white-space: nowrap;
467
+ }
468
+
469
+ .select2-container-multi .select2-choices .select2-search-field input {
470
+ padding: 5px;
471
+ margin: 1px 0;
472
+
473
+ font-family: sans-serif;
474
+ font-size: 100%;
475
+ color: #666;
476
+ outline: 0;
477
+ border: 0;
478
+ -webkit-box-shadow: none;
479
+ box-shadow: none;
480
+ background: transparent !important;
481
+ }
482
+
483
+ .select2-container-multi .select2-choices .select2-search-field input.select2-active {
484
+ background: #fff url('../img/select2-spinner.gif') no-repeat 100% !important;
485
+ }
486
+
487
+ .select2-default {
488
+ color: #999 !important;
489
+ }
490
+
491
+ .select2-container-multi .select2-choices .select2-search-choice {
492
+ padding: 3px 5px 3px 18px;
493
+ margin: 3px 0 3px 5px;
494
+ position: relative;
495
+
496
+ line-height: 13px;
497
+ color: #333;
498
+ cursor: default;
499
+ border: 1px solid #aaaaaa;
500
+
501
+ border-radius: 3px;
502
+
503
+ -webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
504
+ box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
505
+
506
+ background-clip: padding-box;
507
+
508
+ -webkit-touch-callout: none;
509
+ -webkit-user-select: none;
510
+ -moz-user-select: none;
511
+ -ms-user-select: none;
512
+ user-select: none;
513
+
514
+ background-color: #e4e4e4;
515
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0);
516
+ background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee));
517
+ background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
518
+ background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
519
+ background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
520
+ }
521
+ .select2-container-multi .select2-choices .select2-search-choice .select2-chosen {
522
+ cursor: default;
523
+ }
524
+ .select2-container-multi .select2-choices .select2-search-choice-focus {
525
+ background: #d4d4d4;
526
+ }
527
+
528
+ .select2-search-choice-close {
529
+ display: block;
530
+ width: 12px;
531
+ height: 13px;
532
+ position: absolute;
533
+ right: 3px;
534
+ top: 4px;
535
+
536
+ font-size: 1px;
537
+ outline: none;
538
+ background: url('../img/select2.png') right top no-repeat;
539
+ }
540
+
541
+ .select2-container-multi .select2-search-choice-close {
542
+ left: 3px;
543
+ }
544
+
545
+ .select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover {
546
+ background-position: right -11px;
547
+ }
548
+ .select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close {
549
+ background-position: right -11px;
550
+ }
551
+
552
+ /* disabled styles */
553
+ .select2-container-multi.select2-container-disabled .select2-choices {
554
+ background-color: #f4f4f4;
555
+ background-image: none;
556
+ border: 1px solid #ddd;
557
+ cursor: default;
558
+ }
559
+
560
+ .select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {
561
+ padding: 3px 5px 3px 5px;
562
+ border: 1px solid #ddd;
563
+ background-image: none;
564
+ background-color: #f4f4f4;
565
+ }
566
+
567
+ .select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close { display: none;
568
+ background: none;
569
+ }
570
+ /* end multiselect */
571
+
572
+
573
+ .select2-result-selectable .select2-match,
574
+ .select2-result-unselectable .select2-match {
575
+ text-decoration: underline;
576
+ }
577
+
578
+ .select2-offscreen, .select2-offscreen:focus {
579
+ clip: rect(0 0 0 0) !important;
580
+ width: 1px !important;
581
+ height: 1px !important;
582
+ border: 0 !important;
583
+ margin: 0 !important;
584
+ padding: 0 !important;
585
+ overflow: hidden !important;
586
+ position: absolute !important;
587
+ outline: 0 !important;
588
+ left: 0px !important;
589
+ top: 0px !important;
590
+ }
591
+
592
+ .select2-display-none {
593
+ display: none;
594
+ }
595
+
596
+ .select2-measure-scrollbar {
597
+ position: absolute;
598
+ top: -10000px;
599
+ left: -10000px;
600
+ width: 100px;
601
+ height: 100px;
602
+ overflow: scroll;
603
+ }
604
+ /* Retina-ize icons */
605
+
606
+ @media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) {
607
+ .select2-search input, .select2-search-choice-close, .select2-container .select2-choice abbr, .select2-container .select2-choice .select2-arrow b {
608
+ background-image: url('../img/select2x2.png') !important;
609
+ background-repeat: no-repeat !important;
610
+ background-size: 60px 40px !important;
611
+ }
612
+ .select2-search input {
613
+ background-position: 100% -21px !important;
614
+ }
615
+ }