artfully_ose 1.0.0.rc3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1565) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/Rakefile +40 -0
  3. data/app/assets/images/actions/do.png +0 -0
  4. data/app/assets/images/actions/get.png +0 -0
  5. data/app/assets/images/actions/give.png +0 -0
  6. data/app/assets/images/actions/go.png +0 -0
  7. data/app/assets/images/actions/hear.png +0 -0
  8. data/app/assets/images/actions/join.png +0 -0
  9. data/app/assets/images/glyphicons-halflings-gray.png +0 -0
  10. data/app/assets/images/glyphicons-halflings-white.png +0 -0
  11. data/app/assets/images/glyphicons-halflings.png +0 -0
  12. data/app/assets/images/glyphish/gray/01-refresh.png +0 -0
  13. data/app/assets/images/glyphish/gray/01-refresh@2x.png +0 -0
  14. data/app/assets/images/glyphish/gray/02-redo.png +0 -0
  15. data/app/assets/images/glyphish/gray/02-redo@2x.png +0 -0
  16. data/app/assets/images/glyphish/gray/03-loopback.png +0 -0
  17. data/app/assets/images/glyphish/gray/03-loopback@2x.png +0 -0
  18. data/app/assets/images/glyphish/gray/04-squiggle.png +0 -0
  19. data/app/assets/images/glyphish/gray/04-squiggle@2x.png +0 -0
  20. data/app/assets/images/glyphish/gray/05-shuffle.png +0 -0
  21. data/app/assets/images/glyphish/gray/05-shuffle@2x.png +0 -0
  22. data/app/assets/images/glyphish/gray/06-magnify.png +0 -0
  23. data/app/assets/images/glyphish/gray/06-magnify@2x.png +0 -0
  24. data/app/assets/images/glyphish/gray/07-map-marker.png +0 -0
  25. data/app/assets/images/glyphish/gray/07-map-marker@2x.png +0 -0
  26. data/app/assets/images/glyphish/gray/08-chat.png +0 -0
  27. data/app/assets/images/glyphish/gray/08-chat@2x.png +0 -0
  28. data/app/assets/images/glyphish/gray/09-chat-2.png +0 -0
  29. data/app/assets/images/glyphish/gray/09-chat-2@2x.png +0 -0
  30. data/app/assets/images/glyphish/gray/10-medical.png +0 -0
  31. data/app/assets/images/glyphish/gray/10-medical@2x.png +0 -0
  32. data/app/assets/images/glyphish/gray/100-coffee.png +0 -0
  33. data/app/assets/images/glyphish/gray/100-coffee@2x.png +0 -0
  34. data/app/assets/images/glyphish/gray/101-gameplan.png +0 -0
  35. data/app/assets/images/glyphish/gray/101-gameplan@2x.png +0 -0
  36. data/app/assets/images/glyphish/gray/102-walk.png +0 -0
  37. data/app/assets/images/glyphish/gray/102-walk@2x.png +0 -0
  38. data/app/assets/images/glyphish/gray/103-map.png +0 -0
  39. data/app/assets/images/glyphish/gray/103-map@2x.png +0 -0
  40. data/app/assets/images/glyphish/gray/104-index-cards.png +0 -0
  41. data/app/assets/images/glyphish/gray/104-index-cards@2x.png +0 -0
  42. data/app/assets/images/glyphish/gray/105-piano.png +0 -0
  43. data/app/assets/images/glyphish/gray/105-piano@2x.png +0 -0
  44. data/app/assets/images/glyphish/gray/106-sliders.png +0 -0
  45. data/app/assets/images/glyphish/gray/106-sliders@2x.png +0 -0
  46. data/app/assets/images/glyphish/gray/107-widescreen.png +0 -0
  47. data/app/assets/images/glyphish/gray/107-widescreen@2x.png +0 -0
  48. data/app/assets/images/glyphish/gray/108-badge.png +0 -0
  49. data/app/assets/images/glyphish/gray/108-badge@2x.png +0 -0
  50. data/app/assets/images/glyphish/gray/109-chicken.png +0 -0
  51. data/app/assets/images/glyphish/gray/109-chicken@2x.png +0 -0
  52. data/app/assets/images/glyphish/gray/11-clock.png +0 -0
  53. data/app/assets/images/glyphish/gray/11-clock@2x.png +0 -0
  54. data/app/assets/images/glyphish/gray/110-bug.png +0 -0
  55. data/app/assets/images/glyphish/gray/110-bug@2x.png +0 -0
  56. data/app/assets/images/glyphish/gray/111-user.png +0 -0
  57. data/app/assets/images/glyphish/gray/111-user2x.png +0 -0
  58. data/app/assets/images/glyphish/gray/111-user@2x.png +0 -0
  59. data/app/assets/images/glyphish/gray/112-group.png +0 -0
  60. data/app/assets/images/glyphish/gray/112-group@2x.png +0 -0
  61. data/app/assets/images/glyphish/gray/113-navigation.png +0 -0
  62. data/app/assets/images/glyphish/gray/113-navigation@2x.png +0 -0
  63. data/app/assets/images/glyphish/gray/114-balloon.png +0 -0
  64. data/app/assets/images/glyphish/gray/114-balloon@2x.png +0 -0
  65. data/app/assets/images/glyphish/gray/115-bow-and-arrow.png +0 -0
  66. data/app/assets/images/glyphish/gray/115-bow-and-arrow@2x.png +0 -0
  67. data/app/assets/images/glyphish/gray/116-controller.png +0 -0
  68. data/app/assets/images/glyphish/gray/116-controller@2x.png +0 -0
  69. data/app/assets/images/glyphish/gray/117-todo.png +0 -0
  70. data/app/assets/images/glyphish/gray/117-todo@2x.png +0 -0
  71. data/app/assets/images/glyphish/gray/118-coat-hanger.png +0 -0
  72. data/app/assets/images/glyphish/gray/118-coat-hanger@2x.png +0 -0
  73. data/app/assets/images/glyphish/gray/119-piggy-bank.png +0 -0
  74. data/app/assets/images/glyphish/gray/119-piggy-bank@2x.png +0 -0
  75. data/app/assets/images/glyphish/gray/12-eye.png +0 -0
  76. data/app/assets/images/glyphish/gray/12-eye@2x.png +0 -0
  77. data/app/assets/images/glyphish/gray/120-headphones.png +0 -0
  78. data/app/assets/images/glyphish/gray/120-headphones@2x.png +0 -0
  79. data/app/assets/images/glyphish/gray/121-landscape.png +0 -0
  80. data/app/assets/images/glyphish/gray/121-landscape@2x.png +0 -0
  81. data/app/assets/images/glyphish/gray/122-stats.png +0 -0
  82. data/app/assets/images/glyphish/gray/122-stats@2x.png +0 -0
  83. data/app/assets/images/glyphish/gray/123-id-card.png +0 -0
  84. data/app/assets/images/glyphish/gray/123-id-card@2x.png +0 -0
  85. data/app/assets/images/glyphish/gray/124-bullhorn.png +0 -0
  86. data/app/assets/images/glyphish/gray/124-bullhorn@2x.png +0 -0
  87. data/app/assets/images/glyphish/gray/125-food.png +0 -0
  88. data/app/assets/images/glyphish/gray/125-food@2x.png +0 -0
  89. data/app/assets/images/glyphish/gray/126-moon.png +0 -0
  90. data/app/assets/images/glyphish/gray/126-moon@2x.png +0 -0
  91. data/app/assets/images/glyphish/gray/127-sock.png +0 -0
  92. data/app/assets/images/glyphish/gray/127-sock@2x.png +0 -0
  93. data/app/assets/images/glyphish/gray/128-bone.png +0 -0
  94. data/app/assets/images/glyphish/gray/128-bone@2x.png +0 -0
  95. data/app/assets/images/glyphish/gray/129-golf.png +0 -0
  96. data/app/assets/images/glyphish/gray/129-golf@2x.png +0 -0
  97. data/app/assets/images/glyphish/gray/13-target.png +0 -0
  98. data/app/assets/images/glyphish/gray/13-target@2x.png +0 -0
  99. data/app/assets/images/glyphish/gray/130-dice.png +0 -0
  100. data/app/assets/images/glyphish/gray/130-dice@2x.png +0 -0
  101. data/app/assets/images/glyphish/gray/131-tower.png +0 -0
  102. data/app/assets/images/glyphish/gray/131-tower@2x.png +0 -0
  103. data/app/assets/images/glyphish/gray/132-ghost.png +0 -0
  104. data/app/assets/images/glyphish/gray/132-ghost@2x.png +0 -0
  105. data/app/assets/images/glyphish/gray/133-ufo.png +0 -0
  106. data/app/assets/images/glyphish/gray/133-ufo@2x.png +0 -0
  107. data/app/assets/images/glyphish/gray/134-viking.png +0 -0
  108. data/app/assets/images/glyphish/gray/134-viking@2x.png +0 -0
  109. data/app/assets/images/glyphish/gray/135-hockeymask.png +0 -0
  110. data/app/assets/images/glyphish/gray/135-hockeymask@2x.png +0 -0
  111. data/app/assets/images/glyphish/gray/136-tractor.png +0 -0
  112. data/app/assets/images/glyphish/gray/136-tractor@2x.png +0 -0
  113. data/app/assets/images/glyphish/gray/137-presentation.png +0 -0
  114. data/app/assets/images/glyphish/gray/137-presentation@2x.png +0 -0
  115. data/app/assets/images/glyphish/gray/138-scales.png +0 -0
  116. data/app/assets/images/glyphish/gray/138-scales@2x.png +0 -0
  117. data/app/assets/images/glyphish/gray/139-flags.png +0 -0
  118. data/app/assets/images/glyphish/gray/139-flags@2x.png +0 -0
  119. data/app/assets/images/glyphish/gray/14-tag.png +0 -0
  120. data/app/assets/images/glyphish/gray/14-tag@2x.png +0 -0
  121. data/app/assets/images/glyphish/gray/140-gradhat.png +0 -0
  122. data/app/assets/images/glyphish/gray/140-gradhat@2x.png +0 -0
  123. data/app/assets/images/glyphish/gray/141-lamp.png +0 -0
  124. data/app/assets/images/glyphish/gray/141-lamp@2x.png +0 -0
  125. data/app/assets/images/glyphish/gray/142-wine-bottle.png +0 -0
  126. data/app/assets/images/glyphish/gray/142-wine-bottle@2x.png +0 -0
  127. data/app/assets/images/glyphish/gray/143-liquor-bottle.png +0 -0
  128. data/app/assets/images/glyphish/gray/143-liquor-bottle@2x.png +0 -0
  129. data/app/assets/images/glyphish/gray/144-martini.png +0 -0
  130. data/app/assets/images/glyphish/gray/144-martini@2x.png +0 -0
  131. data/app/assets/images/glyphish/gray/145-persondot.png +0 -0
  132. data/app/assets/images/glyphish/gray/145-persondot@2x.png +0 -0
  133. data/app/assets/images/glyphish/gray/146-gavel.png +0 -0
  134. data/app/assets/images/glyphish/gray/146-gavel@2x.png +0 -0
  135. data/app/assets/images/glyphish/gray/147-popsicle.png +0 -0
  136. data/app/assets/images/glyphish/gray/147-popsicle@2x.png +0 -0
  137. data/app/assets/images/glyphish/gray/148-doghouse.png +0 -0
  138. data/app/assets/images/glyphish/gray/148-doghouse@2x.png +0 -0
  139. data/app/assets/images/glyphish/gray/149-windmill.png +0 -0
  140. data/app/assets/images/glyphish/gray/149-windmill@2x.png +0 -0
  141. data/app/assets/images/glyphish/gray/15-tags.png +0 -0
  142. data/app/assets/images/glyphish/gray/15-tags@2x.png +0 -0
  143. data/app/assets/images/glyphish/gray/150-sailboat.png +0 -0
  144. data/app/assets/images/glyphish/gray/150-sailboat@2x.png +0 -0
  145. data/app/assets/images/glyphish/gray/151-telescope.png +0 -0
  146. data/app/assets/images/glyphish/gray/151-telescope@2x.png +0 -0
  147. data/app/assets/images/glyphish/gray/152-rolodex.png +0 -0
  148. data/app/assets/images/glyphish/gray/152-rolodex@2x.png +0 -0
  149. data/app/assets/images/glyphish/gray/153-guitar.png +0 -0
  150. data/app/assets/images/glyphish/gray/153-guitar@2x.png +0 -0
  151. data/app/assets/images/glyphish/gray/154-necktie.png +0 -0
  152. data/app/assets/images/glyphish/gray/154-necktie@2x.png +0 -0
  153. data/app/assets/images/glyphish/gray/155-bowtie.png +0 -0
  154. data/app/assets/images/glyphish/gray/155-bowtie@2x.png +0 -0
  155. data/app/assets/images/glyphish/gray/156-controller.png +0 -0
  156. data/app/assets/images/glyphish/gray/156-controller@2x.png +0 -0
  157. data/app/assets/images/glyphish/gray/157-wrench.png +0 -0
  158. data/app/assets/images/glyphish/gray/157-wrench@2x.png +0 -0
  159. data/app/assets/images/glyphish/gray/158-wrench-2.png +0 -0
  160. data/app/assets/images/glyphish/gray/158-wrench-2@2x.png +0 -0
  161. data/app/assets/images/glyphish/gray/159-voicemail.png +0 -0
  162. data/app/assets/images/glyphish/gray/159-voicemail@2x.png +0 -0
  163. data/app/assets/images/glyphish/gray/16-line-chart.png +0 -0
  164. data/app/assets/images/glyphish/gray/16-line-chart@2x.png +0 -0
  165. data/app/assets/images/glyphish/gray/160-voicemail-2.png +0 -0
  166. data/app/assets/images/glyphish/gray/160-voicemail-2@2x.png +0 -0
  167. data/app/assets/images/glyphish/gray/161-calculator.png +0 -0
  168. data/app/assets/images/glyphish/gray/161-calculator@2x.png +0 -0
  169. data/app/assets/images/glyphish/gray/162-receipt.png +0 -0
  170. data/app/assets/images/glyphish/gray/162-receipt@2x.png +0 -0
  171. data/app/assets/images/glyphish/gray/163-glasses-1.png +0 -0
  172. data/app/assets/images/glyphish/gray/163-glasses-1@2x.png +0 -0
  173. data/app/assets/images/glyphish/gray/164-glasses-2.png +0 -0
  174. data/app/assets/images/glyphish/gray/164-glasses-2@2x.png +0 -0
  175. data/app/assets/images/glyphish/gray/165-glasses-3.png +0 -0
  176. data/app/assets/images/glyphish/gray/165-glasses-3@2x.png +0 -0
  177. data/app/assets/images/glyphish/gray/166-newspaper.png +0 -0
  178. data/app/assets/images/glyphish/gray/166-newspaper@2x.png +0 -0
  179. data/app/assets/images/glyphish/gray/167-upload-photo.png +0 -0
  180. data/app/assets/images/glyphish/gray/167-upload-photo@2x.png +0 -0
  181. data/app/assets/images/glyphish/gray/168-upload-photo-2.png +0 -0
  182. data/app/assets/images/glyphish/gray/168-upload-photo-2@2x.png +0 -0
  183. data/app/assets/images/glyphish/gray/169-8ball.png +0 -0
  184. data/app/assets/images/glyphish/gray/169-8ball@2x.png +0 -0
  185. data/app/assets/images/glyphish/gray/17-bar-chart.png +0 -0
  186. data/app/assets/images/glyphish/gray/17-bar-chart@2x.png +0 -0
  187. data/app/assets/images/glyphish/gray/170-butterfly.png +0 -0
  188. data/app/assets/images/glyphish/gray/170-butterfly@2x.png +0 -0
  189. data/app/assets/images/glyphish/gray/171-sun.png +0 -0
  190. data/app/assets/images/glyphish/gray/171-sun@2x.png +0 -0
  191. data/app/assets/images/glyphish/gray/172-pricetag.png +0 -0
  192. data/app/assets/images/glyphish/gray/172-pricetag@2x.png +0 -0
  193. data/app/assets/images/glyphish/gray/173-eyedropper.png +0 -0
  194. data/app/assets/images/glyphish/gray/173-eyedropper@2x.png +0 -0
  195. data/app/assets/images/glyphish/gray/174-imac.png +0 -0
  196. data/app/assets/images/glyphish/gray/174-imac@2x.png +0 -0
  197. data/app/assets/images/glyphish/gray/175-macbook.png +0 -0
  198. data/app/assets/images/glyphish/gray/175-macbook@2x.png +0 -0
  199. data/app/assets/images/glyphish/gray/176-ipad.png +0 -0
  200. data/app/assets/images/glyphish/gray/176-ipad@2x.png +0 -0
  201. data/app/assets/images/glyphish/gray/177-building.png +0 -0
  202. data/app/assets/images/glyphish/gray/177-building@2x.png +0 -0
  203. data/app/assets/images/glyphish/gray/178-city.png +0 -0
  204. data/app/assets/images/glyphish/gray/178-city@2x.png +0 -0
  205. data/app/assets/images/glyphish/gray/179-notepad.png +0 -0
  206. data/app/assets/images/glyphish/gray/179-notepad@2x.png +0 -0
  207. data/app/assets/images/glyphish/gray/18-envelope.png +0 -0
  208. data/app/assets/images/glyphish/gray/18-envelope@2x.png +0 -0
  209. data/app/assets/images/glyphish/gray/180-stickynote.png +0 -0
  210. data/app/assets/images/glyphish/gray/180-stickynote@2x.png +0 -0
  211. data/app/assets/images/glyphish/gray/181-hammer.png +0 -0
  212. data/app/assets/images/glyphish/gray/181-hammer@2x.png +0 -0
  213. data/app/assets/images/glyphish/gray/182-messenger-bag.png +0 -0
  214. data/app/assets/images/glyphish/gray/182-messenger-bag@2x.png +0 -0
  215. data/app/assets/images/glyphish/gray/183-genie-lamp.png +0 -0
  216. data/app/assets/images/glyphish/gray/183-genie-lamp@2x.png +0 -0
  217. data/app/assets/images/glyphish/gray/184-warning.png +0 -0
  218. data/app/assets/images/glyphish/gray/184-warning@2x.png +0 -0
  219. data/app/assets/images/glyphish/gray/185-printer.png +0 -0
  220. data/app/assets/images/glyphish/gray/185-printer@2x.png +0 -0
  221. data/app/assets/images/glyphish/gray/186-ruler.png +0 -0
  222. data/app/assets/images/glyphish/gray/186-ruler@2x.png +0 -0
  223. data/app/assets/images/glyphish/gray/187-pencil.png +0 -0
  224. data/app/assets/images/glyphish/gray/187-pencil@2x.png +0 -0
  225. data/app/assets/images/glyphish/gray/188-paint-roller.png +0 -0
  226. data/app/assets/images/glyphish/gray/188-paint-roller@2x.png +0 -0
  227. data/app/assets/images/glyphish/gray/189-plant.png +0 -0
  228. data/app/assets/images/glyphish/gray/189-plant@2x.png +0 -0
  229. data/app/assets/images/glyphish/gray/19-gear.png +0 -0
  230. data/app/assets/images/glyphish/gray/19-gear@2x.png +0 -0
  231. data/app/assets/images/glyphish/gray/190-bank.png +0 -0
  232. data/app/assets/images/glyphish/gray/190-bank@2x.png +0 -0
  233. data/app/assets/images/glyphish/gray/191-collection.png +0 -0
  234. data/app/assets/images/glyphish/gray/191-collection@2x.png +0 -0
  235. data/app/assets/images/glyphish/gray/192-credit-card.png +0 -0
  236. data/app/assets/images/glyphish/gray/192-credit-card@2x.png +0 -0
  237. data/app/assets/images/glyphish/gray/193-location-arrow.png +0 -0
  238. data/app/assets/images/glyphish/gray/193-location-arrow@2x.png +0 -0
  239. data/app/assets/images/glyphish/gray/194-note-2.png +0 -0
  240. data/app/assets/images/glyphish/gray/194-note-2@2x.png +0 -0
  241. data/app/assets/images/glyphish/gray/195-barcode.png +0 -0
  242. data/app/assets/images/glyphish/gray/195-barcode@2x.png +0 -0
  243. data/app/assets/images/glyphish/gray/196-radiation.png +0 -0
  244. data/app/assets/images/glyphish/gray/196-radiation@2x.png +0 -0
  245. data/app/assets/images/glyphish/gray/197-card-diamonds.png +0 -0
  246. data/app/assets/images/glyphish/gray/197-card-diamonds@2x.png +0 -0
  247. data/app/assets/images/glyphish/gray/198-card-spades.png +0 -0
  248. data/app/assets/images/glyphish/gray/198-card-spades@2x.png +0 -0
  249. data/app/assets/images/glyphish/gray/199-card-hearts.png +0 -0
  250. data/app/assets/images/glyphish/gray/199-card-hearts@2x.png +0 -0
  251. data/app/assets/images/glyphish/gray/20-gear-2.png +0 -0
  252. data/app/assets/images/glyphish/gray/20-gear-2@2x.png +0 -0
  253. data/app/assets/images/glyphish/gray/200-card-clubs.png +0 -0
  254. data/app/assets/images/glyphish/gray/200-card-clubs@2x.png +0 -0
  255. data/app/assets/images/glyphish/gray/201-vampire.png +0 -0
  256. data/app/assets/images/glyphish/gray/201-vampire@2x.png +0 -0
  257. data/app/assets/images/glyphish/gray/202-alien.png +0 -0
  258. data/app/assets/images/glyphish/gray/202-alien@2x.png +0 -0
  259. data/app/assets/images/glyphish/gray/203-spiderweb.png +0 -0
  260. data/app/assets/images/glyphish/gray/203-spiderweb@2x.png +0 -0
  261. data/app/assets/images/glyphish/gray/204-wallet.png +0 -0
  262. data/app/assets/images/glyphish/gray/204-wallet@2x.png +0 -0
  263. data/app/assets/images/glyphish/gray/205-factory.png +0 -0
  264. data/app/assets/images/glyphish/gray/205-factory@2x.png +0 -0
  265. data/app/assets/images/glyphish/gray/206-evernote.png +0 -0
  266. data/app/assets/images/glyphish/gray/206-evernote@2x.png +0 -0
  267. data/app/assets/images/glyphish/gray/207-dropbox.png +0 -0
  268. data/app/assets/images/glyphish/gray/207-dropbox@2x.png +0 -0
  269. data/app/assets/images/glyphish/gray/208-facebook.png +0 -0
  270. data/app/assets/images/glyphish/gray/208-facebook@2x.png +0 -0
  271. data/app/assets/images/glyphish/gray/209-twitter.png +0 -0
  272. data/app/assets/images/glyphish/gray/209-twitter@2x.png +0 -0
  273. data/app/assets/images/glyphish/gray/21-skull.png +0 -0
  274. data/app/assets/images/glyphish/gray/21-skull@2x.png +0 -0
  275. data/app/assets/images/glyphish/gray/210-twitterbird.png +0 -0
  276. data/app/assets/images/glyphish/gray/210-twitterbird@2x.png +0 -0
  277. data/app/assets/images/glyphish/gray/211-action.png +0 -0
  278. data/app/assets/images/glyphish/gray/211-action@2x.png +0 -0
  279. data/app/assets/images/glyphish/gray/212-action2.png +0 -0
  280. data/app/assets/images/glyphish/gray/212-action2@2x.png +0 -0
  281. data/app/assets/images/glyphish/gray/213-reply.png +0 -0
  282. data/app/assets/images/glyphish/gray/213-reply@2x.png +0 -0
  283. data/app/assets/images/glyphish/gray/214-replyall.png +0 -0
  284. data/app/assets/images/glyphish/gray/214-replyall@2x.png +0 -0
  285. data/app/assets/images/glyphish/gray/215-subscription.png +0 -0
  286. data/app/assets/images/glyphish/gray/215-subscription@2x.png +0 -0
  287. data/app/assets/images/glyphish/gray/216-compose.png +0 -0
  288. data/app/assets/images/glyphish/gray/216-compose@2x.png +0 -0
  289. data/app/assets/images/glyphish/gray/217-trash.png +0 -0
  290. data/app/assets/images/glyphish/gray/217-trash@2x.png +0 -0
  291. data/app/assets/images/glyphish/gray/218-trash2.png +0 -0
  292. data/app/assets/images/glyphish/gray/218-trash2@2x.png +0 -0
  293. data/app/assets/images/glyphish/gray/219-scissors.png +0 -0
  294. data/app/assets/images/glyphish/gray/219-scissors@2x.png +0 -0
  295. data/app/assets/images/glyphish/gray/22-skull-n-bones.png +0 -0
  296. data/app/assets/images/glyphish/gray/22-skull-n-bones@2x.png +0 -0
  297. data/app/assets/images/glyphish/gray/220-coupon.png +0 -0
  298. data/app/assets/images/glyphish/gray/220-coupon@2x.png +0 -0
  299. data/app/assets/images/glyphish/gray/221-recordplayer.png +0 -0
  300. data/app/assets/images/glyphish/gray/221-recordplayer@2x.png +0 -0
  301. data/app/assets/images/glyphish/gray/222-bacon.png +0 -0
  302. data/app/assets/images/glyphish/gray/222-bacon@2x.png +0 -0
  303. data/app/assets/images/glyphish/gray/223-magnet.png +0 -0
  304. data/app/assets/images/glyphish/gray/223-magnet@2x.png +0 -0
  305. data/app/assets/images/glyphish/gray/224-flower.png +0 -0
  306. data/app/assets/images/glyphish/gray/224-flower@2x.png +0 -0
  307. data/app/assets/images/glyphish/gray/225-plant.png +0 -0
  308. data/app/assets/images/glyphish/gray/225-plant@2x.png +0 -0
  309. data/app/assets/images/glyphish/gray/226-egg.png +0 -0
  310. data/app/assets/images/glyphish/gray/226-egg@2x.png +0 -0
  311. data/app/assets/images/glyphish/gray/227-psp.png +0 -0
  312. data/app/assets/images/glyphish/gray/227-psp@2x.png +0 -0
  313. data/app/assets/images/glyphish/gray/228-nescontroller.png +0 -0
  314. data/app/assets/images/glyphish/gray/228-nescontroller@2x.png +0 -0
  315. data/app/assets/images/glyphish/gray/229-gba.png +0 -0
  316. data/app/assets/images/glyphish/gray/229-gba@2x.png +0 -0
  317. data/app/assets/images/glyphish/gray/23-bird.png +0 -0
  318. data/app/assets/images/glyphish/gray/23-bird@2x.png +0 -0
  319. data/app/assets/images/glyphish/gray/230-wiimote.png +0 -0
  320. data/app/assets/images/glyphish/gray/230-wiimote@2x.png +0 -0
  321. data/app/assets/images/glyphish/gray/231-birdhouse.png +0 -0
  322. data/app/assets/images/glyphish/gray/231-birdhouse@2x.png +0 -0
  323. data/app/assets/images/glyphish/gray/232-whale.png +0 -0
  324. data/app/assets/images/glyphish/gray/232-whale@2x.png +0 -0
  325. data/app/assets/images/glyphish/gray/233-fish.png +0 -0
  326. data/app/assets/images/glyphish/gray/233-fish@2x.png +0 -0
  327. data/app/assets/images/glyphish/gray/234-cloud.png +0 -0
  328. data/app/assets/images/glyphish/gray/234-cloud@2x.png +0 -0
  329. data/app/assets/images/glyphish/gray/235-purse.png +0 -0
  330. data/app/assets/images/glyphish/gray/235-purse@2x.png +0 -0
  331. data/app/assets/images/glyphish/gray/236-shoppingbag.png +0 -0
  332. data/app/assets/images/glyphish/gray/236-shoppingbag@2x.png +0 -0
  333. data/app/assets/images/glyphish/gray/237-key.png +0 -0
  334. data/app/assets/images/glyphish/gray/237-key@2x.png +0 -0
  335. data/app/assets/images/glyphish/gray/238-road.png +0 -0
  336. data/app/assets/images/glyphish/gray/238-road@2x.png +0 -0
  337. data/app/assets/images/glyphish/gray/239-screen.png +0 -0
  338. data/app/assets/images/glyphish/gray/239-screen@2x.png +0 -0
  339. data/app/assets/images/glyphish/gray/24-gift.png +0 -0
  340. data/app/assets/images/glyphish/gray/24-gift@2x.png +0 -0
  341. data/app/assets/images/glyphish/gray/240-sketchbook.png +0 -0
  342. data/app/assets/images/glyphish/gray/240-sketchbook@2x.png +0 -0
  343. data/app/assets/images/glyphish/gray/241-cleaver.png +0 -0
  344. data/app/assets/images/glyphish/gray/241-cleaver@2x.png +0 -0
  345. data/app/assets/images/glyphish/gray/242-ramen.png +0 -0
  346. data/app/assets/images/glyphish/gray/242-ramen@2x.png +0 -0
  347. data/app/assets/images/glyphish/gray/243-globe.png +0 -0
  348. data/app/assets/images/glyphish/gray/243-globe@2x.png +0 -0
  349. data/app/assets/images/glyphish/gray/244-rubberstamp.png +0 -0
  350. data/app/assets/images/glyphish/gray/244-rubberstamp@2x.png +0 -0
  351. data/app/assets/images/glyphish/gray/245-paperairplane.png +0 -0
  352. data/app/assets/images/glyphish/gray/245-paperairplane@2x.png +0 -0
  353. data/app/assets/images/glyphish/gray/246-route.png +0 -0
  354. data/app/assets/images/glyphish/gray/246-route@2x.png +0 -0
  355. data/app/assets/images/glyphish/gray/247-dancesteps.png +0 -0
  356. data/app/assets/images/glyphish/gray/247-dancesteps@2x.png +0 -0
  357. data/app/assets/images/glyphish/gray/248-sign.png +0 -0
  358. data/app/assets/images/glyphish/gray/248-sign@2x.png +0 -0
  359. data/app/assets/images/glyphish/gray/249-piechart.png +0 -0
  360. data/app/assets/images/glyphish/gray/249-piechart@2x.png +0 -0
  361. data/app/assets/images/glyphish/gray/25-weather.png +0 -0
  362. data/app/assets/images/glyphish/gray/25-weather@2x.png +0 -0
  363. data/app/assets/images/glyphish/gray/250-stats.png +0 -0
  364. data/app/assets/images/glyphish/gray/250-stats@2x.png +0 -0
  365. data/app/assets/images/glyphish/gray/251-sword.png +0 -0
  366. data/app/assets/images/glyphish/gray/251-sword@2x.png +0 -0
  367. data/app/assets/images/glyphish/gray/252-lure.png +0 -0
  368. data/app/assets/images/glyphish/gray/252-lure@2x.png +0 -0
  369. data/app/assets/images/glyphish/gray/253-person.png +0 -0
  370. data/app/assets/images/glyphish/gray/253-person@2x.png +0 -0
  371. data/app/assets/images/glyphish/gray/254-barrier.png +0 -0
  372. data/app/assets/images/glyphish/gray/254-barrier@2x.png +0 -0
  373. data/app/assets/images/glyphish/gray/255-box.png +0 -0
  374. data/app/assets/images/glyphish/gray/255-box@2x.png +0 -0
  375. data/app/assets/images/glyphish/gray/256-box2.png +0 -0
  376. data/app/assets/images/glyphish/gray/256-box2@2x.png +0 -0
  377. data/app/assets/images/glyphish/gray/257-box3.png +0 -0
  378. data/app/assets/images/glyphish/gray/257-box3@2x.png +0 -0
  379. data/app/assets/images/glyphish/gray/258-checkmark.png +0 -0
  380. data/app/assets/images/glyphish/gray/258-checkmark@2x.png +0 -0
  381. data/app/assets/images/glyphish/gray/259-list.png +0 -0
  382. data/app/assets/images/glyphish/gray/259-list@2x.png +0 -0
  383. data/app/assets/images/glyphish/gray/26-bandaid.png +0 -0
  384. data/app/assets/images/glyphish/gray/26-bandaid@2x.png +0 -0
  385. data/app/assets/images/glyphish/gray/260-count.png +0 -0
  386. data/app/assets/images/glyphish/gray/260-count@2x.png +0 -0
  387. data/app/assets/images/glyphish/gray/261-album-closed.png +0 -0
  388. data/app/assets/images/glyphish/gray/261-album-closed@2x.png +0 -0
  389. data/app/assets/images/glyphish/gray/262-album-open.png +0 -0
  390. data/app/assets/images/glyphish/gray/262-album-open@2x.png +0 -0
  391. data/app/assets/images/glyphish/gray/263-sound-off.png +0 -0
  392. data/app/assets/images/glyphish/gray/263-sound-off@2x.png +0 -0
  393. data/app/assets/images/glyphish/gray/264-sound-on.png +0 -0
  394. data/app/assets/images/glyphish/gray/264-sound-on@2x.png +0 -0
  395. data/app/assets/images/glyphish/gray/265-download.png +0 -0
  396. data/app/assets/images/glyphish/gray/265-download@2x.png +0 -0
  397. data/app/assets/images/glyphish/gray/266-upload.png +0 -0
  398. data/app/assets/images/glyphish/gray/266-upload@2x.png +0 -0
  399. data/app/assets/images/glyphish/gray/267-zoomin.png +0 -0
  400. data/app/assets/images/glyphish/gray/267-zoomin@2x.png +0 -0
  401. data/app/assets/images/glyphish/gray/268-zoomout.png +0 -0
  402. data/app/assets/images/glyphish/gray/268-zoomout@2x.png +0 -0
  403. data/app/assets/images/glyphish/gray/269-happyface.png +0 -0
  404. data/app/assets/images/glyphish/gray/269-happyface@2x.png +0 -0
  405. data/app/assets/images/glyphish/gray/27-planet.png +0 -0
  406. data/app/assets/images/glyphish/gray/27-planet@2x.png +0 -0
  407. data/app/assets/images/glyphish/gray/270-unhappyface.png +0 -0
  408. data/app/assets/images/glyphish/gray/270-unhappyface@2x.png +0 -0
  409. data/app/assets/images/glyphish/gray/271-dramamasks.png +0 -0
  410. data/app/assets/images/glyphish/gray/271-dramamasks@2x.png +0 -0
  411. data/app/assets/images/glyphish/gray/272-windows.png +0 -0
  412. data/app/assets/images/glyphish/gray/272-windows@2x.png +0 -0
  413. data/app/assets/images/glyphish/gray/273-grapes.png +0 -0
  414. data/app/assets/images/glyphish/gray/273-grapes@2x.png +0 -0
  415. data/app/assets/images/glyphish/gray/274-router.png +0 -0
  416. data/app/assets/images/glyphish/gray/274-router@2x.png +0 -0
  417. data/app/assets/images/glyphish/gray/275-broadcast.png +0 -0
  418. data/app/assets/images/glyphish/gray/275-broadcast@2x.png +0 -0
  419. data/app/assets/images/glyphish/gray/276-poison.png +0 -0
  420. data/app/assets/images/glyphish/gray/276-poison@2x.png +0 -0
  421. data/app/assets/images/glyphish/gray/277-lighting.png +0 -0
  422. data/app/assets/images/glyphish/gray/277-lighting@2x.png +0 -0
  423. data/app/assets/images/glyphish/gray/278-flipcam.png +0 -0
  424. data/app/assets/images/glyphish/gray/278-flipcam@2x.png +0 -0
  425. data/app/assets/images/glyphish/gray/279-videocamera.png +0 -0
  426. data/app/assets/images/glyphish/gray/279-videocamera@2x.png +0 -0
  427. data/app/assets/images/glyphish/gray/28-star.png +0 -0
  428. data/app/assets/images/glyphish/gray/28-star@2x.png +0 -0
  429. data/app/assets/images/glyphish/gray/280-clapboard.png +0 -0
  430. data/app/assets/images/glyphish/gray/280-clapboard@2x.png +0 -0
  431. data/app/assets/images/glyphish/gray/281-crown.png +0 -0
  432. data/app/assets/images/glyphish/gray/281-crown@2x.png +0 -0
  433. data/app/assets/images/glyphish/gray/282-cards.png +0 -0
  434. data/app/assets/images/glyphish/gray/282-cards@2x.png +0 -0
  435. data/app/assets/images/glyphish/gray/283-bomb.png +0 -0
  436. data/app/assets/images/glyphish/gray/283-bomb@2x.png +0 -0
  437. data/app/assets/images/glyphish/gray/284-bell.png +0 -0
  438. data/app/assets/images/glyphish/gray/284-bell@2x.png +0 -0
  439. data/app/assets/images/glyphish/gray/285-facetime.png +0 -0
  440. data/app/assets/images/glyphish/gray/285-facetime@2x.png +0 -0
  441. data/app/assets/images/glyphish/gray/286-speechbubble.png +0 -0
  442. data/app/assets/images/glyphish/gray/286-speechbubble@2x.png +0 -0
  443. data/app/assets/images/glyphish/gray/287-at.png +0 -0
  444. data/app/assets/images/glyphish/gray/287-at@2x.png +0 -0
  445. data/app/assets/images/glyphish/gray/288-retweet.png +0 -0
  446. data/app/assets/images/glyphish/gray/288-retweet@2x.png +0 -0
  447. data/app/assets/images/glyphish/gray/289-rocket.png +0 -0
  448. data/app/assets/images/glyphish/gray/289-rocket@2x.png +0 -0
  449. data/app/assets/images/glyphish/gray/29-heart.png +0 -0
  450. data/app/assets/images/glyphish/gray/29-heart@2x.png +0 -0
  451. data/app/assets/images/glyphish/gray/290-bomb2.png +0 -0
  452. data/app/assets/images/glyphish/gray/290-bomb2@2x.png +0 -0
  453. data/app/assets/images/glyphish/gray/291-idcard.png +0 -0
  454. data/app/assets/images/glyphish/gray/291-idcard@2x.png +0 -0
  455. data/app/assets/images/glyphish/gray/292-crop.png +0 -0
  456. data/app/assets/images/glyphish/gray/292-crop@2x.png +0 -0
  457. data/app/assets/images/glyphish/gray/293-database.png +0 -0
  458. data/app/assets/images/glyphish/gray/293-database@2x.png +0 -0
  459. data/app/assets/images/glyphish/gray/294-macroflower.png +0 -0
  460. data/app/assets/images/glyphish/gray/294-macroflower@2x.png +0 -0
  461. data/app/assets/images/glyphish/gray/295-shield.png +0 -0
  462. data/app/assets/images/glyphish/gray/295-shield@2x.png +0 -0
  463. data/app/assets/images/glyphish/gray/296-pizza.png +0 -0
  464. data/app/assets/images/glyphish/gray/296-pizza@2x.png +0 -0
  465. data/app/assets/images/glyphish/gray/297-speaker.png +0 -0
  466. data/app/assets/images/glyphish/gray/297-speaker@2x.png +0 -0
  467. data/app/assets/images/glyphish/gray/298-circlex.png +0 -0
  468. data/app/assets/images/glyphish/gray/298-circlex@2x.png +0 -0
  469. data/app/assets/images/glyphish/gray/299-ticket.png +0 -0
  470. data/app/assets/images/glyphish/gray/299-ticket@2x.png +0 -0
  471. data/app/assets/images/glyphish/gray/30-key.png +0 -0
  472. data/app/assets/images/glyphish/gray/30-key@2x.png +0 -0
  473. data/app/assets/images/glyphish/gray/300-orgchart.png +0 -0
  474. data/app/assets/images/glyphish/gray/300-orgchart@2x.png +0 -0
  475. data/app/assets/images/glyphish/gray/31-ipod.png +0 -0
  476. data/app/assets/images/glyphish/gray/31-ipod@2x.png +0 -0
  477. data/app/assets/images/glyphish/gray/32-iphone.png +0 -0
  478. data/app/assets/images/glyphish/gray/32-iphone@2x.png +0 -0
  479. data/app/assets/images/glyphish/gray/33-cabinet.png +0 -0
  480. data/app/assets/images/glyphish/gray/33-cabinet@2x.png +0 -0
  481. data/app/assets/images/glyphish/gray/34-coffee.png +0 -0
  482. data/app/assets/images/glyphish/gray/34-coffee@2x.png +0 -0
  483. data/app/assets/images/glyphish/gray/35-shopping.png +0 -0
  484. data/app/assets/images/glyphish/gray/35-shopping@2x.png +0 -0
  485. data/app/assets/images/glyphish/gray/36-toolbox.png +0 -0
  486. data/app/assets/images/glyphish/gray/36-toolbox@2x.png +0 -0
  487. data/app/assets/images/glyphish/gray/37-suitcase.png +0 -0
  488. data/app/assets/images/glyphish/gray/37-suitcase@2x.png +0 -0
  489. data/app/assets/images/glyphish/gray/38-airplane.png +0 -0
  490. data/app/assets/images/glyphish/gray/38-airplane@2x.png +0 -0
  491. data/app/assets/images/glyphish/gray/39-spraycan.png +0 -0
  492. data/app/assets/images/glyphish/gray/39-spraycan@2x.png +0 -0
  493. data/app/assets/images/glyphish/gray/40-inbox.png +0 -0
  494. data/app/assets/images/glyphish/gray/40-inbox@2x.png +0 -0
  495. data/app/assets/images/glyphish/gray/41-picture-frame.png +0 -0
  496. data/app/assets/images/glyphish/gray/41-picture-frame@2x.png +0 -0
  497. data/app/assets/images/glyphish/gray/42-photos.png +0 -0
  498. data/app/assets/images/glyphish/gray/42-photos@2x.png +0 -0
  499. data/app/assets/images/glyphish/gray/43-film-roll.png +0 -0
  500. data/app/assets/images/glyphish/gray/43-film-roll@2x.png +0 -0
  501. data/app/assets/images/glyphish/gray/44-shoebox.png +0 -0
  502. data/app/assets/images/glyphish/gray/44-shoebox@2x.png +0 -0
  503. data/app/assets/images/glyphish/gray/45-movie-1.png +0 -0
  504. data/app/assets/images/glyphish/gray/45-movie-1@2x.png +0 -0
  505. data/app/assets/images/glyphish/gray/46-movie-2.png +0 -0
  506. data/app/assets/images/glyphish/gray/46-movie-2@2x.png +0 -0
  507. data/app/assets/images/glyphish/gray/47-fuel.png +0 -0
  508. data/app/assets/images/glyphish/gray/47-fuel@2x.png +0 -0
  509. data/app/assets/images/glyphish/gray/48-fork-and-knife.png +0 -0
  510. data/app/assets/images/glyphish/gray/48-fork-and-knife@2x.png +0 -0
  511. data/app/assets/images/glyphish/gray/49-battery.png +0 -0
  512. data/app/assets/images/glyphish/gray/49-battery@2x.png +0 -0
  513. data/app/assets/images/glyphish/gray/50-beaker.png +0 -0
  514. data/app/assets/images/glyphish/gray/50-beaker@2x.png +0 -0
  515. data/app/assets/images/glyphish/gray/51-outlet.png +0 -0
  516. data/app/assets/images/glyphish/gray/51-outlet@2x.png +0 -0
  517. data/app/assets/images/glyphish/gray/52-pine-tree.png +0 -0
  518. data/app/assets/images/glyphish/gray/52-pine-tree@2x.png +0 -0
  519. data/app/assets/images/glyphish/gray/53-house.png +0 -0
  520. data/app/assets/images/glyphish/gray/53-house@2x.png +0 -0
  521. data/app/assets/images/glyphish/gray/54-lock.png +0 -0
  522. data/app/assets/images/glyphish/gray/54-lock@2x.png +0 -0
  523. data/app/assets/images/glyphish/gray/55-network.png +0 -0
  524. data/app/assets/images/glyphish/gray/55-network@2x.png +0 -0
  525. data/app/assets/images/glyphish/gray/56-cloud.png +0 -0
  526. data/app/assets/images/glyphish/gray/56-cloud@2x.png +0 -0
  527. data/app/assets/images/glyphish/gray/57-download.png +0 -0
  528. data/app/assets/images/glyphish/gray/57-download@2x.png +0 -0
  529. data/app/assets/images/glyphish/gray/58-bookmark.png +0 -0
  530. data/app/assets/images/glyphish/gray/58-bookmark@2x.png +0 -0
  531. data/app/assets/images/glyphish/gray/59-flag.png +0 -0
  532. data/app/assets/images/glyphish/gray/59-flag@2x.png +0 -0
  533. data/app/assets/images/glyphish/gray/60-signpost.png +0 -0
  534. data/app/assets/images/glyphish/gray/60-signpost@2x.png +0 -0
  535. data/app/assets/images/glyphish/gray/61-brightness.png +0 -0
  536. data/app/assets/images/glyphish/gray/61-brightness@2x.png +0 -0
  537. data/app/assets/images/glyphish/gray/62-contrast.png +0 -0
  538. data/app/assets/images/glyphish/gray/62-contrast@2x.png +0 -0
  539. data/app/assets/images/glyphish/gray/63-runner.png +0 -0
  540. data/app/assets/images/glyphish/gray/63-runner@2x.png +0 -0
  541. data/app/assets/images/glyphish/gray/64-zap.png +0 -0
  542. data/app/assets/images/glyphish/gray/64-zap@2x.png +0 -0
  543. data/app/assets/images/glyphish/gray/65-note.png +0 -0
  544. data/app/assets/images/glyphish/gray/65-note@2x.png +0 -0
  545. data/app/assets/images/glyphish/gray/66-microphone.png +0 -0
  546. data/app/assets/images/glyphish/gray/66-microphone@2x.png +0 -0
  547. data/app/assets/images/glyphish/gray/67-tshirt.png +0 -0
  548. data/app/assets/images/glyphish/gray/67-tshirt@2x.png +0 -0
  549. data/app/assets/images/glyphish/gray/68-paperclip.png +0 -0
  550. data/app/assets/images/glyphish/gray/68-paperclip@2x.png +0 -0
  551. data/app/assets/images/glyphish/gray/69-display.png +0 -0
  552. data/app/assets/images/glyphish/gray/69-display@2x.png +0 -0
  553. data/app/assets/images/glyphish/gray/70-tv.png +0 -0
  554. data/app/assets/images/glyphish/gray/70-tv@2x.png +0 -0
  555. data/app/assets/images/glyphish/gray/71-compass.png +0 -0
  556. data/app/assets/images/glyphish/gray/71-compass@2x.png +0 -0
  557. data/app/assets/images/glyphish/gray/72-pin.png +0 -0
  558. data/app/assets/images/glyphish/gray/72-pin@2x.png +0 -0
  559. data/app/assets/images/glyphish/gray/73-radar.png +0 -0
  560. data/app/assets/images/glyphish/gray/73-radar@2x.png +0 -0
  561. data/app/assets/images/glyphish/gray/74-location.png +0 -0
  562. data/app/assets/images/glyphish/gray/74-location@2x.png +0 -0
  563. data/app/assets/images/glyphish/gray/75-phone.png +0 -0
  564. data/app/assets/images/glyphish/gray/75-phone@2x.png +0 -0
  565. data/app/assets/images/glyphish/gray/76-baby.png +0 -0
  566. data/app/assets/images/glyphish/gray/76-baby@2x.png +0 -0
  567. data/app/assets/images/glyphish/gray/77-ekg.png +0 -0
  568. data/app/assets/images/glyphish/gray/77-ekg@2x.png +0 -0
  569. data/app/assets/images/glyphish/gray/78-stopwatch.png +0 -0
  570. data/app/assets/images/glyphish/gray/78-stopwatch@2x.png +0 -0
  571. data/app/assets/images/glyphish/gray/79-medical-bag.png +0 -0
  572. data/app/assets/images/glyphish/gray/79-medical-bag@2x.png +0 -0
  573. data/app/assets/images/glyphish/gray/80-shopping-cart.png +0 -0
  574. data/app/assets/images/glyphish/gray/80-shopping-cart@2x.png +0 -0
  575. data/app/assets/images/glyphish/gray/81-dashboard.png +0 -0
  576. data/app/assets/images/glyphish/gray/81-dashboard@2x.png +0 -0
  577. data/app/assets/images/glyphish/gray/82-dog-paw.png +0 -0
  578. data/app/assets/images/glyphish/gray/82-dog-paw@2x.png +0 -0
  579. data/app/assets/images/glyphish/gray/83-calendar.png +0 -0
  580. data/app/assets/images/glyphish/gray/83-calendar@2x.png +0 -0
  581. data/app/assets/images/glyphish/gray/84-lightbulb.png +0 -0
  582. data/app/assets/images/glyphish/gray/84-lightbulb@2x.png +0 -0
  583. data/app/assets/images/glyphish/gray/85-trophy.png +0 -0
  584. data/app/assets/images/glyphish/gray/85-trophy@2x.png +0 -0
  585. data/app/assets/images/glyphish/gray/86-camera.png +0 -0
  586. data/app/assets/images/glyphish/gray/86-camera@2x.png +0 -0
  587. data/app/assets/images/glyphish/gray/87-wine-glass.png +0 -0
  588. data/app/assets/images/glyphish/gray/87-wine-glass@2x.png +0 -0
  589. data/app/assets/images/glyphish/gray/88-beer-glass.png +0 -0
  590. data/app/assets/images/glyphish/gray/88-beer-glass@2x.png +0 -0
  591. data/app/assets/images/glyphish/gray/89-dumbells.png +0 -0
  592. data/app/assets/images/glyphish/gray/89-dumbells@2x.png +0 -0
  593. data/app/assets/images/glyphish/gray/90-lifebuoy.png +0 -0
  594. data/app/assets/images/glyphish/gray/90-lifebuoy@2x.png +0 -0
  595. data/app/assets/images/glyphish/gray/91-beaker-2.png +0 -0
  596. data/app/assets/images/glyphish/gray/91-beaker-2@2x.png +0 -0
  597. data/app/assets/images/glyphish/gray/92-test-tube.png +0 -0
  598. data/app/assets/images/glyphish/gray/92-test-tube@2x.png +0 -0
  599. data/app/assets/images/glyphish/gray/93-thermometer.png +0 -0
  600. data/app/assets/images/glyphish/gray/93-thermometer@2x.png +0 -0
  601. data/app/assets/images/glyphish/gray/94-pill.png +0 -0
  602. data/app/assets/images/glyphish/gray/94-pill@2x.png +0 -0
  603. data/app/assets/images/glyphish/gray/95-equalizer.png +0 -0
  604. data/app/assets/images/glyphish/gray/95-equalizer@2x.png +0 -0
  605. data/app/assets/images/glyphish/gray/96-book.png +0 -0
  606. data/app/assets/images/glyphish/gray/96-book@2x.png +0 -0
  607. data/app/assets/images/glyphish/gray/97-puzzle-piece.png +0 -0
  608. data/app/assets/images/glyphish/gray/97-puzzle-piece@2x.png +0 -0
  609. data/app/assets/images/glyphish/gray/98-palette.png +0 -0
  610. data/app/assets/images/glyphish/gray/98-palette@2x.png +0 -0
  611. data/app/assets/images/glyphish/gray/99-umbrella.png +0 -0
  612. data/app/assets/images/glyphish/gray/99-umbrella@2x.png +0 -0
  613. data/app/assets/images/glyphish/white/01-refresh.png +0 -0
  614. data/app/assets/images/glyphish/white/01-refresh@2x.png +0 -0
  615. data/app/assets/images/glyphish/white/02-redo.png +0 -0
  616. data/app/assets/images/glyphish/white/02-redo@2x.png +0 -0
  617. data/app/assets/images/glyphish/white/03-loopback.png +0 -0
  618. data/app/assets/images/glyphish/white/03-loopback@2x.png +0 -0
  619. data/app/assets/images/glyphish/white/04-squiggle.png +0 -0
  620. data/app/assets/images/glyphish/white/04-squiggle@2x.png +0 -0
  621. data/app/assets/images/glyphish/white/05-shuffle.png +0 -0
  622. data/app/assets/images/glyphish/white/05-shuffle@2x.png +0 -0
  623. data/app/assets/images/glyphish/white/06-magnify.png +0 -0
  624. data/app/assets/images/glyphish/white/06-magnify@2x.png +0 -0
  625. data/app/assets/images/glyphish/white/07-map-marker.png +0 -0
  626. data/app/assets/images/glyphish/white/07-map-marker@2x.png +0 -0
  627. data/app/assets/images/glyphish/white/08-chat.png +0 -0
  628. data/app/assets/images/glyphish/white/08-chat@2x.png +0 -0
  629. data/app/assets/images/glyphish/white/09-chat-2.png +0 -0
  630. data/app/assets/images/glyphish/white/09-chat-2@2x.png +0 -0
  631. data/app/assets/images/glyphish/white/10-medical.png +0 -0
  632. data/app/assets/images/glyphish/white/10-medical@2x.png +0 -0
  633. data/app/assets/images/glyphish/white/100-coffee.png +0 -0
  634. data/app/assets/images/glyphish/white/100-coffee@2x.png +0 -0
  635. data/app/assets/images/glyphish/white/101-gameplan.png +0 -0
  636. data/app/assets/images/glyphish/white/101-gameplan@2x.png +0 -0
  637. data/app/assets/images/glyphish/white/102-walk.png +0 -0
  638. data/app/assets/images/glyphish/white/102-walk@2x.png +0 -0
  639. data/app/assets/images/glyphish/white/103-map.png +0 -0
  640. data/app/assets/images/glyphish/white/103-map@2x.png +0 -0
  641. data/app/assets/images/glyphish/white/104-index-cards.png +0 -0
  642. data/app/assets/images/glyphish/white/104-index-cards@2x.png +0 -0
  643. data/app/assets/images/glyphish/white/105-piano.png +0 -0
  644. data/app/assets/images/glyphish/white/105-piano@2x.png +0 -0
  645. data/app/assets/images/glyphish/white/106-sliders.png +0 -0
  646. data/app/assets/images/glyphish/white/106-sliders@2x.png +0 -0
  647. data/app/assets/images/glyphish/white/107-widescreen.png +0 -0
  648. data/app/assets/images/glyphish/white/107-widescreen@2x.png +0 -0
  649. data/app/assets/images/glyphish/white/108-badge.png +0 -0
  650. data/app/assets/images/glyphish/white/108-badge@2x.png +0 -0
  651. data/app/assets/images/glyphish/white/109-chicken.png +0 -0
  652. data/app/assets/images/glyphish/white/109-chicken@2x.png +0 -0
  653. data/app/assets/images/glyphish/white/11-clock.png +0 -0
  654. data/app/assets/images/glyphish/white/11-clock@2x.png +0 -0
  655. data/app/assets/images/glyphish/white/110-bug.png +0 -0
  656. data/app/assets/images/glyphish/white/110-bug@2x.png +0 -0
  657. data/app/assets/images/glyphish/white/111-user.png +0 -0
  658. data/app/assets/images/glyphish/white/111-user@2x.png +0 -0
  659. data/app/assets/images/glyphish/white/112-group.png +0 -0
  660. data/app/assets/images/glyphish/white/112-group@2x.png +0 -0
  661. data/app/assets/images/glyphish/white/113-navigation.png +0 -0
  662. data/app/assets/images/glyphish/white/113-navigation@2x.png +0 -0
  663. data/app/assets/images/glyphish/white/114-balloon.png +0 -0
  664. data/app/assets/images/glyphish/white/114-balloon@2x.png +0 -0
  665. data/app/assets/images/glyphish/white/115-bow-and-arrow.png +0 -0
  666. data/app/assets/images/glyphish/white/115-bow-and-arrow@2x.png +0 -0
  667. data/app/assets/images/glyphish/white/116-controller.png +0 -0
  668. data/app/assets/images/glyphish/white/116-controller@2x.png +0 -0
  669. data/app/assets/images/glyphish/white/117-todo.png +0 -0
  670. data/app/assets/images/glyphish/white/117-todo@2x.png +0 -0
  671. data/app/assets/images/glyphish/white/118-coat-hanger.png +0 -0
  672. data/app/assets/images/glyphish/white/118-coat-hanger@2x.png +0 -0
  673. data/app/assets/images/glyphish/white/119-piggy-bank.png +0 -0
  674. data/app/assets/images/glyphish/white/119-piggy-bank@2x.png +0 -0
  675. data/app/assets/images/glyphish/white/12-eye.png +0 -0
  676. data/app/assets/images/glyphish/white/12-eye@2x.png +0 -0
  677. data/app/assets/images/glyphish/white/120-headphones.png +0 -0
  678. data/app/assets/images/glyphish/white/120-headphones@2x.png +0 -0
  679. data/app/assets/images/glyphish/white/121-landscape.png +0 -0
  680. data/app/assets/images/glyphish/white/121-landscape@2x.png +0 -0
  681. data/app/assets/images/glyphish/white/122-stats.png +0 -0
  682. data/app/assets/images/glyphish/white/122-stats@2x.png +0 -0
  683. data/app/assets/images/glyphish/white/123-id-card.png +0 -0
  684. data/app/assets/images/glyphish/white/123-id-card@2x.png +0 -0
  685. data/app/assets/images/glyphish/white/124-bullhorn.png +0 -0
  686. data/app/assets/images/glyphish/white/124-bullhorn@2x.png +0 -0
  687. data/app/assets/images/glyphish/white/125-food.png +0 -0
  688. data/app/assets/images/glyphish/white/125-food@2x.png +0 -0
  689. data/app/assets/images/glyphish/white/126-moon.png +0 -0
  690. data/app/assets/images/glyphish/white/126-moon@2x.png +0 -0
  691. data/app/assets/images/glyphish/white/127-sock.png +0 -0
  692. data/app/assets/images/glyphish/white/127-sock@2x.png +0 -0
  693. data/app/assets/images/glyphish/white/128-bone.png +0 -0
  694. data/app/assets/images/glyphish/white/128-bone@2x.png +0 -0
  695. data/app/assets/images/glyphish/white/129-golf.png +0 -0
  696. data/app/assets/images/glyphish/white/129-golf@2x.png +0 -0
  697. data/app/assets/images/glyphish/white/13-target.png +0 -0
  698. data/app/assets/images/glyphish/white/13-target@2x.png +0 -0
  699. data/app/assets/images/glyphish/white/130-dice.png +0 -0
  700. data/app/assets/images/glyphish/white/130-dice@2x.png +0 -0
  701. data/app/assets/images/glyphish/white/131-tower.png +0 -0
  702. data/app/assets/images/glyphish/white/131-tower@2x.png +0 -0
  703. data/app/assets/images/glyphish/white/132-ghost.png +0 -0
  704. data/app/assets/images/glyphish/white/132-ghost@2x.png +0 -0
  705. data/app/assets/images/glyphish/white/133-ufo.png +0 -0
  706. data/app/assets/images/glyphish/white/133-ufo@2x.png +0 -0
  707. data/app/assets/images/glyphish/white/134-viking.png +0 -0
  708. data/app/assets/images/glyphish/white/134-viking@2x.png +0 -0
  709. data/app/assets/images/glyphish/white/135-hockeymask.png +0 -0
  710. data/app/assets/images/glyphish/white/135-hockeymask@2x.png +0 -0
  711. data/app/assets/images/glyphish/white/136-tractor.png +0 -0
  712. data/app/assets/images/glyphish/white/136-tractor@2x.png +0 -0
  713. data/app/assets/images/glyphish/white/137-presentation.png +0 -0
  714. data/app/assets/images/glyphish/white/137-presentation@2x.png +0 -0
  715. data/app/assets/images/glyphish/white/138-scales.png +0 -0
  716. data/app/assets/images/glyphish/white/138-scales@2x.png +0 -0
  717. data/app/assets/images/glyphish/white/139-flags.png +0 -0
  718. data/app/assets/images/glyphish/white/139-flags@2x.png +0 -0
  719. data/app/assets/images/glyphish/white/14-tag.png +0 -0
  720. data/app/assets/images/glyphish/white/14-tag@2x.png +0 -0
  721. data/app/assets/images/glyphish/white/140-gradhat.png +0 -0
  722. data/app/assets/images/glyphish/white/140-gradhat@2x.png +0 -0
  723. data/app/assets/images/glyphish/white/141-lamp.png +0 -0
  724. data/app/assets/images/glyphish/white/141-lamp@2x.png +0 -0
  725. data/app/assets/images/glyphish/white/142-wine-bottle.png +0 -0
  726. data/app/assets/images/glyphish/white/142-wine-bottle@2x.png +0 -0
  727. data/app/assets/images/glyphish/white/143-liquor-bottle.png +0 -0
  728. data/app/assets/images/glyphish/white/143-liquor-bottle@2x.png +0 -0
  729. data/app/assets/images/glyphish/white/144-martini.png +0 -0
  730. data/app/assets/images/glyphish/white/144-martini@2x.png +0 -0
  731. data/app/assets/images/glyphish/white/145-persondot.png +0 -0
  732. data/app/assets/images/glyphish/white/145-persondot@2x.png +0 -0
  733. data/app/assets/images/glyphish/white/146-gavel.png +0 -0
  734. data/app/assets/images/glyphish/white/146-gavel@2x.png +0 -0
  735. data/app/assets/images/glyphish/white/147-popsicle.png +0 -0
  736. data/app/assets/images/glyphish/white/147-popsicle@2x.png +0 -0
  737. data/app/assets/images/glyphish/white/148-doghouse.png +0 -0
  738. data/app/assets/images/glyphish/white/148-doghouse@2x.png +0 -0
  739. data/app/assets/images/glyphish/white/149-windmill.png +0 -0
  740. data/app/assets/images/glyphish/white/149-windmill@2x.png +0 -0
  741. data/app/assets/images/glyphish/white/15-tags.png +0 -0
  742. data/app/assets/images/glyphish/white/15-tags@2x.png +0 -0
  743. data/app/assets/images/glyphish/white/150-sailboat.png +0 -0
  744. data/app/assets/images/glyphish/white/150-sailboat@2x.png +0 -0
  745. data/app/assets/images/glyphish/white/151-telescope.png +0 -0
  746. data/app/assets/images/glyphish/white/151-telescope@2x.png +0 -0
  747. data/app/assets/images/glyphish/white/152-rolodex.png +0 -0
  748. data/app/assets/images/glyphish/white/152-rolodex@2x.png +0 -0
  749. data/app/assets/images/glyphish/white/153-guitar.png +0 -0
  750. data/app/assets/images/glyphish/white/153-guitar@2x.png +0 -0
  751. data/app/assets/images/glyphish/white/154-necktie.png +0 -0
  752. data/app/assets/images/glyphish/white/154-necktie@2x.png +0 -0
  753. data/app/assets/images/glyphish/white/155-bowtie.png +0 -0
  754. data/app/assets/images/glyphish/white/155-bowtie@2x.png +0 -0
  755. data/app/assets/images/glyphish/white/156-controller.png +0 -0
  756. data/app/assets/images/glyphish/white/156-controller@2x.png +0 -0
  757. data/app/assets/images/glyphish/white/157-wrench.png +0 -0
  758. data/app/assets/images/glyphish/white/157-wrench@2x.png +0 -0
  759. data/app/assets/images/glyphish/white/158-wrench-2.png +0 -0
  760. data/app/assets/images/glyphish/white/158-wrench-2@2x.png +0 -0
  761. data/app/assets/images/glyphish/white/159-voicemail.png +0 -0
  762. data/app/assets/images/glyphish/white/159-voicemail@2x.png +0 -0
  763. data/app/assets/images/glyphish/white/16-line-chart.png +0 -0
  764. data/app/assets/images/glyphish/white/16-line-chart@2x.png +0 -0
  765. data/app/assets/images/glyphish/white/160-voicemail-2.png +0 -0
  766. data/app/assets/images/glyphish/white/160-voicemail-2@2x.png +0 -0
  767. data/app/assets/images/glyphish/white/161-calculator.png +0 -0
  768. data/app/assets/images/glyphish/white/161-calculator@2x.png +0 -0
  769. data/app/assets/images/glyphish/white/162-receipt.png +0 -0
  770. data/app/assets/images/glyphish/white/162-receipt@2x.png +0 -0
  771. data/app/assets/images/glyphish/white/163-glasses-1.png +0 -0
  772. data/app/assets/images/glyphish/white/163-glasses-1@2x.png +0 -0
  773. data/app/assets/images/glyphish/white/164-glasses-2.png +0 -0
  774. data/app/assets/images/glyphish/white/164-glasses-2@2x.png +0 -0
  775. data/app/assets/images/glyphish/white/165-glasses-3.png +0 -0
  776. data/app/assets/images/glyphish/white/165-glasses-3@2x.png +0 -0
  777. data/app/assets/images/glyphish/white/166-newspaper.png +0 -0
  778. data/app/assets/images/glyphish/white/166-newspaper@2x.png +0 -0
  779. data/app/assets/images/glyphish/white/167-upload-photo.png +0 -0
  780. data/app/assets/images/glyphish/white/167-upload-photo@2x.png +0 -0
  781. data/app/assets/images/glyphish/white/168-upload-photo-2.png +0 -0
  782. data/app/assets/images/glyphish/white/168-upload-photo-2@2x.png +0 -0
  783. data/app/assets/images/glyphish/white/169-8ball.png +0 -0
  784. data/app/assets/images/glyphish/white/169-8ball@2x.png +0 -0
  785. data/app/assets/images/glyphish/white/17-bar-chart.png +0 -0
  786. data/app/assets/images/glyphish/white/17-bar-chart@2x.png +0 -0
  787. data/app/assets/images/glyphish/white/170-butterfly.png +0 -0
  788. data/app/assets/images/glyphish/white/170-butterfly@2x.png +0 -0
  789. data/app/assets/images/glyphish/white/171-sun.png +0 -0
  790. data/app/assets/images/glyphish/white/171-sun@2x.png +0 -0
  791. data/app/assets/images/glyphish/white/172-pricetag.png +0 -0
  792. data/app/assets/images/glyphish/white/172-pricetag@2x.png +0 -0
  793. data/app/assets/images/glyphish/white/173-eyedropper.png +0 -0
  794. data/app/assets/images/glyphish/white/173-eyedropper@2x.png +0 -0
  795. data/app/assets/images/glyphish/white/174-imac.png +0 -0
  796. data/app/assets/images/glyphish/white/174-imac@2x.png +0 -0
  797. data/app/assets/images/glyphish/white/175-macbook.png +0 -0
  798. data/app/assets/images/glyphish/white/175-macbook@2x.png +0 -0
  799. data/app/assets/images/glyphish/white/176-ipad.png +0 -0
  800. data/app/assets/images/glyphish/white/176-ipad@2x.png +0 -0
  801. data/app/assets/images/glyphish/white/177-building.png +0 -0
  802. data/app/assets/images/glyphish/white/177-building@2x.png +0 -0
  803. data/app/assets/images/glyphish/white/178-city.png +0 -0
  804. data/app/assets/images/glyphish/white/178-city@2x.png +0 -0
  805. data/app/assets/images/glyphish/white/179-notepad.png +0 -0
  806. data/app/assets/images/glyphish/white/179-notepad@2x.png +0 -0
  807. data/app/assets/images/glyphish/white/18-envelope.png +0 -0
  808. data/app/assets/images/glyphish/white/18-envelope@2x.png +0 -0
  809. data/app/assets/images/glyphish/white/180-stickynote.png +0 -0
  810. data/app/assets/images/glyphish/white/180-stickynote@2x.png +0 -0
  811. data/app/assets/images/glyphish/white/181-hammer.png +0 -0
  812. data/app/assets/images/glyphish/white/181-hammer@2x.png +0 -0
  813. data/app/assets/images/glyphish/white/182-messenger-bag.png +0 -0
  814. data/app/assets/images/glyphish/white/182-messenger-bag@2x.png +0 -0
  815. data/app/assets/images/glyphish/white/183-genie-lamp.png +0 -0
  816. data/app/assets/images/glyphish/white/183-genie-lamp@2x.png +0 -0
  817. data/app/assets/images/glyphish/white/184-warning.png +0 -0
  818. data/app/assets/images/glyphish/white/184-warning@2x.png +0 -0
  819. data/app/assets/images/glyphish/white/185-printer.png +0 -0
  820. data/app/assets/images/glyphish/white/185-printer@2x.png +0 -0
  821. data/app/assets/images/glyphish/white/186-ruler.png +0 -0
  822. data/app/assets/images/glyphish/white/186-ruler@2x.png +0 -0
  823. data/app/assets/images/glyphish/white/187-pencil.png +0 -0
  824. data/app/assets/images/glyphish/white/187-pencil@2x.png +0 -0
  825. data/app/assets/images/glyphish/white/188-paint-roller.png +0 -0
  826. data/app/assets/images/glyphish/white/188-paint-roller@2x.png +0 -0
  827. data/app/assets/images/glyphish/white/189-plant.png +0 -0
  828. data/app/assets/images/glyphish/white/189-plant@2x.png +0 -0
  829. data/app/assets/images/glyphish/white/19-gear.png +0 -0
  830. data/app/assets/images/glyphish/white/19-gear@2x.png +0 -0
  831. data/app/assets/images/glyphish/white/190-bank.png +0 -0
  832. data/app/assets/images/glyphish/white/190-bank@2x.png +0 -0
  833. data/app/assets/images/glyphish/white/191-collection.png +0 -0
  834. data/app/assets/images/glyphish/white/191-collection@2x.png +0 -0
  835. data/app/assets/images/glyphish/white/192-credit-card.png +0 -0
  836. data/app/assets/images/glyphish/white/192-credit-card@2x.png +0 -0
  837. data/app/assets/images/glyphish/white/193-location-arrow.png +0 -0
  838. data/app/assets/images/glyphish/white/193-location-arrow@2x.png +0 -0
  839. data/app/assets/images/glyphish/white/194-note-2.png +0 -0
  840. data/app/assets/images/glyphish/white/194-note-2@2x.png +0 -0
  841. data/app/assets/images/glyphish/white/195-barcode.png +0 -0
  842. data/app/assets/images/glyphish/white/195-barcode@2x.png +0 -0
  843. data/app/assets/images/glyphish/white/196-radiation.png +0 -0
  844. data/app/assets/images/glyphish/white/196-radiation@2x.png +0 -0
  845. data/app/assets/images/glyphish/white/197-card-diamonds.png +0 -0
  846. data/app/assets/images/glyphish/white/197-card-diamonds@2x.png +0 -0
  847. data/app/assets/images/glyphish/white/198-card-spades.png +0 -0
  848. data/app/assets/images/glyphish/white/198-card-spades@2x.png +0 -0
  849. data/app/assets/images/glyphish/white/199-card-hearts.png +0 -0
  850. data/app/assets/images/glyphish/white/199-card-hearts@2x.png +0 -0
  851. data/app/assets/images/glyphish/white/20-gear-2.png +0 -0
  852. data/app/assets/images/glyphish/white/20-gear-2@2x.png +0 -0
  853. data/app/assets/images/glyphish/white/200-card-clubs.png +0 -0
  854. data/app/assets/images/glyphish/white/200-card-clubs@2x.png +0 -0
  855. data/app/assets/images/glyphish/white/201-vampire.png +0 -0
  856. data/app/assets/images/glyphish/white/201-vampire@2x.png +0 -0
  857. data/app/assets/images/glyphish/white/202-alien.png +0 -0
  858. data/app/assets/images/glyphish/white/202-alien@2x.png +0 -0
  859. data/app/assets/images/glyphish/white/203-spiderweb.png +0 -0
  860. data/app/assets/images/glyphish/white/203-spiderweb@2x.png +0 -0
  861. data/app/assets/images/glyphish/white/204-wallet.png +0 -0
  862. data/app/assets/images/glyphish/white/204-wallet@2x.png +0 -0
  863. data/app/assets/images/glyphish/white/205-factory.png +0 -0
  864. data/app/assets/images/glyphish/white/205-factory@2x.png +0 -0
  865. data/app/assets/images/glyphish/white/206-evernote.png +0 -0
  866. data/app/assets/images/glyphish/white/206-evernote@2x.png +0 -0
  867. data/app/assets/images/glyphish/white/207-dropbox.png +0 -0
  868. data/app/assets/images/glyphish/white/207-dropbox@2x.png +0 -0
  869. data/app/assets/images/glyphish/white/208-facebook.png +0 -0
  870. data/app/assets/images/glyphish/white/208-facebook@2x.png +0 -0
  871. data/app/assets/images/glyphish/white/209-twitter.png +0 -0
  872. data/app/assets/images/glyphish/white/209-twitter@2x.png +0 -0
  873. data/app/assets/images/glyphish/white/21-skull.png +0 -0
  874. data/app/assets/images/glyphish/white/21-skull@2x.png +0 -0
  875. data/app/assets/images/glyphish/white/210-twitterbird.png +0 -0
  876. data/app/assets/images/glyphish/white/210-twitterbird@2x.png +0 -0
  877. data/app/assets/images/glyphish/white/211-action.png +0 -0
  878. data/app/assets/images/glyphish/white/211-action@2x.png +0 -0
  879. data/app/assets/images/glyphish/white/212-action2.png +0 -0
  880. data/app/assets/images/glyphish/white/212-action2@2x.png +0 -0
  881. data/app/assets/images/glyphish/white/213-reply.png +0 -0
  882. data/app/assets/images/glyphish/white/213-reply@2x.png +0 -0
  883. data/app/assets/images/glyphish/white/214-replyall.png +0 -0
  884. data/app/assets/images/glyphish/white/214-replyall@2x.png +0 -0
  885. data/app/assets/images/glyphish/white/215-subscription.png +0 -0
  886. data/app/assets/images/glyphish/white/215-subscription@2x.png +0 -0
  887. data/app/assets/images/glyphish/white/216-compose.png +0 -0
  888. data/app/assets/images/glyphish/white/216-compose@2x.png +0 -0
  889. data/app/assets/images/glyphish/white/217-trash.png +0 -0
  890. data/app/assets/images/glyphish/white/217-trash@2x.png +0 -0
  891. data/app/assets/images/glyphish/white/218-trash2.png +0 -0
  892. data/app/assets/images/glyphish/white/218-trash2@2x.png +0 -0
  893. data/app/assets/images/glyphish/white/219-scissors.png +0 -0
  894. data/app/assets/images/glyphish/white/219-scissors@2x.png +0 -0
  895. data/app/assets/images/glyphish/white/22-skull-n-bones.png +0 -0
  896. data/app/assets/images/glyphish/white/22-skull-n-bones@2x.png +0 -0
  897. data/app/assets/images/glyphish/white/220-coupon.png +0 -0
  898. data/app/assets/images/glyphish/white/220-coupon@2x.png +0 -0
  899. data/app/assets/images/glyphish/white/221-recordplayer.png +0 -0
  900. data/app/assets/images/glyphish/white/221-recordplayer@2x.png +0 -0
  901. data/app/assets/images/glyphish/white/222-bacon.png +0 -0
  902. data/app/assets/images/glyphish/white/222-bacon@2x.png +0 -0
  903. data/app/assets/images/glyphish/white/223-magnet.png +0 -0
  904. data/app/assets/images/glyphish/white/223-magnet@2x.png +0 -0
  905. data/app/assets/images/glyphish/white/224-flower.png +0 -0
  906. data/app/assets/images/glyphish/white/224-flower@2x.png +0 -0
  907. data/app/assets/images/glyphish/white/225-plant.png +0 -0
  908. data/app/assets/images/glyphish/white/225-plant@2x.png +0 -0
  909. data/app/assets/images/glyphish/white/226-egg.png +0 -0
  910. data/app/assets/images/glyphish/white/226-egg@2x.png +0 -0
  911. data/app/assets/images/glyphish/white/227-psp.png +0 -0
  912. data/app/assets/images/glyphish/white/227-psp@2x.png +0 -0
  913. data/app/assets/images/glyphish/white/228-nescontroller.png +0 -0
  914. data/app/assets/images/glyphish/white/228-nescontroller@2x.png +0 -0
  915. data/app/assets/images/glyphish/white/229-gba.png +0 -0
  916. data/app/assets/images/glyphish/white/229-gba@2x.png +0 -0
  917. data/app/assets/images/glyphish/white/23-bird.png +0 -0
  918. data/app/assets/images/glyphish/white/23-bird@2x.png +0 -0
  919. data/app/assets/images/glyphish/white/230-wiimote.png +0 -0
  920. data/app/assets/images/glyphish/white/230-wiimote@2x.png +0 -0
  921. data/app/assets/images/glyphish/white/231-birdhouse.png +0 -0
  922. data/app/assets/images/glyphish/white/231-birdhouse@2x.png +0 -0
  923. data/app/assets/images/glyphish/white/232-whale.png +0 -0
  924. data/app/assets/images/glyphish/white/232-whale@2x.png +0 -0
  925. data/app/assets/images/glyphish/white/233-fish.png +0 -0
  926. data/app/assets/images/glyphish/white/233-fish@2x.png +0 -0
  927. data/app/assets/images/glyphish/white/234-cloud.png +0 -0
  928. data/app/assets/images/glyphish/white/234-cloud@2x.png +0 -0
  929. data/app/assets/images/glyphish/white/235-purse.png +0 -0
  930. data/app/assets/images/glyphish/white/235-purse@2x.png +0 -0
  931. data/app/assets/images/glyphish/white/236-shoppingbag.png +0 -0
  932. data/app/assets/images/glyphish/white/236-shoppingbag@2x.png +0 -0
  933. data/app/assets/images/glyphish/white/237-key.png +0 -0
  934. data/app/assets/images/glyphish/white/237-key@2x.png +0 -0
  935. data/app/assets/images/glyphish/white/238-road.png +0 -0
  936. data/app/assets/images/glyphish/white/238-road@2x.png +0 -0
  937. data/app/assets/images/glyphish/white/239-screen.png +0 -0
  938. data/app/assets/images/glyphish/white/239-screen@2x.png +0 -0
  939. data/app/assets/images/glyphish/white/24-gift.png +0 -0
  940. data/app/assets/images/glyphish/white/24-gift@2x.png +0 -0
  941. data/app/assets/images/glyphish/white/240-sketchbook.png +0 -0
  942. data/app/assets/images/glyphish/white/240-sketchbook@2x.png +0 -0
  943. data/app/assets/images/glyphish/white/241-cleaver.png +0 -0
  944. data/app/assets/images/glyphish/white/241-cleaver@2x.png +0 -0
  945. data/app/assets/images/glyphish/white/242-ramen.png +0 -0
  946. data/app/assets/images/glyphish/white/242-ramen@2x.png +0 -0
  947. data/app/assets/images/glyphish/white/243-globe.png +0 -0
  948. data/app/assets/images/glyphish/white/243-globe@2x.png +0 -0
  949. data/app/assets/images/glyphish/white/244-rubberstamp.png +0 -0
  950. data/app/assets/images/glyphish/white/244-rubberstamp@2x.png +0 -0
  951. data/app/assets/images/glyphish/white/245-paperairplane.png +0 -0
  952. data/app/assets/images/glyphish/white/245-paperairplane@2x.png +0 -0
  953. data/app/assets/images/glyphish/white/246-route.png +0 -0
  954. data/app/assets/images/glyphish/white/246-route@2x.png +0 -0
  955. data/app/assets/images/glyphish/white/247-dancesteps.png +0 -0
  956. data/app/assets/images/glyphish/white/247-dancesteps@2x.png +0 -0
  957. data/app/assets/images/glyphish/white/248-sign.png +0 -0
  958. data/app/assets/images/glyphish/white/248-sign@2x.png +0 -0
  959. data/app/assets/images/glyphish/white/249-piechart.png +0 -0
  960. data/app/assets/images/glyphish/white/249-piechart@2x.png +0 -0
  961. data/app/assets/images/glyphish/white/25-weather.png +0 -0
  962. data/app/assets/images/glyphish/white/25-weather@2x.png +0 -0
  963. data/app/assets/images/glyphish/white/250-stats.png +0 -0
  964. data/app/assets/images/glyphish/white/250-stats@2x.png +0 -0
  965. data/app/assets/images/glyphish/white/251-sword.png +0 -0
  966. data/app/assets/images/glyphish/white/251-sword@2x.png +0 -0
  967. data/app/assets/images/glyphish/white/252-lure.png +0 -0
  968. data/app/assets/images/glyphish/white/252-lure@2x.png +0 -0
  969. data/app/assets/images/glyphish/white/253-person.png +0 -0
  970. data/app/assets/images/glyphish/white/253-person@2x.png +0 -0
  971. data/app/assets/images/glyphish/white/254-barrier.png +0 -0
  972. data/app/assets/images/glyphish/white/254-barrier@2x.png +0 -0
  973. data/app/assets/images/glyphish/white/255-box.png +0 -0
  974. data/app/assets/images/glyphish/white/255-box@2x.png +0 -0
  975. data/app/assets/images/glyphish/white/256-box2.png +0 -0
  976. data/app/assets/images/glyphish/white/256-box2@2x.png +0 -0
  977. data/app/assets/images/glyphish/white/257-box3.png +0 -0
  978. data/app/assets/images/glyphish/white/257-box3@2x.png +0 -0
  979. data/app/assets/images/glyphish/white/258-checkmark.png +0 -0
  980. data/app/assets/images/glyphish/white/258-checkmark@2x.png +0 -0
  981. data/app/assets/images/glyphish/white/259-list.png +0 -0
  982. data/app/assets/images/glyphish/white/259-list@2x.png +0 -0
  983. data/app/assets/images/glyphish/white/26-bandaid.png +0 -0
  984. data/app/assets/images/glyphish/white/26-bandaid@2x.png +0 -0
  985. data/app/assets/images/glyphish/white/260-count.png +0 -0
  986. data/app/assets/images/glyphish/white/260-count@2x.png +0 -0
  987. data/app/assets/images/glyphish/white/261-album-closed.png +0 -0
  988. data/app/assets/images/glyphish/white/261-album-closed@2x.png +0 -0
  989. data/app/assets/images/glyphish/white/262-album-open.png +0 -0
  990. data/app/assets/images/glyphish/white/262-album-open@2x.png +0 -0
  991. data/app/assets/images/glyphish/white/263-sound-off.png +0 -0
  992. data/app/assets/images/glyphish/white/263-sound-off@2x.png +0 -0
  993. data/app/assets/images/glyphish/white/264-sound-on.png +0 -0
  994. data/app/assets/images/glyphish/white/264-sound-on@2x.png +0 -0
  995. data/app/assets/images/glyphish/white/265-download.png +0 -0
  996. data/app/assets/images/glyphish/white/265-download@2x.png +0 -0
  997. data/app/assets/images/glyphish/white/266-upload.png +0 -0
  998. data/app/assets/images/glyphish/white/266-upload@2x.png +0 -0
  999. data/app/assets/images/glyphish/white/267-zoomin.png +0 -0
  1000. data/app/assets/images/glyphish/white/267-zoomin@2x.png +0 -0
  1001. data/app/assets/images/glyphish/white/268-zoomout.png +0 -0
  1002. data/app/assets/images/glyphish/white/268-zoomout@2x.png +0 -0
  1003. data/app/assets/images/glyphish/white/269-happyface.png +0 -0
  1004. data/app/assets/images/glyphish/white/269-happyface@2x.png +0 -0
  1005. data/app/assets/images/glyphish/white/27-planet.png +0 -0
  1006. data/app/assets/images/glyphish/white/27-planet@2x.png +0 -0
  1007. data/app/assets/images/glyphish/white/270-unhappyface.png +0 -0
  1008. data/app/assets/images/glyphish/white/270-unhappyface@2x.png +0 -0
  1009. data/app/assets/images/glyphish/white/271-dramamasks.png +0 -0
  1010. data/app/assets/images/glyphish/white/271-dramamasks@2x.png +0 -0
  1011. data/app/assets/images/glyphish/white/272-windows.png +0 -0
  1012. data/app/assets/images/glyphish/white/272-windows@2x.png +0 -0
  1013. data/app/assets/images/glyphish/white/273-grapes.png +0 -0
  1014. data/app/assets/images/glyphish/white/273-grapes@2x.png +0 -0
  1015. data/app/assets/images/glyphish/white/274-router.png +0 -0
  1016. data/app/assets/images/glyphish/white/274-router@2x.png +0 -0
  1017. data/app/assets/images/glyphish/white/275-broadcast.png +0 -0
  1018. data/app/assets/images/glyphish/white/275-broadcast@2x.png +0 -0
  1019. data/app/assets/images/glyphish/white/276-poison.png +0 -0
  1020. data/app/assets/images/glyphish/white/276-poison@2x.png +0 -0
  1021. data/app/assets/images/glyphish/white/277-lighting.png +0 -0
  1022. data/app/assets/images/glyphish/white/277-lighting@2x.png +0 -0
  1023. data/app/assets/images/glyphish/white/278-flipcam.png +0 -0
  1024. data/app/assets/images/glyphish/white/278-flipcam@2x.png +0 -0
  1025. data/app/assets/images/glyphish/white/279-videocamera.png +0 -0
  1026. data/app/assets/images/glyphish/white/279-videocamera@2x.png +0 -0
  1027. data/app/assets/images/glyphish/white/28-star.png +0 -0
  1028. data/app/assets/images/glyphish/white/28-star@2x.png +0 -0
  1029. data/app/assets/images/glyphish/white/280-clapboard.png +0 -0
  1030. data/app/assets/images/glyphish/white/280-clapboard@2x.png +0 -0
  1031. data/app/assets/images/glyphish/white/281-crown.png +0 -0
  1032. data/app/assets/images/glyphish/white/281-crown@2x.png +0 -0
  1033. data/app/assets/images/glyphish/white/282-cards.png +0 -0
  1034. data/app/assets/images/glyphish/white/282-cards@2x.png +0 -0
  1035. data/app/assets/images/glyphish/white/283-bomb.png +0 -0
  1036. data/app/assets/images/glyphish/white/283-bomb@2x.png +0 -0
  1037. data/app/assets/images/glyphish/white/284-bell.png +0 -0
  1038. data/app/assets/images/glyphish/white/284-bell@2x.png +0 -0
  1039. data/app/assets/images/glyphish/white/285-facetime.png +0 -0
  1040. data/app/assets/images/glyphish/white/285-facetime@2x.png +0 -0
  1041. data/app/assets/images/glyphish/white/286-speechbubble.png +0 -0
  1042. data/app/assets/images/glyphish/white/286-speechbubble@2x.png +0 -0
  1043. data/app/assets/images/glyphish/white/287-at.png +0 -0
  1044. data/app/assets/images/glyphish/white/287-at@2x.png +0 -0
  1045. data/app/assets/images/glyphish/white/288-retweet.png +0 -0
  1046. data/app/assets/images/glyphish/white/288-retweet@2x.png +0 -0
  1047. data/app/assets/images/glyphish/white/289-rocket.png +0 -0
  1048. data/app/assets/images/glyphish/white/289-rocket@2x.png +0 -0
  1049. data/app/assets/images/glyphish/white/29-heart.png +0 -0
  1050. data/app/assets/images/glyphish/white/29-heart@2x.png +0 -0
  1051. data/app/assets/images/glyphish/white/290-bomb2.png +0 -0
  1052. data/app/assets/images/glyphish/white/290-bomb2@2x.png +0 -0
  1053. data/app/assets/images/glyphish/white/291-idcard.png +0 -0
  1054. data/app/assets/images/glyphish/white/291-idcard@2x.png +0 -0
  1055. data/app/assets/images/glyphish/white/292-crop.png +0 -0
  1056. data/app/assets/images/glyphish/white/292-crop@2x.png +0 -0
  1057. data/app/assets/images/glyphish/white/293-database.png +0 -0
  1058. data/app/assets/images/glyphish/white/293-database@2x.png +0 -0
  1059. data/app/assets/images/glyphish/white/294-macroflower.png +0 -0
  1060. data/app/assets/images/glyphish/white/294-macroflower@2x.png +0 -0
  1061. data/app/assets/images/glyphish/white/295-shield.png +0 -0
  1062. data/app/assets/images/glyphish/white/295-shield@2x.png +0 -0
  1063. data/app/assets/images/glyphish/white/296-pizza.png +0 -0
  1064. data/app/assets/images/glyphish/white/296-pizza@2x.png +0 -0
  1065. data/app/assets/images/glyphish/white/297-speaker.png +0 -0
  1066. data/app/assets/images/glyphish/white/297-speaker@2x.png +0 -0
  1067. data/app/assets/images/glyphish/white/298-circlex.png +0 -0
  1068. data/app/assets/images/glyphish/white/298-circlex@2x.png +0 -0
  1069. data/app/assets/images/glyphish/white/299-ticket.png +0 -0
  1070. data/app/assets/images/glyphish/white/299-ticket@2x.png +0 -0
  1071. data/app/assets/images/glyphish/white/30-key.png +0 -0
  1072. data/app/assets/images/glyphish/white/30-key@2x.png +0 -0
  1073. data/app/assets/images/glyphish/white/300-orgchart.png +0 -0
  1074. data/app/assets/images/glyphish/white/300-orgchart@2x.png +0 -0
  1075. data/app/assets/images/glyphish/white/31-ipod.png +0 -0
  1076. data/app/assets/images/glyphish/white/31-ipod@2x.png +0 -0
  1077. data/app/assets/images/glyphish/white/32-iphone.png +0 -0
  1078. data/app/assets/images/glyphish/white/32-iphone@2x.png +0 -0
  1079. data/app/assets/images/glyphish/white/33-cabinet.png +0 -0
  1080. data/app/assets/images/glyphish/white/33-cabinet@2x.png +0 -0
  1081. data/app/assets/images/glyphish/white/34-coffee.png +0 -0
  1082. data/app/assets/images/glyphish/white/34-coffee@2x.png +0 -0
  1083. data/app/assets/images/glyphish/white/35-shopping.png +0 -0
  1084. data/app/assets/images/glyphish/white/35-shopping@2x.png +0 -0
  1085. data/app/assets/images/glyphish/white/36-toolbox.png +0 -0
  1086. data/app/assets/images/glyphish/white/36-toolbox@2x.png +0 -0
  1087. data/app/assets/images/glyphish/white/37-suitcase.png +0 -0
  1088. data/app/assets/images/glyphish/white/37-suitcase@2x.png +0 -0
  1089. data/app/assets/images/glyphish/white/38-airplane.png +0 -0
  1090. data/app/assets/images/glyphish/white/38-airplane@2x.png +0 -0
  1091. data/app/assets/images/glyphish/white/39-spraycan.png +0 -0
  1092. data/app/assets/images/glyphish/white/39-spraycan@2x.png +0 -0
  1093. data/app/assets/images/glyphish/white/40-inbox.png +0 -0
  1094. data/app/assets/images/glyphish/white/40-inbox@2x.png +0 -0
  1095. data/app/assets/images/glyphish/white/41-picture-frame.png +0 -0
  1096. data/app/assets/images/glyphish/white/41-picture-frame@2x.png +0 -0
  1097. data/app/assets/images/glyphish/white/42-photos.png +0 -0
  1098. data/app/assets/images/glyphish/white/42-photos@2x.png +0 -0
  1099. data/app/assets/images/glyphish/white/43-film-roll.png +0 -0
  1100. data/app/assets/images/glyphish/white/43-film-roll@2x.png +0 -0
  1101. data/app/assets/images/glyphish/white/44-shoebox.png +0 -0
  1102. data/app/assets/images/glyphish/white/44-shoebox@2x.png +0 -0
  1103. data/app/assets/images/glyphish/white/45-movie-1.png +0 -0
  1104. data/app/assets/images/glyphish/white/45-movie-1@2x.png +0 -0
  1105. data/app/assets/images/glyphish/white/46-movie-2.png +0 -0
  1106. data/app/assets/images/glyphish/white/46-movie-2@2x.png +0 -0
  1107. data/app/assets/images/glyphish/white/47-fuel.png +0 -0
  1108. data/app/assets/images/glyphish/white/47-fuel@2x.png +0 -0
  1109. data/app/assets/images/glyphish/white/48-fork-and-knife.png +0 -0
  1110. data/app/assets/images/glyphish/white/48-fork-and-knife@2x.png +0 -0
  1111. data/app/assets/images/glyphish/white/49-battery.png +0 -0
  1112. data/app/assets/images/glyphish/white/49-battery@2x.png +0 -0
  1113. data/app/assets/images/glyphish/white/50-beaker.png +0 -0
  1114. data/app/assets/images/glyphish/white/50-beaker@2x.png +0 -0
  1115. data/app/assets/images/glyphish/white/51-outlet.png +0 -0
  1116. data/app/assets/images/glyphish/white/51-outlet@2x.png +0 -0
  1117. data/app/assets/images/glyphish/white/52-pine-tree.png +0 -0
  1118. data/app/assets/images/glyphish/white/52-pine-tree@2x.png +0 -0
  1119. data/app/assets/images/glyphish/white/53-house.png +0 -0
  1120. data/app/assets/images/glyphish/white/53-house@2x.png +0 -0
  1121. data/app/assets/images/glyphish/white/54-lock.png +0 -0
  1122. data/app/assets/images/glyphish/white/54-lock@2x.png +0 -0
  1123. data/app/assets/images/glyphish/white/55-network.png +0 -0
  1124. data/app/assets/images/glyphish/white/55-network@2x.png +0 -0
  1125. data/app/assets/images/glyphish/white/56-cloud.png +0 -0
  1126. data/app/assets/images/glyphish/white/56-cloud@2x.png +0 -0
  1127. data/app/assets/images/glyphish/white/57-download.png +0 -0
  1128. data/app/assets/images/glyphish/white/57-download@2x.png +0 -0
  1129. data/app/assets/images/glyphish/white/58-bookmark.png +0 -0
  1130. data/app/assets/images/glyphish/white/58-bookmark@2x.png +0 -0
  1131. data/app/assets/images/glyphish/white/59-flag.png +0 -0
  1132. data/app/assets/images/glyphish/white/59-flag@2x.png +0 -0
  1133. data/app/assets/images/glyphish/white/60-signpost.png +0 -0
  1134. data/app/assets/images/glyphish/white/60-signpost@2x.png +0 -0
  1135. data/app/assets/images/glyphish/white/61-brightness.png +0 -0
  1136. data/app/assets/images/glyphish/white/61-brightness@2x.png +0 -0
  1137. data/app/assets/images/glyphish/white/62-contrast.png +0 -0
  1138. data/app/assets/images/glyphish/white/62-contrast@2x.png +0 -0
  1139. data/app/assets/images/glyphish/white/63-runner.png +0 -0
  1140. data/app/assets/images/glyphish/white/63-runner@2x.png +0 -0
  1141. data/app/assets/images/glyphish/white/64-zap.png +0 -0
  1142. data/app/assets/images/glyphish/white/64-zap@2x.png +0 -0
  1143. data/app/assets/images/glyphish/white/65-note.png +0 -0
  1144. data/app/assets/images/glyphish/white/65-note@2x.png +0 -0
  1145. data/app/assets/images/glyphish/white/66-microphone.png +0 -0
  1146. data/app/assets/images/glyphish/white/66-microphone@2x.png +0 -0
  1147. data/app/assets/images/glyphish/white/67-tshirt.png +0 -0
  1148. data/app/assets/images/glyphish/white/67-tshirt@2x.png +0 -0
  1149. data/app/assets/images/glyphish/white/68-paperclip.png +0 -0
  1150. data/app/assets/images/glyphish/white/68-paperclip@2x.png +0 -0
  1151. data/app/assets/images/glyphish/white/69-display.png +0 -0
  1152. data/app/assets/images/glyphish/white/69-display@2x.png +0 -0
  1153. data/app/assets/images/glyphish/white/70-tv.png +0 -0
  1154. data/app/assets/images/glyphish/white/70-tv@2x.png +0 -0
  1155. data/app/assets/images/glyphish/white/71-compass.png +0 -0
  1156. data/app/assets/images/glyphish/white/71-compass@2x.png +0 -0
  1157. data/app/assets/images/glyphish/white/72-pin.png +0 -0
  1158. data/app/assets/images/glyphish/white/72-pin@2x.png +0 -0
  1159. data/app/assets/images/glyphish/white/73-radar.png +0 -0
  1160. data/app/assets/images/glyphish/white/73-radar@2x.png +0 -0
  1161. data/app/assets/images/glyphish/white/74-location.png +0 -0
  1162. data/app/assets/images/glyphish/white/74-location@2x.png +0 -0
  1163. data/app/assets/images/glyphish/white/75-phone.png +0 -0
  1164. data/app/assets/images/glyphish/white/75-phone@2x.png +0 -0
  1165. data/app/assets/images/glyphish/white/76-baby.png +0 -0
  1166. data/app/assets/images/glyphish/white/76-baby@2x.png +0 -0
  1167. data/app/assets/images/glyphish/white/77-ekg.png +0 -0
  1168. data/app/assets/images/glyphish/white/77-ekg@2x.png +0 -0
  1169. data/app/assets/images/glyphish/white/78-stopwatch.png +0 -0
  1170. data/app/assets/images/glyphish/white/78-stopwatch@2x.png +0 -0
  1171. data/app/assets/images/glyphish/white/79-medical-bag.png +0 -0
  1172. data/app/assets/images/glyphish/white/79-medical-bag@2x.png +0 -0
  1173. data/app/assets/images/glyphish/white/80-shopping-cart.png +0 -0
  1174. data/app/assets/images/glyphish/white/80-shopping-cart@2x.png +0 -0
  1175. data/app/assets/images/glyphish/white/81-dashboard.png +0 -0
  1176. data/app/assets/images/glyphish/white/81-dashboard@2x.png +0 -0
  1177. data/app/assets/images/glyphish/white/82-dog-paw.png +0 -0
  1178. data/app/assets/images/glyphish/white/82-dog-paw@2x.png +0 -0
  1179. data/app/assets/images/glyphish/white/83-calendar.png +0 -0
  1180. data/app/assets/images/glyphish/white/83-calendar@2x.png +0 -0
  1181. data/app/assets/images/glyphish/white/84-lightbulb.png +0 -0
  1182. data/app/assets/images/glyphish/white/84-lightbulb@2x.png +0 -0
  1183. data/app/assets/images/glyphish/white/85-trophy.png +0 -0
  1184. data/app/assets/images/glyphish/white/85-trophy@2x.png +0 -0
  1185. data/app/assets/images/glyphish/white/86-camera.png +0 -0
  1186. data/app/assets/images/glyphish/white/86-camera@2x.png +0 -0
  1187. data/app/assets/images/glyphish/white/87-wine-glass.png +0 -0
  1188. data/app/assets/images/glyphish/white/87-wine-glass@2x.png +0 -0
  1189. data/app/assets/images/glyphish/white/88-beer-glass.png +0 -0
  1190. data/app/assets/images/glyphish/white/88-beer-glass@2x.png +0 -0
  1191. data/app/assets/images/glyphish/white/89-dumbells.png +0 -0
  1192. data/app/assets/images/glyphish/white/89-dumbells@2x.png +0 -0
  1193. data/app/assets/images/glyphish/white/90-lifebuoy.png +0 -0
  1194. data/app/assets/images/glyphish/white/90-lifebuoy@2x.png +0 -0
  1195. data/app/assets/images/glyphish/white/91-beaker-2.png +0 -0
  1196. data/app/assets/images/glyphish/white/91-beaker-2@2x.png +0 -0
  1197. data/app/assets/images/glyphish/white/92-test-tube.png +0 -0
  1198. data/app/assets/images/glyphish/white/92-test-tube@2x.png +0 -0
  1199. data/app/assets/images/glyphish/white/93-thermometer.png +0 -0
  1200. data/app/assets/images/glyphish/white/93-thermometer@2x.png +0 -0
  1201. data/app/assets/images/glyphish/white/94-pill.png +0 -0
  1202. data/app/assets/images/glyphish/white/94-pill@2x.png +0 -0
  1203. data/app/assets/images/glyphish/white/95-equalizer.png +0 -0
  1204. data/app/assets/images/glyphish/white/95-equalizer@2x.png +0 -0
  1205. data/app/assets/images/glyphish/white/96-book.png +0 -0
  1206. data/app/assets/images/glyphish/white/96-book@2x.png +0 -0
  1207. data/app/assets/images/glyphish/white/97-puzzle-piece.png +0 -0
  1208. data/app/assets/images/glyphish/white/97-puzzle-piece@2x.png +0 -0
  1209. data/app/assets/images/glyphish/white/98-palette.png +0 -0
  1210. data/app/assets/images/glyphish/white/98-palette@2x.png +0 -0
  1211. data/app/assets/images/glyphish/white/99-umbrella.png +0 -0
  1212. data/app/assets/images/glyphish/white/99-umbrella@2x.png +0 -0
  1213. data/app/assets/images/storefront/cvv.gif +0 -0
  1214. data/app/assets/images/storefront/event-image-default.jpg +0 -0
  1215. data/app/assets/images/storefront/lock.png +0 -0
  1216. data/app/assets/images/ui-lightness/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  1217. data/app/assets/images/ui-lightness/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  1218. data/app/assets/images/ui-lightness/ui-bg_flat_10_000000_40x100.png +0 -0
  1219. data/app/assets/images/ui-lightness/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  1220. data/app/assets/images/ui-lightness/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  1221. data/app/assets/images/ui-lightness/ui-bg_glass_65_ffffff_1x400.png +0 -0
  1222. data/app/assets/images/ui-lightness/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  1223. data/app/assets/images/ui-lightness/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  1224. data/app/assets/images/ui-lightness/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  1225. data/app/assets/images/ui-lightness/ui-icons_222222_256x240.png +0 -0
  1226. data/app/assets/images/ui-lightness/ui-icons_228ef1_256x240.png +0 -0
  1227. data/app/assets/images/ui-lightness/ui-icons_ef8c08_256x240.png +0 -0
  1228. data/app/assets/images/ui-lightness/ui-icons_ffd27a_256x240.png +0 -0
  1229. data/app/assets/images/ui-lightness/ui-icons_ffffff_256x240.png +0 -0
  1230. data/app/assets/images/ui-smoothness/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  1231. data/app/assets/images/ui-smoothness/ui-bg_flat_75_ffffff_40x100.png +0 -0
  1232. data/app/assets/images/ui-smoothness/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  1233. data/app/assets/images/ui-smoothness/ui-bg_glass_65_ffffff_1x400.png +0 -0
  1234. data/app/assets/images/ui-smoothness/ui-bg_glass_75_dadada_1x400.png +0 -0
  1235. data/app/assets/images/ui-smoothness/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  1236. data/app/assets/images/ui-smoothness/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  1237. data/app/assets/images/ui-smoothness/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  1238. data/app/assets/images/ui-smoothness/ui-icons_222222_256x240.png +0 -0
  1239. data/app/assets/images/ui-smoothness/ui-icons_2e83ff_256x240.png +0 -0
  1240. data/app/assets/images/ui-smoothness/ui-icons_454545_256x240.png +0 -0
  1241. data/app/assets/images/ui-smoothness/ui-icons_888888_256x240.png +0 -0
  1242. data/app/assets/images/ui-smoothness/ui-icons_cd0a0a_256x240.png +0 -0
  1243. data/app/assets/javascripts/application.js +310 -0
  1244. data/app/assets/javascripts/bootstrap.js +1726 -0
  1245. data/app/assets/javascripts/box-office.js +240 -0
  1246. data/app/assets/javascripts/custom/grouped-form.js +95 -0
  1247. data/app/assets/javascripts/custom/imports.js +11 -0
  1248. data/app/assets/javascripts/custom/inline-people-search.js +83 -0
  1249. data/app/assets/javascripts/custom/people.js +129 -0
  1250. data/app/assets/javascripts/custom/prices.js +10 -0
  1251. data/app/assets/javascripts/custom/show.js +78 -0
  1252. data/app/assets/javascripts/custom/widget-generator.js +29 -0
  1253. data/app/assets/javascripts/jquery-lib/fullcalendar.min.js +113 -0
  1254. data/app/assets/javascripts/jquery-lib/index.js +1 -0
  1255. data/app/assets/javascripts/jquery-lib/jquery-ui-1.8.14.custom.min.js +570 -0
  1256. data/app/assets/javascripts/jquery-lib/jquery-ui-autocomplete-html.js +40 -0
  1257. data/app/assets/javascripts/jquery-lib/jquery-ui-timepicker-addon.js +1060 -0
  1258. data/app/assets/javascripts/jquery-lib/jquery.formatCurrency-1.4.0.min.js +25 -0
  1259. data/app/assets/javascripts/jquery-lib/jquery.gritter.min.js +29 -0
  1260. data/app/assets/javascripts/jquery-lib/jquery.jeditable.js +543 -0
  1261. data/app/assets/javascripts/jquery-lib/jquery.mask-money.js +324 -0
  1262. data/app/assets/javascripts/jquery.js +9266 -0
  1263. data/app/assets/javascripts/jquery_ujs.js +316 -0
  1264. data/app/assets/javascripts/store/index.js +4 -0
  1265. data/app/assets/javascripts/store/jquery.validate.additional-methods.js +300 -0
  1266. data/app/assets/javascripts/store/jquery.validate.js +1188 -0
  1267. data/app/assets/javascripts/store/sliding-wizard.js +218 -0
  1268. data/app/assets/javascripts/store/store.js +365 -0
  1269. data/app/assets/javascripts/storefront.js +7 -0
  1270. data/app/assets/stylesheets/application.sass +263 -0
  1271. data/app/assets/stylesheets/bootstrap-overrides.css +269 -0
  1272. data/app/assets/stylesheets/bootstrap.css +3993 -0
  1273. data/app/assets/stylesheets/jquery/fullcalendar.css +618 -0
  1274. data/app/assets/stylesheets/jquery/jquery-ui.css +568 -0
  1275. data/app/assets/stylesheets/jquery/jquery.gritter.css +88 -0
  1276. data/app/assets/stylesheets/jquery/jquery.visualize.css +31 -0
  1277. data/app/assets/stylesheets/printing.css +15 -0
  1278. data/app/assets/stylesheets/reset.css +48 -0
  1279. data/app/assets/stylesheets/sass/_colors.sass +49 -0
  1280. data/app/assets/stylesheets/sass/_flash.sass +30 -0
  1281. data/app/assets/stylesheets/sass/_mixins.sass +37 -0
  1282. data/app/assets/stylesheets/sass/_tags.sass +38 -0
  1283. data/app/assets/stylesheets/sass/box-office.sass +53 -0
  1284. data/app/assets/stylesheets/sass/cart.sass +152 -0
  1285. data/app/assets/stylesheets/sass/sliding-wizard.sass +5 -0
  1286. data/app/assets/stylesheets/sass/store.sass +296 -0
  1287. data/app/assets/stylesheets/sass/themes/default.sass +63 -0
  1288. data/app/assets/stylesheets/storefront.css +6 -0
  1289. data/app/controllers/actions_controller.rb +59 -0
  1290. data/app/controllers/addresses_controller.rb +31 -0
  1291. data/app/controllers/artfully_ose_controller.rb +42 -0
  1292. data/app/controllers/charts_controller.rb +9 -0
  1293. data/app/controllers/comps_controller.rb +47 -0
  1294. data/app/controllers/contributions_controller.rb +40 -0
  1295. data/app/controllers/events_controller.rb +149 -0
  1296. data/app/controllers/exchanges_controller.rb +48 -0
  1297. data/app/controllers/export_controller.rb +24 -0
  1298. data/app/controllers/imports_controller.rb +68 -0
  1299. data/app/controllers/index_controller.rb +20 -0
  1300. data/app/controllers/memberships_controller.rb +56 -0
  1301. data/app/controllers/merges_controller.rb +37 -0
  1302. data/app/controllers/notes_controller.rb +53 -0
  1303. data/app/controllers/orders_controller.rb +64 -0
  1304. data/app/controllers/organizations_controller.rb +66 -0
  1305. data/app/controllers/pages_controller.rb +29 -0
  1306. data/app/controllers/people_controller.rb +151 -0
  1307. data/app/controllers/phones_controller.rb +20 -0
  1308. data/app/controllers/refunds_controller.rb +36 -0
  1309. data/app/controllers/returns_controller.rb +18 -0
  1310. data/app/controllers/sales_controller.rb +129 -0
  1311. data/app/controllers/sections_controller.rb +44 -0
  1312. data/app/controllers/segments_controller.rb +30 -0
  1313. data/app/controllers/settlements_controller.rb +18 -0
  1314. data/app/controllers/shows_controller.rb +220 -0
  1315. data/app/controllers/statements_controller.rb +25 -0
  1316. data/app/controllers/store/checkouts_controller.rb +30 -0
  1317. data/app/controllers/store/events_controller.rb +5 -0
  1318. data/app/controllers/store/orders_controller.rb +71 -0
  1319. data/app/controllers/store/store_controller.rb +26 -0
  1320. data/app/controllers/tickets_controller.rb +166 -0
  1321. data/app/controllers/venues_controller.rb +15 -0
  1322. data/app/helpers/artfully_ose_helper.rb +237 -0
  1323. data/app/helpers/devise_helper.rb +9 -0
  1324. data/app/helpers/export_helper.rb +2 -0
  1325. data/app/helpers/imports_helper.rb +38 -0
  1326. data/app/helpers/link_helper.rb +24 -0
  1327. data/app/helpers/people_helper.rb +22 -0
  1328. data/app/mailers/order_mailer.rb +12 -0
  1329. data/app/mailers/producer_mailer.rb +38 -0
  1330. data/app/models/ability.rb +14 -0
  1331. data/app/models/action.rb +77 -0
  1332. data/app/models/actions/do_action.rb +5 -0
  1333. data/app/models/actions/get_action.rb +9 -0
  1334. data/app/models/actions/give_action.rb +15 -0
  1335. data/app/models/actions/go_action.rb +5 -0
  1336. data/app/models/actions/hear_action.rb +9 -0
  1337. data/app/models/actions/join_action.rb +5 -0
  1338. data/app/models/address.rb +71 -0
  1339. data/app/models/box_office.rb +22 -0
  1340. data/app/models/carts/cart.rb +160 -0
  1341. data/app/models/chart.rb +103 -0
  1342. data/app/models/checkout.rb +88 -0
  1343. data/app/models/comp.rb +78 -0
  1344. data/app/models/contribution.rb +79 -0
  1345. data/app/models/database_views/order_view.rb +34 -0
  1346. data/app/models/donation.rb +35 -0
  1347. data/app/models/donation_search.rb +33 -0
  1348. data/app/models/door_list.rb +41 -0
  1349. data/app/models/event.rb +151 -0
  1350. data/app/models/exchange.rb +67 -0
  1351. data/app/models/ext/callbacks.rb +7 -0
  1352. data/app/models/ext/devise_configuration.rb +15 -0
  1353. data/app/models/ext/integrations.rb +113 -0
  1354. data/app/models/ext/resellable.rb +11 -0
  1355. data/app/models/import.rb +184 -0
  1356. data/app/models/import_error.rb +8 -0
  1357. data/app/models/import_person.rb +78 -0
  1358. data/app/models/import_row.rb +11 -0
  1359. data/app/models/item.rb +190 -0
  1360. data/app/models/kit.rb +134 -0
  1361. data/app/models/kits/regular_donation_kit.rb +44 -0
  1362. data/app/models/kits/reseller_kit.rb +34 -0
  1363. data/app/models/kits/sponsored_donation_kit.rb +65 -0
  1364. data/app/models/kits/ticketing_kit.rb +33 -0
  1365. data/app/models/membership.rb +10 -0
  1366. data/app/models/note.rb +8 -0
  1367. data/app/models/orders/application_order.rb +5 -0
  1368. data/app/models/orders/comp_order.rb +5 -0
  1369. data/app/models/orders/order.rb +206 -0
  1370. data/app/models/orders/refund_order.rb +5 -0
  1371. data/app/models/orders/web_order.rb +5 -0
  1372. data/app/models/organization.rb +100 -0
  1373. data/app/models/organization_ability.rb +19 -0
  1374. data/app/models/payments/cash_payment.rb +24 -0
  1375. data/app/models/payments/comp_payment.rb +44 -0
  1376. data/app/models/payments/credit_card_payment.rb +76 -0
  1377. data/app/models/payments/payment.rb +76 -0
  1378. data/app/models/person.rb +260 -0
  1379. data/app/models/phone.rb +16 -0
  1380. data/app/models/refund.rb +74 -0
  1381. data/app/models/return.rb +16 -0
  1382. data/app/models/sale.rb +91 -0
  1383. data/app/models/sale_search.rb +37 -0
  1384. data/app/models/section.rb +53 -0
  1385. data/app/models/section_summary.rb +16 -0
  1386. data/app/models/segment.rb +13 -0
  1387. data/app/models/show.rb +220 -0
  1388. data/app/models/statement.rb +25 -0
  1389. data/app/models/ticket.rb +266 -0
  1390. data/app/models/ticket/foundry.rb +48 -0
  1391. data/app/models/ticket/glance.rb +36 -0
  1392. data/app/models/ticket/reporting.rb +7 -0
  1393. data/app/models/ticket/reports.rb +83 -0
  1394. data/app/models/ticket/template.rb +39 -0
  1395. data/app/models/ticket_summary.rb +29 -0
  1396. data/app/models/user.rb +39 -0
  1397. data/app/models/valuation/lifetime_value.rb +35 -0
  1398. data/app/models/venue.rb +22 -0
  1399. data/app/views/actions/_list.html.haml +26 -0
  1400. data/app/views/actions/edit.html.haml +19 -0
  1401. data/app/views/actions/new.html.haml +19 -0
  1402. data/app/views/addresses/_address.html.haml +6 -0
  1403. data/app/views/addresses/_form.html.haml +21 -0
  1404. data/app/views/comps/_grouped_form.html.haml +11 -0
  1405. data/app/views/comps/_new_person_form.html.haml +10 -0
  1406. data/app/views/comps/comp_confirm.html.haml +22 -0
  1407. data/app/views/comps/new.html.haml +37 -0
  1408. data/app/views/contributions/find_person.html.haml +44 -0
  1409. data/app/views/contributions/index.html.haml +35 -0
  1410. data/app/views/contributions/new.html.haml +40 -0
  1411. data/app/views/events/_chart_select.html.haml +7 -0
  1412. data/app/views/events/_day_date_show.html.haml +16 -0
  1413. data/app/views/events/_glance.html.haml +34 -0
  1414. data/app/views/events/_glances.html.haml +12 -0
  1415. data/app/views/events/_header.html.haml +10 -0
  1416. data/app/views/events/_list.html.haml +15 -0
  1417. data/app/views/events/_menu.html.haml +21 -0
  1418. data/app/views/events/_section_fields.html.haml +33 -0
  1419. data/app/views/events/_share_and_sell.haml +4 -0
  1420. data/app/views/events/edit.html.haml +40 -0
  1421. data/app/views/events/image.html.haml +35 -0
  1422. data/app/views/events/index.html.haml +7 -0
  1423. data/app/views/events/messages.html.haml +25 -0
  1424. data/app/views/events/new.html.haml +19 -0
  1425. data/app/views/events/prices.html.haml +39 -0
  1426. data/app/views/events/resell.html.haml +31 -0
  1427. data/app/views/events/show.html.haml +42 -0
  1428. data/app/views/events/storefront_link.html.haml +16 -0
  1429. data/app/views/events/widget.html.haml +10 -0
  1430. data/app/views/exchanges/_grouped_form.html.haml +11 -0
  1431. data/app/views/exchanges/new.html.haml +89 -0
  1432. data/app/views/imports/_approved.html.haml +11 -0
  1433. data/app/views/imports/_caching.html.haml +17 -0
  1434. data/app/views/imports/_failed.html.haml +20 -0
  1435. data/app/views/imports/_imported.html.haml +13 -0
  1436. data/app/views/imports/_importing.html.haml +13 -0
  1437. data/app/views/imports/_pending.html.haml +35 -0
  1438. data/app/views/imports/index.html.haml +23 -0
  1439. data/app/views/imports/new.html.haml +93 -0
  1440. data/app/views/imports/show.html.haml +6 -0
  1441. data/app/views/index/dashboard.html.haml +44 -0
  1442. data/app/views/index/splash.html.erb +160 -0
  1443. data/app/views/layouts/_admin_messages.html.haml +0 -0
  1444. data/app/views/layouts/_devise_menu.html.haml +4 -0
  1445. data/app/views/layouts/_flash.html.haml +5 -0
  1446. data/app/views/layouts/_footer.html.haml +0 -0
  1447. data/app/views/layouts/_google_analytics.html.haml +14 -0
  1448. data/app/views/layouts/_menu.html.haml +40 -0
  1449. data/app/views/layouts/application.html.haml +21 -0
  1450. data/app/views/layouts/devise.html.haml +20 -0
  1451. data/app/views/layouts/mail.html.haml +6 -0
  1452. data/app/views/layouts/storefront.html.haml +14 -0
  1453. data/app/views/memberships/_list.html.haml +31 -0
  1454. data/app/views/merges/_merge_preview_person.html.haml +14 -0
  1455. data/app/views/merges/find_person.html.haml +39 -0
  1456. data/app/views/merges/new.html.haml +33 -0
  1457. data/app/views/notes/_list.html.haml +30 -0
  1458. data/app/views/notes/edit.html.haml +14 -0
  1459. data/app/views/notes/new.html.haml +14 -0
  1460. data/app/views/order_mailer/confirmation_for.html.haml +55 -0
  1461. data/app/views/order_mailer/confirmation_for.text.haml +39 -0
  1462. data/app/views/orders/_by_person.haml +25 -0
  1463. data/app/views/orders/_donation_table.haml +16 -0
  1464. data/app/views/orders/_item_table.haml +21 -0
  1465. data/app/views/orders/_order_sidebar.html.haml +63 -0
  1466. data/app/views/orders/_search_form.haml +3 -0
  1467. data/app/views/orders/index.html.haml +58 -0
  1468. data/app/views/orders/sales.html.haml +55 -0
  1469. data/app/views/orders/show.html.haml +24 -0
  1470. data/app/views/organizations/_connection_form.html.haml +21 -0
  1471. data/app/views/organizations/_form.html.haml +6 -0
  1472. data/app/views/organizations/_website_form.html.haml +7 -0
  1473. data/app/views/organizations/edit.html.haml +7 -0
  1474. data/app/views/organizations/index.html.haml +20 -0
  1475. data/app/views/organizations/new.html.haml +15 -0
  1476. data/app/views/organizations/show.html.haml +15 -0
  1477. data/app/views/people/_form.html.haml +20 -0
  1478. data/app/views/people/_key_relationships.html.haml +5 -0
  1479. data/app/views/people/_list.html.haml +23 -0
  1480. data/app/views/people/_person_summary_sidebar.html.haml +54 -0
  1481. data/app/views/people/_relationship_table.html.haml +16 -0
  1482. data/app/views/people/_relationship_table_row.html.haml +8 -0
  1483. data/app/views/people/edit.html.haml +8 -0
  1484. data/app/views/people/index.html.haml +18 -0
  1485. data/app/views/people/new.html.haml +8 -0
  1486. data/app/views/people/show.html.haml +35 -0
  1487. data/app/views/refunds/_grouped_form.html.haml +11 -0
  1488. data/app/views/refunds/new.html.haml +44 -0
  1489. data/app/views/returns/_grouped_form.html.haml +11 -0
  1490. data/app/views/sales/new.html.haml +144 -0
  1491. data/app/views/sections/new.html.haml +12 -0
  1492. data/app/views/segments/index.html.haml +15 -0
  1493. data/app/views/segments/new.html.haml +20 -0
  1494. data/app/views/segments/show.html.haml +20 -0
  1495. data/app/views/shared/_error_messages.html.haml +4 -0
  1496. data/app/views/shared/_event_image_icon.html.haml +6 -0
  1497. data/app/views/shared/_new_person_popup.html.haml +21 -0
  1498. data/app/views/shared/_section_summary.html.haml +16 -0
  1499. data/app/views/shared/_show_summary.html.haml +16 -0
  1500. data/app/views/shared/_submit.haml +3 -0
  1501. data/app/views/shared/_submit_cancel.haml +5 -0
  1502. data/app/views/shared/_tags.html.haml +9 -0
  1503. data/app/views/shared/_tags_uneditable.html.haml +3 -0
  1504. data/app/views/shows/_controls.html.haml +29 -0
  1505. data/app/views/shows/_form.html.haml +14 -0
  1506. data/app/views/shows/_glance.html.haml +22 -0
  1507. data/app/views/shows/_new_show_for_table.html.haml +6 -0
  1508. data/app/views/shows/_stats.html.haml +13 -0
  1509. data/app/views/shows/_ticket_table.html.haml +90 -0
  1510. data/app/views/shows/_upcoming.html.haml +11 -0
  1511. data/app/views/shows/door_list.html.haml +37 -0
  1512. data/app/views/shows/edit.html.haml +7 -0
  1513. data/app/views/shows/index.html.haml +39 -0
  1514. data/app/views/shows/new.html.haml +38 -0
  1515. data/app/views/shows/published_confirm.html.haml +20 -0
  1516. data/app/views/shows/show.html.haml +27 -0
  1517. data/app/views/shows/unpublished_confirm.html.haml +20 -0
  1518. data/app/views/statements/_played_shows.html.haml +7 -0
  1519. data/app/views/statements/index.html.haml +18 -0
  1520. data/app/views/statements/show.html.haml +39 -0
  1521. data/app/views/store/events/_calendar.html.haml +14 -0
  1522. data/app/views/store/events/_show.html.haml +37 -0
  1523. data/app/views/store/events/show.html.haml +190 -0
  1524. data/app/views/users/confirmations/new.html.erb +12 -0
  1525. data/app/views/users/invitations/edit.html.haml +19 -0
  1526. data/app/views/users/invitations/new.html.haml +12 -0
  1527. data/app/views/users/mailer/confirmation_instructions.html.erb +5 -0
  1528. data/app/views/users/mailer/invitation_instructions.html.erb +8 -0
  1529. data/app/views/users/mailer/reset_password_instructions.html.erb +8 -0
  1530. data/app/views/users/mailer/unlock_instructions.html.erb +7 -0
  1531. data/app/views/users/passwords/edit.html.haml +18 -0
  1532. data/app/views/users/passwords/new.html.haml +14 -0
  1533. data/app/views/users/registrations/edit.html.erb +25 -0
  1534. data/app/views/users/sessions/new.html.haml +20 -0
  1535. data/app/views/users/shared/_links.erb +19 -0
  1536. data/app/views/users/unlocks/new.html.erb +12 -0
  1537. data/app/views/venues/edit.html.haml +47 -0
  1538. data/config/artfully.yml.sample +9 -0
  1539. data/config/initializers/add_uncap_to_string.rb +5 -0
  1540. data/config/initializers/admin_time_zone.rb +5 -0
  1541. data/config/initializers/array.rb +12 -0
  1542. data/config/initializers/backtrace_silencers.rb +7 -0
  1543. data/config/initializers/comma.rb +10 -0
  1544. data/config/initializers/config.rb +3 -0
  1545. data/config/initializers/d2s3.rb +4 -0
  1546. data/config/initializers/date_formats.rb +3 -0
  1547. data/config/initializers/delayed_job_config.rb +1 -0
  1548. data/config/initializers/devise.rb +156 -0
  1549. data/config/initializers/validates_timeliness.rb +40 -0
  1550. data/config/locales/devise.en.yml +42 -0
  1551. data/config/locales/devise_invitable.en.yml +10 -0
  1552. data/config/locales/en.yml +208 -0
  1553. data/config/locales/validates_timeliness.en.yml +16 -0
  1554. data/config/routes.rb +153 -0
  1555. data/db/migrate/0000_set_up_artfully.rb +333 -0
  1556. data/lib/artfully_ose.rb +42 -0
  1557. data/lib/artfully_ose/common_abilities.rb +83 -0
  1558. data/lib/artfully_ose/engine.rb +40 -0
  1559. data/lib/artfully_ose/version.rb +3 -0
  1560. data/lib/d2s3/patch/integer.rb +12 -0
  1561. data/lib/d2s3/s3_config.rb +13 -0
  1562. data/lib/d2s3/signature.rb +203 -0
  1563. data/lib/d2s3/view_helpers.rb +51 -0
  1564. data/lib/tasks/artfully_ose.rake +4 -0
  1565. metadata +1940 -0
