Commit d83e8ce78f75d56874c1634ba2c81dc7196ab0b3

Authored by Amrita Vishnoi
2 parents 338e7474 0b9774d8

Merge branch 'Develop' into QA

400-SOURCECODE/AIAHTML5.Web/app/controllers/CAController.js
... ... @@ -71,7 +71,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
71 71 else {
72 72 $scope.setActiveTab(1);
73 73 $scope.reRunSearchOnLoad();
74   - $('html, body').animate({ scrollTop: localStorage.getItem('CAGridViewScroll') });
  74 + $('html, body').animate({ scrollTop: localStorage.getItem('CAGridViewScroll') }, 'slow');
75 75 }
76 76  
77 77  
... ... @@ -403,7 +403,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
403 403 if ($scope.searchCAListViewData.length == 0) {
404 404 var $el = $('<div class="col-sm-12" style="padding-left:25px;padding-top:10px;"><strong style="color:white;">No animation found for the selected search criteria!</strong></div>').appendTo('#grid-view');
405 405 $compile($el)($scope);
406   - $('table > #ListViewDiv > #searchAnimation').remove();
  406 + $('table > #ListViewDiv > #searchAnimation').remove();
407 407 $('#ListViewDiv').append('<tr id="searchAnimation"><td colspan="3"><strong style="color:black;">No animation found for the selected search criteria!</strong></td></tr>');
408 408 }
409 409  
... ... @@ -450,7 +450,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
450 450  
451 451 localStorage.setItem("currentViewTitleFromJson", $rootScope.ViewTitle);
452 452 localStorage.setItem("currentBodyViewId", $event.currentTarget.id);
453   - var CAGridViewScrollPosition = $($window).scrollTop();
  453 + var CAGridViewScrollPosition = $($window).scrollTop();
454 454 localStorage.setItem('CAGridViewScroll', CAGridViewScrollPosition);
455 455 var u = $location.url();
456 456 $location.url('/clinical-animations-detail');
... ... @@ -580,17 +580,17 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
580 580 });
581 581  
582 582  
583   - var jspContentHeight = $('.jsPanel-content').height();
584   - var videoHeight = $('#divplayerinlineVideo div').height();
585   - if (videoHeight <= 0)
586   - videoHeight = 360;
587   - var textH = $('.video-subtitle').height();
588   - textH = textH + 40;
589   - var blackBorderHeight = jspContentHeight - (videoHeight + textH);
  583 + var jspContentHeight = $('.jsPanel-content').height();
  584 + var videoHeight = $('#divplayerinlineVideo div').height();
  585 + if (videoHeight <= 0)
  586 + videoHeight = 360;
  587 + var textH = $('.video-subtitle').height();
  588 + textH = textH + 40;
  589 + var blackBorderHeight = jspContentHeight - (videoHeight + textH);
590 590  
591   - if ($('.jsPanel-content').length > 0) {
  591 + if ($('.jsPanel-content').length > 0) {
592 592 $('.video-subtitle').css('margin-bottom', blackBorderHeight);
593   - $('#divplayerinlineVideo').css('background', '#fff');
  593 + $('#divplayerinlineVideo').css('background', '#fff');
594 594 }
595 595  
596 596 }
... ... @@ -646,14 +646,14 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
646 646  
647 647 var curCAListViewScroll = localStorage.getItem("CAListViewScroll");
648 648 if (typeof (curCAListViewScroll) !== "undefined" && curCAListViewScroll !== null && curCAListViewScroll !== '') {
649   - if (typeof InstallTrigger !== 'undefined') {
650   -
651   - $('#ListViewDiv').animate({ scrollTop: localStorage.getItem("CAListViewScroll") });
652   -
653   - }
654   - else
655   - {
656   - $('#ListViewDiv').scrollTop(localStorage.getItem("CAListViewScroll"));
  649 + if (typeof InstallTrigger !== 'undefined') {
  650 +
  651 + $('#ListViewDiv').animate({ scrollTop: localStorage.getItem("CAListViewScroll") });
  652 +
  653 + }
  654 + else
  655 + {
  656 + $('#ListViewDiv').scrollTop(localStorage.getItem("CAListViewScroll"));
657 657 }
658 658 }
659 659 //else {
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/DAController.js
... ... @@ -22,7 +22,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
22 22  
23 23 $scope.VocabTermTxt;
24 24 $scope.CommonData
25   - $rootScope.TermNumberData;
  25 + $rootScope.TermNumberData = null;
26 26 $rootScope.BodySystemData
27 27 $scope.bodyViewId = 0;
28 28 $rootScope.bgartData;
... ... @@ -104,7 +104,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
104 104 $rootScope.NavigatorData;
105 105 $scope.navimgsrc;
106 106  
107   - $scope.dragdivleft = 0;
  107 + $scope.dragdivleft = 21;
108 108 $scope.dragdivtop = 0;
109 109  
110 110 $rootScope.systemNumber = 0;
... ... @@ -2760,9 +2760,31 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2760 2760  
2761 2761 else {
2762 2762  
2763   - var canvasDiv = document.getElementById('canvasDiv');
2764   - $('#canvasDiv').scrollTop($scope.imageVerticalScrollPosition);
2765   - $('#canvasDiv').scrollLeft($scope.imageHorizontlScrollPosition);
  2763 +
  2764 + if ($rootScope.isZoomed) {
  2765 + var lastSelectedAnnotation;
  2766 + angular.forEach($rootScope.previousHighlightList, function (value, key) {
  2767 + var ActualTermNos = $scope.getActualTermNumber(value);
  2768 + lastSelectedAnnotation = ActualTermNos;
  2769 + });
  2770 +
  2771 + $scope.TermList = $scope.getTermNumberList(lastSelectedAnnotation);
  2772 + $scope.termCoordinate = $scope.getTermCoordinate(lastSelectedAnnotation);
  2773 +
  2774 + console.log('last selected Annotation= ' + lastSelectedAnnotation);
  2775 + console.log('termListCount= ' + $scope.TermList.length);
  2776 + console.log('termCoordinate= ' + $scope.termCoordinate.x);
  2777 +
  2778 +
  2779 +
  2780 + $scope.aligneCanvasWithTerm();
  2781 + }
  2782 + else {
  2783 +
  2784 + var canvasDiv = document.getElementById('canvasDiv');
  2785 + $('#canvasDiv').scrollTop($scope.imageVerticalScrollPosition);
  2786 + $('#canvasDiv').scrollLeft($scope.imageHorizontlScrollPosition);
  2787 + }
2766 2788 }
2767 2789  
2768 2790 $rootScope.isLoading = false;
... ... @@ -2773,7 +2795,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2773 2795  
2774 2796 }
2775 2797 }
2776   - $('#canvasDiv').scrollLeft($('#canvasDiv').width() / 2);
  2798 +
2777 2799  
2778 2800  
2779 2801 };
... ... @@ -8273,7 +8295,12 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
8273 8295  
8274 8296  
8275 8297 $('#termList').empty();
8276   - $scope.loadListManger();
  8298 + if ($rootScope.TermNumberData == null) {
  8299 + setTimeout(function () { $scope.loadListManger(); }, 3000);
  8300 + }
  8301 + else {
  8302 + $scope.loadListManger();
  8303 + }
8277 8304 $rootScope.islistManagerEventAlredayDispachted = false;
8278 8305 }
8279 8306  
... ... @@ -8346,7 +8373,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
8346 8373  
8347 8374 $scope.HighlightBodyOnListManagerSelection = function (actualTermNumber, isTermListOptionClicked) {
8348 8375 //$rootScope.SelectedTermList = $("#termList").find("option[id=" + actualTermNumber + "]").val();
8349   -
  8376 + $rootScope.searchSelectedText = $("#" + actualTermNumber).text();
8350 8377 $rootScope.slectedActualTermNumber = actualTermNumber;
8351 8378  
8352 8379 if (isTermListOptionClicked == true) {
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/HomeController.js
... ... @@ -94,6 +94,7 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic
94 94 var isOutlineOptionChecked = "";
95 95 $rootScope.forgotPwdModalShow = function ()
96 96 {
  97 + document.getElementById("forgetPwdForm").reset()
97 98 $("#forgotPwdModal").modal("show");
98 99 $(".modal-backdrop").css("opacity",".5");
99 100 }
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/TileViewListController.js
... ... @@ -33,13 +33,71 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
33 33 selectedorientation: '',
34 34 selectedimagetype: '',
35 35 };
  36 +
  37 + $scope.showTabButton = true;
  38 + $scope.isListViewDataLoaded = true;
  39 +
  40 + $scope.setActiveTab = function (tabToSet) {
  41 +
  42 + $scope.activeTab = tabToSet;
  43 + localStorage.setItem("activeTab", $scope.activeTab);
  44 + if ($scope.activeTab == 1) {
  45 + $('#grid-view').css("display","block");
  46 + $('#list-view').css("display", "none");
  47 + $("#demoView").remove();
  48 + }
  49 + else
  50 + {
  51 +
  52 + $('#grid-view').css("display", "none");
  53 + if ($scope.isListViewDataLoaded == true) {
  54 + var htm = '';
  55 + htm += "<table class='table table-hover table-fixed bg-white table-txt12'> <thead class='clsthead'><tr class='active'><th width='25%'>Title</th> <th width='15%'>Region</th> <th width='30%'>System</th><th width='15%'>View</th> <th width='15%'>Type</th></tr></thead><tbody class='clstbody'>";
  56 + $.ajax({
  57 + url: '~/../content/data/json/aa/aa_dat_contentlist.json',
  58 + dataType: "json",
  59 + success: function (result) {
  60 + $(result.root.Item).each(function (key, value) {
  61 + console.log(key + " " + value);
  62 + htm += "<tr id=" + value._Id + " onclick='openListViewModuleItem(event)' ondblclick='openModuleItemView(event)'>"
  63 + htm += '<td width="25%">' + value._Title + '</td><td width="15%">' + value._BodyRegion + '</td><td width="30%">' + value._BodySystem + '</td><td width="15%">' + value._ViewOrientation + '</td><td width="15%">' + value._ImageType + '</td>';
  64 + htm += "</tr>"
  65 + });
  66 + htm += "</tbody></table>";
  67 + $("#list-view").html(htm);
  68 + $compile(htm)($scope);
  69 + }
  70 + });
  71 + $('#list-view').css("display", "block");
  72 + $scope.isListViewDataLoaded = false;
  73 + }
  74 + else
  75 + {
  76 + $('#list-view').css("display", "block");
  77 + }
  78 +
  79 + $timeout(function () {
  80 + // if ($rootScope.isListViewRowClicked == true) {
  81 + // $rootScope.isListViewRowClicked = false;
  82 + $("#demoView").remove();
  83 + $("#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=" + $rootScope.listArray[0].imageName + "></div><div class='col-xs-12' id='demoText' style='padding:0;'>" + $rootScope.listArray[0].text + "</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>");
  84 + var moduleItemDataToBeSavedID
  85 + $("#list-view table tbody tr").removeClass("active");
  86 + var moduleItemDataToBeSavedID = localStorage.getItem("listViewSelectedID");
  87 + $("#list-view table tbody #" + moduleItemDataToBeSavedID).addClass("active");
  88 + $scope.isListViewButtonClicked = true;
  89 + // }
  90 + }, 2000);
  91 + }
  92 + };
  93 +
36 94 $scope.loadForModuleById = function (moduleId) {
37   -
  95 +
38 96 $scope.moduleId = moduleId;
39   -
  97 + $scope.activeTab = 1;
40 98 console.log('loadForModuleById is called')
41 99 $rootScope.moduleName = Modules[moduleId].Name;
42   -
  100 + $rootScope.currentActiveModuleTitle = $rootScope.moduleName;
43 101 $scope.AllBodyRegion = BodyRegions;
44 102 $scope.AllBodySystem = BodySystems;
45 103 $scope.AllOrientation = ViewOrientations;
... ... @@ -57,17 +115,37 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
57 115 console.log(' error: ' + error.statusText);
58 116 }
59 117 )
  118 + }
