Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade react #204

Closed
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Upgrade react (1 of X)
Run react-codemod/transforms/class.js
Andrea Bedini committed Jun 3, 2016
commit 1d29ae8321487f6de928c3bb667af931a2c74b94
6 changes: 3 additions & 3 deletions templates/components/badge.jsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
var React = require('react');


var Badge = React.createClass({
render: function() {
class Badge extends React.Component {
render() {
var badge = this.props.badge,
slug = "/v/#/badges/" + badge.slug;
return (
@@ -14,6 +14,6 @@ var Badge = React.createClass({
</div>
);
}
});
}

module.exports = Badge;
6 changes: 3 additions & 3 deletions templates/components/badgeInstance.jsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
var React = require('react');


var BadgeInstance = React.createClass({
render: function() {
class BadgeInstance extends React.Component {
render() {
var badgeInstance = this.props.badge,
doiRe = /(10\.\d{3}\d+)\/(.*)\b/,
m = doiRe.exec(badgeInstance.evidenceUrl),
@@ -19,6 +19,6 @@ var BadgeInstance = React.createClass({
</div>
);
}
});
}

module.exports = BadgeInstance;
30 changes: 18 additions & 12 deletions templates/components/badgeInstanceList.jsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
var React = require('react'),
BadgeInstance = require('./badgeInstance.jsx');

var BadgeInstanceList = React.createClass({
loadBadgesFromServer: function() {
class BadgeInstanceList extends React.Component {
constructor(props, context) {
super(props, context);
this.loadBadgesFromServer = this.loadBadgesFromServer.bind(this);
this.state = {data: [], url:props.url};
}

loadBadgesFromServer() {
fetch(this.state.url)
.then((response) => {
if (response.status >= 400) {
@@ -13,17 +19,17 @@ var BadgeInstanceList = React.createClass({
.then((badges) => {
this.setState({data: badges});
});
},
componentWillReceiveProps: function(nextProps) {
}

componentWillReceiveProps(nextProps) {
this.setState({ url: nextProps.url, data:[] }, this.loadBadgesFromServer);
},
getInitialState: function() {
return {data: [], url:this.props.url};
},
componentDidMount: function() {
}

componentDidMount() {
this.loadBadgesFromServer();
},
render: function() {
}

render() {
var badgeNodes = this.state.data.map(function(badge, index) {
return (
<BadgeInstance badge={badge} key={badge.slug}>
@@ -36,6 +42,6 @@ var BadgeInstanceList = React.createClass({
</div>
);
}
})
}

module.exports = BadgeInstanceList;
24 changes: 14 additions & 10 deletions templates/components/badgelist.jsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
var React = require('react'),
Badge = require('./badge.jsx');

var BadgeList = React.createClass({
loadUsersFromServer: function() {
class BadgeList extends React.Component {
constructor(props, context) {
super(props, context);
this.state = {data: []};
}

loadUsersFromServer() {
fetch('/badges')
.then((response) => {
if (response.status >= 400) {
@@ -13,14 +18,13 @@ var BadgeList = React.createClass({
.then((badges) => {
this.setState({data: badges});
});
},
getInitialState: function() {
return {data: []};
},
componentDidMount: function() {
}

componentDidMount() {
this.loadUsersFromServer();
},
render: function() {
}

render() {
var badgeNodes = this.state.data.map(function(badge, index) {
return (
<Badge badge={badge} key={badge.id}>
@@ -33,6 +37,6 @@ var BadgeList = React.createClass({
</div>
);
}
})
}

module.exports = BadgeList;
6 changes: 3 additions & 3 deletions templates/components/footer.jsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
var React = require('react');


var Footer = React.createClass({
render: function() {
class Footer extends React.Component {
render() {
return (
<div className="footer l-box is-center">
<p>This work is a collaboration with publishers <a href="http://www.biomedcentral.com/">BioMed Central</a> (BMC), <a href="http://www.ubiquitypress.com/">Ubiquity Press</a> (UP) and the <a href="http://www.plos.org/">Public Library of Science</a> (PLoS); the biomedical research foundation, <a href="http://www.wellcome.ac.uk/">The Wellcome Trust</a>; the software and technology firm <a href="http://www.digital-science.com/">Digital Science</a>; the registry of unique researcher identifiers, <a href="http://orcid.org/">ORCID</a>; and the <a href="http://mozillascience.org/">Mozilla Science Lab</a>.</p>
</div>
);
}
});
}

module.exports = Footer;
6 changes: 3 additions & 3 deletions templates/components/header.jsx
Original file line number Diff line number Diff line change
@@ -3,8 +3,8 @@ var React = require('react'),



var Header = React.createClass({
render: function() {
class Header extends React.Component {
render() {
return (
<div className="header">
<div className="home-menu pure-menu pure-menu-horizontal pure-menu-fixed">
@@ -19,6 +19,6 @@ var Header = React.createClass({
</div>
);
}
});
}

module.exports = Header;
6 changes: 3 additions & 3 deletions templates/components/page.jsx
Original file line number Diff line number Diff line change
@@ -5,8 +5,8 @@ var React = require('react'),



var Page = React.createClass({
render: function() {
class Page extends React.Component {
render() {
var splash;

if (this.props.splash){
@@ -39,6 +39,6 @@ var Page = React.createClass({
</div>
);
}
});
}

module.exports = Page;
11 changes: 6 additions & 5 deletions templates/pages/404.jsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
var React = require('react'),
Page = require('../components/page.jsx');

var fourOhFour = React.createClass({
componentDidMount: function() {
class fourOhFour extends React.Component {
componentDidMount() {
document.title = "PaperBadger: Page Not Found";
},
render: function() {
}

render() {
return (
<Page>
<div>Page not found</div>
</Page>
);
}
});
}

module.exports = fourOhFour;
11 changes: 6 additions & 5 deletions templates/pages/about.jsx
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
var React = require('react'),
Page = require('../components/page.jsx');

var About = React.createClass({
componentDidMount: function() {
class About extends React.Component {
componentDidMount() {
document.title = "About Contributorship Badges";
},
render: function() {
}

render() {
return (
<Page>
<h1>About Contributorship Badges</h1>
@@ -15,6 +16,6 @@ var About = React.createClass({
</Page>
);
}
});
}

module.exports = About;
11 changes: 6 additions & 5 deletions templates/pages/denied.jsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
var React = require('react'),
Page = require('../components/page.jsx');

var deniedAccess = React.createClass({
componentDidMount: function() {
class deniedAccess extends React.Component {
componentDidMount() {
document.title = "PaperBadger: User denied access";
},
render: function() {
}

render() {
return (
<Page>
<div>You must sign in to ORCID to be able to issue a badge. <a href="/issue">Try again.</a></div>
</Page>
);
}
});
}

module.exports = deniedAccess;
16 changes: 9 additions & 7 deletions templates/pages/home.jsx
Original file line number Diff line number Diff line change
@@ -3,14 +3,16 @@ var React = require('react'),
Page = require('../components/page.jsx'),
BadgeList = require('../components/badgelist.jsx');

var Home = React.createClass({
componentDidMount: function() {
class Home extends React.Component {
componentDidMount() {
document.title = "Contributorship Badges";
},
handleClick: function(i){
}

handleClick(i) {
console.log(i);
},
render: function() {
}

render() {
return (
<Page splash>
<h2>Explore Badges</h2>
@@ -126,6 +128,6 @@ var Home = React.createClass({
</Page>
);
}
});
}

module.exports = Home;
25 changes: 15 additions & 10 deletions templates/pages/view.jsx
Original file line number Diff line number Diff line change
@@ -5,13 +5,20 @@ var React = require('react'),
doiRe = /\/papers\/(10\.\d{3}\d+)\/([^\/]*)\//,
badgeRe = /\/badges\/([a-z_]*)\b/;

var viewBadges = React.createClass({
componentDidMount: function() {
class viewBadges extends React.Component {
constructor(props, context) {
super(props, context);
this.updateUrl = this.updateUrl.bind(this);
this.state = { };
}

componentDidMount() {
document.title = "Contributorship Badges";
window.onhashchange = this.updateUrl;
this.updateUrl();
},
updateUrl: function(){
}

updateUrl() {
var url = (window.location.href.split('#')[1] || ''),
orcid = orcidRe.exec(url),
doi = doiRe.exec(url),
@@ -25,11 +32,9 @@ var viewBadges = React.createClass({
orcid: orcid,
doi: doi,
badge: badge });
},
getInitialState: function() {
return { };
},
render: function() {
}

render() {
var orcid, badge, doi;
if(this.state.orcid) {
orcid = (<p>Badges for user <a href={ 'http://orcid.org/' + this.state.orcid}>{this.state.orcid}</a></p>);
@@ -51,6 +56,6 @@ var viewBadges = React.createClass({
</Page>
);
}
});
}

module.exports = viewBadges;