Skip to content

Commit

Permalink
Seperate the classes into different files
Browse files Browse the repository at this point in the history
  • Loading branch information
Muhammad-Adam committed Feb 21, 2017
1 parent ec2d5bc commit c5843e8
Show file tree
Hide file tree
Showing 5 changed files with 77 additions and 61 deletions.
21 changes: 21 additions & 0 deletions app/components/home/collapsable.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import React from 'react';

class Collapsable extends React.Component {
render() {
let showCollapse = (this.props.open[this.props.serial]) ? 'collapse show' : 'collapse';
return (
<div className={showCollapse} id={"collapseExample"+this.props.serial-1} aria-expanded={this.props.open[this.props.serial]}>
<div className="card card-block">
<div>
<h6>Title {this.props.serial}</h6>
<div id="event-title" />
<h6>Description {this.props.serial}</h6>
<div id="event-description" />
</div>
</div>
</div>
);
}
}

export default Collapsable;
20 changes: 20 additions & 0 deletions app/components/home/event.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import React from 'react';

class Event extends React.Component {
handleClick(event) {
this.props.openCollapsable(this.props.serial);
}
render() {
return (
<div>
<div onClick={this.handleClick.bind(this)} className="event-picture" href={"#collapseExample"+this.props.serial}
aria-expanded={this.props.open[this.props.serial]} aria-controls={"collapseExample"+this.props.serial}>
<img className="img-fluid text-center event-poster" src="https://goo.gl/T2k8fq" alt="Event picture" />
<div id="event-poster" />
</div>
</div>
);
}
}

export default Event;
64 changes: 3 additions & 61 deletions app/components/home/homeView.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import React from 'react';
import Tabs from './tabs';
import Event from './event';
import Collapsable from './collapsable';

class HomeView extends React.Component {
constructor(props) {
Expand Down Expand Up @@ -51,7 +54,6 @@ class HomeView extends React.Component {
</div>
);
}

render() {
return (
<div className="home-body">
Expand All @@ -61,65 +63,5 @@ class HomeView extends React.Component {
);
}
}
class Tabs extends React.Component {
render() {
return (
<div className="event-tabs">
<ul className="nav nav-tabs justify-content-around">
<Tab name="Ongoing" />
<Tab name="Upcoming" />
<Tab name="Past" />
</ul>
</div>
);
}
}

class Tab extends React.Component {
render() {
return (
<div className="event-tab">
<li className="nav-item">
<a className="nav-link" href="#">{this.props.name}</a>
</li>
</div>
);
}
}

class Event extends React.Component {
handleClick(event) {
this.props.openCollapsable(this.props.serial);
}
render() {
return (
<div>
<div onClick={this.handleClick.bind(this)} className="event-picture" href={"#collapseExample"+this.props.serial}
aria-expanded={this.props.open[this.props.serial]} aria-controls={"collapseExample"+this.props.serial}>
<img className="img-fluid text-center event-poster" src="https://goo.gl/T2k8fq" alt="Event picture" />
<div id="event-poster" />
</div>
</div>
);
}
}

class Collapsable extends React.Component {
render() {
let showCollapse = (this.props.open[this.props.serial]) ? 'collapse show' : 'collapse';
return (
<div className={showCollapse} id={"collapseExample"+this.props.serial-1} aria-expanded={this.props.open[this.props.serial]}>
<div className="card card-block">
<div>
<h6>Title {this.props.serial}</h6>
<div id="event-title" />
<h6>Description {this.props.serial}</h6>
<div id="event-description" />
</div>
</div>
</div>
);
}
}

export default HomeView;
15 changes: 15 additions & 0 deletions app/components/home/tab.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import React from 'react';

class Tab extends React.Component {
render() {
return (
<div className="event-tab">
<li className="nav-item">
<a className="nav-link" href="#">{this.props.name}</a>
</li>
</div>
);
}
}

export default Tab;
18 changes: 18 additions & 0 deletions app/components/home/tabs.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import React from 'react';
import Tab from './tab';

class Tabs extends React.Component {
render() {
return (
<div className="event-tabs">
<ul className="nav nav-tabs justify-content-around">
<Tab name="Ongoing" />
<Tab name="Upcoming" />
<Tab name="Past" />
</ul>
</div>
);
}
}

export default Tabs;

0 comments on commit c5843e8

Please sign in to comment.