Beispiel #1
0
 /**
  * Delete tag link
  *
  * @param	integer	$tag_id
  * @return	boolean	true on success or false on fail
  */
 function delete_tag_link($tag_id)
 {
     if (!vivvo_hooks_manager::call('tag_deleteLink', array(&$tag_id))) {
         return vivvo_hooks_manager::get_status();
     }
     $sm = vivvo_lite_site::get_instance();
     if ($sm->user && $sm->user->can('ARTICLE_TAG')) {
         $articles_tag_list = new ArticlesTags_list();
         $article_tag = $articles_tag_list->get_articles_tags_by_id($tag_id);
         $system_tag = $article_tag->get_tags_group_id() > 0;
         if ($system_tag && $sm->user->can('MANAGE_TAGS') || !$system_tag && $article_tag->user_id == $sm->user->get_id()) {
             $this->_post_master->set_data_object($article_tag);
             if ($this->_post_master->sql_delete()) {
                 if (!$system_tag) {
                     $tags_normal = new Tags_list();
                     $tags_normal->get_orphan_tags();
                     $tags_normal->sql_delete_list($this->_post_master);
                 }
                 return true;
             } else {
                 $this->set_error_code(2407);
                 return false;
             }
         } else {
             $this->set_error_code(2408);
             return false;
         }
     } else {
         $this->set_error_code(2409);
         return false;
     }
 }