Commit 87e1657b22f886634657c6e1170eb4cc06841301

Authored by Amit Kumar
2 parents 6f125641 c81a594f

Merge branch 'Develop' of http://52.6.196.163/ADAM/AIAHTML5 into Test_stash

Showing 52 changed files with 5474 additions and 1640 deletions
300-PROTOTYPES/20160726/welcome.html
... ... @@ -555,7 +555,7 @@
555 555 <div class="">
556 556 <div class="col-sm-6">
557 557 <h5 class="font13 bolder">Modesty Setting</h5>
558   - <!--<img src="img/adam-leaf.png" alt="">-->
  558 + <img src="img/adam-leaf.png" alt="" class="pull-left marginR5">
559 559 <div class="radio">
560 560 <label>
561 561 <input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked>
... ...
400-SOURCECODE/AIAHTML5.Web/AIAHTML5.Web.csproj
... ... @@ -144,6 +144,7 @@
144 144 <Content Include="content\images\ca\thumbnails\ca_tni_3402.jpg" />
145 145 <Content Include="content\images\ca\thumbnails\ca_tni_3403.jpg" />
146 146 <Content Include="content\images\ca\thumbnails\ca_tni_3404.jpg" />
  147 + <Content Include="content\images\common\adam-leaf.png" />
147 148 <Content Include="content\images\common\annotation-tool-bar\blank-shape.jpg" />
148 149 <Content Include="content\images\common\annotation-tool-bar\pattern-2burn.jpg" />
149 150 <Content Include="content\images\common\annotation-tool-bar\pattern-3burn.jpg" />
... ... @@ -329,6 +330,7 @@
329 330 <Content Include="content\images\DA\ethnicity\body-views\9\L\thumbnails\da_tni_3343_L.jpg" />
330 331 <Content Include="content\images\DA\ethnicity\body-views\9\W\navigator_images\da_oi_99.jpg" />
331 332 <Content Include="content\images\DA\ethnicity\body-views\9\W\thumbnails\da_tni_3343_W.jpg" />
  333 + <Content Include="content\images\Highlight-bulb.png" />
332 334 <Content Include="content\images\LE\qz_dat_ca\CA-01.JPG" />
333 335 <Content Include="content\images\LE\qz_dat_ca\CA-01_wt.JPG" />
334 336 <Content Include="content\images\LE\qz_dat_ca\CA-02.JPG" />
... ... @@ -43220,6 +43222,10 @@
43220 43222 <Content Include="libs\videogular\vg-controls.min.js" />
43221 43223 <Content Include="libs\videogular\videogular.js" />
43222 43224 <Content Include="libs\videogular\videogular.min.js" />
  43225 + <Content Include="libs\video_4_12_11\css\font\vjs.svg" />
  43226 + <Content Include="libs\video_4_12_11\img\frameaccuracy_logo.jpg" />
  43227 + <Content Include="libs\video_4_12_11\img\video-js.png" />
  43228 + <Content Include="libs\video_4_12_11\video_4_12_11.js" />
43223 43229 <Content Include="libs\worker.js" />
43224 43230 <Content Include="login.html" />
43225 43231 <Content Include="app\widget\MainView.html" />
... ... @@ -43304,6 +43310,29 @@
43304 43310 <Content Include="content\data\json\le\qz_dat_rp.json" />
43305 43311 <Content Include="content\data\json\le\qz_dat_rs.json" />
43306 43312 <Content Include="content\data\json\le\qz_dat_sk.json" />
  43313 + <Content Include="content\data\json\settings\fontstyle.json" />
  43314 + <Content Include="content\data\vtt\200003.vtt" />
  43315 + <Content Include="content\data\vtt\200008.vtt" />
  43316 + <Content Include="content\data\vtt\200011.vtt" />
  43317 + <Content Include="content\data\vtt\200019.vtt" />
  43318 + <Content Include="content\data\vtt\200022.vtt" />
  43319 + <Content Include="content\data\vtt\200057.vtt" />
  43320 + <Content Include="content\data\vtt\200061.vtt" />
  43321 + <Content Include="content\data\vtt\200071.vtt" />
  43322 + <Content Include="content\data\vtt\200072.vtt" />
  43323 + <Content Include="content\data\vtt\200076.vtt" />
  43324 + <Content Include="content\data\vtt\200077.vtt" />
  43325 + <Content Include="content\data\vtt\200079.vtt" />
  43326 + <Content Include="content\data\vtt\200080.vtt" />
  43327 + <Content Include="content\data\vtt\200083.vtt" />
  43328 + <Content Include="content\data\vtt\200088.vtt" />
  43329 + <Content Include="content\data\vtt\200091.vtt" />
  43330 + <Content Include="content\data\vtt\200103.vtt" />
  43331 + <Content Include="content\data\vtt\200139.vtt" />
  43332 + <Content Include="content\data\vtt\200140.vtt" />
  43333 + <Content Include="libs\video_4_12_11\css\font\vjs.eot" />
  43334 + <Content Include="libs\video_4_12_11\css\font\vjs.ttf" />
  43335 + <Content Include="libs\video_4_12_11\css\font\vjs.woff" />
43307 43336 <None Include="Web.Debug.config">
43308 43337 <DependentUpon>Web.config</DependentUpon>
43309 43338 </None>
... ...
400-SOURCECODE/AIAHTML5.Web/Web.config
... ... @@ -42,6 +42,7 @@
42 42 <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
43 43 <mimeMap fileExtension=".json" mimeType="application/json" />
44 44 <mimeMap fileExtension=".mp3" mimeType="audio/mpeg" />
  45 + <mimeMap fileExtension=".vtt" mimeType="text/vtt"/>
45 46 <!--<mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />-->
46 47  
47 48  
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/CAController.js
1   -AIA.controller("CAController", ["$scope", "$window", "$rootScope", "$compile", "$http", "$log", "$location", "pages", "BodyRegions", "BodySystems", "MedicalSpecialties", "DataService",
2   -function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, BodyRegions, BodySystems, MedicalSpecialties, DataService) {
  1 +AIA.controller("CAController", ["$scope", "$window", "$rootScope", "$compile", "$http", "$log", "$location", "$timeout", "pages", "BodyRegions", "BodySystems", "MedicalSpecialties", "DataService",
  2 +function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout, pages, BodyRegions, BodySystems, MedicalSpecialties, DataService) {
3 3 $rootScope.currentActiveModuleTitle = pages[4].name;
4 4 $scope.showme = true;
5 5 $scope.AnimationData;
... ... @@ -12,6 +12,8 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
12 12 $scope.SelectedCAImage = [];
13 13 $scope.SelectedCASummary = [];
14 14 $scope.filterstring = false;
  15 + $scope.hostedServer = "http://aia5.adam.com/graphics/Multimedia/en/";
  16 + $scope.hostedFolderId;
15 17 $scope.query = {
16 18 selectedbodyregion: '',
17 19 selectedbodysystem: '',
... ... @@ -45,7 +47,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
45 47 }
46 48  
47 49 var curBodyRegion = localStorage.getItem("CACurBodyRegion");
48   - if (typeof (curBodyRegion) !== "undefined" && curBodyRegion !== null && curBodyRegion !=='') {
  50 + if (typeof (curBodyRegion) !== "undefined" && curBodyRegion !== null && curBodyRegion !== '') {
49 51 $scope.query.selectedbodyregion = curBodyRegion;
50 52 }
51 53 else {
... ... @@ -53,7 +55,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
53 55 }
54 56  
55 57 var curBodySystem = localStorage.getItem("CACurBodySystem");
56   - if (typeof (curBodySystem) !== "undefined" && curBodySystem !== null && curBodySystem !=='') {
  58 + if (typeof (curBodySystem) !== "undefined" && curBodySystem !== null && curBodySystem !== '') {
57 59 $scope.query.selectedbodysystem = curBodySystem;
58 60 }
59 61 else {
... ... @@ -69,7 +71,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
69 71 }
70 72  
71 73  
72   - if ($scope.query.selectedbodyregion == "" && $scope.query.selectedbodysystem == "" && $scope.query.selectedspecialty == "") {
  74 + if ($scope.query.selectedbodyregion == "" && $scope.query.selectedbodysystem == "" && $scope.query.selectedspecialty == "") {
73 75 $scope.loadAllCA();
74 76 }
75 77 else {
... ... @@ -206,7 +208,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
206 208 while ($scope.searchCAListViewData.length) {
207 209 $scope.searchCAListViewData.pop();
208 210 }
209   -
  211 +
210 212 $scope.loadAllCA();
211 213  
212 214 }
... ... @@ -268,7 +270,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
268 270 var count = 0;
269 271  
270 272  
271   - if (typeof (query.selectedbodyregion) !== "undefined" && query.selectedbodyregion !== null && query.selectedbodyregion !== "") {
  273 + if (typeof (query.selectedbodyregion) !== "undefined" && query.selectedbodyregion !== null && query.selectedbodyregion !== "") {
272 274 var posbodyregion = value._BodyRegion.indexOf((query.selectedbodyregion.trim()));
273 275 if (posbodyregion > -1) {
274 276 selectimg = true;
... ... @@ -282,7 +284,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
282 284  
283 285 }
284 286  
285   - if (typeof (query.selectedbodysystem) !== "undefined" && query.selectedbodysystem !== null && query.selectedbodysystem !=="") {
  287 + if (typeof (query.selectedbodysystem) !== "undefined" && query.selectedbodysystem !== null && query.selectedbodysystem !== "") {
286 288 var posbodysystem = value._BodySystem.indexOf(query.selectedbodysystem);
287 289 if (posbodysystem > -1) {
288 290 count = count + 1;
... ... @@ -293,7 +295,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
293 295 }
294 296 }
295 297  
296   - if (typeof (query.selectedspecialty) !== "undefined" && query.selectedspecialty !== null && query.selectedspecialty !=="") {
  298 + if (typeof (query.selectedspecialty) !== "undefined" && query.selectedspecialty !== null && query.selectedspecialty !== "") {
297 299 var posspeciality = value._MedicalSpecialty.indexOf(query.selectedspecialty);
298 300 if (posspeciality > -1) {
299 301 count = count + 1;
... ... @@ -369,7 +371,8 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
369 371  
370 372  
371 373 $scope.openView = function ($event) {
372   -
  374 + $rootScope.disableAnnotationTBFn();
  375 +
373 376 $rootScope.currentBodyViewId = $event.currentTarget.id;
374 377 if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
375 378 var CITitle = [];
... ... @@ -398,9 +401,14 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
398 401 //console.log($location.url('/clinical-animations-detail'));
399 402  
400 403 }
401   -
  404 +
402 405 $scope.openBodyView = function () {
403   -
  406 +
  407 + if ($rootScope.disableAnnotationTB == true)
  408 + {
  409 + $('#AnnotaionPopupDiv').find('input, textarea, button, select,img,div').attr('disabled', 'disabled');
  410 + $('#slider-range-min-2').slider('disable');
  411 + }
404 412 $rootScope.isLoading = true;
405 413 $('#spinner').css('visibility', 'visible');
406 414 $scope.voId = localStorage.getItem("currentBodyViewId");
... ... @@ -444,16 +452,25 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
444 452 $scope.AnimationData = result;
445 453 $scope.CAlistViewData = $scope.AnimationData.root.CAData;
446 454  
447   - var clickedCAVideo = [];
448   - clickedCAVideo = new jinqJs()
449   - .from($scope.CAlistViewData)
450   - .where('_id == ' + $scope.voId)
451   - .select('_Video','_LowerSummary');
452   -
453   - $scope.clickedCAVideo = clickedCAVideo[0]._Video;
454   - $scope.clickedCASummary = clickedCAVideo[0]._LowerSummary
455   -
456   - if ($scope.clickedCAVideo.length > 0 && $scope.clickedCASummary.length > 0) {
  455 + var clickedCAVideo = [];
  456 + clickedCAVideo = new jinqJs()
  457 + .from($scope.CAlistViewData)
  458 + .where('_id == ' + $scope.voId)
  459 + .select('_Video', '_LowerSummary', '_HostedFolderId');
  460 +
  461 + $scope.clickedCAVideo = clickedCAVideo[0]._Video;
  462 + $scope.clickedCASummary = clickedCAVideo[0]._LowerSummary;
  463 + $scope.hostedFolderId = clickedCAVideo[0]._HostedFolderId;
  464 + $scope.poster = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + ".jpg";
  465 + $scope.ad = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + "_ad.mp4";
  466 + $scope.HDVid = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + "_HD.mp4";
  467 + $scope.webm = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + ".webm";
  468 + $scope.ogv = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + ".ogv";
  469 + $scope.playerScript = "~/../libs/video_4_12_11/video_4_12_11.js";
  470 + //$scope.vtt = $scope.hostedServer + $scope.hostedFolderId + "/" + $scope.hostedFolderId + ".vtt"
  471 + $scope.vtt = "~/../content/data/vtt/" + $scope.hostedFolderId + ".vtt";
  472 + console.log($scope.vtt);
  473 + if ($scope.clickedCAVideo.length > 0 && $scope.clickedCASummary.length > 0) {
457 474  
458 475 $rootScope.isLoading = false;
459 476 $('#spinner').css('visibility', 'hidden');
... ... @@ -464,10 +481,22 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
464 481 theme: 'success',
465 482 currentController: 'CAController',
466 483 parentSlug: 'clinical-animations',
467   - content: '<div class="row"><div class="col-sm-12" align="center"><video style="height:80%;" controls>' +
468   - '<source loop autoplay controls="true" src="' + $scope.clickedCAVideo + '" type="video/mp4" />Your browser does not support HTML5 video.</video><div class="col-sm-12 well">' +
469   - '<div id="sid" align="left" style="height:40px;overflow-y:scroll !important"><p>' + $scope.clickedCASummary + '</p></div><button id="btnTxtOnOff" class="btn btn-primary pull-right">Text Off</button>' +
470   - '<script>$(document).ready(function(){$("#btnTxtOnOff").click(function(){$("#sid").toggle();if($.trim($(this).text()) === "Text Off"){$(this).text("Text On");}else{$(this).text("Text Off");}});});</script></div></div>',
  484 + content: '<script src="' + $scope.playerScript + '"></script><script>$(document).ready(function(){videojs("#playerinlineVideo").pause();$("#btnTxtOnOff").click(function(){$("#sid").toggle();if($.trim($(this).text()) === "Text Off"){$(this).text("Text On");}else{$(this).text("Text Off");}});});</script><div id="pid" class="row"><div id="divplayerinlineVideo" class="col-sm-12" align="center" width="640" height="480"><video width="640" height="360"' +
  485 + 'class="ADAM_Video video-js vjs-default-skin vjs-big-play-centered" type="$videoType" id="playerinlineVideo"' +
  486 + ' poster="' + $scope.poster + '"' +
  487 + 'controls="true" preload="none" allowfullscreen="true" allowscriptaccess="always" ' +
  488 + ' ad="' + $scope.ad + '"' +
  489 + ' nonad="' + $scope.clickedCAVideo + '"' +
  490 + ' hd="' + $scope.HDVid + '" ' +
  491 + ' nonhd="' + $scope.clickedCAVideo + '">' +
  492 + ' <source type="video/mp4" src="' + $scope.clickedCAVideo + '">' +
  493 + ' <source type="video/webm" src="' + $scope.webm + '">' +
  494 + ' <source type="video/ogv" src="' + $scope.ogv + '">' +
  495 + ' <track src="' + $scope.vtt + '" ' +
  496 + ' kind="captions" srclang="en" label="On"><object width="640" height="360"' +
  497 + ' type="application/x-shockwave-flash" data="//vjs.zencdn.net/3.2/video-js.swf"><param name="allowfullscreen" value="true">' +
  498 + ' <param name="allowscriptaccess" value="always"><param name="movie" value="//vjs.zencdn.net/3.2/video-js.swf">' +
  499 + ' <param name="flashvars" ng-value="controls=true&amp;file=' + $scope.clickedCAVideo + '"><img ng-src="content/images/common/player/frameaccuracy_logo.jpg" style="height:80%;" alt="Here we are" title="No video playback capabilities"></object></video><div class="col-sm-12 well"><div id="sid" align="left" style="height:40px;overflow-y:scroll !important"><p>' + $scope.clickedCASummary + '</p></div><button id="btnTxtOnOff" class="btn btn-primary pull-right">Text Off</button></div></div></div>',
471 500  
472 501 //ajax: {
473 502 // url: 'app/views/ca/ca-view-detail.html'
... ... @@ -477,11 +506,12 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
477 506 top: 70,
478 507 left: 1,
479 508 },
480   -
481   - size: { width: $(window).outerWidth() - 10, height: $(window).outerHeight()},
  509 +
  510 + size: { width: $(window).outerWidth() - 10, height: $(window).outerHeight() },
482 511  
483 512 });
484 513  
  514 +
485 515 $rootScope.currentSlug = 'clinical-animations-detail';
486 516  
487 517 $rootScope.openViews.push(
... ... @@ -490,7 +520,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
490 520 "slug": $rootScope.currentSlug
491 521 });
492 522  
493   - }
  523 + }
494 524  
495 525  
496 526 },
... ... @@ -508,6 +538,12 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, pages, B
508 538  
509 539 }
510 540  
  541 + $scope.loadCAPlayer = function (summary, link, vidNumber) {
  542 + $scope.clickedCASummary = summary;
  543 + $scope.clickedCAVideo = link;
  544 + $scope.videoNumber = vidNumber;
  545 + };
  546 +
511 547  
512 548 }]
513 549  
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/CIController.js
... ... @@ -140,7 +140,7 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
140 140 .orderBy([{ field: '_Title', sort: 'asc' }])
141 141 .select();
142 142  
143   - console.log($scope.selectedCIListViewData);
  143 + // console.log($scope.selectedCIListViewData);
144 144 $('#grid-view').empty();
145 145 angular.forEach($scope.selectedCIListViewData, function (value, key) {
146 146 $scope.imagePath = "~/../content/images/ci/thumbnails/" + value._ThumbnailImage;
... ... @@ -429,8 +429,10 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
429 429 $("html,body").scrollTop(0);
430 430 }
431 431  
  432 +
432 433 $scope.openView = function ($event) {
433   -
  434 + $rootScope.disableAnnotationTB = false;
  435 + $rootScope.CIAnotationIdentifyModeOff = true;
434 436 $rootScope.currentBodyViewId = $event.currentTarget.id;
435 437 if ($event.currentTarget.textContent !== null && typeof ($event.currentTarget.textContent) !== "undefined") {
436 438 var CITitle = [];
... ... @@ -532,7 +534,8 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
532 534 theme: 'success',
533 535 currentController: 'CIController',
534 536 parentSlug: 'clinical-illustrations',
535   - content: '<div class="row"><div class="col-sm-12 img-thumbnail" align="center">' +
  537 + content: '<div class="row"><div style="align:left;width:100%;height:100%"><canvas id="canvas" ng-click="BindCanvasDrawingListners($event)" width="1369" height="325" class="canvas-annotationStyle" style="position: absolute; background-color: transparent;z-index:1 "></canvas></div> <canvas id="canvasPaint" ng-click="FreeStylePaint($event)" width="1369" height="325" class="canvas-annotationStyle1" style="position: absolute;z-index:0;"></canvas>' +
  538 + '<div class="col-sm-12 img-thumbnail" align="center">' +
536 539 '<img src="' + $scope.clickedCIImage + '" alt="" title="" class="img-responsive "><div class="col-sm-12 well">' +
537 540 '<div align="left" id="sid"><p>' + $scope.clickedCISummary + '</p></div><button id="btnTxtOnOff" class="btn btn-primary pull-right">Text Off</button>' +
538 541 '<script>$(document).ready(function(){$("#btnTxtOnOff").click(function(){$("#sid").toggle();if($.trim($(this).text()) === "Text Off"){$(this).text("Text On");}else{$(this).text("Text Off");}});});</script></div>' +
... ... @@ -576,8 +579,20 @@ function ($scope, $window, $rootScope, $compile, $http, log, $location, $timeout
576 579 $('#CIView').css("width", $(window).outerWidth());
577 580  
578 581 }
579   -
580   -
  582 +
  583 + $scope.$on('annotationToolEvent', function (event, data) {
  584 +
  585 + $('#editstylebackgroundcolor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(255,255,255)")
  586 + $('#editstylebackgroundcolor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" });
  587 + $('#outlineColor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(0,0,0)")
  588 + $('#outlineColor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" });
  589 +
  590 + $("#canvas").css("display", "block");
  591 + $("#canvasPaint").css("display", "block");
  592 +
  593 + $rootScope.BindCanvasDrawingListners();
  594 + // $rootScope.FreeStylePaint();
  595 + });
581 596  
582 597 }]
583 598  
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/DAController.js
... ... @@ -265,7 +265,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
265 265  
266 266  
267 267 $scope.openView = function ($event) {
268   -
  268 + $rootScope.disableAnnotationTB = false;
269 269 $rootScope.isLoading = true;
270 270 $('#spinner').css('visibility', 'visible');
271 271  
... ... @@ -438,23 +438,25 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
438 438 }
439 439  
440 440 // 0.2 getting corresponding body view title
441   - var counter = 1;
  441 + //var counter = 1;
442 442 var tittle = localStorage.getItem("currentViewTitleFromJson");
  443 + localStorage.setItem("currentViewTitle", tittle);
443 444  
444   - if (openViews != null && openViews != undefined) {
445   - angular.forEach(openViews, function (value, key) {
  445 + //WILL BE USED WHEN MULTI VIEWOPEN FUNCTIONALITY IS IMPELMNETD
  446 + //if (openViews != null && openViews != undefined) {
  447 + // angular.forEach(openViews, function (value, key) {
446 448  
447   - if (value.bodyView == tittle) {
448   - tittle = localStorage.getItem("currentViewTitleFromJson") + counter++;
449   - $rootScope.currentActiveViewTitle = tittle;
450   - localStorage.setItem("currentViewTitle", tittle);
451   - }
  449 + // if (value.bodyView == tittle) {
  450 + // tittle = localStorage.getItem("currentViewTitleFromJson") + counter++;
  451 + // $rootScope.currentActiveViewTitle = tittle;
  452 + // localStorage.setItem("currentViewTitle", tittle);
  453 + // }
452 454  
453   - });
454   - }
455   - else {
456   - localStorage.setItem("currentViewTitle", tittle);
457   - }
  455 + // });
  456 + //}
  457 + //else {
  458 + // localStorage.setItem("currentViewTitle", tittle);
  459 + //}
458 460  
459 461 //0.3
460 462  
... ... @@ -468,6 +470,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
468 470 url: 'app/views/da/da-view.html'
469 471 },
470 472 title: localStorage.getItem("currentViewTitle"),
  473 +
471 474 position: {
472 475 top: 70,
473 476 left: 1,
... ... @@ -735,6 +738,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
735 738 //calculate coordinates for body region images
736 739 $scope.CalculateImageCordinates = function (viewOrientationId) {
737 740  
  741 + $rootScope.isLoading = true;
  742 + $('#spinner').css('visibility', 'visible');
  743 +
738 744 // annotation toolbar canvas
739 745 if ($("#canvasDiv").find("canvas[id='canvasPaint']").length == 0) {
740 746  
... ... @@ -744,6 +750,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
744 750  
745 751 }
746 752  
  753 +
  754 +
747 755 $scope.terminateCurrentlyRunningWPs();
748 756  
749 757 var drawnBodyRegionCount = [];
... ... @@ -948,8 +956,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
948 956  
949 957 });
950 958  
951   - $rootScope.isLoading = false;
952   - $('#spinner').css('visibility', 'hidden');
  959 + //$rootScope.isLoading = false;
  960 + //$('#spinner').css('visibility', 'hidden');
953 961 }
954 962  
955 963 if (($rootScope.globalSetting.modesty == 'Y')) {
... ... @@ -1205,6 +1213,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1205 1213  
1206 1214 $scope.DrawMirroredImage = function (h, w, x, y, src, bodyRegionId, isMaskImage) {
1207 1215  
  1216 + $rootScope.isLoading = true;
  1217 + $('#spinner').css('visibility', 'visible');
  1218 +
1208 1219 var FlipedImgCanvas = document.createElement('canvas');
1209 1220 FlipedImgCanvas.height = h;
1210 1221 FlipedImgCanvas.width = w;
... ... @@ -1492,7 +1503,6 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1492 1503  
1493 1504 // console.log('$rootScope.isListManagerSelected= ' + $rootScope.isListManagerSelected + ' length= ' + $scope.ColoredImageSRC.length)
1494 1505  
1495   -
1496 1506 if (($scope.ColoredImageSRC != null || $scope.ColoredImageSRC != undefined)) {
1497 1507  
1498 1508 if ((($rootScope.viewOrientationId == '1') || ($rootScope.viewOrientationId == '4')) && ($scope.ColoredImageSRC.length == 9)) {
... ... @@ -1517,7 +1527,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1517 1527 $('#spinner').css('visibility', 'visible');
1518 1528 $scope.highLightBody();
1519 1529 }
1520   - else if ($rootScope.isHighLight == true || ($rootScope.isListManagerSelected == true) || (($rootScope.isGenderChnage == true) && ($rootScope.isHighLight == true)) || (($rootScope.isViewChange == true) && ($rootScope.isHighLight == true)) || $rootScope.isHighlightBodyByBodySystem == true) {
  1530 + else if ($rootScope.isHighLight == true || ($rootScope.isListManagerSelected == true) || (($rootScope.isGenderChnage == true) && ($rootScope.isHighLight == true))
  1531 + || (($rootScope.isViewChange == true) && ($rootScope.isHighLight == true)) || $rootScope.isHighlightBodyByBodySystem == true) {
1521 1532  
1522 1533 console.log('1. $rootScope.isHighLight= ' + $rootScope.isHighLight)
1523 1534  
... ... @@ -1532,6 +1543,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1532 1543 //}, 500);
1533 1544 }
1534 1545 }
  1546 + else {
  1547 + $rootScope.isLoading = false;
  1548 + $('#spinner').css('visibility', 'hidden');
  1549 + }
1535 1550 }
1536 1551  
1537 1552 // console.log('ColoredImageSRC. pushed and length: ' + $scope.ColoredImageSRC.length);
... ... @@ -1564,6 +1579,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1564 1579  
1565 1580 $scope.DrawImage = function (h, w, x, y, src, bodyRegionId, isMaskImage) {
1566 1581  
  1582 + $rootScope.isLoading = true;
  1583 + $('#spinner').css('visibility', 'visible');
  1584 +
1567 1585 var imgCanvas = document.createElement('canvas');
1568 1586  
1569 1587 imgCanvas.height = h;
... ... @@ -1848,6 +1866,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1848 1866 $rootScope.coloredImageCanvasList[parseInt(bodyRegionId - 1)] = coloredImageDataVar;
1849 1867 }
1850 1868 //
  1869 +
1851 1870  
1852 1871 if (($scope.ColoredImageSRC != null || $scope.ColoredImageSRC != undefined)) {
1853 1872  
... ... @@ -1875,7 +1894,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1875 1894 $('#spinner').css('visibility', 'visible');
1876 1895 $scope.highLightBody();
1877 1896 }
1878   - else if ($rootScope.isHighLight == true || ($rootScope.isListManagerSelected == true) || (($rootScope.isGenderChnage == true) && ($rootScope.isHighLight == true)) || (($rootScope.isViewChange == true) && ($rootScope.isHighLight == true)) || $scope.isExtract == true || $rootScope.isHighlightBodyByBodySystem == true) {
  1897 + else if ($rootScope.isHighLight == true || ($rootScope.isListManagerSelected == true) || (($rootScope.isGenderChnage == true) && ($rootScope.isHighLight == true))
  1898 + || (($rootScope.isViewChange == true) && ($rootScope.isHighLight == true)) || $scope.isExtract == true || $rootScope.isHighlightBodyByBodySystem == true) {
1879 1899  
1880 1900 console.log('2. $rootScope.isHighLight= ' + $rootScope.isHighLight)
1881 1901  
... ... @@ -1893,6 +1913,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1893 1913  
1894 1914 }
1895 1915 }
  1916 + else {
  1917 + $rootScope.isLoading = false;
  1918 + $('#spinner').css('visibility', 'hidden');
  1919 + }
1896 1920 }
1897 1921  
1898 1922 console.log('ColoredImageSRC. pushed and length: ' + $scope.ColoredImageSRC.length);
... ... @@ -1943,18 +1967,61 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1943 1967 $scope.HighlightBodyOnExtract = function () {
1944 1968 console.log(' insode HighlightBodyOnExtract. $rootScope.MaskCanvasData length= ' + $rootScope.MaskCanvasData.length + ', $rootScope.previousHighlightList.length= ' + $rootScope.previousHighlightList.length)
1945 1969  
  1970 +
  1971 + $("#btnExtract").removeClass("btn-black");
  1972 + $("#btnExtract").addClass("btn-primary");
  1973 +
  1974 +
  1975 + if ($("#btnNormalMode").hasClass("btn-primary")) {
  1976 + $("#btnNormalMode").removeClass("btn-primary");
  1977 + $("#btnNormalMode").addClass("btn-black");
  1978 + }
  1979 +
  1980 + if ($("#btnHighLight").hasClass("btn-primary")) {
  1981 + $("#btnHighLight").removeClass("btn-primary");
  1982 + $("#btnHighLight").addClass("btn-black");
  1983 + }
  1984 +
  1985 +
  1986 + //terminate previous running workers to create space for new workers
  1987 + $scope.layerNumber = $('#txtlayerNumber').val();
  1988 + $scope.terminateCurrentlyRunningWPs();
  1989 +
1946 1990 var multiTermList = [];
1947 1991 var CallBackBodyRegion = [];
  1992 + var selectedAnnotation;
  1993 +
  1994 + if (($rootScope.previousHighlightList != null || $rootScope.previousHighlightList != undefined) && ($rootScope.previousHighlightList.length > 0) && $rootScope.isListManagerSelected) {
  1995 +
  1996 + multiTermList = $scope.AllTerms;
  1997 + angular.forEach($rootScope.previousHighlightList, function (value, key) {
  1998 +
  1999 + var ActualTermNo = $scope.getActualTermNumber(value);
  2000 + selectedAnnotation = ActualTermNo;
  2001 + if (ActualTermNo != null) {
  2002 + var TermList = $scope.getTermNumberList(ActualTermNo);
  2003 + if (TermList != null) {
  2004 + for (var i = 0; i < TermList.length; i++) {
  2005 + multiTermList.push(TermList[i]);
  2006 + }
  2007 + }
  2008 + }
  2009 +
  2010 + // to do
  2011 + });
  2012 + }
1948 2013  
1949 2014 if ($rootScope.isListManagerSelected) {
1950 2015  
1951 2016 multiTermList = $scope.AllTerms;
  2017 + selectedAnnotation = $rootScope.actualTermNumber;
1952 2018  
1953 2019 }
1954 2020 else if (($rootScope.previousHighlightList != null || $rootScope.previousHighlightList != undefined) && ($rootScope.previousHighlightList.length > 0)) {
1955 2021 angular.forEach($rootScope.previousHighlightList, function (value, key) {
1956 2022  
1957 2023 var ActualTermNo = $scope.getActualTermNumber(value);
  2024 + selectedAnnotation = ActualTermNo;
1958 2025 if (ActualTermNo != null) {
1959 2026 var TermList = $scope.getTermNumberList(ActualTermNo);
1960 2027 if (TermList != null) {
... ... @@ -1968,16 +2035,12 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1968 2035 });
1969 2036 }
1970 2037  
1971   - //2. Find Actul Term No Based on Icolor.
1972   - //var ActualTermNo = $scope.getActualTermNumber(RGBColor);
1973   -
1974   - ////3. Find Term No List Based on ActualTermNo
1975   - //var TermList = $scope.getTermNumberList(ActualTermNo);
  2038 + //get term list to get term coordinates
  2039 + $scope.TermList = $scope.getTermNumberList(selectedAnnotation);
1976 2040  
1977   -
1978   - //terminate previous running workers to create space for new workers
1979   - $scope.layerNumber = $('#txtlayerNumber').val();
1980   - $scope.terminateCurrentlyRunningWPs();
  2041 + $scope.termCoordinate = $scope.getTermCoordinate(selectedAnnotation);
  2042 +
  2043 +
1981 2044  
1982 2045 $timeout(function () {
1983 2046  
... ... @@ -2076,7 +2139,6 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2076 2139  
2077 2140 grayCanvasContext.putImageData(updatedData, 0, 0);
2078 2141  
2079   -
2080 2142 //to resolve lateral arm black issue in highlight mode
2081 2143  
2082 2144 if ($rootScope.viewOrientationId == 5 && (bodyRegionId == 6 || bodyRegionId == 4)) {
... ... @@ -2098,6 +2160,22 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2098 2160 grayCanvasContext.putImageData(imgData, 0, 0);
2099 2161 }
2100 2162  
  2163 + CallBackBodyRegion.push(bodyRegionId);
  2164 +
  2165 + $scope.doAligneCanvasWithTerm = false;
  2166 + if ((($rootScope.viewOrientationId == '1') || ($rootScope.viewOrientationId == '4')) && (CallBackBodyRegion.length == 9)) {
  2167 + $scope.doAligneCanvasWithTerm = true;
  2168 + }
  2169 + else if ((($rootScope.viewOrientationId == '2') || ($rootScope.viewOrientationId == '3')) && (CallBackBodyRegion.length == 5)) {
  2170 + $scope.doAligneCanvasWithTerm = true;
  2171 + }
  2172 + else if ((($rootScope.viewOrientationId == '5')) && (CallBackBodyRegion.length == 1)) {
  2173 + $scope.doAligneCanvasWithTerm = true;
  2174 + }
  2175 + else if ((($rootScope.viewOrientationId == '6')) && (CallBackBodyRegion.length == 1)) {
  2176 + $scope.doAligneCanvasWithTerm = true;
  2177 + }
  2178 +
2101 2179  
2102 2180 if ($rootScope.multiAnnotationIsON == true) {
2103 2181  
... ... @@ -2125,9 +2203,14 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2125 2203 // }
2126 2204 //}
2127 2205  
  2206 + if ($scope.doAligneCanvasWithTerm == true) {
  2207 + $scope.aligneCanvasWithTerm()
  2208 + }
2128 2209  
2129   - $timeout(function () { $scope.DisableProgressBar() }, 1000);
  2210 + // $timeout(function () { $scope.DisableProgressBar() }, 1000);
  2211 +
2130 2212  
  2213 +
2131 2214 };
2132 2215 worker.onerror = function (e) {
2133 2216 alert('Error: Line ' + e.lineno + ' in ' + e.filename + ': ' + e.message);
... ... @@ -2358,16 +2441,19 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2358 2441  
2359 2442 if ($scope.doAligneCanvasWithTerm == true) {
2360 2443  
2361   - if ($rootScope.isHighlightBodyByBodySystem == true || $rootScope.isListManagerSelected == true)
  2444 + if ($rootScope.isListManagerSelected == true)
  2445 + $scope.aligneCanvasWithTerm();
  2446 +
  2447 + else if ($rootScope.isHighlightBodyByBodySystem == true || $rootScope.isListManagerSelected == true) {
2362 2448  
2363 2449 $rootScope.isLoading = false;
2364 2450  
2365   - $('#spinner').css('visibility', 'hidden');
  2451 + $('#spinner').css('visibility', 'hidden');
  2452 + }
2366 2453  
2367 2454 // $rootScope.isHighlightBodyByBodySystem = false;
2368 2455  
2369   - if ($rootScope.isListManagerSelected == true)
2370   - $scope.aligneCanvasWithTerm();
  2456 +
2371 2457 }
2372 2458 }
2373 2459 //
... ... @@ -2468,6 +2554,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2468 2554 //send actual term no to get the term text.
2469 2555 actualTermNo = $scope.matchedTermNoData[0]._ActualTermNumber;
2470 2556 annotationText = $scope.GetAnnotationBasedOnActualTermNo(actualTermNo);
  2557 + $rootScope.actualTermNumber = actualTermNo;
2471 2558 break;
2472 2559 };
2473 2560  
... ... @@ -2534,7 +2621,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2534 2621  
2535 2622  
2536 2623 if ($scope.isTransparencyActivated) {
2537   -
  2624 +
2538 2625 //crete temp canavs to store the original data which will be used to chnange the transparency
2539 2626 if (document.getElementById('tempCanvas') != null) {
2540 2627 $('#tempCanvas').remove();
... ... @@ -2559,46 +2646,48 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2559 2646  
2560 2647  
2561 2648 var tCanvas = document.getElementById('transparencyCanvas');
2562   - var tCanvasContext = tCanvas.getContext('2d');
  2649 +
  2650 + var tCanvasContext = tCanvas.getContext('2d');
2563 2651  
2564   - var tCanvasHeight = parseInt((tCanvas.style.height).replace('px', ''));
  2652 + var tCanvasHeight = parseInt((tCanvas.style.height).replace('px', ''));
2565 2653  
2566   - var tCanvasWidth = parseInt((tCanvas.style.width).replace('px', ''));
  2654 + var tCanvasWidth = parseInt((tCanvas.style.width).replace('px', ''));
2567 2655  
2568 2656  
2569   - // var tCanvas = document.getElementById('transparencyCanvas');
2570   - if (tCanvas != null) {
2571   - clearTransCanvas();
2572   - }
2573   - var TransparencyBoxStartX = parseInt((tCanvas.style.left).replace('px', ''));
2574   - var TransparencyEndX = parseInt((tCanvas.style.left).replace('px', '')) + parseInt((tCanvas.style.width.replace('px', '')));
2575   - var TransparencyBoxStartY = parseInt((tCanvas.style.top).replace('px', ''));
2576   - var TransparencyBoxEndY = parseInt((tCanvas.style.top).replace('px', '')) + parseInt((tCanvas.style.height).replace('px', ''));
2577   - var transparencyBoxBottom = parseInt(TransparencyBoxStartY) + parseInt(tCanvasHeight);
2578   - var transparencyBoxRight = parseInt(TransparencyBoxStartX) + parseInt(tCanvasWidth);
  2657 + // var tCanvas = document.getElementById('transparencyCanvas');
  2658 + if (tCanvas != null) {
  2659 + clearTransCanvas();
  2660 + }
  2661 + var TransparencyBoxStartX = parseInt((tCanvas.style.left).replace('px', ''));
  2662 + var TransparencyEndX = parseInt((tCanvas.style.left).replace('px', '')) + parseInt((tCanvas.style.width.replace('px', '')));
  2663 + var TransparencyBoxStartY = parseInt((tCanvas.style.top).replace('px', ''));
  2664 + var TransparencyBoxEndY = parseInt((tCanvas.style.top).replace('px', '')) + parseInt((tCanvas.style.height).replace('px', ''));
  2665 + var transparencyBoxBottom = parseInt(TransparencyBoxStartY) + parseInt(tCanvasHeight);
  2666 + var transparencyBoxRight = parseInt(TransparencyBoxStartX) + parseInt(tCanvasWidth);
2579 2667  
2580   - var BodyRegionDictionary = $rootScope.BodyRegionCordinatesData;
  2668 + var BodyRegionDictionary = $rootScope.BodyRegionCordinatesData;
2581 2669  
2582   - $.each(BodyRegionDictionary, function (index, value) {
2583   - //debugger;
2584   - // alert(' $.each(BodyRegionDictionary1')
  2670 + $.each(BodyRegionDictionary, function (index, value) {
  2671 + //debugger;
  2672 + // alert(' $.each(BodyRegionDictionary1')
2585 2673  
2586   - var bodyRegionRight = parseInt(value.X) + parseInt(value.Width);
2587   - var bodyRegionBottom = parseInt(value.Y) + parseInt(value.Height);
  2674 + var bodyRegionRight = parseInt(value.X) + parseInt(value.Width);
  2675 + var bodyRegionBottom = parseInt(value.Y) + parseInt(value.Height);
2588 2676  
2589 2677  
2590   - // alert(' $.each(BodyRegionDictionary3. bodyRegionRight: ' + bodyRegionRight + ', bodyRegionBottom: ' + bodyRegionBottom)
2591   - if (TransparencyBoxStartX <= bodyRegionRight && value.X <= transparencyBoxRight && TransparencyBoxStartY <= bodyRegionBottom && value.Y <= transparencyBoxBottom) {
2592   - //var transNumber = parseInt(document.getElementById("txtTransparencyChange").value);
2593   - // debugger;
2594   - $scope.layerNumber = parseInt(txtlayerNumber.value);
  2678 + // alert(' $.each(BodyRegionDictionary3. bodyRegionRight: ' + bodyRegionRight + ', bodyRegionBottom: ' + bodyRegionBottom)
  2679 + if (TransparencyBoxStartX <= bodyRegionRight && value.X <= transparencyBoxRight && TransparencyBoxStartY <= bodyRegionBottom && value.Y <= transparencyBoxBottom) {
  2680 + //var transNumber = parseInt(document.getElementById("txtTransparencyChange").value);
  2681 + // debugger;
  2682 + $scope.layerNumber = parseInt(txtlayerNumber.value);
2595 2683  
2596 2684  
2597   - $scope.loadTransparencyImage(value.bodyRegionId, value.Height, value.Width, value.X, value.Y, value.IsMirror, TransparencyBoxStartX, transparencyBoxRight, TransparencyBoxStartY, transparencyBoxBottom, $scope, true, false);
2598   - }
  2685 + $scope.loadTransparencyImage(value.bodyRegionId, value.Height, value.Width, value.X, value.Y, value.IsMirror, TransparencyBoxStartX, transparencyBoxRight, TransparencyBoxStartY, transparencyBoxBottom, $scope, true, false);
  2686 + }
2599 2687  
2600 2688  
2601   - })
  2689 + })
  2690 +
2602 2691 }
2603 2692  
2604 2693 else {
... ... @@ -2851,8 +2940,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2851 2940  
2852 2941 var sppechBubbleDotHTML = '<div id="dot" style="position:absolute;height:15px;width:35px;display:none;z-index:10000;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);"></div>'
2853 2942 + '<div id="sppeachBubble" style="height:auto!important;z-index:10000;margin-left:25px;border:1px solid #000;display:none;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size:12px;background-color:#19100e;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;">'
2854   - + '<span style="position:absolute;right:0px;top:0px;color:#ffffff;cursor:pointer;">'
2855   - + '<img class="crossDiv_temp" src=' + $rootScope.path + '></span></div>'
  2943 + + '<span style="position:absolute;right:-3px;top:-4px;color:#ffffff;cursor:pointer;">'
  2944 + + '<img class="crossDiv_temp" style="width:18px" src=' + $rootScope.path + '></span></div>'
2856 2945  
2857 2946 + '<div style="position:absolute;border:1px solid #000;display:none;z-index:9000;" id="bord">'
2858 2947 + '</div>';
... ... @@ -2996,7 +3085,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
2996 3085 var Exists_annotation = $("#canvasDiv").find("div[id=" + pointClicked_annotation + "]").length;
2997 3086 // alert(Exists_annotation);
2998 3087 // alert(pointClicked_annotation);
2999   - var sppechBubbleHTML_annotation = "<div id ='" + pointClicked_annotation + "' class='com_anno'><div style='z-index:10000;position:absolute;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);height:15px;width:35px;left:" + (x - 10) + "px;top:" + (y + 10) + "px;'' id='bubble" + $scope.j + "'></div><div data=" + $scope.j + " id=" + sub_id_annotation + " class='appendDragg_annotation' style='z-index:10000;margin-left:25px;border:1px solid #000;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size: 12px;background-color:#19100e;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;left:" + x + "px;top:" + y + "px;'><div style='z-index:7000;position:absolute;right:0px;top:0px;color:#ffffff;cursor:pointer;'><img id=" + $scope.j + " class='dynCross_anno' src=" + $rootScope.path + "></div></div><div style='position:absolute;border:1px solid #000;display:none;z-index:9000;' id='bord_annotation" + $scope.j + "'></div></div>";
  3088 + var sppechBubbleHTML_annotation = "<div id ='" + pointClicked_annotation + "' class='com_anno'><div style='z-index:10000;position:absolute;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);height:15px;width:35px;left:" + (x - 10) + "px;top:" + (y + 10) + "px;'' id='bubble" + $scope.j + "'></div><div data=" + $scope.j + " id=" + sub_id_annotation + " class='appendDragg_annotation' style='z-index:10000;margin-left:25px;border:1px solid #000;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size: 12px;background-color:#19100e;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;left:" + x + "px;top:" + y + "px;'><div style='z-index:7000;position:absolute;right:-3px;top:-4px;color:#ffffff;cursor:pointer;'><img id=" + $scope.j + " class='dynCross_anno' style='width:18px' src=" + $rootScope.path + "></div></div><div style='position:absolute;border:1px solid #000;display:none;z-index:9000;' id='bord_annotation" + $scope.j + "'></div></div>";
3000 3089 if ($scope.longest_annotationT1.length > $scope.longest_annotationT2.length) {
3001 3090 if (Exists_annotation == 0) {
3002 3091 $("#canvasDiv").append(sppechBubbleHTML_annotation);
... ... @@ -3223,8 +3312,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3223 3312 $('.dynCross_anno').parent().parent().parent().remove();
3224 3313 var sppechBubbleDotHTML_annotation = '<div id="dot_annotation" style="position:absolute;height:15px;width:35px;display:none;z-index:10000;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);"></div>'
3225 3314 + '<div id="sppeachBubble_annotation" style="height:auto!important;z-index:10000;margin-left:25px;border:1px solid #000;display:none;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size:12px;background-color:#19100e;font-weight:bold;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;">'
3226   - + '<span style="position:absolute;right:0px;top:0px;color:#ffffff;cursor:pointer;">'
3227   - + '<img class="crossDiv_temp_annotation" src=' + $rootScope.path + '></span></div>'
  3315 + + '<span style="position:absolute;right:-3px;top:-4px;color:#ffffff;cursor:pointer;">'
  3316 + + '<img class="crossDiv_temp_annotation" style="width:18px" src=' + $rootScope.path + '></span></div>'
3228 3317  
3229 3318 + '<div style="position:absolute;border:1px solid #000;display:none;z-index:9000;" id="bord_annotation">'
3230 3319 + '</div>';
... ... @@ -3434,7 +3523,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3434 3523 }
3435 3524  
3436 3525 $scope.createSpeechBubbleBasedOnAnnotationLength = function (pointClicked, x, y, id) {
3437   - var sppechBubbleHTML = "<div id ='" + pointClicked + "' class='com'><div style='z-index:10000;position:absolute;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);height:15px;width:35px;left:" + (x - 10) + "px;top:" + (y + 10) + "px;'' id='bubble" + $scope.speechBubbleCounter + "'></div><div data=" + $scope.speechBubbleCounter + " id=" + id + " class='appendDragg' style='z-index:10000;margin-left:25px;border:1px solid #000;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size: 12px;font-weight:bold;background-color:#19100e;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;left:" + x + "px;top:" + y + "px;'><div style='z-index:7000;position:absolute;right:0px;top:0px;color:#ffffff;cursor:pointer;'><img id=" + $scope.speechBubbleCounter + " class='dynCross' src=" + $rootScope.path + "></div></div><div style='position:absolute;border:1px solid #000;display:none;z-index:9000;' id='bord" + $scope.speechBubbleCounter + "'></div></div>";
  3526 + var sppechBubbleHTML = "<div id ='" + pointClicked + "' class='com'><div style='z-index:10000;position:absolute;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);height:15px;width:35px;left:" + (x - 10) + "px;top:" + (y + 10) + "px;'' id='bubble" + $scope.speechBubbleCounter + "'></div><div data=" + $scope.speechBubbleCounter + " id=" + id + " class='appendDragg' style='z-index:10000;margin-left:25px;border:1px solid #000;padding:5px 10px;position:absolute;color:#fff;text-align:left;font-size: 12px;font-weight:bold;background-color:#19100e;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px;font-weight:bold;left:" + x + "px;top:" + y + "px;'><div style='z-index:7000;position:absolute;right:-3px;top:-4px;color:#ffffff;cursor:pointer;'><img id=" + $scope.speechBubbleCounter + " class='dynCross' style='width:18px' src=" + $rootScope.path + "></div></div><div style='position:absolute;border:1px solid #000;display:none;z-index:9000;' id='bord" + $scope.speechBubbleCounter + "'></div></div>";
3438 3527 //Issue #7286 :Undefined annotation should not appear
3439 3528 for (var i = 0; i <= $scope.MultiLanguageAnnationArray.length - 1; i++) {
3440 3529 var annotation = $scope.MultiLanguageAnnationArray[i];
... ... @@ -3579,7 +3668,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3579 3668  
3580 3669 $scope.createTransparencyBox = function () {
3581 3670  
3582   - $scope.isTransparencyActivated = true;
  3671 +
  3672 + $scope.isTransparencyBtnClicked = true;
3583 3673  
3584 3674 //do not create TBOX if in extarct mode otherwise create
3585 3675 if ($rootScope.isExtract == false) {
... ... @@ -3746,6 +3836,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3746 3836 document.getElementById('canvasDiv').appendChild(tempCanvas);
3747 3837 }
3748 3838  
  3839 + $scope.isTransparencyActivated = true;
3749 3840  
3750 3841 var BodyRegionDictionary = $rootScope.BodyRegionCordinatesData;
3751 3842  
... ... @@ -4388,20 +4479,50 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4388 4479 var isMirror;
4389 4480 var width;
4390 4481 var BodyRegionDictionary = $rootScope.BodyRegionCordinatesData;
4391   - $.each(BodyRegionDictionary, function (index, value) {
4392   -
4393   - var bodyRegionRight = parseInt(value.X) + parseInt(value.Width);
4394   - var bodyRegionBottom = parseInt(value.Y) + parseInt(value.Height);
4395   - if (actulalX <= bodyRegionRight && value.X <= actulalX && actualY <= bodyRegionBottom && value.Y <= actualY) {
4396   -
4397   - clickedBodyRegion = value.bodyRegionId;
4398   - x = value.X;
4399   - y = value.Y;
4400   - width = value.Width;
4401   - isMirror = value.IsMirror;
4402   - return false;
  4482 + if ($rootScope.viewOrientationId == 5) {
  4483 +
  4484 + var clickedBodyRegionData = new jinqJs()
  4485 + .from(BodyRegionDictionary)
  4486 + .where('bodyRegionId == 6')
  4487 + .select();
  4488 +
  4489 +
  4490 + // clickedBodyRegion = clickedBodyRegionData[0].bodyRegionId;
  4491 + x = clickedBodyRegionData[0].X;
  4492 + y = clickedBodyRegionData[0].Y;
  4493 + width = clickedBodyRegionData[0].Width;
  4494 + var height = clickedBodyRegionData[0].Height;
  4495 + isMirror = clickedBodyRegionData[0].IsMirror;
  4496 + var bodyRegionRight = parseInt(x) + parseInt(width);
  4497 + var bodyRegionBottom = parseInt(y) + parseInt(height);
  4498 + if (actulalX <= bodyRegionRight && x <= actulalX && actualY <= bodyRegionBottom && y <= actualY) {
  4499 +
  4500 + clickedBodyRegion = clickedBodyRegionData[0].bodyRegionId;
  4501 + x = clickedBodyRegionData[0].X;
  4502 + y = clickedBodyRegionData[0].Y;
  4503 + width = clickedBodyRegionData[0].Width;
  4504 + var height = clickedBodyRegionData[0].Height;
  4505 + isMirror = clickedBodyRegionData[0].IsMirror;
  4506 + }
  4507 +
  4508 + }
  4509 + else {
  4510 + $.each(BodyRegionDictionary, function (index, value) {
  4511 +
  4512 + var bodyRegionRight = parseInt(value.X) + parseInt(value.Width);
  4513 + var bodyRegionBottom = parseInt(value.Y) + parseInt(value.Height);
  4514 + if (actulalX <= bodyRegionRight && value.X <= actulalX && actualY <= bodyRegionBottom && value.Y <= actualY) {
  4515 +
  4516 + clickedBodyRegion = value.bodyRegionId;
  4517 + x = value.X;
  4518 + y = value.Y;
  4519 + width = value.Width;
  4520 + isMirror = value.IsMirror;
  4521 + return false;
  4522 + }
  4523 + })
4403 4524 }
4404   - })
  4525 +
4405 4526  
4406 4527 if (isMirror == "Yes") {
4407 4528  
... ... @@ -4769,7 +4890,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4769 4890  
4770 4891 var tempCanvases = $("canvas[id*='transparencyTempCanvas']");
4771 4892 for (var i = 0; i < tempCanvases.length; i++) {
4772   - tempCanvases[i].remove();
  4893 + tempCanvases[i].parentNode.removeChild(tempCanvases[i]);
4773 4894 }
4774 4895  
4775 4896 $('.ui-wrapper').remove();
... ... @@ -4846,9 +4967,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4846 4967 $rootScope.CloseListManager();
4847 4968 // $('#btnIdentity').addClass('btn-primary');
4848 4969  
4849   - if ($scope.isTransparencyActivated == true) {
  4970 + if ($scope.isTransparencyBtnClicked == true) {
4850 4971  
4851   - $scope.isTransparencyActivated = false;
  4972 + $scope.isTransparencyBtnClicked = false;
4852 4973  
4853 4974 var canvasDiv = document.getElementById('canvasDiv');
4854 4975 canvasDiv.removeEventListener("mousedown", mouseDownListener);
... ... @@ -4868,6 +4989,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4868 4989 $("#btnTranparency").removeClass("disabled");
4869 4990 $rootScope.isTransparencyBoxActivated = false;
4870 4991 $rootScope.isNormalMode = false;
  4992 +
  4993 +
4871 4994 //if listanager is visisble then close it
4872 4995  
4873 4996 $rootScope.CloseListManager();
... ... @@ -4898,21 +5021,29 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4898 5021 }
4899 5022 else {
4900 5023 $scope.zoomInOut = 25;
  5024 +
  5025 +
4901 5026 }
4902 5027  
4903 5028 //2.
4904 5029 $scope.CalculateImageCordinates($rootScope.viewOrientationId);
4905 5030  
4906 5031 //3.
4907   - if ($scope.zoomInOut == 25) {
4908   - if ($('#canvasDiv') != null)
4909   - $('#canvasDiv').scrollLeft(0)
4910   - }
4911   - else {
4912   - if ($('#canvasDiv') != null)
4913   - $('#canvasDiv').scrollLeft($('#canvasDiv').width() / 2)
4914   - }
4915 5032  
  5033 +
  5034 + if ($scope.zoomInOut == 25) {
  5035 + if ($('#canvasDiv') != null)
  5036 + $('#canvasDiv').scrollLeft(0)
  5037 +
  5038 + }
  5039 + else {
  5040 + if ($('#canvasDiv') != null)
  5041 + $('#canvasDiv').scrollLeft($('#canvasDiv').width() / 2)
  5042 +
  5043 +
  5044 + }
  5045 +
  5046 +
4916 5047 //remove annotation speech bubble
4917 5048 if ($('#dot').length > 0) {
4918 5049 $('#dot').remove();
... ... @@ -4932,56 +5063,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
4932 5063  
4933 5064 $scope.flushCanvas = function () {
4934 5065  
4935   - //if ($scope.ColoredImageSRC != null || $scope.ColoredImageSRC != undefined) {
4936   - // angular.forEach($scope.ColoredImageSRC, function (value, key) {
4937   -
4938   - // var id;
4939   - // var maskId;
4940   - // if (value.haveMirror == 'true') {
4941   - // id = 'imageCanvas' + value.bodyRegionId + '_MR';
4942   - // maskId = 'imageCanvas' + value.bodyRegionId + '_MR_mci'
4943   - // }
4944   - // else {
4945   - // id = 'imageCanvas' + value.bodyRegionId;
4946   - // maskId = 'imageCanvas' + value.bodyRegionId + '_mci';
4947   - // }
4948   -
4949   - // var canvas = document.getElementById(id);
4950   - // if (canvas != null || canvas != undefined) {
4951   - // document.getElementById('canvasDiv').removeChild(canvas);
4952   - // }
4953 5066  
4954   - // var maskcanvas = document.getElementById(maskId);
4955   - // if (maskcanvas != null || maskcanvas != undefined) {
4956   - // document.getElementById('canvasDiv').removeChild(maskcanvas);
  5067 + $rootScope.isLoading = true;
  5068 + $('#spinner').css('visibility', 'visible');
4957 5069  
4958   - // }
4959   - // if (i == 4 || i == 5 || i == 6) {
4960   - // id = 'imageCanvas' + i + '_MR';
4961   - // maskId = 'imageCanvas' + i + '_MR_mci';
4962   -
4963   - // var canvas = document.getElementById(id);
4964   - // if (canvas != null || canvas != undefined)
4965   - // document.getElementById('canvasDiv').removeChild(canvas);
4966   -
4967   - // var maskcanvas = document.getElementById(maskId);
4968   - // if (maskcanvas != null || maskcanvas != undefined)
4969   - // document.getElementById('canvasDiv').removeChild(maskcanvas);
4970   - // }
4971   -
4972   - // var modestyCanvases = $("canvas[id*='imageCanvasmodestyImg']");
4973   - // for (var i = 0; i < modestyCanvases.length; i++) {
4974   - // modestyCanvases[i].remove();
4975   - // }
4976   - // });
4977   - // //remove modesty canavs
4978   - // var modestyCanvases = $("canvas[id*='imageCanvasmodestyImg']");
4979   - // if (modestyCanvases != null || modestyCanvases != undefined && modestyCanvases.length > 0) {
4980   - // for (var j = 0; j < modestyCanvases.length; j++) {
4981   - // modestyCanvases[j].remove();
4982   - // }
4983   - // }
4984   - //}
4985 5070 var endIndex = 0;
4986 5071 var startIndex = 0;
4987 5072 if (($rootScope.viewOrientationId == '1') || ($rootScope.viewOrientationId == '4')) {
... ... @@ -5037,7 +5122,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5037 5122 var modestyCanvases = $("canvas[id*='imageCanvasmodestyImg']");
5038 5123 if (modestyCanvases != null || modestyCanvases != undefined && modestyCanvases.length > 0) {
5039 5124 for (var j = 0; j < modestyCanvases.length; j++) {
5040   - modestyCanvases[j].remove();
  5125 +
  5126 + modestyCanvases[j].parentNode.removeChild(modestyCanvases[j]);
5041 5127 }
5042 5128 }
5043 5129 }
... ... @@ -5173,7 +5259,11 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5173 5259 $rootScope.isZoomed = false;
5174 5260  
5175 5261 //6.
5176   - $rootScope.isListManagerSelected = false;
  5262 + // $rootScope.isListManagerSelected = false;
  5263 + if ($rootScope.actualTermNumber != null && $rootScope.actualTermNumber!=undefined && $rootScope.isListManagerSelected == true) {
  5264 + $rootScope.isListManagerSelected = false;
  5265 + $rootScope.isListManagerAlreadySelected = true;
  5266 + }
5177 5267  
5178 5268 //7.
5179 5269  
... ... @@ -5231,8 +5321,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5231 5321  
5232 5322 $rootScope.CanvasDivLeftPosition = $("#canvasDiv").scrollLeft();
5233 5323  
5234   -
5235   -
  5324 +
5236 5325 if ($scope.isTransparencyActivated == true) {
5237 5326  
5238 5327 $("#btnExtract").addClass("disabled");
... ... @@ -5536,9 +5625,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5536 5625 if ($scope.isEligibleForHighlightBodyByTermList == true) {
5537 5626 //DISABLE PROGERSS BAR FOR GENDER OR VIEW CHANGE
5538 5627 // if ($rootScope.isGenderChnage == true || $rootScope.isViewChange == true) {
5539   - $scope.isLoading = false;
  5628 + //$scope.isLoading = false;
5540 5629  
5541   - $('#spinner').css('visibility', 'hidden');
  5630 + //$('#spinner').css('visibility', 'hidden');
5542 5631 //}
5543 5632  
5544 5633 if (($rootScope.isHighlightBodyByBodySystem == true) && ($scope.systemMatchedTermList != null || $scope.systemMatchedTermList != undefined)) {
... ... @@ -5549,7 +5638,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5549 5638 $('#spinner').css('visibility', 'visible');
5550 5639 $timeout(function () { $scope.HighlightBodyByTermList($scope.systemMatchedTermList) }, 100);
5551 5640 }
5552   - else if ($rootScope.isListManagerSelected == true) {
  5641 + else if (($rootScope.isListManagerSelected == true) || ($rootScope.previousHighlightList != null && $rootScope.previousHighlightList.length > 0) && ($rootScope.isGenderChnage==true || $rootScope.isViewChange==true) || $rootScope.isListManagerAlreadySelected==true) {
5553 5642  
5554 5643 // console.log('$scope.grayedBR.length is ' + $scope.grayedBR.length);
5555 5644 $timeout(function () {
... ... @@ -5825,15 +5914,22 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5825 5914  
5826 5915 // $rootScope.isHighlightBodyByBodySystem = false;
5827 5916  
5828   - $rootScope.isLoading = true;
5829   - $('#spinner').css('visibility', 'visible');
  5917 +
5830 5918  
5831 5919 $rootScope.isGenderChnage = true;
5832 5920  
  5921 +
  5922 + if ($rootScope.isExtract == true) {
  5923 + $rootScope.isExtract = false;
  5924 + $rootScope.isHighLight = true;
  5925 + }
  5926 +
  5927 +
5833 5928 var viewname = localStorage.getItem("currentViewTitle")
5834 5929 var currentBodyViewId = $scope.correspondingBodyViewIds[$rootScope.voId];
5835 5930  
5836   - if ((event.currentTarget.attributes[1].value == 'Male') && (localStorage.getItem("genderId") == 'Female')) {
  5931 +
  5932 + if ((event.currentTarget.title == 'Male') && (localStorage.getItem("genderId") == 'Female')) {
5837 5933  
5838 5934 //1.
5839 5935 localStorage.setItem("genderId", 'Male');
... ... @@ -5841,9 +5937,13 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5841 5937 //2 first update the currentbodyviewid in local storage
5842 5938 localStorage.setItem("currentBodyViewId", currentBodyViewId);
5843 5939  
  5940 + $rootScope.isLoading = true;
  5941 + $('#spinner').css('visibility', 'visible');
5844 5942 //3.
5845   - $scope.layerNumber = 0;
5846   - $scope.loadSelectedBodyView(currentBodyViewId);
  5943 +
  5944 + $scope.layerNumber = 0;
  5945 + $scope.loadSelectedBodyView(currentBodyViewId);
  5946 +
5847 5947  
5848 5948 //4.
5849 5949 $scope.loadSelectedBodyViewNavigator(currentBodyViewId);
... ... @@ -5861,7 +5961,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5861 5961  
5862 5962 }
5863 5963  
5864   - else if ((event.currentTarget.attributes[1].value == 'Female') && (localStorage.getItem("genderId") == 'Male')) {
  5964 + else if ((event.currentTarget.title == 'Female') && (localStorage.getItem("genderId") == 'Male')) {
5865 5965  
5866 5966 //1.
5867 5967 localStorage.setItem("genderId", 'Female');
... ... @@ -5869,9 +5969,13 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5869 5969 //2. first update the currentbodyviewid in local storage
5870 5970 localStorage.setItem("currentBodyViewId", currentBodyViewId);
5871 5971  
  5972 + $rootScope.isLoading = true;
  5973 + $('#spinner').css('visibility', 'visible');
5872 5974 //3.
5873   - $scope.layerNumber = 0;
5874   - $scope.loadSelectedBodyView(currentBodyViewId);
  5975 +
  5976 + $scope.layerNumber = 0;
  5977 + $scope.loadSelectedBodyView(currentBodyViewId);
  5978 +
5875 5979  
5876 5980 //4.
5877 5981 $scope.loadSelectedBodyViewNavigator(currentBodyViewId);
... ... @@ -5980,7 +6084,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
5980 6084 }
5981 6085 //if user seelcted any term and serached before gender cnage then itshould be highlighted in chnaged gender
5982 6086  
5983   - if (($rootScope.isListManagerSelected == true) && (($rootScope.isGenderChnage == true) || $rootScope.isViewChange == true)) {
  6087 + if ((($rootScope.isListManagerSelected == true) || ($rootScope.isHighLight == true && $rootScope.previousHighlightList != null && $rootScope.previousHighlightList.length > 0)) && (($rootScope.isGenderChnage == true) || $rootScope.isViewChange == true)) {
5984 6088  
5985 6089 $scope.setLayerNumberAndHighlightByTermList();
5986 6090  
... ... @@ -6027,18 +6131,23 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6027 6131 // $rootScope.isHighlightBodyByBodySystem = false;
6028 6132  
6029 6133  
6030   - $rootScope.isLoading = true;
6031   - $('#spinner').css('visibility', 'visible');
6032   -
6033 6134  
6034 6135 if ($rootScope.openViews.length > 0) {
6035 6136 $rootScope.openViews.splice($rootScope.openViews.length - 1);
6036 6137 }
6037 6138  
6038 6139 $rootScope.isViewChange = true;
  6140 +
  6141 + if ($rootScope.isExtract == true) {
  6142 + $rootScope.isExtract = false;
  6143 + $rootScope.isHighLight = true;
  6144 + }
  6145 +
6039 6146 $scope.layerNumber = 0;
6040 6147 // debugger;
6041   - var selectedViewId = $scope.bodyViews[event.currentTarget.attributes[1].value];
  6148 + //var selectedViewId = $scope.bodyViews[event.currentTarget.attributes[1].value];
  6149 + var selectedViewId = $scope.bodyViews[event.currentTarget.title];
  6150 +
6042 6151 $rootScope.viewOrientationId = selectedViewId;
6043 6152 if (localStorage.getItem("genderId") == 'Male') {
6044 6153 if ($rootScope.voId != selectedViewId) {
... ... @@ -6052,6 +6161,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6052 6161 $rootScope.voId = selectedViewId;
6053 6162 $rootScope.isLoading = true;
6054 6163  
  6164 + $rootScope.isLoading = true;
  6165 + $('#spinner').css('visibility', 'visible');
  6166 +
6055 6167 //1. first update the currentbodyviewid in local storage
6056 6168 localStorage.setItem("currentBodyViewId", $rootScope.voId);
6057 6169  
... ... @@ -6087,6 +6199,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6087 6199 $rootScope.voId = selectedViewId;
6088 6200 $rootScope.isLoading = true;
6089 6201  
  6202 + $rootScope.isLoading = true;
  6203 + $('#spinner').css('visibility', 'visible');
6090 6204 //1.
6091 6205 $scope.loadSelectedBodyView($rootScope.voId);
6092 6206  
... ... @@ -6098,8 +6212,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6098 6212 // $('#daImagePanel')[0].childNodes[0].childNodes[0].innerHTML = localStorage.getItem("genderId") + " " + $scope.bodyViews[event.currentTarget.attributes[1].value;
6099 6213  
6100 6214 }
6101   - $('#daImagePanel')[0].childNodes[0].childNodes[0].innerHTML = localStorage.getItem("genderId") + " " + event.currentTarget.attributes[1].value;
6102   - localStorage.setItem("currentViewTitle", localStorage.getItem("genderId") + " " + event.currentTarget.attributes[1].value);
  6215 + $('#daImagePanel')[0].childNodes[0].childNodes[0].innerHTML = localStorage.getItem("genderId") + " " + event.currentTarget.title;
  6216 + localStorage.setItem("currentViewTitle", localStorage.getItem("genderId") + " " + event.currentTarget.title);
6103 6217  
6104 6218  
6105 6219 $rootScope.openViews.push(
... ... @@ -6255,11 +6369,15 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6255 6369 // $scope.currentY;
6256 6370 //----Annotation Toolbar: Jcanvas---
6257 6371  
6258   - $scope.$on('annotationToolEvent', function (event, data) {
  6372 + $rootScope.$on('annotationToolEvent', function (event, data) {
  6373 + $('#editstylebackgroundcolor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(255,255,255)")
  6374 + $('#editstylebackgroundcolor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" });
  6375 + $('#outlineColor .minicolors >.minicolors-swatch > .minicolors-swatch-color').css("background-color", "rgb(0,0,0)")
  6376 + $('#outlineColor .minicolors >.minicolors-panel > .minicolors-grid >.minicolors-picker').css({ "top": "145px", "left": "4px" });
  6377 +
6259 6378 $("#canvas").css("display", "block");
6260 6379 $("#canvasPaint").css("display", "block");
6261   -
6262   - $scope.BindCanvasDrawingListners();
  6380 + $rootScope.BindCanvasDrawingListners();
6263 6381 $rootScope.FreeStylePaint();
6264 6382 });
6265 6383 $scope.mousePs;
... ... @@ -6270,1226 +6388,83 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
6270 6388 }
6271 6389  
6272 6390  
6273   - $scope.clicked = true;
6274   - $scope.offsetX1 = 0;
6275   - $scope.offsetY1 = 0;
6276   - $scope.x = 0;
6277   - $scope.y = 0;
6278   - $scope.BindCanvasDrawingListners = function (event) {
6279 6391  
6280   - $scope.clicked = true;
6281   - // OnPaintCanvasMouseDown(event);
6282 6392  
6283   - var annotationCanvas = document.getElementById('canvas');
6284   - if (annotationCanvas != null || annotationCanvas != undefined) {
6285   - annotationCanvas.addEventListener('mousedown', $scope.OnPaintCanvasMouseDown, false);
6286   - annotationCanvas.addEventListener('mouseup', $scope.OnPaintCanvasMouseUp, false);
6287   - }
6288   - // alert("doclick");
6289   - };
  6393 + function OnPaintCanvasMouseMove(event) {
6290 6394  
6291 6395  
  6396 + }
6292 6397  
  6398 + $rootScope.FreeStylePaint = function (e) {
6293 6399  
6294   - $scope.mousePressed = false;
6295   - $scope.lastX; $scope.lastY;
6296   - var ctx;
6297 6400  
6298   - $scope.OnPaintCanvasMouseDown = function (event) {
  6401 + }
  6402 + $scope.OnPaintBrushCanvasMouseDown = function (event) {
  6403 + switch ($rootScope.shapeType) {
6299 6404  
6300   - var canvasElement = document.getElementById("canvas");
6301   - var ctx = canvasElement.getContext("2d");
  6405 + case "FreeStylePaint":
6302 6406  
6303   - // var x = event.clientX;
6304   - // var y = event.clientY;
6305   - $scope.offsetX1 = 0;
6306   - $scope.offsetY1 = 0;
6307   - $scope.offsetX1 = event.offsetX;
6308   - $scope.offsetY1 = event.offsetY;
6309 6407  
6310   - ctx.clearRect(0, 0, 2277, 3248);
6311   - $scope.clicked = true;
6312   - }
6313 6408  
  6409 + // $('#canvasPaint').sketch();
  6410 + // $('#canvasPaint').sketch({ defaultSize: 1 });
  6411 + // if ($("#amount-2").val() == '') {
  6412 + // //$('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
  6413 + // $('#canvasPaint').sketch();
  6414 + // }
  6415 + // else {
6314 6416  
6315   - $rootScope.resetRect = 0;
6316   - $rootScope.resetLine = 0;
6317   - $rootScope.resetCircle = 0;
6318   - $rootScope.resetArrow = 0;
6319   - $rootScope.resetPin = 0;
6320   - $rootScope.resetPinArc = 0;
6321   - $rootScope.ObjectIndex = 0;
6322   - $rootScope.Object1Index = 0;
6323   - $rootScope.Object2Index = 0;
6324   - $rootScope.resetText = 0;
6325   - $rootScope.resetTextSave = 0;
6326   - $rootScope.ObjectIndexSave = 0;
  6417 + // // var a = $("#amount-2").val();
  6418 + //// $scope.shapesize = parseInt(a);
  6419 + // // $('#canvasPaint').sketch({ defaultSize: $rootScope.shapeSize });
  6420 + // // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
6327 6421  
6328   - var arrayRect = {};
  6422 + // }
6329 6423  
6330 6424  
6331   - var storeLine = '';
6332   - $rootScope.canvasLayerNameCollection1 = [];
6333   - $scope.OnPaintCanvasMouseUp = function (event) {
  6425 + break;
6334 6426  
6335   - if (!$scope.clicked) {
6336   - return;
6337 6427 }
6338   - $scope.clicked = false;
6339   - $scope.x = 0;
6340   - $scope.y = 0;
6341   - $scope.x = parseInt(event.clientX - ($("#canvas").offset().left));
6342   - $scope.y = parseInt(event.clientY - ($("#canvas").offset().top));
6343   -
6344   - var canvasElement = document.getElementById("canvas");
6345   - var ctx = canvasElement.getContext("2d");
6346   -
6347   - var canvasElement1 = document.getElementById("canvasPaint");
6348   - var ctx1 = canvasElement1.getContext("2d");
  6428 + }
  6429 + $scope.OnPaintBrushCanvasMouseUp = function (event) {
6349 6430  
6350   - /* if ($rootScope.shapeType == "FreeStylePaint") {
6351   - var canvasPaint_zIndex = $('#canvasPaint').css("z-index");
6352   - var canvas_zIndex = $('#canvas').css("z-index");
6353   - if (canvas_zIndex > canvasPaint_zIndex) {
6354   - canvasPaint_zIndex = parseInt(canvas_zIndex) + 1;
6355   -
6356   - }
6357   - else {
6358   - canvasPaint_zIndex = parseInt(canvasPaint_zIndex) + 1;
6359   - }
6360   - $('#canvasPaint').css("z-index", canvasPaint_zIndex);
6361   - $('#canvasPaint').sketch({ defaultColor: "#000", defaultSize: 1 });
6362   - }
6363   - else {*/
6364   - switch ($rootScope.shapeType) {
6365 6431  
6366   - case "cursor":
6367   - // ctx.clearRect(0, 0, 2277, 3248);
6368   - ctx.beginPath();
6369   - ctx1.beginPath();
  6432 + // var canvasElement1 = document.getElementById("canvasPaint");
  6433 + // var ctx1 = canvasElement1.getContext("2d");
6370 6434  
  6435 + //switch($rootScope.shapeType)
  6436 + //{
6371 6437  
6372   - break;
  6438 + // case "FreeStylePaint":
6373 6439  
6374   - case "Line":
6375   -
6376   - $rootScope.resetLine = $rootScope.ObjectIndex++;
6377   - $('#canvas').addLayer({
6378   - name: 'Line_' + $rootScope.resetLine,
6379   - layer: true,
6380   - type: 'line',
6381   - draggable: true,
6382   - strokeStyle: $rootScope.shapestyleborderColor,
6383   - strokeWidth: $rootScope.shapestyleborderWidth,
6384   - rounded: true,
6385   - x1: $scope.offsetX1, y1: $scope.offsetY1,
6386   - x2: $scope.x, y2: $scope.y,
6387   -
6388   - click: function (layer) {
6389   - $rootScope.canvasLayerNameCollection = [];
6390   - $rootScope.canvasLayerNameCollection.push(layer.name);
6391   - $('#canvas').setLayer(layer.name, {
6392   - handle: {
6393   - type: 'arc',
6394   - fillStyle: '#fff',
6395   - strokeStyle: '#c33',
6396   - strokeWidth: 2,
6397   - radius: 3
6398   - }
6399   - }).drawLayers();
6400 6440  
  6441 + // if ($("#amount-2").val() == '')
  6442 + // {
  6443 + // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
  6444 + // }
  6445 + // else
  6446 + // {
6401 6447  
6402   - },
6403   - mouseout: function (layer) {
6404   - $rootScope.canvasLayerNameCollection = [];
6405   - $('#canvas').setLayer(layer.name, {
6406   - handle: {
6407   - type: 'arc',
6408   - fillStyle: '#fff',
6409   - strokeStyle: '#c33',
6410   - strokeWidth: 0,
6411   - radius: 0
6412   - }
  6448 + // var a = $("#amount-2").val();
  6449 + // $scope.shapesize = parseInt(a);
  6450 + // alert(JSON.stringify({ defaultSize: $scope.shapesize }));
  6451 + // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
6413 6452  
6414   - }).drawLayers();
  6453 + // }
6415 6454  
6416   - },
6417   - mouseover: function (layer) {
6418 6455  
  6456 + // break;
6419 6457  
6420   - $('#canvas').setLayer(layer.name, {
6421   - handle: {
6422   - type: 'arc',
6423   - fillStyle: '#fff',
6424   - strokeStyle: '#c33',
6425   - strokeWidth: 2,
6426   - radius: 3
6427   - }
6428   - }).drawLayers();
  6458 + //}
6429 6459  
6430   - }
  6460 + }
6431 6461  
6432   - }).drawLayers();
6433   - $('.btnCursor').trigger('click');
6434   - $(".btn-annotation").removeClass("activebtncolor");
6435   - $('.btnCursor').addClass('activebtncolor');
6436   - break;
6437 6462  
6438   - case "Rectangle":
6439   - $rootScope.resetRect = $rootScope.ObjectIndex++;
6440 6463  
6441   - $('#canvas').addLayer({
6442   - layer: true,
6443   - name: 'Rect_' + $rootScope.resetRect,
6444   - fillStyle: $rootScope.shapestyleFillColor,
6445   - type: 'rectangle',
6446   - draggable: true,
6447   - strokeStyle: $rootScope.shapestyleborderColor,
6448   - opacity: $rootScope.shapestyleOpacity,
6449   - strokeWidth: $rootScope.shapestyleborderWidth,
6450   - x: $scope.offsetX1, y: $scope.offsetY1,
6451   - width: $scope.x - $scope.offsetX1,
6452   - height: $scope.y - $scope.offsetY1,
  6464 +
6453 6465  
6454   - resizeFromCenter: false,
6455   -
6456   - dblclick: function () {
6457   - $rootScope.backOpacity();
6458   -
6459   - },
6460   -
6461   - click: function (layer) {
6462   - $rootScope.canvasLayerNameCollection = [];
6463   - $rootScope.canvasLayerNameCollection.push(layer.name);
6464   - $('#canvas').setLayer(layer.name, {
6465   - handle: {
6466   - type: 'rectangle',
6467   - fillStyle: '#fff',
6468   - strokeStyle: '#c33',
6469   - strokeWidth: 2,
6470   - width: 5, height: 5,
6471   - cornerRadius: 3
6472   - }
6473   - }).drawLayers();
6474   -
6475   - },
6476   - mouseout: function (layer) {
6477   - $rootScope.canvasLayerNameCollection = [];
6478   - $('#canvas').setLayer(layer.name, {
6479   - handle: {
6480   - type: 'rectangle',
6481   - fillStyle: 'pink',
6482   - strokeStyle: 'yellow',
6483   - strokeWidth: 0,
6484   - width: 0, height: 0,
6485   - cornerRadius: 0
6486   - }
6487   -
6488   - }).drawLayers();
6489   -
6490   - },
6491   - mouseover: function (layer) {
6492   -
6493   -
6494   - $('#canvas').setLayer(layer.name, {
6495   - handle: {
6496   - type: 'rectangle',
6497   - fillStyle: '#fff',
6498   - strokeStyle: '#c33',
6499   - strokeWidth: 2,
6500   - width: 5, height: 5,
6501   - cornerRadius: 3
6502   - }
6503   - }).drawLayers();
6504   -
6505   - }
6506   - }).drawLayers();
6507   -
6508   -
6509   -
6510   - $('.btnCursor').trigger('click');
6511   - $(".btn-annotation").removeClass("activebtncolor");
6512   - $('.btnCursor').addClass('activebtncolor');
6513   -
6514   - break;
6515   -
6516   - case "Circle":
6517   - // alert($rootScope.shapestyleborderWidth);
6518   - $rootScope.resetCircle = $rootScope.ObjectIndex++;
6519   - $('#canvas').addLayer({
6520   - layer: true,
6521   - name: 'Circle_' + $rootScope.resetCircle,
6522   - type: 'ellipse',
6523   - opacity: $rootScope.shapestyleOpacity,
6524   - draggable: true,
6525   - strokeStyle: $rootScope.shapestyleborderColor,
6526   - strokeWidth: $rootScope.shapestyleborderWidth,
6527   - fillStyle: $rootScope.shapestyleFillColor,
6528   - x: $scope.offsetX1, y: $scope.offsetY1,
6529   - width: ($scope.x - $scope.offsetX1) * 2, height: ($scope.y - $scope.offsetY1) * 2,
6530   - // Place a handle at each side and each corner
6531   - handlePlacement: 'both',
6532   -
6533   -
6534   -
6535   - click: function (layer) {
6536   -
6537   - $rootScope.canvasLayerNameCollection = [];
6538   - $rootScope.canvasLayerNameCollection.push(layer.name);
6539   - $('#canvas').setLayer(layer.name, {
6540   - handle: {
6541   - type: 'arc',
6542   - fillStyle: '#fff',
6543   - strokeStyle: '#c33',
6544   - strokeWidth: 2,
6545   - radius: 3
6546   - }
6547   - }).drawLayers();
6548   -
6549   - },
6550   - mouseout: function (layer) {
6551   - $rootScope.canvasLayerNameCollection = [];
6552   -
6553   - $('#canvas').setLayer(layer.name, {
6554   - handle: {
6555   - type: 'arc',
6556   - fillStyle: '#fff',
6557   - strokeStyle: '#c33',
6558   - strokeWidth: 0,
6559   - // width: 0, height: 0,
6560   - radius: 0
6561   - }
6562   -
6563   - }).drawLayers();
6564   -
6565   - },
6566   - mouseover: function (layer) {
6567   -
6568   -
6569   - $('#canvas').setLayer(layer.name, {
6570   - handle: {
6571   - type: 'arc',
6572   - fillStyle: '#fff',
6573   - strokeStyle: '#c33',
6574   - strokeWidth: 2,
6575   - // width: 5, height: 5,
6576   - radius: 3
6577   - }
6578   - }).drawLayers();
6579   -
6580   - }
6581   - }).drawLayers();
6582   - $('.btnCursor').trigger('click');
6583   - $(".btn-annotation").removeClass("activebtncolor");
6584   - $('.btnCursor').addClass('activebtncolor');
6585   - break;
6586   - case "Arrow":
6587   - $rootScope.resetArrow = $rootScope.ObjectIndex++;
6588   -
6589   - $('#canvas').drawLine({
6590   - layer: true,
6591   - name: 'Arrow_' + $rootScope.resetArrow,
6592   - draggable: true,
6593   - strokeStyle: $rootScope.shapestyleborderColor,
6594   - strokeWidth: $rootScope.shapestyleborderWidth,
6595   - rounded: true,
6596   - startArrow: true,
6597   - arrowRadius: 7,
6598   - arrowAngle: 90,
6599   - x1: $scope.offsetX1, y1: $scope.offsetY1,
6600   - x2: $scope.x, y2: $scope.y,
6601   -
6602   - click: function (layer) {
6603   - $rootScope.canvasLayerNameCollection = [];
6604   - $rootScope.canvasLayerNameCollection.push(layer.name);
6605   - $('#canvas').setLayer(layer.name, {
6606   - handle: {
6607   - type: 'arc',
6608   - fillStyle: '#fff',
6609   - strokeStyle: '#c33',
6610   - strokeWidth: 2,
6611   - // width: 5, height: 5,
6612   - radius: 3
6613   - }
6614   - }).drawLayers();
6615   - // $("#canvas").removeLayer(layer.name).drawLayers();
6616   -
6617   - },
6618   - mouseout: function (layer) {
6619   - $rootScope.canvasLayerNameCollection = [];
6620   - $('#canvas').setLayer(layer.name, {
6621   - handle: {
6622   - type: 'arc',
6623   - fillStyle: '#fff',
6624   - strokeStyle: '#c33',
6625   - strokeWidth: 0,
6626   - // width: 0, height: 0,
6627   - radius: 0
6628   - }
6629   -
6630   - }).drawLayers();
6631   -
6632   - },
6633   - mouseover: function (layer) {
6634   -
6635   -
6636   - $('#canvas').setLayer(layer.name, {
6637   - handle: {
6638   - type: 'arc',
6639   - fillStyle: '#fff',
6640   - strokeStyle: '#c33',
6641   - strokeWidth: 2,
6642   - // width: 5, height: 5,
6643   - radius: 3
6644   - }
6645   - }).drawLayers();
6646   -
6647   - }
6648   -
6649   - });
6650   - $('.btnCursor').trigger('click');
6651   - $(".btn-annotation").removeClass("activebtncolor");
6652   - $('.btnCursor').addClass('activebtncolor');
6653   -
6654   - // $scope.resetRect += 1;
6655   - break;
6656   - case "Pin":
6657   -
6658   - $rootScope.resetPin = $rootScope.Object2Index++;
6659   - $rootScope.resetPinArc = $rootScope.Object1Index++;
6660   - var radial = $('canvas').createGradient({
6661   - x1: 50, y1: 50,
6662   - x2: 50, y2: 50,
6663   - r1: 10, r2: 30,
6664   - c1: 'rgba(100, 50, 0,0)',
6665   - c2: 'grey'
6666   - });
6667   - $('#canvas').drawLine({
6668   - draggable: true,
6669   - layer: true,
6670   - name: "Pin_" + $rootScope.resetPin,
6671   - groups: ["Pin_" + $rootScope.resetPin],
6672   - dragGroups: ["Pin_" + $rootScope.resetPin],
6673   - strokeStyle: 'black',
6674   - strokeWidth: 2,
6675   - x1: $scope.offsetX1, y1: $scope.offsetY1,
6676   - x2: $scope.x, y2: $scope.y,
6677   -
6678   - click: function (layer) {
6679   -
6680   - $rootScope.shapeTypePin = "Pin";
6681   - $rootScope.canvasLayerNameCollection = [];
6682   - var pinLine_layer = layer.name;
6683   - var pinLine_layer_split = pinLine_layer.split("_");
6684   - var pinArcName = "ArcPin_";
6685   - var pinResult = pinArcName.concat(pinLine_layer_split[1]);
6686   -
6687   - $rootScope.canvasLayerNameCollection.push({ pinName: layer.name, ArcName: pinResult });
6688   -
6689   - $('#canvas').setLayer(layer.name, {
6690   - handle: {
6691   - type: 'arc',
6692   - fillStyle: '#fff',
6693   - strokeStyle: '#c33',
6694   - strokeWidth: 2,
6695   - // width: 5, height: 5,
6696   - radius: 3
6697   - }
6698   - }).drawLayers();
6699   -
6700   -
6701   - },
6702   - mouseout: function (layer) {
6703   -
6704   - $rootScope.canvasLayerNameCollection = [];
6705   - $('#canvas').setLayer(layer.name, {
6706   - handle: {
6707   - type: 'arc',
6708   - fillStyle: '#fff',
6709   - strokeStyle: '#c33',
6710   - strokeWidth: 0,
6711   - // width: 0, height: 0,
6712   - radius: 0
6713   - }
6714   -
6715   - }).drawLayers();
6716   -
6717   - },
6718   - mouseover: function (layer) {
6719   -
6720   -
6721   - $('#canvas').setLayer(layer.name, {
6722   - handle: {
6723   - type: 'arc',
6724   - fillStyle: '#fff',
6725   - strokeStyle: '#c33',
6726   - strokeWidth: 2,
6727   - // width: 5, height: 5,
6728   - radius: 3
6729   - }
6730   - }).drawLayers();
6731   -
6732   - }
6733   - }).drawArc({
6734   - draggable: true,
6735   - name: "ArcPin_" + $rootScope.resetPinArc,
6736   - // name: "Pin_" + $rootScope.resetPin,
6737   - layer: true,
6738   - groups: ["Pin_" + $rootScope.resetPin],
6739   - dragGroups: ["Pin_" + $rootScope.resetPin],
6740   - strokeStyle: 'grey',
6741   - strokeWidth: 2,
6742   - fillStyle: radial,
6743   - x: $scope.offsetX1, y: $scope.offsetY1,
6744   - radius: 5,
6745   - //handle: {
6746   - // type: 'arc',
6747   - // fillStyle: '#fff',
6748   - // strokeStyle: '#c33',
6749   - // strokeWidth: 2,
6750   - // radius: 3
6751   - //},
6752   - add: function (layer) {
6753   -
6754   - $rootScope.resetPinArc = layer.name;
6755   - // $scope.arr = [];
6756   -
6757   -
6758   - },
6759   -
6760   - }).drawLayers();
6761   - $('.btnCursor').trigger('click');
6762   - $(".btn-annotation").removeClass("activebtncolor");
6763   - $('.btnCursor').addClass('activebtncolor');
6764   - break;
6765   - case "TextArea":
6766   - $rootScope.IsTextAlreadySave = false;
6767   - $("#text_area").val('');
6768   - // Draw text
6769   - $rootScope.resetTextRect = $rootScope.ObjectIndex++;
6770   - $rootScope.resetText = $rootScope.ObjectIndex++;
6771   - $('#canvas').drawText({
6772   - layer: true,
6773   - draggable: true,
6774   - // opacity: $rootScope.shapestyleOpacity,
6775   - name: 'TextArea_' + $rootScope.resetText,
6776   - groups: ['TextArea_' + $rootScope.resetText],
6777   - dragGroups: ['TextArea_' + $rootScope.resetText],
6778   - fillStyle: '#36c',
6779   - strokeWidth: 0,
6780   - x: $scope.offsetX1, y: $scope.offsetY1,
6781   - fontSize: '14pt',
6782   - align: "left",
6783   - fontFamily: 'Verdana, sans-serif',
6784   - text: ''
6785   -
6786   - })
6787   - // Draw rect as wide as the text
6788   - .drawRect({
6789   - layer: true,
6790   - name: "TextRect_" + $rootScope.resetTextRect,
6791   - dragGroups: ['shapes'],
6792   - opacity: $rootScope.shapestyleOpacity,
6793   - strokeStyle: $rootScope.shapestyleborderColor,
6794   - strokeWidth: $rootScope.shapestyleborderWidth,
6795   - fillStyle: $rootScope.shapestyleFillColor,
6796   - x: $scope.offsetX1, y: $scope.offsetY1,
6797   - width: $scope.x - $scope.offsetX1,
6798   - height: $scope.y - $scope.offsetY1,
6799   - add: function (layer) {
6800   -
6801   - $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
6802   -
6803   - },
6804   - click: function (layer) {
6805   -
6806   - $rootScope.canvasLayerNameCollection = [];
6807   - $rootScope.canvasLayerNameCollection.push(layer.name);
6808   - $('#canvas').setLayer(layer.name, {
6809   - handle: {
6810   - type: 'rectangle',
6811   - fillStyle: '#fff',
6812   - strokeStyle: '#c33',
6813   - strokeWidth: 2,
6814   - width: 5, height: 5,
6815   - cornerRadius: 3
6816   - }
6817   - }).drawLayers();
6818   -
6819   - },
6820   - dblclick: function (layer) {
6821   -
6822   -
6823   - $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
6824   - $("#annotationTextModal").modal("toggle");
6825   -
6826   - $("#text_area").val('');
6827   - $("#text_area").css({ " font-family": "'Verdana, sans-serif'", "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
6828   - $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
6829   - // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
6830   -
6831   - $("#text-italic").removeClass("ActiveFormattingButtonClass");
6832   -
6833   - $("#text-bold").removeClass("ActiveFormattingButtonClass");
6834   -
6835   - $("#text-underline").removeClass("ActiveFormattingButtonClass");
6836   -
6837   - $("#text-left").removeClass("ActiveFormattingButtonClass");
6838   -
6839   - $("#text-right").removeClass("ActiveFormattingButtonClass");
6840   -
6841   - $("#text-center").removeClass("ActiveFormattingButtonClass");
6842   -
6843   - },
6844   - mouseout: function (layer) {
6845   - $rootScope.canvasLayerNameCollection = [];
6846   - $('#canvas').setLayer(layer.name, {
6847   - handle: {
6848   - type: 'rectangle',
6849   - fillStyle: 'pink',
6850   - strokeStyle: 'yellow',
6851   - strokeWidth: 0,
6852   - width: 0, height: 0,
6853   - cornerRadius: 0
6854   - }
6855   -
6856   - }).drawLayers();
6857   -
6858   - },
6859   - mouseover: function (layer) {
6860   -
6861   - $('#canvas').setLayer(layer.name, {
6862   - handle: {
6863   - type: 'rectangle',
6864   - fillStyle: '#fff',
6865   - strokeStyle: '#c33',
6866   - strokeWidth: 2,
6867   - width: 5, height: 5,
6868   - cornerRadius: 3
6869   - }
6870   - }).drawLayers();
6871   -
6872   - }
6873   - });
6874   -
6875   -
6876   - $("#annotationTextModal").modal("toggle");
6877   - $('.btnCursor').trigger('click');
6878   - $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
6879   - // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
6880   - $("#text_area").val('');
6881   -
6882   - $("#text_area").css({ " font-family": 'Verdana, sans-serif', "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
6883   -
6884   - $("#text-italic").removeClass("ActiveFormattingButtonClass");
6885   -
6886   - $("#text-bold").removeClass("ActiveFormattingButtonClass");
6887   -
6888   - $("#text-underline").removeClass("ActiveFormattingButtonClass");
6889   -
6890   - $("#text-left").removeClass("ActiveFormattingButtonClass");
6891   -
6892   - $("#text-right").removeClass("ActiveFormattingButtonClass");
6893   -
6894   - $("#text-center").removeClass("ActiveFormattingButtonClass");
6895   -
6896   - $(".btn-annotation").removeClass("activebtncolor");
6897   -
6898   - $('.btnCursor').addClass('activebtncolor');
6899   - break;
6900   -
6901   - case "DrawPolygon":
6902   -
6903   - break;
6904   -
6905   - }
6906   - //}
6907   -
6908   - }
6909   -
6910   -
6911   - //-- TextArea functionality of Annotation toolbar
6912   -
6913   - $rootScope.fontSizes;
6914   - $rootScope.fontWeight;
6915   - $rootScope.fontStyle;
6916   - $rootScope.textAlignmt;
6917   - $rootScope.fontColor;
6918   - $rootScope.underlineText;
6919   - $rootScope.textArea;
6920   - $rootScope.fontFamily;
6921   - $rootScope.TextPropertyArray = [];
6922   - $rootScope.modifySavedText = [];
6923   - $rootScope.TextRectangleArr = [];
6924   - $rootScope.rectDimension = [];
6925   -
6926   -
6927   - // will refactor this code later
6928   -
6929   -
6930   - $rootScope.saveText = function () {
6931   -
6932   - // this part will work first time when save button will be clicked
6933   - if ($rootScope.IsTextAlreadySave == false) {
6934   - // getting textarea style properties
6935   - $rootScope.fontSizes = $("#text_area").css("font-size");
6936   - $rootScope.fontWeight = $("#text_area").css("font-weight");
6937   - $rootScope.fontStyle = $("#text_area").css("font-style");
6938   - $rootScope.textAlignmt = $("#text_area").css("text-align");
6939   - $rootScope.fontColor = $("#text_area").css("color");
6940   - $rootScope.fontFamily = $("#text_area").css("font-family");
6941   - $rootScope.underlineText = $("#text_area").css("text-decoration");
6942   - $rootScope.textArea = $("#text_area").val();
6943   -
6944   - // deleting previous text area
6945   -
6946   - $("#canvas").removeLayer('TextArea_' + $rootScope.resetText).drawLayers();
6947   - $("#canvas").removeLayer("TextRect_" + $rootScope.resetTextRect).drawLayers();
6948   -
6949   - // Text After Saving in Rectangle
6950   - $('#canvas').drawText({
6951   - layer: true,
6952   - draggable: true,
6953   - name: 'TextAreaNew_' + $rootScope.resetText,
6954   - groups: ['TextAreaNew_' + $rootScope.resetText],
6955   - dragGroups: ['TextAreaNew_' + $rootScope.resetText],
6956   - fillStyle: $rootScope.fontColor,
6957   - fontStyle: $rootScope.fontWeight + " " + $rootScope.fontStyle,
6958   - fontSize: $rootScope.fontSizes,
6959   - fontFamily: $rootScope.fontFamily,
6960   - align: $rootScope.textAlignmt,
6961   - strokeWidth: 0,
6962   - text: $rootScope.textArea,
6963   - x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
6964   - maxWidth: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
6965   - maxHeight: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
6966   - add: function (layer) {
6967   - // alert(layer.maxWidth);
6968   - $rootScope.TextPropertyArray.push({ Text1: '', Align: '', FontColor: '', FontSize: '', FontStyle: '', FontFamily: '' });
6969   - $rootScope.TextPropertyArray.push({ Text1: layer.text, Align: layer.align, FontColor: layer.fillStyle, FontSize: layer.fontSize, FontStyle: layer.fontStyle, FontFamily: layer.fontFamily, TextDecoration: $rootScope.underlineText });
6970   - }
6971   - })
6972   - // Draw rectangle
6973   - .drawRect({
6974   - name: 'TextArea1_' + $rootScope.resetText,
6975   - layer: true,
6976   - draggable: true,
6977   - groups: ['TextAreaNew_' + $rootScope.resetText],
6978   - dragGroups: ['TextAreaNew_' + $rootScope.resetText],
6979   - opacity: $rootScope.shapestyleOpacity,
6980   - strokeStyle: $rootScope.shapestyleborderColor,
6981   - strokeWidth: $rootScope.shapestyleborderWidth,
6982   - x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
6983   - width: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
6984   - height: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
6985   - click: function (layer) {
6986   - $rootScope.shapeTypeText = "textAreaRect";
6987   -
6988   - var layerNameSplit = layer.name;
6989   - var splitedName = layerNameSplit.split("_");
6990   - var textValName = "TextAreaNew_";
6991   - var concatinateResult = textValName.concat(splitedName[1]);
6992   - $rootScope.canvasLayerNameCollection = [];
6993   - $rootScope.canvasLayerNameCollection.push({ textareaRectangle: layer.name, textareaString: concatinateResult });
6994   - $('#canvas').setLayer(layer.name, {
6995   - handle: {
6996   - type: 'rectangle',
6997   - fillStyle: '#fff',
6998   - strokeStyle: '#c33',
6999   - strokeWidth: 2,
7000   - width: 5, height: 5,
7001   - cornerRadius: 3
7002   - }
7003   - }).drawLayers();
7004   - },
7005   - dblclick: function (layer) {
7006   -
7007   - $rootScope.isTextAreaClosedButtonActive = false;
7008   - $rootScope.IsTextAlreadySave = true;
7009   -
7010   - var _rectLayerOnSave = layer.name;
7011   - var _rectLayerOnSaveSplit = _rectLayerOnSave.split("_");
7012   - var TextAreaRectName = "TextAreaNew_";
7013   - var TextAreaRectNameConcatenated = TextAreaRectName.concat(_rectLayerOnSaveSplit[1]);
7014   -
7015   - $rootScope.layerNameArr = layer.name;
7016   - $rootScope.rectTextArr = TextAreaRectNameConcatenated;
7017   - // $rootScope.modifySavedText.push({ TextName: '', RectText: ''});
7018   - // $rootScope.modifySavedText.push({ TextName: layer.name, RectText: TextAreaRectNameConcatenated });
7019   -
7020   - $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
7021   - var _rectLayerOnSaveSplitInt;
7022   - //if (_rectLayerOnSaveSplit[1] >= 3)
7023   - // _rectLayerOnSaveSplitInt = parseInt(_rectLayerOnSaveSplit[1] - 2);
7024   - //else
7025   - // _rectLayerOnSaveSplitInt = parseInt(_rectLayerOnSaveSplit[1]);
7026   -
7027   - _rectLayerOnSaveSplitInt = parseInt(_rectLayerOnSaveSplit[1]);
7028   -
7029   - var b = $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].Text1;
7030   - $("#text_area").val(b);
7031   - var fontStyleProp = $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontStyle;
7032   - var fontWeightProp = fontStyleProp.split(" ");
7033   -
7034   - $("#text_area").css("font-size", $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontSize);
7035   - $("#text_area").css("font-weight", fontWeightProp[0]);
7036   - $("#text_area").css("font-style", fontWeightProp[1]);
7037   - $("#text_area").css("text-align", $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].Align);
7038   - $("#text_area").css("color", $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontColor);
7039   - $("#text_area").css("font-family", $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontFamily);
7040   - $("#text_area").css("text-decoration", $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].TextDecoration);
7041   - $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontColor });
7042   - // $(".ActiveDefaultColorAnnotation").css({ "background-color": $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontColor + "!important" });
7043   - // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
7044   -
7045   -
7046   - //adding text text decoration active class in text edit pop-up
7047   -
7048   - if ($rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].TextDecoration == "underline") {
7049   -
7050   - $("#text-underline").addClass("ActiveFormattingButtonClass");
7051   -
7052   - }
7053   -
7054   - else {
7055   -
7056   - $("#text-underline").removeClass("ActiveFormattingButtonClass");
7057   -
7058   - }
7059   -
7060   -
7061   -
7062   - //adding text font weight active class in text edit pop-up
7063   -
7064   - if (fontWeightProp[0] == 700) {
7065   -
7066   -
7067   -
7068   - $("#text-bold").addClass("ActiveFormattingButtonClass");
7069   -
7070   - }
7071   -
7072   - else {
7073   -
7074   - $("#text-bold").removeClass("ActiveFormattingButtonClass");
7075   -
7076   - }
7077   -
7078   - //adding text font style active class in text edit pop-up
7079   -
7080   - if (fontWeightProp[1] == "italic") {
7081   -
7082   -
7083   - $("#text-italic").addClass("ActiveFormattingButtonClass");
7084   - }
7085   - else {
7086   - $("#text-italic").removeClass("ActiveFormattingButtonClass");
7087   -
7088   -
7089   - }
7090   -
7091   - //adding text alignment active class in text edit pop-up
7092   -
7093   - if ($rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].Align == "left") {
7094   -
7095   - $("#text-right").removeClass("ActiveFormattingButtonClass");
7096   -
7097   - $("#text-center").removeClass("ActiveFormattingButtonClass")
7098   -
7099   - $("#text-left").addClass("ActiveFormattingButtonClass");
7100   -
7101   - }
7102   -
7103   - else if ($rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].Align == "right") {
7104   -
7105   -
7106   -
7107   - $("#text-center").removeClass("ActiveFormattingButtonClass")
7108   -
7109   - $("#text-left").removeClass("ActiveFormattingButtonClass");
7110   -
7111   - $("#text-right").addClass("ActiveFormattingButtonClass");
7112   -
7113   -
7114   -
7115   - }
7116   -
7117   - else if ($rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].Align == "center") {
7118   -
7119   - $("#text-left").removeClass("ActiveFormattingButtonClass");
7120   -
7121   - $("#text-right").removeClass("ActiveFormattingButtonClass");
7122   -
7123   - $("#text-center").addClass("ActiveFormattingButtonClass");
7124   -
7125   -
7126   -
7127   - }
7128   -
7129   -
7130   - _rectLayerOnSaveSplitInt = ''; b = '';
7131   - $("#annotationTextModal").modal("toggle");
7132   - },
7133   - mouseout: function (layer) {
7134   - $rootScope.canvasLayerNameCollection = [];
7135   - $('#canvas').setLayer(layer.name, {
7136   - handle: {
7137   - type: 'rectangle',
7138   - fillStyle: 'pink',
7139   - strokeStyle: 'yellow',
7140   - strokeWidth: 0,
7141   - width: 0, height: 0,
7142   - cornerRadius: 0
7143   - }
7144   - }).drawLayers();
7145   - },
7146   - mouseover: function (layer) {
7147   - $('#canvas').setLayer(layer.name, {
7148   - handle: {
7149   - type: 'rectangle',
7150   - fillStyle: '#fff',
7151   - strokeStyle: '#c33',
7152   - strokeWidth: 2,
7153   - width: 5, height: 5,
7154   - cornerRadius: 3
7155   - }
7156   - }).drawLayers();
7157   -
7158   - }
7159   - });
7160   - $("#text_area").val('');
7161   - $("#text_area").css({ " font-family": "'Verdana, sans-serif'", "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
7162   -
7163   - $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
7164   - $("#text-italic").removeClass("ActiveFormattingButtonClass");
7165   -
7166   - $("#text-bold").removeClass("ActiveFormattingButtonClass");
7167   -
7168   - $("#text-underline").removeClass("ActiveFormattingButtonClass");
7169   -
7170   - $("#text-left").removeClass("ActiveFormattingButtonClass");
7171   -
7172   - $("#text-right").removeClass("ActiveFormattingButtonClass");
7173   -
7174   - $("#text-center").removeClass("ActiveFormattingButtonClass");
7175   -
7176   -
7177   - }
7178   -
7179   - // this part will work second time when save button will be clicked
7180   - else {
7181   -
7182   - // getting textarea style properties
7183   - var _modifiedText = $("#text_area").val();
7184   - var _modifiedFontSize = $("#text_area").css("font-size");
7185   - var _modifiedFontWeight = $("#text_area").css("font-weight");
7186   - var _modifiedFontStyle = $("#text_area").css("font-style");
7187   - var _modifiedTextAlign = $("#text_area").css("text-align");
7188   - var _modifiedFontColor = $("#text_area").css("color");
7189   - var _modifiedFontFamily = $("#text_area").css("font-family");
7190   - var _modifiedFontDecoration = $("#text_area").css("text-decoration");
7191   -
7192   - // deleting previous textarea
7193   -
7194   - // var a = $rootScope.modifySavedTextIndexNumber;
7195   - // alert(a);
7196   - // alert($rootScope.modifySavedText.length);
7197   - // alert($rootScope.modifySavedText[a].RectText);
7198   -
7199   - $("#canvas").removeLayer($rootScope.layerNameArr).drawLayers();
7200   - $("#canvas").removeLayer($rootScope.rectTextArr).drawLayers();
7201   -
7202   - $rootScope.resetTextRectSave = $rootScope.ObjectIndexSave++;
7203   - $rootScope.resetTextSave = $rootScope.ObjectIndexSave++;
7204   -
7205   - // generating new text area
7206   - $('#canvas').drawText({
7207   - layer: true,
7208   - draggable: true,
7209   - name: 'TextAreaAfterEdit_' + $rootScope.resetTextSave,
7210   - groups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
7211   - dragGroups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
7212   - fillStyle: _modifiedFontColor,
7213   - fontStyle: _modifiedFontWeight + " " + _modifiedFontStyle,
7214   - fontSize: _modifiedFontSize,
7215   - fontFamily: _modifiedFontFamily,
7216   - align: _modifiedTextAlign,
7217   - strokeWidth: 0,
7218   - text: _modifiedText,
7219   - x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
7220   - maxWidth: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
7221   - maxHeight: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height
7222   -
7223   - })
7224   - // Draw rect as wide as the text
7225   - .drawRect({
7226   - name: 'TextAreaAfterEditRect_' + $rootScope.resetTextSave,
7227   - layer: true,
7228   - draggable: true,
7229   - groups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
7230   - dragGroups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
7231   - opacity: $rootScope.shapestyleOpacity,
7232   - strokeStyle: $rootScope.shapestyleborderColor,
7233   - strokeWidth: $rootScope.shapestyleborderWidth,
7234   - x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
7235   - width: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
7236   - height: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
7237   - click: function (layer) {
7238   - $rootScope.shapeTypeText = "textAreaRect";
7239   - var layerNameSplit = layer.name;
7240   - var splitedName = layerNameSplit.split("_");
7241   - var textValName = "TextAreaAfterEdit_";
7242   - var concatinateResult = textValName.concat(splitedName[1]);
7243   - $rootScope.canvasLayerNameCollection = [];
7244   - $rootScope.canvasLayerNameCollection.push({ textareaRectangle: layer.name, textareaString: concatinateResult });
7245   -
7246   - $('#canvas').setLayer(layer.name, {
7247   - handle: {
7248   - type: 'rectangle',
7249   - fillStyle: '#fff',
7250   - strokeStyle: '#c33',
7251   - strokeWidth: 2,
7252   - width: 5, height: 5,
7253   - cornerRadius: 3
7254   - }
7255   - }).drawLayers();
7256   -
7257   - },
7258   - dblclick: function (layer) {
7259   -
7260   - $rootScope.isTextAreaClosedButtonActive = false;
7261   - $rootScope.IsTextAlreadySave = true;
7262   - var _rectLayerOnSave = layer.name;
7263   - var _rectLayerOnSaveSplit = _rectLayerOnSave.split("_");
7264   - var RectNameAfterEdit = "TextAreaAfterEdit_";
7265   - var RectNameAfterEditResult = RectNameAfterEdit.concat(_rectLayerOnSaveSplit[1]);
7266   - $rootScope.modifySavedTextIndexNumber = _rectLayerOnSaveSplit[1];
7267   -
7268   -
7269   -
7270   - // $rootScope.modifySavedText.push({ TextName: '', RectText: '' });
7271   - // $rootScope.modifySavedText.push({ TextName: layer.name, RectText: RectNameAfterEditResult });
7272   -
7273   - $rootScope.layerNameArr = layer.name;
7274   - $rootScope.rectTextArr = RectNameAfterEditResult;
7275   -
7276   -
7277   - $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
7278   - $("#text_area").val(_modifiedText);
7279   - $("#text_area").css("font-size", _modifiedFontSize);
7280   - $("#text_area").css("font-weight", _modifiedFontWeight);
7281   - $("#text_area").css("font-style", _modifiedFontStyle);
7282   - $("#text_area").css("text-align", _modifiedTextAlign);
7283   - $("#text_area").css("color", _modifiedFontColor);
7284   - $("#text_area").css("font-family", _modifiedFontFamily);
7285   - $("#text_area").css("text-decoration", _modifiedFontDecoration);
7286   - $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": _modifiedFontColor });
7287   - // $(".ActiveDefaultColorAnnotation").css({ "background-color": _modifiedFontColor + "!important" });
7288   - // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
7289   -
7290   - //adding text text decoration active class in text edit pop-up
7291   - if (_modifiedFontDecoration == "underline") {
7292   - $("#text-underline").addClass("ActiveFormattingButtonClass");
7293   - }
7294   - else {
7295   - $("#text-underline").removeClass("ActiveFormattingButtonClass");
7296   - }
7297   -
7298   - //adding text font weight active class in text edit pop-up
7299   - if (_modifiedFontWeight == 700) {
7300   -
7301   - $("#text-bold").addClass("ActiveFormattingButtonClass");
7302   - }
7303   - else {
7304   -
7305   - $("#text-bold").removeClass("ActiveFormattingButtonClass");
7306   -
7307   - }
7308   -
7309   - //adding text font style active class in text edit pop-up
7310   - if (_modifiedFontStyle == "italic") {
7311   -
7312   - $("#text-italic").addClass("ActiveFormattingButtonClass");
7313   - }
7314   - else {
7315   - $("#text-italic").removeClass("ActiveFormattingButtonClass");
7316   -
7317   - }
7318   -
7319   - //adding text alignment active class in text edit pop-up
7320   - if (_modifiedTextAlign == "left") {
7321   - $("#text-right").removeClass("ActiveFormattingButtonClass");
7322   - $("#text-center").removeClass("ActiveFormattingButtonClass")
7323   - $("#text-left").addClass("ActiveFormattingButtonClass");
7324   - }
7325   - else if (_modifiedTextAlign == "right") {
7326   -
7327   - $("#text-center").removeClass("ActiveFormattingButtonClass")
7328   - $("#text-left").removeClass("ActiveFormattingButtonClass");
7329   - $("#text-right").addClass("ActiveFormattingButtonClass");
7330   -
7331   - }
7332   - else if (_modifiedTextAlign == "center") {
7333   - $("#text-left").removeClass("ActiveFormattingButtonClass");
7334   - $("#text-right").removeClass("ActiveFormattingButtonClass");
7335   - $("#text-center").addClass("ActiveFormattingButtonClass");
7336   -
7337   - }
7338   -
7339   -
7340   - $("#annotationTextModal").modal("toggle");
7341   - },
7342   - mouseout: function (layer) {
7343   - $rootScope.canvasLayerNameCollection = [];
7344   - $('#canvas').setLayer(layer.name, {
7345   - handle: {
7346   - type: 'rectangle',
7347   - fillStyle: 'pink',
7348   - strokeStyle: 'yellow',
7349   - strokeWidth: 0,
7350   - width: 0, height: 0,
7351   - cornerRadius: 0
7352   - }
7353   - }).drawLayers();
7354   - },
7355   - mouseover: function (layer) {
7356   - $('#canvas').setLayer(layer.name, {
7357   - handle: {
7358   - type: 'rectangle',
7359   - fillStyle: '#fff',
7360   - strokeStyle: '#c33',
7361   - strokeWidth: 2,
7362   - width: 5, height: 5,
7363   - cornerRadius: 3
7364   - }
7365   - }).drawLayers();
7366   -
7367   - }
7368   - });
7369   - // $rootScope.modifySavedText = [];
7370   -
7371   - }
7372   - }
7373   -
7374   - // deleting text area on close button
7375   - $rootScope.closeModal = function () {
7376   -
7377   -
7378   - if ($rootScope.isTextAreaClosedButtonActive == true) {
7379   - $("#canvas").removeLayer('TextArea_' + $rootScope.resetText).drawLayers();
7380   - $("#canvas").removeLayer("TextRect_" + $rootScope.resetTextRect).drawLayers();
7381   -
7382   - }
7383   -
7384   - }
7385   -
7386   -
7387   - function OnPaintCanvasMouseMove(event) {
7388   -
7389   -
7390   - }
7391   -
7392   - $rootScope.FreeStylePaint = function (e) {
7393   -
7394   -
7395   - }
7396   - $scope.OnPaintBrushCanvasMouseDown = function (event) {
7397   - switch ($rootScope.shapeType) {
7398   -
7399   - case "FreeStylePaint":
7400   -
7401   -
7402   -
7403   - // $('#canvasPaint').sketch();
7404   - // $('#canvasPaint').sketch({ defaultSize: 1 });
7405   - // if ($("#amount-2").val() == '') {
7406   - // //$('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
7407   - // $('#canvasPaint').sketch();
7408   - // }
7409   - // else {
7410   -
7411   - // // var a = $("#amount-2").val();
7412   - //// $scope.shapesize = parseInt(a);
7413   - // // $('#canvasPaint').sketch({ defaultSize: $rootScope.shapeSize });
7414   - // // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
7415   -
7416   - // }
7417   -
7418   -
7419   - break;
7420   -
7421   - }
7422   - }
7423   - $scope.OnPaintBrushCanvasMouseUp = function (event) {
7424   -
7425   -
7426   - // var canvasElement1 = document.getElementById("canvasPaint");
7427   - // var ctx1 = canvasElement1.getContext("2d");
7428   -
7429   - //switch($rootScope.shapeType)
7430   - //{
7431   -
7432   - // case "FreeStylePaint":
7433   -
7434   -
7435   - // if ($("#amount-2").val() == '')
7436   - // {
7437   - // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
7438   - // }
7439   - // else
7440   - // {
7441   -
7442   - // var a = $("#amount-2").val();
7443   - // $scope.shapesize = parseInt(a);
7444   - // alert(JSON.stringify({ defaultSize: $scope.shapesize }));
7445   - // $('#canvasPaint').sketch({ defaultSize: $scope.shapesize });
7446   -
7447   - // }
7448   -
7449   -
7450   - // break;
7451   -
7452   - //}
7453   -
7454   - }
7455   -
7456   -
7457   -
7458   - $(document).keydown(function (event) {
7459   -
7460   - // predefined function for detecting keyboard key
7461   - if (event.which == 46) {
7462   -
7463   - if ($rootScope.shapeTypePin == "Pin") {
7464   -
7465   -
7466   - $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].pinName).drawLayers();
7467   - $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].ArcName).drawLayers();
7468   - $rootScope.shapeTypePin = "";
7469   -
7470   - }
7471   - else if ($rootScope.shapeTypeText == "textAreaRect") {
7472   -
7473   -
7474   -
7475   - $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].textareaRectangle).drawLayers();
7476   - $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].textareaString).drawLayers();
7477   - $rootScope.shapeTypeText = "";
7478   -
7479   - }
7480   - else {
7481   -
7482   - // alert($rootScope.canvasLayerNameCollection);
7483   - $("#canvas").removeLayer($rootScope.canvasLayerNameCollection).drawLayers();
7484   - }
7485   -
7486   -
7487   - }
7488   -
7489   - });
7490   -
7491   - //body highlight options functinality
7492   - $scope.LoadBodySystemData = function () {
  6466 + //body highlight options functinality
  6467 + $scope.LoadBodySystemData = function () {
7493 6468  
7494 6469 var currentBodyViewId = $rootScope.voId;
7495 6470 var systemListHtml = '<ul class="dropdown-menu" aria-labelledby="dropdownMenu2"><li><a href="#" title="Current Structure">Current Structure</a></li> <li role="separator" class="divider"></li>'
... ... @@ -7888,7 +6863,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
7888 6863  
7889 6864 if ($rootScope.disableAnnotationtoolOnListManager == true)
7890 6865 {
7891   - $('#AnnotaionPopupDiv').find('input, textarea, button, select').attr('disabled', 'disabled');
  6866 + $('#AnnotaionPopupDiv').find('input, textarea, button, select,img,div').attr('disabled', 'disabled');
7892 6867 $('#slider-range-min-2').slider('disable');
7893 6868 if ($rootScope.setListManagerZindex == true)
7894 6869 {
... ... @@ -7912,14 +6887,14 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
7912 6887  
7913 6888 }
7914 6889 }
7915   - $('#spinner').css('visibility', 'visible');
7916   - console.log('listManagerEvent');
  6890 +
7917 6891  
7918 6892  
7919 6893  
7920 6894 if ($rootScope.islistManagerEventAlredayDispachted == true) {
7921 6895  
7922   -
  6896 + $('#spinner').css('visibility', 'visible');
  6897 + console.log('listManagerEvent');
7923 6898 var systemList = $rootScope.CommonData.DACommonData.BodySystems.Item;
7924 6899  
7925 6900 $('#bodySystems').empty();
... ... @@ -8004,53 +6979,74 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
8004 6979  
8005 6980  
8006 6981 for (var j = 0; j < $scope.VocabTermTxt.length; j++) {
8007   - var $el = $('<option ng-click=HighlightBodyOnListManagerSelection($event) id=' + $scope.VocabTermTxt[j]._ActualTermNumber + '>' + $scope.VocabTermTxt[j]._TermText + '</option>').appendTo('#termList')
  6982 + var $el = $('<option title ="'+ $scope.VocabTermTxt[j]._TermText+ '" ng-click=HighlightBodyOnListManagerSelection($event) id=' + $scope.VocabTermTxt[j]._ActualTermNumber + '>' + $scope.VocabTermTxt[j]._TermText + '</option>').appendTo('#termList')
8008 6983 $compile($el)($scope);
8009 6984  
8010   - $rootScope.isLoading = false;
8011   - $('#spinner').css('visibility', 'hidden');
8012 6985 }
  6986 +
  6987 + $rootScope.isLoading = false;
  6988 + $('#spinner').css('visibility', 'hidden');
  6989 +
8013 6990 var termsTotal = '<span class="pull-left marginTop5">' + $scope.VocabTermTxt.length + ' Structures</span>';
8014 6991 $("#totalTerms").empty();
8015 6992 $('#totalTerms').append(termsTotal);
8016   -
  6993 +
  6994 +
8017 6995  
8018 6996 }
8019 6997 }
8020 6998  
8021 6999  
8022 7000 $scope.HighlightBodyOnListManagerSelection = function (event) {
  7001 + // Terms search in the Search list should be disable in the List Manager and Vice-Versa.
  7002 + if ($rootScope.prevId == event.currentTarget.id) {
8023 7003  
8024   - $scope.terminateCurrentlyRunningWPs();
8025   - //debugger
8026   - $rootScope.isListManagerSelected = true;
8027   - //---
8028   - if ($rootScope.isListManagerSelected == true) {
8029   - $("#btnHighLight").addClass("btn-primary");
8030   - $("#btnHighLight").removeClass("btn-black");
8031   - if (!$("#btnNormalMode").hasClass("btn-black")) {
8032   - $("#btnNormalMode").addClass("btn-black");
8033   - }
8034   -
8035   - if ($("#btnNormalMode").hasClass("btn-primary")) {
8036   - $("#btnNormalMode").removeClass("btn-primary");
8037   - }
  7004 + $rootScope.isLoading = false;
  7005 + $('#spinner').css('visibility', 'hidden');
8038 7006 }
8039   - //---
8040   - $rootScope.isLoading = true;
  7007 + else {
8041 7008  
8042   - $('#spinner').css('visibility', 'visible');
  7009 + $rootScope.isLoading = true;
8043 7010  
8044   - $rootScope.isHighlightBodyByBodySystem = false;
  7011 + $('#spinner').css('visibility', 'visible');
8045 7012  
8046   - //1.
8047   - $rootScope.actualTermNumber = event.currentTarget.id;//attributes[0].value;
8048   - console.log(' $scope.actualTermNumber insde HighlightBodyOnListManagerSelection= ' + $rootScope.actualTermNumber)
8049 7013  
8050   - //2.
  7014 + $rootScope.prevId = event.currentTarget.id;
  7015 + $("#termList").find("option").attr('selected', false);
  7016 + $("#termList").find("option").css({ "background-color": "#ffffff", "color": "#000000" });
  7017 + $("#termList").find("option[id=" + event.currentTarget.id + "]").css({ "background-color": "#3399FF", "color": "#ffffff" });
  7018 + $("div#backdrop #termlistfilter li").find("a").css({ "background-color": "#ffffff", "color": "#000000" });
  7019 + $("div#backdrop #termlistfilter li").find("a[id=" + event.currentTarget.id + "]").css({ "background-color": "#3399FF", "color": "#ffffff" });
  7020 + $scope.terminateCurrentlyRunningWPs();
  7021 + //debugger
  7022 + $rootScope.isListManagerSelected = true;
  7023 + //---
  7024 + if ($rootScope.isListManagerSelected == true) {
  7025 + $("#btnHighLight").addClass("btn-primary");
  7026 + $("#btnHighLight").removeClass("btn-black");
  7027 + if (!$("#btnNormalMode").hasClass("btn-black")) {
  7028 + $("#btnNormalMode").addClass("btn-black");
  7029 + }
  7030 +
  7031 + if ($("#btnNormalMode").hasClass("btn-primary")) {
  7032 + $("#btnNormalMode").removeClass("btn-primary");
  7033 + }
  7034 + }
  7035 + //---
  7036 +
  7037 + $rootScope.isHighlightBodyByBodySystem = false;
8051 7038  
8052   - $scope.setLayerNumberAndHighlightByTermList();
  7039 + //1.
  7040 + $rootScope.actualTermNumber = event.currentTarget.id;//attributes[0].value;
  7041 + console.log(' $scope.actualTermNumber insde HighlightBodyOnListManagerSelection= ' + $rootScope.actualTermNumber)
8053 7042  
  7043 + //2.
  7044 +
  7045 + $scope.setLayerNumberAndHighlightByTermList();
  7046 +
  7047 +
  7048 + }
  7049 +
8054 7050  
8055 7051 }
8056 7052  
... ... @@ -8143,14 +7139,23 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
8143 7139  
8144 7140 //8.remove current layer canavses
8145 7141 $scope.flushCanvas();
8146   -
8147   -
  7142 +
8148 7143  
8149 7144 //9.
8150 7145 $timeout(function () {
8151   - $rootScope.isHighLight = false;
  7146 + if(($rootScope.isGenderChnage == true && $rootScope.isHighLight==true) || ($rootScope.isViewChange == true && $rootScope.isHighLight==true)){
  7147 +
  7148 + }
  7149 + else{
  7150 + $rootScope.isHighLight = false;
  7151 + }
8152 7152 $('#sppeachBubble').css('display', 'none');
8153 7153 $("#dot").css("display", "none");
  7154 + //DA > Annotation's Line should not displayed.
  7155 + $("#bord").css("display", "none");
  7156 +
  7157 + $rootScope.isLoading = true;
  7158 + $('#spinner').css('visibility', 'visible');
8154 7159  
8155 7160 //redraw body of respective layer
8156 7161 $scope.CalculateImageCordinates($rootScope.viewOrientationId)
... ... @@ -8589,6 +7594,9 @@ function OnIdentityClick() {
8589 7594  
8590 7595 function OnZoom()
8591 7596 {
  7597 + //Dissectible Anatomy > Extract and Annotations displays apart on the page after click on Zoom-in.
  7598 + $(".com").remove();
  7599 + $("#bord").remove();
8592 7600 console.log('OnZoom is called outside ');
8593 7601 var scope = angular.element(document.getElementById("daView")).scope();
8594 7602 scope.$apply(function () {
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/HomeController.js
1 1 'use strict';
2 2  
3   -AIA.controller("HomeController", ["$rootScope", "Modules", "$log", "$location", "$timeout",
4   - function ($rootScope, Modules, $log, $location, $timeout) {
  3 +AIA.controller("HomeController", ["$rootScope", "Modules", "$log", "$location", "$timeout", "DataService",
  4 + function ($rootScope, Modules, $log, $location, $timeout, DataService) {
5 5  
6 6 //$scope.pageToOpen = {
7 7 // name: 'MainMenu'
... ... @@ -43,9 +43,59 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
43 43 $rootScope.isModestyOn;
44 44 $rootScope.isModestyOff;
45 45 $rootScope.SetSettingActiveTab;
  46 + $rootScope.disableMenuannotation = "disableMenuannotation";
  47 + $rootScope.disableMenuoption = "disableMenuoption";
  48 + $rootScope.menuLabExer;
  49 + $rootScope.menuLabExer = 0;
  50 +
  51 +
  52 + $rootScope.fontSizes;
  53 + $rootScope.fontWeight;
  54 + $rootScope.fontStyle;
  55 + $rootScope.textAlignmt;
  56 + $rootScope.fontColor;
  57 + $rootScope.underlineText;
  58 + $rootScope.textArea;
  59 + $rootScope.fontFamily;
  60 + $rootScope.TextPropertyArray = [];
  61 + $rootScope.modifySavedText = [];
  62 + $rootScope.TextRectangleArr = [];
  63 + $rootScope.rectDimension = [];
  64 +
  65 +
  66 +
  67 + $rootScope.$on("$locationChangeSuccess", function () {
  68 +
  69 + if (($location.url() == "/da-body-view") || ($location.url() == "/clinical-illustrations-detail") || ($location.url() == "/clinical-animations-detail")) {
  70 + $rootScope.disableMenuannotation = " ";
  71 + $rootScope.disableMenuoption = " ";
  72 +
  73 +
  74 + }
  75 + else {
  76 +
  77 + $rootScope.disableMenuannotation = "disableMenuannotation";
  78 + $rootScope.disableMenuoption = "disableMenuoption";
  79 + $rootScope.CloseAnnotationTool();
  80 + $rootScope.CloseListManager();
  81 + angular.element('#modal-settings').modal('hide');
  82 + if ($location.url() == "/lab-exercises") {
  83 +
  84 + $rootScope.menuLabExer = 0;
  85 + }
  86 + if($rootScope.menuLabExer==1)
  87 + {
  88 + $rootScope.disableMenuoption = " ";
  89 + }
  90 +
  91 + }
  92 +
  93 + });
46 94  
47 95 //jspanel functionality..
48 96  
  97 +
  98 +
49 99 $rootScope.openParent = function (slug) {
50 100 // debugger;
51 101 var openViews = $rootScope.openViews;
... ... @@ -115,7 +165,7 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
115 165 //theme:"rounded"
116 166 });
117 167 }
118   -
  168 + $rootScope.isFontFamilyLoaded = false;
119 169 //annotation tool custom events
120 170 $rootScope.ShowAnnotationWindow = function () {
121 171 //7904
... ... @@ -129,6 +179,33 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
129 179 $rootScope.$broadcast('annotationToolEvent', true);
130 180 $("#canvasPaint").css("display", "none");
131 181 $("#canvas").css("display", "none");
  182 +
  183 + var FontFamilyJson = '~/../content/data/json/settings/fontstyle.json';
  184 + if ($rootScope.isFontFamilyLoaded == false) {
  185 +
  186 +
  187 + DataService.getJson(FontFamilyJson)
  188 + .then(
  189 + function (result) {
  190 +
  191 + $rootScope.AnnotationFontFamily = result;
  192 + // alert($rootScope.AnnotationFontFamily.FontStyle.length);
  193 +
  194 + for (var i = 0; i <= $rootScope.AnnotationFontFamily.FontFamily.length - 1; i++) {
  195 +
  196 + $("#selected-font-family").append("<option>" + $rootScope.AnnotationFontFamily.FontFamily[i].FontName + "</option>");
  197 +
  198 + }
  199 + $rootScope.isFontFamilyLoaded = true;
  200 +
  201 + },
  202 + function (error) {
  203 + console.log(error.statusText)
  204 + }
  205 + )
  206 +
  207 + }
  208 +
132 209 }
133 210  
134 211 $rootScope.CloseAnnotationTool = function () {
... ... @@ -144,21 +221,29 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
144 221 $rootScope.isAnnotationWindowClose = true;
145 222 $("#canvasPaint").css("display", "none");
146 223 $("#canvas").css("display", "none");
  224 + $('.btnCursor').removeClass('activebtncolor');
  225 + $(".btn-annotation").removeClass("activebtncolor");
147 226 }
148   -
  227 + $rootScope.CIAnotationIdentifyModeOff = false;
149 228 $rootScope.OnIdentifyClick = function () {
150 229  
151 230 $("#OnIdentify").addClass("annotationtoolbartab");
152 231 $("#DrawMode").removeClass("annotationtoolbartab");
153 232 // $rootScope.isIdetifyClicked = true;
154 233 // $rootScope.isDrawingToolSelected = false;
155   - $("#canvasPaint").css("display", "none");
156   - $("#canvas").css("display", "none");
  234 + // debugger;
  235 + if ($rootScope.CIAnotationIdentifyModeOff == true) {
  236 + $('.btnCursor').removeClass('activebtncolor');
157 237  
158   - // $("#canvasPaint").css("z-index", "0");
159   - // $("#canvas").css("z-index", "0");
160   - $('.btnCursor').removeClass('activebtncolor');
  238 + } else {
  239 + $("#canvasPaint").css("display", "none");
  240 + $("#canvas").css("display", "none");
  241 +
  242 + // $("#canvasPaint").css("z-index", "0");
  243 + // $("#canvas").css("z-index", "0");
  244 + $('.btnCursor').removeClass('activebtncolor');
161 245  
  246 + }
162 247 }
163 248  
164 249  
... ... @@ -300,6 +385,7 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
300 385 $(".btn-annotation-arrow").addClass("activebtncolor");
301 386 }
302 387 $rootScope.DrawText = function () {
  388 +
303 389 $rootScope.setListManagerZindex = true;
304 390 $("#canvasPaint").css("display", "block");
305 391 $("#canvas").css("display", "block");
... ... @@ -356,14 +442,18 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
356 442 $rootScope.shapestyleborderWidth = 2;
357 443 $rootScope.shapestyleborderStyles = "solid";
358 444 $rootScope.shapestyle = function (id) {
359   -
  445 + // debugger;
360 446 document.getElementById('modelbackground').style.display = "none";
361 447 document.getElementById('modeleditstyle').style.display = "none";
362 448  
363 449 $rootScope.shapestyleOpacity = $("#" + id).css('opacity');
364   - $rootScope.shapestyleFillColor = $("#" + id).parent().css('background-color');
  450 + $("#shapeStyleDiv").parent().css("opacity", $rootScope.shapestyleOpacity);
  451 + $rootScope.shapestyleFillColor = $("#" + id).css('background-color');
  452 + $("#shapeStyleDiv").css("background-color", $rootScope.shapestyleFillColor);
365 453 $rootScope.shapestyleborderColor = $("#" + id).parent().css("border-top-color");
  454 + $("#shapeStyleDiv").parent().css("border-color", $rootScope.shapestyleborderColor);
366 455 $rootScope.shapestyleborderWidthSeparatingPixel = $("#" + id).parent().css("border-top-width");
  456 + $("#shapeStyleDiv").parent().css("border-width", $rootScope.shapestyleborderWidthSeparatingPixel);
367 457 var pixelSeparation = $rootScope.shapestyleborderWidthSeparatingPixel;
368 458 var intPart = pixelSeparation.split("p");
369 459  
... ... @@ -383,16 +473,22 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
383 473 }
384 474  
385 475 $rootScope.enableAnnotationToolBar = function () {
386   -
387   - document.getElementById('modelbackground').style.display = "block";
388   - //$("#editshapestyle").modal('show');
389   - document.getElementById('modeleditstyle').style.display = "block";
390   - if ($('#modeleditstyle').css("display") == "block") { //Check if the modal is already showing
391   - var previewOpacity = $('#imgOpacity').css("opacity");
392   - $('#slider-range-min-4 div.ui-slider-range-min').css("width", (previewOpacity*100) + "%");
393   - $('#slider-range-min-4 span.ui-slider-handle').css("left", (previewOpacity * 100) + "%");
394   -
395   - };
  476 + if ($rootScope.disableAnnotationTB == true) {
  477 + document.getElementById('modelbackground').style.display = "none";
  478 + //$("#editshapestyle").modal('show');
  479 + document.getElementById('modeleditstyle').style.display = "none";
  480 + }
  481 + else {
  482 + document.getElementById('modelbackground').style.display = "block";
  483 + //$("#editshapestyle").modal('show');
  484 + document.getElementById('modeleditstyle').style.display = "block";
  485 + if ($('#modeleditstyle').css("display") == "block") { //Check if the modal is already showing
  486 + var previewOpacity = $('#imgOpacity').css("opacity");
  487 + $('#slider-range-min-4 div.ui-slider-range-min').css("width", (previewOpacity * 100) + "%");
  488 + $('#slider-range-min-4 span.ui-slider-handle').css("left", (previewOpacity * 100) + "%");
  489 +
  490 + };
  491 + }
396 492 }
397 493  
398 494  
... ... @@ -425,6 +521,1225 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
425 521  
426 522 //----End-------------
427 523  
  524 + //--Common code of Annotation Toolbar for CI and DA-------
  525 + $rootScope.LineFn = function (canvasId, LineNumber, shapestyleborderColor, shapestyleborderWidth, offsetX1, offsetY1, x, y)
  526 + {
  527 + $(canvasId).addLayer({
  528 + name: 'Line_' + LineNumber,
  529 + layer: true,
  530 + type: 'line',
  531 + draggable: true,
  532 + strokeStyle: shapestyleborderColor,
  533 + strokeWidth: shapestyleborderWidth,
  534 + rounded: true,
  535 + x1: offsetX1, y1:offsetY1,
  536 + x2: x, y2:y,
  537 +
  538 + click: function (layer) {
  539 + $rootScope.canvasLayerNameCollection = [];
  540 + $rootScope.canvasLayerNameCollection.push(layer.name);
  541 + $(canvasId).setLayer(layer.name, {
  542 + handle: {
  543 + type: 'arc',
  544 + fillStyle: '#fff',
  545 + strokeStyle: '#c33',
  546 + strokeWidth: 2,
  547 + radius: 3
  548 + }
  549 + }).drawLayers();
  550 +
  551 +
  552 + },
  553 + mouseout: function (layer) {
  554 + $rootScope.canvasLayerNameCollection = [];
  555 + $(canvasId).setLayer(layer.name, {
  556 + handle: {
  557 + type: 'arc',
  558 + fillStyle: '#fff',
  559 + strokeStyle: '#c33',
  560 + strokeWidth: 0,
  561 + radius: 0
  562 + }
  563 +
  564 + }).drawLayers();
  565 +
  566 + },
  567 + mouseover: function (layer) {
  568 +
  569 +
  570 + $(canvasId).setLayer(layer.name, {
  571 + handle: {
  572 + type: 'arc',
  573 + fillStyle: '#fff',
  574 + strokeStyle: '#c33',
  575 + strokeWidth: 2,
  576 + radius: 3
  577 + }
  578 + }).drawLayers();
  579 +
  580 + }
  581 +
  582 + }).drawLayers();
  583 +
  584 + $('.btnCursor').trigger('click');
  585 + $(".btn-annotation").removeClass("activebtncolor");
  586 + $('.btnCursor').addClass('activebtncolor');
  587 + }
  588 +
  589 + $rootScope.RectangleFn = function (canvasId, RectNumber, shapestyleFillColor, shapestyleborderColor, shapestyleOpacity, shapestyleborderWidth, offsetX1, offsetY1, x,y) {
  590 + $(canvasId).addLayer({
  591 + layer: true,
  592 + name: 'Rect_' + RectNumber,
  593 + fillStyle: shapestyleFillColor,
  594 + type: 'rectangle',
  595 + draggable: true,
  596 + strokeStyle: shapestyleborderColor,
  597 + opacity: shapestyleOpacity,
  598 + strokeWidth: shapestyleborderWidth,
  599 + x: offsetX1, y: offsetY1,
  600 + width: x - offsetX1,
  601 + height: y - offsetY1,
  602 +
  603 + resizeFromCenter: false,
  604 +
  605 + dblclick: function () {
  606 + // $rootScope.backOpacity();
  607 +
  608 + },
  609 +
  610 + click: function (layer) {
  611 + $rootScope.canvasLayerNameCollection = [];
  612 + $rootScope.canvasLayerNameCollection.push(layer.name);
  613 + $(canvasId).setLayer(layer.name, {
  614 + handle: {
  615 + type: 'rectangle',
  616 + fillStyle: '#fff',
  617 + strokeStyle: '#c33',
  618 + strokeWidth: 2,
  619 + width: 5, height: 5,
  620 + cornerRadius: 3
  621 + }
  622 + }).drawLayers();
  623 +
  624 + },
  625 + mouseout: function (layer) {
  626 + $rootScope.canvasLayerNameCollection = [];
  627 + $(canvasId).setLayer(layer.name, {
  628 + handle: {
  629 + type: 'rectangle',
  630 + fillStyle: 'pink',
  631 + strokeStyle: 'yellow',
  632 + strokeWidth: 0,
  633 + width: 0, height: 0,
  634 + cornerRadius: 0
  635 + }
  636 +
  637 + }).drawLayers();
  638 +
  639 + },
  640 + mouseover: function (layer) {
  641 +
  642 +
  643 + $(canvasId).setLayer(layer.name, {
  644 + handle: {
  645 + type: 'rectangle',
  646 + fillStyle: '#fff',
  647 + strokeStyle: '#c33',
  648 + strokeWidth: 2,
  649 + width: 5, height: 5,
  650 + cornerRadius: 3
  651 + }
  652 + }).drawLayers();
  653 +
  654 + }
  655 + }).drawLayers();
  656 +
  657 +
  658 +
  659 + $('.btnCursor').trigger('click');
  660 + $(".btn-annotation").removeClass("activebtncolor");
  661 + $('.btnCursor').addClass('activebtncolor');
  662 +
  663 + }
  664 +
  665 + $rootScope.CircleFn = function (canvasId, CircleNumber, shapestyleOpacity, shapestyleborderColor, shapestyleborderWidth, shapestyleFillColor, offsetX1, offsetY1, x, y) {
  666 +
  667 + $(canvasId).addLayer({
  668 + layer: true,
  669 + name: 'Circle_' + CircleNumber,
  670 + type: 'ellipse',
  671 + opacity: shapestyleOpacity,
  672 + draggable: true,
  673 + strokeStyle: shapestyleborderColor,
  674 + strokeWidth: shapestyleborderWidth,
  675 + fillStyle: shapestyleFillColor,
  676 + x: offsetX1, y:offsetY1,
  677 + width: (x - offsetX1) * 2, height: (y - offsetY1) * 2,
  678 + // Place a handle at each side and each corner
  679 + handlePlacement: 'both',
  680 +
  681 +
  682 +
  683 + click: function (layer) {
  684 +
  685 + $rootScope.canvasLayerNameCollection = [];
  686 + $rootScope.canvasLayerNameCollection.push(layer.name);
  687 + $(canvasId).setLayer(layer.name, {
  688 + handle: {
  689 + type: 'arc',
  690 + fillStyle: '#fff',
  691 + strokeStyle: '#c33',
  692 + strokeWidth: 2,
  693 + radius: 3
  694 + }
  695 + }).drawLayers();
  696 +
  697 + },
  698 + mouseout: function (layer) {
  699 + $rootScope.canvasLayerNameCollection = [];
  700 +
  701 + $(canvasId).setLayer(layer.name, {
  702 + handle: {
  703 + type: 'arc',
  704 + fillStyle: '#fff',
  705 + strokeStyle: '#c33',
  706 + strokeWidth: 0,
  707 + // width: 0, height: 0,
  708 + radius: 0
  709 + }
  710 +
  711 + }).drawLayers();
  712 +
  713 + },
  714 + mouseover: function (layer) {
  715 +
  716 +
  717 + $(canvasId).setLayer(layer.name, {
  718 + handle: {
  719 + type: 'arc',
  720 + fillStyle: '#fff',
  721 + strokeStyle: '#c33',
  722 + strokeWidth: 2,
  723 + // width: 5, height: 5,
  724 + radius: 3
  725 + }
  726 + }).drawLayers();
  727 +
  728 + }
  729 + }).drawLayers();
  730 + $('.btnCursor').trigger('click');
  731 + $(".btn-annotation").removeClass("activebtncolor");
  732 + $('.btnCursor').addClass('activebtncolor');
  733 + }
  734 +
  735 + $rootScope.ArrowFn = function (canvasId, ArrowNumber, shapestyleborderColor, shapestyleborderWidth, offsetX1, offsetY1, x, y) {
  736 +
  737 + $('#canvas').drawLine({
  738 + layer: true,
  739 + name: 'Arrow_' + ArrowNumber,
  740 + draggable: true,
  741 + strokeStyle: shapestyleborderColor,
  742 + strokeWidth: shapestyleborderWidth,
  743 + rounded: true,
  744 + startArrow: true,
  745 + arrowRadius: 7,
  746 + arrowAngle: 90,
  747 + x1: offsetX1, y1: offsetY1,
  748 + x2: x, y2: y,
  749 +
  750 + click: function (layer) {
  751 + $rootScope.canvasLayerNameCollection = [];
  752 + $rootScope.canvasLayerNameCollection.push(layer.name);
  753 + $(canvasId).setLayer(layer.name, {
  754 + handle: {
  755 + type: 'arc',
  756 + fillStyle: '#fff',
  757 + strokeStyle: '#c33',
  758 + strokeWidth: 2,
  759 + // width: 5, height: 5,
  760 + radius: 3
  761 + }
  762 + }).drawLayers();
  763 + // $("#canvas").removeLayer(layer.name).drawLayers();
  764 +
  765 + },
  766 + mouseout: function (layer) {
  767 + $rootScope.canvasLayerNameCollection = [];
  768 + $(canvasId).setLayer(layer.name, {
  769 + handle: {
  770 + type: 'arc',
  771 + fillStyle: '#fff',
  772 + strokeStyle: '#c33',
  773 + strokeWidth: 0,
  774 + // width: 0, height: 0,
  775 + radius: 0
  776 + }
  777 +
  778 + }).drawLayers();
  779 +
  780 + },
  781 + mouseover: function (layer) {
  782 +
  783 +
  784 + $(canvasId).setLayer(layer.name, {
  785 + handle: {
  786 + type: 'arc',
  787 + fillStyle: '#fff',
  788 + strokeStyle: '#c33',
  789 + strokeWidth: 2,
  790 + // width: 5, height: 5,
  791 + radius: 3
  792 + }
  793 + }).drawLayers();
  794 +
  795 + }
  796 +
  797 + });
  798 + $('.btnCursor').trigger('click');
  799 + $(".btn-annotation").removeClass("activebtncolor");
  800 + $('.btnCursor').addClass('activebtncolor');
  801 + }
  802 +
  803 + $rootScope.PinFn = function (canvasId, PinNumber, offsetX1, offsetY1, x, y, PinArcNumber) {
  804 + var radial = $('#canvas').createGradient({
  805 + x1: 50, y1: 50,
  806 + x2: 50, y2: 50,
  807 + r1: 10, r2: 30,
  808 + c1: 'rgba(100, 50, 0,0)',
  809 + c2: 'grey'
  810 + });
  811 + $(canvasId).drawLine({
  812 + draggable: true,
  813 + layer: true,
  814 + name: "Pin_" + PinNumber,
  815 + groups: ["Pin_" + PinNumber],
  816 + dragGroups: ["Pin_" + PinNumber],
  817 + strokeStyle: 'black',
  818 + strokeWidth: 2,
  819 + x1: offsetX1, y1: offsetY1,
  820 + x2: x, y2: y,
  821 +
  822 + click: function (layer) {
  823 +
  824 + $rootScope.shapeTypePin = "Pin";
  825 + $rootScope.canvasLayerNameCollection = [];
  826 + var pinLine_layer = layer.name;
  827 + var pinLine_layer_split = pinLine_layer.split("_");
  828 + var pinArcName = "ArcPin_";
  829 + var pinResult = pinArcName.concat(pinLine_layer_split[1]);
  830 +
  831 + $rootScope.canvasLayerNameCollection.push({ pinName: layer.name, ArcName: pinResult });
  832 +
  833 + $(canvasId).setLayer(layer.name, {
  834 + handle: {
  835 + type: 'arc',
  836 + fillStyle: '#fff',
  837 + strokeStyle: '#c33',
  838 + strokeWidth: 2,
  839 + // width: 5, height: 5,
  840 + radius: 3
  841 + }
  842 + }).drawLayers();
  843 +
  844 +
  845 + },
  846 + mouseout: function (layer) {
  847 +
  848 + $rootScope.canvasLayerNameCollection = [];
  849 + $(canvasId).setLayer(layer.name, {
  850 + handle: {
  851 + type: 'arc',
  852 + fillStyle: '#fff',
  853 + strokeStyle: '#c33',
  854 + strokeWidth: 0,
  855 + // width: 0, height: 0,
  856 + radius: 0
  857 + }
  858 +
  859 + }).drawLayers();
  860 +
  861 + },
  862 + mouseover: function (layer) {
  863 +
  864 +
  865 + $(canvasId).setLayer(layer.name, {
  866 + handle: {
  867 + type: 'arc',
  868 + fillStyle: '#fff',
  869 + strokeStyle: '#c33',
  870 + strokeWidth: 2,
  871 + // width: 5, height: 5,
  872 + radius: 3
  873 + }
  874 + }).drawLayers();
  875 +
  876 + }
  877 + }).drawArc({
  878 + draggable: true,
  879 + name: "ArcPin_" + PinArcNumber,
  880 + // name: "Pin_" + $rootScope.resetPin,
  881 + layer: true,
  882 + groups: ["Pin_" + PinNumber],
  883 + dragGroups: ["Pin_" + PinNumber],
  884 + strokeStyle: 'grey',
  885 + strokeWidth: 2,
  886 + fillStyle: radial,
  887 + x: offsetX1, y: offsetY1,
  888 + radius: 5,
  889 + //handle: {
  890 + // type: 'arc',
  891 + // fillStyle: '#fff',
  892 + // strokeStyle: '#c33',
  893 + // strokeWidth: 2,
  894 + // radius: 3
  895 + //},
  896 +
  897 + add: function (layer) {
  898 +
  899 + $rootScope.PinArcNumber = layer.name;
  900 + // $scope.arr = [];
  901 +
  902 +
  903 + },
  904 +
  905 + }).drawLayers();
  906 + $('.btnCursor').trigger('click');
  907 + $(".btn-annotation").removeClass("activebtncolor");
  908 + $('.btnCursor').addClass('activebtncolor');
  909 + }
  910 +
  911 + $rootScope.TextAreaFn = function (canvasId, TextNumber, offsetX1, offsetY1, resetTextRect, shapestyleOpacity, shapestyleborderColor, shapestyleborderWidth, shapestyleFillColor,x,y) {
  912 +
  913 +
  914 +
  915 +
  916 + $('#canvas').drawText({
  917 + layer: true,
  918 + draggable: true,
  919 + // opacity: $rootScope.shapestyleOpacity,
  920 + name: 'TextArea_' + $rootScope.TextNumber,
  921 + groups: ['TextArea_' + $rootScope.TextNumber],
  922 + dragGroups: ['TextArea_' + $rootScope.TextNumber],
  923 + fillStyle: '#36c',
  924 + strokeWidth: 0,
  925 + x: $rootScope.offsetX1, y: $rootScope.offsetY1,
  926 + fontSize: '14pt',
  927 + align: "left",
  928 + fontFamily: 'Verdana, sans-serif',
  929 + text: '',
  930 + add: function (layer) {
  931 +
  932 + $rootScope.TextID = layer.name;
  933 + }
  934 +
  935 +
  936 + })
  937 + // Draw rect as wide as the text
  938 + .drawRect({
  939 + layer: true,
  940 + name: "TextRect_" + $rootScope.TextNumber,
  941 + dragGroups: ['shapes'],
  942 + opacity: $rootScope.shapestyleOpacity,
  943 + strokeStyle: $rootScope.shapestyleborderColor,
  944 + strokeWidth: $rootScope.shapestyleborderWidth,
  945 + fillStyle: $rootScope.shapestyleFillColor,
  946 + x: $rootScope.offsetX1, y: $rootScope.offsetY1,
  947 + width: $rootScope.x - $rootScope.offsetX1,
  948 + height: $rootScope.y - $rootScope.offsetY1,
  949 + add: function (layer) {
  950 +
  951 + $rootScope.TextAreaRectID = layer.name;
  952 + $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
  953 + $rootScope.CurrentWidth = layer.width;
  954 + $rootScope.CurrentHeight = layer.height;
  955 +
  956 + },
  957 + click: function (layer) {
  958 +
  959 + $rootScope.canvasLayerNameCollection = [];
  960 + $rootScope.canvasLayerNameCollection.push(layer.name);
  961 + $('#canvas').setLayer(layer.name, {
  962 + handle: {
  963 + type: 'rectangle',
  964 + fillStyle: '#fff',
  965 + strokeStyle: '#c33',
  966 + strokeWidth: 2,
  967 + width: 5, height: 5,
  968 + cornerRadius: 3
  969 + }
  970 + }).drawLayers();
  971 +
  972 + },
  973 + dblclick: function (layer) {
  974 +
  975 + $rootScope.IsTextAlreadySave = false;
  976 + var RectNameArray = (layer.name).split("_");
  977 +
  978 + var TextAreaRectangleName = "TextArea_";
  979 + var TextAreaRectNameConcat = TextAreaRectangleName.concat(RectNameArray[1]);
  980 + $rootScope.TextAreaRectID = layer.name;
  981 + $rootScope.TextID = TextAreaRectNameConcat;
  982 +
  983 + $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
  984 + $("#annotationTextModal").css("padding-right", "0px");
  985 + document.getElementById('modelbackground').style.display = "block";
  986 + $("#annotationTextModal").modal("toggle");
  987 +
  988 + $("#text_area").val('');
  989 + $("#text_area").css({ " font-family": "'Verdana, sans-serif'", "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
  990 + $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
  991 + // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
  992 +
  993 + $("#text-italic").removeClass("ActiveFormattingButtonClass");
  994 +
  995 + $("#text-bold").removeClass("ActiveFormattingButtonClass");
  996 +
  997 + $("#text-underline").removeClass("ActiveFormattingButtonClass");
  998 +
  999 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1000 +
  1001 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1002 +
  1003 + $("#text-center").removeClass("ActiveFormattingButtonClass");
  1004 +
  1005 + },
  1006 + mouseout: function (layer) {
  1007 + $rootScope.canvasLayerNameCollection = [];
  1008 + $('#canvas').setLayer(layer.name, {
  1009 + handle: {
  1010 + type: 'rectangle',
  1011 + fillStyle: 'pink',
  1012 + strokeStyle: 'yellow',
  1013 + strokeWidth: 0,
  1014 + width: 0, height: 0,
  1015 + cornerRadius: 0
  1016 + }
  1017 +
  1018 + }).drawLayers();
  1019 +
  1020 + },
  1021 + mouseover: function (layer) {
  1022 +
  1023 + $('#canvas').setLayer(layer.name, {
  1024 + handle: {
  1025 + type: 'rectangle',
  1026 + fillStyle: '#fff',
  1027 + strokeStyle: '#c33',
  1028 + strokeWidth: 2,
  1029 + width: 5, height: 5,
  1030 + cornerRadius: 3
  1031 + }
  1032 + }).drawLayers();
  1033 +
  1034 + }
  1035 + });
  1036 + // Annotation: Edit Text option is missing.
  1037 + // alert($rootScope.CurrentWidth);
  1038 + // alert($rootScope.CurrentHeight);
  1039 + $("#annotationTextModal").css("padding-right", "0px");
  1040 + if (($rootScope.CurrentWidth > 0 && $rootScope.CurrentHeight > 0) || ($rootScope.CurrentWidth > 0 && $rootScope.CurrentHeight <= 0) || ($rootScope.CurrentWidth <= 0 && $rootScope.CurrentHeight > 0)) {
  1041 + $("#annotationTextModal").modal("toggle");
  1042 + document.getElementById('modelbackground').style.display = "block";
  1043 + }
  1044 + $('.btnCursor').trigger('click');
  1045 + $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
  1046 +
  1047 + $("#text_area").val('');
  1048 +
  1049 + $("#text_area").css({ " font-family": 'Verdana, sans-serif', "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
  1050 +
  1051 + $("#text-italic").removeClass("ActiveFormattingButtonClass");
  1052 +
  1053 + $("#text-bold").removeClass("ActiveFormattingButtonClass");
  1054 +
  1055 + $("#text-underline").removeClass("ActiveFormattingButtonClass");
  1056 +
  1057 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1058 +
  1059 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1060 +
  1061 + $("#text-center").removeClass("ActiveFormattingButtonClass");
  1062 +
  1063 + $(".btn-annotation").removeClass("activebtncolor");
  1064 +
  1065 + $('.btnCursor').addClass('activebtncolor');
  1066 +
  1067 +
  1068 +
  1069 + }
  1070 +
  1071 +
  1072 +
  1073 + $rootScope.clicked = true;
  1074 + $rootScope.offsetX1 = 0;
  1075 + $rootScope.offsetY1 = 0;
  1076 + $rootScope.x = 0;
  1077 + $rootScope.y = 0;
  1078 + $rootScope.mousePressed = false;
  1079 + $rootScope.lastX; $rootScope.lastY;
  1080 + var ctx;
  1081 + $rootScope.OnPaintCanvasMouseDown = function (event) {
  1082 +
  1083 + var canvasElement = document.getElementById("canvas");
  1084 + var ctx = canvasElement.getContext("2d");
  1085 +
  1086 + // var x = event.clientX;
  1087 + // var y = event.clientY;
  1088 + $rootScope.offsetX1 = 0;
  1089 + $rootScope.offsetY1 = 0;
  1090 + $rootScope.offsetX1 = event.offsetX;
  1091 + $rootScope.offsetY1 = event.offsetY;
  1092 +
  1093 + ctx.clearRect(0, 0, 2277, 3248);
  1094 + $rootScope.clicked = true;
  1095 +
  1096 + // alert("x:"+$rootScope.offsetX1 + " y:" + $rootScope.offsetY1);
  1097 + }
  1098 +
  1099 + $rootScope.rectNumber = 0;
  1100 + $rootScope.LineNumber = 0;
  1101 + $rootScope.CircleNumber = 0;
  1102 + $rootScope.ArrowNumber = 0;
  1103 + $rootScope.PinNumber = 0;
  1104 + $rootScope.PinArcNumber = 0;
  1105 + $rootScope.ObjectIndex = 0;
  1106 + $rootScope.ArcObjectIndex = 0;
  1107 + $rootScope.PinObjectIndex = 0;
  1108 + $rootScope.TextNumber = 0;
  1109 + $rootScope.resetTextSave = 0;
  1110 + $rootScope.ObjectIndexSave = 0;
  1111 +
  1112 + var arrayRect = {};
  1113 +
  1114 + var storeLine = '';
  1115 + //$rootScope.canvasLayerNameCollection1 = [];
  1116 + $rootScope.OnPaintCanvasMouseUp = function (event) {
  1117 +
  1118 + if (!$rootScope.clicked) {
  1119 + return;
  1120 + }
  1121 + $rootScope.clicked = false;
  1122 + $rootScope.x = 0;
  1123 + $rootScope.y = 0;
  1124 + $rootScope.x = parseInt(event.clientX - ($("#canvas").offset().left));
  1125 + $rootScope.y = parseInt(event.clientY - ($("#canvas").offset().top));
  1126 +
  1127 + var canvasElement = document.getElementById("canvas");
  1128 + var ctx = canvasElement.getContext("2d");
  1129 +
  1130 + var canvasPaintElement = document.getElementById("canvasPaint");
  1131 + var PaintCanvasctx = canvasPaintElement.getContext("2d");
  1132 +
  1133 +
  1134 + switch ($rootScope.shapeType) {
  1135 +
  1136 + case "cursor":
  1137 + // ctx.clearRect(0, 0, 2277, 3248);
  1138 + ctx.beginPath();
  1139 + PaintCanvasctx.beginPath();
  1140 +
  1141 +
  1142 + break;
  1143 +
  1144 + case "Line":
  1145 + //$rootScope.canvasLayerNameCollection = [];
  1146 + $rootScope.LineNumber = $rootScope.ObjectIndex++;
  1147 +
  1148 + $rootScope.LineFn('#canvas', $rootScope.LineNumber, $rootScope.shapestyleborderColor, $rootScope.shapestyleborderWidth, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.x, $rootScope.y)
  1149 +
  1150 + break;
  1151 +
  1152 + case "Rectangle":
  1153 + $rootScope.rectNumber = $rootScope.ObjectIndex++;
  1154 + $rootScope.RectangleFn('#canvas', $rootScope.rectNumber, $rootScope.shapestyleFillColor, $rootScope.shapestyleborderColor, $rootScope.shapestyleOpacity, $rootScope.shapestyleborderWidth, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.x, $rootScope.y);
  1155 +
  1156 + break;
  1157 +
  1158 + case "Circle":
  1159 + // alert($rootScope.shapestyleborderWidth);
  1160 + $rootScope.CircleNumber = $rootScope.ObjectIndex++;
  1161 +
  1162 + $rootScope.CircleFn('#canvas', $rootScope.CircleNumber, $rootScope.shapestyleOpacity, $rootScope.shapestyleborderColor, $rootScope.shapestyleborderWidth, $rootScope.shapestyleFillColor, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.x, $rootScope.y);
  1163 + break;
  1164 + case "Arrow":
  1165 + $rootScope.ArrowNumber = $rootScope.ObjectIndex++;
  1166 +
  1167 + $rootScope.ArrowFn('#canvas', $rootScope.ArrowNumber, $rootScope.shapestyleborderColor, $rootScope.shapestyleborderWidth, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.x, $rootScope.y);
  1168 +
  1169 + // $scope.resetRect += 1;
  1170 + break;
  1171 + case "Pin":
  1172 + $rootScope.PinNumber = $rootScope.PinObjectIndex++;
  1173 + $rootScope.PinArcNumber = $rootScope.ArcObjectIndex++;
  1174 + $rootScope.PinFn('#canvas', $rootScope.PinNumber, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.x, $rootScope.y, $rootScope.PinArcNumber);
  1175 +
  1176 + break;
  1177 + case "TextArea":
  1178 +
  1179 + $rootScope.IsTextAlreadySave = false;
  1180 + $("#text_area").val('');
  1181 + // Draw text
  1182 + $rootScope.resetTextRect = $rootScope.ObjectIndex++;
  1183 + $rootScope.TextNumber = $rootScope.ObjectIndex++;
  1184 + $rootScope.TextAreaFn('#canvas', $rootScope.TextNumber, $rootScope.offsetX1, $rootScope.offsetY1, $rootScope.resetTextRect, $rootScope.shapestyleOpacity, $rootScope.shapestyleborderColor, $rootScope.shapestyleborderWidth, $rootScope.shapestyleFillColor, $rootScope.x, $rootScope.y);
  1185 + break;
  1186 +
  1187 + case "DrawPolygon":
  1188 +
  1189 + break;
  1190 +
  1191 + }
  1192 + //}
  1193 +
  1194 + }
  1195 +
  1196 +
  1197 +
  1198 +
  1199 +
  1200 +
  1201 + ///-----
  1202 +
  1203 + $rootScope.saveText = function () {
  1204 + document.getElementById('modelbackground').style.display = "none";
  1205 + // this part will work first time when save button will be clicked
  1206 + if ($rootScope.IsTextAlreadySave == false) {
  1207 + // getting textarea style properties
  1208 + $rootScope.fontSizes = $("#text_area").css("font-size");
  1209 + $rootScope.fontWeight = $("#text_area").css("font-weight");
  1210 + $rootScope.fontStyle = $("#text_area").css("font-style");
  1211 + $rootScope.textAlignmt = $("#text_area").css("text-align");
  1212 + $rootScope.fontColor = $("#text_area").css("color");
  1213 + $rootScope.fontFamily = $("#text_area").css("font-family");
  1214 + $rootScope.underlineText = $("#text_area").css("text-decoration");
  1215 + $rootScope.textArea = $("#text_area").val();
  1216 +
  1217 + // deleting previous text area
  1218 +
  1219 +
  1220 + $("#canvas").removeLayer($rootScope.TextID).drawLayers();
  1221 + $("#canvas").removeLayer($rootScope.TextAreaRectID).drawLayers();
  1222 +
  1223 +
  1224 + // $("#canvas").removeLayer('TextArea_' + $rootScope.TextNumber).drawLayers();
  1225 + // $("#canvas").removeLayer("TextRect_" + $rootScope.TextNumber).drawLayers();
  1226 +
  1227 + // Text After Saving in Rectangle
  1228 + $rootScope.resetTextRect = $rootScope.ObjectIndex++;
  1229 + $('#canvas').drawText({
  1230 + layer: true,
  1231 + draggable: true,
  1232 + name: 'TextAreaNew_' + $rootScope.resetTextRect,
  1233 + groups: ['TextAreaNew_' + $rootScope.resetTextRect],
  1234 + dragGroups: ['TextAreaNew_' + $rootScope.resetTextRect],
  1235 + fillStyle: $rootScope.fontColor,
  1236 + fontStyle: $rootScope.fontWeight + " " + $rootScope.fontStyle,
  1237 + fontSize: $rootScope.fontSizes,
  1238 + fontFamily: $rootScope.fontFamily,
  1239 + align: $rootScope.textAlignmt,
  1240 + strokeWidth: 0,
  1241 + text: $rootScope.textArea,
  1242 + x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
  1243 + maxWidth: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
  1244 + maxHeight: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
  1245 + add: function (layer) {
  1246 +
  1247 + //$rootScope.TextPropertyArray.push({ Text1: '', Align: '', FontColor: '', FontSize: '', FontStyle: '', FontFamily: '' });
  1248 + $rootScope.TextPropertyArray.push({ layerName: layer.name, Rect_Text: layer.text, Align: layer.align, FontColor: layer.fillStyle, FontSize: layer.fontSize, FontStyle: layer.fontStyle, FontFamily: layer.fontFamily, TextDecoration: $rootScope.underlineText });
  1249 + }
  1250 + })
  1251 + // Draw rectangle
  1252 + .drawRect({
  1253 + name: 'TextArea1_' + $rootScope.resetTextRect,
  1254 + layer: true,
  1255 + draggable: true,
  1256 + groups: ['TextAreaNew_' + $rootScope.resetTextRect],
  1257 + dragGroups: ['TextAreaNew_' + $rootScope.resetTextRect],
  1258 + opacity: $rootScope.shapestyleOpacity,
  1259 + strokeStyle: $rootScope.shapestyleborderColor,
  1260 + strokeWidth: $rootScope.shapestyleborderWidth,
  1261 + x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
  1262 + width: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
  1263 + height: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
  1264 + click: function (layer) {
  1265 + $rootScope.shapeTypeText = "textAreaRect";
  1266 +
  1267 + var layerNameSplit = layer.name;
  1268 + var splitedName = layerNameSplit.split("_");
  1269 + var textValName = "TextAreaNew_";
  1270 + var concatinateResult = textValName.concat(splitedName[1]);
  1271 + $rootScope.canvasLayerNameCollection = [];
  1272 + $rootScope.canvasLayerNameCollection.push({ textareaRectangle: layer.name, textareaString: concatinateResult });
  1273 + $('#canvas').setLayer(layer.name, {
  1274 + handle: {
  1275 + type: 'rectangle',
  1276 + fillStyle: '#fff',
  1277 + strokeStyle: '#c33',
  1278 + strokeWidth: 2,
  1279 + width: 5, height: 5,
  1280 + cornerRadius: 3
  1281 + }
  1282 + }).drawLayers();
  1283 + },
  1284 + dblclick: function (layer) {
  1285 +
  1286 + $rootScope.isTextAreaClosedButtonActive = false;
  1287 + $rootScope.IsTextAlreadySave = true;
  1288 +
  1289 + var _rectLayerOnSave = layer.name;
  1290 + var _rectLayerOnSaveSplit = _rectLayerOnSave.split("_");
  1291 + var TextAreaRectName = "TextAreaNew_";
  1292 + var TextAreaRectNameConcatenated = TextAreaRectName.concat(_rectLayerOnSaveSplit[1]);
  1293 + // alert(TextAreaRectNameConcatenated);
  1294 + //if (_rectLayerOnSaveSplit[1]%2 == 0)
  1295 + //{
  1296 + // _rectLayerOnSaveSplit[1] = _rectLayerOnSaveSplit[1] - 1;
  1297 +
  1298 + //}
  1299 + //else
  1300 + //{
  1301 +
  1302 + // _rectLayerOnSaveSplit[1] = _rectLayerOnSaveSplit[1];
  1303 + //}
  1304 +
  1305 + $rootScope.layerNameArr = layer.name;
  1306 + $rootScope.rectTextArr = TextAreaRectNameConcatenated;
  1307 +
  1308 +
  1309 + $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
  1310 + // var _rectLayerOnSaveSplitInt;
  1311 +
  1312 +
  1313 + // _rectLayerOnSaveSplitInt = parseInt(_rectLayerOnSaveSplit[1]);
  1314 +
  1315 + //alert(_rectLayerOnSaveSplitInt);
  1316 + // alert($rootScope.TextPropertyArray.length);
  1317 +
  1318 +
  1319 + for (var i = 0; i <= $rootScope.TextPropertyArray.length - 1; i++) {
  1320 + if ($rootScope.TextPropertyArray[i].layerName == TextAreaRectNameConcatenated) {
  1321 +
  1322 + var textArrVal = $rootScope.TextPropertyArray[i].Rect_Text;
  1323 + $("#text_area").val(textArrVal);
  1324 + var fontStyleProp = $rootScope.TextPropertyArray[i].FontStyle;
  1325 + var fontWeightProp = fontStyleProp.split(" ");
  1326 +
  1327 + $("#text_area").css("font-size", $rootScope.TextPropertyArray[i].FontSize);
  1328 + $("#text_area").css("font-weight", fontWeightProp[0]);
  1329 + $("#text_area").css("font-style", fontWeightProp[1]);
  1330 + $("#text_area").css("text-align", $rootScope.TextPropertyArray[i].Align);
  1331 + $("#text_area").css("color", $rootScope.TextPropertyArray[i].FontColor);
  1332 + $("#text_area").css("font-family", $rootScope.TextPropertyArray[i].FontFamily);
  1333 + $("#text_area").css("text-decoration", $rootScope.TextPropertyArray[i].TextDecoration);
  1334 + $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": $rootScope.TextPropertyArray[i].FontColor });
  1335 +
  1336 +
  1337 +
  1338 + // $(".ActiveDefaultColorAnnotation").css({ "background-color": $rootScope.TextPropertyArray[_rectLayerOnSaveSplitInt].FontColor + "!important" });
  1339 + // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
  1340 +
  1341 +
  1342 + //adding text text decoration active class in text edit pop-up
  1343 +
  1344 +
  1345 +
  1346 +
  1347 + if ($rootScope.TextPropertyArray[i].TextDecoration == "underline") {
  1348 +
  1349 + $("#text-underline").addClass("ActiveFormattingButtonClass");
  1350 +
  1351 + }
  1352 +
  1353 + else {
  1354 +
  1355 + $("#text-underline").removeClass("ActiveFormattingButtonClass");
  1356 +
  1357 + }
  1358 +
  1359 +
  1360 +
  1361 + //adding text font weight active class in text edit pop-up
  1362 +
  1363 + if (fontWeightProp[0] == 700) {
  1364 +
  1365 +
  1366 +
  1367 + $("#text-bold").addClass("ActiveFormattingButtonClass");
  1368 +
  1369 + }
  1370 +
  1371 + else {
  1372 +
  1373 + $("#text-bold").removeClass("ActiveFormattingButtonClass");
  1374 +
  1375 + }
  1376 +
  1377 + //adding text font style active class in text edit pop-up
  1378 +
  1379 + if (fontWeightProp[1] == "italic") {
  1380 +
  1381 +
  1382 + $("#text-italic").addClass("ActiveFormattingButtonClass");
  1383 + }
  1384 + else {
  1385 + $("#text-italic").removeClass("ActiveFormattingButtonClass");
  1386 +
  1387 +
  1388 + }
  1389 +
  1390 + //adding text alignment active class in text edit pop-up
  1391 +
  1392 + if ($rootScope.TextPropertyArray[i].Align == "left") {
  1393 +
  1394 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1395 +
  1396 + $("#text-center").removeClass("ActiveFormattingButtonClass")
  1397 +
  1398 + $("#text-left").addClass("ActiveFormattingButtonClass");
  1399 +
  1400 + }
  1401 +
  1402 + else if ($rootScope.TextPropertyArray[i].Align == "right") {
  1403 +
  1404 +
  1405 +
  1406 + $("#text-center").removeClass("ActiveFormattingButtonClass")
  1407 +
  1408 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1409 +
  1410 + $("#text-right").addClass("ActiveFormattingButtonClass");
  1411 +
  1412 +
  1413 +
  1414 + }
  1415 +
  1416 + else if ($rootScope.TextPropertyArray[i].Align == "center") {
  1417 +
  1418 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1419 +
  1420 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1421 +
  1422 + $("#text-center").addClass("ActiveFormattingButtonClass");
  1423 +
  1424 +
  1425 +
  1426 + }
  1427 +
  1428 +
  1429 +
  1430 + }
  1431 + else {
  1432 + // alert("no");
  1433 +
  1434 + }
  1435 +
  1436 + }
  1437 +
  1438 +
  1439 + // _rectLayerOnSaveSplitInt = '';
  1440 + textArrVal = '';
  1441 + $("#annotationTextModal").css("padding-right", "0px");
  1442 + document.getElementById('modelbackground').style.display = "block";
  1443 + $("#annotationTextModal").modal("toggle");
  1444 +
  1445 +
  1446 +
  1447 +
  1448 + },
  1449 + mouseout: function (layer) {
  1450 + $rootScope.canvasLayerNameCollection = [];
  1451 + $('#canvas').setLayer(layer.name, {
  1452 + handle: {
  1453 + type: 'rectangle',
  1454 + fillStyle: 'pink',
  1455 + strokeStyle: 'yellow',
  1456 + strokeWidth: 0,
  1457 + width: 0, height: 0,
  1458 + cornerRadius: 0
  1459 + }
  1460 + }).drawLayers();
  1461 + },
  1462 + mouseover: function (layer) {
  1463 + $('#canvas').setLayer(layer.name, {
  1464 + handle: {
  1465 + type: 'rectangle',
  1466 + fillStyle: '#fff',
  1467 + strokeStyle: '#c33',
  1468 + strokeWidth: 2,
  1469 + width: 5, height: 5,
  1470 + cornerRadius: 3
  1471 + }
  1472 + }).drawLayers();
  1473 +
  1474 + }
  1475 + });
  1476 + $("#text_area").val('');
  1477 + $("#text_area").css({ " font-family": "'Verdana, sans-serif'", "font-size": "14px", "font-weight": "normal", "font-style": "normal", "color": "#000", "text-align": "left", "text-decoration": "none" });
  1478 +
  1479 + $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" });
  1480 + $("#text-italic").removeClass("ActiveFormattingButtonClass");
  1481 +
  1482 + $("#text-bold").removeClass("ActiveFormattingButtonClass");
  1483 +
  1484 + $("#text-underline").removeClass("ActiveFormattingButtonClass");
  1485 +
  1486 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1487 +
  1488 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1489 +
  1490 + $("#text-center").removeClass("ActiveFormattingButtonClass");
  1491 +
  1492 +
  1493 + }
  1494 +
  1495 + // this part will work second time when save button will be clicked
  1496 + else {
  1497 +
  1498 + // getting textarea style properties
  1499 + var _modifiedText = $("#text_area").val();
  1500 + var _modifiedFontSize = $("#text_area").css("font-size");
  1501 + var _modifiedFontWeight = $("#text_area").css("font-weight");
  1502 + var _modifiedFontStyle = $("#text_area").css("font-style");
  1503 + var _modifiedTextAlign = $("#text_area").css("text-align");
  1504 + var _modifiedFontColor = $("#text_area").css("color");
  1505 + var _modifiedFontFamily = $("#text_area").css("font-family");
  1506 + var _modifiedFontDecoration = $("#text_area").css("text-decoration");
  1507 +
  1508 + // deleting previous textarea
  1509 +
  1510 +
  1511 + $("#canvas").removeLayer($rootScope.layerNameArr).drawLayers();
  1512 + $("#canvas").removeLayer($rootScope.rectTextArr).drawLayers();
  1513 +
  1514 + $rootScope.resetTextRectSave = $rootScope.ObjectIndexSave++;
  1515 + $rootScope.resetTextSave = $rootScope.ObjectIndexSave++;
  1516 +
  1517 + // generating new text area
  1518 + $('#canvas').drawText({
  1519 + layer: true,
  1520 + draggable: true,
  1521 + name: 'TextAreaAfterEdit_' + $rootScope.resetTextSave,
  1522 + groups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
  1523 + dragGroups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
  1524 + fillStyle: _modifiedFontColor,
  1525 + fontStyle: _modifiedFontWeight + " " + _modifiedFontStyle,
  1526 + fontSize: _modifiedFontSize,
  1527 + fontFamily: _modifiedFontFamily,
  1528 + align: _modifiedTextAlign,
  1529 + strokeWidth: 0,
  1530 + text: _modifiedText,
  1531 + x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
  1532 + maxWidth: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
  1533 + maxHeight: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height
  1534 +
  1535 + })
  1536 + // Draw rect as wide as the text
  1537 + .drawRect({
  1538 + name: 'TextAreaAfterEditRect_' + $rootScope.resetTextSave,
  1539 + layer: true,
  1540 + draggable: true,
  1541 + groups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
  1542 + dragGroups: ['TextAreaAfterEdit_' + $rootScope.resetTextSave],
  1543 + opacity: $rootScope.shapestyleOpacity,
  1544 + strokeStyle: $rootScope.shapestyleborderColor,
  1545 + strokeWidth: $rootScope.shapestyleborderWidth,
  1546 + x: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].x, y: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].y,
  1547 + width: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].width,
  1548 + height: $rootScope.rectDimension[$rootScope.rectDimension.length - 1].height,
  1549 + click: function (layer) {
  1550 + $rootScope.shapeTypeText = "textAreaRect";
  1551 + var layerNameSplit = layer.name;
  1552 + var splitedName = layerNameSplit.split("_");
  1553 + var textValName = "TextAreaAfterEdit_";
  1554 + var concatinateResult = textValName.concat(splitedName[1]);
  1555 + $rootScope.canvasLayerNameCollection = [];
  1556 + $rootScope.canvasLayerNameCollection.push({ textareaRectangle: layer.name, textareaString: concatinateResult });
  1557 +
  1558 + $('#canvas').setLayer(layer.name, {
  1559 + handle: {
  1560 + type: 'rectangle',
  1561 + fillStyle: '#fff',
  1562 + strokeStyle: '#c33',
  1563 + strokeWidth: 2,
  1564 + width: 5, height: 5,
  1565 + cornerRadius: 3
  1566 + }
  1567 + }).drawLayers();
  1568 +
  1569 + },
  1570 + dblclick: function (layer) {
  1571 +
  1572 +
  1573 + $rootScope.isTextAreaClosedButtonActive = false;
  1574 + $rootScope.IsTextAlreadySave = true;
  1575 + var _rectLayerOnSave = layer.name;
  1576 + var _rectLayerOnSaveSplit = _rectLayerOnSave.split("_");
  1577 + var RectNameAfterEdit = "TextAreaAfterEdit_";
  1578 + var RectNameAfterEditResult = RectNameAfterEdit.concat(_rectLayerOnSaveSplit[1]);
  1579 + $rootScope.modifySavedTextIndexNumber = _rectLayerOnSaveSplit[1];
  1580 +
  1581 + $rootScope.layerNameArr = layer.name;
  1582 + $rootScope.rectTextArr = RectNameAfterEditResult;
  1583 +
  1584 + $rootScope.rectDimension.push({ width: layer.width, height: layer.height, x: layer.x, y: layer.y });
  1585 + $("#text_area").val(_modifiedText);
  1586 + $("#text_area").css("font-size", _modifiedFontSize);
  1587 + $("#text_area").css("font-weight", _modifiedFontWeight);
  1588 + $("#text_area").css("font-style", _modifiedFontStyle);
  1589 + $("#text_area").css("text-align", _modifiedTextAlign);
  1590 + $("#text_area").css("color", _modifiedFontColor);
  1591 + $("#text_area").css("font-family", _modifiedFontFamily);
  1592 + $("#text_area").css("text-decoration", _modifiedFontDecoration);
  1593 + $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": _modifiedFontColor });
  1594 + // $(".ActiveDefaultColorAnnotation").css({ "background-color": _modifiedFontColor + "!important" });
  1595 + // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation");
  1596 +
  1597 + //adding text text decoration active class in text edit pop-up
  1598 + if (_modifiedFontDecoration == "underline") {
  1599 + $("#text-underline").addClass("ActiveFormattingButtonClass");
  1600 + }
  1601 + else {
  1602 + $("#text-underline").removeClass("ActiveFormattingButtonClass");
  1603 + }
  1604 +
  1605 + //adding text font weight active class in text edit pop-up
  1606 + if (_modifiedFontWeight == 700) {
  1607 +
  1608 + $("#text-bold").addClass("ActiveFormattingButtonClass");
  1609 + }
  1610 + else {
  1611 +
  1612 + $("#text-bold").removeClass("ActiveFormattingButtonClass");
  1613 +
  1614 + }
  1615 +
  1616 + //adding text font style active class in text edit pop-up
  1617 + if (_modifiedFontStyle == "italic") {
  1618 +
  1619 + $("#text-italic").addClass("ActiveFormattingButtonClass");
  1620 + }
  1621 + else {
  1622 + $("#text-italic").removeClass("ActiveFormattingButtonClass");
  1623 +
  1624 + }
  1625 +
  1626 + //adding text alignment active class in text edit pop-up
  1627 + if (_modifiedTextAlign == "left") {
  1628 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1629 + $("#text-center").removeClass("ActiveFormattingButtonClass")
  1630 + $("#text-left").addClass("ActiveFormattingButtonClass");
  1631 + }
  1632 + else if (_modifiedTextAlign == "right") {
  1633 +
  1634 + $("#text-center").removeClass("ActiveFormattingButtonClass")
  1635 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1636 + $("#text-right").addClass("ActiveFormattingButtonClass");
  1637 +
  1638 + }
  1639 + else if (_modifiedTextAlign == "center") {
  1640 + $("#text-left").removeClass("ActiveFormattingButtonClass");
  1641 + $("#text-right").removeClass("ActiveFormattingButtonClass");
  1642 + $("#text-center").addClass("ActiveFormattingButtonClass");
  1643 +
  1644 + }
  1645 +
  1646 + document.getElementById('modelbackground').style.display = "block";
  1647 + $("#annotationTextModal").modal("toggle");
  1648 + },
  1649 + mouseout: function (layer) {
  1650 + $rootScope.canvasLayerNameCollection = [];
  1651 + $('#canvas').setLayer(layer.name, {
  1652 + handle: {
  1653 + type: 'rectangle',
  1654 + fillStyle: 'pink',
  1655 + strokeStyle: 'yellow',
  1656 + strokeWidth: 0,
  1657 + width: 0, height: 0,
  1658 + cornerRadius: 0
  1659 + }
  1660 + }).drawLayers();
  1661 + },
  1662 + mouseover: function (layer) {
  1663 + $('#canvas').setLayer(layer.name, {
  1664 + handle: {
  1665 + type: 'rectangle',
  1666 + fillStyle: '#fff',
  1667 + strokeStyle: '#c33',
  1668 + strokeWidth: 2,
  1669 + width: 5, height: 5,
  1670 + cornerRadius: 3
  1671 + }
  1672 + }).drawLayers();
  1673 +
  1674 + }
  1675 + });
  1676 +
  1677 + }
  1678 + }
  1679 + //----
  1680 +
  1681 + $rootScope.BindCanvasDrawingListners = function (event) {
  1682 +
  1683 + $rootScope.clicked = true;
  1684 + // OnPaintCanvasMouseDown(event);
  1685 +
  1686 + var annotationCanvas = document.getElementById('canvas');
  1687 + if (annotationCanvas != null || annotationCanvas != undefined) {
  1688 + annotationCanvas.addEventListener('mousedown', $rootScope.OnPaintCanvasMouseDown, false);
  1689 + annotationCanvas.addEventListener('mouseup', $rootScope.OnPaintCanvasMouseUp, false);
  1690 + }
  1691 + // alert("doclick");
  1692 + };
  1693 +
  1694 +
  1695 + $(document).keydown(function (event) {
  1696 +
  1697 + // predefined function for detecting keyboard key
  1698 + if (event.which == 46) {
  1699 +
  1700 + if ($rootScope.shapeTypePin == "Pin") {
  1701 +
  1702 +
  1703 + $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].pinName).drawLayers();
  1704 + $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].ArcName).drawLayers();
  1705 + $rootScope.shapeTypePin = "";
  1706 +
  1707 + }
  1708 + else if ($rootScope.shapeTypeText == "textAreaRect") {
  1709 +
  1710 +
  1711 +
  1712 + $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].textareaRectangle).drawLayers();
  1713 + $("#canvas").removeLayer($rootScope.canvasLayerNameCollection[0].textareaString).drawLayers();
  1714 + $rootScope.shapeTypeText = "";
  1715 +
  1716 + }
  1717 + else {
  1718 +
  1719 + // alert($rootScope.canvasLayerNameCollection);
  1720 + $("#canvas").removeLayer($rootScope.canvasLayerNameCollection).drawLayers();
  1721 + }
  1722 +
  1723 +
  1724 + }
  1725 +
  1726 + });
  1727 +
  1728 +
  1729 + $rootScope.closeModal = function () {
  1730 +
  1731 + document.getElementById('modelbackground').style.display = "none";
  1732 +
  1733 + //if ($rootScope.isTextAreaClosedButtonActive == true) {
  1734 + // $("#canvas").removeLayer('TextArea_' + $rootScope.TextNumber).drawLayers();
  1735 + // $("#canvas").removeLayer("TextRect_" + $rootScope.resetTextRect).drawLayers();
  1736 +
  1737 + //}
  1738 +
  1739 + }
  1740 + //-- End ----------------------------
  1741 +
  1742 +
428 1743 $rootScope.AddClick = function (x, y, dragging) {
429 1744 $rootScope.clickX.push(x);
430 1745 $rootScope.clickY.push(y);
... ... @@ -501,8 +1816,11 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
501 1816 $rootScope.lastX = x; $rootScope.lastY = y;
502 1817 }
503 1818  
504   -
505   -
  1819 + $rootScope.disableAnnotationTB = false;
  1820 + $rootScope.disableAnnotationTBFn = function()
  1821 + {
  1822 + $rootScope.disableAnnotationTB = true;
  1823 + }
506 1824  
507 1825 //list manager function
508 1826  
... ... @@ -511,6 +1829,7 @@ AIA.controller(&quot;HomeController&quot;, [&quot;$rootScope&quot;, &quot;Modules&quot;, &quot;$log&quot;, &quot;$location&quot;,
511 1829 $rootScope.disableAnnotationtoolOnListManager = false;
512 1830 $rootScope.ShowListManager = function () {
513 1831 console.log('ShowListManager')
  1832 +
514 1833 $rootScope.disableAnnotationtoolOnListManager = true;
515 1834  
516 1835 $rootScope.isLoading = true;
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/LabExercController.js
... ... @@ -35,6 +35,7 @@ function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location
35 35 $scope.IsVisible = function () {
36 36 // $scope.scroll();
37 37  
  38 +
38 39 }
39 40  
40 41 $scope.scroll = function () {
... ... @@ -63,7 +64,7 @@ function ($scope, $rootScope, pages, log, $http, DataService, $filter, $location
63 64 }
64 65  
65 66 $scope.getLabExerciseTitle = function (title) {
66   -
  67 + $rootScope.menuLabExer = 1;
67 68  
68 69 if (title != null) {
69 70 $scope.LabExerciseQuiz = title;
... ...
400-SOURCECODE/AIAHTML5.Web/app/main/AIA.js
... ... @@ -272,7 +272,7 @@ AIA.constant(&#39;BodySystems&#39;, [&#39;Cardiovascular&#39;, &#39;Digestive&#39;, &#39;Endocrine&#39;, &#39;Immune
272 272 AIA.constant('ViewOrientations', ['Anterior', 'Posterior', 'Lateral','Medial', 'Superior', 'Inferior', 'Non-standard']);
273 273  
274 274  
275   -AIA.constant('MedicalSpecialties', ['Allergy & Immunology', 'Anesthesiology', 'Cardiology', 'Chiropractic', 'Dentistry', 'Dermatology', 'Embryology', 'Emergency Medicine', 'Endocrinology', 'First Aid', 'Gastroenterology', 'General Surgery', 'Geriatrics', 'Hematology', 'Infectious Diseases', 'Microbiology', 'Nuclear Medicine', 'Nephrology', 'Neurology', 'Nutrition', 'Obstetrics and Gynecology (OB/GYN)', 'Oncology (Cancer)', 'Opthalmology', 'Optometry', 'Orthopedics', 'Osteopathy', 'Otolaryngology (ENT)', 'Pathology', 'Pediatrics', 'Physiology', 'Plastic Surgery', 'Podiatry', 'Pulmonary Medicine', 'Radiology', 'Respiratory Therapy', 'Rheumatology', 'Sports Medicine', 'Vascular Medicine', 'Thoracic Surgery']);
  275 +AIA.constant('MedicalSpecialties', ['Allergy & Immunology', 'Anesthesiology', 'Cardiology', 'Chiropractic', 'Dentistry', 'Dermatology', 'Embryology', 'Emergency Medicine', 'Endocrinology', 'First Aid', 'Gastroenterology', 'General Surgery', 'Geriatrics', 'Hematology', 'Infectious Diseases', 'Microbiology', 'Nuclear Medicine', 'Nephrology', 'Neurology', 'Nutrition', 'Obstetrics and Gynecology (OB/GYN)', 'Oncology (Cancer)', 'Opthalmology', 'Optometry', 'Orthopedics', 'Osteopathy', 'Otolaryngology (ENT)', 'Pathology', 'Pediatrics', 'Physiology', 'Plastic Surgery', 'Podiatry', 'Pulmonary Medicine', 'Radiology', 'Respiratory Therapy', 'Rheumatology', 'Sports Medicine', 'Urology', 'Vascular Medicine', 'Thoracic Surgery']);
276 276  
277 277  
278 278  
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/ca/ca-view.html
... ... @@ -35,7 +35,18 @@
35 35 <div class="col-md-2 col-sm-4 pad-lftrgt3">
36 36 <div class="form-group">
37 37 <h6 class="text-center text-primary txt-white f11">Search</h6>
38   - <button class="btn btn-primary btn-sm" ng-click="ApplySearch(query)"><i class="fa fa-search"></i></button>&nbsp;<button class="btn btn-primary btn-sm col-md-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>
  38 +
  39 +
  40 + <div class="btn-group col-xs-12" style="padding:0;">
  41 + <button type="button" class="btn btn-primary btn-sm col-xs-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>
  42 + <button type="button" class="btn btn-primary btn-sm col-xs-3" ng-click="ApplySearch(query)">
  43 + <i class="fa fa-search"></i>
  44 + </button>
  45 +
  46 + </div>
  47 +
  48 +
  49 + <!--<button class="btn btn-primary btn-sm" ng-click="ApplySearch(query)"><i class="fa fa-search"></i></button>&nbsp;<button class="btn btn-primary btn-sm col-md-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>-->
39 50 </div>
40 51 </div>
41 52 </div>
... ... @@ -72,7 +83,7 @@
72 83 </td>
73 84 </tr>
74 85 </tbody>
75   - <tbody ng-if="filterstring" class="clstbody">
  86 + <tbody ng-if="filterstring" class="clstbodyca">
76 87 <tr ng-click="showItem(item._id)" ng-dblclick="openView($event)" ng-repeat="item in searchCAListViewData">
77 88 <td style="max-width: 250px;">
78 89 {{item._Title}}
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/ci/ci-view.html
... ... @@ -49,7 +49,18 @@
49 49 <div class="col-md-2 col-sm-4 pad-lftrgt3">
50 50 <div class="form-group">
51 51 <h6 class="text-center text-primary txt-white f11">Search</h6>
52   - <button class="btn btn-primary btn-sm" ng-click="ApplySearch(query)"><i class="fa fa-search"></i></button>&nbsp;<button class="btn btn-primary btn-sm col-md-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>
  52 +
  53 + <div class="btn-group col-xs-12" style="padding:0;">
  54 + <button type="button" class="btn btn-primary btn-sm col-xs-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>
  55 + <button type="button" class="btn btn-primary btn-sm col-xs-3" ng-click="ApplySearch(query)">
  56 + <i class="fa fa-search"></i>
  57 + </button>
  58 +
  59 + </div>
  60 +
  61 +
  62 +
  63 + <!--<button class="btn btn-primary btn-sm" ng-click="ApplySearch(query)"><i class="fa fa-search"></i></button>&nbsp;<button class="btn btn-primary btn-sm col-md-9" ng-click="Reset(query)"><i class="fa fa-eye"></i> Show All</button>-->
53 64 </div>
54 65 </div>
55 66 </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="openBodyView()" id="CIView" class="ciView" ng-controller="CIController"></div>
  3 + <div ng-init="openBodyView()" id="CIView" class="ciView" ng-controller="CIController" style=" position: absolute !important;"></div>
  4 +
  5 +
4 6 </div>
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/da/da-body-view-list.html
... ... @@ -28,17 +28,7 @@
28 28  
29 29 <script>
30 30 $(function () {
31   - $("#slider-range-min-2").slider({
32   - range: "min",
33   - min: 1,
34   - max: 60,
35   - value: 10,
36   - slide: function (event, ui) {
37   - $("#amount-2").val(ui.value);
38   - }
39   - });
40   - $("#amount-2").val($("#slider-vertical-2").slider("value"));
41   -
  31 +
42 32 $(function () {
43 33 $('[data-toggle="tooltip"]').tooltip();
44 34 })
... ...
400-SOURCECODE/AIAHTML5.Web/app/views/da/da-view.html
... ... @@ -117,6 +117,7 @@
117 117 color: #000;
118 118 border-radius: 0;
119 119 }
  120 + .pad0{padding:0;}
120 121 </style>
121 122 <!--Annotation Toolbar: Jcanvas-->
122 123 <style>
... ... @@ -142,111 +143,113 @@
142 143 <div class="pos-relative leftToolBar tools pull-left">
143 144 <div class="toggle-icon toggleBar toggleHeadingButton" title="Show/Hide Sidebar" style="top:20px;"></div>
144 145 <div class="" style="top:20px">
145   - <div class="col-sm-6">
  146 + <div class="col-xs-6">
146 147 <button id="btnIdentity" onclick="OnIdentityClick()" class="btn btn-primary btn-sm tooltip-custom" data-toggle="tooltip" data-placement="bottom" title="Identify"> <img src="content/images/icon-identity.png" alt=""></button>
147 148 </div>
148   - <div class="col-sm-6 pull-right">
  149 + <div class="col-xs-6 pull-right">
149 150 <button class="btn btn-black btn-sm pull-right tooltip-custom" onclick="OnZoom()" id="btnZoom" data-toggle="tooltip" data-placement="bottom" title="Zoom-in/Zoom-out">
150 151 <img src="content/images/icon-zoom.png" alt="">
151 152 </button>
152 153  
153 154 </div>
154   - <div class="col-sm-12">
  155 + <div class="col-xs-12">
155 156 <button id="btnTranparency" class="btn btn-black btn-sm btn-block marginTop5 tooltip-custom" onclick="onTboxCreation()" data-toggle="tooltip" data-placement="bottom" title="Transparency Box"><img src="content/images/icon-transparency.png" alt=""></button>
156 157 </div>
157 158  
158   -
159   - <div class="col-sm-6">
160   - <button id="btnNormalMode" class="btn btn-primary btn-sm marginTop5 tooltip-custom" onclick="OnEnableNormalMode()" data-toggle="tooltip" data-placement="bottom" title="Normal"> <img src="content/images/bulb1.png" alt=""></button>
161   - </div>
162   - <div class="col-sm-6">
163   - <button id="btnExtract" class="btn btn-black btn-sm pull-right marginTop5 tooltip-custom" onclick="OnEnableExtract()" data-toggle="tooltip" data-placement="bottom" title="Extract"><img src="content/images/bulb1.png" alt=""></button>
164   - </div>
165   -
166   - <div class="col-sm-6">
167   - <button id="btnHighLight" class="btn btn-black btn-sm marginTop5 tooltip-custom btn-resize" onclick="OnEnableHighlight()" data-toggle="tooltip" data-placement="bottom" title="Highlight"> <img src="content/images/bulb.png" alt=""></button>
  159 + <div class="col-xs-12 pad0">
  160 + <div class="col-xs-6">
  161 + <button id="btnNormalMode" class="btn btn-primary btn-sm marginTop5 tooltip-custom" onclick="OnEnableNormalMode()" data-toggle="tooltip" data-placement="bottom" title="Normal"> <img src="content/images/bulb.png" alt=""></button>
  162 + </div>
  163 + <div class="col-xs-6">
  164 + <button id="btnExtract" class="btn btn-black btn-sm pull-right marginTop5 tooltip-custom" onclick="OnEnableExtract()" data-toggle="tooltip" data-placement="bottom" title="Extract"><img src="content/images/bulb1.png" alt=""></button>
  165 + </div>
168 166 </div>
  167 + <div class="col-xs-12 pad0">
  168 + <div class="col-xs-6">
  169 + <button id="btnHighLight" class="btn btn-black btn-sm marginTop5 tooltip-custom btn-resize" onclick="OnEnableHighlight()" data-toggle="tooltip" data-placement="bottom" title="Highlight"> <img src="content/images/Highlight-bulb.png" alt=""></button>
  170 + </div>
169 171  
170   - <div class="col-sm-6 dropdown hover-tool">
171   - <div class="custom-tooltip">Highlight Options</div>
172   - <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu2" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true" ng-click="LoadBodySystemData()"><img src="content/images/icon-highlight.png" alt="" title=""></button>
173   - <ul class="dropdown-menu" aria-labelledby="dropdownMenu2">
174   - <li ng-class="CurrentStructure"><a href="#" title="Current Structure">Current Structure</a></li>
175   - <li role="separator" class="divider"></li>
176   - <!--<li ng-class="Cardiovascular"><a href="#" title="Cardiovascular" id="1" ng-click="HighlightBodyByBodySystem($event)">Cardiovascular</a></li>
177   - <li ng-class="Digestive"><a href="#" title="Digestive" id="2" ng-click="HighlightBodyByBodySystem($event)">Digestive</a></li>
178   - <li ng-class="Endocrine"><a href="#" title="Endocrine" id="3" ng-click="HighlightBodyByBodySystem($event)">Endocrine</a></li>
179   - <li ng-class="Immune"><a href="#" title="Immune" id="4" ng-click="HighlightBodyByBodySystem($event)">Immune</a></li>
180   - <li ng-class="Integumentary"><a href="#" title="Integumentary" id="5" ng-click="HighlightBodyByBodySystem($event)">Integumentary</a></li>
181   - <li ng-class="Lymphatic"><a href="#" title="Lymphatic" id="6" ng-click="HighlightBodyByBodySystem($event)">Lymphatic</a></li>
182   - <li ng-class="Muscular"><a href="#" title="Muscular" id="7" ng-click="HighlightBodyByBodySystem($event)">Muscular</a></li>
183   - <li ng-class="Nervous"><a href="#" title="Nervous" id="8" ng-click="HighlightBodyByBodySystem($event)">Nervous</a></li>
184   - <li ng-class="Reproductive"><a href="#" title="Reproductive" id="9" ng-click="HighlightBodyByBodySystem($event)">Reproductive</a></li>
185   - <li ng-class="Respiratory"><a href="#" title="Respiratory" id="10" ng-click="HighlightBodyByBodySystem($event)">Respiratory</a></li>
186   - <li ng-class="Skeletal"><a href="#" title="Skeletal" id="11" ng-click="HighlightBodyByBodySystem($event)">Skeletal</a></li>
187   - <li ng-class="Urinary"><a href="#" title="Urinary" id="12" ng-click="HighlightBodyByBodySystem($event)">Urinary</a></li>-->
188   -
189   - <li ng-class="Cardiovascular"><a href="#" title="Cardiovascular" id="1" onclick="OnBodySystemSelection(event)">Cardiovascular</a></li>
190   - <li ng-class="Digestive"><a href="#" title="Digestive" id="2" onclick="OnBodySystemSelection(event)">Digestive</a></li>
191   - <li ng-class="Endocrine"><a href="#" title="Endocrine" id="3" onclick="OnBodySystemSelection(event)">Endocrine</a></li>
192   - <li ng-class="Immune"><a href="#" title="Immune" id="4" onclick="OnBodySystemSelection(event)">Immune</a></li>
193   - <li ng-class="Integumentary"><a href="#" title="Integumentary" id="5" onclick="OnBodySystemSelection(event)">Integumentary</a></li>
194   - <li ng-class="Lymphatic"><a href="#" title="Lymphatic" id="6" onclick="OnBodySystemSelection(event)">Lymphatic</a></li>
195   - <li ng-class="Muscular"><a href="#" title="Muscular" id="7" onclick="OnBodySystemSelection(event)">Muscular</a></li>
196   - <li ng-class="Nervous"><a href="#" title="Nervous" id="8" onclick="OnBodySystemSelection(event)">Nervous</a></li>
197   - <li ng-class="Reproductive"><a href="#" title="Reproductive" id="9" onclick="OnBodySystemSelection(event)">Reproductive</a></li>
198   - <li ng-class="Respiratory"><a href="#" title="Respiratory" id="10" onclick="OnBodySystemSelection(event)">Respiratory</a></li>
199   - <li ng-class="Skeletal"><a href="#" title="Skeletal" id="11" onclick="OnBodySystemSelection(event)">Skeletal</a></li>
200   - <li ng-class="Urinary"><a href="#" title="Urinary" id="12" onclick="OnBodySystemSelection(event)">Urinary</a></li>
201   - </ul>
  172 + <div class="col-xs-6 dropdown hover-tool">
  173 + <div class="custom-tooltip">Highlight Options</div>
  174 + <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu2" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true" ng-click="LoadBodySystemData()"><img src="content/images/icon-highlight.png" alt="" title=""></button>
  175 + <ul class="dropdown-menu" aria-labelledby="dropdownMenu2">
  176 + <li ng-class="CurrentStructure"><a href="#" title="Current Structure">Current Structure</a></li>
  177 + <li role="separator" class="divider"></li>
  178 + <!--<li ng-class="Cardiovascular"><a href="#" title="Cardiovascular" id="1" ng-click="HighlightBodyByBodySystem($event)">Cardiovascular</a></li>
  179 + <li ng-class="Digestive"><a href="#" title="Digestive" id="2" ng-click="HighlightBodyByBodySystem($event)">Digestive</a></li>
  180 + <li ng-class="Endocrine"><a href="#" title="Endocrine" id="3" ng-click="HighlightBodyByBodySystem($event)">Endocrine</a></li>
  181 + <li ng-class="Immune"><a href="#" title="Immune" id="4" ng-click="HighlightBodyByBodySystem($event)">Immune</a></li>
  182 + <li ng-class="Integumentary"><a href="#" title="Integumentary" id="5" ng-click="HighlightBodyByBodySystem($event)">Integumentary</a></li>
  183 + <li ng-class="Lymphatic"><a href="#" title="Lymphatic" id="6" ng-click="HighlightBodyByBodySystem($event)">Lymphatic</a></li>
  184 + <li ng-class="Muscular"><a href="#" title="Muscular" id="7" ng-click="HighlightBodyByBodySystem($event)">Muscular</a></li>
  185 + <li ng-class="Nervous"><a href="#" title="Nervous" id="8" ng-click="HighlightBodyByBodySystem($event)">Nervous</a></li>
  186 + <li ng-class="Reproductive"><a href="#" title="Reproductive" id="9" ng-click="HighlightBodyByBodySystem($event)">Reproductive</a></li>
  187 + <li ng-class="Respiratory"><a href="#" title="Respiratory" id="10" ng-click="HighlightBodyByBodySystem($event)">Respiratory</a></li>
  188 + <li ng-class="Skeletal"><a href="#" title="Skeletal" id="11" ng-click="HighlightBodyByBodySystem($event)">Skeletal</a></li>
  189 + <li ng-class="Urinary"><a href="#" title="Urinary" id="12" ng-click="HighlightBodyByBodySystem($event)">Urinary</a></li>-->
  190 +
  191 + <li ng-class="Cardiovascular"><a href="#" title="Cardiovascular" id="1" onclick="OnBodySystemSelection(event)">Cardiovascular</a></li>
  192 + <li ng-class="Digestive"><a href="#" title="Digestive" id="2" onclick="OnBodySystemSelection(event)">Digestive</a></li>
  193 + <li ng-class="Endocrine"><a href="#" title="Endocrine" id="3" onclick="OnBodySystemSelection(event)">Endocrine</a></li>
  194 + <li ng-class="Immune"><a href="#" title="Immune" id="4" onclick="OnBodySystemSelection(event)">Immune</a></li>
  195 + <li ng-class="Integumentary"><a href="#" title="Integumentary" id="5" onclick="OnBodySystemSelection(event)">Integumentary</a></li>
  196 + <li ng-class="Lymphatic"><a href="#" title="Lymphatic" id="6" onclick="OnBodySystemSelection(event)">Lymphatic</a></li>
  197 + <li ng-class="Muscular"><a href="#" title="Muscular" id="7" onclick="OnBodySystemSelection(event)">Muscular</a></li>
  198 + <li ng-class="Nervous"><a href="#" title="Nervous" id="8" onclick="OnBodySystemSelection(event)">Nervous</a></li>
  199 + <li ng-class="Reproductive"><a href="#" title="Reproductive" id="9" onclick="OnBodySystemSelection(event)">Reproductive</a></li>
  200 + <li ng-class="Respiratory"><a href="#" title="Respiratory" id="10" onclick="OnBodySystemSelection(event)">Respiratory</a></li>
  201 + <li ng-class="Skeletal"><a href="#" title="Skeletal" id="11" onclick="OnBodySystemSelection(event)">Skeletal</a></li>
  202 + <li ng-class="Urinary"><a href="#" title="Urinary" id="12" onclick="OnBodySystemSelection(event)">Urinary</a></li>
  203 + </ul>
  204 + </div>
202 205 </div>
203 206  
  207 + <div class="col-xs-12 pad0">
  208 + <div class="col-xs-6 hover-gender-tool" ng-init="switchGender()">
  209 + <div class=" custom-tooltip1">Gender</div>
  210 + <button class="btn btn-black btn-sm marginTop5 dropdown-toggle" type="button" id="dropdownMenu4" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> <i class=" fa fa-intersex font16"></i></button>
  211 + <ul class="dropdown-menu" aria-labelledby="dropdownMenu3">
  212 + <li ng-class="male">
  213 + <!--<button type="button" id="btnMale" onclick="OnGenderChange('Male')" class="btn btn-link" >Male</button>-->
  214 + <a href="#" title="Male" onclick="OnGenderChange(event)">Male</a>
  215 + </li>
  216 + <li ng-class="female">
  217 +
  218 + <!--<button type="button" id="btnFemale" onclick="OnGenderChange('Female')" class="btn btn-link">Female</button>-->
  219 + <a href="#" title="Female" onclick="OnGenderChange(event)">Female</a>
  220 +
  221 + <!--<a href="javascript:void(0)" title="Male" ng-click="OnGenderChange($event)">Male</a></li>
  222 + <li ng-class="female"><a href="javascript:void(0)" title="Female" ng-click="OnGenderChange($event)">Female</a></li>-->
  223 + </li>
  224 + </ul>
  225 + </div>
204 226  
205   - <div class="col-sm-6 hover-gender-tool" ng-init="switchGender()">
206   - <div class=" custom-tooltip1">Gender</div>
207   - <button class="btn btn-black btn-sm marginTop5 dropdown-toggle" type="button" id="dropdownMenu4" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> <i class=" fa fa-intersex font16"></i></button>
208   - <ul class="dropdown-menu" aria-labelledby="dropdownMenu3">
209   - <li ng-class="male">
210   - <!--<button type="button" id="btnMale" onclick="OnGenderChange('Male')" class="btn btn-link" >Male</button>-->
211   - <a href="#" title="Male" onclick="OnGenderChange(event)">Male</a>
212   - </li>
213   - <li ng-class="female">
214   -
215   - <!--<button type="button" id="btnFemale" onclick="OnGenderChange('Female')" class="btn btn-link">Female</button>-->
216   - <a href="#" title="Female" onclick="OnGenderChange(event)">Female</a>
217   -
218   - <!--<a href="javascript:void(0)" title="Male" ng-click="OnGenderChange($event)">Male</a></li>
219   - <li ng-class="female"><a href="javascript:void(0)" title="Female" ng-click="OnGenderChange($event)">Female</a></li>-->
220   - </li>
221   - </ul>
222   - </div>
223   -
224   - <div class="col-sm-6 tooltip-View-custom">
225   - <div class="custom-tooltip2">View</div>
226   - <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu3" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"><img src="content/images/view.png" alt="" title=""></button>
227   - <ul class="dropdown-menu" aria-labelledby="dropdownMenu3">
228   - <!--<li ng-class="AnteriorView"><a href="#" title="Anterior" ng-click="OnViewChange($event)">Anterior</a></li>
229   - <li ng-class="LateralView"><a href="#" title="Lateral" ng-click="OnViewChange($event)">Lateral</a></li>
230   - <li ng-class="MedialView"><a href="#" title="Medial" ng-click="OnViewChange($event)">Medial</a></li>
231   - <li ng-class="PosteriorView"><a href="#" title="Posterior" ng-click="OnViewChange($event)">Posterior</a></li>
232   - <li ng-class="LateralArmView"><a href="#" title="Lateral Arm" ng-click="OnViewChange($event)">Lateral Arm</a></li>
233   - <li ng-class="MedialArmView"><a href="#" title="Medial Arm" ng-click="OnViewChange($event)">Medial Arm</a></li>-->
234   -
235   - <li ng-class="AnteriorView"><a href="#" title="Anterior" onclick="OnViewChange(event)">Anterior</a></li>
236   - <li ng-class="LateralView"><a href="#" title="Lateral" onclick="OnViewChange(event)">Lateral</a></li>
237   - <li ng-class="MedialView"><a href="#" title="Medial" onclick="OnViewChange(event)">Medial</a></li>
238   - <li ng-class="PosteriorView"><a href="#" title="Posterior" onclick="OnViewChange(event)">Posterior</a></li>
239   - <li ng-class="LateralArmView"><a href="#" title="Lateral Arm" onclick="OnViewChange(event)">Lateral Arm</a></li>
240   - <li ng-class="MedialArmView"><a href="#" title="Medial Arm" onclick="OnViewChange(event)">Medial Arm</a></li>
241   - </ul>
  227 + <div class="col-xs-6 tooltip-View-custom">
  228 + <div class="custom-tooltip2">View</div>
  229 + <button class="btn btn-black btn-sm pull-right marginTop5 dropdown-toggle" type="button" id="dropdownMenu3" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"><img src="content/images/view.png" alt="" title=""></button>
  230 + <ul class="dropdown-menu" aria-labelledby="dropdownMenu3">
  231 + <!--<li ng-class="AnteriorView"><a href="#" title="Anterior" ng-click="OnViewChange($event)">Anterior</a></li>
  232 + <li ng-class="LateralView"><a href="#" title="Lateral" ng-click="OnViewChange($event)">Lateral</a></li>
  233 + <li ng-class="MedialView"><a href="#" title="Medial" ng-click="OnViewChange($event)">Medial</a></li>
  234 + <li ng-class="PosteriorView"><a href="#" title="Posterior" ng-click="OnViewChange($event)">Posterior</a></li>
  235 + <li ng-class="LateralArmView"><a href="#" title="Lateral Arm" ng-click="OnViewChange($event)">Lateral Arm</a></li>
  236 + <li ng-class="MedialArmView"><a href="#" title="Medial Arm" ng-click="OnViewChange($event)">Medial Arm</a></li>-->
  237 +
  238 + <li ng-class="AnteriorView"><a href="#" title="Anterior" onclick="OnViewChange(event)">Anterior</a></li>
  239 + <li ng-class="LateralView"><a href="#" title="Lateral" onclick="OnViewChange(event)">Lateral</a></li>
  240 + <li ng-class="MedialView"><a href="#" title="Medial" onclick="OnViewChange(event)">Medial</a></li>
  241 + <li ng-class="PosteriorView"><a href="#" title="Posterior" onclick="OnViewChange(event)">Posterior</a></li>
  242 + <li ng-class="LateralArmView"><a href="#" title="Lateral Arm" onclick="OnViewChange(event)">Lateral Arm</a></li>
  243 + <li ng-class="MedialArmView"><a href="#" title="Medial Arm" onclick="OnViewChange(event)">Medial Arm</a></li>
  244 + </ul>
  245 + </div>
242 246 </div>
243 247  
244   -
245   - <div class="col-sm-12">
  248 + <div class="col-xs-12">
246 249 <button id="btnStrutureBox" onclick="enableShowHideStructureBox()" class="btn btn-primary btn-sm marginTop5 btn-block tooltip-custom" data-toggle="tooltip" data-placement="bottom" title="Show/Hide Structure Name Boxes"> <img src="content/images/comment-box.png" alt=""></button>
247 250 </div>
248 251  
249   - </div>
  252 + </div>
250 253 <div class="">
251 254  
252 255  
... ... @@ -514,16 +517,7 @@
514 517  
515 518  
516 519  
517   - $("#slider-range-min-2").slider({
518   - range: "min",
519   - min: 1,
520   - max: 60,
521   - value: 10,
522   - slide: function (event, ui) {
523   - $("#amount-2").val(ui.value);
524   - }
525   - });
526   - $("#amount-2").val($("#slider-vertical-2").slider("value"));
  520 +
527 521 });
528 522 </script>
529 523 <script>
... ...
400-SOURCECODE/AIAHTML5.Web/app/widget/MainMenu.html
... ... @@ -59,57 +59,51 @@
59 59  
60 60 <script>
61 61 $(function () {
62   - $("#slider-range-min-2").slider({
63   - range: "min",
64   - min: 1,
65   - max: 60,
66   - value: 10,
67   - slide: function (event, ui) {
68   - $("#amount-2").val(ui.value);
69   - }
70   - });
71   - $("#amount-2").val($("#slider-vertical-2").slider("value"));
72   -
  62 +
73 63 $(function () {
74 64 $('[data-toggle="tooltip"]').tooltip();
75 65 })
76 66  
77   - var appPath = window.location.pathname.split("/")[1];
78   - if (window.location.pathname == "/" + appPath + "/da-view-list") {
  67 + var appPath = window.location.pathname;
  68 +
  69 + var appPathvalue = appPath.substring(appPath.lastIndexOf('/') + 1);
  70 +
  71 +
  72 + if (appPathvalue == "da-view-list") {
79 73  
80 74 $(".nav-sidebar li a").removeClass('active');
81 75 $(".nav-sidebar li:first-child a").addClass('active');
82 76  
83 77 }
84 78  
85   - else if (window.location.pathname == "/" + appPath + "/3dAnatomy") {
  79 + else if (appPathvalue == "3dAnatomy") {
86 80  
87 81 $(".nav-sidebar li a").removeClass('active');
88 82 $(".nav-sidebar li:nth-child(2) a").addClass('active');
89 83  
90 84 }
91   - else if (window.location.pathname == "/" + appPath + "/clinical-illustrations") {
  85 + else if (appPathvalue == "clinical-illustrations") {
92 86  
93 87 $(".nav-sidebar li a").removeClass('active');
94 88 $(".nav-sidebar li:nth-child(3) a").addClass('active');
95 89  
96 90  
97 91 }
98   - else if (window.location.pathname == "/" + appPath + "/clinical-animations") {
  92 + else if (appPathvalue == "clinical-animations") {
99 93  
100 94 $(".nav-sidebar li a").removeClass('active');
101 95 $(".nav-sidebar li:nth-child(4) a").addClass('active');
102 96  
103 97  
104 98 }
105   - else if (window.location.pathname == "/" + appPath + "/Link/encyclopedia") {
  99 + else if (appPathvalue == "encyclopedia") {
106 100  
107 101 $(".nav-sidebar li a").removeClass('active');
108 102 $(".nav-sidebar li:nth-child(5) a").addClass('active');
109 103  
110 104  
111 105 }
112   - else if (window.location.pathname == "/" + appPath + "/curriculum-builder") {
  106 + else if (appPathvalue == "curriculum-builder") {
113 107  
114 108 $(".nav-sidebar li a").removeClass('active');
115 109 $(".nav-sidebar li:nth-child(6) a").addClass('active');
... ... @@ -117,7 +111,7 @@
117 111  
118 112 }
119 113  
120   - else if (window.location.pathname == "/" + appPath + "/anatomy-test") {
  114 + else if (appPathvalue == "anatomy-test") {
121 115  
122 116 $(".nav-sidebar li a").removeClass('active');
123 117 $(".nav-sidebar li:nth-child(7) a").addClass('active');
... ... @@ -125,63 +119,62 @@
125 119  
126 120 }
127 121  
128   - else if (window.location.pathname == "/" + appPath + "/Link/IP-10") {
  122 + else if (appPathvalue == "IP-10") {
129 123  
130 124 $(".nav-sidebar li a").removeClass('active');
131 125 $(".nav-sidebar li:nth-child(8) a").addClass('active');
132 126  
133 127 }
134   - else if (window.location.pathname == "/" + appPath + "/lab-exercises") {
  128 + else if (appPathvalue == "lab-exercises") {
135 129  
136 130 $(".nav-sidebar li a").removeClass('active');
137 131 $(".nav-sidebar li:nth-child(9) a").addClass('active');
138 132  
139 133 }
140   - else if (window.location.pathname == "/" + appPath + "/Link/indepth-reports") {
  134 + else if (appPathvalue == "indepth-reports") {
141 135  
142 136 $(".nav-sidebar li a").removeClass('active');
143 137 $(".nav-sidebar li:nth-child(10) a").addClass('active');
144 138  
145 139 }
146   - else if (window.location.pathname == "/" + appPath + "/Link/complementary-and-alternate-medicine") {
  140 + else if (appPathvalue == "complementary-and-alternate-medicine") {
147 141  
148 142 $(".nav-sidebar li a").removeClass('active');
149 143 $(".nav-sidebar li:nth-child(11) a").addClass('active');
150 144  
151 145 }
152   - else if (window.location.pathname == "/" + appPath + "/ADAM-Images") {
  146 + else if (appPathvalue == "ADAM-Images") {
153 147  
154 148 $(".nav-sidebar li a").removeClass('active');
155 149 $(".nav-sidebar li:nth-child(12) a").addClass('active');
156 150  
157 151 }
158 152  
159   - else if (window.location.pathname == "/" + appPath + "/Link/bodyguide") {
  153 + else if (appPathvalue == "bodyguide") {
160 154  
161 155 $(".nav-sidebar li a").removeClass('active');
162 156 $(".nav-sidebar li:nth-child(13) a").addClass('active');
163 157  
164 158 }
165   - else if (window.location.pathname == "/" + appPath + "/Link/symptom-navigator") {
  159 + else if (appPathvalue == "symptom-navigator") {
166 160  
167 161 $(".nav-sidebar li a").removeClass('active');
168 162 $(".nav-sidebar li:nth-child(14) a").addClass('active');
169 163  
170 164 }
171   - else if (window.location.pathname == "/" + appPath + "/Link/wellness-tools") {
  165 + else if (appPathvalue == "wellness-tools") {
172 166  
173 167 $(".nav-sidebar li a").removeClass('active');
174 168 $(".nav-sidebar li:nth-child(15) a").addClass('active');
175 169  
176 170 }
177   - else if (window.location.pathname == "/"+ appPath + "/ADAM-on-demand") {
  171 + else if (appPathvalue == "ADAM-on-demand") {
178 172  
179 173 $(".nav-sidebar li a").removeClass('active');
180 174 $(".nav-sidebar li:nth-child(16) a").addClass('active');
181 175  
182 176 }
183 177  
184   -
185 178 });
186 179 </script>
187 180 <script>
... ...
400-SOURCECODE/AIAHTML5.Web/app/widget/TopMenu.html
... ... @@ -23,13 +23,13 @@
23 23 </ul>
24 24 </li>
25 25 <!--#7904-->
26   - <li><a href="#" data-toggle="modal" id="annotationButton" data-target=".bs-example-modal-sm" ng-click="ShowAnnotationWindow()">Annotation</a></li>
  26 + <li ng-class="disableMenuannotation"><a href="#" data-toggle="modal" id="annotationButton" data-target=".bs-example-modal-sm" ng-click="ShowAnnotationWindow()">Annotation</a></li>
27 27  
28   - <li class="dropdown">
  28 + <li class="dropdown" ng-class="disableMenuoption">
29 29 <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Options<span class="caret"></span></a>
30 30 <ul class="dropdown-menu">
31 31 <!--<li><a href="#" ng-click="ShowListManager()">List Manager</a></li>-->
32   -
  32 +
33 33 <li><a href="#" ng-click="ShowListManager()">List Manager</a></li>
34 34 <!--#7904-->
35 35 <li><a href="#" id="annotationToolBarOptions" ng-click="ShowAnnotationWindow()">Annotation Toolbar</a></li>
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/json/ca/ca_dat_contentlist_mp4link.json
... ... @@ -6,6 +6,7 @@
6 6 "_ImageId": "3377",
7 7 "_Title": "Blood clotting",
8 8 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200077/200077.mp4",
  9 + "_HostedFolderId": "200077",
9 10 "_ThumbnailImage": "ca_tni_3377.jpg",
10 11 "_BodySystem": "Cardiovascular",
11 12 "_BodyRegion": "Upper Limb",
... ... @@ -18,6 +19,7 @@
18 19 "_ImageId": "3378",
19 20 "_Title": "Blood pressure",
20 21 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200079/200079.mp4",
  22 + "_HostedFolderId": "200079",
21 23 "_ThumbnailImage": "ca_tni_3378.jpg",
22 24 "_BodySystem": "Cardiovascular",
23 25 "_BodyRegion": "Thorax",
... ... @@ -30,6 +32,7 @@
30 32 "_ImageId": "3379",
31 33 "_Title": "Brain components",
32 34 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200008/200008.mp4",
  35 + "_HostedFolderId": "200008",
33 36 "_ThumbnailImage": "ca_tni_3379.jpg",
34 37 "_BodySystem": "Nervous",
35 38 "_BodyRegion": "Head and Neck",
... ... @@ -42,6 +45,7 @@
42 45 "_ImageId": "3380",
43 46 "_Title": "Cardiac conduction system",
44 47 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200080/200080.mp4",
  48 + "_HostedFolderId": "200080",
45 49 "_ThumbnailImage": "ca_tni_3380.jpg",
46 50 "_BodySystem": "Cardiovascular",
47 51 "_BodyRegion": "Thorax",
... ... @@ -54,6 +58,7 @@
54 58 "_ImageId": "3382",
55 59 "_Title": "Coronary artery bypass graft (CABG)",
56 60 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200138/200138.mp4",
  61 + "_HostedFolderId": "200138",
57 62 "_ThumbnailImage": "ca_tni_3382.jpg",
58 63 "_BodySystem": "Cardiovascular",
59 64 "_BodyRegion": "Thorax",
... ... @@ -66,6 +71,7 @@
66 71 "_ImageId": "3383",
67 72 "_Title": "Directional coronary atherectomy (DCA)",
68 73 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200139/200139.mp4",
  74 + "_HostedFolderId": "200139",
69 75 "_ThumbnailImage": "ca_tni_3383.jpg",
70 76 "_BodySystem": "Cardiovascular",
71 77 "_BodyRegion": "Thorax",
... ... @@ -78,6 +84,7 @@
78 84 "_ImageId": "3384",
79 85 "_Title": "Egg cell production",
80 86 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200115/200115.mp4",
  87 + "_HostedFolderId": "200115",
81 88 "_ThumbnailImage": "ca_tni_3384.jpg",
82 89 "_BodySystem": "Endocrine, Reproductive",
83 90 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -90,6 +97,7 @@
90 97 "_ImageId": "3386",
91 98 "_Title": "Endocrine glands - general overview",
92 99 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200091/200091.mp4",
  100 + "_HostedFolderId": "200091",
93 101 "_ThumbnailImage": "ca_tni_3386.jpg",
94 102 "_BodySystem": "Endocrine, Nervous",
95 103 "_BodyRegion": "Head and Neck, Thorax",
... ... @@ -102,6 +110,7 @@
102 110 "_ImageId": "3387",
103 111 "_Title": "Enlarged prostate gland (BPH)",
104 112 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200003/200003.mp4",
  113 + "_HostedFolderId": "200003",
105 114 "_ThumbnailImage": "ca_tni_3387.jpg",
106 115 "_BodySystem": "Reproductive, Urinary",
107 116 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -114,6 +123,7 @@
114 123 "_ImageId": "3388",
115 124 "_Title": "Fetal development - interactive tool",
116 125 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200129/200129.mp4",
  126 + "_HostedFolderId": "200129",
117 127 "_ThumbnailImage": "ca_tni_3388.jpg",
118 128 "_BodySystem": "Reproductive",
119 129 "_BodyRegion": "Abdomen, Pelvis and Perineum",
... ... @@ -126,6 +136,7 @@
126 136 "_ImageId": "3389",
127 137 "_Title": "Formation of twins",
128 138 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200116/200116.mp4",
  139 + "_HostedFolderId": "200116",
129 140 "_ThumbnailImage": "ca_tni_3389.jpg",
130 141 "_BodySystem": "Reproductive",
131 142 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -138,6 +149,7 @@
138 149 "_ImageId": "3390",
139 150 "_Title": "Gas exchange",
140 151 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200022/200022.mp4",
  152 + "_HostedFolderId": "200022",
141 153 "_ThumbnailImage": "ca_tni_3390.jpg",
142 154 "_BodySystem": "Cardiovascular, Respiratory",
143 155 "_BodyRegion": "Thorax",
... ... @@ -150,6 +162,7 @@
150 162 "_ImageId": "3391",
151 163 "_Title": "Heartbeat",
152 164 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200083/200083.mp4",
  165 + "_HostedFolderId": "200083",
153 166 "_ThumbnailImage": "ca_tni_3391.jpg",
154 167 "_BodySystem": "Cardiovascular",
155 168 "_BodyRegion": "Thorax",
... ... @@ -162,6 +175,7 @@
162 175 "_ImageId": "3393",
163 176 "_Title": "Lymphatics and the breast",
164 177 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200103/200103.mp4",
  178 + "_HostedFolderId": "200103",
165 179 "_ThumbnailImage": "ca_tni_3393.jpg",
166 180 "_BodySystem": "Cardiovascular, Lymphatic",
167 181 "_BodyRegion": "Abdomen, Head and Neck, Pelvis and Perineum, Thorax",
... ... @@ -174,6 +188,7 @@
174 188 "_ImageId": "3394",
175 189 "_Title": "Menstrual cycle - interactive tool",
176 190 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200132/200132.mp4",
  191 + "_HostedFolderId": "200132",
177 192 "_ThumbnailImage": "ca_tni_3394.jpg",
178 193 "_BodySystem": "Endocrine, Reproductive",
179 194 "_BodyRegion": "Abdomen, Pelvis and Perineum",
... ... @@ -186,6 +201,7 @@
186 201 "_ImageId": "3395",
187 202 "_Title": "Nerve conduction - general overview",
188 203 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200011/200011.mp4",
  204 + "_HostedFolderId": "200011",
189 205 "_ThumbnailImage": "ca_tni_3395.jpg",
190 206 "_BodySystem": "Nervous",
191 207 "_BodyRegion": "Abdomen, Body Wall and Back, Head and Neck, Thorax, Upper Limb",
... ... @@ -198,6 +214,7 @@
198 214 "_ImageId": "3397",
199 215 "_Title": "Peristalsis",
200 216 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200088/200088.mp4",
  217 + "_HostedFolderId": "200088",
201 218 "_ThumbnailImage": "ca_tni_3397.jpg",
202 219 "_BodySystem": "Digestive",
203 220 "_BodyRegion": "Abdomen, Pelvis and Perineum",
... ... @@ -210,6 +227,7 @@
210 227 "_ImageId": "3399",
211 228 "_Title": "Sperm production and pathway of ejaculation",
212 229 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200019/200019.mp4",
  230 + "_HostedFolderId": "200019",
213 231 "_ThumbnailImage": "ca_tni_3399.jpg",
214 232 "_BodySystem": "Reproductive",
215 233 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -222,6 +240,7 @@
222 240 "_ImageId": "3400",
223 241 "_Title": "Stroke",
224 242 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200071/200071.mp4",
  243 + "_HostedFolderId": "200071",
225 244 "_ThumbnailImage": "ca_tni_3400.jpg",
226 245 "_BodySystem": "Cardiovascular",
227 246 "_BodyRegion": "Head and Neck",
... ... @@ -234,6 +253,7 @@
234 253 "_ImageId": "3401",
235 254 "_Title": "Stroke - secondary to cardiogenic embolism",
236 255 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200072/200072.mp4",
  256 + "_HostedFolderId": "200072",
237 257 "_ThumbnailImage": "ca_tni_3401.jpg",
238 258 "_BodySystem": "Cardiovascular",
239 259 "_BodyRegion": "Head and Neck, Thorax",
... ... @@ -246,6 +266,7 @@
246 266 "_ImageId": "3392",
247 267 "_Title": "Intracytoplasmic sperm injection (ICSI)",
248 268 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200061/200061.mp4",
  269 + "_HostedFolderId": "200061",
249 270 "_ThumbnailImage": "ca_tni_3392.jpg",
250 271 "_BodySystem": "Reproductive",
251 272 "_BodyRegion": "None",
... ... @@ -258,6 +279,7 @@
258 279 "_ImageId": "3396",
259 280 "_Title": "Percutaneous transluminal coronary angioplasty (PTCA)",
260 281 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200140/200140.mp4",
  282 + "_HostedFolderId": "200140",
261 283 "_ThumbnailImage": "ca_tni_3396.jpg",
262 284 "_BodySystem": "Cardiovascular",
263 285 "_BodyRegion": "Thorax",
... ... @@ -270,6 +292,7 @@
270 292 "_ImageId": "3398",
271 293 "_Title": "Sexual differentiation",
272 294 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200124/200124.mp4",
  295 + "_HostedFolderId": "200124",
273 296 "_ThumbnailImage": "ca_tni_3398.jpg",
274 297 "_BodySystem": "Reproductive",
275 298 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -282,6 +305,7 @@
282 305 "_ImageId": "3402",
283 306 "_Title": "Vasectomy",
284 307 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200076/200076.mp4",
  308 + "_HostedFolderId": "200076",
285 309 "_ThumbnailImage": "ca_tni_3402.jpg",
286 310 "_BodySystem": "Reproductive",
287 311 "_BodyRegion": "Pelvis and Perineum",
... ... @@ -294,6 +318,7 @@
294 318 "_ImageId": "3404",
295 319 "_Title": "Hearing and the cochlea",
296 320 "_Video": "http://aia5.adam.com/graphics/Multimedia/en/200057/200057.mp4",
  321 + "_HostedFolderId": "200057",
297 322 "_ThumbnailImage": "ca_tni_3404.jpg",
298 323 "_BodySystem": "Nervous",
299 324 "_BodyRegion": "Head and Neck",
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/json/settings/fontstyle.json 0 → 100644
  1 +{
  2 +"FontFamily":[
  3 +{
  4 +"FontName": "Arial"
  5 +},
  6 +{
  7 +"FontName": "Agency FB"
  8 +},{
  9 +"FontName": "Arial Narrow"
  10 +},{
  11 +"FontName": "Arial Rounded"
  12 +},{
  13 +"FontName": "Arial TUR"
  14 +},{
  15 +"FontName": "Arial Unicode"
  16 +},{
  17 +"FontName": "Articulate"
  18 +},{
  19 +"FontName": "Bell MT"
  20 +},{
  21 +"FontName": "Berlin Sans"
  22 +},{
  23 +"FontName": "Bemard MT"
  24 +},{
  25 +"FontName": "Bodoni MT"
  26 +},{
  27 +"FontName": "Broadway"
  28 +},{
  29 +"FontName": "Caladea"
  30 +},{
  31 +"FontName": "Calibri"
  32 +},{
  33 +"FontName": "Calibri Light"
  34 +},{
  35 +"FontName": "Calisto MT"
  36 +},{
  37 +"FontName": "Cambria"
  38 +},{
  39 +"FontName": "Candara"
  40 +},{
  41 +"FontName": "Carlito"
  42 +},{
  43 +"FontName": "Castellar"
  44 +},{
  45 +"FontName": "Centaur"
  46 +},{
  47 +"FontName": "Century"
  48 +},{
  49 +"FontName": "Chiller"
  50 +},{
  51 +"FontName": "Colonna MT"
  52 +},{
  53 +"FontName": "Comic Sans"
  54 +},{
  55 +"FontName": "Consolas"
  56 +},{
  57 +"FontName": "Constantia"
  58 +},{
  59 +"FontName": "Curlz MT"
  60 +},{
  61 +"FontName": "Ebrima"
  62 +},{
  63 +"FontName": "Elephant"
  64 +},{
  65 +"FontName": "Felix Titling"
  66 +},{
  67 +"FontName": "Forte"
  68 +},{
  69 +"FontName": "Gabriola"
  70 +},{
  71 +"FontName": "Gadugi"
  72 +},{
  73 +"FontName": "Garamond"
  74 +},{
  75 +"FontName": "Georgia"
  76 +},{
  77 +"FontName": "Harrington"
  78 +},{
  79 +"FontName": "Helvetica"
  80 +},{
  81 +"FontName": "Impact"
  82 +},{
  83 +"FontName": "Jokerman"
  84 +},{
  85 +"FontName": "Juice ITC"
  86 +},{
  87 +"FontName": "Kristen ITC"
  88 +},{
  89 +"FontName": "Lucida Fax"
  90 +},{
  91 +"FontName": "Magneto"
  92 +},{
  93 +"FontName": "Marlett"
  94 +},{
  95 +"FontName": "Mistral"
  96 +},{
  97 +"FontName": "MS Gothic"
  98 +},{
  99 +"FontName": "MS Outlook"
  100 +},{
  101 +"FontName": "MS PGothic"
  102 +},{
  103 +"FontName": "MV Boli"
  104 +},{
  105 +"FontName": "Nirmala UI"
  106 +},{
  107 +"FontName": "NSimSun"
  108 +},{
  109 +"FontName": "Old English"
  110 +},{
  111 +"FontName": "Onyx"
  112 +},{
  113 +"FontName": "Open Sans"
  114 +},{
  115 +"FontName": "Papyrus"
  116 +},{
  117 +"FontName": "Parchment"
  118 +},{
  119 +"FontName": "Perpetua"
  120 +},{
  121 +"FontName": "Playbill"
  122 +},{
  123 +"FontName": "Pristina"
  124 +},{
  125 +"FontName": "PT Serif"
  126 +},{
  127 +"FontName": "Rage Italic"
  128 +},{
  129 +"FontName": "Ravie"
  130 +},{
  131 +"FontName": "Rockwell"
  132 +},{
  133 +"FontName": "Segoe Print"
  134 +},{
  135 +"FontName": "Segoe UI"
  136 +},{
  137 +"FontName": "SimSun"
  138 +},{
  139 +"FontName": "Sitka Small"
  140 +},{
  141 +"FontName": "Sitka Subhe"
  142 +},{
  143 +"FontName": "Sitka Text"
  144 +},{
  145 +"FontName": "SketchFlow"
  146 +},{
  147 +"FontName": "Snap ITC"
  148 +},{
  149 +"FontName": "Stencil"
  150 +},{
  151 +"FontName": "Sylfaen"
  152 +},{
  153 +"FontName": "Symbol"
  154 +},{
  155 +"FontName": "Tahoma"
  156 +},{
  157 +"FontName": "Tw Cen MT"
  158 +},{
  159 +"FontName": "Verdana"
  160 +},{
  161 +"FontName": "Vivaldi"
  162 +},{
  163 +"FontName": "Webdings"
  164 +},{
  165 +"FontName": "Wide Latin"
  166 +},{
  167 +"FontName": "Wingdings"
  168 +},{
  169 +"FontName": "Yu Gothic"
  170 +}]
  171 +}
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200003.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:08.000 --> 00:00:12.000
  6 +The prostate is a male gland located underneath the bladder
  7 +
  8 +00:00:12.000 --> 00:00:14.000
  9 +and is about the size of a chestnut.
  10 +
  11 +00:00:14.000 --> 00:00:21.000
  12 +In this cut section, you can see that part of the urethra is encased within the prostate gland.
  13 +
  14 +00:00:21.000 --> 00:00:27.000
  15 +As a man ages, the prostate typically enlarges in size in a process called
  16 +
  17 +00:00:27.000 --> 00:00:31.000
  18 +benign prostate hypertrophy, or BPH,
  19 +
  20 +00:00:31.000 --> 00:00:35.000
  21 +which means that the gland gets larger without becoming cancerous.
  22 +
  23 +00:00:35.000 --> 00:00:39.000
  24 +The enlarged prostate crowds its anatomical neighbors,
  25 +
  26 +00:00:39.000 --> 00:00:42.000
  27 +particularly the urethra, causing it to narrow.
  28 +
  29 +00:00:42.000 --> 00:00:47.000
  30 +The narrowed urethra results in several of the symptoms of BPH.
  31 +
  32 +00:00:48.000 --> 00:00:52.000
  33 +Symptoms may include a slowed or delayed start in urination,
  34 +
  35 +00:00:52.000 --> 00:00:55.000
  36 +the need to urinate frequently during the night,
  37 +
  38 +00:00:55.000 --> 00:00:57.000
  39 +difficulty in emptying the bladder,
  40 +
  41 +00:00:57.000 --> 00:01:01.000
  42 +a strong, sudden urge to urinate, and incontinence.
  43 +
  44 +00:01:02.000 --> 00:01:06.000
  45 +Less than half of all men with BPH have symptoms of the disease,
  46 +
  47 +00:01:06.000 --> 00:01:11.000
  48 +or their symptoms are minor and do not restrict their life style.
  49 +
  50 +00:01:11.000 --> 00:01:15.000
  51 +BPH is a normal physiological process of aging.
  52 +
  53 +00:01:15.000 --> 00:01:21.000
  54 +Treatment options are available and are based on the severity of the symptoms,
  55 +
  56 +00:01:21.000 --> 00:01:26.000
  57 +the extent to which they affect lifestyle, and the presence of other medical conditions.
  58 +
  59 +00:01:26.000 --> 00:01:31.000
  60 +Men with BPH should consult with their physician yearly to monitor the progression
  61 +
  62 +00:01:31.000 --> 00:01:35.000
  63 +of the symptoms and decide the best course of treatment as needed.
  64 +
  65 +
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200008.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:08.004 --> 00:00:12.000
  6 +The brain is composed of more than a thousand billion neurons.
  7 +
  8 +
  9 +
  10 +00:00:12.100 --> 00:00:15.000
  11 +Specific groups of them, working in concert,
  12 +
  13 +00:00:15.100 --> 00:00:17.400
  14 +provide us with the capacity to reason, to
  15 +
  16 +00:00:17.450 --> 00:00:20.220
  17 +experience feelings, and to understand the world.
  18 +
  19 +00:00:20.240 --> 00:00:23.000
  20 +They also give us the capacity to remember
  21 +
  22 +00:00:23.140 --> 00:00:25.000
  23 +numerous pieces of information.
  24 +
  25 +00:00:25.100 --> 00:00:27.150
  26 +There are three major components of the brain.
  27 +
  28 +00:00:27.250 --> 00:00:29.800
  29 +The cerebrum is the largest component,
  30 +
  31 +00:00:30.000 --> 00:00:33.000
  32 +extending across the top of the head down to ear level.
  33 +
  34 +00:00:33.100 --> 00:00:37.700
  35 +The cerebellum is smaller than the cerebrum and located underneath it,
  36 +
  37 +00:00:38.000 --> 00:00:40.100
  38 +behind the ears toward the back of the head.
  39 +
  40 +00:00:41.100 --> 00:00:43.090
  41 +The brain stem is the smallest and
  42 +
  43 +00:00:43.190 --> 00:00:44.600
  44 +is located under the cerebellum,
  45 +
  46 +00:00:44.600 --> 00:00:48.100
  47 +extending downward and back toward the neck.
  48 +
  49 +00:00:48.200 --> 00:00:51.000
  50 +The cerebral cortex is the outside portion of the
  51 +
  52 +00:00:51.300 --> 00:00:53.500
  53 +cerebrum, also called the “gray matter”.
  54 +
  55 +00:00:54.100 --> 00:00:57.000
  56 +It generates the most complex intellectual
  57 +
  58 +00:00:57.100 --> 00:00:59.230
  59 +thoughts and controls body movement.
  60 +
  61 +00:00:59.800 --> 00:01:03.800
  62 +The cerebrum is divided into left and right sides,
  63 +
  64 +00:01:04.000 --> 00:01:08.000
  65 +which communicate with each other through a thin stalk of nerve fibers.
  66 +
  67 +00:01:08.500 --> 00:01:12.080
  68 +The grooves and folds increase the cerebrum’s surface area,
  69 +
  70 +00:01:12.150 --> 00:01:16.000
  71 +allowing us to have a tremendous amount of gray matter inside of the skull.
  72 +
  73 +00:01:16.290 --> 00:01:20.000
  74 +Here, the left side of the brain is highlighted
  75 +
  76 +00:01:20.010 --> 00:01:23.000
  77 +to show the control over right arm and leg movement,
  78 +
  79 +00:01:23.000 --> 00:01:25.300
  80 +and the right side of the brain is highlighted
  81 +
  82 +00:01:25.300 --> 00:01:29.200
  83 +to show the control over left arm and leg movement.
  84 +
  85 +00:01:30.000 --> 00:01:32.130
  86 +The left side of the brain controls the muscles
  87 +
  88 +00:01:32.140 --> 00:01:35.250
  89 +on the right side of the body and vice versa.
  90 +
  91 +00:01:35.400 --> 00:01:37.600
  92 +Voluntary body movements are controlled
  93 +
  94 +00:01:37.700 --> 00:01:40.040
  95 +by a region of the frontal lobe.
  96 +
  97 +00:01:40.100 --> 00:01:42.050
  98 +The frontal lobe is also
  99 +
  100 +00:01:42.100 --> 00:01:43.050
  101 +where we shape
  102 +
  103 +00:01:43.150 --> 00:01:45.050
  104 +emotional reactions and expressions.
  105 +
  106 +00:01:46.000 --> 00:01:48.000
  107 +There are two parietal lobes,
  108 +
  109 +00:01:48.010 --> 00:01:50.000
  110 +one on each side of the brain.
  111 +
  112 +00:01:50.010 --> 00:01:54.000
  113 +The parietal lobes are located behind the frontal lobe towards
  114 +
  115 +00:01:54.010 --> 00:01:56.090
  116 +the back of the head and above the ears.
  117 +
  118 +00:01:56.200 --> 00:02:00.000
  119 +The taste center is located in the parietal lobes.
  120 +
  121 +00:02:00.120 --> 00:02:03.001
  122 +All sounds are processed in the temporal lobe.
  123 +
  124 +00:02:08.020 --> 00:02:10.060
  125 +They are also important for learning,
  126 +
  127 +00:02:10.120 --> 00:02:12.060
  128 +memory, and emotion.
  129 +
  130 +00:02:12.200 --> 00:02:15.400
  131 +The occipital lobe is located at the back of the
  132 +
  133 +00:02:15.410 --> 00:02:18.600
  134 +head behind the parietal and temporal lobes.
  135 +
  136 +00:02:19.000 --> 00:02:22.020
  137 +The occipital lobe analyzes visual information from
  138 +
  139 +00:02:22.020 --> 00:02:25.000
  140 +the retina and then processes that information.
  141 +
  142 +00:02:25.010 --> 00:02:30.00
  143 +If the occipital lobe becomes damaged, a person could become blind,
  144 +
  145 +00:02:30.000 --> 00:02:33.040
  146 +even if his or her eyes continue to function normally.
  147 +
  148 +00:02:33.150 --> 00:02:36.140
  149 +The cerebellum is located at the back of the head
  150 +
  151 +00:02:36.200 --> 00:02:39.000
  152 +underneath the occipital and temporal lobes.
  153 +
  154 +00:02:39.100 --> 00:02:42.000
  155 +The cerebellum creates automatic programs
  156 +
  157 +00:02:42.100 --> 00:02:45.000
  158 +so we can make complex movements without thinking.
  159 +
  160 +00:02:45.010 --> 00:02:48.800
  161 +The brain stem is located underneath the temporal lobes
  162 +
  163 +00:02:48.900 --> 00:02:51.150
  164 +and extended down to the spinal cord.
  165 +
  166 +00:02:52.000 --> 00:02:56.180
  167 +It is critical for survival because it connects the brain with the spinal cord.
  168 +
  169 +00:02:57.010 --> 00:03:00.100
  170 +The top portion of the brainstem is called the midbrain.
  171 +
  172 +00:03:00.110 --> 00:03:03.000
  173 +The midbrain is a small portion of the brain
  174 +
  175 +00:03:03.010 --> 00:03:06.000
  176 +stem located at the top of the brain stem.
  177 +
  178 +00:03:06.100 --> 00:03:08.000
  179 +Just below the midbrain is the pons,
  180 +
  181 +00:03:08.100 --> 00:03:11.100
  182 +and below the pons is the medulla.
  183 +
  184 +00:03:11.200 --> 00:03:16.000
  185 +The medulla is the part of the brain stem closest to the spinal cord.
  186 +
  187 +00:03:16.100 --> 00:03:19.000
  188 +The medulla, with its critical functions,
  189 +
  190 +00:03:19.010 --> 00:03:22.000
  191 +lies deep within the head, where it is well-protected
  192 +
  193 +00:03:22.000 --> 00:03:26.000
  194 +from injuries by an extra-thick section of overlying skull.
  195 +
  196 +00:03:26.200 --> 00:03:30.200
  197 +When we are asleep or unconscious, our heart rate, breathing
  198 +
  199 +00:03:30.210 --> 00:03:35.000
  200 +and blood pressure continue to function because they’re regulated by the medulla.
  201 +
  202 +00:03:35.000 --> 00:03:39.500
  203 +And that concludes a general overview of the components of the brain.
0 204 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200011.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:06.000 --> 00:00:09.000
  6 +The nervous system is made up of two parts.
  7 +
  8 +00:00:09.200 --> 00:00:12.100
  9 +Each part contains billions of neurons.
  10 +
  11 +00:00:13.000 --> 00:00:16.000
  12 +The first part is the central nervous system.
  13 +
  14 +00:00:16.100 --> 00:00:20.000
  15 +It contains the brain and spinal cord, which is a fibrous,
  16 +
  17 +00:00:20.100 --> 00:00:25.000
  18 +ropelike structure that runs through the spinal column down the middle of the back.
  19 +
  20 +00:00:25.100 --> 00:00:29.000
  21 +The other part is the peripheral nervous system.
  22 +
  23 +00:00:29.100 --> 00:00:31.500
  24 +It consists of thousands of nerves that connect
  25 +
  26 +00:00:31.600 --> 00:00:35.500
  27 +the spinal cord to muscles and sensory receptors.
  28 +
  29 +00:00:36.000 --> 00:00:39.000
  30 +The peripheral nervous system is responsible for reflexes,
  31 +
  32 +00:00:39.500 --> 00:00:42.000
  33 +which help the body avoid serious injury.
  34 +
  35 +00:00:42.100 --> 00:00:46.000
  36 +It's also responsible for the fight or flight response
  37 +
  38 +00:00:46.100 --> 00:00:50.000
  39 +that helps protect you when you feel stress or danger.
  40 +
  41 +00:00:50.100 --> 00:00:54.000
  42 +Let's examine an individual neuron up close.
  43 +
  44 +00:00:54.100 --> 00:00:56.000
  45 +Here is a peripheral nerve.
  46 +
  47 +00:00:56.200 --> 00:00:59.200
  48 +Each one of the nerve bundles, or fascicles,
  49 +
  50 +00:00:59.400 --> 00:01:03.000
  51 +contains hundreds of individual nerve fibers.
  52 +
  53 +00:01:03.100 --> 00:01:09.000
  54 +Here's an individual neuron, with its dendrites, axon, and cell body.
  55 +
  56 +00:01:09.300 --> 00:01:12.000
  57 +The dendrites are tree-like structures.
  58 +
  59 +00:01:12.100 --> 00:01:16.000
  60 +Their job is to receive signals from other neurons
  61 +
  62 +00:01:16.100 --> 00:01:20.900
  63 +and from special sensory cells that tell us about our surroundings.
  64 +
  65 +00:01:21.000 --> 00:01:26.000
  66 +The cell body is the headquarters of the neuron. It contains the cell's DNA.
  67 +
  68 +00:01:26.100 --> 00:01:32.000
  69 +The axon transmits signals away from the cell body to other neurons.
  70 +
  71 +00:01:32.100 --> 00:01:36.000
  72 +Many neurons are insulated like pieces of electrical wire.
  73 +
  74 +00:01:37.000 --> 00:01:42.600
  75 +The insulation protects them and allows their signals to move faster along the axon.
  76 +
  77 +00:01:43.000 --> 00:01:48.200
  78 +Without it, signals from the brain might never reach muscle groups in the limbs.
  79 +
  80 +00:01:48.300 --> 00:01:54.300
  81 +Motor neurons are responsible for voluntary control of the muscles all over the body.
  82 +
  83 +00:01:54.500 --> 00:01:59.500
  84 +The operation of the nervous system depends on how well neurons communicate.
  85 +
  86 +00:02:00.000 --> 00:02:04.000
  87 +For an electrical signal to travel between two neurons,
  88 +
  89 +00:02:04.100 --> 00:02:08.000
  90 +it must first be converted to a chemical signal.
  91 +
  92 +00:02:08.100 --> 00:02:10.000
  93 +Then it crosses a space about
  94 +
  95 +00:02:10.100 --> 00:02:12.000
  96 +a millionth of an inch wide.
  97 +
  98 +00:02:12.100 --> 00:02:15.000
  99 +The space is called a synapse.
  100 +
  101 +00:02:15.100 --> 00:02:19.000
  102 +The chemical signal is called a neurotransmitter.
  103 +
  104 +00:02:19.100 --> 00:02:22.000
  105 +Neurotransmitters allow the billions of
  106 +
  107 +00:02:22.100 --> 00:02:24.000
  108 +neurons in the nervous system
  109 +
  110 +00:02:24.100 --> 00:02:26.000
  111 +to communicate with one another.
  112 +
  113 +00:02:26.500 --> 00:02:31.200
  114 +That's what makes the nervous system the body's master communicator.
0 115 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200019.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:07.000 --> 00:00:11.000
  6 +Sperm are produced and released by the male reproductive organs.
  7 +
  8 +
  9 +00:00:12.000 --> 00:00:15.000
  10 +The testes are where sperm are produced.
  11 +
  12 +00:00:15.100 --> 00:00:21.000
  13 +The testes are linked to the rest of the male reproductive organs by the vas deferens,
  14 +
  15 +00:00:21.100 --> 00:00:29.000
  16 +which extends over the base of the pelvic bone or ilium, and wraps around to the ampulla,
  17 +
  18 +00:00:29.100 --> 00:00:32.000
  19 +seminal vesicle, and prostate.
  20 +
  21 +00:00:32.100 --> 00:00:37.000
  22 +The urethra then runs from the bladder through the penis.
  23 +
  24 +00:00:38.000 --> 00:00:45.000
  25 +Sperm production in the testes takes place in coiled structures called seminiferous tubules.
  26 +
  27 +00:00:47.200 --> 00:00:50.000
  28 +Along the top of each testicle is the epididymis.
  29 +
  30 +00:00:51.000 --> 00:00:56.000
  31 +This is a cordlike structure where the sperm mature and are stored.
  32 +
  33 +00:00:57.200 --> 00:01:02.000
  34 +The release process starts when the penis fills with blood and becomes erect.
  35 +
  36 +00:01:03.000 --> 00:01:07.000
  37 +Continuing to stimulate the penis will cause an ejaculation.
  38 +
  39 +00:01:07.100 --> 00:01:13.000
  40 +Mature sperm begin their journey by travelling from the epididymis to the vas deferens,
  41 +
  42 +00:01:13.100 --> 00:01:18.000
  43 +which propels sperm forward with smooth muscle contractions.
  44 +
  45 +00:01:18.100 --> 00:01:24.000
  46 +The sperm arrive first at the ampulla just above the prostate gland.
  47 +
  48 +00:01:24.100 --> 00:01:30.000
  49 +Here, secretions from the seminal vesicle located next to the ampulla are added.
  50 +
  51 +00:01:31.000 --> 00:01:35.000
  52 +Next, the seminal fluid is propelled forward through the ejaculatory
  53 +
  54 +00:01:35.100 --> 00:01:38.000
  55 +ducts toward the urethra.
  56 +
  57 +00:01:38.100 --> 00:01:43.000
  58 +As it passes the prostate gland, a milky fluid is added to make semen.
  59 +
  60 +00:01:44.000 --> 00:01:50.000
  61 +Finally, the semen is ejaculated from the penis through the urethra.
0 62 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200022.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:03.000 --> 00:00:10.000
  6 +Air enters the body through the mouth or nose and quickly moves to the pharynx, or throat.
  7 +
  8 +
  9 +00:00:10.000 --> 00:00:15.050
  10 +From there, it passes through the larynx, or voice box, and enters the trachea.
  11 +
  12 +00:00:15.150 --> 00:00:22.000
  13 +The trachea is a strong tube that contains rings of cartilage that prevent it from collapsing.
  14 +
  15 +00:00:22.000 --> 00:00:27.050
  16 +Within the lungs, the trachea branches into a left and right bronchus.
  17 +
  18 +00:00:27.050 --> 00:00:34.000
  19 +These further divide into smaller and smaller branches called bronchioles.
  20 +
  21 +00:00:34.050 --> 00:00:41.000
  22 +The smallest bronchioles end in tiny air sacs. These are called alveoli.
  23 +
  24 +00:00:41.000 --> 00:00:46.250
  25 +They inflate when a person inhales and deflate when a person exhales.
  26 +
  27 +00:00:47.000 --> 00:00:49.250
  28 +During gas exchange oxygen moves
  29 +
  30 +00:00:49.250 --> 00:00:52.000
  31 +from the lungs to the bloodstream.
  32 +
  33 +00:00:52.000 --> 00:00:54.100
  34 +At the same time carbon dioxide
  35 +
  36 +00:00:54.100 --> 00:00:57.000
  37 +passes from the blood to the lungs.
  38 +
  39 +00:00:57.100 --> 00:01:01.000
  40 +This happens in the lungs between the alveoli
  41 +
  42 +00:01:01.000 --> 00:01:03.000
  43 +and a network of tiny blood vessels
  44 +
  45 +00:01:03.000 --> 00:01:05.000
  46 +called capillaries,
  47 +
  48 +00:01:05.000 --> 00:01:08.000
  49 +which are located in the walls of the alveoli.
  50 +
  51 +00:01:08.000 --> 00:01:10.000
  52 +Here you see red blood cells
  53 +
  54 +00:01:10.050 --> 00:01:12.000
  55 +traveling through the capillaries.
  56 +
  57 +00:01:12.050 --> 00:01:14.250
  58 +The walls of the alveoli share
  59 +
  60 +00:01:14.250 --> 00:01:17.000
  61 +a membrane with the capillaries.
  62 +
  63 +00:01:17.000 --> 00:01:18.150
  64 +That's how close they are.
  65 +
  66 +00:01:19.000 --> 00:01:22.100
  67 +This lets oxygen and carbon dioxide diffuse,
  68 +
  69 +00:01:22.200 --> 00:01:25.000
  70 +or move freely, between the respiratory
  71 +
  72 +00:01:25.000 --> 00:01:27.150
  73 +system and the bloodstream.
  74 +
  75 +00:01:27.200 --> 00:01:31.000
  76 +Oxygen molecules attach to red blood cells,
  77 +
  78 +00:01:31.050 --> 00:01:33.000
  79 +which travel back to the heart.
  80 +
  81 +00:01:33.050 --> 00:01:36.050
  82 +At the same time, the carbon dioxide molecules
  83 +
  84 +00:01:36.050 --> 00:01:39.100
  85 +in the alveoli are blown out of the body
  86 +
  87 +00:01:39.200 --> 00:01:41.100
  88 +the next time a person exhales.
  89 +
  90 +00:01:42.000 --> 00:01:44.280
  91 +Gas exchange allows the body to replenish
  92 +
  93 +00:01:44.280 --> 00:01:47.150
  94 +the oxygen and eliminate the carbon dioxide.
  95 +
  96 +00:01:47.250 --> 00:01:50.000
  97 +Doing both is necessary for survival.
0 98 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200057.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:00.800 --> 00:00:06.200
  4 +Sound waves entering the ear travel through the external auditory canal
  5 +
  6 +00:00:06.300 --> 00:00:09.805
  7 +before striking the eardrum and causing it to vibrate.
  8 +
  9 +00:00:10.900 --> 00:00:17.900
  10 +The eardrum is connected to the malleus, one of three small bones of the middle ear.
  11 +
  12 +00:00:18.400 --> 00:00:24.200
  13 +Also called the hammer, it transmits sound vibrations to the incus,
  14 +
  15 +00:00:24.400 --> 00:00:26.900
  16 +which passes them to the stapes.
  17 +
  18 +00:00:27.400 --> 00:00:32.500
  19 +The stapes pushes in and out against the structure called the oval window.
  20 +
  21 +00:00:32.800 --> 00:00:39.500
  22 +This action is passed onto the cochlea, a fluid-filled snail-like structure that
  23 +
  24 +00:00:39.550 --> 00:00:44.100
  25 +contains the organ of Corti, the organ for hearing.
  26 +
  27 +00:00:44.550 --> 00:00:49.000
  28 +It consists of tiny hair cells that line the cochlea.
  29 +
  30 +00:00:49.400 --> 00:00:54.400
  31 +These cells translate vibrations into electrical impulses
  32 +
  33 +00:00:54.500 --> 00:00:58.000
  34 +that are carried to the brain by sensory nerves.
  35 +
  36 +00:00:58.100 --> 00:01:05.000
  37 +In this cut-view, you can see the organ of Corti with its four rows of hair cells.
  38 +
  39 +00:01:05.200 --> 00:01:11.000
  40 +There is an inner row on the left and three outer rows on the right.
  41 +
  42 +00:01:11.300 --> 00:01:14.200
  43 +Let's watch this process in action.
  44 +
  45 +00:01:14.600 --> 00:01:22.700
  46 +First, the stapes rocks against the oval window. This transmits waves of sound through the
  47 +
  48 +00:01:22.750 --> 00:01:27.200
  49 +cochlear fluid, sending the organ of Corti into motion.
  50 +
  51 +00:01:27.400 --> 00:01:33.200
  52 +Fibers near the upper end of the cochlea resonate to lower frequency sound.
  53 +
  54 +00:01:33.400 --> 00:01:36.850
  55 +Those near the oval window respond to higher frequencies.
0 56 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200061.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:00.800 --> 00:00:08.000
  4 +Intracytoplasmic sperm injection, or ICSI, is a form of in vitro fertilization.
  5 +
  6 +00:00:09.000 --> 00:00:12.850
  7 +That means the egg is fertilized outside the body.
  8 +
  9 +00:00:14.000 --> 00:00:16.400
  10 +First, egg cells are harvested.
  11 +
  12 +00:00:17.000 --> 00:00:21.500
  13 +Then they're placed in a special media in a laboratory dish.
  14 +
  15 +00:00:22.000 --> 00:00:25.500
  16 +Within a few hours, a sperm is injected through
  17 +
  18 +00:00:25.500 --> 00:00:28.600
  19 +a fine needle into the center of an egg.
  20 +
  21 +00:00:29.700 --> 00:00:34.850
  22 +If successful, the cell will divide and form the first stages of an embryo.
  23 +
  24 +00:00:35.910 --> 00:00:40.400
  25 +Typically, several eggs are harvested and fertilized at the same time.
  26 +
  27 +00:00:41.000 --> 00:00:43.000
  28 +Then they're placed in the uterus.
  29 +
  30 +00:00:43.950 --> 00:00:49.050
  31 +This increases the chance one will implant and become a successful pregnancy.
0 32 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200071.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:00.000 --> 00:00:03.800
  4 +A stroke can occur when an obstruction such as a blood clot
  5 +
  6 +00:00:04.000 --> 00:00:08.500
  7 +travels from another part of the body and lodges inside an artery in the brain.
  8 +
  9 +00:00:08.800 --> 00:00:15.000
  10 +When an arterial wall becomes damaged, various types of emboli, or obstructions, can form.
  11 +
  12 +00:00:15.400 --> 00:00:21.300
  13 +Emboli can be made up of various substances such as platelets, elements in the blood that help it clot,
  14 +
  15 +00:00:21.500 --> 00:00:25.070
  16 +blood clots that form elsewhere and pass to the damaged area,
  17 +
  18 +00:00:25.200 --> 00:00:28.400
  19 +cholesterol,
  20 +
  21 +00:00:29.100 --> 00:00:31.000
  22 +or a combination of things.
  23 +
  24 +00:00:31.400 --> 00:00:35.500
  25 +For example, an embolism is formed in the carotid artery and breaks loose,
  26 +
  27 +00:00:36.000 --> 00:00:41.000
  28 +travelling towards the brain where it will eventually lodge, blocking the blood the brain needs.
  29 +
  30 +00:00:41.700 --> 00:00:47.800
  31 +The blocked artery deprives the brain of oxygen, which cause damage to the surrounding tissue.
  32 +
  33 +00:00:48.100 --> 00:00:49.000
  34 +The result is a stroke.
0 35 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200072.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +00:00:00.110 --> 00:00:02.130
  5 +A blood clot or embolus,
  6 +
  7 +00:00:02.140 --> 00:00:04.280
  8 +can form and break off from the heart.
  9 +
  10 +00:00:05.190 --> 00:00:08.020
  11 +The clot travels through the bloodstream
  12 +
  13 +00:00:08.170 --> 00:00:11.070
  14 +where it can lodge in the artery of the brain,
  15 +
  16 +00:00:12.130 --> 00:00:14.220
  17 +blocking the flow of oxygen-rich blood.
  18 +
  19 +00:00:15.060 --> 00:00:18.280
  20 +The lack of oxygen results in damage, destruction,
  21 +
  22 +00:00:18.290 --> 00:00:23.100
  23 +or even tissue death of the brain beyond the affected area.
  24 +
  25 +00:00:24.010 --> 00:00:26.070
  26 +The result is a stroke.
0 27 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200076.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:00.000 --> 00:00:04.000
  6 +A vasectomy is a procedure to cause permanent
  7 +
  8 +
  9 +
  10 +00:00:04.000 --> 00:00:09.000
  11 +sterility in a man by preventing the
  12 +transport of sperm out of the testes.
  13 +
  14 +
  15 +
  16 +00:00:10.200 --> 00:00:13.000
  17 +A small incision is made in the scrotum,
  18 +
  19 +
  20 +
  21 +00:00:13.000 --> 00:00:15.000
  22 +which is the skin containing the testes,
  23 +
  24 +
  25 +00:00:16.000 --> 00:00:20.000
  26 +and each vas deferens is tied off and cut apart
  27 +
  28 +
  29 +00:00:20.000 --> 00:00:24.000
  30 +preventing sperm from being
  31 +released within the ejaculate.
  32 +
  33 +
  34 +00:00:25.000 --> 00:00:28.000
  35 +The small skin incision is stitched closed.
  36 +
  37 +
  38 +00:00:28.000 --> 00:00:32.000
  39 +A vasectomy does not affect
  40 +a man's sexual function.
0 41 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200077.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:08.000 --> 00:00:09.000
  6 +Ouch!
  7 +
  8 +
  9 +00:00:09.000 --> 00:00:14.500
  10 +Here's how platelets form clots. This small artery has a cut.
  11 +
  12 +
  13 +00:00:17.000 --> 00:00:19.600
  14 +Blood flowing past the cut includes
  15 +
  16 +00:00:19.650 --> 00:00:22.000
  17 +red blood cells that carry oxygen,
  18 +
  19 +
  20 +00:00:22.100 --> 00:00:24.000
  21 +platelets that come from
  22 +
  23 +00:00:24.100 --> 00:00:26.000
  24 +white blood cell fragments,
  25 +
  26 +
  27 +00:00:26.000 --> 00:00:29.100
  28 +and clotting factors that help blood clot.
  29 +
  30 +
  31 +00:00:29.200 --> 00:00:32.200
  32 +When a blood vessel is damaged, blood cells
  33 +
  34 +
  35 +00:00:32.300 --> 00:00:35.600
  36 +and plasma ooze into surrounding tissue.
  37 +
  38 +
  39 +00:00:36.000 --> 00:00:39.000
  40 +Platelets immediately stick to the edges of the
  41 +
  42 +00:00:39.000 --> 00:00:40.100
  43 +cut and release
  44 +
  45 +
  46 +00:00:40.200 --> 00:00:43.100
  47 +chemicals that attract more platelets.
  48 +
  49 +
  50 +00:00:43.150 --> 00:00:46.000
  51 +Eventually, a platelet plug is formed,
  52 +
  53 +00:00:46.150 --> 00:00:49.000
  54 +and the outside bleeding stops.
  55 +
  56 +
  57 +00:00:49.000 --> 00:00:50.500
  58 +On the inside,
  59 +
  60 +00:00:50.700 --> 00:00:54.000
  61 +clotting factors cause a cascade of activity
  62 +
  63 +
  64 +00:00:54.100 --> 00:00:56.800
  65 +that includes strands of blood-borne material
  66 +
  67 +00:00:56.850 --> 00:00:58.000
  68 +called fibrin
  69 +
  70 +
  71 +00:00:58.000 --> 00:01:02.000
  72 +sticking together to seal the inside of the wound.
  73 +
  74 +
  75 +00:01:02.000 --> 00:01:04.000
  76 +Eventually, the blood vessel heals,
  77 +
  78 +
  79 +00:01:04.000 --> 00:01:08.000
  80 +and several days later, the blood clot dissolves.
0 81 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200079.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:05.600 --> 00:00:10.300
  6 +The force of blood on artery walls is called blood pressure.
  7 +
  8 +
  9 +00:00:11.000 --> 00:00:15.700
  10 +Normal pressure is important for the proper flow of blood from the heart to the
  11 +
  12 +00:00:15.750 --> 00:00:17.200
  13 +body's organs and tissues.
  14 +
  15 +00:00:17.700 --> 00:00:20.800
  16 +Each heart beat forces blood to the rest of the body.
  17 +
  18 +00:00:21.300 --> 00:00:25.400
  19 +Near the heart, pressure is higher, and away from it lower.
  20 +
  21 +00:00:26.100 --> 00:00:30.300
  22 +Blood pressure depends on many things, including how much blood the
  23 +
  24 +00:00:30.350 --> 00:00:34.600
  25 +heart is pumping and the diameter of the arteries the blood is moving through.
  26 +
  27 +00:00:35.100 --> 00:00:38.000
  28 +Generally, the more blood that's pumped
  29 +
  30 +00:00:38.100 --> 00:00:41.100
  31 +and the narrower the artery the higher the pressure is.
  32 +
  33 +00:00:42.700 --> 00:00:47.500
  34 +Blood pressure is measured both as the heart contracts, which is called systole,
  35 +
  36 +00:00:48.000 --> 00:00:51.200
  37 +and as it relaxes, which is called diastole.
  38 +
  39 +00:00:52.000 --> 00:00:56.000
  40 +Systolic blood pressure is measured when the heart ventricles contract.
  41 +
  42 +00:00:56.500 --> 00:01:00.600
  43 +Diastolic blood pressure is measured when the heart ventricles relax.
  44 +
  45 +00:01:01.000 --> 00:01:07.200
  46 +A systolic pressure of 115 millimeters of mercury is considered normal,
  47 +
  48 +00:01:07.600 --> 00:01:10.000
  49 +as is a diastolic pressure of 70.
  50 +
  51 +00:01:10.700 --> 00:01:16.000
  52 +Commonly, this pressure would be stated as 115 over 70.
  53 +
  54 +00:01:17.000 --> 00:01:20.900
  55 +Stressful situations can temporarily cause blood pressure to rise.
  56 +
  57 +00:01:21.700 --> 00:01:27.000
  58 +If a person has a consistent blood pressure reading of 140 over 90,
  59 +
  60 +00:01:27.100 --> 00:01:30.000
  61 +he would be evaluated for high blood pressure.
  62 +
  63 +00:01:30.100 --> 00:01:34.500
  64 +Left untreated, high blood pressure can damage important organs,
  65 +
  66 +00:01:35.000 --> 00:01:39.500
  67 +such as the brain and kidneys, as well as lead to a stroke.WEBVTT
  68 +
  69 +
  70 +
  71 +00:00:08.000 --> 00:00:09.000
  72 +Ouch!
  73 +
  74 +
  75 +00:00:09.000 --> 00:00:14.500
  76 +Here's how platelets form clots. This small artery has a cut.
  77 +
  78 +
  79 +00:00:17.000 --> 00:00:19.600
  80 +Blood flowing past the cut includes
  81 +
  82 +00:00:19.650 --> 00:00:22.000
  83 +red blood cells that carry oxygen,
  84 +
  85 +
  86 +00:00:22.100 --> 00:00:24.000
  87 +platelets that come from
  88 +
  89 +00:00:24.100 --> 00:00:26.000
  90 +white blood cell fragments,
  91 +
  92 +
  93 +00:00:26.000 --> 00:00:29.100
  94 +and clotting factors that help blood clot.
  95 +
  96 +
  97 +00:00:29.200 --> 00:00:32.200
  98 +When a blood vessel is damaged, blood cells
  99 +
  100 +
  101 +00:00:32.300 --> 00:00:35.600
  102 +and plasma ooze into surrounding tissue.
  103 +
  104 +
  105 +00:00:36.000 --> 00:00:39.000
  106 +Platelets immediately stick to the edges of the
  107 +
  108 +00:00:39.000 --> 00:00:40.100
  109 +cut and release
  110 +
  111 +
  112 +00:00:40.200 --> 00:00:43.100
  113 +chemicals that attract more platelets.
  114 +
  115 +
  116 +00:00:43.150 --> 00:00:46.000
  117 +Eventually, a platelet plug is formed,
  118 +
  119 +00:00:46.150 --> 00:00:49.000
  120 +and the outside bleeding stops.
  121 +
  122 +
  123 +00:00:49.000 --> 00:00:50.500
  124 +On the inside,
  125 +
  126 +00:00:50.700 --> 00:00:54.000
  127 +clotting factors cause a cascade of activity
  128 +
  129 +
  130 +00:00:54.100 --> 00:00:56.800
  131 +that includes strands of blood-borne material
  132 +
  133 +00:00:56.850 --> 00:00:58.000
  134 +called fibrin
  135 +
  136 +
  137 +00:00:58.000 --> 00:01:02.000
  138 +sticking together to seal the inside of the wound.
  139 +
  140 +
  141 +00:01:02.000 --> 00:01:04.000
  142 +Eventually, the blood vessel heals,
  143 +
  144 +
  145 +00:01:04.000 --> 00:01:08.000
  146 +and several days later, the blood clot dissolves.
0 147 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200080.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +00:00:09.000 --> 00:00:11.500
  5 +A network of specialized muscle cells
  6 +
  7 +00:00:11.600 --> 00:00:13.800
  8 +is found in the heart's walls.
  9 +
  10 +
  11 +
  12 +00:00:14.700 --> 00:00:17.180
  13 +These muscle cells send signals to
  14 +
  15 +
  16 +00:00:17.200 --> 00:00:18.200
  17 +the rest of the heart muscle
  18 +
  19 +
  20 +
  21 +00:00:18.700 --> 00:00:20.200
  22 +causing a contraction.
  23 +
  24 +
  25 +00:00:20.800 --> 00:00:22.150
  26 +This group of muscle cells is
  27 +
  28 +00:00:22.150 --> 00:00:25.000
  29 +called the cardiac conduction system.
  30 +
  31 +00:00:25.500 --> 00:00:27.050
  32 +The main parts of the system
  33 +
  34 +00:00:27.200 --> 00:00:30.100
  35 +are the SA node, AV node,
  36 +
  37 +
  38 +
  39 +00:00:30.500 --> 00:00:34.000
  40 +bundle of His, bundle branches,
  41 +
  42 +
  43 +00:00:34.400 --> 00:00:36.000
  44 +and Purkinje fibers.
  45 +
  46 +00:00:36.800 --> 00:00:38.300
  47 +Let's follow a signal
  48 +
  49 +00:00:38.310 --> 00:00:39.900
  50 +through the contraction process.
  51 +
  52 +
  53 +00:00:41.000 --> 00:00:44.200
  54 +The SA node starts the sequence by causing
  55 +
  56 +
  57 +00:00:44.250 --> 00:00:46.600
  58 +the atrial muscles to contract.
  59 +
  60 +00:00:46.650 --> 00:00:47.600
  61 +That's why doctors
  62 +
  63 +00:00:47.650 --> 00:00:51.000
  64 +sometimes call it the anatomical pacemaker.
  65 +
  66 +
  67 +
  68 +00:00:52.000 --> 00:00:55.000
  69 +Next, the signal travels to the AV node,
  70 +
  71 +
  72 +00:00:55.010 --> 00:00:57.000
  73 +through the bundle of His,
  74 +
  75 +00:00:57.010 --> 00:00:59.000
  76 +down the bundle branches,
  77 +
  78 +
  79 +00:00:59.010 --> 00:01:01.000
  80 +and through the Purkinje fibers,
  81 +
  82 +00:01:01.300 --> 00:01:03.600
  83 +causing the ventricles to contract.
  84 +
  85 +
  86 +00:01:04.010 --> 00:01:07.000
  87 +This signal creates an electrical current that
  88 +
  89 +
  90 +00:01:07.010 --> 00:01:08.700
  91 +can be seen on a graph
  92 +
  93 +00:01:08.800 --> 00:01:12.000
  94 +called an electrocardiogram, or EKG.
  95 +
  96 +
  97 +00:01:12.010 --> 00:01:14.800
  98 +Doctors use an EKG to see how well
  99 +
  100 +00:01:14.810 --> 00:01:16.700
  101 +the cardiac conduction system works.
  102 +
  103 +
  104 +
  105 +00:01:17.010 --> 00:01:19.100
  106 +Any changes on the EKG
  107 +
  108 +
  109 +00:01:19.110 --> 00:01:21.500
  110 +can mean serious problems.
0 111 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200083.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:05.000 --> 00:00:09.500
  6 +The heart has four chambers and four main blood vessels
  7 +
  8 +
  9 +00:00:09.600 --> 00:00:12.700
  10 +that either bring blood to the heart, or carry blood away.
  11 +
  12 +00:00:12.750 --> 00:00:16.800
  13 +The four chambers are the right atrium and right ventricle
  14 +
  15 +00:00:17.000 --> 00:00:20.100
  16 +and the left atrium and left ventricle.
  17 +
  18 +00:00:20.510 --> 00:00:25.600
  19 +The blood vessels include the superior and inferior vena cava.
  20 +
  21 +00:00:25.710 --> 00:00:32.200
  22 +These bring blood from the body to the right atrium. Next is the pulmonary artery.
  23 +
  24 +00:00:32.400 --> 00:00:36.200
  25 +that carries blood from the right ventricle to the lungs.
  26 +
  27 +00:00:36.400 --> 00:00:40.200
  28 +The aorta is the body's largest artery.
  29 +
  30 +00:00:41.000 --> 00:00:45.800
  31 +It carries oxygen-rich blood from the left ventricle to the rest of the body.
  32 +
  33 +00:00:46.110 --> 00:00:51.200
  34 +Beneath the tough fibrous coating of the heart, you can see it beating.
  35 +
  36 +00:00:55.510 --> 00:00:59.600
  37 +Inside the chambers are a series of one-way valves.
  38 +
  39 +00:00:59.700 --> 00:01:03.000
  40 +These keep the blood flowing in one direction.
  41 +
  42 +00:01:12.800 --> 00:01:17.300
  43 +Dye injected into the superior vena cava, will pass through
  44 +
  45 +00:01:17.350 --> 00:01:21.500
  46 +all the heart's chambers during one cardiac cycle.
  47 +
  48 +00:01:21.550 --> 00:01:24.600
  49 +Blood first enters the heart's right atrium.
  50 +
  51 +00:01:24.700 --> 00:01:31.100
  52 +A muscle contraction forces the blood through the tricuspid valve into the right ventricle.
  53 +
  54 +00:01:31.300 --> 00:01:37.300
  55 +When the right ventricle contracts, blood is forced through the pulmonary semilunar valve
  56 +
  57 +00:01:37.400 --> 00:01:42.000
  58 +into the pulmonary artery. Then it travels to the lungs.
  59 +
  60 +00:01:42.100 --> 00:01:47.800
  61 +In the lungs, the blood receives oxygen then leaves through the pulmonary veins.
  62 +
  63 +00:01:47.900 --> 00:01:52.000
  64 +It returns to the heart and enters the left atrium.
  65 +
  66 +00:01:52.200 --> 00:01:57.500
  67 +From there, blood is forced through the mitral valve into the left ventricle.
  68 +
  69 +00:01:57.600 --> 00:02:02.800
  70 +This is the muscular pump that sends blood out to the rest of the body.
  71 +
  72 +00:02:03.100 --> 00:02:09.200
  73 +When the left ventricle contracts, it forces blood through the aortic semilunar valve
  74 +
  75 +00:02:09.250 --> 00:02:10.500
  76 +and into the aorta.
  77 +
  78 +00:02:11.010 --> 00:02:16.200
  79 +The aorta and its branches carries the blood to all the body's tissues.
0 80 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200088.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +
  5 +00:00:02.000 --> 00:00:06.300
  6 +Peristalsis is a series of wave-like muscle contractions
  7 +
  8 +
  9 +
  10 +00:00:06.400 --> 00:00:09.800
  11 +that move food through the digestive tract.
  12 +
  13 +
  14 +00:00:10.000 --> 00:00:12.000
  15 +It starts in the esophagus
  16 +
  17 +
  18 +00:00:12.200 --> 00:00:15.800
  19 +where strong wave-like motions of the smooth muscle
  20 +
  21 +
  22 +00:00:16.000 --> 00:00:19.400
  23 +move balls of swallowed food to the stomach.
  24 +
  25 +00:00:20.300 --> 00:00:25.000
  26 +There, the food is churned into a liquid mixture called chyme
  27 +
  28 +
  29 +
  30 +00:00:25.200 --> 00:00:29.800
  31 +that moves into the small intestine where peristalsis continues.
  32 +
  33 +
  34 +00:00:30.300 --> 00:00:32.200
  35 +Stretching out a piece of intestine
  36 +
  37 +
  38 +00:00:32.250 --> 00:00:35.700
  39 +will make it easier to see the wave-like motion.
  40 +
  41 +00:00:36.000 --> 00:00:40.7 00
  42 +The motion mixes and shifts the chyme back and forth.
  43 +
  44 +
  45 +00:00:41.000 --> 00:00:43.100
  46 +This lets the bloodstream absorb nutrients
  47 +
  48 +00:00:43.150 --> 00:00:45.900
  49 +through the walls of the small intestine.
  50 +
  51 +00:00:46.200 --> 00:00:49.500
  52 +In the large intestine peristalsis helps water
  53 +
  54 +00:00:49.500 --> 00:00:53.600
  55 +from undigested food be absorbed into the blood stream.
  56 +
  57 +00:00:53.610 --> 00:00:56.100
  58 +Then, the remaining waste products
  59 +
  60 +00:00:56.100 --> 00:00:59.800
  61 +are excreted through the rectum and anus.
0 62 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200091.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +
  4 +00:00:06.500 --> 00:00:12.010
  5 +The glands that make up the endocrine system produce chemical messengers called hormones
  6 +
  7 +00:00:12.020 --> 00:00:16.100
  8 +that travel through the blood to other parts of the body.
  9 +
  10 +00:00:16.100 --> 00:00:20.600
  11 +Important endocrine glands include the pituitary,
  12 +
  13 +00:00:20.800 --> 00:00:22.010
  14 +thyroid.
  15 +
  16 +00:00:22.020 --> 00:00:23.010
  17 +parathyroid,
  18 +
  19 +00:00:23.020 --> 00:00:25.010
  20 +thymus,
  21 +
  22 +00:00:25.020 --> 00:00:27.010
  23 +and adrenal glands.
  24 +
  25 +00:00:27.020 --> 00:00:32.010
  26 +There are other glands that contain endocrine tissue and secrete hormones,
  27 +
  28 +00:00:32.020 --> 00:00:36.010
  29 +including the pancreas, ovaries, and testes.
  30 +
  31 +00:00:36.800 --> 00:00:41.010
  32 +The endocrine and nervous systems work closely together.
  33 +
  34 +00:00:41.020 --> 00:00:44.010
  35 +The brain sends instructions to the endocrine system.
  36 +
  37 +00:00:44.020 --> 00:00:48.010
  38 +In return, it gets constant feedback from the glands.
  39 +
  40 +00:00:48.020 --> 00:00:53.010
  41 +The two systems together are called the neuro endocrine system.
  42 +
  43 +00:00:53.020 --> 00:00:56.010
  44 +The hypothalamus is the master switchboard.
  45 +
  46 +00:00:56.020 --> 00:01:00.010
  47 +It's the part of the brain that controls the endocrine system.
  48 +
  49 +00:01:00.020 --> 00:01:05.010
  50 +That pea-sized structure hanging below it is the pituitary gland.
  51 +
  52 +00:01:05.020 --> 00:01:10.010
  53 +It's called the master gland because it regulates the activity of the glands.
  54 +
  55 +00:01:10.020 --> 00:01:16.400
  56 +The hypothalamus sends either hormonal or electrical messages to the pituitary gland.
  57 +
  58 +00:01:16.410 --> 00:01:21.010
  59 +In turn, it releases hormones that carry signals to other glands.
  60 +
  61 +00:01:21.020 --> 00:01:24.010
  62 +The system maintains its own balance.
  63 +
  64 +00:01:24.020 --> 00:01:29.010
  65 +When the hypothalamus detects the rising level of hormones from a target organ,
  66 +
  67 +00:01:29.020 --> 00:01:34.010
  68 +It sends a message to the pituitary to stop releasing certain hormones.
  69 +
  70 +00:01:34.020 --> 00:01:40.010
  71 +When the pituitary stops, it causes the target organ to stop producing its hormones.
  72 +
  73 +00:01:40.020 --> 00:01:45.010
  74 +The constant adjustment of hormone levels lets the body function normally.
  75 +
  76 +00:01:45.020 --> 00:01:48.000
  77 +This process is called homeostasis.
0 78 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200103.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:06.000 --> 00:00:09.700
  4 +The body is mostly composed of fluids.
  5 +
  6 +00:00:09.900 --> 00:00:14.100
  7 +All its cells contain and are surrounded by fluids.
  8 +
  9 +00:00:15.200 --> 00:00:19.900
  10 +In addition, four to five liters of blood circulate
  11 +
  12 +00:00:19.950 --> 00:00:23.500
  13 +through the cardiovascular system at any given time.
  14 +
  15 +00:00:24.000 --> 00:00:27.950
  16 +Some of that blood escapes from the system as it passes through
  17 +
  18 +00:00:28.000 --> 00:00:31.900
  19 +tiny blood vessels called capillaries in the body tissues.
  20 +
  21 +00:00:33.700 --> 00:00:37.100
  22 +Fortunately, there is a "secondary circulatory system"
  23 +
  24 +00:00:37.900 --> 00:00:41.950
  25 +that reabsorbs escaped fluid and returns it to the veins.
  26 +
  27 +00:00:42.800 --> 00:00:45.950
  28 +That system is the lymphatic system.
  29 +
  30 +00:00:46.000 --> 00:00:49.450
  31 +It runs parallel to the veins and empties into them.
  32 +
  33 +00:00:51.000 --> 00:00:54.050
  34 +Lymph forms at the microscopic level.
  35 +
  36 +00:00:55.100 --> 00:00:59.950
  37 +Small arteries, or arterioles, lead to capillaries,
  38 +
  39 +00:01:00.000 --> 00:01:04.000
  40 +which in turn lead to small veins, or venules.
  41 +
  42 +00:01:05.000 --> 00:01:08.900
  43 +Lymph capillaries lie close to the blood capillaries,
  44 +
  45 +00:01:09.000 --> 00:01:11.000
  46 +but they are not actually connected.
  47 +
  48 +00:01:12.000 --> 00:01:16.500
  49 +The arterioles deliver blood to the capillaries from the heart,
  50 +
  51 +00:01:16.550 --> 00:01:20.000
  52 +and the venules take blood away from the capillaries.
  53 +
  54 +00:01:20.700 --> 00:01:24.050
  55 +As blood flows through the capillaries it is under pressure.
  56 +
  57 +00:01:25.000 --> 00:01:27.050
  58 +This is called hydrostatic pressure.
  59 +
  60 +00:01:28.050 --> 00:01:31.300
  61 +This pressure forces some of the fluid in the blood
  62 +
  63 +00:01:31.400 --> 00:01:35.000
  64 +out of the capillary into surrounding tissue.
  65 +
  66 +00:01:35.500 --> 00:01:37.900
  67 +Oxygen from the red blood cells,
  68 +
  69 +00:01:38.000 --> 00:01:42.050
  70 +and nutrients in the fluid then diffuse into the tissue.
  71 +
  72 +00:01:43.600 --> 00:01:47.900
  73 +Carbon dioxide and cellular waste products in the tissue
  74 +
  75 +00:01:48.000 --> 00:01:50.150
  76 +diffuse back into the bloodstream.
  77 +
  78 +00:01:51.000 --> 00:01:55.700
  79 +The capillaries reabsorb most of the fluid.
  80 +
  81 +00:01:56.000 --> 00:01:59.400
  82 +The lymph capillaries absorb what fluid is left.
  83 +
  84 +00:02:01.050 --> 00:02:06.100
  85 +Edema, or swelling, occurs when fluid in or
  86 +
  87 +00:02:06.200 --> 00:02:10.100
  88 +between the cells leaks into the body tissues.
  89 +
  90 +00:02:10.900 --> 00:02:13.950
  91 +It is caused by events that increase the flow of fluid
  92 +
  93 +00:02:14.000 --> 00:02:17.400
  94 +out of the bloodstream or prevent its return.
  95 +
  96 +00:02:18.000 --> 00:02:22.500
  97 +Persistent edema may be a sign of serious health problems
  98 +
  99 +00:02:22.900 --> 00:02:25.100
  100 +and should be checked by a health care professional.
  101 +
  102 +00:02:26.900 --> 00:02:33.000
  103 +The lymphatic system can play a very worrisome role in the spread of breast cancer.
  104 +
  105 +00:02:33.850 --> 00:02:37.900
  106 +Lymph nodes filter the lymph as it passes through the system.
  107 +
  108 +00:02:38.000 --> 00:02:41.800
  109 +They are located at specific points throughout the body
  110 +
  111 +00:02:41.900 --> 00:02:45.000
  112 +such as in the armpits and high in the throat.
  113 +
  114 +00:02:45.100 --> 00:02:49.400
  115 +Lymphatic circulation in breast tissue helps regulate the
  116 +
  117 +00:02:49.500 --> 00:02:53.300
  118 +local fluid balance as well as filter out harmful substances.
  119 +
  120 +00:02:54.900 --> 00:02:58.900
  121 +But the breast's lymphatic system can also spread diseases
  122 +
  123 +00:02:59.000 --> 00:03:01.100
  124 +such as cancer through the body.
  125 +
  126 +00:03:01.350 --> 00:03:04.800
  127 +Lymphatic vessels provide a highway along
  128 +
  129 +00:03:04.850 --> 00:03:09.500
  130 +which invasive cancerous cells move to other parts of the body.
  131 +
  132 +00:03:10.900 --> 00:03:13.400
  133 +The process is called metastasis.
  134 +
  135 +00:03:13.950 --> 00:03:19.800
  136 +It can lead to the formation of a secondary cancer mass in another part of the body.
  137 +
  138 +00:03:20.950 --> 00:03:26.000
  139 +This mammogram shows a tumor and the lymph vessel network it has invaded.
  140 +
  141 +00:03:27.000 --> 00:03:32.200
  142 +No woman is too young to know that regular breast self-examinations can
  143 +
  144 +00:03:32.300 --> 00:03:38.000
  145 +help to catch tumors earlier in their growth, hopefully before they spread or metastasize.
0 146 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200139.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:00.000 --> 00:00:04.800
  4 +DCA, or directional coronary atherectomy is a
  5 +
  6 +00:00:04.850 --> 00:00:07.200
  7 +minimally invasive procedure to remove
  8 +
  9 +00:00:07.350 --> 00:00:09.800
  10 +blockage from coronary arteries
  11 +
  12 +00:00:09.850 --> 00:00:11.700
  13 +to improve blood flow to the
  14 +
  15 +00:00:11.750 --> 00:00:13.500
  16 +heart muscle and ease pain.
  17 +
  18 +00:00:17.200 --> 00:00:20.800
  19 +First, a local anesthesia numbs the groin area.
  20 +
  21 +00:00:22.000 --> 00:00:23.800
  22 +Then the doctor puts a needle into the
  23 +
  24 +00:00:24.000 --> 00:00:25.800
  25 +femoral artery, the artery
  26 +
  27 +00:00:25.850 --> 00:00:27.000
  28 +that runs down the leg.
  29 +
  30 +00:00:28.000 --> 00:00:30.850
  31 +The doctor inserts a guide wire through
  32 +
  33 +00:00:30.900 --> 00:00:32.000
  34 +the needle
  35 +
  36 +00:00:34.800 --> 00:00:36.500
  37 +and then removes the needle.
  38 +
  39 +00:00:39.000 --> 00:00:41.500
  40 +He replaces it with an introducer,
  41 +
  42 +00:00:41.550 --> 00:00:44.800
  43 +a tubular instrument with two ports used to
  44 +
  45 +00:00:44.850 --> 00:00:47.100
  46 +insert flexible devices such as a
  47 +
  48 +00:00:47.150 --> 00:00:49.000
  49 +catheter into a blood vessel.
  50 +
  51 +00:00:49.100 --> 00:00:51.000
  52 +Once the introducer is in place,
  53 +
  54 +00:00:51.100 --> 00:00:55.000
  55 +the original guidewire is replaced by a finer wire.
  56 +
  57 +00:00:55.100 --> 00:00:57.000
  58 +This new wire is used to
  59 +
  60 +00:00:57.100 --> 00:00:59.000
  61 +insert a diagnostic catheter,
  62 +
  63 +00:00:59.500 --> 00:01:02.500
  64 +a long flexible tube, into the artery
  65 +
  66 +00:01:02.550 --> 00:01:04.000
  67 +and guide it to the heart.
  68 +
  69 +00:01:04.100 --> 00:01:07.200
  70 +The doctor then removes the second wire.
  71 +
  72 +00:01:15.800 --> 00:01:19.800
  73 +With the catheter at the opening of one of the coronary arteries,
  74 +
  75 +00:01:19.850 --> 00:01:23.000
  76 +the doctor injects dye and takes an X-ray.
  77 +
  78 +00:01:29.800 --> 00:01:31.800
  79 +If it shows a treatable blockage,
  80 +
  81 +00:01:31.850 --> 00:01:34.800
  82 +the doctor uses another guide wire to remove
  83 +
  84 +00:01:34.850 --> 00:01:38.200
  85 +the first catheter and replace it with a guiding catheter.
  86 +
  87 +00:01:38.550 --> 00:01:41.800
  88 +Then the wire that was used to do this is removed
  89 +
  90 +00:01:45.800 --> 00:01:50.800
  91 +and replaced by a finer wire that is advanced across the blockage.
  92 +
  93 +00:01:53.800 --> 00:01:56.200
  94 +Another catheter designed for lesion
  95 +
  96 +00:01:56.250 --> 00:01:59.200
  97 +cutting is also advanced across the blockage site.
  98 +
  99 +00:01:59.250 --> 00:02:02.800
  100 +A low-pressure balloon attached next to the cutter,
  101 +
  102 +00:02:02.850 --> 00:02:06.800
  103 +is inflated, exposing lesion material to the cutter.
  104 +
  105 +00:02:08.000 --> 00:02:11.200
  106 +A drive unit is turned on, causing the cutter to spin.
  107 +
  108 +00:02:11.250 --> 00:02:16.200
  109 +The doctor advances a lever on the drive unit that in turn advances the cutter.
  110 +
  111 +00:02:21.500 --> 00:02:25.200
  112 +The pieces of blockage it cuts away are stored in a section
  113 +
  114 +00:02:25.250 --> 00:02:30.800
  115 +of the catheter called a nosecone until they are removed at the end of the procedure.
  116 +
  117 +00:02:31.000 --> 00:02:36.200
  118 +Rotating the catheter while inflating and deflating the balloon makes it possible
  119 +
  120 +00:02:36.250 --> 00:02:41.800
  121 +to cut the blockage in any direction, leading to uniform debulking.
  122 +
  123 +00:02:41.850 --> 00:02:43.800
  124 +A stent may also be placed.
  125 +
  126 +00:02:43.850 --> 00:02:50.300
  127 +This is a latticed metal scaffold put inside the coronary artery to keep the vessel open.
  128 +
  129 +00:02:51.800 --> 00:02:54.850
  130 +After the procedure, the doctor injects dye and takes
  131 +
  132 +00:02:54.900 --> 00:02:58.250
  133 +an X-ray to check for change in the arteries.
  134 +
  135 +00:03:00.500 --> 00:03:03.850
  136 +Then the catheter is removed and the procedure is over.
0 137 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/data/vtt/200140.vtt 0 → 100644
  1 +WEBVTT
  2 +
  3 +00:00:00.000 --> 00:00:04.500
  4 +PTCA, or percutaneous transluminal
  5 +
  6 +00:00:04.600 --> 00:00:07.300
  7 +coronary angioplasty, is a minimally invasive
  8 +
  9 +00:00:07.350 --> 00:00:10.700
  10 +procedure that opens blocked coronary arteries
  11 +
  12 +00:00:10.750 --> 00:00:12.800
  13 +to improve blood flow to the heart muscle.
  14 +
  15 +00:00:13.800 --> 00:00:18.000
  16 +First, a local anesthesia numbs the groin area.
  17 +
  18 +00:00:18.800 --> 00:00:21.200
  19 +Then, the doctor puts a needle into the
  20 +
  21 +00:00:21.250 --> 00:00:23.500
  22 +femoral artery, the artery
  23 +
  24 +00:00:23.550 --> 00:00:24.800
  25 +that runs down the leg.
  26 +
  27 +00:00:26.010 --> 00:00:28.500
  28 +The doctor inserts a guide wire through
  29 +
  30 +00:00:28.550 --> 00:00:29.900
  31 +the needle,
  32 +
  33 +00:00:33.010 --> 00:00:34.000
  34 +removes the needle,
  35 +
  36 +00:00:38.200 --> 00:00:40.200
  37 +and replaces it with an introducer,
  38 +
  39 +00:00:40.250 --> 00:00:43.800
  40 +an instrument with two ports for inserting
  41 +
  42 +00:00:43.850 --> 00:00:45.000
  43 +flexible devices.
  44 +
  45 +00:00:47.000 --> 00:00:48.500
  46 +Then the original guide wire
  47 +
  48 +00:00:48.550 --> 00:00:50.800
  49 +is replaced by a thinner wire.
  50 +
  51 +00:00:51.800 --> 00:00:54.950
  52 +The doctor passes a long narrow tube called
  53 +
  54 +00:00:54.970 --> 00:00:57.500
  55 +a diagnostic catheter over the new wire,
  56 +
  57 +00:00:57.550 --> 00:01:00.000
  58 +through the introducer, and into the artery.
  59 +
  60 +00:01:00.200 --> 00:01:05.800
  61 +Once it's in, the doctor guides it to the aorta and removes the guide wire.
  62 +
  63 +00:01:14.800 --> 00:01:17.200
  64 +With the catheter at the opening of a coronary artery,
  65 +
  66 +00:01:17.550 --> 00:01:21.000
  67 +the doctor injects dye and takes an X-ray.
  68 +
  69 +00:01:26.800 --> 00:01:28.800
  70 +If it shows a treatable blockage,
  71 +
  72 +00:01:28.850 --> 00:01:33.900
  73 +the doctor backs the catheter out and replaces it with a guiding catheter,
  74 +
  75 +00:01:33.950 --> 00:01:35.900
  76 +before removing the wire.
  77 +
  78 +00:01:42.800 --> 00:01:47.500
  79 +An even thinner wire is inserted and guided across the blockage.
  80 +
  81 +00:01:53.100 --> 00:01:56.900
  82 +A balloon catheter is then guided to the blockage site.
  83 +
  84 +00:01:57.800 --> 00:02:00.500
  85 +The balloon is inflated for a few seconds
  86 +
  87 +00:02:00.550 --> 00:02:03.950
  88 +to compress the blockage against the artery wall.
  89 +
  90 +00:02:03.950 --> 00:02:05.950
  91 +Then it's deflated.
  92 +
  93 +00:02:06.100 --> 00:02:08.500
  94 +The doctor may inflate the balloon a few more times,
  95 +
  96 +00:02:08.550 --> 00:02:12.950
  97 +each time filling it a little more to widen the passage.
  98 +
  99 +00:02:17.850 --> 00:02:22.800
  100 +This may then be repeated at each blocked or narrowed site.
  101 +
  102 +00:02:23.200 --> 00:02:25.500
  103 +The doctor may also place a stent,
  104 +
  105 +00:02:25.550 --> 00:02:27.450
  106 +a latticed metal scaffold,
  107 +
  108 +00:02:27.850 --> 00:02:30.800
  109 +within the coronary artery to keep it open.
  110 +
  111 +00:02:41.200 --> 00:02:42.550
  112 +Once the compression is done,
  113 +
  114 +00:02:43.550 --> 00:02:48.850
  115 +dye is injected and an X-ray is taken to check for changes in the arteries.
  116 +
  117 +00:02:51.800 --> 00:02:56.000
  118 +Then the catheter is removed and the procedure is complete.
0 119 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/content/images/Highlight-bulb.png 0 → 100644

1.11 KB

400-SOURCECODE/AIAHTML5.Web/content/images/blank-shapes.png 0 → 100644

1.63 KB

400-SOURCECODE/AIAHTML5.Web/content/images/bulb.png

1.11 KB | W: | H:

1.29 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
400-SOURCECODE/AIAHTML5.Web/content/images/bulb1.png

1.21 KB | W: | H:

1.15 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
400-SOURCECODE/AIAHTML5.Web/content/images/common/adam-leaf.png 0 → 100644

4.35 KB

400-SOURCECODE/AIAHTML5.Web/index.html
... ... @@ -35,6 +35,7 @@
35 35 <link href="themes/default/css/bootstrap/3.3.6/jquery-ui.css" rel="stylesheet" />
36 36  
37 37 <link href="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.css" rel="stylesheet" />
  38 + <link href="libs/video_4_12_11/css/video-js_4_12_11.css" rel="stylesheet" />
38 39 <link href="libs/jquery/jquery_plugin/SpeechBubble/css/bubble.css" rel="stylesheet" />
39 40 <link href="libs/jquery/jquery_plugin/slider-pips/jquery-ui-slider-pips.css" rel="stylesheet" />
40 41 <link href="themes/default/css/bootstrap/3.3.6/jquery.minicolors.css" rel="stylesheet" />
... ... @@ -45,7 +46,15 @@
45 46 /*.ActiveDefaultColorAnnotation {
46 47 background-color: #000000!important;
47 48 }*/
48   - .ActiveFormattingButtonClass {
  49 +
  50 +
  51 + #termList option:hover {
  52 + background-color: #3399FF;
  53 + color:#fff;
  54 + }
  55 +
  56 +
  57 + .ActiveFormattingButtonClass {
49 58 background-color: #1B92D0 !important;
50 59 }
51 60  
... ... @@ -414,7 +423,7 @@
414 423 <div class="">
415 424 <div class="col-sm-6">
416 425 <h5 class="font13 bolder">Modesty Setting</h5>
417   - <!--<img src="img/adam-leaf.png" alt="">-->
  426 + <img src="~/../content/images/common/adam-leaf.png" alt="" class="pull-left marginR5">
418 427 <div class="radio">
419 428 <label>
420 429 <input type="radio" ng-checked="isModestyOn" ng-model="formsetting.modesty" value="Y" name="modestyRadios" id="modon" ng-click="ChangeModesty(formsetting,'Y')">
... ... @@ -496,19 +505,42 @@
496 505 </div>
497 506 </div>
498 507 </div>
499   - <div class="well-popup well">
  508 + <div class="well-popup well blankshapediv">
500 509 <!--#7931-->
501   -
  510 +
502 511 <div id="edit-block" style="display: none; font-size: 13px;">Edit Shape Style</div>
503   - <img id="OnEdtShape" src="content/images/blank-shape.jpg" alt="..." class="img-rounded img-responsive" ng-click="disableAnnotationtoolOnListManager||enableAnnotationToolBar()">
504   -
  512 + <div class="outlinediv">
  513 + <div id="shapeStyleDiv" class="fullcolordiv" ng-click="disableAnnotationtoolOnListManager||enableAnnotationToolBar()">
  514 +
  515 + </div>
  516 +
  517 + </div>
505 518 </div>
506 519 <div class="well well-popup">
507 520 <div class="" role="group" aria-label="...">
508 521 <div>
509 522 <button type="button" class="btn btn-primary btn-xs pull-left btn-annotation" id="paintLine" data-toggle="tooltip" data-placement="top" title="Paint" style="margin-right:1%;" ng-click="paintBrush()"><i class="fa fa-paint-brush"></i></button>
510 523 <button type="button" class="btn btn-primary btn-xs pull-left btn-annotation" data-toggle="tooltip" data-placement="top" title="Erase" ng-click="EraseDrawing()"><i class="fa fa-eraser"></i></button>&nbsp;
511   - <div class="marginL2 pull-left"><input type="number" id="amount-2" step="1" style="width:60px;height:21px;" min="1" max="60" oninput="Brushsize(this)"></div>&nbsp;
  524 + <div style="width: 80px; margin: 0px 0px 0px 4px; display: inline-block;float:left;">
  525 + <div style="width: 58px; float: left;">
  526 + <input type="text" id="btnBrushSize" class="form-control" value="1" style="height:32px;border-radius:0;" oninput="Brushsize(this)">
  527 + </div>
  528 + <div style="width: 22px; float: left;">
  529 + <div style="width: 100%; float: left; height: 16px;">
  530 + <button type="button" id="btnBrushSizeIncrement" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;">
  531 +
  532 + <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-up.png">
  533 + </button>
  534 + </div>
  535 + <div style="width: 100%; float: left; height: 16px;">
  536 + <button type="button" id="btnBrushSizeDecrease" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;">
  537 + <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-down.png">
  538 + </button>
  539 + </div>
  540 + </div>
  541 +
  542 + </div>
  543 +
512 544 <div class="pull-left" style="width:45%; margin-left:2%;margin-top:5px;">
513 545 <div id="slider-range-min-2"></div>
514 546 </div>
... ... @@ -529,8 +561,8 @@
529 561 </div>
530 562  
531 563 <!--Modal For Annotation Text Box-->
532   - <div class="modal fade" id="annotationTextModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" style="z-index: 1200000!important;">
533   - <div class="modal-dialog" role="document">
  564 + <div id="annotationTextModal" style="display:none;z-index: 1000000000;width:500px;height:241px;padding-right:0!important;position:fixed;left:0;right:0;top:0px;bottom:0;margin:auto;">
  565 +
534 566 <div class="modal-content">
535 567 <div class="modal-header" style="background-color: #808D43;padding:10px;border-bottom:0;">
536 568 <!--<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>-->
... ... @@ -539,21 +571,8 @@
539 571 <div class="modal-body">
540 572 <div class="col-xs-12" style="padding:20px 0;">
541 573 <div class="form-inline">
542   - <select class="form-control" id="selected-font-family">
543   - <option>Arial</option>
544   - <option>Agency FB</option>
545   - <option>Algerian</option>
546   - <option>Arabic Trans</option>
547   - <option>Arial Baltic</option>
548   - <option>Arial Black</option>
549   - <option>Arial CE</option>
550   - <option>Arial CYR</option>
551   - <option>Arial Greek</option>
552   - <option>Arial Narrow</option>
553   - <option>Arial Rounded</option>
554   - <option>Arial TUR</option>
555   -
556   - </select>
  574 + <!--Annotation: Text in different font style is same.-->
  575 + <select class="form-control" id="selected-font-family"></select>
557 576 <select class="form-control" id="selected-font-size">
558 577 <option>14</option>
559 578 <option>16</option>
... ... @@ -608,11 +627,11 @@
608 627 </div>
609 628 <div class="modal-footer">
610 629 <!--<button type="button" class="btn btn-default" ng-click="closeModal()" data-dismiss="modal">Close</button>-->
611   - <button type="button" class="btn btn-default" id="closeEditText" data-dismiss="modal">Close</button>
612   - <button type="button" id="saveBtn" class="btn btn-primary" data-dismiss="modal" ng-click="saveText()">Save</button>
  630 + <button type="button" class="btn btn-default" ng-click="closeModal()" id="closeEditText" data-dismiss="modal">Close</button>
  631 + <button type="button" id="saveBtn" class="btn btn-primary" data-dismiss="modal" ng-click="saveText()">Save</button>
613 632 </div>
614 633 </div>
615   - </div>
  634 +
616 635 </div>
617 636  
618 637  
... ... @@ -708,9 +727,9 @@
708 727 </div>
709 728  
710 729  
711   -
  730 + <!--DA > List Manager > Multiple structure selection should not be available.-->
712 731 <div class="form-group">
713   - <select id="termList" class="form-control" multiple="" size="10"></select>
  732 + <select id="termList" class="form-control" size="10"></select>
714 733 </div>
715 734  
716 735 </div>
... ... @@ -842,9 +861,14 @@
842 861 </div>
843 862  
844 863 <div class="marginTopBtm10">
845   - <div class="well well-sm no-margin-btm">
846   - <img id="imgOpacity" class="img-rounded img-responsive imgopacity" alt="..." src="content/images/blank-shape.jpg">
847   - </div>
  864 +
  865 + <div class="well well-sm no-margin-btm blankshapediv">
  866 + <div class="outlinediv">
  867 + <div id="imgOpacity" class="fullcolordiv imgopacity">
  868 + </div>
  869 + </div>
  870 + </div>
  871 +
848 872 </div>
849 873 </div>
850 874 <div class="modal-footer">
... ... @@ -1068,22 +1092,19 @@
1068 1092 <script>
1069 1093 function Brushsize(object) {
1070 1094  
1071   - if (parseInt(object.value) == 0) {
1072   - //object.value = 0;
1073   - object.value = object.value.slice(0, 0);
1074   -
1075   - }
1076   -
1077   - if (parseInt(object.value) <= parseInt(object.max)) {
1078   -
  1095 + object.value = object.value.replace(/[^0-9]/g, '');
  1096 + if (parseInt(object.value) <= 0) {
  1097 + object.value =1;
  1098 + }
  1099 + if (parseInt(object.value)>=1 && parseInt(object.value) <= 60) {
1079 1100 object.value = object.value;
1080   -
1081   -
1082 1101 }
1083   - else {
  1102 + if(parseInt(object.value) > 60)
  1103 + {
1084 1104 object.value = object.value.slice(0, 1);
1085   -
  1105 +
1086 1106 }
  1107 +
1087 1108 }
1088 1109 </script>
1089 1110  
... ... @@ -1105,6 +1126,7 @@
1105 1126  
1106 1127 <script src="libs/jinqJs.js"></script>
1107 1128 <script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.js"></script>
  1129 + <script src="libs/video_4_12_11/video_4_12_11.js"></script>
1108 1130 <script src="libs/jquery/jquery_plugin/SpeechBubble/bubble.js"></script>
1109 1131 <script src="libs/jquery/jquery_plugin/slider-pips/jquery-ui-slider-pips.js"></script>
1110 1132 <!--<script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.min.js"></script>-->
... ... @@ -1147,11 +1169,10 @@
1147 1169 range: "min",
1148 1170 min: 1,
1149 1171 max: 60,
1150   - value: 10,
  1172 + value: 1,
1151 1173 slide: function (event, ui) {
1152 1174  
1153   - $("#amount-2").val(ui.value);
1154   -
  1175 + $("#btnBrushSize").val(ui.value);
1155 1176  
1156 1177 },
1157 1178 stop: function (event, ui) {
... ... @@ -1161,6 +1182,44 @@
1161 1182 }
1162 1183  
1163 1184 });
  1185 +
  1186 +
  1187 + $("#btnBrushSize").keydown(function () {
  1188 + var brushSizevalue = this.value;
  1189 + $("#slider-range-min-2").slider("value", parseInt(brushSizevalue));
  1190 + });
  1191 + $("#btnBrushSize").keyup(function () {
  1192 + var brushSizevalue = this.value;
  1193 + $("#slider-range-min-2").slider("value", parseInt(brushSizevalue));
  1194 + });
  1195 + $("#btnBrushSizeIncrement").click(function () {
  1196 + var brushIncrementVar = $("#btnBrushSize").val();
  1197 + if (brushIncrementVar >= 60) {
  1198 + $("#slider-range-min-2").slider("value", 60);
  1199 + }
  1200 + else {
  1201 + var brushIncrementedValue = parseInt(brushIncrementVar) + 1;
  1202 + $("#btnBrushSize").val(brushIncrementedValue);
  1203 + $("#slider-range-min-2").slider("value", parseInt(brushIncrementedValue));
  1204 + }
  1205 + });
  1206 + $("#btnBrushSizeDecrease").click(function () {
  1207 + var brushDecreaseVar = $("#btnBrushSize").val();
  1208 + if (brushDecreaseVar <= 1) {
  1209 + $("#slider-range-min-2").slider("value", 1);
  1210 + }
  1211 + else {
  1212 + var brushDecrementedValue = parseInt(brushDecreaseVar) - 1;
  1213 + $("#btnBrushSize").val(brushDecrementedValue);
  1214 + $("#slider-range-min-2").slider("value", parseInt(brushDecrementedValue));
  1215 + }
  1216 + });
  1217 + $("#btnBrushSize").val($("#slider-range-min-2").slider("value"));
  1218 +
  1219 +
  1220 +
  1221 +
  1222 +
1164 1223 //$("#slider-range-min-2").on("slidestart", function (event, ui) {
1165 1224  
1166 1225 // $('.btnCursor').trigger('click');
... ... @@ -1172,7 +1231,6 @@
1172 1231 //});
1173 1232 // $("#slider-range-min-2").on("slidechange", function (event, ui) { alert("ssasa"); });
1174 1233  
1175   - $("#amount-2").val($("#slider-vertical-2").slider("value"));
1176 1234  
1177 1235 $(function () {
1178 1236 $('[data-toggle="tooltip"]').tooltip();
... ... @@ -1195,6 +1253,7 @@
1195 1253 $(".modal").draggable();
1196 1254 $(".annotationTollbar").draggable();
1197 1255 $(".modeleditstyle").draggable();
  1256 + $("#annotationTextModal").draggable();
1198 1257 });
1199 1258 </script>
1200 1259  
... ... @@ -1409,7 +1468,7 @@
1409 1468 if (opacity) value += ', ' + opacity;
1410 1469 if (typeof console === 'object') {
1411 1470 console.log(value);
1412   - $("#imgOpacity").parent().css("background-color", value);
  1471 + $("#imgOpacity").css("background-color", value);
1413 1472  
1414 1473 }
1415 1474 },
... ... @@ -1454,7 +1513,7 @@
1454 1513 step: .1,
1455 1514 slide: function (event, ui) {
1456 1515  
1457   - $(".marginTopBtm10 img.imgopacity").css("opacity", ui.value);
  1516 + $(".marginTopBtm10 .imgopacity").css("opacity", ui.value);
1458 1517 // $("#slider-value").html(ui.value);
1459 1518  
1460 1519 }
... ...
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/css/font/vjs.eot 0 → 100644
No preview for this file type
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/css/font/vjs.svg 0 → 100644
  1 +<?xml version="1.0" standalone="no"?>
  2 +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
  3 +<svg xmlns="http://www.w3.org/2000/svg">
  4 +<metadata>Generated by IcoMoon</metadata>
  5 +<defs>
  6 +<font id="icomoon" horiz-adv-x="1024">
  7 +<font-face units-per-em="1024" ascent="960" descent="-64" />
  8 +<missing-glyph horiz-adv-x="1024" />
  9 +<glyph unicode="&#x20;" d="" horiz-adv-x="512" />
  10 +<glyph unicode="&#xe000;" d="M1024 960v-416l-160 160-192-192-96 96 192 192-160 160zM448 288l-192-192 160-160h-416v416l160-160 192 192z" />
  11 +<glyph unicode="&#xe001;" d="M192 832l640-384-640-384z" />
  12 +<glyph unicode="&#xe002;" d="M128 832h320v-768h-320zM576 832h320v-768h-320z" />
  13 +<glyph unicode="&#xe003;" d="M401.332 881.332c25.668 25.668 46.668 16.968 46.668-19.332v-828c0-36.3-21-44.998-46.668-19.33l-241.332 241.33h-160v384h160l241.332 241.332z" />
  14 +<glyph unicode="&#xe004;" d="M549.020 218.98c-12.286 0-24.568 4.686-33.942 14.058-18.746 18.746-18.746 49.136 0 67.882 81.1 81.1 81.1 213.058 0 294.156-18.746 18.746-18.746 49.138 0 67.882 18.746 18.744 49.136 18.744 67.882 0 118.53-118.53 118.53-311.392 0-429.922-9.372-9.37-21.656-14.056-33.94-14.056zM401.332 881.332c25.668 25.668 46.668 16.968 46.668-19.332v-828c0-36.3-21-44.998-46.668-19.33l-241.332 241.33h-160v384h160l241.332 241.332z" />
  15 +<glyph unicode="&#xe005;" d="M719.53 128.47c-12.286 0-24.568 4.686-33.942 14.058-18.744 18.744-18.744 49.136 0 67.882 131.006 131.006 131.006 344.17 0 475.176-18.744 18.746-18.744 49.138 0 67.882 18.744 18.742 49.138 18.744 67.882 0 81.594-81.592 126.53-190.076 126.53-305.468 0-115.39-44.936-223.876-126.53-305.47-9.372-9.374-21.656-14.060-33.94-14.060zM549.020 218.98c-12.286 0-24.568 4.686-33.942 14.058-18.746 18.746-18.746 49.136 0 67.882 81.1 81.1 81.1 213.058 0 294.156-18.746 18.746-18.746 49.138 0 67.882 18.746 18.744 49.136 18.744 67.882 0 118.53-118.53 118.53-311.392 0-429.922-9.372-9.37-21.656-14.056-33.94-14.056zM401.332 881.332c25.668 25.668 46.668 16.968 46.668-19.332v-828c0-36.3-21-44.998-46.668-19.33l-241.332 241.33h-160v384h160l241.332 241.332z" />
  16 +<glyph unicode="&#xe006;" d="M890.040 37.96c-12.286 0-24.568 4.686-33.942 14.058-18.744 18.746-18.744 49.136 0 67.882 87.638 87.642 135.904 204.16 135.904 328.1 0 123.938-48.266 240.458-135.904 328.098-18.744 18.746-18.744 49.138 0 67.882 18.744 18.744 49.138 18.744 67.882 0 105.77-105.772 164.022-246.4 164.022-395.98 0-149.582-58.252-290.208-164.022-395.98-9.372-9.374-21.656-14.060-33.94-14.060zM719.53 128.47c-12.286 0-24.568 4.686-33.942 14.058-18.744 18.744-18.744 49.136 0 67.882 131.006 131.006 131.006 344.17 0 475.176-18.744 18.746-18.744 49.138 0 67.882 18.744 18.742 49.138 18.744 67.882 0 81.594-81.592 126.53-190.076 126.53-305.468 0-115.39-44.936-223.876-126.53-305.47-9.372-9.374-21.656-14.060-33.94-14.060zM549.020 218.98c-12.286 0-24.568 4.686-33.942 14.058-18.746 18.746-18.746 49.136 0 67.882 81.1 81.1 81.1 213.058 0 294.156-18.746 18.746-18.746 49.138 0 67.882 18.746 18.744 49.136 18.744 67.882 0 118.53-118.53 118.53-311.392 0-429.922-9.372-9.37-21.656-14.056-33.94-14.056zM401.332 881.332c25.668 25.668 46.668 16.968 46.668-19.332v-828c0-36.3-21-44.998-46.668-19.33l-241.332 241.33h-160v384h160l241.332 241.332z" horiz-adv-x="1088" />
  17 +<glyph unicode="&#xe007;" d="M512 960l-320-512 320-512 320 512z" />
  18 +<glyph unicode="&#xe008;" d="M0 960h1374.316v-1030.414h-1374.316v1030.414zM1245.462 449.276c-1.706 180.052-8.542 258.568-51.2 314.036-7.68 11.946-22.186 18.772-34.132 27.296-41.814 30.73-238.944 41.814-467.636 41.814-228.702 0-435.21-11.084-476.17-41.814-12.8-8.524-27.316-15.35-35.84-27.296-41.822-55.468-47.786-133.984-50.346-314.036 2.56-180.062 8.524-258.57 50.346-314.036 8.524-12.8 23.040-18.774 35.84-27.306 40.96-31.574 247.468-41.814 476.17-43.52 228.692 1.706 425.822 11.946 467.636 43.52 11.946 8.532 26.452 14.506 34.132 27.306 42.658 55.466 49.494 133.974 51.2 314.036zM662.358 495.904c-11.58 140.898-86.51 223.906-220.556 223.906-122.458 0-218.722-110.432-218.722-287.88 0-178.212 87.73-289.396 232.734-289.396 115.766 0 196.798 85.298 209.588 226.95h-138.302c-5.48-52.548-27.414-92.914-73.72-92.914-73.108 0-86.51 72.354-86.51 149.27 0 105.868 30.46 159.932 81.032 159.932 45.082 0 73.718-32.75 77.976-89.868h136.48zM1140.026 495.904c-11.57 140.898-86.51 223.906-220.546 223.906-122.466 0-218.722-110.432-218.722-287.88 0-178.212 87.73-289.396 232.734-289.396 115.758 0 196.788 85.298 209.58 226.95h-138.304c-5.47-52.548-27.404-92.914-73.71-92.914-73.116 0-86.518 72.354-86.518 149.27 0 105.868 30.468 159.932 81.030 159.932 45.084 0 73.728-32.75 77.986-89.868h136.47z" horiz-adv-x="1374" />
  19 +<glyph unicode="&#xe009;" d="M128 832h768v-768h-768z" />
  20 +<glyph unicode="&#xe00a;" d="M384 832c0-70.692 57.308-128 128-128s128 57.308 128 128c0 70.692-57.308 128-128 128-70.692 0-128-57.308-128-128zM655.53 719.53c0-70.692 57.308-128 128-128s128 57.308 128 128c0 70.692-57.308 128-128 128-70.692 0-128-57.308-128-128zM832 448c0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64zM719.53 176.47c0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64zM448.002 64c0 0 0 0 0 0 0-35.346 28.654-64 64-64 35.346 0 64 28.654 64 64 0 0 0 0 0 0 0 0 0 0 0 0 0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64s0 0 0 0zM176.472 176.47c0 0 0 0 0 0 0-35.346 28.654-64 64-64 35.346 0 64 28.654 64 64 0 0 0 0 0 0 0 0 0 0 0 0 0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64s0 0 0 0zM144.472 719.53c0 0 0 0 0 0 0-53.019 42.981-96 96-96 53.019 0 96 42.981 96 96 0 0 0 0 0 0 0 0 0 0 0 0 0 53.019-42.981 96-96 96-53.019 0-96-42.981-96-96s0 0 0 0zM56 448c0-39.765 32.235-72 72-72s72 32.235 72 72c0 39.765-32.235 72-72 72-39.765 0-72-32.235-72-72z" />
  21 +<glyph unicode="&#xe00b;" d="M448 384v-416l-160 160-192-192-96 96 192 192-160 160zM1024 864l-192-192 160-160h-416v416l160-160 192 192z" />
  22 +<glyph unicode="&#xe00c;" d="M512 896c282.77 0 512-186.25 512-416 0-229.752-229.23-416-512-416-27.156 0-53.81 1.734-79.824 5.044-109.978-109.978-241.25-129.7-368.176-132.596v26.916c68.536 33.578 128 94.74 128 164.636 0 9.754-0.758 19.33-2.164 28.696-115.796 76.264-189.836 192.754-189.836 323.304 0 229.75 229.23 416 512 416z" />
  23 +<glyph unicode="&#xe00d;" d="M512 960c-282.77 0-512-229.23-512-512s229.23-512 512-512 512 229.23 512 512-229.23 512-512 512zM512 704c141.384 0 256-114.616 256-256s-114.616-256-256-256-256 114.616-256 256 114.616 256 256 256zM817.47 142.53c-81.594-81.594-190.080-126.53-305.47-126.53-115.392 0-223.876 44.936-305.47 126.53-81.594 81.594-126.53 190.078-126.53 305.47 0 115.39 44.936 223.876 126.53 305.47l67.882-67.882c0 0 0 0 0 0-131.006-131.006-131.006-344.17 0-475.176 63.462-63.462 147.838-98.412 237.588-98.412 89.748 0 174.124 34.95 237.588 98.412 131.006 131.006 131.006 344.168 0 475.176l67.882 67.882c81.594-81.594 126.53-190.080 126.53-305.47 0-115.392-44.936-223.876-126.53-305.47z" />
  24 +<glyph unicode="&#xe00e;" d="M864 256c-45.16 0-85.92-18.738-115.012-48.83l-431.004 215.502c1.314 8.252 2.016 16.706 2.016 25.328s-0.702 17.076-2.016 25.326l431.004 215.502c29.092-30.090 69.852-48.828 115.012-48.828 88.366 0 160 71.634 160 160s-71.634 160-160 160-160-71.634-160-160c0-8.622 0.704-17.076 2.016-25.326l-431.004-215.504c-29.092 30.090-69.852 48.83-115.012 48.83-88.366 0-160-71.636-160-160 0-88.368 71.634-160 160-160 45.16 0 85.92 18.738 115.012 48.828l431.004-215.502c-1.312-8.25-2.016-16.704-2.016-25.326 0-88.368 71.634-160 160-160s160 71.632 160 160c0 88.364-71.634 160-160 160z" />
  25 +<glyph unicode="&#xe01e;" d="M1024 448c-1.278 66.862-15.784 133.516-42.576 194.462-26.704 61-65.462 116.258-113.042 161.92-47.552 45.696-103.944 81.82-164.984 105.652-61.004 23.924-126.596 35.352-191.398 33.966-64.81-1.282-129.332-15.374-188.334-41.356-59.048-25.896-112.542-63.47-156.734-109.576-44.224-46.082-79.16-100.708-102.186-159.798-23.114-59.062-34.128-122.52-32.746-185.27 1.286-62.76 14.964-125.148 40.134-182.206 25.088-57.1 61.476-108.828 106.11-151.548 44.61-42.754 97.472-76.504 154.614-98.72 57.118-22.304 118.446-32.902 179.142-31.526 60.708 1.29 120.962 14.554 176.076 38.914 55.15 24.282 105.116 59.48 146.366 102.644 41.282 43.14 73.844 94.236 95.254 149.43 13.034 33.458 21.88 68.4 26.542 103.798 1.246-0.072 2.498-0.12 3.762-0.12 35.346 0 64 28.652 64 64 0 1.796-0.094 3.572-0.238 5.332h0.238zM922.306 278.052c-23.472-53.202-57.484-101.4-99.178-141.18-41.67-39.81-91-71.186-144.244-91.79-53.228-20.678-110.29-30.452-166.884-29.082-56.604 1.298-112.596 13.736-163.82 36.474-51.25 22.666-97.684 55.49-135.994 95.712-38.338 40.198-68.528 87.764-88.322 139.058-19.87 51.284-29.228 106.214-27.864 160.756 1.302 54.552 13.328 108.412 35.254 157.69 21.858 49.3 53.498 93.97 92.246 130.81 38.73 36.868 84.53 65.87 133.874 84.856 49.338 19.060 102.136 28.006 154.626 26.644 52.5-1.306 104.228-12.918 151.562-34.034 47.352-21.050 90.256-51.502 125.624-88.782 35.396-37.258 63.21-81.294 81.39-128.688 18.248-47.392 26.782-98.058 25.424-148.496h0.238c-0.144-1.76-0.238-3.536-0.238-5.332 0-33.012 24.992-60.174 57.086-63.624-6.224-34.822-16.53-68.818-30.78-100.992z" />
  26 +<glyph unicode="&#xe01f;" d="M512 960c-278.748 0-505.458-222.762-511.848-499.974 5.92 241.864 189.832 435.974 415.848 435.974 229.75 0 416-200.576 416-448 0-53.020 42.98-96 96-96 53.020 0 96 42.98 96 96 0 282.77-229.23 512-512 512zM512-64c278.748 0 505.458 222.762 511.848 499.974-5.92-241.864-189.832-435.974-415.848-435.974-229.75 0-416 200.576-416 448 0 53.020-42.98 96-96 96-53.020 0-96-42.98-96-96 0-282.77 229.23-512 512-512z" />
  27 +<glyph unicode="&#xe600;" d="M1024 351.906v192.188l-146.774 24.462c-5.958 18.132-13.222 35.668-21.694 52.5l86.454 121.034-135.896 135.898-120.826-86.304c-16.91 8.554-34.538 15.888-52.768 21.902l-24.402 146.414h-192.188l-24.402-146.416c-18.23-6.014-35.858-13.348-52.766-21.902l-120.828 86.304-135.898-135.898 86.454-121.036c-8.47-16.83-15.734-34.366-21.692-52.498l-146.774-24.46v-192.188l147.118-24.52c5.96-17.968 13.21-35.348 21.642-52.030l-86.748-121.448 135.898-135.896 121.654 86.894c16.602-8.35 33.89-15.528 51.764-21.434l24.578-147.472h192.188l24.578 147.474c17.874 5.906 35.162 13.084 51.766 21.432l121.652-86.892 135.896 135.896-86.744 121.446c8.432 16.682 15.678 34.062 21.64 52.032l147.118 24.518zM512 320c-70.692 0-128 57.306-128 128 0 70.692 57.308 128 128 128 70.694 0 128-57.308 128-128 0-70.694-57.306-128-128-128z" />
  28 +</font></defs></svg>
0 29 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/css/font/vjs.ttf 0 → 100644
No preview for this file type
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/css/font/vjs.woff 0 → 100644
No preview for this file type
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/css/video-js_4_12_11.css 0 → 100644
  1 +/*!
  2 +Video.js Default Styles (http://videojs.com)
  3 +Version 4.12.11
  4 +Create your own skin at http://designer.videojs.com
  5 +*/
  6 +/* SKIN
  7 +================================================================================
  8 +The main class name for all skin-specific styles. To make your own skin,
  9 +replace all occurrences of 'vjs-default-skin' with a new name. Then add your new
  10 +skin name to your video tag instead of the default skin.
  11 +e.g. <video class="video-js my-skin-name">
  12 +*/
  13 +.vjs-default-skin {
  14 + color: #cccccc;
  15 +}
  16 +/* Custom Icon Font
  17 +--------------------------------------------------------------------------------
  18 +The control icons are from a custom font. Each icon corresponds to a character
  19 +(e.g. "\e001"). Font icons allow for easy scaling and coloring of icons.
  20 +*/
  21 +@font-face {
  22 + font-family: 'VideoJS';
  23 + src: url('/font/vjs.eot');
  24 + src: url('/font/vjs.eot?#iefix') format('embedded-opentype'), url('font/vjs.woff') format('woff'), url('font/vjs.ttf') format('truetype'), url('font/vjs.svg#icomoon') format('svg');
  25 + font-weight: normal;
  26 + font-style: normal;
  27 +}
  28 +/* Base UI Component Classes
  29 +--------------------------------------------------------------------------------
  30 +*/
  31 +/* Slider - used for Volume bar and Seek bar */
  32 +.vjs-default-skin .vjs-slider {
  33 + /* Replace browser focus highlight with handle highlight */
  34 + outline: 0;
  35 + position: relative;
  36 + cursor: pointer;
  37 + padding: 0;
  38 + /* background-color-with-alpha */
  39 + background-color: #333333;
  40 + background-color: rgba(51, 51, 51, 0.9);
  41 +}
  42 +.vjs-default-skin .vjs-slider:focus {
  43 + /* box-shadow */
  44 + -webkit-box-shadow: 0 0 2em #ffffff;
  45 + -moz-box-shadow: 0 0 2em #ffffff;
  46 + box-shadow: 0 0 2em #ffffff;
  47 +}
  48 +.vjs-default-skin .vjs-slider-handle {
  49 + position: absolute;
  50 + /* Needed for IE6 */
  51 + left: 0;
  52 + top: 0;
  53 +}
  54 +.vjs-default-skin .vjs-slider-handle:before {
  55 + content: "\e009";
  56 + font-family: VideoJS;
  57 + font-size: 1em;
  58 + line-height: 1;
  59 + text-align: center;
  60 + text-shadow: 0em 0em 1em #fff;
  61 + position: absolute;
  62 + top: 0;
  63 + left: 0;
  64 + /* Rotate the square icon to make a diamond */
  65 + /* transform */
  66 + -webkit-transform: rotate(-45deg);
  67 + -moz-transform: rotate(-45deg);
  68 + -ms-transform: rotate(-45deg);
  69 + -o-transform: rotate(-45deg);
  70 + transform: rotate(-45deg);
  71 +}
  72 +/* Control Bar
  73 +--------------------------------------------------------------------------------
  74 +The default control bar that is a container for most of the controls.
  75 +*/
  76 +.vjs-default-skin .vjs-control-bar {
  77 + /* Start hidden */
  78 + display: none;
  79 + position: absolute;
  80 + /* Place control bar at the bottom of the player box/video.
  81 + If you want more margin below the control bar, add more height. */
  82 + bottom: 0;
  83 + /* Use left/right to stretch to 100% width of player div */
  84 + left: 0;
  85 + right: 0;
  86 + /* Height includes any margin you want above or below control items
  87 + height: 3.0em;*/
  88 + min-height: 3.0em;
  89 + /* background-color-with-alpha */
  90 + background-color: #07141e;
  91 + background-color: rgba(7, 20, 30, 0.7);
  92 +}
  93 +/* Show the control bar only once the video has started playing */
  94 +.vjs-default-skin.vjs-has-started .vjs-control-bar {
  95 + display: block;
  96 + /* Visibility needed to make sure things hide in older browsers too. */
  97 +
  98 + visibility: visible;
  99 + opacity: 1;
  100 + /* transition */
  101 + -webkit-transition: visibility 0.1s, opacity 0.1s;
  102 + -moz-transition: visibility 0.1s, opacity 0.1s;
  103 + -o-transition: visibility 0.1s, opacity 0.1s;
  104 + transition: visibility 0.1s, opacity 0.1s;
  105 +}
  106 +/* Hide the control bar when the video is playing and the user is inactive */
  107 +.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  108 + display: block;
  109 + visibility: hidden;
  110 + opacity: 0;
  111 + /* transition */
  112 + -webkit-transition: visibility 1s, opacity 1s;
  113 + -moz-transition: visibility 1s, opacity 1s;
  114 + -o-transition: visibility 1s, opacity 1s;
  115 + transition: visibility 1s, opacity 1s;
  116 +}
  117 +.vjs-default-skin.vjs-controls-disabled .vjs-control-bar {
  118 + display: none;
  119 +}
  120 +.vjs-default-skin.vjs-using-native-controls .vjs-control-bar {
  121 + display: none;
  122 +}
  123 +/* The control bar shouldn't show after an error */
  124 +.vjs-default-skin.vjs-error .vjs-control-bar {
  125 + display: none;
  126 +}
  127 +/* Don't hide the control bar if it's audio */
  128 +.vjs-audio.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  129 + opacity: 1;
  130 + visibility: visible;
  131 +}
  132 +/* IE8 is flakey with fonts, and you have to change the actual content to force
  133 +fonts to show/hide properly.
  134 + - "\9" IE8 hack didn't work for this
  135 + - Found in XP IE8 from http://modern.ie. Does not show up in "IE8 mode" in IE9
  136 +*/
  137 +@media \0screen {
  138 + .vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before {
  139 + content: "";
  140 + }
  141 +}
  142 +.vjs-default-skin .vjs-control.vjs-HD-button {
  143 + display: block;
  144 + font-size: 1.5em;
  145 + line-height: 2;
  146 + position: relative;
  147 + top: 0;
  148 + float:right;
  149 + left: 10px;
  150 + height: 100%;
  151 + text-align: center;
  152 + cursor: pointer;
  153 + }
  154 +.vjs-default-skin .vjs-control.vjs-AD-button {
  155 + display: block;
  156 + font-size: 1.5em;
  157 + line-height: 2;
  158 + position: relative;
  159 + top: 0;
  160 + left: 10px;
  161 + height: 100%;
  162 + text-align: center;
  163 + cursor: pointer;
  164 + width: 6em;
  165 + }
  166 +
  167 +.vjs-default-skin .vjs-control.vjs-HD2-button {
  168 + display: block;
  169 + font-size: 1.5em;
  170 + line-height: 2;
  171 + position: relative;
  172 + top: 0;
  173 + float:right;
  174 + left: 10px;
  175 + height: 100%;
  176 + text-align: center;
  177 + cursor: pointer;
  178 + }
  179 + .vjs-default-skin .vjs-control.vjs-HD22-button {
  180 + display: block;
  181 + font-size: 1.5em;
  182 + line-height: 2;
  183 + position: relative;
  184 + top: 0;
  185 + float:right;
  186 + left: 10px;
  187 + height: 100%;
  188 + text-align: center;
  189 + cursor: pointer;
  190 + }
  191 + .vjs-default-skin .vjs-control.vjs-HD3-button {
  192 + display: block;
  193 + font-size: 1.5em;
  194 + line-height: 2;
  195 + position: relative;
  196 + top: 0;
  197 + float:right;
  198 + left: 10px;
  199 + height: 100%;
  200 + text-align: center;
  201 + cursor: pointer;
  202 + }
  203 + .vjs-default-skin .vjs-control.vjs-HD33-button {
  204 + display: block;
  205 + font-size: 1.5em;
  206 + line-height: 2;
  207 + position: relative;
  208 + top: 0;
  209 + float:right;
  210 + left: 10px;
  211 + height: 100%;
  212 + text-align: center;
  213 + cursor: pointer;
  214 + }
  215 +.vjs-default-skin .vjs-control.vjs-HD4-button {
  216 + display: block;
  217 + font-size: 1.5em;
  218 + line-height: 2;
  219 + position: relative;
  220 + top: 0;
  221 + float:right;
  222 + left: 10px;
  223 + height: 100%;
  224 + text-align: center;
  225 + cursor: pointer;
  226 + }
  227 + .vjs-default-skin .vjs-control.vjs-HD44-button {
  228 + display: block;
  229 + font-size: 1.5em;
  230 + line-height: 2;
  231 + position: relative;
  232 + top: 0;
  233 + float:right;
  234 + left: 10px;
  235 + height: 100%;
  236 + text-align: center;
  237 + cursor: pointer;
  238 + }
  239 + .vjs-default-skin .vjs-control.vjs-HD5-button {
  240 + display: block;
  241 + font-size: 1.5em;
  242 + line-height: 2;
  243 + position: relative;
  244 + top: 0;
  245 + float:right;
  246 + left: 10px;
  247 + height: 100%;
  248 + text-align: center;
  249 + cursor: pointer;
  250 + }
  251 + .vjs-default-skin .vjs-control.vjs-HD55-button {
  252 + display: block;
  253 + font-size: 1.5em;
  254 + line-height: 2;
  255 + position: relative;
  256 + top: 0;
  257 + float:right;
  258 + left: 10px;
  259 + height: 100%;
  260 + text-align: center;
  261 + cursor: pointer;
  262 + }
  263 +.loadADVideo {
  264 + background: white;
  265 + color:#819139;
  266 + padding:1px 3px;
  267 + margin-right: 0.7em;
  268 + font-weight:normal;
  269 + font-size: 0.80em;
  270 + border:solid 1px #c0c0c0;
  271 + margin-bottom:5px;
  272 +}
  273 +.loadADVideo.active {
  274 + background-color:#819139 !important;
  275 + border-color:#444444 !important;
  276 + font-weight:bold;
  277 +}
  278 +.loadADVideo.active span {
  279 + color: #ffffff !important;
  280 + font-weight:bold;
  281 +}
  282 +
  283 +.loadNoADVideo {
  284 + background: white;
  285 + color:#819139;
  286 + padding:1px 3px;
  287 + margin-right: 0.7em;
  288 + font-weight:normal;
  289 + font-size: 0.80em;
  290 + border:solid 1px #c0c0c0;
  291 + margin-bottom:5px;
  292 +}
  293 +.loadNoADVideo.active {
  294 + background-color:#819139 !important;
  295 + border-color:#444444 !important;
  296 + font-weight:bold;
  297 +}
  298 +.loadNoADVideo.active span {
  299 + color: #ffffff !important;
  300 + font-weight:bold;
  301 +}
  302 +
  303 +/* General styles for individual controls. */
  304 +.vjs-default-skin .vjs-control {
  305 + outline: none;
  306 + position: relative;
  307 + float: left;
  308 + text-align: center;
  309 + margin: 0;
  310 + padding: 0;
  311 + height: 3.0em;
  312 + width: 4em;
  313 +}
  314 +
  315 +/*@media only screen and (min-width: 460px) and (max-width: 525px) {*/
  316 + @media only screen and (min-width: 426px) and (max-width: 525px) {
  317 + .vjs-default-skin .vjs-control.vjs-HD4-button {width:1.6em; left:-4px;}
  318 + .vjs-default-skin .vjs-play-control {width: 3em !important;}
  319 + .vjs-default-skin .vjs-fullscreen-control{width:3.4em !important;}
  320 + .vjs-default-skin .vjs-fullscreen-control{width:3.4em !important;}
  321 + .vjs-default-skin .vjs-mute-control {width:2em !important;}
  322 + .vjs-captions-button.vjs-menu-button.vjs-control {width: 3.5em;}
  323 +}
  324 +
  325 +@media only screen and (min-width: 352px) and (max-width: 425px) {
  326 + .vjs-default-skin .vjs-control.vjs-HD4-button { width: 1.6em; left:-4px;}
  327 + .vjs-fullscreen-control {width:2.3em !important;}
  328 + .vjs-mute-control .vjs-control {width:2em !important;}
  329 + .vjs-default-skin .vjs-control { width: 2.5em;}
  330 + .vjs-default-skin .vjs-play-control {width: 2em !important;}
  331 +}
  332 +
  333 +@media only screen and (min-width: 252px) and (max-width: 352px) {
  334 + .vjs-default-skin .vjs-control.vjs-HD4-button { width: 1.5em; left:-4px;}
  335 + .vjs-fullscreen-control {width:2em !important;}
  336 + .vjs-mute-control .vjs-control {width:2em !important;}
  337 + .vjs-default-skin .vjs-control { width: 2em;}
  338 + .vjs-default-skin .vjs-play-control {width: 2em !important;}
  339 +}
  340 +/*
  341 +@media only screen and (max-width: 390px) {
  342 + .vjs-default-skin .vjs-control { width: 2em;}
  343 +}
  344 +*/
  345 +/* Font button icons */
  346 +.vjs-default-skin .vjs-control:before {
  347 + font-family: VideoJS;
  348 + font-size: 1.5em;
  349 + line-height: 2;
  350 + position: absolute;
  351 + top: 0;
  352 + left: 0;
  353 + width: 100%;
  354 + height: 100%;
  355 + text-align: center;
  356 + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  357 +}
  358 +/* Replacement for focus outline */
  359 +.vjs-default-skin .vjs-control:focus:before,
  360 +.vjs-default-skin .vjs-control:hover:before {
  361 + text-shadow: 0em 0em 1em #ffffff;
  362 +}
  363 +.vjs-default-skin .vjs-control:focus {
  364 + /* outline: 0; */
  365 + /* keyboard-only users cannot see the focus on several of the UI elements when
  366 + this is set to 0 */
  367 +
  368 +}
  369 +/* Hide control text visually, but have it available for screenreaders */
  370 +.vjs-default-skin .vjs-control-text {
  371 + /* hide-visually */
  372 + border: 0;
  373 + clip: rect(0 0 0 0);
  374 + height: 1px;
  375 + margin: -1px;
  376 + overflow: hidden;
  377 + padding: 0;
  378 + position: absolute;
  379 + width: 1px;
  380 +}
  381 +/* Play/Pause
  382 +--------------------------------------------------------------------------------
  383 +*/
  384 +.vjs-default-skin .vjs-play-control {
  385 + width: 5em;
  386 + cursor: pointer;
  387 +}
  388 +.vjs-default-skin .vjs-play-control:before {
  389 + content: "\e001";
  390 +}
  391 +.vjs-default-skin.vjs-playing .vjs-play-control:before {
  392 + content: "\e002";
  393 +}
  394 +/* Playback toggle
  395 +--------------------------------------------------------------------------------
  396 +*/
  397 +.vjs-default-skin .vjs-playback-rate .vjs-playback-rate-value {
  398 + font-size: 1.5em;
  399 + line-height: 2;
  400 + position: absolute;
  401 + top: 0;
  402 + left: 0;
  403 + width: 100%;
  404 + height: 100%;
  405 + text-align: center;
  406 + text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
  407 +}
  408 +.vjs-default-skin .vjs-playback-rate.vjs-menu-button .vjs-menu .vjs-menu-content {
  409 + width: 4em;
  410 + left: -2em;
  411 + list-style: none;
  412 +}
  413 +/* Volume/Mute
  414 +-------------------------------------------------------------------------------- */
  415 +.vjs-default-skin .vjs-mute-control,
  416 +.vjs-default-skin .vjs-volume-menu-button {
  417 + cursor: pointer;
  418 + float: right;
  419 +}
  420 +.vjs-default-skin .vjs-mute-control:before,
  421 +.vjs-default-skin .vjs-volume-menu-button:before {
  422 + content: "\e006";
  423 +}
  424 +.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,
  425 +.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before {
  426 + content: "\e003";
  427 +}
  428 +.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,
  429 +.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before {
  430 + content: "\e004";
  431 +}
  432 +.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,
  433 +.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before {
  434 + content: "\e005";
  435 +}
  436 +.vjs-default-skin .vjs-volume-control {
  437 + width: 5em;
  438 + float: right;
  439 +}
  440 +.vjs-default-skin .vjs-volume-bar {
  441 + width: 5em;
  442 + height: 0.6em;
  443 + margin: 1.1em auto 0;
  444 +}
  445 +.vjs-default-skin .vjs-volume-level {
  446 + position: absolute;
  447 + top: 0;
  448 + left: 0;
  449 + height: 0.5em;
  450 + /* assuming volume starts at 1.0 */
  451 +
  452 + width: 100%;
  453 + background: #819139 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
  454 +}
  455 +.vjs-default-skin .vjs-volume-bar .vjs-volume-handle {
  456 + width: 0.5em;
  457 + height: 0.5em;
  458 + /* Assumes volume starts at 1.0. If you change the size of the
  459 + handle relative to the volume bar, you'll need to update this value
  460 + too. */
  461 +
  462 + left: 4.5em;
  463 +}
  464 +.vjs-default-skin .vjs-volume-handle:before {
  465 + font-size: 0.9em;
  466 + top: -0.2em;
  467 + left: -0.2em;
  468 + width: 1em;
  469 + height: 1em;
  470 +}
  471 +/* The volume menu button is like menu buttons (captions/subtitles) but works
  472 + a little differently. It needs to be possible to tab to the volume slider
  473 + without hitting space bar on the menu button. To do this we're not using
  474 + display:none to hide the slider menu by default, and instead setting the
  475 + width and height to zero. */
  476 +.vjs-default-skin .vjs-volume-menu-button .vjs-menu {
  477 + display: block;
  478 + width: 0;
  479 + height: 0;
  480 + border-top-color: transparent;
  481 +}
  482 +.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content {
  483 + height: 0;
  484 + width: 0;
  485 +}
  486 +.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu,
  487 +.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing {
  488 + border-top-color: rgba(7, 40, 50, 0.5);
  489 + /* Same as ul background */
  490 +
  491 +}
  492 +.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu .vjs-menu-content,
  493 +.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing .vjs-menu-content {
  494 + height: 2.9em;
  495 + width: 10em;
  496 +}
  497 +/* Progress
  498 +--------------------------------------------------------------------------------
  499 +*/
  500 +.vjs-default-skin .vjs-progress-control {
  501 + position: absolute;
  502 + left: 0;
  503 + right: 0;
  504 + width: auto;
  505 + font-size: 0.3em;
  506 + height: 1em;
  507 + /* Set above the rest of the controls. */
  508 + top: -1em;
  509 + /* Shrink the bar slower than it grows. */
  510 + /* transition */
  511 + -webkit-transition: all 0.4s;
  512 + -moz-transition: all 0.4s;
  513 + -o-transition: all 0.4s;
  514 + transition: all 0.4s;
  515 +}
  516 +/* On hover, make the progress bar grow to something that's more clickable.
  517 + This simply changes the overall font for the progress bar, and this
  518 + updates both the em-based widths and heights, as wells as the icon font */
  519 +.vjs-default-skin:hover .vjs-progress-control {
  520 + font-size: .9em;
  521 + /* Even though we're not changing the top/height, we need to include them in
  522 + the transition so they're handled correctly. */
  523 +
  524 + /* transition */
  525 + -webkit-transition: all 0.2s;
  526 + -moz-transition: all 0.2s;
  527 + -o-transition: all 0.2s;
  528 + transition: all 0.2s;
  529 +}
  530 +/* Box containing play and load progresses. Also acts as seek scrubber. */
  531 +.vjs-default-skin .vjs-progress-holder {
  532 + height: 100%;
  533 +}
  534 +/* Progress Bars */
  535 +.vjs-default-skin .vjs-progress-holder .vjs-play-progress,
  536 +.vjs-default-skin .vjs-progress-holder .vjs-load-progress,
  537 +.vjs-default-skin .vjs-progress-holder .vjs-load-progress div {
  538 + position: absolute;
  539 + display: block;
  540 + height: 100%;
  541 + margin: 0;
  542 + padding: 0;
  543 + /* updated by javascript during playback */
  544 +
  545 + width: 0;
  546 + /* Needed for IE6 */
  547 + left: 0;
  548 + top: 0;
  549 +}
  550 +.vjs-default-skin .vjs-play-progress {
  551 + /*
  552 + Using a data URI to create the white diagonal lines with a transparent
  553 + background. Surprisingly works in IE8.
  554 + Created using http://www.patternify.com
  555 + Changing the first color value will change the bar color.
  556 + Also using a paralax effect to make the lines move backwards.
  557 + The -50% left position makes that happen.
  558 + */
  559 +
  560 + background: #819139 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
  561 +}
  562 +.vjs-default-skin .vjs-load-progress {
  563 + background: #646464 /* IE8- Fallback */;
  564 + background: rgba(255, 255, 255, 0.2);
  565 +}
  566 +/* there are child elements of the load progress bar that represent the
  567 + specific time ranges that have been buffered */
  568 +.vjs-default-skin .vjs-load-progress div {
  569 + background: #787878 /* IE8- Fallback */;
  570 + background: rgba(255, 255, 255, 0.1);
  571 +}
  572 +.vjs-default-skin .vjs-seek-handle {
  573 + width: 1.5em;
  574 + height: 100%;
  575 +}
  576 +.vjs-default-skin .vjs-seek-handle:before {
  577 + padding-top: 0.1em /* Minor adjustment */;
  578 +}
  579 +/* Live Mode
  580 +--------------------------------------------------------------------------------
  581 +*/
  582 +.vjs-default-skin.vjs-live .vjs-time-controls,
  583 +.vjs-default-skin.vjs-live .vjs-time-divider,
  584 +.vjs-default-skin.vjs-live .vjs-progress-control {
  585 + display: none;
  586 +}
  587 +.vjs-default-skin.vjs-live .vjs-live-display {
  588 + display: block;
  589 +}
  590 +/* Live Display
  591 +--------------------------------------------------------------------------------
  592 +*/
  593 +.vjs-default-skin .vjs-live-display {
  594 + display: none;
  595 + font-size: 1em;
  596 + line-height: 3em;
  597 +}
  598 +/* Time Display
  599 +--------------------------------------------------------------------------------
  600 +*/
  601 +.vjs-default-skin .vjs-time-controls {
  602 + font-size: 1em;
  603 + /* Align vertically by making the line height the same as the control bar */
  604 + line-height: 3em;
  605 +}
  606 +.vjs-default-skin .vjs-current-time {
  607 + float: left;
  608 +}
  609 +.vjs-default-skin .vjs-duration {
  610 + float: left;
  611 +}
  612 +/* Remaining time is in the HTML, but not included in default design */
  613 +.vjs-default-skin .vjs-remaining-time {
  614 + display: none;
  615 + float: left;
  616 +}
  617 +.vjs-time-divider {
  618 + float: left;
  619 + line-height: 3em;
  620 +}
  621 +/* Fullscreen
  622 +--------------------------------------------------------------------------------
  623 +*/
  624 +.vjs-default-skin .vjs-fullscreen-control {
  625 + width: 3.8em;
  626 + cursor: pointer;
  627 + float: right;
  628 +}
  629 +.vjs-default-skin .vjs-fullscreen-control:before {
  630 + content: "\e000";
  631 +}
  632 +/* Switch to the exit icon when the player is in fullscreen */
  633 +.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before {
  634 + content: "\e00b";
  635 +}
  636 +/* Big Play Button (play button at start)
  637 +--------------------------------------------------------------------------------
  638 +Positioning of the play button in the center or other corners can be done more
  639 +easily in the skin designer. http://designer.videojs.com/
  640 +*/
  641 +.vjs-default-skin .vjs-big-play-button {
  642 + left: 0.5em;
  643 + top: 0.5em;
  644 + font-size: 3em;
  645 + display: block;
  646 + z-index: 2;
  647 + position: absolute;
  648 + width: 2.6em;
  649 + height: 2.6em;
  650 + text-align: center;
  651 + vertical-align: middle;
  652 + cursor: pointer;
  653 + opacity: 0.95;
  654 + /* Need a slightly gray bg so it can be seen on black backgrounds */
  655 + /* background-color-with-alpha */
  656 + background-color: #819139;
  657 + /*background-color: rgba(7, 20, 30, 0.7);*/
  658 + background : linear-gradient(to bottom, #aac247 0%,#889c34 100%);
  659 + border: 0.1em solid #fff;
  660 + /* border-radius */
  661 + -webkit-border-radius: 0.8em;
  662 + -moz-border-radius: 0.8em;
  663 + border-radius: 0.8em;
  664 + /* box-shadow */
  665 + -webkit-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  666 + -moz-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  667 + box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  668 + /* transition */
  669 + -webkit-transition: all 0.4s;
  670 + -moz-transition: all 0.4s;
  671 + -o-transition: all 0.4s;
  672 + transition: all 0.4s;
  673 +}
  674 +
  675 +.vjs-default-skin div.vjs-big-play-button span {
  676 + position: absolute; top: 50%; left: 50%;
  677 + display: block; width: 35px; height: 42px;
  678 + margin: -20px 0 0 -15px; /* Using negative margin to center image. */
  679 + background: url('../img/video-js.png') -100px 0;
  680 + }
  681 +
  682 +.vjs-default-skin.vjs-has-started.vjs-ended.vjs-paused .vjs-big-play-button{
  683 + display: block;
  684 +}
  685 +.vjs-default-skin.vjs-has-started.vjs-ended.vjs-paused .vjs-poster{
  686 + display: block;
  687 +}
  688 +.vjs-default-skin.vjs-has-started.vjs-ended.vjs-paused .vjs-control-bar {
  689 + display: none;
  690 +}
  691 +/* Optionally center */
  692 +.vjs-default-skin.vjs-big-play-centered .vjs-big-play-button {
  693 + /* Center it horizontally */
  694 + left: 50%;
  695 + margin-left: -1.5em;
  696 + /* Center it vertically */
  697 + top: 50%;
  698 + margin-top: -1.4000000000000001em;
  699 +}
  700 +/* Hide if controls are disabled */
  701 +.vjs-default-skin.vjs-controls-disabled .vjs-big-play-button {
  702 + display: none;
  703 +}
  704 +/* Hide when video starts playing */
  705 +.vjs-default-skin.vjs-has-started .vjs-big-play-button {
  706 + display: none;
  707 +}
  708 +/* Hide on mobile devices. Remove when we stop using native controls
  709 + by default on mobile */
  710 +.vjs-default-skin.vjs-using-native-controls .vjs-big-play-button {
  711 + display: none;
  712 +}
  713 +.vjs-default-skin:hover .vjs-big-play-button,
  714 +.vjs-default-skin .vjs-big-play-button:focus {
  715 + outline: 0;
  716 + border-color: #fff;
  717 + /* IE8 needs a non-glow hover state */
  718 + background-color: #819139;
  719 + /*background-color: rgba(50, 50, 50, 0.75);*/
  720 + /* box-shadow */
  721 + -webkit-box-shadow: 0 0 3em #ffffff;
  722 + -moz-box-shadow: 0 0 3em #ffffff;
  723 + box-shadow: 0 0 3em #ffffff;
  724 + /* transition */
  725 + -webkit-transition: all 0s;
  726 + -moz-transition: all 0s;
  727 + -o-transition: all 0s;
  728 + transition: all 0s;
  729 +}
  730 +.vjs-default-skin .vjs-big-play-button:before {
  731 + content: "\e001";
  732 + font-family: VideoJS;
  733 + /* In order to center the play icon vertically we need to set the line height
  734 + to the same as the button height */
  735 +
  736 + line-height: 2.6em;
  737 + text-shadow: 0.05em 0.05em 0.1em #000;
  738 + text-align: center /* Needed for IE8 */;
  739 + position: absolute;
  740 + left: 0;
  741 + width: 100%;
  742 + height: 100%;
  743 +}
  744 +.vjs-error .vjs-big-play-button {
  745 + display: none;
  746 +}
  747 +/* Error Display
  748 +--------------------------------------------------------------------------------
  749 +*/
  750 +.vjs-error-display {
  751 + display: none;
  752 +}
  753 +.vjs-error .vjs-error-display {
  754 + display: block;
  755 + position: absolute;
  756 + left: 0;
  757 + top: 0;
  758 + width: 100%;
  759 + height: 100%;
  760 +}
  761 +.vjs-error .vjs-error-display:before {
  762 + content: 'X';
  763 + font-family: Arial;
  764 + font-size: 4em;
  765 + color: #666666;
  766 + /* In order to center the play icon vertically we need to set the line height
  767 + to the same as the button height */
  768 +
  769 + line-height: 1;
  770 + text-shadow: 0.05em 0.05em 0.1em #000;
  771 + text-align: center /* Needed for IE8 */;
  772 + vertical-align: middle;
  773 + position: absolute;
  774 + left: 0;
  775 + top: 50%;
  776 + margin-top: -0.5em;
  777 + width: 100%;
  778 +}
  779 +.vjs-error-display div {
  780 + position: absolute;
  781 + bottom: 1em;
  782 + right: 0;
  783 + left: 0;
  784 + font-size: 1.4em;
  785 + text-align: center;
  786 + padding: 3px;
  787 + background: #000000;
  788 + background: rgba(0, 0, 0, 0.5);
  789 +}
  790 +.vjs-error-display a,
  791 +.vjs-error-display a:visited {
  792 + color: #F4A460;
  793 +}
  794 +/* Loading Spinner
  795 +--------------------------------------------------------------------------------
  796 +*/
  797 +.vjs-loading-spinner {
  798 + /* Should be hidden by default */
  799 + display: none;
  800 + position: absolute;
  801 + top: 50%;
  802 + left: 50%;
  803 + font-size: 4em;
  804 + line-height: 1;
  805 + width: 1em;
  806 + height: 1em;
  807 + margin-left: -0.5em;
  808 + margin-top: -0.5em;
  809 + opacity: 0.75;
  810 +}
  811 +/* Show the spinner when waiting for data and seeking to a new time */
  812 +.vjs-waiting .vjs-loading-spinner,
  813 +.vjs-seeking .vjs-loading-spinner {
  814 + display: block;
  815 + /* only animate when showing because it can be processor heavy */
  816 + /* animation */
  817 + -webkit-animation: spin 1.5s infinite linear;
  818 + -moz-animation: spin 1.5s infinite linear;
  819 + -o-animation: spin 1.5s infinite linear;
  820 + animation: spin 1.5s infinite linear;
  821 +}
  822 +/* Errors are unrecoverable without user interaction so hide the spinner */
  823 +.vjs-error .vjs-loading-spinner {
  824 + display: none;
  825 + /* ensure animation doesn't continue while hidden */
  826 + /* animation */
  827 + -webkit-animation: none;
  828 + -moz-animation: none;
  829 + -o-animation: none;
  830 + animation: none;
  831 +}
  832 +.vjs-default-skin .vjs-loading-spinner:before {
  833 + content: "\e01e";
  834 + font-family: VideoJS;
  835 + position: absolute;
  836 + top: 0;
  837 + left: 0;
  838 + width: 1em;
  839 + height: 1em;
  840 + text-align: center;
  841 + text-shadow: 0em 0em 0.1em #000;
  842 +}
  843 +@-moz-keyframes spin {
  844 + 0% {
  845 + -moz-transform: rotate(0deg);
  846 + }
  847 + 100% {
  848 + -moz-transform: rotate(359deg);
  849 + }
  850 +}
  851 +@-webkit-keyframes spin {
  852 + 0% {
  853 + -webkit-transform: rotate(0deg);
  854 + }
  855 + 100% {
  856 + -webkit-transform: rotate(359deg);
  857 + }
  858 +}
  859 +@-o-keyframes spin {
  860 + 0% {
  861 + -o-transform: rotate(0deg);
  862 + }
  863 + 100% {
  864 + -o-transform: rotate(359deg);
  865 + }
  866 +}
  867 +@keyframes spin {
  868 + 0% {
  869 + transform: rotate(0deg);
  870 + }
  871 + 100% {
  872 + transform: rotate(359deg);
  873 + }
  874 +}
  875 +/* Menu Buttons (Captions/Subtitles/etc.)
  876 +--------------------------------------------------------------------------------
  877 +*/
  878 +.vjs-default-skin .vjs-menu-button {
  879 + float: right;
  880 + cursor: pointer;
  881 +}
  882 +.vjs-default-skin .vjs-menu {
  883 + display: none;
  884 + position: absolute;
  885 + bottom: 0;
  886 + left: 0em;
  887 + /* (Width of vjs-menu - width of button) / 2 */
  888 +
  889 + width: 0em;
  890 + height: 0em;
  891 + margin-bottom: 3em;
  892 + border-left: 2em solid transparent;
  893 + border-right: 2em solid transparent;
  894 + border-top: 1.55em solid #000000;
  895 + /* Same width top as ul bottom */
  896 +
  897 + border-top-color: rgba(7, 40, 50, 0.5);
  898 + /* Same as ul background */
  899 +
  900 +}
  901 +/* Button Pop-up Menu */
  902 +.vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content {
  903 + display: block;
  904 + padding: 0;
  905 + margin: 0;
  906 + position: absolute;
  907 + width: 10em;
  908 + bottom: 1.5em;
  909 + /* Same bottom as vjs-menu border-top */
  910 +
  911 + max-height: 15em;
  912 + overflow: auto;
  913 + left: -5em;
  914 + /* Width of menu - width of button / 2 */
  915 +
  916 + /* background-color-with-alpha */
  917 + background-color: #07141e;
  918 + background-color: rgba(7, 20, 30, 0.8);
  919 + /* box-shadow */
  920 + -webkit-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
  921 + -moz-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
  922 + box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
  923 +}
  924 +.vjs-default-skin .vjs-menu-button:hover .vjs-control-content .vjs-menu,
  925 +.vjs-default-skin .vjs-control-content .vjs-menu.vjs-lock-showing {
  926 + display: block;
  927 +}
  928 +/* prevent menus from opening while scrubbing (FF, IE) */
  929 +.vjs-default-skin.vjs-scrubbing .vjs-menu-button:hover .vjs-control-content .vjs-menu {
  930 + display: none;
  931 +}
  932 +.vjs-default-skin .vjs-menu-button ul li {
  933 + list-style: none;
  934 + margin: 0;
  935 + padding: 0.3em 0 0.3em 0;
  936 + line-height: 1.4em;
  937 + font-size: 1.2em;
  938 + text-align: center;
  939 + text-transform: lowercase;
  940 + float: none;
  941 + color: #fff;
  942 +}
  943 +.vjs-default-skin .vjs-menu-button ul li.vjs-selected {
  944 + background-color: #000;
  945 +}
  946 +.vjs-default-skin .vjs-menu-button ul li:focus,
  947 +.vjs-default-skin .vjs-menu-button ul li:hover,
  948 +.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,
  949 +.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover {
  950 + outline: 0;
  951 + color: #111;
  952 + /* background-color-with-alpha */
  953 + background-color: #ffffff;
  954 + background-color: rgba(255, 255, 255, 0.75);
  955 + /* box-shadow */
  956 + -webkit-box-shadow: 0 0 1em #ffffff;
  957 + -moz-box-shadow: 0 0 1em #ffffff;
  958 + box-shadow: 0 0 1em #ffffff;
  959 + width: 100%;
  960 +}
  961 +.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title {
  962 + text-align: center;
  963 + text-transform: uppercase;
  964 + font-size: 1em;
  965 + line-height: 2em;
  966 + padding: 0;
  967 + margin: 0 0 0.3em 0;
  968 + font-weight: bold;
  969 + cursor: default;
  970 +}
  971 +/* Subtitles Button */
  972 +.vjs-default-skin .vjs-subtitles-button:before {
  973 + content: "\e00c";
  974 +}
  975 +/* Captions Button */
  976 +.vjs-default-skin .vjs-captions-button:before {
  977 + content: "\e008";
  978 +}
  979 +/* Chapters Button */
  980 +.vjs-default-skin .vjs-chapters-button:before {
  981 + content: "\e00c";
  982 +}
  983 +.vjs-default-skin .vjs-chapters-button.vjs-menu-button .vjs-menu .vjs-menu-content {
  984 + width: 24em;
  985 + left: -12em;
  986 +}
  987 +/* Replacement for focus outline */
  988 +.vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before,
  989 +.vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before {
  990 + /* box-shadow */
  991 + -webkit-box-shadow: 0 0 1em #ffffff;
  992 + -moz-box-shadow: 0 0 1em #ffffff;
  993 + box-shadow: 0 0 1em #ffffff;
  994 +}
  995 +/*
  996 +REQUIRED STYLES (be careful overriding)
  997 +================================================================================
  998 +When loading the player, the video tag is replaced with a DIV,
  999 +that will hold the video tag or object tag for other playback methods.
  1000 +The div contains the video playback element (Flash or HTML5) and controls,
  1001 +and sets the width and height of the video.
  1002 +
  1003 +** If you want to add some kind of border/padding (e.g. a frame), or special
  1004 +positioning, use another containing element. Otherwise you risk messing up
  1005 +control positioning and full window mode. **
  1006 +*/
  1007 +.video-js {
  1008 + background-color: #000;
  1009 + position: relative;
  1010 + /*padding: 0px 0px 0px 2px;*/ /*Bug #19799*/
  1011 + /* Start with 10px for base font size so other dimensions can be em based and
  1012 + easily calculable. */
  1013 +
  1014 + font-size: 10px;
  1015 + /* Allow poster to be vertically aligned. */
  1016 +
  1017 + vertical-align: middle;
  1018 + /* display: table-cell; */
  1019 + /*This works in Safari but not Firefox.*/
  1020 +
  1021 + /* Provide some basic defaults for fonts */
  1022 +
  1023 + font-weight: normal;
  1024 + font-style: normal;
  1025 + /* Avoiding helvetica: issue #376 */
  1026 +
  1027 + font-family: Arial, sans-serif;
  1028 + /* Turn off user selection (text highlighting) by default.
  1029 + The majority of player components will not be text blocks.
  1030 + Text areas will need to turn user selection back on. */
  1031 +
  1032 + /* user-select */
  1033 + -webkit-user-select: none;
  1034 + -moz-user-select: none;
  1035 + -ms-user-select: none;
  1036 + user-select: none;
  1037 +}
  1038 +/* Playback technology elements expand to the width/height of the containing div
  1039 + <video> or <object> */
  1040 +.video-js .vjs-tech {
  1041 + position: absolute;
  1042 + top: 0;
  1043 + left: 0;
  1044 + width: 100%;
  1045 + height: 100%;
  1046 +}
  1047 +/* Fix for Firefox 9 fullscreen (only if it is enabled). Not needed when
  1048 + checking fullScreenEnabled. */
  1049 +.video-js:-moz-full-screen {
  1050 + position: absolute;
  1051 +}
  1052 +/* Fullscreen Styles */
  1053 +body.vjs-full-window {
  1054 + padding: 0;
  1055 + margin: 0;
  1056 + height: 100%;
  1057 + /* Fix for IE6 full-window. http://www.cssplay.co.uk/layouts/fixed.html */
  1058 + overflow-y: auto;
  1059 +}
  1060 +.video-js.vjs-fullscreen {
  1061 + position: fixed;
  1062 + overflow: hidden;
  1063 + z-index: 1000;
  1064 + left: 0;
  1065 + top: 0;
  1066 + bottom: 0;
  1067 + right: 0;
  1068 + width: 100% !important;
  1069 + height: 100% !important;
  1070 + /* IE6 full-window (underscore hack) */
  1071 + _position: absolute;
  1072 +}
  1073 +.video-js:-webkit-full-screen {
  1074 + width: 100% !important;
  1075 + height: 100% !important;
  1076 +}
  1077 +.video-js.vjs-fullscreen.vjs-user-inactive {
  1078 + cursor: none;
  1079 +}
  1080 +/* Poster Styles */
  1081 +.vjs-poster {
  1082 + background-repeat: no-repeat;
  1083 + background-position: 50% 50%;
  1084 + background-size: contain;
  1085 + /*background-color: #000000;*/
  1086 + cursor: pointer;
  1087 + margin: 0;
  1088 + padding: 0px 0px 0px 0px;
  1089 + position: absolute;
  1090 + top: 0;
  1091 + right: 0;
  1092 + bottom: 0;
  1093 + left: 0;
  1094 +}
  1095 +.vjs-poster img {
  1096 + display: block;
  1097 + margin: 0 auto;
  1098 + max-height: 100%;
  1099 + padding: 0;
  1100 + width: 100%;
  1101 +}
  1102 +/* Hide the poster after the video has started playing */
  1103 +.video-js.vjs-has-started .vjs-poster {
  1104 + display: none;
  1105 +}
  1106 +/* Don't hide the poster if we're playing audio */
  1107 +.video-js.vjs-audio.vjs-has-started .vjs-poster {
  1108 + display: block;
  1109 +}
  1110 +/* Hide the poster when controls are disabled because it's clickable
  1111 + and the native poster can take over */
  1112 +.video-js.vjs-controls-disabled .vjs-poster {
  1113 + display: none;
  1114 +}
  1115 +/* Hide the poster when native controls are used otherwise it covers them */
  1116 +.video-js.vjs-using-native-controls .vjs-poster {
  1117 + display: none;
  1118 +}
  1119 +/* Text Track Styles */
  1120 +/* Overall track holder for both captions and subtitles */
  1121 +.video-js .vjs-text-track-display {
  1122 + position: absolute;
  1123 + top: 0;
  1124 + left: 0;
  1125 + bottom: 3em;
  1126 + right: 0;
  1127 + pointer-events: none;
  1128 +}
  1129 +/* Captions Settings Dialog */
  1130 +.vjs-caption-settings {
  1131 + position: relative;
  1132 + top: 1em;
  1133 + background-color: #000;
  1134 + opacity: 0.75;
  1135 + color: #FFF;
  1136 + margin: 0 auto;
  1137 + padding: 0.5em;
  1138 + height: 17em;
  1139 + font-family: Arial, Helvetica, sans-serif;
  1140 + font-size: 12px;
  1141 + width: 40em;
  1142 +}
  1143 +.vjs-caption-settings .vjs-tracksettings {
  1144 + top: 0;
  1145 + bottom: 2em;
  1146 + left: 0;
  1147 + right: 0;
  1148 + position: absolute;
  1149 + overflow: auto;
  1150 +}
  1151 +.vjs-caption-settings .vjs-tracksettings-colors,
  1152 +.vjs-caption-settings .vjs-tracksettings-font {
  1153 + float: left;
  1154 +}
  1155 +.vjs-caption-settings .vjs-tracksettings-colors:after,
  1156 +.vjs-caption-settings .vjs-tracksettings-font:after,
  1157 +.vjs-caption-settings .vjs-tracksettings-controls:after {
  1158 + clear: both;
  1159 +}
  1160 +.vjs-caption-settings .vjs-tracksettings-controls {
  1161 + position: absolute;
  1162 + bottom: 1em;
  1163 + right: 1em;
  1164 +}
  1165 +.vjs-caption-settings .vjs-tracksetting {
  1166 + margin: 5px;
  1167 + padding: 3px;
  1168 + min-height: 40px;
  1169 +}
  1170 +.vjs-caption-settings .vjs-tracksetting label {
  1171 + display: block;
  1172 + width: 100px;
  1173 + margin-bottom: 5px;
  1174 +}
  1175 +.vjs-caption-settings .vjs-tracksetting span {
  1176 + display: inline;
  1177 + margin-left: 5px;
  1178 +}
  1179 +.vjs-caption-settings .vjs-tracksetting > div {
  1180 + margin-bottom: 5px;
  1181 + min-height: 20px;
  1182 +}
  1183 +.vjs-caption-settings .vjs-tracksetting > div:last-child {
  1184 + margin-bottom: 0;
  1185 + padding-bottom: 0;
  1186 + min-height: 0;
  1187 +}
  1188 +.vjs-caption-settings label > input {
  1189 + margin-right: 10px;
  1190 +}
  1191 +.vjs-caption-settings input[type="button"] {
  1192 + width: 40px;
  1193 + height: 40px;
  1194 +}
  1195 +/* Hide disabled or unsupported controls */
  1196 +.vjs-hidden {
  1197 + display: none !important;
  1198 +}
  1199 +.vjs-lock-showing {
  1200 + display: block !important;
  1201 + opacity: 1;
  1202 + visibility: visible;
  1203 +}
  1204 +/* In IE8 w/ no JavaScript (no HTML5 shim), the video tag doesn't register.
  1205 + The .video-js classname on the video tag also isn't considered.
  1206 + This optional paragraph inside the video tag can provide a message to users
  1207 + about what's required to play video. */
  1208 +.vjs-no-js {
  1209 + padding: 2em;
  1210 + color: #ccc;
  1211 + background-color: #333;
  1212 + font-size: 1.8em;
  1213 + font-family: Arial, sans-serif;
  1214 + text-align: center;
  1215 + width: 30em;
  1216 + height: 15em;
  1217 + margin: 0 auto;
  1218 +}
  1219 +.vjs-no-js a,
  1220 +.vjs-no-js a:visited {
  1221 + color: #F4A460;
  1222 +}
  1223 +/* -----------------------------------------------------------------------------
  1224 +The original source of this file lives at
  1225 +https://github.com/videojs/video.js/blob/master/src/css/video-js.less */
... ...
400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/img/frameaccuracy_logo.jpg 0 → 100644

8.81 KB

400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/img/video-js.png 0 → 100644

8.04 KB

400-SOURCECODE/AIAHTML5.Web/libs/video_4_12_11/video_4_12_11.js 0 → 100644
  1 +/*! Video.js v4.12.11 Copyright 2014 Brightcove, Inc. https://github.com/videojs/video.js/blob/master/LICENSE */
  2 +(function() {var b=void 0,f=!0,j=null,l=!1;function m(){return function(){}}function n(a){return function(){return this[a]}}function p(a){return function(){return a}}var s;document.createElement("video");document.createElement("audio");document.createElement("track");
  3 +function t(a,c,d){if("string"===typeof a){0===a.indexOf("#")&&(a=a.slice(1));if(t.Da[a])return c&&t.log.warn('Player "'+a+'" is already initialised. Options will not be applied.'),d&&t.Da[a].I(d),t.Da[a];a=t.m(a)}if(!a||!a.nodeName)throw new TypeError("The element or ID supplied is not valid. (videojs)");return a.player||new t.Player(a,c,d)}var videojs=window.videojs=t;t.jc="4.12";t.wd="https:"==document.location.protocol?"https://":"http://";t.VERSION="4.12.11";
  4 +t.options={techOrder:["html5","flash"],html5:{},flash:{},width:300,height:150,defaultVolume:0,playbackRates:[],inactivityTimeout:2E3,children:{mediaLoader:{},posterImage:{},loadingSpinner:{},textTrackDisplay:{},bigPlayButton:{},controlBar:{},errorDisplay:{},textTrackSettings:{}},language:document.getElementsByTagName("html")[0].getAttribute("lang")||navigator.languages&&navigator.languages[0]||navigator.Jf||navigator.language||"en",languages:{},notSupportedMessage:"No compatible source was found for this video."};
  5 +"GENERATED_CDN_VSN"!==t.jc&&(videojs.options.flash.swf=t.wd+"vjs.zencdn.net/"+t.jc+"/video-js.swf");t.Kd=function(a,c){t.options.languages[a]=t.options.languages[a]!==b?t.$.Ba(t.options.languages[a],c):c;return t.options.languages};t.Da={};"function"===typeof define&&define.amd?define("videojs",[],function(){return videojs}):"object"===typeof exports&&"object"===typeof module&&(module.exports=videojs);t.Ha=t.CoreObject=m();
  6 +t.Ha.extend=function(a){var c,d;a=a||{};c=a.init||a.l||this.prototype.init||this.prototype.l||m();d=function(){c.apply(this,arguments)};d.prototype=t.i.create(this.prototype);d.prototype.constructor=d;d.extend=t.Ha.extend;d.create=t.Ha.create;for(var e in a)a.hasOwnProperty(e)&&(d.prototype[e]=a[e]);return d};t.Ha.create=function(){var a=t.i.create(this.prototype);this.apply(a,arguments);return a};
  7 +t.b=function(a,c,d){if(t.i.isArray(c))return v(t.b,a,c,d);var e=t.getData(a);e.G||(e.G={});e.G[c]||(e.G[c]=[]);d.s||(d.s=t.s++);e.G[c].push(d);e.ca||(e.disabled=l,e.ca=function(c){if(!e.disabled){c=t.Qb(c);var d=e.G[c.type];if(d)for(var d=d.slice(0),k=0,q=d.length;k<q&&!c.Rc();k++)d[k].call(a,c)}});1==e.G[c].length&&(a.addEventListener?a.addEventListener(c,e.ca,l):a.attachEvent&&a.attachEvent("on"+c,e.ca))};
  8 +t.n=function(a,c,d){if(t.Mc(a)){var e=t.getData(a);if(e.G){if(t.i.isArray(c))return v(t.n,a,c,d);if(c){var g=e.G[c];if(g){if(d){if(d.s)for(e=0;e<g.length;e++)g[e].s===d.s&&g.splice(e--,1)}else e.G[c]=[];t.Bc(a,c)}}else for(g in e.G)c=g,e.G[c]=[],t.Bc(a,c)}}};t.Bc=function(a,c){var d=t.getData(a);0===d.G[c].length&&(delete d.G[c],a.removeEventListener?a.removeEventListener(c,d.ca,l):a.detachEvent&&a.detachEvent("on"+c,d.ca));t.kb(d.G)&&(delete d.G,delete d.ca,delete d.disabled);t.kb(d)&&t.cd(a)};
  9 +t.Qb=function(a){function c(){return f}function d(){return l}if(!a||!a.Wb){var e=a||window.event;a={};for(var g in e)"layerX"!==g&&("layerY"!==g&&"keyLocation"!==g)&&("returnValue"==g&&e.preventDefault||(a[g]=e[g]));a.target||(a.target=a.srcElement||document);a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;a.preventDefault=function(){e.preventDefault&&e.preventDefault();a.returnValue=l;a.je=c;a.defaultPrevented=f};a.je=d;a.defaultPrevented=l;a.stopPropagation=function(){e.stopPropagation&&
  10 +e.stopPropagation();a.cancelBubble=f;a.Wb=c};a.Wb=d;a.stopImmediatePropagation=function(){e.stopImmediatePropagation&&e.stopImmediatePropagation();a.Rc=c;a.stopPropagation()};a.Rc=d;if(a.clientX!=j){g=document.documentElement;var h=document.body;a.pageX=a.clientX+(g&&g.scrollLeft||h&&h.scrollLeft||0)-(g&&g.clientLeft||h&&h.clientLeft||0);a.pageY=a.clientY+(g&&g.scrollTop||h&&h.scrollTop||0)-(g&&g.clientTop||h&&h.clientTop||0)}a.which=a.charCode||a.keyCode;a.button!=j&&(a.button=a.button&1?0:a.button&
  11 +4?1:a.button&2?2:0)}return a};t.o=function(a,c){var d=t.Mc(a)?t.getData(a):{},e=a.parentNode||a.ownerDocument;"string"===typeof c&&(c={type:c,target:a});c=t.Qb(c);d.ca&&d.ca.call(a,c);if(e&&!c.Wb()&&c.bubbles!==l)t.o(e,c);else if(!e&&!c.defaultPrevented&&(d=t.getData(c.target),c.target[c.type])){d.disabled=f;if("function"===typeof c.target[c.type])c.target[c.type]();d.disabled=l}return!c.defaultPrevented};
  12 +t.N=function(a,c,d){function e(){t.n(a,c,e);d.apply(this,arguments)}if(t.i.isArray(c))return v(t.N,a,c,d);e.s=d.s=d.s||t.s++;t.b(a,c,e)};function v(a,c,d,e){t.xc.forEach(d,function(d){a(c,d,e)})}var w=Object.prototype.hasOwnProperty;t.f=function(a,c){var d;c=c||{};d=document.createElement(a||"div");t.i.da(c,function(a,c){-1!==a.indexOf("aria-")||"role"==a?d.setAttribute(a,c):d[a]=c});return d};t.wa=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};t.i={};
  13 +t.i.create=Object.create||function(a){function c(){}c.prototype=a;return new c};t.i.da=function(a,c,d){for(var e in a)w.call(a,e)&&c.call(d||this,e,a[e])};t.i.D=function(a,c){if(!c)return a;for(var d in c)w.call(c,d)&&(a[d]=c[d]);return a};t.i.Sd=function(a,c){var d,e,g;a=t.i.copy(a);for(d in c)w.call(c,d)&&(e=a[d],g=c[d],a[d]=t.i.lb(e)&&t.i.lb(g)?t.i.Sd(e,g):c[d]);return a};t.i.copy=function(a){return t.i.D({},a)};
  14 +t.i.lb=function(a){return!!a&&"object"===typeof a&&"[object Object]"===a.toString()&&a.constructor===Object};t.i.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};t.le=function(a){return a!==a};t.bind=function(a,c,d){function e(){return c.apply(a,arguments)}c.s||(c.s=t.s++);e.s=d?d+"_"+c.s:c.s;return e};t.va={};t.s=1;t.expando="vdata"+(new Date).getTime();t.getData=function(a){var c=a[t.expando];c||(c=a[t.expando]=t.s++);t.va[c]||(t.va[c]={});return t.va[c]};
  15 +t.Mc=function(a){a=a[t.expando];return!(!a||t.kb(t.va[a]))};t.cd=function(a){var c=a[t.expando];if(c){delete t.va[c];try{delete a[t.expando]}catch(d){a.removeAttribute?a.removeAttribute(t.expando):a[t.expando]=j}}};t.kb=function(a){for(var c in a)if(a[c]!==j)return l;return f};t.Qa=function(a,c){return-1!==(" "+a.className+" ").indexOf(" "+c+" ")};t.p=function(a,c){t.Qa(a,c)||(a.className=""===a.className?c:a.className+" "+c)};
  16 +t.r=function(a,c){var d,e;if(t.Qa(a,c)){d=a.className.split(" ");for(e=d.length-1;0<=e;e--)d[e]===c&&d.splice(e,1);a.className=d.join(" ")}};t.A=t.f("video");var x=document.createElement("track");x.Xb="captions";x.jd="en";x.label="English";t.A.appendChild(x);t.P=navigator.userAgent;t.Dd=/iPhone/i.test(t.P);t.Cd=/iPad/i.test(t.P);t.Ed=/iPod/i.test(t.P);t.Bd=t.Dd||t.Cd||t.Ed;var aa=t,y;var z=t.P.match(/OS (\d+)_/i);y=z&&z[1]?z[1]:b;aa.lf=y;t.Ad=/Android/i.test(t.P);var ba=t,B;
  17 +var C=t.P.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i),D,E;C?(D=C[1]&&parseFloat(C[1]),E=C[2]&&parseFloat(C[2]),B=D&&E?parseFloat(C[1]+"."+C[2]):D?D:j):B=j;ba.ic=B;t.Fd=t.Ad&&/webkit/i.test(t.P)&&2.3>t.ic;t.kc=/Firefox/i.test(t.P);t.mf=/Chrome/i.test(t.P);t.qa=/MSIE\s8\.0/.test(t.P);t.Gb=!!("ontouchstart"in window||window.yd&&document instanceof window.yd);t.xd="backgroundSize"in t.A.style;
  18 +t.ed=function(a,c){t.i.da(c,function(c,e){e===j||"undefined"===typeof e||e===l?a.removeAttribute(c):a.setAttribute(c,e===f?"":e)})};t.Pa=function(a){var c,d,e,g;c={};if(a&&a.attributes&&0<a.attributes.length){d=a.attributes;for(var h=d.length-1;0<=h;h--){e=d[h].name;g=d[h].value;if("boolean"===typeof a[e]||-1!==",autoplay,controls,loop,muted,default,".indexOf(","+e+","))g=g!==j?f:l;c[e]=g}}return c};
  19 +t.wf=function(a,c){var d="";document.defaultView&&document.defaultView.getComputedStyle?d=document.defaultView.getComputedStyle(a,"").getPropertyValue(c):a.currentStyle&&(d=a["client"+c.substr(0,1).toUpperCase()+c.substr(1)]+"px");return d};t.Vb=function(a,c){c.firstChild?c.insertBefore(a,c.firstChild):c.appendChild(a)};t.eb={};t.m=function(a){0===a.indexOf("#")&&(a=a.slice(1));return document.getElementById(a)};
  20 +t.Oa=function(a,c){c=c||a;var d=Math.floor(a%60),e=Math.floor(a/60%60),g=Math.floor(a/3600),h=Math.floor(c/60%60),k=Math.floor(c/3600);if(isNaN(a)||Infinity===a)g=e=d="-";g=0<g||0<k?g+":":"";return g+(((g||10<=h)&&10>e?"0"+e:e)+":")+(10>d?"0"+d:d)};t.Md=function(){document.body.focus();document.onselectstart=p(l)};t.bf=function(){document.onselectstart=p(f)};t.trim=function(a){return(a+"").replace(/^\s+|\s+$/g,"")};t.round=function(a,c){c||(c=0);return Math.round(a*Math.pow(10,c))/Math.pow(10,c)};
  21 +t.ya=function(a,c){return a===b&&c===b?{length:0,start:function(){throw Error("This TimeRanges object is empty");},end:function(){throw Error("This TimeRanges object is empty");}}:{length:1,start:function(){return a},end:function(){return c}}};t.Ne=function(a){try{var c=window.localStorage||l;c&&(c.volume=a)}catch(d){22==d.code||1014==d.code?t.log("LocalStorage Full (VideoJS)",d):18==d.code?t.log("LocalStorage not allowed (VideoJS)",d):t.log("LocalStorage Error (VideoJS)",d)}};
  22 +t.ae=function(a){a.match(/^https?:\/\//)||(a=t.f("div",{innerHTML:'<a href="'+a+'">x</a>'}).firstChild.href);return a};
  23 +t.Fe=function(a){var c,d,e,g;g="protocol hostname port pathname search hash host".split(" ");d=t.f("a",{href:a});if(e=""===d.host&&"file:"!==d.protocol)c=t.f("div"),c.innerHTML='<a href="'+a+'"></a>',d=c.firstChild,c.setAttribute("style","display:none; position:absolute;"),document.body.appendChild(c);a={};for(var h=0;h<g.length;h++)a[g[h]]=d[g[h]];"http:"===a.protocol&&(a.host=a.host.replace(/:80$/,""));"https:"===a.protocol&&(a.host=a.host.replace(/:443$/,""));e&&document.body.removeChild(c);return a};
  24 +function F(a,c){var d,e;d=Array.prototype.slice.call(c);e=m();e=window.console||{log:e,warn:e,error:e};a?d.unshift(a.toUpperCase()+":"):a="log";t.log.history.push(d);d.unshift("VIDEOJS:");if(e[a].apply)e[a].apply(e,d);else e[a](d.join(" "))}t.log=function(){F(j,arguments)};t.log.history=[];t.log.error=function(){F("error",arguments)};t.log.warn=function(){F("warn",arguments)};
  25 +t.Zd=function(a){var c,d;a.getBoundingClientRect&&a.parentNode&&(c=a.getBoundingClientRect());if(!c)return{left:0,top:0};a=document.documentElement;d=document.body;return{left:t.round(c.left+(window.pageXOffset||d.scrollLeft)-(a.clientLeft||d.clientLeft||0)),top:t.round(c.top+(window.pageYOffset||d.scrollTop)-(a.clientTop||d.clientTop||0))}};t.xc={};t.xc.forEach=function(a,c,d){if(t.i.isArray(a)&&c instanceof Function)for(var e=0,g=a.length;e<g;++e)c.call(d||t,a[e],e,a);return a};
  26 +t.gf=function(a,c){var d,e,g,h,k,q,r;"string"===typeof a&&(a={uri:a});videojs.$.Ba({method:"GET",timeout:45E3},a);c=c||m();q=function(){window.clearTimeout(k);c(j,e,e.response||e.responseText)};r=function(a){window.clearTimeout(k);if(!a||"string"===typeof a)a=Error(a);c(a,e)};d=window.XMLHttpRequest;"undefined"===typeof d&&(d=function(){try{return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(c){}try{return new window.ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw Error("This browser does not support XMLHttpRequest.");
  27 +});e=new d;e.uri=a.uri;d=t.Fe(a.uri);g=window.location;d.protocol+d.host!==g.protocol+g.host&&window.XDomainRequest&&!("withCredentials"in e)?(e=new window.XDomainRequest,e.onload=q,e.onerror=r,e.onprogress=m(),e.ontimeout=m()):(h="file:"==d.protocol||"file:"==g.protocol,e.onreadystatechange=function(){if(4===e.readyState){if(e.Ze)return r("timeout");200===e.status||h&&0===e.status?q():r()}},a.timeout&&(k=window.setTimeout(function(){4!==e.readyState&&(e.Ze=f,e.abort())},a.timeout)));try{e.open(a.method||
  28 +"GET",a.uri,f)}catch(u){r(u);return}a.withCredentials&&(e.withCredentials=f);a.responseType&&(e.responseType=a.responseType);try{e.send()}catch(A){r(A)}};t.$={};t.$.Ba=function(a,c){var d,e,g;a=t.i.copy(a);for(d in c)c.hasOwnProperty(d)&&(e=a[d],g=c[d],a[d]=t.i.lb(e)&&t.i.lb(g)?t.$.Ba(e,g):c[d]);return a};t.z=m();s=t.z.prototype;s.cb={};s.b=function(a,c){var d=this.addEventListener;this.addEventListener=Function.prototype;t.b(this,a,c);this.addEventListener=d};s.addEventListener=t.z.prototype.b;
  29 +s.n=function(a,c){t.n(this,a,c)};s.removeEventListener=t.z.prototype.n;s.N=function(a,c){t.N(this,a,c)};s.o=function(a){var c=a.type||a;"string"===typeof a&&(a={type:c});a=t.Qb(a);if(this.cb[c]&&this["on"+c])this["on"+c](a);t.o(this,a)};s.dispatchEvent=t.z.prototype.o;
  30 +t.a=t.Ha.extend({l:function(a,c,d){this.d=a;this.q=t.i.copy(this.q);c=this.options(c);this.Ra=c.id||c.el&&c.el.id;this.Ra||(this.Ra=(a.id&&a.id()||"no_player")+"_component_"+t.s++);this.ue=c.name||j;this.c=c.el||this.f();this.R=[];this.gb={};this.hb={};this.Oc();this.I(d);if(c.dd!==l){var e,g;this.k().reportUserActivity&&(e=t.bind(this.k(),this.k().reportUserActivity),this.b("touchstart",function(){e();this.clearInterval(g);g=this.setInterval(e,250)}),a=function(){e();this.clearInterval(g)},this.b("touchmove",
  31 +e),this.b("touchend",a),this.b("touchcancel",a))}}});s=t.a.prototype;s.dispose=function(){this.o({type:"dispose",bubbles:l});if(this.R)for(var a=this.R.length-1;0<=a;a--)this.R[a].dispose&&this.R[a].dispose();this.hb=this.gb=this.R=j;this.n();this.c.parentNode&&this.c.parentNode.removeChild(this.c);t.cd(this.c);this.c=j};s.d=f;s.k=n("d");s.options=function(a){return a===b?this.q:this.q=t.$.Ba(this.q,a)};s.f=function(a,c){return t.f(a,c)};
  32 +s.v=function(a){var c=this.d.language(),d=this.d.languages();return d&&d[c]&&d[c][a]?d[c][a]:a};s.m=n("c");s.xa=function(){return this.B||this.c};s.id=n("Ra");s.name=n("ue");s.children=n("R");s.be=function(a){return this.gb[a]};s.ea=function(a){return this.hb[a]};
  33 +s.ba=function(a,c){var d,e;"string"===typeof a?(e=a,c=c||{},d=c.componentClass||t.wa(e),c.name=e,d=new window.videojs[d](this.d||this,c)):d=a;this.R.push(d);"function"===typeof d.id&&(this.gb[d.id()]=d);(e=e||d.name&&d.name())&&(this.hb[e]=d);"function"===typeof d.el&&d.el()&&this.xa().appendChild(d.el());return d};
  34 +s.removeChild=function(a){"string"===typeof a&&(a=this.ea(a));if(a&&this.R){for(var c=l,d=this.R.length-1;0<=d;d--)if(this.R[d]===a){c=f;this.R.splice(d,1);break}c&&(this.gb[a.id()]=j,this.hb[a.name()]=j,(c=a.m())&&c.parentNode===this.xa()&&this.xa().removeChild(a.m()))}};
  35 +s.Oc=function(){var a,c,d,e,g,h;a=this;c=a.options();if(d=c.children)if(h=function(d,e){c[d]!==b&&(e=c[d]);e!==l&&(a[d]=a.ba(d,e))},t.i.isArray(d))for(var k=0;k<d.length;k++)e=d[k],"string"==typeof e?(g=e,e={}):g=e.name,h(g,e);else t.i.da(d,h)};s.V=p("");
  36 +s.b=function(a,c,d){var e,g,h;"string"===typeof a||t.i.isArray(a)?t.b(this.c,a,t.bind(this,c)):(e=t.bind(this,d),h=this,g=function(){h.n(a,c,e)},g.s=e.s,this.b("dispose",g),d=function(){h.n("dispose",g)},d.s=e.s,a.nodeName?(t.b(a,c,e),t.b(a,"dispose",d)):"function"===typeof a.b&&(a.b(c,e),a.b("dispose",d)));return this};
  37 +s.n=function(a,c,d){!a||"string"===typeof a||t.i.isArray(a)?t.n(this.c,a,c):(d=t.bind(this,d),this.n("dispose",d),a.nodeName?(t.n(a,c,d),t.n(a,"dispose",d)):(a.n(c,d),a.n("dispose",d)));return this};s.N=function(a,c,d){var e,g,h;"string"===typeof a||t.i.isArray(a)?t.N(this.c,a,t.bind(this,c)):(e=t.bind(this,d),g=this,h=function(){g.n(a,c,h);e.apply(this,arguments)},h.s=e.s,this.b(a,c,h));return this};s.o=function(a){t.o(this.c,a);return this};
  38 +s.I=function(a){a&&(this.za?a.call(this):(this.pb===b&&(this.pb=[]),this.pb.push(a)));return this};s.Xa=function(){this.za=f;var a=this.pb;if(a&&0<a.length){for(var c=0,d=a.length;c<d;c++)a[c].call(this);this.pb=[];this.o("ready")}};s.Qa=function(a){return t.Qa(this.c,a)};s.p=function(a){t.p(this.c,a);return this};s.r=function(a){t.r(this.c,a);return this};s.show=function(){this.r("vjs-hidden");return this};s.Y=function(){this.p("vjs-hidden");return this};function G(a){a.r("vjs-lock-showing")}
  39 +s.width=function(a,c){return ca(this,"width",a,c)};s.height=function(a,c){return ca(this,"height",a,c)};s.Ud=function(a,c){return this.width(a,f).height(c)};function ca(a,c,d,e){if(d!==b){if(d===j||t.le(d))d=0;a.c.style[c]=-1!==(""+d).indexOf("%")||-1!==(""+d).indexOf("px")?d:"auto"===d?"":d+"px";e||a.o("resize");return a}if(!a.c)return 0;d=a.c.style[c];e=d.indexOf("px");return-1!==e?parseInt(d.slice(0,e),10):parseInt(a.c["offset"+t.wa(c)],10)}
  40 +function da(a){var c,d,e,g,h,k,q,r;c=0;d=j;a.b("touchstart",function(a){1===a.touches.length&&(d=t.i.copy(a.touches[0]),c=(new Date).getTime(),g=f)});a.b("touchmove",function(a){1<a.touches.length?g=l:d&&(k=a.touches[0].pageX-d.pageX,q=a.touches[0].pageY-d.pageY,r=Math.sqrt(k*k+q*q),10<r&&(g=l))});h=function(){g=l};a.b("touchleave",h);a.b("touchcancel",h);a.b("touchend",function(a){d=j;g===f&&(e=(new Date).getTime()-c,200>e&&(a.preventDefault(),this.o("tap")))})}
  41 +s.setTimeout=function(a,c){function d(){this.clearTimeout(e)}a=t.bind(this,a);var e=setTimeout(a,c);d.s="vjs-timeout-"+e;this.b("dispose",d);return e};s.clearTimeout=function(a){function c(){}clearTimeout(a);c.s="vjs-timeout-"+a;this.n("dispose",c);return a};s.setInterval=function(a,c){function d(){this.clearInterval(e)}a=t.bind(this,a);var e=setInterval(a,c);d.s="vjs-interval-"+e;this.b("dispose",d);return e};
  42 +s.clearInterval=function(a){function c(){}clearInterval(a);c.s="vjs-interval-"+a;this.n("dispose",c);return a};t.w=t.a.extend({l:function(a,c){t.a.call(this,a,c);da(this);this.b("tap",this.u);this.b("click",this.u);this.b("focus",this.nb);this.b("blur",this.mb)}});s=t.w.prototype;
  43 +s.f=function(a,c){var d;c=t.i.D({className:this.V(),role:"button","aria-live":"polite",tabIndex:0},c);d=t.a.prototype.f.call(this,a,c);c.innerHTML||(this.B=t.f("div",{className:"vjs-control-content"}),this.Lb=t.f("span",{className:"vjs-control-text",innerHTML:this.v(this.ua)||"Need Text"}),this.B.appendChild(this.Lb),d.appendChild(this.B));return d};s.V=function(){return"vjs-control "+t.a.prototype.V.call(this)};s.u=m();s.nb=function(){t.b(document,"keydown",t.bind(this,this.la))};
  44 +s.la=function(a){if(32==a.which||13==a.which)a.preventDefault(),this.u()};s.mb=function(){t.n(document,"keydown",t.bind(this,this.la))};t.U=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.Ld=this.ea(this.q.barName);this.handle=this.ea(this.q.handleName);this.b("mousedown",this.ob);this.b("touchstart",this.ob);this.b("focus",this.nb);this.b("blur",this.mb);this.b("click",this.u);this.b(a,"controlsvisible",this.update);this.b(a,this.Yc,this.update)}});s=t.U.prototype;
  45 +s.f=function(a,c){c=c||{};c.className+=" vjs-slider";c=t.i.D({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},c);return t.a.prototype.f.call(this,a,c)};s.ob=function(a){a.preventDefault();t.Md();this.p("vjs-sliding");this.b(document,"mousemove",this.ma);this.b(document,"mouseup",this.Ca);this.b(document,"touchmove",this.ma);this.b(document,"touchend",this.Ca);this.ma(a)};s.ma=m();
  46 +s.Ca=function(){t.bf();this.r("vjs-sliding");this.n(document,"mousemove",this.ma);this.n(document,"mouseup",this.Ca);this.n(document,"touchmove",this.ma);this.n(document,"touchend",this.Ca);this.update()};s.update=function(){if(this.c){var a,c=this.Tb(),d=this.handle,e=this.Ld;if("number"!==typeof c||c!==c||0>c||Infinity===c)c=0;a=c;if(d){a=this.c.offsetWidth;var g=d.m().offsetWidth;a=g?g/a:0;c*=1-a;a=c+a/2;d.m().style.left=t.round(100*c,2)+"%"}e&&(e.m().style.width=t.round(100*a,2)+"%")}};
  47 +function ea(a,c){var d,e,g,h;d=a.c;e=t.Zd(d);h=g=d.offsetWidth;d=a.handle;if(a.options().vertical)return h=e.top,e=c.changedTouches?c.changedTouches[0].pageY:c.pageY,d&&(d=d.m().offsetHeight,h+=d/2,g-=d),Math.max(0,Math.min(1,(h-e+g)/g));g=e.left;e=c.changedTouches?c.changedTouches[0].pageX:c.pageX;d&&(d=d.m().offsetWidth,g+=d/2,h-=d);return Math.max(0,Math.min(1,(e-g)/h))}s.nb=function(){this.b(document,"keydown",this.la)};
  48 +s.la=function(a){if(37==a.which||40==a.which)a.preventDefault(),this.kd();else if(38==a.which||39==a.which)a.preventDefault(),this.ld()};s.mb=function(){this.n(document,"keydown",this.la)};s.u=function(a){a.stopImmediatePropagation();a.preventDefault()};t.ha=t.a.extend();t.ha.prototype.defaultValue=0;t.ha.prototype.f=function(a,c){c=c||{};c.className+=" vjs-slider-handle";c=t.i.D({innerHTML:'<span class="vjs-control-text">'+this.defaultValue+"</span>"},c);return t.a.prototype.f.call(this,"div",c)};
  49 +t.ra=t.a.extend();function fa(a,c){a.ba(c);c.b("click",t.bind(a,function(){G(this)}))}t.ra.prototype.f=function(){var a=this.options().Dc||"ul";this.B=t.f(a,{className:"vjs-menu-content"});a=t.a.prototype.f.call(this,"div",{append:this.B,className:"vjs-menu"});a.appendChild(this.B);t.b(a,"click",function(a){a.preventDefault();a.stopImmediatePropagation()});return a};t.M=t.w.extend({l:function(a,c){t.w.call(this,a,c);this.selected(c.selected)}});
  50 +t.M.prototype.f=function(a,c){return t.w.prototype.f.call(this,"li",t.i.D({className:"vjs-menu-item",innerHTML:this.v(this.q.label)},c))};t.M.prototype.u=function(){this.selected(f)};t.M.prototype.selected=function(a){a?(this.p("vjs-selected"),this.c.setAttribute("aria-selected",f)):(this.r("vjs-selected"),this.c.setAttribute("aria-selected",l))};
  51 +t.O=t.w.extend({l:function(a,c){t.w.call(this,a,c);this.update();this.b("keydown",this.la);this.c.setAttribute("aria-haspopup",f);this.c.setAttribute("role","button")}});s=t.O.prototype;s.update=function(){var a=this.Ma();this.Aa&&this.removeChild(this.Aa);this.Aa=a;this.ba(a);this.H&&0===this.H.length?this.Y():this.H&&1<this.H.length&&this.show()};s.Ka=l;
  52 +s.Ma=function(){var a=new t.ra(this.d);this.options().title&&a.xa().appendChild(t.f("li",{className:"vjs-menu-title",innerHTML:t.wa(this.options().title),Xe:-1}));if(this.H=this.createItems())for(var c=0;c<this.H.length;c++)fa(a,this.H[c]);return a};s.La=m();s.V=function(){return this.className+" vjs-menu-button "+t.w.prototype.V.call(this)};s.nb=m();s.mb=m();s.u=function(){this.N("mouseout",t.bind(this,function(){G(this.Aa);this.c.blur()}));this.Ka?H(this):ga(this)};
  53 +s.la=function(a){32==a.which||13==a.which?(this.Ka?H(this):ga(this),a.preventDefault()):27==a.which&&(this.Ka&&H(this),a.preventDefault())};function ga(a){a.Ka=f;a.Aa.p("vjs-lock-showing");a.c.setAttribute("aria-pressed",f);a.H&&0<a.H.length&&a.H[0].m().focus()}function H(a){a.Ka=l;G(a.Aa);a.c.setAttribute("aria-pressed",l)}t.J=function(a){"number"===typeof a?this.code=a:"string"===typeof a?this.message=a:"object"===typeof a&&t.i.D(this,a);this.message||(this.message=t.J.Td[this.code]||"")};
  54 +t.J.prototype.code=0;t.J.prototype.message="";t.J.prototype.status=j;t.J.jb="MEDIA_ERR_CUSTOM MEDIA_ERR_ABORTED MEDIA_ERR_NETWORK MEDIA_ERR_DECODE MEDIA_ERR_SRC_NOT_SUPPORTED MEDIA_ERR_ENCRYPTED".split(" ");
  55 +t.J.Td={1:"You aborted the video playback",2:"A network error caused the video download to fail part-way.",3:"The video playback was aborted due to a corruption problem or because the video used features your browser did not support.",4:"The video could not be loaded, either because the server or network failed or because the format is not supported.",5:"The video is encrypted and we do not have the keys to decrypt it."};for(var I=0;I<t.J.jb.length;I++)t.J[t.J.jb[I]]=I,t.J.prototype[t.J.jb[I]]=I;
  56 +var J,ha,K,L;
  57 +J=["requestFullscreen exitFullscreen fullscreenElement fullscreenEnabled fullscreenchange fullscreenerror".split(" "),"webkitRequestFullscreen webkitExitFullscreen webkitFullscreenElement webkitFullscreenEnabled webkitfullscreenchange webkitfullscreenerror".split(" "),"webkitRequestFullScreen webkitCancelFullScreen webkitCurrentFullScreenElement webkitCancelFullScreen webkitfullscreenchange webkitfullscreenerror".split(" "),"mozRequestFullScreen mozCancelFullScreen mozFullScreenElement mozFullScreenEnabled mozfullscreenchange mozfullscreenerror".split(" "),"msRequestFullscreen msExitFullscreen msFullscreenElement msFullscreenEnabled MSFullscreenChange MSFullscreenError".split(" ")];
  58 +ha=J[0];for(L=0;L<J.length;L++)if(J[L][1]in document){K=J[L];break}if(K){t.eb.Sb={};for(L=0;L<K.length;L++)t.eb.Sb[ha[L]]=K[L]}
  59 +t.Player=t.a.extend({l:function(a,c,d){this.L=a;a.id=a.id||"vjs_video_"+t.s++;this.Ye=a&&t.Pa(a);c=t.i.D(ia(a),c);this.Tc=c.language||t.options.language;this.oe=c.languages||t.options.languages;this.K={};this.Zc=c.poster||"";this.Mb=!!c.controls;a.controls=l;c.dd=l;ja(this,"audio"===this.L.nodeName.toLowerCase());t.a.call(this,this,c,d);this.controls()?this.p("vjs-controls-enabled"):this.p("vjs-controls-disabled");ja(this)&&this.p("vjs-audio");t.Da[this.Ra]=this;c.plugins&&t.i.da(c.plugins,function(a,
  60 +c){this[a](c)},this);var e,g,h,k,q;e=t.bind(this,this.reportUserActivity);this.b("mousedown",function(){e();this.clearInterval(g);g=this.setInterval(e,250)});this.b("mousemove",function(a){if(a.screenX!=k||a.screenY!=q)k=a.screenX,q=a.screenY,e()});this.b("mouseup",function(){e();this.clearInterval(g)});this.b("keydown",e);this.b("keyup",e);this.setInterval(function(){if(this.Ga){this.Ga=l;this.userActive(f);this.clearTimeout(h);var a=this.options().inactivityTimeout;0<a&&(h=this.setTimeout(function(){this.Ga||
  61 +this.userActive(l)},a))}},250)}});s=t.Player.prototype;s.language=function(a){if(a===b)return this.Tc;this.Tc=a;return this};s.languages=n("oe");s.q=t.options;s.dispose=function(){this.o("dispose");this.n("dispose");t.Da[this.Ra]=j;this.L&&this.L.player&&(this.L.player=j);this.c&&this.c.player&&(this.c.player=j);this.h&&this.h.dispose();t.a.prototype.dispose.call(this)};
  62 +function ia(a){var c,d,e={sources:[],tracks:[]};c=t.Pa(a);d=c["data-setup"];d!==j&&t.i.D(c,t.JSON.parse(d||"{}"));t.i.D(e,c);if(a.hasChildNodes()){var g,h;a=a.childNodes;g=0;for(h=a.length;g<h;g++)c=a[g],d=c.nodeName.toLowerCase(),"source"===d?e.sources.push(t.Pa(c)):"track"===d&&e.tracks.push(t.Pa(c))}return e}
  63 +s.f=function(){var a=this.c=t.a.prototype.f.call(this,"div"),c=this.L,d;c.removeAttribute("width");c.removeAttribute("height");d=t.Pa(c);t.i.da(d,function(c){"class"==c?a.className=d[c]:a.setAttribute(c,d[c])});c.id+="_html5_api";c.className="vjs-tech";c.player=a.player=this;this.p("vjs-paused");this.width(this.q.width,f);this.height(this.q.height,f);c.he=c.networkState;c.parentNode&&c.parentNode.insertBefore(a,c);t.Vb(c,a);this.c=a;this.b("loadstart",this.ye);this.b("waiting",this.Ee);this.b(["canplay",
  64 +"canplaythrough","playing","ended"],this.De);this.b("seeking",this.Be);this.b("seeked",this.Ae);this.b("ended",this.ve);this.b("play",this.ac);this.b("firstplay",this.we);this.b("pause",this.$b);this.b("progress",this.ze);this.b("durationchange",this.Wc);this.b("fullscreenchange",this.xe);return a};
  65 +function ka(a,c,d){a.h&&(a.za=l,a.h.dispose(),a.h=l);"Html5"!==c&&a.L&&(t.e.Nb(a.L),a.L=j);a.Va=c;a.za=l;var e=t.i.D({source:d,parentEl:a.c},a.q[c.toLowerCase()]);d&&(a.Gc=d.type,d.src==a.K.src&&0<a.K.currentTime&&(e.startTime=a.K.currentTime),a.K.src=d.src);a.h=new window.videojs[c](a,e);a.h.I(function(){this.d.Xa()})}s.ye=function(){this.r("vjs-ended");this.error(j);this.paused()?la(this,l):this.o("firstplay")};s.Nc=l;
  66 +function la(a,c){c!==b&&a.Nc!==c&&((a.Nc=c)?(a.p("vjs-has-started"),a.o("firstplay")):a.r("vjs-has-started"))}s.ac=function(){this.r("vjs-ended");this.r("vjs-paused");this.p("vjs-playing");la(this,f)};s.Ee=function(){this.p("vjs-waiting")};s.De=function(){this.r("vjs-waiting")};s.Be=function(){this.p("vjs-seeking")};s.Ae=function(){this.r("vjs-seeking")};s.we=function(){this.q.starttime&&this.currentTime(this.q.starttime);this.p("vjs-has-started")};s.$b=function(){this.r("vjs-playing");this.p("vjs-paused")};
  67 +s.ze=function(){1==this.bufferedPercent()&&this.o("loadedalldata")};s.ve=function(){this.p("vjs-ended");this.q.loop?(this.currentTime(0),this.play()):this.paused()||this.pause()};s.Wc=function(){var a=M(this,"duration");a&&(0>a&&(a=Infinity),this.duration(a),Infinity===a?this.p("vjs-live"):this.r("vjs-live"))};s.xe=function(){this.isFullscreen()?this.p("vjs-fullscreen"):this.r("vjs-fullscreen")};
  68 +function N(a,c,d){if(a.h&&!a.h.za)a.h.I(function(){this[c](d)});else try{a.h[c](d)}catch(e){throw t.log(e),e;}}function M(a,c){if(a.h&&a.h.za)try{return a.h[c]()}catch(d){throw a.h[c]===b?t.log("Video.js: "+c+" method not defined for "+a.Va+" playback technology.",d):"TypeError"==d.name?(t.log("Video.js: "+c+" unavailable on "+a.Va+" playback technology element.",d),a.h.za=l):t.log(d),d;}}s.play=function(){N(this,"play");return this};s.pause=function(){N(this,"pause");return this};
  69 +s.paused=function(){return M(this,"paused")===l?l:f};s.currentTime=function(a){return a!==b?(N(this,"setCurrentTime",a),this):this.K.currentTime=M(this,"currentTime")||0};s.duration=function(a){if(a!==b)return this.K.duration=parseFloat(a),this;this.K.duration===b&&this.Wc();return this.K.duration||0};s.remainingTime=function(){return this.duration()-this.currentTime()};s.buffered=function(){var a=M(this,"buffered");if(!a||!a.length)a=t.ya(0,0);return a};
  70 +s.bufferedPercent=function(){var a=this.duration(),c=this.buffered(),d=0,e,g;if(!a)return 0;for(var h=0;h<c.length;h++)e=c.start(h),g=c.end(h),g>a&&(g=a),d+=g-e;return d/a};s.volume=function(a){if(a!==b)return a=Math.max(0,Math.min(1,parseFloat(a))),this.K.volume=a,N(this,"setVolume",a),t.Ne(a),this;a=parseFloat(M(this,"volume"));return isNaN(a)?1:a};s.muted=function(a){return a!==b?(N(this,"setMuted",a),this):M(this,"muted")||l};s.Ua=function(){return M(this,"supportsFullScreen")||l};s.Qc=l;
  71 +s.isFullscreen=function(a){return a!==b?(this.Qc=!!a,this):this.Qc};s.isFullScreen=function(a){t.log.warn('player.isFullScreen() has been deprecated, use player.isFullscreen() with a lowercase "s")');return this.isFullscreen(a)};
  72 +s.requestFullscreen=function(){var a=t.eb.Sb;this.isFullscreen(f);a?(t.b(document,a.fullscreenchange,t.bind(this,function(c){this.isFullscreen(document[a.fullscreenElement]);this.isFullscreen()===l&&t.n(document,a.fullscreenchange,arguments.callee);this.o("fullscreenchange")})),this.c[a.requestFullscreen]()):this.h.Ua()?N(this,"enterFullScreen"):(this.Jc(),this.o("fullscreenchange"));return this};
  73 +s.requestFullScreen=function(){t.log.warn('player.requestFullScreen() has been deprecated, use player.requestFullscreen() with a lowercase "s")');return this.requestFullscreen()};s.exitFullscreen=function(){var a=t.eb.Sb;this.isFullscreen(l);if(a)document[a.exitFullscreen]();else this.h.Ua()?N(this,"exitFullScreen"):(this.Ob(),this.o("fullscreenchange"));return this};s.cancelFullScreen=function(){t.log.warn("player.cancelFullScreen() has been deprecated, use player.exitFullscreen()");return this.exitFullscreen()};
  74 +s.Jc=function(){this.ke=f;this.Vd=document.documentElement.style.overflow;t.b(document,"keydown",t.bind(this,this.Kc));document.documentElement.style.overflow="hidden";t.p(document.body,"vjs-full-window");this.o("enterFullWindow")};s.Kc=function(a){27===a.keyCode&&(this.isFullscreen()===f?this.exitFullscreen():this.Ob())};s.Ob=function(){this.ke=l;t.n(document,"keydown",this.Kc);document.documentElement.style.overflow=this.Vd;t.r(document.body,"vjs-full-window");this.o("exitFullWindow")};
  75 +s.selectSource=function(a){for(var c=0,d=this.q.techOrder;c<d.length;c++){var e=t.wa(d[c]),g=window.videojs[e];if(g){if(g.isSupported())for(var h=0,k=a;h<k.length;h++){var q=k[h];if(g.canPlaySource(q))return{source:q,h:e}}}else t.log.error('The "'+e+'" tech is undefined. Skipped browser support check for that tech.')}return l};
  76 +s.src=function(a){if(a===b)return M(this,"src");t.i.isArray(a)?ma(this,a):"string"===typeof a?this.src({src:a}):a instanceof Object&&(a.type&&!window.videojs[this.Va].canPlaySource(a)?ma(this,[a]):(this.K.src=a.src,this.Gc=a.type||"",this.I(function(){window.videojs[this.Va].prototype.hasOwnProperty("setSource")?N(this,"setSource",a):N(this,"src",a.src);"auto"==this.q.preload&&this.load();this.q.autoplay&&this.play()})));return this};
  77 +function ma(a,c){var d=a.selectSource(c);d?d.h===a.Va?a.src(d.source):ka(a,d.h,d.source):(a.setTimeout(function(){this.error({code:4,message:this.v(this.options().notSupportedMessage)})},0),a.Xa())}s.load=function(){N(this,"load");return this};s.currentSrc=function(){return M(this,"currentSrc")||this.K.src||""};s.Rd=function(){return this.Gc||""};s.Sa=function(a){return a!==b?(N(this,"setPreload",a),this.q.preload=a,this):M(this,"preload")};
  78 +s.autoplay=function(a){return a!==b?(N(this,"setAutoplay",a),this.q.autoplay=a,this):M(this,"autoplay")};s.loop=function(a){return a!==b?(N(this,"setLoop",a),this.q.loop=a,this):M(this,"loop")};s.poster=function(a){if(a===b)return this.Zc;a||(a="");this.Zc=a;N(this,"setPoster",a);this.o("posterchange");return this};
  79 +s.controls=function(a){return a!==b?(a=!!a,this.Mb!==a&&((this.Mb=a)?(this.r("vjs-controls-disabled"),this.p("vjs-controls-enabled"),this.o("controlsenabled")):(this.r("vjs-controls-enabled"),this.p("vjs-controls-disabled"),this.o("controlsdisabled"))),this):this.Mb};t.Player.prototype.fc;s=t.Player.prototype;
  80 +s.usingNativeControls=function(a){return a!==b?(a=!!a,this.fc!==a&&((this.fc=a)?(this.p("vjs-using-native-controls"),this.o("usingnativecontrols")):(this.r("vjs-using-native-controls"),this.o("usingcustomcontrols"))),this):this.fc};s.ka=j;s.error=function(a){if(a===b)return this.ka;if(a===j)return this.ka=a,this.r("vjs-error"),this;this.ka=a instanceof t.J?a:new t.J(a);this.o("error");this.p("vjs-error");t.log.error("(CODE:"+this.ka.code+" "+t.J.jb[this.ka.code]+")",this.ka.message,this.ka);return this};
  81 +s.ended=function(){return M(this,"ended")};s.seeking=function(){return M(this,"seeking")};s.seekable=function(){return M(this,"seekable")};s.Ga=f;s.reportUserActivity=function(){this.Ga=f};s.ec=f;
  82 +s.userActive=function(a){return a!==b?(a=!!a,a!==this.ec&&((this.ec=a)?(this.Ga=f,this.r("vjs-user-inactive"),this.p("vjs-user-active"),this.o("useractive")):(this.Ga=l,this.h&&this.h.N("mousemove",function(a){a.stopPropagation();a.preventDefault()}),this.r("vjs-user-active"),this.p("vjs-user-inactive"),this.o("userinactive"))),this):this.ec};s.playbackRate=function(a){return a!==b?(N(this,"setPlaybackRate",a),this):this.h&&this.h.featuresPlaybackRate?M(this,"playbackRate"):1};s.Pc=l;
  83 +function ja(a,c){return c!==b?(a.Pc=!!c,a):a.Pc}s.networkState=function(){return M(this,"networkState")};s.readyState=function(){return M(this,"readyState")};s.textTracks=function(){return this.h&&this.h.textTracks()};s.Z=function(){return this.h&&this.h.remoteTextTracks()};s.addTextTrack=function(a,c,d){return this.h&&this.h.addTextTrack(a,c,d)};s.ia=function(a){return this.h&&this.h.addRemoteTextTrack(a)};s.Ea=function(a){this.h&&this.h.removeRemoteTextTrack(a)};t.wb=t.a.extend();
  84 +t.wb.prototype.q={xf:"play",children:{playToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},liveDisplay:{},progressControl:{},fullscreenToggle:{},volumeControl:{},muteToggle:{},playbackRateMenuButton:{},subtitlesButton:{},captionsButton:{},chaptersButton:{}}};t.wb.prototype.f=function(){return t.f("div",{className:"vjs-control-bar"})};t.lc=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});
  85 +t.lc.prototype.f=function(){var a=t.a.prototype.f.call(this,"div",{className:"vjs-live-controls vjs-control"});this.B=t.f("div",{className:"vjs-live-display",innerHTML:'<span class="vjs-control-text">'+this.v("Stream Type")+"</span>"+this.v("LIVE"),"aria-live":"off"});a.appendChild(this.B);return a};t.oc=t.w.extend({l:function(a,c){t.w.call(this,a,c);this.b(a,"play",this.ac);this.b(a,"pause",this.$b)}});s=t.oc.prototype;s.ua="Play";s.V=function(){return"vjs-play-control "+t.w.prototype.V.call(this)};
  86 +s.u=function(){this.d.paused()?this.d.play():this.d.pause()};s.ac=function(){this.r("vjs-paused");this.p("vjs-playing");this.c.children[0].children[0].innerHTML=this.v("Pause")};s.$b=function(){this.r("vjs-playing");this.p("vjs-paused");this.c.children[0].children[0].innerHTML=this.v("Play")};t.xb=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.b(a,"timeupdate",this.ga)}});
  87 +t.xb.prototype.f=function(){var a=t.a.prototype.f.call(this,"div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.B=t.f("div",{className:"vjs-current-time-display",innerHTML:'<span class="vjs-control-text">Current Time </span>0:00',"aria-live":"off"});a.appendChild(this.B);return a};t.xb.prototype.ga=function(){var a=this.d.qb?this.d.K.currentTime:this.d.currentTime();this.B.innerHTML='<span class="vjs-control-text">'+this.v("Current Time")+"</span> "+t.Oa(a,this.d.duration())};
  88 +t.yb=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.b(a,"timeupdate",this.ga);this.b(a,"loadedmetadata",this.ga)}});t.yb.prototype.f=function(){var a=t.a.prototype.f.call(this,"div",{className:"vjs-duration vjs-time-controls vjs-control"});this.B=t.f("div",{className:"vjs-duration-display",innerHTML:'<span class="vjs-control-text">'+this.v("Duration Time")+"</span> 0:00","aria-live":"off"});a.appendChild(this.B);return a};
  89 +t.yb.prototype.ga=function(){var a=this.d.duration();a&&(this.B.innerHTML='<span class="vjs-control-text">'+this.v("Duration Time")+"</span> "+t.Oa(a))};t.uc=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});t.uc.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})};t.Fb=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.b(a,"timeupdate",this.ga)}});
  90 +t.Fb.prototype.f=function(){var a=t.a.prototype.f.call(this,"div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.B=t.f("div",{className:"vjs-remaining-time-display",innerHTML:'<span class="vjs-control-text">'+this.v("Remaining Time")+"</span> -0:00","aria-live":"off"});a.appendChild(this.B);return a};t.Fb.prototype.ga=function(){this.d.duration()&&(this.B.innerHTML='<span class="vjs-control-text">'+this.v("Remaining Time")+"</span> -"+t.Oa(this.d.remainingTime()))};
  91 +t.$a=t.w.extend({l:function(a,c){t.w.call(this,a,c)}});t.$a.prototype.ua="Fullscreen";t.$a.prototype.V=function(){return"vjs-fullscreen-control "+t.w.prototype.V.call(this)};t.$a.prototype.u=function(){this.d.isFullscreen()?(this.d.exitFullscreen(),this.Lb.innerHTML=this.v("Fullscreen")):(this.d.requestFullscreen(),this.Lb.innerHTML=this.v("Non-Fullscreen"))};t.Eb=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});t.Eb.prototype.q={children:{seekBar:{}}};
  92 +t.Eb.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-progress-control vjs-control"})};t.rc=t.U.extend({l:function(a,c){t.U.call(this,a,c);this.b(a,"timeupdate",this.Fa);a.I(t.bind(this,this.Fa))}});s=t.rc.prototype;s.q={children:{loadProgressBar:{},playProgressBar:{},seekHandle:{}},barName:"playProgressBar",handleName:"seekHandle"};s.Yc="timeupdate";s.f=function(){return t.U.prototype.f.call(this,"div",{className:"vjs-progress-holder","aria-label":"video progress bar"})};
  93 +s.Fa=function(){var a=this.d.qb?this.d.K.currentTime:this.d.currentTime();this.c.setAttribute("aria-valuenow",t.round(100*this.Tb(),2));this.c.setAttribute("aria-valuetext",t.Oa(a,this.d.duration()))};s.Tb=function(){return this.d.currentTime()/this.d.duration()};s.ob=function(a){t.U.prototype.ob.call(this,a);this.d.qb=f;this.d.p("vjs-scrubbing");this.ef=!this.d.paused();this.d.pause()};s.ma=function(a){a=ea(this,a)*this.d.duration();a==this.d.duration()&&(a-=0.1);this.d.currentTime(a)};
  94 +s.Ca=function(a){t.U.prototype.Ca.call(this,a);this.d.qb=l;this.d.r("vjs-scrubbing");this.ef&&this.d.play()};s.ld=function(){this.d.currentTime(this.d.currentTime()+5)};s.kd=function(){this.d.currentTime(this.d.currentTime()-5)};t.Bb=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.b(a,"progress",this.update)}});t.Bb.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text"><span>'+this.v("Loaded")+"</span>: 0%</span>"})};
  95 +t.Bb.prototype.update=function(){var a,c,d,e,g=this.d.buffered();a=this.d.duration();var h,k=this.d;h=k.buffered();k=k.duration();h=h.end(h.length-1);h>k&&(h=k);k=this.c.children;this.c.style.width=100*(h/a||0)+"%";for(a=0;a<g.length;a++)c=g.start(a),d=g.end(a),(e=k[a])||(e=this.c.appendChild(t.f())),e.style.left=100*(c/h||0)+"%",e.style.width=100*((d-c)/h||0)+"%";for(a=k.length;a>g.length;a--)this.c.removeChild(k[a-1])};t.nc=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});
  96 +t.nc.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text"><span>'+this.v("Progress")+"</span>: 0%</span>"})};t.ab=t.ha.extend({l:function(a,c){t.ha.call(this,a,c);this.b(a,"timeupdate",this.ga)}});t.ab.prototype.defaultValue="00:00";t.ab.prototype.f=function(){return t.ha.prototype.f.call(this,"div",{className:"vjs-seek-handle","aria-live":"off"})};
  97 +t.ab.prototype.ga=function(){var a=this.d.qb?this.d.K.currentTime:this.d.currentTime();this.c.innerHTML='<span class="vjs-control-text">'+t.Oa(a,this.d.duration())+"</span>"};t.Ib=t.a.extend({l:function(a,c){t.a.call(this,a,c);a.h&&a.h.featuresVolumeControl===l&&this.p("vjs-hidden");this.b(a,"loadstart",function(){a.h.featuresVolumeControl===l?this.p("vjs-hidden"):this.r("vjs-hidden")})}});t.Ib.prototype.q={children:{volumeBar:{}}};
  98 +t.Ib.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-volume-control vjs-control"})};t.Hb=t.U.extend({l:function(a,c){t.U.call(this,a,c);this.b(a,"volumechange",this.Fa);a.I(t.bind(this,this.Fa))}});s=t.Hb.prototype;s.Fa=function(){this.c.setAttribute("aria-valuenow",t.round(100*this.d.volume(),2));this.c.setAttribute("aria-valuetext",t.round(100*this.d.volume(),2)+"%")};s.q={children:{volumeLevel:{},volumeHandle:{}},barName:"volumeLevel",handleName:"volumeHandle"};
  99 +s.Yc="volumechange";s.f=function(){return t.U.prototype.f.call(this,"div",{className:"vjs-volume-bar","aria-label":"volume level"})};s.ma=function(a){this.d.muted()&&this.d.muted(l);this.d.volume(ea(this,a))};s.Tb=function(){return this.d.muted()?0:this.d.volume()};s.ld=function(){this.d.volume(this.d.volume()+0.1)};s.kd=function(){this.d.volume(this.d.volume()-0.1)};t.vc=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});
  100 +t.vc.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})};t.Jb=t.ha.extend();t.Jb.prototype.defaultValue="00:00";t.Jb.prototype.f=function(){return t.ha.prototype.f.call(this,"div",{className:"vjs-volume-handle"})};
  101 +t.sa=t.w.extend({l:function(a,c){t.w.call(this,a,c);this.b(a,"volumechange",this.update);a.h&&a.h.featuresVolumeControl===l&&this.p("vjs-hidden");this.b(a,"loadstart",function(){a.h.featuresVolumeControl===l?this.p("vjs-hidden"):this.r("vjs-hidden")})}});t.sa.prototype.f=function(){return t.w.prototype.f.call(this,"div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">'+this.v("Mute")+"</span></div>"})};
  102 +t.sa.prototype.u=function(){this.d.muted(this.d.muted()?l:f)};t.sa.prototype.update=function(){var a=this.d.volume(),c=3;0===a||this.d.muted()?c=0:0.33>a?c=1:0.67>a&&(c=2);this.d.muted()?this.c.children[0].children[0].innerHTML!=this.v("Unmute")&&(this.c.children[0].children[0].innerHTML=this.v("Unmute")):this.c.children[0].children[0].innerHTML!=this.v("Mute")&&(this.c.children[0].children[0].innerHTML=this.v("Mute"));for(a=0;4>a;a++)t.r(this.c,"vjs-vol-"+a);t.p(this.c,"vjs-vol-"+c)};
  103 +t.Ia=t.O.extend({l:function(a,c){t.O.call(this,a,c);this.b(a,"volumechange",this.ff);a.h&&a.h.featuresVolumeControl===l&&this.p("vjs-hidden");this.b(a,"loadstart",function(){a.h.featuresVolumeControl===l?this.p("vjs-hidden"):this.r("vjs-hidden")});this.p("vjs-menu-button")}});t.Ia.prototype.Ma=function(){var a=new t.ra(this.d,{Dc:"div"}),c=new t.Hb(this.d,this.q.volumeBar);c.b("focus",function(){a.p("vjs-lock-showing")});c.b("blur",function(){G(a)});a.ba(c);return a};
  104 +t.Ia.prototype.u=function(){t.sa.prototype.u.call(this);t.O.prototype.u.call(this)};t.Ia.prototype.f=function(){return t.w.prototype.f.call(this,"div",{className:"vjs-volume-menu-button vjs-menu-button vjs-control",innerHTML:'<div><span class="vjs-control-text">'+this.v("Mute")+"</span></div>"})};t.Ia.prototype.ff=t.sa.prototype.update;t.pc=t.O.extend({l:function(a,c){t.O.call(this,a,c);this.td();this.sd();this.b(a,"loadstart",this.td);this.b(a,"ratechange",this.sd)}});s=t.pc.prototype;s.ua="Playback Rate";
  105 +s.className="vjs-playback-rate";s.f=function(){var a=t.O.prototype.f.call(this);this.Sc=t.f("div",{className:"vjs-playback-rate-value",innerHTML:1});a.appendChild(this.Sc);return a};s.Ma=function(){var a=new t.ra(this.k()),c=this.k().options().playbackRates;if(c)for(var d=c.length-1;0<=d;d--)a.ba(new t.Db(this.k(),{rate:c[d]+"x"}));return a};s.Fa=function(){this.m().setAttribute("aria-valuenow",this.k().playbackRate())};
  106 +s.u=function(){for(var a=this.k().playbackRate(),c=this.k().options().playbackRates,d=c[0],e=0;e<c.length;e++)if(c[e]>a){d=c[e];break}this.k().playbackRate(d)};function na(a){return a.k().h&&a.k().h.featuresPlaybackRate&&a.k().options().playbackRates&&0<a.k().options().playbackRates.length}s.td=function(){na(this)?this.r("vjs-hidden"):this.p("vjs-hidden")};s.sd=function(){na(this)&&(this.Sc.innerHTML=this.k().playbackRate()+"x")};
  107 +t.Db=t.M.extend({Dc:"button",l:function(a,c){var d=this.label=c.rate,e=this.$c=parseFloat(d,10);c.label=d;c.selected=1===e;t.M.call(this,a,c);this.b(a,"ratechange",this.update)}});t.Db.prototype.u=function(){t.M.prototype.u.call(this);this.k().playbackRate(this.$c)};t.Db.prototype.update=function(){this.selected(this.k().playbackRate()==this.$c)};t.qc=t.w.extend({l:function(a,c){t.w.call(this,a,c);this.update();a.b("posterchange",t.bind(this,this.update))}});s=t.qc.prototype;
  108 +s.dispose=function(){this.k().n("posterchange",this.update);t.w.prototype.dispose.call(this)};s.f=function(){var a=t.f("div",{className:"vjs-poster",tabIndex:-1});t.xd||(this.Pb=t.f("img"),a.appendChild(this.Pb));return a};s.update=function(){var a=this.k().poster();this.oa(a);a?this.show():this.Y()};s.oa=function(a){var c;this.Pb?this.Pb.src=a:(c="",a&&(c='url("'+a+'")'),this.c.style.backgroundImage=c)};s.u=function(){this.d.play()};t.mc=t.a.extend({l:function(a,c){t.a.call(this,a,c)}});
  109 +t.mc.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-loading-spinner"})};t.ub=t.w.extend();t.ub.prototype.f=function(){return t.w.prototype.f.call(this,"div",{className:"vjs-big-play-button",innerHTML:'<span aria-hidden="true"></span>',"aria-label":"play video"})};t.ub.prototype.u=function(){this.d.play()};t.zb=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.update();this.b(a,"error",this.update)}});
  110 +t.zb.prototype.f=function(){var a=t.a.prototype.f.call(this,"div",{className:"vjs-error-display"});this.B=t.f("div");a.appendChild(this.B);return a};t.zb.prototype.update=function(){this.k().error()&&(this.B.innerHTML=this.v(this.k().error().message))};var O;t.j=t.a.extend({l:function(a,c,d){c=c||{};c.dd=l;t.a.call(this,a,c,d);this.featuresProgressEvents||this.se();this.featuresTimeupdateEvents||this.te();this.ge();this.featuresNativeTextTracks||this.Wd();this.ie()}});s=t.j.prototype;
  111 +s.ge=function(){var a,c;a=this.k();c=function(){a.controls()&&!a.usingNativeControls()&&this.Jd()};this.I(c);this.b(a,"controlsenabled",c);this.b(a,"controlsdisabled",this.Ie);this.I(function(){this.networkState&&0<this.networkState()&&this.k().o("loadstart")})};
  112 +s.Jd=function(){var a;this.b("mousedown",this.u);this.b("touchstart",function(){a=this.d.userActive()});this.b("touchmove",function(){a&&this.k().reportUserActivity()});this.b("touchend",function(a){a.preventDefault()});da(this);this.b("tap",this.Ce)};s.Ie=function(){this.n("tap");this.n("touchstart");this.n("touchmove");this.n("touchleave");this.n("touchcancel");this.n("touchend");this.n("click");this.n("mousedown")};
  113 +s.u=function(a){0===a.button&&this.k().controls()&&(this.k().paused()?this.k().play():this.k().pause())};s.Ce=function(){this.k().userActive(!this.k().userActive())};s.se=function(){this.Uc=f;this.af()};s.re=function(){this.Uc=l;this.md()};s.af=function(){this.He=this.setInterval(function(){var a=this.k().bufferedPercent();this.Nd!=a&&this.k().o("progress");this.Nd=a;1===a&&this.md()},500)};s.md=function(){this.clearInterval(this.He)};
  114 +s.te=function(){var a=this.d;this.Zb=f;this.b(a,"play",this.qd);this.b(a,"pause",this.tb);this.N("timeupdate",function(){this.featuresTimeupdateEvents=f;this.Vc()})};s.Vc=function(){var a=this.d;this.Zb=l;this.tb();this.n(a,"play",this.qd);this.n(a,"pause",this.tb)};s.qd=function(){this.Fc&&this.tb();this.Fc=this.setInterval(function(){this.k().o("timeupdate")},250)};s.tb=function(){this.clearInterval(this.Fc);this.k().o("timeupdate")};s.dispose=function(){this.Uc&&this.re();this.Zb&&this.Vc();t.a.prototype.dispose.call(this)};
  115 +s.cc=function(){this.Zb&&this.k().o("timeupdate")};s.ie=function(){function a(){var a=c.ea("textTrackDisplay");a&&a.C()}var c=this.d,d;if(d=this.textTracks())d.addEventListener("removetrack",a),d.addEventListener("addtrack",a),this.b("dispose",t.bind(this,function(){d.removeEventListener("removetrack",a);d.removeEventListener("addtrack",a)}))};
  116 +s.Wd=function(){var a=this.d,c,d,e;window.WebVTT||(e=document.createElement("script"),e.src=a.options()["vtt.js"]||"../node_modules/vtt.js/dist/vtt.js",a.m().appendChild(e),window.WebVTT=f);if(d=this.textTracks())c=function(){var c,d,e;e=a.ea("textTrackDisplay");e.C();for(c=0;c<this.length;c++)d=this[c],d.removeEventListener("cuechange",t.bind(e,e.C)),"showing"===d.mode&&d.addEventListener("cuechange",t.bind(e,e.C))},d.addEventListener("change",c),this.b("dispose",t.bind(this,function(){d.removeEventListener("change",
  117 +c)}))};s.textTracks=function(){this.d.pd=this.d.pd||new t.F;return this.d.pd};s.Z=function(){this.d.ad=this.d.ad||new t.F;return this.d.ad};O=function(a,c,d,e,g){var h=a.textTracks();g=g||{};g.kind=c;d&&(g.label=d);e&&(g.language=e);g.player=a.d;a=new t.t(g);P(h,a);return a};t.j.prototype.addTextTrack=function(a,c,d){if(!a)throw Error("TextTrack kind is required but was not provided");return O(this,a,c,d)};t.j.prototype.ia=function(a){a=O(this,a.kind,a.label,a.language,a);P(this.Z(),a);return{T:a}};
  118 +t.j.prototype.Ea=function(a){Q(this.textTracks(),a);Q(this.Z(),a)};t.j.prototype.fd=m();t.j.prototype.featuresVolumeControl=f;t.j.prototype.featuresFullscreenResize=l;t.j.prototype.featuresPlaybackRate=l;t.j.prototype.featuresProgressEvents=l;t.j.prototype.featuresTimeupdateEvents=l;t.j.prototype.featuresNativeTextTracks=l;
  119 +t.j.hc=function(a){a.Ta=function(c,d){var e=a.gd;e||(e=a.gd=[]);d===b&&(d=e.length);e.splice(d,0,c)};a.rb=function(c){for(var d=a.gd||[],e,g=0;g<d.length;g++)if(e=d[g].fb(c))return d[g];return j};a.Ac=function(c){var d=a.rb(c);return d?d.fb(c):""};a.prototype.na=function(c){var d=a.rb(c);d||(a.S?d=a.S:t.log.error("No source hander found for the current source."));this.ja();this.n("dispose",this.ja);this.ib=c;this.dc=d.Ub(c,this);this.b("dispose",this.ja);return this};a.prototype.ja=function(){this.dc&&
  120 +this.dc.dispose&&this.dc.dispose()}};t.media={};
  121 +t.e=t.j.extend({l:function(a,c,d){var e,g,h;if(c.nativeCaptions===l||c.nativeTextTracks===l)this.featuresNativeTextTracks=l;t.j.call(this,a,c,d);for(d=t.e.Ab.length-1;0<=d;d--)this.b(t.e.Ab[d],this.Xd);(c=c.source)&&(this.c.currentSrc!==c.src||a.L&&3===a.L.he)&&this.na(c);if(this.c.hasChildNodes()){d=this.c.childNodes;e=d.length;for(c=[];e--;)g=d[e],h=g.nodeName.toLowerCase(),"track"===h&&(this.featuresNativeTextTracks?P(this.Z(),g.track):c.push(g));for(d=0;d<c.length;d++)this.c.removeChild(c[d])}this.featuresNativeTextTracks&&
  122 +this.b("loadstart",t.bind(this,this.fe));if(t.Gb&&a.options().nativeControlsForTouch===f){var k,q,r,u;k=this;q=this.k();c=q.controls();k.c.controls=!!c;r=function(){k.c.controls=f};u=function(){k.c.controls=l};q.b("controlsenabled",r);q.b("controlsdisabled",u);c=function(){q.n("controlsenabled",r);q.n("controlsdisabled",u)};k.b("dispose",c);q.b("usingcustomcontrols",c);q.usingNativeControls(f)}a.I(function(){this.src()&&(this.L&&this.q.autoplay&&this.paused())&&(delete this.L.poster,this.play())});
  123 +this.Xa()}});s=t.e.prototype;s.dispose=function(){t.e.Nb(this.c);t.j.prototype.dispose.call(this)};
  124 +s.f=function(){var a=this.d,c,d,e,g=a.L;if(!g||this.movingMediaElementInDOM===l){g?(e=g.cloneNode(l),t.e.Nb(g),g=e,a.L=j):(g=t.f("video"),e=videojs.$.Ba({},a.Ye),(!t.Gb||a.options().nativeControlsForTouch!==f)&&delete e.controls,t.ed(g,t.i.D(e,{id:a.id()+"_html5_api","class":"vjs-tech"})));g.player=a;if(a.q.rd)for(e=0;e<a.q.rd.length;e++)c=a.q.rd[e],d=document.createElement("track"),d.Xb=c.Xb,d.label=c.label,d.jd=c.jd,d.src=c.src,"default"in c&&d.setAttribute("default","default"),g.appendChild(d);
  125 +t.Vb(g,a.m())}c=["autoplay","preload","loop","muted"];for(e=c.length-1;0<=e;e--){d=c[e];var h={};"undefined"!==typeof a.q[d]&&(h[d]=a.q[d]);t.ed(g,h)}return g};s.fe=function(){for(var a=this.c.querySelectorAll("track"),c,d=a.length,e={captions:1,subtitles:1};d--;)if((c=a[d].T)&&c.kind in e&&!a[d]["default"])c.mode="disabled"};s.Xd=function(a){"error"==a.type&&this.error()?this.k().error(this.error().code):(a.bubbles=l,this.k().o(a))};s.play=function(){this.c.play()};s.pause=function(){this.c.pause()};
  126 +s.paused=function(){return this.c.paused};s.currentTime=function(){return this.c.currentTime};s.cc=function(a){try{this.c.currentTime=a}catch(c){t.log(c,"Video is not ready. (Video.js)")}};s.duration=function(){return this.c.duration||0};s.buffered=function(){return this.c.buffered};s.volume=function(){return this.c.volume};s.Te=function(a){this.c.volume=a};s.muted=function(){return this.c.muted};s.Pe=function(a){this.c.muted=a};s.width=function(){return this.c.offsetWidth};s.height=function(){return this.c.offsetHeight};
  127 +s.Ua=function(){return"function"==typeof this.c.webkitEnterFullScreen&&(/Android/.test(t.P)||!/Chrome|Mac OS X 10.5/.test(t.P))?f:l};s.Ic=function(){var a=this.c;"webkitDisplayingFullscreen"in a&&this.N("webkitbeginfullscreen",function(){this.d.isFullscreen(f);this.N("webkitendfullscreen",function(){this.d.isFullscreen(l);this.d.o("fullscreenchange")});this.d.o("fullscreenchange")});a.paused&&a.networkState<=a.kf?(this.c.play(),this.setTimeout(function(){a.pause();a.webkitEnterFullScreen()},0)):a.webkitEnterFullScreen()};
  128 +s.Yd=function(){this.c.webkitExitFullScreen()};function oa(a,c){var d=/^blob\:/i;return c&&a&&d.test(a)?c:a}s.src=function(a){var c=this.c.src;if(a===b)return oa(c,this.hd);this.oa(a)};s.oa=function(a){this.c.src=a};s.load=function(){this.c.load()};s.currentSrc=function(){var a=this.c.currentSrc;return!this.ib?a:oa(a,this.ib.src)};s.poster=function(){return this.c.poster};s.fd=function(a){this.c.poster=a};s.Sa=function(){return this.c.Sa};s.Re=function(a){this.c.Sa=a};s.autoplay=function(){return this.c.autoplay};
  129 +s.Me=function(a){this.c.autoplay=a};s.controls=function(){return this.c.controls};s.loop=function(){return this.c.loop};s.Oe=function(a){this.c.loop=a};s.error=function(){return this.c.error};s.seeking=function(){return this.c.seeking};s.seekable=function(){return this.c.seekable};s.ended=function(){return this.c.ended};s.playbackRate=function(){return this.c.playbackRate};s.Qe=function(a){this.c.playbackRate=a};s.networkState=function(){return this.c.networkState};s.readyState=function(){return this.c.readyState};
  130 +s.textTracks=function(){return!this.featuresNativeTextTracks?t.j.prototype.textTracks.call(this):this.c.textTracks};s.addTextTrack=function(a,c,d){return!this.featuresNativeTextTracks?t.j.prototype.addTextTrack.call(this,a,c,d):this.c.addTextTrack(a,c,d)};
  131 +s.ia=function(a){if(!this.featuresNativeTextTracks)return t.j.prototype.ia.call(this,a);var c=document.createElement("track");a=a||{};a.kind&&(c.kind=a.kind);a.label&&(c.label=a.label);if(a.language||a.srclang)c.srclang=a.language||a.srclang;a["default"]&&(c["default"]=a["default"]);a.id&&(c.id=a.id);a.src&&(c.src=a.src);this.m().appendChild(c);c.track.mode="metadata"===c.T.kind?"hidden":"disabled";c.onload=function(){var a=c.track;2<=c.readyState&&("metadata"===a.kind&&"hidden"!==a.mode?a.mode="hidden":
  132 +"metadata"!==a.kind&&"disabled"!==a.mode&&(a.mode="disabled"),c.onload=j)};P(this.Z(),c.T);return c};s.Ea=function(a){if(!this.featuresNativeTextTracks)return t.j.prototype.Ea.call(this,a);var c,d;Q(this.Z(),a);c=this.m().querySelectorAll("track");for(d=0;d<c.length;d++)if(c[d]===a||c[d].track===a){c[d].parentNode.removeChild(c[d]);break}};t.e.isSupported=function(){try{t.A.volume=0.5}catch(a){return l}return!!t.A.canPlayType};t.j.hc(t.e);var pa=t.e.prototype.na,qa=t.e.prototype.ja;
  133 +t.e.prototype.na=function(a){var c=pa.call(this,a);this.hd=a.src;return c};t.e.prototype.ja=function(){this.hd=b;return qa.call(this)};t.e.S={};t.e.S.fb=function(a){function c(a){try{return t.A.canPlayType(a)}catch(c){return""}}return a.type?c(a.type):a.src?(a=(a=a.src.match(/\.([^.\/\?]+)(\?[^\/]+)?$/i))&&a[1],c("video/"+a)):""};t.e.S.Ub=function(a,c){c.oa(a.src)};t.e.S.dispose=m();t.e.Ta(t.e.S);t.e.Pd=function(){var a=t.A.volume;t.A.volume=a/2+0.1;return a!==t.A.volume};
  134 +t.e.Od=function(){var a=t.A.playbackRate;t.A.playbackRate=a/2+0.1;return a!==t.A.playbackRate};t.e.We=function(){var a;(a=!!t.A.textTracks)&&0<t.A.textTracks.length&&(a="number"!==typeof t.A.textTracks[0].mode);a&&t.kc&&(a=l);return a};t.e.prototype.featuresVolumeControl=t.e.Pd();t.e.prototype.featuresPlaybackRate=t.e.Od();t.e.prototype.movingMediaElementInDOM=!t.Bd;t.e.prototype.featuresFullscreenResize=f;t.e.prototype.featuresProgressEvents=f;t.e.prototype.featuresNativeTextTracks=t.e.We();
  135 +var S,ra=/^application\/(?:x-|vnd\.apple\.)mpegurl/i,sa=/^video\/mp4/i;t.e.Xc=function(){4<=t.ic&&(S||(S=t.A.constructor.prototype.canPlayType),t.A.constructor.prototype.canPlayType=function(a){return a&&ra.test(a)?"maybe":S.call(this,a)});t.Fd&&(S||(S=t.A.constructor.prototype.canPlayType),t.A.constructor.prototype.canPlayType=function(a){return a&&sa.test(a)?"maybe":S.call(this,a)})};t.e.cf=function(){var a=t.A.constructor.prototype.canPlayType;t.A.constructor.prototype.canPlayType=S;S=j;return a};
  136 +t.e.Xc();t.e.Ab="loadstart suspend abort error emptied stalled loadedmetadata loadeddata canplay canplaythrough playing waiting seeking seeked ended durationchange timeupdate progress play pause ratechange volumechange".split(" ");t.e.Nb=function(a){if(a){a.player=j;for(a.parentNode&&a.parentNode.removeChild(a);a.hasChildNodes();)a.removeChild(a.firstChild);a.removeAttribute("src");if("function"===typeof a.load)try{a.load()}catch(c){}}};
  137 +t.g=t.j.extend({l:function(a,c,d){t.j.call(this,a,c,d);var e=c.source;d=a.id()+"_flash_api";var g=a.q,g=t.i.D({readyFunction:"videojs.Flash.onReady",eventProxyFunction:"videojs.Flash.onEvent",errorEventProxyFunction:"videojs.Flash.onError",autoplay:g.autoplay,preload:g.Sa,loop:g.loop,muted:g.muted},c.flashVars),h=t.i.D({wmode:"opaque",bgcolor:"#000000"},c.params);d=t.i.D({id:d,name:d,"class":"vjs-tech"},c.attributes);e&&this.I(function(){this.na(e)});t.Vb(this.c,c.parentEl);c.startTime&&this.I(function(){this.load();
  138 +this.play();this.currentTime(c.startTime)});t.kc&&this.I(function(){this.b("mousemove",function(){this.k().o({type:"mousemove",bubbles:l})})});a.b("stageclick",a.reportUserActivity);this.c=t.g.Hc(c.swf,this.c,g,h,d)}});s=t.g.prototype;s.dispose=function(){t.j.prototype.dispose.call(this)};s.play=function(){this.c.vjs_play()};s.pause=function(){this.c.vjs_pause()};s.src=function(a){return a===b?this.currentSrc():this.oa(a)};
  139 +s.oa=function(a){a=t.ae(a);this.c.vjs_src(a);if(this.d.autoplay()){var c=this;this.setTimeout(function(){c.play()},0)}};t.g.prototype.setCurrentTime=function(a){this.pe=a;this.c.vjs_setProperty("currentTime",a);t.j.prototype.cc.call(this)};t.g.prototype.currentTime=function(){return this.seeking()?this.pe||0:this.c.vjs_getProperty("currentTime")};t.g.prototype.currentSrc=function(){return this.ib?this.ib.src:this.c.vjs_getProperty("currentSrc")};t.g.prototype.load=function(){this.c.vjs_load()};
  140 +t.g.prototype.poster=function(){this.c.vjs_getProperty("poster")};t.g.prototype.setPoster=m();s=t.g.prototype;s.seekable=function(){return 0===this.duration()?t.ya():t.ya(0,this.duration())};s.buffered=function(){return!this.c.vjs_getProperty?t.ya():t.ya(0,this.c.vjs_getProperty("buffered"))};s.duration=function(){return!this.c.vjs_getProperty?0:this.c.vjs_getProperty("duration")};s.Ua=p(l);s.Ic=p(l);
  141 +function ta(){var a=T[U],c=a.charAt(0).toUpperCase()+a.slice(1);ua["set"+c]=function(c){return this.c.vjs_setProperty(a,c)}}function va(a){ua[a]=function(){return this.c.vjs_getProperty(a)}}
  142 +var ua=t.g.prototype,T="rtmpConnection rtmpStream preload defaultPlaybackRate playbackRate autoplay loop mediaGroup controller controls volume muted defaultMuted".split(" "),wa="error networkState readyState seeking initialTime startOffsetTime paused played ended videoTracks audioTracks videoWidth videoHeight".split(" "),U;for(U=0;U<T.length;U++)va(T[U]),ta();for(U=0;U<wa.length;U++)va(wa[U]);t.g.isSupported=function(){return 10<=t.g.version()[0]};t.j.hc(t.g);t.g.S={};
  143 +t.g.S.fb=function(a){return!a.type?"":a.type.replace(/;.*/,"").toLowerCase()in t.g.$d?"maybe":""};t.g.S.Ub=function(a,c){c.oa(a.src)};t.g.S.dispose=m();t.g.Ta(t.g.S);t.g.$d={"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"};t.g.onReady=function(a){var c;if(c=(a=t.m(a))&&a.parentNode&&a.parentNode.player)a.player=c,t.g.checkReady(c.h)};t.g.checkReady=function(a){a.m()&&(a.m().vjs_getProperty?a.Xa():this.setTimeout(function(){t.g.checkReady(a)},50))};
  144 +t.g.onEvent=function(a,c){t.m(a).player.o(c)};t.g.onError=function(a,c){var d=t.m(a).player,e="FLASH: "+c;"srcnotfound"==c?d.error({code:4,message:e}):d.error(e)};
  145 +t.g.version=function(){var a="0,0,0";try{a=(new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(c){try{navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin&&(a=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1])}catch(d){}}return a.split(",")};
  146 +t.g.Hc=function(a,c,d,e,g){a=t.g.de(a,d,e,g);a=t.f("div",{innerHTML:a}).childNodes[0];d=c.parentNode;c.parentNode.replaceChild(a,c);a[t.expando]=c[t.expando];var h=d.childNodes[0];setTimeout(function(){h.style.display="block"},1E3);return a};
  147 +t.g.de=function(a,c,d,e){var g="",h="",k="";c&&t.i.da(c,function(a,c){g+=a+"="+c+"&amp;"});d=t.i.D({movie:a,flashvars:g,allowScriptAccess:"always",allowNetworking:"all"},d);t.i.da(d,function(a,c){h+='<param name="'+a+'" value="'+c+'" />'});e=t.i.D({data:a,width:"100%",height:"100%"},e);t.i.da(e,function(a,c){k+=a+'="'+c+'" '});return'<object type="application/x-shockwave-flash" '+k+">"+h+"</object>"};t.g.Ve={"rtmp/mp4":"MP4","rtmp/flv":"FLV"};t.g.If=function(a,c){return a+"&"+c};
  148 +t.g.Ue=function(a){var c={Cc:"",nd:""};if(!a)return c;var d=a.indexOf("&"),e;-1!==d?e=d+1:(d=e=a.lastIndexOf("/")+1,0===d&&(d=e=a.length));c.Cc=a.substring(0,d);c.nd=a.substring(e,a.length);return c};t.g.ne=function(a){return a in t.g.Ve};t.g.Hd=/^rtmp[set]?:\/\//i;t.g.me=function(a){return t.g.Hd.test(a)};t.g.bc={};t.g.bc.fb=function(a){return t.g.ne(a.type)||t.g.me(a.src)?"maybe":""};t.g.bc.Ub=function(a,c){var d=t.g.Ue(a.src);c.setRtmpConnection(d.Cc);c.setRtmpStream(d.nd)};t.g.Ta(t.g.bc);
  149 +t.Gd=t.a.extend({l:function(a,c,d){t.a.call(this,a,c,d);if(!a.q.sources||0===a.q.sources.length){c=0;for(d=a.q.techOrder;c<d.length;c++){var e=t.wa(d[c]),g=window.videojs[e];if(g&&g.isSupported()){ka(a,e);break}}}else a.src(a.q.sources)}});t.sc={disabled:"disabled",hidden:"hidden",showing:"showing"};t.Id={subtitles:"subtitles",captions:"captions",descriptions:"descriptions",chapters:"chapters",metadata:"metadata"};
  150 +t.t=function(a){var c,d,e,g,h,k,q,r,u,A,R;a=a||{};if(!a.player)throw Error("A player was not provided.");c=this;if(t.qa)for(R in c=document.createElement("custom"),t.t.prototype)c[R]=t.t.prototype[R];c.d=a.player;e=t.sc[a.mode]||"disabled";g=t.Id[a.kind]||"subtitles";h=a.label||"";k=a.language||a.srclang||"";d=a.id||"vjs_text_track_"+t.s++;if("metadata"===g||"chapters"===g)e="hidden";c.X=[];c.Ja=[];q=new t.W(c.X);r=new t.W(c.Ja);A=l;u=t.bind(c,function(){this.activeCues;A&&(this.trigger("cuechange"),
  151 +A=l)});"disabled"!==e&&c.d.b("timeupdate",u);Object.defineProperty(c,"kind",{get:function(){return g},set:Function.prototype});Object.defineProperty(c,"label",{get:function(){return h},set:Function.prototype});Object.defineProperty(c,"language",{get:function(){return k},set:Function.prototype});Object.defineProperty(c,"id",{get:function(){return d},set:Function.prototype});Object.defineProperty(c,"mode",{get:function(){return e},set:function(a){t.sc[a]&&(e=a,"showing"===e&&this.d.b("timeupdate",u),
  152 +this.o("modechange"))}});Object.defineProperty(c,"cues",{get:function(){return!this.Yb?j:q},set:Function.prototype});Object.defineProperty(c,"activeCues",{get:function(){var a,c,d,e,g;if(!this.Yb)return j;if(0===this.cues.length)return r;e=this.d.currentTime();a=0;c=this.cues.length;for(d=[];a<c;a++)g=this.cues[a],g.startTime<=e&&g.endTime>=e?d.push(g):g.startTime===g.endTime&&(g.startTime<=e&&g.startTime+0.5>=e)&&d.push(g);A=l;if(d.length!==this.Ja.length)A=f;else for(a=0;a<d.length;a++)-1===xa.call(this.Ja,
  153 +d[a])&&(A=f);this.Ja=d;r.sb(this.Ja);return r},set:Function.prototype});a.src?ya(a.src,c):c.Yb=f;if(t.qa)return c};t.t.prototype=t.i.create(t.z.prototype);t.t.prototype.constructor=t.t;t.t.prototype.cb={cuechange:"cuechange"};t.t.prototype.wc=function(a){var c=this.d.textTracks(),d=0;if(c)for(;d<c.length;d++)c[d]!==this&&c[d].bd(a);this.X.push(a);this.cues.sb(this.X)};t.t.prototype.bd=function(a){for(var c=0,d=this.X.length,e,g=l;c<d;c++)e=this.X[c],e===a&&(this.X.splice(c,1),g=f);g&&this.Ec.sb(this.X)};
  154 +var ya,V,xa;ya=function(a,c){t.gf(a,t.bind(this,function(a,e,g){if(a)return t.log.error(a);c.Yb=f;V(g,c)}))};V=function(a,c){if("function"!==typeof window.WebVTT)window.setTimeout(function(){V(a,c)},25);else{var d=new window.WebVTT.Parser(window,window.vttjs,window.WebVTT.StringDecoder());d.oncue=function(a){c.wc(a)};d.onparsingerror=function(a){t.log.error(a)};d.parse(a);d.flush()}};
  155 +xa=function(a,c){var d;if(this==j)throw new TypeError('"this" is null or not defined');var e=Object(this),g=e.length>>>0;if(0===g)return-1;d=+c||0;Infinity===Math.abs(d)&&(d=0);if(d>=g)return-1;for(d=Math.max(0<=d?d:g-Math.abs(d),0);d<g;){if(d in e&&e[d]===a)return d;d++}return-1};
  156 +t.F=function(a){var c=this,d,e=0;if(t.qa)for(d in c=document.createElement("custom"),t.F.prototype)c[d]=t.F.prototype[d];a=a||[];c.Wa=[];for(Object.defineProperty(c,"length",{get:function(){return this.Wa.length}});e<a.length;e++)P(c,a[e]);if(t.qa)return c};t.F.prototype=t.i.create(t.z.prototype);t.F.prototype.constructor=t.F;t.F.prototype.cb={change:"change",addtrack:"addtrack",removetrack:"removetrack"};for(var za in t.F.prototype.cb)t.F.prototype["on"+za]=j;
  157 +function P(a,c){var d=a.Wa.length;""+d in a||Object.defineProperty(a,d,{get:function(){return this.Wa[d]}});c.addEventListener("modechange",t.bind(a,function(){this.o("change")}));a.Wa.push(c);a.o({type:"addtrack",T:c})}function Q(a,c){for(var d=0,e=a.length,g;d<e;d++)if(g=a[d],g===c){a.Wa.splice(d,1);break}a.o({type:"removetrack",T:c})}t.F.prototype.ee=function(a){for(var c=0,d=this.length,e=j,g;c<d;c++)if(g=this[c],g.id===a){e=g;break}return e};
  158 +t.W=function(a){var c=this,d;if(t.qa)for(d in c=document.createElement("custom"),t.W.prototype)c[d]=t.W.prototype[d];t.W.prototype.sb.call(c,a);Object.defineProperty(c,"length",{get:n("qe")});if(t.qa)return c};t.W.prototype.sb=function(a){var c=this.length||0,d=0,e=a.length;this.X=a;this.qe=a.length;a=function(a){""+a in this||Object.defineProperty(this,""+a,{get:function(){return this.X[a]}})};if(c<e)for(d=c;d<e;d++)a.call(this,d)};
  159 +t.W.prototype.ce=function(a){for(var c=0,d=this.length,e=j,g;c<d;c++)if(g=this[c],g.id===a){e=g;break}return e};t.ta=t.a.extend({l:function(a,c,d){t.a.call(this,a,c,d);a.b("loadstart",t.bind(this,this.$e));a.I(t.bind(this,function(){if(a.h&&a.h.featuresNativeTextTracks)this.Y();else{var c,d,h;a.b("fullscreenchange",t.bind(this,this.C));d=a.q.tracks||[];for(c=0;c<d.length;c++)h=d[c],this.d.ia(h)}}))}});t.ta.prototype.$e=function(){this.d.h&&this.d.h.featuresNativeTextTracks?this.Y():this.show()};
  160 +t.ta.prototype.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-text-track-display"})};t.ta.prototype.Qd=function(){"function"===typeof window.WebVTT&&window.WebVTT.processCues(window,[],this.c)};function W(a,c){return"rgba("+parseInt(a[1]+a[1],16)+","+parseInt(a[2]+a[2],16)+","+parseInt(a[3]+a[3],16)+","+c+")"}
  161 +var Aa={yf:"monospace",Ef:"sans-serif",Gf:"serif",zf:'"Andale Mono", "Lucida Console", monospace',Af:'"Courier New", monospace',Cf:"sans-serif",Df:"serif",pf:'"Comic Sans MS", Impact, fantasy',Ff:'"Monotype Corsiva", cursive',Hf:'"Andale Mono", "Lucida Console", monospace, sans-serif'};t.ta.prototype.C=function(){var a=this.d.textTracks(),c=0,d;this.Qd();if(a)for(;c<a.length;c++)d=a[c],"showing"===d.mode&&this.df(d)};
  162 +t.ta.prototype.df=function(a){if("function"===typeof window.WebVTT&&a.activeCues){for(var c=0,d=this.d.textTrackSettings.Lc(),e,g=[];c<a.activeCues.length;c++)g.push(a.activeCues[c]);window.WebVTT.processCues(window,a.activeCues,this.c);for(c=g.length;c--;){a=g[c].qf;d.color&&(a.firstChild.style.color=d.color);if(d.od)try{a.firstChild.style.color=W(d.color||"#fff",d.od)}catch(h){}d.backgroundColor&&(a.firstChild.style.backgroundColor=d.backgroundColor);if(d.zc)try{a.firstChild.style.backgroundColor=
  163 +W(d.backgroundColor||"#000",d.zc)}catch(k){}if(d.gc)if(d.vd)try{a.style.backgroundColor=W(d.gc,d.vd)}catch(q){}else a.style.backgroundColor=d.gc;d.Na&&("dropshadow"===d.Na?a.firstChild.style.textShadow="2px 2px 3px #222, 2px 2px 4px #222, 2px 2px 5px #222":"raised"===d.Na?a.firstChild.style.textShadow="1px 1px #222, 2px 2px #222, 3px 3px #222":"depressed"===d.Na?a.firstChild.style.textShadow="1px 1px #ccc, 0 1px #ccc, -1px -1px #222, 0 -1px #222":"uniform"===d.Na&&(a.firstChild.style.textShadow="0 0 4px #222, 0 0 4px #222, 0 0 4px #222, 0 0 4px #222"));
  164 +d.Rb&&1!==d.Rb&&(e=window.Bf(a.style.fontSize),a.style.fontSize=e*d.Rb+"px",a.style.height="auto",a.style.top="auto",a.style.bottom="2px");d.fontFamily&&"default"!==d.fontFamily&&("small-caps"===d.fontFamily?a.firstChild.style.fontVariant="small-caps":a.firstChild.style.fontFamily=Aa[d.fontFamily])}}};
  165 +t.aa=t.M.extend({l:function(a,c){var d=this.T=c.track,e=a.textTracks(),g,h;e&&(g=t.bind(this,function(){var a="showing"===this.T.mode,c,d,g;if(this instanceof t.Cb){a=f;d=0;for(g=e.length;d<g;d++)if(c=e[d],c.kind===this.T.kind&&"showing"===c.mode){a=l;break}}this.selected(a)}),e.addEventListener("change",g),a.b("dispose",function(){e.removeEventListener("change",g)}));c.label=d.label||d.language||"Unknown";c.selected=d["default"]||"showing"===d.mode;t.M.call(this,a,c);e&&e.onchange===b&&this.b(["tap",
  166 +"click"],function(){if("object"!==typeof window.zd)try{h=new window.zd("change")}catch(a){}h||(h=document.createEvent("Event"),h.initEvent("change",f,f));e.dispatchEvent(h)})}});t.aa.prototype.u=function(){var a=this.T.kind,c=this.d.textTracks(),d,e=0;t.M.prototype.u.call(this);if(c)for(;e<c.length;e++)d=c[e],d.kind===a&&(d.mode=d===this.T?"showing":"disabled")};t.Cb=t.aa.extend({l:function(a,c){c.track={kind:c.kind,player:a,label:c.kind+" off","default":l,mode:"disabled"};t.aa.call(this,a,c);this.selected(f)}});
  167 +t.vb=t.aa.extend({l:function(a,c){c.track={kind:c.kind,player:a,label:c.kind+" settings","default":l,mode:"disabled"};t.aa.call(this,a,c);this.p("vjs-texttrack-settings")}});t.vb.prototype.u=function(){this.k().ea("textTrackSettings").show()};
  168 +t.Q=t.O.extend({l:function(a,c){var d,e;t.O.call(this,a,c);d=this.d.textTracks();1>=this.H.length&&this.Y();d&&(e=t.bind(this,this.update),d.addEventListener("removetrack",e),d.addEventListener("addtrack",e),this.d.b("dispose",function(){d.removeEventListener("removetrack",e);d.removeEventListener("addtrack",e)}))}});
  169 +t.Q.prototype.La=function(){var a=[],c,d;this instanceof t.pa&&(!this.k().h||!this.k().h.featuresNativeTextTracks)&&a.push(new t.vb(this.d,{kind:this.fa}));a.push(new t.Cb(this.d,{kind:this.fa}));d=this.d.textTracks();if(!d)return a;for(var e=0;e<d.length;e++)c=d[e],c.kind===this.fa&&a.push(new t.aa(this.d,{track:c}));return a};t.pa=t.Q.extend({l:function(a,c,d){t.Q.call(this,a,c,d);this.c.setAttribute("aria-label","Captions Menu")}});t.pa.prototype.fa="captions";t.pa.prototype.ua="Captions";
  170 +t.pa.prototype.className="vjs-captions-button";t.pa.prototype.update=function(){var a=2;t.Q.prototype.update.call(this);this.k().h&&this.k().h.featuresNativeTextTracks&&(a=1);this.H&&this.H.length>a?this.show():this.Y()};t.bb=t.Q.extend({l:function(a,c,d){t.Q.call(this,a,c,d);this.c.setAttribute("aria-label","Subtitles Menu")}});t.bb.prototype.fa="subtitles";t.bb.prototype.ua="Subtitles";t.bb.prototype.className="vjs-subtitles-button";
  171 +t.Ya=t.Q.extend({l:function(a,c,d){t.Q.call(this,a,c,d);this.c.setAttribute("aria-label","Chapters Menu")}});s=t.Ya.prototype;s.fa="chapters";s.ua="Chapters";s.className="vjs-chapters-button";s.La=function(){var a=[],c,d;d=this.d.textTracks();if(!d)return a;for(var e=0;e<d.length;e++)c=d[e],c.kind===this.fa&&a.push(new t.aa(this.d,{track:c}));return a};
  172 +s.Ma=function(){for(var a=this.d.textTracks()||[],c=0,d=a.length,e,g,h=this.H=[];c<d;c++)if(e=a[c],e.kind==this.fa)if(e.Ec){g=e;break}else e.mode="hidden",window.setTimeout(t.bind(this,function(){this.Ma()}),100);a=this.Aa;a===b&&(a=new t.ra(this.d),a.xa().appendChild(t.f("li",{className:"vjs-menu-title",innerHTML:t.wa(this.fa),Xe:-1})));if(g){e=g.cues;for(var k,c=0,d=e.length;c<d;c++)k=e[c],k=new t.Za(this.d,{track:g,cue:k}),h.push(k),a.ba(k);this.ba(a)}0<this.H.length&&this.show();return a};
  173 +t.Za=t.M.extend({l:function(a,c){var d=this.T=c.track,e=this.cue=c.cue,g=a.currentTime();c.label=e.text;c.selected=e.startTime<=g&&g<e.endTime;t.M.call(this,a,c);d.addEventListener("cuechange",t.bind(this,this.update))}});t.Za.prototype.u=function(){t.M.prototype.u.call(this);this.d.currentTime(this.cue.startTime);this.update(this.cue.startTime)};t.Za.prototype.update=function(){var a=this.cue,c=this.d.currentTime();this.selected(a.startTime<=c&&c<a.endTime)};
  174 +function X(a){var c;a.Le?c=a.Le[0]:a.options&&(c=a.options[a.options.selectedIndex]);return c.value}function Y(a,c){var d,e;if(c){for(d=0;d<a.options.length&&!(e=a.options[d],e.value===c);d++);a.selectedIndex=d}}
  175 +t.tc=t.a.extend({l:function(a,c){t.a.call(this,a,c);this.Y();t.b(this.m().querySelector(".vjs-done-button"),"click",t.bind(this,function(){this.Ke();this.Y()}));t.b(this.m().querySelector(".vjs-default-button"),"click",t.bind(this,function(){this.m().querySelector(".vjs-fg-color > select").selectedIndex=0;this.m().querySelector(".vjs-bg-color > select").selectedIndex=0;this.m().querySelector(".window-color > select").selectedIndex=0;this.m().querySelector(".vjs-text-opacity > select").selectedIndex=
  176 +0;this.m().querySelector(".vjs-bg-opacity > select").selectedIndex=0;this.m().querySelector(".vjs-window-opacity > select").selectedIndex=0;this.m().querySelector(".vjs-edge-style select").selectedIndex=0;this.m().querySelector(".vjs-font-family select").selectedIndex=0;this.m().querySelector(".vjs-font-percent select").selectedIndex=2;this.C()}));t.b(this.m().querySelector(".vjs-fg-color > select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-bg-color > select"),"change",t.bind(this,
  177 +this.C));t.b(this.m().querySelector(".window-color > select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-text-opacity > select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-bg-opacity > select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-window-opacity > select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-font-percent select"),"change",t.bind(this,this.C));t.b(this.m().querySelector(".vjs-edge-style select"),"change",t.bind(this,
  178 +this.C));t.b(this.m().querySelector(".vjs-font-family select"),"change",t.bind(this,this.C));a.options().persistTextTrackSettings&&this.Je()}});s=t.tc.prototype;s.f=function(){return t.a.prototype.f.call(this,"div",{className:"vjs-caption-settings vjs-modal-overlay",innerHTML:'<div class="vjs-tracksettings"><div class="vjs-tracksettings-colors"><div class="vjs-fg-color vjs-tracksetting"><label class="vjs-label">Foreground</label><select><option value="">---</option><option value="#FFF">White</option><option value="#000">Black</option><option value="#F00">Red</option><option value="#0F0">Green</option><option value="#00F">Blue</option><option value="#FF0">Yellow</option><option value="#F0F">Magenta</option><option value="#0FF">Cyan</option></select><span class="vjs-text-opacity vjs-opacity"><select><option value="">---</option><option value="1">Opaque</option><option value="0.5">Semi-Opaque</option></select></span></div><div class="vjs-bg-color vjs-tracksetting"><label class="vjs-label">Background</label><select><option value="">---</option><option value="#FFF">White</option><option value="#000">Black</option><option value="#F00">Red</option><option value="#0F0">Green</option><option value="#00F">Blue</option><option value="#FF0">Yellow</option><option value="#F0F">Magenta</option><option value="#0FF">Cyan</option></select><span class="vjs-bg-opacity vjs-opacity"><select><option value="">---</option><option value="1">Opaque</option><option value="0.5">Semi-Transparent</option><option value="0">Transparent</option></select></span></div><div class="window-color vjs-tracksetting"><label class="vjs-label">Window</label><select><option value="">---</option><option value="#FFF">White</option><option value="#000">Black</option><option value="#F00">Red</option><option value="#0F0">Green</option><option value="#00F">Blue</option><option value="#FF0">Yellow</option><option value="#F0F">Magenta</option><option value="#0FF">Cyan</option></select><span class="vjs-window-opacity vjs-opacity"><select><option value="">---</option><option value="1">Opaque</option><option value="0.5">Semi-Transparent</option><option value="0">Transparent</option></select></span></div></div><div class="vjs-tracksettings-font"><div class="vjs-font-percent vjs-tracksetting"><label class="vjs-label">Font Size</label><select><option value="0.50">50%</option><option value="0.75">75%</option><option value="1.00" selected>100%</option><option value="1.25">125%</option><option value="1.50">150%</option><option value="1.75">175%</option><option value="2.00">200%</option><option value="3.00">300%</option><option value="4.00">400%</option></select></div><div class="vjs-edge-style vjs-tracksetting"><label class="vjs-label">Text Edge Style</label><select><option value="none">None</option><option value="raised">Raised</option><option value="depressed">Depressed</option><option value="uniform">Uniform</option><option value="dropshadow">Dropshadow</option></select></div><div class="vjs-font-family vjs-tracksetting"><label class="vjs-label">Font Family</label><select><option value="">Default</option><option value="monospaceSerif">Monospace Serif</option><option value="proportionalSerif">Proportional Serif</option><option value="monospaceSansSerif">Monospace Sans-Serif</option><option value="proportionalSansSerif">Proportional Sans-Serif</option><option value="casual">Casual</option><option value="script">Script</option><option value="small-caps">Small Caps</option></select></div></div></div><div class="vjs-tracksettings-controls"><button class="vjs-default-button">Defaults</button><button class="vjs-done-button">Done</button></div>'})};
  179 +s.Lc=function(){var a,c,d,e,g,h,k,q,r,u;a=this.m();g=X(a.querySelector(".vjs-edge-style select"));h=X(a.querySelector(".vjs-font-family select"));k=X(a.querySelector(".vjs-fg-color > select"));d=X(a.querySelector(".vjs-text-opacity > select"));q=X(a.querySelector(".vjs-bg-color > select"));c=X(a.querySelector(".vjs-bg-opacity > select"));r=X(a.querySelector(".window-color > select"));e=X(a.querySelector(".vjs-window-opacity > select"));a=window.parseFloat(X(a.querySelector(".vjs-font-percent > select")));
  180 +c={backgroundOpacity:c,textOpacity:d,windowOpacity:e,edgeStyle:g,fontFamily:h,color:k,backgroundColor:q,windowColor:r,fontPercent:a};for(u in c)(""===c[u]||"none"===c[u]||"fontPercent"===u&&1===c[u])&&delete c[u];return c};
  181 +s.Se=function(a){var c=this.m();Y(c.querySelector(".vjs-edge-style select"),a.Na);Y(c.querySelector(".vjs-font-family select"),a.fontFamily);Y(c.querySelector(".vjs-fg-color > select"),a.color);Y(c.querySelector(".vjs-text-opacity > select"),a.od);Y(c.querySelector(".vjs-bg-color > select"),a.backgroundColor);Y(c.querySelector(".vjs-bg-opacity > select"),a.zc);Y(c.querySelector(".window-color > select"),a.gc);Y(c.querySelector(".vjs-window-opacity > select"),a.vd);(a=a.Rb)&&(a=a.toFixed(2));Y(c.querySelector(".vjs-font-percent > select"),
  182 +a)};s.Je=function(){var a;try{a=JSON.parse(window.localStorage.getItem("vjs-text-track-settings"))}catch(c){}a&&this.Se(a)};s.Ke=function(){var a;if(this.d.options().persistTextTrackSettings){a=this.Lc();try{t.kb(a)?window.localStorage.removeItem("vjs-text-track-settings"):window.localStorage.setItem("vjs-text-track-settings",JSON.stringify(a))}catch(c){}}};s.C=function(){var a=this.d.ea("textTrackDisplay");a&&a.C()};
  183 +if("undefined"!==typeof window.JSON&&"function"===typeof window.JSON.parse)t.JSON=window.JSON;else{t.JSON={};var Z=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;t.JSON.parse=function(a,c){function d(a,e){var k,q,r=a[e];if(r&&"object"===typeof r)for(k in r)Object.prototype.hasOwnProperty.call(r,k)&&(q=d(r,k),q!==b?r[k]=q:delete r[k]);return c.call(a,e,r)}var e;a=String(a);Z.lastIndex=0;Z.test(a)&&(a=a.replace(Z,function(a){return"\\u"+("0000"+
  184 +a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof c?d({"":e},""):e;throw new SyntaxError("JSON.parse(): invalid or malformed JSON data");}}
  185 +t.yc=function(){var a,c,d,e;a=document.getElementsByTagName("video");c=document.getElementsByTagName("audio");var g=[];if(a&&0<a.length){d=0;for(e=a.length;d<e;d++)g.push(a[d])}if(c&&0<c.length){d=0;for(e=c.length;d<e;d++)g.push(c[d])}if(g&&0<g.length){d=0;for(e=g.length;d<e;d++)if((c=g[d])&&c.getAttribute)c.player===b&&(a=c.getAttribute("data-setup"),a!==j&&videojs(c));else{t.Kb();break}}else t.ud||t.Kb()};t.Kb=function(){setTimeout(t.yc,1)};
  186 +"complete"===document.readyState?t.ud=f:t.N(window,"load",function(){t.ud=f});t.Kb();t.Ge=function(a,c){t.Player.prototype[a]=c};var Ba=this;function $(a,c){var d=a.split("."),e=Ba;!(d[0]in e)&&e.execScript&&e.execScript("var "+d[0]);for(var g;d.length&&(g=d.shift());)!d.length&&c!==b?e[g]=c:e=e[g]?e[g]:e[g]={}};$("videojs",t);$("_V_",t);$("videojs.options",t.options);$("videojs.players",t.Da);$("videojs.TOUCH_ENABLED",t.Gb);$("videojs.cache",t.va);$("videojs.Component",t.a);t.a.prototype.player=t.a.prototype.k;t.a.prototype.options=t.a.prototype.options;t.a.prototype.init=t.a.prototype.l;t.a.prototype.dispose=t.a.prototype.dispose;t.a.prototype.createEl=t.a.prototype.f;t.a.prototype.contentEl=t.a.prototype.xa;t.a.prototype.el=t.a.prototype.m;t.a.prototype.addChild=t.a.prototype.ba;
  187 +t.a.prototype.getChild=t.a.prototype.ea;t.a.prototype.getChildById=t.a.prototype.be;t.a.prototype.children=t.a.prototype.children;t.a.prototype.initChildren=t.a.prototype.Oc;t.a.prototype.removeChild=t.a.prototype.removeChild;t.a.prototype.on=t.a.prototype.b;t.a.prototype.off=t.a.prototype.n;t.a.prototype.one=t.a.prototype.N;t.a.prototype.trigger=t.a.prototype.o;t.a.prototype.triggerReady=t.a.prototype.Xa;t.a.prototype.show=t.a.prototype.show;t.a.prototype.hide=t.a.prototype.Y;
  188 +t.a.prototype.width=t.a.prototype.width;t.a.prototype.height=t.a.prototype.height;t.a.prototype.dimensions=t.a.prototype.Ud;t.a.prototype.ready=t.a.prototype.I;t.a.prototype.addClass=t.a.prototype.p;t.a.prototype.removeClass=t.a.prototype.r;t.a.prototype.hasClass=t.a.prototype.Qa;t.a.prototype.buildCSSClass=t.a.prototype.V;t.a.prototype.localize=t.a.prototype.v;t.a.prototype.setInterval=t.a.prototype.setInterval;t.a.prototype.setTimeout=t.a.prototype.setTimeout;$("videojs.EventEmitter",t.z);
  189 +t.z.prototype.on=t.z.prototype.b;t.z.prototype.addEventListener=t.z.prototype.addEventListener;t.z.prototype.off=t.z.prototype.n;t.z.prototype.removeEventListener=t.z.prototype.removeEventListener;t.z.prototype.one=t.z.prototype.N;t.z.prototype.trigger=t.z.prototype.o;t.z.prototype.dispatchEvent=t.z.prototype.dispatchEvent;t.Player.prototype.ended=t.Player.prototype.ended;t.Player.prototype.enterFullWindow=t.Player.prototype.Jc;t.Player.prototype.exitFullWindow=t.Player.prototype.Ob;
  190 +t.Player.prototype.preload=t.Player.prototype.Sa;t.Player.prototype.remainingTime=t.Player.prototype.remainingTime;t.Player.prototype.supportsFullScreen=t.Player.prototype.Ua;t.Player.prototype.currentType=t.Player.prototype.Rd;t.Player.prototype.requestFullScreen=t.Player.prototype.requestFullScreen;t.Player.prototype.requestFullscreen=t.Player.prototype.requestFullscreen;t.Player.prototype.cancelFullScreen=t.Player.prototype.cancelFullScreen;t.Player.prototype.exitFullscreen=t.Player.prototype.exitFullscreen;
  191 +t.Player.prototype.isFullScreen=t.Player.prototype.isFullScreen;t.Player.prototype.isFullscreen=t.Player.prototype.isFullscreen;t.Player.prototype.textTracks=t.Player.prototype.textTracks;t.Player.prototype.remoteTextTracks=t.Player.prototype.Z;t.Player.prototype.addTextTrack=t.Player.prototype.addTextTrack;t.Player.prototype.addRemoteTextTrack=t.Player.prototype.ia;t.Player.prototype.removeRemoteTextTrack=t.Player.prototype.Ea;t.Player.prototype.seekable=t.Player.prototype.seekable;
  192 +$("videojs.MediaLoader",t.Gd);$("videojs.TextTrackDisplay",t.ta);$("videojs.ControlBar",t.wb);$("videojs.Button",t.w);$("videojs.PlayToggle",t.oc);$("videojs.FullscreenToggle",t.$a);$("videojs.BigPlayButton",t.ub);$("videojs.LoadingSpinner",t.mc);$("videojs.CurrentTimeDisplay",t.xb);$("videojs.DurationDisplay",t.yb);$("videojs.TimeDivider",t.uc);$("videojs.RemainingTimeDisplay",t.Fb);$("videojs.LiveDisplay",t.lc);$("videojs.ErrorDisplay",t.zb);$("videojs.Slider",t.U);$("videojs.ProgressControl",t.Eb);
  193 +$("videojs.SeekBar",t.rc);$("videojs.LoadProgressBar",t.Bb);$("videojs.PlayProgressBar",t.nc);$("videojs.SeekHandle",t.ab);$("videojs.VolumeControl",t.Ib);$("videojs.VolumeBar",t.Hb);$("videojs.VolumeLevel",t.vc);$("videojs.VolumeMenuButton",t.Ia);$("videojs.VolumeHandle",t.Jb);$("videojs.MuteToggle",t.sa);$("videojs.PosterImage",t.qc);$("videojs.Menu",t.ra);$("videojs.MenuItem",t.M);$("videojs.MenuButton",t.O);$("videojs.PlaybackRateMenuButton",t.pc);$("videojs.ChaptersTrackMenuItem",t.Za);
  194 +$("videojs.TextTrackButton",t.Q);$("videojs.TextTrackMenuItem",t.aa);$("videojs.OffTextTrackMenuItem",t.Cb);$("videojs.CaptionSettingsMenuItem",t.vb);t.O.prototype.createItems=t.O.prototype.La;t.Q.prototype.createItems=t.Q.prototype.La;t.Ya.prototype.createItems=t.Ya.prototype.La;$("videojs.SubtitlesButton",t.bb);$("videojs.CaptionsButton",t.pa);$("videojs.ChaptersButton",t.Ya);$("videojs.MediaTechController",t.j);t.j.withSourceHandlers=t.j.hc;t.j.prototype.featuresVolumeControl=t.j.prototype.vf;
  195 +t.j.prototype.featuresFullscreenResize=t.j.prototype.rf;t.j.prototype.featuresPlaybackRate=t.j.prototype.sf;t.j.prototype.featuresProgressEvents=t.j.prototype.tf;t.j.prototype.featuresTimeupdateEvents=t.j.prototype.uf;t.j.prototype.setPoster=t.j.prototype.fd;t.j.prototype.textTracks=t.j.prototype.textTracks;t.j.prototype.remoteTextTracks=t.j.prototype.Z;t.j.prototype.addTextTrack=t.j.prototype.addTextTrack;t.j.prototype.addRemoteTextTrack=t.j.prototype.ia;t.j.prototype.removeRemoteTextTrack=t.j.prototype.Ea;
  196 +$("videojs.Html5",t.e);t.e.Events=t.e.Ab;t.e.isSupported=t.e.isSupported;t.e.canPlaySource=t.e.Ac;t.e.patchCanPlayType=t.e.Xc;t.e.unpatchCanPlayType=t.e.cf;t.e.prototype.setCurrentTime=t.e.prototype.cc;t.e.prototype.setVolume=t.e.prototype.Te;t.e.prototype.setMuted=t.e.prototype.Pe;t.e.prototype.setPreload=t.e.prototype.Re;t.e.prototype.setAutoplay=t.e.prototype.Me;t.e.prototype.setLoop=t.e.prototype.Oe;t.e.prototype.enterFullScreen=t.e.prototype.Ic;t.e.prototype.exitFullScreen=t.e.prototype.Yd;
  197 +t.e.prototype.playbackRate=t.e.prototype.playbackRate;t.e.prototype.setPlaybackRate=t.e.prototype.Qe;t.e.registerSourceHandler=t.e.Ta;t.e.selectSourceHandler=t.e.rb;t.e.prototype.setSource=t.e.prototype.na;t.e.prototype.disposeSourceHandler=t.e.prototype.ja;t.e.prototype.textTracks=t.e.prototype.textTracks;t.e.prototype.remoteTextTracks=t.e.prototype.Z;t.e.prototype.addTextTrack=t.e.prototype.addTextTrack;t.e.prototype.addRemoteTextTrack=t.e.prototype.ia;t.e.prototype.removeRemoteTextTrack=t.e.prototype.Ea;
  198 +$("videojs.Flash",t.g);t.g.isSupported=t.g.isSupported;t.g.canPlaySource=t.g.Ac;t.g.onReady=t.g.onReady;t.g.embed=t.g.Hc;t.g.version=t.g.version;t.g.prototype.setSource=t.g.prototype.na;t.g.registerSourceHandler=t.g.Ta;t.g.selectSourceHandler=t.g.rb;t.g.prototype.setSource=t.g.prototype.na;t.g.prototype.disposeSourceHandler=t.g.prototype.ja;$("videojs.TextTrack",t.t);$("videojs.TextTrackList",t.F);$("videojs.TextTrackCueList",t.W);$("videojs.TextTrackSettings",t.tc);t.t.prototype.id=t.t.prototype.id;
  199 +t.t.prototype.label=t.t.prototype.label;t.t.prototype.kind=t.t.prototype.Xb;t.t.prototype.mode=t.t.prototype.mode;t.t.prototype.cues=t.t.prototype.Ec;t.t.prototype.activeCues=t.t.prototype.of;t.t.prototype.addCue=t.t.prototype.wc;t.t.prototype.removeCue=t.t.prototype.bd;t.F.prototype.getTrackById=t.F.prototype.ee;t.W.prototype.getCueById=t.F.prototype.ce;$("videojs.CaptionsTrack",t.hf);$("videojs.SubtitlesTrack",t.nf);$("videojs.ChaptersTrack",t.jf);$("videojs.autoSetup",t.yc);
  200 +$("videojs.plugin",t.Ge);$("videojs.createTimeRange",t.ya);$("videojs.util",t.$);t.$.mergeOptions=t.$.Ba;t.addLanguage=t.Kd;})();
  201 +
  202 +/* vtt.js - v0.12.1 (https://github.com/mozilla/vtt.js) built on 08-07-2015 */
  203 +!function(a){var b=a.vttjs={},c=b.VTTCue,d=b.VTTRegion,e=a.VTTCue,f=a.VTTRegion;b.shim=function(){b.VTTCue=c,b.VTTRegion=d},b.restore=function(){b.VTTCue=e,b.VTTRegion=f}}(this),function(a,b){function c(a){if("string"!=typeof a)return!1;var b=h[a.toLowerCase()];return b?a.toLowerCase():!1}function d(a){if("string"!=typeof a)return!1;var b=i[a.toLowerCase()];return b?a.toLowerCase():!1}function e(a){for(var b=1;b<arguments.length;b++){var c=arguments[b];for(var d in c)a[d]=c[d]}return a}function f(a,b,f){var h=this,i=/MSIE\s8\.0/.test(navigator.userAgent),j={};i?h=document.createElement("custom"):j.enumerable=!0,h.hasBeenReset=!1;var k="",l=!1,m=a,n=b,o=f,p=null,q="",r=!0,s="auto",t="start",u=50,v="middle",w=50,x="middle";return Object.defineProperty(h,"id",e({},j,{get:function(){return k},set:function(a){k=""+a}})),Object.defineProperty(h,"pauseOnExit",e({},j,{get:function(){return l},set:function(a){l=!!a}})),Object.defineProperty(h,"startTime",e({},j,{get:function(){return m},set:function(a){if("number"!=typeof a)throw new TypeError("Start time must be set to a number.");m=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"endTime",e({},j,{get:function(){return n},set:function(a){if("number"!=typeof a)throw new TypeError("End time must be set to a number.");n=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"text",e({},j,{get:function(){return o},set:function(a){o=""+a,this.hasBeenReset=!0}})),Object.defineProperty(h,"region",e({},j,{get:function(){return p},set:function(a){p=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"vertical",e({},j,{get:function(){return q},set:function(a){var b=c(a);if(b===!1)throw new SyntaxError("An invalid or illegal string was specified.");q=b,this.hasBeenReset=!0}})),Object.defineProperty(h,"snapToLines",e({},j,{get:function(){return r},set:function(a){r=!!a,this.hasBeenReset=!0}})),Object.defineProperty(h,"line",e({},j,{get:function(){return s},set:function(a){if("number"!=typeof a&&a!==g)throw new SyntaxError("An invalid number or illegal string was specified.");s=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"lineAlign",e({},j,{get:function(){return t},set:function(a){var b=d(a);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");t=b,this.hasBeenReset=!0}})),Object.defineProperty(h,"position",e({},j,{get:function(){return u},set:function(a){if(0>a||a>100)throw new Error("Position must be between 0 and 100.");u=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"positionAlign",e({},j,{get:function(){return v},set:function(a){var b=d(a);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");v=b,this.hasBeenReset=!0}})),Object.defineProperty(h,"size",e({},j,{get:function(){return w},set:function(a){if(0>a||a>100)throw new Error("Size must be between 0 and 100.");w=a,this.hasBeenReset=!0}})),Object.defineProperty(h,"align",e({},j,{get:function(){return x},set:function(a){var b=d(a);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");x=b,this.hasBeenReset=!0}})),h.displayState=void 0,i?h:void 0}var g="auto",h={"":!0,lr:!0,rl:!0},i={start:!0,middle:!0,end:!0,left:!0,right:!0};f.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)},a.VTTCue=a.VTTCue||f,b.VTTCue=f}(this,this.vttjs||{}),function(a,b){function c(a){if("string"!=typeof a)return!1;var b=f[a.toLowerCase()];return b?a.toLowerCase():!1}function d(a){return"number"==typeof a&&a>=0&&100>=a}function e(){var a=100,b=3,e=0,f=100,g=0,h=100,i="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return a},set:function(b){if(!d(b))throw new Error("Width must be between 0 and 100.");a=b}},lines:{enumerable:!0,get:function(){return b},set:function(a){if("number"!=typeof a)throw new TypeError("Lines must be set to a number.");b=a}},regionAnchorY:{enumerable:!0,get:function(){return f},set:function(a){if(!d(a))throw new Error("RegionAnchorX must be between 0 and 100.");f=a}},regionAnchorX:{enumerable:!0,get:function(){return e},set:function(a){if(!d(a))throw new Error("RegionAnchorY must be between 0 and 100.");e=a}},viewportAnchorY:{enumerable:!0,get:function(){return h},set:function(a){if(!d(a))throw new Error("ViewportAnchorY must be between 0 and 100.");h=a}},viewportAnchorX:{enumerable:!0,get:function(){return g},set:function(a){if(!d(a))throw new Error("ViewportAnchorX must be between 0 and 100.");g=a}},scroll:{enumerable:!0,get:function(){return i},set:function(a){var b=c(a);if(b===!1)throw new SyntaxError("An invalid or illegal string was specified.");i=b}}})}var f={"":!0,up:!0};a.VTTRegion=a.VTTRegion||e,b.VTTRegion=e}(this,this.vttjs||{}),function(a){function b(a,b){this.name="ParsingError",this.code=a.code,this.message=b||a.message}function c(a){function b(a,b,c,d){return 3600*(0|a)+60*(0|b)+(0|c)+(0|d)/1e3}var c=a.match(/^(\d+):(\d{2})(:\d{2})?\.(\d{3})/);return c?c[3]?b(c[1],c[2],c[3].replace(":",""),c[4]):c[1]>59?b(c[1],c[2],0,c[4]):b(0,c[1],c[2],c[4]):null}function d(){this.values=o(null)}function e(a,b,c,d){var e=d?a.split(d):[a];for(var f in e)if("string"==typeof e[f]){var g=e[f].split(c);if(2===g.length){var h=g[0],i=g[1];b(h,i)}}}function f(a,f,g){function h(){var d=c(a);if(null===d)throw new b(b.Errors.BadTimeStamp,"Malformed timestamp: "+k);return a=a.replace(/^[^\sa-zA-Z-]+/,""),d}function i(a,b){var c=new d;e(a,function(a,b){switch(a){case"region":for(var d=g.length-1;d>=0;d--)if(g[d].id===b){c.set(a,g[d].region);break}break;case"vertical":c.alt(a,b,["rl","lr"]);break;case"line":var e=b.split(","),f=e[0];c.integer(a,f),c.percent(a,f)?c.set("snapToLines",!1):null,c.alt(a,f,["auto"]),2===e.length&&c.alt("lineAlign",e[1],["start","middle","end"]);break;case"position":e=b.split(","),c.percent(a,e[0]),2===e.length&&c.alt("positionAlign",e[1],["start","middle","end"]);break;case"size":c.percent(a,b);break;case"align":c.alt(a,b,["start","middle","end","left","right"])}},/:/,/\s/),b.region=c.get("region",null),b.vertical=c.get("vertical",""),b.line=c.get("line","auto"),b.lineAlign=c.get("lineAlign","start"),b.snapToLines=c.get("snapToLines",!0),b.size=c.get("size",100),b.align=c.get("align","middle"),b.position=c.get("position",{start:0,left:0,middle:50,end:100,right:100},b.align),b.positionAlign=c.get("positionAlign",{start:"start",left:"start",middle:"middle",end:"end",right:"end"},b.align)}function j(){a=a.replace(/^\s+/,"")}var k=a;if(j(),f.startTime=h(),j(),"-->"!==a.substr(0,3))throw new b(b.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '-->'): "+k);a=a.substr(3),j(),f.endTime=h(),j(),i(a,f)}function g(a,b){function d(){function a(a){return b=b.substr(a.length),a}if(!b)return null;var c=b.match(/^([^<]*)(<[^>]+>?)?/);return a(c[1]?c[1]:c[2])}function e(a){return p[a]}function f(a){for(;o=a.match(/&(amp|lt|gt|lrm|rlm|nbsp);/);)a=a.replace(o[0],e);return a}function g(a,b){return!s[b.localName]||s[b.localName]===a.localName}function h(b,c){var d=q[b];if(!d)return null;var e=a.document.createElement(d);e.localName=d;var f=r[b];return f&&c&&(e[f]=c.trim()),e}for(var i,j=a.document.createElement("div"),k=j,l=[];null!==(i=d());)if("<"!==i[0])k.appendChild(a.document.createTextNode(f(i)));else{if("/"===i[1]){l.length&&l[l.length-1]===i.substr(2).replace(">","")&&(l.pop(),k=k.parentNode);continue}var m,n=c(i.substr(1,i.length-2));if(n){m=a.document.createProcessingInstruction("timestamp",n),k.appendChild(m);continue}var o=i.match(/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/);if(!o)continue;if(m=h(o[1],o[3]),!m)continue;if(!g(k,m))continue;o[2]&&(m.className=o[2].substr(1).replace("."," ")),l.push(o[1]),k.appendChild(m),k=m}return j}function h(a){function b(a,b){for(var c=b.childNodes.length-1;c>=0;c--)a.push(b.childNodes[c])}function c(a){if(!a||!a.length)return null;var d=a.pop(),e=d.textContent||d.innerText;if(e){var f=e.match(/^.*(\n|\r)/);return f?(a.length=0,f[0]):e}return"ruby"===d.tagName?c(a):d.childNodes?(b(a,d),c(a)):void 0}var d,e=[],f="";if(!a||!a.childNodes)return"ltr";for(b(e,a);f=c(e);)for(var g=0;g<f.length;g++){d=f.charCodeAt(g);for(var h=0;h<t.length;h++)if(t[h]===d)return"rtl"}return"ltr"}function i(a){if("number"==typeof a.line&&(a.snapToLines||a.line>=0&&a.line<=100))return a.line;if(!a.track||!a.track.textTrackList||!a.track.textTrackList.mediaElement)return-1;for(var b=a.track,c=b.textTrackList,d=0,e=0;e<c.length&&c[e]!==b;e++)"showing"===c[e].mode&&d++;return-1*++d}function j(){}function k(a,b,c){var d=/MSIE\s8\.0/.test(navigator.userAgent),e="rgba(255, 255, 255, 1)",f="rgba(0, 0, 0, 0.8)";d&&(e="rgb(255, 255, 255)",f="rgb(0, 0, 0)"),j.call(this),this.cue=b,this.cueDiv=g(a,b.text);var i={color:e,backgroundColor:f,position:"relative",left:0,right:0,top:0,bottom:0,display:"inline"};d||(i.writingMode=""===b.vertical?"horizontal-tb":"lr"===b.vertical?"vertical-lr":"vertical-rl",i.unicodeBidi="plaintext"),this.applyStyles(i,this.cueDiv),this.div=a.document.createElement("div"),i={textAlign:"middle"===b.align?"center":b.align,font:c.font,whiteSpace:"pre-line",position:"absolute"},d||(i.direction=h(this.cueDiv),i.writingMode=""===b.vertical?"horizontal-tb":"lr"===b.vertical?"vertical-lr":"vertical-rl".stylesunicodeBidi="plaintext"),this.applyStyles(i),this.div.appendChild(this.cueDiv);var k=0;switch(b.positionAlign){case"start":k=b.position;break;case"middle":k=b.position-b.size/2;break;case"end":k=b.position-b.size}this.applyStyles(""===b.vertical?{left:this.formatStyle(k,"%"),width:this.formatStyle(b.size,"%")}:{top:this.formatStyle(k,"%"),height:this.formatStyle(b.size,"%")}),this.move=function(a){this.applyStyles({top:this.formatStyle(a.top,"px"),bottom:this.formatStyle(a.bottom,"px"),left:this.formatStyle(a.left,"px"),right:this.formatStyle(a.right,"px"),height:this.formatStyle(a.height,"px"),width:this.formatStyle(a.width,"px")})}}function l(a){var b,c,d,e,f=/MSIE\s8\.0/.test(navigator.userAgent);if(a.div){c=a.div.offsetHeight,d=a.div.offsetWidth,e=a.div.offsetTop;var g=(g=a.div.childNodes)&&(g=g[0])&&g.getClientRects&&g.getClientRects();a=a.div.getBoundingClientRect(),b=g?Math.max(g[0]&&g[0].height||0,a.height/g.length):0}this.left=a.left,this.right=a.right,this.top=a.top||e,this.height=a.height||c,this.bottom=a.bottom||e+(a.height||c),this.width=a.width||d,this.lineHeight=void 0!==b?b:a.lineHeight,f&&!this.lineHeight&&(this.lineHeight=13)}function m(a,b,c,d){function e(a,b){for(var e,f=new l(a),g=1,h=0;h<b.length;h++){for(;a.overlapsOppositeAxis(c,b[h])||a.within(c)&&a.overlapsAny(d);)a.move(b[h]);if(a.within(c))return a;var i=a.intersectPercentage(c);g>i&&(e=new l(a),g=i),a=new l(f)}return e||f}var f=new l(b),g=b.cue,h=i(g),j=[];if(g.snapToLines){var k;switch(g.vertical){case"":j=["+y","-y"],k="height";break;case"rl":j=["+x","-x"],k="width";break;case"lr":j=["-x","+x"],k="width"}var m=f.lineHeight,n=m*Math.round(h),o=c[k]+m,p=j[0];Math.abs(n)>o&&(n=0>n?-1:1,n*=Math.ceil(o/m)*m),0>h&&(n+=""===g.vertical?c.height:c.width,j=j.reverse()),f.move(p,n)}else{var q=f.lineHeight/c.height*100;switch(g.lineAlign){case"middle":h-=q/2;break;case"end":h-=q}switch(g.vertical){case"":b.applyStyles({top:b.formatStyle(h,"%")});break;case"rl":b.applyStyles({left:b.formatStyle(h,"%")});break;case"lr":b.applyStyles({right:b.formatStyle(h,"%")})}j=["+y","-x","+x","-y"],f=new l(b)}var r=e(f,j);b.move(r.toCSSCompatValues(c))}function n(){}var o=Object.create||function(){function a(){}return function(b){if(1!==arguments.length)throw new Error("Object.create shim only accepts one parameter.");return a.prototype=b,new a}}();b.prototype=o(Error.prototype),b.prototype.constructor=b,b.Errors={BadSignature:{code:0,message:"Malformed WebVTT signature."},BadTimeStamp:{code:1,message:"Malformed time stamp."}},d.prototype={set:function(a,b){this.get(a)||""===b||(this.values[a]=b)},get:function(a,b,c){return c?this.has(a)?this.values[a]:b[c]:this.has(a)?this.values[a]:b},has:function(a){return a in this.values},alt:function(a,b,c){for(var d=0;d<c.length;++d)if(b===c[d]){this.set(a,b);break}},integer:function(a,b){/^-?\d+$/.test(b)&&this.set(a,parseInt(b,10))},percent:function(a,b){var c;return(c=b.match(/^([\d]{1,3})(\.[\d]*)?%$/))&&(b=parseFloat(b),b>=0&&100>=b)?(this.set(a,b),!0):!1}};var p={"&amp;":"&","&lt;":"<","&gt;":">","&lrm;":"‎","&rlm;":"‏","&nbsp;":" "},q={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},r={v:"title",lang:"lang"},s={rt:"ruby"},t=[1470,1472,1475,1478,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1520,1521,1522,1523,1524,1544,1547,1549,1563,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1645,1646,1647,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1765,1766,1774,1775,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1807,1808,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1969,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2e3,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2036,2037,2042,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2068,2069,2074,2084,2088,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2142,2208,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,8207,64285,64287,64288,64289,64290,64291,64292,64293,64294,64295,64296,64298,64299,64300,64301,64302,64303,64304,64305,64306,64307,64308,64309,64310,64312,64313,64314,64315,64316,64318,64320,64321,64323,64324,64326,64327,64328,64329,64330,64331,64332,64333,64334,64335,64336,64337,64338,64339,64340,64341,64342,64343,64344,64345,64346,64347,64348,64349,64350,64351,64352,64353,64354,64355,64356,64357,64358,64359,64360,64361,64362,64363,64364,64365,64366,64367,64368,64369,64370,64371,64372,64373,64374,64375,64376,64377,64378,64379,64380,64381,64382,64383,64384,64385,64386,64387,64388,64389,64390,64391,64392,64393,64394,64395,64396,64397,64398,64399,64400,64401,64402,64403,64404,64405,64406,64407,64408,64409,64410,64411,64412,64413,64414,64415,64416,64417,64418,64419,64420,64421,64422,64423,64424,64425,64426,64427,64428,64429,64430,64431,64432,64433,64434,64435,64436,64437,64438,64439,64440,64441,64442,64443,64444,64445,64446,64447,64448,64449,64467,64468,64469,64470,64471,64472,64473,64474,64475,64476,64477,64478,64479,64480,64481,64482,64483,64484,64485,64486,64487,64488,64489,64490,64491,64492,64493,64494,64495,64496,64497,64498,64499,64500,64501,64502,64503,64504,64505,64506,64507,64508,64509,64510,64511,64512,64513,64514,64515,64516,64517,64518,64519,64520,64521,64522,64523,64524,64525,64526,64527,64528,64529,64530,64531,64532,64533,64534,64535,64536,64537,64538,64539,64540,64541,64542,64543,64544,64545,64546,64547,64548,64549,64550,64551,64552,64553,64554,64555,64556,64557,64558,64559,64560,64561,64562,64563,64564,64565,64566,64567,64568,64569,64570,64571,64572,64573,64574,64575,64576,64577,64578,64579,64580,64581,64582,64583,64584,64585,64586,64587,64588,64589,64590,64591,64592,64593,64594,64595,64596,64597,64598,64599,64600,64601,64602,64603,64604,64605,64606,64607,64608,64609,64610,64611,64612,64613,64614,64615,64616,64617,64618,64619,64620,64621,64622,64623,64624,64625,64626,64627,64628,64629,64630,64631,64632,64633,64634,64635,64636,64637,64638,64639,64640,64641,64642,64643,64644,64645,64646,64647,64648,64649,64650,64651,64652,64653,64654,64655,64656,64657,64658,64659,64660,64661,64662,64663,64664,64665,64666,64667,64668,64669,64670,64671,64672,64673,64674,64675,64676,64677,64678,64679,64680,64681,64682,64683,64684,64685,64686,64687,64688,64689,64690,64691,64692,64693,64694,64695,64696,64697,64698,64699,64700,64701,64702,64703,64704,64705,64706,64707,64708,64709,64710,64711,64712,64713,64714,64715,64716,64717,64718,64719,64720,64721,64722,64723,64724,64725,64726,64727,64728,64729,64730,64731,64732,64733,64734,64735,64736,64737,64738,64739,64740,64741,64742,64743,64744,64745,64746,64747,64748,64749,64750,64751,64752,64753,64754,64755,64756,64757,64758,64759,64760,64761,64762,64763,64764,64765,64766,64767,64768,64769,64770,64771,64772,64773,64774,64775,64776,64777,64778,64779,64780,64781,64782,64783,64784,64785,64786,64787,64788,64789,64790,64791,64792,64793,64794,64795,64796,64797,64798,64799,64800,64801,64802,64803,64804,64805,64806,64807,64808,64809,64810,64811,64812,64813,64814,64815,64816,64817,64818,64819,64820,64821,64822,64823,64824,64825,64826,64827,64828,64829,64848,64849,64850,64851,64852,64853,64854,64855,64856,64857,64858,64859,64860,64861,64862,64863,64864,64865,64866,64867,64868,64869,64870,64871,64872,64873,64874,64875,64876,64877,64878,64879,64880,64881,64882,64883,64884,64885,64886,64887,64888,64889,64890,64891,64892,64893,64894,64895,64896,64897,64898,64899,64900,64901,64902,64903,64904,64905,64906,64907,64908,64909,64910,64911,64914,64915,64916,64917,64918,64919,64920,64921,64922,64923,64924,64925,64926,64927,64928,64929,64930,64931,64932,64933,64934,64935,64936,64937,64938,64939,64940,64941,64942,64943,64944,64945,64946,64947,64948,64949,64950,64951,64952,64953,64954,64955,64956,64957,64958,64959,64960,64961,64962,64963,64964,64965,64966,64967,65008,65009,65010,65011,65012,65013,65014,65015,65016,65017,65018,65019,65020,65136,65137,65138,65139,65140,65142,65143,65144,65145,65146,65147,65148,65149,65150,65151,65152,65153,65154,65155,65156,65157,65158,65159,65160,65161,65162,65163,65164,65165,65166,65167,65168,65169,65170,65171,65172,65173,65174,65175,65176,65177,65178,65179,65180,65181,65182,65183,65184,65185,65186,65187,65188,65189,65190,65191,65192,65193,65194,65195,65196,65197,65198,65199,65200,65201,65202,65203,65204,65205,65206,65207,65208,65209,65210,65211,65212,65213,65214,65215,65216,65217,65218,65219,65220,65221,65222,65223,65224,65225,65226,65227,65228,65229,65230,65231,65232,65233,65234,65235,65236,65237,65238,65239,65240,65241,65242,65243,65244,65245,65246,65247,65248,65249,65250,65251,65252,65253,65254,65255,65256,65257,65258,65259,65260,65261,65262,65263,65264,65265,65266,65267,65268,65269,65270,65271,65272,65273,65274,65275,65276,67584,67585,67586,67587,67588,67589,67592,67594,67595,67596,67597,67598,67599,67600,67601,67602,67603,67604,67605,67606,67607,67608,67609,67610,67611,67612,67613,67614,67615,67616,67617,67618,67619,67620,67621,67622,67623,67624,67625,67626,67627,67628,67629,67630,67631,67632,67633,67634,67635,67636,67637,67639,67640,67644,67647,67648,67649,67650,67651,67652,67653,67654,67655,67656,67657,67658,67659,67660,67661,67662,67663,67664,67665,67666,67667,67668,67669,67671,67672,67673,67674,67675,67676,67677,67678,67679,67840,67841,67842,67843,67844,67845,67846,67847,67848,67849,67850,67851,67852,67853,67854,67855,67856,67857,67858,67859,67860,67861,67862,67863,67864,67865,67866,67867,67872,67873,67874,67875,67876,67877,67878,67879,67880,67881,67882,67883,67884,67885,67886,67887,67888,67889,67890,67891,67892,67893,67894,67895,67896,67897,67903,67968,67969,67970,67971,67972,67973,67974,67975,67976,67977,67978,67979,67980,67981,67982,67983,67984,67985,67986,67987,67988,67989,67990,67991,67992,67993,67994,67995,67996,67997,67998,67999,68e3,68001,68002,68003,68004,68005,68006,68007,68008,68009,68010,68011,68012,68013,68014,68015,68016,68017,68018,68019,68020,68021,68022,68023,68030,68031,68096,68112,68113,68114,68115,68117,68118,68119,68121,68122,68123,68124,68125,68126,68127,68128,68129,68130,68131,68132,68133,68134,68135,68136,68137,68138,68139,68140,68141,68142,68143,68144,68145,68146,68147,68160,68161,68162,68163,68164,68165,68166,68167,68176,68177,68178,68179,68180,68181,68182,68183,68184,68192,68193,68194,68195,68196,68197,68198,68199,68200,68201,68202,68203,68204,68205,68206,68207,68208,68209,68210,68211,68212,68213,68214,68215,68216,68217,68218,68219,68220,68221,68222,68223,68352,68353,68354,68355,68356,68357,68358,68359,68360,68361,68362,68363,68364,68365,68366,68367,68368,68369,68370,68371,68372,68373,68374,68375,68376,68377,68378,68379,68380,68381,68382,68383,68384,68385,68386,68387,68388,68389,68390,68391,68392,68393,68394,68395,68396,68397,68398,68399,68400,68401,68402,68403,68404,68405,68416,68417,68418,68419,68420,68421,68422,68423,68424,68425,68426,68427,68428,68429,68430,68431,68432,68433,68434,68435,68436,68437,68440,68441,68442,68443,68444,68445,68446,68447,68448,68449,68450,68451,68452,68453,68454,68455,68456,68457,68458,68459,68460,68461,68462,68463,68464,68465,68466,68472,68473,68474,68475,68476,68477,68478,68479,68608,68609,68610,68611,68612,68613,68614,68615,68616,68617,68618,68619,68620,68621,68622,68623,68624,68625,68626,68627,68628,68629,68630,68631,68632,68633,68634,68635,68636,68637,68638,68639,68640,68641,68642,68643,68644,68645,68646,68647,68648,68649,68650,68651,68652,68653,68654,68655,68656,68657,68658,68659,68660,68661,68662,68663,68664,68665,68666,68667,68668,68669,68670,68671,68672,68673,68674,68675,68676,68677,68678,68679,68680,126464,126465,126466,126467,126469,126470,126471,126472,126473,126474,126475,126476,126477,126478,126479,126480,126481,126482,126483,126484,126485,126486,126487,126488,126489,126490,126491,126492,126493,126494,126495,126497,126498,126500,126503,126505,126506,126507,126508,126509,126510,126511,126512,126513,126514,126516,126517,126518,126519,126521,126523,126530,126535,126537,126539,126541,126542,126543,126545,126546,126548,126551,126553,126555,126557,126559,126561,126562,126564,126567,126568,126569,126570,126572,126573,126574,126575,126576,126577,126578,126580,126581,126582,126583,126585,126586,126587,126588,126590,126592,126593,126594,126595,126596,126597,126598,126599,126600,126601,126603,126604,126605,126606,126607,126608,126609,126610,126611,126612,126613,126614,126615,126616,126617,126618,126619,126625,126626,126627,126629,126630,126631,126632,126633,126635,126636,126637,126638,126639,126640,126641,126642,126643,126644,126645,126646,126647,126648,126649,126650,126651,1114109];j.prototype.applyStyles=function(a,b){b=b||this.div;for(var c in a)a.hasOwnProperty(c)&&(b.style[c]=a[c])},j.prototype.formatStyle=function(a,b){return 0===a?0:a+b},k.prototype=o(j.prototype),k.prototype.constructor=k,l.prototype.move=function(a,b){switch(b=void 0!==b?b:this.lineHeight,a){case"+x":this.left+=b,this.right+=b;break;case"-x":this.left-=b,this.right-=b;break;case"+y":this.top+=b,this.bottom+=b;break;case"-y":this.top-=b,this.bottom-=b}},l.prototype.overlaps=function(a){return this.left<a.right&&this.right>a.left&&this.top<a.bottom&&this.bottom>a.top},l.prototype.overlapsAny=function(a){for(var b=0;b<a.length;b++)if(this.overlaps(a[b]))return!0;return!1},l.prototype.within=function(a){return this.top>=a.top&&this.bottom<=a.bottom&&this.left>=a.left&&this.right<=a.right},l.prototype.overlapsOppositeAxis=function(a,b){switch(b){case"+x":return this.left<a.left;case"-x":return this.right>a.right;case"+y":return this.top<a.top;case"-y":return this.bottom>a.bottom}},l.prototype.intersectPercentage=function(a){var b=Math.max(0,Math.min(this.right,a.right)-Math.max(this.left,a.left)),c=Math.max(0,Math.min(this.bottom,a.bottom)-Math.max(this.top,a.top)),d=b*c;return d/(this.height*this.width)},l.prototype.toCSSCompatValues=function(a){return{top:this.top-a.top,bottom:a.bottom-this.bottom,left:this.left-a.left,right:a.right-this.right,height:this.height,width:this.width}},l.getSimpleBoxPosition=function(a){var b=a.div?a.div.offsetHeight:a.tagName?a.offsetHeight:0,c=a.div?a.div.offsetWidth:a.tagName?a.offsetWidth:0,d=a.div?a.div.offsetTop:a.tagName?a.offsetTop:0;a=a.div?a.div.getBoundingClientRect():a.tagName?a.getBoundingClientRect():a;var e={left:a.left,right:a.right,top:a.top||d,height:a.height||b,bottom:a.bottom||d+(a.height||b),width:a.width||c};return e},n.StringDecoder=function(){return{decode:function(a){if(!a)return"";if("string"!=typeof a)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(a))}}},n.convertCueToDOMTree=function(a,b){return a&&b?g(a,b):null};var u=.05,v="sans-serif",w="1.5%";n.processCues=function(a,b,c){function d(a){for(var b=0;b<a.length;b++)if(a[b].hasBeenReset||!a[b].displayState)return!0;return!1}if(!a||!b||!c)return null;for(;c.firstChild;)c.removeChild(c.firstChild);var e=a.document.createElement("div");if(e.style.position="absolute",e.style.left="0",e.style.right="0",e.style.top="0",e.style.bottom="0",e.style.margin=w,c.appendChild(e),d(b)){var f=[],g=l.getSimpleBoxPosition(e),h=Math.round(g.height*u*100)/100,i={font:h+"px "+v};!function(){for(var c,d,h=0;h<b.length;h++)d=b[h],c=new k(a,d,i),e.appendChild(c.div),m(a,c,g,f),d.displayState=c.div,f.push(l.getSimpleBoxPosition(c))}()}else for(var j=0;j<b.length;j++)e.appendChild(b[j].displayState)},n.Parser=function(a,b,c){c||(c=b,b={}),b||(b={}),this.window=a,this.vttjs=b,this.state="INITIAL",this.buffer="",this.decoder=c||new TextDecoder("utf8"),this.regionList=[]},n.Parser.prototype={reportOrThrowError:function(a){if(!(a instanceof b))throw a;this.onparsingerror&&this.onparsingerror(a)},parse:function(a){function c(){for(var a=i.buffer,b=0;b<a.length&&"\r"!==a[b]&&"\n"!==a[b];)++b;var c=a.substr(0,b);return"\r"===a[b]&&++b,"\n"===a[b]&&++b,i.buffer=a.substr(b),c}function g(a){var b=new d;if(e(a,function(a,c){switch(a){case"id":b.set(a,c);break;case"width":b.percent(a,c);break;case"lines":b.integer(a,c);break;case"regionanchor":case"viewportanchor":var e=c.split(",");if(2!==e.length)break;var f=new d;if(f.percent("x",e[0]),f.percent("y",e[1]),!f.has("x")||!f.has("y"))break;b.set(a+"X",f.get("x")),b.set(a+"Y",f.get("y"));break;case"scroll":b.alt(a,c,["up"])}},/=/,/\s/),b.has("id")){var c=new(i.vttjs.VTTRegion||i.window.VTTRegion);c.width=b.get("width",100),c.lines=b.get("lines",3),c.regionAnchorX=b.get("regionanchorX",0),c.regionAnchorY=b.get("regionanchorY",100),c.viewportAnchorX=b.get("viewportanchorX",0),c.viewportAnchorY=b.get("viewportanchorY",100),c.scroll=b.get("scroll",""),i.onregion&&i.onregion(c),i.regionList.push({id:b.get("id"),region:c})}}function h(a){e(a,function(a,b){switch(a){case"Region":g(b)}},/:/)}var i=this;a&&(i.buffer+=i.decoder.decode(a,{stream:!0}));try{var j;if("INITIAL"===i.state){if(!/\r\n|\n/.test(i.buffer))return this;j=c();var k=j.match(/^WEBVTT([ \t].*)?$/);if(!k||!k[0])throw new b(b.Errors.BadSignature);i.state="HEADER"}for(var l=!1;i.buffer;){if(!/\r\n|\n/.test(i.buffer))return this;switch(l?l=!1:j=c(),i.state){case"HEADER":/:/.test(j)?h(j):j||(i.state="ID");continue;case"NOTE":j||(i.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(j)){i.state="NOTE";break}if(!j)continue;if(i.cue=new(i.vttjs.VTTCue||i.window.VTTCue)(0,0,""),i.state="CUE",-1===j.indexOf("-->")){i.cue.id=j;continue}case"CUE":try{f(j,i.cue,i.regionList)}catch(m){i.reportOrThrowError(m),i.cue=null,i.state="BADCUE";continue}i.state="CUETEXT";continue;case"CUETEXT":var n=-1!==j.indexOf("-->");if(!j||n&&(l=!0)){i.oncue&&i.oncue(i.cue),i.cue=null,i.state="ID";continue}i.cue.text&&(i.cue.text+="\n"),i.cue.text+=j;continue;case"BADCUE":j||(i.state="ID");continue}}}catch(m){i.reportOrThrowError(m),"CUETEXT"===i.state&&i.cue&&i.oncue&&i.oncue(i.cue),i.cue=null,i.state="INITIAL"===i.state?"BADWEBVTT":"BADCUE"}return this},flush:function(){var a=this;try{if(a.buffer+=a.decoder.decode(),(a.cue||"HEADER"===a.state)&&(a.buffer+="\n\n",a.parse()),"INITIAL"===a.state)throw new b(b.Errors.BadSignature)}catch(c){a.reportOrThrowError(c)}return a.onflush&&a.onflush(),this}},a.WebVTT=n}(this,this.vttjs||{});
0 204 \ No newline at end of file
... ...
400-SOURCECODE/AIAHTML5.Web/themes/default/css/bootstrap/3.3.6/main.css
... ... @@ -863,4 +863,39 @@ cursor:pointer;
863 863 .annotationtoolbartab
864 864 {
865 865 background:#626c34 !important;
866   -}
867 866 \ No newline at end of file
  867 +}
  868 +
  869 +.disableMenuannotation
  870 +{
  871 + pointer-events:none;
  872 + opacity:0.6;
  873 +
  874 +}
  875 +.disableMenuoption
  876 +{
  877 + pointer-events:none;
  878 + opacity:0.6;
  879 +
  880 +}
  881 +
  882 +.blankshapediv
  883 +{
  884 +background-image: url("../../../../../content/images/blank-shapes.png");
  885 +}
  886 +.outlinediv
  887 +{
  888 + border:1px solid black;
  889 + width: 72%;
  890 + margin-left: auto;
  891 + margin-right: auto;
  892 + height: 98px;
  893 + border-radius: 50%;
  894 + }
  895 +.fullcolordiv
  896 + {
  897 + position:relative;
  898 + width:100%;
  899 + height:100%;
  900 + background:#fff;
  901 + border-radius: 50%;
  902 + }
868 903 \ No newline at end of file
... ...