svn: /pear2/BugManager/trunk/www/pearworm/source/class/pearworm/model/ Issue.js
[email protected] (Greg Beaver) Wed, 08 Sep 2010 04:39:26 +0000
| Newsgroups | php.pear.cvs,php.pear.core |
|---|---|
| Message-ID | <[email protected]> |
cellog Wed, 08 Sep 2010 04:39:26 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=303160
Log:
bug form now officially looks like the edit page
Changed paths:
U pear2/BugManager/trunk/www/pearworm/source/class/pearworm/model/Issue.js
Modified: pear2/BugManager/trunk/www/pearworm/source/class/pearworm/model/Issue.js
===================================================================
--- pear2/BugManager/trunk/www/pearworm/source/class/pearworm/model/Issue.js 2010-09-08 01:46:23 UTC (rev 303159)
+++ pear2/BugManager/trunk/www/pearworm/source/class/pearworm/model/Issue.js 2010-09-08 04:39:26 UTC (rev 303160)
@@ -40,6 +40,9 @@
assigned : {
event : "changeAssigned"
},
+ status : {
+ event: "changeStatus"
+ },
summary : {
event: "changeSummary"
},
@@ -48,6 +51,25 @@
},
attachments : {
event: "changeAttachments"
+ },
+ packagename : {
+ event: "changePackagename"
+ },
+ packageversion : {
+ event: "changePackageversion"
+ },
+ category : {
+ event: "changeCategory"
+ },
+ secondarycategories : {
+ event: "changeSecondarycategories"
+ },
+ os : {
+ event: "changeOs",
+ nullable: true
+ },
+ phpversion : {
+ event: "changePhpversion"
}
},
members : {
@@ -60,6 +82,26 @@
this.setCreatetimestamp(data.createtimestamp);
this.setModifiedtimestamp(data.modifiedtimestamp);
this.setReporter(pearworm.model.Actor.fromData(data.reporter));
+ this.setStatus(data.status);
+ this.setCategory(data.category.primary);
+ this.setAttachments(data.attachments);
+ var assigned = [];
+ for (var i = 0; i < data.assigned.length; i++) {
+ assigned.push(pearworm.model.Actor.fromData(data.assigned[i]));
+ }
+ this.setAssigned(assigned);
+ if (data.packagename) {
+ this.setPackagename(data.packagename.value);
+ }
+ if (data.packageversion) {
+ this.setPackageversion(data.packageversion.value);
+ }
+ if (data.operatingsystem) {
+ this.setOs(data.operatingsystem.value);
+ }
+ if (data.phpversion) {
+ this.setPhpversion(data.phpversion.value);
+ }
},
getFancyType: function()
{
@@ -70,6 +112,11 @@
}
return "Unknown";
},
+ supportsPackage: function()
+ {
+ return this.getCategory() == "PEAR" || this.getCategory() == "PEAR2" ||
+ this.getCategory() == "PECL";
+ },
getIssueForm: function()
{
var form = new qx.ui.form.Form();
@@ -109,10 +156,67 @@
appearance: "bugheader"
}), {column: 0, row: 1});
header.add(new qx.ui.basic.Label(this.getReporter().uniqueId()), { column: 1, row: 1});
+ header.add(new qx.ui.basic.Label("Assigned:").set({
+ appearance: "bugheader"
+ }), {column: 2, row: 1});
+ var assigned = [];
+ for (var i = 0; i < this.getAssigned().length; i++) {
+ assigned.push(this.getAssigned()[i].getHandle());
+ }
+ header.add(new qx.ui.basic.Label(assigned.join(",")), { column: 3, row: 1});
+ // row 2
+ header.add(new qx.ui.basic.Label("Status:").set({
+ appearance: "bugheader"
+ }), {column: 0, row: 2});
+ header.add(new qx.ui.basic.Label(this.getStatus()), { column: 1, row: 2});
+ var text;
+ if (this.supportsPackage()) {
+ text = "Package:";
+ } else {
+ text = "Component:";
+ }
+ header.add(new qx.ui.basic.Label(text).set({
+ appearance: "bugheader"
+ }), {column: 2, row: 2});
+ if (this.supportsPackage()) {
+ header.add(new qx.ui.basic.Label(this.getPackagename() + " (version " +
+ this.getPackageversion() + ")"), { column: 3, row: 2});
+ } else {
+ header.add(new qx.ui.basic.Label(this.getPackagename() + " (version " +
+ this.getPackageversion() + ")"), { column: 3, row: 2});
+ }
+ // row 3
+ header.add(new qx.ui.basic.Label("PHP Version:").set({
+ appearance: "bugheader"
+ }), {column: 0, row: 3});
+ header.add(new qx.ui.basic.Label(this.getPhpversion()), { column: 1, row: 3});
+ header.add(new qx.ui.basic.Label("OS:").set({
+ appearance: "bugheader"
+ }), {column: 2, row: 3});
+ header.add(new qx.ui.basic.Label(this.getOs()), { column: 3, row: 3});
+
content.add(header);
- content.add(renderer, {flex: 5});
+
+ var choices = new qx.ui.tabview.TabView("top"),
+ commentspage = new qx.ui.tabview.Page("Comments"),
+ patchespage = new qx.ui.tabview.Page("Attachments (" + this.getAttachments().length + ")"),
+ editpage = new qx.ui.tabview.Page("Edit"),
+ addpatchpage = new qx.ui.tabview.Page("Add Attachment");
+
+ commentspage.setLayout(new qx.ui.layout.Grow());
+ patchespage.setLayout(new qx.ui.layout.Grow());
+ editpage.setLayout(new qx.ui.layout.Grow());
+ addpatchpage.setLayout(new qx.ui.layout.Grow());
+
+ editpage.add(renderer);
+
+ choices.add(commentspage);
+ choices.add(patchespage);
+ choices.add(editpage);
+ choices.add(addpatchpage);
+ content.add(choices, {flex: 5});
return content;
}
},