diff --git a/workflow/engine/classes/model/Dynaform.php b/workflow/engine/classes/model/Dynaform.php
index caabc423c..d48fbec92 100755
--- a/workflow/engine/classes/model/Dynaform.php
+++ b/workflow/engine/classes/model/Dynaform.php
@@ -173,7 +173,7 @@ class Dynaform extends BaseDynaform
if (isset($aData["DYN_CONTENT"])) {
$this->setDynContent($aData["DYN_CONTENT"]);
}
-
+ $this->setDynVersion( $aData['DYN_VERSION'] );
if ($this->validate()) {
$con->begin();
$res = $this->save();
diff --git a/workflow/engine/classes/model/map/DynaformMapBuilder.php b/workflow/engine/classes/model/map/DynaformMapBuilder.php
index e2450e7bb..fcbc3e2f4 100755
--- a/workflow/engine/classes/model/map/DynaformMapBuilder.php
+++ b/workflow/engine/classes/model/map/DynaformMapBuilder.php
@@ -75,6 +75,8 @@ class DynaformMapBuilder
$tMap->addColumn('DYN_CONTENT', 'DynContent', 'string', CreoleTypes::LONGVARCHAR, false, null);
+ $tMap->addColumn('DYN_VERSION', 'DynVersion', 'int', CreoleTypes::INTEGER, true, null);
+
$tMap->addValidator('DYN_TYPE', 'validValues', 'propel.validator.ValidValuesValidator', 'xmlform|grid', 'Please select a valid dynaform type.');
} // doBuild()
diff --git a/workflow/engine/classes/model/om/BaseDynaform.php b/workflow/engine/classes/model/om/BaseDynaform.php
index 2542993af..e03f9a660 100755
--- a/workflow/engine/classes/model/om/BaseDynaform.php
+++ b/workflow/engine/classes/model/om/BaseDynaform.php
@@ -57,6 +57,12 @@ abstract class BaseDynaform extends BaseObject implements Persistent
*/
protected $dyn_content;
+ /**
+ * The value for the dyn_version field.
+ * @var int
+ */
+ protected $dyn_version;
+
/**
* Flag to prevent endless save loop, if this object is referenced
* by another object which falls in this transaction.
@@ -126,6 +132,17 @@ abstract class BaseDynaform extends BaseObject implements Persistent
return $this->dyn_content;
}
+ /**
+ * Get the [dyn_version] column value.
+ *
+ * @return int
+ */
+ public function getDynVersion()
+ {
+
+ return $this->dyn_version;
+ }
+
/**
* Set the value of [dyn_uid] column.
*
@@ -236,6 +253,28 @@ abstract class BaseDynaform extends BaseObject implements Persistent
} // setDynContent()
+ /**
+ * Set the value of [dyn_version] column.
+ *
+ * @param int $v new value
+ * @return void
+ */
+ public function setDynVersion($v)
+ {
+
+ // Since the native PHP type for this column is integer,
+ // we will cast the input value to an int (if it is not).
+ if ($v !== null && !is_int($v) && is_numeric($v)) {
+ $v = (int) $v;
+ }
+
+ if ($this->dyn_version !== $v) {
+ $this->dyn_version = $v;
+ $this->modifiedColumns[] = DynaformPeer::DYN_VERSION;
+ }
+
+ } // setDynVersion()
+
/**
* Hydrates (populates) the object variables with values from the database resultset.
*
@@ -263,12 +302,14 @@ abstract class BaseDynaform extends BaseObject implements Persistent
$this->dyn_content = $rs->getString($startcol + 4);
+ $this->dyn_version = $rs->getInt($startcol + 5);
+
$this->resetModified();
$this->setNew(false);
// FIXME - using NUM_COLUMNS may be clearer.
- return $startcol + 5; // 5 = DynaformPeer::NUM_COLUMNS - DynaformPeer::NUM_LAZY_LOAD_COLUMNS).
+ return $startcol + 6; // 6 = DynaformPeer::NUM_COLUMNS - DynaformPeer::NUM_LAZY_LOAD_COLUMNS).
} catch (Exception $e) {
throw new PropelException("Error populating Dynaform object", $e);
@@ -487,6 +528,9 @@ abstract class BaseDynaform extends BaseObject implements Persistent
case 4:
return $this->getDynContent();
break;
+ case 5:
+ return $this->getDynVersion();
+ break;
default:
return null;
break;
@@ -512,6 +556,7 @@ abstract class BaseDynaform extends BaseObject implements Persistent
$keys[2] => $this->getDynType(),
$keys[3] => $this->getDynFilename(),
$keys[4] => $this->getDynContent(),
+ $keys[5] => $this->getDynVersion(),
);
return $result;
}
@@ -558,6 +603,9 @@ abstract class BaseDynaform extends BaseObject implements Persistent
case 4:
$this->setDynContent($value);
break;
+ case 5:
+ $this->setDynVersion($value);
+ break;
} // switch()
}
@@ -601,6 +649,10 @@ abstract class BaseDynaform extends BaseObject implements Persistent
$this->setDynContent($arr[$keys[4]]);
}
+ if (array_key_exists($keys[5], $arr)) {
+ $this->setDynVersion($arr[$keys[5]]);
+ }
+
}
/**
@@ -632,6 +684,10 @@ abstract class BaseDynaform extends BaseObject implements Persistent
$criteria->add(DynaformPeer::DYN_CONTENT, $this->dyn_content);
}
+ if ($this->isColumnModified(DynaformPeer::DYN_VERSION)) {
+ $criteria->add(DynaformPeer::DYN_VERSION, $this->dyn_version);
+ }
+
return $criteria;
}
@@ -694,6 +750,8 @@ abstract class BaseDynaform extends BaseObject implements Persistent
$copyObj->setDynContent($this->dyn_content);
+ $copyObj->setDynVersion($this->dyn_version);
+
$copyObj->setNew(true);
diff --git a/workflow/engine/classes/model/om/BaseDynaformPeer.php b/workflow/engine/classes/model/om/BaseDynaformPeer.php
index d9e8aa7b0..1f4cfc744 100755
--- a/workflow/engine/classes/model/om/BaseDynaformPeer.php
+++ b/workflow/engine/classes/model/om/BaseDynaformPeer.php
@@ -25,7 +25,7 @@ abstract class BaseDynaformPeer
const CLASS_DEFAULT = 'classes.model.Dynaform';
/** The total number of columns. */
- const NUM_COLUMNS = 5;
+ const NUM_COLUMNS = 6;
/** The number of lazy-loaded columns. */
const NUM_LAZY_LOAD_COLUMNS = 0;
@@ -46,6 +46,9 @@ abstract class BaseDynaformPeer
/** the column name for the DYN_CONTENT field */
const DYN_CONTENT = 'DYNAFORM.DYN_CONTENT';
+ /** the column name for the DYN_VERSION field */
+ const DYN_VERSION = 'DYNAFORM.DYN_VERSION';
+
/** The PHP to DB Name Mapping */
private static $phpNameMap = null;
@@ -57,10 +60,10 @@ abstract class BaseDynaformPeer
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
*/
private static $fieldNames = array (
- BasePeer::TYPE_PHPNAME => array ('DynUid', 'ProUid', 'DynType', 'DynFilename', 'DynContent', ),
- BasePeer::TYPE_COLNAME => array (DynaformPeer::DYN_UID, DynaformPeer::PRO_UID, DynaformPeer::DYN_TYPE, DynaformPeer::DYN_FILENAME, DynaformPeer::DYN_CONTENT, ),
- BasePeer::TYPE_FIELDNAME => array ('DYN_UID', 'PRO_UID', 'DYN_TYPE', 'DYN_FILENAME', 'DYN_CONTENT', ),
- BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, )
+ BasePeer::TYPE_PHPNAME => array ('DynUid', 'ProUid', 'DynType', 'DynFilename', 'DynContent', 'DynVersion', ),
+ BasePeer::TYPE_COLNAME => array (DynaformPeer::DYN_UID, DynaformPeer::PRO_UID, DynaformPeer::DYN_TYPE, DynaformPeer::DYN_FILENAME, DynaformPeer::DYN_CONTENT, DynaformPeer::DYN_VERSION, ),
+ BasePeer::TYPE_FIELDNAME => array ('DYN_UID', 'PRO_UID', 'DYN_TYPE', 'DYN_FILENAME', 'DYN_CONTENT', 'DYN_VERSION', ),
+ BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, )
);
/**
@@ -70,10 +73,10 @@ abstract class BaseDynaformPeer
* e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
*/
private static $fieldKeys = array (
- BasePeer::TYPE_PHPNAME => array ('DynUid' => 0, 'ProUid' => 1, 'DynType' => 2, 'DynFilename' => 3, 'DynContent' => 4, ),
- BasePeer::TYPE_COLNAME => array (DynaformPeer::DYN_UID => 0, DynaformPeer::PRO_UID => 1, DynaformPeer::DYN_TYPE => 2, DynaformPeer::DYN_FILENAME => 3, DynaformPeer::DYN_CONTENT => 4, ),
- BasePeer::TYPE_FIELDNAME => array ('DYN_UID' => 0, 'PRO_UID' => 1, 'DYN_TYPE' => 2, 'DYN_FILENAME' => 3, 'DYN_CONTENT' => 4, ),
- BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, )
+ BasePeer::TYPE_PHPNAME => array ('DynUid' => 0, 'ProUid' => 1, 'DynType' => 2, 'DynFilename' => 3, 'DynContent' => 4, 'DynVersion' => 5, ),
+ BasePeer::TYPE_COLNAME => array (DynaformPeer::DYN_UID => 0, DynaformPeer::PRO_UID => 1, DynaformPeer::DYN_TYPE => 2, DynaformPeer::DYN_FILENAME => 3, DynaformPeer::DYN_CONTENT => 4, DynaformPeer::DYN_VERSION => 5, ),
+ BasePeer::TYPE_FIELDNAME => array ('DYN_UID' => 0, 'PRO_UID' => 1, 'DYN_TYPE' => 2, 'DYN_FILENAME' => 3, 'DYN_CONTENT' => 4, 'DYN_VERSION' => 5, ),
+ BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, )
);
/**
@@ -184,6 +187,8 @@ abstract class BaseDynaformPeer
$criteria->addSelectColumn(DynaformPeer::DYN_CONTENT);
+ $criteria->addSelectColumn(DynaformPeer::DYN_VERSION);
+
}
const COUNT = 'COUNT(DYNAFORM.DYN_UID)';
diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml
index 9f2de434a..06019600a 100755
--- a/workflow/engine/config/schema.xml
+++ b/workflow/engine/config/schema.xml
@@ -459,6 +459,7 @@
+
diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php b/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php
index 753790aef..70f1b9f15 100644
--- a/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php
+++ b/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php
@@ -9,7 +9,8 @@ class DynaForm
"DYN_TITLE" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "dynaFormTitle"),
"DYN_DESCRIPTION" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "dynaFormDescription"),
"DYN_TYPE" => array("type" => "string", "required" => true, "empty" => false, "defaultValues" => array("xmlform", "grid"), "fieldNameAux" => "dynaFormType"),
- "DYN_CONTENT" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "dynaFormContent")
+ "DYN_CONTENT" => array("type" => "string", "required" => false, "empty" => true, "defaultValues" => array(), "fieldNameAux" => "dynaFormContent"),
+ "DYN_VERSION" => array("type" => "int", "required" => false, "empty" => false, "defaultValues" => array(), "fieldNameAux" => "dynaFormVersion")
);
private $formatFieldNameInUppercase = true;
@@ -909,6 +910,7 @@ class DynaForm
$criteria->addAsColumn("DYN_DESCRIPTION", "CD.CON_VALUE");
$criteria->addSelectColumn(\DynaformPeer::DYN_TYPE);
$criteria->addSelectColumn(\DynaformPeer::DYN_CONTENT);
+ $criteria->addSelectColumn(\DynaformPeer::DYN_VERSION);
$criteria->addAlias("CT", \ContentPeer::TABLE_NAME);
$criteria->addAlias("CD", \ContentPeer::TABLE_NAME);
@@ -956,7 +958,8 @@ class DynaForm
$this->getFieldNameByFormatFieldName("DYN_TITLE") => $record["DYN_TITLE"],
$this->getFieldNameByFormatFieldName("DYN_DESCRIPTION") => $record["DYN_DESCRIPTION"] . "",
$this->getFieldNameByFormatFieldName("DYN_TYPE") => $record["DYN_TYPE"] . "",
- $this->getFieldNameByFormatFieldName("DYN_CONTENT") => $record["DYN_CONTENT"] . ""
+ $this->getFieldNameByFormatFieldName("DYN_CONTENT") => $record["DYN_CONTENT"] . "",
+ $this->getFieldNameByFormatFieldName("DYN_VERSION") => $record["DYN_VERSION"] . ""
);
} catch (\Exception $e) {
throw $e;