Sha256: 4c44716d285f474c20fcdfe09e5aef234e0aa1aa887a7f89788ada01fc881c42

Contents?: true

Size: 1.85 KB

Versions: 10

Compression:

Stored size: 1.85 KB

Contents

var React = require('react');
var Mui = require('material-ui');
var Paper = Mui.Paper;
var NutellaMixin = require('./NutellaMixin');
var iOSMixin = require('./iOSMixin');
var $ = require('jquery');

/**
 * @prop channel
 */
var Channel = React.createClass({

    mixins: [NutellaMixin, iOSMixin],

    componentDidMount: function() {
        // Font-size adaptation based on card width
        $('.text-fit').each(function() {
            $(this).css('font-size', '2em');
            while( $(this).width() > $('.name-wrapper').width() - 10 ) {
                $(this).css('font-size', (parseInt($(this).css('font-size')) - 1) + "px" );
            }
        });
    },

    handleClick: function() {
        this.props.onSetPlaying(this.props.chId);
    },

    render: function() {

        var style = {
            backgroundImage: 'url(' + this.props.channel.screenshot + ')',
            backgroundSize: '100% 100%'
        };

        var iconStyle = {
            backgroundColor: this.props.channel.icon
        };

        var border = this.props.playing ? {
            outline: 'solid 5px rgba(255,255,0,0.5)'
        } : null;

        return (
            <Paper className='channel' style={style} ref='channelRef' onTouchTap={this.handleClick} >

                <div className='channel-div' style={border}>

                    <div className='channel-caption'>

                        <div className='icon-name-wrapper'>

                            <div className='channel-icon' ref='channelIcon' style={iconStyle} > </div>

                            <div className='name-wrapper'>
                                <span className='channel-name text-fit'>{this.props.channel.name}</span>
                            </div>

                        </div>

                    </div>

                </div>

            </Paper>);

    }

});

module.exports = Channel;

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
nutella_framework-0.6.17 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.16 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.15 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.13 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.12 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.11 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.10 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.9 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.8 framework_components/roomcast-main-app/src/app/components/app/Channel.js
nutella_framework-0.6.7 framework_components/roomcast-main-app/src/app/components/app/Channel.js