<%@ include file="/plugins/setup/setup_include_header.jsp" %><%-- __________________________________________________________________________________________ Used by calendar_db_calendarid_activemonthsdata_YYYYMM.rzt to create xml for month view and calendar_db_calendarid_activeweeksdata_YYYYMM.rzt to create xml file for week view =============================================================== *** DEPRICATED use: calendar3.xml_event_period_data_alt_include.jsp *** =============================================================== __________________________________________________________________________________________ --%><% String TEMPLATE_VERSION = "07-28-2012"; %><%@include file="/plugins/calendar/calendar3.xml_common_include.jsp"%><% try { rz.baseurl(); //keeps embedded urls relative to site (not this folder) //----- calendarid from dependent record rz.fetch("calendar_mapping","calendarid"); String this_calendarid = rz.content; xmlBuilder.addLog("this_calendarid",rz.content); xmlBuilder.addLog("calendar_mapping:dependent_recordid",rz.recordid); boolean isBeta = (rz.gettemplate("calendar_app_javascript_fullview") == null); attr = new ArrayList(); if (isBeta) attr.add("format=3.1"); else attr.add("format=3.2"); //XML-------------------------------- xmlBuilder.addTopXML("events",attr,TEMPLATE_VERSION); //----------------------------------- //----- Build filter for this calendar id (if at least one mapping entry exists) // 12-19-2011 DCO TODO:??? what happens if filter is blank? String filter = ""; String fieldname = "year_month"; String view = request.getParameter("view"); xmlBuilder.addLog("view",view); if (view != null && view.equals("week")) fieldname = "year_week"; //----- needed because importer does not profile records //////rz.fetch("calendar_mapping", "counter", "", "calendar_mapping.eventid=-1"); //------------------------------------------------------------------------- //----- Read year_month or year_week rz.fetch("calendar_mapping",fieldname); xmlBuilder.addLog("calendar_mapping",rz.content); /* //---- Trigger publish using calendar_events list if (rz.content.indexOf(" ") == -1) //not blank year_month or year_week filter = "calendarid=" + this_calendarid + " and " + fieldname + "=" + rz.content; addLog("calendar_events filter",filter + " (triggers publish)"); rz.listsetup("calendar_events","",filter,""); */ //----- Mapping filter filter = "calendarid=" + this_calendarid + " and " + fieldname + "=" + rz.content; xmlBuilder.addLog("calendar_mapping filter",filter + " (finds events)"); String value = ""; %><% xmlBuilder.addLog("number of events (rz.listlength)",rz.listlength); while ( rz.listnext() ) { if (rz.listindex < 0) break; //no active records (e.g. no information available) //rz.fetch("calendar_mapping", "counter"); //for debugging String eventid = rz.fetch("calendar_mapping", "eventid"); String mapid = rz.recordid; String event_where = "_recordid=" + eventid; String event_calendarid = rz.fetch("calendar_events", "calendarid", "", event_where); xmlBuilder.addLog("---------------------------------------------------------------------------------"); xmlBuilder.addLog("mapid=" + mapid + " eventid=" + eventid + " event_calendarid=" + event_calendarid); xmlBuilder.addLog("event_where",event_where + (rz.nodata ? " event deleted" : "")); if (rz.nodata) continue; String rollup = rz.fetch("calendar_events", "rollup","",event_where); rollup = ""; //***** disable rollup ***** %><% attr.clear(); attr.add("id=" + rz.recordid); attr.add("calendarid=" + event_calendarid); //XML-------------------- // open event tag xmlBuilder.addXML("event",attr,null); //------------------------ rz.fetch("calendar_events","event_name","",event_where); xmlBuilder.addXML("name",rz.content,true); String begin_date = rz.fetch("calendar_events","begin_date","",event_where); xmlBuilder.addXML("date_begin",begin_date); String end_date = rz.fetch("calendar_events","end_date","",event_where); String duration = rz.fetch("calendar_events","duration","",event_where); String repeat = rz.fetch("calendar_events","repeat","",event_where); if (duration.length() == 0 && repeat.length() == 0) end_date = begin_date; xmlBuilder.addXML("date_end",end_date); value = rz.fetch("calendar_events","start_time_hours","",event_where) + ":" + rz.fetch("calendar_events","start_time_minutes","",event_where); if (value.equals(":")) value = ""; xmlBuilder.addXML("time_begin",value); String duration_units = rz.fetch("calendar_events","duration_units","",event_where); value = duration + duration_units; xmlBuilder.addXML("duration",value); if (rz.content.equals("min")) duration_units = "Minute"; else if (rz.content.equals("hrs")) duration_units = "Hour"; else if (rz.content.equals("days")) duration_units = "Day"; if (StringUtils.toInt(duration) > 1) duration_units += "s"; value = duration.length() > 0 ? duration + " " + duration_units : ""; xmlBuilder.addXML("duration_formatted",value); xmlBuilder.addXML("notable",rz.fetch("calendar_events","notable","",event_where)); //----- Unpack repeat options String[] repeatOptions = StringUtils.split(repeat.replaceAll("##","# #"),"#"); if (repeatOptions.length == 0) xmlBuilder.addXML("repeat",repeat); else { xmlBuilder.addLog("repeat",repeat); xmlBuilder.addXML("repeat",repeatOptions[0]); //backward compatibility xmlBuilder.addXML("repeatUnits",repeatOptions[0]); if (repeatOptions.length > 1) xmlBuilder.addXML("repeatCount",repeatOptions[1]); if (repeatOptions.length > 2) xmlBuilder.addXML("repeatOther",repeatOptions[2]); if (repeatOptions.length > 3) xmlBuilder.addXML("repeatDesc",repeatOptions[3]); } //----- Summary DB field only used for DATES (no field on edit form) String summary = rz.fetch("calendar_events","summary","",event_where); if (isBeta) xmlBuilder.addXML("summary",summary); else { xmlBuilder.addXML("summary",""); //empty string in case iPhone references if (summary.indexOf("DATES:") == 0 && summary.length() > 6) xmlBuilder.addXML("dates",summary.substring(6),false); //false for DATES:... } %><% xmlBuilder.addXML("detail",rz.content,true); xmlBuilder.addXML("contact_name",rz.fetch("calendar_events","contact_name","",event_where)); xmlBuilder.addXML("contact_email",rz.fetch("calendar_events","contact_email","",event_where)); xmlBuilder.addXML("contact_phone",rz.fetch("calendar_events","contact_phone","",event_where)); xmlBuilder.addXML("signup_form",rz.fetch("calendar_events","signup_form","",event_where)); if (rz.content.equals("yes")) xmlBuilder.addXML("signup_form_url","calendar_view_common/calendar_main_signup.html#"+eventid); else xmlBuilder.addXML("signup_form_url",""); xmlBuilder.addXML("event_coordinator_name",rz.fetch("calendar_events","event_coordinator_name","",event_where)); xmlBuilder.addXML("event_coordinator_email",rz.fetch("calendar_events","event_coordinator_email","",event_where)); xmlBuilder.addXML("event_coordinator_phone",rz.fetch("calendar_events","event_coordinator_phone","",event_where)); xmlBuilder.addXML("supervisor_email",rz.fetch("calendar_events","supervisor_email","",event_where)); xmlBuilder.addXML("date_time_stamp",rz.fetch("calendar_events","date_time_stamp","",event_where)); xmlBuilder.addXML("rollup",rz.fetch("calendar_events","rollup","",event_where)); //XML------------------- // close event tag xmlBuilder.closeXML("event"); //---------------------- %><% } %><% xmlBuilder.closeLog(); //XML-------------------- // close events tag xmlBuilder.closeXML("events"); //----------------------- out.print(xmlBuilder.getXml()); } catch (Exception e) { e.printStackTrace(); } %>