flatui3-rails 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +102 -0
  5. data/Rakefile +1 -0
  6. data/app/assets/fonts/Flat-UI-Icons.dev.svg +140 -0
  7. data/app/assets/fonts/Flat-UI-Icons.eot +0 -0
  8. data/app/assets/fonts/Flat-UI-Icons.svg +140 -0
  9. data/app/assets/fonts/Flat-UI-Icons.ttf +0 -0
  10. data/app/assets/fonts/Flat-UI-Icons.woff +0 -0
  11. data/app/assets/fonts/icomoon-session.json +1 -0
  12. data/app/assets/fonts/lato/lato-black-webfont.eot +0 -0
  13. data/app/assets/fonts/lato/lato-black-webfont.svg +4691 -0
  14. data/app/assets/fonts/lato/lato-black-webfont.ttf +0 -0
  15. data/app/assets/fonts/lato/lato-black-webfont.woff +0 -0
  16. data/app/assets/fonts/lato/lato-bold-webfont.eot +0 -0
  17. data/app/assets/fonts/lato/lato-bold-webfont.svg +5085 -0
  18. data/app/assets/fonts/lato/lato-bold-webfont.ttf +0 -0
  19. data/app/assets/fonts/lato/lato-bold-webfont.woff +0 -0
  20. data/app/assets/fonts/lato/lato-bolditalic-webfont.eot +0 -0
  21. data/app/assets/fonts/lato/lato-bolditalic-webfont.svg +4514 -0
  22. data/app/assets/fonts/lato/lato-bolditalic-webfont.ttf +0 -0
  23. data/app/assets/fonts/lato/lato-bolditalic-webfont.woff +0 -0
  24. data/app/assets/fonts/lato/lato-italic-webfont.eot +0 -0
  25. data/app/assets/fonts/lato/lato-italic-webfont.svg +4514 -0
  26. data/app/assets/fonts/lato/lato-italic-webfont.ttf +0 -0
  27. data/app/assets/fonts/lato/lato-italic-webfont.woff +0 -0
  28. data/app/assets/fonts/lato/lato-light-webfont.eot +0 -0
  29. data/app/assets/fonts/lato/lato-light-webfont.svg +4691 -0
  30. data/app/assets/fonts/lato/lato-light-webfont.ttf +0 -0
  31. data/app/assets/fonts/lato/lato-light-webfont.woff +0 -0
  32. data/app/assets/fonts/lato/lato-regular-webfont.eot +0 -0
  33. data/app/assets/fonts/lato/lato-regular-webfont.svg +4691 -0
  34. data/app/assets/fonts/lato/lato-regular-webfont.ttf +0 -0
  35. data/app/assets/fonts/lato/lato-regular-webfont.woff +0 -0
  36. data/app/assets/images/demo/browser-2x.png +0 -0
  37. data/app/assets/images/demo/browser-author.jpg +0 -0
  38. data/app/assets/images/demo/browser-pic-1.jpg +0 -0
  39. data/app/assets/images/demo/browser-pic-2.jpg +0 -0
  40. data/app/assets/images/demo/browser-pic-3.jpg +0 -0
  41. data/app/assets/images/demo/browser-pic-4.jpg +0 -0
  42. data/app/assets/images/demo/browser-pic-5.jpg +0 -0
  43. data/app/assets/images/demo/browser-pic-6.jpg +0 -0
  44. data/app/assets/images/demo/browser.png +0 -0
  45. data/app/assets/images/demo/html-icon.png +0 -0
  46. data/app/assets/images/demo/logo-mask-2x.png +0 -0
  47. data/app/assets/images/demo/logo-mask.png +0 -0
  48. data/app/assets/images/demo/video.jpg +0 -0
  49. data/app/assets/images/exaple-image.jpg +0 -0
  50. data/app/assets/images/favicon.ico +0 -0
  51. data/app/assets/images/footer/logo.png +0 -0
  52. data/app/assets/images/icons/png/Book.png +0 -0
  53. data/app/assets/images/icons/png/Calendar.png +0 -0
  54. data/app/assets/images/icons/png/Chat.png +0 -0
  55. data/app/assets/images/icons/png/Clipboard.png +0 -0
  56. data/app/assets/images/icons/png/Compas.png +0 -0
  57. data/app/assets/images/icons/png/Gift-Box.png +0 -0
  58. data/app/assets/images/icons/png/Infinity-Loop.png +0 -0
  59. data/app/assets/images/icons/png/Mail.png +0 -0
  60. data/app/assets/images/icons/png/Map.png +0 -0
  61. data/app/assets/images/icons/png/Pensils.png +0 -0
  62. data/app/assets/images/icons/png/Pocket.png +0 -0
  63. data/app/assets/images/icons/png/Retina-Ready.png +0 -0
  64. data/app/assets/images/icons/png/Toilet-Paper.png +0 -0
  65. data/app/assets/images/icons/png/Watches.png +0 -0
  66. data/app/assets/images/icons/svg/book.svg +1 -0
  67. data/app/assets/images/icons/svg/calendar.svg +1 -0
  68. data/app/assets/images/icons/svg/chat.svg +1 -0
  69. data/app/assets/images/icons/svg/clipboard.svg +1 -0
  70. data/app/assets/images/icons/svg/clocks.svg +9 -0
  71. data/app/assets/images/icons/svg/compas.svg +1 -0
  72. data/app/assets/images/icons/svg/gift-box.svg +1 -0
  73. data/app/assets/images/icons/svg/loop.svg +5 -0
  74. data/app/assets/images/icons/svg/mail.svg +1 -0
  75. data/app/assets/images/icons/svg/map.svg +1 -0
  76. data/app/assets/images/icons/svg/paper-bag.svg +1 -0
  77. data/app/assets/images/icons/svg/pencils.svg +1 -0
  78. data/app/assets/images/icons/svg/retina.svg +1 -0
  79. data/app/assets/images/icons/svg/toilet-paper.svg +1 -0
  80. data/app/assets/images/login/icon.png +0 -0
  81. data/app/assets/images/login/imac-2x.png +0 -0
  82. data/app/assets/images/login/imac.png +0 -0
  83. data/app/assets/images/switch/mask-square.png +0 -0
  84. data/app/assets/images/switch/mask.png +0 -0
  85. data/app/assets/images/tile/ribbon-2x.png +0 -0
  86. data/app/assets/images/tile/ribbon.png +0 -0
  87. data/app/assets/images/todo/done-2x.png +0 -0
  88. data/app/assets/images/todo/done.png +0 -0
  89. data/app/assets/images/todo/search-2x.png +0 -0
  90. data/app/assets/images/todo/search.png +0 -0
  91. data/app/assets/images/todo/todo-2x.png +0 -0
  92. data/app/assets/images/todo/todo.png +0 -0
  93. data/app/assets/images/video/fullscreen-2x.png +0 -0
  94. data/app/assets/images/video/fullscreen.png +0 -0
  95. data/app/assets/images/video/pause-2x.png +0 -0
  96. data/app/assets/images/video/pause.png +0 -0
  97. data/app/assets/images/video/play-2x.png +0 -0
  98. data/app/assets/images/video/play.png +0 -0
  99. data/app/assets/images/video/poster.jpg +0 -0
  100. data/app/assets/images/video/volume-full-2x.png +0 -0
  101. data/app/assets/images/video/volume-full.png +0 -0
  102. data/app/assets/images/video/volume-off-2x.png +0 -0
  103. data/app/assets/images/video/volume-off.png +0 -0
  104. data/app/assets/javascripts/bootstrap-select.js +412 -0
  105. data/app/assets/javascripts/bootstrap-switch.js +251 -0
  106. data/app/assets/javascripts/bootstrap-typeahead.js +335 -0
  107. data/app/assets/javascripts/flatui-checkbox.js +112 -0
  108. data/app/assets/javascripts/flatui-radio.js +141 -0
  109. data/app/assets/javascripts/flatui.js +9 -0
  110. data/app/assets/javascripts/html5shiv.js +8 -0
  111. data/app/assets/javascripts/icon-font-ie7.js +57 -0
  112. data/app/assets/javascripts/jquery-ui-1.10.3.min.js +6 -0
  113. data/app/assets/javascripts/jquery.placeholder.js +157 -0
  114. data/app/assets/javascripts/jquery.stacktable.js +54 -0
  115. data/app/assets/javascripts/jquery.tagsinput.js +355 -0
  116. data/app/assets/javascripts/jquery.ui.touch-punch.min.js +11 -0
  117. data/app/assets/stylesheets/flatui.less +45 -0
  118. data/flatui3-rails.gemspec +25 -0
  119. data/lib/flatui3-rails.rb +1 -0
  120. data/lib/flatui3/rails.rb +7 -0
  121. data/lib/flatui3/rails/engine.rb +13 -0
  122. data/lib/flatui3/rails/version.rb +5 -0
  123. data/lib/generators/flatui3/override/override_generator.rb +15 -0
  124. data/lib/generators/flatui3/override/templates/flatui_and_overrides.less +49 -0
  125. data/vendor/toolkit/flat-ui/flat-ui.less +45 -0
  126. data/vendor/toolkit/flat-ui/fonts.less +65 -0
  127. data/vendor/toolkit/flat-ui/icon-font.less +128 -0
  128. data/vendor/toolkit/flat-ui/mixins.less +365 -0
  129. data/vendor/toolkit/flat-ui/modules/buttons.less +231 -0
  130. data/vendor/toolkit/flat-ui/modules/caret.less +31 -0
  131. data/vendor/toolkit/flat-ui/modules/checkbox-and-radio.less +104 -0
  132. data/vendor/toolkit/flat-ui/modules/dropdown.less +225 -0
  133. data/vendor/toolkit/flat-ui/modules/footer.less +75 -0
  134. data/vendor/toolkit/flat-ui/modules/forms.less +127 -0
  135. data/vendor/toolkit/flat-ui/modules/input-icons.less +71 -0
  136. data/vendor/toolkit/flat-ui/modules/login.less +111 -0
  137. data/vendor/toolkit/flat-ui/modules/navbar.less +487 -0
  138. data/vendor/toolkit/flat-ui/modules/pager.less +49 -0
  139. data/vendor/toolkit/flat-ui/modules/pagination.less +153 -0
  140. data/vendor/toolkit/flat-ui/modules/palette.less +64 -0
  141. data/vendor/toolkit/flat-ui/modules/progress-bars.less +36 -0
  142. data/vendor/toolkit/flat-ui/modules/select.less +143 -0
  143. data/vendor/toolkit/flat-ui/modules/share.less +41 -0
  144. data/vendor/toolkit/flat-ui/modules/switch.less +150 -0
  145. data/vendor/toolkit/flat-ui/modules/tagsinput.less +117 -0
  146. data/vendor/toolkit/flat-ui/modules/tile.less +54 -0
  147. data/vendor/toolkit/flat-ui/modules/todo.less +107 -0
  148. data/vendor/toolkit/flat-ui/modules/tooltip.less +55 -0
  149. data/vendor/toolkit/flat-ui/modules/type.less +126 -0
  150. data/vendor/toolkit/flat-ui/modules/ui-slider.less +62 -0
  151. data/vendor/toolkit/flat-ui/modules/video.less +458 -0
  152. data/vendor/toolkit/flat-ui/scaffolding.less +46 -0
  153. data/vendor/toolkit/flat-ui/spaces.less +172 -0
  154. data/vendor/toolkit/flat-ui/variables.less +167 -0
  155. metadata +248 -0
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M6 100h88c3.313 0 6-2.687 6-6v-88c0-3.314-2.687-6-6-6h-88c-3.313 0-6 2.686-6 6v88c0 3.313 2.687 6 6 6z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M100 30h-.025c-.253-2.802-2.606-5-5.475-5h-88.25c-3.313 0-6.25-2.686-6.25-6v-13c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6.001v23.999z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M5 100h2v-100h-2v100z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M7 100h2v-100h-2v100z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M100 10.001c0-2.762-2.238-5-5-5h-88c-1.104 0-2 .896-2 2v11c0 1.104.896 2 2 2h87c3.313 0 6 2.687 6 6v-15h-.101c.066-.323.101-.658.101-1z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#95A5A6" d="M100 15.423v-3.921s.183-4-5-4h-90v2h89c3.184 0 5.781 2.482 5.98 5.616-.107-1-.789-3.615-4.98-3.615h-90v2h89c3.184 0 5.781 2.482 5.98 5.616-.107-1.001-.789-3.616-4.98-3.616h-90v2h89c3.313 0 6 2.687 6 6v-8.08z" opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#2980B9" d="M80 100h10v-75h-10v75z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#3498DB" d="M80 25.007h10v-25.007h-10v25.007z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M82 100h2v-100h-2v100zm4-100v100h2v-100h-2z" opacity=".1"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#EBEDED" d="M100 95c0 2.761-2.239 5-5 5h-90c-2.761 0-5-2.239-5-5v-90c0-2.761 2.239-5 5-5h90c2.761 0 5 2.239 5 5v90z"/><path fill="#D4D7DA" d="M95 97h-90c-2.761 0-5-2.239-5-5v3c0 2.761 2.239 5 5 5h90c2.761 0 5-2.239 5-5v-3c0 2.761-2.239 5-5 5z"/><path fill="#E64C3C" d="M0 31v-26c0-2.761 2.239-5 5-5h90c2.761 0 5 2.239 5 5v26h-100z"/><rect y="28" fill="#C03A2B" width="100" height="2.75"/><g enable-background="new" fill="#fff"><path d="M30.344 8.576l2.672 7.855h.032l2.528-7.855h3.536v11.424h-2.352v-8.096h-.032l-2.8 8.096h-1.936l-2.8-8.016h-.032v8.016h-2.352v-11.424h3.536zM41.384 12.944c.234-.353.533-.635.896-.849.362-.213.771-.365 1.224-.456.453-.09.909-.136 1.368-.136.416 0 .837.029 1.264.088s.816.174 1.168.344c.352.171.64.408.864.713.224.304.336.706.336 1.208v4.304c0 .373.021.73.064 1.072.042.341.117.597.224.768h-2.304l-.104-.392-.056-.408c-.363.373-.79.635-1.28.784-.491.148-.992.224-1.504.224-.395 0-.763-.048-1.104-.144-.342-.097-.64-.246-.896-.448-.256-.203-.456-.459-.6-.769-.144-.309-.216-.677-.216-1.104 0-.47.083-.856.248-1.16.166-.304.379-.547.64-.728.261-.182.56-.317.896-.408s.675-.163 1.016-.216c.341-.054.677-.097 1.008-.129.331-.031.624-.079.88-.144.256-.063.458-.157.608-.28.149-.122.218-.301.208-.536 0-.245-.04-.439-.12-.584-.08-.144-.187-.256-.32-.336-.134-.08-.288-.133-.464-.159-.176-.027-.365-.04-.568-.04-.448 0-.8.096-1.056.287-.256.192-.405.513-.448.961h-2.272c.032-.533.165-.975.4-1.327zm4.488 3.208c-.144.048-.298.088-.464.12l-.52.079-.544.08c-.171.032-.339.075-.504.128-.166.054-.31.126-.432.217s-.221.205-.296.344-.112.315-.112.528c0 .202.037.373.112.512s.176.248.304.328c.128.08.277.136.448.168.17.032.347.048.528.048.448 0 .795-.074 1.04-.224.246-.149.427-.328.544-.536.118-.208.189-.419.216-.633.026-.213.04-.384.04-.512v-.848c-.096.086-.216.153-.36.201zM52.424 11.728v1.536h.032c.106-.256.25-.493.432-.712.182-.218.39-.405.624-.56s.485-.274.752-.36c.267-.085.544-.128.832-.128.149 0 .314.026.496.08v2.112l-.384-.057-.433-.023c-.416 0-.768.069-1.056.208s-.521.328-.696.567c-.176.24-.302.521-.376.841-.074.319-.111.666-.111 1.04v3.728h-2.272v-8.272h2.16zM60.151 13.216c-.362 0-.666.083-.912.248-.245.166-.445.379-.6.64-.154.262-.264.55-.328.864-.063.315-.096.627-.096.937 0 .299.032.603.096.912.064.31.168.589.312.84s.338.456.584.616c.245.159.544.239.896.239.544 0 .963-.151 1.256-.456.294-.304.478-.712.553-1.224h2.191c-.149 1.099-.576 1.936-1.28 2.512-.703.576-1.605.864-2.703.864-.619 0-1.188-.104-1.704-.312-.518-.208-.958-.499-1.32-.872-.362-.374-.646-.819-.848-1.336-.203-.518-.305-1.086-.305-1.704 0-.641.094-1.235.28-1.784.187-.55.461-1.024.824-1.424.362-.4.805-.712 1.328-.937.522-.224 1.12-.336 1.792-.336.49 0 .962.064 1.416.192.453.128.858.322 1.216.584.357.261.647.587.872.976.224.39.352.851.384 1.384h-2.224c-.148-.949-.709-1.423-1.68-1.423zM67.655 8.576v4.304h.048c.288-.479.656-.829 1.104-1.048.447-.219.885-.328 1.312-.328.608 0 1.106.083 1.496.248.39.166.696.395.92.688.225.293.382.65.472 1.071.091.422.137.889.137 1.4v5.089h-2.272v-4.672c0-.683-.106-1.192-.319-1.528-.214-.336-.593-.504-1.137-.504-.618 0-1.066.185-1.344.552-.277.368-.416.974-.416 1.816v4.336h-2.272v-11.424h2.271z"/></g><g enable-background="new" fill="#35495E"><path d="M26.77 55.045c.49-1.579 1.226-2.959 2.208-4.14.981-1.181 2.215-2.101 3.703-2.761 1.487-.658 3.197-.988 5.129-.988 1.472 0 2.875.229 4.209.689s2.507 1.12 3.519 1.979c1.012.858 1.817 1.917 2.415 3.174.598 1.258.897 2.668.897 4.232 0 1.625-.261 3.021-.782 4.186-.522 1.166-1.212 2.201-2.07 3.105-.859.904-1.833 1.725-2.921 2.461-1.089.735-2.185 1.465-3.289 2.185-1.104.721-2.178 1.495-3.22 2.323-1.043.828-1.963 1.794-2.76 2.897h15.226v5.613h-23.644c0-1.87.268-3.496.805-4.876.536-1.38 1.265-2.614 2.185-3.703.92-1.088 2.001-2.093 3.243-3.013 1.242-.92 2.553-1.855 3.933-2.807.705-.49 1.457-.988 2.254-1.494.797-.507 1.525-1.065 2.185-1.68.659-.613 1.211-1.303 1.656-2.069.444-.767.667-1.641.667-2.622 0-1.564-.453-2.783-1.357-3.657-.905-.874-2.063-1.312-3.473-1.312-.951 0-1.756.224-2.415.667-.66.445-1.189 1.028-1.587 1.748-.399.722-.683 1.519-.851 2.393-.169.874-.253 1.74-.253 2.599h-6.256c-.062-1.84.153-3.549.644-5.129zM50.736 72.548v-5.979l13.985-18.769h5.842v19.366h4.277v5.382h-4.277v7.452h-6.21v-7.452h-13.617zm13.478-16.56l-8.325 11.178h8.464v-11.178h-.139z"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M100 58c0 3.313-2.687 6-6 6h-73c-3.313 0-6-2.687-6-6v-52c0-3.313 2.687-6 6-6h73c3.313 0 6 2.687 6 6v52z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M85 73c0 3.223-2.74 6-6 6h-13c-1.113 0-2 .754-2 2v18c0 .738-.253 1-.917 1-.232 0-.471-.154-.865-.457l-23.967-18.543c-3-2-6.129-2.006-6.129-2.006l-26.22-.002c-3.26 0-5.902-2.613-5.902-5.836v-51.125c0-3.221 2.896-6.047 6-6.031h73c3.562 0 6 2.778 6 6v51z"/><path fill="#fff" d="M58.5 40.072c-1.178.523-2.443.875-3.771 1.035 1.355-.813 2.396-2.102 2.887-3.633-1.268.752-2.674 1.297-4.168 1.594-1.198-1.278-2.904-2.075-4.792-2.075-3.626 0-6.565 2.94-6.565 6.566 0 .512.058 1.016.17 1.497-5.456-.275-10.294-2.889-13.532-6.859-.564.968-.889 2.096-.889 3.298 0 2.28 1.159 4.288 2.921 5.465-1.076-.033-2.089-.33-2.974-.822l-.001.084c0 3.181 2.264 5.834 5.267 6.438-.551.149-1.131.228-1.729.228-.423 0-.835-.038-1.235-.116.835 2.609 3.26 4.507 6.133 4.558-2.248 1.763-5.079 2.813-8.154 2.813-.53 0-1.053-.031-1.566-.095 2.903 1.863 6.354 2.952 10.061 2.952 12.076 0 18.679-10.004 18.679-18.68 0-.284-.006-.568-.018-.85 1.284-.926 2.395-2.081 3.276-3.398z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#27AE60" d="M100 94c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-78c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6v78z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M82 87c0 1.104-.896 2-2 2h-60c-1.104 0-2-.896-2-2v-69c0-1.104.896-2 2-2h60c1.104 0 2 .896 2 2v69z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#BDC3C7" d="M72 20h-44c-1.657 0-3-1.343-3-3v-7c0-1.657 1.343-3 3-3h15c0-3.866 3.134-7 7-7s7 3.134 7 7h15c1.657 0 3 1.343 3 3v7c0 1.657-1.343 3-3 3zm-22-16c-1.657 0-3 1.344-3 3 0 1.657 1.343 3 3 3s3-1.343 3-3c0-1.656-1.343-3-3-3z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#A1A6A9" d="M72 20h-44c-1.656 0-3-1.343-3-3v-2c0 1.657 1.344 3 3 3h44c1.656 0 3-1.343 3-3v2c0 1.657-1.344 3-3 3z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M94 97h-88c-3.313 0-6-2.687-6-6v3c0 3.313 2.687 6 6 6h88c3.313 0 6-2.687 6-6v-3c0 3.313-2.687 6-6 6z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#BDC3C7" d="M41 40.999v3h31v-3h-31zm0 14.001h31v-3.001h-31v3.001zm0 10.998h31v-2.999h-31v2.999zm0 11.001h31v-3h-31v3zm-13-31h7v-7h-7v7zm0 11h7v-7h-7v7zm0 11h7v-7h-7v7zm0 11.001h7v-7.001h-7v7.001z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#27AE60" d="M41 29v3.001h31v-3.001h-31zm-5.073-1.214l-.708-.713c-.097-.098-.256-.098-.354 0l-3.728 3.703c-.098.099-.257.099-.354 0l-1.633-1.66c-.048-.049-.112-.072-.175-.073-.064 0-.13.023-.179.073l-.722.648c-.048.049-.074.11-.074.175l.011.054h-.011v.998h.011l.063.127 1.647 1.725.354.355.708.713c.097.098.256.098.354 0l4.79-4.771.067-.144h.006v-.998h-.006c.01-.076-.01-.155-.067-.212z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#A1A6A9" d="M50 4c1.305 0 2.403.837 2.816 2 .112-.313.184-.646.184-.999 0-1.657-1.344-3-3-3-1.657 0-3.001 1.343-3.001 3 0 .353.072.686.184 1 .413-1.163 1.512-2.001 2.817-2.001z"/></svg>
@@ -0,0 +1,9 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
2
+ <circle fill="#223447" cx="50.001" cy="50" r="50"/>
3
+ <path fill="#fff" d="M50 10c22.093 0 40 17.909 40 40s-17.906 40-40 40c-22.091 0-40-17.909-40-40s17.91-40 40-40z"/>
4
+ <path fill="#DAD9D9" d="M50 10.015c-11.806 0-22.413 5.119-29.733 13.254 7.085-6.373 16.456-10.254 26.733-10.254 22.085 0 39.986 17.902 39.986 39.985 0 10.277-3.881 19.646-10.254 26.729 8.139-7.319 13.256-17.924 13.256-29.729 0-22.083-17.902-39.985-39.988-39.985z"/>
5
+ <path transform="rotate(90,50,50)" fill="#223447" d="M46 27c0-2.209 1.791-4 4-4s4 1.791 4 4v19c0 2.209-1.791 4-4 4s-4-1.791-4-4v-19z"/>
6
+ <path transform="rotate(315,50,50)" fill="#223447" d="M49.996 19.988c1.656.002 3.002 1.221 3.004 3.012v24c0 1.789-1.333 3.002-2.988 3-1.658-.002-3.01-1.209-3.012-3v-24c-.001-1.79 1.34-3.014 2.996-3.012z"/>
7
+ <path fill="#223447" d="M46 43.1c3.825-2.21 8.72-.898 10.927 2.927 2.209 3.824.897 8.718-2.928 10.926-3.827 2.209-8.717.898-10.927-2.93-2.207-3.823-.898-8.714 2.928-10.923z"/>
8
+ <path transform="rotate(225,50,50)" fill="#E44D41" d="M52 24c0-1.104-.896-2-2-2s-2 .896-2 2v26c0 1.104.896 2 2 2s2-.896 2-2v-26z"/>
9
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="112" height="111"><circle fill="#3498DA" cx="50" cy="61" r="50"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#27AE60" d="M15.511 97.184c-9.55-9.108-15.511-21.945-15.511-36.182 0-27.615 22.386-50.002 50.001-50.002 14.395 0 27.359 6.091 36.482 15.826l-70.972 70.358z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#95A5A6" d="M84.489 24.816c9.55 9.108 15.511 21.945 15.511 36.182 0 13.668-5.484 26.055-14.372 35.08-14.109-14.109-9.155-9.144-36.401-36.304l35.262-34.958z"/><path fill="#F1C40F" d="M88.062 93.404l-32.574-32.572 32.418-32.417c-1.562-1.814-3.25-3.515-5.053-5.088l-70.527 70.527c1.574 1.803 3.274 3.491 5.089 5.053l32.417-32.417 32.573 32.572c2.033-1.733 3.925-3.624 5.657-5.658z"/><path opacity=".05" fill-rule="evenodd" clip-rule="evenodd" d="M104.287 36.302c-6.477 6.476-16.362 7.425-23.864 2.892l-4.205 4.205c10.024 13.692 8.892 33.002-3.48 45.374-13.668 13.668-35.829 13.668-49.497 0s-13.668-35.829 0-49.497c12.559-12.56 32.283-13.569 46.006-3.048l4.223-4.223c-4.146-7.426-3.082-16.979 3.23-23.292 7.618-7.617 19.969-7.617 27.588 0 7.616 7.618 7.616 19.97-.001 27.589zm-3.557-24.021c-5.659-5.665-14.835-5.665-20.494 0-5.659 5.664-5.659 14.849 0 20.514 5.659 5.664 14.835 5.664 20.494 0 5.66-5.665 5.66-14.85 0-20.514z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#E74C3C" d="M106.287 33.356c-6.477 6.476-16.362 7.425-23.864 2.892l-4.205 4.206c10.024 13.692 8.892 33.001-3.48 45.374-13.668 13.668-35.829 13.668-49.497 0s-13.668-35.829 0-49.497c12.559-12.56 32.283-13.569 46.006-3.048l4.223-4.222c-4.146-7.426-3.082-16.98 3.23-23.292 7.618-7.617 19.969-7.617 27.588 0 7.616 7.617 7.616 19.969-.001 27.587zm-3.557-24.02c-5.659-5.665-14.835-5.665-20.494 0-5.659 5.664-5.659 14.849 0 20.514 5.659 5.664 14.835 5.664 20.494 0 5.66-5.665 5.66-14.85 0-20.514z"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#fff" cx="50" cy="61" r="27"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="50.5" cy="43.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="50.5" cy="78.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="32.5" cy="60.75" r="2.5"/><circle fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" cx="68.5" cy="60.75" r="2.5"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M50 34c-7.965 0-15.122 3.45-20.064 8.936 4.784-4.311 11.117-6.936 18.064-6.936 14.912 0 27 12.088 27 27 0 6.947-2.625 13.279-6.936 18.064 5.486-4.942 8.936-12.099 8.936-20.064 0-14.912-12.088-27-27-27z"/><path fill="#34495E" d="M65.141 44.533l-11.831 20.163-19.998 11.666 31.829-31.829z"/><path fill="#306DAB" d="M33.312 76.362l11.831-20.163 19.998-11.667-31.829 31.83z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M78.807 24.561l8.021 8.021c1.952 1.954 1.403 4.252-.354 6.01s-4.058 2.307-6.01.354l-8.021-8.021c-1.953-1.952-1.404-4.253.354-6.01 1.758-1.758 4.057-2.307 6.01-.354z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#E74C3C" d="M100 94c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-88c0-3.313 2.687-6 6-6h88c3.313 0 6 2.687 6 6v88z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#C0392B" d="M68.494 10.847l-18.287-10.847h24.383l-6.096 10.847zm-34.662-10.847c-.212.913-.548 1.81-1.027 2.662l-11.746 20.908-20.616-12.228-.443-.294v-5.048c0-3.313 2.687-6 6-6h27.832zm-31.174 49.794l1.955-3.479c2.704-4.813 8.742-6.433 13.488-3.617 4.742 2.814 6.399 8.996 3.696 13.808l-11.746 20.908-10.051-5.961v-23.235l2.658 1.576zm19.509 42.704c2.703-4.812 8.741-6.432 13.487-3.617l3.432 2.033 1.956-3.479c2.703-4.812 8.741-6.434 13.487-3.617 4.742 2.816 6.4 8.996 3.697 13.809l-1.331 2.373h-35.706c-.618-2.459-.346-5.145.978-7.502zm35.321-27.807l-20.616-12.228c-4.746-2.815-6.398-8.997-3.697-13.809 2.704-4.812 8.742-6.432 13.487-3.617l3.432 2.034 1.956-3.479c2.705-4.812 8.742-6.433 13.488-3.618 4.742 2.817 6.4 8.998 3.697 13.811l-11.747 20.906zm26.821-24.95c-4.746-2.815-6.398-8.997-3.697-13.81 2.703-4.813 8.742-6.433 13.486-3.617l3.432 2.034 1.957-3.479c.158-.283.332-.554.514-.815v28.995l-15.692-9.308zm-11.008 53.843c-4.746-2.814-6.398-8.996-3.697-13.809 2.703-4.812 8.742-6.434 13.488-3.617l3.432 2.035 1.955-3.48c2.342-4.168 7.184-5.936 11.521-4.506v23.791c0 .412-.043.814-.121 1.201l-1.771 3.154c-1.077 1.014-2.514 1.647-4.108 1.647h-9.885l-10.814-6.416zm-66.208 2.957c1.474.875 2.648 2.076 3.487 3.459h-4.58c-2.843 0-5.211-1.982-5.83-4.637 2.281-.463 4.738-.117 6.923 1.178z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" d="M70.116 47.232c1.354-.733 2.475-1.552 3.399-2.485 5.881-5.944 5.956-15.538.168-21.385-2.774-2.803-6.479-4.345-10.43-4.345-4.043 0-7.855 1.603-10.74 4.516-.946.957-1.772 2.124-2.511 3.539-.74-1.42-1.568-2.594-2.518-3.553-2.882-2.912-6.696-4.529-10.738-4.529-3.952 0-7.655 1.514-10.43 4.315-5.789 5.849-5.714 15.385.169 21.33.957.968 2.131 1.791 3.55 2.52-1.311.684-2.494 1.477-3.438 2.401-2.935 2.88-4.551 6.709-4.551 10.782.001 3.983 1.558 7.705 4.384 10.477 2.761 2.709 6.432 4.201 10.336 4.201 3.996 0 7.776-1.551 10.646-4.366 1.004-.985 1.857-2.229 2.586-3.606.728 1.377 1.581 2.621 2.585 3.605 2.871 2.816 6.652 4.367 10.647 4.367 3.903 0 7.575-1.492 10.337-4.201 2.825-2.771 4.382-6.492 4.383-10.477 0-4.072-1.615-7.9-4.551-10.783-.904-.891-2.033-1.658-3.283-2.323zm-38.152-18.281c2.689-2.644 7.127-2.566 9.912.171 2.926 2.875 4.149 13.854 4.128 13.877-.022.022-10.941-1.43-13.866-4.305-2.786-2.738-2.863-7.1-.174-9.743zm9.833 35.071c-2.76 2.59-7.155 2.661-9.819.161-2.663-2.5-2.587-6.627.172-9.217 2.897-2.719 13.839-3.975 13.861-3.954.021.021-1.316 10.291-4.214 13.01zm26.253.162c-2.669 2.5-7.073 2.429-9.838-.161-2.904-2.72-4.244-12.989-4.222-13.01.021-.021 10.984 1.235 13.889 3.954 2.764 2.59 2.84 6.717.171 9.217zm-.17-25.398c-2.903 2.898-13.861 4.236-13.883 4.213-.022-.022 1.317-10.963 4.22-13.861 2.764-2.759 7.167-2.835 9.835-.171 2.668 2.663 2.591 7.059-.172 9.819z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M100 39h-25.019c4.361-6 3.955-14.332-1.298-19.639-2.774-2.803-6.479-4.345-10.43-4.345-3.386 0-6.602 1.137-9.254 3.213v-18.229h-8v18.214c-2.651-2.079-5.869-3.226-9.253-3.226-3.952 0-7.655 1.514-10.43 4.314-5.285 5.343-5.665 13.698-1.214 19.698h-25.102v8h25.316c-2.111 2.662-3.268 5.908-3.268 9.336.001 3.983 1.558 7.705 4.384 10.477 2.761 2.709 6.432 4.201 10.336 4.201 3.373 0 6.584-1.116 9.232-3.153v32.139h8v-32.14c2.648 2.037 5.861 3.153 9.232 3.153 3.903 0 7.575-1.492 10.337-4.201 2.825-2.771 4.382-6.492 4.383-10.477 0-3.427-1.156-6.673-3.268-9.336h25.316v-7.999zm-41.783-13.862c2.764-2.759 7.167-2.835 9.835-.171 2.668 2.664 2.591 7.06-.172 9.819-2.896 2.89-13.799 4.228-13.88 4.213v-.043c.069-.728 1.415-11.02 4.217-13.818zm-26.253-.187c2.689-2.644 7.127-2.566 9.912.171 2.812 2.763 4.05 13.003 4.124 13.82v.057c-.102.011-10.948-1.44-13.862-4.305-2.786-2.738-2.863-7.1-.174-9.743zm9.833 35.071c-2.76 2.59-7.155 2.661-9.819.161-2.663-2.5-2.587-6.627.172-9.217 2.868-2.691 13.614-3.948 13.851-3.954v.108c-.132 1.096-1.476 10.342-4.204 12.902zm26.253.162c-2.669 2.5-7.073 2.429-9.838-.161-2.741-2.568-4.088-11.856-4.212-12.909v-.101c.217.003 11.001 1.26 13.879 3.954 2.764 2.59 2.84 6.717.171 9.217z"/><path opacity=".2" fill-rule="evenodd" clip-rule="evenodd" d="M94 100h-88c-3.313 0-6-2.687-6-6.001v-13.999c0 3.313 2.687 6 6 6h88c3.313 0 6-2.687 6-6v13.999c0 3.314-2.687 6.001-6 6.001z"/></svg>
@@ -0,0 +1,5 @@
1
+ <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
2
+ <circle fill="#E74C3C" cx="50" cy="50" r="50"/>
3
+ <path id="loop-sign" fill="none" stroke="#F0C419" stroke-width="8" stroke-miterlimit="10" stroke-dashoffset="43" stroke-linecap="square" stroke-dasharray="216,9.999999974752427e-7" d="M12.5,50.5c0,10,7,17,17,17c17,0,26-34,43-34c10,0,18,7,18,17s-8,17-18,17c-17,0-26-34-43-34C19.5,33.5,12.5,40.5,12.5,50.5z" style="display: inline;"></path>
4
+ <path id="shade" opacity="0.15" enable-background="new " d="M45.938,50.5l5.047,6.516c0,0-2.141,2.797-3.5,4.25c0,0-3.621-3.552-5.746-5.583C43.047,54.281,45.938,50.5,45.938,50.5z" style=""></path>
5
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#D35400" d="M96.015 38.988h-92.009c-1.104 0-2 .897-2 2.005v57.001c0 1.108.896 2.006 2 2.006h92.009c1.105 0 2.001-.897 2.001-2.006v-57.001c0-1.108-.896-2.005-2.001-2.005z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#ECF0F1" d="M5 15.974v82.004c0 1.117.896 2.022 2 2.022h86.001c1.104 0 1.999-.905 1.999-2.021v-95.989c0-1.117-.895-2.021-1.999-2.021l-71.997.008-16.004 15.997z"/><path opacity=".1" d="M40 72l54.997-33 .003 6.98-43.972 26.02h-11.028z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F39C12" d="M2 97.991c0 1.11.895 2.009 2 2.009h92c1.104 0 2-.899 2-2.009v-55.991l-48 29-48-29v55.991z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F1C40F" d="M5 15.974l16.001.01v-15.984l-16.001 15.974z"/><path fill="#F1C40F" d="M2 42l.052 54 47.948-25-48-29z"/><polygon fill="#E57E22" points="98,42 50,71 98,96"/><path opacity=".3" fill-rule="evenodd" clip-rule="evenodd" d="M98 97.991v-1.991l-48-25 47.328 28.482c.409-.367.672-.896.672-1.491z"/><path opacity=".3" fill-rule="evenodd" clip-rule="evenodd" d="M2 97.991v-1.991l48-25-47.328 28.482c-.409-.367-.672-.896-.672-1.491z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#F2F2F2" d="M75 87.425l-25 12.575-25-12.575-25 12.575v-87.424l25-12.576 25 12.576 25-12.576 25 12.576v87.424l-25-12.575z"/><path clip-rule="evenodd" stroke="#6BC9F2" stroke-width="4" stroke-miterlimit="10" d="M15 60v-28l9.988-5.006 25.012 14.006 25-12 12 4" fill="none"/><path clip-rule="evenodd" stroke="#E64C3C" stroke-width="4" stroke-miterlimit="10" d="M15 61v-8l10-5 25 13 25-11 12-5v-13" fill="none"/><path clip-rule="evenodd" stroke="#F29C1F" stroke-width="4" stroke-miterlimit="10" d="M15 61l35 18 17-8v-28l20-10" fill="none"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M87 36.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"/><path fill="#2980BA" d="M87 31c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2m0-3c-2.761 0-5 2.239-5 5s2.239 5 5 5 5-2.239 5-5-2.239-5-5-5z"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M15 64.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5z"/><path fill="#2980BA" d="M15 59c1.103 0 2 .897 2 2s-.897 2-2 2-2-.897-2-2 .897-2 2-2m0-3c-2.761 0-5 2.239-5 5s2.239 5 5 5 5-2.239 5-5-2.239-5-5-5z"/><path opacity=".15" fill-rule="evenodd" clip-rule="evenodd" fill="#2C3E50" d="M0 100l25-12.576v-87.424l-25 12.576v87.424zm50-87.424v87.424l25-12.576v-87.424l-25 12.576z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill="#F39C12" d="M100 93c0 3.313-2.687 6-6 6h-88c-3.313 0-6-2.687-6-6v-73h100v73z"/><rect x="4" fill="#E57D22" width="92" height="20"/><polygon fill="#F39C12" points="96,20 88,20 88,8 96,0"/><polygon fill="#F39C12" points="4,20 12,20 12,8 4,0"/><polygon fill="#F1C40F" points="12,8 12,20 0,20"/><polygon fill="#F1C40F" points="88,8 88,20 100,20"/><circle opacity=".3" cx="26" cy="40" r="5"/><circle opacity=".3" cx="74" cy="40" r="5"/><path clip-rule="evenodd" stroke="#fff" stroke-width="6" stroke-linecap="round" stroke-miterlimit="10" d="M74 40c0 13.254-10.745 24-24 24s-24-10.745-24-24" fill="none"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><g><path fill="#e74c3c" d="M50 74.001v25.999h.072l-.072.002c-12.816-.008-25.662-4.828-35.417-14.584-9.771-9.772-14.591-22.58-14.583-35.418.009-12.816 4.829-25.662 14.583-35.417l18.417 18.417c-4.682 4.683-6.996 10.849-7 17-.004 6.162 2.31 12.311 7 17 4.683 4.684 10.848 6.996 17 7.001z"/><path fill-opacity=".15" enable-background="new" d="M50 92c-23.196 0-42-18.805-42-42 0-11.598 4.701-22.098 12.302-29.699l-5.719-5.718c-6.715 6.716-14.583 18.855-14.583 35.417 0 27.062 21.625 50 50 50v-8z"/><path fill-opacity=".15" fill="#fff" enable-background="new" d="M32.928 67c-4.689-4.689-7.003-10.838-7-17 .004-6.151 2.316-12.317 7-17l-5.627-5.627c-5.791 5.79-9.373 13.79-9.373 22.627 0 17.673 14.327 32 32 32v-7.999c-6.152-.005-12.316-2.317-17-7.001z"/><path fill="#EFC22D" d="M63 87l-12.986-12.991v-.009l-.008.001-.001-.001-.005.001c-3.309.011-6.009 5.826-6.009 13 0 7.181 2.709 13.001 6.022 13.001v-.022l12.987-12.98z"/><path fill="#2D3E4F" d="M58.758 82.757c-1.086 1.086-1.758 2.586-1.758 4.243 0 1.656.672 3.156 1.757 4.242l4.243-4.242-4.242-4.243z"/></g><g><path fill="#3498db" d="M50 26.001v-25.999h-.072l.072-.002c12.816.008 25.662 4.828 35.417 14.584 9.771 9.771 14.592 22.58 14.584 35.417-.009 12.817-4.829 25.663-14.584 35.418l-18.418-18.417c4.683-4.682 6.996-10.85 7-17 .004-6.162-2.312-12.31-7-17-4.683-4.683-10.849-6.996-16.999-7.001z"/><path fill-opacity=".1" enable-background="new" d="M66.999 33.002c4.688 4.689 7.004 10.838 7 17-.004 6.15-2.317 12.318-7 17l5.627 5.627c5.791-5.789 9.373-13.789 9.373-22.627 0-17.672-14.326-32-32-32v7.999c6.151.005 12.317 2.318 17 7.001z"/><path fill-opacity=".15" fill="#fff" enable-background="new" d="M50.001 8.001c23.195 0 41.999 18.805 41.999 42 0 11.599-4.701 22.099-12.302 29.699l5.72 5.718c6.715-6.716 14.582-18.855 14.582-35.417 0-27.062-21.624-50-49.999-50v8z"/><path fill="#EFC22D" d="M37 13.002l12.986 12.991v.009l.008-.001.001.001.005-.001c3.309-.011 6.008-5.826 6.008-13 0-7.18-2.709-13.001-6.022-13.001v.021l-12.986 12.981z"/><path fill="#2D3E4F" d="M41.242 17.245c1.086-1.086 1.758-2.586 1.758-4.243 0-1.656-.672-3.156-1.757-4.242l-4.243 4.242 4.242 4.243z"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="117" height="104"><path fill="#26B99A" d="M50 4c27.614 0 50 22.386 50 50 0 27.613-22.386 50-50 50s-50-22.387-50-50c0-27.614 22.386-50 50-50z"/><path fill="#fff" d="M81.309 43.339l-35.868 35.869c-.731.731-1.924.731-2.651 0l-20.286-20.498c-.362-.366-.556-1.374-.556-1.859 0-.484.194-.947.556-1.315l5.404-4.871c.366-.375.855-.555 1.338-.55.476.001.951.185 1.313.55l12.231 12.478c.728.743 1.92.743 2.651 0l27.918-27.835c.728-.737 1.92-.737 2.647 0l5.302 5.354c.732.734.732 1.942.001 2.677z"/><circle cx="84.625" cy="33" r="26" opacity=".15"/><path fill="#26B99A" d="M87.999 56.5c-15.163 0-27.499-12.337-27.499-27.5s12.336-27.5 27.499-27.5c15.164 0 27.501 12.336 27.501 27.5 0 15.163-12.337 27.5-27.501 27.5z"/><path fill="#ECF0F1" d="M87.999 3c14.337 0 26.001 11.663 26.001 26s-11.664 26-26.001 26c-14.336 0-25.999-11.664-25.999-26s11.663-26 25.999-26m0-3c-16.015 0-28.999 12.984-28.999 29 0 16.017 12.984 29 28.999 29 16.017 0 29.001-12.984 29.001-29s-12.984-29-29.001-29z"/><defs><path id="a" d="M114 29c0 14.359-11.64 26-25.998 26-14.362 0-26.002-11.641-26.002-26s11.64-26 26.002-26c14.358 0 25.998 11.64 25.998 26z"/></defs><clipPath id="b"><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#fff" d="M107.314 30.594l-81.091 81.092c-1.653 1.654-4.349 1.654-5.994 0l-11.987-12.097c-1.644-1.674-4.348-4.391-5.993-6.063l-27.885-29.303c-.818-.828-1.257-1.982-1.257-3.082 0-1.094.439-2.141 1.257-2.974l12.218-11.01c.827-.849 1.935-1.257 3.025-1.246 1.075.004 2.149.417 2.969 1.246l27.653 28.213c1.645 1.683 4.341 1.683 5.994 0l63.121-62.932c1.644-1.666 4.34-1.666 5.984 0l11.986 12.102c1.655 1.661 1.655 4.393 0 6.054z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><path fill-rule="evenodd" clip-rule="evenodd" fill="#F1C40F" d="M78.993 26h21l.007 74h-60.135v-.004l-.355.004c-21.828 0-39.521-5.73-39.521-12.801l.004-74.199h79v13z"/><rect x="40" y="13" fill="#F39C12" width="39" height="13"/><ellipse fill="#E67E22" cx="39.5" cy="13" rx="39.5" ry="13"/><ellipse opacity=".2" cx="40.334" cy="12.812" rx="16" ry="4.5"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#F39C12" d="M40.668 93c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-16c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-8c-1.105 0-2 .896-2 2 0 1.105.895 2 2 2 1.104 0 1.999-.895 1.999-2 0-1.104-.895-2-1.999-2zm0-12c1.104 0 1.999-.895 1.999-2s-.895-2-1.999-2c-1.105 0-2 .896-2 2s.894 2 2 2zm0 4c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2zm0 24c-1.105 0-2 .896-2 2s.895 2 2 2c1.104 0 1.999-.896 1.999-2s-.895-2-1.999-2z"/></svg>
@@ -0,0 +1,412 @@
1
+ !function($) {
2
+ var Selectpicker = function(element, options, e) {
3
+ if (e ) {
4
+ e.stopPropagation();
5
+ e.preventDefault();
6
+ }
7
+ this.$element = $(element);
8
+ this.$newElement = null;
9
+ this.button = null;
10
+
11
+ //Merge defaults, options and data-attributes to make our options
12
+ this.options = $.extend({}, $.fn.selectpicker.defaults, this.$element.data(), typeof options == 'object' && options);
13
+
14
+ //If we have no title yet, check the attribute 'title' (this is missed by jq as its not a data-attribute
15
+ if(this.options.title==null)
16
+ this.options.title = this.$element.attr('title');
17
+
18
+ //Expose public methods
19
+ this.val = Selectpicker.prototype.val;
20
+ this.render = Selectpicker.prototype.render;
21
+ this.init();
22
+ };
23
+
24
+ Selectpicker.prototype = {
25
+
26
+ constructor: Selectpicker,
27
+
28
+ init: function (e) {
29
+ var _this = this;
30
+ this.$element.hide();
31
+ this.multiple = this.$element.prop('multiple');
32
+
33
+
34
+ var classList = this.$element.attr('class') !== undefined ? this.$element.attr('class').split(/\s+/) : '';
35
+ var id = this.$element.attr('id');
36
+ this.$element.after( this.createView() );
37
+ this.$newElement = this.$element.next('.select');
38
+ var select = this.$newElement;
39
+ var menu = this.$newElement.find('.dropdown-menu');
40
+ var menuArrow = this.$newElement.find('.dropdown-arrow');
41
+ var menuA = menu.find('li > a');
42
+ var liHeight = select.addClass('open').find('.dropdown-menu li > a').outerHeight();
43
+ select.removeClass('open');
44
+ var divHeight = menu.find('li .divider').outerHeight(true);
45
+ var selectOffset_top = this.$newElement.offset().top;
46
+ var size = 0;
47
+ var menuHeight = 0;
48
+ var selectHeight = this.$newElement.outerHeight();
49
+ this.button = this.$newElement.find('> button');
50
+ if (id !== undefined) {
51
+ this.button.attr('id', id);
52
+ $('label[for="' + id + '"]').click(function(){ select.find('button#'+id).focus(); })
53
+ }
54
+ for (var i = 0; i < classList.length; i++) {
55
+ if(classList[i] != 'selectpicker') {
56
+ this.$newElement.addClass(classList[i]);
57
+ }
58
+ }
59
+ //If we are multiple, then add the show-tick class by default
60
+ if(this.multiple) {
61
+ this.$newElement.addClass('select-multiple');
62
+ }
63
+ this.button.addClass(this.options.style);
64
+ menu.addClass(this.options.menuStyle);
65
+ menuArrow.addClass(function() {
66
+ if (_this.options.menuStyle) {
67
+ return _this.options.menuStyle.replace('dropdown-', 'dropdown-arrow-');
68
+ }
69
+ });
70
+ this.checkDisabled();
71
+ this.checkTabIndex();
72
+ this.clickListener();
73
+ var menuPadding = parseInt(menu.css('padding-top')) + parseInt(menu.css('padding-bottom')) + parseInt(menu.css('border-top-width')) + parseInt(menu.css('border-bottom-width'));
74
+ if (this.options.size == 'auto') {
75
+ function getSize() {
76
+ var selectOffset_top_scroll = selectOffset_top - $(window).scrollTop();
77
+ var windowHeight = window.innerHeight;
78
+ var menuExtras = menuPadding + parseInt(menu.css('margin-top')) + parseInt(menu.css('margin-bottom')) + 2;
79
+ var selectOffset_bot = windowHeight - selectOffset_top_scroll - selectHeight - menuExtras;
80
+ menuHeight = selectOffset_bot;
81
+ if (select.hasClass('dropup')) {
82
+ menuHeight = selectOffset_top_scroll - menuExtras;
83
+ }
84
+ menu.css({'max-height' : menuHeight + 'px', 'overflow-y' : 'auto', 'min-height' : liHeight*3 + 'px'});
85
+ }
86
+ getSize();
87
+ $(window).resize(getSize);
88
+ $(window).scroll(getSize);
89
+ this.$element.bind('DOMNodeInserted', getSize);
90
+ } else if (this.options.size && this.options.size != 'auto' && menu.find('li').length > this.options.size) {
91
+ var optIndex = menu.find("li > *").filter(':not(.divider)').slice(0,this.options.size).last().parent().index();
92
+ var divLength = menu.find("li").slice(0,optIndex + 1).find('.divider').length;
93
+ menuHeight = liHeight*this.options.size + divLength*divHeight + menuPadding;
94
+ menu.css({'max-height' : menuHeight + 'px', 'overflow-y' : 'scroll'});
95
+ }
96
+
97
+ //Listen for updates to the DOM and re render...
98
+ this.$element.bind('DOMNodeInserted', $.proxy(this.reloadLi, this));
99
+
100
+ this.render();
101
+ },
102
+
103
+ createDropdown: function() {
104
+ var drop =
105
+ "<div class='btn-group select'>" +
106
+ "<i class='dropdown-arrow'></i>" +
107
+ "<button class='btn dropdown-toggle clearfix' data-toggle='dropdown'>" +
108
+ "<span class='filter-option pull-left'></span>&nbsp;" +
109
+ "<span class='caret'></span>" +
110
+ "</button>" +
111
+ "<ul class='dropdown-menu' role='menu'>" +
112
+ "</ul>" +
113
+ "</div>";
114
+
115
+ return $(drop);
116
+ },
117
+
118
+
119
+ createView: function() {
120
+ var $drop = this.createDropdown();
121
+ var $li = this.createLi();
122
+ $drop.find('ul').append($li);
123
+ return $drop;
124
+ },
125
+
126
+ reloadLi: function() {
127
+ //Remove all children.
128
+ this.destroyLi();
129
+ //Re build
130
+ $li = this.createLi();
131
+ this.$newElement.find('ul').append( $li );
132
+ //render view
133
+ this.render();
134
+ },
135
+
136
+ destroyLi:function() {
137
+ this.$newElement.find('li').remove();
138
+ },
139
+
140
+ createLi: function() {
141
+
142
+ var _this = this;
143
+ var _li = [];
144
+ var _liA = [];
145
+ var _liHtml = '';
146
+
147
+ this.$element.find('option').each(function(){
148
+ _li.push($(this).text());
149
+ });
150
+
151
+ this.$element.find('option').each(function(index) {
152
+ //Get the class and text for the option
153
+ var optionClass = $(this).attr("class") !== undefined ? $(this).attr("class") : '';
154
+ var text = $(this).text();
155
+ var subtext = $(this).data('subtext') !== undefined ? '<small class="muted">'+$(this).data('subtext')+'</small>' : '';
156
+
157
+ //Append any subtext to the main text.
158
+ text+=subtext;
159
+
160
+ if ($(this).parent().is('optgroup') && $(this).data('divider') != true) {
161
+ if ($(this).index() == 0) {
162
+ //Get the opt group label
163
+ var label = $(this).parent().attr('label');
164
+ var labelSubtext = $(this).parent().data('subtext') !== undefined ? '<small class="muted">'+$(this).parent().data('subtext')+'</small>' : '';
165
+ label += labelSubtext;
166
+
167
+ if ($(this)[0].index != 0) {
168
+ _liA.push(
169
+ '<div class="divider"></div>'+
170
+ '<dt>'+label+'</dt>'+
171
+ _this.createA(text, "opt " + optionClass )
172
+ );
173
+ } else {
174
+ _liA.push(
175
+ '<dt>'+label+'</dt>'+
176
+ _this.createA(text, "opt " + optionClass ));
177
+ }
178
+ } else {
179
+ _liA.push( _this.createA(text, "opt " + optionClass ) );
180
+ }
181
+ } else if ($(this).data('divider') == true) {
182
+ _liA.push('<div class="divider"></div>');
183
+ } else {
184
+ _liA.push( _this.createA(text, optionClass ) );
185
+ }
186
+ });
187
+
188
+ if (_li.length > 0) {
189
+ for (var i = 0; i < _li.length; i++) {
190
+ var $option = this.$element.find('option').eq(i);
191
+ _liHtml += "<li rel=" + i + ">" + _liA[i] + "</li>";
192
+ }
193
+ }
194
+
195
+ //If we dont have a selected item, and we dont have a title, select the first element so something is set in the button
196
+ if(this.$element.find('option:selected').length==0 && !_this.options.title) {
197
+ this.$element.find('option').eq(0).prop('selected', true).attr('selected', 'selected');
198
+ }
199
+
200
+ return $(_liHtml);
201
+ },
202
+
203
+ createA:function(test, classes) {
204
+ return '<a tabindex="-1" href="#" class="'+classes+'">' +
205
+ '<span class="pull-left">' + test + '</span>' +
206
+ '</a>';
207
+
208
+ },
209
+
210
+ render:function() {
211
+ var _this = this;
212
+
213
+ //Set width of select
214
+ if (this.options.width == 'auto') {
215
+ var ulWidth = this.$newElement.find('.dropdown-menu').css('width');
216
+ this.$newElement.css('width',ulWidth);
217
+ } else if (this.options.width && this.options.width != 'auto') {
218
+ this.$newElement.css('width',this.options.width);
219
+ }
220
+
221
+ //Update the LI to match the SELECT
222
+ this.$element.find('option').each(function(index) {
223
+ _this.setDisabled(index, $(this).is(':disabled') || $(this).parent().is(':disabled') );
224
+ _this.setSelected(index, $(this).is(':selected') );
225
+ });
226
+
227
+
228
+
229
+ var selectedItems = this.$element.find('option:selected').map(function(index,value) {
230
+ if($(this).attr('title')!=undefined) {
231
+ return $(this).attr('title');
232
+ } else {
233
+ return $(this).text();
234
+ }
235
+ }).toArray();
236
+
237
+ //Convert all the values into a comma delimited string
238
+ var title = selectedItems.join(", ");
239
+
240
+ //If this is multi select, and the selectText type is count, the show 1 of 2 selected etc..
241
+ if(_this.multiple && _this.options.selectedTextFormat.indexOf('count') > -1) {
242
+ var max = _this.options.selectedTextFormat.split(">");
243
+ if( (max.length>1 && selectedItems.length > max[1]) || (max.length==1 && selectedItems.length>=2)) {
244
+ title = selectedItems.length +' of ' + this.$element.find('option').length + ' selected';
245
+ }
246
+ }
247
+
248
+ //If we dont have a title, then use the default, or if nothing is set at all, use the not selected text
249
+ if(!title) {
250
+ title = _this.options.title != undefined ? _this.options.title : _this.options.noneSelectedText;
251
+ }
252
+
253
+ this.$element.next('.select').find('.filter-option').html( title );
254
+ },
255
+
256
+
257
+
258
+ setSelected:function(index, selected) {
259
+ if(selected) {
260
+ this.$newElement.find('li').eq(index).addClass('selected');
261
+ } else {
262
+ this.$newElement.find('li').eq(index).removeClass('selected');
263
+ }
264
+ },
265
+
266
+ setDisabled:function(index, disabled) {
267
+ if(disabled) {
268
+ this.$newElement.find('li').eq(index).addClass('disabled');
269
+ } else {
270
+ this.$newElement.find('li').eq(index).removeClass('disabled');
271
+ }
272
+ },
273
+
274
+ checkDisabled: function() {
275
+ if (this.$element.is(':disabled')) {
276
+ this.button.addClass('disabled');
277
+ this.button.click(function(e) {
278
+ e.preventDefault();
279
+ });
280
+ }
281
+ },
282
+
283
+ checkTabIndex: function() {
284
+ if (this.$element.is('[tabindex]')) {
285
+ var tabindex = this.$element.attr("tabindex");
286
+ this.button.attr('tabindex', tabindex);
287
+ }
288
+ },
289
+
290
+ clickListener: function() {
291
+ var _this = this;
292
+
293
+ $('body').on('touchstart.dropdown', '.dropdown-menu', function (e) { e.stopPropagation(); });
294
+
295
+
296
+
297
+ this.$newElement.on('click', 'li a', function(e){
298
+ var clickedIndex = $(this).parent().index(),
299
+ $this = $(this).parent(),
300
+ $select = $this.parents('.select');
301
+
302
+
303
+ //Dont close on multi choice menu
304
+ if(_this.multiple) {
305
+ e.stopPropagation();
306
+ }
307
+
308
+ e.preventDefault();
309
+
310
+ //Dont run if we have been disabled
311
+ if ($select.prev('select').not(':disabled') && !$(this).parent().hasClass('disabled')){
312
+ //Deselect all others if not multi select box
313
+ if (!_this.multiple) {
314
+ $select.prev('select').find('option').removeAttr('selected');
315
+ $select.prev('select').find('option').eq(clickedIndex).prop('selected', true).attr('selected', 'selected');
316
+ }
317
+ //Else toggle the one we have chosen if we are multi selet.
318
+ else {
319
+ var selected = $select.prev('select').find('option').eq(clickedIndex).prop('selected');
320
+
321
+ if(selected) {
322
+ $select.prev('select').find('option').eq(clickedIndex).removeAttr('selected');
323
+ } else {
324
+ $select.prev('select').find('option').eq(clickedIndex).prop('selected', true).attr('selected', 'selected');
325
+ }
326
+ }
327
+
328
+
329
+ $select.find('.filter-option').html($this.text());
330
+ $select.find('button').focus();
331
+
332
+ // Trigger select 'change'
333
+ $select.prev('select').trigger('change');
334
+ }
335
+
336
+ });
337
+
338
+ this.$newElement.on('click', 'li.disabled a, li dt, li .divider', function(e) {
339
+ e.preventDefault();
340
+ e.stopPropagation();
341
+ $select = $(this).parent().parents('.select');
342
+ $select.find('button').focus();
343
+ });
344
+
345
+ this.$element.on('change', function(e) {
346
+ _this.render();
347
+ });
348
+ },
349
+
350
+ val:function(value) {
351
+
352
+ if(value!=undefined) {
353
+ this.$element.val( value );
354
+
355
+ this.$element.trigger('change');
356
+ return this.$element;
357
+ } else {
358
+ return this.$element.val();
359
+ }
360
+ }
361
+
362
+ };
363
+
364
+ $.fn.selectpicker = function(option, event) {
365
+ //get the args of the outer function..
366
+ var args = arguments;
367
+ var value;
368
+ var chain = this.each(function () {
369
+ var $this = $(this),
370
+ data = $this.data('selectpicker'),
371
+ options = typeof option == 'object' && option;
372
+
373
+ if (!data) {
374
+ $this.data('selectpicker', (data = new Selectpicker(this, options, event)));
375
+ } else {
376
+ for(var i in option) {
377
+ data[i]=option[i];
378
+ }
379
+ }
380
+
381
+ if (typeof option == 'string') {
382
+ //Copy the value of option, as once we shift the arguments
383
+ //it also shifts the value of option.
384
+ property = option;
385
+ if(data[property] instanceof Function) {
386
+ [].shift.apply(args);
387
+ value = data[property].apply(data, args);
388
+ } else {
389
+ value = data[property];
390
+ }
391
+ }
392
+ });
393
+
394
+ if(value!=undefined) {
395
+ return value;
396
+ } else {
397
+ return chain;
398
+ }
399
+ };
400
+
401
+ $.fn.selectpicker.defaults = {
402
+ style: null,
403
+ size: 'auto',
404
+ title: null,
405
+ selectedTextFormat : 'values',
406
+ noneSelectedText : 'Nothing selected',
407
+ width: null,
408
+ menuStyle: null,
409
+ toggleSize: null
410
+ }
411
+
412
+ }(window.jQuery);