Welcome to Exchange Team Blog Sign in | Join | Help

Syndication

This Blog

Dev log: Bringing the Exchange 2007 Outlook Web Access calendar view to life...

My name is Jorge Pereira and I am a dev on the Outlook Web Access. I kept a daily log of most of my activities related to the workitem for my own purposes, and wanted to share it to show all of the details that happen behind the scenes to bring a feature to life. In this case, the feature was the calendar view in Exchange Server 2007 OWA. Thought that this might be an interesting read, as it shows how the specific feature developed and evolved over time.

The work done on this feature happened over the period of several months.

To access the full document, please see the attached file. Here is an example of what you will find in the document:

...

Day 13

More cleanups:

  • Finished adding xml docs
  • Fixed namespaces
  • Added functionality to toggle preview pane on/off
  • Reorganized script file
  • Added documentation to all scripts and some major cleanup as well
  • Fixed event text not centered when there's f/b strip
  • Fixed bug in sorting of events and sched area items
  • TODO: Better use of real estate in this case:

  • Fixed bug: XSO bug is causing dates to be returned in local time and calendar data source was checking for intersections using utc
  • Tested mapping algorithms. Seem quite solid.
  • Added margins and improved positioning of event area items. Before I was just dividing the whole area's width by the mapped coordinates. In order to be perfectly accurate, now I use the widths of each day column to compute the X and Width for each item.
    I can also add margins like this:

  • Added some more margin for the last item in the view as per spec.

Day 14

  • I don't think I will get much done today; I have to take care of a lot of other stuff.
  • Noticed that the view takes way longer to resize when looked at from http://jorgeper1/owa than looking at it directly from the calendar url. I wonder if it is resizing the iframe for the mail view even though it is hidden?

Day 15

  • Left and right breaks for events

  • Added margin on top of first event
  • Added inner breaks. These are implemented using a gif that gets absolutely positioned (has a transparency in the middle)

  • Added logic to render text contents of scheduling area items for all scenarios. Quite crafty, this one.

  • It's past 4:30am... I am going home.
    I have most of the logic for rendering the contents of a scheduling item. Tons of special cases... I still need to reduce the size of the code and reorg, but at least the main logic is there. Things are starting to run slowly... will look into this. It's all these rules for the drawing of the contents of the visuals.

...

Again, for full 30 page document that gives you a great overview of this journey, please see the "OWA Calendar View Dev Log.doc" which is attached below!

- Jorge Pereira

Published Monday, December 11, 2006 1:55 PM by Exchange
Filed Under: , , ,
Attachment(s): OWA Calendar View Dev Log.doc

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

 

anthony said:

sweet and nice at the same time
December 11, 2006 5:04 PM
 

Hans Sleurink said:

Great job! I must say, I'm very glad with the new OWA and it's new features. Congrats and keep developing :)
December 11, 2006 5:04 PM
 

Anil Kumar said:

Nice works, pretty impressive
December 11, 2006 7:22 PM
 

Nasir said:

Thats what every good developer do, whats so special in all this. Also, isn't microsoft concerned about your leaking the details of whats done during dev. :)
December 12, 2006 5:27 AM
 

rob t said:

Hey i've got a good one for you!

BUG: OWA only works well with Internet Exploder




December 13, 2006 4:18 PM
 

Jeff said:

Awesome product and so many improvements, but why was the monthly view left out of the OWA Calendar?  I think we are going to go back to 2003 - we live in that monthly view - we need to plan more than 3 or 4 days in advance.  Such a shame how one little thing can ruin such a great product.
February 12, 2007 10:25 PM
 

Amit Zinman Blog » Blog Archive » Programming OWA 2007 said:

July 18, 2007 9:31 AM

What do you think?

(required) 
(optional)
 
Enter the code you see below

(required) 

News

This is provided "AS IS" with no warranties, and confers no rights. Use of included script samples are subject to the terms specified in the Terms of Use.

New! Would you like to suggest a topic for the Exchange team to blog about? Send suggestions to us.

Poll: