Save and load the additional fields for the dashlets
This commit is contained in:
@@ -16,6 +16,10 @@ require_once 'classes/model/om/BaseDashletInstance.php';
|
||||
*/
|
||||
class DashletInstance extends BaseDashletInstance {
|
||||
|
||||
private $validFields = array('DAS_INS_UID', 'DAS_UID', 'DAS_INS_TYPE', 'DAS_INS_CONTEXT_TIME', 'DAS_INS_START_DATE', 'DAS_INS_END_DATE', 'DAS_INS_OWNER_TYPE',
|
||||
'DAS_INS_OWNER_UID', 'DAS_INS_PROCESSES', 'DAS_INS_TASKS', ' DAS_INS_CREATE_DATE', 'DAS_INS_UPDATE_DATE', 'DAS_INS_STATUS',
|
||||
'pmos_generik', 'ys-admin-tabpanel', 'PHPSESSID');
|
||||
|
||||
public function load($dasInsUid) {
|
||||
try {
|
||||
$dashletInstance = DashletInstancePeer::retrieveByPK($dasInsUid);
|
||||
@@ -31,6 +35,19 @@ class DashletInstance extends BaseDashletInstance {
|
||||
}
|
||||
|
||||
public function createOrUpdate($data) {
|
||||
$additionalFields = array();
|
||||
foreach ($data as $field => $value) {
|
||||
if (!in_array($field, $this->validFields)) {
|
||||
$additionalFields[$field] = $value;
|
||||
unset($data[$field]);
|
||||
}
|
||||
}
|
||||
if (!empty($additionalFields)) {
|
||||
$data['DAS_INS_ADDITIONAL_PROPERTIES'] = serialize($additionalFields);
|
||||
}
|
||||
else {
|
||||
$data['DAS_INS_ADDITIONAL_PROPERTIES'] = '';
|
||||
}
|
||||
$connection = Propel::getConnection(DashletInstancePeer::DATABASE_NAME);
|
||||
try {
|
||||
if (!isset($data['DAS_INS_UID'])) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user