Author: nathangray
Date: Wed Apr 27 23:09:18 2016
New Revision: 55906
URL: http://svn.stylite.de/viewvc/egroupware?rev=55906&view=rev
Log:
- Use datasource to default, fixes addressbook entries not ignored
- Do not set element start date if not supported, fixes addressbook entries got a start date
- Update element totals in header for refresh
- Fix Times / Planned / Replanned totals were not updated
Modified:
trunk/projectmanager/inc/class.datasource.inc.php
trunk/projectmanager/inc/class.projectmanager_elements_bo.inc.php
trunk/projectmanager/inc/class.projectmanager_elements_ui.inc.php
trunk/projectmanager/templates/default/elements.list.xet
Modified: trunk/projectmanager/inc/class.datasource.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/projectmanager/inc/class.datasource.inc.php?rev=55906&r1=55905&r2=55906&view=diff
==============================================================================
--- trunk/projectmanager/inc/class.datasource.inc.php (original)
+++ trunk/projectmanager/inc/class.datasource.inc.php Wed Apr 27 23:09:18 2016
@@ -188,7 +188,8 @@
if ($ds)
{
// setting a not set planned start from a contrains
- if ((!$ds['pe_planned_start'] || $ds['ignore_planned_start']) && !is_null($pe_data) && $pe_data['pe_constraints']['start'])
+ if ((!$ds['pe_planned_start'] && isset($ds['pe_planned_start']) || $ds['ignore_planned_start']) &&
+ !is_null($pe_data) && $pe_data['pe_constraints']['start'])
{
//echo "start-constr."; _debug_array($pe_data['pe_constraints']['start']);
$start = 0;
@@ -213,12 +214,12 @@
}
}
// setting the planned start from the real-start
- if (!$ds['pe_planned_start'] && !$ds['ignore_planned_start'] && $ds['pe_real_start'])
+ if (!$ds['pe_planned_start'] && isset($ds['pe_planned_start']) && !$ds['ignore_planned_start'] && $ds['pe_real_start'])
{
$ds['pe_planned_start'] = $ds['pe_real_start'];
}
// setting the planned start from the projects start
- if ((!$ds['pe_planned_start'] || $ds['ignore_planned_start']) && $pe_data['pm_id'])
+ if ((!$ds['pe_planned_start'] && isset($ds['pe_planned_start']) || $ds['ignore_planned_start']) && $pe_data['pm_id'])
{
if (!is_object($this->bo_pe))
{
@@ -255,11 +256,11 @@
}
}
// setting real or planned start-date, from each other if not set
- if ((!isset($ds['pe_real_start']) || $ds['ignore_real_start']) && isset($ds['pe_planned_start']))
+ if ((!$ds['pe_real_start'] || $ds['ignore_real_start']) && isset($ds['pe_planned_start']))
{
$ds['pe_real_start'] = $ds['pe_planned_start'];
}
- elseif (!isset($ds['pe_planned_start']) && isset($ds['pe_real_start']))
+ elseif (!$ds['pe_planned_start'] && isset($ds['pe_real_start']))
{
$ds['pe_planned_start'] = $ds['pe_real_start'];
}
Modified: trunk/projectmanager/inc/class.projectmanager_elements_bo.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/projectmanager/inc/class.projectmanager_elements_bo.inc.php?rev=55906&r1=55905&r2=55906&view=diff
==============================================================================
--- trunk/projectmanager/inc/class.projectmanager_elements_bo.inc.php (original)
+++ trunk/projectmanager/inc/class.projectmanager_elements_bo.inc.php Wed Apr 27 23:09:18 2016
@@ -232,9 +232,12 @@
}
$this->init();
$need_save_anyway = false;
+ $datasource =& $this->datasource($app);
+
// check if entry already exists and set basic values if not
if (!$pe_id || ($need_save_anyway = !$this->read(array('pm_id'=>$pm_id,'pe_id'=>$pe_id))))
{
+ $this->data = $datasource->read($id);
$this->data['pm_id'] = $pm_id;
$this->data['pe_id'] = $pe_id;
$this->data['pe_overwrite'] = 0; // none set so far
@@ -256,7 +259,6 @@
{
$this->data_merge($extra_keys);
}
- $datasource =& $this->datasource($app);
$this->updated = 0;
// mask out not overwritable parts like title and details
Modified: trunk/projectmanager/inc/class.projectmanager_elements_ui.inc.php
URL: http://svn.stylite.de/viewvc/egroupware/trunk/projectmanager/inc/class.projectmanager_elements_ui.inc.php?rev=55906&r1=55905&r2=55906&view=diff
==============================================================================
--- trunk/projectmanager/inc/class.projectmanager_elements_ui.inc.php (original)
+++ trunk/projectmanager/inc/class.projectmanager_elements_ui.inc.php Wed Apr 27 23:09:18 2016
@@ -465,7 +465,7 @@
// Check for filter change, need to get totals
$session = egw_cache::getSession('projectmanager', 'projectelements_list');
- $get_totals = ($session && $session['filter'] != $query_in['filter']) || !$session && $query_in['filter'];
+ $get_totals = $query_in['start'] === 0 || ($session && $session['filter'] != $query_in['filter']) || !$session && $query_in['filter'];
$query=$query_in;
unset($query_in['col_filter']['parent_id']);
$GLOBALS['egw']->session->appsession('projectelements_list','projectmanager',$query_in);
@@ -688,6 +688,11 @@
if ($budget_rights || !in_array($field, array('pe_planned_budget', 'pe_used_budget')))
{
$rows['total_' . $field] = $value;
+ }
+ // etemplate requires unique IDs, these ones are in the second times column
+ if(in_array($field, array('pe_planned_time', 'pe_used_time')))
+ {
+ $rows['total_' . $field . '_2'] = $value;
}
}
}
Modified: trunk/projectmanager/templates/default/elements.list.xet
URL: http://svn.stylite.de/viewvc/egroupware/trunk/projectmanager/templates/default/elements.list.xet?rev=55906&r1=55905&r2=55906&view=diff
==============================================================================
--- trunk/projectmanager/templates/default/elements.list.xet (original)
+++ trunk/projectmanager/templates/default/elements.list.xet Wed Apr 27 23:09:18 2016
@@ -87,9 +87,9 @@
</vbox>
<vbox>
<nextmatch-sortheader label="Times" id="pe_used_time"/>
- <date-duration id="total_pe_used_time" readonly="true" options="@@duration_format"/>
+ <date-duration id="total_pe_used_time_2" readonly="true" options="@@duration_format"/>
<nextmatch-sortheader label="planned" id="pe_planned_time" class="planned"/>
- <date-duration id="total_pe_planned_time" readonly="true" options="@@duration_format" class="planned"/>
+ <date-duration id="total_pe_planned_time_2" readonly="true" options="@@duration_format" class="planned"/>
<nextmatch-sortheader label="re-planned" id="pe_replanned_time" class="replanned"/>
<date-duration id="total_pe_replanned_time" readonly="true" options="@@duration_format" class="replanned"/>
</vbox>
------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.