pwb 1.0.0 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (367) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/assets/javascripts/comfy/admin/cms/custom.js.coffee +1 -0
  4. data/app/assets/stylesheets/comfy/admin/cms/custom.sass +1 -0
  5. data/app/assets/stylesheets/pwb/themes/berlin/inmo.scss +6 -1
  6. data/app/assets/stylesheets/pwb/themes/berlin/main.scss +12 -11
  7. data/app/assets/stylesheets/pwb/themes/default/shame.scss +1 -1
  8. data/app/controllers/pwb/admin_panel_controller.rb +2 -2
  9. data/app/controllers/pwb/api/v1/cms_pages_controller.rb +102 -0
  10. data/app/controllers/pwb/api/v1/website_controller.rb +7 -0
  11. data/app/controllers/pwb/api_public/v1/props_controller.rb +2 -2
  12. data/app/controllers/pwb/application_api_controller.rb +3 -7
  13. data/app/controllers/pwb/application_controller.rb +2 -3
  14. data/app/controllers/pwb/comfy_controller.rb +106 -0
  15. data/app/controllers/pwb/css_controller.rb +1 -2
  16. data/app/controllers/pwb/devise/registrations_controller.rb +2 -5
  17. data/app/controllers/pwb/devise_controller.rb +3 -8
  18. data/app/controllers/pwb/export/properties_controller.rb +5 -6
  19. data/app/controllers/pwb/export/translations_controller.rb +1 -5
  20. data/app/controllers/pwb/export/web_contents_controller.rb +1 -4
  21. data/app/controllers/pwb/export/website_controller.rb +0 -1
  22. data/app/controllers/pwb/import/mls_controller.rb +3 -6
  23. data/app/controllers/pwb/import/properties_controller.rb +2 -4
  24. data/app/controllers/pwb/import/scrapper_controller.rb +6 -9
  25. data/app/controllers/pwb/props_controller.rb +10 -13
  26. data/app/controllers/pwb/search_controller.rb +16 -16
  27. data/app/controllers/pwb/sections_controller.rb +21 -22
  28. data/app/controllers/pwb/welcome_controller.rb +1 -2
  29. data/app/helpers/pwb/application_helper.rb +37 -0
  30. data/app/helpers/pwb/css_helper.rb +9 -0
  31. data/app/models/pwb/cms_page_container.rb +9 -0
  32. data/app/models/pwb/content.rb +10 -6
  33. data/app/models/pwb/prop.rb +12 -4
  34. data/app/models/pwb/section.rb +1 -1
  35. data/app/models/pwb/website.rb +14 -1
  36. data/app/resources/pwb/api/v1/cms_block_resource.rb +11 -0
  37. data/app/resources/pwb/api/v1/cms_page_resource.rb +27 -0
  38. data/app/themes/berlin/views/layouts/pwb/application.html.erb +25 -9
  39. data/app/themes/berlin/views/pwb/props/show.html.erb +5 -5
  40. data/app/themes/berlin/views/pwb/search/_search_results.html.erb +2 -1
  41. data/app/themes/berlin/views/pwb/search/buy.html.erb +1 -1
  42. data/app/themes/berlin/views/pwb/search/rent.html.erb +2 -1
  43. data/app/themes/berlin/views/pwb/sections/about_us.html.erb +3 -2
  44. data/app/themes/berlin/views/pwb/sections/cms.html.erb +34 -0
  45. data/app/themes/berlin/views/pwb/sections/contact_us.html.erb +2 -1
  46. data/app/themes/berlin/views/pwb/welcome/_about_us_to_del.html.erb +35 -0
  47. data/app/themes/berlin/views/pwb/welcome/{_adv_search.html.erb → _adv_search_to_del.html.erb} +0 -0
  48. data/app/themes/berlin/views/pwb/welcome/_landing_carousel.html.erb +1 -1
  49. data/app/themes/berlin/views/pwb/welcome/_latest_properties.html.erb +2 -1
  50. data/app/themes/default/views/layouts/pwb/application.html.erb +24 -3
  51. data/app/themes/default/views/pwb/sections/about_us.html.erb +1 -2
  52. data/app/themes/default/views/pwb/sections/cms.html.erb +30 -0
  53. data/app/themes/default/views/pwb/welcome/_single_property_row.html.erb +2 -1
  54. data/app/themes/default/views/pwb/welcome/index.html.erb +3 -1
  55. data/app/views/layouts/pwb/devise.html.erb +1 -0
  56. data/app/views/pwb/_analytics.html.erb +15 -0
  57. data/app/views/pwb/_footer.html.erb +0 -12
  58. data/app/views/pwb/custom_css/{berlin.css.erb → _berlin.css.erb} +0 -1
  59. data/app/views/pwb/custom_css/{default.css.erb → _default.css.erb} +0 -1
  60. data/app/views/pwb/custom_css/_shared.css.erb +1 -0
  61. data/app/views/pwb/props/_images_section_carousel.html.erb +13 -27
  62. data/app/views/pwb/props/_prop_info_list.html.erb +1 -1
  63. data/app/views/pwb/search/_search_result_item.html.erb +62 -64
  64. data/app/views/pwb/search/_search_result_item_to_del.html.erb +3 -3
  65. data/config/client_setups/default.json +59 -21
  66. data/config/cms_page_containers/about-us.json +18 -0
  67. data/config/cms_page_containers/about.json +107 -0
  68. data/config/cms_page_containers/landing.json +19 -0
  69. data/config/cms_page_containers/legal.json +17 -0
  70. data/config/cms_page_containers/sell.json +96 -0
  71. data/config/initializers/cloudinary.rb +3 -0
  72. data/config/initializers/comfortable_mexican_sofa.rb +142 -0
  73. data/config/locales/admin.en.yml +213 -0
  74. data/config/locales/admin.es.yml +32 -17
  75. data/config/locales/admin.ru.yml +432 -0
  76. data/config/locales/admin.zh.yml.tmp +226 -0
  77. data/config/locales/de.yml +31 -32
  78. data/config/locales/devise.zh-HK.yml +119 -0
  79. data/config/locales/en.yml +3 -0
  80. data/config/locales/es.yml +3 -5
  81. data/config/locales/rails.zh-HK.yml +210 -0
  82. data/config/locales/ru.yml +11 -11
  83. data/config/locales/zh-HK.yml +154 -0
  84. data/config/routes.rb +17 -2
  85. data/db/cms_fixtures/cms/categories/pages.yml +3 -0
  86. data/db/cms_fixtures/cms/files/_rerenting-landing_framed.png.yml +6 -0
  87. data/{spec/dummy/public/system/comfy/cms/files/files/000/000/003/original → db/cms_fixtures/cms/files}/rerenting-landing_framed.png +0 -0
  88. data/db/cms_fixtures/cms/layouts/about-us/attributes.yml +4 -0
  89. data/db/cms_fixtures/cms/layouts/about-us/content.html +0 -0
  90. data/db/cms_fixtures/cms/layouts/about-us/javascript.js +0 -0
  91. data/db/cms_fixtures/cms/layouts/about-us/people/attributes.yml +4 -0
  92. data/db/cms_fixtures/cms/layouts/about-us/people/content.html +55 -0
  93. data/db/cms_fixtures/cms/layouts/about-us/services/attributes.yml +4 -0
  94. data/db/cms_fixtures/cms/layouts/about-us/services/content.html +32 -0
  95. data/db/cms_fixtures/cms/layouts/about-us/services/javascript.js +0 -0
  96. data/db/cms_fixtures/cms/layouts/about-us/services/stylesheet.css +0 -0
  97. data/db/cms_fixtures/cms/layouts/about-us/stylesheet.css +0 -0
  98. data/db/cms_fixtures/cms/layouts/default-layout/attributes.yml +4 -0
  99. data/db/cms_fixtures/cms/layouts/default-layout/content.html +51 -0
  100. data/db/cms_fixtures/cms/layouts/default-layout/javascript.js +0 -0
  101. data/db/cms_fixtures/cms/layouts/default-layout/stylesheet.css +0 -0
  102. data/db/cms_fixtures/cms/pages/index/about-us/attributes.yml +8 -0
  103. data/db/cms_fixtures/cms/pages/index/about-us/people/attributes.yml +8 -0
  104. data/db/cms_fixtures/cms/pages/index/about-us/people/de/attributes.yml +8 -0
  105. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_a.html +1 -0
  106. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_b.html +1 -0
  107. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_c.html +1 -0
  108. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_d.html +1 -0
  109. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_a.html +1 -0
  110. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_b.html +1 -0
  111. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_c.html +1 -0
  112. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_d.html +1 -0
  113. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_a.html +1 -0
  114. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_b.html +1 -0
  115. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_c.html +1 -0
  116. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_d.html +1 -0
  117. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_a.html +1 -0
  118. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_b.html +1 -0
  119. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_c.html +1 -0
  120. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_d.html +1 -0
  121. data/db/cms_fixtures/cms/pages/index/about-us/people/en/attributes.yml +8 -0
  122. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_a.html +1 -0
  123. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_b.html +1 -0
  124. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_c.html +1 -0
  125. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_d.html +1 -0
  126. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_a.html +1 -0
  127. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_b.html +1 -0
  128. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_c.html +1 -0
  129. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_d.html +1 -0
  130. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_a.html +1 -0
  131. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_b.html +1 -0
  132. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_c.html +1 -0
  133. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_d.html +1 -0
  134. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_a.html +1 -0
  135. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_b.html +1 -0
  136. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_c.html +1 -0
  137. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_d.html +1 -0
  138. data/db/cms_fixtures/cms/pages/index/about-us/people/es/attributes.yml +8 -0
  139. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_a.html +1 -0
  140. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_b.html +1 -0
  141. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_c.html +1 -0
  142. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_d.html +1 -0
  143. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_a.html +1 -0
  144. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_b.html +1 -0
  145. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_c.html +1 -0
  146. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_d.html +1 -0
  147. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_a.html +1 -0
  148. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_b.html +1 -0
  149. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_c.html +1 -0
  150. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_d.html +1 -0
  151. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_a.html +1 -0
  152. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_b.html +1 -0
  153. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_c.html +1 -0
  154. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_d.html +1 -0
  155. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/attributes.yml +8 -0
  156. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_a.html +1 -0
  157. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_b.html +1 -0
  158. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_c.html +1 -0
  159. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_d.html +1 -0
  160. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_a.html +1 -0
  161. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_b.html +1 -0
  162. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_c.html +1 -0
  163. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_d.html +1 -0
  164. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_a.html +1 -0
  165. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_b.html +1 -0
  166. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_c.html +1 -0
  167. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_d.html +1 -0
  168. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/attributes.yml +8 -0
  169. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_a.html +1 -0
  170. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_b.html +1 -0
  171. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_c.html +1 -0
  172. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_d.html +1 -0
  173. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_a.html +1 -0
  174. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_b.html +1 -0
  175. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_c.html +1 -0
  176. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_d.html +1 -0
  177. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_a.html +1 -0
  178. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_b.html +1 -0
  179. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_c.html +1 -0
  180. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_d.html +1 -0
  181. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_a.html +1 -0
  182. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_b.html +1 -0
  183. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_c.html +1 -0
  184. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_d.html +1 -0
  185. data/db/cms_fixtures/cms/pages/index/about-us/services/attributes.yml +8 -0
  186. data/db/cms_fixtures/cms/pages/index/about-us/services/content_a.html +1 -0
  187. data/db/cms_fixtures/cms/pages/index/about-us/services/content_b.html +0 -0
  188. data/db/cms_fixtures/cms/pages/index/about-us/services/content_c.html +0 -0
  189. data/db/cms_fixtures/cms/pages/index/about-us/services/de/attributes.yml +8 -0
  190. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_a.html +1 -0
  191. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_b.html +1 -0
  192. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_c.html +1 -0
  193. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_a.html +1 -0
  194. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_b.html +1 -0
  195. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_c.html +1 -0
  196. data/db/cms_fixtures/cms/pages/index/about-us/services/en/attributes.yml +8 -0
  197. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_a.html +1 -0
  198. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_b.html +1 -0
  199. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_c.html +1 -0
  200. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_a.html +1 -0
  201. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_b.html +1 -0
  202. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_c.html +1 -0
  203. data/db/cms_fixtures/cms/pages/index/about-us/services/es/attributes.yml +8 -0
  204. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_a.html +1 -0
  205. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_b.html +1 -0
  206. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_c.html +1 -0
  207. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_a.html +1 -0
  208. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_b.html +1 -0
  209. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_c.html +1 -0
  210. data/db/cms_fixtures/cms/pages/index/about-us/services/title_a.html +1 -0
  211. data/db/cms_fixtures/cms/pages/index/about-us/services/title_b.html +0 -0
  212. data/db/cms_fixtures/cms/pages/index/about-us/services/title_c.html +0 -0
  213. data/db/cms_fixtures/cms/pages/index/attributes.yml +8 -0
  214. data/db/cms_fixtures/cms/pages/index/content.html +1 -0
  215. data/db/cms_fixtures/cms/pages/index/title.html +0 -0
  216. data/db/cms_fixtures/cms/snippets/snippet1/attributes.yml +3 -0
  217. data/db/cms_fixtures/cms/snippets/snippet1/content.html +1 -0
  218. data/db/cms_fixtures/sample-site/categories/files.yml +1 -0
  219. data/db/cms_fixtures/sample-site/categories/pages.yml +1 -0
  220. data/db/cms_fixtures/sample-site/categories/snippets.yml +1 -0
  221. data/db/cms_fixtures/sample-site/files/_sample.jpg.yml +5 -0
  222. data/db/cms_fixtures/sample-site/files/sample.jpg +0 -0
  223. data/db/cms_fixtures/sample-site/layouts/default/attributes.yml +1 -0
  224. data/db/cms_fixtures/sample-site/layouts/default/content.html +5 -0
  225. data/db/cms_fixtures/sample-site/layouts/default/javascript.js +1 -0
  226. data/db/cms_fixtures/sample-site/layouts/default/nested/attributes.yml +2 -0
  227. data/db/cms_fixtures/sample-site/layouts/default/nested/content.haml +3 -0
  228. data/db/cms_fixtures/sample-site/layouts/default/nested/javascript.js +1 -0
  229. data/db/cms_fixtures/sample-site/layouts/default/nested/stylesheet.css +1 -0
  230. data/db/cms_fixtures/sample-site/layouts/default/stylesheet.css +1 -0
  231. data/db/cms_fixtures/sample-site/pages/index/attributes.yml +6 -0
  232. data/db/cms_fixtures/sample-site/pages/index/child/attributes.yml +3 -0
  233. data/db/cms_fixtures/sample-site/pages/index/child/left.haml +1 -0
  234. data/db/cms_fixtures/sample-site/pages/index/child/right.html +1 -0
  235. data/db/cms_fixtures/sample-site/pages/index/child/thumbnail.png +0 -0
  236. data/db/cms_fixtures/sample-site/pages/index/content.html +2 -0
  237. data/db/cms_fixtures/sample-site/snippets/default/attributes.yml +4 -0
  238. data/db/cms_fixtures/sample-site/snippets/default/content.html +1 -0
  239. data/db/migrate/20170513221300_create_cms.rb +133 -0
  240. data/db/seeds/spain/translations.rb +2 -2
  241. data/db/seeds/translations_ca.rb +92 -0
  242. data/db/seeds/translations_de.rb +86 -85
  243. data/db/seeds/translations_en.rb +73 -73
  244. data/db/seeds/translations_es.rb +79 -78
  245. data/db/seeds/translations_ru.rb +92 -0
  246. data/db/yml_seeds/prop/flat_for_rent.yml +4 -4
  247. data/db/yml_seeds/sections.yml +2 -2
  248. data/db/yml_seeds/website.yml +3 -1
  249. data/lib/pwb/cms_data_loader.rb +38 -0
  250. data/lib/pwb/engine.rb +1 -0
  251. data/lib/pwb/locale_loader.rb +47 -0
  252. data/lib/pwb/seeder.rb +8 -5
  253. data/lib/pwb/version.rb +1 -1
  254. data/lib/tasks/pwb_tasks.rake +1 -0
  255. data/spec/dummy/config/routes.rb +5 -0
  256. data/spec/dummy/config/secrets.yml +5 -0
  257. data/spec/dummy/db/schema.rb +111 -1
  258. data/spec/dummy/log/development.log +0 -0
  259. data/spec/features/pwb/admin_spec.rb +14 -40
  260. data/spec/features/pwb/admin_spec_tmp.rb +54 -0
  261. data/spec/fixtures/to_import/pwb-properties.csv +2 -2
  262. data/spec/views/pwb/application_layout.html.erb_spec.rb +1 -0
  263. metadata +207 -235
  264. data/app/themes/berlin/views/pwb/welcome/_about_us.html.erb +0 -36
  265. data/db/seeds/translations_others.rb +0 -215
  266. data/spec/dummy/public/assets/application-af04b226fd7202dfc532ce7aedb95a0128277937e90d3b3a3d35e1cce9e16886.css +0 -16
  267. data/spec/dummy/public/assets/application-af04b226fd7202dfc532ce7aedb95a0128277937e90d3b3a3d35e1cce9e16886.css.gz +0 -0
  268. data/spec/dummy/public/assets/application-ec8550e416fd8df1557ddb7f132ccd38baaafd36e4c5c9aff8420fbd47c0313f.js +0 -617
  269. data/spec/dummy/public/assets/application-ec8550e416fd8df1557ddb7f132ccd38baaafd36e4c5c9aff8420fbd47c0313f.js.gz +0 -0
  270. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot +0 -0
  271. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot.gz +0 -0
  272. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg +0 -288
  273. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg.gz +0 -0
  274. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742.woff +0 -0
  275. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf +0 -0
  276. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf.gz +0 -0
  277. data/spec/dummy/public/assets/bootstrap/glyphicons-halflings-regular-fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c.woff2 +0 -0
  278. data/spec/dummy/public/assets/pwb/application-0dc6ff845cde8e032ed365593c17fe09c18a6966d44f551946bf1673d8d1ac51.css +0 -13
  279. data/spec/dummy/public/assets/pwb/application-0dc6ff845cde8e032ed365593c17fe09c18a6966d44f551946bf1673d8d1ac51.css.gz +0 -0
  280. data/spec/dummy/public/assets/pwb/application-b4df8e7ae7700a0d09d88175af77e7f457ca2fbe15ae08450551ebf3bfb0c4d1.js +0 -15656
  281. data/spec/dummy/public/assets/pwb/application-b4df8e7ae7700a0d09d88175af77e7f457ca2fbe15ae08450551ebf3bfb0c4d1.js.gz +0 -0
  282. data/spec/dummy/public/assets/pwb/themes/berlin-279c2e3a7fa11a902fdee83a6819dcc315ff8eb240cfad21b1322cedadb07ea7.js +0 -18690
  283. data/spec/dummy/public/assets/pwb/themes/berlin-279c2e3a7fa11a902fdee83a6819dcc315ff8eb240cfad21b1322cedadb07ea7.js.gz +0 -0
  284. data/spec/dummy/public/assets/pwb/themes/berlin-8038d5cfd670e73fbffb581f6bb8d8c00ac448957945622c5c34438c467d218b.css +0 -8582
  285. data/spec/dummy/public/assets/pwb/themes/berlin-8038d5cfd670e73fbffb581f6bb8d8c00ac448957945622c5c34438c467d218b.css.gz +0 -0
  286. data/spec/dummy/public/assets/pwb/themes/chic-facdff61de4827adfd797b6a36ffd6c8b432072df7190ed722d039f971caa539.css +0 -3500
  287. data/spec/dummy/public/assets/pwb/themes/chic-facdff61de4827adfd797b6a36ffd6c8b432072df7190ed722d039f971caa539.css.gz +0 -0
  288. data/spec/dummy/public/assets/pwb/themes/default-d697fb0c278f500986e614ddd7eb41fd7db502a54f3370b3e8166cc1714509d0.css +0 -8423
  289. data/spec/dummy/public/assets/pwb/themes/default-d697fb0c278f500986e614ddd7eb41fd7db502a54f3370b3e8166cc1714509d0.css.gz +0 -0
  290. data/spec/dummy/public/assets/pwb_admin_panel/application-2d624898965d7a347eb7f365feab34257032c25051633370811ed7dfd24d7c8c.js +0 -61
  291. data/spec/dummy/public/assets/pwb_admin_panel/application-2d624898965d7a347eb7f365feab34257032c25051633370811ed7dfd24d7c8c.js.gz +0 -0
  292. data/spec/dummy/public/assets/pwb_admin_panel/application-f0e38d58d1ce32501b22edd16697f45b561fa44b5be9265398a05e8dee169885.css +0 -17970
  293. data/spec/dummy/public/assets/pwb_admin_panel/application-f0e38d58d1ce32501b22edd16697f45b561fa44b5be9265398a05e8dee169885.css.gz +0 -0
  294. data/spec/dummy/public/img/about-us.png +0 -0
  295. data/spec/dummy/public/img/agents/agent-1.png +0 -0
  296. data/spec/dummy/public/img/agents/agent-3.png +0 -0
  297. data/spec/dummy/public/img/agents/agent-4.png +0 -0
  298. data/spec/dummy/public/img/agents/agent-5.png +0 -0
  299. data/spec/dummy/public/img/banner-ads.jpg +0 -0
  300. data/spec/dummy/public/img/blog-img-1.jpg +0 -0
  301. data/spec/dummy/public/img/blog-img-2.jpg +0 -0
  302. data/spec/dummy/public/img/blog-img-3.jpg +0 -0
  303. data/spec/dummy/public/img/client-brand-1.png +0 -0
  304. data/spec/dummy/public/img/client-brand-2.png +0 -0
  305. data/spec/dummy/public/img/client-brand-3.png +0 -0
  306. data/spec/dummy/public/img/client-brand-4.png +0 -0
  307. data/spec/dummy/public/img/client-brand-5.png +0 -0
  308. data/spec/dummy/public/img/favicon.ico +0 -0
  309. data/spec/dummy/public/img/gallery/big/1.jpg +0 -0
  310. data/spec/dummy/public/img/gallery/big/10.jpg +0 -0
  311. data/spec/dummy/public/img/gallery/big/11 - Copy.jpg +0 -0
  312. data/spec/dummy/public/img/gallery/big/12.jpg +0 -0
  313. data/spec/dummy/public/img/gallery/big/2.jpg +0 -0
  314. data/spec/dummy/public/img/gallery/big/3.jpg +0 -0
  315. data/spec/dummy/public/img/gallery/big/4.jpg +0 -0
  316. data/spec/dummy/public/img/gallery/big/5.jpg +0 -0
  317. data/spec/dummy/public/img/gallery/big/6.jpg +0 -0
  318. data/spec/dummy/public/img/gallery/big/7.jpg +0 -0
  319. data/spec/dummy/public/img/gallery/big/8.jpg +0 -0
  320. data/spec/dummy/public/img/gallery/big/9.jpg +0 -0
  321. data/spec/dummy/public/img/gallery/fancybox_buttons.png +0 -0
  322. data/spec/dummy/public/img/gallery/fancybox_loading.gif +0 -0
  323. data/spec/dummy/public/img/gallery/fancybox_loading@2x.gif +0 -0
  324. data/spec/dummy/public/img/gallery/fancybox_overlay.png +0 -0
  325. data/spec/dummy/public/img/gallery/fancybox_sprite.png +0 -0
  326. data/spec/dummy/public/img/gallery/fancybox_sprite@2x.png +0 -0
  327. data/spec/dummy/public/img/gallery/small/1.jpg +0 -0
  328. data/spec/dummy/public/img/gallery/small/10.jpg +0 -0
  329. data/spec/dummy/public/img/gallery/small/11.jpg +0 -0
  330. data/spec/dummy/public/img/gallery/small/12.jpg +0 -0
  331. data/spec/dummy/public/img/gallery/small/2.jpg +0 -0
  332. data/spec/dummy/public/img/gallery/small/3.jpg +0 -0
  333. data/spec/dummy/public/img/gallery/small/4.jpg +0 -0
  334. data/spec/dummy/public/img/gallery/small/5.jpg +0 -0
  335. data/spec/dummy/public/img/gallery/small/6.jpg +0 -0
  336. data/spec/dummy/public/img/gallery/small/7.jpg +0 -0
  337. data/spec/dummy/public/img/gallery/small/8.jpg +0 -0
  338. data/spec/dummy/public/img/gallery/small/9.jpg +0 -0
  339. data/spec/dummy/public/img/item/1.jpg +0 -0
  340. data/spec/dummy/public/img/item/2.jpg +0 -0
  341. data/spec/dummy/public/img/item/3.jpg +0 -0
  342. data/spec/dummy/public/img/item/4.jpg +0 -0
  343. data/spec/dummy/public/img/item/5.jpg +0 -0
  344. data/spec/dummy/public/img/item/6.jpg +0 -0
  345. data/spec/dummy/public/img/logo.png +0 -0
  346. data/spec/dummy/public/img/promo-banner.jpg +0 -0
  347. data/spec/dummy/public/img/property-header-bg.jpg +0 -0
  348. data/spec/dummy/public/img/property-view-2.jpg +0 -0
  349. data/spec/dummy/public/img/signin-bg.jpg +0 -0
  350. data/spec/dummy/public/img/slider/1.jpg +0 -0
  351. data/spec/dummy/public/img/slider/2.jpg +0 -0
  352. data/spec/dummy/public/img/slider/3.jpg +0 -0
  353. data/spec/dummy/public/img/slider/4.jpg +0 -0
  354. data/spec/dummy/public/img/slider/5.jpg +0 -0
  355. data/spec/dummy/public/img/slider/6.jpg +0 -0
  356. data/spec/dummy/public/img/testimonial-1.png +0 -0
  357. data/spec/dummy/public/img/testimonial-2.png +0 -0
  358. data/spec/dummy/public/img/testimonial-3.png +0 -0
  359. data/spec/dummy/public/img/testimonial-bg.jpg +0 -0
  360. data/spec/dummy/public/js/bootstrap.js +0 -2363
  361. data/spec/dummy/public/js/custom.js +0 -355
  362. data/spec/dummy/public/js/jquery.fancybox.pack.js +0 -46
  363. data/spec/dummy/public/js/jquery.min.js +0 -5
  364. data/spec/dummy/public/js/jquery.mixitup.js +0 -2098
  365. data/spec/dummy/public/js/nouislider.js +0 -1899
  366. data/spec/dummy/public/js/slick.js +0 -2670
  367. data/spec/dummy/public/system/comfy/cms/files/files/000/000/003/cms_thumb/rerenting-landing_framed.png +0 -0
@@ -11,8 +11,7 @@ module Pwb
11
11
  @properties_for_sale = Prop.for_sale.visible.order('highlighted DESC').limit 9
12
12
  @properties_for_rent = Prop.for_rent.visible.order('highlighted DESC').limit 9
13
13
 
14
- return render "pwb/welcome/index"
15
-
14
+ render "pwb/welcome/index"
16
15
  end
17
16
  end
18
17
  end
@@ -1,6 +1,43 @@
1
1
  module Pwb
2
2
  module ApplicationHelper
3
3
 
4
+ def properties_carousel_footer
5
+ # TODO - diplay array of thumbnails below main
6
+ # properties carousel is images count > ...
7
+ # <a href="#" class="theater" rel="group" hidefocus="true">
8
+ # <%= opt_image_tag((@property_details.ordered_photo 3), :quality => "auto", class: "", alt: "") %>
9
+ # </a>
10
+ end
11
+
12
+ def bg_image(photo, options = {})
13
+ unless photo && photo.image.present?
14
+ return ""
15
+ end
16
+ if Rails.application.config.use_cloudinary
17
+ image_url = cl_image_path photo.image, options
18
+ else
19
+ image_url = image_path photo.image.url
20
+ end
21
+ #style="background-image:linear-gradient( rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.1) ),url(<%= carousel_item.default_photo %>);"
22
+ if options[:gradient]
23
+ "background-image: linear-gradient(#{options[:gradient]}), url(#{image_url});".html_safe
24
+ else
25
+ "background-image: url(#{image_url});".html_safe
26
+ end
27
+ end
28
+
29
+ def opt_image_tag(photo, options = {})
30
+ unless photo && photo.image.present?
31
+ return nil
32
+ end
33
+ if Rails.application.config.use_cloudinary
34
+ cl_image_tag photo.image, options
35
+ else
36
+ image_tag photo.image.url, options
37
+ end
38
+ end
39
+
40
+
4
41
  def page_title(title_val)
