protected function _getItemValuesList($baseValues, $amountsKeys, $event = null) { $itemValues = array(); $salesHelper = Mage::helper('sales'); $position = 0; foreach ($baseValues as $key => $value) { $itemValues[$key] = array('code' => $key, 'name' => $salesHelper->__($value), 'description' => '', 'default' => true, 'position' => $position += 100, 'renderers' => array(999999 => 'customgrid/widget_grid_column_renderer_sales_items_sub_value_default')); if (in_array($key, $amountsKeys)) { $itemValues[$key]['value_align'] = 'right'; } // Also usable: "header_align" for header label alignment } if (!empty($event)) { $response = new Varien_Object(array('item_values' => $itemValues)); Mage::dispatchEvent($event, array('response' => $response)); $itemValues = $response->getItemValues(); } uasort($itemValues, array($this, '_sortItemValues')); foreach ($itemValues as $key => $value) { $itemValues[$key]['last'] = false; sort($itemValues[$key]['renderers'], SORT_NUMERIC); } if (!is_null($key)) { $itemValues[$key]['last'] = true; } return $itemValues; }