Example #1
0
/**
 * Creating an album
 *
 * @global      RTMediaQuery    $rtmedia_query
 *
 * @param       array           $options
 *
 * @return      array|void
 */
function rtmedia_create_album($options)
{
    if (!is_rtmedia_album_enable()) {
        return;
    }
    if (!rtm_is_album_create_allowed()) {
        return;
    }
    global $rtmedia_query;
    $user_id = get_current_user_id();
    $display = false;
    $context_type_array = array('profile', 'group');
    if (isset($rtmedia_query->query['context']) && in_array($rtmedia_query->query['context'], $context_type_array, true) && 0 !== $user_id) {
        switch ($rtmedia_query->query['context']) {
            case 'profile':
                if ($rtmedia_query->query['context_id'] === $user_id) {
                    $display = rtm_is_user_allowed_to_create_album();
                }
                break;
            case 'group':
                $group_id = $rtmedia_query->query['context_id'];
                if (can_user_create_album_in_group($group_id)) {
                    $display = true;
                }
                break;
        }
    }
    if (true === $display) {
        add_action('rtmedia_before_media_gallery', 'rtmedia_create_album_modal');
        $options[] = "<a href='#rtmedia-create-album-modal' class='rtmedia-reveal-modal rtmedia-modal-link'  title='" . esc_attr__('Create New Album', 'buddypress-media') . "'><i class='dashicons dashicons-plus-alt rtmicon'></i>" . esc_html__('Add Album', 'buddypress-media') . '</a>';
    }
    return $options;
}
Example #2
0
 function create_album()
 {
     $nonce = filter_input(INPUT_POST, 'create_album_nonce', FILTER_SANITIZE_STRING);
     $_name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING);
     $return['error'] = false;
     if (wp_verify_nonce($nonce, 'rtmedia_create_album_nonce') && isset($_name) && $_name && is_rtmedia_album_enable()) {
         $_context = filter_input(INPUT_POST, 'context', FILTER_SANITIZE_STRING);
         $_context_id = filter_input(INPUT_POST, 'context_id', FILTER_SANITIZE_NUMBER_INT);
         if (!empty($_context) && 'group' === $_context) {
             $group_id = !empty($_context_id) ? $_context_id : '';
             if (false === can_user_create_album_in_group($group_id)) {
                 $return['error'] = esc_html__('You can not create album in this group.', 'buddypress-media');
             }
         }
         $create_album = apply_filters('rtm_is_album_create_enable', true);
         if (!$create_album) {
             $return['error'] = esc_html__('You can not create album.', 'buddypress-media');
         }
         $create_album = apply_filters('rtm_display_create_album_button', true, $_context_id);
         if (!$create_album) {
             $return['error'] = esc_html__('You can not create more albums, you exceed your album limit.', 'buddypress-media');
         }
         if (false !== $return['error']) {
             wp_send_json($return);
         }
         $album = new RTMediaAlbum();
         // setup context values
         $context = $_context;
         if ('profile' === $context) {
             $context_id = get_current_user_id();
         } else {
             $context_id = !empty($_context_id) ? $_context_id : 0;
         }
         // setup new album data
         $album_data = apply_filters('rtmedia_create_album_data', array('title' => $_name, 'author' => get_current_user_id(), 'new' => true, 'post_id' => false, 'context' => $context, 'context_id' => $context_id));
         $rtmedia_id = $album->add($album_data['title'], $album_data['author'], $album_data['new'], $album_data['post_id'], $album_data['context'], $album_data['context_id']);
         $rtmedia_nav = new RTMediaNav();
         if ('group' === $_context) {
             $rtmedia_nav->refresh_counts($_context_id, array('context' => $_context, 'context_id' => $_context_id));
         } else {
             $rtmedia_nav->refresh_counts(get_current_user_id(), array('context' => 'profile', 'media_author' => get_current_user_id()));
         }
         if ($rtmedia_id) {
             $return['album'] = apply_filters('rtmedia_create_album_response', $rtmedia_id);
             wp_send_json($return);
         } else {
             echo false;
         }
     } else {
         $return['error'] = esc_html__('Data mismatch, Please insert data properly.', 'buddypress-media');
         wp_send_json($return);
     }
     wp_die();
 }
