You are here

function contentanalysis_save_status in Content Analysis 8

Same name and namespace in other branches
  1. 6 contentanalysis.module \contentanalysis_save_status()
  2. 7 contentanalysis.module \contentanalysis_save_status()
1 call to contentanalysis_save_status()
contentanalysis_analyze_js in ./contentanalysis.module
Returns content analysis for AJAX calls

File

./contentanalysis.module, line 532

Code

function contentanalysis_save_status($analysis) {
  $aid = isset($analysis['#context']['aid']) ? $analysis['#context']['aid'] : NULL;
  if (!$aid) {
    return;
  }
  foreach ($analysis as $anid => $analysisi) {
    if (drupal_substr($anid, 0, 1) == '#' || !is_array($analysisi)) {
      continue;
    }
    if (isset($analysisi['#status']) && $analysisi['#status'] != 'status' || !empty($analysisi['#score'])) {
      $statusi = array(
        'error' => 0,
        'warning' => 1,
        'complete' => 2,
      );
      $fields = array(
        'status' => $analysisi['#status'],
        'statusi' => $statusi[$analysisi['#status']],
      );
      if (!empty($analysisi['#score'])) {
        $fields['score'] = $analysisi['#score'];
      }
      $keys = array(
        'aid' => $aid,
        'analyzer' => $anid,
      );
      $query = db_merge('contentanalysis_status')
        ->key($keys)
        ->fields($fields);
      $updated = $query
        ->execute();
    }
  }
}