/**
 * Get allowed no. of posts
 * Use this filter
 * @param type $user_id
 * @return type 
 */
function buddyblog_get_allowed_no_of_posts($user_id = false)
{
    if (!$user_id) {
        $user_id = bp_displayed_user_id();
    }
    //filter on this hook to change the no. of posts allowed
    return apply_filters('buddyblog_allowed_posts_count', buddyblog_get_option('max_allowed_posts'), $user_id);
    //by default no. posts allowed
}
/**
 * Get the link for editing this Post
 * @param type $id
 * @param type $label
 * @return type 
 */
function buddyblog_get_edit_link($id = 0, $label = 'Edit')
{
    if (!buddyblog_get_option('allow_edit')) {
        return '';
    }
    $url = buddyblog_get_edit_url($id);
    if (!$url) {
        return '';
    }
    return "<a href='{$url}'>{$label}</a>";
}
Beispiel #3
0
/**
 * Can the user delete this post
 * 
 * @param type $post_id
 * @param type $user_id
 * @return bool
 */
function buddyblog_user_can_delete($post_id, $user_id = false)
{
    if (!$post_id && in_the_loop()) {
        $post_id = get_the_ID();
    }
    if (!$post_id || !is_user_logged_in()) {
        return false;
    }
    if (is_super_admin()) {
        return true;
    } elseif (!buddyblog_get_option('allow_delete')) {
        //if deleting post is disabled
        return false;
    }
    if (!$user_id) {
        $user_id = get_current_user_id();
    }
    $post = get_post($post_id);
    if ($post->post_author == $user_id) {
        return true;
    }
    return false;
}
Beispiel #4
0
/**
 * Should we show the single post on profile
 * 
 * @return type 
 */
function buddyblog_show_posts_on_profile($post)
{
    return apply_filters('buddyblog_show_posts_on_profile', buddyblog_get_option('show_posts_on_profile'), $post);
}
Beispiel #5
0
 /**
  * register post form for Posting/editing
  * @return type 
  */
 public function register_form()
 {
     //make sure the Front end simple post plugin is active
     if (!function_exists('bp_new_simple_blog_post_form')) {
         return;
     }
     $post_status = buddyblog_get_option('post_status');
     $user_id = get_current_user_id();
     if (!buddyblog_user_can_post($user_id)) {
         $post_status = 'draft';
     }
     $settings = array('post_type' => buddyblog_get_posttype(), 'post_status' => $post_status, 'comment_status' => buddyblog_get_option('comment_status'), 'show_comment_option' => buddyblog_get_option('show_comment_option'), 'custom_field_title' => '', 'custom_fields' => array('_is_buddyblog_post' => array('type' => 'hidden', 'label' => '', 'default' => 1)), 'upload_count' => 0, 'has_post_thumbnail' => 1, 'current_user_can_post' => current_user_can(buddyblog_get_option('post_cap')));
     if (buddyblog_get_option('enable_taxonomy')) {
         $taxonomies = array();
         $tax = buddyblog_get_option('allowed_taxonomies');
         if (!empty($tax)) {
             foreach ((array) $tax as $tax_name) {
                 $view = 'checkbox';
                 //is_taxonomy_hierarchical($tax_name);
                 $taxonomies[$tax_name] = array('taxonomy' => $tax_name, 'view_type' => 'checkbox');
             }
         }
         if (!empty($taxonomies)) {
             $settings['tax'] = $taxonomies;
         }
     }
     //use it to add extra fields or filter the post type etc
     $settings = apply_filters('buddyblog_post_form_settings', $settings);
     bp_new_simple_blog_post_form('buddyblog-user-posts', $settings);
     // the blog form
 }