function _webform_analysis_productfield in Commerce Webform 8
Same name and namespace in other branches
- 7.2 productfield.inc \_webform_analysis_productfield()
- 7 productfield.inc \_webform_analysis_productfield()
Implements _webform_analysis_component().
File
- ./
productfield.inc, line 493
Code
function _webform_analysis_productfield($component, $sids = array(), $single = FALSE) {
$query = db_select('webform_submitted_data', 'wsd', array(
'fetch' => PDO::FETCH_ASSOC,
))
->fields('wsd', array(
'data',
))
->condition('nid', $component['nid'])
->condition('cid', $component['cid'])
->condition('data', '', '<>')
->groupBy('data');
if (count($sids)) {
$query
->condition('sid', $sids, 'IN');
}
$results = $query
->execute();
$rows = array();
foreach ($results as $result) {
$submission = json_decode($result['data']);
if (isset($component['extra']['items'][$submission->product_id])) {
$display_option = _webform_filter_xss($component['extra']['items'][$submission->product_id]['title']);
// Update the paid count.
$paid_display_option = !empty($submission->paid) ? 'Paid' : 'Unpaid';
if (isset($rows[$submission->product_id . '_' . $paid_display_option])) {
$rows[$submission->product_id . '_' . $paid_display_option]++;
}
else {
$rows[$submission->product_id . '_' . $paid_display_option] = array(
$display_option . ' (' . _webform_filter_xss(t($paid_display_option)) . ')',
1,
);
}
}
}
return $rows;
}