Added the last 10 bug open list
authorgianluca <gian@galactica>
Wed, 8 Jul 2009 22:49:24 +0000 (00:49 +0200)
committergianluca <gian@galactica>
Wed, 8 Jul 2009 22:49:24 +0000 (00:49 +0200)
.be/bugs/2b81b428-fc43-4970-9469-b442385b9c0d/values [new file with mode: 0644]
becommands/html.py
becommands/html_data.py

diff --git a/.be/bugs/2b81b428-fc43-4970-9469-b442385b9c0d/values b/.be/bugs/2b81b428-fc43-4970-9469-b442385b9c0d/values
new file mode 100644 (file)
index 0000000..ef6644a
--- /dev/null
@@ -0,0 +1,17 @@
+creator: gianluca <gian@galactica>
+
+
+reporter: gianluca <gian@galactica>
+
+
+severity: minor
+
+
+status: open
+
+
+summary: Use the get_parser
+
+
+time: Wed, 08 Jul 2009 21:27:37 +0000
+
index cc64c7dcb52c25675cf8c72d10dcaeaf0fc372ab..df7a99facc83514b7aa78e89bea721b555c46d9c 100644 (file)
@@ -20,7 +20,7 @@
 """Re-open a bug"""
 from libbe import cmdutil, bugdir, bug
 from html_data import *
-import os,  re
+import os,  re,  time
 
 __desc__ = __doc__
 
@@ -54,46 +54,20 @@ def execute(args, test=False):
     severity_list = bug.severity_values
     st = {}
     se = {}
-    
+    stime = {}
     for s in status_list:
         st[s] = 0
     for s in severity_list:
         se[s] = 0
+    
     for b in bd:
+        stime[b.uuid]  = b.time
         st[b.status] += 1
         se[b.severity] += 1
-    create_index_file(out_dir,  st,  se)
+    stime_sorted = sorted([(value,key) for (key,value) in stime.items()])
 
-def create_index_file(out_dir_path,  summary,  severity):
-    try:
-        os.stat(out_dir_path)
-    except:
-        try:
-            os.mkdir(out_dir_path)
-        except:
-            raise  cmdutil.UsageError, "Cannot create output directory."
-    try:
-        FO = open(out_dir_path+"/style.css", "w")
-        FO.write(css_file)
-        FO.close()
-    except:
-        raise  cmdutil.UsageError, "Cannot create the style.css file."
-    value = html_index
-    for stat in summary:
-        rep = "_"+stat+"_"
-        val = str(summary[stat])
-        value = re.sub(rep,  val,  value)
-    for sev in severity:
-        rep = "_"+sev+"_"
-        val = str(severity[sev])
-        value = re.sub(rep,  val, value)
-    try:
-        FO = open(out_dir_path+"/index.html", "w")
-        FO.write(value)
-        FO.close()
-    except:
-        raise  cmdutil.UsageError, "Cannot create the index.html file."
-    
+    html_gen = BEHTMLGen()
+    html_gen.create_index_file(out_dir,  st,  se,  stime_sorted)
     
 def get_parser():
     parser = cmdutil.CmdOptionParser("be open OUTPUT_DIR")
@@ -105,3 +79,58 @@ Generate a set of html pages.
 
 def help():
     return get_parser().help_str() + longhelp
+    
+    
+class BEHTMLGen():
+    def __init__(self):
+        self.index_value = ""        
+        
+    def create_index_file(self, out_dir_path,  summary,  severity,  last_bug):
+        try:
+            os.stat(out_dir_path)
+        except:
+            try:
+                os.mkdir(out_dir_path)
+            except:
+                raise  cmdutil.UsageError, "Cannot create output directory."
+        try:
+            FO = open(out_dir_path+"/style.css", "w")
+            FO.write(css_file)
+            FO.close()
+        except:
+            raise  cmdutil.UsageError, "Cannot create the style.css file."
+        value = html_index
+        for stat in summary:
+            rep = "_"+stat+"_"
+            val = str(summary[stat])
+            value = re.sub(rep,  val,  value)
+        for sev in severity:
+            rep = "_"+sev+"_"
+            val = str(severity[sev])
+            value = re.sub(rep,  val, value)
+        
+        c = 0
+        t = len(last_bug)-1
+        for l in range(t,  0,  -1):
+            line = ""
+            line = re.sub('_BUG_ID_', last_bug[l][1], last_activity)
+            line1 = re.sub('_BUG_', last_bug[l][1][0:3], line)
+            line2 = re.sub('_DATE_',  time.ctime(last_bug[l][0]),  line1)
+            if c%2 == 0:
+                linef = re.sub('_ROW_',  "even-row",  line2)
+            else:
+                linef = re.sub('_ROW_',  "odd-row",  line2)
+            self.index_value += linef
+            c += 1
+            if c == 10:
+                break
+        
+        value = re.sub("_LAST_ACTVITY_", self.index_value, value)
+
+        try:
+            FO = open(out_dir_path+"/index.html", "w")
+            FO.write(value)
+            FO.close()
+        except:
+            raise  cmdutil.UsageError, "Cannot create the index.html file."
+            
index db3d1c0b1fefe06c976774a84f4807310e7804d5..f72eb3a6a101d0c41ea25a99cf0a748403b3b6bb 100644 (file)
@@ -317,9 +317,10 @@ html_index = """
     </tbody>
   </table>
 </td>
+
 <td>
 
-  <h2>Open issues by severity</h2>
+  <h2>Issues list by severity</h2>
   <table>
     <tbody>
         <tr class="even-row">
@@ -380,6 +381,18 @@ html_index = """
     </tbody>
   </table>
 </td>
+<td>
+
+  <h2>Last 10 Open bugs</h2>
+  <table>
+    <tbody>
+
+_LAST_ACTVITY_
+
+    </tbody>
+  </table>
+</td>
+
 </tr>
 </tbody>
 </table>
@@ -393,3 +406,8 @@ html_index = """
 </html>
 """
 
+last_activity = """
+        <tr class="_ROW_">
+            <td><a href="_BUG_ID_.html">_BUG_ on _DATE_</a></td>
+        </tr>
+"""