get() public method

public get ( array $columns, mixed $offset = false, mixed $per_page = false, string $order_by = 'media_id desc', $count_flag = false ) : array
$columns array
$offset mixed
$per_page mixed
$order_by string
return array
Exemplo n.º 1
0
 function rtm_change_activity_privacy()
 {
     $data = $_POST;
     if (wp_verify_nonce($data['nonce'], 'rtmedia_activity_privacy_nonce')) {
         $rtm_activity_model = new RTMediaActivityModel();
         $is_ac_privacy_exist = $rtm_activity_model->check($data['activity_id']);
         $privacy = intval($data['privacy']);
         $activity_id = intval($data['activity_id']);
         if (!$is_ac_privacy_exist) {
             // Very first privacy entry for this activity
             $status = $rtm_activity_model->insert(array('privacy' => $privacy, 'activity_id' => $activity_id, 'user_id' => get_current_user_id()));
         } else {
             // Just update the existing value
             $status = $rtm_activity_model->update(array('privacy' => $privacy), array('activity_id' => $activity_id));
         }
         // update privacy of corresponding media
         $media_model = new RTMediaModel();
         $activity_media = $media_model->get(array('activity_id' => $activity_id));
         if (!empty($activity_media) && is_array($activity_media)) {
             foreach ($activity_media as $single_media) {
                 $where = array('id' => $single_media->id);
                 $columns = array('privacy' => $privacy);
                 // update media privacy
                 $media_model->update($columns, $where);
             }
         }
         if ($status === false) {
             $status = 'false';
         } else {
             $status = 'true';
         }
         echo $status;
         wp_die();
     }
 }
Exemplo n.º 2
0
 function create_activity_html()
 {
     $html = '';
     $html .= '<div class="rtmedia-activity-container">';
     if (!empty($this->activity_text)) {
         $html .= '<div class="rtmedia-activity-text">';
         $html .= $this->activity_text;
         $html .= '</div>';
     }
     global $rtmedia;
     if (isset($rtmedia->options['buddypress_limitOnActivity'])) {
         $limitActivityFeed = $rtmedia->options['buddypress_limitOnActivity'];
     } else {
         $limitActivityFeed = 0;
     }
     $mediaObj = new RTMediaModel();
     $media_details = $mediaObj->get(array('id' => $this->media));
     if (intval($limitActivityFeed) > 0) {
         $media_details = array_slice($media_details, 0, $limitActivityFeed, true);
     }
     $rtmedia_activity_ul_class = apply_filters('rtmedia_activity_ul_class', 'large-block-grid-3');
     $li_content = '';
     $count = 0;
     foreach ($media_details as $media) {
         $li_content .= '<li class="rtmedia-list-item media-type-' . $media->media_type . '">';
         if ('photo' == $media->media_type) {
             $li_content .= '<a href ="' . get_rtmedia_permalink($media->id) . '">';
         }
         $li_content .= '<div class="rtmedia-item-thumbnail">';
         $li_content .= $this->media($media);
         $li_content .= '</div>';
         $li_content .= '<div class="rtmedia-item-title">';
         $li_content .= '<h4 title="' . $media->media_title . '">';
         if ('photo' != $media->media_type) {
             $li_content .= '<a href="' . get_rtmedia_permalink($media->id) . '">';
         }
         $li_content .= $media->media_title;
         if ('photo' != $media->media_type) {
             $li_content .= '</a>';
         }
         $li_content .= '</h4>';
         $li_content .= '</div>';
         if ('photo' == $media->media_type) {
             $li_content .= '</a>';
         }
         $li_content .= '<div class="rtmedia-item-actions">';
         $li_content .= $this->actions();
         $li_content .= '</div>';
         $li_content .= '</li>';
         $count++;
     }
     $html .= '<ul class="rtmedia-list ' . $rtmedia_activity_ul_class . ' rtmedia-activity-media-length-' . $count . '">';
     $html .= $li_content;
     $html .= '</ul>';
     $html .= '</div>';
     return bp_activity_filter_kses($html);
 }
 function comment_sync($comment_id, $param)
 {
     $user_id = '';
     $comment_author = '';
     extract($param);
     if (!empty($user_id)) {
         $user_data = get_userdata($user_id);
         $comment_author = $user_data->data->user_login;
     }
     $mediamodel = new RTMediaModel();
     $media = $mediamodel->get(array('activity_id' => $param['activity_id']));
     // if there is only single media in activity
     if (sizeof($media) == 1 && isset($media[0]->media_id)) {
         $media_id = $media[0]->media_id;
         $comment = new RTMediaComment();
         $id = $comment->add(array('comment_content' => $param['content'], 'comment_post_ID' => $media_id, 'user_id' => $user_id, 'comment_author' => $comment_author));
         update_comment_meta($id, 'activity_id', $comment_id);
     }
 }
