app.controller('NotificationsCtrl', function($scope, $http, $routeParams, $timeout) { $scope.notifications = { name: 'Notificaties', controller: 'notification', //Panel class panelClass: 'panel-trainingskampen', pageLimit: 10, showRowCount: true, fields: [ 'title', 'message', 'read', ], //pair the user and user role table autoChangeTo: ['user_id', 'user_role_id'], fieldDetails: { 'title': { 'label': 'Titel', }, 'message': { 'label': 'message', }, 'read': { 'label': 'Gelezen', }, }, buttons:{ 'C':{ 'id': 'c', 'header': false, }, 'R':{ 'id': 'r', 'inline': false, }, 'U':{ 'id': 'u', 'inline': false, }, 'MR':{ 'id': 'mr', 'name': 'Markeer als gelezen', 'label': 'Markeer als gelezen', 'inline': true, 'header': false, 'icon': 'fa-check', 'action': 'markAsRead', 'parentScope': true, 'whereField': 'read', 'where': { '!=': '1', }, }, 'OL':{ 'id': 'ol', 'name': 'Open link', 'label': 'Open link', 'inline': true, 'header': false, 'icon': 'fa-arrow-right', 'action': 'openLink', 'parentScope': true, 'whereField': 'link', 'where': { '!=': null, }, }, 'D':{ 'id': 'd', 'inline': false, }, }, } //translate table $scope.tableReady = function (tableName) { if (tableName === 'Notificaties') { $scope.notifications.labels = { 'of': 'van', 'rows': 'rijen', 'lastUpdated': 'Laatste wijziging', 'showNotSelectedRows': 'Toon niet geselecteerde rijen', 'showSelectedRows': 'Toon geselecteerde rijen', 'selectAllRows': 'Selecteer alle rijen', 'deSelectAllRows': 'De-selecteer alle rijen', 'selectFilteredRows': 'Selecteer gefilterde rijen', 'deSelectFilteredRows': 'De-selecteer gefilterde rijen', 'false': 'Mislukt', 'true': 'Gelukt', 'statistics': 'Statistieken', 'deleteAllRowsMessage': 'Let op! Je staat op het punt alle geselecteerde rijen te verwijderen', 'ready' : 'Klaar', 'processSubFields' : 'Verwerk subvelden', 'alreadyLoaded' : 'al ingeladen in data.', 'errorInFetching' : 'Error in ophalen', 'dataAvailable' : 'Data al beschikbaar', 'loading' : 'Laden...', }; } } $scope.markAsRead = function (btn, row, blnSubmit) { //update notification var req = { method: 'GET', url: '/notification/markAsRead/' + row.id, } $http(req).then(function(response) { if (response.status && response.data.status) { $scope.notifications.call('initiate'); } }); } $scope.openLink = function (btn, row, blnSubmit) { location.href = row.link; } });