arnaucube
arnaucube/commonroutesAppPublic Self-hosted repository
commonroutesApp/www/js/controllers.js
www/js/controllers.jsRaw
  1
  2var urlapi="http://localhost:3000/api/";
  3//var urlapi="https://collectivecar.paas.primustech.io/api/";
  4
  5
  6//localStorage.setItem("c_username", "user2");
  7//localStorage.setItem("c_token", "");
  8
  9
 10angular.module('starter.controllers', ['pascalprecht.translate'])
 11
 12.controller('AppCtrl', function($scope, $ionicModal, $timeout, $http, $window, $ionicLoading) {
 13  // With the new view caching in Ionic, Controllers are only called
 14  // when they are recreated or on app start, instead of every page change.
 15  // To listen for when this page is active (for example, to refresh data),
 16  // listen for the $ionicView.enter event:
 17  //$scope.$on('$ionicView.enter', function(e) {
 18  //});
 19
 20  // Form data for the login modal
 21  $scope.loginData = {};
 22  $scope.signupData= {};
 23
 24  $scope.storageusername=localStorage.getItem("c_username");
 25  $scope.storageavatar=localStorage.getItem("c_avatar");
 26  // Create the login modal that we will use later
 27  $ionicModal.fromTemplateUrl('templates/login.html', {
 28    scope: $scope
 29  }).then(function(modal) {
 30    $scope.modalLogin = modal;
 31  });
 32  $ionicModal.fromTemplateUrl('templates/signup.html', {
 33    scope: $scope
 34  }).then(function(modal) {
 35    $scope.modalSignup = modal;
 36  });
 37
 38  // Triggered in the login modal to close it
 39  $scope.closeLogin = function() {
 40    $scope.modalLogin.hide();
 41  };
 42  $scope.closeSignup = function() {
 43    $scope.modalSignup.hide();
 44  };
 45
 46  // Open the login modal
 47  $scope.login = function() {
 48    $scope.modalLogin.show();
 49  };
 50  $scope.signup = function() {
 51    $scope.modalSignup.show();
 52  };
 53
 54  // Perform the login action when the user submits the login form
 55  $scope.doLogin = function() {
 56    console.log('Doing login', $scope.loginData);
 57
 58    $http({
 59        url: urlapi + 'auth',
 60        method: "POST",
 61        data: $scope.loginData
 62    })
 63    .then(function(response) {
 64            // success
 65            console.log("response: ");
 66            console.log(response.data);
 67            if(response.data.success==true)
 68            {
 69                console.log("login successful");
 70                localStorage.setItem("c_username", $scope.loginData.username);
 71                localStorage.setItem("c_token", response.data.token);
 72                localStorage.setItem("c_userid", response.data.userid);
 73                localStorage.setItem("c_avatar", response.data.avatar);
 74
 75                localStorage.setItem("c_userdata", JSON.stringify(response.data.userdata));
 76            }else{
 77                console.log("login failed");
 78            }
 79            $timeout(function() {
 80              $scope.closeLogin();
 81              $window.location.reload(true);
 82            }, 1000);
 83
 84    },
 85    function(response) { // optional
 86            // failed
 87            console.log(response);
 88    });
 89
 90  };
 91  $scope.doSignup = function() {
 92    console.log('Doing signup', $scope.signupData);
 93    if($scope.emptyParams($scope.signupData))
 94    {
 95      $http({
 96          url: urlapi + 'users',
 97          method: "POST",
 98          data: $scope.signupData
 99      })
100      .then(function(response) {
101              // success
102              console.log("response: ");
103              console.log(response.data);
104              $timeout(function() {
105                $scope.closeSignup();
106                $scope.login();
107              }, 1000);
108
109      },
110      function(response) { // optional
111              // failed
112            $ionicLoading.show({ template: 'Username already taken', noBackdrop: true, duration: 2000 });
113      });
114    }else{
115      $ionicLoading.show({ template: 'First complete all parameters', noBackdrop: true, duration: 2000 });
116    }
117
118  };
119  $scope.emptyParams = function(obj){
120    if(obj.username==undefined)
121    {
122      return(false);
123    }
124    if(obj.password==undefined)
125    {
126      return(false);
127    }
128    if(obj.mail==undefined)
129    {
130      return(false);
131    }
132    if(obj.phone==undefined)
133    {
134      return(false);
135    }
136    if(obj.avatar==undefined)
137    {
138      return(false);
139    }
140    return(true);
141  };
142  $scope.avatars=[
143    "turtle",
144    "cat",
145    "toucan",
146    "racoon",
147    "tiger",
148    "squirrel",
149    "sheep",
150    "penguin",
151    "panda",
152    "owl",
153    "pelican",
154    "whale",
155    "snake",
156    "mouse",
157    "giraffe",
158    "macaw",
159    "lion",
160    "llama",
161    "kangaroo",
162    "hen",
163    "frog",
164    "clown-fish",
165    "chameleon",
166    "octopus"
167  ];
168  $scope.avatarSelect = function(avat){
169    $scope.signupData.avatar=avat;
170    //alert($scope.signupData.avatar);
171  };
172  $scope.logout = function(){
173      localStorage.removeItem("c_username");
174      localStorage.removeItem("c_token");
175      localStorage.removeItem("c_avatar");
176      localStorage.removeItem("c_userid");
177      localStorage.removeItem("c_userdata");
178      $window.location.reload(true);
179  };
180})
181
182
183.controller('TravelsCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading) {
184    if(localStorage.getItem('c_token')){// adding token to the headers
185        //console.log("token added to headers in run module");
186        //console.log($http.defaults);
187        $http.defaults.headers.post['X-Access-Token'] = localStorage.getItem('c_token');
188        //$http.defaults.headers.post['Content-Type'] = "application/x-www-form-urlencoded; charset=UTF-8";
189        //console.log($http.defaults.headers);
190    }
191    /*if(localStorage.getItem('c_token')){// adding token to the headers
192        $http.defaults.headers.token = localStorage.getItem('c_token');
193    }*/
194
195    $scope.travels="";
196
197    $scope.travels=JSON.parse(localStorage.getItem('c_travels'));
198    $scope.userdata=JSON.parse(localStorage.getItem('c_userdata'));
199    console.log($scope.userdata);
200
201    $scope.doRefresh = function() {
202      /* travels refresh: */
203        $http.get(urlapi + 'travels')
204        .success(function(data, status, headers,config){
205            console.log('data success');
206            console.log(data); // for browser console
207            $scope.travels = data; // for UI
208            localStorage.setItem('c_travels', JSON.stringify($scope.travels));
209            localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
210            $scope.$broadcast('scroll.refreshComplete');//refresher stop
211
212        })
213        .error(function(data, status, headers,config){
214            console.log('data error');
215            $scope.$broadcast('scroll.refreshComplete');//refresher stop
216            $ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
217
218        })
219        .then(function(result){
220            travels = result.data;
221            $ionicLoading.show({ template: 'Travels actualized from server!', noBackdrop: true, duration: 2000 });
222        });
223
224        /* users refresh: */
225        $http.get(urlapi + 'users')
226        .success(function(data, status, headers, config){
227            console.log('data success');
228            console.log(data); // for browser console
229            $scope.users = data; // for UI
230            localStorage.setItem('c_users', JSON.stringify($scope.users));
231            $scope.$broadcast('scroll.refreshComplete');//refresher stop
232        })
233        .error(function(data, status, headers,config){
234            console.log('data error');
235            $scope.$broadcast('scroll.refreshComplete');//refresher stop
236        })
237        .then(function(result){
238            users = result.data;
239        });
240    };
241    $scope.newtravel={};
242    /*$scope.newtravel={
243        title: "prova",
244        from: "prova",
245        to: "prova",
246        seats: 3,
247        package: true,
248        phone: 123,
249        telegram: "telusr",
250        description: "this is the description of prova"
251    };*/
252
253  // Create the login modal that we will use later
254  $ionicModal.fromTemplateUrl('templates/newofferingtravel.html', {
255    scope: $scope
256  }).then(function(modal) {
257    $scope.modalOffering = modal;
258  });
259
260  // Create the login modal that we will use later
261  $ionicModal.fromTemplateUrl('templates/newaskingtravel.html', {
262    scope: $scope
263  }).then(function(modal) {
264    $scope.modalAsking = modal;
265  });
266
267  $ionicModal.fromTemplateUrl('templates/newaskingpackage.html', {
268    scope: $scope
269  }).then(function(modal) {
270    $scope.modalPackage = modal;
271  });
272
273  // Triggered in the login modal to close it
274  $scope.closeNewOfferingTravel = function() {
275    $scope.modalOffering.hide();
276  };
277  // Triggered in the login modal to close it
278  $scope.closeNewAskingTravel = function() {
279    $scope.modalAsking.hide();
280  };
281  $scope.closeNewAskingPackage = function() {
282    $scope.modalPackage.hide();
283  };
284
285  // Open the login modal
286  $scope.showNewOfferingTravel = function() {
287    $scope.modalOffering.show();
288  };
289  // Open the login modal
290  $scope.showNewAskingTravel = function() {
291    $scope.modalAsking.show();
292  };
293  $scope.showNewAskingPackage = function() {
294    $scope.modalPackage.show();
295  };
296
297  // Perform the login action when the user submits the login form
298  $scope.doNewOfferingTravel = function() {
299    console.log('Doing new travel', $scope.newtravel);
300    $scope.newtravel.icon="lorry";
301    $scope.newtravel.generateddate=$scope.newtravel.date;
302    $scope.newtravel.owner=localStorage.getItem("c_username");
303    $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
304    $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;
305    $scope.newtravel.modality="offering";
306    //$scope.newtravel.token=localStorage.getItem("c_token");
307    console.log($scope.newtravel);
308    $http({
309        url: urlapi + 'travels',
310        method: "POST",
311        data: $scope.newtravel
312    })
313    .then(function(response) {
314            // success
315            console.log("response: ");
316            console.log(response);
317            //$scope.newtravel._id=response.data._id;
318            //$scope.travels.push($scope.newtravel);
319            $scope.travels=response.data;
320            localStorage.setItem('c_travels', JSON.stringify($scope.travels));
321            localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
322            $scope.newtravel={};
323            if(response.data.success==false){
324
325                $ionicLoading.show({ template: 'failed to generate new travel', noBackdrop: true, duration: 2000 });
326            }
327    },
328    function(response) { // optional
329            // failed
330    });
331
332    // Simulate a login delay. Remove this and replace with your login
333    // code if using a login system
334    $timeout(function() {
335      $scope.closeNewOfferingTravel();
336    }, 1000);
337  };
338
339  $scope.doNewAskingTravel = function() {
340    console.log('Doing new travel', $scope.newtravel);
341    $scope.newtravel.icon="lorry";
342    $scope.newtravel.generateddate=$scope.newtravel.date;
343    $scope.newtravel.owner=localStorage.getItem("c_username");
344    $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
345    $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;
346
347    $scope.newtravel.modality="asking";
348    console.log($scope.newtravel);
349    $http({
350        url: urlapi + 'travels',
351        method: "POST",
352        data: $scope.newtravel
353    })
354    .then(function(response) {
355            // success
356            console.log("response: ");
357            console.log(response);
358            //$scope.newtravel._id=response.data._id;
359            //$scope.travels.push($scope.newtravel);
360            $scope.travels=response.data;
361            localStorage.setItem('c_travels', JSON.stringify($scope.travels));
362            localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
363            $scope.newtravel={};
364            if(response.data.success==false){
365
366                $ionicLoading.show({ template: 'failed to generate new asking travel', noBackdrop: true, duration: 2000 });
367            }
368    },
369    function(response) { // optional
370            // failed
371    });
372
373    // Simulate a login delay. Remove this and replace with your login
374    // code if using a login system
375    $timeout(function() {
376      $scope.closeNewAskingTravel();
377    }, 1000);
378  };
379
380  $scope.doNewAskingPackage = function() {
381    console.log('Doing new package', $scope.newtravel);
382    $scope.newtravel.icon="lorry";
383    $scope.newtravel.generateddate=$scope.newtravel.date;
384    $scope.newtravel.owner=localStorage.getItem("c_username");
385    $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
386    $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;
387
388    $scope.newtravel.package=true;
389
390    $scope.newtravel.modality="package";
391    console.log($scope.newtravel);
392    $http({
393        url: urlapi + 'travels',
394        method: "POST",
395        data: $scope.newtravel
396    })
397    .then(function(response) {
398            // success
399            console.log("response: ");
400            console.log(response);
401            //$scope.newtravel._id=response.data._id;
402            //$scope.travels.push($scope.newtravel);
403            $scope.travels=response.data;
404            localStorage.setItem('c_travels', JSON.stringify($scope.travels));
405            localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
406            $scope.newtravel={};
407            if(response.data.success==false){
408
409                $ionicLoading.show({ template: 'failed to generate new asking package', noBackdrop: true, duration: 2000 });
410            }
411    },
412    function(response) { // optional
413            // failed
414    });
415
416    // Simulate a login delay. Remove this and replace with your login
417    // code if using a login system
418    $timeout(function() {
419      $scope.closeNewAskingPackage();
420    }, 1000);
421  };
422})
423
424.controller('TravelCtrl', function($scope, $stateParams, $http, $ionicModal, $ionicPopup, $filter) {
425    if(localStorage.getItem('c_token')){// adding token to the headers
426        $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem('c_token');
427    }
428    $scope.storageusername=localStorage.getItem("c_username");
429    console.log($stateParams.travelId);
430    $scope.travels= JSON.parse(localStorage.getItem('c_travels'));
431    $scope.travel = $filter('filter')($scope.travels, $stateParams.travelId, true)[0];
432
433    /*$http.get(urlapi + 'travels/comment/'+$stateParams.travelId)
434        .success(function(data, status, headers,config){
435            console.log(data); // for browser console
436            $scope.comments = data; // for UI
437        })
438        .error(function(data, status, headers,config){
439            console.log('data error');
440        })
441        .then(function(result){
442            comments = result.data;
443    });*/
444
445    $scope.deleteTravel = function(){
446
447       var confirmPopup = $ionicPopup.confirm({
448         title: 'Deleting publication',
449         template: 'Are you sure you want to delete <b>'+ $scope.travel.title+'</b>?'
450       });
451       confirmPopup.then(function(res) {
452       if(res) {
453         console.log('You are sure');
454         console.log("delete travel: " + $stateParams.travelId);
455         $http({
456             url: urlapi + 'travels/' + $stateParams.travelId,
457             method: "DELETE"
458         })
459         .then(function(response) {
460                 console.log(response);
461         },
462         function(response) { // optional
463                 // failed
464         });
465       } else {
466         console.log('You are not sure');
467       }
468     });
469
470
471    };
472    $scope.joinTravel = function(){
473        $scope.newjoin={
474            //travelId: $stateParams.travelId,
475            joinedUserId: localStorage.getItem("c_userid"),
476            joinedUsername: localStorage.getItem("c_username"),
477            joinedAvatar: localStorage.getItem("c_avatar")
478        };
479        $http({
480            url: urlapi + 'travels/'+ $stateParams.travelId+'/join',
481            method: "POST",
482            data: $scope.newjoin
483        })
484        .then(function(response) {
485                // success
486                console.log("response: ");
487                console.log(response);
488
489                $scope.travels=response.data;
490                localStorage.setItem('c_travels', JSON.stringify($scope.travels));
491                localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
492                $scope.travel = $filter('filter')($scope.travels, $stateParams.travelId, true)[0];
493
494        },
495        function(response) { // optional
496                // failed
497        });
498    };
499    $scope.unjoinTravel = function(){
500        console.log("unjoin");
501        $scope.unjoin={
502            travelId: $stateParams.travelId,
503            joinedUserId: localStorage.getItem("c_userid"),
504            joinedUsername: localStorage.getItem("c_username"),
505            joinedAvatar: localStorage.getItem("c_avatar")
506        };
507        $http({
508            url: urlapi + 'travels/'+ $stateParams.travelId+'/unjoin',
509            method: "POST",
510            data: $scope.unjoin
511        })
512        .then(function(response) {
513                // success
514                console.log("response: ");
515                console.log(response);
516
517                $scope.travels=response.data;
518                localStorage.setItem('c_travels', JSON.stringify($scope.travels));
519                localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
520                $scope.travel = $filter('filter')($scope.travels, $stateParams.travelId, true)[0];
521
522        },
523        function(response) { // optional
524                // failed
525        });
526    };
527
528    /* adding comment */
529    $scope.doingNewComment=false;
530    $scope.newComment={};
531
532    $scope.showNewComment = function() {
533      $scope.doingNewComment=true;
534    };
535    $scope.closeNewComment = function() {
536        $scope.doingNewComment=false;
537    };
538    $scope.doNewComment = function() {
539        $scope.newComment.commentUserId=localStorage.getItem("c_userid");
540        $scope.newComment.commentUsername=localStorage.getItem("c_username");
541        $scope.newComment.commentAvatar=localStorage.getItem("c_avatar");
542console.log($scope.newComment);
543        $http({
544          url: urlapi + 'travels/'+ $stateParams.travelId+'/comment',
545          method: "POST",
546          data: $scope.newComment
547        })
548        .then(function(response) {
549              // success
550              console.log("newComment added to server: " + response);
551              console.log(response);
552              $scope.travels=response.data;
553              localStorage.setItem('c_travels', JSON.stringify($scope.travels));
554              localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
555              $scope.travel = $filter('filter')($scope.travels, $stateParams.travelId, true)[0];
556
557              if(response.data.success==false){
558
559                  $ionicLoading.show({ template: 'failed to generate new asking package', noBackdrop: true, duration: 2000 });
560              }
561        },
562        function(response) { // optional
563              // failed
564        });
565        $scope.closeNewComment();
566    };
567    console.log("a");
568    console.log($scope.storageusername);
569    console.log($scope.travel.owner);
570
571
572    $scope.arrayObjectIndexOf = function(myArray, searchTerm, property) {
573      //console.log(myArray+", "+searchTerm+", "+property);
574        if(myArray)
575        {
576            for(var i = 0, len = myArray.length; i < len; i++) {
577                if (myArray[i][property] === searchTerm){
578                    //console.log("i: " + i);
579                    return i;
580                }
581            }
582        }
583        //console.log("i: -1");
584        return -1;
585    };
586})
587
588.controller('UsersCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading) {
589    $scope.users="";
590
591    $scope.users=JSON.parse(localStorage.getItem('c_users'));
592
593    $scope.doRefresh = function() {
594      /* travels refresh: */
595        $http.get(urlapi + 'travels')
596        .success(function(data, status, headers,config){
597            console.log('data success');
598            console.log(data); // for browser console
599            $scope.travels = data; // for UI
600            localStorage.setItem('c_travels', JSON.stringify($scope.travels));
601            localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
602            $scope.$broadcast('scroll.refreshComplete');//refresher stop
603
604        })
605        .error(function(data, status, headers,config){
606            console.log('data error');
607            $scope.$broadcast('scroll.refreshComplete');//refresher stop
608            $ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
609
610        })
611        .then(function(result){
612            travels = result.data;
613            $ionicLoading.show({ template: 'Travels actualized from server!', noBackdrop: true, duration: 2000 });
614        });
615
616        /* users refresh: */
617        $http.get(urlapi + 'users')
618        .success(function(data, status, headers, config){
619            console.log('data success');
620            console.log(data); // for browser console
621            $scope.users = data; // for UI
622            localStorage.setItem('c_users', JSON.stringify($scope.users));
623            $scope.$broadcast('scroll.refreshComplete');//refresher stop
624        })
625        .error(function(data, status, headers,config){
626            console.log('data error');
627            $scope.$broadcast('scroll.refreshComplete');//refresher stop
628        })
629        .then(function(result){
630            users = result.data;
631        });
632    };
633})
634
635.controller('UserCtrl', function($scope, $stateParams, $http, $filter) {
636    if(localStorage.getItem('c_token')){// adding token to the headers
637        $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem('c_token');
638    }
639    $scope.storageusername=localStorage.getItem("c_username");
640    $scope.users= JSON.parse(localStorage.getItem('c_users'));
641    $scope.user = $filter('filter')($scope.users, $stateParams.username, true)[0];
642    //$scope.user="";
643    console.log($stateParams.username);
644    /*$http.get(urlapi + 'users/byusername/'+$stateParams.username)
645        .success(function(data, status, headers,config){
646            console.log('data success');
647            console.log(data); // for browser console
648            $scope.user = data; // for UI
649        })
650        .error(function(data, status, headers,config){
651            console.log('data error');
652        })
653        .then(function(result){
654            user = result.data;
655    });*/
656
657    $http.get(urlapi + 'travels/user/'+$stateParams.username)
658        .success(function(data, status, headers,config){
659            console.log('data success');
660            console.log(data); // for browser console
661            $scope.travels = data; // for UI
662        })
663        .error(function(data, status, headers,config){
664            console.log('data error');
665        })
666        .then(function(result){
667            travels = result.data;
668    });
669
670
671
672    $scope.favUser = function(){
673        $scope.newfav={
674            //travelId: $stateParams.travelId,
675            userId: localStorage.getItem("c_userid"),
676            username: localStorage.getItem("c_username"),
677            avatar: localStorage.getItem("c_avatar")
678        };
679        $http({
680            //url: urlapi + 'users/'+ $stateParams.username+'/fav',
681            url: urlapi + 'users/'+ $scope.user._id+'/fav',
682            method: "POST",
683            data: $scope.newfav
684        })
685        .then(function(response) {
686                // success
687                console.log("response: ");
688                console.log(response);
689
690                $scope.users=response.data;
691                localStorage.setItem('c_users', JSON.stringify($scope.users));
692                $scope.user = $filter('filter')($scope.users, $stateParams.username, true)[0];
693
694        },
695        function(response) { // optional
696                // failed
697        });
698    };
699    $scope.unfavUser = function(){
700        console.log("unfav");
701        $scope.unfav={
702            userId: localStorage.getItem("c_userid"),
703            username: localStorage.getItem("c_username"),
704            avatar: localStorage.getItem("c_avatar")
705        };
706        $http({
707            //url: urlapi + 'users/'+ $stateParams.username+'/fav',
708            url: urlapi + 'users/'+ $scope.user._id+'/unfav',
709            method: "POST",
710            data: $scope.unfav
711        })
712        .then(function(response) {
713                // success
714                console.log("response: ");
715                console.log(response);
716
717                $scope.users=response.data;
718                localStorage.setItem('c_users', JSON.stringify($scope.users));
719                $scope.user = $filter('filter')($scope.users, $stateParams.username, true)[0];
720
721        },
722        function(response) { // optional
723                // failed
724        });
725    };
726
727    $scope.arrayObjectIndexOf = function(myArray, searchTerm, property) {
728        if(myArray){
729            for(var i = 0, len = myArray.length; i < len; i++) {
730                if (myArray[i][property] === searchTerm){
731                    return i;
732                }
733            }
734        }
735        return -1;
736    };
737})
738.controller('SettingsCtrl', function($scope, $stateParams, $translate) {
739  if(localStorage.getItem('lang'))//initialization
740  {
741    $scope.lang=localStorage.getItem('lang');
742  }else{
743    localStorage.setItem('lang', 'english');
744    $scope.lang=localStorage.getItem('lang');
745  }
746
747  $scope.langChange = function(lang){
748    console.log(lang);
749      window.localStorage.setItem('lang', lang);
750      $translate.use(lang);
751  };
752})
753.controller('HelpCtrl', function($scope, $stateParams, $translate) {
754  console.log("help page");
755});