Exemplo n.º 4
0
 function remove($id)
 {
     do_action('rtmedia_before_remove_comment', $id);
     $comment = '';
     if (!empty($id)) {
         $comment = get_comment($id);
     }
     if (isset($comment->comment_post_ID) && isset($comment->user_id)) {
         $model = new RTMediaModel();
         //get the current media from the comment_post_ID
         $media = $model->get(array('media_id' => $comment->comment_post_ID));
         // if user is comment creator, or media uploader or admin, allow to delete
         if (isset($media[0]->media_author) && (is_rt_admin() || intval($comment->user_id) === get_current_user_id() || intval($media[0]->media_author) === get_current_user_id())) {
             $comment_deleted = $this->rtmedia_comment_model->delete($id);
             do_action('rtmedia_after_remove_comment', $id);
             return $comment_deleted;
         }
     }
     return false;
 }
Exemplo n.º 5
0
 function rtm_change_activity_privacy()
 {
     $nonce = filter_input(INPUT_POST, 'nonce', FILTER_SANITIZE_STRING);
     $privacy = filter_input(INPUT_POST, 'privacy', FILTER_SANITIZE_NUMBER_INT);
     $activity_id = filter_input(INPUT_POST, 'activity_id', FILTER_SANITIZE_NUMBER_INT);
     if (wp_verify_nonce($nonce, 'rtmedia_activity_privacy_nonce')) {
         $rtm_activity_model = new RTMediaActivityModel();
         $is_ac_privacy_exist = $rtm_activity_model->check($activity_id);
         $privacy = intval($privacy);
         $activity_id = intval($activity_id);
         if (!$is_ac_privacy_exist) {
             // Very first privacy entry for this activity
             $status = $rtm_activity_model->insert(array('privacy' => $privacy, 'activity_id' => $activity_id, 'user_id' => get_current_user_id()));
         } else {
             // Just update the existing value
             $status = $rtm_activity_model->update(array('privacy' => $privacy), array('activity_id' => $activity_id));
         }
         // update privacy of corresponding media
         $media_model = new RTMediaModel();
         $activity_media = $media_model->get(array('activity_id' => $activity_id));
         if (!empty($activity_media) && is_array($activity_media)) {
             foreach ($activity_media as $single_media) {
                 $where = array('id' => $single_media->id);
                 $columns = array('privacy' => $privacy);
                 // update media privacy
                 $media_model->update($columns, $where);
             }
         }
         if (false === $status) {
             $status = 'false';
         } else {
             $status = 'true';
         }
         echo esc_html($status);
         wp_die();
     }
 }
