{"version":3,"sources":["webpack:///webpack/bootstrap 1c7e015ae71a38362e8e","webpack:///./source/js/publication-list-view.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","angular","controller","$scope","$locale","$http","getPublications","prid","amount","start","year","loading","ApiUrl","console","log","then","response","data","publicationData","publicationDataValid","error","pagiPages","pageNumbers","pageAmount","Hits","pagiAmount","push","getPages","totalPagiSections","Math","floor","length","pagiSectionSize","Publications","keys","noResults","$on","ngRepeatFinishedEvent","itemDate","dateString","parsed","parseInt","replace","Date","itemName","url","substring","lastIndexOf","split","itemSize","size","toFixed","itemTitle","item","useAltTitle","AlternativeTitle","Title","Text","itemAuthors","str","Authors","Name","PublishDate","getFullYear","pagiHits","pagiIndex","pagiChanged","pageNumber","pagiSelected","selectedPagiSection","selectedYear","sectionChanged","sectionNumber","getReports","rrid","paginationFilter","page","value","yearChanged","filterDataValid","moreResults","noItems","showPubDesc","showPubDate","swapFields","filterData","PublicationYears","TotalHits","directive","$timeout","restrict","link","scope","element","attr","$last","$emit","onFinishRender"],"mappings":"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","file":"publicationList.bundle.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 307);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 1c7e015ae71a38362e8e","if (typeof (angular) !== \"undefined\") {\r\n angular.module(\"publicationListViewApp\", []);\r\n\r\n angular.module(\"publicationListViewApp\").controller(\"publicationListViewController\", [\"$scope\", \"$locale\", \"$http\", function ($scope, $locale, $http) {\r\n\r\n //Rakentelee svg-ikonit kun ng-repeatin itemit renderöity\r\n $scope.$on('ngRepeatFinished', function (ngRepeatFinishedEvent) {\r\n //replaceSvgIcons(); //--> scripts.js\r\n });\r\n\r\n //Parseroidaan apin palauttama päivämäärätieto\r\n $scope.itemDate = function (dateString) {\r\n if (typeof dateString !== \"undefined\" && dateString !== null) {\r\n var parsed = parseInt(dateString.replace(/[^0-9\\-]/g, ''));\r\n return parsed < 0 ? \"\" : new Date(parsed);\r\n }\r\n else\r\n return \"\";\r\n };\r\n\r\n $scope.itemName = function (url) {\r\n var name = url;\r\n if (url != \"\") {\r\n name = url.substring(url.lastIndexOf('/') + 1);\r\n if (name.lastIndexOf('?') > 0) {\r\n name = name.split('?')[0];\r\n }\r\n }\r\n return name;\r\n }\r\n\r\n //Tavut megatavuiksi\r\n $scope.itemSize = function (size) {\r\n if (typeof size !== \"undefined\" && size !== null && typeof size === \"number\")\r\n return (size / 1024 / 1024).toFixed(2);\r\n else\r\n return \"\";\r\n };\r\n\r\n //Palauttaa halutun otsikkokentän\r\n $scope.itemTitle = function (item) {\r\n if (useAltTitle && typeof item.AlternativeTitle !== \"undefined\" && item.AlternativeTitle !== null)\r\n return item.AlternativeTitle;\r\n else\r\n return item.Title.Text;\r\n };\r\n\r\n //Palauttaa muotoillun tekijälistan\r\n $scope.itemAuthors = function (item) {\r\n var str = \"\";\r\n for (var i = 0; i < item.Authors.length; i++) {\r\n str += (item.Authors[i].Name + (i < item.Authors.length - 1 ? \"; \" : \"\"));\r\n }\r\n\r\n if (item.Authors.length > 0){\r\n var year = $scope.itemDate(item.PublishDate);\r\n if (year != \"\")\r\n str += \" (\" + year.getFullYear() + \")\";\r\n }\r\n\r\n return str;\r\n };\r\n\r\n function getPages() {\r\n var pageNumbers = [];\r\n var pageAmount = $scope.publicationData.Hits / $scope.pagiAmount + ($scope.publicationData.Hits % $scope.pagiAmount != 0 ? 1 : 0);\r\n for (var i = 1; i <= pageAmount; i++) {\r\n pageNumbers.push(i);\r\n }\r\n return pageNumbers;\r\n };\r\n\r\n function getPagiSections() {\r\n return Math.floor($scope.pagiPages.length / $scope.pagiSectionSize) + ($scope.pagiPages.length % $scope.pagiSectionSize != 0 ? 1 : 0);\r\n }\r\n\r\n //Hakee halutun vuoden julkaisut, tukee sivutusta\r\n function getPublications(prid, amount, start, year) {\r\n $scope.loading = true;\r\n //iSpinner(true);\r\n var ApiUrl = \"/api/publications/\" + prid + \"?amount=\" + amount + \"&start=\" + start + \"&year=\" + year;\r\n console.log(ApiUrl);\r\n\r\n $http.get(ApiUrl)\r\n .then(function successCallback(response) {\r\n console.log(\"OK: - \" + response.data);\r\n $scope.publicationData = response.data;\r\n $scope.publicationDataValid = (typeof $scope.publicationData !== \"undefined\" && $scope.publicationData !== null);\r\n }, function errorCallback() {\r\n $scope.publicationDataValid = false;\r\n console.log($scope.error);\r\n $scope.error = true;\r\n }).then(function () {\r\n $scope.loading = false;\r\n if ($scope.publicationDataValid) {\r\n $scope.pagiPages = getPages();\r\n $scope.totalPagiSections = getPagiSections();\r\n if (typeof $scope.publicationData.Publications !== \"undefined\" && $scope.publicationData.Publications !== null && (Object.keys($scope.publicationData.Publications).length > 0)) {\r\n $scope.noResults = false;\r\n //iSpinner(false);\r\n } else {\r\n $scope.noResults = true;\r\n //iSpinner(false);\r\n }\r\n } else {\r\n $scope.error = true;\r\n console.log($scope.error);\r\n }\r\n });\r\n };\r\n\r\n $scope.pagiHits = function () {\r\n if ($scope.publicationData.Hits < $scope.pagiAmount)\r\n return $scope.publicationData.Hits;\r\n if ($scope.pagiIndex + $scope.pagiAmount > $scope.publicationData.Hits)\r\n return $scope.publicationData.Hits;\r\n\r\n return $scope.pagiIndex + $scope.pagiAmount;\r\n };\r\n\r\n $scope.pagiChanged = function (pageNumber) {\r\n //iSpinner(true);\r\n $scope.pagiSelected = pageNumber;\r\n $scope.pagiIndex = (pageNumber - 1) * $scope.pagiAmount;\r\n\r\n $scope.selectedPagiSection = Math.floor(pageNumber / $scope.pagiSectionSize) + (pageNumber % $scope.pagiSectionSize != 0 ? 1 : 0);\r\n\r\n if ($scope.pagiIndex < 0)\r\n $scope.pagiIndex = 0;\r\n\r\n if ($scope.pagiIndex > $scope.publicationData.Hits)\r\n $scope.pagiIndex -= $scope.pagiAmount;\r\n\r\n getPublications(prid, $scope.pagiAmount, $scope.pagiIndex, $scope.selectedYear);\r\n };\r\n\r\n $scope.sectionChanged = function (sectionNumber) {\r\n if (sectionNumber < 1)\r\n $scope.selectedPagiSection = 1;\r\n else if (sectionNumber > $scope.totalPagiSections)\r\n $scope.selectedPagiSection = $scope.totalPagiSections;\r\n else\r\n $scope.selectedPagiSection = sectionNumber;\r\n\r\n $scope.pagiSelected = (($scope.selectedPagiSection - 1) * $scope.pagiSectionSize) + 1;\r\n $scope.pagiIndex = ($scope.pagiSelected - 1) * $scope.pagiAmount;\r\n\r\n getReports(rrid, $scope.pagiAmount, $scope.pagiIndex);\r\n }\r\n\r\n $scope.paginationFilter = function (page) {\r\n var value = page / $scope.pagiSectionSize;\r\n value = value % 1 == 0 ? value : Math.floor(value + 1);\r\n return (value == $scope.selectedPagiSection);\r\n }\r\n\r\n //Laukeaa kun vuosivalinta vaihtuu\r\n $scope.yearChanged = function () {\r\n //iSpinner(true);\r\n $scope.pagiIndex = 0;\r\n $scope.pagiSelected = 1;\r\n $scope.selectedPagiSection = 1;\r\n getPublications(prid, $scope.pagiAmount, $scope.pagiIndex, $scope.selectedYear);\r\n };\r\n\r\n //Haetaan filtterille tiedot ja ensimmäisen vuoden julkaisut\r\n function init() {\r\n if (typeof prid === 'number' && typeof pagiAmount === 'number' && typeof showPubDesc === \"boolean\" && typeof showPubDate === \"boolean\" && typeof useAltTitle === \"boolean\") {\r\n //Sivupropertyistä saatavat parametrit:\r\n $scope.pagiAmount = pagiAmount;\r\n $scope.showPubDate = showPubDate;\r\n $scope.showPubDesc = showPubDesc;\r\n $scope.useAltTitle = useAltTitle;\r\n $scope.swapFields = swapFields;\r\n\r\n //Filtteri- ja sivutusmuuttujat\r\n $scope.pagiSectionSize = 10;\r\n $scope.selectedPagiSection = 1;\r\n $scope.totalPagiSections;\r\n $scope.selectedYear;\r\n $scope.pagiIndex = 0;\r\n $scope.pagiSelected = 1;\r\n $scope.publicationData;\r\n $scope.filterData;\r\n\r\n $scope.loading = true;\r\n //iSpinner(true);\r\n console.log(\"/api/publications/filterdata/\" + prid);\r\n\r\n $http.get(\"/api/publications/filterdata/\" + prid)\r\n .then(function successCallback(response) {\r\n $scope.filterData = response.data;\r\n $scope.filterDataValid = (typeof $scope.filterData !== \"undefined\" && $scope.filterData !== null);\r\n }, function errorCallBack() {\r\n $scope.filterDataValid = false;\r\n $scope.error = true;\r\n }).then(function () {\r\n if ($scope.filterDataValid) {\r\n if (typeof $scope.filterData.PublicationYears !== \"undefined\" && $scope.filterData.PublicationYears !== null && (Object.keys($scope.filterData.PublicationYears).length > 0) && typeof $scope.filterData.TotalHits !== \"undefined\" && $scope.filterData.TotalHits !== null && $scope.filterData.TotalHits > 0) {\r\n $scope.selectedYear = $scope.filterData.PublicationYears[0];\r\n getPublications(prid, $scope.pagiAmount, $scope.pagiIndex, $scope.selectedYear);\r\n $scope.noItems = false;\r\n //iSpinner(false);\r\n } else {\r\n $scope.loading = false;\r\n $scope.noItems = true;\r\n //iSpinner(false);\r\n }\r\n } else {\r\n $scope.loading = false;\r\n $scope.error = true;\r\n //iSpinner(false);\r\n }\r\n });\r\n } else {\r\n $scope.error = true;\r\n }\r\n }\r\n\r\n //Datan validointi & virheviestit\r\n $scope.filterDataValid = false;\r\n $scope.publicationDataValid = false;\r\n $scope.loading = false;\r\n $scope.moreResults = false;\r\n $scope.noResults = false;\r\n $scope.noItems = false;\r\n $scope.error = false;\r\n\r\n init();\r\n\r\n }]);\r\n\r\n angular.module('publicationListViewApp').directive('onFinishRender', [\"$timeout\", function ($timeout) {\r\n return {\r\n restrict: 'A',\r\n link: function (scope, element, attr) {\r\n if (scope.$last === true) {\r\n $timeout(function () {\r\n scope.$emit(attr.onFinishRender);\r\n });\r\n }\r\n }\r\n }\r\n }]);\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./source/js/publication-list-view.js"],"sourceRoot":""}