Skip to content

Instantly share code, notes, and snippets.

@gon250
Created October 13, 2015 13:26
Show Gist options
  • Save gon250/399b5dae71ca51a75b30 to your computer and use it in GitHub Desktop.
Save gon250/399b5dae71ca51a75b30 to your computer and use it in GitHub Desktop.
import React from 'react';
import Reflux from 'reflux';
import SocialStore from '../stores/socialStore';
import Card from './shared/card.js'
var Social = React.createClass({
mixins: [Reflux.connect(SocialStore, 'socialstore')],
render: function() {
if(this.state.socialstore){
var tempSocialStore = this.state.socialstore
}else{
var tempSocialStore = [];
}
return <div className="android-be-together-section">
<div className="mdl-layout mdl-js-layout mdl-layout--fixed-header">
<header className="mdl-layout__header">
<div className="mdl-layout__header-row">
<span className="mdl-layout-title">Portfolio</span>
</div>
<div className="mdl-layout__tab-bar mdl-js-ripple-effect">
<a href="#scroll-tab-1" className="mdl-layout__tab is-active">Stackoverflow</a>
<a href="#scroll-tab-2" className="mdl-layout__tab">GitHub</a>
<a href="#scroll-tab-3" className="mdl-layout__tab">Twitter</a>
<a href="#scroll-tab-4" className="mdl-layout__tab">Instagram</a>
</div>
</header>
<main className="mdl-layout__content">
<section className="mdl-layout__tab-panel is-active" id="scroll-tab-1">
<div className="page-content">
<div className="content">
{
tempSocialStore.map(function (item){
return <Card title={item.title_description} description={item.summary_description} btnTitle="View" link={item.id_description} />
})
}
</div>
</div>
</section>
<section className="mdl-layout__tab-panel" id="scroll-tab-2">
<div className="page-content">content 2</div>
</section>
<section className="mdl-layout__tab-panel" id="scroll-tab-3">
<div className="page-content">content 3</div>
</section>
<section className="mdl-layout__tab-panel" id="scroll-tab-4">
<div className="page-content">content 4</div>
</section>
</main>
</div>
</div>
}
});
export default Social;
import Reflux from 'reflux';
let SocialActions = Reflux.createActions([
'getStackoverflowFeed',
'getTwitter',
'getGithub',
'getInstagram'
]);
export default SocialActions;
import Reflux from 'reflux';
import $ from 'jquery';
import SocialActions from '../actions/SocialActions';
var SocialStore = Reflux.createStore({
listenables: [SocialActions],
stackoverflowList: [],
twitterList: [],
instagramList: [],
githubList: [],
sourceUrlStackoverflow: 'url-1',
sourceUrlTwitter: 'url-2',
sourceUrlInstagram: 'url-3',
sourceUrlGithub: 'url-4',
init: function(){
this.getStackoverflowFeed(); //First Tab
},
getTwitter: function(){
$.ajax({
url: this.sourceUrlTwitter,
type: 'GET',
cache: false,
context: this,
success: function(data) {
this.twitterList = data.results;
this.trigger(this.twitterList);
},
error: function(){
console.log('There was an error while your request');
}
});
},
getInstagram: function(){
$.ajax({
url: this.sourceUrlInstagram,
type: 'GET',
cache: false,
context: this,
success: function(data) {
this.instagramList = data.results;
this.trigger(this.instagramList);
},
error: function(){
console.log('There was an error while your request');
}
});
},
getGithub: function(){
$.ajax({
url: this.sourceUrlGithub,
type: 'GET',
cache: false,
context: this,
success: function(data) {
this.githubList = data.results;
this.trigger(this.githubList);
},
error: function(){
console.log('There was an error while your request');
}
});
},
getStackoverflowFeed: function(){
$.ajax({
url: this.sourceUrlStackoverflow,
type: 'GET',
cache: false,
context: this,
success: function(data) {
this.stackoverflowList = data.results; //TODO: Remove comments from the list.
this.trigger(this.stackoverflowList);
},
error: function(){
console.log('There was an error while your request');
}
});
}
});
export default SocialStore;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment