flatui3-rails 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
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);