Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

Looking for a way to prompt every user to accept a "Terms of Use Agreement" on the first visit to their My Site. currently thinking of several approaches and looking for some feedback and other ideas.

  1. Add a control to the master page that handles prompting the user to accept the Terms of Use Agreement and storing a flag in the property bag once they've accepted.

  2. HTTP Module for the My Site Web Applicatoin that handles checking/setting a flag in the property bag once the user accepts.

Thoughts? Suggestions?

share|improve this question
add comment

1 Answer 1

up vote 10 down vote accepted

Been there, done that a couple of years ago ;-)

Instead of messing with a masterpage (which you'd need to apply to each MySite because they are separate site collections) or HTTP module I'd recommend the approach outlined here http://sharepointmagazine.net/articles/custom-page-security-using-sharepoint-delegate-controls with a DelegateControl. Just staple the feature to the MySite site definition and you're done.

Also storing the approval flag could be done in a custom user profile property (that's how we did it) instead of the SPWeb properties. That would make it easy for an Admin to toggle it without custom code.

share|improve this answer
1  
That is indeed, a very nice solution! Was about to post an answer and vote for option 1, but this is much better, imho. I am not too much of a fan of a custom module, it gets called very every request. The custom user profile was part of my solution, too. It's better too, if you want to analyze who didn't accept or yet have to accept the terms of use agreement. –  Bas Lijten Jul 14 '11 at 16:24
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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