5
42
  content_for :page_title, title_val.to_s
6
43
  end
@@ -0,0 +1,9 @@
1
+ module Pwb
2
+ module CssHelper
3
+
4
+ def custom_styles(theme_name)
5
+ render :partial => "pwb/custom_css/#{theme_name}", :locals => {}, formats: :css
6
+ end
7
+
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Pwb
2
+ # https://github.com/zilkey/active_hash
3
+ class CmsPageContainer < ActiveJSON::Base
4
+ set_root_path "#{Pwb::Engine.root}/config/cms_page_containers"
5
+ # set_filename "client_setups"
6
+ use_multiple_files
7
+ set_filenames "about-us", "sell", "legal", "about", "landing"
8
+ end
9
+ end
@@ -6,14 +6,18 @@ module Pwb
6
6
  translates :raw, fallbacks_for_empty_translations: true
7
7
  globalize_accessors locales: [:en, :ca, :es, :fr, :ar, :de, :ru, :pt]
8
8
 
9
- def default_photo_url
10
- if content_photos.first
11
- content_photos.first.image_url
12
- else
13
- 'https://placeholdit.imgix.net/~text?txtsize=38&txt=&w=550&h=300&txttrack=0'
14
- end
9
+ def default_photo
10
+ content_photos.first
15
11
  end
