diff --git a/setup.py b/setup.py index 9a39bc0c..aaa72aa0 100644 --- a/setup.py +++ b/setup.py @@ -22,7 +22,7 @@ def get_requirements(fname='requirements.txt'): setup( name="unicms", - version='0.18.0', + version='0.18.1', description="uniCMS is a Django Web Content Management System", author='Giuseppe De Marco, Francesco Filicetti', author_email='giuseppe.demarco@unical.it, francesco.filicetti@unical.it', diff --git a/src/cms/api/tests/test_publication_gallery.py b/src/cms/api/tests/test_publication_gallery.py index 5f5af90d..1e0c23f5 100644 --- a/src/cms/api/tests/test_publication_gallery.py +++ b/src/cms/api/tests/test_publication_gallery.py @@ -36,7 +36,7 @@ def test_publication(self): collection = MediaUnitTest.create_media_collection() # pulication list - url = reverse('unicms_api:editorial-board-publication-galleries', + url = reverse('unicms_api:editorial-board-publication-media-collections', kwargs={'publication_id': pub.pk}) # accessible to staff users only @@ -66,14 +66,14 @@ def test_publication(self): assert(pub_gallery) # GET LOGS - url = reverse('unicms_api:editorial-board-publication-gallery-logs', + url = reverse('unicms_api:editorial-board-publication-media-collection-logs', kwargs={'publication_id': pub.pk, 'pk': pub_gallery.pk}) res = req.get(url, content_type='application/json',) assert isinstance(res.json(), dict) # GET, patch, put, delete - url = reverse('unicms_api:editorial-board-publication-gallery', + url = reverse('unicms_api:editorial-board-publication-media-collection', kwargs={'publication_id': pub.pk, 'pk': pub_gallery.pk}) @@ -134,7 +134,7 @@ def test_publication(self): assert True # form - url = reverse('unicms_api:editorial-board-publication-gallery-form', + url = reverse('unicms_api:editorial-board-publication-media-collection-form', kwargs={'publication_id': pub.pk}) res = req.get(url) assert isinstance(res.json(), list) diff --git a/src/cms/api/urls.py b/src/cms/api/urls.py index 8a1379a5..46a72e38 100644 --- a/src/cms/api/urls.py +++ b/src/cms/api/urls.py @@ -280,14 +280,14 @@ name='editorial-board-publication-link-logs'), urlpatterns += path(f'{puli_prefix}/form/', publication_link.PublicationLinkFormView.as_view(), name='editorial-board-publication-link-form'), -# publication galleries -pug_prefix = f'{pu_prefix}//galleries' -urlpatterns += path(f'{pug_prefix}/', publication_gallery.PublicationGalleryList.as_view(), name='editorial-board-publication-galleries'), -urlpatterns += path(f'{pug_prefix}//', publication_gallery.PublicationGalleryView.as_view(), name='editorial-board-publication-gallery'), +# publication media collections +pug_prefix = f'{pu_prefix}//media-collections/' +urlpatterns += path(f'{pug_prefix}/', publication_gallery.PublicationGalleryList.as_view(), name='editorial-board-publication-media-collections'), +urlpatterns += path(f'{pug_prefix}//', publication_gallery.PublicationGalleryView.as_view(), name='editorial-board-publication-media-collection'), urlpatterns += path(f'{pug_prefix}//logs/', publication_gallery.PublicationGalleryLogsView.as_view(), - name='editorial-board-publication-gallery-logs'), + name='editorial-board-publication-media-collection-logs'), urlpatterns += path(f'{pug_prefix}/form/', publication_gallery.PublicationGalleryFormView.as_view(), - name='editorial-board-publication-gallery-form'), + name='editorial-board-publication-media-collection-form'), # publication localizations pulo_prefix = f'{pu_prefix}//localizations' diff --git a/src/cms/medias/migrations/0008_alter_media_file.py b/src/cms/medias/migrations/0008_alter_media_file.py new file mode 100644 index 00000000..b219b300 --- /dev/null +++ b/src/cms/medias/migrations/0008_alter_media_file.py @@ -0,0 +1,20 @@ +# Generated by Django 3.2.3 on 2021-05-31 10:13 + +import cms.medias.models +import cms.medias.validators +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cmsmedias', '0007_auto_20210507_2312'), + ] + + operations = [ + migrations.AlterField( + model_name='media', + name='file', + field=models.FileField(upload_to=cms.medias.models.context_media_path, validators=[cms.medias.validators.validate_file_extension, cms.medias.validators.validate_file_size, cms.medias.validators.validate_image_size_ratio]), + ), + ] diff --git a/src/cms/publications/migrations/0015_auto_20210531_1013.py b/src/cms/publications/migrations/0015_auto_20210531_1013.py new file mode 100644 index 00000000..d876d7b0 --- /dev/null +++ b/src/cms/publications/migrations/0015_auto_20210531_1013.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.3 on 2021-05-31 10:13 + +import cms.medias.validators +import cms.publications.models +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('cmspublications', '0014_auto_20210507_1618'), + ] + + operations = [ + migrations.AlterModelOptions( + name='publicationgallery', + options={'verbose_name_plural': 'Publication Media Collection'}, + ), + migrations.AlterField( + model_name='category', + name='image', + field=models.ImageField(blank=True, max_length=512, null=True, upload_to='images/categories', validators=[cms.medias.validators.validate_image_file_extension, cms.medias.validators.validate_file_size]), + ), + migrations.AlterField( + model_name='publicationattachment', + name='file', + field=models.FileField(upload_to=cms.publications.models.publication_attachment_path, validators=[cms.medias.validators.validate_file_extension, cms.medias.validators.validate_file_size]), + ), + ] diff --git a/src/cms/publications/models.py b/src/cms/publications/models.py index ad42eb14..54eba51d 100644 --- a/src/cms/publications/models.py +++ b/src/cms/publications/models.py @@ -166,18 +166,14 @@ def related_links(self): return self.publicationlink_set.all() @property - def related_galleries(self): - if getattr(self, '_related_galleries', None): # pragma: no cover - return self._related_galleries - pub_galleries = PublicationGallery.objects.filter(publication=self, - is_active=True, - collection__is_active=True) - # galleries = [] - # for pub_gallery in pub_galleries: - # if pub_gallery.collection.get_items(): - # galleries.append(pub_gallery) - self._related_galleries = pub_galleries - return self._related_galleries + def related_media_collections(self): + if getattr(self, '_related_media_collections', None): # pragma: no cover + return self._related_media_collections + pub_collections = PublicationGallery.objects.filter(publication=self, + is_active=True, + collection__is_active=True) + self._related_media_collections = pub_collections + return self._related_media_collections def translate_as(self, lang): """ @@ -441,7 +437,7 @@ class PublicationGallery(TimeStampedModel, ActivableModel, SortableModel, on_delete=models.PROTECT) class Meta: - verbose_name_plural = _("Publication Image Gallery") + verbose_name_plural = _("Publication Media Collection") def __str__(self): return '{} {}'.format(self.publication, self.collection) diff --git a/src/cms/publications/tests.py b/src/cms/publications/tests.py index a680fad0..2827ba08 100644 --- a/src/cms/publications/tests.py +++ b/src/cms/publications/tests.py @@ -118,14 +118,14 @@ def enrich_pub(cls, **kwargs): publink.__str__() pub.related_links - # pub gallery + # pub media collection media_col = MediaUnitTest.create_media_collection() pubga = PublicationGallery.objects.create(publication = pub, collection = media_col, is_active=1) pubga.__str__() - pub.related_galleries + pub.related_media_collections # pub loc pub.translate_as(lang='en')