diff options
author | Cédric Bonhomme <cedric@cedricbonhomme.org> | 2016-03-02 08:25:52 +0100 |
---|---|---|
committer | Cédric Bonhomme <cedric@cedricbonhomme.org> | 2016-03-02 08:25:52 +0100 |
commit | b32ca6c0f5968f5e9f59847db5012e3ef7f98631 (patch) | |
tree | 83d6bd430c56ae552acb9577a53f0a2c9fbb7052 /src/web/js/components/RightPanel.react.js | |
parent | minor update to the navbar (diff) | |
download | newspipe-b32ca6c0f5968f5e9f59847db5012e3ef7f98631.tar.gz newspipe-b32ca6c0f5968f5e9f59847db5012e3ef7f98631.tar.bz2 newspipe-b32ca6c0f5968f5e9f59847db5012e3ef7f98631.zip |
Code update. Some problems with CSRF token on Chromium...
Diffstat (limited to 'src/web/js/components/RightPanel.react.js')
-rw-r--r-- | src/web/js/components/RightPanel.react.js | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/src/web/js/components/RightPanel.react.js b/src/web/js/components/RightPanel.react.js index 39b06f38..6005e954 100644 --- a/src/web/js/components/RightPanel.react.js +++ b/src/web/js/components/RightPanel.react.js @@ -35,6 +35,7 @@ var PanelMixin = { </Button>); } btn_grp = (<ButtonGroup bsSize="small"> + {this.getExtraButton()} {edit_button} {rem_button} </ButtonGroup>); @@ -169,13 +170,28 @@ var Article = React.createClass({ ], obj_type: 'article', getTitle: function() {return this.props.obj.title;}, + getExtraButton: function() { + if(!this.props.obj.readability_available) { + return null; + } + return (<Button id="readability-reload" onClick={this.reloadParsed} + active={this.props.obj.readability_parsed}> + <img src="/static/img/readability.png" /> + </Button>); + }, getBody: function() { return (<div className="panel-body"> {this.getCore()} - <div dangerouslySetInnerHTML={ + <div id="article-content" dangerouslySetInnerHTML={ {__html: this.props.obj.content}} /> </div>); }, + reloadParsed: function() { + if(this.props.obj.readability_available + && !this.props.obj.readability_parsed) { + RightPanelActions.loadArticle(this.props.obj.id, true, true); + } + }, }); var Feed = React.createClass({ @@ -188,10 +204,13 @@ var Feed = React.createClass({ {'title': 'Feed link', 'type': 'link', 'key': 'link'}, {'title': 'Site link', 'type': 'link', 'key': 'site_link'}, {'title': 'Enabled', 'type': 'bool', 'key': 'enabled'}, + {'title': 'Auto Readability', + 'type': 'bool', 'key': 'readability_auto_parse'}, {'title': 'Filters', 'type': 'ignore', 'key': 'filters'}, {'title': 'Category', 'type': 'ignore', 'key': 'category_id'}, ], getTitle: function() {return this.props.obj.title;}, + getExtraButton: function() {return null;}, getFilterRow: function(i, filter) { return (<dd key={'d' + i + '-' + this.props.obj.id} className="input-group filter-row"> @@ -317,8 +336,6 @@ var Feed = React.createClass({ <dd><JarrTime stamp={this.props.obj.last_stamp} text={this.props.obj.last_retrieved} /> </dd> - <dt>Number of articles</dt> - <dd>{this.props.obj.nb_articles}</dd> </dl> {this.getErrorFields()} {this.getCategorySelect()} @@ -353,6 +370,7 @@ var Category = React.createClass({ if(this.props.obj.id != 0) {return true;} else {return false;} }, + getExtraButton: function () {return null;}, isRemovable: function() {return this.isEditable();}, obj_type: 'category', fields: [{'title': 'Category name', 'type': 'string', 'key': 'name'}], @@ -423,9 +441,9 @@ var RightPanel = React.createClass({ key={this.state.category.id} />); } - return (<Col id="right-panel" xsOffset={4} smOffset={4} - mdOffset={7} lgOffset={6} - xs={8} sm={8} md={5} lg={6}> + return (<Col id="right-panel" xsHidden + smOffset={4} mdOffset={7} lgOffset={6} + sm={8} md={5} lg={6}> {breadcrum} {cntnt} </Col> |