LucasMMota commented on a change in pull request #5997: [AIRFLOW-5396] - Add 
button Auto Refresh
URL: https://github.com/apache/airflow/pull/5997#discussion_r322946082
 
 

 ##########
 File path: airflow/www/templates/airflow/dag.html
 ##########
 @@ -573,5 +581,59 @@ <h4 class="modal-title" id="dagModalLabel">
       $.post(url);
     });
 
+    // AutoRefresh
+    AUTO_REFRESH_COOKIE_NAME = 'airflow_auto_refresh_enabled'
+
+    setCookie = (cname, cvalue, exdays) => {
+    var d = new Date();
+      d.setTime(d.getTime() + (exdays*24*60*60*1000));
+      var expires = "expires="+ d.toUTCString();
+      document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
+    }
+
+    getCookie = (cname)=> {
+      var name = cname + "=";
+      var decodedCookie = decodeURIComponent(document.cookie);
+      var ca = decodedCookie.split(';');
+      for(var i = 0; i <ca.length; i++) {
+        var c = ca[i];
+        while (c.charAt(0) == ' ') {
+          c = c.substring(1);
+        }
+        if (c.indexOf(name) == 0) {
+          return c.substring(name.length, c.length);
+        }
+      }
+      return "";
+    }
+
+    rmCookie = (cname)=>{
+      setCookie(cname, '', 0)
+    }
+
+    isAutoRefreshEnabled = ()=>{
+        return getCookie(AUTO_REFRESH_COOKIE_NAME)==1
+    }
+
+    toggleAutoRefresh = ()=>{
+      if(isAutoRefreshEnabled()){
+        $('#label-auto-refresh').html('Auto Refresh')
+        rmCookie(AUTO_REFRESH_COOKIE_NAME)
+      }else{
+        setCookie(AUTO_REFRESH_COOKIE_NAME, 1)
+      }
+    }
+
+    setInterval(()=>{
+        if (isAutoRefreshEnabled())
+            location.reload()
 
 Review comment:
   As I see on the code, the endpoint returns the data in a specif format to 
that screen. To implement a refresh like this to the Tree View screen it is 
necessary to add a new endpoint (maybe use an existent, I'm not sure if we have 
with this format).
   My suggestion is to move forward refreshing the page as a V1 implementation 
and add such functionality in the next version of this functionality. Also, my 
colleagues identified using it that we can have a time delay option to the Auto 
Refresh.
   What is your opinion about this functionality and implementation?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to