mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-08-02 20:15:22 +02:00
Account Activity View + Account Forms (#1406)
* Remove balance mode, sketch out refactor * Activity view checkpoint * Entry partials, checkpoint * Finish txn partial * Give entries context when editing for different turbo responses * Calculate change of balance for each entry * Account tabs consolidation * Translations, linting, brakeman updates * Account actions concern * Finalize forms, get account system tests passing * Get tests passing * Lint, rubocop, schema updates * Improve routing and stream responses * Fix broken routes * Add import option for adding accounts * Fix system test * Fix test specificity * Fix sparklines * Improve account redirects
This commit is contained in:
parent
12e4f1067d
commit
65db49273c
216 changed files with 2043 additions and 1620 deletions
|
@ -23,74 +23,6 @@
|
|||
],
|
||||
"note": ""
|
||||
},
|
||||
{
|
||||
"warning_type": "Dynamic Render Path",
|
||||
"warning_code": 15,
|
||||
"fingerprint": "42595161ffdc9ce9a10c4ba2a75fd2bb668e273bc4e683880b0ea906d0bd28f8",
|
||||
"check_name": "Render",
|
||||
"message": "Render path contains parameter value",
|
||||
"file": "app/views/accounts/show.html.erb",
|
||||
"line": 8,
|
||||
"link": "https://brakemanscanner.org/docs/warning_types/dynamic_render_path/",
|
||||
"code": "render(action => permitted_accountable_partial(Current.family.accounts.find(params[:id]), \"header\"), { :account => Current.family.accounts.find(params[:id]) })",
|
||||
"render_path": [
|
||||
{
|
||||
"type": "controller",
|
||||
"class": "AccountsController",
|
||||
"method": "show",
|
||||
"line": 36,
|
||||
"file": "app/controllers/accounts_controller.rb",
|
||||
"rendered": {
|
||||
"name": "accounts/show",
|
||||
"file": "app/views/accounts/show.html.erb"
|
||||
}
|
||||
}
|
||||
],
|
||||
"location": {
|
||||
"type": "template",
|
||||
"template": "accounts/show"
|
||||
},
|
||||
"user_input": "params[:id]",
|
||||
"confidence": "Weak",
|
||||
"cwe_id": [
|
||||
22
|
||||
],
|
||||
"note": ""
|
||||
},
|
||||
{
|
||||
"warning_type": "Dynamic Render Path",
|
||||
"warning_code": 15,
|
||||
"fingerprint": "a35b18785608dbdf35607501363573576ed8c304039f8387997acd1408ca1025",
|
||||
"check_name": "Render",
|
||||
"message": "Render path contains parameter value",
|
||||
"file": "app/views/accounts/show.html.erb",
|
||||
"line": 35,
|
||||
"link": "https://brakemanscanner.org/docs/warning_types/dynamic_render_path/",
|
||||
"code": "render(action => permitted_accountable_partial(Current.family.accounts.find(params[:id]), \"tooltip\"), { :account => Current.family.accounts.find(params[:id]) })",
|
||||
"render_path": [
|
||||
{
|
||||
"type": "controller",
|
||||
"class": "AccountsController",
|
||||
"method": "show",
|
||||
"line": 36,
|
||||
"file": "app/controllers/accounts_controller.rb",
|
||||
"rendered": {
|
||||
"name": "accounts/show",
|
||||
"file": "app/views/accounts/show.html.erb"
|
||||
}
|
||||
}
|
||||
],
|
||||
"location": {
|
||||
"type": "template",
|
||||
"template": "accounts/show"
|
||||
},
|
||||
"user_input": "params[:id]",
|
||||
"confidence": "Weak",
|
||||
"cwe_id": [
|
||||
22
|
||||
],
|
||||
"note": ""
|
||||
},
|
||||
{
|
||||
"warning_type": "Mass Assignment",
|
||||
"warning_code": 105,
|
||||
|
@ -98,7 +30,7 @@
|
|||
"check_name": "PermitAttributes",
|
||||
"message": "Potentially dangerous key allowed for mass assignment",
|
||||
"file": "app/controllers/invitations_controller.rb",
|
||||
"line": 34,
|
||||
"line": 40,
|
||||
"link": "https://brakemanscanner.org/docs/warning_types/mass_assignment/",
|
||||
"code": "params.require(:invitation).permit(:email, :role)",
|
||||
"render_path": null,
|
||||
|
@ -129,7 +61,7 @@
|
|||
"type": "controller",
|
||||
"class": "PagesController",
|
||||
"method": "changelog",
|
||||
"line": 36,
|
||||
"line": 35,
|
||||
"file": "app/controllers/pages_controller.rb",
|
||||
"rendered": {
|
||||
"name": "pages/changelog",
|
||||
|
@ -148,40 +80,6 @@
|
|||
],
|
||||
"note": ""
|
||||
},
|
||||
{
|
||||
"warning_type": "Dynamic Render Path",
|
||||
"warning_code": 15,
|
||||
"fingerprint": "c5c512a13c34c9696024bd4e2367a657a5c140b5b6a0f5c352e9b69965f63e1b",
|
||||
"check_name": "Render",
|
||||
"message": "Render path contains parameter value",
|
||||
"file": "app/views/accounts/show.html.erb",
|
||||
"line": 63,
|
||||
"link": "https://brakemanscanner.org/docs/warning_types/dynamic_render_path/",
|
||||
"code": "render(action => permitted_accountable_partial(Current.family.accounts.find(params[:id]), \"tabs\"), { :account => Current.family.accounts.find(params[:id]), :selected_tab => params[:tab] })",
|
||||
"render_path": [
|
||||
{
|
||||
"type": "controller",
|
||||
"class": "AccountsController",
|
||||
"method": "show",
|
||||
"line": 36,
|
||||
"file": "app/controllers/accounts_controller.rb",
|
||||
"rendered": {
|
||||
"name": "accounts/show",
|
||||
"file": "app/views/accounts/show.html.erb"
|
||||
}
|
||||
}
|
||||
],
|
||||
"location": {
|
||||
"type": "template",
|
||||
"template": "accounts/show"
|
||||
},
|
||||
"user_input": "params[:id]",
|
||||
"confidence": "Weak",
|
||||
"cwe_id": [
|
||||
22
|
||||
],
|
||||
"note": ""
|
||||
},
|
||||
{
|
||||
"warning_type": "Dynamic Render Path",
|
||||
"warning_code": 15,
|
||||
|
@ -217,6 +115,6 @@
|
|||
"note": ""
|
||||
}
|
||||
],
|
||||
"updated": "2024-11-01 09:36:40 -0500",
|
||||
"updated": "2024-11-02 15:02:28 -0400",
|
||||
"brakeman_version": "6.2.2"
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@ search:
|
|||
- app/
|
||||
relative_roots:
|
||||
- app/controllers
|
||||
- app/controllers/concerns
|
||||
- app/helpers
|
||||
- app/mailers
|
||||
- app/presenters
|
||||
|
@ -25,6 +26,8 @@ search:
|
|||
- app/assets/fonts
|
||||
- app/assets/videos
|
||||
- app/assets/builds
|
||||
ignore_missing:
|
||||
- 'accountable_resource.{create,update,destroy}.success'
|
||||
ignore_unused:
|
||||
- 'activerecord.attributes.*' # i18n-tasks does not detect these on forms, forms validations (https://github.com/glebm/i18n-tasks/blob/0b4b483c82664f26c5696fb0f6aa1297356e4683/templates/config/i18n-tasks.yml#L146)
|
||||
- 'activerecord.models.*' # i18n-tasks does not detect use in dynamic model names (e.g. object.model_name.human)
|
||||
|
@ -40,4 +43,5 @@ ignore_unused:
|
|||
- 'number.*'
|
||||
- 'errors.*'
|
||||
- 'helpers.*'
|
||||
- 'support.*'
|
||||
- 'support.*'
|
||||
- '{credit_cards,cryptos,depositories,other_assets,other_liabilities,loans,vehicles,properties,investments}.{create,update,destroy}.success'
|
|
@ -7,6 +7,17 @@ en:
|
|||
empty:
|
||||
description: Try adding an entry, editing filters or refining your search
|
||||
title: No entries found
|
||||
index:
|
||||
amount: Amount
|
||||
balance: Balance
|
||||
date: Date
|
||||
entries: entries
|
||||
entry: entry
|
||||
new: New
|
||||
new_balance: New balance
|
||||
new_transaction: New transaction
|
||||
no_entries: No entries yet
|
||||
title: Activity
|
||||
loading:
|
||||
loading: Loading entries...
|
||||
update:
|
||||
|
|
|
@ -35,9 +35,5 @@ en:
|
|||
overview: Overview
|
||||
settings: Settings
|
||||
tags_label: Tags
|
||||
transaction:
|
||||
remove_transfer: Remove transfer
|
||||
remove_transfer_body: This will remove the transfer from this transaction
|
||||
remove_transfer_confirm: Confirm
|
||||
update:
|
||||
success: Transaction updated successfully.
|
||||
|
|
|
@ -18,8 +18,21 @@ en:
|
|||
transfer: Transfer
|
||||
new:
|
||||
title: New transfer
|
||||
transfer:
|
||||
remove_body: This will NOT delete the underlying transactions. It will just
|
||||
remove the transfer.
|
||||
remove_confirm: Confirm
|
||||
remove_title: Remove transfer?
|
||||
show:
|
||||
delete: Delete
|
||||
delete_subtitle: This permanently deletes both of the transactions related
|
||||
to the transfer. This cannot be undone.
|
||||
delete_title: Delete transfer?
|
||||
details: Details
|
||||
exclude_subtitle: This excludes the transfer from any in-app features or analytics.
|
||||
exclude_title: Exclude transfer
|
||||
note_label: Notes
|
||||
note_placeholder: Add a note to this transfer
|
||||
overview: Overview
|
||||
settings: Settings
|
||||
transfer_toggle:
|
||||
remove_transfer: Remove transfer
|
||||
remove_transfer_body: This will remove the transfer from this transaction
|
||||
remove_transfer_confirm: Confirm
|
||||
update:
|
||||
success: Transfer updated
|
||||
|
|
|
@ -5,7 +5,8 @@ en:
|
|||
create:
|
||||
success: Valuation created successfully.
|
||||
form:
|
||||
cancel: Cancel
|
||||
amount: Amount
|
||||
submit: Add balance update
|
||||
index:
|
||||
change: change
|
||||
date: date
|
||||
|
@ -13,15 +14,19 @@ en:
|
|||
no_valuations: No valuations for this account yet
|
||||
valuations: Value
|
||||
value: value
|
||||
valuation:
|
||||
confirm_accept: Delete entry
|
||||
confirm_body_html: "<p>Deleting this entry will remove it from the account’s
|
||||
history which will impact different parts of your account. This includes
|
||||
the net worth and account graphs.</p></br><p>The only way you’ll be able
|
||||
to add this entry back is by re-entering it manually via a new entry.</p>"
|
||||
confirm_title: Delete Entry?
|
||||
delete_entry: Delete entry
|
||||
edit_entry: Edit entry
|
||||
no_change: No change
|
||||
start_balance: Starting balance
|
||||
value_update: Value update
|
||||
new:
|
||||
title: New balance
|
||||
show:
|
||||
amount: Amount
|
||||
balance: Balance
|
||||
date_label: Date
|
||||
delete: Delete
|
||||
delete_subtitle: This action cannot be undone
|
||||
delete_title: Delete Entry
|
||||
details: Details
|
||||
name_label: Name
|
||||
name_placeholder: Enter a name for this entry
|
||||
note_label: Notes
|
||||
note_placeholder: Add any additional details about this entry
|
||||
overview: Overview
|
||||
settings: Settings
|
||||
|
|
|
@ -6,165 +6,64 @@ en:
|
|||
troubleshoot: Troubleshoot
|
||||
account_list:
|
||||
new_account: New %{type}
|
||||
accountables:
|
||||
credit_card:
|
||||
form:
|
||||
annual_fee: Annual fee
|
||||
annual_fee_placeholder: '99'
|
||||
apr: APR
|
||||
apr_placeholder: '15.99'
|
||||
available_credit: Available credit
|
||||
available_credit_placeholder: '10000'
|
||||
expiration_date: Expiration date
|
||||
minimum_payment: Minimum payment
|
||||
minimum_payment_placeholder: '100'
|
||||
overview:
|
||||
amount_owed: Amount Owed
|
||||
annual_fee: Annual Fee
|
||||
apr: APR
|
||||
available_credit: Available Credit
|
||||
expiration_date: Expiration Date
|
||||
minimum_payment: Minimum Payment
|
||||
unknown: Unknown
|
||||
depository:
|
||||
form:
|
||||
none: None
|
||||
prompt: Select a subtype
|
||||
investment:
|
||||
form:
|
||||
none: None
|
||||
prompt: Select a subtype
|
||||
tooltip:
|
||||
cash: Cash
|
||||
holdings: Holdings
|
||||
total_value_tooltip: The total value is the sum of cash balance and your
|
||||
holdings value, minus margin loans.
|
||||
loan:
|
||||
form:
|
||||
interest_rate: Interest rate
|
||||
interest_rate_placeholder: '5.25'
|
||||
rate_type: Rate type
|
||||
term_months: Term (months)
|
||||
term_months_placeholder: '360'
|
||||
overview:
|
||||
interest_rate: Interest Rate
|
||||
monthly_payment: Monthly Payment
|
||||
not_applicable: N/A
|
||||
original_principal: Original Principal
|
||||
remaining_principal: Remaining Principal
|
||||
term: Term
|
||||
type: Type
|
||||
unknown: Unknown
|
||||
property:
|
||||
form:
|
||||
additional_info: Additional info
|
||||
area_unit: Area unit
|
||||
area_value: Area value
|
||||
city: City
|
||||
country: Country
|
||||
line1: Address line 1
|
||||
line2: Address line 2
|
||||
optional: optional
|
||||
postal_code: Postal code
|
||||
state: State
|
||||
year_built: Year built
|
||||
overview:
|
||||
living_area: Living Area
|
||||
market_value: Market Value
|
||||
purchase_price: Purchase Price
|
||||
trend: Trend
|
||||
unknown: Unknown
|
||||
year_built: Year Built
|
||||
vehicle:
|
||||
form:
|
||||
make: Make
|
||||
make_placeholder: Toyota
|
||||
mileage: Mileage
|
||||
mileage_placeholder: '15000'
|
||||
mileage_unit: Unit
|
||||
model: Model
|
||||
model_placeholder: Camry
|
||||
year: Year
|
||||
year_placeholder: '2023'
|
||||
overview:
|
||||
current_price: Current Price
|
||||
make_model: Make & Model
|
||||
mileage: Mileage
|
||||
purchase_price: Purchase Price
|
||||
trend: Trend
|
||||
unknown: Unknown
|
||||
year: Year
|
||||
create:
|
||||
success: New account created successfully
|
||||
destroy:
|
||||
success: Account deleted successfully
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
empty:
|
||||
empty_message: Add an account either via connection, importing or entering manually.
|
||||
new_account: New account
|
||||
no_accounts: No accounts yet
|
||||
form:
|
||||
accountable_type: Account type
|
||||
balance: Today's balance
|
||||
balance: Current balance
|
||||
institution: Financial institution
|
||||
mode: Value tracking mode
|
||||
mode_prompt: Select a mode
|
||||
name_label: Account name
|
||||
name_placeholder: Example account name
|
||||
type_prompt: Select a type
|
||||
ungrouped: "(none)"
|
||||
header:
|
||||
accounts: Accounts
|
||||
manage: Manage accounts
|
||||
new: New account
|
||||
index:
|
||||
accounts: Accounts
|
||||
add_institution: Add institution
|
||||
institution_accounts:
|
||||
add_account_to_institution: Add new account
|
||||
confirm_accept: Delete institution
|
||||
confirm_body: Don't worry, none of the accounts within this institution will
|
||||
be affected by this deletion. Accounts will be ungrouped and all historical
|
||||
data will remain intact.
|
||||
confirm_title: Delete financial institution?
|
||||
delete: Delete institution
|
||||
edit: Edit institution
|
||||
has_issues: Issue detected, see accounts
|
||||
new_account: Add account
|
||||
status: Last synced %{last_synced_at} ago
|
||||
status_never: Requires data sync
|
||||
syncing: Syncing...
|
||||
institutionless_accounts:
|
||||
other_accounts: Other accounts
|
||||
new_account: New account
|
||||
institution_accounts:
|
||||
add_account_to_institution: Add new account
|
||||
confirm_accept: Delete institution
|
||||
confirm_body: Don't worry, none of the accounts within this institution will
|
||||
be affected by this deletion. Accounts will be ungrouped and all historical
|
||||
data will remain intact.
|
||||
confirm_title: Delete financial institution?
|
||||
delete: Delete institution
|
||||
edit: Edit institution
|
||||
has_issues: Issue detected, see accounts
|
||||
new_account: Add account
|
||||
status: Last synced %{last_synced_at} ago
|
||||
status_never: Requires data sync
|
||||
syncing: Syncing...
|
||||
institutionless_accounts:
|
||||
other_accounts: Other accounts
|
||||
menu:
|
||||
confirm_accept: Delete "%{name}"
|
||||
confirm_body_html: "<p>By deleting this account, you will erase its value history,
|
||||
affecting various aspects of your overall account. This action will have a
|
||||
direct impact on your net worth calculations and the account graphs.</p><br
|
||||
/> <p>After deletion, there is no way you'll be able to restore the account
|
||||
information because you'll need to add it as a new account.</p>"
|
||||
confirm_title: Delete account?
|
||||
edit: Edit
|
||||
import: Import transactions
|
||||
new:
|
||||
connected_entry: Securely link account with Plaid (coming soon)
|
||||
csv_entry: Import accounts CSV
|
||||
manual_entry: Enter account manually
|
||||
title: Add an account
|
||||
new:
|
||||
method_selector:
|
||||
connected_entry: Link account (coming soon)
|
||||
manual_entry: Enter account balance
|
||||
title: How would you like to add it?
|
||||
import_accounts: Import accounts
|
||||
title: What would you like to add?
|
||||
show:
|
||||
cash: Cash
|
||||
holdings: Holdings
|
||||
no_change: No change
|
||||
overview: Overview
|
||||
total_owed: Total Owed
|
||||
total_value: Total Value
|
||||
trades: Transactions
|
||||
transactions: Transactions
|
||||
value: Value
|
||||
chart:
|
||||
balance: Balance
|
||||
no_change: no change
|
||||
owed: Amount owed
|
||||
menu:
|
||||
confirm_accept: Delete "%{name}"
|
||||
confirm_body_html: "<p>By deleting this account, you will erase its value
|
||||
history, affecting various aspects of your overall account. This action
|
||||
will have a direct impact on your net worth calculations and the account
|
||||
graphs.</p><br /> <p>After deletion, there is no way you'll be able to restore
|
||||
the account information because you'll need to add it as a new account.</p>"
|
||||
confirm_title: Delete account?
|
||||
edit: Edit
|
||||
import: Import transactions
|
||||
summary:
|
||||
new: New
|
||||
header:
|
||||
accounts: Accounts
|
||||
manage: Manage accounts
|
||||
new: New account
|
||||
new: New account
|
||||
no_assets: No assets found
|
||||
no_assets_description: Add an asset either via connection, importing or entering
|
||||
manually.
|
||||
|
@ -174,16 +73,4 @@ en:
|
|||
sync_all:
|
||||
success: Successfully queued accounts for syncing.
|
||||
sync_all_button:
|
||||
sync: Sync all
|
||||
update:
|
||||
success: Account updated
|
||||
credit_cards:
|
||||
create:
|
||||
success: Credit card created successfully
|
||||
update:
|
||||
success: Credit card updated successfully
|
||||
loans:
|
||||
create:
|
||||
success: Loan created successfully
|
||||
update:
|
||||
success: Loan updated successfully
|
||||
sync: Sync all
|
31
config/locales/views/credit_cards/en.yml
Normal file
31
config/locales/views/credit_cards/en.yml
Normal file
|
@ -0,0 +1,31 @@
|
|||
---
|
||||
en:
|
||||
credit_cards:
|
||||
create:
|
||||
success: Credit card account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Credit card account deleted
|
||||
form:
|
||||
annual_fee: Annual fee
|
||||
annual_fee_placeholder: '99'
|
||||
apr: APR
|
||||
apr_placeholder: '15.99'
|
||||
available_credit: Available credit
|
||||
available_credit_placeholder: '10000'
|
||||
expiration_date: Expiration date
|
||||
minimum_payment: Minimum payment
|
||||
minimum_payment_placeholder: '100'
|
||||
new:
|
||||
title: Enter credit card details
|
||||
overview:
|
||||
amount_owed: Amount Owed
|
||||
annual_fee: Annual Fee
|
||||
apr: APR
|
||||
available_credit: Available Credit
|
||||
expiration_date: Expiration Date
|
||||
minimum_payment: Minimum Payment
|
||||
unknown: Unknown
|
||||
update:
|
||||
success: Credit card account updated
|
13
config/locales/views/cryptos/en.yml
Normal file
13
config/locales/views/cryptos/en.yml
Normal file
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
en:
|
||||
cryptos:
|
||||
create:
|
||||
success: Crypto account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
new:
|
||||
title: Enter account balance
|
||||
update:
|
||||
success: Crypto account updated
|
||||
destroy:
|
||||
success: Crypto account deleted
|
16
config/locales/views/depositories/en.yml
Normal file
16
config/locales/views/depositories/en.yml
Normal file
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
en:
|
||||
depositories:
|
||||
create:
|
||||
success: Depository account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
form:
|
||||
none: None
|
||||
subtype_prompt: Select account type
|
||||
new:
|
||||
title: Enter account balance
|
||||
update:
|
||||
success: Depository account updated
|
||||
destroy:
|
||||
success: Depository account deleted
|
23
config/locales/views/investments/en.yml
Normal file
23
config/locales/views/investments/en.yml
Normal file
|
@ -0,0 +1,23 @@
|
|||
---
|
||||
en:
|
||||
investments:
|
||||
create:
|
||||
success: Investment account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
form:
|
||||
none: None
|
||||
subtype_prompt: Select investment type
|
||||
new:
|
||||
title: Enter account balance
|
||||
show:
|
||||
chart_title: Total value
|
||||
update:
|
||||
success: Investment account updated
|
||||
destroy:
|
||||
success: Investment account deleted
|
||||
value_tooltip:
|
||||
cash: Cash
|
||||
holdings: Holdings
|
||||
total_value_tooltip: The total value is the sum of cash balance and your holdings
|
||||
value, minus margin loans.
|
28
config/locales/views/loans/en.yml
Normal file
28
config/locales/views/loans/en.yml
Normal file
|
@ -0,0 +1,28 @@
|
|||
---
|
||||
en:
|
||||
loans:
|
||||
create:
|
||||
success: Loan account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Loan account deleted
|
||||
form:
|
||||
interest_rate: Interest rate
|
||||
interest_rate_placeholder: '5.25'
|
||||
rate_type: Rate type
|
||||
term_months: Term (months)
|
||||
term_months_placeholder: '360'
|
||||
new:
|
||||
title: Enter loan details
|
||||
overview:
|
||||
interest_rate: Interest Rate
|
||||
monthly_payment: Monthly Payment
|
||||
not_applicable: N/A
|
||||
original_principal: Original Principal
|
||||
remaining_principal: Remaining Principal
|
||||
term: Term
|
||||
type: Type
|
||||
unknown: Unknown
|
||||
update:
|
||||
success: Loan account updated
|
13
config/locales/views/other_assets/en.yml
Normal file
13
config/locales/views/other_assets/en.yml
Normal file
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
en:
|
||||
other_assets:
|
||||
create:
|
||||
success: Other asset account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Other asset account deleted
|
||||
new:
|
||||
title: Enter asset details
|
||||
update:
|
||||
success: Other asset account updated
|
13
config/locales/views/other_liabilities/en.yml
Normal file
13
config/locales/views/other_liabilities/en.yml
Normal file
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
en:
|
||||
other_liabilities:
|
||||
create:
|
||||
success: Other liability account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Other liability account deleted
|
||||
new:
|
||||
title: Enter liability details
|
||||
update:
|
||||
success: Other liability account updated
|
|
@ -2,6 +2,37 @@
|
|||
en:
|
||||
properties:
|
||||
create:
|
||||
success: Property created successfully
|
||||
success: Property account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Property account deleted
|
||||
form:
|
||||
address_line1: Street address
|
||||
address_line1_placeholder: 123 Main St
|
||||
area: Living area
|
||||
area_placeholder: '2000'
|
||||
area_unit: Unit of measurement
|
||||
country: Country
|
||||
country_placeholder: US
|
||||
locality: City
|
||||
locality_placeholder: San Francisco
|
||||
none: None
|
||||
postal_code: ZIP/Postal code
|
||||
postal_code_placeholder: '94105'
|
||||
region: State/Province
|
||||
region_placeholder: CA
|
||||
subtype_prompt: Select property type
|
||||
year_built: Year built
|
||||
year_built_placeholder: '2000'
|
||||
new:
|
||||
title: Enter property details
|
||||
overview:
|
||||
living_area: Living Area
|
||||
market_value: Market Value
|
||||
purchase_price: Purchase Price
|
||||
trend: Trend
|
||||
unknown: Unknown
|
||||
year_built: Year Built
|
||||
update:
|
||||
success: Property updated successfully
|
||||
success: Property account updated
|
||||
|
|
|
@ -40,6 +40,7 @@ en:
|
|||
import: Import
|
||||
index:
|
||||
transaction: transaction
|
||||
transactions: transactions
|
||||
mark_transfers:
|
||||
success: Marked as transfer
|
||||
new:
|
||||
|
|
|
@ -2,6 +2,30 @@
|
|||
en:
|
||||
vehicles:
|
||||
create:
|
||||
success: Vehicle created successfully
|
||||
success: Vehicle account created
|
||||
edit:
|
||||
edit: Edit %{account}
|
||||
destroy:
|
||||
success: Vehicle account deleted
|
||||
form:
|
||||
make: Make
|
||||
make_placeholder: Toyota
|
||||
mileage: Mileage
|
||||
mileage_placeholder: '15000'
|
||||
mileage_unit: Unit
|
||||
model: Model
|
||||
model_placeholder: Camry
|
||||
year: Year
|
||||
year_placeholder: '2023'
|
||||
new:
|
||||
title: Enter vehicle details
|
||||
overview:
|
||||
current_price: Current Price
|
||||
make_model: Make & Model
|
||||
mileage: Mileage
|
||||
purchase_price: Purchase Price
|
||||
trend: Trend
|
||||
unknown: Unknown
|
||||
year: Year
|
||||
update:
|
||||
success: Vehicle updated successfully
|
||||
success: Vehicle account updated
|
||||
|
|
|
@ -45,7 +45,7 @@ Rails.application.routes.draw do
|
|||
resources :merchants, only: %i[index new create edit update destroy]
|
||||
|
||||
namespace :account do
|
||||
resources :transfers, only: %i[new create destroy]
|
||||
resources :transfers, only: %i[new create destroy show update]
|
||||
end
|
||||
|
||||
resources :imports, only: %i[index new show create destroy] do
|
||||
|
@ -60,7 +60,7 @@ Rails.application.routes.draw do
|
|||
resources :mappings, only: :update, module: :import
|
||||
end
|
||||
|
||||
resources :accounts do
|
||||
resources :accounts, only: %i[index new] do
|
||||
collection do
|
||||
get :summary
|
||||
get :list
|
||||
|
@ -81,14 +81,28 @@ Rails.application.routes.draw do
|
|||
get :securities, on: :collection
|
||||
end
|
||||
|
||||
resources :entries, only: %i[edit update show destroy]
|
||||
resources :entries, only: %i[index edit update show destroy]
|
||||
end
|
||||
end
|
||||
|
||||
resources :properties, only: %i[create update]
|
||||
resources :vehicles, only: %i[create update]
|
||||
resources :credit_cards, only: %i[create update]
|
||||
resources :loans, only: %i[create update]
|
||||
# Convenience routes for polymorphic paths
|
||||
# Example: account_path(Account.new(accountable: Depository.new)) => /depositories/123
|
||||
direct :account do |model, options|
|
||||
route_for model.accountable_name, model, options
|
||||
end
|
||||
direct :edit_account do |model, options|
|
||||
route_for "edit_#{model.accountable_name}", model, options
|
||||
end
|
||||
|
||||
resources :depositories, except: :index
|
||||
resources :investments, except: :index
|
||||
resources :properties, except: :index
|
||||
resources :vehicles, except: :index
|
||||
resources :credit_cards, except: :index
|
||||
resources :loans, except: :index
|
||||
resources :cryptos, except: :index
|
||||
resources :other_assets, except: :index
|
||||
resources :other_liabilities, except: :index
|
||||
|
||||
resources :transactions, only: %i[index new create] do
|
||||
collection do
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue