parent
75b75358cd
commit
253aac1fd4
27 changed files with 187 additions and 73 deletions
12
app/adapters/application.js
Normal file
12
app/adapters/application.js
Normal file
|
@ -0,0 +1,12 @@
|
|||
import DS from 'ember-data';
|
||||
import ENV from '../config/environment';
|
||||
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin';
|
||||
|
||||
const { JSONAPIAdapter } = DS;
|
||||
const { APP: { API_HOST, API_NAMESPACE } } = ENV;
|
||||
|
||||
export default JSONAPIAdapter.extend(DataAdapterMixin, {
|
||||
namespace: API_NAMESPACE,
|
||||
host: API_HOST,
|
||||
authorizer: 'authorizer:application',
|
||||
});
|
|
@ -1,11 +1,11 @@
|
|||
import Ember from 'ember';
|
||||
import BaseAuthorizer from 'ember-simple-auth/authorizers/base';
|
||||
|
||||
const { isEmpty } = Ember;
|
||||
const { isEmpty, get } = Ember;
|
||||
|
||||
export default BaseAuthorizer.extend({
|
||||
authorize(data, block) {
|
||||
const accessToken = data['token'];
|
||||
const accessToken = get(data, 'data.token');
|
||||
if (!isEmpty(accessToken)) {
|
||||
block('Authorization', `Token ${accessToken}`);
|
||||
}
|
||||
|
|
5
app/breakpoints.js
Normal file
5
app/breakpoints.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
export default {
|
||||
mobile: '(max-width: 767px)',
|
||||
tablet: '(min-width: 768px) and (max-width: 991px)',
|
||||
desktop: '(min-width: 992px) and (max-width: 1200px)'
|
||||
};
|
5
app/components/admin-section-list.js
Normal file
5
app/components/admin-section-list.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
import Ember from 'ember';
|
||||
|
||||
const { Component } = Ember;
|
||||
|
||||
export default Component.extend({});
|
7
app/controllers/application.js
Normal file
7
app/controllers/application.js
Normal file
|
@ -0,0 +1,7 @@
|
|||
import Ember from 'ember';
|
||||
|
||||
const { Controller, inject: { service }} = Ember;
|
||||
|
||||
export default Controller.extend({
|
||||
session: service('session'),
|
||||
});
|
6
app/initializers/responsive.js
Normal file
6
app/initializers/responsive.js
Normal file
|
@ -0,0 +1,6 @@
|
|||
import { initialize } from 'ember-responsive/initializers/responsive';
|
||||
|
||||
export default {
|
||||
name: 'responsive',
|
||||
initialize
|
||||
};
|
8
app/models/admin-section.js
Normal file
8
app/models/admin-section.js
Normal file
|
@ -0,0 +1,8 @@
|
|||
import DS from 'ember-data';
|
||||
|
||||
const { Model, attr } = DS;
|
||||
|
||||
export default Model.extend({
|
||||
name: attr('string'),
|
||||
sort: attr('number'),
|
||||
});
|
|
@ -8,6 +8,7 @@ const Router = Ember.Router.extend({
|
|||
|
||||
Router.map(function() {
|
||||
this.route('login');
|
||||
this.route('logout');
|
||||
});
|
||||
|
||||
export default Router;
|
||||
|
|
11
app/routes/logout.js
Normal file
11
app/routes/logout.js
Normal file
|
@ -0,0 +1,11 @@
|
|||
import Ember from 'ember';
|
||||
|
||||
const { Route, inject: { service }} = Ember;
|
||||
|
||||
export default Route.extend({
|
||||
session: service('session'),
|
||||
|
||||
beforeModel() {
|
||||
this.get('session').invalidate();
|
||||
}
|
||||
});
|
|
@ -37,3 +37,38 @@
|
|||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
|
||||
/* Sidebar */
|
||||
.sidebar {
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
z-index: 1000;
|
||||
display: block;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
|
||||
background-color: #f5f5f5;
|
||||
border-right: 1px solid #eee;
|
||||
}
|
||||
|
||||
/* Sidebar navigation */
|
||||
.nav-sidebar {
|
||||
margin-right: -21px; /* 20px padding + 1px border */
|
||||
margin-bottom: 20px;
|
||||
margin-left: -20px;
|
||||
}
|
||||
|
||||
.nav-sidebar > li > a {
|
||||
padding-right: 20px;
|
||||
padding-left: 20px;
|
||||
}
|
||||
.nav-sidebar > .active > a,
|
||||
.nav-sidebar > .active > a:hover,
|
||||
.nav-sidebar > .active > a:focus {
|
||||
color: #fff;
|
||||
background-color: #428bca;
|
||||
}
|
||||
|
||||
|
|
|
@ -1 +1,21 @@
|
|||
{{#if session.isAuthenticated}}
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-2 sidebar">
|
||||
<ul class="nav nav-sidebar">
|
||||
<li class="active"><a href="#">Overview</a></li>
|
||||
<li><a href="#">Experiments</a></li>
|
||||
<li><a href="#">Collections</a></li>
|
||||
</ul>
|
||||
<ul class="nav nav-sidebar">
|
||||
<li>{{#link-to 'logout'}}Logout{{/link-to}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-md-10 content">
|
||||
{{outlet}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{else}}
|
||||
{{outlet}}
|
||||
{{/if}}
|
||||
|
|
1
app/templates/components/admin-section-list.hbs
Normal file
1
app/templates/components/admin-section-list.hbs
Normal file
|
@ -0,0 +1 @@
|
|||
{{yield}}
|
|
@ -1,2 +1 @@
|
|||
Logged in
|
||||
{{outlet}}
|
||||
|
||||
|
|
1
app/templates/logout.hbs
Normal file
1
app/templates/logout.hbs
Normal file
|
@ -0,0 +1 @@
|
|||
{{outlet}}
|
Loading…
Add table
Add a link
Reference in a new issue