@@ -0,0 +1,316 @@
1
+ /**
2
+ * Unobtrusive scripting adapter for jQuery
3
+ *
4
+ * Requires jQuery 1.4.4 or later.
5
+ * https://github.com/rails/jquery-ujs
6
+
7
+ * Uploading file using rails.js
8
+ * =============================
9
+ *
10
+ * By default, browsers do not allow files to be uploaded via AJAX. As a result, if there are any non-blank file fields
11
+ * in the remote form, this adapter aborts the AJAX submission and allows the form to submit through standard means.
12
+ *
13
+ * The `ajax:aborted:file` event allows you to bind your own handler to process the form submission however you wish.
14
+ *
15
+ * Ex:
16
+ * $('form').live('ajax:aborted:file', function(event, elements){
17
+ * // Implement own remote file-transfer handler here for non-blank file inputs passed in `elements`.
18
+ * // Returning false in this handler tells rails.js to disallow standard form submission
19
+ * return false;
20
+ * });
21
+ *
22
+ * The `ajax:aborted:file` event is fired when a file-type input is detected with a non-blank value.
23
+ *
24
+ * Third-party tools can use this hook to detect when an AJAX file upload is attempted, and then use
25
+ * techniques like the iframe method to upload the file instead.
26
+ *
27
+ * Required fields in rails.js
28
+ * ===========================
29
+ *
30
+ * If any blank required inputs (required="required") are detected in the remote form, the whole form submission
31
+ * is canceled. Note that this is unlike file inputs, which still allow standard (non-AJAX) form submission.
32
+ *
33
+ * The `ajax:aborted:required` event allows you to bind your own handler to inform the user of blank required inputs.
34
+ *
35
+ * !! Note that Opera does not fire the form's submit event if there are blank required inputs, so this event may never
36
+ * get fired in Opera. This event is what causes other browsers to exhibit the same submit-aborting behavior.
37
+ *
38
+ * Ex:
39
+ * $('form').live('ajax:aborted:required', function(event, elements){
40
+ * // Returning false in this handler tells rails.js to submit the form anyway.
41
+ * // The blank required inputs are passed to this function in `elements`.
42
+ * return ! confirm("Would you like to submit the form with missing info?");
43
+ * });
44
+ */
45
+
46
+ (function($, undefined) {
47
+ // Shorthand to make it a little easier to call public rails functions from within rails.js
48
+ var rails;
49
+
50
+ $.rails = rails = {
51
+ // Link elements bound by jquery-ujs
52
+ linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote]',
53
+
54
+ // Form elements bound by jquery-ujs
55
+ formSubmitSelector: 'form',
56
+
57
+ // Form input elements bound by jquery-ujs
58
+ formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])',
59
+
60
+ // Form input elements disabled during form submission
61
+ disableSelector: 'input[data-disable-with], button[data-disable-with], textarea[data-disable-with]',
62
+
63
+ // Form input elements re-enabled after form submission
64
+ enableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled',
65
+
66
+ // Form required input elements
67
+ requiredInputSelector: 'input[name][required]:not([disabled]),textarea[name][required]:not([disabled])',
68
+
69
+ // Form file input elements
70
+ fileInputSelector: 'input:file',
71
+
72
+ // Make sure that every Ajax request sends the CSRF token
73
+ CSRFProtection: function(xhr) {
74
+ var token = $('meta[name="csrf-token"]').attr('content');
75
+ if (token) xhr.setRequestHeader('X-CSRF-Token', token);
76
+ },
77
+
78
+ // Triggers an event on an element and returns false if the event result is false
79
+ fire: function(obj, name, data) {
80
+ var event = $.Event(name);
81
+ obj.trigger(event, data);
82
+ return event.result !== false;
83
+ },
84
+
85
+ // Default confirm dialog, may be overridden with custom confirm dialog in $.rails.confirm
86
+ confirm: function(message) {
87
+ return confirm(message);
88
+ },
89
+
90
+ // Default ajax function, may be overridden with custom function in $.rails.ajax
91
+ ajax: function(options) {
92
+ return $.ajax(options);
93
+ },
94
+
95
+ // Submits "remote" forms and links with ajax
96
+ handleRemote: function(element) {
97
+ var method, url, data,
98
+ crossDomain = element.data('cross-domain') || null,
99
+ dataType = element.data('type') || ($.ajaxSettings && $.ajaxSettings.dataType);
100
+
101
+ if (rails.fire(element, 'ajax:before')) {
102
+
103
+ if (element.is('form')) {
104
+ method = element.attr('method');
105
+ url = element.attr('action');
106
+ data = element.serializeArray();
107
+ // memoized value from clicked submit button
108
+ var button = element.data('ujs:submit-button');
109
+ if (button) {
110
+ data.push(button);
111
+ element.data('ujs:submit-button', null);
112
+ }
113
+ } else {
114
+ method = element.data('method');
115
+ url = element.attr('href');
116
+ data = element.data('params') || null;
117
+ }
118
+
119
+ rails.ajax({
120
+ url: url, type: method || 'GET', data: data, dataType: dataType, crossDomain: crossDomain,
121
+ // stopping the "ajax:beforeSend" event will cancel the ajax request
122
+ beforeSend: function(xhr, settings) {
123
+ if (settings.dataType === undefined) {
124
+ xhr.setRequestHeader('accept', '*/*;q=0.5, ' + settings.accepts.script);
125
+ }
126
+ return rails.fire(element, 'ajax:beforeSend', [xhr, settings]);
127
+ },
128
+ success: function(data, status, xhr) {
129
+ element.trigger('ajax:success', [data, status, xhr]);
130
+ },
131
+ complete: function(xhr, status) {
132
+ element.trigger('ajax:complete', [xhr, status]);
133
+ },
134
+ error: function(xhr, status, error) {
135
+ element.trigger('ajax:error', [xhr, status, error]);
136
+ }
137
+ });
138
+ }
139
+ },
140
+
141
+ // Handles "data-method" on links such as:
142
+ // <a href="/users/5" data-method="delete" rel="nofollow" data-confirm="Are you sure?">Delete</a>
143
+ handleMethod: function(link) {
144
+ var href = link.attr('href'),
145
+ method = link.data('method'),
146
+ csrf_token = $('meta[name=csrf-token]').attr('content'),
147
+ csrf_param = $('meta[name=csrf-param]').attr('content'),
148
+ form = $('<form method="post" action="' + href + '"></form>'),
149
+ metadata_input = '<input name="_method" value="' + method + '" type="hidden" />';
150
+
151
+ if (csrf_param !== undefined && csrf_token !== undefined) {
152
+ metadata_input += '<input name="' + csrf_param + '" value="' + csrf_token + '" type="hidden" />';
153
+ }
154
+
155
+ form.hide().append(metadata_input).appendTo('body');
156
+ form.submit();
157
+ },
158
+
159
+ /* Disables form elements:
160
+ - Caches element value in 'ujs:enable-with' data store
161
+ - Replaces element text with value of 'data-disable-with' attribute
162
+ - Adds disabled=disabled attribute
163
+ */
164
+ disableFormElements: function(form) {
165
+ form.find(rails.disableSelector).each(function() {
166
+ var element = $(this), method = element.is('button') ? 'html' : 'val';
167
+ element.data('ujs:enable-with', element[method]());
168
+ element[method](element.data('disable-with'));
169
+ element.attr('disabled', 'disabled');
170
+ });
171
+ },
172
+
173
+ /* Re-enables disabled form elements:
174
+ - Replaces element text with cached value from 'ujs:enable-with' data store (created in `disableFormElements`)
175
+ - Removes disabled attribute
176
+ */
177
+ enableFormElements: function(form) {
178
+ form.find(rails.enableSelector).each(function() {
179
+ var element = $(this), method = element.is('button') ? 'html' : 'val';
180
+ if (element.data('ujs:enable-with')) element[method](element.data('ujs:enable-with'));
181
+ element.removeAttr('disabled');
182
+ });
183
+ },
184
+
185
+ /* For 'data-confirm' attribute:
186
+ - Fires `confirm` event
187
+ - Shows the confirmation dialog
188
+ - Fires the `confirm:complete` event
189
+
190
+ Returns `true` if no function stops the chain and user chose yes; `false` otherwise.
191
+ Attaching a handler to the element's `confirm` event that returns a `falsy` value cancels the confirmation dialog.
192
+ Attaching a handler to the element's `confirm:complete` event that returns a `falsy` value makes this function
193
+ return false. The `confirm:complete` event is fired whether or not the user answered true or false to the dialog.
194
+ */
195
+ allowAction: function(element) {
196
+ var message = element.data('confirm'),
197
+ answer = false, callback;
198
+ if (!message) { return true; }
199
+
200
+ if (rails.fire(element, 'confirm')) {
201
+ answer = rails.confirm(message);
202
+ callback = rails.fire(element, 'confirm:complete', [answer]);
203
+ }
204
+ return answer && callback;
205
+ },
206
+
207
+ // Helper function which checks for blank inputs in a form that match the specified CSS selector
208
+ blankInputs: function(form, specifiedSelector, nonBlank) {
209
+ var inputs = $(), input,
210
+ selector = specifiedSelector || 'input,textarea';
211
+ form.find(selector).each(function() {
212
+ input = $(this);
213
+ // Collect non-blank inputs if nonBlank option is true, otherwise, collect blank inputs
214
+ if (nonBlank ? input.val() : !input.val()) {
215
+ inputs = inputs.add(input);
216
+ }
217
+ });
218
+ return inputs.length ? inputs : false;
219
+ },
220
+
221
+ // Helper function which checks for non-blank inputs in a form that match the specified CSS selector
222
+ nonBlankInputs: function(form, specifiedSelector) {
223
+ return rails.blankInputs(form, specifiedSelector, true); // true specifies nonBlank
224
+ },
225
+
226
+ // Helper function, needed to provide consistent behavior in IE
227
+ stopEverything: function(e) {
228
+ $(e.target).trigger('ujs:everythingStopped');
229
+ e.stopImmediatePropagation();
230
+ return false;
231
+ },
232
+
233
+ // find all the submit events directly bound to the form and
234
+ // manually invoke them. If anyone returns false then stop the loop
235
+ callFormSubmitBindings: function(form) {
236
+ var events = form.data('events'), continuePropagation = true;
237
+ if (events !== undefined && events['submit'] !== undefined) {
238
+ $.each(events['submit'], function(i, obj){
239
+ if (typeof obj.handler === 'function') return continuePropagation = obj.handler(obj.data);
240
+ });
241
+ }
242
+ return continuePropagation;
243
+ }
244
+ };
245
+
246
+ // ajaxPrefilter is a jQuery 1.5 feature
247
+ if ('ajaxPrefilter' in $) {
248
+ $.ajaxPrefilter(function(options, originalOptions, xhr){ if ( !options.crossDomain ) { rails.CSRFProtection(xhr); }});
249
+ } else {
250
+ $(document).ajaxSend(function(e, xhr, options){ if ( !options.crossDomain ) { rails.CSRFProtection(xhr); }});
251
+ }
252
+
253
+ $(rails.linkClickSelector).live('click.rails', function(e) {
254
+ var link = $(this);
255
+ if (!rails.allowAction(link)) return rails.stopEverything(e);
256
+
257
+ if (link.data('remote') !== undefined) {
258
+ rails.handleRemote(link);
259
+ return false;
260
+ } else if (link.data('method')) {
261
+ rails.handleMethod(link);
262
+ return false;
263
+ }
264
+ });
265
+
266
+ $(rails.formSubmitSelector).live('submit.rails', function(e) {
267
+ var form = $(this),
268
+ remote = form.data('remote') !== undefined,
269
+ blankRequiredInputs = rails.blankInputs(form, rails.requiredInputSelector),
270
+ nonBlankFileInputs = rails.nonBlankInputs(form, rails.fileInputSelector);
271
+
272
+ if (!rails.allowAction(form)) return rails.stopEverything(e);
273
+
274
+ // skip other logic when required values are missing or file upload is present
275
+ if (blankRequiredInputs && rails.fire(form, 'ajax:aborted:required', [blankRequiredInputs])) {
276
+ return rails.stopEverything(e);
277
+ }
278
+
279
+ if (remote) {
280
+ if (nonBlankFileInputs) {
281
+ return rails.fire(form, 'ajax:aborted:file', [nonBlankFileInputs]);
282
+ }
283
+
284
+ // If browser does not support submit bubbling, then this live-binding will be called before direct
285
+ // bindings. Therefore, we should directly call any direct bindings before remotely submitting form.
286
+ if (!$.support.submitBubbles && rails.callFormSubmitBindings(form) === false) return rails.stopEverything(e);
287
+
288
+ rails.handleRemote(form);
289
+ return false;
290
+ } else {
291
+ // slight timeout so that the submit button gets properly serialized
292
+ setTimeout(function(){ rails.disableFormElements(form); }, 13);
293
+ }
294
+ });
295
+
296
+ $(rails.formInputClickSelector).live('click.rails', function(event) {
297
+ var button = $(this);
298
+
299
+ if (!rails.allowAction(button)) return rails.stopEverything(event);
300
+
301
+ // register the pressed submit button
302
+ var name = button.attr('name'),
303
+ data = name ? {name:name, value:button.val()} : null;
304
+
305
+ button.closest('form').data('ujs:submit-button', data);
306
+ });
307
+
308
+ $(rails.formSubmitSelector).live('ajax:beforeSend.rails', function(event) {
309
+ if (this == event.target) rails.disableFormElements($(this));
310
+ });
311
+
312
+ $(rails.formSubmitSelector).live('ajax:complete.rails', function(event) {
313
+ if (this == event.target) rails.enableFormElements($(this));
314
+ });
315
+
316
+ })( jQuery );
@@ -0,0 +1,4 @@
1
+ //=require ./jquery.validate
2
+ //=require ./jquery.validate.additional-methods
3
+ //=require ./sliding-wizard
4
+ //=require ./store
@@ -0,0 +1,300 @@
1
+ /**
2
+ * jQuery Validation Plugin 1.9.0
3
+ *
4
+ * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
5
+ * http://docs.jquery.com/Plugins/Validation
6
+ *
7
+ * Copyright (c) 2006 - 2011 Jörn Zaefferer
8
+ *
9
+ * Dual licensed under the MIT and GPL licenses:
10
+ * http://www.opensource.org/licenses/mit-license.php
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ */
13
+
14
+ (function() {
15
+
16
+ function stripHtml(value) {
17
+ // remove html tags and space chars
18
+ return value.replace(/<.[^<>]*?>/g, ' ').replace(/&nbsp;|&#160;/gi, ' ')
19
+ // remove numbers and punctuation
20
+ .replace(/[0-9.(),;:!?%#$'"_+=\/-]*/g,'');
21
+ }
22
+ jQuery.validator.addMethod("maxWords", function(value, element, params) {
23
+ return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length < params;
24
+ }, jQuery.validator.format("Please enter {0} words or less."));
25
+
26
+ jQuery.validator.addMethod("minWords", function(value, element, params) {
27
+ return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params;
28
+ }, jQuery.validator.format("Please enter at least {0} words."));
29
+
30
+ jQuery.validator.addMethod("rangeWords", function(value, element, params) {
31
+ return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params[0] && value.match(/bw+b/g).length < params[1];
32
+ }, jQuery.validator.format("Please enter between {0} and {1} words."));
33
+
34
+ })();
35
+
36
+ jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
37
+ return this.optional(element) || /^[a-z-.,()'\"\s]+$/i.test(value);
38
+ }, "Letters or punctuation only please");
39
+
40
+ jQuery.validator.addMethod("alphanumeric", function(value, element) {
41
+ return this.optional(element) || /^\w+$/i.test(value);
42
+ }, "Letters, numbers, spaces or underscores only please");
43
+
44
+ jQuery.validator.addMethod("lettersonly", function(value, element) {
45
+ return this.optional(element) || /^[a-z]+$/i.test(value);
46
+ }, "Letters only please");
47
+
48
+ jQuery.validator.addMethod("nowhitespace", function(value, element) {
49
+ return this.optional(element) || /^\S+$/i.test(value);
50
+ }, "No white space please");
51
+
52
+ jQuery.validator.addMethod("ziprange", function(value, element) {
53
+ return this.optional(element) || /^90[2-5]\d\{2}-\d{4}$/.test(value);
54
+ }, "Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx");
55
+
56
+ jQuery.validator.addMethod("integer", function(value, element) {
57
+ return this.optional(element) || /^-?\d+$/.test(value);
58
+ }, "A positive or negative non-decimal number please");
59
+
60
+ /**
61
+ * Return true, if the value is a valid vehicle identification number (VIN).
62
+ *
63
+ * Works with all kind of text inputs.
64
+ *
65
+ * @example <input type="text" size="20" name="VehicleID" class="{required:true,vinUS:true}" />
66
+ * @desc Declares a required input element whose value must be a valid vehicle identification number.
67
+ *
68
+ * @name jQuery.validator.methods.vinUS
69
+ * @type Boolean
70
+ * @cat Plugins/Validate/Methods
71
+ */
72
+ jQuery.validator.addMethod(
73
+ "vinUS",
74
+ function(v){
75
+ if (v.length != 17)
76
+ return false;
77
+ var i, n, d, f, cd, cdv;
78
+ var LL = ["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"];
79
+ var VL = [1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9];
80
+ var FL = [8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2];
81
+ var rs = 0;
82
+ for(i = 0; i < 17; i++){
83
+ f = FL[i];
84
+ d = v.slice(i,i+1);
85
+ if(i == 8){
86
+ cdv = d;
87
+ }
88
+ if(!isNaN(d)){
89
+ d *= f;
90
+ }
91
+ else{
92
+ for(n = 0; n < LL.length; n++){
93
+ if(d.toUpperCase() === LL[n]){
94
+ d = VL[n];
95
+ d *= f;
96
+ if(isNaN(cdv) && n == 8){
97
+ cdv = LL[n];
98
+ }
99
+ break;
100
+ }
101
+ }
102
+ }
103
+ rs += d;
104
+ }
105
+ cd = rs % 11;
106
+ if(cd == 10){cd = "X";}
107
+ if(cd == cdv){return true;}
108
+ return false;
109
+ },
110
+ "The specified vehicle identification number (VIN) is invalid."
111
+ );
112
+
113
+ /**
114
+ * Return true, if the value is a valid date, also making this formal check dd/mm/yyyy.
115
+ *
116
+ * @example jQuery.validator.methods.date("01/01/1900")
117
+ * @result true
118
+ *
119
+ * @example jQuery.validator.methods.date("01/13/1990")
120
+ * @result false
121
+ *
122
+ * @example jQuery.validator.methods.date("01.01.1900")
123
+ * @result false
124
+ *
125
+ * @example <input name="pippo" class="{dateITA:true}" />
126
+ * @desc Declares an optional input element whose value must be a valid date.
127
+ *
128
+ * @name jQuery.validator.methods.dateITA
129
+ * @type Boolean
130
+ * @cat Plugins/Validate/Methods
131
+ */
132
+ jQuery.validator.addMethod(
133
+ "dateITA",
134
+ function(value, element) {
135
+ var check = false;
136
+ var re = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
137
+ if( re.test(value)){
138
+ var adata = value.split('/');
139
+ var gg = parseInt(adata[0],10);
140
+ var mm = parseInt(adata[1],10);
141
+ var aaaa = parseInt(adata[2],10);
142
+ var xdata = new Date(aaaa,mm-1,gg);
143
+ if ( ( xdata.getFullYear() == aaaa ) && ( xdata.getMonth () == mm - 1 ) && ( xdata.getDate() == gg ) )
144
+ check = true;
145
+ else
146
+ check = false;
147
+ } else
148
+ check = false;
149
+ return this.optional(element) || check;
150
+ },
151
+ "Please enter a correct date"
152
+ );
153
+
154
+ jQuery.validator.addMethod("dateNL", function(value, element) {
155
+ return this.optional(element) || /^\d\d?[\.\/-]\d\d?[\.\/-]\d\d\d?\d?$/.test(value);
156
+ }, "Vul hier een geldige datum in."
157
+ );
158
+
159
+ jQuery.validator.addMethod("time", function(value, element) {
160
+ return this.optional(element) || /^([01]\d|2[0-3])(:[0-5]\d){0,2}$/.test(value);
161
+ }, "Please enter a valid time, between 00:00 and 23:59");
162
+ jQuery.validator.addMethod("time12h", function(value, element) {
163
+ return this.optional(element) || /^((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))$/i.test(value);
164
+ }, "Please enter a valid time, between 00:00 am and 12:00 pm");
165
+
166
+ /**
167
+ * matches US phone number format
168
+ *
169
+ * where the area code may not start with 1 and the prefix may not start with 1
170
+ * allows '-' or ' ' as a separator and allows parens around area code
171
+ * some people may want to put a '1' in front of their number
172
+ *
173
+ * 1(212)-999-2345
174
+ * or
175
+ * 212 999 2344
176
+ * or
177
+ * 212-999-0983
178
+ *
179
+ * but not
180
+ * 111-123-5434
181
+ * and not
182
+ * 212 123 4567
183
+ */
184
+ jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
185
+ phone_number = phone_number.replace(/\s+/g, "");
186
+ return this.optional(element) || phone_number.length > 9 &&
187
+ phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
188
+ }, "Please specify a valid phone number");
189
+
190
+ jQuery.validator.addMethod('phoneUK', function(phone_number, element) {
191
+ return this.optional(element) || phone_number.length > 9 &&
192
+ phone_number.match(/^(\(?(0|\+44)[1-9]{1}\d{1,4}?\)?\s?\d{3,4}\s?\d{3,4})$/);
193
+ }, 'Please specify a valid phone number');
194
+
195
+ jQuery.validator.addMethod('mobileUK', function(phone_number, element) {
196
+ return this.optional(element) || phone_number.length > 9 &&
197
+ phone_number.match(/^((0|\+44)7(5|6|7|8|9){1}\d{2}\s?\d{6})$/);
198
+ }, 'Please specify a valid mobile number');
199
+
200
+ // TODO check if value starts with <, otherwise don't try stripping anything
201
+ jQuery.validator.addMethod("strippedminlength", function(value, element, param) {
202
+ return jQuery(value).text().length >= param;
203
+ }, jQuery.validator.format("Please enter at least {0} characters"));
204
+
205
+ // same as email, but TLD is optional
206
+ jQuery.validator.addMethod("email2", function(value, element, param) {
207
+ return this.optional(element) || /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);
208
+ }, jQuery.validator.messages.email);
209
+
210
+ // same as url, but TLD is optional
211
+ jQuery.validator.addMethod("url2", function(value, element, param) {
212
+ return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
213
+ }, jQuery.validator.messages.url);
214
+
215
+ // NOTICE: Modified version of Castle.Components.Validator.CreditCardValidator
216
+ // Redistributed under the the Apache License 2.0 at http://www.apache.org/licenses/LICENSE-2.0
217
+ // Valid Types: mastercard, visa, amex, dinersclub, enroute, discover, jcb, unknown, all (overrides all other settings)
218
+ jQuery.validator.addMethod("creditcardtypes", function(value, element, param) {
219
+
220
+ if (/[^0-9-]+/.test(value))
221
+ return false;
222
+
223
+ value = value.replace(/\D/g, "");
224
+
225
+ var validTypes = 0x0000;
226
+
227
+ if (param.mastercard)
228
+ validTypes |= 0x0001;
229
+ if (param.visa)
230
+ validTypes |= 0x0002;
231
+ if (param.amex)
232
+ validTypes |= 0x0004;
233
+ if (param.dinersclub)
234
+ validTypes |= 0x0008;
235
+ if (param.enroute)
236
+ validTypes |= 0x0010;
237
+ if (param.discover)
238
+ validTypes |= 0x0020;
239
+ if (param.jcb)
240
+ validTypes |= 0x0040;
241
+ if (param.unknown)
242
+ validTypes |= 0x0080;
243
+ if (param.all)
244
+ validTypes = 0x0001 | 0x0002 | 0x0004 | 0x0008 | 0x0010 | 0x0020 | 0x0040 | 0x0080;
245
+
246
+ if (validTypes & 0x0001 && /^(51|52|53|54|55)/.test(value)) { //mastercard
247
+ return value.length == 16;
248
+ }
249
+ if (validTypes & 0x0002 && /^(4)/.test(value)) { //visa
250
+ return value.length == 16;
251
+ }
252
+ if (validTypes & 0x0004 && /^(34|37)/.test(value)) { //amex
253
+ return value.length == 15;
254
+ }
255
+ if (validTypes & 0x0008 && /^(300|301|302|303|304|305|36|38)/.test(value)) { //dinersclub
256
+ return value.length == 14;
257
+ }
258
+ if (validTypes & 0x0010 && /^(2014|2149)/.test(value)) { //enroute
259
+ return value.length == 15;
260
+ }
261
+ if (validTypes & 0x0020 && /^(6011)/.test(value)) { //discover
262
+ return value.length == 16;
263
+ }
264
+ if (validTypes & 0x0040 && /^(3)/.test(value)) { //jcb
265
+ return value.length == 16;
266
+ }
267
+ if (validTypes & 0x0040 && /^(2131|1800)/.test(value)) { //jcb
268
+ return value.length == 15;
269
+ }
270
+ if (validTypes & 0x0080) { //unknown
271
+ return true;
272
+ }
273
+ return false;
274
+ }, "Please enter a valid credit card number.");
275
+
276
+ jQuery.validator.addMethod("ipv4", function(value, element, param) {
277
+ return this.optional(element) || /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i.test(value);
278
+ }, "Please enter a valid IP v4 address.");
279
+
280
+ jQuery.validator.addMethod("ipv6", function(value, element, param) {
281
+ return this.optional(element) || /^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(value);
282
+ }, "Please enter a valid IP v6 address.");
283
+
284
+ /**
285
+ * Return true if the field value matches the given format RegExp
286
+ *
287
+ * @example jQuery.validator.methods.pattern("AR1004",element,/^AR\d{4}$/)
288
+ * @result true
289
+ *
290
+ * @example jQuery.validator.methods.pattern("BR1004",element,/^AR\d{4}$/)
291
+ * @result false
292
+ *
293
+ * @name jQuery.validator.methods.pattern
294
+ * @type Boolean
295
+ * @cat Plugins/Validate/Methods
296
+ */
297
+ jQuery.validator.addMethod("pattern", function(value, element, param) {
298
+ return this.optional(element) || param.test(value);
299
+ }, "Invalid format.");
300
+