Exemplo n.º 6
0
 function check_return_comments()
 {
     global $rtmedia_query;
     if ('comment' !== $rtmedia_query->action_query->action) {
         return;
     }
     if (isset($rtmedia_query->action_query->id) && count($_POST)) {
         // @codingStandardsIgnoreLine
         /**
          * /media/comments [POST]
          * Post a comment to the album by post id
          */
         $nonce = isset($_REQUEST['rtmedia_comment_nonce']) ? wp_unslash($_REQUEST['rtmedia_comment_nonce']) : '';
         $comment_content = isset($_REQUEST['comment_content']) ? sanitize_text_field(wp_unslash($_REQUEST['comment_content'])) : '';
         if (wp_verify_nonce($nonce, 'rtmedia_comment_nonce')) {
             if (empty($comment_content)) {
                 return false;
             }
             $comment = new RTMediaComment();
             $attr = $_POST;
             $media_model = new RTMediaModel();
             $result = $media_model->get(array('id' => $rtmedia_query->action_query->id));
             if (!isset($attr['comment_post_ID'])) {
                 $attr['comment_post_ID'] = $result[0]->media_id;
             }
             $id = $comment->add($attr);
             if (!is_null($result[0]->activity_id)) {
                 global $rtmedia_buddypress_activity;
                 remove_action('bp_activity_comment_posted', array($rtmedia_buddypress_activity, 'comment_sync'), 10, 2);
                 if (function_exists('bp_activity_new_comment')) {
                     $comment_activity_id = bp_activity_new_comment(array('content' => $comment_content, 'activity_id' => $result[0]->activity_id));
                     do_action('rtm_bp_activity_comment_posted', $comment_activity_id, $result[0]);
                 }
             }
             if (!empty($comment_activity_id)) {
                 $rtmedia_activity_comment = rtmedia_activity_comment($comment_activity_id);
                 if ($rtmedia_activity_comment['content']) {
                     update_comment_meta($id, 'activity_comment_content', $rtmedia_activity_comment['content']);
                 }
                 update_comment_meta($id, 'activity_id', $comment_activity_id);
             }
             $_rt_ajax = filter_input(INPUT_POST, 'rtajax', FILTER_SANITIZE_STRING);
             if (!empty($_rt_ajax)) {
                 global $wpdb;
                 $comments = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$wpdb->comments} WHERE comment_ID = %d limit 100", $id), ARRAY_A);
                 echo rmedia_single_comment($comments);
                 // @codingStandardsIgnoreLine
                 exit;
             }
         } else {
             esc_html_e('Ooops !!! Invalid access. No nonce was found !!', 'buddypress-media');
         }
     }
 }
 function bp_prefetch_activity_object_data($activities)
 {
     // If activities array is empty then return
     if (empty($activities)) {
         return;
     }
     // To store activity_id
     $activity_ids = array();
     $activity_index_array = array();
     foreach ($activities as $i => $activity) {
         // Checking if activity_type is of rtmedia and component must be profile
         if ($activity->type == 'rtmedia_update' && $activity->component == 'profile') {
             // Storing activity_id
             $activity_ids[] = $activity->id;
             // Storing index of activity from activities array
             $activity_index_array[] = $i;
         }
     }
     // Checking if media is linked with any of activity
     if (!empty($activity_ids)) {
         $rtmedia_model = new RTMediaModel();
         // Where condition array to get media using activity_id from rtm_media table
         $rtmedia_media_where_array = array();
         $rtmedia_media_where_array['activity_id'] = array('compare' => 'IN', 'value' => $activity_ids);
         $rtmedia_media_query = $rtmedia_model->get($rtmedia_media_where_array);
         // Array to store media_type in simplified manner with activity_id as key
         $rtmedia_media_type_array = array();
         for ($i = 0; $i < sizeof($rtmedia_media_query); $i++) {
             // Storing media_type of uploaded media to check whether all media are of same type or different and key is activity_id
             // Making activity_id array because there might be more then 1 media linked with activity
             if (!isset($rtmedia_media_type_array[$rtmedia_media_query[$i]->activity_id]) || !is_array($rtmedia_media_type_array[$rtmedia_media_query[$i]->activity_id])) {
                 $rtmedia_media_type_array[$rtmedia_media_query[$i]->activity_id] = array();
             }
             array_push($rtmedia_media_type_array[$rtmedia_media_query[$i]->activity_id], $rtmedia_media_query[$i]->media_type);
         }
         // Updating action
         for ($a = 0; $a < sizeof($activity_ids); $a++) {
             // Getting index of activity which is being updated
             $index = $activity_index_array[$a];
             //error_log( var_export( $activities[ $index ], true ) );
             // This pattern is for getting name. User might have change display name as first name or something instead on nicename.
             $pattern = "/<a ?.*>(.*)<\\/a>/";
             preg_match($pattern, $activities[$index]->action, $matches);
             // Generating user_link with name
             $user_link = '<a href="' . $activities[$index]->primary_link . '">' . $matches[1] . '</a>';
             // Counting media linked with activity
             $count = sizeof($rtmedia_media_type_array[$activities[$index]->id]);
             // Getting constant with single label or plural label
             $media_const = 'RTMEDIA_' . strtoupper($rtmedia_media_type_array[$activities[$index]->id][0]);
             if ($count > 1) {
                 $media_const .= '_PLURAL';
             }
             $media_const .= '_LABEL';
             if (defined($media_const)) {
                 $media_str = constant($media_const);
             } else {
                 $media_str = RTMEDIA_MEDIA_SLUG;
             }
             $action = '';
             $user = get_userdata($activities[$index]->user_id);
             // Updating activity based on count
             if ($count == 1) {
                 $action = sprintf(__('%s added a %s', 'buddypress-media'), $user_link, $media_str);
             } else {
                 // Checking all the media linked with activity are of same type
                 if (isset($rtmedia_media_type_array[$activities[$index]->id]) && !empty($rtmedia_media_type_array[$activities[$index]->id]) && count(array_unique($rtmedia_media_type_array[$activities[$index]->id])) == 1) {
                     $action = sprintf(__('%s added %d %s', 'buddypress-media'), $user_link, $count, $media_str);
                 } else {
                     $action = sprintf(__('%s added %d %s', 'buddypress-media'), $user_link, $count, RTMEDIA_MEDIA_SLUG);
                 }
             }
             $action = apply_filters('rtmedia_bp_activity_action_text', $action, $user_link, $count, $user, $rtmedia_media_type_array[$activities[$index]->id][0], $activities[$index]->id);
             $activities[$index]->action = $action;
         }
     }
     return $activities;
 }
