(function(){ "use strict"; angular.module('raz') .component('resourceCardDisplay', { templateUrl: '/js/angular/resource-slider/resource-card-display.html', controller: 'resourceCardDisplay', bindings: { resource: '<' } }) .controller('resourceCardDisplay', ['constantValues', function (constantValues) { var ctrl = this; ctrl.$onInit = function () { ctrl.resourceId = ctrl.resource.resourceId; ctrl.languageId = ctrl.resource.languageId; ctrl.resourceType = ctrl.resource.resourceType; ctrl.deliverableType = ctrl.resource.deliverableType; ctrl.extraPopoutInfo = ctrl.resource.extraPopoutInfo; var resourceCard = ctrl.resource.metadata; ctrl.thumbnailSrcUrl = resourceCard.thumbnailSrc; ctrl.isMultiLevel = resourceCard.isMultiLevel; ctrl.title = resourceCard.title; ctrl.subtitle = resourceCard.subtitle; ctrl.genre1 = resourceCard.genre1; ctrl.genre2 = resourceCard.genre2; ctrl.level = resourceCard.level; ctrl.orientation = resourceCard.orientation; ctrl.lexile = resourceCard.lexile; ctrl.href = ctrl.getHref(); ctrl.linkClass = ctrl.getLinkClass(); ctrl.imageClass = ctrl.getImageClass(); ctrl.isBook = ctrl.isResourceBook(); }; ctrl.getHref = function () { if (ctrl.resourceType === constantValues.TYPE_LEVELED_BOOKS) { return '/books/leveled-books/book/?id=' + ctrl.resourceId + '&langId=' + ctrl.languageId; } else if (ctrl.resourceType === constantValues.TYPE_CLOSE_READ_PASSAGES) { return '/comprehension/close-read-passages/?close_read_passage_id=' + ctrl.resourceId; } else if (ctrl.resourceType === constantValues.TYPE_CLASSIC_BOOKS) { return '/books/classics/classic/?id=' + ctrl.resourceId; } else { return ''; } }; ctrl.getLinkClass = function () { return 'resourceCard-' + ctrl.orientation; }; ctrl.getImageClass = function () { var classname = "resourceCard_img"; if (ctrl.thumbnailSrcUrl.indexOf("resource-card") < 0) { classname += " resourceCard_img-notCropped"; } return classname; }; ctrl.getClassBasedOnLevel = function () { return 'razReadingLevel-' + ctrl.level; }; ctrl.isResourceBook = function () { return ctrl.deliverableType === 'book'; }; }]); })();