Valentin Zickner
04e03bd080
add multi-date fetch for current values
3 years ago
Valentin Zickner
66e7ad3fd2
prepare for multi-day database fetch
3 years ago
Thomas
b4dc21dd61
Implement new positions endpoint
3 years ago
Valentin Zickner
8a482e63b9
fix gross performance number type
3 years ago
Valentin Zickner
aabfb39e8f
optimize portfolio calculator to fetch all symbols for one day
3 years ago
Valentin Zickner
cdc8faff7f
add current position gross performance (percentage)
3 years ago
Valentin Zickner
7b696e39de
add sorting and symbol as a result
3 years ago
Valentin Zickner
c88ad2c225
change getValues to multiple symbols
3 years ago
Valentin Zickner
cbe079ae66
ignore missing values
3 years ago
Valentin Zickner
8e4ee7feea
optimize order loading
3 years ago
Valentin Zickner
f1b3c61675
add additional time measurements
3 years ago
Thomas
24dc312367
Add logs to benchmark
3 years ago
Thomas
7ac7442f73
Declare functions explicitly as public
3 years ago
Thomas
099571437e
Extend current rate service with getRange()
3 years ago
Thomas
7dac059a55
Sort imports
3 years ago
Thomas
48fbeda72d
Sort imports
3 years ago
Thomas
19007cdc34
Optimize market data query
3 years ago
Thomas
5037393866
Support today in current rate service
3 years ago
Valentin Zickner
ddf24163b4
optimize database query execution for portfolio chart
3 years ago
Valentin Zickner
b26521c4bd
add workaround for database date search
3 years ago
Valentin Zickner
cfee6c1ddd
add draft integration of new portfolio calculator to chart
3 years ago
Valentin Zickner
19bcd601d1
add gross performance
3 years ago
Valentin Zickner
836df69e68
add calculation of current investment
3 years ago
Valentin Zickner
dd86adcea1
add investment to timeline calculation
3 years ago
Valentin Zickner
4f7628921d
add timeline time point calculation
3 years ago
Valentin Zickner
88f0cb095d
make it pretty
3 years ago
Valentin Zickner
7538133d09
implement getCurrentPositions of PortfolioCalculator
3 years ago
Thomas
67606e4026
Extend current rate service test
3 years ago
Valentin Zickner
9de56c32ac
create base structure for portfolio rewrite
...
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
3 years ago
Thomas
1c65599a16
Feature/add blog ( #218 )
...
* Setup blog
* Add german blog post
* Add english blog post
* Update changelog
3 years ago
Thomas
61e667213e
Feature/add date range selector to positions tab ( #234 )
...
* Add date range selector
* Update changelog
3 years ago
Thomas
f0c6517019
Improve tabs layout ( #232 )
3 years ago
Thomas
80ba112bc0
Feature/change menu icon if menu open ( #231 )
...
* Change menu icon
* Update changelog
3 years ago
Thomas
40696b425e
Feature/add tabs on the home page ( #230 )
...
* Add tabs
* Update changelog
3 years ago
Thomas
cdcbe3ab71
Feature/various layout improvements ( #224 )
...
* Various layout improvements
* Update changelog
3 years ago
Thomas
6996e5a140
Feature/add data gathering for symbol profile data ( #228 )
...
* Implement profile data gathering
* Update changelog
3 years ago
Thomas
be8d60968d
Feature/improve active menu button style ( #227 )
...
* Improve text decoration style
* Update changelog
3 years ago
Thomas
d53e5c4da5
Refactor auth guard ( #226 )
3 years ago
Thomas
9072cbdba1
Feature/add no transactions info on zen page ( #222 )
...
* Add no transactions info to zen page
* Update changelog
3 years ago
Thomas
120b691336
Bugfix/fix url to fear and greed index ( #221 )
...
* Fix url
* Update changelog
3 years ago
Thomas
bd4ad76953
Feature/remove pause in onboarding ( #220 )
...
* Improve onboarding
* Remove pause
* Add icon
* Update changelog
3 years ago
Thomas
94d56f553f
Bugfix/fix chart on landing page ( #219 )
...
* Fix chart on landing page
* Update changelog
3 years ago
Thomas
51fbc538ca
Feature/set public stripe key dynamically ( #216 )
...
* Set public Stripe key dynamically
* Update changelog
3 years ago
Thomas
39a76f7f40
Feature/add robots.txt ( #215 )
...
* Add robots.txt
* Update changelog
3 years ago
Thomas
e4d325daab
Feature/various style improvements ( #214 )
...
* Improve styles
* Update changelog
3 years ago
Thomas
b765df65d6
Improve wording ( #213 )
3 years ago
Thomas
c7b7efae3b
Feature/import transactions ( #212 )
...
* Implement import transactions functionality
* Update changelog
3 years ago
Thomas
be5b58f49a
Bugfix/fix warn color ( #211 )
...
* Fix warn color
* Update changelog
3 years ago
Thomas
ecfe694f0b
Feature/export transactions ( #209 )
...
* Export functionality for transactions
* Update changelog
3 years ago
Thomas
b3b9a051c3
Shorten slogan ( #207 )
3 years ago
Thomas
bf1146bfd6
Feature/change slogan to wealth management ( #206 )
...
* Harmonize slogans to "Open Source Wealth Management Software"
* Update changelog
3 years ago
Thomas
0774ca91a1
Improve settings selectors layout ( #205 )
3 years ago
Thomas
f403807f2d
Bugfix/fix average buy price calculation ( #204 )
...
* Fix average buy price calculation
* Update changelog
3 years ago
Thomas
f22991b090
Feature/respect cash balance in analysis ( #203 )
...
* Respect cash balance in in analysis
* Update changelog
3 years ago
Thomas
1135a5b335
Fix rendering of currency and platform in dialogs and clean up observables ( #202 )
3 years ago
Thomas
2c19d8c8e7
Feature/add balance to account ( #193 )
...
* Add balance attribute and calculate total balance
* Update changelog
3 years ago
Thomas
db090229ce
Feature/add total value in the create or edit transaction dialog ( #192 )
...
* Display total value
* Update changelog
3 years ago
Thomas
fbe590ddb9
Feature/upgrade angular material css vars to 2.0.0 ( #200 )
...
* Upgrade angular-material-css-vars
* Update changelog
3 years ago
Thomas
3986e8f879
Upgrade Nx to version 12.5.4 ( #194 )
3 years ago
Thomas
290e93bbd7
Release 1.23.1 ( #191 )
3 years ago
Thomas
92d321a001
Drafts for orders ( #187 )
...
* Render the future with a dashed border
* Update changelog
3 years ago
Thomas
367f25a975
Feature/set user id in stripe callback ( #184 )
...
* Set user id as description
* Update changelog
3 years ago
Thomas
09bbda3502
Change from subscription to one time payment ( #181 )
3 years ago
Thomas
ee9a521813
Bugfix/fix base currency in pricing page ( #180 )
...
* Fix base currency
* Update changelog
3 years ago
Thomas
169c151547
Feature/improve style of about page ( #177 )
...
* Improve style
* Update changelog
3 years ago
Thomas
ad00cd9d81
Feature/setup subscription with stripe ( #178 )
...
* Set up stripe for subscriptions
* Update permissions and add discount
* Update changelog
3 years ago
Thomas
66c955ad6c
Feature/ghostfolio in numbers ( #175 )
...
* Add Ghostfolio in numbers section
* Update changelog
3 years ago
Thomas
3d7624d997
Feature/improve twa onboarding ( #173 )
...
* Improve TWA onboarding (Redirect to the account registration page)
* Update changelog
3 years ago
Thomas
0264b592b9
Feature/improve investments by sector ( #172 )
...
* Improve investments analysis by sector
* Update changelog
3 years ago
Thomas
a35701fe24
Feature/upgrade to angular 12 ( #169 )
...
* Upgrade to Angular 12
* Update changelog
3 years ago
Thomas
5db90f1787
Feature/improve error page of fingerprint sign in ( #167 )
...
* Improve error page
* Update changelog
3 years ago
Thomas
81fe538484
Order attribute
3 years ago
Thomas
51884913be
Feature/disable fingerprint sign in in demo account page ( #163 )
...
* Disable fingerprint toggle for demo user
* Update changelog
3 years ago
Matthias Frey
6c1119caec
Restrict webauthn to fingerprint only and improve UX ( #161 )
...
* Restrict webauthn to fingerprint only
* Move webauthn login to separate page /webauthn
* Stay signed in with social login
* Update changelog
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
3 years ago
Matthias Frey
e87c942cb8
Add webauthn ( #82 )
...
* Add webauthn
* Complete WebAuthn device sign up and login
* Move device registration to account page
* Replace the token login with a WebAuthn prompt if the current device has been registered
* Mark the current device in the list of registered auth devices
* Fix after rebase
* Fix tests
* Disable "Add current device" button if current device is registered
* Add option to "Stay signed in"
* Remove device list feature, sign in with deviceId instead
* Improve usability
* Update changelog
Co-authored-by: Matthias Frey <mfrey43@gmail.com>
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
3 years ago
Thomas
f7860a9799
Feature/introduce max items in portfolio proportion chart ( #159 )
...
* Add option to limit items
* Update changelog
3 years ago
Thomas
c519eb0e99
Bugfix/fix last activity column ( #158 )
...
* Fix last activity (only values in the past)
* Update changelog
3 years ago
Thomas
8314b98f81
Feature/improve tables ( #157 )
...
* Improve tables
* Update changelog
3 years ago
Thomas
194cf1ddcc
Feature/clean up analysis page ( #155 )
...
* Clean up analysis page
* Update changelog
3 years ago
Thomas
9eb25f6c9e
Feature/connect or create logic for symbol profile ( #153 )
...
* Add connectOrCreate logic
* Extend seed
* Update changelog
3 years ago
Thomas
f74b00446c
Feature/improve world map chart ( #152 )
...
* Improve world map chart
* Update changelog
3 years ago
Thomas
2eafc042ad
Feature/add world map ( #150 )
...
* Add a global heat map
* Update changelog
3 years ago
Thomas
6a03120225
Feature/add symbol profile model ( #148 )
...
* Add symbol profile model and positions by country chart
* Add positions by continent chart
* Fix tests
* Extend seed
* Update changelog
3 years ago
Thomas
ef272360fb
Feature/render average prices in position detail chart ( #144 )
...
* Render average buy prices
* Update changelog
3 years ago
Thomas
026a5011d4
Feature/add account registration page ( #141 )
...
* Add account registration page
* Update changelog
3 years ago
Thomas
aa4206af0e
Feature/various frontend improvements 2 ( #140 )
...
* Change buttons to links
* Update changelog
3 years ago
Thomas
34303163bc
Various frontend improvements ( #137 )
...
* Various frontend improvements
* Clean up import
3 years ago
Thomas
e7fbcd4fa0
Feature/extend pricing page ( #130 )
...
* Extend pricing page
* Feature/align pricing page with subscription model (#135 )
* Align pricing page with subscription model
* Update changelog
3 years ago
Thomas
7c22969de1
Feature/move tools to sub path ( #125 )
...
* Move tools to sub path
* Update changelog
3 years ago
Thomas
146b5201b5
Feature/make x ray rules order consistent ( #134 )
...
* Make order of X-ray rules consistent
* Update changelog
3 years ago
Thomas
b021fbde59
Feature/refactor to format distance to now strict ( #133 )
...
* Change from formatDistanceToNow to formatDistanceToNowStrict
* Update changelog
3 years ago
Thomas
aea497154a
Feature/prettify symbols in transaction filtering component ( #131 )
...
* Prettify generic scraper symbols
* Update changelog
3 years ago
Thomas
dc736d53b4
Fix sorting ( #129 )
...
* Fix sorting
3 years ago
Thomas
5957b33779
Feature/enable labels on the x axis of the investment chart ( #128 )
...
* Enable x-axis labels
* Update changelog
3 years ago
Thomas
42a2d404e4
Fix type errors ( #126 )
4 years ago
Thomas
11b2379d98
Feature/respect data source in data gathering ( #107 )
...
* Respect data source in data gathering
* Update changelog
* optimize fetching from multiple data sources (#123 )
* optimize fetching from multiple data sources
* improve performance by executing data gathering promises in parallel
* removed unused imports
* rename hasHistoricalData to canHandle
* Sort imports
* Clean up
Co-authored-by: Valentin Zickner <3200232+vzickner@users.noreply.github.com>
4 years ago
Thomas
ad961f3039
Bugfix/fix missing header of public pages ( #121 )
...
* Fix missing header of public pages
* Update changelog
4 years ago
Thomas
c16f743b07
Feature/add tools section ( #120 )
...
* Add tools section
* Update changelog
4 years ago
Thomas
8e13f6ef9b
Bugfix/fix performance chart ( #119 )
...
* Fix value of performance chart
* Update changelog
4 years ago
Thomas
95bcdea69b
Refactor cd to changeDetectorRef ( #118 )
4 years ago
Thomas
0d6fe4a232
Feature/refactor user service as observable store ( #117 )
...
* Implement user service as observable store
* Clean up tokenStorageService usage
* Update changelog
4 years ago
Thomas
b4762dc463
Bugfix/fix internal navigation with query param ( #114 )
...
* Fix internal navigation with query parameter
* Add guard
* Update changelog
4 years ago
Thomas
9851cce382
Feature/hide footer on mobile ( #113 )
...
* Hide footer on mobile
* Improve about text
* Update changelog
4 years ago
Thomas
1a553a296f
Feature/improve user table of admin control panel ( #109 )
...
* Improve user table
* Add index
* Increase limit
* Improve alignment of cell content
* Update changelog
4 years ago
Thomas
78a4946e8b
Feature/zen mode ( #110 )
...
* Start with implementation
* Refactor AuthGuard, persist displayMode in user settings
* Refactor DisplayMode to ViewMode
* Update changelog
4 years ago
Thomas
200a7d2d65
Feature/refactor search functionality ( #105 )
...
* Refactor search functionality
* Update changelog
* Improvements after code review
4 years ago
Thomas
79edc09710
Store utm_source in local storage ( #106 )
4 years ago
Thomas
77255df4be
Feature/disable base currency selector for demo user ( #104 )
...
* Disable base currency selector based on permission
* Update changelog
4 years ago
Thomas
277133fa1a
Clean up services ( #103 )
...
* LanguageService
* TokenStorageService
4 years ago
Thomas
abd0e08566
Introduce @ghostfolio/common lib ( #102 )
4 years ago
Thomas
561d8dbc70
Feature/rename account link ( #101 )
...
* Rename account link
* Update changelog
4 years ago
Thomas
c973ffd3ba
Feature/reorganize helper lib ( #100 )
...
Reorganize helper lib (Move interfaces and types)
* InfoItem
* PortfolioItem
* PortfolioOverview
* PortfolioPerformance
* Position
* PortfolioPosition
* PortfolioReport
* PortfolioReportRule
* User
* UserSettings
* DateRange
* AdminData
* AccessWithGranteeUser
* OrderWithAccount
* Granularity
* UserWithSettings
* RequestWithUser
4 years ago
Thomas
368de7dedc
Extend unit tests ( #99 )
4 years ago
Thomas
7a8a25c4c0
Feature/filter by year in transaction table ( #97 )
...
* Filter by year
Co-Authored-By: Valentin Zickner <valentin@coderworks.de>
4 years ago
Thomas
5d36d3a6bb
remove database dependencies for test execution ( #96 )
...
Co-Authored-By: Valentin Zickner <valentin@coderworks.de>
4 years ago
Thomas
0ef35fd31f
Feature/hide unknown exchange ( #95 )
...
* Hide unknown exchange
* Update changelog
4 years ago
Thomas
111d8d8e3c
Feature/rename share to allocation in columns of positions table ( #93 )
...
* Rename columns
* Initial Share -> Initial Allocation
* Current Share -> Current Allocation
* Update changelog
4 years ago
Thomas
b0a24e4fc0
Desaturate background color ( #92 )
4 years ago
Thomas
694b9b8991
Feature/refactor active menu item state ( #91 )
...
* Refactor active menu item state
* Update changelog
4 years ago
Thomas
fada347aa5
Fix pricing page link ( #90 )
4 years ago
Thomas
59911925c2
Feature/update sitemap.xml ( #88 )
...
* Update sitemap
* Update changelog
* Fix permissions in header component
4 years ago
Thomas
58fd59beb1
Release 1.2.0 ( #87 )
4 years ago
Thomas
eb09d77251
Feature/move pricing section to page ( #86 )
...
* Add a dedicated pricing page
* Update changelog
4 years ago
Thomas
42b9178d96
Feature/improve filter search in transactions table ( #85 )
...
* Improve filter search style
* Update changelog
4 years ago
Thomas
45516311f5
Improve proportion charts ( #83 )
...
* Improve proportion charts
* Clean up code
4 years ago
Thomas
04cfa7366f
Sort imports ( #84 )
4 years ago
Thomas
b8c05d1014
Feature/harmonize table styles ( #80 )
...
* Harmonize table styles
* Update changelog
4 years ago
Mantovani Gabriele
565e920f1b
Add link to retrieve manually the current market price ( #74 )
...
* feat: add link to retrieve manually the current market price from data source
* Add icon
* Update changelog
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
4 years ago
Valentin Zickner
5d24adfa75
Feature/improve transaction filtering ( #76 )
...
* add multi-filter support for transaction filtering with auto completion
* update changelog
* fix table for transaction for accounts without platform
* simplify readme file since docker compose build is not required (#75 )
* simplify readme file since docker compose build is not required
* add anchor navigation in README.md
* Improve UI
* Refactoring
* Refactoring
* Feature/travis (#77 )
* integrate travis
* fix prettier transactions-page.component.ts
* change base branch to main
* fetch all branches in .travis.yml
* Bugfix/keep current menu item active (#78 )
* Keep current menu item active
* Update changelog
* Feature/travis (#77 )
* integrate travis
* fix prettier transactions-page.component.ts
* change base branch to main
* fetch all branches in .travis.yml
* Keep current menu item active
* Update changelog
Co-authored-by: Valentin Zickner <3200232+vzickner@users.noreply.github.com>
* add multi-filter support for transaction filtering with auto completion
* update changelog
* fix table for transaction for accounts without platform
* Improve UI
* Refactoring
* Refactoring
* Update changelog
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
4 years ago
Thomas
1dc94c0027
Bugfix/keep current menu item active ( #78 )
...
* Keep current menu item active
* Update changelog
* Feature/travis (#77 )
* integrate travis
* fix prettier transactions-page.component.ts
* change base branch to main
* fetch all branches in .travis.yml
* Keep current menu item active
* Update changelog
Co-authored-by: Valentin Zickner <3200232+vzickner@users.noreply.github.com>
4 years ago
Valentin Zickner
ebae2f4ec9
Feature/travis ( #77 )
...
* integrate travis
* fix prettier transactions-page.component.ts
* change base branch to main
* fetch all branches in .travis.yml
4 years ago
Mantovani Gabriele
de973d6bda
Add filterPredicate on transactions table to filter by account name ( #73 )
...
* fix: add filterPredicate on transactions table to filter by account name
* Minor refactoring
* Update changelog
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
4 years ago
Mantovani Gabriele
631efff7ae
Add duplicate action on transactions table ( #68 )
...
* feat: add duplicate action on transactions table
* fix: review changes
* fix: add type and dataSource
4 years ago
Thomas
a3d1ac2ce4
Feature/update icon and add google play badge ( #69 )
...
* Add maskable icons
* Add Google Play badge
* Update changelog
4 years ago
Thomas
87cd3ef33f
Release 0.99.0 ( #65 )
4 years ago
Thomas
163f4a3d3f
Feature/allow to delete users ( #64 )
...
* Allow to delete users
* Update changelog
4 years ago
Thomas
a84256dc03
Feature/eliminate platform from order ( #63 )
...
* Eliminate platform from order
* Update changelog
4 years ago
Thomas
cf82066976
Fix test ( #62 )
4 years ago
Thomas
90a2fea7d6
Feature/create and update accounts ( #60 )
...
* Allow to create and update accounts
* Activate account selector in transaction dialog
* Refactor analytics and report from platforms to accounts
4 years ago
Thomas
c70eb7793e
Feature/migration to accounts ( #58 )
...
* Migrate transaction table
* Add accounts page
* Add account page logic
4 years ago
Thomas
e3a1d2b9cf
Fix tests ( #57 )
4 years ago
Thomas
0816defb95
Feature/update slogan ( #55 )
...
* Harmonize slogan
4 years ago
Thomas
a076a1c933
Feature/extend position detail dialog ( #54 )
...
* Extend position detail dialog
* Absolute change
* Number of transactions
4 years ago
Thomas
40c95a541d
Add data source to transaction model ( #53 )
4 years ago
Thomas
94e0feac68
Add scraper symbols to symbol lookup results ( #51 )
4 years ago
Thomas
11700f75d9
Improve colors in dark mode, improve user table ( #49 )
4 years ago
Thomas
608b195ba9
Extend user table ( #47 )
...
* Column: accounts
* Horizontal scrollbar
4 years ago
Thomas
8cb5fd64dd
Prepare for multi accounts support: store account for new transactions ( #46 )
4 years ago
Thomas
ef317a86ed
Setup angular compiler options ( #45 )
4 years ago
Thomas
19ada83d0b
Fix header and about page ( #44 )
4 years ago
Thomas
6ecf66ea2a
Fix types
4 years ago
Thomas
65ba16c07c
Fix tests
4 years ago
Thomas
125956eb3e
Refactor number extraction from string ( #41 )
4 years ago
Thomas
954224401d
Prepare for multi accounts support ( #42 )
4 years ago
Thomas
d268de3e12
Feature/improve styling of x ray rules ( #40 )
4 years ago
Thomas
39cfb4603b
Extend support for feature flags ( #39 )
4 years ago
Thomas
5cb69291f5
Introduce market states ( #38 )
...
* closed
* delayed (no live data)
* open
4 years ago
Thomas
cf582b2e98
Add symbol icon to position detail dialog ( #37 )
4 years ago
Thomas
82e159a083
Filter inactive users ( #36 )
4 years ago
Thomas
6c7adb6193
Prettify generic scraper symbols ( #34 )
4 years ago
Thomas
9d92c48ab7
Fix text truncation of buttons ( #33 )
4 years ago
Thomas
dbed4ea527
Feature/improve imports with paths in tsconfig ( #32 )
...
* Improve imports
4 years ago
Thomas
8d149b5e2b
Reduce period of max data gathering ( #30 )
4 years ago
Thomas
c361143ba2
Fix interceptor for unauthorized http response ( #27 )
4 years ago
Thomas
069006145a
Improve scraper ( #28 )
4 years ago
Thomas
a2687eacbc
Feature/implement scraper ( #25 )
...
* Clean up imports
* Implement scraper
* Sort imports
4 years ago
Thomas
0f2c8c856c
Clean up imports ( #24 )
4 years ago
Thomas
ec4dbf2a51
Feature/extend database seed ( #23 )
...
* Extend database seed
* platforms
* transactions of demo user
* Improve error handling
4 years ago
Thomas
3d34aa5e80
Add guards ( #22 )
4 years ago
Thomas
b200138a9e
Release 0.86.1 ( #19 )
4 years ago
Thomas
1de8c08c39
Check for environment variables ( #17 )
4 years ago
Thomas
358f0d7eaf
Improve the user table ( #16 )
4 years ago
Thomas
3558f52b84
Restore scroll position ( #15 )
4 years ago
Thomas
5d1f1b452a
Simplify initial project setup ( #12 )
...
* Simplify initial project setup
* Added a validation for environment variables
* Added support for feature flags to simplify the initial project setup
* Add configuration service to test
* Optimize data gathering and exchange rate calculation (#14 )
* Clean up changelog
4 years ago
Thomas
fed10c7110
Add license ( #8 )
...
* Add license
* Remove unnecessary style
* Add license to package.json
* Update url
* Adapt offering to new license (#13 )
* Adapt offering to new license
* Update changelog
* Add license to about page
* Adapt offering to new license
4 years ago
Thomas
a8c65cf3c2
Feature/migrate links to router link ( #2 )
...
* Migrate links to RouterLink
* Add i18n
4 years ago
Matthias Frey
c5d4823e28
Replace header.component.html href attributes with AngularRouter routerLink ( #1 )
...
* Replace header.component.html href attributes with AngularRouter routerLink
* Update changelog
Co-authored-by: Matthias Frey <matthias.frey@flowable.com>
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
4 years ago
Thomas
c616312233
Initial commit
4 years ago