Skip to:
Content

BuddyPress.org

Ticket #6846: 6846.05.patch

File 6846.05.patch, 3.7 KB (added by imath, 9 years ago)
  • src/bp-core/bp-core-avatars.php

    diff --git src/bp-core/bp-core-avatars.php src/bp-core/bp-core-avatars.php
    index b7cfe95..86a1282 100644
    function bp_avatar_is_front_edit() { 
    19361936 * @return bool True to load the Webcam Avatar UI part. False otherwise.
    19371937 */
    19381938function bp_avatar_use_webcam() {
    1939         global $is_safari, $is_IE;
     1939        global $is_safari, $is_IE, $is_chrome;
    19401940
    19411941        /**
    19421942         * Do not use the webcam feature for mobile devices
    function bp_avatar_use_webcam() { 
    19511951         *
    19521952         * @see  http://caniuse.com/#feat=stream
    19531953         */
    1954         if ( $is_safari || $is_IE ) {
     1954        if ( $is_safari || $is_IE || ( $is_chrome && ! is_ssl() ) ) {
    19551955                return false;
    19561956        }
    19571957
  • src/bp-core/css/avatar.css

    diff --git src/bp-core/css/avatar.css src/bp-core/css/avatar.css
    index 2986dff..45ff387 100644
    div.bp-avatar-nav { 
    170170        text-align: center;
    171171}
    172172
    173 .drag-drop-inside p.drag-drop-info {margin-top: 0;}
     173.drag-drop-inside p.drag-drop-info {
     174        margin-top: 0;
     175}
     176
     177@supports (-ms-accelerator:true) {
     178        .drag-drop-inside p.drag-drop-info {
     179                display: block;
     180        }
     181}
    174182
    175183#avatar-to-crop {
    176184        margin: 0 auto 20px ;
  • src/bp-core/js/avatar.js

    diff --git src/bp-core/js/avatar.js src/bp-core/js/avatar.js
    index b410204..b27bc21 100644
    window.bp = window.bp || {}; 
    1515
    1616        bp.Avatar = {
    1717                start: function() {
     18                        var self = this;
     19
    1820                        /**
    1921                         * Remove the bp-legacy UI
    2022                         *
    window.bp = window.bp || {}; 
    4244
    4345                        /**
    4446                         * In Administration screens we're using Thickbox
    45                          * We need to make sure to reset the views if it's closed
     47                         * We need to make sure to reset the views if it's closed or opened
    4648                         */
    4749                        $( 'body.wp-admin' ).on( 'tb_unload', '#TB_window', function() {
    48                                 // Reset to the uploader view
    49                                 bp.Avatar.nav.trigger( 'bp-avatar-view:changed', 'upload' );
    50 
    51                                 // Reset to the uploader nav
    52                                 _.each( bp.Avatar.navItems.models, function( model ) {
    53                                         if ( model.id === 'upload' ) {
    54                                                 model.set( { active: 1 } );
    55                                         } else {
    56                                                 model.set( { active: 0 } );
    57                                         }
    58                                 } );
     50                                self.resetViews();
     51                        } );
     52
     53                        $( 'body.wp-admin' ).on( 'click', '.bp-xprofile-avatar-user-edit', function() {
     54                                self.resetViews();
    5955                        } );
    6056                },
    6157
    window.bp = window.bp || {}; 
    122118                        }
    123119                },
    124120
     121                resetViews: function() {
     122                        // Reset to the uploader view
     123                        this.nav.trigger( 'bp-avatar-view:changed', 'upload' );
     124
     125                        // Reset to the uploader nav
     126                        _.each( this.navItems.models, function( model ) {
     127                                if ( model.id === 'upload' ) {
     128                                        model.set( { active: 1 } );
     129                                } else {
     130                                        model.set( { active: 0 } );
     131                                }
     132                        } );
     133                },
     134
    125135                setupNav: function() {
    126136                        var self = this,
    127137                            initView, activeView;
  • src/bp-core/js/webcam.js

    diff --git src/bp-core/js/webcam.js src/bp-core/js/webcam.js
    index 4e86f1d..16ff039 100644
    window.bp = window.bp || {}; 
    8989                        } else if ( navigator.mozGetUserMedia ) {
    9090                                video.src = stream;
    9191                                video.play();
     92                        } else if ( video.srcObject !== undefined ) {
     93                                video.srcObject = stream;
    9294                        } else if ( window.URL ) {
    9395                                video.src = window.URL.createObjectURL( stream );
    9496                        } else {
    window.bp = window.bp || {}; 
    212214                        bp.WebCam.displayWarning( 'requesting' );
    213215
    214216                        if ( navigator.getUserMedia ) {
    215                                 navigator.getUserMedia( { video:true }, bp.WebCam.gotStream, bp.WebCams.noStream );
     217                                navigator.getUserMedia( { video:true }, bp.WebCam.gotStream, bp.WebCam.noStream );
    216218                        }  else if ( navigator.oGetUserMedia ) {
    217219                                navigator.oGetUserMedia( { video:true }, bp.WebCam.gotStream, bp.WebCam.noStream );
    218220                        } else if ( navigator.mozGetUserMedia ) {