Code coverage report for src/components/task-plan/guide.cjsx

Statements: 47.83% (11 / 23)      Branches: 100% (0 / 0)      Functions: 0% (0 / 4)      Lines: 47.83% (11 / 23)      Ignored: none     

All files » src/components/task-plan/ » guide.cjsx
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92                                                                                                                                                                  
var BS, CourseActions, CourseStore, Guide, GuideShell, LoadableItem, PracticeButton, React, Router, _, ref;
 
React = require('react');
 
_ = require('underscore');
 
BS = require('react-bootstrap');
 
Router = require('react-router');
 
ref = require('../../flux/course'), CourseStore = ref.CourseStore, CourseActions = ref.CourseActions;
 
LoadableItem = require('../loadable-item');
 
PracticeButton = require('../buttons/practice-button');
 
Guide = React.createClass({
  displayName: 'Guide',
  propTypes: {
    id: React.PropTypes.string.isRequired
  },
  renderCrudeTable: function(data, i) {
    var id;
    id = this.props.id;
    return React.createElement("tr", null, React.createElement("td", {
      "className": '-course-guide-table-id'
    }, data.id), React.createElement("td", {
      "className": '-course-guide-table-title'
    }, data.title), React.createElement("td", {
      "className": '-course-guide-table-unit'
    }, data.unit), React.createElement("td", {
      "className": '-course-guide-table-questions_answered_count'
    }, data.questions_answered_count), React.createElement("td", {
      "className": '-course-guide-table-current_level'
    }, data.current_level), React.createElement("td", {
      "className": 'course-guide-table-page_ids'
    }, data.page_ids), React.createElement("td", {
      "className": '-course-guide-table-practice_count'
    }, data.practice_count), React.createElement("td", {
      "className": '-course-guide-table-practice_button'
    }, React.createElement(PracticeButton, {
      "courseId": id,
      "page_ids": data.page_ids
    }, "Practice")));
  },
  render: function() {
    var guide, id, table;
    id = this.props.id;
    guide = CourseStore.getGuide(id);
    table = _.map(guide.fields, this.renderCrudeTable);
    return React.createElement(BS.Panel, {
      "className": '-course-guide-container'
    }, React.createElement("div", {
      "className": '-course-guide-group'
    }, React.createElement("div", {
      "className": '-course-guide-heading'
    }, React.createElement("h2", null, "guide data crude table")), React.createElement(BS.Table, {
      "className": '-course-guide-table'
    }, React.createElement("thead", null, React.createElement("tr", null, React.createElement("th", null, "id"), React.createElement("th", null, "title"), React.createElement("th", null, "unit"), React.createElement("th", null, "questions_answered_count"), React.createElement("th", null, "current_level"), React.createElement("th", null, "page_ids"), React.createElement("th", null, "practice_count"), React.createElement("th", null, "actions"))), React.createElement("tbody", null, table))));
  }
});
 
GuideShell = React.createClass({displayName: "GuideShell",
  contextTypes: {
    router: React.PropTypes.func
  },
  render: function() {
    var courseId;
    courseId = this.context.router.getCurrentParams().courseId;
    return React.createElement(LoadableItem, {
      "store": CourseStore,
      "actions": CourseActions,
      "load": CourseActions.loadGuide,
      "isLoaded": CourseStore.isGuideLoaded,
      "isLoading": CourseStore.isGuideLoading,
      "id": courseId,
      "renderItem": (function() {
        return React.createElement(Guide, {
          "key": courseId,
          "id": courseId
        });
      })
    });
  }
});
 
module.exports = {
  GuideShell: GuideShell,
  Guide: Guide
};