imperavi-rails 0.0.3.beta → 0.0.4.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. data/README.md +33 -29
  2. data/app/assets/javascripts/imperavi-rails/imperavi/redactor.js +317 -405
  3. data/app/assets/stylesheets/imperavi-rails/imperavi/redactor.css.scss +1 -1
  4. data/app/views/imperavi_rails/imperavi/image_edit.html.erb +1 -1
  5. data/lib/imperavi-rails/controller_methods.rb +35 -0
  6. data/lib/imperavi-rails/version.rb +1 -1
  7. data/lib/imperavi-rails.rb +9 -3
  8. data/spec/dummy/db/development.sqlite3 +0 -0
  9. data/spec/dummy/log/development.log +12384 -0
  10. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_44_32_721_6.jpg +0 -0
  11. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_44_32_721_6.jpg.meta +4 -0
  12. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_45_23_25_5.jpg +0 -0
  13. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_45_23_25_5.jpg.meta +4 -0
  14. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_45_49_374_15744.jpg +0 -0
  15. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_45_49_374_15744.jpg.meta +3 -0
  16. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_50_20_902_4.jpg +0 -0
  17. data/spec/dummy/public/system/dragonfly/development/2012/02/03/14_50_20_902_4.jpg.meta +4 -0
  18. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_22_15_373_5.jpg +0 -0
  19. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_22_15_373_5.jpg.meta +4 -0
  20. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_22_40_820_5.jpg +0 -0
  21. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_22_40_820_5.jpg.meta +4 -0
  22. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_23_30_325_3.jpg +0 -0
  23. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_23_30_325_3.jpg.meta +4 -0
  24. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_23_57_376_4.jpg +0 -0
  25. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_23_57_376_4.jpg.meta +4 -0
  26. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_26_27_220_5.jpg +0 -0
  27. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_26_27_220_5.jpg.meta +4 -0
  28. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_26_57_55_6.jpg +0 -0
  29. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_26_57_55_6.jpg.meta +4 -0
  30. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_27_58_370_5.jpg +0 -0
  31. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_27_58_370_5.jpg.meta +4 -0
  32. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_07_700_5.jpg +0 -0
  33. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_07_700_5.jpg.meta +4 -0
  34. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_19_327_4.jpg +0 -0
  35. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_19_327_4.jpg.meta +4 -0
  36. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_53_813_4.jpg +0 -0
  37. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_29_53_813_4.jpg.meta +4 -0
  38. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_30_13_242_5.jpg +0 -0
  39. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_30_13_242_5.jpg.meta +4 -0
  40. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_30_19_927_6.jpg +0 -0
  41. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_30_19_927_6.jpg.meta +4 -0
  42. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_14_355_5.jpg +0 -0
  43. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_14_355_5.jpg.meta +4 -0
  44. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_19_371_1.jpg +0 -0
  45. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_19_371_1.jpg.meta +4 -0
  46. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_28_432_15750.jpg +0 -0
  47. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_28_432_15750.jpg.meta +3 -0
  48. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_39_821_15720.jpg +0 -0
  49. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_39_821_15720.jpg.meta +3 -0
  50. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_47_624_4.jpg +0 -0
  51. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_31_47_624_4.jpg.meta +4 -0
  52. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_33_26_155_5.jpg +0 -0
  53. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_33_26_155_5.jpg.meta +4 -0
  54. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_29_787_2_small.jpg +0 -0
  55. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_29_787_2_small.jpg.meta +3 -0
  56. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_35_450_6.jpg +0 -0
  57. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_35_450_6.jpg.meta +4 -0
  58. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_41_340_15744.jpg +0 -0
  59. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_34_41_340_15744.jpg.meta +3 -0
  60. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_38_14_325_5.jpg +0 -0
  61. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_38_14_325_5.jpg.meta +4 -0
  62. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_06_883_6.jpg +0 -0
  63. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_06_883_6.jpg.meta +4 -0
  64. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_18_915_6.jpg +0 -0
  65. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_18_915_6.jpg.meta +4 -0
  66. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_46_86_15744.jpg +0 -0
  67. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_45_46_86_15744.jpg.meta +3 -0
  68. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_47_24_195_3.jpg +0 -0
  69. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_47_24_195_3.jpg.meta +4 -0
  70. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_47_46_83_5.jpg +0 -0
  71. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_47_46_83_5.jpg.meta +4 -0
  72. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_51_18_603_15720.jpg +0 -0
  73. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_51_18_603_15720.jpg.meta +3 -0
  74. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_51_57_666_6.jpg +0 -0
  75. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_51_57_666_6.jpg.meta +4 -0
  76. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_53_25_938_6.jpg +0 -0
  77. data/spec/dummy/public/system/dragonfly/development/2012/02/17/19_53_25_938_6.jpg.meta +4 -0
  78. data/spec/dummy/tmp/cache/assets/CA9/BC0/sprockets%2F85d8b987b980454101a1236fdec2c220 +0 -0
  79. data/spec/dummy/tmp/cache/assets/CBE/FC0/sprockets%2Ff5431a64e341b062b7530132a5c1ea5a +2306 -1667
  80. data/spec/dummy/tmp/cache/assets/CC5/C10/sprockets%2F7c81f5c40dc9b87819488e127f487a04 +447 -369
  81. data/spec/dummy/tmp/cache/assets/CD5/530/sprockets%2F8d4c18bd4851f107c450a2c782301f8b +53 -0
  82. data/spec/dummy/tmp/cache/assets/CD7/EF0/sprockets%2Fc22597dc7c74137ba100f08542fec580 +76 -0
  83. data/spec/dummy/tmp/cache/assets/D09/DB0/sprockets%2F5ad1bbd0a458985447fac962fb121264 +188 -0
  84. data/spec/dummy/tmp/cache/assets/D1A/AB0/sprockets%2F05ea78f209b93ef03f29e933625b7fa5 +305 -1
  85. data/spec/dummy/tmp/cache/assets/D33/480/sprockets%2Fec072121b559132efe7d07cac0e991a5 +106 -0
  86. data/spec/dummy/tmp/cache/assets/D38/5D0/sprockets%2F7913f60d743aeb957af7a0ca5a20059d +0 -0
  87. data/spec/dummy/tmp/cache/assets/D43/830/sprockets%2Fe09848481135db1a4a5c783a7dc94fbd +50 -0
  88. data/spec/dummy/tmp/cache/assets/D59/260/sprockets%2Fd513a46ce8d83f003a733cb306dfe01a +317 -406
  89. data/spec/dummy/tmp/cache/assets/D64/190/sprockets%2Ffdfa1bbf71247a2b9ef0b97732603e02 +0 -0
  90. data/spec/dummy/tmp/cache/assets/D66/200/sprockets%2Fb343cda49d5d41a82c10a8f06d986bd2 +45 -0
  91. data/spec/dummy/tmp/cache/assets/D6B/980/sprockets%2F56c37f49f60073a401fcbd529dcaa74e +222 -0
  92. data/spec/dummy/tmp/cache/assets/D6D/AF0/sprockets%2F5a1aa4e3f7d7008e775019dfef3282cc +97 -0
  93. data/spec/dummy/tmp/cache/assets/D76/560/sprockets%2Fe0c5141697a090ffb74c9412e6dd7fef +50 -0
  94. data/spec/dummy/tmp/cache/assets/D95/E80/sprockets%2F844edf25b78967cbe9cf3e969c37c6c7 +0 -0
  95. data/spec/dummy/tmp/cache/assets/D96/230/sprockets%2F63e1b63e2b03d0bd6aaebd27c9973e91 +248 -1
  96. data/spec/dummy/tmp/cache/assets/D9B/E30/sprockets%2Fd87c8ca46743542cace533cfe91ae1d0 +437 -365
  97. data/spec/dummy/tmp/cache/assets/D9B/FF0/sprockets%2Fd8bbace39747d4af921e0534736baea3 +125 -0
  98. data/spec/dummy/tmp/cache/assets/DA2/970/sprockets%2F0d4ef1d42ee3e36fedcd979b3506525b +881 -1
  99. data/spec/dummy/tmp/cache/assets/DA8/F60/sprockets%2Fbb2cd57d63160c94d622ef9d91ccef68 +5 -5
  100. data/spec/dummy/tmp/cache/assets/DAC/140/sprockets%2F7a814a5598eaaaccf7ab7895f5663ad5 +89 -0
  101. data/spec/dummy/tmp/cache/assets/DB7/F90/sprockets%2Faf8cc6b28a790c7e3bd686e8ab9973c8 +0 -0
  102. data/spec/dummy/tmp/cache/assets/DBB/960/sprockets%2Fe20156d5decfaaea9d1e09f14a100f19 +16 -0
  103. data/spec/dummy/tmp/cache/sass/bc54e898614d486bf9338d646e8cd056915d4779/redactor.css.scssc +0 -0
  104. data/spec/dummy/tmp/dragonfly/cache/body/01/8b80e42551d33aed663f5757b3e4d3789383e6 +2359 -0
  105. data/spec/dummy/tmp/dragonfly/cache/body/02/3133eaaddaa68515039bc51e11b3bca2ad3f23 +986 -0
  106. data/spec/dummy/tmp/dragonfly/cache/body/03/13c061439229cdbd19215cbd1cf0e26441fac2 +713 -0
  107. data/spec/dummy/tmp/dragonfly/cache/body/05/024188cd40feb026eb8ccd15985d890ba9c84e +643 -0
  108. data/spec/dummy/tmp/dragonfly/cache/body/06/e22ab9a18784ce1f20e09401ee38b9672860d9 +697 -0
  109. data/spec/dummy/tmp/dragonfly/cache/body/07/f49938e6a88e40d2d6fd9fc613578396148e1d +1014 -0
  110. data/spec/dummy/tmp/dragonfly/cache/body/08/8e8a8fc07862b6f7f1bb3d065c44a796a1b959 +489 -0
  111. data/spec/dummy/tmp/dragonfly/cache/body/09/7fc6a9593ea7b3a9992dd166cdc87cf0e06afc +2341 -0
  112. data/spec/dummy/tmp/dragonfly/cache/body/09/c8b9529699d7f44fc6e314c992ea222ecf891a +926 -0
  113. data/spec/dummy/tmp/dragonfly/cache/body/0a/eae45805608cdebd81ace3ac272d43ef8c581a +517 -0
  114. data/spec/dummy/tmp/dragonfly/cache/body/0f/33cebc2562a1ba143494c74b572a7f569c398e +0 -0
  115. data/spec/dummy/tmp/dragonfly/cache/body/12/f3e9f5435e64b368b805b0f6e2e5b04763e0e9 +713 -0
  116. data/spec/dummy/tmp/dragonfly/cache/body/13/02bfc481015a6a0abeb3bd17a166b761ba8a47 +626 -0
  117. data/spec/dummy/tmp/dragonfly/cache/body/14/132bf3af2f923b66a62826ebe1dd001f0ba183 +0 -0
  118. data/spec/dummy/tmp/dragonfly/cache/body/16/3001f75355d109f24b59f690f7ba71c2616261 +2343 -0
  119. data/spec/dummy/tmp/dragonfly/cache/body/16/7a17ea4c64e37f9f0aa5e773501ee5131bb2af +552 -0
  120. data/spec/dummy/tmp/dragonfly/cache/body/18/1ddbad5715e03f6bcaeb409ca55a8f1f1c2b76 +1000 -0
  121. data/spec/dummy/tmp/dragonfly/cache/body/18/dc1d281e1b27f8e29a5d3ea3192ee5ab92c8fe +1721 -0
  122. data/spec/dummy/tmp/dragonfly/cache/body/19/244efbcbf0ed096cc80addb39d1139782691e4 +701 -0
  123. data/spec/dummy/tmp/dragonfly/cache/body/1b/09d865c098ccb9e1bb1783281f8f18ab22f49c +1016 -0
  124. data/spec/dummy/tmp/dragonfly/cache/body/1b/5baeb3d8b21ebdd6d60357437ea9b4ddefa49a +537 -0
  125. data/spec/dummy/tmp/dragonfly/cache/body/1b/f3995977d56cd70d334227ffae3858fdb3e1d4 +1011 -0
  126. data/spec/dummy/tmp/dragonfly/cache/body/1c/8c49d20e2ca7ccea3c7124923f2d6ff715400c +538 -0
  127. data/spec/dummy/tmp/dragonfly/cache/body/1e/3ce5b58c37f23053d85f581ff49d15ad1a498a +674 -0
  128. data/spec/dummy/tmp/dragonfly/cache/body/1f/de9c96ae1b545cb125a43f6c81fe6f15851ac7 +546 -0
  129. data/spec/dummy/tmp/dragonfly/cache/body/20/5d43e6adae0bf766e830109660e59dfd97a776 +646 -0
  130. data/spec/dummy/tmp/dragonfly/cache/body/20/9dd05484ee6eca030ee50cf71b912a67089c79 +2339 -0
  131. data/spec/dummy/tmp/dragonfly/cache/body/21/bdc0c588b6d2ddbbcc9b76fe749c38f0ef2f41 +872 -0
  132. data/spec/dummy/tmp/dragonfly/cache/body/22/f0e133e63c81c43643026aa5cbb3712bfa929e +708 -0
  133. data/spec/dummy/tmp/dragonfly/cache/body/24/f7da13054199d224537d7530367474f292c85a +2359 -0
  134. data/spec/dummy/tmp/dragonfly/cache/body/27/0ac007b4441579233e425f3e7a36887eb4298e +986 -0
  135. data/spec/dummy/tmp/dragonfly/cache/body/28/c775213c7f72c870045887887893831bbb9083 +1006 -0
  136. data/spec/dummy/tmp/dragonfly/cache/body/2a/602d5bf47ce3c3e1fbd540f3659acdf8488b84 +2341 -0
  137. data/spec/dummy/tmp/dragonfly/cache/body/2c/79dceb2787a90f7da9a43673db8d1f1922a379 +641 -0
  138. data/spec/dummy/tmp/dragonfly/cache/body/2d/016dc3e8be00f46455041e5187159762a1a72b +535 -0
  139. data/spec/dummy/tmp/dragonfly/cache/body/2d/40a96b71b5c4be6ea5de082c5c468b923df113 +626 -0
  140. data/spec/dummy/tmp/dragonfly/cache/body/2f/2077afd991927df732811e002d532f34a62c86 +0 -0
  141. data/spec/dummy/tmp/dragonfly/cache/body/30/7cdb90b26de71fedb1774d7b7fe630e77cf34f +1011 -0
  142. data/spec/dummy/tmp/dragonfly/cache/body/33/43ee3681542a52fec318884c34cdc6233aec90 +2359 -0
  143. data/spec/dummy/tmp/dragonfly/cache/body/34/d994dfa8a8a2cf1dddcfcb9d7d43839f798a66 +1007 -0
  144. data/spec/dummy/tmp/dragonfly/cache/body/36/1acb61b84bbb2e3b1fe7cb28e1ca0bb2ebc147 +1721 -0
  145. data/spec/dummy/tmp/dragonfly/cache/body/37/0de185ac6803197940a4aca2ee4cb6cd97aa25 +700 -0
  146. data/spec/dummy/tmp/dragonfly/cache/body/39/36d756ac37cbfd7995a8413c5b813623f8c1d6 +496 -0
  147. data/spec/dummy/tmp/dragonfly/cache/body/39/c79f94952d16de5de0ec59089d381ace6e386e +1029 -0
  148. data/spec/dummy/tmp/dragonfly/cache/body/3f/457b87cdc17162db48461cf72c87457ebe753b +1011 -0
  149. data/spec/dummy/tmp/dragonfly/cache/body/40/d745dd4044031ccd76b4f5a8ad46e3c16ea8c0 +915 -0
  150. data/spec/dummy/tmp/dragonfly/cache/body/43/1a5a2dc62c3b453378dad049c48fcf36928f53 +2342 -0
  151. data/spec/dummy/tmp/dragonfly/cache/body/43/abfe6e68d8603f92084533b5f94fb717bc2b02 +700 -0
  152. data/spec/dummy/tmp/dragonfly/cache/body/44/65e89dffc7531e6479a00711d7bf430c56754f +2359 -0
  153. data/spec/dummy/tmp/dragonfly/cache/body/47/1092abd16e44c60537ac674b871481ca6d108e +489 -0
  154. data/spec/dummy/tmp/dragonfly/cache/body/47/befec7e863f30488d1c9a72619411e3c311eea +552 -0
  155. data/spec/dummy/tmp/dragonfly/cache/body/48/4af0743c55ececa9e2b3477a666492914d5a25 +700 -0
  156. data/spec/dummy/tmp/dragonfly/cache/body/48/5935b1ceed38545d44989a5464049018f63ecd +926 -0
  157. data/spec/dummy/tmp/dragonfly/cache/body/4a/db06a6fda9b3fbe12beb6816390a4fd61e4491 +667 -0
  158. data/spec/dummy/tmp/dragonfly/cache/body/4b/088deec20739cb75b3d8e2ca591171b342026d +862 -0
  159. data/spec/dummy/tmp/dragonfly/cache/body/4b/ea67064045b150fdd661d9b25fe1c447df7570 +703 -0
  160. data/spec/dummy/tmp/dragonfly/cache/body/50/8888bca37caef9e8ecf9434f304d1ab2cc820a +538 -0
  161. data/spec/dummy/tmp/dragonfly/cache/body/54/862500a3c1ce6a605de340ded6051d9d6c96dc +880 -0
  162. data/spec/dummy/tmp/dragonfly/cache/body/55/a3a5731c805bf0c5deda35500598030e91caf7 +2358 -0
  163. data/spec/dummy/tmp/dragonfly/cache/body/56/50f6edaa5e2fe07797333404d13fe63360f72c +0 -0
  164. data/spec/dummy/tmp/dragonfly/cache/body/56/dfa139236a6fcecf0fdd13308a17d03666d223 +2361 -0
  165. data/spec/dummy/tmp/dragonfly/cache/body/58/d135dda5118408bf76a2b381ac0d482276ee97 +546 -0
  166. data/spec/dummy/tmp/dragonfly/cache/body/59/0b00b9579bdc8d199e42d68cc83ee72ba6036a +712 -0
  167. data/spec/dummy/tmp/dragonfly/cache/body/59/c6cdda1534cfeb69aed8a295fa36aa0b34d9ac +882 -0
  168. data/spec/dummy/tmp/dragonfly/cache/body/5c/c982746925609ae2ddd24d20e9f96247006dc3 +883 -0
  169. data/spec/dummy/tmp/dragonfly/cache/body/5f/033e3fda7f0149729cdeba2807ccad0ce6ea32 +1016 -0
  170. data/spec/dummy/tmp/dragonfly/cache/body/5f/95bdb3eb07339f50a73c3e2c38d619b2321902 +2361 -0
  171. data/spec/dummy/tmp/dragonfly/cache/body/60/92cdccc969bab02d35b702148409d59276ec8e +703 -0
  172. data/spec/dummy/tmp/dragonfly/cache/body/62/d3974c45b38586ded0f6adefcefeb4e25aea08 +2357 -0
  173. data/spec/dummy/tmp/dragonfly/cache/body/63/9cff6d42d49aaded2e3201d0b311fb0c4d5af5 +872 -0
  174. data/spec/dummy/tmp/dragonfly/cache/body/65/b3251b1348841946320cd8ac140a7a10a07de5 +894 -0
  175. data/spec/dummy/tmp/dragonfly/cache/body/66/59b5c1535bed3649f05f378f9a935a9369a14f +2341 -0
  176. data/spec/dummy/tmp/dragonfly/cache/body/67/8611d272ec29fc5cb7a63a709a12f47da63fbd +538 -0
  177. data/spec/dummy/tmp/dragonfly/cache/body/68/9bc64959e48ba446c2a48a48952d4e6e422bee +2334 -0
  178. data/spec/dummy/tmp/dragonfly/cache/body/6a/0be367e94b672cef188ef8c3261ed63fa59e6d +701 -0
  179. data/spec/dummy/tmp/dragonfly/cache/body/6a/1642bac93ee93e5ca10af933c39f6db9e15508 +0 -0
  180. data/spec/dummy/tmp/dragonfly/cache/body/6a/4558d01c325e63bfe9abe3df6b1255e51a20e6 +703 -0
  181. data/spec/dummy/tmp/dragonfly/cache/body/6b/8df0f17fd3ce7a7e551e91f30909a847a2abee +734 -0
  182. data/spec/dummy/tmp/dragonfly/cache/body/6b/90cf2c21e1934876d420d2524fe5216c5e7bf1 +551 -0
  183. data/spec/dummy/tmp/dragonfly/cache/body/6d/d8a547a0125a1da2df83e6b2f4c36631a1bd2f +538 -0
  184. data/spec/dummy/tmp/dragonfly/cache/body/6e/a8d288ea6931b9277121b209ac32959b717029 +882 -0
  185. data/spec/dummy/tmp/dragonfly/cache/body/6f/b27a907116ff2fa7a668b30d49b65885a09022 +1016 -0
  186. data/spec/dummy/tmp/dragonfly/cache/body/71/01bff740c639a7b8383a5e247ece9552656acb +708 -0
  187. data/spec/dummy/tmp/dragonfly/cache/body/73/7752ee519e2ee8c13b4c9165fb98c19a874843 +882 -0
  188. data/spec/dummy/tmp/dragonfly/cache/body/74/c9b1fca6f96048f555aed33ddb5c5240839f62 +793 -0
  189. data/spec/dummy/tmp/dragonfly/cache/body/75/01f0f946848c6b910634bed2a58e748dd0a4d2 +986 -0
  190. data/spec/dummy/tmp/dragonfly/cache/body/75/15881fe428cd4b04438de4e03ba3acc7cd789e +642 -0
  191. data/spec/dummy/tmp/dragonfly/cache/body/77/02b8ae247e83a86e819b150375bd2971911635 +882 -0
  192. data/spec/dummy/tmp/dragonfly/cache/body/79/0ba4208b6b095e78b15c6f2c4ef04b9e568fdf +976 -0
  193. data/spec/dummy/tmp/dragonfly/cache/body/7a/40b3b7e48d2fb4f8dc6b9ce3b2c6414cd3db4b +638 -0
  194. data/spec/dummy/tmp/dragonfly/cache/body/7a/44fbc7caa954feca99ae14cdd31700f3bc01ca +0 -0
  195. data/spec/dummy/tmp/dragonfly/cache/body/81/1412d99f15c17d9a52618013667ddc6acbb5e7 +560 -0
  196. data/spec/dummy/tmp/dragonfly/cache/body/82/bb0ce1f6b156348edb5d054b09681adbb1541c +638 -0
  197. data/spec/dummy/tmp/dragonfly/cache/body/82/f4aef50c7d0580ce3de59af781988f8c027e31 +0 -0
  198. data/spec/dummy/tmp/dragonfly/cache/body/84/3bafbd4a01aaae5795b68c2a21561fd78e8bfb +0 -0
  199. data/spec/dummy/tmp/dragonfly/cache/body/84/61cb5340e22fb0e266e5276613f5b218b793c0 +774 -0
  200. data/spec/dummy/tmp/dragonfly/cache/body/87/452e47dc8c565d70543b6a8b3aeeeafef5ede6 +1008 -0
  201. data/spec/dummy/tmp/dragonfly/cache/body/8e/6921af9cd9a9aa0cb4a521be98d497ff7fdeaf +700 -0
  202. data/spec/dummy/tmp/dragonfly/cache/body/8e/d1fec3f23b9477057019f581847f7f8b2051c3 +0 -0
  203. data/spec/dummy/tmp/dragonfly/cache/body/8f/e7d4976bf7e183cf4f6ab9409f8503351dad3c +709 -0
  204. data/spec/dummy/tmp/dragonfly/cache/body/90/1abfe79ed8fa57b0f367b8d6cc284742d74bd9 +703 -0
  205. data/spec/dummy/tmp/dragonfly/cache/body/93/fe1fa30d5fe0cb493dd11ea6eaee9201b50cd8 +712 -0
  206. data/spec/dummy/tmp/dragonfly/cache/body/94/7a175f9de08b84499763ba6cc25f6911ef315e +913 -0
  207. data/spec/dummy/tmp/dragonfly/cache/body/98/2828d5b0867095317a017415955ef31a50dbc5 +1014 -0
  208. data/spec/dummy/tmp/dragonfly/cache/body/98/f06faf5cfff9a92b4d99d400523e1f1551742e +1007 -0
  209. data/spec/dummy/tmp/dragonfly/cache/body/99/2dab09135d5fcbaa2c2b833a8284cb56be5c26 +1014 -0
  210. data/spec/dummy/tmp/dragonfly/cache/body/99/b545fe8ab3b930d8997fd75bb08feea0c9754d +915 -0
  211. data/spec/dummy/tmp/dragonfly/cache/body/9a/ff030c94bb0fbe5d9fbb8cf6865236cb7d74b2 +217 -0
  212. data/spec/dummy/tmp/dragonfly/cache/body/9f/8083640216ee29b9e8b4f10990f33d94aa352c +2360 -0
  213. data/spec/dummy/tmp/dragonfly/cache/body/9f/f4d177f296f259ff4ef3ddb38583daaf7c4dad +1011 -0
  214. data/spec/dummy/tmp/dragonfly/cache/body/a0/13144afc0d13219dad65508b046b9e0693a22b +926 -0
  215. data/spec/dummy/tmp/dragonfly/cache/body/a1/44a32dab1df021f54bf212d2a401b7fc69a2d8 +882 -0
  216. data/spec/dummy/tmp/dragonfly/cache/body/a2/7996e882d74e2e2c590fbfee8a8842b43f5c5e +1014 -0
  217. data/spec/dummy/tmp/dragonfly/cache/body/a2/e9ac7eba6c9ac611ec0cb7f26cbe0711b4b59c +694 -0
  218. data/spec/dummy/tmp/dragonfly/cache/body/a3/cd2fc5aabd1c551bba7f290844b8d89c94ab1e +523 -0
  219. data/spec/dummy/tmp/dragonfly/cache/body/a4/1a483a32348565e7afc810f49f55c1a9cbcd5d +707 -0
  220. data/spec/dummy/tmp/dragonfly/cache/body/a5/ddf1a8e968d20390ab06c94b19eb69a1e81ad7 +908 -0
  221. data/spec/dummy/tmp/dragonfly/cache/body/a6/f516919f720c81c119adadf1693ea44e5b90fe +490 -0
  222. data/spec/dummy/tmp/dragonfly/cache/body/a8/5137398b4d62aacbb0921f50eb9f62e7ec8de4 +0 -0
  223. data/spec/dummy/tmp/dragonfly/cache/body/a8/fb555a7e2420a17ce30758861ac3de784677eb +1011 -0
  224. data/spec/dummy/tmp/dragonfly/cache/body/b0/9703b98c965449cfbff801b8482e5c2c9b1b50 +954 -0
  225. data/spec/dummy/tmp/dragonfly/cache/body/b1/4c0f9e41101026eff8ebdc3fc9eae61c25372b +700 -0
  226. data/spec/dummy/tmp/dragonfly/cache/body/b3/d870794114f8ce678eeeddb0616abbea93ec7b +562 -0
  227. data/spec/dummy/tmp/dragonfly/cache/body/b4/1d331b6f64144bdee2ab598fd7f5ed2bcb6c3c +0 -0
  228. data/spec/dummy/tmp/dragonfly/cache/body/b4/84edbbb2dae5a5fc1cbfc8c8d3517bd1466a1b +2359 -0
  229. data/spec/dummy/tmp/dragonfly/cache/body/b5/52eaf4b5bac5fcf8667e5fb74f4b1c61984b0e +537 -0
  230. data/spec/dummy/tmp/dragonfly/cache/body/b6/9ec86cf5018fe63297e409da6638450c5041d2 +0 -0
  231. data/spec/dummy/tmp/dragonfly/cache/body/b7/31c759f6bf5b6adc13874d8ccf325a1715bf33 +882 -0
  232. data/spec/dummy/tmp/dragonfly/cache/body/b8/84c73fced17e1cb4f2efc18ed4f81789e5a622 +0 -0
  233. data/spec/dummy/tmp/dragonfly/cache/body/b9/43df43ad225c99d420cdb7e5d7714c2876273f +1007 -0
  234. data/spec/dummy/tmp/dragonfly/cache/body/b9/b4cb4d1647df4ec458ef3cc18782261a46bef2 +641 -0
  235. data/spec/dummy/tmp/dragonfly/cache/body/ba/1c57461ee48afadc870fca415b0e2aeaec3f4a +882 -0
  236. data/spec/dummy/tmp/dragonfly/cache/body/be/d14e3b72d93bfc0cace752edf21f5cc2af8949 +2358 -0
  237. data/spec/dummy/tmp/dragonfly/cache/body/c1/0767685a05c93f5e79a81ec5016820d7068afd +281 -0
  238. data/spec/dummy/tmp/dragonfly/cache/body/c3/5f95670b5171f06b0c450331c20ce59d44d5bd +537 -0
  239. data/spec/dummy/tmp/dragonfly/cache/body/c3/c76755904506b55cc288baed5e8f3ae767e1f9 +908 -0
  240. data/spec/dummy/tmp/dragonfly/cache/body/c7/48859071d0c1e701557a2b59181ae9d40b4c1c +1029 -0
  241. data/spec/dummy/tmp/dragonfly/cache/body/cc/e21614b70000b7a45bf382a696dfdf2e78811f +1029 -0
  242. data/spec/dummy/tmp/dragonfly/cache/body/cd/daa343d969732d44b9018e9e8403d758c1075b +2334 -0
  243. data/spec/dummy/tmp/dragonfly/cache/body/cd/dbba7b01cfb5eabf3c3b557d3cc1c7eeac9157 +523 -0
  244. data/spec/dummy/tmp/dragonfly/cache/body/d0/654133544a02cf512cdbe78256f913d684ee32 +894 -0
  245. data/spec/dummy/tmp/dragonfly/cache/body/d4/42ed09f48e3e24cd3cd958c9e0865df054419b +1029 -0
  246. data/spec/dummy/tmp/dragonfly/cache/body/d6/1eefad56108f5a8e1fa7aa72ff9b9f9cd633fc +538 -0
  247. data/spec/dummy/tmp/dragonfly/cache/body/d6/d1ac8848c469cd9094fa75b7528e0f5b6b632e +496 -0
  248. data/spec/dummy/tmp/dragonfly/cache/body/d7/899077450ebef4fdc0e9bb929825299f54457f +697 -0
  249. data/spec/dummy/tmp/dragonfly/cache/body/d9/f0d58e806b8697218740130d2ca12b3b86d6ef +1007 -0
  250. data/spec/dummy/tmp/dragonfly/cache/body/da/378953b0532aa6da1fa92abeeae89199ef8227 +1006 -0
  251. data/spec/dummy/tmp/dragonfly/cache/body/da/7c689c2f3a69f6770b63b71a8e71b6a1a28b37 +967 -0
  252. data/spec/dummy/tmp/dragonfly/cache/body/da/e26a3a67f1a9ea2332232ea28c90082c0e3bad +963 -0
  253. data/spec/dummy/tmp/dragonfly/cache/body/dc/abdd743fd3e9d7bd5647abeb86e66a3e6f9597 +0 -0
  254. data/spec/dummy/tmp/dragonfly/cache/body/e0/85f72a9f92bfadac77ceb40b9dcce7f1d0c0b4 +712 -0
  255. data/spec/dummy/tmp/dragonfly/cache/body/e1/f71dadeca1e7e8044d7ffe33168a41cf4b915e +712 -0
  256. data/spec/dummy/tmp/dragonfly/cache/body/e3/5e3eeacd0fa04028277861a7e20aca055126bf +705 -0
  257. data/spec/dummy/tmp/dragonfly/cache/body/e7/71af29ca1fb912746c2a8c252ce2dbda293797 +0 -0
  258. data/spec/dummy/tmp/dragonfly/cache/body/eb/d3df10f28dd5eb3361f2dea07bce8f31883cb4 +562 -0
  259. data/spec/dummy/tmp/dragonfly/cache/body/f2/0000c07c049d6b02b83c134a47f79d25c8f884 +1006 -0
  260. data/spec/dummy/tmp/dragonfly/cache/body/f3/81eaa388ae0115314da5ef3dff86dde481f6ea +1011 -0
  261. data/spec/dummy/tmp/dragonfly/cache/body/f4/f597679294dfce3758a1e23f8739ddadb7a07a +905 -0
  262. data/spec/dummy/tmp/dragonfly/cache/body/f6/5638ff81bbc2e264c25be9224311d5b88e199e +696 -0
  263. data/spec/dummy/tmp/dragonfly/cache/body/f8/4c49b7e7f1df8b9bf194c8e4f238965275a470 +638 -0
  264. data/spec/dummy/tmp/dragonfly/cache/body/f8/bce7bef222715dce37713e4b658bb432746046 +642 -0
  265. data/spec/dummy/tmp/dragonfly/cache/body/fb/4bbd9bd1b55ea5c5f029a98429cbe84fecbd56 +1029 -0
  266. data/spec/dummy/tmp/dragonfly/cache/body/fe/83a325403c35319d9539703bf8b707c48cbb81 +700 -0
  267. data/spec/dummy/tmp/dragonfly/cache/meta/0b/a9c9bfcc4c3c931157c0740283f9879ffbc80e +0 -0
  268. data/spec/dummy/tmp/dragonfly/cache/meta/16/82dfe14b1caadf556cccc78e6742ecba3c8f50 +0 -0
  269. data/spec/dummy/tmp/dragonfly/cache/meta/18/2807a34d96c2dc102f1c7f2c2fe2a3dea0152a +0 -0
  270. data/spec/dummy/tmp/dragonfly/cache/meta/1b/df42876b5661f82d4041d818e787e2f58949e7 +0 -0
  271. data/spec/dummy/tmp/dragonfly/cache/meta/1d/f723c27427056dd58a506f1e4f15020442098e +0 -0
  272. data/spec/dummy/tmp/dragonfly/cache/meta/22/66939b783406813e2f0a76f3a2f29473675994 +0 -0
  273. data/spec/dummy/tmp/dragonfly/cache/meta/23/4f7740cb6118c7c530ce379339a99828a75ef3 +0 -0
  274. data/spec/dummy/tmp/dragonfly/cache/meta/26/25fc31c2b02071c5c60621d36793dc55fdb33c +0 -0
  275. data/spec/dummy/tmp/dragonfly/cache/meta/29/717968cc2fa016a4911e7161b6423235f36c87 +0 -0
  276. data/spec/dummy/tmp/dragonfly/cache/meta/2d/83e1c5e84c02b8fee05b62d483999bfaba7be0 +0 -0
  277. data/spec/dummy/tmp/dragonfly/cache/meta/2d/b7fe2b8774fa388daa3c8370f34052119b4222 +0 -0
  278. data/spec/dummy/tmp/dragonfly/cache/meta/2d/fe381b58b48b16278672bd61db736e4e920955 +0 -0
  279. data/spec/dummy/tmp/dragonfly/cache/meta/32/e0d3566d2be50daabce5a94c515f772050829b +0 -0
  280. data/spec/dummy/tmp/dragonfly/cache/meta/38/5bb4a3ceace256ca114fc14a3c5ae12ec83fb0 +0 -0
  281. data/spec/dummy/tmp/dragonfly/cache/meta/39/b52b68255f54efe8cb853fd153088f94a7661a +0 -0
  282. data/spec/dummy/tmp/dragonfly/cache/meta/3e/0173e72157b702c4926d190389540028b0ae1d +0 -0
  283. data/spec/dummy/tmp/dragonfly/cache/meta/52/a111bad2ef8c87af7f55baf0ffc5cdefc446e4 +0 -0
  284. data/spec/dummy/tmp/dragonfly/cache/meta/55/32c60f25996b8e8a9fdf7125956c5204fa8792 +0 -0
  285. data/spec/dummy/tmp/dragonfly/cache/meta/64/61f1782e6f9ec4e6416c0aec429529ea70a1a1 +0 -0
  286. data/spec/dummy/tmp/dragonfly/cache/meta/66/b6e26427e56a9f9ade00d4cf5d615679f0f7a7 +0 -0
  287. data/spec/dummy/tmp/dragonfly/cache/meta/66/f44aba1428593600ff0e47ea6aa54362e39a59 +0 -0
  288. data/spec/dummy/tmp/dragonfly/cache/meta/6d/f4ba8735866613f9b640f6a0cc8e4583eba1f9 +0 -0
  289. data/spec/dummy/tmp/dragonfly/cache/meta/78/d74c0cd05a77c0c06acb622761d30c9ea00bb3 +0 -0
  290. data/spec/dummy/tmp/dragonfly/cache/meta/7a/6033b3a3f17fbddc765d138d39de24f94f0965 +0 -0
  291. data/spec/dummy/tmp/dragonfly/cache/meta/7a/d6666861b23fcf6c7ea45d61810fdb1c14d9d0 +0 -0
  292. data/spec/dummy/tmp/dragonfly/cache/meta/80/5841ac20acdd8dd41460c8346294abc5c4dd8f +0 -0
  293. data/spec/dummy/tmp/dragonfly/cache/meta/83/5df7873207b08f78fd9d690e5a0b759242b937 +0 -0
  294. data/spec/dummy/tmp/dragonfly/cache/meta/83/696c30e03b7215b60e076bc528c8829ddcc516 +0 -0
  295. data/spec/dummy/tmp/dragonfly/cache/meta/83/b01df8c183f9586aff3f30bd22f4c24793c52b +0 -0
  296. data/spec/dummy/tmp/dragonfly/cache/meta/85/289eb541e97e28d96dacfd07c314be3beb566a +0 -0
  297. data/spec/dummy/tmp/dragonfly/cache/meta/8c/1a23bf2dd650d0327255a5fe948c325d350107 +0 -0
  298. data/spec/dummy/tmp/dragonfly/cache/meta/8f/5281faf3f227ef4bbbd3b644cc9eafc86ff9b1 +0 -0
  299. data/spec/dummy/tmp/dragonfly/cache/meta/91/0922a2bd8308a75961dac5733d4907df678f65 +0 -0
  300. data/spec/dummy/tmp/dragonfly/cache/meta/92/8e4f3f982b856114506c590c291dea7f0c29d7 +0 -0
  301. data/spec/dummy/tmp/dragonfly/cache/meta/92/99ecbc80a7e8abcc02a36d9c3365b23b1a5b1a +0 -0
  302. data/spec/dummy/tmp/dragonfly/cache/meta/98/00e4dc8c2a89849e9d3cb8dd37f8c45d744dd3 +0 -0
  303. data/spec/dummy/tmp/dragonfly/cache/meta/9d/4531b3a9ffdee2c2b2b485675e8b055a2de25f +0 -0
  304. data/spec/dummy/tmp/dragonfly/cache/meta/a2/5920380e48276ad6f8bc26fb9a4a527db839c8 +0 -0
  305. data/spec/dummy/tmp/dragonfly/cache/meta/b7/407b5584752ca5298158a78be896bf810dd4e0 +0 -0
  306. data/spec/dummy/tmp/dragonfly/cache/meta/b7/ae83f0c4d7b4849a78af8830c31ffe4b166b52 +0 -0
  307. data/spec/dummy/tmp/dragonfly/cache/meta/d2/458b4acc8a67ee57346f1f4ebfa0f0e4bb4ea3 +0 -0
  308. data/spec/dummy/tmp/dragonfly/cache/meta/d5/341018026448c1d4f56801bd7ddb8380e1a73c +0 -0
  309. data/spec/dummy/tmp/dragonfly/cache/meta/e7/6d1dc2d45d19440e781f6c5d00f39d8aeb4da1 +0 -0
  310. data/spec/dummy/tmp/dragonfly/cache/meta/ee/fe74949a8c2a0bbc077385a12944d9f98a12e0 +0 -0
  311. data/spec/dummy/tmp/dragonfly/cache/meta/ef/d71b44567b90c7f85e9bd0576e4b7e55bd3565 +0 -0
  312. data/spec/dummy/tmp/dragonfly/cache/meta/f9/67ac04386c59253bd80f4034d18af166cc5691 +0 -0
  313. data/spec/dummy/tmp/sass-cache/6e61637ec8d1d247724328e8c4a6704fe36b468e/_hacks.scssc +0 -0
  314. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_border-radius.scssc +0 -0
  315. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_box-shadow.scssc +0 -0
  316. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_gradient.scssc +0 -0
  317. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_images.scssc +0 -0
  318. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_inline-block.scssc +0 -0
  319. data/spec/dummy/tmp/sass-cache/77824dc1336af71703311a2e58b21a32c1511e63/_shared.scssc +0 -0
  320. data/spec/dummy/tmp/sass-cache/bc54e898614d486bf9338d646e8cd056915d4779/buttons.css.scssc +0 -0
  321. data/spec/dummy/tmp/sass-cache/bc54e898614d486bf9338d646e8cd056915d4779/redactor.css.scssc +0 -0
  322. data/spec/dummy/tmp/sass-cache/d1a1c9c63df53223abb80676ef7dcc16c1375c54/_support.scssc +0 -0
  323. metadata +605 -20
  324. data/spec/dummy/tmp/pids/server.pid +0 -1