Exemplo n.º 8
0
 function rtmedia_api_process_rtmedia_get_media_details_request()
 {
     $this->rtmediajsonapifunction->rtmedia_api_verfiy_token();
     $this->rtmediajsonapifunction->rtmedia_api_media_activity_id_missing();
     //Errors
     $ec_single_media = 150002;
     $msg_single_media = __('single media', 'rtmedia');
     extract($_REQUEST);
     $id = rtmedia_media_id($media_id);
     if (empty($id)) {
         echo $this->rtmedia_api_response_object('TRUE', $this->ec_invalid_media_id, $this->msg_invalid_media_id);
         exit;
     }
     if (class_exists('RTMediaModel')) {
         $rtmediamodel = new RTMediaModel();
         $args = array('media_id' => $id, 'id' => $media_id);
         $media = $rtmediamodel->get($args);
     }
     $activity_id = !empty($media) ? $media[0]->activity_id : '';
     if (empty($activity_id)) {
         echo $this->rtmedia_api_response_object('FALSE', $this->ec_invalid_media_id, $this->msg_invalid_media_id);
         exit;
     }
     $media_single = $this->rtmediajsonapifunction->rtmedia_api_get_feed(FALSE, $activity_id);
     if ($media_single) {
         echo $this->rtmedia_api_response_object('TRUE', $ec_single_media, $msg_single_media, $media_single);
         exit;
     }
 }
function get_rtmedia_privacy_symbol($rtmedia_id = false)
{
    $mediamodel = new RTMediaModel();
    $actions = $mediamodel->get(array('id' => rtmedia_id($rtmedia_id)));
    $privacy = "";
    if (isset($actions[0]->privacy) && $actions[0]->privacy != "") {
        $title = $icon = "";
        switch ($actions[0]->privacy) {
            case 0:
                //public
                $title = __("Public", 'rtmedia');
                $icon = 'rtmicon-globe';
                break;
            case 20:
                //users
                $title = __("All members", 'rtmedia');
                $icon = 'rtmicon-users';
                break;
            case 40:
                // friends
                $title = __("Your friends", 'rtmedia');
                $icon = 'rtmicon-users-1';
                break;
            case 60:
                // private
                $title = __("Only you", 'rtmedia');
                $icon = 'rtmicon-lock';
                break;
            case 80:
                // private
                $title = __("Blocked Temperorily", 'rtmedia');
                $icon = 'rtmicon-ban';
                break;
        }
        if ($title != "" && $icon != "") {
            $privacy = "<i class='" . $icon . "' title='" . $title . "'></i>";
        }
    }
    return $privacy;
}
Exemplo n.º 10
0
/**
 * Get the media privacy symbol
 *
 * @param       bool|int    $rtmedia_id
 *
 * @return      string
 */