16
12
 
13
+ # def default_photo_url
14
+ # if content_photos.first
15
+ # content_photos.first.image_url
16
+ # else
17
+ # 'https://placeholdit.imgix.net/~text?txtsize=38&txt=&w=550&h=300&txttrack=0'
18
+ # end
19
+ # end
20
+
17
21
  class << self
18
22
  def import(file)
19
23
  # byebug
@@ -116,14 +116,22 @@ module Pwb
116
116
  # return merged_extras.sort
117
117
  end
118
118
 
119
- def ordered_photo_url(number)
119
+ def ordered_photo(number)
120
120
  # allows me to pick an individual image according to an order
121
- unless prop_photos.length >= number
122
- return "https://placeholdit.imgix.net/~text?txtsize=38&txt=&w=550&h=400&txttrack=0"
121
+ if prop_photos.length >= number
122
+ prop_photos[number - 1]
123
123
  end
124
- prop_photos[number - 1].image.url
125
124
  end
126
125
 
126
+
127
+ # def ordered_photo_url(number)
128
+ # # allows me to pick an individual image according to an order
129
+ # unless prop_photos.length >= number
130
+ # return "https://placeholdit.imgix.net/~text?txtsize=38&txt=&w=550&h=400&txttrack=0"
131
+ # end
132
+ # prop_photos[number - 1].image.url
133
+ # end
134
+
127
135
  def url_friendly_title
