Some List Fields Invisible in Edit/View Forms after Migrating to Office 365 SharePoint Online

We did a Portal Migration from On-Premise SharePoint to Office 365 SharePoint online. and all went well except few issues raised by end users as they supposed use this portal for many workflows and other automations.

First issue is that some of the fields are invisible in Edit/New Forms when editing or creating records in most of the lists. All these were well functioning in On-premise SharePoint 2010.

These fields were seen in any views (Custom/All Items) too but not in Edit/View Forms.

Enabling “Content Types” from List Settings –> Advanced Settings and then Looking at the Content Types under the List Settings, there were only one Content Type which is Default “Document” Content type and clicking on it showed only two fields added to it. So this is the Point !

Document Content Type is the default Content Type here and the custom fields were not added to it. This is the cause of the issue.

clip_image001

Simply Adding the necessary Fields in to this Content Type would save our day.

clip_image002

And Yes, the Forms then appeared to contain all the fields it supposed to have.

clip_image003

Configuring Calendar Overlay to Display Different Color for each Category in SharePoint Online-Make the SharePoint Calendar More Delightful and Useful

Calendar being one of the most significant feature in SharePoint. Most of the time to use it in a meaningful way, you need a little bit of customization. This article describes the way of customizing the color code of Calendar items based on a specific category.

Scenario: I need my calendar to show different colors for each category such as Meeting, Business, etc.…Once we complete all the steps, you will see a calendar like this which has different color for each category. The filtering option can be used to either default “Category” Field or you may create your own column with multiple choices as you need.

I have used SharePoint Online In this Scenario but it will be the same for On-Premise SharePoint as well.

clip_image001

So let’s get in to the scene. First to create Views on the Existing Calendar. Office 365 SharePoint will already have Calendar by default even for newly created sites.

Go ahead and Create a New View by Clicking on “Create View

clip_image002

To Select the Calendar View, Click on it

clip_image003

Give it a name and drag to bottom of the page. In this case its “Meeting” so I will see this name when I’m configuring the Overlay at next levels.

clip_image004

Choose the Filtering Option as you need it to be. In this case I will use the Category Filed to Color up the events so each Category will have a different color. First lets create a View for the Meeting category. Once selected the field and given the Value which you want to filter, hit “ok” to save.

clip_image005

Now to configure the Calendar Overlay. Simply Click on “Calendar Overlay” Icon on the Ribbon

clip_image006

It will bring you up to this page. Hit on new Calendar here (Not to be confused. This doesn’t mean you need to have multiple calendars here. It simply means you can have multiple calendars as well. also you can have multiple views in a single Calendar too) so in this scenario, we will have multiple views in a single calendar in order to define different colors for each category.

clip_image007

Let’s create the first Overlay for the Meeting Category first. URL will be automatically inserted. If your calendar on the root site, simply click Resolve to retrieve the List and View otherwise define the path for your calendar.

This is where you define the View you created earlier. From now on, All items created under Meeting Category will be shown in Purple Color.

clip_image008

If you have many categories, repeat the same process for other category items as well (e.g.- Birthday, Business). When you complete everything, the final Calendar will look like this.

clip_image009

Control/Hide SharePoint Top Ribbon to an Specific Audience

Mostly in SharePoint Public Sites Scenarios, You will look for a solution where to hide the Admin Ribbon of the SharePoint Site. Basically the site itself should not have the Admin panel shown to anonymous users accessing from outside which can be only shown up on the level of permissions of the user logged in to the Site (Mostly Internal Domain Users)

clip_image001

If you have developed you own Masterpage, this has to be done there.

To do this, Simply open the Site using SharePoint Designer. Locate your Master Page (which has been set as the Default) Find below two Controls in MasterPage.

Dont forget to Keep a Copy of the Master page before you start editing.

Master

Then Edit the PermissionString from its defined value (ManageWeb) to the new value based on your permission requirements. In this sceanrio it defined to “AddListItems” Value which is the new permission Level. from now on, the Ribbon will be only Visible for thoese who has AddListItems permision Level. To any other level it will be hidden.

In Below sceanrio, Anonymous User wont be able to see the Ribbon as it defined to hide for everyone does not have “AddListItems” Permission level. However you have to carefully look at the list of permission levels supported in “SecurityTrimControl” which has been listed below.

———————————————— Grey Bar (Ribbon Row)

clip_image003

<SharePoint:SPSecurityTrimmedControl ID=”HideRibbonRow” runat=”server” PermissionsString=”ManageWeb”>

document.getElementById(“s4-ribbonrow”).style.display = “block”;

</SharePoint:SPSecurityTrimmedControl>

clip_image004

———————————————— Blue Bar (Suit bar)

clip_image005

<SharePoint:SPSecurityTrimmedControl ID=”HideSuiteBar” runat=”server” PermissionsString=”ManageWeb”>