@@ -0,0 +1,908 @@
1
+ $.fn.ImperaviLanguages = {
2
+ ru : {
3
+ html : 'Код',
4
+
5
+ // Styles dropdown menu
6
+ styles : {
7
+ name : 'Стили',
8
+ paragraph : 'Параграф',
9
+ quote : 'Цитата',
10
+ code : 'Код',
11
+ h2 : 'Заголовок 2',
12
+ h3 : 'Заголовок 3',
13
+ h4 : 'Заголовок 4',
14
+ h5 : 'Заголовок 5',
15
+ h6 : 'Заголовок 6',
16
+ },
17
+
18
+ // Formatting dropdown menu
19
+ format : {
20
+ name : 'Формат',
21
+ bold : 'Полужирный',
22
+ italic : 'Наклонный',
23
+ sup : 'Надстрочный',
24
+ sub : 'Надстрочный',
25
+ strike : 'Зачеркнутый',
26
+ remove : 'Очистить форматирование'
27
+ },
28
+
29
+ // Lists dropdown menu
30
+ lists : {
31
+ name : 'Списки',
32
+ unordered : 'Обычный список',
33
+ ordered : 'Нумерованный список',
34
+ outdent : 'Уменьшить отступ',
35
+ indent : 'Увеличить отступ'
36
+ },
37
+
38
+ // Working with images
39
+ image : {
40
+ name : 'Изображение',
41
+ download : 'Скачать изображение',
42
+ text : 'Текст',
43
+ mailto : 'Эл. почта',
44
+ web : 'URL',
45
+ title : 'Подсказка',
46
+ buttons : {
47
+ save : 'Сохранить',
48
+ cancel : 'Отменить',
49
+ insert : 'Вставить',
50
+ remove : 'Удалить'
51
+ },
52
+ align : {
53
+ name : 'Обтекание текстом',
54
+ none : 'нет',
55
+ left : 'слева',
56
+ right : 'справа'
57
+ }
58
+ },
59
+
60
+ // Insert and format tables
61
+ table : {
62
+ name : 'Таблица',
63
+ insert : 'Вставить таблицу',
64
+ remove : 'Удалить таблицу',
65
+ row: {
66
+ name : 'Строки',
67
+ above : 'Добавить строку сверху',
68
+ below : 'Добавить строку снизу',
69
+ remove : 'Удалить строку'
70
+ },
71
+ column : {
72
+ name : 'Столбцы',
73
+ left : 'Добавить столбец слева',
74
+ right : 'Добавить столбец справа',
75
+ remove : 'Удалить столбец',
76
+ },
77
+ header : {
78
+ add : 'Добавить заголовок',
79
+ remove : 'Удалить заголовок'
80
+ }
81
+ },
82
+
83
+ // Insert video from youtube etc
84
+ video : {
85
+ name : 'Видео',
86
+ code : 'Код видео ролика'
87
+ },
88
+
89
+ // Insert or remove hyperlink to a file
90
+ file : {
91
+ name : 'Файл',
92
+ upload : 'Загрузить',
93
+ download : 'Скачать',
94
+ choose : 'Выбрать',
95
+ or_choose : 'Или выберите',
96
+ drop : 'Перетащите файл сюда'
97
+ },
98
+
99
+ // Insert or remove hyperlink
100
+ hyperlink : 'Ссылка'
101
+ }
102
+ }
103
+ ;
104
+ $.fn.ImperaviToolbarDefault = {
105
+ html : true,
106
+
107
+ // Styles dropdown menu
108
+ // TODO: User styles here. Move all to format section from here
109
+ styles : {
110
+ paragraph : true,
111
+ quote : true,
112
+ code : true,
113
+ h2 : true,
114
+ h3 : true,
115
+ h4 : true,
116
+ h5 : true,
117
+ h6 : true
118
+ },
119
+
120
+ // Formatting dropdown menu
121
+ format : {
122
+ bold : true,
123
+ italic : true,
124
+ sup : true,
125
+ sub : true,
126
+ strike : true,
127
+ remove : true
128
+ },
129
+
130
+ // Lists dropdown menu
131
+ lists : {
132
+ unordered : true,
133
+ ordered : true,
134
+ outdent : true,
135
+ indent : true
136
+ },
137
+
138
+ // Working with images
139
+ image : true,
140
+
141
+ // Insert and format tables
142
+ table : {
143
+ insert : true,
144
+ remove : true,
145
+ header : {
146
+ add : true,
147
+ remove : true
148
+ },
149
+ row : {
150
+ above : true,
151
+ below : true,
152
+ remove : true
153
+ },
154
+ column : {
155
+ left : true,
156
+ right : true,
157
+ remove : true
158
+ }
159
+ },
160
+
161
+ // Insert video from youtube etc
162
+ video : true,
163
+
164
+ // Insert or remove hyperlink to a file
165
+ file : true,
166
+
167
+ // Insert or remove hyperlink
168
+ hyperlink : true
169
+ }
170
+ ;
171
+ (function( $ ) {
172
+ $.fn.ImperaviActionDelegator = function(o) { this.initialize() }
173
+
174
+ $.fn.ImperaviActionDelegator.prototype = {
175
+ initialize: function() {},
176
+
177
+ delegateButtonClick: function(button, iframe) {
178
+ switch (button.attr('rel')) {
179
+ case 'indent':
180
+ case 'outdent':
181
+ alert('yay!')
182
+ break;
183
+ case 'video':
184
+ new $.fn.ImperaviPluginVideo
185
+ break;
186
+ case 'image':
187
+ new $.fn.ImperaviPluginImage
188
+ break;
189
+ case 'hyperlink':
190
+ new $.fn.ImperaviPluginHyperlink
191
+ break;
192
+ case 'file':
193
+ new $.fn.ImperaviPluginFile
194
+ break;
195
+ default:
196
+ return button
197
+ break;
198
+ }
199
+ }
200
+ }
201
+ })(jQuery);
202
+ // Internationalization
203
+ (function( $ ) {
204
+ $.fn.ImperaviI18n = function(o) {
205
+ var o = $.extend({
206
+ locale : 'en'
207
+ }, o)
208
+
209
+ this.initialize(o)
210
+ }
211
+
212
+ $.fn.ImperaviI18n.prototype = {
213
+ o : null,
214
+ locales : null,
215
+
216
+ initialize: function(o) {
217
+ this.o = $.extend({ locale : $.fn.ImperaviOptions().options.locale }, o)
218
+ this.locales = $.fn.ImperaviLanguages[this.o.locale]
219
+ },
220
+
221
+ t: function(key) {
222
+
223
+ }
224
+ }
225
+ })(jQuery);
226
+ (function( $ ) {
227
+ $.fn.ImperaviPluginVideo = function(o) { this.initialize(o) }
228
+
229
+ $.fn.ImperaviPluginVideo.prototype = {
230
+ initialize: function(o) {
231
+ this.o = o
232
+
233
+ this.dialog = new $.fn.ImperaviDialog({
234
+ title : 'Insert video',
235
+ width : 600,
236
+ height : 300,
237
+ onOkay : function() {
238
+ alert(this.el.find('textarea').val())
239
+ this.hide()
240
+ }
241
+ })
242
+
243
+ this.dialog.show()
244
+ this.dialog.el.addClass('imperavi-plugin-video')
245
+ this.build()
246
+ },
247
+
248
+ build: function() {
249
+ var textarea = $(document.createElement('textarea'))
250
+ this.dialog.setContent(textarea)
251
+ }
252
+ }
253
+ })(jQuery);
254
+ (function( $ ) {
255
+ $.fn.ImperaviPluginImage = function(o) { this.initialize(o) }
256
+
257
+ $.fn.ImperaviPluginImage.prototype = {
258
+ initialize: function(o) {
259
+ this.o = o
260
+
261
+ this.dialog = new $.fn.ImperaviDialog({
262
+ title : 'Insert image',
263
+ width : 800,
264
+ height : 600,
265
+ onRemove : function() {
266
+ alert('fuck yeah!')
267
+ this.hide()
268
+ },
269
+ onOkay : function() {
270
+ this.hide()
271
+ }
272
+ })
273
+
274
+ this.dialog.show()
275
+ this.dialog.el.addClass('imperavi-plugin-image')
276
+ this.dialog.addButton('Remove', 'remove')
277
+ this.build()
278
+ },
279
+
280
+ build: function() {
281
+ this.tabsArea = this.build_tabs_area()
282
+
283
+ this.pickTab = this.build_tab('Pick image', this.buildPickTabContent())
284
+ .appendTo(this.tabsArea)
285
+ .addClass('current')
286
+
287
+ this.uploadTab = this.build_tab('Upload image', this.buildUploadTabContent())
288
+ .appendTo(this.tabsArea)
289
+
290
+ this.linkTab = this.build_tab('Link to image', this.buildLinkTabContent())
291
+ .appendTo(this.tabsArea)
292
+
293
+ this.dialog.setContent(this.tabsArea)
294
+ this.switchTabs();
295
+ },
296
+
297
+ build_tabs_area: function() {
298
+ var article = $(document.createElement('article'))
299
+ .addClass('imperavi-tabs')
300
+
301
+ return article
302
+ },
303
+
304
+ build_tab: function(title, content) {
305
+ var section = $(document.createElement('section'))
306
+ var heading = $(document.createElement('h3'))
307
+ .html(title)
308
+ .addClass('imperavi-tab')
309
+ .appendTo(section)
310
+
311
+ var content = $(document.createElement('div'))
312
+ .appendTo(section)
313
+ .html(content)
314
+
315
+ return section
316
+ },
317
+
318
+ switchTabs: function() {
319
+ var currentTab = this.pickTab
320
+
321
+ this.tabsArea.on('click', '.imperavi-tab', function(e){
322
+ e.preventDefault();
323
+
324
+ if (currentTab.length) {
325
+ currentTab.removeClass('current')
326
+ }
327
+
328
+ currentTab = $(this).closest('section').addClass('current')
329
+ })
330
+ },
331
+
332
+ buildPickTabContent: function() {
333
+
334
+ },
335
+
336
+ buildUploadTabContent: function() {
337
+
338
+ },
339
+
340
+ buildLinkTabContent: function() {
341
+ var wrapper = $(document.createElement('div'))
342
+ .addClass('field')
343
+
344
+ var label = $(document.createElement('label'))
345
+ .attr('for', 'image-link')
346
+ .html('Specify link to image')
347
+ .appendTo(wrapper)
348
+
349
+ var url = $(document.createElement('input'))
350
+ .attr('type', 'text')
351
+ .attr('name', 'image-link')
352
+ .attr('id', 'image-link')
353
+ .appendTo(wrapper)
354
+
355
+ return wrapper
356
+ }
357
+ }
358
+ })(jQuery);
359
+ (function( $ ) {
360
+ $.fn.ImperaviPluginHyperlink = function(o) { this.initialize(o) }
361
+
362
+ $.fn.ImperaviPluginHyperlink.prototype = {
363
+ initialize: function(o) {
364
+ this.o = o
365
+
366
+ this.dialog = new $.fn.ImperaviDialog({
367
+ title : 'Insert hyperlink',
368
+ width : 450,
369
+ height : 237,
370
+ onRemove : function() {
371
+ alert('fuck yeah!')
372
+ this.hide()
373
+ },
374
+ onOkay : function() {
375
+ alert('fuck')
376
+ this.hide()
377
+ }
378
+ })
379
+
380
+ this.dialog.show()
381
+ this.dialog.el.addClass('imperavi-plugin-hyperlink')
382
+ this.dialog.addButton('Remove', 'remove')
383
+ this.build()
384
+ },
385
+
386
+ build: function() {
387
+ var wrapper = $(document.createElement('div'))
388
+ var url = this.build_input('Url', 'url').appendTo(wrapper)
389
+ var caption = this.build_input('Title', 'title').appendTo(wrapper)
390
+
391
+ this.dialog.setContent(wrapper)
392
+ },
393
+
394
+ build_input: function(title, name) {
395
+ var wrapper = $(document.createElement('div'))
396
+ .addClass('field')
397
+
398
+ var label = $(document.createElement('label'))
399
+ .attr('for', name)
400
+ .html(title)
401
+ .appendTo(wrapper)
402
+
403
+ var url = $(document.createElement('input'))
404
+ .attr('type', 'text')
405
+ .attr('name', name)
406
+ .attr('id', name)
407
+ .appendTo(wrapper)
408
+
409
+ return wrapper
410
+ }
411
+ }
412
+ })(jQuery);
413
+ (function( $ ) {
414
+ $.fn.ImperaviPluginFile = function(o) { this.initialize(o) }
415
+
416
+ $.fn.ImperaviPluginFile.prototype = {
417
+ initialize: function(o) {
418
+ this.o = o
419
+
420
+ this.dialog = new $.fn.ImperaviDialog({
421
+ title : 'Attach file',
422
+ width : 450,
423
+ height : 237,
424
+ onRemove : function() {
425
+ alert('fuck yeah!')
426
+ this.hide()
427
+ },
428
+ onOkay : function() {
429
+ alert('fuck')
430
+ this.hide()
431
+ }
432
+ })
433
+
434
+ this.dialog.show()
435
+ this.dialog.el.addClass('imperavi-plugin-file')
436
+ this.dialog.addButton('Remove', 'remove')
437
+ this.build()
438
+ },
439
+
440
+ build: function() {
441
+ var wrapper = $(document.createElement('div'))
442
+ var file = this.build_input('File', 'attachment').appendTo(wrapper)
443
+ //var caption = this.build_input('Title', 'title').appendTo(wrapper)
444
+
445
+ this.dialog.setContent(wrapper)
446
+ },
447
+
448
+ build_input: function(title, name) {
449
+ var wrapper = $(document.createElement('div'))
450
+ .addClass('field')
451
+
452
+ var label = $(document.createElement('label'))
453
+ .attr('for', name)
454
+ .html(title)
455
+ .appendTo(wrapper)
456
+
457
+ var file = $(document.createElement('input'))
458
+ .attr('type', 'file')
459
+ .attr('name', name)
460
+ .attr('id', name)
461
+ .appendTo(wrapper)
462
+
463
+ return wrapper
464
+ }
465
+ }
466
+ })(jQuery);
467
+ // TODO: add custom events
468
+ // - onShow
469
+ // - onClose
470
+ // - onBuilt
471
+ // - onContentLoaded
472
+ // - onOkay
473
+ // - onCancel
474
+
475
+ (function( $ ) {
476
+ $.fn.ImperaviDialog = function(o) {
477
+ var o = $.extend({
478
+ onOkay : function() { this.hide() },
479
+ onCancel : function() { this.hide() },
480
+ onClose : function(e) { this.close(e) },
481
+ onBuilt : function() {},
482
+ onLoad : function() {}
483
+ }, o)
484
+
485
+ this.initialize(o)
486
+ }
487
+
488
+ $.fn.ImperaviDialog.prototype = {
489
+ el : null,
490
+ o : null,
491
+ overlay : null,
492
+
493
+ initialize: function(o) {
494
+ // Retrieve user options passed to imperavi
495
+ this.o = $.extend($.fn.ImperaviOptions().options.dialog, o)
496
+ },
497
+
498
+ build: function() {
499
+ // Build dialog just once
500
+ if (this.el) return;
501
+
502
+ // Create overlay
503
+ this.overlay = new $.fn.ImperaviOverlay()
504
+
505
+ // Dialog window
506
+ this.el = $(document.createElement('div'))
507
+ .attr('id', 'imperavi-dialog')
508
+ .appendTo($('body'));
509
+
510
+ this.container = $(document.createElement('div'))
511
+ .attr('id', 'imperavi-dialog-container')
512
+ .appendTo(this.el);
513
+
514
+ // Close button
515
+ this.closeBtn = $(document.createElement('a'))
516
+ .attr('href', 'javascript:;')
517
+ .html('×')
518
+ .attr('id', 'imperavi-dialog-close')
519
+ .appendTo(this.container);
520
+
521
+ // Dialog title
522
+ this.title = $(document.createElement('h1'))
523
+ .attr('id', 'imperavi-dialog-title')
524
+ .appendTo(this.container);
525
+
526
+ // Dialog content
527
+ this.article = $(document.createElement('article'))
528
+ .attr('id', 'imperavi-dialog-content')
529
+ .appendTo(this.container);
530
+
531
+ // Buttons panel
532
+ this.buttons_wrapper = $(document.createElement('div'))
533
+ .attr('id', 'imperavi-dialog-buttons-wrapper')
534
+ .appendTo(this.container);
535
+
536
+ this.buttons = $(document.createElement('div'))
537
+ .attr('id', 'imperavi-dialog-buttons')
538
+ .appendTo(this.buttons_wrapper);
539
+
540
+ this.okay_button = this.addButton('Okay', 'okay')
541
+ this.cancel_button = this.addButton('Cancel', 'cancel')
542
+
543
+ // Set default size
544
+ this.setSize(this.o.width, this.o.height)
545
+
546
+ // Set default title
547
+ this.setTitle(this.o.title)
548
+
549
+ this.o.onBuilt.call(this)
550
+ },
551
+
552
+ addButton: function(caption, name) {
553
+ var callbackName = 'on' + name.charAt(0).toUpperCase() + name.slice(1)
554
+
555
+ return $(document.createElement('a'))
556
+ .attr('id', 'imperavi-dialog-' + name)
557
+ .attr('href', 'javascript:;')
558
+ .html(caption)
559
+ .click($.proxy(function(){ this.o[callbackName].call(this) }, this))
560
+ .appendTo(this.buttons);
561
+ },
562
+
563
+ addEvents: function() {
564
+ var onCloseCallback = $.proxy(function(e){ this.o.onClose.call(this, e) }, this)
565
+
566
+ $(document).keyup(function(e) { onCloseCallback(e) })
567
+ this.closeBtn.click(function(e) { onCloseCallback(e) })
568
+ this.overlay.el.click(function(e) { onCloseCallback(e) })
569
+ },
570
+
571
+ removeEvents: function() {
572
+ var onCloseCallback = $.proxy(function(e){ this.o.onClose.call(this, e) }, this)
573
+
574
+ $(document).unbind('keyup', onCloseCallback)
575
+ this.closeBtn.unbind('click', onCloseCallback)
576
+ this.overlay.el.unbind('click', onCloseCallback)
577
+ },
578
+
579
+ setSize: function(width, height) {
580
+ this.el.css({
581
+ width : width + 'px',
582
+ height : height + 'px',
583
+ marginTop : '-' + height / 2 + 'px',
584
+ marginLeft : '-' + width / 2 + 'px'
585
+ }).fadeIn('fast');
586
+
587
+ this.container.css({
588
+ width : width + 'px',
589
+ height : height + 'px',
590
+ })
591
+ },
592
+
593
+ setTitle: function(title) {
594
+ this.title.html(title)
595
+ },
596
+
597
+ setContent: function(content) {
598
+ this.article.html(content)
599
+ },
600
+
601
+ // TODO Load content via ajax
602
+ loadContent: function(url) {
603
+ this.setContent('')
604
+ this.o.onLoad.call(this)
605
+ },
606
+
607
+ cleanUp: function() {
608
+ this.removeEvents()
609
+ this.setContent('')
610
+ this.setTitle('')
611
+ },
612
+
613
+ show: function() {
614
+ this.build()
615
+ this.overlay.show()
616
+ this.el.show()
617
+ this.addEvents()
618
+ },
619
+
620
+ hide: function() {
621
+ this.el.hide()
622
+ this.overlay.hide()
623
+ this.cleanUp()
624
+ },
625
+
626
+ close: function(e) {
627
+ if (e.keyCode == 27 || e.type == 'click')
628
+ this.hide()
629
+ }
630
+ }
631
+ })(jQuery);
632
+ (function( $ ) {
633
+ $.fn.ImperaviOverlay = function(o) { this.initialize(o) }
634
+
635
+ $.fn.ImperaviOverlay.prototype = {
636
+ el : null,
637
+
638
+ initialize: function(o) {
639
+ this.o = o
640
+ },
641
+
642
+ build: function() {
643
+ if (this.el) return;
644
+
645
+ this.el = $(document.createElement('div'))
646
+ .attr('id', 'imperavi-overlay')
647
+ .appendTo($('body'));
648
+ },
649
+
650
+ show: function() {
651
+ this.build()
652
+ this.el.show()
653
+ },
654
+
655
+ hide: function() {
656
+ this.el.hide()
657
+ }
658
+ }
659
+ })(jQuery);
660
+ (function( $ ) {
661
+ $.fn.ImperaviIframe = function(textarea, o) { this.initialize(textarea, o) }
662
+
663
+ $.fn.ImperaviIframe.prototype = {
664
+ textarea : null,
665
+ wrapper : null,
666
+ el : null,
667
+
668
+ initialize: function(textarea, o) {
669
+ this.textarea = textarea
670
+ this.o = o
671
+
672
+ this.textarea.hide();
673
+
674
+ this.build()
675
+ this.populate()
676
+ this.enable(true)
677
+ },
678
+
679
+ // Build Iframe object and stuff
680
+ build: function() {
681
+ this.wrapper = $(document.createElement('div'))
682
+ .addClass('imperavi')
683
+ .insertAfter(this.textarea)
684
+
685
+ this.el = $(document.createElement('iframe'))
686
+ .appendTo(this.wrapper)
687
+ .css({ width : this.textarea.outerWidth(), height : this.textarea.outerHeight() })
688
+ },
689
+
690
+ populate: function() {
691
+ html = '<!DOCTYPE html>'
692
+ html += '<head><meta charset="utf-8" />'
693
+ //html += '<link rel="stylesheet" href="/assets/wysiwyg.css?body=1" />'
694
+ //html += '<script src="/assets/mootools.js?body=1"></script>'
695
+ html += '</head><html><body>' + this.textarea.val()
696
+ html += '</body></html>'
697
+
698
+ this.doc().open();
699
+ this.doc().write(html);
700
+ this.doc().close();
701
+ },
702
+
703
+ enableObjects: function() {
704
+ if (!$.browser.mozilla) return;
705
+
706
+ //this.doc().execCommand('styleWithCSS', false, false)
707
+ //this.doc().execCommand('enableObjectResizing', false, false)
708
+ //this.doc().execCommand('enableInlineTableEditing', false, false)
709
+ },
710
+
711
+ observe: function() {
712
+
713
+ },
714
+
715
+ enable: function(status) {
716
+ // Located here for Chrome support
717
+ this.doc().designMode = status ? 'on' : 'off';
718
+
719
+ this.el.load($.proxy(function() {
720
+ this.enableObjects();
721
+ this.observe();
722
+ }, this));
723
+ },
724
+
725
+ doc: function() {
726
+ return this.el.get(0).contentDocument || this.el.get(0).contentWindow.document
727
+ }
728
+ }
729
+ })(jQuery);
730
+ (function( $ ) {
731
+ $.fn.ImperaviIframeResizer = function(iframe, o) { this.initialize(iframe, o) }
732
+
733
+ $.fn.ImperaviIframeResizer.prototype = {
734
+ iframe : null,
735
+ el : null,
736
+
737
+ initialize: function(iframe, o) {
738
+ this.iframe = iframe
739
+ this.o = o
740
+
741
+ this.build()
742
+ },
743
+
744
+ build: function() {
745
+ this.el = $(document.createElement('div'))
746
+ .addClass('imperavi-resizer')
747
+ .insertAfter(this.iframe.el)
748
+
749
+ this.el.append($(document.createElement('div')))
750
+ }
751
+ }
752
+ })(jQuery);
753
+ (function( $ ) {
754
+ $.fn.ImperaviToolbar = function(iframe, o) {
755
+ var o = $.extend({
756
+ onButtonClick : function(button) {},
757
+ }, o)
758
+
759
+ this.initialize(iframe, o)
760
+ }
761
+
762
+ $.fn.ImperaviToolbar.prototype = {
763
+ iframe : null,
764
+ el : null,
765
+
766
+ initialize: function(iframe, o) {
767
+ this.iframe = iframe
768
+ this.o = o
769
+ this.x = $.fn.ImperaviToolbarDefault // TODO make it pretty
770
+ this.l = $.fn.ImperaviLanguages.ru // TODO make it pretty
771
+
772
+ this.build()
773
+ },
774
+
775
+ // Build Toolbar object
776
+ build: function() {
777
+ this.el = $(document.createElement('ul'))
778
+ .insertBefore(this.iframe.el);
779
+
780
+ $.each(this.x, $.proxy(function(key, value) {
781
+ // Buttons with dropdown
782
+ if (typeof value == 'object') {
783
+ this.el.append(this.addDropdown(key, value))
784
+ } else if (typeof value == 'boolean' && value == true) {
785
+ var title = typeof this.l[key] == 'object' ? this.l[key].name : this.l[key]
786
+ this.el.append(this.addButton(key, title, null))
787
+ }
788
+ }, this));
789
+ },
790
+
791
+ addButton: function(name, title, caption) {
792
+ var li = $(document.createElement('li')).addClass('button-' + name)
793
+ var a = $(document.createElement('a'))
794
+ .attr('href', 'javascript:;')
795
+ .attr('rel', name)
796
+ .attr('title', title)
797
+ .appendTo(li)
798
+ // This executes a custom callback on button click
799
+ .click($.proxy(function(){ this.o.onButtonClick.call(this, a) }, this))
800
+
801
+ var span = $(document.createElement('span'))
802
+ .html(caption)
803
+ .appendTo(a);
804
+
805
+ return li.append(a)
806
+ },
807
+
808
+ addDropdown: function(name, items) {
809
+ var button = this.addButton(name, this.l[name].name, null)
810
+ var ul = $(document.createElement('ul'))
811
+
812
+ button.addClass('has-dropdown')
813
+
814
+ // Add dropdown items
815
+ $.each(items, $.proxy(function(key, value) {
816
+ if (typeof value == 'object') {
817
+ var separator = true
818
+
819
+ $.each(value, $.proxy(function(key2, value2) {
820
+ if (value2 == true) {
821
+ var item = this.addButton(key2, null, this.l[name][key][key2])
822
+ if (separator) item.addClass('separator')
823
+
824
+ ul.append(item)
825
+ separator = false
826
+ }
827
+ }, this));
828
+ } else if (typeof value == 'boolean' && value == true) {
829
+ ul.append( this.addButton(key, null, this.l[name][key]) )
830
+ }
831
+ }, this));
832
+
833
+ return button.append(ul)
834
+ }
835
+ }
836
+ })(jQuery);
837
+ (function( $ ) {
838
+ $.fn.imperavi = function(o) {
839
+ // Editor options
840
+ var o = $.extend({
841
+ locale : 'ru', // TODO replace with $.fn.ImperaviLanguage
842
+ resizer : $.fn.ImperaviIframeResizer,
843
+ dialog : $.fn.ImperaviDialog,
844
+ overlay : $.fn.ImperaviOverlay,
845
+ iframe : $.fn.ImperaviIframe,
846
+ toolbar : $.fn.ImperaviToolbar,
847
+ delegator : $.fn.ImperaviActionDelegator,
848
+ options : {
849
+ dialog : {
850
+ title : 'Default title',
851
+ width : 500,
852
+ height : 300
853
+ }
854
+ }
855
+ }, o)
856
+
857
+ // Global options
858
+ $.fn.ImperaviOptions = function() { return o }
859
+
860
+ // Main object
861
+ $.fn.Imperavi = function(el) { this.initialize(el) }
862
+
863
+ $.fn.Imperavi.prototype = {
864
+ textarea : null,
865
+ iframe : null,
866
+ toolbar : null,
867
+ resizer : null,
868
+ delegator : null,
869
+
870
+ // Initialize imperavi
871
+ initialize: function(el) {
872
+ this.textarea = $(el)
873
+ this.build()
874
+ this.autosave()
875
+ },
876
+
877
+ build: function() {
878
+ // Delegate action to another object
879
+ this.delegator = new o.delegator
880
+
881
+ // Create iframe
882
+ this.iframe = new o.iframe(this.textarea, o)
883
+
884
+ // Create editor resizer
885
+ this.resizer = new o.resizer(this.iframe, o)
886
+
887
+ // Create toolbar
888
+ this.toolbar = new o.toolbar(this.iframe, {
889
+ onButtonClick : $.proxy(function(button) {
890
+ this.delegator.delegateButtonClick(button, this.iframe)
891
+ }, this)
892
+ })
893
+ },
894
+
895
+ autosave: function() {
896
+ // TODO: implement
897
+ }
898
+ }
899
+
900
+ // Apply imperavi for each selected element
901
+ return this.each(function() {
902
+ new $.fn.Imperavi(this)
903
+ })
904
+ }
905
+ })(jQuery);
906
+
907
+
908
+