(function(){"use strict";angular.module("ew.registry.signup",["easyWeddingsApp","ew.registry.signup.constant","ngAnimate","ui.bootstrap"]).config(["$resourceProvider",function(n){n.defaults.stripTrailingSlashes=!1}]).run(["$templateCache",function(n){n.put("template/carousel/carousel.html",'<div style = " display:flex; align-items:center;"ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n    <ol class="carousel-indicators "  ng-show="slides.length > 1">\n        <li ng-repeat="slide in slides | orderBy:\'index\' track by $index" ng-class="{active: isActive(slide)}" ng-click="select(slide)"><\/li>\n    <\/ol>\n    <div class="carousel-inner" ng-transclude><\/div>\n    <a class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1"><span class="fa fa-chevron-left"><\/span><\/a>\n    <a class="right carousel-control" ng-click="next()" ng-show="slides.length > 1"><span class="fa fa-chevron-right"><\/span><\/a>\n<\/div>\n')}])})(),function(){"use strict";function n(n,t,i,r,u,f,e,o){function c(){e.fetchHomepageProducts().get(function(n){if(n.hasError==null||n.hasError===!1)s.model.products=n;else toastr.error("Please refresh","Error occurred")},function(){toastr.error("Please refresh","Error occurred")})}function l(n){n?s.model.registry.CanAutoCreate?y():s.ui.showSignUpForm=!0:s.ui.showSignUpForm=!1}function p(){var n="bride",t="groom";h(s.model.partner.Name)||(t=s.model.partner.Name.split(" ")[0].trim());h(s.model.user.Name)||(n=s.model.user.Name.split(" ")[0].trim());s.model.registry.Slug=i("lowercase")(n+"and"+t);a()}function a(){s.model.registry.OriginalSlug===s.model.registry.Slug?s.ui.isSlugAvailable=!0:h(s.model.registry.Slug)||r(function(){s.ui.checking=!0;e.checkSlugAvailability().get({slug:s.model.registry.Slug},function(n){s.ui.checking=!1;s.ui.isSlugAvailable=n.result==null?!0:!1},function(){s.ui.checking=!1})},500)}function v(){h(s.model.sessionId)?s.ui.loaded=!0:e.fetchRegistryDetails().get(function(n){n.hasError==null||n.hasError===!1?(s.model.user.FirstName=n.FirstName,s.model.user.LastName=n.LastName,s.model.user.Name=$.grep([n.FirstName,n.LastName],Boolean).join(" "),s.model.user.Gender=n.Gender,s.model.user.PhoneNumber=n.PhoneNumber,s.model.partner.Name=$.grep([n.PartnerFirstName,n.PartnerLastName],Boolean).join(" "),s.model.partner.Gender=n.PartnerGender,s.model.registry.Id=n.RegistryID,s.model.registry.Slug=n.Slug,s.model.registry.OriginalSlug=n.Slug,s.model.registry.CanAutoCreate=n.CanAutoCreate,s.model.registry.HasRegistry=s.model.registry.Id>0,n.WeddingDate!=null&&(s.model.wedding.Date=i("date")(n.WeddingDate,"dd/MM/yyyy")),s.ui.loaded=!0):toastr.error("Please refresh","Error occurred")},function(){toastr.error("Please refresh","Error occurred")})}function y(){ewLoadingOverlay.show();var n={FirstName:s.model.user.Name.split(" ").slice(0,-1).join(" "),LastName:s.model.user.Name.split(" ").slice(-1).join(" "),WeddingDate:s.model.wedding.Date!=""?moment.utc(s.model.wedding.Date,"DD/MM/YYYY"):"",PartnerFirstName:s.model.partner.Name.split(" ").slice(0,-1).join(" "),PartnerLastName:s.model.partner.Name.split(" ").slice(-1).join(" "),Phone:s.model.user.PhoneNumber,Gender:s.model.user.Gender=="Female"?2:1,PartnerGender:s.model.partner.Gender=="Female"?2:1,WeddingSlug:s.model.registry.Slug};e.createOrUpdateRegistryDetails().post(n,function(n){n.hasError==null||n.hasError===!1?(l(!1),ewLoadingOverlay.hide(),w("/registry/bride/giftregistry/?registration=complete",!0)):toastr.error("Please refresh","Error occurred")},function(){toastr.error("Please refresh","Error occurred")})}function h(n){return typeof n=="undefined"||n===null||n===""}function w(t,i){n=n||angular.element(document).scope();i||n.$$phase?window.location=t:(u.path(t),n.$apply())}var s=this;s.model={sessionId:window.SessionID,isLoggedIn:!h(window.SessionID),registry:{HasRegistry:!1,Id:"",Slug:"",OriginalSlug:"",CanAutoCreate:!1},user:{FirstName:"",LastName:"",Name:"",Gender:"",PhoneNumber:""},partner:{Name:"",Gender:""},wedding:{Date:""},products:[],testimonials:o,loggedin:!1};n.myInterval=5e3;n.noWrapSlides=!1;s.error={name:"Please tell us your first and last names"};s.ui={isSlugAvailable:!0,checking:!1,urlPlaceholder:"",slugAvailableMessage:"",showSignUpForm:!1,loaded:!1};c();v();s.ui.urlPlaceholder=$("#registry-slug").attr("placeholder");s.loadRegistryDetails=v;s.createOrUpdateRegistryDetails=y;s.checkSlugAvailability=a;s.generateSlug=p;s.showSignUpForm=l;s.fetchHomepageProducts=c}angular.module("ew.registry.signup").controller("SignupCtrl",n);n.$inject=["$scope","$rootScope","$filter","$timeout","$location","config","SignupSvc","TESTIMONIALS"]}(),function(){"use strict";function n(n,t){function f(){return n(r+"bride/account/",{},{get:{method:"GET",isArray:!1,headers:{"ew-header-token":i}}})}function e(){return n(r+"product/homepage/",{},{get:{method:"GET",isArray:!0,headers:{"ew-header-token":i}}})}function o(){return n(r+"bride/account/",{},{post:{method:"POST",isArray:!1,headers:{"ew-header-token":i}}})}function s(){return n(u+"tools/registry/slug",{},{get:{method:"GET",headers:{"ew-header-token":i}}})}var u=t.userAPI,r=t.registryAPI,i=t.apiKey+"|"+window.SessionID;return{fetchRegistryDetails:f,createOrUpdateRegistryDetails:o,checkSlugAvailability:s,fetchHomepageProducts:e}}angular.module("ew.registry.signup").service("SignupSvc",n);n.$inject=["$resource","config"]}(),function(){"use strict";angular.module("ew.registry.signup").directive("nameValidate",function(){return{restrict:"A",require:"ngModel",link:function(n,t,i,r){function u(n){var u=!0,t,i;return n&&(t=n.split(" ")[0],i=n.split(" ")[1],u=!(typeof t=="undefined"||t===null||t===""||typeof i=="undefined"||i===null||i===""),r.$setValidity("invalidName",u)),n}r.$parsers.unshift(u);r.$formatters.unshift(u)}}})}(),function(){"use strict";angular.module("ew.registry.signup.constant",[]).constant("TESTIMONIALS",[{client:"Raph O",text:"50 words is too short to say what an incredible job Easy Weddings does. They made sure the registry was the one thing I never had to worry about. Their team, particularly Victoria was always on call to help me and our guests. Huge selection combined with Amazing customer service..."},{client:"Laura W",text:"It was so easy to use and so convenient. Having lots of brands in the one place was fantastic when choosing gifts and it was easy for our guests to purchase"}])}()