Skip to:
Content

BuddyPress.org

Ticket #4955: g.php

File g.php, 2.3 KB (added by boonebgorges, 13 years ago)
Line 
1<?php
2
3/**
4 * Very basic plugin. Uses mostly defaults, but it's still fully functionaly
5 *
6 * Note that settings_screen() and settings_screen_save() power the Create
7 * step, Edit panel (group > admin), and Dashboard panel
8 */
9class BPGE_Test_1 extends BP_Group_Extension {
10        function __construct() {
11                $args = array(
12                        'slug' => 'getest1',
13                        'name' => 'Group Extension Test 1',
14                );
15                parent::init( $args );
16        }
17
18        function display() {
19                echo 'What a cool plugin!';
20        }
21
22        function settings_screen( $group_id ) {
23                $setting = groups_get_groupmeta( $group_id, 'getest1_setting' );
24
25                ?>
26                Save your plugin setting here: <input type="text" name="getest1_setting" value="<?php echo esc_attr( $setting ) ?>" />
27                <?php
28        }
29
30        function settings_screen_save( $group_id ) {
31                $setting = isset( $_POST['getest1_setting'] ) ? $_POST['getest1_setting'] : '';
32                groups_update_groupmeta( $group_id, 'getest1_setting', $setting );
33        }
34
35}
36bp_register_group_extension( 'BPGE_Test_1' );
37
38/**
39 * Some more customization
40 */
41class BPGE_Test_2 extends BP_Group_Extension {
42        function __construct() {
43                $args = array(
44                        'slug' => 'getest2',
45                        'name' => 'Group Extension Test 2',
46                        'nav_item_position' => 105,
47                        'screens' => array(
48                                'edit' => array(
49                                        'name' => 'GE Test 2',
50                                        // Changes the text of the Submit button
51                                        // on the Edit page
52                                        'submit_text' => 'Submit, suckaz',
53                                ),
54                                'create' => array(
55                                        'position' => 100,
56                                ),
57                        ),
58                );
59                parent::init( $args );
60        }
61
62        function display() {
63                echo 'What a cool plugin!';
64        }
65
66        function settings_screen( $group_id ) {
67                $setting = groups_get_groupmeta( $group_id, 'getest2_setting' );
68
69                ?>
70                Save your plugin setting here: <input type="text" name="getest2_setting" value="<?php echo esc_attr( $setting ) ?>" />
71                <?php
72        }
73
74        function settings_screen_save( $group_id ) {
75                $setting = isset( $_POST['getest2_setting'] ) ? $_POST['getest2_setting'] : '';
76                groups_update_groupmeta( $group_id, 'getest2_setting', $setting );
77        }
78
79        /**
80         * Let's say that this plugin's Create tab needs to look a bit different
81         */
82        function create_screen( $group_id ) {
83                $setting = groups_get_groupmeta( $group_id, 'getest2_setting' );
84
85                ?>
86                Welcome to your new group! You are cool.
87                Save your plugin setting here: <input type="text" name="getest2_setting" value="<?php echo esc_attr( $setting ) ?>" />
88                <?php
89        }
90
91}
92bp_register_group_extension( 'BPGE_Test_2' );