diff --git a/Block/Adminhtml/Form/Field/VendorMapping.php b/Block/Adminhtml/Form/Field/VendorMapping.php
index 35e3782..32abffb 100644
--- a/Block/Adminhtml/Form/Field/VendorMapping.php
+++ b/Block/Adminhtml/Form/Field/VendorMapping.php
@@ -6,6 +6,17 @@ use Magento\Framework\DataObject;
class VendorMapping extends AbstractFieldArray
{
+ /**
+ * Initialise form fields
+ *
+ * @return void
+ */
+ protected function _construct()
+ {
+ parent::_construct();
+ $this->setTemplate('Magento_Config::system/config/form/field/array.phtml');
+ }
+
/**
* Prepare rendering the new field by adding all the needed columns
*/
@@ -16,17 +27,38 @@ class VendorMapping extends AbstractFieldArray
'class' => 'required-entry',
'style' => 'width:200px'
]);
-
+
$this->addColumn('note', [
'label' => __('Note'),
'class' => 'required-entry',
'style' => 'width:400px'
]);
-
+
$this->_addAfter = false;
$this->_addButtonLabel = __('Add Vendor Note');
}
+ /**
+ * Obtain existing data from form element
+ *
+ * Each row will be instance of Varien_Object
+ *
+ * @return array
+ */
+ public function getArrayRows()
+ {
+ $result = [];
+ /** @var DataObject $row */
+ foreach (parent::getArrayRows() as $key => $row) {
+ // Ensure row IDs are prefixed with a non-numeric character
+ if (is_numeric($key)) {
+ $key = 'row_' . $key;
+ }
+ $result[$key] = $row;
+ }
+ return $result;
+ }
+
/**
* Prepare existing row data object
*
diff --git a/composer.json b/composer.json
index e16c5b6..7c52dc4 100644
--- a/composer.json
+++ b/composer.json
@@ -1,5 +1,5 @@
{
- "name": "shopkeeper/vendornotes",
+ "name": "shopkeeper/module-vendor-notes",
"description": "Magento 2 module that adds vendor notes to orders",
"type": "magento2-module",
"license": "MIT",