arnaucube
arnaucube/openEventsPlatformAppPublic Self-hosted repository
openEventsPlatformApp/www/js/events.js
www/js/events.jsRaw
 1angular.module('app.events', ['pascalprecht.translate'])
 2
 3.controller('EventsCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading, $filter) {
 4
 5
 6    $scope.events=[];
 7    $scope.page=0;
 8    $scope.doRefresh = function() {
 9      /* events refresh: */
10        $http.get(urlapi + 'events?page=' + $scope.page)
11        .then(function(data){
12            console.log('data success events');
13            console.log(data); // for browser console
14            //$scope.events = data.data; // for UI
15            $scope.events=data.data;
16            $scope.$broadcast('scroll.refreshComplete');//refresher stop
17
18        }, function(data){
19            console.log('data error');
20            $scope.$broadcast('scroll.refreshComplete');//refresher stop
21            $ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
22
23        });
24    };
25    $scope.doRefresh();
26
27    $scope.share = function(event){
28        var message = event.description;
29        var subject = event.title;
30        var file= ['',''];
31        var link = "http://duckduckgo.com";
32        $cordovaSocialSharing
33        .share(message, subject, file, link) // Share via native share sheet
34        .then(function(result) {
35          // Success!
36        }, function(err) {
37          // An error occured. Show a message to the user
38      });
39    };
40    $scope.savedEvents=[];
41    $scope.$on('$ionicView.enter', function(){//per executar-ho cada cop que es carrega el view
42        if (localStorage.getItem("events_app_savedEvents")) {
43          $scope.savedEvents = JSON.parse(localStorage.getItem("events_app_savedEvents"));
44          console.log("savedEvents");
45          console.log($scope.savedEvents);
46        }
47    });
48    $scope.saveEvent = function(event){
49        $scope.savedEvents.push(event);
50        localStorage.setItem("events_app_savedEvents", JSON.stringify($scope.savedEvents));
51        $ionicLoading.show({ template: 'Event saved', noBackdrop: true, duration: 1000 });
52    };
53    $scope.unsaveEvent = function(event){
54        for(var i=0; i<$scope.savedEvents.length; i++) {
55            if ($scope.savedEvents[i]._id === event._id){
56                $scope.savedEvents.splice(i, 1);
57            }
58        }
59        localStorage.setItem("events_app_savedEvents", JSON.stringify($scope.savedEvents));
60        $ionicLoading.show({ template: 'Event unsaved', noBackdrop: true, duration: 1000 });
61    };
62    $scope.isEventSaved = function(event) {
63        for(var i=0; i<$scope.savedEvents.length; i++) {
64            if ($scope.savedEvents[i]._id === event._id){
65                return true;
66            }
67        }
68        return false;
69    };
70});