128
136
  # used in constructing seo friendly url
129
137
  if title && title.length > 2
@@ -9,7 +9,7 @@ module Pwb
9
9
  def as_json(options = nil)
10
10
  super({only: [
11
11
  :link_key, :link_path, :visible, :sort_order, :id,
12
- :show_in_top_nav, :show_in_footer, :is_page
12
+ :show_in_top_nav, :show_in_footer, :is_page, :details
13
13
  ],
14
14
  methods: [:translation_key, :link_title_es, :page_title_es]
15
15
  }.merge(options || {}))
@@ -22,7 +22,10 @@ module Pwb
22
22
  "company_display_name", "theme_name",
23
23
  "default_area_unit", "default_client_locale",
24
24
  "available_currencies", "default_currency",
25
- "supported_locales", "social_media"
25
+ "supported_locales", "social_media",
26
+ "raw_css", "analytics_id", "analytics_id_type",
27
+ "sale_price_options_from", "sale_price_options_till",
28
+ "rent_price_options_from", "rent_price_options_till"
26
29
  ],
27
30
  methods: ["style_variables"]}.merge(options || {}))
28
31
  end
@@ -107,5 +110,15 @@ module Pwb
107
110
  # this is same as self[:theme_name] = theme_name_value
108
111
  end
109
112
  end
