ullright taggable analysis

1) What's in use @ ullright-propel

 

  • wiki-search: doesn't use taggable plugin. searches in "duplicate_tags_for_propel_search"
  • wiki-update:
    • $ullwiki->setTags(strtolower($this->getRequestParameter('tags')));
    • $ullwiki->setDuplicateTagsForPropelSearch(strtolower($this->getRequestParameter('tags')));
  • flow-tabular(=list)
    • $c = TagPeer::getTaggedWithCriteria('UllFlowDoc', $tags, $c);
    • search:
      • $cton_tags = $c->getNewCriterion(UllFlowDocPeer::DUPLICATE_TAGS_FOR_PROPEL_SEARCH, $search_word_first, Criteria::LIKE);
  • flow-delete:
    • $doc->removeAllTags();
  • fieldHandlerTags
    • $tags_pop = TagPeer::getPopulars();
          sfLoader::loadHelpers(array('Tags'));
          $return .= '<br />' . __('Popular tags') . ':';
          $return .= tag_cloud($tags_pop, 'addTag("%s", "' . $options['id'] . '")', array('link_function' => 'link_to_function'));

 

2) blueprint / specification

  • delete: cascade to delete tags
  • select should use join to use only one query
  • should use only one general tag2model table to allow doing statistics over tags in general (most used tag in all models)