<%@ include file="/plugins/setup/setup_include_header.jsp" %><%-- __________________________________________________________________________________________ Used by calendar_db_calendarid_activemonth_list.rzt to create xml for list of months and calendar_db_calendarid_activeweek_list rzt to create xml file for list of weeks Create a list of periods that have events (YYYYMM or YYYYWW) for each calendar. __________________________________________________________________________________________ --%><% String VERSION = "01-19-2012"; %><%@include file="/plugins/calendar/calendar.xml_common_include.jsp"%><% xmlBuilder.addTopXML("periods",VERSION); rz.fetch("calendar_config","default_calendar_name"); String masterid = rz.content; rz.fetch("calendar_names","_recordid"); String calendarid = rz.content; String fieldname = "year_month"; String view = request.getParameter("view"); if (view != null && view.equals("week")) fieldname = "year_week"; xmlBuilder.addXML((view+"s",null); //" output="none" options="noemptylistmessage" filter=""><% while ( rz.listnext() ) { if (rz.listindex < 0) break; //no active records (e.g. no information available) if (rz.isgroupheader) havePeriod = false; //reset flag if year_month changes if (havePeriod) continue; //skip if already have this year_month //----- If not master calendar, not current calendar nor rolled up to this calendar, skip if (!masterid.equals(calendarid) && !rz.fetch("calendar_events", "calendarid").equals(calendarid) && (rz.fetch("calendar_events", "rollup") + "|").indexOf(calendarid+"|") == -1) continue; //skip this year_month %><% xmlBuilder.addLog("--------------------------------------------------------------------------"); String periodStr = rz.fetch("calendar_events",fieldname); xmlBuilder.addLog( periodStr + " " + rz.fetch("calendar_events","year") + "-" + rz.fetch("calendar_events",fieldname) + " (eventid=" + rz.recordid + ") calendarid=" + rz.fetch("calendar_events","calendarid") + " rollup=" + rz.fetch("calendar_events", "rollup") ); attr.clear(); if (periodStr.length() < 4) xmlBuilder.addLog("Year missing in field" + fieldname); else { attr.add("year=" + periodStr.substring(0,4)); if (periodStr.length() < 6) xmlBuilder.addLog(fieldname.substring(5) + " missing after year in field: " + fieldname); else attr.add(view + "=" + periodStr.substring(4,6)); } //----- if year and week or month found, xmlBuilder.addXML( and mark period processed if (attr.size() > 0) { havePeriod = true; //flag to skip this period xmlBuilder.addXML((view,periodStr); } %><% } %><% xmlBuilder.closeXML(view+"s"); //----- Add log entries to xml for debugging (cannot be top level tag) xmlBuilder.closeLog(); //----- Close top level tag and Output the XML xmlBuilder.closeXML("periods"); out.print(xmlBuilder.getXml()); %>