113
+
114
+ def render_google_analytics
115
+ return false unless Rails.env == "production"
116
+ if self.analytics_id.present?
117
+ return true
118
+ else
119
+ return false
120
+ end
121
+
122
+ end
110
123
  end
111
124
  end
@@ -0,0 +1,11 @@
1
+ module Pwb
2
+ class Api::V1::CmsBlockResource < JSONAPI::Resource
3
+ model_name 'Comfy::Cms::Block'
4
+ # model_hint model: Pwb::Prop, resource: :lite_properties
5
+
6
+ attributes :identifier, :content
7
+
8
+ # filters :visible
9
+ # has_many :blocks
10
+ end
11
+ end
@@ -0,0 +1,27 @@
1
+ module Pwb
2
+ class Api::V1::CmsPageResource < JSONAPI::Resource
3
+ model_name 'Comfy::Cms::Page'
4
+ # model_hint model: Pwb::Prop, resource: :lite_properties
5
+
6
+ attributes :label, :slug, :full_path,
7
+ :blocks, :tags, :categories,
8
+ :locale, :content_cache,
9
+ # below 2 are not used in admin panel
10
+ # but need to be populated when creating new page
11
+ :site_id, :layout
12
+
13
+ filters :label, :full_path
14
+ has_many :cms_blocks
15
+
16
+ # TODO - add locale col to Cms::Page
17
+ def locale
18
+ # return @model.site.locale
19
+ return @model.slug
20
+ end
21
+
22
+
23
+ def self.creatable_fields(context)
24
+ super - [:locale]
25
+ end
26
+ end
27
+ end
@@ -5,23 +5,19 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <meta name="robots" content="index, follow">
7
7
  <%# display_meta_tags site: @current_website.tenant_display_name %>
