Admin link/url to Media Library in Folder Path - kentico

Is it possible to generate a direct admin link to the Media Library App on a specific Gallery and Folder Path?
In the example above, I'd like to have a link to Media Library Gallery, with the Test folder selected.
I've tried setting the objectid (library id) as such http://localhost:51872/Admin/CMSAdministration.aspx?objectid=3#436564ee-89e9-4719-939a-0d7b57ece744 but doesn't seem to work.
I'm on a latest hotfix v8 site.

I don't think that it's possible, because Kentico UI has been built on WebForms and it uses UpdatePanels for ajax POST calls and all values related to the current path are held in hidden inputs. In other words you can only update basic page UI via Post requests with specific values in inputs.

Related

Kentico permanent link vs direct path

I'm working on some site that all links (dynamic + hard-coded) to media library are permanent links (with getmedia...), which made it so hard to locate the exact folder of the files and update them. I've asked some developer and heard that permanent links are more secure as the system can check who have access to download the materials. Is it a fair statement and why/why not? Thanks for your input!
This is not a fair or correct statement. Access is set at the individual medial library directory, not an individual file level.
For example, if you have an Images media library which has no security behind it, you can access it directly with a URL of:
/site/media/images/logo.png or /getmedia/<guid>/logo.png
and the image will display without issue.
Now you have another media library called "Secure_Files", if you attempt to access:
/site/media/secure_files/file1.pdf
You'll get an error or a login page because the security is set on the
/site/media/secure_files directory.
Here is the documentation on securing media libraries.
By default, Kentico does not check the See library content permission for visitors on the live site. If you wish to require users to have this permission to view media library content, you need to enable the following settings in the Content -> Media category of the Settings application:
Use permanent URLs
Check file permissions
See the note at the very bottom of this documentation page.
Permanent Link is made up of:
/getmedia/
Guid ID
Image Path
.aspx
Eg: /getmedia/C73B5-6A0-4F6-878-3C29D792014/IMG_3860.jpg.aspx
Direct Path is made up of:
/
Site Name
Media Library Folder Name
Image Path
Eg: /google/media/Blog-images-from-Kentico-Cloud/IMG_360.jpg

SharePoint online - intercept document request when document clicked

I am working on this project where it includes hosted app with SharePoint online and a dozen of other things.
When they built the project, they implemented a functionality that does this :
When a user goes to a document library, and clicks on the name of a document of specific type, the user gets redirected to the hosted app where there is a logic to do something on the document.
What I am not able to figure out is :
How are they implementing the part of "when user clicks on document, user will be redirected to app" ?
I checked httpmodules and couldn't find anything, I also checked remote event receivers and couldn't find anything..maybe I am not searching properly in the large C# solutions they have, or maybe there is another way to implement this..I need help to figure that out.
You would typically add JavaScript to the library page that finds the <a> tags for the documents with your file extensions, and then replaces the "onclick" with your custom code.
You could also intercept the JavaScript function used by SharePoint and add your additional logic. (do a web search for "SharePoint coreinvoke")
Disclaimer: most of what you will find is for the "Classic experience". The SharePoint Online "modern experience" changes all of the rules!

Kentico 9 ui permissions regarding the media library

is it possible to allow read access only to the media library? I'm setting a role and with the Media Library module, I've only set the Read permission to Allow, but a user with that role still sees the upload button. Am I looking at the wrong module?
If you go to the specific Media Library and then edit.
Then you will see the list of files within the media library.
On the left-hand side, there will be '...', hover over this and then click on Security.
Here you can specify which role you want to perform what action in that specific Media Library.
Did you configure Permissions and UI Personalization?
So in this case, I removed access to the media library. It forces editors to add images as attachments, which was my end goal. Reason being, sync only works with published content, and won't migrate files from one server to another.

SharePoint 2010 site template with a form library - the form template contains site URL