60 119  
  120 + //$scope.$on('$viewContentLoaded', function (event) {
61 121  
  122 + // $scope.loadForModuleById();
62 123  
63   -
64   - }
65   -
  124 + //});
  125 + $scope.isOpenBtnClicked = false;
66 126 $scope.openModuleItemView = function (event) {
67   -
  127 +
  128 + localStorage.setItem("activeTab", $scope.activeTab);
68 129 //0. Get selected Image Id
69   - var moduleItemDataToBeSaved = event.target.id;
70   -
  130 + if ($scope.isListViewButtonClicked == true) {
  131 + if ($scope.isOpenBtnClicked == true) {
  132 +
  133 + var moduleItemDataToBeSaved = $("#demoText").html();
  134 + $scope.isOpenBtnClicked = false;
  135 + }
  136 + else {
  137 + var moduleItemDataToBeSavedID = event.currentTarget.id;
  138 + localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID);
  139 + var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text();
  140 + }
  141 + }
  142 + else
  143 + {
  144 + var moduleItemDataToBeSaved = event.target.id;
  145 + localStorage.setItem("listViewSelectedID", event.currentTarget.id);
  146 + $scope.isListViewButtonClicked = false;
  147 + }
  148 +
71 149 //1.Filter selected module ietem data and get the pushed opened moduile array object
72 150 $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData);
73 151  
... ... @@ -77,8 +155,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
77 155 $rootScope.bodySystemName = $rootScope.OpenedTileData[2];
78 156 $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3];
79 157 $scope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3];
80   -
81   - //3. set opened module item title
  158 + $rootScope.listArray = [];
  159 + $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved });
  160 + //3. set opened module item ti