document.getElementById(“suiteBar”).style.display = “block”;

clip_image006

Once edited the Permission, simply save and Publish the MasterPage and test it out. if you have defined permission peroperly to your users, it will work perfectly.

Below are the full list of permission levels suported by the “SecurityTrimControl”

EmptyMask – Has no permissions on the Web site. Not available through the user interface.

ViewListItems – View items in lists, documents in document libraries, and view Web discussion comments.

AddListItems – Add items to lists, add documents to document libraries, and add Web discussion comments.

EditListItems – Edit items in lists, edit documents in document libraries, edit Web discussion comments in documents, and customize Web Part Pages in document libraries.

DeleteListItems – Delete items from a list, documents from a document library, and Web discussion comments in documents.

ApproveItems – Approve a minor version of a list item or document.

OpenItems – View the source of documents with server-side file handlers.
ViewVersions – View past versions of a list item or document.
DeleteVersions – Delete past versions of a list item or document.
CancelCheckout – Discard or check in a document which is checked out to another user.
ManagePersonalViews – Create, change, and delete personal views of lists.
ManageLists – Create and delete lists, add or remove columns in a list, and add or remove public views of a list.

ViewFormPages – View forms, views, and application pages, and enumerate lists.
Open – Allow users to open a Web site, list, or folder to access items inside that container.
ViewPages – View pages in a Web site.

AddAndCustomizePages – Add, change, or delete HTML pages or Web Part Pages, and edit the Web site using a SharePoint Foundation compatible editor.

ApplyThemeAndBorder – Apply a theme or borders to the entire Web site.
ApplyStyleSheets – Apply a style sheet (.css file) to the Web site.
ViewUsageData – View reports on Web site usage.
CreateSSCSite – Create a Web site using Self-Service Site Creation.
ManageSubwebs – Create subsites such as team sites, Meeting Workspace sites, and Document Workspace sites.

CreateGroups – Create a group of users that can be used anywhere within the site collection.

ManagePermissions – Create and change permission levels on the Web site and assign permissions to users and groups.

BrowseDirectories – Enumerate files and folders in a Web site using Microsoft Office SharePoint Designer 2007 and WebDAV interfaces.

BrowseUserInfo – View information about users of the Web site.
AddDelPrivateWebParts – Add or remove personal Web Parts on a Web Part Page.
UpdatePersonalWebParts – Update Web Parts to display personalized information.
ManageWeb – Grant the ability to perform all administration tasks for the Web site as well as manage content. Activate, deactivate, or edit properties of Web site scoped Features through the object model or through the user interface (UI). When granted on the root Web site of a site collection, activate, deactivate, or edit properties of site collection scoped Features through the object model. To browse to the Site Collection Features page and activate or deactivate site collection scoped Features through the UI, you must be a site collection administrator.

UseClientIntegration – Use features that launch client applications; otherwise, users must work on documents locally and upload changes.

UseRemoteAPIs – Use SOAP, WebDAV, or Microsoft Office SharePoint Designer 2007 interfaces to access the Web site.

ManageAlerts – Manage alerts for all users of the Web site.
CreateAlerts – Create e-mail alerts.
EditMyUserInfo – Allows a user to change his or her user information, such as adding a picture.
EnumeratePermissions – Enumerate permissions on the Web site, list, folder, document, or list item.

<

p align=”justify”>FullMask – Has all permissions on the Web site. Not available through the user interface.

Allow Anonymous Users to Contribute in SharePoint Online Lists and Libraries (O365)

It is a Known Thing that you cannot extend permissions to anonymous users for Lists and Libraries in SharePoint online. Basically they won’t be able to contribute in Item Level (List/Library). Was the same in 2010 and yet remains in 2013 as well.

Just like the below figure in my scenario, Anonymous Users are only allowed to View Items from the Top Level and There’s no way to extend the level of Permission for the particular Item.

clip_image001

Breaking Inheritance and trying on Unique Permissions won’t even work here. So Extending Permissions to Anonymous Users in Item Level not feasible for the time being.

The trusted and easiest way to get this done is an WSP available in CodePlex which is a SandBox Solution – http://anonymous365.codeplex.com/ . I used this simply on my SharePoint Online and it really does what I needed.

clip_image002

  1. To get this done, Simply download the above solution and upload it in to solution Gallery of your Site collection. (http://YouSiteName/_catalogs/solutions/Forms/AllItems.aspx)
  2. Activate the Solution.
  3. Create a List or library to Test the solution
  4. Open up the Newly created Library/List and direct to Library/List on the Ribbon.

Pretty Simple as you can see below. Click on Anonymous access button created by the Solution.

clip_image003

That’s’ it and here it is. There will be several options that you can select up on the needs

clip_image004