Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
sencha-reporting-portfolio
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-reporting-portfolio
Commits
44b82197
Commit
44b82197
authored
Jan 30, 2017
by
Frank Bergmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Fixed Milestone Tracker
parent
457c79ab
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
260 additions
and
188 deletions
+260
-188
milestone-tracker.adp
lib/milestone-tracker.adp
+66
-21
milestone-tracker.tcl
lib/milestone-tracker.tcl
+194
-167
No files found.
lib/milestone-tracker.adp
View file @
44b82197
<if "
" ne @data_list
@>
<if "
1" eq @show_diagram_p
@>
<div id=@diagram_id@></div>
<script type='text/javascript'>
// Special variant of a line series for milestone tracker...
// ... that actually skips "undefined" values in the store.
Ext.define('Ext.chart.series.MilestoneLine', {
extend: 'Ext.chart.series.Line',
type: 'milestoneline',
alias: 'series.milestoneline',
drawSeries: function() {
var me = this,
chart = me.chart,
store = chart.getChartStore();
// Loop throught the store and convert empty strings into "undefined" values.
// Undefined values are skipped by the underlying series.Line diagram.
store.each(function(record) {
for (var key in record.data) {
var value = record.data[key];
if ("string" == typeof value && "" == value) { record.data[key] = undefined; }
}
});
// Call the basic drawSeries(), now skipping empty values
this.callParent(arguments);
}
});
Ext.require(['Ext.chart.*', 'Ext.Window', 'Ext.fx.target.Sprite', 'Ext.layout.container.Fit']);
Ext.onReady(function () {
window.
store = Ext.create('Ext.data.JsonStore', {
var
store = Ext.create('Ext.data.JsonStore', {
fields: @fields_json;noquote@,
data: @data_json;noquote@
});
Ext.onReady(function () {
chart = new Ext.chart.Chart({
width: 600,
height: 300,
...
...
@@ -19,27 +44,47 @@ Ext.onReady(function () {
renderTo: '@diagram_id@',
legend: { position: 'right' },
axes: [{
type: 'Time',
position: 'left',
fields: [@fields_joined;noquote@],
dateFormat: 'M Y',
constrain: false,
step: [Ext.Date.MONTH, 2
],
fromDate: @y_axis_min
_date_js;noquote@,
toDate: @y_axis_max
_date_js;noquote@,
type: 'Time',
position: 'left',
fields: [@fields_joined;noquote@],
dateFormat: 'M Y',
constrain: false,
step: [Ext.Date.MONTH, @yrange_step_months@
],
fromDate: @yrange_start
_date_js;noquote@,
toDate: @yrange_end
_date_js;noquote@,
}, {
type: 'Time',
position: 'bottom',
fields: 'date',
dateFormat: 'M Y',
constrain: false,
step: [Ext.Date.MONTH, 2],
fromDate: @start_date_js;noquote@,
toDate: @end_date_js;noquote@
type: 'Time',
position: 'bottom',
fields: 'date',
dateFormat: 'M Y',
constrain: false,
step: [Ext.Date.MONTH, @tracker_step_months@],
fromDate: @tracker_start_date_js;noquote@,
toDate: @tracker_end_date_js;noquote@,
label: {rotate: {degrees: 315}}
}],
series: [@series_json@]
series: [@series_json
;noquote
@]
}
)});
</script>
<p>audit_count=
<%= [db_string audits "
select count(*)
from im_audits a,
im_projects p,
im_projects main_p
where main_p.project_id = :main_project_id and
p.tree_sortkey between main_p.tree_sortkey and tree_right(main_p.tree_sortkey) and
p.project_id = a.audit_object_id
"] %></p>
@debug_html;noquote@
-->
</if>
lib/milestone-tracker.tcl
View file @
44b82197
This diff is collapsed.
Click to expand it.
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