[Bedework-commit] bedework r1716 - in trunk/deployment:
webpublic/webapp/resources/demoskins/MainCampus/default/PDA
webpublic/webapp/resources/demoskins/MainCampus/default/default
webpublic/webapp/resources/demoskins/SoEDepartmental/default
webpublic/webapp/resources/demoskins/SoEDepartmental/default/default
webuser/webapp/resources/demoskins/default/default
svnadmin at bedework.org
svnadmin at bedework.org
Fri Jan 25 17:26:14 EST 2008
Author: johnsa
Date: 2008-01-25 17:26:13 -0500 (Fri, 25 Jan 2008)
New Revision: 1716
Added:
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss-list.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss-list.xsl
trunk/deployment/webuser/webapp/resources/demoskins/default/default/rss-list.xsl
Removed:
trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/PDA/
Modified:
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/default.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/pda.css
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/blue.css
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/default.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/green.css
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/red.css
trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/default.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss.xsl
trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/soe.css
trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl
Log:
user clients:
- RSS feeds now use listEvent action to return discrete
events for an arbitrary number of days (3 in the
default stylesheets); rss.xsl is deprecated in favor
of rss-list.xsl
- RSS switched to UTC
- updated the mobile web skin to be more usable and added
it to the list of example skins
- some general cleanup
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/default.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/default.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/default.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -1,717 +1,704 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-<xsl:output method="xhtml"
- indent="yes"
- media-type="text/html"
- doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
- doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
- standalone="yes"
- omit-xml-declaration="yes"/>
-
- <!-- ================ -->
- <!-- PDA STYLESHEET -->
- <!-- ================ -->
- <!-- URL of resources common to all bedework apps (javascript, images) -->
- <xsl:variable name="resourceCommons">http://www.rpi.edu/dept/cct/apps/rpi-bedework-3-3/bedework-common</xsl:variable>
-
- <!-- DEFINE INCLUDES -->
- <!-- cannot use the resourceCommons variable in xsl:include paths -->
- <xsl:include href="../../../bedework-common/default/default/errors.xsl"/>
- <xsl:include href="../../../bedework-common/default/default/messages.xsl"/>
-
- <!-- DEFINE GLOBAL CONSTANTS -->
-
- <!-- URL of the XSL template directory -->
- <!-- The approot is an appropriate place to put
- included stylesheets and xml fragments. These are generally
- referenced relatively (like errors.xsl and messages.xsl above);
- this variable is here for your convenience if you choose to
- reference it explicitly. It is not used in this stylesheet, however,
- and can be safely removed if you so choose. -->
- <xsl:variable name="appRoot" select="/bedework/approot"/>
-
- <!-- URL of html resources (images, css, other html); by default this is
- set to the application root -->
- <xsl:variable name="resourcesRoot" select="/bedework/approot"/>
-
- <!-- Properly encoded prefixes to the application actions; use these to build
- urls; allows the application to be used without cookies or within a portal.
- These urls are rewritten in header.jsp and simply passed through for use
- here. Every url includes a query string (either ?b=de or a real query
- string) so that all links constructed in this stylesheet may begin the
- query string with an ampersand. -->
- <xsl:variable name="setup" select="/bedework/urlPrefixes/setup"/>
- <xsl:variable name="setSelection" select="/bedework/urlPrefixes/main/setSelection"/>
- <xsl:variable name="fetchPublicCalendars" select="/bedework/urlPrefixes/calendar/fetchPublicCalendars"/>
- <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
- <xsl:variable name="eventView" select="/bedework/urlPrefixes/event/eventView"/>
- <xsl:variable name="addEventRef" select="/bedework/urlPrefixes/event/addEventRef"/>
- <xsl:variable name="export" select="/bedework/urlPrefixes/misc/export/a/@href"/>
- <xsl:variable name="search" select="/bedework/urlPrefixes/search/search"/>
- <xsl:variable name="search-next" select="/bedework/urlPrefixes/search/next"/>
- <xsl:variable name="mailEvent" select="/bedework/urlPrefixes/mail/mailEvent"/>
- <xsl:variable name="showPage" select="/bedework/urlPrefixes/main/showPage"/>
- <xsl:variable name="stats" select="/bedework/urlPrefixes/stats/stats"/>
-
- <!-- URL of the web application - includes web context -->
- <xsl:variable name="urlPrefix" select="/bedework/urlprefix"/>
-
- <!-- Other generally useful global variables -->
- <xsl:variable name="privateCal">/ucal</xsl:variable>
- <xsl:variable name="prevdate" select="/bedework/previousdate"/>
- <xsl:variable name="nextdate" select="/bedework/nextdate"/>
- <xsl:variable name="curdate" select="/bedework/currentdate/date"/>
-
-
- <!-- MAIN TEMPLATE -->
- <xsl:template match="/">
- <html lang="en">
- <head>
- <title>RPI Calendar of Events</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
- <link rel="stylesheet" href="{$resourcesRoot}/default/PDA/pda.css"/>
- </head>
- <body>
- <div id="titleBar">
- Rensselaer Events Calendar
- <span id="homeLink">
- [<a href="http://www.rpi.edu/pda/index.html">rpi-pda</a>]
- </span>
- </div>
- <xsl:call-template name="infoAndNavigation"/>
- <xsl:choose>
- <xsl:when test="/bedework/page='event'">
- <!-- show an event -->
- <xsl:apply-templates select="/bedework/event"/>
- </xsl:when>
- <xsl:when test="/bedework/page='calendarList'">
- <!-- show a list of all calendars -->
- <xsl:apply-templates select="/bedework/calendars"/>
- </xsl:when>
- <xsl:otherwise>
- <!-- otherwise, show the eventsCalendar -->
- <!-- main eventCalendar content -->
- <xsl:call-template name="listView"/>
- </xsl:otherwise>
- </xsl:choose>
- <!-- footer -->
- <p id="footer">
- <br/><br/><!-- why, you ask? ...blackberry -->
- <a href="{$setup}&browserTypeSticky=PDA">Events Calendar</a> |
- <a href="http://www.rpi.edu/pda">Portable Rensselaer</a><br/>
- <small>Maintained by C&MT, DotCIO, Rensselaer Polytechnic Institute</small>
- </p>
- </body>
- </html>
- </xsl:template>
-
- <!-- === Date Info and Navigation == -->
- <xsl:template name="infoAndNavigation">
- <div id="dateInfo">
- <xsl:if test="/bedework/page!='calendars' and /bedework/page!='event'">
- <<a href="{$setViewPeriod}&date={$prevdate}">prev</a>
- <xsl:text> </xsl:text>
- <strong>
- <xsl:choose>
- <xsl:when test="/bedework/periodname='Day'">
- <xsl:value-of select="substring(/bedework/eventscalendar/year/month/week/day/name,1,3)"/>, <xsl:value-of select="/bedework/eventscalendar/year/month/shortname"/> <xsl:value-of select="/bedework/eventscalendar/year/month/week/day/value"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
- </xsl:when>
- <xsl:when test="/bedework/periodname='Week' or /bedework/periodname=''">
- Week of <xsl:value-of select="/bedework/eventscalendar/year/month/shortname"/> <xsl:value-of select="/bedework/eventscalendar/year/month/week/day/value"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
- </xsl:when>
- <xsl:when test="/bedework/periodname='Month'">
- <xsl:value-of select="/bedework/eventscalendar/year/month/longname"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="/bedework/eventscalendar/year/value"/>
- </xsl:otherwise>
- </xsl:choose>
- </strong>
- <xsl:text> </xsl:text>
- <a href="{$setViewPeriod}&date={$nextdate}">next</a>>
- <br />
- </xsl:if>
- </div>
- <div id="mainNav">
- <xsl:choose>
- <xsl:when test="/bedework/page='eventscalendar'">
- <xsl:choose>
- <xsl:when test="/bedework/periodname='Day'">
- day
- </xsl:when>
- <xsl:otherwise>
- <a href="{$setViewPeriod}&viewType=dayView&date={$curdate}">day</a>
- </xsl:otherwise>
- </xsl:choose> |
- <xsl:choose>
- <xsl:when test="/bedework/periodname='Week' or /bedework/periodname=''">
- week
- </xsl:when>
- <xsl:otherwise>
- <a href="{$setViewPeriod}&viewType=weekView&date={$curdate}">week</a>
- </xsl:otherwise>
- </xsl:choose> |
- <xsl:choose>
- <xsl:when test="/bedework/periodname='Month'">
- month
- </xsl:when>
- <xsl:otherwise>
- <a href="{$setViewPeriod}&viewType=monthView&date={$curdate}">month</a>
- </xsl:otherwise>
- </xsl:choose> |
- </xsl:when>
- <xsl:otherwise>
- <a href="{$setViewPeriod}&viewType=dayView&date={$curdate}">day</a> |
- <a href="{$setViewPeriod}&viewType=weekView&date={$curdate}">week</a> |
- <a href="{$setViewPeriod}&viewType=monthView&date={$curdate}">month</a> |
- </xsl:otherwise>
- </xsl:choose>
- <a href="{$setViewPeriod}&viewType=todayView&date={$curdate}">
- today
- </a><br />
- <xsl:choose>
- <xsl:when test="/bedework/selectionState/selectionType = 'calendar'">
- Calendar: <xsl:value-of select="/bedework/selectionState/subscriptions/subscription/calendar/name"/>
- <span class="link">[<a href="{$setSelection}">default view</a>]</span>
- </xsl:when>
- <xsl:when test="/bedework/selectionState/selectionType = 'search'">
- Current search: <xsl:value-of select="/bedework/search"/>
- <span class="link">[<a href="{$setSelection}">default view</a>]</span>
- </xsl:when>
- <xsl:when test="/bedework/selectionState/selectionType = 'subscription'">
- Subscription: (not implemented yet)
- <span class="link">[<a href="{$setSelection}">default view</a>]</span>
- </xsl:when>
- <xsl:when test="/bedework/selectionState/selectionType = 'filter'">
- Filter: (not implemented yet)
- <span class="link">[<a href="{$setSelection}">default view</a>]</span>
- </xsl:when>
- <xsl:otherwise><!-- view -->
- <!--<form name="selectViewForm" method="post" action="{$setSelection}">
- View:
- <select name="viewName" onChange="submit()" >
- <xsl:for-each select="/bedework/views/view">
- <xsl:variable name="name" select="name"/>
- <xsl:choose>
- <xsl:when test="name=/bedework/selectionState/view/name">
- <option value="{$name}" selected="selected"><xsl:value-of select="name"/></option>
- </xsl:when>
- <xsl:otherwise>
- <option value="{$name}"><xsl:value-of select="name"/></option>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:for-each>
- </select>
- </form>-->
- <span class="calLinks"><a href="{$fetchPublicCalendars}">available calendars</a></span>
- </xsl:otherwise>
- </xsl:choose>
- </div><br/><br/>
- </xsl:template>
-
- <!--==== SINGLE EVENT ====-->
- <xsl:template match="event">
- <xsl:variable name="subscriptionId" select="subscription/id"/>
- <xsl:variable name="calPath" select="calendar/encodedPath"/>
- <xsl:variable name="guid" select="guid"/>
- <xsl:variable name="recurrenceId" select="recurrenceId"/>
- <xsl:variable name="statusClass">
- <xsl:choose>
- <xsl:when test="status='CANCELLED'">bwStatusCancelled</xsl:when>
- <xsl:when test="status='TENTATIVE'">bwStatusTentative</xsl:when>
- <xsl:otherwise>bwStatusConfirmed</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <h2 class="{$statusClass}">
- <xsl:if test="status='CANCELLED'">CANCELLED: </xsl:if>
- <xsl:choose>
- <xsl:when test="link != ''">
- <xsl:variable name="link" select="link"/>
- <a href="{$link}">
- <xsl:value-of select="summary"/>
- </a>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="summary"/>
- </xsl:otherwise>
- </xsl:choose>
- </h2>
- <table id="eventTable" cellpadding="0" cellspacing="0">
- <tr>
- <td class="fieldname">When:</td>
- <td class="fieldval">
- <!-- always display local time -->
- <xsl:value-of select="start/dayname"/>, <xsl:value-of select="start/longdate"/><xsl:text> </xsl:text>
- <xsl:if test="start/allday = 'false'">
- <span class="time"><xsl:value-of select="start/time"/></span>
- </xsl:if>
- <xsl:if test="(end/longdate != start/longdate) or
- ((end/longdate = start/longdate) and (end/time != start/time))"> - </xsl:if>
- <xsl:if test="end/longdate != start/longdate">
- <xsl:value-of select="substring(end/dayname,1,3)"/>, <xsl:value-of select="end/longdate"/><xsl:text> </xsl:text>
- </xsl:if>
- <xsl:choose>
- <xsl:when test="start/allday = 'true'">
- <span class="time"><em>(all day)</em></span>
- </xsl:when>
- <xsl:when test="end/longdate != start/longdate">
- <span class="time"><xsl:value-of select="end/time"/></span>
- </xsl:when>
- <xsl:when test="end/time != start/time">
- <span class="time"><xsl:value-of select="end/time"/></span>
- </xsl:when>
- </xsl:choose>
- <!-- if timezones are not local, or if floating add labels: -->
- <xsl:if test="start/timezone/islocal = 'false' or end/timezone/islocal = 'false'">
- <xsl:text> </xsl:text>
- --
- <strong>
- <xsl:choose>
- <xsl:when test="start/floating = 'true'">
- Floating time
- </xsl:when>
- <xsl:otherwise>
- Local time
- </xsl:otherwise>
- </xsl:choose>
- </strong>
- <br/>
- </xsl:if>
- <!-- display in timezone if not local or floating time) -->
- <xsl:if test="(start/timezone/islocal = 'false' or end/timezone/islocal = 'false') and start/floating = 'false'">
- <xsl:choose>
- <xsl:when test="start/timezone/id != end/timezone/id">
- <!-- need to display both timezones if they differ from start to end -->
- <table border="0" cellspacing="0" id="tztable">
- <tr>
- <td>
- <strong>Start:</strong>
- </td>
- <td>
- <xsl:choose>
- <xsl:when test="start/timezone/islocal='true'">
- <xsl:value-of select="start/dayname"/>,
- <xsl:value-of select="start/longdate"/>
- <xsl:text> </xsl:text>
- <span class="time"><xsl:value-of select="start/time"/></span>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="start/timezone/dayname"/>,
- <xsl:value-of select="start/timezone/longdate"/>
- <xsl:text> </xsl:text>
- <span class="time"><xsl:value-of select="start/timezone/time"/></span>
- </xsl:otherwise>
- </xsl:choose>
- </td>
- <td>
- --
- <strong><xsl:value-of select="start/timezone/id"/></strong>
- </td>
- </tr>
- <tr>
- <td>
- <strong>End:</strong>
- </td>
- <td>
- <xsl:choose>
- <xsl:when test="end/timezone/islocal='true'">
- <xsl:value-of select="end/dayname"/>,
- <xsl:value-of select="end/longdate"/>
- <xsl:text> </xsl:text>
- <span class="time"><xsl:value-of select="end/time"/></span>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="end/timezone/dayname"/>,
- <xsl:value-of select="end/timezone/longdate"/>
- <xsl:text> </xsl:text>
- <span class="time"><xsl:value-of select="end/timezone/time"/></span>
- </xsl:otherwise>
- </xsl:choose>
- </td>
- <td>
- --
- <strong><xsl:value-of select="end/timezone/id"/></strong>
- </td>
- </tr>
- </table>
- </xsl:when>
- <xsl:otherwise>
- <!-- otherwise, timezones are the same: display as a single line -->
- <xsl:value-of select="start/timezone/dayname"/>, <xsl:value-of select="start/timezone/longdate"/><xsl:text> </xsl:text>
- <xsl:if test="start/allday = 'false'">
- <span class="time"><xsl:value-of select="start/timezone/time"/></span>
- </xsl:if>
- <xsl:if test="(end/timezone/longdate != start/timezone/longdate) or
- ((end/timezone/longdate = start/timezone/longdate) and (end/timezone/time != start/timezone/time))"> - </xsl:if>
- <xsl:if test="end/timezone/longdate != start/timezone/longdate">
- <xsl:value-of select="substring(end/timezone/dayname,1,3)"/>, <xsl:value-of select="end/timezone/longdate"/><xsl:text> </xsl:text>
- </xsl:if>
- <xsl:choose>
- <xsl:when test="start/allday = 'true'">
- <span class="time"><em>(all day)</em></span>
- </xsl:when>
- <xsl:when test="end/timezone/longdate != start/timezone/longdate">
- <span class="time"><xsl:value-of select="end/timezone/time"/></span>
- </xsl:when>
- <xsl:when test="end/timezone/time != start/timezone/time">
- <span class="time"><xsl:value-of select="end/timezone/time"/></span>
- </xsl:when>
- </xsl:choose>
- <xsl:text> </xsl:text>
- --
- <strong><xsl:value-of select="start/timezone/id"/></strong>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:if>
- </td>
- <th class="icalIcon" rowspan="2">
- <div id="eventIcons">
- <!--<a href="{$privateCal}/event/addEventRef.do?subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="Add event to MyCalendar" target="myCalendar">
- <img class="addref" src="{$resourcesRoot}/images/add2mycal-icon.gif" width="20" height="26" border="0" alt="Add event to MyCalendar"/>
- add to my calendar</a>-->
- <!--<xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>
- <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}&nocache=no&skinName=ical&contentType=text/calendar&contentName={$eventIcalName}" title="Download event as ical - for Outlook, PDAs, iCal, and other desktop calendars">
- <img src="{$resourcesRoot}/images/std-ical_icon.gif" width="20" height="26" border="0" alt="Download this event"/>
- download</a>-->
- </div>
- </th>
- </tr>
- <tr>
- <td class="fieldname">Where:</td>
- <td class="fieldval">
- <xsl:choose>
- <xsl:when test="location/link=''">
- <xsl:value-of select="location/address"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:variable name="locationLink" select="location/link"/>
- <a href="{$locationLink}">
- <xsl:value-of select="location/address"/>
- </a>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:if test="location/subaddress!=''">
- <br/><xsl:value-of select="location/subaddress"/>
- </xsl:if>
- </td>
- </tr>
- <tr>
- <td class="fieldname">Description:</td>
- <td colspan="2" class="fieldval description">
- <xsl:call-template name="replace">
- <xsl:with-param name="string" select="description"/>
- <xsl:with-param name="pattern" select="'
'"/>
- <xsl:with-param name="replacement"><br/></xsl:with-param>
- </xsl:call-template>
- </td>
- </tr>
- <xsl:if test="status !='' and status != 'CONFIRMED'">
- <tr>
- <td class="fieldname">Status:</td>
- <td class="fieldval">
- <xsl:value-of select="status"/>
- </td>
- </tr>
- </xsl:if>
- <xsl:if test="cost!=''">
- <tr>
- <td class="fieldname">Cost:</td>
- <td colspan="2" class="fieldval"><xsl:value-of select="cost"/></td>
- </tr>
- </xsl:if>
- <xsl:if test="link != ''">
- <tr>
- <td class="fieldname">See:</td>
- <td colspan="2" class="fieldval">
- <xsl:variable name="link" select="link"/>
- <a href="{$link}"><xsl:value-of select="link"/></a>
- </td>
- </tr>
- </xsl:if>
- <xsl:if test="contact/name!='none'">
- <tr>
- <td class="fieldname">Contact:</td>
- <td colspan="2" class="fieldval">
- <xsl:choose>
- <xsl:when test="contact/link=''">
- <xsl:value-of select="contact/name"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:variable name="sponsorLink" select="contact/link"/>
- <a href="{$sponsorLink}">
- <xsl:value-of select="contact/name"/>
- </a>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:if test="contact/phone!=''">
- <br /><xsl:value-of select="contact/phone"/>
- </xsl:if>
- <!-- If you want to display email addresses, uncomment the
- following 8 lines. -->
- <!-- <xsl:if test="contact/email!=''">
- <br />
- <xsl:variable name="email" select="contact/email"/>
- <xsl:variable name="subject" select="summary"/>
- <a href="mailto:{$email}&subject={$subject}">
- <xsl:value-of select="contact/email"/>
- </a>
- </xsl:if> -->
- </td>
- </tr>
- </xsl:if>
- <xsl:if test="calendar/path!=''">
- <tr>
- <td class="fieldname">Calendar:</td>
- <td class="fieldval">
- <xsl:variable name="calUrl" select="calendar/encodedPath"/>
- <a href="{$setSelection}&calUrl={$calUrl}">
- <xsl:value-of select="calendar/name"/>
- </a>
- </td>
- </tr>
- </xsl:if>
- <xsl:if test="categories/category">
- <tr>
- <td class="fieldname">Categories:</td>
- <td class="fieldval">
- <xsl:for-each select="categories/category">
- <xsl:value-of select="word"/><xsl:if test="position() != last()">, </xsl:if>
- </xsl:for-each>
- </td>
- </tr>
- </xsl:if>
- </table>
- </xsl:template>
-
- <!--==== LIST VIEW (for day, week, and month) ====-->
- <xsl:template name="listView">
- <xsl:choose>
- <xsl:when test="not(/bedework/eventscalendar/year/month/week/day/event)">
- <p>No events to display.</p>
- </xsl:when>
- <xsl:otherwise>
- <xsl:for-each select="/bedework/eventscalendar/year/month/week/day[count(event)!=0]">
- <xsl:if test="/bedework/periodname='Week' or /bedework/periodname='Month' or /bedework/periodname=''">
- <br/><br/><!-- why? css isn't stong on blackberry -->
- <h3>
- <xsl:variable name="date" select="date"/>
- <a href="{$setViewPeriod}&viewType=dayView&date={$date}">
- <xsl:value-of select="name"/>, <xsl:value-of select="longdate"/>
- </a>
- </h3>
- </xsl:if>
- <xsl:for-each select="event">
- <xsl:variable name="id" select="id"/>
- <xsl:variable name="subscriptionId" select="subscription/id"/>
- <xsl:variable name="calPath" select="calendar/encodedPath"/>
- <xsl:variable name="guid" select="guid"/>
- <xsl:variable name="recurrenceId" select="recurrenceId"/>
- <dl>
- <dt>
- <xsl:choose>
- <xsl:when test="start/allday = 'true' and
- start/shortdate = end/shortdate">
- all day
- </xsl:when>
- <xsl:when test="start/shortdate = end/shortdate and
- start/time = end/time">
- <xsl:value-of select="start/time"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:choose>
- <xsl:when test="start/allday = 'true' and
- parent::day/shortdate = start/shortdate">
- today
- </xsl:when>
- <xsl:when test="parent::day/shortdate != start/shortdate">
- <span class="littleArrow">«</span> 
- <xsl:value-of select="start/month"/>/<xsl:value-of select="start/day"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="start/time"/>
- </xsl:otherwise>
- </xsl:choose>
- -
- <xsl:choose>
- <xsl:when test="end/allday = 'true' and
- parent::day/shortdate = end/shortdate">
- today
- </xsl:when>
- <xsl:when test="parent::day/shortdate != end/shortdate">
- <xsl:value-of select="end/month"/>/<xsl:value-of select="end/day"/>
-  <span class="littleArrow">»</span>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="end/time"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:otherwise>
- </xsl:choose>
- </dt>
- <dd>
- <xsl:if test="status='CANCELLED'"><strong>CANCELLED: </strong></xsl:if>
- <xsl:choose>
- <xsl:when test="/bedework/appvar[key='summaryMode']/value='details'">
- <a href="{$eventView}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}">
- <strong>
- <xsl:value-of select="summary"/>:
- </strong>
- <xsl:value-of select="description"/> 
- <em>
- <xsl:value-of select="location/address"/>
- <xsl:if test="location/subaddress != ''">
- , <xsl:value-of select="location/subaddress"/>
- </xsl:if>. 
- <xsl:if test="cost!=''">
- <xsl:value-of select="cost"/>. 
- </xsl:if>
- <xsl:if test="contact/name!='none'">
- Contact: <xsl:value-of select="contact/name"/>
- </xsl:if>
- </em>
- - <xsl:value-of select="calendar/name"/>
- </a>
- <xsl:if test="link != ''">
- <xsl:variable name="link" select="link"/>
- <a href="{$link}" class="moreLink"><xsl:value-of select="link"/></a>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <a href="{$eventView}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}">
- <xsl:value-of select="summary"/>
- <xsl:if test="location/address != ''">, <xsl:value-of select="location/address"/></xsl:if>
- </a>
- - <em><xsl:value-of select="calendar/name"/></em>
- </xsl:otherwise>
- </xsl:choose>
- </dd>
- </dl>
- </xsl:for-each>
- </xsl:for-each>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <!--==== CALENDARS PAGE ====-->
- <xsl:template match="calendars">
- <p><b>All Calendars</b><br />
- Select a calendar from the list below to see only that calendar's events.</p>
- <xsl:apply-templates select="calendar/calendar" mode="calTree"/>
- </xsl:template>
-
- <xsl:template match="calendar" mode="calTree">
- <xsl:variable name="itemClass">
- <xsl:choose>
- <xsl:when test="calendarCollection='false'">folder</xsl:when>
- <xsl:otherwise>calendar</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="url" select="encodedPath"/>
- <li class="{$itemClass}">
- <a href="{$setSelection}&calUrl={$url}" title="view calendar"><xsl:value-of select="name"/></a>
- <xsl:if test="calendarCollection='true'">
- <xsl:variable name="name" select="name"/>
- <xsl:variable name="calPath" select="path"/>
- <span class="exportCalLink">
- <a href="javascript:launchExportWidget('exportCalendarForm','{$name}','{$calPath}')" id="{$calPath}" title="export calendar as iCal">
- <img src="{$resourcesRoot}/images/calIconExport-sm.gif" width="13" height="13" alt="export calendar" border="0"/>
- </a>
- </span>
- </xsl:if>
- <xsl:if test="calendar">
- <ul>
- <xsl:apply-templates select="calendar" mode="calTree"/>
- </ul>
- </xsl:if>
- </li>
- </xsl:template>
-
-
-
- <!--==== NAVIGATION ====-->
-
- <xsl:template name="dateSelect">
- <form name="calForm" method="post" action="{$urlPrefix}/setView.do">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr>
- <xsl:if test="/bedework/periodname!='Year'">
- <td>
- <select name="viewStartDate.month">
- <xsl:for-each select="/bedework/monthvalues/val">
- <xsl:variable name="temp" select="."/>
- <xsl:variable name="pos" select="position()"/>
- <xsl:choose>
- <xsl:when test="/bedework/monthvalues[start=$temp]">
- <option value="{$temp}" selected="selected">
- <xsl:value-of select="/bedework/monthlabels/val[position()=$pos]"/>
- </option>
- </xsl:when>
- <xsl:otherwise>
- <option value="{$temp}">
- <xsl:value-of select="/bedework/monthlabels/val[position()=$pos]"/>
- </option>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:for-each>
- </select>
- </td>
- <xsl:if test="/bedework/periodname!='Month'">
- <td>
- <select name="viewStartDate.day">
- <xsl:for-each select="/bedework/dayvalues/val">
- <xsl:variable name="temp" select="."/>
- <xsl:variable name="pos" select="position()"/>
- <xsl:choose>
- <xsl:when test="/bedework/dayvalues[start=$temp]">
- <option value="{$temp}" selected="selected">
- <xsl:value-of select="/bedework/daylabels/val[position()=$pos]"/>
- </option>
- </xsl:when>
- <xsl:otherwise>
- <option value="{$temp}">
- <xsl:value-of select="/bedework/daylabels/val[position()=$pos]"/>
- </option>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:for-each>
- </select>
- </td>
- </xsl:if>
- </xsl:if>
- <td>
- <xsl:variable name="temp" select="/bedework/yearvalues/start"/>
- <input type="text" name="viewStartDate.year" maxlength="4" size="4" value="{$temp}"/>
- </td>
- <td>
- <input name="submit" type="submit" value="go"/>
- </td>
- </tr>
- </table>
- </form>
- </xsl:template>
-
- <!--==== UTILITY TEMPLATES ====-->
-
- <!-- search and replace template taken from
- http://www.biglist.com/lists/xsl-list/archives/200211/msg00337.html -->
- <xsl:template name="replace">
- <xsl:param name="string" select="''"/>
- <xsl:param name="pattern" select="''"/>
- <xsl:param name="replacement" select="''"/>
- <xsl:choose>
- <xsl:when test="$pattern != '' and $string != '' and contains($string, $pattern)">
- <xsl:value-of select="substring-before($string, $pattern)"/>
- <xsl:copy-of select="$replacement"/>
- <xsl:call-template name="replace">
- <xsl:with-param name="string" select="substring-after($string, $pattern)"/>
- <xsl:with-param name="pattern" select="$pattern"/>
- <xsl:with-param name="replacement" select="$replacement"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$string"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
-</xsl:stylesheet>
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:output method="xhtml"
+ indent="yes"
+ media-type="text/html"
+ doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
+ standalone="yes"
+ omit-xml-declaration="yes"/>
+
+ <!-- ===============================================
+ BEDEWORK MOBILE STYLESHEET
+
+ Renders Bedework public client for mobile
+ devices. Call this stylesheet using:
+
+ http://localhost:8080/cal/setup.do?browserTypeSticky=PDA
+ to revert to the default browserType, use
+ http://localhost:8080/cal/setup.do?browserTypeSticky=default
+
+ ============================================== -->
+
+ <!-- URL of resources common to all bedework apps (javascript, images) -->
+ <xsl:variable name="resourceCommons">../../../bedework-common</xsl:variable>
+
+ <!-- DEFINE INCLUDES -->
+ <!-- cannot use the resourceCommons variable in xsl:include paths -->
+ <xsl:include href="../../../bedework-common/default/default/errors.xsl"/>
+ <xsl:include href="../../../bedework-common/default/default/messages.xsl"/>
+
+ <!-- DEFINE GLOBAL CONSTANTS -->
+
+ <!-- URL of the XSL template directory -->
+ <!-- The approot is an appropriate place to put
+ included stylesheets and xml fragments. These are generally
+ referenced relatively (like errors.xsl and messages.xsl above);
+ this variable is here for your convenience if you choose to
+ reference it explicitly. It is not used in this stylesheet, however,
+ and can be safely removed if you so choose. -->
+ <xsl:variable name="appRoot" select="/bedework/approot"/>
+
+ <!-- URL of html resources (images, css, other html); by default this is
+ set to the application root -->
+ <xsl:variable name="resourcesRoot" select="/bedework/approot"/>
+
+ <!-- Properly encoded prefixes to the application actions; use these to build
+ urls; allows the application to be used without cookies or within a portal.
+ These urls are rewritten in header.jsp and simply passed through for use
+ here. Every url includes a query string (either ?b=de or a real query
+ string) so that all links constructed in this stylesheet may begin the
+ query string with an ampersand. -->
+ <xsl:variable name="setup" select="/bedework/urlPrefixes/setup"/>
+ <xsl:variable name="setSelection" select="/bedework/urlPrefixes/main/setSelection"/>
+ <xsl:variable name="fetchPublicCalendars" select="/bedework/urlPrefixes/calendar/fetchPublicCalendars"/>
+ <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="eventView" select="/bedework/urlPrefixes/event/eventView"/>
+ <xsl:variable name="addEventRef" select="/bedework/urlPrefixes/event/addEventRef"/>
+ <xsl:variable name="export" select="/bedework/urlPrefixes/misc/export/a/@href"/>
+ <xsl:variable name="search" select="/bedework/urlPrefixes/search/search"/>
+ <xsl:variable name="search-next" select="/bedework/urlPrefixes/search/next"/>
+ <xsl:variable name="mailEvent" select="/bedework/urlPrefixes/mail/mailEvent"/>
+ <xsl:variable name="showPage" select="/bedework/urlPrefixes/main/showPage"/>
+ <xsl:variable name="stats" select="/bedework/urlPrefixes/stats/stats"/>
+
+ <!-- URL of the web application - includes web context -->
+ <xsl:variable name="urlPrefix" select="/bedework/urlprefix"/>
+
+ <!-- Other generally useful global variables -->
+ <xsl:variable name="privateCal">/ucal</xsl:variable>
+ <xsl:variable name="prevdate" select="/bedework/previousdate"/>
+ <xsl:variable name="nextdate" select="/bedework/nextdate"/>
+ <xsl:variable name="curdate" select="/bedework/currentdate/date"/>
+
+
+ <!-- MAIN TEMPLATE -->
+ <xsl:template match="/">
+ <html xml:lang="en">
+ <head>
+ <title>Bedework Events Calendar</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+ <meta http-equiv="Pragma" content="no-cache"/>
+ <meta http-equiv="Expires" content="-1"/>
+ <link rel="stylesheet" href="{$resourcesRoot}/default/PDA/pda.css"/>
+ </head>
+ <body>
+ <h1 id="homeTitle">
+ Home Title Here
+ <span id="homeLink">
+ [<a href="{$setup}&browserTypeSticky=default">home</a>]
+ </span>
+ </h1>
+ <div id="titleBar">
+ Bedework Events Calendar
+ </div>
+ <xsl:call-template name="infoAndNavigation"/>
+ <xsl:choose>
+ <xsl:when test="/bedework/page='event'">
+ <!-- show an event -->
+ <xsl:apply-templates select="/bedework/event"/>
+ </xsl:when>
+ <xsl:when test="/bedework/page='calendarList'">
+ <!-- show a list of all calendars -->
+ <xsl:apply-templates select="/bedework/calendars"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- otherwise, show the eventsCalendar -->
+ <!-- main eventCalendar content -->
+ <xsl:call-template name="listView"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <!-- footer -->
+ <p id="footer">
+ <a href="{$setup}&browserTypeSticky=PDA">Events Calendar</a> |
+ <a href="{$setup}&browserTypeSticky=default">Home Link</a><br/>
+ <small>Footer Text</small>
+ </p>
+ </body>
+ </html>
+ </xsl:template>
+
+ <!-- === Date Info and Navigation == -->
+ <xsl:template name="infoAndNavigation">
+ <div id="dateInfo">
+ <xsl:if test="/bedework/page!='calendarList' and /bedework/page!='event'">
+ <<a href="{$setViewPeriod}&date={$prevdate}">prev</a>
+ <xsl:text> </xsl:text>
+ <strong>
+ <xsl:choose>
+ <xsl:when test="/bedework/periodname='Day'">
+ <xsl:value-of select="substring(/bedework/eventscalendar/year/month/week/day/name,1,3)"/>, <xsl:value-of select="/bedework/eventscalendar/year/month/shortname"/> <xsl:value-of select="/bedework/eventscalendar/year/month/week/day/value"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
+ </xsl:when>
+ <xsl:when test="/bedework/periodname='Week' or /bedework/periodname=''">
+ Week of <xsl:value-of select="/bedework/eventscalendar/year/month/shortname"/> <xsl:value-of select="/bedework/eventscalendar/year/month/week/day/value"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
+ </xsl:when>
+ <xsl:when test="/bedework/periodname='Month'">
+ <xsl:value-of select="/bedework/eventscalendar/year/month/longname"/>, <xsl:value-of select="/bedework/eventscalendar/year/value"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="/bedework/eventscalendar/year/value"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </strong>
+ <xsl:text> </xsl:text>
+ <a href="{$setViewPeriod}&date={$nextdate}">next</a>>
+ <br />
+ </xsl:if>
+ </div>
+ <div id="mainNav">
+ <xsl:choose>
+ <xsl:when test="/bedework/page='eventscalendar'">
+ <xsl:choose>
+ <xsl:when test="/bedework/periodname='Day'">
+ day
+ </xsl:when>
+ <xsl:otherwise>
+ <a href="{$setViewPeriod}&viewType=dayView&date={$curdate}">day</a>
+ </xsl:otherwise>
+ </xsl:choose> |
+ <xsl:choose>
+ <xsl:when test="/bedework/periodname='Week' or /bedework/periodname=''">
+ week
+ </xsl:when>
+ <xsl:otherwise>
+ <a href="{$setViewPeriod}&viewType=weekView&date={$curdate}">week</a>
+ </xsl:otherwise>
+ </xsl:choose> |
+ <xsl:choose>
+ <xsl:when test="/bedework/periodname='Month'">
+ month
+ </xsl:when>
+ <xsl:otherwise>
+ <a href="{$setViewPeriod}&viewType=monthView&date={$curdate}">month</a>
+ </xsl:otherwise>
+ </xsl:choose> |
+ </xsl:when>
+ <xsl:otherwise>
+ <a href="{$setViewPeriod}&viewType=dayView&date={$curdate}">day</a> |
+ <a href="{$setViewPeriod}&viewType=weekView&date={$curdate}">week</a> |
+ <a href="{$setViewPeriod}&viewType=monthView&date={$curdate}">month</a> |
+ </xsl:otherwise>
+ </xsl:choose>
+ <a href="{$setViewPeriod}&viewType=todayView&date={$curdate}">
+ today
+ </a><br />
+ <xsl:choose>
+ <xsl:when test="/bedework/selectionState/selectionType = 'calendar'">
+ Calendar: <xsl:value-of select="/bedework/selectionState/subscriptions/subscription/calendar/name"/>
+ <span class="link">[<a href="{$setSelection}">show all</a>]</span>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:if test="/bedework/page != 'calendarList'">
+ <span class="calLinks"><a href="{$fetchPublicCalendars}">available calendars</a></span>
+ </xsl:if>
+ </xsl:otherwise>
+ </xsl:choose>
+ </div>
+ </xsl:template>
+
+ <!--==== SINGLE EVENT ====-->
+ <xsl:template match="event">
+ <xsl:variable name="subscriptionId" select="subscription/id"/>
+ <xsl:variable name="calPath" select="calendar/encodedPath"/>
+ <xsl:variable name="guid" select="guid"/>
+ <xsl:variable name="recurrenceId" select="recurrenceId"/>
+ <xsl:variable name="statusClass">
+ <xsl:choose>
+ <xsl:when test="status='CANCELLED'">bwStatusCancelled</xsl:when>
+ <xsl:when test="status='TENTATIVE'">bwStatusTentative</xsl:when>
+ <xsl:otherwise>bwStatusConfirmed</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <h2 class="{$statusClass}">
+ <xsl:if test="status='CANCELLED'">CANCELLED: </xsl:if>
+ <xsl:choose>
+ <xsl:when test="link != ''">
+ <xsl:variable name="link" select="link"/>
+ <a href="{$link}">
+ <xsl:value-of select="summary"/>
+ </a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="summary"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </h2>
+ <table id="eventTable" cellpadding="0" cellspacing="0">
+ <tr>
+ <td class="fieldname">When:</td>
+ <td class="fieldval">
+ <!-- always display local time -->
+ <xsl:value-of select="start/dayname"/>, <xsl:value-of select="start/longdate"/><xsl:text> </xsl:text>
+ <xsl:if test="start/allday = 'false'">
+ <span class="time"><xsl:value-of select="start/time"/></span>
+ </xsl:if>
+ <xsl:if test="(end/longdate != start/longdate) or
+ ((end/longdate = start/longdate) and (end/time != start/time))"> - </xsl:if>
+ <xsl:if test="end/longdate != start/longdate">
+ <xsl:value-of select="substring(end/dayname,1,3)"/>, <xsl:value-of select="end/longdate"/><xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="start/allday = 'true'">
+ <span class="time"><em>(all day)</em></span>
+ </xsl:when>
+ <xsl:when test="end/longdate != start/longdate">
+ <span class="time"><xsl:value-of select="end/time"/></span>
+ </xsl:when>
+ <xsl:when test="end/time != start/time">
+ <span class="time"><xsl:value-of select="end/time"/></span>
+ </xsl:when>
+ </xsl:choose>
+ <!-- if timezones are not local, or if floating add labels: -->
+ <xsl:if test="start/timezone/islocal = 'false' or end/timezone/islocal = 'false'">
+ <xsl:text> </xsl:text>
+ --
+ <strong>
+ <xsl:choose>
+ <xsl:when test="start/floating = 'true'">
+ Floating time
+ </xsl:when>
+ <xsl:otherwise>
+ Local time
+ </xsl:otherwise>
+ </xsl:choose>
+ </strong>
+ <br/>
+ </xsl:if>
+ <!-- display in timezone if not local or floating time) -->
+ <xsl:if test="(start/timezone/islocal = 'false' or end/timezone/islocal = 'false') and start/floating = 'false'">
+ <xsl:choose>
+ <xsl:when test="start/timezone/id != end/timezone/id">
+ <!-- need to display both timezones if they differ from start to end -->
+ <table border="0" cellspacing="0" id="tztable">
+ <tr>
+ <td>
+ <strong>Start:</strong>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="start/timezone/islocal='true'">
+ <xsl:value-of select="start/dayname"/>,
+ <xsl:value-of select="start/longdate"/>
+ <xsl:text> </xsl:text>
+ <span class="time"><xsl:value-of select="start/time"/></span>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="start/timezone/dayname"/>,
+ <xsl:value-of select="start/timezone/longdate"/>
+ <xsl:text> </xsl:text>
+ <span class="time"><xsl:value-of select="start/timezone/time"/></span>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td>
+ --
+ <strong><xsl:value-of select="start/timezone/id"/></strong>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <strong>End:</strong>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="end/timezone/islocal='true'">
+ <xsl:value-of select="end/dayname"/>,
+ <xsl:value-of select="end/longdate"/>
+ <xsl:text> </xsl:text>
+ <span class="time"><xsl:value-of select="end/time"/></span>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="end/timezone/dayname"/>,
+ <xsl:value-of select="end/timezone/longdate"/>
+ <xsl:text> </xsl:text>
+ <span class="time"><xsl:value-of select="end/timezone/time"/></span>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td>
+ --
+ <strong><xsl:value-of select="end/timezone/id"/></strong>
+ </td>
+ </tr>
+ </table>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- otherwise, timezones are the same: display as a single line -->
+ <xsl:value-of select="start/timezone/dayname"/>, <xsl:value-of select="start/timezone/longdate"/><xsl:text> </xsl:text>
+ <xsl:if test="start/allday = 'false'">
+ <span class="time"><xsl:value-of select="start/timezone/time"/></span>
+ </xsl:if>
+ <xsl:if test="(end/timezone/longdate != start/timezone/longdate) or
+ ((end/timezone/longdate = start/timezone/longdate) and (end/timezone/time != start/timezone/time))"> - </xsl:if>
+ <xsl:if test="end/timezone/longdate != start/timezone/longdate">
+ <xsl:value-of select="substring(end/timezone/dayname,1,3)"/>, <xsl:value-of select="end/timezone/longdate"/><xsl:text> </xsl:text>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="start/allday = 'true'">
+ <span class="time"><em>(all day)</em></span>
+ </xsl:when>
+ <xsl:when test="end/timezone/longdate != start/timezone/longdate">
+ <span class="time"><xsl:value-of select="end/timezone/time"/></span>
+ </xsl:when>
+ <xsl:when test="end/timezone/time != start/timezone/time">
+ <span class="time"><xsl:value-of select="end/timezone/time"/></span>
+ </xsl:when>
+ </xsl:choose>
+ <xsl:text> </xsl:text>
+ --
+ <strong><xsl:value-of select="start/timezone/id"/></strong>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+ </td>
+ <th class="icalIcon" rowspan="2">
+ <div id="eventIcons">
+ <!--<a href="{$privateCal}/event/addEventRef.do?subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}" title="Add event to MyCalendar" target="myCalendar">
+ <img class="addref" src="{$resourcesRoot}/images/add2mycal-icon.gif" width="20" height="26" border="0" alt="Add event to MyCalendar"/>
+ add to my calendar</a>-->
+ <!--<xsl:variable name="eventIcalName" select="concat($guid,'.ics')"/>
+ <a href="{$export}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}&nocache=no&skinName=ical&contentType=text/calendar&contentName={$eventIcalName}" title="Download event as ical - for Outlook, PDAs, iCal, and other desktop calendars">
+ <img src="{$resourcesRoot}/images/std-ical_icon.gif" width="20" height="26" border="0" alt="Download this event"/>
+ download</a>-->
+ </div>
+ </th>
+ </tr>
+ <tr>
+ <td class="fieldname">Where:</td>
+ <td class="fieldval">
+ <xsl:choose>
+ <xsl:when test="location/link=''">
+ <xsl:value-of select="location/address"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="locationLink" select="location/link"/>
+ <a href="{$locationLink}">
+ <xsl:value-of select="location/address"/>
+ </a>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:if test="location/subaddress!=''">
+ <br/><xsl:value-of select="location/subaddress"/>
+ </xsl:if>
+ </td>
+ </tr>
+ <tr>
+ <td class="fieldname">Description:</td>
+ <td colspan="2" class="fieldval description">
+ <xsl:call-template name="replace">
+ <xsl:with-param name="string" select="description"/>
+ <xsl:with-param name="pattern" select="'
'"/>
+ <xsl:with-param name="replacement"><br/></xsl:with-param>
+ </xsl:call-template>
+ </td>
+ </tr>
+ <xsl:if test="status !='' and status != 'CONFIRMED'">
+ <tr>
+ <td class="fieldname">Status:</td>
+ <td class="fieldval">
+ <xsl:value-of select="status"/>
+ </td>
+ </tr>
+ </xsl:if>
+ <xsl:if test="cost!=''">
+ <tr>
+ <td class="fieldname">Cost:</td>
+ <td colspan="2" class="fieldval"><xsl:value-of select="cost"/></td>
+ </tr>
+ </xsl:if>
+ <xsl:if test="link != ''">
+ <tr>
+ <td class="fieldname">See:</td>
+ <td colspan="2" class="fieldval">
+ <xsl:variable name="link" select="link"/>
+ <a href="{$link}"><xsl:value-of select="link"/></a>
+ </td>
+ </tr>
+ </xsl:if>
+ <xsl:if test="contact/name!='none'">
+ <tr>
+ <td class="fieldname">Contact:</td>
+ <td colspan="2" class="fieldval">
+ <xsl:choose>
+ <xsl:when test="contact/link=''">
+ <xsl:value-of select="contact/name"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:variable name="sponsorLink" select="contact/link"/>
+ <a href="{$sponsorLink}">
+ <xsl:value-of select="contact/name"/>
+ </a>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:if test="contact/phone!=''">
+ <br /><xsl:value-of select="contact/phone"/>
+ </xsl:if>
+ <!-- If you want to display email addresses, uncomment the
+ following 8 lines. -->
+ <!-- <xsl:if test="contact/email!=''">
+ <br />
+ <xsl:variable name="email" select="contact/email"/>
+ <xsl:variable name="subject" select="summary"/>
+ <a href="mailto:{$email}&subject={$subject}">
+ <xsl:value-of select="contact/email"/>
+ </a>
+ </xsl:if> -->
+ </td>
+ </tr>
+ </xsl:if>
+ <xsl:if test="calendar/path!=''">
+ <tr>
+ <td class="fieldname">Calendar:</td>
+ <td class="fieldval">
+ <xsl:variable name="calUrl" select="calendar/encodedPath"/>
+ <a href="{$setSelection}&calUrl={$calUrl}">
+ <xsl:value-of select="calendar/name"/>
+ </a>
+ </td>
+ </tr>
+ </xsl:if>
+ <xsl:if test="categories/category">
+ <tr>
+ <td class="fieldname">Categories:</td>
+ <td class="fieldval">
+ <xsl:for-each select="categories/category">
+ <xsl:value-of select="word"/><xsl:if test="position() != last()">, </xsl:if>
+ </xsl:for-each>
+ </td>
+ </tr>
+ </xsl:if>
+ </table>
+ </xsl:template>
+
+ <!--==== LIST VIEW (for day, week, and month) ====-->
+ <xsl:template name="listView">
+ <xsl:choose>
+ <xsl:when test="not(/bedework/eventscalendar/year/month/week/day/event)">
+ <p>No events to display.</p>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:for-each select="/bedework/eventscalendar/year/month/week/day[count(event)!=0]">
+ <xsl:if test="/bedework/periodname='Week' or /bedework/periodname='Month' or /bedework/periodname=''">
+ <h3>
+ <xsl:variable name="date" select="date"/>
+ <a href="{$setViewPeriod}&viewType=dayView&date={$date}">
+ <xsl:value-of select="name"/>, <xsl:value-of select="longdate"/>
+ </a>
+ </h3>
+ </xsl:if>
+ <table class="eventList" border="0" cellpadding="0" cellspacing="0">
+ <xsl:for-each select="event">
+ <xsl:variable name="id" select="id"/>
+ <xsl:variable name="subscriptionId" select="subscription/id"/>
+ <xsl:variable name="calPath" select="calendar/encodedPath"/>
+ <xsl:variable name="guid" select="guid"/>
+ <xsl:variable name="recurrenceId" select="recurrenceId"/>
+ <tr>
+ <xsl:choose>
+ <xsl:when test="position() mod 2 = 0">
+ <xsl:attribute name="class">a</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="class">b</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <td class="date">
+ <xsl:choose>
+ <xsl:when test="start/allday = 'true' and
+ start/shortdate = end/shortdate">
+ all day
+ </xsl:when>
+ <xsl:when test="start/shortdate = end/shortdate and
+ start/time = end/time">
+ <xsl:value-of select="start/time"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="start/allday = 'true' and
+ parent::day/shortdate = start/shortdate">
+ today
+ </xsl:when>
+ <xsl:when test="parent::day/shortdate != start/shortdate">
+ <span class="littleArrow">«</span>
+ <xsl:value-of select="start/month"/>/<xsl:value-of select="start/day"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="start/time"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ -
+ <xsl:choose>
+ <xsl:when test="end/allday = 'true' and
+ parent::day/shortdate = end/shortdate">
+ today
+ </xsl:when>
+ <xsl:when test="parent::day/shortdate != end/shortdate">
+ <xsl:value-of select="end/month"/>/<xsl:value-of select="end/day"/>
+ <span class="littleArrow">»</span>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="end/time"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td class="description">
+ <xsl:if test="status='CANCELLED'"><strong>CANCELLED: </strong></xsl:if>
+ <xsl:choose>
+ <xsl:when test="/bedework/appvar[key='summaryMode']/value='details'">
+ <a href="{$eventView}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}">
+ <strong>
+ <xsl:value-of select="summary"/>:
+ </strong>
+ <xsl:value-of select="description"/> 
+ <em>
+ <xsl:value-of select="location/address"/>
+ <xsl:if test="location/subaddress != ''">
+ , <xsl:value-of select="location/subaddress"/>
+ </xsl:if>. 
+ <xsl:if test="cost!=''">
+ <xsl:value-of select="cost"/>. 
+ </xsl:if>
+ <xsl:if test="contact/name!='none'">
+ Contact: <xsl:value-of select="contact/name"/>
+ </xsl:if>
+ </em>
+ - <xsl:value-of select="calendar/name"/>
+ </a>
+ <xsl:if test="link != ''">
+ <xsl:variable name="link" select="link"/>
+ <a href="{$link}" class="moreLink"><xsl:value-of select="link"/></a>
+ </xsl:if>
+ </xsl:when>
+ <xsl:otherwise>
+ <a href="{$eventView}&subid={$subscriptionId}&calPath={$calPath}&guid={$guid}&recurrenceId={$recurrenceId}">
+ <xsl:value-of select="summary"/>
+ </a>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </xsl:for-each>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!--==== CALENDARS PAGE ====-->
+ <xsl:template match="calendars">
+ <p><b>All Calendars</b><br />
+ Select a calendar from the list below to see only that calendar's events.</p>
+ <ul class="calendarTree">
+ <xsl:apply-templates select="calendar/calendar" mode="calTree"/>
+ </ul>
+ </xsl:template>
+
+ <xsl:template match="calendar" mode="calTree">
+ <xsl:variable name="itemClass">
+ <xsl:choose>
+ <xsl:when test="calendarCollection='false'">folder</xsl:when>
+ <xsl:otherwise>calendar</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:variable name="url" select="encodedPath"/>
+ <li class="{$itemClass}">
+ <a href="{$setSelection}&calUrl={$url}" title="view calendar"><xsl:value-of select="name"/></a>
+ <xsl:if test="calendar">
+ <ul>
+ <xsl:apply-templates select="calendar" mode="calTree"/>
+ </ul>
+ </xsl:if>
+ </li>
+ </xsl:template>
+
+
+
+ <!--==== NAVIGATION ====-->
+
+ <xsl:template name="dateSelect">
+ <form name="calForm" method="post" action="{$urlPrefix}/setView.do">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <xsl:if test="/bedework/periodname!='Year'">
+ <td>
+ <select name="viewStartDate.month">
+ <xsl:for-each select="/bedework/monthvalues/val">
+ <xsl:variable name="temp" select="."/>
+ <xsl:variable name="pos" select="position()"/>
+ <xsl:choose>
+ <xsl:when test="/bedework/monthvalues[start=$temp]">
+ <option value="{$temp}" selected="selected">
+ <xsl:value-of select="/bedework/monthlabels/val[position()=$pos]"/>
+ </option>
+ </xsl:when>
+ <xsl:otherwise>
+ <option value="{$temp}">
+ <xsl:value-of select="/bedework/monthlabels/val[position()=$pos]"/>
+ </option>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+ </select>
+ </td>
+ <xsl:if test="/bedework/periodname!='Month'">
+ <td>
+ <select name="viewStartDate.day">
+ <xsl:for-each select="/bedework/dayvalues/val">
+ <xsl:variable name="temp" select="."/>
+ <xsl:variable name="pos" select="position()"/>
+ <xsl:choose>
+ <xsl:when test="/bedework/dayvalues[start=$temp]">
+ <option value="{$temp}" selected="selected">
+ <xsl:value-of select="/bedework/daylabels/val[position()=$pos]"/>
+ </option>
+ </xsl:when>
+ <xsl:otherwise>
+ <option value="{$temp}">
+ <xsl:value-of select="/bedework/daylabels/val[position()=$pos]"/>
+ </option>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+ </select>
+ </td>
+ </xsl:if>
+ </xsl:if>
+ <td>
+ <xsl:variable name="temp" select="/bedework/yearvalues/start"/>
+ <input type="text" name="viewStartDate.year" maxlength="4" size="4" value="{$temp}"/>
+ </td>
+ <td>
+ <input name="submit" type="submit" value="go"/>
+ </td>
+ </tr>
+ </table>
+ </form>
+ </xsl:template>
+
+ <!--==== UTILITY TEMPLATES ====-->
+
+ <!-- search and replace template taken from
+ http://www.biglist.com/lists/xsl-list/archives/200211/msg00337.html -->
+ <xsl:template name="replace">
+ <xsl:param name="string" select="''"/>
+ <xsl:param name="pattern" select="''"/>
+ <xsl:param name="replacement" select="''"/>
+ <xsl:choose>
+ <xsl:when test="$pattern != '' and $string != '' and contains($string, $pattern)">
+ <xsl:value-of select="substring-before($string, $pattern)"/>
+ <xsl:copy-of select="$replacement"/>
+ <xsl:call-template name="replace">
+ <xsl:with-param name="string" select="substring-after($string, $pattern)"/>
+ <xsl:with-param name="pattern" select="$pattern"/>
+ <xsl:with-param name="replacement" select="$replacement"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$string"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+</xsl:stylesheet>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/pda.css
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/pda.css 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/PDA/pda.css 2008-01-25 22:26:13 UTC (rev 1716)
@@ -4,8 +4,24 @@
color: #000;
margin: 0;
padding: 0;
- font-size: 12px;
+ font-size: 10px;
}
+h1#homeTitle {
+ text-align: center;
+ margin: 0;
+ padding: 2px 0;
+ background-color: #900;
+ color: white;
+ font-size: 10px;
+}
+#homeLink {
+ padding-left: 1em;
+ font-size: 0.8em;
+}
+#homeLink a {
+ background-color: transparent;
+ color: #eee;
+}
#titleBar {
background: #e2decc;
color: #000;
@@ -14,24 +30,36 @@
text-align: center;
font-weight: bold;
}
-#homeLink {
- padding-left: 1em;
- font-size: 0.8em;
-}
#dateInfo,
#mainNav {
text-align: center;
white-space: nowrap;
}
+#mainNav {
+ margin-bottom: 1em;
+}
h1 {
- font-size: 12px;
+ font-size: 11px;
margin: 0; /* must wrap h1s with <p> tags for blackberry */
padding: 0;
}
h2,h3,h4,h5 {
- font-size: 12px;
+ font-size: 11px;
text-align: left;
}
+h3 {
+ background-color: #e2decc;
+ color: black;
+ margin: 1em 0 0 0;
+}
+a:link,
+a:active,
+a:visited {
+ text-decoration: none;
+}
+a:hover {
+ text-decoration: underline;
+}
dl {
margin: 0.5em 1em;
}
@@ -41,9 +69,43 @@
#eventTable td.fieldname {
padding-right: 1em;
}
+.eventList {
+ width: 100%;
+ margin: 0;
+ padding: 0;
+}
+.eventList tr.a td {
+ color: black;
+ background-color: #F3F1E8;
+}
+.eventList td {
+ padding: 0;
+ border-bottom: 1px dotted #ccc;
+}
+.eventList td.date {
+ font-size: 8px;
+ white-space: nowrap;
+}
+ul.calendarTree {
+ text-align: left;
+}
+ul.calendarTree li {
+ font-weight: bold;
+}
+ul.calendarTree li ul li {
+ font-weight: normal;
+}
+ul.calendarTree li.folder {
+ list-style-image: url(../../images/catIcon.gif);
+ padding-top: 0.25em;
+ padding-bottom: 0.25em;
+}
+ul.calendarTree li.calendar {
+ list-style-image: url(../../images/calIcon-sm.gif);
+}
#footer {
font-size: 0.8em;
text-align: center;
margin: 1em 0;
padding: 2em 1em 1em 1em;
-}
\ No newline at end of file
+}
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/blue.css
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/blue.css 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/blue.css 2008-01-25 22:26:13 UTC (rev 1716)
@@ -528,6 +528,7 @@
padding: 0.1em 0.2em 0.1em 0.2em;
text-decoration: none;
background-color: #ccc;
+ border-bottom: 1px solid #bbb;
color: black;
}
#monthCalendarTable a.eventTentative:link,
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/default.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/default.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/default.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -85,7 +85,8 @@
<xsl:variable name="setup" select="/bedework/urlPrefixes/setup"/>
<xsl:variable name="setSelection" select="/bedework/urlPrefixes/main/setSelection"/>
<xsl:variable name="fetchPublicCalendars" select="/bedework/urlPrefixes/calendar/fetchPublicCalendars"/>
- <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="listEvents" select="/bedework/urlPrefixes/main/listEvents"/>
<xsl:variable name="eventView" select="/bedework/urlPrefixes/event/eventView"/>
<xsl:variable name="addEventRef" select="/bedework/urlPrefixes/event/addEventRef"/>
<xsl:variable name="export" select="/bedework/urlPrefixes/misc/export"/>
@@ -271,7 +272,7 @@
<a href="javascript:window.print()" title="print this view">
<img alt="print this view" src="{$resourcesRoot}/images/std-print-icon.gif" width="20" height="14" border="0"/> print
</a>
- <a class="rss" href="{$setup}&setappvar=summaryMode(details)&skinName=rss" title="RSS feed">RSS</a>
+ <a class="rss" href="{$listEvents}&setappvar=summaryMode(details)&skinName=rss-list&days=3" title="RSS feed">RSS</a>
</td>
</tr>
</table>
@@ -1652,7 +1653,7 @@
<a href="?refreshXslt=yes">refresh XSLT</a>
</td>
<td class="rightCell">
- <form name="styleSelectForm" method="post" action="{$setup}">
+ <form name="styleSelectForm" method="get" action="{$setup}">
<select name="setappvar" onchange="submit()">
<option value="">example styles:</option>
<option value="style(green)">green</option>
@@ -1664,8 +1665,9 @@
<input type="hidden" name="setappvar" value="summaryMode(details)"/>
<select name="skinPicker" onchange="window.location = this.value">
<option value="{$setup}&skinNameSticky=default">example skins:</option>
- <option value="{$setViewPeriod}&viewType=weekView&skinName=rss&setappvar=summaryMode(details)">rss feed</option>
- <option value="{$setViewPeriod}&viewType=todayView&skinName=jsToday&contentType=text/javascript&contentName=bedework.js">javascript feed</option>
+ <option value="{$listEvents}&setappvar=summaryMode(details)&skinName=rss-list&days=3">rss feed</option>
+ <option value="{$setViewPeriod}&viewType=todayView&skinName=jsToday&contentType=text/javascript&contentName=bedework.js">javascript feed</option>
+ <option value="{$setup}&browserTypeSticky=PDA">for mobile browsers</option>
<option value="{$setViewPeriod}&viewType=todayView&skinName=videocal">video feed</option>
<option value="{$setup}&skinNameSticky=default">reset to calendar default</option>
</select>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/green.css
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/green.css 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/green.css 2008-01-25 22:26:13 UTC (rev 1716)
@@ -541,6 +541,7 @@
padding: 0.1em 0.2em 0.1em 0.2em;
text-decoration: none;
background-color: #ccc;
+ border-bottom: 1px solid #bbb;
color: black;
}
#monthCalendarTable a.eventTentative:link,
@@ -1032,4 +1033,4 @@
}
html .dojoFloatingPaneClient #bwCalendarExportWidgetCalName {
padding-left: 1em;
-}
\ No newline at end of file
+}
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/red.css
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/red.css 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/red.css 2008-01-25 22:26:13 UTC (rev 1716)
@@ -537,6 +537,7 @@
padding: 0.1em 0.2em 0.1em 0.2em;
text-decoration: none;
background-color: #ccc;
+ border-bottom: 1px solid #bbb;
color: black;
}
#monthCalendarTable a.eventTentative:link,
@@ -1033,4 +1034,4 @@
}
html .dojoFloatingPaneClient #bwCalendarExportWidgetCalName {
padding-left: 1em;
-}
\ No newline at end of file
+}
Added: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss-list.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss-list.xsl (rev 0)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss-list.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output
+ method="xml"
+ omit-xml-declaration="no"
+ indent="yes"
+ doctype-public="'-//Netscape Communications//DTD RSS 0.91//EN' 'http://my.netscape.com/public/formats/rss-0.91.dtd'"
+ media-type="text/xml"
+ encoding="UTF-8"
+ />
+ <!-- =========================================================
+
+ BEDEWORK RSS FEED
+
+ RSS for the Bedework events calendar.
+
+ Call the feed with the listEvents action to return
+ the discrete events in the next seven days (seven days is default):
+ http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list
+
+ _________________________________________________________
+ Optional parameters that may be added to the query string:
+
+ days=n return n days from today into the future.
+ Example: http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list&days=5
+
+
+ Note: rss.xsl is an older file used to pull a list of events from the
+ day, week, or month views. It is maintained for backwards
+ compatibility.
+
+ =============================================================== -->
+<!-- **********************************************************************
+ Copyright 2008 Rensselaer Polytechnic Institute. All worldwide rights reserved.
+
+ Redistribution and use of this distribution in source and binary forms,
+ with or without modification, are permitted provided that:
+ The above copyright notice and this permission notice appear in all
+ copies and supporting documentation;
+
+ The name, identifiers, and trademarks of Rensselaer Polytechnic
+ Institute are not used in advertising or publicity without the
+ express prior written permission of Rensselaer Polytechnic Institute;
+
+ DISCLAIMER: The software is distributed" AS IS" without any express or
+ implied warranty, including but not limited to, any implied warranties
+ of merchantability or fitness for a particular purpose or any warrant)'
+ of non-infringement of any current or pending patent rights. The authors
+ of the software make no representations about the suitability of this
+ software for any particular purpose. The entire risk as to the quality
+ and performance of the software is with the user. Should the software
+ prove defective, the user assumes the cost of all necessary servicing,
+ repair or correction. In particular, neither Rensselaer Polytechnic
+ Institute, nor the authors of the software are liable for any indirect,
+ special, consequential, or incidental damages related to the software,
+ to the maximum extent the law permits. -->
+
+ <xsl:template match="/">
+ <rss version="2.0">
+ <channel>
+ <title>Bedework Events Calendar</title>
+ <link><xsl:value-of select="/bedework/urlprefix"/></link>
+ <description>
+ <xsl:choose>
+ <xsl:when test="/bedework/events/event/start/longdate = /bedework/events/event[position()=last()]/start/longdate"><xsl:value-of select="/bedework/events/event/start/longdate"/></xsl:when>
+ <xsl:otherwise><xsl:value-of select="/bedework/events/event/start/longdate"/> - <xsl:value-of select="/bedework/events/event[position()=last()]/start/longdate"/></xsl:otherwise>
+ </xsl:choose>
+ </description>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(/bedework/events/event/start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,10,11)"/>:<xsl:value-of select="substring(/bedework/events/event/start/utcdate,11,12)"/>:00 UT</pubDate>
+ <language>en-US</language>
+ <copyright>Copyright <xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/>, Bedework</copyright>
+ <managingEditor>editor at mysite.edu, Editor Name</managingEditor>
+ <xsl:choose>
+ <xsl:when test="/bedework/page='searchResult'">
+ <xsl:apply-templates select="/bedework/searchResults/searchResult"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="/bedework/events/event"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </channel>
+ </rss>
+ </xsl:template>
+
+ <xsl:template match="event">
+ <item>
+ <title><xsl:if test="status = 'CANCELLED'">CANCELLED: </xsl:if><xsl:value-of select="summary"/> - <xsl:value-of select="substring(start/dayname,1,3)"/>, <xsl:value-of select="start/longdate"/></title>
+ <link><xsl:value-of select="/bedework/urlprefix"/>/event/eventView.do?subid=<xsl:value-of select="subscription/id"/>&calPath=<xsl:value-of select="calendar/encodedPath"/>&guid=<xsl:value-of select="guid"/>&recurrenceId=<xsl:value-of select="recurrenceId"/></link>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,10,11)"/>:<xsl:value-of select="substring(start/utcdate,11,12)"/>:00 UT</pubDate>
+ <description><!--
+ --><xsl:value-of select="substring(start/dayname,1,3)"/>,<xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/longdate"/><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/time"/><!--
+ --><xsl:if test="end/time != ''"> - </xsl:if><!--
+ --><xsl:if test="end/dayname != start/dayname"><xsl:value-of select="substring(end/dayname,1,3)"/>, </xsl:if><!--
+ --><xsl:if test="end/longdate != start/longdate"><xsl:value-of select="end/longdate"/>, </xsl:if><!--
+ --><xsl:if test="end/time != ''"><xsl:value-of select="end/time"/></xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="location/address"/>.<!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:if test="cost!=''"><xsl:value-of select="cost"/>.</xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="description"/><!--
+ --><xsl:text> </xsl:text><xsl:if test="status = 'CANCELLED'">(CANCELLED)</xsl:if><!--
+ --></description>
+ </item>
+ </xsl:template>
+
+ <!-- convert 2-digit utc month numeric values to
+ short month names as expected by RFC 822 -->
+ <xsl:template name="monthNumToName">
+ <xsl:param name="monthNum">00</xsl:param>
+ <xsl:choose>
+ <xsl:when test="$monthNum = '01'">Jan</xsl:when>
+ <xsl:when test="$monthNum = '02'">Feb</xsl:when>
+ <xsl:when test="$monthNum = '03'">Mar</xsl:when>
+ <xsl:when test="$monthNum = '04'">Apr</xsl:when>
+ <xsl:when test="$monthNum = '05'">May</xsl:when>
+ <xsl:when test="$monthNum = '06'">Jun</xsl:when>
+ <xsl:when test="$monthNum = '07'">Jul</xsl:when>
+ <xsl:when test="$monthNum = '08'">Aug</xsl:when>
+ <xsl:when test="$monthNum = '09'">Sep</xsl:when>
+ <xsl:when test="$monthNum = '10'">Oct</xsl:when>
+ <xsl:when test="$monthNum = '11'">Nov</xsl:when>
+ <xsl:when test="$monthNum = '12'">Dec</xsl:when>
+ <xsl:otherwise>badMonthNum</xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+</xsl:stylesheet>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/MainCampus/default/default/rss.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -8,6 +8,46 @@
media-type="text/xml"
encoding="UTF-8"
/>
+ <!-- =========================================================
+
+ BEDEWORK RSS FEED (deprecated)
+
+ Deprecated: use rss-list.xsl instead.
+
+ This is an older file used to pull a list of events from the
+ day, week, or month views and was originally used to
+ produce "Today's Events". rss-list.xsl takes timezones into
+ account. This file does not.
+ .
+ Call the feed with the listEvents action like so:
+ http://localhost:8080/main/setViewPeriod.do?viewType=todayView&setappvar=summaryMode(details)&skinName=rss
+
+ =============================================================== -->
+<!-- **********************************************************************
+ Copyright 2008 Rensselaer Polytechnic Institute. All worldwide rights reserved.
+
+ Redistribution and use of this distribution in source and binary forms,
+ with or without modification, are permitted provided that:
+ The above copyright notice and this permission notice appear in all
+ copies and supporting documentation;
+
+ The name, identifiers, and trademarks of Rensselaer Polytechnic
+ Institute are not used in advertising or publicity without the
+ express prior written permission of Rensselaer Polytechnic Institute;
+
+ DISCLAIMER: The software is distributed" AS IS" without any express or
+ implied warranty, including but not limited to, any implied warranties
+ of merchantability or fitness for a particular purpose or any warrant)'
+ of non-infringement of any current or pending patent rights. The authors
+ of the software make no representations about the suitability of this
+ software for any particular purpose. The entire risk as to the quality
+ and performance of the software is with the user. Should the software
+ prove defective, the user assumes the cost of all necessary servicing,
+ repair or correction. In particular, neither Rensselaer Polytechnic
+ Institute, nor the authors of the software are liable for any indirect,
+ special, consequential, or incidental damages related to the software,
+ to the maximum extent the law permits. -->
+
<xsl:template match="/">
<rss version="2.0">
<channel>
@@ -20,7 +60,7 @@
--><xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/twodigitday"/><xsl:text> </xsl:text><!--
--><xsl:value-of select="substring(/bedework/eventscalendar/year/month/week/day[event]/event/start/monthname,1,3)"/><xsl:text> </xsl:text><!--
--><xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/fourdigityear"/><xsl:text> </xsl:text><!--
- --><xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/twodigithour24"/>:<xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/twodigitminute"/>:00 EST</pubDate>
+ --><xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/twodigithour24"/>:<xsl:value-of select="/bedework/eventscalendar/year/month/week/day[event]/event/start/twodigitminute"/>:00 EST</pubDate>
<language>en-US</language>
<copyright>Copyright <xsl:value-of select="substring(/bedework/currentdate/date,1,4)"/>, Rensselaer Polytechnic Institute</copyright>
<managingEditor>editor at mysite.edu, Editor Name</managingEditor>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/default.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/default.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/default.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -96,7 +96,8 @@
<xsl:variable name="setup" select="/bedework/urlPrefixes/setup"/>
<xsl:variable name="setSelection" select="/bedework/urlPrefixes/main/setSelection"/>
<xsl:variable name="fetchPublicCalendars" select="/bedework/urlPrefixes/calendar/fetchPublicCalendars"/>
- <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="listEvents" select="/bedework/urlPrefixes/main/listEvents"/>
<xsl:variable name="eventView" select="/bedework/urlPrefixes/event/eventView"/>
<xsl:variable name="addEventRef" select="/bedework/urlPrefixes/event/addEventRef"/>
<xsl:variable name="export" select="/bedework/urlPrefixes/misc/export"/>
@@ -268,7 +269,7 @@
<a href="javascript:window.print()" title="print this view">
<img alt="print this view" src="{$resourcesRoot}/images/std-print-icon.gif" width="20" height="14" border="0"/> print
</a>
- <a class="rss" href="{$setSelection}&setappvar=summaryMode(details)&skinName=rss" title="RSS feed">RSS</a>
+ <a class="rss" href="{$listEvents}&setappvar=summaryMode(details)&skinName=rss-list&days=3" title="RSS feed">RSS</a>
</td>
</table>-->
</xsl:template>
@@ -322,7 +323,7 @@
<a href="javascript:window.print()" title="print this view">
<img alt="print this view" src="{$resourcesRoot}/images/std-print-icon.gif" width="20" height="14" border="0"/> print
</a>
- <a class="rss" href="{$setup}&setappvar=summaryMode(details)&skinName=rss" title="RSS feed">RSS</a>
+ <a class="rss" href="{$listEvents}&setappvar=summaryMode(details)&skinName=rss-list&days=3" title="RSS feed">RSS</a>
</td>
</tr>
</table>
Added: trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss-list.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss-list.xsl (rev 0)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss-list.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output
+ method="xml"
+ omit-xml-declaration="no"
+ indent="yes"
+ doctype-public="'-//Netscape Communications//DTD RSS 0.91//EN' 'http://my.netscape.com/public/formats/rss-0.91.dtd'"
+ media-type="text/xml"
+ encoding="UTF-8"
+ />
+ <!-- =========================================================
+
+ BEDEWORK RSS FEED
+
+ RSS for the Bedework events calendar.
+
+ Call the feed with the listEvents action to return
+ the discrete events in the next seven days (seven days is default):
+ http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list
+
+ _________________________________________________________
+ Optional parameters that may be added to the query string:
+
+ days=n return n days from today into the future.
+ Example: http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list&days=5
+
+
+ Note: rss.xsl is an older file used to pull a list of events from the
+ day, week, or month views. It is maintained for backwards
+ compatibility.
+
+ =============================================================== -->
+<!-- **********************************************************************
+ Copyright 2008 Rensselaer Polytechnic Institute. All worldwide rights reserved.
+
+ Redistribution and use of this distribution in source and binary forms,
+ with or without modification, are permitted provided that:
+ The above copyright notice and this permission notice appear in all
+ copies and supporting documentation;
+
+ The name, identifiers, and trademarks of Rensselaer Polytechnic
+ Institute are not used in advertising or publicity without the
+ express prior written permission of Rensselaer Polytechnic Institute;
+
+ DISCLAIMER: The software is distributed" AS IS" without any express or
+ implied warranty, including but not limited to, any implied warranties
+ of merchantability or fitness for a particular purpose or any warrant)'
+ of non-infringement of any current or pending patent rights. The authors
+ of the software make no representations about the suitability of this
+ software for any particular purpose. The entire risk as to the quality
+ and performance of the software is with the user. Should the software
+ prove defective, the user assumes the cost of all necessary servicing,
+ repair or correction. In particular, neither Rensselaer Polytechnic
+ Institute, nor the authors of the software are liable for any indirect,
+ special, consequential, or incidental damages related to the software,
+ to the maximum extent the law permits. -->
+
+ <xsl:template match="/">
+ <rss version="2.0">
+ <channel>
+ <title>Bedework Events Calendar</title>
+ <link><xsl:value-of select="/bedework/urlprefix"/></link>
+ <description>
+ <xsl:choose>
+ <xsl:when test="/bedework/events/event/start/longdate = /bedework/events/event[position()=last()]/start/longdate"><xsl:value-of select="/bedework/events/event/start/longdate"/></xsl:when>
+ <xsl:otherwise><xsl:value-of select="/bedework/events/event/start/longdate"/> - <xsl:value-of select="/bedework/events/event[position()=last()]/start/longdate"/></xsl:otherwise>
+ </xsl:choose>
+ </description>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(/bedework/events/event/start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,10,11)"/>:<xsl:value-of select="substring(/bedework/events/event/start/utcdate,11,12)"/>:00 UT</pubDate>
+ <language>en-US</language>
+ <copyright>Copyright <xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/>, Bedework</copyright>
+ <managingEditor>editor at mysite.edu, Editor Name</managingEditor>
+ <xsl:choose>
+ <xsl:when test="/bedework/page='searchResult'">
+ <xsl:apply-templates select="/bedework/searchResults/searchResult"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="/bedework/events/event"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </channel>
+ </rss>
+ </xsl:template>
+
+ <xsl:template match="event">
+ <item>
+ <title><xsl:if test="status = 'CANCELLED'">CANCELLED: </xsl:if><xsl:value-of select="summary"/> - <xsl:value-of select="substring(start/dayname,1,3)"/>, <xsl:value-of select="start/longdate"/></title>
+ <link><xsl:value-of select="/bedework/urlprefix"/>/event/eventView.do?subid=<xsl:value-of select="subscription/id"/>&calPath=<xsl:value-of select="calendar/encodedPath"/>&guid=<xsl:value-of select="guid"/>&recurrenceId=<xsl:value-of select="recurrenceId"/></link>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,10,11)"/>:<xsl:value-of select="substring(start/utcdate,11,12)"/>:00 UT</pubDate>
+ <description><!--
+ --><xsl:value-of select="substring(start/dayname,1,3)"/>,<xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/longdate"/><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/time"/><!--
+ --><xsl:if test="end/time != ''"> - </xsl:if><!--
+ --><xsl:if test="end/dayname != start/dayname"><xsl:value-of select="substring(end/dayname,1,3)"/>, </xsl:if><!--
+ --><xsl:if test="end/longdate != start/longdate"><xsl:value-of select="end/longdate"/>, </xsl:if><!--
+ --><xsl:if test="end/time != ''"><xsl:value-of select="end/time"/></xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="location/address"/>.<!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:if test="cost!=''"><xsl:value-of select="cost"/>.</xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="description"/><!--
+ --><xsl:text> </xsl:text><xsl:if test="status = 'CANCELLED'">(CANCELLED)</xsl:if><!--
+ --></description>
+ </item>
+ </xsl:template>
+
+ <!-- convert 2-digit utc month numeric values to
+ short month names as expected by RFC 822 -->
+ <xsl:template name="monthNumToName">
+ <xsl:param name="monthNum">00</xsl:param>
+ <xsl:choose>
+ <xsl:when test="$monthNum = '01'">Jan</xsl:when>
+ <xsl:when test="$monthNum = '02'">Feb</xsl:when>
+ <xsl:when test="$monthNum = '03'">Mar</xsl:when>
+ <xsl:when test="$monthNum = '04'">Apr</xsl:when>
+ <xsl:when test="$monthNum = '05'">May</xsl:when>
+ <xsl:when test="$monthNum = '06'">Jun</xsl:when>
+ <xsl:when test="$monthNum = '07'">Jul</xsl:when>
+ <xsl:when test="$monthNum = '08'">Aug</xsl:when>
+ <xsl:when test="$monthNum = '09'">Sep</xsl:when>
+ <xsl:when test="$monthNum = '10'">Oct</xsl:when>
+ <xsl:when test="$monthNum = '11'">Nov</xsl:when>
+ <xsl:when test="$monthNum = '12'">Dec</xsl:when>
+ <xsl:otherwise>badMonthNum</xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+</xsl:stylesheet>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss.xsl
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/rss.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -8,6 +8,46 @@
media-type="text/xml"
encoding="ISO-8859-1"
/>
+ <!-- =========================================================
+
+ BEDEWORK RSS FEED (deprecated)
+
+ Deprecated: use rss-list.xsl instead.
+
+ This is an older file used to pull a list of events from the
+ day, week, or month views and was originally used to
+ produce "Today's Events". rss-list.xsl takes timezones into
+ account. This file does not.
+ .
+ Call the feed with the listEvents action like so:
+ http://localhost:8080/main/setViewPeriod.do?viewType=todayView&setappvar=summaryMode(details)&skinName=rss
+
+ =============================================================== -->
+<!-- **********************************************************************
+ Copyright 2008 Rensselaer Polytechnic Institute. All worldwide rights reserved.
+
+ Redistribution and use of this distribution in source and binary forms,
+ with or without modification, are permitted provided that:
+ The above copyright notice and this permission notice appear in all
+ copies and supporting documentation;
+
+ The name, identifiers, and trademarks of Rensselaer Polytechnic
+ Institute are not used in advertising or publicity without the
+ express prior written permission of Rensselaer Polytechnic Institute;
+
+ DISCLAIMER: The software is distributed" AS IS" without any express or
+ implied warranty, including but not limited to, any implied warranties
+ of merchantability or fitness for a particular purpose or any warrant)'
+ of non-infringement of any current or pending patent rights. The authors
+ of the software make no representations about the suitability of this
+ software for any particular purpose. The entire risk as to the quality
+ and performance of the software is with the user. Should the software
+ prove defective, the user assumes the cost of all necessary servicing,
+ repair or correction. In particular, neither Rensselaer Polytechnic
+ Institute, nor the authors of the software are liable for any indirect,
+ special, consequential, or incidental damages related to the software,
+ to the maximum extent the law permits. -->
+
<xsl:template match="/">
<rss version="2.0">
<channel>
Modified: trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/soe.css
===================================================================
--- trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/soe.css 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webpublic/webapp/resources/demoskins/SoEDepartmental/default/default/soe.css 2008-01-25 22:26:13 UTC (rev 1716)
@@ -526,6 +526,7 @@
padding: 0.1em 0.2em 0.1em 0.2em;
text-decoration: none;
background-color: #ccc;
+ border-bottom: 1px solid #bbb;
color: black;
}
#monthCalendarTable a.eventTentative:link,
@@ -1033,4 +1034,4 @@
html .dojoFloatingPaneClient form#exportCalendarForm {
margin: 0;
padding: 0;
-}
\ No newline at end of file
+}
Modified: trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl
===================================================================
--- trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl 2008-01-25 22:24:11 UTC (rev 1715)
+++ trunk/deployment/webuser/webapp/resources/demoskins/default/default/default.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -70,6 +70,7 @@
<xsl:variable name="setup" select="/bedework/urlPrefixes/setup"/>
<xsl:variable name="setSelection" select="/bedework/urlPrefixes/main/setSelection"/>
<xsl:variable name="setViewPeriod" select="/bedework/urlPrefixes/main/setViewPeriod"/>
+ <xsl:variable name="listEvents" select="/bedework/urlPrefixes/main/listEvents"/>
<!-- events -->
<xsl:variable name="eventView" select="/bedework/urlPrefixes/event/eventView"/>
<xsl:variable name="initEvent" select="/bedework/urlPrefixes/event/initEvent"/>
@@ -471,7 +472,7 @@
<a href="javascript:window.print()" title="print this view">
<img alt="print this view" src="{$resourcesRoot}/resources/std-print-icon.gif" width="20" height="14" border="0"/> print
</a>
- <a class="rss" href="{$setup}&setappvar=summaryMode(details)&skinName=rss" title="RSS feed">RSS</a>
+ <a class="rss" href="{$listEvents}&setappvar=summaryMode(details)&skinName=rss-list&days=3" title="RSS feed">RSS</a>
</td>
</tr>
</table>
Added: trunk/deployment/webuser/webapp/resources/demoskins/default/default/rss-list.xsl
===================================================================
--- trunk/deployment/webuser/webapp/resources/demoskins/default/default/rss-list.xsl (rev 0)
+++ trunk/deployment/webuser/webapp/resources/demoskins/default/default/rss-list.xsl 2008-01-25 22:26:13 UTC (rev 1716)
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output
+ method="xml"
+ omit-xml-declaration="no"
+ indent="yes"
+ doctype-public="'-//Netscape Communications//DTD RSS 0.91//EN' 'http://my.netscape.com/public/formats/rss-0.91.dtd'"
+ media-type="text/xml"
+ encoding="UTF-8"
+ />
+ <!-- =========================================================
+
+ BEDEWORK RSS FEED
+
+ RSS for the Bedework events calendar.
+
+ Call the feed with the listEvents action to return
+ the discrete events in the next seven days (seven days is default):
+ http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list
+
+ _________________________________________________________
+ Optional parameters that may be added to the query string:
+
+ days=n return n days from today into the future.
+ Example: http://localhost:8080/cal/main/listEvents.do?setappvar=summaryMode(details)&skinName=rss-list&days=5
+
+
+ Note: rss.xsl is an older file used to pull a list of events from the
+ day, week, or month views. It is maintained for backwards
+ compatibility.
+
+ =============================================================== -->
+<!-- **********************************************************************
+ Copyright 2008 Rensselaer Polytechnic Institute. All worldwide rights reserved.
+
+ Redistribution and use of this distribution in source and binary forms,
+ with or without modification, are permitted provided that:
+ The above copyright notice and this permission notice appear in all
+ copies and supporting documentation;
+
+ The name, identifiers, and trademarks of Rensselaer Polytechnic
+ Institute are not used in advertising or publicity without the
+ express prior written permission of Rensselaer Polytechnic Institute;
+
+ DISCLAIMER: The software is distributed" AS IS" without any express or
+ implied warranty, including but not limited to, any implied warranties
+ of merchantability or fitness for a particular purpose or any warrant)'
+ of non-infringement of any current or pending patent rights. The authors
+ of the software make no representations about the suitability of this
+ software for any particular purpose. The entire risk as to the quality
+ and performance of the software is with the user. Should the software
+ prove defective, the user assumes the cost of all necessary servicing,
+ repair or correction. In particular, neither Rensselaer Polytechnic
+ Institute, nor the authors of the software are liable for any indirect,
+ special, consequential, or incidental damages related to the software,
+ to the maximum extent the law permits. -->
+
+ <xsl:template match="/">
+ <rss version="2.0">
+ <channel>
+ <title>Bedework Events Calendar</title>
+ <link><xsl:value-of select="/bedework/urlprefix"/></link>
+ <description>
+ <xsl:choose>
+ <xsl:when test="/bedework/events/event/start/longdate = /bedework/events/event[position()=last()]/start/longdate"><xsl:value-of select="/bedework/events/event/start/longdate"/></xsl:when>
+ <xsl:otherwise><xsl:value-of select="/bedework/events/event/start/longdate"/> - <xsl:value-of select="/bedework/events/event[position()=last()]/start/longdate"/></xsl:otherwise>
+ </xsl:choose>
+ </description>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(/bedework/events/event/start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(/bedework/events/event/start/utcdate,10,11)"/>:<xsl:value-of select="substring(/bedework/events/event/start/utcdate,11,12)"/>:00 UT</pubDate>
+ <language>en-US</language>
+ <copyright>Copyright <xsl:value-of select="substring(/bedework/events/event/start/utcdate,1,4)"/>, Bedework</copyright>
+ <managingEditor>editor at mysite.edu, Editor Name</managingEditor>
+ <xsl:choose>
+ <xsl:when test="/bedework/page='searchResult'">
+ <xsl:apply-templates select="/bedework/searchResults/searchResult"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="/bedework/events/event"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </channel>
+ </rss>
+ </xsl:template>
+
+ <xsl:template match="event">
+ <item>
+ <title><xsl:if test="status = 'CANCELLED'">CANCELLED: </xsl:if><xsl:value-of select="summary"/> - <xsl:value-of select="substring(start/dayname,1,3)"/>, <xsl:value-of select="start/longdate"/></title>
+ <link><xsl:value-of select="/bedework/urlprefix"/>/event/eventView.do?subid=<xsl:value-of select="subscription/id"/>&calPath=<xsl:value-of select="calendar/encodedPath"/>&guid=<xsl:value-of select="guid"/>&recurrenceId=<xsl:value-of select="recurrenceId"/></link>
+ <pubDate><!-- takes the form: 11 Jan 2008 17:00:00 UT (note - do not output dayname - we only provide dayname in local time).
+ --><xsl:value-of select="substring(start/utcdate,7,8)"/><xsl:text> </xsl:text><!--
+ --><xsl:call-template name="monthNumToName"><xsl:with-param name="monthNum" select="substring(start/utcdate,5,6)"/></xsl:call-template><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,1,4)"/><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="substring(start/utcdate,10,11)"/>:<xsl:value-of select="substring(start/utcdate,11,12)"/>:00 UT</pubDate>
+ <description><!--
+ --><xsl:value-of select="substring(start/dayname,1,3)"/>,<xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/longdate"/><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="start/time"/><!--
+ --><xsl:if test="end/time != ''"> - </xsl:if><!--
+ --><xsl:if test="end/dayname != start/dayname"><xsl:value-of select="substring(end/dayname,1,3)"/>, </xsl:if><!--
+ --><xsl:if test="end/longdate != start/longdate"><xsl:value-of select="end/longdate"/>, </xsl:if><!--
+ --><xsl:if test="end/time != ''"><xsl:value-of select="end/time"/></xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="location/address"/>.<!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:if test="cost!=''"><xsl:value-of select="cost"/>.</xsl:if><!--
+ --><xsl:text> </xsl:text><!--
+ --><xsl:value-of select="description"/><!--
+ --><xsl:text> </xsl:text><xsl:if test="status = 'CANCELLED'">(CANCELLED)</xsl:if><!--
+ --></description>
+ </item>
+ </xsl:template>
+
+ <!-- convert 2-digit utc month numeric values to
+ short month names as expected by RFC 822 -->
+ <xsl:template name="monthNumToName">
+ <xsl:param name="monthNum">00</xsl:param>
+ <xsl:choose>
+ <xsl:when test="$monthNum = '01'">Jan</xsl:when>
+ <xsl:when test="$monthNum = '02'">Feb</xsl:when>
+ <xsl:when test="$monthNum = '03'">Mar</xsl:when>
+ <xsl:when test="$monthNum = '04'">Apr</xsl:when>
+ <xsl:when test="$monthNum = '05'">May</xsl:when>
+ <xsl:when test="$monthNum = '06'">Jun</xsl:when>
+ <xsl:when test="$monthNum = '07'">Jul</xsl:when>
+ <xsl:when test="$monthNum = '08'">Aug</xsl:when>
+ <xsl:when test="$monthNum = '09'">Sep</xsl:when>
+ <xsl:when test="$monthNum = '10'">Oct</xsl:when>
+ <xsl:when test="$monthNum = '11'">Nov</xsl:when>
+ <xsl:when test="$monthNum = '12'">Dec</xsl:when>
+ <xsl:otherwise>badMonthNum</xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+</xsl:stylesheet>
More information about the Bedework-commit
mailing list