Commit ee80e6a6 by KevalBhatt Committed by Nikhil Bonte

ATLAS-3827: UI: Use moment date format instead of default date format.

parent e6c38268
......@@ -120,6 +120,16 @@
margin-left: 20px;
width: calc(100% - 27px);
}
.import-export .admin-audit-details {
display: table;
border: 1px solid #ddd;
border-radius: 4px;
tr>td:nth-child(2) {
text-align: right;
}
}
}
.admin-details .expandable .admin-audit-details .attr-type-container {
......@@ -174,7 +184,7 @@
.business-metadata-attr-tableOverlay {
position: absolute;
width: 100%;
width: calc(100% - 40px);
height: 100%;
background: #808080;
z-index: 99;
......
......@@ -101,7 +101,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
return resultStr;
}
},
getValue = function(val) {
getEmptyString = function(key) {
if (options.getEmptyString) {
return options.getEmptyString(key);
}
return "N/A";
},
getValue = function(val, key) {
if (!_.isUndefined(val) && !_.isNull(val)) {
if ((_.isNumber(val) || !_.isNaN(parseInt(val))) && formatIntVal) {
return numberFormat(val);
......@@ -118,7 +124,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
return getHighlightedString(_.escape(newVal));
}
} else {
return "N/A";
return getEmptyString(key);
}
},
fetchInputOutputValue = function(id, defEntity) {
......@@ -137,7 +143,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
id = data.guid;
}
if (value.length > 0) {
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + getValue(value) + '</a>');
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + getValue(value, key) + '</a>');
} else {
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + _.escape(id) + '</a>');
}
......@@ -179,7 +185,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (_.isString(inputOutputField) || _.isBoolean(inputOutputField) || _.isNumber(inputOutputField)) {
var tempVarfor$check = inputOutputField.toString();
if (tempVarfor$check.indexOf("$") == -1) {
valueOfArray.push('<span class="json-string">' + getValue(inputOutputField) + '</span>');
valueOfArray.push('<span class="json-string">' + getValue(inputOutputField, key) + '</span>');
}
} else if (_.isObject(inputOutputField) && !id) {
var attributesList = inputOutputField;
......@@ -247,7 +253,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (valueOfArray.length) {
subLink = valueOfArray.join(', ');
}
return subLink === "" ? "N/A" : subLink;
return subLink === "" ? getEmptyString(key) : subLink;
}
var valueObjectKeysList = _.keys(valueObject);
if (_.isUndefined(sortBy) || sortBy == true) {
......@@ -263,7 +269,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (defEntity && defEntity.typeName) {
var defEntityType = defEntity.typeName.toLocaleLowerCase();
if (defEntityType === 'date') {
keyValue = keyValue > 0 ? new Date(keyValue) : null;
keyValue = keyValue > 0 ? Utils.formatDate({ date: keyValue }) : null;
} else if (_.isObject(keyValue)) {
keyValue = extractObject({ "keyValue": keyValue, "key": key, 'defEntity': defEntity });
}
......@@ -276,13 +282,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (_.isObject(valueObject[key])) {
val = keyValue
} else if (key === 'guid' || key === "__guid") {
if (options.fromAdminAudit) {
val = getValue(keyValue);
if (options.guidHyperLink === false) {
val = getValue(keyValue, key);
} else {
val = '<a title="' + key + '" href="#!/detailPage/' + _.escape(keyValue) + '">' + getValue(keyValue) + '</a>';
val = '<a title="' + key + '" href="#!/detailPage/' + _.escape(keyValue) + '">' + getValue(keyValue, key) + '</a>';
}
} else {
val = getValue(keyValue);
val = getValue(keyValue, key);
}
if (isTable) {
var value = val,
......@@ -387,12 +393,16 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
function objToString(filterObj) {
var generatedQuery = _.map(filterObj.rules, function(obj, key) {
var obj = $.extend(true, {}, obj); // not to update the timezone abbr on original obj , copy of obj is used
var obj = $.extend(true, {}, obj); // not to update the timezone abbr on original obj , copy of obj is used
if (_.has(obj, 'condition')) {
return '&nbsp<span class="operator">' + obj.condition + '</span>&nbsp' + '(' + objToString(obj) + ')';
} else {
if (obj.type === "date") {
obj.value = obj.value + " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
if (Enums.queryBuilderDateRangeUIValueToAPI[obj.value]) {
obj.value = Enums.queryBuilderDateRangeUIValueToAPI[obj.value];
} else {
obj.value = obj.value + " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
}
}
return '<span class="key">' + (Enums.systemAttributes[obj.id] ? Enums.systemAttributes[obj.id] : _.escape(obj.id)) + '</span>&nbsp<span class="operator">' + _.escape(obj.operator) + '</span>&nbsp<span class="value">' + (Enums[obj.id] ? Enums[obj.id][obj.value] : _.escape(obj.value)) + "</span>";
}
......@@ -612,7 +622,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
rule = {};
if (apiObj) {
rule = { attributeName: temp[0], operator: mapUiOperatorToAPI(temp[1]), attributeValue: _.trim(temp[2]) }
rule.attributeValue = rule.type === 'date' && formatDate && rule.attributeValue.length ? moment(parseInt(rule.attributeValue)).format(Globals.dateTimeFormat) : rule.attributeValue;
rule.attributeValue = rule.type === 'date' && formatDate && rule.attributeValue.length ? Utils.formatDate({ date: parseInt(rule.attributeValue), zone: false }) : rule.attributeValue;
} else {
rule = { id: temp[0], operator: temp[1], value: _.trim(temp[2]) }
if (temp[3]) {
......@@ -621,13 +631,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (rule.operator === "TIME_RANGE") {
if (temp[2].indexOf(",") > -1) {
rule.value = temp[2].split(",").map(function(udKey) {
return moment(parseInt(udKey.trim())).format(Globals.dateTimeFormat)
return Utils.formatDate({ date: parseInt(udKey.trim()), zone: false })
}).join(" - ")
} else {
rule.value = Enums.queryBuilderDateRangeAPIValueToUI[_.trim(rule.value)] || rule.value;
}
} else if (rule.type === 'date' && formatDate && rule.value.length) {
rule.value = moment(parseInt(rule.value)).format(Globals.dateTimeFormat)
rule.value = Utils.formatDate({ date: parseInt(rule.value), zone: false })
}
}
return rule;
......
......@@ -42,5 +42,7 @@ define(["require"], function(require) {
Globals.DEFAULT_UI = "v2";
Globals.dateFormat = "YYYY/MM/DD";
Globals.dateTimeFormat = "YYYY/MM/DD HH:mm:ss";
Globals.meridiemFormat = "MM/DD/YYYY h:mm A z";
return Globals;
});
\ No newline at end of file
......@@ -16,7 +16,7 @@
* limitations under the License.
*/
define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums', 'pnotify.buttons', 'pnotify.confirm'], function(require, Globals, pnotify, Messages, Enums) {
define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums', 'moment', 'moment-timezone', 'pnotify.buttons', 'pnotify.confirm'], function(require, Globals, pnotify, Messages, Enums, moment) {
'use strict';
var Utils = {};
......@@ -913,5 +913,37 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
$(this).removeClass('button-loader').removeAttr("disabled");
$(this).siblings("button.cancel").prop("disabled", false);
}
Utils.formatDate = function(options) {
var dateValue = null,
dateFormat = Globals.dateTimeFormat,
isValidDate = false;
if (options) {
if (options.dateFormat) {
dateFormat = options.dateFormat;
}
if (options.date) {
if (options.date === "-") {
dateValue = options.date;
} else {
dateValue = moment(options.date)
if (dateValue._isValid) {
isValidDate = true;
dateValue = dateValue.format(dateFormat);
}
}
}
}
if (dateValue !== "-") {
if (isValidDate === false && options && options.defaultDate !== false) {
dateValue = moment().format(dateFormat);
}
if (!options || options && options.zone !== false) {
dateValue += " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
}
}
return dateValue;
}
return Utils;
});
\ No newline at end of file
......@@ -20,9 +20,10 @@ define(['require',
'backbone',
'hbs!tmpl/audit/AuditTableLayoutView_tmpl',
'collection/VEntityList',
'utils/Utils',
'utils/Enums',
'utils/UrlLinks'
], function(require, Backbone, AuditTableLayoutView_tmpl, VEntityList, Enums, UrlLinks) {
], function(require, Backbone, AuditTableLayoutView_tmpl, VEntityList, Utils, Enums, UrlLinks) {
'use strict';
var AuditTableLayoutView = Backbone.Marionette.LayoutView.extend(
......@@ -214,7 +215,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
}
})
},
......
......@@ -166,7 +166,7 @@ define(['require',
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
if (rawValue) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
} else {
return '-';
}
......@@ -181,7 +181,7 @@ define(['require',
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
if (rawValue) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
} else {
return '-';
}
......
......@@ -318,7 +318,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(model.get('createTime'));
return Utils.formatDate({ date: model.get('createTime') });
}
})
},
......@@ -340,7 +340,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(model.get('updateTime'));
return Utils.formatDate({ date: model.get('updateTime') });
}
})
},
......
......@@ -439,11 +439,12 @@ define(['require',
var dateObj = {
"singleDatePicker": true,
"showDropdowns": true,
"startDate": new Date(),
locale: {
format: Globals.dateFormat
}
};
if (that.guid) {
if (that.guid && this.value.length) {
dateObj["startDate"] = new Date(Number(this.value));
}
$(this).daterangepicker(dateObj);
......@@ -606,7 +607,7 @@ define(['require',
if (dataValue) {
entityValue = moment(dataValue);
} else {
entityValue = moment().format(Globals.dateFormat);
entityValue = Utils.formatDate({ zone: false, dateFormat: Globals.dateFormat });
}
}
}
......
......@@ -17,11 +17,12 @@
*/
define(['require',
'backbone',
'utils/Utils',
'hbs!tmpl/entity/EntityBusinessMetaDataItemView_tmpl',
'moment',
'utils/Globals',
'daterangepicker'
], function(require, Backbone, EntityBusinessMetaDataItemViewTmpl, moment, Globals) {
], function(require, Backbone, Utils, EntityBusinessMetaDataItemViewTmpl, moment, Globals) {
'use strict';
return Backbone.Marionette.ItemView.extend({
......@@ -167,12 +168,12 @@ define(['require',
var dateStr = [];
_.each(val, function(selectedDate) {
selectedDate = parseInt(selectedDate);
dateStr.push(moment(selectedDate).format(Globals.dateFormat));
dateStr.push(Utils.formatDate({ date: selectedDate, zone: false, dateFormat: Globals.dateFormat }));
});
val = dateStr.join(',');
} else if (!isMultiValued && val) {
val = parseInt(val);
val = moment(val).format(Globals.dateFormat);
val = Utils.formatDate({ date: val, zone: false, dateFormat: Globals.dateFormat });
}
}
if (typeName === "string" || typeName === "array<string>") {
......@@ -182,7 +183,7 @@ define(['require',
} else if (typeName === "date" || typeName === "array<date>") {
returnEL = '<' + (isMultiValued ? "textarea" : "input") + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '"data-multi="' + isMultiValued + '" data-type="date" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '>' + (isMultiValued === true && !_.isUndefinedNull(val) ? val : "") + (isMultiValued ? "</textarea>" : "");
setTimeout(function() {
var dateObj = { singleDatePicker: true, showDropdowns: true, autoUpdateInput: isMultiValued ? false : true },
var dateObj = { singleDatePicker: true, showDropdowns: true, autoUpdateInput: isMultiValued ? false : true, locale: { format: Globals.dateFormat } },
dateEl = that.$el.find('[data-type="date"][data-key="' + key + '"]').daterangepicker(dateObj);
if (isMultiValued) {
dateEl.on("apply.daterangepicker", function(ev, picker) {
......@@ -190,7 +191,7 @@ define(['require',
if (val !== "") {
val += ", ";
}
picker.element.val(val += picker.startDate.format(Globals.dateFormat));
picker.element.val(val += Utils.formatDate({ date: picker.startDate, zone: false, dateFormat: Globals.dateFormat }));
that.$el.find(".custom-col-1[data-id='value']>[data-key]").trigger('change');
});
}
......@@ -267,7 +268,7 @@ define(['require',
var typeName = value.typeName,
value = value.value;
if (typeName === "date") {
return moment(value).format(Globals.dateFormat);
return Utils.formatDate({ date: value, zone: false, dateFormat: Globals.dateFormat });
} else {
return value;
}
......
......@@ -236,13 +236,12 @@ define([
newVal = val.value;
if (newVal.length > 0 && val.typeName.indexOf("date") > -1) {
newVal = _.map(newVal, function(dates) {
return moment(dates).format(Globals.dateFormat);
return Utils.formatDate({ date: dates, zone: false, dateFormat: Globals.dateFormat });
});
}
if (val.typeName === "date") {
newVal = moment(newVal).format(Globals.dateFormat);
newVal = Utils.formatDate({ date: newVal, zone: false, dateFormat: Globals.dateFormat });
}
}
attrLi += "<tr><td class='business-metadata-detail-attr-key'>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>";
}
......
......@@ -744,7 +744,7 @@ define(['require',
fromRaw: function(rawValue, model) {
var obj = model.toJSON();
if (obj && obj.attributes && obj.attributes.createTime) {
return new Date(obj.attributes.createTime);
return Utils.formatDate({ date: obj.attributes.createTime });
} else {
return '-'
}
......
......@@ -31,8 +31,9 @@ define(['require',
'utils/MigrationEnums',
'moment',
'utils/Utils',
'utils/Globals',
'moment-timezone'
], function(require, Backbone, StatTmpl, StatsNotiTable, TopicOffsetTable, EntityTable, Modal, VCommon, UrlLinks, VTagList, CommonViewFunction, Enums, MigrationEnums, moment, Utils) {
], function(require, Backbone, StatTmpl, StatsNotiTable, TopicOffsetTable, EntityTable, Modal, VCommon, UrlLinks, VTagList, CommonViewFunction, Enums, MigrationEnums, moment, Utils, Globals) {
'use strict';
var StatisticsView = Backbone.Marionette.LayoutView.extend(
......@@ -490,7 +491,7 @@ define(['require',
if (type == 'time') {
return Utils.millisecondsToTime(value);
} else if (type == 'day') {
return moment.tz(value, moment.tz.guess()).format("MM/DD/YYYY h:mm A z");
return Utils.formatDate({ date: value, dateFormat: Globals.meridiemFormat })
} else if (type == 'number') {
return _.numberFormatWithComa(value);
} else if (type == 'millisecond') {
......
......@@ -372,13 +372,16 @@ define(['require',
"singleDatePicker": true,
"showDropdowns": true,
"timePicker": true,
startDate: new Date(),
locale: {
format: Globals.dateTimeFormat
}
};
if (that.tagModel) {
var formatDate = Number(this.value);
dateObj["startDate"] = new Date(formatDate);
if (this.value.length) {
var formatDate = Number(this.value);
dateObj["startDate"] = new Date(formatDate);
}
}
$(this).daterangepicker(dateObj);
}
......
......@@ -19,10 +19,11 @@ define(['require',
'backbone',
'hbs!tmpl/tag/AddTimezoneView_tmpl',
'moment',
'utils/Utils',
'utils/Globals',
'moment-timezone',
'daterangepicker'
], function(require, Backbone, AddTimezoneViewTmpl, moment, Globals) {
], function(require, Backbone, AddTimezoneViewTmpl, moment, Utils, Globals) {
'use strict';
return Backbone.Marionette.ItemView.extend(
......@@ -116,7 +117,7 @@ define(['require',
this.model.set('endTime', that.ui.endTime.val());
}
this.ui.startTime.daterangepicker(startDateObj).on('apply.daterangepicker', function(ev, picker) {
that.ui.startTime.val(picker.startDate.format(Globals.dateTimeFormat));
that.ui.startTime.val(Utils.formatDate({ date: picker.startDate, zone: false }));
_.extend(endDateObj, { "minDate": that.ui.startTime.val() })
that.endDateInitialize(endDateObj);
that.model.set('startTime', that.ui.startTime.val());
......@@ -152,7 +153,7 @@ define(['require',
endDateInitialize: function(option) {
var that = this;
this.ui.endTime.daterangepicker(option).on('apply.daterangepicker', function(ev, picker) {
that.ui.endTime.val(picker.startDate.format(Globals.dateTimeFormat));
that.ui.endTime.val(Utils.formatDate({ date: picker.startDate, zone: false }));
that.model.set('endTime', that.ui.endTime.val());
that.buttonActive({ isButtonActive: true });
}).on('cancel.daterangepicker', function(ev, picker) {
......
......@@ -239,7 +239,7 @@ define(['require',
val = JSON.stringify(val);
}
if (sortedObj.typeName === "date") {
val = new Date(val)
val = Utils.formatDate({ date: val });
}
stringValue += "<tr><td class='html-cell string-cell renderable'>" + _.escape(key) + "</td><td class='html-cell string-cell renderable' data-type='" + sortedObj.typeName + "'>" + _.escape(val) + "</td>";
});
......
......@@ -120,6 +120,16 @@
margin-left: 20px;
width: calc(100% - 27px);
}
.import-export .admin-audit-details {
display: table;
border: 1px solid #ddd;
border-radius: 4px;
tr>td:nth-child(2) {
text-align: right;
}
}
}
.admin-details .expandable .admin-audit-details .attr-type-container {
......@@ -174,7 +184,7 @@
.business-metadata-attr-tableOverlay {
position: absolute;
width: 100%;
width: calc(100% - 40px);
height: 100%;
background: #808080;
z-index: 99;
......
......@@ -101,7 +101,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
return resultStr;
}
},
getValue = function(val) {
getEmptyString = function(key) {
if (options.getEmptyString) {
return options.getEmptyString(key);
}
return "N/A";
},
getValue = function(val, key) {
if (!_.isUndefined(val) && !_.isNull(val)) {
if ((_.isNumber(val) || !_.isNaN(parseInt(val))) && formatIntVal) {
return numberFormat(val);
......@@ -118,7 +124,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
return getHighlightedString(_.escape(newVal));
}
} else {
return "N/A";
return getEmptyString(key);
}
},
fetchInputOutputValue = function(id, defEntity) {
......@@ -137,7 +143,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
id = data.guid;
}
if (value.length > 0) {
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + getValue(value) + '</a>');
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + getValue(value, key) + '</a>');
} else {
scope.$('td div[data-id="' + id + '"]').html('<a href="#!/detailPage/' + id + '">' + _.escape(id) + '</a>');
}
......@@ -179,7 +185,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (_.isString(inputOutputField) || _.isBoolean(inputOutputField) || _.isNumber(inputOutputField)) {
var tempVarfor$check = inputOutputField.toString();
if (tempVarfor$check.indexOf("$") == -1) {
valueOfArray.push('<span class="json-string">' + getValue(inputOutputField) + '</span>');
valueOfArray.push('<span class="json-string">' + getValue(inputOutputField, key) + '</span>');
}
} else if (_.isObject(inputOutputField) && !id) {
var attributesList = inputOutputField;
......@@ -247,7 +253,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (valueOfArray.length) {
subLink = valueOfArray.join(', ');
}
return subLink === "" ? "N/A" : subLink;
return subLink === "" ? getEmptyString(key) : subLink;
}
var valueObjectKeysList = _.keys(valueObject);
if (_.isUndefined(sortBy) || sortBy == true) {
......@@ -263,7 +269,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (defEntity && defEntity.typeName) {
var defEntityType = defEntity.typeName.toLocaleLowerCase();
if (defEntityType === 'date') {
keyValue = keyValue > 0 ? new Date(keyValue) : null;
keyValue = keyValue > 0 ? Utils.formatDate({ date: keyValue }) : null;
} else if (_.isObject(keyValue)) {
keyValue = extractObject({ "keyValue": keyValue, "key": key, 'defEntity': defEntity });
}
......@@ -276,13 +282,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (_.isObject(valueObject[key])) {
val = keyValue
} else if (key === 'guid' || key === "__guid") {
if (options.fromAdminAudit) {
val = getValue(keyValue);
if (options.guidHyperLink === false) {
val = getValue(keyValue, key);
} else {
val = '<a title="' + key + '" href="#!/detailPage/' + _.escape(keyValue) + '">' + getValue(keyValue) + '</a>';
val = '<a title="' + key + '" href="#!/detailPage/' + _.escape(keyValue) + '">' + getValue(keyValue, key) + '</a>';
}
} else {
val = getValue(keyValue);
val = getValue(keyValue, key);
}
if (isTable) {
var value = val,
......@@ -393,7 +399,11 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
} else {
if (isCapsuleView) {
if (obj.type === "date") {
obj.value = obj.value + " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
if (Enums.queryBuilderDateRangeUIValueToAPI[obj.value]) {
obj.value = Enums.queryBuilderDateRangeUIValueToAPI[obj.value];
} else {
obj.value = obj.value + " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
}
}
return '<div class="capsuleView"><span class="key">' + (Enums.systemAttributes[obj.id] ? Enums.systemAttributes[obj.id] : _.escape(obj.id)) + '</span><span class="operator">' + _.escape(obj.operator) + '</span><span class="value">' + (Enums[obj.id] ? Enums[obj.id][obj.value] : _.escape(obj.value)) + "</span><div class='fa fa-close clear-attr' data-type=" + type + " data-id=" + _.escape(obj.id) + "></div></div>";
}
......@@ -632,7 +642,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
rule = {};
if (apiObj) {
rule = { attributeName: temp[0], operator: mapUiOperatorToAPI(temp[1]), attributeValue: _.trim(temp[2]) }
rule.attributeValue = rule.type === 'date' && formatDate && rule.attributeValue.length ? moment(parseInt(rule.attributeValue)).format(Globals.dateTimeFormat) : rule.attributeValue;
rule.attributeValue = rule.type === 'date' && formatDate && rule.attributeValue.length ? Utils.formatDate({ date: parseInt(rule.attributeValue), zone: false }) : rule.attributeValue;
} else {
rule = { id: temp[0], operator: temp[1], value: _.trim(temp[2]) }
if (temp[3]) {
......@@ -641,13 +651,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
if (rule.operator === "TIME_RANGE") {
if (temp[2].indexOf(",") > -1) {
rule.value = temp[2].split(",").map(function(udKey) {
return moment(parseInt(udKey.trim())).format(Globals.dateTimeFormat)
return Utils.formatDate({ date: parseInt(udKey.trim()), zone: false })
}).join(" - ")
} else {
rule.value = Enums.queryBuilderDateRangeAPIValueToUI[_.trim(rule.value)] || rule.value;
}
} else if (rule.type === 'date' && formatDate && rule.value.length) {
rule.value = moment(parseInt(rule.value)).format(Globals.dateTimeFormat)
rule.value = Utils.formatDate({ date: parseInt(rule.value), zone: false })
}
}
return rule;
......
......@@ -42,5 +42,6 @@ define(["require"], function(require) {
Globals.DEFAULT_UI = "v2";
Globals.dateFormat = "YYYY/MM/DD";
Globals.dateTimeFormat = "YYYY/MM/DD HH:mm:ss";
Globals.meridiemFormat = "MM/DD/YYYY h:mm A z";
return Globals;
});
\ No newline at end of file
......@@ -16,7 +16,7 @@
* limitations under the License.
*/
define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums', 'pnotify.buttons', 'pnotify.confirm'], function(require, Globals, pnotify, Messages, Enums) {
define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums', 'moment', 'moment-timezone', 'pnotify.buttons', 'pnotify.confirm'], function(require, Globals, pnotify, Messages, Enums, moment) {
'use strict';
var Utils = {};
......@@ -918,5 +918,37 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
$(this).removeClass('button-loader').removeAttr("disabled");
$(this).siblings("button.cancel").prop("disabled", false);
}
Utils.formatDate = function(options) {
var dateValue = null,
dateFormat = Globals.dateTimeFormat,
isValidDate = false;
if (options) {
if (options.dateFormat) {
dateFormat = options.dateFormat;
}
if (options.date) {
if (options.date === "-") {
dateValue = options.date;
} else {
dateValue = moment(options.date)
if (dateValue._isValid) {
isValidDate = true;
dateValue = dateValue.format(dateFormat);
}
}
}
}
if (dateValue !== "-") {
if (isValidDate === false && options && options.defaultDate !== false) {
dateValue = moment().format(dateFormat);
}
if (!options || options && options.zone !== false) {
dateValue += " (" + moment.tz(moment.tz.guess()).zoneAbbr() + ")";
}
}
return dateValue;
}
return Utils;
});
\ No newline at end of file
......@@ -20,9 +20,10 @@ define(['require',
'backbone',
'hbs!tmpl/audit/AuditTableLayoutView_tmpl',
'collection/VEntityList',
'utils/Utils',
'utils/Enums',
'utils/UrlLinks'
], function(require, Backbone, AuditTableLayoutView_tmpl, VEntityList, Enums, UrlLinks) {
], function(require, Backbone, AuditTableLayoutView_tmpl, VEntityList, Utils, Enums, UrlLinks) {
'use strict';
var AuditTableLayoutView = Backbone.Marionette.LayoutView.extend(
......@@ -200,7 +201,6 @@ define(['require',
view.render();
$(el).append($('<div>').html(view.$el));
});
}
},
user: {
......@@ -214,7 +214,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
}
})
},
......
......@@ -166,7 +166,7 @@ define(['require',
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
if (rawValue) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
} else {
return '-';
}
......@@ -181,7 +181,7 @@ define(['require',
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
if (rawValue) {
return new Date(rawValue);
return Utils.formatDate({ date: rawValue });
} else {
return '-';
}
......
......@@ -318,7 +318,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(model.get('createTime'));
return Utils.formatDate({ date: model.get('createTime') });
}
})
},
......@@ -340,7 +340,7 @@ define(['require',
editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) {
return new Date(model.get('updateTime'));
return Utils.formatDate({ date: model.get('updateTime') });
}
})
},
......
......@@ -442,11 +442,12 @@ define(['require',
var dateObj = {
"singleDatePicker": true,
"showDropdowns": true,
"startDate": new Date(),
locale: {
format: Globals.dateFormat
}
};
if (that.guid) {
if (that.guid && this.value.length) {
dateObj["startDate"] = new Date(Number(this.value));
}
$(this).daterangepicker(dateObj);
......@@ -609,7 +610,8 @@ define(['require',
if (dataValue) {
entityValue = moment(dataValue);
} else {
entityValue = moment().format(Globals.dateFormat);
entityValue = Utils.formatDate({ zone: false, dateFormat: Globals.dateFormat });
}
}
}
......
......@@ -17,11 +17,12 @@
*/
define(['require',
'backbone',
'utils/Utils',
'hbs!tmpl/entity/EntityBusinessMetaDataItemView_tmpl',
'moment',
'utils/Globals',
'daterangepicker'
], function(require, Backbone, EntityBusinessMetaDataItemViewTmpl, moment, Globals) {
], function(require, Backbone, Utils, EntityBusinessMetaDataItemViewTmpl, moment, Globals) {
'use strict';
return Backbone.Marionette.ItemView.extend({
......@@ -167,12 +168,13 @@ define(['require',
var dateStr = [];
_.each(val, function(selectedDate) {
selectedDate = parseInt(selectedDate);
dateStr.push(moment(selectedDate).format(Globals.dateFormat));
dateStr.push(Utils.formatDate({ date: selectedDate, zone: false, dateFormat: Globals.dateFormat }));
});
val = dateStr.join(',');
} else if (!isMultiValued && val) {
val = parseInt(val);
val = moment(val).format(Globals.dateFormat);
val = Utils.formatDate({ date: val, zone: false, dateFormat: Globals.dateFormat });
}
}
if (typeName === "string" || typeName === "array<string>") {
......@@ -182,7 +184,7 @@ define(['require',
} else if (typeName === "date" || typeName === "array<date>") {
returnEL = '<' + (isMultiValued ? "textarea" : "input") + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '"data-multi="' + isMultiValued + '" data-type="date" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '>' + (isMultiValued === true && !_.isUndefinedNull(val) ? val : "") + (isMultiValued ? "</textarea>" : "");
setTimeout(function() {
var dateObj = { singleDatePicker: true, showDropdowns: true, autoUpdateInput: isMultiValued ? false : true },
var dateObj = { singleDatePicker: true, showDropdowns: true, autoUpdateInput: isMultiValued ? false : true, locale: { format: Globals.dateFormat } },
dateEl = that.$el.find('[data-type="date"][data-key="' + key + '"]').daterangepicker(dateObj);
if (isMultiValued) {
dateEl.on("apply.daterangepicker", function(ev, picker) {
......@@ -190,7 +192,7 @@ define(['require',
if (val !== "") {
val += ", ";
}
picker.element.val(val += picker.startDate.format(Globals.dateFormat));
picker.element.val(val += Utils.formatDate({ date: picker.startDate, zone: false, dateFormat: Globals.dateFormat }));
that.$el.find(".custom-col-1[data-id='value']>[data-key]").trigger('change');
});
}
......@@ -267,7 +269,8 @@ define(['require',
var typeName = value.typeName,
value = value.value;
if (typeName === "date") {
return moment(value).format(Globals.dateFormat);
return Utils.formatDate({ date: value, zone: false, dateFormat: Globals.dateFormat });
} else {
return value;
}
......
......@@ -236,11 +236,11 @@ define([
newVal = val.value;
if (newVal.length > 0 && val.typeName.indexOf("date") > -1) {
newVal = _.map(newVal, function(dates) {
return moment(dates).format(Globals.dateFormat);
return Utils.formatDate({ date: dates, zone: false, dateFormat: Globals.dateFormat });
});
}
if (val.typeName === "date") {
newVal = moment(newVal).format(Globals.dateFormat);
newVal = Utils.formatDate({ date: newVal, zone: false, dateFormat: Globals.dateFormat });
}
}
......
......@@ -756,7 +756,7 @@ define(['require',
fromRaw: function(rawValue, model) {
var obj = model.toJSON();
if (obj && obj.attributes && obj.attributes.createTime) {
return new Date(obj.attributes.createTime);
return Utils.formatDate({ date: obj.attributes.createTime });
} else {
return '-'
}
......
......@@ -30,8 +30,9 @@ define(['require',
'utils/Enums',
'moment',
'utils/Utils',
'utils/Globals',
'moment-timezone'
], function(require, Backbone, StatTmpl, StatsNotiTable, TopicOffsetTable, EntityTable, Modal, VCommon, UrlLinks, VTagList, CommonViewFunction, Enums, moment, Utils) {
], function(require, Backbone, StatTmpl, StatsNotiTable, TopicOffsetTable, EntityTable, Modal, VCommon, UrlLinks, VTagList, CommonViewFunction, Enums, moment, Utils, Globals) {
'use strict';
var StatisticsView = Backbone.Marionette.LayoutView.extend(
......@@ -397,7 +398,7 @@ define(['require',
if (type == 'time') {
return Utils.millisecondsToTime(value);
} else if (type == 'day') {
return moment.tz(value, moment.tz.guess()).format("MM/DD/YYYY h:mm A z");
return Utils.formatDate({ date: value, dateFormat: Globals.meridiemFormat })
} else if (type == 'number') {
return _.numberFormatWithComa(value);
} else if (type == 'millisecond') {
......
......@@ -372,13 +372,16 @@ define(['require',
"singleDatePicker": true,
"showDropdowns": true,
"timePicker": true,
startDate: new Date(),
locale: {
format: Globals.dateTimeFormat
}
};
if (that.tagModel) {
var formatDate = Number(this.value);
dateObj["startDate"] = new Date(formatDate);
if (this.value.length) {
var formatDate = Number(this.value);
dateObj["startDate"] = new Date(formatDate);
}
}
$(this).daterangepicker(dateObj);
}
......
......@@ -19,10 +19,11 @@ define(['require',
'backbone',
'hbs!tmpl/tag/AddTimezoneView_tmpl',
'moment',
'utils/Utils',
'utils/Globals',
'moment-timezone',
'daterangepicker'
], function(require, Backbone, AddTimezoneViewTmpl, moment, Globals) {
], function(require, Backbone, AddTimezoneViewTmpl, moment, Utils, Globals) {
'use strict';
return Backbone.Marionette.ItemView.extend(
......@@ -116,7 +117,7 @@ define(['require',
this.model.set('endTime', that.ui.endTime.val());
}
this.ui.startTime.daterangepicker(startDateObj).on('apply.daterangepicker', function(ev, picker) {
that.ui.startTime.val(picker.startDate.format(Globals.dateTimeFormat));
that.ui.startTime.val(Utils.formatDate({ date: picker.startDate, zone: false }));
_.extend(endDateObj, { "minDate": that.ui.startTime.val() })
that.endDateInitialize(endDateObj);
that.model.set('startTime', that.ui.startTime.val());
......@@ -152,7 +153,7 @@ define(['require',
endDateInitialize: function(option) {
var that = this;
this.ui.endTime.daterangepicker(option).on('apply.daterangepicker', function(ev, picker) {
that.ui.endTime.val(picker.startDate.format(Globals.dateTimeFormat));
that.ui.endTime.val(Utils.formatDate({ date: picker.startDate, zone: false }));
that.model.set('endTime', that.ui.endTime.val());
that.buttonActive({ isButtonActive: true });
}).on('cancel.daterangepicker', function(ev, picker) {
......
......@@ -239,7 +239,7 @@ define(['require',
val = JSON.stringify(val);
}
if (sortedObj.typeName === "date") {
val = new Date(val)
val = Utils.formatDate({ date: val });
}
stringValue += "<tr><td class='html-cell string-cell renderable'>" + _.escape(key) + "</td><td class='html-cell string-cell renderable' data-type='" + sortedObj.typeName + "'>" + _.escape(val) + "</td>";
});
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment