!function(){"use strict";angular.module("app",["app.core","app.common"])}(),function(){"use strict";angular.module("app.common",[])}(),function(){"use strict";angular.module("app.core",["ui.router","ngSanitize","youtube-embed","ngAnimate","angularSpinners","ngMap","ngResource","ngMessages","fancyboxplus","ng-fastclick","ngTouch","angular-google-analytics","com.2fdevs.videogular","com.2fdevs.videogular.plugins.controls","com.2fdevs.videogular.plugins.overlayplay","com.2fdevs.videogular.plugins.poster"])}(),function(){"use strict";angular.module("app.common").animation(".slide-left-animation",["$window",function(e){var a=1;return{enter:function(t,n){TweenMax.fromTo(t,a,{left:e.innerWidth},{left:0,onComplete:n})},leave:function(t,n){TweenMax.to(t,a,{left:-e.innerWidth,onComplete:n})}}}]).animation(".slide-down-animation",["$window",function(e){var a=1;return{enter:function(t,n){TweenMax.fromTo(t,a,{top:-e.innerHeight},{top:0,onComplete:n})},leave:function(t,n){TweenMax.to(t,a,{top:e.innerHeight,onComplete:n})}}}]).animation(".fade-in-animation",["$window",function(e){var a=1.5;return{enter:function(e,t){TweenMax.fromTo(e,a,{opacity:0},{opacity:1,onComplete:t})},leave:function(e,t){TweenMax.to(e,a,{opacity:0,onComplete:t})}}}])}(),function(){"use strict";angular.module("app.common").directive("bgImage",["$window","$timeout",function(e,a){return function(a,t,n){var o=function(){var a=t.width(),n=t.height(),o=e.innerWidth,s=e.innerheight,i=o/a,r=s/n,l=r*a,c=i*n;c>s?t.css({width:o+"px",height:c+"px"}):t.css({width:l+"px",height:c+"px"})},s=angular.element(e);s.resize(o),t.bind("load",function(){o()})}}])}(),function(){"use strict";angular.module("app.common").service("bgService",[function(){var e=this;e.isDim=!1,e.isFullscreen=!1,e.showMap=!1,e.Dim=function(a){e.isDim=a},e.Fullscreen=function(a){e.isFullscreen=a}}])}(),function(){"use strict";angular.module("app.common").service("fbControlService",function(){var e=this;e.activateFBControls=function(){$(".fb-controls").addClass("active")},e.deactivateFBControls=function(){$(".fb-controls").removeClass("active")}})}(),function(){"use strict";angular.module("app.common").service("footerService",function(){var e=this;e.isVisible=!0,e.show=function(a){e.isVisible=a}})}(),function(){"use strict";angular.module("app.common").factory("formService",["$http",function(e){var a=this;return a.processForm=function(a,t){return console.log("request for updates submitted"),e({method:"POST",url:a,headers:{"Content-Type":"application/x-www-form-urlencoded"},transformRequest:function(e){var a=[];for(var t in e)a.push(encodeURIComponent(t)+"="+encodeURIComponent(e[t]));return a.join("&")},data:t}).then(function(e){return console.log(e),e.data.success?(console.log("success"),e.data.message):void console.log("error")},function(e){})},{processForm:a.processForm}}])}(),function(){"use strict";angular.module("app").service("listingModel",["listingResource","vtConfig",function(e,a){var t=this;t.listingUrl=a.URL,t.getData=function(a){return a?e.getData(a,function(e){return e}):e.getData(t.listingUrl,function(e){return e})}}])}(),function(){"use strict";angular.module("app").factory("listingResource",["$state","$resource","$http","$rootScope",function(e,a,t,n){function o(e){var a;return a=0==i?r:l,console.log(a),t({method:"GET",url:a+e,params:{}}).then(function(a){return n.loadStatus=!1,"error"==a.data.status?(console.error("API error: "+a.data.message),console.error("Attempted ID: "+e),console.log(a),s="error"):a.data},function(e){console.log("Server error: "+e)})}var s=!1,i=!1,r="https://www.luxvt.com/api/v1/domain/",l="http://www.luxvt.com/api/v1/domain/";return{getData:o}}])}(),angular.module("app").run([function(){}]),function(){"use strict";angular.module("app.common").factory("QueueService",["$rootScope",function(e){function a(a){t.loadManifest(a),t.on("progress",function(a){e.$broadcast("queueProgress",a)}),t.on("complete",function(){e.$broadcast("queueComplete",a)})}var t=new createjs.LoadQueue((!0));return{loadManifest:a}}])}(),function(){"use strict";function e(e){return{restrict:"A",link:function(a,t,n,o){e.$on("$stateChangeSuccess",function(e,a,n,o,s){var i=angular.isDefined(o.data)&&angular.isDefined(o.data.cssClassnames)?o.data.cssClassnames:null,r=angular.isDefined(a.data)&&angular.isDefined(a.data.cssClassnames)?a.data.cssClassnames:null;i!=r&&(i&&t.removeClass(i),r&&t.addClass(r))})}}}angular.module("app.common").directive("routeCssClassnames",e),e.$inject=["$rootScope"]}(),function(){"use strict";angular.module("app.common").factory("socialButtons",function(){var e=this;return e.shareFB=function(e){console.log(e);var a=encodeURIComponent,t="http://"+e.meta.domain,n=e.details.propertyTitle,o=e.details.keyPhotos[0].photoUrl,s=e.details.tagLine,i="http://www.facebook.com/sharer/share",r=".php?src=bm&v=4&i=1277427231&u="+a(t)+"&title="+a(n)+"&picture="+a(o)+"&description="+a(s);try{if(!/^(.*\.)?facebook\.[^.]*$/.test(t.host))throw 0;share_internal_bookmarklet(r)}catch(l){var c=function(){window.open(i+"r"+r,"sharer","toolbar=0,status=0,resizable=1,width=626,height=436")||(t.href=i+r)};/Firefox/.test(navigator.userAgent)?setTimeout(c,0):c()}},e.shareTW=function(e){var a=encodeURIComponent,t="http://"+e.meta.domain,n=e.details.propertyTitle,o=(e.details.keyPhotos[0].photoUrl,e.details.tagLine,"http://twitter.com/intent/tweet"),s="?status="+a(n)+"+"+a(t);try{if(!/^(.*\.)?twitter\.[^.]*$/.test(l.host))throw 0;share_internal_bookmarklet(s)}catch(i){var r=function(){window.open(o+s,"sharer","toolbar=0,status=0,resizable=1,width=626,height=436")||(l.href=o+s)};/Firefox/.test(navigator.userAgent)?setTimeout(r,0):r()}},e.sharePN=function(e){var a=encodeURIComponent,t="http://"+e.meta.domain,n=e.details.propertyTitle,o=e.details.keyPhotos[0].photoUrl,s=(e.details.tagLine,"http://pinterest.com/pin/create/bookmarklet/"),i="?media="+a(o)+"&url="+a(t)+"&is_video=false&description="+a(n);try{if(!/^(.*\.)?pinterest\.[^.]*$/.test(l.host))throw 0;share_internal_bookmarklet(i)}catch(r){var c=function(){window.open(s+i,"sharer","toolbar=0,status=0,resizable=1,width=626,height=436")||(l.href=s+i)};/Firefox/.test(navigator.userAgent)?setTimeout(c,0):c()}},{shareFB:e.shareFB,shareTW:e.shareTW,sharePN:e.sharePN}})}(),function(){"use strict";angular.module("app").factory("statistics",["$http","$window",function(e,a){function t(e,t){if(0==a.statisticsSent&&"error"!=e){s.REFERRER=a.document.referrer;var i=new Date,r=i.getDate(),l=i.getMonth()+1,c=i.getFullYear();r<10&&(r="0"+r),l<10&&(l="0"+l),i=c+"-"+l+"-"+r,s.TIMESTAMP=i,s.TYPE=n(t),s.LISTING_ID=e.meta.tourId,o()}}function n(e){return a.innerWidth<=1024?"mobile":"mls"==e?"mls":"tour"==e?"main":void 0}function o(){var t="https://www.luxvt.com/remote/domain/statistics";e({method:"POST",url:t,headers:{"Content-Type":"application/x-www-form-urlencoded"},transformRequest:function(e){var a=[];for(var t in e)a.push(encodeURIComponent(t)+"="+encodeURIComponent(e[t]));return a.join("&")},data:s}).then(function(e){e.data.success||console.log("error")},function(e){console.error(e)}),a.statisticsSent=!0}var s={};return{runStatistics:t}}])}(),function(){"use strict";angular.module("app").service("vtConfig",["$location","$stateParams",function(e,a){var t=this;"localhost"==e.host()?t.URL="1":"matthew-2.local"==e.host()?t.URL="5113":"sketchboxdesign.com"==e.host()?t.URL="5113":"9graenest.local"==e.host()?t.URL="16622":e.host()&&(t.URL=e.host())}])}(),function(){"use strict";angular.module("app").controller("ContactController",["tourData","tourId","$http",function(e,a,t){var n=this;n.formatToHtml=function(e){return e=e.replace(/&amp;/g,"&"),e=e.replace(/&lt;/g,"<"),e=e.replace(/&gt;/g,">"),e=e.replace(/&#039;/g,"'")},n.vm=e,n.image=e.agent.photo,n.logo=e.agent.logo,n.name=e.agent.agentName,n.brokerage=e.agent.brokerage,n.phone=e.agent.phoneNumber,n.website=e.agent.website,n.license=e.agent.licenseNumber,n.disclaimer=n.formatToHtml(e.agent.brokerageDisclaimer);var o="https://www.luxvt.com/contact-us/action/"+a;n.processContact=function(){console.log("contact form submitted"),t({method:"POST",url:o,headers:{"Content-Type":"application/x-www-form-urlencoded"},transformRequest:function(e){var a=[];for(var t in e)a.push(encodeURIComponent(t)+"="+encodeURIComponent(e[t]));return a.join("&")},data:{name:n.formData.name,phone:n.formData.phone,email:n.formData.email,comments:n.formData.comments}}).then(function(e){console.log(e),n.formData.name="",n.formData.phone="",n.formData.email="",n.formData.comments="",e.data.success?(console.log("success"),n.formData.message=e.data.message):(console.log("error"),n.formData.message="Error,Please try again!")},function(e){})}}])}(),function(){"use strict";angular.module("app").config(["$stateProvider","$urlRouterProvider","$locationProvider","AnalyticsProvider","$windowProvider",function(e,a,t,n,o){a.when("","/:mode/:tourId/"),a.when("/","/:mode/:tourId/"),t.html5Mode(!0);var s=o.$get();s.statisticsSent=!1,e.state("nav",{url:"/:mode/:tourId",templateUrl:"app/common/nav/nav.html",controller:"NavController",controllerAs:"vm",resolve:{mode:["$stateParams","$location",function(e){var a;return e.mode?e.mode:a="/tour"}],tourId:["$stateParams","vtConfig","$location","mode",function(e,a,t,n){var o=a.URL;console.log(o),console.log(e.tourId);var s;return e.tourId=e.tourId.replace("www.",""),e.tourId?e.tourId:(s=o,s=n+"/"+s+"/",t.path(s),o)}],tourData:["listingModel","$stateParams","tourId",function(e,a,t){var n=e.getData(t);return void 0!=n?n:"error"}],analytics:["tourData",function(e){"error"!=e&&n.setDomainName(e.meta.domain)}]}}).state("nav.home",{url:"/",templateUrl:"app/home/home.html",controller:"HomeController",controllerAs:"home",data:{cssClassnames:"home"}}).state("nav.details",{url:"/details",templateUrl:"app/details/details-controller.html",controller:"DetailsController",controllerAs:"details",data:{cssClassnames:"details"}}).state("nav.tour",{url:"/tour",templateUrl:"app/tour/tour-controller.html",controller:"TourController",controllerAs:"tour",onEnter:["bgService",function(e){e.Dim(!0)}],onExit:["bgService",function(e){e.Dim(!1)}],data:{cssClassnames:"tour no-footer"}}).state("nav.gallery",{url:"/gallery",templateUrl:"app/gallery/gallery.html",controller:"GalleryController",controllerAs:"gallery",onEnter:["bgService",function(e){e.Dim(!0)}],onExit:["bgService",function(e){e.Dim(!1)}],data:{cssClassnames:"gallery no-footer"}}).state("nav.locale",{url:"/locale",templateUrl:"app/locale/locale-controller.html",controller:"LocaleController",controllerAs:"locale",onEnter:["bgService",function(e){e.Fullscreen(!0)}],onExit:["bgService",function(e){e.Fullscreen(!1)}],data:{cssClassnames:"locale no-footer"}}).state("nav.contact",{url:"/contact",templateUrl:"app/contact/contact.html",controller:"ContactController",controllerAs:"contact",data:{cssClassnames:"contact no-footer"}})}]).config(["$sceDelegateProvider",function(e){e.resourceUrlWhitelist(["self","https://s3.amazonaws.com/**"]),e.resourceUrlBlacklist([])}]).config(["AnalyticsProvider",function(e){e.setAccount("UA-37131766-1").useAnalytics(!0).setPageEvent("$stateChangeSuccess")}]).run(["Analytics","$rootScope",function(e,a){var t=document.createElement("script");t.src="https://www.youtube.com/iframe_api";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(t,n),a.loadStatus=!0}])}(),function(){"use strict";angular.module("app").controller("DetailsController",["listingModel","tourData",function(e,a){var t=this;t.formatToHtml=function(e){return e=e.replace(/&amp;/g,"&"),e=e.replace(/&lt;/g,"<"),e=e.replace(/&gt;/g,">"),e=e.replace(/&#039;/g,"'")},t.vm=a,t.title=t.vm.details.propertyTitle,t.desc=t.formatToHtml(t.vm.details.propertyDescription),t.address1=t.vm.location.streetAddress,t.address2=t.vm.location.city+", "+t.vm.location.state+" "+t.vm.location.zipCode,t.price=t.vm.details.price,t.currency=t.vm.details.currency,t.bedrooms=t.vm.details.bedRooms,t.bathrooms=t.vm.details.bathRooms,t.unit=t.vm.details.unit,t.halfBathRooms=t.vm.details.halfBathRooms,t.squareFeet=t.vm.details.squareFeet,t.mlsNumber=t.vm.details.mlsNumber}])}(),function(){"use strict";angular.module("app").controller("GalleryController",["tourData","fancyboxService","fbControlService","$window",function(e,a,t,n){var o=this;o.data=e,o.images=o.data.details.photos,o.fbSettings={titlePosition:"over",autoDimensions:!0,padding:"10",margin:"12",autoScale:!0,scrolling:"no",cyclic:"yes",titleFormat:function(e,a,t,n){return'<span id="fbplus-title-over">Image '+(t+1)+" / "+a.length+" - "+e+"</span>"},onStart:function(){t.activateFBControls(),n.scrollTo(0,0),$(".nav-view").addClass("no-scroll")},onClosed:function(){t.deactivateFBControls(),$(".nav-view").removeClass("no-scroll")}}}])}(),function(){"use strict";angular.module("app").controller("HomeController",["$scope","listingModel","vtConfig","$timeout","QueueService","$stateParams","tourId","tourData","$sce","$http","mode",function(e,a,t,n,o,s,i,r,l,c,u){function m(){for(var e=0;e<b.images.length;e++)y.push(b.images[e].photoUrl);h();var a=JSON.parse(localStorage.getItem("isShown"));b.showPopup&&1==b.showPopup&&!a&&(n(function(){b.popupEnabled=!0},2e3),localStorage.setItem("isShown","true"))}function d(e){b.currentIndex=e}function p(e){return b.currentIndex===e}function g(){b.currentIndex=b.currentIndex<b.slides.length-1?++b.currentIndex:0,n(g,w)}function v(a){e.currentAnimation=a}function f(a){return e.currentAnimation===a}function h(){o.loadManifest(y)}var b=this,w=4e3,y=[];b.data=r,b.images=b.data.details.keyPhotos,b.videoURL=b.data.details.videoUrl,b.manualS3VideoUrl=b.data.details.manualS3VideoUrl,b.mls="mls"==u,b.showPopup=b.data.details.showPopup,b.popupTitle=b.data.details.popupTitle,b.popupLine2=b.data.details.popupLine2,b.popupLine3=b.data.details.popupLine3,b.popupEnabled=!1,b.popSuccess=!1,b.popError=!1;var S="https://www.luxvt.com/pop-up/action/"+i;m(),b.trustSrc=function(e){return l.trustAsResourceUrl(e)},b.submitPopup=function(){console.log("popup submitted"),b.popSubmitted=!0,b.popupEmail&&b.popupEmail.length&&c({method:"POST",url:S,headers:{"Content-Type":"application/x-www-form-urlencoded"},transformRequest:function(e){var a=[];for(var t in e)a.push(encodeURIComponent(t)+"="+encodeURIComponent(e[t]));return a.join("&")},data:{email:b.popupEmail}}).then(function(e){console.log(e),e.data&&e.data.success?(b.popSuccess=!0,b.successMessage=e.data.message,n(function(){b.popupEnabled=!1},3e3)):(b.popSuccess=!1,b.popError=!0)},function(e){console.log(e),b.popSuccess=!1,b.popError=!0,b.errorMessage=e.data.message})},window.onbeforeunload=function(){localStorage.removeItem("isShown")},e.$on("queueProgress",function(a,t){e.$$phase||e.$apply(function(){e.progress=100*t.progress})}),e.$on("queueComplete",function(a,t){e.$apply(function(){b.slides=t,e.loaded=!0,n(g,w)})}),e.progress=0,e.loaded=!1,b.currentAnimation="fade-in-animation",b.currentIndex=0,b.setCurrentSlideIndex=d,b.isCurrentSlideIndex=p,b.setCurrentAnimation=v,b.isCurrentAnimation=f}])}(),function(){"use strict";angular.module("app").controller("LocaleController",["NgMap","tourData","bgService","localeService",function(e,a,t,n){var o=this;o.render=t.showMap,o.data=a,o.address=o.data.location.streetAddress+", "+o.data.location.city+", "+o.data.location.state+" "+o.data.location.zipCode,o.streetLine=o.data.location.streetAddress,o.cityLine=o.data.location.city+", "+o.data.location.state+" "+o.data.location.zipCode,o.lat=o.data.location.latitude,o["long"]=o.data.location.longitude;var s=new google.maps.Geocoder;s.geocode({address:o.address},function(a,t){t==google.maps.GeocoderStatus.OK&&(o.lat=a[0].geometry.location.lat(),o["long"]=a[0].geometry.location.lng(),o.center=[o.lat,o["long"]],o.position=o.lat+","+o["long"],e.getMap("locale-map").then(function(a){o.map=a,o.showMap=!0,e.initMap("locale-map")}))})}])}(),function(){"use strict";function e(){var e=this;e.geoCodeResults,e.updateResults=function(a){e.geoCodeResults=a}}angular.module("app").service("localeService",e)}(),function(){"use strict";angular.module("app").controller("MainController",["bgService","spinnerService","listingResource","$rootScope","$timeout",function(e,a,t,n,o){var s=this;s.animate=!1,s.menu=!0,s.updates=!1,s.share=!1,s.showMenu=!1,s.bgBlur=!1,s.spinnerService=a,s.transitionIn="fadeInUp",o(function(){s.animate=!0},1e3),s.isDim=function(){return e.isDim},s.isFullscreen=function(){return e.isFullscreen},s.menuToggle=function(){s.showMenu?(s.showMenu=!1,o(function(){n.$broadcast("masonry.reload")},100)):(s.showMenu=!0,o(function(){n.$broadcast("masonry.reload")},100))},s.toggleSubMenu=function(){s.menu=!s.menu,s.updates=!1,s.share=!1},s.toggleUpdates=function(){s.updates=!s.updates,s.share=!1,s.menu=!1},s.toggleShare=function(){s.share=!s.share,s.updates=!1,s.menu=!1},s.next=function(){$.fancyboxPlus.next()},s.previous=function(){$.fancyboxPlus.prev()}}])}(),function(){"use strict";angular.module("app").controller("TourController",["tourData","bgService",function(e,a){var t=this;t.sayHi="hello",t.playerVars={controls:1,autoplay:1,modestbranding:1,rel:0},t.smallPlayer=!0,t.toggleSize=!1,console.log(e),t.tourURL=e,t.videoURL=t.tourURL.details.videoUrl,t.awsS3VideoURL=t.tourURL.details.s3VideoUrl,t.awsmanualS3VideoURL=t.tourURL.details.manualS3VideoUrl,t.manualVideo=t.tourURL.details.manualVideo,"false"==t.manualVideo?t.manualVideo=!1:"true"==t.manualVideo&&(t.manualVideo=!0),t.youtubeVideoURLFlag=!0,""==t.videoURL||0==t.manualVideo?t.youtubeVideoURLFlag=!1:""==t.videoURL&&1==t.manualVideo&&""!=t.awsmanualS3VideoUR&&(t.youtubeVideoURLFlag=!1),t.awsS3VideoURLFlag=!0,""!=t.awsS3VideoURL&&1!=t.manualVideo||(t.awsS3VideoURLFlag=!1),0==t.manualVideo?t.config={preload:"none",autoplay:"true",sources:[{src:t.awsS3VideoURL,type:"video/mp4"}],theme:{url:"https://unpkg.com/videogular@2.1.2/dist/themes/default/videogular.css"},plugins:{poster:t.tourURL.details.photos[0].photoUrl}}:1==t.manualVideo&&""!=t.awsmanualS3VideoURL&&(t.config={preload:"none",autoplay:"true",sources:[{src:t.awsmanualS3VideoURL,type:"video/mp4"}],theme:{url:"https://unpkg.com/videogular@2.1.2/dist/themes/default/videogular.css"},plugins:{poster:t.tourURL.details.photos[0].photoUrl}})}])}(),function(){"use strict";angular.module("app").controller("NavController",["tourData","tourId","mode","listingResource","$rootScope","$window","socialButtons","statistics","formService","$state","$timeout",function(e,a,t,n,o,s,i,r,l,c,u){var a=a.replace("www.","");c.go("nav.home");var m=this;m.data=e,o.data=e,m.mls="mls"==t,m.matterport=m.data.details.matterportUrl,console.log(m.matterport),"error"==m.data&&(m.error=!0),r.runStatistics(e,t),m.updatesUrl="https://www.luxvt.com/get-updates/action/"+a,m.shareUrl="https://www.luxvt.com/share-this/action/"+a,m.processUpdates=function(){l.processForm(m.updatesUrl,{email:m.updatesData.email,name:m.updatesData.name}).then(function(e){"Success!"==e&&(m.updatesData.name="",m.updatesData.email=""),m.updatesData.message=e})},m.processShare=function(){l.processForm(m.shareUrl,{name:m.shareData.senderName,email:m.shareData.senderEmail,friendEmail:m.shareData.friendEmail}).then(function(e){"Success!"==e&&(m.shareData.senderName="",m.shareData.senderEmail="",m.shareData.friendEmail=""),m.shareData.message=e})},m.shareFB=function(){i.shareFB(m.data),console.log(m.data)},m.shareTW=function(){i.shareTW(m.data)},m.sharePN=function(){i.sharePN(m.data)}}])}(),angular.module("app").run(["$templateCache",function(e){e.put("app/contact/contact.html",'<div class="container animated" ng-class=main.transitionIn><a class="close-btn fa fa-times-circle" ui-sref=nav.home></a><div class=info><div class=info-imgs><div class="m-sevencols d-half"><img src="{{ contact.image }}" alt></div><div class=d-half><img src="{{ contact.logo }}" alt></div></div><div class=clearfix></div><p class=align-center><strong>{{ contact.name }}</strong><br>{{ contact.brokerage }}<br>{{ contact.phone }}<br><a ng-if=contact.website href="{{ contact.website }}">website</a><br></p><p class=align-center>license #: {{ contact.license }}<br></p><div class="align-center ng-binding" ng-bind-html=contact.disclaimer></div></div><div class=form><h1>Contact:</h1><div id=messages ng-show=contact.formData.message>{{ contact.formData.message }}</div><form name=contactForm><div class=input-container><input type=text name=name placeholder=Name ng-model=contact.formData.name required><div ng-if=!contact.formData.message ng-messages=contactForm.name.$error ng-show=contactForm.name.$touched><div ng-message=required class=message>Name is required.</div></div></div><div class=input-container><input type=email name=email placeholder=e-mail ng-model=contact.formData.email required><div ng-if=!contact.formData.message ng-messages=contactForm.email.$error ng-show=contactForm.email.$touched><div ng-message=required class=message>e-mail is required.</div></div></div><div class=input-container><input type=text name=phone placeholder=phone ng-model=contact.formData.phone required><div ng-if=!contact.formData.message ng-messages=contactForm.phone.$error ng-show=contactForm.phone.$touched><div ng-message=required class=message>phone is required.</div></div></div><div class=input-container><textarea name id rows=10 ng-model=contact.formData.comments></textarea></div><input type=submit ng-click=contact.processContact() ng-disabled=contactForm.$invalid class="btn blue" value=Submit></form></div></div>'),e.put("app/details/details-controller.html",'<div class="container right animated" ng-class=main.transitionIn><a class="close-btn fa fa-times-circle" ui-sref=nav.home></a><h1 ng-bind=details.title>Details</h1><div class=info><ul><li><label>Price:</label> <span><span>{{ details.currency }}</span> <span>{{ details.price }}</span></span></li><li><label>Address:</label> <span><span>{{ details.address1 }}</span><br><span>{{ details.address2 }}</span></span></li><li ng-if="details.unit !=\'\'"><label>Unit:</label> <span>{{ details.unit }}</span></li><li><label>BR:</label> <span>{{ details.bedrooms }}</span></li><li><label>BA:</label> <span>{{ details.bathrooms }}</span></li><li><label>1/2 BA:</label> <span>{{ details.halfBathRooms }}</span></li><li><label>Sq. Ft.:</label> <span>{{ details.squareFeet | number }}</span></li><li ng-if="details.mlsNumber !=\'\'"><label>MLS:</label> <span>{{ details.mlsNumber }}</span></li></ul></div><div class="desc ng-binding" ng-bind-html=details.desc style=white-space:pre-wrap;></div></div>'),e.put("app/gallery/gallery.html",'<div class="content container max bsp-wrap"><div class=masonry-container- item-selector=.thumb><div class="thumb col-xs-12 col-sm-6 col-md-4" ng-repeat="pic in gallery.images"><a rel=gallery id=galley_1 title="{{ pic.photoCaption }}" href="{{ pic.photoUrl }}" fancyboxable=gallery.fbSettings><img ng-src="{{ pic.photoThumbnailUrl }}" alt="{{ pic.photoCaption }}"></a></div></div></div>'),e.put("app/home/home.html",'<div class=container><div class="flex-container pos-fixed grid-cross-center grid-main-center"><div ng-show="!!home.videoURL || !!home.manualS3VideoUrl"><a ui-sref=nav.tour class=play-btn></a></div></div><div bg-image class="fullBg {{ home.currentAnimation }}" ng-repeat="slide in home.slides" ng-if=home.isCurrentSlideIndex($index) ng-src={{trustSrc(slide)}} ng-style="{\'background\':\'url({{slide}}) center no-repeat\',\'background-size\':\'cover\',\'background-attachment\': \'fixed\'}"></div><div class=tourPopupContainer ng-if="home.popupEnabled && !home.mls"><div class=tourPopupPreview><i class="fa fa-times" ng-click="home.popupEnabled = false"></i><div class=content-wrap ng-if=!home.popSuccess><div class=tourPopupTitle ng-if=home.popupTitle>{{ home.popupTitle }}</div><div class=tourPopupLine2 ng-if=home.popupLine2>{{ home.popupLine2 }}</div><div class=tourPopupLine3 ng-if=home.popupLine3>{{ home.popupLine3 }}</div><div class=popupForm><p class=error ng-if=home.popError>Something went wrong</p><input class=popupInput type=email name=popup-email ng-model=home.popupEmail ng-class="{ \'error\' : home.popSubmitted && !home.popupEmail }" placeholder="Enter your email" required> <button class=popupButton type=button ng-click=home.submitPopup()>Submit</button></div></div><div class=success-wrap ng-if=home.popSuccess>{{ home.successMessage }}</div></div></div></div>'),e.put("app/locale/locale-controller.html","<div class=locale><div class=loading ng-if=!locale.showMap><p>Loading...</p></div><div class=angular-google-map><ng-map id=locale-map center={{locale.center}} zoom=15 lazy-init=true default-style=false><marker id=address position={{locale.center}} on-click=\"map.showInfoWindow('info')\"></marker><info-window id=info visible-on-marker=address><div ng-non-bindable><div id=bodyContent><p>{{ locale.streetLine }}<br>{{ locale.cityLine }}</p></div></div></info-window></ng-map></div></div>"),e.put("app/main/main.html","This is the Main page Menu open:{{ main.showMenu }} <button ng-click=main.menuToggle>Toggle</button>"),e.put("app/tour/tour-controller.html",'<div class=player-controls ng-if=tour.youtubeVideoURLFlag ng-class="{\'active\': tour.toggleSize}"><a href ng-click="tour.toggleSize = !tour.toggleSize"><span class=fa-stack><span class="fa fa-square-o fa-stack-2x"></span> <span class="fa fa-stack-1x" ng-class="{\'fa-compress\': !tour.toggleSize, \'fa-expand active\': tour.toggleSize}"></span></span></a></div><div class=youtube ng-class="{small: tour.toggleSize}"><div ng-if="tour.youtubeVideoURLFlag == true && tour.manualVideo == true" class="embed-responsive embed-responsive-16by9"><youtube-video class=embed-responsive-item player-vars=tour.playerVars video-url=tour.videoURL></youtube-video></div><div ng-if="tour.youtubeVideoURLFlag == false && tour.manualVideo == true" class="embed-responsive embed-responsive-16by9 videogular-container"><videogular vg-theme=tour.config.theme.url vg-auto-play=true autoplay=true><vg-media vg-src=tour.config.sources vg-tracks=tour.config.tracks vg-native-controls=true></vg-media></videogular></div><div ng-if="tour.awsS3VideoURLFlag == true && tour.manualVideo == false" class="embed-responsive embed-responsive-16by9 videogular-container"><videogular vg-theme=tour.config.theme.url vg-auto-play=true autoplay=true><vg-media vg-src=tour.config.sources vg-tracks=tour.config.tracks vg-native-controls=true></vg-media></videogular></div><div ng-if="tour.awsS3VideoURLFlag == false && tour.manualVideo == false" class="embed-responsive embed-responsive-16by9"><div class="container animated right ng-scope fadeInUp"><p></p><h1>Video will be coming soon!</h1><p></p></div></div></div>'),e.put("app/common/nav/nav.html",'<div class=wrapper ng-class="{\'full\': main.isFullscreen()}"><div class=bg-image style="background: url({{ vm.data.details.keyPhotos[0].photoUrl }}) no-repeat center; background-size: cover;background-attachment: fixed;"></div><section class=main-view ng-class="{\'opened\': main.showMenu}"><div class=bgDim ng-class="{dim: main.isDim()}"></div><header class="main header animated fadeInDown" ng-class="{\'opened\': main.showMenu, \'animate\':main.animate}" ng-if=!vm.error><section class=address ng-cloak><h1 class=title>{{ vm.data.details.propertyTitle }}</h1><span class=location><span ng-if=vm.data.details.displayLocation1 class=city>{{ vm.data.details.displayLocation1 }},</span> <span class=state>{{ vm.data.details.displayLocation2 }}</span></span></section><nav class="nav-container slide-menu"><ul class=nav><li><a id=homebtn ui-sref=nav.home title=Home><span class="fa fa-lg fa-home"></span></a></li><li><a ui-sref=nav.details ng-if=!vm.mls title=Details><span class="fa fa-lg fa-info-circle"></span></a></li><li><a ui-sref=nav.tour title=Tour><span class="fa fa-lg fa-youtube-play"></span></a></li><li><a ui-sref=nav.gallery title=Gallery><span class="fa fa-lg fa-image"></span></a></li><li ng-if="vm.matterport && vm.matterport.length > 1 && !vm.mls"><a href="{{ vm.matterport }}" target=_blank title="3D Virtual Tour" class=matterport-link><span class="fa matterport-image">3D</span><a></a></a></li><li><a ui-sref=nav.locale title=Map><span class="fa fa-lg fa-map-marker"></span></a></li><li ng-if=!vm.mls><a ui-sref=nav.contact title=Contact><span class="fa fa-lg fa-comment"></span></a></li></ul></nav><ul class=menu-btn><li><a href ng-click=main.menuToggle() class><span class="fa fa-2x fa-bars"></span></a></li></ul></header><div class=view-container ng-class="{\'animate\':main.animate}"><div class=social ng-if="!vm.error && !vm.mls"><ul><li><a target=_blank ng-click=vm.shareFB()><span class="fa-stack fa-lg"><i class="fa fa-facebook fa-stack-1x fa-inverse"></i></span></a></li><li><a target=_blank ng-click=vm.shareTW()><span class="fa-stack fa-lg"><i class="fa fa-twitter fa-stack-1x fa-inverse"></i></span></a></li><li><a target=_blank ng-click=vm.sharePN()><span class="fa-stack fa-lg"><i class="fa fa-pinterest fa-stack-1x fa-inverse"></i></span></a></li></ul></div><div class="container error" ng-if=vm.error><h1>Tour Not Found</h1><p>Please visit <a href=http://luxvtsupport.com>luxvtsupport.com</a> for help.</p></div><section class=view ui-view ng-if=!vm.error></section></div></section><section class=menu-panel ng-class="{\'opened\': main.showMenu}"><nav class><ul class="nav nav-list border"><li><a href ng-click=main.toggleSubMenu()><span class="fa fa-bars"></span>Menu<span class="fa fa-angle-down fa-pull-right"></span></a></li><ul class="nav nav-list" ng-show=main.menu><li><a ui-sref=nav.home ng-click=main.menuToggle()><span class="fa fa-home"></span>Home</a></li><li ng-if=!vm.mls><a ui-sref=nav.details ng-click=main.menuToggle()><span class="fa fa-info-circle"></span>Details</a></li><li><a ui-sref=nav.tour ng-click=main.menuToggle()><span class="fa fa-youtube-play"></span>Tour</a></li><li><a ui-sref=nav.gallery ng-click=main.menuToggle()><span class="fa fa-image"></span>Gallery</a></li><li ng-if="vm.matterport && vm.matterport.length > 1 && !vm.mls"><a href="{{ vm.matterport }}" target=_blank ng-click=main.menuToggle() class=matterport-link><b>3D</b> Virtual Tour</a></li><li><a ui-sref=nav.locale ng-click=main.menuToggle()><span class="fa fa-map-marker"></span>Map</a></li><li ng-if=!vm.mls><a ui-sref=nav.contact ng-click=main.menuToggle()><span class="fa fa-comment"></span>Contact</a></li></ul></ul><ul class="nav nav-list border" ng-if=!vm.mls><li><a href class id=toggleupdate ng-click=main.toggleUpdates()><span class="fa fa-feed"></span>Get Updates<span class="fa fa-angle-down fa-pull-right"></span></a><div ng-show=main.updates class=menu-form><div id=messages ng-show=vm.updatesData.message>{{ vm.updatesData.message }}</div><form name=updateForm ng-submit=vm.processUpdates()><div class=input-container><input type=text name=name placeholder=Name ng-model=vm.updatesData.name required><div ng-if=!vm.updatesData.message ng-messages=updateForm.name.$error role=alert ng-show=updateForm.name.$touched><div ng-message=required class=message>Name is required.</div></div></div><div class=input-container><input type=email name=email placeholder=e-mail ng-model=vm.updatesData.email required><div ng-if=!vm.updatesData.message ng-messages=updateForm.email.$error ng-show=updateForm.email.$touched><div ng-message=required class=message>e-mail is required.</div></div></div><span class=help-block ng-show=errorName>{{ errorName }}</span> <input type=submit ng-disabled="updateForm.$invalid || updateForm.$submitted" class="btn blue" value="Get Updates"></form></div></li><li ng-if=!vm.mls><a href ng-click=main.toggleShare()><span class="fa fa-comments-o"></span>Share<span class="fa fa-angle-down fa-pull-right"></span></a><div ng-show=main.share class=menu-form><div id=messages ng-show=vm.shareData.message>{{ vm.shareData.message }}</div><form name=shareForm ng-submit=vm.processShare()><div class=input-container><input type=text name=senderName placeholder="Your Name" ng-model=vm.shareData.senderName required><div ng-if=!vm.shareData.message ng-messages=shareForm.senderName.$error ng-show=shareForm.senderName.$touched><div ng-message=required class=message>This is required.</div></div></div><div class=input-container><input type=email name=senderEmail placeholder="Your e-mail" ng-model=vm.shareData.senderEmail required><div ng-if=!vm.shareData.message ng-messages=shareForm.senderEmail.$error ng-show=shareForm.senderEmail.$touched><div ng-message=required class=message>This is required.</div></div></div><div class=input-container><input type=email name=friendEmail placeholder="Friend\'s e-mail" required ng-model=vm.shareData.friendEmail><div ng-if=!vm.shareData.message ng-messages=shareForm.friendEmail.$error ng-show=shareForm.friendEmail.$touched><div ng-message=required class=message>This is required.</div></div></div><input type=submit ng-disabled="shareForm.$invalid || shareForm.$submitted" class="btn blue" value=Share></form></div></li><li ng-if=!vm.mls><a href=https://www.luxvt.com/brochure/{{vm.data.meta.tourId}}><span class="fa fa-print"></span>Print</a></li></ul></nav></section></div><section class="footer animated fadeInUp" ng-class="{\'animate\':main.animate, \'fixed\': main.isFullscreen()}" ng-if="!vm.mls && !vm.error"><div class=agent-img ng-style="{\'background\':\'url({{vm.data.agent.photo}}) center center no-repeat\',\'background-size\':\'contain\'}"></div><div class=agent-info><p><span>{{ vm.data.agent.agentName }}</span><br><span>{{ vm.data.agent.brokerage}}</span><br><span>{{ vm.data.agent.phoneNumber}}</span><br><a href="mailto:{{ vm.data.agent.email }}" class=email><span class="fa fa-envelope-o"></span></a> <a ui-sref=nav.contact class=website>contact</a></p></div><a href="{{ vm.data.agent.website || \'#\'}}" class=agent-logo ng-style="{\'background\':\'url({{vm.data.agent.logo}}) center right no-repeat\',\'background-size\':\'contain\'}"></a><div class=clearfix></div><div class=credit><a href="{{ vm.data.meta.creditLink || \'http://luxvt.com\' }}">Tour by {{ vm.data.meta.credit || \'Lux VT\' }}</a></div></section><style type=text/css>\n.agent-img {\n    width: 130px;\n    height: 100px;\n    display: block;\n    background-size: contain;\n    position: absolute;\n    top: 9px;\n}\n\n.agent-logo1 {\n    /*background: url("../images/logo.png") no-repeat;*/\n    width: 200px;\n    height: 100px;\n    background-size: contain;\n    float: right;\n    margin-top: .5em;\n    text-align: right;\n}\n.agent-image {\n    width: 200px;\n    height: 100px;\n    float: right;\n    margin-top: .5em;\n}\n</style>');
}]);