function get_rtmedia_privacy_symbol($rtmedia_id = false)
{
    $mediamodel = new RTMediaModel();
    $actions = $mediamodel->get(array('id' => rtmedia_id($rtmedia_id)));
    $privacy = '';
    if (intval($actions[0]->privacy) >= 0) {
        $title = $icon = '';
        switch ($actions[0]->privacy) {
            case 0:
                // public
                $title = esc_html__('Public', 'buddypress-media');
                $icon = 'dashicons dashicons-admin-site rtmicon';
                break;
            case 20:
                // users
                $title = esc_html__('All members', 'buddypress-media');
                $icon = 'dashicons dashicons-groups rtmicon';
                break;
            case 40:
                // friends
                $title = esc_html__('Your friends', 'buddypress-media');
                $icon = 'dashicons dashicons-networking rtmicon';
                break;
            case 60:
                // private
                $title = esc_html__('Only you', 'buddypress-media');
                $icon = 'dashicons dashicons-lock rtmicon';
                break;
            case 80:
                // private
                $title = esc_html__('Blocked temporarily', 'buddypress-media');
                $icon = 'dashicons dashicons-dismiss rtmicon';
                break;
        }
        if (!empty($title) && !empty($icon)) {
            $privacy = "<i class='" . esc_attr($icon) . "' title='" . esc_attr($title) . "'></i>";
        }
    }
    return $privacy;
}
Exemplo n.º 11
0
function get_rtmedia_privacy_symbol($rtmedia_id = false)
{
    $mediamodel = new RTMediaModel();
    $actions = $mediamodel->get(array('id' => rtmedia_id($rtmedia_id)));
    $privacy = "";
    if (isset($actions[0]->privacy) && $actions[0]->privacy != "") {
        $title = $icon = "";
        switch ($actions[0]->privacy) {
            case 0:
                //public
                $title = __("Public", 'rtmedia');
                $icon = 'dashicons dashicons-admin-site rtmicon';
                break;
            case 20:
                //users
                $title = __("All members", 'rtmedia');
                $icon = 'dashicons dashicons-groups rtmicon';
                break;
            case 40:
                // friends
                $title = __("Your friends", 'rtmedia');
                $icon = 'dashicons dashicons-networking rtmicon';
                break;
            case 60:
                // private
                $title = __("Only you", 'rtmedia');
                $icon = 'dashicons dashicons-lock rtmicon';
                break;
            case 80:
                // private
                $title = __("Blocked temporarily", 'rtmedia');
                $icon = 'dashicons dashicons-dismiss rtmicon';
                break;
        }
        if ($title != "" && $icon != "") {
            $privacy = "<i class='" . $icon . "' title='" . $title . "'></i>";
        }
    }
    return $privacy;
}
Exemplo n.º 12
0
 function save_video_thumbnail($post, $attachment)
 {
     if (isset($post['rtmedia-thumbnail'])) {
         $rtmedia_model = new RTMediaModel();
         $model = new RTMediaModel();
         $media = $model->get(array('media_id' => $post['ID']));
         $media_id = $media[0]->id;
         $rtmedia_model->update(array('cover_art' => $post['rtmedia-thumbnail']), array('media_id' => $post['ID']));
         update_activity_after_thumb_set($media_id);
     }
     return $post;
 }
Exemplo n.º 13
0
 function rtmedia_wpseo_og_image($data)
 {
     global $wp_query;
     if (class_exists("BuddyPress")) {
         global $bp;
         if (bp_is_single_activity()) {
             $mediaObj = new RTMediaModel();
             $media_details = $mediaObj->get(array('activity_id' => $bp->current_action));
             foreach ($media_details as $media) {
                 if ($media->media_type == 'photo') {
                     $img = wp_get_attachment_image_src($media->media_id, "full");
                     if ($img && isset($img[0]) && $img[0] != "") {
                         echo "<meta property='og:image' content='" . esc_url($img[0]) . "' />\n";
                     }
                 }
             }
         }
     }
     if (array_key_exists('media', $wp_query->query_vars)) {
         global $rtmedia_query;
         if (isset($rtmedia_query->media) && $rtmedia_query->media && count($rtmedia_query->media) > 0) {
             foreach ($rtmedia_query->media as $media) {
                 $img = wp_get_attachment_image_src($media->media_id, "full");
                 if ($img && isset($img[0]) && $img[0] != "") {
                     echo "<meta property='og:image' content='" . esc_url($img[0]) . "' />\n";
                 }
             }
         }
     }
     return $data;
 }
 /**
  * Remove activity when comment on media is deleted
  *
  * @param $comment_id
  */
 function remove_activity_after_media_comment_delete($comment_id)
 {
     if (!empty($comment_id)) {
         // get comment details from comment id
         $comment = get_comment($comment_id);
         $user_id = $comment->user_id;
         if (isset($comment->comment_post_ID) && isset($comment->user_id)) {
             $model = new RTMediaModel();
             $media_obj = $model->get(array('media_id' => $comment->comment_post_ID));
             $media_obj = $media_obj[0];
             if (!empty($media_obj)) {
                 $meta_key = 'rtm-bp-media-comment-activity-' . $media_obj->id . '-' . $comment_id;
                 // Delete activity when user remove his comment.
                 $activity_id = get_user_meta($user_id, $meta_key, true);
                 if (!empty($activity_id)) {
                     if (bp_activity_delete(array('id' => $activity_id))) {
                         delete_user_meta($user_id, $meta_key);
                     }
                 }
             }
         }
     }
 }
