NewBranch.bjs
[gitlive] / Ticket.vala
index a3f337f..9857b7f 100644 (file)
@@ -67,8 +67,22 @@ public class Ticket : Object
                        return;
                }
                 
-               return; 
                 
+               var tid = RooTicket.singleton().createTicket(
+               
+                       _this.project_id.selectedProjectId(),
+               
+                       _this.milestone_id.selectedMilestoneId(),
+                       _this.priority_id.selectedPriorityId() ,
+                       _this.classification_id.selectedClassificationId() ,
+                       _this.developer_id.selectedDeveloperId(),
+                       _this.summary.el.get_text() ,
+                       _this.description.el.buffer.text 
+               );
+               
+               if (this.repo != null) {
+                       NewBranch.singleton().show(this.repo, new Gee.ArrayList<GitMonitorQueue>(), tid);
+               }
                 
         
                 
@@ -932,13 +946,13 @@ public class Ticket : Object
         }
 
         // user defined functions
-        public string selectedProjectId () {
+        public string selectedClassificationId () {
                Gtk.TreeIter iter;
                Value val1;
          
          
                this.el.get_active_iter (out iter);
-               _this.prmodel.el.get_value (iter, 0, out val1);
+               _this.clmodel.el.get_value (iter, 0, out val1);
          
         
                return  (string) val1;
@@ -1163,14 +1177,56 @@ public class Ticket : Object
                GLib.debug("fire response = 1");
                
                
-               var invalid = true;
+               var invalid = false;
                
                // validate first...
-               this.el.get_style_context().add_class("suggested-action");
+               _this.project_id.el.get_child().get_style_context().remove_class("warning");    
+               if (_this.project_id.selectedProjectId() == "") {
+                       _this.project_id.el.get_child().get_style_context().add_class("warning");
+                       invalid = true;
+               }
+               
+               _this.milestone_id.el.get_child().get_style_context().remove_class("warning");  
+               if (_this.milestone_id.selectedMilestoneId() == "") {
+                       _this.milestone_id.el.get_child().get_style_context().add_class("warning");
+                       invalid = true;
+               }
+            
+               _this.priority_id.el.get_child().get_style_context().remove_class("warning");   
+               if (_this.priority_id.selectedPriorityId() == "") {
+                       _this.priority_id.el.get_child().get_style_context().add_class("warning");
+                       invalid = true;
+               }
                
+               _this.classification_id.el.get_child().get_style_context().remove_class("warning");     
+               if (_this.classification_id.selectedClassificationId() == "") {
+                       _this.classification_id.el.get_child().get_style_context().add_class("warning");
+                       invalid = true;
+               }
                
+               _this.developer_id.el.get_child().get_style_context().remove_class("warning");  
+               if (_this.developer_id.selectedDeveloperId() == "") {
+                       _this.developer_id.el.get_child().get_style_context().add_class("warning");
+                       invalid = true;
+               }
                
+               _this.summary.el.get_style_context().remove_class("warning");   
+               if (_this.summary.el.get_text() == "") {
+                       _this.summary.el.get_style_context().add_class("warning");
+                       invalid = true;
+               }
                
+               _this.description.el.get_style_context().remove_class("warning");       
+               if (_this.description.el.buffer.text == "") {
+                       _this.description.el.get_style_context().add_class("warning");
+                       invalid = true;
+               }
+               
+               
+               if (invalid) {
+                       return;
+               }
+               GLib.debug("for is valid");
                
                _this.el.response(1);
             });