@ -0,0 +1,295 @@ | |||
<html lang="en"> | |||
<head> | |||
<title>Clouds</title> | |||
<meta charset="utf-8"> | |||
<style type="text/css"> | |||
*{ | |||
box-sizing: border-box; | |||
margin: 0; | |||
padding: 0 | |||
} | |||
body { | |||
color: #eee; | |||
text-shadow: 0 -1px 0 rgba( 0, 0, 0, .6 ); | |||
font-family: 'Open Sans', sans-serif; | |||
font-size: 13px; | |||
line-height: 16px; | |||
overflow: hidden; | |||
} | |||
#viewport { | |||
-webkit-perspective: 1000; | |||
-moz-perspective: 1000px; | |||
-o-perspective: 1000; | |||
perspective: 1000px; | |||
position: absolute; | |||
left: 0; | |||
top: 0; | |||
right: 0; | |||
bottom: 0; | |||
overflow: hidden; | |||
background-image: url('http://www.incoplast-srl.com/SiteAssets/Cielo-despejado-1363594685_18.jpg'); | |||
background-size: cover; | |||
/*background-image: linear-gradient(bottom, rgb(69,132,180) 28%, rgb(31,71,120) 64%); | |||
background-image: -o-linear-gradient(bottom, rgb(69,132,180) 28%, rgb(31,71,120) 64%); | |||
background-image: -moz-linear-gradient(bottom, rgb(69,132,180) 28%, rgb(31,71,120) 64%); | |||
background-image: -webkit-linear-gradient(bottom, rgb(69,132,180) 28%, rgb(31,71,120) 64%); | |||
background-image: -ms-linear-gradient(bottom, rgb(69,132,180) 28%, rgb(31,71,120) 64%); | |||
background-image: -webkit-gradient( | |||
linear, | |||
left bottom, | |||
left top, | |||
color-stop(0.28, rgb(69,132,180)), | |||
color-stop(0.64, rgb(31,71,120)) | |||
);*/ | |||
} | |||
#world { | |||
position: absolute; | |||
left: 50%; | |||
top: 50%; | |||
margin-left: -256px; | |||
margin-top: -256px; | |||
height: 512px; | |||
width: 512px; | |||
-webkit-transform-style: preserve-3d; | |||
-moz-transform-style: preserve-3d; | |||
-o-transform-style: preserve-3d; | |||
transform-style: preserve-3d; | |||
pointer-events: none; | |||
} | |||
#world div { | |||
-webkit-transform-style: preserve-3d; | |||
-moz-transform-style: preserve-3d; | |||
-o-transform-style: preserve-3d; | |||
transform-style: preserve-3d; | |||
} | |||
.cloudBase { | |||
position: absolute; | |||
left: 256px; | |||
top: 256px; | |||
width: 20px; | |||
height: 20px; | |||
margin-left: -10px; | |||
margin-top: -10px; | |||
} | |||
.cloudLayer { | |||
position: absolute; | |||
left: 50%; | |||
top: 50%; | |||
width: 256px; | |||
height: 256px; | |||
margin-left: -128px; | |||
margin-top: -128px; | |||
-webkit-transition: opacity .5s ease-out; | |||
-moz-transition: opacity .5s ease-out; | |||
-o-transition: opacity .5s ease-out; | |||
transition: opacity .5s ease-out; | |||
} | |||
</style> | |||
<script src="https://code.jquery.com/jquery-1.11.3.js"></script> | |||
<script type="text/javascript"> | |||
$( document ).ready(function() { | |||
/* | |||
Defining our variables | |||
world and viewport are DOM elements, | |||
worldXAngle and worldYAngle are floats that hold the world rotations, | |||
d is an int that defines the distance of the world from the camera | |||
*/ | |||
var world = document.getElementById( 'world' ), | |||
viewport = document.getElementById( 'viewport' ), | |||
worldXAngle = 0, | |||
worldYAngle = 0, | |||
d = 0; | |||
/* | |||
Event listener to transform mouse position into angles | |||
from -180 to 180 degress, both vertically and horizontally | |||
*/ | |||
window.addEventListener( 'mousemove', function( e ) { | |||
worldYAngle = -( .5 - ( e.clientX / window.innerWidth ) ) * 360; | |||
worldXAngle = ( .5 - ( e.clientY / window.innerHeight ) ) * 360; | |||
updateView(); | |||
} ); | |||
/* | |||
Changes the transform property of world to be | |||
translated in the Z axis by d pixels, | |||
rotated in the X axis by worldXAngle degrees and | |||
rotated in the Y axis by worldYAngle degrees. | |||
*/ | |||
function updateView() { | |||
world.style.transform = 'translateZ( ' + d + 'px ) \ | |||
rotateX( ' + worldXAngle + 'deg) \ | |||
rotateY( ' + worldYAngle + 'deg)'; | |||
} | |||
/* | |||
objects is an array of cloud bases | |||
layers is an array of cloud layers | |||
*/ | |||
var objects = [], | |||
layers = []; | |||
textures = [ | |||
{ name: 'white cloud', file: 'cloud.png' , opacity: 1, weight: 0 }, | |||
{ name: 'dark cloud', file: 'darkCloud.png' , opacity: 1, weight: 0 }, | |||
{ name: 'smoke cloud', file: 'smoke.png' , opacity: 1, weight: 0 }, | |||
{ name: 'explosion', file: 'explosion.png' , opacity: 1, weight: 0 }, | |||
{ name: 'explosion 2', file: 'explosion2.png' , opacity: 1, weight: 0 }, | |||
{ name: 'box', file: 'box.png' , opacity: 1, weight: 0 } | |||
]; | |||
/* | |||
Clears the DOM of previous clouds bases | |||
and generates a new set of cloud bases | |||
*/ | |||
function generate() { | |||
objects = []; | |||
if ( world.hasChildNodes() ) { | |||
while ( world.childNodes.length >= 1 ) { | |||
world.removeChild( world.firstChild ); | |||
} | |||
} | |||
computedWeights = []; | |||
var total = 0; | |||
for( var j = 0; j < textures.length; j++ ) { | |||
if( textures[ j ].weight > 0 ) { | |||
total += textures[ j ].weight; | |||
} | |||
} | |||
var accum = 0; | |||
for( var j = 0; j < textures.length; j++ ) { | |||
if( textures[ j ].weight > 0 ) { | |||
var w = textures[ j ].weight / total; | |||
computedWeights.push( { | |||
src: textures[ j ].file, | |||
min: accum, | |||
max: accum + w | |||
} ); | |||
accum += w; | |||
} | |||
} | |||
for( var j = 0; j < 100; j++ ) { | |||
objects.push( createCloud() ); | |||
} | |||
} | |||
/* | |||
Creates a single cloud base and adds several cloud layers. | |||
Each cloud layer has random position ( x, y, z ), rotation (a) | |||
and rotation speed (s). layers[] keeps track of those divs. | |||
*/ | |||
function createCloud() { | |||
var div = document.createElement( 'div' ); | |||
div.className = 'cloudBase'; | |||
var x = 256 - ( Math.random() * 1512 ); | |||
var y = 256 - ( Math.random() * 1512 ); | |||
var z = 256 - ( Math.random() * 1512 ); | |||
var t = 'translateX( ' + x + 'px ) translateY( ' + y + 'px ) translateZ( ' + z + 'px )'; | |||
div.style.webkitTransform = | |||
div.style.MozTransform = | |||
div.style.oTransform = | |||
div.style.transform = t; | |||
world.appendChild( div ); | |||
for( var j = 0; j < 5 + Math.round( Math.random() * 10 ); j++ ) { | |||
var cloud = document.createElement( 'img' ); | |||
cloud.style.opacity = 1; | |||
var r = Math.random(); | |||
var src = 'cloud10.png'; | |||
cloud.setAttribute( 'src', src ); | |||
cloud.className = 'cloudLayer'; | |||
var x = 256 - ( Math.random() * 1512 ); | |||
var y = 256 - ( Math.random() * 1512 ); | |||
var z = 100 - ( Math.random() * 1200 ); | |||
var a = Math.random() * 360; | |||
var s = .25 + Math.random(); | |||
x *= .2; y *= .2; | |||
cloud.data = { | |||
x: x, | |||
y: y, | |||
z: z, | |||
a: a, | |||
s: s, | |||
speed: .1 * Math.random(), | |||
r: Math.random() | |||
}; | |||
var t = 'translateX( ' + x + 'px ) translateY( ' + y + 'px ) translateZ( ' + z + 'px ) rotateZ( ' + a + 'deg ) scale( ' + s + ' )'; | |||
cloud.style.webkitTransform = | |||
cloud.style.MozTransform = | |||
cloud.style.oTransform = | |||
cloud.style.transform = t; | |||
div.appendChild( cloud ); | |||
layers.push( cloud ); | |||
} | |||
return div; | |||
} | |||
generate(); | |||
function update (){ | |||
for( var j = 0; j < layers.length; j++ ) { | |||
var layer = layers[ j ]; | |||
if(Math.random() >= layer.data.r){ | |||
layer.data.a += layer.data.speed; | |||
}else{ | |||
layer.data.a -= layer.data.speed; | |||
} | |||
if(Math.random() >= layer.data.r){ | |||
layer.data.x += layer.data.speed; | |||
}else{ | |||
layer.data.x -= layer.data.speed; | |||
} | |||
if(Math.random() >= layer.data.r){ | |||
layer.data.y += layer.data.speed; | |||
}else{ | |||
layer.data.y -= layer.data.speed; | |||
} | |||
var t = 'translateX( ' + layer.data.x + 'px ) translateY( ' + layer.data.y + 'px ) translateZ( ' + layer.data.z + 'px ) rotateY( ' + ( - worldYAngle ) + 'deg ) rotateX( ' + ( - worldXAngle ) + 'deg ) rotateZ( ' + layer.data.a + 'deg ) scale( ' + layer.data.s + ')'; | |||
layer.style.webkitTransform = | |||
layer.style.MozTransform = | |||
layer.style.oTransform = | |||
layer.style.transform = t; | |||
//layer.style.webkitFilter = 'blur(5px)'; | |||
} | |||
requestAnimationFrame( update ); | |||
} | |||
update(); | |||
}); | |||
</script> | |||
</head> | |||
<body> | |||
<div id="viewport" > | |||
<div id="world" ></div> | |||
</div> | |||
</body> | |||
</html> |
@ -0,0 +1,30 @@ | |||
,-----.,--. ,--. ,---. ,--.,------. ,------. | |||
' .--./| | ,---. ,--.,--. ,-| || o \ | || .-. \ | .---' | |||
| | | || .-. || || |' .-. |`..' | | || | \ :| `--, | |||
' '--'\| |' '-' '' '' '\ `-' | .' / | || '--' /| `---. | |||
`-----'`--' `---' `----' `---' `--' `--'`-------' `------' | |||
----------------------------------------------------------------- | |||
Hi there! Welcome to Cloud9 IDE! | |||
To get you started, we have created a small hello world application. | |||
1) Open the hello-world.php file | |||
2) Follow the run instructions in the file's comments | |||
3) If you want to look at the Apache logs, check out ~/lib/apache2/log | |||
And that's all there is to it! Just have fun. Go ahead and edit the code, | |||
or add new files. It's all up to you! | |||
Happy coding! | |||
The Cloud9 IDE team | |||
## Support & Documentation | |||
Visit http://docs.c9.io for support, or to learn more about using Cloud9 IDE. | |||
To watch some training videos, visit http://www.youtube.com/user/c9ide |
@ -0,0 +1,111 @@ | |||
<!DOCTYPE html> | |||
<html ng-app="myApp"> | |||
<head> | |||
<style type="text/css"> | |||
body{ | |||
margin: 8px; | |||
background: gray; | |||
cursor: none; | |||
} | |||
div.pixel{ | |||
position: absolute; | |||
width: 8px; | |||
height: 8px; | |||
} | |||
div.pixel:hover{ | |||
opacity: .5; | |||
} | |||
</style> | |||
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script> | |||
<script type="text/javascript"> | |||
/*var size = 8; | |||
var pixels= []; | |||
var max = { x: 100, y: 80}; | |||
var click = false; | |||
for(var i = 1; i<max.x; i++){ | |||
for(var j = 1; j<max.y; j++){ | |||
pixels.push({position:{x: i, y: j}, color: 'blue'}); | |||
} | |||
} | |||
function createPixel(pixel){ | |||
var div = $(document.createElement("div")); | |||
function painter(color) { | |||
if(click){ | |||
div.css({ | |||
background: color | |||
}); | |||
} | |||
} | |||
div.html = "Text."; | |||
div.css({ | |||
left: pixel.position.x * size, | |||
top: pixel.position.y * size, | |||
background: pixel.color, | |||
width: size, | |||
height: size | |||
}); | |||
div.addClass('pixel'); | |||
div.mouseover(painter(div, 'black')); | |||
$("body").append(div); | |||
} | |||
$( document ).ready(function() { | |||
$.each( pixels, function( key, pixel ){ | |||
createPixel(pixel); | |||
}); | |||
$("body").mousedown(function() { | |||
click = true; | |||
}).mouseup(function() { | |||
click = false; | |||
}); | |||
});*/ | |||
var app = angular.module("myApp", []); | |||
app.controller("myCtrl", function($scope) { | |||
$scope.size = 8; | |||
$scope.pixels= []; | |||
$scope.click = false; | |||
var max = { x: 50, y: 50}; | |||
var id = 1; | |||
for(var i = 1; i<max.y; i++){ | |||
for(var j = 1; j<max.x; j++){ | |||
$scope.pixels.push({id: id,position:{x: j, y: i}, color: 'blue'}); | |||
id++; | |||
} | |||
} | |||
$scope.painter = function(pixel){ | |||
if($scope.click){ | |||
pixel.color = 'black'; | |||
} | |||
}; | |||
}); | |||
</script> | |||
</head> | |||
<body ng-controller="myCtrl" ng-mousedown="click = true" ng-mouseup="click = false"> | |||
<div ng-repeat="pixel in pixels" | |||
class="pixel" | |||
ng-mouseover="painter(pixel)" | |||
style=" | |||
left: {{pixel.position.x * size}}px; | |||
top: {{pixel.position.y * size}}px; | |||
background: {{pixel.color}}; | |||
width: {{size}}px; | |||
height: {{size}}px;" | |||
> | |||
</div> | |||
</body> | |||
</html> |
@ -0,0 +1,150 @@ | |||
<!DOCTYPE html> | |||
<html ng-app="myApp"> | |||
<head> | |||
<style type="text/css"> | |||
body{ | |||
margin: 8px; | |||
background: gray; | |||
} | |||
#menu{ | |||
width: 100px; | |||
margin-top: 28px; | |||
text-align: center; | |||
} | |||
#board{ | |||
cursor: crosshair; | |||
} | |||
div.pixel{ | |||
position: absolute; | |||
width: 8px; | |||
height: 8px; | |||
} | |||
div.pixel:hover{ | |||
opacity: .5; | |||
} | |||
</style> | |||
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script> | |||
<script src="js/filesaver.js"></script> | |||
<script type="text/javascript"> | |||
var decodeBase64 = function(s) { | |||
var e={},i,b=0,c,x,l=0,a,r='',w=String.fromCharCode,L=s.length; | |||
var A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; | |||
for(i=0;i<64;i++){e[A.charAt(i)]=i;} | |||
for(x=0;x<L;x++){ | |||
c=e[s.charAt(x)];b=(b<<6)+c;l+=6; | |||
while(l>=8){((a=(b>>>(l-=8))&0xff)||(x<(L-2)))&&(r+=w(a));} | |||
} | |||
return r; | |||
}; | |||
var app = angular.module("myApp", []); | |||
app.directive('appFilereader', function($q) { | |||
var slice = Array.prototype.slice; | |||
return { | |||
restrict: 'A', | |||
require: '?ngModel', | |||
link: function(scope, element, attrs, ngModel) { | |||
if (!ngModel) return; | |||
ngModel.$render = function() {}; | |||
element.bind('change', function(e) { | |||
var element = e.target; | |||
$q.all(slice.call(element.files, 0).map(readFile)) | |||
.then(function(values) { | |||
if (element.multiple) ngModel.$setViewValue(values); | |||
else ngModel.$setViewValue(values.length ? values[0] : null); | |||
}); | |||
function readFile(file) { | |||
var deferred = $q.defer(); | |||
var reader = new FileReader(); | |||
reader.onload = function(e) { | |||
deferred.resolve(e.target.result); | |||
}; | |||
reader.onerror = function(e) { | |||
deferred.reject(e); | |||
}; | |||
reader.readAsDataURL(file); | |||
return deferred.promise; | |||
} | |||
}); //change | |||
} //link | |||
}; //return | |||
}) | |||
app.controller("myCtrl", function($scope) { | |||
$scope.size = 4; | |||
$scope.pixels= []; | |||
$scope.click = false; | |||
$scope.color = "#000" | |||
var max = { x: 100, y: 100}; | |||
var id = 1; | |||
for(var i = 1; i<max.y; i++){ | |||
for(var j = 1; j<max.x; j++){ | |||
$scope.pixels.push({id: id,position:{x: j, y: i}, color: '#fff'}); | |||
id++; | |||
} | |||
} | |||
$scope.painter = function(pixel){ | |||
if($scope.click){ | |||
pixel.color = $scope.color; | |||
} | |||
}; | |||
$scope.export = function(){ | |||
var text = JSON.stringify($scope.pixels); | |||
var element = document.createElement('a'); | |||
element.setAttribute('href', 'data:json/plain;charset=utf-8,' + encodeURIComponent(text)); | |||
element.setAttribute('download', 'painter.jgf'); | |||
element.style.display = 'none'; | |||
document.body.appendChild(element); | |||
element.click(); | |||
document.body.removeChild(element); | |||
}; | |||
$scope.import = function(file){ | |||
$scope.pixels = angular.fromJson(decodeBase64(file.split(',')[1])); | |||
}; | |||
}); | |||
</script> | |||
</head> | |||
<body ng-controller="myCtrl"> | |||
<div id="menu"> | |||
<input type="color" ng-model="color"/> | |||
<button ng-click="export()"> | |||
Exportar | |||
</button> | |||
<input type="file" ng-model="file" accept=".jgf" app-filereader ng-change="import(file)"/> | |||
</div> | |||
<div id="board" ng-mousedown="click = true;" ng-mouseup="click = false"> | |||
<div ng-repeat="pixel in pixels" | |||
ng-mouseover="painter(pixel)" | |||
class="pixel" | |||
style=" | |||
left: {{(pixel.position.x * size) + 120 }}px; | |||
top: {{(pixel.position.y * size) + 20}}px; | |||
background: {{pixel.color}}; | |||
width: {{size}}px; | |||
height: {{size}}px;" | |||
> | |||
</div> | |||
</div> | |||
</body> | |||
</html> |
@ -0,0 +1,176 @@ | |||
<!DOCTYPE html> | |||
<html ng-app="myApp"> | |||
<head> | |||
<style type="text/css"> | |||
body{ | |||
margin: 8px; | |||
background: gray; | |||
} | |||
#menu{ | |||
width: 100px; | |||
margin-top: 28px; | |||
text-align: center; | |||
} | |||
#board{ | |||
cursor: crosshair; | |||
border: 1px solid black; | |||
background: white; | |||
} | |||
div.pixel{ | |||
position: absolute; | |||
width: 8px; | |||
height: 8px; | |||
} | |||
div.pixel:hover{ | |||
opacity: .5; | |||
} | |||
</style> | |||
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script> | |||
<script src="js/filesaver.js"></script> | |||
<script type="text/javascript"> | |||
var decodeBase64 = function(s) { | |||
var e={},i,b=0,c,x,l=0,a,r='',w=String.fromCharCode,L=s.length; | |||
var A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; | |||
for(i=0;i<64;i++){e[A.charAt(i)]=i;} | |||
for(x=0;x<L;x++){ | |||
c=e[s.charAt(x)];b=(b<<6)+c;l+=6; | |||
while(l>=8){((a=(b>>>(l-=8))&0xff)||(x<(L-2)))&&(r+=w(a));} | |||
} | |||
return r; | |||
}; | |||
var app = angular.module("myApp", []); | |||
app.directive('appFilereader', function($q) { | |||
var slice = Array.prototype.slice; | |||
return { | |||
restrict: 'A', | |||
require: '?ngModel', | |||
link: function(scope, element, attrs, ngModel) { | |||
if (!ngModel) return; | |||
ngModel.$render = function() {}; | |||
element.bind('change', function(e) { | |||
var element = e.target; | |||
$q.all(slice.call(element.files, 0).map(readFile)) | |||
.then(function(values) { | |||
if (element.multiple) ngModel.$setViewValue(values); | |||
else ngModel.$setViewValue(values.length ? values[0] : null); | |||
}); | |||
function readFile(file) { | |||
var deferred = $q.defer(); | |||
var reader = new FileReader(); | |||
reader.onload = function(e) { | |||
deferred.resolve(e.target.result); | |||
}; | |||
reader.onerror = function(e) { | |||
deferred.reject(e); | |||
}; | |||
reader.readAsDataURL(file); | |||
return deferred.promise; | |||
} | |||
}); //change | |||
} //link | |||
}; //return | |||
}) | |||
app.controller("myCtrl", function($scope,$interval) { | |||
$scope.size = 1; | |||
$scope.pixels= []; | |||
$scope.click = false; | |||
$scope.color = "#000"; | |||
$scope.mouse = { | |||
x: 0, | |||
y: 0 | |||
} | |||
var board = document.getElementById("board"); | |||
$(board).css({width:'200px', height:'200px'}); | |||
var ctx = board.getContext("2d"); | |||
var max = { x: board.width, y: board.height}; | |||
var id = 1; | |||
for(var i = 0; i<max.y; i++){ | |||
for(var j = 0; j<max.x; j++){ | |||
$scope.pixels.push({id: id,position:{x: j, y: i}, color: '#fff'}); | |||
id++; | |||
} | |||
} | |||
var painter = { | |||
draw: function(pixel) { | |||
if (board.getContext) { | |||
angular.forEach($scope.pixels, function(value, key) { | |||
ctx.fillStyle = pixel.color; | |||
ctx.fillRect(pixel.position.x, pixel.position.y, $scope.size, $scope.size); | |||
}); | |||
} | |||
}, | |||
update: function(){ | |||
angular.forEach($scope.pixels, function(value, key) { | |||
value.color = 'black'; | |||
console.log(22); | |||
}); | |||
}, | |||
clear: function() { | |||
if (board.getContext) { | |||
ctx.clearRect(0,0, board.width, board.height); | |||
} | |||
} | |||
}; | |||
/* $interval(function(){ | |||
angular.forEach($scope.pixels, function(value, key) { | |||
squareDrawer.clear(); | |||
squareDrawer.draw(value); | |||
}); | |||
}, 1000);*/ | |||
board.onmousedown = function(e) { | |||
painter.update(); | |||
painter.draw(); | |||
} | |||
board.onmousemove = function(e) { | |||
var rect = this.getBoundingClientRect(); | |||
$scope.mouse = { | |||
x : e.clientX - rect.left, | |||
y : e.clientY - rect.top | |||
} | |||
//ctx.clearRect(0, 0, board.width, board.height); // for demo | |||
/* | |||
while(r = $scope.pixels[i++]) { | |||
// add a single rect to path: | |||
ctx.beginPath(); | |||
ctx.rect(r.position.x, r.position.y, $scope.size, $scope.size); | |||
// check if we hover it, fill red, if not fill it blue | |||
ctx.fillStyle = ctx.isPointInPath(x, y) ? "red" : "blue"; | |||
ctx.fill(); | |||
} | |||
*/ | |||
}; | |||
}); | |||
</script> | |||
</head> | |||
<body ng-controller="myCtrl"> | |||
<canvas id="board"></canvas> | |||
</body> | |||
</html> |
@ -0,0 +1,25 @@ | |||
<!DOCTYPE html> | |||
<html ng-app="myApp"> | |||
<head> | |||
<style type="text/css"> | |||
</style> | |||
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script> | |||
<script src="js/filesaver.js"></script> | |||
<script type="text/javascript"> | |||
var app = angular.module("myApp", []); | |||
app.controller("myCtrl", function($scope) { | |||
$scope.cm = []; | |||
for(var i = 0; i < 100; i++){ | |||
$scope.cm.push(i); | |||
} | |||
}); | |||
</script> | |||
</head> | |||
<body ng-controller="myCtrl"> | |||
<div ng-repeat="i in cm" > | |||
<img src="http://trafico.sevilla.org/camaras/cam{{i}}.jpg"/> | |||
</div> | |||
</body> | |||
</html> |
@ -0,0 +1,11 @@ | |||
<html><body> | |||
<?php | |||
// A simple web site in Cloud9 that runs through Apache | |||
// Press the 'Run' button on the top to start the web server, | |||
// then click the URL that is emitted to the Output tab of the console | |||
echo 'Hello world from Cloud9!'; | |||
?> | |||
</body> | |||
</html> |
@ -0,0 +1,45 @@ | |||
<html> | |||
<head> | |||
<script type="text/javascript"> | |||
var gl; // Un variable global para el contexto WebGL | |||
function start() { | |||
var canvas = document.getElementById("glcanvas"); | |||
gl = initWebGL(canvas); // Inicializar el contexto GL | |||
// Solo continuar si WebGL esta disponible y trabajando | |||
if (gl) { | |||
gl.clearColor(0.0, 0.0, 0.0, 1.0); // Establecer el color base en negro, totalmente opaco | |||
gl.enable(gl.DEPTH_TEST); // Habilitar prueba de profundidad | |||
gl.depthFunc(gl.LEQUAL); // Objetos cercanos opacan objetos lejanos | |||
gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT); // Limpiar el buffer de color asi como el de profundidad | |||
} | |||
} | |||
function initWebGL(canvas) { | |||
gl = null; | |||
try { | |||
// Tratar de tomar el contexto estandar. Si falla, retornar al experimental. | |||
gl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl"); | |||
} | |||
catch(e) {} | |||
// Si no tenemos ningun contexto GL, date por vencido ahora | |||
if (!gl) { | |||
alert("Imposible inicializar WebGL. Tu navegador puede no soportarlo."); | |||
gl = null; | |||
} | |||
return gl; | |||
} | |||
</script> | |||
</head> | |||
<body onload="start()"> | |||
<canvas id="glcanvas" width="640" height="480"> | |||
Tu navegador parece no soportar el elemento HTML5 <code><canvas></code>. | |||
</canvas> | |||
</body> | |||
</html> |
@ -0,0 +1,60 @@ | |||
/** | |||
* @author alteredq / http://alteredqualia.com/ | |||
* @author mr.doob / http://mrdoob.com/ | |||
*/ | |||
Detector = { | |||
canvas : !! window.CanvasRenderingContext2D, | |||
webgl : ( function () { try { return !! window.WebGLRenderingContext && !! document.createElement( 'canvas' ).getContext( 'experimental-webgl' ); } catch( e ) { return false; } } )(), | |||
workers : !! window.Worker, | |||
fileapi : window.File && window.FileReader && window.FileList && window.Blob, | |||
getWebGLErrorMessage : function () { | |||
var domElement = document.createElement( 'div' ); | |||
domElement.style.fontFamily = 'monospace'; | |||
domElement.style.fontSize = '13px'; | |||
domElement.style.textAlign = 'center'; | |||
domElement.style.background = '#eee'; | |||
domElement.style.color = '#000'; | |||
domElement.style.padding = '1em'; | |||
domElement.style.width = '475px'; | |||
domElement.style.margin = '5em auto 0'; | |||
if ( ! this.webgl ) { | |||
domElement.innerHTML = window.WebGLRenderingContext ? [ | |||
'Sorry, your graphics card doesn\'t support <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation">WebGL</a>' | |||
].join( '\n' ) : [ | |||
'Sorry, your browser doesn\'t support <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation">WebGL</a><br/>', | |||
'Please try with', | |||
'<a href="http://www.google.com/chrome">Chrome 10</a>, ', | |||
'<a href="http://www.mozilla.com/en-US/firefox/all-beta.html">Firefox 4</a> or', | |||
'<a href="http://nightly.webkit.org/">Safari 6</a>' | |||
].join( '\n' ); | |||
} | |||
return domElement; | |||
}, | |||
addGetWebGLMessage : function ( parameters ) { | |||
var parent, id, domElement; | |||
parameters = parameters || {}; | |||
parent = parameters.parent !== undefined ? parameters.parent : document.body; | |||
id = parameters.id !== undefined ? parameters.id : 'oldie'; | |||
domElement = Detector.getWebGLErrorMessage(); | |||
domElement.id = id; | |||
parent.appendChild( domElement ); | |||
} | |||
}; |
@ -0,0 +1 @@ | |||
var saveAs=saveAs||function(e){"use strict";if("undefined"==typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var t=e.document,n=function(){return e.URL||e.webkitURL||e},o=t.createElementNS("http://www.w3.org/1999/xhtml","a"),r="download"in o,i=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},a=/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),c=e.webkitRequestFileSystem,f=e.requestFileSystem||c||e.mozRequestFileSystem,u=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},d="application/octet-stream",s=0,l=4e4,v=function(e){var t=function(){"string"==typeof e?n().revokeObjectURL(e):e.remove()};setTimeout(t,l)},p=function(e,t,n){t=[].concat(t);for(var o=t.length;o--;){var r=e["on"+t[o]];if("function"==typeof r)try{r.call(e,n||e)}catch(i){u(i)}}},w=function(e){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e},y=function(t,u,l){l||(t=w(t));var y,m,S,h=this,R=t.type,O=!1,g=function(){p(h,"writestart progress write writeend".split(" "))},b=function(){if(m&&a&&"undefined"!=typeof FileReader){var o=new FileReader;return o.onloadend=function(){var e=o.result;m.location.href="data:attachment/file"+e.slice(e.search(/[,;]/)),h.readyState=h.DONE,g()},o.readAsDataURL(t),void(h.readyState=h.INIT)}if((O||!y)&&(y=n().createObjectURL(t)),m)m.location.href=y;else{var r=e.open(y,"_blank");void 0===r&&a&&(e.location.href=y)}h.readyState=h.DONE,g(),v(y)},E=function(e){return function(){return h.readyState!==h.DONE?e.apply(this,arguments):void 0}},N={create:!0,exclusive:!1};return h.readyState=h.INIT,u||(u="download"),r?(y=n().createObjectURL(t),void setTimeout(function(){o.href=y,o.download=u,i(o),g(),v(y),h.readyState=h.DONE})):(e.chrome&&R&&R!==d&&(S=t.slice||t.webkitSlice,t=S.call(t,0,t.size,d),O=!0),c&&"download"!==u&&(u+=".download"),(R===d||c)&&(m=e),f?(s+=t.size,void f(e.TEMPORARY,s,E(function(e){e.root.getDirectory("saved",N,E(function(e){var n=function(){e.getFile(u,N,E(function(e){e.createWriter(E(function(n){n.onwriteend=function(t){m.location.href=e.toURL(),h.readyState=h.DONE,p(h,"writeend",t),v(e)},n.onerror=function(){var e=n.error;e.code!==e.ABORT_ERR&&b()},"writestart progress write abort".split(" ").forEach(function(e){n["on"+e]=h["on"+e]}),n.write(t),h.abort=function(){n.abort(),h.readyState=h.DONE},h.readyState=h.WRITING}),b)}),b)};e.getFile(u,{create:!1},E(function(e){e.remove(),n()}),E(function(e){e.code===e.NOT_FOUND_ERR?n():b()}))}),b)}),b)):void b())},m=y.prototype,S=function(e,t,n){return new y(e,t,n)};return"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob?function(e,t,n){return n||(e=w(e)),navigator.msSaveOrOpenBlob(e,t||"download")}:(m.abort=function(){var e=this;e.readyState=e.DONE,p(e,"abort")},m.readyState=m.INIT=0,m.WRITING=1,m.DONE=2,m.error=m.onwritestart=m.onprogress=m.onwrite=m.onabort=m.onerror=m.onwriteend=null,S)}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);"undefined"!=typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!=typeof define&&null!==define&&null!==define.amd&&define([],function(){return saveAs}); |
@ -0,0 +1,216 @@ | |||
<html lang="en"><head> | |||
<title>Clouds</title> | |||
<meta charset="utf-8"> | |||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> | |||
<style type="text/css"> | |||
body { | |||
background-color: #326696; | |||
margin: 0px; | |||
overflow: hidden; | |||
font-family:Monospace; | |||
font-size:13px; | |||
text-align:center; | |||
font-weight: bold; | |||
text-align:center; | |||
} | |||
a { | |||
color:#0078ff; | |||
} | |||
.cabin{ | |||
background: url('x-wing.png'); | |||
background-size: cover; | |||
background-position: center bottom; | |||
position: absolute; | |||
top: 0px; | |||
left: 0px; | |||
height: 100vh; | |||
width: 100vw; | |||
cursor:crosshair; | |||
} | |||
</style> | |||
<body> | |||
<script type="text/javascript" src="js/three.min.js"></script> | |||
<script type="text/javascript" src="js/Detector.js"></script> | |||
<script id="vs" type="x-shader/x-vertex"> | |||
varying vec2 vUv; | |||
void main() { | |||
vUv = uv; | |||
gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); | |||
} | |||
</script> | |||
<script id="fs" type="x-shader/x-fragment"> | |||
uniform sampler2D map; | |||
uniform vec3 fogColor; | |||
uniform float fogNear; | |||
uniform float fogFar; | |||
varying vec2 vUv; | |||
void main() { | |||
float depth = gl_FragCoord.z / gl_FragCoord.w; | |||
float fogFactor = smoothstep( fogNear, fogFar, depth ); | |||
gl_FragColor = texture2D( map, vUv ); | |||
gl_FragColor.w *= pow( gl_FragCoord.z, 20.0 ); | |||
gl_FragColor = mix( gl_FragColor, vec4( fogColor, gl_FragColor.w ), fogFactor ); | |||
} | |||
</script> | |||
<script type="text/javascript"> | |||
if ( ! Detector.webgl ) Detector.addGetWebGLMessage(); | |||
var container; | |||
var camera, scene, renderer; | |||
var mesh, geometry, material; | |||
var mouseX = 0, mouseY = 0; | |||
var start_time = Date.now(); | |||
var windowHalfX = window.innerWidth / 2; | |||
var windowHalfY = window.innerHeight / 2; | |||
init(); | |||
function init() { | |||
container = document.createElement( 'div' ); | |||
document.body.appendChild( container ); | |||
// Bg gradient | |||
var canvas = document.createElement( 'canvas' ); | |||
canvas.width = 32; | |||
canvas.height = window.innerHeight; | |||
var context = canvas.getContext( '2d' ); | |||
var gradient = context.createLinearGradient( 0, 0, 0, canvas.height ); | |||
gradient.addColorStop(0, "#1e4877"); | |||
gradient.addColorStop(0.5, "#4584b4"); | |||
context.fillStyle = gradient; | |||
context.fillRect(0, 0, canvas.width, canvas.height); | |||
container.style.background = 'url(' + canvas.toDataURL('image/png') + ')'; | |||
container.style.backgroundSize = '32px 100%'; | |||
// | |||
camera = new THREE.PerspectiveCamera( 30, window.innerWidth / window.innerHeight, 1, 3000 ); | |||
camera.position.z = 6000; | |||
scene = new THREE.Scene(); | |||
geometry = new THREE.Geometry(); | |||
var texture = THREE.ImageUtils.loadTexture( 'cloud10.png', null, animate ); | |||
texture.magFilter = THREE.LinearMipMapLinearFilter; | |||
texture.minFilter = THREE.LinearMipMapLinearFilter; | |||
var fog = new THREE.Fog( 0x4584b4, - 100, 3000 ); | |||
material = new THREE.ShaderMaterial( { | |||
uniforms: { | |||
"map": { type: "t", value: texture }, | |||
"fogColor" : { type: "c", value: fog.color }, | |||
"fogNear" : { type: "f", value: fog.near }, | |||
"fogFar" : { type: "f", value: fog.far }, | |||
}, | |||
vertexShader: document.getElementById( 'vs' ).textContent, | |||
fragmentShader: document.getElementById( 'fs' ).textContent, | |||
depthWrite: false, | |||
depthTest: false, | |||
transparent: true | |||
} ); | |||
var plane = new THREE.Mesh( new THREE.PlaneGeometry( 64, 64 ) ); | |||
for ( var i = 0; i < 8000; i++ ) { | |||
plane.position.x = Math.random() * 1000 - 500; | |||
plane.position.y = - Math.random() * Math.random() * 200 - 15; | |||
plane.position.z = i; | |||
plane.rotation.z = Math.random() * Math.PI; | |||
plane.scale.x = plane.scale.y = Math.random() * Math.random() * 1.5 + 0.5; | |||
THREE.GeometryUtils.merge( geometry, plane ); | |||
} | |||
mesh = new THREE.Mesh( geometry, material ); | |||
scene.add( mesh ); | |||
mesh = new THREE.Mesh( geometry, material ); | |||
mesh.position.z = - 8000; | |||
scene.add( mesh ); | |||
renderer = new THREE.WebGLRenderer( { antialias: false } ); | |||
renderer.setSize( window.innerWidth, window.innerHeight ); | |||
container.appendChild( renderer.domElement ); | |||
document.addEventListener( 'mousemove', onDocumentMouseMove, false ); | |||
window.addEventListener( 'resize', onWindowResize, false ); | |||
} | |||
function onDocumentMouseMove( event ) { | |||
mouseX = ( event.clientX - windowHalfX ) * 0.25; | |||
mouseY = ( event.clientY - windowHalfY ) * 0.15 + 80; | |||
} | |||
function onWindowResize( event ) { | |||
camera.aspect = window.innerWidth / window.innerHeight; | |||
camera.updateProjectionMatrix(); | |||
renderer.setSize( window.innerWidth, window.innerHeight ); | |||
} | |||
function animate() { | |||
requestAnimationFrame( animate ); | |||
position = ( ( Date.now() - start_time ) * 0.03 ) % 8000; | |||
camera.position.x += ( mouseX - camera.position.x ) * 0.01; | |||
camera.position.y += ( - mouseY - camera.position.y ) * 0.01; | |||
camera.position.z = - position + 8000; | |||
renderer.render( scene, camera ); | |||
} | |||
</script> | |||
<div style="background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAPjCAYAAADV7gxzAAAKN0lEQVR4Xu3d51KVSRDG8ekbWVExoIIJERXBWLVGzDkHFLOugSDZhFkEc46I6+rq3t/Z6h7v4f9W8cwXPnLqNz3PdL/vEe2PPy+VErjsjxUtpVQqpWSWiJ+GC4xZ0VIqlUrJzBLyMwQgfv+9FgIpJUspIT9dAOMvhsCKlhLG71s/ZmUrnAOjXsCPIZsDXgPgiiBCBcpWtrJJGMcQXFa2sq1USqVkyRLy0wXQJCxb1cb2AyFANSN+G7oA0wjkBiQuI14APYa+BeCyslXtJagbjCLIRQguG7u6nc2BECDngkIIoDkQAuRkVLa6nb0NXQA8hcl4gTWX2ckoBMh+YCwtEEWIJqELgMtiC8Bl49ZcZpOQF1jbwfYDLoCNZT4QjiuEAJmELgCewmRj13SUwCDMNYAK8B+gsZPtB7IA94zExjd2skkYAuAxyALkXDBubSebA7xAYyc7GY1f1wXnQAhAj2m9H8AFvAjZHPAaAJeNb+zyZ/XYkzorX9fFJmEUIbisfH03extmAa4IiiGAPiHJNYB9icajuJvtB1wAPIXJxq/vZvuB8vU97BuTvAVkDmzoYTuiECDnggkbetgcKIYAORmVb+hhc2DChl72GxS8wMZeOAe8BsjnhBNCgDsG5kHEJqELgMtiC8BlEzf2sTnAC2zqYycjF0BzYGIIgHNBIQTAU5hswqY+th+YuOkKOxd4EaJbMHHzFbYfyALgZJQFwH4gBMjJaNLmK+xzwjiGXAkkm7T5KtsPeBGCAMkmbbnK9gNZAHxj4gJsDrgAORmFALjiGLI5sOUa2w/gWzB56zU2B7IAl4WWBcC5wAXQHAgBriHyy+ga+8Zk8tbrcA5svcb2A5O3XWfnAi9CNgdCgDsGEUToXFCx7TqbhHEMuasgWQhwJZDMjyEI4AI32MkoC4BzQcX2G2xHFALkXOACbBJuu8H2AyEALivAB+hnO6IswGWhTdnRz+ZACJDPCbMAOBlVbO9ncyAEyH6gYkc/2w9M2XETzoEQAPuBKTtvspORFyGbAyHAHQOLIuSugmRTd95kc6AAArfYucCPIZoDU3fdYvuBQgiwObDzFtsPeA2AY4EH0S04CXfdZvuBvAXcZWDTdt9mc6AgAuBcMNWLkCuBlGuAa4iSuQA4GrrAHbYfmLr7NtsPTNtzh50LCiLAHYMoQjYHvAbAxQtU7rnL5kAcQ7AIrHLvXbYfcAF0MsoCYD8QAuQbExdAJ6Npe+6y/UDl3nvsXBBbAC4riADXFlvVvntsDkQNgG1xEQTusTlQte8+2w9U7rvHvjFxAexvgPhf680C4BuTqv332dswBMh+ABeIIuSugmRV+x+wpyC2AFw2ff8DNgmzAFcENv3AA7YfcAE0Bwog8IDtB6YfGKBzYLQLeBGyOXBwgO0HcIEZBwfYJIxjyF0FyWYcfMjehi4AjoZFEDg4wM4FMw49hHNg1Av4MWRz4NAg2w/gAjMPDbJJGMcQLAKbeXiQvQ1dAH1CUgCBQfY2DAHu1XGyGYdwgSE4CQ8PwqegaYj9BoUXIZuEIcAdA5t5eIjtB2Y1DbF3QQEEHrH9wMymITYHZjWNeoEjj+AcaHrE9gOzaAEvQrApTjbryGO2H4gtAAls9pHHbBLyAkcfs7ehFyH6lGy2BI4+gXPg6GO2H5hNC3gRsknY/ITtB2ILyPcF1c1P2CQsgMBT9jbMApYS9N1eq26mBZqfsElYfewpfAqan7LfpnMB9AnJbBfgDkGy6mPP2H7AjyGbA7iAFyF4Hdqc48/YHMhFyK1iCKA5MOf4c7Yf8BrABdBvVlcff8b2A3NOPGdvQw8iNgl5gefsZFRz4gWbAx5E4GWYjBc48ZzNgSwAHkQPIvQbFDUnX8BJeOIFexvWnHzJvj2fUwgBcDi0KEIwCi1qAFy8wNxTL9nJKLaAfFI699Qr9u8PuAA6F4SA/8tH6h891px6yd6GLgDGQDJe4PQrth+ILUBz4PRrth/ABWpPv2ZzYK4XIVgElgXAj+ACWAz7BVB75jXbD8w9/Zq9DWvPvIFzoBAC5FzgxxB9YxI1AK44hmAMJZt39g2bA/gWzDv7lp0LXACdC0KAnAuygCWvROKnZQHwINaefcP2A/POvWXngtqzb9lvUOACXoRgU5xs3rl37DcosgD3JRKbf+4dm4RRhGAR2Py/3rH9gBch+HggFUSAOwQu8B7OAa8Bsh/ABfwYwjngNcCt30UIfoAF59+zSRhFCEahLTj/gZ2MXADNgRAgJ6P559+zc4ELcIcwJZt//gPbDyy48IGdjGIL0By48JF9UpoFuJbIFrgA+aQ0ihAsAqu78JF9QpK3gFtWd/Ej2w+4AHgIktVd/MT2A1kAfE7oAmwOXPzI9gNZgFtRhNyvT8nqLn1i+wFcYOGlz2wOhAAYhRYC5FzgAmgSZgGwJam79JmdCxa2fIZzgBcYZucCL0KwKU62sGWY7QeyADgZ1bcMszkQxxAsAqtvHWbnAi9C8PFAsvrWL2w/EALcIcgC6FyQBcDJKAtwyxa2+ikA/zef+rYvbD+Ab0F92wjbD4QAGIXW0DbCzgVZgIvC3wLghezHEM2BXAOowAjbDzS0f4VzoG2E7QdwAS9CNge8BsBlDe0j7FywqP0rmwNRhOCyRZf/ZucCFwAvw1QUAXAu8BoAazBZw+WvbD+AC/AfoOMb2w+EADkXLO74xiZhFgDnghAgu+JFHR5EXBFYAQS+sXPB4s5/4FPQUQAB6s/E+u+1RS5APif0GkCflPoxZJMwBLhleQu4ZUu6PAcStwsFEPjOJqELoDmwpOs7+6S0EALcIUzJFnd9Z/uBJd3f2TcmXoToFizp/sFORiFAzgVLu3+wOVAQAXA08SLk5qKUbGnPD7YfKIDAv3AOeA2Qc8HSHljAg4hNQhcAl8UWgEsfwJb1/mTngqgBsh8ohACahCFAPild2vuT7QdcAMyhZLxA3y+2H4gtQHNg1Ass7/vF5sAy3wJwWSEE0Mlo+ZX/2H7AawC9DV0AfWNSDAH0GPoWgMuiBsClDyABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgAQkIAEJSEACEpCABCQgAQlIQAISkIAEJCABCUhAAhKQgARwgf8BbJIvirpPSn8AAAAASUVORK5CYII=");"> | |||
<canvas width="1920" height="995" style="width: 1920px; height: 995px;"></canvas> | |||
<div class="cabin"></div> | |||
</div> | |||
</body> | |||
</html> |
@ -0,0 +1,34 @@ | |||
Carácteristicas/ Mejoras a implementar a implementar | |||
TAREAS: | |||
-COMPLEJAS: | |||
- Eliminar Vendor del repositorio <-----SUCCESS -----> (Quedar un dia por hangout para dejarlo subido y bien) (Daniel, Dani y Gustavo) | |||
- Integración de login con redes sociales usando Ouath.io (Modulo independiente) (Gustavo) | |||
- Testear seguridad del framework. (Alejandro) | |||
-Ha pasado la primera face!!!! Va a intentar algo mas chungo... :D | |||
- Crear una nomemclatura para los ficheros que evite los ficheros con nombres duplicados (Todos) | |||
- PROPUESTA -> Juntar todos los js de un controlador en un fichero de nombre <nombremodelo>controller.js | |||
- Generar formularios acordes al tipo de cada campo del modelo. (Daniel) | |||
- include de php -> usar PS-4 (Daniel y Gustavo) | |||
-PHP: | |||
-Mejorar function print_s() (Imprimir arrays de forma visible) | |||
-Mejorar posicion de la llamada al compilador de less (solo cuando se carga el layaout..) | |||
-JS: | |||
-Ver sistemas de alertas en angular(Para colorear la consola) | |||
BUGS: | |||
IDEAS: | |||
- Modulo para google maps. | |||
@ -0,0 +1,192 @@ | |||
###### ####### ######## #### ###### ® | |||
## ## ## ### ## ## ## ## ## | |||
## ## # ## ## ## ## ## | |||
###### ## # ## ######## ## ## | |||
## ## # ## ## ## ## ## | |||
## ## ### ## ## ## ## ## ## | |||
###### ####### ######## #### ###### | |||
================================================ | |||
## 1. Introducción | |||
Sobic es un framework basado en el patrón Modelo-Vista-Controlador que combina los lenguajes PHP y AngularJS. Sobic ha sido y continua siendo desarrollado por NextSun Limited. | |||
## 2. Requisitos de Sobic: | |||
- Apache2. | |||
- PHP 5.5 o superior, aunque se recomienda tener la última versión. | |||
- Composer instalado en el sistema o en la carpeta. | |||
- Activar la extensión de PDO en PHP para el acceso a bases de datos. | |||
- Gestor de bases datos como MySQL, Oracle SQL, SQLite, etc. | |||
- Activar los módulos de PHP mod_rewrite y cURL. | |||
## 3. Estructura de Sobic | |||
Sobic tiene una estructura de carpetas y archivos básica que ha de ser respetada para el correcto funcionamiento de una aplicación desarrollada con Sobic. La estructura es la siguiente: | |||
- App. | |||
En la carpeta “App” se almacenan los archivos que se podrían denominar como la api del servicio, es el software que se ejecuta en el servidor y que se comunica con la base de datos y gestiona la información y como esta es tratada y almacenada. Contiene los controladores, las rutas y los modelos. | |||
- Config. | |||
Contiene los archivos de configuración de la base de datos y el estado de la plataforma. | |||
- Database. | |||
En la carpeta “Database” se almacenan los archivos que contienen el conjunto de operaciones que se pueden realizar en la base de datos, operaciones tales como las migraciones o las semillas. | |||
- Public. | |||
La carpeta “Public” corresponde con el “front-end” o la parte visible de la aplicación, es el software que ejecuta el cliente y que le añade estilo y ordena la información mostrada y proveída por la api o “back-end”. Contiene las imágenes mostradas, las librerías y fuentes, los estilos CSS, etc. | |||
- Vendor. | |||
La carpeta “Vendor” incluye los componentes utilizados por el sistema Sobic, también se incluyen aquí los complementos o plugins así como todo el software de terceros utilizado. Es una carpeta auto-generada por Composer al instalarse junto con otros componentes esenciales como Slim o Eloquent. No se recomienda modificar el contenido ya existente de esta carpeta, si se añade algún componente aparecerá aquí el nuevo. | |||
- Composer.json. | |||
- Composer.lock. | |||
- Sobic. | |||
Por último se encuentran tres ficheros de configuracion, “composer.json”, “composer.lock” y “sobic”. | |||
Los dos primeros pertenecen a composer y el último es el alma de sobic, en el se almacenan las operaciones que crearán todo el sistema, se recomienda no modificar ninguno de estos tres archivos. | |||
## 4. Comenzando con Sobic | |||
Descargar el git desde la dirección de Sobic en github (https://github.com/nextsun-limited/sobic/ "Sobic") y guardalo en la raíz del servidor web. A continuación se actualiza "Composer" con el comando: | |||
composer install/update | |||
Una vez realizada la tarea y con el sistema gestor de base de datos configurado, se modificará el acceso a la misma para que conecte satisfactoriamente, para esto Sobic ofrece varios entornos de producción. | |||
En la carpeta "config" y gestionado por el archivo "enviroment.php" se establece el estado de la plataforma entre desarrollo, prueba y producción, en cada uno podemos tener una base de datos diferente. Cada uno tiene su archivo donde establecer las variables de entorno y se hace de la siguiente manera: | |||
$capsule->addConnection(array( | |||
'driver' => 'mysql', //Llamamos al driver que conecta con la base de datos. | |||
'host' => getenv('IP'), //Establecemos el host de la base de datos. | |||
'port' => 3306, //Seleccionamos el puerto de connexión. | |||
'database' => 'c9', //Indicamos el nombre de la base de datos a utilizar. | |||
'username' => getenv('C9_USER'), //Usuario de la base de datos. | |||
'password' => '', //Password del usuario. | |||
'prefix' => '', //Indicamos el prefijo | |||
'charset' => "utf8", //Se indica el juego de carácteres. | |||
'collation' => "utf8_unicode_ci" | |||
)); | |||
- Nota 1: El ejemplo utilizado es para un sistema implementado en c9.io, por eso se deja la contraseña en blanco, recuerda cambiarla antes de publicar el trabajo. | |||
- Nota 2: Ya que el ORM utilizado es ELOQUENT, la estructura y sentencias utilizadas es la misma que podemos encontrar en la documentación oficial de ELOQUENT. | |||
Ahora se puede comenzar a introducir las diferentes instrucciones de Sobic, pero antes de hacer ninguna prueba recuerda que la configuración de acceso web se hace desde el archivo '.htaccess' ubicado en la raíz y por defecto, si se accede directamente a la carpeta "/public", invocará un error 404. | |||
## 5. Instrucciones de Sobic | |||
#### 5.1 Creación de migraciones: | |||
Las migraciones son un tipo de control de versiones para la base de datos. Hace posible que los diferentes miembros del equipo modifiquen la estructura de la base de datos y que el resto de miembros esten informados sobre el estado actual. | |||
Para crear una migración introduce la siguiente orden en consola: | |||
php sobic create migrate [name] | |||
Ejemplo: | |||
php sobic create migrate shop "string('name')" "integer('price')" [...] | |||
Se creará un archivo parecido a este "app/database/migrations/ExamplesMigration.php". | |||
#### 5.1.2 Ejecutar la migración: | |||
Inicializará la base de datos con la estructura existente, en el caso de no haber creado previamente una migración se ejecutará la migraciones por defecto. | |||
php sobic migrate [--seed] | |||
Al ejecutar una migración creada por defecto se borrarán las tablas de las bases de datos y se volverán a crear, por lo que los datos se perderán, para evitar esto comenta o borra esta línea dentro del archivo "NameMigration.php": | |||
Capsule::schema()->dropIfExists('name'); | |||
#### 5.2 Creación de Seed y Poblado de datos: | |||
Crea una semilla que poblará la base de datos con datos de prueba. | |||
php sobic create seed [name] | |||
Se creará un archivo parecido a este "app/database/seeds/ExamplesSeed.php". | |||
#### 5.3 Creación de Modelos: | |||
El Modelo es la representación de la información con la cual el sistema opera, por lo tanto gestiona todos los accesos a dicha información, tanto consultas como actualizaciones, implementando también los privilegios de acceso que se hayan descrito en las especificaciones de la aplicación (lógica de negocio). | |||
Para crear un modelo introducimos la siguiente orden: | |||
php sobic create model [name] [atributo:nombre_atributo],[..,] | |||
Ejemplo: | |||
php sobic create model shop "string('name')" "integer('price')" [...] | |||
Se creará un archivo parecido a este "app/models/Examples.php". | |||
Después de crear un modelo ha de actualizarse composer, para cargar el modelo creado, introduciendo: | |||
composer dump-autoload | |||
#### 5.4 Creación de Controladores: | |||
El controlador responde a eventos (usualmente acciones del usuario) e invoca peticiones al 'modelo' cuando se hace alguna solicitud sobre la información (por ejemplo, editar un documento o un registro en una base de datos). | |||
Para crear un controlador introducimos la siguiente orden: | |||
php sobic create controller [name] | |||
Se creará un archivo parecido a este "app/controllers/example.php". | |||
#### 5.5 Creación de Scaffold: | |||
La orden Scaffold genera una estructura base de una aplicación con todas las instrucciones anteriormente descritas. | |||
Para crear un controlador introducimos la siguiente orden: | |||
php sobic create scaffold [name] [arguments],[..,] | |||
Ejemplo: | |||
php sobic create scaffold shop "string('name')" "integer('price')" [...] | |||
Durante la creación del scaffold se modifican los siguientes archivos: | |||
- En "app/main.php" bajo la etiqueta "/** Scaffold PHP Controller **/" donde se añade el método "include" con la ubicación del controlador. | |||
- En "public/js/main.js" bajo la etiqueta "/* Es importante que estas lineas siempre esten al final para que funcione el scaffolg. */" donde se indica la ubicación de los controladores. | |||
- En "public/partials/layout.html" bajo las etiquetas "< !-- Scaffold JS -- >" y "< !-- Scaffold HTML -- >" donde primeramente se carga la libreria js y después se crea el enlace en la vista HTML. | |||
Después de crear un modelo ha de actualizarse composer, para cargar el modelo creado, introduciendo: | |||
composer dump-autoload | |||
También hay que ejecutar la migración que se creó con el scaffold, con el siguiente comando: | |||
php sobic migrate [--seed] | |||
#### 5.6 Creación de Vistas: | |||
La vista presenta el 'modelo' (información y lógica de negocio) en un formato adecuado para interactuar (usualmente la interfaz de usuario) por tanto requiere de dicho 'modelo' la información que debe representar como salida. | |||
Para crear un controlador introducimos la siguiente orden: | |||
php sobic create views [name] [atributo:nombre_atributo],[..,] | |||
Se crearán los siguientes archivos y directorios: | |||
- public/partials/example | |||
- public/partials/example/form.html | |||
- public/partials/example/form.html | |||
- public/js/controllers/example | |||
- public/js/controllers/example/form.js | |||
- public/js/controllers/example/show.js | |||
## 6. Recomendaciones | |||
#### 6.1 Se recomienda que en caso de implementar la gestion de usuarios proporcionada, se haga sobre el protocolo HTTPS y no sobre HTTP. | |||
## 7. Licencia | |||
Sobic ha sido desarrollado por el equipo de NextSun UK Limited, bajo licencia MIT. | |||
Sobic utiliza los siguientes frameworks: | |||
- Illuminate con Slim y Eloquent pertenecientes al framework Laravel registrado bajo <a href="https://es.wikipedia.org/wiki/Licencia_MIT"> licencia MIT. </a> | |||
- Composer como gestor de dependencias, publicado bajo <a href="https://es.wikipedia.org/wiki/Licencia_MIT"> licencia MIT. </a> | |||
## 8. Desarrolladores | |||
Idea and implementation by: | |||
- Gustavo Adolfo Mesa Roldán | |||
Supported by: | |||
- Daniel rodriguez (Assistant, something more than itching code & doc, corrections and moral support) | |||
- Rafael Bustamante (Manager, css artist and moral support) |
@ -0,0 +1,65 @@ | |||
<?php | |||
/** | |||
* Personal Controller | |||
*/ | |||
$app->group('/personals', function () use ($app) { | |||
$app->get('/', function () use ($app) { | |||
$results = []; | |||
$results['personals'] = Personal::all(); | |||
$results["success"]= "true"; | |||
echo json_encode($results); | |||
}); | |||
$app->get('/show/:id', function ($id) use ($app) { | |||
$results = []; | |||
$results["personal"] = Personal::find($id); | |||
$results["success"]= "true"; | |||
echo json_encode($results); | |||
}); | |||
$app->post('/form', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$results = []; | |||
$results["success"]= "false"; | |||
if (validatedKey($data['user'])) { | |||
if(isset($data['personal']['id'])){ | |||
Personal::find($data['personal']['id'])->update($data['personal']); | |||
}else{ | |||
Personal::create($data['personal']); | |||
} | |||
$results["success"]= "true"; | |||
$results["value"]= "New"; | |||
} else { | |||
$results["success"]= "false"; | |||
$results["error"]= "No auth"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
$app->post('/delete', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$results = []; | |||
$results["success"]= "false"; | |||
if (validatedKey($data['user'])) { | |||
$personal = Personal::find($data['personal']['id']); | |||
$personal->delete(); | |||
$results["personals"] = Personal::all(); | |||
$results["success"]= "true"; | |||
$results["value"]= "delete"; | |||
} else { | |||
$results["success"]= "false"; | |||
$results["error"]= "No auth"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
}); |
@ -0,0 +1,146 @@ | |||
<?php | |||
$app->group('/user', function () use ($app) { | |||
$app->get('/', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$results = []; | |||
$results["user"] = []; | |||
$results["success"]= "false"; | |||
if (validatedKey($data["user"]["id"], $data["user"]["key"])) { | |||
$user = user::where('id', '=', $data["user"]["id"])->first(); | |||
$results["user"] = $user; | |||
$results["success"]= "true"; | |||
} else { | |||
$results["success"]= "false"; | |||
$results["error"]= "No auth"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
$app->post('/photo', function () use ($app) { | |||
$data = json_decode($_POST['data'], true); | |||
$results = []; | |||
$results["success"]= "false"; | |||
if (validatedKey($data['user'])) { | |||
if($_FILES['file']['name'] != ""){ // El campo foto contiene una imagen... | |||
// Primero, hay que validar que se trata de un JPG/GIF/PNG | |||
$allowedExts = array("jpg", "jpeg", "gif", "png", "JPG", "GIF", "PNG"); | |||
$ext = end(explode(".", $_FILES["file"]["name"])); | |||
if ((($_FILES["file"]["type"] == "image/gif") | |||
|| ($_FILES["file"]["type"] == "image/jpeg") | |||
|| ($_FILES["file"]["type"] == "image/png") | |||
|| ($_FILES["file"]["type"] == "image/pjpeg")) | |||
&& in_array($ext, $allowedExts)) { | |||
$ext = end(explode('.', $_FILES['file']['name'])); | |||
$photo = substr(md5(uniqid(rand())),0,10).".".$ext; | |||
$dir = dirname(__FILE__).'/../../public/img/users'; // directorio de tu elección | |||
if(move_uploaded_file($_FILES['file']['tmp_name'], $dir.'/'.$photo)){ | |||
$user = User::find($data['user']['id']); | |||
$user->img = "img/users/".$photo; | |||
$user->save(); | |||
$img = new Imagick($dir.'/'.$photo); | |||
$img->cropThumbnailImage(50, 50); | |||
$img->writeImage ($dir.'/'.$photo); | |||
$results['img'] = "img/users/".$photo; | |||
$results["success"]= "true"; | |||
} | |||
} else { | |||
$results["error"]= "Invalid format"; | |||
} | |||
} else { | |||
$results["error"]= "Not exist file"; | |||
} | |||
} else { | |||
$results["success"]= "false"; | |||
$results["error"]= "No auth"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
$app->post('/new', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$results = []; | |||
$results["success"]= "false"; | |||
if(!User::where('email', '=', $data["user"]["email"])->exists()){ | |||
$user = new User(); | |||
$user->email = $data["user"]["email"]; | |||
$user->password = hash('sha512',$data["user"]["password"]); | |||
$user->save(); | |||
$encriptedKey = hash('sha512', $user->id.$user->email.$user->created_at); | |||
$results["id"] = $user->id; | |||
$results["email"] = $user->email; | |||
$results["isAdmin"] = $user->isAdmin; | |||
$results["key"] = $encriptedKey; | |||
$results["success"]= "true"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
$app->post('/login', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$results = []; | |||
$results["success"]= "false"; | |||
$veri = User::where('email', '=', $data['user']['email'])->where('email', '=', $data['user']['email'])->where('password', '=', hash('sha512', $data['user']['password']))->first(); | |||
if(User::where('email', '=', $data['user']['email'])->where('password', '=', hash('sha512', $data['user']['password']))->exists()){ | |||
$results["id"] = $veri->id; | |||
$results["email"] = $veri->email; | |||
$results["isAdmin"] = $veri->isAdmin; | |||
$results["key"] = hash('sha512', $veri->id.$veri->email.$veri->created_at); | |||
$results["success"]= "true"; | |||
} | |||
echo json_encode($results); | |||
}); | |||
$app->get('/list', function () use ($app) { | |||
$users = User::all(); | |||
$results["users"] = $users; | |||
echo json_encode($results); | |||
}); | |||
$app->post('/social', function () use ($app) { | |||
$data = json_decode($app->request->getBody(), true); | |||
$pass = hash('sha512', $data['social']."-".$data['user']['email']."-".hash('sha512', $data['user']['name'])); | |||
$results = []; | |||
$results["success"]= "false"; | |||
if($data['social'] =="twitter"){ | |||
$data["user"]["email"] = "@".$data["user"]["alias"]; | |||
} | |||
$query = User::where('email', '=', $data["user"]["email"])->where('password', '=', $pass); | |||
//print_s($pass); | |||
if($query->exists()){ | |||
$user = $query->first(); | |||
}else{ | |||
$user = new User(); | |||
$user->email = $data["user"]["email"]; | |||
$user->password = $pass; | |||
$user->img = $data["user"]["avatar"]; | |||
$user->social = $data["social"]; | |||
$user->save(); | |||
} | |||
$encriptedKey = hash('sha512', $user->id.$user->email.$user->created_at); | |||
$results["id"] = $user->id; | |||
$results["email"] = $user->email; | |||
$results["isAdmin"] = $user->isAdmin; | |||
$results["img"] = $user->img; | |||
$results["social"] = $user->social; | |||
$results["key"] = $encriptedKey; | |||
$results["success"]= "true"; | |||
echo json_encode($results); | |||
}); | |||
}); |
@ -0,0 +1,42 @@ | |||
<?php | |||
function print_s($var){ | |||
echo "<pre>".print_r($var)."</pre>"; | |||
} | |||
//** Compilacion de css a less **// | |||
function autoCompileLess($inputFile, $outputFile) { | |||
// load the cache | |||
$cacheFile = $inputFile.".cache"; | |||
if (file_exists($cacheFile)) { | |||
$cache = unserialize(file_get_contents($cacheFile)); | |||
} else { | |||
$cache = $inputFile; | |||
} | |||
$less = new lessc; | |||
$less->setFormatter("compressed"); | |||
$newCache = $less->cachedCompile($cache); | |||
if (!is_array($cache) || $newCache["updated"] > $cache["updated"]) { | |||
file_put_contents($cacheFile, serialize($newCache)); | |||
file_put_contents($outputFile, $newCache['compiled']); | |||
} | |||
} | |||
//** Validacion del cliente AngularJS **/ | |||
function validatedKey($user) { | |||
try { | |||
$veri = User::where('id', '=', $user['id'])->first(); | |||
$encriptedKey = hash('sha512', $veri->id.$veri->email.$veri->created_at); | |||
if($user['key'] == $encriptedKey) { | |||
return true; | |||
} else { | |||
return false; | |||
} | |||
} catch (Exception $e) { | |||
return false; | |||
} | |||
} |
@ -0,0 +1,21 @@ | |||
<?php | |||
$app->notFound(function () use ($app) { | |||
require '../public/partials/layout.html'; | |||
}); | |||
$app->get('/',function(){ | |||
require '../public/partials/layout.html'; | |||
}); | |||
$app->group('/api', function () use ($app) { | |||
include ('controllers/user.php'); | |||
/* Es importante que respetes estos comentarios para general scaffold sin probremas. */ | |||
/** Scaffold PHP Controller **/ | |||
include ('controllers/personal.php'); | |||
}); |
@ -0,0 +1,11 @@ | |||
<?php | |||
/** | |||
* Personal Model | |||
*/ | |||
class Personal extends \Illuminate\Database\Eloquent\Model | |||
{ | |||
protected $table = "personals"; | |||
protected $fillable = ['candidate_id','title','name','surname','dateBirth','phoneNumber','address','postalCode','city','country','summary','linkedin']; | |||
} |
@ -0,0 +1,29 @@ | |||
<?php | |||
/** | |||
* User Model | |||
*/ | |||
class User extends \Illuminate\Database\Eloquent\Model | |||
{ | |||
protected $table = "users"; | |||
protected $hidden = array('password'); | |||
/* | |||
Example of relations: | |||
--------------------- | |||
public function questions() { | |||
return $this->hasMany('Questions'); | |||
} | |||
public function personal() { | |||
return $this->hasOne('Personal'); | |||
} | |||
public function job() { | |||
return $this->belongsTo('Job'); | |||
} | |||
*/ | |||
} |
@ -0,0 +1,34 @@ | |||
{ | |||
"name": "NextSun/Sobic", | |||
"description": "Sobic power", | |||
"type": "project", | |||
"authors":[ | |||
{ | |||
"name": "Gustavo Adolfo Mesa Roldan", | |||
"email": "gs.gore@gmail.com", | |||
"homepage": "http://blog.nextsun.eu", | |||
"role": "God" | |||
}, | |||
{ | |||
"name": "Danien Rodriguez", | |||
"email": "drg809@gmail.com", | |||
"homepage": "http://blog.nextsun.eu", | |||
"role": "Dragon" | |||
} | |||
], | |||
"require": { | |||
"slim/slim": "2.*", | |||
"illuminate/database": "*", | |||
"leafo/lessphp": "0.4.0", | |||
"kevinlebrun/colors.php": "0.*" | |||
}, | |||
"autoload": { | |||
"files": [ | |||
"app/helper.php", | |||
"config/environment.php" | |||
], | |||
"classmap": [ | |||
"app/models" | |||
] | |||
} | |||
} |
@ -0,0 +1,584 @@ | |||
{ | |||
"_readme": [ | |||
"This file locks the dependencies of your project to a known state", | |||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", | |||
"This file is @generated automatically" | |||
], | |||
"hash": "5099aeab45c0196a2f9c966ed9da2dd4", | |||
"packages": [ | |||
{ | |||
"name": "danielstjules/stringy", | |||
"version": "1.10.0", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/danielstjules/Stringy.git", | |||
"reference": "4749c205db47ee5b32e8d1adf6d9aff8db6caf3b" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/danielstjules/Stringy/zipball/4749c205db47ee5b32e8d1adf6d9aff8db6caf3b", | |||
"reference": "4749c205db47ee5b32e8d1adf6d9aff8db6caf3b", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"ext-mbstring": "*", | |||
"php": ">=5.3.0" | |||
}, | |||
"require-dev": { | |||
"phpunit/phpunit": "~4.0" | |||
}, | |||
"type": "library", | |||
"autoload": { | |||
"psr-4": { | |||
"Stringy\\": "src/" | |||
}, | |||
"files": [ | |||
"src/Create.php" | |||
] | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Daniel St. Jules", | |||
"email": "danielst.jules@gmail.com", | |||
"homepage": "http://www.danielstjules.com" | |||
} | |||
], | |||
"description": "A string manipulation library with multibyte support", | |||
"homepage": "https://github.com/danielstjules/Stringy", | |||
"keywords": [ | |||
"UTF", | |||
"helpers", | |||
"manipulation", | |||
"methods", | |||
"multibyte", | |||
"string", | |||
"utf-8", | |||
"utility", | |||
"utils" | |||
], | |||
"time": "2015-07-23 00:54:12" | |||
}, | |||
{ | |||
"name": "doctrine/inflector", | |||
"version": "v1.0.1", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/doctrine/inflector.git", | |||
"reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604", | |||
"reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.3.2" | |||
}, | |||
"require-dev": { | |||
"phpunit/phpunit": "4.*" | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "1.0.x-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-0": { | |||
"Doctrine\\Common\\Inflector\\": "lib/" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Roman Borschel", | |||
"email": "roman@code-factory.org" | |||
}, | |||
{ | |||
"name": "Benjamin Eberlei", | |||
"email": "kontakt@beberlei.de" | |||
}, | |||
{ | |||
"name": "Guilherme Blanco", | |||
"email": "guilhermeblanco@gmail.com" | |||
}, | |||
{ | |||
"name": "Jonathan Wage", | |||
"email": "jonwage@gmail.com" | |||
}, | |||
{ | |||
"name": "Johannes Schmitt", | |||
"email": "schmittjoh@gmail.com" | |||
} | |||
], | |||
"description": "Common String Manipulations with regard to casing and singular/plural rules.", | |||
"homepage": "http://www.doctrine-project.org", | |||
"keywords": [ | |||
"inflection", | |||
"pluralize", | |||
"singularize", | |||
"string" | |||
], | |||
"time": "2014-12-20 21:24:13" | |||
}, | |||
{ | |||
"name": "illuminate/container", | |||
"version": "v5.1.16", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/illuminate/container.git", | |||
"reference": "66621248395705cc64bc1ce9262b99b4bfa606f2" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/illuminate/container/zipball/66621248395705cc64bc1ce9262b99b4bfa606f2", | |||
"reference": "66621248395705cc64bc1ce9262b99b4bfa606f2", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"illuminate/contracts": "5.1.*", | |||
"php": ">=5.5.9" | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "5.1-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-4": { | |||
"Illuminate\\Container\\": "" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Taylor Otwell", | |||
"email": "taylorotwell@gmail.com" | |||
} | |||
], | |||
"description": "The Illuminate Container package.", | |||
"homepage": "http://laravel.com", | |||
"time": "2015-08-26 23:00:38" | |||
}, | |||
{ | |||
"name": "illuminate/contracts", | |||
"version": "v5.1.16", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/illuminate/contracts.git", | |||
"reference": "610aea16e3d91dfd85db4cf43703403a83b7cba2" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/illuminate/contracts/zipball/610aea16e3d91dfd85db4cf43703403a83b7cba2", | |||
"reference": "610aea16e3d91dfd85db4cf43703403a83b7cba2", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.5.9" | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "5.1-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-4": { | |||
"Illuminate\\Contracts\\": "" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Taylor Otwell", | |||
"email": "taylorotwell@gmail.com" | |||
} | |||
], | |||
"description": "The Illuminate Contracts package.", | |||
"homepage": "http://laravel.com", | |||
"time": "2015-08-31 12:59:22" | |||
}, | |||
{ | |||
"name": "illuminate/database", | |||
"version": "v5.1.16", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/illuminate/database.git", | |||
"reference": "7655e39c507776c9b9226a8f5619ed9933d3396e" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/illuminate/database/zipball/7655e39c507776c9b9226a8f5619ed9933d3396e", | |||
"reference": "7655e39c507776c9b9226a8f5619ed9933d3396e", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"illuminate/container": "5.1.*", | |||
"illuminate/contracts": "5.1.*", | |||
"illuminate/support": "5.1.*", | |||
"nesbot/carbon": "~1.19", | |||
"php": ">=5.5.9" | |||
}, | |||
"suggest": { | |||
"doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.4).", | |||
"fzaninotto/faker": "Required to use the eloquent factory builder (~1.4).", | |||
"illuminate/console": "Required to use the database commands (5.1.*).", | |||
"illuminate/events": "Required to use the observers with Eloquent (5.1.*).", | |||
"illuminate/filesystem": "Required to use the migrations (5.1.*)." | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "5.1-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-4": { | |||
"Illuminate\\Database\\": "" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Taylor Otwell", | |||
"email": "taylorotwell@gmail.com" | |||
} | |||
], | |||
"description": "The Illuminate Database package.", | |||
"homepage": "http://laravel.com", | |||
"keywords": [ | |||
"database", | |||
"laravel", | |||
"orm", | |||
"sql" | |||
], | |||
"time": "2015-09-03 14:53:32" | |||
}, | |||
{ | |||
"name": "illuminate/support", | |||
"version": "v5.1.16", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/illuminate/support.git", | |||
"reference": "c5389968d48517b3b51cfd8cd4abd72f0cc1575b" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/illuminate/support/zipball/c5389968d48517b3b51cfd8cd4abd72f0cc1575b", | |||
"reference": "c5389968d48517b3b51cfd8cd4abd72f0cc1575b", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"danielstjules/stringy": "~1.8", | |||
"doctrine/inflector": "~1.0", | |||
"ext-mbstring": "*", | |||
"illuminate/contracts": "5.1.*", | |||
"php": ">=5.5.9" | |||
}, | |||
"suggest": { | |||
"jeremeamia/superclosure": "Required to be able to serialize closures (~2.0).", | |||
"symfony/var-dumper": "Required to use the dd function (2.7.*)." | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "5.1-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-4": { | |||
"Illuminate\\Support\\": "" | |||
}, | |||
"files": [ | |||
"helpers.php" | |||
] | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Taylor Otwell", | |||
"email": "taylorotwell@gmail.com" | |||
} | |||
], | |||
"description": "The Illuminate Support package.", | |||
"homepage": "http://laravel.com", | |||
"time": "2015-09-03 15:47:41" | |||
}, | |||
{ | |||
"name": "kevinlebrun/colors.php", | |||
"version": "0.4.1", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/kevinlebrun/colors.php.git", | |||
"reference": "d132f36d06e48ea080855af19b4bcb1fb615224a" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/kevinlebrun/colors.php/zipball/d132f36d06e48ea080855af19b4bcb1fb615224a", | |||
"reference": "d132f36d06e48ea080855af19b4bcb1fb615224a", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.3.0" | |||
}, | |||
"require-dev": { | |||
"phpunit/phpunit": "3.7.*", | |||
"satooshi/php-coveralls": "dev-master", | |||
"squizlabs/php_codesniffer": "1.*" | |||
}, | |||
"type": "library", | |||
"autoload": { | |||
"psr-0": { | |||
"Colors": "src/" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Kevin Le Brun", | |||
"email": "lebrun.k@gmail.com", | |||
"homepage": "http://kevinlebrun.fr", | |||
"role": "developer" | |||
} | |||
], | |||
"description": "Colors for PHP CLI scripts", | |||
"homepage": "https://github.com/kevinlebrun/colors.php", | |||
"keywords": [ | |||
"cli", | |||
"color", | |||
"colors", | |||
"console", | |||
"shell" | |||
], | |||
"time": "2014-12-23 01:23:37" | |||
}, | |||
{ | |||
"name": "leafo/lessphp", | |||
"version": "v0.4.0", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/leafo/lessphp.git", | |||
"reference": "51f3f06f0fe78a722dabfd14578444bdd078d9de" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/leafo/lessphp/zipball/51f3f06f0fe78a722dabfd14578444bdd078d9de", | |||
"reference": "51f3f06f0fe78a722dabfd14578444bdd078d9de", | |||
"shasum": "" | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "0.3-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"classmap": [ | |||
"lessc.inc.php" | |||
] | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT", | |||
"GPL-3.0" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Leaf Corcoran", | |||
"email": "leafot@gmail.com", | |||
"homepage": "http://leafo.net" | |||
} | |||
], | |||
"description": "lessphp is a compiler for LESS written in PHP.", | |||
"homepage": "http://leafo.net/lessphp/", | |||
"time": "2013-08-09 17:09:19" | |||
}, | |||
{ | |||
"name": "nesbot/carbon", | |||
"version": "1.20.0", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/briannesbitt/Carbon.git", | |||
"reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", | |||
"reference": "bfd3eaba109c9a2405c92174c8e17f20c2b9caf3", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.3.0", | |||
"symfony/translation": "~2.6|~3.0" | |||
}, | |||
"require-dev": { | |||
"phpunit/phpunit": "~4.0" | |||
}, | |||
"type": "library", | |||
"autoload": { | |||
"psr-0": { | |||
"Carbon": "src" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Brian Nesbitt", | |||
"email": "brian@nesbot.com", | |||
"homepage": "http://nesbot.com" | |||
} | |||
], | |||
"description": "A simple API extension for DateTime.", | |||
"homepage": "http://carbon.nesbot.com", | |||
"keywords": [ | |||
"date", | |||
"datetime", | |||
"time" | |||
], | |||
"time": "2015-06-25 04:19:39" | |||
}, | |||
{ | |||
"name": "slim/slim", | |||
"version": "2.6.2", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/slimphp/Slim.git", | |||
"reference": "20a02782f76830b67ae56a5c08eb1f563c351a37" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/slimphp/Slim/zipball/20a02782f76830b67ae56a5c08eb1f563c351a37", | |||
"reference": "20a02782f76830b67ae56a5c08eb1f563c351a37", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.3.0" | |||
}, | |||
"suggest": { | |||
"ext-mcrypt": "Required for HTTP cookie encryption" | |||
}, | |||
"type": "library", | |||
"autoload": { | |||
"psr-0": { | |||
"Slim": "." | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Josh Lockhart", | |||
"email": "info@joshlockhart.com", | |||
"homepage": "http://www.joshlockhart.com/" | |||
} | |||
], | |||
"description": "Slim Framework, a PHP micro framework", | |||
"homepage": "http://github.com/codeguy/Slim", | |||
"keywords": [ | |||
"microframework", | |||
"rest", | |||
"router" | |||
], | |||
"time": "2015-03-08 18:41:17" | |||
}, | |||
{ | |||
"name": "symfony/translation", | |||
"version": "v2.7.5", | |||
"source": { | |||
"type": "git", | |||
"url": "https://github.com/symfony/translation.git", | |||
"reference": "485877661835e188cd78345c6d4eef1290d17571" | |||
}, | |||
"dist": { | |||
"type": "zip", | |||
"url": "https://api.github.com/repos/symfony/translation/zipball/485877661835e188cd78345c6d4eef1290d17571", | |||
"reference": "485877661835e188cd78345c6d4eef1290d17571", | |||
"shasum": "" | |||
}, | |||
"require": { | |||
"php": ">=5.3.9" | |||
}, | |||
"conflict": { | |||
"symfony/config": "<2.7" | |||
}, | |||
"require-dev": { | |||
"psr/log": "~1.0", | |||
"symfony/config": "~2.7", | |||
"symfony/intl": "~2.4", | |||
"symfony/phpunit-bridge": "~2.7", | |||
"symfony/yaml": "~2.2" | |||
}, | |||
"suggest": { | |||
"psr/log": "To use logging capability in translator", | |||
"symfony/config": "", | |||
"symfony/yaml": "" | |||
}, | |||
"type": "library", | |||
"extra": { | |||
"branch-alias": { | |||
"dev-master": "2.7-dev" | |||
} | |||
}, | |||
"autoload": { | |||
"psr-4": { | |||
"Symfony\\Component\\Translation\\": "" | |||
} | |||
}, | |||
"notification-url": "https://packagist.org/downloads/", | |||
"license": [ | |||
"MIT" | |||
], | |||
"authors": [ | |||
{ | |||
"name": "Fabien Potencier", | |||
"email": "fabien@symfony.com" | |||
}, | |||
{ | |||
"name": "Symfony Community", | |||
"homepage": "https://symfony.com/contributors" | |||
} | |||
], | |||
"description": "Symfony Translation Component", | |||
"homepage": "https://symfony.com", | |||
"time": "2015-09-06 08:36:38" | |||
} | |||
], | |||
"packages-dev": [], | |||
"aliases": [], | |||
"minimum-stability": "stable", | |||
"stability-flags": [], | |||
"prefer-stable": false, | |||
"prefer-lowest": false, | |||
"platform": [], | |||
"platform-dev": [] | |||
} |
@ -0,0 +1,17 @@ | |||
<?php | |||
/** | |||
* Configure of development | |||
*/ | |||
$capsule->addConnection(array( | |||
'driver' => 'mysql', | |||
'host' => getenv('IP'), | |||
'port' => 3306, | |||
'database' => 'c9', | |||
'username' => getenv('C9_USER'), | |||
'password' => '', | |||
'prefix' => '', | |||
'charset' => "utf8", | |||
'collation' => "utf8_unicode_ci" | |||
)); |
@ -0,0 +1,32 @@ | |||
<?php | |||
use Illuminate\Database\Capsule\Manager as Capsule; | |||
$capsule = new Capsule; | |||
/* | |||
ENVIRONMENT | |||
1 = dev | |||
2 = testing | |||
3 = production | |||
*/ | |||
define("ENVIRONMENT", "1"); | |||
switch (ENVIRONMENT) { | |||
default: | |||
require 'development.php'; | |||
break; | |||
case 2: | |||
require 'testing.php'; | |||
break; | |||
case 3: | |||
require 'production.php'; | |||
break; | |||
} | |||
$capsule->setAsGlobal(); | |||
$capsule->bootEloquent(); | |||
// set timezone for timestamps etc | |||
date_default_timezone_set('UTC'); | |||
@ -0,0 +1,17 @@ | |||
<?php | |||
/** | |||
* Configure of production | |||
*/ | |||
$capsule->addConnection(array( | |||
'driver' => 'mysql', | |||
'host' => getenv('IP'), | |||
'port' => 3306, | |||
'database' => 'c9', | |||
'username' => getenv('C9_USER'), | |||
'password' => '', | |||
'prefix' => '', | |||
'charset' => "utf8", | |||
'collation' => "utf8_unicode_ci" | |||
)); |
@ -0,0 +1,17 @@ | |||
<?php | |||
/** | |||
* Configure of testing | |||
*/ | |||
$capsule->addConnection(array( | |||
'driver' => 'mysql', | |||
'host' => getenv('IP'), | |||
'port' => 3306, | |||
'database' => 'c9', | |||
'username' => getenv('C9_USER'), | |||
'password' => '', | |||
'prefix' => '', | |||
'charset' => "utf8", | |||
'collation' => "utf8_unicode_ci" | |||
)); |
@ -0,0 +1,24 @@ | |||
<?php | |||
use Illuminate\Database\Capsule\Manager as Capsule; | |||
/** | |||
* User Migrate | |||
*/ | |||
class UserMigration { | |||
function run() | |||
{ | |||
Capsule::schema()->dropIfExists('users'); | |||
Capsule::schema()->create('users', function($table) { | |||
$table->increments('id'); | |||
$table->string('email')->unique(); | |||
$table->string('password'); | |||
$table->boolean('isAdmin'); | |||
$table->string('img'); | |||
$table->string('social'); | |||
$table->timestamps(); | |||
}); | |||
} | |||
} |
@ -0,0 +1,15 @@ | |||
<?php | |||
class UserSeed { | |||
function run() | |||
{ | |||
$user = new User; | |||
$user->email = "sobic@sobic.nextsun"; | |||
$user->password = "d404559f602eab6fd602ac7680dacbfaadd13630335e951f097af3900e9de176b6db28512f2e000b9d04fba5133e8b1c6e8df59db3a8ab9d60be4b97cc9e81db"; | |||
$user->isAdmin = true; | |||
$user->img = "dsadssd"; | |||
$user->social = "dsadssd"; | |||
$user->save(); | |||
} | |||
} |
@ -0,0 +1,33 @@ | |||
<?php | |||
use Illuminate\Database\Capsule\Manager as Capsule; | |||
/** | |||
* Personals Migrate | |||
*/ | |||
class PersonalsMigration { | |||
function run() | |||
{ | |||
Capsule::schema()->dropIfExists('personals'); | |||
Capsule::schema()->create('personals', function($table) { | |||
$table->increments('id'); | |||
$table->integer('candidate_id')->unique()->unsigned(); | |||
$table->string('title'); | |||
$table->string('name'); | |||
$table->string('surname'); | |||
$table->date('dateBirth'); | |||
$table->integer('phoneNumber'); | |||
$table->string('address'); | |||
$table->string('postalCode'); | |||
$table->string('city'); | |||
$table->string('country'); | |||
$table->text('summary'); | |||
$table->string('linkedin'); | |||
$table->timestamps(); | |||
$table->foreign('candidate_id')->references('id')->on('users')->onDelete('cascade')->onUpdate('cascade'); | |||
}); | |||
} | |||
} |
@ -0,0 +1,11 @@ | |||
<?php | |||
/** | |||
* Personals Seed | |||
*/ | |||
class PersonalsSeed { | |||
function run() | |||
{ | |||
} | |||
} |
@ -0,0 +1,7 @@ | |||
@import "partials/variables.less"; | |||
@import "partials/animations.less"; | |||
@import "partials/mixins.less"; | |||
@import "partials/base.less"; | |||
@import "partials/modal.less"; | |||
@ -0,0 +1,12 @@ | |||
.page{ | |||
&.ng-leave { | |||
.opacity(0); | |||
} | |||
&.ng-enter { | |||
transition: 1s linear all; | |||
.opacity(0); | |||
&.ng-enter-active{ | |||
.opacity(1); | |||
} | |||
} | |||
} |
@ -0,0 +1,256 @@ | |||
body{ | |||
background-image: url('../img/cielo.jpg'); | |||
background-size: cover; | |||
color: white; | |||
text-shadow: 0px 0px 30px rgba(150, 150, 150, 1); | |||
} | |||
header, footer{ | |||
display: none; | |||
} | |||
#main-container { | |||
padding-top: @headerHeight; | |||
} | |||
#gui{ | |||
position: absolute; | |||
bottom: 10px; | |||
left: 30px; | |||
padding: 15px; | |||
padding-top: 5px; | |||
background: rgba(0, 0, 0, 0.8); | |||
z-index: 20; | |||
-webkit-border-radius: 30px; | |||
-moz-border-radius: 30px; | |||
border-radius: 30px; | |||
} | |||
.pointer{ | |||
cursor: pointer; | |||
} | |||
.container-view { | |||
margin-top: 150px; | |||
width: 210px; | |||
height: 140px; | |||
position: relative; | |||
perspective: 500px; | |||
/*-webkit-animation-name: rotacubo; | |||
-webkit-animation-timing-function: linear; | |||
-webkit-animation-iteration-count: infinite; | |||
-webkit-animation-duration: 12s; | |||
-webkit-transform-style: preserve-3d; | |||
-webkit-transform-origin: 60px 60px 0; | |||
transform: rotateZ(0deg) rotateX(45deg) rotateX(450deg);*/ | |||
} | |||
#carousel, #map { | |||
width: 100%; | |||
height: 100%; | |||
position: absolute; | |||
transform-style: preserve-3d; | |||
} | |||
#carousel figure { | |||
display: block; | |||
position: absolute; | |||
width: 121px; | |||
height: 121px; | |||
background-size: cover; | |||
} | |||
#carousel figure:nth-child(1) { | |||
transform: translateZ(60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(2) { | |||
transform: rotateY(90deg) translateZ(60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(3) { | |||
transform: rotateY(90deg) rotateX(90deg) translateZ(60px); | |||
} | |||
#carousel figure:nth-child(4) { | |||
transform: rotateX(-90deg) translateY(120px) translateX(0px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(5) { | |||
transform: rotateY(90deg) translateZ(-60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(6) { | |||
transform: rotateX(-90deg) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(7) { | |||
transform: rotateY(90deg) translateX(120px) translateY(0px) translateZ(-60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(8) { | |||
transform: translateZ(-540px); | |||
background-image: url('../img/pared1.jpg'); | |||
background-size: 100% 100%; | |||
} | |||
#carousel figure:nth-child(9) { | |||
transform: rotateY(90deg) rotateX(90deg) translateX(120px) translateZ(60px); | |||
} | |||
#carousel figure:nth-child(10) { | |||
transform: rotateY(90deg) translateX(120px) translateY(0px) translateZ(60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(11) { | |||
transform: rotateX(-90deg) translateY(240px) translateX(0px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(12) { | |||
transform: rotateY(90deg) rotateX(90deg) translateX(240px) translateZ(60px); | |||
} | |||
#carousel figure:nth-child(13) { | |||
transform: translateZ(60px) translateZ(-240px) translateX(120px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(14) { | |||
transform: translateZ(60px) translateZ(-240px) translateX(-120px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(15) { | |||
transform: rotateX(-90deg) translateY(240px) translateX(120px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(16) { | |||
transform: rotateX(-90deg) translateY(240px) translateX(-120px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(17) { | |||
transform: rotateX(-90deg) translateY(240px) translateX(120px) translateZ(-60px); | |||
} | |||
#carousel figure:nth-child(18) { | |||
transform: rotateX(-90deg) translateY(240px) translateX(-120px) translateZ(-60px); | |||
} | |||
#carousel figure:nth-child(19) { | |||
transform: rotateY(90deg) translateX(240px) translateY(0px) translateZ(-180px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(20) { | |||
transform: rotateY(90deg) translateX(240px) translateY(0px) translateZ(180px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(21) { | |||
transform: translateZ(-300px) translateX(120px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(22) { | |||
transform: translateZ(-300px) translateX(-120px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(23) { | |||
transform: rotateY(90deg) rotateX(90deg) translateX(360px) translateZ(60px); | |||
} | |||
#carousel figure:nth-child(24) { | |||
transform: rotateX(-90deg) translateY(360px) translateX(0px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(25) { | |||
transform: rotateY(90deg) translateX(360px) translateY(0px) translateZ(-60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(26) { | |||
transform: rotateY(90deg) translateX(360px) translateY(0px) translateZ(60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(27) { | |||
transform: rotateX(-90deg) translateY(480px) translateX(0px) translateZ(60px); | |||
background-image: url('../img/grass.jpg'); | |||
} | |||
#carousel figure:nth-child(28) { | |||
transform: rotateY(90deg) translateX(480px) translateY(0px) translateZ(-60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel figure:nth-child(29) { | |||
transform: rotateY(90deg) translateX(480px) translateY(0px) translateZ(60px); | |||
background-image: url('../img/pared1.jpg'); | |||
} | |||
#carousel #pika { | |||
transform: translateX(120px) translateY(50px) translateZ(-240px); | |||
background-image: url('../img/pika.gif'); | |||
background-size: 100% auto; | |||
background-repeat: no-repeat; | |||
width: 100px; | |||
height: 101px; | |||
} | |||
#carousel #cthulu { | |||
transform: translateX(130px) translateY(45px) translateZ(-256px); | |||
background-image: url('../img/cthulhu.gif'); | |||
background-size: 100% auto; | |||
background-repeat: no-repeat; | |||
width: 100px; | |||
height: 101px; | |||
} | |||
#carousel #smoke { | |||
transform: translateX(145px) translateY(-90px) translateZ(-300px); | |||
background-image: url('../img/smoke.gif'); | |||
background-size: 100% auto; | |||
background-repeat: no-repeat; | |||
width: 100px; | |||
height: 101px; | |||
} | |||
#carousel #bob { | |||
transform: translateX(-123px) translateY(-55px) translateZ(-300px); | |||
background-image: url('../img/bob.gif'); | |||
background-size: 100% auto; | |||
background-repeat: no-repeat; | |||
width: 100px; | |||
height: 101px; | |||
} | |||
#carousel #termi { | |||
transform: translateX(-120px) translateY(35px) translateZ(-299px); | |||
background-image: url('../img/terminator.gif'); | |||
width: 100px; | |||
height: 40px; | |||
} | |||
#carousel #portal{ | |||
transform: translateX(35px) translateY(32px) translateZ(-538px); | |||
background-image: url('../img/Wormhole1.gif'); | |||
background-size: 100% 100%; | |||
-webkit-border-radius: 60px; | |||
-moz-border-radius: 60px; | |||
border-radius: 60px; | |||
width: 50px; | |||
height: 50px; | |||
&.ng-enter { | |||
transition: 15s ease all; | |||
.opacity(0); | |||
&.ng-enter-active{ | |||
.opacity(1); | |||
} | |||
} | |||
} | |||
@-webkit-keyframes rotacubo { | |||
/*0% { | |||
transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg); | |||
} | |||
100% { | |||
transform: rotateX(360deg) rotateY(360deg) rotateZ(360deg); | |||
}*/ | |||
} |
@ -0,0 +1,48 @@ | |||
.dropdown-submenu { | |||
position: relative; | |||
} | |||
.dropdown-submenu>.dropdown-menu { | |||
top: 0; | |||
left: 100%; | |||
margin-top: -6px; | |||
margin-left: -1px; | |||
-webkit-border-radius: 0 6px 6px 6px; | |||
-moz-border-radius: 0 6px 6px; | |||
border-radius: 0 6px 6px 6px; | |||
} | |||
.dropdown-submenu:hover>.dropdown-menu { | |||
display: block; | |||
} | |||
.dropdown-submenu>a:after { | |||
display: block; | |||
content: " "; | |||
float: right; | |||
width: 0; | |||
height: 0; | |||
border-color: transparent; | |||
border-style: solid; | |||
border-width: 5px 0 5px 5px; | |||
border-left-color: #ccc; | |||
margin-top: 5px; | |||
margin-right: -10px; | |||
} | |||
.dropdown-submenu:hover>a:after { | |||
border-left-color: #fff; | |||
} | |||
.dropdown-submenu.pull-left { | |||
float: none; | |||
} | |||
.dropdown-submenu.pull-left>.dropdown-menu { | |||
left: -100%; | |||
margin-left: 10px; | |||
-webkit-border-radius: 6px 0 6px 6px; | |||
-moz-border-radius: 6px 0 6px 6px; | |||
border-radius: 6px 0 6px 6px; | |||
} |
@ -0,0 +1,253 @@ | |||
/* VENDOR MIXINS */ | |||
// Rounded corners | |||
.border-top-radius(@radius) { | |||
border-top-right-radius: @radius; | |||
border-top-left-radius: @radius; | |||
} | |||
.border-right-radius(@radius) { | |||
border-bottom-right-radius: @radius; | |||
border-top-right-radius: @radius; | |||
} | |||
.border-bottom-radius(@radius) { | |||
border-bottom-right-radius: @radius; | |||
border-bottom-left-radius: @radius; | |||
} | |||
.border-left-radius(@radius) { | |||
border-bottom-left-radius: @radius; | |||
border-top-left-radius: @radius; | |||
} | |||
// Box shadows | |||
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) { | |||
-webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1 | |||
box-shadow: @shadow; | |||
} | |||
// Transitions | |||
.transition(@transition) { | |||
-webkit-transition: @transition; | |||
transition: @transition; | |||
} | |||
.transition-property(@transition-property) { | |||
-webkit-transition-property: @transition-property; | |||
transition-property: @transition-property; | |||
} | |||
.transition-delay(@transition-delay) { | |||
-webkit-transition-delay: @transition-delay; | |||
transition-delay: @transition-delay; | |||
} | |||
.transition-duration(@transition-duration) { | |||
-webkit-transition-duration: @transition-duration; | |||
transition-duration: @transition-duration; | |||
} | |||
.transition-timing-function(@timing-function) { | |||
-webkit-transition-timing-function: @timing-function; | |||
transition-timing-function: @timing-function; | |||
} | |||
.transition-transform(@transition) { | |||
-webkit-transition: -webkit-transform @transition; | |||
-moz-transition: -moz-transform @transition; | |||
-o-transition: -o-transform @transition; | |||
transition: transform @transition; | |||
} | |||
// Transformations | |||
.rotate(@degrees) { | |||
-webkit-transform: rotate(@degrees); | |||
-ms-transform: rotate(@degrees); // IE9 only | |||
transform: rotate(@degrees); | |||
} | |||
.scale(@ratio; @ratio-y...) { | |||
-webkit-transform: scale(@ratio, @ratio-y); | |||
-ms-transform: scale(@ratio, @ratio-y); // IE9 only | |||
transform: scale(@ratio, @ratio-y); | |||
} | |||
.translate(@x; @y) { | |||
-webkit-transform: translate(@x, @y); | |||
-ms-transform: translate(@x, @y); // IE9 only | |||
transform: translate(@x, @y); | |||
} | |||
.skew(@x; @y) { | |||
-webkit-transform: skew(@x, @y); | |||
-ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+ | |||
transform: skew(@x, @y); | |||
} | |||
.translate3d(@x; @y; @z) { | |||
-webkit-transform: translate3d(@x, @y, @z); | |||
transform: translate3d(@x, @y, @z); | |||
} | |||
.rotateX(@degrees) { | |||
-webkit-transform: rotateX(@degrees); | |||
-ms-transform: rotateX(@degrees); // IE9 only | |||
transform: rotateX(@degrees); | |||
} | |||
.rotateY(@degrees) { | |||
-webkit-transform: rotateY(@degrees); | |||
-ms-transform: rotateY(@degrees); // IE9 only | |||
transform: rotateY(@degrees); | |||
} | |||
.perspective(@perspective) { | |||
-webkit-perspective: @perspective; | |||
-moz-perspective: @perspective; | |||
perspective: @perspective; | |||
} | |||
.perspective-origin(@perspective) { | |||
-webkit-perspective-origin: @perspective; | |||
-moz-perspective-origin: @perspective; | |||
perspective-origin: @perspective; | |||
} | |||
.transform-origin(@origin) { | |||
-webkit-transform-origin: @origin; | |||
-moz-transform-origin: @origin; | |||
-ms-transform-origin: @origin; // IE9 only | |||
transform-origin: @origin; | |||
} | |||
// Animations | |||
.animation(@animation) { | |||
-webkit-animation: @animation; | |||
animation: @animation; | |||
} | |||
.animation-name(@name) { | |||
-webkit-animation-name: @name; | |||
animation-name: @name; | |||
} | |||
.animation-duration(@duration) { | |||
-webkit-animation-duration: @duration; | |||
animation-duration: @duration; | |||
} | |||
.animation-timing-function(@timing-function) { | |||
-webkit-animation-timing-function: @timing-function; | |||
animation-timing-function: @timing-function; | |||
} | |||
.animation-delay(@delay) { | |||
-webkit-animation-delay: @delay; | |||
animation-delay: @delay; | |||
} | |||
.animation-iteration-count(@iteration-count) { | |||
-webkit-animation-iteration-count: @iteration-count; | |||
animation-iteration-count: @iteration-count; | |||
} | |||
.animation-direction(@direction) { | |||
-webkit-animation-direction: @direction; | |||
animation-direction: @direction; | |||
} | |||
// Opacity | |||
.opacity(@opacity) { | |||
opacity: @opacity; | |||
// IE8 filter | |||
@opacity-ie: (@opacity * 100); | |||
filter: ~"alpha(opacity=@{opacity-ie})"; | |||
} | |||
// Placeholder text | |||
.placeholder(@color: @input-color-placeholder) { | |||
&::-moz-placeholder { color: @color; } // Firefox | |||
&:-ms-input-placeholder { color: @color; } // Internet Explorer 10+ | |||
&::-webkit-input-placeholder { color: @color; } // Safari and Chrome | |||
} | |||
// Colums | |||
.content-columns(@width; @count; @gap) { | |||
-webkit-column-width: @width; | |||
-moz-column-width: @width; | |||
column-width: @width; | |||
-webkit-column-count: @count; | |||
-moz-column-count: @count; | |||
column-count: @count; | |||
-webkit-column-gap: @gap; | |||
-moz-column-gap: @gap; | |||
column-gap: @gap; | |||
} | |||
// Gradients | |||
#gradient > .vertical(#333; #000); | |||
#gradient > .horizontal(#333; #000); | |||
#gradient > .radial(#333; #000); | |||
#gradient > .directional(#333; #000; 45deg); | |||
#gradient > .striped(#333; 45deg); | |||
#gradient > .vertical-three-colors(#777; #333; 25%; #000); | |||
#gradient > .horizontal-three-colors(#777; #333; 25%; #000); | |||
/* UTILITY MIXINS */ | |||
// Clearfix | |||
.clearfix() { | |||
&:before, | |||
&:after { | |||
content: " "; | |||
display: table; | |||
} | |||
&:after { | |||
clear: both; | |||
} | |||
} | |||
// Horizontal centering | |||
.center-block() { | |||
display: block; | |||
margin-left: auto; | |||
margin-right: auto; | |||
} | |||
// Sizing Helpers | |||
.size(@width; @height) { | |||
width: @width; | |||
height: @height; | |||
} | |||
.square(@size) { | |||
.size(@size; @size); | |||
} | |||
// Resizable Textarea | |||
.resizable(@direction: both) { | |||
// Options: horizontal, vertical, both | |||
resize: @direction; | |||
// Safari fix | |||
overflow: auto; | |||
} | |||
// Truncating text | |||
.text-overflow() { | |||
overflow: hidden; | |||
text-overflow: ellipsis; | |||
white-space: nowrap; | |||
} | |||
// Retina Images | |||
.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) { | |||
background-image: url("@{file-1x}"); | |||
@media | |||
only screen and (-webkit-min-device-pixel-ratio: 2), | |||
only screen and ( min--moz-device-pixel-ratio: 2), | |||
only screen and ( -o-min-device-pixel-ratio: 2/1), | |||
only screen and ( min-device-pixel-ratio: 2), | |||
only screen and ( min-resolution: 192dpi), | |||
only screen and ( min-resolution: 2dppx) { | |||
background-image: url("@{file-2x}"); | |||
background-size: @width-1x @height-1x; | |||
} | |||
} | |||
@ -0,0 +1,4 @@ | |||
.modal-header-danger { background-color: #d2322d; } | |||
.modal-header-primary { background-color: #428bca; } | |||
.modal-header-default { background-color: #eeeeee; } | |||
.modal-header-success { background-color: #333333; } |
@ -0,0 +1,88 @@ | |||
// Scaffolding | |||
@body-bg: #fff; | |||
@text-color: @black-50; | |||
@grid-columns: 12; | |||
@grid-gutter-width: 15px; | |||
@grid-float-breakpoint: 768px; | |||
@headerHeight: 50px; | |||
// Grayscale | |||
@gray-darker: lighten(#000, 13.5%); // #222 | |||
@gray-dark: lighten(#000, 20%); // #333 | |||
@gray: lighten(#000, 33.5%); // #555 | |||
@gray-light: lighten(#000, 46.7%); // #777 | |||
@gray-lighter: lighten(#000, 93.5%); // #eee | |||
// Semantic colours | |||
@brand-primary: darken(#428bca, 6.5%); // #337ab7 | |||
@brand-success: #5cb85c; | |||
@brand-info: #5bc0de; | |||
@brand-warning: #f0ad4e; | |||
@brand-danger: #d9534f; | |||
// Link colours | |||
@link-color: @brand-primary; | |||
@link-hover-color: darken(@link-color, 15%); | |||
//Typography | |||
@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif; | |||
@font-family-serif: Georgia, "Times New Roman", Times, serif; | |||
@font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace; | |||
@font-family-base: @font-family-sans-serif; | |||
@font-size-base: 14px; | |||
@font-size-large: ceil((@font-size-base * 1.25)); // ~18px | |||
@font-size-small: ceil((@font-size-base * 0.85)); // ~12px | |||
@font-size-h1: floor((@font-size-base * 2.6)); // ~36px | |||
@font-size-h2: floor((@font-size-base * 2.15)); // ~30px | |||
@font-size-h3: ceil((@font-size-base * 1.7)); // ~24px | |||
@font-size-h4: ceil((@font-size-base * 1.25)); // ~18px | |||
@font-size-h5: @font-size-base; | |||
@font-size-h6: ceil((@font-size-base * 0.85)); // ~12px | |||
@line-height-base: 1.428571429; // 20/14 | |||
@line-height-computed: floor((@font-size-base * @line-height-base)); // ~20px | |||
@headings-font-family: inherit; | |||
@headings-font-weight: 500; | |||
@headings-line-height: 1.1; | |||
@headings-color: inherit; | |||
// Icons | |||
@icon-font-path: "../fonts/"; | |||
@icon-font-name: "glyphicons-halflings-regular"; | |||
// Components | |||
@padding-base-vertical: 6px; | |||
@padding-base-horizontal: 12px; | |||
@padding-large-vertical: 10px; | |||
@padding-large-horizontal: 16px; | |||
@padding-small-vertical: 5px; | |||
@padding-small-horizontal: 10px; | |||
@padding-xs-vertical: 1px; | |||
@padding-xs-horizontal: 5px; | |||
@line-height-large: 1.33; | |||
@line-height-small: 1.5; | |||
@border-radius-base: 4px; | |||
@border-radius-large: 6px; | |||
@border-radius-small: 3px; | |||
@component-active-color: #fff; | |||
@component-active-bg: @brand-primary; | |||
@caret-width-base: 4px; | |||
@caret-width-large: 5px; |
@ -0,0 +1,16 @@ | |||
<?php | |||
/** Carga las dependencias**/ | |||
require __DIR__.'/../vendor/autoload.php'; | |||
/** Compilamos el less a css, en el caso de que existan cambios y no estemos en producion **/ | |||
if (ENVIRONMENT != 3){ | |||
autoCompileLess('css/less/main.less', 'css/main.css'); | |||
} | |||
/** Creamos la api res y cargamos las llamadas **/ | |||
$app = new \Slim\Slim(); | |||
/** Requerimos las rutas **/ | |||
require '../app/main.php'; | |||
$app->run(); |
@ -0,0 +1,15 @@ | |||
app.controller('MenuController', function($scope, $cookieStore, $location, $window, $modal) { | |||
if(typeof($cookieStore.get('user')) != "undefined"){ | |||
$scope.user = $cookieStore.get('user'); | |||
$scope.logout = function(){ | |||
$cookieStore.remove("user"); | |||
$location.path("/"); | |||
$window.location.reload(); | |||
}; | |||
}else{ | |||
$scope.logg = function(log){ | |||
modalCreatelog($modal, log); | |||
}; | |||
} | |||
}); |
@ -0,0 +1,11 @@ | |||
app.controller('ModalController', function ($scope, $modalInstance, modal) { | |||
//Modal config | |||
$scope.modal = modal; | |||
// Close modal function | |||
$scope.closeModal = function () { | |||
$modalInstance.dismiss('cancel'); | |||
}; | |||
}); |
@ -0,0 +1,2 @@ | |||
app.controller('ContactController', function($scope, $document) { | |||
}); |
@ -0,0 +1,84 @@ | |||
app.controller('HomeController', function($scope, $document, $interval) { | |||
$scope.camara = angular.element('#carousel'); | |||
$scope.play = true; | |||
$scope.pika = -190; | |||
$scope.t = { | |||
x: 30, | |||
y: 16, | |||
z: 455 | |||
} | |||
$scope.r = { | |||
x: 0, | |||
y: 0, | |||
z: 0 | |||
} | |||
var move = function(e){ | |||
if (e.keyCode == 38) { | |||
$scope.t.z = $scope.t.z + 2; | |||
} | |||
if (e.keyCode == 40) { | |||
$scope.t.z = $scope.t.z - 2; | |||
} | |||
if (e.keyCode == 37) { | |||
$scope.t.x = $scope.t.x + 2; | |||
} | |||
if (e.keyCode == 39) { | |||
$scope.t.x = $scope.t.x - 2; | |||
} | |||
if (e.keyCode == 65) { | |||
$scope.t.y = $scope.t.y + 2; | |||
} | |||
if (e.keyCode == 90) { | |||
$scope.t.y = $scope.t.y - 2; | |||
} | |||
if (e.keyCode == 81) { | |||
$scope.r.y = $scope.r.y + 2; | |||
} | |||
if (e.keyCode == 87) { | |||
$scope.r.y = $scope.r.y - 2; | |||
} | |||
}; | |||
$document.on('keydown', move); | |||
$scope.playStop = function(){ | |||
if($scope.play == false){ | |||
$scope.play = true; | |||
}else{ | |||
$scope.play = false; | |||
} | |||
} | |||
$interval( function(){ | |||
if($scope.play == true){ | |||
if($scope.t.z<1000){ | |||
$scope.t.z = $scope.t.z+1; | |||
}else{ | |||
$scope.t.z = 455; | |||
} | |||
if($scope.pika < 300){ | |||
$scope.pika = $scope.pika + 10; | |||
}else{ | |||
$scope.pika = -190 | |||
} | |||
} | |||
}, 50); | |||
}); | |||
/* | |||
var konami_keys = [38, 38, 40, 40, 37, 39, 37, 39, 66, 65], konami_index = 0; | |||
var handler = function(e) { | |||
if (e.keyCode === konami_keys[konami_index++]) { | |||
if (konami_index === konami_keys.length) { | |||
// $document.off('keydown', handler); | |||
modal = modalCreate($modal,"konami", "We are very sorry.", "We are really sorry but we are still developing the system to increase the number of lifes."); | |||
scope.$apply(scope.konami); | |||
} | |||
} else { | |||
konami_index = 0; | |||
} | |||
}; | |||
*/ |
@ -0,0 +1,64 @@ | |||
app.controller('PersonalFormController', function($scope, $cookieStore, $http, $location, $routeParams, $modal, Upload) { | |||
if( typeof($cookieStore.get('user')) != "undefined" ){ | |||
$scope.user = $cookieStore.get('user'); | |||
if($routeParams.id){ | |||
$http({ | |||
method: 'GET', | |||
url: serverURL+"/personals/show/"+$routeParams.id, | |||
data: { | |||
user: $scope.user | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$scope.personal = data.personal; | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "It has successfully made the connection but something went wrong"); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Not connected with server."); | |||
}); | |||
} | |||
$scope.createPersonal = function (personal) { | |||
$http({ | |||
method: 'POST', | |||
url: serverURL+"/personals/form", | |||
data: { | |||
personal: personal, | |||
user: $scope.user | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$location.path( "/personals" ); | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "It has successfully made the connection but something went wrong"); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Not connected with server."); | |||
}); | |||
}; | |||
// upload on file select or drop | |||
$scope.upload = function (file) { | |||
if (file && !file.$error) { | |||
Upload.upload({ | |||
url: serverURL+"/user/photo", | |||
data: {'user': $scope.user}, | |||
file: file | |||
}).progress(function (evt) { | |||
var progressPercentage = parseInt(100.0 * evt.loaded / evt.total); | |||
$scope.progressPercentage = progressPercentage; | |||
}).success(function (data, status, headers, config) { | |||
$scope.user.img = data.img; | |||
$cookieStore.put('user', $scope.user); | |||
$scope.progressPercentage = 0; | |||
}).error(function (data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Error to upload an image."); | |||
}) | |||
} | |||
}; | |||
} | |||
}); |
@ -0,0 +1,41 @@ | |||
app.controller('PersonalController', function($scope, $cookieStore, $http, $filter, $modal) { | |||
if(typeof($cookieStore.get('user')) != "undefined"){ | |||
$scope.user = $cookieStore.get('user'); | |||
} | |||
$http({ | |||
method: 'GET', | |||
url: serverURL+"/personals/", | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$scope.list = data.personals; | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "It has successfully made the connection but something went wrong"); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Not connected with server."); | |||
}); | |||
$scope.removePersonal = function(personal){ | |||
var basket = $cookieStore.get('basket'); | |||
$http({ | |||
method: 'POST', | |||
url: serverURL+"/personals/delete", | |||
data: { | |||
personal: personal, | |||
user: $scope.user | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
var index = $scope.list.indexOf(personal) | |||
$scope.list.splice(index, 1); | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "It has successfully made the connection but something went wrong"); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Not connected with server."); | |||
}); | |||
}; | |||
}); |
@ -0,0 +1,94 @@ | |||
app.controller('UserController', function($scope, $http, $cookieStore, $modal, $modalInstance, $window, modal) { | |||
$scope.logg = modal.logg; | |||
$scope.closeModal = function () { | |||
$modalInstance.dismiss('cancel'); | |||
}; | |||
$scope.registerUser = function(register){ | |||
$http({ | |||
method: 'POST', | |||
url: serverURL+"/user/new", | |||
data: { | |||
user: register | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$cookieStore.put('user',data); | |||
$window.location.reload(); | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "Email already in use."); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Don't connected with server."); | |||
}); | |||
}; | |||
$scope.loginUser = function(login){ | |||
$http({ | |||
method: 'POST', | |||
url: serverURL+"/user/login", | |||
data: { | |||
user: login | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$cookieStore.put('user',data); | |||
$window.location.reload(); | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "Invalid email or password."); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Don't connected with server."); | |||
}); | |||
}; | |||
OAuth.initialize('YHWU5IeupujOH-Izgk6Wc9V3b5w'); // Yo | |||
$scope.clickConnect = function(provider) { | |||
OAuth.popup(provider).done(function(result) { | |||
//Get your user's personal data | |||
result.me().done(function(me) { | |||
var user = {}; | |||
if(provider == "facebook"){ | |||
result.get('me?fields=email').done(function(data) { | |||
var profile = me; | |||
profile.email = data.email; | |||
$scope.getSocialLogin(profile, provider); | |||
}); | |||
}else if("google"){ | |||
$scope.getSocialLogin(me, provider); | |||
}else if("twitter"){ | |||
$scope.getSocialLogin(me, provider); | |||
} | |||
$scope.me = me; | |||
$scope.provider = provider; | |||
}); | |||
}) | |||
}; | |||
$scope.getSocialLogin = function(data, provider){ | |||
$http({ | |||
method: 'POST', | |||
url: serverURL+"/user/social", | |||
data: { | |||
user: data, | |||
social: provider | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
if(data.success == "true"){ | |||
$cookieStore.put('user',data); | |||
$window.location.reload(); | |||
}else{ | |||
modal = modalCreate($modal,"danger", "Error", "Invalid email or password."); | |||
} | |||
}).error(function(data, status, headers, config) { | |||
modal = modalCreate($modal,"danger", "Error", "Don't connected with server."); | |||
}) | |||
}; | |||
}) |
@ -0,0 +1,17 @@ | |||
app.controller('ListUsersController', function($scope, $http, $cookieStore) { | |||
if(typeof($cookieStore.get('user')) != "undefined"){ | |||
$scope.user = $cookieStore.get('user'); | |||
} | |||
$http({ | |||
method: 'GET', | |||
url: serverURL+"/user/list", | |||
data: { | |||
user: $scope.user | |||
}, | |||
headers: {'Content-Type': 'application/x-www-form-urlencoded'}, | |||
}).success(function(data, status, headers, config) { | |||
$scope.list = data.users; | |||
}).error(function(data, status, headers, config) { | |||
console.log("error"); | |||
}); | |||
}); |
@ -0,0 +1,33 @@ | |||
/* | |||
AngularJS v1.3.1 | |||
(c) 2010-2014 Google, Inc. http://angularjs.org | |||
License: MIT | |||
*/ | |||
(function(M,f,S){'use strict';f.module("ngAnimate",["ng"]).directive("ngAnimateChildren",function(){return function(T,B,k){k=k.ngAnimateChildren;f.isString(k)&&0===k.length?B.data("$$ngAnimateChildren",!0):T.$watch(k,function(f){B.data("$$ngAnimateChildren",!!f)})}}).factory("$$animateReflow",["$$rAF","$document",function(f,B){return function(k){return f(function(){k()})}}]).config(["$provide","$animateProvider",function(T,B){function k(f){for(var g=0;g<f.length;g++){var k=f[g];if(1==k.nodeType)return k}} | |||
function N(f,g){return k(f)==k(g)}var s=f.noop,g=f.forEach,ba=B.$$selectors,$=f.isArray,ca=f.isString,da=f.isObject,t={running:!0};T.decorator("$animate",["$delegate","$$q","$injector","$sniffer","$rootElement","$$asyncCallback","$rootScope","$document","$templateRequest",function(O,M,I,U,x,C,P,S,V){function A(a,c){var b=a.data("$$ngAnimateState")||{};c&&(b.running=!0,b.structural=!0,a.data("$$ngAnimateState",b));return b.disabled||b.running&&b.structural}function z(a){var c,b=M.defer();b.promise.$$cancelFn= | |||
function(){c&&c()};P.$$postDigest(function(){c=a(function(){b.resolve()})});return b.promise}function J(a){if(da(a))return a.tempClasses&&ca(a.tempClasses)&&(a.tempClasses=a.tempClasses.split(/\s+/)),a}function W(a,c,b){b=b||{};var e={};g(b,function(a,d){g(d.split(" "),function(d){e[d]=a})});var m=Object.create(null);g((a.attr("class")||"").split(/\s+/),function(a){m[a]=!0});var f=[],k=[];g(c&&c.classes||[],function(a,d){var b=m[d],c=e[d]||{};!1===a?(b||"addClass"==c.event)&&k.push(d):!0===a&&(b&& | |||
"removeClass"!=c.event||f.push(d))});return 0<f.length+k.length&&[f.join(" "),k.join(" ")]}function Q(a){if(a){var c=[],b={};a=a.substr(1).split(".");(U.transitions||U.animations)&&c.push(I.get(ba[""]));for(var e=0;e<a.length;e++){var f=a[e],k=ba[f];k&&!b[f]&&(c.push(I.get(k)),b[f]=!0)}return c}}function R(a,c,b,e){function m(a,d){var b=a[d],c=a["before"+d.charAt(0).toUpperCase()+d.substr(1)];if(b||c)return"leave"==d&&(c=b,b=null),l.push({event:d,fn:b}),H.push({event:d,fn:c}),!0}function k(c,h,G){var w= | |||
[];g(c,function(a){a.fn&&w.push(a)});var f=0;g(w,function(c,n){var u=function(){a:{if(h){(h[n]||s)();if(++f<w.length)break a;h=null}G()}};switch(c.event){case "setClass":h.push(c.fn(a,F,d,u,e));break;case "animate":h.push(c.fn(a,b,e.from,e.to,u));break;case "addClass":h.push(c.fn(a,F||b,u,e));break;case "removeClass":h.push(c.fn(a,d||b,u,e));break;default:h.push(c.fn(a,u,e))}});h&&0===h.length&&G()}var p=a[0];if(p){e&&(e.to=e.to||{},e.from=e.from||{});var F,d;$(b)&&(F=b[0],d=b[1],F?d?b=F+" "+d:(b= | |||
F,c="addClass"):(b=d,c="removeClass"));var h="setClass"==c,G=h||"addClass"==c||"removeClass"==c||"animate"==c,w=a.attr("class")+" "+b;if(X(w)){var u=s,n=[],H=[],q=s,r=[],l=[],w=(" "+w).replace(/\s+/g,".");g(Q(w),function(a){!m(a,c)&&h&&(m(a,"addClass"),m(a,"removeClass"))});return{node:p,event:c,className:b,isClassBased:G,isSetClassOperation:h,applyStyles:function(){e&&a.css(f.extend(e.from||{},e.to||{}))},before:function(a){u=a;k(H,n,function(){u=s;a()})},after:function(a){q=a;k(l,r,function(){q= | |||
s;a()})},cancel:function(){n&&(g(n,function(a){(a||s)(!0)}),u(!0));r&&(g(r,function(a){(a||s)(!0)}),q(!0))}}}}}function y(a,c,b,e,m,k,p,F){function d(d){var h="$animate:"+d;H&&H[h]&&0<H[h].length&&C(function(){b.triggerHandler(h,{event:a,className:c})})}function h(){d("before")}function G(){d("after")}function w(){w.hasBeenRun||(w.hasBeenRun=!0,k())}function u(){if(!u.hasBeenRun){n&&n.applyStyles();u.hasBeenRun=!0;p&&p.tempClasses&&g(p.tempClasses,function(a){b.removeClass(a)});var h=b.data("$$ngAnimateState"); | |||
h&&(n&&n.isClassBased?l(b,c):(C(function(){var d=b.data("$$ngAnimateState")||{};v==d.index&&l(b,c,a)}),b.data("$$ngAnimateState",h)));d("close");F()}}var n=R(b,a,c,p);if(!n)return w(),h(),G(),u(),s;a=n.event;c=n.className;var H=f.element._data(n.node),H=H&&H.events;e||(e=m?m.parent():b.parent());if(Y(b,e))return w(),h(),G(),u(),s;e=b.data("$$ngAnimateState")||{};var q=e.active||{},r=e.totalActive||0,t=e.last;m=!1;if(0<r){r=[];if(n.isClassBased)"setClass"==t.event?(r.push(t),l(b,c)):q[c]&&(aa=q[c], | |||
aa.event==a?m=!0:(r.push(aa),l(b,c)));else if("leave"==a&&q["ng-leave"])m=!0;else{for(var aa in q)r.push(q[aa]);e={};l(b,!0)}0<r.length&&g(r,function(a){a.cancel()})}!n.isClassBased||n.isSetClassOperation||"animate"==a||m||(m="addClass"==a==b.hasClass(c));if(m)return w(),h(),G(),d("close"),F(),s;q=e.active||{};r=e.totalActive||0;if("leave"==a)b.one("$destroy",function(a){a=f.element(this);var d=a.data("$$ngAnimateState");d&&(d=d.active["ng-leave"])&&(d.cancel(),l(a,"ng-leave"))});b.addClass("ng-animate"); | |||
p&&p.tempClasses&&g(p.tempClasses,function(a){b.addClass(a)});var v=Z++;r++;q[c]=n;b.data("$$ngAnimateState",{last:n,active:q,index:v,totalActive:r});h();n.before(function(d){var h=b.data("$$ngAnimateState");d=d||!h||!h.active[c]||n.isClassBased&&h.active[c].event!=a;w();!0===d?u():(G(),n.after(u))});return n.cancel}function K(a){if(a=k(a))a=f.isFunction(a.getElementsByClassName)?a.getElementsByClassName("ng-animate"):a.querySelectorAll(".ng-animate"),g(a,function(a){a=f.element(a);(a=a.data("$$ngAnimateState"))&& | |||
a.active&&g(a.active,function(a){a.cancel()})})}function l(a,c){if(N(a,x))t.disabled||(t.running=!1,t.structural=!1);else if(c){var b=a.data("$$ngAnimateState")||{},e=!0===c;!e&&b.active&&b.active[c]&&(b.totalActive--,delete b.active[c]);if(e||!b.totalActive)a.removeClass("ng-animate"),a.removeData("$$ngAnimateState")}}function Y(a,c){if(t.disabled)return!0;if(N(a,x))return t.running;var b,e,k;do{if(0===c.length)break;var g=N(c,x),p=g?t:c.data("$$ngAnimateState")||{};if(p.disabled)return!0;g&&(k= | |||
!0);!1!==b&&(g=c.data("$$ngAnimateChildren"),f.isDefined(g)&&(b=g));e=e||p.running||p.last&&!p.last.isClassBased}while(c=c.parent());return!k||!b&&e}x.data("$$ngAnimateState",t);var L=P.$watch(function(){return V.totalPendingRequests},function(a,c){0===a&&(L(),P.$$postDigest(function(){P.$$postDigest(function(){t.running=!1})}))}),Z=0,E=B.classNameFilter(),X=E?function(a){return E.test(a)}:function(){return!0};return{animate:function(a,c,b,e,g){e=e||"ng-inline-animate";g=J(g)||{};g.from=b?c:null; | |||
g.to=b?b:c;return z(function(b){return y("animate",e,f.element(k(a)),null,null,s,g,b)})},enter:function(a,c,b,e){e=J(e);a=f.element(a);c=c&&f.element(c);b=b&&f.element(b);A(a,!0);O.enter(a,c,b);return z(function(g){return y("enter","ng-enter",f.element(k(a)),c,b,s,e,g)})},leave:function(a,c){c=J(c);a=f.element(a);K(a);A(a,!0);return z(function(b){return y("leave","ng-leave",f.element(k(a)),null,null,function(){O.leave(a)},c,b)})},move:function(a,c,b,e){e=J(e);a=f.element(a);c=c&&f.element(c);b=b&& | |||
f.element(b);K(a);A(a,!0);O.move(a,c,b);return z(function(g){return y("move","ng-move",f.element(k(a)),c,b,s,e,g)})},addClass:function(a,c,b){return this.setClass(a,c,[],b)},removeClass:function(a,c,b){return this.setClass(a,[],c,b)},setClass:function(a,c,b,e){e=J(e);a=f.element(a);a=f.element(k(a));if(A(a))return O.$$setClassImmediately(a,c,b,e);var m,l=a.data("$$animateClasses"),p=!!l;l||(l={classes:{}});m=l.classes;c=$(c)?c:c.split(" ");g(c,function(a){a&&a.length&&(m[a]=!0)});b=$(b)?b:b.split(" "); | |||
g(b,function(a){a&&a.length&&(m[a]=!1)});if(p)return e&&l.options&&(l.options=f.extend(l.options||{},e)),l.promise;a.data("$$animateClasses",l={classes:m,options:e});return l.promise=z(function(b){var d=a.parent(),h=k(a),c=h.parentNode;if(!c||c.$$NG_REMOVED||h.$$NG_REMOVED)b();else{h=a.data("$$animateClasses");a.removeData("$$animateClasses");var c=a.data("$$ngAnimateState")||{},e=W(a,h,c.active);return e?y("setClass",e,a,d,null,function(){e[0]&&O.$$addClassImmediately(a,e[0]);e[1]&&O.$$removeClassImmediately(a, | |||
e[1])},h.options,b):b()}})},cancel:function(a){a.$$cancelFn()},enabled:function(a,c){switch(arguments.length){case 2:if(a)l(c);else{var b=c.data("$$ngAnimateState")||{};b.disabled=!0;c.data("$$ngAnimateState",b)}break;case 1:t.disabled=!a;break;default:a=!t.disabled}return!!a}}}]);B.register("",["$window","$sniffer","$timeout","$$animateReflow",function(t,B,I,U){function x(){e||(e=U(function(){b=[];e=null;a={}}))}function C(c,d){e&&e();b.push(d);e=U(function(){g(b,function(a){a()});b=[];e=null;a= | |||
{}})}function P(a,d){var h=k(a);a=f.element(h);p.push(a);h=Date.now()+d;h<=N||(I.cancel(m),N=h,m=I(function(){T(p);p=[]},d,!1))}function T(a){g(a,function(a){(a=a.data("$$ngAnimateCSS3Data"))&&g(a.closeAnimationFns,function(a){a()})})}function V(b,d){var h=d?a[d]:null;if(!h){var c=0,e=0,f=0,k=0;g(b,function(a){if(1==a.nodeType){a=t.getComputedStyle(a)||{};c=Math.max(A(a[L+"Duration"]),c);e=Math.max(A(a[L+"Delay"]),e);k=Math.max(A(a[E+"Delay"]),k);var d=A(a[E+"Duration"]);0<d&&(d*=parseInt(a[E+"IterationCount"], | |||
10)||1);f=Math.max(d,f)}});h={total:0,transitionDelay:e,transitionDuration:c,animationDelay:k,animationDuration:f};d&&(a[d]=h)}return h}function A(a){var d=0;a=ca(a)?a.split(/\s*,\s*/):[];g(a,function(a){d=Math.max(parseFloat(a)||0,d)});return d}function z(b,d,h,e){b=0<=["ng-enter","ng-leave","ng-move"].indexOf(h);var f,g=d.parent(),n=g.data("$$ngAnimateKey");n||(g.data("$$ngAnimateKey",++c),n=c);f=n+"-"+k(d).getAttribute("class");var g=f+" "+h,n=a[g]?++a[g].total:0,l={};if(0<n){var q=h+"-stagger", | |||
l=f+" "+q;(f=!a[l])&&d.addClass(q);l=V(d,l);f&&d.removeClass(q)}d.addClass(h);var q=d.data("$$ngAnimateCSS3Data")||{},r=V(d,g);f=r.transitionDuration;r=r.animationDuration;if(b&&0===f&&0===r)return d.removeClass(h),!1;h=e||b&&0<f;b=0<r&&0<l.animationDelay&&0===l.animationDuration;d.data("$$ngAnimateCSS3Data",{stagger:l,cacheKey:g,running:q.running||0,itemIndex:n,blockTransition:h,closeAnimationFns:q.closeAnimationFns||[]});g=k(d);h&&(W(g,!0),e&&d.css(e));b&&(g.style[E+"PlayState"]="paused");return!0} | |||
function J(a,d,b,c,e){function f(){d.off(C,l);d.removeClass(q);d.removeClass(r);z&&I.cancel(z);K(d,b);var a=k(d),c;for(c in p)a.style.removeProperty(p[c])}function l(a){a.stopPropagation();var d=a.originalEvent||a;a=d.$manualTimeStamp||d.timeStamp||Date.now();d=parseFloat(d.elapsedTime.toFixed(3));Math.max(a-B,0)>=A&&d>=x&&c()}var m=k(d);a=d.data("$$ngAnimateCSS3Data");if(-1!=m.getAttribute("class").indexOf(b)&&a){var q="",r="";g(b.split(" "),function(a,d){var b=(0<d?" ":"")+a;q+=b+"-active";r+=b+ | |||
"-pending"});var p=[],t=a.itemIndex,v=a.stagger,s=0;if(0<t){s=0;0<v.transitionDelay&&0===v.transitionDuration&&(s=v.transitionDelay*t);var y=0;0<v.animationDelay&&0===v.animationDuration&&(y=v.animationDelay*t,p.push(Y+"animation-play-state"));s=Math.round(100*Math.max(s,y))/100}s||(d.addClass(q),a.blockTransition&&W(m,!1));var D=V(d,a.cacheKey+" "+q),x=Math.max(D.transitionDuration,D.animationDuration);if(0===x)d.removeClass(q),K(d,b),c();else{!s&&e&&(D.transitionDuration||(d.css("transition",D.animationDuration+ | |||
"s linear all"),p.push("transition")),d.css(e));var t=Math.max(D.transitionDelay,D.animationDelay),A=1E3*t;0<p.length&&(v=m.getAttribute("style")||"",";"!==v.charAt(v.length-1)&&(v+=";"),m.setAttribute("style",v+" "));var B=Date.now(),C=X+" "+Z,t=1E3*(s+1.5*(t+x)),z;0<s&&(d.addClass(r),z=I(function(){z=null;0<D.transitionDuration&&W(m,!1);0<D.animationDuration&&(m.style[E+"PlayState"]="");d.addClass(q);d.removeClass(r);e&&(0===D.transitionDuration&&d.css("transition",D.animationDuration+"s linear all"), | |||
d.css(e),p.push("transition"))},1E3*s,!1));d.on(C,l);a.closeAnimationFns.push(function(){f();c()});a.running++;P(d,t);return f}}else c()}function W(a,d){a.style[L+"Property"]=d?"none":""}function Q(a,d,b,c){if(z(a,d,b,c))return function(a){a&&K(d,b)}}function R(a,d,b,c,e){if(d.data("$$ngAnimateCSS3Data"))return J(a,d,b,c,e);K(d,b);c()}function y(a,d,b,c,e){var f=Q(a,d,b,e.from);if(f){var g=f;C(d,function(){g=R(a,d,b,c,e.to)});return function(a){(g||s)(a)}}x();c()}function K(a,d){a.removeClass(d); | |||
var b=a.data("$$ngAnimateCSS3Data");b&&(b.running&&b.running--,b.running&&0!==b.running||a.removeData("$$ngAnimateCSS3Data"))}function l(a,d){var b="";a=$(a)?a:a.split(/\s+/);g(a,function(a,c){a&&0<a.length&&(b+=(0<c?" ":"")+a+d)});return b}var Y="",L,Z,E,X;M.ontransitionend===S&&M.onwebkittransitionend!==S?(Y="-webkit-",L="WebkitTransition",Z="webkitTransitionEnd transitionend"):(L="transition",Z="transitionend");M.onanimationend===S&&M.onwebkitanimationend!==S?(Y="-webkit-",E="WebkitAnimation", | |||
X="webkitAnimationEnd animationend"):(E="animation",X="animationend");var a={},c=0,b=[],e,m=null,N=0,p=[];return{animate:function(a,d,b,c,e,f){f=f||{};f.from=b;f.to=c;return y("animate",a,d,e,f)},enter:function(a,b,c){c=c||{};return y("enter",a,"ng-enter",b,c)},leave:function(a,b,c){c=c||{};return y("leave",a,"ng-leave",b,c)},move:function(a,b,c){c=c||{};return y("move",a,"ng-move",b,c)},beforeSetClass:function(a,b,c,e,f){f=f||{};b=l(c,"-remove")+" "+l(b,"-add");if(f=Q("setClass",a,b,f.from))return C(a, | |||
e),f;x();e()},beforeAddClass:function(a,b,c,e){e=e||{};if(b=Q("addClass",a,l(b,"-add"),e.from))return C(a,c),b;x();c()},beforeRemoveClass:function(a,b,c,e){e=e||{};if(b=Q("removeClass",a,l(b,"-remove"),e.from))return C(a,c),b;x();c()},setClass:function(a,b,c,e,f){f=f||{};c=l(c,"-remove");b=l(b,"-add");return R("setClass",a,c+" "+b,e,f.to)},addClass:function(a,b,c,e){e=e||{};return R("addClass",a,l(b,"-add"),c,e.to)},removeClass:function(a,b,c,e){e=e||{};return R("removeClass",a,l(b,"-remove"),c,e.to)}}}])}])})(window, | |||
window.angular); | |||
//# sourceMappingURL=angular-animate.min.js.map |
@ -0,0 +1,8 @@ | |||
/* | |||
AngularJS v1.3.1 | |||
(c) 2010-2014 Google, Inc. http://angularjs.org | |||
License: MIT | |||
*/ | |||
(function(p,f,n){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(e,b){var c={},g={},h,k=!1,l=f.copy,m=f.isUndefined;b.addPollFn(function(){var a=b.cookies();h!=a&&(h=a,l(a,g),l(a,c),k&&e.$apply())})();k=!0;e.$watch(function(){var a,d,e;for(a in g)m(c[a])&&b.cookies(a,n);for(a in c)d=c[a],f.isString(d)||(d=""+d,c[a]=d),d!==g[a]&&(b.cookies(a,d),e=!0);if(e)for(a in d=b.cookies(),c)c[a]!==d[a]&&(m(d[a])?delete c[a]:c[a]=d[a])});return c}]).factory("$cookieStore", | |||
["$cookies",function(e){return{get:function(b){return(b=e[b])?f.fromJson(b):b},put:function(b,c){e[b]=f.toJson(c)},remove:function(b){delete e[b]}}}])})(window,window.angular); | |||
//# sourceMappingURL=angular-cookies.min.js.map |
@ -0,0 +1,15 @@ | |||
/* | |||
AngularJS v1.3.1 | |||
(c) 2010-2014 Google, Inc. http://angularjs.org | |||
License: MIT | |||
*/ | |||
(function(p,e,B){'use strict';function u(q,h,f){return{restrict:"ECA",terminal:!0,priority:400,transclude:"element",link:function(a,b,c,g,x){function y(){k&&(f.cancel(k),k=null);l&&(l.$destroy(),l=null);m&&(k=f.leave(m),k.then(function(){k=null}),m=null)}function w(){var c=q.current&&q.current.locals;if(e.isDefined(c&&c.$template)){var c=a.$new(),g=q.current;m=x(c,function(c){f.enter(c,null,m||b).then(function(){!e.isDefined(s)||s&&!a.$eval(s)||h()});y()});l=g.scope=c;l.$emit("$viewContentLoaded"); | |||
l.$eval(v)}else y()}var l,m,k,s=c.autoscroll,v=c.onload||"";a.$on("$routeChangeSuccess",w);w()}}}function z(e,h,f){return{restrict:"ECA",priority:-400,link:function(a,b){var c=f.current,g=c.locals;b.html(g.$template);var x=e(b.contents());c.controller&&(g.$scope=a,g=h(c.controller,g),c.controllerAs&&(a[c.controllerAs]=g),b.data("$ngControllerController",g),b.children().data("$ngControllerController",g));x(a)}}}p=e.module("ngRoute",["ng"]).provider("$route",function(){function q(a,b){return e.extend(new (e.extend(function(){}, | |||
{prototype:a})),b)}function h(a,e){var c=e.caseInsensitiveMatch,g={originalPath:a,regexp:a},f=g.keys=[];a=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)([\?\*])?/g,function(a,e,c,b){a="?"===b?b:null;b="*"===b?b:null;f.push({name:c,optional:!!a});e=e||"";return""+(a?"":e)+"(?:"+(a?e:"")+(b&&"(.+?)"||"([^/]+)")+(a||"")+")"+(a||"")}).replace(/([\/$\*])/g,"\\$1");g.regexp=new RegExp("^"+a+"$",c?"i":"");return g}var f={};this.when=function(a,b){f[a]=e.extend({reloadOnSearch:!0},b,a&&h(a,b));if(a){var c= | |||
"/"==a[a.length-1]?a.substr(0,a.length-1):a+"/";f[c]=e.extend({redirectTo:a},h(c,b))}return this};this.otherwise=function(a){"string"===typeof a&&(a={redirectTo:a});this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce",function(a,b,c,g,h,p,w){function l(b){var d=r.current;(u=(n=k())&&d&&n.$$route===d.$$route&&e.equals(n.pathParams,d.pathParams)&&!n.reloadOnSearch&&!v)||!d&&!n||a.$broadcast("$routeChangeStart",n,d).defaultPrevented&& | |||
b&&b.preventDefault()}function m(){var t=r.current,d=n;if(u)t.params=d.params,e.copy(t.params,c),a.$broadcast("$routeUpdate",t);else if(d||t)v=!1,(r.current=d)&&d.redirectTo&&(e.isString(d.redirectTo)?b.path(s(d.redirectTo,d.params)).search(d.params).replace():b.url(d.redirectTo(d.pathParams,b.path(),b.search())).replace()),g.when(d).then(function(){if(d){var a=e.extend({},d.resolve),b,c;e.forEach(a,function(d,b){a[b]=e.isString(d)?h.get(d):h.invoke(d,null,null,b)});e.isDefined(b=d.template)?e.isFunction(b)&& | |||
(b=b(d.params)):e.isDefined(c=d.templateUrl)&&(e.isFunction(c)&&(c=c(d.params)),c=w.getTrustedResourceUrl(c),e.isDefined(c)&&(d.loadedTemplateUrl=c,b=p(c)));e.isDefined(b)&&(a.$template=b);return g.all(a)}}).then(function(b){d==r.current&&(d&&(d.locals=b,e.copy(d.params,c)),a.$broadcast("$routeChangeSuccess",d,t))},function(b){d==r.current&&a.$broadcast("$routeChangeError",d,t,b)})}function k(){var a,d;e.forEach(f,function(c,g){var f;if(f=!d){var h=b.path();f=c.keys;var l={};if(c.regexp)if(h=c.regexp.exec(h)){for(var k= | |||
1,m=h.length;k<m;++k){var n=f[k-1],p=h[k];n&&p&&(l[n.name]=p)}f=l}else f=null;else f=null;f=a=f}f&&(d=q(c,{params:e.extend({},b.search(),a),pathParams:a}),d.$$route=c)});return d||f[null]&&q(f[null],{params:{},pathParams:{}})}function s(a,b){var c=[];e.forEach((a||"").split(":"),function(a,e){if(0===e)c.push(a);else{var f=a.match(/(\w+)(.*)/),g=f[1];c.push(b[g]);c.push(f[2]||"");delete b[g]}});return c.join("")}var v=!1,n,u,r={routes:f,reload:function(){v=!0;a.$evalAsync(function(){l();m()})},updateParams:function(a){if(this.current&& | |||
this.current.$$route){var c={},f=this;e.forEach(Object.keys(a),function(b){f.current.pathParams[b]||(c[b]=a[b])});a=e.extend({},this.current.params,a);b.path(s(this.current.$$route.originalPath,a));b.search(e.extend({},b.search(),c))}else throw A("norout");}};a.$on("$locationChangeStart",l);a.$on("$locationChangeSuccess",m);return r}]});var A=e.$$minErr("ngRoute");p.provider("$routeParams",function(){this.$get=function(){return{}}});p.directive("ngView",u);p.directive("ngView",z);u.$inject=["$route", | |||
"$anchorScroll","$animate"];z.$inject=["$compile","$controller","$route"]})(window,window.angular); | |||
//# sourceMappingURL=angular-route.min.js.map |
@ -0,0 +1,16 @@ | |||
/* | |||
AngularJS v1.3.1 | |||
(c) 2010-2014 Google, Inc. http://angularjs.org | |||
License: MIT | |||
*/ | |||
(function(p,g,q){'use strict';function F(a){var d=[];t(d,g.noop).chars(a);return d.join("")}function k(a){var d={};a=a.split(",");var c;for(c=0;c<a.length;c++)d[a[c]]=!0;return d}function G(a,d){function c(a,b,c,h){b=g.lowercase(b);if(u[b])for(;f.last()&&v[f.last()];)e("",f.last());w[b]&&f.last()==b&&e("",b);(h=x[b]||!!h)||f.push(b);var n={};c.replace(H,function(a,b,d,c,e){n[b]=s(d||c||e||"")});d.start&&d.start(b,n,h)}function e(a,b){var c=0,e;if(b=g.lowercase(b))for(c=f.length-1;0<=c&&f[c]!=b;c--); | |||
if(0<=c){for(e=f.length-1;e>=c;e--)d.end&&d.end(f[e]);f.length=c}}"string"!==typeof a&&(a=null===a||"undefined"===typeof a?"":""+a);var b,m,f=[],n=a,h;for(f.last=function(){return f[f.length-1]};a;){h="";m=!0;if(f.last()&&y[f.last()])a=a.replace(new RegExp("(.*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(a,b){b=b.replace(I,"$1").replace(J,"$1");d.chars&&d.chars(s(b));return""}),e("",f.last());else{if(0===a.indexOf("\x3c!--"))b=a.indexOf("--",4),0<=b&&a.lastIndexOf("--\x3e",b)===b&&(d.comment&&d.comment(a.substring(4, | |||
b)),a=a.substring(b+3),m=!1);else if(z.test(a)){if(b=a.match(z))a=a.replace(b[0],""),m=!1}else if(K.test(a)){if(b=a.match(A))a=a.substring(b[0].length),b[0].replace(A,e),m=!1}else L.test(a)&&((b=a.match(B))?(b[4]&&(a=a.substring(b[0].length),b[0].replace(B,c)),m=!1):(h+="<",a=a.substring(1)));m&&(b=a.indexOf("<"),h+=0>b?a:a.substring(0,b),a=0>b?"":a.substring(b),d.chars&&d.chars(s(h)))}if(a==n)throw M("badparse",a);n=a}e()}function s(a){if(!a)return"";var d=N.exec(a);a=d[1];var c=d[3];if(d=d[2])r.innerHTML= | |||
d.replace(/</g,"<"),d="textContent"in r?r.textContent:r.innerText;return a+d+c}function C(a){return a.replace(/&/g,"&").replace(O,function(a){var c=a.charCodeAt(0);a=a.charCodeAt(1);return"&#"+(1024*(c-55296)+(a-56320)+65536)+";"}).replace(P,function(a){return"&#"+a.charCodeAt(0)+";"}).replace(/</g,"<").replace(/>/g,">")}function t(a,d){var c=!1,e=g.bind(a,a.push);return{start:function(a,m,f){a=g.lowercase(a);!c&&y[a]&&(c=a);c||!0!==D[a]||(e("<"),e(a),g.forEach(m,function(c,f){var l= | |||
g.lowercase(f),m="img"===a&&"src"===l||"background"===l;!0!==Q[l]||!0===E[l]&&!d(c,m)||(e(" "),e(f),e('="'),e(C(c)),e('"'))}),e(f?"/>":">"))},end:function(a){a=g.lowercase(a);c||!0!==D[a]||(e("</"),e(a),e(">"));a==c&&(c=!1)},chars:function(a){c||e(C(a))}}}var M=g.$$minErr("$sanitize"),B=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,A=/^<\/\s*([\w:-]+)[^>]*>/,H=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,L=/^</, | |||
K=/^<\//,I=/\x3c!--(.*?)--\x3e/g,z=/<!DOCTYPE([^>]*?)>/i,J=/<!\[CDATA\[(.*?)]]\x3e/g,O=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,P=/([^\#-~| |!])/g,x=k("area,br,col,hr,img,wbr");p=k("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr");q=k("rp,rt");var w=g.extend({},q,p),u=g.extend({},p,k("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul")),v=g.extend({},q,k("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")); | |||
p=k("animate,animateColor,animateMotion,animateTransform,circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,set,stop,svg,switch,text,title,tspan,use");var y=k("script,style"),D=g.extend({},x,u,v,w,p),E=k("background,cite,href,longdesc,src,usemap,xlink:href");p=k("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,target,title,type,valign,value,vspace,width"); | |||
q=k("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,attributeName,attributeType,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan"); | |||
var Q=g.extend({},E,q,p),r=document.createElement("pre"),N=/^(\s*)([\s\S]*?)(\s*)$/;g.module("ngSanitize",[]).provider("$sanitize",function(){this.$get=["$$sanitizeUri",function(a){return function(d){var c=[];G(d,t(c,function(c,b){return!/^unsafe/.test(a(c,b))}));return c.join("")}}]});g.module("ngSanitize").filter("linky",["$sanitize",function(a){var d=/((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"]/,c=/^mailto:/;return function(e,b){function m(a){a&&l.push(F(a))}function f(a, | |||
c){l.push("<a ");g.isDefined(b)&&(l.push('target="'),l.push(b),l.push('" '));l.push('href="');l.push(a);l.push('">');m(c);l.push("</a>")}if(!e)return e;for(var n,h=e,l=[],k,p;n=h.match(d);)k=n[0],n[2]==n[3]&&(k="mailto:"+k),p=n.index,m(h.substr(0,p)),f(k,n[0].replace(c,"")),h=h.substring(p+n[0].length);m(h);return a(l.join(""))}}])})(window,window.angular); | |||
//# sourceMappingURL=angular-sanitize.min.js.map |
@ -0,0 +1,247 @@ | |||
/* | |||
AngularJS v1.3.1 | |||
(c) 2010-2014 Google, Inc. http://angularjs.org | |||
License: MIT | |||
*/ | |||
(function(N,U,t){'use strict';function w(b){return function(){var a=arguments[0],c;c="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.3.1/"+(b?b+"/":"")+a;for(a=1;a<arguments.length;a++){c=c+(1==a?"?":"&")+"p"+(a-1)+"=";var d=encodeURIComponent,e;e=arguments[a];e="function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?JSON.stringify(e):e;c+=d(e)}return Error(c)}}function Qa(b){if(null==b||Ra(b))return!1;var a=b.length;return b.nodeType=== | |||
ka&&a?!0:J(b)||H(b)||0===a||"number"===typeof a&&0<a&&a-1 in b}function s(b,a,c){var d,e;if(b)if(A(b))for(d in b)"prototype"==d||"length"==d||"name"==d||b.hasOwnProperty&&!b.hasOwnProperty(d)||a.call(c,b[d],d,b);else if(H(b)||Qa(b)){var f="object"!==typeof b;d=0;for(e=b.length;d<e;d++)(f||d in b)&&a.call(c,b[d],d,b)}else if(b.forEach&&b.forEach!==s)b.forEach(a,c,b);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d,b);return b}function Cd(b,a,c){for(var d=Object.keys(b).sort(),e=0;e<d.length;e++)a.call(c, | |||
b[d[e]],d[e]);return d}function jc(b){return function(a,c){b(c,a)}}function Dd(){return++gb}function kc(b,a){a?b.$$hashKey=a:delete b.$$hashKey}function F(b){for(var a=b.$$hashKey,c=1,d=arguments.length;c<d;c++){var e=arguments[c];if(e)for(var f=Object.keys(e),g=0,k=f.length;g<k;g++){var h=f[g];b[h]=e[h]}}kc(b,a);return b}function aa(b){return parseInt(b,10)}function lc(b,a){return F(new (F(function(){},{prototype:b})),a)}function y(){}function Sa(b){return b}function da(b){return function(){return b}} | |||
function x(b){return"undefined"===typeof b}function z(b){return"undefined"!==typeof b}function P(b){return null!==b&&"object"===typeof b}function J(b){return"string"===typeof b}function X(b){return"number"===typeof b}function ea(b){return"[object Date]"===Ja.call(b)}function A(b){return"function"===typeof b}function hb(b){return"[object RegExp]"===Ja.call(b)}function Ra(b){return b&&b.window===b}function Ta(b){return b&&b.$evalAsync&&b.$watch}function Ua(b){return"boolean"===typeof b}function mc(b){return!(!b|| | |||
!(b.nodeName||b.prop&&b.attr&&b.find))}function Ed(b){var a={};b=b.split(",");var c;for(c=0;c<b.length;c++)a[b[c]]=!0;return a}function pa(b){return S(b.nodeName||b[0].nodeName)}function Va(b,a){var c=b.indexOf(a);0<=c&&b.splice(c,1);return a}function Ca(b,a,c,d){if(Ra(b)||Ta(b))throw Wa("cpws");if(a){if(b===a)throw Wa("cpi");c=c||[];d=d||[];if(P(b)){var e=c.indexOf(b);if(-1!==e)return d[e];c.push(b);d.push(a)}if(H(b))for(var f=a.length=0;f<b.length;f++)e=Ca(b[f],null,c,d),P(b[f])&&(c.push(b[f]), | |||
d.push(e)),a.push(e);else{var g=a.$$hashKey;H(a)?a.length=0:s(a,function(b,c){delete a[c]});for(f in b)b.hasOwnProperty(f)&&(e=Ca(b[f],null,c,d),P(b[f])&&(c.push(b[f]),d.push(e)),a[f]=e);kc(a,g)}}else if(a=b)H(b)?a=Ca(b,[],c,d):ea(b)?a=new Date(b.getTime()):hb(b)?(a=new RegExp(b.source,b.toString().match(/[^\/]*$/)[0]),a.lastIndex=b.lastIndex):P(b)&&(e=Object.create(Object.getPrototypeOf(b)),a=Ca(b,e,c,d));return a}function qa(b,a){if(H(b)){a=a||[];for(var c=0,d=b.length;c<d;c++)a[c]=b[c]}else if(P(b))for(c in a= | |||
a||{},b)if("$"!==c.charAt(0)||"$"!==c.charAt(1))a[c]=b[c];return a||b}function la(b,a){if(b===a)return!0;if(null===b||null===a)return!1;if(b!==b&&a!==a)return!0;var c=typeof b,d;if(c==typeof a&&"object"==c)if(H(b)){if(!H(a))return!1;if((c=b.length)==a.length){for(d=0;d<c;d++)if(!la(b[d],a[d]))return!1;return!0}}else{if(ea(b))return ea(a)?la(b.getTime(),a.getTime()):!1;if(hb(b)&&hb(a))return b.toString()==a.toString();if(Ta(b)||Ta(a)||Ra(b)||Ra(a)||H(a))return!1;c={};for(d in b)if("$"!==d.charAt(0)&& | |||
!A(b[d])){if(!la(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c.hasOwnProperty(d)&&"$"!==d.charAt(0)&&a[d]!==t&&!A(a[d]))return!1;return!0}return!1}function ib(b,a,c){return b.concat(Xa.call(a,c))}function nc(b,a){var c=2<arguments.length?Xa.call(arguments,2):[];return!A(a)||a instanceof RegExp?a:c.length?function(){return arguments.length?a.apply(b,c.concat(Xa.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}}function Fd(b,a){var c=a;"string"===typeof b&& | |||
"$"===b.charAt(0)&&"$"===b.charAt(1)?c=t:Ra(a)?c="$WINDOW":a&&U===a?c="$DOCUMENT":Ta(a)&&(c="$SCOPE");return c}function ra(b,a){return"undefined"===typeof b?t:JSON.stringify(b,Fd,a?" ":null)}function oc(b){return J(b)?JSON.parse(b):b}function sa(b){b=v(b).clone();try{b.empty()}catch(a){}var c=v("<div>").append(b).html();try{return b[0].nodeType===jb?S(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+S(b)})}catch(d){return S(c)}}function pc(b){try{return decodeURIComponent(b)}catch(a){}} | |||
function qc(b){var a={},c,d;s((b||"").split("&"),function(b){b&&(c=b.replace(/\+/g,"%20").split("="),d=pc(c[0]),z(d)&&(b=z(c[1])?pc(c[1]):!0,Hb.call(a,d)?H(a[d])?a[d].push(b):a[d]=[a[d],b]:a[d]=b))});return a}function Ib(b){var a=[];s(b,function(b,d){H(b)?s(b,function(b){a.push(Da(d,!0)+(!0===b?"":"="+Da(b,!0)))}):a.push(Da(d,!0)+(!0===b?"":"="+Da(b,!0)))});return a.length?a.join("&"):""}function kb(b){return Da(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Da(b,a){return encodeURIComponent(b).replace(/%40/gi, | |||
"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function Gd(b,a){var c,d,e=lb.length;b=v(b);for(d=0;d<e;++d)if(c=lb[d]+a,J(c=b.attr(c)))return c;return null}function Hd(b,a){var c,d,e={};s(lb,function(a){a+="app";!c&&b.hasAttribute&&b.hasAttribute(a)&&(c=b,d=b.getAttribute(a))});s(lb,function(a){a+="app";var e;!c&&(e=b.querySelector("["+a.replace(":","\\:")+"]"))&&(c=e,d=e.getAttribute(a))});c&&(e.strictDi=null!==Gd(c,"strict-di"), | |||
a(c,d?[d]:[],e))}function rc(b,a,c){P(c)||(c={});c=F({strictDi:!1},c);var d=function(){b=v(b);if(b.injector()){var d=b[0]===U?"document":sa(b);throw Wa("btstrpd",d.replace(/</,"<").replace(/>/,">"));}a=a||[];a.unshift(["$provide",function(a){a.value("$rootElement",b)}]);c.debugInfoEnabled&&a.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);a.unshift("ng");d=Jb(a,c.strictDi);d.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector", | |||
d);c(b)(a)})}]);return d},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;N&&e.test(N.name)&&(c.debugInfoEnabled=!0,N.name=N.name.replace(e,""));if(N&&!f.test(N.name))return d();N.name=N.name.replace(f,"");ta.resumeBootstrap=function(b){s(b,function(b){a.push(b)});d()}}function Id(){N.name="NG_ENABLE_DEBUG_INFO!"+N.name;N.location.reload()}function Jd(b){return ta.element(b).injector().get("$$testability")}function Kb(b,a){a=a||"_";return b.replace(Kd,function(b,d){return(d?a:"")+b.toLowerCase()})} | |||
function Ld(){var b;sc||((ma=N.jQuery)&&ma.fn.on?(v=ma,F(ma.fn,{scope:Ka.scope,isolateScope:Ka.isolateScope,controller:Ka.controller,injector:Ka.injector,inheritedData:Ka.inheritedData}),b=ma.cleanData,ma.cleanData=function(a){var c;if(Lb)Lb=!1;else for(var d=0,e;null!=(e=a[d]);d++)(c=ma._data(e,"events"))&&c.$destroy&&ma(e).triggerHandler("$destroy");b(a)}):v=Q,ta.element=v,sc=!0)}function Mb(b,a,c){if(!b)throw Wa("areq",a||"?",c||"required");return b}function mb(b,a,c){c&&H(b)&&(b=b[b.length-1]); | |||
Mb(A(b),a,"not a function, got "+(b&&"object"===typeof b?b.constructor.name||"Object":typeof b));return b}function La(b,a){if("hasOwnProperty"===b)throw Wa("badname",a);}function tc(b,a,c){if(!a)return b;a=a.split(".");for(var d,e=b,f=a.length,g=0;g<f;g++)d=a[g],b&&(b=(e=b)[d]);return!c&&A(b)?nc(e,b):b}function nb(b){var a=b[0];b=b[b.length-1];var c=[a];do{a=a.nextSibling;if(!a)break;c.push(a)}while(a!==b);return v(c)}function wa(){return Object.create(null)}function Md(b){function a(a,b,c){return a[b]|| | |||
(a[b]=c())}var c=w("$injector"),d=w("ng");b=a(b,"angular",Object);b.$$minErr=b.$$minErr||w;return a(b,"module",function(){var b={};return function(f,g,k){if("hasOwnProperty"===f)throw d("badname","module");g&&b.hasOwnProperty(f)&&(b[f]=null);return a(b,f,function(){function a(c,d,e,f){f||(f=b);return function(){f[e||"push"]([c,d,arguments]);return n}}if(!g)throw c("nomod",f);var b=[],d=[],e=[],q=a("$injector","invoke","push",d),n={_invokeQueue:b,_configBlocks:d,_runBlocks:e,requires:g,name:f,provider:a("$provide", | |||
"provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),animation:a("$animateProvider","register"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:q,run:function(a){e.push(a);return this}};k&&q(k);return n})}})}function Nd(b){F(b,{bootstrap:rc,copy:Ca,extend:F,equals:la,element:v,forEach:s,injector:Jb,noop:y,bind:nc,toJson:ra, | |||
fromJson:oc,identity:Sa,isUndefined:x,isDefined:z,isString:J,isFunction:A,isObject:P,isNumber:X,isElement:mc,isArray:H,version:Od,isDate:ea,lowercase:S,uppercase:ob,callbacks:{counter:0},getTestability:Jd,$$minErr:w,$$csp:Ya,reloadWithDebugInfo:Id});Za=Md(N);try{Za("ngLocale")}catch(a){Za("ngLocale",[]).provider("$locale",Pd)}Za("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:Qd});a.provider("$compile",uc).directive({a:Rd,input:vc,textarea:vc,form:Sd,script:Td,select:Ud,style:Vd, | |||
option:Wd,ngBind:Xd,ngBindHtml:Yd,ngBindTemplate:Zd,ngClass:$d,ngClassEven:ae,ngClassOdd:be,ngCloak:ce,ngController:de,ngForm:ee,ngHide:fe,ngIf:ge,ngInclude:he,ngInit:ie,ngNonBindable:je,ngPluralize:ke,ngRepeat:le,ngShow:me,ngStyle:ne,ngSwitch:oe,ngSwitchWhen:pe,ngSwitchDefault:qe,ngOptions:re,ngTransclude:se,ngModel:te,ngList:ue,ngChange:ve,pattern:wc,ngPattern:wc,required:xc,ngRequired:xc,minlength:yc,ngMinlength:yc,maxlength:zc,ngMaxlength:zc,ngValue:we,ngModelOptions:xe}).directive({ngInclude:ye}).directive(pb).directive(Ac); | |||
a.provider({$anchorScroll:ze,$animate:Ae,$browser:Be,$cacheFactory:Ce,$controller:De,$document:Ee,$exceptionHandler:Fe,$filter:Bc,$interpolate:Ge,$interval:He,$http:Ie,$httpBackend:Je,$location:Ke,$log:Le,$parse:Me,$rootScope:Ne,$q:Oe,$$q:Pe,$sce:Qe,$sceDelegate:Re,$sniffer:Se,$templateCache:Te,$templateRequest:Ue,$$testability:Ve,$timeout:We,$window:Xe,$$rAF:Ye,$$asyncCallback:Ze})}])}function $a(b){return b.replace($e,function(a,b,d,e){return e?d.toUpperCase():d}).replace(af,"Moz$1")}function Cc(b){b= | |||
b.nodeType;return b===ka||!b||9===b}function Dc(b,a){var c,d,e=a.createDocumentFragment(),f=[];if(Nb.test(b)){c=c||e.appendChild(a.createElement("div"));d=(bf.exec(b)||["",""])[1].toLowerCase();d=ha[d]||ha._default;c.innerHTML=d[1]+b.replace(cf,"<$1></$2>")+d[2];for(d=d[0];d--;)c=c.lastChild;f=ib(f,c.childNodes);c=e.firstChild;c.textContent=""}else f.push(a.createTextNode(b));e.textContent="";e.innerHTML="";s(f,function(a){e.appendChild(a)});return e}function Q(b){if(b instanceof Q)return b;var a; | |||
J(b)&&(b=T(b),a=!0);if(!(this instanceof Q)){if(a&&"<"!=b.charAt(0))throw Ob("nosel");return new Q(b)}if(a){a=U;var c;b=(c=df.exec(b))?[a.createElement(c[1])]:(c=Dc(b,a))?c.childNodes:[]}Ec(this,b)}function Pb(b){return b.cloneNode(!0)}function qb(b,a){a||rb(b);if(b.querySelectorAll)for(var c=b.querySelectorAll("*"),d=0,e=c.length;d<e;d++)rb(c[d])}function Fc(b,a,c,d){if(z(d))throw Ob("offargs");var e=(d=sb(b))&&d.events,f=d&&d.handle;if(f)if(a)s(a.split(" "),function(a){if(z(c)){var d=e[a];Va(d|| | |||
[],c);if(d&&0<d.length)return}b.removeEventListener(a,f,!1);delete e[a]});else for(a in e)"$destroy"!==a&&b.removeEventListener(a,f,!1),delete e[a]}function rb(b,a){var c=b.ng339,d=c&&tb[c];d&&(a?delete d.data[a]:(d.handle&&(d.events.$destroy&&d.handle({},"$destroy"),Fc(b)),delete tb[c],b.ng339=t))}function sb(b,a){var c=b.ng339,c=c&&tb[c];a&&!c&&(b.ng339=c=++ef,c=tb[c]={events:{},data:{},handle:t});return c}function Qb(b,a,c){if(Cc(b)){var d=z(c),e=!d&&a&&!P(a),f=!a;b=(b=sb(b,!e))&&b.data;if(d)b[a]= | |||
c;else{if(f)return b;if(e)return b&&b[a];F(b,a)}}}function Rb(b,a){return b.getAttribute?-1<(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+a+" "):!1}function Sb(b,a){a&&b.setAttribute&&s(a.split(" "),function(a){b.setAttribute("class",T((" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+T(a)+" "," ")))})}function Tb(b,a){if(a&&b.setAttribute){var c=(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");s(a.split(" "),function(a){a=T(a);-1=== | |||
c.indexOf(" "+a+" ")&&(c+=a+" ")});b.setAttribute("class",T(c))}}function Ec(b,a){if(a)if(a.nodeType)b[b.length++]=a;else{var c=a.length;if("number"===typeof c&&a.window!==a){if(c)for(var d=0;d<c;d++)b[b.length++]=a[d]}else b[b.length++]=a}}function Gc(b,a){return ub(b,"$"+(a||"ngController")+"Controller")}function ub(b,a,c){9==b.nodeType&&(b=b.documentElement);for(a=H(a)?a:[a];b;){for(var d=0,e=a.length;d<e;d++)if((c=v.data(b,a[d]))!==t)return c;b=b.parentNode||11===b.nodeType&&b.host}}function Hc(b){for(qb(b, | |||
!0);b.firstChild;)b.removeChild(b.firstChild)}function Ic(b,a){a||qb(b);var c=b.parentNode;c&&c.removeChild(b)}function ff(b,a){a=a||N;if("complete"===a.document.readyState)a.setTimeout(b);else v(a).on("load",b)}function Jc(b,a){var c=vb[a.toLowerCase()];return c&&Kc[pa(b)]&&c}function gf(b,a){var c=b.nodeName;return("INPUT"===c||"TEXTAREA"===c)&&Lc[a]}function hf(b,a){var c=function(c,e){c.isDefaultPrevented=function(){return c.defaultPrevented};var f=a[e||c.type],g=f?f.length:0;if(g){if(x(c.immediatePropagationStopped)){var k= | |||
c.stopImmediatePropagation;c.stopImmediatePropagation=function(){c.immediatePropagationStopped=!0;c.stopPropagation&&c.stopPropagation();k&&k.call(c)}}c.isImmediatePropagationStopped=function(){return!0===c.immediatePropagationStopped};1<g&&(f=qa(f));for(var h=0;h<g;h++)c.isImmediatePropagationStopped()||f[h].call(b,c)}};c.elem=b;return c}function Ma(b,a){var c=b&&b.$$hashKey;if(c)return"function"===typeof c&&(c=b.$$hashKey()),c;c=typeof b;return c="function"==c||"object"==c&&null!==b?b.$$hashKey= | |||
c+":"+(a||Dd)():c+":"+b}function ab(b,a){if(a){var c=0;this.nextUid=function(){return++c}}s(b,this.put,this)}function jf(b){return(b=b.toString().replace(Mc,"").match(Nc))?"function("+(b[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function Ub(b,a,c){var d;if("function"===typeof b){if(!(d=b.$inject)){d=[];if(b.length){if(a)throw J(c)&&c||(c=b.name||jf(b)),Ea("strictdi",c);a=b.toString().replace(Mc,"");a=a.match(Nc);s(a[1].split(kf),function(a){a.replace(lf,function(a,b,c){d.push(c)})})}b.$inject=d}}else H(b)? | |||
(a=b.length-1,mb(b[a],"fn"),d=b.slice(0,a)):mb(b,"fn",!0);return d}function Jb(b,a){function c(a){return function(b,c){if(P(b))s(b,jc(a));else return a(b,c)}}function d(a,b){La(a,"service");if(A(b)||H(b))b=q.instantiate(b);if(!b.$get)throw Ea("pget",a);return p[a+"Provider"]=b}function e(a,b){return function(){var c=r.invoke(b,this,t,a);if(x(c))throw Ea("undef",a);return c}}function f(a,b,c){return d(a,{$get:!1!==c?e(a,b):b})}function g(a){var b=[],c;s(a,function(a){function d(a){var b,c;b=0;for(c= | |||
a.length;b<c;b++){var e=a[b],f=q.get(e[0]);f[e[1]].apply(f,e[2])}}if(!m.get(a)){m.put(a,!0);try{J(a)?(c=Za(a),b=b.concat(g(c.requires)).concat(c._runBlocks),d(c._invokeQueue),d(c._configBlocks)):A(a)?b.push(q.invoke(a)):H(a)?b.push(q.invoke(a)):mb(a,"module")}catch(e){throw H(a)&&(a=a[a.length-1]),e.message&&e.stack&&-1==e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),Ea("modulerr",a,e.stack||e.message||e);}}});return b}function k(b,c){function d(a){if(b.hasOwnProperty(a)){if(b[a]===h)throw Ea("cdep", | |||
a+" <- "+l.join(" <- "));return b[a]}try{return l.unshift(a),b[a]=h,b[a]=c(a)}catch(e){throw b[a]===h&&delete b[a],e;}finally{l.shift()}}function e(b,c,f,g){"string"===typeof f&&(g=f,f=null);var h=[];g=Ub(b,a,g);var k,l,n;l=0;for(k=g.length;l<k;l++){n=g[l];if("string"!==typeof n)throw Ea("itkn",n);h.push(f&&f.hasOwnProperty(n)?f[n]:d(n))}H(b)&&(b=b[k]);return b.apply(c,h)}return{invoke:e,instantiate:function(a,b,c){var d=function(){};d.prototype=(H(a)?a[a.length-1]:a).prototype;d=new d;a=e(a,d,b, | |||
c);return P(a)||A(a)?a:d},get:d,annotate:Ub,has:function(a){return p.hasOwnProperty(a+"Provider")||b.hasOwnProperty(a)}}}a=!0===a;var h={},l=[],m=new ab([],!0),p={$provide:{provider:c(d),factory:c(f),service:c(function(a,b){return f(a,["$injector",function(a){return a.instantiate(b)}])}),value:c(function(a,b){return f(a,da(b),!1)}),constant:c(function(a,b){La(a,"constant");p[a]=b;n[a]=b}),decorator:function(a,b){var c=q.get(a+"Provider"),d=c.$get;c.$get=function(){var a=r.invoke(d,c);return r.invoke(b, | |||
null,{$delegate:a})}}}},q=p.$injector=k(p,function(){throw Ea("unpr",l.join(" <- "));}),n={},r=n.$injector=k(n,function(a){var b=q.get(a+"Provider");return r.invoke(b.$get,b,t,a)});s(g(b),function(a){r.invoke(a||y)});return r}function ze(){var b=!0;this.disableAutoScrolling=function(){b=!1};this.$get=["$window","$location","$rootScope",function(a,c,d){function e(a){var b=null;Array.prototype.some.call(a,function(a){if("a"===pa(a))return b=a,!0});return b}function f(b){if(b){b.scrollIntoView();var c; | |||
c=g.yOffset;A(c)?c=c():mc(c)?(c=c[0],c="fixed"!==a.getComputedStyle(c).position?0:c.getBoundingClientRect().bottom):X(c)||(c=0);c&&(b=b.getBoundingClientRect().top,a.scrollBy(0,b-c))}else a.scrollTo(0,0)}function g(){var a=c.hash(),b;a?(b=k.getElementById(a))?f(b):(b=e(k.getElementsByName(a)))?f(b):"top"===a&&f(null):f(null)}var k=a.document;b&&d.$watch(function(){return c.hash()},function(a,b){a===b&&""===a||ff(function(){d.$evalAsync(g)})});return g}]}function Ze(){this.$get=["$$rAF","$timeout", | |||
function(b,a){return b.supported?function(a){return b(a)}:function(b){return a(b,0,!1)}}]}function mf(b,a,c,d){function e(a){try{a.apply(null,Xa.call(arguments,1))}finally{if(C--,0===C)for(;D.length;)try{D.pop()()}catch(b){c.error(b)}}}function f(a,b){(function xa(){s(G,function(a){a()});u=b(xa,a)})()}function g(){k();h()}function k(){I=b.history.state;I=x(I)?null:I;la(I,R)&&(I=R);R=I}function h(){if(E!==m.url()||K!==I)E=m.url(),K=I,s(V,function(a){a(m.url(),I)})}function l(a){try{return decodeURIComponent(a)}catch(b){return a}} | |||
var m=this,p=a[0],q=b.location,n=b.history,r=b.setTimeout,O=b.clearTimeout,B={};m.isMock=!1;var C=0,D=[];m.$$completeOutstandingRequest=e;m.$$incOutstandingRequestCount=function(){C++};m.notifyWhenNoOutstandingRequests=function(a){s(G,function(a){a()});0===C?a():D.push(a)};var G=[],u;m.addPollFn=function(a){x(u)&&f(100,r);G.push(a);return a};var I,K,E=q.href,ca=a.find("base"),M=null;k();K=I;m.url=function(a,c,e){x(e)&&(e=null);q!==b.location&&(q=b.location);n!==b.history&&(n=b.history);if(a){var f= | |||
K===e;if(E!==a||d.history&&!f){var g=E&&Fa(E)===Fa(a);E=a;K=e;!d.history||g&&f?(g||(M=a),c?q.replace(a):q.href=a):(n[c?"replaceState":"pushState"](e,"",a),k(),K=I);return m}}else return M||q.href.replace(/%27/g,"'")};m.state=function(){return I};var V=[],W=!1,R=null;m.onUrlChange=function(a){if(!W){if(d.history)v(b).on("popstate",g);v(b).on("hashchange",g);W=!0}V.push(a);return a};m.$$checkUrlChange=h;m.baseHref=function(){var a=ca.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""}; | |||
var ba={},z="",fa=m.baseHref();m.cookies=function(a,b){var d,e,f,g;if(a)b===t?p.cookie=encodeURIComponent(a)+"=;path="+fa+";expires=Thu, 01 Jan 1970 00:00:00 GMT":J(b)&&(d=(p.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+";path="+fa).length+1,4096<d&&c.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+d+" > 4096 bytes)!"));else{if(p.cookie!==z)for(z=p.cookie,d=z.split("; "),ba={},f=0;f<d.length;f++)e=d[f],g=e.indexOf("="),0<g&&(a=l(e.substring(0,g)),ba[a]=== | |||
t&&(ba[a]=l(e.substring(g+1))));return ba}};m.defer=function(a,b){var c;C++;c=r(function(){delete B[c];e(a)},b||0);B[c]=!0;return c};m.defer.cancel=function(a){return B[a]?(delete B[a],O(a),e(y),!0):!1}}function Be(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new mf(b,d,a,c)}]}function Ce(){this.$get=function(){function b(b,d){function e(a){a!=p&&(q?q==a&&(q=a.n):q=a,f(a.n,a.p),f(a,p),p=a,p.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(b in a)throw w("$cacheFactory")("iid", | |||
b);var g=0,k=F({},d,{id:b}),h={},l=d&&d.capacity||Number.MAX_VALUE,m={},p=null,q=null;return a[b]={put:function(a,b){if(l<Number.MAX_VALUE){var c=m[a]||(m[a]={key:a});e(c)}if(!x(b))return a in h||g++,h[a]=b,g>l&&this.remove(q.key),b},get:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;e(b)}return h[a]},remove:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;b==p&&(p=b.p);b==q&&(q=b.n);f(b.n,b.p);delete m[a]}delete h[a];g--},removeAll:function(){h={};g=0;m={};p=q=null},destroy:function(){m= | |||
k=h=null;delete a[b]},info:function(){return F({},k,{size:g})}}}var a={};b.info=function(){var b={};s(a,function(a,e){b[e]=a.info()});return b};b.get=function(b){return a[b]};return b}}function Te(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function uc(b,a){function c(a,b){var c=/^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/,d={};s(a,function(a,e){var f=a.match(c);if(!f)throw ia("iscp",b,e,a);d[e]={mode:f[1][0],collection:"*"===f[2],optional:"?"===f[3],attrName:f[4]||e}});return d}var d= | |||
{},e=/^\s*directive\:\s*([\w\-]+)\s+(.*)$/,f=/(([\w\-]+)(?:\:([^;]+))?;?)/,g=Ed("ngSrc,ngSrcset,src,srcset"),k=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,h=/^(on[a-z]+|formaction)$/;this.directive=function p(a,e){La(a,"directive");J(a)?(Mb(e,"directiveFactory"),d.hasOwnProperty(a)||(d[a]=[],b.factory(a+"Directive",["$injector","$exceptionHandler",function(b,e){var f=[];s(d[a],function(d,g){try{var h=b.invoke(d);A(h)?h={compile:da(h)}:!h.compile&&h.link&&(h.compile=da(h.link));h.priority=h.priority||0;h.index= | |||
g;h.name=h.name||a;h.require=h.require||h.controller&&h.name;h.restrict=h.restrict||"EA";P(h.scope)&&(h.$$isolateBindings=c(h.scope,h.name));f.push(h)}catch(k){e(k)}});return f}])),d[a].push(e)):s(a,jc(p));return this};this.aHrefSanitizationWhitelist=function(b){return z(b)?(a.aHrefSanitizationWhitelist(b),this):a.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(b){return z(b)?(a.imgSrcSanitizationWhitelist(b),this):a.imgSrcSanitizationWhitelist()};var l=!0;this.debugInfoEnabled= | |||
function(a){return z(a)?(l=a,this):l};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",function(a,b,c,r,O,B,C,D,G,u,I){function K(a,b){try{a.addClass(b)}catch(c){}}function E(a,b,c,d,e){a instanceof v||(a=v(a));s(a,function(b,c){b.nodeType==jb&&b.nodeValue.match(/\S+/)&&(a[c]=v(b).wrap("<span></span>").parent()[0])});var f=ca(a,b,a,c,d,e);E.$$addScopeClass(a);var g=null;return function(b, | |||
c,d,e,h){Mb(b,"scope");g||(g=(h=h&&h[0])?"foreignobject"!==pa(h)&&h.toString().match(/SVG/)?"svg":"html":"html");h="html"!==g?v(N(g,v("<div>").append(a).html())):c?Ka.clone.call(a):a;if(d)for(var k in d)h.data("$"+k+"Controller",d[k].instance);E.$$addScopeInfo(h,b);c&&c(h,b);f&&f(b,h,h,e);return h}}function ca(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,q,n,r,D;if(p)for(D=Array(c.length),q=0;q<h.length;q+=3)f=h[q],D[f]=c[f];else D=c;q=0;for(n=h.length;q<n;)k=D[h[q++]],c=h[q++],f=h[q++],c?(c.scope? | |||
(l=a.$new(),E.$$addScopeInfo(v(k),l)):l=a,r=c.transcludeOnThisElement?M(a,c.transclude,e,c.elementTranscludeOnThisElement):!c.templateOnThisElement&&e?e:!e&&b?M(a,b):null,c(f,l,k,d,r)):f&&f(a,k.childNodes,t,e)}for(var h=[],k,l,q,n,p,r=0;r<a.length;r++){k=new X;l=V(a[r],[],k,0===r?d:t,e);(f=l.length?ba(l,a[r],k,b,c,null,[],[],f):null)&&f.scope&&E.$$addScopeClass(k.$$element);k=f&&f.terminal||!(q=a[r].childNodes)||!q.length?null:ca(q,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude: | |||
b);if(f||k)h.push(r,f,k),n=!0,p=p||f;f=null}return n?g:null}function M(a,b,c,d){return function(d,e,f,g,h){d||(d=a.$new(!1,h),d.$$transcluded=!0);return b(d,e,f,c,g)}}function V(b,c,g,h,k){var l=g.$attr,q;switch(b.nodeType){case ka:fa(c,ua(pa(b)),"E",h,k);for(var n,r,D,B=b.attributes,O=0,G=B&&B.length;O<G;O++){var I=!1,E=!1;n=B[O];q=n.name;n=T(n.value);r=ua(q);if(D=ya.test(r))q=Kb(r.substr(6),"-");var K=r.replace(/(Start|End)$/,""),u;a:{var C=K;if(d.hasOwnProperty(C)){u=void 0;for(var C=a.get(C+"Directive"), | |||
s=0,ca=C.length;s<ca;s++)if(u=C[s],u.multiElement){u=!0;break a}}u=!1}u&&r===K+"Start"&&(I=q,E=q.substr(0,q.length-5)+"end",q=q.substr(0,q.length-6));r=ua(q.toLowerCase());l[r]=q;if(D||!g.hasOwnProperty(r))g[r]=n,Jc(b,r)&&(g[r]=!0);Q(b,c,n,r,D);fa(c,r,"A",h,k,I,E)}b=b.className;if(J(b)&&""!==b)for(;q=f.exec(b);)r=ua(q[2]),fa(c,r,"C",h,k)&&(g[r]=T(q[3])),b=b.substr(q.index+q[0].length);break;case jb:Y(c,b.nodeValue);break;case 8:try{if(q=e.exec(b.nodeValue))r=ua(q[1]),fa(c,r,"M",h,k)&&(g[r]=T(q[2]))}catch(V){}}c.sort(w); | |||
return c}function W(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw ia("uterdir",b,c);a.nodeType==ka&&(a.hasAttribute(b)&&e++,a.hasAttribute(c)&&e--);d.push(a);a=a.nextSibling}while(0<e)}else d.push(a);return v(d)}function R(a,b,c){return function(d,e,f,g,h){e=W(e[0],b,c);return a(d,e,f,g,h)}}function ba(a,d,e,f,g,h,l,r,p){function D(a,b,c,d){if(a){c&&(a=R(a,c,d));a.require=L.require;a.directiveName=ga;if(M===L||L.$$isolateScope)a=Z(a,{isolateScope:!0});l.push(a)}if(b){c&& | |||
(b=R(b,c,d));b.require=L.require;b.directiveName=ga;if(M===L||L.$$isolateScope)b=Z(b,{isolateScope:!0});r.push(b)}}function I(a,b,c,d){var e,f="data",g=!1,h=c,l;if(J(b)){l=b.match(k);b=b.substring(l[0].length);l[3]&&(l[1]?l[3]=null:l[1]=l[3]);"^"===l[1]?f="inheritedData":"^^"===l[1]&&(f="inheritedData",h=c.parent());"?"===l[2]&&(g=!0);e=null;d&&"data"===f&&(e=d[b])&&(e=e.instance);e=e||h[f]("$"+b+"Controller");if(!e&&!g)throw ia("ctreq",b,a);return e||null}H(b)&&(e=[],s(b,function(b){e.push(I(a,b, | |||
c,d))}));return e}function G(a,c,f,g,h){function k(a,b,c){var d;Ta(a)||(c=b,b=a,a=t);F&&(d=u);c||(c=F?V.parent():V);return h(a,b,d,c,Vb)}var n,p,D,K,u,xb,V,R;d===f?(R=e,V=e.$$element):(V=v(f),R=new X(V,e));M&&(K=c.$new(!0));xb=h&&k;C&&(ca={},u={},s(C,function(a){var b={$scope:a===M||a.$$isolateScope?K:c,$element:V,$attrs:R,$transclude:xb};D=a.controller;"@"==D&&(D=R[a.name]);b=B(D,b,!0,a.controllerAs);u[a.name]=b;F||V.data("$"+a.name+"Controller",b.instance);ca[a.name]=b}));if(M){E.$$addScopeInfo(V, | |||
K,!0,!(ba&&(ba===M||ba===M.$$originalDirective)));E.$$addScopeClass(V,!0);g=ca&&ca[M.name];var W=K;g&&g.identifier&&!0===M.bindToController&&(W=g.instance);s(K.$$isolateBindings=M.$$isolateBindings,function(a,d){var e=a.attrName,f=a.optional,g,h,k,l;switch(a.mode){case "@":R.$observe(e,function(a){W[d]=a});R.$$observers[e].$$scope=c;R[e]&&(W[d]=b(R[e])(c));break;case "=":if(f&&!R[e])break;h=O(R[e]);l=h.literal?la:function(a,b){return a===b||a!==a&&b!==b};k=h.assign||function(){g=W[d]=h(c);throw ia("nonassign", | |||
R[e],M.name);};g=W[d]=h(c);f=function(a){l(a,W[d])||(l(a,g)?k(c,a=W[d]):W[d]=a);return g=a};f.$stateful=!0;f=a.collection?c.$watchCollection(R[e],f):c.$watch(O(R[e],f),null,h.literal);K.$on("$destroy",f);break;case "&":h=O(R[e]),W[d]=function(a){return h(c,a)}}})}ca&&(s(ca,function(a){a()}),ca=null);g=0;for(n=l.length;g<n;g++)p=l[g],$(p,p.isolateScope?K:c,V,R,p.require&&I(p.directiveName,p.require,V,u),xb);var Vb=c;M&&(M.template||null===M.templateUrl)&&(Vb=K);a&&a(Vb,f.childNodes,t,h);for(g=r.length- | |||
1;0<=g;g--)p=r[g],$(p,p.isolateScope?K:c,V,R,p.require&&I(p.directiveName,p.require,V,u),xb)}p=p||{};for(var K=-Number.MAX_VALUE,u,C=p.controllerDirectives,ca,M=p.newIsolateScopeDirective,ba=p.templateDirective,fa=p.nonTlbTranscludeDirective,y=!1,Na=!1,F=p.hasElementTranscludeDirective,Y=e.$$element=v(d),L,ga,w,Ga=f,S,Q=0,ya=a.length;Q<ya;Q++){L=a[Q];var wb=L.$$start,aa=L.$$end;wb&&(Y=W(d,wb,aa));w=t;if(K>L.priority)break;if(w=L.scope)L.templateUrl||(P(w)?(xa("new/isolated scope",M||u,L,Y),M=L):xa("new/isolated scope", | |||
M,L,Y)),u=u||L;ga=L.name;!L.templateUrl&&L.controller&&(w=L.controller,C=C||{},xa("'"+ga+"' controller",C[ga],L,Y),C[ga]=L);if(w=L.transclude)y=!0,L.$$tlb||(xa("transclusion",fa,L,Y),fa=L),"element"==w?(F=!0,K=L.priority,w=Y,Y=e.$$element=v(U.createComment(" "+ga+": "+e[ga]+" ")),d=Y[0],yb(g,Xa.call(w,0),d),Ga=E(w,f,K,h&&h.name,{nonTlbTranscludeDirective:fa})):(w=v(Pb(d)).contents(),Y.empty(),Ga=E(w,f));if(L.template)if(Na=!0,xa("template",ba,L,Y),ba=L,w=A(L.template)?L.template(Y,e):L.template,w= | |||
Pc(w),L.replace){h=L;w=Nb.test(w)?Qc(N(L.templateNamespace,T(w))):[];d=w[0];if(1!=w.length||d.nodeType!==ka)throw ia("tplrt",ga,"");yb(g,Y,d);ya={$attr:{}};w=V(d,[],ya);var nf=a.splice(Q+1,a.length-(Q+1));M&&z(w);a=a.concat(w).concat(nf);Oc(e,ya);ya=a.length}else Y.html(w);if(L.templateUrl)Na=!0,xa("template",ba,L,Y),ba=L,L.replace&&(h=L),G=x(a.splice(Q,a.length-Q),Y,e,g,y&&Ga,l,r,{controllerDirectives:C,newIsolateScopeDirective:M,templateDirective:ba,nonTlbTranscludeDirective:fa}),ya=a.length;else if(L.compile)try{S= | |||
L.compile(Y,e,Ga),A(S)?D(null,S,wb,aa):S&&D(S.pre,S.post,wb,aa)}catch(da){c(da,sa(Y))}L.terminal&&(G.terminal=!0,K=Math.max(K,L.priority))}G.scope=u&&!0===u.scope;G.transcludeOnThisElement=y;G.elementTranscludeOnThisElement=F;G.templateOnThisElement=Na;G.transclude=Ga;p.hasElementTranscludeDirective=F;return G}function z(a){for(var b=0,c=a.length;b<c;b++)a[b]=lc(a[b],{$$isolateScope:!0})}function fa(b,e,f,g,h,k,l){if(e===h)return null;h=null;if(d.hasOwnProperty(e)){var q;e=a.get(e+"Directive");for(var r= | |||
0,D=e.length;r<D;r++)try{q=e[r],(g===t||g>q.priority)&&-1!=q.restrict.indexOf(f)&&(k&&(q=lc(q,{$$start:k,$$end:l})),b.push(q),h=q)}catch(B){c(B)}}return h}function Oc(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;s(a,function(d,e){"$"!=e.charAt(0)&&(b[e]&&b[e]!==d&&(d+=("style"===e?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});s(b,function(b,f){"class"==f?(K(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):"style"==f?(e.attr("style",e.attr("style")+";"+b),a.style=(a.style?a.style+";":"")+b):"$"==f.charAt(0)|| | |||
a.hasOwnProperty(f)||(a[f]=b,d[f]=c[f])})}function x(a,b,c,d,e,f,g,h){var k=[],l,q,n=b[0],p=a.shift(),D=F({},p,{templateUrl:null,transclude:null,replace:null,$$originalDirective:p}),B=A(p.templateUrl)?p.templateUrl(b,c):p.templateUrl,O=p.templateNamespace;b.empty();r(G.getTrustedResourceUrl(B)).then(function(r){var G,I;r=Pc(r);if(p.replace){r=Nb.test(r)?Qc(N(O,T(r))):[];G=r[0];if(1!=r.length||G.nodeType!==ka)throw ia("tplrt",p.name,B);r={$attr:{}};yb(d,b,G);var u=V(G,[],r);P(p.scope)&&z(u);a=u.concat(a); | |||
Oc(c,r)}else G=n,b.html(r);a.unshift(D);l=ba(a,G,c,e,b,p,f,g,h);s(d,function(a,c){a==G&&(d[c]=b[0])});for(q=ca(b[0].childNodes,e);k.length;){r=k.shift();I=k.shift();var E=k.shift(),C=k.shift(),u=b[0];if(!r.$$destroyed){if(I!==n){var R=I.className;h.hasElementTranscludeDirective&&p.replace||(u=Pb(G));yb(E,v(I),u);K(v(u),R)}I=l.transcludeOnThisElement?M(r,l.transclude,C):C;l(q,r,u,d,I)}}k=null});return function(a,b,c,d,e){a=e;b.$$destroyed||(k?(k.push(b),k.push(c),k.push(d),k.push(a)):(l.transcludeOnThisElement&& | |||
(a=M(b,l.transclude,e)),l(q,b,c,d,a)))}}function w(a,b){var c=b.priority-a.priority;return 0!==c?c:a.name!==b.name?a.name<b.name?-1:1:a.index-b.index}function xa(a,b,c,d){if(b)throw ia("multidir",b.name,c.name,a,sa(d));}function Y(a,c){var d=b(c,!0);d&&a.push({priority:0,compile:function(a){a=a.parent();var b=!!a.length;b&&E.$$addBindingClass(a);return function(a,c){var e=c.parent();b||E.$$addBindingClass(e);E.$$addBindingInfo(e,d.expressions);a.$watch(d,function(a){c[0].nodeValue=a})}}})}function N(a, | |||
b){a=S(a||"html");switch(a){case "svg":case "math":var c=U.createElement("div");c.innerHTML="<"+a+">"+b+"</"+a+">";return c.childNodes[0].childNodes;default:return b}}function Ga(a,b){if("srcdoc"==b)return G.HTML;var c=pa(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!=c&&("src"==b||"ngSrc"==b))return G.RESOURCE_URL}function Q(a,c,d,e,f){var k=b(d,!0);if(k){if("multiple"===e&&"select"===pa(a))throw ia("selmulti",sa(a));c.push({priority:100,compile:function(){return{pre:function(c,d,l){d=l.$$observers|| | |||
(l.$$observers={});if(h.test(e))throw ia("nodomevents");l[e]&&(k=b(l[e],!0,Ga(a,e),g[e]||f))&&(l[e]=k(c),(d[e]||(d[e]=[])).$$inter=!0,(l.$$observers&&l.$$observers[e].$$scope||c).$watch(k,function(a,b){"class"===e&&a!=b?l.$updateClass(a,b):l.$set(e,a)}))}}}})}}function yb(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g<h;g++)if(a[g]==d){a[g++]=c;h=g+e-1;for(var k=a.length;g<k;g++,h++)h<k?a[g]=a[h]:delete a[g];a.length-=e-1;a.context===d&&(a.context=c);break}f&&f.replaceChild(c, | |||
d);a=U.createDocumentFragment();a.appendChild(d);v(c).data(v(d).data());ma?(Lb=!0,ma.cleanData([d])):delete v.cache[d[v.expando]];d=1;for(e=b.length;d<e;d++)f=b[d],v(f).remove(),a.appendChild(f),delete b[d];b[0]=c;b.length=1}function Z(a,b){return F(function(){return a.apply(null,arguments)},a,b)}function $(a,b,d,e,f,g){try{a(b,d,e,f,g)}catch(h){c(h,sa(d))}}var X=function(a,b){if(b){var c=Object.keys(b),d,e,f;d=0;for(e=c.length;d<e;d++)f=c[d],this[f]=b[f]}else this.$attr={};this.$$element=a};X.prototype= | |||
{$normalize:ua,$addClass:function(a){a&&0<a.length&&u.addClass(this.$$element,a)},$removeClass:function(a){a&&0<a.length&&u.removeClass(this.$$element,a)},$updateClass:function(a,b){var c=Rc(a,b);c&&c.length&&u.addClass(this.$$element,c);(c=Rc(b,a))&&c.length&&u.removeClass(this.$$element,c)},$set:function(a,b,d,e){var f=this.$$element[0],g=Jc(f,a),h=gf(f,a),f=a;g?(this.$$element.prop(a,b),e=g):h&&(this[h]=b,f=h);this[a]=b;e?this.$attr[a]=e:(e=this.$attr[a])||(this.$attr[a]=e=Kb(a,"-"));g=pa(this.$$element); | |||
if("a"===g&&"href"===a||"img"===g&&"src"===a)this[a]=b=I(b,"src"===a);else if("img"===g&&"srcset"===a){for(var g="",h=T(b),k=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,k=/\s/.test(h)?k:/(,)/,h=h.split(k),k=Math.floor(h.length/2),l=0;l<k;l++)var q=2*l,g=g+I(T(h[q]),!0),g=g+(" "+T(h[q+1]));h=T(h[2*l]).split(/\s/);g+=I(T(h[0]),!0);2===h.length&&(g+=" "+T(h[1]));this[a]=b=g}!1!==d&&(null===b||b===t?this.$$element.removeAttr(e):this.$$element.attr(e,b));(a=this.$$observers)&&s(a[f],function(a){try{a(b)}catch(d){c(d)}})}, | |||
$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers=wa()),e=d[a]||(d[a]=[]);e.push(b);C.$evalAsync(function(){!e.$$inter&&c.hasOwnProperty(a)&&b(c[a])});return function(){Va(e,b)}}};var Na=b.startSymbol(),ga=b.endSymbol(),Pc="{{"==Na||"}}"==ga?Sa:function(a){return a.replace(/\{\{/g,Na).replace(/}}/g,ga)},ya=/^ngAttr[A-Z]/;E.$$addBindingInfo=l?function(a,b){var c=a.data("$binding")||[];H(b)?c=c.concat(b):c.push(b);a.data("$binding",c)}:y;E.$$addBindingClass=l?function(a){K(a,"ng-binding")}: | |||
y;E.$$addScopeInfo=l?function(a,b,c,d){a.data(c?d?"$isolateScopeNoTemplate":"$isolateScope":"$scope",b)}:y;E.$$addScopeClass=l?function(a,b){K(a,b?"ng-isolate-scope":"ng-scope")}:y;return E}]}function ua(b){return $a(b.replace(of,""))}function Rc(b,a){var c="",d=b.split(/\s+/),e=a.split(/\s+/),f=0;a:for(;f<d.length;f++){for(var g=d[f],k=0;k<e.length;k++)if(g==e[k])continue a;c+=(0<c.length?" ":"")+g}return c}function Qc(b){b=v(b);var a=b.length;if(1>=a)return b;for(;a--;)8===b[a].nodeType&&pf.call(b, | |||
a,1);return b}function De(){var b={},a=!1,c=/^(\S+)(\s+as\s+(\w+))?$/;this.register=function(a,c){La(a,"controller");P(a)?F(b,a):b[a]=c};this.allowGlobals=function(){a=!0};this.$get=["$injector","$window",function(d,e){function f(a,b,c,d){if(!a||!P(a.$scope))throw w("$controller")("noscp",d,b);a.$scope[b]=c}return function(g,k,h,l){var m,p,q;h=!0===h;l&&J(l)&&(q=l);J(g)&&(l=g.match(c),p=l[1],q=q||l[3],g=b.hasOwnProperty(p)?b[p]:tc(k.$scope,p,!0)||(a?tc(e,p,!0):t),mb(g,p,!0));if(h)return h=function(){}, | |||
h.prototype=(H(g)?g[g.length-1]:g).prototype,m=new h,q&&f(k,q,m,p||g.name),F(function(){d.invoke(g,m,k,p);return m},{instance:m,identifier:q});m=d.instantiate(g,k,p);q&&f(k,q,m,p||g.name);return m}}]}function Ee(){this.$get=["$window",function(b){return v(b.document)}]}function Fe(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Wb(b,a){if(J(b)){b=b.replace(qf,"");var c=a("Content-Type");if(c&&0===c.indexOf(Sc)||rf.test(b)&&sf.test(b))b=oc(b)}return b}function Tc(b){var a= | |||
{},c,d,e;if(!b)return a;s(b.split("\n"),function(b){e=b.indexOf(":");c=S(T(b.substr(0,e)));d=T(b.substr(e+1));c&&(a[c]=a[c]?a[c]+", "+d:d)});return a}function Uc(b){var a=P(b)?b:t;return function(c){a||(a=Tc(b));return c?a[S(c)]||null:a}}function Vc(b,a,c){if(A(c))return c(b,a);s(c,function(c){b=c(b,a)});return b}function Ie(){var b=this.defaults={transformResponse:[Wb],transformRequest:[function(a){return P(a)&&"[object File]"!==Ja.call(a)&&"[object Blob]"!==Ja.call(a)?ra(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"}, | |||
post:qa(Xb),put:qa(Xb),patch:qa(Xb)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN"},a=!1;this.useApplyAsync=function(b){return z(b)?(a=!!b,this):a};var c=this.interceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(d,e,f,g,k,h){function l(a){function c(a){var b=F({},a);b.data=a.data?Vc(a.data,a.headers,d.transformResponse):a.data;a=a.status;return 200<=a&&300>a?b:k.reject(b)}var d={method:"get",transformRequest:b.transformRequest,transformResponse:b.transformResponse}, | |||
e=function(a){var c=b.headers,d=F({},a.headers),e,f,c=F({},c.common,c[S(a.method)]);a:for(e in c){a=S(e);for(f in d)if(S(f)===a)continue a;d[e]=c[e]}(function(a){var b;s(a,function(c,d){A(c)&&(b=c(),null!=b?a[d]=b:delete a[d])})})(d);return d}(a);F(d,a);d.headers=e;d.method=ob(d.method);var f=[function(a){e=a.headers;var d=Vc(a.data,Uc(e),a.transformRequest);x(d)&&s(e,function(a,b){"content-type"===S(b)&&delete e[b]});x(a.withCredentials)&&!x(b.withCredentials)&&(a.withCredentials=b.withCredentials); | |||
return m(a,d,e).then(c,c)},t],g=k.when(d);for(s(n,function(a){(a.request||a.requestError)&&f.unshift(a.request,a.requestError);(a.response||a.responseError)&&f.push(a.response,a.responseError)});f.length;){a=f.shift();var h=f.shift(),g=g.then(a,h)}g.success=function(a){g.then(function(b){a(b.data,b.status,b.headers,d)});return g};g.error=function(a){g.then(null,function(b){a(b.data,b.status,b.headers,d)});return g};return g}function m(c,f,h){function n(b,c,d,e){function f(){m(c,b,d,e)}K&&(200<=b&& | |||
300>b?K.put(s,[b,c,Tc(d),e]):K.remove(s));a?g.$applyAsync(f):(f(),g.$$phase||g.$apply())}function m(a,b,d,e){b=Math.max(b,0);(200<=b&&300>b?u.resolve:u.reject)({data:a,status:b,headers:Uc(d),config:c,statusText:e})}function G(){var a=l.pendingRequests.indexOf(c);-1!==a&&l.pendingRequests.splice(a,1)}var u=k.defer(),I=u.promise,K,E,s=p(c.url,c.params);l.pendingRequests.push(c);I.then(G,G);!c.cache&&!b.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(K=P(c.cache)?c.cache:P(b.cache)?b.cache: | |||
q);if(K)if(E=K.get(s),z(E)){if(E&&A(E.then))return E.then(G,G),E;H(E)?m(E[1],E[0],qa(E[2]),E[3]):m(E,200,{},"OK")}else K.put(s,I);x(E)&&((E=Wc(c.url)?e.cookies()[c.xsrfCookieName||b.xsrfCookieName]:t)&&(h[c.xsrfHeaderName||b.xsrfHeaderName]=E),d(c.method,s,f,n,h,c.timeout,c.withCredentials,c.responseType));return I}function p(a,b){if(!b)return a;var c=[];Cd(b,function(a,b){null===a||x(a)||(H(a)||(a=[a]),s(a,function(a){P(a)&&(a=ea(a)?a.toISOString():ra(a));c.push(Da(b)+"="+Da(a))}))});0<c.length&& | |||
(a+=(-1==a.indexOf("?")?"?":"&")+c.join("&"));return a}var q=f("$http"),n=[];s(c,function(a){n.unshift(J(a)?h.get(a):h.invoke(a))});l.pendingRequests=[];(function(a){s(arguments,function(a){l[a]=function(b,c){return l(F(c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){s(arguments,function(a){l[a]=function(b,c,d){return l(F(d||{},{method:a,url:b,data:c}))}})})("post","put","patch");l.defaults=b;return l}]}function tf(){return new N.XMLHttpRequest}function Je(){this.$get=["$browser", | |||
"$window","$document",function(b,a,c){return uf(b,tf,b.defer,a.angular.callbacks,c[0])}]}function uf(b,a,c,d,e){function f(a,b,c){var f=e.createElement("script"),m=null;f.type="text/javascript";f.src=a;f.async=!0;m=function(a){f.removeEventListener("load",m,!1);f.removeEventListener("error",m,!1);e.body.removeChild(f);f=null;var g=-1,n="unknown";a&&("load"!==a.type||d[b].called||(a={type:"error"}),n=a.type,g="error"===a.type?404:200);c&&c(g,n)};f.addEventListener("load",m,!1);f.addEventListener("error", | |||
m,!1);e.body.appendChild(f);return m}return function(e,k,h,l,m,p,q,n){function r(){C&&C();D&&D.abort()}function O(a,d,e,f,g){u&&c.cancel(u);C=D=null;a(d,e,f,g);b.$$completeOutstandingRequest(y)}b.$$incOutstandingRequestCount();k=k||b.url();if("jsonp"==S(e)){var B="_"+(d.counter++).toString(36);d[B]=function(a){d[B].data=a;d[B].called=!0};var C=f(k.replace("JSON_CALLBACK","angular.callbacks."+B),B,function(a,b){O(l,a,d[B].data,"",b);d[B]=y})}else{var D=a();D.open(e,k,!0);s(m,function(a,b){z(a)&&D.setRequestHeader(b, | |||
a)});D.onload=function(){var a=D.statusText||"",b="response"in D?D.response:D.responseText,c=1223===D.status?204:D.status;0===c&&(c=b?200:"file"==za(k).protocol?404:0);O(l,c,b,D.getAllResponseHeaders(),a)};e=function(){O(l,-1,null,null,"")};D.onerror=e;D.onabort=e;q&&(D.withCredentials=!0);if(n)try{D.responseType=n}catch(G){if("json"!==n)throw G;}D.send(h||null)}if(0<p)var u=c(r,p);else p&&A(p.then)&&p.then(r)}}function Ge(){var b="{{",a="}}";this.startSymbol=function(a){return a?(b=a,this):b};this.endSymbol= | |||
function(b){return b?(a=b,this):a};this.$get=["$parse","$exceptionHandler","$sce",function(c,d,e){function f(a){return"\\\\\\"+a}function g(f,g,n,r){function O(c){return c.replace(l,b).replace(m,a)}function B(a){try{var b;var c=n?e.getTrusted(n,a):e.valueOf(a);if(null==c)b="";else{switch(typeof c){case "string":break;case "number":c=""+c;break;default:c=ra(c)}b=c}return b}catch(g){a=Yb("interr",f,g.toString()),d(a)}}r=!!r;for(var C,D,G=0,u=[],I=[],K=f.length,E=[],s=[];G<K;)if(-1!=(C=f.indexOf(b,G))&& | |||
-1!=(D=f.indexOf(a,C+k)))G!==C&&E.push(O(f.substring(G,C))),G=f.substring(C+k,D),u.push(G),I.push(c(G,B)),G=D+h,s.push(E.length),E.push("");else{G!==K&&E.push(O(f.substring(G)));break}if(n&&1<E.length)throw Yb("noconcat",f);if(!g||u.length){var M=function(a){for(var b=0,c=u.length;b<c;b++){if(r&&x(a[b]))return;E[s[b]]=a[b]}return E.join("")};return F(function(a){var b=0,c=u.length,e=Array(c);try{for(;b<c;b++)e[b]=I[b](a);return M(e)}catch(g){a=Yb("interr",f,g.toString()),d(a)}},{exp:f,expressions:u, | |||
$$watchDelegate:function(a,b,c){var d;return a.$watchGroup(I,function(c,e){var f=M(c);A(b)&&b.call(this,f,c!==e?d:f,a);d=f},c)}})}}var k=b.length,h=a.length,l=new RegExp(b.replace(/./g,f),"g"),m=new RegExp(a.replace(/./g,f),"g");g.startSymbol=function(){return b};g.endSymbol=function(){return a};return g}]}function He(){this.$get=["$rootScope","$window","$q","$$q",function(b,a,c,d){function e(e,k,h,l){var m=a.setInterval,p=a.clearInterval,q=0,n=z(l)&&!l,r=(n?d:c).defer(),O=r.promise;h=z(h)?h:0;O.then(null, | |||
null,e);O.$$intervalId=m(function(){r.notify(q++);0<h&&q>=h&&(r.resolve(q),p(O.$$intervalId),delete f[O.$$intervalId]);n||b.$apply()},k);f[O.$$intervalId]=r;return O}var f={};e.cancel=function(b){return b&&b.$$intervalId in f?(f[b.$$intervalId].reject("canceled"),a.clearInterval(b.$$intervalId),delete f[b.$$intervalId],!0):!1};return e}]}function Pd(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-", | |||
negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January February March April May June July August September October November December".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a", | |||
"short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return 1===b?"one":"other"}}}}function Zb(b){b=b.split("/");for(var a=b.length;a--;)b[a]=kb(b[a]);return b.join("/")}function Xc(b,a,c){b=za(b,c);a.$$protocol=b.protocol;a.$$host=b.hostname;a.$$port=aa(b.port)||vf[b.protocol]||null}function Yc(b,a,c){var d="/"!==b.charAt(0);d&&(b="/"+b);b=za(b,c);a.$$path=decodeURIComponent(d&& | |||
"/"===b.pathname.charAt(0)?b.pathname.substring(1):b.pathname);a.$$search=qc(b.search);a.$$hash=decodeURIComponent(b.hash);a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function va(b,a){if(0===a.indexOf(b))return a.substr(b.length)}function Fa(b){var a=b.indexOf("#");return-1==a?b:b.substr(0,a)}function $b(b){return b.substr(0,Fa(b).lastIndexOf("/")+1)}function ac(b,a){this.$$html5=!0;a=a||"";var c=$b(b);Xc(b,this,b);this.$$parse=function(a){var e=va(c,a);if(!J(e))throw bb("ipthprfx", | |||
a,c);Yc(e,this,b);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Ib(this.$$search),b=this.$$hash?"#"+kb(this.$$hash):"";this.$$url=Zb(this.$$path)+(a?"?"+a:"")+b;this.$$absUrl=c+this.$$url.substr(1)};this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;(f=va(b,d))!==t?(g=f,g=(f=va(a,f))!==t?c+(va("/",f)||f):b+g):(f=va(c,d))!==t?g=c+f:c==d+"/"&&(g=c);g&&this.$$parse(g);return!!g}}function bc(b,a){var c=$b(b);Xc(b,this,b);this.$$parse= | |||
function(d){var e=va(b,d)||va(c,d),e="#"==e.charAt(0)?va(a,e):this.$$html5?e:"";if(!J(e))throw bb("ihshprfx",d,a);Yc(e,this,b);d=this.$$path;var f=/^\/[A-Z]:(\/.*)/;0===e.indexOf(b)&&(e=e.replace(b,""));f.exec(e)||(d=(e=f.exec(d))?e[1]:d);this.$$path=d;this.$$compose()};this.$$compose=function(){var c=Ib(this.$$search),e=this.$$hash?"#"+kb(this.$$hash):"";this.$$url=Zb(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+(this.$$url?a+this.$$url:"")};this.$$parseLinkUrl=function(a,c){return Fa(b)==Fa(a)?(this.$$parse(a), | |||
!0):!1}}function Zc(b,a){this.$$html5=!0;bc.apply(this,arguments);var c=$b(b);this.$$parseLinkUrl=function(d,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;b==Fa(d)?f=d:(g=va(c,d))?f=b+a+g:c===d+"/"&&(f=c);f&&this.$$parse(f);return!!f};this.$$compose=function(){var c=Ib(this.$$search),e=this.$$hash?"#"+kb(this.$$hash):"";this.$$url=Zb(this.$$path)+(c?"?"+c:"")+e;this.$$absUrl=b+a+this.$$url}}function zb(b){return function(){return this[b]}}function $c(b,a){return function(c){if(x(c))return this[b]; | |||
this[b]=a(c);this.$$compose();return this}}function Ke(){var b="",a={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(a){return z(a)?(b=a,this):b};this.html5Mode=function(b){return Ua(b)?(a.enabled=b,this):P(b)?(Ua(b.enabled)&&(a.enabled=b.enabled),Ua(b.requireBase)&&(a.requireBase=b.requireBase),Ua(b.rewriteLinks)&&(a.rewriteLinks=b.rewriteLinks),this):a};this.$get=["$rootScope","$browser","$sniffer","$rootElement",function(c,d,e,f){function g(a,b,c){var e=h.url(),f=h.$$state; | |||
try{d.url(a,b,c),h.$$state=d.state()}catch(g){throw h.url(e),h.$$state=f,g;}}function k(a,b){c.$broadcast("$locationChangeSuccess",h.absUrl(),a,h.$$state,b)}var h,l;l=d.baseHref();var m=d.url(),p;if(a.enabled){if(!l&&a.requireBase)throw bb("nobase");p=m.substring(0,m.indexOf("/",m.indexOf("//")+2))+(l||"/");l=e.history?ac:Zc}else p=Fa(m),l=bc;h=new l(p,"#"+b);h.$$parseLinkUrl(m,m);h.$$state=d.state();var q=/^\s*(javascript|mailto):/i;f.on("click",function(b){if(a.rewriteLinks&&!b.ctrlKey&&!b.metaKey&& | |||
2!=b.which){for(var e=v(b.target);"a"!==pa(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return;var g=e.prop("href"),k=e.attr("href")||e.attr("xlink:href");P(g)&&"[object SVGAnimatedString]"===g.toString()&&(g=za(g.animVal).href);q.test(g)||!g||e.attr("target")||b.isDefaultPrevented()||!h.$$parseLinkUrl(g,k)||(b.preventDefault(),h.absUrl()!=d.url()&&(c.$apply(),N.angular["ff-684208-preventDefault"]=!0))}});h.absUrl()!=m&&d.url(h.absUrl(),!0);var n=!0;d.onUrlChange(function(a,b){c.$evalAsync(function(){var d= | |||
h.absUrl(),e=h.$$state;h.$$parse(a);h.$$state=b;c.$broadcast("$locationChangeStart",a,d,b,e).defaultPrevented?(h.$$parse(d),h.$$state=e,g(d,!1,e)):(n=!1,k(d,e))});c.$$phase||c.$digest()});c.$watch(function(){var a=d.url(),b=d.state(),f=h.$$replace,l=a!==h.absUrl()||h.$$html5&&e.history&&b!==h.$$state;if(n||l)n=!1,c.$evalAsync(function(){c.$broadcast("$locationChangeStart",h.absUrl(),a,h.$$state,b).defaultPrevented?(h.$$parse(a),h.$$state=b):(l&&g(h.absUrl(),f,b===h.$$state?null:h.$$state),k(a,b))}); | |||
h.$$replace=!1});return h}]}function Le(){var b=!0,a=this;this.debugEnabled=function(a){return z(a)?(b=a,this):b};this.$get=["$window",function(c){function d(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=c.console||{},e=b[a]||b.log||y;a=!1;try{a=!!e.apply}catch(h){}return a?function(){var a=[];s(arguments,function(b){a.push(d(b))});return e.apply(b, | |||
a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){b&&c.apply(a,arguments)}}()}}]}function na(b,a){if("__defineGetter__"===b||"__defineSetter__"===b||"__lookupGetter__"===b||"__lookupSetter__"===b||"__proto__"===b)throw oa("isecfld",a);return b}function Aa(b,a){if(b){if(b.constructor===b)throw oa("isecfn",a);if(b.window===b)throw oa("isecwindow",a);if(b.children&&(b.nodeName||b.prop&&b.attr&&b.find))throw oa("isecdom", | |||
a);if(b===Object)throw oa("isecobj",a);}return b}function cc(b){return b.constant}function Oa(b,a,c,d){Aa(b,d);a=a.split(".");for(var e,f=0;1<a.length;f++){e=na(a.shift(),d);var g=Aa(b[e],d);g||(g={},b[e]=g);b=g}e=na(a.shift(),d);Aa(b[e],d);return b[e]=c}function ad(b,a,c,d,e,f){na(b,f);na(a,f);na(c,f);na(d,f);na(e,f);return function(f,k){var h=k&&k.hasOwnProperty(b)?k:f;if(null==h)return h;h=h[b];if(!a)return h;if(null==h)return t;h=h[a];if(!c)return h;if(null==h)return t;h=h[c];if(!d)return h;if(null== | |||
h)return t;h=h[d];return e?null==h?t:h=h[e]:h}}function bd(b,a,c){var d=cd[b];if(d)return d;var e=b.split("."),f=e.length;if(a.csp)d=6>f?ad(e[0],e[1],e[2],e[3],e[4],c):function(a,b){var d=0,g;do g=ad(e[d++],e[d++],e[d++],e[d++],e[d++],c)(a,b),b=t,a=g;while(d<f);return g};else{var g="";s(e,function(a,b){na(a,c);g+="if(s == null) return undefined;\ns="+(b?"s":'((l&&l.hasOwnProperty("'+a+'"))?l:s)')+"."+a+";\n"});g+="return s;";a=new Function("s","l",g);a.toString=da(g);d=a}d.sharedGetter=!0;d.assign= | |||
function(a,c){return Oa(a,b,c,b)};return cd[b]=d}function dc(b){return A(b.valueOf)?b.valueOf():wf.call(b)}function Me(){var b=wa(),a={csp:!1};this.$get=["$filter","$sniffer",function(c,d){function e(a){var b=a;a.sharedGetter&&(b=function(b,c){return a(b,c)},b.literal=a.literal,b.constant=a.constant,b.assign=a.assign);return b}function f(a,b){for(var c=0,d=a.length;c<d;c++){var e=a[c];e.constant||(e.inputs?f(e.inputs,b):-1===b.indexOf(e)&&b.push(e))}return b}function g(a,b){return null==a||null== | |||
b?a===b:"object"===typeof a&&(a=dc(a),"object"===typeof a)?!1:a===b||a!==a&&b!==b}function k(a,b,c,d){var e=d.$$inputs||(d.$$inputs=f(d.inputs,[])),h;if(1===e.length){var k=g,e=e[0];return a.$watch(function(a){var b=e(a);g(b,k)||(h=d(a),k=b&&dc(b));return h},b,c)}for(var l=[],m=0,p=e.length;m<p;m++)l[m]=g;return a.$watch(function(a){for(var b=!1,c=0,f=e.length;c<f;c++){var k=e[c](a);if(b||(b=!g(k,l[c])))l[c]=k&&dc(k)}b&&(h=d(a));return h},b,c)}function h(a,b,c,d){var e,f;return e=a.$watch(function(a){return d(a)}, | |||
function(a,c,d){f=a;A(b)&&b.apply(this,arguments);z(a)&&d.$$postDigest(function(){z(f)&&e()})},c)}function l(a,b,c,d){function e(a){var b=!0;s(a,function(a){z(a)||(b=!1)});return b}var f,g;return f=a.$watch(function(a){return d(a)},function(a,c,d){g=a;A(b)&&b.call(this,a,c,d);e(a)&&d.$$postDigest(function(){e(g)&&f()})},c)}function m(a,b,c,d){var e;return e=a.$watch(function(a){return d(a)},function(a,c,d){A(b)&&b.apply(this,arguments);e()},c)}function p(a,b){if(!b)return a;var c=function(c,d){var e= | |||
a(c,d),f=b(e,c,d);return z(e)?f:e};a.$$watchDelegate&&a.$$watchDelegate!==k?c.$$watchDelegate=a.$$watchDelegate:b.$stateful||(c.$$watchDelegate=k,c.inputs=[a]);return c}a.csp=d.csp;return function(d,f){var g,O,B;switch(typeof d){case "string":return B=d=d.trim(),g=b[B],g||(":"===d.charAt(0)&&":"===d.charAt(1)&&(O=!0,d=d.substring(2)),g=new ec(a),g=(new cb(g,c,a)).parse(d),g.constant?g.$$watchDelegate=m:O?(g=e(g),g.$$watchDelegate=g.literal?l:h):g.inputs&&(g.$$watchDelegate=k),b[B]=g),p(g,f);case "function":return p(d, | |||
f);default:return p(y,f)}}}]}function Oe(){this.$get=["$rootScope","$exceptionHandler",function(b,a){return dd(function(a){b.$evalAsync(a)},a)}]}function Pe(){this.$get=["$browser","$exceptionHandler",function(b,a){return dd(function(a){b.defer(a)},a)}]}function dd(b,a){function c(a,b,c){function d(b){return function(c){e||(e=!0,b.call(a,c))}}var e=!1;return[d(b),d(c)]}function d(){this.$$state={status:0}}function e(a,b){return function(c){b.call(a,c)}}function f(c){!c.processScheduled&&c.pending&& | |||
(c.processScheduled=!0,b(function(){var b,d,e;e=c.pending;c.processScheduled=!1;c.pending=t;for(var f=0,g=e.length;f<g;++f){d=e[f][0];b=e[f][c.status];try{A(b)?d.resolve(b(c.value)):1===c.status?d.resolve(c.value):d.reject(c.value)}catch(h){d.reject(h),a(h)}}}))}function g(){this.promise=new d;this.resolve=e(this,this.resolve);this.reject=e(this,this.reject);this.notify=e(this,this.notify)}var k=w("$q",TypeError);d.prototype={then:function(a,b,c){var d=new g;this.$$state.pending=this.$$state.pending|| | |||
[];this.$$state.pending.push([d,a,b,c]);0<this.$$state.status&&f(this.$$state);return d.promise},"catch":function(a){return this.then(null,a)},"finally":function(a,b){return this.then(function(b){return l(b,!0,a)},function(b){return l(b,!1,a)},b)}};g.prototype={resolve:function(a){this.promise.$$state.status||(a===this.promise?this.$$reject(k("qcycle",a)):this.$$resolve(a))},$$resolve:function(b){var d,e;e=c(this,this.$$resolve,this.$$reject);try{if(P(b)||A(b))d=b&&b.then;A(d)?(this.promise.$$state.status= | |||
-1,d.call(b,e[0],e[1],this.notify)):(this.promise.$$state.value=b,this.promise.$$state.status=1,f(this.promise.$$state))}catch(g){e[1](g),a(g)}},reject:function(a){this.promise.$$state.status||this.$$reject(a)},$$reject:function(a){this.promise.$$state.value=a;this.promise.$$state.status=2;f(this.promise.$$state)},notify:function(c){var d=this.promise.$$state.pending;0>=this.promise.$$state.status&&d&&d.length&&b(function(){for(var b,e,f=0,g=d.length;f<g;f++){e=d[f][0];b=d[f][3];try{e.notify(A(b)? | |||
b(c):c)}catch(h){a(h)}}})}};var h=function(a,b){var c=new g;b?c.resolve(a):c.reject(a);return c.promise},l=function(a,b,c){var d=null;try{A(c)&&(d=c())}catch(e){return h(e,!1)}return d&&A(d.then)?d.then(function(){return h(a,b)},function(a){return h(a,!1)}):h(a,b)},m=function(a,b,c,d){var e=new g;e.resolve(a);return e.promise.then(b,c,d)},p=function n(a){if(!A(a))throw k("norslvr",a);if(!(this instanceof n))return new n(a);var b=new g;a(function(a){b.resolve(a)},function(a){b.reject(a)});return b.promise}; | |||
p.defer=function(){return new g};p.reject=function(a){var b=new g;b.reject(a);return b.promise};p.when=m;p.all=function(a){var b=new g,c=0,d=H(a)?[]:{};s(a,function(a,e){c++;m(a).then(function(a){d.hasOwnProperty(e)||(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})});0===c&&b.resolve(d);return b.promise};return p}function Ye(){this.$get=["$window","$timeout",function(b,a){var c=b.requestAnimationFrame||b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame,d=b.cancelAnimationFrame|| | |||
b.webkitCancelAnimationFrame||b.mozCancelAnimationFrame||b.webkitCancelRequestAnimationFrame,e=!!c,f=e?function(a){var b=c(a);return function(){d(b)}}:function(b){var c=a(b,16.66,!1);return function(){a.cancel(c)}};f.supported=e;return f}]}function Ne(){var b=10,a=w("$rootScope"),c=null,d=null;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=["$injector","$exceptionHandler","$parse","$browser",function(e,f,g,k){function h(){this.$id=++gb;this.$$phase=this.$parent=this.$$watchers= | |||
this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=!1;this.$$listeners={};this.$$listenerCount={};this.$$isolateBindings=null}function l(b){if(r.$$phase)throw a("inprog",r.$$phase);r.$$phase=b}function m(a,b,c){do a.$$listenerCount[c]-=b,0===a.$$listenerCount[c]&&delete a.$$listenerCount[c];while(a=a.$parent)}function p(){}function q(){for(;C.length;)try{C.shift()()}catch(a){f(a)}d=null}function n(){null===d&&(d=k.defer(function(){r.$apply(q)}))} | |||
h.prototype={constructor:h,$new:function(a,b){function c(){d.$$destroyed=!0}var d;b=b||this;a?(d=new h,d.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=function(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$id=++gb;this.$$ChildScope=null},this.$$ChildScope.prototype=this),d=new this.$$ChildScope);d.$parent=b;d.$$prevSibling=b.$$childTail;b.$$childHead?(b.$$childTail.$$nextSibling=d,b.$$childTail=d):b.$$childHead= | |||
b.$$childTail=d;(a||b!=this)&&d.$on("$destroy",c);return d},$watch:function(a,b,d){var e=g(a);if(e.$$watchDelegate)return e.$$watchDelegate(this,b,d,e);var f=this.$$watchers,h={fn:b,last:p,get:e,exp:a,eq:!!d};c=null;A(b)||(h.fn=y);f||(f=this.$$watchers=[]);f.unshift(h);return function(){Va(f,h);c=null}},$watchGroup:function(a,b){function c(){h=!1;k?(k=!1,b(e,e,g)):b(e,d,g)}var d=Array(a.length),e=Array(a.length),f=[],g=this,h=!1,k=!0;if(!a.length){var l=!0;g.$evalAsync(function(){l&&b(e,e,g)});return function(){l= | |||
!1}}if(1===a.length)return this.$watch(a[0],function(a,c,f){e[0]=a;d[0]=c;b(e,a===c?e:d,f)});s(a,function(a,b){var k=g.$watch(a,function(a,f){e[b]=a;d[b]=f;h||(h=!0,g.$evalAsync(c))});f.push(k)});return function(){for(;f.length;)f.shift()()}},$watchCollection:function(a,b){function c(a){e=a;var b,d,g,h;if(P(e))if(Qa(e))for(f!==p&&(f=p,r=f.length=0,l++),a=e.length,r!==a&&(l++,f.length=r=a),b=0;b<a;b++)h=f[b],g=e[b],d=h!==h&&g!==g,d||h===g||(l++,f[b]=g);else{f!==q&&(f=q={},r=0,l++);a=0;for(b in e)e.hasOwnProperty(b)&& | |||
(a++,g=e[b],h=f[b],b in f?(d=h!==h&&g!==g,d||h===g||(l++,f[b]=g)):(r++,f[b]=g,l++));if(r>a)for(b in l++,f)e.hasOwnProperty(b)||(r--,delete f[b])}else f!==e&&(f=e,l++);return l}c.$stateful=!0;var d=this,e,f,h,k=1<b.length,l=0,m=g(a,c),p=[],q={},n=!0,r=0;return this.$watch(m,function(){n?(n=!1,b(e,e,d)):b(e,h,d);if(k)if(P(e))if(Qa(e)){h=Array(e.length);for(var a=0;a<e.length;a++)h[a]=e[a]}else for(a in h={},e)Hb.call(e,a)&&(h[a]=e[a]);else h=e})},$digest:function(){var e,g,h,m,n,s,C=b,M,t=[],W,R,z; | |||
l("$digest");k.$$checkUrlChange();this===r&&null!==d&&(k.defer.cancel(d),q());c=null;do{s=!1;for(M=this;O.length;){try{z=O.shift(),z.scope.$eval(z.expression)}catch(w){f(w)}c=null}a:do{if(m=M.$$watchers)for(n=m.length;n--;)try{if(e=m[n])if((g=e.get(M))!==(h=e.last)&&!(e.eq?la(g,h):"number"===typeof g&&"number"===typeof h&&isNaN(g)&&isNaN(h)))s=!0,c=e,e.last=e.eq?Ca(g,null):g,e.fn(g,h===p?g:h,M),5>C&&(W=4-C,t[W]||(t[W]=[]),R=A(e.exp)?"fn: "+(e.exp.name||e.exp.toString()):e.exp,R+="; newVal: "+ra(g)+ | |||
"; oldVal: "+ra(h),t[W].push(R));else if(e===c){s=!1;break a}}catch(v){f(v)}if(!(m=M.$$childHead||M!==this&&M.$$nextSibling))for(;M!==this&&!(m=M.$$nextSibling);)M=M.$parent}while(M=m);if((s||O.length)&&!C--)throw r.$$phase=null,a("infdig",b,ra(t));}while(s||O.length);for(r.$$phase=null;B.length;)try{B.shift()()}catch(y){f(y)}},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;if(this!==r){for(var b in this.$$listenerCount)m(this,this.$$listenerCount[b], | |||
b);a.$$childHead==this&&(a.$$childHead=this.$$nextSibling);a.$$childTail==this&&(a.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=y;this.$on=this.$watch=this.$watchGroup=function(){return y};this.$$listeners={};this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail= | |||
this.$root=this.$$watchers=null}}},$eval:function(a,b){return g(a)(this,b)},$evalAsync:function(a){r.$$phase||O.length||k.defer(function(){O.length&&r.$digest()});O.push({scope:this,expression:a})},$$postDigest:function(a){B.push(a)},$apply:function(a){try{return l("$apply"),this.$eval(a)}catch(b){f(b)}finally{r.$$phase=null;try{r.$digest()}catch(c){throw f(c),c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&C.push(b);n()},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]= | |||
c=[]);c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=c.indexOf(b);-1!==d&&(c[d]=null,m(e,1,a))}},$emit:function(a,b){var c=[],d,e=this,g=!1,h={name:a,targetScope:e,stopPropagation:function(){g=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},k=ib([h],arguments,1),l,m;do{d=e.$$listeners[a]||c;h.currentScope=e;l=0;for(m=d.length;l<m;l++)if(d[l])try{d[l].apply(null,k)}catch(p){f(p)}else d.splice(l, | |||
1),l--,m--;if(g)return h.currentScope=null,h;e=e.$parent}while(e);h.currentScope=null;return h},$broadcast:function(a,b){var c=this,d=this,e={name:a,targetScope:this,preventDefault:function(){e.defaultPrevented=!0},defaultPrevented:!1};if(!this.$$listenerCount[a])return e;for(var g=ib([e],arguments,1),h,k;c=d;){e.currentScope=c;d=c.$$listeners[a]||[];h=0;for(k=d.length;h<k;h++)if(d[h])try{d[h].apply(null,g)}catch(l){f(l)}else d.splice(h,1),h--,k--;if(!(d=c.$$listenerCount[a]&&c.$$childHead||c!==this&& | |||
c.$$nextSibling))for(;c!==this&&!(d=c.$$nextSibling);)c=c.$parent}e.currentScope=null;return e}};var r=new h,O=r.$$asyncQueue=[],B=r.$$postDigestQueue=[],C=r.$$applyAsyncQueue=[];return r}]}function Qd(){var b=/^\s*(https?|ftp|mailto|tel|file):/,a=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(a){return z(a)?(b=a,this):b};this.imgSrcSanitizationWhitelist=function(b){return z(b)?(a=b,this):a};this.$get=function(){return function(c,d){var e=d?a:b,f;f=za(c).href; | |||
return""===f||f.match(e)?c:"unsafe:"+f}}}function xf(b){if("self"===b)return b;if(J(b)){if(-1<b.indexOf("***"))throw Ba("iwcard",b);b=ed(b).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*");return new RegExp("^"+b+"$")}if(hb(b))return new RegExp("^"+b.source+"$");throw Ba("imatcher");}function fd(b){var a=[];z(b)&&s(b,function(b){a.push(xf(b))});return a}function Re(){this.SCE_CONTEXTS=ja;var b=["self"],a=[];this.resourceUrlWhitelist=function(a){arguments.length&&(b=fd(a));return b};this.resourceUrlBlacklist= | |||
function(b){arguments.length&&(a=fd(b));return a};this.$get=["$injector",function(c){function d(a,b){return"self"===a?Wc(b):!!a.exec(b.href)}function e(a){var b=function(a){this.$$unwrapTrustedValue=function(){return a}};a&&(b.prototype=new a);b.prototype.valueOf=function(){return this.$$unwrapTrustedValue()};b.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()};return b}var f=function(a){throw Ba("unsafe");};c.has("$sanitize")&&(f=c.get("$sanitize"));var g=e(),k={};k[ja.HTML]= | |||
e(g);k[ja.CSS]=e(g);k[ja.URL]=e(g);k[ja.JS]=e(g);k[ja.RESOURCE_URL]=e(k[ja.URL]);return{trustAs:function(a,b){var c=k.hasOwnProperty(a)?k[a]:null;if(!c)throw Ba("icontext",a,b);if(null===b||b===t||""===b)return b;if("string"!==typeof b)throw Ba("itype",a);return new c(b)},getTrusted:function(c,e){if(null===e||e===t||""===e)return e;var g=k.hasOwnProperty(c)?k[c]:null;if(g&&e instanceof g)return e.$$unwrapTrustedValue();if(c===ja.RESOURCE_URL){var g=za(e.toString()),p,q,n=!1;p=0;for(q=b.length;p<q;p++)if(d(b[p], | |||
g)){n=!0;break}if(n)for(p=0,q=a.length;p<q;p++)if(d(a[p],g)){n=!1;break}if(n)return e;throw Ba("insecurl",e.toString());}if(c===ja.HTML)return f(e);throw Ba("unsafe");},valueOf:function(a){return a instanceof g?a.$$unwrapTrustedValue():a}}}]}function Qe(){var b=!0;this.enabled=function(a){arguments.length&&(b=!!a);return b};this.$get=["$parse","$sceDelegate",function(a,c){if(b&&8>Ha)throw Ba("iequirks");var d=qa(ja);d.isEnabled=function(){return b};d.trustAs=c.trustAs;d.getTrusted=c.getTrusted;d.valueOf= | |||
c.valueOf;b||(d.trustAs=d.getTrusted=function(a,b){return b},d.valueOf=Sa);d.parseAs=function(b,c){var e=a(c);return e.literal&&e.constant?e:a(c,function(a){return d.getTrusted(b,a)})};var e=d.parseAs,f=d.getTrusted,g=d.trustAs;s(ja,function(a,b){var c=S(b);d[$a("parse_as_"+c)]=function(b){return e(a,b)};d[$a("get_trusted_"+c)]=function(b){return f(a,b)};d[$a("trust_as_"+c)]=function(b){return g(a,b)}});return d}]}function Se(){this.$get=["$window","$document",function(b,a){var c={},d=aa((/android (\d+)/.exec(S((b.navigator|| | |||
{}).userAgent))||[])[1]),e=/Boxee/i.test((b.navigator||{}).userAgent),f=a[0]||{},g,k=/^(Moz|webkit|ms)(?=[A-Z])/,h=f.body&&f.body.style,l=!1,m=!1;if(h){for(var p in h)if(l=k.exec(p)){g=l[0];g=g.substr(0,1).toUpperCase()+g.substr(1);break}g||(g="WebkitOpacity"in h&&"webkit");l=!!("transition"in h||g+"Transition"in h);m=!!("animation"in h||g+"Animation"in h);!d||l&&m||(l=J(f.body.style.webkitTransition),m=J(f.body.style.webkitAnimation))}return{history:!(!b.history||!b.history.pushState||4>d||e),hasEvent:function(a){if("input"== | |||
a&&9==Ha)return!1;if(x(c[a])){var b=f.createElement("div");c[a]="on"+a in b}return c[a]},csp:Ya(),vendorPrefix:g,transitions:l,animations:m,android:d}}]}function Ue(){this.$get=["$templateCache","$http","$q",function(b,a,c){function d(e,f){d.totalPendingRequests++;var g=a.defaults&&a.defaults.transformResponse;if(H(g))for(var k=g,g=[],h=0;h<k.length;++h){var l=k[h];l!==Wb&&g.push(l)}else g===Wb&&(g=null);return a.get(e,{cache:b,transformResponse:g}).then(function(a){a=a.data;d.totalPendingRequests--; | |||
b.put(e,a);return a},function(){d.totalPendingRequests--;if(!f)throw ia("tpload",e);return c.reject()})}d.totalPendingRequests=0;return d}]}function Ve(){this.$get=["$rootScope","$browser","$location",function(b,a,c){return{findBindings:function(a,b,c){a=a.getElementsByClassName("ng-binding");var g=[];s(a,function(a){var d=ta.element(a).data("$binding");d&&s(d,function(d){c?(new RegExp("(^|\\s)"+ed(b)+"(\\s|\\||$)")).test(d)&&g.push(a):-1!=d.indexOf(b)&&g.push(a)})});return g},findModels:function(a, | |||
b,c){for(var g=["ng-","data-ng-","ng\\:"],k=0;k<g.length;++k){var h=a.querySelectorAll("["+g[k]+"model"+(c?"=":"*=")+'"'+b+'"]');if(h.length)return h}},getLocation:function(){return c.url()},setLocation:function(a){a!==c.url()&&(c.url(a),b.$digest())},whenStable:function(b){a.notifyWhenNoOutstandingRequests(b)}}}]}function We(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(b,a,c,d,e){function f(f,h,l){var m=z(l)&&!l,p=(m?d:c).defer(),q=p.promise;h=a.defer(function(){try{p.resolve(f())}catch(a){p.reject(a), | |||
e(a)}finally{delete g[q.$$timeoutId]}m||b.$apply()},h);q.$$timeoutId=h;g[h]=p;return q}var g={};f.cancel=function(b){return b&&b.$$timeoutId in g?(g[b.$$timeoutId].reject("canceled"),delete g[b.$$timeoutId],a.defer.cancel(b.$$timeoutId)):!1};return f}]}function za(b,a){var c=b;Ha&&(Z.setAttribute("href",c),c=Z.href);Z.setAttribute("href",c);return{href:Z.href,protocol:Z.protocol?Z.protocol.replace(/:$/,""):"",host:Z.host,search:Z.search?Z.search.replace(/^\?/,""):"",hash:Z.hash?Z.hash.replace(/^#/, | |||
""):"",hostname:Z.hostname,port:Z.port,pathname:"/"===Z.pathname.charAt(0)?Z.pathname:"/"+Z.pathname}}function Wc(b){b=J(b)?za(b):b;return b.protocol===gd.protocol&&b.host===gd.host}function Xe(){this.$get=da(N)}function Bc(b){function a(c,d){if(P(c)){var e={};s(c,function(b,c){e[c]=a(c,b)});return e}return b.factory(c+"Filter",d)}this.register=a;this.$get=["$injector",function(a){return function(b){return a.get(b+"Filter")}}];a("currency",hd);a("date",id);a("filter",yf);a("json",zf);a("limitTo", | |||
Af);a("lowercase",Bf);a("number",jd);a("orderBy",kd);a("uppercase",Cf)}function yf(){return function(b,a,c){if(!H(b))return b;var d=typeof c,e=[];e.check=function(a,b){for(var c=0;c<e.length;c++)if(!e[c](a,b))return!1;return!0};"function"!==d&&(c="boolean"===d&&c?function(a,b){return ta.equals(a,b)}:function(a,b){if(a&&b&&"object"===typeof a&&"object"===typeof b){for(var d in a)if("$"!==d.charAt(0)&&Hb.call(a,d)&&c(a[d],b[d]))return!0;return!1}b=(""+b).toLowerCase();return-1<(""+a).toLowerCase().indexOf(b)}); | |||
var f=function(a,b){if("string"===typeof b&&"!"===b.charAt(0))return!f(a,b.substr(1));switch(typeof a){case "boolean":case "number":case "string":return c(a,b);case "object":switch(typeof b){case "object":return c(a,b);default:for(var d in a)if("$"!==d.charAt(0)&&f(a[d],b))return!0}return!1;case "array":for(d=0;d<a.length;d++)if(f(a[d],b))return!0;return!1;default:return!1}};switch(typeof a){case "boolean":case "number":case "string":a={$:a};case "object":for(var g in a)(function(b){"undefined"!== | |||
typeof a[b]&&e.push(function(c){return f("$"==b?c:c&&c[b],a[b])})})(g);break;case "function":e.push(a);break;default:return b}d=[];for(g=0;g<b.length;g++){var k=b[g];e.check(k,g)&&d.push(k)}return d}}function hd(b){var a=b.NUMBER_FORMATS;return function(b,d,e){x(d)&&(d=a.CURRENCY_SYM);x(e)&&(e=2);return null==b?b:ld(b,a.PATTERNS[1],a.GROUP_SEP,a.DECIMAL_SEP,e).replace(/\u00A4/g,d)}}function jd(b){var a=b.NUMBER_FORMATS;return function(b,d){return null==b?b:ld(b,a.PATTERNS[0],a.GROUP_SEP,a.DECIMAL_SEP, | |||
d)}}function ld(b,a,c,d,e){if(!isFinite(b)||P(b))return"";var f=0>b;b=Math.abs(b);var g=b+"",k="",h=[],l=!1;if(-1!==g.indexOf("e")){var m=g.match(/([\d\.]+)e(-?)(\d+)/);m&&"-"==m[2]&&m[3]>e+1?(g="0",b=0):(k=g,l=!0)}if(l)0<e&&-1<b&&1>b&&(k=b.toFixed(e));else{g=(g.split(md)[1]||"").length;x(e)&&(e=Math.min(Math.max(a.minFrac,g),a.maxFrac));b=+(Math.round(+(b.toString()+"e"+e)).toString()+"e"+-e);0===b&&(f=!1);b=(""+b).split(md);g=b[0];b=b[1]||"";var m=0,p=a.lgSize,q=a.gSize;if(g.length>=p+q)for(m=g.length- | |||
p,l=0;l<m;l++)0===(m-l)%q&&0!==l&&(k+=c),k+=g.charAt(l);for(l=m;l<g.length;l++)0===(g.length-l)%p&&0!==l&&(k+=c),k+=g.charAt(l);for(;b.length<e;)b+="0";e&&"0"!==e&&(k+=d+b.substr(0,e))}h.push(f?a.negPre:a.posPre);h.push(k);h.push(f?a.negSuf:a.posSuf);return h.join("")}function Ab(b,a,c){var d="";0>b&&(d="-",b=-b);for(b=""+b;b.length<a;)b="0"+b;c&&(b=b.substr(b.length-a));return d+b}function $(b,a,c,d){c=c||0;return function(e){e=e["get"+b]();if(0<c||e>-c)e+=c;0===e&&-12==c&&(e=12);return Ab(e,a,d)}} | |||
function Bb(b,a){return function(c,d){var e=c["get"+b](),f=ob(a?"SHORT"+b:b);return d[f][e]}}function nd(b){var a=(new Date(b,0,1)).getDay();return new Date(b,0,(4>=a?5:12)-a)}function od(b){return function(a){var c=nd(a.getFullYear());a=+new Date(a.getFullYear(),a.getMonth(),a.getDate()+(4-a.getDay()))-+c;a=1+Math.round(a/6048E5);return Ab(a,b)}}function id(b){function a(a){var b;if(b=a.match(c)){a=new Date(0);var f=0,g=0,k=b[8]?a.setUTCFullYear:a.setFullYear,h=b[8]?a.setUTCHours:a.setHours;b[9]&& | |||
(f=aa(b[9]+b[10]),g=aa(b[9]+b[11]));k.call(a,aa(b[1]),aa(b[2])-1,aa(b[3]));f=aa(b[4]||0)-f;g=aa(b[5]||0)-g;k=aa(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));h.call(a,f,g,k,b)}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,e,f){var g="",k=[],h,l;e=e||"mediumDate";e=b.DATETIME_FORMATS[e]||e;J(c)&&(c=Df.test(c)?aa(c):a(c));X(c)&&(c=new Date(c));if(!ea(c))return c;for(;e;)(l=Ef.exec(e))?(k=ib(k,l,1),e=k.pop()): | |||
(k.push(e),e=null);f&&"UTC"===f&&(c=new Date(c.getTime()),c.setMinutes(c.getMinutes()+c.getTimezoneOffset()));s(k,function(a){h=Ff[a];g+=h?h(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function zf(){return function(b){return ra(b,!0)}}function Af(){return function(b,a){X(b)&&(b=b.toString());if(!H(b)&&!J(b))return b;a=Infinity===Math.abs(Number(a))?Number(a):aa(a);if(J(b))return a?0<=a?b.slice(0,a):b.slice(a,b.length):"";var c=[],d,e;a>b.length?a=b.length:a<-b.length&& | |||
(a=-b.length);0<a?(d=0,e=a):(d=b.length+a,e=b.length);for(;d<e;d++)c.push(b[d]);return c}}function kd(b){return function(a,c,d){function e(a,b){return b?function(b,c){return a(c,b)}:a}function f(a,b){var c=typeof a,d=typeof b;return c==d?(ea(a)&&ea(b)&&(a=a.valueOf(),b=b.valueOf()),"string"==c&&(a=a.toLowerCase(),b=b.toLowerCase()),a===b?0:a<b?-1:1):c<d?-1:1}if(!Qa(a))return a;c=H(c)?c:[c];0===c.length&&(c=["+"]);c=c.map(function(a){var c=!1,d=a||Sa;if(J(a)){if("+"==a.charAt(0)||"-"==a.charAt(0))c= | |||
"-"==a.charAt(0),a=a.substring(1);if(""===a)return e(function(a,b){return f(a,b)},c);d=b(a);if(d.constant){var g=d();return e(function(a,b){return f(a[g],b[g])},c)}}return e(function(a,b){return f(d(a),d(b))},c)});for(var g=[],k=0;k<a.length;k++)g.push(a[k]);return g.sort(e(function(a,b){for(var d=0;d<c.length;d++){var e=c[d](a,b);if(0!==e)return e}return 0},d))}}function Ia(b){A(b)&&(b={link:b});b.restrict=b.restrict||"AC";return da(b)}function pd(b,a,c,d,e){var f=this,g=[],k=f.$$parentForm=b.parent().controller("form")|| | |||
Cb;f.$error={};f.$$success={};f.$pending=t;f.$name=e(a.name||a.ngForm||"")(c);f.$dirty=!1;f.$pristine=!0;f.$valid=!0;f.$invalid=!1;f.$submitted=!1;k.$addControl(f);f.$rollbackViewValue=function(){s(g,function(a){a.$rollbackViewValue()})};f.$commitViewValue=function(){s(g,function(a){a.$commitViewValue()})};f.$addControl=function(a){La(a.$name,"input");g.push(a);a.$name&&(f[a.$name]=a)};f.$$renameControl=function(a,b){var c=a.$name;f[c]===a&&delete f[c];f[b]=a;a.$name=b};f.$removeControl=function(a){a.$name&& | |||
f[a.$name]===a&&delete f[a.$name];s(f.$pending,function(b,c){f.$setValidity(c,null,a)});s(f.$error,function(b,c){f.$setValidity(c,null,a)});Va(g,a)};qd({ctrl:this,$element:b,set:function(a,b,c){var d=a[b];d?-1===d.indexOf(c)&&d.push(c):a[b]=[c]},unset:function(a,b,c){var d=a[b];d&&(Va(d,c),0===d.length&&delete a[b])},parentForm:k,$animate:d});f.$setDirty=function(){d.removeClass(b,Pa);d.addClass(b,Db);f.$dirty=!0;f.$pristine=!1;k.$setDirty()};f.$setPristine=function(){d.setClass(b,Pa,Db+" ng-submitted"); | |||
f.$dirty=!1;f.$pristine=!0;f.$submitted=!1;s(g,function(a){a.$setPristine()})};f.$setUntouched=function(){s(g,function(a){a.$setUntouched()})};f.$setSubmitted=function(){d.addClass(b,"ng-submitted");f.$submitted=!0;k.$setSubmitted()}}function fc(b){b.$formatters.push(function(a){return b.$isEmpty(a)?a:a.toString()})}function db(b,a,c,d,e,f){var g=a[0].placeholder,k={},h=S(a[0].type);if(!e.android){var l=!1;a.on("compositionstart",function(a){l=!0});a.on("compositionend",function(){l=!1;m()})}var m= | |||
function(b){if(!l){var e=a.val(),f=b&&b.type;Ha&&"input"===(b||k).type&&a[0].placeholder!==g?g=a[0].placeholder:("password"===h||c.ngTrim&&"false"===c.ngTrim||(e=T(e)),(d.$viewValue!==e||""===e&&d.$$hasNativeValidators)&&d.$setViewValue(e,f))}};if(e.hasEvent("input"))a.on("input",m);else{var p,q=function(a){p||(p=f.defer(function(){m(a);p=null}))};a.on("keydown",function(a){var b=a.keyCode;91===b||15<b&&19>b||37<=b&&40>=b||q(a)});if(e.hasEvent("paste"))a.on("paste cut",q)}a.on("change",m);d.$render= | |||
function(){a.val(d.$isEmpty(d.$modelValue)?"":d.$viewValue)}}function Eb(b,a){return function(c,d){var e,f;if(ea(c))return c;if(J(c)){'"'==c.charAt(0)&&'"'==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1));if(Gf.test(c))return new Date(c);b.lastIndex=0;if(e=b.exec(c))return e.shift(),f=d?{yyyy:d.getFullYear(),MM:d.getMonth()+1,dd:d.getDate(),HH:d.getHours(),mm:d.getMinutes(),ss:d.getSeconds(),sss:d.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},s(e,function(b,c){c<a.length&& | |||
(f[a[c]]=+b)}),new Date(f.yyyy,f.MM-1,f.dd,f.HH,f.mm,f.ss||0,1E3*f.sss||0)}return NaN}}function eb(b,a,c,d){return function(e,f,g,k,h,l,m){function p(a){return z(a)?ea(a)?a:c(a):t}rd(e,f,g,k);db(e,f,g,k,h,l);var q=k&&k.$options&&k.$options.timezone,n;k.$$parserName=b;k.$parsers.push(function(b){return k.$isEmpty(b)?null:a.test(b)?(b=c(b,n),"UTC"===q&&b.setMinutes(b.getMinutes()-b.getTimezoneOffset()),b):t});k.$formatters.push(function(a){if(k.$isEmpty(a))n=null;else{if(!ea(a))throw Fb("datefmt",a); | |||
if((n=a)&&"UTC"===q){var b=6E4*n.getTimezoneOffset();n=new Date(n.getTime()+b)}return m("date")(a,d,q)}return""});if(z(g.min)||g.ngMin){var r;k.$validators.min=function(a){return k.$isEmpty(a)||x(r)||c(a)>=r};g.$observe("min",function(a){r=p(a);k.$validate()})}if(z(g.max)||g.ngMax){var s;k.$validators.max=function(a){return k.$isEmpty(a)||x(s)||c(a)<=s};g.$observe("max",function(a){s=p(a);k.$validate()})}k.$isEmpty=function(a){return!a||a.getTime&&a.getTime()!==a.getTime()}}}function rd(b,a,c,d){(d.$$hasNativeValidators= | |||
P(a[0].validity))&&d.$parsers.push(function(b){var c=a.prop("validity")||{};return c.badInput&&!c.typeMismatch?t:b})}function sd(b,a,c,d,e){if(z(d)){b=b(d);if(!b.constant)throw w("ngModel")("constexpr",c,d);return b(a)}return e}function qd(b){function a(a,b){b&&!f[a]?(l.addClass(e,a),f[a]=!0):!b&&f[a]&&(l.removeClass(e,a),f[a]=!1)}function c(b,c){b=b?"-"+Kb(b,"-"):"";a(fb+b,!0===c);a(td+b,!1===c)}var d=b.ctrl,e=b.$element,f={},g=b.set,k=b.unset,h=b.parentForm,l=b.$animate;f[td]=!(f[fb]=e.hasClass(fb)); | |||
d.$setValidity=function(b,e,f){e===t?(d.$pending||(d.$pending={}),g(d.$pending,b,f)):(d.$pending&&k(d.$pending,b,f),ud(d.$pending)&&(d.$pending=t));Ua(e)?e?(k(d.$error,b,f),g(d.$$success,b,f)):(g(d.$error,b,f),k(d.$$success,b,f)):(k(d.$error,b,f),k(d.$$success,b,f));d.$pending?(a(vd,!0),d.$valid=d.$invalid=t,c("",null)):(a(vd,!1),d.$valid=ud(d.$error),d.$invalid=!d.$valid,c("",d.$valid));e=d.$pending&&d.$pending[b]?t:d.$error[b]?!1:d.$$success[b]?!0:null;c(b,e);h.$setValidity(b,e,d)}}function ud(b){if(b)for(var a in b)return!1; | |||
return!0}function gc(b,a){b="ngClass"+b;return["$animate",function(c){function d(a,b){var c=[],d=0;a:for(;d<a.length;d++){for(var e=a[d],m=0;m<b.length;m++)if(e==b[m])continue a;c.push(e)}return c}function e(a){if(!H(a)){if(J(a))return a.split(" ");if(P(a)){var b=[];s(a,function(a,c){a&&(b=b.concat(c.split(" ")))});return b}}return a}return{restrict:"AC",link:function(f,g,k){function h(a,b){var c=g.data("$classCounts")||{},d=[];s(a,function(a){if(0<b||c[a])c[a]=(c[a]||0)+b,c[a]===+(0<b)&&d.push(a)}); | |||
g.data("$classCounts",c);return d.join(" ")}function l(b){if(!0===a||f.$index%2===a){var l=e(b||[]);if(!m){var n=h(l,1);k.$addClass(n)}else if(!la(b,m)){var r=e(m),n=d(l,r),l=d(r,l),n=h(n,1),l=h(l,-1);n&&n.length&&c.addClass(g,n);l&&l.length&&c.removeClass(g,l)}}m=qa(b)}var m;f.$watch(k[b],l,!0);k.$observe("class",function(a){l(f.$eval(k[b]))});"ngClass"!==b&&f.$watch("$index",function(c,d){var g=c&1;if(g!==(d&1)){var l=e(f.$eval(k[b]));g===a?(g=h(l,1),k.$addClass(g)):(g=h(l,-1),k.$removeClass(g))}})}}}]} | |||
var Hf=/^\/(.+)\/([a-z]*)$/,S=function(b){return J(b)?b.toLowerCase():b},Hb=Object.prototype.hasOwnProperty,ob=function(b){return J(b)?b.toUpperCase():b},Ha,v,ma,Xa=[].slice,pf=[].splice,If=[].push,Ja=Object.prototype.toString,Wa=w("ng"),ta=N.angular||(N.angular={}),Za,gb=0;Ha=U.documentMode;y.$inject=[];Sa.$inject=[];var H=Array.isArray,T=function(b){return J(b)?b.trim():b},ed=function(b){return b.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")},Ya=function(){if(z(Ya.isActive_))return Ya.isActive_; | |||
var b=!(!U.querySelector("[ng-csp]")&&!U.querySelector("[data-ng-csp]"));if(!b)try{new Function("")}catch(a){b=!0}return Ya.isActive_=b},lb=["ng-","data-ng-","ng:","x-ng-"],Kd=/[A-Z]/g,sc=!1,Lb,ka=1,jb=3,Od={full:"1.3.1",major:1,minor:3,dot:1,codeName:"spectral-lobster"};Q.expando="ng339";var tb=Q.cache={},ef=1;Q._data=function(b){return this.cache[b[this.expando]]||{}};var $e=/([\:\-\_]+(.))/g,af=/^moz([A-Z])/,Jf={mouseleave:"mouseout",mouseenter:"mouseover"},Ob=w("jqLite"),df=/^<(\w+)\s*\/?>(?:<\/\1>|)$/, | |||
Nb=/<|&#?\w+;/,bf=/<([\w:]+)/,cf=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ha={option:[1,'<select multiple="multiple">',"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ha.optgroup=ha.option;ha.tbody=ha.tfoot=ha.colgroup=ha.caption=ha.thead;ha.th=ha.td;var Ka=Q.prototype={ready:function(b){function a(){c||(c= | |||
!0,b())}var c=!1;"complete"===U.readyState?setTimeout(a):(this.on("DOMContentLoaded",a),Q(N).on("load",a))},toString:function(){var b=[];s(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return 0<=b?v(this[b]):v(this[this.length+b])},length:0,push:If,sort:[].sort,splice:[].splice},vb={};s("multiple selected checked disabled readOnly required open".split(" "),function(b){vb[S(b)]=b});var Kc={};s("input select option textarea button form details".split(" "),function(b){Kc[b]= | |||
!0});var Lc={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};s({data:Qb,removeData:rb},function(b,a){Q[a]=b});s({data:Qb,inheritedData:ub,scope:function(b){return v.data(b,"$scope")||ub(b.parentNode||b,["$isolateScope","$scope"])},isolateScope:function(b){return v.data(b,"$isolateScope")||v.data(b,"$isolateScopeNoTemplate")},controller:Gc,injector:function(b){return ub(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Rb,css:function(b, | |||
a,c){a=$a(a);if(z(c))b.style[a]=c;else return b.style[a]},attr:function(b,a,c){var d=S(a);if(vb[d])if(z(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||y).specified?d:t;else if(z(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),null===b?t:b},prop:function(b,a,c){if(z(c))b[a]=c;else return b[a]},text:function(){function b(a,b){if(x(b)){var d=a.nodeType;return d===ka||d===jb?a.textContent:""}a.textContent=b} | |||
b.$dv="";return b}(),val:function(b,a){if(x(a)){if(b.multiple&&"select"===pa(b)){var c=[];s(b.options,function(a){a.selected&&c.push(a.value||a.text)});return 0===c.length?null:c}return b.value}b.value=a},html:function(b,a){if(x(a))return b.innerHTML;qb(b,!0);b.innerHTML=a},empty:Hc},function(b,a){Q.prototype[a]=function(a,d){var e,f,g=this.length;if(b!==Hc&&(2==b.length&&b!==Rb&&b!==Gc?a:d)===t){if(P(a)){for(e=0;e<g;e++)if(b===Qb)b(this[e],a);else for(f in a)b(this[e],f,a[f]);return this}e=b.$dv; | |||
g=e===t?Math.min(g,1):g;for(f=0;f<g;f++){var k=b(this[f],a,d);e=e?e+k:k}return e}for(e=0;e<g;e++)b(this[e],a,d);return this}});s({removeData:rb,on:function a(c,d,e,f){if(z(f))throw Ob("onargs");if(Cc(c)){var g=sb(c,!0);f=g.events;var k=g.handle;k||(k=g.handle=hf(c,f));for(var g=0<=d.indexOf(" ")?d.split(" "):[d],h=g.length;h--;){d=g[h];var l=f[d];l||(f[d]=[],"mouseenter"===d||"mouseleave"===d?a(c,Jf[d],function(a){var c=a.relatedTarget;c&&(c===this||this.contains(c))||k(a,d)}):"$destroy"!==d&&c.addEventListener(d, | |||
k,!1),l=f[d]);l.push(e)}}},off:Fc,one:function(a,c,d){a=v(a);a.on(c,function f(){a.off(c,d);a.off(c,f)});a.on(c,d)},replaceWith:function(a,c){var d,e=a.parentNode;qb(a);s(new Q(c),function(c){d?e.insertBefore(c,d.nextSibling):e.replaceChild(c,a);d=c})},children:function(a){var c=[];s(a.childNodes,function(a){a.nodeType===ka&&c.push(a)});return c},contents:function(a){return a.contentDocument||a.childNodes||[]},append:function(a,c){var d=a.nodeType;if(d===ka||11===d){c=new Q(c);for(var d=0,e=c.length;d< | |||
e;d++)a.appendChild(c[d])}},prepend:function(a,c){if(a.nodeType===ka){var d=a.firstChild;s(new Q(c),function(c){a.insertBefore(c,d)})}},wrap:function(a,c){c=v(c).eq(0).clone()[0];var d=a.parentNode;d&&d.replaceChild(c,a);c.appendChild(a)},remove:Ic,detach:function(a){Ic(a,!0)},after:function(a,c){var d=a,e=a.parentNode;c=new Q(c);for(var f=0,g=c.length;f<g;f++){var k=c[f];e.insertBefore(k,d.nextSibling);d=k}},addClass:Tb,removeClass:Sb,toggleClass:function(a,c,d){c&&s(c.split(" "),function(c){var f= | |||
d;x(f)&&(f=!Rb(a,c));(f?Tb:Sb)(a,c)})},parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},next:function(a){return a.nextElementSibling},find:function(a,c){return a.getElementsByTagName?a.getElementsByTagName(c):[]},clone:Pb,triggerHandler:function(a,c,d){var e,f,g=c.type||c,k=sb(a);if(k=(k=k&&k.events)&&k[g])e={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped= | |||
!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:y,type:g,target:a},c.type&&(e=F(e,c)),c=qa(k),f=d?[e].concat(d):[e],s(c,function(c){e.isImmediatePropagationStopped()||c.apply(a,f)})}},function(a,c){Q.prototype[c]=function(c,e,f){for(var g,k=0,h=this.length;k<h;k++)x(g)?(g=a(this[k],c,e,f),z(g)&&(g=v(g))):Ec(g,a(this[k],c,e,f));return z(g)?g:this};Q.prototype.bind=Q.prototype.on;Q.prototype.unbind=Q.prototype.off});ab.prototype={put:function(a, | |||
c){this[Ma(a,this.nextUid)]=c},get:function(a){return this[Ma(a,this.nextUid)]},remove:function(a){var c=this[a=Ma(a,this.nextUid)];delete this[a];return c}};var Nc=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,kf=/,/,lf=/^\s*(_?)(\S+?)\1\s*$/,Mc=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Ea=w("$injector");Jb.$$annotate=Ub;var Kf=w("$animate"),Ae=["$provide",function(a){this.$$selectors={};this.register=function(c,d){var e=c+"-animation";if(c&&"."!=c.charAt(0))throw Kf("notcsel",c);this.$$selectors[c.substr(1)]=e; | |||
a.factory(e,d)};this.classNameFilter=function(a){1===arguments.length&&(this.$$classNameFilter=a instanceof RegExp?a:null);return this.$$classNameFilter};this.$get=["$$q","$$asyncCallback","$rootScope",function(a,d,e){function f(d){var f,g=a.defer();g.promise.$$cancelFn=function(){f&&f()};e.$$postDigest(function(){f=d(function(){g.resolve()})});return g.promise}function g(a,c){var d=[],e=[],f=wa();s((a.attr("class")||"").split(/\s+/),function(a){f[a]=!0});s(c,function(a,c){var g=f[c];!1===a&&g?e.push(c): | |||
!0!==a||g||d.push(c)});return 0<d.length+e.length&&[d.length?d:null,e.length?e:null]}function k(a,c,d){for(var e=0,f=c.length;e<f;++e)a[c[e]]=d}function h(){m||(m=a.defer(),d(function(){m.resolve();m=null}));return m.promise}function l(a,c){if(ta.isObject(c)){var d=F(c.from||{},c.to||{});a.css(d)}}var m;return{animate:function(a,c,d){l(a,{from:c,to:d});return h()},enter:function(a,c,d,e){l(a,e);d?d.after(a):c.prepend(a);return h()},leave:function(a,c){a.remove();return h()},move:function(a,c,d,e){return this.enter(a, | |||
c,d,e)},addClass:function(a,c,d){return this.setClass(a,c,[],d)},$$addClassImmediately:function(a,c,d){a=v(a);c=J(c)?c:H(c)?c.join(" "):"";s(a,function(a){Tb(a,c)});l(a,d);return h()},removeClass:function(a,c,d){return this.setClass(a,[],c,d)},$$removeClassImmediately:function(a,c,d){a=v(a);c=J(c)?c:H(c)?c.join(" "):"";s(a,function(a){Sb(a,c)});l(a,d);return h()},setClass:function(a,c,d,e){var h=this,l=!1;a=v(a);var m=a.data("$$animateClasses");m?e&&m.options&&(m.options=ta.extend(m.options||{},e)): | |||
(m={classes:{},options:e},l=!0);e=m.classes;c=H(c)?c:c.split(" ");d=H(d)?d:d.split(" ");k(e,c,!0);k(e,d,!1);l&&(m.promise=f(function(c){var d=a.data("$$animateClasses");a.removeData("$$animateClasses");if(d){var e=g(a,d.classes);e&&h.$$setClassImmediately(a,e[0],e[1],d.options)}c()}),a.data("$$animateClasses",m));return m.promise},$$setClassImmediately:function(a,c,d,e){c&&this.$$addClassImmediately(a,c);d&&this.$$removeClassImmediately(a,d);l(a,e);return h()},enabled:y,cancel:y}}]}],ia=w("$compile"); | |||
uc.$inject=["$provide","$$sanitizeUriProvider"];var of=/^((?:x|data)[\:\-_])/i,Sc="application/json",Xb={"Content-Type":Sc+";charset=utf-8"},rf=/^\s*(\[|\{[^\{])/,sf=/[\}\]]\s*$/,qf=/^\)\]\}',?\n/,Yb=w("$interpolate"),Lf=/^([^\?#]*)(\?([^#]*))?(#(.*))?$/,vf={http:80,https:443,ftp:21},bb=w("$location"),Mf={$$html5:!1,$$replace:!1,absUrl:zb("$$absUrl"),url:function(a){if(x(a))return this.$$url;a=Lf.exec(a);a[1]&&this.path(decodeURIComponent(a[1]));(a[2]||a[1])&&this.search(a[3]||"");this.hash(a[5]|| | |||
"");return this},protocol:zb("$$protocol"),host:zb("$$host"),port:zb("$$port"),path:$c("$$path",function(a){a=null!==a?a.toString():"";return"/"==a.charAt(0)?a:"/"+a}),search:function(a,c){switch(arguments.length){case 0:return this.$$search;case 1:if(J(a)||X(a))a=a.toString(),this.$$search=qc(a);else if(P(a))a=Ca(a,{}),s(a,function(c,e){null==c&&delete a[e]}),this.$$search=a;else throw bb("isrcharg");break;default:x(c)||null===c?delete this.$$search[a]:this.$$search[a]=c}this.$$compose();return this}, | |||
hash:$c("$$hash",function(a){return null!==a?a.toString():""}),replace:function(){this.$$replace=!0;return this}};s([Zc,bc,ac],function(a){a.prototype=Object.create(Mf);a.prototype.state=function(c){if(!arguments.length)return this.$$state;if(a!==ac||!this.$$html5)throw bb("nostate");this.$$state=x(c)?null:c;return this}});var oa=w("$parse"),Nf=Function.prototype.call,Of=Function.prototype.apply,Pf=Function.prototype.bind,Gb=wa();s({"null":function(){return null},"true":function(){return!0},"false":function(){return!1}, | |||
undefined:function(){}},function(a,c){a.constant=a.literal=a.sharedGetter=!0;Gb[c]=a});Gb["this"]=function(a){return a};Gb["this"].sharedGetter=!0;var hc=F(wa(),{"+":function(a,c,d,e){d=d(a,c);e=e(a,c);return z(d)?z(e)?d+e:d:z(e)?e:t},"-":function(a,c,d,e){d=d(a,c);e=e(a,c);return(z(d)?d:0)-(z(e)?e:0)},"*":function(a,c,d,e){return d(a,c)*e(a,c)},"/":function(a,c,d,e){return d(a,c)/e(a,c)},"%":function(a,c,d,e){return d(a,c)%e(a,c)},"===":function(a,c,d,e){return d(a,c)===e(a,c)},"!==":function(a, | |||
c,d,e){return d(a,c)!==e(a,c)},"==":function(a,c,d,e){return d(a,c)==e(a,c)},"!=":function(a,c,d,e){return d(a,c)!=e(a,c)},"<":function(a,c,d,e){return d(a,c)<e(a,c)},">":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"!":function(a,c,d){return!d(a,c)},"=":!0,"|":!0}),Qf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'}, | |||
ec=function(a){this.options=a};ec.prototype={constructor:ec,lex:function(a){this.text=a;this.index=0;this.ch=t;for(this.tokens=[];this.index<this.text.length;)if(this.ch=this.text.charAt(this.index),this.is("\"'"))this.readString(this.ch);else if(this.isNumber(this.ch)||this.is(".")&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdent(this.ch))this.readIdent();else if(this.is("(){}[].,;:?"))this.tokens.push({index:this.index,text:this.ch}),this.index++;else if(this.isWhitespace(this.ch))this.index++; | |||
else{a=this.ch+this.peek();var c=a+this.peek(2),d=hc[this.ch],e=hc[a],f=hc[c];f?(this.tokens.push({index:this.index,text:c,fn:f}),this.index+=3):e?(this.tokens.push({index:this.index,text:a,fn:e}),this.index+=2):d?(this.tokens.push({index:this.index,text:this.ch,fn:d}),this.index+=1):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(a){return-1!==a.indexOf(this.ch)},peek:function(a){a=a||1;return this.index+a<this.text.length?this.text.charAt(this.index+ | |||
a):!1},isNumber:function(a){return"0"<=a&&"9">=a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdent:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,c,d){d=d||this.index;c=z(c)?"s "+c+"-"+this.index+" ["+this.text.substring(c,d)+"]":" "+d;throw oa("lexerr",a,c,this.text);},readNumber:function(){for(var a="",c=this.index;this.index<this.text.length;){var d= | |||
S(this.text.charAt(this.index));if("."==d||this.isNumber(d))a+=d;else{var e=this.peek();if("e"==d&&this.isExpOperator(e))a+=d;else if(this.isExpOperator(d)&&e&&this.isNumber(e)&&"e"==a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||e&&this.isNumber(e)||"e"!=a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}a*=1;this.tokens.push({index:c,text:a,constant:!0,fn:function(){return a}})},readIdent:function(){for(var a=this.text,c="",d=this.index,e,f,g,k;this.index< | |||
this.text.length;){k=this.text.charAt(this.index);if("."===k||this.isIdent(k)||this.isNumber(k))"."===k&&(e=this.index),c+=k;else break;this.index++}e&&"."===c[c.length-1]&&(this.index--,c=c.slice(0,-1),e=c.lastIndexOf("."),-1===e&&(e=t));if(e)for(f=this.index;f<this.text.length;){k=this.text.charAt(f);if("("===k){g=c.substr(e-d+1);c=c.substr(0,e-d);this.index=f;break}if(this.isWhitespace(k))f++;else break}this.tokens.push({index:d,text:c,fn:Gb[c]||bd(c,this.options,a)});g&&(this.tokens.push({index:e, | |||
text:"."}),this.tokens.push({index:e+1,text:g}))},readString:function(a){var c=this.index;this.index++;for(var d="",e=a,f=!1;this.index<this.text.length;){var g=this.text.charAt(this.index),e=e+g;if(f)"u"===g?(f=this.text.substring(this.index+1,this.index+5),f.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+f+"]"),this.index+=4,d+=String.fromCharCode(parseInt(f,16))):d+=Qf[g]||g,f=!1;else if("\\"===g)f=!0;else{if(g===a){this.index++;this.tokens.push({index:c,text:e,string:d,constant:!0, | |||
fn:function(){return d}});return}d+=g}this.index++}this.throwError("Unterminated quote",c)}};var cb=function(a,c,d){this.lexer=a;this.$filter=c;this.options=d};cb.ZERO=F(function(){return 0},{sharedGetter:!0,constant:!0});cb.prototype={constructor:cb,parse:function(a){this.text=a;this.tokens=this.lexer.lex(a);a=this.statements();0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]);a.literal=!!a.literal;a.constant=!!a.constant;return a},primary:function(){var a;if(this.expect("("))a= | |||
this.filterChain(),this.consume(")");else if(this.expect("["))a=this.arrayDeclaration();else if(this.expect("{"))a=this.object();else{var c=this.expect();(a=c.fn)||this.throwError("not a primary expression",c);c.constant&&(a.constant=!0,a.literal=!0)}for(var d;c=this.expect("(","[",".");)"("===c.text?(a=this.functionCall(a,d),d=null):"["===c.text?(d=a,a=this.objectIndex(a)):"."===c.text?(d=a,a=this.fieldAccess(a)):this.throwError("IMPOSSIBLE");return a},throwError:function(a,c){throw oa("syntax", | |||
c.text,a,c.index+1,this.text,this.text.substring(c.index));},peekToken:function(){if(0===this.tokens.length)throw oa("ueoe",this.text);return this.tokens[0]},peek:function(a,c,d,e){if(0<this.tokens.length){var f=this.tokens[0],g=f.text;if(g===a||g===c||g===d||g===e||!(a||c||d||e))return f}return!1},expect:function(a,c,d,e){return(a=this.peek(a,c,d,e))?(this.tokens.shift(),a):!1},consume:function(a){this.expect(a)||this.throwError("is unexpected, expecting ["+a+"]",this.peek())},unaryFn:function(a, | |||
c){return F(function(d,e){return a(d,e,c)},{constant:c.constant,inputs:[c]})},binaryFn:function(a,c,d,e){return F(function(e,g){return c(e,g,a,d)},{constant:a.constant&&d.constant,inputs:!e&&[a,d]})},statements:function(){for(var a=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&a.push(this.filterChain()),!this.expect(";"))return 1===a.length?a[0]:function(c,d){for(var e,f=0,g=a.length;f<g;f++)e=a[f](c,d);return e}},filterChain:function(){for(var a=this.expression();this.expect("|");)a= | |||
this.filter(a);return a},filter:function(a){var c=this.expect(),d=this.$filter(c.text),e,f;if(this.peek(":"))for(e=[],f=[];this.expect(":");)e.push(this.expression());c=[a].concat(e||[]);return F(function(c,k){var h=a(c,k);if(f){f[0]=h;for(h=e.length;h--;)f[h+1]=e[h](c,k);return d.apply(t,f)}return d(h)},{constant:!d.$stateful&&c.every(cc),inputs:!d.$stateful&&c})},expression:function(){return this.assignment()},assignment:function(){var a=this.ternary(),c,d;return(d=this.expect("="))?(a.assign|| | |||
this.throwError("implies assignment but ["+this.text.substring(0,d.index)+"] can not be assigned to",d),c=this.ternary(),F(function(d,f){return a.assign(d,c(d,f),f)},{inputs:[a,c]})):a},ternary:function(){var a=this.logicalOR(),c,d;if(d=this.expect("?")){c=this.assignment();if(d=this.expect(":")){var e=this.assignment();return F(function(d,g){return a(d,g)?c(d,g):e(d,g)},{constant:a.constant&&c.constant&&e.constant})}this.throwError("expected :",d)}return a},logicalOR:function(){for(var a=this.logicalAND(), | |||
c;c=this.expect("||");)a=this.binaryFn(a,c.fn,this.logicalAND(),!0);return a},logicalAND:function(){var a=this.equality(),c;if(c=this.expect("&&"))a=this.binaryFn(a,c.fn,this.logicalAND(),!0);return a},equality:function(){var a=this.relational(),c;if(c=this.expect("==","!=","===","!=="))a=this.binaryFn(a,c.fn,this.equality());return a},relational:function(){var a=this.additive(),c;if(c=this.expect("<",">","<=",">="))a=this.binaryFn(a,c.fn,this.relational());return a},additive:function(){for(var a= | |||
this.multiplicative(),c;c=this.expect("+","-");)a=this.binaryFn(a,c.fn,this.multiplicative());return a},multiplicative:function(){for(var a=this.unary(),c;c=this.expect("*","/","%");)a=this.binaryFn(a,c.fn,this.unary());return a},unary:function(){var a;return this.expect("+")?this.primary():(a=this.expect("-"))?this.binaryFn(cb.ZERO,a.fn,this.unary()):(a=this.expect("!"))?this.unaryFn(a.fn,this.unary()):this.primary()},fieldAccess:function(a){var c=this.text,d=this.expect().text,e=bd(d,this.options, | |||
c);return F(function(c,d,k){return e(k||a(c,d))},{assign:function(e,g,k){(k=a(e,k))||a.assign(e,k={});return Oa(k,d,g,c)}})},objectIndex:function(a){var c=this.text,d=this.expression();this.consume("]");return F(function(e,f){var g=a(e,f),k=d(e,f);na(k,c);return g?Aa(g[k],c):t},{assign:function(e,f,g){var k=na(d(e,g),c);(g=Aa(a(e,g),c))||a.assign(e,g={});return g[k]=f}})},functionCall:function(a,c){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression());while(this.expect(","))}this.consume(")"); | |||
var e=this.text,f=d.length?[]:null;return function(g,k){var h=c?c(g,k):g,l=a(g,k,h)||y;if(f)for(var m=d.length;m--;)f[m]=Aa(d[m](g,k),e);Aa(h,e);if(l){if(l.constructor===l)throw oa("isecfn",e);if(l===Nf||l===Of||l===Pf)throw oa("isecff",e);}h=l.apply?l.apply(h,f):l(f[0],f[1],f[2],f[3],f[4]);return Aa(h,e)}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;var c=this.expression();a.push(c)}while(this.expect(","))}this.consume("]");return F(function(c, | |||
e){for(var f=[],g=0,k=a.length;g<k;g++)f.push(a[g](c,e));return f},{literal:!0,constant:a.every(cc),inputs:a})},object:function(){var a=[],c=[];if("}"!==this.peekToken().text){do{if(this.peek("}"))break;var d=this.expect();a.push(d.string||d.text);this.consume(":");d=this.expression();c.push(d)}while(this.expect(","))}this.consume("}");return F(function(d,f){for(var g={},k=0,h=c.length;k<h;k++)g[a[k]]=c[k](d,f);return g},{literal:!0,constant:c.every(cc),inputs:c})}};var cd=wa(),wf=Object.prototype.valueOf, | |||
Ba=w("$sce"),ja={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},ia=w("$compile"),Z=U.createElement("a"),gd=za(N.location.href,!0);Bc.$inject=["$provide"];hd.$inject=["$locale"];jd.$inject=["$locale"];var md=".",Ff={yyyy:$("FullYear",4),yy:$("FullYear",2,0,!0),y:$("FullYear",1),MMMM:Bb("Month"),MMM:Bb("Month",!0),MM:$("Month",2,1),M:$("Month",1,1),dd:$("Date",2),d:$("Date",1),HH:$("Hours",2),H:$("Hours",1),hh:$("Hours",2,-12),h:$("Hours",1,-12),mm:$("Minutes",2),m:$("Minutes", | |||
1),ss:$("Seconds",2),s:$("Seconds",1),sss:$("Milliseconds",3),EEEE:Bb("Day"),EEE:Bb("Day",!0),a:function(a,c){return 12>a.getHours()?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=-1*a.getTimezoneOffset();return a=(0<=a?"+":"")+(Ab(Math[0<a?"floor":"ceil"](a/60),2)+Ab(Math.abs(a%60),2))},ww:od(2),w:od(1)},Ef=/((?:[^yMdHhmsaZEw']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|w+))(.*)/,Df=/^\-?\d+$/;id.$inject=["$locale"];var Bf=da(S),Cf=da(ob);kd.$inject=["$parse"];var Rd=da({restrict:"E",compile:function(a, | |||
c){if(!c.href&&!c.xlinkHref&&!c.name)return function(a,c){var f="[object SVGAnimatedString]"===Ja.call(c.prop("href"))?"xlink:href":"href";c.on("click",function(a){c.attr(f)||a.preventDefault()})}}}),pb={};s(vb,function(a,c){if("multiple"!=a){var d=ua("ng-"+c);pb[d]=function(){return{restrict:"A",priority:100,link:function(a,f,g){a.$watch(g[d],function(a){g.$set(c,!!a)})}}}}});s(Lc,function(a,c){pb[c]=function(){return{priority:100,link:function(a,e,f){if("ngPattern"===c&&"/"==f.ngPattern.charAt(0)&& | |||
(e=f.ngPattern.match(Hf))){f.$set("ngPattern",new RegExp(e[1],e[2]));return}a.$watch(f[c],function(a){f.$set(c,a)})}}}});s(["src","srcset","href"],function(a){var c=ua("ng-"+a);pb[c]=function(){return{priority:99,link:function(d,e,f){var g=a,k=a;"href"===a&&"[object SVGAnimatedString]"===Ja.call(e.prop("href"))&&(k="xlinkHref",f.$attr[k]="xlink:href",g=null);f.$observe(c,function(c){c?(f.$set(k,c),Ha&&g&&e.prop(g,f[k])):"href"===a&&f.$set(k,null)})}}}});var Cb={$addControl:y,$$renameControl:function(a, | |||
c){a.$name=c},$removeControl:y,$setValidity:y,$setDirty:y,$setPristine:y,$setSubmitted:y};pd.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var wd=function(a){return["$timeout",function(c){return{name:"form",restrict:a?"EAC":"E",controller:pd,compile:function(a){a.addClass(Pa).addClass(fb);return{pre:function(a,d,g,k){if(!("action"in g)){var h=function(c){a.$apply(function(){k.$commitViewValue();k.$setSubmitted()});c.preventDefault?c.preventDefault():c.returnValue=!1};d[0].addEventListener("submit", | |||
h,!1);d.on("$destroy",function(){c(function(){d[0].removeEventListener("submit",h,!1)},0,!1)})}var l=k.$$parentForm,m=k.$name;m&&(Oa(a,m,k,m),g.$observe(g.name?"name":"ngForm",function(c){m!==c&&(Oa(a,m,t,m),m=c,Oa(a,m,k,m),l.$$renameControl(k,m))}));d.on("$destroy",function(){l.$removeControl(k);m&&Oa(a,m,t,m);F(k,Cb)})}}}}}]},Sd=wd(),ee=wd(!0),Gf=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,Rf=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/, | |||
Sf=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,Tf=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,xd=/^(\d{4})-(\d{2})-(\d{2})$/,yd=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,ic=/^(\d{4})-W(\d\d)$/,zd=/^(\d{4})-(\d\d)$/,Ad=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Uf=/(\s+|^)default(\s+|$)/,Fb=new w("ngModel"),Bd={text:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e)},date:eb("date",xd,Eb(xd,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":eb("datetimelocal", | |||
yd,Eb(yd,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:eb("time",Ad,Eb(Ad,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:eb("week",ic,function(a,c){if(ea(a))return a;if(J(a)){ic.lastIndex=0;var d=ic.exec(a);if(d){var e=+d[1],f=+d[2],g=d=0,k=0,h=0,l=nd(e),f=7*(f-1);c&&(d=c.getHours(),g=c.getMinutes(),k=c.getSeconds(),h=c.getMilliseconds());return new Date(e,0,l.getDate()+f,d,g,k,h)}}return NaN},"yyyy-Www"),month:eb("month",zd,Eb(zd,["yyyy","MM"]),"yyyy-MM"),number:function(a, | |||
c,d,e,f,g){rd(a,c,d,e);db(a,c,d,e,f,g);e.$$parserName="number";e.$parsers.push(function(a){return e.$isEmpty(a)?null:Tf.test(a)?parseFloat(a):t});e.$formatters.push(function(a){if(!e.$isEmpty(a)){if(!X(a))throw Fb("numfmt",a);a=a.toString()}return a});if(d.min||d.ngMin){var k;e.$validators.min=function(a){return e.$isEmpty(a)||x(k)||a>=k};d.$observe("min",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));k=X(a)&&!isNaN(a)?a:t;e.$validate()})}if(d.max||d.ngMax){var h;e.$validators.max=function(a){return e.$isEmpty(a)|| | |||
x(h)||a<=h};d.$observe("max",function(a){z(a)&&!X(a)&&(a=parseFloat(a,10));h=X(a)&&!isNaN(a)?a:t;e.$validate()})}},url:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="url";e.$validators.url=function(a){return e.$isEmpty(a)||Rf.test(a)}},email:function(a,c,d,e,f,g){db(a,c,d,e,f,g);fc(e);e.$$parserName="email";e.$validators.email=function(a){return e.$isEmpty(a)||Sf.test(a)}},radio:function(a,c,d,e){x(d.name)&&c.attr("name",++gb);c.on("click",function(a){c[0].checked&&e.$setViewValue(d.value, | |||
a&&a.type)});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e,f,g,k,h){var l=sd(h,a,"ngTrueValue",d.ngTrueValue,!0),m=sd(h,a,"ngFalseValue",d.ngFalseValue,!1);c.on("click",function(a){e.$setViewValue(c[0].checked,a&&a.type)});e.$render=function(){c[0].checked=e.$viewValue};e.$isEmpty=function(a){return a!==l};e.$formatters.push(function(a){return la(a,l)});e.$parsers.push(function(a){return a?l:m})},hidden:y,button:y,submit:y,reset:y, | |||
file:y},vc=["$browser","$sniffer","$filter","$parse",function(a,c,d,e){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,g,k,h){h[0]&&(Bd[S(k.type)]||Bd.text)(f,g,k,h[0],c,a,d,e)}}}}],fb="ng-valid",td="ng-invalid",Pa="ng-pristine",Db="ng-dirty",vd="ng-pending",Vf=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,c,d,e,f,g,k,h,l,m){this.$modelValue=this.$viewValue=Number.NaN;this.$validators={};this.$asyncValidators= | |||
{};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=t;this.$name=m(d.name||"",!1)(a);var p=f(d.ngModel),q=null,n=this,r=function(){var c=p(a);n.$options&&n.$options.getterSetter&&A(c)&&(c=c());return c},O=function(c){var d;n.$options&&n.$options.getterSetter&&A(d=p(a))?d(n.$modelValue):p.assign(a,n.$modelValue)};this.$$setOptions=function(a){n.$options= | |||
a;if(!(p.assign||a&&a.getterSetter))throw Fb("nonassign",d.ngModel,sa(e));};this.$render=y;this.$isEmpty=function(a){return x(a)||""===a||null===a||a!==a};var B=e.inheritedData("$formController")||Cb,C=0;qd({ctrl:this,$element:e,set:function(a,c){a[c]=!0},unset:function(a,c){delete a[c]},parentForm:B,$animate:g});this.$setPristine=function(){n.$dirty=!1;n.$pristine=!0;g.removeClass(e,Db);g.addClass(e,Pa)};this.$setUntouched=function(){n.$touched=!1;n.$untouched=!0;g.setClass(e,"ng-untouched","ng-touched")}; | |||
this.$setTouched=function(){n.$touched=!0;n.$untouched=!1;g.setClass(e,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){k.cancel(q);n.$viewValue=n.$$lastCommittedViewValue;n.$render()};this.$validate=function(){X(n.$modelValue)&&isNaN(n.$modelValue)||this.$$parseAndValidate()};this.$$runValidators=function(a,c,d,e){function f(){var a=!0;s(n.$validators,function(e,f){var g=e(c,d);a=a&&g;h(f,g)});return a?!0:(s(n.$asyncValidators,function(a,c){h(c,null)}),!1)}function g(){var a=[],e= | |||
!0;s(n.$asyncValidators,function(f,g){var k=f(c,d);if(!k||!A(k.then))throw Fb("$asyncValidators",k);h(g,t);a.push(k.then(function(){h(g,!0)},function(a){e=!1;h(g,!1)}))});a.length?l.all(a).then(function(){k(e)},y):k(!0)}function h(a,c){m===C&&n.$setValidity(a,c)}function k(a){m===C&&e(a)}C++;var m=C;(function(a){var c=n.$$parserName||"parse";if(a===t)h(c,null);else if(h(c,a),!a)return s(n.$validators,function(a,c){h(c,null)}),s(n.$asyncValidators,function(a,c){h(c,null)}),!1;return!0})(a)?f()?g(): | |||
k(!1):k(!1)};this.$commitViewValue=function(){var a=n.$viewValue;k.cancel(q);if(n.$$lastCommittedViewValue!==a||""===a&&n.$$hasNativeValidators)n.$$lastCommittedViewValue=a,n.$pristine&&(n.$dirty=!0,n.$pristine=!1,g.removeClass(e,Pa),g.addClass(e,Db),B.$setDirty()),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var a=n.$$lastCommittedViewValue,c=a,d=x(c)?t:!0;if(d)for(var e=0;e<n.$parsers.length;e++)if(c=n.$parsers[e](c),x(c)){d=!1;break}X(n.$modelValue)&&isNaN(n.$modelValue)&&(n.$modelValue= | |||
r());var f=n.$modelValue,g=n.$options&&n.$options.allowInvalid;g&&(n.$modelValue=c,n.$modelValue!==f&&n.$$writeModelToScope());n.$$runValidators(d,c,a,function(a){g||(n.$modelValue=a?c:t,n.$modelValue!==f&&n.$$writeModelToScope())})};this.$$writeModelToScope=function(){O(n.$modelValue);s(n.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}})};this.$setViewValue=function(a,c){n.$viewValue=a;n.$options&&!n.$options.updateOnDefault||n.$$debounceViewValueCommit(c)};this.$$debounceViewValueCommit= | |||
function(c){var d=0,e=n.$options;e&&z(e.debounce)&&(e=e.debounce,X(e)?d=e:X(e[c])?d=e[c]:X(e["default"])&&(d=e["default"]));k.cancel(q);d?q=k(function(){n.$commitViewValue()},d):h.$$phase?n.$commitViewValue():a.$apply(function(){n.$commitViewValue()})};a.$watch(function(){var a=r();if(a!==n.$modelValue){n.$modelValue=a;for(var c=n.$formatters,d=c.length,e=a;d--;)e=c[d](e);n.$viewValue!==e&&(n.$viewValue=n.$$lastCommittedViewValue=e,n.$render(),n.$$runValidators(t,a,e,y))}return a})}],te=function(){return{restrict:"A", | |||
require:["ngModel","^?form","^?ngModelOptions"],controller:Vf,priority:1,compile:function(a){a.addClass(Pa).addClass("ng-untouched").addClass(fb);return{pre:function(a,d,e,f){var g=f[0],k=f[1]||Cb;g.$$setOptions(f[2]&&f[2].$options);k.$addControl(g);e.$observe("name",function(a){g.$name!==a&&k.$$renameControl(g,a)});a.$on("$destroy",function(){k.$removeControl(g)})},post:function(a,d,e,f){var g=f[0];if(g.$options&&g.$options.updateOn)d.on(g.$options.updateOn,function(a){g.$$debounceViewValueCommit(a&& | |||
a.type)});d.on("blur",function(d){g.$touched||a.$apply(function(){g.$setTouched()})})}}}}},ve=da({restrict:"A",require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),xc=function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){e&&(d.required=!0,e.$validators.required=function(a){return!d.required||!e.$isEmpty(a)},d.$observe("required",function(){e.$validate()}))}}},wc=function(){return{restrict:"A",require:"?ngModel",link:function(a, | |||
c,d,e){if(e){var f,g=d.ngPattern||d.pattern;d.$observe("pattern",function(a){J(a)&&0<a.length&&(a=new RegExp(a));if(a&&!a.test)throw w("ngPattern")("noregexp",g,a,sa(c));f=a||t;e.$validate()});e.$validators.pattern=function(a){return e.$isEmpty(a)||x(f)||f.test(a)}}}}},zc=function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){if(e){var f=0;d.$observe("maxlength",function(a){f=aa(a)||0;e.$validate()});e.$validators.maxlength=function(a,c){return e.$isEmpty(a)||c.length<=f}}}}},yc= | |||
function(){return{restrict:"A",require:"?ngModel",link:function(a,c,d,e){if(e){var f=0;d.$observe("minlength",function(a){f=aa(a)||0;e.$validate()});e.$validators.minlength=function(a,c){return e.$isEmpty(a)||c.length>=f}}}}},ue=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,c,d,e){var f=c.attr(d.$attr.ngList)||", ",g="false"!==d.ngTrim,k=g?T(f):f;e.$parsers.push(function(a){if(!x(a)){var c=[];a&&s(a.split(k),function(a){a&&c.push(g?T(a):a)});return c}});e.$formatters.push(function(a){return H(a)? | |||
a.join(f):t});e.$isEmpty=function(a){return!a||!a.length}}}},Wf=/^(true|false|\d+)$/,we=function(){return{restrict:"A",priority:100,compile:function(a,c){return Wf.test(c.ngValue)?function(a,c,f){f.$set("value",a.$eval(f.ngValue))}:function(a,c,f){a.$watch(f.ngValue,function(a){f.$set("value",a)})}}}},xe=function(){return{restrict:"A",controller:["$scope","$attrs",function(a,c){var d=this;this.$options=a.$eval(c.ngModelOptions);this.$options.updateOn!==t?(this.$options.updateOnDefault=!1,this.$options.updateOn= | |||
T(this.$options.updateOn.replace(Uf,function(){d.$options.updateOnDefault=!0;return" "}))):this.$options.updateOnDefault=!0}]}},Xd=["$compile",function(a){return{restrict:"AC",compile:function(c){a.$$addBindingClass(c);return function(c,e,f){a.$$addBindingInfo(e,f.ngBind);e=e[0];c.$watch(f.ngBind,function(a){e.textContent=a===t?"":a})}}}}],Zd=["$interpolate","$compile",function(a,c){return{compile:function(d){c.$$addBindingClass(d);return function(d,f,g){d=a(f.attr(g.$attr.ngBindTemplate));c.$$addBindingInfo(f, | |||
d.expressions);f=f[0];g.$observe("ngBindTemplate",function(a){f.textContent=a===t?"":a})}}}}],Yd=["$sce","$parse","$compile",function(a,c,d){return{restrict:"A",compile:function(e,f){var g=c(f.ngBindHtml),k=c(f.ngBindHtml,function(a){return(a||"").toString()});d.$$addBindingClass(e);return function(c,e,f){d.$$addBindingInfo(e,f.ngBindHtml);c.$watch(k,function(){e.html(a.getTrustedHtml(g(c))||"")})}}}}],$d=gc("",!0),be=gc("Odd",0),ae=gc("Even",1),ce=Ia({compile:function(a,c){c.$set("ngCloak",t);a.removeClass("ng-cloak")}}), | |||
de=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ac={},Xf={blur:!0,focus:!0};s("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(a){var c=ua("ng-"+a);Ac[c]=["$parse","$rootScope",function(d,e){return{restrict:"A",compile:function(f,g){var k=d(g[c]);return function(c,d){d.on(a,function(d){var f=function(){k(c,{$event:d})};Xf[a]&&e.$$phase?c.$evalAsync(f):c.$apply(f)})}}}}]}); | |||
var ge=["$animate",function(a){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(c,d,e,f,g){var k,h,l;c.$watch(e.ngIf,function(c){c?h||g(function(c,f){h=f;c[c.length++]=U.createComment(" end ngIf: "+e.ngIf+" ");k={clone:c};a.enter(c,d.parent(),d)}):(l&&(l.remove(),l=null),h&&(h.$destroy(),h=null),k&&(l=nb(k.clone),a.leave(l).then(function(){l=null}),k=null))})}}}],he=["$templateRequest","$anchorScroll","$animate","$sce",function(a,c,d,e){return{restrict:"ECA", | |||
priority:400,terminal:!0,transclude:"element",controller:ta.noop,compile:function(f,g){var k=g.ngInclude||g.src,h=g.onload||"",l=g.autoscroll;return function(f,g,q,n,r){var s=0,t,C,D,G=function(){C&&(C.remove(),C=null);t&&(t.$destroy(),t=null);D&&(d.leave(D).then(function(){C=null}),C=D,D=null)};f.$watch(e.parseAsResourceUrl(k),function(e){var k=function(){!z(l)||l&&!f.$eval(l)||c()},q=++s;e?(a(e,!0).then(function(a){if(q===s){var c=f.$new();n.template=a;a=r(c,function(a){G();d.enter(a,null,g).then(k)}); | |||
t=c;D=a;t.$emit("$includeContentLoaded",e);f.$eval(h)}},function(){q===s&&(G(),f.$emit("$includeContentError",e))}),f.$emit("$includeContentRequested",e)):(G(),n.template=null)})}}}}],ye=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(c,d,e,f){/SVG/.test(d[0].toString())?(d.empty(),a(Dc(f.template,U).childNodes)(c,function(a){d.append(a)},t,t,d)):(d.html(f.template),a(d.contents())(c))}}}],ie=Ia({priority:450,compile:function(){return{pre:function(a,c, | |||
d){a.$eval(d.ngInit)}}}}),je=Ia({terminal:!0,priority:1E3}),ke=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,f,g){var k=g.count,h=g.$attr.when&&f.attr(g.$attr.when),l=g.offset||0,m=e.$eval(h)||{},p={},q=c.startSymbol(),n=c.endSymbol(),r=/^when(Minus)?(.+)$/;s(g,function(a,c){r.test(c)&&(m[S(c.replace("when","").replace("Minus","-"))]=f.attr(g.$attr[c]))});s(m,function(a,e){p[e]=c(a.replace(d,q+k+"-"+l+n))});e.$watch(function(){var c=parseFloat(e.$eval(k)); | |||
if(isNaN(c))return"";c in m||(c=a.pluralCat(c-l));return p[c](e)},function(a){f.text(a)})}}}],le=["$parse","$animate",function(a,c){var d=w("ngRepeat"),e=function(a,c,d,e,l,m,p){a[d]=e;l&&(a[l]=m);a.$index=c;a.$first=0===c;a.$last=c===p-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(c&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(f,g){var k=g.ngRepeat,h=U.createComment(" end ngRepeat: "+k+" "),l=k.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/); | |||
if(!l)throw d("iexp",k);var m=l[1],p=l[2],q=l[3],n=l[4],l=m.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!l)throw d("iidexp",m);var r=l[3]||l[1],z=l[2];if(q&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(q)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent)$/.test(q)))throw d("badident",q);var w,C,D,G,u={$id:Ma};n?w=a(n):(D=function(a,c){return Ma(c)},G=function(a){return a});return function(a,f,g,l,m){w&&(C=function(c,d,e){z&&(u[z]=c);u[r]=d;u.$index=e;return w(a,u)}); | |||
var n=wa();a.$watchCollection(p,function(g){var l,p,E=f[0],u,w=wa(),B,y,F,x,H,A,J;q&&(a[q]=g);if(Qa(g))H=g,p=C||D;else{p=C||G;H=[];for(J in g)g.hasOwnProperty(J)&&"$"!=J.charAt(0)&&H.push(J);H.sort()}B=H.length;J=Array(B);for(l=0;l<B;l++)if(y=g===H?l:H[l],F=g[y],x=p(y,F,l),n[x])A=n[x],delete n[x],w[x]=A,J[l]=A;else{if(w[x])throw s(J,function(a){a&&a.scope&&(n[a.id]=a)}),d("dupes",k,x,ra(F));J[l]={id:x,scope:t,clone:t};w[x]=!0}for(u in n){A=n[u];x=nb(A.clone);c.leave(x);if(x[0].parentNode)for(l=0, | |||
p=x.length;l<p;l++)x[l].$$NG_REMOVED=!0;A.scope.$destroy()}for(l=0;l<B;l++)if(y=g===H?l:H[l],F=g[y],A=J[l],A.scope){u=E;do u=u.nextSibling;while(u&&u.$$NG_REMOVED);A.clone[0]!=u&&c.move(nb(A.clone),null,v(E));E=A.clone[A.clone.length-1];e(A.scope,l,r,F,z,y,B)}else m(function(a,d){A.scope=d;var f=h.cloneNode(!1);a[a.length++]=f;c.enter(a,null,v(E));E=f;A.clone=a;w[A.id]=A;e(A.scope,l,r,F,z,y,B)});n=w})}}}}],me=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(c,d,e){c.$watch(e.ngShow, | |||
function(c){a[c?"removeClass":"addClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],fe=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(c,d,e){c.$watch(e.ngHide,function(c){a[c?"addClass":"removeClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],ne=Ia(function(a,c,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&s(d,function(a,d){c.css(d,"")});a&&c.css(a)},!0)}),oe=["$animate",function(a){return{restrict:"EA",require:"ngSwitch",controller:["$scope",function(){this.cases= | |||
{}}],link:function(c,d,e,f){var g=[],k=[],h=[],l=[],m=function(a,c){return function(){a.splice(c,1)}};c.$watch(e.ngSwitch||e.on,function(c){var d,e;d=0;for(e=h.length;d<e;++d)a.cancel(h[d]);d=h.length=0;for(e=l.length;d<e;++d){var r=nb(k[d].clone);l[d].$destroy();(h[d]=a.leave(r)).then(m(h,d))}k.length=0;l.length=0;(g=f.cases["!"+c]||f.cases["?"])&&s(g,function(c){c.transclude(function(d,e){l.push(e);var f=c.element;d[d.length++]=U.createComment(" end ngSwitchWhen: ");k.push({clone:d});a.enter(d, | |||
f.parent(),f)})})})}}}],pe=Ia({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,c,d,e,f){e.cases["!"+d.ngSwitchWhen]=e.cases["!"+d.ngSwitchWhen]||[];e.cases["!"+d.ngSwitchWhen].push({transclude:f,element:c})}}),qe=Ia({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,c,d,e,f){e.cases["?"]=e.cases["?"]||[];e.cases["?"].push({transclude:f,element:c})}}),se=Ia({restrict:"EAC",link:function(a,c,d,e,f){if(!f)throw w("ngTransclude")("orphan", | |||
sa(c));f(function(a){c.empty();c.append(a)})}}),Td=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(c,d){"text/ng-template"==d.type&&a.put(d.id,c[0].text)}}}],Yf=w("ngOptions"),re=da({restrict:"A",terminal:!0}),Ud=["$compile","$parse",function(a,c){var d=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,e={$setViewValue:y}; | |||
return{restrict:"E",require:["select","?ngModel"],controller:["$element","$scope","$attrs",function(a,c,d){var h=this,l={},m=e,p;h.databound=d.ngModel;h.init=function(a,c,d){m=a;p=d};h.addOption=function(c,d){La(c,'"option value"');l[c]=!0;m.$viewValue==c&&(a.val(c),p.parent()&&p.remove());d&&d[0].hasAttribute("selected")&&(d[0].selected=!0)};h.removeOption=function(a){this.hasOption(a)&&(delete l[a],m.$viewValue==a&&this.renderUnknownOption(a))};h.renderUnknownOption=function(c){c="? "+Ma(c)+" ?"; | |||
p.val(c);a.prepend(p);a.val(c);p.prop("selected",!0)};h.hasOption=function(a){return l.hasOwnProperty(a)};c.$on("$destroy",function(){h.renderUnknownOption=y})}],link:function(e,g,k,h){function l(a,c,d,e){d.$render=function(){var a=d.$viewValue;e.hasOption(a)?(u.parent()&&u.remove(),c.val(a),""===a&&A.prop("selected",!0)):x(a)&&A?c.val(""):e.renderUnknownOption(a)};c.on("change",function(){a.$apply(function(){u.parent()&&u.remove();d.$setViewValue(c.val())})})}function m(a,c,d){var e;d.$render=function(){var a= | |||
new ab(d.$viewValue);s(c.find("option"),function(c){c.selected=z(a.get(c.value))})};a.$watch(function(){la(e,d.$viewValue)||(e=qa(d.$viewValue),d.$render())});c.on("change",function(){a.$apply(function(){var a=[];s(c.find("option"),function(c){c.selected&&a.push(c.value)});d.$setViewValue(a)})})}function p(e,f,g){function h(a,c,d){S[y]=d;F&&(S[F]=c);return a(e,S)}function k(a){var c;if(n)if(I&&H(a)){c=new ab([]);for(var d=0;d<a.length;d++)c.put(h(I,null,a[d]),!0)}else c=new ab(a);else I&&(a=h(I,null, | |||
a));return function(d,e){var f;f=I?I:v?v:B;return n?z(c.remove(h(f,d,e))):a==h(f,d,e)}}function l(){C||(e.$$postDigest(p),C=!0)}function m(a,c,d){a[c]=a[c]||0;a[c]+=d?1:-1}function p(){C=!1;var a={"":[]},c=[""],d,l,r,t,u;r=g.$viewValue;t=K(e)||[];var y=F?Object.keys(t).sort():t,v,x,H,B,R={};u=k(r);var N=!1,T,U;P={};for(B=0;H=y.length,B<H;B++){v=B;if(F&&(v=y[B],"$"===v.charAt(0)))continue;x=t[v];d=h(J,v,x)||"";(l=a[d])||(l=a[d]=[],c.push(d));d=u(v,x);N=N||d;x=h(A,v,x);x=z(x)?x:"";U=I?I(e,S):F?y[B]: | |||
B;I&&(P[U]=v);l.push({id:U,label:x,selected:d})}n||(w||null===r?a[""].unshift({id:"",label:"",selected:!N}):N||a[""].unshift({id:"?",label:"",selected:!0}));v=0;for(y=c.length;v<y;v++){d=c[v];l=a[d];Q.length<=v?(r={element:G.clone().attr("label",d),label:l.label},t=[r],Q.push(t),f.append(r.element)):(t=Q[v],r=t[0],r.label!=d&&r.element.attr("label",r.label=d));N=null;B=0;for(H=l.length;B<H;B++)d=l[B],(u=t[B+1])?(N=u.element,u.label!==d.label&&(m(R,u.label,!1),m(R,d.label,!0),N.text(u.label=d.label)), | |||
u.id!==d.id&&N.val(u.id=d.id),N[0].selected!==d.selected&&(N.prop("selected",u.selected=d.selected),Ha&&N.prop("selected",u.selected))):(""===d.id&&w?T=w:(T=D.clone()).val(d.id).prop("selected",d.selected).attr("selected",d.selected).text(d.label),t.push(u={element:T,label:d.label,id:d.id,selected:d.selected}),m(R,d.label,!0),N?N.after(T):r.element.append(T),N=T);for(B++;t.length>B;)d=t.pop(),m(R,d.label,!1),d.element.remove();s(R,function(a,c){0<a?q.addOption(c):0>a&&q.removeOption(c)})}for(;Q.length> | |||
v;)Q.pop()[0].element.remove()}var u;if(!(u=r.match(d)))throw Yf("iexp",r,sa(f));var A=c(u[2]||u[1]),y=u[4]||u[6],x=/ as /.test(u[0])&&u[1],v=x?c(x):null,F=u[5],J=c(u[3]||""),B=c(u[2]?u[1]:y),K=c(u[7]),I=u[8]?c(u[8]):null,P={},Q=[[{element:f,label:""}]],S={};w&&(a(w)(e),w.removeClass("ng-scope"),w.remove());f.empty();f.on("change",function(){e.$apply(function(){var a=K(e)||[],c;if(n)c=[],s(f.val(),function(d){d=I?P[d]:d;c.push("?"===d?t:""===d?null:h(v?v:B,d,a[d]))});else{var d=I?P[f.val()]:f.val(); | |||
c="?"===d?t:""===d?null:h(v?v:B,d,a[d])}g.$setViewValue(c);p()})});g.$render=p;e.$watchCollection(K,l);e.$watchCollection(function(){var a=K(e),c;if(a&&H(a)){c=Array(a.length);for(var d=0,f=a.length;d<f;d++)c[d]=h(A,d,a[d])}else if(a)for(d in c={},a)a.hasOwnProperty(d)&&(c[d]=h(A,d,a[d]));return c},l);n&&e.$watchCollection(function(){return g.$modelValue},l)}if(h[1]){var q=h[0];h=h[1];var n=k.multiple,r=k.ngOptions,w=!1,A,C=!1,D=v(U.createElement("option")),G=v(U.createElement("optgroup")),u=D.clone(); | |||
k=0;for(var y=g.children(),F=y.length;k<F;k++)if(""===y[k].value){A=w=y.eq(k);break}q.init(h,w,u);n&&(h.$isEmpty=function(a){return!a||0===a.length});r?p(e,g,h):n?m(e,g,h):l(e,g,h,q)}}}}],Wd=["$interpolate",function(a){var c={addOption:y,removeOption:y};return{restrict:"E",priority:100,compile:function(d,e){if(x(e.value)){var f=a(d.text(),!0);f||e.$set("value",d.text())}return function(a,d,e){var l=d.parent(),m=l.data("$selectController")||l.parent().data("$selectController");m&&m.databound||(m=c); | |||
f?a.$watch(f,function(a,c){e.$set("value",a);c!==a&&m.removeOption(c);m.addOption(a,d)}):m.addOption(e.value,d);d.on("$destroy",function(){m.removeOption(e.value)})}}}}],Vd=da({restrict:"E",terminal:!1});N.angular.bootstrap?console.log("WARNING: Tried to load angular more than once."):(Ld(),Nd(ta),v(U).ready(function(){Hd(U,rc)}))})(window,document);!window.angular.$$csp()&&window.angular.element(document).find("head").prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}</style>'); | |||
//# sourceMappingURL=angular.min.js.map |
@ -0,0 +1,52 @@ | |||
'use strict'; | |||
angular.module('angular-parallax', [ | |||
]).directive('parallax', ['$window', function($window) { | |||
return { | |||
restrict: 'A', | |||
scope: { | |||
parallaxRatio: '@', | |||
parallaxVerticalOffset: '@', | |||
parallaxHorizontalOffset: '@', | |||
}, | |||
link: function($scope, elem, attrs) { | |||
var setPosition = function () { | |||
var calcValY = $window.pageYOffset * ($scope.parallaxRatio ? $scope.parallaxRatio : 1.1 ); | |||
if (calcValY <= $window.innerHeight) { | |||
var topVal = (calcValY < $scope.parallaxVerticalOffset ? $scope.parallaxVerticalOffset : calcValY); | |||
elem.css('transform','translate(' + $scope.parallaxHorizontalOffset + 'px, ' +topVal+ 'px)'); | |||
} | |||
}; | |||
setPosition(); | |||
angular.element($window).bind("scroll", setPosition); | |||
angular.element($window).bind("touchmove", setPosition); | |||
} // link function | |||
}; | |||
}]).directive('parallaxBackground', ['$window', function($window) { | |||
return { | |||
restrict: 'A', | |||
transclude: true, | |||
template: '<div ng-transclude></div>', | |||
scope: { | |||
parallaxRatio: '@', | |||
}, | |||
link: function($scope, elem, attrs) { | |||
var setPosition = function () { | |||
var calcValY = (elem.prop('offsetTop') - $window.pageYOffset) * ($scope.parallaxRatio ? $scope.parallaxRatio : 1.1 ); | |||
// horizontal positioning | |||
elem.css('background-position', "50% " + calcValY + "px"); | |||
}; | |||
// set our initial position - fixes webkit background render bug | |||
angular.element($window).bind('load', function(e) { | |||
setPosition(); | |||
$scope.$apply(); | |||
}); | |||
angular.element($window).bind("scroll", setPosition); | |||
angular.element($window).bind("touchmove", setPosition); | |||
} // link function | |||
}; | |||
}]); |
@ -0,0 +1,99 @@ | |||
/** | |||
* @license | |||
* lodash 3.10.0 (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE | |||
* Build: `lodash modern -o ./lodash.js` | |||
*/ | |||
;(function(){function n(n,t){if(n!==t){var r=null===n,e=n===w,u=n===n,o=null===t,i=t===w,f=t===t;if(n>t&&!o||!u||r&&!i&&f||e&&f)return 1;if(n<t&&!r||!f||o&&!e&&u||i&&u)return-1}return 0}function t(n,t,r){for(var e=n.length,u=r?e:-1;r?u--:++u<e;)if(t(n[u],u,n))return u;return-1}function r(n,t,r){if(t!==t)return p(n,r);r-=1;for(var e=n.length;++r<e;)if(n[r]===t)return r;return-1}function e(n){return typeof n=="function"||false}function u(n){return null==n?"":n+""}function o(n,t){for(var r=-1,e=n.length;++r<e&&-1<t.indexOf(n.charAt(r));); | |||
return r}function i(n,t){for(var r=n.length;r--&&-1<t.indexOf(n.charAt(r)););return r}function f(t,r){return n(t.a,r.a)||t.b-r.b}function a(n){return Nn[n]}function c(n){return Tn[n]}function l(n,t,r){return t?n=Bn[n]:r&&(n=Dn[n]),"\\"+n}function s(n){return"\\"+Dn[n]}function p(n,t,r){var e=n.length;for(t+=r?0:-1;r?t--:++t<e;){var u=n[t];if(u!==u)return t}return-1}function h(n){return!!n&&typeof n=="object"}function _(n){return 160>=n&&9<=n&&13>=n||32==n||160==n||5760==n||6158==n||8192<=n&&(8202>=n||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n); | |||
}function v(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;)n[r]===t&&(n[r]=z,o[++u]=r);return o}function g(n){for(var t=-1,r=n.length;++t<r&&_(n.charCodeAt(t)););return t}function y(n){for(var t=n.length;t--&&_(n.charCodeAt(t)););return t}function d(n){return Ln[n]}function m(_){function Nn(n){if(h(n)&&!(Oo(n)||n instanceof zn)){if(n instanceof Ln)return n;if(nu.call(n,"__chain__")&&nu.call(n,"__wrapped__"))return Mr(n)}return new Ln(n)}function Tn(){}function Ln(n,t,r){this.__wrapped__=n,this.__actions__=r||[], | |||
this.__chain__=!!t}function zn(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=false,this.__iteratees__=[],this.__takeCount__=Ru,this.__views__=[]}function Bn(){this.__data__={}}function Dn(n){var t=n?n.length:0;for(this.data={hash:gu(null),set:new lu};t--;)this.push(n[t])}function Mn(n,t){var r=n.data;return(typeof t=="string"||ge(t)?r.set.has(t):r.hash[t])?0:-1}function qn(n,t){var r=-1,e=n.length;for(t||(t=Be(e));++r<e;)t[r]=n[r];return t}function Pn(n,t){for(var r=-1,e=n.length;++r<e&&false!==t(n[r],r,n);); | |||
return n}function Kn(n,t){for(var r=-1,e=n.length;++r<e;)if(!t(n[r],r,n))return false;return true}function Vn(n,t){for(var r=-1,e=n.length,u=-1,o=[];++r<e;){var i=n[r];t(i,r,n)&&(o[++u]=i)}return o}function Gn(n,t){for(var r=-1,e=n.length,u=Be(e);++r<e;)u[r]=t(n[r],r,n);return u}function Jn(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];return n}function Xn(n,t,r,e){var u=-1,o=n.length;for(e&&o&&(r=n[++u]);++u<o;)r=t(r,n[u],u,n);return r}function Hn(n,t){for(var r=-1,e=n.length;++r<e;)if(t(n[r],r,n))return true; | |||
return false}function Qn(n,t,r,e){return n!==w&&nu.call(e,r)?n:t}function nt(n,t,r){for(var e=-1,u=zo(t),o=u.length;++e<o;){var i=u[e],f=n[i],a=r(f,t[i],i,n,t);(a===a?a===f:f!==f)&&(f!==w||i in n)||(n[i]=a)}return n}function tt(n,t){return null==t?n:et(t,zo(t),n)}function rt(n,t){for(var r=-1,e=null==n,u=!e&&Er(n),o=u?n.length:0,i=t.length,f=Be(i);++r<i;){var a=t[r];f[r]=u?Cr(a,o)?n[a]:w:e?w:n[a]}return f}function et(n,t,r){r||(r={});for(var e=-1,u=t.length;++e<u;){var o=t[e];r[o]=n[o]}return r}function ut(n,t,r){ | |||
var e=typeof n;return"function"==e?t===w?n:Bt(n,t,r):null==n?Fe:"object"==e?bt(n):t===w?ze(n):xt(n,t)}function ot(n,t,r,e,u,o,i){var f;if(r&&(f=u?r(n,e,u):r(n)),f!==w)return f;if(!ge(n))return n;if(e=Oo(n)){if(f=kr(n),!t)return qn(n,f)}else{var a=ru.call(n),c=a==K;if(a!=Z&&a!=B&&(!c||u))return Fn[a]?Rr(n,a,t):u?n:{};if(f=Ir(c?{}:n),!t)return tt(f,n)}for(o||(o=[]),i||(i=[]),u=o.length;u--;)if(o[u]==n)return i[u];return o.push(n),i.push(f),(e?Pn:_t)(n,function(e,u){f[u]=ot(e,t,r,u,n,o,i)}),f}function it(n,t,r){ | |||
if(typeof n!="function")throw new Ge(L);return su(function(){n.apply(w,r)},t)}function ft(n,t){var e=n?n.length:0,u=[];if(!e)return u;var o=-1,i=xr(),f=i==r,a=f&&t.length>=F&&gu&&lu?new Dn(t):null,c=t.length;a&&(i=Mn,f=false,t=a);n:for(;++o<e;)if(a=n[o],f&&a===a){for(var l=c;l--;)if(t[l]===a)continue n;u.push(a)}else 0>i(t,a,0)&&u.push(a);return u}function at(n,t){var r=true;return Su(n,function(n,e,u){return r=!!t(n,e,u)}),r}function ct(n,t,r,e){var u=e,o=u;return Su(n,function(n,i,f){i=+t(n,i,f),(r(i,u)||i===e&&i===o)&&(u=i, | |||
o=n)}),o}function lt(n,t){var r=[];return Su(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function st(n,t,r,e){var u;return r(n,function(n,r,o){return t(n,r,o)?(u=e?r:n,false):void 0}),u}function pt(n,t,r,e){e||(e=[]);for(var u=-1,o=n.length;++u<o;){var i=n[u];h(i)&&Er(i)&&(r||Oo(i)||pe(i))?t?pt(i,t,r,e):Jn(e,i):r||(e[e.length]=i)}return e}function ht(n,t){Nu(n,t,Re)}function _t(n,t){return Nu(n,t,zo)}function vt(n,t){return Tu(n,t,zo)}function gt(n,t){for(var r=-1,e=t.length,u=-1,o=[];++r<e;){var i=t[r]; | |||
ve(n[i])&&(o[++u]=i)}return o}function yt(n,t,r){if(null!=n){r!==w&&r in Br(n)&&(t=[r]),r=0;for(var e=t.length;null!=n&&r<e;)n=n[t[r++]];return r&&r==e?n:w}}function dt(n,t,r,e,u,o){if(n===t)n=true;else if(null==n||null==t||!ge(n)&&!h(t))n=n!==n&&t!==t;else n:{var i=dt,f=Oo(n),a=Oo(t),c=D,l=D;f||(c=ru.call(n),c==B?c=Z:c!=Z&&(f=xe(n))),a||(l=ru.call(t),l==B?l=Z:l!=Z&&xe(t));var s=c==Z,a=l==Z,l=c==l;if(!l||f||s){if(!e&&(c=s&&nu.call(n,"__wrapped__"),a=a&&nu.call(t,"__wrapped__"),c||a)){n=i(c?n.value():n,a?t.value():t,r,e,u,o); | |||
break n}if(l){for(u||(u=[]),o||(o=[]),c=u.length;c--;)if(u[c]==n){n=o[c]==t;break n}u.push(n),o.push(t),n=(f?yr:mr)(n,t,i,r,e,u,o),u.pop(),o.pop()}else n=false}else n=dr(n,t,c)}return n}function mt(n,t,r){var e=t.length,u=e,o=!r;if(null==n)return!u;for(n=Br(n);e--;){var i=t[e];if(o&&i[2]?i[1]!==n[i[0]]:!(i[0]in n))return false}for(;++e<u;){var i=t[e],f=i[0],a=n[f],c=i[1];if(o&&i[2]){if(a===w&&!(f in n))return false}else if(i=r?r(a,c,f):w,i===w?!dt(c,a,r,true):!i)return false}return true}function wt(n,t){var r=-1,e=Er(n)?Be(n.length):[]; | |||
return Su(n,function(n,u,o){e[++r]=t(n,u,o)}),e}function bt(n){var t=Ar(n);if(1==t.length&&t[0][2]){var r=t[0][0],e=t[0][1];return function(n){return null==n?false:n[r]===e&&(e!==w||r in Br(n))}}return function(n){return mt(n,t)}}function xt(n,t){var r=Oo(n),e=Wr(n)&&t===t&&!ge(t),u=n+"";return n=Dr(n),function(o){if(null==o)return false;var i=u;if(o=Br(o),!(!r&&e||i in o)){if(o=1==n.length?o:yt(o,Et(n,0,-1)),null==o)return false;i=Zr(n),o=Br(o)}return o[i]===t?t!==w||i in o:dt(t,o[i],w,true)}}function At(n,t,r,e,u){ | |||
if(!ge(n))return n;var o=Er(t)&&(Oo(t)||xe(t)),i=o?w:zo(t);return Pn(i||t,function(f,a){if(i&&(a=f,f=t[a]),h(f)){e||(e=[]),u||(u=[]);n:{for(var c=a,l=e,s=u,p=l.length,_=t[c];p--;)if(l[p]==_){n[c]=s[p];break n}var p=n[c],v=r?r(p,_,c,n,t):w,g=v===w;g&&(v=_,Er(_)&&(Oo(_)||xe(_))?v=Oo(p)?p:Er(p)?qn(p):[]:me(_)||pe(_)?v=pe(p)?ke(p):me(p)?p:{}:g=false),l.push(_),s.push(v),g?n[c]=At(v,_,r,l,s):(v===v?v!==p:p===p)&&(n[c]=v)}}else c=n[a],l=r?r(c,f,a,n,t):w,(s=l===w)&&(l=f),l===w&&(!o||a in n)||!s&&(l===l?l===c:c!==c)||(n[a]=l); | |||
}),n}function jt(n){return function(t){return null==t?w:t[n]}}function kt(n){var t=n+"";return n=Dr(n),function(r){return yt(r,n,t)}}function It(n,t){for(var r=n?t.length:0;r--;){var e=t[r];if(e!=u&&Cr(e)){var u=e;pu.call(n,e,1)}}}function Rt(n,t){return n+yu(ku()*(t-n+1))}function Ot(n,t,r,e,u){return u(n,function(n,u,o){r=e?(e=false,n):t(r,n,u,o)}),r}function Et(n,t,r){var e=-1,u=n.length;for(t=null==t?0:+t||0,0>t&&(t=-t>u?0:u+t),r=r===w||r>u?u:+r||0,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Be(u);++e<u;)r[e]=n[e+t]; | |||
return r}function Ct(n,t){var r;return Su(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}function Ut(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;return n}function Wt(t,r,e){var u=wr(),o=-1;return r=Gn(r,function(n){return u(n)}),t=wt(t,function(n){return{a:Gn(r,function(t){return t(n)}),b:++o,c:n}}),Ut(t,function(t,r){var u;n:{for(var o=-1,i=t.a,f=r.a,a=i.length,c=e.length;++o<a;)if(u=n(i[o],f[o])){if(o>=c)break n;o=e[o],u*="asc"===o||true===o?1:-1;break n}u=t.b-r.b}return u})}function $t(n,t){ | |||
var r=0;return Su(n,function(n,e,u){r+=+t(n,e,u)||0}),r}function St(n,t){var e=-1,u=xr(),o=n.length,i=u==r,f=i&&o>=F,a=f&&gu&&lu?new Dn(void 0):null,c=[];a?(u=Mn,i=false):(f=false,a=t?[]:c);n:for(;++e<o;){var l=n[e],s=t?t(l,e,n):l;if(i&&l===l){for(var p=a.length;p--;)if(a[p]===s)continue n;t&&a.push(s),c.push(l)}else 0>u(a,s,0)&&((t||f)&&a.push(s),c.push(l))}return c}function Ft(n,t){for(var r=-1,e=t.length,u=Be(e);++r<e;)u[r]=n[t[r]];return u}function Nt(n,t,r,e){for(var u=n.length,o=e?u:-1;(e?o--:++o<u)&&t(n[o],o,n);); | |||
return r?Et(n,e?0:o,e?o+1:u):Et(n,e?o+1:0,e?u:o)}function Tt(n,t){var r=n;r instanceof zn&&(r=r.value());for(var e=-1,u=t.length;++e<u;)var o=t[e],r=o.func.apply(o.thisArg,Jn([r],o.args));return r}function Lt(n,t,r){var e=0,u=n?n.length:e;if(typeof t=="number"&&t===t&&u<=Eu){for(;e<u;){var o=e+u>>>1,i=n[o];(r?i<=t:i<t)&&null!==i?e=o+1:u=o}return u}return zt(n,t,Fe,r)}function zt(n,t,r,e){t=r(t);for(var u=0,o=n?n.length:0,i=t!==t,f=null===t,a=t===w;u<o;){var c=yu((u+o)/2),l=r(n[c]),s=l!==w,p=l===l; | |||
(i?p||e:f?p&&s&&(e||null!=l):a?p&&(e||s):null==l?0:e?l<=t:l<t)?u=c+1:o=c}return xu(o,Ou)}function Bt(n,t,r){if(typeof n!="function")return Fe;if(t===w)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,o){return n.call(t,r,e,u,o)};case 5:return function(r,e,u,o,i){return n.call(t,r,e,u,o,i)}}return function(){return n.apply(t,arguments)}}function Dt(n){var t=new ou(n.byteLength);return new hu(t).set(new hu(n)), | |||
t}function Mt(n,t,r){for(var e=r.length,u=-1,o=bu(n.length-e,0),i=-1,f=t.length,a=Be(f+o);++i<f;)a[i]=t[i];for(;++u<e;)a[r[u]]=n[u];for(;o--;)a[i++]=n[u++];return a}function qt(n,t,r){for(var e=-1,u=r.length,o=-1,i=bu(n.length-u,0),f=-1,a=t.length,c=Be(i+a);++o<i;)c[o]=n[o];for(i=o;++f<a;)c[i+f]=t[f];for(;++e<u;)c[i+r[e]]=n[o++];return c}function Pt(n,t){return function(r,e,u){var o=t?t():{};if(e=wr(e,u,3),Oo(r)){u=-1;for(var i=r.length;++u<i;){var f=r[u];n(o,f,e(f,u,r),r)}}else Su(r,function(t,r,u){ | |||
n(o,t,e(t,r,u),u)});return o}}function Kt(n){return le(function(t,r){var e=-1,u=null==t?0:r.length,o=2<u?r[u-2]:w,i=2<u?r[2]:w,f=1<u?r[u-1]:w;for(typeof o=="function"?(o=Bt(o,f,5),u-=2):(o=typeof f=="function"?f:w,u-=o?1:0),i&&Ur(r[0],r[1],i)&&(o=3>u?w:o,u=1);++e<u;)(i=r[e])&&n(t,i,o);return t})}function Vt(n,t){return function(r,e){var u=r?Bu(r):0;if(!Sr(u))return n(r,e);for(var o=t?u:-1,i=Br(r);(t?o--:++o<u)&&false!==e(i[o],o,i););return r}}function Zt(n){return function(t,r,e){var u=Br(t);e=e(t);for(var o=e.length,i=n?o:-1;n?i--:++i<o;){ | |||
var f=e[i];if(false===r(u[f],f,u))break}return t}}function Yt(n,t){function r(){return(this&&this!==Zn&&this instanceof r?e:n).apply(t,arguments)}var e=Jt(n);return r}function Gt(n){return function(t){var r=-1;t=$e(Ce(t));for(var e=t.length,u="";++r<e;)u=n(u,t[r],r);return u}}function Jt(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5: | |||
return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=$u(n.prototype),t=n.apply(r,t);return ge(t)?t:r}}function Xt(n){function t(r,e,u){return u&&Ur(r,e,u)&&(e=w),r=gr(r,n,w,w,w,w,w,e),r.placeholder=t.placeholder,r}return t}function Ht(n,t){return le(function(r){var e=r[0];return null==e?e:(r.push(t),n.apply(w,r))})}function Qt(n,t){return function(r,e,u){if(u&&Ur(r,e,u)&&(e=w),e=wr(e,u,3),1==e.length){ | |||
u=r=Oo(r)?r:zr(r);for(var o=e,i=-1,f=u.length,a=t,c=a;++i<f;){var l=u[i],s=+o(l);n(s,a)&&(a=s,c=l)}if(u=c,!r.length||u!==t)return u}return ct(r,e,n,t)}}function nr(n,r){return function(e,u,o){return u=wr(u,o,3),Oo(e)?(u=t(e,u,r),-1<u?e[u]:w):st(e,u,n)}}function tr(n){return function(r,e,u){return r&&r.length?(e=wr(e,u,3),t(r,e,n)):-1}}function rr(n){return function(t,r,e){return r=wr(r,e,3),st(t,r,n,true)}}function er(n){return function(){for(var t,r=arguments.length,e=n?r:-1,u=0,o=Be(r);n?e--:++e<r;){ | |||
var i=o[u++]=arguments[e];if(typeof i!="function")throw new Ge(L);!t&&Ln.prototype.thru&&"wrapper"==br(i)&&(t=new Ln([],true))}for(e=t?-1:r;++e<r;){var i=o[e],u=br(i),f="wrapper"==u?zu(i):w;t=f&&$r(f[0])&&f[1]==(E|k|R|C)&&!f[4].length&&1==f[9]?t[br(f[0])].apply(t,f[3]):1==i.length&&$r(i)?t[u]():t.thru(i)}return function(){var n=arguments,e=n[0];if(t&&1==n.length&&Oo(e)&&e.length>=F)return t.plant(e).value();for(var u=0,n=r?o[u].apply(this,n):e;++u<r;)n=o[u].call(this,n);return n}}}function ur(n,t){ | |||
return function(r,e,u){return typeof e=="function"&&u===w&&Oo(r)?n(r,e):t(r,Bt(e,u,3))}}function or(n){return function(t,r,e){return(typeof r!="function"||e!==w)&&(r=Bt(r,e,3)),n(t,r,Re)}}function ir(n){return function(t,r,e){return(typeof r!="function"||e!==w)&&(r=Bt(r,e,3)),n(t,r)}}function fr(n){return function(t,r,e){var u={};return r=wr(r,e,3),_t(t,function(t,e,o){o=r(t,e,o),e=n?o:e,t=n?t:o,u[e]=t}),u}}function ar(n){return function(t,r,e){return t=u(t),(n?t:"")+pr(t,r,e)+(n?"":t)}}function cr(n){ | |||
var t=le(function(r,e){var u=v(e,t.placeholder);return gr(r,n,w,e,u)});return t}function lr(n,t){return function(r,e,u,o){var i=3>arguments.length;return typeof e=="function"&&o===w&&Oo(r)?n(r,e,u,i):Ot(r,wr(e,o,4),u,i,t)}}function sr(n,t,r,e,u,o,i,f,a,c){function l(){for(var m=arguments.length,b=m,j=Be(m);b--;)j[b]=arguments[b];if(e&&(j=Mt(j,e,u)),o&&(j=qt(j,o,i)),_||y){var b=l.placeholder,k=v(j,b),m=m-k.length;if(m<c){var I=f?qn(f):w,m=bu(c-m,0),E=_?k:w,k=_?w:k,C=_?j:w,j=_?w:j;return t|=_?R:O,t&=~(_?O:R), | |||
g||(t&=~(x|A)),j=[n,t,r,C,E,j,k,I,a,m],I=sr.apply(w,j),$r(n)&&Du(I,j),I.placeholder=b,I}}if(b=p?r:this,I=h?b[n]:n,f)for(m=j.length,E=xu(f.length,m),k=qn(j);E--;)C=f[E],j[E]=Cr(C,m)?k[C]:w;return s&&a<j.length&&(j.length=a),this&&this!==Zn&&this instanceof l&&(I=d||Jt(n)),I.apply(b,j)}var s=t&E,p=t&x,h=t&A,_=t&k,g=t&j,y=t&I,d=h?w:Jt(n);return l}function pr(n,t,r){return n=n.length,t=+t,n<t&&mu(t)?(t-=n,r=null==r?" ":r+"",Ue(r,vu(t/r.length)).slice(0,t)):""}function hr(n,t,r,e){function u(){for(var t=-1,f=arguments.length,a=-1,c=e.length,l=Be(c+f);++a<c;)l[a]=e[a]; | |||
for(;f--;)l[a++]=arguments[++t];return(this&&this!==Zn&&this instanceof u?i:n).apply(o?r:this,l)}var o=t&x,i=Jt(n);return u}function _r(n){var t=Pe[n];return function(n,r){return(r=r===w?0:+r||0)?(r=au(10,r),t(n*r)/r):t(n)}}function vr(n){return function(t,r,e,u){var o=wr(e);return null==e&&o===ut?Lt(t,r,n):zt(t,r,o(e,u,1),n)}}function gr(n,t,r,e,u,o,i,f){var a=t&A;if(!a&&typeof n!="function")throw new Ge(L);var c=e?e.length:0;if(c||(t&=~(R|O),e=u=w),c-=u?u.length:0,t&O){var l=e,s=u;e=u=w}var p=a?w:zu(n); | |||
return r=[n,t,r,e,u,l,s,o,i,f],p&&(e=r[1],t=p[1],f=e|t,u=t==E&&e==k||t==E&&e==C&&r[7].length<=p[8]||t==(E|C)&&e==k,(f<E||u)&&(t&x&&(r[2]=p[2],f|=e&x?0:j),(e=p[3])&&(u=r[3],r[3]=u?Mt(u,e,p[4]):qn(e),r[4]=u?v(r[3],z):qn(p[4])),(e=p[5])&&(u=r[5],r[5]=u?qt(u,e,p[6]):qn(e),r[6]=u?v(r[5],z):qn(p[6])),(e=p[7])&&(r[7]=qn(e)),t&E&&(r[8]=null==r[8]?p[8]:xu(r[8],p[8])),null==r[9]&&(r[9]=p[9]),r[0]=p[0],r[1]=f),t=r[1],f=r[9]),r[9]=null==f?a?0:n.length:bu(f-c,0)||0,(p?Lu:Du)(t==x?Yt(r[0],r[2]):t!=R&&t!=(x|R)||r[4].length?sr.apply(w,r):hr.apply(w,r),r); | |||
}function yr(n,t,r,e,u,o,i){var f=-1,a=n.length,c=t.length;if(a!=c&&(!u||c<=a))return false;for(;++f<a;){var l=n[f],c=t[f],s=e?e(u?c:l,u?l:c,f):w;if(s!==w){if(s)continue;return false}if(u){if(!Hn(t,function(n){return l===n||r(l,n,e,u,o,i)}))return false}else if(l!==c&&!r(l,c,e,u,o,i))return false}return true}function dr(n,t,r){switch(r){case M:case q:return+n==+t;case P:return n.name==t.name&&n.message==t.message;case V:return n!=+n?t!=+t:n==+t;case Y:case G:return n==t+""}return false}function mr(n,t,r,e,u,o,i){var f=zo(n),a=f.length,c=zo(t).length; | |||
if(a!=c&&!u)return false;for(c=a;c--;){var l=f[c];if(!(u?l in t:nu.call(t,l)))return false}for(var s=u;++c<a;){var l=f[c],p=n[l],h=t[l],_=e?e(u?h:p,u?p:h,l):w;if(_===w?!r(p,h,e,u,o,i):!_)return false;s||(s="constructor"==l)}return s||(r=n.constructor,e=t.constructor,!(r!=e&&"constructor"in n&&"constructor"in t)||typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)?true:false}function wr(n,t,r){var e=Nn.callback||Se,e=e===Se?ut:e;return r?e(n,t,r):e}function br(n){for(var t=n.name,r=Wu[t],e=r?r.length:0;e--;){ | |||
var u=r[e],o=u.func;if(null==o||o==n)return u.name}return t}function xr(n,t,e){var u=Nn.indexOf||Vr,u=u===Vr?r:u;return n?u(n,t,e):u}function Ar(n){n=Oe(n);for(var t=n.length;t--;){var r=n[t][1];n[t][2]=r===r&&!ge(r)}return n}function jr(n,t){var r=null==n?w:n[t];return ye(r)?r:w}function kr(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&nu.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function Ir(n){return n=n.constructor,typeof n=="function"&&n instanceof n||(n=Ve), | |||
new n}function Rr(n,t,r){var e=n.constructor;switch(t){case J:return Dt(n);case M:case q:return new e(+n);case X:case H:case Q:case nn:case tn:case rn:case en:case un:case on:return t=n.buffer,new e(r?Dt(t):t,n.byteOffset,n.length);case V:case G:return new e(n);case Y:var u=new e(n.source,kn.exec(n));u.lastIndex=n.lastIndex}return u}function Or(n,t,r){return null==n||Wr(t,n)||(t=Dr(t),n=1==t.length?n:yt(n,Et(t,0,-1)),t=Zr(t)),t=null==n?n:n[t],null==t?w:t.apply(n,r)}function Er(n){return null!=n&&Sr(Bu(n)); | |||
}function Cr(n,t){return n=typeof n=="number"||On.test(n)?+n:-1,t=null==t?Cu:t,-1<n&&0==n%1&&n<t}function Ur(n,t,r){if(!ge(r))return false;var e=typeof t;return("number"==e?Er(r)&&Cr(t,r.length):"string"==e&&t in r)?(t=r[t],n===n?n===t:t!==t):false}function Wr(n,t){var r=typeof n;return"string"==r&&dn.test(n)||"number"==r?true:Oo(n)?false:!yn.test(n)||null!=t&&n in Br(t)}function $r(n){var t=br(n);return t in zn.prototype?(t=Nn[t],n===t?true:(t=zu(t),!!t&&n===t[0])):false}function Sr(n){return typeof n=="number"&&-1<n&&0==n%1&&n<=Cu; | |||
}function Fr(n,t){return n===w?t:Eo(n,t,Fr)}function Nr(n,t){n=Br(n);for(var r=-1,e=t.length,u={};++r<e;){var o=t[r];o in n&&(u[o]=n[o])}return u}function Tr(n,t){var r={};return ht(n,function(n,e,u){t(n,e,u)&&(r[e]=n)}),r}function Lr(n){for(var t=Re(n),r=t.length,e=r&&n.length,u=!!e&&Sr(e)&&(Oo(n)||pe(n)),o=-1,i=[];++o<r;){var f=t[o];(u&&Cr(f,e)||nu.call(n,f))&&i.push(f)}return i}function zr(n){return null==n?[]:Er(n)?ge(n)?n:Ve(n):Ee(n)}function Br(n){return ge(n)?n:Ve(n)}function Dr(n){if(Oo(n))return n; | |||
var t=[];return u(n).replace(mn,function(n,r,e,u){t.push(e?u.replace(An,"$1"):r||n)}),t}function Mr(n){return n instanceof zn?n.clone():new Ln(n.__wrapped__,n.__chain__,qn(n.__actions__))}function qr(n,t,r){return n&&n.length?((r?Ur(n,t,r):null==t)&&(t=1),Et(n,0>t?0:t)):[]}function Pr(n,t,r){var e=n?n.length:0;return e?((r?Ur(n,t,r):null==t)&&(t=1),t=e-(+t||0),Et(n,0,0>t?0:t)):[]}function Kr(n){return n?n[0]:w}function Vr(n,t,e){var u=n?n.length:0;if(!u)return-1;if(typeof e=="number")e=0>e?bu(u+e,0):e;else if(e)return e=Lt(n,t), | |||
e<u&&(t===t?t===n[e]:n[e]!==n[e])?e:-1;return r(n,t,e||0)}function Zr(n){var t=n?n.length:0;return t?n[t-1]:w}function Yr(n){return qr(n,1)}function Gr(n,t,e,u){if(!n||!n.length)return[];null!=t&&typeof t!="boolean"&&(u=e,e=Ur(n,t,u)?w:t,t=false);var o=wr();if((null!=e||o!==ut)&&(e=o(e,u,3)),t&&xr()==r){t=e;var i;e=-1,u=n.length;for(var o=-1,f=[];++e<u;){var a=n[e],c=t?t(a,e,n):a;e&&i===c||(i=c,f[++o]=a)}n=f}else n=St(n,e);return n}function Jr(n){if(!n||!n.length)return[];var t=-1,r=0;n=Vn(n,function(n){ | |||
return Er(n)?(r=bu(n.length,r),true):void 0});for(var e=Be(r);++t<r;)e[t]=Gn(n,jt(t));return e}function Xr(n,t,r){return n&&n.length?(n=Jr(n),null==t?n:(t=Bt(t,r,4),Gn(n,function(n){return Xn(n,t,w,true)}))):[]}function Hr(n,t){var r=-1,e=n?n.length:0,u={};for(!e||t||Oo(n[0])||(t=[]);++r<e;){var o=n[r];t?u[o]=t[r]:o&&(u[o[0]]=o[1])}return u}function Qr(n){return n=Nn(n),n.__chain__=true,n}function ne(n,t,r){return t.call(r,n)}function te(n,t,r){var e=Oo(n)?Kn:at;return r&&Ur(n,t,r)&&(t=w),(typeof t!="function"||r!==w)&&(t=wr(t,r,3)), | |||
e(n,t)}function re(n,t,r){var e=Oo(n)?Vn:lt;return t=wr(t,r,3),e(n,t)}function ee(n,t,r,e){var u=n?Bu(n):0;return Sr(u)||(n=Ee(n),u=n.length),r=typeof r!="number"||e&&Ur(t,r,e)?0:0>r?bu(u+r,0):r||0,typeof n=="string"||!Oo(n)&&be(n)?r<=u&&-1<n.indexOf(t,r):!!u&&-1<xr(n,t,r)}function ue(n,t,r){var e=Oo(n)?Gn:wt;return t=wr(t,r,3),e(n,t)}function oe(n,t,r){if(r?Ur(n,t,r):null==t){n=zr(n);var e=n.length;return 0<e?n[Rt(0,e-1)]:w}r=-1,n=je(n);var e=n.length,u=e-1;for(t=xu(0>t?0:+t||0,e);++r<t;){var e=Rt(r,u),o=n[e]; | |||
n[e]=n[r],n[r]=o}return n.length=t,n}function ie(n,t,r){var e=Oo(n)?Hn:Ct;return r&&Ur(n,t,r)&&(t=w),(typeof t!="function"||r!==w)&&(t=wr(t,r,3)),e(n,t)}function fe(n,t){var r;if(typeof t!="function"){if(typeof n!="function")throw new Ge(L);var e=n;n=t,t=e}return function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=w),r}}function ae(n,t,r){function e(t,r){r&&iu(r),a=p=h=w,t&&(_=ho(),c=n.apply(s,f),p||a||(f=s=w))}function u(){var n=t-(ho()-l);0>=n||n>t?e(h,a):p=su(u,n)}function o(){e(g,p); | |||
}function i(){if(f=arguments,l=ho(),s=this,h=g&&(p||!y),false===v)var r=y&&!p;else{a||y||(_=l);var e=v-(l-_),i=0>=e||e>v;i?(a&&(a=iu(a)),_=l,c=n.apply(s,f)):a||(a=su(o,e))}return i&&p?p=iu(p):p||t===v||(p=su(u,t)),r&&(i=true,c=n.apply(s,f)),!i||p||a||(f=s=w),c}var f,a,c,l,s,p,h,_=0,v=false,g=true;if(typeof n!="function")throw new Ge(L);if(t=0>t?0:+t||0,true===r)var y=true,g=false;else ge(r)&&(y=!!r.leading,v="maxWait"in r&&bu(+r.maxWait||0,t),g="trailing"in r?!!r.trailing:g);return i.cancel=function(){p&&iu(p),a&&iu(a), | |||
_=0,a=p=h=w},i}function ce(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],o=r.cache;return o.has(u)?o.get(u):(e=n.apply(this,e),r.cache=o.set(u,e),e)}if(typeof n!="function"||t&&typeof t!="function")throw new Ge(L);return r.cache=new ce.Cache,r}function le(n,t){if(typeof n!="function")throw new Ge(L);return t=bu(t===w?n.length-1:+t||0,0),function(){for(var r=arguments,e=-1,u=bu(r.length-t,0),o=Be(u);++e<u;)o[e]=r[t+e];switch(t){case 0:return n.call(this,o);case 1:return n.call(this,r[0],o); | |||
case 2:return n.call(this,r[0],r[1],o)}for(u=Be(t+1),e=-1;++e<t;)u[e]=r[e];return u[t]=o,n.apply(this,u)}}function se(n,t){return n>t}function pe(n){return h(n)&&Er(n)&&nu.call(n,"callee")&&!cu.call(n,"callee")}function he(n,t,r,e){return e=(r=typeof r=="function"?Bt(r,e,3):w)?r(n,t):w,e===w?dt(n,t,r):!!e}function _e(n){return h(n)&&typeof n.message=="string"&&ru.call(n)==P}function ve(n){return ge(n)&&ru.call(n)==K}function ge(n){var t=typeof n;return!!n&&("object"==t||"function"==t)}function ye(n){ | |||
return null==n?false:ve(n)?uu.test(Qe.call(n)):h(n)&&Rn.test(n)}function de(n){return typeof n=="number"||h(n)&&ru.call(n)==V}function me(n){var t;if(!h(n)||ru.call(n)!=Z||pe(n)||!(nu.call(n,"constructor")||(t=n.constructor,typeof t!="function"||t instanceof t)))return false;var r;return ht(n,function(n,t){r=t}),r===w||nu.call(n,r)}function we(n){return ge(n)&&ru.call(n)==Y}function be(n){return typeof n=="string"||h(n)&&ru.call(n)==G}function xe(n){return h(n)&&Sr(n.length)&&!!Sn[ru.call(n)]}function Ae(n,t){ | |||
return n<t}function je(n){var t=n?Bu(n):0;return Sr(t)?t?qn(n):[]:Ee(n)}function ke(n){return et(n,Re(n))}function Ie(n){return gt(n,Re(n))}function Re(n){if(null==n)return[];ge(n)||(n=Ve(n));for(var t=n.length,t=t&&Sr(t)&&(Oo(n)||pe(n))&&t||0,r=n.constructor,e=-1,r=typeof r=="function"&&r.prototype===n,u=Be(t),o=0<t;++e<t;)u[e]=e+"";for(var i in n)o&&Cr(i,t)||"constructor"==i&&(r||!nu.call(n,i))||u.push(i);return u}function Oe(n){n=Br(n);for(var t=-1,r=zo(n),e=r.length,u=Be(e);++t<e;){var o=r[t]; | |||
u[t]=[o,n[o]]}return u}function Ee(n){return Ft(n,zo(n))}function Ce(n){return(n=u(n))&&n.replace(En,a).replace(xn,"")}function Ue(n,t){var r="";if(n=u(n),t=+t,1>t||!n||!mu(t))return r;do t%2&&(r+=n),t=yu(t/2),n+=n;while(t);return r}function We(n,t,r){var e=n;return(n=u(n))?(r?Ur(e,t,r):null==t)?n.slice(g(n),y(n)+1):(t+="",n.slice(o(n,t),i(n,t)+1)):n}function $e(n,t,r){return r&&Ur(n,t,r)&&(t=w),n=u(n),n.match(t||Wn)||[]}function Se(n,t,r){return r&&Ur(n,t,r)&&(t=w),h(n)?Ne(n):ut(n,t)}function Fe(n){ | |||
return n}function Ne(n){return bt(ot(n,true))}function Te(n,t,r){if(null==r){var e=ge(t),u=e?zo(t):w;((u=u&&u.length?gt(t,u):w)?u.length:e)||(u=false,r=t,t=n,n=this)}u||(u=gt(t,zo(t)));var o=true,e=-1,i=ve(n),f=u.length;false===r?o=false:ge(r)&&"chain"in r&&(o=r.chain);for(;++e<f;){r=u[e];var a=t[r];n[r]=a,i&&(n.prototype[r]=function(t){return function(){var r=this.__chain__;if(o||r){var e=n(this.__wrapped__);return(e.__actions__=qn(this.__actions__)).push({func:t,args:arguments,thisArg:n}),e.__chain__=r,e}return t.apply(n,Jn([this.value()],arguments)); | |||
}}(a))}return n}function Le(){}function ze(n){return Wr(n)?jt(n):kt(n)}_=_?Yn.defaults(Zn.Object(),_,Yn.pick(Zn,$n)):Zn;var Be=_.Array,De=_.Date,Me=_.Error,qe=_.Function,Pe=_.Math,Ke=_.Number,Ve=_.Object,Ze=_.RegExp,Ye=_.String,Ge=_.TypeError,Je=Be.prototype,Xe=Ve.prototype,He=Ye.prototype,Qe=qe.prototype.toString,nu=Xe.hasOwnProperty,tu=0,ru=Xe.toString,eu=Zn._,uu=Ze("^"+Qe.call(nu).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ou=_.ArrayBuffer,iu=_.clearTimeout,fu=_.parseFloat,au=Pe.pow,cu=Xe.propertyIsEnumerable,lu=jr(_,"Set"),su=_.setTimeout,pu=Je.splice,hu=_.Uint8Array,_u=jr(_,"WeakMap"),vu=Pe.ceil,gu=jr(Ve,"create"),yu=Pe.floor,du=jr(Be,"isArray"),mu=_.isFinite,wu=jr(Ve,"keys"),bu=Pe.max,xu=Pe.min,Au=jr(De,"now"),ju=_.parseInt,ku=Pe.random,Iu=Ke.NEGATIVE_INFINITY,Ru=Ke.POSITIVE_INFINITY,Ou=4294967294,Eu=2147483647,Cu=9007199254740991,Uu=_u&&new _u,Wu={}; | |||
Nn.support={},Nn.templateSettings={escape:_n,evaluate:vn,interpolate:gn,variable:"",imports:{_:Nn}};var $u=function(){function n(){}return function(t){if(ge(t)){n.prototype=t;var r=new n;n.prototype=w}return r||{}}}(),Su=Vt(_t),Fu=Vt(vt,true),Nu=Zt(),Tu=Zt(true),Lu=Uu?function(n,t){return Uu.set(n,t),n}:Fe,zu=Uu?function(n){return Uu.get(n)}:Le,Bu=jt("length"),Du=function(){var n=0,t=0;return function(r,e){var u=ho(),o=S-(u-t);if(t=u,0<o){if(++n>=$)return r}else n=0;return Lu(r,e)}}(),Mu=le(function(n,t){ | |||
return h(n)&&Er(n)?ft(n,pt(t,false,true)):[]}),qu=tr(),Pu=tr(true),Ku=le(function(n){for(var t=n.length,e=t,u=Be(l),o=xr(),i=o==r,f=[];e--;){var a=n[e]=Er(a=n[e])?a:[];u[e]=i&&120<=a.length&&gu&&lu?new Dn(e&&a):null}var i=n[0],c=-1,l=i?i.length:0,s=u[0];n:for(;++c<l;)if(a=i[c],0>(s?Mn(s,a):o(f,a,0))){for(e=t;--e;){var p=u[e];if(0>(p?Mn(p,a):o(n[e],a,0)))continue n}s&&s.push(a),f.push(a)}return f}),Vu=le(function(t,r){r=pt(r);var e=rt(t,r);return It(t,r.sort(n)),e}),Zu=vr(),Yu=vr(true),Gu=le(function(n){return St(pt(n,false,true)); | |||
}),Ju=le(function(n,t){return Er(n)?ft(n,t):[]}),Xu=le(Jr),Hu=le(function(n){var t=n.length,r=2<t?n[t-2]:w,e=1<t?n[t-1]:w;return 2<t&&typeof r=="function"?t-=2:(r=1<t&&typeof e=="function"?(--t,e):w,e=w),n.length=t,Xr(n,r,e)}),Qu=le(function(n){return n=pt(n),this.thru(function(t){t=Oo(t)?t:[Br(t)];for(var r=n,e=-1,u=t.length,o=-1,i=r.length,f=Be(u+i);++e<u;)f[e]=t[e];for(;++o<i;)f[e++]=r[o];return f})}),no=le(function(n,t){return rt(n,pt(t))}),to=Pt(function(n,t,r){nu.call(n,r)?++n[r]:n[r]=1}),ro=nr(Su),eo=nr(Fu,true),uo=ur(Pn,Su),oo=ur(function(n,t){ | |||
for(var r=n.length;r--&&false!==t(n[r],r,n););return n},Fu),io=Pt(function(n,t,r){nu.call(n,r)?n[r].push(t):n[r]=[t]}),fo=Pt(function(n,t,r){n[r]=t}),ao=le(function(n,t,r){var e=-1,u=typeof t=="function",o=Wr(t),i=Er(n)?Be(n.length):[];return Su(n,function(n){var f=u?t:o&&null!=n?n[t]:w;i[++e]=f?f.apply(n,r):Or(n,t,r)}),i}),co=Pt(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),lo=lr(Xn,Su),so=lr(function(n,t,r,e){var u=n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r},Fu),po=le(function(n,t){ | |||
if(null==n)return[];var r=t[2];return r&&Ur(t[0],t[1],r)&&(t.length=1),Wt(n,pt(t),[])}),ho=Au||function(){return(new De).getTime()},_o=le(function(n,t,r){var e=x;if(r.length)var u=v(r,_o.placeholder),e=e|R;return gr(n,e,t,r,u)}),vo=le(function(n,t){t=t.length?pt(t):Ie(n);for(var r=-1,e=t.length;++r<e;){var u=t[r];n[u]=gr(n[u],x,n)}return n}),go=le(function(n,t,r){var e=x|A;if(r.length)var u=v(r,go.placeholder),e=e|R;return gr(t,e,n,r,u)}),yo=Xt(k),mo=Xt(I),wo=le(function(n,t){return it(n,1,t)}),bo=le(function(n,t,r){ | |||
return it(n,t,r)}),xo=er(),Ao=er(true),jo=le(function(n,t){if(t=pt(t),typeof n!="function"||!Kn(t,e))throw new Ge(L);var r=t.length;return le(function(e){for(var u=xu(e.length,r);u--;)e[u]=t[u](e[u]);return n.apply(this,e)})}),ko=cr(R),Io=cr(O),Ro=le(function(n,t){return gr(n,C,w,w,w,pt(t))}),Oo=du||function(n){return h(n)&&Sr(n.length)&&ru.call(n)==D},Eo=Kt(At),Co=Kt(function(n,t,r){return r?nt(n,t,r):tt(n,t)}),Uo=Ht(Co,function(n,t){return n===w?t:n}),Wo=Ht(Eo,Fr),$o=rr(_t),So=rr(vt),Fo=or(Nu),No=or(Tu),To=ir(_t),Lo=ir(vt),zo=wu?function(n){ | |||
var t=null==n?w:n.constructor;return typeof t=="function"&&t.prototype===n||typeof n!="function"&&Er(n)?Lr(n):ge(n)?wu(n):[]}:Lr,Bo=fr(true),Do=fr(),Mo=le(function(n,t){if(null==n)return{};if("function"!=typeof t[0])return t=Gn(pt(t),Ye),Nr(n,ft(Re(n),t));var r=Bt(t[0],t[1],3);return Tr(n,function(n,t,e){return!r(n,t,e)})}),qo=le(function(n,t){return null==n?{}:"function"==typeof t[0]?Tr(n,Bt(t[0],t[1],3)):Nr(n,pt(t))}),Po=Gt(function(n,t,r){return t=t.toLowerCase(),n+(r?t.charAt(0).toUpperCase()+t.slice(1):t); | |||
}),Ko=Gt(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()}),Vo=ar(),Zo=ar(true),Yo=Gt(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),Go=Gt(function(n,t,r){return n+(r?" ":"")+(t.charAt(0).toUpperCase()+t.slice(1))}),Jo=le(function(n,t){try{return n.apply(w,t)}catch(r){return _e(r)?r:new Me(r)}}),Xo=le(function(n,t){return function(r){return Or(r,n,t)}}),Ho=le(function(n,t){return function(r){return Or(n,r,t)}}),Qo=_r("ceil"),ni=_r("floor"),ti=Qt(se,Iu),ri=Qt(Ae,Ru),ei=_r("round");return Nn.prototype=Tn.prototype, | |||
Ln.prototype=$u(Tn.prototype),Ln.prototype.constructor=Ln,zn.prototype=$u(Tn.prototype),zn.prototype.constructor=zn,Bn.prototype["delete"]=function(n){return this.has(n)&&delete this.__data__[n]},Bn.prototype.get=function(n){return"__proto__"==n?w:this.__data__[n]},Bn.prototype.has=function(n){return"__proto__"!=n&&nu.call(this.__data__,n)},Bn.prototype.set=function(n,t){return"__proto__"!=n&&(this.__data__[n]=t),this},Dn.prototype.push=function(n){var t=this.data;typeof n=="string"||ge(n)?t.set.add(n):t.hash[n]=true; | |||
},ce.Cache=Bn,Nn.after=function(n,t){if(typeof t!="function"){if(typeof n!="function")throw new Ge(L);var r=n;n=t,t=r}return n=mu(n=+n)?n:0,function(){return 1>--n?t.apply(this,arguments):void 0}},Nn.ary=function(n,t,r){return r&&Ur(n,t,r)&&(t=w),t=n&&null==t?n.length:bu(+t||0,0),gr(n,E,w,w,w,w,t)},Nn.assign=Co,Nn.at=no,Nn.before=fe,Nn.bind=_o,Nn.bindAll=vo,Nn.bindKey=go,Nn.callback=Se,Nn.chain=Qr,Nn.chunk=function(n,t,r){t=(r?Ur(n,t,r):null==t)?1:bu(yu(t)||1,1),r=0;for(var e=n?n.length:0,u=-1,o=Be(vu(e/t));r<e;)o[++u]=Et(n,r,r+=t); | |||
return o},Nn.compact=function(n){for(var t=-1,r=n?n.length:0,e=-1,u=[];++t<r;){var o=n[t];o&&(u[++e]=o)}return u},Nn.constant=function(n){return function(){return n}},Nn.countBy=to,Nn.create=function(n,t,r){var e=$u(n);return r&&Ur(n,t,r)&&(t=w),t?tt(e,t):e},Nn.curry=yo,Nn.curryRight=mo,Nn.debounce=ae,Nn.defaults=Uo,Nn.defaultsDeep=Wo,Nn.defer=wo,Nn.delay=bo,Nn.difference=Mu,Nn.drop=qr,Nn.dropRight=Pr,Nn.dropRightWhile=function(n,t,r){return n&&n.length?Nt(n,wr(t,r,3),true,true):[]},Nn.dropWhile=function(n,t,r){ | |||
return n&&n.length?Nt(n,wr(t,r,3),true):[]},Nn.fill=function(n,t,r,e){var u=n?n.length:0;if(!u)return[];for(r&&typeof r!="number"&&Ur(n,t,r)&&(r=0,e=u),u=n.length,r=null==r?0:+r||0,0>r&&(r=-r>u?0:u+r),e=e===w||e>u?u:+e||0,0>e&&(e+=u),u=r>e?0:e>>>0,r>>>=0;r<u;)n[r++]=t;return n},Nn.filter=re,Nn.flatten=function(n,t,r){var e=n?n.length:0;return r&&Ur(n,t,r)&&(t=false),e?pt(n,t):[]},Nn.flattenDeep=function(n){return n&&n.length?pt(n,true):[]},Nn.flow=xo,Nn.flowRight=Ao,Nn.forEach=uo,Nn.forEachRight=oo,Nn.forIn=Fo, | |||
Nn.forInRight=No,Nn.forOwn=To,Nn.forOwnRight=Lo,Nn.functions=Ie,Nn.groupBy=io,Nn.indexBy=fo,Nn.initial=function(n){return Pr(n,1)},Nn.intersection=Ku,Nn.invert=function(n,t,r){r&&Ur(n,t,r)&&(t=w),r=-1;for(var e=zo(n),u=e.length,o={};++r<u;){var i=e[r],f=n[i];t?nu.call(o,f)?o[f].push(i):o[f]=[i]:o[f]=i}return o},Nn.invoke=ao,Nn.keys=zo,Nn.keysIn=Re,Nn.map=ue,Nn.mapKeys=Bo,Nn.mapValues=Do,Nn.matches=Ne,Nn.matchesProperty=function(n,t){return xt(n,ot(t,true))},Nn.memoize=ce,Nn.merge=Eo,Nn.method=Xo,Nn.methodOf=Ho, | |||
Nn.mixin=Te,Nn.modArgs=jo,Nn.negate=function(n){if(typeof n!="function")throw new Ge(L);return function(){return!n.apply(this,arguments)}},Nn.omit=Mo,Nn.once=function(n){return fe(2,n)},Nn.pairs=Oe,Nn.partial=ko,Nn.partialRight=Io,Nn.partition=co,Nn.pick=qo,Nn.pluck=function(n,t){return ue(n,ze(t))},Nn.property=ze,Nn.propertyOf=function(n){return function(t){return yt(n,Dr(t),t+"")}},Nn.pull=function(){var n=arguments,t=n[0];if(!t||!t.length)return t;for(var r=0,e=xr(),u=n.length;++r<u;)for(var o=0,i=n[r];-1<(o=e(t,i,o));)pu.call(t,o,1); | |||
return t},Nn.pullAt=Vu,Nn.range=function(n,t,r){r&&Ur(n,t,r)&&(t=r=w),n=+n||0,r=null==r?1:+r||0,null==t?(t=n,n=0):t=+t||0;var e=-1;t=bu(vu((t-n)/(r||1)),0);for(var u=Be(t);++e<t;)u[e]=n,n+=r;return u},Nn.rearg=Ro,Nn.reject=function(n,t,r){var e=Oo(n)?Vn:lt;return t=wr(t,r,3),e(n,function(n,r,e){return!t(n,r,e)})},Nn.remove=function(n,t,r){var e=[];if(!n||!n.length)return e;var u=-1,o=[],i=n.length;for(t=wr(t,r,3);++u<i;)r=n[u],t(r,u,n)&&(e.push(r),o.push(u));return It(n,o),e},Nn.rest=Yr,Nn.restParam=le, | |||
Nn.set=function(n,t,r){if(null==n)return n;var e=t+"";t=null!=n[e]||Wr(t,n)?[e]:Dr(t);for(var e=-1,u=t.length,o=u-1,i=n;null!=i&&++e<u;){var f=t[e];ge(i)&&(e==o?i[f]=r:null==i[f]&&(i[f]=Cr(t[e+1])?[]:{})),i=i[f]}return n},Nn.shuffle=function(n){return oe(n,Ru)},Nn.slice=function(n,t,r){var e=n?n.length:0;return e?(r&&typeof r!="number"&&Ur(n,t,r)&&(t=0,r=e),Et(n,t,r)):[]},Nn.sortBy=function(n,t,r){if(null==n)return[];r&&Ur(n,t,r)&&(t=w);var e=-1;return t=wr(t,r,3),n=wt(n,function(n,r,u){return{a:t(n,r,u), | |||
b:++e,c:n}}),Ut(n,f)},Nn.sortByAll=po,Nn.sortByOrder=function(n,t,r,e){return null==n?[]:(e&&Ur(t,r,e)&&(r=w),Oo(t)||(t=null==t?[]:[t]),Oo(r)||(r=null==r?[]:[r]),Wt(n,t,r))},Nn.spread=function(n){if(typeof n!="function")throw new Ge(L);return function(t){return n.apply(this,t)}},Nn.take=function(n,t,r){return n&&n.length?((r?Ur(n,t,r):null==t)&&(t=1),Et(n,0,0>t?0:t)):[]},Nn.takeRight=function(n,t,r){var e=n?n.length:0;return e?((r?Ur(n,t,r):null==t)&&(t=1),t=e-(+t||0),Et(n,0>t?0:t)):[]},Nn.takeRightWhile=function(n,t,r){ | |||
return n&&n.length?Nt(n,wr(t,r,3),false,true):[]},Nn.takeWhile=function(n,t,r){return n&&n.length?Nt(n,wr(t,r,3)):[]},Nn.tap=function(n,t,r){return t.call(r,n),n},Nn.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new Ge(L);return false===r?e=false:ge(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),ae(n,t,{leading:e,maxWait:+t,trailing:u})},Nn.thru=ne,Nn.times=function(n,t,r){if(n=yu(n),1>n||!mu(n))return[];var e=-1,u=Be(xu(n,4294967295));for(t=Bt(t,r,1);++e<n;)4294967295>e?u[e]=t(e):t(e); | |||
return u},Nn.toArray=je,Nn.toPlainObject=ke,Nn.transform=function(n,t,r,e){var u=Oo(n)||xe(n);return t=wr(t,e,4),null==r&&(u||ge(n)?(e=n.constructor,r=u?Oo(n)?new e:[]:$u(ve(e)?e.prototype:w)):r={}),(u?Pn:_t)(n,function(n,e,u){return t(r,n,e,u)}),r},Nn.union=Gu,Nn.uniq=Gr,Nn.unzip=Jr,Nn.unzipWith=Xr,Nn.values=Ee,Nn.valuesIn=function(n){return Ft(n,Re(n))},Nn.where=function(n,t){return re(n,bt(t))},Nn.without=Ju,Nn.wrap=function(n,t){return t=null==t?Fe:t,gr(t,R,w,[n],[])},Nn.xor=function(){for(var n=-1,t=arguments.length;++n<t;){ | |||
var r=arguments[n];if(Er(r))var e=e?Jn(ft(e,r),ft(r,e)):r}return e?St(e):[]},Nn.zip=Xu,Nn.zipObject=Hr,Nn.zipWith=Hu,Nn.backflow=Ao,Nn.collect=ue,Nn.compose=Ao,Nn.each=uo,Nn.eachRight=oo,Nn.extend=Co,Nn.iteratee=Se,Nn.methods=Ie,Nn.object=Hr,Nn.select=re,Nn.tail=Yr,Nn.unique=Gr,Te(Nn,Nn),Nn.add=function(n,t){return(+n||0)+(+t||0)},Nn.attempt=Jo,Nn.camelCase=Po,Nn.capitalize=function(n){return(n=u(n))&&n.charAt(0).toUpperCase()+n.slice(1)},Nn.ceil=Qo,Nn.clone=function(n,t,r,e){return t&&typeof t!="boolean"&&Ur(n,t,r)?t=false:typeof t=="function"&&(e=r, | |||
r=t,t=false),typeof r=="function"?ot(n,t,Bt(r,e,1)):ot(n,t)},Nn.cloneDeep=function(n,t,r){return typeof t=="function"?ot(n,true,Bt(t,r,1)):ot(n,true)},Nn.deburr=Ce,Nn.endsWith=function(n,t,r){n=u(n),t+="";var e=n.length;return r=r===w?e:xu(0>r?0:+r||0,e),r-=t.length,0<=r&&n.indexOf(t,r)==r},Nn.escape=function(n){return(n=u(n))&&hn.test(n)?n.replace(sn,c):n},Nn.escapeRegExp=function(n){return(n=u(n))&&bn.test(n)?n.replace(wn,l):n||"(?:)"},Nn.every=te,Nn.find=ro,Nn.findIndex=qu,Nn.findKey=$o,Nn.findLast=eo, | |||
Nn.findLastIndex=Pu,Nn.findLastKey=So,Nn.findWhere=function(n,t){return ro(n,bt(t))},Nn.first=Kr,Nn.floor=ni,Nn.get=function(n,t,r){return n=null==n?w:yt(n,Dr(t),t+""),n===w?r:n},Nn.gt=se,Nn.gte=function(n,t){return n>=t},Nn.has=function(n,t){if(null==n)return false;var r=nu.call(n,t);if(!r&&!Wr(t)){if(t=Dr(t),n=1==t.length?n:yt(n,Et(t,0,-1)),null==n)return false;t=Zr(t),r=nu.call(n,t)}return r||Sr(n.length)&&Cr(t,n.length)&&(Oo(n)||pe(n))},Nn.identity=Fe,Nn.includes=ee,Nn.indexOf=Vr,Nn.inRange=function(n,t,r){ | |||
return t=+t||0,r===w?(r=t,t=0):r=+r||0,n>=xu(t,r)&&n<bu(t,r)},Nn.isArguments=pe,Nn.isArray=Oo,Nn.isBoolean=function(n){return true===n||false===n||h(n)&&ru.call(n)==M},Nn.isDate=function(n){return h(n)&&ru.call(n)==q},Nn.isElement=function(n){return!!n&&1===n.nodeType&&h(n)&&!me(n)},Nn.isEmpty=function(n){return null==n?true:Er(n)&&(Oo(n)||be(n)||pe(n)||h(n)&&ve(n.splice))?!n.length:!zo(n).length},Nn.isEqual=he,Nn.isError=_e,Nn.isFinite=function(n){return typeof n=="number"&&mu(n)},Nn.isFunction=ve,Nn.isMatch=function(n,t,r,e){ | |||
return r=typeof r=="function"?Bt(r,e,3):w,mt(n,Ar(t),r)},Nn.isNaN=function(n){return de(n)&&n!=+n},Nn.isNative=ye,Nn.isNull=function(n){return null===n},Nn.isNumber=de,Nn.isObject=ge,Nn.isPlainObject=me,Nn.isRegExp=we,Nn.isString=be,Nn.isTypedArray=xe,Nn.isUndefined=function(n){return n===w},Nn.kebabCase=Ko,Nn.last=Zr,Nn.lastIndexOf=function(n,t,r){var e=n?n.length:0;if(!e)return-1;var u=e;if(typeof r=="number")u=(0>r?bu(e+r,0):xu(r||0,e-1))+1;else if(r)return u=Lt(n,t,true)-1,n=n[u],(t===t?t===n:n!==n)?u:-1; | |||
if(t!==t)return p(n,u,true);for(;u--;)if(n[u]===t)return u;return-1},Nn.lt=Ae,Nn.lte=function(n,t){return n<=t},Nn.max=ti,Nn.min=ri,Nn.noConflict=function(){return Zn._=eu,this},Nn.noop=Le,Nn.now=ho,Nn.pad=function(n,t,r){n=u(n),t=+t;var e=n.length;return e<t&&mu(t)?(e=(t-e)/2,t=yu(e),e=vu(e),r=pr("",e,r),r.slice(0,t)+n+r):n},Nn.padLeft=Vo,Nn.padRight=Zo,Nn.parseInt=function(n,t,r){return(r?Ur(n,t,r):null==t)?t=0:t&&(t=+t),n=We(n),ju(n,t||(In.test(n)?16:10))},Nn.random=function(n,t,r){r&&Ur(n,t,r)&&(t=r=w); | |||
var e=null==n,u=null==t;return null==r&&(u&&typeof n=="boolean"?(r=n,n=1):typeof t=="boolean"&&(r=t,u=true)),e&&u&&(t=1,u=false),n=+n||0,u?(t=n,n=0):t=+t||0,r||n%1||t%1?(r=ku(),xu(n+r*(t-n+fu("1e-"+((r+"").length-1))),t)):Rt(n,t)},Nn.reduce=lo,Nn.reduceRight=so,Nn.repeat=Ue,Nn.result=function(n,t,r){var e=null==n?w:n[t];return e===w&&(null==n||Wr(t,n)||(t=Dr(t),n=1==t.length?n:yt(n,Et(t,0,-1)),e=null==n?w:n[Zr(t)]),e=e===w?r:e),ve(e)?e.call(n):e},Nn.round=ei,Nn.runInContext=m,Nn.size=function(n){var t=n?Bu(n):0; | |||
return Sr(t)?t:zo(n).length},Nn.snakeCase=Yo,Nn.some=ie,Nn.sortedIndex=Zu,Nn.sortedLastIndex=Yu,Nn.startCase=Go,Nn.startsWith=function(n,t,r){return n=u(n),r=null==r?0:xu(0>r?0:+r||0,n.length),n.lastIndexOf(t,r)==r},Nn.sum=function(n,t,r){if(r&&Ur(n,t,r)&&(t=w),t=wr(t,r,3),1==t.length){n=Oo(n)?n:zr(n),r=n.length;for(var e=0;r--;)e+=+t(n[r])||0;n=e}else n=$t(n,t);return n},Nn.template=function(n,t,r){var e=Nn.templateSettings;r&&Ur(n,t,r)&&(t=r=w),n=u(n),t=nt(tt({},r||t),e,Qn),r=nt(tt({},t.imports),e.imports,Qn); | |||
var o,i,f=zo(r),a=Ft(r,f),c=0;r=t.interpolate||Cn;var l="__p+='";r=Ze((t.escape||Cn).source+"|"+r.source+"|"+(r===gn?jn:Cn).source+"|"+(t.evaluate||Cn).source+"|$","g");var p="sourceURL"in t?"//# sourceURL="+t.sourceURL+"\n":"";if(n.replace(r,function(t,r,e,u,f,a){return e||(e=u),l+=n.slice(c,a).replace(Un,s),r&&(o=true,l+="'+__e("+r+")+'"),f&&(i=true,l+="';"+f+";\n__p+='"),e&&(l+="'+((__t=("+e+"))==null?'':__t)+'"),c=a+t.length,t}),l+="';",(t=t.variable)||(l="with(obj){"+l+"}"),l=(i?l.replace(fn,""):l).replace(an,"$1").replace(cn,"$1;"), | |||
l="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(o?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}",t=Jo(function(){return qe(f,p+"return "+l).apply(w,a)}),t.source=l,_e(t))throw t;return t},Nn.trim=We,Nn.trimLeft=function(n,t,r){var e=n;return(n=u(n))?n.slice((r?Ur(e,t,r):null==t)?g(n):o(n,t+"")):n},Nn.trimRight=function(n,t,r){var e=n;return(n=u(n))?(r?Ur(e,t,r):null==t)?n.slice(0,y(n)+1):n.slice(0,i(n,t+"")+1):n; | |||
},Nn.trunc=function(n,t,r){r&&Ur(n,t,r)&&(t=w);var e=U;if(r=W,null!=t)if(ge(t)){var o="separator"in t?t.separator:o,e="length"in t?+t.length||0:e;r="omission"in t?u(t.omission):r}else e=+t||0;if(n=u(n),e>=n.length)return n;if(e-=r.length,1>e)return r;if(t=n.slice(0,e),null==o)return t+r;if(we(o)){if(n.slice(e).search(o)){var i,f=n.slice(0,e);for(o.global||(o=Ze(o.source,(kn.exec(o)||"")+"g")),o.lastIndex=0;n=o.exec(f);)i=n.index;t=t.slice(0,null==i?e:i)}}else n.indexOf(o,e)!=e&&(o=t.lastIndexOf(o), | |||
-1<o&&(t=t.slice(0,o)));return t+r},Nn.unescape=function(n){return(n=u(n))&&pn.test(n)?n.replace(ln,d):n},Nn.uniqueId=function(n){var t=++tu;return u(n)+t},Nn.words=$e,Nn.all=te,Nn.any=ie,Nn.contains=ee,Nn.eq=he,Nn.detect=ro,Nn.foldl=lo,Nn.foldr=so,Nn.head=Kr,Nn.include=ee,Nn.inject=lo,Te(Nn,function(){var n={};return _t(Nn,function(t,r){Nn.prototype[r]||(n[r]=t)}),n}(),false),Nn.sample=oe,Nn.prototype.sample=function(n){return this.__chain__||null!=n?this.thru(function(t){return oe(t,n)}):oe(this.value()); | |||
},Nn.VERSION=b,Pn("bind bindKey curry curryRight partial partialRight".split(" "),function(n){Nn[n].placeholder=Nn}),Pn(["drop","take"],function(n,t){zn.prototype[n]=function(r){var e=this.__filtered__;if(e&&!t)return new zn(this);r=null==r?1:bu(yu(r)||0,0);var u=this.clone();return e?u.__takeCount__=xu(u.__takeCount__,r):u.__views__.push({size:r,type:n+(0>u.__dir__?"Right":"")}),u},zn.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),Pn(["filter","map","takeWhile"],function(n,t){ | |||
var r=t+1,e=r!=T;zn.prototype[n]=function(n,t){var u=this.clone();return u.__iteratees__.push({iteratee:wr(n,t,1),type:r}),u.__filtered__=u.__filtered__||e,u}}),Pn(["first","last"],function(n,t){var r="take"+(t?"Right":"");zn.prototype[n]=function(){return this[r](1).value()[0]}}),Pn(["initial","rest"],function(n,t){var r="drop"+(t?"":"Right");zn.prototype[n]=function(){return this.__filtered__?new zn(this):this[r](1)}}),Pn(["pluck","where"],function(n,t){var r=t?"filter":"map",e=t?bt:ze;zn.prototype[n]=function(n){ | |||
return this[r](e(n))}}),zn.prototype.compact=function(){return this.filter(Fe)},zn.prototype.reject=function(n,t){return n=wr(n,t,1),this.filter(function(t){return!n(t)})},zn.prototype.slice=function(n,t){n=null==n?0:+n||0;var r=this;return r.__filtered__&&(0<n||0>t)?new zn(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),t!==w&&(t=+t||0,r=0>t?r.dropRight(-t):r.take(t-n)),r)},zn.prototype.takeRightWhile=function(n,t){return this.reverse().takeWhile(n,t).reverse()},zn.prototype.toArray=function(){return this.take(Ru); | |||
},_t(zn.prototype,function(n,t){var r=/^(?:filter|map|reject)|While$/.test(t),e=/^(?:first|last)$/.test(t),u=Nn[e?"take"+("last"==t?"Right":""):t];u&&(Nn.prototype[t]=function(){function t(n){return e&&i?u(n,1)[0]:u.apply(w,Jn([n],o))}var o=e?[1]:arguments,i=this.__chain__,f=this.__wrapped__,a=!!this.__actions__.length,c=f instanceof zn,l=o[0],s=c||Oo(f);return s&&r&&typeof l=="function"&&1!=l.length&&(c=s=false),l={func:ne,args:[t],thisArg:w},a=c&&!a,e&&!i?a?(f=f.clone(),f.__actions__.push(l),n.call(f)):u.call(w,this.value())[0]:!e&&s?(f=a?f:new zn(this), | |||
f=n.apply(f,o),f.__actions__.push(l),new Ln(f,i)):this.thru(t)})}),Pn("join pop push replace shift sort splice split unshift".split(" "),function(n){var t=(/^(?:replace|split)$/.test(n)?He:Je)[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:join|pop|replace|shift)$/.test(n);Nn.prototype[n]=function(){var n=arguments;return e&&!this.__chain__?t.apply(this.value(),n):this[r](function(r){return t.apply(r,n)})}}),_t(zn.prototype,function(n,t){var r=Nn[t];if(r){var e=r.name;(Wu[e]||(Wu[e]=[])).push({ | |||
name:t,func:r})}}),Wu[sr(w,A).name]=[{name:"wrapper",func:w}],zn.prototype.clone=function(){var n=new zn(this.__wrapped__);return n.__actions__=qn(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=qn(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=qn(this.__views__),n},zn.prototype.reverse=function(){if(this.__filtered__){var n=new zn(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},zn.prototype.value=function(){ | |||
var n,t=this.__wrapped__.value(),r=this.__dir__,e=Oo(t),u=0>r,o=e?t.length:0;n=o;for(var i=this.__views__,f=0,a=-1,c=i.length;++a<c;){var l=i[a],s=l.size;switch(l.type){case"drop":f+=s;break;case"dropRight":n-=s;break;case"take":n=xu(n,f+s);break;case"takeRight":f=bu(f,n-s)}}if(n={start:f,end:n},i=n.start,f=n.end,n=f-i,i=u?f:i-1,f=this.__iteratees__,a=f.length,c=0,l=xu(n,this.__takeCount__),!e||o<F||o==n&&l==n)return Tt(u&&e?t.reverse():t,this.__actions__);e=[];n:for(;n--&&c<l;){for(i+=r,u=-1,o=t[i];++u<a;){ | |||
var p=f[u],s=p.type,p=p.iteratee(o);if(s==T)o=p;else if(!p){if(s==N)continue n;break n}}e[c++]=o}return e},Nn.prototype.chain=function(){return Qr(this)},Nn.prototype.commit=function(){return new Ln(this.value(),this.__chain__)},Nn.prototype.concat=Qu,Nn.prototype.plant=function(n){for(var t,r=this;r instanceof Tn;){var e=Mr(r);t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},Nn.prototype.reverse=function(){function n(n){return r&&0>r.__dir__?n:n.reverse()}var t=this.__wrapped__; | |||
if(t instanceof zn){var r=t;return this.__actions__.length&&(r=new zn(this)),r=r.reverse(),r.__actions__.push({func:ne,args:[n],thisArg:w}),new Ln(r,this.__chain__)}return this.thru(n)},Nn.prototype.toString=function(){return this.value()+""},Nn.prototype.run=Nn.prototype.toJSON=Nn.prototype.valueOf=Nn.prototype.value=function(){return Tt(this.__wrapped__,this.__actions__)},Nn.prototype.collect=Nn.prototype.map,Nn.prototype.head=Nn.prototype.first,Nn.prototype.select=Nn.prototype.filter,Nn.prototype.tail=Nn.prototype.rest, | |||
Nn}var w,b="3.10.0",x=1,A=2,j=4,k=8,I=16,R=32,O=64,E=128,C=256,U=30,W="...",$=150,S=16,F=200,N=1,T=2,L="Expected a function",z="__lodash_placeholder__",B="[object Arguments]",D="[object Array]",M="[object Boolean]",q="[object Date]",P="[object Error]",K="[object Function]",V="[object Number]",Z="[object Object]",Y="[object RegExp]",G="[object String]",J="[object ArrayBuffer]",X="[object Float32Array]",H="[object Float64Array]",Q="[object Int8Array]",nn="[object Int16Array]",tn="[object Int32Array]",rn="[object Uint8Array]",en="[object Uint8ClampedArray]",un="[object Uint16Array]",on="[object Uint32Array]",fn=/\b__p\+='';/g,an=/\b(__p\+=)''\+/g,cn=/(__e\(.*?\)|\b__t\))\+'';/g,ln=/&(?:amp|lt|gt|quot|#39|#96);/g,sn=/[&<>"'`]/g,pn=RegExp(ln.source),hn=RegExp(sn.source),_n=/<%-([\s\S]+?)%>/g,vn=/<%([\s\S]+?)%>/g,gn=/<%=([\s\S]+?)%>/g,yn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,dn=/^\w*$/,mn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g,wn=/^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,bn=RegExp(wn.source),xn=/[\u0300-\u036f\ufe20-\ufe23]/g,An=/\\(\\)?/g,jn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,kn=/\w*$/,In=/^0[xX]/,Rn=/^\[object .+?Constructor\]$/,On=/^\d+$/,En=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,Cn=/($^)/,Un=/['\n\r\u2028\u2029\\]/g,Wn=RegExp("[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?=[A-Z\\xc0-\\xd6\\xd8-\\xde][a-z\\xdf-\\xf6\\xf8-\\xff]+)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+|[A-Z\\xc0-\\xd6\\xd8-\\xde]+|[0-9]+","g"),$n="Array ArrayBuffer Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Math Number Object RegExp Set String _ clearTimeout isFinite parseFloat parseInt setTimeout TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap".split(" "),Sn={}; | |||
Sn[X]=Sn[H]=Sn[Q]=Sn[nn]=Sn[tn]=Sn[rn]=Sn[en]=Sn[un]=Sn[on]=true,Sn[B]=Sn[D]=Sn[J]=Sn[M]=Sn[q]=Sn[P]=Sn[K]=Sn["[object Map]"]=Sn[V]=Sn[Z]=Sn[Y]=Sn["[object Set]"]=Sn[G]=Sn["[object WeakMap]"]=false;var Fn={};Fn[B]=Fn[D]=Fn[J]=Fn[M]=Fn[q]=Fn[X]=Fn[H]=Fn[Q]=Fn[nn]=Fn[tn]=Fn[V]=Fn[Z]=Fn[Y]=Fn[G]=Fn[rn]=Fn[en]=Fn[un]=Fn[on]=true,Fn[P]=Fn[K]=Fn["[object Map]"]=Fn["[object Set]"]=Fn["[object WeakMap]"]=false;var Nn={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a", | |||
"\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y", | |||
"\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss"},Tn={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},Ln={"&":"&","<":"<",">":">",""":'"',"'":"'","`":"`"},zn={"function":true,object:true},Bn={0:"x30",1:"x31",2:"x32",3:"x33",4:"x34",5:"x35",6:"x36",7:"x37",8:"x38",9:"x39",A:"x41",B:"x42",C:"x43",D:"x44",E:"x45",F:"x46",a:"x61",b:"x62",c:"x63",d:"x64",e:"x65",f:"x66",n:"x6e",r:"x72",t:"x74",u:"x75",v:"x76",x:"x78"},Dn={"\\":"\\", | |||
"'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Mn=zn[typeof exports]&&exports&&!exports.nodeType&&exports,qn=zn[typeof module]&&module&&!module.nodeType&&module,Pn=zn[typeof self]&&self&&self.Object&&self,Kn=zn[typeof window]&&window&&window.Object&&window,Vn=qn&&qn.exports===Mn&&Mn,Zn=Mn&&qn&&typeof global=="object"&&global&&global.Object&&global||Kn!==(this&&this.window)&&Kn||Pn||this,Yn=m();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Zn._=Yn, define(function(){ | |||
return Yn})):Mn&&qn?Vn?(qn.exports=Yn)._=Yn:Mn._=Yn:Zn._=Yn}).call(this); |
@ -0,0 +1,420 @@ | |||
/**! | |||
* AngularJS file upload/drop directive and service with progress and abort | |||
* FileAPI Flash shim for old browsers not supporting FormData | |||
* @author Danial <danial.farid@gmail.com> | |||
* @version 7.2.1 | |||
*/ | |||
(function () { | |||
/** @namespace FileAPI.noContentTimeout */ | |||
function patchXHR(fnName, newFn) { | |||
window.XMLHttpRequest.prototype[fnName] = newFn(window.XMLHttpRequest.prototype[fnName]); | |||
} | |||
function redefineProp(xhr, prop, fn) { | |||
try { | |||
Object.defineProperty(xhr, prop, {get: fn}); | |||
} catch (e) {/*ignore*/ | |||
} | |||
} | |||
if (!window.FileAPI) { | |||
window.FileAPI = {}; | |||
} | |||
FileAPI.shouldLoad = (window.XMLHttpRequest && !window.FormData) || FileAPI.forceLoad; | |||
if (FileAPI.shouldLoad) { | |||
var initializeUploadListener = function (xhr) { | |||
if (!xhr.__listeners) { | |||
if (!xhr.upload) xhr.upload = {}; | |||
xhr.__listeners = []; | |||
var origAddEventListener = xhr.upload.addEventListener; | |||
xhr.upload.addEventListener = function (t, fn) { | |||
xhr.__listeners[t] = fn; | |||
if (origAddEventListener) origAddEventListener.apply(this, arguments); | |||
}; | |||
} | |||
}; | |||
patchXHR('open', function (orig) { | |||
return function (m, url, b) { | |||
initializeUploadListener(this); | |||
this.__url = url; | |||
try { | |||
orig.apply(this, [m, url, b]); | |||
} catch (e) { | |||
if (e.message.indexOf('Access is denied') > -1) { | |||
this.__origError = e; | |||
orig.apply(this, [m, '_fix_for_ie_crossdomain__', b]); | |||
} | |||
} | |||
}; | |||
}); | |||
patchXHR('getResponseHeader', function (orig) { | |||
return function (h) { | |||
return this.__fileApiXHR && this.__fileApiXHR.getResponseHeader ? this.__fileApiXHR.getResponseHeader(h) : (orig == null ? null : orig.apply(this, [h])); | |||
}; | |||
}); | |||
patchXHR('getAllResponseHeaders', function (orig) { | |||
return function () { | |||
return this.__fileApiXHR && this.__fileApiXHR.getAllResponseHeaders ? this.__fileApiXHR.getAllResponseHeaders() : (orig == null ? null : orig.apply(this)); | |||
}; | |||
}); | |||
patchXHR('abort', function (orig) { | |||
return function () { | |||
return this.__fileApiXHR && this.__fileApiXHR.abort ? this.__fileApiXHR.abort() : (orig == null ? null : orig.apply(this)); | |||
}; | |||
}); | |||
patchXHR('setRequestHeader', function (orig) { | |||
return function (header, value) { | |||
if (header === '__setXHR_') { | |||
initializeUploadListener(this); | |||
var val = value(this); | |||
// fix for angular < 1.2.0 | |||
if (val instanceof Function) { | |||
val(this); | |||
} | |||
} else { | |||
this.__requestHeaders = this.__requestHeaders || {}; | |||
this.__requestHeaders[header] = value; | |||
orig.apply(this, arguments); | |||
} | |||
}; | |||
}); | |||
patchXHR('send', function (orig) { | |||
return function () { | |||
var xhr = this; | |||
if (arguments[0] && arguments[0].__isFileAPIShim) { | |||
var formData = arguments[0]; | |||
var config = { | |||
url: xhr.__url, | |||
jsonp: false, //removes the callback form param | |||
cache: true, //removes the ?fileapiXXX in the url | |||
complete: function (err, fileApiXHR) { | |||
if (err && angular.isString(err) && err.indexOf('#2174') !== -1) { | |||
// this error seems to be fine the file is being uploaded properly. | |||
err = null; | |||
} | |||
xhr.__completed = true; | |||
if (!err && xhr.__listeners.load) | |||
xhr.__listeners.load({ | |||
type: 'load', | |||
loaded: xhr.__loaded, | |||
total: xhr.__total, | |||
target: xhr, | |||
lengthComputable: true | |||
}); | |||
if (!err && xhr.__listeners.loadend) | |||
xhr.__listeners.loadend({ | |||
type: 'loadend', | |||
loaded: xhr.__loaded, | |||
total: xhr.__total, | |||
target: xhr, | |||
lengthComputable: true | |||
}); | |||
if (err === 'abort' && xhr.__listeners.abort) | |||
xhr.__listeners.abort({ | |||
type: 'abort', | |||
loaded: xhr.__loaded, | |||
total: xhr.__total, | |||
target: xhr, | |||
lengthComputable: true | |||
}); | |||
if (fileApiXHR.status !== undefined) redefineProp(xhr, 'status', function () { | |||
return (fileApiXHR.status === 0 && err && err !== 'abort') ? 500 : fileApiXHR.status; | |||
}); | |||
if (fileApiXHR.statusText !== undefined) redefineProp(xhr, 'statusText', function () { | |||
return fileApiXHR.statusText; | |||
}); | |||
redefineProp(xhr, 'readyState', function () { | |||
return 4; | |||
}); | |||
if (fileApiXHR.response !== undefined) redefineProp(xhr, 'response', function () { | |||
return fileApiXHR.response; | |||
}); | |||
var resp = fileApiXHR.responseText || (err && fileApiXHR.status === 0 && err !== 'abort' ? err : undefined); | |||
redefineProp(xhr, 'responseText', function () { | |||
return resp; | |||
}); | |||
redefineProp(xhr, 'response', function () { | |||
return resp; | |||
}); | |||
if (err) redefineProp(xhr, 'err', function () { | |||
return err; | |||
}); | |||
xhr.__fileApiXHR = fileApiXHR; | |||
if (xhr.onreadystatechange) xhr.onreadystatechange(); | |||
if (xhr.onload) xhr.onload(); | |||
}, | |||
progress: function (e) { | |||
e.target = xhr; | |||
if (xhr.__listeners.progress) xhr.__listeners.progress(e); | |||
xhr.__total = e.total; | |||
xhr.__loaded = e.loaded; | |||
if (e.total === e.loaded) { | |||
// fix flash issue that doesn't call complete if there is no response text from the server | |||
var _this = this; | |||
setTimeout(function () { | |||
if (!xhr.__completed) { | |||
xhr.getAllResponseHeaders = function () { | |||
}; | |||
_this.complete(null, {status: 204, statusText: 'No Content'}); | |||
} | |||
}, FileAPI.noContentTimeout || 10000); | |||
} | |||
}, | |||
headers: xhr.__requestHeaders | |||
}; | |||
config.data = {}; | |||
config.files = {}; | |||
for (var i = 0; i < formData.data.length; i++) { | |||
var item = formData.data[i]; | |||
if (item.val != null && item.val.name != null && item.val.size != null && item.val.type != null) { | |||
config.files[item.key] = item.val; | |||
} else { | |||
config.data[item.key] = item.val; | |||
} | |||
} | |||
setTimeout(function () { | |||
if (!FileAPI.hasFlash) { | |||
throw 'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"'; | |||
} | |||
xhr.__fileApiXHR = FileAPI.upload(config); | |||
}, 1); | |||
} else { | |||
if (this.__origError) { | |||
throw this.__origError; | |||
} | |||
orig.apply(xhr, arguments); | |||
} | |||
}; | |||
}); | |||
window.XMLHttpRequest.__isFileAPIShim = true; | |||
window.FormData = FormData = function () { | |||
return { | |||
append: function (key, val, name) { | |||
if (val.__isFileAPIBlobShim) { | |||
val = val.data[0]; | |||
} | |||
this.data.push({ | |||
key: key, | |||
val: val, | |||
name: name | |||
}); | |||
}, | |||
data: [], | |||
__isFileAPIShim: true | |||
}; | |||
}; | |||
window.Blob = Blob = function (b) { | |||
return { | |||
data: b, | |||
__isFileAPIBlobShim: true | |||
}; | |||
}; | |||
} | |||
})(); | |||
(function () { | |||
/** @namespace FileAPI.forceLoad */ | |||
/** @namespace window.FileAPI.jsUrl */ | |||
/** @namespace window.FileAPI.jsPath */ | |||
function isInputTypeFile(elem) { | |||
return elem[0].tagName.toLowerCase() === 'input' && elem.attr('type') && elem.attr('type').toLowerCase() === 'file'; | |||
} | |||
function hasFlash() { | |||
try { | |||
var fo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); | |||
if (fo) return true; | |||
} catch (e) { | |||
if (navigator.mimeTypes['application/x-shockwave-flash'] !== undefined) return true; | |||
} | |||
return false; | |||
} | |||
function getOffset(obj) { | |||
var left = 0, top = 0; | |||
if (window.jQuery) { | |||
return jQuery(obj).offset(); | |||
} | |||
if (obj.offsetParent) { | |||
do { | |||
left += (obj.offsetLeft - obj.scrollLeft); | |||
top += (obj.offsetTop - obj.scrollTop); | |||
obj = obj.offsetParent; | |||
} while (obj); | |||
} | |||
return { | |||
left: left, | |||
top: top | |||
}; | |||
} | |||
if (FileAPI.shouldLoad) { | |||
//load FileAPI | |||
if (FileAPI.forceLoad) { | |||
FileAPI.html5 = false; | |||
} | |||
if (!FileAPI.upload) { | |||
var jsUrl, basePath, script = document.createElement('script'), allScripts = document.getElementsByTagName('script'), i, index, src; | |||
if (window.FileAPI.jsUrl) { | |||
jsUrl = window.FileAPI.jsUrl; | |||
} else if (window.FileAPI.jsPath) { | |||
basePath = window.FileAPI.jsPath; | |||
} else { | |||
for (i = 0; i < allScripts.length; i++) { | |||
src = allScripts[i].src; | |||
index = src.search(/\/ng\-file\-upload[\-a-zA-z0-9\.]*\.js/); | |||
if (index > -1) { | |||
basePath = src.substring(0, index + 1); | |||
break; | |||
} | |||
} | |||
} | |||
if (FileAPI.staticPath == null) FileAPI.staticPath = basePath; | |||
script.setAttribute('src', jsUrl || basePath + 'FileAPI.min.js'); | |||
document.getElementsByTagName('head')[0].appendChild(script); | |||
FileAPI.hasFlash = hasFlash(); | |||
} | |||
FileAPI.ngfFixIE = function (elem, fileElem, changeFn) { | |||
if (!hasFlash()) { | |||
throw 'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"'; | |||
} | |||
var fixInputStyle = function () { | |||
if (elem.attr('disabled')) { | |||
if (fileElem) fileElem.removeClass('js-fileapi-wrapper'); | |||
} else { | |||
if (!fileElem.attr('__ngf_flash_')) { | |||
fileElem.unbind('change'); | |||
fileElem.unbind('click'); | |||
fileElem.bind('change', function (evt) { | |||
fileApiChangeFn.apply(this, [evt]); | |||
changeFn.apply(this, [evt]); | |||
}); | |||
fileElem.attr('__ngf_flash_', 'true'); | |||
} | |||
fileElem.addClass('js-fileapi-wrapper'); | |||
if (!isInputTypeFile(elem)) { | |||
fileElem.css('position', 'absolute') | |||
.css('top', getOffset(elem[0]).top + 'px').css('left', getOffset(elem[0]).left + 'px') | |||
.css('width', elem[0].offsetWidth + 'px').css('height', elem[0].offsetHeight + 'px') | |||
.css('filter', 'alpha(opacity=0)').css('display', elem.css('display')) | |||
.css('overflow', 'hidden').css('z-index', '900000') | |||
.css('visibility', 'visible'); | |||
} | |||
} | |||
}; | |||
elem.bind('mouseenter', fixInputStyle); | |||
var fileApiChangeFn = function (evt) { | |||
var files = FileAPI.getFiles(evt); | |||
//just a double check for #233 | |||
for (var i = 0; i < files.length; i++) { | |||
if (files[i].size === undefined) files[i].size = 0; | |||
if (files[i].name === undefined) files[i].name = 'file'; | |||
if (files[i].type === undefined) files[i].type = 'undefined'; | |||
} | |||
if (!evt.target) { | |||
evt.target = {}; | |||
} | |||
evt.target.files = files; | |||
// if evt.target.files is not writable use helper field | |||
if (evt.target.files !== files) { | |||
evt.__files_ = files; | |||
} | |||
(evt.__files_ || evt.target.files).item = function (i) { | |||
return (evt.__files_ || evt.target.files)[i] || null; | |||
}; | |||
}; | |||
}; | |||
FileAPI.disableFileInput = function (elem, disable) { | |||
if (disable) { | |||
elem.removeClass('js-fileapi-wrapper'); | |||
} else { | |||
elem.addClass('js-fileapi-wrapper'); | |||
} | |||
}; | |||
} | |||
})(); | |||
if (!window.FileReader) { | |||
window.FileReader = function () { | |||
var _this = this, loadStarted = false; | |||
this.listeners = {}; | |||
this.addEventListener = function (type, fn) { | |||
_this.listeners[type] = _this.listeners[type] || []; | |||
_this.listeners[type].push(fn); | |||
}; | |||
this.removeEventListener = function (type, fn) { | |||
if (_this.listeners[type]) _this.listeners[type].splice(_this.listeners[type].indexOf(fn), 1); | |||
}; | |||
this.dispatchEvent = function (evt) { | |||
var list = _this.listeners[evt.type]; | |||
if (list) { | |||
for (var i = 0; i < list.length; i++) { | |||
list[i].call(_this, evt); | |||
} | |||
} | |||
}; | |||
this.onabort = this.onerror = this.onload = this.onloadstart = this.onloadend = this.onprogress = null; | |||
var constructEvent = function (type, evt) { | |||
var e = {type: type, target: _this, loaded: evt.loaded, total: evt.total, error: evt.error}; | |||
if (evt.result != null) e.target.result = evt.result; | |||
return e; | |||
}; | |||
var listener = function (evt) { | |||
if (!loadStarted) { | |||
loadStarted = true; | |||
if (_this.onloadstart) _this.onloadstart(constructEvent('loadstart', evt)); | |||
} | |||
var e; | |||
if (evt.type === 'load') { | |||
if (_this.onloadend) _this.onloadend(constructEvent('loadend', evt)); | |||
e = constructEvent('load', evt); | |||
if (_this.onload) _this.onload(e); | |||
_this.dispatchEvent(e); | |||
} else if (evt.type === 'progress') { | |||
e = constructEvent('progress', evt); | |||
if (_this.onprogress) _this.onprogress(e); | |||
_this.dispatchEvent(e); | |||
} else { | |||
e = constructEvent('error', evt); | |||
if (_this.onerror) _this.onerror(e); | |||
_this.dispatchEvent(e); | |||
} | |||
}; | |||
this.readAsArrayBuffer = function (file) { | |||
FileAPI.readAsBinaryString(file, listener); | |||
}; | |||
this.readAsBinaryString = function (file) { | |||
FileAPI.readAsBinaryString(file, listener); | |||
}; | |||
this.readAsDataURL = function (file) { | |||
FileAPI.readAsDataURL(file, listener); | |||
}; | |||
this.readAsText = function (file) { | |||
FileAPI.readAsText(file, listener); | |||
}; | |||
}; | |||
} |
@ -0,0 +1,82 @@ | |||
/* En esta sección se encuentra la función que controla los modals */ | |||
function modalCreate($modal, type, title, body ){ | |||
var modalInstance = $modal.open({ | |||
templateUrl: 'partials/modal/main.html', | |||
controller: 'ModalController', | |||
size: 'md', | |||
resolve: { | |||
modal: function () { | |||
return {type: type, title: title, body: body}; | |||
} | |||
} | |||
}); | |||
return modalInstance; | |||
} | |||
function modalCreatelog($modal, logg ){ | |||
var modalInstance = $modal.open({ | |||
templateUrl: 'partials/user/main.html', | |||
controller: 'UserController', | |||
size: 'md', | |||
resolve: { | |||
modal: function () { | |||
return {logg: logg}; | |||
} | |||
} | |||
}); | |||
return modalInstance; | |||
} | |||
function size(){ | |||
$('#main-container').css("min-height", ($(window).height()-$('footer').height())+"px"); | |||
} | |||
/* Esta función actualmente no está en uso pero puede ser utilizada para enlazar a un objeto DOM */ | |||
function goTo(position){ | |||
$('html, body').animate({ | |||
scrollTop: $('#'+position).offset().top | |||
}, 1500); | |||
setTimeout(function(){ | |||
$('html, body').animate({ | |||
scrollTop: $('#'+position).offset().top | |||
}, 500); | |||
}, 1600); | |||
} | |||
/* En esta sección se encuentran funciones para controlar el "scroll" y el "resize" en el navegador */ | |||
$( document ).ready(function() { | |||
size(); | |||
$( window ).resize(function() { | |||
size(); | |||
}); | |||
$(window).scroll(function(){ | |||
size(); | |||
}); | |||
}); | |||
app.directive("closedmenu", function () { | |||
return function(scope, element, attrs) { | |||
angular.element(element).bind("click", function() { | |||
if($('#btn-info').attr('aria-expanded') !='false'){ | |||
$("#btn-info").trigger( "click" ); | |||
} | |||
if($('#btn-app').attr('aria-expanded') !='false'){ | |||
$("#btn-app").trigger( "click" ); | |||
} | |||
}); | |||
}; | |||
}); | |||
$(function() { | |||
$('#navbar .nav a').on('click', function(){ | |||
if($('#btn-info').css('display') !='none'){ | |||
$("#btn-info").trigger( "click" ); | |||
} | |||
}); | |||
// $('#navbar-bottom .nav a').on('click', function(){ | |||
// if($('#btn-app').css('display') !='none'){ | |||
// $("#btn-app").trigger( "click" ); | |||
// } | |||
// }); | |||
}); |
@ -0,0 +1,33 @@ | |||
var serverURL = "/public/index.php/api"; | |||
var app = angular.module('sobic', ["ngCookies",'ui.bootstrap', 'ngRoute', 'ngAnimate', 'angular-parallax', 'ngFileUpload']); | |||
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { | |||
$locationProvider.html5Mode({ | |||
enabled: true, | |||
requireBase: false | |||
}).hashPrefix = '!'; | |||
$routeProvider.when('/', { | |||
templateUrl: 'partials/pages/home.html', | |||
controller: 'HomeController' | |||
}).when('/users/show', { | |||
templateUrl: 'partials/user/show.html', | |||
controller: 'ListUsersController' | |||
}).when('/contact', { | |||
templateUrl: 'partials/pages/contact.html', | |||
controller: 'ContactController' | |||
/* Es importante que respetes estos comentarios para general scaffold sin probremas. */ | |||
/** Scaffold main.js **/ | |||
}).when('/personals', { | |||
templateUrl: 'partials/personal/show.html', | |||
controller: 'PersonalController' | |||
}).when('/personals/form', { | |||
templateUrl: 'partials/personal/form.html', | |||
controller: 'PersonalFormController' | |||
}).when('/personals/form/:id', { | |||
templateUrl: 'partials/personal/form.html', | |||
controller: 'PersonalFormController' | |||
}).otherwise({ | |||
redirectTo: '/' | |||
}); | |||
}]); |
@ -0,0 +1,86 @@ | |||
<!DOCTYPE html> | |||
<html> | |||
<head> | |||
<title>Sobic | Framework 1.1 b</title> | |||
<base href="/"> | |||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> | |||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> | |||
<link rel="shortcut icon" href="/img/favicon.ico"/> | |||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> | |||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css"> | |||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> | |||
<link rel="stylesheet" href="css/main.css"> | |||
<link href='//fonts.googleapis.com/css?family=Indie+Flower' rel='stylesheet' type='text/css'> | |||
<script src='//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'></script> | |||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> | |||
<script src="js/libs/1.3.1/angular.min.js"></script> | |||
<script src="js/libs/1.3.1/angular-cookies.min.js"></script> | |||
<script src="js/libs/1.3.1/angular-route.min.js"></script> | |||
<script src="js/libs/1.3.1/angular-animate.min.js"></script> | |||
<script src="js/libs/ui-bootstrap-tpls-0.13.0.min.js"></script> | |||
<script src="js/libs/angular-parallax.js"></script> | |||
<script src="js/libs/oauth.js"></script> | |||
<script src="js/libs/ng-file-upload.min.js"></script> | |||
<script src="js/main.js"></script> | |||
<script src="js/libs/sobic.js"></script> | |||
<script src="js/controllers/menu.js"></script> | |||
<script src="js/controllers/user/main.js"></script> | |||
<script src="js/controllers/user/show.js"></script> | |||
<script src="js/controllers/modal/main.js"></script> | |||
<script src="js/controllers/pages/contact.js"></script> | |||
<script src="js/controllers/pages/home.js"></script> | |||
<!-- Es importante que respetes estos comentarios para general scaffold sin probremas. --> | |||
<!-- Scaffold JS --> | |||
<script src="js/controllers/personal/show.js"></script> | |||
<script src="js/controllers/personal/form.js"></script> | |||
</head> | |||
<body ng-app="sobic"> | |||
<header ng-controller="MenuController"> | |||
<nav class="navbar navbar-default navbar-fixed-top"> | |||
<div class="container"> | |||
<div class="navbar-header"> | |||
<button id="btn-info" type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> | |||
<span class="sr-only">Toggle navigation</span> | |||
<span class="icon-bar"></span> | |||
<span class="icon-bar"></span> | |||
<span class="icon-bar"></span> | |||
</button> | |||
<a class="navbar-brand" href="/">Sobic | Framework</a> | |||
</div> | |||
<div id="navbar" class="navbar-collapse collapse" aria-expanded="false" style="height: 1px;"> | |||
<ul class="nav navbar-nav navbar-right"> | |||
<li ng-if="!user"><a ng-click="logg('login')" class="shadowText pointer" title="Weather"><span>Login</span></a></li> | |||
<li ng-if="!user"><a ng-click="logg('signup')" class="shadowText pointer" title="Weather"><span>Sign up</span></a></li> | |||
<li ng-if="user"><a ng-click="logout()" class="shadowText pointer" title="Logout"><span>Logout</span></a></li> | |||
<li ng-if="user.isAdmin"><a href="users/show" class="shadowText" title="User list"><span>Users</span></a></li> | |||
<!-- Es importante que respetes estos comentarios para general scaffold sin probremas. --> | |||
<!-- Scaffold HTML --> | |||
<li ng-if="user"><a href="personals" class="shadowText" title="Personals"><span>Personal</span></a></li> | |||
</ul> | |||
</div> | |||
</div> | |||
</nav> | |||
</header> | |||
<section id="main-container"> | |||
<article id="yield" ng-view class="page" closedmenu> | |||
<h1>UPSS!!..No worries, Nextsun ants will fix it in a while. <i class="fa fa-bed"></i></h1> | |||
</article> | |||
</section> | |||
<footer class="navbar-inverse"> | |||
<div class="container"> | |||
<ul class="nav navbar-nav"> | |||
<li> | |||
<a href="https://github.com/nextsun-limited/sobic" target="_blank" title="Sobic">Power by <i class="fa fa-cubes"></i>Sobic <small>©</small></a> | |||
</li> | |||
</ul> | |||
</div> | |||
</footer> | |||
</body> | |||
</html> |
@ -0,0 +1,11 @@ | |||
<div class="modal-header modal-header-{{modal.type}}"> | |||
<h3 class="modal-title">{{modal.title}}</h3> | |||
</div> | |||
<div class="modal-body"> | |||
{{modal.body}} | |||
</div> | |||
<div class="modal-footer"> | |||
<button class="btn btn-{{modal.type}}" ng-click="closeModal()">Close</button> | |||
</div> |
@ -0,0 +1,15 @@ | |||
<div class="block row"> | |||
<h1>¿Quienes somos?</h1> | |||
<p> | |||
sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg | |||
</p> | |||
<h1>¿Qué es sobic?</h1> | |||
<p> | |||
sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg sdafdgdsfgdfgdfg | |||
</p> | |||
<h1>Contectanos</span></strong></p></h1> | |||
<p><a href="mailto:gustavo.mesa@nextsun.eu"><i class="fa fa-envelope-o"></i> contacto@iuniteach.com</a></p> | |||
</div> | |||
@ -0,0 +1,83 @@ | |||
<div id="gui" class="container hidden-xs"> | |||
<div class="col-sx-3 col-sm-3"> | |||
<h4>Translate</h4> | |||
<strong>X</strong>:{{t.x}} | |||
<strong>Y</strong>:{{t.y}} | |||
<strong>Z</strong>:{{t.z}} | |||
<br/><br/> | |||
<audio controls autoplay loop> | |||
<source src="sound/music.mp3" type="audio/mpeg"> | |||
Your browser does not support the audio element. | |||
</audio> | |||
</div> | |||
<div class="col-sx-3 col-sm-3"> | |||
<h4>Rotate</h4> | |||
<strong>X</strong>:{{r.x}} | |||
<strong>Y</strong>:{{r.y}} | |||
<strong>Z</strong>:{{r.z}} | |||
</div> | |||
<div class="col-sx-3 col-sm-3"> | |||
<h4>Autoplay</h4> | |||
<button class="btn" ng-click="playStop()" ng-class="{'btn-danger': play, 'btn-success': !play}"> | |||
<span ng-if="!play"><i class="fa fa-play"></i> Play</span> | |||
<span ng-if="play"><i class="fa fa-stop"></i> Stop</span> | |||
</button> | |||
</div> | |||
<div class="col-sx-3 col-sm-3"> | |||
<h4>Keys</h4> | |||
<ul> | |||
<li> | |||
Move: Cursor | |||
</li> | |||
<li> | |||
Up/Down: A/Z | |||
</li> | |||
<li> | |||
Give: Q/W | |||
</li> | |||
</ul> | |||
</div> | |||
</div> | |||
<section class="container-fluid container-view"> | |||
<div id="carousel" style="transform: rotateX({{r.x}}deg) rotateY({{r.y}}deg) rotateZ({{r.z}}deg);" > | |||
<div id="map" style="transform: translateX({{t.x}}px) translateY({{t.y}}px) translateZ({{t.z}}px);"> | |||
<figure>1</figure> | |||
<figure>2</figure> | |||
<figure>3</figure> | |||
<figure>4</figure> | |||
<figure>5</figure> | |||
<figure>6</figure> | |||
<figure>7</figure> | |||
<figure>8</figure> | |||
<figure>9</figure> | |||
<figure>10</figure> | |||
<figure>11</figure> | |||
<figure>12</figure> | |||
<figure>13</figure> | |||
<figure>14</figure> | |||
<figure>15</figure> | |||
<figure>16</figure> | |||
<figure>17</figure> | |||
<figure>18</figure> | |||
<figure>19</figure> | |||
<figure>20</figure> | |||
<figure>21</figure> | |||
<figure>22</figure> | |||
<figure>23</figure> | |||
<figure>24</figure> | |||
<figure>25</figure> | |||
<figure>26</figure> | |||
<figure>27</figure> | |||
<figure>28</figure> | |||
<figure>29</figure> | |||
<figure id="pika" style="transform: translateX({{pika}}px) translateY(50px) translateZ(-240px);"></figure> | |||
<figure id="smoke"></figure> | |||
<figure id="cthulu"></figure> | |||
<figure id="bob"></figure> | |||
<figure id="termi"></figure> | |||
<figure ng-if="t.z> 800" id="portal"></figure> | |||
</div> | |||
</div> | |||
</section>9 |