mail_engine 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (452) hide show
  1. data/.yardoc/checksums +12 -11
  2. data/.yardoc/objects/ActionMailer.dat +0 -0
  3. data/.yardoc/objects/ActionMailer/Base.dat +0 -0
  4. data/.yardoc/objects/ActionMailer/Base/collect_responses_and_parts_order_i.dat +0 -0
  5. data/.yardoc/objects/ActionMailer/Base/mail_i.dat +0 -0
  6. data/.yardoc/objects/ActionMailer/Base/origin_mail_i.dat +0 -0
  7. data/.yardoc/objects/ActionMailer/Base/set_layout_and_partials_i.dat +0 -0
  8. data/.yardoc/objects/ActionMailer/Collector.dat +0 -0
  9. data/.yardoc/objects/ActionMailer/Collector/custom_i.dat +0 -0
  10. data/.yardoc/objects/MailEngine.dat +0 -0
  11. data/.yardoc/objects/MailEngine/ActsAsMailReceiver.dat +0 -0
  12. data/.yardoc/objects/MailEngine/ActsAsMailReceiver/ClassMethods.dat +0 -0
  13. data/.yardoc/objects/MailEngine/ActsAsMailReceiver/ClassMethods/acts_as_mail_receiver_i.dat +0 -0
  14. data/.yardoc/objects/MailEngine/ActsAsMailReceiver/ClassMethods/check_method_existance_21_i.dat +0 -0
  15. data/.yardoc/objects/MailEngine/Base.dat +0 -0
  16. data/.yardoc/objects/MailEngine/Base/_40_40configurations.dat +0 -0
  17. data/.yardoc/objects/MailEngine/Base/current_config_c.dat +0 -0
  18. data/.yardoc/objects/MailEngine/Base/send_marketing_mail_c.dat +0 -0
  19. data/.yardoc/objects/MailEngine/Configuration.dat +0 -0
  20. data/.yardoc/objects/MailEngine/Configuration/load_c.dat +0 -0
  21. data/.yardoc/objects/MailEngine/CopyMigrations.dat +0 -0
  22. data/.yardoc/objects/MailEngine/CopyMigrations/copy_migrations_i.dat +0 -0
  23. data/.yardoc/objects/MailEngine/CopyResources.dat +0 -0
  24. data/.yardoc/objects/MailEngine/CopyResources/copy_resources_i.dat +0 -0
  25. data/.yardoc/objects/MailEngine/CreateConfig.dat +0 -0
  26. data/.yardoc/objects/MailEngine/CreateConfig/create_config_file_i.dat +0 -0
  27. data/.yardoc/objects/MailEngine/Engine.dat +0 -0
  28. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer.dat +0 -0
  29. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/check_21_c.dat +0 -0
  30. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/get_resource_url_c.dat +0 -0
  31. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/process_c.dat +0 -0
  32. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/replace_resource_in_html_c.dat +0 -0
  33. data/.yardoc/objects/MailEngine/Install.dat +0 -0
  34. data/.yardoc/objects/MailEngine/Install/copy_migrations_i.dat +0 -0
  35. data/.yardoc/objects/MailEngine/Install/copy_resources_i.dat +0 -0
  36. data/.yardoc/objects/MailEngine/Install/create_config_i.dat +0 -0
  37. data/.yardoc/objects/MailEngine/MailLogSubscriber.dat +0 -0
  38. data/.yardoc/objects/MailEngine/MailLogSubscriber/deliver_i.dat +0 -0
  39. data/.yardoc/objects/MailEngine/PLACEHOLDERS_IN_LAYOUT.dat +0 -0
  40. data/.yardoc/objects/MailEngine/Sendgrid.dat +0 -0
  41. data/.yardoc/objects/MailEngine/Sendgrid/Base.dat +0 -0
  42. data/.yardoc/objects/MailEngine/Sendgrid/Base/ClassMethods.dat +0 -0
  43. data/.yardoc/objects/MailEngine/Sendgrid/Base/ClassMethods/sendgrid_header_i.dat +0 -0
  44. data/.yardoc/objects/MailEngine/Sendgrid/Base/InstanceMethods.dat +0 -0
  45. data/.yardoc/objects/MailEngine/Sendgrid/FilterSetting.dat +0 -0
  46. data/.yardoc/objects/MailEngine/Sendgrid/FilterSetting/data_3D_i.dat +0 -0
  47. data/.yardoc/objects/MailEngine/Sendgrid/FilterSetting/data_i.dat +0 -0
  48. data/.yardoc/objects/MailEngine/Sendgrid/FilterSetting/initialize_i.dat +0 -0
  49. data/.yardoc/objects/MailEngine/Sendgrid/FilterSetting/validate_config_21_i.dat +0 -0
  50. data/.yardoc/objects/MailEngine/Sendgrid/RestApi.dat +0 -0
  51. data/.yardoc/objects/MailEngine/Sendgrid/RestApi/blocks_c.dat +0 -0
  52. data/.yardoc/objects/MailEngine/Sendgrid/RestApi/bounces_c.dat +0 -0
  53. data/.yardoc/objects/MailEngine/Sendgrid/RestApi/invalidemails_c.dat +0 -0
  54. data/.yardoc/objects/MailEngine/Sendgrid/RestApi/spamreports_c.dat +0 -0
  55. data/.yardoc/objects/MailEngine/Sendgrid/RestApi/stats_c.dat +0 -0
  56. data/.yardoc/objects/MailEngine/Sendgrid/RestApiError.dat +0 -0
  57. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi.dat +0 -0
  58. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/add_sub_val_i.dat +0 -0
  59. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/add_to_i.dat +0 -0
  60. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/category_i.dat +0 -0
  61. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/filters_i.dat +0 -0
  62. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/initialize_i.dat +0 -0
  63. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/set_unique_args_i.dat +0 -0
  64. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/to_hash_i.dat +0 -0
  65. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/to_json_i.dat +0 -0
  66. data/.yardoc/objects/MailEngine/Sendgrid/SmtpApi/to_s_i.dat +0 -0
  67. data/.yardoc/objects/MailEngine/VERSION.dat +0 -0
  68. data/.yardoc/objects/MailEngine/ZipProcessor.dat +0 -0
  69. data/.yardoc/objects/MailEngine/ZipProcessor/extract_all_files_c.dat +0 -0
  70. data/.yardoc/objects/root.dat +0 -0
  71. data/Gemfile +16 -13
  72. data/Gemfile.lock +69 -46
  73. data/README.mkd +14 -2
  74. data/VERSION +1 -1
  75. data/app/controllers/mail_engine/application_controller.rb +4 -0
  76. data/app/controllers/mail_engine/mail_logs_controller.rb +1 -1
  77. data/app/controllers/mail_engine/mail_schedules_controller.rb +4 -4
  78. data/app/controllers/mail_engine/mail_template_files_controller.rb +4 -4
  79. data/app/controllers/mail_engine/mail_templates_controller.rb +16 -11
  80. data/app/controllers/mail_engine/reports_controller.rb +5 -1
  81. data/app/helpers/mail_engine/mail_engine_helper.rb +1 -1
  82. data/app/mailers/mail_engine/mail_dispatcher.rb +16 -9
  83. data/app/models/mail_engine/mail_log.rb +1 -1
  84. data/app/models/mail_engine/mail_schedule.rb +14 -12
  85. data/app/models/mail_engine/mail_template.rb +81 -55
  86. data/app/models/mail_engine/mail_template_file.rb +4 -3
  87. data/app/views/layouts/mail_engine/mail_engine.html.erb +31 -18
  88. data/app/views/layouts/mail_engine/simple.html.erb +14 -0
  89. data/app/views/mail_engine/dashboard/index.html.erb +18 -1
  90. data/app/views/mail_engine/mail_logs/_related_logs.html.erb +29 -0
  91. data/app/views/mail_engine/mail_logs/index.html.erb +5 -5
  92. data/app/views/mail_engine/mail_schedules/_form.html.erb +6 -5
  93. data/app/views/mail_engine/mail_schedules/index.html.erb +13 -8
  94. data/app/views/mail_engine/mail_schedules/show.html.erb +2 -0
  95. data/app/views/mail_engine/mail_template_files/_form.html.erb +20 -10
  96. data/app/views/mail_engine/mail_template_files/edit.html.erb +2 -0
  97. data/app/views/mail_engine/mail_template_files/new.html.erb +2 -0
  98. data/app/views/mail_engine/mail_templates/_form.html.erb +65 -12
  99. data/app/views/mail_engine/mail_templates/_layout_selector.html.erb +3 -3
  100. data/app/views/mail_engine/mail_templates/duplicate.html.erb +11 -7
  101. data/app/views/mail_engine/mail_templates/index.html.erb +25 -21
  102. data/app/views/mail_engine/mail_templates/new_by_upload.html.erb +11 -5
  103. data/app/views/mail_engine/mail_templates/partial_options.html.erb +2 -2
  104. data/app/views/mail_engine/mail_templates/show.html.erb +19 -29
  105. data/app/views/mail_engine/reports/charts/blocks.html.erb +2 -2
  106. data/app/views/mail_engine/reports/charts/bounces.html.erb +2 -2
  107. data/app/views/mail_engine/reports/charts/invalidemails.html.erb +2 -2
  108. data/app/views/mail_engine/reports/charts/spamreports.html.erb +2 -2
  109. data/app/views/mail_engine/reports/index.html.erb +40 -5
  110. data/config/routes.rb +5 -6
  111. data/db/migrate/20110114030841_create_table_mail_template.rb +1 -0
  112. data/doc/ActionMailer.html +108 -0
  113. data/doc/ActionMailer/Base.html +193 -0
  114. data/doc/ActionMailer/Collector.html +175 -0
  115. data/doc/MailEngine.html +146 -0
  116. data/doc/MailEngine/ActsAsMailReceiver.html +97 -0
  117. data/doc/MailEngine/ActsAsMailReceiver/ClassMethods.html +187 -0
  118. data/doc/MailEngine/Base.html +297 -0
  119. data/doc/MailEngine/Configuration.html +181 -0
  120. data/doc/MailEngine/CopyMigrations.html +187 -0
  121. data/doc/MailEngine/CopyResources.html +171 -0
  122. data/doc/MailEngine/CreateConfig.html +193 -0
  123. data/doc/MailEngine/CreateMigration.html +187 -0
  124. data/doc/MailEngine/Engine.html +100 -0
  125. data/doc/MailEngine/HtmlDocumentAssetsReplacer.html +397 -0
  126. data/doc/MailEngine/Install.html +273 -0
  127. data/doc/MailEngine/MailLogSubscriber.html +204 -0
  128. data/doc/MailEngine/Sendgrid.html +101 -0
  129. data/doc/MailEngine/Sendgrid/Base.html +97 -0
  130. data/doc/MailEngine/Sendgrid/Base/ClassMethods.html +150 -0
  131. data/doc/MailEngine/Sendgrid/Base/InstanceMethods.html +81 -0
  132. data/doc/MailEngine/Sendgrid/FilterSetting.html +257 -0
  133. data/doc/MailEngine/Sendgrid/RestApi.html +476 -0
  134. data/doc/MailEngine/Sendgrid/RestApiError.html +100 -0
  135. data/doc/MailEngine/Sendgrid/SmtpApi.html +604 -0
  136. data/doc/MailEngine/ZipProcessor.html +267 -0
  137. data/doc/_index.html +21 -7
  138. data/doc/class_list.html +1 -1
  139. data/doc/file.README.html +231 -0
  140. data/doc/index.html +231 -0
  141. data/doc/method_list.html +45 -21
  142. data/doc/top-level-namespace.html +88 -0
  143. data/lib/mail_engine.rb +7 -1
  144. data/lib/mail_engine/action_mailer_patch.rb +7 -0
  145. data/lib/mail_engine/acts_as_mail_receiver.rb +40 -6
  146. data/lib/mail_engine/base.rb +28 -7
  147. data/lib/mail_engine/configuration.rb +3 -0
  148. data/lib/mail_engine/engine.rb +5 -5
  149. data/lib/mail_engine/generators/{create_migration.rb → copy_migrations.rb} +4 -3
  150. data/lib/mail_engine/generators/copy_resources.rb +13 -0
  151. data/lib/mail_engine/generators/install.rb +21 -0
  152. data/lib/mail_engine/generators/templates/mail_engine_config.yml +10 -1
  153. data/lib/mail_engine/html_document_assets_replacer.rb +12 -23
  154. data/lib/mail_engine/mail_log_subscriber.rb +13 -5
  155. data/lib/mail_engine/zip_processor.rb +10 -1
  156. data/mail_engine.gemspec +336 -110
  157. data/public/images/mail_engine/header_and_footer_layout.png +0 -0
  158. data/public/images/mail_engine/icons/add.png +0 -0
  159. data/public/images/mail_engine/icons/copy.png +0 -0
  160. data/public/images/mail_engine/icons/delete.png +0 -0
  161. data/public/images/mail_engine/icons/edit.gif +0 -0
  162. data/public/images/mail_engine/icons/missing.png +0 -0
  163. data/public/images/mail_engine/icons/save.png +0 -0
  164. data/public/images/mail_engine/icons/show.png +0 -0
  165. data/public/images/mail_engine/logo.gif +0 -0
  166. data/public/images/mail_engine/logo.png +0 -0
  167. data/public/images/mail_engine/none_layout.png +0 -0
  168. data/public/images/mail_engine/only_footer_layout.png +0 -0
  169. data/public/images/mail_engine/unselect_header_and_footer_layout.png +0 -0
  170. data/public/images/mail_engine/unselect_none_layout.png +0 -0
  171. data/public/images/mail_engine/unselect_only_footer_layout.png +0 -0
  172. data/public/javascripts/mail_engine/fancybox/blank.gif +0 -0
  173. data/public/javascripts/mail_engine/fancybox/fancy_close.png +0 -0
  174. data/public/javascripts/mail_engine/fancybox/fancy_loading.png +0 -0
  175. data/public/javascripts/mail_engine/fancybox/fancy_nav_left.png +0 -0
  176. data/public/javascripts/mail_engine/fancybox/fancy_nav_right.png +0 -0
  177. data/public/javascripts/mail_engine/fancybox/fancy_shadow_e.png +0 -0
  178. data/public/javascripts/mail_engine/fancybox/fancy_shadow_n.png +0 -0
  179. data/public/javascripts/mail_engine/fancybox/fancy_shadow_ne.png +0 -0
  180. data/public/javascripts/mail_engine/fancybox/fancy_shadow_nw.png +0 -0
  181. data/public/javascripts/mail_engine/fancybox/fancy_shadow_s.png +0 -0
  182. data/public/javascripts/mail_engine/fancybox/fancy_shadow_se.png +0 -0
  183. data/public/javascripts/mail_engine/fancybox/fancy_shadow_sw.png +0 -0
  184. data/public/javascripts/mail_engine/fancybox/fancy_shadow_w.png +0 -0
  185. data/public/javascripts/mail_engine/fancybox/fancy_title_left.png +0 -0
  186. data/public/javascripts/mail_engine/fancybox/fancy_title_main.png +0 -0
  187. data/public/javascripts/mail_engine/fancybox/fancy_title_over.png +0 -0
  188. data/public/javascripts/mail_engine/fancybox/fancy_title_right.png +0 -0
  189. data/public/javascripts/mail_engine/fancybox/fancybox-x.png +0 -0
  190. data/public/javascripts/mail_engine/fancybox/fancybox-y.png +0 -0
  191. data/public/javascripts/mail_engine/fancybox/fancybox.png +0 -0
  192. data/public/javascripts/mail_engine/fancybox/jquery.easing-1.3.pack.js +72 -0
  193. data/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.css +359 -0
  194. data/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.js +1156 -0
  195. data/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.pack.js +46 -0
  196. data/public/javascripts/mail_engine/fancybox/jquery.mousewheel-3.0.4.pack.js +14 -0
  197. data/public/javascripts/mail_engine/jquery-ui.min.js +577 -0
  198. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/jquery.iframe-auto-height.plugin.js +0 -0
  199. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/jquery.string.js +0 -0
  200. data/{test/dummy/public/javascripts/mail_engine_application.js → public/javascripts/mail_engine/mail_engine.js} +0 -0
  201. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/jquery.markitup.js +0 -0
  202. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/bold.png +0 -0
  203. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/css.png +0 -0
  204. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/italic.png +0 -0
  205. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/picture.png +0 -0
  206. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/stroke.png +0 -0
  207. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/tag.png +0 -0
  208. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_align_center.png +0 -0
  209. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_align_justify.png +0 -0
  210. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_align_left.png +0 -0
  211. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_align_right.png +0 -0
  212. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_indent.png +0 -0
  213. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_letterspacing.png +0 -0
  214. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_linespacing.png +0 -0
  215. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_lowercase.png +0 -0
  216. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_padding_bottom.png +0 -0
  217. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_padding_left.png +0 -0
  218. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_padding_right.png +0 -0
  219. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_padding_top.png +0 -0
  220. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/images/text_uppercase.png +0 -0
  221. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/readme.txt +0 -0
  222. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/set.js +0 -0
  223. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/css/style.css +0 -0
  224. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/bold.png +0 -0
  225. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/clean.png +0 -0
  226. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/image.png +0 -0
  227. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/italic.png +0 -0
  228. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/link.png +0 -0
  229. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/picture.png +0 -0
  230. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/preview.png +0 -0
  231. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/images/stroke.png +0 -0
  232. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/set.js +0 -0
  233. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/default/style.css +0 -0
  234. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/bold.png +0 -0
  235. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/clean.png +0 -0
  236. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h1.png +0 -0
  237. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h2.png +0 -0
  238. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h3.png +0 -0
  239. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h4.png +0 -0
  240. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h5.png +0 -0
  241. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/h6.png +0 -0
  242. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/image.png +0 -0
  243. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/italic.png +0 -0
  244. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/link.png +0 -0
  245. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/list-bullet.png +0 -0
  246. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/list-item.png +0 -0
  247. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/list-numeric.png +0 -0
  248. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/paragraph.png +0 -0
  249. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/picture.png +0 -0
  250. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/preview.png +0 -0
  251. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/images/stroke.png +0 -0
  252. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/readme.txt +0 -0
  253. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/set.js +0 -0
  254. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/sets/html/style.css +0 -0
  255. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-container.png +0 -0
  256. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-bbcode.png +0 -0
  257. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-dotclear.png +0 -0
  258. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-html.png +0 -0
  259. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-json.png +0 -0
  260. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-markdown.png +0 -0
  261. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-textile.png +0 -0
  262. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-wiki.png +0 -0
  263. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor-xml.png +0 -0
  264. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/bg-editor.png +0 -0
  265. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/handle.png +0 -0
  266. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/menu.png +0 -0
  267. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/images/submenu.png +0 -0
  268. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/markitup/style.css +0 -0
  269. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/simple/images/handle.png +0 -0
  270. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/simple/images/menu.png +0 -0
  271. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/simple/images/submenu.png +0 -0
  272. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/skins/simple/style.css +0 -0
  273. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/templates/preview.css +0 -0
  274. data/{test/dummy/public/javascripts → public/javascripts/mail_engine}/markitup/templates/preview.html +0 -0
  275. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  276. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  277. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  278. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  279. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  280. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  281. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  282. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  283. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_222222_256x240.png +0 -0
  284. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  285. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_454545_256x240.png +0 -0
  286. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_888888_256x240.png +0 -0
  287. data/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  288. data/public/stylesheets/mail_engine/jquery-ui/smoothness/jquery-ui.css +544 -0
  289. data/{test/dummy/public/stylesheets → public/stylesheets/mail_engine}/style.css +6 -2
  290. data/test/dummy/app/controllers/application_controller.rb +0 -8
  291. data/test/dummy/app/models/user.rb +6 -4
  292. data/test/dummy/config/application.rb +2 -2
  293. data/test/dummy/config/database.yml +2 -2
  294. data/test/dummy/db/migrate/20110114030841_create_table_mail_template.rb +1 -0
  295. data/test/dummy/db/migrate/20110206025002_create_mail_logs.rb +1 -1
  296. data/test/dummy/db/schema.rb +1 -0
  297. data/test/dummy/public/images/mail_engine/icons/add.png +0 -0
  298. data/test/dummy/public/images/mail_engine/icons/copy.png +0 -0
  299. data/test/dummy/public/images/mail_engine/icons/delete.png +0 -0
  300. data/test/dummy/public/images/mail_engine/icons/edit.gif +0 -0
  301. data/test/dummy/public/images/mail_engine/icons/missing.png +0 -0
  302. data/test/dummy/public/images/mail_engine/icons/save.png +0 -0
  303. data/test/dummy/public/images/mail_engine/icons/show.png +0 -0
  304. data/test/dummy/public/javascripts/mail_engine/fancybox/blank.gif +0 -0
  305. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_close.png +0 -0
  306. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_loading.png +0 -0
  307. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_nav_left.png +0 -0
  308. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_nav_right.png +0 -0
  309. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_e.png +0 -0
  310. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_n.png +0 -0
  311. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_ne.png +0 -0
  312. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_nw.png +0 -0
  313. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_s.png +0 -0
  314. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_se.png +0 -0
  315. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_sw.png +0 -0
  316. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_shadow_w.png +0 -0
  317. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_title_left.png +0 -0
  318. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_title_main.png +0 -0
  319. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_title_over.png +0 -0
  320. data/test/dummy/public/javascripts/mail_engine/fancybox/fancy_title_right.png +0 -0
  321. data/test/dummy/public/javascripts/mail_engine/fancybox/fancybox-x.png +0 -0
  322. data/test/dummy/public/javascripts/mail_engine/fancybox/fancybox-y.png +0 -0
  323. data/test/dummy/public/javascripts/mail_engine/fancybox/fancybox.png +0 -0
  324. data/test/dummy/public/javascripts/mail_engine/fancybox/jquery.easing-1.3.pack.js +72 -0
  325. data/test/dummy/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.css +359 -0
  326. data/test/dummy/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.js +1156 -0
  327. data/test/dummy/public/javascripts/mail_engine/fancybox/jquery.fancybox-1.3.4.pack.js +46 -0
  328. data/test/dummy/public/javascripts/mail_engine/fancybox/jquery.mousewheel-3.0.4.pack.js +14 -0
  329. data/test/dummy/public/javascripts/mail_engine/jquery-ui.min.js +577 -0
  330. data/test/dummy/public/javascripts/mail_engine/jquery.iframe-auto-height.plugin.js +50 -0
  331. data/test/dummy/public/javascripts/mail_engine/jquery.string.js +425 -0
  332. data/test/dummy/public/javascripts/mail_engine/mail_engine.js +2 -0
  333. data/test/dummy/public/javascripts/mail_engine/markitup/jquery.markitup.js +564 -0
  334. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/bold.png +0 -0
  335. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/css.png +0 -0
  336. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/italic.png +0 -0
  337. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/picture.png +0 -0
  338. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/stroke.png +0 -0
  339. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/tag.png +0 -0
  340. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_align_center.png +0 -0
  341. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_align_justify.png +0 -0
  342. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_align_left.png +0 -0
  343. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_align_right.png +0 -0
  344. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_indent.png +0 -0
  345. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_letterspacing.png +0 -0
  346. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_linespacing.png +0 -0
  347. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_lowercase.png +0 -0
  348. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_padding_bottom.png +0 -0
  349. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_padding_left.png +0 -0
  350. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_padding_right.png +0 -0
  351. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_padding_top.png +0 -0
  352. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/images/text_uppercase.png +0 -0
  353. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/readme.txt +28 -0
  354. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/set.js +52 -0
  355. data/test/dummy/public/javascripts/mail_engine/markitup/sets/css/style.css +72 -0
  356. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/bold.png +0 -0
  357. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/clean.png +0 -0
  358. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/image.png +0 -0
  359. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/italic.png +0 -0
  360. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/link.png +0 -0
  361. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/picture.png +0 -0
  362. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/preview.png +0 -0
  363. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/images/stroke.png +0 -0
  364. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/set.js +27 -0
  365. data/test/dummy/public/javascripts/mail_engine/markitup/sets/default/style.css +27 -0
  366. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/bold.png +0 -0
  367. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/clean.png +0 -0
  368. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h1.png +0 -0
  369. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h2.png +0 -0
  370. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h3.png +0 -0
  371. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h4.png +0 -0
  372. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h5.png +0 -0
  373. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/h6.png +0 -0
  374. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/image.png +0 -0
  375. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/italic.png +0 -0
  376. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/link.png +0 -0
  377. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/list-bullet.png +0 -0
  378. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/list-item.png +0 -0
  379. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/list-numeric.png +0 -0
  380. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/paragraph.png +0 -0
  381. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/picture.png +0 -0
  382. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/preview.png +0 -0
  383. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/images/stroke.png +0 -0
  384. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/readme.txt +11 -0
  385. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/set.js +40 -0
  386. data/test/dummy/public/javascripts/mail_engine/markitup/sets/html/style.css +59 -0
  387. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-container.png +0 -0
  388. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-bbcode.png +0 -0
  389. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-dotclear.png +0 -0
  390. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-html.png +0 -0
  391. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-json.png +0 -0
  392. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-markdown.png +0 -0
  393. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-textile.png +0 -0
  394. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-wiki.png +0 -0
  395. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor-xml.png +0 -0
  396. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/bg-editor.png +0 -0
  397. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/handle.png +0 -0
  398. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/menu.png +0 -0
  399. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/images/submenu.png +0 -0
  400. data/test/dummy/public/javascripts/mail_engine/markitup/skins/markitup/style.css +147 -0
  401. data/test/dummy/public/javascripts/mail_engine/markitup/skins/simple/images/handle.png +0 -0
  402. data/test/dummy/public/javascripts/mail_engine/markitup/skins/simple/images/menu.png +0 -0
  403. data/test/dummy/public/javascripts/mail_engine/markitup/skins/simple/images/submenu.png +0 -0
  404. data/test/dummy/public/javascripts/mail_engine/markitup/skins/simple/style.css +118 -0
  405. data/test/dummy/public/javascripts/mail_engine/markitup/templates/preview.css +5 -0
  406. data/test/dummy/public/javascripts/mail_engine/markitup/templates/preview.html +11 -0
  407. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  408. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  409. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  410. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  411. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  412. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  413. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  414. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  415. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_222222_256x240.png +0 -0
  416. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  417. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_454545_256x240.png +0 -0
  418. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_888888_256x240.png +0 -0
  419. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  420. data/test/dummy/public/stylesheets/mail_engine/jquery-ui/smoothness/jquery-ui.css +544 -0
  421. data/test/dummy/public/stylesheets/mail_engine/style.css +685 -0
  422. data/test/factories.rb +31 -4
  423. data/test/functional/mail_engine/{mail_schedules_controller_controller_test.rb → dashboard_controller_test.rb} +2 -2
  424. data/test/functional/mail_engine/{mail_templates_controller_controller_test.rb → mail_logs_controller_test.rb} +2 -2
  425. data/test/functional/mail_engine/mail_schedules_controller_test.rb +8 -0
  426. data/test/functional/mail_engine/mail_template_files_controller_test.rb +8 -0
  427. data/test/functional/mail_engine/mail_templates_controller_test.rb +8 -0
  428. data/test/functional/mail_engine/reports_controller_test.rb +8 -0
  429. data/test/functional/user_mailer_test.rb +14 -0
  430. data/test/test_helper.rb +4 -1
  431. data/test/unit/mail_engine/mail_log_test.rb +1 -1
  432. data/test/unit/mail_engine/mail_schedule_test.rb +34 -1
  433. data/test/unit/mail_engine/mail_template_test.rb +51 -12
  434. data/test/unit/user_test.rb +20 -0
  435. metadata +370 -125
  436. data/.yardoc/objects/MailEngine/Base/send_mail_c.dat +0 -0
  437. data/.yardoc/objects/MailEngine/CreateMigration.dat +0 -0
  438. data/.yardoc/objects/MailEngine/CreateMigration/create_migrations_i.dat +0 -0
  439. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/replace_resource_filename_in_html_c.dat +0 -0
  440. data/.yardoc/objects/MailEngine/HtmlDocumentAssetsReplacer/replace_resource_url_in_html_c.dat +0 -0
  441. data/.yardoc/objects/PLACEHOLDERS_IN_LAYOUT.dat +0 -0
  442. data/lib/mail_engine/placeholders_in_layout.rb +0 -5
  443. data/test/dummy/public/javascripts/jquery.nyroModal/img/ajaxLoader.gif +0 -0
  444. data/test/dummy/public/javascripts/jquery.nyroModal/img/close.gif +0 -0
  445. data/test/dummy/public/javascripts/jquery.nyroModal/img/next.gif +0 -0
  446. data/test/dummy/public/javascripts/jquery.nyroModal/img/prev.gif +0 -0
  447. data/test/dummy/public/javascripts/jquery.nyroModal/js/jquery.nyroModal-ie6.js +0 -186
  448. data/test/dummy/public/javascripts/jquery.nyroModal/js/jquery.nyroModal-ie6.min.js +0 -9
  449. data/test/dummy/public/javascripts/jquery.nyroModal/js/jquery.nyroModal.custom.js +0 -1599
  450. data/test/dummy/public/javascripts/jquery.nyroModal/js/jquery.nyroModal.custom.min.js +0 -34
  451. data/test/dummy/public/javascripts/jquery.nyroModal/styles/nyroModal.css +0 -102
  452. data/test/dummy/public/stylesheets/.gitkeep +0 -0
