Designing a submission system that supports artist-client commission relationships, artist-business content ownership relationships, the variation in whether contributors to an image want it in their galleries, and other novel "multiple people involved" scenarios - but removes duplicate uploads and consolidates all favorites et al into a single copy of the image.
- Artists and commission clients often both upload the resulting image.
- Multiple artists who collaborate on an image often all upload it.
- Drawing gift art for character owners often results in all relevant owners re-uploading.
- I know one artist who uploads the same content to both his personal account and to a brand-name account similar to a company profile.
Submissions become independent pages similar to posts on an image board, rather than items attached to individual user galleries.
In addition to arbitrarily set-able values such as creation date etc., Submissions bear contributor roles which mark (with links):
- characters and their owners (as you can make character profile pages)
- licensees, companies, &/or brand names
- contributors not covered above
...or other relevant positions. Any user in any of these roles may be marked as an intellectual owner of the submission's content, and any user in any of these roles may be given gallery permission.
The first person to upload the image is marked as Submission Administrator (separate from role), and has the penultimate authority over image category & tags, contributor roles, and gallery permissions. (Site Staff are the ultimate authority, of course, and can change who is the Submission Administrator too.)
User accounts given gallery permissions may toggle whether this Submission is listed in their galleries. Thus, everyone's gallery will show it like they had all uploaded it separately, but all clicks and all favorites, comments, etc. will go to the same 1 copy of the submission.
Each Submission page has multiple description tabs. Each is written by one of the gallery-permission users who has opted to display the image in their gallery, as though they had uploaded separately. When clicking on the submission from a specific user's gallery, that user's description tab will be active immediately.
When a new submission is uploaded, a dupe check will see if the submission already exists. If so:
- If the Submission Administrator has already given the uploader gallery permissions, they will be given the option to immediately display the Submission in their gallery.
- If the Submission Administrator has not already given gallery permissions and has not locked applications, the uploader will be given the option to apply for gallery permission (and a role if applicable.)
- If the uploader does not have gallery permission and applications are locked, they're told to message the Submission Administrator or, if that doesn' t work, site staff.
In the event that a dupe exists and is not caught, Site Staff may manually merge Submissions. This should retain all comments, combine favorites, and host the newer version's description as per the above description tabs, while all other information is discarded.
SUGGESTED IMPLEMENTATION PROCESS
Assuming that current Submissions cannot be plausibly "upgraded" into this system:
- Leaving existing Submission system alone, develop new submission page as a "second Submission system" of sorts, available to admins, then testers, then the public
- Once tested & stable, migrate existing Submissions to new Submission system by effectively "reuploading" them and checking for dupes.
- The earliest uploader becomes Submission Administrator.
- All subsequent uploaders are given gallery permissions and automatically checked as displaying the Submission in their galleries.
- Everyone is listed under a catch-all "Contributor" role because the server can't reliably & mechanically tell who did what. They'll have to update it themselves, I'm afraid
- Replace all old Submission functions & links with new Submission functions & links
- Delete all old Submissions and keep all new system Submissions
- Whistle and pretend the old system was never there
I hope this post hasn't been too confusing! Thanks for reading!
Customer support service by UserEcho