Exemplo n.º 15
0
 function rtmedia_api_process_rtmedia_get_media_details_request()
 {
     $this->rtmediajsonapifunction->rtmedia_api_verfiy_token();
     $this->rtmediajsonapifunction->rtmedia_api_media_activity_id_missing();
     //Errors
     $ec_single_media = 150002;
     $msg_single_media = esc_html__('single media', 'buddypress-media');
     $media_id = filter_input(INPUT_POST, 'media_id', FILTER_SANITIZE_NUMBER_INT);
     $id = rtmedia_media_id($media_id);
     if (empty($id)) {
         wp_send_json($this->rtmedia_api_response_object('TRUE', $this->ec_invalid_media_id, $this->msg_invalid_media_id));
     }
     if (class_exists('RTMediaModel')) {
         $rtmediamodel = new RTMediaModel();
         $args = array('media_id' => $id, 'id' => $media_id);
         $media = $rtmediamodel->get($args);
     }
     $activity_id = !empty($media) ? $media[0]->activity_id : '';
     if (empty($activity_id)) {
         wp_send_json($this->rtmedia_api_response_object('FALSE', $this->ec_invalid_media_id, $this->msg_invalid_media_id));
     }
     $media_single = $this->rtmediajsonapifunction->rtmedia_api_get_feed(false, $activity_id);
     if ($media_single) {
         wp_send_json($this->rtmedia_api_response_object('TRUE', $ec_single_media, $msg_single_media, $media_single));
     }
 }
Exemplo n.º 16
0
/**
 * @param $album_id
 *
 * @return array
 */
function rtm_get_album_media_count($album_id)
{
    global $rtmedia_query;
    $args = array();
    if (isset($album_id) && $album_id) {
        $args['album_id'] = $album_id;
    }
    if (isset($rtmedia_query->query['context']) && $rtmedia_query->query['context']) {
        $args['context'] = $rtmedia_query->query['context'];
    }
    if (isset($rtmedia_query->query['context_id']) && $rtmedia_query->query['context_id']) {
        $args['context_id'] = $rtmedia_query->query['context_id'];
    }
    $rtmedia_model = new RTMediaModel();
    if ($args) {
        $count = $rtmedia_model->get($args, false, false, 'media_id desc', true);
    }
    return $count;
}
Exemplo n.º 17
0
/**
 * Fix for rtAmazon S3 addon
 * When rtAmazon S3 is disabled we need to restore/replace the attachment URLS with the
 * original WordPress URL structure
 *
 * @since 1.0.1
 *
 * @param  string $content  HTML contents of the activity
 * @param  object $activity Activity object
 *
 * @return string
 */
