Skip to:
Content

BuddyPress.org

Changeset 2343


Ignore:
Timestamp:
01/18/2010 08:00:33 PM (15 years ago)
Author:
johnjamesjacoby
Message:

Remove all references to Wire component (addresses #1618). This code has been moved to backpat.

Location:
trunk
Files:
1 deleted
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-activity.php

    r2331 r2343  
    396396         *  'user_id' => false, // user_id to filter on
    397397         *  'object' => false, // object to filter on e.g. groups, profile, status, friends
    398          *  'action' => false, // action to filter on e.g. new_wire_post, new_forum_post, profile_updated
     398         *  'action' => false, // action to filter on e.g. new_wire_post, profile_updated
    399399         *  'primary_id' => false, // object ID to filter on e.g. a group_id or forum_id or blog_id etc.
    400400         *  'secondary_id' => false, // secondary object ID to filter on e.g. a post_id
     
    438438
    439439        'user_id' => $bp->loggedin_user->id, // Optional: The user to record the activity for, can be false if this activity is not for a user.
    440         'item_id' => false, // Optional: The ID of the specific item being recorded, e.g. a blog_id, or wire_post_id
     440        'item_id' => false, // Optional: The ID of the specific item being recorded, e.g. a blog_id
    441441        'secondary_item_id' => false, // Optional: A second ID used to further filter e.g. a comment_id
    442442        'recorded_time' => time(), // The time that this activity was recorded
  • trunk/bp-core.php

    r2335 r2343  
    342342     */
    343343    if ( !function_exists( 'xprofile_install' ) ) {
    344         /* Fallback wire values if xprofile is disabled */
     344        /* Fallback values if xprofile is disabled */
    345345        $bp->core->profile->slug = 'profile';
    346346        $bp->active_components[$bp->core->profile->slug] = $bp->core->profile->slug;
  • trunk/bp-core/bp-core-templatetags.php

    r2325 r2343  
    10351035}
    10361036
    1037 function bp_profile_wire_can_post() {
    1038     global $bp;
    1039 
    1040     if ( bp_is_home() )
    1041         return true;
    1042 
    1043     if ( function_exists('friends_install') ) {
    1044         if ( friends_check_friendship( $bp->loggedin_user->id, $bp->displayed_user->id ) )
    1045             return true;
    1046         else
    1047             return false;
    1048     }
    1049 
    1050     return true;
    1051 }
    1052 
    10531037function bp_nav_items() {
    10541038    global $bp;
     
    13951379}
    13961380
    1397 function bp_is_wire_component() {
    1398     global $bp;
    1399 
    1400     if ( BP_WIRE_SLUG == $bp->current_action || in_array( BP_WIRE_SLUG, (array)$bp->action_variables ) )
    1401         return true;
    1402 
    1403     return false;
    1404 }
    1405 
    14061381function bp_is_messages_component() {
    14071382    global $bp;
     
    15031478}
    15041479
    1505 function bp_is_profile_wire() {
    1506     global $bp;
    1507 
    1508     if ( BP_XPROFILE_SLUG == $bp->current_component && 'wire' == $bp->current_action )
    1509         return true;
    1510 
    1511     return false;
    1512 }
    1513 
    15141480function bp_is_user_groups() {
    15151481    global $bp;
     
    15531519
    15541520    if ( BP_GROUPS_SLUG == $bp->current_component && $bp->is_single_item && 'admin' == $bp->current_action )
    1555         return true;
    1556 
    1557     return false;
    1558 }
    1559 
    1560 function bp_is_group_wire() {
    1561     global $bp;
    1562 
    1563     if ( BP_GROUPS_SLUG == $bp->current_component && $bp->is_single_item && 'wire' == $bp->current_action )
    15641521        return true;
    15651522
     
    17961753            $bp_classes[] = 'blogs';
    17971754
    1798         if ( bp_is_wire_component() && !bp_is_blog_page()  )
    1799             $bp_classes[] = 'wire';
    1800 
    18011755        if ( bp_is_messages_component() && !bp_is_blog_page()  )
    18021756            $bp_classes[] = 'messages';
     
    18651819            $bp_classes[] = 'group-forum';
    18661820
    1867         if ( bp_is_group_wire() )
    1868             $bp_classes[] = 'group-wire';
    1869 
    18701821        if ( bp_is_group_admin_page() )
    18711822            $bp_classes[] = 'group-admin';
     
    18761827        if ( bp_is_group_home() )
    18771828            $bp_classes[] = 'group-home';
    1878 
    1879         if ( bp_is_profile_wire() )
    1880             $bp_classes[] = 'profile-wire';
    18811829
    18821830        if ( bp_is_change_avatar() )
  • trunk/bp-groups.php

    r2339 r2343  
    2424            slug varchar(100) NOT NULL,
    2525            description longtext NOT NULL,
    26             news longtext NOT NULL,
    2726            status varchar(10) NOT NULL DEFAULT 'public',
    28             enable_wire tinyint(1) NOT NULL DEFAULT '1',
    2927            enable_forum tinyint(1) NOT NULL DEFAULT '1',
    3028            date_created datetime NOT NULL,
     
    6664    dbDelta($sql);
    6765
    68     if ( function_exists('bp_wire_install') )
    69         groups_wire_install();
     66    do_action( 'groups_install' );
    7067
    7168    update_site_option( 'bp-groups-db-version', BP_GROUPS_DB_VERSION );
    72 }
    73 
    74 function groups_wire_install() {
    75     global $wpdb, $bp;
    76 
    77     if ( !empty($wpdb->charset) )
    78         $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
    79 
    80     $sql[] = "CREATE TABLE {$bp->groups->table_name_wire} (
    81             id bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
    82             item_id bigint(20) NOT NULL,
    83             user_id bigint(20) NOT NULL,
    84             parent_id bigint(20) NOT NULL,
    85             content longtext NOT NULL,
    86             date_posted datetime NOT NULL,
    87             KEY item_id (item_id),
    88             KEY user_id (user_id),
    89             KEY parent_id (parent_id)
    90            ) {$charset_collate};";
    91 
    92     require_once(ABSPATH . 'wp-admin/upgrade-functions.php');
    93     dbDelta($sql);
    9469}
    9570
     
    10883    /* Register this in the active components array */
    10984    $bp->active_components[$bp->groups->slug] = $bp->groups->id;
    110 
    111     if ( function_exists('bp_wire_install') )
    112         $bp->groups->table_name_wire = $wpdb->base_prefix . 'bp_groups_wire';
    11385
    11486    $bp->groups->forbidden_names = apply_filters( 'groups_forbidden_names', array( 'my-groups', 'group-finder', 'create', 'invites', 'delete', 'add', 'admin', 'request-membership' ) );
     
    239211                bp_core_new_subnav_item( array( 'name' => __( 'Forum', 'buddypress' ), 'slug' => 'forum', 'parent_url' => $group_link, 'parent_slug' => $bp->groups->slug, 'screen_function' => 'groups_screen_group_forum', 'position' => 40, 'user_has_access' => $bp->groups->current_group->user_has_access, 'item_css_id' => 'forums' ) );
    240212
    241             if ( $bp->groups->current_group->enable_wire && function_exists('bp_wire_install') )
    242                 bp_core_new_subnav_item( array( 'name' => __( 'Wire', 'buddypress' ), 'slug' => BP_WIRE_SLUG, 'parent_url' => $group_link, 'parent_slug' => $bp->groups->slug, 'screen_function' => 'groups_screen_group_wire', 'position' => 50, 'user_has_access' => $bp->groups->current_group->user_has_access, 'item_css_id' => 'wire'  ) );
    243 
    244213            bp_core_new_subnav_item( array( 'name' => __( 'Members', 'buddypress' ), 'slug' => 'members', 'parent_url' => $group_link, 'parent_slug' => $bp->groups->slug, 'screen_function' => 'groups_screen_group_members', 'position' => 60, 'user_has_access' => $bp->groups->current_group->user_has_access, 'item_css_id' => 'members'  ) );
    245214
     
    593562
    594563            bp_core_load_template( apply_filters( 'groups_template_group_forum', 'groups/single/home' ) );
    595         }
    596     }
    597 }
    598 
    599 function groups_screen_group_wire() {
    600     global $bp;
    601 
    602     $wire_action = $bp->action_variables[0];
    603 
    604     if ( $bp->is_single_item ) {
    605         if ( 'post' == $wire_action && ( is_site_admin() || groups_is_user_member( $bp->loggedin_user->id, $bp->groups->current_group->id ) ) ) {
    606             /* Check the nonce first. */
    607             if ( !check_admin_referer( 'bp_wire_post' ) )
    608                 return false;
    609 
    610             if ( !groups_new_wire_post( $bp->groups->current_group->id, $_POST['wire-post-textarea'] ) )
    611                 bp_core_add_message( __('Wire message could not be posted.', 'buddypress'), 'error' );
    612             else
    613                 bp_core_add_message( __('Wire message successfully posted.', 'buddypress') );
    614 
    615             if ( !strpos( wp_get_referer(), $bp->wire->slug ) )
    616                 bp_core_redirect( bp_get_group_permalink( $bp->groups->current_group ) );
    617             else
    618                 bp_core_redirect( bp_get_group_permalink( $bp->groups->current_group ) . $bp->wire->slug );
    619 
    620         } else if ( 'delete' == $wire_action && ( is_site_admin() || groups_is_user_member( $bp->loggedin_user->id, $bp->groups->current_group->id ) ) ) {
    621             $wire_message_id = $bp->action_variables[1];
    622 
    623             /* Check the nonce first. */
    624             if ( !check_admin_referer( 'bp_wire_delete_link' ) )
    625                 return false;
    626 
    627             if ( !groups_delete_wire_post( $wire_message_id, $bp->groups->table_name_wire ) )
    628                 bp_core_add_message( __('There was an error deleting the wire message.', 'buddypress'), 'error' );
    629             else
    630                 bp_core_add_message( __('Wire message successfully deleted.', 'buddypress') );
    631 
    632             if ( !strpos( wp_get_referer(), $bp->wire->slug ) )
    633                 bp_core_redirect( bp_get_group_permalink( $bp->groups->current_group ) );
    634             else
    635                 bp_core_redirect( bp_get_group_permalink( $bp->groups->current_group ) . $bp->wire->slug );
    636 
    637         } else if ( ( !$wire_action || 'latest' == $bp->action_variables[1] ) ) {
    638             bp_core_load_template( apply_filters( 'groups_template_group_wire', 'groups/single/wire' ) );
    639         } else {
    640             bp_core_load_template( apply_filters( 'groups_template_group_home', 'groups/single/home' ) );
    641564        }
    642565    }
     
    10921015            <td class="no"><input type="radio" name="notifications[notification_groups_group_updated]" value="no" <?php if ( 'no' == get_usermeta( $current_user->id, 'notification_groups_group_updated') ) { ?>checked="checked" <?php } ?>/></td>
    10931016        </tr>
    1094         <?php if ( function_exists('bp_wire_install') ) { ?>
    1095         <tr>
    1096             <td></td>
    1097             <td><?php _e( 'A member posts on the wire of a group you belong to', 'buddypress' ) ?></td>
    1098             <td class="yes"><input type="radio" name="notifications[notification_groups_wire_post]" value="yes" <?php if ( !get_usermeta( $current_user->id, 'notification_groups_wire_post') || 'yes' == get_usermeta( $current_user->id, 'notification_groups_wire_post') ) { ?>checked="checked" <?php } ?>/></td>
    1099             <td class="no"><input type="radio" name="notifications[notification_groups_wire_post]" value="no" <?php if ( 'no' == get_usermeta( $current_user->id, 'notification_groups_wire_post') ) { ?>checked="checked" <?php } ?>/></td>
    1100         </tr>
    1101         <?php } ?>
    11021017        <tr>
    11031018            <td></td>
     
    13901305    bp_activity_set_action( $bp->groups->id, 'created_group', __( 'Created a group', 'buddypress' ) );
    13911306    bp_activity_set_action( $bp->groups->id, 'joined_group', __( 'Joined a group', 'buddypress' ) );
    1392     bp_activity_set_action( $bp->groups->id, 'new_wire_post', __( 'New group wire post', 'buddypress' ) );
    13931307    bp_activity_set_action( $bp->groups->id, 'new_forum_topic', __( 'New group forum topic', 'buddypress' ) );
    13941308    bp_activity_set_action( $bp->groups->id, 'new_forum_post', __( 'New group forum post', 'buddypress' ) );
     
    14311345    groups_update_groupmeta( $group_id, 'last_activity', time() );
    14321346}
    1433 add_action( 'groups_deleted_wire_post', 'groups_update_last_activity' );
    1434 add_action( 'groups_new_wire_post', 'groups_update_last_activity' );
    14351347add_action( 'groups_joined_group', 'groups_update_last_activity' );
    14361348add_action( 'groups_leave_group', 'groups_update_last_activity' );
     
    15791491        $group = new BP_Groups_Group;
    15801492
    1581     if ( $creator_id ) {
     1493    if ( $creator_id )
    15821494        $group->creator_id = $creator_id;
    1583     } else {
     1495    else
    15841496        $group->creator_id = $bp->loggedin_user->id;
    1585     }
    15861497
    15871498    if ( isset( $name ) )
     
    20121923
    20131924    return $activity_id;
    2014 }
    2015 
    2016 /*** Group Wire [DEPRECATED] ****************************************************************/
    2017 
    2018 function groups_new_wire_post( $group_id, $content ) {
    2019     global $bp;
    2020 
    2021     if ( !function_exists( 'bp_wire_new_post' ) )
    2022         return false;
    2023 
    2024     if ( $wire_post = bp_wire_new_post( $group_id, $content, 'groups' ) ) {
    2025 
    2026         /* Post an email notification if settings allow */
    2027         require_once ( BP_PLUGIN_DIR . '/bp-groups/bp-groups-notifications.php' );
    2028         groups_notification_new_wire_post( $group_id, $wire_post->id );
    2029 
    2030         /* Record this in activity streams */
    2031         $activity_content = sprintf( __( '%s wrote on the wire of the group %s:', 'buddypress'), bp_core_get_userlink( $bp->loggedin_user->id ), '<a href="' . bp_get_group_permalink( $bp->groups->current_group ) . '">' . attribute_escape( $bp->groups->current_group->name ) . '</a>' );
    2032         $activity_content .= '<blockquote>' . bp_create_excerpt( $content ) . '</blockquote>';
    2033 
    2034         groups_record_activity( array(
    2035             'content' => apply_filters( 'groups_activity_new_wire_post', $activity_content ),
    2036             'primary_link' => apply_filters( 'groups_activity_new_wire_post_primary_link', bp_get_group_permalink( $bp->groups->current_group ) ),
    2037             'component_action' => 'new_wire_post',
    2038             'item_id' => $bp->groups->current_group->id,
    2039             'secondary_item_id' => $wire_post->item_id
    2040         ) );
    2041 
    2042         do_action( 'groups_new_wire_post', $group_id, $wire_post->id );
    2043 
    2044         return true;
    2045     }
    2046 
    2047     return false;
    2048 }
    2049 
    2050 function groups_delete_wire_post( $wire_post_id, $table_name ) {
    2051     if ( bp_wire_delete_post( $wire_post_id, 'groups', $table_name ) ) {
    2052         /* Delete the activity stream item */
    2053         if ( function_exists( 'bp_activity_delete_by_item_id' ) ) {
    2054             bp_activity_delete_by_item_id( array( 'item_id' => $wire_post_id, 'component_name' => 'groups', 'component_action' => 'new_wire_post' ) );
    2055         }
    2056 
    2057         do_action( 'groups_deleted_wire_post', $wire_post_id );
    2058         return true;
    2059     }
    2060 
    2061     return false;
    20621925}
    20631926
     
    27162579
    27172580// List actions to clear super cached pages on, if super cache is installed
    2718 add_action( 'groups_new_wire_post', 'bp_core_clear_cache' );
    2719 add_action( 'groups_deleted_wire_post', 'bp_core_clear_cache' );
    27202581add_action( 'groups_join_group', 'bp_core_clear_cache' );
    27212582add_action( 'groups_leave_group', 'bp_core_clear_cache' );
  • trunk/bp-groups/bp-groups-classes.php

    r2339 r2343  
    205205        }
    206206
    207         // Delete the wire posts for this group if the wire is installed
    208         if ( function_exists('bp_wire_install') ) {
    209             BP_Wire_Post::delete_all_for_item( $this->id, $bp->groups->table_name_wire );
    210         }
     207        do_action( 'bp_groups_delete_group', $this );
    211208
    212209        // Finally remove the group entry from the DB
  • trunk/bp-groups/bp-groups-notifications.php

    r2120 r2343  
    11<?php
    2 
    3 function groups_notification_new_wire_post( $group_id, $wire_post_id ) {
    4     global $bp;
    5 
    6     if ( !isset( $_POST['wire-post-email-notify'] ) )
    7         return false;
    8 
    9     $wire_post = new BP_Wire_Post( $bp->groups->table_name_wire, $wire_post_id );
    10     $group = new BP_Groups_Group( $group_id, false, true );
    11 
    12     $poster_name = bp_core_get_user_displayname( $wire_post->user_id );
    13     $poster_profile_link = bp_core_get_user_domain( $wire_post->user_id );
    14 
    15     $subject = '[' . get_blog_option( BP_ROOT_BLOG, 'blogname' ) . '] ' . sprintf( __( 'New wire post on group: %s', 'buddypress' ), stripslashes( attribute_escape( $group->name ) ) );
    16 
    17     foreach ( $group->user_dataset as $user ) {
    18         if ( 'no' == get_usermeta( $user->user_id, 'notification_groups_wire_post' ) ) continue;
    19 
    20         $ud = get_userdata( $user->user_id );
    21 
    22         // Set up and send the message
    23         $to = $ud->user_email;
    24 
    25         $wire_link = site_url( $bp->groups->slug . '/' . $group->slug . '/wire/' );
    26         $group_link = site_url( $bp->groups->slug . '/' . $group->slug . '/' );
    27         $settings_link = bp_core_get_user_domain( $user->user_id ) . 'settings/notifications/';
    28 
    29         $message = sprintf( __(
    30 '%s posted on the wire of the group "%s":
    31 
    32 "%s"
    33 
    34 To view the group wire: %s
    35 
    36 To view the group home: %s
    37 
    38 To view %s\'s profile page: %s
    39 
    40 ---------------------
    41 ', 'buddypress' ), $poster_name, stripslashes( attribute_escape( $group->name ) ), stripslashes($wire_post->content), $wire_link, $group_link, $poster_name, $poster_profile_link );
    42 
    43         $message .= sprintf( __( 'To disable these notifications please log in and go to: %s', 'buddypress' ), $settings_link );
    44 
    45         // Send it
    46         wp_mail( $to, $subject, $message );
    47 
    48         unset( $message, $to );
    49     }
    50 }
    512
    523function groups_notification_group_updated( $group_id ) {
  • trunk/bp-groups/bp-groups-templatetags.php

    r2339 r2343  
    711711    }
    712712
    713 function bp_group_show_wire_setting( $group = false ) {
    714     global $groups_template;
    715 
    716     if ( !$group )
    717         $group =& $groups_template->group;
    718 
    719     if ( $group->enable_wire )
    720         echo ' checked="checked"';
    721 }
    722 
    723 function bp_group_is_wire_enabled( $group = false ) {
    724     global $groups_template;
    725 
    726     if ( !$group )
    727         $group =& $groups_template->group;
    728 
    729     if ( $group->enable_wire )
    730         return true;
    731 
    732     return false;
    733 }
    734 
    735713function bp_group_forum_permalink( $deprecated = false ) {
    736714    echo bp_get_group_forum_permalink();
     
    16131591        global $bp;
    16141592        return apply_filters( 'bp_get_new_group_news', $bp->groups->current_group->news );
    1615     }
    1616 
    1617 function bp_new_group_enable_wire() {
    1618     echo bp_get_new_group_enable_wire();
    1619 }
    1620     function bp_get_new_group_enable_wire() {
    1621         global $bp;
    1622         return (int) apply_filters( 'bp_get_new_group_enable_wire', $bp->groups->current_group->enable_wire );
    16231593    }
    16241594
  • trunk/bp-xprofile.php

    r2333 r2343  
    1010require ( BP_PLUGIN_DIR . '/bp-xprofile/bp-xprofile-filters.php' );
    1111require ( BP_PLUGIN_DIR . '/bp-xprofile/bp-xprofile-templatetags.php' );
    12 require ( BP_PLUGIN_DIR . '/bp-xprofile/bp-xprofile-notifications.php' );
    1312require ( BP_PLUGIN_DIR . '/bp-xprofile/bp-xprofile-cssjs.php' );
    1413
     
    9089    dbDelta($sql);
    9190
    92     if ( function_exists('bp_wire_install') )
    93         xprofile_wire_install();
     91    do_action( 'xprofile_install' );
    9492
    9593    update_site_option( 'bp-xprofile-db-version', BP_XPROFILE_DB_VERSION );
    96 }
    97 
    98 function xprofile_wire_install() {
    99     global $bp, $wpdb;
    100 
    101     if ( !empty($wpdb->charset) )
    102         $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
    103 
    104     $sql[] = "CREATE TABLE {$bp->profile->table_name_wire} (
    105                id bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
    106                item_id bigint(20) NOT NULL,
    107                user_id bigint(20) NOT NULL,
    108                parent_id bigint(20) NOT NULL,
    109                content longtext NOT NULL,
    110                date_posted datetime NOT NULL,
    111                KEY item_id (item_id),
    112                KEY user_id (user_id),
    113                KEY parent_id (parent_id)
    114                ) {$charset_collate};";
    115 
    116     require_once( ABSPATH . 'wp-admin/upgrade-functions.php' );
    117     dbDelta($sql);
    11894}
    11995
     
    146122    /* Set the support field type ids */
    147123    $bp->profile->field_types = apply_filters( 'xprofile_field_types', array( 'textbox', 'textarea', 'radio', 'checkbox', 'selectbox', 'multiselectbox', 'datebox' ) );
    148 
    149     if ( function_exists( 'bp_wire_install' ) )
    150         $bp->profile->table_name_wire = $wpdb->base_prefix . 'bp_xprofile_wire';
    151124
    152125    do_action( 'xprofile_setup_globals' );
     
    420393}
    421394
    422 /**
    423  * xprofile_screen_notification_settings()
    424  *
    425  * Loads the notification settings for the xprofile component.
    426  * Settings are hooked into the function: bp_core_screen_notification_settings_content()
    427  * in bp-core/bp-core-settings.php
    428  *
    429  * @package BuddyPress Xprofile
    430  * @global $current_user WordPress global variable containing current logged in user information
    431  */
    432 function xprofile_screen_notification_settings() {
    433     global $current_user; ?>
    434     <?php if ( function_exists('bp_wire_install') ) { ?>
    435     <table class="notification-settings" id="profile-notification-settings">
    436         <tr>
    437             <th class="icon"></th>
    438             <th class="title"><?php _e( 'Profile', 'buddypress' ) ?></th>
    439             <th class="yes"><?php _e( 'Yes', 'buddypress' ) ?></th>
    440             <th class="no"><?php _e( 'No', 'buddypress' )?></th>
    441         </tr>
    442 
    443         <tr>
    444             <td></td>
    445             <td><?php _e( 'A member posts on your wire', 'buddypress' ) ?></td>
    446             <td class="yes"><input type="radio" name="notifications[notification_profile_wire_post]" value="yes" <?php if ( !get_usermeta( $current_user->id, 'notification_profile_wire_post' ) || 'yes' == get_usermeta( $current_user->id, 'notification_profile_wire_post' ) ) { ?>checked="checked" <?php } ?>/></td>
    447             <td class="no"><input type="radio" name="notifications[notification_profile_wire_post]" value="no" <?php if ( 'no' == get_usermeta( $current_user->id, 'notification_profile_wire_post' ) ) { ?>checked="checked" <?php } ?>/></td>
    448         </tr>
    449 
    450         <?php do_action( 'xprofile_screen_notification_settings' ) ?>
    451     </table>
    452     <?php } ?>
    453 <?php
    454 }
    455 add_action( 'bp_notification_settings', 'xprofile_screen_notification_settings', 1 );
    456 
    457 
    458395/********************************************************************************
    459396 * Action Functions
     
    499436add_action( 'wp', 'xprofile_action_delete_avatar', 3 );
    500437
    501 /**
    502  * xprofile_action_new_wire_post()
    503  *
    504  * Posts a new wire post to the users profile wire.
    505  *
    506  * @package BuddyPress XProfile
    507  * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
    508  * @uses bp_wire_new_post() Adds a new wire post to a specific wire using the ID of the item passed and the table name.
    509  * @uses bp_core_add_message() Adds an error/success message to the session to be displayed on the next page load.
    510  * @uses bp_core_redirect() Safe redirects to a new page using the wp_redirect() function
    511  */
    512 function xprofile_action_new_wire_post() {
    513     global $bp;
    514 
    515     if ( $bp->current_component != $bp->wire->slug )
    516         return false;
    517 
    518     if ( 'post' != $bp->current_action )
    519         return false;
    520 
    521     /* Check the nonce */
    522     if ( !check_admin_referer( 'bp_wire_post' ) )
    523         return false;
    524 
    525     if ( !$wire_post = bp_wire_new_post( $bp->displayed_user->id, $_POST['wire-post-textarea'], $bp->profile->id ) ) {
    526         bp_core_add_message( __( 'Wire message could not be posted. Please try again.', 'buddypress' ), 'error' );
    527     } else {
    528         bp_core_add_message( __( 'Wire message successfully posted.', 'buddypress' ) );
    529 
    530         /* Record the notification for the reciever if it's not on their own wire */
    531         if ( !bp_is_home() )
    532             bp_core_add_notification( $bp->loggedin_user->id, $bp->displayed_user->id, $bp->profile->id, 'new_wire_post' );
    533 
    534         /* Record this on the poster's activity screen */
    535         if ( ( $wire_post->item_id == $bp->loggedin_user->id && $wire_post->user_id == $bp->loggedin_user->id ) || ( $wire_post->item_id == $bp->displayed_user->id && $wire_post->user_id == $bp->displayed_user->id ) ) {
    536             $from_user_link = bp_core_get_userlink($wire_post->user_id);
    537             $content = sprintf( __('%s wrote on their own wire', 'buddypress'), $from_user_link ) . ': <span class="time-since">%s</span>';
    538             $primary_link = bp_core_get_userlink( $wire_post->user_id, false, true );
    539         } else if ( ( $wire_post->item_id != $bp->loggedin_user->id && $wire_post->user_id == $bp->loggedin_user->id ) || ( $wire_post->item_id != $bp->displayed_user->id && $wire_post->user_id == $bp->displayed_user->id ) ) {
    540             $from_user_link = bp_core_get_userlink($wire_post->user_id);
    541             $to_user_link = bp_core_get_userlink( $wire_post->item_id, false, false, true, true );
    542             $content = sprintf( __('%s wrote on %s wire', 'buddypress'), $from_user_link, $to_user_link ) . ': <span class="time-since">%s</span>';
    543             $primary_link = bp_core_get_userlink( $wire_post->item_id, false, true );
    544         }
    545 
    546         $content .= '<blockquote>' . bp_create_excerpt($wire_post->content) . '</blockquote>';
    547 
    548         /* Now write the values */
    549         xprofile_record_activity( array(
    550             'user_id' => $bp->loggedin_user->id,
    551             'content' => apply_filters( 'xprofile_activity_new_wire_post', $content, &$wire_post ),
    552             'primary_link' => apply_filters( 'xprofile_activity_new_wire_post_primary_link', $primary_link ),
    553             'component_action' => 'new_wire_post',
    554             'item_id' => $wire_post->id
    555         ) );
    556 
    557         do_action( 'xprofile_new_wire_post', &$wire_post );
    558     }
    559 
    560     if ( !strpos( wp_get_referer(), $bp->wire->slug ) ) {
    561         bp_core_redirect( $bp->displayed_user->domain );
    562     } else {
    563         bp_core_redirect( $bp->displayed_user->domain . $bp->wire->slug );
    564     }
    565 }
    566 add_action( 'wp', 'xprofile_action_new_wire_post', 3 );
    567 
    568 /**
    569  * xprofile_action_delete_wire_post()
    570  *
    571  * Deletes a wire post from the users profile wire.
    572  *
    573  * @package BuddyPress XProfile
    574  * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
    575  * @uses bp_wire_delete_post() Deletes a wire post for a specific wire using the ID of the item passed and the table name.
    576  * @uses xprofile_delete_activity() Deletes an activity item for the xprofile component and a particular user.
    577  * @uses bp_core_add_message() Adds an error/success message to the session to be displayed on the next page load.
    578  * @uses bp_core_redirect() Safe redirects to a new page using the wp_redirect() function
    579  */
    580 function xprofile_action_delete_wire_post() {
    581     global $bp;
    582 
    583     if ( $bp->current_component != $bp->wire->slug )
    584         return false;
    585 
    586     if ( $bp->current_action != 'delete' )
    587         return false;
    588 
    589     if ( !check_admin_referer( 'bp_wire_delete_link' ) )
    590         return false;
    591 
    592     $wire_post_id = $bp->action_variables[0];
    593 
    594     if ( bp_wire_delete_post( $wire_post_id, $bp->profile->slug, $bp->profile->table_name_wire ) ) {
    595         bp_core_add_message( __('Wire message successfully deleted.', 'buddypress') );
    596 
    597         /* Delete the post from activity streams */
    598         xprofile_delete_activity( array( 'item_id' => $wire_post_id, 'component_action' => 'new_wire_post' ) );
    599 
    600         do_action( 'xprofile_delete_wire_post', $wire_post_id );
    601     } else {
    602         bp_core_add_message( __('Wire post could not be deleted, please try again.', 'buddypress'), 'error' );
    603     }
    604 
    605     if ( !strpos( wp_get_referer(), $bp->wire->slug ) ) {
    606         bp_core_redirect( $bp->displayed_user->domain );
    607     } else {
    608         bp_core_redirect( $bp->displayed_user->domain. $bp->wire->slug );
    609     }
    610 }
    611 add_action( 'wp', 'xprofile_action_delete_wire_post', 3 );
    612 
    613 
    614438/********************************************************************************
    615439 * Activity & Notification Functions
     
    628452    bp_activity_set_action( $bp->profile->id, 'new_member', __( 'New member registered', 'buddypress' ) );
    629453    bp_activity_set_action( $bp->profile->id, 'updated_profile', __( 'Updated Profile', 'buddypress' ) );
    630     bp_activity_set_action( $bp->profile->id, 'new_wire_post', __( 'New profile wire post', 'buddypress' ) );
    631454
    632455    do_action( 'xprofile_register_activity_actions' );
     
    696519
    697520    return apply_filters( 'xprofile_register_activity_action', bp_activity_set_action( $bp->profile->id, $key, $value ), $key, $value );
    698 }
    699 
    700 /**
    701  * xprofile_format_notifications()
    702  *
    703  * Format notifications into something that can be read and displayed
    704  *
    705  * @package BuddyPress Xprofile
    706  * @param $item_id The ID of the specific item for which the activity is recorded (could be a wire post id, user id etc)
    707  * @param $action The component action name e.g. 'new_wire_post' or 'updated_profile'
    708  * @param $total_items The total number of identical notification items (used for grouping)
    709  * @global $bp The global BuddyPress settings variable created in bp_core_setup_globals()
    710  * @uses bp_core_global_user_fullname() Returns the display name for the user
    711  * @return The readable notification item
    712  */
    713 function xprofile_format_notifications( $action, $item_id, $secondary_item_id, $total_items ) {
    714     global $bp;
    715 
    716     if ( 'new_wire_post' == $action ) {
    717         if ( (int)$total_items > 1 ) {
    718             return apply_filters( 'bp_xprofile_multiple_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( 'You have %d new posts on your wire', 'buddypress' ), (int)$total_items ) . '</a>', $total_items );
    719         } else {
    720             $user_fullname = bp_core_get_user_displayname( $item_id );
    721             return apply_filters( 'bp_xprofile_single_new_wire_post_notification', '<a href="' . $bp->loggedin_user->domain . $bp->wire->slug . '" title="' . __( 'Wire', 'buddypress' ) . '">' . sprintf( __( '%s posted on your wire', 'buddypress' ), $user_fullname ) . '</a>', $user_fullname );
    722         }
    723     }
    724 
    725     do_action( 'xprofile_format_notifications', $action, $item_id, $secondary_item_id, $total_items );
    726 
    727     return false;
    728521}
    729522
     
    1089882
    1090883    bp_core_delete_notifications_for_user_by_type( $bp->loggedin_user->id, $bp->profile->id, 'new_at_mention' );
    1091     bp_core_delete_notifications_for_user_by_type( $bp->loggedin_user->id, $bp->profile->id, 'new_wire_post' );
    1092 }
    1093 add_action( 'bp_wire_screen_latest', 'xprofile_remove_screen_notifications' );
     884}
    1094885add_action( 'bp_activity_screen_my_activity', 'xprofile_remove_screen_notifications' );
    1095886add_action( 'bp_activity_screen_single_activity_permalink', 'xprofile_remove_screen_notifications' );
Note: See TracChangeset for help on using the changeset viewer.