diff --git a/.gitignore b/.gitignore index 04b0947..c4e1ef1 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,5 @@ tags .env db.sqlite3 + +media/ diff --git a/Procfile b/Procfile deleted file mode 100644 index 4ffdfb1..0000000 --- a/Procfile +++ /dev/null @@ -1 +0,0 @@ -web: gunicorn philmnight.wsgi diff --git a/Procfile.windows b/Procfile.windows deleted file mode 100644 index 848adfd..0000000 --- a/Procfile.windows +++ /dev/null @@ -1 +0,0 @@ -web: python manage.py runserver diff --git a/film_management/__pycache__/__init__.cpython-38.pyc b/film_management/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000..973f858 Binary files /dev/null and b/film_management/__pycache__/__init__.cpython-38.pyc differ diff --git a/film_management/__pycache__/admin.cpython-38.pyc b/film_management/__pycache__/admin.cpython-38.pyc new file mode 100644 index 0000000..af38c38 Binary files /dev/null and b/film_management/__pycache__/admin.cpython-38.pyc differ diff --git a/film_management/__pycache__/apps.cpython-38.pyc b/film_management/__pycache__/apps.cpython-38.pyc new file mode 100644 index 0000000..d9db402 Binary files /dev/null and b/film_management/__pycache__/apps.cpython-38.pyc differ diff --git a/film_management/__pycache__/models.cpython-38.pyc b/film_management/__pycache__/models.cpython-38.pyc new file mode 100644 index 0000000..2b3f5d4 Binary files /dev/null and b/film_management/__pycache__/models.cpython-38.pyc differ diff --git a/film_management/__pycache__/urls.cpython-38.pyc b/film_management/__pycache__/urls.cpython-38.pyc new file mode 100644 index 0000000..6ffedcd Binary files /dev/null and b/film_management/__pycache__/urls.cpython-38.pyc differ diff --git a/film_management/__pycache__/views.cpython-38.pyc b/film_management/__pycache__/views.cpython-38.pyc new file mode 100644 index 0000000..0be427d Binary files /dev/null and b/film_management/__pycache__/views.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0001_initial.cpython-38.pyc b/film_management/migrations/__pycache__/0001_initial.cpython-38.pyc new file mode 100644 index 0000000..c103a5e Binary files /dev/null and b/film_management/migrations/__pycache__/0001_initial.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0002_film_film_id.cpython-38.pyc b/film_management/migrations/__pycache__/0002_film_film_id.cpython-38.pyc new file mode 100644 index 0000000..a0a9173 Binary files /dev/null and b/film_management/migrations/__pycache__/0002_film_film_id.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0003_filmconfig.cpython-38.pyc b/film_management/migrations/__pycache__/0003_filmconfig.cpython-38.pyc new file mode 100644 index 0000000..31a3d70 Binary files /dev/null and b/film_management/migrations/__pycache__/0003_filmconfig.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0004_film_poster_path.cpython-38.pyc b/film_management/migrations/__pycache__/0004_film_poster_path.cpython-38.pyc new file mode 100644 index 0000000..7727715 Binary files /dev/null and b/film_management/migrations/__pycache__/0004_film_poster_path.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0005_film_submitting_user.cpython-38.pyc b/film_management/migrations/__pycache__/0005_film_submitting_user.cpython-38.pyc new file mode 100644 index 0000000..672ef92 Binary files /dev/null and b/film_management/migrations/__pycache__/0005_film_submitting_user.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0006_auto_20191125_1555.cpython-38.pyc b/film_management/migrations/__pycache__/0006_auto_20191125_1555.cpython-38.pyc new file mode 100644 index 0000000..ad7ea65 Binary files /dev/null and b/film_management/migrations/__pycache__/0006_auto_20191125_1555.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0007_filmconfig_shortlist.cpython-38.pyc b/film_management/migrations/__pycache__/0007_filmconfig_shortlist.cpython-38.pyc new file mode 100644 index 0000000..4c29cfc Binary files /dev/null and b/film_management/migrations/__pycache__/0007_filmconfig_shortlist.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0008_filmconfig_last_shortlist.cpython-38.pyc b/film_management/migrations/__pycache__/0008_filmconfig_last_shortlist.cpython-38.pyc new file mode 100644 index 0000000..999249d Binary files /dev/null and b/film_management/migrations/__pycache__/0008_filmconfig_last_shortlist.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0009_film_watched.cpython-38.pyc b/film_management/migrations/__pycache__/0009_film_watched.cpython-38.pyc new file mode 100644 index 0000000..9191374 Binary files /dev/null and b/film_management/migrations/__pycache__/0009_film_watched.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0010_profile.cpython-38.pyc b/film_management/migrations/__pycache__/0010_profile.cpython-38.pyc new file mode 100644 index 0000000..e8d08f7 Binary files /dev/null and b/film_management/migrations/__pycache__/0010_profile.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0011_profile_user.cpython-38.pyc b/film_management/migrations/__pycache__/0011_profile_user.cpython-38.pyc new file mode 100644 index 0000000..d52f72d Binary files /dev/null and b/film_management/migrations/__pycache__/0011_profile_user.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0012_auto_20191128_1237.cpython-38.pyc b/film_management/migrations/__pycache__/0012_auto_20191128_1237.cpython-38.pyc new file mode 100644 index 0000000..85f02bf Binary files /dev/null and b/film_management/migrations/__pycache__/0012_auto_20191128_1237.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0013_auto_20191128_1240.cpython-38.pyc b/film_management/migrations/__pycache__/0013_auto_20191128_1240.cpython-38.pyc new file mode 100644 index 0000000..c01b590 Binary files /dev/null and b/film_management/migrations/__pycache__/0013_auto_20191128_1240.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0014_profile_last_vote.cpython-38.pyc b/film_management/migrations/__pycache__/0014_profile_last_vote.cpython-38.pyc new file mode 100644 index 0000000..a200c4d Binary files /dev/null and b/film_management/migrations/__pycache__/0014_profile_last_vote.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0015_auto_20191128_1358.cpython-38.pyc b/film_management/migrations/__pycache__/0015_auto_20191128_1358.cpython-38.pyc new file mode 100644 index 0000000..d74ba7c Binary files /dev/null and b/film_management/migrations/__pycache__/0015_auto_20191128_1358.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0016_film_backdrop_path.cpython-38.pyc b/film_management/migrations/__pycache__/0016_film_backdrop_path.cpython-38.pyc new file mode 100644 index 0000000..7dcd39f Binary files /dev/null and b/film_management/migrations/__pycache__/0016_film_backdrop_path.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0017_auto_20200131_1241.cpython-38.pyc b/film_management/migrations/__pycache__/0017_auto_20200131_1241.cpython-38.pyc new file mode 100644 index 0000000..4446ad3 Binary files /dev/null and b/film_management/migrations/__pycache__/0017_auto_20200131_1241.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0018_film_description.cpython-38.pyc b/film_management/migrations/__pycache__/0018_film_description.cpython-38.pyc new file mode 100644 index 0000000..5888904 Binary files /dev/null and b/film_management/migrations/__pycache__/0018_film_description.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0019_film_tagline.cpython-38.pyc b/film_management/migrations/__pycache__/0019_film_tagline.cpython-38.pyc new file mode 100644 index 0000000..b6f8d9a Binary files /dev/null and b/film_management/migrations/__pycache__/0019_film_tagline.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0020_film_tmdb_id.cpython-38.pyc b/film_management/migrations/__pycache__/0020_film_tmdb_id.cpython-38.pyc new file mode 100644 index 0000000..11494c8 Binary files /dev/null and b/film_management/migrations/__pycache__/0020_film_tmdb_id.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0021_remove_film_film_id.cpython-38.pyc b/film_management/migrations/__pycache__/0021_remove_film_film_id.cpython-38.pyc new file mode 100644 index 0000000..28ee75c Binary files /dev/null and b/film_management/migrations/__pycache__/0021_remove_film_film_id.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0022_auto_20200131_2253.cpython-38.pyc b/film_management/migrations/__pycache__/0022_auto_20200131_2253.cpython-38.pyc new file mode 100644 index 0000000..e362859 Binary files /dev/null and b/film_management/migrations/__pycache__/0022_auto_20200131_2253.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0023_film_release_date.cpython-38.pyc b/film_management/migrations/__pycache__/0023_film_release_date.cpython-38.pyc new file mode 100644 index 0000000..caff18e Binary files /dev/null and b/film_management/migrations/__pycache__/0023_film_release_date.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0024_remove_film_in_current_vote.cpython-38.pyc b/film_management/migrations/__pycache__/0024_remove_film_in_current_vote.cpython-38.pyc new file mode 100644 index 0000000..200f3ba Binary files /dev/null and b/film_management/migrations/__pycache__/0024_remove_film_in_current_vote.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0025_auto_20200210_1534.cpython-38.pyc b/film_management/migrations/__pycache__/0025_auto_20200210_1534.cpython-38.pyc new file mode 100644 index 0000000..f4bdce4 Binary files /dev/null and b/film_management/migrations/__pycache__/0025_auto_20200210_1534.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0026_film_genres.cpython-38.pyc b/film_management/migrations/__pycache__/0026_film_genres.cpython-38.pyc new file mode 100644 index 0000000..ba21f8c Binary files /dev/null and b/film_management/migrations/__pycache__/0026_film_genres.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0027_auto_20200212_1352.cpython-38.pyc b/film_management/migrations/__pycache__/0027_auto_20200212_1352.cpython-38.pyc new file mode 100644 index 0000000..ae304ca Binary files /dev/null and b/film_management/migrations/__pycache__/0027_auto_20200212_1352.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0028_filmconfig_name.cpython-38.pyc b/film_management/migrations/__pycache__/0028_filmconfig_name.cpython-38.pyc new file mode 100644 index 0000000..310d64c Binary files /dev/null and b/film_management/migrations/__pycache__/0028_filmconfig_name.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0029_filmconfig_logo.cpython-38.pyc b/film_management/migrations/__pycache__/0029_filmconfig_logo.cpython-38.pyc new file mode 100644 index 0000000..affb255 Binary files /dev/null and b/film_management/migrations/__pycache__/0029_filmconfig_logo.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/0030_auto_20200310_1652.cpython-38.pyc b/film_management/migrations/__pycache__/0030_auto_20200310_1652.cpython-38.pyc new file mode 100644 index 0000000..a233d39 Binary files /dev/null and b/film_management/migrations/__pycache__/0030_auto_20200310_1652.cpython-38.pyc differ diff --git a/film_management/migrations/__pycache__/__init__.cpython-38.pyc b/film_management/migrations/__pycache__/__init__.cpython-38.pyc new file mode 100644 index 0000000..04d6f33 Binary files /dev/null and b/film_management/migrations/__pycache__/__init__.cpython-38.pyc differ diff --git a/film_management/static/films/css/style.css b/film_management/static/films/css/style.css index 9235f8f..af24993 100644 --- a/film_management/static/films/css/style.css +++ b/film_management/static/films/css/style.css @@ -1,3 +1,8 @@ +h1 { + margin: 20px; + text-align: center; +} + table { width: 100%; text-align: left; @@ -9,7 +14,7 @@ tr { height: 50px; } -tr:hover { +tr:hover:not(:first-child) { background-color: var(--selected-bg-color); } diff --git a/film_management/templatetags/__pycache__/philmnight_tags.cpython-38.pyc b/film_management/templatetags/__pycache__/philmnight_tags.cpython-38.pyc new file mode 100644 index 0000000..d45d259 Binary files /dev/null and b/film_management/templatetags/__pycache__/philmnight_tags.cpython-38.pyc differ diff --git a/film_management/views.py b/film_management/views.py index 3e73c91..7fd6e4e 100644 --- a/film_management/views.py +++ b/film_management/views.py @@ -94,7 +94,8 @@ def dashboard(request): @login_required -def submit_film(request, tmdb_id): +def submit_film(request, tmdb_id): # TODO: Change to use POST instead of GET + """Submit the provided film ID to the filmnight database.""" try: last_user_film = Film.objects.filter(submitting_user=request.user).order_by('-date_submitted')[0] last_submit_delta = (datetime.datetime.now()-last_user_film.date_submitted).seconds @@ -116,17 +117,20 @@ def submit_film(request, tmdb_id): return HttpResponseRedirect('/dashboard/') + @login_required def film(request, tmdb_id): film = Film.objects.get(tmdb_id=tmdb_id) return render(request, 'film_management/film.html', {'film': film}) + @user_passes_test(lambda u: u.is_superuser) def delete_film(request, tmdb_id): film = Film.objects.get(tmdb_id=tmdb_id) film.delete() return HttpResponseRedirect('/films/') + @login_required def submit_votes(request): if get_phase() == 'voting': diff --git a/media/logo/logo.png b/media/logo/logo.png index 3fe1c5a..10d49c6 100644 Binary files a/media/logo/logo.png and b/media/logo/logo.png differ diff --git a/philmnight/__pycache__/settings.cpython-38.pyc b/philmnight/__pycache__/settings.cpython-38.pyc index f5fb0b6..1515d9c 100644 Binary files a/philmnight/__pycache__/settings.cpython-38.pyc and b/philmnight/__pycache__/settings.cpython-38.pyc differ diff --git a/philmnight/__pycache__/urls.cpython-38.pyc b/philmnight/__pycache__/urls.cpython-38.pyc new file mode 100644 index 0000000..7df0861 Binary files /dev/null and b/philmnight/__pycache__/urls.cpython-38.pyc differ diff --git a/philmnight/__pycache__/views.cpython-38.pyc b/philmnight/__pycache__/views.cpython-38.pyc new file mode 100644 index 0000000..9638d29 Binary files /dev/null and b/philmnight/__pycache__/views.cpython-38.pyc differ diff --git a/philmnight/__pycache__/wsgi.cpython-38.pyc b/philmnight/__pycache__/wsgi.cpython-38.pyc new file mode 100644 index 0000000..472ccb2 Binary files /dev/null and b/philmnight/__pycache__/wsgi.cpython-38.pyc differ diff --git a/philmnight/settings.py b/philmnight/settings.py index cca116f..a47cb6a 100644 --- a/philmnight/settings.py +++ b/philmnight/settings.py @@ -21,6 +21,7 @@ # SECURITY WARNING: keep the secret key used in production secret! +# Detect heroku if 'DYNO' not in os.environ: from dotenv import load_dotenv load_dotenv() @@ -34,11 +35,11 @@ TMDB_ENDPOINT = os.environ['TMDB_ENDPOINT'] TMDB_KEY = os.environ['TMDB_KEY'] + # SECURITY WARNING: don't run with debug turned on in production! + DEBUG = os.environ['DEBUG'] except KeyError: raise KeyError('Not all required environment variables present') -# SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True ALLOWED_HOSTS = ['*'] diff --git a/requirements.txt b/requirements.txt index 3136d37..cdb9dbd 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ -django_heroku==0.3.1 -requests==2.22.0 -Django==2.2.2 -python-dotenv==0.12.0 +django_heroku +requests +Django +python-dotenv gunicorn requests_oauthlib social-auth-app-django diff --git a/run.bat b/run.bat deleted file mode 100644 index 40416ae..0000000 --- a/run.bat +++ /dev/null @@ -1 +0,0 @@ -heroku local -f Procfile.windows diff --git a/run.sh b/run.sh deleted file mode 100644 index 787d10d..0000000 --- a/run.sh +++ /dev/null @@ -1 +0,0 @@ -heroku local diff --git a/static/hacksoc.png b/static/hacksoc.png deleted file mode 100644 index 3fe1c5a..0000000 Binary files a/static/hacksoc.png and /dev/null differ