123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668 |
- /*
- *+------------------------------------------------------------------------+
- *| Licensed Materials - Property of IBM
- *| BI and PM: prmt
- *| (C) Copyright IBM Corp. 2002, 2020
- *|
- *| US Government Users Restricted Rights - Use, duplication or
- *| disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- *|
- *+------------------------------------------------------------------------+
- */
- /**
- @class
- @private
- */
- cognos.Prompt.Control.Date = cognos.Prompt.Control.f_extend({
- f_initialize: function( v_oProps ) {
- this[K_PRMT_LABEL_RANGE_LOWEST] = PMT_RNG_EARLIEST_DATE;
- this[K_PRMT_LABEL_RANGE_HIGHEST] = PMT_RNG_LATEST_DATE;
- this._type_ = "cognos.Prompt.Control.Date";
- this.f_parent( v_oProps ); // call parent's initialize()
- if ( this["@selectDateUI"] )
- {
- this["@selectUI"] = this["@selectDateUI"];
- }
- if ( !this["@startOfWeek"] )
- {
- this["@startOfWeek"] = "1";
- }
- this["@startOfWeek"] = parseInt(this["@startOfWeek"], 10);
- this.m_bDisabled = false;
- this.f_initCompleted();
- },
- checkData: function()
- {
- // We keep a reference to the parent function
- // Calling this.m_oFrom functions seems to have a side effect on this.f_parent().
- var v_fnParent = this.f_parent;
- this.m_bValid = this.m_oControl.m_bValid;
- this.f_parent = v_fnParent; // call parent's checkData using saved reference.
- this.f_parent(); // call parent's checkData using saved reference.
- return this.m_bValid;
- },
- clearValues: function() {
- this.f_parent();
- this.f_setDate( (""+new Date()) );
- },
- f_drawCompleted: function()
- {
- // We keep a reference to the parent function
- // Calling this.m_oFrom.f_drawCompleted seems to have a side effect on this.f_parent().
- var v_fnParent = this.f_parent;
- var v_chk = $(this.f_getId( "chkAnyValue" ));
- if ( v_chk )
- {
- PRMTUtils.f_addEvent( v_chk, "click", this.f_toggleDisable.bind(this) );
- }
- var v_iStartOfWeek = 0;
- switch( this["@startOfWeek"] )
- {
- case "Monday": iStartDay = 1; break;
- case "Tuesday": iStartDay = 2; break;
- case "Wednesday": iStartDay = 3; break;
- case "Thursday": iStartDay = 4; break;
- case "Friday": iStartDay = 5; break;
- case "Saturday": iStartDay = 6; break;
- }
- var v_oControl = new CDatePicker(
- null, //oSubmit,
- $( this.f_getId( "_Date" ) ), //oForm,
- $( this.f_getId( this["@selectUI"] == "editBox" ? "txtDate" : "_Date" ) ), //oEditBox,
- $( this.f_getId("dialogDatePicker") ), //oDialog,
- this.f_getId(), //sRef,
- this["@defaultDate"], //sDefaultDate,
- (this["@selectUI"] == "editBox" ? 0 : 1), //iInline,
- (this["@calendar"] == "Imperial" ? 1 : 0), //iType,
- this["@inputOrder"], //sInputOrder,
- v_iStartOfWeek,
- (this["@DateTime"] ? 0 : 1), //iDateTimeType,
- this["@firstDate"], //sFirstDate,
- this["@lastDate"], //sLastDate,
- this.isRequired(), //bRequired,
- null, //sSubmitType,
- null, //oImgCheck,
- this["CVId"]
- );
- var v_aDO = this.f_getCV().datePickerObserverArray;
- if (v_aDO) {
- v_aDO.push( v_oControl );
- }
- var v_oDatePicker = v_oControl.m_oDatePickerDialog;
- var v_el = $( this.f_getId("txtDate") );
- if ( v_el )
- {
- PRMTUtils.f_addEvent( v_el, "keyup", v_oControl.checkDate.bind(v_oControl, v_el) );
- PRMTUtils.f_addEvent( v_el, "keypress", v_oControl.keyPress.bind(v_oControl, v_el) );
- PRMTUtils.f_addEvent( v_el, "focus", v_oControl.gotFocus.bind(v_oControl) );
- PRMTUtils.f_addEvent( v_el, "blur", v_oControl.lostFocus.bind(v_oControl) );
-
- // link a11y label if it exists using FOR
- var v_a11yLabel = $( this.f_getId("PRMT_LBL_") );
- if ( v_a11yLabel && !v_a11yLabel.getAttribute("for")) {
- v_a11yLabel.setAttribute("for", v_el.id);
- }
- }
- v_el = $( this.f_getId("myYear") );
- if ( v_el )
- {
- PRMTUtils.f_addEvent( v_el, "keyup", v_oDatePicker.checkYear.bind(v_oDatePicker, v_el) );
- PRMTUtils.f_addEvent( v_el, "keypress", this.f_setDateFromEditBox.bind(v_oDatePicker) );
- PRMTUtils.f_addEvent( v_el, "blur", v_oDatePicker.lostFocus.bind(v_oDatePicker) );
- }
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearDown") ), "click", v_oDatePicker.yearDown.bind(v_oDatePicker) );
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearUp") ), "click", v_oDatePicker.yearUp.bind(v_oDatePicker) );
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearDown") ), "keypress", v_oDatePicker.yearDown.bind(v_oDatePicker) );
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearUp") ), "keypress", v_oDatePicker.yearUp.bind(v_oDatePicker) );
- if (window.ie)
- {
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearDown") ), "dblclick", v_oDatePicker.yearDown.bind(v_oDatePicker) );
- PRMTUtils.f_addEvent( $( this.f_getId("btnYearUp") ), "dblclick", v_oDatePicker.yearUp.bind(v_oDatePicker) );
- }
- for ( var v_idxMonth = 0; v_idxMonth < 12; v_idxMonth++ )
- {
- PRMTUtils.f_addEvent( $( this.f_getId() + "m" + v_idxMonth ), "mousedown", v_oDatePicker.newMonth.bind(v_oDatePicker, v_idxMonth) );
- PRMTUtils.f_addEvent( $( this.f_getId() + "m" + v_idxMonth ), "keypress", v_oDatePicker.newMonth.bind(v_oDatePicker, v_idxMonth) );
- }
- for ( var v_idxRow = 0; v_idxRow < 6; v_idxRow++ )
- {
- for (v_idxCol = 0; v_idxCol < 7; v_idxCol++)
- {
- v_el = $( this.f_getId() + "r" + v_idxRow + "c" + v_idxCol );
- if ( v_el ) {
- PRMTUtils.f_addEvent( v_el, "mousedown", v_oDatePicker.newDay.bind(v_oDatePicker, v_el) );
- }
- }
- }
- v_el = $( this.f_getId("imgPicker") );
- if ( v_el )
- {
- PRMTUtils.f_addEvent( v_el, "click", v_oControl.toggleDialogDatePicker.bind(v_oControl, v_el) );
- PRMTUtils.f_addEvent( v_el, "keypress", v_oControl.toggleDialogDatePicker.bind(v_oControl, v_el) );
- }
- v_oControl.m_oParent = this;
- this.m_oControl = v_oControl;
- this.f_parent = v_fnParent; // call parent's f_drawCompleted using saved reference.
- this.f_parent(); // call parent's f_drawCompleted using saved reference.
- this.checkData();
- if ( this[K_PRMT_sATTR_DISABLED] )
- {
- this.f_setEnabled( false );
- }
- }
- });
- /**
- * Getter for range inputId
- * rangeInputId used by range label to associate the label (From/To) to the input when there are not radio buttons
- *
- */
- cognos.Prompt.Control.Date.prototype.f_getRangeInputId = function() {
- return (this["@selectUI"] == "editBox" ? this.f_getId("txtDate") : null); //this.f_getId("dialogDatePickerTable"));
- }
- /**
- Compare values. See {@link cognos.Prompt.Control#f_compare} for details.
- @see cognos.Prompt.Control#f_compare
- @private
- @return {Integer}
- */
- cognos.Prompt.Control.Date.prototype.f_compare = function( v_oValue )
- {
- var v_iRetval = 1;
- if ( v_oValue )
- {
- // Strips out time part.
- var v_dThis = this.m_oControl.m_oForm.value.split("T");
- v_dThis = dParseDate( v_dThis[0], "YMD" );
- var v_dCompareTo = v_oValue.m_oControl.m_oForm.value.split("T");
- v_dCompareTo = dParseDate( v_dCompareTo[0], "YMD" );
- var v_iThis = v_dThis.getTime();
- var v_iCompareTo = v_dCompareTo.getTime();
- if ( v_iCompareTo > v_iThis )
- {
- v_iRetval = -1;
- }
- else if ( v_iCompareTo == v_iThis )
- {
- v_iRetval = 0;
- }
- }
- return v_iRetval;
- };
- /**
- Sets the JavaScript references used by custom scripts based on generated code from Blaring and before.
- (Custom Scripts Workaround)
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_CSW_init = function()
- {
- this.f_CSW_createJSObject( "pickerControl", this.m_oControl );
- this.f_CSW_SetFormElement("txtDate", $(this.f_getId("txtDate")));
- };
- /**
- Renders the TD cell for days in the calendar.
- @private
- @param {C_PromptElement} v_el Container (TR element).
- @param {Integer} v_idxRow Row index.
- @param {Integer} v_idxCol Column index.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawDay = function( v_el, v_idxRow, v_idxCol )
- {
- // TODO: selectDateDaysStyle
- var v_td = $CE( "td", {
- "id": this.f_getId() + "r" + v_idxRow + "c" + v_idxCol,
- "nowrap": "nowrap",
- "class": "clsSelectDateDays pd"
- }, v_el );
- v_td.f_appendText(K_PRMT_sEMPTY);
- };
- /**
- Render the UI for days in the calendar.
- @private
- @param {C_PromptElement} v_el Container.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawDays = function( v_el )
- {
- var v_tbl = $CE( "table", {
- "border": K_PRMT_DEBUG_TABLEBORDER,
- "cellSpacing": 0,
- "width": "100%",
- "align": "center",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_el );
- var v_tbd = $CE( "tbody", {}, v_tbl );
- var v_idxCol = 0;
- var v_tr = $CE( "tr", {}, v_tbd );
- for (v_idxCol = 0; v_idxCol < 7; v_idxCol++)
- {
- this.f_drawWeekDay( v_tr, v_idxCol );
- }
- for ( var v_idxRow = 0; v_idxRow < 6; v_idxRow++ )
- {
- var v_tr = $CE( "tr", {}, v_tbd );
- for (v_idxCol = 0; v_idxCol < 7; v_idxCol++)
- {
- this.f_drawDay( v_tr, v_idxRow, v_idxCol );
- }
- }
- };
- /**
- Render the edit box when calendar is set as an EditBox.
- @private
- @param {C_PromptElement} v_el Container.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawEditBox = function( v_el )
- {
- var v_tbl = $CE( "table", { "border": K_PRMT_DEBUG_TABLEBORDER, "cellPadding": 0, "cellSpacing": 0, "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_el );
- var v_tbd = $CE( "tbody", {}, v_tbl );
- var v_tr = $CE( "tr", {}, v_tbd );
- var v_td = $CE( "td", {}, v_tr );
- // TODO: selectDateEditBoxStyle
- var v_ipt = $CE( "input", {
- "type": "text",
- "class": "clsSelectDateEditBox pt",
- "aria-required": (this.isRequired() ? "true" : "false"),
- "id": this.f_getId("txtDate"),
- "value": K_PRMT_sEMPTY }, v_td );
- v_td = $CE( "td", {}, v_tr );
- var v_img = $CE( "img", {
- "id": this.f_getId("imgPicker"),
- "src": this.m_sSkin + "/prompting/images/icon_datepicker.gif",
- "height": 20,
- "width": 25,
- "class": "clsToolbarButton",
- "onmouseover": "buttonOver(this)",
- "onmouseout": "buttonOut(this)",
- "onmousedown": "buttonOver(this)",
- "vAlign": "top",
- "style": "padding:0px;height:20px;",
- "alt":"",
- "title":"",
- "tabindex": "0",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_td );
- };
- /**
- Render the Date control.
- @private
- @param {C_PromptElement} v_el Container.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawInput = function( v_el )
- {
- $CE("input", {"type": "hidden", "id": this.f_getId("_Date"), "value": this["@defaultDate"]}, v_el );
- var v_tbl = null;
- var v_tbd = null;
- var v_tr = null;
- var v_td = null;
- if ( this["@selectDateUI"] != "editBox" && !this.isRequired() && !this["@suppressDisabled"] && !(this.m_bIsAComponent || this["@multiSelect"]) )
- {
- v_tbl = $CE( "table", {"border": K_PRMT_DEBUG_TABLEBORDER, "cellPadding": 0, "cellSpacing": 0,"role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_el );
- v_tbd = $CE( "tbody", {}, v_tbl );
- v_tr = $CE( "tr", {}, v_tbd );
- v_td = $CE( "td", {"vAlign": "top"}, v_tr );
- var v_bDisabled = (this.isEmptyReprompt() || (this[K_PRMT_sATTR_DISABLED] === true));
- var v_oChbox_attr = {
- "type": "checkbox",
- "value": "anyValue",
- "id": this.f_getId( "chkAnyValue" ),
- "name": this.f_getId( "chkAnyValue" )};
- if (!v_bDisabled) {
- v_oChbox_attr.checked = true;
- }
- $CE( "input", v_oChbox_attr, v_td );
- this.m_bDisabled = v_bDisabled;
- v_el = $CE( "td", {"vAlign": "top"}, v_tr );
- }
- var v_sCalendarClass = "clsSelectDateCalendar";
- if( this["@selectUI"] == "editBox" )
- {
- v_sCalendarClass = "clsSelectDateCalendarDialog";
- this.f_drawEditBox( v_el );
- }
- var v_oDivPickerInitData = {
- "id": this.f_getId( "dialogDatePicker" ),
- "style": ( this["@selectUI"] == "editBox" ? "display:none" : K_PRMT_sEMPTY )
- };
- var v_oCV = this.f_getCV();
- if (v_oCV && v_oCV.getId) {
- v_oDivPickerInitData["namespaceId"] = v_oCV.getId();
- }
- var v_divPicker = $CE( "div", v_oDivPickerInitData, v_el );
- v_tbl = $CE( "table", { "id": this.f_getId( "dialogDatePickerTable" ), "border": K_PRMT_DEBUG_TABLEBORDER, "cellPadding": 0, "cellSpacing": 0, "class": v_sCalendarClass }, v_divPicker );
- v_tbd = $CE( "tbody", {}, v_tbl );
- v_tr = $CE( "tr", {}, v_tbd );
- v_td = $CE( "td", {"vAlign": "top"}, v_tr );
- this.f_drawYear( v_td );
- this.f_drawMonths( v_td );
- this.f_drawDays( v_td );
- // ensure that calendar appears on top of select controls
- var v_ifrmInitData = {
- "id": this.f_getId( "pickerControl" ) + "iframe",
- "style": "position:absolute;display:none;height:0px;width:0px;",
- "src": this.m_sSkin + "/prompting/images/spacer.gif",
- "title":"blank"
- };
- if (v_oCV && v_oCV.getId) {
- v_ifrmInitData["namespaceId"] = v_oCV.getId();
- }
- var v_ifrm = $CE( "iframe", v_ifrmInitData, v_el);
- v_ifrm.f_appendText(K_PRMT_sEMPTY);
- };
- /**
- Check if is a reprompt(this.c exists) and in case of a reprompt if the reprompt has data(a date)
- When a date control is optional, has a Calendar UI the user can decide not to submit the date, in
- that case the reprompt won't contain data.
- @private
- @return {boolean}
- */
- cognos.Prompt.Control.Date.prototype.isEmptyReprompt = function()
- {
- var result = false;
- if ((typeof this.c) != K_PRMT_sUNDEFINED) {
- // it's a reprompt
- var v_c = this.c;
- // [{n:'selectChoices',c:[{n:'selectOption',"@useValue":"2010-01-14","@displayValue":"Jan 14, 2010"}]}] => not empty(value.n =='selectOption' || [{n:'selectChoices'}] => empty(value.n == 'selectChoices')
- if ( v_c.length && v_c[0].n && v_c[0].n == "selectChoices") {
- var v_c_value = cognos.Value.getValue( this.c );
- if (v_c_value.n && v_c_value.n == "selectChoices") result = true;
- }
- }
- return result;
- };
- /**
- Render a Month cell.
- @private
- @param {C_PromptElement} v_el Container (an TR cell).
- @param {Integer} v_idx Index for the current month cell.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawMonth = function( v_el, v_idx )
- {
- // TODO: selectDateMonthsStyle
- var v_td = $CE( "td", {
- "id": this.f_getId() + "m" + v_idx,
- "nowrap": "nowrap",
- "class": "clsSelectDateMonths pm"
- }, v_el );
- v_td.f_appendText( sGetMonth(v_idx) );
- };
- /**
- Render Months cells.
- @private
- @param {C_PromptElement} v_el Container.
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_drawMonths = function( v_el )
- {
- var v_tbl = $CE( "table", {
- "border": K_PRMT_DEBUG_TABLEBORDER,
- "cellPadding": 2,
- "cellSpacing": 0,
- "width": "100%",
- "align": "center",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_el );
- var v_tbd = $CE( "tbody", {}, v_tbl );
- var v_idx;
- for ( var v_iRows = 0; v_iRows < 2; v_iRows++ )
- {
- var v_tr = $CE( "tr", {}, v_tbd );
- for (v_idx = 0; v_idx < 6; v_idx++)
- {
- this.f_drawMonth( v_tr, (v_iRows*6)+v_idx );
- }
- }
- };
- /**
- @private
- */
- cognos.Prompt.Control.Date.prototype.f_drawWeekDay = function( v_el, v_idx )
- {
- // TODO: selectDateDaysOfWeekStyle
- var v_td = $CE( "td", {
- "id": this.f_getId() + "d" + v_idx,
- "nowrap": "nowrap",
- "class": "clsSelectDateDaysOfWeek pw"
- }, v_el );
- v_td.f_appendText( sGetDay( (v_idx + this["@startOfWeek"] - 1) % 7 ) );
- };
- /**
- @private
- */
- cognos.Prompt.Control.Date.prototype.f_drawYear = function ( v_el )
- {
- // Top
- var v_tbl = $CE( "table", {
- "border": K_PRMT_DEBUG_TABLEBORDER, "cellPadding": 0, "cellSpacing": 0,
- "class": "clsSelectDateDialogTopTable",
- "align": "center",
- "width": "100%",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_el );
- var v_tbd = $CE( "tbody", {}, v_tbl );
- // TODO: selectDateYearsStyle
- var v_tr = $CE( "tr", {"class": "clsSelectDateYears"}, v_tbd );
- var v_td = $CE( "td", {}, v_tr );
- var v_sCustomDir = cssParser( this["@style"], "direction", true );
- var v_FinalDir = ((v_sCustomDir == "ltr" || v_sCustomDir == "rtl") ? v_sCustomDir : PRMT_BidiUtils.lookupDirection($( this.f_getId(this.m_sDivPrefix) )));
- if (!v_FinalDir) {
- v_FinalDir = "ltr";
- }
- var v_img = $CE( "img", {
- "id": this.f_getId( "btnYearDown" ),
- "class" : (v_FinalDir == "ltr" ? "clsBtnYearDown" : "clsBtnYearUp"),
- "src": this.m_sSkin + "/prompting/images/icon_year_down.gif",
- "vAlign": "top",
- "tabindex": "0",
- "width": "15",
- "class": "clsToolbarButton",
- "onmouseover": "buttonOver(this)",
- "onmouseout": "buttonOut(this)",
- "onmousedown": "buttonOver(this)",
- "title":"",
- "alt":"",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_td );
- v_td = $CE( "td", {
- "width": "100%",
- "align": "center" }, v_tr );
- var v_ipt = $CE( "input", {
- "id": this.f_getId( "myYear" ),
- "class": "clsSelectDateYearEditBox pcl",
- "aria-label" : PMT_DTP_DATE_YEAR_ENTRY_FIELD,
- "aria-required": (this.isRequired() ? "true" : "false"),
- "size": "8",
- "onkeydown": "return (event.keyCode!=13);",
- "type": "text" }, v_td );
- v_td = $CE( "td", {}, v_tr );
- v_img = $CE( "img", {
- "id": this.f_getId( "btnYearUp" ),
- "class" : (v_FinalDir == "ltr" ? "clsBtnYearUp" : "clsBtnYearDown"),
- "src": this.m_sSkin + "/prompting/images/icon_year_up.gif",
- "vAlign": "top",
- "tabindex": "0",
- "width": "15",
- "align": "right",
- "class": "clsToolbarButton",
- "onmouseover": "buttonOver(this)",
- "onmouseout": "buttonOut(this)",
- "onmousedown": "buttonOver(this)",
- "title":"",
- "alt":"",
- "role":K_PRMT_ARIA_ROLE_PRESENTATION}, v_td );
- };
- /**
- @private
- @return {cognos.Value}
- */
- cognos.Prompt.Control.Date.prototype.f_getPV = function()
- {
- var v_oControl = this.m_oControl;
- var v_sUse = v_oControl.sGetValue();
- if ( this.m_bIsRangeEndControl && this["@DateTime"])
- {
- v_sUse = v_sUse.replace( K_PRMT_reTIMEPART, K_PRMT_sTIME_MAX );
- }
- // skip handle notify if getPV got triggered by getValues
- if (v_oControl.handleNotify && (!this.m_bisGetValuesCall) )
- {
- v_oControl.handleNotify();
- }
- return (
- this.m_bDisabled || !v_sUse ?
- null :
- { "use": v_sUse, "display": v_oControl.sGetFormatValue() }
- );
- };
- /**
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_setDate = function( v_sDate )
- {
- this.m_oControl.setValue( v_sDate );
- };
- /**
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_setDateFromEditBox = function(e)
- {
- // 'this' is a CDatePickerDialog object
- this.keyPress( e.keyCode );
- var v_oParent = this.m_oParentControl;
- v_oParent.checkDate( v_oParent.m_oEditBox );
- };
- /**
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_setEnabled = function( v_bState )
- {
- var v_oControl = this.m_oControl;
- if ( v_bState ) {
- v_oControl.enable();
- PRMTUtils.f_removeClass( $( this.f_getId( "dialogDatePickerTable" ) ), K_PRMT_sCLS_DISABLED );
- }
- else {
- v_oControl.disable();
- PRMTUtils.f_addClass( $( this.f_getId( "dialogDatePickerTable" ) ), K_PRMT_sCLS_DISABLED );
- }
- };
- /**
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_setPV = function( v_oPV )
- {
- var v_sValue = v_oPV["use"];
- if ( v_sValue )
- {
- var v_aValues = v_sValue.split(new RegExp("[T\\s]"));
- if ( v_aValues.length > 2 )
- {
- for ( var v_idx = 1; v_idx < v_aValues.length - 1; v_idx++ )
- {
- // add all Date parts to the first element.
- v_aValues[0] += K_PRMT_sSP + (v_aValues[v_idx]).f_trim();
- }
- v_aValues[0] = v_aValues[0].f_trim();
- // move Time part (last value) in slot 1
- v_aValues[1] = v_aValues[ v_aValues.length - 1];
- }
- if ( v_aValues.length >= 1 )
- {
- this.f_setDate( v_aValues[0] );
- }
- }
- };
- /**
- @private
- @return {void}
- */
- cognos.Prompt.Control.Date.prototype.f_toggleDisable = function()
- {
- var v_bState = this.m_bDisabled;
- this.f_setEnabled( v_bState );
- this.m_bDisabled = !v_bState;
- };
- /**
- @private
- @return {boolean}
- */
- cognos.Prompt.Control.Date.prototype.hasValue = function()
- {
- return (this.m_bValid);
- };
- var C_Date = cognos.Prompt.Control.Date; // Keep old reference for backward compatibility with custom scripts.
|