Website Notes

I’d like to point out some of the features of the U-M Seattle Club website, at umseattle.org.

Technology

The site was created using Drupal 7 core, along with a few commonly used contributed modules. Nothing here required any custom programming by anyone in the Seattle club. All software used is open source and free to everyone to use. The site relies heavily on use of the Drupal Views module.

Look and Feel

We use the Professional Theme, which is a fully responsive theme – the appearance automatically adjusts for easy viewing on whatever device you are using, whether it’s your phone, your tablet, or your personal computer.

We’ve configured this to use three columns, with upcoming events on the left, and club news on the right, and with page content in the middle. We show the next five upcoming club events on every page, as well as the three most recent news items.

Note that the Block ‘M’ appears on every page, but only appears once.

Of course, every page also includes a statement that we are an affiliate of the Alumni Association of the University of Michigan, with a link to the AAUM site.

Custom Domain Name

It’s nice to be able to refer people to umseattle.org, without having to send them through the club finder on the AAUM site every time they want to see what’s going on with the club. This domain name, plus umseattle.com, is maintained at Hover.

Another advantage of having a custom domain name is that we are able to assign email addresses, such as ‘herb@umseattle.org’, to board and committee members and friends, as well as special group email addresses, such as ‘board@umseattle.org’, that forward to the appropriate parties, and at the same time serve to conceal more permanent email addresses from potential spammers.

Transparency

All of our club business is conducted out in the open, on our website, and any interested party can see everything we’re doing, and have done. Logging in to the site is required to make updates, or to leave comments, but is not required to gain visibility to any of the info on the site.

Content Types

Drupal allows us to define different types of content to appear on the site. (In general, each piece of content can be equated to one page on the site.)

  • Article – Used for news items coming from the club. For example, we used an article content type to advertise the availability of our club t-shirts. Articles appear in our News feed at the appropriate stages of their lifecycle, but do not appear on our calendar.

  • Basic Page – This is used for static content, such as the club’s bylaws. Basic pages never appear in our news feed, or on our calendar. They are generally accessible through menus, or links on other pages.

  • Blog Entry – Used for opinion pieces that come from a particular person, and not necessarily from the club as a whole. Blog entries appear in our news feed at the appropriate stages of their lifecycle, but do not appear on our calendar.

  • Board Activity – Used to track information of interest to the board but not of general interest to most of our local alums. These items never appear on our calendar or in our news feed, but only in board reports.

  • Event – Used for club events, including board meetings.

  • Finance – Used to track all planned and actual financial transactions.

Stage

This is a field used on most of the different content types (except for Basic Page and Finance). It is used to indicate the progress of an item through a normal lifecycle, and is used to filter various reports and feeds on the site to show only items of interest to a particular audience for a particular purpose. This field is also used to sort items into a logical sequence, for use in board meeting agendas. Note that items are sorted in descending numerical sequence (oldest items first) in order to construct our board meeting agenda.

Here is the full list of different stages. In general, a piece of content will move down through this list over its lifecycle (although not every item will stop at every stage).

  1. Future – Items too far out in the future to be discussed at this time.
  2. Close Meeting – Items discussed at the close of a board meeting, such as the date and time and place of our next meeting.
  3. Planning – Items being considered by the board, but not yet firm enough to promote to local alums.
  4. Promoted – These are items we are promoting to local alums, but somewhat passively – these items are included in our news feed on the site, but not included in our weekly e-mails to alums.
  5. News – These are items that will appear in news feeds, and on our club calendar (if they are events), and in our weekly e-mails to alums.
  6. Featured – This is used to identify an item to be featured at the top our weekly e-mail. These also appear in our news feeds, and on our club calendar (if they are events).
  7. Recently Completed – Events that have already been held, but whose results are still being reviewed and discussed by the Board.
  8. Board Topics – An item for discussion by the board, but that doesn’t fit anywhere else in this lifecycle.
  9. Open Meeting – Items discussed at the beginning of a meeting, such as attendance.
  10. Reference – Items still held on the site for Reference purposes, but no longer being promoted.
  11. Hold for Later – Items not currently being considered or promoted, but that will be promoted in our weekly e-mails again at some point in the future.
  12. Member Archive – Completed items of interest to alums, but that are no longer being actively discussed by the Board.
  13. Board Archive – Completed items only of interest to the board, but that are no longer being actively discussed.
  14. Canceled – Items that were canceled, and never held.

Operating Year

Most content types (again, except for Basic Pages) are also assigned an Operating Year, so that our welcome event for this year, for example, can be distinguished from the one we will hold next year.

Search Engine Friendly URLs

URLs for pages are composed of the page title, plus one or two optional fields, for everything except Basic Pages.

  • The Operating Year is appended, in an abbreviated form.
  • The word “board” is appended to Board Activity pages, to distinguish them from their companion event/article pages. The word “finance” is appended to Finance pages, to distinguish them from Event and Board Activity pages that might otherwise have the same name.

Locations and Directions

We use the Drupal Location module to allow us to enter one or more locations for each Event. Through use of this module, we can easily provide a link to Google Maps for each location that will show people exactly where the event is to be held. We also provide a link to Google Maps in our E-News.

Markdown

We use Markdown for all of the text on our website, because just about anyone can learn it in less than 30 minutes, and because it can be easily converted to HTML for use on the website or in our weekly e-news. No one in the club needs to read or write HTML, and we discourage the use of MS-Word. We use the Drupal modules Markdown filter and Typogrify to convert from Markdown to HTML on the website.

Attachments

Most content types allow for multiple attachments, and we try to attach everything somewhere, except for documents containing personal information about attendees and alums.

Calendars

Our club calendar shows all items being actively promoted, as well as completed items. Users can scroll forward, month-by-month, to see upcoming events. An iCal button at the bottom of the page allows anyone to add our club calendar to their personal calendar, so that all club events will show up there as well.

We also have a Board Planning Calendar that shows all of the events on the club calendar, plus other events that are in the Planning stage.

We use the Drupal Calendar module to create these.

Board Reports

The Board section of our site contains reports primarily of interest to Board members. These are all created through use of Custom Views, which can be done in Drupal without having to do any programming.

  • Agenda – This page shows all items to be considered by the Board at its next meeting. Items are initially sorted in descending sequence by Stage, but a Priority field is available, and the list can be sorted by Priority just by clicking on the column heading. Appending ‘.csv’ to the URL for this page will result in a file being downloaded that can be opened in Excel, if desired.

  • Archives – Shows all past and canceled items, as well as current items.

  • E-News – This shows items to be included in our next E-Mail mailing to local alums. Appending ‘.csv’ to the URL for this page will result in a file being downloaded that can be used to generate the HTML to be used in Lyris for the actual e-mail to be sent. We use PSTextMerge, along with the attached template, to generate this HTML. The output HTML is complete, and uses a responsive design so that the e-mails can be easily read on a phone, a tablet, or a personal computer.

  • Finance Register – This page shows all planned and actual financial transactions for the club. We use the EAC (Estimate at Complete) field to show our best guess as to the final net impact on our finances. Summary totals are provided at the top of the page. The total EAC gives us a constant, rolling number that reflects our best guess as to how much money we will have left when all known plans and commitments have been satisfied. The most recent items appear at the top. The total of the Actual Amount field should match our bank balance.

  • Finance by Group – This page shows total numbers by Group (aka financial category) for the current Operating Year.

  • Finance Detail by Group – This page shows all transactions sorted by Group (aka financial category).

  • Finances by Date – This page shows the same finance information, but is sorted by the last update date for each item, so items updated recently will show at the top of the list.

  • Notes – The Board Notes field is used to capture Board Meeting minutes, as well as other notes pertaining to board activities, but not needing to be shown to local alums. The most recently updated items show at the top of the list. We use Markdown level 4 headings within this field to indicate the source of any particular set of notes (such as the date of the board meeting). This list can effectively be used to replace separate sets of meeting minutes.

  • Planning Calendar – As discussed above, this shows all of the events on the club calendar, plus other events that are in the Planning stage.

Write Once, Use Everywhere

The site is designed so that all of the information needed by any party is available from one set of club records that are stored centrally on the web and available to anyone who might be interested.

Additionally, the content types and fields are designed to minimize the need for copying and pasting information from one place to another. This means that we minimize the risk of information loss or degradation, and also minimize the labor needed by board members to conduct our club business.

Hosting

We run our site on Little Oak hosting, but nearly any hosting company that supports Linux, PHP and MySQL can be used.

Backups

The entire site is backed up periodically to NodeSquirrel, using the Drupal Backup and Migrate module.