Blame view

app/partials/scheduler/scheduler.controller.js 7.43 KB
feacde5ff   Rishav   setup acuefuel in...
1
  'use strict';
a55ef20b5   Swarn Singh   schedular added
2
  angular.module('acufuel')
feacde5ff   Rishav   setup acuefuel in...
3

4728ddfdd   Swarn Singh   schedule module f...
4
  .controller('schedulerController', ['$scope','$compile', 'uiCalendarConfig', 'schedulerService', function($scope, $compile, uiCalendarConfig, schedulerService) {
a49ef5361   Kuldeep Arora   dashboard & Sched...
5
      
4728ddfdd   Swarn Singh   schedule module f...
6
    $scope.showLoader = true;
a49ef5361   Kuldeep Arora   dashboard & Sched...
7
8
9
     getEventsList();
    
    /*---get events on calendar---*/
4728ddfdd   Swarn Singh   schedule module f...
10
11
12
    $scope.events = [];
    function getEventsList(){
      schedulerService.getEvents().then(function(result) {
565570086   Kuldeep Arora   highcharts(MFS,CS...
13
        
4728ddfdd   Swarn Singh   schedule module f...
14
        for (var i = 0; i < result.length; i++) {
613acf859   Anchit Jindal   fixed schedular i...
15
          var newTime = new Date(result[i].deployDate);
613acf859   Anchit Jindal   fixed schedular i...
16
17
18
19
20
21
          var dmonth = newTime.getUTCMonth() + 1; //months from 1-12
          var dday = newTime.getUTCDate();
          var dyear = newTime.getUTCFullYear();
          var hours = newTime.getHours();
          var min = newTime.getMinutes();
          var sec = newTime.getSeconds();
ea94f521f   Kuldeep Arora   scheduler bug fixed
22

2d9601181   Kuldeep Arora   scheduler design
23
24
25
26
27
          $scope.events.push({
            'id': result[i].id,
            'title': result[i].aircraft +'
  ' + '(' + result[i].make +'/' + result[i].model + ')' + '
  ' + 'for' + ' ' + result[i].requestedVolume + ' ' + 'gal.' + ' ' +'@' + ' ' +'$'+result[i].priceQuote,
5e800f325   Anchit Jindal   fixed schedular i...
28
            'start': dyear+'-'+dmonth+'-'+dday + ' ' + hours + ':' + min + ':' + sec
2d9601181   Kuldeep Arora   scheduler design
29
              
4728ddfdd   Swarn Singh   schedule module f...
30
          })
ea7d14ca1   Anchit Jindal   fixed schedular i...
31
        //  $scope.showEventsList();
a49ef5361   Kuldeep Arora   dashboard & Sched...
32
           $scope.showLoader = false;
a49ef5361   Kuldeep Arora   dashboard & Sched...
33
       }
ea94f521f   Kuldeep Arora   scheduler bug fixed
34
           
961a97a2f   Kuldeep Arora   Enhancement in de...
35
          $('#my-calendar').fullCalendar('removeEvents');
ea7d14ca1   Anchit Jindal   fixed schedular i...
36
          $('#my-calendar').fullCalendar('addEventSource',$scope.events);
ea94f521f   Kuldeep Arora   scheduler bug fixed
37
38
39
          $('#my-calendar').fullCalendar('refetchEvents');
  
         //$scope.eventSources = [$scope.events, $scope.eventSource, $scope.eventsF];
ea7d14ca1   Anchit Jindal   fixed schedular i...
40
      
ea7d14ca1   Anchit Jindal   fixed schedular i...
41
      // $scope.newFuelPricing[i].futureFuelPricing.deployDate = dmonth+'/'+dday+'/'+dyear;
a49ef5361   Kuldeep Arora   dashboard & Sched...
42
43
     })
  }
4728ddfdd   Swarn Singh   schedule module f...
44

4728ddfdd   Swarn Singh   schedule module f...
45
46
47
  
    $scope.newEvent = {};
    $scope.addNewEvent = function(){
4728ddfdd   Swarn Singh   schedule module f...
48
49
50
51
52
53
54
      $scope.showLoader = true;
      if ($scope.newEvent.deployDate != undefined) {
        $scope.newEvent.deployDate = new Date($scope.newEvent.deployDate);
        $scope.newEvent.deployDate = $scope.newEvent.deployDate.getTime();
      }
      //var data = 'aircraft='+$scope.newEvent.aircraft+'&deployDate='+$scope.newEvent.deployDate;
      schedulerService.addNewEventService($scope.newEvent).then(function(response){
4728ddfdd   Swarn Singh   schedule module f...
55
56
        $scope.newEvent = {};
        $('#addEvent').modal('hide');
c622f8e75   Swarn Singh   drog-drop and upd...
57
        $scope.events = [];
4728ddfdd   Swarn Singh   schedule module f...
58
59
60
61
62
63
64
        getEventsList();
      })
    }
  
    $scope.cancelAdd = function(){
      $scope.newEvent = {};
    }
956e0d9ed   Swarn Singh   contact view effe...
65

4728ddfdd   Swarn Singh   schedule module f...
66
67
    $scope.editData = {};
    $scope.editEvent = function(data){
4728ddfdd   Swarn Singh   schedule module f...
68
      $scope.editData = data;
4728ddfdd   Swarn Singh   schedule module f...
69
      $('#editEvent').modal('show');
4728ddfdd   Swarn Singh   schedule module f...
70
    }
956e0d9ed   Swarn Singh   contact view effe...
71
72
73
74
    $scope.updateEvent = function(){
      $scope.showLoader = true;
      $scope.updatedData = {};
      $scope.updatedData.id = $scope.editData.id;
956e0d9ed   Swarn Singh   contact view effe...
75
76
77
78
79
80
      $scope.updatedData.deployDate = $scope.editData.start;
      if ($scope.updatedData.deployDate != undefined) {
        $scope.updatedData.deployDate = new Date($scope.updatedData.deployDate);
        $scope.updatedData.deployDate = $scope.updatedData.deployDate.getTime();
      }
      schedulerService.updateScheduledEvent($scope.updatedData).then(function(response){
956e0d9ed   Swarn Singh   contact view effe...
81
82
83
84
85
        $scope.updatedData = {};
        $('#editEvent').modal('hide');
        toastr.success('Updated Successfully', {
          closeButton: true
        })
c622f8e75   Swarn Singh   drog-drop and upd...
86
        $scope.events = [];
956e0d9ed   Swarn Singh   contact view effe...
87
88
89
        getEventsList();
      })
    }
4728ddfdd   Swarn Singh   schedule module f...
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
  
  
    /*  code for calendar  */
  
    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
  
    $scope.changeTo = 'Hungarian';
  
    $scope.eventSource = {};
  
    $scope.eventsF = function (start, end, timezone, callback) {
      var s = new Date(start).getTime() / 1000;
      var e = new Date(end).getTime() / 1000;
      var m = new Date(start).getMonth();
      var events = [{title: 'Feed Me ' + m,start: s + (50000),end: s + (100000),allDay: false, className: ['customFeed']}];
      callback(events);
    };
  
    $scope.calEventsExt = {
     color: '#f00',
     textColor: 'yellow',
     events: []
   };
  
   $scope.alertOnEventClick = function( date, jsEvent, view){
    $scope.alertMessage = (date.title + ' was clicked ');
  };
  
  $scope.alertOnDrop = function(event, delta, revertFunc, jsEvent, ui, view){
        var dmonth = event.start._d.getUTCMonth() + 1; //months from 1-12
        var dday = event.start._d.getUTCDate();
        var dyear = event.start._d.getUTCFullYear();
754a525b9   Anchit Jindal   fixed schedular i...
125
126
127
128
129
        var setDeploy = new Date();
        var hours = setDeploy.getHours();
        var min = setDeploy.getMinutes();
        var sec = setDeploy.getSeconds();
        
4728ddfdd   Swarn Singh   schedule module f...
130
131
        for (var i = 0; i < $scope.events.length; i++) {
          if ($scope.events[i].id == event.id) {
c622f8e75   Swarn Singh   drog-drop and upd...
132
133
134
135
136
            //$scope.events[i].start = dyear+'-'+dmonth+'-'+dday;
            $scope.showLoader = true;
            $scope.updatedDataDrop = {};
            $scope.updatedDataDrop.id = $scope.events[i].id;
            $scope.updatedDataDrop.aircraft = $scope.events[i].title;
754a525b9   Anchit Jindal   fixed schedular i...
137
            $scope.updatedDataDrop.deployDate = dyear+'-'+dmonth+'-'+dday + ' ' + hours + ':' + min + ':' + sec;
c622f8e75   Swarn Singh   drog-drop and upd...
138
139
140
141
142
            if ($scope.updatedDataDrop.deployDate != undefined) {
              $scope.updatedDataDrop.deployDate = new Date($scope.updatedDataDrop.deployDate);
              $scope.updatedDataDrop.deployDate = $scope.updatedDataDrop.deployDate.getTime();
            }
            schedulerService.updateScheduledEvent($scope.updatedDataDrop).then(function(response){
c622f8e75   Swarn Singh   drog-drop and upd...
143
144
145
146
147
148
149
150
              $scope.updatedDataDrop = {};
              $('#editEvent').modal('hide');
              toastr.success('Updated Successfully', {
                closeButton: true
              })
              $scope.events = [];
              getEventsList();
            })
a55ef20b5   Swarn Singh   schedular added
151
          }
03cf7c388   Swarn Singh   minor changes due...
152
        }
4728ddfdd   Swarn Singh   schedule module f...
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
        $scope.alertMessage = ('Event Droped to make dayDelta ' + delta);
      };
      
      $scope.alertOnResize = function(event, delta, revertFunc, jsEvent, ui, view ){
       $scope.alertMessage = ('Event Resized to make dayDelta ' + delta);
     };
  
     $scope.addRemoveEventSource = function(sources,source) {
      var canAdd = 0;
      angular.forEach(sources,function(value, key){
        if(sources[key] === source){
          sources.splice(key,1);
          canAdd = 1;
        }
      });
      if(canAdd === 0){
        sources.push(source);
      }
    };
  
    $scope.addEvent = function() {
      $scope.events.push({
        title: 'Open Sesame',
        start: new Date(y, m, 28),
        end: new Date(y, m, 29),
        className: ['openSesame']
      });
    };
  
    $scope.remove = function(index) {
      $scope.events.splice(index,1);
    };
  
    $scope.changeView = function(view,calendar) {
      uiCalendarConfig.calendars[calendar].fullCalendar('changeView',view);
    };
  
    $scope.renderCalender = function(calendar) {
      if(uiCalendarConfig.calendars[calendar]){
        uiCalendarConfig.calendars[calendar].fullCalendar('render');
      }
    };
  
    $scope.eventRender = function( event, element, view ) { 
      element.attr({'tooltip': event.title,
       'tooltip-append-to-body': true});
      $compile(element)($scope);
    };
  
    $scope.uiConfig = {
      calendar:{
        height: 450,
        editable: true,
        droppable: true,
        drop: function (event, delta, revertFunc, jsEvent, ui, view) {
        },
        header:{
          right: 'month basicWeek basicDay',
          center: 'title',
          left: 'prev,next, today'
        },
        eventClick: $scope.alertOnEventClick,
        eventDrop: $scope.alertOnDrop,
        eventResize: $scope.alertOnResize,
        eventRender: $scope.eventRender
      }
    };
  
    $scope.addEvent = function(index) {
      //console.log('INDEX', index);
      //console.log('EVENTS', $scope.eventSources);
a49ef5361   Kuldeep Arora   dashboard & Sched...
224
      // $scope.events.push($scope.eventList[index]);
4728ddfdd   Swarn Singh   schedule module f...
225
    }
a49ef5361   Kuldeep Arora   dashboard & Sched...
226
227
228
229
230
   
    /*$scope.showEventsList = function(){
      console.log('testing', $scope.eventsF);
      
    };*/
961a97a2f   Kuldeep Arora   Enhancement in de...
231

ea94f521f   Kuldeep Arora   scheduler bug fixed
232
      //$scope.eventSources = [$scope.events, $scope.eventSource, $scope.eventsF];
961a97a2f   Kuldeep Arora   Enhancement in de...
233
      //$scope.eventSources2 = [$scope.calEventsExt, $scope.eventsF, $scope.events];
4728ddfdd   Swarn Singh   schedule module f...
234
  }]);
feacde5ff   Rishav   setup acuefuel in...
235