Compare commits

...

6 Commits

8 changed files with 39 additions and 31 deletions

1
.gitignore vendored
View File

@ -1,3 +1,2 @@
venv/
donationcalc/__pycache__/
donors.txt

View File

@ -4,7 +4,7 @@ Priority: optional
Architecture: all
Essential: no
Installed-Size: 2000
Depends: python3-flask
Depends: python3-flask, gunicorn
Homepage: https://gitea.dmz.rs/fram3d/donationcalc
Maintainer: fram3d <fram3d@dmz.rs>
Description: Web app that tracks donations and notifies users via email

4
build-deb/donationcalc/DEBIAN/postinst Normal file → Executable file
View File

@ -2,6 +2,8 @@
/usr/bin/echo "Adding monthly rebalance to crontab"
/usr/bin/crontab -l > /tmp/donationcalccrontab.tmp
/usr/bin/echo "0 0 1 * * /usr/bin/python3 /var/donationcalc/run.py -r" >> /tmp/donationcalccrontab.tmp
/usr/bin/echo "0 0 1 * * /usr/bin/python3 /var/donationcalc/rebalance.py" >> /tmp/donationcalccrontab.tmp
/usr/bin/crontab /tmp/donationcalccrontab.tmp
/usr/bin/rm /tmp/donationcalccrontab.tmp
/usr/bin/systemctl enable donationcalc.service
/sbin/service donationcalc start

4
build-deb/donationcalc/DEBIAN/prerm Normal file → Executable file
View File

@ -2,6 +2,8 @@
/usr/bin/echo "Removing monthly rebalance to crontab"
/usr/bin/crontab -l > /tmp/donationcalccrontab.tmp
/usr/bin/grep -v "0 0 1 * * /usr/bin/python3 /var/donationcalc/run.py -r" /tmp/donationcalccrontab.tmp >> /tmp/donationcalccrontab.tmp1
/usr/bin/grep -v "0 0 1 * * /usr/bin/python3 /var/donationcalc/rebalance.py" /tmp/donationcalccrontab.tmp >> /tmp/donationcalccrontab.tmp1
/usr/bin/crontab /tmp/donationcalccrontab.tmp1
/usr/bin/rm /tmp/donationcalccrontab.tmp /tmp/donationcalccrontab.tmp1
/sbin/service donationcalc stop
/usr/bin/systemdctl disable donationcalc.service

View File

@ -1,8 +1,12 @@
<!DOCTYPE html>
<html lang="sr">
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="/styles/reset.css">
<link rel="stylesheet" href="/styles/style.css">
<link rel="stylesheet" href="/styles/donation.css">
<link rel="shortcut icon" href="/img/favicon.ico" type="image/x-icon">
<title>Subscribe for donation reminders</title>
<style>
.container {

0
donors.txt Normal file
View File

16
rebalance.py Executable file
View File

@ -0,0 +1,16 @@
from donationcalc import donationconfig
import donationcalc.models
donconf = donationconfig.donationconfig()
donconf.rebalance()
sender = donationcalc.models.sender()
donors = []
f = open("donors.txt", "r")
for line in f.readlines():
linesplit = line.split(",")
newdonor = donationcalc.models.donor(email = linesplit[0], monthly = linesplit[1])
donors.append(newdonor)
f.close()
donationcalc.models.rebalanceall(sender,donors)

37
run.py
View File

@ -1,31 +1,16 @@
from donationcalc import app
from donationcalc import donationconfig
import donationcalc.models
import argparse
def parseArgs(parser):
parser.add_argument("-r", "--rebalance", dest = "rebalance", help = "balance the monthly values", action="store_true")
return parser.parse_args()
donconf = donationconfig.donationconfig()
donconf.rebalance()
sender = donationcalc.models.sender()
donors = []
f = open("donors.txt", "r")
parser = argparse.ArgumentParser()
args = parseArgs(parser)
for line in f.readlines():
linesplit = line.split(",")
newdonor = donationcalc.models.donor(email = linesplit[0], monthly = linesplit[1])
donors.append(newdonor)
f.close()
if __name__ == '__main__':
if args.rebalance:
donconf = donationconfig.donationconfig()
donconf.rebalance()
sender = donationcalc.models.sender()
donors = []
f = open("donors.txt", "r")
for line in f.readlines():
linesplit = line.split(",")
newdonor = donationcalc.models.donor(email = linesplit[0], monthly = linesplit[1])
donors.append(newdonor)
f.close()
donationcalc.models.rebalanceall(sender,donors)
exit()
app.run(debug=False)
donationcalc.models.rebalanceall(sender,donors)