Skip to content

Instantly share code, notes, and snippets.

@jasonhofer
Last active April 4, 2019 16:52

Revisions

  1. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.certifications.my-training-programs.index.js
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,6 @@
    import Ember from 'ember';
    // This "redirects" '/programs/my-journey' to '/programs/my-journey/123'
    // (But only if they user is assigned to a program.)
    // (But only if the user is assigned to a program.)
    export default Ember.Route.extend({
    beforeModel() {
    const programs = this.modelFor('certifications.my-training-programs');
  2. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.application.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';

    // This "redirects" '/' to '/dashboard'
    export default Ember.Route.extend({
    beforeModel() {
    this.replaceWith('dashboard');
  3. jasonhofer revised this gist Apr 4, 2019. No changes.
  4. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions routes.certifications.my-training-programs.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,6 @@
    import Ember from 'ember';
    // This "redirects" '/programs/my-journey' to '/programs/my-journey/123'
    // (But only if they user is assigned to a program.)
    export default Ember.Route.extend({
    beforeModel() {
    const programs = this.modelFor('certifications.my-training-programs');
  5. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.certifications.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';

    // This "redirects" '/programs' to '/programs/my-journey'
    export default Ember.Route.extend({
    beforeModel() {
    this.replaceWith('certifications.my-training-programs');
  6. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.training.program.level.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';
    // This redirects '/programs/my-journey/123/level' to '/programs/my-journey/123/level/1'
    // This "redirects" '/programs/my-journey/123/level' to '/programs/my-journey/123/level/1'
    export default Ember.Route.extend({
    beforeModel() {
    const program = this.modelFor('training.program');
  7. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.training.program.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';
    // This redirects '/programs/my-journey/123' to '/programs/my-journey/123/level'
    // This "redirects" '/programs/my-journey/123' to '/programs/my-journey/123/level'
    export default Ember.Route.extend({
    beforeModel() {
    this.replaceWith('training.program.level', this.paramsFor('training.program').program_id);
  8. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.certifications.my-training-programs.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';
    // This redirects '/programs/my-journey' to '/programs/my-journey/123'
    // This "redirects" '/programs/my-journey' to '/programs/my-journey/123'
    export default Ember.Route.extend({
    beforeModel() {
    const programs = this.modelFor('certifications.my-training-programs');
  9. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.certifications.my-training-programs.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';

    // This redirects '/programs/my-journey' to '/programs/my-journey/123'
    export default Ember.Route.extend({
    beforeModel() {
    const programs = this.modelFor('certifications.my-training-programs');
  10. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.training.program.level.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';
    // This redirects when no level number is given in the URL (e.g. '/programs/my-journey/123/level')
    // This redirects '/programs/my-journey/123/level' to '/programs/my-journey/123/level/1'
    export default Ember.Route.extend({
    beforeModel() {
    const program = this.modelFor('training.program');
  11. jasonhofer revised this gist Apr 4, 2019. 2 changed files with 2 additions and 2 deletions.
    2 changes: 1 addition & 1 deletion routes.training.program.index.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';

    // This redirects '/programs/my-journey/123' to '/programs/my-journey/123/level'
    export default Ember.Route.extend({
    beforeModel() {
    this.replaceWith('training.program.level', this.paramsFor('training.program').program_id);
    2 changes: 1 addition & 1 deletion routes.training.program.level.js
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    import Ember from 'ember';

    // This redirects when no level number is given in the URL (e.g. '/programs/my-journey/123/level')
    export default Ember.Route.extend({
    beforeModel() {
    const program = this.modelFor('training.program');
  12. jasonhofer revised this gist Apr 4, 2019. No changes.
  13. jasonhofer revised this gist Apr 4, 2019. No changes.
  14. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 0 additions and 2 deletions.
    2 changes: 0 additions & 2 deletions routes.certifications.my-training-programs.index.js
    Original file line number Diff line number Diff line change
    @@ -1,12 +1,10 @@
    import Ember from 'ember';

    export default Ember.Route.extend({
    //mockStore: Ember.inject.service(),
    beforeModel() {
    const programs = this.modelFor('certifications.my-training-programs');
    const primary = programs.filter(program => 'primary' === program.type)[0];
    if (primary) {
    //primary.levels = this.get('mockStore').findLevels(primary.id);
    this.replaceWith('training.program', primary.id);
    }
    },
  15. jasonhofer revised this gist Apr 4, 2019. 5 changed files with 6 additions and 7 deletions.
    4 changes: 0 additions & 4 deletions controllers.application.js
    Original file line number Diff line number Diff line change
    @@ -1,4 +0,0 @@
    import Ember from 'ember';

    export default Ember.Controller.extend({
    });
    2 changes: 1 addition & 1 deletion router.js
    Original file line number Diff line number Diff line change
    @@ -15,7 +15,7 @@ Router.map(function() {
    this.route('certifications', {path: '/programs'}, function () {
    this.route('my-training-programs', {path: '/my-journey'}, function () {
    this.route('training.program', {path: '/:program_id', resetNamespace: true}, function () {
    this.route('level', {path: '/level'});
    this.route('level', {path: '/level'}); // "Redirects" to training.program-level
    this.route('training.program-level', {path: '/level/:level_num', resetNamespace: true});
    });
    });
    2 changes: 2 additions & 0 deletions templates.certifications.hbs
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,5 @@
    {{!--
    <h3>Certifications</h3>
    <hr>
    --}}
    {{outlet}}
    2 changes: 2 additions & 0 deletions templates.certifications.my-training-programs.hbs
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,9 @@
    {{!--
    <h4>My Programs</h4>
    |
    {{#each model as |program|}}
    {{program.title}} |
    {{/each}}
    <hr>
    --}}
    {{outlet}}
    3 changes: 1 addition & 2 deletions templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,4 @@
    <h5>My Journey: {{model.title}}</h5>
    <hr>
    <h4>{{model.title}}</h4>
    |
    {{#each model.levels as |level|}}
    {{#link-to 'training.program-level' model.id level.levelNum}}{{level.title}}{{/link-to}} |
  16. jasonhofer revised this gist Apr 4, 2019. 2 changed files with 0 additions and 10 deletions.
    8 changes: 0 additions & 8 deletions routes.training.program.level.index.js
    Original file line number Diff line number Diff line change
    @@ -1,8 +0,0 @@
    import Ember from 'ember';

    export default Ember.Route.extend({
    beforeModel() {
    const program = this.modelFor('training.program');
    this.replaceWith('training.program-level', program.id, program.workingLevelNum || 1);
    },
    });
    2 changes: 0 additions & 2 deletions templates.training.program.level.hbs
    Original file line number Diff line number Diff line change
    @@ -1,2 +0,0 @@
    <code>templates/training/program/level.hbs</code>
    <b>You should never see this</b>
  17. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions routes.training.program.level.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,8 @@
    import Ember from 'ember';

    export default Ember.Route.extend({
    beforeModel() {
    const program = this.modelFor('training.program');
    this.replaceWith('training.program-level', program.id, program.workingLevelNum || 1);
    },
    });
  18. jasonhofer revised this gist Apr 4, 2019. 4 changed files with 7 additions and 7 deletions.
    2 changes: 1 addition & 1 deletion routes.training.program.js
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@ export default Ember.Route.extend({
    mockStore: Ember.inject.service(),
    model(params) {
    const program = this.get('mockStore').findRecord('program', params.program_id);
    program.levels = this.get('mockStore').findLevels(program.id);
    Ember.set(program, 'levels', this.get('mockStore').findLevels(program.id));
    return program;
    },
    });
    5 changes: 2 additions & 3 deletions templates.certifications.my-training-programs.hbs
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,7 @@
    <h4>My Programs</h4>
    <ul>
    |
    {{#each model as |program|}}
    <li>{{program.title}}</li>
    {{program.title}} |
    {{/each}}
    </ul>
    <hr>
    {{outlet}}
    5 changes: 2 additions & 3 deletions templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -1,9 +1,8 @@
    <h5>My Journey: {{model.title}}</h5>
    <hr>
    <ul>
    |
    {{#each model.levels as |level|}}
    <ul>{{#link-to 'training.program-level' model.id level.levelNum}}{{level.title}}{{/link-to}}</ul>
    {{#link-to 'training.program-level' model.id level.levelNum}}{{level.title}}{{/link-to}} |
    {{/each}}
    </ul>
    <hr>
    {{outlet}}
    2 changes: 2 additions & 0 deletions templates.training.program.level.hbs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,2 @@
    <code>templates/training/program/level.hbs</code>
    <b>You should never see this</b>
  19. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion routes.training.program.level.index.js
    Original file line number Diff line number Diff line change
    @@ -2,6 +2,7 @@ import Ember from 'ember';

    export default Ember.Route.extend({
    beforeModel() {
    this.replaceWith('training.program-level', this.paramsFor('training.program').program_id, 2);
    const program = this.modelFor('training.program');
    this.replaceWith('training.program-level', program.id, program.workingLevelNum || 1);
    },
    });
  20. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion routes.training.program-level.js
    Original file line number Diff line number Diff line change
    @@ -3,6 +3,6 @@ import Ember from 'ember';
    export default Ember.Route.extend({
    mockStore: Ember.inject.service(),
    model(params) {
    return this.get('mockStore').findLevelByNum('programLevel', this.paramsFor('training.program').program_id, params.level_num);
    return this.get('mockStore').findLevelByNum(this.paramsFor('training.program').program_id, params.level_num);
    },
    });
  21. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion templates.training.program-level.hbs
    Original file line number Diff line number Diff line change
    @@ -1 +1 @@
    <i>Level Title: {{model.title}}</i>
    <i>Level Title: <b>{{model.title}}</b></i>
  22. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion templates.training.program-level.hbs
    Original file line number Diff line number Diff line change
    @@ -1 +1 @@
    <i>{{model.title}}</i>
    <i>Level Title: {{model.title}}</i>
  23. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    <hr>
    <ul>
    {{#each model.levels as |level|}}
    <ul>{{#link-to 'training.program-level' model.id level.id}}{{level.title}}{{/link-to}}</ul>
    <ul>{{#link-to 'training.program-level' model.id level.levelNum}}{{level.title}}{{/link-to}}</ul>
    {{/each}}
    </ul>
    <hr>
  24. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion templates.training.program-level.hbs
    Original file line number Diff line number Diff line change
    @@ -1 +1 @@
    <i>Program Level Page</i>
    <i>{{model.title}}</i>
  25. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion services.mock-store.js
    Original file line number Diff line number Diff line change
    @@ -20,7 +20,7 @@ export default Ember.Service.extend({
    },

    program: [
    {id: 1, title: 'Program 1', levels: [1,2], type: 'secondary', workingLevelNum: 1},
    {id: 1, title: 'Program 1', levels: [1,2], type: 'secondary'},
    {id: 2, title: 'Program 2', levels: [3,4,5], type: 'primary', workingLevelNum: 2},
    ],

  26. jasonhofer revised this gist Apr 4, 2019. 2 changed files with 7 additions and 3 deletions.
    2 changes: 1 addition & 1 deletion routes.training.program-level.js
    Original file line number Diff line number Diff line change
    @@ -3,6 +3,6 @@ import Ember from 'ember';
    export default Ember.Route.extend({
    mockStore: Ember.inject.service(),
    model(params) {
    return this.get('mockStore').findLevelByNum('programLevel', params.level_num);
    return this.get('mockStore').findLevelByNum('programLevel', this.paramsFor('training.program').program_id, params.level_num);
    },
    });
    8 changes: 6 additions & 2 deletions services.mock-store.js
    Original file line number Diff line number Diff line change
    @@ -15,9 +15,13 @@ export default Ember.Service.extend({
    return this.get('programLevel').filter(level => level.program === ~~programId);
    },

    findLevelByNum(programId, levelNum) {
    return this.findLevels(programId).filter(level => level.levelNum === ~~levelNum)[0];
    },

    program: [
    {id: 1, title: 'Program 1', levels: [1,2], type: 'secondary'},
    {id: 2, title: 'Program 2', levels: [3,4,5], type: 'primary'},
    {id: 1, title: 'Program 1', levels: [1,2], type: 'secondary', workingLevelNum: 1},
    {id: 2, title: 'Program 2', levels: [3,4,5], type: 'primary', workingLevelNum: 2},
    ],

    programLevel: [
  27. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions routes.training.program-level.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,8 @@
    import Ember from 'ember';

    export default Ember.Route.extend({
    mockStore: Ember.inject.service(),
    model(params) {
    return this.get('mockStore').findLevelByNum('programLevel', params.level_num);
    },
    });
  28. jasonhofer revised this gist Apr 4, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    <hr>
    <ul>
    {{#each model.levels as |level|}}
    <ul>{{#link-to 'training.program-level' model.id level.id}}</ul>
    <ul>{{#link-to 'training.program-level' model.id level.id}}{{level.title}}{{/link-to}}</ul>
    {{/each}}
    </ul>
    <hr>
  29. jasonhofer revised this gist Apr 4, 2019. 2 changed files with 2 additions and 2 deletions.
    2 changes: 1 addition & 1 deletion services.mock-store.js
    Original file line number Diff line number Diff line change
    @@ -12,7 +12,7 @@ export default Ember.Service.extend({
    },

    findLevels(programId) {
    return this.get('programLevel').finter(level => level.program === ~~programId);
    return this.get('programLevel').filter(level => level.program === ~~programId);
    },

    program: [
    2 changes: 1 addition & 1 deletion templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    <hr>
    <ul>
    {{#each model.levels as |level|}}
    <ul>{{level.title}}</ul>
    <ul>{{#link-to 'training.program-level' model.id level.id}}</ul>
    {{/each}}
    </ul>
    <hr>
  30. jasonhofer revised this gist Apr 4, 2019. 2 changed files with 9 additions and 1 deletion.
    4 changes: 3 additions & 1 deletion routes.training.program.js
    Original file line number Diff line number Diff line change
    @@ -3,6 +3,8 @@ import Ember from 'ember';
    export default Ember.Route.extend({
    mockStore: Ember.inject.service(),
    model(params) {
    return this.get('mockStore').findRecord('program', params.program_id);
    const program = this.get('mockStore').findRecord('program', params.program_id);
    program.levels = this.get('mockStore').findLevels(program.id);
    return program;
    },
    });
    6 changes: 6 additions & 0 deletions templates.training.program.hbs
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,9 @@
    <h5>My Journey: {{model.title}}</h5>
    <hr>
    <ul>
    {{#each model.levels as |level|}}
    <ul>{{level.title}}</ul>
    {{/each}}
    </ul>
    <hr>
    {{outlet}}