Monday, May 16, 2011

SharePoint 2010 MySite in detail

In generalThe SharePoint 2010 MySite has changed in major points to the one in SharePoint 2007. The most striking renewals are probably the tagging und activity features. The user can now tag, comment and rate his sites and documents.

Since SharePoint 2010 has no longer a Shared Service Provider the MySite is now bound to the Profile Service. This means that the profile service must be running and configured before you can create a MySite.

The MySite uses a special master page, the "mysite.master", which is activated by the feature MySiteLayouts and uploaded to the master page gallery of the MySite sitecollection. It's relatively easy to change and switch the masterpage either by hand or by feature. The sitecollection administrator can upload a masterpage to the masterpage gallery and easily switch the master.

The good news for the frontend engineer is that the new mysite.master consists mostly of div layouts, so it
is easier to style by css. But in generally it is more difficult to change the layouts than the masterpage. This is because the mysite is a team site and has no publishing features. But you can easily change that by activating
the publishing features by hand.

The easiest way to style the mysite is propably by using themes. The sitecollection admin can create his own themes or use the existing ones.

Structure
The MySite has public and private spheres. The public pages use a different site template as the personal pages


Public : SPSMSITEHOST (My Site Host)
Private : SPSPERS (SharePoint Portal Server Personal Space)

Once you click on "My Site" within the Site Actions menu, it leads to the public area, to the default.aspx MySite site collection.





Public areas have the same view for each user and can not be personalized. All users from the ProfilDB have access to this area and only the site collection administrators can customize these pages and web parts.

The public area includes the following page:
default.aspx
discusssion.aspx
person.aspx
OrganizationView.aspx
personcontent.aspx
tagprofile.aspx

The HTML structure of these pages cannot be modified by deployment. The layout of these pages can be adjusted only with CSS, Themes or SharePoint Designer.

Clicking on "My Profile" (Site Actions Menu) leads to the public profile page. This page displays the profile information of the selected users. If the user wants to see his own profile, he has the rights to change the stored profile information. The changes are written back to the Profile-DB. If a synchronization is configured with an AD the information could also be written back to the AD.

By clicking on "My Content" in the MySIte global navigation the user enters his private area. His personal site is a site within the MySite sitecollection. If it does not exist it is created the first time. A user can create lists, modifiy content and add webparts to his personal page. It is used as a private storage of documents and information.

A private site has the url http://mysite.com/personal/mkaplan. "Personal" ist the managed path of the sitecollection and "mkaplan" the accountname and the sitecollection.

Looking at the global navigation, you'll realize that the MySite is logically divided into 3 parts. These are:


My NewsFeed: Area for actual news from colleagues
My Content: Area for personal data
My Profile: Area with profile information of the MySite users

The following sections will describe these parts.

Lists on MySiteHost
The root site has following lists predefined:

List Name Description
Customized Reports For Web Analytics
Form Templates Contains the form templates
Style Library For custom stylessheets
Organization Photos Organization logos
User Photos Profile pictures

Personalization Sites
You can also use personalized sites witin the public areas of the MySite. This requires to create a new site using the "Personalization Site" template.


Personalization site template

"Personalization Sites" use the "Current User Filter" webpart, which can be connected with other webparts to display personalized data.

When you create a "Personalization Site" in the MySite the site will appear within the global navigation of the MySite as an extra entry, which is available for all users. A "Personalzation Site" contains 4 webpart zones: 1 on the top, 1 at the bottom and 2 in the middle.


A personalization site

Personalization Links in the global navigation
"Personalization Links" can be created to show entries in the global navigation for a specific audience. These types of links must be created in the "Profile Service Properties" und "Configure Personalization Site".



--------------------------------------------------------------------------------

Site Definitions within the MySite


1. SPSMYSITEHOST

The SPSMYSITEHOST Teamsite Sitedefinition is used for all public sites within the MySite. It activates following features:

Site Features:

"My Site Host" in FEATURES\MySiteHost\Feature.xml.
"My Site Layouts" in FEATURES\MySiteLayouts\feature.xml.
Web Features:

"My Site Navigation" in FEATURES\MySiteNavigation\Feature.xml.
"Shared Picture Library for Organizations logos" in FEATURES\MySiteHostPictureLibrary\Feature.xml.
"Team Collaboration Lists" in \FEATURES\TeamCollab\feature.xml.
Modules: (deployed files)

blog.xsl : Is used by the blog webpart
tagprofile.aspx
person.aspx
default.aspx
discussion.aspx
OrganizationView.aspx
personcontent.aspx

2. SPSPERS
This Sitedefinition is used by the private sites on the MySite and activates the following features:

Adds following items to the Quicklaunch menu:

Documents
Pictures
Libraries
Site Features:

My Site Layouts: Deploys mysite master and pages
Base WebPart Feature
Web Features:

