function all(context) {
    let events;

    data.eventsGet()
      .then(function (resEvents) {
       events = resEvents;
        return templates.get('events');
      })
      .then(function (template) {
        context.$element().html(template(events));
      })
      .catch(function (err) {
        toastr.error(JSON.stringify(err));
      });
  }
        $('#btn-event-add').on('click', function () {
          let event = {
            title: $('#tb-event-title').val(),
            category: $('#tb-event-category').val(),
            description: $('#tb-event-description').val(),
            date: $('#tb-event-date').val() + ' ' + $('#tb-event-time').val(),
            user: $('#tb-event-users').val()
          };

          data.eventsAdd(event)
            .then(function (event) {
              toastr.success(`Event "${event.title}" created!`);
              context.redirect(`#/events?=${event.category}`);
            });
        });
      .then(function (template) {
        context.$element().html(template());
        $('#tb-event-date').datepicker();
        $('#tb-event-time').timepicker();

        $('#btn-event-add').on('click', function () {
          let event = {
            title: $('#tb-event-title').val(),
            category: $('#tb-event-category').val(),
            description: $('#tb-event-description').val(),
            date: $('#tb-event-date').val() + ' ' + $('#tb-event-time').val(),
            user: $('#tb-event-users').val()
          };

          data.eventsAdd(event)
            .then(function (event) {
              toastr.success(`Event "${event.title}" created!`);
              context.redirect(`#/events?=${event.category}`);
            });
        });

        return data.categoriesGet();
      }).then(function (categories) {
 }).then(function (categories) {
   $('#tb-event-category').autocomplete({
     source: categories
   });
   return data.usersGet();
 }).then(function (users) {