Skip to content
This repository was archived by the owner on Jun 24, 2019. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
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
7 changes: 6 additions & 1 deletion app/company/peers.jsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
"use strict"
var React = require('react')
var ReactDOM = require('react-dom')
var api = require('../api.js')
var Link = require('react-router').Link
var Utils = require('../components/utils.js')
Expand All @@ -18,6 +19,10 @@ class Peers extends React.Component {

componentDidMount() {
this._req = this.fetchPeers(this.props.company)
this._req.then(resp => {
var peersDOMNode = ReactDOM.findDOMNode(this.refs.peers)
Utils.fixFirstKColumns(peersDOMNode, 2)
})
}

componentWillReceiveProps(props) {
Expand Down Expand Up @@ -79,7 +84,7 @@ class Peers extends React.Component {
</h2>

<div className="table-responsive">
<table className="table table-striped table-hover">
<table className="table table-striped table-hover" ref="peers">
<thead>
<tr>
<th className="text">S.No.</th>
Expand Down
8 changes: 7 additions & 1 deletion app/company/results.jsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
"use strict"
import React from 'react'
import ReactDOM from 'react-dom'
import Api from '../api.js'
import {Link} from 'react-router'
import classNames from 'classnames'
Expand Down Expand Up @@ -108,6 +109,11 @@ class Results extends React.Component {
this.setState({schedules: {}})
}

componentDidMount() {
var resultsDOMNode = ReactDOM.findDOMNode(this.refs.results)
Utils.fixFirstKColumns(resultsDOMNode, 1)
}

handleExpand(field) {
if(this.state.schedules[field])
return
Expand Down Expand Up @@ -205,7 +211,7 @@ class Results extends React.Component {
</h2>

<div className="table-responsive">
<table className="table">
<table className="table" ref="results">
<thead>
<tr>
<th />
Expand Down
21 changes: 21 additions & 0 deletions app/components/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,26 @@ function getFormData(form) {
return data;
}

function fixFirstKColumns(table, k)
{
//Make a clone of our table
var tableClone = table.cloneNode(true)
table.parentNode.insertBefore(tableClone, table)
tableClone.className += ' fixed-column'

//Remove everything except for first column
var nodes = tableClone.querySelectorAll(['th:not(:nth-child(-n+'+k+'))', 'td:not(:nth-child(-n+'+k+')'])
nodes.forEach((el) => {
el.remove()
})

var trs = table.querySelectorAll('tr')
//Match the height of the rows to that of the original table's
tableClone.querySelectorAll('tr').forEach((elem, i) => {
elem.style.height = trs[i].offsetHeight + 'px'
})
}

exports.setTitle = setTitle;
exports.scrollToTop = scrollToTop;
exports.toSlug = toSlug;
Expand All @@ -96,3 +116,4 @@ exports.toMonthYear = toMonthYear;
exports.withUnit = withUnit;
exports.getPageNumbers = getPageNumbers;
exports.getFormData = getFormData;
exports.fixFirstKColumns = fixFirstKColumns;
14 changes: 14 additions & 0 deletions custom.css
Original file line number Diff line number Diff line change
Expand Up @@ -387,3 +387,17 @@ table .odd {
font-size: 16px;
}
}

.table-responsive>.fixed-column {
position: absolute;
display: inline-block;
width: auto;
border-right: 1px solid #ddd;
background-color: #fff;
}

@media(min-width:768px) {
.table-responsive>.fixed-column {
display: none;
}
}