Commit 4b4a3cf80fe3d3ebc1a7f2724b610e5b69b181fb

Authored by Birendra Kumar
1 parent 5a978384

Open resource from CB done for module AA,DA,CI,CA and 3D

400-SOURCECODE/AIAHTML5.Web/app/controllers/3dAController.js
1 1 AIA.controller("3dAController", ["$scope", "$rootScope", "pages", "$log", '$http', 'DataService', '$filter', '$location', '$document', '$sce', "$compile", "$timeout", "ModuleService", "$interval",
2 2 function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location, $document, $sce, $compile, $timeout, ModuleService, $interval) {
3 3  
4   -
5   - // $scope.threeDAnatomyData;
6   -
7 4 $scope.initialize3DWindowData = function (windowviewid, isOpenWithExistsModule, cbwindowid) {
8 5 if (isOpenWithExistsModule || cbwindowid == 0) {
9 6 if ($rootScope.TheeDWindowData != undefined) {
... ... @@ -114,6 +111,36 @@ function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location
114 111 $('#CBDetailPageDiv').css('opacity', '1');
115 112 }
116 113  
  114 + $scope.PanelActivity = function () {
  115 +
  116 + $("#" + $scope.jsPanelID).resize(function (event) {
  117 + //work on it
  118 + // alert('test');
  119 + });
  120 + // close panel
  121 + $(document).on("click", "#" + $scope.jsPanelID + " .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
  122 +
  123 + var panelid = $(event.target).parent().parent().parent().parent().attr('id');
  124 +
  125 + var len = (panelid).split("_").length;
  126 + var windowviewid = (panelid).split("_")[len - 1];
  127 +
  128 + // remove old stored data after close panel
  129 + for (var index = 0 ; index < $rootScope.TheeDWindowData.length; index++) {
  130 +
  131 + if ($rootScope.TheeDWindowData[index].multiwinid == windowviewid) {
  132 +
  133 + if (index != -1) {
  134 + // remove module which one is loaded
  135 + $scope.TheeDWindowData.splice(index, 1);
  136 + $rootScope.resetjsPanelTop();
  137 + }
  138 + }
  139 + }
  140 +
  141 + });
  142 + }
  143 +
117 144 $scope.loadAIModuleById = function (moduleId) {
118 145 $rootScope.isCallFromOtherModule = undefined;
119 146  
... ... @@ -194,41 +221,62 @@ function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location
194 221 );
195 222 };
196 223  
197   - $scope.Open3DModel = function ($event) {
198   - $rootScope.currentBodyViewId = $event.currentTarget.id;
199   - var windowviewid = $rootScope.MULTI_VIEW_ID;
200   - var selectedThreeDAdata = $scope.Get3DwindowStoreData(windowviewid, 'threeDAnatomyData');
201   -
202   - if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
203   - var ThreeDTitle = [];
204   - ThreeDTitle = new jinqJs()
205   - .from(selectedThreeDAdata)
206   - .where('_id = ' + $event.currentTarget.id)
207   - .select('_Title', '_3dimagepath');
208   -
209   - $rootScope.ViewTitle = ThreeDTitle[0]._Title;
210   - }
211   - else {
212   - $rootScope.ViewTitle = $event.currentTarget.textContent;
  224 + $scope.Open3DModel = function ($event) {
  225 + // open module bu openresource
  226 + var isopenResourceRequest = sessionStorage.getItem('isModuleOpenByOpenResource');
  227 + if (isopenResourceRequest == "true") {
  228 +
  229 + //set default module data
  230 + var ThreeDopenData = {
  231 + "id": $event.currentTarget.id,
  232 + "mType": 'THREE_D_ANATOMY',
  233 + "windowTitle": $event.currentTarget.textContent,
  234 + "size": { height: 600, width: 900 }
  235 + };
  236 +
  237 + window.parent.AIAModuleOpenResourceInfo(ThreeDopenData);
  238 +
  239 + window.parent.closeIFrame();
213 240  
214 241 }
  242 + else
  243 + {
  244 + $rootScope.currentBodyViewId = $event.currentTarget.id;
  245 + var windowviewid = $rootScope.MULTI_VIEW_ID;
215 246  
  247 + var selectedThreeDAdata = $scope.Get3DwindowStoreData(windowviewid, 'threeDAnatomyData');
216 248  
217   - localStorage.setItem("currentViewTitleFromJson", $rootScope.ViewTitle);
218   - localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
  249 + if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
  250 + var ThreeDTitle = [];
  251 + ThreeDTitle = new jinqJs()
  252 + .from(selectedThreeDAdata)
  253 + .where('_id = ' + $event.currentTarget.id)
  254 + .select('_Title', '_3dimagepath');
219 255  
220   - var ImagePath = ThreeDTitle[0]._3dimagepath;
  256 + $rootScope.ViewTitle = ThreeDTitle[0]._Title;
  257 + }
  258 + else {
  259 + $rootScope.ViewTitle = $event.currentTarget.textContent;
221 260  
222   - $scope.Set3DwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
223   - $scope.Set3DwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
224   - $scope.Set3DwindowStoreData(windowviewid, 'ImagePath', ImagePath);
  261 + }
  262 +
  263 +
  264 + localStorage.setItem("currentViewTitleFromJson", $rootScope.ViewTitle);
  265 + localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
  266 +
  267 + var ImagePath = ThreeDTitle[0]._3dimagepath;
225 268  
226   - var u = $location.url();
227   - $location.url('/3d-anatomy-details');
  269 + $scope.Set3DwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
  270 + $scope.Set3DwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
  271 + $scope.Set3DwindowStoreData(windowviewid, 'ImagePath', ImagePath);
  272 +
  273 + var u = $location.url();
  274 + $location.url('/3d-anatomy-details');
  275 + }
228 276  
229 277 }
230 278  
231   - $scope.Open3DModelBodyMain = function () {
  279 + $rootScope.Open3DModelBodyMain = function () {
232 280  
233 281 if ($rootScope.isCallFromOtherModule) {
234 282 $scope.ThreeDModuleData = ModuleService.getModuleData("THREE_D_ANATOMY");
... ... @@ -409,7 +457,7 @@ function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location
409 457  
410 458 }
411 459  
412   -
  460 + $scope.PanelActivity();
413 461 }
414 462  
415 463 $scope.AnimationOnLoad = function (windowviewid) {
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/CAController.js
... ... @@ -146,6 +146,36 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
146 146 $('#CBDetailPageDiv').css('opacity', '1');
147 147 }
148 148  
  149 + $scope.PanelActivity = function () {
  150 +
  151 + $("#" + $scope.jsPanelID).resize(function (event) {
  152 + //work on it
  153 + // alert('test');
  154 + });
  155 + // close panel
  156 + $(document).on("click", "#" + $scope.jsPanelID + " .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
  157 +
  158 + var panelid = $(event.target).parent().parent().parent().parent().attr('id');
  159 +
  160 + var len = (panelid).split("_").length;
  161 + var windowviewid = (panelid).split("_")[len - 1];
  162 +
  163 + // remove old stored data after close panel
  164 + for (var index = 0 ; index < $rootScope.CAWindowData.length; index++) {
  165 +
  166 + if ($rootScope.CAWindowData[index].multiwinid == windowviewid) {
  167 +
  168 + if (index != -1) {
  169 + // remove module which one is loaded
  170 + $scope.CAWindowData.splice(index, 1);
  171 + $rootScope.resetjsPanelTop();
  172 + }
  173 + }
  174 + }
  175 +
  176 + });
  177 + }
  178 +
149 179 $scope.loadAIModuleById = function (moduleId) {
150 180  
151 181 $rootScope.isCallFromOtherModule = undefined;
... ... @@ -585,70 +615,89 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
585 615 }
586 616  
587 617 $scope.openView = function ($event) {
588   - var windowviewid = $rootScope.MULTI_VIEW_ID;
589   -
590   - $rootScope.disableAnnotationTBFn();
591   - $rootScope.MenuModuleName = "CA";
592   - //alert($rootScope.MenuModuleName);
593   - $rootScope.currentBodyViewId = $event.currentTarget.id;
594   - if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
595   - var selectedTileData = [];
596   - selectedTileData = new jinqJs()
597   - .from($scope.selectedCAListViewData)
598   - .where('_id = ' + $event.currentTarget.id)
599   - .select();
  618 + var isopenResourceRequest = sessionStorage.getItem('isModuleOpenByOpenResource');
  619 + if (isopenResourceRequest == "true") {
  620 +
  621 + //set default module data
  622 + var CADopenData = {
  623 + "id": $event.currentTarget.id,
  624 + "mType": 'CLINICAL_ANIMATIONS',
  625 + "textVisible": true,
  626 + "windowTitle": $event.currentTarget.textContent,
  627 + "size": { height: 600, width: 900 }
  628 + };
600 629  
601   - $rootScope.ViewTitle = selectedTileData[0]._Title;
602   - }
603   - else {
604   - $rootScope.ViewTitle = $event.currentTarget.textContent;
  630 + window.parent.AIAModuleOpenResourceInfo(CADopenData);
  631 +
  632 + window.parent.closeIFrame();
605 633  
606 634 }
  635 + else
  636 + {
  637 + var windowviewid = $rootScope.MULTI_VIEW_ID;
607 638  
608   - localStorage.setItem("currentViewTitle", $rootScope.ViewTitle);
609   - localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
  639 + $rootScope.disableAnnotationTBFn();
  640 + $rootScope.MenuModuleName = "CA";
  641 + //alert($rootScope.MenuModuleName);
  642 + $rootScope.currentBodyViewId = $event.currentTarget.id;
  643 + if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
  644 + var selectedTileData = [];
  645 + selectedTileData = new jinqJs()
  646 + .from($scope.selectedCAListViewData)
  647 + .where('_id = ' + $event.currentTarget.id)
  648 + .select();
  649 +
  650 + $rootScope.ViewTitle = selectedTileData[0]._Title;
  651 + }
  652 + else {
  653 + $rootScope.ViewTitle = $event.currentTarget.textContent;
610 654  
611   - $scope.SetCAwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
612   - $scope.SetCAwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
  655 + }
613 656  
614   - var promise = DataService.getJson('~/../content/data/json/ca/ca_dat_contentlist_mp4link.json')
615   - promise.then(
616   - function (result) {
617   - // $scope.AnimationData = result;
618   - $scope.CAlistViewData = result.root.CAData;
619   - var id = $scope.GetCAwindowStoreData(windowviewid, 'imageId');
620   - var clickedCAVideoData = [];
621   - clickedCAVideoData = new jinqJs()
622   - .from($scope.CAlistViewData)
623   - .where('_id == ' + id)
624   - .select('_Video', '_LowerSummary', '_HostedFolderId');
625   -
626   - var clickedCAVideo = clickedCAVideoData[0]._Video;
627   - var clickedCASummary = clickedCAVideoData[0]._LowerSummary;
628   - var hostedFolderId = clickedCAVideoData[0]._HostedFolderId;
629   -
630   - $scope.SetCAwindowStoreData(windowviewid, 'clickedCAVideo', clickedCAVideo);
631   - $scope.SetCAwindowStoreData(windowviewid, 'clickedCASummary', clickedCASummary);
632   - $scope.SetCAwindowStoreData(windowviewid, 'hostedFolderId', hostedFolderId);
633   -
634   - var CAGridViewScrollPosition = $($window).scrollTop();
635   - localStorage.setItem('CAGridViewScroll', CAGridViewScrollPosition);
636   - var u = $location.url();
637   - $location.url('/clinical-animations-detail');
  657 + localStorage.setItem("currentViewTitle", $rootScope.ViewTitle);
  658 + localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
638 659  
639   - },
640   - function (error) {
641   - // handle errors here
642   - console.log(' $scope.AnimationData = ' + error.statusText);
643   - }
  660 + $scope.SetCAwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
  661 + $scope.SetCAwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
644 662  
645   - );
  663 + var promise = DataService.getJson('~/../content/data/json/ca/ca_dat_contentlist_mp4link.json')
  664 + promise.then(
  665 + function (result) {
  666 + // $scope.AnimationData = result;
  667 + $scope.CAlistViewData = result.root.CAData;
  668 + var id = $scope.GetCAwindowStoreData(windowviewid, 'imageId');
  669 + var clickedCAVideoData = [];
  670 + clickedCAVideoData = new jinqJs()
  671 + .from($scope.CAlistViewData)
  672 + .where('_id == ' + id)
  673 + .select('_Video', '_LowerSummary', '_HostedFolderId');
646 674  
  675 + var clickedCAVideo = clickedCAVideoData[0]._Video;
  676 + var clickedCASummary = clickedCAVideoData[0]._LowerSummary;
  677 + var hostedFolderId = clickedCAVideoData[0]._HostedFolderId;
  678 +
  679 + $scope.SetCAwindowStoreData(windowviewid, 'clickedCAVideo', clickedCAVideo);
  680 + $scope.SetCAwindowStoreData(windowviewid, 'clickedCASummary', clickedCASummary);
  681 + $scope.SetCAwindowStoreData(windowviewid, 'hostedFolderId', hostedFolderId);
  682 +
  683 + var CAGridViewScrollPosition = $($window).scrollTop();
  684 + localStorage.setItem('CAGridViewScroll', CAGridViewScrollPosition);
  685 + var u = $location.url();
  686 + $location.url('/clinical-animations-detail');
  687 +
  688 + },
  689 + function (error) {
  690 + // handle errors here
  691 + console.log(' $scope.AnimationData = ' + error.statusText);
  692 + }
  693 +
  694 + );
647 695  
  696 + }
648 697  
649 698 }
650 699  
651   - $scope.openBodyViewMain = function () {
  700 + $rootScope.openCABodyViewMain = function () {
652 701  
653 702 if ($rootScope.isCallFromOtherModule) {
654 703 $scope.CAModuleData = ModuleService.getModuleData("CLINICAL_ANIMATIONS");
... ... @@ -901,6 +950,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
901 950  
902 951 }
903 952  
  953 + $scope.PanelActivity();
904 954 }
905 955  
906 956 $scope.videoOnLoad = function (windowviewid)
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/CIController.js
... ... @@ -30,14 +30,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
30 30 };
31 31  
32 32 //************************************
33   -
34   -
35   -
36   -
37   -
38   -
39 33  
40   -
41 34 $scope.setActiveTab = function (tabToSet) {
42 35 $scope.activeTab = tabToSet;
43 36 localStorage.setItem("currentCITabView", $scope.activeTab);
... ... @@ -159,6 +152,36 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
159 152 $('#CBDetailPageDiv').css('opacity', '1');
160 153 }
161 154  
  155 + $scope.PanelActivity = function () {
  156 +
  157 + $("#" + $scope.jsPanelID).resize(function (event) {
  158 + //work on it
  159 + // alert('test');
  160 + });
  161 + // close panel
  162 + $(document).on("click", "#" + $scope.jsPanelID + " .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
  163 +
  164 + var panelid = $(event.target).parent().parent().parent().parent().attr('id');
  165 +
  166 + var len = (panelid).split("_").length;
  167 + var windowviewid = (panelid).split("_")[len - 1];
  168 +
  169 + // remove old stored data after close panel
  170 + for (var index = 0 ; index < $rootScope.CIWindowData.length; index++) {
  171 +
  172 + if ($rootScope.CIWindowData[index].multiwinid == windowviewid) {
  173 +
  174 + if (index != -1) {
  175 + // remove module which one is loaded
  176 + $scope.CIWindowData.splice(index, 1);
  177 + $rootScope.resetjsPanelTop();
  178 + }
  179 + }
  180 + }
  181 +
  182 + });
  183 + }
  184 +
162 185 $scope.loadAIModuleById = function (moduleId) {
163 186  
164 187 $rootScope.isCallFromOtherModule = undefined;
... ... @@ -613,61 +636,79 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
613 636 }
614 637  
615 638  
616   - $scope.openView = function ($event) {
617   -
618   - var windowviewid = $rootScope.MULTI_VIEW_ID;
619   - $rootScope.MenuModuleName = "CI";
620   - $rootScope.disableAnnotationTB = false;
621   - $rootScope.CIAnotationIdentifyModeOff = true;
622   - if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
623   - var selectedTileData = [];
624   - selectedTileData = new jinqJs()
625   - .from($scope.selectedCIListViewData)
626   - .where('_id = ' + $event.currentTarget.id)
627   - .select();
  639 + $scope.openView = function ($event) {
  640 + // open module bu openresource
  641 + var isopenResourceRequest = sessionStorage.getItem('isModuleOpenByOpenResource');
  642 + if (isopenResourceRequest == "true") {
  643 +
  644 + //set default module data
  645 + var CIDopenData = {
  646 + "id": $event.currentTarget.id,
  647 + "mType": 'CLINICAL_ILLUSTRATIONS',
  648 + "textVisible": true,
  649 + "windowTitle": $event.currentTarget.textContent,
  650 + "size": { height: 600, width: 900 }
  651 + };
  652 +
  653 + window.parent.AIAModuleOpenResourceInfo(CIDopenData);
  654 +
  655 + window.parent.closeIFrame();
628 656  
629   - $rootScope.ViewTitle = selectedTileData[0]._Title;
630 657 }
631 658 else
632 659 {
633   - $rootScope.ViewTitle = $event.currentTarget.textContent;
  660 + var windowviewid = $rootScope.MULTI_VIEW_ID;
  661 + $rootScope.MenuModuleName = "CI";
  662 + $rootScope.disableAnnotationTB = false;
  663 + $rootScope.CIAnotationIdentifyModeOff = true;
  664 + if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
  665 + var selectedTileData = [];
  666 + selectedTileData = new jinqJs()
  667 + .from($scope.selectedCIListViewData)
  668 + .where('_id = ' + $event.currentTarget.id)
  669 + .select();
  670 +
  671 + $rootScope.ViewTitle = selectedTileData[0]._Title;
  672 + }
  673 + else {
  674 + $rootScope.ViewTitle = $event.currentTarget.textContent;
634 675  
635   - }
636   -
637   - localStorage.setItem("currentViewTitle", $rootScope.ViewTitle);
638   - localStorage.setItem("currentImageId", $event.currentTarget.id);
639   -
640   - $scope.SetCIwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
641   - $scope.SetCIwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
  676 + }
642 677  
643   - var imageName = selectedTileData[0]._contentImage;
644   -
645   - $scope.SetCIwindowStoreData(windowviewid, 'imageName', imageName);
  678 + localStorage.setItem("currentViewTitle", $rootScope.ViewTitle);
  679 + localStorage.setItem("currentImageId", $event.currentTarget.id);
646 680  
647   - var imagePath = "~/../content/images/ci/images/" + imageName;
  681 + $scope.SetCIwindowStoreData(windowviewid, 'currentViewTitle', $rootScope.ViewTitle);
  682 + $scope.SetCIwindowStoreData(windowviewid, 'imageId', $event.currentTarget.id);
648 683  
649   - $scope.SetCIwindowStoreData(windowviewid, 'CIImagePath', imagePath);
  684 + var imageName = selectedTileData[0]._contentImage;
650 685  
651   - var selectedImageCISummary = selectedTileData[0]._Summary
  686 + $scope.SetCIwindowStoreData(windowviewid, 'imageName', imageName);
652 687  
653   - $scope.SetCIwindowStoreData(windowviewid, 'ImageSummary', selectedImageCISummary);
  688 + var imagePath = "~/../content/images/ci/images/" + imageName;
654 689  
655   - // store image for export
656   - var tittle = $rootScope.getLocalStorageValue("currentViewTitle");
657   - $rootScope.StoreTitleName(tittle);
658   - $rootScope.StoreOrgImageName(imageName);
  690 + $scope.SetCIwindowStoreData(windowviewid, 'CIImagePath', imagePath);
659 691  
  692 + var selectedImageCISummary = selectedTileData[0]._Summary
660 693  
661   - //Set the vertical scroll value of the Grid-View.
662   - var y = $($window).scrollTop();
663   - localStorage.setItem("CIGridViewScroll", y);
664   - var u = $location.url();
665   - $location.url('/clinical-illustrations-detail');
  694 + $scope.SetCIwindowStoreData(windowviewid, 'ImageSummary', selectedImageCISummary);
666 695  
667   -
  696 + // store image for export
  697 + var tittle = $rootScope.getLocalStorageValue("currentViewTitle");
  698 + $rootScope.StoreTitleName(tittle);
  699 + $rootScope.StoreOrgImageName(imageName);
  700 +
  701 + //Set the vertical scroll value of the Grid-View.
  702 + var y = $($window).scrollTop();
  703 + localStorage.setItem("CIGridViewScroll", y);
  704 + var u = $location.url();
  705 + $location.url('/clinical-illustrations-detail');
  706 +
  707 + }
  708 +
668 709 }
669 710  
670   - $scope.openBodyViewMain = function () {
  711 + $rootScope.openCIBodyViewMain = function () {
671 712  
672 713 if ($rootScope.isCallFromOtherModule) {
673 714 $scope.CIModuleData = ModuleService.getModuleData("CLINICAL_ILLUSTRATIONS");
... ... @@ -785,10 +826,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
785 826 else {
786 827 $scope.SetCIwindowStoreData($rootScope.MULTI_VIEW_ID, 'parentSlugName', 'clinical-illustrations');
787 828 $scope.loadCIllustration($rootScope.MULTI_VIEW_ID);
788   - }
789   -
790   -
791   -
  829 + }
792 830 }
793 831  
794 832 $scope.loadCIllustration = function (windowviewid) {
... ... @@ -902,6 +940,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
902 940  
903 941 });
904 942  
  943 + $scope.PanelActivity();
905 944 }
906 945  
907 946 $scope.$on('annotationToolEvent', function (event, data) {
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/CurrBuildController.js
... ... @@ -1419,35 +1419,90 @@ function ($scope, $rootScope, pages, log, Modules, $http, $compile, $location, $
1419 1419  
1420 1420 }
1421 1421 $scope.load3DAnatomyModule = function (moduleName) {
1422   - $rootScope.isCallFromOtherModule = true;
1423   - $('#parentcustomDiv').append($('<div id="theeDCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
1424   - $e = $('#theeDCustomModuleDiv' + $scope.Slidenumber).append("<threed-anatomy-directive></threed-anatomy-directive>");
1425   - $compile($e)($scope);
  1422 +
  1423 + var ThreeDData = ModuleService.getModuleData(moduleName);
  1424 +
  1425 + if (ThreeDData != undefined && ThreeDData.length > 0) {
  1426 + $rootScope.isCallFromOtherModule = true;
  1427 +
  1428 + var threeDSectionExist = document.getElementById('theeDCustomModuleDiv' + $scope.Slidenumber);
  1429 +
  1430 + if (threeDSectionExist == null) {
  1431 + $('#parentcustomDiv').append($('<div id="theeDCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
  1432 + $e = $('#theeDCustomModuleDiv' + $scope.Slidenumber).append("<threed-anatomy-directive></threed-anatomy-directive>");
  1433 + $compile($e)($scope);
  1434 + }
  1435 + else {
  1436 + // open new 3D panel on same slide by open resource
  1437 + $rootScope.Open3DModelBodyMain();
  1438 + }
  1439 +
  1440 + }
1426 1441 }
1427 1442 $scope.loadClinicalAnimationModule = function (moduleName) {
1428   - $rootScope.isCallFromOtherModule = true;
1429   - $('#parentcustomDiv').append($('<div id="caCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
1430   - $e = $('#caCustomModuleDiv' + $scope.Slidenumber).append("<clinical-animation-directive></clinical-animation-directive>");
1431   - $compile($e)($scope);
  1443 + var CAData = ModuleService.getModuleData(moduleName);
  1444 +
  1445 + if (CAData != undefined && CAData.length > 0) {
  1446 + $rootScope.isCallFromOtherModule = true;
  1447 +
  1448 + var caSectionExist = document.getElementById('caCustomModuleDiv' + $scope.Slidenumber);
  1449 +
  1450 + if (caSectionExist == null) {
  1451 + $('#parentcustomDiv').append($('<div id="caCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
  1452 + $e = $('#caCustomModuleDiv' + $scope.Slidenumber).append("<clinical-animation-directive></clinical-animation-directive>");
  1453 + $compile($e)($scope);
  1454 + }
  1455 + else {
  1456 + // open new aa panel on same slide by open resource
  1457 + $rootScope.openCABodyViewMain();
  1458 + }
  1459 +
  1460 + }
  1461 +
1432 1462 }
1433 1463  
1434 1464 $scope.loadClinicalIllustrationModule = function (moduleName) {
1435   - $rootScope.isCallFromOtherModule = true;
1436   - //slide number to terminate last load module on prev slide
1437   - // aaCustomModuleDiv new div create for new slide load
1438   - $('#parentcustomDiv').append($('<div id="ciCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
1439   - $e = $('#ciCustomModuleDiv' + $scope.Slidenumber).append("<clinical-illustration-directive></clinical-illustration-directive>");
1440   - $compile($e)($scope);
  1465 + var CIData = ModuleService.getModuleData(moduleName);
  1466 +
  1467 + if (CIData != undefined && CIData.length > 0) {
  1468 + $rootScope.isCallFromOtherModule = true;
  1469 +
  1470 + var ciSectionExist = document.getElementById('ciCustomModuleDiv' + $scope.Slidenumber);
  1471 +
  1472 + if (ciSectionExist == null) {
  1473 + $('#parentcustomDiv').append($('<div id="ciCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
  1474 + $e = $('#ciCustomModuleDiv' + $scope.Slidenumber).append("<clinical-illustration-directive></clinical-illustration-directive>");
  1475 + $compile($e)($scope);
  1476 + }
  1477 + else {
  1478 + // open new aa panel on same slide by open resource
  1479 + $rootScope.openCIBodyViewMain();
  1480 + }
  1481 +
  1482 + }
  1483 +
1441 1484 }
1442 1485  
1443 1486 $scope.loadAtlasAnatomyModule = function (moduleName) {
1444   - $rootScope.isCallFromOtherModule = true;
  1487 + var AAData = ModuleService.getModuleData(moduleName);
  1488 +
  1489 + if (AAData != undefined && AAData.length > 0) {
  1490 + $rootScope.isCallFromOtherModule = true;
  1491 +
  1492 + var aaSectionExist = document.getElementById('aaCustomModuleDiv' + $scope.Slidenumber);
  1493 +
  1494 + if (aaSectionExist == null) {
  1495 + $('#parentcustomDiv').append($('<div id="aaCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
  1496 + $e = $('#aaCustomModuleDiv' + $scope.Slidenumber).append("<atlas-anatomy-directive></atlas-anatomy-directive>");
  1497 + $compile($e)($scope);
  1498 + }
  1499 + else {
  1500 + // open new aa panel on same slide by open resource
  1501 + $rootScope.openAAModuleItemMain();
  1502 + }
  1503 +
  1504 + }
1445 1505  
1446   - //slide number to terminate last load module on prev slide
1447   - // aaCustomModuleDiv new div create for new slide load
1448   - $('#parentcustomDiv').append($('<div id="aaCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
1449   - $e = $('#aaCustomModuleDiv' + $scope.Slidenumber).append("<atlas-anatomy-directive></atlas-anatomy-directive>");
1450   - $compile($e)($scope);
1451 1506 }
1452 1507 $scope.loadDissectibleAnatomyModule = function (moduleName) {
1453 1508 var DAData = ModuleService.getModuleData(moduleName);
... ... @@ -1457,24 +1512,17 @@ function ($scope, $rootScope, pages, log, Modules, $http, $compile, $location, $
1457 1512  
1458 1513 var daSectionExist = document.getElementById('daCustomModuleDiv' + $scope.Slidenumber);
1459 1514  
1460   - if (daSectionExist==null)
1461   - {
  1515 + if (daSectionExist==null){
1462 1516 $('#parentcustomDiv').append($('<div id="daCustomModuleDiv' + $scope.Slidenumber + '"></div>'));
1463   -
1464 1517 $e = $('#daCustomModuleDiv' + $scope.Slidenumber).append("<da-directive></da-directive>");
1465   -
1466 1518 $compile($e)($scope);
1467   -
1468 1519 }
1469 1520 else
1470 1521 {
1471 1522 // open new da panel on same slide by open resource
1472 1523 $rootScope.openDABodyViewMain();
1473   - }
1474   -
1475   -
  1524 + }
1476 1525 }
1477   -
1478 1526  
1479 1527 }
1480 1528  
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/DAController.js
... ... @@ -487,12 +487,6 @@ AIA.controller(&quot;DAController&quot;, [&quot;$scope&quot;, &quot;$rootScope&quot;, &quot;$compile&quot;, &quot;$http&quot;, &quot;$l
487 487 }
488 488  
489 489 $scope.openView = function ($event) {
490   -
491   - $rootScope.disableAnnotationTB = false;
492   - $rootScope.MenuModuleName = "DA";
493   - $rootScope.isLoading = true;
494   - $('#spinner').css('visibility', 'visible');
495   -
496 490 // open module bu openresource
497 491 var isopenResourceRequest = sessionStorage.getItem('isModuleOpenByOpenResource');
498 492  
... ... @@ -536,15 +530,23 @@ AIA.controller(&quot;DAController&quot;, [&quot;$scope&quot;, &quot;$rootScope&quot;, &quot;$compile&quot;, &quot;$http&quot;, &quot;$l
536 530 window.parent.closeIFrame();
537 531  
538 532 }
539   - else {
  533 + else
  534 + {
  535 +
  536 + $rootScope.disableAnnotationTB = false;
  537 + $rootScope.MenuModuleName = "DA";
  538 + $rootScope.isLoading = true;
  539 + $('#spinner').css('visibility', 'visible');
  540 +
540 541 $scope.SetwindowStoreData($rootScope.MULTI_VIEW_ID,'currentViewTitle',$event.currentTarget.textContent);
541 542 localStorage.setItem("currentViewTitle", $event.currentTarget.textContent); // use at home controller
542 543 localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
543   - $location.url('/da-body-view');
544   - }
545   - $rootScope.isLoading = false;
546   - $('#spinner').css('visibility', 'hidden');
  544 + $location.url('/da-body-view');
  545 + $rootScope.isLoading = false;
  546 + $('#spinner').css('visibility', 'hidden');
547 547  
  548 + }
  549 +
548 550 }
549 551  
550 552 //load json data for body view
... ... @@ -942,10 +944,7 @@ AIA.controller(&quot;DAController&quot;, [&quot;$scope&quot;, &quot;$rootScope&quot;, &quot;$compile&quot;, &quot;$http&quot;, &quot;$l
942 944 var bodyViewId=$scope.GetwindowStoreData(windowviewid,'voId');
943 945 if (document.getElementById('daViewDA_'+windowviewid) != null) {
944 946 $scope.loadDAView(bodyViewId, windowviewid);
945   - }
946   - else if (document.getElementById("daViewDA_" + windowviewid) != null) {
947   - $scope.loadDAView(bodyViewId, windowviewid);
948   - }
  947 + }
949 948 else {
950 949 // this is a work around solution for a bug where DA does not load for long and user need to close the DA partially opened
951 950 // view, now we are programmatically closing the hung view and when user will reopen the DA view from tile then it will
... ... @@ -954,9 +953,8 @@ AIA.controller(&quot;DAController&quot;, [&quot;$scope&quot;, &quot;$rootScope&quot;, &quot;$compile&quot;, &quot;$http&quot;, &quot;$l
954 953 var jsPanelCloseBtnID = $scope.jsPanelID + " " + ".jsglyph-remove"
955 954 $("#" + jsPanelCloseBtnID).click();
956 955  
957   - // console.log('html is compiled in else ' + document.getElementById('daView'))
958   -
959 956 }
  957 +
960 958 }
961 959  
962 960 $scope.loadDAView = function (currentBodyViewId, windowviewid) {
... ... @@ -1339,6 +1337,7 @@ AIA.controller(&quot;DAController&quot;, [&quot;$scope&quot;, &quot;$rootScope&quot;, &quot;$compile&quot;, &quot;$http&quot;, &quot;$l
1339 1337 if (index != -1) {
1340 1338 // remove module which one is loaded
1341 1339 $scope.DaWindowData.splice(index, 1);
  1340 + $rootScope.resetjsPanelTop();
1342 1341 }
1343 1342 }
1344 1343 }
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/HomeController.js
... ... @@ -141,7 +141,7 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
141 141 currentController: 'HomeController',
142 142 parentSlug: 'curriculum-builder-detail',
143 143 content: '<div class="col-sm-12" >' +
144   - '<object data="' + homepath + '" width="100%" height="600px" type="text/html" id="OpenModuleInCB" onload="loadOpenResource(this)"></object>',
  144 + '<iframe src="' + homepath + '" width="100%" height="610px" frameBorder="0" id="OpenModuleInCB" onload="loadOpenResource(this)"></iframe>',
145 145 title: "Open Module in Curriculum Builder",
146 146 position: {
147 147 top: 1,
... ... @@ -152,7 +152,7 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
152 152  
153 153 size: {
154 154 width: screen.width-10,
155   - height: 600
  155 + height: 610
156 156 },
157 157  
158 158 });
... ... @@ -175,7 +175,7 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
175 175 var head = $(innerDoc).contents().find("head");
176 176 $scope.loadopenresourceContent(head, iframe);
177 177  
178   - }, 1000);
  178 + }, 500);
179 179 }
180 180  
181 181 }
... ... @@ -195,6 +195,7 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
195 195 '#Link\\/complementary-and-alternate-medicine{pointer-events: none; opacity: .3} ' +
196 196 '#ADAM-images{pointer-events: none; opacity: .3} ' +
197 197 '#Link\\/bodyguide{pointer-events: none; opacity: .3} ' +
  198 + '#Link\\/symptom-navigator{pointer-events: none; opacity: .3} ' +
198 199 '#Link\\/health-navigator{pointer-events: none; opacity: .3} ' +
199 200 '#Link\\/wellness-tools{pointer-events: none; opacity: .3} ' +
200 201 '#Link\\/aod{pointer-events: none; opacity: .3} ' +
... ... @@ -202,33 +203,17 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
202 203  
203 204 '</style>';
204 205  
  206 + var storefunc = '<script> function OpenDefaultModule(iframe){ iframe.contentWindow.document.getElementById("da-view-list").click();}</script>';
  207 +
205 208 $(header).append(css);
206   - $(iframe).contents().on("mousedown, mouseup, click", function(){
207   - alert("Click detected inside iframe.");
208   - });
  209 + $(header).append(storefunc);
  210 +
209 211 $timeout(function () {
210   - var elmnt = iframe.contentWindow.document.getElementById("da-view-list");
211   - // var location1 = iframe.contentWindow.document.location.href;
212   -
213   - // $('#' + elmnt.id).trigger('click');
214   - // $("#" + elmnt.id).css({ "display": "none", "pointer-events": "none", "opacity": ".5" });
215   - // iframe.setAttribute("src", location + "/da-view-list");
216   - //window.location.href = location;
217   - // var currentlocation = iframe.contentWindow.document.location.href;
218   - // iframe.contentWindow.document.locatiom.replace(currentlocation + "da-view-list");
219   - // document.getElementById("OpenModuleInCB").src = "http://stackoverflow.com";
220   - // location.replace(elmnt.href);
221   -
222   - // URLUtils.href='/da-body-view';
223   - // $location.url('/da-body-view');
224   - // var hrf=iframe.contentWindow.location.href;
225   - // iframe.contentWindow.location.href=hrf+'da-body-view';
226   - // iframe.onload = null;
227   -
228   - // window.top.location.href = "http://www.example.com";
229   - // var myframe = iframe;
  212 + // var elmnt = iframe.contentWindow.document.getElementById("da-view-list");
  213 + //$('#' + elmnt.id).trigger('click');
  214 + OpenDefaultModule(iframe);
230 215  
231   - }, 2000);
  216 + }, 500);
232 217  
233 218  
234 219 }
... ... @@ -266,13 +251,14 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
266 251 }
267 252 $scope.EnableDisableExportImage=function()
268 253 {
269   - //disable export image for users other than instructors. And for demo user
270   - if (($rootScope.userData.EditionId != 1 && $rootScope.userData.EditionId != 2) || $rootScope.userData.UserTypeId==8) {
271   - $('#exportImageAnchor').parent().addClass('exportImage');
  254 + //enable export image for instructors edition and for superadmin .disable for demo/test user
  255 + if ((($rootScope.userData.EditionId == 1) || ($rootScope.userData.EditionId == 2) || ($rootScope.userData.EditionId == 0)) && ($rootScope.userData.UserTypeId != 8)) {
  256 +
  257 + $('#exportImageAnchor').parent().removeClass('exportImage');
272 258 }
273 259 else
274 260 {
275   - $('#exportImageAnchor').parent().removeClass('exportImage');
  261 + $('#exportImageAnchor').parent().addClass('exportImage');
276 262 }
277 263  
278 264 }
... ... @@ -1605,25 +1591,57 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
1605 1591  
1606 1592 return paneltopPosition;
1607 1593 }
  1594 + // CB: reset panel top position when if any module closed
  1595 + $rootScope.resetjsPanelTop = function () {
  1596 +
  1597 + $timeout(function () {
  1598 + var firsttopPosition = 680;
  1599 + var moduleImagePanel = $("div[id*='ImagePanel']");
  1600 +
  1601 + if (moduleImagePanel.length > 0) {
  1602 + for (var index = 0; index < moduleImagePanel.length; index++) {
  1603 +
  1604 + if (index == 0) {
  1605 + var panel1 = document.getElementById(moduleImagePanel[index].id);
  1606 +
  1607 + $("#" + panel1.id).css("top", firsttopPosition + 'px');
  1608 +
  1609 + }
  1610 + else {
  1611 + var prevpanel = document.getElementById(moduleImagePanel[index - 1].id);
  1612 + var lastTop = prevpanel.offsetTop + prevpanel.offsetHeight + 10;
  1613 + var lastpanel = document.getElementById(moduleImagePanel[index].id);
  1614 +
  1615 + $("#" + lastpanel.id).css("top", lastTop + 'px');
  1616 + }
  1617 +
  1618 + }
  1619 + }
  1620 +
  1621 + }, 500);
  1622 +
  1623 +
  1624 + }
1608 1625  
1609 1626 $scope.$on("cBEnableDisableMenuOption", function (evt, name) {
1610 1627  
1611 1628  
1612 1629 $rootScope.panelNameWithCb = name;
1613 1630  
1614   - if (($rootScope.userData.EditionId != 1 && $rootScope.userData.EditionId != 2) || $rootScope.userData.UserTypeId == 8) {
1615   - $('#exportImageAnchor').parent().addClass('exportImage');
  1631 + //enable export image for instructors edition and for superadmin .disable for demo/test user
  1632 + if ((($rootScope.userData.EditionId == 1) || ($rootScope.userData.EditionId == 2) || ($rootScope.userData.EditionId == 0)) && ($rootScope.userData.UserTypeId != 8)) {
1616 1633  
1617   - }
1618   - else
1619   - {
1620 1634 if (name != "") {
1621   - $('#exportImageAnchor').parent().removeClass('exportImage');
  1635 + $('#exportImageAnchor').parent().removeClass('exportImage');
1622 1636 }
1623 1637 else {
1624   - $('#exportImageAnchor').parent().addClass('exportImage');
  1638 + $('#exportImageAnchor').parent().addClass('exportImage');
1625 1639 }
1626 1640 }
  1641 + else
  1642 + {
  1643 + $('#exportImageAnchor').parent().addClass('exportImage');
  1644 + }
1627 1645  
1628 1646 if (name != "") {
1629 1647 $('#printAVAnchor').parent().removeClass('PrintViewer');
... ... @@ -6748,7 +6766,7 @@ function ($rootScope, $scope, Modules, $log, $location, $timeout, DataService, A
6748 6766  
6749 6767 $rootScope.StoreModuleName = function (moduleName) {
6750 6768  
6751   - var userid= $rootScope.userData.Id;
  6769 + var userid = $rootScope.userData.Id;
6752 6770 $scope.UpdateUserExportImageData(userid,'ModuleName',moduleName);
6753 6771  
6754 6772 }
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js
... ... @@ -286,61 +286,85 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
286 286 $('#list-view').css('display', 'none');
287 287 }
288 288  
289   - $scope.openModuleItemView = function (event) {
290   - var windowviewid= $rootScope.MULTI_VIEW_ID;
291   - $rootScope.MenuModuleName = "AA";
292   - localStorage.setItem("activeTab", $scope.activeTab);
293   - //0. Get selected Image Id
294   - if ($scope.isListViewButtonClicked == true) {
295   - if ($scope.isOpenBtnClicked == true) {
  289 + $scope.openModuleItemView = function ($event) {
  290 + // open module bu openresource
  291 + var isopenResourceRequest = sessionStorage.getItem('isModuleOpenByOpenResource');
  292 + if (isopenResourceRequest == "true") {
  293 +
  294 + //set default module data
  295 + var AAopenData = {
  296 + "id": $event.currentTarget.id,
  297 + "mType": 'ATLAS_ANATOMY',
  298 + "showAllPins":true,
  299 + "windowTitle": $event.currentTarget.textContent,
  300 + "size": { height: 600, width: 900 }
  301 + };
  302 +
  303 + window.parent.AIAModuleOpenResourceInfo(AAopenData);
  304 +
  305 + window.parent.closeIFrame();
  306 +
  307 + }
  308 + else
  309 + {
  310 + var windowviewid = $rootScope.MULTI_VIEW_ID;
  311 + $rootScope.MenuModuleName = "AA";
  312 + localStorage.setItem("activeTab", $scope.activeTab);
296 313  
297   - var moduleItemDataToBeSaved = $("#demoText").text().trim();
298   - $scope.isOpenBtnClicked = false;
  314 + //0. Get selected Image Id
  315 + if ($scope.isListViewButtonClicked == true) {
  316 + if ($scope.isOpenBtnClicked == true) {
  317 +
  318 + var moduleItemDataToBeSaved = $("#demoText").text().trim();
  319 + $scope.isOpenBtnClicked = false;
  320 + }
  321 + else {
  322 + var moduleItemDataToBeSavedID = $event.currentTarget.id;
  323 + localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID);
  324 + var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim();
  325 + }
299 326 }
300 327 else {
301   - var moduleItemDataToBeSavedID = event.currentTarget.id;
302   - localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID);
303   - var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text().trim();
  328 + var moduleItemDataToBeSaved = $event.target.id;
  329 + localStorage.setItem("listViewSelectedID", $event.currentTarget.id);
  330 + $scope.isListViewButtonClicked = false;
304 331 }
305   - }
306   - else {
307   - var moduleItemDataToBeSaved = event.target.id;
308   - localStorage.setItem("listViewSelectedID", event.currentTarget.id);
309   - $scope.isListViewButtonClicked = false;
310   - }
311 332  
312   - //1.Filter selected module ietem data and get the pushed opened moduile array object
313   - var OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData);
  333 + //1.Filter selected module ietem data and get the pushed opened moduile array object
  334 + var OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData);
314 335  
315   - //2. Pick the image name to create a source to open
  336 + //2. Pick the image name to create a source to open
316 337  
317   - $scope.SetAAwindowStoreData(windowviewid,'imageId',OpenedTileData[0]);
  338 + $scope.SetAAwindowStoreData(windowviewid, 'imageId', OpenedTileData[0]);
318 339  
319   - $scope.SetAAwindowStoreData(windowviewid, 'imageName', OpenedTileData[3]);
320   - var imageName = OpenedTileData[3];
  340 + $scope.SetAAwindowStoreData(windowviewid, 'imageName', OpenedTileData[3]);
  341 + var imageName = OpenedTileData[3];
321 342  
322   - $scope.SetAAwindowStoreData(windowviewid,'bodySystemName',OpenedTileData[2]);
  343 + $scope.SetAAwindowStoreData(windowviewid, 'bodySystemName', OpenedTileData[2]);
323 344  
324   - var OpenItemImagePath = "../../../content/images/aa/images/" + OpenedTileData[3];
325   - $scope.SetAAwindowStoreData(windowviewid,'OpenItemImagePath',OpenItemImagePath);
  345 + var OpenItemImagePath = "../../../content/images/aa/images/" + OpenedTileData[3];
  346 + $scope.SetAAwindowStoreData(windowviewid, 'OpenItemImagePath', OpenItemImagePath);
  347 +
  348 + $rootScope.listArray.push({ "imageName": OpenItemImagePath, "text": moduleItemDataToBeSaved });
  349 + //3. set opened module item ti
  350 + localStorage.setItem("currentViewTitle", OpenedTileData[6]);
  351 + if ($('#grid-view').css("display") == "block") {
  352 + localStorage.setItem("AAGridViewScroll", $($window).scrollTop());
  353 + localStorage.setItem("AAGridViewHighlightThumbnail", $(event.target).parent().parent().parent().attr('id'));
  354 + }
  355 +
  356 + $scope.SetAAwindowStoreData(windowviewid, 'currentViewTitle', OpenedTileData[6]);
  357 + // store image for export
  358 + var tittle = $rootScope.getLocalStorageValue("currentViewTitle");
  359 + $rootScope.StoreTitleName(tittle);
  360 + $rootScope.StoreOrgImageName(imageName);
  361 +
  362 + //3. Navigate to the Module-item-view
  363 + var u = $location.url();
  364 + $location.url('/module-item-view');
326 365  
327   - $rootScope.listArray.push({ "imageName": OpenItemImagePath, "text": moduleItemDataToBeSaved });
328   - //3. set opened module item ti
329   - localStorage.setItem("currentViewTitle", OpenedTileData[6]);
330   - if ($('#grid-view').css("display") == "block") {
331   - localStorage.setItem("AAGridViewScroll", $($window).scrollTop());
332   - localStorage.setItem("AAGridViewHighlightThumbnail", $(event.target).parent().parent().parent().attr('id'));
333 366 }
334   -
335   - $scope.SetAAwindowStoreData(windowviewid, 'currentViewTitle', OpenedTileData[6]);
336   - // store image for export
337   - var tittle = $rootScope.getLocalStorageValue("currentViewTitle");
338   - $rootScope.StoreTitleName(tittle);
339   - $rootScope.StoreOrgImageName(imageName);
340   -
341   - //3. Navigate to the Module-item-view
342   - var u = $location.url();
343   - $location.url('/module-item-view');
  367 +
344 368 }
345 369  
346 370  
... ... @@ -360,7 +384,7 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
360 384 $("#viewList").append("<div class='col-xs-12 text-center' style='padding-top:15px;padding-bottom:15px;' id='demoView'><div class='col-xs-12' style='padding:15px;background-color:#fff;'><div class='col-xs-2' style='border:1px solid #000;padding:5px;color:#000;font-size:12px;'><div class='thumbnail' style='margin-bottom:10px;'><img style='width:auto;height:95px!important;' src=" + OpenItemImagePath + "></div><div class='col-xs-12' id='demoText' style='padding:0;'>" + moduleItemDataToBeSaved + "</div></div></div><a style='position:absolute;right:30px;bottom:34px;' onclick='openCurrentView(event)' href='javascript:void(0)' class='pull-right btn btn-primary'>Open</a></div>");
361 385 }
362 386  
363   - $scope.openModuleItemMain = function () {
  387 + $rootScope.openAAModuleItemMain = function () {
364 388  
365 389 if ($rootScope.isCallFromOtherModule) {
366 390 $scope.AAModuleData = ModuleService.getModuleData("ATLAS_ANATOMY");
... ... @@ -437,8 +461,12 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
437 461 $scope.SetAAwindowStoreData(windowviewid,'currentViewTitle',anatomyTitle);
438 462 localStorage.setItem("currentViewTitle", anatomyTitle);
439 463  
440   - var systemId = $scope.aaOpenInOtherModules.selectedBodysystemId;
441   - $scope.SetAAwindowStoreData(windowviewid,'SelectedSystemID',systemId);
  464 + if ($scope.aaOpenInOtherModules.selectedBodysystemId != undefined)
  465 + {
  466 + var systemId = $scope.aaOpenInOtherModules.selectedBodysystemId;
  467 + $scope.SetAAwindowStoreData(windowviewid, 'SelectedSystemID', systemId);
  468 + }
  469 +
442 470  
443 471 // note:: in few json like "articulation" imageId as same id
444 472 // get wrong detail by imageId
... ... @@ -845,14 +873,31 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
845 873  
846 874  
847 875 angular.element(document).ready(function (e) {
848   - $($scope.jsPanelID).resize(function () {
  876 + $("#" + $scope.jsPanelID).resize(function () {
849 877 $("#canvasDiv").scrollLeft($rootScope.CanvasDivLeftPosition);
850 878 $("#canvasDiv").scrollTop($rootScope.CanvasDivTopPosition);
851 879 });
852 880 // $(document).on("click", "#" + $scope.jsPanelID +" .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function (event) {
853 881 $(document).on("click", "#" + $scope.jsPanelID +" .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
854 882  
855   - // $(document).on("click", "#" + $scope.jsPanelID + " .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
  883 + var panelid = $(event.target).parent().parent().parent().parent().attr('id');
  884 +
  885 + var len = (panelid).split("_").length;
  886 + var windowviewid = (panelid).split("_")[len - 1];
  887 +
  888 + // remove old stored data after close panel
  889 + for (var index = 0 ; index < $rootScope.AAWindowData.length; index++) {
  890 +
  891 + if ($rootScope.AAWindowData[index].multiwinid == windowviewid) {
  892 +
  893 + if (index != -1) {
  894 + // remove module which one is loaded
  895 + $scope.AAWindowData.splice(index, 1);
  896 + $rootScope.resetjsPanelTop();
  897 + }
  898 + }
  899 + }
  900 +
856 901 $scope.setActiveTab(parseInt($rootScope.getLocalStorageValue("activeTab")));
857 902 $(".tools").css("z-index", "15000");
858 903 $rootScope.selectedBodySystemName = 'All';
... ... @@ -873,30 +918,33 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
873 918 var clickedPins=$scope.GetAAwindowStoreData(windowviewid,'clickedPins');
874 919 var activePinArray=$scope.GetAAwindowStoreData(windowviewid,'activePinArray');
875 920  
876   - for (var i = 0; i < $scope.aaOpenInOtherModules.selectedPins.length; i++) {
877   -
878   - var pinid=$scope.aaOpenInOtherModules.selectedPins[i];
879   - var pinvalue='PinArc_' + pinid;
  921 + if ($scope.aaOpenInOtherModules.selectedPins != undefined) {
  922 + for (var i = 0; i < $scope.aaOpenInOtherModules.selectedPins.length; i++) {
  923 +
  924 + var pinid = $scope.aaOpenInOtherModules.selectedPins[i];
  925 + var pinvalue = 'PinArc_' + pinid;
880 926 var isFound = jQuery.inArray(pinvalue, activePinArray)
881 927 if (isFound == -1) {
882 928 activePinArray.push(pinvalue);
883   - clickedPins.push({ 'id': pinid});
  929 + clickedPins.push({ 'id': pinid });
884 930 }
885   - }
  931 + }
  932 + }
886 933  
  934 + if ($scope.aaOpenInOtherModules.selectedCallouts != undefined) {
887 935 for (var i = 0; i < $scope.aaOpenInOtherModules.selectedCallouts.length; i++) {
888   -
889   - CBselectedpinCordinate.push(
890   - {
891   - "hy": $scope.aaOpenInOtherModules.selectedCallouts[i].hy,
892   - "ly": $scope.aaOpenInOtherModules.selectedCallouts[i].ly,
893   - "hx": $scope.aaOpenInOtherModules.selectedCallouts[i].hx,
894   - "lx": $scope.aaOpenInOtherModules.selectedCallouts[i].lx
895   - });
896 936  
897   - }
  937 + CBselectedpinCordinate.push(
  938 + {
  939 + "hy": $scope.aaOpenInOtherModules.selectedCallouts[i].hy,
  940 + "ly": $scope.aaOpenInOtherModules.selectedCallouts[i].ly,
  941 + "hx": $scope.aaOpenInOtherModules.selectedCallouts[i].hx,
  942 + "lx": $scope.aaOpenInOtherModules.selectedCallouts[i].lx
  943 + });
898 944  
  945 + }
899 946  
  947 + }
900 948  
901 949 if($scope.aaOpenInOtherModules.showSelectedPins!=undefined)
902 950 {
... ... @@ -1830,51 +1878,7 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
1830 1878 if ($scope.longestAnnotation != null || $scope.longestAnnotation != undefined) {
1831 1879 $("#"+speechbubbleDivId).css("min-width", "auto");
1832 1880 $("#"+speechbubbleDivId).css("white-space", "nowrap");
1833   - // if ($scope.longestAnnotation.length <= 10) {
1834   -
1835   -
1836   - // $("#"+speechbubbleDivId).css("width", "100px");
1837   -
1838   - // }
1839   -
1840   - // else if ($scope.longestAnnotation.length > 10 && $scope.longestAnnotation.length <= 17) {
1841   -
1842   -
1843   -
1844   - // $("#"+speechbubbleDivId).css("width", "140px");
1845   -
1846   - // }
1847   - // else if ($scope.longestAnnotation.length > 17 && $scope.longestAnnotation.length <= 26) {
1848   -
1849   -
1850   - // $("#"+speechbubbleDivId).css("width", "195px");
1851   -
1852   - // }
1853   - // else if ($scope.longestAnnotation.length > 26 && $scope.longestAnnotation.length <= 34) {
1854   -
1855   - // $("#"+speechbubbleDivId).css("width", "248px");
1856   -
1857   - // }
1858   - // else if ($scope.longestAnnotation.length > 34 && $scope.longestAnnotation.length <= 44) {
1859   -
1860   -
1861   - // $("#"+speechbubbleDivId).css("width", "300px");
1862   - // }
1863   -
1864   - // else if ($scope.longestAnnotation.length > 44 && $scope.longestAnnotation.length <= 54) {
1865   -
1866   - // $("#"+speechbubbleDivId).css("width", "370px");
1867   - // }
1868   -
1869   - // else if ($scope.longestAnnotation.length > 54 && $scope.longestAnnotation.length <= 69) {
1870   - // $("#"+speechbubbleDivId).css("width", "450px");
1871   - // }
1872   - // else if ($scope.longestAnnotation.length > 69 && $scope.longestAnnotation.length <= 75) {
1873   - // $("#"+speechbubbleDivId).css("width", "510px");
1874   - // }
1875   - // else {
1876   - // $("#"+speechbubbleDivId).css("width", ($scope.longestAnnotation.length) + "%");
1877   - // }
  1881 +
1878 1882 }
1879 1883 }
1880 1884 var speechBubbleDims = [];
... ... @@ -2292,7 +2296,7 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
2292 2296 $('#termList').empty();
2293 2297 $('#termlistfilter_' + windowviewid).empty();
2294 2298 for (var j = 0; j < pinTermData.length; j++) {
2295   - var $el = $('<li><a id= "' + pinTermData[j].TermNumber + '" href="" onclick="onSearchItemSelection(this.id,'+windowviewid +')" >' + pinTermData[j].TermTxt + '</a></li>').appendTo('#termlistfilter_' + windowviewid)
  2299 + var $el = $('<li><a id= "' + pinTermData[j].TermNumber + '" href="" onclick="onSearchItemSelection(this.id,' + windowviewid + ')" >' + pinTermData[j].TermTxt + '</a></li>').appendTo('#termlistfilter_' + windowviewid)
2296 2300 $compile($el)($scope);
2297 2301 var $selectedOptions = $('<option title= "' + pinTermData[j].TermTxt + '" id= "' + pinTermData[j].TermNumber + '" >' + pinTermData[j].TermTxt + '</option>').appendTo('#termList')
2298 2302  
... ... @@ -2695,12 +2699,18 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
2695 2699  
2696 2700 $scope.highlightPinBasedOnSerachItem = function (id,windowviewid) {
2697 2701  
2698   - if(windowviewid==undefined) // call also from also home controller list manager
2699   - windowviewid= $rootScope.MULTI_VIEW_ID;
2700   -
  2702 + var currenttermidTxt = "";
  2703 + if (windowviewid == undefined) // call also from also home controller list manager
  2704 + {
  2705 + windowviewid = $rootScope.MULTI_VIEW_ID;
  2706 + }
  2707 + else
  2708 + {
  2709 + currenttermidTxt = $('#' + event.currentTarget.id).text();
  2710 + }
  2711 +
2701 2712 $scope.showAllPinsAfterHide(windowviewid);
2702 2713  
2703   - $scope.searchItemText = $("#" + id).val();
2704 2714 $rootScope.searchSelectedText = $("#" + id).val();
2705 2715 $('#termList option[selected="selected"]').prop("selected", false);
2706 2716 $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true);
... ... @@ -2709,12 +2719,8 @@ function ($scope, $window, $rootScope, $compile, $http, $log, $location, $timeou
2709 2719  
2710 2720 $("#termlistfilter_" + windowviewid + " li").find("a").css({ "background-color": "#ffffff", "color": "#000000" });
2711 2721 $("#termlistfilter_" + windowviewid + " li").find("a[id=" + id + "]").css({ "background-color": "#3399FF", "color": "#ffffff" });
2712   -
2713   - $scope.searchFilter = $("#" + id).val();
2714   -
2715   - $('#selectedTermName_' + windowviewid).val();
2716   -
2717   - $('#selectedTermName_' + windowviewid).attr("placeholder", "search... ");
  2722 +
  2723 + $('#selectedTermName_' + windowviewid).val(currenttermidTxt);
2718 2724  
2719 2725 //get data from pindata for this trem
2720 2726  
... ... @@ -3003,7 +3009,7 @@ function hideSearchList(event) {
3003 3009 }
3004 3010  
3005 3011 function onSearchItemSelection(id,windowviewid) {
3006   -
  3012 +
3007 3013 console.log('AA hide search is called');
3008 3014 var scope = angular.element(document.getElementById("aaBodyView")).scope();
3009 3015 scope.$apply(function () {
... ...
400-SOURCECODE/AIAHTML5.Web/app/services/ModuleService.js
... ... @@ -176,8 +176,7 @@ AIA.service(&#39;ModuleService&#39;, function ($http, DataService) {
176 176 containsCapturedContent: windowData.containsCapturedContent,
177 177 textVisible: windowData.textVisible,
178 178 anatomyTitle: windowData.windowTitle,
179   - horizontalScroll: windowData.scrollFlvPosition.horizontal + 'px',
180   - verticalScroll: windowData.scrollFlvPosition.vertical + 'px',
  179 + scrollPosition: windowData.scrollFlvPosition,
181 180 imageId: windowData.imageId,
182 181 maximised: windowData.maximised,
183 182 minimised: windowData.minimised,
... ... @@ -195,8 +194,7 @@ AIA.service(&#39;ModuleService&#39;, function ($http, DataService) {
195 194 containsCapturedContent: windowData.containsCapturedContent,
196 195 textVisible: windowData.textVisible,
197 196 anatomyTitle: windowData.windowTitle,
198   - horizontalScroll: windowData.scrollPosition.horizontal + 'px',
199   - verticalScroll: windowData.scrollPosition.vertical + 'px',
  197 + scrollPosition: windowData.scrollPosition,
200 198 imageId: windowData.imageId,
201 199 maximised: windowData.maximised,
202 200 minimised: windowData.minimised,
... ... @@ -217,8 +215,7 @@ AIA.service(&#39;ModuleService&#39;, function ($http, DataService) {
217 215 selectedPins: windowData.selectedPins,
218 216 selectedBodysystemId: windowData.bodySystemId,
219 217 hideAnnotations: windowData.hideCallOuts,
220   - horizontalScroll: windowData.scrollPosition.horizontal + 'px',
221   - verticalScroll: windowData.scrollPosition.vertical + 'px',
  218 + scrollPosition: windowData.scrollPosition,
222 219 zoomLevel: windowData.scaleIndex,
223 220 showSelectedPins: windowData.showSelectedPins,
224 221 hideAllPins: windowData.hideAllPins,
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/aa/module-item-view.html
1 1 <div>
2 2 <div ng-include="aap/widget/MainMenu.html"></div>
3   - <div ng-init="openModuleItemMain()" id="aaBodyView" class="aaBodyView" ng-controller="TileViewListController"></div>
  3 + <div ng-init="openAAModuleItemMain()" id="aaBodyView" class="aaBodyView" ng-controller="TileViewListController"></div>
4 4 <!--<div >
5 5  
6 6 </div>-->
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/ca/clinical-animations-detail.html
1 1 <div>
2 2 <div ng-include="aap/widget/MainMenu.html"></div>
3   - <div ng-init="openBodyViewMain()" id="CAView" class="caView" ng-controller="CAController"></div>
  3 + <div ng-init="openCABodyViewMain()" id="CAView" class="caView" ng-controller="CAController"></div>
4 4 </div>
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/ci/clinical-illustrations-detail.html
1 1 <div>
2 2 <div ng-include="aap/widget/MainMenu.html"></div>
3   - <div ng-init="openBodyViewMain()" id="CIView" class="ciView" ng-controller="CIController" style=" "></div> <!--position: absolute !important;-->
  3 + <div ng-init="openCIBodyViewMain()" id="CIView" class="ciView" ng-controller="CIController" style=" "></div> <!--position: absolute !important;-->
4 4  
5 5  
6 6 </div>
... ...