Example #3
0
 function create_album()
 {
     $nonce = $_POST['create_album_nonce'];
     $return['error'] = false;
     if (wp_verify_nonce($nonce, 'rtmedia_create_album_nonce') && isset($_POST['name']) && $_POST['name'] && is_rtmedia_album_enable()) {
         if (isset($_POST['context']) && $_POST['context'] == "group") {
             $group_id = !empty($_POST['context_id']) ? $_POST['context_id'] : '';
             if (can_user_create_album_in_group($group_id) == false) {
                 $return['error'] = __('You can not create album in this group.', 'buddypress-media');
             }
         }
         $create_album = apply_filters("rtm_is_album_create_enable", true);
         if (!$create_album) {
             $return['error'] = __('You can not create album.', 'buddypress-media');
         }
         $create_album = apply_filters("rtm_display_create_album_button", true, $_POST['context_id']);
         if (!$create_album) {
             $return['error'] = __('You can not create more albums, you exceed your album limit.', 'buddypress-media');
         }
         if ($return['error'] !== false) {
             echo json_encode($return);
             wp_die();
         }
         $album = new RTMediaAlbum();
         // setup context values
         $context = $_POST['context'];
         if ($context == 'profile') {
             $context_id = get_current_user_id();
         } else {
             $context_id = isset($_POST['context_id']) ? $_POST['context_id'] : 0;
         }
         // setup new album data
         $album_data = apply_filters('rtmedia_create_album_data', array('title' => $_POST['name'], 'author' => get_current_user_id(), 'new' => true, 'post_id' => false, 'context' => $context, 'context_id' => $context_id));
         $rtmedia_id = $album->add($album_data['title'], $album_data['author'], $album_data['new'], $album_data['post_id'], $album_data['context'], $album_data['context_id']);
         $rtMediaNav = new RTMediaNav();
         if ($_POST['context'] == "group") {
             $rtMediaNav->refresh_counts($_POST['context_id'], array("context" => $_POST['context'], 'context_id' => $_POST['context_id']));
         } else {
             $rtMediaNav->refresh_counts(get_current_user_id(), array("context" => "profile", 'media_author' => get_current_user_id()));
         }
         if ($rtmedia_id) {
             $return['album'] = apply_filters('rtmedia_create_album_response', $rtmedia_id);
             echo json_encode($return);
         } else {
             echo esc_attr(false);
         }
     } else {
         $return['error'] = __('Data mismatch, Please insert data properly.', 'buddypress-media');
         echo json_encode($return);
     }
     wp_die();
 }
Example #4
0
 function create_album()
 {
     $nonce = $_POST['create_album_nonce'];
     if (wp_verify_nonce($nonce, 'rtmedia_create_album_nonce') && isset($_POST['name']) && $_POST['name'] && is_rtmedia_album_enable()) {
         if (isset($_POST['context']) && $_POST['context'] == "group") {
             $group_id = !empty($_POST['context_id']) ? $_POST['context_id'] : '';
             if (can_user_create_album_in_group($group_id) == false) {
                 echo false;
                 wp_die();
             }
         }
         $create_album = apply_filters("rtm_is_album_create_enable", true);
         if (!$create_album) {
             echo false;
             wp_die();
         }
         $create_album = apply_filters("rtm_display_create_album_button", true, $_POST['context_id']);
         if (!$create_album) {
             echo false;
             wp_die();
         }
         $album = new RTMediaAlbum();
         $rtmedia_id = $album->add($_POST['name'], get_current_user_id(), true, false, $_POST['context'], $_POST['context_id']);
         $rtMediaNav = new RTMediaNav();
         if ($_POST['context'] == "group") {
             $rtMediaNav->refresh_counts($_POST['context_id'], array("context" => $_POST['context'], 'context_id' => $_POST['context_id']));
         } else {
             $rtMediaNav->refresh_counts(get_current_user_id(), array("context" => "profile", 'media_author' => get_current_user_id()));
         }
         if ($rtmedia_id) {
             echo $rtmedia_id;
         } else {
             echo false;
         }
     } else {
         echo false;
     }
     wp_die();
 }
function rtmedia_create_album($options)
{
    if (!is_rtmedia_album_enable()) {
        return;
    }
    if (!rtm_is_album_create_allowed()) {
        return;
    }
    global $rtmedia_query;
    $user_id = get_current_user_id();
    $display = false;
    if (isset($rtmedia_query->query['context']) && in_array($rtmedia_query->query['context'], array('profile', 'group')) && $user_id != 0) {
        switch ($rtmedia_query->query['context']) {
            case 'profile':
                if ($rtmedia_query->query['context_id'] == $user_id) {
                    $display = rtm_is_user_allowed_to_create_album();
                }
                break;
            case 'group':
                $group_id = $rtmedia_query->query['context_id'];
                if (can_user_create_album_in_group($group_id)) {
                    $display = true;
                }
                break;
        }
    }
    if ($display === true) {
        add_action('rtmedia_before_media_gallery', 'rtmedia_create_album_modal');
        $options[] = "<a href='#rtmedia-create-album-modal' class='rtmedia-reveal-modal rtmedia-modal-link'  title='" . __('Create an Album', 'rtmedia') . "'><i class='rtmicon-plus-circle rtmicon-fw'></i>" . __('Add Album', 'rtmedia') . "</a>";
        return $options;
    }
}