We now have a number of places where we show change notifications based
on an event in a previous page (imported a layer, deleted a build,
deleted a project etc) and we show these notifications on various pages
so we add a simple notification utility to libtoaster.

Signed-off-by: Michael Wood <michael.g.w...@intel.com>
---
 .../lib/toaster/toastergui/static/js/libtoaster.js | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/bitbake/lib/toaster/toastergui/static/js/libtoaster.js 
b/bitbake/lib/toaster/toastergui/static/js/libtoaster.js
index b2099a6..8e2221d 100644
--- a/bitbake/lib/toaster/toastergui/static/js/libtoaster.js
+++ b/bitbake/lib/toaster/toastergui/static/js/libtoaster.js
@@ -449,6 +449,16 @@ var libtoaster = (function () {
     ajaxLoadingTimerEnabled = false;
   }
 
+  /* Utility function to set a notification for the next page load */
+  function _setNotification(name, message){
+    var data = {
+      name: name,
+      message: message
+    };
+
+    $.cookie('toaster-notification', JSON.stringify(data), { path: '/'});
+  }
+
   return {
     enableAjaxLoadingTimer: _enableAjaxLoadingTimer,
     disableAjaxLoadingTimer: _disableAjaxLoadingTimer,
@@ -468,6 +478,7 @@ var libtoaster = (function () {
     showChangeNotification : _showChangeNotification,
     createCustomRecipe: _createCustomRecipe,
     makeProjectNameValidation: _makeProjectNameValidation,
+    setNotification: _setNotification,
   };
 })();
 
@@ -502,6 +513,21 @@ function reload_params(params) {
 /* Things that happen for all pages */
 $(document).ready(function() {
 
+  (function showNotificationRequest(){
+    var cookie = $.cookie('toaster-notification');
+
+    if (!cookie)
+      return;
+
+    var notificationData = JSON.parse(cookie);
+
+    libtoaster.showChangeNotification(notificationData.message);
+
+    $.removeCookie('toaster-notification', { path: "/"});
+  })();
+
+
+
   var ajaxLoadingTimer;
 
   /* If we don't have a console object which might be the case in some
-- 
2.7.4

-- 
_______________________________________________
toaster mailing list
toaster@yoctoproject.org
https://lists.yoctoproject.org/listinfo/toaster

Reply via email to