Exemplo n.º 1
1
function bplike_activity_update_button()
{
    $liked_count = 0;
    if (is_user_logged_in() && bp_get_activity_type() !== 'activity_liked') {
        if (bp_activity_get_meta(bp_get_activity_id(), 'liked_count', true)) {
            $users_who_like = array_keys(bp_activity_get_meta(bp_get_activity_id(), 'liked_count', true));
            $liked_count = count($users_who_like);
        }
        if (!bp_like_is_liked(bp_get_activity_id(), 'activity_update', get_current_user_id())) {
            ?>
            <a href="#" class="button bp-primary-action like" id="like-activity-<?php 
            echo bp_get_activity_id();
            ?>
" title="<?php 
            echo bp_like_get_text('like_this_item');
            ?>
">
                <?php 
            echo bp_like_get_text('like');
            if ($liked_count) {
                echo ' <span>' . $liked_count . '</span>';
            }
            ?>
            </a>
        <?php 
        } else {
            ?>
            <a href="#" class="button bp-primary-action unlike" id="unlike-activity-<?php 
            echo bp_get_activity_id();
            ?>
" title="<?php 
            echo bp_like_get_text('unlike_this_item');
            ?>
">
                <?php 
            echo bp_like_get_text('unlike');
            if ($liked_count) {
                echo '<span>' . $liked_count . '</span>';
            }
            ?>
            </a>
            <?php 
        }
        // Checking if there are users who like item.
        if (isset($users_who_like)) {
            view_who_likes(bp_get_activity_id(), 'activity_update');
        }
    }
}
/**
 * format callback
 *
 * @package Rendez Vous
 * @subpackage Activity
 *
 * @since Rendez Vous (1.0.0)
 */
function rendez_vous_format_activity_action($action, $activity)
{
    $rendez_vous_id = $activity->item_id;
    $organizer = $activity->secondary_item_id;
    if ($activity->component != buddypress()->rendez_vous->id) {
        $rendez_vous_id = $activity->secondary_item_id;
        $organizer = $activity->user_id;
    }
    $rendez_vous_url = rendez_vous_get_single_link($rendez_vous_id, $organizer);
    $rendez_vous_title = bp_activity_get_meta($activity->id, 'rendez_vous_title');
    // Should only be empty at the time of rendez vous creation
    if (empty($rendez_vous_title)) {
        $rendez_vous = rendez_vous_get_item($rendez_vous_id);
        if (is_a($rendez_vous, 'Rendez_Vous_Item')) {
            $rendez_vous_title = $rendez_vous->title;
            bp_activity_update_meta($activity->id, 'rendez_vous_title', $rendez_vous_title);
        }
    }
    $rendez_vous_link = '<a href="' . esc_url($rendez_vous_url) . '">' . esc_html($rendez_vous_title) . '</a>';
    $user_link = bp_core_get_userlink($activity->user_id);
    $action_part = __('scheduled a new', 'rendez-vous');
    if ('updated_rendez_vous' == $activity->type) {
        $action_part = __('updated a', 'rendez-vous');
    }
    $action = sprintf(__('%1$s %2$s rendez-vous, %3$s', 'rendez-vous'), $user_link, $action_part, $rendez_vous_link);
    return apply_filters('rendez_vous_format_activity_action', $action, $activity);
}
 /**
  * @ticket BP4804
  * @group delete_activity_meta_entries
  * @group activitymeta
  */
 public function test_delete_activity_meta_entries()
 {
     $activity = $this->factory->activity->create(array('type' => 'activity_update'));
     bp_activity_update_meta($activity, 'Paul', 'is cool');
     BP_Activity_Activity::delete_activity_meta_entries($activity);
     $meta = bp_activity_get_meta($activity, 'Paul');
     $this->assertSame('', $meta);
 }
Exemplo n.º 4
0
 function vortex_get_meta($post_id, $key, $value)
 {
     $bbp = vortex_is_buddypress($post_id);
     if ($bbp) {
         return bp_activity_get_meta($post_id, $key, $value);
     } else {
         return get_post_meta($post_id, $key, $value);
     }
 }
function bp_media_activity_permalink_filter($link, $activity_obj = null)
{
    if ($activity_obj != null && 'media_upload' == $activity_obj->type) {
        add_shortcode('bp_media_url', 'bp_media_shortcode_url');
        $link = do_shortcode($activity_obj->primary_link);
        remove_shortcode('bp_media_url');
    }
    if ($activity_obj != null && 'activity_comment' == $activity_obj->type) {
        $parent = bp_activity_get_meta($activity_obj->item_id, 'bp_media_parent_post');
        if ($parent) {
            $parent = new BP_Media_Host_Wordpress($parent);
            $link = $parent->get_url();
        }
    }
    return $link;
}
 /**
  * Processes images-type shortcode and create proper markup.
  * Relies on ./forms/images_tag_template.php for markup rendering.
  */
 function process_images_tag($atts, $content)
 {
     $images = explode("\n", trim(strip_tags($content)));
     //return var_export($images,1);
     $activity_id = bp_get_activity_id();
     global $blog_id;
     $activity_blog_id = $blog_id;
     $use_thickbox = defined('BPFB_USE_THICKBOX') ? esc_attr(BPFB_USE_THICKBOX) : 'thickbox';
     if ($activity_id) {
         $activity_blog_id = bp_activity_get_meta($activity_id, 'bpfb_blog_id');
     }
     ob_start();
     @(include BPFB_PLUGIN_BASE_DIR . '/lib/forms/images_tag_template.php');
     $out = ob_get_clean();
     return $out;
 }
Exemplo n.º 7
0
 /**
  * @group activity_action
  * @group bp_blogs_format_activity_action_new_blog_post
  */
 public function test_bp_blogs_format_activity_action_new_blog_post_ms_rootblog()
 {
     if (!is_multisite()) {
         return;
     }
     $u = $this->factory->user->create();
     $p = $this->factory->post->create(array('post_author' => $u));
     $a = $this->factory->activity->create(array('component' => buddypress()->blogs->id, 'type' => 'new_blog_post', 'user_id' => $u, 'item_id' => 1, 'secondary_item_id' => $p));
     $a_obj = new BP_Activity_Activity($a);
     $user_link = bp_core_get_userlink($u);
     $blog_url = get_home_url();
     $post_url = add_query_arg('p', $p, trailingslashit($blog_url));
     $post_title = bp_activity_get_meta($a, 'post_title');
     $post_link = '<a href="' . $post_url . '">' . $post_title . '</a>';
     $expected = sprintf('%s wrote a new post, %s, on the site %s', $user_link, $post_link, '<a href="' . $blog_url . '">' . bp_blogs_get_blogmeta($a_obj->item_id, 'name') . '</a>');
     $this->assertSame($expected, $a_obj->action);
 }
Exemplo n.º 8
0
 /**
  * @group bp_activity_update_meta_cache
  */
 public function test_bp_activity_update_meta_cache()
 {
     $a1 = $this->factory->activity->create();
     $a2 = $this->factory->activity->create();
     // Set up some data
     bp_activity_update_meta($a1, 'foo', 'bar');
     bp_activity_update_meta($a1, 'Boone', 'Rules');
     bp_activity_update_meta($a2, 'foo', 'baz');
     bp_activity_update_meta($a2, 'BuddyPress', 'Is Cool');
     // Prime the cache for $a1
     bp_activity_get_meta($a1, 'foo');
     // Ensure an empty cache for $a2
     wp_cache_delete($a2, 'activity_meta');
     bp_activity_update_meta_cache(array($a1, $a2));
     $expected = array($a1 => array('foo' => array('bar'), 'Boone' => array('Rules')), $a2 => array('foo' => array('baz'), 'BuddyPress' => array('Is Cool')));
     $found = array($a1 => wp_cache_get($a1, 'activity_meta'), $a2 => wp_cache_get($a2, 'activity_meta'));
     $this->assertEquals($expected, $found);
 }
Exemplo n.º 9
0
function bplike_activity_comment_button()
{
    $liked_count = 0;
    if (is_user_logged_in()) {
        if (bp_activity_get_meta(bp_get_activity_comment_id(), 'liked_count', true)) {
            $users_who_like = array_keys(bp_activity_get_meta(bp_get_activity_comment_id(), 'liked_count', true));
            $liked_count = count($users_who_like);
        }
        if (!bp_like_is_liked(bp_get_activity_comment_id(), 'activity_comment', get_current_user_id())) {
            ?>
            <a href="#" class="acomment-reply bp-primary-action like" id="like-activity-<?php 
            echo bp_get_activity_comment_id();
            ?>
" title="<?php 
            echo bp_like_get_text('like_this_item');
            ?>
"><?php 
            echo bp_like_get_text('like');
            if ($liked_count) {
                echo ' <span><small>' . $liked_count . '</small></span>';
            }
            ?>
</a>
        <?php 
        } else {
            ?>
            <a href="#" class="acomment-reply bp-primary-action unlike" id="unlike-activity-<?php 
            echo bp_get_activity_comment_id();
            ?>
" title="<?php 
            echo bp_like_get_text('unlike_this_item');
            ?>
"><?php 
            echo bp_like_get_text('unlike');
            if ($liked_count) {
                echo ' <span><small>' . $liked_count . '</small></span>';
            }
            ?>
</a>
            <?php 
        }
    }
}
Exemplo n.º 10
0
function select_cover_for_group($activity_id)
{
    global $bp;
    $group_id = $bp->groups->current_group->id;
    $activity_id = $_POST['activity_id'];
    $attachment_id = bp_activity_get_meta($activity_id, 'all_bp_cover_group', true);
    $fileurl = wp_get_attachment_image_src($attachment_id, 'full');
    groups_update_groupmeta($group_id, 'bp_cover_group', $fileurl[0]);
    groups_update_groupmeta($group_id, 'bp_cover_group_position', 0);
    /*groups_record_activity( array(
               'action'            => sprintf( __( '%s changed their cover group %s', 'bp-cover' ),
    		                       bp_core_get_userlink( $bp->loggedin_user->id ),								
                                      '<a href="' . bp_get_group_permalink( $group ) . '">' . esc_attr( $group->name ) . '</a>') ,
               'type'              => 'cover_changed',
    		'item_id' => $group_id,
    		'content' =>bp_cover_group_get_image_scr() ,
               'item_id'           => $group_id,
           ) );*/
}
Exemplo n.º 11
0
 /**
  * Processes images-type shortcode and create proper markup.
  * Relies on ./forms/images_tag_template.php for markup rendering.
  */
 function process_images_tag($atts, $content)
 {
     $images = self::extract_images($content);
     //return var_export($images,1);
     $activity_id = bp_get_activity_id();
     global $blog_id;
     $activity_blog_id = $blog_id;
     $use_thickbox = defined('BPFB_USE_THICKBOX') ? esc_attr(BPFB_USE_THICKBOX) : 'thickbox';
     if ($activity_id) {
         $activity_blog_id = bp_activity_get_meta($activity_id, 'bpfb_blog_id');
     }
     $template = locate_template(array('images_tag_template.php'));
     if (empty($template)) {
         $template = BPFB_PLUGIN_BASE_DIR . '/lib/forms/images_tag_template.php';
     }
     ob_start();
     @(include $template);
     $out = ob_get_clean();
     return $out;
 }
Exemplo n.º 12
0
/**
 * Attach to the activities template the reshare datas
 *
 * @package BP Reshare
 * @since    1.0
 *
 * @global $activities_template
 * @param  boolean $has_activities
 * @param  BP_Activity_Template  $activities_template
 * @param  array   $template_args
 * @uses   buddyreshare_can_reshare() to check if the activity can be reshared
 * @uses   bp_activity_get_meta() to fecth the number of reshares of this activity
 * @uses   buddyreshare_get_class() to eventually add the reshared class
 * @return boolean $has_activities
 */
function buddyreshare_extend_activities_template($has_activities = false, $activities_template = null, $template_args = array())
{
    global $activities_template;
    if (empty($has_activities) || empty($activities_template)) {
        return $has_activities;
    }
    foreach ($activities_template->activities as $activity) {
        $activity->reshares = new StdClass();
        $activity->reshares->can_reshare = buddyreshare_can_reshare($activity);
        /* Reshare count */
        $activity_first_id = $activity->id;
        if ('reshare_update' == $activity->type) {
            $activity_first_id = $activity->secondary_item_id;
        }
        $activity->reshares->activity_id = $activity_first_id;
        $rs_count = bp_activity_get_meta($activity_first_id, 'reshared_count');
        $rs_count = !empty($rs_count) ? $rs_count : 0;
        $activity->reshares->count = $rs_count;
        $activity->reshares->css_class = buddyreshare_get_class($activity, $activity_first_id);
    }
    return $has_activities;
}
Exemplo n.º 13
0
function bp_checkins_attach_thumb($activity_content)
{
    $activity_id = bp_get_activity_id();
    $pictures = bp_activity_get_meta($activity_id, 'bpci_picture');
    if ($pictures) {
        foreach ($pictures as $pic) {
            if ($pic->width == 100) {
                $src["100"] = $pic->url;
            }
            if ($pic->width == 960) {
                $src["960"] = $pic->url;
            }
        }
        if ($src) {
            $image = '<a href="' . esc_attr($src["960"]) . '" class="bp-ci-zoompic align-left"><img src="' . esc_attr($src["100"]) . '" width="100px" alt="' . __('Thumbnail', 'bp-checkins') . '" class="align-left thumbnail" /></a>';
            return $image . $activity_content;
        } else {
            return $activity_content;
        }
    } else {
        return $activity_content;
    }
}
Exemplo n.º 14
0
/**
 * Formats single activity comment entries to use the blog comment action.
 *
 * This is only done if the activity comment is associated with a blog comment.
 *
 * @since BuddyPress (2.0.1)
 *
 * @param string $retval The activity action
 * @param BP_Activity_Activity $activity
 * @return string
 */
function bp_blogs_activity_comment_single_action( $retval, $activity ) {
	if ( 'activity_comment' !== $activity->type ) {
		return $retval;
	}

	$blog_comment_id = bp_activity_get_meta( $activity->id, 'bp_blogs_post_comment_id' );

	if ( ! empty( $blog_comment_id ) ) {
		// fetch the parent blog post activity item
		$parent_blog_post_activity = new BP_Activity_Activity( $activity->item_id );

		// fake a 'new_blog_comment' activity object
		$object = $activity;

		// override 'item_id' to use blog ID
		$object->item_id = $parent_blog_post_activity->item_id;

		// override 'secondary_item_id' to use comment ID
		$object->secondary_item_id = $blog_comment_id;

		// now format the activity action using the 'new_blog_comment' action callback
		$retval = bp_blogs_format_activity_action_new_blog_comment( '', $object );
	}

	return $retval;
}
Exemplo n.º 15
0
 function migrate_single_media($result, $album = false)
 {
     $blog_id = get_current_blog_id();
     $old = $result;
     if (function_exists('bp_core_get_table_prefix')) {
         $bp_prefix = bp_core_get_table_prefix();
     } else {
         $bp_prefix = '';
     }
     global $wpdb;
     if (false !== $album && !is_object($result)) {
         $id = $wpdb->get_var($wpdb->prepare("select ID from {$this->bmp_table} where media_id = %d", $result));
         if (null == $id) {
             $sql = "select\n                        a.post_id as 'post_id',\n                        a.meta_value as 'privacy',\n                        b.meta_value as 'context_id',\n                        c.meta_value as 'activity_id',\n                        p.post_type,\n                        p.post_mime_type,\n                        p.post_author as 'media_author',\n                        p.post_title as 'media_title',\n                        p.post_parent as 'parent'\n                    from\n                        {$wpdb->postmeta} a\n                            left join\n                        {$wpdb->postmeta} b ON ((a.post_id = b.post_id)\n                            and (b.meta_key = 'bp-media-key'))\n                            left join\n                        {$wpdb->postmeta} c ON (a.post_id = c.post_id)\n                            and (c.meta_key = 'bp_media_child_activity')\n                            left join\n                        {$wpdb->posts} p ON (a.post_id = p.ID)\n                    where\n                        a.post_id = %d and (NOT p.ID IS NULL)\n                            and a.meta_key = 'bp_media_privacy'";
             $result = $wpdb->get_row($wpdb->prepare($sql, $result));
         } else {
             return $id;
         }
     }
     if (!isset($result) || !isset($result->post_id)) {
         return $old;
     }
     $media_id = $result->post_id;
     if (intval($result->context_id) > 0) {
         $media_context = 'profile';
         $prefix = 'users/' . abs(intval($result->context_id));
     } else {
         $media_context = 'group';
         $prefix = bp_get_groups_root_slug() . abs(intval($result->context_id));
     }
     $old_type = '';
     if ('attachment' != $result->post_type) {
         $media_type = 'album';
     } else {
         $mime_type = strtolower($result->post_mime_type);
         $old_type = '';
         if (0 === strpos($mime_type, 'image')) {
             $media_type = 'photo';
             $old_type = 'photos';
         } else {
             if (0 === strpos($mime_type, 'audio')) {
                 $media_type = 'music';
                 $old_type = 'music';
             } else {
                 if (0 === strpos($mime_type, 'video')) {
                     $media_type = 'video';
                     $old_type = 'videos';
                 } else {
                     $media_type = 'other';
                 }
             }
         }
     }
     $activity_data = $wpdb->get_row($wpdb->prepare("select * from {$bp_prefix}bp_activity where id= %d", $result->activity_id));
     if ('album' != $media_type) {
         $this->importmedia($media_id, $prefix);
     }
     if ($this->table_exists($bp_prefix . 'bp_activity') && class_exists('BP_Activity_Activity')) {
         $bp_activity = new BP_Activity_Activity();
         $activity_sql = $wpdb->prepare("SELECT\n                            *\n                        FROM\n                            {$bp_prefix}bp_activity\n                        where\n                                        id in (select distinct\n                                    a.meta_value\n                                from\n                                    {$wpdb->postmeta} a\n                                        left join\n                                    {$wpdb->posts} p ON (a.post_id = p.ID)\n                                where\n                                    (NOT p.ID IS NULL) and p.ID = %d\n                and a.meta_key = 'bp_media_child_activity')", $media_id);
         $all_activity = $wpdb->get_results($activity_sql);
         remove_all_actions('wp_insert_comment');
         foreach ($all_activity as $activity) {
             $comments = $bp_activity->get_activity_comments($activity->id, $activity->mptt_left, $activity->mptt_right);
             $exclude = get_post_meta($media_id, 'rtmedia_imported_activity', true);
             if (!is_array($exclude)) {
                 $exclude = array();
             }
             if ($comments) {
                 $this->insert_comment($media_id, $comments, $exclude);
             }
         }
     }
     if (0 !== intval($result->parent)) {
         $album_id = $this->migrate_single_media($result->parent, true);
     } else {
         $album_id = 0;
     }
     if (function_exists('bp_activity_get_meta')) {
         $likes = bp_activity_get_meta($result->activity_id, 'favorite_count');
     } else {
         $likes = 0;
     }
     $wpdb->insert($this->bmp_table, array('blog_id' => $blog_id, 'media_id' => $media_id, 'media_type' => $media_type, 'context' => $media_context, 'context_id' => abs(intval($result->context_id)), 'activity_id' => $result->activity_id, 'privacy' => intval($result->privacy) * 10, 'media_author' => $result->media_author, 'media_title' => $result->media_title, 'album_id' => $album_id, 'likes' => $likes), array('%d', '%d', '%s', '%s', '%d', '%d', '%d', '%d', '%s', '%d', '%d'));
     $last_id = $wpdb->insert_id;
     // Photo tag meta migration
     //$photo_tag_meta = get_post_meta($media_id, "bp-media-user-tags", true);
     //        if($photo_tag_meta && !empty($photo_tag_meta)){
     //            $wpdb->insert(
     //                $wpdb->prefix . "rt_rtm_media_meta", array(
     //                    'media_id' => $media_id,
     //                    'meta_key' => "user-tags",
     //                    "meta_value" =>  maybe_serialize($photo_tag_meta)), array('%d', '%s', '%s'));
     //        }
     if ('album' != $media_type && function_exists('bp_core_get_user_domain') && $activity_data) {
         if (function_exists('bp_core_get_table_prefix')) {
             $bp_prefix = bp_core_get_table_prefix();
         } else {
             $bp_prefix = '';
         }
         $activity_data->old_primary_link = $activity_data->primary_link;
         $parent_link = get_rtmedia_user_link($activity_data->user_id);
         $activity_data->primary_link = $parent_link . RTMEDIA_MEDIA_SLUG . '/' . $last_id;
         $this->search_and_replace($activity_data->old_primary_link, $activity_data->primary_link);
         $activity_data->action = str_replace($activity_data->old_primary_link, $activity_data->primary_link, $activity_data->action);
         $activity_data->content = str_replace($activity_data->old_primary_link, $activity_data->primary_link, $activity_data->content);
         global $last_baseurl, $last_newurl;
         $replace_img = $last_newurl;
         //$last_baseurl . "rtMedia/$prefix/";
         if (false === strpos($activity_data->content, $replace_img)) {
             $activity_data->content = str_replace($last_baseurl, $replace_img, $activity_data->content);
         }
         global $wpdb;
         $wpdb->update($bp_prefix . 'bp_activity', array('primary_link' => $activity_data->primary_link, 'action' => $activity_data->action, 'content' => $activity_data->content), array('id' => $activity_data->id));
     } else {
         if ('group' == $media_context) {
             $activity_data->old_primary_link = $activity_data->primary_link;
             $parent_link = get_rtmedia_group_link(abs(intval($result->context_id)));
             $parent_link = trailingslashit($parent_link);
             $activity_data->primary_link = trailingslashit($parent_link . RTMEDIA_MEDIA_SLUG . '/' . $last_id);
             $this->search_and_replace($activity_data->old_primary_link, $activity_data->primary_link);
         } else {
             $activity_data->old_primary_link = $activity_data->primary_link;
             $parent_link = get_rtmedia_user_link($activity_data->user_id);
             $parent_link = trailingslashit($parent_link);
             $activity_data->primary_link = trailingslashit($parent_link . RTMEDIA_MEDIA_SLUG . '/' . $last_id);
             $this->search_and_replace($activity_data->old_primary_link, $activity_data->primary_link);
         }
     }
     if ('' != $old_type) {
         if ('group' == $media_context) {
             $parent_link = get_rtmedia_group_link(abs(intval($result->context_id)));
             $parent_link = trailingslashit($parent_link);
             $this->search_and_replace(trailingslashit($parent_link . $old_type . '/' . $media_id), trailingslashit($parent_link . RTMEDIA_MEDIA_SLUG . '/' . $last_id));
         } else {
             $parent_link = get_rtmedia_user_link($activity_data->user_id);
             $parent_link = trailingslashit($parent_link);
             $this->search_and_replace(trailingslashit($parent_link . $old_type . '/' . $media_id), trailingslashit($parent_link . RTMEDIA_MEDIA_SLUG . '/' . $last_id));
         }
     }
     return $last_id;
 }
Exemplo n.º 16
0
function bpgr_get_review_rating($review_id = false)
{
    global $activities_template;
    if (!$review_id) {
        $rating = isset($activities_template->activity->rating) ? $activities_template->activity->rating : '';
    } else {
        $rating = bp_activity_get_meta($review_id, 'bpgr_rating');
    }
    return apply_filters('bpgr_review_rating', $rating, $review_id);
}
 /**
  * Get an activity item's Akismet history
  *
  * @param int $activity_id Activity item ID
  * @return array The activity item's Akismet history
  * @since BuddyPress (1.6)
  */
 public function get_activity_history($activity_id = 0)
 {
     $history = bp_activity_get_meta($activity_id, '_bp_akismet_history');
     if ($history === false) {
         $history = array();
     }
     // Sort it by the time recorded
     usort($history, 'akismet_cmp_time');
     return $history;
 }
Exemplo n.º 18
0
/**
 * Fetch an activity item's cached embeds.
 *
 * Used during {@link BP_Embed::parse_oembed()} via {@link bp_activity_embed()}.
 *
 * @since BuddyPress (1.5.0)
 *
 * @see BP_Embed::parse_oembed()
 * @uses bp_activity_get_meta()
 *
 * @param string $cache An empty string passed by BP_Embed::parse_oembed() for
 *        functions like this one to filter.
 * @param int $id The ID of the activity item.
 * @param string $cachekey The cache key generated in BP_Embed::parse_oembed().
 * @return mixed The cached embeds for this activity item.
 */
function bp_embed_activity_cache($cache, $id, $cachekey)
{
    return bp_activity_get_meta($id, $cachekey);
}
Exemplo n.º 19
0
 /**
  * Update entity custom fields
  */
 public function updateCustomFields($identifier, $likes, $dislikes, $url = '')
 {
     global $wpdb;
     $likebtn_entities = _likebtn_get_entities(true, true);
     preg_match("/^(.*)_(\\d+)\$/", $identifier, $identifier_parts);
     list($entity_name, $entity_id) = $this->parseIdentifier($identifier);
     $likes_minus_dislikes = null;
     if ($likes !== null && $dislikes !== null) {
         $likes_minus_dislikes = $likes - $dislikes;
     }
     $entity_updated = false;
     if (array_key_exists($entity_name, $likebtn_entities) && is_numeric($entity_id)) {
         // set Custom fields
         switch ($entity_name) {
             case LIKEBTN_ENTITY_COMMENT:
                 // Comment
                 $comment = get_comment($entity_id);
                 // check if post exists and is not revision
                 if (!empty($comment) && $comment->comment_type != 'revision') {
                     if ($likes !== null) {
                         if (count(get_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES)) > 1) {
                             delete_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES);
                             add_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes, true);
                         } else {
                             update_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes);
                         }
                     }
                     if ($dislikes !== null) {
                         if (count(get_comment_meta($entity_id, LIKEBTN_META_KEY_DISLIKES)) > 1) {
                             delete_comment_meta($entity_id, LIKEBTN_META_KEY_DISLIKES);
                             add_comment_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes, true);
                         } else {
                             update_comment_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes);
                         }
                     }
                     if ($likes_minus_dislikes !== null) {
                         if (count(get_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES)) > 1) {
                             delete_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES);
                             add_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes, true);
                         } else {
                             update_comment_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes);
                         }
                     }
                     $entity_updated = true;
                 }
                 break;
             case LIKEBTN_ENTITY_BP_ACTIVITY_POST:
             case LIKEBTN_ENTITY_BP_ACTIVITY_UPDATE:
             case LIKEBTN_ENTITY_BP_ACTIVITY_COMMENT:
             case LIKEBTN_ENTITY_BP_ACTIVITY_TOPIC:
                 if (!_likebtn_is_bp_active()) {
                     break;
                 }
                 // BuddyPress Activity
                 /*$bp_activity_list = bp_activity_get(array(
                       'show_hidden'  => true,
                       'spam'  => 'all',
                       //'in'           => array((int)$entity_id)
                   ));*/
                 $bp_activity = $wpdb->get_row("\n                        SELECT id\n                        FROM " . $wpdb->prefix . "bp_activity\n                        WHERE id = {$entity_id}\n                    ");
                 if (!empty($bp_activity)) {
                     if ($likes !== null) {
                         if (count(bp_activity_get_meta($entity_id, LIKEBTN_META_KEY_LIKES)) > 1) {
                             bp_activity_delete_meta($entity_id, LIKEBTN_META_KEY_LIKES);
                             bp_activity_add_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes, true);
                         } else {
                             bp_activity_update_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes);
                         }
                     }
                     if ($dislikes !== null) {
                         if (count(bp_activity_get_meta($entity_id, LIKEBTN_META_KEY_DISLIKES)) > 1) {
                             bp_activity_delete_meta($entity_id, LIKEBTN_META_KEY_DISLIKES);
                             bp_activity_add_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes, true);
                         } else {
                             bp_activity_update_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes);
                         }
                     }
                     if ($likes_minus_dislikes !== null) {
                         if (count(bp_activity_get_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES)) > 1) {
                             bp_activity_delete_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES);
                             bp_activity_add_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes, true);
                         } else {
                             bp_activity_update_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes);
                         }
                     }
                     $entity_updated = true;
                 }
                 break;
             case LIKEBTN_ENTITY_BP_MEMBER:
                 // BuddyPress Member Profile
                 $entity_updated = _likebtn_save_bp_member_votes($entity_id, $likes, $dislikes, $likes_minus_dislikes);
                 break;
             case LIKEBTN_ENTITY_BBP_USER:
                 // bbPress Member Profile
                 $entity_updated = _likebtn_save_user_votes($entity_id, $likes, $dislikes, $likes_minus_dislikes);
                 break;
             case LIKEBTN_ENTITY_USER:
                 // BuddyPress Member Profile
                 $entity_updated = _likebtn_save_bp_member_votes($entity_id, $likes, $dislikes, $likes_minus_dislikes);
                 // General user and bbPress Member Profile
                 $entity_updated = $entity_updated || _likebtn_save_user_votes($entity_id, $likes, $dislikes, $likes_minus_dislikes);
                 break;
             default:
                 // Post
                 $post = get_post($entity_id);
                 // check if post exists and is not revision
                 if (!empty($post) && !empty($post->post_type) && $post->post_type != 'revision') {
                     if ($likes !== null) {
                         if (count(get_post_meta($entity_id, LIKEBTN_META_KEY_LIKES)) > 1) {
                             delete_post_meta($entity_id, LIKEBTN_META_KEY_LIKES);
                             add_post_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes, true);
                         } else {
                             update_post_meta($entity_id, LIKEBTN_META_KEY_LIKES, $likes);
                         }
                     }
                     if ($dislikes !== null) {
                         if (count(get_post_meta($entity_id, LIKEBTN_META_KEY_DISLIKES)) > 1) {
                             delete_post_meta($entity_id, LIKEBTN_META_KEY_DISLIKES);
                             add_post_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes, true);
                         } else {
                             update_post_meta($entity_id, LIKEBTN_META_KEY_DISLIKES, $dislikes);
                         }
                     }
                     if ($likes_minus_dislikes !== null) {
                         if (count(get_post_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES)) > 1) {
                             delete_post_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES);
                             add_post_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes, true);
                         } else {
                             update_post_meta($entity_id, LIKEBTN_META_KEY_LIKES_MINUS_DISLIKES, $likes_minus_dislikes);
                         }
                     }
                     $entity_updated = true;
                 }
                 break;
         }
     }
     // Check custom item
     $item_db = $wpdb->get_row($wpdb->prepare("SELECT likes, dislikes\n                FROM " . $wpdb->prefix . LIKEBTN_TABLE_ITEM . "\n                WHERE identifier = %s", $identifier));
     // Custom identifier
     if ($item_db || !$entity_updated) {
         if ($likes === null || $dislikes === null) {
             if ($item_db) {
                 if ($likes === null) {
                     $likes = $item_db->likes;
                 }
                 if ($dislikes === null) {
                     $dislikes = $item_db->dislikes;
                 }
             }
         }
         if ($likes !== null && $dislikes !== null) {
             $likes_minus_dislikes = $likes - $dislikes;
         }
         $item_data = array('identifier' => $identifier, 'likes' => $likes, 'dislikes' => $dislikes, 'likes_minus_dislikes' => $likes_minus_dislikes, 'identifier_hash' => md5($identifier));
         if ($url) {
             $item_data['url'] = $url;
         }
         $update_where = array('identifier' => $item_data['identifier']);
         $update_result = $wpdb->update($wpdb->prefix . LIKEBTN_TABLE_ITEM, $item_data, $update_where);
         if ($update_result) {
             $entity_updated = true;
         } else {
             $insert_result = $wpdb->insert($wpdb->prefix . LIKEBTN_TABLE_ITEM, $item_data);
             if ($insert_result) {
                 $entity_updated = true;
             }
         }
     }
     return $entity_updated;
 }
/**
 * Formats single activity comment entries to use the blog comment action.
 *
 * This is only done if the activity comment is associated with a blog comment.
 *
 * @since 2.0.1
 *
 * @param string               $retval   The activity action.
 * @param BP_Activity_Activity $activity Activity object.
 * @return string
 */
function bp_blogs_activity_comment_single_action($retval, $activity)
{
    if ('activity_comment' !== $activity->type) {
        return $retval;
    }
    if (bp_disable_blogforum_comments()) {
        return $retval;
    }
    $parent_activity = new BP_Activity_Activity($activity->item_id);
    if (!isset($parent_activity->type)) {
        return $retval;
    }
    $post_type = bp_activity_post_type_get_tracking_arg($parent_activity->type, 'post_type');
    if (!$post_type) {
        return $retval;
    }
    $blog_comment_id = bp_activity_get_meta($activity->id, "bp_blogs_{$post_type}_comment_id");
    if (!empty($blog_comment_id)) {
        $bp = buddypress();
        // Check if a comment action id is set for the parent activity
        $comment_action_id = bp_activity_post_type_get_tracking_arg($parent_activity->type, 'comment_action_id');
        // Use the action string callback for the activity type
        if (!empty($comment_action_id)) {
            // Fake a 'new_{post_type}_comment' by cloning the activity object.
            $object = clone $activity;
            // Set the type of the activity to be a comment about a post type
            $object->type = $comment_action_id;
            // Use the blog ID as the item_id.
            $object->item_id = $parent_activity->item_id;
            // Use comment ID as the secondary_item_id.
            $object->secondary_item_id = $blog_comment_id;
            // Get the format callback for this activity comment
            $format_callback = bp_activity_post_type_get_tracking_arg($comment_action_id, 'format_callback');
            // now format the activity action using the 'new_{post_type}_comment' action callback
            if (is_callable($format_callback)) {
                $retval = call_user_func_array($format_callback, array('', $object));
            }
        }
    }
    return $retval;
}
Exemplo n.º 21
0
/**
 * This filters pics content when off, when reading an item it will convert it to the image filename
 *
 * @since BuddyBoss 2.0
 */
function buddyboss_pics_off_read_content_filter($filter)
{
    global $bboss_pics_img_size, $activities_template;
    $curr_id = $activities_template->current_activity;
    $act_id = $activities_template->activities[$curr_id]->id;
    $bbpics_aid = bp_activity_get_meta($act_id, 'bboss_pics_aid');
    $image = wp_get_attachment_image_src($bbpics_aid, 'full');
    if ($image !== false && is_array($image) && count($image) > 2) {
        $src = $image[0];
        $w = $image[1];
        $h = $image[2];
        $filter .= '<a href="' . $image[0] . '" target="_blank">' . basename($image[0]) . '</a>';
    }
    return $filter;
}
/**
 * Deletes associated media entry and its files upon deletion of an activity.
 * 
 * @since BP Media 2.0
 */
function bp_media_delete_activity_handler($activity_id, $user)
{
    global $bp_media_count;
    bp_media_init_count(bp_loggedin_user_id());
    $post_id = bp_activity_get_meta($activity_id, 'bp_media_parent_post');
    $type = get_post_meta($post_id, 'bp_media_type', true);
    switch ($type) {
        case 'image':
            $bp_media_count['images'] = intval($bp_media_count['images']) - 1;
            break;
        case 'video':
            $bp_media_count['videos'] = intval($bp_media_count['videos']) - 1;
            break;
        case 'audio':
            $bp_media_count['audio'] = intval($bp_media_count['audio']) - 1;
            break;
    }
    $attachment_id = get_post_meta($post_id, 'bp_media_child_attachment', true);
    wp_delete_attachment($attachment_id, true);
    wp_delete_post($post_id, true);
    bp_update_user_meta(bp_loggedin_user_id(), 'bp_media_count', $bp_media_count);
}
Exemplo n.º 23
0
function dwqa_replace_activity_meta()
{
    global $activities_template;
    $blog_url = bp_blogs_get_blogmeta($activity->item_id, 'url');
    $blog_name = bp_blogs_get_blogmeta($activity->item_id, 'name');
    if (empty($blog_url) || empty($blog_name)) {
        $blog_url = get_home_url($activity->item_id);
        $blog_name = get_blog_option($activity->item_id, 'blogname');
        bp_blogs_update_blogmeta($activity->item_id, 'url', $blog_url);
        bp_blogs_update_blogmeta($activity->item_id, 'name', $blog_name);
    }
    $post_url = add_query_arg('p', $activities_template->activity->secondary_item_id, trailingslashit($blog_url));
    $post_title = bp_activity_get_meta($activities_template->activity->id, 'post_title');
    if (empty($post_title)) {
        $post = get_post($activities_template->activity->secondary_item_id);
        if (is_a($post, 'WP_Post')) {
            $post_title = $post->post_title;
            bp_activity_update_meta($activities_template->activity->id, 'post_title', $post_title);
        }
    }
    $post_link = '<a href="' . $post_url . '">' . $post_title . '</a>';
    $user_link = bp_core_get_userlink($activities_template->activity->user_id);
    if ($activities_template->activity->type == 'new_question') {
        $action = sprintf(__('%1$s asked a new question: %2$s', 'dwqa'), $user_link, $post_link);
    } elseif ($activities_template->activity->type == 'new_answer') {
        $action = sprintf(__('%1$s answered the question: %2$s', 'dwqa'), $user_link, $post_link);
    } elseif ($activities_template->activity->type == 'comment_question') {
        $action = sprintf(__('%1$s commented on the question: %2$s', 'dwqa'), $user_link, $post_link);
    } elseif ($activities_template->activity->type == 'comment_answer') {
        $action = sprintf(__('%1$s commented on the answer at: %2$s', 'dwqa'), $user_link, $post_link);
    } else {
        $action = $activities_template->activity->action;
    }
    // Strip any legacy time since placeholders from BP 1.0-1.1
    $content = str_replace('<span class="time-since">%s</span>', '', $content);
    // Insert the time since.
    $time_since = apply_filters_ref_array('bp_activity_time_since', array('<span class="time-since">' . bp_core_time_since($activities_template->activity->date_recorded) . '</span>', &$activities_template->activity));
    // Insert the permalink
    if (!bp_is_single_activity()) {
        $content = apply_filters_ref_array('bp_activity_permalink', array(sprintf('%1$s <a href="%2$s" class="view activity-time-since" title="%3$s">%4$s</a>', $content, bp_activity_get_permalink($activities_template->activity->id, $activities_template->activity), esc_attr__('View Discussion', 'buddypress'), $time_since), &$activities_template->activity));
    } else {
        $content .= str_pad($time_since, strlen($time_since) + 2, ' ', STR_PAD_BOTH);
    }
    echo $action . ' ' . $content;
    // echo 'abc';
    // echo $activities_template->activity->content;
}
Exemplo n.º 24
0
function bp_like_get_some_likes($number = '')
{
    // $number is max likers it will output. Currently only takes 2.
    // need to decide if checking number of likes here, or in another fucntion, or in call to here..
    $bp_like_id = bp_get_activity_id();
    $users_who_like = array_keys(bp_activity_get_meta($bp_like_id, 'liked_count', true));
    if (count($users_who_like) == 0) {
        // if no user likes this.
    } elseif (count($users_who_like) == 1) {
        // If only one person likes the current item.
        $string = '<p class="users-who-like" id="users-who-like-';
        $string .= $bp_like_id;
        $string .= '">%s liked this.</p>';
        $one = bp_core_get_userlink($users_who_like[0]);
        printf($string, $one);
    } elseif (count($users_who_like) == 2) {
        // If two people like the current item.
        $string = '<p class="users-who-like" id="users-who-like-';
        $string .= $bp_like_id;
        $string .= '">%s and %s liked this.</p>';
        $one = bp_core_get_userlink($users_who_like[0]);
        $two = bp_core_get_userlink($users_who_like[1]);
        printf($string, $one, $two);
    } elseif (count($users_who_like) > 2) {
        $string = '<p class="users-who-like" id="users-who-like-';
        $string .= $bp_like_id;
        $string .= '">%s, %s and %s others liked this.</p>';
        $others = count($users_who_like);
        // output last two people to like (2 at end of array)
        $one = bp_core_get_userlink($users_who_like[0]);
        $two = bp_core_get_userlink($users_who_like[1]);
        // $users_who_like will always be greater than 2.
        if ($users_who_like == 3) {
            $others = $others - 1;
        } else {
            $others = $others - 2;
        }
        printf($string, $one, $two, $others);
    }
}
Exemplo n.º 25
0
function update_activity_after_thumb_set($id)
{
    $model = new RTMediaModel();
    $mediaObj = new RTMediaMedia();
    $media = $model->get(array('id' => $id));
    $privacy = $media[0]->privacy;
    $activity_id = rtmedia_activity_id($id);
    if (!empty($activity_id)) {
        $same_medias = $mediaObj->model->get(array('activity_id' => $activity_id));
        $update_activity_media = array();
        foreach ($same_medias as $a_media) {
            $update_activity_media[] = $a_media->id;
        }
        $objActivity = new RTMediaActivity($update_activity_media, $privacy, false);
        global $wpdb, $bp;
        $activity_old_content = bp_activity_get_meta($activity_id, "bp_old_activity_content");
        $activity_text = bp_activity_get_meta($activity_id, "bp_activity_text");
        if ($activity_old_content == "") {
            // get old activity content and save in activity meta
            $activity_get = bp_activity_get_specific(array('activity_ids' => $activity_id));
            $activity = $activity_get['activities'][0];
            $activity_body = $activity->content;
            bp_activity_update_meta($activity_id, "bp_old_activity_content", $activity_body);
            //extract activity text from old content
            $activity_text = strip_tags($activity_body, '<span>');
            $activity_text = explode("</span>", $activity_text);
            $activity_text = strip_tags($activity_text[0]);
            bp_activity_update_meta($activity_id, "bp_activity_text", $activity_text);
        }
        $activity_text = bp_activity_get_meta($activity_id, "bp_activity_text");
        $objActivity->activity_text = $activity_text;
        $wpdb->update($bp->activity->table_name, array("type" => "rtmedia_update", "content" => $objActivity->create_activity_html()), array("id" => $activity_id));
    }
}
Exemplo n.º 26
0
 public function post_to_marker($post)
 {
     $body = '<p>' . $post->content . '</p>';
     $avatar = bp_core_fetch_avatar(array('object' => 'user', 'item_id' => $post->user_id, 'width' => 32, 'height' => 32, 'html' => false));
     return array('title' => $post->action, 'body' => $body, 'icon' => $avatar, 'position' => array(bp_activity_get_meta($post->id, '_agm_latitude', true), bp_activity_get_meta($post->id, '_agm_longitude', true)), 'disposition' => 'activity_marker');
 }
Exemplo n.º 27
0
/**
 * Returns the reshared css class in case an activity has been reshared by the user
 *
 * @package BP Reshare
 * @since    1.0
 * 
 * @param  BP_Activity_Activity $activity the activity object
 * @param  integer $activity_first_id the reshared activity id
 * @uses   bp_loggedin_user_id() to get current user id
 * @uses   bp_activity_get_meta() to get some meta infos about the activity
 * @uses   bp_activity_get_specific() to fetch the specific activity
 * @return string the reshared css class
 */
function buddyreshare_get_class($activity = null, $activity_first_id = 0)
{
    if (empty($activity)) {
        return false;
    }
    if (bp_loggedin_user_id() == $activity->user_id) {
        return 'reshared';
    }
    $reshared_by = bp_activity_get_meta($activity_first_id, 'reshared_by');
    if (is_array($reshared_by) && in_array(bp_loggedin_user_id(), $reshared_by)) {
        return 'reshared';
    }
    // is the loggedin_user the original author ?
    $originally_shared = bp_activity_get_specific(array('activity_ids' => $activity_first_id));
    if ($originally_shared['activities'][0]->user_id == bp_loggedin_user_id()) {
        return 'reshared';
    }
}
    /**
     *
     */
    function add_sticky_icon()
    {
        if (bp_is_group()) {
            if (bp_group_is_admin()) {
                $nonce = wp_create_nonce('pin-activity-nonce');
                $sticky = bp_activity_get_meta(bp_get_activity_id(), 'rw_sticky_activity');
                $title = __('Pin activity', RW_Sticky_Activity::$textdomain);
                $class = "sa-button-pin notpinned";
                if ($sticky == 1) {
                    $title = __('Unpin activity', RW_Sticky_Activity::$textdomain);
                    $class = "sa-button-unpin  pinned";
                }
                ?>
                <a href="" class="fa fa-map-marker <?php 
                echo $class;
                ?>
" title="<?php 
                echo $title;
                ?>
" data-post-nonces="<?php 
                echo $nonce;
                ?>
" data-post-id="<?php 
                echo bp_get_activity_id();
                ?>
"></a>
                <?php 
            }
        }
    }
Exemplo n.º 29
0
 function save_single_edit()
 {
     add_filter('intermediate_image_sizes_advanced', array($this, 'filter_image_sizes_details'));
     global $rtmedia_query;
     $nonce = $_POST['rtmedia_media_nonce'];
     if (wp_verify_nonce($nonce, 'rtmedia_' . $rtmedia_query->action_query->id)) {
         /*
          * Need this file in order to use `wp_generate_attachment_metadata` function
          */
         require_once ABSPATH . 'wp-admin/includes/image.php';
         do_action('rtmedia_before_update_media', $rtmedia_query->action_query->id);
         $data_array = array('media_title', 'description', 'privacy');
         //for medias except album and playlist, if album_is is found, then update album_id for the media also
         if (isset($_POST['album_id']) && $_POST['album_id'] != '') {
             $data_array[] = 'album_id';
         }
         $data = rtmedia_sanitize_object($_POST, $data_array);
         $media = new RTMediaMedia();
         $image_path = get_attached_file($rtmedia_query->media[0]->media_id);
         if ($image_path && $rtmedia_query->media[0]->media_type == "photo") {
             $image_meta_data = wp_generate_attachment_metadata($rtmedia_query->media[0]->media_id, $image_path);
             wp_update_attachment_metadata($rtmedia_query->media[0]->media_id, $image_meta_data);
         }
         $state = $media->update($rtmedia_query->action_query->id, $data, $rtmedia_query->media[0]->media_id);
         if (isset($_POST['rtmedia-filepath-old'])) {
             $is_valid_url = preg_match("/\\b(?:(?:https?|ftp):\\/\\/|www\\.)[-a-z0-9+&@#\\/%?=~_|!:,.;]*[-a-z0-9+&@#\\/%=~_|]/i", $_POST['rtmedia-filepath-old']);
             if ($is_valid_url && function_exists('bp_is_active') && bp_is_active('activity')) {
                 $thumbnailinfo = wp_get_attachment_image_src($rtmedia_query->media[0]->media_id, 'rt_media_activity_image');
                 $activity_id = rtmedia_activity_id($rtmedia_query->media[0]->id);
                 if ($rtmedia_query->media[0]->media_id && !empty($activity_id)) {
                     global $wpdb, $bp;
                     if (!empty($bp->activity)) {
                         $related_media_data = $media->model->get(array('activity_id' => $activity_id));
                         $related_media = array();
                         foreach ($related_media_data as $activity_media) {
                             $related_media[] = $activity_media->id;
                         }
                         $activity_text = bp_activity_get_meta($activity_id, 'bp_activity_text');
                         $activity = new RTMediaActivity($related_media, 0, $activity_text);
                         $activity_content_new = $activity->create_activity_html();
                         // Replacing the filename with new effected filename
                         $activity_content = str_replace($_POST['rtmedia-filepath-old'], $thumbnailinfo[0], $activity_content_new);
                         $wpdb->update($bp->activity->table_name, array('content' => $activity_content), array('id' => $activity_id));
                     }
                 }
             }
         }
         $rtmedia_query->query(false);
         global $rtmedia_points_media_id;
         $rtmedia_points_media_id = $rtmedia_query->action_query->id;
         do_action('rtmedia_after_edit_media', $rtmedia_query->action_query->id, $state);
         //refresh
         $rtMediaNav = new RTMediaNav();
         if ($rtmedia_query->media[0]->context == "group") {
             $rtMediaNav->refresh_counts($rtmedia_query->media[0]->context_id, array("context" => $rtmedia_query->media[0]->context, 'context_id' => $rtmedia_query->media[0]->context_id));
         } else {
             $rtMediaNav->refresh_counts($rtmedia_query->media[0]->media_author, array("context" => "profile", 'media_author' => $rtmedia_query->media[0]->media_author));
         }
         $state = apply_filters('rtmedia_single_edit_state', $state);
         if ($state !== false) {
             add_action("rtmedia_before_template_load", array(&$this, "media_update_success_messege"));
         } else {
             add_action("rtmedia_before_template_load", array(&$this, "media_update_success_error"));
         }
     } else {
         _e('Ooops !!! Invalid access. No nonce was found !!', 'buddypress-media');
     }
     remove_filter('intermediate_image_sizes_advanced', array($this, 'filter_image_sizes_details'));
 }
 /**
  * Update `bp_latest_update` user meta with lasted public update.
  *
  * @param $content
  * @param $user_id
  * @param $activity_id
  */
 function manage_user_last_activity_update($content, $user_id, $activity_id)
 {
     global $wpdb, $bp;
     // do not proceed if not allowed
     if (!apply_filters('rtm_manage_user_last_activity_update', true, $activity_id)) {
         return;
     }
     $rtm_activity_model = new RTMediaActivityModel();
     $rtm_activity_obj = $rtm_activity_model->get(array('activity_id' => $activity_id));
     if (!empty($rtm_activity_obj)) {
         if (isset($rtm_activity_obj[0]->privacy) && $rtm_activity_obj[0]->privacy > 0) {
             $get_columns = array('activity_id' => array('compare' => '<', 'value' => $activity_id), 'user_id' => $user_id, 'privacy' => array('compare' => '<=', 'value' => 0));
             // get user's latest public activity update
             $new_last_activity_obj = $rtm_activity_model->get($get_columns, 0, 1);
             if (!empty($new_last_activity_obj)) {
                 // latest public activity id
                 $public_activity_id = $new_last_activity_obj[0]->activity_id;
                 // latest public activity content
                 $activity_content = bp_activity_get_meta($public_activity_id, 'bp_activity_text');
                 if (empty($activity_content)) {
                     $activity_content = $wpdb->get_var("SELECT content FROM {$bp->activity->table_name} WHERE id = {$public_activity_id}");
                 }
                 $activity_content = apply_filters('bp_activity_latest_update_content', $activity_content, $activity_content);
                 // update user's latest update
                 bp_update_user_meta($user_id, 'bp_latest_update', array('id' => $public_activity_id, 'content' => $activity_content));
             }
         }
     }
 }