diff --git a/api/v1/serializers/mixins.py b/api/v1/serializers/mixins.py index 40584503..50e7d19d 100644 --- a/api/v1/serializers/mixins.py +++ b/api/v1/serializers/mixins.py @@ -32,35 +32,23 @@ class DispatchContentMixin(object): if 'id' in cdata and cdata['id']: t = Text.objects.get(id=cdata.pop('id')) serializer = TextCreateSerializer(t, data=cdata) - if serializer.is_valid(): - serializer.save() else: serializer = TextCreateSerializer(data=cdata) - if serializer.is_valid(): - serializer.save() + if serializer.is_valid(): + serializer.save() elif ctype == 'image': if 'id' in cdata and cdata['id']: image = Image.objects.get(id=cdata.pop('id')) serializer = ImageCreateSerializer(image, data=cdata) - if serializer.is_valid(): - image = serializer.save() - else: - continue - try: - image_object = ImageObject.objects.get(id=cdata['img']) - except ImageObject.DoesNotExist: - pass - else: - image.img = image_object - image.save() else: serializer = ImageCreateSerializer(data=cdata) - if serializer.is_valid(): - image = serializer.save() - else: - continue + if serializer.is_valid(): + image = serializer.save() + else: + continue + if 'img' in cdata: try: - image_object = ImageObject.objects.get(id=cdata['img']) + image_object = ImageObject.objects.get(id=cdata.get('img')) except ImageObject.DoesNotExist: pass else: @@ -71,25 +59,15 @@ class DispatchContentMixin(object): if 'id' in cdata and cdata['id']: it = ImageText.objects.get(id=cdata.pop('id')) serializer = ImageTextCreateSerializer(it, data=cdata) - if serializer.is_valid(): - it = serializer.save() - else: - continue - try: - image_object = ImageObject.objects.get(id=cdata['img']) - except ImageObject.DoesNotExist: - pass - else: - it.img = image_object - it.save() else: serializer = ImageTextCreateSerializer(data=cdata) - if serializer.is_valid(): - it = serializer.save() - else: - continue + if serializer.is_valid(): + it = serializer.save() + else: + continue + if 'img' in cdata: try: - image_object = ImageObject.objects.get(id=cdata['img']) + image_object = ImageObject.objects.get(id=cdata.get('img')) except ImageObject.DoesNotExist: pass else: @@ -100,52 +78,36 @@ class DispatchContentMixin(object): if 'id' in cdata and cdata['id']: v = Video.objects.get(id=cdata.pop('id')) serializer = VideoCreateSerializer(v, data=cdata) - if serializer.is_valid(): - serializer.save() else: serializer = VideoCreateSerializer(data=cdata) - if serializer.is_valid(): - serializer.save() + if serializer.is_valid(): + serializer.save() elif ctype == 'images': if 'id' in cdata and cdata['id']: g = Gallery.objects.get(id=cdata['id']) g.position = cdata['position'] g.title = cdata['title'] g.uuid = cdata['uuid'] - setattr(g, obj_type, obj) - g.save() - if 'images' in cdata: - for image in cdata['images']: - if 'img' in image and image['img']: - if 'id' in image and image['id']: - gi = GalleryImage.objects.get(id=image['id']) - gi.img = ImageObject.objects.get(id=image['img']) - gi.save() - else: - gi = GalleryImage.objects.create( - gallery=g, - img=ImageObject.objects.get(id=image['img']) - ) else: g = Gallery( position=cdata['position'], title=cdata['title'], uuid=cdata['uuid'], ) - setattr(g, obj_type, obj) - g.save() - if 'images' in cdata: - for image in cdata['images']: - if 'img' in image and image['img']: - if 'id' in image and image['id']: - gi = GalleryImage.objects.get(id=image['id']) - gi.img = ImageObject.objects.get(id=image['img']) - gi.save() - else: - gi = GalleryImage.objects.create( - gallery=g, - img=ImageObject.objects.get(id=image['img']) - ) + setattr(g, obj_type, obj) + g.save() + if 'images' in cdata: + for image in cdata['images']: + if 'img' in image and image['img']: + if 'id' in image and image['id']: + gi = GalleryImage.objects.get(id=image['id']) + gi.img = ImageObject.objects.get(id=image['img']) + gi.save() + else: + gi = GalleryImage.objects.create( + gallery=g, + img=ImageObject.objects.get(id=image['img']) + ) class DispatchMaterialMixin(object): diff --git a/project/templates/blocks/lil_store_js.html b/project/templates/blocks/lil_store_js.html index 968ded1a..21d19bea 100644 --- a/project/templates/blocks/lil_store_js.html +++ b/project/templates/blocks/lil_store_js.html @@ -10,6 +10,7 @@ user: { id: '{{ request.user.id|default:'' }}', photo: '{% if request.user.photo %}{{ request.user.photo.url }}{% else %}{% static 'img/user_default.jpg' %}{% endif %}', - } + }, + components: {} }; diff --git a/project/templates/lilcity/edit_index.html b/project/templates/lilcity/edit_index.html index 18be67aa..70691489 100644 --- a/project/templates/lilcity/edit_index.html +++ b/project/templates/lilcity/edit_index.html @@ -316,12 +316,12 @@ {% include 'templates/blocks/lil_store_js.html' %} - {% block foot %}{% endblock foot %} + diff --git a/project/urls.py b/project/urls.py index 60a492c4..126205ad 100644 --- a/project/urls.py +++ b/project/urls.py @@ -47,14 +47,14 @@ urlpatterns = [ path('author-request/success/', TemplateView.as_view(template_name='user/become-author-success.html'), name='author-request-success'), path('courses/', CoursesView.as_view(), name='courses'), path('course/create', CourseEditView.as_view(), name='course_create'), - path('course/create/lessons', CourseEditView.as_view(), name='course_create_lessons'), - path('course/create/lessons/new', CourseEditView.as_view(), name='course_create_lessons_new'), - path('course/create/lessons/edit/', CourseEditView.as_view(), name='course_create_lessons_edit'), + path('course//lessons/new', CourseEditView.as_view(), name='course_lessons_new'), + path('course//lessons//edit', CourseEditView.as_view(), name='course_lessons_edit'), path('course/on-moderation', CourseOnModerationView.as_view(), name='course-on-moderation'), path('course//', CourseView.as_view(), name='course'), path('course//', CourseView.as_view(), name='course'), path('course//checkout', CourseBuyView.as_view(), name='course-checkout'), path('course//edit', CourseEditView.as_view(), name='course_edit'), + path('course//edit/lessons', CourseEditView.as_view(), name='course_edit_lessons'), path('course//lessons', CourseView.as_view(template_name='course/course_only_lessons.html', only_lessons=True), name='course-only-lessons'), path('course//like', likes, name='likes'), path('course//comment', coursecomment, name='coursecomment'), diff --git a/web/src/components/ContestRedactor.vue b/web/src/components/ContestRedactor.vue index 41820a66..a0cffc9d 100644 --- a/web/src/components/ContestRedactor.vue +++ b/web/src/components/ContestRedactor.vue @@ -66,45 +66,7 @@
- -
- - - - - -
-
- - +
@@ -113,15 +75,9 @@ diff --git a/web/src/components/CourseRedactor.vue b/web/src/components/CourseRedactor.vue index b3703785..4c46f4b2 100644 --- a/web/src/components/CourseRedactor.vue +++ b/web/src/components/CourseRedactor.vue @@ -166,45 +166,7 @@
- -
- - - - - -
-
- - +