82 161 localStorage.setItem("currentViewTitle", $rootScope.OpenedTileData[6]);
83 162  
84 163 //3. Navigate to the Module-item-view
... ... @@ -86,6 +165,23 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
86 165 $location.url('/module-item-view');
87 166 }
88 167  
  168 +
  169 + $scope.openListViewModuleItem = function (event) {
  170 +
  171 + $("#demoView").remove();
  172 + var moduleItemDataToBeSavedID = event.currentTarget.id;
  173 + $("#list-view table tbody tr").removeClass("active");
  174 + localStorage.setItem("listViewSelectedID", moduleItemDataToBeSavedID);
  175 + $("#list-view table tbody #" + moduleItemDataToBeSavedID).addClass("active");
  176 + var moduleItemDataToBeSaved = $("#list-view table tbody #" + moduleItemDataToBeSavedID).find('td:eq(0)').text();
  177 + $rootScope.OpenedTileData = ModuleService.GetOpenedTileData(moduleItemDataToBeSaved, $scope.moduleLandingData);
  178 + $rootScope.OpenItemImagePath = "../../../content/images/aa/images/" + $rootScope.OpenedTileData[3];
  179 + $rootScope.listArray = [];
  180 + $rootScope.listArray.push({ "imageName": $rootScope.OpenItemImagePath, "text": moduleItemDataToBeSaved });
  181 + $("#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=" + $rootScope.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>");
  182 + }
  183 +
  184 +
89 185 $scope.openModuleItem = function () {
90 186 var jsContentURL;
91 187 var moduleItemViewDivId;
... ... @@ -145,8 +241,11 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
145 241 if (document.getElementById('aaDetailPageDiv') != null) {
146 242  
147 243 //0.4 added some stylesheets
148   - $('#aaBodyView').css("height", $(window).outerHeight());
149   - $('#aaBodyView').css("width", $(window).outerWidth());
  244 + $('.aaBodyView').css("height", $(window).outerHeight() - $('.navbar-fixed-top').height());
  245 + $('.aaBodyView').css("width", $(window).outerWidth());
  246 + $rootScope.canvasDivHeight = $('.aaBodyView').height();
  247 +
  248 + $('.canvasDivClass').css("height", $rootScope.canvasDivHeight);
150 249  
151 250 $scope.currentTitleFromJson = localStorage.getItem("currentViewTitle");
152 251 $("#modItemImage").attr('src', $rootScope.OpenItemImagePath);
... ... @@ -158,8 +257,6 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
158 257  
159 258 $scope.relativeDimesion = 0;
160 259 $("#modItemImage").css("width", $rootScope.ViewImageWidth + "px");
161   -
162   -
163 260 //0.5 create canvas on the top of image so that I can draw a line over the canvas.
164 261 var canvas = document.createElement('canvas');
165 262 canvas.id = 'aaDetailViewCanvas';
... ... @@ -169,14 +266,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
169 266 canvas.style.left = '0px';
170 267 canvas.style.top = '0px';
171 268 canvas.style.position = "absolute";
172   - //canvas.addEventListener('click', function () {
173   - // alert('canvas clicked');
174   - // var clickedPint = $scope.getMousePos(event);
175   - // alert('x: ' + clickedPint.x + ', y:' + clickedPint.y);
176   - //})
177 269 $("#canvasDiv").append(canvas);
178 270 $scope.context = canvas.getContext("2d")
179   -
180 271 //6. Show all pins on AA opened item
181 272 $scope.showAllPins();
182 273 //7. Highlight all system body list in left side
... ... @@ -213,13 +304,20 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
213 304  
214 305  
215 306  
216   -
  307 +
217 308 angular.element(document).ready(function (e) {
218 309 $("#ImagePanel").resize(function () {
219 310 $("#canvasDiv").scrollLeft($rootScope.CanvasDivLeftPosition);
220 311 $("#canvasDiv").scrollTop($rootScope.CanvasDivTopPosition);
221 312 });
  313 + $(document).on("click", "#ImagePanel .jsPanel-hdr .jsPanel-hdr-r .jsPanel-btn-close .jsglyph-remove", function () {
  314 + $scope.setActiveTab(parseInt(localStorage.getItem("activeTab")));
  315 + //if (localStorage.getItem("activeTab") != null) {
  316 +
  317 + // $rootScope.isListViewRowClicked = true;
222 318  
  319 + //}
  320 + });
223 321 })
224 322  
225 323 $scope.showAllPins = function () {
... ... @@ -313,7 +411,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
313 411 $scope.moduleLandingData = result;
314 412 $scope.selectedAAListViewData = new jinqJs()
315 413 .from($scope.moduleLandingData.data.root.Item)
316   - //.orderBy([{ field: '_Title', sort: 'asc' }])
  414 + .orderBy([{ field: '_Title', sort: 'asc' }])
317 415 .select();
318 416  
319 417 $('#grid-view').empty();
... ... @@ -329,7 +427,6 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
329 427 if (posbodyregion > -1) {
330 428 selectimg = true;
331 429 count = count + 1;
332   -
333 430 }
334 431 else {
335 432 selectimg = false;
... ... @@ -380,12 +477,13 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
380 477  
381 478 $scope.imagePath = "../content/images/aa/thumbnails/" + value._TileImageName;
382 479  
383   - var $el = $('<div id="' + value._id + '" class="col-sm-3 col-md-3" title = "' + value._Title + '" data-ng-click="openModuleItemView($event)">'
384   - + '<div class="thumbnail" >'
385   - + '<img class="tinyImg" id="' + value._Title + '"ng-src="' + $scope.imagePath + '" alt="" title="" >'
386   - + '<div class="caption"><p>' + value._Title + '</p></div></a></div></div>').appendTo('#grid-view');
387   -
  480 +
  481 + var $el = $('<div id="' + value._id + '" class="col-sm-3 col-md-3" title = "' + value._Title + '" data-ng-click="openModuleItemView($event)">'
  482 + + '<div class="thumbnail" >'
  483 + + '<img class="tinyImg" id="' + value._Title + '"ng-src="' + $scope.imagePath + '" alt="" title="" >'
  484 + + '<div class="caption"><p>' + value._Title + '</p></div></a></div></div>').appendTo('#grid-view');
388 485  
  486 +
389 487 $compile($el)($scope);
390 488  
391 489 $(".sidebar").mCustomScrollbar({
... ... @@ -479,12 +577,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
479 577 else {
480 578 $scope.showAllPins();
481 579 }
482   - }
  580 + }
483 581 else {
484 582  
485 583 $scope.selectedSystemName = event.currentTarget.title;
486   -
487   -
488 584 // get termText info
489 585 var promise = ModuleService.getTermTextDataForPin($scope.moduleName)
490 586 .then(
... ... @@ -1080,50 +1176,108 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1080 1176 function (response) {
1081 1177  
1082 1178 $scope.AAPinTermData = response.data.PinTermData.TermData;
  1179 +
1083 1180 $rootScope.isLoading = false;
1084 1181 $('#setting-spinner').css('visibility', 'hidden');
1085   -
  1182 +
1086 1183 $scope.pinTermData = [];
1087 1184 var primaryLexicon = $rootScope.lexiconLanguageArray[0].id;
1088 1185 $scope.matchedLanguageTermData = new jinqJs()
1089 1186 .from($scope.AAPinTermData)
1090 1187 .where('_LanguageId == ' + primaryLexicon)
1091 1188 .select();
1092   -
  1189 +
1093 1190 for (var i = 0; i < $scope.matchedLanguageTermData.length; i++) {
1094   - $scope.pinTermData.push({ "LanguageId": $scope.matchedLanguageTermData[i]._LanguageId, "TermNumber": $scope.matchedLanguageTermData[i]._TermNumber, "TermTxt": $scope.matchedLanguageTermData[i]._TermText });
1095   -
  1191 + $scope.pinTermData.push({ "LanguageId": $scope.matchedLanguageTermData[i]._LanguageId, "TermNumber": $scope.matchedLanguageTermData[i]._TermNumber, "TermTxt": $scope.matchedLanguageTermData[i]._TermText});
1096 1192 }
1097 1193 $scope.$watch('$scope.pinTermData', function (newValue, oldValue, scope) {
1098 1194 if ($('#termlistfilter').html() != "")
1099   - $('#termlistfilter').empty()
  1195 + $('#termList').empty();
  1196 + $('#termlistfilter').empty()
1100 1197 if ($scope.pinTermData.length > 0) {
1101 1198 $timeout(function () {
1102 1199 console.log('pinTermData= ' + $scope.pinTermData.length);
1103   -
1104 1200 for (var j = 0; j < $scope.pinTermData.length; j++) {
1105 1201 var $el = $('<li><a id= "' + $scope.pinTermData[j].TermNumber + '" href="" onclick="onSearchItemSelection(event)" >' + $scope.pinTermData[j].TermTxt + '</a></li>').appendTo('#termlistfilter')
1106 1202 $compile($el)($scope);
1107   -
  1203 + var $selectedOptions = $('<option id= "' + $scope.pinTermData[j].TermNumber + '" onclick="onSearchItemSelection(event)" >' + $scope.pinTermData[j].TermTxt + '</option>').appendTo("#termList")
  1204 + $compile($selectedOptions)($scope);
  1205 + $("#bodySystems").empty();
  1206 + $("#bodySystemList li a").each(function (key, value) {
  1207 + var $systemOptions = $('<option id=' + $(this).attr('id') + '>' + $(this).text() + '</option>').appendTo("#bodySystems")
  1208 + $compile($systemOptions)($scope);
  1209 + });
1108 1210 }
1109   -
1110 1211 }, 500);
1111 1212 }
1112 1213 })
1113   -
  1214 +
1114 1215 },
1115 1216 function (error) {
1116 1217 // handle errors here
1117 1218 console.log(' error: ' + error.statusText);
1118 1219 }
1119 1220 )
1120   -
1121 1221 }
1122 1222  
1123 1223  
1124   - $scope.GetAnnotationBasedOnActualTermNo = function (actualTermNo) {
1125 1224  
1126 1225  
  1226 + $scope.$on('listManagerEvent', function (event, data) {
  1227 + $("#viewName").empty();
  1228 + $("#viewName").append("<option>" + $rootScope.listArray[0].text + "</option>");
  1229 +
  1230 + $rootScope.isLoading = false;
  1231 + $('#spinner').css('visibility', 'hidden');
  1232 +
  1233 + });
  1234 +
  1235 +
  1236 +
  1237 + $scope.refreshTermListOnSystemSelection = function (bodySystemId) {
  1238 + var bodySystemName = $("#bodySystems #" + bodySystemId).val();
  1239 +
  1240 + if (bodySystemName == "All") {
  1241 + for (var j = 0; j <= $scope.pinTermData.length - 1; j++) {
  1242 + var $selectedOptions = $('<option id= "' + $scope.pinTermData[j].TermNumber + '" >' + $scope.pinTermData[j].TermTxt + '</option>').appendTo("#termList")
  1243 + $compile($selectedOptions)($scope);
  1244 + }
  1245 + }
  1246 + else {
  1247 + var imageId = $rootScope.imageId;
  1248 + $scope.pinDataUrl = "aa_dat_pinterm_" + imageId;
  1249 + $rootScope.bodySystemTermArray = [];
  1250 + $('#termList').empty();
  1251 + $.ajax({
  1252 + url: '~/../content/data/json/aa/aa_pinterm/' + $scope.pinDataUrl + '.json',
  1253 + type: 'GET',
  1254 + dataType: "json",
  1255 + async: false,
  1256 + success: function (result) {
  1257 + $(result.PinTermData.TermData).each(function (key, value) {
  1258 + $rootScope.bodySystemTermArray.push({ "termNumbr": result.PinTermData.TermData[key]._TermNumber, "text": result.PinTermData.TermData[key]._TermText, "language": result.PinTermData.TermData[key]._LanguageId });
  1259 + });
  1260 + for (var i = 0; i <= $scope.aaPinData.length - 1; i++) {
  1261 + if ($scope.aaPinData[i]._BodySystemName.toLowerCase() == bodySystemName.toLowerCase()) {
  1262 + for (var j = 0 ; j <= $rootScope.bodySystemTermArray.length - 1; j++) {
  1263 + if ($scope.aaPinData[i]._TermId == $rootScope.bodySystemTermArray[j].termNumbr) {
  1264 + if ($rootScope.bodySystemTermArray[j].language == "1") {
  1265 + console.log($rootScope.bodySystemTermArray[j].text);
  1266 + var $selectedOptions = $('<option id= "' + $rootScope.bodySystemTermArray[j].termNumbr + '" >' + $rootScope.bodySystemTermArray[j].text + '</option>').appendTo("#termList")
  1267 + $compile($selectedOptions)($scope);
  1268 + }
  1269 + }
  1270 + }
  1271 + }
  1272 + }
  1273 + }
  1274 +
  1275 + });
  1276 + }
  1277 + }
  1278 + $scope.GetAnnotationBasedOnActualTermNo = function (actualTermNo) {
  1279 +
  1280 +
1127 1281 var languageArray = $rootScope.lexiconLanguageArray;
1128 1282  
1129 1283 if ($scope.AAPinTermData != null || $scope.AAPinTermData != undefined) {
... ... @@ -1132,34 +1286,22 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1132 1286 .from($scope.AAPinTermData)
1133 1287 .where('_TermNumber == ' + actualTermNo)
1134 1288 .select();
1135   -
  1289 +
1136 1290 if ($scope.matchedTermNoData != null || $scope.matchedTermNoData != undefined) {
1137   -
  1291 +
1138 1292 for (var j = 0; j <= languageArray.length - 1; j++) {
1139   -
  1293 +
1140 1294 $scope.matchedLanguageTermNoData = new jinqJs()
1141 1295 .from($scope.matchedTermNoData)
1142 1296 .where('_LanguageId == ' + languageArray[j].id)
1143 1297 .select();
1144   -
1145 1298 var termText = $scope.matchedLanguageTermNoData[0]._TermText;
1146   -
1147 1299 $scope.MultiLanguageAnnationArray.push(termText);
1148   -
1149   -
1150 1300 };
1151   -
1152   -
1153   -
1154 1301 }
1155   -
1156 1302 }
1157 1303 }
1158 1304  
1159   -
1160   -
1161   -
1162   -
1163 1305 $scope.hidePins = function () {
1164 1306  
1165 1307 $rootScope.isLoading = true;
... ... @@ -1184,6 +1326,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1184 1326  
1185 1327 $rootScope.isLoading = false;
1186 1328 $('#spinner').css('visibility', 'hidden');
  1329 + $(".tooltip-custom").removeClass("btn-primary");
  1330 + $(".tooltip-custom").addClass("btn-black");
  1331 + $("#hidePinBtn").addClass("btn-primary");
1187 1332 }
1188 1333  
1189 1334 $scope.showAllPinsAfterHide = function (event) {
... ... @@ -1204,6 +1349,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1204 1349 $scope.showSystemPins($scope.aaPinData, false);
1205 1350 }
1206 1351 $scope.showSpeechBubble();
  1352 + $(".tooltip-custom").removeClass("btn-primary");
  1353 + $(".tooltip-custom").addClass("btn-black");
  1354 + $("#allPinBtn").addClass("btn-primary");
1207 1355 };
1208 1356  
1209 1357  
... ... @@ -1224,7 +1372,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1224 1372  
1225 1373 }
1226 1374 $scope.showSpeechBubble();
1227   -
  1375 + $(".tooltip-custom").removeClass("btn-primary");
  1376 + $(".tooltip-custom").addClass("btn-black");
  1377 + $("#selectedPin").addClass("btn-primary");
1228 1378 };
1229 1379  
1230 1380  
... ... @@ -1341,16 +1491,32 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1341 1491 }
1342 1492  
1343 1493 $scope.highlightPinBasedOnSerachItem = function (event) {
  1494 +
  1495 + if ($scope.isTermListOptionClicked == true) {
  1496 + $scope.searchItemId = event;
  1497 + $scope.searchItemText = event.innerHTML;
  1498 + $('#termList option[selected="selected"]').prop("selected", false);
  1499 + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true);
  1500 + $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" });
  1501 + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').css({ "background-color": "#3399FF", "color": "#ffffff" });
  1502 + $scope.searchFilter = event.innerHTML;
  1503 + selectedTermName.placeholder = event.innerHTML;
  1504 + $scope.isTermListOptionClicked = false;
  1505 + }
  1506 + else
  1507 + {
  1508 + $scope.searchItemId = event.currentTarget.id;
  1509 + $scope.searchItemText = event.currentTarget.innerHTML;
  1510 + $('#termList option[selected="selected"]').prop("selected", false);
  1511 + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true);
  1512 + $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" });
  1513 + $('#termList option[value="' + $rootScope.searchSelectedText + '"]').css({ "background-color": "#3399FF", "color": "#ffffff" });
  1514 +
  1515 + $scope.searchFilter = event.currentTarget.innerHTML;
  1516 + selectedTermName.placeholder = event.currentTarget.innerHTML;
1344 1517  
1345   - $scope.searchItemId = event.currentTarget.id;
1346   - $scope.searchItemText = event.currentTarget.innerHTML;
1347   - $('#termList option[selected="selected"]').prop("selected", false);
1348   - $('#termList option[value="' + $rootScope.searchSelectedText + '"]').prop("selected", true);
1349   - $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" });
1350   - $('#termList option[value="' + $rootScope.searchSelectedText + '"]').css({ "background-color": "#3399FF", "color": "#ffffff" });
  1518 + }
1351 1519  
1352   - $scope.searchFilter = event.currentTarget.innerHTML;
1353   - selectedTermName.placeholder = event.currentTarget.innerHTML;
1354 1520  
1355 1521 //get data from pindata for this trem
1356 1522  
... ... @@ -1396,8 +1562,20 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1396 1562 }
1397 1563 }
1398 1564 }
  1565 +
  1566 +
  1567 +
1399 1568 }]);
1400 1569  
  1570 +
  1571 +function refreshTermListOnSystem(bodySystemId) {
  1572 + // alert('refreshTermListOnSystem is called outside');
  1573 + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope();
  1574 + scope.$apply(function () {
  1575 + scope.refreshTermListOnSystemSelection(bodySystemId);
  1576 + });
  1577 +}
  1578 +
1401 1579 function showSelectedSystemPins(event) {
1402 1580 console.log('OnBodySystem chnaged is called outside ');
1403 1581 var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope();
... ... @@ -1446,6 +1624,16 @@ function onSearchItemSelection(event) {
1446 1624 });
1447 1625 }
1448 1626  
  1627 +function onListManagerTermSelection(event) {
  1628 + var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope();
  1629 + scope.isTermListOptionClicked = true;
  1630 + scope.$apply(function () {
  1631 + scope.highlightPinBasedOnSerachItem(event);
  1632 + });
  1633 +
  1634 +}
  1635 +
  1636 +
1449 1637 function showHideAnnotation(event) {
1450 1638  
1451 1639 var scope = angular.element(document.getElementById("aaDetailPageDiv")).scope();
... ... @@ -1463,6 +1651,34 @@ function showSelectedPins(event) {
1463 1651 });
1464 1652 }
1465 1653  
  1654 +
  1655 +function openModuleItemView(event) {
  1656 + var scope = angular.element(document.getElementById("list-view")).scope();
  1657 + scope.isListViewButtonClicked = true;
  1658 + scope.$apply(function () {
  1659 + scope.openModuleItemView(event);
  1660 + });
  1661 +}
  1662 +
  1663 +function openListViewModuleItem(event) {
  1664 +
  1665 + var scope = angular.element(document.getElementById("list-view")).scope();
  1666 + scope.isListViewButtonClicked = true;
  1667 + scope.$apply(function () {
  1668 + scope.openListViewModuleItem(event);
  1669 + });
  1670 +}
  1671 +
  1672 +function openCurrentView(event) {
  1673 +
  1674 + var scope = angular.element(document.getElementById("list-view")).scope();
  1675 + scope.isOpenBtnClicked = true;
  1676 + scope.$apply(function () {
  1677 + scope.openModuleItemView(event);
  1678 + });
  1679 +
  1680 +}
  1681 +
