addColumn(new Column(Enum::OPTION_NAME));
$this->addColumn(new Column('status'));
$this->addActionButton(AddOption::class);
$this->addActionButton(OptionDetails::class);
}
public function loadData()
{
$packageManager = new PackageManager();
$config = $packageManager->getPackageConfiguration(PackageConfiguration::getPackageName());
$optionsList = $config->{Enum::CONFIGURABLE_OPTIONS};
$product = new Product($this->getRequestValue('id'));
foreach ($optionsList as $key => $option)
{
$exists = $product->doesConfigurableOptionExist($option['optionname']);
$optionsList[$key]['exists'] = $exists;
$optionsList[$key]['gid'] = $product->getOptionGroupId($option['optionname']);
$optionsList[$key]['status'] = $exists ? '' . $this->translate('active') . ''
: '' . $this->translate('inactive') . '';
}
$dataProvieder = new ArrayDataProvider();
$dataProvieder->setData($optionsList);
$this->setDataProvider($dataProvieder);
}
protected function translate($phrase)
{
$this->loadLang();
return $this->lang->absoluteTranslate($this->id, 'status', $phrase);
}
}