Associate Vice Provost, Office of Information Management

4333 Brooklyn Ave. NE (The UW Tower), #O-3 128 | 206-685-5465

Projects

This is a space for some miscellaneous things I'm working on in my spare time. As I have little spare time, there's not much here!

Mozilla Firefox Search Engines

Some handy search engines for the Mozilla Firefox browser I crufted together. Click to install in Firefox. JavaScript must be enabled.

VBScript for Outlook 2007

See here for how to add a VBScript module/code to Outlook 2007

Add UW Holidays

Sub AddUwHolidays()

'Add official State of Washington/UW holidays from
'http://www.washington.edu/admin/hr/holidays/holidays.html
'as "All Day" events with "Out of Office" status

'Version 1.0
'Included all 2009 holidays
'
'Version 2.0
'Includes holidays from 2008-2014 (thanks to Bob Hurt, OIM)
'
'To Do:
'Determine if appointment item already exists and, if so, don't create a new one
'Try using DASL query in urn:schemas:calendar namespace

Dim olCalendar As Outlook.appointmentItem
Dim sch As Outlook.Search
Dim rsts As Outlook.Results

Dim i As Integer
Dim j As Integer

aHolidays = Array("1/1/2008", "1/21/2008", "2/18/2008", "5/26/2008", "7/4/2008", "9/1/2008", "11/11/2008", "11/27/2008", "11/28/2008", "12/25/2008", "1/1/2009", "1/19/2009", "2/16/2009", "5/25/2009", "7/3/2009", "9/7/2009", "11/11/2009", "11/26/2009", "11/27/2009", "12/25/2009", "1/1/2010", "1/18/2010", "2/15/2010", "5/31/2010", "7/5/2010", "9/6/2010", "11/11/2010", "11/25/2010", "11/26/2010", "12/25/2010", "12/31/2010", "1/17/2011", "2/21/2011", "5/30/2011", "7/4/2011", "9/5/2011", "11/11/2011", "11/24/2011", "11/25/2011", "12/26/2011", "1/2/2012", "1/16/2012", "2/20/2012", "5/28/2012", "7/4/2012", "9/3/2012", "11/12/2012", "11/22/2012", "11/23/2012", "12/25/2012", "1/1/2013", "1/21/2013", "2/18/2013", "5/27/2013", "7/4/2013", "9/2/2013", "11/11/2013", "11/28/2013", "11/29/2013", "12/25/2013", "1/1/2014", "1/20/2014", "2/17/2014", "5/26/2014", "7/4/2014", "9/1/2014", "11/11/2014", "11/27/2014", "11/28/2014", "12/25/2014")
aHolidayNames = Array("New Year's Day", "Martin Luther King Day", "Presidents Day", "Memorial Day", "Independence Day", "Labor Day", "Veteran's Day", "Thanksgiving", "Day after Thanksgiving", "Christmas Day")

For i = 0 To UBound(aHolidays)
    Set olCalendar = Application.CreateItem(olAppointmentItem)
    olCalendar.Start = aHolidays(i)
    olCalendar.Subject = aHolidayNames(j)
    olCalendar.Location = "UW Holiday"
    olCalendar.BusyStatus = olOutOfOffice
    olCalendar.ReminderSet = False
    olCalendar.AllDayEvent = True
    olCalendar.Save
    j = j + 1
    If j = 10 Then j = 0
Next

Set olCalendar = Nothing

End Sub
Download .bas file (in Zip archive)

Add UW 2009 Pay Days

Sub AddUwPayDays()

'Add 2009 UW pay days from
'http://www.washington.edu/admin/payroll/payday2009.html
'as "All Day" events with "Free" status

'Version 1.0
'2009/10/06
'Included all 2009 pay days
'by Jim Loter

Dim olCalendar As Outlook.appointmentItem
Dim sch As Outlook.Search
Dim rsts As Outlook.Results

Dim i As Integer

aPayDays = Array("1/9/2009", "1/26/2009", "2/10/2009", "2/25/2009", "3/10/2009", "3/25/2009", "4/10/2009", "4/24/2009", "5/11/2009", "5/22/2009", "6/10/2009", "6/25/2009", "7/10/2009", "7/24/2009", "8/10/2009", "8/25/2009", "9/10/2009", "9/25/2009", "10/9/2009", "10/26/2009", "11/10/2009", "11/25/2009", "12/10/2009", "12/24/2009")

For i = 0 To UBound(aPayDays)
    Set olCalendar = Application.CreateItem(olAppointmentItem)
    olCalendar.Start = aPayDays(i)
    olCalendar.Subject = "Pay Day"
    olCalendar.Location = ""
    olCalendar.BusyStatus = olFree
    olCalendar.ReminderSet = False
    olCalendar.AllDayEvent = True
    olCalendar.Save
Next

Set olCalendar = Nothing

End Sub
Download .bas file (in Zip archive)