diff --git a/.gitignore b/.gitignore
index 5e14c3dc..d81d8e64 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,3 +66,5 @@ target/
venv/
Recipies/secret_settings\.py
+
+*.sqlite3
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index b341ae4c..53a7c1ad 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,11 +2,15 @@
-
+
+
+
-
+
+
-
+
+
@@ -37,11 +41,21 @@
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -49,11 +63,33 @@
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -61,38 +97,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -130,7 +134,6 @@
-
@@ -141,8 +144,14 @@
-
+
+
+
+
+
+
+
@@ -195,7 +204,7 @@
-
+
@@ -208,6 +217,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
@@ -217,20 +238,22 @@
-
+
-
+
-
+
+
+
@@ -294,10 +317,10 @@
-
+
-
+
@@ -329,35 +352,11 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -404,7 +403,7 @@
-
+
@@ -547,7 +546,6 @@
-
@@ -567,14 +565,6 @@
-
-
-
-
-
-
-
-
@@ -591,35 +581,69 @@
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/cookbook/helper/__init__.py b/cookbook/helper/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/cookbook/api.py b/cookbook/helper/dropbox.py
similarity index 56%
rename from cookbook/api.py
rename to cookbook/helper/dropbox.py
index 1b405aef..972d17f9 100644
--- a/cookbook/api.py
+++ b/cookbook/helper/dropbox.py
@@ -1,15 +1,12 @@
import requests
import json
-from .models import Recipe
from django.conf import settings
-from rest_framework.decorators import api_view
-from rest_framework.response import Response
+
+def import_all(base_path):
+ print("test")
-@api_view(['GET'])
-def get_file_link(request, recipe_id):
- recipe = Recipe.objects.get(id=recipe_id)
-
+def get_share_link(recipe_path):
url = "https://api.dropboxapi.com/2/sharing/create_shared_link"
headers = {
@@ -18,8 +15,8 @@ def get_file_link(request, recipe_id):
}
data = {
- "path": ""
+ "path": recipe.path
}
r = requests.post(url, headers=headers, data=json.dumps(data))
- return Response(r.content)
+ return r.content
\ No newline at end of file
diff --git a/cookbook/migrations/0003_recipe_path.py b/cookbook/migrations/0003_recipe_path.py
new file mode 100644
index 00000000..8c74198c
--- /dev/null
+++ b/cookbook/migrations/0003_recipe_path.py
@@ -0,0 +1,19 @@
+# Generated by Django 2.0.2 on 2018-02-05 18:40
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('cookbook', '0002_auto_20180201_1457'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='recipe',
+ name='path',
+ field=models.CharField(default='', max_length=512),
+ preserve_default=False,
+ ),
+ ]
diff --git a/cookbook/models.py b/cookbook/models.py
index e8c4814e..0a1c3655 100644
--- a/cookbook/models.py
+++ b/cookbook/models.py
@@ -25,7 +25,7 @@ class Category(models.Model):
class Recipe(models.Model):
name = models.CharField(max_length=64)
- path = models.CharField
+ path = models.CharField(max_length=512, default="")
category = models.ForeignKey(Category, on_delete=models.CASCADE)
keywords = models.ManyToManyField(Keyword)
created_by = models.IntegerField(default=0)
diff --git a/cookbook/urls.py b/cookbook/urls.py
index ca3a4798..d5fa6e40 100644
--- a/cookbook/urls.py
+++ b/cookbook/urls.py
@@ -1,14 +1,17 @@
from django.urls import path
-from . import views,api
+from . import views
+from cookbook.views import api
urlpatterns = [
path('', views.index, name='index'),
path('new_recipe', views.new_recipe, name='new_recipe'),
path('new_category', views.new_category, name='new_category'),
path('new_keyword', views.new_keyword, name='new_keyword'),
- path('edit_recipe//', views.edit_recipe, name='edit_recipe'),
- path('edit_category//', views.edit_category, name='edit_category'),
- path('edit_keyword//', views.new_keyword, name='edit_keyword'),
+ path('edit_recipe//', views.edit_recipe, name='edit_recipe'),
+ path('edit_category//', views.edit_category, name='edit_category'),
+ path('edit_keyword//', views.new_keyword, name='edit_keyword'),
+
path('api/get_file_link//', api.get_file_link, name='get_file_link'),
+ path('api/import_recipes', api.get_file_link, name='get_file_link'),
]
diff --git a/cookbook/views/__init__.py b/cookbook/views/__init__.py
new file mode 100644
index 00000000..b4632b6c
--- /dev/null
+++ b/cookbook/views/__init__.py
@@ -0,0 +1,2 @@
+from cookbook.views.views import *
+from cookbook.views.api import *
diff --git a/cookbook/views/api.py b/cookbook/views/api.py
new file mode 100644
index 00000000..85ba490d
--- /dev/null
+++ b/cookbook/views/api.py
@@ -0,0 +1,13 @@
+
+from cookbook.models import Recipe
+from cookbook.helper import dropbox
+from rest_framework.decorators import api_view
+from rest_framework.response import Response
+
+
+@api_view(['GET'])
+def get_file_link(request, recipe_id):
+ recipe = Recipe.objects.get(id=recipe_id)
+ response = dropbox.get_share_link(recipe.path)
+
+ return Response(response)
\ No newline at end of file
diff --git a/cookbook/views.py b/cookbook/views/views.py
similarity index 92%
rename from cookbook/views.py
rename to cookbook/views/views.py
index 26b93ca2..edbc2b7f 100644
--- a/cookbook/views.py
+++ b/cookbook/views/views.py
@@ -20,7 +20,7 @@ def index(request):
@login_required
-def edit_recipe(request, id):
+def edit_recipe(request, recipe_id):
if request.method == "POST":
form = RecipeForm(request.POST)
if form.is_valid():
@@ -28,21 +28,21 @@ def edit_recipe(request, id):
recipe.created_by = request.user.id
recipe.save()
form.save_m2m()
- return redirect('edit_recipe/' + id)
+ return redirect('edit_recipe/' + recipe_id)
else:
- recipe = Recipe.objects.get(id=id)
+ recipe = Recipe.objects.get(id=recipe_id)
form = EditRecipeForm(instance=recipe)
return render(request, 'new_recipe.html', {'from': form})
@login_required
-def edit_category(request, id):
+def edit_category(request, category_id):
return render(request, 'index.html')
@login_required
-def edit_keyword(request, id):
+def edit_keyword(request, keyword_id):
return render(request, 'index.html')
diff --git a/db.sqlite3 b/db.sqlite3
deleted file mode 100644
index 9bf2ffcf..00000000
Binary files a/db.sqlite3 and /dev/null differ