@@ -0,0 +1,267 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta name="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>Class: MailEngine::ZipProcessor</title>
7
+ <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
8
+ <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
9
+
10
+ <script type="text/javascript" charset="utf-8">
11
+ relpath = '..';
12
+ if (relpath != '') relpath += '/';
13
+ </script>
14
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
15
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
16
+
17
+ </head>
18
+ <body>
19
+ <script type="text/javascript" charset="utf-8">
20
+ if (window.top.frames.main) document.body.className = 'frames';
21
+ </script>
22
+
23
+ <div id="header">
24
+ <div id="menu">
25
+
26
+ <a href="../_index.html">Index (Z)</a> &raquo;
27
+ <span class='title'><span class='object_link'><a href="../MailEngine.html" title="MailEngine (module)">MailEngine</a></span></span>
28
+ &raquo;
29
+ <span class="title">ZipProcessor</span>
30
+
31
+
32
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
33
+ </div>
34
+
35
+ <div id="search">
36
+ <a id="class_list_link" href="#">Class List</a>
37
+ <a id="method_list_link" href="#">Method List</a>
38
+ <a id ="file_list_link" href="#">File List</a>
39
+ </div>
40
+
41
+ <div class="clear"></div>
42
+ </div>
43
+
44
+ <iframe id="search_frame"></iframe>
45
+
46
+ <div id="content"><h1>Class: MailEngine::ZipProcessor
47
+
48
+
49
+
50
+ </h1>
51
+
52
+ <dl class="box">
53
+
54
+ <dt class="r1">Inherits:</dt>
55
+ <dd class="r1">
56
+ <span class="inheritName">Object</span>
57
+
58
+ <ul class="fullTree">
59
+ <li>Object</li>
60
+
61
+ <li class="next">MailEngine::ZipProcessor</li>
62
+
63
+ </ul>
64
+ <a href="#" class="inheritanceTree">show all</a>
65
+
66
+ </dd>
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+ <dt class="r2 last">Defined in:</dt>
77
+ <dd class="r2 last">lib/mail_engine/zip_processor.rb</dd>
78
+
79
+ </dl>
80
+ <div class="clear"></div>
81
+
82
+
83
+
84
+
85
+
86
+ <h2>
87
+ Class Method Summary
88
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
89
+ </h2>
90
+
91
+ <ul class="summary">
92
+
93
+ <li class="public ">
94
+ <span class="summary_signature">
95
+
96
+ <a href="#extract_all_files-class_method" title="extract_all_files (class method)">+ (Object) <strong>extract_all_files</strong>(zip_file_path, needed_exts) </a>
97
+
98
+
99
+
100
+ </span>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ <span class="summary_desc"><div class='inline'><p>
110
+ Usage: MailEngine::ZipProcessor.extract_all_files(path, [&quot;css&quot;,
111
+ &quot;jpg&quot;, &quot;gif&quot;]) do |file_path|.
112
+ </p>
113
+ </div></span>
114
+
115
+ </li>
116
+
117
+
118
+ </ul>
119
+
120
+
121
+
122
+
123
+ <div id="class_method_details" class="method_details_list">
124
+ <h2>Class Method Details</h2>
125
+
126
+
127
+ <div class="method_details first">
128
+ <p class="signature first" id="extract_all_files-class_method">
129
+
130
+ + (<tt>Object</tt>) <strong>extract_all_files</strong>(zip_file_path, needed_exts)
131
+
132
+
133
+
134
+ </p><div class="docstring">
135
+ <div class="discussion">
136
+ <p>
137
+ Usage: MailEngine::ZipProcessor.extract_all_files(path, [&quot;css&quot;,
138
+ &quot;jpg&quot;, &quot;gif&quot;]) do |file_path|
139
+ </p>
140
+ <pre class="code">
141
+ <span class='Image constant id'>Image</span><span class='dot token'>.</span><span class='create identifier id'>create</span> <span class='symbol val'>:file</span> <span class='assign token'>=</span><span class='gt op'>&gt;</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='open identifier id'>open</span><span class='lparen token'>(</span><span class='file_path identifier id'>file_path</span><span class='rparen token'>)</span>
142
+ </pre>
143
+ <p>
144
+ end
145
+ </p>
146
+ <p>
147
+ Params: zip_file_path =&gt; /path/to/your/zip_file needed_exts =&gt;
148
+ [&#8216;jpg&#8217;, &#8216;jpeg&#8217;, &#8216;css&#8217;]
149
+ </p>
150
+ <p>
151
+ Result: the first item of array is file paths you needed and extracted from
152
+ zip file. the second item is the unzip path.
153
+ </p>
154
+ <p>
155
+ [
156
+ </p>
157
+ <pre class="code">
158
+ <span class='lbrack token'>[</span>
159
+ <span class='string val'>&quot;/Volumes/documents/projects/work/mail_engine/test/dummy/tmp/zip_processor_tmp_dir/compress_by_dir9671920/compress_by_file/css/example.css&quot;</span><span class='comma token'>,</span>
160
+ <span class='string val'>&quot;/Volumes/documents/projects/work/mail_engine/test/dummy/tmp/zip_processor_tmp_dir/compress_by_dir9671920/compress_by_file/images/logo.png&quot;</span><span class='comma token'>,</span>
161
+ <span class='string val'>&quot;/Volumes/documents/projects/work/mail_engine/test/dummy/tmp/zip_processor_tmp_dir/compress_by_dir9671920/compress_by_file/index.html&quot;</span>
162
+ <span class='rbrack token'>]</span><span class='comma token'>,</span>
163
+ <span class='string val'>&quot;/Volumes/documents/projects/work/mail_engine/test/dummy/tmp/zip_processor_tmp_dir/compress_by_dir9671920&quot;</span>
164
+ </pre>
165
+ <p>
166
+ ]
167
+ </p>
168
+
169
+
170
+ </div>
171
+ </div>
172
+ <div class="tags">
173
+
174
+ </div><table class="source_code">
175
+ <tr>
176
+ <td>
177
+ <pre class="lines">
178
+
179
+
180
+ 25
181
+ 26
182
+ 27
183
+ 28
184
+ 29
185
+ 30
186
+ 31
187
+ 32
188
+ 33
189
+ 34
190
+ 35
191
+ 36
192
+ 37
193
+ 38
194
+ 39
195
+ 40
196
+ 41
197
+ 42
198
+ 43
199
+ 44
200
+ 45
201
+ 46
202
+ 47
203
+ 48
204
+ 49
205
+ 50
206
+ 51
207
+ 52
208
+ 53
209
+ 54
210
+ 55
211
+ 56
212
+ 57</pre>
213
+ </td>
214
+ <td>
215
+ <pre class="code"><span class="info file"># File 'lib/mail_engine/zip_processor.rb', line 25</span>
216
+
217
+ <span class='def def kw'>def</span> <span class='extract_all_files identifier id'>extract_all_files</span><span class='lparen token'>(</span><span class='zip_file_path identifier id'>zip_file_path</span><span class='comma token'>,</span> <span class='needed_exts identifier id'>needed_exts</span><span class='rparen token'>)</span>
218
+ <span class='return return kw'>return</span> <span class='unless unless_mod kw'>unless</span> <span class='zip_file_path identifier id'>zip_file_path</span> <span class='match op'>=~</span> <span class='regexp val'>/\.zip$/i</span>
219
+
220
+ <span class='comment val'># Create zip_processor_tmp_dir dir</span>
221
+ <span class='zip_processor_tmp_dir identifier id'>zip_processor_tmp_dir</span> <span class='assign token'>=</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='Rails constant id'>Rails</span><span class='dot token'>.</span><span class='root identifier id'>root</span><span class='comma token'>,</span> <span class='string val'>'tmp'</span><span class='comma token'>,</span> <span class='string val'>'zip_processor_tmp_dir'</span><span class='rparen token'>)</span>
222
+ <span class='unless unless kw'>unless</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='exist? fid id'>exist?</span><span class='lparen token'>(</span><span class='zip_processor_tmp_dir identifier id'>zip_processor_tmp_dir</span><span class='rparen token'>)</span>
223
+ <span class='FileUtils constant id'>FileUtils</span><span class='dot token'>.</span><span class='mkdir_p identifier id'>mkdir_p</span><span class='lparen token'>(</span><span class='zip_processor_tmp_dir identifier id'>zip_processor_tmp_dir</span><span class='rparen token'>)</span>
224
+ <span class='end end kw'>end</span>
225
+
226
+ <span class='file_fullname identifier id'>file_fullname</span> <span class='assign token'>=</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='basename identifier id'>basename</span><span class='lparen token'>(</span><span class='zip_file_path identifier id'>zip_file_path</span><span class='rparen token'>)</span>
227
+ <span class='filename identifier id'>filename</span> <span class='assign token'>=</span> <span class='file_fullname identifier id'>file_fullname</span><span class='dot token'>.</span><span class='sub identifier id'>sub</span><span class='lparen token'>(</span><span class='regexp val'>/.zip$/</span><span class='comma token'>,</span> <span class='string val'>&quot;&quot;</span><span class='rparen token'>)</span>
228
+ <span class='unzip_path identifier id'>unzip_path</span> <span class='assign token'>=</span> <span class='File constant id'>File</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='zip_processor_tmp_dir identifier id'>zip_processor_tmp_dir</span><span class='comma token'>,</span> <span class='dstring node'>&quot;#{filename}#{rand(10000000)}&quot;</span><span class='rparen token'>)</span>
229
+
230
+ <span class='unzip_result identifier id'>unzip_result</span> <span class='assign token'>=</span> <span class='system identifier id'>system</span><span class='lparen token'>(</span><span class='dstring node'>&quot;unzip #{zip_file_path} -d #{unzip_path} &gt; /dev/null&quot;</span><span class='rparen token'>)</span>
231
+ <span class='unzip_result identifier id'>unzip_result</span> <span class='assign token'>=</span> <span class='unzip_result identifier id'>unzip_result</span> <span class='andop op'>&amp;&amp;</span> <span class='$? gvar id'>$?</span><span class='dot token'>.</span><span class='exitstatus identifier id'>exitstatus</span> <span class='eq op'>==</span> <span class='integer val'>0</span>
232
+
233
+ <span class='return return kw'>return</span> <span class='unless unless_mod kw'>unless</span> <span class='unzip_result identifier id'>unzip_result</span>
234
+
235
+ <span class='file_ext_param_str identifier id'>file_ext_param_str</span> <span class='assign token'>=</span> <span class='needed_exts identifier id'>needed_exts</span><span class='dot token'>.</span><span class='map identifier id'>map</span> <span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='ext identifier id'>ext</span><span class='bitor op'>|</span> <span class='dstring node'>&quot;-iname '*.#{ext}'&quot;</span> <span class='rbrace token'>}</span><span class='dot token'>.</span><span class='join identifier id'>join</span><span class='lparen token'>(</span><span class='string val'>&quot; -o &quot;</span><span class='rparen token'>)</span>
236
+
237
+ <span class='result_list_string identifier id'>result_list_string</span> <span class='assign token'>=</span> <span class='dxstring node'>`find #{unzip_path} #{file_ext_param_str}`</span>
238
+ <span class='result_list identifier id'>result_list</span> <span class='assign token'>=</span> <span class='result_list_string identifier id'>result_list_string</span><span class='dot token'>.</span><span class='split identifier id'>split</span><span class='lparen token'>(</span><span class='string val'>&quot;\n&quot;</span><span class='rparen token'>)</span>
239
+
240
+ <span class='if if kw'>if</span> <span class='block_given? fid id'>block_given?</span>
241
+ <span class='result_list identifier id'>result_list</span><span class='dot token'>.</span><span class='each identifier id'>each</span> <span class='do do kw'>do</span> <span class='bitor op'>|</span><span class='file_path identifier id'>file_path</span><span class='bitor op'>|</span>
242
+ <span class='yield yield kw'>yield</span> <span class='file_path identifier id'>file_path</span>
243
+ <span class='end end kw'>end</span>
244
+ <span class='comment val'># remove the unzip tmp files.</span>
245
+ <span class='system identifier id'>system</span><span class='lparen token'>(</span><span class='dstring node'>&quot;rm -rf #{unzip_path}&quot;</span><span class='rparen token'>)</span>
246
+ <span class='else else kw'>else</span>
247
+ <span class='lbrack token'>[</span><span class='result_list identifier id'>result_list</span><span class='comma token'>,</span> <span class='unzip_path identifier id'>unzip_path</span><span class='rbrack token'>]</span>
248
+ <span class='end end kw'>end</span>
249
+ <span class='end end kw'>end</span>
250
+ </pre>
251
+ </td>
252
+ </tr>
253
+ </table>
254
+ </div>
255
+
256
+ </div>
257
+
258
+ </div>
259
+
260
+ <div id="footer">
261
+ Generated on Fri Mar 4 00:23:20 2011 by
262
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
263
+ 0.6.4 (ruby-1.8.7).
264
+ </div>
265
+
266
+ </body>
267
+ </html>
data/doc/_index.html CHANGED
@@ -121,16 +121,16 @@
121
121
  <ul>
122
122
 
123
123
  <li>
124
- <span class='object_link'><a href="MailEngine/Sendgrid/Base/ClassMethods.html" title="MailEngine::Sendgrid::Base::ClassMethods (module)">ClassMethods</a></span>
124
+ <span class='object_link'><a href="MailEngine/ActsAsMailReceiver/ClassMethods.html" title="MailEngine::ActsAsMailReceiver::ClassMethods (module)">ClassMethods</a></span>
125
125
 
126
- <small>(MailEngine::Sendgrid::Base)</small>
126
+ <small>(MailEngine::ActsAsMailReceiver)</small>
127
127
 
128
128
  </li>
129
129
 
130
130
  <li>
131
- <span class='object_link'><a href="MailEngine/ActsAsMailReceiver/ClassMethods.html" title="MailEngine::ActsAsMailReceiver::ClassMethods (module)">ClassMethods</a></span>
131
+ <span class='object_link'><a href="MailEngine/Sendgrid/Base/ClassMethods.html" title="MailEngine::Sendgrid::Base::ClassMethods (module)">ClassMethods</a></span>
132
132
 
133
- <small>(MailEngine::ActsAsMailReceiver)</small>
133
+ <small>(MailEngine::Sendgrid::Base)</small>
134
134
 
135
135
  </li>
136
136
 
@@ -149,14 +149,21 @@
149
149
  </li>
150
150
 
151
151
  <li>
152
- <span class='object_link'><a href="MailEngine/CreateConfig.html" title="MailEngine::CreateConfig (class)">CreateConfig</a></span>
152
+ <span class='object_link'><a href="MailEngine/CopyMigrations.html" title="MailEngine::CopyMigrations (class)">CopyMigrations</a></span>
153
+
154
+ <small>(MailEngine)</small>
155
+
156
+ </li>
157
+
158
+ <li>
159
+ <span class='object_link'><a href="MailEngine/CopyResources.html" title="MailEngine::CopyResources (class)">CopyResources</a></span>
153
160
 
154
161
  <small>(MailEngine)</small>
155
162
 
156
163
  </li>
157
164
 
158
165
  <li>
159
- <span class='object_link'><a href="MailEngine/CreateMigration.html" title="MailEngine::CreateMigration (class)">CreateMigration</a></span>
166
+ <span class='object_link'><a href="MailEngine/CreateConfig.html" title="MailEngine::CreateConfig (class)">CreateConfig</a></span>
160
167
 
161
168
  <small>(MailEngine)</small>
162
169
 
@@ -215,6 +222,13 @@
215
222
  <li class="letter">I</li>
216
223
  <ul>
217
224
 
225
+ <li>
226
+ <span class='object_link'><a href="MailEngine/Install.html" title="MailEngine::Install (class)">Install</a></span>
227
+
228
+ <small>(MailEngine)</small>
229
+
230
+ </li>
231
+
218
232
  <li>
219
233
  <span class='object_link'><a href="MailEngine/Sendgrid/Base/InstanceMethods.html" title="MailEngine::Sendgrid::Base::InstanceMethods (module)">InstanceMethods</a></span>
220
234
 
@@ -313,7 +327,7 @@
313
327
  </div></div>
314
328
 
315
329
  <div id="footer">
316
- Generated on Fri Feb 25 18:06:27 2011 by
330
+ Generated on Fri Mar 4 00:23:18 2011 by
317
331
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
318
332
  0.6.4 (ruby-1.8.7).
319
333
  </div>
data/doc/class_list.html CHANGED
@@ -27,7 +27,7 @@
27
27
 
28
28
  <ul id="full_list" class="class">
29
29
  <li><span class='object_link'><a href="top-level-namespace.html" title=" (root)">Top Level Namespace</a></span></li>
30
- <li><a class='toggle'></a> <span class='object_link'><a href="ActionMailer.html" title="ActionMailer (module)">ActionMailer</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="ActionMailer/Base.html" title="ActionMailer::Base (class)">Base</a></span> &lt; Object<small class='search_info'>ActionMailer</small></li><li><span class='object_link'><a href="ActionMailer/Collector.html" title="ActionMailer::Collector (class)">Collector</a></span> &lt; Object<small class='search_info'>ActionMailer</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine.html" title="MailEngine (module)">MailEngine</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/ActsAsMailReceiver.html" title="MailEngine::ActsAsMailReceiver (module)">ActsAsMailReceiver</a></span><small class='search_info'>MailEngine</small></li><ul><li><span class='object_link'><a href="MailEngine/ActsAsMailReceiver/ClassMethods.html" title="MailEngine::ActsAsMailReceiver::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>MailEngine::ActsAsMailReceiver</small></li></ul><li><span class='object_link'><a href="MailEngine/Base.html" title="MailEngine::Base (class)">Base</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/Configuration.html" title="MailEngine::Configuration (class)">Configuration</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/CreateConfig.html" title="MailEngine::CreateConfig (class)">CreateConfig</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/CreateMigration.html" title="MailEngine::CreateMigration (class)">CreateMigration</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/Engine.html" title="MailEngine::Engine (class)">Engine</a></span> &lt; Engine<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/HtmlDocumentAssetsReplacer.html" title="MailEngine::HtmlDocumentAssetsReplacer (class)">HtmlDocumentAssetsReplacer</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/MailLogSubscriber.html" title="MailEngine::MailLogSubscriber (class)">MailLogSubscriber</a></span> &lt; LogSubscriber<small class='search_info'>MailEngine</small></li><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/Sendgrid.html" title="MailEngine::Sendgrid (module)">Sendgrid</a></span><small class='search_info'>MailEngine</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/Sendgrid/Base.html" title="MailEngine::Sendgrid::Base (module)">Base</a></span><small class='search_info'>MailEngine::Sendgrid</small></li><ul><li><span class='object_link'><a href="MailEngine/Sendgrid/Base/ClassMethods.html" title="MailEngine::Sendgrid::Base::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>MailEngine::Sendgrid::Base</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/Base/InstanceMethods.html" title="MailEngine::Sendgrid::Base::InstanceMethods (module)">InstanceMethods</a></span><small class='search_info'>MailEngine::Sendgrid::Base</small></li></ul><li><span class='object_link'><a href="MailEngine/Sendgrid/FilterSetting.html" title="MailEngine::Sendgrid::FilterSetting (class)">FilterSetting</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/RestApi.html" title="MailEngine::Sendgrid::RestApi (class)">RestApi</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/RestApiError.html" title="MailEngine::Sendgrid::RestApiError (class)">RestApiError</a></span> &lt; StandardError<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/SmtpApi.html" title="MailEngine::Sendgrid::SmtpApi (class)">SmtpApi</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li></ul><li><span class='object_link'><a href="MailEngine/ZipProcessor.html" title="MailEngine::ZipProcessor (class)">ZipProcessor</a></span> &lt; Object<small class='search_info'>MailEngine</small></li></ul>
30
+ <li><a class='toggle'></a> <span class='object_link'><a href="ActionMailer.html" title="ActionMailer (module)">ActionMailer</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><span class='object_link'><a href="ActionMailer/Base.html" title="ActionMailer::Base (class)">Base</a></span> &lt; Object<small class='search_info'>ActionMailer</small></li><li><span class='object_link'><a href="ActionMailer/Collector.html" title="ActionMailer::Collector (class)">Collector</a></span> &lt; Object<small class='search_info'>ActionMailer</small></li></ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine.html" title="MailEngine (module)">MailEngine</a></span><small class='search_info'>Top Level Namespace</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/ActsAsMailReceiver.html" title="MailEngine::ActsAsMailReceiver (module)">ActsAsMailReceiver</a></span><small class='search_info'>MailEngine</small></li><ul><li><span class='object_link'><a href="MailEngine/ActsAsMailReceiver/ClassMethods.html" title="MailEngine::ActsAsMailReceiver::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>MailEngine::ActsAsMailReceiver</small></li></ul><li><span class='object_link'><a href="MailEngine/Base.html" title="MailEngine::Base (class)">Base</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/Configuration.html" title="MailEngine::Configuration (class)">Configuration</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/CopyMigrations.html" title="MailEngine::CopyMigrations (class)">CopyMigrations</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/CopyResources.html" title="MailEngine::CopyResources (class)">CopyResources</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/CreateConfig.html" title="MailEngine::CreateConfig (class)">CreateConfig</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/Engine.html" title="MailEngine::Engine (class)">Engine</a></span> &lt; Engine<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/HtmlDocumentAssetsReplacer.html" title="MailEngine::HtmlDocumentAssetsReplacer (class)">HtmlDocumentAssetsReplacer</a></span> &lt; Object<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/Install.html" title="MailEngine::Install (class)">Install</a></span> &lt; Base<small class='search_info'>MailEngine</small></li><li><span class='object_link'><a href="MailEngine/MailLogSubscriber.html" title="MailEngine::MailLogSubscriber (class)">MailLogSubscriber</a></span> &lt; LogSubscriber<small class='search_info'>MailEngine</small></li><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/Sendgrid.html" title="MailEngine::Sendgrid (module)">Sendgrid</a></span><small class='search_info'>MailEngine</small></li><ul><li><a class='toggle'></a> <span class='object_link'><a href="MailEngine/Sendgrid/Base.html" title="MailEngine::Sendgrid::Base (module)">Base</a></span><small class='search_info'>MailEngine::Sendgrid</small></li><ul><li><span class='object_link'><a href="MailEngine/Sendgrid/Base/ClassMethods.html" title="MailEngine::Sendgrid::Base::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>MailEngine::Sendgrid::Base</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/Base/InstanceMethods.html" title="MailEngine::Sendgrid::Base::InstanceMethods (module)">InstanceMethods</a></span><small class='search_info'>MailEngine::Sendgrid::Base</small></li></ul><li><span class='object_link'><a href="MailEngine/Sendgrid/FilterSetting.html" title="MailEngine::Sendgrid::FilterSetting (class)">FilterSetting</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/RestApi.html" title="MailEngine::Sendgrid::RestApi (class)">RestApi</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/RestApiError.html" title="MailEngine::Sendgrid::RestApiError (class)">RestApiError</a></span> &lt; StandardError<small class='search_info'>MailEngine::Sendgrid</small></li><li><span class='object_link'><a href="MailEngine/Sendgrid/SmtpApi.html" title="MailEngine::Sendgrid::SmtpApi (class)">SmtpApi</a></span> &lt; Object<small class='search_info'>MailEngine::Sendgrid</small></li></ul><li><span class='object_link'><a href="MailEngine/ZipProcessor.html" title="MailEngine::ZipProcessor (class)">ZipProcessor</a></span> &lt; Object<small class='search_info'>MailEngine</small></li></ul>
31
31
 
32
32
  </ul>
33
33
  </div>
@@ -0,0 +1,231 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta name="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>Documentation by YARD 0.6.4</title>
7
+ <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
+
10
+ <script type="text/javascript" charset="utf-8">
11
+ relpath = '';
12
+ if (relpath != '') relpath += '/';
13
+ </script>
14
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
+
17
+ </head>
18
+ <body>
19
+ <script type="text/javascript" charset="utf-8">
20
+ if (window.top.frames.main) document.body.className = 'frames';
21
+ </script>
22
+
23
+ <div id="header">
24
+ <div id="menu">
25
+
26
+ <a href="_index.html" title="Index">Index</a> &raquo;
27
+ <span class="title">File: README</span>
28
+
29
+
30
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
31
+ </div>
32
+
33
+ <div id="search">
34
+ <a id="class_list_link" href="#">Class List</a>
35
+ <a id="method_list_link" href="#">Method List</a>
36
+ <a id ="file_list_link" href="#">File List</a>
37
+ </div>
38
+
39
+ <div class="clear"></div>
40
+ </div>
41
+
42
+ <iframe id="search_frame"></iframe>
43
+
44
+ <div id="content"><div id='filecontents'><h1>Why Mail Engine</h1>
45
+
46
+ <ol>
47
+ <li>Don't need to export and import your system data to any other mail systems(like mailchimp, mad_mimi).</li>
48
+ <li>Allow user to edit all email templates directly in system admin, save the time of developer to participate in.</li>
49
+ <li>Allow user to add mail sending schedule directly in system admin, don't need developer to add
50
+ them into code or deploy crontab at server each time when client have new request.</li>
51
+ <li>Fully take advantage of the convenience of loading any system data to mail template. In the past,
52
+ like using mailchimp, you have to store everything into user list, then you are able to load that into
53
+ mail template, it increased the complexity of maintaining information in another system.</li>
54
+ <li>If you want to trace your mail, like open rate, click rate and unsubscribe rate, we provide Sendgrid
55
+ integration configuration to take advantage that system. (More information at http://sendgrid.com)</li>
56
+ <li>Allow logging all sent mails, you can check which mail been sent to which user.</li>
57
+ <li>You can know send the email to the active users, so that you don't need to waste your credits of sendgrid or amazon.</li>
58
+ </ol>
59
+
60
+
61
+ <h1>Problem when using third party mail system</h1>
62
+
63
+ <p>We are using mailchimp mostly for the newsletter solution, but it's has many problems that we have to make a new mail engine
64
+ to fit our needs in real project:</p>
65
+
66
+ <ol>
67
+ <li>It is only one newsletter or marketing mail solution, so for system mail, it can do nothing, so for system mail we still go the original way (put them in the rails project.)</li>
68
+ <li>Mailchimp don't support other encode for mail, when sending japanese or chinese mail it will be failed.</li>
69
+ <li>It doesn't support localization, so different language is different campaign, you need to set a lot config for each of them.</li>
70
+ <li>Manage user list is awkward, it even can't create list by API, so you have to create list one by one by hand.</li>
71
+ <li>It can't load other user personal or customized data from system into mail, like latest unchecked news or messages, it's very limited to load info from user list record.</li>
72
+ <li>It doesn't support reusable partials, which like you hope to put a fixed content of footer or header.</li>
73
+ <li>It doesn't support recurring mail sending.</li>
74
+ </ol>
75
+
76
+
77
+ <h1>Installation</h1>
78
+
79
+ <p><strong> Step 1: </strong></p>
80
+
81
+ <pre class="code"><span class='gem identifier id'>gem</span> <span class='install identifier id'>install</span> <span class='mail_engine identifier id'>mail_engine</span>
82
+ </pre>
83
+
84
+ <p><strong> Step 2: </strong></p>
85
+
86
+ <p>Add management page needed javascript lib and css files, migration files and mail<em>engine</em>config.yml under config directory.</p>
87
+
88
+ <pre class="code"><span class='rails identifier id'>rails</span> <span class='g identifier id'>g</span> <span class='mail_engine identifier id'>mail_engine</span><span class='symbol val'>:install</span>
89
+ </pre>
90
+
91
+ <p><strong> Step 3: </strong></p>
92
+
93
+ <p>Run migration.</p>
94
+
95
+ <pre class="code"><span class='rake identifier id'>rake</span> <span class='db identifier id'>db</span><span class='symbol val'>:migrate</span>
96
+ </pre>
97
+
98
+ <p><strong> Step 4: </strong></p>
99
+
100
+ <p>Add below line to the crontab list of your sever:</p>
101
+
102
+ <pre class="code"><span class='comment val'>### check mail schedule for every 15 minutes ###</span>
103
+ <span class='mult op'>*</span><span class='regexp val'>/4 * * * * sh -c &quot;cd /</span><span class='path identifier id'>path</span><span class='div op'>/</span><span class='to identifier id'>to</span><span class='div op'>/</span><span class='your identifier id'>your</span><span class='div op'>/</span><span class='system identifier id'>system</span> <span class='andop op'>&amp;&amp;</span> <span class='rake identifier id'>rake</span> <span class='mail_engine identifier id'>mail_engine</span><span class='symbol val'>:sendmail</span> <span class='RAILS_ENV constant id'>RAILS_ENV</span><span class='assign token'>=</span><span class='production identifier id'>production</span><span class='string val'>&quot;
104
+ </span></pre>
105
+
106
+ <h1>Usage</h1>
107
+
108
+ <p><strong> For System Mail: </strong></p>
109
+
110
+ <p>Due to the sender of system mail is ActionMailer, so you just need to set template physical store path (e.g. user_mailer/notify)
111
+ as the mailer template load path, system will load it from database. (Notice, database template will
112
+ override your file template.)</p>
113
+
114
+ <p>Mail Engine use Liquid template engine, so you can read the Liquid Reference at http://www.liquidmarkup.org/</p>
115
+
116
+ <p>Steps:</p>
117
+
118
+ <ol>
119
+ <li>Create a template in mail engine.</li>
120
+ </ol>
121
+
122
+
123
+ <p><strong> For Marketing Mail: </strong></p>
124
+
125
+ <p>For normal marketing mails are quite simple in logic, so don't need logic code in the mail template.
126
+ So we provide a mail dispatcher which allows user can send marketing mail only by providing the template and
127
+ select the data pre-defined in system to the mail template, don't need developer to do anything like adding mailer file.</p>
128
+
129
+ <p>Steps:</p>
130
+
131
+ <ol>
132
+ <li>Create a mail tempate in mail engine.</li>
133
+ <li>Create a sending schedule record. (You can specify the users to receive this mail, total sending count,
134
+ sending period, when start to deliver the first mail and load which data into this template, You also can set
135
+ condition for the scheduler, like if no specified data in collection, don't send the mail.)</li>
136
+ </ol>
137
+
138
+
139
+ <p>You also can send mail in your program by using:
140
+ MailEngine::MailDispatcher.marketing mail template name(:to => "Michael he <a href="&#x6d;&#x61;&#x69;&#108;&#x74;&#111;&#58;&#x68;&#108;&#x78;&#119;&#x65;&#108;&#108;&#x40;&#103;&#109;&#97;&#x69;&#x6c;&#x2e;&#99;&#x6f;&#109;">&#x68;&#108;&#x78;&#x77;&#x65;&#108;&#x6c;&#64;&#x67;&#109;&#x61;&#105;&#108;&#x2e;&#99;&#x6f;&#109;</a>", :values => => "Michael He").deliver</p>
141
+
142
+ <h1>Screenshots</h1>
143
+
144
+ <h2>Dashboard</h2>
145
+
146
+ <p>Shows the latest report.</p>
147
+
148
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/dashboard.png" title="Dashboard" alt="Dashboard" /></p>
149
+
150
+ <h2>Template Management</h2>
151
+
152
+ <p>You can manage the template used in your system, including:</p>
153
+
154
+ <ol>
155
+ <li>System mail, has it's own action mailer file.</li>
156
+ <li>Marketing mail, simple logic and without it's own action mailer.</li>
157
+ <li>Partials, you can reused it in any other templates.</li>
158
+ </ol>
159
+
160
+
161
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/templates.png" title="Template Management" alt="Template Management" /></p>
162
+
163
+ <h2>Template editing Page</h2>
164
+
165
+ <p>You can see here are many details you can change:</p>
166
+
167
+ <ol>
168
+ <li>Template Path, system action mailer can find it when lookup mail template.</li>
169
+ <li>Locale</li>
170
+ <li>Format</li>
171
+ <li>Layout</li>
172
+ <li>Files will used in the template.</li>
173
+ <li>Zip File when you used at creating this template.</li>
174
+ <li>Preview template in time.</li>
175
+ </ol>
176
+
177
+
178
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/editing_mail_template.png" title="Template editing Preview" alt="Template editing Preview" /></p>
179
+
180
+ <h2>Upload html template with image in a zip file</h2>
181
+
182
+ <p>You can create a template by uplaoding a zip file including one html and other images or css files.</p>
183
+
184
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/new_by_upload.png" title="Upload html template with image in a zip file." alt="Upload html template with image in a zip file.&quot;)" /></p>
185
+
186
+ <h2>Partial and Layout selection</h2>
187
+
188
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/select_layout_partial.png" title="Partial and Layout selection" alt="Partial and Layout selection" /></p>
189
+
190
+ <h2>Mail Schedule</h2>
191
+
192
+ <p>You can set a mail sending schedule, here are some useful setting items:</p>
193
+
194
+ <ol>
195
+ <li>Marketing Mail Template.</li>
196
+ <li>User Group will be received this mail.</li>
197
+ <li>Total send count.</li>
198
+ <li>Already send count.</li>
199
+ <li>Sending Period.</li>
200
+ <li>Payloads which load from user model and send to template when sending.</li>
201
+ <li>First send date time, this date will indicate when this mail will be send first time, and according to the seding period it will resend at the same time after one period.</li>
202
+ <li>You can set requirements, which been predefined in the system, let the mail not been sent if the requirements is unreached.</li>
203
+ </ol>
204
+
205
+
206
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/schedule.png" title="Mail Schedule" alt="Mail Schedule" /></p>
207
+
208
+ <h2>Mail Logs</h2>
209
+
210
+ <p>It will log all mails' content been sent, you can turn it off in config file.</p>
211
+
212
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/logs.png" title="Mail Logs" alt="Mail Logs" /></p>
213
+
214
+ <h2>Report</h2>
215
+
216
+ <p>Shows detail chart and data list of mail sending stats.</p>
217
+
218
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/reports.png" title="Report" alt="Report" /></p>
219
+
220
+ <h2>Bounce Report</h2>
221
+
222
+ <p><img src="https://github.com/hlxwell/mail-engine/raw/master/screenshots/bounce_report.png" title="Bounce Report" alt="Bounce Report" /></p></div></div>
223
+
224
+ <div id="footer">
225
+ Generated on Fri Mar 4 00:23:18 2011 by
226
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
227
+ 0.6.4 (ruby-1.8.7).
228
+ </div>
229
+
230
+ </body>
231
+ </html>