'use strict'; var AIA = angular.module('AIA', ['ngSanitize', 'ngRoute']); AIA.directive('checkImageExistance', function ($http) { return { restrict: 'A', link: function (scope, element, attrs) { debugger; attrs.$observe('ngSrc', function (ngSrc) { $http.get(ngSrc).success(function () { alert('image exist'); }).error(function () { alert('image not exist'); element.attr('src', 'http://upload.wikimedia.org/wikipedia/commons/7/73/Lion_waiting_in_Namibia.jpg'); // set default image }); }); } }; }); AIA.directive('nnkn', function () { return { restrict: 'E', link: function (scope, element, attrs) { alert('nt') // show an image-missing image element.error(function () { alert('not exist') var w = element.width(); var h = element.height(); var source = element.src; // using 20 here because it seems even a missing image will have ~18px width // after this error function has been called if (w <= 20) { w = 100; } if (h <= 20) { h = 100; } var url = 'http://placehold.it/' + w + 'x' + h + '/cccccc/ffffff&text=Oh No!'; element.prop('src', url); element.css('border', 'double 3px #cccccc'); }); } } }); AIA.constant('pages', [ { name: 'Login', pageSlug: 'login', pageUrl: 'login.html', pageController: 'AuthenticationController' }, { name: 'Dissectible Anatomy Views List', pageSlug: 'da-view-list', pageUrl: 'app/views/da/da-body-view-list.html', pageController: 'DAController' }, { name: 'Dissectible Anatomy Body View', pageSlug: 'da-body-view', pageUrl: 'app/views/da/da-body-view.html', pageController: 'DAController' } ]); AIA.config(function ($routeProvider, pages) { for (var i = 0; i < pages.length; i++) { if (pages[i].pageSlug != null) { $routeProvider.when('/' + pages[i].pageSlug, { templateUrl: pages[i].pageUrl, controller: pages[i].pageController }) } } });