function replace_aws_img_urls_from_activities($content, $activity = '')
{
    if (empty($content) || empty($activity)) {
        return $content;
    }
    /**
     * Allow users/plugins to prevent replacing of URL from activty
     *
     * @var boolean					Boolean false is passed as a parameter.
     * @var object $activity		Object of activity.
     */
    if (apply_filters('replace_aws_img_urls_from_activities', false, $activity)) {
        return $content;
    }
    $rt_model = new RTMediaModel();
    $all_media = $rt_model->get(array('activity_id' => $activity->id));
    $is_img = false;
    $url = '';
    $is_img = strpos($content, '<img ');
    $search = '/<img.+src=["]([^"]+)["]/';
    preg_match_all($search, $content, $url);
    if (!empty($is_img) && !empty($url) && !empty($url[1])) {
        /**
         * Iterate through each image URL found in regex
         */
        foreach ($url[1] as $key => $url) {
            if (!class_exists('RTAWSS3_Class') && !class_exists('AS3CF_Utils')) {
                /* for WordPress backward compatibility */
                if (function_exists('wp_get_upload_dir')) {
                    $uploads = wp_get_upload_dir();
                } else {
                    $uploads = wp_upload_dir();
                }
                $baseurl = $uploads['baseurl'];
                if (0 === strpos($url, $uploads['baseurl'])) {
                    $thumbnail_url = $url;
                } else {
                    $rtmedia_folder_name = apply_filters('rtmedia_upload_folder_name', 'rtMedia');
                    $thumbnail_url = explode($rtmedia_folder_name, $url);
                    if (is_array($thumbnail_url) && !empty($thumbnail_url[1])) {
                        $thumbnail_url = $baseurl . '/' . $rtmedia_folder_name . '/' . ltrim($thumbnail_url[1], '/');
                    } else {
                        $thumbnail_url = $url;
                    }
                }
                if (!empty($thumbnail_url)) {
                    $content = str_replace($url, $thumbnail_url, $content);
                }
            } else {
                /**
                 * Sometimes there's no attachment ID for the URL assigned, so we pass MD5 hash of the URL as a attachment ID
                 */
                $attachment_id = md5($url);
                if (!empty($all_media) && !empty($all_media[0]->media_id)) {
                    $attachment_id = $all_media[0]->media_id;
                }
                $image_url = apply_filters('rtmedia_filtered_photo_url', $url, $attachment_id);
                $content = str_replace($url, $image_url, $content);
            }
            // End if().
        }
        // End foreach().
    }
    // End if().
    return $content;
}
Exemplo n.º 18
0
 function filter_image_sizes_details($sizes)
 {
     if (isset($_REQUEST['post_id'])) {
         $sizes = $this->unset_bp_media_image_sizes_details($sizes);
     } elseif (isset($_REQUEST['id'])) {
         //For Regenerate Thumbnails Plugin
         $model = new RTMediaModel();
         $result = $model->get(array('media_id' => intval(wp_unslash($_REQUEST['id']))));
         if (!empty($result)) {
             $bp_media_sizes = $this->image_sizes();
             $sizes = array('rt_media_thumbnail' => $bp_media_sizes['thumbnail'], 'rt_media_activity_image' => $bp_media_sizes['activity'], 'rt_media_single_image' => $bp_media_sizes['single'], 'rt_media_featured_image' => $bp_media_sizes['featured']);
         } else {
             $sizes = $this->unset_bp_media_image_sizes_details($sizes);
         }
     }
     return $sizes;
 }
 function rtmedia_api_album_media($album_id)
 {
     if (empty($album_id)) {
         return false;
     }
     $rtmediamodel = new RTMediaModel();
     $args = array('album_id' => $album_id);
     $media_list = $rtmediamodel->get($args);
     $media_data = array();
     if (!empty($media_list) && is_array($media_list)) {
         foreach ($media_list as $media) {
             $media_data[] = array('id' => $media->id, 'media_title' => $media->media_title, 'media_url' => get_rtmedia_permalink($media->media_id), 'media_author' => $media->media_author, 'cover' => rtmedia_image('rt_media_thumbnail', $media->media_id, FALSE));
         }
     }
     return $media_data;
 }
Exemplo n.º 20
0
 function check_return_comments()
 {
     global $rtmedia_query;
     if ($rtmedia_query->action_query->action != 'comment') {
         return;
     }
     if (isset($rtmedia_query->action_query->id) && count($_POST)) {
         /**
          * /media/comments [POST]
          * Post a comment to the album by post id
          */
         $nonce = $_REQUEST['rtmedia_comment_nonce'];
         if (wp_verify_nonce($nonce, 'rtmedia_comment_nonce')) {
             if (empty($_POST['comment_content'])) {
                 return false;
             }
             $comment = new RTMediaComment();
             $attr = $_POST;
             $mediaModel = new RTMediaModel();
             $result = $mediaModel->get(array('id' => $rtmedia_query->action_query->id));
             if (!isset($attr['comment_post_ID'])) {
                 $attr['comment_post_ID'] = $result[0]->media_id;
             }
             $id = $comment->add($attr);
             if ($result[0]->activity_id != null) {
                 global $rtmedia_buddypress_activity;
                 remove_action("bp_activity_comment_posted", array($rtmedia_buddypress_activity, "comment_sync"), 10, 2);
                 if (function_exists('bp_activity_new_comment')) {
                     $comment_activity_id = bp_activity_new_comment(array('content' => $_POST['comment_content'], 'activity_id' => $result[0]->activity_id));
                 }
             }
             if (!empty($comment_activity_id)) {
                 update_comment_meta($id, 'activity_id', $comment_activity_id);
             }
             if (isset($_POST["rtajax"])) {
                 global $wpdb;
                 $comments = $wpdb->get_row($wpdb->prepare("SELECT * FROM {$wpdb->comments} WHERE comment_ID = %d", $id), ARRAY_A);
                 echo rmedia_single_comment($comments);
                 exit;
             }
         } else {
             _e('Ooops !!! Invalid access. No nonce was found !!', 'buddypress-media');
         }
     }
 }
Exemplo n.º 21
0
 /**
  *
  * @param type $uploaded
  * @param type $file_object
  *
  * @return type
  */
 function generate_post_array($uploaded, $file_object)
 {
     if ($uploaded['album_id']) {
         $model = new RTMediaModel();
         $parent_details = $model->get(array('id' => $uploaded['album_id']));
         if (is_array($parent_details) && count($parent_details) > 0) {
             $album_id = $parent_details[0]->media_id;
         } else {
             $album_id = 0;
         }
     } else {
         $album_id = 0;
     }
     if (!in_array($uploaded['context'], array('profile', 'group'), true)) {
         $album_id = $uploaded['context_id'];
     }
     $attachments = array();
     foreach ($file_object as $index => $file) {
         $uploaded['title'] = wp_kses($uploaded['title'], wp_kses_allowed_html());
         // filter description for allowed html tags
         $uploaded['description'] = wp_kses($uploaded['description'], wp_kses_allowed_html());
         $attachments[$index] = array('post_mime_type' => $file['type'], 'guid' => esc_url_raw($file['url']), 'post_title' => sanitize_text_field($uploaded['title'] ? $uploaded['title'] : preg_replace('/\\.[^.\\s]{3,4}$/', '', $file['name'])), 'post_content' => $uploaded['description'] ? $uploaded['description'] : '', 'post_parent' => intval($album_id), 'post_author' => intval($uploaded['media_author']));
         if (!empty($uploaded['date'])) {
             $attachments[$index]['post_date'] = $uploaded['date'];
         }
     }
     return $attachments;
 }
Exemplo n.º 22
0
 public function reencoding($attachment, $autoformat = true)
 {
     $rtmedia_model = new RTMediaModel();
     $media_array = $rtmedia_model->get(array("media_id" => $attachment));
     $media_id = $media_array[0]->id;
     $attached_file = get_post_meta($attachment, '_wp_attached_file');
     $upload_path = trim(get_option('upload_path'));
     if (empty($upload_path) || 'wp-content/uploads' == $upload_path) {
         $dir = WP_CONTENT_DIR . '/uploads';
     } elseif (0 !== strpos($upload_path, ABSPATH)) {
         // $dir is absolute, $upload_path is (maybe) relative to ABSPATH
         $dir = path_join(ABSPATH, $upload_path);
     } else {
         $dir = $upload_path;
     }
     $file = trailingslashit($dir) . $attached_file[0];
     $url = wp_get_attachment_url($attachment);
     $file_name_array = explode("/", $url);
     $file_name = $file_name_array[sizeof($file_name_array) - 1];
     $file_object = array();
     $media_type = get_post_field('post_mime_type', $attachment);
     $media_type_array = explode("/", $media_type);
     if ($media_type_array[0] == "video") {
         $file_object[] = array("file" => $file, "url" => $url, "name" => $file_name, "type" => $media_type);
         $this->encoding(array($media_id), $file_object, array(), $autoformat);
     }
 }
Exemplo n.º 23
0
 /**
  *
  * @param type $uploaded
  * @param type $file_object
  *
  * @return type
  */
 function generate_post_array($uploaded, $file_object)
 {
     if ($uploaded['album_id']) {
         $model = new RTMediaModel();
         $parent_details = $model->get(array('id' => $uploaded['album_id']));
         if (is_array($parent_details) && sizeof($parent_details) > 0) {
             $album_id = $parent_details[0]->media_id;
         } else {
             $album_id = 0;
         }
     } else {
         $album_id = 0;
     }
     if (!in_array($uploaded["context"], array("profile", "group"))) {
         $album_id = $uploaded["context_id"];
     }
     $attachments = array();
     foreach ($file_object as $index => $file) {
         $uploaded['title'] = wp_kses($uploaded['title'], wp_kses_allowed_html());
         $uploaded['description'] = sanitize_text_field($uploaded['description']);
         $attachments[$index] = array('post_mime_type' => $file['type'], 'guid' => $file['url'], 'post_title' => $uploaded['title'] ? $uploaded['title'] : preg_replace("/\\.[^.\\s]{3,4}\$/", "", $file['name']), 'post_content' => $uploaded['description'] ? $uploaded['description'] : '', 'post_parent' => $album_id, 'post_author' => $uploaded['media_author']);
         if (!empty($uploaded['date'])) {
             $attachments[$index]['post_date'] = $uploaded['date'];
         }
     }
     return $attachments;
 }