1466 1682 function onZoom(scope) {
1467 1683  
1468 1684 //$(".common-drag").remove();
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/aa/atlas-anatomy-detail.html
... ... @@ -16,11 +16,48 @@
16 16 left: 0;
17 17 right: 0;
18 18 }
19   - .active
20   - {
21   - margin-left:15px!important;
  19 +
  20 + .active {
  21 + margin-left: 15px !important;
  22 + }
  23 +
  24 + .tools1 {
  25 + left: -96px;
  26 + }
  27 +
  28 + .tooltip-custom + .tooltip > .tooltip-inner {
  29 + background-color: #fff;
  30 + border: 1px solid #000;
  31 + color: #000;
  32 + border-radius: 0;
  33 + }
  34 +
  35 + .tooltip-custom + .tooltip > .tooltip-arrow {
  36 + display: none;
  37 + }
  38 +
  39 +
  40 + .custom-tooltip {
  41 + background-color: #333;
  42 + border: 0 none;
  43 + color: #fff !important;
  44 + left: -52px;
  45 + /*opacity: 0.9;*/
  46 + padding: 7px;
  47 + position: absolute;
  48 + text-align: center;
  49 + top: 45px;
  50 + width: 120px;
  51 + display: none;
  52 + z-index: 120000;
  53 + border: 1px solid #000;
  54 + color: #000;
  55 + border-radius: 0;
  56 + }
  57 +
  58 + .pad0 {
  59 + padding: 0;
22 60 }
23   - .tools1{left:-96px;}
24 61 </style>
25 62 <div id="aaDetailPageDiv" class="bodyWrap row" ng-controller="TileViewListController">
26 63  
... ... @@ -34,12 +71,12 @@
34 71 <div class="tools pull-left" style="top:44px;">
35 72 <div class="toggle-icon toggleBar toggleHeadingButton" id="sideBarToggle" data-toggle="tooltip" data-placement="top" title="Show/Hide Sidebar"></div>
36 73 <div class="">
37   - <div class="col-sm-6" title="Hide Pins"><button onclick="hidePins(event)" class="btn btn-black btn-sm"> <img src="../../../content/images/aa/LeftMenu/hide-pin.png" alt="" title=""></button> </div>
38   - <div class="col-sm-6" title="Show Selected Pins"><button class="btn btn-black btn-sm pull-right" onclick="showSelectedPins(event)"><img src="../../../content/images/aa/LeftMenu/draw-pin.png" alt="" title=""></button></div>
39   - <div class="col-sm-6" title="Show All Pins in System(s)"><button class="btn btn-primary btn-sm marginTop5" onclick="showAllPins(event)"><img src="../../../content/images/aa/LeftMenu/all-pin.png" alt="" title=""></button></div>
40   - <div class="col-sm-6" title="Select System">
41   - <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu221" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"><img src="../../../content/images/aa/LeftMenu/icon-highlight.png" alt="" title=""></button>
42   -
  74 + <div class="col-sm-6"><button onclick="hidePins(event)" id="hidePinBtn" class="btn btn-black btn-sm tooltip-custom" data-toggle="tooltip" data-placement="bottom" title="Hide Pins"> <img src="../../../content/images/aa/LeftMenu/hide-pin.png" alt=""></button> </div>
  75 + <div class="col-sm-6"><button class="btn btn-black btn-sm pull-right tooltip-custom" id="selectedPin" onclick="showSelectedPins(event)" data-toggle="tooltip" data-placement="bottom" title="Show Selected Pins"><img src="../../../content/images/aa/LeftMenu/draw-pin.png" alt=""></button></div>
  76 + <div class="col-sm-6"><button class="btn btn-primary btn-sm marginTop5 tooltip-custom" id="allPinBtn" onclick="showAllPins(event)" data-toggle="tooltip" data-placement="bottom" title="Show All Pins in System(s)"><img src="../../../content/images/aa/LeftMenu/all-pin.png" alt=""></button></div>
  77 + <div class="col-sm-6">
  78 + <div class="custom-tooltip">Select System</div>
  79 + <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu221" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"><img src="../../../content/images/aa/LeftMenu/icon-highlight.png" alt="" ></button>
43 80 <ul class="dropdown-menu" aria-labelledby="dropdownMenu221" id="bodySystemList">
44 81 <li><a id="0" href="#" title="Current Structure" onclick="showSelectedSystemPins(event)">All</a></li>
45 82 <li role="separator" class="divider"></li>
... ... @@ -58,7 +95,7 @@
58 95 </ul>
59 96  
60 97 </div>
61   - <div class="col-sm-12" data-toggle="tooltip" data-placement="top" title="Show/Hide Structure Name Boxes"><button onclick="showHideAnnotation(event)" class="btn btn-black btn-sm marginTop5 btn-block"> <img src="../../../content/images/aa/LeftMenu/comment-box.png" alt="" title=""></button> </div>
  98 + <div class="col-sm-12" data-toggle="tooltip" data-placement="top" title="Show/Hide Structure Name Boxes"><button onclick="showHideAnnotation(event)" class="btn btn-black btn-sm marginTop5 btn-block"> <img src="../../../content/images/aa/LeftMenu/comment-box.png" alt=""></button> </div>
62 99 </div>
63 100 <div class="pips-slider" style="margin-top:125px">
64 101 <h3>Zoom <i class="fa fa-search-plus"></i></h3>
... ... @@ -136,17 +173,17 @@
136 173 <div class="container-fluid">
137 174 <div class="row">
138 175  
139   - <div class=" col-sm-12 img-thumbnail" id="canvasDiv" style="height: 478px; overflow: scroll;">
  176 + <div class=" col-sm-12 img-thumbnail canvasDivClass" id="canvasDiv" style="overflow: scroll;">
140 177 <canvas id="canvasPaint" ng-click="FreeStylePaint($event)" width="2277" height="3248" class="canvas-annotationStyle1"></canvas>
141 178 <canvas id="canvas" ng-click="onDrawingCanvasClick($event)" width="2277" height="3248" class="canvas-annotationStyle"></canvas>
142 179  
143 180 <img id="modItemImage" alt="" title="" style="left:0px;top:0px;position:absolute">
144 181 <!--<div class="clearfix">
145 182  
146   - <img id="modItemImage" ng-init="alert('hi')" alt="" title="" class="img-responsive">
147   - </div>
148   - <!--<div class="col-sm-1 img-thumbnail pull-right" align="center"><img src="../../content/images/1000x600.jpg" alt="" title="" class="img-responsive"></div>
149   - <div class="clearfix"></div>-->
  183 + <img id="modItemImage" ng-init="alert('hi')" alt="" title="" class="img-responsive">
  184 + </div>
  185 + <!--<div class="col-sm-1 img-thumbnail pull-right" align="center"><img src="../../content/images/1000x600.jpg" alt="" title="" class="img-responsive"></div>
  186 + <div class="clearfix"></div>-->
150 187 </div>
151 188 </div>
152 189 </div>
... ... @@ -156,12 +193,27 @@
156 193  
157 194 </div>
158 195 </div>
159   -
160 196 <script>
161 197 $(window).load(function () {
162 198 $(".stickey-area").sticky();
163 199 });
164 200 </script>
  201 +<script>
  202 + $(".tooltip-custom").tooltip({
  203 + tooltipClass: 'customTooltip'
  204 + });
  205 +</script>
  206 +<script>
  207 + $(function () {
  208 +
  209 + $("#dropdownMenu221").mouseover(function () {
  210 + $(".custom-tooltip").css("display", "block");
  211 + });
  212 + $("#dropdownMenu221").mouseout(function () {
  213 + $(".custom-tooltip").css("display", "none");
  214 + });
  215 + });
  216 +</script>
165 217  
166 218 <script>
167 219 var isSideBarBtnClicked = true;
... ... @@ -174,13 +226,12 @@
174 226 isSideBarBtnClicked = false;
175 227  
176 228 }
177   - else
178   - {
  229 + else {
179 230 $(".main2").removeClass("active");
180 231 $(".tools").removeClass("tools1");
181 232 isSideBarBtnClicked = true;
182 233 }
183   -
  234 +
184 235 });
185 236 });
186 237 </script>
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/tile-view.html
... ... @@ -82,7 +82,7 @@
82 82 <li role="presentation" id="Female" ng-click="getDAViewList($event)"><a><i class="fa fa-venus"></i> Female</a></li>
83 83 </ul>-->
84 84 <!-- Tab panes -->
85   - <div class="row tab-content">
  85 + <div class="row tab-content" id="viewList">
