Example #1
0
 /**
  * Finds and saves the current issue's tags
  * @return Issue
  */
 function saveTags()
 {
     $tag = new \Model\Issue\Tag();
     $issue_id = $this->get("id");
     $str = $this->get("description");
     $count = preg_match_all("/(?<=\\W#|^#)[a-z][a-z0-9_-]*[a-z0-9]+(?=\\W|\$)/i", $str, $matches);
     $tag->deleteByIssueId($issue_id);
     if ($count) {
         foreach ($matches[0] as $match) {
             $tag->reset();
             $tag->tag = str_replace("_", "-", $match);
             $tag->issue_id = $issue_id;
             $tag->save();
         }
     }
     return $this;
 }
Example #2
0
 /**
  * Finds and saves the current issue's tags
  * @return Issue
  */
 function saveTags()
 {
     $tag = new \Model\Issue\Tag();
     $issue_id = $this->id;
     $str = $this->description;
     $count = preg_match_all("/(?<=[^a-z\\/&]#|^#)[a-z][a-z0-9_-]*[a-z0-9]+(?=[^a-z\\/]|\$)/i", $str, $matches);
     if ($issue_id) {
         $tag->deleteByIssueId($issue_id);
     }
     if ($count) {
         foreach ($matches[0] as $match) {
             $tag->reset();
             $tag->tag = preg_replace("/[_-]+/", "-", ltrim($match, "#"));
             $tag->issue_id = $issue_id;
             $tag->save();
         }
     }
     return $this;
 }