From a2aeb1dca2f2bd34a1f7df7e6b07053dd320baa4 Mon Sep 17 00:00:00 2001 From: amrita.vishnoi Date: Tue, 23 Jan 2018 17:39:44 +0530 Subject: [PATCH] taken these files from develop --- 400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js | 4085 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html | 1143 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 2 files changed, 2613 insertions(+), 2615 deletions(-) diff --git a/400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js b/400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js index c0f5c8a..2e8f15d 100644 --- a/400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js +++ b/400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js @@ -1,2043 +1,2042 @@ -'use strict'; - -AIA.controller("TileViewListController", ["$scope", "$window", "$rootScope", "$compile", "$http", "$log", "$location", "$timeout", "DA", "Modules", "$routeParams", "BodyRegions", "BodySystems", "ViewOrientations", "ImageTypes", "DataService", "ModuleService", -function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeout, DA, Modules, $routeParam, BodyRegions, BodySystems, ViewOrientations, ImageTypes, DataService, ModuleService) { - - - $rootScope.OpenedTileData = []; - var DISSECTIBLE_ANATOMY = 'Dissectible Anatomy'; - var ATLAS_ANATOMY = 'Atlas Anatomy'; - var CLINICAL_ILLUSTRATION = 'Clinical Illustrations'; - var CLINICAL_ANIMATION = 'Clinical Animations'; - $rootScope.closeBtnImgPath = "~/../content/images/speeachBubbleClose.png"; - $rootScope.listArray = []; - //variables to bind Filter by Controls - $scope.searchAAListViewData = []; - $scope.SelectedAAthumbImage = []; - $scope.SelectedAAImage = []; - $scope.SelectedAASummary = []; - $scope.SelectedAAId = []; - $scope.SelectedAATitle = []; - $scope.selectedAAListViewData = []; - $scope.filterstring = false; - $scope.AllBodyRegion = []; - $scope.AllBodySystem = []; - $scope.AllOrientation = []; - $scope.AllImageType = []; - $rootScope.speechBubbleDimaensions = []; - $scope.runningSearchWorkers = []; - $scope.clickedPins = []; - $scope.sliderPercentValue = 1; - $scope.query = { - selectedbodyregion: '', - selectedbodysystem: '', - selectedorientation: '', - selectedimagetype: '', - }; - $scope.activePinArray = []; - $scope.showTabButton = true; - $scope.isListViewDataLoaded = true; - - $scope.setActiveTab = function (tabToSet) { - - $scope.activeTab = tabToSet; - localStorage.setItem("activeTab", $scope.activeTab); - if ($scope.activeTab == 1) { - $('#grid-view').css("display", "block"); - $('#list-view').css("display", "none"); - $("#demoView").remove(); - } - else { - - $('#grid-view').css("display", "none"); - $('#list-view').css("display", "block"); - } - }; - - $scope.loadForModuleById = function (moduleId) { - $rootScope.openModules.push({ "ModuleId": 2 }); - if ($rootScope.refreshcheck == null) { - $location.path('/'); - } - $scope.moduleId = moduleId; - $scope.activeTab = 1; - console.log('loadForModuleById is called') - $rootScope.moduleName = Modules[moduleId].Name; - $rootScope.currentActiveModuleTitle = $rootScope.moduleName; - $scope.AllBodyRegion = BodyRegions; - $scope.AllBodySystem = BodySystems; - $scope.AllOrientation = ViewOrientations; - $scope.AllImageType = ImageTypes; - var promise = ModuleService.loadModuleDataBasedOnModuleName($scope.moduleName) - .then( - function (result) { - - $scope.moduleLandingData = result; - // setTimeout(function () { $('#' + $rootScope.highlightid).find('.thumbnail').addClass('hightlightstate'); }, 100); - setTimeout(function () { - if ($rootScope.getLocalStorageValue('AAGridViewHighlightThumbnail') !== null) { - $('#' + $rootScope.getLocalStorageValue("AAGridViewHighlightThumbnail")).find('.thumbnail').addClass('HightLightThumbnail'); - } - if ($rootScope.getLocalStorageValue('AAGridViewScroll') !== null && $location.url() == "/tile-view-list") { - $('html, body').animate({ scrollTop: $rootScope.getLocalStorageValue('AAGridViewScroll') }, 'slow'); - } - }, 100); - //console.log(JSON.stringify(result, null, 4)); - }, - function (error) { - // handle errors here - console.log(' error: ' + error.statusText); - } - ) - $('#list-view').css('display', 'none'); - } - - //$scope.$on('$viewContentLoaded', function (event) { - - // $scope.loadForModuleById(); - - //}); - $scope.isOpenBtnClicked = false; - $scope.openModuleItemView = function (event) { - $rootScope.MenuModuleName = "AA"; - localStorage.setItem("activeTab", $scope.activeTab); - //0. Get selected Image Id - if ($scope.isListViewButtonClicked == true) { - if ($scope.isOpenBtnClicked == true) { - - var moduleItemDataToBeSaved = $("#demoText").text().trim(); - $scope.isOpenBtnClicked = false; - } - else { - var moduleItemDataToBeSavedID = event.currentTarget.id; - localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID); - var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim(); - } - } - else { - var moduleItemDataToBeSaved = event.target.id; - localStorage.setItem("listViewSelectedID", event.currentTarget.id); - $scope.isListViewButtonClicked = false; - } - - //1.Filter selected module ietem data and get the pushed opened moduile array object - $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData); - - //2. Pick the image name to create a source to open - $rootScope.imageId = $rootScope.OpenedTileData[0]; - $rootScope.imageName = $rootScope.OpenedTileData[3]; - $rootScope.bodySystemName = $rootScope.OpenedTileData[2]; - $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; - $scope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; - //$rootScope.listArray = []; - $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved }); - //3. set opened module item ti - localStorage.setItem("currentViewTitle", $rootScope.OpenedTileData[6]); - localStorage.setItem("AAGridViewScroll", $($window).scrollTop()); - localStorage.setItem("AAGridViewHighlightThumbnail", $(event.target).parent().parent().parent().attr('id')); - - //3. Navigate to the Module-item-view - var u = $location.url(); - $location.url('/module-item-view'); - } - - - $scope.openListViewModuleItem = function (event) { - $("#demoView").remove(); - var moduleItemDataToBeSavedID = event.currentTarget.id; - $("#list-view table tbody tr").removeClass("active"); - localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID); - $("#list-view table tbody #" + moduleItemDataToBeSavedID).addClass("active"); - localStorage.setItem("AAListViewScroll", $("#list-view table tbody").scrollTop()); - var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim(); - $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData); - $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; - //$rootScope.listArray = []; - $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved }); - $("#viewList").append("
" + moduleItemDataToBeSaved + "
Open
"); - } - - - $scope.openModuleItem = function () { - if ($rootScope.refreshcheck == null) { - $location.path('/'); - } - var jsContentURL; - var moduleItemViewDivId; - - //1. create a jsPanel and load the module item view - if ($rootScope.moduleName == ATLAS_ANATOMY) { - - jsContentURL = 'app/views/aa/atlas-anatomy-detail.html'; - moduleItemViewDivId = 'aaDetailPageDiv'; - } - else if ($rootScope.moduleName == CLINICAL_ANIMATION) { - //to do, in next phase of project - - } - else if ($rootScope.moduleName == CLINICAL_ILLUSTRATION) { - //to do, in next phase of project - - } - - //1. create a jsPanel and load the module item view - if ($rootScope.moduleName == ATLAS_ANATOMY) { - $.jsPanel({ - id: 'ImagePanel', - selector: '.aaBodyView', - theme: 'success', - currentController: 'TileViewListController', - parentSlug: 'tile-view-list', - ajax: { - url: jsContentURL - }, - title: $rootScope.getLocalStorageValue("currentViewTitle"), - - position: { - top: 70, - left: 1, - }, - - size: { width: $(window).outerWidth() - 10, height: $(window).outerHeight() - 125 }, - - }); - - console.log('jsPanel loaded ImagePanel exist= ' + document.getElementById('ImagePanel')) - - //0.3 - var aaViewElement = angular.element(document.getElementById(moduleItemViewDivId)); - - //0.4 for Opening module item, load it into image - $rootScope.isLoading = true; - $('#spinner').css('visibility', 'visible'); - var openedImage = new Image(); - openedImage.id = 'modItemImage'; - openedImage.name = $rootScope.OpenItemImagePath; - - openedImage.onload = function () { - $scope.imageWidth = this.width; - $scope.imageHeight = this.height; - - - $timeout(function () { - $compile(aaViewElement.contents())($scope); - - //if (document.getElementById('aaDetailPageDiv') != null) { - if (document.getElementById('aaBodyView') != null) { - - //0.4 added some stylesheets - $('#aaBodyView').css("height", $(window).outerHeight() - 65); - - $('#aaBodyView').css("width", $(window).outerWidth() - 15); - - $rootScope.canvasDivHeight = $('.jsPanel-content').height() - $('.main2 .stickey-area').height(); - - $('.canvasDivClass').css("height", $rootScope.canvasDivHeight); - - $scope.currentTitleFromJson = $rootScope.getLocalStorageValue("currentViewTitle"); - $("#modItemImage").attr('src', $rootScope.OpenItemImagePath); - - - $rootScope.ViewImageWidth = $("#modItemImage").width(); - $scope.ViewImageWidth = $("#modItemImage").width(); - $scope.ViewImageHeight = $("#modItemImage").height(); - - $scope.relativeDimesion = 0; - $("#modItemImage").css("width", $rootScope.ViewImageWidth + "px"); - //0.5 create canvas on the top of image so that I can draw a line over the canvas. - var canvas = document.createElement('canvas'); - canvas.id = 'aaDetailViewCanvas'; - canvas.className = '.aaCanvas' - canvas.height = parseInt(($scope.imageHeight)); - canvas.width = parseInt($scope.imageWidth); - canvas.style.left = '0px'; - canvas.style.top = '0px'; - canvas.style.position = "absolute"; - $("#canvasDiv").append(canvas); - $scope.context = canvas.getContext("2d") - //6. Show all pins on AA opened item - $scope.showAllPins(); - //7. Highlight all system body list in left side - $scope.highlightBodySystemList(); - } - $(".slider").slider({ - min: 25, - max: 100, - value: 100, - range: "min", - orientation: "vertical", - slide: function (event, ui) { - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.sliderVal = ui.value; - scope.removeSpeechBubble(); - var relativeWidth = 0; - var relativeHeight = 0; - if (ui.value == 25 || ui.value == 40 || ui.value == 55 || ui.value == 70 || ui.value == 85 || ui.value == 100) { - if (ui.value == 100) { - relativeWidth = scope.ViewImageWidth; - relativeHeight = scope.ViewImageHeight - scope.sliderPercentValue = 1.0; - } - else if (ui.value == 85) { - relativeWidth = scope.ViewImageWidth * 0.85; - relativeHeight = scope.ViewImageHeight * 0.85; - scope.sliderPercentValue = 0.85; - - } else if (ui.value == 70) { - relativeWidth = scope.ViewImageWidth * 0.70; - relativeHeight = scope.ViewImageHeight * 0.70; - scope.sliderPercentValue = 0.70; - } else if (ui.value == 55) { - - relativeWidth = scope.ViewImageWidth * 0.55; - relativeHeight = scope.ViewImageHeight * 0.55; - scope.sliderPercentValue = 0.55; - - } else if (ui.value == 40) { - - relativeWidth = scope.ViewImageWidth * 0.40; - relativeHeight = scope.ViewImageHeight * 0.40; - scope.sliderPercentValue = 0.40; - - } else if (ui.value == 25) { - - relativeWidth = scope.ViewImageWidth * 0.25; - relativeHeight = scope.ViewImageHeight * 0.25; - scope.sliderPercentValue = 0.25; - - } - } - - if (ui.value == 25 || ui.value == 40 || ui.value == 55 || ui.value == 70 || ui.value == 85 || ui.value == 100) { - $("#modItemImage").css("width", relativeWidth + "px"); - $("#modItemImage").css("height", relativeHeight + "px"); - $("#aaDetailViewCanvas").css("width", relativeWidth + "px"); - $("#modItemImage").css("height", relativeHeight + "px"); - - $("#modItemImage").attr('src', ''); - - - $("#aaDetailViewCanvas").remove(); - //0.5 create canvas on the top of image so that I can draw a line over the canvas. - var canvas = document.createElement('canvas'); - canvas.id = 'aaDetailViewCanvas'; - canvas.className = 'aaCanvas'; - canvas.height = relativeHeight; - canvas.width = relativeWidth; - canvas.style.left = '0px'; - canvas.style.top = '0px'; - canvas.style.position = "absolute"; - - $("#canvasDiv").append(canvas); - scope.context = canvas.getContext("2d") - $("#modItemImage").attr('src', scope.OpenItemImagePath); - scope.isSliderChange = true; - var btnID = ''; - $("div.tools div:eq(1) div").each(function () { - if ($(this).find("button").hasClass("btn-primary")) { - btnID = $(this).find("button").attr("id"); - $('#' + btnID).removeClass("btn-black"); - $('#' + btnID).addClass("btn-primary"); - } - }); - scope.isSelectedPinBtnClickedAftrSliderCange = true; - switch (btnID) { - - case "hidePinBtn": - break; - case "allPinBtn": - scope.showAllPins(); - break; - case "selectedPin": - scope.showAllPins(); - setTimeout(function () { - console.log(scope.allPinDataArray); - scope.activePinOnSliderChange(); - }, 1000); - break; - } - } - - }); - } - }) - .slider("pips", { - rest: "label", - step: "15" - }); - }, 500); - } - - openedImage.onerror = loadFailure; - openedImage.src = $rootScope.OpenItemImagePath; - } - - } - - $scope.highlightBodySystemList = function () { - $rootScope.bodySystemNames = $rootScope.bodySystemName.trim().split(/\s*,\s*/); - var bodySystemListObj = document.getElementById("bodySystemList").getElementsByTagName("a"); - var bodySystemListlength = bodySystemListObj.length; - for (var i = 0; i < bodySystemListlength; i++) { - //var boldTag = lis[i]; - for (var j = 0; j < $rootScope.bodySystemNames.length; j++) { - if ((bodySystemListObj[i].innerHTML) == ($rootScope.bodySystemNames[j])) { - $("#" + i).parent().removeClass("disabledSelectedSystem"); - - } - } - - } - } - function loadFailure() { - console.log('unable to load opened module ietem'); - return true; - } - - - angular.element(document).ready(function (e) { - $("#ImagePanel").resize(function () { - $("#canvasDiv").scrollLeft($rootScope.CanvasDivLeftPosition); - $("#canvasDiv").scrollTop($rootScope.CanvasDivTopPosition); - }); - $(document).on("click", "#ImagePanel .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () { - $scope.setActiveTab(parseInt($rootScope.getLocalStorageValue("activeTab"))); - $(".tools").css("z-index", "15000"); - $rootScope.selectedBodySystemName = 'All'; - $rootScope.selectedBodySystemId = 0; - $rootScope.searchSelectedText = ''; - - }); - - $(document).on("click", "#dvPrintPreview .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () { - - if ($rootScope.isShowAllPinBtnActiveInPrintPreviewMode == true) { - $("#allPinBtn").trigger("click"); - $rootScope.isShowAllPinBtnActiveInPrintPreviewMode = false; - } - if ($rootScope.isHidePinBtnActiveInPrintPreview == true) { - $("#hidePinBtn").trigger("click"); - $rootScope.isHidePinBtnActiveInPrintPreview = false; - } - if($rootScope.isShowSelectedPinActiveInPrintPrevMode == true) - { - $("#selectedPin").trigger("click"); - $rootScope.isShowSelectedPinActiveInPrintPrevMode = false; - } - }); - - }) - $rootScope.aaPinDataArray = []; - $scope.showAllPins = function () { - - $scope.allPinDataArray = []; - var promise = ModuleService.getPinDataForImage($rootScope.imageName) - - .then( - function (result) { - - //load navigator image - if (result.data.Root._NavigatorImage != undefined) { - document.getElementById('navimg').src = '~/../content/images/aa/images/navigator/' + result.data.Root._NavigatorImage; - } - else { - document.getElementById('navimg').style.visibility = 'hidden'; - document.getElementById('navigatorBtn').style.visibility = 'hidden'; - document.getElementById('navigatorDiv').style.visibility = 'hidden'; - - } - - //draw pins - $scope.aaPinData = result.data.Root.Item; - if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { - $rootScope.aaPinDataArray = $scope.aaPinData - angular.forEach($scope.aaPinData, function (value, key) { - $scope.allPinDataArray.push(value._PinId); - $scope.drawStaticPinsOnImage('aaDetailViewCanvas', value._PinId, value._PinX, value._PinY, value._HeadX, value._HeadY) - }) - - - - //load search/vocab data - $rootScope.loadSearchData(); - } - }, - function (error) { - - console.log(' error in showAllPins: ' + error.statusText); - } - ) - if ($scope.isSliderChange == true) { - $timeout(function () { - $scope.activePinOnLayerChange(); - }, 1000); - - } - - } - - - $scope.FilterByImage = function (moduleId, query) { - $scope.moduleId = moduleId; - $scope.filterstring = true; - - console.log('loadForModuleById is called'); - - $rootScope.moduleName = Modules[moduleId].Name; - while ($scope.searchAAListViewData.length) { - $scope.searchAAListViewData.pop(); - } - - var filtercount = 0; - if (typeof (query.selectedbodyregion) !== "undefined" && (query.selectedbodyregion !== null && query.selectedbodyregion !== "")) { - filtercount = filtercount + 1; - localStorage.setItem("CurrentBodyRegion", query.selectedbodyregion); - } - else { - localStorage.setItem("CurrentBodyRegion", ''); - } - - if (typeof (query.selectedbodysystem) !== "undefined" && (query.selectedbodysystem !== null && query.selectedbodysystem !== "")) { - filtercount = filtercount + 1; - localStorage.setItem("CurrentBodySystem", query.selectedbodysystem); - } - else { - localStorage.setItem("CurrentBodySystem", ''); - } - - if (typeof (query.selectedorientation) !== "undefined" && (query.selectedorientation !== null && query.selectedorientation !== '')) { - filtercount = filtercount + 1; - localStorage.setItem("CurrentOrientation", query.selectedorientation); - } - else { - localStorage.setItem("CurrentOrientation", ''); - } - - if (typeof (query.selectedimagetype) !== "undefined" && (query.selectedimagetype !== null && query.selectedimagetype !== '')) { - filtercount = filtercount + 1; - localStorage.setItem("CurrentImageType", query.selectedimagetype); - } - else { - localStorage.setItem("CurrentImageType", ''); - } - - var promise = ModuleService.loadModuleDataBasedOnModuleName($scope.moduleName) - .then( - function (result) { - // alert(JSON.stringify($scope.moduleLandingData)); - $scope.moduleLandingData = result; - $scope.selectedAAListViewData = new jinqJs() - .from($scope.moduleLandingData.data.root.Item) - .orderBy([{ field: '_Title', sort: 'asc' }]) - .select(); - - $('#grid-view').empty(); - //alert(JSON.stringify($scope.selectedAAListViewData)) - angular.forEach($scope.selectedAAListViewData, function (value, key) { - - var selectimg = true; - var count = 0; - - - if (typeof (query.selectedbodyregion) !== "undefined" && (query.selectedbodyregion !== null && query.selectedbodyregion !== "")) { - var posbodyregion = value._BodyRegion.indexOf((query.selectedbodyregion.trim())); - if (posbodyregion > -1) { - selectimg = true; - count = count + 1; - } - else { - selectimg = false; - count = count - 1; - } - - } - - if (typeof (query.selectedbodysystem) !== "undefined" && (query.selectedbodysystem !== null && query.selectedbodysystem !== "")) { - var posbodysystem = value._BodySystem.indexOf(query.selectedbodysystem); - if (posbodysystem > -1) { - count = count + 1; - selectimg = true; - } else { - selectimg = false; - count = count - 1; - } - } - - if (typeof (query.selectedorientation) !== "undefined" && (query.selectedorientation !== null && query.selectedorientation !== "")) { - var posorientation = value._ViewOrientation.indexOf(query.selectedorientation); - if (posorientation > -1) { - count = count + 1; - selectimg = true; - - } else { - selectimg = false; - count = count - 1; - } - - } - - if (typeof (query.selectedimagetype) !== "undefined" && (query.selectedimagetype !== null && query.selectedimagetype !== "")) { - var posimagetype = value._ImageType.indexOf(query.selectedimagetype); - if (posimagetype > -1) { - count = count + 1; - selectimg = true; - - } else { - selectimg = false; - count = count - 1; - } - - } - - if (selectimg === true && count >= filtercount) { - - $scope.imagePath = "../content/images/aa/thumbnails/" + value._TileImageName; - - - var $el = $('
' - + '
').appendTo('#grid-view'); - - - $compile($el)($scope); - - $(".sidebar").mCustomScrollbar({ - autoHideScrollbar: true, - //theme:"rounded" - }); - - - $scope.searchAAListViewData.push( - { - "_Id": value._Id, - "_ImageId": value._ImageId, - "_Title": value._Title, - "_ImageName": value._contentImage, - "_TileImageName": value._ThumbnailImage, - "_BodySystem": value._BodySystem, - "_BodyRegion": value._BodyRegion, - "_ViewOrientation": value._ViewOrientation, - "_ImageType": value._ImageType - //"$$hashKey": value._Summary - - }); - console.log($scope.searchAAListViewData); - if ($('#searchItem').length > 0) - $('#searchItem').remove(); - } - }); - - //Show Error Message in case of gridview/ ListView [if no data is found] - if ($scope.searchAAListViewData.length == 0) { - var $el = $('
No illustration found for the selected search criteria!
').appendTo('#grid-view'); - $compile($el)($scope); - $('table > #ListViewDiv > #searchItem').remove(); - - $('#ListViewDiv').append('No illustration found for the selected search criteria!'); - } - //console.log(JSON.stringify(result, null, 4)); - console.log('SearchAAListViewData--' + $scope.searchAAListViewData); - }, - function (error) { - // handle errors here - console.log(' error: ' + error.statusText); - } - ) - } - - $scope.Reset = function (moduleId, query) { - - query.selectedbodyregion = ""; - query.selectedbodysystem = ""; - query.selectedorientation = ""; - query.selectedimagetype = ""; - query.selectedspecialty = ""; - - - //set localstorage values - localStorage.setItem("CurrentBodyRegion", ''); - localStorage.setItem("CurrentBodySystem", ''); - localStorage.setItem("CurrentOrientation", ''); - localStorage.setItem("CurrentImageType", ''); - //localStorage.setItem("CISelectedRowId", ""); - //localStorage.setItem("CIListViewScroll", ''); - - if ($('.selected').hasClass("selected")) { $('.selected').removeClass("selected"); } - - $('#ListViewDiv').scrollTop(0); - - if ($('#demoView').length > 0) - $('#demoView').remove(); - // $scope.HideListViewDiv(); - - $scope.filterstring = false; - //while ($scope.searchCIListViewData.length) { - // $scope.searchCIListViewData.pop(); - //} - - $scope.FilterByImage(1, query); - - } - - $scope.showSelectedSystemPins = function (event) { - var bodySystemListObj = document.getElementById("bodySystemList").getElementsByTagName("a"); - var bodySystemListlength = bodySystemListObj.length; - for (var i = 0; i < bodySystemListlength; i++) { - - $("#" + i).parent().removeClass("activeAASystemSelect"); - } - $("#" + event.currentTarget.id).parent().addClass("activeAASystemSelect"); - - $rootScope.isLoading = true; - $('#spinner').css('visibility', 'visible'); - - $scope.removeSpeechBubble(); - if (event.currentTarget.id == "0") { - - $scope.selectedSystemName = null; - if ($scope.isHidePinBtnClicked) { - - // $scope.showAllPinsAfterHide($scope.aaPinData); - $scope.showAllPinsAfterHide(); - } - else { - $scope.showAllPins(); - } - } - else { - - $scope.selectedSystemName = event.currentTarget.title; - // get termText info - var promise = ModuleService.getTermTextDataForPin($scope.moduleName) - .then( - function (response) { - - $scope.TermInfo = response.data.Terms.Term; - - //on gettng all required data, draw pins - if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { - - $scope.selectedSystemPinData = new jinqJs() - .from($scope.aaPinData) - .where("_BodySystemName == " + $scope.selectedSystemName) - .select(); - if ($scope.isHidePinBtnClicked) { - // $scope.showAllPinsAfterHide($scope.selectedSystemPinData); - $scope.showAllPinsAfterHide(); - - } - else { - //remove other system pins - if ($scope.selectedSystemPinData != null && $scope.selectedSystemPinData.length > 0) { - - angular.forEach($scope.aaPinData, function (aaPinDataValue, aaPinDataKey) { - - if (aaPinDataValue._BodySystemName != $scope.selectedSystemName) - $scope.removePin('aaDetailViewCanvas', aaPinDataValue._PinId); - }) - - angular.forEach($scope.selectedSystemPinData, function (value, key) { - - - $scope.drawStaticPinsOnImage('aaDetailViewCanvas', value._PinId, value._PinX, value._PinY, value._HeadX, value._HeadY) - - }) - //show annotation on first pin of the sysyem - $scope.showAnnotation($scope.selectedSystemPinData, false, false, false); - } - } - } - }, - function (error) { - // handle errors here - console.log(' error: ' + error.statusText); - } - ) - - } - } - - $scope.showAnnotation = function (selectedPinData, isCtrlPressed, isPinClicked, isItemSearched) { - $scope.clickedPins = []; - $scope.selectedPin = []; - var isSameTermWithMultiPin = false; - var firstPinId = selectedPinData[0]._PinId; - var pinTermNumber = selectedPinData[0]._TermId; - - //check if other pin have same termNumber - if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { - - var pinDataWithFirstTermNumber = new jinqJs() - .from($scope.aaPinData) - .where("_TermId == " + pinTermNumber) - .select(); - - $scope.MultiLanguageAnnationArray = []; - - $scope.GetAnnotationBasedOnActualTermNo(pinTermNumber); - - if (isCtrlPressed) { - - } - else { - if (isPinClicked || isItemSearched) { - var existingSpeechBubble = $("div[id*='speechBubble']"); - for (var i = 0; i < existingSpeechBubble.length; i++) { - existingSpeechBubble[i].parentNode.removeChild(existingSpeechBubble[i]); - - //make all pin heads grey - var radial = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(216, 216, 216)' - }); - - - $('#aaDetailViewCanvas').setLayers({ - fillStyle: radial, - }).drawLayers(); - } - - var existingSpeechBubbleLine = $("div[id*='speechBubbleLine']"); - for (var i = 0; i < existingSpeechBubbleLine.length; i++) { - existingSpeechBubbleLine[i].parentNode.removeChild(existingSpeechBubbleLine[i]); - } - var speechBubbleDraggedLine = $("div[id*='speechBubbleDraggedLine']"); - for (var i = 0; i < speechBubbleDraggedLine.length; i++) { - speechBubbleDraggedLine[i].parentNode.removeChild(speechBubbleDraggedLine[i]); - } - } - } - if (pinDataWithFirstTermNumber.length > 1) { - isSameTermWithMultiPin = true; - } - - angular.forEach(pinDataWithFirstTermNumber, function (value, key) { - $scope.selectedPin.push(value._PinId); - $scope.clickedPins.push({ 'id': value._PinId }); - var headX = (parseInt(value._HeadX)); - var headY = (parseInt(value._HeadY)); - $scope.createSpeechBubble(parseInt(headX) + 10, parseInt(headY) + 10, value._PinId, isCtrlPressed, isPinClicked, isSameTermWithMultiPin); - }) - - } - - $rootScope.isLoading = false; - $('#spinner').css('visibility', 'hidden'); - // $scope.MultiLanguageAnnationArray.push($rootScope.annotationText[i]) - } - - $scope.removeSpeechBubble = function () { - - - //clear speech bubbles - var speechBubbles = $("div[id*='speechBubble']"); - if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { - for (var j = 0; j < speechBubbles.length; j++) { - - speechBubbles[j].parentNode.removeChild(speechBubbles[j]); - } - } - var speechBubbleLines = $("div[id*='speechBubbleLine']"); - if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { - for (var j = 0; j < speechBubbleLines.length; j++) { - - speechBubbleLines[j].parentNode.removeChild(speechBubbleLines[j]); - } - } - - var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); - if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { - for (var j = 0; j < speechBubbleDraggedLines.length; j++) { - - speechBubbleDraggedLines[j].parentNode.removeChild(speechBubbleDraggedLines[j]); - } - } - }; - - $scope.showSpeechBubble = function () { - - - //clear speech bubbles - var speechBubbles = $("div[id*='speechBubble']"); - if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { - for (var j = 0; j < speechBubbles.length; j++) { - - document.getElementById(speechBubbles[j].id).style.visibility = 'visible'; - } - } - var speechBubbleLines = $("div[id*='speechBubbleLine']"); - if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { - for (var j = 0; j < speechBubbleLines.length; j++) { - - document.getElementById(speechBubbleLines[j].id).style.visibility = 'visible'; - } - } - - var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); - if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { - for (var j = 0; j < speechBubbleDraggedLines.length; j++) { - - document.getElementById(speechBubbleDraggedLines[j].id).style.visibility = 'visible'; - } - } - }; - - $scope.hideSpeechBubble = function () { - - - //clear speech bubbles - var speechBubbles = $("div[id*='speechBubble']"); - if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { - for (var j = 0; j < speechBubbles.length; j++) { - - document.getElementById(speechBubbles[j].id).style.visibility = 'hidden'; - } - } - var speechBubbleLines = $("div[id*='speechBubbleLine']"); - if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { - for (var j = 0; j < speechBubbleLines.length; j++) { - - document.getElementById(speechBubbleLines[j].id).style.visibility = 'hidden'; - } - } - - var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); - if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { - for (var j = 0; j < speechBubbleDraggedLines.length; j++) { - - document.getElementById(speechBubbleDraggedLines[j].id).style.visibility = 'hidden'; - } - } - }; - - - $scope.createSpeechBubble = function (x, y, PinId, isCtrlPressed, isPinClicked, isSameTermWithMultiPin) { - - $scope.longestAnnotation = $scope.MultiLanguageAnnationArray.reduce(function (firstAnnotation, seconAnnotation) { return firstAnnotation.length > seconAnnotation.length ? firstAnnotation : seconAnnotation; }); - - $scope.createSpeechBubbleBasedOnAnnotationLength(x, y, PinId); - - $('#speechBubble').draggable( - { - drag: function (evt) { - $("#dot").css("visibility", "hidden"); - var verticalScrollPosition = canvasDiv.scrollTop; - var horizontlScrollPosition = canvasDiv.scrollLeft; - $scope.angle(x * $scope.sliderPercentValue, y * $scope.sliderPercentValue, evt.pageX + horizontlScrollPosition - $('#canvasDiv').offset().left, evt.pageY + verticalScrollPosition - $('#canvasDiv').offset().top, true); - }, - }); - - } - $scope.sliderVal = 100; - $scope.createSpeechBubbleBasedOnAnnotationLength = function (x, y, PinId) { - - x = x * $scope.sliderPercentValue; - y = y * $scope.sliderPercentValue; - - var speechBubbleHTML = '' - + '
' - + '' - + '
' - - + ''; - - //Issue #7286 :Undefined annotation should not appear - for (var i = 0; i <= $scope.MultiLanguageAnnationArray.length - 1; i++) { - var MultipleLanguage = $scope.MultiLanguageAnnationArray[i]; - } - - if (MultipleLanguage == undefined) { - console.log("No text is found"); - } else { - $('#canvasDiv').append(speechBubbleHTML); - - if ($scope.MultiLanguageAnnationArray.length > 0) { - for (var i = 0; i <= $scope.MultiLanguageAnnationArray.length - 1; i++) { - var MultipleLanguage = $scope.MultiLanguageAnnationArray[i]; - $rootScope.clickedPinAnnotation = $scope.MultiLanguageAnnationArray[0]; - $("#speechBubble" + PinId).append("

" + MultipleLanguage + "

"); - } - } - else { - console.log('MultiLanguageAnnationArray.length is :' + $scope.MultiLanguageAnnationArray.length) - } - - - - - - if ($scope.longestAnnotation != null || $scope.longestAnnotation != undefined) { - if ($scope.longestAnnotation.length <= 10) { - - - $("#speechBubble").css("width", "100px"); - - } - - else if ($scope.longestAnnotation.length > 10 && $scope.longestAnnotation.length <= 17) { - - - - $("#speechBubble").css("width", "140px"); - - } - else if ($scope.longestAnnotation.length > 17 && $scope.longestAnnotation.length <= 26) { - - - $("#speechBubble").css("width", "195px"); - - } - else if ($scope.longestAnnotation.length > 26 && $scope.longestAnnotation.length <= 34) { - - $("#speechBubble").css("width", "248px"); - - } - else if ($scope.longestAnnotation.length > 34 && $scope.longestAnnotation.length <= 44) { - - - $("#speechBubble").css("width", "300px"); - } - - else if ($scope.longestAnnotation.length > 44 && $scope.longestAnnotation.length <= 54) { - - $("#speechBubble").css("width", "370px"); - } - - else if ($scope.longestAnnotation.length > 54 && $scope.longestAnnotation.length <= 69) { - $("#speechBubble").css("width", "450px"); - } - else if ($scope.longestAnnotation.length > 69 && $scope.longestAnnotation.length <= 75) { - $("#speechBubble").css("width", "510px"); - } - else { - $("#speechBubble").css("width", ($scope.longestAnnotation.length) + "%"); - } - } - } - var speechBubbleDims = []; - - $rootScope.speechBubbleDimaensions.push({ "currentX": x, "currentY": y, "id": PinId }); - speechBubbleDims.push({ currentX: x, currentY: y }); - document.getElementById('speechBubbleLine' + PinId + '').style.display = 'block'; - document.getElementById('speechBubbleLine' + PinId + '').style.left = ((speechBubbleDims[0].currentX - 12)) + 'px'; - if ($scope.sliderVal == 25) { - document.getElementById('speechBubbleLine' + PinId + '').style.top = ((speechBubbleDims[0].currentY + 5)) + 'px'; - } - else { - document.getElementById('speechBubbleLine' + PinId + '').style.top = ((speechBubbleDims[0].currentY)) + 'px'; - } - document.getElementById('speechBubble' + PinId + '').style.display = 'block'; - document.getElementById('speechBubble' + PinId + '').style.left = (speechBubbleDims[0].currentX - 4) + 'px'; - document.getElementById('speechBubble' + PinId + '').style.top = (speechBubbleDims[0].currentY) + 'px'; - $('.common-drag').draggable( - { - - drag: function (evt) { - - var verticalScrollPosition = document.getElementById('canvasDiv').scrollTop; - var horizontlScrollPosition = document.getElementById('canvasDiv').scrollLeft; - var clickedSpeechBubbleId = $(this).attr("id"); - - var clickedPinId = clickedSpeechBubbleId.substring(12, clickedSpeechBubbleId.length); - - $("#speechBubbleLine" + clickedPinId).css("visibility", "hidden"); - $("#speechBubbleLine" + clickedPinId).css("display", "none"); - - for (var i = 0; i <= $rootScope.speechBubbleDimaensions.length - 1; i++) { - if ($rootScope.speechBubbleDimaensions[i].id == clickedPinId) { - $scope.angle(clickedPinId, $rootScope.speechBubbleDimaensions[i].currentX, $rootScope.speechBubbleDimaensions[i].currentY, evt.pageX + horizontlScrollPosition - $('#canvasDiv').offset().left, evt.pageY + verticalScrollPosition - $('#canvasDiv').offset().top, true); - } - } - - }, - }); - $('.crossDiv_temp').on('click', function (evt) { - - var imgId = $(this).attr("id"); - var pinId = imgId.substring(8, imgId.length); - $('#speechBubble' + pinId).remove(); - $("#speechBubbleDraggedLine" + pinId).remove(); - $("#speechBubbleLine" + pinId).remove(); - - //make all pin heads grey - var pinHeadName = 'PinArc_' + pinId; - var radial = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(216, 216, 216)' - }); - - - $('#aaDetailViewCanvas').setLayer(pinHeadName, { - fillStyle: radial, - }).drawLayers(); - }); - - //make the head green - var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(126, 187, 83)' - }); - var pinHeadName = 'PinArc_' + PinId; - var pin = $('#aaDetailViewCanvas').getLayer(pinHeadName); - // pin.fillStyle = radialAfterClick; - - $('#aaDetailViewCanvas').setLayer(pinHeadName, { - fillStyle: radialAfterClick, - }).drawLayers(); - } - - - $scope.angle = function (id, cx, cy, ex, ey, BoolValues) { - - var dy = ey - cy; - var dx = ex - cx; - var theta = 0; - if (dx < 0) { - theta = Math.atan(dy / dx) * (180 / Math.PI); - theta = theta + 180; - - } - else if (dy < 0) { - theta = Math.atan(dy / dx) * (180 / Math.PI); - theta = theta + 360; - - } - else { - theta = Math.atan(dy / dx) * (180 / Math.PI); - } - - var d = Math.sqrt((cx - ex) * (cx - ex) + (cy - ey) * (cy - ey)); - var e = cy; - var f = cx; - - if (BoolValues == true) { - if ($scope.sliderVal == 40) { - $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 5) + 'px', 'left': (f - 5) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); - } - else if ($scope.sliderVal == 25) { - $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 2) + 'px', 'left': (f - 2) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); - } - else { - $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 10) + 'px', 'left': (f - 5) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); - } - - } - else { - $("#bord_annotation").css({ 'display': 'block', 'width': d + 'px', 'top': e + 'px', 'left': f + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); - } - - - - } - - - $scope.drawStaticPinsOnImage = function (canvasId, PinId, offsetX1, offsetY1, x, y) { - $scope.clickedPins = []; - // if ($scope.isSliderChange == true) { - console.log('isSliderrChange') - var radial = $('#' + canvasId).createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(216, 216, 216)' - }); - $('#' + canvasId).drawLine({ - layer: true, - name: "Pin_" + PinId, - groups: ["Pin_" + PinId], - strokeStyle: '#565656', - strokeWidth: 2, - visible: true, - x1: offsetX1 * $scope.sliderPercentValue, y1: offsetY1 * $scope.sliderPercentValue, - x2: x * $scope.sliderPercentValue, y2: y * $scope.sliderPercentValue, - - - }).drawArc({ - name: "PinArc_" + PinId, - layer: true, - groups: ["Pin_" + PinId], - strokeStyle: 'grey', - strokeWidth: 2, - visible: true, - fillStyle: radial, - x: x * $scope.sliderPercentValue, y: y * $scope.sliderPercentValue, - radius: 5 * $scope.sliderPercentValue, - - click: function (clickedPin) { - if (clickedPin.event.ctrlKey == false) { - $scope.clickedPins = []; - } - var pinID = (clickedPin.name).substring(7, (clickedPin.name).length); - var pinData = new jinqJs() - .from($scope.aaPinData) - .where("_PinId == " + pinID) - .select(); - - - var pinTermNumber = pinData[0]._TermId; - - var pinWithSameTerm = new jinqJs() - - .from($scope.aaPinData) - .where("_TermId == " + pinTermNumber) - .select(); - - - if (pinWithSameTerm != undefined && pinWithSameTerm != null && pinWithSameTerm.length > 0) { - - for (var i = 0; i < pinWithSameTerm.length; i++) { - - $scope.clickedPins.push({ 'id': pinWithSameTerm[i]._PinId }) - } - - } - $scope.isSelectedPinBtnClickedAftrSliderCange = false; - var selectedPinData = new jinqJs() - .from($scope.aaPinData) - .where("_PinId == " + pinID) - .select(); - if (clickedPin.event.ctrlKey == true) { - - $scope.activePinArray.push(clickedPin.name); - var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(126, 187, 83)' - }); - clickedPin.fillStyle = radialAfterClick; - $scope.showAnnotation(selectedPinData, true, true, false); - } - else { - $scope.activePinArray = []; - $scope.activePinArray.push(clickedPin.name); - var radial = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(216, 216, 216)' - }); - - - $('#aaDetailViewCanvas').setLayers({ - fillStyle: radial, - }).drawLayers(); - - //change the head color to green - var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(126, 187, 83)' - }); - - clickedPin.fillStyle = radialAfterClick; - $scope.showAnnotation(selectedPinData, false, true, false); - - } - - } - - }).drawLayers(); - } - - - $scope.getMousePos = function (evt) { - - return { - x: Math.round(evt.pageX - $('#canvasDiv').offset().left), - y: Math.round(evt.pageY - $('#canvasDiv').offset().top) - } - } - - $scope.removePin = function (canvasId, pinId) { - - var pinName = 'Pin_' + pinId; - var pinArcName = 'PinArc_' + pinId; - $('#' + canvasId).removeLayer(pinName).drawLayers(); - $('#' + canvasId).removeLayer(pinArcName).drawLayers(); - - $scope.removeSpeechBubble(); - - //$rootScope.isSliderChanged = true; - //$('#aaDetailViewCanvas').removeLayers(); - } - - $rootScope.$on('annotationToolEvent', function (event, data) { - $('#editstylebackgroundcolor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(255,255,255)") - $('#editstylebackgroundcolor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" }); - $('#outlineColor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(0,0,0)") - $('#outlineColor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" }); - - $("#canvas").css("display", "block"); - $("#canvasPaint").css("display", "block"); - $rootScope.onDrawingCanvasClick(); - $rootScope.FreeStylePaint(); - }); - - $rootScope.loadSearchData = function () { - - //$("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" }); - var imageId = $rootScope.imageId; - var promise = ModuleService.getTermTextDataForAAImage(imageId) - .then( - function (response) { - - $scope.AAPinTermData = response.data.PinTermData.TermData; - - $rootScope.isLoading = false; - $('#setting-spinner').css('visibility', 'hidden'); - - $scope.pinTermData = []; - var primaryLexicon = $rootScope.lexiconLanguageArray[0].id; - $scope.matchedLanguageTermData = new jinqJs() - .from($scope.AAPinTermData) - .where('_LanguageId == ' + primaryLexicon) - .select(); - var sortedTermTextArray = []; - for (var i = 0; i < $scope.matchedLanguageTermData.length; i++) { - sortedTermTextArray.push($scope.matchedLanguageTermData[i]._TermText); - sortedTermTextArray.sort(); - } - - for (var i = 0; i <= sortedTermTextArray.length - 1; i++) { - for (var j = 0; j <= $scope.matchedLanguageTermData.length - 1; j++) { - if ($scope.matchedLanguageTermData[j]._TermText == sortedTermTextArray[i]) { - $scope.pinTermData.push({ "LanguageId": $scope.matchedLanguageTermData[j]._LanguageId, "TermNumber": $scope.matchedLanguageTermData[j]._TermNumber, "TermTxt": $scope.matchedLanguageTermData[j]._TermText }); - break; - } - } - } - - - $scope.$watch('$scope.pinTermData', function (newValue, oldValue, scope) { - - if (($('#termlistfilter').html() != "")) - - $('#termlistfilter').empty(); - if ($scope.pinTermData.length > 0) { - $timeout(function () { - console.log('pinTermData= ' + $scope.pinTermData.length); - $('#termList').empty(); - $('#termlistfilter').empty(); - for (var j = 0; j < $scope.pinTermData.length; j++) { - var $el = $('
  • ' + $scope.pinTermData[j].TermTxt + '
  • ').appendTo('#termlistfilter') - //var $el = $('
  • ' + $scope.pinTermData[j].TermTxt + '
  • ').appendTo('#termlistfilter') - $compile($el)($scope); - var $selectedOptions = $('').appendTo("#termList") - - $compile($selectedOptions)($scope); - - $("#AABodySystems").empty(); - $("#bodySystems").css("display", "none"); - $("#AABodySystems").css("display", "block"); - $("#bodySystemList li a").each(function (key, value) { - var $systemOptions = $('').appendTo("#AABodySystems") - $compile($systemOptions)($scope); - }); - } - }, 500); - } - }) - }, - function (error) { - // handle errors here - console.log(' error: ' + error.statusText); - } - ) - } - - - - - $scope.$on('listManagerEvent', function (event, data) { - - $("#viewName").empty(); - - var currentView = $rootScope.getLocalStorageValue("currentViewTitle"); - var viewNmeHtml = '' - $('#viewName').append(viewNmeHtml); - //$("#viewName").append(""); - $rootScope.isLoading = false; - $('#spinner').css('visibility', 'hidden'); - - if ($rootScope.bodySystemSeletedId == null) { - - $rootScope.loadSearchData(); - } - else { - - $rootScope.refreshTermListOnAASystemSelection($rootScope.bodySystemSeletedId); - } - $timeout(function () { - $("#totalTerms").empty(); - $("#totalTerms").html("" + $("#termList option").length + " Structures"); - }, 1000); - }); - - - - $rootScope.refreshTermListOnAASystemSelection = function (bodySystemId) { - $rootScope.bodySystemSeletedId = bodySystemId; - $('#termList').empty(); - var bodySystemName = $("#AABodySystems #" + bodySystemId).val(); - if (bodySystemName == "All") { - for (var j = 0; j <= $scope.pinTermData.length - 1; j++) { - var $selectedOptions = $('').appendTo("#termList") - - $compile($selectedOptions)($scope); - } - $("#totalTerms").empty(); - $("#totalTerms").html("" + $("#termList option").length + " Structures"); - } - else { - var imageId = $rootScope.imageId; - $scope.pinDataUrl = "aa_dat_pinterm_" + imageId; - $rootScope.bodySystemTermArray = []; - $rootScope.sortedListArray = []; - $rootScope.duplicateListArray = []; - $.ajax({ - url: '~/../content/data/json/aa/aa_pinterm/' + $scope.pinDataUrl + '.json', - type: 'GET', - dataType: "json", - async: false, - success: function (result) { - $(result.PinTermData.TermData).each(function (key, value) { - $rootScope.bodySystemTermArray.push({ "termNumbr": result.PinTermData.TermData[key]._TermNumber, "text": result.PinTermData.TermData[key]._TermText, "language": result.PinTermData.TermData[key]._LanguageId }); - }); - for (var i = 0; i <= $scope.aaPinData.length - 1; i++) { - if ($scope.aaPinData[i]._BodySystemName.toLowerCase() == bodySystemName.toLowerCase()) { - for (var j = 0 ; j <= $rootScope.bodySystemTermArray.length - 1; j++) { - if ($scope.aaPinData[i]._TermId == $rootScope.bodySystemTermArray[j].termNumbr) { - if ($rootScope.bodySystemTermArray[j].language == $rootScope.lexiconLanguageArray[0].id) { - console.log($rootScope.bodySystemTermArray[j].text); - $rootScope.duplicateListArray.push({ "title": $rootScope.bodySystemTermArray[j].text, "id": $rootScope.bodySystemTermArray[j].termNumbr }); - } - } - } - } - } - var temp = []; - for (var i = 0; i <= $rootScope.duplicateListArray.length - 1; i++) { - var termID = $rootScope.duplicateListArray[i].id; - if ($.inArray(termID, temp) == -1) { - temp.push(termID); - $rootScope.sortedListArray.push({ "title": $rootScope.duplicateListArray[i].title, "id": termID }); - } - } - - for (var i = 0; i <= $rootScope.sortedListArray.length - 1; i++) { - - for (j = i + 1; j <= $rootScope.sortedListArray.length - 1; j++) { - - if ($rootScope.sortedListArray[i].title.substr(0, 1) > $rootScope.sortedListArray[j].title.substr(0, 1)) { - - var termText = $rootScope.sortedListArray[i].title; - var termNumbr = $rootScope.sortedListArray[i].termNumbr; - var termLanguage = $rootScope.sortedListArray[i].language; - - $rootScope.sortedListArray[i].title = $rootScope.sortedListArray[j].title; - $rootScope.sortedListArray[i].termNumbr = $rootScope.sortedListArray[j].termNumbr; - $rootScope.sortedListArray[i].language = $rootScope.sortedListArray[j].language; - - $rootScope.sortedListArray[j].title = termText; - $rootScope.sortedListArray[j].termNumbr = termNumbr; - $rootScope.sortedListArray[j].language = termLanguage; - } - } - } - - for (var j = 0; j <= $rootScope.sortedListArray.length - 1; j++) { - var $selectedOptions = $('').appendTo("#termList") - $compile($selectedOptions)($scope); - } - } - }); - $("#totalTerms").empty(); - $("#totalTerms").html("" + $("#termList option").length + " Structures"); - } - } - $scope.GetAnnotationBasedOnActualTermNo = function (actualTermNo) { - - - var languageArray = $rootScope.lexiconLanguageArray; - - if ($scope.AAPinTermData != null || $scope.AAPinTermData != undefined) { - - $scope.matchedTermNoData = new jinqJs() - .from($scope.AAPinTermData) - .where('_TermNumber == ' + actualTermNo) - .select(); - - if ($scope.matchedTermNoData != null || $scope.matchedTermNoData != undefined) { - - for (var j = 0; j <= languageArray.length - 1; j++) { - - $scope.matchedLanguageTermNoData = new jinqJs() - .from($scope.matchedTermNoData) - .where('_LanguageId == ' + languageArray[j].id) - .select(); - var termText = $scope.matchedLanguageTermNoData[0]._TermText; - $scope.MultiLanguageAnnationArray.push(termText); - }; - } - } - } - - $rootScope.hidePins = function () { - $("#dropdownMenu221").addClass("aaSystemDisable"); - $rootScope.isLoading = true; - $('#spinner').css('visibility', 'visible'); - $scope.hideSpeechBubble(); - - $scope.isHidePinBtnClicked = true; - angular.forEach($scope.aaPinData, function (aaPinDataValue, aaPinDataKey) { - - var pinName = 'Pin_' + aaPinDataValue._PinId; - var pinArcName = 'PinArc_' + aaPinDataValue._PinId; - - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - }) - - $rootScope.isLoading = false; - $('#spinner').css('visibility', 'hidden'); - $(".tooltip-custom").removeClass("btn-primary"); - $(".tooltip-custom").addClass("btn-black"); - $("#hidePinBtn").addClass("btn-primary"); - $("#hidePinBtn").removeClass("btn-black"); - } - - $scope.showAllPinsAfterHide = function (event) { - if ($("#dropdownMenu221").hasClass("aaSystemDisable")) { - $("#dropdownMenu221").removeClass("aaSystemDisable"); - } - $rootScope.isLoading = true; - $('#spinner').css('visibility', 'visible'); - $scope.isHidePinBtnClicked = false; - $rootScope.isshowAllPinsBtnAfterHideClicked = true; - if ($scope.selectedSystemName != null && $scope.selectedSystemName != undefined) { - - $scope.showSystemPins($scope.selectedSystemPinData, false); - - } else { - - $scope.showSystemPins($scope.aaPinData, false); - } - $scope.showSpeechBubble(); - $(".tooltip-custom").removeClass("btn-primary"); - $(".tooltip-custom").addClass("btn-black"); - $("#allPinBtn").addClass("btn-primary"); - $("#allPinBtn").removeClass("btn-black"); - if ($scope.isSliderChange == true) { - $scope.isSliderChange = false; - $scope.showAllPins(); - - } - }; - - - $scope.showSelectedPins = function () { - $("#dropdownMenu221").addClass("aaSystemDisable"); - $rootScope.isLoading = true; - $('#spinner').css('visibility', 'visible'); - - $scope.isHidePinBtnClicked = false; - - if ($scope.selectedSystemName != null && $scope.selectedSystemName != undefined) { - - $scope.showSystemPins($scope.selectedSystemPinData, true); - - } - else { - $scope.showSystemPins($scope.aaPinData, true); - - } - $scope.showSpeechBubble(); - $(".tooltip-custom").removeClass("btn-primary"); - $(".tooltip-custom").addClass("btn-black"); - $("#selectedPin").addClass("btn-primary"); - $("#selectedPin").removeClass("btn-black"); - - if ($scope.isSelectedPinBtnClickedAftrSliderCange == true) { - - for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { - var pinName = $scope.activePinArray[i].split("_"); - var activePinName = 'Pin_' + pinName[1]; - var pinArcName = 'PinArc_' + pinName[1]; - $('#aaDetailViewCanvas').setLayer(activePinName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - } - - } - - }; - - - $scope.showSystemPins = function (seletedSystemPinData, isShowSelectedPins) { - - if (isShowSelectedPins) { - - angular.forEach($scope.clickedPins, function (value, key) { - - seletedSystemPinData = new jinqJs() - .from(seletedSystemPinData) - .where('_PinId != ' + value.id) - .select(); - }) - angular.forEach($scope.clickedPins, function (value1, key1) { - - // if (aaPinDataValue._PinId != value.id) { - var pinName = 'Pin_' + value1.id; - var pinArcName = 'PinArc_' + value1.id; - - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - // } - }) - - angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { - - var pinName = 'Pin_' + aaPinDataValue._PinId; - var pinArcName = 'PinArc_' + aaPinDataValue._PinId; - - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - }) - - } - - else { - angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { - - var pinName = 'Pin_' + aaPinDataValue._PinId; - var pinArcName = 'PinArc_' + aaPinDataValue._PinId; - - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - }) - } - - $rootScope.isLoading = false; - $('#spinner').css('visibility', 'hidden'); - - - } - $rootScope.isshowAllPinsBtnAfterHideClicked = true; - $scope.showItemsForSearch = function () { - if($rootScope.isshowAllPinsBtnAfterHideClicked == true){ - console.log('showItemsForSearch is called'); - //this check is for log only because we are writing length so need to check if its not null or undefined - - - $timeout(function () { - if (($scope.AAPinTermData != null || $scope.AAPinTermData != undefined) && ($scope.AAPinTermData.length > 0)) { - - $scope.IsSearchVisible = true; - document.getElementById("termlistfilter").style.display = "block"; - } - else { - $rootScope.loadSearchData(); - if ($scope.AAPinTermData.length > 0) { - $scope.showItemsForSearch(); - } - } - - if ($rootScope.isSearchInputClicked == true) { - $rootScope.isSearchInputClicked = false; - $rootScope.searchListArray = []; - $("#backdrop > #searchListDivAA > #termlistfilter > li").each(function (key, value) { - $rootScope.searchListArray.push({ "name": $(this).find("a").html(), "id": $(this).find("a").attr("id") }); - }); - - } - - }, 500); - } - } - - - $scope.HideSearchList = function () { - - $timeout(function () { - - $("#termlistfilter").css("display", "none"); - - - }, 1000); - - } - - $scope.highlightPinBasedOnSerachItem = function (id) { - $scope.searchItemId = id; - $scope.searchItemText = $("#" + id).text(); - $rootScope.searchSelectedText = $("#" + id).text(); - $('#termList option[selected="selected"]').prop("selected", false); - $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true); - $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" }); - $('#termList option[value="' + $rootScope.searchSelectedText + '"]').css({ "background-color": "#3399FF", "color": "#ffffff" }); - - $("#termlistfilter li a").css({ "background-color": "#ffffff", "color": "#000000" }); - $("#termlistfilter li #" + $scope.searchItemId).css({ "background-color": "#3399FF", "color": "#ffffff" }); - $scope.searchFilter = $("#" + id).text(); - //selectedTermName.placeholder = $("#" + id).text(); - selectedTermName.value = $("#" + id).text(); - selectedTermName.placeholder = "search... "; - - //get data from pindata for this trem - - var pinDataForTerm = new jinqJs() - .from($scope.aaPinData) - .where("_TermId == " + $scope.searchItemId) - .select(); - - $scope.showAnnotation(pinDataForTerm, false, false, true); - // maintaing scroll position on selection of options in list manager. - var annotationTopPos = $(".common-drag").css("top").split("p"); - $("#canvasDiv").scrollTop(annotationTopPos[0]); - - $scope.IsSearchVisible = false; - } - - $rootScope.isShowHideButtonClicked = true; - $scope.ShowHideAnnotation = function () { - if ($rootScope.isShowHideButtonClicked == true) { - $rootScope.annotationArray = []; - $("#canvasDiv").find(".common-drag").each(function () { - var speechBubbleID = $(this).attr("id"); - var sppechBubbleId = $(this).attr("id").substring(12); - var b = $("#speechBubbleDraggedLine" + sppechBubbleId).css("display"); - var speechBubbleLineDispProp = $("#speechBubbleLine" + sppechBubbleId).css("display"); - var speechBubbleLineID = "speechBubbleLine" + sppechBubbleId; - var speechBubbleDraggedLineID = "speechBubbleDraggedLine" + sppechBubbleId; - $("#comment-box").addClass("btn-primary"); - $("#comment-box").removeClass("btn-black"); - - if (speechBubbleLineDispProp == "block") { - $rootScope.annotationArray.push({ "speechBuubleId": speechBubbleID, "speechBubbleLineId": speechBubbleLineID }); - } - else { - $rootScope.annotationArray.push({ "speechBuubleId": speechBubbleID, "speechBubbleLineId": speechBubbleDraggedLineID }); - } - }); - $rootScope.isShowHideButtonClicked = false; - for (var i = 0; i <= $rootScope.annotationArray.length - 1; i++) { - $("#" + $rootScope.annotationArray[i].speechBuubleId).css("display", "none"); - $("#" + $rootScope.annotationArray[i].speechBubbleLineId).css("display", "none"); - } - } - else { - $rootScope.isShowHideButtonClicked = true; - for (var i = 0; i <= $rootScope.annotationArray.length - 1; i++) { - $("#" + $rootScope.annotationArray[i].speechBuubleId).css("display", "block"); - $("#" + $rootScope.annotationArray[i].speechBubbleLineId).css("display", "block"); - } - - $("#comment-box").removeClass("btn-primary"); - $("#comment-box").addClass("btn-black"); - - } - } - $scope.activePinOnLayerChange = function () { - for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { - var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ - x1: 50, y1: 50, - x2: 50, y2: 50, - r1: 10, r2: 30, - c1: 'rgba(100, 50, 0,0)', - c2: 'rgb(126, 187, 83)' - }); - var clickedPin = $scope.activePinArray[i]; - $('#aaDetailViewCanvas').setLayer(clickedPin, { - fillStyle: radialAfterClick - }).drawLayers(); - - } - } - - $scope.activePinOnSliderChange = function () { - if ($scope.activePinArray.length == 1) { - for (var i = 0; i <= $scope.allPinDataArray.length - 1; i++) { - var activeArc = $scope.activePinArray[0].split("_"); - if ($scope.allPinDataArray[i] == activeArc[1]) { - var pinName = 'Pin_' + $scope.allPinDataArray[i]; - var pinArcName = 'PinArc_' + $scope.allPinDataArray[i]; - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - } - else { - var pinName = 'Pin_' + $scope.allPinDataArray[i]; - var pinArcName = 'PinArc_' + $scope.allPinDataArray[i]; - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - } - } - } - else { - var seletedSystemPinData; - angular.forEach($scope.activePinArray, function (value, key) { - var pinID = value.split("_"); - seletedSystemPinData = new jinqJs() - .from($scope.allPinDataArray) - .where('_PinId != ' + pinID[1]) - .select(); - }) - - angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { - - var pinName = 'Pin_' + aaPinDataValue; - var pinArcName = 'PinArc_' + aaPinDataValue; - - $('#aaDetailViewCanvas').setLayer(pinName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: false // set to true instead to show the layer again - }).drawLayers(); - - }) - for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { - var pinName = $scope.activePinArray[i].split("_"); - var activePinName = 'Pin_' + pinName[1]; - var pinArcName = 'PinArc_' + pinName[1]; - $('#aaDetailViewCanvas').setLayer(activePinName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - $('#aaDetailViewCanvas').setLayer(pinArcName, { - visible: true // set to true instead to show the layer again - }).drawLayers(); - } - } - } - $(document).ready(function () { - var $ua = navigator.userAgent; - if (($ua.match(/(iPod|iPhone|iPad|android)/i))) { - - var jspanelContainerWidth = $(".jsPanel-content").css("width"); - $(".jsPanel-content").css({ "width": "100%", "min-width": jspanelContainerWidth }); - $("#ImagePanel").css("width", "100%"); - - //hide pin button clicked - $("#hidePinBtn").removeAttr("onclick"); - $("#hidePinBtn").on("touchstart", function () { - var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - rootScope.$apply(function () { - rootScope.hidePins(event); - }); - }); - //selected pin button clicked - $("#selectedPin").removeAttr("onclick"); - $("#selectedPin").on("touchstart", function () { - console.log('showSelectedPins is called') - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showSelectedPins(event); - }); - }); - //all pin button clicked - $("#allPinBtn").removeAttr("onclick"); - $("#allPinBtn").on("touchstart", function () { - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showAllPinsAfterHide(event); - }); - }); - //comment-box button clicked - $("#comment-box").removeAttr("onclick"); - $("#comment-box").on("touchstart", function () { - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.ShowHideAnnotation(event); - }); - }); - - } - - }); -}]); - - -function refreshTermListOnSystemSel(bodySystemId) { - var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - rootScope.$apply(function () { - rootScope.refreshTermListOnAASystemSelection(bodySystemId); - }); -} - - -function showSelectedSystemPins(event) { - console.log('OnBodySystem chnaged is called outside '); - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showSelectedSystemPins(event); - }); -} - -function hidePins(event) { - - var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - rootScope.$apply(function () { - rootScope.hidePins(event); - }); -} - -function showAllPins(event) { - - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showAllPinsAfterHide(event); - }); -} - -function onSearchAA(event) { - console.log('AA search is called') - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showItemsForSearch(); - }); -} - -function hideSearchList(event) { - console.log('AA hide search is called') - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.HideSearchList(); - }); -} - -function onSearchItemSelection(id) { - - console.log('AA hide search is called'); - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.highlightPinBasedOnSerachItem(id); - }); -} - -//function onListManagerTermSelection(event) { -// var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); -// scope.isTermListOptionClicked = true; -// scope.$apply(function () { -// scope.highlightPinBasedOnSerachItem1(event); -// }); - -//} - - -function showHideAnnotation(event) { - - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.ShowHideAnnotation(event); - }); -} - -function showSelectedPins(event) { - - console.log('showSelectedPins is called') - var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); - scope.$apply(function () { - scope.showSelectedPins(event); - }); -} - - -function openModuleItemView(event) { - var scope = angular.element(document.getElementById("list-view")).scope(); - scope.isListViewButtonClicked = true; - scope.$apply(function () { - scope.openModuleItemView(event); - }); -} - -function openListViewModuleItem(event) { - - var scope = angular.element(document.getElementById("list-view")).scope(); - scope.isListViewButtonClicked = true; - scope.$apply(function () { - scope.openListViewModuleItem(event); - }); -} - -function openCurrentView(event) { - var scope = angular.element(document.getElementById("list-view")).scope(); - scope.isListViewButtonClicked = true; - scope.isOpenBtnClicked = true; - scope.$apply(function () { - scope.openModuleItemView(event); - }); - -} - -function onZoom(scope) { - - //$(".common-drag").remove(); - //$(".commonDot").remove(); - //$(".commonDraggedLine").remove(); - //var radial = $('#aaDetailViewCanvas').createGradient({ - // x1: 50, y1: 50, - // x2: 50, y2: 50, - // r1: 10, r2: 30, - // c1: 'rgba(100, 50, 0,0)', - // c2: 'rgb(216, 216, 216)' - //}); - //$('#aaDetailViewCanvas').setLayers({ - // fillStyle: radial, - //}).drawLayers(); - // scope.removePin(); - // scope.showAllPins(); - - - //6. Show all pins on AA opened item -} - - +'use strict'; + +AIA.controller("TileViewListController", ["$scope", "$window", "$rootScope", "$compile", "$http", "$log", "$location", "$timeout", "DA", "Modules", "$routeParams", "BodyRegions", "BodySystems", "ViewOrientations", "ImageTypes", "DataService", "ModuleService", +function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeout, DA, Modules, $routeParam, BodyRegions, BodySystems, ViewOrientations, ImageTypes, DataService, ModuleService) { + + + $rootScope.OpenedTileData = []; + var DISSECTIBLE_ANATOMY = 'Dissectible Anatomy'; + var ATLAS_ANATOMY = 'Atlas Anatomy'; + var CLINICAL_ILLUSTRATION = 'Clinical Illustrations'; + var CLINICAL_ANIMATION = 'Clinical Animations'; + $rootScope.closeBtnImgPath = "~/../content/images/speeachBubbleClose.png"; + $rootScope.listArray = []; + //variables to bind Filter by Controls + $scope.searchAAListViewData = []; + $scope.SelectedAAthumbImage = []; + $scope.SelectedAAImage = []; + $scope.SelectedAASummary = []; + $scope.SelectedAAId = []; + $scope.SelectedAATitle = []; + $scope.selectedAAListViewData = []; + $scope.filterstring = false; + $scope.AllBodyRegion = []; + $scope.AllBodySystem = []; + $scope.AllOrientation = []; + $scope.AllImageType = []; + $rootScope.speechBubbleDimaensions = []; + $scope.runningSearchWorkers = []; + $scope.clickedPins = []; + $scope.sliderPercentValue = 1; + $scope.query = { + selectedbodyregion: '', + selectedbodysystem: '', + selectedorientation: '', + selectedimagetype: '', + }; + $scope.activePinArray = []; + $scope.showTabButton = true; + $scope.isListViewDataLoaded = true; + + $scope.setActiveTab = function (tabToSet) { + + $scope.activeTab = tabToSet; + localStorage.setItem("activeTab", $scope.activeTab); + if ($scope.activeTab == 1) { + $('#grid-view').css("display", "block"); + $('#list-view').css("display", "none"); + $("#demoView").remove(); + } + else { + + $('#grid-view').css("display", "none"); + $('#list-view').css("display", "block"); + } + }; + + $scope.loadForModuleById = function (moduleId) { + $rootScope.openModules.push({ "ModuleId": 2 }); + if ($rootScope.refreshcheck == null) { + $location.path('/'); + } + $scope.moduleId = moduleId; + $scope.activeTab = 1; + console.log('loadForModuleById is called') + $rootScope.moduleName = Modules[moduleId].Name; + $rootScope.currentActiveModuleTitle = $rootScope.moduleName; + $scope.AllBodyRegion = BodyRegions; + $scope.AllBodySystem = BodySystems; + $scope.AllOrientation = ViewOrientations; + $scope.AllImageType = ImageTypes; + var promise = ModuleService.loadModuleDataBasedOnModuleName($scope.moduleName) + .then( + function (result) { + + $scope.moduleLandingData = result; + // setTimeout(function () { $('#' + $rootScope.highlightid).find('.thumbnail').addClass('hightlightstate'); }, 100); + setTimeout(function () { + if ($rootScope.getLocalStorageValue('AAGridViewHighlightThumbnail') !== null) { + $('#' + $rootScope.getLocalStorageValue("AAGridViewHighlightThumbnail")).find('.thumbnail').addClass('HightLightThumbnail'); + } + if ($rootScope.getLocalStorageValue('AAGridViewScroll') !== null && $location.url() == "/tile-view-list") { + $('html, body').animate({ scrollTop: $rootScope.getLocalStorageValue('AAGridViewScroll') }, 'slow'); + } + }, 100); + //console.log(JSON.stringify(result, null, 4)); + }, + function (error) { + // handle errors here + console.log(' error: ' + error.statusText); + } + ) + $('#list-view').css('display', 'none'); + } + + //$scope.$on('$viewContentLoaded', function (event) { + + // $scope.loadForModuleById(); + + //}); + $scope.isOpenBtnClicked = false; + $scope.openModuleItemView = function (event) { + $rootScope.MenuModuleName = "AA"; + localStorage.setItem("activeTab", $scope.activeTab); + //0. Get selected Image Id + if ($scope.isListViewButtonClicked == true) { + if ($scope.isOpenBtnClicked == true) { + + var moduleItemDataToBeSaved = $("#demoText").text().trim(); + $scope.isOpenBtnClicked = false; + } + else { + var moduleItemDataToBeSavedID = event.currentTarget.id; + localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID); + var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim(); + } + } + else { + var moduleItemDataToBeSaved = event.target.id; + localStorage.setItem("listViewSelectedID", event.currentTarget.id); + $scope.isListViewButtonClicked = false; + } + + //1.Filter selected module ietem data and get the pushed opened moduile array object + $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData); + + //2. Pick the image name to create a source to open + $rootScope.imageId = $rootScope.OpenedTileData[0]; + $rootScope.imageName = $rootScope.OpenedTileData[3]; + $rootScope.bodySystemName = $rootScope.OpenedTileData[2]; + $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; + $scope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; + //$rootScope.listArray = []; + $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved }); + //3. set opened module item ti + localStorage.setItem("currentViewTitle", $rootScope.OpenedTileData[6]); + localStorage.setItem("AAGridViewScroll", $($window).scrollTop()); + localStorage.setItem("AAGridViewHighlightThumbnail", $(event.target).parent().parent().parent().attr('id')); + + //3. Navigate to the Module-item-view + var u = $location.url(); + $location.url('/module-item-view'); + } + + + $scope.openListViewModuleItem = function (event) { + $("#demoView").remove(); + var moduleItemDataToBeSavedID = event.currentTarget.id; + $("#list-view table tbody tr").removeClass("active"); + localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID); + $("#list-view table tbody #" + moduleItemDataToBeSavedID).addClass("active"); + localStorage.setItem("AAListViewScroll", $("#list-view table tbody").scrollTop()); + var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim(); + $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData); + $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3]; + //$rootScope.listArray = []; + $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved }); + $("#viewList").append("
    " + moduleItemDataToBeSaved + "
    Open
    "); + } + + + $scope.openModuleItem = function () { + if ($rootScope.refreshcheck == null) { + $location.path('/'); + } + var jsContentURL; + var moduleItemViewDivId; + + //1. create a jsPanel and load the module item view + if ($rootScope.moduleName == ATLAS_ANATOMY) { + + jsContentURL = 'app/views/aa/atlas-anatomy-detail.html'; + moduleItemViewDivId = 'aaDetailPageDiv'; + } + else if ($rootScope.moduleName == CLINICAL_ANIMATION) { + //to do, in next phase of project + + } + else if ($rootScope.moduleName == CLINICAL_ILLUSTRATION) { + //to do, in next phase of project + + } + + //1. create a jsPanel and load the module item view + if ($rootScope.moduleName == ATLAS_ANATOMY) { + $.jsPanel({ + id: 'ImagePanel', + selector: '.aaBodyView', + theme: 'success', + currentController: 'TileViewListController', + parentSlug: 'tile-view-list', + ajax: { + url: jsContentURL + }, + title: $rootScope.getLocalStorageValue("currentViewTitle"), + + position: { + top: 70, + left: 1, + }, + + size: { width: $(window).outerWidth() - 10, height: $(window).outerHeight() - 125 }, + + }); + + console.log('jsPanel loaded ImagePanel exist= ' + document.getElementById('ImagePanel')) + + //0.3 + var aaViewElement = angular.element(document.getElementById(moduleItemViewDivId)); + + //0.4 for Opening module item, load it into image + $rootScope.isLoading = true; + $('#spinner').css('visibility', 'visible'); + var openedImage = new Image(); + openedImage.id = 'modItemImage'; + openedImage.name = $rootScope.OpenItemImagePath; + + openedImage.onload = function () { + $scope.imageWidth = this.width; + $scope.imageHeight = this.height; + + + $timeout(function () { + $compile(aaViewElement.contents())($scope); + + //if (document.getElementById('aaDetailPageDiv') != null) { + if (document.getElementById('aaBodyView') != null) { + + //0.4 added some stylesheets + $('#aaBodyView').css("height", $(window).outerHeight() - 65); + + $('#aaBodyView').css("width", $(window).outerWidth() - 15); + + $rootScope.canvasDivHeight = $('.jsPanel-content').height() - $('.main2 .stickey-area').height(); + + $('.canvasDivClass').css("height", $rootScope.canvasDivHeight); + + $scope.currentTitleFromJson = $rootScope.getLocalStorageValue("currentViewTitle"); + $("#modItemImage").attr('src', $rootScope.OpenItemImagePath); + + + $rootScope.ViewImageWidth = $("#modItemImage").width(); + $scope.ViewImageWidth = $("#modItemImage").width(); + $scope.ViewImageHeight = $("#modItemImage").height(); + + $scope.relativeDimesion = 0; + $("#modItemImage").css("width", $rootScope.ViewImageWidth + "px"); + //0.5 create canvas on the top of image so that I can draw a line over the canvas. + var canvas = document.createElement('canvas'); + canvas.id = 'aaDetailViewCanvas'; + canvas.className = '.aaCanvas' + canvas.height = parseInt(($scope.imageHeight)); + canvas.width = parseInt($scope.imageWidth); + canvas.style.left = '0px'; + canvas.style.top = '0px'; + canvas.style.position = "absolute"; + $("#canvasDiv").append(canvas); + $scope.context = canvas.getContext("2d") + //6. Show all pins on AA opened item + $scope.showAllPins(); + //7. Highlight all system body list in left side + $scope.highlightBodySystemList(); + } + $(".slider").slider({ + min: 25, + max: 100, + value: 100, + range: "min", + orientation: "vertical", + slide: function (event, ui) { + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.sliderVal = ui.value; + scope.removeSpeechBubble(); + var relativeWidth = 0; + var relativeHeight = 0; + if (ui.value == 25 || ui.value == 40 || ui.value == 55 || ui.value == 70 || ui.value == 85 || ui.value == 100) { + if (ui.value == 100) { + relativeWidth = scope.ViewImageWidth; + relativeHeight = scope.ViewImageHeight + scope.sliderPercentValue = 1.0; + } + else if (ui.value == 85) { + relativeWidth = scope.ViewImageWidth * 0.85; + relativeHeight = scope.ViewImageHeight * 0.85; + scope.sliderPercentValue = 0.85; + + } else if (ui.value == 70) { + relativeWidth = scope.ViewImageWidth * 0.70; + relativeHeight = scope.ViewImageHeight * 0.70; + scope.sliderPercentValue = 0.70; + } else if (ui.value == 55) { + + relativeWidth = scope.ViewImageWidth * 0.55; + relativeHeight = scope.ViewImageHeight * 0.55; + scope.sliderPercentValue = 0.55; + + } else if (ui.value == 40) { + + relativeWidth = scope.ViewImageWidth * 0.40; + relativeHeight = scope.ViewImageHeight * 0.40; + scope.sliderPercentValue = 0.40; + + } else if (ui.value == 25) { + + relativeWidth = scope.ViewImageWidth * 0.25; + relativeHeight = scope.ViewImageHeight * 0.25; + scope.sliderPercentValue = 0.25; + + } + } + + if (ui.value == 25 || ui.value == 40 || ui.value == 55 || ui.value == 70 || ui.value == 85 || ui.value == 100) { + $("#modItemImage").css("width", relativeWidth + "px"); + $("#modItemImage").css("height", relativeHeight + "px"); + $("#aaDetailViewCanvas").css("width", relativeWidth + "px"); + $("#modItemImage").css("height", relativeHeight + "px"); + + $("#modItemImage").attr('src', ''); + + + $("#aaDetailViewCanvas").remove(); + //0.5 create canvas on the top of image so that I can draw a line over the canvas. + var canvas = document.createElement('canvas'); + canvas.id = 'aaDetailViewCanvas'; + canvas.className = 'aaCanvas'; + canvas.height = relativeHeight; + canvas.width = relativeWidth; + canvas.style.left = '0px'; + canvas.style.top = '0px'; + canvas.style.position = "absolute"; + + $("#canvasDiv").append(canvas); + scope.context = canvas.getContext("2d") + $("#modItemImage").attr('src', scope.OpenItemImagePath); + scope.isSliderChange = true; + var btnID = ''; + $("div.tools div:eq(1) div").each(function () { + if ($(this).find("button").hasClass("btn-primary")) { + btnID = $(this).find("button").attr("id"); + $('#' + btnID).removeClass("btn-black"); + $('#' + btnID).addClass("btn-primary"); + } + }); + scope.isSelectedPinBtnClickedAftrSliderCange = true; + switch (btnID) { + + case "hidePinBtn": + break; + case "allPinBtn": + scope.showAllPins(); + break; + case "selectedPin": + scope.showAllPins(); + setTimeout(function () { + console.log(scope.allPinDataArray); + scope.activePinOnSliderChange(); + }, 1000); + break; + } + } + + }); + } + }) + .slider("pips", { + rest: "label", + step: "15" + }); + }, 500); + } + + openedImage.onerror = loadFailure; + openedImage.src = $rootScope.OpenItemImagePath; + } + + } + + $scope.highlightBodySystemList = function () { + $rootScope.bodySystemNames = $rootScope.bodySystemName.trim().split(/\s*,\s*/); + var bodySystemListObj = document.getElementById("bodySystemList").getElementsByTagName("a"); + var bodySystemListlength = bodySystemListObj.length; + for (var i = 0; i < bodySystemListlength; i++) { + //var boldTag = lis[i]; + for (var j = 0; j < $rootScope.bodySystemNames.length; j++) { + if ((bodySystemListObj[i].innerHTML) == ($rootScope.bodySystemNames[j])) { + $("#" + i).parent().removeClass("disabledSelectedSystem"); + + } + } + + } + } + function loadFailure() { + console.log('unable to load opened module ietem'); + return true; + } + + + angular.element(document).ready(function (e) { + $("#ImagePanel").resize(function () { + $("#canvasDiv").scrollLeft($rootScope.CanvasDivLeftPosition); + $("#canvasDiv").scrollTop($rootScope.CanvasDivTopPosition); + }); + $(document).on("click", "#ImagePanel .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () { + $scope.setActiveTab(parseInt($rootScope.getLocalStorageValue("activeTab"))); + $(".tools").css("z-index", "15000"); + $rootScope.selectedBodySystemName = 'All'; + $rootScope.selectedBodySystemId = 0; + $rootScope.searchSelectedText = ''; + + }); + + $(document).on("click", "#dvPrintPreview .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () { + + if ($rootScope.isShowAllPinBtnActiveInPrintPreviewMode == true) { + $("#allPinBtn").trigger("click"); + $rootScope.isShowAllPinBtnActiveInPrintPreviewMode = false; + } + if ($rootScope.isHidePinBtnActiveInPrintPreview == true) { + $("#hidePinBtn").trigger("click"); + $rootScope.isHidePinBtnActiveInPrintPreview = false; + } + if($rootScope.isShowSelectedPinActiveInPrintPrevMode == true) + { + $("#selectedPin").trigger("click"); + $rootScope.isShowSelectedPinActiveInPrintPrevMode = false; + } + }); + + }) + $rootScope.aaPinDataArray = []; + $scope.showAllPins = function () { + + $scope.allPinDataArray = []; + var promise = ModuleService.getPinDataForImage($rootScope.imageName) + + .then( + function (result) { + + //load navigator image + if (result.data.Root._NavigatorImage != undefined) { + document.getElementById('navimg').src = '~/../content/images/aa/images/navigator/' + result.data.Root._NavigatorImage; + } + else { + document.getElementById('navimg').style.visibility = 'hidden'; + document.getElementById('navigatorBtn').style.visibility = 'hidden'; + document.getElementById('navigatorDiv').style.visibility = 'hidden'; + + } + + //draw pins + $scope.aaPinData = result.data.Root.Item; + if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { + $rootScope.aaPinDataArray = $scope.aaPinData + angular.forEach($scope.aaPinData, function (value, key) { + $scope.allPinDataArray.push(value._PinId); + $scope.drawStaticPinsOnImage('aaDetailViewCanvas', value._PinId, value._PinX, value._PinY, value._HeadX, value._HeadY) + }) + + + + //load search/vocab data + $rootScope.loadSearchData(); + } + }, + function (error) { + + console.log(' error in showAllPins: ' + error.statusText); + } + ) + if ($scope.isSliderChange == true) { + $timeout(function () { + $scope.activePinOnLayerChange(); + }, 1000); + + } + + } + + + $scope.FilterByImage = function (moduleId, query) { + $scope.moduleId = moduleId; + $scope.filterstring = true; + + console.log('loadForModuleById is called'); + + $rootScope.moduleName = Modules[moduleId].Name; + while ($scope.searchAAListViewData.length) { + $scope.searchAAListViewData.pop(); + } + + var filtercount = 0; + if (typeof (query.selectedbodyregion) !== "undefined" && (query.selectedbodyregion !== null && query.selectedbodyregion !== "")) { + filtercount = filtercount + 1; + localStorage.setItem("CurrentBodyRegion", query.selectedbodyregion); + } + else { + localStorage.setItem("CurrentBodyRegion", ''); + } + + if (typeof (query.selectedbodysystem) !== "undefined" && (query.selectedbodysystem !== null && query.selectedbodysystem !== "")) { + filtercount = filtercount + 1; + localStorage.setItem("CurrentBodySystem", query.selectedbodysystem); + } + else { + localStorage.setItem("CurrentBodySystem", ''); + } + + if (typeof (query.selectedorientation) !== "undefined" && (query.selectedorientation !== null && query.selectedorientation !== '')) { + filtercount = filtercount + 1; + localStorage.setItem("CurrentOrientation", query.selectedorientation); + } + else { + localStorage.setItem("CurrentOrientation", ''); + } + + if (typeof (query.selectedimagetype) !== "undefined" && (query.selectedimagetype !== null && query.selectedimagetype !== '')) { + filtercount = filtercount + 1; + localStorage.setItem("CurrentImageType", query.selectedimagetype); + } + else { + localStorage.setItem("CurrentImageType", ''); + } + + var promise = ModuleService.loadModuleDataBasedOnModuleName($scope.moduleName) + .then( + function (result) { + // alert(JSON.stringify($scope.moduleLandingData)); + $scope.moduleLandingData = result; + $scope.selectedAAListViewData = new jinqJs() + .from($scope.moduleLandingData.data.root.Item) + .orderBy([{ field: '_Title', sort: 'asc' }]) + .select(); + + $('#grid-view').empty(); + //alert(JSON.stringify($scope.selectedAAListViewData)) + angular.forEach($scope.selectedAAListViewData, function (value, key) { + + var selectimg = true; + var count = 0; + + + if (typeof (query.selectedbodyregion) !== "undefined" && (query.selectedbodyregion !== null && query.selectedbodyregion !== "")) { + var posbodyregion = value._BodyRegion.indexOf((query.selectedbodyregion.trim())); + if (posbodyregion > -1) { + selectimg = true; + count = count + 1; + } + else { + selectimg = false; + count = count - 1; + } + + } + + if (typeof (query.selectedbodysystem) !== "undefined" && (query.selectedbodysystem !== null && query.selectedbodysystem !== "")) { + var posbodysystem = value._BodySystem.indexOf(query.selectedbodysystem); + if (posbodysystem > -1) { + count = count + 1; + selectimg = true; + } else { + selectimg = false; + count = count - 1; + } + } + + if (typeof (query.selectedorientation) !== "undefined" && (query.selectedorientation !== null && query.selectedorientation !== "")) { + var posorientation = value._ViewOrientation.indexOf(query.selectedorientation); + if (posorientation > -1) { + count = count + 1; + selectimg = true; + + } else { + selectimg = false; + count = count - 1; + } + + } + + if (typeof (query.selectedimagetype) !== "undefined" && (query.selectedimagetype !== null && query.selectedimagetype !== "")) { + var posimagetype = value._ImageType.indexOf(query.selectedimagetype); + if (posimagetype > -1) { + count = count + 1; + selectimg = true; + + } else { + selectimg = false; + count = count - 1; + } + + } + + if (selectimg === true && count >= filtercount) { + + $scope.imagePath = "../content/images/aa/thumbnails/" + value._TileImageName; + + + var $el = $('
    ' + + '
    ').appendTo('#grid-view'); + + + $compile($el)($scope); + + $(".sidebar").mCustomScrollbar({ + autoHideScrollbar: true, + //theme:"rounded" + }); + + + $scope.searchAAListViewData.push( + { + "_Id": value._Id, + "_ImageId": value._ImageId, + "_Title": value._Title, + "_ImageName": value._contentImage, + "_TileImageName": value._ThumbnailImage, + "_BodySystem": value._BodySystem, + "_BodyRegion": value._BodyRegion, + "_ViewOrientation": value._ViewOrientation, + "_ImageType": value._ImageType + //"$$hashKey": value._Summary + + }); + console.log($scope.searchAAListViewData); + if ($('#searchItem').length > 0) + $('#searchItem').remove(); + } + }); + + //Show Error Message in case of gridview/ ListView [if no data is found] + if ($scope.searchAAListViewData.length == 0) { + var $el = $('
    No illustration found for the selected search criteria!
    ').appendTo('#grid-view'); + $compile($el)($scope); + $('table > #ListViewDiv > #searchItem').remove(); + + $('#ListViewDiv').append('No illustration found for the selected search criteria!'); + } + //console.log(JSON.stringify(result, null, 4)); + console.log('SearchAAListViewData--' + $scope.searchAAListViewData); + }, + function (error) { + // handle errors here + console.log(' error: ' + error.statusText); + } + ) + } + + $scope.Reset = function (moduleId, query) { + + query.selectedbodyregion = ""; + query.selectedbodysystem = ""; + query.selectedorientation = ""; + query.selectedimagetype = ""; + query.selectedspecialty = ""; + + + //set localstorage values + localStorage.setItem("CurrentBodyRegion", ''); + localStorage.setItem("CurrentBodySystem", ''); + localStorage.setItem("CurrentOrientation", ''); + localStorage.setItem("CurrentImageType", ''); + //localStorage.setItem("CISelectedRowId", ""); + //localStorage.setItem("CIListViewScroll", ''); + + if ($('.selected').hasClass("selected")) { $('.selected').removeClass("selected"); } + + $('#ListViewDiv').scrollTop(0); + + if ($('#demoView').length > 0) + $('#demoView').remove(); + // $scope.HideListViewDiv(); + + $scope.filterstring = false; + //while ($scope.searchCIListViewData.length) { + // $scope.searchCIListViewData.pop(); + //} + + $scope.FilterByImage(1, query); + + } + + $scope.showSelectedSystemPins = function (event) { + var bodySystemListObj = document.getElementById("bodySystemList").getElementsByTagName("a"); + var bodySystemListlength = bodySystemListObj.length; + for (var i = 0; i < bodySystemListlength; i++) { + + $("#" + i).parent().removeClass("activeAASystemSelect"); + } + $("#" + event.currentTarget.id).parent().addClass("activeAASystemSelect"); + + $rootScope.isLoading = true; + $('#spinner').css('visibility', 'visible'); + + $scope.removeSpeechBubble(); + if (event.currentTarget.id == "0") { + + $scope.selectedSystemName = null; + if ($scope.isHidePinBtnClicked) { + + // $scope.showAllPinsAfterHide($scope.aaPinData); + $scope.showAllPinsAfterHide(); + } + else { + $scope.showAllPins(); + } + } + else { + + $scope.selectedSystemName = event.currentTarget.title; + // get termText info + var promise = ModuleService.getTermTextDataForPin($scope.moduleName) + .then( + function (response) { + + $scope.TermInfo = response.data.Terms.Term; + + //on gettng all required data, draw pins + if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { + + $scope.selectedSystemPinData = new jinqJs() + .from($scope.aaPinData) + .where("_BodySystemName == " + $scope.selectedSystemName) + .select(); + if ($scope.isHidePinBtnClicked) { + // $scope.showAllPinsAfterHide($scope.selectedSystemPinData); + $scope.showAllPinsAfterHide(); + + } + else { + //remove other system pins + if ($scope.selectedSystemPinData != null && $scope.selectedSystemPinData.length > 0) { + + angular.forEach($scope.aaPinData, function (aaPinDataValue, aaPinDataKey) { + + if (aaPinDataValue._BodySystemName != $scope.selectedSystemName) + $scope.removePin('aaDetailViewCanvas', aaPinDataValue._PinId); + }) + + angular.forEach($scope.selectedSystemPinData, function (value, key) { + + + $scope.drawStaticPinsOnImage('aaDetailViewCanvas', value._PinId, value._PinX, value._PinY, value._HeadX, value._HeadY) + + }) + //show annotation on first pin of the sysyem + $scope.showAnnotation($scope.selectedSystemPinData, false, false, false); + } + } + } + }, + function (error) { + // handle errors here + console.log(' error: ' + error.statusText); + } + ) + + } + } + + $scope.showAnnotation = function (selectedPinData, isCtrlPressed, isPinClicked, isItemSearched) { + $scope.clickedPins = []; + $scope.selectedPin = []; + var isSameTermWithMultiPin = false; + var firstPinId = selectedPinData[0]._PinId; + var pinTermNumber = selectedPinData[0]._TermId; + + //check if other pin have same termNumber + if ($scope.aaPinData != null && $scope.aaPinData.length > 0) { + + var pinDataWithFirstTermNumber = new jinqJs() + .from($scope.aaPinData) + .where("_TermId == " + pinTermNumber) + .select(); + + $scope.MultiLanguageAnnationArray = []; + + $scope.GetAnnotationBasedOnActualTermNo(pinTermNumber); + + if (isCtrlPressed) { + + } + else { + if (isPinClicked || isItemSearched) { + var existingSpeechBubble = $("div[id*='speechBubble']"); + for (var i = 0; i < existingSpeechBubble.length; i++) { + existingSpeechBubble[i].parentNode.removeChild(existingSpeechBubble[i]); + + //make all pin heads grey + var radial = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(216, 216, 216)' + }); + + + $('#aaDetailViewCanvas').setLayers({ + fillStyle: radial, + }).drawLayers(); + } + + var existingSpeechBubbleLine = $("div[id*='speechBubbleLine']"); + for (var i = 0; i < existingSpeechBubbleLine.length; i++) { + existingSpeechBubbleLine[i].parentNode.removeChild(existingSpeechBubbleLine[i]); + } + var speechBubbleDraggedLine = $("div[id*='speechBubbleDraggedLine']"); + for (var i = 0; i < speechBubbleDraggedLine.length; i++) { + speechBubbleDraggedLine[i].parentNode.removeChild(speechBubbleDraggedLine[i]); + } + } + } + if (pinDataWithFirstTermNumber.length > 1) { + isSameTermWithMultiPin = true; + } + + angular.forEach(pinDataWithFirstTermNumber, function (value, key) { + $scope.selectedPin.push(value._PinId); + $scope.clickedPins.push({ 'id': value._PinId }); + var headX = (parseInt(value._HeadX)); + var headY = (parseInt(value._HeadY)); + $scope.createSpeechBubble(parseInt(headX) + 10, parseInt(headY) + 10, value._PinId, isCtrlPressed, isPinClicked, isSameTermWithMultiPin); + }) + + } + + $rootScope.isLoading = false; + $('#spinner').css('visibility', 'hidden'); + // $scope.MultiLanguageAnnationArray.push($rootScope.annotationText[i]) + } + + $scope.removeSpeechBubble = function () { + + + //clear speech bubbles + var speechBubbles = $("div[id*='speechBubble']"); + if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { + for (var j = 0; j < speechBubbles.length; j++) { + + speechBubbles[j].parentNode.removeChild(speechBubbles[j]); + } + } + var speechBubbleLines = $("div[id*='speechBubbleLine']"); + if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { + for (var j = 0; j < speechBubbleLines.length; j++) { + + speechBubbleLines[j].parentNode.removeChild(speechBubbleLines[j]); + } + } + + var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); + if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { + for (var j = 0; j < speechBubbleDraggedLines.length; j++) { + + speechBubbleDraggedLines[j].parentNode.removeChild(speechBubbleDraggedLines[j]); + } + } + }; + + $scope.showSpeechBubble = function () { + + + //clear speech bubbles + var speechBubbles = $("div[id*='speechBubble']"); + if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { + for (var j = 0; j < speechBubbles.length; j++) { + + document.getElementById(speechBubbles[j].id).style.visibility = 'visible'; + } + } + var speechBubbleLines = $("div[id*='speechBubbleLine']"); + if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { + for (var j = 0; j < speechBubbleLines.length; j++) { + + document.getElementById(speechBubbleLines[j].id).style.visibility = 'visible'; + } + } + + var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); + if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { + for (var j = 0; j < speechBubbleDraggedLines.length; j++) { + + document.getElementById(speechBubbleDraggedLines[j].id).style.visibility = 'visible'; + } + } + }; + + $scope.hideSpeechBubble = function () { + + + //clear speech bubbles + var speechBubbles = $("div[id*='speechBubble']"); + if (speechBubbles != null || speechBubbles != undefined && speechBubbles.length > 0) { + for (var j = 0; j < speechBubbles.length; j++) { + + document.getElementById(speechBubbles[j].id).style.visibility = 'hidden'; + } + } + var speechBubbleLines = $("div[id*='speechBubbleLine']"); + if (speechBubbleLines != null || speechBubbleLines != undefined && speechBubbleLines.length > 0) { + for (var j = 0; j < speechBubbleLines.length; j++) { + + document.getElementById(speechBubbleLines[j].id).style.visibility = 'hidden'; + } + } + + var speechBubbleDraggedLines = $("div[id*='speechBubbleDraggedLine']"); + if (speechBubbleDraggedLines != null || speechBubbleDraggedLines != undefined && speechBubbleDraggedLines.length > 0) { + for (var j = 0; j < speechBubbleDraggedLines.length; j++) { + + document.getElementById(speechBubbleDraggedLines[j].id).style.visibility = 'hidden'; + } + } + }; + + + $scope.createSpeechBubble = function (x, y, PinId, isCtrlPressed, isPinClicked, isSameTermWithMultiPin) { + + $scope.longestAnnotation = $scope.MultiLanguageAnnationArray.reduce(function (firstAnnotation, seconAnnotation) { return firstAnnotation.length > seconAnnotation.length ? firstAnnotation : seconAnnotation; }); + + $scope.createSpeechBubbleBasedOnAnnotationLength(x, y, PinId); + + $('#speechBubble').draggable( + { + drag: function (evt) { + $("#dot").css("visibility", "hidden"); + var verticalScrollPosition = canvasDiv.scrollTop; + var horizontlScrollPosition = canvasDiv.scrollLeft; + $scope.angle(x * $scope.sliderPercentValue, y * $scope.sliderPercentValue, evt.pageX + horizontlScrollPosition - $('#canvasDiv').offset().left, evt.pageY + verticalScrollPosition - $('#canvasDiv').offset().top, true); + }, + }); + + } + $scope.sliderVal = 100; + $scope.createSpeechBubbleBasedOnAnnotationLength = function (x, y, PinId) { + + x = x * $scope.sliderPercentValue; + y = y * $scope.sliderPercentValue; + + var speechBubbleHTML = '' + + '
    ' + + '' + + '
    ' + + + ''; + + //Issue #7286 :Undefined annotation should not appear + for (var i = 0; i <= $scope.MultiLanguageAnnationArray.length - 1; i++) { + var MultipleLanguage = $scope.MultiLanguageAnnationArray[i]; + } + + if (MultipleLanguage == undefined) { + console.log("No text is found"); + } else { + $('#canvasDiv').append(speechBubbleHTML); + + if ($scope.MultiLanguageAnnationArray.length > 0) { + for (var i = 0; i <= $scope.MultiLanguageAnnationArray.length - 1; i++) { + var MultipleLanguage = $scope.MultiLanguageAnnationArray[i]; + $rootScope.clickedPinAnnotation = $scope.MultiLanguageAnnationArray[0]; + $("#speechBubble" + PinId).append("

    " + MultipleLanguage + "

    "); + } + } + else { + console.log('MultiLanguageAnnationArray.length is :' + $scope.MultiLanguageAnnationArray.length) + } + + + + + + if ($scope.longestAnnotation != null || $scope.longestAnnotation != undefined) { + if ($scope.longestAnnotation.length <= 10) { + + + $("#speechBubble").css("width", "100px"); + + } + + else if ($scope.longestAnnotation.length > 10 && $scope.longestAnnotation.length <= 17) { + + + + $("#speechBubble").css("width", "140px"); + + } + else if ($scope.longestAnnotation.length > 17 && $scope.longestAnnotation.length <= 26) { + + + $("#speechBubble").css("width", "195px"); + + } + else if ($scope.longestAnnotation.length > 26 && $scope.longestAnnotation.length <= 34) { + + $("#speechBubble").css("width", "248px"); + + } + else if ($scope.longestAnnotation.length > 34 && $scope.longestAnnotation.length <= 44) { + + + $("#speechBubble").css("width", "300px"); + } + + else if ($scope.longestAnnotation.length > 44 && $scope.longestAnnotation.length <= 54) { + + $("#speechBubble").css("width", "370px"); + } + + else if ($scope.longestAnnotation.length > 54 && $scope.longestAnnotation.length <= 69) { + $("#speechBubble").css("width", "450px"); + } + else if ($scope.longestAnnotation.length > 69 && $scope.longestAnnotation.length <= 75) { + $("#speechBubble").css("width", "510px"); + } + else { + $("#speechBubble").css("width", ($scope.longestAnnotation.length) + "%"); + } + } + } + var speechBubbleDims = []; + + $rootScope.speechBubbleDimaensions.push({ "currentX": x, "currentY": y, "id": PinId }); + speechBubbleDims.push({ currentX: x, currentY: y }); + document.getElementById('speechBubbleLine' + PinId + '').style.display = 'block'; + document.getElementById('speechBubbleLine' + PinId + '').style.left = ((speechBubbleDims[0].currentX - 12)) + 'px'; + if ($scope.sliderVal == 25) { + document.getElementById('speechBubbleLine' + PinId + '').style.top = ((speechBubbleDims[0].currentY + 5)) + 'px'; + } + else { + document.getElementById('speechBubbleLine' + PinId + '').style.top = ((speechBubbleDims[0].currentY)) + 'px'; + } + document.getElementById('speechBubble' + PinId + '').style.display = 'block'; + document.getElementById('speechBubble' + PinId + '').style.left = (speechBubbleDims[0].currentX - 4) + 'px'; + document.getElementById('speechBubble' + PinId + '').style.top = (speechBubbleDims[0].currentY) + 'px'; + $('.common-drag').draggable( + { + + drag: function (evt) { + + var verticalScrollPosition = document.getElementById('canvasDiv').scrollTop; + var horizontlScrollPosition = document.getElementById('canvasDiv').scrollLeft; + var clickedSpeechBubbleId = $(this).attr("id"); + + var clickedPinId = clickedSpeechBubbleId.substring(12, clickedSpeechBubbleId.length); + + $("#speechBubbleLine" + clickedPinId).css("visibility", "hidden"); + $("#speechBubbleLine" + clickedPinId).css("display", "none"); + + for (var i = 0; i <= $rootScope.speechBubbleDimaensions.length - 1; i++) { + if ($rootScope.speechBubbleDimaensions[i].id == clickedPinId) { + $scope.angle(clickedPinId, $rootScope.speechBubbleDimaensions[i].currentX, $rootScope.speechBubbleDimaensions[i].currentY, evt.pageX + horizontlScrollPosition - $('#canvasDiv').offset().left, evt.pageY + verticalScrollPosition - $('#canvasDiv').offset().top, true); + } + } + + }, + }); + $('.crossDiv_temp').on('click', function (evt) { + + var imgId = $(this).attr("id"); + var pinId = imgId.substring(8, imgId.length); + $('#speechBubble' + pinId).remove(); + $("#speechBubbleDraggedLine" + pinId).remove(); + $("#speechBubbleLine" + pinId).remove(); + + //make all pin heads grey + var pinHeadName = 'PinArc_' + pinId; + var radial = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(216, 216, 216)' + }); + + + $('#aaDetailViewCanvas').setLayer(pinHeadName, { + fillStyle: radial, + }).drawLayers(); + }); + + //make the head green + var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(126, 187, 83)' + }); + var pinHeadName = 'PinArc_' + PinId; + var pin = $('#aaDetailViewCanvas').getLayer(pinHeadName); + // pin.fillStyle = radialAfterClick; + + $('#aaDetailViewCanvas').setLayer(pinHeadName, { + fillStyle: radialAfterClick, + }).drawLayers(); + } + + + $scope.angle = function (id, cx, cy, ex, ey, BoolValues) { + + var dy = ey - cy; + var dx = ex - cx; + var theta = 0; + if (dx < 0) { + theta = Math.atan(dy / dx) * (180 / Math.PI); + theta = theta + 180; + + } + else if (dy < 0) { + theta = Math.atan(dy / dx) * (180 / Math.PI); + theta = theta + 360; + + } + else { + theta = Math.atan(dy / dx) * (180 / Math.PI); + } + + var d = Math.sqrt((cx - ex) * (cx - ex) + (cy - ey) * (cy - ey)); + var e = cy; + var f = cx; + + if (BoolValues == true) { + if ($scope.sliderVal == 40) { + $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 5) + 'px', 'left': (f - 5) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); + } + else if ($scope.sliderVal == 25) { + $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 2) + 'px', 'left': (f - 2) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); + } + else { + $("#speechBubbleDraggedLine" + id).css({ 'display': 'block', 'width': d + 'px', 'top': (e - 10) + 'px', 'left': (f - 5) + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); + } + + } + else { + $("#bord_annotation").css({ 'display': 'block', 'width': d + 'px', 'top': e + 'px', 'left': f + 'px', 'transform': 'rotate(' + theta + 'deg)', '-moz-transform': 'rotate(' + theta + 'deg)', '-webkit-transform': 'rotate(' + theta + 'deg)', 'transform-origin': '0% 0%' }); + } + + + + } + + + $scope.drawStaticPinsOnImage = function (canvasId, PinId, offsetX1, offsetY1, x, y) { + $scope.clickedPins = []; + // if ($scope.isSliderChange == true) { + console.log('isSliderrChange') + var radial = $('#' + canvasId).createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(216, 216, 216)' + }); + $('#' + canvasId).drawLine({ + layer: true, + name: "Pin_" + PinId, + groups: ["Pin_" + PinId], + strokeStyle: '#565656', + strokeWidth: 2, + visible: true, + x1: offsetX1 * $scope.sliderPercentValue, y1: offsetY1 * $scope.sliderPercentValue, + x2: x * $scope.sliderPercentValue, y2: y * $scope.sliderPercentValue, + + + }).drawArc({ + name: "PinArc_" + PinId, + layer: true, + groups: ["Pin_" + PinId], + strokeStyle: 'grey', + strokeWidth: 2, + visible: true, + fillStyle: radial, + x: x * $scope.sliderPercentValue, y: y * $scope.sliderPercentValue, + radius: 5 * $scope.sliderPercentValue, + + click: function (clickedPin) { + if (clickedPin.event.ctrlKey == false) { + $scope.clickedPins = []; + } + var pinID = (clickedPin.name).substring(7, (clickedPin.name).length); + var pinData = new jinqJs() + .from($scope.aaPinData) + .where("_PinId == " + pinID) + .select(); + + + var pinTermNumber = pinData[0]._TermId; + + var pinWithSameTerm = new jinqJs() + + .from($scope.aaPinData) + .where("_TermId == " + pinTermNumber) + .select(); + + + if (pinWithSameTerm != undefined && pinWithSameTerm != null && pinWithSameTerm.length > 0) { + + for (var i = 0; i < pinWithSameTerm.length; i++) { + + $scope.clickedPins.push({ 'id': pinWithSameTerm[i]._PinId }) + } + + } + $scope.isSelectedPinBtnClickedAftrSliderCange = false; + var selectedPinData = new jinqJs() + .from($scope.aaPinData) + .where("_PinId == " + pinID) + .select(); + if (clickedPin.event.ctrlKey == true) { + + $scope.activePinArray.push(clickedPin.name); + var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(126, 187, 83)' + }); + clickedPin.fillStyle = radialAfterClick; + $scope.showAnnotation(selectedPinData, true, true, false); + } + else { + $scope.activePinArray = []; + $scope.activePinArray.push(clickedPin.name); + var radial = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(216, 216, 216)' + }); + + + $('#aaDetailViewCanvas').setLayers({ + fillStyle: radial, + }).drawLayers(); + + //change the head color to green + var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(126, 187, 83)' + }); + + clickedPin.fillStyle = radialAfterClick; + $scope.showAnnotation(selectedPinData, false, true, false); + + } + + } + + }).drawLayers(); + } + + + $scope.getMousePos = function (evt) { + + return { + x: Math.round(evt.pageX - $('#canvasDiv').offset().left), + y: Math.round(evt.pageY - $('#canvasDiv').offset().top) + } + } + + $scope.removePin = function (canvasId, pinId) { + + var pinName = 'Pin_' + pinId; + var pinArcName = 'PinArc_' + pinId; + $('#' + canvasId).removeLayer(pinName).drawLayers(); + $('#' + canvasId).removeLayer(pinArcName).drawLayers(); + + $scope.removeSpeechBubble(); + + //$rootScope.isSliderChanged = true; + //$('#aaDetailViewCanvas').removeLayers(); + } + + $rootScope.$on('annotationToolEvent', function (event, data) { + $('#editstylebackgroundcolor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(255,255,255)") + $('#editstylebackgroundcolor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" }); + $('#outlineColor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(0,0,0)") + $('#outlineColor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" }); + + $("#canvas").css("display", "block"); + $("#canvasPaint").css("display", "block"); + $rootScope.onDrawingCanvasClick(); + $rootScope.FreeStylePaint(); + }); + + $rootScope.loadSearchData = function () { + + //$("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" }); + var imageId = $rootScope.imageId; + var promise = ModuleService.getTermTextDataForAAImage(imageId) + .then( + function (response) { + + $scope.AAPinTermData = response.data.PinTermData.TermData; + + $rootScope.isLoading = false; + $('#setting-spinner').css('visibility', 'hidden'); + + $scope.pinTermData = []; + var primaryLexicon = $rootScope.lexiconLanguageArray[0].id; + $scope.matchedLanguageTermData = new jinqJs() + .from($scope.AAPinTermData) + .where('_LanguageId == ' + primaryLexicon) + .select(); + var sortedTermTextArray = []; + for (var i = 0; i < $scope.matchedLanguageTermData.length; i++) { + sortedTermTextArray.push($scope.matchedLanguageTermData[i]._TermText); + sortedTermTextArray.sort(); + } + + for (var i = 0; i <= sortedTermTextArray.length - 1; i++) { + for (var j = 0; j <= $scope.matchedLanguageTermData.length - 1; j++) { + if ($scope.matchedLanguageTermData[j]._TermText == sortedTermTextArray[i]) { + $scope.pinTermData.push({ "LanguageId": $scope.matchedLanguageTermData[j]._LanguageId, "TermNumber": $scope.matchedLanguageTermData[j]._TermNumber, "TermTxt": $scope.matchedLanguageTermData[j]._TermText }); + break; + } + } + } + + + $scope.$watch('$scope.pinTermData', function (newValue, oldValue, scope) { + + if (($('#termlistfilter').html() != "")) + + $('#termlistfilter').empty(); + if ($scope.pinTermData.length > 0) { + $timeout(function () { + console.log('pinTermData= ' + $scope.pinTermData.length); + $('#termList').empty(); + $('#termlistfilter').empty(); + for (var j = 0; j < $scope.pinTermData.length; j++) { + var $el = $('
  • ' + $scope.pinTermData[j].TermTxt + '
  • ').appendTo('#termlistfilter') + //var $el = $('
  • ' + $scope.pinTermData[j].TermTxt + '
  • ').appendTo('#termlistfilter') + $compile($el)($scope); + var $selectedOptions = $('').appendTo("#termList") + + $compile($selectedOptions)($scope); + + $("#AABodySystems").empty(); + $("#bodySystems").css("display", "none"); + $("#AABodySystems").css("display", "block"); + $("#bodySystemList li a").each(function (key, value) { + var $systemOptions = $('').appendTo("#AABodySystems") + $compile($systemOptions)($scope); + }); + } + }, 500); + } + }) + }, + function (error) { + // handle errors here + console.log(' error: ' + error.statusText); + } + ) + } + + + + + $scope.$on('listManagerEvent', function (event, data) { + + $("#viewName").empty(); + + var currentView = $rootScope.getLocalStorageValue("currentViewTitle"); + var viewNmeHtml = '' + $('#viewName').append(viewNmeHtml); + //$("#viewName").append(""); + $rootScope.isLoading = false; + $('#spinner').css('visibility', 'hidden'); + + if ($rootScope.bodySystemSeletedId == null) { + + $rootScope.loadSearchData(); + } + else { + + $rootScope.refreshTermListOnAASystemSelection($rootScope.bodySystemSeletedId); + } + $timeout(function () { + $("#totalTerms").empty(); + $("#totalTerms").html("" + $("#termList option").length + " Structures"); + }, 1000); + }); + + + + $rootScope.refreshTermListOnAASystemSelection = function (bodySystemId) { + $rootScope.bodySystemSeletedId = bodySystemId; + $('#termList').empty(); + var bodySystemName = $("#AABodySystems #" + bodySystemId).val(); + if (bodySystemName == "All") { + for (var j = 0; j <= $scope.pinTermData.length - 1; j++) { + var $selectedOptions = $('').appendTo("#termList") + + $compile($selectedOptions)($scope); + } + $("#totalTerms").empty(); + $("#totalTerms").html("" + $("#termList option").length + " Structures"); + } + else { + var imageId = $rootScope.imageId; + $scope.pinDataUrl = "aa_dat_pinterm_" + imageId; + $rootScope.bodySystemTermArray = []; + $rootScope.sortedListArray = []; + $rootScope.duplicateListArray = []; + $.ajax({ + url: '~/../content/data/json/aa/aa_pinterm/' + $scope.pinDataUrl + '.json', + type: 'GET', + dataType: "json", + async: false, + success: function (result) { + $(result.PinTermData.TermData).each(function (key, value) { + $rootScope.bodySystemTermArray.push({ "termNumbr": result.PinTermData.TermData[key]._TermNumber, "text": result.PinTermData.TermData[key]._TermText, "language": result.PinTermData.TermData[key]._LanguageId }); + }); + for (var i = 0; i <= $scope.aaPinData.length - 1; i++) { + if ($scope.aaPinData[i]._BodySystemName.toLowerCase() == bodySystemName.toLowerCase()) { + for (var j = 0 ; j <= $rootScope.bodySystemTermArray.length - 1; j++) { + if ($scope.aaPinData[i]._TermId == $rootScope.bodySystemTermArray[j].termNumbr) { + if ($rootScope.bodySystemTermArray[j].language == $rootScope.lexiconLanguageArray[0].id) { + console.log($rootScope.bodySystemTermArray[j].text); + $rootScope.duplicateListArray.push({ "title": $rootScope.bodySystemTermArray[j].text, "id": $rootScope.bodySystemTermArray[j].termNumbr }); + } + } + } + } + } + var temp = []; + for (var i = 0; i <= $rootScope.duplicateListArray.length - 1; i++) { + var termID = $rootScope.duplicateListArray[i].id; + if ($.inArray(termID, temp) == -1) { + temp.push(termID); + $rootScope.sortedListArray.push({ "title": $rootScope.duplicateListArray[i].title, "id": termID }); + } + } + + for (var i = 0; i <= $rootScope.sortedListArray.length - 1; i++) { + + for (j = i + 1; j <= $rootScope.sortedListArray.length - 1; j++) { + + if ($rootScope.sortedListArray[i].title.substr(0, 1) > $rootScope.sortedListArray[j].title.substr(0, 1)) { + + var termText = $rootScope.sortedListArray[i].title; + var termNumbr = $rootScope.sortedListArray[i].termNumbr; + var termLanguage = $rootScope.sortedListArray[i].language; + + $rootScope.sortedListArray[i].title = $rootScope.sortedListArray[j].title; + $rootScope.sortedListArray[i].termNumbr = $rootScope.sortedListArray[j].termNumbr; + $rootScope.sortedListArray[i].language = $rootScope.sortedListArray[j].language; + + $rootScope.sortedListArray[j].title = termText; + $rootScope.sortedListArray[j].termNumbr = termNumbr; + $rootScope.sortedListArray[j].language = termLanguage; + } + } + } + + for (var j = 0; j <= $rootScope.sortedListArray.length - 1; j++) { + var $selectedOptions = $('').appendTo("#termList") + $compile($selectedOptions)($scope); + } + } + }); + $("#totalTerms").empty(); + $("#totalTerms").html("" + $("#termList option").length + " Structures"); + } + } + $scope.GetAnnotationBasedOnActualTermNo = function (actualTermNo) { + + + var languageArray = $rootScope.lexiconLanguageArray; + + if ($scope.AAPinTermData != null || $scope.AAPinTermData != undefined) { + + $scope.matchedTermNoData = new jinqJs() + .from($scope.AAPinTermData) + .where('_TermNumber == ' + actualTermNo) + .select(); + + if ($scope.matchedTermNoData != null || $scope.matchedTermNoData != undefined) { + + for (var j = 0; j <= languageArray.length - 1; j++) { + + $scope.matchedLanguageTermNoData = new jinqJs() + .from($scope.matchedTermNoData) + .where('_LanguageId == ' + languageArray[j].id) + .select(); + var termText = $scope.matchedLanguageTermNoData[0]._TermText; + $scope.MultiLanguageAnnationArray.push(termText); + }; + } + } + } + + $rootScope.hidePins = function () { + $("#dropdownMenu221").addClass("aaSystemDisable"); + $rootScope.isLoading = true; + $('#spinner').css('visibility', 'visible'); + $scope.hideSpeechBubble(); + + $scope.isHidePinBtnClicked = true; + angular.forEach($scope.aaPinData, function (aaPinDataValue, aaPinDataKey) { + + var pinName = 'Pin_' + aaPinDataValue._PinId; + var pinArcName = 'PinArc_' + aaPinDataValue._PinId; + + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + }) + + $rootScope.isLoading = false; + $('#spinner').css('visibility', 'hidden'); + $(".tooltip-custom").removeClass("btn-primary"); + $(".tooltip-custom").addClass("btn-black"); + $("#hidePinBtn").addClass("btn-primary"); + $("#hidePinBtn").removeClass("btn-black"); + } + + $scope.showAllPinsAfterHide = function (event) { + if ($("#dropdownMenu221").hasClass("aaSystemDisable")) { + $("#dropdownMenu221").removeClass("aaSystemDisable"); + } + $rootScope.isLoading = true; + $('#spinner').css('visibility', 'visible'); + $scope.isHidePinBtnClicked = false; + $rootScope.isshowAllPinsBtnAfterHideClicked = true; + if ($scope.selectedSystemName != null && $scope.selectedSystemName != undefined) { + + $scope.showSystemPins($scope.selectedSystemPinData, false); + + } else { + + $scope.showSystemPins($scope.aaPinData, false); + } + $scope.showSpeechBubble(); + $(".tooltip-custom").removeClass("btn-primary"); + $(".tooltip-custom").addClass("btn-black"); + $("#allPinBtn").addClass("btn-primary"); + $("#allPinBtn").removeClass("btn-black"); + if ($scope.isSliderChange == true) { + $scope.isSliderChange = false; + $scope.showAllPins(); + + } + }; + + + $scope.showSelectedPins = function () { + $("#dropdownMenu221").addClass("aaSystemDisable"); + $rootScope.isLoading = true; + $('#spinner').css('visibility', 'visible'); + + $scope.isHidePinBtnClicked = false; + + if ($scope.selectedSystemName != null && $scope.selectedSystemName != undefined) { + + $scope.showSystemPins($scope.selectedSystemPinData, true); + + } + else { + $scope.showSystemPins($scope.aaPinData, true); + + } + $scope.showSpeechBubble(); + $(".tooltip-custom").removeClass("btn-primary"); + $(".tooltip-custom").addClass("btn-black"); + $("#selectedPin").addClass("btn-primary"); + $("#selectedPin").removeClass("btn-black"); + + if ($scope.isSelectedPinBtnClickedAftrSliderCange == true) { + + for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { + var pinName = $scope.activePinArray[i].split("_"); + var activePinName = 'Pin_' + pinName[1]; + var pinArcName = 'PinArc_' + pinName[1]; + $('#aaDetailViewCanvas').setLayer(activePinName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + } + + } + + }; + + + $scope.showSystemPins = function (seletedSystemPinData, isShowSelectedPins) { + + if (isShowSelectedPins) { + + angular.forEach($scope.clickedPins, function (value, key) { + + seletedSystemPinData = new jinqJs() + .from(seletedSystemPinData) + .where('_PinId != ' + value.id) + .select(); + }) + angular.forEach($scope.clickedPins, function (value1, key1) { + + // if (aaPinDataValue._PinId != value.id) { + var pinName = 'Pin_' + value1.id; + var pinArcName = 'PinArc_' + value1.id; + + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + // } + }) + + angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { + + var pinName = 'Pin_' + aaPinDataValue._PinId; + var pinArcName = 'PinArc_' + aaPinDataValue._PinId; + + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + }) + + } + + else { + angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { + + var pinName = 'Pin_' + aaPinDataValue._PinId; + var pinArcName = 'PinArc_' + aaPinDataValue._PinId; + + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + }) + } + + $rootScope.isLoading = false; + $('#spinner').css('visibility', 'hidden'); + + + } + $rootScope.isshowAllPinsBtnAfterHideClicked = true; + $scope.showItemsForSearch = function () { + if($rootScope.isshowAllPinsBtnAfterHideClicked == true){ + console.log('showItemsForSearch is called'); + //this check is for log only because we are writing length so need to check if its not null or undefined + + + $timeout(function () { + if (($scope.AAPinTermData != null || $scope.AAPinTermData != undefined) && ($scope.AAPinTermData.length > 0)) { + + $scope.IsSearchVisible = true; + document.getElementById("termlistfilter").style.display = "block"; + } + else { + $rootScope.loadSearchData(); + if ($scope.AAPinTermData.length > 0) { + $scope.showItemsForSearch(); + } + } + + if ($rootScope.isSearchInputClicked == true) { + $rootScope.isSearchInputClicked = false; + $rootScope.searchListArray = []; + $("#backdrop > #searchListDivAA > #termlistfilter > li").each(function (key, value) { + $rootScope.searchListArray.push({ "name": $(this).find("a").html(), "id": $(this).find("a").attr("id") }); + }); + + } + + }, 500); + } + } + + + $scope.HideSearchList = function () { + + $timeout(function () { + + $("#termlistfilter").css("display", "none"); + + + }, 1000); + + } + + $scope.highlightPinBasedOnSerachItem = function (id) { + $scope.searchItemId = id; + $scope.searchItemText = $("#" + id).text(); + $rootScope.searchSelectedText = $("#" + id).text(); + $('#termList option[selected="selected"]').prop("selected", false); + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true); + $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" }); + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').css({ "background-color": "#3399FF", "color": "#ffffff" }); + + $("#termlistfilter li a").css({ "background-color": "#ffffff", "color": "#000000" }); + $("#termlistfilter li #" + $scope.searchItemId).css({ "background-color": "#3399FF", "color": "#ffffff" }); + $scope.searchFilter = $("#" + id).text(); + //selectedTermName.placeholder = $("#" + id).text(); + selectedTermName.value = $("#" + id).text(); + selectedTermName.placeholder = "search... "; + + //get data from pindata for this trem + + var pinDataForTerm = new jinqJs() + .from($scope.aaPinData) + .where("_TermId == " + $scope.searchItemId) + .select(); + + $scope.showAnnotation(pinDataForTerm, false, false, true); + // maintaing scroll position on selection of options in list manager. + var annotationTopPos = $(".common-drag").css("top").split("p"); + $("#canvasDiv").scrollTop(annotationTopPos[0]); + + $scope.IsSearchVisible = false; + } + + $rootScope.isShowHideButtonClicked = true; + $scope.ShowHideAnnotation = function () { + if ($rootScope.isShowHideButtonClicked == true) { + $rootScope.annotationArray = []; + $("#canvasDiv").find(".common-drag").each(function () { + var speechBubbleID = $(this).attr("id"); + var sppechBubbleId = $(this).attr("id").substring(12); + var b = $("#speechBubbleDraggedLine" + sppechBubbleId).css("display"); + var speechBubbleLineDispProp = $("#speechBubbleLine" + sppechBubbleId).css("display"); + var speechBubbleLineID = "speechBubbleLine" + sppechBubbleId; + var speechBubbleDraggedLineID = "speechBubbleDraggedLine" + sppechBubbleId; + $("#comment-box").addClass("btn-primary"); + $("#comment-box").removeClass("btn-black"); + + if (speechBubbleLineDispProp == "block") { + $rootScope.annotationArray.push({ "speechBuubleId": speechBubbleID, "speechBubbleLineId": speechBubbleLineID }); + } + else { + $rootScope.annotationArray.push({ "speechBuubleId": speechBubbleID, "speechBubbleLineId": speechBubbleDraggedLineID }); + } + }); + $rootScope.isShowHideButtonClicked = false; + for (var i = 0; i <= $rootScope.annotationArray.length - 1; i++) { + $("#" + $rootScope.annotationArray[i].speechBuubleId).css("display", "none"); + $("#" + $rootScope.annotationArray[i].speechBubbleLineId).css("display", "none"); + } + } + else { + $rootScope.isShowHideButtonClicked = true; + for (var i = 0; i <= $rootScope.annotationArray.length - 1; i++) { + $("#" + $rootScope.annotationArray[i].speechBuubleId).css("display", "block"); + $("#" + $rootScope.annotationArray[i].speechBubbleLineId).css("display", "block"); + } + + $("#comment-box").removeClass("btn-primary"); + $("#comment-box").addClass("btn-black"); + + } + } + $scope.activePinOnLayerChange = function () { + for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { + var radialAfterClick = $('#aaDetailViewCanvas').createGradient({ + x1: 50, y1: 50, + x2: 50, y2: 50, + r1: 10, r2: 30, + c1: 'rgba(100, 50, 0,0)', + c2: 'rgb(126, 187, 83)' + }); + var clickedPin = $scope.activePinArray[i]; + $('#aaDetailViewCanvas').setLayer(clickedPin, { + fillStyle: radialAfterClick + }).drawLayers(); + + } + } + + $scope.activePinOnSliderChange = function () { + if ($scope.activePinArray.length == 1) { + for (var i = 0; i <= $scope.allPinDataArray.length - 1; i++) { + var activeArc = $scope.activePinArray[0].split("_"); + if ($scope.allPinDataArray[i] == activeArc[1]) { + var pinName = 'Pin_' + $scope.allPinDataArray[i]; + var pinArcName = 'PinArc_' + $scope.allPinDataArray[i]; + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + } + else { + var pinName = 'Pin_' + $scope.allPinDataArray[i]; + var pinArcName = 'PinArc_' + $scope.allPinDataArray[i]; + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + } + } + } + else { + var seletedSystemPinData; + angular.forEach($scope.activePinArray, function (value, key) { + var pinID = value.split("_"); + seletedSystemPinData = new jinqJs() + .from($scope.allPinDataArray) + .where('_PinId != ' + pinID[1]) + .select(); + }) + + angular.forEach(seletedSystemPinData, function (aaPinDataValue, aaPinDataKey) { + + var pinName = 'Pin_' + aaPinDataValue; + var pinArcName = 'PinArc_' + aaPinDataValue; + + $('#aaDetailViewCanvas').setLayer(pinName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: false // set to true instead to show the layer again + }).drawLayers(); + + }) + for (var i = 0; i <= $scope.activePinArray.length - 1; i++) { + var pinName = $scope.activePinArray[i].split("_"); + var activePinName = 'Pin_' + pinName[1]; + var pinArcName = 'PinArc_' + pinName[1]; + $('#aaDetailViewCanvas').setLayer(activePinName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + $('#aaDetailViewCanvas').setLayer(pinArcName, { + visible: true // set to true instead to show the layer again + }).drawLayers(); + } + } + } + $(document).ready(function () { + var $ua = navigator.userAgent; + if (($ua.match(/(iPod|iPhone|iPad|android)/i))) { + + var jspanelContainerWidth = $(".jsPanel-content").css("width"); + $(".jsPanel-content").css({ "width": "100%", "min-width": jspanelContainerWidth }); + $("#ImagePanel").css("width", "100%"); + + //hide pin button clicked + $("#hidePinBtn").removeAttr("onclick"); + $("#hidePinBtn").on("touchstart", function () { + var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + rootScope.$apply(function () { + rootScope.hidePins(event); + }); + }); + //selected pin button clicked + $("#selectedPin").removeAttr("onclick"); + $("#selectedPin").on("touchstart", function () { + console.log('showSelectedPins is called') + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showSelectedPins(event); + }); + }); + //all pin button clicked + $("#allPinBtn").removeAttr("onclick"); + $("#allPinBtn").on("touchstart", function () { + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showAllPinsAfterHide(event); + }); + }); + //comment-box button clicked + $("#comment-box").removeAttr("onclick"); + $("#comment-box").on("touchstart", function () { + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.ShowHideAnnotation(event); + }); + }); + + } + + }); +}]); + + +function refreshTermListOnSystemSel(bodySystemId) { + var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + rootScope.$apply(function () { + rootScope.refreshTermListOnAASystemSelection(bodySystemId); + }); +} + + +function showSelectedSystemPins(event) { + console.log('OnBodySystem chnaged is called outside '); + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showSelectedSystemPins(event); + }); +} + +function hidePins(event) { + + var rootScope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + rootScope.$apply(function () { + rootScope.hidePins(event); + }); +} + +function showAllPins(event) { + + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showAllPinsAfterHide(event); + }); +} + +function onSearchAA(event) { + console.log('AA search is called') + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showItemsForSearch(); + }); +} + +function hideSearchList(event) { + console.log('AA hide search is called') + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.HideSearchList(); + }); +} + +function onSearchItemSelection(id) { + + console.log('AA hide search is called'); + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.highlightPinBasedOnSerachItem(id); + }); +} + +//function onListManagerTermSelection(event) { +// var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); +// scope.isTermListOptionClicked = true; +// scope.$apply(function () { +// scope.highlightPinBasedOnSerachItem1(event); +// }); + +//} + + +function showHideAnnotation(event) { + + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.ShowHideAnnotation(event); + }); +} + +function showSelectedPins(event) { + + console.log('showSelectedPins is called') + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope(); + scope.$apply(function () { + scope.showSelectedPins(event); + }); +} + + +function openModuleItemView(event) { + var scope = angular.element(document.getElementById("list-view")).scope(); + scope.isListViewButtonClicked = true; + scope.$apply(function () { + scope.openModuleItemView(event); + }); +} + +function openListViewModuleItem(event) { + + var scope = angular.element(document.getElementById("list-view")).scope(); + scope.isListViewButtonClicked = true; + scope.$apply(function () { + scope.openListViewModuleItem(event); + }); +} + +function openCurrentView(event) { + var scope = angular.element(document.getElementById("list-view")).scope(); + scope.isListViewButtonClicked = true; + scope.isOpenBtnClicked = true; + scope.$apply(function () { + scope.openModuleItemView(event); + }); + +} + +function onZoom(scope) { + + //$(".common-drag").remove(); + //$(".commonDot").remove(); + //$(".commonDraggedLine").remove(); + //var radial = $('#aaDetailViewCanvas').createGradient({ + // x1: 50, y1: 50, + // x2: 50, y2: 50, + // r1: 10, r2: 30, + // c1: 'rgba(100, 50, 0,0)', + // c2: 'rgb(216, 216, 216)' + //}); + //$('#aaDetailViewCanvas').setLayers({ + // fillStyle: radial, + //}).drawLayers(); + // scope.removePin(); + // scope.showAllPins(); + + + //6. Show all pins on AA opened item +} + diff --git a/400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html b/400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html index ee7a5c3..415dcc9 100644 --- a/400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html +++ b/400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html @@ -1,572 +1,571 @@ - - - - - - - -
    -
    -
    -
    -
    - -
    -
    - - -
    -
    - -
    - -
    -
    - -
    -
    - -
    -
    -
    -
    - -
    - - -
    - -
    -
    -
    Gender
    - - -
    - -
    -
    View
    - - -
    -
    - -
    - -
    - -
    -
    - - - -
    - - - - - -
    - - - -
    -
    -
    - -
    -
    - -
    -
    -
    -
    -
    - - -
    - - - -
    -
    -
    -
    -
    -
    - - - - - - - - -
    - - - - - - - - - - - - - - - - + + + + + + + +
    +
    +
    +
    +
    + +
    +
    + + +
    +
    + +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    + +
    + + +
    + +
    +
    +
    Gender
    + + +
    + +
    +
    View
    + + +
    +
    + +
    + +
    + +
    +
    + + + +
    + + + + + +
    + + + +
    +
    +
    + +
    +
    + +
    +
    +
    +
    +
    + + +
    + + + +
    +
    +
    +
    +
    +
    + + + + + + + + +
    + + + + + + + + + + + + + + + -- libgit2 0.21.4