86 86 <!--<div role="tabpanel" class="tab-pane active" id="grid-view">-->
87 87 <div role="tabpanel" class="tab-pane active" id="grid-view">
88 88 <div ng-repeat="(key,val) in moduleLandingData.data.root.Item | orderBy:'_Title' ">
... ... @@ -96,7 +96,8 @@
96 96 </div>
97 97 </div>
98 98 </div>
99   - </div>
  99 + <div class="col-xs-12" id="list-view"></div>
  100 + </div>
100 101 </div>
101 102  
102 103 <script>
... ...
400-SOURCECODE/AIAHTML5.Web/content/images/da/ethnicity/body-views/9/B/thumbnails/da_tni_3343_B.jpg deleted

5.79 KB

400-SOURCECODE/AIAHTML5.Web/index.html
... ... @@ -263,7 +263,7 @@
263 263 <h5 class="modal-title" id="exampleModalLabel">Enter your email id to recover Password</h5>
264 264 </div>
265 265 <div class="modal-body">
266   - <form>
  266 + <form id="forgetPwdForm">
267 267 <div class="form-group">
268 268 <div class="input-group">
269 269 <span class="input-group-addon"><i class="fa fa-envelope"></i></span>
... ... @@ -886,7 +886,7 @@
886 886 </div>
887 887 <div class="modal-footer" id="totalTerms">
888 888 <!--<span class="pull-left marginTop5">424 Structures</span>-->
889   - <button data-dismiss="modal" class="btn btn-primary" type="button"><i class="fa fa-arrow-circle-right"></i></button>
  889 + <!--<button data-dismiss="modal" class="btn btn-primary" type="button"><i class="fa fa-arrow-circle-right"></i></button>-->
890 890 </div>
891 891 </div>
892 892  
... ... @@ -1237,7 +1237,7 @@
1237 1237 <div class="col-sm-8">• Dissectible Anatomy</div>
1238 1238 </div>
1239 1239 <div class="form-group">
1240   - <div class="col-sm-8"><i>• Atlas Anatomy (To be available by 06/30/2017)</i></div>
  1240 + <div class="col-sm-8">• Atlas Anatomy</div>
1241 1241 </div>
1242 1242 <div class="form-group">
1243 1243 <div class="col-sm-8">• Clinical Illustration</div>
... ...