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,707 @@
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
+ }
193
+ }
194
+ }
195
+ })(jQuery);
196
+ (function( $ ) {
197
+ $.fn.ImperaviPluginVideo = function(o) { this.initialize(o) }
198
+
199
+ $.fn.ImperaviPluginVideo.prototype = {
200
+ initialize: function(o) {
201
+ this.o = o
202
+
203
+ this.dialog = new $.fn.ImperaviDialog({
204
+ title : 'Insert video',
205
+ width : 600,
206
+ height : 300,
207
+ onOkay : function() {
208
+ alert(this.el.find('textarea').val())
209
+ this.hide()
210
+ }
211
+ })
212
+
213
+ this.dialog.show()
214
+ this.dialog.el.addClass('imperavi-plugin-video')
215
+ this.build()
216
+ },
217
+
218
+ build: function() {
219
+ var textarea = $(document.createElement('textarea'))
220
+ this.dialog.setContent(textarea)
221
+ }
222
+ }
223
+ })(jQuery);
224
+ (function( $ ) {
225
+ $.fn.ImperaviPluginImage = function(o) { this.initialize(o) }
226
+
227
+ $.fn.ImperaviPluginImage.prototype = {
228
+ initialize: function(o) {
229
+ this.o = o
230
+
231
+ this.dialog = new $.fn.ImperaviDialog({
232
+ title : 'Insert image',
233
+ width : 800,
234
+ height : 600,
235
+ onOkay : function() {
236
+ //alert(this.el.find('textarea').val())
237
+ this.hide()
238
+ }
239
+ })
240
+
241
+ this.dialog.show()
242
+ this.dialog.el.addClass('imperavi-plugin-image')
243
+ this.build()
244
+ },
245
+
246
+ build: function() {
247
+ //var textarea = $(document.createElement('textarea'))
248
+ //this.dialog.setContent(textarea)
249
+ }
250
+ }
251
+ })(jQuery);
252
+ (function( $ ) {
253
+ $.fn.ImperaviPluginHyperlink = function(o) { this.initialize(o) }
254
+
255
+ $.fn.ImperaviPluginHyperlink.prototype = {
256
+ initialize: function(o) {
257
+ this.o = o
258
+
259
+ this.dialog = new $.fn.ImperaviDialog({
260
+ title : 'Insert hyperlink',
261
+ width : 400,
262
+ height : 200,
263
+ onOkay : function() {
264
+ this.hide()
265
+ }
266
+ })
267
+
268
+ this.dialog.show()
269
+ this.dialog.el.addClass('imperavi-plugin-hyperlink')
270
+ this.build()
271
+ },
272
+
273
+ build: function() {
274
+ //var textarea = $(document.createElement('textarea'))
275
+ //this.dialog.setContent(textarea)
276
+ }
277
+ }
278
+ })(jQuery);
279
+ // TODO: add custom events
280
+ // - onShow
281
+ // - onClose
282
+ // - onBuilt
283
+ // - onContentLoaded
284
+ // - onOkay
285
+ // - onCancel
286
+
287
+ (function( $ ) {
288
+ $.fn.ImperaviDialog = function(o) {
289
+ var o = $.extend({
290
+ onOkay : function() { this.hide() },
291
+ onCancel : function() { this.hide() },
292
+ onClose : function(e) { this.close(e) },
293
+ onBuilt : function() {},
294
+ onLoad : function() {}
295
+ }, o)
296
+
297
+ this.initialize(o)
298
+ }
299
+
300
+ $.fn.ImperaviDialog.prototype = {
301
+ el : null,
302
+ o : null,
303
+ overlay : null,
304
+
305
+ initialize: function(o) {
306
+ // Retrieve user options passed to imperavi
307
+ this.o = $.extend($.fn.ImperaviOptions().options.dialog, o)
308
+ },
309
+
310
+ build: function() {
311
+ // Build dialog just once
312
+ if (this.el) return;
313
+
314
+ // Create overlay
315
+ this.overlay = new $.fn.ImperaviOverlay()
316
+
317
+ // Dialog window
318
+ this.el = $(document.createElement('div'))
319
+ .attr('id', 'imperavi-dialog')
320
+ .appendTo($('body'));
321
+
322
+ // Close button
323
+ this.closeBtn = $(document.createElement('a'))
324
+ .attr('href', 'javascript:;')
325
+ .html('×')
326
+ .attr('id', 'imperavi-dialog-close')
327
+ .appendTo(this.el);
328
+
329
+ // Dialog title
330
+ this.title = $(document.createElement('h1'))
331
+ .attr('id', 'imperavi-dialog-title')
332
+ .appendTo(this.el);
333
+
334
+ // Dialog content
335
+ this.article = $(document.createElement('article'))
336
+ .attr('id', 'imperavi-dialog-content')
337
+ .appendTo(this.el);
338
+
339
+ // Buttons panel
340
+ this.buttons = $(document.createElement('div'))
341
+ .attr('id', 'imperavi-dialog-buttons')
342
+ .appendTo(this.el);
343
+
344
+ this.okay_button = this.addButton('Okay', 'okay')
345
+ //.click($.proxy(function(){ this.o.onOkay.call(this) }, this))
346
+
347
+ this.cancel_button = this.addButton('Cancel', 'cancel')
348
+ //.click($.proxy(function(){ this.o.onCancel.call(this) }, this))
349
+
350
+ // Set default size
351
+ this.setSize(this.o.width, this.o.height)
352
+
353
+ // Set default title
354
+ this.setTitle(this.o.title)
355
+
356
+ this.o.onBuilt.call(this)
357
+ },
358
+
359
+ addButton: function(caption, name) {
360
+ alert(name)
361
+ return $(document.createElement('a'))
362
+ .attr('id', 'imperavi-dialog-' + name)
363
+ .attr('href', 'javascript:;')
364
+ .html(caption)
365
+ .click($.proxy(function(){ this.o.onCancel.call(this) }, this))
366
+ .appendTo(this.buttons);
367
+ },
368
+
369
+ addEvents: function() {
370
+ var onCloseCallback = $.proxy(function(e){ this.o.onClose.call(this, e) }, this)
371
+
372
+ $(document).keyup(function(e) { onCloseCallback(e) })
373
+ this.closeBtn.click(function(e) { onCloseCallback(e) })
374
+ this.overlay.el.click(function(e) { onCloseCallback(e) })
375
+ },
376
+
377
+ removeEvents: function() {
378
+ $(document).unbind('keyup', $.proxy(this.close, this))
379
+ this.closeBtn.unbind('click', $.proxy(this.close, this))
380
+ this.overlay.el.unbind('click', $.proxy(this.close, this))
381
+ },
382
+
383
+ setSize: function(width, height) {
384
+ this.el.css({
385
+ width : width+ 'px',
386
+ height : height + 'px',
387
+ marginTop : '-' + height / 2 + 'px',
388
+ marginLeft : '-' + width / 2 + 'px'
389
+ }).fadeIn('fast');
390
+ },
391
+
392
+ setTitle: function(title) {
393
+ this.title.html(title)
394
+ },
395
+
396
+ setContent: function(content) {
397
+ this.article.html(content)
398
+ },
399
+
400
+ // TODO Load content via ajax
401
+ loadContent: function(url) {
402
+ this.setContent('')
403
+ this.o.onLoad.call(this)
404
+ },
405
+
406
+ cleanUp: function() {
407
+ this.removeEvents()
408
+ this.setContent('')
409
+ this.setTitle('')
410
+ },
411
+
412
+ show: function() {
413
+ this.build()
414
+ this.overlay.show()
415
+ this.el.show()
416
+ this.addEvents()
417
+ },
418
+
419
+ hide: function() {
420
+ this.el.hide()
421
+ this.overlay.hide()
422
+ this.cleanUp()
423
+ },
424
+
425
+ close: function(e) {
426
+ if (e.keyCode == 27 || e.type == 'click')
427
+ this.hide()
428
+ }
429
+ }
430
+ })(jQuery);
431
+ (function( $ ) {
432
+ $.fn.ImperaviOverlay = function(o) { this.initialize(o) }
433
+
434
+ $.fn.ImperaviOverlay.prototype = {
435
+ el : null,
436
+
437
+ initialize: function(o) {
438
+ this.o = o
439
+ },
440
+
441
+ build: function() {
442
+ if (this.el) return;
443
+
444
+ this.el = $(document.createElement('div'))
445
+ .attr('id', 'imperavi-overlay')
446
+ .appendTo($('body'));
447
+ },
448
+
449
+ show: function() {
450
+ this.build()
451
+ this.el.show()
452
+ },
453
+
454
+ hide: function() {
455
+ this.el.hide()
456
+ }
457
+ }
458
+ })(jQuery);
459
+ (function( $ ) {
460
+ $.fn.ImperaviIframe = function(textarea, o) { this.initialize(textarea, o) }
461
+
462
+ $.fn.ImperaviIframe.prototype = {
463
+ textarea : null,
464
+ wrapper : null,
465
+ el : null,
466
+
467
+ initialize: function(textarea, o) {
468
+ this.textarea = textarea
469
+ this.o = o
470
+
471
+ this.textarea.hide();
472
+
473
+ this.build()
474
+ this.populate()
475
+ this.enable(true)
476
+ },
477
+
478
+ // Build Iframe object and stuff
479
+ build: function() {
480
+ this.wrapper = $(document.createElement('div'))
481
+ .addClass('imperavi')
482
+ .insertAfter(this.textarea)
483
+
484
+ this.el = $(document.createElement('iframe'))
485
+ .appendTo(this.wrapper)
486
+ .css({ width : this.textarea.outerWidth(), height : this.textarea.outerHeight() })
487
+ },
488
+
489
+ populate: function() {
490
+ html = '<!DOCTYPE html>'
491
+ html += '<head><meta charset="utf-8" />'
492
+ //html += '<link rel="stylesheet" href="/assets/wysiwyg.css?body=1" />'
493
+ //html += '<script src="/assets/mootools.js?body=1"></script>'
494
+ html += '</head><html><body>' + this.textarea.val()
495
+ html += '</body></html>'
496
+
497
+ this.doc().open();
498
+ this.doc().write(html);
499
+ this.doc().close();
500
+ },
501
+
502
+ enableObjects: function() {
503
+ if (!$.browser.mozilla) return;
504
+
505
+ //this.doc().execCommand('styleWithCSS', false, false)
506
+ //this.doc().execCommand('enableObjectResizing', false, false)
507
+ //this.doc().execCommand('enableInlineTableEditing', false, false)
508
+ },
509
+
510
+ observe: function() {
511
+
512
+ },
513
+
514
+ enable: function(status) {
515
+ // Located here for Chrome support
516
+ this.doc().designMode = status ? 'on' : 'off';
517
+
518
+ this.el.load($.proxy(function() {
519
+ this.enableObjects();
520
+ this.observe();
521
+ }, this));
522
+ },
523
+
524
+ doc: function() {
525
+ return this.el.get(0).contentDocument || this.el.get(0).contentWindow.document
526
+ }
527
+ }
528
+ })(jQuery);
529
+ (function( $ ) {
530
+ $.fn.ImperaviIframeResizer = function(iframe, o) { this.initialize(iframe, o) }
531
+
532
+ $.fn.ImperaviIframeResizer.prototype = {
533
+ iframe : null,
534
+ el : null,
535
+
536
+ initialize: function(iframe, o) {
537
+ this.iframe = iframe
538
+ this.o = o
539
+
540
+ this.build()
541
+ },
542
+
543
+ build: function() {
544
+ this.el = $(document.createElement('div'))
545
+ .addClass('imperavi-resizer')
546
+ .insertAfter(this.iframe.el)
547
+
548
+ this.el.append($(document.createElement('div')))
549
+ }
550
+ }
551
+ })(jQuery);
552
+ (function( $ ) {
553
+ $.fn.ImperaviToolbar = function(iframe, o) {
554
+ var o = $.extend({
555
+ onButtonClick : function(button) {},
556
+ }, o)
557
+
558
+ this.initialize(iframe, o)
559
+ }
560
+
561
+ $.fn.ImperaviToolbar.prototype = {
562
+ iframe : null,
563
+ el : null,
564
+
565
+ initialize: function(iframe, o) {
566
+ this.iframe = iframe
567
+ this.o = o
568
+ this.x = $.fn.ImperaviToolbarDefault // TODO make it pretty
569
+ this.l = $.fn.ImperaviLanguages.ru // TODO make it pretty
570
+
571
+ this.build()
572
+ },
573
+
574
+ // Build Toolbar object
575
+ build: function() {
576
+ this.el = $(document.createElement('ul'))
577
+ .insertBefore(this.iframe.el);
578
+
579
+ $.each(this.x, $.proxy(function(key, value) {
580
+ // Buttons with dropdown
581
+ if (typeof value == 'object') {
582
+ this.el.append(this.addDropdown(key, value))
583
+ } else if (typeof value == 'boolean' && value == true) {
584
+ var title = typeof this.l[key] == 'object' ? this.l[key].name : this.l[key]
585
+ this.el.append(this.addButton(key, title, null))
586
+ }
587
+ }, this));
588
+ },
589
+
590
+ addButton: function(name, title, caption) {
591
+ var li = $(document.createElement('li')).addClass('button-' + name)
592
+ var a = $(document.createElement('a'))
593
+ .attr('href', 'javascript:;')
594
+ .attr('rel', name)
595
+ .attr('title', title)
596
+ .appendTo(li)
597
+ // This executes a custom callback on button click
598
+ .click($.proxy(function(){ this.o.onButtonClick.call(this, a) }, this))
599
+
600
+ var span = $(document.createElement('span'))
601
+ .html(caption)
602
+ .appendTo(a);
603
+
604
+ return li.append(a)
605
+ },
606
+
607
+ addDropdown: function(name, items) {
608
+ var button = this.addButton(name, this.l[name].name, null)
609
+ var ul = $(document.createElement('ul'))
610
+
611
+ button.addClass('has-dropdown')
612
+
613
+ // Add dropdown items
614
+ $.each(items, $.proxy(function(key, value) {
615
+ if (typeof value == 'object') {
616
+ var separator = true
617
+
618
+ $.each(value, $.proxy(function(key2, value2) {
619
+ if (value2 == true) {
620
+ var item = this.addButton(key2, null, this.l[name][key][key2])
621
+ if (separator) item.addClass('separator')
622
+
623
+ ul.append(item)
624
+ separator = false
625
+ }
626
+ }, this));
627
+ } else if (typeof value == 'boolean' && value == true) {
628
+ ul.append( this.addButton(key, null, this.l[name][key]) )
629
+ }
630
+ }, this));
631
+
632
+ return button.append(ul)
633
+ }
634
+ }
635
+ })(jQuery);
636
+ (function( $ ) {
637
+ $.fn.imperavi = function(o) {
638
+ // Editor options
639
+ var o = $.extend({
640
+ language : 'ru', // TODO replace with $.fn.ImperaviLanguage
641
+ resizer : $.fn.ImperaviIframeResizer,
642
+ dialog : $.fn.ImperaviDialog,
643
+ overlay : $.fn.ImperaviOverlay,
644
+ iframe : $.fn.ImperaviIframe,
645
+ toolbar : $.fn.ImperaviToolbar,
646
+ delegator : $.fn.ImperaviActionDelegator,
647
+ options : {
648
+ dialog : {
649
+ title : 'Default title',
650
+ width : 500,
651
+ height : 300
652
+ }
653
+ }
654
+ }, o)
655
+
656
+ // Global options
657
+ $.fn.ImperaviOptions = function() { return o }
658
+
659
+ // Main object
660
+ $.fn.Imperavi = function(el) { this.initialize(el) }
661
+
662
+ $.fn.Imperavi.prototype = {
663
+ textarea : null,
664
+ iframe : null,
665
+ toolbar : null,
666
+ resizer : null,
667
+ delegator : null,
668
+
669
+ // Initialize imperavi
670
+ initialize: function(el) {
671
+ this.textarea = $(el)
672
+ this.build()
673
+ this.autosave()
674
+ },
675
+
676
+ build: function() {
677
+ // Delegate action to another object
678
+ this.delegator = new o.delegator
679
+
680
+ // Create iframe
681
+ this.iframe = new o.iframe(this.textarea, o)
682
+
683
+ // Create editor resizer
684
+ this.resizer = new o.resizer(this.iframe, o)
685
+
686
+ // Create toolbar
687
+ this.toolbar = new o.toolbar(this.iframe, {
688
+ onButtonClick : $.proxy(function(button) {
689
+ this.delegator.delegateButtonClick(button, this.iframe)
690
+ }, this)
691
+ })
692
+ },
693
+
694
+ autosave: function() {
695
+ // TODO: implement
696
+ }
697
+ }
698
+
699
+ // Apply imperavi for each selected element
700
+ return this.each(function() {
701
+ new $.fn.Imperavi(this)
702
+ })
703
+ }
704
+ })(jQuery);
705
+
706
+
707
+