pwb 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (442) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +40 -25
  3. data/app/assets/fonts/fonts/FontAwesome.otf +0 -0
  4. data/app/assets/fonts/fonts/fontawesome-webfont.eot +0 -0
  5. data/app/assets/fonts/fonts/fontawesome-webfont.svg +2668 -637
  6. data/app/assets/fonts/fonts/fontawesome-webfont.ttf +0 -0
  7. data/app/assets/fonts/fonts/fontawesome-webfont.woff +0 -0
  8. data/app/assets/fonts/fonts/fontawesome-webfont.woff2 +0 -0
  9. data/app/assets/javascripts/pwb/shared/page-content.js +24 -0
  10. data/app/assets/javascripts/pwb/shared/squares-container.js +58 -0
  11. data/app/assets/javascripts/pwb/shared/vue-main.js +1 -1
  12. data/app/assets/javascripts/pwb/shared/vue-squares.js.erb +74 -0
  13. data/app/assets/javascripts/pwb/squares/tabable-section.js +47 -0
  14. data/app/assets/javascripts/pwb/themes/squares.js.erb +45 -0
  15. data/app/assets/javascripts/pwb/themes/vic.js.erb +152 -0
  16. data/app/assets/javascripts/pwb_admin_panel/application_legacy_1.js +5 -0
  17. data/app/assets/stylesheets/pwb/themes/berlin.scss +4 -0
  18. data/app/assets/stylesheets/pwb/themes/berlin/main.scss +1 -1
  19. data/app/assets/stylesheets/pwb/themes/default.scss +1 -0
  20. data/app/assets/stylesheets/pwb/themes/default/carousel.scss +2 -1
  21. data/app/assets/stylesheets/pwb/themes/default/landing_content_areas.scss +13 -13
  22. data/app/assets/stylesheets/pwb/themes/default/shame.scss +0 -16
  23. data/app/assets/stylesheets/pwb/themes/matt.scss +18 -0
  24. data/app/assets/stylesheets/pwb/themes/shared/liquid_templates.scss +37 -0
  25. data/app/assets/stylesheets/pwb/themes/shared/shame.scss +7 -0
  26. data/app/assets/stylesheets/pwb/themes/squares.scss +22 -0
  27. data/app/assets/stylesheets/pwb/themes/squares/vue-material-docs.scss +200 -0
  28. data/app/assets/stylesheets/pwb/themes/squares/vue-material-vars.scss +141 -0
  29. data/app/assets/stylesheets/pwb/themes/vic.scss +104 -0
  30. data/app/assets/stylesheets/pwb/themes/vic/general.scss +15 -0
  31. data/app/assets/stylesheets/pwb/themes/vic/landing.scss +189 -0
  32. data/app/assets/stylesheets/pwb/themes/vic/slider.scss +127 -0
  33. data/app/assets/stylesheets/pwb_admin_panel/application_legacy_1.scss +6 -0
  34. data/app/controllers/pwb/admin_panel_controller.rb +7 -1
  35. data/app/controllers/pwb/api/v1/clients_controller.rb +35 -0
  36. data/app/controllers/pwb/api/v1/contacts_controller.rb +41 -0
  37. data/app/controllers/pwb/api/v1/links_controller.rb +47 -0
  38. data/app/controllers/pwb/api/v1/page_controller.rb +117 -0
  39. data/app/controllers/pwb/api/v1/page_fragments_controller.rb +74 -0
  40. data/app/controllers/pwb/api/v1/properties_controller.rb +30 -9
  41. data/app/controllers/pwb/api/v1/sections_controller.rb +27 -26
  42. data/app/controllers/pwb/api/v1/website_controller.rb +11 -11
  43. data/app/controllers/pwb/application_controller.rb +22 -11
  44. data/app/controllers/pwb/{sections_controller.rb → contact_us_controller.rb} +24 -45
  45. data/app/controllers/pwb/css_controller.rb +5 -2
  46. data/app/controllers/pwb/pages_controller.rb +36 -0
  47. data/app/controllers/pwb/search_controller.rb +33 -11
  48. data/app/controllers/pwb/squares_controller.rb +48 -0
  49. data/app/controllers/pwb/welcome_controller.rb +30 -5
  50. data/app/helpers/pwb/application_helper.rb +50 -49
  51. data/app/helpers/pwb/css_helper.rb +14 -0
  52. data/app/helpers/pwb/navigation_helper.rb +82 -0
  53. data/app/models/pwb/contact.rb +25 -0
  54. data/app/models/pwb/content.rb +26 -8
  55. data/app/models/pwb/content_photo.rb +18 -0
  56. data/app/models/pwb/link.rb +41 -0
  57. data/app/models/pwb/message.rb +1 -1
  58. data/app/models/pwb/page.rb +227 -0
  59. data/app/models/pwb/page_content.rb +33 -0
  60. data/app/models/pwb/page_part.rb +17 -0
  61. data/app/models/pwb/preset_style.rb +37 -0
  62. data/app/models/pwb/prop.rb +4 -0
  63. data/app/models/pwb/website.rb +64 -9
  64. data/app/resources/pwb/api/v1/{section_resource.rb → client_resource.rb} +3 -4
  65. data/app/resources/pwb/api/v1/property_resource.rb +23 -4
  66. data/app/resources/pwb/api/v1/web_content_resource.rb +1 -1
  67. data/app/resources/pwb/api_public/v1/prop_resource.rb +9 -2
  68. data/{db/cms_fixtures/cms/layouts/about-us/content.html → app/themes/airbnb/views/layouts/pwb/_generic_modal.html.erb} +0 -0
  69. data/{db/cms_fixtures/cms/layouts/about-us/javascript.js → app/themes/airbnb/views/layouts/pwb/_login_modal.html.erb} +0 -0
  70. data/app/themes/airbnb/views/layouts/pwb/application.html.erb +82 -0
  71. data/app/themes/airbnb/views/pwb/_footer.html.erb +25 -0
  72. data/app/themes/airbnb/views/pwb/props/_images_section_carousel.html.erb +43 -0
  73. data/app/themes/airbnb/views/pwb/props/show.html.erb +69 -0
  74. data/app/themes/airbnb/views/pwb/search/_search_form_for_rent.html.erb +183 -0
  75. data/app/themes/airbnb/views/pwb/search/_search_results.html.erb +34 -0
  76. data/app/themes/airbnb/views/pwb/search/buy.html.erb +65 -0
  77. data/app/themes/airbnb/views/pwb/search/rent.html.erb +87 -0
  78. data/app/themes/airbnb/views/pwb/sections/_contact_us_form.html.erb +49 -0
  79. data/app/themes/airbnb/views/pwb/sections/contact_us.html.erb +56 -0
  80. data/app/themes/airbnb/views/pwb/welcome/_content_area_cols.html.erb +12 -0
  81. data/app/themes/airbnb/views/pwb/welcome/_single_property_row.html.erb +51 -0
  82. data/app/themes/airbnb/views/pwb/welcome/index.html.erb +66 -0
  83. data/app/themes/berlin/views/pwb/_footer.html.erb +15 -20
  84. data/app/themes/berlin/views/pwb/_header.html.erb +7 -9
  85. data/app/themes/berlin/views/pwb/pages/show.html.erb +50 -0
  86. data/app/themes/berlin/views/pwb/search/buy.html.erb +1 -1
  87. data/app/themes/berlin/views/pwb/search/rent.html.erb +1 -2
  88. data/app/themes/berlin/views/pwb/sections/contact_us.html.erb +1 -1
  89. data/app/themes/berlin/views/pwb/welcome/index.html.erb +51 -7
  90. data/app/themes/config.json +14 -0
  91. data/app/themes/default/views/pwb/{sections/cms.html.erb → pages/show.html.erb} +9 -8
  92. data/app/themes/default/views/pwb/search/buy.html.erb +1 -1
  93. data/app/themes/default/views/pwb/search/rent.html.erb +1 -1
  94. data/app/themes/default/views/pwb/sections/about_us.html.erb +8 -7
  95. data/app/themes/default/views/pwb/sections/contact_us.html.erb +40 -30
  96. data/app/themes/default/views/pwb/sections/static.html.erb +3 -20
  97. data/app/themes/default/views/pwb/welcome/_single_property_row.html.erb +1 -1
  98. data/app/themes/default/views/pwb/welcome/index.html.erb +7 -38
  99. data/app/themes/matt/views/layouts/pwb/application.html.erb +45 -0
  100. data/app/themes/matt/views/pwb/_footer.html.erb +60 -0
  101. data/app/themes/matt/views/pwb/_header.html.erb +105 -0
  102. data/app/themes/matt/views/pwb/search/buy.html.erb +65 -0
  103. data/app/themes/matt/views/pwb/welcome/index.html.erb +132 -0
  104. data/app/themes/vic/views/layouts/pwb/application.html.erb +94 -0
  105. data/app/themes/vic/views/pwb/_header.html.erb +100 -0
  106. data/app/themes/vic/views/pwb/props/_images_section_carousel.html.erb +43 -0
  107. data/app/themes/vic/views/pwb/props/show.html.erb +69 -0
  108. data/app/themes/vic/views/pwb/search/buy.html.erb +65 -0
  109. data/app/themes/vic/views/pwb/search/rent.html.erb +65 -0
  110. data/app/themes/vic/views/pwb/sections/_contact_us_form.html.erb +49 -0
  111. data/app/themes/vic/views/pwb/sections/contact_us.html.erb +56 -0
  112. data/app/themes/vic/views/pwb/welcome/_content_area_cols.html.erb +12 -0
  113. data/app/themes/vic/views/pwb/welcome/_single_property_row.html.erb +51 -0
  114. data/app/themes/vic/views/pwb/welcome/index.html.erb +27 -0
  115. data/app/views/devise/shared/_links.html.erb +1 -1
  116. data/app/views/layouts/pwb/admin_panel_error.html.erb +19 -0
  117. data/app/views/layouts/pwb/admin_panel_legacy_1.html.erb +21 -0
  118. data/app/views/layouts/pwb/squares.html.erb +72 -0
  119. data/app/views/pwb/_footer.html.erb +2 -6
  120. data/app/views/pwb/_header.html.erb +23 -25
  121. data/app/views/pwb/admin_panel/show_legacy_1.html.erb +3 -0
  122. data/app/views/pwb/custom_css/_berlin.css.erb +0 -67
  123. data/app/views/pwb/custom_css/_default.css.erb +0 -22
  124. data/app/views/pwb/custom_css/_shared.css.erb +4 -3
  125. data/app/views/pwb/custom_css/_vic.css.erb +10 -0
  126. data/app/views/pwb/props/_images_section_carousel.html.erb +1 -1
  127. data/app/views/pwb/search/_search_result_item.html.erb +1 -1
  128. data/app/views/pwb/squares/show_client.html.erb +26 -0
  129. data/app/views/pwb/squares/show_prop.html.erb +26 -0
  130. data/app/views/pwb/squares/vue.html.erb +1 -0
  131. data/config/client_setups/default.json +28 -27
  132. data/config/initializers/i18n_globalise.rb +4 -0
  133. data/config/locales/admin.en.yml +38 -7
  134. data/config/locales/admin.es.yml +60 -6
  135. data/config/locales/admin.pt.yml +474 -0
  136. data/config/locales/admin.ru.yml +49 -6
  137. data/config/locales/devise.it.yml +137 -0
  138. data/config/locales/en.yml +7 -7
  139. data/config/locales/it.yml +160 -0
  140. data/config/locales/pt.yml +2 -0
  141. data/config/locales/rails.it.yml +213 -0
  142. data/config/locales/tr.yml +36 -36
  143. data/config/locales/vi.yml +5 -5
  144. data/config/preset_styles/green_amber.json +23 -0
  145. data/config/preset_styles/purple_teal.json +23 -0
  146. data/config/preset_styles/red_light.json +18 -0
  147. data/config/routes.rb +35 -23
  148. data/db/example_images/carousel_villa_with_pool.jpg +0 -0
  149. data/db/example_images/flat_luxury_dining_area.jpg +0 -0
  150. data/db/example_images/flat_luxury_living_area.jpg +0 -0
  151. data/db/migrate/20161120103546_create_pwb_props.rb +3 -3
  152. data/db/migrate/20161122174847_create_pwb_sections.rb +9 -8
  153. data/db/migrate/20161128221919_create_pwb_clients.rb +1 -0
  154. data/db/migrate/20170315195413_add_extra_cols_to_pwb_sections.rb +7 -6
  155. data/db/migrate/20170716075456_create_pwb_pages.rb +23 -0
  156. data/db/migrate/20170716110121_translate_pages.rb +17 -0
  157. data/db/migrate/20170720183443_create_pwb_links.rb +29 -0
  158. data/db/migrate/20170720201601_translate_links.rb +13 -0
  159. data/db/migrate/20170915094326_create_pwb_page_contents.rb +17 -0
  160. data/db/migrate/20170917215533_add_page_part_key_to_pwb_contents.rb +7 -0
  161. data/db/migrate/20170919134945_add_block_key_to_pwb_content_photos.rb +5 -0
  162. data/db/migrate/20170923195321_create_pwb_contacts.rb +33 -0
  163. data/db/migrate/20171011212930_create_pwb_page_parts.rb +30 -0
  164. data/db/seeds/translations_es.rb +1 -87
  165. data/db/seeds/translations_it.rb +92 -0
  166. data/db/yml_seeds/agency_address.yml +8 -8
  167. data/db/yml_seeds/contacts.yml +13 -0
  168. data/db/yml_seeds/content_translations/en.yml +73 -0
  169. data/db/yml_seeds/content_translations/es.yml +74 -0
  170. data/db/yml_seeds/content_translations/it.yml +73 -0
  171. data/db/yml_seeds/content_translations/pt.yml +73 -0
  172. data/db/yml_seeds/{content/footer.yml → footer.yml} +0 -0
  173. data/db/yml_seeds/links.yml +389 -0
  174. data/db/yml_seeds/page_parts/ABOUT_PAGE_PARTS.md +5 -0
  175. data/db/yml_seeds/page_parts/about-us__content_html.yml +24 -0
  176. data/db/yml_seeds/page_parts/about-us__our_agency.yml +51 -0
  177. data/db/yml_seeds/page_parts/contact-us__content_html.yml +24 -0
  178. data/db/yml_seeds/page_parts/contact-us__form_and_map.yml +17 -0
  179. data/db/yml_seeds/page_parts/home__about_us_services.yml +85 -0
  180. data/db/yml_seeds/page_parts/home__content_html.yml +24 -0
  181. data/db/yml_seeds/page_parts/home__landing_hero.yml +51 -0
  182. data/db/yml_seeds/page_parts/legal__content_html.yml +24 -0
  183. data/db/yml_seeds/page_parts/privacy__content_html.yml +24 -0
  184. data/db/yml_seeds/page_parts/sell__content_html.yml +24 -0
  185. data/db/yml_seeds/pages/about.yml +11 -0
  186. data/db/yml_seeds/pages/buy.yml +23 -0
  187. data/db/yml_seeds/pages/contact.yml +12 -0
  188. data/db/yml_seeds/pages/home.yml +15 -0
  189. data/db/yml_seeds/pages/legal_notice.yml +11 -0
  190. data/db/yml_seeds/pages/privacy_policy.yml +11 -0
  191. data/db/yml_seeds/pages/rent.yml +15 -0
  192. data/db/yml_seeds/pages/sell.yml +13 -0
  193. data/db/yml_seeds/prop/flat_for_rent.yml +11 -11
  194. data/db/yml_seeds/prop/flat_for_rent_2.yml +57 -0
  195. data/db/yml_seeds/prop/flat_for_sale.yml +11 -12
  196. data/db/yml_seeds/prop/flat_for_sale_2.yml +56 -0
  197. data/db/yml_seeds/prop/villa_for_rent.yml +14 -14
  198. data/db/yml_seeds/prop/villa_for_sale.yml +15 -15
  199. data/db/yml_seeds/prop_spain/flat_for_rent.yml +58 -0
  200. data/db/yml_seeds/prop_spain/flat_for_sale.yml +58 -0
  201. data/db/yml_seeds/prop_spain/villa_for_rent.yml +58 -0
  202. data/db/yml_seeds/prop_spain/villa_for_sale.yml +59 -0
  203. data/db/yml_seeds/sections.yml +119 -119
  204. data/db/yml_seeds/{content → to_delete}/about_us.yml +0 -0
  205. data/db/yml_seeds/{content → to_delete}/carousel.yml +0 -0
  206. data/db/yml_seeds/{content → to_delete}/content_columns.yml +0 -0
  207. data/db/yml_seeds/to_delete/footer.yml +15 -0
  208. data/db/yml_seeds/{content → to_delete}/sell.yml +0 -0
  209. data/db/yml_seeds/{content → to_delete}/static.yml +0 -0
  210. data/db/yml_seeds/website.yml +2 -1
  211. data/lib/pwb/engine.rb +16 -2
  212. data/lib/pwb/pages_seeder.rb +190 -0
  213. data/lib/pwb/seeder.rb +56 -14
  214. data/lib/pwb/version.rb +1 -1
  215. data/lib/tasks/pwb_tasks.rake +19 -2
  216. data/spec/controllers/pwb/api/v1/propeties_controller_spec.rb +2 -2
  217. data/spec/controllers/pwb/welcome_controller_spec.rb +18 -5
  218. data/spec/dummy/config/initializers/assets.rb +9 -0
  219. data/spec/dummy/config/routes.rb +2 -0
  220. data/spec/dummy/config/secrets.yml +3 -0
  221. data/spec/dummy/db/migrate/20171201161323_create_property_web_scraper_import_hosts.property_web_scraper.rb +22 -0
  222. data/spec/dummy/db/migrate/20171201161324_create_property_web_scraper_listings.property_web_scraper.rb +84 -0
  223. data/spec/dummy/db/schema.rb +475 -398
  224. data/spec/factories/pwb_contacts.rb +5 -0
  225. data/spec/factories/pwb_contents.rb +3 -0
  226. data/spec/factories/pwb_links.rb +5 -0
  227. data/spec/factories/pwb_page_contents.rb +5 -0
  228. data/spec/factories/pwb_page_parts.rb +8 -0
  229. data/spec/factories/pwb_pages.rb +29 -0
  230. data/spec/factories/pwb_prop_photos.rb +11 -2
  231. data/spec/fixtures/mls/properties_interealty.json +1 -496
  232. data/spec/fixtures/params/bulk_create.json +3 -3
  233. data/spec/libraries/pwb/pages_seeder_spec.rb +56 -0
  234. data/spec/libraries/pwb/seeder_spec.rb +14 -10
  235. data/spec/models/pwb/contact_spec.rb +7 -0
  236. data/spec/models/pwb/link_spec.rb +7 -0
  237. data/spec/models/pwb/page_content_spec.rb +7 -0
  238. data/spec/models/pwb/page_part_spec.rb +7 -0
  239. data/spec/models/pwb/page_spec.rb +28 -0
  240. data/spec/models/pwb/website_spec.rb +10 -0
  241. data/spec/rails_helper.rb +1 -1
  242. data/spec/requests/pwb/themes_spec.rb +15 -10
  243. data/spec/views/pwb/application_layout.html.erb_spec.rb +28 -21
  244. data/spec/views/pwb/contact_us.html.erb_spec.rb +11 -0
  245. data/spec/views/pwb/welcome.html.erb_spec.rb +13 -9
  246. metadata +230 -244
  247. data/app/controllers/pwb/api/v1/cms_pages_controller.rb +0 -102
  248. data/app/controllers/pwb/comfy_controller.rb +0 -106
  249. data/app/models/pwb/cms_page_container.rb +0 -9
  250. data/app/models/pwb/section.rb +0 -35
  251. data/app/models/pwb/welcome.rb +0 -4
  252. data/app/resources/pwb/api/v1/cms_block_resource.rb +0 -11
  253. data/app/resources/pwb/api/v1/cms_page_resource.rb +0 -27
  254. data/app/themes/berlin/views/pwb/sections/about_us.html.erb +0 -59
  255. data/app/themes/berlin/views/pwb/sections/cms.html.erb +0 -34
  256. data/app/themes/berlin/views/pwb/sections/static.html.erb +0 -58
  257. data/app/views/pwb/search/_search_result_item_to_del.html.erb +0 -56
  258. data/config/cms_page_containers/about-us.json +0 -18
  259. data/config/cms_page_containers/about.json +0 -107
  260. data/config/cms_page_containers/landing.json +0 -19
  261. data/config/cms_page_containers/legal.json +0 -17
  262. data/config/cms_page_containers/sell.json +0 -96
  263. data/config/initializers/comfortable_mexican_sofa.rb +0 -142
  264. data/config/initializers/i18n.rb +0 -1
  265. data/db/cms_fixtures/cms/categories/pages.yml +0 -3
  266. data/db/cms_fixtures/cms/files/_rerenting-landing_framed.png.yml +0 -6
  267. data/db/cms_fixtures/cms/files/rerenting-landing_framed.png +0 -0
  268. data/db/cms_fixtures/cms/layouts/about-us/attributes.yml +0 -4
  269. data/db/cms_fixtures/cms/layouts/about-us/people/attributes.yml +0 -4
  270. data/db/cms_fixtures/cms/layouts/about-us/people/content.html +0 -55
  271. data/db/cms_fixtures/cms/layouts/about-us/services/attributes.yml +0 -4
  272. data/db/cms_fixtures/cms/layouts/about-us/services/content.html +0 -32
  273. data/db/cms_fixtures/cms/layouts/about-us/services/javascript.js +0 -0
  274. data/db/cms_fixtures/cms/layouts/about-us/services/stylesheet.css +0 -0
  275. data/db/cms_fixtures/cms/layouts/about-us/stylesheet.css +0 -0
  276. data/db/cms_fixtures/cms/layouts/default-layout/attributes.yml +0 -4
  277. data/db/cms_fixtures/cms/layouts/default-layout/content.html +0 -51
  278. data/db/cms_fixtures/cms/layouts/default-layout/javascript.js +0 -0
  279. data/db/cms_fixtures/cms/layouts/default-layout/stylesheet.css +0 -0
  280. data/db/cms_fixtures/cms/pages/index/about-us/attributes.yml +0 -8
  281. data/db/cms_fixtures/cms/pages/index/about-us/people/attributes.yml +0 -8
  282. data/db/cms_fixtures/cms/pages/index/about-us/people/de/attributes.yml +0 -8
  283. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_a.html +0 -1
  284. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_b.html +0 -1
  285. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_c.html +0 -1
  286. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_details_d.html +0 -1
  287. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_a.html +0 -1
  288. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_b.html +0 -1
  289. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_c.html +0 -1
  290. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_img_url_d.html +0 -1
  291. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_a.html +0 -1
  292. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_b.html +0 -1
  293. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_c.html +0 -1
  294. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_name_d.html +0 -1
  295. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_a.html +0 -1
  296. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_b.html +0 -1
  297. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_c.html +0 -1
  298. data/db/cms_fixtures/cms/pages/index/about-us/people/de/person_title_d.html +0 -1
  299. data/db/cms_fixtures/cms/pages/index/about-us/people/en/attributes.yml +0 -8
  300. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_a.html +0 -1
  301. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_b.html +0 -1
  302. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_c.html +0 -1
  303. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_details_d.html +0 -1
  304. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_a.html +0 -1
  305. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_b.html +0 -1
  306. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_c.html +0 -1
  307. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_img_url_d.html +0 -1
  308. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_a.html +0 -1
  309. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_b.html +0 -1
  310. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_c.html +0 -1
  311. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_name_d.html +0 -1
  312. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_a.html +0 -1
  313. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_b.html +0 -1
  314. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_c.html +0 -1
  315. data/db/cms_fixtures/cms/pages/index/about-us/people/en/person_title_d.html +0 -1
  316. data/db/cms_fixtures/cms/pages/index/about-us/people/es/attributes.yml +0 -8
  317. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_a.html +0 -1
  318. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_b.html +0 -1
  319. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_c.html +0 -1
  320. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_details_d.html +0 -1
  321. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_a.html +0 -1
  322. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_b.html +0 -1
  323. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_c.html +0 -1
  324. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_img_url_d.html +0 -1
  325. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_a.html +0 -1
  326. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_b.html +0 -1
  327. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_c.html +0 -1
  328. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_name_d.html +0 -1
  329. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_a.html +0 -1
  330. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_b.html +0 -1
  331. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_c.html +0 -1
  332. data/db/cms_fixtures/cms/pages/index/about-us/people/es/person_title_d.html +0 -1
  333. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/attributes.yml +0 -8
  334. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_a.html +0 -1
  335. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_b.html +0 -1
  336. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_c.html +0 -1
  337. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_details_d.html +0 -1
  338. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_a.html +0 -1
  339. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_b.html +0 -1
  340. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_c.html +0 -1
  341. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_name_d.html +0 -1
  342. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_a.html +0 -1
  343. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_b.html +0 -1
  344. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_c.html +0 -1
  345. data/db/cms_fixtures/cms/pages/index/about-us/people/pt/person_title_d.html +0 -1
  346. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/attributes.yml +0 -8
  347. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_a.html +0 -1
  348. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_b.html +0 -1
  349. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_c.html +0 -1
  350. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_details_d.html +0 -1
  351. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_a.html +0 -1
  352. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_b.html +0 -1
  353. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_c.html +0 -1
  354. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_img_url_d.html +0 -1
  355. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_a.html +0 -1
  356. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_b.html +0 -1
  357. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_c.html +0 -1
  358. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_name_d.html +0 -1
  359. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_a.html +0 -1
  360. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_b.html +0 -1
  361. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_c.html +0 -1
  362. data/db/cms_fixtures/cms/pages/index/about-us/people/ru/person_title_d.html +0 -1
  363. data/db/cms_fixtures/cms/pages/index/about-us/services/attributes.yml +0 -8
  364. data/db/cms_fixtures/cms/pages/index/about-us/services/content_a.html +0 -1
  365. data/db/cms_fixtures/cms/pages/index/about-us/services/content_b.html +0 -0
  366. data/db/cms_fixtures/cms/pages/index/about-us/services/content_c.html +0 -0
  367. data/db/cms_fixtures/cms/pages/index/about-us/services/de/attributes.yml +0 -8
  368. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_a.html +0 -1
  369. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_b.html +0 -1
  370. data/db/cms_fixtures/cms/pages/index/about-us/services/de/content_c.html +0 -1
  371. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_a.html +0 -1
  372. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_b.html +0 -1
  373. data/db/cms_fixtures/cms/pages/index/about-us/services/de/title_c.html +0 -1
  374. data/db/cms_fixtures/cms/pages/index/about-us/services/en/attributes.yml +0 -8
  375. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_a.html +0 -1
  376. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_b.html +0 -1
  377. data/db/cms_fixtures/cms/pages/index/about-us/services/en/content_c.html +0 -1
  378. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_a.html +0 -1
  379. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_b.html +0 -1
  380. data/db/cms_fixtures/cms/pages/index/about-us/services/en/title_c.html +0 -1
  381. data/db/cms_fixtures/cms/pages/index/about-us/services/es/attributes.yml +0 -8
  382. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_a.html +0 -1
  383. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_b.html +0 -1
  384. data/db/cms_fixtures/cms/pages/index/about-us/services/es/content_c.html +0 -1
  385. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_a.html +0 -1
  386. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_b.html +0 -1
  387. data/db/cms_fixtures/cms/pages/index/about-us/services/es/title_c.html +0 -1
  388. data/db/cms_fixtures/cms/pages/index/about-us/services/title_a.html +0 -1
  389. data/db/cms_fixtures/cms/pages/index/about-us/services/title_b.html +0 -0
  390. data/db/cms_fixtures/cms/pages/index/about-us/services/title_c.html +0 -0
  391. data/db/cms_fixtures/cms/pages/index/attributes.yml +0 -8
  392. data/db/cms_fixtures/cms/pages/index/content.html +0 -1
  393. data/db/cms_fixtures/cms/pages/index/title.html +0 -0
  394. data/db/cms_fixtures/cms/snippets/snippet1/attributes.yml +0 -3
  395. data/db/cms_fixtures/cms/snippets/snippet1/content.html +0 -1
  396. data/db/cms_fixtures/sample-site/categories/files.yml +0 -1
  397. data/db/cms_fixtures/sample-site/categories/pages.yml +0 -1
  398. data/db/cms_fixtures/sample-site/categories/snippets.yml +0 -1
  399. data/db/cms_fixtures/sample-site/files/_sample.jpg.yml +0 -5
  400. data/db/cms_fixtures/sample-site/files/sample.jpg +0 -0
  401. data/db/cms_fixtures/sample-site/layouts/default/attributes.yml +0 -1
  402. data/db/cms_fixtures/sample-site/layouts/default/content.html +0 -5
  403. data/db/cms_fixtures/sample-site/layouts/default/javascript.js +0 -1
  404. data/db/cms_fixtures/sample-site/layouts/default/nested/attributes.yml +0 -2
  405. data/db/cms_fixtures/sample-site/layouts/default/nested/content.haml +0 -3
  406. data/db/cms_fixtures/sample-site/layouts/default/nested/javascript.js +0 -1
  407. data/db/cms_fixtures/sample-site/layouts/default/nested/stylesheet.css +0 -1
  408. data/db/cms_fixtures/sample-site/layouts/default/stylesheet.css +0 -1
  409. data/db/cms_fixtures/sample-site/pages/index/attributes.yml +0 -6
  410. data/db/cms_fixtures/sample-site/pages/index/child/attributes.yml +0 -3
  411. data/db/cms_fixtures/sample-site/pages/index/child/left.haml +0 -1
  412. data/db/cms_fixtures/sample-site/pages/index/child/right.html +0 -1
  413. data/db/cms_fixtures/sample-site/pages/index/child/thumbnail.png +0 -0
  414. data/db/cms_fixtures/sample-site/pages/index/content.html +0 -2
  415. data/db/cms_fixtures/sample-site/snippets/default/attributes.yml +0 -4
  416. data/db/cms_fixtures/sample-site/snippets/default/content.html +0 -1
  417. data/db/migrate/20170315212222_translate_sections.rb +0 -15
  418. data/db/migrate/20170513221300_create_cms.rb +0 -133
  419. data/lib/pwb/cms_data_loader.rb +0 -38
  420. data/spec/dummy/log/development.log +0 -0
  421. data/spec/dummy/log/test.log +0 -0
  422. data/spec/dummy/public/uploads/pwb/content_photo/image/1/carousel_windows.jpg +0 -0
  423. data/spec/dummy/public/uploads/pwb/content_photo/image/2/carousel_deck_chair.jpg +0 -0
  424. data/spec/dummy/public/uploads/pwb/content_photo/image/3/carousel_grass.jpg +0 -0
  425. data/spec/dummy/public/uploads/pwb/content_photo/image/4/carousel_grass.jpg +0 -0
  426. data/spec/dummy/public/uploads/pwb/prop_photo/image/1/flat_balcony.jpg +0 -0
  427. data/spec/dummy/public/uploads/pwb/prop_photo/image/1/gdaje3atcct1gx2ngv9u.jpg +0 -0
  428. data/spec/dummy/public/uploads/pwb/prop_photo/image/1/new_villa.jpg +0 -0
  429. data/spec/dummy/public/uploads/pwb/prop_photo/image/2/flat_balcony.jpg +0 -0
  430. data/spec/dummy/public/uploads/pwb/prop_photo/image/2/kitchen_modern.jpg +0 -0
  431. data/spec/dummy/public/uploads/pwb/prop_photo/image/2/rxo23syongfydjpoizrd.jpg +0 -0
  432. data/spec/dummy/public/uploads/pwb/prop_photo/image/3/mansion_front.jpg +0 -0
  433. data/spec/dummy/public/uploads/pwb/prop_photo/image/3/vzlptgtccsk2d2ewp4id.jpg +0 -0
  434. data/spec/dummy/public/uploads/pwb/prop_photo/image/4/mansion_bedroom.jpg +0 -0
  435. data/spec/dummy/public/uploads/pwb/prop_photo/image/4/xwayprwnmmmhrzrgwvch.jpg +0 -0
  436. data/spec/dummy/public/uploads/pwb/prop_photo/image/5/flat_window.jpg +0 -0
  437. data/spec/dummy/public/uploads/pwb/prop_photo/image/5/ilxn2u37bak0v60u6f8q.jpg +0 -0
  438. data/spec/dummy/public/uploads/pwb/prop_photo/image/6/kitchen_classic.jpg +0 -0
  439. data/spec/dummy/public/uploads/pwb/prop_photo/image/7/flat_balcony.jpg +0 -0
  440. data/spec/dummy/public/uploads/pwb/prop_photo/image/8/lounge_cosy.jpg +0 -0
  441. data/spec/factories/pwb_sections.rb +0 -4
  442. data/spec/models/pwb/section_spec.rb +0 -11
@@ -0,0 +1,17 @@
1
+ class TranslatePages < ActiveRecord::Migration[5.0]
2
+ # translated cols are not needed in original table
3
+ # but need to have translations declared in model
4
+ def self.up
5
+ Pwb::Page.create_translation_table!({
6
+ :raw_html => {:type => :text, :default => ''},
7
+ :page_title => {:type => :string, :default => ''},
8
+ :link_title => {:type => :string, :default => ''}
9
+ }, {
10
+ :migrate_data => true
11
+ })
12
+ end
13
+
14
+ def self.down
15
+ Pwb::Page.drop_translation_table! :migrate_data => true
16
+ end
17
+ end
@@ -0,0 +1,29 @@
1
+ class CreatePwbLinks < ActiveRecord::Migration[5.0]
2
+ def change
3
+ create_table :pwb_links do |t|
4
+ # t.text :params???
5
+ t.string :slug
6
+ t.string :parent_slug
7
+ # below for association with pages
8
+ t.string :page_slug, index: true
9
+ t.string :icon_class
10
+ t.string :href_class
11
+ t.string :href_target
12
+ t.boolean :is_external, default: false
13
+ t.string :link_url
14
+ # above for external links, below for internal
15
+ t.string :link_path
16
+ # below is a comma separated list of params for an
17
+ # internal path such as "show_page_path"
18
+ t.string :link_path_params
19
+ t.boolean :visible, default: true
20
+ t.boolean :is_deletable, default: false
21
+ t.integer :flags, default: 0, index: true, null: false
22
+ t.integer :sort_order, default: 0
23
+ t.integer :placement, default: 0, index: true
24
+ t.timestamps
25
+ end
26
+ add_index :pwb_links, :slug, :unique => true
27
+
28
+ end
29
+ end
@@ -0,0 +1,13 @@
1
+ class TranslateLinks < ActiveRecord::Migration[5.0]
2
+ def self.up
3
+ Pwb::Link.create_translation_table!({
4
+ :link_title => {:type => :string, :default => ''}
5
+ }, {
6
+ :migrate_data => true
7
+ })
8
+ end
9
+
10
+ def self.down
11
+ Pwb::Link.drop_translation_table! :migrate_data => true
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ class CreatePwbPageContents < ActiveRecord::Migration[5.1]
2
+ def change
3
+ create_table :pwb_page_contents do |t|
4
+ t.boolean :is_rails_part, default: false
5
+ t.string :page_part_key
6
+ t.string :label
7
+ t.integer :sort_order
8
+ # t.string :fragment_key, index: true
9
+ t.boolean :visible_on_page, default: true
10
+ # t.integer :page_id
11
+ # t.integer :content_id
12
+ t.belongs_to :page, index: true
13
+ t.belongs_to :content, index: true
14
+ t.timestamps
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,7 @@
1
+ class AddPagePartKeyToPwbContents < ActiveRecord::Migration[5.1]
2
+ def change
3
+ add_column :pwb_contents, :page_part_key, :string, index: true
4
+ # add_column :pwb_contents, :visible_on_page, :boolean, default: true
5
+ # , index: true
6
+ end
7
+ end
@@ -0,0 +1,5 @@
1
+ class AddBlockKeyToPwbContentPhotos < ActiveRecord::Migration[5.1]
2
+ def change
3
+ add_column :pwb_content_photos, :block_key, :string, index: true
4
+ end
5
+ end
@@ -0,0 +1,33 @@
1
+ class CreatePwbContacts < ActiveRecord::Migration[5.1]
2
+ def change
3
+ create_table :pwb_contacts do |t|
4
+ t.string :first_name, index: true
5
+ t.string :last_name, index: true
6
+ t.string :other_names
7
+ t.integer :title, default: 0, index: true
8
+ t.string :primary_phone_number, index: true
9
+ t.string :other_phone_number
10
+ t.string :fax
11
+ t.string :nationality
12
+ t.string :primary_email, index: true, unique: true
13
+ t.string :other_email
14
+ t.string :skype_id
15
+ t.string :facebook_id
16
+ t.string :linkedin_id
17
+ t.string :twitter_id
18
+ t.string :website
19
+ t.string :documentation_id, index: true, unique: true
20
+ t.integer :documentation_type
21
+ t.integer :user_id
22
+ t.integer :primary_address_id
23
+ t.integer :secondary_address_id
24
+ t.integer :flags, null: false, default: 0
25
+ t.json :details, default: {}
26
+
27
+ t.timestamps null: false
28
+ t.timestamps
29
+ end
30
+
31
+ add_index :pwb_contacts, [:first_name, :last_name]
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ class CreatePwbPageParts < ActiveRecord::Migration[5.1]
2
+ def change
3
+ create_table :pwb_page_parts do |t|
4
+ t.boolean :is_rails_part, default: false
5
+ t.boolean :show_in_editor, default: true
6
+ t.integer :order_in_editor
7
+
8
+ t.string :page_part_key, index: true
9
+ t.string :page_slug, index: true
10
+ t.text :template
11
+
12
+ # used to decide how to lay out the editor
13
+ t.json :editor_setup, default: {}
14
+
15
+ # contains the text strings (for each locale)
16
+ # that will be merged with the template
17
+ t.json :block_contents, default: {}
18
+
19
+ # though currently (oct 2017) not implemented
20
+ # below will allow future use case of per theme or locale templates
21
+ t.string :theme_name
22
+ t.string :locale
23
+
24
+ t.integer :flags, null: false, default: 0
25
+ t.timestamps
26
+ end
27
+ add_index :pwb_page_parts, [:page_part_key, :page_slug]
28
+
29
+ end
30
+ end
@@ -86,92 +86,6 @@ I18n::Backend::ActiveRecord::Translation.create!(
86
86
  {locale: "es", key: "propertyTypes.casaRural", value: "Casa Rural"},
87
87
 
88
88
  {locale: "es", key: "propertyTypes.edificioResidencial", value: "Edificio residencial"},
89
- {locale: "es", key: "propertyTypes.villa", value: "Villa"},
90
- # {locale: "es", key: "navbar.home", value: "Inicio"},
91
- # {locale: "es", key: "navbar.admin", value: "Admin"},
92
- # {locale: "es", key: "navbar.aboutUs", value: "Sobre nosotros"},
93
- # {locale: "es", key: "navbar.sell", value: "Vender"},
94
- # {locale: "es", key: "navbar.buy", value: "Comprar"},
95
- # {locale: "es", key: "navbar.rent", value: "Arrendar"},
96
- # {locale: "es", key: "navbar.contactUs", value: "Contactar"},
97
- # {locale: "es", key: "true", value: "Si"},
98
- # {locale: "es", key: "false", value: "No"},
99
- # {locale: "es", key: "editarPropiedad", value: "Editar una propiedad"},
100
- # {locale: "es", key: "nuevoPropiedad", value: "Nuevo propiedad"},
101
- # {locale: "es", key: "listadoPropiedades", value: "Listado de propiedades"},
102
- # {locale: "es", key: "buttonLabels.editar", value: "Editar"},
103
- # {locale: "es", key: "buttonLabels.nuevo", value: "Nuevo"},
104
- # {locale: "es", key: "buttonLabels.guardar", value: "Guardar"},
105
- # {locale: "es", key: "buttonLabels.crear", value: "Crear"},
106
- # {locale: "es", key: "webContentLabels.suffixEn", value: "en Inglés"},
107
- # {locale: "es", key: "webContentLabels.suffixEs", value: "en Español"},
108
- # {locale: "es", key: "webContentLabels.landingPageHero", value: "Content for main page"},
109
- # {locale: "es", key: "webContentLabels.aboutUs", value: "About Us"},
110
- # {locale: "es", key: "webContentLabels.tagLine", value: "Lema"},
111
-
112
- # {locale: "es", key: "webContentSections.home", value: "Inicio"},
113
- # {locale: "es", key: "webContentSections.aboutUs", value: "Sobre Nosotros"},
114
- # {locale: "es", key: "webContentSections.sell", value: "Vender"},
115
- # {locale: "es", key: "webContentSections.tagLine", value: "Lema"},
116
-
117
- # {locale: "es", key: "toolTips.temporadas", value: "Si el inmueble se alquila por temporadas"},
118
- # {locale: "es", key: "toolTips.precioAntiguo", value: "El precio antes de la rebaja"},
119
- # {locale: "es", key: "toolTips.precioAlquiler", value: "0 si el inmueble sólo es para venta"},
120
- # {locale: "es", key: "toolTips.precioVenta", value: "Precio de venta"},
121
- # {locale: "es", key: "toolTips.eficienciaEnergia", value: "Elija la eficiencia energética del inmueble"},
122
- # {locale: "es", key: "toolTips.garaje", value: "Si el inmueble dispone de plaza de garaje o no"},
123
- # {locale: "es", key: "toolTips.ref", value: "Referencia del inmueble"},
124
- # {locale: "es", key: "toolTips.yaencontre", value: "Sí para publicar en Yaencontre, previo contrato con ellos."},
125
- # {locale: "es", key: "toolTips.pisoscom", value: "Sí para publicar en Pisoscom, previo contrato con ellos."},
126
- # {locale: "es", key: "toolTips.idealista", value: "Sí para publicar en Idealista, previo contrato con ellos."},
127
- # {locale: "es", key: "fieldLabels.yaencontre", value: "Yaencontre"},
128
- # {locale: "es", key: "fieldLabels.pisoscom", value: "Pisoscom"},
129
- # {locale: "es", key: "fieldLabels.idealista", value: "Idealista"},
130
- # {locale: "es", key: "fieldLabels.localidad", value: "Localidad"},
131
- # {locale: "es", key: "fieldLabels.zona", value: "Zona"},
132
- # {locale: "es", key: "fieldLabels.codigoPostal", value: "Codigo Postal"},
133
- # {locale: "es", key: "fieldLabels.direccion", value: "Direccion"},
134
- # {locale: "es", key: "fieldLabels.direccionReal", value: "Direccion Real"},
135
- # {locale: "es", key: "fieldLabels.direccionMapa", value: "Direccion Mapa"},
136
- # {locale: "es", key: "fieldLabels.ref", value: "REF"},
137
- # {locale: "es", key: "fieldLabels.tipo", value: "Type"},
138
- # {locale: "es", key: "fieldLabels.estado", value: "State"},
139
- # {locale: "es", key: "fieldLabels.descripcionEspanol", value: "Descripcion Español"},
140
- # {locale: "es", key: "fieldLabels.tituloEspanol", value: "Titulo Español"},
141
- # {locale: "es", key: "fieldLabels.descripcionIngles", value: "Descripcion Inglés"},
142
- # {locale: "es", key: "fieldLabels.tituloIngles", value: "Titulo Inglés"},
143
- # {locale: "es", key: "fieldLabels.precioVenta", value: "Precio Venta"},
144
- # {locale: "es", key: "fieldLabels.precioAntiguo", value: "Original Price"},
145
- # {locale: "es", key: "fieldLabels.precioAlquiler", value: "Precio Arriendo"},
146
- # {locale: "es", key: "fieldLabels.origen", value: "Origen"},
147
- # {locale: "es", key: "fieldLabels.temporadas", value: "Temporadas"},
148
- # {locale: "es", key: "fieldLabels.precioTa", value: "Precio Temp. Alta"},
149
- # {locale: "es", key: "fieldLabels.precioTm", value: "Precio Temp. Media"},
150
- # {locale: "es", key: "fieldLabels.precioTb", value: "Precio Temp. Baja"},
151
- # {locale: "es", key: "fieldLabels.eficienciaEnergia", value: "Eficiencia Energia"},
152
- # {locale: "es", key: "fieldLabels.anoConstr", value: "Año constr"},
153
- # {locale: "es", key: "fieldLabels.numHabitaciones", value: "Núm. habitaciones"},
154
- # {locale: "es", key: "fieldLabels.countBathrooms", value: "Núm. baños"},
155
- # {locale: "es", key: "fieldLabels.numAseos", value: "Núm. aseos"},
156
- # {locale: "es", key: "fieldLabels.mParcela", value: "m. parcela"},
157
- # {locale: "es", key: "fieldLabels.mConstruidos", value: "m. construidos"},
158
- # {locale: "es", key: "fieldLabels.garaje", value: "Garaje"},
159
-
160
- # {locale: "es", key: "fieldLabels.forSearchWidget", value: "For search widget"},
161
- # {locale: "es", key: "fieldLabels.obscureMap", value: "Hide exact address on website?"},
162
- # {locale: "es", key: "fieldLabels.hideMap", value: "Hide map altogether on website?"},
163
- # {locale: "es", key: "fieldLabels.forSale", value: "For Sale?"},
164
- # {locale: "es", key: "fieldLabels.priceSaleCurrent", value: "Current Price"},
165
- # {locale: "es", key: "fieldLabels.saleDiscount", value: "Sale Discount"},
166
- # {locale: "es", key: "fieldLabels.priceSaleOriginal", value: "Original Price"},
167
- # {locale: "es", key: "fieldLabels.longTermRental", value: "Available for long term rental?"},
168
- # {locale: "es", key: "fieldLabels.seasonalRental", value: "Available for seasonal rental?"},
169
- # {locale: "es", key: "fieldLabels.priceRentalMonthlyHighSeason", value: "Price for high season rental (per month)"},
170
- # {locale: "es", key: "fieldLabels.priceRentalMonthlyLowSeason", value: "Price for low season rental (per month)"},
171
- # {locale: "es", key: "fieldLabels.priceRentalMonthlyStandardSeason", value: "Price for standard season rental (per month)"},
172
- # {locale: "es", key: "fieldLabels.priceRentalMonthlyCurrent", value: "Current rental price (per month)"},
173
- # {locale: "es", key: "fieldLabels.longTermRentalDiscount", value: "longTermRentalDiscount"},
174
- # {locale: "es", key: "fieldLabels.priceRentalMonthlyOriginal", value: "Original rental price (per month)"},
175
- # # {locale: "es", key: "webContentLabels.tagLine", value: "Tag Line"},
89
+ {locale: "es", key: "propertyTypes.villa", value: "Villa"}
176
90
 
177
91
  ])
@@ -0,0 +1,92 @@
1
+ # Placeholder file - awaiting translation into Italian
2
+ # load File.join(Rails.root, 'db', 'seeds', 'translations.rb')
3
+ I18n::Backend::ActiveRecord::Translation.create!(
4
+ [
5
+ {locale: "it", key: "propertyStates.underConstruction", value: "En construcion"},
6
+ {locale: "it", key: "propertyStates.brandNew", value: "A estreñar"},
7
+ {locale: "it", key: "propertyStates.segundaMano", value: "Segunda mano"},
8
+ {locale: "it", key: "propertyStates.nuevo", value: "Nuevo"},
9
+ {locale: "it", key: "propertyStates.enConstruccion", value: "En construcion"},
10
+ {locale: "it", key: "propertyStates.aReformar", value: "A reformar"},
11
+
12
+ {locale: "it", key: "propertyOrigin.bank", value: "Banco"},
13
+ {locale: "it", key: "propertyOrigin.new", value: "Nuevo"},
14
+ {locale: "it", key: "propertyOrigin.private", value: "Privado"},
15
+ {locale: "it", key: "propertyLabels.sold", value: "Vendido"},
16
+ {locale: "it", key: "propertyLabels.reserved", value: "Reservado"},
17
+
18
+ {locale: "it", key: "extras.aireAcondicionado", value: "Aire acondicionado"},
19
+ {locale: "it", key: "extras.alarma", value: "Alarma"},
20
+ {locale: "it", key: "extras.amueblado", value: "Amueblado"},
21
+ {locale: "it", key: "extras.armariosEmpotrados", value: "Armarios Empotrados"},
22
+ {locale: "it", key: "extras.ascensor", value: "Ascensor"},
23
+ {locale: "it", key: "extras.balcon", value: "Balcón"},
24
+ {locale: "it", key: "extras.banoTurco", value: "Baño turco"},
25
+ {locale: "it", key: "extras.calefaccionCentral", value: "Calefacción Central"},
26
+ {locale: "it", key: "extras.calefaccionElectrica", value: "Calefacción Eléctrica"},
27
+ {locale: "it", key: "extras.calefaccionPropano", value: "Calefacción Propano"},
28
+ {locale: "it", key: "extras.cocinaIndependiente", value: "Cocina Independiente"},
29
+ {locale: "it", key: "extras.electrodomesticos", value: "Electrodomésticos"},
30
+ {locale: "it", key: "extras.energiaSolar", value: "Energía Solar"},
31
+ {locale: "it", key: "extras.garajeComunitario", value: "Garaje Comunitario"},
32
+ {locale: "it", key: "extras.garajePrivado", value: "Garaje Privado"},
33
+ {locale: "it", key: "extras.gresCeramica", value: "Gres Cerámica"},
34
+ {locale: "it", key: "extras.horno", value: "Horno"},
35
+ {locale: "it", key: "extras.jacuzzi", value: "Jacuzzi"},
36
+ {locale: "it", key: "extras.jardinComunitario", value: "Jardín Comunitario"},
37
+ {locale: "it", key: "extras.jardinPrivado", value: "Jardín Privado"},
38
+ {locale: "it", key: "extras.lavadero", value: "Lavadero"},
39
+ {locale: "it", key: "extras.lavadora", value: "Lavadora"},
40
+ {locale: "it", key: "extras.microondas", value: "Microondas"},
41
+ {locale: "it", key: "extras.nevera", value: "Nevera"},
42
+ {locale: "it", key: "extras.parquet", value: "Parquet"},
43
+ {locale: "it", key: "extras.piscinaClimatizada", value: "Piscina climatizada"},
44
+ {locale: "it", key: "extras.piscinaComunitaria", value: "Piscina comunitaria"},
45
+ {locale: "it", key: "extras.piscinaPrivada", value: "Piscina privada"},
46
+ {locale: "it", key: "extras.porche", value: "Porche"},
47
+ {locale: "it", key: "extras.puertaBlindada", value: "Puerta Blindada"},
48
+ {locale: "it", key: "extras.sauna", value: "Sauna"},
49
+ {locale: "it", key: "extras.sueloMarmol", value: "Suelo Mármol"},
50
+ {locale: "it", key: "extras.servPorteria", value: "Serv. portería"},
51
+ {locale: "it", key: "extras.terraza", value: "Terraza"},
52
+ {locale: "it", key: "extras.trastero", value: "Trastero"},
53
+ {locale: "it", key: "extras.tv", value: "TV"},
54
+ {locale: "it", key: "extras.videoportero", value: "Videoportero"},
55
+ {locale: "it", key: "extras.vigilancia", value: "Vigilancia"},
56
+ {locale: "it", key: "extras.vistasAlMar", value: "Vistas al mar"},
57
+ {locale: "it", key: "extras.zComunitaria", value: "Z. Comunitaria"},
58
+ {locale: "it", key: "extras.zonaDeportiva", value: "Zona Deportiva"},
59
+ {locale: "it", key: "extras.cercaDeServicios", value: "Cerca de Servicios"},
60
+ {locale: "it", key: "extras.calefaccionGasCiudad", value: "Calefacción gas ciudad"},
61
+ {locale: "it", key: "extras.calefaccionGasoleo", value: "Calefacción gasóleo"},
62
+ {locale: "it", key: "extras.zonasInfantiles", value: "Zonas infantiles"},
63
+ {locale: "it", key: "extras.sueloRadiante", value: "Suelo radiante"},
64
+ {locale: "it", key: "extras.semiamueblado", value: "Semiamueblado "},
65
+ {locale: "it", key: "extras.chimenea", value: "Chimenea"},
66
+ {locale: "it", key: "extras.barbacoa", value: "Barbacoa"},
67
+ {locale: "it", key: "extras.solarium", value: "Solarium"},
68
+ {locale: "it", key: "extras.patioInterior", value: "Patio interior"},
69
+ {locale: "it", key: "extras.vistasALaMontana", value: "Vistas a la montaña"},
70
+ {locale: "it", key: "extras.vistasAlJardin", value: "Vistas al jardín"},
71
+ {locale: "it", key: "extras.urbanizacion", value: "Urbanizacíón"},
72
+ {locale: "it", key: "extras.zonaTranquila", value: "Zona tranquila"},
73
+ {locale: "it", key: "propertyTypes.apartamento", value: "Apartamento"},
74
+ {locale: "it", key: "propertyTypes.chaletIndependiente", value: "Chalet independiente"},
75
+ {locale: "it", key: "propertyTypes.bungalow", value: "Bungalow"},
76
+ {locale: "it", key: "propertyTypes.inversion", value: "Inversión"},
77
+ {locale: "it", key: "propertyTypes.solar", value: "Solar"},
78
+ {locale: "it", key: "propertyTypes.duplex", value: "Dúplex"},
79
+ {locale: "it", key: "propertyTypes.piso", value: "Piso"},
80
+ {locale: "it", key: "propertyTypes.hotel", value: "Hotel"},
81
+ {locale: "it", key: "propertyTypes.chaletAdosado", value: "Chalet Adosado"},
82
+ {locale: "it", key: "propertyTypes.atico", value: "Ático"},
83
+ {locale: "it", key: "propertyTypes.estudio", value: "Estudio"},
84
+ {locale: "it", key: "propertyTypes.garaje", value: "Garaje"},
85
+ {locale: "it", key: "propertyTypes.local", value: "Local"},
86
+ {locale: "it", key: "propertyTypes.trastero", value: "Trastero"},
87
+ {locale: "it", key: "propertyTypes.casaRural", value: "Casa Rural"},
88
+
89
+ {locale: "it", key: "propertyTypes.edificioResidencial", value: "Edificio residencial"},
90
+ {locale: "it", key: "propertyTypes.villa", value: "Villa"}
91
+
92
+ ])
@@ -1,8 +1,8 @@
1
- longitude: -0.282938899999976
2
- latitude: 51.4629262
3
- street_number: 311
4
- street_address: Sheen Road
5
- postal_code: TW10 5AW
6
- city: Richmond
7
- region: England
8
- country: United Kingdom
1
+ street_address: Old Water Works Road
2
+ street_number: 9-13
3
+ postal_code: 08857
4
+ city: Old Bridge Township
5
+ region: New Jersey
6
+ country: United States
7
+ longitude: -74.3508907
8
+ latitude: 40.4148037
@@ -0,0 +1,13 @@
1
+ ---
2
+ - primary_email: bob_a@example.com
3
+ first_name: Bob
4
+ last_name: Adamson
5
+ skype_id: ae_skype
6
+ primary_phone_number: 789 101
7
+ - primary_email: tina_@example.com
8
+ first_name: Tina
9
+ last_name: Adamson
10
+ skype_id: na_skype
11
+ primary_phone_number: 123 456
12
+
13
+
@@ -0,0 +1,73 @@
1
+ ---
2
+ en:
3
+ legal:
4
+ content_html:
5
+ main_content:
6
+ <b> DISCLAIMER</b> </br>
7
+ The Example RE Internet team strives to provide you with useful, accurate, and timely information on this website. Accordingly, Example RE has attempted to provide accurate information and materials on this website on this website but assumes no responsibility for the accuracy and completeness of that information and materials on this website but assumes no responsibility for the accuracy and comleteness of that information or materials. Example RE may change the content of any information or materials available at this webite, or to the products described in them, at any time without notice. However, Example RE makes no commitment to update the information or materials on this website which, as a result, may be out of date. Information and opinions expressed in bulletion boards or other forums are not necessarily those of Example RE. Neither Example RE, nor its officer, directors, employees, agents, distributors, or affiliates are responsible or liable for any loss damage (including, but not limited to, actual, consequential, or punitive), liability, claim, or other injury or cause related to or resulting from any information posted on Example RE’s website. Example RE reserves the right to revise these terms and/or legal restriction at any time. You are responsible for reviewing this page from time to time to ensure compliance with the then-current terms and legal restrictions because they will be binding on you. Certain provisions of these terms and legal restrictions may be superseded by expressly designated legal notices or terms located on particular pages of this website.
8
+
9
+
10
+ privacy:
11
+ content_html:
12
+ main_content:
13
+ <P> <b> Privacy Policy </b> </p> <p>
14
+ We are committed to the security of your users' data. Therefore, our Privacy Policy sets forth the terms in which Example RE uses and protects information that is provided by its customers. </p> <p>
15
+ <b>
16
+ Use Collected Information </b> </p> <p>
17
+ Our website may collect personal information such as your email address and demographic information. Also, when necessary, specific information may be required to process an order or make a delivery or billing.
18
+ Example RE will not sell, cede or distribute personal information that is collected without your consent, unless required by a court with a court order.
19
+ </p>
20
+ <p><b>Links to Third Parties </b> </p> <p>
21
+ This website may contain links to other sites that may be of interest to you. Once you click on these links and leave our page, we no longer have control over the site to which you are redirected and therefore we are not responsible for the terms or privacy or protection of your data on those other third sites. These sites are subject to their own privacy policies so it is recommended that you consult them to confirm that you agree with them.
22
+ </p>
23
+
24
+
25
+ sell:
26
+ content_html:
27
+ main_content:
28
+ <h2>Sell Your Property with Us</h2>
29
+ Our commitment to you is to uphold the highest standards of professionalism while helping you make your best real estate decisions. You want to sell your property with full confidence. In doing so, you deserve our very best. Our goal at Example Real Estate is to provide you with exceptional service while meeting your needs at each step of the selling process.
30
+ <h2>Regional Expertise
31
+ </h2>
32
+ Our clients and our business affiliates will tell you, no listings in our market region of Birmingham receive more exposure to buyers than those listed with Example Real Estate. Our Internet-based marketing, print advertising, and collateral marketing efforts allow our listings unequaled exposure to buyers who are looking for real estate in Birmingham. The strength of our online marketing, print advertising, and direct broker contacts drive significant traffic to our website, which provides detailed information on all of our property listings.
33
+ <h2>Ready to Help You
34
+ </h2>
35
+ Our Qualified Brokerage Professionals and Staff at Example Real Estate have the experience, the knowledge and the discretion to represent your property throughout Birmingham. Our team of dedicated and professional brokers and staff are committed to providing extraordinary service. You may be assured that Example RE provides the tools and assists your broker in marketing your property efficiently and expertly to local, regional and national markets. It takes more than a sign on your home or property to attract buyers. We create a complete marketing plan to meet your needs.
36
+
37
+ home:
38
+ landing_hero:
39
+ landing_title_a:
40
+ The best realtor in Springfield
41
+ landing_content_a: >
42
+ <ul class="list-carousel">
43
+ <li><i class="fa fa-check-square">
44
+ </i> Professional staff</li>
45
+ <li><i class="fa fa-check-square"></i> We will find you the best property on the market</li>
46
+ </ul>
47
+ landing_img:
48
+ db/example_images/carousel_villa_with_pool.jpg
49
+
50
+ content_html:
51
+ main_content: <p><b>Important notice:</b>&nbsp; We are offering free property evaluations this month only. Call us now to take advantage of this special offer.</p>
52
+
53
+ about_us_services:
54
+ title_a: Find your home
55
+ content_a: <p>Explain to us exactly what you are looking for and we will do our best to find that ideal property that meets your needs.</p>
56
+ title_b: Professional estate agents
57
+ content_b: <p>We are professional estate agents. We will help you with all the paperwork and save you money along the way.</p>
58
+ title_c: Sell your property
59
+ content_c: <p>If you need to sell your property, get in touch with us. With our experience in the industry and the local area we will get it done in the quickest and simplest way.</p>
60
+
61
+ about-us:
62
+ content_html:
63
+ main_content: <p><b>Important notice:</b>&nbsp; We are offering free property evaluations this month only. Call us now to take advantage of this special offer.</p>
64
+ our_agency:
65
+ title_a:
66
+ About Us
67
+ content_a:
68
+ <p>We are a professional estate agents with many years experience of delivering a great service
69
+ for our clients.</p>
70
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
71
+ our_agency_img:
72
+ db/example_images/carousel_grass.jpg
73
+