I am working on a site template that will be used to create hundreds of sites for different org units. The site should contain a form library, with an InfoPath form template.
My question is - is it possible to create a template and let power users create sites, without any administrator or developer involvement? If not - what's the easiest alternative?
The problem is that the form template contains the site URL and I don't know if this can be avoided. As a consequence, when a site is created and a form submitted - it ends up in the library of the original site.
I have created a handful of sites for the pilot project and what I've been doing so far is to uncab the XSN file, edit the URL manually, repackage into XSN and publish to the new library. This works, but involves a manual step in the site creation process that I wish to avoid. Here are the lines I'm editing:
<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
<xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
<xsf:folderURL value="http://my_farm_url/subsite1/form_lib"
Also here:
<xsf2:solutionPropertiesExtension branch="wss">
<xsf2:wss path="http://my_farm_url/subsite1/form_lib"
I'm changing subsite1 to subsite2.
I tried to set a relative URL, first to the submit element, then to both, to no avail. The form was being rendered (in browser), the submit worked (no errors) but then the submitted form was not in the library. Looking further into this, the forms ended up being submitted to a form library on the root site - http://my_farm_url/form_lib! It makes sense when you think about it, that's where a relative url of form_lib takes you to, from the site, from the root site perspective.
For the moment the only solution I envision is to create a tool that will help users create sites based on the template, fixing the XSN behind the curtains. I don't know how to publish a form template programmatically but it should be possible. Apart from this unknown, it's also not very automated and I'll be very happy if a proper solution is possible that will work with SharePoint/InfoPath tools only.
You need to schedule a EventReceiver there is no way to do it for configuration.
In EventReceiver you have to read the file "Manifest.xsf", update the XML node is defined where the url and save the file "Manifest.xsf".
To read the XML node is necessary to use System.Xml.dll

Communicate with Document Library Browser Web Part

Background
My task is to, in SharePoint, show an image of a process map which should be clickable. Think of an imagemap in html. Some areas take you to other process map images and other brings up a pop-up window.
"Connected" to each process map is a set of documents. These documents are stored in a document library. There are one process map for each folder in the document library. The documents should be shown next to the image. The person clicking either the image or a folder to navigate in the hierarchy should also be able to upload, download and delete the documents.
Question
What would be the easiest solution for this?
My thoughts
... so far is to create a custom web part which I add above the document library browser (the default one in MOSS 2007). This web part reads some xml file pointing out the image to show and the areas which is to be clickable. It listens for some kind of events from the document library, like clicks on folders in the browser or it reads the current URL to know where in the folder hierarchy we are currently, and from that show the correct process map image. When the image is clicked, the web part updates the image and tells the document library to update accordingly.
Is this feasible? Am I on the wrong track? How do I communicate with a document library?
Thanks, Martin
My thoughts are that you create a web part that displays your image map and outputs(provider) the appropriate criteria to a another web part that consumes it and displays the files in a document library.
You can achieve this by creating your own custom webpart that displays a document library based on a CAML query. Each Images sends a different CAML query to the document library webpart.
I hope this helps. Please provide information on how you solved this problem if you have already done so.
Thanks
Long since I've been here... Actually solved this one.
We created two web parts, one for process navigation and one for filtering documents in the document library.
The web part for process navigation is actually just a web part that looks for a specific query parameter in the URL and adds ".html" to it. Then looks for that document in a document library. If found then this document is shown inside an iframe. Simple!
The html documents are produced by Visio and exported to html, then uploaded to SharePoint. The links in the Visio document drives the application with queries.
The web part that shows the corresponding documents also looks for a specific query in the URL then sends filterparameters to the document library through the IfilterProvider interface. I snatched this example IFilterProvider at MSDN and made it look in the URL for parameters and then made the controls invisible to the user.
Really simple solution, though the customer needs to put in a lot of work to incorporate their company processes into it. And it is somewhat error prone and probably a sucker to make changes to data-wise.

Resources