‘Personalization Site’ in FEATURES\PersonalizationSite\feature.xml.
‘My Site Navigation’ in FEATURES\MySiteNavigation\Feature.xml.
‘Team Collaboration Lists’ in FEATURES\TeamCollab\feature.xml.
Modules:

public.aspx: Contains a redirect webpart
default.aspx
WebParts :

none
Lists:

Personal Documents
My Documents
My Pictures


--------------------------------------------------------------------------------

Globally used elements


MySite Header

The MySite Header consists of different items: (Color corresponds to the item in image)


Page Title / Icon : A simple HTML element
Global Navigation: The navigation of the MySite is editable by the site owner in the "Site Settings", "Top Link Bar".
Searchbox: The Searchbox is a SharePoint PeopleSearchEx Control and has properties to change the search icon, scope dropdown, frametyp or the search options.
HelpButton: A simple HTML element
MySite Menu: Can optically only be changed by styles. Menu items can be changed by feature.



MySite Header

The MySite-Header is found on every site within the MySite, in public as well as in private sites. It is bound as a Delegate Control into the mysite.master und can be found as a ascx Control in the 14\ControlTemplates folder. The name of the file is "MySiteTopNavigation". Delegate Controls in SharePoint have the ability to be easily overriden by custom controls. This means that the header of a mysite could be customized with a custom ascx control and a feature.


Business Card
Some of the public pages contain a larger area with profile informations about the user, that is called the "Business Card“. Users can see profile informations about other users and can also enter or change personal status information, like in Twitter or Facebook. There are also standard texts for the status information, which can be choosen by a dropdown. If you examine your own "Business Card" you'll find also a link under the profile picture to edit the own profile informations.


MySite Business Card

The "Business Card" is not a Control itself but a combination of HTML tables and profile informations. The profile informations are read by special profile property controls, like the departement field:





This means that each page containing the "Business Card" must have the same HTML code. If someone changes the layout of the Business Card with Sharepoint Designer, he must change it on every site that contains the "Business Card" to have a consistent layout.


Quicklaunch
You'll find the "Quicklaunch Navigation" directly under the "Business Card". It is embedded to the page (not master) as an ASP:Menu Control and renders an unordered list as HTML Code and styled by css to look like that:


MySite Quicklaunch

The menu navigation points can be changed within the "Site Properties" by clicking the "Quicklaunch" link under "Look and Feel". Each of the default navigation items is linked to a different aspx page:

"Overview" is linked with person.aspx.
"Organization" is linked with organizationview.aspx.
"Content" is linked with auf personcontent.aspx.
"Tags and Notes" is linked with _layouts/thoughts.aspx.
"Colleagues" is linked with _layouts/MyContactLinks.aspx.
"Memberships" is linked with _layouts/MyMemberships.aspx.
The first 3 pages are delivered with the MySite Feature whereas the last 3 are pages in the layouts folder. All these page are not really personalized. Therefore there need a parameter in the url to display custom content.


--------------------------------------------------------------------------------

Detailed inspection of MySite pages

My Newsfeed - Default.aspx

The newsfeed (or activity feed) is a new feature in SharePoint 2010. This feature corresponds to the concept of news streams in facebook. It shows the latest activities of colleagues such as new tag, changed profile information or new blog posts. The page uses the "ConsolidatedNewsFeedWebPart" to show the information.

The activity feed

Tagprofile.aspx


The tagprofile.aspx page shows information about a tag. The page is displayed when you open the "Tags & Notes" site in the quicklaunch menu and then click a tag in this site. The page contains following webparts:

"TagInformationWebPart" - Shows information about a tag.
"TaggedUrlListWebPart" - Shows tagged items.
"TaggedPeopleListWebPart" - Shows people that follow a tag
"SocialCommentWebPart" - Provides a note board

Tag information site

My Profile - Person.aspx

You get to the person.aspx when you click "My Profile" in the quicklaunch menu. This page provides an overview of general information and activities of a user.

The upper area of the site contains the "Business Card" and the "Quicklaunch Navigation". They are followed by the page content. The page layout has 4 webpart zones, like in the personal sites. The page has 1 zone in the upper, 2 in the middle and 1 at the bottom area to guarantee a flexible layout. To be flexible with webpart content, the webpart zones are located within a table layout. It is difficult to make cross browser flexible layouts only with divs.

The page contains 5 predefined webparts:


Ask Me About : Reads the "Ask Me About" field from the profile und displays it as a list. Informs other user about the skills of the selected user.
Recent Activities : Shows the recent activities of the current users, like the colleagues he added or a post he published.
Note Board : A textbox to post a comment.
Organigramm : Show the organizational structure and your position therein.
In Common With You : Shows common memberships and colleagues with other users.

No comments: