diff --git a/application/ui.linksdirectwidget.class.inc.php b/application/ui.linksdirectwidget.class.inc.php
index 619958abe..3cb885759 100644
--- a/application/ui.linksdirectwidget.class.inc.php
+++ b/application/ui.linksdirectwidget.class.inc.php
@@ -474,6 +474,33 @@ HTML
}
return $oPage->GetTableRow($aRow, $aAttribs);
}
+
+ /**
+ * @param WebPage $oPage
+ * @param $sRealClass
+ * @param $aValues
+ * @param int $iTempId
+ *
+ * @return array
+ */
+ public function GetFormRow($oPage, $sRealClass, $aValues, $iTempId)
+ {
+ if ($sRealClass == '')
+ {
+ $sRealClass = $this->sLinkedClass;
+ }
+ $oLinkObj = new $sRealClass();
+ $oLinkObj->UpdateObjectFromPostedForm($this->sInputid);
+
+ $aAttribs = $this->GetTableConfig();
+ $aRow = array();
+ $aRow[] = '';
+ foreach($this->aZlist as $sLinkedAttCode)
+ {
+ $aRow[] = $oLinkObj->GetAsHTML($sLinkedAttCode);
+ }
+ return $aRow;
+ }
/**
* Initializes the default search parameters based on 1) a 'current' object and 2) the silos defined by the context
diff --git a/js/linksdirectwidget.js b/js/linksdirectwidget.js
index 60f6b85b5..af3b637b2 100644
--- a/js/linksdirectwidget.js
+++ b/js/linksdirectwidget.js
@@ -484,9 +484,9 @@ $(function()
this.indicator.html('
');
$.post(this.options.submit_to, oParams, function(data){
- me.datatable.find('tbody').append(data);
+ // From data variable we get data entry and insert the first (and only) one
+ me.datatable.DataTable().row.add(data.data[0]).draw();
$('#datatable_'+me.id+' .dataTables_empty').hide();
- //$('#linkedset_'+me.id+' .listResults tbody').append(data);
me._updateTable();
me.indicator.html('');
diff --git a/pages/ajax.render.php b/pages/ajax.render.php
index 5585f0005..92a294296 100644
--- a/pages/ajax.render.php
+++ b/pages/ajax.render.php
@@ -224,7 +224,7 @@ try
// ui.linksdirectwidget
case 'getLinksetRow':
- $oPage->SetContentType('text/html');
+ $oPage = new JsonPage();
$sClass = utils::ReadParam('class', '', false, 'class');
$sRealClass = utils::ReadParam('real_class', '', false, 'class');
$sAttCode = utils::ReadParam('att_code', '');
@@ -233,7 +233,7 @@ try
$aValues = utils::ReadParam('values', array(), false, 'raw_data');
$oPage->SetContentType('text/html');
$oWidget = new UILinksWidgetDirect($sClass, $sAttCode, $iInputId);
- $oPage->add($oWidget->GetRow($oPage, $sRealClass, $aValues, -$iTempId));
+ $oPage->AddData($oWidget->GetFormRow($oPage, $sRealClass, $aValues, -$iTempId));
break;
// ui.linksdirectwidget