public function addTagDef(TagDef $tag)
 {
     if (array_key_exists($tag->Id, $this->fields['TagDefs'])) {
         throw new SchemaException('Tag with id [' . $tag->Id . '] already exists in schema');
     }
     if ($tag->isTreeorigin()) {
         $this->fields['TreeOriginTagDef'] = $tag;
     }
     $this->fields['TagDefs'][$tag->Id] = $tag;
     return $this;
 }
Example #2
0
 public static function determineMatchPartial(TagDef $tagDef, $slug)
 {
     $matchPartial = clone $tagDef->getPartial();
     $value_options = $tagDef->ValueOptions;
     if ($value_options) {
         $value_multiple = $value_options->isMultiple();
         if (!$value_multiple) {
             $matchPartial->TagValue = '';
         }
     }
     if (!$tagDef->isMultiple()) {
         $matchPartial->TagSlug = '';
     } else {
         $matchPartial->TagSlug = $slug;
     }
     return $matchPartial;
 }