Tools__StoreProjectBrowser.st
changeset 7009 8664e1a7ac19
parent 7008 1342e46cb074
child 7010 52a2a508e169
--- a/Tools__StoreProjectBrowser.st	Sat Aug 26 19:39:52 2006 +0200
+++ b/Tools__StoreProjectBrowser.st	Sat Aug 26 20:18:25 2006 +0200
@@ -5,7 +5,7 @@
 ApplicationModel subclass:#StoreProjectBrowser
 	instanceVariableNames:'connection commentTextHolder packagesList selectedVersionHolder
 		versionsList selectedPackageHolder packagesFilterHolder
-		infoLabelHolder'
+		infoLabelHolder selectedBundleOrPackage selectedVersion'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'System-SourceCodeManagement'
@@ -334,14 +334,14 @@
 !StoreProjectBrowser methodsFor:'actions'!
 
 packageSelectionChanged
-    |newest selectedItem|
+    |newest|
 
-    selectedItem := packagesList value at:(selectedPackageHolder value).
-    self updateVersionsListFor:selectedItem.
+    selectedBundleOrPackage := packagesList value at:(selectedPackageHolder value).
+    self updateVersionsListFor:selectedBundleOrPackage.
 
     versionsList notEmptyOrNil ifTrue:[
         newest := versionsList value first.
-        self updateCommentFor:selectedItem
+        self updateCommentFor:newest
     ].
 !
 
@@ -349,7 +349,7 @@
     |selectedItem|
 
     selectedItem := versionsList value at:(selectedVersionHolder value).
-    self updateCommentFor:selectedItem
+    self updateBlessingCommentFor:selectedItem
 ! !
 
 !StoreProjectBrowser methodsFor:'aspects'!
@@ -548,7 +548,8 @@
 
     items := Set new.
     cursor := connection 
-                execute:'SELECT version,username,timestamp,commentid FROM tw_bundle WHERE name = ''',aBundle name,''';'
+                execute:'SELECT version,username,timestamp,commentid,primarykey 
+FROM tw_bundle WHERE name = ''',aBundle name,''';'
                 release:false.
 
     [cursor next notNil] whileTrue:[
@@ -559,6 +560,7 @@
         v := PundleVersion new.
         v pundle:aBundle version:(row at:1) user:(row at:2).
         v timestampInt:(row at:3) commentId:(row at:4).
+        v id:(row at:5).
         items add:v.
     ].
     cursor release.
@@ -570,10 +572,37 @@
 self halt.
 !
 
+updateBlessingCommentFor:aPundleVersion
+    |versionId commentId user comment cursor row id|
+
+    versionId := aPundleVersion id.
+
+    cursor := connection 
+                execute:'SELECT username,commentid FROM tw_blessing WHERE pkgid = ',versionId printString,';'
+                release:false.
+    row := cursor next rowAsArray.
+    cursor release.
+
+    user := row at:1.    
+    commentId := row at:2.    
+
+    commentId == 0 ifTrue:[
+        comment := 'No comment' allItalic  
+    ] ifFalse:[
+        comment := self getBlob:commentId.
+    ].
+    self commentTextHolder value:comment.
+!
+
 updateCommentFor:aPundleVersion
-    |comment|
+    |comment id|
 
-    comment := self getBlob:(aPundleVersion commentId).
+    id := aPundleVersion commentId.
+    id == 0 ifTrue:[
+        comment := 'No comment' allItalic  
+    ] ifFalse:[
+        comment := self getBlob:(aPundleVersion commentId).
+    ].
     self commentTextHolder value:comment.
 !
 
@@ -815,5 +844,5 @@
 !StoreProjectBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__StoreProjectBrowser.st,v 1.2 2006-08-26 17:39:52 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__StoreProjectBrowser.st,v 1.3 2006-08-26 18:18:25 cg Exp $'
 ! !