diff --git a/Modern Development/Service Portal Widgets/Change Calendar Report/Body HTML template.html b/Modern Development/Service Portal Widgets/Change Calendar Report/Body HTML template.html new file mode 100644 index 0000000000..5be1019208 --- /dev/null +++ b/Modern Development/Service Portal Widgets/Change Calendar Report/Body HTML template.html @@ -0,0 +1,8 @@ +
diff --git a/Modern Development/Service Portal Widgets/Change Calendar Report/CSS b/Modern Development/Service Portal Widgets/Change Calendar Report/CSS new file mode 100644 index 0000000000..57bac6813a --- /dev/null +++ b/Modern Development/Service Portal Widgets/Change Calendar Report/CSS @@ -0,0 +1,52 @@ +.report-widget-wrap { + background:#fff; + padding:15px; + margin: 0 0 15px 0; + } + + .report-widget-title { + padding: $sp-space--xl; + font-weight:bold; + margin-top: 0; + margin-bottom: 0; + font-family: $now-sp-font-family-sans-serif; + color: $text-color; + font-size: $font-size-h4; + + } + + .highcharts-container g.highcharts-button *, + .highcharts-container image.hc-image { + transition: fill-opacity 0.3s linear, stroke-opacity 0.3s linear, opacity 0.3s linear; + fill-opacity: 0; + stroke-opacity: 0; + opacity:0; + } + + .highcharts-container:hover g.highcharts-button *, + .highcharts-container:hover image.hc-image { + fill-opacity: 1; + stroke-opacity: 1; + opacity:1; + } + + .highcharts-legend-item span::after, + .highcharts-legend-item::after { + content: "\200E"; + } + + table.wide .pivot_cell, + table.wide .pivot_caption, + table.wide .pivot_caption_dark { + padding: 3px 5px; + } + .highlight-wrap { + display: none; + } + + .fc-week-number { + width: 42px; + background-color: #ededed; + } + + diff --git a/Modern Development/Service Portal Widgets/Change Calendar Report/Client Controller b/Modern Development/Service Portal Widgets/Change Calendar Report/Client Controller new file mode 100644 index 0000000000..811bc18e51 --- /dev/null +++ b/Modern Development/Service Portal Widgets/Change Calendar Report/Client Controller @@ -0,0 +1,101 @@ +function($scope, $uibModal, $timeout, spUtil) { + var c = this; + var reportId = c.options.report_id || ''; + c.rectangleId = c.widget.rectangle_id || c.data.rectangleId; + c.showTitle = (c.options.show_title === true || c.options.show_title === 'true'); + c.title = c.options.title || ''; + + if (c.options.widget_parameters) { + c.initialMessage = c.data.ch.i18n.building; + window.chartHelpers = window.chartHelpers || {}; + $.extend(window.chartHelpers, c.data.ch); + + $timeout(function() { + var targetEl = $("#report-widget-" + c.rectangleId); + embedReportById(targetEl, reportId); + + $timeout(function() { + targetEl.off('click', 'a[href*="change_request.do?sys_id"]'); + + targetEl.on('click', 'a[href*="change_request.do?sys_id"]', function(event) { + event.preventDefault(); + var href = $(this).attr('href') || ''; + var match = href.match(/sys_id=([a-f0-9]{32})/i); + var sysId = match ? match[1] : ''; + + var modalData = { + number: '', + short_description: '', + description: '', + sys_id: sysId + }; + + // Open modal immediately + $uibModal.open({ + controller: function($scope, $uibModalInstance, $sce) { + $scope.data = modalData; + + $scope.getTrustedDescription = function() { + if (!$scope.data.description) return ''; + var text = $scope.data.description; + + // Convert line breaks toChange Number: {{data.number}}
' + + 'Short Description: {{data.short_description}}
' + + 'Description:
' + + '' + + '