Plugin Directory

Changeset 2149208


Ignore:
Timestamp:
09/01/2019 04:47:54 PM (7 years ago)
Author:
proxymis
Message:

1.03 : better buddypress integration
Better roles mapping

Location:
html5-chat/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • html5-chat/trunk/index.php

    r2143083 r2149208  
    88Author URI: contact@proxymis.com
    99*/
     10
    1011class HtmlChat
    1112{
     
    120121
    121122    function getSrcScript($width='100%', $height='fullscreen') {
    122 
    123123        $roles = wp_get_current_user()->roles;
     124        $role = ($roles) ? $roles[0] : 'user';
    124125        $isAdmin =  in_array('administrator', $roles);
    125126        $currentUser = wp_get_current_user();
     
    128129        $src = self::$scriptUrl;
    129130        $src .= '?url='. urlencode(self::$domain);
    130 
    131131        $cache = time();
    132132
     
    138138            if (function_exists('bp_has_profile')) {
    139139                $src .= '&gender=' . $this->bbGetGenderUser();
    140                 $src .= '&role=' . $this->bbGetTypeUser();
    141140            }
    142141        }
    143         $src.="&width=$width&height=$height&isAdmin=$isAdmin&email=$email&cache=$cache";
     142        $src.="&width=$width&height=$height&isAdmin=$isAdmin&email=$email&cache=$cache&role=$role";
    144143        return  $src;
    145144    }
     
    286285    // buddyPress
    287286    function bbGetGenderUser() {
    288         $gender = '0';
    289         if (bp_has_profile('user_id=' . get_current_user_id())) {
    290             while (bp_profile_groups()) {
    291                 bp_the_profile_group();
    292                 while (bp_profile_fields()) {
    293                     bp_the_profile_field();
    294                     if (bp_field_has_data()) {
    295                         $fieldname = bp_get_the_profile_field_name();
    296                         if($fieldname == self::$genderField) {
    297                             $gender = strip_tags(bp_get_the_profile_field_value());
    298                         }
    299                     }
    300                 }
     287        $gender = 'male';
     288        global $bp;
     289        $possibleSexes = ['gender', 'sex', 'sexe', 'sesso', 'genre', 'genero', 'género', 'sexo', 'seks', 'секс', 'geslacht', 'kind', 'geschlecht', 'płeć', 'sexuellt', 'kön'];
     290        foreach($possibleSexes as $possibleSex) {
     291            $args = array( 'field' => $possibleSex, 'user_id' => bp_loggedin_user_id() );
     292            $gender = bp_get_profile_field_data($args);
     293            if ($gender) {
     294                break;
    301295            }
    302296        }
     
    305299    // buddyPress
    306300    function bbGetTypeUser() {
    307         return bp_get_member_type(get_current_user_id());
     301        $role = bp_get_member_type(bp_loggedin_user_id(), true);
     302        return $role;
    308303    }
    309304
  • html5-chat/trunk/readme.txt

    r2143083 r2149208  
    44Requires at least: 4.5
    55Tested up to: 5.2.2
    6 Stable tag: 1.02
     6Stable tag: 1.03
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    2020Works with buddyPress
    2121* guest or registered users
    22 * video/audio chat
     22* import roles from WP (administrator = admin, author = moderator, dj = contributor, subscriber = user)
     23* video/audio chat made with webrtc, no flash
    2324* many modes such as chat by tab, by window, panels
    2425* many private modes: private, semi private, whispear, exclusive private, call1to1
    25 * many roles features
     26* many other customized roles features
    2627* chat moderations : admin, moderator, djs
    2728* emojis, gifs, avatars, youtube and file uploading
     
    3132* javascript callabcks and REST API
    3233
    33 
    34  
    3534== Installation ==
    3635 
     
    6564== Changelog ==
    6665
    67 = 1.02 =
    68 * Small bugs corrections
    69 * Better autologin
     66= 1.03 =
     67* Better BuddyPress integration
     68* automatic roles: administrator = admin, author = moderator, dj = contributor
Note: See TracChangeset for help on using the changeset viewer.