angular.module('SolvIn') .controller('WizardController', function ($scope, $state, $stateParams, $mdToast, PureBeing, PureNothing, Becoming, Passing, Uprising) { $scope.steps = []; $scope.stepsMap = {}; function pushStep(id, step) { $scope.steps.push(step); $scope.stepsMap[id] = $scope.steps.length -1; } pushStep('PureBeing', PureBeing); pushStep('PureNothing', PureNothing); pushStep('Becoming', Becoming); pushStep('Passing', Passing); pushStep('Uprising', Uprising); $scope.rotate = function (w) { return [0, 0, 0, 90, -90][Math.round(4 * Math.random())]; }; let update = $scope.update = function () { $scope.words = []; const maxWords = 200; let step = $scope.step = $scope.steps[$scope.stepIdx]; for(var i = 0; i= 0; }; if (_.isUndefined($stateParams.id)) { $scope.showStep('PureBeing'); } else { $scope.stepIdx = $scope.stepsMap[$stateParams.id]; update(); } });