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

Context:

  • We are trying to do Event Management module to be part of SharePoint multilingual publishing website by capitalizing on the capabilities of SharePoint calendar.
  • The event as a business entity has a lot of fields other than the default SharePoint event and those additional fields have some business logic behind them.
  • The user can edit specific occurrence of the event or edit the whole series.
  • Event have related business entities like attendees, volunteers, donors
  • The project is a SharePoint development using VS2010 so we can move the site from testing to staging then to production easily.

Proposed Solutions:

  • Create content type called “activity” inherits from SharePoint “Event” content type
  • Create list instance called “activities” using SharePoint calendar template.
  • Add the activity content type to the SharePoint calendar
  • Create custom create event page
    1. Our first approach was to have application page which have it is own controls and one of the controls is the recurrence data control but we wasn’t able to figure out how to use that control
    2. Second approach was to have application page where we have our own UI controls then we generate XML to be saved inside recurrence field but we wasn’t able to find documentation for that field.
    3. Third approach
      • Build custom new form through SharePoint designer then import this into visual studio SharePoint project as a module
      • Create class that inherits from web part page
      • Bind the imported new form page to use the class created in the previous step
      • Issue with this approach is that we can’t access the controls inside the page to do custom logic based on selected values i.e when user select value inside dropdownlist this will show and hide some other sections inside the page

Questions

  • We are questioning our approach . Is using SharePoint calendar and extending on it is the right way to implement such requirements ?
  • If yes what is the right approach to have a page where we can control the UI of that page as well as having the flexibility to bind that page to a class (code behind file) so we can implement custom business logic on fields ?
share|improve this question
    
A very well written and clear question, btw. –  Robert Kaucher Apr 11 '12 at 1:45
    
Thanks robert :) –  Hossam El-Deen Apr 11 '12 at 12:00
add comment

1 Answer

I think your choice of extending the SharePoint Calendar is a good choice because you can give people the choice of opening the calendar in Outlook. Although I am not certain how the custom fields might be integrated with that.

If I were doing this, I would write the UI in Silverlight. For a basic intro to this with Telerik's calendar control Sahil Malik has a great video. Using Silverlight would allow you to use custom objects and give users a very rich experience. Depending on the complexity or the project I might consider a custom WCF service as well. The Client Object Model can be great, but it can also be kind of cumbersome.

share|improve this answer
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.