Permalink
Browse files

much more

  • Loading branch information...
1 parent bdf2d20 commit 06845a8fb4b660292a5a7bd56087ae13ffacd326 @kristianmandrup committed Jun 25, 2012
Showing with 1,994 additions and 9,984 deletions.
  1. +4 −1 www/app.js
  2. +3 −0 www/app.rb
  3. +6 −5 www/app/model/Account.js
  4. +5 −4 www/app/model/ContactInfo.js
  5. +6 −6 www/app/model/Mail.js
  6. +6 −3 www/app/model/Photo.js
  7. +1 −1 www/app/model/Property.js
  8. +22 −0 www/app/model/Settings.js
  9. +8 −4 www/app/model/User.js
  10. +2 −3 www/app/model/account/Landlord.js
  11. +2 −1 www/app/model/account/Tenant.js
  12. +8 −7 www/app/model/mail/Box.js
  13. +11 −11 www/app/model/mail/System.js
  14. +1 −3 www/app/model/payment/CreditCard.js
  15. +1 −3 www/app/model/photo/Gallery.js
  16. +1 −3 www/app/model/property/Details.js
  17. +2 −3 www/app/model/property/Location.js
  18. +4 −6 www/app/model/property/RentalPeriod.js
  19. +33 −7 www/app/model/property/rental_period/Costs.js
  20. +35 −0 www/app/model/search/Criteria.js
  21. +18 −0 www/app/model/search/Favorite.js
  22. +7 −5 www/app/model/{Preferences.js → settings/Account.js}
  23. +0 −24 www/app/view/Map.js
  24. +4 −49 www/app/view/Navigation.js
  25. +0 −20 www/app/view/PropertyList.js
  26. +0 −33 www/app/view/TopBar.js
  27. +1 −0 www/app/view/home/Page.js
  28. +2 −2 www/app/view/home/TopBar.js
  29. +8 −0 www/app/view/home/btn/About.js
  30. +2 −2 www/app/view/{nav/button/Home.js → home/btn/New.js}
  31. +8 −0 www/app/view/home/btn/Settings.js
  32. +7 −0 www/app/view/logo/Image.js
  33. 0 www/app/view/{nav/button/mail → mail/btn}/Inbox.js
  34. +1 −1 www/app/view/mail/inbox/Content.js
  35. +13 −0 www/app/view/mail/inbox/messages/List.js
  36. +2 −2 www/app/view/registration/landlord/register/Content.js
  37. +11 −0 www/app/view/registration/login/Facebook.js
  38. +13 −0 www/app/view/registration/login/Twitter.js
  39. +2 −2 www/app/view/registration/tenant/register/Content.js
  40. 0 www/app/view/{ → sandbox}/Main.js
  41. +34 −3 www/app/view/search/Content.js
  42. +8 −10 www/app/view/search/agents/Content.js
  43. +8 −0 www/app/view/search/btn/Agents.js
  44. +8 −0 www/app/view/search/btn/Favorites.js
  45. +8 −0 www/app/view/search/btn/History.js
  46. +8 −0 www/app/view/search/btn/Property.js
  47. +8 −0 www/app/view/search/btn/Search.js
  48. +9 −0 www/app/view/search/criteria/Furnishment.js
  49. +3 −4 www/app/view/search/criteria/Location.js
  50. +27 −19 www/app/view/search/criteria/Page.js
  51. +6 −8 www/app/view/search/criteria/PropertyType.js
  52. +10 −0 www/app/view/search/criteria/Radius.js
  53. +12 −0 www/app/view/search/criteria/RentalCost.js
  54. +10 −0 www/app/view/search/criteria/RentalPeriod.js
  55. +10 −0 www/app/view/search/criteria/Rooms.js
  56. +21 −0 www/app/view/search/criteria/Rules.js
  57. +11 −0 www/app/view/search/criteria/Size.js
  58. +8 −10 www/app/view/search/favorites/Content.js
  59. +22 −0 www/app/view/settings/account/mail/Options.js
  60. +27 −0 www/app/view/settings/currency/List.js
  61. +15 −0 www/app/view/settings/language/List.js
  62. +16 −0 www/app/view/settings/map/Options.js
  63. +18 −0 www/app/view/settings/search/Page.js
  64. +7 −0 www/app/view/start/Image.js
  65. +11 −0 www/app/view/start/Languages.js
  66. +15 −0 www/app/view/start/Page.js
  67. +11 −0 www/app/view/util/FloatingTooltip.js
  68. +0 −17 www/config.rb
  69. +7 −0 www/docs/Command line.md
  70. 0 www/docs/{ccustomize_sencha.md → Customize_sencha.md}
  71. +13 −2 www/index.html
  72. +163 −0 www/lib/plugins/SliderFieldInput.js
  73. +138 −0 www/lib/plugins/SliderFieldText.js
  74. +1 −9,694 www/resources/css/app.css
  75. BIN www/resources/images/FriendlyRentTrans.png
  76. BIN www/resources/images/flags64.png
  77. BIN www/resources/images/flags64_semi.png
  78. +531 −0 www/resources/javascript/i18n.js
  79. +4 −0 www/resources/javascript/locale_da.js
  80. BIN www/resources/sass/.sass-cache/02e2acbad075adbb3c3e4710f24ffcb09bc097bb/_float.scssc
  81. BIN www/resources/sass/.sass-cache/02e2acbad075adbb3c3e4710f24ffcb09bc097bb/_hacks.scssc
  82. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_buttons.scssc
  83. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_carousel.scssc
  84. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_form-sliders.scssc
  85. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_form.scssc
  86. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_img.scssc
  87. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_indexbar.scssc
  88. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_list.scssc
  89. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_loading-spinner.scssc
  90. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_map.scssc
  91. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_media.scssc
  92. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_msgbox.scssc
  93. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_panel.scssc
  94. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_picker.scssc
  95. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_sheets.scssc
  96. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_tabs.scssc
  97. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_toolbar-forms.scssc
  98. BIN www/resources/sass/.sass-cache/0cc059c506fe0611e713576e7fe12df278dbc2d7/_toolbar.scssc
  99. BIN www/resources/sass/.sass-cache/130337b5cfa526abe3670cc721f9cf39ba0d638d/_css3.scssc
  100. BIN www/resources/sass/.sass-cache/130337b5cfa526abe3670cc721f9cf39ba0d638d/_support.scssc
  101. BIN www/resources/sass/.sass-cache/2f86792dce7d2835f047eb3809642bb97536b0e6/app.scssc
  102. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_blueprint-grid.scssc
  103. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_carbon-fiber.scssc
  104. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_checkerboard.scssc
  105. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_cicada.scssc
  106. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_gradients.scssc
  107. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_houndstooth.scssc
  108. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_lined-paper.scssc
  109. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_madras.scssc
  110. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_noise.scssc
  111. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_polka-dot.scssc
  112. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_radial-overlay.scssc
  113. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_striped.scssc
  114. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_stripes.scssc
  115. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_tablecloth.scssc
  116. BIN www/resources/sass/.sass-cache/3ac0f11328ff0693a8843e69028dd58800082fa2/_tartan.scssc
  117. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_all.scssc
  118. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_core.scssc
  119. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_global.scssc
  120. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_mixins.scssc
  121. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_variables.scssc
  122. BIN www/resources/sass/.sass-cache/504a8af0937cbeacde56c7855c79c9bf1c58fe50/_widgets.scssc
  123. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_appearance.scssc
  124. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_background-clip.scssc
  125. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_background-origin.scssc
  126. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_background-size.scssc
  127. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_border-radius.scssc
  128. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_box-shadow.scssc
  129. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_box-sizing.scssc
  130. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_box.scssc
  131. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_columns.scssc
  132. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_font-face.scssc
  133. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_images.scssc
  134. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_inline-block.scssc
  135. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_opacity.scssc
  136. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_shared.scssc
  137. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_text-shadow.scssc
  138. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_transform.scssc
  139. BIN www/resources/sass/.sass-cache/77a3949ea5bb3fba437fda459882aa277bd33040/_transition.scssc
  140. BIN www/resources/sass/.sass-cache/ac4d8f820baeccd56133b29f2021fd76fdfa698b/_core.scssc
  141. BIN www/resources/sass/.sass-cache/ac4d8f820baeccd56133b29f2021fd76fdfa698b/_layout.scssc
  142. BIN www/resources/sass/.sass-cache/ac4d8f820baeccd56133b29f2021fd76fdfa698b/_reset.scssc
  143. BIN www/resources/sass/.sass-cache/bd6e6cdce418ffeb82268dfe170c53a1dda06e31/_link-colors.scssc
  144. BIN www/resources/sass/.sass-cache/d468a8f2324bff09adcbd0d8e818ede0414dc825/_background.scssc
  145. BIN www/resources/sass/.sass-cache/d468a8f2324bff09adcbd0d8e818ede0414dc825/_color.scssc
  146. BIN www/resources/sass/.sass-cache/d79bed92216a4e49563ad1bb13638270fd3743c8/_colors.scssc
  147. BIN www/resources/sass/.sass-cache/d79bed92216a4e49563ad1bb13638270fd3743c8/_typography.scssc
  148. +22 −6 www/resources/sass/app.scss
  149. +253 −0 www/resources/sass/flags64-semi.scss
  150. +251 −0 www/resources/sass/flags64.scss
View
@@ -2,7 +2,7 @@ Ext.application({
name: "FriendlyRent",
requires: [
- 'Ext.MessageBox', 'FriendlyRent.view.Navigation'
+ 'FriendlyRent.view.Navigation'
],
// models: ["Note"],
@@ -42,6 +42,9 @@ Ext.application({
console.log('mainLaunch');
// if (!device || !this.launched) { return; }
+ I18n.defaultLocale = "da";
+ I18n.locale = "da";
+
console.log('Launched!');
// Destroy the #appLoadingIndicator element
View
@@ -4,6 +4,9 @@
# Make sure our assets reload on every request.
set :static_cache_control, [:public, :max_age => 0]
+# set :bind, 'localhost'
+set :port, 4567
+
# Pick which set of files get served depending
# on our environment
case ENV["RACK_ENV"] || "development"
View
@@ -2,15 +2,16 @@ Ext.define('FriendlyRent.model.Account', {
extend: 'Ext.data.Model',
config: {
- identifier: 'account',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
- {name: 'dateCreated', type: 'date', dateFormat: 'c' },
- {name: 'favorites', type: 'favorites'},
- {name: 'mail_system', type: 'mail_system'}
+ {name: 'dateCreated', type: 'date', dateFormat: 'c' }
+ ],
+ hasMany: [
+ {name: 'favorites', model: 'search.Favorite'}
],
+ hasOne: {name: 'mailSystem', model: 'mail.System'},
+
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' }
@@ -1,4 +1,4 @@
-Ext.define('FriendlyRent.model.ContactInfo', {
+Ext.define('model.ContactInfo', {
extend: 'Ext.data.Model',
config: {
@@ -8,9 +8,10 @@ Ext.define('FriendlyRent.model.ContactInfo', {
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
- {name: 'contact_hours', type: 'auto'},
- {name: 'phone', type: 'auto'},
- {name: 'alt_phone', type: 'auto'}
+
+ {name: 'contact_hours', type: 'string'},
+ {name: 'phone', type: 'string'},
+ {name: 'alt_phone', type: 'string'}
],
validations: [
{ type: 'presence', field: 'id' },
View
@@ -1,21 +1,21 @@
-Ext.define('FriendlyRent.model.Mail', {
+Ext.define('model.Mail', {
extend: 'Ext.data.Model',
config: {
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
- {name: 'subject', type: 'auto'},
- {name: 'body', type: 'auto'},
- {name: 'type', type: 'auto'}, // # payment, services, contacts, legal
- {name: 'sender', type: 'account'},
- {name: 'receivers', type: 'array'}
+ {name: 'subject', type: 'string'},
+ {name: 'body', type: 'string'},
+ {name: 'type', type: 'string'}, // # payment, services, contacts, legal
// IMPORTANT: can't have a status like bookmarked or replied, as a message
// will appear in multiple accounts and for each account have a uniques status
],
+ hasOne: {name: 'sender', type: 'account'},
+ hasMany: {name: 'receivers', type: 'array'},
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' },
View
@@ -1,13 +1,16 @@
-Ext.define('FriendlyRent.model.Photo', {
+Ext.define('model.Photo', {
extend: 'Ext.data.Model',
config: {
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
- {name: 'name', type: 'auto'},
- {name: 'description', type: 'auto'}
+
+ {name: 'name', type: 'string'},
+ {name: 'description', type: 'string'},
+ // base 64 encoded image
+ {name: 'image', type: 'string'}
],
validations: [
{ type: 'presence', field: 'id' },
@@ -1,4 +1,4 @@
-Ext.define('FriendlyRent.model.Property', {
+Ext.define('model.Property', {
extend: 'Ext.data.Model',
config: {
View
@@ -0,0 +1,22 @@
+Ext.define('model.Settings', {
+ extend: 'Ext.data.Model',
+
+ config: {
+ idProperty: 'id',
+ fields: [
+ {name: 'id', type: 'int'},
+ {name: 'dateCreated', type: 'date', dateFormat: 'c' },
+
+ {name: 'languageCode', type: 'string'},
+ {name: 'currencyCodeISO', type: 'string'},
+ ],
+ hasOne: [
+ {name: 'account', model: 'FriendlyRent.model.settings.Account'}
+ ],
+ validations: [
+ { type: 'presence', field: 'id' },
+ { type: 'presence', field: 'dateCreated' },
+ { type: 'presence', field: 'subject', message: 'Please enter a subject for this mail' }
+ ]
+ },
+});
View
@@ -1,4 +1,4 @@
-Ext.define('FriendlyRent.model.User', {
+Ext.define('model.User', {
extend: 'Ext.data.Model',
config: {
@@ -11,11 +11,15 @@ Ext.define('FriendlyRent.model.User', {
{name: 'email', type: 'email'},
{name: 'password', type: 'auto'},
- {name: 'landlord_account', type: 'landlord_account'},
- {name: 'tenant_account', type: 'tenant_account'}
-
// {name: 'address', type: 'address'},
],
+ hasOne: [
+ {name: 'landlord_account', model: 'account.Landlord'}
+ ]
+ ,
+ {name: 'tenant_account', type: 'account.Tenant'}
+
+
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' }
@@ -1,15 +1,14 @@
-Ext.define('FriendlyRent.model.account.Landlord', {
+Ext.define('account.Landlord', {
extend: 'Ext.data.Model',
config: {
- identifier: 'landlord_account',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
{name: 'contact_info', type: 'contact_info'}
],
+ belongsTo: 'User',
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' }
@@ -1,4 +1,4 @@
-Ext.define('FriendlyRent.model.account.Tenant', {
+Ext.define('account.Tenant', {
extend: 'Ext.data.Model',
config: {
@@ -10,6 +10,7 @@ Ext.define('FriendlyRent.model.account.Tenant', {
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
{name: 'contact_requests_made', type: 'int'}
],
+ belongsTo: 'User',
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' }
View
@@ -1,16 +1,17 @@
-Ext.define('FriendlyRent.model.mail.Box', {
+Ext.define('mail.Box', {
extend: 'Ext.data.Model',
config: {
- identifier: 'mailbox',
-
idProperty: 'id',
fields: [
- {name: 'id', type: 'int'}
-
- {name: 'messages', type: 'array'},
- {name: 'bookmarks', type: 'array'}
+ {name: 'id', type: 'int'}
],
+ hasMany: [
+ {name: 'messages', model: 'Mail'},
+ {name: 'bookmarks', model: 'Mail'}
+ ]
+
+ belongsTo: 'mail.System',
validations: [
{ type: 'presence', field: 'id' }
]
@@ -1,22 +1,22 @@
-Ext.define('FriendlyRent.model.mail.System', {
+Ext.define('mail.System', {
extend: 'Ext.data.Model',
config: {
- identifier: 'mail_system',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' }
-
- {name: 'inbox', type: 'mail_box'},
- {name: 'sentbox', type: 'mail_box'},
- {name: 'trashbox', type: 'mail_box'}
-
- {name: 'replied', type: 'array'},
- {name: 'received_reply', type: 'array'}
-
],
+ hasOne: [
+ {name: 'inbox', model: 'mail.Box'},
+ {name: 'sentbox', model: 'mail.Box'},
+ {name: 'trashbox', model: 'mail.box'}
+ ],
+ hasMany: [
+ {name: 'replied', model: 'Mail'},
+ {name: 'received_reply', model: 'Mail'}
+ ],
+
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' }
@@ -1,9 +1,7 @@
-Ext.define('FriendlyRent.model.payment.CreditCard', {
+Ext.define('payment.CreditCard', {
extend: 'Ext.data.Model',
config: {
- identifier: 'credit_card',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
@@ -1,9 +1,7 @@
-Ext.define('FriendlyRent.model.photo.Gallery', {
+Ext.define('photo.Gallery', {
extend: 'Ext.data.Model',
config: {
- identifier: 'photo_gallery',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
@@ -1,9 +1,7 @@
-Ext.define('FriendlyRent.model.property.Details', {
+Ext.define('property.Details', {
extend: 'Ext.data.Model',
config: {
- identifier: 'property_details',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
@@ -1,9 +1,7 @@
-Ext.define('FriendlyRent.model.property.Location', {
+Ext.define('property.Location', {
extend: 'Ext.data.Model',
config: {
- identifier: 'location',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
@@ -14,6 +12,7 @@ Ext.define('FriendlyRent.model.property.Location', {
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' },
+
{ type: 'presence', field: 'lat' },
{ type: 'presence', field: 'long' }
]
@@ -1,23 +1,21 @@
-Ext.define('FriendlyRent.model.property.RentalPeriod', {
+Ext.define('property.RentalPeriod', {
extend: 'Ext.data.Model',
config: {
- identifier: 'rental_period',
-
idProperty: 'id',
fields: [
{name: 'id', type: 'int'},
{name: 'dateCreated', type: 'date', dateFormat: 'c' },
-
- {name: 'rental_costs', type: 'rental_costs'}
-
+
{name: 'duration', type: 'int'}, // seconds
{name: 'start_date', type: 'date', dateFormat: 'c' },
{name: 'end_date' type: 'date', dateFormat: 'c' },
{name: 'asap', type: 'bool'},
{name: 'publish_at', type: 'date', dateFormat: 'c' }
],
+ hasOne: {name: 'rental_costs', model: 'property.rental_period.costs'}
+
validations: [
{ type: 'presence', field: 'id' },
{ type: 'presence', field: 'dateCreated' },
Oops, something went wrong.

0 comments on commit 06845a8

Please sign in to comment.