elan-ev / studip-opencast-plugin

This is an Stud.IP plugin for Opencast
https://elan-ev.github.io/studip-opencast-plugin/
GNU General Public License v2.0
9 stars 22 forks source link

Default action for adding existing playlists to other courses should be copying - remove linking feature #886

Closed Sturek closed 6 months ago

Sturek commented 7 months ago

Currently playlists can only be linked to courses, thus changes made to the playlist in one place affect all other linked contexts. Thies feature should be removed and replaced by a "copy" feature.

Expected behavior would be that users are able to copy a playlist from the work place or a course to the work place or another course. The copies would exist independently from each other. The videos remain linked to both playlists and are not copied themselves.

Thus, all references to "Verknüpfung" with respect to playlists need to be replaced with wording that makes clear the playlist is being copied. Some other features may also require changes (e.g. see #794). We should collect these instances here.

dennis531 commented 7 months ago

Concept:

@tgloeggl Do you have a preference for how we should alter the tables and reference a course to a playlist? Constraint, remove table oc_playlist_seminar or no db changes?

tgloeggl commented 7 months ago

The changes suggested basically mean removing the playlist concept. I strongly object to that. There is a reason we do not always want duplication of playlists. I would suggest the following changes to the plan:

dennis531 commented 7 months ago
* Playlists STAY a 1xN relation

* Copying of playlists should be nonetheless possible and as well be the default when copying them to a new course from an existing course

In this case, we would keep the link actions. Therefore, we still need a common solution here.

  • The visualisation under the workspace than should be improved to better handle the playlists, maybe by introducing a categorization by semester and courses (maybe something similar to the "My course" page)

The visualisation clearly should be improved in the workspace. We suggested to extend the table by the columns Veranstaltung and semester like vips:

image

I also like the categorization in the "My courses" page but it could become too complex because we have three levels (semester, course, playlists) instead of two (semester, courses). Alternatively, we could combine the course and semester levels: (course with its semester, playlists). In this solution, sorting is more difficult to implement.

dennis531 commented 7 months ago

Conclusion from our meeting on 12.01.:

First, I would start to implement the copy functions.

dennis531 commented 7 months ago

Aus Mail von Elmar mit Vorschlag:

SOP: Kopieren vs. Verknüpfen von Playlisten

Wie bereits besprochen, wollen wir die Möglichkeit zum Verknüpfen von Playlisten nur verbergen, nicht technisch ausbauen. D.h. insbesondere kann das DB-Schema so bleiben, wir brauchen aber ggf. eine Migration zum Duplizieren vorhandener, bereits mehrfach verknüpfter Playlisten.

In einer Veranstaltung:

  • "Wiedergabeliste hinzufügen -> Bestehende verknüpfen" auf Kopieren umstellen und entsprechend benennen.

  • "Videos/Wiedergabelisten übertragen": Hier verstehe ich schon nicht, wie das aktuell funktioniert. Der Inhalt der Kurswiedergabeliste wird anscheinend in die Kurswiedergabeliste im Zielkurs kopiert (das funk- tioniert allerdings nur genau einmal) und die anderen Wiedergabelisten verknüpft? Wenn wir das anbieten wollen, sollte das einfach alle Playlisten in den Zielkurs kopieren (ohne Sonderbehandlung).

Im Arbeitsplatz:

  • Die Ansicht "Wiedergabelisten" erst mal nicht mehr anzeigen.

Überall da, wo Listen aus anderen Kontexten angezeigt werden, würde ich in der Tabelle dann auch die Veranstaltung und ggf. das Semester anzeigen. Das betrifft mindestens die beiden Dialoge zur Auswahl einer Playliste:

  • unter "Verknüpfungen" bei einem Video
  • unter "Wiedergabeliste hinzufügen > Bestehende verknüpfen"
kai-wng-uos commented 7 months ago

copying a playlist into a course as the first playlist in that course results in the option to add/manage playlists disappearing. Then, when I switch to different tab and back to OC Videos, the playlist is just gone and the default options appear...

https://github.com/elan-ev/studip-opencast-plugin/assets/152959695/27bb2a2d-69aa-4baf-90d7-557e18521c61

kai-wng-uos commented 7 months ago

The playlists seem to still exist somewhere in the test system aether...

Image

kai-wng-uos commented 7 months ago

deleting the last remaining playlist from a course or triggering the InvaidArgumentError (see #864) breaks the plugin.

Image

de- and re-activating the plugin in the course doesn't seem to help...

dennis531 commented 7 months ago

copying a playlist into a course as the first playlist in that course results in the option to add/manage playlists disappearing. Then, when I switch to different tab and back to OC Videos, the playlist is just gone and the default options appear... Aufzeichnung.2024-01-31.103937.mp4

Currently the playlist will be opened if you click on the playlist name and not be added to the course. I think we should remove this feature as we have no playlists in the "Arbeitsplatz". In the above video, the view of the "Arbeitsplatz" is shown but with confusing course navigation.

dennis531 commented 7 months ago

deleting the last remaining playlist from a course or triggering the InvaidArgumentError (see #864) breaks the plugin.

I wonder how you managed to delete the default playlist as it should not be removable from the course :D However, there is a problem with the copy function if a course has no playlists and consequently no default playlist. It seems that if no default playlist is set, no playlists are displayed, even if they exist in the course.

Solution: