/*
*+------------------------------------------------------------------------+
*| Licensed Materials - Property of IBM
*| BI and PM: prmt
*| (C) Copyright IBM Corp. 2002, 2014
*|
*| US Government Users Restricted Rights - Use, duplication or
*| disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
*|
*+------------------------------------------------------------------------+
*/
////////////////////////////////////////////////////////////////////
// selectDate HTML generation functions
////////////////////////////////////////////////////////////////////
// Function to create date prompt control
// sPromptId: The id of the prompt control (String)
// sFormName: Name of form control to submit selections to the server (String)
// sParameterName: Name of control element to be submitted to report server (String)
// sSubmitType: 'default' will submit as a standard form (String)
// 'XML' will convert the submission to XML and submit
// sPrmtDefaultDate: a date to start the control (String)
// sDefaultValue: Default value for prompt control. If prompt control is a range, this represents the start value of the range. (String)
// sStartOfWeek: First day of week: ['Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday'] (String)
// sCalendar: Calendar type: ['Gregorian'|'Imperial'] (String)
// sSelectUI: UI of control: Textbox with calendar popup (editbox) or Inline calendar (calendar) ['editbox'|'calendar']
// sSelectDateUI: Textbox with calendar popup (editbox) or Inline calendar (calendar) ['editbox'|'calendar']
// sInputOrder: ['YMD'|'DMY'|...] (String)
// sFirstDate: the minimum acceptable date (String)
// sLastDate: the maximum acceptable date (String)
// iDateTime: 0 = datetime e.g. yyyy-mm-dd 00:00:00.000, 1 = date e.g. yyyy-mm-dd [0|1] (Integer)
// iInitialState: Range controls only. Controls whether to check radio buttons (Integer)
// RANGE_NO_VALUE will select lowest to highest
// RANGE_START_VALUE will select from a particular value to highest
// RANGE_END_VALUE will select from lowest to a particular value
// RANGE_BOUND_VALUE will select a range
// RANGE_EQUAL_VALUE will select a single value
// bRequired: If the control is a required field. (Boolean)
// bSuppressDisabled: Suppress checkbox that allows user to disable control (required for dateTime controls) (Boolean)
// bHideAdornments: Hide icons (e.g. star icon for required controls) (Boolean)
// bSuppressExtraPromptNames: Force report server to handle multiple prompt controls as a single entity (Boolean)
// e.g. treat datetime control as a single date time, as opposed to treating date and time independntly
// bMultiSelect: If control can accomodate more than one value. (Boolean)
// bRange: If control is a range. (Boolean)
// sStyle: Style of prompt control (String)
// sSelectDateEditBoxStyle: Style of date edit box (String)
// sSelectDateYearsStyle: Style of years (String)
// sSelectDateMonthsStyle: Style of months (String)
// sSelectDateDaysOfWeekStyle: Style of days of the week (String)
// sSelectDateDaysStyle: Style of days (String)
// sEndRange: Optional. Only used for range controls. The end value of the range. (String)
function genSelectDateHTML(sPromptId, sFormName, sParameterName, sSubmitType, sPrmtDefaultDate, sDefaultValue, sStartOfWeek, sCalendar, sSelectUI, sSelectDateUI, sInputOrder, sFirstDate, sLastDate, iDateTime, iInitialState, bRequired, bSuppressDisabled, bHideAdornments, bSuppressExtraPromptNames, bMultiSelect, bRange, sStyle, sSelectDateEditBoxStyle, sSelectDateYearsStyle, sSelectDateMonthsStyle, sSelectDateDaysOfWeekStyle, sSelectDateDaysStyle, sEndRange, sPopupLabel, sPopupZIndex)
{
var oProperties = sPromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: sPromptId,
formName: sFormName,
parameterName: sParameterName,
submitType: sSubmitType,
prmtDefaultDate: sPrmtDefaultDate,
defaultValue: sDefaultValue,
startOfWeek: sStartOfWeek,
calendar: sCalendar,
selectUI: sSelectUI,
selectDateUI: sSelectDateUI,
inputOrder: sInputOrder,
firstDate: sFirstDate,
lastDate: sLastDate,
dateTime: iDateTime,
initialState: iInitialState,
required: bRequired,
suppressDisabled: bSuppressDisabled,
hideAdornments: bHideAdornments,
suppressExtraPromptNames: bSuppressExtraPromptNames,
multi: bMultiSelect,
range: bRange,
style: sStyle,
selectDateEditBoxStyle: sSelectDateEditBoxStyle,
selectDateYearsStyle: sSelectDateYearsStyle,
selectDateMonthsStyle: sSelectDateMonthsStyle,
selectDateDaysOfWeekStyle: sSelectDateDaysOfWeekStyle,
selectDateDaysStyle: sSelectDateDaysStyle,
endRange: sEndRange,
popupLabel: sPopupLabel,
popupZindex: sPopupZIndex
};
}
oProperties.startRange = oProperties.defaultValue;
if (oProperties.multi)
{
if (!oProperties.range) {
genSelectDateMultipleHTML(oProperties);
}
else {
genSelectDateRangeMultipleHTML(oProperties);
}
}
else
{
if (oProperties.range) {
genSelectDateRangeHTML(oProperties);
}
else {
genSelectDateSingleHTML(oProperties);
}
}
}
function genSelectDateSingleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_PrmtDefaultDate, s_DefaultValue, s_StartOfWeek, s_Calendar, s_SelectUI, s_SelectDateUI, s_InputOrder, s_FirstDate, s_LastDate, i_DateTime, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle, sPopupLabel)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
prmtDefaultDate: s_PrmtDefaultDate,
defaultValue: s_DefaultValue,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
selectDateUI: s_SelectDateUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
dateTime: i_DateTime,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
// string to append to onClick events of attributes in range prompt controls to focus
// radio button when user clicks on calendar.
var sRangeOnClick = K_PRMT_sEMPTY;
if (sPromptId.search("range_from") != -1) {
sRangeOnClick = sPromptId.substring(10) + ".fromGotFocus";
}
if (sPromptId.search("range_to") != -1) {
sRangeOnClick = sPromptId.substring(8) + ".toGotFocus";
}
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
// determine the day of the week
var iStartDay = 0;
if (oProperties.startOfWeek == "Monday") {
iStartDay = 1;
}
else if (oProperties.startOfWeek == "Tuesday") {
iStartDay = 2;
}
else if (oProperties.startOfWeek == "Wednesday") {
iStartDay = 3;
}
else if (oProperties.startOfWeek == "Thursday") {
iStartDay = 4;
}
else if (oProperties.startOfWeek == "Friday") {
iStartDay = 5;
}
else if (oProperties.startOfWeek == "Saturday") {
iStartDay = 6;
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
// check for emperor time
var intType = 0;
if (oProperties.calendar == "Imperial") {
intType = 1;
}
var oErrorImg = "document." + sFormName + ".imgTest" + sPromptId;
if (oProperties.hideAdornments) {
oErrorImg = null;
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oDS_" + sPromptId;
}
// add a background-color for the background
var sSelectDateCalendarStyle = "clsSelectDateCalendar";
if (oProperties.selectUI == "editBox") {
sSelectDateCalendarStyle = "clsSelectDateCalendarDialog";
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
" " +
"
" +
// ensure that calendar appears on top of select controls
"";
renderPromptControlHTML("selectDate" + sPromptId, HTMLOut);
var JSOut = K_PRMT_sEMPTY;
if (oProperties.selectUI == "editBox" || oProperties.selectDateUI == "editBox")
{
JSOut = "this.pickerControl" + sPromptId + " = new CDatePicker(document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['txtDate" + sPromptId + "'], document.getElementById('dialogDatePicker" + sPromptId + "'), '" + sPromptId + "', '" + oProperties.defaultValue + "', 0, " + intType + ", '" + oProperties.inputOrder + "', " + iStartDay + ", " + oProperties.dateTime + ", '" + oProperties.firstDate + "', '" + oProperties.lastDate + "', " + oProperties.required + ", '" + oProperties.submitType + "', " + oErrorImg + ", '" + getCVId(oProperties) + "'," + oProperties.popupZindex + " );";
}
else
{
JSOut = "this.pickerControl" + sPromptId + " = new CDatePicker(document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.getElementById('dialogDatePicker" + sPromptId + "'), '" + sPromptId + "', '" + oProperties.defaultValue + "', 1, " + intType + ", '" + oProperties.inputOrder + "', " + iStartDay + ", " + oProperties.dateTime + ", '" + oProperties.firstDate + "', '" + oProperties.lastDate + "', " + oProperties.required + ", '" + oProperties.submitType + "', " + oErrorImg + ", '" + getCVId(oProperties) + "'," + oProperties.popupZindex + " );";
}
var sCVObj = getCVInstance(oProperties);
JSOut += sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('pickerControl" + sPromptId + "');" +
sCVObj + "datePickerObserverArray = " + sCVObj + "datePickerObserverArray.concat('pickerControl" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_PrmtDefaultDate, s_DefaultValue, s_StartOfWeek, s_Calendar, s_SelectUI, s_SelectDateUI, s_InputOrder, s_FirstDate, s_LastDate, i_DateTime, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
prmtDefaultDate: s_PrmtDefaultDate,
defaultValue: s_DefaultValue,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
selectDateUI: s_SelectDateUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
dateTime: i_DateTime,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oDM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
" " +
"";
if (!oProperties.hideAdornments && oProperties.required) {
HTMLOut +=
" ";
}
HTMLOut +=
PMT_UIM_CHOICES +
" " +
" " +
"" +
// selectDateSingle prompt control
" " +
"" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectDate" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectDateSingleHTML(" + generatePromptProperties(oProperties, {
id: "Single" + sPromptId,
formName: sFormName,
parameterName: "D_" + oProperties.parameterName,
defaultValue: K_PRMT_sEMPTY,
startOfWeek: K_PRMT_sEMPTY,
calendar: K_PRMT_sEMPTY,
inputOrder: K_PRMT_sEMPTY,
firstDate: oProperties.firstDate,
lastDate: oProperties.lastDate,
required: false,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleDatePicker" + sPromptId + ".insert()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleDatePicker" + sPromptId + ".remove()', 'removeButton" + sPromptId + "');" +
"this.multipleDatePicker" + sPromptId + " = new CMultipleDatePicker(pickerControlSingle" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleDatePicker" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleDatePicker" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateRangeHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_PrmtDefaultDate, s_StartRange, s_EndRange, s_StartOfWeek, s_Calendar, s_SelectUI, s_SelectDateUI, s_InputOrder, s_FirstDate, s_LastDate, i_DateTime, i_InitialState, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
prmtDefaultDate: s_PrmtDefaultDate,
startRange: s_StartRange,
endRange: s_EndRange,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
selectDateUI: s_SelectDateUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
dateTime: i_DateTime,
initialState: i_InitialState,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//if there is a start and end date, but no default then use the start and end dates to bound the range.
oProperties.startRange = ((typeof oProperties.firstDate != K_PRMT_sUNDEFINED) && oProperties.firstDate) && ((typeof oProperties.startRange == K_PRMT_sUNDEFINED) || !oProperties.startRange) ? oProperties.firstDate : oProperties.startRange;
oProperties.endRange = ((typeof oProperties.lastDate != K_PRMT_sUNDEFINED) && oProperties.lastDate) && ((typeof oProperties.endRange == K_PRMT_sUNDEFINED) || !oProperties.endRange) ? oProperties.lastDate : oProperties.endRange;
if(!oProperties.startRange) { oProperties.startRange = K_PRMT_sEMPTY;}
if(!oProperties.endRange) { oProperties.endRange = K_PRMT_sEMPTY;}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"";
renderPromptControlHTML("selectDate" + sPromptId, HTMLOut);
// Range Control
var JSOut = "genSelectDateSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_from" + sPromptId,
formName: sFormName,
parameterName: "range_from" + oProperties.parameterName,
defaultValue: oProperties.startRange,
startOfWeek: K_PRMT_sEMPTY,
calendar: K_PRMT_sEMPTY,
inputOrder: K_PRMT_sEMPTY,
style: cssParser(oProperties.style, "visibility"),
suppressDisabled: true,
suppressExtraPromptNames: true}) + ");" +
"genSelectDateSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_to" + sPromptId,
formName: sFormName,
parameterName: "range_to" + oProperties.parameterName,
defaultValue: oProperties.endRange,
startOfWeek: K_PRMT_sEMPTY,
calendar: K_PRMT_sEMPTY,
style: cssParser(oProperties.style, "visibility"),
inputOrder: K_PRMT_sEMPTY,
suppressDisabled: true,
suppressExtraPromptNames: true}) + ");";
if (oProperties.required) {
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], null, pickerControlrange_from" + sPromptId + ", null, null, pickerControlrange_to" + sPromptId + ", null, 'date', true, '" + oProperties.submitType + "', null, '" + getCVId(oProperties) + "');";
}
else {
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['fromValue" + sPromptId + "'][0], pickerControlrange_from" + sPromptId + ", null, document.forms['" + sFormName + "'].elements['toValue" + sPromptId + "'][0], pickerControlrange_to" + sPromptId + ", null, 'date', false, '" + oProperties.submitType + "' , " + oProperties.initialState + ", '" + getCVId(oProperties) + "');";
}
var sCVObj = getCVInstance(oProperties);
JSOut += sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('range" + sPromptId + "');" +
sCVObj + "rangeObserverArray = " + sCVObj + "rangeObserverArray.concat('range" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateRangeMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_PrmtDefaultDate, s_StartRange, s_EndRange, s_StartOfWeek, s_Calendar, s_SelectUI, s_SelectDateUI, s_InputOrder, s_FirstDate, s_LastDate, i_DateTime, i_InitialState, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
prmtDefaultDate: s_PrmtDefaultDate,
startRange: s_StartRange,
endRange: s_EndRange,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
selectDateUI: s_SelectDateUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
dateTime: i_DateTime,
initialState: i_InitialState,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
if(!oProperties.startRange) { oProperties.startRange = K_PRMT_sEMPTY;}
if(!oProperties.endRange) { oProperties.endRange = K_PRMT_sEMPTY;}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstDRM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
" " +
"" +
"" +
"" +
" " +
" " +
"
" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectDate" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectDateRangeHTML(" + generatePromptProperties(oProperties, {
id: "Range" + sPromptId,
formName: sFormName,
parameterName: "r_" + oProperties.parameterName,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".insertChoiceList()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".removeChoiceList()', 'removeButton" + sPromptId + "');" +
"this.multipleRange" + sPromptId + " = new CMultipleRange(rangeRange" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleRangeFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", '" + sPromptId + "', document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleRange" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleRange" + sPromptId + "');" +
"multipleRange" + sPromptId + ".initChoiceList();";
executePromptControlJS(JSOut);
}
////////////////////////////////////////////////////////////////////
// selectTime HTML generation functions
////////////////////////////////////////////////////////////////////
// Function to create a time prompt control
// sPromptId: The id of the prompt control (String)
// sFormName: Name of form control to submit selections to the server (String)
// sParameterName: Name of control element to be submitted to report server (String)
// sSubmitType: 'default' will submit as a standard form (String)
// 'XML' will convert the submission to XML and submit
// sDefaultValue: Default value for prompt control. If prompt control is a range, this represents the start value of the range. (String)
// sSelectUI: UI of control: Textfields (editbox) or Inline clock (clock) ['editbox'|'clock'] (String)
// sTimeZone: String representing the timezones (e.g. GMT). Default value is 'GMT'. (String)
// sHourFormat: ('hh' = 01, 'h' = 1) (String)
// sMinuteFormat: ('mm' = 01, 'm' = 1) (String)
// sSecondFormat: ('ss' = 01, 's' = 1) (String)
// iType: Controls type of clock (Integer)
// 0 = 12 hour clock, right AM/PM,
// 1 = 12 hour clock, left AM/PM
// 2 = 24 hour clock, no AM/PM
// iDisplay: Controls the display (Integer)
// 0 = h:m:s:ms
// 1 = h:m:s
// 2 = h:m
// iMode: 0 = static, 1 = live clock (Integer)
// iInitialState: Range controls only. Controls whether to check radio buttons (Integer)
// RANGE_NO_VALUE will select lowest to highest
// RANGE_START_VALUE will select from a particular value to highest
// RANGE_END_VALUE will select from lowest to a particular value
// RANGE_BOUND_VALUE will select a range
// RANGE_EQUAL_VALUE will select a single value
// bRequired: If the control is a required field. (Boolean)
// bSuppressDisabled: Suppress checkbox that allows user to disable control (required for dateTime controls) (Boolean)
// bHideAdornments: Hide icons (e.g. star icon for required controls) (Boolean)
// bSuppressExtraPromptNames: Force report server to handle multiple prompt controls as a single entity (Boolean)
// e.g. treat datetime control as a single date time, as opposed to treating date and time independntly
// bMulti: If control can accomodate more than one value. (Boolean)
// bRange: If control is a range. (Boolean)
// sEndTime: Optional. Only used for range controls. The end value of the range. (String)
function genSelectTimeHTML(sPromptId, sFormName, sParameterName, sSubmitType, sDefaultValue, sSelectUI, sTimeZone, sHourFormat, sMinuteFormat, sSecondFormat, iType, iDisplay, iMode, iInitialState, bRequired, bSuppressDisabled, bHideAdornments, bSuppressExtraPromptNames, bMulti, bRange, sEndTime, sStyle)
{
var oProperties = sPromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: sPromptId,
formName: sFormName,
parameterName: sParameterName,
submitType: sSubmitType,
defaultValue: sDefaultValue,
selectUI: sSelectUI,
timeZone: sTimeZone,
hourFormat: sHourFormat,
minuteFormat: sMinuteFormat,
secondFormat: sSecondFormat,
type: iType,
display: iDisplay,
mode: iMode,
initialState: iInitialState,
required: bRequired,
suppressDisabled: bSuppressDisabled,
hideAdornments: bHideAdornments,
suppressExtraPromptNames: bSuppressExtraPromptNames,
multi: bMulti,
range: bRange,
style: sStyle,
endTime: sEndTime
};
}
oProperties.startTime = oProperties.defaultValue;
if (oProperties.multi)
{
if (!oProperties.range) {
genSelectTimeMultipleHTML(oProperties);
}
else {
genSelectTimeRangeMultipleHTML(oProperties);
}
}
else
{
if (oProperties.range) {
genSelectTimeRangeHTML(oProperties);
}
else {
genSelectTimeSingleHTML(oProperties);
}
}
}
function genSelectTimeSingleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultValue, s_SelectUI, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_Type, i_Display, i_Mode, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultValue: s_DefaultValue,
selectUI: s_SelectUI,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
type: i_Type,
display: i_Display,
mode: i_Mode,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oTS_" + sPromptId;
}
var oSubmitField = "document.forms['" + sFormName + "'].elements['" + sParamName + "']";
var oFormField = "document.forms['" + sFormName + "'].elements['" + formElementName + "']";
var oHours = "document.forms['" + sFormName + "'].elements['hours" + sPromptId + "']";
var oMinutes = "document.forms['" + sFormName + "'].elements['minutes" + sPromptId + "']";
var oSeconds = "document.forms['" + sFormName + "'].elements['seconds" + sPromptId + "']";
var oMilliseconds = "document.forms['" + sFormName + "'].elements['milliseconds" + sPromptId + "']";
var oAMPM = "document.forms['" + sFormName + "'].elements['AMPM" + sPromptId + "']";
var oImgTest = "document.forms['" + sFormName + "'].elements['imgTest" + sPromptId + "']";
if (oProperties.hideAdornments) {
oImgTest = null;
}
var bInline = true;
if (oProperties.selectUI == "clock") {
bInline = true;
}
else if (oProperties.selectUI == "editBox") {
bInline = false;
}
var clockObject = null;
var clockBox = null;
if (bInline)
{
clockObject = "clockDisplay" + sPromptId;
clockBox = "document.getElementById('clock" + sPromptId + "')";
}
var timeZone = oProperties.timeZone;
if (!timeZone) {
timeZone = "GMT";
}
var hrFormat = oProperties.hourFormat;
if (!hrFormat) {
hrFormat = "hh";
}
var minFormat = oProperties.minuteFormat;
if (!minFormat) {
minFormat = "mm";
}
var secFormat = oProperties.secondFormat;
if (!secFormat) {
secFormat = "ss";
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
" " +
"";
renderPromptControlHTML("selectTime" + sPromptId, HTMLOut);
var JSOut = K_PRMT_sEMPTY;
if (bInline)
{
JSOut += "this.clockDisplay" + sPromptId + " = new CClock(document.getElementById('clock" + sPromptId + "'), null, 'clockDisplay" + sPromptId + "', " + oProperties.mode + ", " + bShowSecondHand + ", '" + getCVId(oProperties) + "');";
}
var sCVObj = getCVInstance(oProperties);
JSOut += "this.timePicker" + sPromptId + " = new CTimePicker(" + oSubmitField + ", " + oFormField + ", " + oHours + ", " + oMinutes + ", " + oSeconds + ", " + oMilliseconds + ", " + oAMPM + ", " + oImgTest + ", " + clockBox + ", document.getElementById('editBox" + sPromptId + "'), 'timePicker" + sPromptId + "', " + oProperties.type + ", " + oProperties.display + ", " + bInline + ", '" + timeZone + "', '" + hrFormat + "', '" + minFormat + "', '" + secFormat + "', " + oProperties.mode + ", '" + clockObject + "', '" + oProperties.defaultValue + "', " + oProperties.required + ", '" + oProperties.submitType + "', '" + getCVId(oProperties) + "', '"+ sPromptId +"');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('timePicker" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectTimeMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultValue, s_SelectUI, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_Type, i_Display, i_Mode, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, b_Inline, s_Style)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultValue: s_DefaultValue,
selectUI: s_SelectUI,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
type: i_Type,
display: i_Display,
mode: i_Mode,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
inline: b_Inline,
style: s_Style
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstTM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
" " +
"";
if (!oProperties.hideAdornments && oProperties.required)
{
HTMLOut +=
" ";
}
HTMLOut +=
PMT_UIM_CHOICES +
" " +
" " +
"" +
// selectTimeSingle control prompt
" " +
"" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectTime" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "Single" + sPromptId,
formName: sFormName,
defaultValue: K_PRMT_sEMPTY,
required: false,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true})+ ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleTimePicker" + sPromptId + ".insert()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleTimePicker" + sPromptId + ".remove()', 'removeButton" + sPromptId + "');" +
"this.multipleTimePicker" + sPromptId + " = new CMultipleTimePicker(timePickerSingle" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleTextFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleTimePicker" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleTimePicker" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectTimeRangeHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_StartTime, s_EndTime, s_SelectUI, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_Type, i_Display, i_Mode, i_InitialState, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
startTime: s_StartTime,
endTime: s_EndTime,
selectUI: s_SelectUI,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
type: i_Type,
display: i_Display,
mode: i_Mode,
initialState: i_InitialState,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"";
renderPromptControlHTML("selectTime" + sPromptId, HTMLOut);
var JSOut = "genSelectTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_from" + sPromptId,
formName: sFormName,
parameterName: "range_from" + oProperties.parameterName,
defaultValue: oProperties.startTime,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genSelectTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_to" + sPromptId,
formName: sFormName,
parameterName: "range_to" + oProperties.parameterName,
defaultValue: oProperties.endTime,
style: cssParser(oProperties.style,"visibility"),
suppressDisabled: true,
suppressExtraPromptNames: true}) + ");";
if (oProperties.required)
{
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], null, timePickerrange_from" + sPromptId + ", null, null, timePickerrange_to" + sPromptId + ", null, 'time', true, '" + oProperties.submitType + "', null, '" + getCVId(oProperties) + "');";
}
else
{
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['fromValue" + sPromptId + "'][0], timePickerrange_from" + sPromptId + ",null, document.forms['" + sFormName + "'].elements['toValue" + sPromptId + "'][0], timePickerrange_to" + sPromptId + ", null, 'datetime', false, '" + oProperties.submitType + "', " + oProperties.initialState + ", '" + getCVId(oProperties) + "');";
}
var sCVObj = getCVInstance(oProperties);
JSOut += sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('range" + sPromptId + "');" +
sCVObj + "rangeObserverArray = " + sCVObj + "rangeObserverArray.concat('range" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectTimeRangeMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_StartTime, s_EndTime, s_SelectUI, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_Type, i_Display, i_Mode, i_InitialState, b_Required, b_SuppressDisabled, b_HideAdornments, b_SuppressExtraPromptNames, s_Style)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
startTime: s_StartTime,
endTime: s_EndTime,
selectUI: s_SelectUI,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
type: i_Type,
display: i_Display,
mode: i_Mode,
initialState: i_InitialState,
required: b_Required,
suppressDisabled: b_SuppressDisabled,
hideAdornments: b_HideAdornments,
suppressExtraPromptNames: b_SuppressExtraPromptNames,
style: s_Style
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstTRM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
// selectTimeRange prompt control
" " +
"" +
"" +
"" +
" " +
" " +
"
" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectTime" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectTimeRangeHTML(" + generatePromptProperties(oProperties, {
id: "r_" + sPromptId,
formName: sFormName,
parameterName: "r_" + oProperties.parameterName,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".insertChoiceList()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".removeChoiceList()', 'removeButton" + sPromptId + "');" +
"this.multipleRange" + sPromptId + " = new CMultipleRange(ranger_" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleRangeFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", '" + sPromptId + "', document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleRange" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleRange" + sPromptId + "');" +
"multipleRange" + sPromptId + ".initChoiceList();";
executePromptControlJS(JSOut);
}
////////////////////////////////////////////////////////////////////
// selectDateTime HTML generation functions
////////////////////////////////////////////////////////////////////
// Function to create a dateTime prompt control
// sPromptId: The id of the prompt control (String)
// sFormName: Name of form control to submit selections to the server (String)
// sParameterName: Name of control element to be submitted to report server (String)
// sSubmitType: 'default' will submit as a standard form (String)
// 'XML' will convert the submission to XML and submit
// sDefaultDate: Default date for prompt control. If prompt control is a range, this represents the start value of the range. (String)
// sDefaultTime: Default time for prompt control. If prompt control is a range, this represents the start value of the range. (String)
// sStartOfWeek: First day of week: ['Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday'] (String)
// sCalendar: Calendar type: ['Gregorian'|'Imperial'] (String)
// sSelectUI: UI of control (String)
// Textbox with calendar popup and text fields for times (editbox)
// Inline calendar and clock () ['editbox'|'']
// sInputOrder: ['YMD'|'DMY'|...] (String)
// sFirstDate: the minimum acceptable date (String)
// sLastDate: the maximum acceptable date (String)
// sTimeZone: String representing the timezones (e.g. GMT). Default value is 'GMT'. (String)
// sHourFormat: ('hh' = 01, 'h' = 1) (String)
// sMinuteFormat: ('mm' = 01, 'm' = 1) (String)
// sSecondFormat: ('ss' = 01, 's' = 1) (String)
// iDateTime: 0 = datetime e.g. yyyy-mm-dd 00:00:00.000, 1 = date e.g. yyyy-mm-dd [0|1] (Integer)
// iType: Controls type of clock (Integer)
// 0 = 12 hour clock, right AM/PM,
// 1 = 12 hour clock, left AM/PM
// 2 = 24 hour clock, no AM/PM
// iDisplay: Controls the display (Integer)
// 0 = h:m:s:ms
// 1 = h:m:s
// 2 = h:m
// iMode: 0 = static, 1 = live clock (Integer)
// iInitialState: Range controls only. Controls whether to check radio buttons (Integer)
// RANGE_NO_VALUE will select lowest to highest
// RANGE_START_VALUE will select from a particular value to highest
// RANGE_END_VALUE will select from lowest to a particular value
// RANGE_BOUND_VALUE will select a range
// RANGE_EQUAL_VALUE will select a single value
// bRequired: If the control is a required field. (Boolean)
// bHideAdornments: Hide icons (e.g. star icon for required controls) (Boolean)
// bSuppressDisabled: Suppress checkbox that allows user to disable control (required for dateTime controls) (Boolean)
// bXSDformat: Specify whether date times should be returned in XSD format (true, default) or SQL format (false) (Boolean)
// bMulti: If control can accomodate more than one value. (Boolean)
// bRange: If control is a range. (Boolean)
// sStyle: Style of prompt control (String)
// sSelectDateEditBoxStyle: Style of date edit box (String)
// sSelectDateYearsStyle: Style of years (String)
// sSelectDateMonthsStyle: Style of months (String)
// sSelectDateDaysOfWeekStyle: Style of days of the week (String)
// sSelectDateDaysStyle: Style of days (String)
// sEndDate: Optional. Only used for range controls. The end date of the range. (String)
// sEndTime: Optional. Only used for range controls. The end time of the range. (String)
function genSelectDateTimeHTML(sPromptId, sFormName, sParameterName, sSubmitType, sDefaultDate, sDefaultTime, sStartOfWeek, sCalendar, sSelectUI, sInputOrder, sFirstDate, sLastDate, sTimeZone, sHourFormat, sMinuteFormat, sSecondFormat, iDateTime, iType, iDisplay, iMode, iInitialState, bRequired, bHideAdornments, bSuppressDisabled, bXSDFormat, bMulti, bRange, sStyle, sSelectDateEditBoxStyle, sSelectDateYearsStyle, sSelectDateMonthsStyle, sSelectDateDaysOfWeekStyle, sSelectDateDaysStyle, sEndDate, sEndTime, bSuppressExtraPromptNames)
{
var oProperties = sPromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: sPromptId,
formName: sFormName,
parameterName: sParameterName,
submitType: sSubmitType,
defaultDate: sDefaultDate,
defaultTime: sDefaultTime,
startOfWeek: sStartOfWeek,
calendar: sCalendar,
selectUI: sSelectUI,
inputOrder: sInputOrder,
firstDate: sFirstDate,
lastDate: sLastDate,
timeZone: sTimeZone,
hourFormat: sHourFormat,
minuteFormat: sMinuteFormat,
secondFormat: sSecondFormat,
dateTime: iDateTime,
type: iType,
display: iDisplay,
mode: iMode,
initialState: iInitialState,
required: bRequired,
hideAdornments: bHideAdornments,
suppressDisabled: bSuppressDisabled,
xSDFormat: bXSDFormat,
multi: bMulti,
range: bRange,
style: sStyle,
selectDateEditBoxStyle: sSelectDateEditBoxStyle,
selectDateYearsStyle: sSelectDateYearsStyle,
selectDateMonthsStyle: sSelectDateMonthsStyle,
selectDateDaysOfWeekStyle: sSelectDateDaysOfWeekStyle,
selectDateDaysStyle: sSelectDateDaysStyle,
endDate: sEndDate,
endTime: sEndTime,
suppressExtraPromptNames: bSuppressExtraPromptNames
};
}
if (oProperties.multi)
{
if (!oProperties.range) {
genSelectDateTimeMultipleHTML(oProperties);
}
else {
genSelectDateTimeRangeMultipleHTML(oProperties);
}
}
else
{
if (oProperties.range) {
genSelectDateTimeRangeHTML(oProperties);
}
else {
genSelectDateTimeSingleHTML(oProperties);
}
}
}
function genSelectDateTimeSingleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultDate, s_DefaultTime, s_StartOfWeek, s_Calendar, s_SelectUI, s_InputOrder, s_FirstDate, s_LastDate, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_DateTime, i_Type, i_Display, i_Mode, b_Required, b_HideAdornments, b_SuppressDisabled, b_XSDFormat, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle, b_SuppressExtraPromptNames)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultDate: s_DefaultDate,
defaultTime: s_DefaultTime,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
dateTime: i_DateTime,
type: i_Type,
display: i_Display,
mode: i_Mode,
required: b_Required,
hideAdornments: b_HideAdornments,
suppressDisabled: b_SuppressDisabled,
xSDFormat: b_XSDFormat,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle,
suppressExtraPromptNames: b_SuppressExtraPromptNames
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
if (oProperties.selectUI == "editBox") {
oProperties.selectDateUI = "editBox";
}
else {
oProperties.selectDateUI = "calendar";
}
var sSelectTimeUI = "clock";
if (oProperties.selectUI == "editBox") {
sSelectTimeUI = "editBox";
}
var oErrorImg = "document." + sFormName + ".imgTest" + sPromptId;
if (oProperties.hideAdornments) {
oErrorImg = null;
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstDTS_" + sPromptId;
}
var HTMLOut = genHiddenInputHTML(sFormName, jsEncodeStr(formElementName), K_PRMT_sEMPTY);
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"";
if (!oProperties.required && !oProperties.suppressDisabled)
{
HTMLOut +=
"" +
" " +
" ";
}
if (!oProperties.hideAdornments && oProperties.required)
{
HTMLOut +=
"" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" ";
}
HTMLOut +=
"" +
"";
if (oProperties.selectUI == "editBox")
{
HTMLOut +=
"" +
// Single Date and Single Time prompt controls
"
" +
" " +
"" +
"
" +
" ";
}
else
{
HTMLOut +=
"" +
// Single Date and Single Time prompt controls
"
" +
"
" +
" ";
}
HTMLOut +=
"
" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectDateTime" + sPromptId, HTMLOut);
var JSOut = K_PRMT_sEMPTY;
if (oProperties.selectUI == 'editBox')
{
JSOut = "genSelectDateSingleHTML(" + generatePromptProperties(oProperties, {
id: sPromptId,
formName: sFormName,
parameterName: "D_" + oProperties.parameterName,
prmtDefaultValue: '-1',
defaultValue: K_PRMT_sEMPTY,
selectDateUI: 'editBox',
style: cssParser(oProperties.style,"visibility"),
required: false,
suppressDisabled: true,
suppressExtraPromptNames: true}) + ");" +
"genSelectTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: sPromptId,
formName: sFormName,
parameterName: "T_" + oProperties.parameterName,
defaultValue: oProperties.defaultTime,
required: false,
style: cssParser(oProperties.style,"visibility"),
suppressDisabled: true,
suppressExtraPromptNames: true}) + ");";
}
else
{
JSOut = "genSelectDateSingleHTML(" + generatePromptProperties(oProperties, {
id: sPromptId,
formName: sFormName,
parameterName: "D_" + oProperties.parameterName,
prmtDefaultValue: '-1',
defaultValue: K_PRMT_sEMPTY,
required: false,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genSelectTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: sPromptId,
formName: sFormName,
parameterName: "T_" + oProperties.parameterName,
defaultValue: oProperties.defaultTime,
required: false,
suppressDisabled: true,
hideAdornments: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");";
}
var sCVObj = getCVInstance(oProperties);
JSOut += "this.selectDateTime" + sPromptId + " = new CDateTime(pickerControl" + sPromptId + ", timePicker" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['" + formElementName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', '" + oProperties.defaultDate + "', " + oProperties.xSDFormat + ", '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('selectDateTime" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateTimeMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultDate, s_DefaultTime, s_StartOfWeek, s_Calendar, s_SelectUI, s_InputOrder, s_FirstDate, s_LastDate, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_DateTime, i_Type, i_Display, i_Mode, b_Required, b_HideAdornments, b_SuppressDisabled, b_XSDFormat, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle, b_SuppressExtraPromptNames)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultDate: s_DefaultDate,
defaultTime: s_DefaultTime,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
dateTime: i_DateTime,
type: i_Type,
display: i_Display,
mode: i_Mode,
required: b_Required,
hideAdornments: b_HideAdornments,
suppressDisabled: b_SuppressDisabled,
xSDFormat: b_XSDFormat,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle,
suppressExtraPromptNames: b_SuppressExtraPromptNames
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstDTM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
" " +
"";
if (!oProperties.hideAdornments && oProperties.required)
{
HTMLOut +=
" ";
}
HTMLOut +=
PMT_UIM_CHOICES +
" " +
" " +
"" +
// SelectDateTimeSingle control prompt
" " +
"" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectDateTime" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectDateTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "Single" + sPromptId,
formName: sFormName,
parameterName: "DT_" + oProperties.parameterName,
defaultDate: K_PRMT_sEMPTY,
defaultTime: K_PRMT_sEMPTY,
required: false,
suppressDisabled: true,
style:cssParser(oProperties.style,"visibility"),
hideAdornments: true,
suppressExtraPromptNames: true}) + ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleDateTimePicker" + sPromptId + ".insert()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleDateTimePicker" + sPromptId + ".remove()', 'removeButton" + sPromptId + "');" +
"this.multipleDateTimePicker" + sPromptId + "= new CMultipleDateTimePicker(selectDateTimeSingle" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleDateTimePicker" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleDateTimePicker" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateTimeRangeHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultDate, s_DefaultTime, s_StartOfWeek, s_Calendar, s_SelectUI, s_InputOrder, s_FirstDate, s_LastDate, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_DateTime, i_Type, i_Display, i_Mode, i_InitialState, b_Required, b_HideAdornments, b_SuppressDisabled, b_XSDFormat, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle, s_EndDate, s_EndTime, b_SuppressExtraPromptNames)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultDate: s_DefaultDate,
defaultTime: s_DefaultTime,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
dateTime: i_DateTime,
type: i_Type,
display: i_Display,
mode: i_Mode,
initialState: i_InitialState,
required: b_Required,
hideAdornments: b_HideAdornments,
suppressDisabled: b_SuppressDisabled,
xSDFormat: b_XSDFormat,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle,
endDate: s_EndDate,
endTime: s_EndTime,
suppressExtraPromptNames: b_SuppressExtraPromptNames
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"";
renderPromptControlHTML("selectDateTime" + sPromptId, HTMLOut);
var JSOut = "genSelectDateTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_from" + sPromptId,
formName: sFormName,
parameterName: "range_from" + oProperties.parameterName,
submitType: K_PRMT_sEMPTY,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");" +
"genSelectDateTimeSingleHTML(" + generatePromptProperties(oProperties, {
id: "range_to" + sPromptId,
formName: sFormName,
parameterName: "range_to" + oProperties.parameterName,
submitType: K_PRMT_sEMPTY,
defaultDate: oProperties.endDate,
defaultTime: oProperties.endTime,
suppressDisabled: true,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true}) + ");";
if (oProperties.required)
{
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], null, selectDateTimerange_from" + sPromptId + ", null, null, selectDateTimerange_to" + sPromptId + ", null, 'datetime', true, '" + oProperties.submitType + "', null, '" + getCVId(oProperties) + "');";
}
else
{
JSOut += "this.range" + sPromptId + " = new CRange(document.forms['" + sFormName + "'].elements['" + sParamName + "'], document.forms['" + sFormName + "'].elements['fromValue" + sPromptId + "'][0], selectDateTimerange_from" + sPromptId + ", null, document.forms['" + sFormName + "'].elements['toValue" + sPromptId + "'][0], selectDateTimerange_to" + sPromptId + ", null, 'datetime', false, '" + oProperties.submitType + "', " + oProperties.initialState + ", '" + getCVId(oProperties) + "');";
}
var sCVObj = getCVInstance(oProperties);
JSOut += sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('range" + sPromptId + "');" +
sCVObj + "rangeObserverArray = " + sCVObj + "rangeObserverArray.concat('range" + sPromptId + "');";
executePromptControlJS(JSOut);
}
function genSelectDateTimeRangeMultipleHTML(s_PromptId, s_FormName, s_ParameterName, s_SubmitType, s_DefaultDate, s_DefaultTime, s_StartOfWeek, s_Calendar, s_SelectUI, s_InputOrder, s_FirstDate, s_LastDate, s_TimeZone, s_HourFormat, s_MinuteFormat, s_SecondFormat, i_DateTime, i_Type, i_Display, i_Mode, i_InitialState, b_Required, b_HideAdornments, b_SuppressDisabled, b_XSDFormat, s_Style, s_SelectDateEditBoxStyle, s_SelectDateYearsStyle, s_SelectDateMonthsStyle, s_SelectDateDaysOfWeekStyle, s_SelectDateDaysStyle, s_EndDate, s_EndTime, b_SuppressExtraPromptNames)
{
var oProperties = s_PromptId;
if (arguments.length > 1 || typeof oProperties != K_PRMT_sOBJECT)
{
oProperties = {
id: s_PromptId,
formName: s_FormName,
parameterName: s_ParameterName,
submitType: s_SubmitType,
defaultDate: s_DefaultDate,
defaultTime: s_DefaultTime,
startOfWeek: s_StartOfWeek,
calendar: s_Calendar,
selectUI: s_SelectUI,
inputOrder: s_InputOrder,
firstDate: s_FirstDate,
lastDate: s_LastDate,
timeZone: s_TimeZone,
hourFormat: s_HourFormat,
minuteFormat: s_MinuteFormat,
secondFormat: s_SecondFormat,
dateTime: i_DateTime,
type: i_Type,
display: i_Display,
mode: i_Mode,
initialState: i_InitialState,
required: b_Required,
hideAdornments: b_HideAdornments,
suppressDisabled: b_SuppressDisabled,
xSDFormat: b_XSDFormat,
style: s_Style,
selectDateEditBoxStyle: s_SelectDateEditBoxStyle,
selectDateYearsStyle: s_SelectDateYearsStyle,
selectDateMonthsStyle: s_SelectDateMonthsStyle,
selectDateDaysOfWeekStyle: s_SelectDateDaysOfWeekStyle,
selectDateDaysStyle: s_SelectDateDaysStyle,
endDate: s_EndDate,
endTime: s_EndTime,
suppressExtraPromptNames: b_SuppressExtraPromptNames
};
}
var sPromptId = oProperties.id;
if (!verifyPromptId(sPromptId)) {
return;
}
//skin folder
var sSkin = (typeof getPromptSkin != K_PRMT_sUNDEFINED ? getPromptSkin() : K_PRMT_sDEFAULTSKIN);
var sFormName = oProperties.formName;
if (!sFormName) {
sFormName = "forms[0]";
}
var sParamName = "p_" + oProperties.parameterName;
if (oProperties.suppressExtraPromptNames) {
sParamName = sParamName.substring(1);
}
var formElementName = sParamName;
if (oProperties.submitType == K_PRMT_sXML) {
formElementName = "_oLstDTRM_" + sPromptId;
}
var HTMLOut = K_PRMT_sEMPTY;
if (oProperties.submitType == K_PRMT_sXML) {
HTMLOut += genHiddenInputHTML(sFormName, jsEncodeStr(sParamName), K_PRMT_sEMPTY);
}
HTMLOut +=
"" +
"
" +
"" +
// SelectDateTimeRange control prompt
" " +
"" +
"" +
"" +
" " +
" " +
"
" +
"" +
"" +
" " +
" " +
"" +
" " +
" " +
"" +
" " +
" " +
"
" +
" " +
"" +
"" +
" " +
" " +
"
" +
"
";
renderPromptControlHTML("selectDateTime" + sPromptId, HTMLOut);
var sCVObj = getCVInstance(oProperties);
var JSOut = "genSelectDateTimeRangeHTML(" + generatePromptProperties(oProperties, {
id: "Range" + sPromptId,
formName: sFormName,
parameterName: "r_" + oProperties.parameterName,
style: cssParser(oProperties.style,"visibility"),
suppressExtraPromptNames: true }) + ");" +
"genInsertButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".insertChoiceList()', 'insertButton" + sPromptId + "');" +
"genRemoveButtonHTML('" + sPromptId + "', 'multipleRange" + sPromptId + ".removeChoiceList()', 'removeButton" + sPromptId + "');" +
"this.multipleRange" + sPromptId + " = new CMultipleRange(rangeRange" + sPromptId + ", document.forms['" + sFormName + "'].elements['" + formElementName + "'], document.forms['" + sFormName + "'].elements['" + sParamName + "'], " + oProperties.required + ", '" + oProperties.submitType + "', document.getElementById('multipleRangeFeedback" + sPromptId + "'), document.sizer" + sPromptId + ", '" + sPromptId + "', document.getElementById('insertButton" + sPromptId + "'), document.getElementById('removeButton" + sPromptId + "'), '" + getCVId(oProperties) + "');" +
sCVObj + "preProcessControlArray = " + sCVObj + "preProcessControlArray.concat('multipleRange" + sPromptId + "');" +
sCVObj + "multipleObserverArray = " + sCVObj + "multipleObserverArray.concat('multipleRange" + sPromptId + "');" +
"multipleRange" + sPromptId + ".initChoiceList();";
executePromptControlJS(JSOut);
}