protected function resolveTag($id, $bindingType, $collection, $key, $type, $humanName, $collectionName, $group, $category, $alternateTarget, $defaults)
{
if ($bindingType === 'variable') {
return $this->resolveVariableTag($id, $bindingType, $collection, $key, $type, $humanName, $collectionName, $group, $category, $alternateTarget, $defaults);
}
$tag = $this->tags[$id];
$tag['id'] = $id;
$tag['bindingType'] = $bindingType;
$tag['collection'] = $collection;
$tag['key'] = $key;
$tag['type'] = $type;
$tag['humanName'] = $humanName;
$tag['collectionName'] = $collectionName;
$tag['group'] = $group;
$tag['category'] = $category;
$tag['alternateTarget'] = $alternateTarget;
$tag['defaults'] = $defaults;
$tag['data'] = $this->TagManager->getInstanceForTag($tag);
$tag['cid'] = $tag['bindingType'] . $tag['data']->id;
// If it's global we need to differentiate it so the id
// from globals and fields don't collide
if (get_class($tag['data']) == 'DvsGlobalField') {
$tag['cid'] = $tag['bindingType'] . 'global' . $tag['data']->id;
}
$this->tags[$id] = $tag;
return $tag;
}