Sensenet: Set permissions on Document Library - sensenet

It is possible to set permissions on document library without using the content explorer?
I can set permissions for each specific file or folder, but to change the permissions of a document library I only finded a way through the content explorer...

Ifyou want to display it on the toolbar as a 'button' add the SetPermission action as an ActionLink into the .ascx view of the document library toolbar (/Root/System/SystemPlugins/ListView/ViewFrame.ascx)
Place this into the ToolbarItemGroup control in the .ascx
<sn:ActionLinkButton ID="SetPermissionsActionLinkButton" runat="server" ActionName="SetPermissions" ContextInfoID="myContext" Text="<%$ Resources: Action, SetPermissions %>" />
If it's enough if the 'Set permissions' action is listed in the 'Actions' dropdown on the toolbar, add 'ListActions' to the Scenario field of the /Root/(apps)/GenericContent/SetPermissions.

Related

Shopify: How to make a custom template editable in the theme editor?

I am using the theme "Debut" and I've copied it to make a custom theme out of it.
Then, under "Edit code" I have create a new template for "blog".
Now, when I click on "Customize" button at my template, and the theme editor opens, I have a select box in the top bar where I can select the themes templates, and the pages I've created. But I can't find my custom blog template there, to edit it via the drag & drop editor.
How can I achieve this?
Any help is highly appreciated, thanks!
Once you add any custom template for a blog, product, or collection, they are not available directly into the backend customizer in Shopify.
In backend default templates are available, you need to assign the template to a page, product or blog and then navigate to the desired page, collection or product and blog page into backend using customizer window and then you able to edit the sections and blocks that are added to custom template code.

Scenario of two or multiple users working on same content

I'm working on SN community edition; I need to setup a like shared folder where two or multiple users can work on it.
I tried the following:
Login with built-in user account "admin";
Create a folder under "\Root" with name "SharedFolder";
Modify the permission on this folder by giving built-in user account "mike" full permission.
The problem is that I couldn't see this shared folder in the dashboard of the users (admin, mike).
The built-in mypage's document library by default lists the childrens of /Root/Profiles/username/Document_Library.
The easiest way to achieve this is if you add a new List portlet to the 'My page' and bind it to the 'shared' folder. But this way you cannot list multiple shared folders in one list.
Steps to achieve this:
Copy /Root/Profiles/(apps)/UserProfile/Browse into to the chosen user profiles (/Root/Profiles/username/(apps)/UserProfile/Browse. This way the users that should work on the shared folder would have a custom 'My page' with the shared folder as a list
Navigate to the newly created Browse pages and switch to edit mode
Add a 'List' portlet to one of the zones
Open the portlet actions (top-right corner of the portlet) and click on 'Edit' to open the portlet property dialog.
There're tons of things on this dialog to set, but the three that you have to set is the ViewFrame on the 'Content List' tab (set is to: /Root/System/SystemPlugins/ListView/ViewFrame.ascx) and the Bind Target + Custom root path on the Contenxt binding tab (Bind target should be Custom root and add your shared folders path into the Custom root path)
The steps above should be made on all the userprofiles that are related. Another solution could be if you change the built-in profile Browse page (/Root/Profiles/(apps)/UserProfile/Browse). This way the shared folder will be displayed on every users 'My page' but the users who aren't allow to see the items of the shared folder will see an empty list.
To get all the 'shared' document/folder/content items you have to use the permission queries but they are only available through the OData or c# API, so you have to create a custom grid/collection view to achieve this.

DNN - What control to use for images in custom module settings?

I am creating modules using the template created by Chris Hammond (TYVM Chris).
My modules have a few things that can be edited by the user in the settings area, one of them being an image.
I can use a TextBox and have the user type the root relative path to the image, but it is a little clunky because the user has to upload the image in the file management area of the website, get the path, then add it to the module settings. It would be a lot smoother if I could have a Image selector that would tie into the DNN files and allow the user to select an image that has been previously uploaded to DNN or add their own.
How would one accomplish this?
I suggest you to use the FilePickerUploader control of DNN.
You could see what it looks like in the Portal Settings (in Admin menu). It's used for the selection of the logo file, background image and favicon.
For example, it could be use like this:
<%# Register TagPrefix="dnn" TagName="FilePickerUploader" Src="~/controls/filepickeruploader.ascx" %>
<dnn:FilePickerUploader ID="ctlFavIcon" runat="server" Required="True" FileFilter="ico" />
Required and FileFilter attributes are optionnal and I think it provides other options.
Just use a DNNEditor webcontrol
<%# Register TagPrefix="dnn" Assembly="DotNetNuke.Web" Namespace="DotNetNuke.Web.UI.WebControls" %>
<dnn:DnnEditor ToolsFile="xmfile.xml"/>
Via this control you can use the default image selector. In first place you will see a lot of selectors in the toolbar, but you can change this via a xml file and add that xml file to the property ToolsFile
Just let me know if you need more help.

Is that true that we can't create a browse button in sharepoint?

Hello guys I am stuck at a point and i want ur help.First of all i want to clear that i am not a sharepoint developer but my boss gave me a task which i have to complete in 2 days . I want you ppl to help me to accomplish this task.I have two questions in my mind
1) Is that true that we can't create a browse button in sharepoint?
2) If there is a way to create browse button in sharepoint then pls explain here.And if not then what should i do to get browse button in sharepoint.
EDIT:-
I want a browse button like in picture,onclick which opens file uplod dialog.
Here's the picture.
No that is not true. You can put any html in your web parts, master pages, or page layouts:
<input name="uploadedfile" type="file" />
There is also an ASP.NET file upload button available, like so:
<asp:FileUpload runat="server" id="FileUpload1" />
The "official" SharePoint way to do it would probably be having a document library in your site and doing this with javascript:
NewItem2(event, "/path/to/list/NewForm.aspx?PageType=8&ListId={fdcbd17c-9b66-449e-8875-d25de53f98d1}&RootFolder=");javascript:return false;
and if you have a web part (or any C#) generating this javascript, you should use the document library's DefaultNewFormUrl

How Do I Open A PDF In Sitecore

How do I open a pdf document stored in Sitecore when a user clicks a link? The pdf document is stored in the Media Library.
Here's the code I have now:
Sitecore.Data.Fields.LinkField linkField = item.Fields["Url"];
tab.NavigateUrl = linkField.Url;
Same rules apply to a PDF media as to any other type in media library. If you need just to retrieve the media url to construct a link, do the following:
MediaItem mediaItem = linkField.TargetItem;
if(mediaItem != null)
MediaManager.GetMediaUrl(mediaItem);
You can also simply use web control or xsl control to render the link:
Web control:
<sc:Link Field="Url" Item="if you need to process specific item" runat="server" />
If your question concerns browser behavior when the link is clicked, set ForceDownload to true:
<mediaType name="PDF file" extensions="pdf">
<mimeType>application/pdf</mimeType>
**<forceDownload>true</forceDownload>**
<sharedTemplate>system/media/unversioned/pdf</sharedTemplate>
<versionedTemplate>system/media/versioned/pdf</versionedTemplate>
</mediaType>
Be aware of problems with Firefox on a Mac, as PDFs wont seem to work there.
For that you need to setup some stuff according to this.
if you can't access that is basically tells you to go to the web.config, find this:
<mediaType name="PDF file" extensions="pdf">
and change the
<forceDownload>false</forceDownload>
to
<forceDownload>true</forceDownload>