8
- <link href="https://opensource.keycdn.com/fontawesome/4.7.0/font-awesome.min.css" rel="stylesheet">
9
8
  <%= stylesheet_link_tag "pwb/themes/berlin", media: "all" %>
10
- <link rel="stylesheet" media="all" href="/custom_css.css" data-turbolinks-track="true" />
11
- <%= javascript_include_tag "pwb/themes/berlin" %>
9
+ <style>
10
+ <%= custom_styles "berlin" %>
11
+ </style>
12
+ <%= javascript_include_tag "pwb/themes/berlin", async: false %>
12
13
  <%= csrf_meta_tags %>
13
- <!-- Font awesome -->
14
- <!-- <link href="css/font-awesome.css" rel="stylesheet"> -->
15
- <link href="https://opensource.keycdn.com/fontawesome/4.7.0/font-awesome.min.css" rel="stylesheet">
16
- <!-- Google Font -->
17
- <link href='https://fonts.googleapis.com/css?family=Vollkorn' rel='stylesheet' type='text/css'>
18
- <link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
19
14
  <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
20
15
  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
21
16
  <!--[if lt IE 9]>
22
17
  <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
23
18
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
24
19
  <![endif]-->
20
+ <title><%= yield(:page_title) %></title>
25
21
  </head>
26
22
  <body class="tnt-body <%= @current_website.body_style %>">
27
23
  <!-- Pre Loader -->
@@ -48,6 +44,7 @@
48
44
  <%= yield %>
49
45
  <% end %>
50
46
  <%= render :partial => '/pwb/footer', :locals => {} %>
47
+ <%= render :partial => '/pwb/analytics', :locals => {} %>
51
48
  <%= insert_paloma_hook %>
52
49
  <!-- jQuery library -->
53
50
  <!--<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> -->
@@ -64,5 +61,24 @@
64
61
  <!-- <script type="text/javascript" src="js/jquery.fancybox.pack.js"></script> -->
65
62
  <!-- Custom js -->
66
63
  <!-- <script src="js/custom.js"></script> -->
64
+ <noscript id="deferred-styles">
65
+ <link href="https://opensource.keycdn.com/fontawesome/4.7.0/font-awesome.min.css" rel="stylesheet">
66
+ <!-- Google Font -->
67
+ <link href='https://fonts.googleapis.com/css?family=Vollkorn' rel='stylesheet' type='text/css'>
68
+ <link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
69
+ </noscript>
70
+ <script>
71
+ var loadDeferredStyles = function() {
72
+ var addStylesNode = document.getElementById("deferred-styles");
73
+ var replacement = document.createElement("div");
74
+ replacement.innerHTML = addStylesNode.textContent;
75
+ document.body.appendChild(replacement)
76
+ addStylesNode.parentElement.removeChild(addStylesNode);
77
+ };
78
+ var raf = requestAnimationFrame || mozRequestAnimationFrame ||
79
+ webkitRequestAnimationFrame || msRequestAnimationFrame;
80
+ if (raf) raf(function() { window.setTimeout(loadDeferredStyles, 0); });
81
+ else window.addEventListener('load', loadDeferredStyles);
82
+ </script>
67
83
  </body>
68
84
  </html>
@@ -1,5 +1,5 @@
1
1
  <!-- Start Property header -->
2
- <section id="aa-property-header" style="background-image: url(<%= @property_details.ordered_photo_url 1 %>);">
2
+ <section id="aa-property-header" style="<%= bg_image((@property_details.ordered_photo 1), height: 800, crop: "scale", quality: "auto") %>">
3
3
  <div class="container">
4
4
  <div class="row">
5
5
  <div class="col-md-12">
@@ -32,7 +32,7 @@
32
32
  <div class="aa-properties-details">
33
33
  <div class="aa-properties-details-img">
34
34
  <% @property_details.prop_photos.each.with_index do |photo, index| %>
35
- <img src="<%= photo.image.url %>" alt="img">
35
+ <%= opt_image_tag(photo, height: 800, crop: "scale", :quality => "auto", class: "", alt: "img") %>
36
36
  <% end %>
37
37
  </div>
38
38
  <div class="aa-properties-info">
@@ -73,8 +73,8 @@
73
73
  </div>
74
74
  </div>
75
75
  </div>
76
+ <% if @property_details.show_map %>
77
+ <div id="inmo-map-canvas" class="map-canvas no-margin"></div>
78
+ <% end %>
76
79
  </section>
77
- <% if @property_details.show_map %>
78
- <div id="inmo-map-canvas" class="map-canvas no-margin"></div>
79
- <% end %>
80
80
  <!-- FOOTER -->
@@ -37,7 +37,8 @@
37
37
  <article class="aa-properties-item property-item">
38
38
  <%= link_to property.contextual_show_path(@operation_type), class:
39
39
  "aa-properties-item-img" do %>
40
- <%= image_tag("#{property.ordered_photo_url 1}", class: 'img-responsive') %>
40
+ <%= opt_image_tag((property.ordered_photo 1), quality: "auto",
41
+ height: 240, crop: "scale", class: "img-responsive") %>
41
42
  <% end %>
