[Checkins] SVN: lovely.remotetask/trunk/ added 'cancel all' button

Bernd Roessl bernd.roessl at lovelysystems.com
Mon Nov 12 11:48:53 EST 2007


Log message for revision 81771:
  added 'cancel all' button

Changed:
  U   lovely.remotetask/trunk/CHANGES.txt
  U   lovely.remotetask/trunk/setup.py
  U   lovely.remotetask/trunk/src/lovely/remotetask/browser/README.txt
  U   lovely.remotetask/trunk/src/lovely/remotetask/browser/jobs.pt
  U   lovely.remotetask/trunk/src/lovely/remotetask/browser/service.py

-=-
Modified: lovely.remotetask/trunk/CHANGES.txt
===================================================================
--- lovely.remotetask/trunk/CHANGES.txt	2007-11-12 15:43:28 UTC (rev 81770)
+++ lovely.remotetask/trunk/CHANGES.txt	2007-11-12 16:48:52 UTC (rev 81771)
@@ -2,11 +2,13 @@
 Changes for lovely.remotetask
 =============================
 
-unreleased:
-===========
+2007/11/12 0.2.13:
+==================
 
+- added "cancel all" button
 - fixed bug in associating threads with task service instances
 
+
 2007/10/28 0.2.12:
 ==================
 
@@ -15,6 +17,7 @@
   not removed. If this happens zope can no longer be restarted if autostart is
   used.
 
+
 2007/10/28 0.2.11:
 ==================
 

Modified: lovely.remotetask/trunk/setup.py
===================================================================
--- lovely.remotetask/trunk/setup.py	2007-11-12 15:43:28 UTC (rev 81770)
+++ lovely.remotetask/trunk/setup.py	2007-11-12 16:48:52 UTC (rev 81771)
@@ -3,7 +3,7 @@
 
 setup (
     name='lovely.remotetask',
-    version='0.2.12',
+    version='0.2.13',
     author = "Lovely Systems",
     author_email = "office at lovelysystems.com",
     description = "A remotetask client utiltiy for zope 3",

Modified: lovely.remotetask/trunk/src/lovely/remotetask/browser/README.txt
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/browser/README.txt	2007-11-12 15:43:28 UTC (rev 81770)
+++ lovely.remotetask/trunk/src/lovely/remotetask/browser/README.txt	2007-11-12 16:48:52 UTC (rev 81771)
@@ -119,15 +119,21 @@
 
 You can cancel scheduled jobs:
 
-  >>> browser.getControl('Cancel').click()
+  >>> browser.getControl('Cancel', index=0).click()
   >>> 'No jobs were selected.' in browser.contents
   True
 
   >>> browser.getControl(name='jobs:list').getControl(value='1').click()
-  >>> browser.getControl('Cancel').click()
+  >>> browser.getControl('Cancel', index=0).click()
   >>> 'Jobs were successfully cancelled.' in browser.contents
   True
 
+It is also possible cancle all jobs::
+
+  >>> browser.getControl('Cancel all', index=0).click()
+  >>> 'All jobs cancelled' in browser.contents
+  True
+
 You can also clean attic jobs:
 
   >>> browser.getControl('Remove all').click()

Modified: lovely.remotetask/trunk/src/lovely/remotetask/browser/jobs.pt
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/browser/jobs.pt	2007-11-12 15:43:28 UTC (rev 81770)
+++ lovely.remotetask/trunk/src/lovely/remotetask/browser/jobs.pt	2007-11-12 16:48:52 UTC (rev 81771)
@@ -68,11 +68,24 @@
   font-size: 10px;
 }
 </style>
+<script type="text/javascript">
+
+  function confirmCancelAll(form) {
+     if (cancelAll) {
+         cancelAll=false;
+         return confirm("Sure?")
+     }
+     else {
+         return true
+     };
+  }
+</script>
 </head>
 <body>
 <div metal:fill-slot="body">
 
 <form action="" method="post"
+      onsubmit="return confirmCancelAll(this)"
       tal:attributes="action request/URL" tal:define="jobs view/jobs">
 
   <div class="message"
@@ -147,6 +160,8 @@
 
       <input type="submit" class="button" name="CANCEL" value="Cancel selected"
              i18n:attributes="value" />
+      <input type="submit" class="button" name="CANCEL_ALL" value="Cancel all"
+             i18n:attributes="value" onclick="cancelAll=true;"/>
     </div>
   </div>
 

Modified: lovely.remotetask/trunk/src/lovely/remotetask/browser/service.py
===================================================================
--- lovely.remotetask/trunk/src/lovely/remotetask/browser/service.py	2007-11-12 15:43:28 UTC (rev 81770)
+++ lovely.remotetask/trunk/src/lovely/remotetask/browser/service.py	2007-11-12 16:48:52 UTC (rev 81771)
@@ -382,6 +382,11 @@
             self.context.clean(stati=[interfaces.COMPLETED])
             cleaned = jobs - len(list(self.context.jobs.keys()))
             self.status = u'Cleaned %r Jobs' % cleaned
+        elif 'CANCEL_ALL' in self.request:
+            jobs = list(self.context.jobs.keys())
+            for job in jobs:
+                self.context.cancel(job)
+            self.status = u'All jobs cancelled'
 
     def __call__(self):
         self.update()



More information about the Checkins mailing list