Skip to:
Content

BuddyPress.org

Ticket #1471: two_functions.txt

File two_functions.txt, 3.7 KB (added by _DorsVenabili, 16 years ago)
Line 
1//Function to show a info frame in the home page, only if you have new notifications
2function new_notifications()
3{
4        global $wpdb, $current_user, $bp;
5        $user_id = $current_user->id;
6        $cont = 0;
7       
8        $groups_is_admins_or_moder = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM wp_bp_groups_members WHERE (user_id = ".$user_id." AND (is_admin = 1 OR is_mod = 1) AND is_banned = 0) ORDER BY id ASC" ) );
9
10                foreach($groups_is_admins_or_moder as $group_is_admins_or_moder)
11                {
12                        $group_id = $group_is_admins_or_moder->group_id;
13                        $group_name = $group_is_admins_or_moder->name;
14                        $group_private_or_hidden = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM wp_bp_groups WHERE (id = ".$group_id.")" ) );
15                       
16                                if(($group_private_or_hidden->status == 'private') || ($group_private_or_hidden->status == 'hidden'))
17                                {
18                                        $creator_id = $group_private_or_hidden->creator_id;
19                                        $group_slug = $group_private_or_hidden->slug;
20                                        $group_name = $group_private_or_hidden->name;
21
22                                        $new_users = $wpdb->get_results( $wpdb->prepare( 'SELECT * FROM wp_bp_groups_members WHERE (group_id = '.$group_id.' AND user_id != '.$creator_id.' AND (is_admin = 0 OR is_mod = 0) AND is_banned = 0 AND is_confirmed = 0 AND inviter_id = 0) ORDER BY id ASC' ) );
23
24
25                                        foreach($new_users as $new_user)
26                                        {
27                                                $cont++;       
28                                        }
29                                }
30                }
31       
32        if ( ($notifications = bp_core_get_notifications_for_user( $bp->loggedin_user->id )) || $cont > 0 ) { ?>
33                       
34                <div id="message-new-requests" class="info">
35                        <br>
36                        <p class="info-new-requests"><?php _e('You have new notifications!','buddypress'); ?>
37                                <a href="<?php echo get_option('home') ?>/notificaciones">
38                                        <?php _e('Click here to see them.','buddypress'); ?>
39                                </a>
40                        </p>
41                </div><?php
42        }
43}
44
45
46//Function to show a info frame in the home page, only if you have new groups invitations
47function new_invitations()
48{
49        global $wpdb, $current_user, $bp;
50        $user_id = $current_user->id;
51        $cont = 0;
52       
53        $groups_private_or_public = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM wp_bp_groups WHERE (creator_id !=".$user_id.")" ) );
54       
55        foreach($groups_private_or_public as $group_private_or_public)
56        {
57                if(($group_private_or_public->status == 'private') || ($group_private_or_public->status == 'public'))
58                {
59                        $creator_id = $group_private_or_public->creator_id;
60                        $group_slug = $group_private_or_public->slug;
61                        $group_id = $group_private_or_public->id;
62                        $group_name = $group_private_or_public->name;
63                        $group_des = $group_private_or_public->description;
64
65                        if($creator_id != $user_id)
66                        {
67                                        $users_invited = $wpdb->get_results( $wpdb->prepare( 'SELECT * FROM wp_bp_groups_members WHERE (group_id = '.$group_id.' AND user_id = '.$user_id.' AND (is_admin = 0 OR is_mod = 0) AND is_banned = 0 AND is_confirmed = 0 AND inviter_id = '.$creator_id.') ORDER BY id ASC' ) );
68
69
70                                        foreach($users_invited as $user_invited)
71                                        {
72                                                $user_invited_group_id = $user_invited->group_id;
73                                                $user_invited_user_id = $user_invited->user_id;
74                                                $user_invited_inviter_id = $user_invited->inviter_id;
75                                               
76                                                $user_requested = $wpdb->get_row( $wpdb->prepare( 'SELECT * FROM wp_bp_groups_members WHERE (group_id = '.$user_invited_group_id.' AND user_id = '.$user_invited_user_id.' AND inviter_id = 0) ORDER BY id ASC' ) );
77                                               
78                                                if($user_requested->id == '')
79                                                {
80                                                        $cont++;
81                                                       
82                                                }       
83                                        }
84                        }
85                       
86                }
87        }
88        if ( $cont > 0 ) { ?>
89                       
90                <div id="message-new-requests" class="info">
91                        <br>
92                        <p class="info-new-requests"><?php _e('You have new group invitations!','buddypress'); ?>
93                                <a href="<?php echo get_option('home') ?>/members/<?php echo $current_user->user_login; ?>/groups/invites">
94                                        <?php _e('Click here to see them.','buddypress'); ?>
95                                </a>
96                        </p>
97                </div><?php
98        }
99       
100}