public static function validate_tags(Module_Links $module, $arg) { $errors = array(); $new = 0; $arg = explode(',', trim($arg)); $taken = array(); $minlen = 3; $maxlen = $module->cfgMaxTagLen(); foreach ($arg as $tag) { $tag = trim($tag); if (strlen($tag) === 0) { continue; } if (false === GWF_LinksTag::getByName($tag)) { if (self::isValidTagName($tag, $minlen, $maxlen)) { $taken[] = $tag; $new++; } else { $errors[] = $module->lang('err_tag', array(GWF_HTML::display($tag), $minlen, $maxlen)); } } else { $taken[] = $tag; } } if (count($taken) === 0) { $errors[] = $module->lang('err_no_tag'); } $_POST['link_tags'] = implode(',', $taken); if (count($errors) === 0) { return false; } return implode('<br/>', $errors); }
public function insertTags(Module_Links $module) { $tags = $this->getTags(); foreach ($tags as $tag) { if ('' === ($tag = trim($tag))) { continue; } if (false === GWF_LinksTag::addTag($this, $tag)) { return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__)); } if (false === ($tagc = GWF_LinksTag::getByName($tag))) { return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__)); } if (false === GWF_LinksTagMap::addTag($this->getID(), $tagc->getID())) { return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__)); } } return false; }