123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- "use strict";
- /**
- * Licensed Materials - Property of IBM
- * IBM Cognos Products: Cognos Analytics
- * Copyright IBM Corp. 2015, 2017
- * US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- */
- define(['underscore', 'moment-timezone'], function (_, moment) {
- return {
- buildSimpleParmValueItems: function buildSimpleParmValueItems(parameterName, items) {
- var parameter_values = {
- name: parameterName,
- values: []
- };
- _.each(items, function (item) {
- parameter_values.values.push({
- type: 'simpleParmValueItem',
- use: _.isString(item) ? item : item.value,
- display: _.isString(item) ? item : item.label,
- inclusive: true
- });
- }.bind(this));
- return parameter_values;
- },
- buildBoundRangeParmValueItem: function buildBoundRangeParmValueItem(parameterName, range) {
- return {
- name: parameterName,
- values: [{
- type: 'boundRangeParmValueItem',
- inclusive: true,
- start: {
- inclusive: true,
- use: _.isString(range.from) ? range.from : range.from.value,
- display: _.isString(range.from) ? range.from : range.from.label
- },
- end: {
- inclusive: true,
- use: _.isString(range.to) ? range.to : range.to.value,
- display: _.isString(range.to) ? range.to : range.to.label
- }
- }]
- };
- },
- parseDateTimeString: function parseDateTimeString(value, showSeconds) {
- var parsedDateTime = moment(value);
- return {
- date: parsedDateTime.format('YYYY-MM-DD'),
- time: showSeconds ? parsedDateTime.format('HH:mm:ss A') : parsedDateTime.format('HH:mm A')
- };
- },
- parseTimeString: function parseTimeString(value, showSeconds) {
- var parsedTime = moment(moment().format('YYYY-MM-DD') + ' ' + value);
- return {
- date: null,
- time: showSeconds ? parsedTime.format('HH:mm:ss A') : parsedTime.format('HH:mm A')
- };
- },
- createDefaultDateTime: function createDefaultDateTime(defaultDate, showSeconds) {
- var defaultTime = moment().set('hour', 0).set('minute', 0).set('second', 0).set('millisecond', 0);
- return this._createDateTimeJSON(defaultDate, defaultTime, showSeconds);
- },
- createDefaultEndTime: function createDefaultEndTime(defaultDate, showSeconds) {
- var defaultTime = moment().set('hour', 23).set('minute', 59).set('second', 0).set('millisecond', 0);
- return this._createDateTimeJSON(defaultDate, defaultTime, showSeconds);
- },
- _createDateTimeJSON: function _createDateTimeJSON(defaultDate, defaultTime, showSeconds) {
- return {
- date: defaultDate ? defaultDate : moment().format('YYYY-MM-DD'),
- time: showSeconds ? defaultTime.format('HH:mm:ss') : defaultTime.format('HH:mm')
- };
- },
- createUseDisplayTimeValue: function createUseDisplayTimeValue(time) {
- return {
- use: time ? moment(time, 'HH:mm:ss').format('HH:mm:ss.SSS') : '',
- display: time ? moment(time, 'HH:mm:ss').format('h:mm A') : ''
- };
- },
- buildUseDisplayValue: function buildUseDisplayValue(payload) {
- var timeValue = this.createUseDisplayTimeValue(payload.time);
- var hasDateAndTime = payload.date && payload.time;
- return {
- label: (payload.date ? payload.date : '') + (hasDateAndTime ? ' ' : '') + (payload.time ? timeValue.display : ''),
- value: (payload.date ? payload.date : '') + (hasDateAndTime ? ' ' : '') + (payload.time ? timeValue.use : '')
- };
- },
- getMultilingualDisplay: function getMultilingualDisplay(contentLocale, parameter) {
- var displayValue;
- if (contentLocale && parameter.multilingualDisplay) {
- displayValue = parameter.multilingualDisplay[contentLocale];
- if (!displayValue) {
- var sepIndex = contentLocale.indexOf('-');
- if (sepIndex !== -1) {
- var language = contentLocale.substr(0, sepIndex);
- displayValue = parameter.multilingualDisplay[language];
- }
- }
- }
- return displayValue ? displayValue : parameter.name;
- }
- };
- });
|