Skip to content

Instantly share code, notes, and snippets.

@austbot
Last active December 31, 2015 23:25
Show Gist options
  • Save austbot/0659e850fc592d83ff0b to your computer and use it in GitHub Desktop.
Save austbot/0659e850fc592d83ff0b to your computer and use it in GitHub Desktop.
//Each one of these sections are places in different files being smashed together via babel/webpack. E2015 -> ES5 + PolyFill
//APP level route
$stateProvider
.state('app', {
url: '/',
templateUrl: 'app/app.html',
controller: 'AppController',
controllerAs: 'app',
resolve: {
currentUser: function (User) {
'ngInject';
return User.getUser();
}
},
data: {
login: {
open: false,
view: 'login'
}
}
}
);
//Module Level routes
$urlRouterProvider
.when('/course/:slug', '/course/:slug/overview');
$stateProvider
.state('app.ecourse', {
abstract: true,
url: 'course/:slug',
sticky: true,
resolve: {
ecourse: function (Ecourses, $stateParams) {
'ngInject';
return Ecourses.get($stateParams.slug);
}
},
'views': {
'app.layout': {
templateUrl: 'app/ecourse/shared/layout.html',
controller: 'EcourseController',
controllerAs: 'ecourseCtrl'
}
}
})
.state('app.ecourse.overview', {
url: '/overview',
views: {
'app.ecourse.content': {
templateUrl: 'app/ecourse/overview/overview.html',
controller: 'OverviewController',
controllerAs: 'ctrl'
}
}
}
)
.state('app.ecourse.segment', {
url: '/:segment',
params: {
media: null,
play: false
},
views: {
'app.ecourse.content': {
templateUrl: 'app/ecourse/segment/segment.html',
controller: 'SegmentController',
controllerAs: 'ctrl'
}
}
}
);
//Module Level Routes, These ones are getting perf data
$stateProvider
.state('app.ecourse.registration', {
abstract: true,
params: {
direction: 'forward'
}
})
.state('app.ecourse.registration.purchase', {
url: '/register',
views: {
'app.layout@app': {
templateUrl: 'app/ecourse/registration/shared/layout.html',
controller: 'PurchaseController',
controllerAs: 'ctrl'
},
'step@app.ecourse.registration.purchase': {
templateUrl: 'app/ecourse/registration/shared/plans.html'
},
},
data: {
title: 'Join Class',
back: false
}
})
.state('app.ecourse.registration.purchase.complete', {
url: '/complete',
views: {
'step@app.ecourse.registration.purchase': {
controller: checkPlanController,
templateUrl: 'app/ecourse/registration/purchase/complete.html'
}
},
data: {
back: true
}
})
.state('app.ecourse.registration.gift', {
url: '/gift',
views: {
'app.layout@app': {
templateUrl: 'app/ecourse/registration/shared/layout.html',
controller: 'GiftController',
controllerAs: 'ctrl'
},
'step@app.ecourse.registration.gift': {
templateUrl: 'app/ecourse/registration/shared/plans.html'
}
},
data: {
title: 'Gift Class',
back: false
}
})
.state('app.ecourse.registration.gift.completeSignUp', {
url: '/sign-up',
views: {
'step@app.ecourse.registration.gift': {
controller: checkPlanController,
templateUrl: 'app/ecourse/registration/gift/completeSignup.html'
}
},
data: {
back: true
}
})
.state('app.ecourse.registration.gift.complete', {
url: '/complete',
views: {
'step@app.ecourse.registration.gift': {
controller: checkPlanController,
templateUrl: 'app/ecourse/registration/gift/complete.html'
}
},
data: {
back: true
}
})
.state('app.ecourse.registration.redeem', {
url: '/redeem?redemptionCode',
views: {
'app.layout@app': {
templateUrl: 'app/ecourse/registration/shared/layout.html',
controller: 'RedeemController',
controllerAs: 'ctrl'
},
'step@app.ecourse.registration.redeem': {
templateUrl: 'app/ecourse/registration/redeem/complete.html'
}
},
data: {
title: 'Redeem Class',
back: false
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment