You are here

function flag_build_javascript_info in Flag 7.3

Same name and namespace in other branches
  1. 6.2 flag.module \flag_build_javascript_info()
  2. 7.2 flag.module \flag_build_javascript_info()

Builds the JavaScript structure describing the flagging operation.

1 call to flag_build_javascript_info()
flag_page in includes/flag.pages.inc
Menu callback for (un)flagging a node.

File

includes/flag.pages.inc, line 182
Menu callbacks for the Flag module.

Code

function flag_build_javascript_info($flag, $entity_id) {
  $errors = $flag
    ->get_errors();
  $info = array(
    'status' => TRUE,
    'newLink' => $flag
      ->theme($flag
      ->is_flagged($entity_id) ? 'unflag' : 'flag', $entity_id, array(
      'after_flagging' => TRUE,
      'errors' => $errors,
    )),
    // Further information for the benefit of custom JavaScript event handlers:
    'flagSuccess' => !$errors,
    'contentId' => $entity_id,
    'entityType' => $flag->entity_type,
    'flagName' => $flag->name,
    'flagStatus' => $flag
      ->is_flagged($entity_id) ? 'flagged' : 'unflagged',
  );
  drupal_alter('flag_javascript_info', $info, $flag);
  return $info;
}