monopyly 1.4.5__py3-none-any.whl → 1.4.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- monopyly/CHANGELOG.md +187 -0
- monopyly/README.md +13 -2
- monopyly/__init__.py +19 -0
- monopyly/_version.py +2 -2
- monopyly/banking/accounts.py +1 -1
- monopyly/cli/apps.py +25 -4
- monopyly/common/forms/_forms.py +14 -11
- monopyly/core/actions.py +108 -21
- monopyly/core/blueprint.py +1 -1
- monopyly/core/context_processors.py +10 -0
- monopyly/core/errors.py +9 -0
- monopyly/core/filters.py +4 -2
- monopyly/core/routes.py +22 -9
- monopyly/credit/actions.py +29 -2
- monopyly/credit/routes.py +11 -6
- monopyly/credit/statements.py +21 -1
- monopyly/credit/transactions/_transactions.py +1 -1
- monopyly/static/css/style.css +161 -69
- monopyly/static/js/make-payment.js +4 -2
- monopyly/templates/auth/login.html +1 -1
- monopyly/templates/auth/register.html +1 -1
- monopyly/templates/banking/account_summaries.html +26 -12
- monopyly/templates/banking/account_summaries_page.html +2 -1
- monopyly/templates/banking/account_summary.html +7 -2
- monopyly/templates/banking/accounts_page.html +2 -2
- monopyly/templates/banking/transaction_form/transaction_form.html +1 -1
- monopyly/templates/core/credits.html +32 -0
- monopyly/templates/core/errors/400.html +8 -0
- monopyly/templates/core/errors/401.html +8 -0
- monopyly/templates/core/errors/403.html +8 -0
- monopyly/templates/core/errors/404.html +8 -0
- monopyly/templates/core/errors/405.html +8 -0
- monopyly/templates/core/errors/408.html +8 -0
- monopyly/templates/core/errors/418.html +8 -0
- monopyly/templates/core/errors/425.html +8 -0
- monopyly/templates/core/errors/500.html +8 -0
- monopyly/templates/core/errors/error.html +31 -0
- monopyly/templates/{profile.html → core/profile.html} +3 -1
- monopyly/templates/credit/card_graphic/card_back.html +1 -1
- monopyly/templates/credit/statement_summary.html +9 -4
- monopyly/templates/credit/statements.html +7 -6
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/METADATA +16 -5
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/RECORD +49 -37
- monopyly/templates/credits.html +0 -20
- /monopyly/templates/{index.html → core/index.html} +0 -0
- /monopyly/templates/{story.html → core/story.html} +0 -0
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/WHEEL +0 -0
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/entry_points.txt +0 -0
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/licenses/COPYING +0 -0
- {monopyly-1.4.5.dist-info → monopyly-1.4.7.dist-info}/licenses/LICENSE +0 -0
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
<input name="username" id="username" required>
|
|
11
11
|
<label for="password">Password</label>
|
|
12
12
|
<input type="password" name="password" id="password" required>
|
|
13
|
-
<input class="button" type="submit" value="Log In"
|
|
13
|
+
<input class="button" type="submit" value="Log In" />
|
|
14
14
|
</form>
|
|
15
15
|
{% endblock %}
|
|
@@ -10,6 +10,6 @@
|
|
|
10
10
|
<input name="username" id="username" required>
|
|
11
11
|
<label for="password">Password</label>
|
|
12
12
|
<input type="password" name="password" id="password" required>
|
|
13
|
-
<input class="button" type="submit" value="Register"
|
|
13
|
+
<input class="button" type="submit" value="Register" />
|
|
14
14
|
</form>
|
|
15
15
|
{% endblock %}
|
|
@@ -1,21 +1,35 @@
|
|
|
1
1
|
<div id="bank-account-summaries">
|
|
2
2
|
|
|
3
|
-
{% for account_type in type_accounts %}
|
|
4
|
-
|
|
3
|
+
{% for account_type, accounts in type_accounts|items %}
|
|
4
|
+
{# Use a scoped variable so that the accounts generator can be reused #}
|
|
5
|
+
{% with accounts = accounts|list %}
|
|
5
6
|
|
|
6
|
-
|
|
7
|
+
<div class="account-type-stack group-stack">
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
</a>
|
|
9
|
+
<h2 class="stack-title">
|
|
10
|
+
{{ account_type.type_name }}
|
|
11
|
+
{% if accounts|length> 1 %}
|
|
12
|
+
<span class="stack-title-info">${{ accounts|sum(attribute='balance')|currency }}</span>
|
|
13
|
+
{% endif %}
|
|
14
|
+
</h2>
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
<div class="account-blocks">
|
|
17
|
+
{% for account in accounts|sort(attribute='last_four_digits') %}
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
<a class="account-block button-block" href="{{ url_for('banking.load_account_details', account_id=account.id) }}">
|
|
20
|
+
<div class="title">
|
|
21
|
+
<span class="digits">{{ account.last_four_digits }}</span>
|
|
22
|
+
<b>{{ account.account_type.type_name }}</b>
|
|
23
|
+
</div>
|
|
24
|
+
<div class="balance">${{ account.balance|currency }}</div>
|
|
25
|
+
</a>
|
|
26
|
+
|
|
27
|
+
{% endfor %}
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
{% endwith %}
|
|
19
33
|
{% endfor %}
|
|
20
34
|
|
|
21
35
|
</div>
|
|
@@ -44,7 +44,8 @@
|
|
|
44
44
|
{% block content %}
|
|
45
45
|
|
|
46
46
|
<div id="bank-account-summaries-container">
|
|
47
|
-
<h2 class="bank">{{ bank.bank_name }}
|
|
47
|
+
<h2 class="bank">{{ bank.bank_name }}</h2>
|
|
48
|
+
<h3 class="balance">${{ bank_balance|currency }}</h3>
|
|
48
49
|
|
|
49
50
|
{% include 'banking/account_summaries.html' %}
|
|
50
51
|
|
|
@@ -9,8 +9,13 @@
|
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
11
|
<div class="balance">
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
{% with account_balance = account.balance|currency %}
|
|
13
|
+
{% set vbox_width = calculate_summary_balance_width(account_balance) %}
|
|
14
|
+
<svg viewBox="0 0 {{ vbox_width }} 100">
|
|
15
|
+
<text x="0" y="75" fill="currentColor">$</text>
|
|
16
|
+
<text x="75" y="75" fill="currentColor">{{ account_balance }}</text>
|
|
17
|
+
</svg>
|
|
18
|
+
{% endwith %}
|
|
14
19
|
</div>
|
|
15
20
|
|
|
16
21
|
{% if account.balance != account.projected_balance %}
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
{% set bank_accounts = bank.bank_accounts %}
|
|
20
20
|
{% if bank_accounts %}
|
|
21
21
|
|
|
22
|
-
<div class="bank-
|
|
23
|
-
<
|
|
22
|
+
<div class="bank-stack group-stack">
|
|
23
|
+
<h2 class="stack-title">{{ bank.bank_name }}</h2>
|
|
24
24
|
|
|
25
25
|
<div class="account-blocks box-table">
|
|
26
26
|
{% for account in bank_accounts %}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{% extends "layout.html" %}
|
|
2
|
+
|
|
3
|
+
{% block title %}
|
|
4
|
+
Credits
|
|
5
|
+
{% endblock %}
|
|
6
|
+
|
|
7
|
+
{% block header %}
|
|
8
|
+
<h1>Credits</h1>
|
|
9
|
+
{% endblock %}
|
|
10
|
+
|
|
11
|
+
{% block content %}
|
|
12
|
+
|
|
13
|
+
<div class="credits">
|
|
14
|
+
|
|
15
|
+
<h3>Image Credits</h3>
|
|
16
|
+
<p>
|
|
17
|
+
The chain link icon was adapted from <a href="https://commons.wikimedia.org/wiki/File:Chain_link_icon.png">Wikipedia Commons</a>.
|
|
18
|
+
The original image was created by user Mdowdell and published under the <a href="https://creativecommons.org/licenses/by-sa/3.0/legalcode">CC BY-SA 3.0 License</a>.
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
<div class="affiliation-disclaimer">
|
|
24
|
+
|
|
25
|
+
<h3>Disclaimer</h3>
|
|
26
|
+
<p>
|
|
27
|
+
At risk of stating the obvious, given that this is a <b>homemade personal finance manager</b>, the <i>Monopyly</i> app is in no way affiliated, associated, authorized, endorsed by, or in any way officially connected with Hasbro, the present publisher and trademark holder of the board game MONOPOLY.
|
|
28
|
+
</p>
|
|
29
|
+
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
{% endblock %}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{% extends "layout.html" %}
|
|
2
|
+
|
|
3
|
+
{% block title %}
|
|
4
|
+
{{ exception.name }} ({{ exception.code }})
|
|
5
|
+
{% endblock %}
|
|
6
|
+
|
|
7
|
+
{% block header %}
|
|
8
|
+
|
|
9
|
+
<h1 class="error">
|
|
10
|
+
No dice!
|
|
11
|
+
<span class="code">
|
|
12
|
+
{{ exception.code }} Error: {{ exception.name }}
|
|
13
|
+
</span>
|
|
14
|
+
</h1>
|
|
15
|
+
|
|
16
|
+
{% endblock %}
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
{% block content %}
|
|
20
|
+
|
|
21
|
+
<div class="custom-error-content">
|
|
22
|
+
{% block custom_error_content %}
|
|
23
|
+
{% endblock %}
|
|
24
|
+
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<div class="standard-error-content">
|
|
28
|
+
<p class="error-description">{{ exception.description }}</p>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
{% endblock %}
|
|
@@ -25,7 +25,9 @@
|
|
|
25
25
|
<div class=user-settings">
|
|
26
26
|
|
|
27
27
|
<div class="password">
|
|
28
|
-
<a style="color: gray;" href="
|
|
28
|
+
<a style="color: gray;" href="{{ url_for('core.change_password') }}">
|
|
29
|
+
Change password (coming soon)
|
|
30
|
+
</a>
|
|
29
31
|
</div>
|
|
30
32
|
|
|
31
33
|
</div>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<div class="options">
|
|
11
11
|
|
|
12
12
|
<label class="toggle-switch-gadget" for="card-{{ card.id }}-status">
|
|
13
|
-
<input id="card-{{ card.id }}-status" data-card-id="{{ card.id }}" type="checkbox"
|
|
13
|
+
<input id="card-{{ card.id }}-status" data-card-id="{{ card.id }}" type="checkbox"{{ ' checked' if card.active else '' }} />
|
|
14
14
|
|
|
15
15
|
<div class="option">
|
|
16
16
|
<div class="text">
|
|
@@ -9,8 +9,13 @@
|
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
11
|
<div class="balance">
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
{% with statement_balance = statement.balance|currency %}
|
|
13
|
+
{% set vbox_width = calculate_summary_balance_width(statement_balance) %}
|
|
14
|
+
<svg viewBox="0 0 {{ vbox_width }} 100">
|
|
15
|
+
<text x="0" y="75" fill="currentColor">$</text>
|
|
16
|
+
<text x="75" y="75" fill="currentColor">{{ statement_balance }}</text>
|
|
17
|
+
</svg>
|
|
18
|
+
{% endwith %}
|
|
14
19
|
</div>
|
|
15
20
|
|
|
16
21
|
<div id="payment">
|
|
@@ -47,8 +52,8 @@
|
|
|
47
52
|
|
|
48
53
|
<div class="form-line">
|
|
49
54
|
<div class="dollar-sign">$</div>
|
|
50
|
-
<input id="pay-amount" type="text" name="pay_amount" value="{{ statement.balance|currency }}" maxlength="8"/>
|
|
51
|
-
<input id="pay-date" type="text" name="pay_date" value="{{ date_today }}" maxlength="10"/>
|
|
55
|
+
<input id="pay-amount" type="text" name="pay_amount" value="{{ statement.balance|currency }}" maxlength="8" />
|
|
56
|
+
<input id="pay-date" type="text" name="pay_date" value="{{ date_today }}" maxlength="10" />
|
|
52
57
|
</div>
|
|
53
58
|
|
|
54
59
|
<div class="form-line">
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
<div id="credit-statements">
|
|
2
2
|
|
|
3
|
-
{% for card in card_statements %}
|
|
3
|
+
{% for card, statements in card_statements|items %}
|
|
4
4
|
|
|
5
|
-
<div class="card-
|
|
5
|
+
<div class="card-stack group-stack">
|
|
6
6
|
|
|
7
|
-
<
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
<h2 class="stack-title">
|
|
8
|
+
{{ card.account.bank.bank_name }}
|
|
9
|
+
<span class="stack-title-info">{{ card.last_four_digits }}</span>
|
|
10
|
+
</h2>
|
|
10
11
|
|
|
11
12
|
<div class="statement-blocks">
|
|
12
|
-
{% for statement in
|
|
13
|
+
{% for statement in statements %}
|
|
13
14
|
{% if statement.balance is not none %}
|
|
14
15
|
|
|
15
16
|
<a class="statement-block button-block" href="{{ url_for('credit.load_statement_details', statement_id=statement.id) }}">
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: monopyly
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.7
|
|
4
4
|
Summary: A homemade personal finance manager.
|
|
5
5
|
Project-URL: Download, https://pypi.org/project/monopyly
|
|
6
6
|
Project-URL: Homepage, http://monopyly.com
|
|
@@ -25,9 +25,9 @@ Classifier: Topic :: Office/Business :: Financial :: Spreadsheet
|
|
|
25
25
|
Requires-Python: <3.11,>=3.10
|
|
26
26
|
Requires-Dist: authanor==1.1.0
|
|
27
27
|
Requires-Dist: flask-wtf==1.2.1
|
|
28
|
-
Requires-Dist: flask==3.0.
|
|
28
|
+
Requires-Dist: flask==3.0.3
|
|
29
29
|
Requires-Dist: fuisce==1.0.2
|
|
30
|
-
Requires-Dist: gunicorn==
|
|
30
|
+
Requires-Dist: gunicorn==22.0.0
|
|
31
31
|
Requires-Dist: markdown==3.6
|
|
32
32
|
Requires-Dist: python-dateutil==2.9.0
|
|
33
33
|
Requires-Dist: rich==13.7.1
|
|
@@ -63,12 +63,23 @@ The package requires a recent version of Python (3.9+).
|
|
|
63
63
|
|
|
64
64
|
## Getting started
|
|
65
65
|
|
|
66
|
-
Once the package is properly installed, run the app from the command line (the default options should be sensible, but you may customize the host and port if necessary):
|
|
66
|
+
Once the package is properly installed, run the app in local mode from the command line (the default options should be sensible, but you may customize the host and port if necessary):
|
|
67
67
|
|
|
68
68
|
```
|
|
69
|
-
$ monopyly
|
|
69
|
+
$ monopyly local --browser [--host HOST] [--port PORT]
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
+
Local mode indicates that the app is just going to be run using a locally hosted server, accessible to just your machine.
|
|
73
|
+
Other available modes are `development` and `production`, for those looking to either develop the application or host the application on a server.
|
|
74
|
+
|
|
75
|
+
<div class="warning">
|
|
76
|
+
<h5>Use your brain when choosing a mode!</h5>
|
|
77
|
+
<small>
|
|
78
|
+
If you intend to be the only user of the app, served just from your PC, local mode is fine; you will be served well-enough by the built-in Python server, and you do not need to configure secret keys for the application.
|
|
79
|
+
If you plan to host the application, however, <b>DO NOT</b> use local mode (or development mode) and run the app in production mode instead.
|
|
80
|
+
</small>
|
|
81
|
+
</div>
|
|
82
|
+
|
|
72
83
|
By using the `--browser` option in development mode, this will open to an empty homepage with a welcome message.
|
|
73
84
|
|
|
74
85
|
<img class="screenshot" src="https://raw.githubusercontent.com/mitchnegus/monopyly/main/monopyly/static/img/about/homepage.png" alt="user homepage" width="800px">
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
monopyly/
|
|
2
|
-
monopyly/
|
|
3
|
-
monopyly/
|
|
1
|
+
monopyly/CHANGELOG.md,sha256=ulbbaPAcVSV7oNWm3yswxZJFCESWwG2zk2jamVJxAFQ,7137
|
|
2
|
+
monopyly/README.md,sha256=f7pDaNKl5hvycxVWWuZOeO6SDP-qI4BafgvyZwPPoVE,9027
|
|
3
|
+
monopyly/__init__.py,sha256=5ImOjkZGxUBhqG4EK5YWebwTO4V8G2fa_lZAGCD5SgY,2207
|
|
4
|
+
monopyly/_version.py,sha256=nmlXCBuHHFy5JdYfw3oylepRJ5P5EEImr1ItrcZvJdo,160
|
|
4
5
|
monopyly/auth/actions.py,sha256=T99eAP8dxFZMzLu2LxZFIXGYIroP8I7KJ-WJ8GJ1gws,260
|
|
5
6
|
monopyly/auth/blueprint.py,sha256=sFbmTvSBhjv1pn2gJLH5J6zanPLuemmWbgEj5ZKCiTY,244
|
|
6
7
|
monopyly/auth/routes.py,sha256=mODJHrdFhffusfbYwQ_wpIY7eAE7Gh7irosIef4Mluc,2902
|
|
7
8
|
monopyly/auth/tools.py,sha256=hifCHBN06Ht-FnMhJPzzj-xjMN8uwbeJ-azRVjnT99c,801
|
|
8
|
-
monopyly/banking/accounts.py,sha256=
|
|
9
|
+
monopyly/banking/accounts.py,sha256=yYlXvyhLBQoBZYr_WMk6_3nxlhwU4NEkCYKv5hHFjcM,9828
|
|
9
10
|
monopyly/banking/actions.py,sha256=am8AlVWJGhrTvWNiAQPba-2guxdESmhzl6mIJhjAmlg,1565
|
|
10
11
|
monopyly/banking/banks.py,sha256=X1seKJrec-o8z-bM0wVTR42vMx1q5A9Lf2jNUtINlrQ,1745
|
|
11
12
|
monopyly/banking/blueprint.py,sha256=PDsqe4DmiT7cDYW9IxxTfizu9Lqol1Lhp7ajMK6fUuI,255
|
|
@@ -13,40 +14,41 @@ monopyly/banking/filters.py,sha256=wCsAUh592B5BmGFC9NqmrJZ0NdQZi21hvy0QsKqhgLg,6
|
|
|
13
14
|
monopyly/banking/forms.py,sha256=p-YGZgdKugk3VKILLiQNEH5KQmXop5G8P1Bs4sUqbK0,10506
|
|
14
15
|
monopyly/banking/routes.py,sha256=BAV6PBQf20dSTxqY88Zh0FGAzpj7TxgZaHPxGCJneJ4,8149
|
|
15
16
|
monopyly/banking/transactions.py,sha256=2_wFXl4ZrHzLoFGz72ksYA2_8UvB0N1wtBFd8kTwTyQ,8454
|
|
16
|
-
monopyly/cli/apps.py,sha256=
|
|
17
|
+
monopyly/cli/apps.py,sha256=TY97lShiJmsKAnVXVbBLJDXW2TmiyNwrPic8w9roPCQ,3356
|
|
17
18
|
monopyly/cli/run.py,sha256=8NHv5TW5Ze6pyhxZCOjmba-EU4Nu6sObYfNJbDPtrds,3838
|
|
18
19
|
monopyly/common/transactions.py,sha256=2-EkctGC9k5W5kodXdYJIBXu5l5JNI9dxfgbp2Nxccg,12185
|
|
19
20
|
monopyly/common/utils.py,sha256=BjXhfNXGWkAPt-ebldvmZ2z00P8MhKJzjxrJJ6mzRQY,5867
|
|
20
21
|
monopyly/common/forms/__init__.py,sha256=6iFTlcoaQmCbrjS1KfFhWXQUfyqnA-vKPMVxLyJMlXY,120
|
|
21
|
-
monopyly/common/forms/_forms.py,sha256=
|
|
22
|
+
monopyly/common/forms/_forms.py,sha256=Y2NrfPOdZaSyjo_ZPG8aK2KHhKg8wnWLSvrhSj1IoSQ,7885
|
|
22
23
|
monopyly/common/forms/fields.py,sha256=XgvkfszpUAZyIs-osHGFADmzuo0Ni_e78NXtG-grBdI,4082
|
|
23
24
|
monopyly/common/forms/utils.py,sha256=awZOtWaohzSW_SZrXhUpJBY1AXPnKBFTG2cqim22Db0,5676
|
|
24
25
|
monopyly/common/forms/validators.py,sha256=C5_NN8ktvBw6MrSXwv_x9_SQohCNmnp4brNQFELHBlI,1205
|
|
25
26
|
monopyly/config/__init__.py,sha256=pW2lHNhsdM2gRjLAWumnLUHZMAOEdprX4aXaONwo6AY,73
|
|
26
27
|
monopyly/config/default_settings.py,sha256=jtWz4ElasnAbfBCiRfbsYyy--L6N6jTOGRh3PNWnVj4,1829
|
|
27
28
|
monopyly/config/settings.py,sha256=YEctSb8mRDvuMA1tTs1N7862Z2bMY7DPf0xo4Ist2pg,1984
|
|
28
|
-
monopyly/core/actions.py,sha256=
|
|
29
|
-
monopyly/core/blueprint.py,sha256=
|
|
30
|
-
monopyly/core/context_processors.py,sha256=
|
|
31
|
-
monopyly/core/
|
|
29
|
+
monopyly/core/actions.py,sha256=jkrR5bBN1RG1S4Gtumnk51TkCNf4gfsUZkTi8LKHVHA,4172
|
|
30
|
+
monopyly/core/blueprint.py,sha256=pZyK8ly0UR1BbHx4xwYk1UzakzkVCS8wiMSM8XdCG2U,260
|
|
31
|
+
monopyly/core/context_processors.py,sha256=ByQGQpOJIpxG3WM3Kv34LbBY0H8HVeR81TDYkdOwJgs,1166
|
|
32
|
+
monopyly/core/errors.py,sha256=xF4gA3Hv99op3EMV_f2CskHWVLrV-9ckaHKJMWR2h7o,200
|
|
33
|
+
monopyly/core/filters.py,sha256=uBkNjQyqW-9RkiQG23vngnI1MZXFeh4Rhe5MQqklAEQ,1284
|
|
32
34
|
monopyly/core/internal_transactions.py,sha256=PImeViMU9rdDDPLXld1xC6bdAoulzRDr0zci4pUQY8I,459
|
|
33
|
-
monopyly/core/routes.py,sha256=
|
|
35
|
+
monopyly/core/routes.py,sha256=ADF7LB3hhvwPwIqc5l46sliziM7ZgGXh5vFwKzxlkGA,2747
|
|
34
36
|
monopyly/credit/accounts.py,sha256=otQmuTDJZYX868EZl80n89XlzfiwlnBkfSXZa65rSqI,1898
|
|
35
|
-
monopyly/credit/actions.py,sha256=
|
|
37
|
+
monopyly/credit/actions.py,sha256=E80ocYxWKsNO1ynU3KQjVZkTwAGo4Fv7mYPmA68T9ng,6310
|
|
36
38
|
monopyly/credit/blueprint.py,sha256=XbrMhtyCp2732uWPB2kjn_W8P8pH8RVTwo9P8Pt--Is,251
|
|
37
39
|
monopyly/credit/cards.py,sha256=9Ug51aY2-G8SzooLC-FemRNeTBLd9JOpXHFW74EcdLU,5614
|
|
38
40
|
monopyly/credit/forms.py,sha256=-Oj7NxmDKNY39McbtqSC-v_Tppec0BfDZmeUnbnugCo,12250
|
|
39
|
-
monopyly/credit/routes.py,sha256=
|
|
40
|
-
monopyly/credit/statements.py,sha256=
|
|
41
|
+
monopyly/credit/routes.py,sha256=zw3if37eHibdh4VwbgpxHUPt_UrF-n8fAxZe3Tn1WWI,18127
|
|
42
|
+
monopyly/credit/statements.py,sha256=lRcAgcr9kPnh5GCE6McWfOdY8uCgmg2j2bikSioR3HI,7219
|
|
41
43
|
monopyly/credit/transactions/__init__.py,sha256=1Exn6T--HtwNCHzS_hDJ0ba7qCB7w_8C-yY3KSxvFKg,165
|
|
42
|
-
monopyly/credit/transactions/_transactions.py,sha256=
|
|
44
|
+
monopyly/credit/transactions/_transactions.py,sha256=Ciw5ORScBwhhUBVFsGNOR4uy-X_KF3tVsyfKRVQHMOE,8771
|
|
43
45
|
monopyly/database/__init__.py,sha256=tlZsXmzH8hB5m_RASbKTjPRqLel-xbymqrzo0TPoFCk,3402
|
|
44
46
|
monopyly/database/models.py,sha256=TqIwIe4tVv3TS0azz8Bm9nL1qT2RAyq292myPW0XH1A,15095
|
|
45
47
|
monopyly/database/preloads.sql,sha256=KBS_WYRofFdOVN-IgHzZhfyJrY6ZOwHeExN-fQr3htU,363
|
|
46
48
|
monopyly/database/schema.sql,sha256=cdl9b5CnYrnQ-lck147GtwArx_JJbX1vF9YYLivTeyw,4660
|
|
47
49
|
monopyly/database/views.sql,sha256=UTO2QRkVTfQ12bMVkR-O6Qv80DvYo8hngPHn2A1_1F8,3853
|
|
48
50
|
monopyly/static/jquery-3.7.0.min.js,sha256=2Pmvv0kuTBOenSvLm6bvfBSSHrUJ-3A7x6P5Ebd07_g,87462
|
|
49
|
-
monopyly/static/css/style.css,sha256=
|
|
51
|
+
monopyly/static/css/style.css,sha256=czs8-2XXHEWUNfO5MQ-AdvpfHHZzq6P7jR0BRnknZ1E,50618
|
|
50
52
|
monopyly/static/favicon/browserconfig.xml,sha256=Zt_AVOxiritWWXoUwPsHpx4vu4kM_butdFVzoYCYbM8,315
|
|
51
53
|
monopyly/static/favicon/favicon-114.png,sha256=kjElVFiix-kFCMdADkLpJsi8kL3GDsFm85oJhyCH-C0,20601
|
|
52
54
|
monopyly/static/favicon/favicon-120.png,sha256=g4uzHMdW0MlJhcgWfrOsj2MB2D-HdLa4t60_hvyICkM,22077
|
|
@@ -119,7 +121,7 @@ monopyly/static/js/flip-card.js,sha256=4a65JFO7kf4qzZ-8wvWiiO_BwZpiWO2cHHzZugXRo
|
|
|
119
121
|
monopyly/static/js/hide-homepage-block.js,sha256=Yw3m5sc5dO6pDh2VUzJu1re4NXZcuSLSMs6Acou_rHo,495
|
|
120
122
|
monopyly/static/js/infer-card.js,sha256=WIDXWhfF4gXdlRCo2OA0IpSsszxDTkV7ZSb6Qo7pheA,1790
|
|
121
123
|
monopyly/static/js/infer-statement.js,sha256=ufcYJ2z6halVXpiZHviI_4JN48jOBAM4NbSDtWH9BoU,1896
|
|
122
|
-
monopyly/static/js/make-payment.js,sha256=
|
|
124
|
+
monopyly/static/js/make-payment.js,sha256=fvCSHrsUuRFJ299icIklEch8SQLnYL2cfcTwkW4fzw4,3276
|
|
123
125
|
monopyly/static/js/show-linked-transaction.js,sha256=AM7d2PISUMbS2UcSNZQuW8n24pcDG0hD8BjFjAyWUOk,1085
|
|
124
126
|
monopyly/static/js/update-account-statement-parameters.js,sha256=1mjC-9yIwbm-xYz9AKkxfKWv70UftqyieJrMkSMb1qU,1072
|
|
125
127
|
monopyly/static/js/update-bank-name.js,sha256=4nEkCTEK32y9v7WAgjQymKFxM_HTFRwdfGkmEwtdWoE,925
|
|
@@ -136,22 +138,18 @@ monopyly/static/js/modules/manage-overlays.js,sha256=gCE1qTT_0RG6a5OX9PrFOc-KLmq
|
|
|
136
138
|
monopyly/static/js/modules/manage-subforms.js,sha256=-yKA7l8ZI0294auTI307LrKkw_Bl6I8suwK4VLuLhMc,2197
|
|
137
139
|
monopyly/static/js/modules/update-database-widget.js,sha256=S67hmqaGwzbPy94IjYrag0ZPOur4r5y_tb3_5t7xuYI,1581
|
|
138
140
|
monopyly/static/js/modules/update-display-ajax.js,sha256=MJBiRMmeIHRG7lLbqIcXkUecKNNMFFVJXwhs_N8LKl0,878
|
|
139
|
-
monopyly/templates/credits.html,sha256=U2lOe7XrW1Rt9DCvo7pRxHDzRzBnYxHjX3cS5z36NI8,506
|
|
140
|
-
monopyly/templates/index.html,sha256=caoQuizzJibU90nivf1-Esnptg5wzFWyhVJoAkEPKdE,4374
|
|
141
141
|
monopyly/templates/layout.html,sha256=ETQ7fNC4H0JjZZTnamZoJKwXbsXEHW72ZhahOER3NkQ,4741
|
|
142
|
-
monopyly/templates/
|
|
143
|
-
monopyly/templates/
|
|
144
|
-
monopyly/templates/auth/login.html,sha256=CBEIxnDVrZ8dH3fgsYi5BVyesEUAvUGYQW7hW_gI8aE,441
|
|
145
|
-
monopyly/templates/auth/register.html,sha256=eFSDl2vUiFil9VAB7uMuxNT872MSQugvVXCfXtVT5ac,445
|
|
142
|
+
monopyly/templates/auth/login.html,sha256=aZwaHBiKtQa_ZkVBqLUQIbwQdEAJNwcyYNjFQcRp-k0,443
|
|
143
|
+
monopyly/templates/auth/register.html,sha256=G6VxfYPIbXQco6Z_1PVQQ40vNWgG3PScmN20npx88yQ,447
|
|
146
144
|
monopyly/templates/banking/account_page.html,sha256=pP7j6pRngqO8D_kQKbRINTQ61L5VJs66dsNPscO0czs,1946
|
|
147
|
-
monopyly/templates/banking/account_summaries.html,sha256=
|
|
148
|
-
monopyly/templates/banking/account_summaries_page.html,sha256=
|
|
149
|
-
monopyly/templates/banking/account_summary.html,sha256=
|
|
150
|
-
monopyly/templates/banking/accounts_page.html,sha256=
|
|
145
|
+
monopyly/templates/banking/account_summaries.html,sha256=IyokKcbv76a9_wDfX4MlSdwa2Xluav-TDc_MXnBOMv0,1125
|
|
146
|
+
monopyly/templates/banking/account_summaries_page.html,sha256=puBlB52WMZR_Dhz6_rSLomNa9QSChsItsshrKT5Aixs,1113
|
|
147
|
+
monopyly/templates/banking/account_summary.html,sha256=pE5DyrLP2MYewsECpP0iVusTlIunWe4tiLjSwGMV9uA,939
|
|
148
|
+
monopyly/templates/banking/accounts_page.html,sha256=iPv_s7rdEINBG1c_XwN7YgHjIDXnl64-JkPpKuIAeXc,2172
|
|
151
149
|
monopyly/templates/banking/account_form/account_form.html,sha256=v8AH6DTBW-4XVffcmr-sRRBl1k0e-30Q7Vy5sXHkrPM,1226
|
|
152
150
|
monopyly/templates/banking/account_form/account_form_page_new.html,sha256=aCahQlbJfIM_vzvHJb81dG_ORpXFmOw5QzYFNep7LxY,533
|
|
153
151
|
monopyly/templates/banking/transaction_form/bank_info_form.html,sha256=RkEjEgbD5zw4QlvpJ6koA8TxE0ZRTGmfmCy8SC2RVd0,670
|
|
154
|
-
monopyly/templates/banking/transaction_form/transaction_form.html,sha256=
|
|
152
|
+
monopyly/templates/banking/transaction_form/transaction_form.html,sha256=M8Jqdl50GtVLuKxV1kLNuS3eMiaDo7rXQvwq3DpPv9Q,1399
|
|
155
153
|
monopyly/templates/banking/transaction_form/transaction_form_page.html,sha256=q7pPXmqhpBXZ8jJKWENisqYXPpAZxVL1bYT0lIUUZA4,526
|
|
156
154
|
monopyly/templates/banking/transaction_form/transaction_form_page_new.html,sha256=-PFAF3IcJXKRg2erlGFuvwD1XMx6JvndNWjdPJbmRtA,313
|
|
157
155
|
monopyly/templates/banking/transaction_form/transaction_form_page_update.html,sha256=4PljOpO7wTNNEq-mhFzA-uHvUxzerfRMbDddWvSMzlo,350
|
|
@@ -171,13 +169,27 @@ monopyly/templates/common/transactions_table/subtransactions.html,sha256=6vf9M2j
|
|
|
171
169
|
monopyly/templates/common/transactions_table/transaction_condensed.html,sha256=2MR4WPdkc28OACOqwCszFtXodxnIvfKIF_rh2OzJqh8,300
|
|
172
170
|
monopyly/templates/common/transactions_table/transaction_expanded.html,sha256=xNn7hJs3ulQIroTbXGfxPSrlZCmqr2QhtEzqS3URmVg,1242
|
|
173
171
|
monopyly/templates/common/transactions_table/transactions.html,sha256=pwJxOPZgU7m3juZd4rxhKvsZmvtjsdS-eLDgbSOllEQ,527
|
|
172
|
+
monopyly/templates/core/credits.html,sha256=uXkDl6XwsZAu1weONQQlf1WiBUZDiTHqsZLkvu6JAXU,948
|
|
173
|
+
monopyly/templates/core/index.html,sha256=caoQuizzJibU90nivf1-Esnptg5wzFWyhVJoAkEPKdE,4374
|
|
174
|
+
monopyly/templates/core/profile.html,sha256=88DgHlnSAZ9V4pAJmo_kPpRRY_1vhwcrYLxS5hZJDxM,2356
|
|
175
|
+
monopyly/templates/core/story.html,sha256=fUvIE8t5oG_Mw443Oeu4vWKospFQv8dSfBOCisn5L0g,3207
|
|
176
|
+
monopyly/templates/core/errors/400.html,sha256=whUYO3b6UIQWfN8y563umccU8GLxqXu0A5nb5uNM-XY,152
|
|
177
|
+
monopyly/templates/core/errors/401.html,sha256=3HH9TSDZfhyxZVcVnT0PNe524ADvEHIj6BsllQYFFOQ,154
|
|
178
|
+
monopyly/templates/core/errors/403.html,sha256=SSJsDIKFFKqap5RR4oM7IsvWY6dsgfZVPPKPSpB2d6A,155
|
|
179
|
+
monopyly/templates/core/errors/404.html,sha256=VStDPWwMJFet8pSTvi5KY5sbLiPjzMa1QJ4kkbRPn-Y,188
|
|
180
|
+
monopyly/templates/core/errors/405.html,sha256=dTthfzWekYzvbOfTUkAr0yCTK9Ufa194PIYpCZNc7kQ,162
|
|
181
|
+
monopyly/templates/core/errors/408.html,sha256=QlhJ7S5wiFJLCQMtrn4o3ScYHAEoHfby24OsK-D_d70,165
|
|
182
|
+
monopyly/templates/core/errors/418.html,sha256=zfs-NbLsfQpx_ZhS6O81LjXZgO0UKnxkuG6soFucbuw,172
|
|
183
|
+
monopyly/templates/core/errors/425.html,sha256=9U-tIDbS6BKCTqMzokCrXcmPlKn5OcFL8z5ffz19LWg,141
|
|
184
|
+
monopyly/templates/core/errors/500.html,sha256=kSrvsTb1ueDst7m10hYuWmbPJ_ep6aaL3ujhBPmVl-g,154
|
|
185
|
+
monopyly/templates/core/errors/error.html,sha256=QBATauzceuPQAW3wDjjhw_8PkrRLbM5DeG4hEf09vQk,534
|
|
174
186
|
monopyly/templates/credit/account_page.html,sha256=HxQzRfEejFXjmZwtZD-EdHipQ7zOedKlpxwfAOMM49w,3618
|
|
175
187
|
monopyly/templates/credit/card_submission_page.html,sha256=7OU6PB01jACSKSzXGySWL8ccwfCT00SeX2KkdwW3K4Q,345
|
|
176
188
|
monopyly/templates/credit/cards.html,sha256=lvuKip2nHDmPi2Wj8zmO9ZXKXY22Dlv9fDrtHuYCSqA,598
|
|
177
189
|
monopyly/templates/credit/cards_page.html,sha256=HTrTQwF-Y5Z9oWqt72i6HbAaRhQibTEt3TJKavm6_2M,250
|
|
178
190
|
monopyly/templates/credit/statement_page.html,sha256=vYuahNkkF4M2pWAJaaraIZq70EmMgpvAJcUMF1Pzhko,2009
|
|
179
|
-
monopyly/templates/credit/statement_summary.html,sha256=
|
|
180
|
-
monopyly/templates/credit/statements.html,sha256=
|
|
191
|
+
monopyly/templates/credit/statement_summary.html,sha256=RGwgkolnD8690OwSUgklP4Wc_dfvVrHyrv1VqpCv_iE,2893
|
|
192
|
+
monopyly/templates/credit/statements.html,sha256=Je3V7td2xubug4uFT0D8YUKbeEvk2yA9_Z0f7mystTU,1769
|
|
181
193
|
monopyly/templates/credit/statements_page.html,sha256=s_CSiRO8iTcCoEPVRF2TEOG2XNOeuGF1BSiJGhrH5O0,1458
|
|
182
194
|
monopyly/templates/credit/tags_page.html,sha256=mKm-QxuicO5MO12JOQy7tuc8Bd9fnnKiTSHDmMP5mTI,662
|
|
183
195
|
monopyly/templates/credit/transaction_submission_page.html,sha256=eR9v76wlLQ7Skeb-2L-rIKTSRQGCXjTGTO7efgwn_6M,1919
|
|
@@ -185,7 +197,7 @@ monopyly/templates/credit/transactions_page.html,sha256=4Tx2yUGPUIRfz0M3vAQqjcfH
|
|
|
185
197
|
monopyly/templates/credit/card_form/card_form.html,sha256=xF7x1RBQyAfKYuW_cRxwhKhug4tum-3s0YHyP0ovhFs,1666
|
|
186
198
|
monopyly/templates/credit/card_form/card_form_page_new.html,sha256=9ayX0dUEAbSSPVL3vIKIBJYkN8odL_KHOfq3fl6C8yw,525
|
|
187
199
|
monopyly/templates/credit/card_form/transfer_statement_inquiry.html,sha256=LuxietZsTLF3AMqeeHqcPoAYvJX_TsJ8MlDldpZwpoQ,1228
|
|
188
|
-
monopyly/templates/credit/card_graphic/card_back.html,sha256=
|
|
200
|
+
monopyly/templates/credit/card_graphic/card_back.html,sha256=gfr3975mziF0PCd_f2Jy83Y4ktFeFnZ1icVVpiVwoQA,889
|
|
189
201
|
monopyly/templates/credit/card_graphic/card_front.html,sha256=I53u0WvrQj-m2D-fkcga0GRketfpMuMXNM6Rs0e5CNA,679
|
|
190
202
|
monopyly/templates/credit/tag_tree/subtag_tree.html,sha256=wMt4BbLIxkioQiWmdIcEVD1xz21uuXtSB08VxJUPB2I,580
|
|
191
203
|
monopyly/templates/credit/tag_tree/tag_tree.html,sha256=cAsYpZWfguZWivALn4hE8fRVD6YsSvmIzRg2g5RSJTg,345
|
|
@@ -197,9 +209,9 @@ monopyly/templates/credit/transactions_table/condensed_row_content.html,sha256=T
|
|
|
197
209
|
monopyly/templates/credit/transactions_table/expanded_row_content.html,sha256=oL1BqlEC3H6s3fSI9Vb65DLL-P9OPliPqqiGL4av4Xs,1971
|
|
198
210
|
monopyly/templates/credit/transactions_table/transaction_field_titles.html,sha256=km-3YEDJaygwcKV-rwYnrE7xF8u4Z7jCBsk0Ia-LO-M,758
|
|
199
211
|
monopyly/templates/credit/transactions_table/transactions.html,sha256=tcppv0qNV-Qq6U5jfxoNyGKPXmyV9h9nR6rw4jXfBsY,481
|
|
200
|
-
monopyly-1.4.
|
|
201
|
-
monopyly-1.4.
|
|
202
|
-
monopyly-1.4.
|
|
203
|
-
monopyly-1.4.
|
|
204
|
-
monopyly-1.4.
|
|
205
|
-
monopyly-1.4.
|
|
212
|
+
monopyly-1.4.7.dist-info/METADATA,sha256=7ZTOH0Fw5UhAhzb4MzeGdUNYpljWSnWYE3f1kTxSM9o,10952
|
|
213
|
+
monopyly-1.4.7.dist-info/WHEEL,sha256=Fd6mP6ydyRguakwUJ05oBE7fh2IPxgtDN9IwHJ9OqJQ,87
|
|
214
|
+
monopyly-1.4.7.dist-info/entry_points.txt,sha256=ANAwWNF6IG83opRITM2P9i_im_b6qLdG1n7dAcS2ZNU,51
|
|
215
|
+
monopyly-1.4.7.dist-info/licenses/COPYING,sha256=5X8cMguM-HmKfS_4Om-eBqM6A1hfbgZf6pfx2G24QFI,35150
|
|
216
|
+
monopyly-1.4.7.dist-info/licenses/LICENSE,sha256=94rIicMccmTPhqXiRLV9JsU8P2ocMuEUUtUpp6LPKiE,253
|
|
217
|
+
monopyly-1.4.7.dist-info/RECORD,,
|
monopyly/templates/credits.html
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{% extends "layout.html" %}
|
|
2
|
-
|
|
3
|
-
{% block title %}
|
|
4
|
-
Credits
|
|
5
|
-
{% endblock %}
|
|
6
|
-
|
|
7
|
-
{% block header %}
|
|
8
|
-
<h1>Credits</h1>
|
|
9
|
-
{% endblock %}
|
|
10
|
-
|
|
11
|
-
{% block content %}
|
|
12
|
-
|
|
13
|
-
<h3>Image Credits</h3>
|
|
14
|
-
|
|
15
|
-
<p>
|
|
16
|
-
The chain link icon was adapted from <a href="https://commons.wikimedia.org/wiki/File:Chain_link_icon.png">Wikipedia Commons</a>.
|
|
17
|
-
The original image was created by user Mdowdell and published under the <a href="https://creativecommons.org/licenses/by-sa/3.0/legalcode">CC BY-SA 3.0 License</a>.
|
|
18
|
-
</p>
|
|
19
|
-
|
|
20
|
-
{% endblock %}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|