42
43
  <div class="aa-tag for-sale" style="display: none;">
43
44
  <%# t 'propertyForSale' %>
@@ -12,7 +12,7 @@
12
12
  }
13
13
  );
14
14
  <% end %>
15
- <section id="top-container" style="background-image: url(<%= @header_image_url %>);">
15
+ <section id="top-container" style="<%= bg_image @header_image, height: 800, crop: "scale", quality: "auto" %>">
16
16
  <div class="container">
17
17
  <div class="row">
18
18
  <div class="col-md-12">
@@ -12,7 +12,8 @@
12
12
  }
13
13
  );
14
14
  <% end %>
15
- <section id="top-container" style="background-image: url(<%= @header_image_url %>);">
15
+ <section id="top-container" style="<%= bg_image @header_image, height: 800, crop: "scale", quality: "auto" %>">
16
+
16
17
  <div class="container">
17
18
  <div class="row">
18
19
  <div class="col-md-12">
@@ -1,4 +1,5 @@
1
- <section id="top-container" style="background-image: url(<%= @header_image_url %>);">
1
+ <section id="top-container" style="<%= bg_image @header_image, height: 800, crop: "scale", quality: "auto" %>">
2
+
2
3
  <div class="container">
3
4
  <div class="row">
4
5
  <div class="col-md-12">
@@ -30,7 +31,7 @@
30
31
  <div class="aa-main-area">
31
32
  <div class="row">
32
33
  <div class="col-md-6">
33
- <img src="<%= @content.default_photo_url%>" alt="" class="img-responsive about-us-img">
34
+ <%= opt_image_tag(@content.default_photo, :quality => "auto", height: 600, crop: "scale", class: "img-responsive about-us-img") %>
34
35
  </div>
35
36
  <div class="col-md-6">
36
37
  <div class="section-title-wr mt-40">
@@ -0,0 +1,34 @@
1
+ <% page_title @current_agency.company_name %>
2
+ <!-- MAIN CONTENT -->
3
+ <div class="pg-opt">
4
+ <div class="container">
5
+ <div class="row">
6
+ <div class="col-md-6">
7
+ <h2>
8
+ <%= I18n.t(@title_key) %>
9
+ </h2>
10
+ </div>
11
+ <div class="col-md-6" style="">
12
+ <ol class="breadcrumb">
13
+ <li><a href="/">
14
+ <%= I18n.t("webContentSections.home") %>
15
+ </a></li>
16
+ <li class="active">
17
+ <%= I18n.t(@title_key) %>
18
+ </li>
19
+ </ol>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ </div>
24
+
25
+ <%# render '/pwb/welcome/content_area_cols' %>
26
+
27
+
28
+ <% @cms_pages.each do |cms_page| %>
29
+ <%== cms_page.content_cache %>
30
+ <% end %>
31
+
32
+
33
+
34
+ <!-- FOOTER -->
@@ -1,4 +1,5 @@
1
- <section id="top-container" style="background-image: url(<%= @header_image_url %>);">
1
+ <section id="top-container" style="<%= bg_image @header_image, height: 800, crop: "scale", quality: "auto" %>">
2
+
2
3
  <div class="container">
3
4
  <div class="row">
4
5
  <div class="col-md-12">
@@ -0,0 +1,35 @@
1
+ <!-- <section id="aa-about-us">
2
+ <div class="container">
3
+ <div class="row">
4
+ <div class="col-md-12">
5
+ <div class="aa-about-us-area">
6
+ <div class="row">
7
+ <div class="col-md-5">
8
+ <div class="aa-about-us-left">
9
+ <img src="img/about-us.png" alt="image">
10
+ </div>
11
+ </div>
12
+ <div class="col-md-7">
13
+ <div class="aa-about-us-right">
14
+ <div class="aa-title">
15
+ <h2>About Us</h2>
16
+ <span></span>
17
+ </div>
18
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Repellat ab dignissimos vitae maxime adipisci blanditiis rerum quae quos! Id at rerum maxime modi fugit vero corrupti, ad atque sit laborum ipsum sunt blanditiis suscipit odio, aut nostrum assumenda nobis rem a maiores temporibus non commodi laboriosam, doloremque expedita! Corporis, provident?</p>
19
+ <ul>
20
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Esse, blanditiis.</li>
21
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit.</li>
22
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia.</li>
23
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Esse, blanditiis.</li>
24
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit.</li>
25
+ <li>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia.</li>
26
+ </ul>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ </section>
35
+ -->
@@ -6,7 +6,7 @@
6
6
  <% @carousel_items.each.with_index do |carousel_item, index| %>
7
7
  <!-- Top slider single slide -->
8
8
  <div class="aa-top-slider-single">
9
- <img src="<%= carousel_item.default_photo_url %>" alt="img">
9
+ <%= opt_image_tag((carousel_item.default_photo), :quality => "auto", height: 800, crop: "scale", class: "") %>
10
10
  <!-- Top slider content -->
11
11
  <% if carousel_item.raw %>
12
12
  <div class="aa-top-slider-content" style="">
@@ -3,7 +3,8 @@
3
3
  <article class="aa-properties-item">
4
4
  <%= link_to property.contextual_show_path(rent_or_sale), class:
5
5
  "aa-properties-item-img" do %>
6
- <%= image_tag("#{property.ordered_photo_url 1}", class: 'img-responsive') %>
6
+ <%= opt_image_tag((property.ordered_photo 1), quality: "auto",
7
+ height: 240, crop: "fit", class: "img-responsive") %>
7
8
  <% end %>
8
9
  <div class="aa-tag for-sale">
9
10
  <%= t title_key %>