Hi,
This will indeed require custom code for now as this has not been implemented. I add this on our todo list.
The best would be to create a new mass action plugin:
And use as main function the function "onProcessOrderMassActionexportCsv", the current function for the default "export csv file" is :
function onProcessOrderMassActionexportCsv(&$elements,&$action,$k){
$formatExport = $action['formatExport']['format'];
$email = $action['formatExport']['email'];
$path = $action['formatExport']['path'];
if(!empty($path)){
$url = $this->massaction->setExportPaths($path);
}else{
$url = array('server'=>'','web'=>'');
ob_get_clean();
}
$app = JFactory::getApplication();
if($app->isAdmin() || (!$app->isAdmin() && !empty($path))){
$params = new stdClass();
$params->action['order']['order_id'] = 'order_id';
unset($action['formatExport']);
$params = $this->massaction->_displayResults('order',$elements,$action,$k);
$params->formatExport = $formatExport;
$params->path = $url['server'];
$params = $this->massaction->sortResult($params->table,$params);
$this->massaction->_exportCSV($params);
}
if(!empty($email) && !empty($path)){
$config = hikashop_config();
$mailClass = hikashop_get('class.mail');
$content = array('type' => 'csv_export');
$mail = $mailClass->get('massaction_notification',$content);
$mail->subject = JText::_('MASS_CSV_EMAIL_SUBJECT');
$mail->html = '1';
$csv = new stdClass();
$csv->name = basename($path);
$csv->filename = $url['server'];
$csv->url = $url['web'];
$mail->attachments = array($csv);
$mail->dst_name = '';
$mail->dst_email = explode(',',$email);
$mailClass->sendMail($mail);
}
}
As you can see we are calling functions from the mass action class, so you can handle the data instead of the call:
$this->massaction->_exportCSV($params);