// Auto generated file - created by app.Builder.js- do not edit directly (at present!)
+Roo.namespace('Pman.Dialog');
+
Pman.Dialog.MTrackTicket = {
- dialog : false,
- callback: false,
+ _strings : {
+ 'a02a8093b46b8e647c29727fb50d67e4' :"Select milestone",
+ '672caf27f5363dc833bda5099775e891' :"Developer",
+ '9e727fdd3aec8274f46685441900280d' :"Project",
+ '6a58f977f2b623b695a340766f2a6843' :"Select Project",
+ 'a5ffb2a210f259195a75e5abca8db4a2' :"Select mtrack_milestone",
+ '6c768695a8efb18436d5b7b4374cdb45' :"Select core_enum",
+ '007cc9547ae8884ad597cd92ba505422' :"Severity",
+ '86e9400686e8e080ef3c8995afb5eb86' :"Select Priority",
+ 'ddcf50c29294d4414f3f7c1bbc892cb5' :"Resources",
+ '290612199861c31d1036b185b4e69b75' :"Summary",
+ '1cb251ec0d568de6a929b520c4aed8d1' :"text",
+ '5c9335b28e6277ddbe0137f04e5e58a7' :"Classification",
+ '3c311fbd0f9e51ce27b984f55164cf83' :"Estimated",
+ '1243daf593fa297e07ab03bf06d925af' :"Searching...",
+ 'c4ca4238a0b923820dcc509a6f75849b' :"1",
+ 'ea4788705e6873b424c65e91c2846b19' :"Cancel",
+ '502996d9790340c5fd7b86a5b93b1c9f' :"Priority",
+ 'b6f4a2ec6356bbd56d49f2096bf9d3d3' :"Owner",
+ 'ff18c41b7689060c39934dbb74de1e9c' :"Edit or Create Ticket",
+ '24f27bda5dd2c488aa9bc7700ba98c34' :"Select Projects",
+ '340c2ee497b85d5954b01c64de7f44f6' :"Select Person",
+ '23e6bcd09b259e6de4cd972516cb4214' :"View as",
+ '590fc197fe73db0aa2ec03687a372eea' :"markdown",
+ 'e9c626b8a8b62de7562dfbf51a576ae5' :"Milestone",
+ '43371ce8259ba854b1ae3543fd477874' :"Select Severity",
+ 'a8dbd02aaca3948002718aeb2babeefe' :"Summary / Details",
+ '9fc2d28c05ed9eb1d75ba4465abf15a9' :"Properties",
+ 'b5a7adde1af5c87d7fd797b6245c2a39' :"Description",
+ 'c9cc8cce247e49bae79f15173ce97354' :"Save",
+ 'fcb17935fd52e65b8f223778c9e70313' :"Select Classification"
+ },
+ _named_strings : {
+ 'view_as_markdown_value' : 'c4ca4238a0b923820dcc509a6f75849b' /* 1 */ ,
+ 'estimated_fieldLabel' : '3c311fbd0f9e51ce27b984f55164cf83' /* Estimated */ ,
+ 'severity_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'developer_id_name_qtip' : '340c2ee497b85d5954b01c64de7f44f6' /* Select Person */ ,
+ 'milestone_id_name_fieldLabel' : 'e9c626b8a8b62de7562dfbf51a576ae5' /* Milestone */ ,
+ 'priority_id_name_qtip' : '6c768695a8efb18436d5b7b4374cdb45' /* Select core_enum */ ,
+ 'view_as_text_boxLabel' : '1cb251ec0d568de6a929b520c4aed8d1' /* text */ ,
+ 'developer_id_name_fieldLabel' : '672caf27f5363dc833bda5099775e891' /* Developer */ ,
+ 'severity_id_name_fieldLabel' : '007cc9547ae8884ad597cd92ba505422' /* Severity */ ,
+ 'developer_id_name_emptyText' : '340c2ee497b85d5954b01c64de7f44f6' /* Select Person */ ,
+ 'summary_fieldLabel' : '290612199861c31d1036b185b4e69b75' /* Summary */ ,
+ 'classification_id_name_emptyText' : 'fcb17935fd52e65b8f223778c9e70313' /* Select Classification */ ,
+ 'severity_id_name_qtip' : '6c768695a8efb18436d5b7b4374cdb45' /* Select core_enum */ ,
+ 'description_fieldLabel' : 'b5a7adde1af5c87d7fd797b6245c2a39' /* Description */ ,
+ 'owner_id_name_emptyText' : '340c2ee497b85d5954b01c64de7f44f6' /* Select Person */ ,
+ 'project_id_name_qtip' : '24f27bda5dd2c488aa9bc7700ba98c34' /* Select Projects */ ,
+ 'severity_id_name_emptyText' : '43371ce8259ba854b1ae3543fd477874' /* Select Severity */ ,
+ 'milestone_id_name_qtip' : 'a5ffb2a210f259195a75e5abca8db4a2' /* Select mtrack_milestone */ ,
+ 'priority_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'classification_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'milestone_id_name_emptyText' : 'a02a8093b46b8e647c29727fb50d67e4' /* Select milestone */ ,
+ 'priority_id_name_emptyText' : '86e9400686e8e080ef3c8995afb5eb86' /* Select Priority */ ,
+ 'developer_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'milestone_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'project_id_name_emptyText' : '6a58f977f2b623b695a340766f2a6843' /* Select Project */ ,
+ 'owner_id_name_qtip' : '340c2ee497b85d5954b01c64de7f44f6' /* Select Person */ ,
+ 'view_as_text_fieldLabel' : '23e6bcd09b259e6de4cd972516cb4214' /* View as */ ,
+ 'priority_id_name_fieldLabel' : '502996d9790340c5fd7b86a5b93b1c9f' /* Priority */ ,
+ 'project_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'owner_id_name_fieldLabel' : 'b6f4a2ec6356bbd56d49f2096bf9d3d3' /* Owner */ ,
+ 'view_as_text_value' : 'c4ca4238a0b923820dcc509a6f75849b' /* 1 */ ,
+ 'owner_id_name_loadingText' : '1243daf593fa297e07ab03bf06d925af' /* Searching... */ ,
+ 'view_as_markdown_boxLabel' : '590fc197fe73db0aa2ec03687a372eea' /* markdown */ ,
+ 'project_id_name_fieldLabel' : '9e727fdd3aec8274f46685441900280d' /* Project */ ,
+ 'classification_id_name_fieldLabel' : '5c9335b28e6277ddbe0137f04e5e58a7' /* Classification */ ,
+ 'classification_id_name_qtip' : '6c768695a8efb18436d5b7b4374cdb45' /* Select core_enum */
+ },
- show : function(data, cb)
- {
- if (!this.dialog) {
- this.create();
- }
+ dialog : false,
+ callback: false,
- this.callback = cb;
- this.data = data;
- this.dialog.show(this.data._el);
- if (this.form) {
- this.form.reset();
- this.form.setValues(data);
- this.form.fireEvent('actioncomplete', this.form, { type: 'setdata', data: data });
- }
+ show : function(data, cb)
+ {
+ if (!this.dialog) {
+ this.create();
+ }
- },
+ this.callback = cb;
+ this.data = data;
+ this.dialog.show(this.data._el);
+ if (this.form) {
+ this.form.reset();
+ this.form.setValues(data);
+ this.form.fireEvent('actioncomplete', this.form, { type: 'setdata', data: data });
+ }
- create : function()
- {
- var _this = this;
- this.dialog = Roo.factory({
- xtype: 'LayoutDialog',
- xns: Roo,
- closable : false,
- collapsible : false,
- height : 450,
- modal : true,
- resizable : true,
- title : "Edit or Create Ticket",
- width : 700,
- items : [
- {
- xtype: 'ContentPanel',
- xns: Roo,
- region : 'center',
- items : [
- {
- xtype: 'Form',
- xns: Roo.form,
- listeners : {
- actioncomplete : function(_self,action)
- {
- if (action.type == 'setdata') {
-
- this.load({ method: 'GET', params: { '_id' : _this.data.id || 0}});
-
- return;
- }
- if (action.type == 'load') {
- if (!_this.data.id) {
- this.setValues(_this.data);
- }
- return;
- }
-
-
- if (action.type =='submit') {
-
-
- _this.dialog.hide();
-
- if (_this.callback) {
- _this.callback.call(_this, _this.form.getValues());
- }
- _this.form.reset();
- return;
- }
- },
- rendered : function (form)
- {
- _this.form= form;
- }
- },
- method : 'POST',
- style : 'margin:10px;width:1000px;margin-top:0px;',
- url : baseURL + '/Roo/mtrack_ticket.php',
- items : [
- {
- xtype: 'Column',
- xns: Roo.form,
- width : 210,
- items : [
- {
- xtype: 'FieldSet',
- xns: Roo.form,
- labelAlign : 'top',
- legend : "Properties",
- style : 'width:190px;',
- items : [
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : 'false',
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Project",
- fieldLabel : 'Project',
- forceSelection : true,
- hiddenName : 'project_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'project_id_name',
- pageSize : 20,
- qtip : "Select Projects",
- queryParam : 'query[name]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button "><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'name' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/Projects.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}]
- }
- }
- },
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select milestone",
- fieldLabel : 'Milestone',
- forceSelection : true,
- hiddenName : 'milestone_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'milestone_id_name',
- pageSize : 20,
- qtip : "Select mtrack_milestone",
- queryParam : 'query[name]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}"><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- o.params.etype = 'milestone';
- o.params.project_id = _this.form.findField('project_id').getValue();
- if (!o.params.project_id) {
- Roo.MessageBox.alert("Error", "Select Project");
- return false;
- }
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'startdate' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/mtrack_milestone.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}]
- }
- }
- },
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : false,
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Priority",
- fieldLabel : 'Priority',
- forceSelection : true,
- hiddenName : 'priority_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'priority_id_name',
- pageSize : 20,
- qtip : "Select core_enum",
- queryParam : 'query[etype]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}"><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- o.params.etype = 'priority';
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'seqid' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/core_enum.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}]
- }
- }
- },
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : false,
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Severity",
- fieldLabel : 'Severity',
- forceSelection : true,
- hiddenName : 'severity_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'severity_id_name',
- pageSize : 20,
- qtip : "Select core_enum",
- queryParam : 'query[etype]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}"><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- o.params.etype = 'severity';
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'seqid' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/core_enum.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}]
- }
- }
- },
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : false,
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Classification",
- fieldLabel : 'Classification',
- forceSelection : true,
- hiddenName : 'classification_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'classification_id_name',
- pageSize : 20,
- qtip : "Select core_enum",
- queryParam : 'query[etype]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}"><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- o.params.etype = 'classification';
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'seqid' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/core_enum.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}]
- }
- }
- }
- ]
- },
- {
- xtype: 'FieldSet',
- xns: Roo.form,
- legend : "Resources",
- style : 'width: 190px',
- items : [
- {
- xtype: 'Column',
- xns: Roo.form,
- labelAlign : 'top',
- width : 190,
- items : [
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : 'false',
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Person",
- fieldLabel : 'Developer',
- forceSelection : true,
- hiddenName : 'developer_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'developer_id_name',
- pageSize : 20,
- qtip : "Select Person",
- queryParam : 'query[name]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button"><b>{name}</b> <{email}> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
-
- // set more here
- o.params['query[project_id]'] = _this.form.findField('project_id').getValue();
- if (!o.params['query[project_id]']) {
- Roo.MessageBox.alert("Error", "Select Project");
- return false;
- }
- o.params['query[role]'] = 'DEVELOPER';
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'name' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/Person.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}]
- }
- }
- },
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- allowBlank : 'false',
- alwaysQuery : true,
- displayField : 'name',
- editable : 'false',
- emptyText : "Select Person",
- fieldLabel : 'Owner',
- forceSelection : true,
- hiddenName : 'owner_id',
- listWidth : 400,
- loadingText : "Searching...",
- minChars : 2,
- name : 'owner_id_name',
- pageSize : 20,
- qtip : "Select Person",
- queryParam : 'query[name]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button"><b>{name}</b> </div>',
- triggerAction : 'all',
- typeAhead : true,
- valueField : 'id',
- width : 180,
- store : {
- xtype: 'Store',
- xns: Roo.data,
- listeners : {
- beforeload : function (_self, o){
- o.params = o.params || {};
- // set more here
- o.params['query[project_id]']= _this.form.findField('project_id').getValue();
- if (!o.params['query[project_id]']) {
- Roo.MessageBox.alert("Error", "Select Project");
- return false;
- }
- }
- },
- remoteSort : true,
- sortInfo : { direction : 'ASC', field: 'name' },
- proxy : {
- xtype: 'HttpProxy',
- xns: Roo.data,
- method : 'GET',
- url : baseURL + '/Roo/Person.php'
- },
- reader : {
- xtype: 'JsonReader',
- xns: Roo.data,
- id : 'id',
- root : 'data',
- totalProperty : 'total',
- fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}]
- }
- }
- }
- ]
- },
- {
- xtype: 'Column',
- xns: Roo.form,
- labelAlign : 'right',
- labelWidth : 100,
- width : 190,
- items : [
- {
- xtype: 'NumberField',
- xns: Roo.form,
- style : 'align:right;',
- fieldLabel : 'Estimated',
- name : 'estimated',
- width : 75
- }
- ]
- }
- ]
- }
- ]
- },
- {
- xtype: 'Column',
- xns: Roo.form,
- style : 'margin-left:10px',
- width : 430,
- items : [
- {
- xtype: 'FieldSet',
- xns: Roo.form,
- legend : "Summary / Details",
- style : 'width:410px',
- items : [
- {
- xtype: 'Column',
- xns: Roo.form,
- labelAlign : 'top',
- width : 400,
- items : [
- {
- xtype: 'TextField',
- xns: Roo.form,
- fieldLabel : 'Summary',
- name : 'summary',
- width : 400
- }
- ]
- },
- {
- xtype: 'Row',
- xns: Roo.form,
- labelWidth : 70,
- style : 'float:left; width:400px',
- width : 400,
- items : [
- {
- xtype: 'Checkbox',
- xns: Roo.form,
- listeners : {
- check : function (_self, checked)
- {
-
- if (!_this.form) {
- return;
- }
- if (checked) {
-
- _this.form.findField('view_as').setValue('text');
- }
-
-
-
- if (this.radio) {
- return;
- }
- var md = _this.form.findField('view_as_markdown');
-
- md.radio = true;
- md.setValue(checked ? 0 : 1);
-
- md.radio = false;
- }
- },
- boxLabel : 'text',
- fieldLabel : 'View as',
- name : 'view_as_text',
- value : 1,
- width : 100
- },
- {
- xtype: 'Row',
- xns: Roo.form,
- hideLabels : true,
- style : 'float: left',
- width : 100,
- items : [
- {
- xtype: 'Checkbox',
- xns: Roo.form,
- listeners : {
- check : function (_self, checked)
- {
- if (!_this.form) {
- return;
- }
-
- if (checked) {
-
- _this.form.findField('view_as').setValue('markdown');
- }
-
- if (this.radio) {
- return;
- }
- var md = _this.form.findField('view_as_text');
-
- md.radio = true;
- md.setValue(checked ? 0 : 1);
- md.radio = false;
- }
- },
- boxLabel : 'markdown',
- name : 'view_as_markdown',
- value : 1
- }
- ]
- }
- ]
- },
- {
- xtype: 'Column',
- xns: Roo.form,
- labelAlign : 'top',
- width : 400,
- items : [
- {
- xtype: 'TextArea',
- xns: Roo.form,
- fieldLabel : 'Description',
- height : 250,
- name : 'description',
- width : 400
- }
- ]
- }
- ]
- }
- ]
- },
- {
- xtype: 'Hidden',
- xns: Roo.form,
- name : 'id'
- },
- {
- xtype: 'Hidden',
- xns: Roo.form,
- name : 'view_as'
- }
- ]
- }
- ]
+ },
+
+ create : function()
+ {
+ var _this = this;
+ this.dialog = Roo.factory({
+ xtype : 'LayoutDialog',
+ closable : false,
+ collapsible : false,
+ height : 450,
+ modal : true,
+ resizable : true,
+ title : _this._strings['ff18c41b7689060c39934dbb74de1e9c'] /* Edit or Create Ticket */,
+ width : 700,
+ listeners : {
+ resize : function (_self, width, height)
+ {
+ var bw = width - 320;
+ _this.form.findField('description').el.setWidth(bw);
+ _this.summaryBox.el.setWidth(bw+30);
+ _this.summaryCol.el.setWidth(bw+45);
+ _this.descCol.el.setWidth(bw+35);
+
+ }
+ },
+ xns : Roo,
+ '|xns' : 'Roo',
+ center : {
+ xtype : 'LayoutRegion',
+ xns : Roo,
+ '|xns' : 'Roo'
+ },
+ buttons : [
+ {
+ xtype : 'Button',
+ text : _this._strings['ea4788705e6873b424c65e91c2846b19'] /* Cancel */,
+ listeners : {
+ click : function (_self, e)
+ {
+ _this.dialog.hide();
+ }
+ },
+ xns : Roo,
+ '|xns' : 'Roo'
+ },
+ {
+ xtype : 'Button',
+ text : _this._strings['c9cc8cce247e49bae79f15173ce97354'] /* Save */,
+ listeners : {
+ click : function (_self, e)
+ {
+ // do some checks?
+
+
+
+ _this.form.doAction("submit");
+
+ }
+ },
+ xns : Roo,
+ '|xns' : 'Roo'
+ }
+ ],
+ items : [
+ {
+ xtype : 'ContentPanel',
+ region : 'center',
+ xns : Roo,
+ '|xns' : 'Roo',
+ items : [
+ {
+ xtype : 'Form',
+ method : 'POST',
+ style : 'margin:10px;width:1000px;margin-top:0px;',
+ url : baseURL + '/Roo/mtrack_ticket.php',
+ listeners : {
+ actioncomplete : function(_self,action)
+ {
+ if (action.type == 'setdata') {
+
+ this.load({ method: 'GET', params: { '_id' : _this.data.id || 0}});
+
+ return;
+ }
+ if (action.type == 'load') {
+ if (!_this.data.id) {
+ this.setValues(_this.data);
+ }
+ return;
+ }
+
+
+ if (action.type =='submit') {
+
+ if (!_this.data.id * 1) {
+ Roo.MessageBox.confirm("Close?",
+ "The new ticket id is #" + action.result.data.id + ", Press yes to close, or no to keep editing",
+ function (res) {
+ if (res == 'yes') {
+
+
+ _this.dialog.hide();
+
+ if (_this.callback) {
+ _this.callback.call(_this, _this.form.getValues());
+ }
+ _this.form.reset();
+ return;
+ }
+ _this.data.id = action.result.data.id;
+ _this.form.fireEvent('actioncomplete', _this.form, { type : 'setdata', data : {}});
+ return;
+ }
+ );
+
+
+
+
+ return;
+ }
+
+ _this.dialog.hide();
+
+ if (_this.callback) {
+ _this.callback.call(_this, _this.form.getValues());
+ }
+ _this.form.reset();
+
+ return;
+ }
+ },
+ rendered : function (form)
+ {
+ _this.form= form;
+ }
+ },
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'Column',
+ width : 210,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'FieldSet',
+ labelAlign : 'top',
+ legend : _this._strings['9fc2d28c05ed9eb1d75ba4465abf15a9'] /* Properties */,
+ style : 'width:190px;',
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['6a58f977f2b623b695a340766f2a6843'] /* Select Project */,
+ fieldLabel : _this._strings['9e727fdd3aec8274f46685441900280d'] /* Project */,
+ forceSelection : true,
+ hiddenName : 'project_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'project_id_name',
+ pageSize : 20,
+ qtip : _this._strings['24f27bda5dd2c488aa9bc7700ba98c34'] /* Select Projects */,
+ queryParam : 'query[name]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button \"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'name' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_project',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ },
+ {
+ xtype : 'ComboBox',
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['a02a8093b46b8e647c29727fb50d67e4'] /* Select milestone */,
+ fieldLabel : _this._strings['e9c626b8a8b62de7562dfbf51a576ae5'] /* Milestone */,
+ forceSelection : true,
+ hiddenName : 'milestone_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'milestone_id_name',
+ pageSize : 20,
+ qtip : _this._strings['a5ffb2a210f259195a75e5abca8db4a2'] /* Select mtrack_milestone */,
+ queryParam : 'query[name]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}\"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'startdate' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ o.params.etype = 'milestone';
+ o.params.project_id = _this.form.findField('project_id').getValue();
+ if (!o.params.project_id) {
+ Roo.MessageBox.alert("Error", "Select Project");
+ return false;
+ }
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/mtrack_milestone.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ },
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['86e9400686e8e080ef3c8995afb5eb86'] /* Select Priority */,
+ fieldLabel : _this._strings['502996d9790340c5fd7b86a5b93b1c9f'] /* Priority */,
+ forceSelection : true,
+ hiddenName : 'priority_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'priority_id_name',
+ pageSize : 20,
+ qtip : _this._strings['6c768695a8efb18436d5b7b4374cdb45'] /* Select core_enum */,
+ queryParam : 'query[etype]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}\"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'seqid' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ o.params.etype = 'priority';
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_enum.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ },
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['43371ce8259ba854b1ae3543fd477874'] /* Select Severity */,
+ fieldLabel : _this._strings['007cc9547ae8884ad597cd92ba505422'] /* Severity */,
+ forceSelection : true,
+ hiddenName : 'severity_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'severity_id_name',
+ pageSize : 20,
+ qtip : _this._strings['6c768695a8efb18436d5b7b4374cdb45'] /* Select core_enum */,
+ queryParam : 'query[etype]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}\"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'seqid' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ o.params.etype = 'severity';
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_enum.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ },
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['fcb17935fd52e65b8f223778c9e70313'] /* Select Classification */,
+ fieldLabel : _this._strings['5c9335b28e6277ddbe0137f04e5e58a7'] /* Classification */,
+ forceSelection : true,
+ hiddenName : 'classification_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'classification_id_name',
+ pageSize : 20,
+ qtip : _this._strings['6c768695a8efb18436d5b7b4374cdb45'] /* Select core_enum */,
+ queryParam : 'query[etype]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button RdYlGn-q{seqid}-{seqmax}\"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'seqid' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ o.params.etype = 'classification';
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_enum.php',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ }
+ ]
+ },
+ {
+ xtype : 'FieldSet',
+ legend : _this._strings['ddcf50c29294d4414f3f7c1bbc892cb5'] /* Resources */,
+ style : 'width: 190px',
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'Column',
+ labelAlign : 'top',
+ width : 190,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : true,
+ emptyText : _this._strings['340c2ee497b85d5954b01c64de7f44f6'] /* Select Person */,
+ fieldLabel : _this._strings['672caf27f5363dc833bda5099775e891'] /* Developer */,
+ forceSelection : true,
+ hiddenName : 'developer_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'developer_id_name',
+ pageSize : 20,
+ qtip : _this._strings['340c2ee497b85d5954b01c64de7f44f6'] /* Select Person */,
+ queryParam : 'query[name]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> <{email}> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'name' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+
+ // set more here
+ o.params['query[project_id]'] = _this.form.findField('project_id').getValue();
+ if (!o.params['query[project_id]']) {
+ Roo.MessageBox.alert("Error", "Select Project");
+ return false;
+ }
+ o.params['query[role]'] = 'DEVELOPER';
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_person',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
}
- ],
- center : {
- xtype: 'LayoutRegion',
- xns: Roo
+ },
+ {
+ xtype : 'ComboBox',
+ allowBlank : false,
+ alwaysQuery : true,
+ displayField : 'name',
+ editable : false,
+ emptyText : _this._strings['340c2ee497b85d5954b01c64de7f44f6'] /* Select Person */,
+ fieldLabel : _this._strings['b6f4a2ec6356bbd56d49f2096bf9d3d3'] /* Owner */,
+ forceSelection : true,
+ hiddenName : 'owner_id',
+ listWidth : 400,
+ loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
+ minChars : 2,
+ name : 'owner_id_name',
+ pageSize : 20,
+ qtip : _this._strings['340c2ee497b85d5954b01c64de7f44f6'] /* Select Person */,
+ queryParam : 'query[name]',
+ selectOnFocus : true,
+ tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> </div>',
+ triggerAction : 'all',
+ typeAhead : true,
+ valueField : 'id',
+ width : 180,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ store : {
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'name' },
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ o.params['query[project_id]']= _this.form.findField('project_id').getValue();
+ if (!o.params['query[project_id]']) {
+ Roo.MessageBox.alert("Error", "Select Project");
+ return false;
+ }
+ }
+ },
+ xns : Roo.data,
+ '|xns' : 'Roo.data',
+ proxy : {
+ xtype : 'HttpProxy',
+ method : 'GET',
+ url : baseURL + '/Roo/core_person',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ },
+ reader : {
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}],
+ id : 'id',
+ root : 'data',
+ totalProperty : 'total',
+ xns : Roo.data,
+ '|xns' : 'Roo.data'
+ }
+ }
+ }
+ ]
+ },
+ {
+ xtype : 'Column',
+ labelAlign : 'right',
+ labelWidth : 100,
+ width : 190,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'NumberField',
+ fieldLabel : _this._strings['3c311fbd0f9e51ce27b984f55164cf83'] /* Estimated */,
+ name : 'estimated',
+ style : 'align:right;',
+ width : 75,
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ xtype : 'Column',
+ style : 'margin-left:10px',
+ width : 430,
+ listeners : {
+ render : function (_self)
+ {
+ _this.summaryCol = _self;
},
- buttons : [
- {
- xtype: 'Button',
- xns: Roo,
- listeners : {
- click : function (_self, e)
- {
- _this.dialog.hide();
- }
- },
- text : "Cancel"
+ show : function (_self)
+ {
+
+ }
+ },
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'FieldSet',
+ legend : _this._strings['a8dbd02aaca3948002718aeb2babeefe'] /* Summary / Details */,
+ style : 'width:410px',
+ listeners : {
+ render : function (_self)
+ {
+ _this.summaryBox = _self;
+ },
+ show : function (_self)
+ {
+
+ }
+ },
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'Column',
+ labelAlign : 'top',
+ width : 400,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'TextField',
+ fieldLabel : _this._strings['290612199861c31d1036b185b4e69b75'] /* Summary */,
+ name : 'summary',
+ width : 400,
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ }
+ ]
+ },
+ {
+ xtype : 'Row',
+ labelWidth : 70,
+ style : 'float:left; width:400px',
+ width : 400,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'Checkbox',
+ boxLabel : _this._strings['1cb251ec0d568de6a929b520c4aed8d1'] /* text */,
+ fieldLabel : _this._strings['23e6bcd09b259e6de4cd972516cb4214'] /* View as */,
+ name : 'view_as_text',
+ value : 1,
+ width : 100,
+ listeners : {
+ check : function (_self, checked)
+ {
+
+ if (!_this.form) {
+ return;
+ }
+ if (checked) {
+
+ _this.form.findField('view_as').setValue('text');
+ }
+
+
+
+ if (this.radio) {
+ return;
+ }
+ var md = _this.form.findField('view_as_markdown');
+
+ md.radio = true;
+ md.setValue(checked ? 0 : 1);
+
+ md.radio = false;
+ }
},
- {
- xtype: 'Button',
- xns: Roo,
- listeners : {
- click : function (_self, e)
- {
- // do some checks?
-
-
-
- _this.form.doAction("submit");
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ },
+ {
+ xtype : 'Row',
+ hideLabels : true,
+ style : 'float: left',
+ width : 100,
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'Checkbox',
+ boxLabel : _this._strings['590fc197fe73db0aa2ec03687a372eea'] /* markdown */,
+ name : 'view_as_markdown',
+ value : 1,
+ listeners : {
+ check : function (_self, checked)
+ {
+ if (!_this.form) {
+ return;
+ }
+
+ if (checked) {
+
+ _this.form.findField('view_as').setValue('markdown');
+ }
+ if (this.radio) {
+ return;
}
- },
- text : "Save"
+ var md = _this.form.findField('view_as_text');
+
+ md.radio = true;
+ md.setValue(checked ? 0 : 1);
+ md.radio = false;
+ }
+ },
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ }
+ ]
+ }
+ ]
+ },
+ {
+ xtype : 'Column',
+ labelAlign : 'top',
+ width : 400,
+ listeners : {
+ render : function (_self)
+ {
+ _this.descCol = _self;
+ },
+ show : function (_self)
+ {
+
}
+ },
+ xns : Roo.form,
+ '|xns' : 'Roo.form',
+ items : [
+ {
+ xtype : 'TextArea',
+ fieldLabel : _this._strings['b5a7adde1af5c87d7fd797b6245c2a39'] /* Description */,
+ height : 250,
+ name : 'description',
+ width : 400,
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ }
+ ]
+ }
]
- });
- }
+ }
+ ]
+ },
+ {
+ xtype : 'Hidden',
+ name : 'id',
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ },
+ {
+ xtype : 'Hidden',
+ name : 'view_as',
+ xns : Roo.form,
+ '|xns' : 'Roo.form'
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ });
+ }
};