0

We have a document library that needs to be read/write, but want to make the app part that appears on the subsite home page to be read only.

This is because we've created a 'Recently modified' view that we use on the app part, which shows the results in a flat structure (i.e. without the document library folder hierarchy), and don't want users dragging new documents into a flat view of the document library, as that just drops files into the root of the document library, which we want to avoid.

When users enter the document library proper, they see the 'default' view, which includes the hierarchy and we obviously want them to be able to add documents in this manner, it's only the app part view on the subsite page that we want to prevent users adding new documents to.

I've looked at the web part properties and can't see anything that will achieve this.

We're using Sharepoint Foundation 2013

1

I don't think there is a way to make the app part to be read only. The Drag and drop action is created by a javascript file that SharePoint loads called dragdrop.js which is in the _layouts/15/ directory.

A suggestion, although I don't think it is a brilliant one is to load a javascript file just on the homepage after SharePoint dragdrop.js that overwrites the methods in dragdrop.js. That way the drag drop code will not happen on your homepage. Check out DragDrop.debug.js in your SharePoint root to look at the different functions to override. Although I'm sure there is a better suggestion out there.

Just thought of an alternative, you could use a Content Search Web Part to bring back the latest documents, and with display templates you can display them any way you like, this wouldn't give the users the Drag and Drop experience.

  • Thanks Cann0nF0dder, never thought of the search web part, I'll investigate further. – Bryan Feb 20 '14 at 17:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.