LinkController.js 5.04 KB
'use strict';

AIA.controller("LinkController", ["$scope", "$rootScope", "$log", "$location", "pages", "$routeParams", "$window","$interval",
function ($scope, $rootScope, log, $location, pages, $routeParams, $window,$interval) {

    //$rootScope.currentActiveModuleTitle = Modules[10].Name;
    //$rootScope.currentActiveModuleTitle = $routeParams.modname;
    $scope.links = [
        new link("encyclopedia", "Encyclopedia", 'https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=117', "100%", "750px"),
        new link("IP-10", "IP 10", "https://interactiveanatomy.com/content/IPWeb10/index.aspx", "100%", "750px"),
        new link("indepth-reports", "In-Depth Reports", "https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=10", "100%", "4000px"),
        new link("complementary-and-alternate-medicine", "Complementary and Alternative Medicine", "https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=107", "100%", "750px"),
        new link("bodyguide", "Body Guide", "https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=25 ", "100%", "1050px"),
        new link("health-navigator", "Health Navigator", "https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=65 ", "100%", "1000px"),
        new link("wellness-tools", "The Wellness Tools", "https://ssl.adam.com/content.aspx?site=aia5se3.adam.com&login=AIA41842&productId=20 ", "100%", "1500px"),
        new link("aod", "A.D.A.M OnDemand", "https://adamondemand.com/Home/AIACatalog?categoriesID=2", "100%", "1500px")
    ];

    $scope.$on('$viewContentLoaded', function (event) {


        if ($rootScope.refreshcheck == null) {
            $location.path('/');
        }
        // code that will be executed ... 
        // every time this view is loaded

        var $uaAOD = navigator.userAgent;
        for (var i = 0; i < $scope.links.length; i++) {
            if ($scope.links[i].modname == $routeParams.modname) {
                $rootScope.currentActiveModuleTitle = $scope.links[i].title;
                if ($rootScope.currentActiveModuleTitle == "IP 10") {
                    // document.getElementById('externalLink').style.height = $(window).outerHeight() - 41 + "px";
                    $window.open($scope.links[i].objurl, '_blank');


                }
                else {
                    $scope.objdata = $scope.links[i].objurl;
                    $scope.myObj = $scope.links[i].objstyle;
                    if ($('#externalLink').css('display') === 'none') {
                        document.getElementById('externalLink').style.display = "block";
                        document.getElementById('externalLinkiframe').style.display = "none";

                    }

                    if ($rootScope.currentActiveModuleTitle == "A.D.A.M OnDemand") {
                        if ($uaAOD.match(/(iPod|iPhone|iPad)/i)) {
                            document.getElementById('externalLink').style.display = "none";
                            document.getElementById('externalLinkiframe').style.display = "block";
                            document.getElementById('externalLinkiframe').style.height = $(window).outerHeight() - 128 + "px";
                            document.getElementById("externalLinkiframe").src = $scope.objdata;

                        }

                        else {
                            document.getElementById('externalLink').style.height = $(window).outerHeight() - 128 + "px";

                        }

                    }
                    $scope.refreshIdleTime();
                }
            }
        }
    });

    $scope.refreshIdleTime = function () {
        var timeintval = null;
        timeintval = $interval(PointerEventEnableDisable, 5000);

        function PointerEventEnableDisable() {
            var pointevents =  $("#externalLink").css('pointer-events');                                                      
            if (pointevents=='auto') {
                $scope.stopLinkRefresh(timeintval);
                timeintval = $interval(PointerEventEnableDisable, 500);
                $("#externalLink").css('pointer-events', 'none');                                    
            }
            else if(pointevents=='none')
            {
                $("#externalLink").css('pointer-events', 'auto');
                $scope.stopLinkRefresh(timeintval);
                timeintval = $interval(PointerEventEnableDisable, 10000);
            }
            else
            {
                //auto clode interval when panel close
                $scope.stopLinkRefresh(timeintval);
            }
        } 

        $scope.stopLinkRefresh = function (timeintval) {
            if (angular.isDefined(timeintval)) {
                $interval.cancel(timeintval);
                timeintval = undefined;
            }
        }; 
    }
    $scope.showTabButton = false;
    $scope.IsVisible = function () {
        $scope.scroll();

    }

    $scope.scroll = function () {
        // $window.scrollTo(0, 0);
        $("html,body").scrollTop(0);
    }
}]


);