diff --git a/app/index.html b/app/index.html
index a470f8a84c..db4b99b9cf 100644
--- a/app/index.html
+++ b/app/index.html
@@ -124,6 +124,7 @@ TODO configure more restrictive Content-Security-Policy
+
diff --git a/app/scripts/dialogs/add-task/add-task-c.js b/app/scripts/dialogs/add-task/add-task-c.js
index b237440712..5a66ec58ba 100644
--- a/app/scripts/dialogs/add-task/add-task-c.js
+++ b/app/scripts/dialogs/add-task/add-task-c.js
@@ -14,7 +14,7 @@
.controller('AddTaskCtrl', AddTaskCtrl);
/* @ngInject */
- function AddTaskCtrl($mdDialog, Tasks) {
+ function AddTaskCtrl($mdDialog, Tasks, SimpleToast) {
let vm = this;
vm.task = {};
@@ -22,6 +22,7 @@
let success = Tasks.addToday(vm.task);
if (success) {
+ SimpleToast('Created task "' + vm.task.title + '"');
$mdDialog.hide();
}
};
diff --git a/app/scripts/main-header/main-header-d.js b/app/scripts/main-header/main-header-d.js
index 41c81efd62..49d4fccd88 100644
--- a/app/scripts/main-header/main-header-d.js
+++ b/app/scripts/main-header/main-header-d.js
@@ -24,7 +24,7 @@
}
/* @ngInject */
- function MainHeaderCtrl(Dialogs, $rootScope, Tasks, Projects) {
+ function MainHeaderCtrl(Dialogs, $rootScope, Tasks, Projects, SimpleToast) {
let vm = this;
let lastCurrentTask;
@@ -32,8 +32,7 @@
vm.allProjects = Projects.getList();
-
- this.openMenu = function($mdOpenMenu, ev) {
+ this.openMenu = function ($mdOpenMenu, ev) {
$mdOpenMenu(ev);
};
@@ -51,8 +50,10 @@
if (vm.isOnBreak) {
lastCurrentTask = $rootScope.r.currentTask;
Tasks.updateCurrent(null);
+ SimpleToast('On break!');
} else {
Tasks.updateCurrent(lastCurrentTask);
+ SimpleToast('Off break!');
}
};
}
diff --git a/app/scripts/main/global-services/projects-s.js b/app/scripts/main/global-services/projects-s.js
index 1718c8f2fb..57516ce9e9 100644
--- a/app/scripts/main/global-services/projects-s.js
+++ b/app/scripts/main/global-services/projects-s.js
@@ -14,7 +14,7 @@
.service('Projects', Projects);
/* @ngInject */
- function Projects(LS_DEFAULTS, $localStorage, $rootScope, Uid, $window, $log) {
+ function Projects(LS_DEFAULTS, $localStorage, $rootScope, Uid, $window, SimpleToast) {
const OMITTED_LS_FIELDS = ['currentProject', 'projects', '$$hashKey', '$$mdSelectId'];
this.getList = () => {
@@ -51,8 +51,8 @@
};
this.createNewFromCurrent = (projectTitle) => {
- if ($localStorage.projects.length !== 0) {
- $log.error('there is already a project');
+ if ($localStorage.projects.length > 0) {
+ SimpleToast('ERROR: There is already a project');
return;
}
diff --git a/app/scripts/main/global-services/simple-toast-s.js b/app/scripts/main/global-services/simple-toast-s.js
new file mode 100644
index 0000000000..89f1b06d73
--- /dev/null
+++ b/app/scripts/main/global-services/simple-toast-s.js
@@ -0,0 +1,27 @@
+/**
+ * @ngdoc service
+ * @name superProductivity.SimpleToast
+ * @description
+ * # SimpleToast
+ * Service in the superProductivity.
+ */
+
+(function () {
+ 'use strict';
+
+ angular
+ .module('superProductivity')
+ .service('SimpleToast', SimpleToast);
+
+ /* @ngInject */
+ function SimpleToast($mdToast) {
+
+ return (textContent) => {
+ return $mdToast.show($mdToast.simple()
+ .textContent(textContent)
+ .position('bottom'));
+ };
+ // AngularJS will instantiate a singleton by calling "new" on this function
+ }
+
+})();
diff --git a/app/scripts/main/global-services/simple-toast-s.spec.js b/app/scripts/main/global-services/simple-toast-s.spec.js
new file mode 100644
index 0000000000..b0f45a7e54
--- /dev/null
+++ b/app/scripts/main/global-services/simple-toast-s.spec.js
@@ -0,0 +1,17 @@
+'use strict';
+
+describe('Service: SimpleToast', function() {
+ // load the service's module
+ beforeEach(module('superProductivity'));
+
+ // instantiate service
+ var SimpleToast;
+ beforeEach(inject(function (_SimpleToast_) {
+ SimpleToast = _SimpleToast_;
+ }));
+
+ it('should be defined', function() {
+ expect(true).toBe(true);
+ });
+
+});
\ No newline at end of file
diff --git a/app/scripts/routes/settings/settings-c.js b/app/scripts/routes/settings/settings-c.js
index af082ee67c..c9ea0e43c0 100644
--- a/app/scripts/routes/settings/settings-c.js
+++ b/app/scripts/routes/settings/settings-c.js
@@ -14,7 +14,7 @@
.controller('SettingsCtrl', SettingsCtrl);
/* @ngInject */
- function SettingsCtrl($localStorage, $rootScope, $scope, Projects, Dialogs, DEFAULT_THEME, $mdToast) {
+ function SettingsCtrl($localStorage, $rootScope, $scope, Projects, Dialogs, DEFAULT_THEME, SimpleToast) {
let vm = this;
function init() {
@@ -33,9 +33,7 @@
vm.createNewProjectFromCurrent = (projectTitle) => {
Projects.createNewFromCurrent(projectTitle);
- $mdToast.show($mdToast.simple()
- .textContent('Project "' + projectTitle + '" successfully saved')
- .position('bottom'));
+ SimpleToast('Project "' + projectTitle + '" successfully saved');
};
vm.createNewProject = () => {
@@ -58,9 +56,7 @@
$localStorage.projects = $rootScope.r.projects = [];
}
- $mdToast.show($mdToast.simple()
- .textContent('Settings successfully imported')
- .position('bottom'));
+ SimpleToast('Settings successfully imported');
};
// jira stuff
@@ -71,9 +67,7 @@
$rootScope.r.currentProject.data.jiraSettings = settings;
}
- $mdToast.show($mdToast.simple()
- .textContent('Jira settigns saved')
- .position('bottom'));
+ SimpleToast('Jira settigns saved');
};
// theme stuff