diff --git a/.gitignore b/.gitignore index 73e6fe0..96e7f17 100644 --- a/.gitignore +++ b/.gitignore @@ -88,5 +88,6 @@ ENV/ # Rope project settings .ropeproject +.idea .DS_Store -*.sqlite3 \ No newline at end of file +*.sqlite3 diff --git a/manage.py b/manage.py index afbc784..a7da667 100755 --- a/manage.py +++ b/manage.py @@ -1,22 +1,22 @@ #!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" import os import sys -if __name__ == "__main__": - os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") + +def main(): + """Run administrative tasks.""" + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings') try: from django.core.management import execute_from_command_line - except ImportError: - # The above import may fail for some other reason. Ensure that the - # issue is really that Django is missing to avoid masking other - # exceptions on Python 2. - try: - import django - except ImportError: - raise ImportError( - "Couldn't import Django. Are you sure it's installed and " - "available on your PYTHONPATH environment variable? Did you " - "forget to activate a virtual environment?" - ) - raise + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc execute_from_command_line(sys.argv) + + +if __name__ == '__main__': + main() diff --git a/mysite/asgi.py b/mysite/asgi.py new file mode 100644 index 0000000..674a5a5 --- /dev/null +++ b/mysite/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for mysite project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.0/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings') + +application = get_asgi_application() diff --git a/mysite/photos/apps.py b/mysite/photos/apps.py deleted file mode 100644 index c6a938a..0000000 --- a/mysite/photos/apps.py +++ /dev/null @@ -1,7 +0,0 @@ -from __future__ import unicode_literals - -from django.apps import AppConfig - - -class PhotosConfig(AppConfig): - name = 'mysite.photos' diff --git a/mysite/photos/forms.py b/mysite/photos/forms.py deleted file mode 100644 index 75c8a75..0000000 --- a/mysite/photos/forms.py +++ /dev/null @@ -1,9 +0,0 @@ -from django import forms - -from .models import Photo - - -class PhotoForm(forms.ModelForm): - class Meta: - model = Photo - fields = ('file', ) diff --git a/mysite/photos/migrations/0001_initial.py b/mysite/photos/migrations/0001_initial.py deleted file mode 100644 index 4f7b5db..0000000 --- a/mysite/photos/migrations/0001_initial.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.10.3 on 2016-11-22 12:45 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ] - - operations = [ - migrations.CreateModel( - name='Photo', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('title', models.CharField(blank=True, max_length=255)), - ('file', models.FileField(upload_to=b'')), - ('uploaded_at', models.DateTimeField(auto_now_add=True)), - ], - ), - ] diff --git a/mysite/photos/migrations/0002_auto_20161122_1248.py b/mysite/photos/migrations/0002_auto_20161122_1248.py deleted file mode 100644 index 5ba52b3..0000000 --- a/mysite/photos/migrations/0002_auto_20161122_1248.py +++ /dev/null @@ -1,20 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.10.3 on 2016-11-22 12:48 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('photos', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='photo', - name='file', - field=models.FileField(upload_to='photos/'), - ), - ] diff --git a/mysite/photos/models.py b/mysite/photos/models.py deleted file mode 100644 index 66297b1..0000000 --- a/mysite/photos/models.py +++ /dev/null @@ -1,9 +0,0 @@ -from __future__ import unicode_literals - -from django.db import models - - -class Photo(models.Model): - title = models.CharField(max_length=255, blank=True) - file = models.FileField(upload_to='photos/') - uploaded_at = models.DateTimeField(auto_now_add=True) \ No newline at end of file diff --git a/mysite/photos/urls.py b/mysite/photos/urls.py deleted file mode 100644 index e162252..0000000 --- a/mysite/photos/urls.py +++ /dev/null @@ -1,10 +0,0 @@ -from django.conf.urls import url - -from . import views - -urlpatterns = [ - url(r'^clear/$', views.clear_database, name='clear_database'), - url(r'^basic-upload/$', views.BasicUploadView.as_view(), name='basic_upload'), - url(r'^progress-bar-upload/$', views.ProgressBarUploadView.as_view(), name='progress_bar_upload'), - url(r'^drag-and-drop-upload/$', views.DragAndDropUploadView.as_view(), name='drag_and_drop_upload'), -] diff --git a/mysite/settings.py b/mysite/settings.py index a71477b..178e037 100644 --- a/mysite/settings.py +++ b/mysite/settings.py @@ -1,26 +1,27 @@ """ Django settings for mysite project. -Generated by 'django-admin startproject' using Django 1.10.3. +Generated by 'django-admin startproject' using Django 4.0.4. For more information on this file, see -https://docs.djangoproject.com/en/1.10/topics/settings/ +https://docs.djangoproject.com/en/4.0/topics/settings/ For the full list of settings and their values, see -https://docs.djangoproject.com/en/1.10/ref/settings/ +https://docs.djangoproject.com/en/4.0/ref/settings/ """ import os +from pathlib import Path -# Build paths inside the project like this: os.path.join(BASE_DIR, ...) -BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +# Build paths inside the project like this: BASE_DIR / 'subdir'. +BASE_DIR = Path(__file__).resolve().parent.parent # Quick-start development settings - unsuitable for production -# See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/ +# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = 'i%06y2q&4l-!nv*8oolv470b!o)!xg*^9f7^d=q10#b$wd%c_e' +SECRET_KEY = 'django-insecure-5)$usgcd4vo=qfxb$-305ovth)1$jw9%64))$z$akmfnx=xuzv' # SECURITY WARNING: don't run with debug turned on in production! DEBUG = True @@ -31,13 +32,14 @@ # Application definition INSTALLED_APPS = [ + 'photos', + + 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', - - 'mysite.photos', ] MIDDLEWARE = [ @@ -55,7 +57,7 @@ TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [os.path.join(BASE_DIR, 'mysite/templates')], + 'DIRS': [os.path.join(BASE_DIR, 'templates')], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ @@ -72,18 +74,17 @@ # Database -# https://docs.djangoproject.com/en/1.10/ref/settings/#databases +# https://docs.djangoproject.com/en/4.0/ref/settings/#databases DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + 'NAME': BASE_DIR / 'db.sqlite3', } } - # Password validation -# https://docs.djangoproject.com/en/1.10/ref/settings/#auth-password-validators +# https://docs.djangoproject.com/en/4.0/ref/settings/#auth-password-validators AUTH_PASSWORD_VALIDATORS = [ { @@ -102,7 +103,7 @@ # Internationalization -# https://docs.djangoproject.com/en/1.10/topics/i18n/ +# https://docs.djangoproject.com/en/4.0/topics/i18n/ LANGUAGE_CODE = 'en-us' @@ -110,19 +111,22 @@ USE_I18N = True -USE_L10N = True - USE_TZ = True # Static files (CSS, JavaScript, Images) -# https://docs.djangoproject.com/en/1.10/howto/static-files/ +# https://docs.djangoproject.com/en/4.0/howto/static-files/ + +STATIC_URL = 'static/' + +STATICFILES_DIRS = [ + os.path.join(BASE_DIR, "static/"), +] -STATIC_URL = '/static/' +# Default primary key field type +# https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field -STATICFILES_DIRS = ( - os.path.join(BASE_DIR, 'mysite/static'), -) +DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') diff --git a/mysite/urls.py b/mysite/urls.py index 6604d32..07841f4 100644 --- a/mysite/urls.py +++ b/mysite/urls.py @@ -1,12 +1,12 @@ from django.conf import settings -from django.conf.urls import url, include +from django.urls import path, include from django.conf.urls.static import static from django.views.generic import TemplateView urlpatterns = [ - url(r'^$', TemplateView.as_view(template_name='home.html'), name='home'), - url(r'^photos/', include('mysite.photos.urls', namespace='photos')), + path('', TemplateView.as_view(template_name='home.html'), name='home'), + path('photos/', include('photos.urls'), name='photos'), ] if settings.DEBUG: diff --git a/mysite/wsgi.py b/mysite/wsgi.py index e79050b..48d46fe 100644 --- a/mysite/wsgi.py +++ b/mysite/wsgi.py @@ -4,13 +4,13 @@ It exposes the WSGI callable as a module-level variable named ``application``. For more information on this file, see -https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/ +https://docs.djangoproject.com/en/4.0/howto/deployment/wsgi/ """ import os from django.core.wsgi import get_wsgi_application -os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings') application = get_wsgi_application() diff --git a/mysite/photos/__init__.py b/photos/__init__.py similarity index 100% rename from mysite/photos/__init__.py rename to photos/__init__.py diff --git a/photos/admin.py b/photos/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/photos/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/photos/apps.py b/photos/apps.py new file mode 100644 index 0000000..e79ea15 --- /dev/null +++ b/photos/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class PhotosConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'photos' diff --git a/photos/forms.py b/photos/forms.py new file mode 100644 index 0000000..aa04c6d --- /dev/null +++ b/photos/forms.py @@ -0,0 +1,36 @@ +from django import forms + +from .models import Photo, Feed, FeedFile + + + +class PhotoForm(forms.ModelForm): + class Meta: + model = Photo + fields = ('file', ) + + +# Upload NFT Collection Folder Form +class FeedModelForm(forms.ModelForm): + class Meta: + model = Feed + fields = ['directories'] + widgets = { + 'directories': forms.TextInput(attrs={ + 'id': "directories", 'hidden': '', + }), + } + + +class FileModelForm(forms.ModelForm): + class Meta: + model = FeedFile + fields = ['file'] + widgets = { + 'file': forms.ClearableFileInput(attrs={ + 'type': "file", 'name': 'files[]', 'multiple': '', 'directory': '', 'webkitdirectory': '', + 'mozdirectory': '', 'id': "actual-btn", + 'style': 'width: 0.1px; height: 0.1px; opacity: 0; overflow: hidden; position: absolute; z-index: -1;', + 'onchange': 'selectFolder(event)', + }), + } diff --git a/photos/migrations/0001_initial.py b/photos/migrations/0001_initial.py new file mode 100644 index 0000000..6eddd62 --- /dev/null +++ b/photos/migrations/0001_initial.py @@ -0,0 +1,41 @@ +# Generated by Django 4.0.5 on 2022-06-02 17:01 + +from django.db import migrations, models +import django.db.models.deletion +import photos.models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Feed', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('directories', models.TextField(max_length=10000)), + ], + ), + migrations.CreateModel( + name='Photo', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(blank=True, max_length=255)), + ('file', models.FileField(upload_to='photos/')), + ('uploaded_at', models.DateTimeField(auto_now_add=True)), + ], + ), + migrations.CreateModel( + name='FeedFile', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('base_dir', models.CharField(max_length=100)), + ('file', models.FileField(upload_to=photos.models.upload_function)), + ('feed', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='photos.feed')), + ], + ), + ] diff --git a/mysite/photos/migrations/__init__.py b/photos/migrations/__init__.py similarity index 100% rename from mysite/photos/migrations/__init__.py rename to photos/migrations/__init__.py diff --git a/photos/models.py b/photos/models.py new file mode 100644 index 0000000..5cccc2e --- /dev/null +++ b/photos/models.py @@ -0,0 +1,25 @@ +from django.db import models +import os + + +class Photo(models.Model): + title = models.CharField(max_length=255, blank=True) + file = models.FileField(upload_to='photos/') + uploaded_at = models.DateTimeField(auto_now_add=True) + + +# Upload NFT Collection Folder Form +def upload_function(instance, filename): + get_base_dir = instance.base_dir + path = os.path.join(str(get_base_dir)) + return path + +class Feed(models.Model): + directories = models.TextField(blank=False, max_length=10000) + + +class FeedFile(models.Model): + feed = models.ForeignKey(Feed, on_delete=models.CASCADE) + + base_dir = models.CharField(max_length=100) + file = models.FileField(upload_to=upload_function) diff --git a/mysite/photos/static/photos/js/basic-upload.js b/photos/static/photos/js/basic-upload.js similarity index 100% rename from mysite/photos/static/photos/js/basic-upload.js rename to photos/static/photos/js/basic-upload.js diff --git a/mysite/photos/static/photos/js/drag-and-drop-upload.js b/photos/static/photos/js/drag-and-drop-upload.js similarity index 100% rename from mysite/photos/static/photos/js/drag-and-drop-upload.js rename to photos/static/photos/js/drag-and-drop-upload.js diff --git a/photos/static/photos/js/multiple_file_upload_progress_bar.js b/photos/static/photos/js/multiple_file_upload_progress_bar.js new file mode 100644 index 0000000..cc45c79 --- /dev/null +++ b/photos/static/photos/js/multiple_file_upload_progress_bar.js @@ -0,0 +1,36 @@ +$(function () { + + $(".js-upload-photos").click(function () { + $("#actual-btn").click(); + }); + + $("#actual-btn").fileupload({ + dataType: 'json', + sequentialUploads: true, + + start: function (e) { + $("#modal-progress").modal("show"); + }, + + stop: function (e) { + $("#modal-progress").modal("hide"); + }, + + progressall: function (e, data) { + var progress = parseFloat(data.loaded / data.total * 100, 10).toFixed(2); + var strProgress = progress + "%"; + $(".progress-bar").css({"width": strProgress}); + $(".progress-bar").text(strProgress); + }, + + done: function (e, data) { + if (data.result.is_valid) { + $("#gallery tbody").prepend( + "" + data.result.name + "" + ) + } + } + + }); + +}); \ No newline at end of file diff --git a/mysite/photos/static/photos/js/progress-bar-upload.js b/photos/static/photos/js/progress-bar-upload.js similarity index 100% rename from mysite/photos/static/photos/js/progress-bar-upload.js rename to photos/static/photos/js/progress-bar-upload.js diff --git a/mysite/photos/templates/photos/base.html b/photos/templates/photos/base.html similarity index 55% rename from mysite/photos/templates/photos/base.html rename to photos/templates/photos/base.html index 2881371..47dc23c 100644 --- a/mysite/photos/templates/photos/base.html +++ b/photos/templates/photos/base.html @@ -1,7 +1,7 @@ {% extends 'base.html' %} {% block content %} -
+ {% csrf_token %} diff --git a/mysite/photos/templates/photos/drag_and_drop_upload/index.html b/photos/templates/photos/drag_and_drop_upload/index.html similarity index 96% rename from mysite/photos/templates/photos/drag_and_drop_upload/index.html rename to photos/templates/photos/drag_and_drop_upload/index.html index 5e8d331..340f956 100644 --- a/mysite/photos/templates/photos/drag_and_drop_upload/index.html +++ b/photos/templates/photos/drag_and_drop_upload/index.html @@ -22,7 +22,7 @@

Drop Photos Here to Upload

diff --git a/photos/templates/photos/multi_file_upload_progress_bar/index.html b/photos/templates/photos/multi_file_upload_progress_bar/index.html new file mode 100644 index 0000000..8c299a6 --- /dev/null +++ b/photos/templates/photos/multi_file_upload_progress_bar/index.html @@ -0,0 +1,82 @@ +{% extends 'photos/base.html' %} + +{% load static %} + +{% block title %}Directory Upload with Progress Bar{% endblock %} + +{% block javascript %} +{# JQUERY FILE UPLOAD SCRIPTS #} + + + + +{# PHOTOSPHOTOS PAGE SCRIPTS #} + +{% endblock %} + +{% block photos_content %} + + {% csrf_token %} +
+
Upload Folder
+ {{ file_form.file }} + + No Files Selected +
+ + {{ form.directories}} + + + + + + + + + + + + {% for file in files %} + + + + {% endfor %} + + + + +{% endblock %} \ No newline at end of file diff --git a/mysite/photos/templates/photos/progress_bar_upload/index.html b/photos/templates/photos/progress_bar_upload/index.html similarity index 96% rename from mysite/photos/templates/photos/progress_bar_upload/index.html rename to photos/templates/photos/progress_bar_upload/index.html index 5cded57..43c0dbd 100644 --- a/mysite/photos/templates/photos/progress_bar_upload/index.html +++ b/photos/templates/photos/progress_bar_upload/index.html @@ -21,7 +21,7 @@ diff --git a/mysite/photos/tests.py b/photos/tests.py similarity index 100% rename from mysite/photos/tests.py rename to photos/tests.py diff --git a/photos/urls.py b/photos/urls.py new file mode 100644 index 0000000..76638d4 --- /dev/null +++ b/photos/urls.py @@ -0,0 +1,11 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path('clear/', views.clear_database, name='clear_database'), + path('basic-upload/', views.BasicUploadView.as_view(), name='basic_upload'), + path('progress-bar-upload/', views.ProgressBarUploadView.as_view(), name='progress_bar_upload'), + path('drag-and-drop-upload/', views.DragAndDropUploadView.as_view(), name='drag_and_drop_upload'), + path('directory-upload-progress-bar/', views.DirectoryUploadView.as_view(), name='directory_upload_progress_bar'), +] diff --git a/mysite/photos/views.py b/photos/views.py similarity index 51% rename from mysite/photos/views.py rename to photos/views.py index 3c79619..16a389b 100644 --- a/mysite/photos/views.py +++ b/photos/views.py @@ -1,11 +1,12 @@ -import time - from django.shortcuts import render, redirect from django.http import JsonResponse from django.views import View -from .forms import PhotoForm -from .models import Photo +from .forms import PhotoForm, FeedModelForm, FileModelForm +from .models import Photo, FeedFile + +import ast +import time class BasicUploadView(View): @@ -29,7 +30,8 @@ def get(self, request): return render(self.request, 'photos/progress_bar_upload/index.html', {'photos': photos_list}) def post(self, request): - time.sleep(1) # You don't need this line. This is just to delay the process so you can see the progress bar testing locally. + time.sleep( + 1) # You don't need this line. This is just to delay the process so you can see the progress bar testing locally. form = PhotoForm(self.request.POST, self.request.FILES) if form.is_valid(): photo = form.save() @@ -54,8 +56,54 @@ def post(self, request): return JsonResponse(data) +class DirectoryUploadView(View): + def get(self, request): + form = FeedModelForm() + file_form = FileModelForm() + + file_list = FeedFile.objects.all() + + context = { + 'file_form': file_form, + 'form': form, + 'files': file_list, + } + + return render(self.request, 'photos/multi_file_upload_progress_bar/index.html', context) + + def post(self, request): + form = FeedModelForm(self.request.POST) + file_form = FileModelForm(self.request.POST, self.request.FILES) + files = request.FILES.getlist('file') + + if form.is_valid() and file_form.is_valid(): + feed_instance = form.save() + + directories = form.cleaned_data.get('directories') + directories = ast.literal_eval(directories) + + for file in files: + base_dir = '' + for directory in list(directories.keys()): + if str(file) == directory: + base_dir = directories[directory].removesuffix(directory) + str(file) + break + + file_instance = FeedFile(file=file, base_dir=base_dir, feed=feed_instance) + file_instance.save() + + data = {'is_valid': True, 'name': file_instance.file.name, 'url': file_instance.file.url} + else: + data = {'is_valid': False} + return JsonResponse(data) + + def clear_database(request): for photo in Photo.objects.all(): photo.file.delete() photo.delete() + + for file in FeedFile.objects.all(): + file.file.delete() + file.delete() return redirect(request.POST.get('next')) diff --git a/requirements.txt b/requirements.txt index b3e1f24..29416ac 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1 @@ -Django==1.10.3 +Django==4.0.5 diff --git a/mysite/static/css/bootstrap.min.css b/static/css/bootstrap.min.css similarity index 100% rename from mysite/static/css/bootstrap.min.css rename to static/css/bootstrap.min.css diff --git a/mysite/static/css/bootstrap.min.css.map b/static/css/bootstrap.min.css.map similarity index 100% rename from mysite/static/css/bootstrap.min.css.map rename to static/css/bootstrap.min.css.map diff --git a/mysite/static/fonts/glyphicons-halflings-regular.eot b/static/fonts/glyphicons-halflings-regular.eot similarity index 100% rename from mysite/static/fonts/glyphicons-halflings-regular.eot rename to static/fonts/glyphicons-halflings-regular.eot diff --git a/mysite/static/fonts/glyphicons-halflings-regular.svg b/static/fonts/glyphicons-halflings-regular.svg similarity index 100% rename from mysite/static/fonts/glyphicons-halflings-regular.svg rename to static/fonts/glyphicons-halflings-regular.svg diff --git a/mysite/static/fonts/glyphicons-halflings-regular.ttf b/static/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from mysite/static/fonts/glyphicons-halflings-regular.ttf rename to static/fonts/glyphicons-halflings-regular.ttf diff --git a/mysite/static/fonts/glyphicons-halflings-regular.woff b/static/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from mysite/static/fonts/glyphicons-halflings-regular.woff rename to static/fonts/glyphicons-halflings-regular.woff diff --git a/mysite/static/fonts/glyphicons-halflings-regular.woff2 b/static/fonts/glyphicons-halflings-regular.woff2 similarity index 100% rename from mysite/static/fonts/glyphicons-halflings-regular.woff2 rename to static/fonts/glyphicons-halflings-regular.woff2 diff --git a/mysite/static/js/bootstrap.min.js b/static/js/bootstrap.min.js similarity index 100% rename from mysite/static/js/bootstrap.min.js rename to static/js/bootstrap.min.js diff --git a/mysite/static/js/jquery-3.1.1.min.js b/static/js/jquery-3.1.1.min.js similarity index 100% rename from mysite/static/js/jquery-3.1.1.min.js rename to static/js/jquery-3.1.1.min.js diff --git a/mysite/static/js/jquery-file-upload/jquery.fileupload.js b/static/js/jquery-file-upload/jquery.fileupload.js similarity index 100% rename from mysite/static/js/jquery-file-upload/jquery.fileupload.js rename to static/js/jquery-file-upload/jquery.fileupload.js diff --git a/mysite/static/js/jquery-file-upload/jquery.iframe-transport.js b/static/js/jquery-file-upload/jquery.iframe-transport.js similarity index 100% rename from mysite/static/js/jquery-file-upload/jquery.iframe-transport.js rename to static/js/jquery-file-upload/jquery.iframe-transport.js diff --git a/mysite/static/js/jquery-file-upload/vendor/jquery.ui.widget.js b/static/js/jquery-file-upload/vendor/jquery.ui.widget.js similarity index 100% rename from mysite/static/js/jquery-file-upload/vendor/jquery.ui.widget.js rename to static/js/jquery-file-upload/vendor/jquery.ui.widget.js diff --git a/mysite/templates/base.html b/templates/base.html similarity index 100% rename from mysite/templates/base.html rename to templates/base.html diff --git a/mysite/templates/home.html b/templates/home.html similarity index 100% rename from mysite/templates/home.html rename to templates/home.html diff --git a/mysite/templates/includes/header.html b/templates/includes/header.html similarity index 92% rename from mysite/templates/includes/header.html rename to templates/includes/header.html index 145c9a8..022ef57 100644 --- a/mysite/templates/includes/header.html +++ b/templates/includes/header.html @@ -12,10 +12,10 @@ - + \ No newline at end of file