12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- * @ngdoc function
- * @name domainManagerApp.controller:AboutCtrl
- * @description
- * # AboutCtrl
- * Controller of the domainManagerApp
- */
- angular.module('goApp.background', ['famous.angular', 'goApp.data'])
- .controller('BackgroundController',['$scope', '$rootScope', '$famous', '$timeline', 'Data', '$timeout', function ($scope, $rootScope, $famous, $timeline, Data, $timeout) {
- 'use strict';
-
- $scope.loadBackgroundData = function() {
- $scope.videos = Data.getBackgrounds();
- $rootScope.$on('data:loaded', function(data) {
- if(!$scope.$$phase) {
- $scope.$apply(function(){
- $scope.videos = Data.getBackgrounds();
- $scope.preload();
- });
- } else {
- $scope.videos = Data.getBackgrounds();
- $scope.preload();
- }
- });
- };
- $scope.preload = function() {
- $scope.current_video = $scope.videos[$scope.randomIntFromInterval(0,3)];
- console.log("> Preloading video: " + $scope.current_video);
- var preload = new createjs.LoadQueue();
- preload.addEventListener("complete", handleFileComplete);
-
-
-
- preload.loadFile($scope.current_video);
- function handleFileComplete(event) {
- console.log("> Preload Complete");
- $scope.startBackgroundVideo();
- $timeout(function(){
- $rootScope.$broadcast('background:loaded');
- },1000);
- }
- };
- $scope.randomIntFromInterval = function(min,max) {
- return Math.floor(Math.random()*(max-min+1)+min);
- };
- $scope.startBackgroundVideo = function() {
- console.log("> Playing background video");
- var video = new VideoSurface({
- size: [undefined, undefined],
- autoplay: true,
- src: $scope.current_video,
- classes: ['bg_video'],
- properties: {
- zIndex: 1,
- }
- });
- video.setAttributes({ loop: '' });
- var videoModifier = new Modifier();
- videoModifier.transformFrom(function(){
-
- Transform.translate(0, 0, 0);
- });
- $scope.backgroundView.add(videoModifier).add(video);
- };
-
- var View = $famous['famous/core/View'];
- var Modifier = $famous['famous/core/Modifier'];
- var Surface = $famous['famous/core/Surface'];
- var Transform = $famous['famous/core/Transform'];
- var VideoSurface = $famous['famous/surfaces/VideoSurface'];
- $scope.backgroundView = new View();
- $scope.loadBackgroundData();
- }]);
|