Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
sencha-core
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
project-open
sencha-core
Commits
da505248
Commit
da505248
authored
Jun 13, 2017
by
Frank Bergmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Gantt Editor: Now adding DynFields to GanttEditor
parent
f23ea063
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
112 additions
and
0 deletions
+112
-0
sencha-core-procs.tcl
tcl/sencha-core-procs.tcl
+74
-0
TimesheetTask.js.adp
www/model/timesheet/TimesheetTask.js.adp
+5
-0
TimesheetTask.js.tcl
www/model/timesheet/TimesheetTask.js.tcl
+7
-0
GanttTreePanel.js.adp
www/view/gantt/GanttTreePanel.js.adp
+5
-0
GanttTreePanel.js.tcl
www/view/gantt/GanttTreePanel.js.tcl
+21
-0
No files found.
tcl/sencha-core-procs.tcl
View file @
da505248
...
...
@@ -135,3 +135,77 @@ ad_proc -public im_sencha_sql_to_store {
}
# ----------------------------------------------------------------------
# List of add-on dynfields
# ---------------------------------------------------------------------
ad_proc -public im_sencha_dynfields
{
-object_type:required
}
{
Returns a cached list of DynFields for each object type
}
{
set dynfield_sql
"
select aa.attribute_name,
aa.pretty_name,
dw.widget_name
from acs_attributes aa,
im_dynfield_attributes da,
im_dynfield_widgets dw
where aa.attribute_id = da.acs_attribute_id and
da.widget_name = dw.widget_name and
aa.object_type = '
$object
_type' and
aa.attribute_name not in (
'billable_units',
'company_id',
'cost_center_id',
'creation_date',
'creation_ip',
'creation_user',
'deadline_date',
'description',
'effort_driven_p',
'effort_driven_type_id',
'end_date',
'expanded',
'gantt_project_id',
'icon',
'invoice_id',
'last_modified',
'level',
'lock_date',
'lock_ip',
'lock_user',
'material_id',
'milestone_p',
'modifying_ip',
'modifying_user',
'note',
'object_type',
'on_track_status_id',
'parent_id',
'percent_completed',
'planned_units',
'predecessors',
'priority',
'project_lead_id',
'project_name',
'project_nr',
'project_status_id',
'project_type_id',
'scheduling_constraint_date',
'scheduling_constraint_id',
'sort_order',
'start_date',
'successors',
'task_id',
'tree_sortkey',
'uom_id'
)
"
set tuples
[
util_memoize
[
list
db_list_of_lists dynfield
$dynfield
_sql
]
1
]
return
$tuples
}
www/model/timesheet/TimesheetTask.js
→
www/model/timesheet/TimesheetTask.js
.adp
View file @
da505248
...
...
@@ -123,6 +123,11 @@ Ext.define('PO.model.timesheet.TimesheetTask', {
'expanded', // true or false (without quotes), default state for tree
// Add dynfields
<multiple name=dynfields>
'@dynfields.name@',</multiple>
{ name: 'icon', // A sequence representing the project indentation
convert: function(value, record) {
var typeId = parseInt(record.get('project_type_id'));
...
...
www/model/timesheet/TimesheetTask.js.tcl
0 → 100644
View file @
da505248
# Get DynFields for Timesheet Task
set
names
[
im_sencha_dynfields -object_type
"im_timesheet_task"
]
multirow create dynfields name pretty_name widget
foreach
tuple
$names
{
multirow append dynfields
[
lindex
$tuple
0
]
[
lindex
$tuple
1
]
[
lindex
$tuple
2
]
}
www/view/gantt/GanttTreePanel.js
→
www/view/gantt/GanttTreePanel.js
.adp
View file @
da505248
...
...
@@ -251,6 +251,11 @@ Ext.define('PO.view.gantt.GanttTreePanel', {
var model = statusStore.getById(value);
return model.get('category');
}}
// DynFields
<multiple name=dynfields>
,{text: '@dynfields.pretty_name@', stateId: 'treegrid-@dynfields.name@', flex: 1, dataIndex: '@dynfields.name@', hidden: false @dynfields.editor;noquote@}
</multiple>
],
listeners: {
...
...
www/view/gantt/GanttTreePanel.js.tcl
0 → 100644
View file @
da505248
# Get DynFields for Timesheet Task
set
tuples
[
im_sencha_dynfields -object_type
"im_timesheet_task"
]
multirow create dynfields name pretty_name widget editor
foreach
tuple
$tuples
{
set widget
[
lindex
$tuple
2
]
switch
$widget
{
checkbox
{
set editor
""
}
date - timestamp
{
set editor
", editor: 'podatefield'"
}
integer
{
set editor
", editor: 'numberfield'"
}
numeric
{
set editor
", editor: 'numberfield'"
}
richtext
{
set editor
", editor: true"
}
textarea_small - textarea_small_nospell - textbox_large - textbox_medium - textbox_small
{
set editor
", editor: true"
}
default
{
ad_return_complaint 1
$widget
set editor
""
}
}
multirow append dynfields
[
lindex
$tuple
0
]
[
lindex
$tuple
1
]
[
lindex
$tuple
2
]
$editor
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment