BUG 000 Improvements in the additional fields in the daslhets

This commit is contained in:
Julio Cesar Laura
2012-03-01 16:27:26 -04:00
parent 46040dca93
commit 81699e9320
2 changed files with 35 additions and 15 deletions

View File

@@ -114,7 +114,7 @@ class Dashboard extends Controller {
if ($data->DAS_INS_UID != '') { if ($data->DAS_INS_UID != '') {
$this->pmDashlet->setup($data->DAS_INS_UID); $this->pmDashlet->setup($data->DAS_INS_UID);
$this->setJSVar('dashletInstance', $this->pmDashlet->getDashletInstance()); $this->setJSVar('dashletInstance', $this->pmDashlet->getDashletInstance());
$this->setJSVar('additionaFields', PMDashlet::getAdditionalFields(get_class($this->pmDashlet->getDashletObject()))); $this->setJSVar('additionalFields', PMDashlet::getAdditionalFields(get_class($this->pmDashlet->getDashletObject())));
} }
else { else {
$dashletInstance = new stdclass(); $dashletInstance = new stdclass();
@@ -122,7 +122,7 @@ class Dashboard extends Controller {
$dashlet = new Dashlet(); $dashlet = new Dashlet();
$dashletFields = $dashlet->load($dashletInstance->DAS_UID); $dashletFields = $dashlet->load($dashletInstance->DAS_UID);
$this->setJSVar('dashletInstance', $dashletInstance); $this->setJSVar('dashletInstance', $dashletInstance);
$this->setJSVar('additionaFields', PMDashlet::getAdditionalFields($dashletFields['DAS_CLASS'])); $this->setJSVar('additionalFields', PMDashlet::getAdditionalFields($dashletFields['DAS_CLASS']));
} }
G::RenderPage('publish', 'extJs'); G::RenderPage('publish', 'extJs');
return null; return null;
@@ -175,7 +175,7 @@ class Dashboard extends Controller {
$dashlet = new Dashlet(); $dashlet = new Dashlet();
$dashletFields = $dashlet->load($data->DAS_UID); $dashletFields = $dashlet->load($data->DAS_UID);
if (!is_null($dashletFields)) { if (!is_null($dashletFields)) {
$result->additionaFields = PMDashlet::getAdditionalFields($dashletFields['DAS_CLASS']); $result->additionalFields = PMDashlet::getAdditionalFields($dashletFields['DAS_CLASS']);
} }
else { else {
throw new Exception('Dashlet "' . $data->DAS_UID . '" not exists.'); throw new Exception('Dashlet "' . $data->DAS_UID . '" not exists.');

View File

@@ -79,29 +79,29 @@ Ext.onReady(function() {
params: {DAS_UID: this.getValue()}, params: {DAS_UID: this.getValue()},
success: function (result, request) { success: function (result, request) {
var response = Ext.util.JSON.decode(result.responseText) var response = Ext.util.JSON.decode(result.responseText)
additionaFields = response.additionaFields; additionalFields = response.additionalFields;
dashletInstanceFrm.remove('additional'); dashletInstanceFrm.remove('additional');
if (additionaFields.length > 0) { if (additionalFields.length > 0) {
for (var i = 0; i < additionaFields.length; i++) { for (var i = 0; i < additionalFields.length; i++) {
for (var listener in additionaFields[i].listeners) { for (var listener in additionalFields[i].listeners) {
try { try {
eval('additionaFields[i].listeners.' + listener + ' = eval(additionaFields[i].listeners.' + listener + ');'); eval('additionalFields[i].listeners.' + listener + ' = eval(additionalFields[i].listeners.' + listener + ');');
} catch (e) {} } catch (e) {}
} }
} }
dashletInstanceFrm.add(new Ext.form.FieldSet({ dashletInstanceFrm.add(new Ext.form.FieldSet({
id: 'additional', id: 'additional',
title: 'Other', title: 'Other',
items: additionaFields items: additionalFields
})); }));
} }
dashletInstanceFrm.doLayout(false, true); dashletInstanceFrm.doLayout(false, true);
// Execute after render scripts // Execute after render scripts
if (additionaFields.length > 0) { if (additionalFields.length > 0) {
for (var i = 0; i < additionaFields.length; i++) { for (var i = 0; i < additionalFields.length; i++) {
if (typeof(additionaFields[i]._afterRender) != 'undefined') { if (typeof(additionalFields[i]._afterRender) != 'undefined') {
try { try {
eval(additionaFields[i]._afterRender); eval(additionalFields[i]._afterRender);
} catch (e) {} } catch (e) {}
} }
} }
@@ -161,11 +161,20 @@ Ext.onReady(function() {
}) })
]; ];
if (additionaFields.length > 0) { if (additionalFields.length > 0) {
if (additionalFields.length > 0) {
for (var i = 0; i < additionalFields.length; i++) {
for (var listener in additionalFields[i].listeners) {
try {
eval('additionalFields[i].listeners.' + listener + ' = eval(additionalFields[i].listeners.' + listener + ');');
} catch (e) {}
}
}
}
formFields.push(new Ext.form.FieldSet({ formFields.push(new Ext.form.FieldSet({
id: 'additional', id: 'additional',
title: 'Other', title: 'Other',
items: additionaFields items: additionalFields
})); }));
} }
@@ -230,4 +239,15 @@ Ext.onReady(function() {
// Render // Render
dashletInstanceFrm.render(document.body); dashletInstanceFrm.render(document.body);
// Execute after render scripts
if (additionalFields.length > 0) {
for (var i = 0; i < additionalFields.length; i++) {
if (typeof(additionalFields[i]._afterRender) != 'undefined') {
try {
eval(additionalFields[i]._afterRender);
} catch (e) {}
}
}
}
}); });