Under Admin, in the "Edit Product Details" section are six tabs by default: Product Info, SEO, Pictures, Product Attributes, etc.
We would like to add a new tab called "admin docs" that would allow administrators to upload zip files and associate them much in the same way the "Pictures" tab allows one to upload multiple image files.
Similarly, we'd like to then associate a product attribute value to a selected "admin doc" from that list of uploaded docs, just as you can now associate "no picture" or other uploaded pictures to a product attribute value.
I'm stuck on how to approach this programmatically. There looks to be a lot of classes, interfaces and services behind the scenes that make the "pictures" functionality work. I found at least two dozen class, view and model references. I want the same functionality, only with standard file uploads instead of pictures. These files would only be visible to administrators on the back end, not to end users. The ultimate goal is then to be able to attach these files to internal contacts and shoot them an email with the attachment after the user selects that product attribute value and submits the order.
What is the best approach to take with this? Is there a straightforward way of recreating the pictures tab functionality, but for zip files instead of images? Is there existing functionality that would achieve a similar result that I may be overlooking? Thanks in advance.