diff --git a/workflow/engine/classes/model/Event.php b/workflow/engine/classes/model/Event.php index 33bc18c56..3cdc3f551 100755 --- a/workflow/engine/classes/model/Event.php +++ b/workflow/engine/classes/model/Event.php @@ -73,7 +73,11 @@ class Event extends BaseEvent { try { $oEvent = EventPeer::retrieveByPK($sUID); if (!is_null($oEvent)) { + $aFields = ''; $aFields = $oEvent->toArray(BasePeer::TYPE_FIELDNAME); + if ($aFields ['EVN_TIME_UNIT'] == 'HOURS') { + $aFields ['EVN_TAS_ESTIMATED_DURATION'] = round($aFields ['EVN_TAS_ESTIMATED_DURATION'] * 24,2); + } $this->fromArray($aFields, BasePeer::TYPE_FIELDNAME); $this->setNew(false); $this->setEvnDescription($aFields['EVN_DESCRIPTION'] = $this->getEvnDescription()); @@ -101,73 +105,83 @@ class Event extends BaseEvent { $oEvent = new Event(); $oEvent->setEvnUid( $aData['EVN_UID'] ); $oEvent->setProUid( $aData['PRO_UID'] ); - if(isset($aData['EVN_RELATED_TO'])){ + if (isset($aData['EVN_RELATED_TO'])) { $oEvent->setEvnRelatedTo( $aData['EVN_RELATED_TO'] ); if ( $aData['EVN_RELATED_TO'] == 'SINGLE' ) { - if(isset($aData['TAS_UID'])) - $oEvent->setTasUid( $aData['TAS_UID'] ); - $oEvent->setEvnTasUidTo( ''); - $oEvent->setEvnTasUidFrom( '' ); - } - else { - $oEvent->setTasUid(''); - if(isset($aData['EVN_TAS_UID_TO'])) - $oEvent->setEvnTasUidTo( $aData['EVN_TAS_UID_TO'] ); - if(isset($aData['EVN_TAS_UID_FROM'])) - $oEvent->setEvnTasUidFrom( $aData['EVN_TAS_UID_FROM'] ); + if (isset($aData['TAS_UID'])) { + $oEvent->setTasUid( $aData['TAS_UID'] ); + } + $oEvent->setEvnTasUidTo( ''); + $oEvent->setEvnTasUidFrom( '' ); + } else { + $oEvent->setTasUid(''); + if (isset($aData['EVN_TAS_UID_TO'])) { + $oEvent->setEvnTasUidTo( $aData['EVN_TAS_UID_TO'] ); + } + if (isset($aData['EVN_TAS_UID_FROM'])) { + $oEvent->setEvnTasUidFrom( $aData['EVN_TAS_UID_FROM'] ); + } } } - if(isset($aData['EVN_POSX'])) - $oEvent->setEvnPosx($aData['EVN_POSX']); - if(isset($aData['EVN_POSY'])) - $oEvent->setEvnPosy($aData['EVN_POSY']); + if (isset($aData['EVN_POSX'])) { + $oEvent->setEvnPosx($aData['EVN_POSX']); + } + if (isset($aData['EVN_POSY'])) { + $oEvent->setEvnPosy($aData['EVN_POSY']); + } + if (isset($aData['EVN_TYPE'])) { + $oEvent->setEvnType( $aData['EVN_TYPE'] ); + } + if (isset($aData['EVN_TIME_UNIT'])) { + $oEvent->setEvnTimeUnit($aData['EVN_TIME_UNIT']); + if (trim($aData['EVN_TIME_UNIT']) == 'HOURS') { + $aData['EVN_TAS_ESTIMATED_DURATION'] = $aData['EVN_TAS_ESTIMATED_DURATION'] / 24; + } + } + if (isset($aData['EVN_TAS_ESTIMATED_DURATION'])) { + $oEvent->setEvnTasEstimatedDuration($aData['EVN_TAS_ESTIMATED_DURATION']); + } - if(isset($aData['EVN_TYPE'])) - $oEvent->setEvnType( $aData['EVN_TYPE'] ); - - if(isset($aData['EVN_TAS_ESTIMATED_DURATION'])) - $oEvent->setEvnTasEstimatedDuration( $aData['EVN_TAS_ESTIMATED_DURATION'] ); - - if(isset($aData['EVN_WHEN_OCCURS'])) + if (isset($aData['EVN_WHEN_OCCURS'])) { $oEvent->setEvnWhenOccurs( $aData['EVN_WHEN_OCCURS'] ); + } - if(isset($aData['EVN_ACTION'])) + if (isset($aData['EVN_ACTION'])) { $oEvent->setEvnAction( $aData['EVN_ACTION'] ); + } - if(isset($aData['EVN_CONDITIONS'])) + if (isset($aData['EVN_CONDITIONS'])) { $oEvent->setEvnConditions( $aData['EVN_CONDITIONS'] ); - - if(isset($aData['EVN_STATUS'])) - $oEvent->setEvnStatus( $aData['EVN_STATUS'] ); - - if(isset($aData['EVN_WHEN'])) - $oEvent->setEvnWhen( $aData['EVN_WHEN'] ); + } + if (isset($aData['EVN_STATUS'])) { + $oEvent->setEvnStatus( $aData['EVN_STATUS'] ); + } + if (isset($aData['EVN_WHEN'])) { + $oEvent->setEvnWhen( $aData['EVN_WHEN'] ); + } $oEvent->setEvnMaxAttempts( 3 ); - //start the transaction $oConnection->begin(); - if (isset($aData['EVN_TYPE'])){ - if($aData['EVN_TYPE']==='bpmnEventEmptyEnd') - unset($aData['TRI_UID']); + if (isset($aData['EVN_TYPE'])) { + if($aData['EVN_TYPE']==='bpmnEventEmptyEnd') { + unset($aData['TRI_UID']); + } } - if(isset($aData['TRI_UID'])) - { + if (isset($aData['TRI_UID'])) { $oTrigger = new Triggers(); - if( trim($aData['TRI_UID']) === "" || ( ! $oTrigger->TriggerExists ( $aData['TRI_UID'] ))){ - //create an empty trigger - - $aTrigger = array(); - $aTrigger['PRO_UID'] = $aData['PRO_UID']; - $aTrigger['TRI_TITLE'] = 'For event: ' . $aData['EVN_DESCRIPTION']; - $aTrigger['TRI_DESCRIPTION'] = 'Autogenerated ' . $aTrigger['TRI_TITLE']; - $aTrigger['TRI_WEBBOT'] = '// ' . $aTrigger['TRI_DESCRIPTION'];; - $oTrigger->create($aTrigger); - + if ( trim($aData['TRI_UID']) === "" || ( ! $oTrigger->TriggerExists ( $aData['TRI_UID'] ))) { + //create an empty trigger + $aTrigger = array(); + $aTrigger['PRO_UID'] = $aData['PRO_UID']; + $aTrigger['TRI_TITLE'] = 'For event: ' . $aData['EVN_DESCRIPTION']; + $aTrigger['TRI_DESCRIPTION'] = 'Autogenerated ' . $aTrigger['TRI_TITLE']; + $aTrigger['TRI_WEBBOT'] = '// ' . $aTrigger['TRI_DESCRIPTION'];; + $oTrigger->create($aTrigger); } else { - $oTrigger = TriggersPeer::retrieveByPk($aData['TRI_UID']); + $oTrigger = TriggersPeer::retrieveByPk($aData['TRI_UID']); } $oEvent->setTriUid( $oTrigger->getTriUid() ); @@ -176,7 +190,7 @@ class Event extends BaseEvent { $parameters->hash = md5 ($oTrigger->getTriWebbot()); - if( isset( $aData['EVN_ACTION_PARAMETERS']->SUBJECT ) ) { + if ( isset( $aData['EVN_ACTION_PARAMETERS']->SUBJECT ) ) { $parameters->SUBJECT = $aData['EVN_ACTION_PARAMETERS']->SUBJECT; $parameters->TO = $aData['EVN_ACTION_PARAMETERS']->TO; $parameters->CC = $aData['EVN_ACTION_PARAMETERS']->CC; @@ -188,24 +202,24 @@ class Event extends BaseEvent { } if ($oEvent->validate()) { - $iResult = $oEvent->save(); - if(isset($aData['EVN_DESCRIPTION'])) - $oEvent->setEvnDescription($aData['EVN_DESCRIPTION']); - $oConnection->commit(); - return $aData['EVN_UID']; - } - else { - $sMessage = ''; - $aValidationFailures = $oEvent->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; - } - throw(new Exception('The row Event cannot be created!
' . $sMessage)); + $iResult = $oEvent->save(); + if (isset($aData['EVN_DESCRIPTION'])) { + $oEvent->setEvnDescription($aData['EVN_DESCRIPTION']); + } + $oConnection->commit(); + return $aData['EVN_UID']; + } else { + $sMessage = ''; + $aValidationFailures = $oEvent->getValidationFailures(); + foreach($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw(new Exception('The row Event cannot be created!
' . $sMessage)); } } catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); + $oConnection->rollback(); + throw($oError); } } @@ -214,6 +228,7 @@ class Event extends BaseEvent { try { $oEvent = EventPeer::retrieveByPK($aData['EVN_UID']); if (!is_null($oEvent)) { + //$oEvent->setProUid( $aData['PRO_UID'] ); if(isset($aData['EVN_RELATED_TO'])) { @@ -238,8 +253,16 @@ class Event extends BaseEvent { if(isset($aData['EVN_POSY'])) $oEvent->setEvnPosy($aData['EVN_POSY']); + + if(isset($aData['EVN_TIME_UNIT'])) { + $oEvent->setEvnTimeUnit( $aData['EVN_TIME_UNIT']); + if ($aData['EVN_TIME_UNIT'] == 'HOURS') { + $aData['EVN_TAS_ESTIMATED_DURATION'] = $aData['EVN_TAS_ESTIMATED_DURATION'] / 24; + } + } if(isset($aData['EVN_TAS_ESTIMATED_DURATION'])) $oEvent->setEvnTasEstimatedDuration( $aData['EVN_TAS_ESTIMATED_DURATION'] ); + if(isset($aData['EVN_WHEN_OCCURS'])) $oEvent->setEvnWhenOccurs( $aData['EVN_WHEN_OCCURS'] ); diff --git a/workflow/engine/classes/model/map/EventMapBuilder.php b/workflow/engine/classes/model/map/EventMapBuilder.php index 321acadb6..f27943c06 100755 --- a/workflow/engine/classes/model/map/EventMapBuilder.php +++ b/workflow/engine/classes/model/map/EventMapBuilder.php @@ -82,6 +82,8 @@ class EventMapBuilder { $tMap->addColumn('EVN_TAS_ESTIMATED_DURATION', 'EvnTasEstimatedDuration', 'double', CreoleTypes::DOUBLE, false, null); + $tMap->addColumn('EVN_TIME_UNIT', 'EvnTimeUnit', 'string', CreoleTypes::VARCHAR, true, 10); + $tMap->addColumn('EVN_WHEN', 'EvnWhen', 'double', CreoleTypes::DOUBLE, true, null); $tMap->addColumn('EVN_MAX_ATTEMPTS', 'EvnMaxAttempts', 'int', CreoleTypes::TINYINT, true, null); diff --git a/workflow/engine/classes/model/om/BaseEvent.php b/workflow/engine/classes/model/om/BaseEvent.php index 800059802..ef7de057e 100755 --- a/workflow/engine/classes/model/om/BaseEvent.php +++ b/workflow/engine/classes/model/om/BaseEvent.php @@ -91,6 +91,13 @@ abstract class BaseEvent extends BaseObject implements Persistent { protected $evn_tas_estimated_duration = 0; + /** + * The value for the evn_time_unit field. + * @var string + */ + protected $evn_time_unit = 'DAYS'; + + /** * The value for the evn_when field. * @var double @@ -273,6 +280,17 @@ abstract class BaseEvent extends BaseObject implements Persistent { return $this->evn_tas_estimated_duration; } + /** + * Get the [evn_time_unit] column value. + * + * @return string + */ + public function getEvnTimeUnit() + { + + return $this->evn_time_unit; + } + /** * Get the [evn_when] column value. * @@ -575,6 +593,28 @@ abstract class BaseEvent extends BaseObject implements Persistent { } // setEvnTasEstimatedDuration() + /** + * Set the value of [evn_time_unit] column. + * + * @param string $v new value + * @return void + */ + public function setEvnTimeUnit($v) + { + + // Since the native PHP type for this column is string, + // we will cast the input to a string (if it is not). + if ($v !== null && !is_string($v)) { + $v = (string) $v; + } + + if ($this->evn_time_unit !== $v || $v === 'DAYS') { + $this->evn_time_unit = $v; + $this->modifiedColumns[] = EventPeer::EVN_TIME_UNIT; + } + + } // setEvnTimeUnit() + /** * Set the value of [evn_when] column. * @@ -824,32 +864,34 @@ abstract class BaseEvent extends BaseObject implements Persistent { $this->evn_tas_estimated_duration = $rs->getFloat($startcol + 8); - $this->evn_when = $rs->getFloat($startcol + 9); + $this->evn_time_unit = $rs->getString($startcol + 9); - $this->evn_max_attempts = $rs->getInt($startcol + 10); + $this->evn_when = $rs->getFloat($startcol + 10); - $this->evn_action = $rs->getString($startcol + 11); + $this->evn_max_attempts = $rs->getInt($startcol + 11); - $this->evn_conditions = $rs->getString($startcol + 12); + $this->evn_action = $rs->getString($startcol + 12); - $this->evn_action_parameters = $rs->getString($startcol + 13); + $this->evn_conditions = $rs->getString($startcol + 13); - $this->tri_uid = $rs->getString($startcol + 14); + $this->evn_action_parameters = $rs->getString($startcol + 14); - $this->evn_posx = $rs->getInt($startcol + 15); + $this->tri_uid = $rs->getString($startcol + 15); - $this->evn_posy = $rs->getInt($startcol + 16); + $this->evn_posx = $rs->getInt($startcol + 16); - $this->evn_type = $rs->getString($startcol + 17); + $this->evn_posy = $rs->getInt($startcol + 17); - $this->tas_evn_uid = $rs->getString($startcol + 18); + $this->evn_type = $rs->getString($startcol + 18); + + $this->tas_evn_uid = $rs->getString($startcol + 19); $this->resetModified(); $this->setNew(false); // FIXME - using NUM_COLUMNS may be clearer. - return $startcol + 19; // 19 = EventPeer::NUM_COLUMNS - EventPeer::NUM_LAZY_LOAD_COLUMNS). + return $startcol + 20; // 20 = EventPeer::NUM_COLUMNS - EventPeer::NUM_LAZY_LOAD_COLUMNS). } catch (Exception $e) { throw new PropelException("Error populating Event object", $e); @@ -1080,33 +1122,36 @@ abstract class BaseEvent extends BaseObject implements Persistent { return $this->getEvnTasEstimatedDuration(); break; case 9: - return $this->getEvnWhen(); + return $this->getEvnTimeUnit(); break; case 10: - return $this->getEvnMaxAttempts(); + return $this->getEvnWhen(); break; case 11: - return $this->getEvnAction(); + return $this->getEvnMaxAttempts(); break; case 12: - return $this->getEvnConditions(); + return $this->getEvnAction(); break; case 13: - return $this->getEvnActionParameters(); + return $this->getEvnConditions(); break; case 14: - return $this->getTriUid(); + return $this->getEvnActionParameters(); break; case 15: - return $this->getEvnPosx(); + return $this->getTriUid(); break; case 16: - return $this->getEvnPosy(); + return $this->getEvnPosx(); break; case 17: - return $this->getEvnType(); + return $this->getEvnPosy(); break; case 18: + return $this->getEvnType(); + break; + case 19: return $this->getTasEvnUid(); break; default: @@ -1138,16 +1183,17 @@ abstract class BaseEvent extends BaseObject implements Persistent { $keys[6] => $this->getEvnTasUidFrom(), $keys[7] => $this->getEvnTasUidTo(), $keys[8] => $this->getEvnTasEstimatedDuration(), - $keys[9] => $this->getEvnWhen(), - $keys[10] => $this->getEvnMaxAttempts(), - $keys[11] => $this->getEvnAction(), - $keys[12] => $this->getEvnConditions(), - $keys[13] => $this->getEvnActionParameters(), - $keys[14] => $this->getTriUid(), - $keys[15] => $this->getEvnPosx(), - $keys[16] => $this->getEvnPosy(), - $keys[17] => $this->getEvnType(), - $keys[18] => $this->getTasEvnUid(), + $keys[9] => $this->getEvnTimeUnit(), + $keys[10] => $this->getEvnWhen(), + $keys[11] => $this->getEvnMaxAttempts(), + $keys[12] => $this->getEvnAction(), + $keys[13] => $this->getEvnConditions(), + $keys[14] => $this->getEvnActionParameters(), + $keys[15] => $this->getTriUid(), + $keys[16] => $this->getEvnPosx(), + $keys[17] => $this->getEvnPosy(), + $keys[18] => $this->getEvnType(), + $keys[19] => $this->getTasEvnUid(), ); return $result; } @@ -1207,33 +1253,36 @@ abstract class BaseEvent extends BaseObject implements Persistent { $this->setEvnTasEstimatedDuration($value); break; case 9: - $this->setEvnWhen($value); + $this->setEvnTimeUnit($value); break; case 10: - $this->setEvnMaxAttempts($value); + $this->setEvnWhen($value); break; case 11: - $this->setEvnAction($value); + $this->setEvnMaxAttempts($value); break; case 12: - $this->setEvnConditions($value); + $this->setEvnAction($value); break; case 13: - $this->setEvnActionParameters($value); + $this->setEvnConditions($value); break; case 14: - $this->setTriUid($value); + $this->setEvnActionParameters($value); break; case 15: - $this->setEvnPosx($value); + $this->setTriUid($value); break; case 16: - $this->setEvnPosy($value); + $this->setEvnPosx($value); break; case 17: - $this->setEvnType($value); + $this->setEvnPosy($value); break; case 18: + $this->setEvnType($value); + break; + case 19: $this->setTasEvnUid($value); break; } // switch() @@ -1268,16 +1317,17 @@ abstract class BaseEvent extends BaseObject implements Persistent { if (array_key_exists($keys[6], $arr)) $this->setEvnTasUidFrom($arr[$keys[6]]); if (array_key_exists($keys[7], $arr)) $this->setEvnTasUidTo($arr[$keys[7]]); if (array_key_exists($keys[8], $arr)) $this->setEvnTasEstimatedDuration($arr[$keys[8]]); - if (array_key_exists($keys[9], $arr)) $this->setEvnWhen($arr[$keys[9]]); - if (array_key_exists($keys[10], $arr)) $this->setEvnMaxAttempts($arr[$keys[10]]); - if (array_key_exists($keys[11], $arr)) $this->setEvnAction($arr[$keys[11]]); - if (array_key_exists($keys[12], $arr)) $this->setEvnConditions($arr[$keys[12]]); - if (array_key_exists($keys[13], $arr)) $this->setEvnActionParameters($arr[$keys[13]]); - if (array_key_exists($keys[14], $arr)) $this->setTriUid($arr[$keys[14]]); - if (array_key_exists($keys[15], $arr)) $this->setEvnPosx($arr[$keys[15]]); - if (array_key_exists($keys[16], $arr)) $this->setEvnPosy($arr[$keys[16]]); - if (array_key_exists($keys[17], $arr)) $this->setEvnType($arr[$keys[17]]); - if (array_key_exists($keys[18], $arr)) $this->setTasEvnUid($arr[$keys[18]]); + if (array_key_exists($keys[9], $arr)) $this->setEvnTimeUnit($arr[$keys[9]]); + if (array_key_exists($keys[10], $arr)) $this->setEvnWhen($arr[$keys[10]]); + if (array_key_exists($keys[11], $arr)) $this->setEvnMaxAttempts($arr[$keys[11]]); + if (array_key_exists($keys[12], $arr)) $this->setEvnAction($arr[$keys[12]]); + if (array_key_exists($keys[13], $arr)) $this->setEvnConditions($arr[$keys[13]]); + if (array_key_exists($keys[14], $arr)) $this->setEvnActionParameters($arr[$keys[14]]); + if (array_key_exists($keys[15], $arr)) $this->setTriUid($arr[$keys[15]]); + if (array_key_exists($keys[16], $arr)) $this->setEvnPosx($arr[$keys[16]]); + if (array_key_exists($keys[17], $arr)) $this->setEvnPosy($arr[$keys[17]]); + if (array_key_exists($keys[18], $arr)) $this->setEvnType($arr[$keys[18]]); + if (array_key_exists($keys[19], $arr)) $this->setTasEvnUid($arr[$keys[19]]); } /** @@ -1298,6 +1348,7 @@ abstract class BaseEvent extends BaseObject implements Persistent { if ($this->isColumnModified(EventPeer::EVN_TAS_UID_FROM)) $criteria->add(EventPeer::EVN_TAS_UID_FROM, $this->evn_tas_uid_from); if ($this->isColumnModified(EventPeer::EVN_TAS_UID_TO)) $criteria->add(EventPeer::EVN_TAS_UID_TO, $this->evn_tas_uid_to); if ($this->isColumnModified(EventPeer::EVN_TAS_ESTIMATED_DURATION)) $criteria->add(EventPeer::EVN_TAS_ESTIMATED_DURATION, $this->evn_tas_estimated_duration); + if ($this->isColumnModified(EventPeer::EVN_TIME_UNIT)) $criteria->add(EventPeer::EVN_TIME_UNIT, $this->evn_time_unit); if ($this->isColumnModified(EventPeer::EVN_WHEN)) $criteria->add(EventPeer::EVN_WHEN, $this->evn_when); if ($this->isColumnModified(EventPeer::EVN_MAX_ATTEMPTS)) $criteria->add(EventPeer::EVN_MAX_ATTEMPTS, $this->evn_max_attempts); if ($this->isColumnModified(EventPeer::EVN_ACTION)) $criteria->add(EventPeer::EVN_ACTION, $this->evn_action); @@ -1378,6 +1429,8 @@ abstract class BaseEvent extends BaseObject implements Persistent { $copyObj->setEvnTasEstimatedDuration($this->evn_tas_estimated_duration); + $copyObj->setEvnTimeUnit($this->evn_time_unit); + $copyObj->setEvnWhen($this->evn_when); $copyObj->setEvnMaxAttempts($this->evn_max_attempts); diff --git a/workflow/engine/classes/model/om/BaseEventPeer.php b/workflow/engine/classes/model/om/BaseEventPeer.php index da05745cf..0d828db5d 100755 --- a/workflow/engine/classes/model/om/BaseEventPeer.php +++ b/workflow/engine/classes/model/om/BaseEventPeer.php @@ -24,7 +24,7 @@ abstract class BaseEventPeer { const CLASS_DEFAULT = 'classes.model.Event'; /** The total number of columns. */ - const NUM_COLUMNS = 19; + const NUM_COLUMNS = 20; /** The number of lazy-loaded columns. */ const NUM_LAZY_LOAD_COLUMNS = 0; @@ -57,6 +57,9 @@ abstract class BaseEventPeer { /** the column name for the EVN_TAS_ESTIMATED_DURATION field */ const EVN_TAS_ESTIMATED_DURATION = 'EVENT.EVN_TAS_ESTIMATED_DURATION'; + /** the column name for the EVN_TIME_UNIT field */ + const EVN_TIME_UNIT = 'EVENT.EVN_TIME_UNIT'; + /** the column name for the EVN_WHEN field */ const EVN_WHEN = 'EVENT.EVN_WHEN'; @@ -98,10 +101,10 @@ abstract class BaseEventPeer { * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id' */ private static $fieldNames = array ( - BasePeer::TYPE_PHPNAME => array ('EvnUid', 'ProUid', 'EvnStatus', 'EvnWhenOccurs', 'EvnRelatedTo', 'TasUid', 'EvnTasUidFrom', 'EvnTasUidTo', 'EvnTasEstimatedDuration', 'EvnWhen', 'EvnMaxAttempts', 'EvnAction', 'EvnConditions', 'EvnActionParameters', 'TriUid', 'EvnPosx', 'EvnPosy', 'EvnType', 'TasEvnUid', ), - BasePeer::TYPE_COLNAME => array (EventPeer::EVN_UID, EventPeer::PRO_UID, EventPeer::EVN_STATUS, EventPeer::EVN_WHEN_OCCURS, EventPeer::EVN_RELATED_TO, EventPeer::TAS_UID, EventPeer::EVN_TAS_UID_FROM, EventPeer::EVN_TAS_UID_TO, EventPeer::EVN_TAS_ESTIMATED_DURATION, EventPeer::EVN_WHEN, EventPeer::EVN_MAX_ATTEMPTS, EventPeer::EVN_ACTION, EventPeer::EVN_CONDITIONS, EventPeer::EVN_ACTION_PARAMETERS, EventPeer::TRI_UID, EventPeer::EVN_POSX, EventPeer::EVN_POSY, EventPeer::EVN_TYPE, EventPeer::TAS_EVN_UID, ), - BasePeer::TYPE_FIELDNAME => array ('EVN_UID', 'PRO_UID', 'EVN_STATUS', 'EVN_WHEN_OCCURS', 'EVN_RELATED_TO', 'TAS_UID', 'EVN_TAS_UID_FROM', 'EVN_TAS_UID_TO', 'EVN_TAS_ESTIMATED_DURATION', 'EVN_WHEN', 'EVN_MAX_ATTEMPTS', 'EVN_ACTION', 'EVN_CONDITIONS', 'EVN_ACTION_PARAMETERS', 'TRI_UID', 'EVN_POSX', 'EVN_POSY', 'EVN_TYPE', 'TAS_EVN_UID', ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, ) + BasePeer::TYPE_PHPNAME => array ('EvnUid', 'ProUid', 'EvnStatus', 'EvnWhenOccurs', 'EvnRelatedTo', 'TasUid', 'EvnTasUidFrom', 'EvnTasUidTo', 'EvnTasEstimatedDuration', 'EvnTimeUnit', 'EvnWhen', 'EvnMaxAttempts', 'EvnAction', 'EvnConditions', 'EvnActionParameters', 'TriUid', 'EvnPosx', 'EvnPosy', 'EvnType', 'TasEvnUid', ), + BasePeer::TYPE_COLNAME => array (EventPeer::EVN_UID, EventPeer::PRO_UID, EventPeer::EVN_STATUS, EventPeer::EVN_WHEN_OCCURS, EventPeer::EVN_RELATED_TO, EventPeer::TAS_UID, EventPeer::EVN_TAS_UID_FROM, EventPeer::EVN_TAS_UID_TO, EventPeer::EVN_TAS_ESTIMATED_DURATION, EventPeer::EVN_TIME_UNIT, EventPeer::EVN_WHEN, EventPeer::EVN_MAX_ATTEMPTS, EventPeer::EVN_ACTION, EventPeer::EVN_CONDITIONS, EventPeer::EVN_ACTION_PARAMETERS, EventPeer::TRI_UID, EventPeer::EVN_POSX, EventPeer::EVN_POSY, EventPeer::EVN_TYPE, EventPeer::TAS_EVN_UID, ), + BasePeer::TYPE_FIELDNAME => array ('EVN_UID', 'PRO_UID', 'EVN_STATUS', 'EVN_WHEN_OCCURS', 'EVN_RELATED_TO', 'TAS_UID', 'EVN_TAS_UID_FROM', 'EVN_TAS_UID_TO', 'EVN_TAS_ESTIMATED_DURATION', 'EVN_TIME_UNIT', 'EVN_WHEN', 'EVN_MAX_ATTEMPTS', 'EVN_ACTION', 'EVN_CONDITIONS', 'EVN_ACTION_PARAMETERS', 'TRI_UID', 'EVN_POSX', 'EVN_POSY', 'EVN_TYPE', 'TAS_EVN_UID', ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ) ); /** @@ -111,10 +114,10 @@ abstract class BaseEventPeer { * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0 */ private static $fieldKeys = array ( - BasePeer::TYPE_PHPNAME => array ('EvnUid' => 0, 'ProUid' => 1, 'EvnStatus' => 2, 'EvnWhenOccurs' => 3, 'EvnRelatedTo' => 4, 'TasUid' => 5, 'EvnTasUidFrom' => 6, 'EvnTasUidTo' => 7, 'EvnTasEstimatedDuration' => 8, 'EvnWhen' => 9, 'EvnMaxAttempts' => 10, 'EvnAction' => 11, 'EvnConditions' => 12, 'EvnActionParameters' => 13, 'TriUid' => 14, 'EvnPosx' => 15, 'EvnPosy' => 16, 'EvnType' => 17, 'TasEvnUid' => 18, ), - BasePeer::TYPE_COLNAME => array (EventPeer::EVN_UID => 0, EventPeer::PRO_UID => 1, EventPeer::EVN_STATUS => 2, EventPeer::EVN_WHEN_OCCURS => 3, EventPeer::EVN_RELATED_TO => 4, EventPeer::TAS_UID => 5, EventPeer::EVN_TAS_UID_FROM => 6, EventPeer::EVN_TAS_UID_TO => 7, EventPeer::EVN_TAS_ESTIMATED_DURATION => 8, EventPeer::EVN_WHEN => 9, EventPeer::EVN_MAX_ATTEMPTS => 10, EventPeer::EVN_ACTION => 11, EventPeer::EVN_CONDITIONS => 12, EventPeer::EVN_ACTION_PARAMETERS => 13, EventPeer::TRI_UID => 14, EventPeer::EVN_POSX => 15, EventPeer::EVN_POSY => 16, EventPeer::EVN_TYPE => 17, EventPeer::TAS_EVN_UID => 18, ), - BasePeer::TYPE_FIELDNAME => array ('EVN_UID' => 0, 'PRO_UID' => 1, 'EVN_STATUS' => 2, 'EVN_WHEN_OCCURS' => 3, 'EVN_RELATED_TO' => 4, 'TAS_UID' => 5, 'EVN_TAS_UID_FROM' => 6, 'EVN_TAS_UID_TO' => 7, 'EVN_TAS_ESTIMATED_DURATION' => 8, 'EVN_WHEN' => 9, 'EVN_MAX_ATTEMPTS' => 10, 'EVN_ACTION' => 11, 'EVN_CONDITIONS' => 12, 'EVN_ACTION_PARAMETERS' => 13, 'TRI_UID' => 14, 'EVN_POSX' => 15, 'EVN_POSY' => 16, 'EVN_TYPE' => 17, 'TAS_EVN_UID' => 18, ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, ) + BasePeer::TYPE_PHPNAME => array ('EvnUid' => 0, 'ProUid' => 1, 'EvnStatus' => 2, 'EvnWhenOccurs' => 3, 'EvnRelatedTo' => 4, 'TasUid' => 5, 'EvnTasUidFrom' => 6, 'EvnTasUidTo' => 7, 'EvnTasEstimatedDuration' => 8, 'EvnTimeUnit' => 9, 'EvnWhen' => 10, 'EvnMaxAttempts' => 11, 'EvnAction' => 12, 'EvnConditions' => 13, 'EvnActionParameters' => 14, 'TriUid' => 15, 'EvnPosx' => 16, 'EvnPosy' => 17, 'EvnType' => 18, 'TasEvnUid' => 19, ), + BasePeer::TYPE_COLNAME => array (EventPeer::EVN_UID => 0, EventPeer::PRO_UID => 1, EventPeer::EVN_STATUS => 2, EventPeer::EVN_WHEN_OCCURS => 3, EventPeer::EVN_RELATED_TO => 4, EventPeer::TAS_UID => 5, EventPeer::EVN_TAS_UID_FROM => 6, EventPeer::EVN_TAS_UID_TO => 7, EventPeer::EVN_TAS_ESTIMATED_DURATION => 8, EventPeer::EVN_TIME_UNIT => 9, EventPeer::EVN_WHEN => 10, EventPeer::EVN_MAX_ATTEMPTS => 11, EventPeer::EVN_ACTION => 12, EventPeer::EVN_CONDITIONS => 13, EventPeer::EVN_ACTION_PARAMETERS => 14, EventPeer::TRI_UID => 15, EventPeer::EVN_POSX => 16, EventPeer::EVN_POSY => 17, EventPeer::EVN_TYPE => 18, EventPeer::TAS_EVN_UID => 19, ), + BasePeer::TYPE_FIELDNAME => array ('EVN_UID' => 0, 'PRO_UID' => 1, 'EVN_STATUS' => 2, 'EVN_WHEN_OCCURS' => 3, 'EVN_RELATED_TO' => 4, 'TAS_UID' => 5, 'EVN_TAS_UID_FROM' => 6, 'EVN_TAS_UID_TO' => 7, 'EVN_TAS_ESTIMATED_DURATION' => 8, 'EVN_TIME_UNIT' => 9, 'EVN_WHEN' => 10, 'EVN_MAX_ATTEMPTS' => 11, 'EVN_ACTION' => 12, 'EVN_CONDITIONS' => 13, 'EVN_ACTION_PARAMETERS' => 14, 'TRI_UID' => 15, 'EVN_POSX' => 16, 'EVN_POSY' => 17, 'EVN_TYPE' => 18, 'TAS_EVN_UID' => 19, ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, ) ); /** @@ -233,6 +236,8 @@ abstract class BaseEventPeer { $criteria->addSelectColumn(EventPeer::EVN_TAS_ESTIMATED_DURATION); + $criteria->addSelectColumn(EventPeer::EVN_TIME_UNIT); + $criteria->addSelectColumn(EventPeer::EVN_WHEN); $criteria->addSelectColumn(EventPeer::EVN_MAX_ATTEMPTS); diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml index 965f52d40..7e344aaf7 100755 --- a/workflow/engine/config/schema.xml +++ b/workflow/engine/config/schema.xml @@ -2174,6 +2174,7 @@ + diff --git a/workflow/engine/js/events/events.js b/workflow/engine/js/events/events.js index 5d1677833..72ad3a075 100755 --- a/workflow/engine/js/events/events.js +++ b/workflow/engine/js/events/events.js @@ -23,6 +23,7 @@ var eventsNewAction = function(oForm) { + '&EVN_TAS_UID_FROM=' + getField('EVN_TAS_UID_FROM').value + '&EVN_TAS_UID_TO=' + getField('EVN_TAS_UID_TO').value + '&EVN_TAS_ESTIMATED_DURATION=' + getField('EVN_TAS_ESTIMATED_DURATION').value + + '&EVN_TIME_UNIT=' + getField('EVN_TIME_UNIT').value + '&EVN_ACTION=' + getField('EVN_ACTION').value + '&EVN_CONDITIONS=' + getField('EVN_CONDITIONS').value + '&TRI_UID=' + getField('TRI_UID').value diff --git a/workflow/engine/methods/events/eventsSetupGraph.php b/workflow/engine/methods/events/eventsSetupGraph.php index 576d0b376..a34e2757e 100755 --- a/workflow/engine/methods/events/eventsSetupGraph.php +++ b/workflow/engine/methods/events/eventsSetupGraph.php @@ -15,12 +15,18 @@ $s = isset( $_GET['s'] ) ? $_GET['s'] : 'a'; if ( $s != 'a' ) $s = 'i'; + //timeUnit + $timeunit = isset( $_GET['t'] ) ? $_GET['t'] : 'Days'; + $timeunit = ucfirst(strtolower($timeunit)); + //estimated - $estimated = abs( isset( $_GET['e'] ) ? $_GET['e'] : '1' ); + $estimated = abs( isset( $_GET['e'] ) ? (($timeunit == 'Hours')? round($_GET['e']/24,2):$_GET['e']) : '1' ); + //when $when = isset( $_GET['w'] ) ? $_GET['w'] : '0'; + $im = imagecreate($w,$h); $bg = imagecolorallocate ($im, 0xFF, 0xFF, 0xFF); $fg = imagecolorallocate ($im, 0x00, 200, 0x00); @@ -135,7 +141,7 @@ imageline($im, 15, $h-19 , $w -15, $h-19, $red); imageline($im, $w - 23, $h-23 , $w -15, $h-19, $red); imageline($im, $w - 23, $h-15 , $w -15, $h-19, $red); - imagestring ($im, 2, $w -30 , $h -37, 'days', $red); + imagestring ($im, 2, $w -30 , $h -37, 'Days', $red); if ( $estimated == 0 ) { $s = 'i'; diff --git a/workflow/engine/xmlform/events/eventsEdit.html b/workflow/engine/xmlform/events/eventsEdit.html index 8ef6c5f32..384b5a3b5 100755 --- a/workflow/engine/xmlform/events/eventsEdit.html +++ b/workflow/engine/xmlform/events/eventsEdit.html @@ -48,7 +48,7 @@ {$EVN_TAS_ESTIMATED_DURATION} - {$form.EVN_TAS_ESTIMATED_DURATION} {$EVN_WHEN} + {$form.EVN_TAS_ESTIMATED_DURATION} {$form.EVN_TIME_UNIT} * {$EVN_WHEN_OCCURS} diff --git a/workflow/engine/xmlform/events/eventsEdit.xml b/workflow/engine/xmlform/events/eventsEdit.xml index b3057199b..64b100751 100755 --- a/workflow/engine/xmlform/events/eventsEdit.xml +++ b/workflow/engine/xmlform/events/eventsEdit.xml @@ -53,6 +53,10 @@ SELECT TAS_UID, TAS_TITLE FROM tasks Estimated Task duration + + + + days @@ -114,6 +118,7 @@ var onGraphChange = function(oForm) { oWhenOccurs = getField('EVN_WHEN_OCCURS'); oStatus = getField('EVN_STATUS'); oWhen = getField('EVN_WHEN'); + timeUnit = getField('EVN_TIME_UNIT'); oEstimated = getField('EVN_TAS_ESTIMATED_DURATION'); query = ""; @@ -132,6 +137,7 @@ var onGraphChange = function(oForm) { query = query + "&s=i"; query = query + "&w=" + oWhen.value; + query = query + "&t=" + timeUnit.value; query = query + "&e=" + oEstimated.value; var x = document.getElementsByName('theImage'); @@ -143,6 +149,7 @@ leimnud.event.add(getField('EVN_RELATED_TO'), 'change', onChangeRelatedTo); leimnud.event.add(getField('EVN_WHEN_OCCURS'), 'change', onGraphChange); leimnud.event.add(getField('EVN_WHEN'), 'keyup', onGraphChange); leimnud.event.add(getField('EVN_STATUS'), 'change', onGraphChange); +leimnud.event.add(getField('EVN_TIME_UNIT'), 'change', onGraphChange); leimnud.event.add(getField('EVN_TAS_ESTIMATED_DURATION'), 'keyup', onGraphChange); onChangeRelatedTo(); diff --git a/workflow/engine/xmlform/events/eventsEditAction.html b/workflow/engine/xmlform/events/eventsEditAction.html index c214db759..70bd5bfa1 100755 --- a/workflow/engine/xmlform/events/eventsEditAction.html +++ b/workflow/engine/xmlform/events/eventsEditAction.html @@ -31,6 +31,9 @@ {$form.EVN_TAS_ESTIMATED_DURATION} + + + {$form.EVN_TIME_UNIT} {$form.EVN_WHEN_OCCURS} diff --git a/workflow/engine/xmlform/events/eventsEditAction.xml b/workflow/engine/xmlform/events/eventsEditAction.xml index b7441a609..527b249b8 100755 --- a/workflow/engine/xmlform/events/eventsEditAction.xml +++ b/workflow/engine/xmlform/events/eventsEditAction.xml @@ -19,6 +19,8 @@ + + diff --git a/workflow/engine/xmlform/events/eventsNew.html b/workflow/engine/xmlform/events/eventsNew.html index ae885c7e9..37b9d5455 100755 --- a/workflow/engine/xmlform/events/eventsNew.html +++ b/workflow/engine/xmlform/events/eventsNew.html @@ -47,9 +47,9 @@ {$form.EVN_TAS_UID_FROM} {$EVN_TAS_UID_TO} {$form.EVN_TAS_UID_TO} - {$EVN_TAS_ESTIMATED_DURATION} - {$form.EVN_TAS_ESTIMATED_DURATION} {$EVN_WHEN} - + {$EVN_TAS_ESTIMATED_DURATION} + {$form.EVN_TAS_ESTIMATED_DURATION} {$form.EVN_TIME_UNIT} + * {$EVN_WHEN_OCCURS} {$form.EVN_WHEN} {$EVN_WHEN} {$form.EVN_WHEN_OCCURS} diff --git a/workflow/engine/xmlform/events/eventsNew.xml b/workflow/engine/xmlform/events/eventsNew.xml index ebce87ec4..a9641d068 100755 --- a/workflow/engine/xmlform/events/eventsNew.xml +++ b/workflow/engine/xmlform/events/eventsNew.xml @@ -53,6 +53,10 @@ SELECT TAS_UID, TAS_TITLE FROM tasks Estimated Task duration + + + + days @@ -116,6 +120,7 @@ var onGraphChange = function(oForm) { oWhenOccurs = getField('EVN_WHEN_OCCURS'); oStatus = getField('EVN_STATUS'); oWhen = getField('EVN_WHEN'); + timeUnit = getField('EVN_TIME_UNIT'); oEstimated = getField('EVN_TAS_ESTIMATED_DURATION'); query = ""; @@ -135,6 +140,7 @@ var onGraphChange = function(oForm) { query = query + "&w=" + oWhen.value; query = query + "&e=" + oEstimated.value; + query = query + "&t=" + timeUnit.value; var x = document.getElementsByName('theImage'); x[0].src = '../events/eventsSetupGraph'+query; @@ -145,6 +151,7 @@ leimnud.event.add(getField('EVN_RELATED_TO'), 'change', onChangeRelatedTo); leimnud.event.add(getField('EVN_WHEN_OCCURS'), 'change', onGraphChange); leimnud.event.add(getField('EVN_WHEN'), 'keyup', onGraphChange); leimnud.event.add(getField('EVN_STATUS'), 'change', onGraphChange); +leimnud.event.add(getField('EVN_TIME_UNIT'), 'change', onGraphChange); leimnud.event.add(getField('EVN_TAS_ESTIMATED_DURATION'), 'keyup', onGraphChange); onChangeRelatedTo();